summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt39
-rw-r--r--COPYING510
-rw-r--r--README65
-rw-r--r--debian/README2
-rw-r--r--debian/changelog515
-rw-r--r--debian/compat1
-rw-r--r--debian/control60
-rw-r--r--debian/copyright27
-rw-r--r--debian/debuild.opts1
-rw-r--r--debian/ept-cache.cron.weekly4
-rw-r--r--debian/ept-cache.docs1
-rw-r--r--debian/ept-cache.install2
-rw-r--r--debian/ept-cache.postinst12
-rw-r--r--debian/libept-dev.install6
-rw-r--r--debian/libept0.install1
-rwxr-xr-xdebian/rules40
-rw-r--r--doc/CMakeLists.txt11
-rw-r--r--doc/FAQ25
-rw-r--r--doc/libept.dox.in1142
-rw-r--r--ept/CMakeLists.txt94
-rw-r--r--ept/apt/apt.cc654
-rw-r--r--ept/apt/apt.h284
-rw-r--r--ept/apt/apt.test.h192
-rw-r--r--ept/apt/packagerecord.cc118
-rw-r--r--ept/apt/packagerecord.h176
-rw-r--r--ept/apt/packagerecord.test.h138
-rw-r--r--ept/apt/recordparser.cc170
-rw-r--r--ept/apt/recordparser.h95
-rw-r--r--ept/apt/recordparser.test.h228
-rw-r--r--ept/apt/version.cc87
-rw-r--r--ept/apt/version.h94
-rw-r--r--ept/apt/version.test.h136
-rw-r--r--ept/config.h.cmake-in7
-rw-r--r--ept/debtags/debtags.cc250
-rw-r--r--ept/debtags/debtags.h417
-rw-r--r--ept/debtags/debtags.tcc89
-rw-r--r--ept/debtags/debtags.test.h282
-rw-r--r--ept/debtags/expression.cc51
-rw-r--r--ept/debtags/expression.h42
-rw-r--r--ept/debtags/expression.test.h83
-rw-r--r--ept/debtags/maint/debdbparser.cc188
-rw-r--r--ept/debtags/maint/debdbparser.h90
-rw-r--r--ept/debtags/maint/debtagsindexer.cc265
-rw-r--r--ept/debtags/maint/debtagsindexer.h51
-rw-r--r--ept/debtags/maint/path.cc140
-rw-r--r--ept/debtags/maint/path.h133
-rw-r--r--ept/debtags/maint/pkgid.cc66
-rw-r--r--ept/debtags/maint/pkgid.h91
-rw-r--r--ept/debtags/maint/pkgid.test.h75
-rw-r--r--ept/debtags/maint/serializer.h949
-rw-r--r--ept/debtags/maint/serializer.test.h133
-rw-r--r--ept/debtags/maint/sourcedir.cc123
-rw-r--r--ept/debtags/maint/sourcedir.h74
-rw-r--r--ept/debtags/maint/sourcedir.tcc51
-rw-r--r--ept/debtags/maint/vocabularyindexer.cc195
-rw-r--r--ept/debtags/maint/vocabularyindexer.h116
-rw-r--r--ept/debtags/maint/vocabularymerger.cc386
-rw-r--r--ept/debtags/maint/vocabularymerger.h157
-rw-r--r--ept/debtags/maint/vocabularymerger.test.h144
-rw-r--r--ept/debtags/tag.cc138
-rw-r--r--ept/debtags/tag.h251
-rw-r--r--ept/debtags/tag.test.h107
-rw-r--r--ept/debtags/utils.h66
-rw-r--r--ept/debtags/vocabulary.cc230
-rw-r--r--ept/debtags/vocabulary.h282
-rw-r--r--ept/debtags/vocabulary.test.h318
-rw-r--r--ept/intro.doc.h75
-rw-r--r--ept/libept.m49
-rw-r--r--ept/libept.pc.in11
-rw-r--r--ept/popcon/local.cc168
-rw-r--r--ept/popcon/local.h87
-rw-r--r--ept/popcon/local.test.h111
-rw-r--r--ept/popcon/maint/path.cc115
-rw-r--r--ept/popcon/maint/path.h127
-rw-r--r--ept/popcon/maint/popconindexer.cc247
-rw-r--r--ept/popcon/maint/popconindexer.h75
-rw-r--r--ept/popcon/maint/sourcedir.cc143
-rw-r--r--ept/popcon/maint/sourcedir.h63
-rw-r--r--ept/popcon/popcon.cc95
-rw-r--r--ept/popcon/popcon.h153
-rw-r--r--ept/popcon/popcon.test.h108
-rw-r--r--ept/progresscallback.cpp12
-rw-r--r--ept/progresscallback.h28
-rw-r--r--ept/sources.h220
-rw-r--r--ept/test-data/debtags/package-tags21145
-rw-r--r--ept/test-data/debtags/vocabulary2828
-rw-r--r--ept/test-data/desktop/kdict.desktop88
-rw-r--r--ept/test-data/desktop/test.desktop4
-rw-r--r--ept/test-data/desktop/xqf.desktop31
-rw-r--r--ept/test-data/desktop/xserver.desktop186
-rw-r--r--ept/test-data/dpkg-status37094
-rw-r--r--ept/test-data/etc/sources.list5
-rw-r--r--ept/test-data/packagelist9907
-rw-r--r--ept/test-data/popcon/all-popcon-results.txt.gzbin0 -> 696390 bytes
-rw-r--r--ept/test-data/popcon/popularity-contest1904
-rw-r--r--ept/test-main.h186
-rw-r--r--ept/test-runner.h63
-rw-r--r--ept/test.cpp1
-rw-r--r--ept/test.h48
-rw-r--r--ept/textsearch/extraindexers.cc58
-rw-r--r--ept/textsearch/extraindexers.h51
-rw-r--r--ept/textsearch/maint/path.cc93
-rw-r--r--ept/textsearch/maint/path.h74
-rw-r--r--ept/textsearch/textsearch.cc256
-rw-r--r--ept/textsearch/textsearch.h219
-rw-r--r--ept/textsearch/textsearch.test.h166
-rw-r--r--ept/token.h55
-rw-r--r--rep/amber.pngbin0 -> 141 bytes
-rw-r--r--rep/emerald.pngbin0 -> 141 bytes
-rw-r--r--rep/ept/apt/apt.cc.gcov.html707
-rw-r--r--rep/ept/apt/apt.h.gcov.html286
-rw-r--r--rep/ept/apt/apt.test.h.gcov.html259
-rw-r--r--rep/ept/apt/index.html182
-rw-r--r--rep/ept/apt/packagerecord.cc.gcov.html185
-rw-r--r--rep/ept/apt/packagerecord.h.gcov.html243
-rw-r--r--rep/ept/apt/packagerecord.test.h.gcov.html205
-rw-r--r--rep/ept/apt/recordparser.cc.gcov.html237
-rw-r--r--rep/ept/apt/recordparser.h.gcov.html162
-rw-r--r--rep/ept/apt/recordparser.test.h.gcov.html295
-rw-r--r--rep/ept/apt/version.cc.gcov.html154
-rw-r--r--rep/ept/apt/version.h.gcov.html161
-rw-r--r--rep/ept/apt/version.test.h.gcov.html203
-rw-r--r--rep/ept/core/apt.cpp.gcov.html90
-rw-r--r--rep/ept/core/apt.h.gcov.html474
-rw-r--r--rep/ept/core/apt.test.h.gcov.html162
-rw-r--r--rep/ept/core/apt/action.h.gcov.html202
-rw-r--r--rep/ept/core/apt/action.test.h.gcov.html108
-rw-r--r--rep/ept/core/apt/index.html155
-rw-r--r--rep/ept/core/apt/package.h.gcov.html194
-rw-r--r--rep/ept/core/apt/record.cpp.gcov.html83
-rw-r--r--rep/ept/core/apt/record.h.gcov.html355
-rw-r--r--rep/ept/core/apt/record.test.h.gcov.html123
-rw-r--r--rep/ept/core/apt/recordparser.cpp.gcov.html239
-rw-r--r--rep/ept/core/apt/recordparser.h.gcov.html165
-rw-r--r--rep/ept/core/apt/version.h.gcov.html160
-rw-r--r--rep/ept/core/desktop.h.gcov.html344
-rw-r--r--rep/ept/core/desktop.test.h.gcov.html135
-rw-r--r--rep/ept/core/desktopfile.h.gcov.html205
-rw-r--r--rep/ept/core/index.html164
-rw-r--r--rep/ept/core/source.h.gcov.html181
-rw-r--r--rep/ept/core/xapian.cpp.gcov.html208
-rw-r--r--rep/ept/core/xapian.h.gcov.html456
-rw-r--r--rep/ept/core/xapian.test.h.gcov.html141
-rw-r--r--rep/ept/debtags/debtags.cc.gcov.html317
-rw-r--r--rep/ept/debtags/debtags.h.gcov.html484
-rw-r--r--rep/ept/debtags/debtags.tcc.gcov.html156
-rw-r--r--rep/ept/debtags/debtags.test.h.gcov.html350
-rw-r--r--rep/ept/debtags/expression.cc.gcov.html118
-rw-r--r--rep/ept/debtags/expression.test.h.gcov.html150
-rw-r--r--rep/ept/debtags/index.html173
-rw-r--r--rep/ept/debtags/maint/debdbparser.cc.gcov.html255
-rw-r--r--rep/ept/debtags/maint/debtagsindexer.cc.gcov.html332
-rw-r--r--rep/ept/debtags/maint/debtagsindexer.h.gcov.html118
-rw-r--r--rep/ept/debtags/maint/index.html236
-rw-r--r--rep/ept/debtags/maint/path.cc.gcov.html207
-rw-r--r--rep/ept/debtags/maint/path.h.gcov.html200
-rw-r--r--rep/ept/debtags/maint/pkgid.cc.gcov.html133
-rw-r--r--rep/ept/debtags/maint/pkgid.h.gcov.html158
-rw-r--r--rep/ept/debtags/maint/pkgid.test.h.gcov.html142
-rw-r--r--rep/ept/debtags/maint/serializer.h.gcov.html1016
-rw-r--r--rep/ept/debtags/maint/serializer.test.h.gcov.html200
-rw-r--r--rep/ept/debtags/maint/sourcedir.cc.gcov.html190
-rw-r--r--rep/ept/debtags/maint/sourcedir.h.gcov.html141
-rw-r--r--rep/ept/debtags/maint/sourcedir.tcc.gcov.html118
-rw-r--r--rep/ept/debtags/maint/vocabularyindexer.cc.gcov.html262
-rw-r--r--rep/ept/debtags/maint/vocabularyindexer.h.gcov.html183
-rw-r--r--rep/ept/debtags/maint/vocabularymerger.cc.gcov.html453
-rw-r--r--rep/ept/debtags/maint/vocabularymerger.h.gcov.html224
-rw-r--r--rep/ept/debtags/maint/vocabularymerger.test.h.gcov.html211
-rw-r--r--rep/ept/debtags/tag.cc.gcov.html205
-rw-r--r--rep/ept/debtags/tag.h.gcov.html318
-rw-r--r--rep/ept/debtags/vocabulary.cc.gcov.html297
-rw-r--r--rep/ept/debtags/vocabulary.h.gcov.html349
-rw-r--r--rep/ept/debtags/vocabulary.test.h.gcov.html385
-rw-r--r--rep/ept/index.html110
-rw-r--r--rep/ept/popcon/index.html128
-rw-r--r--rep/ept/popcon/local.cc.gcov.html235
-rw-r--r--rep/ept/popcon/local.h.gcov.html154
-rw-r--r--rep/ept/popcon/local.test.h.gcov.html178
-rw-r--r--rep/ept/popcon/maint/index.html128
-rw-r--r--rep/ept/popcon/maint/path.cc.gcov.html182
-rw-r--r--rep/ept/popcon/maint/path.h.gcov.html194
-rw-r--r--rep/ept/popcon/maint/popconindexer.cc.gcov.html314
-rw-r--r--rep/ept/popcon/maint/popconindexer.h.gcov.html142
-rw-r--r--rep/ept/popcon/maint/sourcedir.cc.gcov.html210
-rw-r--r--rep/ept/popcon/maint/sourcedir.h.gcov.html130
-rw-r--r--rep/ept/popcon/popcon.cc.gcov.html162
-rw-r--r--rep/ept/popcon/popcon.h.gcov.html220
-rw-r--r--rep/ept/popcon/popcon.test.h.gcov.html175
-rw-r--r--rep/ept/progresscallback.cpp.gcov.html79
-rw-r--r--rep/ept/progresscallback.h.gcov.html95
-rw-r--r--rep/ept/test.h.gcov.html105
-rw-r--r--rep/ept/textsearch/extraindexers.cc.gcov.html125
-rw-r--r--rep/ept/textsearch/extraindexers.h.gcov.html118
-rw-r--r--rep/ept/textsearch/index.html119
-rw-r--r--rep/ept/textsearch/maint/index.html92
-rw-r--r--rep/ept/textsearch/maint/path.cc.gcov.html160
-rw-r--r--rep/ept/textsearch/maint/path.h.gcov.html141
-rw-r--r--rep/ept/textsearch/textsearch.cc.gcov.html323
-rw-r--r--rep/ept/textsearch/textsearch.h.gcov.html286
-rw-r--r--rep/ept/textsearch/textsearch.test.h.gcov.html233
-rw-r--r--rep/ept/token.h.gcov.html122
-rw-r--r--rep/gcov.css408
-rw-r--r--rep/glass.pngbin0 -> 167 bytes
-rw-r--r--rep/index.html353
-rw-r--r--rep/lcov.info96554
-rw-r--r--rep/ruby.pngbin0 -> 141 bytes
-rw-r--r--rep/snow.pngbin0 -> 141 bytes
-rw-r--r--rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_apt.cpp.gcov.html82
-rw-r--r--rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_packagerecord.cpp.gcov.html70
-rw-r--r--rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_recordparser.cpp.gcov.html81
-rw-r--r--rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_version.cpp.gcov.html75
-rw-r--r--rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt.cpp.gcov.html81
-rw-r--r--rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt_action.cpp.gcov.html72
-rw-r--r--rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt_record.cpp.gcov.html75
-rw-r--r--rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_desktop.cpp.gcov.html74
-rw-r--r--rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_xapian.cpp.gcov.html73
-rw-r--r--rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_debtags.cpp.gcov.html74
-rw-r--r--rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_expression.cpp.gcov.html70
-rw-r--r--rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_pkgid.cpp.gcov.html71
-rw-r--r--rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_serializer.cpp.gcov.html71
-rw-r--r--rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_vocabularymerger.cpp.gcov.html72
-rw-r--r--rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_vocabulary.cpp.gcov.html88
-rw-r--r--rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_popcon_local.cpp.gcov.html70
-rw-r--r--rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_popcon_popcon.cpp.gcov.html74
-rw-r--r--rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_textsearch_textsearch.cpp.gcov.html75
-rw-r--r--rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-main.cpp.gcov.html340
-rw-r--r--rep/srv/build/pkg/ept-work/default/ept/index.html245
-rw-r--r--rep/usr/include/apt-pkg/acquire.h.gcov.html835
-rw-r--r--rep/usr/include/apt-pkg/algorithms.h.gcov.html204
-rw-r--r--rep/usr/include/apt-pkg/cachefile.h.gcov.html123
-rw-r--r--rep/usr/include/apt-pkg/cacheiterators.h.gcov.html503
-rw-r--r--rep/usr/include/apt-pkg/depcache.h.gcov.html492
-rw-r--r--rep/usr/include/apt-pkg/error.h.gcov.html168
-rw-r--r--rep/usr/include/apt-pkg/fileutl.h.gcov.html165
-rw-r--r--rep/usr/include/apt-pkg/index.html164
-rw-r--r--rep/usr/include/apt-pkg/pkgcache.h.gcov.html422
-rw-r--r--rep/usr/include/apt-pkg/progress.h.gcov.html156
-rw-r--r--rep/usr/include/apt-pkg/version.h.gcov.html131
-rw-r--r--rep/usr/include/c++/4.3/backward/auto_ptr.h.gcov.html364
-rw-r--r--rep/usr/include/c++/4.3/backward/binders.h.gcov.html238
-rw-r--r--rep/usr/include/c++/4.3/backward/index.html92
-rw-r--r--rep/usr/include/c++/4.3/bits/allocator.h.gcov.html245
-rw-r--r--rep/usr/include/c++/4.3/bits/basic_ios.h.gcov.html545
-rw-r--r--rep/usr/include/c++/4.3/bits/basic_string.h.gcov.html2545
-rw-r--r--rep/usr/include/c++/4.3/bits/basic_string.tcc.gcov.html1208
-rw-r--r--rep/usr/include/c++/4.3/bits/char_traits.h.gcov.html438
-rw-r--r--rep/usr/include/c++/4.3/bits/deque.tcc.gcov.html900
-rw-r--r--rep/usr/include/c++/4.3/bits/index.html353
-rw-r--r--rep/usr/include/c++/4.3/bits/ios_base.h.gcov.html1039
-rw-r--r--rep/usr/include/c++/4.3/bits/list.tcc.gcov.html484
-rw-r--r--rep/usr/include/c++/4.3/bits/locale_facets.h.gcov.html2705
-rw-r--r--rep/usr/include/c++/4.3/bits/postypes.h.gcov.html280
-rw-r--r--rep/usr/include/c++/4.3/bits/stl_algo.h.gcov.html5703
-rw-r--r--rep/usr/include/c++/4.3/bits/stl_algobase.h.gcov.html1207
-rw-r--r--rep/usr/include/c++/4.3/bits/stl_bvector.h.gcov.html1069
-rw-r--r--rep/usr/include/c++/4.3/bits/stl_construct.h.gcov.html201
-rw-r--r--rep/usr/include/c++/4.3/bits/stl_deque.h.gcov.html1837
-rw-r--r--rep/usr/include/c++/4.3/bits/stl_function.h.gcov.html774
-rw-r--r--rep/usr/include/c++/4.3/bits/stl_heap.h.gcov.html637
-rw-r--r--rep/usr/include/c++/4.3/bits/stl_iterator.h.gcov.html1095
-rw-r--r--rep/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h.gcov.html249
-rw-r--r--rep/usr/include/c++/4.3/bits/stl_iterator_base_types.h.gcov.html239
-rw-r--r--rep/usr/include/c++/4.3/bits/stl_list.h.gcov.html1530
-rw-r--r--rep/usr/include/c++/4.3/bits/stl_map.h.gcov.html894
-rw-r--r--rep/usr/include/c++/4.3/bits/stl_move.h.gcov.html159
-rw-r--r--rep/usr/include/c++/4.3/bits/stl_pair.h.gcov.html331
-rw-r--r--rep/usr/include/c++/4.3/bits/stl_set.h.gcov.html731
-rw-r--r--rep/usr/include/c++/4.3/bits/stl_stack.h.gcov.html369
-rw-r--r--rep/usr/include/c++/4.3/bits/stl_tree.h.gcov.html1533
-rw-r--r--rep/usr/include/c++/4.3/bits/stl_uninitialized.h.gcov.html503
-rw-r--r--rep/usr/include/c++/4.3/bits/stl_vector.h.gcov.html1241
-rw-r--r--rep/usr/include/c++/4.3/bits/stream_iterator.h.gcov.html283
-rw-r--r--rep/usr/include/c++/4.3/bits/vector.tcc.gcov.html723
-rw-r--r--rep/usr/include/c++/4.3/cmath.gcov.html710
-rw-r--r--rep/usr/include/c++/4.3/exception.gcov.html202
-rw-r--r--rep/usr/include/c++/4.3/ext/atomicity.h.gcov.html185
-rw-r--r--rep/usr/include/c++/4.3/ext/index.html101
-rw-r--r--rep/usr/include/c++/4.3/ext/new_allocator.h.gcov.html200
-rw-r--r--rep/usr/include/c++/4.3/ext/type_traits.h.gcov.html277
-rw-r--r--rep/usr/include/c++/4.3/fstream.gcov.html853
-rw-r--r--rep/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h.gcov.html837
-rw-r--r--rep/usr/include/c++/4.3/i486-linux-gnu/bits/index.html83
-rw-r--r--rep/usr/include/c++/4.3/index.html191
-rw-r--r--rep/usr/include/c++/4.3/iomanip.gcov.html368
-rw-r--r--rep/usr/include/c++/4.3/iosfwd.gcov.html232
-rw-r--r--rep/usr/include/c++/4.3/iostream.gcov.html148
-rw-r--r--rep/usr/include/c++/4.3/istream.gcov.html906
-rw-r--r--rep/usr/include/c++/4.3/new.gcov.html183
-rw-r--r--rep/usr/include/c++/4.3/ostream.gcov.html642
-rw-r--r--rep/usr/include/c++/4.3/sstream.gcov.html642
-rw-r--r--rep/usr/include/c++/4.3/stdexcept.gcov.html215
-rw-r--r--rep/usr/include/c++/4.3/streambuf.gcov.html871
-rw-r--r--rep/usr/include/c++/4.3/typeinfo.gcov.html264
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/TextFormat.h.gcov.html261
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/TextFormat.tcc.gcov.html357
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/coll/base.h.gcov.html400
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/coll/base.tcc.gcov.html258
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/coll/index.html137
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/coll/intdiskindex.h.gcov.html265
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/coll/patched.h.gcov.html307
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/coll/patched.tcc.gcov.html274
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/coll/simple.h.gcov.html205
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/coll/simple.tcc.gcov.html263
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/diskindex/index.html92
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/diskindex/int.h.gcov.html158
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/diskindex/mmap.h.gcov.html196
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/expression.h.gcov.html249
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/index.html119
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/input/base.h.gcov.html184
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/input/index.html101
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/input/memory.h.gcov.html127
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/input/string.h.gcov.html125
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/patch.h.gcov.html271
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/patch.tcc.gcov.html231
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/stream/index.html83
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/stream/sink.h.gcov.html150
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/utils/index.html83
-rw-r--r--rep/usr/include/tagcoll-2.0.11/tagcoll/utils/set.h.gcov.html155
-rw-r--r--rep/usr/include/xapian/base.h.gcov.html239
-rw-r--r--rep/usr/include/xapian/database.h.gcov.html803
-rw-r--r--rep/usr/include/xapian/document.h.gcov.html267
-rw-r--r--rep/usr/include/xapian/enquire.h.gcov.html1361
-rw-r--r--rep/usr/include/xapian/error.h.gcov.html822
-rw-r--r--rep/usr/include/xapian/expanddecider.h.gcov.html155
-rw-r--r--rep/usr/include/xapian/index.html173
-rw-r--r--rep/usr/include/xapian/postingiterator.h.gcov.html230
-rw-r--r--rep/usr/include/xapian/query.h.gcov.html520
-rw-r--r--rep/usr/include/xapian/termgenerator.h.gcov.html226
-rw-r--r--rep/usr/include/xapian/termiterator.h.gcov.html216
-rw-r--r--rep/usr/include/xapian/unicode.h.gcov.html433
-rw-r--r--source-tree-root1
-rw-r--r--test.sh5
-rw-r--r--tools/CMakeLists.txt22
-rw-r--r--tools/Environment.cc120
-rw-r--r--tools/Environment.h129
-rw-r--r--tools/EptCacheOptions.h293
-rw-r--r--tools/ept-cache-man-hooks49
-rw-r--r--tools/ept-cache.cc1020
-rw-r--r--tools/ept-cat.cpp16
-rw-r--r--tools/ept-search.cpp43
-rw-r--r--tools/filters.cc112
-rw-r--r--tools/filters.h125
-rw-r--r--tools/info.cc125
-rw-r--r--tools/info.h81
-rw-r--r--tools/manpage.cc62
-rw-r--r--tools/pkglist.cpp16
-rw-r--r--tools/utils.h72
348 files changed, 263895 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
new file mode 100644
index 0000000..84794c7
--- /dev/null
+++ b/CMakeLists.txt
@@ -0,0 +1,39 @@
+include( FindPkgConfig )
+include( FindDoxygen )
+
+add_custom_target( unit )
+
+set( EPT_VERSION "0.5.28" )
+set( APT_INCLUDES "/usr/include/" CACHE STRING "apt include path" )
+set( APT_LINKDIRS "/usr/lib/" CACHE STRING "apt library path" )
+set( OPT_FLAGS "-O0 -g" CACHE STRING "optimization level" )
+
+option( INTERNAL_TAGCOLL "use internal copy of tagcoll" )
+option( INTERNAL_WIBBLE "use internal copy of wibble" )
+option( RPM "using apt-rpm" )
+
+if( INTERNAL_WIBBLE )
+ add_subdirectory( wibble )
+ set( WIBBLE_INCLUDE_DIRS ${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} )
+ set( WIBBLE_LIBRARY_DIRS ${wibble_BINARY_DIR} )
+ set( WIBBLE_LIBRARIES "wibble" )
+ set( WIBBLE_TEST_CMAKE "${wibble_SOURCE_DIR}/test.cmake" )
+else( INTERNAL_WIBBLE )
+ pkg_check_modules( WIBBLE REQUIRED "libwibble >= 0.1.22" )
+ find_program( WIBBLE_TEST_GENRUNNER wibble-test-genrunner )
+ set( WIBBLE_TEST_CMAKE "${WIBBLE_PREFIX}/share/wibble/test.cmake" )
+endif( INTERNAL_WIBBLE )
+
+if( INTERNAL_TAGCOLL )
+ set( TAGCOLL_FOUND ON )
+ set( TAGCOLL_INCLUDE_DIRS ${CMAKE_SOURCE_DIR} )
+ set( TAGCOLL_LIBRARY_DIRS ${tagcoll_BINARY_DIR} )
+ set( TAGCOLL_LIBRARIES "tagcoll2" )
+ add_subdirectory( tagcoll )
+else( INTERNAL_TAGCOLL )
+ pkg_check_modules( TAGCOLL REQUIRED "libtagcoll2 >= 2.0" )
+endif( INTERNAL_TAGCOLL )
+
+add_subdirectory( ept )
+add_subdirectory( tools )
+add_subdirectory( doc )
diff --git a/COPYING b/COPYING
new file mode 100644
index 0000000..2d2d780
--- /dev/null
+++ b/COPYING
@@ -0,0 +1,510 @@
+
+ GNU LESSER GENERAL PUBLIC LICENSE
+ Version 2.1, February 1999
+
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+ 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+[This is the first released version of the Lesser GPL. It also counts
+ as the successor of the GNU Library Public License, version 2, hence
+ the version number 2.1.]
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+ This license, the Lesser General Public License, applies to some
+specially designated software packages--typically libraries--of the
+Free Software Foundation and other authors who decide to use it. You
+can use it too, but we suggest you first think carefully about whether
+this license or the ordinary General Public License is the better
+strategy to use in any particular case, based on the explanations
+below.
+
+ When we speak of free software, we are referring to freedom of use,
+not price. Our General Public Licenses are designed to make sure that
+you have the freedom to distribute copies of free software (and charge
+for this service if you wish); that you receive source code or can get
+it if you want it; that you can change the software and use pieces of
+it in new free programs; and that you are informed that you can do
+these things.
+
+ To protect your rights, we need to make restrictions that forbid
+distributors to deny you these rights or to ask you to surrender these
+rights. These restrictions translate to certain responsibilities for
+you if you distribute copies of the library or if you modify it.
+
+ For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you. You must make sure that they, too, receive or can get the source
+code. If you link other code with the library, you must provide
+complete object files to the recipients, so that they can relink them
+with the library after making changes to the library and recompiling
+it. And you must show them these terms so they know their rights.
+
+ We protect your rights with a two-step method: (1) we copyright the
+library, and (2) we offer you this license, which gives you legal
+permission to copy, distribute and/or modify the library.
+
+ To protect each distributor, we want to make it very clear that
+there is no warranty for the free library. Also, if the library is
+modified by someone else and passed on, the recipients should know
+that what they have is not the original version, so that the original
+author's reputation will not be affected by problems that might be
+introduced by others.
+
+ Finally, software patents pose a constant threat to the existence of
+any free program. We wish to make sure that a company cannot
+effectively restrict the users of a free program by obtaining a
+restrictive license from a patent holder. Therefore, we insist that
+any patent license obtained for a version of the library must be
+consistent with the full freedom of use specified in this license.
+
+ Most GNU software, including some libraries, is covered by the
+ordinary GNU General Public License. This license, the GNU Lesser
+General Public License, applies to certain designated libraries, and
+is quite different from the ordinary General Public License. We use
+this license for certain libraries in order to permit linking those
+libraries into non-free programs.
+
+ When a program is linked with a library, whether statically or using
+a shared library, the combination of the two is legally speaking a
+combined work, a derivative of the original library. The ordinary
+General Public License therefore permits such linking only if the
+entire combination fits its criteria of freedom. The Lesser General
+Public License permits more lax criteria for linking other code with
+the library.
+
+ We call this license the "Lesser" General Public License because it
+does Less to protect the user's freedom than the ordinary General
+Public License. It also provides other free software developers Less
+of an advantage over competing non-free programs. These disadvantages
+are the reason we use the ordinary General Public License for many
+libraries. However, the Lesser license provides advantages in certain
+special circumstances.
+
+ For example, on rare occasions, there may be a special need to
+encourage the widest possible use of a certain library, so that it
+becomes a de-facto standard. To achieve this, non-free programs must
+be allowed to use the library. A more frequent case is that a free
+library does the same job as widely used non-free libraries. In this
+case, there is little to gain by limiting the free library to free
+software only, so we use the Lesser General Public License.
+
+ In other cases, permission to use a particular library in non-free
+programs enables a greater number of people to use a large body of
+free software. For example, permission to use the GNU C Library in
+non-free programs enables many more people to use the whole GNU
+operating system, as well as its variant, the GNU/Linux operating
+system.
+
+ Although the Lesser General Public License is Less protective of the
+users' freedom, it does ensure that the user of a program that is
+linked with the Library has the freedom and the wherewithal to run
+that program using a modified version of the Library.
+
+ The precise terms and conditions for copying, distribution and
+modification follow. Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library". The
+former contains code derived from the library, whereas the latter must
+be combined with the library in order to run.
+
+ GNU LESSER GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License Agreement applies to any software library or other
+program which contains a notice placed by the copyright holder or
+other authorized party saying it may be distributed under the terms of
+this Lesser General Public License (also called "this License").
+Each licensee is addressed as "you".
+
+ A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+ The "Library", below, refers to any such software library or work
+which has been distributed under these terms. A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language. (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+ "Source code" for a work means the preferred form of the work for
+making modifications to it. For a library, complete source code means
+all the source code for all modules it contains, plus any associated
+interface definition files, plus the scripts used to control
+compilation and installation of the library.
+
+ Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it). Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+
+ 1. You may copy and distribute verbatim copies of the Library's
+complete source code as you receive it, in any medium, provided that
+you conspicuously and appropriately publish on each copy an
+appropriate copyright notice and disclaimer of warranty; keep intact
+all the notices that refer to this License and to the absence of any
+warranty; and distribute a copy of this License along with the
+Library.
+
+ You may charge a fee for the physical act of transferring a copy,
+and you may at your option offer warranty protection in exchange for a
+fee.
+
+ 2. You may modify your copy or copies of the Library or any portion
+of it, thus forming a work based on the Library, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) The modified work must itself be a software library.
+
+ b) You must cause the files modified to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ c) You must cause the whole of the work to be licensed at no
+ charge to all third parties under the terms of this License.
+
+ d) If a facility in the modified Library refers to a function or a
+ table of data to be supplied by an application program that uses
+ the facility, other than as an argument passed when the facility
+ is invoked, then you must make a good faith effort to ensure that,
+ in the event an application does not supply such function or
+ table, the facility still operates, and performs whatever part of
+ its purpose remains meaningful.
+
+ (For example, a function in a library to compute square roots has
+ a purpose that is entirely well-defined independent of the
+ application. Therefore, Subsection 2d requires that any
+ application-supplied function or table used by this function must
+ be optional: if the application does not supply it, the square
+ root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Library,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Library, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote
+it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library. To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License. (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.) Do not make any other change in
+these notices.
+
+ Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+ This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+ 4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you accompany
+it with the complete corresponding machine-readable source code, which
+must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange.
+
+ If distribution of object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the
+source code from the same place satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library". Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+ However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library". The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+ When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library. The
+threshold for this to be true is not precisely defined by law.
+
+ If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work. (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+ Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+
+ 6. As an exception to the Sections above, you may also combine or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+ You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License. You must supply a copy of this License. If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License. Also, you must do one
+of these things:
+
+ a) Accompany the work with the complete corresponding
+ machine-readable source code for the Library including whatever
+ changes were used in the work (which must be distributed under
+ Sections 1 and 2 above); and, if the work is an executable linked
+ with the Library, with the complete machine-readable "work that
+ uses the Library", as object code and/or source code, so that the
+ user can modify the Library and then relink to produce a modified
+ executable containing the modified Library. (It is understood
+ that the user who changes the contents of definitions files in the
+ Library will not necessarily be able to recompile the application
+ to use the modified definitions.)
+
+ b) Use a suitable shared library mechanism for linking with the
+ Library. A suitable mechanism is one that (1) uses at run time a
+ copy of the library already present on the user's computer system,
+ rather than copying library functions into the executable, and (2)
+ will operate properly with a modified version of the library, if
+ the user installs one, as long as the modified version is
+ interface-compatible with the version that the work was made with.
+
+ c) Accompany the work with a written offer, valid for at least
+ three years, to give the same user the materials specified in
+ Subsection 6a, above, for a charge no more than the cost of
+ performing this distribution.
+
+ d) If distribution of the work is made by offering access to copy
+ from a designated place, offer equivalent access to copy the above
+ specified materials from the same place.
+
+ e) Verify that the user has already received a copy of these
+ materials or that you have already sent this user a copy.
+
+ For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it. However, as a special exception,
+the materials to be distributed need not include anything that is
+normally distributed (in either source or binary form) with the major
+components (compiler, kernel, and so on) of the operating system on
+which the executable runs, unless that component itself accompanies
+the executable.
+
+ It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system. Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+
+ 7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+ a) Accompany the combined library with a copy of the same work
+ based on the Library, uncombined with any other library
+ facilities. This must be distributed under the terms of the
+ Sections above.
+
+ b) Give prominent notice with the combined library of the fact
+ that part of it is a work based on the Library, and explaining
+ where to find the accompanying uncombined form of the same work.
+
+ 8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License. Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library is void, and will automatically terminate your
+rights under this License. However, parties who have received copies,
+or rights, from you under this License will not have their licenses
+terminated so long as such parties remain in full compliance.
+
+ 9. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Library or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+ 10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+subject to these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties with
+this License.
+
+ 11. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Library at all. For example, if a patent
+license would not permit royalty-free redistribution of the Library by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Library.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply, and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library under this License
+may add an explicit geographical distribution limitation excluding those
+countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 13. The Free Software Foundation may publish revised and/or new
+versions of the Lesser General Public License from time to time.
+Such new versions will be similar in spirit to the present version,
+but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Library
+specifies a version number of this License which applies to it and
+"any later version", you have the option of following the terms and
+conditions either of that version or of any later version published by
+the Free Software Foundation. If the Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+
+ 14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+write to the author to ask for permission. For software which is
+copyrighted by the Free Software Foundation, write to the Free
+Software Foundation; we sometimes make exceptions for this. Our
+decision will be guided by the two goals of preserving the free status
+of all derivatives of our free software and of promoting the sharing
+and reuse of software generally.
+
+ NO WARRANTY
+
+ 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Libraries
+
+ If you develop a new library, and you want it to be of the greatest
+possible use to the public, we recommend making it free software that
+everyone can redistribute and change. You can do so by permitting
+redistribution under these terms (or, alternatively, under the terms
+of the ordinary General Public License).
+
+ To apply these terms, attach the following notices to the library.
+It is safest to attach them to the start of each source file to most
+effectively convey the exclusion of warranty; and each file should
+have at least the "copyright" line and a pointer to where the full
+notice is found.
+
+
+ <one line to give the library's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
+Also add information on how to contact you by electronic and paper mail.
+
+You should also get your employer (if you work as a programmer) or
+your school, if any, to sign a "copyright disclaimer" for the library,
+if necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the
+ library `Frob' (a library for tweaking knobs) written by James
+ Random Hacker.
+
+ <signature of Ty Coon>, 1 April 1990
+ Ty Coon, President of Vice
+
+That's all there is to it!
+
+
diff --git a/README b/README
new file mode 100644
index 0000000..4a8dd3c
--- /dev/null
+++ b/README
@@ -0,0 +1,65 @@
+README for ept
+==============
+
+The intent of this library is to provide high-level access to all sorts of
+sources of information about Debian packages.
+
+There are four data providers currently implemented:
+
+ - APT: access the APT database
+ - Debtags: access the Debtags tag information
+ - Popcon: access Popcon package scores
+ - TextSearch: fast Xapian-based full text search on package description
+
+To enable the popcon data provider, just download the file
+http://popcon.debian.org/all-popcon-results.txt.gz and put it into
+/var/lib/popcon/ or ~/.popcon/ in the user's home directory.
+
+To enable the xapian fast search index, run ept-cache reindex as root.
+
+The xapian index is not regenerated automatically like with popcon and debtags
+because it takes a while to build. It is also not stored in the user's home
+directory because it is quite large.
+
+
+Development
+===========
+
+The library revolves around two classes: Package and Version. These classes
+represent a package or one of its specific versions. Using these classes it is
+possible to query one or more data providers for information about the package.
+
+The idea is to have a way to represent a package or one of its versions, and
+that this way must be valid for any data provider.
+
+A data provider does not need to know about the others, nor it needs to
+implement a specific interface: the only requirement on a data provider is that
+it can be queried using Package and Version objects, as appropriate.
+
+It is easy to implement more data providers. It is also easy to implement new
+data providers outside of this library, as long as they can be queried using
+Package or Version objects.
+
+The 4 providers are currently shipped with the library to avoid having a chain
+of dependencies on the initial state of the project. It is straightforward,
+however, to package them separately from the core Package infrastructure.
+
+
+The development of libept is currently published in the Mercurial repository
+at: http://hg.debian.org/hg/private/enrico/libept
+
+It is possible to checkout a copy of the repository with the command:
+
+ hg clone http://hg.debian.org/hg/private/enrico/libept
+
+Mercurial is a distributed version control system: you are encouraged to play
+with the code, join the development and publish your Mercurial tree.
+
+
+Authors
+=======
+
+Enrico Zini <enrico@enricozini.org>
+
+Some code is ported to the Package framework from libept, written by Peter
+Rockai <me@mornfall.net> and Enrico Zini <enrico@enricozini.org>
diff --git a/debian/README b/debian/README
new file mode 100644
index 0000000..168d971
--- /dev/null
+++ b/debian/README
@@ -0,0 +1,2 @@
+To make sure that all the data sources are working and up to date, you can run
+"ept-cache info" and follow the instructions.
diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 0000000..c671c63
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,515 @@
+libept (0.5.28) unstable; urgency=low
+
+ * Removed adept-specific code. Closes: #540209.
+
+ -- Enrico Zini <enrico@debian.org> Sun, 23 Aug 2009 12:00:02 +0100
+
+libept (0.5.27) unstable; urgency=low
+
+ * Applied patch by Julian Andres Klode:
+ + Fix test suite on apt 0.7.22, which supports Enhances (Closes: #539331)
+
+ -- Enrico Zini <enrico@debian.org> Mon, 03 Aug 2009 15:49:25 +0100
+
+libept (0.5.26) unstable; urgency=low
+
+ * Disable Xapian quality cutoff to make the results more deterministic
+ and easier to understand (clients are now expected to trim their
+ result list somehow).
+ * Try to match the whole search string as a package name prefix,
+ improving the result sets.
+
+ -- Petr Rockai <mornfall@debian.org> Wed, 15 Oct 2008 20:24:21 +0200
+
+libept (0.5.25) unstable; urgency=low
+
+ * Improvements to core::xapian robustness plus a few bugfixes there,
+ * add core::package::ActionList::latest() to get at the topmost action.
+
+ -- Petr Rockai <mornfall@debian.org> Sun, 17 Aug 2008 12:10:49 +0200
+
+libept (0.5.24) experimental; urgency=low
+
+ * Rework core::xapian for both improved API and possibilities,
+ * add some invalidate() methods to keep sources from using expired data,
+ * implement package::Source::get< package::AnyVersion >(),
+ * don't interfere with apt-get's autoremove marking,
+ * a few relatively minor bugfixes.
+
+ -- Petr Rockai <mornfall@debian.org> Tue, 05 Aug 2008 19:55:50 +0200
+
+libept (0.5.23) experimental; urgency=low
+
+ * Added core::xapian::Source::update() to refresh xapian index
+ (calls out to update-apt-xapian-index),
+ * optimize core::desktop performance,
+ * fix an important performance issue in core::apt::package's revertStates(),
+ * fix many compiler warnings.
+
+ -- Petr Rockai <mornfall@debian.org> Thu, 31 Jul 2008 13:30:26 +0200
+
+libept (0.5.22) unstable; urgency=high
+
+ * Add missing build-dependency on g++-4.2 on ARM.
+
+ -- Petr Rockai <mornfall@debian.org> Sat, 26 Jul 2008 12:35:14 +0200
+
+libept (0.5.21) unstable; urgency=high
+
+ * Compile with g++-4.2 on ARM. Closes: #487408.
+ * Fixed apt::Apt package iteration. Closes: #491412.
+ * Updated standards-version (no changes required)
+ * Created ufficial repository in collab-maint, and updated Vcs headers.
+
+ -- Enrico Zini <enrico@debian.org> Tue, 22 Jul 2008 18:15:40 +0100
+
+libept (0.5.20) unstable; urgency=low
+
+ * Really fix the failure this time. Missed a sort on one of the tests.
+ * Build-depend on libwibble-dev >= 0.1.19.
+
+ -- Petr Rockai <mornfall@debian.org> Tue, 17 Jun 2008 23:18:05 +0200
+
+libept (0.5.19) unstable; urgency=low
+
+ * Fix a semi-random testsuite failure due to an operator< in
+ desktop::Entry not defining a partial order.
+
+ -- Petr Rockai <mornfall@debian.org> Tue, 17 Jun 2008 16:25:12 +0200
+
+libept (0.5.18) unstable; urgency=low
+
+ [ Enrico Zini ]
+ * Detect when the apt cache changes even after package removal.
+ * Fix a bug in build system that caused FTBFS with cmake 2.6.
+ Closes: bug#482227.
+
+ [ Petr Rockai ]
+ * Added package::Source::upgradableList(),
+ * add API bits for recognizing held packages,
+ * slight refactorings of the ept::core API,
+ * parser for .desktop files,
+ * a desktop::Source for reading in directories of .desktop files
+ (app-install-data style),
+ * fix a grave bug in AptException (it wasn't deriving std::exception...).
+
+ -- Petr Rockai <mornfall@debian.org> Sat, 14 Jun 2008 12:49:08 +0200
+
+libept (0.5.17) unstable; urgency=low
+
+ * Updated shlibs file.
+ * Build paths in a smart way. Closes: bug#472999.
+ * Fixed problem with new GCC. Closes: bug#472821.
+
+ -- Enrico Zini <enrico@debian.org> Fri, 28 Mar 2008 01:29:11 +0800
+
+libept (0.5.16) unstable; urgency=high
+
+ * Build-depend on new wibble
+ * Install documentation. Closes: #471744.
+ * Urgency set to high as it is part of fixing #472476.
+
+ -- Enrico Zini <enrico@debian.org> Tue, 25 Mar 2008 14:54:51 +0800
+
+libept (0.5.15) unstable; urgency=low
+
+ [ Enrico Zini ]
+ * Compiles with gcc 4.3. Closes: #455334.
+ Thanks Matthias Klose for the patch.
+ * Builds with broken dash. Closes: #459086.
+ Thanks Daniel Hahler for the patch.
+ * ept-cache depends on apt-xapian-index >= 0.5. Closes: #457128.
+ * ept-cache show works on multiple packages. Closes: #462920.
+
+ [ Petr Rockai ]
+ * Enhancements to ept::core API, in support of Adept 3.0~alpha4.
+ - Handle exceptions coming from _system-Lock().
+ - AptException to slurp up _error into its context when being thrown.
+ - Support for system upgrades in ActionList.
+ - AptDatabase can be now told to use a custom OpProgress object.
+ * Fix a bug in AptDatabase::openState() trying to use NULL pointer.
+
+ -- Petr Rockai <mornfall@debian.org> Mon, 10 Mar 2008 22:41:29 +0100
+
+libept (0.5.14) unstable; urgency=low
+
+ * Make the testsuite architecture-neutral, should fix build failures on
+ all non-i386 arches.
+
+ -- Petr Rockai <mornfall@debian.org> Wed, 23 Jan 2008 12:18:44 +0100
+
+libept (0.5.13) unstable; urgency=low
+
+ * Merge my ept::core classes with Enrico's current libept iteration,
+ * this makes the library capable of supporting future version of Adept,
+ * use an internal copy of libwibble, with a new testing framework,
+ * convert the testsuite to the new framework.
+
+ * This release also contains a lot of duplicity between ept::core and
+ ept::* classes, which will be gradually addressed by further releases.
+ * The API under ept::core is *not* ABI-compatible between releases.
+ * There is a static libept-core.a that only contains the ept::core
+ functionality (but it is nevertheless linked into libept.so as well).
+
+ -- Petr Rockai <mornfall@debian.org> Fri, 18 Jan 2008 16:03:14 +0100
+
+libept (0.5.12) unstable; urgency=low
+
+ * Updated shlib deps. Closes: bug#455748.
+
+ -- Enrico Zini <enrico@debian.org> Fri, 14 Dec 2007 12:22:48 +0100
+
+libept (0.5.11) unstable; urgency=low
+
+ * Use apt-xapian-index as the full text search index.
+ * ept-cache reindex does not rebuild the full text index anymore.
+ * Implemented --quiet for ept-cache reindex. Closes: bug#432552.
+ * ept-cache reindex calls update-apt-xapian-index.
+ * Use --quiet in the cron job.
+ * Check for existance of ept-cache in the cron job. Closes: bug#435973.
+ * Added missing includes. Closes: bug#441522.
+
+ -- Enrico Zini <enrico@debian.org> Sat, 08 Dec 2007 16:54:58 +0000
+
+libept (0.5.10) unstable; urgency=low
+
+ * ept-cache: allow to sort by package size and installed size
+ * ept-cache: --debug will show useful information about the various steps
+ involved in building the Xapian query
+ * Removed unused TextSearch::search functions
+ * Added TextSearch::docidByName
+ * Added TextSearch::makePartialORQuery
+ * Don't segfault when trying to index a vocabulary which contains a facet
+ without tags
+ * Improved description of ept-cache related
+ * Reactivated --full switch that accidentally disappeared
+ * Added a faq for ept-cache. Closes: #431791.
+ * Added a --cutoff option to choose limits for the quality of the results
+
+ -- Enrico Zini <enrico@debian.org> Fri, 06 Jul 2007 12:15:07 +0100
+
+libept (0.5.9) unstable; urgency=low
+
+ * More alignment fixes
+ * Build-depend on graphwiz to get the documentation fully generated
+ * Improved the result of xapian-based ept-cache search with popcon sorting
+
+ -- Enrico Zini <enrico@debian.org> Thu, 28 Jun 2007 14:20:01 +0200
+
+libept (0.5.8) unstable; urgency=low
+
+ * Properly link with xapian. Closes: bug#430719.
+ * Fixed an alignment problem, that should make it work on hppa, ia64 and
+ sparc
+ * Added a weekly cron job to rebuild the indexes. Closes: #429949.
+ * Fixed building the developer documentation. Closes: #416036.
+
+ -- Enrico Zini <enrico@debian.org> Thu, 28 Jun 2007 02:30:17 +0200
+
+libept (0.5.7) unstable; urgency=low
+
+ * Apt record iterator also shows records of locally installed .debs
+ * Xapian search query generator for packages similar to a given one
+ * Implemented ept-cache related
+
+ -- Enrico Zini <enrico@debian.org> Wed, 20 Jun 2007 21:11:07 +0100
+
+libept (0.5.6) unstable; urgency=low
+
+ * Index tags in the Xapian index
+ * Use tags to improve the quality of the search results
+ * Some tweaks to popcon scoring
+
+ -- Enrico Zini <enrico@debian.org> Tue, 19 Jun 2007 21:12:31 +0100
+
+libept (0.5.5) unstable; urgency=low
+
+ * Fixed ept-cache handling of sorting, filtering and limits
+ * Added xapian sort order
+
+ -- Enrico Zini <enrico@debian.org> Thu, 14 Jun 2007 11:17:18 +0100
+
+libept (0.5.4) unstable; urgency=low
+
+ * Conflicts on debtags << 0.7, as the index file format changed
+ * Much faster startup time on most operations
+ * Print tags even when apt doesn't have them
+
+ -- Enrico Zini <enrico@debian.org> Tue, 12 Jun 2007 19:35:56 +0100
+
+libept (0.5.3) unstable; urgency=low
+
+ * Properly catch Xapian exceptions in ept-cache
+ * Remind to be root in case an exception is raised on reindex when run as
+ non-root
+ * Allow to build Xapian queries instead of directly filling in an Enquire
+
+ -- Enrico Zini <enrico@debian.org> Sun, 10 Jun 2007 16:27:24 +0100
+
+libept (0.5.2) unstable; urgency=low
+
+ * Add -lxapian in the .pc file
+ * libept-dev now depends on libapt-pkg-dev
+
+ -- Enrico Zini <enrico@debian.org> Sat, 09 Jun 2007 23:26:57 +0100
+
+libept (0.5.1) unstable; urgency=low
+
+ * Popcon data source is now independent from Apt
+ * TextSource data source is now independent from Apt
+ * Debtags data source is now independent from Apt
+ * Added popcon::Local data source
+ * Implemented output sorting in ept-cache
+
+ -- Enrico Zini <enrico@debian.org> Thu, 07 Jun 2007 22:36:16 +0100
+
+libept (0.5) unstable; urgency=low
+
+ * Complete rewrite of the library. Closes: #426874.
+ * Added ept-cache commandline interface to the library.
+
+ -- Enrico Zini <enrico@debian.org> Wed, 06 Jun 2007 21:13:24 +0100
+
+libept (0.4.8) unstable; urgency=low
+
+ * Check for package validity before returning its tags. Closes: #408095.
+
+ -- Enrico Zini <enrico@debian.org> Thu, 24 May 2007 13:30:11 +0200
+
+libept (0.4.7) unstable; urgency=high
+
+ * Fixed deserialization of patches.
+ * Urgency set to high because this allows #400994 to be fixed in debtags.
+
+ -- Enrico Zini <enrico@debian.org> Thu, 30 Nov 2006 19:21:46 +0000
+
+libept (0.4.6) unstable; urgency=low
+
+ [ Arnaud Fontaine ]
+ * Changed submission address not to point at vitavonni.
+ Closes: #399111.
+
+ [ Enrico Zini ]
+ * Build-depend on newer libtagcoll2-dev.
+
+ -- Enrico Zini <enrico@debian.org> Sat, 18 Nov 2006 16:21:17 +0100
+
+libept (0.4.5) unstable; urgency=low
+
+ [ Arnaud Fontaine ]
+ * debian/control:
+ - Add Homepage field.
+ - Add myself as uploaders.
+ - Update Standards-Version. No changes needed.
+ * debian/copyright:
+ - License the package under the GNU/GPL license.
+
+ [ Enrico Zini ]
+ * When saving the tag patch, Create ~/.debtags if it is missing.
+
+ -- Enrico Zini <enrico@debian.org> Mon, 30 Oct 2006 20:30:25 +0100
+
+libept (0.4.4) unstable; urgency=low
+
+ * Create ~/.debtags when generating user indexes, if it does not already
+ exist
+
+ -- Enrico Zini <enrico@debian.org> Sun, 29 Oct 2006 19:57:40 +0100
+
+libept (0.4.3) unstable; urgency=low
+
+ * Added various missing Depends. Closes: bug#391428.
+
+ -- Enrico Zini <enrico@debian.org> Sun, 8 Oct 2006 11:24:51 +0200
+
+libept (0.4.2) unstable; urgency=low
+
+ * Build without -gstabs+, as stabs is not supported in some architectures.
+
+ -- Enrico Zini <enrico@debian.org> Thu, 5 Oct 2006 00:56:24 +0200
+
+libept (0.4.1) unstable; urgency=low
+
+ * Added missing build-dep on cmake. Closes: bug#390036.
+ * Ported to new, faster coll::patched on tagcoll2.
+ * Build-depend on new apt to ensure we do not hit #390189.
+
+ -- Enrico Zini <enrico@debian.org> Wed, 4 Oct 2006 09:17:22 +0200
+
+libept (0.4.0) unstable; urgency=low
+
+ * New upstream version with many API changes
+ * Renamed as libept
+ * Updated Standards-Version
+ * Added README.Debian to document that libept is a static library built with
+ -fPIC
+
+ -- Enrico Zini <enrico@debian.org> Sun, 24 Sep 2006 22:07:10 +0100
+
+
+libapt-front (0.3.9) unstable; urgency=low
+
+ * apt-index-watcher now runs another instance of itself to do the update.
+ Closes: #357549.
+ * Builds with GCC 4.1. Closes: #357555.
+ * Implemented package relationships in completeRecord()
+
+ -- Enrico Zini <enrico@debian.org> Sat, 18 Mar 2006 21:54:49 +0100
+
+libapt-front (0.3.8) unstable; urgency=low
+
+ * CHANGE: Use libtagcoll 1.6 with the new IntDiskIndex
+ * CHANGE: Components now regenerate indexes during initialization when needed
+ * CHANGE: Debtags update function no more exists: one now calls
+ debtags::fetchNewData() before instantiating the components and the
+ components will reindex as needed.
+ * Created apt-index-watcher, to keep the on-disk index up to date when
+ another application rebuilds the APT index. Sadly, there doesn't seem to
+ be any better way in a short or medium term.
+
+ -- Enrico Zini <enrico@debian.org> Fri, 3 Mar 2006 11:45:03 +0100
+
+libapt-front (0.3.7) unstable; urgency=low
+
+ * Install utils/comparable.h (was missing),
+ * CHANGE: the actor user-visible names changed for improved usability,
+ * CHANGE: Relation::targetPackages() now returns only those with
+ versions satisfying the constraints (as it should),
+ * NEW: Cache::isOpen() predicate,
+ * NEW: component::Desktop allows getting group list of a custom
+ entity range now (not only all groups in system),
+ * NEW: entity::{Version,Package} now have md5sum, source and fileName
+ accessors (available through component::Records)
+ * slight optimization of filteredRange,
+ * fixed intersectionRange to not walk past end of underlying range,
+ * un-optimize name() lookups in packages, reduces memory usage
+ while keeping nearly same speed,
+ * use GenericName for a description() of Desktop entries that have
+ no Comment
+
+ -- Peter Rockai <me@mornfall.net> Sun, 19 Feb 2006 21:20:04 +0100
+
+libapt-front (0.3.6) unstable; urgency=low
+
+ * CHANGE: ranges have end() and not last(), the semantics are same,
+ * CHANGE: Range::next() is now a non-mutating successor generator,
+ Range::advance() is a mutator,
+ * CHANGE: no more Range::ensureSorted() mutator -- there's a non-mutating
+ Range::sorted() accessor that gives an instance of the same range, however
+ sorted
+ * CHANGE: a mostly-compatible refactoring of entity::Package; if you relied
+ on implementation details, your code may break now
+ * CHANGE: entity::Relation::targetPackages() now traverses Provides:, as it should
+ * CHANGE: no more cache::component::Packages::packages( iterator ), use
+ packagesBegin() and packagesEnd() or the range accessors instead,
+ * NEW: cache::component::Desktop -- parse .desktop files with special X-AppInstall-*
+ entries, associate them with their packages, have entity::Desktop to manipulate
+ them
+ * NEW: SortedRange and UniqueRange adaptors, which present their underlying
+ range in a sorted and in the latter case uniquized manner
+ * NEW: Range::contains( element ) -- generic implementation only, O(n) so far
+ (will optimize later)
+ * NEW: aptFront::utils::Comparable mixin (implements > and == in terms of <)
+ * NEW: cache::component::Packages::sorted() now gives a name-sorted range of
+ entity::Package instances
+ * NEW: cache::component::State::{installSize{,String},downloadSize{,String}}
+ accessors -- what is needed to get system into currently marked up state
+ * NEW: all cache::component implementations now have a Cache &cache() accessor
+ * NEW: GeneratedRange, a range defined by a successor functor and a end-test
+ functor
+ * NEW: cache::component::State::{revert(),replay( range )}, former restores
+ state that corresponds to current system and replay( range ) runs a list
+ of actions recorded in the range (only one notification is fired)
+ * (compatible) rewrite of component::History, more reliable now
+ * reduce test data set, remove the download hacks,
+ * gettextize, wrap strings that are intended for presentation in gettext() calls,
+ * set debugger with DEBUGGER={valgrind,gdb --args} for make test,
+
+ -- Peter Rockai <me@mornfall.net> Mon, 13 Feb 2006 11:25:27 +0100
+
+libapt-front (0.3.5) unstable; urgency=low
+
+ [ Enrico Zini ]
+ * Added architecture to Version::completeRecord.
+
+ [ Peter Rockai ]
+ * Test suite should not produce ansi-colorized output by default anymore
+ (broke buildd logs),
+ * entity::Package::versions() now returns a Range instead of taking an
+ output iterator,
+ * reduce noise in debtags update code (this will need fixng later),
+ * new handling of fallback arguments for getters,
+ * templatize Version (work in progress, currently backwards compatible),
+ * libapt-front-devel@l.a.d.o is the new maintainer,
+ * new Version::installedSize{,String}() getters, added to completeRecord(),
+ * first go at implementing entity::Relation,
+ * new TagSet matcher to check a whole tagset at once (and-ed),
+ * support purge and reinstall actions on packages,
+ * entity::Named is a new interface, to be implemented by entities with
+ name() accessor,
+ * MultiType's isType< type >() predicate renamed to is< type >(),
+ * support for cancelled download in Manager, throws OperationCancelled,
+ * fix make clean to reduce trash that gets into distribution tarballs,
+ * fix copy constructor of PackagePolicy to actually work as it should
+ (and not cause random memory to be used by libapt-pkg, which probably
+ caused some segfaults)
+
+ -- Peter Rockai <me@mornfall.net> Mon, 23 Jan 2006 13:54:31 +0100
+
+libapt-front (0.3.4) unstable; urgency=low
+
+ * Works with tags which are 1 character long (such as langdevel::c)
+ * Allows to use file:// URIs in /etc/debtags/sources.list
+ * Debtags test data is now provided in the package
+
+ -- Enrico Zini <enrico@debian.org> Fri, 11 Nov 2005 17:42:19 +0100
+
+libapt-front (0.3.3) unstable; urgency=low
+
+ * Fix sources.list parsing of cdrom entries
+ * Support changing of installation media.
+ * Fix Depends: for libapt-front-dev.
+
+ -- Peter Rockai <me@mornfall.net> Wed, 28 Sep 2005 16:49:38 +0200
+
+libapt-front (0.3.2) unstable; urgency=low
+
+ * Fixes in broken package handling
+ * Use exception handling in the Manager -- should be safer now
+
+ -- Peter Rockai <me@mornfall.net> Sun, 25 Sep 2005 12:36:29 +0200
+
+libapt-front (0.3.1) experimental; urgency=low
+
+ * Compile with -fPIC, some architectures apparently don't support
+ shared libraries with non-PIC code.
+
+ -- Peter Rockai <me@mornfall.net> Mon, 12 Sep 2005 10:54:42 +0200
+
+libapt-front (0.3) experimental; urgency=low
+
+ [ Peter Rockai ]
+ * improved actor code
+ * component::History improvements/fixes
+ * utils::Range improvements and fixes
+ * some unit test work
+ * implement sources.list parser
+ * general cleanups and fixes all over the code
+
+ [ Enrico Zini ]
+ * Merged libdebtags into libapt-front.
+
+ -- Peter Rockai <me@mornfall.net> Fri, 9 Sep 2005 15:47:56 +0200
+
+libapt-front (0.2) experimental; urgency=low
+
+ * New upstream version
+
+ -- Enrico Zini <enrico@debian.org> Mon, 22 Aug 2005 23:41:07 +0200
+
+libapt-front (0.1) experimental; urgency=low
+
+ * Initial Release
+
+ -- Enrico Zini <enrico@debian.org> Sun, 12 Nov 2004 22:02:42 +0100
+
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 0000000..7ed6ff8
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+5
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..9dba8e3
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,60 @@
+Source: libept
+Section: libdevel
+Priority: optional
+Maintainer: Enrico Zini <enrico@debian.org>
+Uploaders: Petr Rockai <mornfall@debian.org>, Arnaud Fontaine <arnaud@andesi.org>
+Build-Depends: cdbs, debhelper (>> 5), dh-buildinfo, doxygen, graphviz, libapt-pkg-dev (>= 0.6.46.1), libwibble-dev (>= 0.1.21), libwibble-dev (<< 0.2), libtagcoll2-dev (>= 2.0.6), libtagcoll2-dev (<< 2.1), pkg-config, libxapian-dev (>= 1.0.5), cmake, g++-4.2 [arm]
+Standards-Version: 3.8.0
+Vcs-Darcs: http://darcs.debian.org/darcs/collab-maint/libept
+Vcs-Browser: http://darcs.debian.org/cgi-bin/darcsweb.cgi?r=collab-maint/libept;a=summary
+
+Package: libept-dev
+Section: libdevel
+Architecture: any
+Recommends: pkg-config
+Depends: libept0 (= ${binary:Version}), libwibble-dev (>= 0.1.21), libwibble-dev (<< 0.2), libtagcoll2-dev (>= 2.0.6), libtagcoll2-dev (<< 2.1), libapt-pkg-dev (>= 0.6.46.1), libxapian-dev (>= 1.0.5)
+Conflicts: debtags (<< 0.7)
+Description: High-level library for managing Debian package information
+ The library defines a very minimal framework in which many sources of data
+ about Debian packages can be implemented and queried together.
+ .
+ The library includes four data sources:
+ .
+ * APT: access the APT database
+ * Debtags: access the Debtags tag information
+ * Popcon: access Popcon package scores
+ * The Xapian index built by apt-xapian-index
+ .
+ This is the development library.
+
+Package: libept0
+Section: libs
+Architecture: any
+Depends: ${shlibs:Depends}
+Description: High-level library for managing Debian package information
+ The library defines a very minimal framework in which many sources of data
+ about Debian packages can be implemented and queried together.
+ .
+ The library includes four data sources:
+ .
+ * APT: access the APT database
+ * Debtags: access the Debtags tag information
+ * Popcon: access Popcon package scores
+ * The Xapian index built by apt-xapian-index
+ .
+ This is the shared library.
+
+Package: ept-cache
+Architecture: any
+Section: misc
+Depends: ${shlibs:Depends}, ${misc:Depends}, apt-xapian-index (>= 0.5)
+Recommends: debtags
+Description: Commandline tool to search the package archive
+ ept-cache is a simple commandline interface to the functions of libept.
+ .
+ It can currently search and display data from four sources:
+ .
+ * The APT database
+ * The Debtags tag information
+ * Popcon package scores
+ * The Xapian index built by apt-xapian-index
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..b197737
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,27 @@
+This package was debianized by Enrico Zini <enrico@debian.org> on
+Tue May 29 19:01:12 BST 2007.
+
+Upstream Author: Enrico Zini <enrico@enricozini.org>
+
+Copyright (C) 2003--2007 Enrico Zini, Peter Rockai
+
+License:
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
+The Debian packaging is (C) 2007, Enrico Zini <enrico@debian.org>,
+and is licensed under the GPL. On Debian systems, the complete text of
+the GNU General Public License can be found in
+`/usr/share/common-licenses/GPL'.
diff --git a/debian/debuild.opts b/debian/debuild.opts
new file mode 100644
index 0000000..b962575
--- /dev/null
+++ b/debian/debuild.opts
@@ -0,0 +1 @@
+-i_darcs -I_darcs -iwibble -Iwibble
diff --git a/debian/ept-cache.cron.weekly b/debian/ept-cache.cron.weekly
new file mode 100644
index 0000000..923561b
--- /dev/null
+++ b/debian/ept-cache.cron.weekly
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+# Update the data and index files of Debtags
+test -x /usr/bin/ept-cache && /usr/bin/ept-cache reindex --quiet
diff --git a/debian/ept-cache.docs b/debian/ept-cache.docs
new file mode 100644
index 0000000..7cfd8c2
--- /dev/null
+++ b/debian/ept-cache.docs
@@ -0,0 +1 @@
+doc/FAQ
diff --git a/debian/ept-cache.install b/debian/ept-cache.install
new file mode 100644
index 0000000..42ce3c6
--- /dev/null
+++ b/debian/ept-cache.install
@@ -0,0 +1,2 @@
+debian/tmp/usr/bin/
+debian/tmp/usr/share/man/man1
diff --git a/debian/ept-cache.postinst b/debian/ept-cache.postinst
new file mode 100644
index 0000000..4cece22
--- /dev/null
+++ b/debian/ept-cache.postinst
@@ -0,0 +1,12 @@
+#!/bin/sh
+
+set -e
+
+if [ "$1" = "configure" ]; then
+ if [ -d /var/lib/apt-xapian ]; then
+ echo "Removing old index /var/lib/apt-xapian..."
+ rm -r /var/lib/apt-xapian
+ fi
+fi
+
+#DEBHELPER#
diff --git a/debian/libept-dev.install b/debian/libept-dev.install
new file mode 100644
index 0000000..9bb1aca
--- /dev/null
+++ b/debian/libept-dev.install
@@ -0,0 +1,6 @@
+debian/tmp/usr/include/*
+debian/tmp/usr/lib/lib*.a
+debian/tmp/usr/lib/lib*.so
+debian/tmp/usr/lib/pkgconfig/*
+debian/tmp/usr/share/aclocal/*.m4
+debian/tmp/usr/share/doc/libept-dev/*
diff --git a/debian/libept0.install b/debian/libept0.install
new file mode 100644
index 0000000..c45ebcf
--- /dev/null
+++ b/debian/libept0.install
@@ -0,0 +1 @@
+debian/tmp/usr/lib/lib*.so.*
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..bf04cd5
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,40 @@
+#!/usr/bin/make -f
+
+include /usr/share/cdbs/1/rules/debhelper.mk
+include /usr/share/cdbs/1/class/cmake.mk
+
+#DEB_CMAKE_EXTRA_FLAGS += -DOPT_FLAGS=""
+
+
+DEB_HOST_ARCH := $(shell dpkg-architecture -qDEB_HOST_ARCH)
+ifeq ($(DEB_HOST_ARCH),arm)
+# TODO workaround for g++ breakage on arm; debian bug #487406
+export CC=gcc-4.2
+export CXX=g++-4.2
+else
+# TODO workaround for cmake breakage; debian bug #459207
+export CXX = /usr/bin/g++
+export CC = /usr/bin/gcc
+endif
+
+
+DEB_MAKE_CHECK_TARGET := unit
+
+DEB_DH_MAKESHLIBS_ARGS_libept0 = -V
+
+# comment out CONFIGURE and uncomment CMAKE flags to use cmake
+#DEB_CONFIGURE_EXTRA_FLAGS += --disable-shared --with-pic
+#DEB_CMAKE_EXTRA_FLAGS += -DBUILD_TESTING=ON
+
+# Store build information
+common-binary-post-install-arch common-binary-post-install-indep::
+ dh_buildinfo
+
+build/libept-dev::
+ make -C ${DEB_BUILDDIR} doc
+
+install/libept-dev::
+ mkdir -p debian/tmp/usr/share/doc/libept-dev/
+ cp -r ${DEB_BUILDDIR}/doc/html debian/tmp/usr/share/doc/libept-dev/
+ cp ${DEB_BUILDDIR}/doc/libept.doxytags debian/tmp/usr/share/doc/libept-dev/
+ gzip -9 debian/tmp/usr/share/doc/libept-dev/libept.doxytags
diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt
new file mode 100644
index 0000000..c475088
--- /dev/null
+++ b/doc/CMakeLists.txt
@@ -0,0 +1,11 @@
+set( stamp "${CMAKE_CURRENT_BINARY_DIR}/doc-stamp" )
+
+add_custom_command(
+ DEPENDS ept ${CMAKE_CURRENT_BINARY_DIR}/libept.dox
+ OUTPUT ${stamp}
+ COMMAND ${DOXYGEN} libept.dox && touch ${stamp} )
+
+add_custom_target( doc DEPENDS ${stamp} )
+
+configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/libept.dox.in
+ ${CMAKE_CURRENT_BINARY_DIR}/libept.dox @ONLY IMMEDIATE )
diff --git a/doc/FAQ b/doc/FAQ
new file mode 100644
index 0000000..9c36897
--- /dev/null
+++ b/doc/FAQ
@@ -0,0 +1,25 @@
+Frequently Asked Questions for ept-cache
+========================================
+
+Q: How does ept-cache related work?
+A: The 'related' function of ept-cache relies on the Xapian index and works
+ like this:
+ 1. Look up the Xapian records for all the package names given in the
+ command line;
+ 2. Fetch all the tokens indexed for all the packages given, and build an OR
+ query with all those tokens;
+ 3. Output the results of the query.
+
+Q: How come the results of ept-cache seem to be in random order?
+A: By default, ept-cache gives results in decreasing order of relevance.
+ Simply put, it gives the best results first.
+
+ ept-cache, however, allows query results to degenerate into less and less
+ approximate matches, and sometimes this leads to a point where results start
+ to look random.
+
+ If you want to have an idea of what is going on, use the --debug option to
+ see how the quality cutoff point is computed, then the --full option to
+ see the Search-Score: values. You can also use --cutoff to set a higher
+ quality cutoff value (default is to show results that are at least 50% as
+ good as the top result).
diff --git a/doc/libept.dox.in b/doc/libept.dox.in
new file mode 100644
index 0000000..5110b8d
--- /dev/null
+++ b/doc/libept.dox.in
@@ -0,0 +1,1142 @@
+# Doxyfile 1.3.7
+
+# This file describes the settings to be used by the documentation system
+# doxygen (www.doxygen.org) for a project
+#
+# All text after a hash (#) is considered a comment and will be ignored
+# The format is:
+# TAG = value [value, ...]
+# For lists items can also be appended using:
+# TAG += value [value, ...]
+# Values that contain spaces should be placed between quotes (" ")
+
+#---------------------------------------------------------------------------
+# Project related configuration options
+#---------------------------------------------------------------------------
+
+# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
+# by quotes) that should identify the project.
+
+PROJECT_NAME = libept
+
+# The PROJECT_NUMBER tag can be used to enter a project or revision number.
+# This could be handy for archiving the generated documentation or
+# if some version control system is used.
+
+PROJECT_NUMBER = @VERSION@
+
+# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
+# base path where the generated documentation will be put.
+# If a relative path is entered, it will be relative to the location
+# where doxygen was started. If left blank the current directory will be used.
+
+OUTPUT_DIRECTORY =
+
+# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create
+# 2 levels of 10 sub-directories under the output directory of each output
+# format and will distribute the generated files over these directories.
+# Enabling this option can be useful when feeding doxygen a huge amount of source
+# files, where putting all generated files in the same directory would otherwise
+# cause performance problems for the file system.
+
+CREATE_SUBDIRS = NO
+
+# The OUTPUT_LANGUAGE tag is used to specify the language in which all
+# documentation generated by doxygen is written. Doxygen will use this
+# information to generate all constant output in the proper language.
+# The default language is English, other supported languages are:
+# Brazilian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch,
+# Finnish, French, German, Greek, Hungarian, Italian, Japanese, Japanese-en
+# (Japanese with English messages), Korean, Korean-en, Norwegian, Polish, Portuguese,
+# Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian.
+
+OUTPUT_LANGUAGE = English
+
+# This tag can be used to specify the encoding used in the generated output.
+# The encoding is not always determined by the language that is chosen,
+# but also whether or not the output is meant for Windows or non-Windows users.
+# In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES
+# forces the Windows encoding (this is the default for the Windows binary),
+# whereas setting the tag to NO uses a Unix-style encoding (the default for
+# all platforms other than Windows).
+
+USE_WINDOWS_ENCODING = NO
+
+# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
+# include brief member descriptions after the members that are listed in
+# the file and class documentation (similar to JavaDoc).
+# Set to NO to disable this.
+
+BRIEF_MEMBER_DESC = YES
+
+# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
+# the brief description of a member or function before the detailed description.
+# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
+# brief descriptions will be completely suppressed.
+
+REPEAT_BRIEF = YES
+
+# This tag implements a quasi-intelligent brief description abbreviator
+# that is used to form the text in various listings. Each string
+# in this list, if found as the leading text of the brief description, will be
+# stripped from the text and the result after processing the whole list, is used
+# as the annotated text. Otherwise, the brief description is used as-is. If left
+# blank, the following values are used ("$name" is automatically replaced with the
+# name of the entity): "The $name class" "The $name widget" "The $name file"
+# "is" "provides" "specifies" "contains" "represents" "a" "an" "the"
+
+ABBREVIATE_BRIEF =
+
+# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
+# Doxygen will generate a detailed section even if there is only a brief
+# description.
+
+ALWAYS_DETAILED_SEC = NO
+
+# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all inherited
+# members of a class in the documentation of that class as if those members were
+# ordinary class members. Constructors, destructors and assignment operators of
+# the base classes will not be shown.
+
+INLINE_INHERITED_MEMB = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
+# path before files name in the file list and in the header files. If set
+# to NO the shortest path that makes the file name unique will be used.
+
+FULL_PATH_NAMES = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
+# can be used to strip a user-defined part of the path. Stripping is
+# only done if one of the specified strings matches the left-hand part of
+# the path. The tag can be used to show relative paths in the file list.
+# If left blank the directory from which doxygen is run is used as the
+# path to strip.
+
+STRIP_FROM_PATH =
+
+# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of
+# the path mentioned in the documentation of a class, which tells
+# the reader which header file to include in order to use a class.
+# If left blank only the name of the header file containing the class
+# definition is used. Otherwise one should specify the include paths that
+# are normally passed to the compiler using the -I flag.
+
+STRIP_FROM_INC_PATH =
+
+# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
+# (but less readable) file names. This can be useful is your file systems
+# doesn't support long names like on DOS, Mac, or CD-ROM.
+
+SHORT_NAMES = NO
+
+# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
+# will interpret the first line (until the first dot) of a JavaDoc-style
+# comment as the brief description. If set to NO, the JavaDoc
+# comments will behave just like the Qt-style comments (thus requiring an
+# explicit @brief command for a brief description.
+
+JAVADOC_AUTOBRIEF = YES
+
+# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
+# treat a multi-line C++ special comment block (i.e. a block of //! or ///
+# comments) as a brief description. This used to be the default behaviour.
+# The new default is to treat a multi-line C++ comment block as a detailed
+# description. Set this tag to YES if you prefer the old behaviour instead.
+
+MULTILINE_CPP_IS_BRIEF = NO
+
+# If the DETAILS_AT_TOP tag is set to YES then Doxygen
+# will output the detailed description near the top, like JavaDoc.
+# If set to NO, the detailed description appears after the member
+# documentation.
+
+DETAILS_AT_TOP = YES
+
+# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
+# member inherits the documentation from any documented member that it
+# re-implements.
+
+INHERIT_DOCS = YES
+
+# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
+# tag is set to YES, then doxygen will reuse the documentation of the first
+# member in the group (if any) for the other members of the group. By default
+# all members of a group must be documented explicitly.
+
+DISTRIBUTE_GROUP_DOC = YES
+
+# The TAB_SIZE tag can be used to set the number of spaces in a tab.
+# Doxygen uses this value to replace tabs by spaces in code fragments.
+
+TAB_SIZE = 4
+
+# This tag can be used to specify a number of aliases that acts
+# as commands in the documentation. An alias has the form "name=value".
+# For example adding "sideeffect=\par Side Effects:\n" will allow you to
+# put the command \sideeffect (or @sideeffect) in the documentation, which
+# will result in a user-defined paragraph with heading "Side Effects:".
+# You can put \n's in the value part of an alias to insert newlines.
+
+ALIASES =
+
+# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
+# only. Doxygen will then generate output that is more tailored for C.
+# For instance, some of the names that are used will be different. The list
+# of all members will be omitted, etc.
+
+OPTIMIZE_OUTPUT_FOR_C = NO
+
+# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources
+# only. Doxygen will then generate output that is more tailored for Java.
+# For instance, namespaces will be presented as packages, qualified scopes
+# will look different, etc.
+
+OPTIMIZE_OUTPUT_JAVA = NO
+
+# Set the SUBGROUPING tag to YES (the default) to allow class member groups of
+# the same type (for instance a group of public functions) to be put as a
+# subgroup of that type (e.g. under the Public Functions section). Set it to
+# NO to prevent subgrouping. Alternatively, this can be done per class using
+# the \nosubgrouping command.
+
+SUBGROUPING = YES
+
+#---------------------------------------------------------------------------
+# Build related configuration options
+#---------------------------------------------------------------------------
+
+# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
+# documentation are documented, even if no documentation was available.
+# Private class members and static file members will be hidden unless
+# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
+
+EXTRACT_ALL = YES
+
+# If the EXTRACT_PRIVATE tag is set to YES all private members of a class
+# will be included in the documentation.
+
+EXTRACT_PRIVATE = NO
+
+# If the EXTRACT_STATIC tag is set to YES all static members of a file
+# will be included in the documentation.
+
+EXTRACT_STATIC = NO
+
+# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)
+# defined locally in source files will be included in the documentation.
+# If set to NO only classes defined in header files are included.
+
+EXTRACT_LOCAL_CLASSES = NO
+
+# This flag is only useful for Objective-C code. When set to YES local
+# methods, which are defined in the implementation section but not in
+# the interface are included in the documentation.
+# If set to NO (the default) only methods in the interface are included.
+
+EXTRACT_LOCAL_METHODS = NO
+
+# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
+# undocumented members of documented classes, files or namespaces.
+# If set to NO (the default) these members will be included in the
+# various overviews, but no documentation section is generated.
+# This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_MEMBERS = NO
+
+# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
+# undocumented classes that are normally visible in the class hierarchy.
+# If set to NO (the default) these classes will be included in the various
+# overviews. This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_CLASSES = NO
+
+# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
+# friend (class|struct|union) declarations.
+# If set to NO (the default) these declarations will be included in the
+# documentation.
+
+HIDE_FRIEND_COMPOUNDS = NO
+
+# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
+# documentation blocks found inside the body of a function.
+# If set to NO (the default) these blocks will be appended to the
+# function's detailed documentation block.
+
+HIDE_IN_BODY_DOCS = NO
+
+# The INTERNAL_DOCS tag determines if documentation
+# that is typed after a \internal command is included. If the tag is set
+# to NO (the default) then the documentation will be excluded.
+# Set it to YES to include the internal documentation.
+
+INTERNAL_DOCS = NO
+
+# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
+# file names in lower-case letters. If set to YES upper-case letters are also
+# allowed. This is useful if you have classes or files whose names only differ
+# in case and if your file system supports case sensitive file names. Windows
+# users are advised to set this option to NO.
+
+CASE_SENSE_NAMES = YES
+
+# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
+# will show members with their full class and namespace scopes in the
+# documentation. If set to YES the scope will be hidden.
+
+HIDE_SCOPE_NAMES = NO
+
+# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
+# will put a list of the files that are included by a file in the documentation
+# of that file.
+
+SHOW_INCLUDE_FILES = YES
+
+# If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
+# is inserted in the documentation for inline members.
+
+INLINE_INFO = YES
+
+# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen
+# will sort the (detailed) documentation of file and class members
+# alphabetically by member name. If set to NO the members will appear in
+# declaration order.
+
+SORT_MEMBER_DOCS = YES
+
+# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the
+# brief documentation of file, namespace and class members alphabetically
+# by member name. If set to NO (the default) the members will appear in
+# declaration order.
+
+SORT_BRIEF_DOCS = NO
+
+# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be
+# sorted by fully-qualified names, including namespaces. If set to
+# NO (the default), the class list will be sorted only by class name,
+# not including the namespace part.
+# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
+# Note: This option applies only to the class list, not to the
+# alphabetical list.
+
+SORT_BY_SCOPE_NAME = NO
+
+# The GENERATE_TODOLIST tag can be used to enable (YES) or
+# disable (NO) the todo list. This list is created by putting \todo
+# commands in the documentation.
+
+GENERATE_TODOLIST = YES
+
+# The GENERATE_TESTLIST tag can be used to enable (YES) or
+# disable (NO) the test list. This list is created by putting \test
+# commands in the documentation.
+
+GENERATE_TESTLIST = YES
+
+# The GENERATE_BUGLIST tag can be used to enable (YES) or
+# disable (NO) the bug list. This list is created by putting \bug
+# commands in the documentation.
+
+GENERATE_BUGLIST = YES
+
+# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
+# disable (NO) the deprecated list. This list is created by putting
+# \deprecated commands in the documentation.
+
+GENERATE_DEPRECATEDLIST= YES
+
+# The ENABLED_SECTIONS tag can be used to enable conditional
+# documentation sections, marked by \if sectionname ... \endif.
+
+ENABLED_SECTIONS =
+
+# The MAX_INITIALIZER_LINES tag determines the maximum number of lines
+# the initial value of a variable or define consists of for it to appear in
+# the documentation. If the initializer consists of more lines than specified
+# here it will be hidden. Use a value of 0 to hide initializers completely.
+# The appearance of the initializer of individual variables and defines in the
+# documentation can be controlled using \showinitializer or \hideinitializer
+# command in the documentation regardless of this setting.
+
+MAX_INITIALIZER_LINES = 30
+
+# Set the SHOW_USED_FILES tag to NO to disable the list of files generated
+# at the bottom of the documentation of classes and structs. If set to YES the
+# list will mention the files that were used to generate the documentation.
+
+SHOW_USED_FILES = YES
+
+#---------------------------------------------------------------------------
+# configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+
+# The QUIET tag can be used to turn on/off the messages that are generated
+# by doxygen. Possible values are YES and NO. If left blank NO is used.
+
+QUIET = YES
+
+# The WARNINGS tag can be used to turn on/off the warning messages that are
+# generated by doxygen. Possible values are YES and NO. If left blank
+# NO is used.
+
+WARNINGS = YES
+
+# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings
+# for undocumented members. If EXTRACT_ALL is set to YES then this flag will
+# automatically be disabled.
+
+WARN_IF_UNDOCUMENTED = YES
+
+# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for
+# potential errors in the documentation, such as not documenting some
+# parameters in a documented function, or documenting parameters that
+# don't exist or using markup commands wrongly.
+
+WARN_IF_DOC_ERROR = YES
+
+# The WARN_FORMAT tag determines the format of the warning messages that
+# doxygen can produce. The string should contain the $file, $line, and $text
+# tags, which will be replaced by the file and line number from which the
+# warning originated and the warning text.
+
+WARN_FORMAT = "$file:$line: $text"
+
+# The WARN_LOGFILE tag can be used to specify a file to which warning
+# and error messages should be written. If left blank the output is written
+# to stderr.
+
+WARN_LOGFILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to the input files
+#---------------------------------------------------------------------------
+
+# The INPUT tag can be used to specify the files and/or directories that contain
+# documented source files. You may enter file names like "myfile.cpp" or
+# directories like "/usr/src/myproject". Separate the files or directories
+# with spaces.
+
+INPUT = @ept_SOURCE_DIR@
+
+# If the value of the INPUT tag contains directories, you can use the
+# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank the following patterns are tested:
+# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp
+# *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm
+
+FILE_PATTERNS =
+
+# The RECURSIVE tag can be used to turn specify whether or not subdirectories
+# should be searched for input files as well. Possible values are YES and NO.
+# If left blank NO is used.
+
+RECURSIVE = YES
+
+# The EXCLUDE tag can be used to specify files and/or directories that should
+# excluded from the INPUT source files. This way you can easily exclude a
+# subdirectory from a directory tree whose root is specified with the INPUT tag.
+
+EXCLUDE =
+
+# The EXCLUDE_SYMLINKS tag can be used select whether or not files or directories
+# that are symbolic links (a Unix filesystem feature) are excluded from the input.
+
+EXCLUDE_SYMLINKS = NO
+
+# If the value of the INPUT tag contains directories, you can use the
+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+# certain files from those directories.
+
+EXCLUDE_PATTERNS = *-tut.cc
+
+# The EXAMPLE_PATH tag can be used to specify one or more files or
+# directories that contain example code fragments that are included (see
+# the \include command).
+
+EXAMPLE_PATH =
+
+# If the value of the EXAMPLE_PATH tag contains directories, you can use the
+# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank all files are included.
+
+EXAMPLE_PATTERNS =
+
+# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
+# searched for input files to be used with the \include or \dontinclude
+# commands irrespective of the value of the RECURSIVE tag.
+# Possible values are YES and NO. If left blank NO is used.
+
+EXAMPLE_RECURSIVE = NO
+
+# The IMAGE_PATH tag can be used to specify one or more files or
+# directories that contain image that are included in the documentation (see
+# the \image command).
+
+IMAGE_PATH =
+
+# The INPUT_FILTER tag can be used to specify a program that doxygen should
+# invoke to filter for each input file. Doxygen will invoke the filter program
+# by executing (via popen()) the command <filter> <input-file>, where <filter>
+# is the value of the INPUT_FILTER tag, and <input-file> is the name of an
+# input file. Doxygen will then use the output that the filter program writes
+# to standard output.
+
+INPUT_FILTER =
+
+# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
+# INPUT_FILTER) will be used to filter the input files when producing source
+# files to browse (i.e. when SOURCE_BROWSER is set to YES).
+
+FILTER_SOURCE_FILES = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to source browsing
+#---------------------------------------------------------------------------
+
+# If the SOURCE_BROWSER tag is set to YES then a list of source files will
+# be generated. Documented entities will be cross-referenced with these sources.
+# Note: To get rid of all source code in the generated output, make sure also
+# VERBATIM_HEADERS is set to NO.
+
+SOURCE_BROWSER = NO
+
+# Setting the INLINE_SOURCES tag to YES will include the body
+# of functions and classes directly in the documentation.
+
+INLINE_SOURCES = NO
+
+# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
+# doxygen to hide any special comment blocks from generated source code
+# fragments. Normal C and C++ comments will always remain visible.
+
+STRIP_CODE_COMMENTS = YES
+
+# If the REFERENCED_BY_RELATION tag is set to YES (the default)
+# then for each documented function all documented
+# functions referencing it will be listed.
+
+REFERENCED_BY_RELATION = YES
+
+# If the REFERENCES_RELATION tag is set to YES (the default)
+# then for each documented function all documented entities
+# called/used by that function will be listed.
+
+REFERENCES_RELATION = YES
+
+# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
+# will generate a verbatim copy of the header file for each class for
+# which an include is specified. Set to NO to disable this.
+
+VERBATIM_HEADERS = YES
+
+#---------------------------------------------------------------------------
+# configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+
+# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index
+# of all compounds will be generated. Enable this if the project
+# contains a lot of classes, structs, unions or interfaces.
+
+ALPHABETICAL_INDEX = NO
+
+# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then
+# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns
+# in which this list will be split (can be a number in the range [1..20])
+
+COLS_IN_ALPHA_INDEX = 5
+
+# In case all classes in a project start with a common prefix, all
+# classes will be put under the same header in the alphabetical index.
+# The IGNORE_PREFIX tag can be used to specify one or more prefixes that
+# should be ignored while generating the index headers.
+
+IGNORE_PREFIX =
+
+#---------------------------------------------------------------------------
+# configuration options related to the HTML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_HTML tag is set to YES (the default) Doxygen will
+# generate HTML output.
+
+GENERATE_HTML = YES
+
+# The HTML_OUTPUT tag is used to specify where the HTML docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `html' will be used as the default path.
+
+HTML_OUTPUT = html
+
+# The HTML_FILE_EXTENSION tag can be used to specify the file extension for
+# each generated HTML page (for example: .htm,.php,.asp). If it is left blank
+# doxygen will generate files with .html extension.
+
+HTML_FILE_EXTENSION = .html
+
+# The HTML_HEADER tag can be used to specify a personal HTML header for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard header.
+
+HTML_HEADER =
+
+# The HTML_FOOTER tag can be used to specify a personal HTML footer for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard footer.
+
+HTML_FOOTER =
+
+# The HTML_STYLESHEET tag can be used to specify a user-defined cascading
+# style sheet that is used by each HTML page. It can be used to
+# fine-tune the look of the HTML output. If the tag is left blank doxygen
+# will generate a default style sheet. Note that doxygen will try to copy
+# the style sheet file to the HTML output directory, so don't put your own
+# stylesheet in the HTML output directory as well, or it will be erased!
+
+HTML_STYLESHEET =
+
+# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
+# files or namespaces will be aligned in HTML using tables. If set to
+# NO a bullet list will be used.
+
+HTML_ALIGN_MEMBERS = YES
+
+# If the GENERATE_HTMLHELP tag is set to YES, additional index files
+# will be generated that can be used as input for tools like the
+# Microsoft HTML help workshop to generate a compressed HTML help file (.chm)
+# of the generated HTML documentation.
+
+GENERATE_HTMLHELP = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
+# be used to specify the file name of the resulting .chm file. You
+# can add a path in front of the file if the result should not be
+# written to the html output directory.
+
+CHM_FILE =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can
+# be used to specify the location (absolute path including file name) of
+# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
+# the HTML help compiler on the generated index.hhp.
+
+HHC_LOCATION =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
+# controls if a separate .chi index file is generated (YES) or that
+# it should be included in the master .chm file (NO).
+
+GENERATE_CHI = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag
+# controls whether a binary table of contents is generated (YES) or a
+# normal table of contents (NO) in the .chm file.
+
+BINARY_TOC = NO
+
+# The TOC_EXPAND flag can be set to YES to add extra items for group members
+# to the contents of the HTML help documentation and to the tree view.
+
+TOC_EXPAND = NO
+
+# The DISABLE_INDEX tag can be used to turn on/off the condensed index at
+# top of each HTML page. The value NO (the default) enables the index and
+# the value YES disables it.
+
+DISABLE_INDEX = NO
+
+# This tag can be used to set the number of enum values (range [1..20])
+# that doxygen will group on one line in the generated HTML documentation.
+
+ENUM_VALUES_PER_LINE = 4
+
+# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be
+# generated containing a tree-like index structure (just like the one that
+# is generated for HTML Help). For this to work a browser that supports
+# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+,
+# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are
+# probably better off using the HTML help feature.
+
+GENERATE_TREEVIEW = NO
+
+# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
+# used to set the initial width (in pixels) of the frame in which the tree
+# is shown.
+
+TREEVIEW_WIDTH = 250
+
+#---------------------------------------------------------------------------
+# configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
+# generate Latex output.
+
+GENERATE_LATEX = NO
+
+# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `latex' will be used as the default path.
+
+LATEX_OUTPUT = latex
+
+# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
+# invoked. If left blank `latex' will be used as the default command name.
+
+LATEX_CMD_NAME = latex
+
+# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
+# generate index for LaTeX. If left blank `makeindex' will be used as the
+# default command name.
+
+MAKEINDEX_CMD_NAME = makeindex
+
+# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact
+# LaTeX documents. This may be useful for small projects and may help to
+# save some trees in general.
+
+COMPACT_LATEX = NO
+
+# The PAPER_TYPE tag can be used to set the paper type that is used
+# by the printer. Possible values are: a4, a4wide, letter, legal and
+# executive. If left blank a4wide will be used.
+
+PAPER_TYPE = a4wide
+
+# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
+# packages that should be included in the LaTeX output.
+
+EXTRA_PACKAGES =
+
+# The LATEX_HEADER tag can be used to specify a personal LaTeX header for
+# the generated latex document. The header should contain everything until
+# the first chapter. If it is left blank doxygen will generate a
+# standard header. Notice: only use this tag if you know what you are doing!
+
+LATEX_HEADER =
+
+# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
+# is prepared for conversion to pdf (using ps2pdf). The pdf file will
+# contain links (just like the HTML output) instead of page references
+# This makes the output suitable for online browsing using a pdf viewer.
+
+PDF_HYPERLINKS = NO
+
+# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of
+# plain latex in the generated Makefile. Set this option to YES to get a
+# higher quality PDF documentation.
+
+USE_PDFLATEX = NO
+
+# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode.
+# command to the generated LaTeX files. This will instruct LaTeX to keep
+# running if errors occur, instead of asking the user for help.
+# This option is also used when generating formulas in HTML.
+
+LATEX_BATCHMODE = NO
+
+# If LATEX_HIDE_INDICES is set to YES then doxygen will not
+# include the index chapters (such as File Index, Compound Index, etc.)
+# in the output.
+
+LATEX_HIDE_INDICES = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the RTF output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
+# The RTF output is optimized for Word 97 and may not look very pretty with
+# other RTF readers or editors.
+
+GENERATE_RTF = NO
+
+# The RTF_OUTPUT tag is used to specify where the RTF docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `rtf' will be used as the default path.
+
+RTF_OUTPUT = rtf
+
+# If the COMPACT_RTF tag is set to YES Doxygen generates more compact
+# RTF documents. This may be useful for small projects and may help to
+# save some trees in general.
+
+COMPACT_RTF = NO
+
+# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated
+# will contain hyperlink fields. The RTF file will
+# contain links (just like the HTML output) instead of page references.
+# This makes the output suitable for online browsing using WORD or other
+# programs which support those fields.
+# Note: wordpad (write) and others do not support links.
+
+RTF_HYPERLINKS = NO
+
+# Load stylesheet definitions from file. Syntax is similar to doxygen's
+# config file, i.e. a series of assignments. You only have to provide
+# replacements, missing definitions are set to their default value.
+
+RTF_STYLESHEET_FILE =
+
+# Set optional variables used in the generation of an rtf document.
+# Syntax is similar to doxygen's config file.
+
+RTF_EXTENSIONS_FILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to the man page output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_MAN tag is set to YES (the default) Doxygen will
+# generate man pages
+
+GENERATE_MAN = NO
+
+# The MAN_OUTPUT tag is used to specify where the man pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `man' will be used as the default path.
+
+MAN_OUTPUT = man
+
+# The MAN_EXTENSION tag determines the extension that is added to
+# the generated man pages (default is the subroutine's section .3)
+
+MAN_EXTENSION = .3
+
+# If the MAN_LINKS tag is set to YES and Doxygen generates man output,
+# then it will generate one additional man file for each entity
+# documented in the real man page(s). These additional files
+# only source the real man page, but without them the man command
+# would be unable to find the correct page. The default is NO.
+
+MAN_LINKS = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the XML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_XML tag is set to YES Doxygen will
+# generate an XML file that captures the structure of
+# the code including all documentation.
+
+GENERATE_XML = NO
+
+# The XML_OUTPUT tag is used to specify where the XML pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `xml' will be used as the default path.
+
+XML_OUTPUT = xml
+
+# The XML_SCHEMA tag can be used to specify an XML schema,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
+XML_SCHEMA =
+
+# The XML_DTD tag can be used to specify an XML DTD,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
+XML_DTD =
+
+# If the XML_PROGRAMLISTING tag is set to YES Doxygen will
+# dump the program listings (including syntax highlighting
+# and cross-referencing information) to the XML output. Note that
+# enabling this will significantly increase the size of the XML output.
+
+XML_PROGRAMLISTING = YES
+
+#---------------------------------------------------------------------------
+# configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will
+# generate an AutoGen Definitions (see autogen.sf.net) file
+# that captures the structure of the code including all
+# documentation. Note that this feature is still experimental
+# and incomplete at the moment.
+
+GENERATE_AUTOGEN_DEF = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_PERLMOD tag is set to YES Doxygen will
+# generate a Perl module file that captures the structure of
+# the code including all documentation. Note that this
+# feature is still experimental and incomplete at the
+# moment.
+
+GENERATE_PERLMOD = NO
+
+# If the PERLMOD_LATEX tag is set to YES Doxygen will generate
+# the necessary Makefile rules, Perl scripts and LaTeX code to be able
+# to generate PDF and DVI output from the Perl module output.
+
+PERLMOD_LATEX = NO
+
+# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
+# nicely formatted so it can be parsed by a human reader. This is useful
+# if you want to understand what is going on. On the other hand, if this
+# tag is set to NO the size of the Perl module output will be much smaller
+# and Perl will parse it just the same.
+
+PERLMOD_PRETTY = YES
+
+# The names of the make variables in the generated doxyrules.make file
+# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
+# This is useful so different doxyrules.make files included by the same
+# Makefile don't overwrite each other's variables.
+
+PERLMOD_MAKEVAR_PREFIX =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor
+#---------------------------------------------------------------------------
+
+# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will
+# evaluate all C-preprocessor directives found in the sources and include
+# files.
+
+ENABLE_PREPROCESSING = YES
+
+# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro
+# names in the source code. If set to NO (the default) only conditional
+# compilation will be performed. Macro expansion can be done in a controlled
+# way by setting EXPAND_ONLY_PREDEF to YES.
+
+MACRO_EXPANSION = NO
+
+# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
+# then the macro expansion is limited to the macros specified with the
+# PREDEFINED and EXPAND_AS_PREDEFINED tags.
+
+EXPAND_ONLY_PREDEF = NO
+
+# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
+# in the INCLUDE_PATH (see below) will be search if a #include is found.
+
+SEARCH_INCLUDES = YES
+
+# The INCLUDE_PATH tag can be used to specify one or more directories that
+# contain include files that are not input files but should be processed by
+# the preprocessor.
+
+INCLUDE_PATH =
+
+# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+# patterns (like *.h and *.hpp) to filter out the header-files in the
+# directories. If left blank, the patterns specified with FILE_PATTERNS will
+# be used.
+
+INCLUDE_FILE_PATTERNS =
+
+# The PREDEFINED tag can be used to specify one or more macro names that
+# are defined before the preprocessor is started (similar to the -D option of
+# gcc). The argument of the tag is a list of macros of the form: name
+# or name=definition (no spaces). If the definition and the = are
+# omitted =1 is assumed.
+
+PREDEFINED =
+
+# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
+# this tag can be used to specify a list of macro names that should be expanded.
+# The macro definition that is found in the sources will be used.
+# Use the PREDEFINED tag if you want to use a different macro definition.
+
+EXPAND_AS_DEFINED =
+
+# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
+# doxygen's preprocessor will remove all function-like macros that are alone
+# on a line, have an all uppercase name, and do not end with a semicolon. Such
+# function macros are typically used for boiler-plate code, and will confuse the
+# parser if not removed.
+
+SKIP_FUNCTION_MACROS = YES
+
+#---------------------------------------------------------------------------
+# Configuration::additions related to external references
+#---------------------------------------------------------------------------
+
+# The TAGFILES option can be used to specify one or more tagfiles.
+# Optionally an initial location of the external documentation
+# can be added for each tagfile. The format of a tag file without
+# this location is as follows:
+# TAGFILES = file1 file2 ...
+# Adding location for the tag files is done as follows:
+# TAGFILES = file1=loc1 "file2 = loc2" ...
+# where "loc1" and "loc2" can be relative or absolute paths or
+# URLs. If a location is present for each tag, the installdox tool
+# does not have to be run to correct the links.
+# Note that each tag file must have a unique name
+# (where the name does NOT include the path)
+# If a tag file is not located in the directory in which doxygen
+# is run, you must also specify the path to the tagfile here.
+
+TAGFILES =
+
+# When a file name is specified after GENERATE_TAGFILE, doxygen will create
+# a tag file that is based on the input files it reads.
+
+GENERATE_TAGFILE = libept.doxytags
+
+# If the ALLEXTERNALS tag is set to YES all external classes will be listed
+# in the class index. If set to NO only the inherited external classes
+# will be listed.
+
+ALLEXTERNALS = NO
+
+# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
+# in the modules index. If set to NO, only the current project's groups will
+# be listed.
+
+EXTERNAL_GROUPS = YES
+
+# The PERL_PATH should be the absolute path and name of the perl script
+# interpreter (i.e. the result of `which perl').
+
+PERL_PATH = /usr/bin/perl
+
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool
+#---------------------------------------------------------------------------
+
+# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
+# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base or
+# super classes. Setting the tag to NO turns the diagrams off. Note that this
+# option is superseded by the HAVE_DOT option below. This is only a fallback. It is
+# recommended to install and use dot, since it yields more powerful graphs.
+
+CLASS_DIAGRAMS = YES
+
+# If set to YES, the inheritance and collaboration graphs will hide
+# inheritance and usage relations if the target is undocumented
+# or is not a class.
+
+HIDE_UNDOC_RELATIONS = YES
+
+# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
+# available from the path. This tool is part of Graphviz, a graph visualization
+# toolkit from AT&T and Lucent Bell Labs. The other options in this section
+# have no effect if this option is set to NO (the default)
+
+HAVE_DOT = YES
+
+# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect inheritance relations. Setting this tag to YES will force the
+# the CLASS_DIAGRAMS tag to NO.
+
+CLASS_GRAPH = YES
+
+# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect implementation dependencies (inheritance, containment, and
+# class references variables) of the class with other documented classes.
+
+COLLABORATION_GRAPH = YES
+
+# If the UML_LOOK tag is set to YES doxygen will generate inheritance and
+# collaboration diagrams in a style similar to the OMG's Unified Modeling
+# Language.
+
+UML_LOOK = NO
+
+# If set to YES, the inheritance and collaboration graphs will show the
+# relations between templates and their instances.
+
+TEMPLATE_RELATIONS = NO
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT
+# tags are set to YES then doxygen will generate a graph for each documented
+# file showing the direct and indirect include dependencies of the file with
+# other documented files.
+
+INCLUDE_GRAPH = YES
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and
+# HAVE_DOT tags are set to YES then doxygen will generate a graph for each
+# documented header file showing the documented files that directly or
+# indirectly include this file.
+
+INCLUDED_BY_GRAPH = YES
+
+# If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will
+# generate a call dependency graph for every global function or class method.
+# Note that enabling this option will significantly increase the time of a run.
+# So in most cases it will be better to enable call graphs for selected
+# functions only using the \callgraph command.
+
+CALL_GRAPH = NO
+
+# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
+# will graphical hierarchy of all classes instead of a textual one.
+
+GRAPHICAL_HIERARCHY = YES
+
+# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
+# generated by dot. Possible values are png, jpg, or gif
+# If left blank png will be used.
+
+DOT_IMAGE_FORMAT = png
+
+# The tag DOT_PATH can be used to specify the path where the dot tool can be
+# found. If left blank, it is assumed the dot tool can be found on the path.
+
+DOT_PATH = @DOXYGEN_DOT_EXECUTABLE@
+
+# The DOTFILE_DIRS tag can be used to specify one or more directories that
+# contain dot files that are included in the documentation (see the
+# \dotfile command).
+
+DOTFILE_DIRS =
+
+# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width
+# (in pixels) of the graphs generated by dot. If a graph becomes larger than
+# this value, doxygen will try to truncate the graph, so that it fits within
+# the specified constraint. Beware that most browsers cannot cope with very
+# large images.
+
+MAX_DOT_GRAPH_WIDTH = 1024
+
+# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height
+# (in pixels) of the graphs generated by dot. If a graph becomes larger than
+# this value, doxygen will try to truncate the graph, so that it fits within
+# the specified constraint. Beware that most browsers cannot cope with very
+# large images.
+
+MAX_DOT_GRAPH_HEIGHT = 1024
+
+# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
+# graphs generated by dot. A depth value of 3 means that only nodes reachable
+# from the root by following a path via at most 3 edges will be shown. Nodes that
+# lay further from the root node will be omitted. Note that setting this option to
+# 1 or 2 may greatly reduce the computation time needed for large code bases. Also
+# note that a graph may be further truncated if the graph's image dimensions are
+# not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH and MAX_DOT_GRAPH_HEIGHT).
+# If 0 is used for the depth value (the default), the graph is not depth-constrained.
+
+MAX_DOT_GRAPH_DEPTH = 0
+
+# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
+# generate a legend page explaining the meaning of the various boxes and
+# arrows in the dot generated graphs.
+
+GENERATE_LEGEND = YES
+
+# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
+# remove the intermediate dot files that are used to generate
+# the various graphs.
+
+DOT_CLEANUP = YES
+
+#---------------------------------------------------------------------------
+# Configuration::additions related to the search engine
+#---------------------------------------------------------------------------
+
+# The SEARCHENGINE tag specifies whether or not a search engine should be
+# used. If set to NO the values of all tags below this one will be ignored.
+
+SEARCHENGINE = NO
diff --git a/ept/CMakeLists.txt b/ept/CMakeLists.txt
new file mode 100644
index 0000000..1345cc7
--- /dev/null
+++ b/ept/CMakeLists.txt
@@ -0,0 +1,94 @@
+project( ept )
+include( ${WIBBLE_TEST_CMAKE} )
+
+file( GLOB src *.cpp debtags/*.cc debtags/maint/*.cc
+ popcon/*.cc popcon/maint/*.cc apt/*.cc textsearch/*.cc
+ textsearch/maint/*.cc )
+
+file( GLOB h_top *.h )
+file( GLOB h_apt apt/*.h )
+file( GLOB h_debtags debtags/*.h debtags/*.tcc )
+file( GLOB h_debtags_maint debtags/maint/*.h debtags/maint/*.tcc )
+file( GLOB h_popcon popcon/*.h )
+file( GLOB h_popcon_maint popcon/maint/*.h )
+file( GLOB h_textsearch textsearch/*.h )
+file( GLOB h_textsearch_maint textsearch/maint/*.h )
+
+file( GLOB debtagstesth debtags/*.test.h debtags/maint/*.test.h )
+file( GLOB popcontesth popcon/*.test.h )
+file( GLOB apttesth apt/*.test.h )
+file( GLOB textsearchtesth textsearch/*.test.h )
+set( testh ${debtagstesth} ${popcontesth}
+ ${apttesth} ${textsearchtesth} )
+
+include_directories( ${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR}
+ ${TAGCOLL_INCLUDE_DIRS} ${WIBBLE_INCLUDE_DIRS} )
+link_libraries( ${WIBBLE_LIBRARIES} ${TAGCOLL_LIBRARIES} apt-pkg xapian )
+add_definitions( -fexceptions -fPIC -fvisibility=default )
+
+add_library( ept SHARED ${src} )
+add_library( ept-static STATIC ${src} )
+set_target_properties( ept PROPERTIES VERSION ${EPT_VERSION} SOVERSION 0 CLEAN_DIRECT_OUTPUT 1)
+set_target_properties( ept-static PROPERTIES VERSION ${EPT_VERSION} SOVERSION 0 OUTPUT_NAME "ept" CLEAN_DIRECT_OUTPUT 1)
+
+set( TEST_ENV_DIR ${ept_BINARY_DIR}/test-env/ )
+
+configure_file( ${ept_SOURCE_DIR}/config.h.cmake-in
+ ${ept_BINARY_DIR}/config.h )
+
+set( prefix "${CMAKE_INSTALL_PREFIX}" )
+set( exec_prefix "${prefix}/bin" )
+set( libdir "${prefix}/lib" )
+set( includedir "${prefix}/include" )
+configure_file( ${ept_SOURCE_DIR}/libept.pc.in
+ ${ept_BINARY_DIR}/libept.pc @ONLY )
+
+# regression testing
+link_directories( ${CMAKE_CURRENT_BINARY_DIR}/../lib )
+link_libraries( ept )
+wibble_add_test( ept-test ${testh} )
+
+set( datastamp ${CMAKE_CURRENT_BINARY_DIR}/data-stamp )
+set( datadir ${CMAKE_CURRENT_SOURCE_DIR}/test-data )
+set( listfile wherever_debian_._Packages )
+
+wibble_check_target( ept-test ${datastamp} )
+
+execute_process( COMMAND dpkg --print-architecture OUTPUT_VARIABLE ARCH )
+string( REPLACE "\n" "" ARCH "${ARCH}" )
+
+add_custom_command(
+ OUTPUT ${datastamp}
+ COMMAND mkdir -p test-env/etc test-env/state/lists/partial
+ test-env/cache test-env/debtags
+ test-env/cache/archives/partial test-env/desktop
+ COMMAND sed -e s,i386,${ARCH}, < ${datadir}/packagelist > test-env/state/lists/${listfile}
+ COMMAND cp -a ${datadir}/etc/sources.list test-env/etc/
+ COMMAND sed -e s,i386,${ARCH}, < ${datadir}/dpkg-status > test-env/dpkg-status
+ COMMAND cp -a ${datadir}/desktop/*.desktop test-env/desktop/
+ COMMAND cp ${datadir}/debtags/package-tags test-env/debtags/test.tag
+ COMMAND cp ${datadir}/debtags/vocabulary test-env/debtags/test.voc
+ COMMAND mkdir -p test-env/debtags/empty
+ COMMAND mkdir -p test-env/debtags/user
+ COMMAND mkdir -p test-env/xapian/
+ COMMAND mkdir -p test-env/popcon/
+ COMMAND mkdir -p test-env/popcon/empty
+ COMMAND cp -a ${datadir}/popcon/all-popcon-results.txt.gz test-env/popcon/
+ COMMAND cp -a ${datadir}/popcon/popularity-contest test-env/popcon/
+ COMMAND touch data-stamp )
+
+install( TARGETS ept ept-static
+ LIBRARY DESTINATION lib
+ ARCHIVE DESTINATION lib )
+
+install( FILES ${ept_BINARY_DIR}/libept.pc DESTINATION lib/pkgconfig )
+install( FILES libept.m4 DESTINATION share/aclocal )
+
+install( FILES ${h_top} DESTINATION include/ept )
+install( FILES ${h_apt} DESTINATION include/ept/apt )
+install( FILES ${h_debtags} DESTINATION include/ept/debtags )
+install( FILES ${h_debtags_maint} DESTINATION include/ept/debtags/maint )
+install( FILES ${h_popcon} DESTINATION include/ept/popcon )
+install( FILES ${h_popcon_maint} DESTINATION include/ept/popcon/maint )
+install( FILES ${h_textsearch} DESTINATION include/ept/textsearch )
+install( FILES ${h_textsearch_maint} DESTINATION include/ept/textsearch/maint )
diff --git a/ept/apt/apt.cc b/ept/apt/apt.cc
new file mode 100644
index 0000000..159b83a
--- /dev/null
+++ b/ept/apt/apt.cc
@@ -0,0 +1,654 @@
+/** \file
+ * High-level front-end to libapt-pkg, as a data provider for the ept framework.
+ */
+
+/*
+ * Copyright (C) 2007,2008 Enrico Zini <enrico@enricozini.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/apt/apt.h>
+
+#include <apt-pkg/error.h>
+#include <apt-pkg/init.h>
+#include <apt-pkg/progress.h>
+#include <apt-pkg/sourcelist.h>
+#include <apt-pkg/pkgcachegen.h>
+#include <apt-pkg/policy.h>
+#include <apt-pkg/cachefile.h>
+
+#include <wibble/sys/fs.h>
+#include <sys/stat.h>
+
+#include <vector>
+#include <algorithm>
+
+#include <iostream>
+
+using namespace std;
+
+namespace ept {
+namespace apt {
+
+static time_t aptTimestamp()
+{
+ namespace wfs = wibble::sys::fs;
+
+ std::auto_ptr<struct stat> st = wfs::stat(
+ _config->FindFile( "Dir::Cache::pkgcache" ) );
+ time_t t1 = st.get() == NULL ? 0 : st->st_mtime;
+
+ std::auto_ptr<struct stat> st1 = wfs::stat(
+ _config->FindFile( "Dir::State::status" ) );
+ time_t t2 = st1.get() == NULL ? 0 : st1->st_mtime;
+
+ return t1 > t2 ? t1 : t2;
+}
+
+Exception::Exception(const std::string& context) throw ()
+ : Generic(context)
+{
+ // Concatenate all errors and warnings found
+ string err;
+ while (!_error->empty())
+ {
+ bool type = _error->PopMessage(err);
+ if (type)
+ m_message += "E: " + err + "\n";
+ else
+ m_message += "W: " + err + "\n";
+ }
+}
+
+static void aptInit ()
+{
+ if (_config->FindB("Initialized"))
+ return;
+
+ if (!pkgInitConfig (*_config))
+ throw Exception("initialising apt configuration");
+
+ _config->Set("Initialized", 1);
+
+ /*
+ _config->Set("Dir", CACHE_DIR);
+ _config->Set("Dir::Cache", "cache");
+ _config->Set("Dir::State", "state");
+ _config->Set("Dir::Etc", "etc");
+ _config->Set("Dir::State::status", CACHE_DIR "dpkg-status");
+ */
+ if (!pkgInitSystem (*_config, _system))
+ throw Exception("initialising apt system");
+}
+
+struct AptImplementation
+{
+ pkgSourceList* m_list;
+ MMap *m;
+ OpProgress progress;
+ pkgCache* m_cache;
+ pkgPolicy* m_policy;
+ pkgCacheFile* m_depcache;
+ time_t m_open_timestamp;
+
+ AptImplementation() : m_list(0), m(0), m_cache(0), m_policy(0), m_depcache(0), m_open_timestamp(0)
+ {
+ // Init the apt library if needed
+ aptInit();
+
+ m_open_timestamp = aptTimestamp();
+
+ m_list = new pkgSourceList;
+ if (!m_list->ReadMainList())
+ throw Exception("reading list of sources");
+
+ bool res = pkgMakeStatusCache(*m_list, progress, &m, true);
+ progress.Done();
+ if (!res)
+ throw Exception("Reading the package lists or status file");
+
+ m_cache = new pkgCache(m);
+ m_policy = new pkgPolicy(m_cache);
+ if (!ReadPinFile(*m_policy))
+ throw Exception("Reading the policy pin file");
+ }
+
+ ~AptImplementation()
+ {
+ if (m_depcache) delete m_depcache;
+ if (m_policy) delete m_policy;
+ if (m_cache) delete m_cache;
+ if (m) delete m;
+ if (m_list) delete m_list;
+ }
+
+ pkgCache& cache()
+ {
+ return *m_cache;
+ }
+
+ pkgPolicy& policy()
+ {
+ return *m_policy;
+ }
+
+ pkgCacheFile& depcache()
+ {
+ if (!m_depcache)
+ {
+ m_depcache = new pkgCacheFile;
+ if (!m_depcache->Open(progress, false))
+ throw Exception("Opening the cache file");
+ }
+ return *m_depcache;
+ }
+};
+
+// Sort a version list by package file locality
+bool localityCompare(const pkgCache::VerFile* a, const pkgCache::VerFile* b)
+{
+ if (a == 0 && b == 0)
+ return false;
+ if (a == 0)
+ return true;
+ if (b == 0)
+ return false;
+
+ if (a->File == b->File)
+ return a->Offset < b->Offset;
+ return a->File < b->File;
+}
+
+// Iterate records using the algorithm used by apt-cache dumpavail
+struct RecordIteratorImpl
+{
+ mutable int _ref;
+ AptImplementation& apt;
+ vector<pkgCache::VerFile*> vflist;
+ pkgCache::PkgFileIterator lastFile;
+ FileFd file;
+ size_t lastOffset;
+
+ RecordIteratorImpl(AptImplementation& apt) : _ref(0), apt(apt), vflist(0)
+ {
+ // We already have an estimate of how many versions we're about to find
+ vflist.reserve(apt.cache().HeaderP->PackageCount + 1);
+
+ // Populate the vector of versions to print
+ for (pkgCache::PkgIterator pi = apt.cache().PkgBegin(); !pi.end(); ++pi)
+ {
+ if (pi->VersionList == 0)
+ continue;
+
+ /* Get the candidate version or fallback on the installed version,
+ * as usual */
+ pkgCache::VerIterator vi = apt.policy().GetCandidateVer(pi);
+ if (vi.end() == true)
+ {
+ if (pi->CurrentVer == 0)
+ continue;
+ vi = pi.CurrentVer();
+ }
+
+ // Choose a valid file that contains the record for this version
+ pkgCache::VerFileIterator vfi = vi.FileList();
+ for ( ; !vfi.end(); ++vfi)
+ if ((vfi.File()->Flags & pkgCache::Flag::NotSource) == 0)
+ break;
+
+ // Handle packages whose candidate version is currently installed
+ // from outside the archives (like from a locally built .deb
+ if (vfi.end() == true)
+ {
+ for (pkgCache::VerIterator cur = pi.VersionList(); cur.end() != true; cur++)
+ {
+ for (vfi = cur.FileList(); vfi.end() == false; vfi++)
+ {
+ if ((vfi.File()->Flags & pkgCache::Flag::NotSource) == 0)
+ {
+ vfi = vi.FileList();
+ break;
+ }
+ }
+
+ if (vfi.end() == false)
+ break;
+ }
+ }
+ if (!vfi.end())
+ vflist.push_back(vfi);
+ }
+
+ //cerr << vflist.size() << " versions found" << endl;
+
+ sort(vflist.begin(), vflist.end(), localityCompare);
+
+ //for (size_t i = 0; i < vflist.size(); ++i)
+ //{
+ // pkgCache::PkgFileIterator fi(apt.cache(), vflist[i]->File + apt.cache().PkgFileP);
+ // cerr << i << ": " << fi.FileName() << ":" << vflist[i]->Offset << "-" << vflist[i]->Size << endl;
+ //}
+ //cerr << "Done indexing." << endl;
+ }
+
+ ~RecordIteratorImpl()
+ {
+ if (file.IsOpen())
+ file.Close();
+ }
+
+ void ref() { ++_ref; }
+ bool unref() { return --_ref == 0; }
+
+ size_t size() { return vflist.size(); }
+
+ string record(size_t idx)
+ {
+ //cerr << "Access record " << idx << endl;
+ //cerr << "lastfile: " << (lastFile.Cache() != 0) << endl;
+ // We can't reuse the file that was already open: open the new one
+ if ((lastFile.Cache() == 0) || vflist[idx]->File + apt.cache().PkgFileP != lastFile)
+ {
+ //cerr << "Needs open/reopen" << endl;
+ lastFile = pkgCache::PkgFileIterator(apt.cache(), vflist[idx]->File + apt.cache().PkgFileP);
+ if (!lastFile.IsOk())
+ throw Exception(string("Reading the data record for a package from file ") + lastFile.FileName());
+ //cerr << "Ok for " << lastFile.FileName() << endl;
+ if (file.IsOpen())
+ file.Close();
+ if (!file.Open(lastFile.FileName(), FileFd::ReadOnly))
+ throw Exception(string("Opening file ") + lastFile.FileName());
+ //cerr << "Opened " << lastFile.FileName() << endl;
+ lastOffset = 0;
+ }
+
+ //cerr << "Reading from " << lastFile.FileName() << ":" << vflist[idx]->Offset << "-" << vflist[idx]->Size << " (lastOffset: " << lastOffset << ")" << endl;
+
+ // If we start near were we ended, avoid a seek and enlarge the read a bit
+ size_t slack = vflist[idx]->Offset - lastOffset;
+ //cerr << "Slack: " << slack << endl;
+ if (slack > 8)
+ {
+ //cerr << "Slack too big: seek to " << vflist[idx]->Offset << endl;
+ slack = 0;
+ if (!file.Seek(vflist[idx]->Offset))
+ throw Exception(string("Cannot seek to package record in file ") + lastFile.FileName());
+ }
+
+ char buffer[vflist[idx]->Size + slack + 1];
+ if (!file.Read(buffer, vflist[idx]->Size + slack))
+ throw Exception(string("Cannot read package record in file ") + lastFile.FileName());
+ buffer[vflist[idx]->Size + slack] = '\n';
+ //cerr << "Data read (slack: " << slack << ")" << endl;
+
+ lastOffset = vflist[idx]->Offset + vflist[idx]->Size;
+
+ return string(buffer+slack);
+ }
+};
+
+Apt::Iterator::Iterator(const Iterator& i)
+{
+ if (i.cur)
+ {
+ pkgCache::PkgIterator* p = new pkgCache::PkgIterator;
+ *p = *static_cast<pkgCache::PkgIterator*>(i.cur);
+ cur = p;
+ } else
+ cur = 0;
+}
+
+Apt::Iterator& Apt::Iterator::operator=(const Iterator& i)
+{
+ if (cur != i.cur)
+ {
+ if (cur) delete static_cast<pkgCache::PkgIterator*>(cur);
+ if (i.cur)
+ {
+ pkgCache::PkgIterator* p = new pkgCache::PkgIterator;
+ *p = *static_cast<pkgCache::PkgIterator*>(i.cur);
+ cur = p;
+ } else
+ cur = 0;
+ }
+ return *this;
+}
+
+Apt::Iterator::~Iterator()
+{
+ if (cur) delete static_cast<pkgCache::PkgIterator*>(cur);
+}
+std::string Apt::Iterator::operator*()
+{
+ return static_cast<pkgCache::PkgIterator*>(cur)->Name();
+}
+Apt::Iterator& Apt::Iterator::operator++()
+{
+ pkgCache::PkgIterator* iter = static_cast<pkgCache::PkgIterator*>(cur);
+ ++*iter;
+ while (!iter->end() && (*iter)->VersionList == 0)
+ ++*iter;
+ if (iter->end())
+ {
+ delete iter;
+ cur = 0;
+ }
+ return *this;
+}
+bool Apt::Iterator::operator==(const Iterator& i) const
+{
+ if (cur == 0 && i.cur == 0)
+ return true;
+ if (cur == 0 || i.cur == 0)
+ return false;
+ pkgCache::PkgIterator* iter1 = static_cast<pkgCache::PkgIterator*>(cur);
+ pkgCache::PkgIterator* iter2 = static_cast<pkgCache::PkgIterator*>(i.cur);
+ return *iter1 == *iter2;
+}
+bool Apt::Iterator::operator!=(const Iterator& i) const
+{
+ if (cur == 0 && i.cur == 0)
+ return false;
+ if (cur == 0 || i.cur == 0)
+ return true;
+ pkgCache::PkgIterator* iter1 = static_cast<pkgCache::PkgIterator*>(cur);
+ pkgCache::PkgIterator* iter2 = static_cast<pkgCache::PkgIterator*>(i.cur);
+ return *iter1 != *iter2;
+}
+
+
+Apt::RecordIterator::RecordIterator(RecordIteratorImpl* impl, size_t pos)
+ : impl(impl), pos(pos), cur_pos(pos)
+{
+ if (impl)
+ {
+ impl->ref();
+ cur = impl->record(pos);
+ cur_pos = pos;
+ }
+}
+Apt::RecordIterator::RecordIterator(const RecordIterator& r)
+ : impl(r.impl), pos(r.pos), cur(r.cur), cur_pos(r.cur_pos)
+{
+ if (impl)
+ impl->ref();
+}
+Apt::RecordIterator::~RecordIterator()
+{
+ if (impl && impl->unref())
+ delete impl;
+}
+std::string Apt::RecordIterator::operator*()
+{
+ if (cur_pos != pos)
+ {
+ cur = impl->record(pos);
+ cur_pos = pos;
+ }
+ return cur;
+}
+std::string* Apt::RecordIterator::operator->()
+{
+ if (cur_pos != pos)
+ {
+ cur = impl->record(pos);
+ cur_pos = pos;
+ }
+ return &cur;
+}
+Apt::RecordIterator& Apt::RecordIterator::operator++()
+{
+ ++pos;
+ if (pos >= impl->size())
+ {
+ // If we reach the end, we become an end iterator
+ if (impl && impl->unref())
+ delete impl;
+ impl = 0;
+ pos = 0;
+ }
+ return *this;
+}
+Apt::RecordIterator& Apt::RecordIterator::operator=(const RecordIterator& r)
+{
+ // Increment first, to avoid it reaching zero on assignment to self
+ if (r.impl) r.impl->ref();
+ if (impl && impl->unref())
+ delete impl;
+ impl = r.impl;
+ pos = r.pos;
+ cur = r.cur;
+ cur_pos = r.cur_pos;
+ return *this;
+}
+bool Apt::RecordIterator::operator==(const RecordIterator& ri) const
+{
+ return impl == ri.impl && pos == ri.pos;
+}
+bool Apt::RecordIterator::operator!=(const RecordIterator& ri) const
+{
+ return impl != ri.impl || pos != ri.pos;
+}
+
+
+Apt::Apt() : impl(new AptImplementation()) {}
+Apt::~Apt() { delete impl; }
+
+Apt::iterator Apt::begin() const
+{
+ pkgCache::PkgIterator* p = new pkgCache::PkgIterator;
+ *p = impl->cache().PkgBegin();
+ return Apt::Iterator(p);
+}
+
+Apt::iterator Apt::end() const
+{
+ return Apt::Iterator();
+}
+
+Apt::record_iterator Apt::recordBegin() const
+{
+ return Apt::RecordIterator(new RecordIteratorImpl(*impl));
+}
+
+Apt::record_iterator Apt::recordEnd() const
+{
+ return Apt::RecordIterator();
+}
+
+size_t Apt::size() const
+{
+ return impl->cache().HeaderP->PackageCount;
+}
+
+time_t Apt::timestamp()
+{
+ return aptTimestamp();
+}
+
+bool Apt::isValid(const std::string& pkg) const
+{
+ pkgCache::PkgIterator pi = impl->cache().FindPkg(pkg);
+ return !pi.end();
+}
+
+Version Apt::validate(const Version& ver) const
+{
+ pkgCache::PkgIterator pi = impl->cache().FindPkg(ver.name());
+ if (pi.end()) return Version();
+ for (pkgCache::VerIterator vi = pi.VersionList(); !vi.end(); vi++)
+ {
+ const char* v = vi.VerStr();
+ if (v == 0) continue;
+ if (ver.version() == v)
+ return ver;
+ }
+ return Version();
+}
+
+Version Apt::candidateVersion(const std::string& pkg) const
+{
+ pkgCache::PkgIterator pi = impl->cache().FindPkg(pkg);
+ if (pi.end()) return Version();
+ pkgCache::VerIterator vi = impl->policy().GetCandidateVer(pi);
+ if (vi.end()) return Version();
+ return Version(pkg, vi.VerStr());
+}
+
+Version Apt::installedVersion(const std::string& pkg) const
+{
+ pkgCache::PkgIterator pi = impl->cache().FindPkg(pkg);
+ if (pi.end()) return Version();
+ if (pi->CurrentVer == 0) return Version();
+ pkgCache::VerIterator vi = pi.CurrentVer();
+ if (vi.end()) return Version();
+ return Version(pkg, vi.VerStr());
+}
+
+Version Apt::anyVersion(const std::string& pkg) const
+{
+ pkgCache::PkgIterator pi = impl->cache().FindPkg(pkg);
+ if (pi.end()) return Version();
+
+ pkgCache::VerIterator vi = impl->policy().GetCandidateVer(pi);
+ if (vi.end())
+ {
+ if (pi->CurrentVer == 0) return Version();
+ vi = pi.CurrentVer();
+ if (vi.end()) return Version();
+ }
+ return Version(pkg, vi.VerStr());
+}
+
+PackageState Apt::state(const std::string& pkg) const
+{
+ pkgCache::PkgIterator pi = impl->cache().FindPkg(pkg);
+ if (pi.end()) return PackageState();
+ pkgDepCache::StateCache sc = impl->depcache()[pi];
+
+ unsigned int flags = PackageState::Valid;
+
+ // Check if the package is installed
+ if (pi->CurrentState != pkgCache::State::ConfigFiles &&
+ pi->CurrentState != pkgCache::State::NotInstalled &&
+ pi->CurrentVer != 0)
+ {
+ // Try to get a VerIterator to the installed version
+ pkgCache::VerIterator inst = pi.CurrentVer();
+ if (!inst.end())
+ {
+ // If we made it so far, it is installed
+ flags |= PackageState::Installed;
+
+ // Now check if it is upgradable
+ pkgCache::VerIterator cand = impl->policy().GetCandidateVer(pi);
+
+ // If the candidate version is different than the installed one, then
+ // it is installable
+ if (!cand.end() && inst != cand)
+ flags |= PackageState::Upgradable;
+ }
+ }
+ if (sc.Install())
+ flags |= PackageState::Install;
+ if ((sc.iFlags & pkgDepCache::ReInstall) == pkgDepCache::ReInstall)
+ flags |= PackageState::ReInstall;
+ if (sc.Keep())
+ flags |= PackageState::Keep;
+ if (sc.Delete())
+ flags |= PackageState::Remove;
+ if ((sc.iFlags & pkgDepCache::Purge) == pkgDepCache::Purge)
+ flags |= PackageState::Purge;
+ if (sc.NowBroken())
+ flags |= PackageState::NowBroken;
+ if (sc.InstBroken())
+ flags |= PackageState::WillBreak;
+
+ return PackageState(flags);
+}
+
+std::string Apt::rawRecord(const std::string& ver) const
+{
+ // TODO: possibly reimplement using a single lump of apt code, to avoid
+ // repeating lookups
+ return rawRecord(anyVersion(ver));
+}
+
+std::string Apt::rawRecord(const Version& ver) const
+{
+ pkgCache::PkgIterator pi = impl->cache().FindPkg(ver.name());
+ if (pi.end()) return std::string();
+ for (pkgCache::VerIterator vi = pi.VersionList(); !vi.end(); vi++)
+ {
+ const char* v = vi.VerStr();
+ if (v == 0) continue;
+ if (ver.version() == v)
+ {
+ // Code taken and adapted from apt-cache's DisplayRecord
+
+ // Find an appropriate file
+ pkgCache::VerFileIterator vfi = vi.FileList();
+ for (; !vfi.end(); vfi++)
+ if ((vfi.File()->Flags & pkgCache::Flag::NotSource) == 0)
+ break;
+ if (vfi.end())
+ vfi = vi.FileList();
+
+ // Check and load the package list file
+ pkgCache::PkgFileIterator pfi = vfi.File();
+ if (!pfi.IsOk())
+ throw Exception(string("Reading the data record for a package version from file ") + pfi.FileName());
+
+ FileFd pkgf(pfi.FileName(), FileFd::ReadOnly);
+ if (_error->PendingError() == true)
+ return std::string();
+
+ // Read the record and then write it out again.
+ char* buffer = new char[vfi->Size+1];
+ buffer[vfi->Size] = '\n';
+ if (!pkgf.Seek(vfi->Offset) || !pkgf.Read(buffer, vfi->Size))
+ {
+ delete[] buffer;
+ return std::string();
+ }
+
+ std::string res(buffer, vfi->Size);
+ delete[] buffer;
+ return res;
+ }
+ }
+ return std::string();
+}
+
+void Apt::checkCacheUpdates()
+{
+ if (impl->m_open_timestamp < timestamp())
+ {
+ // Crudely reopen everything
+ delete impl;
+ impl = new AptImplementation;
+ }
+}
+
+void Apt::invalidateTimestamp()
+{
+ impl->m_open_timestamp = 0;
+}
+
+}
+}
+
+// vim:set ts=4 sw=4:
diff --git a/ept/apt/apt.h b/ept/apt/apt.h
new file mode 100644
index 0000000..0cfff60
--- /dev/null
+++ b/ept/apt/apt.h
@@ -0,0 +1,284 @@
+// -*- C++ -*-
+#ifndef EPT_APT_APT_H
+#define EPT_APT_APT_H
+
+/** \file
+ * High-level front-end to libapt-pkg, as a data provider for the ept framework.
+ */
+
+/*
+ * Copyright (C) 2007,2008 Enrico Zini <enrico@enricozini.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <wibble/exception.h>
+#include <ept/apt/version.h>
+
+#include <iterator>
+
+namespace ept {
+namespace apt {
+
+class Exception : public wibble::exception::Generic
+{
+protected:
+ std::string m_message;
+
+public:
+ Exception(const std::string& context) throw ();
+ ~Exception() throw () {}
+
+ virtual const char* type() const throw () { return "Apt"; }
+ virtual std::string desc() const throw () { return m_message; }
+};
+
+class Apt;
+class AptImplementation;
+class RecordIteratorImpl;
+
+struct PackageState {
+ enum Query {
+ Install = 1 << 0,
+ Upgrade = 1 << 1,
+ Keep = 1 << 2,
+ Remove = 1 << 3,
+ Installed = 1 << 4,
+ Upgradable = 1 << 5,
+ NowBroken = 1 << 6,
+ WillBreak = 1 << 7,
+ ReInstall = 1 << 8,
+ Purge = 1 << 9,
+ Hold = 1 << 10,
+ Valid = 1 << 11
+ };
+
+ typedef unsigned state;
+
+ operator unsigned() { return m_state; };
+
+ PackageState &operator=( unsigned i ) {
+ m_state = i;
+ return *this;
+ }
+
+ PackageState &operator|=( const PackageState &s ) {
+ m_state |= s.m_state;
+ return *this;
+ }
+
+ PackageState( unsigned a ) {
+ m_state = a;
+ }
+
+ PackageState() : m_state( 0 ) {}
+
+ // FIXME this probably needs to be used consistently in core and out of core
+ bool isValid() const { return m_state & Valid; }
+ // FIXME compatibility API for non-core apt
+ bool isInstalled() const { return installed(); }
+
+ bool install() const { return m_state & Install; }
+ // reinstall() implies install()
+ bool reinstall() const { return m_state & ReInstall; }
+ bool remove() const { return m_state & Remove; }
+ // purge() implies remove()
+ bool purge() const { return m_state & Purge; }
+ bool keep() const { return m_state & Keep; }
+ bool willBreak() const { return m_state & WillBreak; }
+ // upgrade() implies install()
+ bool upgrade() const { return hasNewVersion() && install(); }
+ // newInsstal() implies install()
+ bool newInstall() const { return !installed() && install(); }
+ bool hold() const { return m_state & Hold; }
+
+ bool installed() const { return m_state & Installed; }
+ bool hasNewVersion() const { return m_state & Upgradable; }
+ bool upgradable() const { return hasNewVersion() && !hold(); }
+ bool held() const { return hasNewVersion() && hold(); }
+ bool nowBroken() const { return m_state & NowBroken; }
+
+ bool modify() const { return install() || remove(); }
+
+protected:
+ unsigned m_state;
+};
+
+/**
+ * High-level access to the Apt cache, as a data provider for the ept
+ * framework.
+ *
+ * This class wraps the Apt cache and allows to query it in various ways.
+ */
+class Apt
+{
+protected:
+ AptImplementation* impl;
+
+public:
+ // Iterate Packages in the Apt cache
+ class Iterator : public std::iterator<std::input_iterator_tag, std::string, void, void, void>
+ {
+ void* cur;
+
+ protected:
+ // Construct a valid iterator
+ Iterator(void* cur) : cur(cur) {}
+
+ // Construct and end iterator
+ Iterator() : cur(0) {}
+
+ public:
+ // Copy constructor
+ Iterator(const Iterator&);
+ ~Iterator();
+ std::string operator*();
+ Iterator& operator++();
+ Iterator& operator=(const Iterator&);
+ bool operator==(const Iterator&) const;
+ bool operator!=(const Iterator&) const;
+
+ // FIXME: Iterator operator++(int); cannot be easily implemented
+ // because of how Apt's pkgIterator works
+
+ friend class Apt;
+ };
+
+ // Iterate Package records in the Apt cache
+ class RecordIterator : public std::iterator<std::input_iterator_tag, std::string, void, void, void>
+ {
+ RecordIteratorImpl* impl;
+ size_t pos;
+ std::string cur;
+ size_t cur_pos;
+
+ protected:
+ // Construct a valid iterator
+ RecordIterator(RecordIteratorImpl* cur, size_t pos = 0);
+
+ // Construct and end iterator
+ RecordIterator() : impl(0), pos(0), cur_pos(0) {}
+
+ public:
+ // Copy constructor
+ RecordIterator(const RecordIterator& r);
+
+ ~RecordIterator();
+ std::string operator*();
+ std::string* operator->();
+ RecordIterator& operator++();
+ RecordIterator& operator=(const RecordIterator& r);
+ bool operator==(const RecordIterator&) const;
+ bool operator!=(const RecordIterator&) const;
+
+ // FIXME: Iterator operator++(int); cannot be easily implemented
+ // because of how Apt's pkgIterator works
+
+ friend class Apt;
+ };
+
+ typedef Iterator iterator;
+ typedef RecordIterator record_iterator;
+
+ /**
+ * Create the Apt data provider
+ */
+ Apt();
+ ~Apt();
+
+ iterator begin() const;
+ iterator end() const;
+
+ record_iterator recordBegin() const;
+ record_iterator recordEnd() const;
+
+
+ /// Return the number of packages in the archive
+ size_t size() const;
+
+ /**
+ * Validate a package name, returning trye if it exists in the APT database,
+ * or false if it does not.
+ */
+ bool isValid(const std::string& pkg) const;
+
+ /// Validate a package name, returning it if it exists in the APT database,
+ /// or returning the empty string if it does not.
+ std::string validate(const std::string& pkg) const
+ {
+ if (isValid(pkg))
+ return pkg;
+ return std::string();
+ }
+
+ /// Validate a Version, returning it if it exists in the APT database, or
+ /// returning the invalid version if it does not.
+ Version validate(const Version& ver) const;
+
+ /// Return the installed version for a package
+ Version installedVersion(const std::string& pkg) const;
+
+ /// Return the candidate version for a package
+ Version candidateVersion(const std::string& pkg) const;
+
+ /**
+ * Return the candidate version for a package, if available, or the
+ * installed version otherwise
+ */
+ Version anyVersion(const std::string& pkg) const;
+
+ /// Return state information on a package
+ PackageState state(const std::string& pkg) const;
+
+ /**
+ * Perform a package search.
+ *
+ * All packages for which the functor filter returns true, are passed to
+ * the functor out.
+ */
+ //template<typename FILTER, typename OUT>
+ //void search(const FILTER& filter, OUT& out);
+
+ /// Get the raw package record for the given Version
+ std::string rawRecord(const std::string& pkg) const;
+
+ /// Get the raw package record for the given Version
+ std::string rawRecord(const Version& ver) const;
+
+ /// Timestamp of when the apt index was last modified
+ time_t timestamp();
+
+ /**
+ * Check if the cache has been changed by another process, and reopen it if
+ * that is the case.
+ *
+ * Note that this method can invalidate all existing iterators.
+ */
+ void checkCacheUpdates();
+
+ /**
+ * Invalidate the cache timestamp used to track cache updates.
+ *
+ * @warning Do not use this method: it is here only to support the test
+ * cases, and may disappear in any future version.
+ */
+ void invalidateTimestamp();
+};
+
+}
+}
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/ept/apt/apt.test.h b/ept/apt/apt.test.h
new file mode 100644
index 0000000..cc9602e
--- /dev/null
+++ b/ept/apt/apt.test.h
@@ -0,0 +1,192 @@
+/*
+ * Copyright (C) 2007 Enrico Zini <enrico@enricozini.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/test.h>
+#include <ept/apt/apt.h>
+#include <set>
+#include <algorithm>
+
+using namespace std;
+using namespace ept;
+using namespace ept::apt;
+
+struct TestApt : AptTestEnvironment {
+ Apt apt;
+
+ // Check that iterations iterates among some packages
+ Test iterators()
+ {
+ Apt::iterator i = apt.begin();
+ assert(i != apt.end());
+
+ size_t count = 0;
+ for (; i != apt.end(); ++i)
+ ++count;
+
+ assert(count > 100);
+ }
+
+ // Check that iteration gives some well-known packages
+ Test aptExists()
+ {
+ set<string> packages;
+
+ std::copy(apt.begin(), apt.end(), inserter(packages, packages.begin()));
+
+ assert(packages.find("libsp1") != packages.end());
+ // TODO this exposes a bug somewhere... sp definitely is among
+ // the packages
+ // assert(packages.find("sp") != packages.end());
+ assert(packages.find("") == packages.end());
+ }
+
+ // Check that timestamp gives some meaningful timestamp
+ Test timestamp()
+ {
+ time_t ts = apt.timestamp();
+ assert(ts > 1000000);
+ }
+
+ // Check the package validator
+ Test validity()
+ {
+ assert(apt.isValid("apt"));
+ assert(!apt.isValid("this-package-does-not-really-exists"));
+ }
+
+ // Check the version instantiators
+ Test versions()
+ {
+ std::string pkg("apt");
+ Version ver = apt.candidateVersion(pkg);
+ assert(ver.isValid());
+
+ ver = apt.installedVersion(pkg);
+ assert(ver.isValid());
+
+ ver = apt.anyVersion(pkg);
+ assert(ver.isValid());
+
+ std::string pkg1("this-package-does-not-really-exists");
+ ver = apt.candidateVersion(pkg1);
+ assert(!ver.isValid());
+
+ ver = apt.installedVersion(pkg1);
+ assert(!ver.isValid());
+
+ ver = apt.anyVersion(pkg1);
+ assert(!ver.isValid());
+ }
+
+ // Check the version validator
+ Test versionValidity()
+ {
+ Version ver = apt.candidateVersion("apt");
+ assert(apt.validate(ver) == ver);
+
+ ver = Version("this-package-does-not-really-exists", "0.1");
+ assert(!apt.validate(ver).isValid());
+
+ ver = Version("apt", "0.31415");
+ assert(!apt.validate(ver).isValid());
+ }
+
+ // Check the raw record accessor
+ Test rawRecord()
+ {
+ string pkg("sp");
+ Version ver = apt.candidateVersion(pkg);
+ assert(apt.validate(ver) == ver);
+
+ string record = apt.rawRecord(ver);
+ assert(record.find("Package: sp") != string::npos);
+ assert(record.find("Section: text") != string::npos);
+
+ record = apt.rawRecord(Version("sp", "0.31415"));
+ assert_eq(record, string());
+
+ assert_eq(apt.rawRecord(pkg), apt.rawRecord(apt.anyVersion(pkg)));
+ }
+
+ // Check the package state accessor
+ Test state()
+ {
+ PackageState s = apt.state("kdenetwork");
+ assert(s.isValid());
+ assert(s.isInstalled());
+
+ s = apt.state("this-package-does-not-really-exists");
+ assert(!s.isValid());
+ }
+
+ // Check the record iterator (accessing with *)
+ Test recordIteration()
+ {
+ size_t count = 0;
+ for (Apt::record_iterator i = apt.recordBegin();
+ i != apt.recordEnd(); ++i)
+ {
+ assert((*i).size() > 8);
+ assert_eq((*i).substr(0, 8), "Package:");
+ ++count;
+ }
+ assert(count > 200);
+ }
+
+ // Check the record iterator (accessing with ->)
+ Test recordIteration2()
+ {
+ size_t count = 0;
+ for (Apt::record_iterator i = apt.recordBegin();
+ i != apt.recordEnd(); ++i)
+ {
+ assert(i->size() > 8);
+ assert_eq(i->substr(0, 8), "Package:");
+ ++count;
+ }
+ assert(count > 200);
+ }
+
+ // Check that the iterators can be used with the algorithms
+ Test stlIteration()
+ {
+ vector<string> out;
+ std::copy(apt.begin(), apt.end(), back_inserter(out));
+ }
+
+ // Check that the iterators can be used with the algorithms
+ Test stlRecordIteration()
+ {
+ vector<string> out;
+ std::copy(apt.recordBegin(), apt.recordEnd(), back_inserter(out));
+ }
+
+ // Check that checkUpdates will keep a working Apt object
+ Test checkUpdates()
+ {
+ assert(apt.isValid("apt"));
+ apt.checkCacheUpdates();
+ assert(apt.isValid("apt"));
+ apt.invalidateTimestamp();
+ apt.checkCacheUpdates();
+ assert(apt.isValid("apt"));
+ }
+
+};
+
+// vim:set ts=4 sw=4:
diff --git a/ept/apt/packagerecord.cc b/ept/apt/packagerecord.cc
new file mode 100644
index 0000000..f842bac
--- /dev/null
+++ b/ept/apt/packagerecord.cc
@@ -0,0 +1,118 @@
+/** \file
+ * Parser for APT records, with specialised accessors for package records
+ */
+
+/*
+ * Copyright (C) 2007 Enrico Zini <enrico@enricozini.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/apt/packagerecord.h>
+
+#include <cctype>
+#include <cstdlib>
+
+//#include <iostream>
+
+using namespace std;
+
+namespace ept {
+namespace apt {
+
+size_t PackageRecord::parseSize(size_t def, const std::string& str) const
+{
+ if (str == string())
+ return def;
+ return (size_t)strtoul(str.c_str(), NULL, 10);
+}
+
+std::string PackageRecord::parseShortDescription(const std::string& def, const std::string& str) const
+{
+ if (str == std::string())
+ return def;
+ size_t pos = str.find("\n");
+ if (pos == std::string::npos)
+ return str;
+ else
+ return str.substr(0, pos);
+}
+
+std::string PackageRecord::parseLongDescription(const std::string& def, const std::string& str) const
+{
+ if (str == std::string())
+ return def;
+ size_t pos = str.find("\n");
+ if (pos == std::string::npos)
+ return str;
+ else
+ {
+ // Trim trailing spaces
+ for (++pos; pos < str.size() && isspace(str[pos]); ++pos)
+ ;
+ return str.substr(pos);
+ }
+}
+
+std::set<std::string> PackageRecord::parseTags(const std::set<std::string>& def, const std::string& str) const
+{
+ if (str == string())
+ return def;
+
+ set<string> res;
+
+ size_t pos = 0;
+ while (pos < str.size())
+ {
+ string tag;
+ size_t i = str.find(", ", pos);
+ if (i == string::npos)
+ tag = str.substr(pos);
+ else
+ tag = str.substr(pos, i-pos);
+
+ // Check if we need curly brace expansion
+ if (tag[tag.size() - 1] == '}')
+ {
+ size_t begin = tag.find('{');
+ if (begin != string::npos)
+ {
+ string prefix(tag, 0, begin);
+ ++begin;
+ size_t end;
+ while ((end = tag.find(',', begin)) != string::npos)
+ {
+ res.insert(prefix + tag.substr(begin, end-begin));
+ begin = end + 1;
+ }
+ res.insert(prefix + tag.substr(begin, tag.size() - 1 - begin));
+ }
+ } else {
+ res.insert(tag);
+ }
+
+ if (i == string::npos)
+ break;
+ else
+ pos = i + 2;
+ }
+
+ return res;
+}
+
+}
+}
+
+// vim:set ts=4 sw=4:
diff --git a/ept/apt/packagerecord.h b/ept/apt/packagerecord.h
new file mode 100644
index 0000000..94e0435
--- /dev/null
+++ b/ept/apt/packagerecord.h
@@ -0,0 +1,176 @@
+#ifndef EPT_APT_PACKAGERECORD_H
+#define EPT_APT_PACKAGERECORD_H
+
+/** \file
+ * Parser for APT records, with specialised accessors for package records
+ */
+
+/*
+ * Copyright (C) 2007 Enrico Zini <enrico@enricozini.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/apt/recordparser.h>
+#include <set>
+
+namespace ept {
+namespace apt {
+
+/**
+ * RecordParser specialised with access methods for common Debian package
+ * information.
+ */
+class PackageRecord : public RecordParser
+{
+ bool parseBool(bool& def, const std::string& str) const
+ {
+ // Believe it or not, this is what apt does to interpret bool fields
+ if (str == "no" || str == "false" || str == "without" ||
+ str == "off" || str == "disable")
+ return false;
+
+ if (str == "yes" || str == "true" || str == "with" ||
+ str == "on" || str == "enable")
+ return true;
+
+ return def;
+ }
+ std::string parseString(const std::string& def, const std::string& str) const
+ {
+ if (str == std::string())
+ return def;
+ return str;
+ }
+ std::string parseShortDescription(const std::string& def, const std::string& str) const;
+ std::string parseLongDescription(const std::string& def, const std::string& str) const;
+ size_t parseSize(size_t def, const std::string& str) const;
+ std::set<std::string> parseTags(const std::set<std::string>& def, const std::string& str) const;
+
+public:
+ PackageRecord() : RecordParser() {}
+ PackageRecord(const std::string& str) : RecordParser(str) {}
+
+ std::string package(const std::string& def = std::string()) const
+ {
+ return parseString(def, lookup("Package"));
+ }
+ std::string priority(const std::string& def = std::string()) const
+ {
+ return parseString(def, lookup("Priority"));
+ }
+ std::string section(const std::string& def = std::string()) const
+ {
+ return parseString(def, lookup("Section"));
+ }
+ size_t installedSize(size_t def = 0) const
+ {
+ return parseSize(def, lookup("Installed-Size"));
+ }
+ std::string maintainer(const std::string& def = std::string()) const
+ {
+ return parseString(def, lookup("Maintainer"));
+ }
+ std::string architecture(const std::string& def = std::string()) const
+ {
+ return parseString(def, lookup("Architecture"));
+ }
+ std::string source(const std::string& def = std::string()) const
+ {
+ return parseString(def, lookup("Source"));
+ }
+ std::string version(const std::string& def = std::string()) const
+ {
+ return parseString(def, lookup("Version"));
+ }
+ std::string replaces(const std::string& def = std::string()) const
+ {
+ return parseString(def, lookup("Replaces"));
+ }
+ std::string depends(const std::string& def = std::string()) const
+ {
+ return parseString(def, lookup("Depends"));
+ }
+ std::string preDepends(const std::string& def = std::string()) const
+ {
+ return parseString(def, lookup("Pre-Depends"));
+ }
+ std::string recommends(const std::string& def = std::string()) const
+ {
+ return parseString(def, lookup("Recommends"));
+ }
+ std::string suggests(const std::string& def = std::string()) const
+ {
+ return parseString(def, lookup("Suggests"));
+ }
+ std::string enhances(const std::string& def = std::string()) const
+ {
+ return parseString(def, lookup("Enhances"));
+ }
+ std::string provides(const std::string& def = std::string()) const
+ {
+ return parseString(def, lookup("Provides"));
+ }
+ std::string conflicts(const std::string& def = std::string()) const
+ {
+ return parseString(def, lookup("Conflicts"));
+ }
+ std::string filename(const std::string& def = std::string()) const
+ {
+ return parseString(def, lookup("Filename"));
+ }
+ size_t packageSize(size_t def = 0) const
+ {
+ return parseSize(def, lookup("Size"));
+ }
+ std::string md5sum(const std::string& def = std::string()) const
+ {
+ return parseString(def, lookup("MD5sum"));
+ }
+ std::string sha1(const std::string& def = std::string()) const
+ {
+ return parseString(def, lookup("SHA1"));
+ }
+ std::string sha256(const std::string& def = std::string()) const
+ {
+ return parseString(def, lookup("SHA256"));
+ }
+ std::string description(const std::string& def = std::string()) const
+ {
+ return parseString(def, lookup("Description"));
+ }
+ std::string shortDescription(const std::string& def = std::string()) const
+ {
+ return parseShortDescription(def, lookup("Description"));
+ }
+ std::string longDescription(const std::string& def = std::string()) const
+ {
+ return parseLongDescription(def, lookup("Description"));
+ }
+ bool buildEssential(bool def = false) const
+ {
+ return parseBool(def, lookup("Build-Essential"));
+ }
+ std::set<std::string> tag(const std::set<std::string>& def = std::set<std::string>()) const
+ {
+ return parseTags(def, lookup("Tag"));
+ }
+};
+
+}
+}
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/ept/apt/packagerecord.test.h b/ept/apt/packagerecord.test.h
new file mode 100644
index 0000000..657cbab
--- /dev/null
+++ b/ept/apt/packagerecord.test.h
@@ -0,0 +1,138 @@
+/*
+ * Copyright (C) 2007 Enrico Zini <enrico@enricozini.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/test.h>
+#include <ept/apt/packagerecord.h>
+
+namespace std {
+ ostream& operator<<(ostream& out, const set<string>& s)
+ {
+ for (set<string>::const_iterator i = s.begin();
+ i != s.end(); ++i)
+ if (i == s.begin())
+ out << *i;
+ else
+ out << ", " << *i;
+ return out;
+ }
+}
+
+using namespace std;
+using namespace ept;
+using namespace ept::apt;
+
+struct TestAptPackagerecord {
+
+ // Check that the supported fields are understood
+ Test supportedFields()
+ {
+ string record =
+ "Package: apt\n"
+ "Priority: important\n"
+ "Section: admin\n"
+ "Installed-Size: 4368\n"
+ "Maintainer: APT Development Team <deity@lists.debian.org>\n"
+ "Architecture: amd64\n"
+ "Source: apt\n"
+ "Version: 0.6.46.4-0.1\n"
+ "Replaces: libapt-pkg-doc (<< 0.3.7), libapt-pkg-dev (<< 0.3.7)\n"
+ "Provides: libapt-pkg-libc6.3-6-3.11\n"
+ "Depends: libc6 (>= 2.3.5-1), libgcc1 (>= 1:4.1.1-12), libstdc++6 (>= 4.1.1-12), debian-archive-keyring\n"
+ "Pre-Depends: debtags (maybe)\n"
+ "Suggests: aptitude | synaptic | gnome-apt | wajig, dpkg-dev, apt-doc, bzip2\n"
+ "Recommends: debtags (maybe)\n"
+ "Enhances: debian\n"
+ "Conflicts: marameo\n"
+ "Filename: pool/main/a/apt/apt_0.6.46.4-0.1_amd64.deb\n"
+ "Size: 1436478\n"
+ "MD5sum: 1776421f80d6300c77a608e77a9f4a15\n"
+ "SHA1: 1bd7337d2df56d267632cf72ac930c0a4895898f\n"
+ "SHA256: b92442ab60046b4d0728245f39cc932f26e17db9f7933a5ec9aaa63172f51fda\n"
+ "Description: Advanced front-end for dpkg\n"
+ " This is Debian's next generation front-end for the dpkg package manager.\n"
+ " It provides the apt-get utility and APT dselect method that provides a\n"
+ " simpler, safer way to install and upgrade packages.\n"
+ " .\n"
+ " APT features complete installation ordering, multiple source capability\n"
+ " and several other unique features, see the Users Guide in apt-doc.\n"
+ "Build-Essential: yes\n"
+ "Tag: admin::package-management, filetransfer::ftp, filetransfer::http, hardware::storage:cd, interface::commandline, network::client, protocol::{ftp,http,ipv6}, role::program, suite::debian, use::downloading, use::searching, works-with::software:package\n";
+
+ PackageRecord p(record);
+
+ assert_eq(p.size(), 24u);
+
+ assert_eq(p.package(), "apt");
+ assert_eq(p.priority(), "important");
+ assert_eq(p.section(), "admin");
+ assert_eq(p.installedSize(), 4368u);
+ assert_eq(p.maintainer(), "APT Development Team <deity@lists.debian.org>");
+ assert_eq(p.architecture(), "amd64");
+ assert_eq(p.source(), "apt");
+ assert_eq(p.version(), "0.6.46.4-0.1");
+ assert_eq(p.replaces(), "libapt-pkg-doc (<< 0.3.7), libapt-pkg-dev (<< 0.3.7)");
+ assert_eq(p.provides(), "libapt-pkg-libc6.3-6-3.11");
+ assert_eq(p.depends(), "libc6 (>= 2.3.5-1), libgcc1 (>= 1:4.1.1-12), libstdc++6 (>= 4.1.1-12), debian-archive-keyring");
+ assert_eq(p.preDepends(), "debtags (maybe)");
+ assert_eq(p.recommends(), "debtags (maybe)");
+ assert_eq(p.suggests(), "aptitude | synaptic | gnome-apt | wajig, dpkg-dev, apt-doc, bzip2");
+ assert_eq(p.enhances(), "debian");
+ assert_eq(p.conflicts(), "marameo");
+ assert_eq(p.filename(), "pool/main/a/apt/apt_0.6.46.4-0.1_amd64.deb");
+ assert_eq(p.packageSize(), 1436478u);
+ assert_eq(p.md5sum(), "1776421f80d6300c77a608e77a9f4a15");
+ assert_eq(p.sha1(), "1bd7337d2df56d267632cf72ac930c0a4895898f");
+ assert_eq(p.sha256(), "b92442ab60046b4d0728245f39cc932f26e17db9f7933a5ec9aaa63172f51fda");
+ assert_eq(p.description(), "Advanced front-end for dpkg\n"
+ " This is Debian's next generation front-end for the dpkg package manager.\n"
+ " It provides the apt-get utility and APT dselect method that provides a\n"
+ " simpler, safer way to install and upgrade packages.\n"
+ " .\n"
+ " APT features complete installation ordering, multiple source capability\n"
+ " and several other unique features, see the Users Guide in apt-doc.");
+ assert_eq(p.shortDescription(), "Advanced front-end for dpkg");
+ assert_eq(p.longDescription(),
+ "This is Debian's next generation front-end for the dpkg package manager.\n"
+ " It provides the apt-get utility and APT dselect method that provides a\n"
+ " simpler, safer way to install and upgrade packages.\n"
+ " .\n"
+ " APT features complete installation ordering, multiple source capability\n"
+ " and several other unique features, see the Users Guide in apt-doc.");
+ assert_eq(p.buildEssential(), true);
+
+ std::set<std::string> tags;
+ tags.insert("admin::package-management");
+ tags.insert("filetransfer::ftp");
+ tags.insert("filetransfer::http");
+ tags.insert("hardware::storage:cd");
+ tags.insert("interface::commandline");
+ tags.insert("network::client");
+ tags.insert("protocol::ftp");
+ tags.insert("protocol::http");
+ tags.insert("protocol::ipv6");
+ tags.insert("role::program");
+ tags.insert("suite::debian");
+ tags.insert("use::downloading");
+ tags.insert("use::searching");
+ tags.insert("works-with::software:package");
+ assert_eq(p.tag(), tags);
+ }
+
+};
+
+// vim:set ts=4 sw=4:
diff --git a/ept/apt/recordparser.cc b/ept/apt/recordparser.cc
new file mode 100644
index 0000000..3562123
--- /dev/null
+++ b/ept/apt/recordparser.cc
@@ -0,0 +1,170 @@
+/** \file
+ * Parser for APT records
+ */
+
+/*
+ * Copyright (C) 2007 Enrico Zini <enrico@enricozini.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/apt/recordparser.h>
+
+#include <algorithm>
+#include <cctype>
+
+//#include <iostream>
+
+using namespace std;
+
+namespace ept {
+namespace apt {
+
+struct rpcompare
+{
+ const RecordParser& rp;
+ rpcompare(const RecordParser& rp) : rp(rp) {}
+ bool operator()(size_t a, size_t b)
+ {
+ return rp.name(a) < rp.name(b);
+ }
+};
+
+void RecordParser::scan(const std::string& str)
+{
+ buffer = str;
+ ends.clear();
+ sorted.clear();
+
+ //cerr << "PARSE " << endl << buffer << "*****" << endl;
+
+ // Scan the buffer, taking note of all ending offsets of the various fields
+ size_t pos = 0;
+ size_t idx = 0;
+ while (pos < buffer.size() - 1)
+ {
+ //cerr << "PREPOS " << pos << " left: " << buffer.substr(pos, 10) << endl;
+ pos = buffer.find("\n", pos);
+ //cerr << "POSTPOS " << pos << " left: " << (pos == string::npos ? "NONE" : buffer.substr(pos, 10)) << endl;
+
+ // The buffer does not end with a newline
+ if (pos == string::npos)
+ {
+ //cerr << "ENDNOTEOL" << endl;
+ pos = buffer.size();
+ ends.push_back(pos);
+ sorted.push_back(idx++);
+ break;
+ }
+
+ ++pos;
+ //cerr << "POSTPOSINC " << pos << " left: " << buffer.substr(pos, 10) << endl;
+
+ // The buffer ends with a newline
+ if (pos == buffer.size())
+ {
+ //cerr << "ENDEOL" << endl;
+ ends.push_back(pos);
+ sorted.push_back(idx++);
+ break;
+ }
+
+ // Terminate parsing on double newlines
+ if (buffer[pos] == '\n')
+ {
+ //cerr << "ENDDOUBLENL" << endl;
+ ends.push_back(pos);
+ sorted.push_back(idx++);
+ break;
+ }
+
+ // Mark the end of the field if it's not a continuation line
+ if (!isspace(buffer[pos]))
+ {
+ //cerr << "INNERFIELD" << endl;
+ ends.push_back(pos);
+ sorted.push_back(idx++);
+ } //else
+ //cerr << "CONTLINE" << endl;
+ }
+
+ // Sort the sorted array
+ sort(sorted.begin(), sorted.end(), rpcompare(*this));
+
+ //for (size_t i = 0; i < ends.size(); ++i)
+ // cerr << ends[i] << "\t" << name(i) << "\t" << sorted[i] << "\t" << name(sorted[i]) << endl;
+}
+
+std::string RecordParser::field(size_t idx) const
+{
+ if (idx >= ends.size())
+ return string();
+ if (idx == 0)
+ return buffer.substr(0, ends[0]);
+ else
+ return buffer.substr(ends[idx-1], ends[idx]-ends[idx-1]);
+}
+
+std::string RecordParser::name(size_t idx) const
+{
+ string res = field(idx);
+ size_t pos = res.find(":");
+ if (pos == string::npos)
+ return res;
+ return res.substr(0, pos);
+}
+
+std::string RecordParser::lookup(size_t idx) const
+{
+ string res = field(idx);
+ size_t pos = res.find(":");
+ if (pos == string::npos)
+ return res;
+ // Skip initial whitespace after the :
+ for (++pos; pos < res.size() && isspace(res[pos]); ++pos)
+ ;
+ res = res.substr(pos);
+ // Trim spaces at the end
+ while (!res.empty() && isspace(res[res.size() - 1]))
+ res.resize(res.size() - 1);
+ return res;
+}
+
+size_t RecordParser::index(const std::string& str) const
+{
+ int begin, end;
+
+ /* Binary search */
+ begin = -1, end = size();
+ while (end - begin > 1)
+ {
+ int cur = (end + begin) / 2;
+ //cerr << "Test " << cur << " " << str << " < " << name(cur) << endl;
+ if (name(sorted[cur]) > str)
+ end = cur;
+ else
+ begin = cur;
+ }
+
+ if (begin == -1 || name(sorted[begin]) != str)
+ return size();
+ else
+ return sorted[begin];
+}
+
+}
+}
+
+// vim:set ts=4 sw=4:
diff --git a/ept/apt/recordparser.h b/ept/apt/recordparser.h
new file mode 100644
index 0000000..cbaa466
--- /dev/null
+++ b/ept/apt/recordparser.h
@@ -0,0 +1,95 @@
+#ifndef EPT_APT_RECORDPARSER_H
+#define EPT_APT_RECORDPARSER_H
+
+/** \file
+ * Parser for APT records
+ */
+
+/*
+ * Copyright (C) 2007 Enrico Zini <enrico@enricozini.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <vector>
+#include <string>
+
+namespace ept {
+namespace apt {
+
+/**
+ * Access the fields of a package record contained inside a std::string.
+ *
+ * Implementation note: this implementation should take advantage of
+ * std::string sharing buffer space among them.
+ */
+class RecordParser
+{
+ /// Buffer containing the whole record
+ std::string buffer;
+
+ /// End offsets of the various fields in the record
+ std::vector<size_t> ends;
+
+ /// Indexes on the ends vector, sorted by field name
+ std::vector<size_t> sorted;
+
+public:
+ RecordParser() {}
+ RecordParser(const std::string& str) { scan(str); }
+
+ /// Index a new record
+ void scan(const std::string& str);
+
+ /**
+ * Get the index of the field with the given name.
+ *
+ * size() is returned if not found
+ */
+ size_t index(const std::string& str) const;
+
+ /// Return the field by its index
+ std::string field(size_t idx) const;
+
+ /// Return the name of a field by its index
+ std::string name(size_t idx) const;
+
+ /// Return the content of a field by its index
+ std::string lookup(size_t idx) const;
+
+ /// Return the content of a field by its name
+ std::string lookup(const std::string& name) const { return lookup(index(name)); }
+
+ /// Return the content of a field by its index
+ std::string operator[](size_t idx) const { return lookup(idx); }
+
+ /// Return the content of a field by its name
+ std::string operator[](const std::string& name) const { return lookup(name); }
+
+ /// Return the entire record
+ const std::string& record() const { return buffer; }
+
+ /// Return the entire record
+ std::string record() { return buffer; }
+
+ /// Return the number of fields in the record
+ size_t size() const { return ends.size(); }
+};
+
+}
+}
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/ept/apt/recordparser.test.h b/ept/apt/recordparser.test.h
new file mode 100644
index 0000000..629008f
--- /dev/null
+++ b/ept/apt/recordparser.test.h
@@ -0,0 +1,228 @@
+/*
+ * Copyright (C) 2007 Enrico Zini <enrico@enricozini.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/test.h>
+#include <ept/apt/recordparser.h>
+
+//#include <iostream>
+
+using namespace std;
+using namespace ept;
+using namespace ept::apt;
+
+struct TestAptRecordparser {
+ std::string record;
+ TestAptRecordparser()
+ {
+ record =
+ "A:\n"
+ "D: da de di do du\n"
+ "B: b\n"
+ "C: c \n"
+ "Desc: this is the beginning\n"
+ " this is the continuation\n"
+ " this is the end\n";
+ }
+
+ // Check that the fields are identified and broken up correctly
+ Test parsing()
+ {
+ RecordParser p(record);
+
+ assert_eq(p.record(), record);
+ assert_eq(p.size(), 5u);
+ }
+
+ Test fieldTuples()
+ {
+ RecordParser p(record);
+ assert_eq(p.field(0), "A:\n");
+ assert_eq(p.field(1), "D: da de di do du\n");
+ assert_eq(p.field(2), "B: b\n");
+ assert_eq(p.field(3), "C: c \n");
+ assert_eq(p.field(4), "Desc: this is the beginning\n this is the continuation\n this is the end\n");
+ }
+
+ Test fieldKeys()
+ {
+ RecordParser p(record);
+ assert_eq(p.name(0), "A");
+ assert_eq(p.name(1), "D");
+ assert_eq(p.name(2), "B");
+ assert_eq(p.name(3), "C");
+ assert_eq(p.name(4), "Desc");
+ }
+
+ Test fieldValues()
+ {
+ RecordParser p(record);
+ assert_eq(p[0], "");
+ assert_eq(p[1], "da de di do du");
+ assert_eq(p[2], "b");
+ assert_eq(p[3], "c");
+ assert_eq(p[4], "this is the beginning\n this is the continuation\n this is the end");
+ }
+
+ // Check that the field search by name finds all the fields
+ Test findByName()
+ {
+ RecordParser p(record);
+
+ assert_eq(p.index("A"), 0u);
+ assert_eq(p.index("D"), 1u);
+ assert_eq(p.index("B"), 2u);
+ assert_eq(p.index("C"), 3u);
+ assert_eq(p.index("Desc"), 4u);
+
+ assert_eq(p.name(p.index("A")), "A");
+ assert_eq(p.name(p.index("B")), "B");
+ assert_eq(p.name(p.index("C")), "C");
+ assert_eq(p.name(p.index("D")), "D");
+ assert_eq(p.name(p.index("Desc")), "Desc");
+ }
+
+ Test indexing()
+ {
+ RecordParser p(record);
+ assert_eq(p["A"], "");
+ assert_eq(p["B"], "b");
+ assert_eq(p["C"], "c");
+ assert_eq(p["D"], "da de di do du");
+ assert_eq(p["Desc"], "this is the beginning\n this is the continuation\n this is the end");
+ }
+
+ Test missingBehaviour()
+ {
+ RecordParser p(record);
+ // Missing fields give empty strings
+ assert_eq(p.field(100), "");
+ assert_eq(p.name(100), "");
+ assert_eq(p[100], "");
+ assert_eq(p["Missing"], "");
+ }
+
+ // Check that scanning twice replaces the old fields
+ Test rescan()
+ {
+ std::string record =
+ "A: a\n"
+ "B: b\n"
+ "C: c\n";
+
+ RecordParser p(record);
+ assert_eq(p.size(), 3u);
+ assert_eq(p["A"], "a");
+ assert_eq(p["B"], "b");
+ assert_eq(p["C"], "c");
+
+ std::string record1 =
+ "Foo: bar\n"
+ "A: different\n";
+
+ p.scan(record1);
+
+ //for (size_t i = 0; i < p.size(); ++i)
+ // cerr << ">> " << i << "==" << p.index(p.name(i)) << " " << p.name(i) << " " << p[i] << endl;
+
+ assert_eq(p.size(), 2u);
+ assert_eq(p["A"], "different");
+ assert_eq(p["B"], "");
+ assert_eq(p["C"], "");
+ assert_eq(p["Foo"], "bar");
+ }
+
+ // Real-life example
+ Test realLife()
+ {
+ string record =
+ "Package: apt\n"
+ "Priority: important\n"
+ "Section: admin\n"
+ "Installed-Size: 4368\n"
+ "Maintainer: APT Development Team <deity@lists.debian.org>\n"
+ "Architecture: amd64\n"
+ "Version: 0.6.46.4-0.1\n"
+ "Replaces: libapt-pkg-doc (<< 0.3.7), libapt-pkg-dev (<< 0.3.7)\n"
+ "Provides: libapt-pkg-libc6.3-6-3.11\n"
+ "Depends: libc6 (>= 2.3.5-1), libgcc1 (>= 1:4.1.1-12), libstdc++6 (>= 4.1.1-12), debian-archive-keyring\n"
+ "Suggests: aptitude | synaptic | gnome-apt | wajig, dpkg-dev, apt-doc, bzip2\n"
+ "Filename: pool/main/a/apt/apt_0.6.46.4-0.1_amd64.deb\n"
+ "Size: 1436478\n"
+ "MD5sum: 1776421f80d6300c77a608e77a9f4a15\n"
+ "SHA1: 1bd7337d2df56d267632cf72ac930c0a4895898f\n"
+ "SHA256: b92442ab60046b4d0728245f39cc932f26e17db9f7933a5ec9aaa63172f51fda\n"
+ "Description: Advanced front-end for dpkg\n"
+ " This is Debian's next generation front-end for the dpkg package manager.\n"
+ " It provides the apt-get utility and APT dselect method that provides a\n"
+ " simpler, safer way to install and upgrade packages.\n"
+ " .\n"
+ " APT features complete installation ordering, multiple source capability\n"
+ " and several other unique features, see the Users Guide in apt-doc.\n"
+ "Build-Essential: yes\n"
+ "Tag: admin::package-management, filetransfer::ftp, filetransfer::http, hardware::storage:cd, interface::commandline, network::client, protocol::{ftp,http,ipv6}, role::program, suite::debian, use::downloading, use::searching, works-with::software:package\n";
+ RecordParser p(record);
+
+ assert_eq(p.size(), 19u);
+
+ string rec1;
+ for (size_t i = 0; i < p.size(); ++i)
+ rec1 += p.field(i);
+ assert_eq(record, rec1);
+ }
+
+ // Various buffer termination patterns
+ Test bufferTermination()
+ {
+ std::string record =
+ "A: a\n"
+ "B: b";
+
+ RecordParser p(record);
+ assert_eq(p.size(), 2u);
+ assert_eq(p["A"], "a");
+ assert_eq(p["B"], "b");
+ }
+
+ Test bufferTermination2()
+ {
+ std::string record =
+ "A: a\n"
+ "B: b\n\n";
+
+ RecordParser p(record);
+ assert_eq(p.size(), 2u);
+ assert_eq(p["A"], "a");
+ assert_eq(p["B"], "b");
+ }
+
+ Test bufferTermination3()
+ {
+ std::string record =
+ "A: a\n"
+ "B: b\n\n"
+ "C: c\n";
+
+ RecordParser p(record);
+ assert_eq(p.size(), 2u);
+ assert_eq(p["A"], "a");
+ assert_eq(p["B"], "b");
+ }
+
+};
+
+// vim:set ts=4 sw=4:
diff --git a/ept/apt/version.cc b/ept/apt/version.cc
new file mode 100644
index 0000000..2b002c1
--- /dev/null
+++ b/ept/apt/version.cc
@@ -0,0 +1,87 @@
+/** \file
+ * Provide a very lightweight Version class that represent a package with a
+ * version, with very cheap value copy operations.
+ */
+
+/*
+ * Copyright (C) 2007 Enrico Zini <enrico@enricozini.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/apt/version.h>
+#include <apt-pkg/debversion.h>
+
+using namespace std;
+
+namespace ept {
+namespace apt {
+
+std::string Version::upstreamVersion() const
+{
+ // Skip the epoch, if it is there
+ size_t start = m_version.find(':');
+ if (start == string::npos)
+ start = 0;
+ else
+ ++start;
+
+ // Skip everything after the trailing '-', if it is there
+ size_t end = m_version.rfind('-');
+ if (end == string::npos)
+ end = m_version.size();
+
+ return m_version.substr(start, end-start);
+}
+
+/* Version comparison by Debian policy */
+
+bool Version::operator<=(const Version& pkg) const
+{
+ if (name() < pkg.name())
+ return true;
+ if (name() == pkg.name())
+ return debVS.CmpVersion(version(), pkg.version()) <= 0;
+ return false;
+}
+bool Version::operator<(const Version& pkg) const
+{
+ if (name() < pkg.name())
+ return true;
+ if (name() == pkg.name())
+ return debVS.CmpVersion(version(), pkg.version()) < 0;
+ return false;
+}
+bool Version::operator>=(const Version& pkg) const
+{
+ if (name() > pkg.name())
+ return true;
+ if (name() == pkg.name())
+ return debVS.CmpVersion(version(), pkg.version()) >= 0;
+ return false;
+}
+bool Version::operator>(const Version& pkg) const
+{
+ if (name() > pkg.name())
+ return true;
+ if (name() == pkg.name())
+ return debVS.CmpVersion(version(), pkg.version()) > 0;
+ return false;
+}
+
+}
+}
+
+// vim:set ts=4 sw=4:
diff --git a/ept/apt/version.h b/ept/apt/version.h
new file mode 100644
index 0000000..ff8a0ac
--- /dev/null
+++ b/ept/apt/version.h
@@ -0,0 +1,94 @@
+#ifndef EPT_APT_VERSION_H
+#define EPT_APT_VERSION_H
+
+/** \file
+ * Representation of a package with a version
+ */
+
+/*
+ * Copyright (C) 2007 Enrico Zini <enrico@enricozini.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <string>
+
+namespace ept {
+namespace apt {
+
+/**
+ * Lightweight Version class that represent a package with a version, with very
+ * cheap value copy operations.
+ *
+ * This class can be used to query package information from various information
+ * sources. The purpose is create a middle ground that makes sure that all
+ * sort of different information sources about packages are referring to the
+ * same package.
+ */
+class Version
+{
+protected:
+ std::string m_name;
+ std::string m_version;
+
+public:
+ /**
+ * Create an invalid Version
+ */
+ Version() {}
+
+ /**
+ * Create a Version from strings
+ */
+ Version(const std::string& name, const std::string& version)
+ : m_name(name), m_version(version) {}
+
+ /**
+ * Return the package name
+ */
+ std::string name() const { return m_name; }
+
+ /**
+ * Return the package version, or the empty string if this is a
+ * versionless package.
+ */
+ std::string version() const { return m_version; }
+
+ /**
+ * Return the upstream part of the version
+ */
+ std::string upstreamVersion() const;
+
+ /**
+ * Return true if this package contains a valid value
+ */
+ bool isValid() const { return !m_name.empty() && !m_version.empty(); }
+
+ /**
+ * Comparison operators
+ */
+ bool operator==(const Version& pkg) const { return m_name == pkg.m_name && m_version == pkg.m_version; }
+ bool operator!=(const Version& pkg) const { return m_name != pkg.m_name || m_version != pkg.m_version; }
+ bool operator<=(const Version& pkg) const;
+ bool operator<(const Version& pkg) const;
+ bool operator>=(const Version& pkg) const;
+ bool operator>(const Version& pkg) const;
+};
+
+}
+}
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/ept/apt/version.test.h b/ept/apt/version.test.h
new file mode 100644
index 0000000..a06a5c6
--- /dev/null
+++ b/ept/apt/version.test.h
@@ -0,0 +1,136 @@
+/*
+ * Copyright (C) 2007 Enrico Zini <enrico@enricozini.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/test.h>
+#include <ept/apt/version.h>
+
+using namespace std;
+using namespace ept::apt;
+
+struct TestAptVersion {
+
+ // Basic test for invalid version
+ Test invalid()
+ {
+ Version test;
+
+ assert_eq(test.name(), "");
+ assert_eq(test.version(), "");
+ assert_eq(test.isValid(), false);
+
+ string p = test.name();
+
+ assert_eq(p, string());
+ }
+
+ // Basic test for version
+ Test basic()
+ {
+ Version test("test", "1.0");
+
+ assert_eq(test.name(), "test");
+ assert_eq(test.version(), "1.0");
+ assert_eq(test.isValid(), true);
+
+ string p = test.name();
+
+ assert_eq(p, "test");
+
+ Version v(p, "1.1");
+ assert_eq(v.name(), "test");
+ assert_eq(v.version(), "1.1");
+ assert_eq(v.isValid(), true);
+ }
+
+ // Comparison semanthics
+ Test comparison()
+ {
+ Version test("test", "1.0");
+ Version test1("test", "1.0");
+
+ assert(test == test1);
+ assert(! (test != test1));
+ assert(! (test < test1));
+ assert(! (test > test1));
+ assert(test <= test1);
+ assert(test >= test1);
+
+
+ Version test2("test2", "1.0");
+
+ assert(test != test2);
+ assert(test != test2);
+ assert(test < test2);
+ assert(! (test > test2));
+ assert(test <= test2);
+ assert(! (test >= test2));
+
+
+ Version test3("test", "2.0");
+
+ assert(test != test3);
+ assert(test != test3);
+ assert(test < test3);
+ assert(! (test > test3));
+ assert(test <= test3);
+ assert(! (test >= test3));
+ }
+
+ // Value-copy semanthics
+ Test valueCopy()
+ {
+ Version test("test", "1.0");
+ Version test1 = test;
+
+ assert(test == test1);
+
+ Version test2;
+ test2 = test;
+ assert(test == test2);
+ assert(test1 == test2);
+
+ Version test3("test", "1.0");
+ assert(test == test3);
+ assert(test1 == test3);
+ assert(test2 == test3);
+ }
+
+ // Extraction of upstream version
+ Test upstreamVersion()
+ {
+ assert_eq(Version("a", "10.0").upstreamVersion(), "10.0");
+ assert_eq(Version("a", "10.0-1").upstreamVersion(), "10.0");
+ assert_eq(Version("a", "10.0~foo.1-1.0").upstreamVersion(), "10.0~foo.1");
+ assert_eq(Version("a", "1.0:10.0~foo.1-1.0").upstreamVersion(), "10.0~foo.1");
+ }
+
+ // Debian policy comparison semanthics
+ Test policyComparison()
+ {
+ assert(Version("a", "10.0") > Version("a", "2.1"));
+ assert(Version("a", "1:10.0") < Version("a", "2:2.1"));
+ assert(Version("a", "10.0-1") < Version("a", "10.0-2"));
+ assert(Version("a", "10.0-2") > Version("a", "10.0-1"));
+ assert(Version("a", "1:10.0-1") <= Version("a", "1:10.0-1"));
+ assert(Version("a", "1:10.0-1") >= Version("a", "1:10.0-1"));
+ // TODO: add more
+ }
+
+};
+
+// vim:set ts=4 sw=4:
diff --git a/ept/config.h.cmake-in b/ept/config.h.cmake-in
new file mode 100644
index 0000000..bbb001c
--- /dev/null
+++ b/ept/config.h.cmake-in
@@ -0,0 +1,7 @@
+// TODO: /var/lib needs to be parametrised
+#define DEBTAGS_DB_DIR "/var/lib/debtags"
+#define POPCON_DB_DIR "/var/lib/popcon"
+#define TEXTSEARCH_DB_DIR "/var/lib/apt-xapian-index"
+#define TEST_ENV_DIR "${TEST_ENV_DIR}"
+#define VERSION "${VERSION}"
+#cmakedefine RPM
diff --git a/ept/debtags/debtags.cc b/ept/debtags/debtags.cc
new file mode 100644
index 0000000..331c132
--- /dev/null
+++ b/ept/debtags/debtags.cc
@@ -0,0 +1,250 @@
+/** -*- C++ -*-
+ * @file
+ * @author Enrico Zini (enrico) <enrico@enricozini.org>
+ */
+
+/*
+ * System tag database
+ *
+ * Copyright (C) 2003-2008 Enrico Zini <enrico@debian.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/debtags/debtags.h>
+#include <ept/debtags/maint/path.h>
+#include <ept/debtags/maint/serializer.h>
+#include <ept/debtags/maint/debtagsindexer.h>
+
+#include <tagcoll/input/stdio.h>
+#include <tagcoll/TextFormat.h>
+
+#include <wibble/sys/fs.h>
+#include <wibble/string.h>
+
+#include <iostream>
+#include <sstream>
+
+#include <sys/wait.h> // WIFEXITED WEXITSTATUS
+#include <sys/types.h> // getpwuid, stat, mkdir, getuid
+#include <sys/stat.h> // stat, mkdir
+#include <pwd.h> // getpwuid
+#include <unistd.h> // stat, getuid
+
+
+using namespace std;
+using namespace tagcoll;
+using namespace wibble;
+
+namespace ept {
+namespace debtags {
+
+Debtags::Debtags(bool editable)
+ : m_coll(m_rocoll)
+{
+ std::string tagfname;
+ std::string idxfname;
+
+ if (!DebtagsIndexer::obtainWorkingDebtags(vocabulary(), tagfname, idxfname))
+ {
+ m_timestamp = 0;
+ return;
+ } else {
+ m_timestamp = Path::timestamp(idxfname);
+
+ mastermmap.init(idxfname);
+
+ // Initialize the readonly index
+ m_pkgid.init(mastermmap, 0);
+ m_rocoll.init(mastermmap, 1, 2);
+ }
+
+ // Initialize the patch collection layer
+ rcdir = Path::debtagsUserSourceDir();
+
+ string patchFile = str::joinpath(rcdir, "patch");
+ if (Path::access(patchFile, F_OK) == 0)
+ {
+ input::Stdio in(patchFile);
+ PatchList<int, int> patch;
+ textformat::parsePatch(in, patchStringToInt(m_pkgid, vocabulary(), inserter(patch)));
+ m_coll.setChanges(patch);
+ }
+}
+
+tagcoll::PatchList<std::string, Tag> Debtags::changes() const
+{
+ tagcoll::PatchList<int, int> patches = m_coll.changes();
+ tagcoll::PatchList<std::string, Tag> res;
+
+ for (tagcoll::PatchList<int, int>::const_iterator i = patches.begin();
+ i != patches.end(); ++i)
+ {
+ std::string pkg = packageByID(i->second.item);
+ if (pkg.empty())
+ continue;
+
+ res.addPatch(tagcoll::Patch<std::string, Tag>(pkg,
+ vocabulary().tagsByID(i->second.added),
+ vocabulary().tagsByID(i->second.removed)));
+ }
+
+ return res;
+}
+
+
+#if 0
+bool Debtags::hasTagDatabase()
+{
+ if (Path::access(Path::tagdb(), R_OK) == -1)
+ {
+ std::cerr << "Missing tag database " << Path::tagdb() << std::endl;
+ return false;
+ }
+ if (Path::access(Path::tagdbIndex(), R_OK) == -1)
+ {
+ std::cerr << "Missing tag database index " << Path::tagdbIndex() << std::endl;
+ return false;
+ }
+ if (Path::access(Path::vocabulary(), R_OK) == -1)
+ {
+ std::cerr << "Missing tag vocabulary " << Path::vocabulary() << std::endl;
+ return false;
+ }
+ if (Path::access(Path::vocabularyIndex(), R_OK) == -1)
+ {
+ std::cerr << "Missing index for tag vocabulary " << Path::vocabularyIndex() << std::endl;
+ return false;
+ }
+ return true;
+}
+#endif
+
+
+void Debtags::savePatch()
+{
+ PatchList<std::string, std::string> spatch;
+ m_coll.changes().output(patchIntToString(m_pkgid, vocabulary(), tagcoll::inserter(spatch)));
+ savePatch(spatch);
+}
+
+void Debtags::savePatch(const PatchList<std::string, std::string>& patch)
+{
+ std::string patchFile = str::joinpath(rcdir, "patch");
+ std::string backup = patchFile + "~";
+
+ wibble::sys::fs::mkFilePath(patchFile);
+
+ if (access(patchFile.c_str(), F_OK) == 0)
+ if (rename(patchFile.c_str(), backup.c_str()) == -1)
+ throw wibble::exception::System("Can't rename " + patchFile + " to " + backup);
+
+ try {
+ FILE* out = fopen(patchFile.c_str(), "w");
+ if (out == 0)
+ throw wibble::exception::System("Can't write to " + patchFile);
+
+ textformat::outputPatch(patch, out);
+
+ fclose(out);
+ } catch (std::exception& e) {
+ if (rename(backup.c_str(), patchFile.c_str()) == -1)
+ std::cerr << "Warning: Cannot restore previous backup copy: " << e.what() << std::endl;
+ throw;
+ }
+}
+
+void Debtags::savePatch(const PatchList<std::string, Tag>& patch)
+{
+ PatchList<std::string, std::string> spatch;
+ // patch.output(patchToString<C>(m_pkgs, m_pkgidx, m_tags, tagcoll::inserter(spatch)));
+ savePatch(spatch);
+}
+
+void Debtags::sendPatch()
+{
+ PatchList<std::string, std::string> spatch;
+ m_coll.changes().output(patchIntToString(m_pkgid, vocabulary(), tagcoll::inserter(spatch)));
+ if (!spatch.empty())
+ {
+ sendPatch(spatch);
+ }
+}
+
+void Debtags::sendPatch(const PatchList<std::string, Tag>& patch)
+{
+ PatchList<std::string, std::string> spatch;
+ // patch.output(patchToString<C>(m_pkgs, m_pkgidx, m_tags, tagcoll::inserter(spatch)));
+ sendPatch(spatch);
+}
+
+void Debtags::sendPatch(const PatchList<std::string, std::string>& patch)
+{
+ static const char* cmd = "/usr/sbin/sendmail -t";
+ FILE* out = popen(cmd, "w");
+ if (out == 0)
+ throw wibble::exception::System(std::string("trying to run `") + cmd + "'");
+
+ struct passwd* udata = getpwuid(getuid());
+
+ fprintf(out,
+ "To: enrico-debtags@debian.org\n"
+ "Bcc: %s\n"
+ "Subject: Tag patch\n"
+ "Mime-Version: 1.0\n"
+ "Content-Type: multipart/mixed; boundary=\"9amGYk9869ThD9tj\"\n"
+ "Content-Disposition: inline\n"
+ "X-Mailer: debtags-edit\n\n"
+ "This mail contains a Debtags patch for the central archive\n\n"
+ "--9amGYk9869ThD9tj\n"
+ "Content-Type: text/plain; charset=utf-8\n"
+ "Content-Disposition: inline\n\n"
+ "-- DEBTAGS DIFF V0.1 --\n", udata->pw_name);
+
+ textformat::outputPatch(patch, out);
+
+ fprintf(out, "\n--9amGYk9869ThD9tj\n");
+
+ int res = pclose(out);
+ if (!WIFEXITED(res) || WEXITSTATUS(res) != 0)
+ {
+ std::stringstream str;
+ str << res;
+ throw wibble::exception::Consistency("checking mailer exit status", "sendmail returned nonzero (" + str.str() + "): the mail may have not been sent");
+ }
+}
+
+
+template<typename OUT>
+void Debtags::outputSystem(const OUT& cons)
+{
+ m_rocoll.output(intToPkg(m_pkgid, vocabulary(), cons));
+}
+
+template<typename OUT>
+void Debtags::outputPatched(const OUT& cons)
+{
+ m_coll.output(intToPkg(m_pkgid, vocabulary(), cons));
+}
+
+}
+}
+
+#include <tagcoll/patch.tcc>
+#include <tagcoll/coll/patched.tcc>
+#include <tagcoll/TextFormat.tcc>
+//#include <tagcoll/stream/filters.tcc>
+
+// vim:set ts=4 sw=4:
diff --git a/ept/debtags/debtags.h b/ept/debtags/debtags.h
new file mode 100644
index 0000000..c46786e
--- /dev/null
+++ b/ept/debtags/debtags.h
@@ -0,0 +1,417 @@
+// -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+/* @file
+ * @author Enrico Zini (enrico) <enrico@enricozini.org>
+ */
+
+/*
+ * libpkg Debtags data provider
+ *
+ * Copyright (C) 2003-2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#ifndef EPT_DEBTAGS_DEBTAGS_H
+#define EPT_DEBTAGS_DEBTAGS_H
+
+#include <ept/debtags/tag.h>
+#include <ept/debtags/vocabulary.h>
+#include <ept/debtags/maint/pkgid.h>
+
+#include <tagcoll/coll/base.h>
+#include <tagcoll/coll/intdiskindex.h>
+#include <tagcoll/coll/patched.h>
+
+namespace ept {
+namespace debtags {
+class Debtags;
+}
+}
+
+namespace tagcoll {
+template< typename _, typename _1 > class PatchList;
+
+namespace coll {
+
+template<>
+struct coll_traits< ept::debtags::Debtags >
+{
+ typedef std::string item_type;
+ typedef ept::debtags::Tag tag_type;
+ typedef std::set< ept::debtags::Tag > tagset_type;
+ typedef std::set< std::string > itemset_type;
+};
+
+}
+}
+
+namespace ept {
+namespace debtags {
+
+/**
+ * Access the on-disk Debtags tag database.
+ *
+ * The database is normally found in /var/lib/debtags.
+ *
+ * Tags and Facets are returned as Tag and Facet objects. The objects follow
+ * the flyweight pattern and access the data contained in the Vocabulary
+ * instantiated inside Debtags.
+ *
+ * It is possible to get a reference to the Vocabulary object using the
+ * vocabulary() method.
+ */
+class Debtags : public tagcoll::coll::Collection<Debtags>
+{
+protected:
+ // Master mmap index container
+ tagcoll::diskindex::MasterMMap mastermmap;
+
+ // Debtags database
+ tagcoll::coll::IntDiskIndex m_rocoll;
+ tagcoll::coll::Patched< tagcoll::coll::IntDiskIndex > m_coll;
+
+ // Package name to ID mapping
+ PkgId m_pkgid;
+
+ // Tag vocabulary
+ Vocabulary m_voc;
+
+ // User rc directory to store patches
+ std::string rcdir;
+
+ // Last modification timestamp of the index
+ time_t m_timestamp;
+
+ std::string packageByID(int id) const
+ {
+ return m_pkgid.byID(id);
+ }
+
+ template<typename IDS>
+ std::set<std::string> packagesById(const IDS& ids) const
+ {
+ std::set<std::string> pkgs;
+ for (typename IDS::const_iterator i = ids.begin();
+ i != ids.end(); ++i)
+ pkgs.insert(packageByID(*i));
+ return pkgs;
+ }
+
+ int idByPackage(const std::string& pkg) const
+ {
+ return m_pkgid.byName(pkg);
+ }
+
+ template<typename PKGS>
+ std::set<int> idsByPackages(const PKGS& pkgs) const
+ {
+ std::set<int> ids;
+ for (typename PKGS::const_iterator i = pkgs.begin();
+ i != pkgs.end(); ++i)
+ ids.insert(idByPackage(*i));
+ return ids;
+ }
+
+public:
+ typedef tagcoll::coll::Patched< tagcoll::coll::IntDiskIndex > coll_type;
+ typedef std::pair< std::string, std::set<Tag> > value_type;
+
+ class const_iterator
+ {
+ const Debtags& coll;
+ Debtags::coll_type::const_iterator ci;
+ mutable const Debtags::value_type* cached_val;
+
+ protected:
+ const_iterator(const Debtags& coll,
+ const Debtags::coll_type::const_iterator& ci)
+ : coll(coll), ci(ci), cached_val(0) {}
+
+ public:
+ ~const_iterator()
+ {
+ if (cached_val)
+ delete cached_val;
+ }
+ const Debtags::value_type operator*() const
+ {
+ if (cached_val)
+ return *cached_val;
+
+ return make_pair(coll.packageByID(ci->first), coll.vocabulary().tagsByID(ci->second));
+ }
+ const Debtags::value_type* operator->() const
+ {
+ if (cached_val)
+ return cached_val;
+ return cached_val = new Debtags::value_type(*(*this));
+ }
+ const_iterator& operator++()
+ {
+ ++ci;
+ if (cached_val)
+ {
+ delete cached_val;
+ cached_val = 0;
+ }
+ return *this;
+ }
+ bool operator==(const const_iterator& iter) const
+ {
+ return ci == iter.ci;
+ }
+ bool operator!=(const const_iterator& iter) const
+ {
+ return ci != iter.ci;
+ }
+
+ friend class Debtags;
+ };
+ const_iterator begin() const { return const_iterator(*this, m_coll.begin()); }
+ const_iterator end() const { return const_iterator(*this, m_coll.end()); }
+
+ /**
+ * Create a new accessor for the on-disk Debtags database
+ *
+ * \param editable
+ * Specifies if recording of modifications should be enabled. If editable
+ * is true, then the local state directory will be created when the object
+ * is instantiated.
+ */
+ Debtags(bool editable = false);
+ ~Debtags() {}
+
+ /// Get the timestamp of when the index was last updated
+ time_t timestamp() const { return m_timestamp; }
+
+ /// Return true if this data source has data, false if it's empty
+ bool hasData() const { return m_timestamp != 0; }
+
+ coll_type& tagdb() { return m_coll; }
+ const coll_type& tagdb() const { return m_coll; }
+ tagcoll::PatchList<std::string, Tag> changes() const;
+
+#if 0
+ template<typename ITEMS, typename TAGS>
+ void insert(const ITEMS& items, const TAGS& tags)
+ {
+ for (typename ITEMS::const_iterator i = items.begin();
+ i != items.end(); ++i)
+ m_changes.addPatch(Patch(*i, tags, TagSet()));
+ }
+
+ template<typename ITEMS>
+ void insert(const ITEMS& items, const wibble::Empty<Tag>& tags)
+ {
+ // Nothing to do in this case
+ }
+
+ /**
+ * Get the changes that have been applied to this collection
+ */
+ const Patches& changes() const { return m_changes; }
+
+ /**
+ * Throw away all changes previously applied to this collection
+ */
+ void resetChanges() { m_changes.clear(); }
+
+ /**
+ * Set the changes list to a specific patch list
+ */
+ void setChanges(const Patches& changes);
+
+ /**
+ * Add a specific patch list to the changes list
+ */
+ void addChanges(const Patches& changes);
+#endif
+
+ bool hasTag(const Tag& tag) const { return m_coll.hasTag(tag.id()); }
+
+ std::set<Tag> getTagsOfItem(const std::string& item) const
+ {
+ int id = idByPackage(item);
+ if (id == -1) return std::set<Tag>();
+ return vocabulary().tagsByID(m_coll.getTagsOfItem(id));
+ }
+
+ template<typename ITEMS>
+ std::set<Tag> getTagsOfItems(const ITEMS& items) const
+ {
+ return vocabulary().tagsByID(m_coll.getTagsOfItems(idsByPackages(items)));
+ }
+
+ std::set<std::string> getItemsHavingTag(const Tag& tag) const
+ {
+ return packagesById(m_coll.getItemsHavingTag(tag.id()));
+ }
+ template<typename TAGS>
+ std::set<std::string> getItemsHavingTags(const TAGS& tags) const
+ {
+ std::set<int> itags;
+ for (typename TAGS::const_iterator i = tags.begin();
+ i != tags.end(); ++i)
+ itags.insert(i->id());
+ return packagesById(m_coll.getItemsHavingTags(itags));
+ }
+
+#if 0
+ ItemSet getTaggedItems() const;
+#endif
+ std::set<Tag> getAllTags() const
+ {
+ return vocabulary().tagsByID(m_coll.getAllTags());
+ }
+
+ /// Access the vocabulary in use
+ Vocabulary& vocabulary() { return m_voc; }
+ /// Access the vocabulary in use
+ const Vocabulary& vocabulary() const { return m_voc; }
+
+ /**
+ * Access the PkgId in use.
+ *
+ * \note Future implementations may not rely on a PkgId
+ */
+ PkgId& pkgid() { return m_pkgid; }
+ /**
+ * Access the PkgId in use.
+ *
+ * \note Future implementations may not rely on a PkgId
+ */
+ const PkgId& pkgid() const { return m_pkgid; }
+
+ int getCardinality(const Tag& tag) const
+ {
+ return m_coll.getCardinality(tag.id());
+ }
+
+ void applyChange(const tagcoll::PatchList<std::string, Tag>& change)
+ {
+ using namespace tagcoll;
+ PatchList<int, int> intp;
+ for (PatchList<std::string, Tag>::const_iterator i = change.begin();
+ i != change.end(); ++i)
+ {
+ Patch<int, int> p(idByPackage(i->first));
+ for (std::set<Tag>::const_iterator j = i->second.added.begin();
+ j != i->second.added.end(); ++j)
+ p.add(j->id());
+ for (std::set<Tag>::const_iterator j = i->second.removed.begin();
+ j != i->second.removed.end(); ++j)
+ p.remove(j->id());
+ intp.addPatch(p);
+ }
+ m_coll.applyChange(intp);
+ }
+
+#if 0
+ template<typename OUT>
+ void output(OUT out) const
+ {
+ for (const_iterator i = begin(); i != end(); ++i)
+ {
+ *out = *i;
+ ++out;
+ }
+ }
+#endif
+
+
+
+ /**
+ * Check if the tag database has been created (i.e. if something
+ * equivalend to debtags update has been run)
+ */
+ //static bool hasTagDatabase();
+
+
+ /**
+ * Save in the state storage directory a patch that can be used to turn
+ * the system database into the collection given
+ */
+ void savePatch();
+
+ /**
+ * Save in the state storage directory a patch to turn the system database
+ * into the collection given
+ */
+ void savePatch(const tagcoll::PatchList<std::string, std::string>& patch);
+
+ /**
+ * Save in the state storage directory a patch to turn the system database
+ * into the collection given
+ */
+ void savePatch(const tagcoll::PatchList<std::string, Tag>& patch);
+
+ /**
+ * Send to the central archive a patch that can be used to turn
+ * the system database into the collection given
+ */
+ void sendPatch();
+
+ /**
+ * Send the given patch to the central archive
+ */
+ void sendPatch(const tagcoll::PatchList<std::string, std::string>& patch);
+
+ /**
+ * Send the given patch to the central archive
+ */
+ void sendPatch(const tagcoll::PatchList<std::string, Tag>& patch);
+
+
+ /**
+ * Output the current Debian tags database to a consumer of <std::string, Tag>
+ *
+ * \note The collection is sent to 'cons' without merging repeated items
+ */
+ template<typename OUT>
+ void outputSystem(const OUT& cons);
+
+ /**
+ * Output the given tag file to a consumer of <std::string, Tag>
+ *
+ * \note The collection is sent to 'cons' without merging repeated items
+ */
+ template<typename OUT>
+ void outputSystem(const std::string& filename, const OUT& out);
+
+ /**
+ * Output the current Debian tags database, patched with local patch,
+ * to a Consumer of <std::string, Tag>
+ *
+ * \note The collection is sent to 'cons' without merging repeated items
+ */
+ template<typename OUT>
+ void outputPatched(const OUT& cons);
+
+ /**
+ * Output the given tag file, patched with local patch,
+ * to a Consumer of <std::string, Tag>
+ *
+ * \note The collection is sent to 'cons' without merging repeated items
+ */
+ template<typename OUT>
+ void outputPatched(const std::string& filename, const OUT& out);
+};
+
+
+}
+}
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/ept/debtags/debtags.tcc b/ept/debtags/debtags.tcc
new file mode 100644
index 0000000..0963d09
--- /dev/null
+++ b/ept/debtags/debtags.tcc
@@ -0,0 +1,89 @@
+/** -*- C++ -*-
+ * @file
+ * @author Enrico Zini (enrico) <enrico@enricozini.org>
+ */
+
+/*
+ * libpkg Debtags data provider
+ *
+ * Copyright (C) 2003-2007 Enrico Zini <enrico@debian.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#ifndef EPT_DEBTAGS_DEBTAGS_TCC
+#define EPT_DEBTAGS_DEBTAGS_TCC
+
+#include <ept/debtags/debtags.h>
+#include <ept/debtags/maint/serializer.h>
+
+#include <tagcoll/input/stdio.h>
+#include <tagcoll/stream/patcher.h>
+#include <tagcoll/TextFormat.h>
+
+namespace ept {
+namespace debtags {
+
+template<typename OUT>
+void Debtags::outputSystem(const OUT& cons)
+{
+ m_rocoll.output(intToPkg(m_pkgid, vocabulary(), cons));
+}
+
+template<typename OUT>
+void Debtags::outputSystem(const std::string& filename, const OUT& out)
+{
+ if (filename == "-")
+ {
+ tagcoll::input::Stdio input(stdin, "<stdin>");
+ tagcoll::textformat::parse(input, ept::debtags::stringToPkg(m_pkgid, m_voc, out));
+ }
+ else
+ {
+ tagcoll::input::Stdio input(filename);
+ tagcoll::textformat::parse(input, ept::debtags::stringToPkg(m_pkgid, m_voc, out));
+ }
+}
+
+template<typename OUT>
+void Debtags::outputPatched(const OUT& cons)
+{
+ m_coll.output(intToPkg(m_pkgid, vocabulary(), cons));
+}
+
+template<typename OUT>
+void Debtags::outputPatched(const std::string& filename, const OUT& out)
+{
+ const tagcoll::PatchList<string, Tag>& patch = m_coll.changes();
+ if (filename == "-")
+ {
+ tagcoll::input::Stdio input(stdin, "<stdin>");
+ tagcoll::textformat::parse(input, ept::debtags::stringToPkg(m_pkgid, m_voc, patcher(patch, out)));
+ }
+ else
+ {
+ tagcoll::input::Stdio input(filename);
+ tagcoll::textformat::parse(input, ept::debtags::stringToPkg(m_pkgid, m_voc, patcher(patch, out)));
+ }
+}
+
+}
+}
+
+#include <tagcoll/coll/patched.tcc>
+
+#endif
+
+// vim:set ts=4 sw=4:
diff --git a/ept/debtags/debtags.test.h b/ept/debtags/debtags.test.h
new file mode 100644
index 0000000..5408e1a
--- /dev/null
+++ b/ept/debtags/debtags.test.h
@@ -0,0 +1,282 @@
+// -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+/**
+ * @file
+ * @author Enrico Zini (enrico) <enrico@enricozini.org>
+ */
+
+/*
+ * Test for the Debtags data provider
+ *
+ * Copyright (C) 2003-2007 Enrico Zini <enrico@debian.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+
+#include <ept/debtags/debtags.h>
+
+#include <tagcoll/coll/simple.h>
+#include <tagcoll/stream/sink.h>
+
+#include <wibble/operators.h>
+
+#include <ept/test.h>
+
+#ifndef EPT_DEBTAGS_TESTH
+#define EPT_DEBTAGS_TESTH
+
+using namespace tagcoll;
+using namespace std;
+using namespace ept;
+using namespace ept::debtags;
+using namespace wibble::operators;
+
+struct TestDebtags : DebtagsTestEnvironment
+{
+ Debtags debtags;
+
+ TestDebtags() {}
+
+ Vocabulary& voc() { return debtags.vocabulary(); }
+
+ Test _1() {
+ for (Debtags::const_iterator i = debtags.begin(); i != debtags.end(); ++i)
+ {
+ *i;
+ i->first;
+ i->second;
+ }
+ int items = 0, tags = 0;
+ debtags.outputSystem(stream::countingSink(items, tags));
+
+ int pitems = 0, ptags = 0;
+ debtags.outputPatched(stream::countingSink(pitems, ptags));
+
+ assert(items > 10);
+ assert(tags > 10);
+ assert(items <= pitems);
+ assert(tags <= ptags);
+}
+
+ Test _2()
+{
+ string p("debtags");
+ std::set<Tag> tags = debtags.getTagsOfItem(p);
+ assert( !tags.empty() );
+
+#if 0
+ for ( std::set< Tag >::iterator i = tags.begin(); i != tags.end(); ++ i ) {
+ std::cerr << i->id() << ": " << i->fullname() << std::endl;
+ }
+ std::cerr << "---" << std::endl;
+ Tag t = voc().tagByName( "interface::commandline" );
+ std::cerr << t.id() << ": " << t.fullname() << std::endl;
+#endif
+
+ assert_eq( tags.size(), 8u );
+ assert( voc().tagByName( "devel::buildtools" ) <= tags );
+ assert( voc().tagByName( "implemented-in::c++" ) <= tags );
+ assert( voc().tagByName( "interface::commandline" ) <= tags );
+ assert( voc().tagByName( "role::program" ) <= tags );
+ assert( voc().tagByName( "scope::application" ) <= tags );
+ assert( voc().tagByName( "suite::debian" ) <= tags );
+ assert( voc().tagByName( "use::searching" ) <= tags );
+ assert( voc().tagByName( "works-with::software:package" ) <= tags );
+}
+
+ Test _3()
+{
+ using namespace std;
+
+ /* Get the 'debtags' package */
+ string p("debtags");
+
+ /* Get its tags */
+ std::set<Tag> tags = debtags.getTagsOfItem(p);
+ assert(!tags.empty());
+
+ /*
+ cerr << "Intersection size: " << endl;
+ using namespace wibble::operators;
+ std::set<Tag>::const_iterator dbgi = tags.begin();
+ cerr << "* " << dbgi->fullname() << ": " << dbgi->id() << endl;
+ std::set<int> dbgres = debtags.tagdb().getItemsHavingTag(dbgi->id());
+ std::set<Package> dbgpres = debtags.getItemsHavingTag(*dbgi);
+ cerr << " #pkgs " << dbgres.size() << " == " << dbgpres.size() << endl;
+ cerr << " #isec " << dbgres.size() << " == " << dbgpres.size() << endl;
+ cerr << " "; ppset(dbgpres); cerr << endl;
+ cerr << " "; piset(dbgres); cerr << endl;
+ for (++dbgi ; dbgi != tags.end(); ++dbgi)
+ {
+ cerr << "* " << dbgi->fullname() << ": " << dbgi->id() << endl;
+ std::set<Package> dbgpkgs = debtags.getItemsHavingTag(*dbgi);
+ std::set<int> dbgids = debtags.tagdb().getItemsHavingTag(dbgi->id());
+ cerr << " "; ppset(dbgpkgs); cerr << endl;
+ cerr << " "; piset(dbgids); cerr << endl;
+ cerr << " #pkgs " << dbgpkgs.size() << " == " << dbgids.size() << endl;
+ dbgres &= dbgids;
+ dbgpres &= dbgpkgs;
+ cerr << " #isec " << dbgres.size() << " == " << dbgpres.size() << endl;
+ }
+ cerr << " " << dbgres.size() << endl << "Results: " << endl;
+ for (std::set<int>::const_iterator i = dbgres.begin(); i != dbgres.end(); ++i)
+ cerr << " " << *i << endl;
+ */
+
+
+// cerr << "Tags of debtags: ";
+// for (std::set<Tag>::const_iterator i = tags.begin(); i != tags.end(); ++i)
+// {
+// cerr << " " + i->fullname() << endl;
+// std::set<Package> packages = debtags.getItemsHavingTag(*i);
+// for (std::set<Package>::const_iterator p = packages.begin();
+// p != packages.end(); ++p)
+// cerr << " PKG " << p->name() << endl;
+// }
+// cerr << endl;
+
+ /* Get the items for the tagset of 'debtags' */
+ std::set<string> packages = debtags.getItemsHavingTags(tags);
+ //cerr << packages.size() << endl;
+ assert(!packages.empty());
+ /*
+ for ( std::set< Package >::iterator i = packages.begin(); i != packages.end(); ++ i )
+ std::cerr << i->name() << std::endl;
+ std::cerr << "---" << std::endl;
+ std::cerr << p.name() << std::endl;
+ */
+ /* They should at least contain 'debtags' */
+ assert( p <= packages );
+
+ /* Get one of the tags of 'debtags' */
+ Tag tag = *tags.begin();
+ assert(tag);
+
+ /* Get its items */
+ {
+ /* Need this workaround until I figure out how to tell the new GCC
+ * that TagDB is a TDBReadonlyDiskIndex and should behave as such
+ */
+ std::set<Tag> ts;
+ ts.insert(tag);
+ packages = debtags.getItemsHavingTags(ts);
+ }
+ //packages = c.debtags().tagdb().getItems(tag);
+ assert(!packages.empty());
+ /* They should at least contain 'debtags' */
+ assert( p <= packages );
+
+ //c.debtags().getTags(""); // XXX HACK AWW!
+}
+
+ Test _4()
+{
+ std::string patchfile = Path::debtagsUserSourceDir() + "patch";
+ unlink(patchfile.c_str());
+
+ string p("debtags");
+
+ /* Get its tags */
+ std::set<Tag> tags = debtags.getTagsOfItem(p);
+ assert(!tags.empty());
+
+ // Ensure that it's not tagged with gameplaying
+ Tag t = voc().tagByName("use::gameplaying");
+ assert(! (t <= tags) );
+
+ // Add the gameplaying tag
+ PatchList<string, Tag> change;
+ change.addPatch(Patch<string, Tag>(p, wibble::singleton(t), wibble::Empty<Tag>()));
+ debtags.applyChange(change);
+
+ // See that the patch is non empty
+ PatchList<string, Tag> tmp = debtags.changes();
+ assert(tmp.size() > 0);
+ assert_eq(tmp.size(), 1u);
+
+ // Ensure that the tag has been added
+ tags = debtags.getTagsOfItem(p);
+ assert(!tags.empty());
+
+ t = voc().tagByName("use::gameplaying");
+ assert( t <= tags );
+
+ // Save the patch
+ debtags.savePatch();
+
+ // Check that the saved patch is correct
+ FILE* in = fopen(patchfile.c_str(), "r");
+ string writtenPatch;
+ int c;
+ while ((c = getc(in)) != EOF)
+ writtenPatch += c;
+ fclose(in);
+
+ assert_eq(writtenPatch, string("debtags: +use::gameplaying\n"));
+
+ unlink(patchfile.c_str());
+
+ // Reapply the patch and see that it doesn't disrept things
+ debtags.applyChange(change);
+
+ // The patch should not have changed
+ tmp = debtags.changes();
+ assert_eq(tmp.size(), 1u);
+ assert_eq(tmp.begin()->first, p);
+ assert_eq(tmp.begin()->second.item, p);
+}
+
+// If there is no data, Debtags should work as an empty collection
+ Test _5()
+{
+ Path::OverrideDebtagsSourceDir odsd("./empty");
+ Path::OverrideDebtagsIndexDir odid("./empty");
+ Path::OverrideDebtagsUserSourceDir odusd("./empty");
+ Path::OverrideDebtagsUserIndexDir oduid("./empty");
+ Debtags empty;
+
+ assert(empty.begin() == empty.end());
+ assert_eq(empty.timestamp(), 0);
+ assert(!empty.hasData());
+
+ tagcoll::PatchList<std::string, Tag> patches = empty.changes();
+ assert(patches.empty());
+
+ set<Tag> res = empty.getTagsOfItem("apt");
+ assert(res.empty());
+ res = empty.getTagsOfItems(wibble::singleton(string("apt")));
+ assert(res.empty());
+
+ res = empty.getAllTags();
+ assert(res.empty());
+
+ tagcoll::coll::Simple<string, Tag> coll;
+ empty.outputSystem(tagcoll::coll::inserter(coll));
+ assert_eq(coll.itemCount(), 0u);
+
+ coll.clear();
+
+ empty.outputPatched(tagcoll::coll::inserter(coll));
+ assert_eq(coll.itemCount(), 0u);
+}
+
+};
+
+#include <ept/debtags/debtags.tcc>
+#include <tagcoll/coll/simple.tcc>
+
+#endif
+
+// vim:set ts=4 sw=4:
diff --git a/ept/debtags/expression.cc b/ept/debtags/expression.cc
new file mode 100644
index 0000000..4a7967c
--- /dev/null
+++ b/ept/debtags/expression.cc
@@ -0,0 +1,51 @@
+/** \file
+ * Match tag expressions against sets of Debtags Tags
+ */
+
+/*
+ * Copyright (C) 2003,2004,2005,2006,2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/debtags/expression.h>
+#include <string>
+
+namespace tagcoll
+{
+
+template<>
+bool Expression::operator()(const std::set<ept::debtags::Tag>& tags) const
+{
+ std::set<std::string> names;
+ for (std::set<ept::debtags::Tag>::const_iterator i = tags.begin();
+ i != tags.end(); ++i)
+ names.insert(i->fullname());
+ return this->m_impl->eval(names);
+}
+
+template<>
+bool Expression::operator()(const std::set<ept::debtags::Facet>& tags) const
+{
+ std::set<std::string> names;
+ for (std::set<ept::debtags::Facet>::const_iterator i = tags.begin();
+ i != tags.end(); ++i)
+ names.insert(i->name());
+ return this->m_impl->eval(names);
+}
+
+};
+
+// vim:set ts=4 sw=4:
diff --git a/ept/debtags/expression.h b/ept/debtags/expression.h
new file mode 100644
index 0000000..45eb306
--- /dev/null
+++ b/ept/debtags/expression.h
@@ -0,0 +1,42 @@
+#ifndef EPT_DEBTAGS_EXPRESSION_H
+#define EPT_DEBTAGS_EXPRESSION_H
+
+/** \file
+ * Match tag expressions against sets of Debtags Tags
+ */
+
+/*
+ * Copyright (C) 2003,2004,2005,2006,2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/debtags/tag.h>
+#include <tagcoll/expression.h>
+#include <set>
+
+namespace tagcoll
+{
+
+template<>
+bool Expression::operator()(const std::set<ept::debtags::Tag>& tags) const;
+
+template<>
+inline bool Expression::operator()(const std::set<ept::debtags::Facet>& tags) const;
+
+};
+
+#endif
+// vim:set ts=4 sw=4:
diff --git a/ept/debtags/expression.test.h b/ept/debtags/expression.test.h
new file mode 100644
index 0000000..c96fd44
--- /dev/null
+++ b/ept/debtags/expression.test.h
@@ -0,0 +1,83 @@
+/*
+ * Match tag expressions against sets of Debtags Tags
+ *
+ * Copyright (C) 2005,2006,2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <wibble/test.h>
+#include <ept/debtags/maint/path.h>
+#include <ept/debtags/expression.h>
+#include <ept/debtags/vocabulary.h>
+
+#include "debtags.test.h"
+
+using namespace tagcoll;
+using namespace std;
+using namespace ept::debtags;
+
+struct TestExpression : DebtagsTestEnvironment {
+ Vocabulary voc;
+
+ Test _1()
+{
+ set<Tag> test;
+ test.insert(voc.tagByName("use::editing"));
+ test.insert(voc.tagByName("use::viewing"));
+ test.insert(voc.tagByName("works-with::text"));
+
+ assert_eq(test.size(), 3u);
+
+ Expression e1("use::editing");
+ assert(e1(test));
+
+ Expression e2("use::editing && use::viewing");
+ assert(e2(test));
+
+ e1 = Expression("!use::editing");
+ assert(!e1(test));
+
+ e1 = Expression("use::editing || sugo");
+ assert(e1(test));
+
+ e1 = Expression("use::editing && !sugo");
+ assert(e1(test));
+
+ e1 = Expression("use::editing && !use::viewing");
+ assert(!e1(test));
+
+ e1 = Expression("(use::editing || sugo) && (use::viewing && works-with::text)");
+ assert(e1(test));
+
+ e1 = Expression("!(use::editinuse::editingra && works-with::text)");
+ assert(e1(test));
+
+ e1 = Expression("works-with::*");
+ assert(e1(test));
+
+ e1 = Expression("*::text");
+ assert(e1(test));
+
+ e1 = Expression("!*::antani");
+ assert(e1(test));
+
+ e1 = Expression("*::antani");
+ assert(!e1(test));
+}
+
+};
+
+// vim:set ts=4 sw=4:
diff --git a/ept/debtags/maint/debdbparser.cc b/ept/debtags/maint/debdbparser.cc
new file mode 100644
index 0000000..259cae4
--- /dev/null
+++ b/ept/debtags/maint/debdbparser.cc
@@ -0,0 +1,188 @@
+/*
+ * Parser for debian database files
+ *
+ * Copyright (C) 2003--2007 Enrico Zini <enrico@debian.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/debtags/maint/debdbparser.h>
+
+#include <tagcoll/input/base.h>
+
+#include <map>
+#include <ctype.h>
+
+// using namespace std;
+using namespace tagcoll;
+
+namespace ept {
+namespace debtags {
+
+// Eat spaces and empty lines
+// Returns the number of '\n' encountered
+int DebDBParser::eatSpacesAndEmptyLines()
+{
+ int res = 0;
+ int c;
+ while ((c = in.nextChar()) != input::Input::Eof && (isblank(c) || c == '\n'))
+ if (c == '\n')
+ {
+ isBOL = true;
+ //line++;
+ res++;
+ } else
+ isBOL = false;
+
+ if (c == input::Input::Eof)
+ isEOF = true;
+ else
+ in.pushChar(c);
+
+ return res;
+}
+
+// Get the ^([A-Za-z0-9]+) field name
+std::string DebDBParser::getFieldName()
+{
+ if (! isBOL)
+ throw exception::Parser(in, "field must start at the beginning of the line");
+
+ std::string res;
+
+ int c;
+ while ((c = in.nextChar()) != input::Input::Eof && (isalnum(c) || c == '-'))
+ res += c;
+
+ if (c == input::Input::Eof)
+ {
+ isEOF = true;
+ if (!res.empty())
+ throw exception::Parser(in, "field is truncated at end of file. Last line begins with: \"" + res + "\n");
+ } else
+ in.pushChar(c);
+
+ return res;
+}
+
+// Eat the \s*: characters that divide the field name and the field
+// data
+void DebDBParser::eatFieldSep()
+{
+ int c;
+
+ while ((c = in.nextChar()) != input::Input::Eof && isblank(c))
+ ;
+
+ if (c != ':')
+ {
+ if (c == input::Input::Eof)
+ {
+ isEOF = true;
+ throw exception::Parser(in, "field is truncated at end of file");
+ } else {
+ throw exception::Parser(in, std::string("invalid character `") + (char)c + "' expecting `:'");
+ }
+ }
+}
+
+// Get the \s*(.+?)\s*\n of a body line
+void DebDBParser::appendFieldBody(std::string& body)
+{
+ int c;
+
+ // Skip leading spaces
+ while ((c = in.nextChar()) != input::Input::Eof && isblank(c))
+ ;
+
+ // Get the body part
+ for ( ; c != input::Input::Eof && c != '\n'; c = in.nextChar())
+ body += c;
+
+ // Delete trailing spaces
+ size_t end = body.find_last_not_of(" \t");
+ if (end != std::string::npos)
+ body.resize(end + 1);
+
+ if (c == input::Input::Eof)
+ isEOF = true;
+ else
+ {
+ //line++;
+ isBOL = true;
+ }
+}
+
+
+DebDBParser::DebDBParser(input::Input& input) :
+ in(input), isBOL(true), isEOF(false)
+{
+ // Go at the start of the next record
+ eatSpacesAndEmptyLines();
+}
+
+
+// Read a record and positions itself at the start of the next one
+// Returns false when there are no more records available
+bool DebDBParser::nextRecord(Record& rec)
+{
+ if (isEOF)
+ return false;
+
+ rec.clear();
+
+ int n;
+ do {
+ // Read the field name
+ std::string field = getFieldName();
+ std::string body;
+
+ //fprintf(stderr, "Got field: %.*s\n", field.size(), field.data());
+
+ // Read the colon
+ eatFieldSep();
+
+ // Read the first line of the field body
+ appendFieldBody(body);
+ //fprintf(stderr, "Got body: %.*s\n", body.size(), body.data());
+
+ // Read the continuation lines of field body
+ while ((n = eatSpacesAndEmptyLines()) == 0 && ! isBOL)
+ {
+ body += '\n';
+
+ size_t start_size = body.size();
+
+ appendFieldBody(body);
+
+ // Check for dot-only lines to be changed to empty lines
+ if (body.size() - start_size == 1 && body[body.size() - 1] == '.')
+ body.resize(body.size() - 1);
+
+ //fprintf(stderr, "Appended body: %.*s\n", body.size(), body.data());
+ }
+ //fprintf(stderr, "Trailing newlines: %d\n", n);
+
+
+ rec.insert(std::pair<std::string,std::string>(field, body));
+ } while (!isEOF && !n);
+
+ return true;
+}
+
+}
+}
+
+// vim:set ts=4 sw=4:
diff --git a/ept/debtags/maint/debdbparser.h b/ept/debtags/maint/debdbparser.h
new file mode 100644
index 0000000..e48faec
--- /dev/null
+++ b/ept/debtags/maint/debdbparser.h
@@ -0,0 +1,90 @@
+#ifndef EPT_DEBTAGS_DEBDBPARSER_H
+#define EPT_DEBTAGS_DEBDBPARSER_H
+
+/** \file
+ * Parser for debian database files
+ */
+
+/*
+ * Copyright (C) 2003--2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <tagcoll/input/base.h>
+
+// TODO: is there a way to forward-declare this?
+#include <map>
+
+namespace tagcoll {
+namespace input {
+class Input;
+}
+}
+
+namespace ept {
+namespace debtags {
+
+/*
+class DebDBConsumer
+{
+public:
+ virtual void consumeField(const std::string& name, const std::string& val) throw () = 0;
+ virtual void consumeEndOfRecord() throw () = 0;
+};
+*/
+
+/**
+ * Parse Debian records from a parser input
+ */
+class DebDBParser
+{
+protected:
+ tagcoll::input::Input& in;
+ bool isBOL;
+ bool isEOF;
+
+ // Eat spaces and empty lines
+ // Returns the number of '\n' encountered
+ int eatSpacesAndEmptyLines();
+
+ // Get the ^([A-Za-z0-9]+) field name
+ std::string getFieldName();
+
+ // Eat the \s*: characters that divide the field name and the field
+ // data
+ void eatFieldSep();
+
+ // Get the \s*(.+?)\s*\n of a body line
+ void appendFieldBody(std::string& body);
+
+public:
+ typedef std::map<std::string, std::string> Record;
+
+ DebDBParser(tagcoll::input::Input& input);
+
+ const std::string& fileName() const throw () { return in.fileName(); }
+ int lineNumber() const throw () { return in.lineNumber(); }
+
+ // Read a record and positions itself at the start of the next one
+ // Returns false when there are no more records available
+ bool nextRecord(Record& rec);
+};
+
+}
+}
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/ept/debtags/maint/debtagsindexer.cc b/ept/debtags/maint/debtagsindexer.cc
new file mode 100644
index 0000000..6c8d6bc
--- /dev/null
+++ b/ept/debtags/maint/debtagsindexer.cc
@@ -0,0 +1,265 @@
+#include <ept/debtags/maint/debtagsindexer.h>
+#include <ept/debtags/maint/path.h>
+#include <ept/debtags/maint/pkgid.h>
+#include <ept/debtags/maint/serializer.h>
+#include <ept/debtags/vocabulary.h>
+
+#include <tagcoll/coll/intdiskindex.h>
+#include <tagcoll/coll/simple.h>
+#include <tagcoll/TextFormat.h>
+#include <tagcoll/stream/filters.h>
+
+#include <wibble/exception.h>
+
+#include <cstring>
+
+using namespace std;
+
+namespace ept {
+namespace debtags {
+
+/// MMapIndexer that indexes the package names
+struct PkgIdGenerator : public tagcoll::diskindex::MMapIndexer
+{
+ // Sorted set of all available package names
+ std::set<std::string> pkgs;
+
+ int encodedSize() const
+ {
+ int size = pkgs.size() * sizeof(int);
+ for (std::set<std::string>::const_iterator i = pkgs.begin();
+ i != pkgs.end(); ++i)
+ size += i->size() + 1;
+ return tagcoll::diskindex::MMap::align(size);
+ }
+
+ void encode(char* buf) const
+ {
+ int pos = pkgs.size() * sizeof(int);
+ int idx = 0;
+ for (std::set<std::string>::const_iterator i = pkgs.begin();
+ i != pkgs.end(); ++i)
+ {
+ ((int*)buf)[idx++] = pos;
+ memcpy(buf + pos, i->c_str(), i->size() + 1);
+ pos += i->size() + 1;
+ }
+ }
+};
+
+
+DebtagsIndexer::DebtagsIndexer(Vocabulary& voc)
+ : voc(voc),
+ mainSource(Path::debtagsSourceDir()),
+ userSource(Path::debtagsUserSourceDir())
+{
+ rescan();
+}
+
+void DebtagsIndexer::rescan()
+{
+ ts_main_src = mainSource.timestamp();
+ ts_user_src = userSource.timestamp();
+ ts_main_tag = Path::timestamp(Path::tagdb());
+ ts_main_idx = Path::timestamp(Path::tagdbIndex());
+ ts_user_tag = Path::timestamp(Path::userTagdb());
+ ts_user_idx = Path::timestamp(Path::userTagdbIndex());
+}
+
+bool DebtagsIndexer::needsRebuild() const
+{
+ // If there are no indexes of any kind, then we need rebuilding
+ if (ts_user_tag == 0 && ts_user_idx == 0 && ts_main_tag == 0 && ts_main_idx == 0)
+ return true;
+
+ // If the user index is ok, then we are fine
+ if (ts_user_tag >= sourceTimestamp() && ts_user_idx >= sourceTimestamp())
+ return false;
+
+ // If there are user sources, then we cannot use the system index
+ if (ts_user_src > 0)
+ return true;
+
+ // If there are no user sources, then we can fallback on the system
+ // indexes in case the user indexes are not up to date
+ if (ts_main_tag >= sourceTimestamp() && ts_main_idx >= sourceTimestamp())
+ return false;
+
+ return true;
+}
+
+bool DebtagsIndexer::userIndexIsRedundant() const
+{
+ // If there is no user index, then it is not redundant
+ if (ts_user_tag == 0 && ts_user_idx == 0)
+ return false;
+
+ // If we have user sources, then the user index is never redundant
+ if (ts_user_src > 0)
+ return false;
+
+ // If the system index is not up to date, then the user index is not
+ // redundant
+ if (ts_main_tag < sourceTimestamp() || ts_main_idx < sourceTimestamp())
+ return false;
+
+ return true;
+}
+
+bool DebtagsIndexer::rebuild(const std::string& tagfname, const std::string& idxfname)
+{
+ using namespace tagcoll;
+
+ diskindex::MasterMMapIndexer master(idxfname);
+
+ // Read and merge tag data
+ coll::Simple<string, string> merged;
+ mainSource.readTags(inserter(merged));
+ userSource.readTags(inserter(merged));
+
+ if (merged.empty())
+ //throw wibble::exception::Consistency("Reading debtags sources from " + Path::debtagsSourceDir() + " and " + Path::debtagsUserSourceDir(), "Unable to find any tag data");
+ return false;
+
+ // Create the pkgid index
+ PkgIdGenerator pkgidGen;
+ for (coll::Simple<string, string>::const_iterator i = merged.begin();
+ i != merged.end(); ++i)
+ pkgidGen.pkgs.insert(i->first);
+
+ // Temporary in-memory index to use for converting packages to ints while
+ // creating the debtags index
+ char buf[pkgidGen.encodedSize()];
+ pkgidGen.encode(buf);
+ PkgId pkgid(buf, pkgidGen.encodedSize());
+
+ // Create the Debtags index
+ coll::IntDiskIndexer tagindexer;
+ merged.output(stringToInt(pkgid, voc, inserter(tagindexer)));
+
+ // MMap 0: pkgid
+ master.append(pkgidGen);
+ // MMap 1: pkg->tag
+ master.append(tagindexer.pkgIndexer());
+ // MMap 2: tag->pkg
+ master.append(tagindexer.tagIndexer());
+
+ // Write the tag database in text format
+ std::string tmpdb = tagfname + ".tmp";
+ FILE* out = fopen(tmpdb.c_str(), "wt");
+ if (!out) throw wibble::exception::File(tmpdb, "creating temporary copy of tag index");
+ merged.output(textformat::StdioWriter(out));
+ fclose(out);
+
+ // Perform "atomic" update of the tag database
+ // FIXME: cannot be atomic because race conditions happening between file
+ // renames
+ if (rename(tmpdb.c_str(), tagfname.c_str()) == -1)
+ throw wibble::exception::System("Renaming " + tmpdb + " to " + tagfname);
+
+ master.commit();
+ return true;
+}
+
+bool DebtagsIndexer::rebuildIfNeeded()
+{
+ if (needsRebuild())
+ {
+ // Decide if we rebuild the user index or the system index
+
+ if (ts_user_src == 0 && Path::access(Path::debtagsIndexDir(), W_OK) == 0)
+ {
+ // There are no user sources and we can write to the system index
+ // directory: rebuild the system index
+ if (!rebuild(Path::tagdb(), Path::tagdbIndex()))
+ return false;
+ ts_main_tag = Path::timestamp(Path::tagdb());
+ ts_main_idx = Path::timestamp(Path::tagdbIndex());
+ if (Path::tagdb() == Path::userTagdb())
+ ts_user_tag = ts_main_tag;
+ if (Path::tagdbIndex() == Path::userTagdbIndex())
+ ts_user_idx = ts_main_idx;
+ } else {
+ wibble::sys::fs::mkFilePath(Path::userTagdb());
+ wibble::sys::fs::mkFilePath(Path::userTagdbIndex());
+ if (!rebuild(Path::userTagdb(), Path::userTagdbIndex()))
+ return false;
+ ts_user_tag = Path::timestamp(Path::userTagdb());
+ ts_user_idx = Path::timestamp(Path::userTagdbIndex());
+ }
+ return true;
+ }
+ return false;
+}
+
+bool DebtagsIndexer::deleteRedundantUserIndex()
+{
+ if (userIndexIsRedundant())
+ {
+ // Delete the user indexes if they exist
+ if (Path::tagdb() != Path::userTagdb())
+ {
+ unlink(Path::userTagdb().c_str());
+ ts_user_tag = 0;
+ }
+ if (Path::tagdbIndex() != Path::userTagdbIndex())
+ {
+ unlink(Path::userTagdbIndex().c_str());
+ ts_user_idx = 0;
+ }
+ return true;
+ }
+ return false;
+}
+
+bool DebtagsIndexer::getUpToDateTagdb(std::string& tagfname, std::string& idxfname)
+{
+ // If there are no indexes of any kind, then we have nothing to return
+ if (ts_user_tag == 0 && ts_user_idx == 0 && ts_main_tag == 0 && ts_main_idx == 0)
+ return false;
+
+ // If the user index is up to date, use it
+ if (ts_user_tag >= sourceTimestamp() &&
+ ts_user_idx >= sourceTimestamp())
+ {
+ tagfname = Path::userTagdb();
+ idxfname = Path::userTagdbIndex();
+ return true;
+ }
+
+ // If the user index is not up to date and we have user sources, we cannot
+ // fall back to the system index
+ if (ts_user_src != 0)
+ return false;
+
+ // Fallback to the system index
+ if (ts_main_tag >= sourceTimestamp() &&
+ ts_main_idx >= sourceTimestamp())
+ {
+ tagfname = Path::tagdb();
+ idxfname = Path::tagdbIndex();
+ return true;
+ }
+
+ return false;
+}
+
+
+
+bool DebtagsIndexer::obtainWorkingDebtags(Vocabulary& voc, std::string& tagfname, std::string& idxfname)
+{
+ DebtagsIndexer t(voc);
+
+ t.rebuildIfNeeded();
+ t.deleteRedundantUserIndex();
+ return t.getUpToDateTagdb(tagfname, idxfname);
+}
+
+}
+}
+
+#include <ept/debtags/maint/sourcedir.tcc>
+#include <tagcoll/coll/simple.tcc>
+
+// vim:set ts=4 sw=4:
+// -*- C++ -*-
diff --git a/ept/debtags/maint/debtagsindexer.h b/ept/debtags/maint/debtagsindexer.h
new file mode 100644
index 0000000..b702c88
--- /dev/null
+++ b/ept/debtags/maint/debtagsindexer.h
@@ -0,0 +1,51 @@
+#ifndef EPT_DEBTAGS_DEBTAGSINDEXER_H
+#define EPT_DEBTAGS_DEBTAGSINDEXER_H
+
+#include <ept/debtags/maint/sourcedir.h>
+#include <string>
+
+namespace ept {
+namespace debtags {
+
+class Vocabulary;
+
+struct DebtagsIndexer
+{
+ Vocabulary& voc;
+
+ SourceDir mainSource;
+ SourceDir userSource;
+ time_t ts_main_src;
+ time_t ts_user_src;
+ time_t ts_main_tag;
+ time_t ts_main_idx;
+ time_t ts_user_tag;
+ time_t ts_user_idx;
+
+ time_t sourceTimestamp() const
+ {
+ time_t res = ts_main_src;
+ if (ts_user_src > res) res = ts_user_src;
+ return res;
+ }
+ bool needsRebuild() const;
+ bool rebuild(const std::string& tagfname, const std::string& idxfname);
+ bool rebuildIfNeeded();
+ bool getUpToDateTagdb(std::string& tagfname, std::string& idxfname);
+
+ bool userIndexIsRedundant() const;
+ bool deleteRedundantUserIndex();
+
+ void rescan();
+
+ DebtagsIndexer(Vocabulary& voc);
+
+ static bool obtainWorkingDebtags(Vocabulary& voc, std::string& tagfname, std::string& idxfname);
+};
+
+
+}
+}
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/ept/debtags/maint/path.cc b/ept/debtags/maint/path.cc
new file mode 100644
index 0000000..bc07284
--- /dev/null
+++ b/ept/debtags/maint/path.cc
@@ -0,0 +1,140 @@
+// -*- mode: c++; indent-tabs-mode: t -*-
+
+/** \file
+ * debtags paths
+ */
+
+/*
+ * Copyright (C) 2005,2006,2007 Enrico Zini <enrico@debian.org>, Peter Rockai <me@mornfall.net>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/debtags/maint/path.h>
+#include <ept/config.h>
+
+#include <wibble/sys/fs.h>
+#include <wibble/string.h>
+
+#include <sys/types.h> // getpwuid, stat, mkdir, getuid
+#include <sys/stat.h> // stat, mkdir
+#include <pwd.h> // getpwuid
+#include <unistd.h> // stat, getuid
+
+using namespace wibble;
+
+namespace ept {
+namespace debtags {
+
+static std::string userdir()
+{
+ std::string rcdir;
+
+ struct passwd* udata = getpwuid(getuid());
+ rcdir = str::joinpath(udata->pw_dir, ".debtags");
+
+ return rcdir;
+}
+
+
+Path &Path::instance() {
+ if (!s_instance) {
+ s_instance = new Path;
+ instance().m_debtagsSourceDir = DEBTAGS_DB_DIR;
+ instance().m_debtagsIndexDir = DEBTAGS_DB_DIR;
+ instance().m_debtagsUserSourceDir = userdir();
+ instance().m_debtagsUserIndexDir = userdir();
+ }
+ return *s_instance;
+}
+
+int Path::access( const std::string &s, int m ) {
+ return ::access( s.c_str(), m );
+}
+
+time_t Path::timestamp( const std::string& file ) {
+ std::auto_ptr<struct stat> st = wibble::sys::fs::stat(file);
+ return st.get() == NULL ? 0 : st->st_mtime;
+}
+
+void Path::setDebtagsSourceDir( const std::string &s )
+{
+ instance().m_debtagsSourceDir = s;
+}
+void Path::setDebtagsIndexDir( const std::string &s )
+{
+ instance().m_debtagsIndexDir = s;
+}
+void Path::setDebtagsUserSourceDir( const std::string &s )
+{
+ instance().m_debtagsUserSourceDir = s;
+}
+void Path::setDebtagsUserIndexDir( const std::string &s )
+{
+ instance().m_debtagsUserIndexDir = s;
+}
+
+std::string Path::debtagsSourceDir() { return instance().m_debtagsSourceDir; }
+std::string Path::debtagsIndexDir() { return instance().m_debtagsIndexDir; }
+std::string Path::debtagsUserSourceDir() { return instance().m_debtagsUserSourceDir; }
+std::string Path::debtagsUserIndexDir() { return instance().m_debtagsUserIndexDir; }
+
+std::string Path::vocabulary() {
+ return str::joinpath(debtagsIndexDir(), "vocabulary");
+}
+
+std::string Path::vocabularyIndex() {
+ return str::joinpath(debtagsIndexDir(), "vocabulary.idx");
+}
+
+std::string Path::userVocabulary() {
+ return str::joinpath(debtagsUserIndexDir(), "vocabulary");
+}
+
+std::string Path::userVocabularyIndex() {
+ return str::joinpath(debtagsUserIndexDir(), "vocabulary.idx");
+}
+
+std::string Path::tagdb() {
+ return str::joinpath(debtagsIndexDir(), "package-tags");
+}
+
+std::string Path::tagdbIndex() {
+ return str::joinpath(debtagsIndexDir(), "package-tags.idx");
+}
+
+std::string Path::userTagdb() {
+ return str::joinpath(debtagsUserIndexDir(), "package-tags");
+}
+
+std::string Path::userTagdbIndex() {
+ return str::joinpath(debtagsUserIndexDir(), "package-tags.idx");
+}
+
+std::string Path::pkgidx() {
+ return str::joinpath(debtagsIndexDir(), "pkgidx.idx");
+}
+
+std::string Path::userPkgidx() {
+ return str::joinpath(debtagsUserIndexDir(), "pkgidx.idx");
+}
+
+
+Path *Path::s_instance = 0;
+
+}
+}
+
+// vim:set ts=4 sw=4:
diff --git a/ept/debtags/maint/path.h b/ept/debtags/maint/path.h
new file mode 100644
index 0000000..89e7d2a
--- /dev/null
+++ b/ept/debtags/maint/path.h
@@ -0,0 +1,133 @@
+// -*- mode: c++; indent-tabs-mode: t -*-
+/** \file
+ * debtags paths
+ */
+
+/*
+ * Copyright (C) 2005,2006,2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <string>
+
+struct stat;
+
+#ifndef EPT_DEBTAGS_PATH_H
+#define EPT_DEBTAGS_PATH_H
+
+namespace ept {
+namespace debtags {
+
+/**
+ * Singleton class to configure and access the various Debtags paths
+ */
+class Path
+{
+public:
+ static std::string vocabulary();
+ static std::string vocabularyIndex();
+ static std::string userVocabulary();
+ static std::string userVocabularyIndex();
+ static std::string tagdb();
+ static std::string tagdbIndex();
+ static std::string userTagdb();
+ static std::string userTagdbIndex();
+ static std::string pkgidx();
+ static std::string userPkgidx();
+
+ static std::string debtagsSourceDir();
+ static std::string debtagsIndexDir();
+ static std::string debtagsUserSourceDir();
+ static std::string debtagsUserIndexDir();
+
+ // Directory where Debtags source data is found
+ static void setDebtagsSourceDir( const std::string &s );
+
+ // Directory where Debtags indexes are kept
+ static void setDebtagsIndexDir( const std::string &s );
+
+ // User-specific directory for Debtags source data
+ static void setDebtagsUserSourceDir( const std::string &s );
+
+ // User-specific directory for Debtags index data
+ static void setDebtagsUserIndexDir( const std::string &s );
+
+ static int access( const std::string &, int );
+ static time_t timestamp( const std::string& );
+
+ // RAII-style classes to temporarily override directories
+ class OverrideDebtagsSourceDir
+ {
+ std::string old;
+ public:
+ OverrideDebtagsSourceDir(const std::string& path) : old(Path::debtagsSourceDir())
+ {
+ Path::setDebtagsSourceDir(path);
+ }
+ ~OverrideDebtagsSourceDir() { Path::setDebtagsSourceDir(old); }
+ };
+ class OverrideDebtagsIndexDir
+ {
+ std::string old;
+ public:
+ OverrideDebtagsIndexDir(const std::string& path) : old(Path::debtagsIndexDir())
+ {
+ Path::setDebtagsIndexDir(path);
+ }
+ ~OverrideDebtagsIndexDir() { Path::setDebtagsIndexDir(old); }
+ };
+ class OverrideDebtagsUserSourceDir
+ {
+ std::string old;
+ public:
+ OverrideDebtagsUserSourceDir(const std::string& path) : old(Path::debtagsUserSourceDir())
+ {
+ Path::setDebtagsUserSourceDir(path);
+ }
+ ~OverrideDebtagsUserSourceDir() { Path::setDebtagsUserSourceDir(old); }
+ };
+ class OverrideDebtagsUserIndexDir
+ {
+ std::string old;
+ public:
+ OverrideDebtagsUserIndexDir(const std::string& path) : old(Path::debtagsUserIndexDir())
+ {
+ Path::setDebtagsUserIndexDir(path);
+ }
+ ~OverrideDebtagsUserIndexDir() { Path::setDebtagsUserIndexDir(old); }
+ };
+protected:
+ static Path *s_instance;
+ static Path &instance();
+
+ // Directory where Debtags source data is found
+ std::string m_debtagsSourceDir;
+
+ // Directory where Debtags indexes are kept
+ std::string m_debtagsIndexDir;
+
+ // User-specific directory for Debtags source data
+ std::string m_debtagsUserSourceDir;
+
+ // User-specific directory for Debtags index data
+ std::string m_debtagsUserIndexDir;
+};
+
+}
+}
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/ept/debtags/maint/pkgid.cc b/ept/debtags/maint/pkgid.cc
new file mode 100644
index 0000000..c78d7c1
--- /dev/null
+++ b/ept/debtags/maint/pkgid.cc
@@ -0,0 +1,66 @@
+// -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+
+/** @file
+ * @author Enrico Zini <enrico@enricozini.org>
+ * Quick map from package IDs to package names
+ */
+
+/*
+ * Copyright (C) 2003-2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/debtags/maint/pkgid.h>
+#include <ept/debtags/maint/path.h>
+
+namespace ept {
+namespace debtags {
+
+PkgId::PkgId() {}
+
+PkgId::PkgId(const char* buf, int size)
+ : MMap(buf, size) {}
+
+PkgId::PkgId(const tagcoll::diskindex::MasterMMap& master, size_t idx)
+ : MMap(master, idx) {}
+
+int PkgId::byName(const std::string& name) const
+{
+ // Binary search the index to find the package ID
+ int begin, end;
+
+ /* Binary search */
+ begin = -1, end = size();
+ while (end - begin > 1)
+ {
+ int cur = (end + begin) / 2;
+ if (byID(cur) > name)
+ end = cur;
+ else
+ begin = cur;
+ }
+
+ if (begin == -1 || byID(begin) != name)
+ //throw NotFoundException(string("looking for the ID of string ") + str);
+ return -1;
+ else
+ return begin;
+}
+
+}
+}
+
+// vim:set ts=4 sw=4:
diff --git a/ept/debtags/maint/pkgid.h b/ept/debtags/maint/pkgid.h
new file mode 100644
index 0000000..e193f8c
--- /dev/null
+++ b/ept/debtags/maint/pkgid.h
@@ -0,0 +1,91 @@
+// -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+#ifndef EPT_DEBTAGS_PKGID_H
+#define EPT_DEBTAGS_PKGID_H
+
+/** @file
+ * @author Enrico Zini <enrico@enricozini.org>
+ * Quick map from package IDs to package names
+ */
+
+/*
+ * Copyright (C) 2003-2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <tagcoll/diskindex/mmap.h>
+#include <string>
+
+namespace ept {
+namespace debtags {
+
+/**
+ * Maps Packages to IDs and vice-versa.
+ *
+ * This is used in building the Debtags fast index, which works representing
+ * tags and packages as int IDs
+ */
+class PkgId : public tagcoll::diskindex::MMap
+{
+ tagcoll::diskindex::MasterMMap mastermmap;
+ time_t m_timestamp;
+
+public:
+ PkgId();
+ PkgId(const tagcoll::diskindex::MasterMMap& master, size_t idx);
+ PkgId(const char* buf, int size);
+
+ /// Get the timestamp of when the index was last updated
+ time_t timestamp() const { return m_timestamp; }
+
+ /// Get the number of packages in the index
+ size_t size() const { return m_buf ? *(int*)m_buf / sizeof(int) : 0; }
+
+ /**
+ * Get the ID of a package given its name.
+ *
+ * If not found, returns -1.
+ */
+ int byName(const std::string& name) const;
+
+ /**
+ * Get a package name given its ID.
+ *
+ * If not found, returns the empty string.
+ */
+ std::string byID(int id) const
+ {
+ if (id >= 0 || static_cast<unsigned>(id) < size())
+ return std::string(m_buf + ((int*)m_buf)[id]);
+ return std::string();
+ }
+
+ /// Get the number of packages in the index
+ int size(int id) const
+ {
+ if (id < 0 || (unsigned)id >= size())
+ return 0;
+ if ((unsigned)id == size() - 1)
+ return m_size - ((int*)m_buf)[id] - 1;
+ else
+ return ((int*)m_buf)[id + 1] - ((int*)m_buf)[id] - 1;
+ }
+};
+
+}
+}
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/ept/debtags/maint/pkgid.test.h b/ept/debtags/maint/pkgid.test.h
new file mode 100644
index 0000000..d49b72c
--- /dev/null
+++ b/ept/debtags/maint/pkgid.test.h
@@ -0,0 +1,75 @@
+// -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+/*
+ * id->package mapping
+ *
+ * Copyright (C) 2006 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/debtags/maint/pkgid.h>
+#include <ept/debtags/maint/path.h>
+#include <ept/debtags/debtags.h>
+#include <set>
+
+#include <ept/test.h>
+
+using namespace std;
+using namespace ept;
+using namespace ept::debtags;
+
+struct TestPkgid : DebtagsTestEnvironment
+{
+ Debtags debtags;
+ PkgId& pkgid;
+
+ TestPkgid()
+ : pkgid(debtags.pkgid())
+ {
+ }
+
+// Check that we can go from name to ID and back
+ Test _1()
+{
+ //int x = 0;
+ for (Debtags::const_iterator i = debtags.begin();
+ i != debtags.end(); ++i)
+ {
+ int id = pkgid.byName(i->first);
+ std::string pkg = pkgid.byID(id);
+ assert(i->first == pkg);
+
+ /* std::cerr << x << ": " << i->id() << ": "
+ << i->name() << ", " << pkgidx().name( i->id() ) <<
+ std::endl; */
+ //++ x;
+ }
+}
+
+// Check that IDs are distinct
+ Test _2()
+{
+ using namespace std;
+
+ size_t count = 0;
+ set<int> ids;
+ for (Debtags::const_iterator i = debtags.begin(); i != debtags.end(); ++i, ++count)
+ ids.insert(pkgid.byName(i->first));
+ assert_eq(ids.size(), count);
+}
+
+};
+
+// vim:set ts=4 sw=4:
diff --git a/ept/debtags/maint/serializer.h b/ept/debtags/maint/serializer.h
new file mode 100644
index 0000000..57c4c81
--- /dev/null
+++ b/ept/debtags/maint/serializer.h
@@ -0,0 +1,949 @@
+// -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+/**
+ * @file cache/component/debtags/serializer.h
+ * @author Enrico Zini (enrico) <enrico@enricozini.org>
+ */
+
+#ifndef EPT_DEBTAGS_SERIALIZER_H
+#define EPT_DEBTAGS_SERIALIZER_H
+
+#include <ept/debtags/vocabulary.h>
+#include <ept/debtags/maint/pkgid.h>
+#include <tagcoll/patch.h>
+#include <wibble/mixin.h>
+#include <string>
+
+namespace ept {
+namespace debtags {
+
+template<typename OUT>
+class IntToPkg : public wibble::mixin::OutputIterator< IntToPkg<OUT> >
+{
+ PkgId& pkgid;
+ Vocabulary& voc;
+ OUT out;
+
+public:
+ IntToPkg(PkgId& pkgid, Vocabulary& voc, const OUT& out)
+ : pkgid(pkgid), voc(voc), out(out) {}
+
+ template<typename ITEMS, typename TAGS>
+ IntToPkg<OUT>& operator=(const std::pair<ITEMS, TAGS>& data)
+ {
+ std::set<std::string> ritems;
+ std::set<Tag> rtags;
+
+ for (typename ITEMS::const_iterator i = data.first.begin();
+ i != data.first.end(); ++i)
+ {
+ std::string pkg = pkgid.byID(*i);
+ if (!pkg.empty())
+ ritems.insert(pkg);
+ }
+
+ for (typename TAGS::const_iterator i = data.second.begin();
+ i != data.second.end(); ++i)
+ {
+ Tag t = voc.tagByID(*i);
+ if (t.valid())
+ rtags.insert(t);
+ }
+
+ if (!ritems.empty() && !rtags.empty())
+ {
+ *out = make_pair(ritems, rtags);
+ ++out;
+ }
+ return *this;
+ }
+};
+
+template<typename OUT>
+IntToPkg<OUT> intToPkg(PkgId& pkgid, Vocabulary& voc, const OUT& out)
+{
+ return IntToPkg<OUT>(pkgid, voc, out);
+}
+
+template<typename OUT>
+class StringToInt : public wibble::mixin::OutputIterator< StringToInt<OUT> >
+{
+ PkgId& pkgid;
+ Vocabulary& voc;
+ OUT out;
+
+public:
+ StringToInt(PkgId& pkgid, Vocabulary& voc, const OUT& out)
+ : pkgid(pkgid), voc(voc), out(out) {}
+
+ template<typename ITEMS, typename TAGS>
+ StringToInt<OUT>& operator=(const std::pair<ITEMS, TAGS>& data)
+ {
+ std::set<int> ritems;
+ std::set<int> rtags;
+
+ for (typename ITEMS::const_iterator i = data.first.begin();
+ i != data.first.end(); ++i)
+ {
+ int id = pkgid.byName(*i);
+ if (id != -1)
+ ritems.insert(id);
+ }
+
+ for (typename TAGS::const_iterator i = data.second.begin();
+ i != data.second.end(); ++i)
+ {
+ Tag t = voc.tagByName(*i);
+ if (t.valid())
+ rtags.insert(t.id());
+ }
+
+ if (!ritems.empty() && !rtags.empty())
+ {
+ *out = make_pair(ritems, rtags);
+ ++out;
+ }
+ return *this;
+ }
+
+};
+
+template<typename OUT>
+StringToInt<OUT> stringToInt(PkgId& pkgid, Vocabulary& voc, const OUT& out)
+{
+ return StringToInt<OUT>(pkgid, voc, out);
+}
+
+template<typename OUT>
+class StringToPkg : public wibble::mixin::OutputIterator< StringToPkg<OUT> >
+{
+ PkgId& pkgid;
+ Vocabulary& voc;
+ OUT out;
+
+public:
+ StringToPkg(PkgId& pkgid, Vocabulary& voc, const OUT& out)
+ : pkgid(pkgid), voc(voc), out(out) {}
+
+ template<typename ITEMS, typename TAGS>
+ StringToPkg<OUT>& operator=(const std::pair<ITEMS, TAGS>& data)
+ {
+ std::set<std::string> ritems;
+ std::set<Tag> rtags;
+
+ for (typename ITEMS::const_iterator i = data.first.begin();
+ i != data.first.end(); ++i)
+ {
+ // Ensure that the package exists in the pkgid database
+ if (pkgid.byName(*i) == -1)
+ continue;
+ ritems.insert(*i);
+ }
+
+ for (typename TAGS::const_iterator i = data.second.begin();
+ i != data.second.end(); ++i)
+ {
+ Tag t = voc.tagByName(*i);
+ if (t.valid())
+ rtags.insert(t);
+ }
+
+ if (!ritems.empty() && !rtags.empty())
+ {
+ *out = make_pair(ritems, rtags);
+ ++out;
+ }
+ return *this;
+ }
+
+};
+
+template<typename OUT>
+StringToPkg<OUT> stringToPkg(PkgId& pkgid, Vocabulary& voc, const OUT& out)
+{
+ return StringToPkg<OUT>(pkgid, voc, out);
+}
+
+template<typename OUT>
+class PkgToString : public wibble::mixin::OutputIterator< PkgToString<OUT> >
+{
+ OUT out;
+public:
+ PkgToString(const OUT& out) : out(out) {}
+
+ template<typename ITEMS, typename TAGS>
+ PkgToString<OUT>& operator=(const std::pair<ITEMS, TAGS>& data)
+ {
+ std::set<std::string> stags;
+ for (typename TAGS::const_iterator i = data.second.begin();
+ i != data.second.end(); ++i)
+ if (i->valid())
+ stags.insert(i->fullname());
+ *out = make_pair(data.first, stags);
+ ++out;
+ return *this;
+ }
+};
+
+template<typename OUT>
+PkgToString<OUT> pkgToString(const OUT& out)
+{
+ return PkgToString<OUT>(out);
+}
+
+template<typename OUT>
+class PatchStringToInt : public wibble::mixin::OutputIterator< PatchStringToInt<OUT> >
+{
+ PkgId& pkgid;
+ Vocabulary& voc;
+ OUT out;
+
+public:
+ PatchStringToInt(PkgId& pkgid, Vocabulary& voc, const OUT& out)
+ : pkgid(pkgid), voc(voc), out(out) {}
+
+ PatchStringToInt<OUT>& operator=(const tagcoll::Patch<std::string, std::string>& patch)
+ {
+ int id = pkgid.byName(patch.item);
+ if (id == -1)
+ return *this;
+
+ tagcoll::Patch<int, int> res(id);
+ for (std::set<std::string>::const_iterator i = patch.added.begin();
+ i != patch.added.end(); ++i)
+ {
+ Tag tag = voc.tagByName(*i);
+ if (tag.valid())
+ res.add(tag.id());
+ }
+ for (std::set<std::string>::const_iterator i = patch.removed.begin();
+ i != patch.removed.end(); ++i)
+ {
+ Tag tag = voc.tagByName(*i);
+ if (tag.valid())
+ res.remove(tag.id());
+ }
+ *out = res;
+ ++out;
+ return *this;
+ }
+};
+
+template<typename OUT>
+PatchStringToInt<OUT> patchStringToInt(PkgId& pkgid, Vocabulary& voc, const OUT& out)
+{
+ return PatchStringToInt<OUT>(pkgid, voc, out);
+}
+
+template<typename OUT>
+class PatchIntToString : public wibble::mixin::OutputIterator< PatchIntToString<OUT> >
+{
+ PkgId& pkgid;
+ Vocabulary& voc;
+ OUT out;
+
+public:
+ PatchIntToString(PkgId& pkgid, Vocabulary& voc, const OUT& out)
+ : pkgid(pkgid), voc(voc), out(out) {}
+
+ PatchIntToString<OUT>& operator=(const tagcoll::Patch<int, int>& patch)
+ {
+ std::string name = pkgid.byID(patch.item);
+ if (name.empty())
+ return *this;
+
+ tagcoll::Patch<std::string, std::string> res(name);
+ for (std::set<int>::const_iterator i = patch.added.begin();
+ i != patch.added.end(); ++i)
+ {
+ Tag tag = voc.tagByID(*i);
+ if (tag.valid())
+ res.add(tag.fullname());
+ }
+ for (std::set<int>::const_iterator i = patch.removed.begin();
+ i != patch.removed.end(); ++i)
+ {
+ Tag tag = voc.tagByID(*i);
+ if (tag.valid())
+ res.remove(tag.fullname());
+ }
+ *out = res;
+ ++out;
+ return *this;
+ }
+};
+
+template<typename OUT>
+PatchIntToString<OUT> patchIntToString(PkgId& pkgid, Vocabulary& voc, const OUT& out)
+{
+ return PatchIntToString<OUT>(pkgid, voc, out);
+}
+
+#if 0
+ GOOD STUFF
+
+template<typename OUT>
+class ToInt : public wibble::mixin::OutputIterator< ToInt<OUT> >
+{
+ OUT out;
+public:
+ ToInt(const OUT& out) : out(out) {}
+
+ template<typename ITEMS, typename TAGS>
+ ToInt<OUT>& operator=(const std::pair<ITEMS, TAGS>& data)
+ {
+ std::set<int> iitems;
+ std::set<int> itags;
+ for (typename ITEMS::const_iterator i = data.first.begin();
+ i != data.first.end(); ++i)
+ if (i->valid())
+ iitems.insert(i->ondiskId());
+ for (typename TAGS::const_iterator i = data.second.begin();
+ i != data.second.end(); ++i)
+ if (i->valid())
+ itags.insert(i->id());
+ *out = make_pair(iitems, itags);
+ ++out;
+ return *this;
+ }
+};
+
+template<typename OUT>
+ToInt<OUT> toInt(const OUT& out)
+{
+ return ToInt<OUT>(out);
+}
+
+template<typename ITEMCONV, typename TAGCONV, typename OUT>
+class Converter : public wibble::mixin::OutputIterator< Converter<ITEMCONV, TAGCONV, OUT> >
+{
+ ITEMCONV itemconv;
+ TAGCONV tagconv;
+ OUT out;
+
+public:
+ Converter(const ITEMCONV& itemconv, const TAGCONV& tagconv, const OUT& out)
+ : itemconv(itemconv), tagconv(tagconv), out(out) {}
+
+ template<typename ITEMS, typename TAGS>
+ Converter<ITEMCONV, TAGCONV, OUT>& operator=(const std::pair<ITEMS, TAGS>& data)
+ {
+ *out = make_pair(itemconv(data.first), tagconv(data.second));
+ ++out;
+ return *this;
+ }
+};
+
+template<typename ITEMCONV, typename TAGCONV, typename OUT>
+Converter<ITEMCONV, TAGCONV, OUT> converter(const ITEMCONV& itemconv, const TAGCONV& tagconv, const OUT& out)
+{
+ return Converter<ITEMCONV, TAGCONV, OUT>(itemconv, tagconv, out);
+}
+
+
+template<typename OUT>
+class PatchToString : public wibble::mixin::OutputIterator< PatchToString<OUT> >
+{
+ OUT out;
+
+public:
+ PatchToString(const OUT& out) : out(out) {}
+
+ template<typename PKG, typename TAG>
+ PatchToString<OUT>& operator=(const tagcoll::Patch<PKG, TAG>& patch)
+ {
+ if (!patch.item.valid())
+ return *this;
+
+ tagcoll::Patch<std::string, std::string> res(patch.item.name());
+ for (typename std::set<TAG>::const_iterator i = patch.added.begin();
+ i != patch.added.end(); ++i)
+ if (i->valid())
+ res.add(i->fullname());
+ for (typename std::set<TAG>::const_iterator i = patch.removed.begin();
+ i != patch.removed.end(); ++i)
+ if (i->valid())
+ res.remove(i->fullname());
+ *out = res;
+ ++out;
+ return *this;
+ }
+};
+
+template<typename OUT>
+PatchToString<OUT> patchToString(const OUT& out)
+{
+ return PatchToString<OUT>(out);
+}
+
+#endif
+
+}
+}
+
+#if 0
+
+namespace tagcoll {
+namespace coll {
+
+template<>
+struct coll_traits< ept::cache::debtags::DebtagsIndex >
+{
+ typedef ept::cache::Package<> item_type;
+ typedef ept::cache::debtags::Tag tag_type;
+ typedef std::set< ept::cache::Package<> > itemset_type;
+ typedef std::set<ept::cache::debtags::Tag> tagset_type;
+};
+
+}
+}
+
+namespace ept {
+namespace cache {
+namespace debtags {
+
+#if 0
+/**
+ * Convert Facets to ints
+ */
+class FacetIntConverter : public Implementation<FacetIntConverter>,
+ public Tagcoll::Converter<aptFront::cache::entity::Facet, int>,
+ public Tagcoll::Converter<int, aptFront::cache::entity::Facet>
+{
+ typedef aptFront::cache::entity::Facet Facet;
+ typedef Tagcoll::OpSet<aptFront::cache::entity::Facet> FacetSet;
+ typedef Tagcoll::OpSet<int> IntSet;
+public:
+ virtual int operator()(const aptFront::cache::entity::Facet& item) const;
+ virtual aptFront::cache::entity::Facet operator()(const int& item) const;
+
+ virtual IntSet operator()(const FacetSet& item) const
+ { return Tagcoll::Converter<Facet, int>::operator()(item); }
+ virtual FacetSet operator()(const IntSet& item) const
+ { return Tagcoll::Converter<int, Facet>::operator()(item); }
+
+ static std::string componentName();
+};
+
+/**
+ * Convert Facets to strings
+ */
+class FacetStringConverter : public Implementation<FacetStringConverter>,
+ public Tagcoll::Converter<aptFront::cache::entity::Facet, std::string>,
+ public Tagcoll::Converter<std::string, aptFront::cache::entity::Facet>
+{
+ typedef aptFront::cache::entity::Facet Facet;
+ typedef Tagcoll::OpSet<aptFront::cache::entity::Facet> FacetSet;
+ typedef Tagcoll::OpSet<std::string> StringSet;
+public:
+ virtual std::string operator()(const aptFront::cache::entity::Facet& item) const;
+ virtual aptFront::cache::entity::Facet operator()(const std::string& item) const;
+
+ virtual StringSet operator()(const FacetSet& item) const
+ { return Tagcoll::Converter<Facet, std::string>::operator()(item); }
+ virtual FacetSet operator()(const StringSet& item) const
+ { return Tagcoll::Converter<std::string, Facet>::operator()(item); }
+
+ static std::string componentName();
+};
+
+/**
+ * Convert Vocabulary to ints
+ */
+class TagIntConverter : public Implementation<TagIntConverter>,
+ public Tagcoll::Converter<aptFront::cache::entity::Tag, int>,
+ public Tagcoll::Converter<int, aptFront::cache::entity::Tag>
+{
+ typedef aptFront::cache::entity::Tag Tag;
+ typedef Tagcoll::OpSet<aptFront::cache::entity::Tag> TagSet;
+ typedef Tagcoll::OpSet<int> IntSet;
+public:
+ virtual int operator()(const aptFront::cache::entity::Tag& item) const;
+ virtual aptFront::cache::entity::Tag operator()(const int& item) const;
+
+ virtual IntSet operator()(const TagSet& item) const
+ { return Tagcoll::Converter<Tag, int>::operator()(item); }
+ virtual TagSet operator()(const IntSet& item) const
+ { return Tagcoll::Converter<int, Tag>::operator()(item); }
+
+ static std::string componentName();
+};
+
+/**
+ * Convert Vocabulary to strings
+ */
+class TagStringConverter : public Implementation<TagStringConverter>,
+ public Tagcoll::Converter<aptFront::cache::entity::Tag, std::string>,
+ public Tagcoll::Converter<std::string, aptFront::cache::entity::Tag>
+{
+ typedef aptFront::cache::entity::Tag Tag;
+ typedef Tagcoll::OpSet<aptFront::cache::entity::Tag> TagSet;
+ typedef Tagcoll::OpSet<std::string> StringSet;
+public:
+ virtual std::string operator()(const Tag& item) const;
+ virtual Tag operator()(const std::string& item) const;
+
+ virtual StringSet operator()(const TagSet& item) const
+ { return Tagcoll::Converter<Tag, std::string>::operator()(item); }
+ virtual TagSet operator()(const StringSet& item) const
+ { return Tagcoll::Converter<std::string, Tag>::operator()(item); }
+
+ TagSet parseTagList(const std::string& str) const;
+
+ static std::string componentName();
+};
+
+/**
+ * Convert Aggregator to ints
+ */
+class PackageIntConverter : public Implementation<PackageIntConverter>,
+ public Tagcoll::Converter<aptFront::cache::entity::Package, int>,
+ public Tagcoll::Converter<int, aptFront::cache::entity::Package>
+{
+ typedef aptFront::cache::entity::Package Package;
+ typedef Tagcoll::OpSet<aptFront::cache::entity::Package> PackageSet;
+ typedef Tagcoll::OpSet<int> IntSet;
+public:
+ virtual int operator()(const Package& item) const;
+ virtual Package operator()(const int& item) const;
+
+ virtual IntSet operator()(const PackageSet& item) const
+ { return Tagcoll::Converter<Package, int>::operator()(item); }
+ virtual PackageSet operator()(const IntSet& item) const
+ { return Tagcoll::Converter<int, Package>::operator()(item); }
+
+ static std::string componentName();
+};
+
+/**
+ * Convert Aggregator to strings
+ */
+class PackageStringConverter : public Implementation<PackageStringConverter>,
+ public Tagcoll::Converter<aptFront::cache::entity::Package, std::string>,
+ public Tagcoll::Converter<std::string, aptFront::cache::entity::Package>
+{
+ typedef aptFront::cache::entity::Package Package;
+ typedef Tagcoll::OpSet<aptFront::cache::entity::Package> PackageSet;
+ typedef Tagcoll::OpSet<std::string> StringSet;
+public:
+ virtual std::string operator()(const Package& item) const;
+ virtual Package operator()(const std::string& item) const;
+
+ virtual StringSet operator()(const PackageSet& item) const
+ { return Tagcoll::Converter<Package, std::string>::operator()(item); }
+ virtual PackageSet operator()(const StringSet& item) const
+ { return Tagcoll::Converter<std::string, Package>::operator()(item); }
+
+ static std::string componentName();
+};
+
+#endif
+
+}
+}
+}
+
+#endif
+
+#endif
+// -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+
+#if 0
+/**
+ * @file cache/debtags/serializer.h
+ * @author Enrico Zini (enrico) <enrico@enricozini.org>
+ */
+
+#ifndef EPT_CACHE_DEBTAGS_SERIALIZER_TCC
+#define EPT_CACHE_DEBTAGS_SERIALIZER_TCC
+
+#include <ept/cache/debtags/serializer.h>
+#if 0
+#include <ept/cache/debtags/pkgidx.h>
+#include <ept/cache/debtags/vocabulary.h>
+#include <ept/cache/package.h>
+//#include <ept/cache/cache.h>
+#endif
+
+namespace ept {
+namespace t {
+namespace cache {
+namespace debtags {
+
+
+
+#if 0
+string FacetIntConverter::componentName() { return "FacetIntConverter"; }
+
+int FacetIntConverter::operator()(const aptFront::cache::entity::Facet& item) const
+{
+ if (!item.valid()) return -1;
+ return item.id();
+}
+aptFront::cache::entity::Facet FacetIntConverter::operator()(const int& item) const
+{
+ return cache().tags().facetByID(item);
+}
+
+string FacetStringConverter::componentName() { return "FacetStringConverter"; }
+
+std::string FacetStringConverter::operator()(const aptFront::cache::entity::Facet& item) const
+{
+ if (!item.valid()) return string();
+ return item.name();
+}
+aptFront::cache::entity::Facet FacetStringConverter::operator()(const std::string& item) const
+{
+ return cache().tags().facetByName(item);
+}
+
+string TagIntConverter::componentName() { return "TagIntConverter"; }
+
+int TagIntConverter::operator()(const aptFront::cache::entity::Tag& item) const
+{
+ if (!item.valid()) return -1;
+ return item.id();
+}
+aptFront::cache::entity::Tag TagIntConverter::operator()(const int& item) const
+{
+ return cache().tags().tagByID(item);
+}
+
+string TagStringConverter::componentName() { return "TagStringConverter"; }
+
+std::string TagStringConverter::operator()(const aptFront::cache::entity::Tag& item) const
+{
+ if (!item.valid()) return string();
+ return item.fullname();
+}
+aptFront::cache::entity::Tag TagStringConverter::operator()(const std::string& item) const
+{
+ return cache().tags().tagByName(item);
+}
+
+Tagcoll::OpSet<entity::Tag> TagStringConverter::parseTagList(const std::string& str) const
+{
+ if (str.empty())
+ return Tagcoll::OpSet<entity::Tag>();
+
+ size_t i = str.find(", ");
+ if (i == string::npos)
+ {
+ // Check if we need curly brace expansion
+ if (str[str.size() - 1] == '}')
+ {
+ using namespace std;
+ Tagcoll::OpSet<entity::Tag> res;
+ size_t begin = str.find('{');
+ if (begin == string::npos)
+ return res;
+ string prefix(str, 0, begin);
+ ++begin;
+ size_t end;
+ while ((end = str.find(',', begin)) != string::npos)
+ {
+ res += (*this)(prefix + str.substr(begin, end-begin));
+ begin = end + 1;
+ }
+ res += (*this)(prefix + str.substr(begin, str.size() - 1 - begin));
+ return res;
+ } else {
+ entity::Tag t = (*this)(str);
+ if (t.valid())
+ return Tagcoll::OpSet<entity::Tag>() + t;
+ else
+ return Tagcoll::OpSet<entity::Tag>();
+ }
+ } else {
+ return parseTagList(string(str, 0, i)) + parseTagList(string(str, i+2));
+ }
+}
+
+string PackageIntConverter::componentName() { return "PackageIntConverter"; }
+
+int PackageIntConverter::operator()(const aptFront::cache::entity::Package& item) const
+{
+ if (!item.valid()) return -1;
+ return item.id();
+}
+aptFront::cache::entity::Package PackageIntConverter::operator()(const int& item) const
+{
+ PkgIdx& p = cache().pkgidx();
+ return cache().packages().packageByName(string(p.name(item), p.size(item)));
+}
+
+string PackageStringConverter::componentName() { return "PackageStringConverter"; }
+
+std::string PackageStringConverter::operator()(const aptFront::cache::entity::Package& item) const
+{
+ if (!item.valid()) return string();
+ return item.name();
+}
+aptFront::cache::entity::Package PackageStringConverter::operator()(const std::string& item) const
+{
+ return cache().packages().packageByName(item);
+}
+#endif
+
+}
+}
+
+#endif
+
+#if 0
+#ifdef COMPILE_TESTSUITE
+//#include <apt-front/cache/component/debtags/update.h>
+#include <iostream>
+#include "test-utils.h"
+
+namespace tut {
+using namespace aptFront::cache;
+using namespace component;
+using namespace debtags;
+using namespace std;
+
+struct cache_component_debtags_serializer_shar {
+ cache_component_debtags_serializer_shar () {
+ aptInit ();
+ ok = true;
+ debtags::fetchNewData();
+ c.open( Cache::OpenDefault |
+ Cache::OpenReadOnly | Cache::OpenDebtags );
+ }
+ void check() {
+ if (ok) return;
+ ok = true;
+ throw warning( "debtags init failed, cancelling" );
+ }
+ ~cache_component_debtags_serializer_shar() {
+ check();
+ }
+ Cache c;
+ bool ok;
+};
+
+TESTGRP( cache_component_debtags_serializer );
+
+using namespace Tagcoll;
+
+template<> template<>
+void to::test<1> ()
+{
+ check();
+
+ PackageStringConverter& psc = c.packagestringconverter();
+
+ ensure(psc("Slartibartsfart") == entity::Package());
+
+ /* Get the 'debtags' package */
+ entity::Package p = c.packages().packageByName( "debtags" );
+ ensure(p.valid());
+
+ /* Get the 'debtags' package using the serializer */
+ entity::Package p1 = psc("debtags");
+ ensure(p1.valid());
+
+ /* They must be the same */
+ ensure(p == p1);
+
+ ensure_equals(psc(p), "debtags");
+ ensure_equals(psc(p1), "debtags");
+ ensure_equals(psc(p), psc(p1));
+
+ /* If there is an invalid package to serialize, it should be discarded */
+ {
+ Tagcoll::OpSet<entity::Package> pkgs;
+ pkgs += c.packages().packageByName( "debtags" );
+ pkgs += c.packages().packageByName( "tagcoll" );
+ pkgs += entity::Package();
+
+ ensure_equals (pkgs.size(), 3u);
+ ensure_equals (psc(pkgs).size(), 2u);
+ ensure (psc(pkgs).contains("debtags"));
+ ensure (psc(pkgs).contains("tagcoll"));
+ }
+
+ /* If there is an invalid package to serialize, it should be discarded */
+ {
+ Tagcoll::OpSet<std::string> pkgs;
+ pkgs += "debtags";
+ pkgs += "tagcoll";
+ pkgs += "Slartibartsfart";
+
+ ensure_equals (pkgs.size(), 3u);
+ ensure_equals (psc(pkgs).size(), 2u);
+ ensure (psc(pkgs).contains(psc("debtags")));
+ ensure (psc(pkgs).contains(psc("tagcoll")));
+ ensure (!psc(pkgs).contains(entity::Package()));
+ }
+}
+
+ostream& operator<<(ostream& out, const entity::Package& pkg)
+{
+ if (pkg.valid())
+ return out << pkg.name();
+ else
+ return out << "(invalid package)";
+}
+
+// Check that package conversions work two-way
+template<> template<>
+void to::test<2> ()
+{
+ PackageStringConverter& psc = c.packagestringconverter();
+ for (component::Aggregator::iterator i = c.packages().packagesBegin();
+ i != c.packages().packagesEnd(); ++i)
+ {
+ try {
+ ensure_equals(*i, psc(psc(*i)));
+ } catch (...) {
+ cerr << "Note: exception thrown during processing[string] of package " << i->name(string("(invalid package)")) << endl;
+ throw;
+ }
+ }
+
+ PackageIntConverter& pic = c.packageintconverter();
+ for (component::Aggregator::iterator i = c.packages().packagesBegin();
+ i != c.packages().packagesEnd(); ++i)
+ {
+ try {
+ ensure_equals(*i, pic(pic(*i)));
+ } catch (...) {
+ cerr << "Note: exception thrown during processing[int] of package " << i->name(string("(invalid package)")) << endl;
+ throw;
+ }
+ }
+}
+
+// Check that facet conversions work two-way
+template<> template<>
+void to::test<3> ()
+{
+ typedef Tagcoll::OpSet<entity::Facet> FacetSet;
+
+ FacetStringConverter& fsc = c.facetstringconverter();
+ FacetSet allFacets(c.tags().facets());
+ for (FacetSet::const_iterator i = allFacets.begin(); i != allFacets.end(); i++)
+ {
+ try {
+ ensure_equals(*i, fsc(fsc(*i)));
+ } catch (...) {
+ cerr << "Note: exception thrown during processing[string] of facet " << i->name() << endl;
+ throw;
+ }
+ }
+
+ FacetIntConverter& fic = c.facetintconverter();
+ for (FacetSet::const_iterator i = allFacets.begin(); i != allFacets.end(); i++)
+ {
+ try {
+ ensure_equals(*i, fic(fic(*i)));
+ } catch (...) {
+ cerr << "Note: exception thrown during processing[int] of facet " << i->name() << endl;
+ throw;
+ }
+ }
+}
+
+// Check that tag conversions work two-way
+template<> template<>
+void to::test<4> ()
+{
+ typedef Tagcoll::OpSet<entity::Tag> TagSet;
+
+ TagStringConverter& tsc = c.tagstringconverter();
+ TagSet allTags(c.tags().tags());
+ for (TagSet::const_iterator i = allTags.begin(); i != allTags.end(); i++)
+ {
+ try {
+ ensure_equals(*i, tsc(tsc(*i)));
+ } catch (...) {
+ cerr << "Note: exception thrown during processing[string] of tag " << i->fullname() << endl;
+ throw;
+ }
+ }
+
+ TagIntConverter& tic = c.tagintconverter();
+ for (TagSet::const_iterator i = allTags.begin(); i != allTags.end(); i++)
+ {
+ try {
+ ensure_equals(*i, tic(tic(*i)));
+ } catch (...) {
+ cerr << "Note: exception thrown during processing[int] of tag " << i->fullname() << endl;
+ throw;
+ }
+ }
+}
+
+// Check TagStringConverter::parseTagList
+template<> template<>
+void to::test<5> ()
+{
+ TagStringConverter& tsc = c.tagstringconverter();
+ OpSet<entity::Tag> ts;
+
+ // First ensure that we're using existing tags as samples
+ ensure(tsc("accessibility::TODO") != entity::Tag());
+ ensure(tsc("role::sw:devel-lib") != entity::Tag());
+ ensure(tsc("x11::xserver") != entity::Tag());
+ ensure(tsc("antani") == entity::Tag());
+ ensure(tsc("blinda") == entity::Tag());
+ ensure(tsc("supercazzola") == entity::Tag());
+
+ ts = tsc.parseTagList("role::sw:devel-lib");
+ ensure_equals(ts.size(), 1u);
+ ensure(ts.contains(tsc("role::sw:devel-lib")));
+
+ ts = tsc.parseTagList("accessibility::TODO, x11::xserver, role::sw:devel-lib");
+ ensure_equals(ts.size(), 3u);
+ ensure(ts.contains(tsc("accessibility::TODO")));
+ ensure(ts.contains(tsc("role::sw:devel-lib")));
+ ensure(ts.contains(tsc("x11::xserver")));
+
+ ts = tsc.parseTagList("antani");
+ ensure_equals(ts.size(), 0u);
+
+ ts = tsc.parseTagList("antani, blinda, supercazzola");
+ ensure_equals(ts.size(), 0u);
+
+ ts = tsc.parseTagList("antani, x11::xserver, blinda");
+ ensure_equals(ts.size(), 1u);
+ ensure(ts.contains(tsc("x11::xserver")));
+}
+
+// Check TagStringConverter::parseTagList's handling of curly brace expansion
+template<> template<>
+void to::test<6> ()
+{
+ TagStringConverter& tsc = c.tagstringconverter();
+ OpSet<entity::Tag> ts;
+
+ // First ensure that we're using existing tags as samples
+ ensure(tsc("role::TODO") != entity::Tag());
+ ensure(tsc("role::sw:server") != entity::Tag());
+ ensure(tsc("role::aux:dummy") != entity::Tag());
+ ensure(tsc("role::sw:amusement") != entity::Tag());
+ ensure(tsc("role::sw:server{}") == entity::Tag());
+ ensure(tsc("role::{}") == entity::Tag());
+ ensure(tsc("role::{") == entity::Tag());
+ ensure(tsc("role::}") == entity::Tag());
+
+ ts = tsc.parseTagList("role::{TODO,sw:server,aux:dummy,sw:amusement}");
+ ensure_equals(ts.size(), 4u);
+ ensure(ts.contains(tsc("role::TODO")));
+ ensure(ts.contains(tsc("role::sw:server")));
+ ensure(ts.contains(tsc("role::aux:dummy")));
+ ensure(ts.contains(tsc("role::sw:amusement")));
+
+ ts = tsc.parseTagList("role::{TODO,aux:dummy}, role::sw:{server,amusement}");
+ ensure_equals(ts.size(), 4u);
+ ensure(ts.contains(tsc("role::TODO")));
+ ensure(ts.contains(tsc("role::sw:server")));
+ ensure(ts.contains(tsc("role::aux:dummy")));
+ ensure(ts.contains(tsc("role::sw:amusement")));
+}
+
+}
+#endif
+#endif
+#endif
+// vim:set ts=4 sw=4:
diff --git a/ept/debtags/maint/serializer.test.h b/ept/debtags/maint/serializer.test.h
new file mode 100644
index 0000000..6a4f3a6
--- /dev/null
+++ b/ept/debtags/maint/serializer.test.h
@@ -0,0 +1,133 @@
+// -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+/**
+ * @file
+ * @author Enrico Zini (enrico) <enrico@enricozini.org>
+ */
+
+/*
+ * Tests for Debtags serialization filters
+ *
+ * Copyright (C) 2003-2007 Enrico Zini <enrico@debian.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/debtags/maint/serializer.h>
+#include <ept/debtags/maint/pkgid.h>
+#include <ept/debtags/maint/path.h>
+#include <ept/debtags/vocabulary.h>
+#include <ept/debtags/debtags.h>
+
+#include <tagcoll/coll/simple.h>
+
+#include <wibble/singleton.h>
+
+#include <ept/test.h>
+
+using namespace std;
+using namespace tagcoll;
+using namespace ept;
+using namespace ept::debtags;
+
+struct TestSerializer : DebtagsTestEnvironment
+{
+ Debtags debtags;
+ Vocabulary& voc;
+ PkgId& pkgid;
+
+ TestSerializer()
+ : voc(debtags.vocabulary()), pkgid(debtags.pkgid()) {}
+
+/* Test going from a stream of tag data <string, string> to a stream of tag
+ * data <int, int> to a stream of tag data <Package, Tag> and finally back to a
+ * stream of tag data <string, string>
+ */
+ Test _1()
+{
+ // Source data <string, string>
+ coll::Simple<string, string> source;
+ source.insert(wibble::singleton(string("debtags")), wibble::singleton(string("use::editing")));
+ source.insert(wibble::singleton(string("debtags")), wibble::singleton(string("role::program")));
+
+ // <string, string> -> <int, int>
+ coll::Simple<int, int> dest;
+ source.output(stringToInt(pkgid, voc, inserter(dest)));
+
+ assert_eq(dest.itemCount(), 1u);
+ assert_eq(dest.tagCount(), 2u);
+
+ // <int, int> -> <Package, Tag>
+ coll::Simple<string, Tag> dest1;
+ dest.output(intToPkg(pkgid, voc, inserter(dest1)));
+
+ assert_eq(dest1.itemCount(), 1u);
+ assert_eq(dest1.tagCount(), 2u);
+
+ std::set<Tag> tags = dest1.getTagsOfItem("debtags");
+ assert_eq(tags.size(), 2u);
+
+ Tag useEditing = voc.tagByName("use::editing");
+ Tag roleProgram = voc.tagByName("role::program");
+
+ assert(tags.find(useEditing) != tags.end());
+ assert(tags.find(roleProgram) != tags.end());
+
+ // <Package, Tag> -> <string, string>
+ coll::Simple<string, string> dest2;
+ dest1.output(pkgToString(inserter(dest2)));
+
+ assert_eq(dest2.itemCount(), 1u);
+ assert_eq(dest2.tagCount(), 2u);
+
+ std::set<std::string> tags1 = dest2.getTagsOfItem("debtags");
+ assert_eq(tags1.size(), 2u);
+
+ assert(tags1.find("use::editing") != tags1.end());
+ assert(tags1.find("role::program") != tags1.end());
+}
+
+/* Test going from patch with strings to patch with ints and vice versa */
+ Test _2()
+{
+ PatchList<string, string> change;
+ change.addPatch(Patch<string, string>("debtags",
+ wibble::singleton(string("use::gameplaying")),
+ wibble::singleton(string("use::editing"))));
+
+ // Deserialise to ints
+ PatchList<int, int> intChange;
+ change.output(patchStringToInt(pkgid, voc, tagcoll::inserter(intChange)));
+ assert_eq(intChange.size(), 1u);
+ assert_eq(intChange.begin()->second.added.size(), 1u);
+ assert_eq(intChange.begin()->second.removed.size(), 1u);
+
+ // Serialise back to strings
+ PatchList<string, string> change1;
+ intChange.output(patchIntToString(pkgid, voc, tagcoll::inserter(change1)));
+ assert_eq(change1.size(), 1u);
+ assert_eq(change1.begin()->first, string("debtags"));
+ assert_eq(change1.begin()->second.item, string("debtags"));
+ assert_eq(change1.begin()->second.added.size(), 1u);
+ assert_eq(*change1.begin()->second.added.begin(), string("use::gameplaying"));
+ assert_eq(change1.begin()->second.removed.size(), 1u);
+ assert_eq(*change1.begin()->second.removed.begin(), string("use::editing"));
+}
+
+};
+
+#include <tagcoll/coll/simple.tcc>
+#include <tagcoll/patch.tcc>
+
+// vim:set ts=4 sw=4:
diff --git a/ept/debtags/maint/sourcedir.cc b/ept/debtags/maint/sourcedir.cc
new file mode 100644
index 0000000..0b0c60d
--- /dev/null
+++ b/ept/debtags/maint/sourcedir.cc
@@ -0,0 +1,123 @@
+#include <ept/debtags/maint/sourcedir.h>
+#include <ept/debtags/maint/vocabularymerger.h>
+#include <ept/debtags/maint/path.h>
+
+#include <wibble/string.h>
+
+#include <tagcoll/input/zlib.h>
+#include <tagcoll/input/stdio.h>
+
+using namespace wibble;
+
+namespace ept {
+namespace debtags {
+
+SourceDir::FileType SourceDir::fileType(const std::string& name)
+{
+ if (name[0] == '.') return SKIP;
+
+ // Filenames need to be at least 5 characters long (one char plus
+ // extension)
+ if (name.size() <= 4) return SKIP;
+
+ // Only look at .voc and .tag files
+ std::string ext(name, name.size() - 4);
+ if (ext == ".voc")
+ return VOC;
+ if (ext == ".tag")
+ return TAG;
+
+ // Now look for compressed files, which must have the 4 character extension
+ // plus the 3 chars of '.gz'
+ if (name.size() <= 7) return SKIP;
+
+ ext = name.substr(name.size() - 7);
+ if (ext == ".voc.gz")
+ return VOCGZ;
+ if (ext == ".tag.gz")
+ return TAGGZ;
+
+ return SKIP;
+}
+
+time_t SourceDir::timestamp()
+{
+ if (!valid()) return 0;
+
+ time_t max = 0;
+ for (const_iterator d = begin(); d != end(); ++d)
+ {
+ FileType type = fileType(d->d_name);
+ if (type == SKIP) continue;
+
+ time_t ts = Path::timestamp(str::joinpath(path(), d->d_name));
+ if (ts > max) max = ts;
+ }
+
+ return max;
+}
+
+time_t SourceDir::vocTimestamp()
+{
+ if (!valid()) return 0;
+
+ time_t max = 0;
+ for (const_iterator d = begin(); d != end(); ++d)
+ {
+ FileType type = fileType(d->d_name);
+ if (type != VOC and type != VOCGZ) continue;
+
+ time_t ts = Path::timestamp(str::joinpath(path(), d->d_name));
+ if (ts > max) max = ts;
+ }
+
+ return max;
+}
+
+time_t SourceDir::tagTimestamp()
+{
+ if (!valid()) return 0;
+
+ time_t max = 0;
+ for (const_iterator d = begin(); d != end(); ++d)
+ {
+ FileType type = fileType(d->d_name);
+ if (type != TAG and type != TAGGZ) continue;
+
+ time_t ts = Path::timestamp(str::joinpath(path(), d->d_name));
+ if (ts > max) max = ts;
+ }
+
+ return max;
+}
+
+void SourceDir::readVocabularies(VocabularyMerger& out)
+{
+ if (!valid()) return;
+
+ for (const_iterator d = begin(); d != end(); ++d)
+ {
+ FileType type = fileType(d->d_name);
+ if (type == VOC)
+ {
+ // Read uncompressed data
+ tagcoll::input::Stdio in(str::joinpath(path(), d->d_name));
+
+ // Read the vocabulary
+ out.read(in);
+ }
+ else if (type == VOCGZ)
+ {
+ // Read compressed data
+ tagcoll::input::Zlib in(str::joinpath(path(), d->d_name));
+
+ // Read the vocabulary
+ out.read(in);
+ }
+ }
+}
+
+}
+}
+
+// vim:set ts=4 sw=4:
diff --git a/ept/debtags/maint/sourcedir.h b/ept/debtags/maint/sourcedir.h
new file mode 100644
index 0000000..5c2311a
--- /dev/null
+++ b/ept/debtags/maint/sourcedir.h
@@ -0,0 +1,74 @@
+#ifndef EPT_DEBTAGS_SOURCEDIR_H
+#define EPT_DEBTAGS_SOURCEDIR_H
+
+/** @file
+ * @author Enrico Zini <enrico@enricozini.org>
+ * Debtags data source directory access
+ */
+
+/*
+ * Copyright (C) 2003,2004,2005,2006,2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <wibble/sys/fs.h>
+#include <string>
+
+namespace ept {
+namespace debtags {
+
+class VocabularyMerger;
+
+/**
+ * Access a directory containing Debtags data files
+ */
+class SourceDir : public wibble::sys::fs::Directory
+{
+protected:
+ enum FileType { SKIP, TAG, VOC, TAGGZ, VOCGZ };
+
+ // Check if a file name is a tag file, a vocabulary file or a file to skip.
+ // Please notice that it works on file names, not paths.
+ FileType fileType(const std::string& name);
+
+public:
+ SourceDir(const std::string& path) : Directory(path) {}
+
+ /// Return the time of the newest file in the source directory
+ time_t timestamp();
+
+ /// Return the time of the newest vocabulary file in the source directory
+ time_t vocTimestamp();
+
+ /// Return the time of the newest tag file in the source directory
+ time_t tagTimestamp();
+
+ /// Read the tag files in the directory and output their content to out
+ template<typename OUT>
+ void readTags(OUT out);
+
+ /**
+ * Read the vocabulary files in the directory and output their content to
+ * out
+ */
+ void readVocabularies(VocabularyMerger& out);
+};
+
+}
+}
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/ept/debtags/maint/sourcedir.tcc b/ept/debtags/maint/sourcedir.tcc
new file mode 100644
index 0000000..b834f51
--- /dev/null
+++ b/ept/debtags/maint/sourcedir.tcc
@@ -0,0 +1,51 @@
+#ifndef EPT_DEBTAGS_SOURCEDIR_TCC
+#define EPT_DEBTAGS_SOURCEDIR_TCC
+
+/** @file
+ * @author Enrico Zini <enrico@enricozini.org>
+ * Debtags data source directory access
+ */
+#include <ept/debtags/maint/sourcedir.h>
+
+#include <tagcoll/input/zlib.h>
+#include <tagcoll/input/stdio.h>
+
+namespace ept {
+namespace debtags {
+
+template<typename OUT>
+void SourceDir::readTags(OUT out)
+{
+ if (!valid()) return;
+
+ for (const_iterator d = begin(); d != end(); ++d)
+ {
+ FileType type = fileType(d->d_name);
+ if (type == TAG)
+ {
+ // Read uncompressed data
+ tagcoll::input::Stdio in(path() + "/" + d->d_name);
+
+ // Read the collection
+ tagcoll::textformat::parse(in, out);
+ }
+ else if (type == TAGGZ)
+ {
+ // Read compressed data
+ tagcoll::input::Zlib in(path() + "/" + d->d_name);
+
+ // Read the collection
+ tagcoll::textformat::parse(in, out);
+ }
+ }
+}
+
+}
+}
+
+#include <tagcoll/TextFormat.tcc>
+
+#endif
+
+// -*- C++ -*-
+// vim:set ts=4 sw=4:
diff --git a/ept/debtags/maint/vocabularyindexer.cc b/ept/debtags/maint/vocabularyindexer.cc
new file mode 100644
index 0000000..89ab467
--- /dev/null
+++ b/ept/debtags/maint/vocabularyindexer.cc
@@ -0,0 +1,195 @@
+#include <ept/debtags/maint/vocabularyindexer.h>
+#include <ept/debtags/vocabulary.h>
+#include <ept/debtags/maint/vocabularymerger.h>
+#include <ept/debtags/maint/path.h>
+
+namespace ept {
+namespace debtags {
+
+VocabularyIndexer::VocabularyIndexer()
+ : mainSource(Path::debtagsSourceDir()), userSource(Path::debtagsUserSourceDir())
+{
+ rescan();
+}
+
+void VocabularyIndexer::rescan()
+{
+ ts_main_src = mainSource.vocTimestamp();
+ ts_user_src = userSource.vocTimestamp();
+ ts_main_voc = Path::timestamp(Path::vocabulary());
+ ts_main_idx = Path::timestamp(Path::vocabularyIndex());
+ ts_user_voc = Path::timestamp(Path::userVocabulary());
+ ts_user_idx = Path::timestamp(Path::userVocabularyIndex());
+}
+
+bool VocabularyIndexer::needsRebuild() const
+{
+ // If there are no indexes of any kind, then we need rebuilding
+ if (ts_user_voc == 0 && ts_user_idx == 0 && ts_main_voc == 0 && ts_main_idx == 0)
+ return true;
+
+ // If the user index is ok, then we are fine
+ if (ts_user_voc >= sourceTimestamp() && ts_user_idx >= sourceTimestamp())
+ return false;
+
+ // If there are user sources, then we cannot use the system index
+ if (ts_user_src > 0)
+ return true;
+
+ // If there are no user sources, then we can fallback on the system
+ // indexes in case the user indexes are not up to date
+ if (ts_main_voc >= sourceTimestamp() && ts_main_idx >= sourceTimestamp())
+ return false;
+
+ return true;
+}
+
+bool VocabularyIndexer::userIndexIsRedundant() const
+{
+ // If there is no user index, then it is not redundant
+ if (ts_user_voc == 0 && ts_user_idx == 0)
+ return false;
+
+ // If we have user sources, then the user index is never redundant
+ if (ts_user_src > 0)
+ return false;
+
+ // If the system index is not up to date, then the user index is not
+ // redundant
+ if (ts_main_voc < sourceTimestamp() || ts_main_idx < sourceTimestamp())
+ return false;
+
+ return true;
+}
+
+bool VocabularyIndexer::rebuild(const std::string& vocfname, const std::string& idxfname)
+{
+ using namespace tagcoll;
+
+ // Create the master MMap index
+ diskindex::MasterMMapIndexer master(idxfname);
+
+ // Read and merge vocabulary data
+ VocabularyMerger voc;
+ mainSource.readVocabularies(voc);
+ userSource.readVocabularies(voc);
+
+ if (voc.empty())
+ return false;
+ //throw wibble::exception::Consistency("Reading debtags sources from " + mainSource.path() + " and " + userSource.path(), "Unable to find any vocabulary data");
+
+ // Write the merged vocabulary, and generate tag and facet IDs as a side
+ // effect
+ std::string tmpvocfname = vocfname + ".tmp";
+ voc.write(tmpvocfname);
+
+ // Add the indexed vocabulary data to the master index
+ // 0: facets
+ master.append(voc.facetIndexer());
+ // 1: tags
+ master.append(voc.tagIndexer());
+
+ if (rename(tmpvocfname.c_str(), vocfname.c_str()) == -1)
+ throw wibble::exception::System("renaming " + tmpvocfname + " to " + vocfname);
+
+ master.commit();
+ return true;
+}
+
+bool VocabularyIndexer::rebuildIfNeeded()
+{
+ if (needsRebuild())
+ {
+ // Decide if we rebuild the user index or the system index
+
+ if (ts_user_src == 0 && Path::access(Path::debtagsIndexDir(), W_OK) == 0)
+ {
+ // There are no user sources and we can write to the system index
+ // directory: rebuild the system index
+ if (!rebuild(Path::vocabulary(), Path::vocabularyIndex()))
+ return false;
+ ts_main_voc = Path::timestamp(Path::vocabulary());
+ ts_main_idx = Path::timestamp(Path::vocabularyIndex());
+ if (Path::vocabulary() == Path::userVocabulary())
+ ts_user_voc = ts_main_voc;
+ if (Path::vocabularyIndex() == Path::userVocabularyIndex())
+ ts_user_idx = ts_main_idx;
+ } else {
+ wibble::sys::fs::mkFilePath(Path::userVocabulary());
+ wibble::sys::fs::mkFilePath(Path::userVocabularyIndex());
+ if (!rebuild(Path::userVocabulary(), Path::userVocabularyIndex()))
+ return false;
+ ts_user_voc = Path::timestamp(Path::userVocabulary());
+ ts_user_idx = Path::timestamp(Path::userVocabularyIndex());
+ }
+ return true;
+ }
+ return false;
+}
+
+bool VocabularyIndexer::deleteRedundantUserIndex()
+{
+ if (userIndexIsRedundant())
+ {
+ // Delete the user indexes if they exist
+ if (Path::vocabulary() != Path::userVocabulary())
+ {
+ unlink(Path::userVocabulary().c_str());
+ ts_user_voc = 0;
+ }
+ if (Path::vocabularyIndex() != Path::userVocabularyIndex())
+ {
+ unlink(Path::userVocabularyIndex().c_str());
+ ts_user_idx = 0;
+ }
+ return true;
+ }
+ return false;
+}
+
+bool VocabularyIndexer::getUpToDateVocabulary(std::string& vocfname, std::string& idxfname)
+{
+ // If there are no indexes of any kind, then we have nothing to return
+ if (ts_user_voc == 0 && ts_user_idx == 0 && ts_main_voc == 0 && ts_main_idx == 0)
+ return false;
+
+ // If the user index is up to date, use it
+ if (ts_user_voc >= sourceTimestamp() &&
+ ts_user_idx >= sourceTimestamp())
+ {
+ vocfname = Path::userVocabulary();
+ idxfname = Path::userVocabularyIndex();
+ return true;
+ }
+
+ // If the user index is not up to date and we have user sources, we cannot
+ // fall back to the system index
+ if (ts_user_src != 0)
+ return false;
+
+ // Fallback to the system index
+ if (ts_main_voc >= sourceTimestamp() &&
+ ts_main_idx >= sourceTimestamp())
+ {
+ vocfname = Path::vocabulary();
+ idxfname = Path::vocabularyIndex();
+ return true;
+ }
+
+ return false;
+}
+
+
+bool VocabularyIndexer::obtainWorkingVocabulary(std::string& vocfname, std::string& idxfname)
+{
+ VocabularyIndexer v;
+
+ v.rebuildIfNeeded();
+ v.deleteRedundantUserIndex();
+ return v.getUpToDateVocabulary(vocfname, idxfname);
+}
+
+}
+}
+
+// vim:set ts=4 sw=4:
diff --git a/ept/debtags/maint/vocabularyindexer.h b/ept/debtags/maint/vocabularyindexer.h
new file mode 100644
index 0000000..a2a15dd
--- /dev/null
+++ b/ept/debtags/maint/vocabularyindexer.h
@@ -0,0 +1,116 @@
+#ifndef EPT_DEBTAGS_VOCABULARYINDEXER_H
+#define EPT_DEBTAGS_VOCABULARYINDEXER_H
+
+/** @file
+ * @author Enrico Zini <enrico@enricozini.org>
+ * Debtags vocabulary indexer
+ */
+
+/*
+ * Copyright (C) 2003,2004,2005,2006,2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/debtags/maint/sourcedir.h>
+#include <string>
+
+namespace ept {
+namespace debtags {
+
+/**
+ * Infrastructure used to rebuild the vocabulary index when needed
+ */
+struct VocabularyIndexer
+{
+ SourceDir mainSource;
+ SourceDir userSource;
+ time_t ts_main_src;
+ time_t ts_user_src;
+ time_t ts_main_voc;
+ time_t ts_main_idx;
+ time_t ts_user_voc;
+ time_t ts_user_idx;
+
+ /**
+ * Get the timestamp of the newest vocabulary data source
+ */
+ time_t sourceTimestamp() const { return ts_main_src < ts_user_src ? ts_user_src : ts_main_src; }
+ /**
+ * Return true if the vocabulary index needs rebuilding
+ */
+ bool needsRebuild() const;
+
+ /**
+ * Rebuild the vocabulary index
+ * @param vocfname
+ * Full pathname of the merged vocabulary to create
+ * @param idxfname
+ * Full pathname of the vocabulary index to create
+ */
+ bool rebuild(const std::string& vocfname, const std::string& idxfname);
+
+ /**
+ * Rebuild the vocabulary if needed
+ */
+ bool rebuildIfNeeded();
+
+ /**
+ * Get the names of the merged vocabulary and vocabulary index that can be
+ * used to access Debtags vocabulary data.
+ *
+ * The system or the user index will be returned according to which one is
+ * up to date.
+ */
+ bool getUpToDateVocabulary(std::string& vocfname, std::string& idxfname);
+
+ /**
+ * Returns true if the index in the user home directory is redundant and
+ * can be deleted.
+ *
+ * The user index is redundant if the system index is up to date.
+ */
+ bool userIndexIsRedundant() const;
+
+ /**
+ * Deletes the user index if it is redundant
+ */
+ bool deleteRedundantUserIndex();
+
+ /**
+ * Rescan the various timestamps
+ */
+ void rescan();
+
+ VocabularyIndexer();
+
+ /**
+ * Get the names of the merged vocabulary and vocabulary index that can be
+ * used to access Debtags vocabulary data.
+ *
+ * The system or the user index will be returned according to which one is
+ * up to date.
+ *
+ * The files will be built or rebuilt if they are missing or outdated.
+ */
+ static bool obtainWorkingVocabulary(std::string& vocfname, std::string& idxfname);
+};
+
+
+}
+}
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/ept/debtags/maint/vocabularymerger.cc b/ept/debtags/maint/vocabularymerger.cc
new file mode 100644
index 0000000..583d41a
--- /dev/null
+++ b/ept/debtags/maint/vocabularymerger.cc
@@ -0,0 +1,386 @@
+/*
+ * Merge different vocabularies together and create the tag and facet indexes
+ *
+ * Copyright (C) 2003-2006 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+
+#include <ept/debtags/maint/vocabularymerger.h>
+#include <ept/debtags/maint/debdbparser.h>
+
+#include <cassert>
+#include <cstring>
+
+using namespace std;
+using namespace tagcoll;
+
+namespace ept {
+namespace debtags {
+
+static void writeDebStyleField(FILE* out, const string& name, const string& val) throw ()
+{
+ fprintf(out, "%s: ", name.c_str());
+
+ // Properly escape newlines
+ bool was_nl = false;
+ for (string::const_iterator s = val.begin(); s != val.end(); s++)
+ if (was_nl)
+ // \n\n -> \n .\n
+ if (*s == '\n')
+ {
+ fputc(' ', out);
+ fputc('.', out);
+ fputc(*s, out);
+ }
+ // \n([^ \t]) -> \n \1
+ else if (*s != ' ' && *s != '\t')
+ {
+ fputc(' ', out);
+ fputc(*s, out);
+ was_nl = false;
+ }
+ // \n[ \t] goes unchanged
+ else
+ {
+ fputc(*s, out);
+ was_nl = false;
+ }
+ else
+ if (*s == '\n')
+ {
+ fputc(*s, out);
+ was_nl = true;
+ }
+ else
+ fputc(*s, out);
+
+ fputc('\n', out);
+}
+
+VocabularyMerger::TagData& VocabularyMerger::FacetData::obtainTag(const std::string& name)
+{
+ std::map<std::string, TagData>::iterator i = tags.find(name);
+ if (i == tags.end())
+ {
+ // Create the tag if it's missing
+ pair<std::map<std::string, TagData>::iterator, bool> res = tags.insert(make_pair<std::string, TagData>(name, TagData()));
+ i = res.first;
+ i->second.name = name;
+ }
+ return i->second;
+}
+
+VocabularyMerger::FacetData& VocabularyMerger::obtainFacet(const std::string& name)
+{
+ std::map<std::string, FacetData>::iterator i = facets.find(name);
+ if (i == facets.end())
+ {
+ // Create the facet if it's missing
+ pair<std::map<std::string, FacetData>::iterator, bool> res = facets.insert(make_pair<std::string, FacetData>(name, FacetData()));
+ i = res.first;
+ i->second.name = name;
+ }
+ return i->second;
+}
+
+VocabularyMerger::TagData& VocabularyMerger::obtainTag(const std::string& fullname)
+{
+ size_t p = fullname.find("::");
+ if (p == string::npos)
+ {
+ FacetData& facet = obtainFacet("legacy");
+ return facet.obtainTag(fullname);
+ } else {
+ FacetData& facet = obtainFacet(fullname.substr(0, p));
+ return facet.obtainTag(fullname.substr(p + 2));
+ }
+}
+
+
+void VocabularyMerger::read(tagcoll::input::Input& input)
+{
+ DebDBParser parser(input);
+ DebDBParser::Record record;
+
+ while (parser.nextRecord(record))
+ {
+ DebDBParser::Record::const_iterator fi = record.find("Facet");
+ DebDBParser::Record::const_iterator ti = record.find("Tag");
+ if (fi != record.end())
+ {
+ // Get the facet record
+ FacetData& facet = obtainFacet(fi->second);
+ //fprintf(stderr, "Read facet@%d %.*s\n", parser.lineNumber(), PFSTR(facet.name));
+ assert(facet.name == fi->second);
+
+ // Merge the data
+ for (DebDBParser::Record::const_iterator i = record.begin();
+ i != record.end(); i++)
+ if (i->first != "Facet")
+ facet[i->first] = i->second;
+ }
+ else if (ti != record.end())
+ {
+ // Get the tag record
+ TagData& tag = obtainTag(ti->second);
+ //fprintf(stderr, "Read tag@%d %.*s\n", parser.lineNumber(), PFSTR(tag.name));
+ //assert(tag.name == ti->second);
+
+ // Merge the data
+ for (DebDBParser::Record::const_iterator i = record.begin();
+ i != record.end(); i++)
+ if (i->first != "Tag")
+ tag[i->first] = i->second;
+ }
+ else
+ {
+ fprintf(stderr, "%s:%d: Skipping record without Tag or Facet field\n",
+ input.fileName().c_str(), input.lineNumber());
+ }
+ }
+}
+
+bool VocabularyMerger::hasTag(const std::string& fullname) const
+{
+ size_t p = fullname.find("::");
+ std::string facetName;
+ std::string tagName;
+ if (p == string::npos)
+ {
+ facetName = "legacy";
+ tagName = fullname;
+ } else {
+ facetName = fullname.substr(0, p);
+ tagName = fullname.substr(p + 2);
+ }
+
+ std::map<std::string, FacetData>::const_iterator i = facets.find(facetName);
+ if (i == facets.end())
+ return false;
+ return i->second.tags.find(tagName) != i->second.tags.end();
+}
+
+int VocabularyMerger::tagID(const std::string& fullname) const
+{
+ size_t p = fullname.find("::");
+ std::string facetName;
+ std::string tagName;
+ if (p == string::npos)
+ {
+ facetName = "legacy";
+ tagName = fullname;
+ } else {
+ facetName = fullname.substr(0, p);
+ tagName = fullname.substr(p + 2);
+ }
+
+ std::map<std::string, FacetData>::const_iterator i = facets.find(facetName);
+ if (i == facets.end())
+ return -1;
+ std::map<std::string, TagData>::const_iterator j = i->second.tags.find(tagName);
+ if (j == i->second.tags.end())
+ return -1;
+ return j->second.id;
+}
+
+std::set<std::string> VocabularyMerger::tagNames() const
+{
+ set<string> res;
+ for (std::map<std::string, FacetData>::const_iterator f = facets.begin(); f != facets.end(); f++)
+ for (std::map<std::string, TagData>::const_iterator t = f->second.tags.begin();
+ t != f->second.tags.end(); t++)
+ res.insert(f->first + "::" + t->first);
+ return res;
+}
+
+void VocabularyMerger::write(const std::string& fname)
+{
+ FILE* out = fopen(fname.c_str(), "wt");
+ if (!out)
+ throw wibble::exception::File(fname, "cept_debtags_vocabularymerger:reating file ");
+ write(out);
+ fclose(out);
+}
+
+void VocabularyMerger::write(FILE* out)
+{
+ long start_ofs = ftell(out);
+ int facetid = 0;
+ int tagid = 0;
+
+ //fprintf(stderr, "Write\n");
+ for (std::map<std::string, FacetData>::iterator f = facets.begin(); f != facets.end(); f++)
+ {
+ f->second.id = facetid++;
+ //fprintf(stderr, "Writing facet %.*s\n", PFSTR(f->first));
+ f->second.ofs = ftell(out) - start_ofs;
+ writeDebStyleField(out, "Facet", f->first);
+ for (std::map<std::string, std::string>::const_iterator j = f->second.begin();
+ j != f->second.end(); j++)
+ writeDebStyleField(out, j->first, j->second);
+ fputc('\n', out);
+ f->second.len = ftell(out) - f->second.ofs;
+
+ for (std::map<std::string, TagData>::iterator t = f->second.tags.begin();
+ t != f->second.tags.end(); t++)
+ {
+ t->second.id = tagid++;
+ //fprintf(stderr, "Writing tag %.*s\n", PFSTR(t->first));
+ t->second.ofs = ftell(out) - start_ofs;
+ writeDebStyleField(out, "Tag", f->first + "::" + t->first);
+ for (std::map<std::string, std::string>::const_iterator j = t->second.begin();
+ j != t->second.end(); j++)
+ writeDebStyleField(out, j->first, j->second);
+ fputc('\n', out);
+ t->second.len = ftell(out) - t->second.ofs;
+ }
+ }
+
+ tagCount = tagid;
+}
+
+
+int VocabularyMerger::FacetIndexer::encodedSize() const
+{
+ // First the main offset table
+ int size = vm.facets.size() * sizeof(int);
+
+ for (std::map<std::string, FacetData>::const_iterator f = vm.facets.begin(); f != vm.facets.end(); f++)
+ {
+ // offset of record in vocabulary
+ // size of record in vocabulary
+ // id of first tag
+ // id of last tag
+ // name (0-terminated)
+ size += 4 * sizeof(int) + f->first.size() + 1;
+
+ // Align to int boundaries
+ if ((size % sizeof(int)) != 0)
+ size = (size + sizeof(int)) / sizeof(int) * sizeof(int);
+ }
+
+ return tagcoll::diskindex::MMap::align(size);
+}
+
+void VocabularyMerger::FacetIndexer::encode(char* buf) const
+{
+ int pos = vm.facets.size() * sizeof(int);
+
+ for (std::map<std::string, FacetData>::const_iterator f = vm.facets.begin(); f != vm.facets.end(); f++)
+ {
+ ((int*)buf)[f->second.id] = pos;
+
+ // offset of record in vocabulary
+ *(int*)(buf+pos) = f->second.ofs;
+ pos += sizeof(int);
+
+ // size of record in vocabulary
+ *(int*)(buf+pos) = f->second.len;
+ pos += sizeof(int);
+
+ if (f->second.tags.empty())
+ {
+ // id of first tag
+ *(int*)(buf+pos) = -1;
+ pos += sizeof(int);
+
+ // id of last tag
+ *(int*)(buf+pos) = -1;
+ pos += sizeof(int);
+ } else {
+ // id of first tag
+ *(int*)(buf+pos) = f->second.tags.begin()->second.id;
+ pos += sizeof(int);
+
+ // id of last tag
+ *(int*)(buf+pos) = f->second.tags.rbegin()->second.id;
+ pos += sizeof(int);
+ }
+
+ // name (0-terminated)
+ memcpy(buf + pos, f->first.c_str(), f->first.size() + 1);
+ pos += f->first.size() + 1;
+
+ // Align to int boundaries
+ if ((pos % sizeof(int)) != 0)
+ pos = (pos + sizeof(int)) / sizeof(int) * sizeof(int);
+ }
+}
+
+int VocabularyMerger::TagIndexer::encodedSize() const
+{
+ // First the main offset table
+ int size = vm.tagCount * sizeof(int);
+
+ for (std::map<std::string, FacetData>::const_iterator f = vm.facets.begin(); f != vm.facets.end(); f++)
+ {
+ for (std::map<std::string, TagData>::const_iterator t = f->second.tags.begin();
+ t != f->second.tags.end(); t++)
+ {
+ // offset of record in vocabulary
+ // size of record in vocabulary
+ // id of facet
+ // name (0-terminated)
+ size += 3 * sizeof(int) + f->first.size() + t->first.size() + 3;
+
+ // Align to int boundaries
+ if ((size % sizeof(int)) != 0)
+ size = (size + sizeof(int)) / sizeof(int) * sizeof(int);
+ }
+ }
+ return tagcoll::diskindex::MMap::align(size);
+}
+
+void VocabularyMerger::TagIndexer::encode(char* buf) const
+{
+ int pos = vm.tagCount * sizeof(int);
+
+ for (std::map<std::string, FacetData>::const_iterator f = vm.facets.begin(); f != vm.facets.end(); f++)
+ {
+ for (std::map<std::string, TagData>::const_iterator t = f->second.tags.begin();
+ t != f->second.tags.end(); t++)
+ {
+ ((int*)buf)[t->second.id] = pos;
+
+ // offset of record in vocabulary
+ *(int*)(buf+pos) = t->second.ofs;
+ pos += sizeof(int);
+
+ // size of record in vocabulary
+ *(int*)(buf+pos) = t->second.len;
+ pos += sizeof(int);
+
+ // id of facet
+ *(int*)(buf+pos) = f->second.id;
+ pos += sizeof(int);
+
+ // name (0-terminated)
+ string name = f->first + "::" + t->first;
+ memcpy(buf + pos, name.c_str(), name.size() + 1);
+ pos += name.size() + 1;
+
+ // Align to int boundaries
+ if ((pos % sizeof(int)) != 0)
+ pos = (pos + sizeof(int)) / sizeof(int) * sizeof(int);
+ }
+ }
+}
+
+}
+}
+
+// vim:set ts=4 sw=4:
diff --git a/ept/debtags/maint/vocabularymerger.h b/ept/debtags/maint/vocabularymerger.h
new file mode 100644
index 0000000..adbee8e
--- /dev/null
+++ b/ept/debtags/maint/vocabularymerger.h
@@ -0,0 +1,157 @@
+/*
+ * Merge different vocabularies together and create the tag and facet indexes
+ *
+ * Copyright (C) 2003-2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <tagcoll/diskindex/mmap.h>
+#include <tagcoll/input/base.h>
+#include <string>
+#include <map>
+#include <set>
+
+#ifndef EPT_DEBTAGS_VOCABULARYMERGER_H
+#define EPT_DEBTAGS_VOCABULARYMERGER_H
+
+namespace ept {
+namespace debtags {
+
+class VocabularyMerger
+{
+protected:
+ class FacetIndexer : public tagcoll::diskindex::MMapIndexer
+ {
+ protected:
+ VocabularyMerger& vm;
+ public:
+ FacetIndexer(VocabularyMerger& vm) : vm(vm) {}
+ virtual ~FacetIndexer() {}
+ virtual int encodedSize() const;
+ virtual void encode(char* buf) const;
+ };
+ class TagIndexer : public tagcoll::diskindex::MMapIndexer
+ {
+ protected:
+ VocabularyMerger& vm;
+ public:
+ TagIndexer(VocabularyMerger& vm) : vm(vm) {}
+ virtual ~TagIndexer() {}
+ virtual int encodedSize() const;
+ virtual void encode(char* buf) const;
+ };
+ class TagData : public std::map<std::string, std::string>
+ {
+ public:
+ std::string name;
+ // Offset in the last written file (used for indexing)
+ long ofs;
+ int len;
+ int id;
+
+ TagData() : ofs(0), len(0) {}
+ };
+ class FacetData : public std::map<std::string, std::string>
+ {
+ public:
+ std::string name;
+ std::map<std::string, TagData> tags;
+ // Offset in the last written file (used for indexing)
+ long ofs;
+ int len;
+ int id;
+
+ FacetData() : ofs(0), len(0) {}
+
+ TagData& obtainTag(const std::string& fullname);
+ };
+ std::map<std::string, FacetData> facets;
+ int tagCount;
+ FacetIndexer findexer;
+ TagIndexer tindexer;
+
+ FacetData& obtainFacet(const std::string& name);
+ TagData& obtainTag(const std::string& fullname);
+
+public:
+ VocabularyMerger() : tagCount(0), findexer(*this), tindexer(*this) {}
+
+ /**
+ * Check if there is any data in the merged vocabulary
+ */
+ bool empty() const { return facets.empty(); }
+
+ /**
+ * Parse and import the vocabulary from `input', merging the data with the
+ * previously imported ones
+ */
+ void read(tagcoll::input::Input& input);
+
+ /**
+ * Write the vocabulary data to the given file
+ */
+ void write(const std::string& fname);
+
+ /**
+ * Write the vocabulary data to the given output stream
+ */
+ void write(FILE* out);
+
+ /**
+ * Get the facet indexer.
+ *
+ * Note: the indexers will only be functional after one of the write
+ * methods have been invoked
+ */
+ const tagcoll::diskindex::MMapIndexer& facetIndexer() const { return findexer; }
+
+ /**
+ * Get the tag indexer.
+ *
+ * Note: the indexers will only be functional after one of the write
+ * methods have been invoked
+ */
+ const tagcoll::diskindex::MMapIndexer& tagIndexer() const { return tindexer; }
+
+ /**
+ * Check if the vocabulary contains the facet `name'
+ */
+ bool hasFacet(const std::string& name) const
+ {
+ return facets.find(name) != facets.end();
+ }
+
+ /**
+ * Check if the vocabulary contains the tag `fullname'
+ */
+ bool hasTag(const std::string& fullname) const;
+
+ /**
+ * Return the ID for the given tag (or -1 if not found)
+ */
+ int tagID(const std::string& fullname) const;
+
+ /**
+ * Return a set with all tag names
+ */
+ std::set<std::string> tagNames() const;
+};
+
+}
+}
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/ept/debtags/maint/vocabularymerger.test.h b/ept/debtags/maint/vocabularymerger.test.h
new file mode 100644
index 0000000..4443a22
--- /dev/null
+++ b/ept/debtags/maint/vocabularymerger.test.h
@@ -0,0 +1,144 @@
+/*
+ * Merge different vocabularies together and create the tag and facet indexes
+ *
+ * Copyright (C) 2003-2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <wibble/test.h>
+#include <ept/debtags/maint/vocabularymerger.h>
+#include <tagcoll/input/string.h>
+
+using namespace std;
+using namespace tagcoll;
+
+struct TestVocabularyMerger {
+
+ inline static const char* indexref(const char* index, int id)
+ {
+ return index + ((int*)index)[id];
+ }
+
+
+ Test _1()
+{
+ string voc1 =
+ "Facet: taste\n"
+ "Description: Taste\n\n"
+ "Tag: taste::sweet\n"
+ "Description: Sweet\n\n"
+ "Tag: taste::salty\n"
+ "Description: Salty\n\n";
+ string voc2 =
+ "Facet: smell\n"
+ "Description: Smell\n\n"
+ "Tag: smell::fresh\n"
+ "Description: Fresh\n\n"
+ "Tag: smell::mold\n"
+ "Description: Mold\n\n";
+ tagcoll::input::String in1(voc1);
+ tagcoll::input::String in2(voc2);
+
+ ept::debtags::VocabularyMerger vm;
+
+ // Read and merge the two vocabulary samples
+ vm.read(in1);
+ vm.read(in2);
+
+ // Write the merged vocabulary to /dev/null (but generate offsets and indexes in the meantime)
+ vm.write("/dev/null");
+
+ // Create the facet index
+ char facetIndex[vm.facetIndexer().encodedSize()];
+ vm.facetIndexer().encode(facetIndex);
+
+ // Create the tag index
+ char tagIndex[vm.tagIndexer().encodedSize()];
+ vm.tagIndexer().encode(tagIndex);
+
+ // Check that the facet names have been encoded correctly and in order
+ assert_eq(string(indexref(facetIndex, 0) + 4*sizeof(int)), "smell");
+ assert_eq(string(indexref(facetIndex, 1) + 4*sizeof(int)), "taste");
+
+ // Check the first and last tag indexes for the facets
+ assert_eq(((int*)indexref(facetIndex, 0))[2], 0);
+ assert_eq(((int*)indexref(facetIndex, 0))[3], 1);
+ assert_eq(((int*)indexref(facetIndex, 1))[2], 2);
+ assert_eq(((int*)indexref(facetIndex, 1))[3], 3);
+
+ // Check that the tag names have been encoded correctly and in order
+ assert_eq(string(indexref(tagIndex, 0) + 3*sizeof(int)), "smell::fresh");
+ assert_eq(string(indexref(tagIndex, 1) + 3*sizeof(int)), "smell::mold");
+ assert_eq(string(indexref(tagIndex, 2) + 3*sizeof(int)), "taste::salty");
+ assert_eq(string(indexref(tagIndex, 3) + 3*sizeof(int)), "taste::sweet");
+
+ // Check the facet indexes for the tags
+ assert_eq(((int*)indexref(tagIndex, 0))[2], 0);
+ assert_eq(((int*)indexref(tagIndex, 1))[2], 0);
+ assert_eq(((int*)indexref(tagIndex, 2))[2], 1);
+ assert_eq(((int*)indexref(tagIndex, 3))[2], 1);
+}
+
+// Test parsing a vocabulary with a tag without a defined facet
+ Test _2()
+{
+ string voc =
+ "Tag: foo::bar\n"
+ "Description: Tag without facet\n"
+ " VocabularyMerged should behave fine in this case.\n\n";
+ tagcoll::input::String in(voc);
+
+ ept::debtags::VocabularyMerger vm;
+ vm.read(in);
+
+ // Write the merged vocabulary to /dev/null (but generate offsets and indexes in the meantime)
+ vm.write("/dev/null");
+
+ // Create the facet index
+ char facetIndex[vm.facetIndexer().encodedSize()];
+ vm.facetIndexer().encode(facetIndex);
+
+ // Create the tag index
+ char tagIndex[vm.tagIndexer().encodedSize()];
+ vm.tagIndexer().encode(tagIndex);
+}
+
+// Test parsing a vocabulary with a facet without tags
+ Test _3()
+{
+ string voc =
+ "Facet: empty\n"
+ "Description: Facet without tags\n"
+ " VocabularyMerged used to segfault in this case.\n\n";
+ tagcoll::input::String in(voc);
+
+ ept::debtags::VocabularyMerger vm;
+ vm.read(in);
+
+ // Write the merged vocabulary to /dev/null (but generate offsets and indexes in the meantime)
+ vm.write("/dev/null");
+
+ // Create the facet index
+ char facetIndex[vm.facetIndexer().encodedSize()];
+ vm.facetIndexer().encode(facetIndex);
+
+ // Create the tag index
+ char tagIndex[vm.tagIndexer().encodedSize()];
+ vm.tagIndexer().encode(tagIndex);
+}
+
+};
+// vim:set ts=4 sw=4:
diff --git a/ept/debtags/tag.cc b/ept/debtags/tag.cc
new file mode 100644
index 0000000..09392e9
--- /dev/null
+++ b/ept/debtags/tag.cc
@@ -0,0 +1,138 @@
+/* -*- C++ -*-
+ * Copyright (C) 2005,2006 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/debtags/tag.h>
+#include <ept/debtags/vocabulary.h>
+#include <stdexcept>
+
+namespace ept {
+namespace debtags {
+
+static inline std::string constget(const std::map<std::string, std::string>& m,
+ const std::string& key)
+{
+ std::map<std::string, std::string>::const_iterator i = m.find(key);
+ if (i == m.end())
+ return std::string();
+ else
+ return i->second;
+}
+
+std::string Facet::name() const
+{
+ if (valid())
+ return m_tags->facetName(m_id);
+ throw std::out_of_range( "No name for this facet" );
+}
+std::string Facet::name(const std::string& d) const
+{
+ return valid() ? m_tags->facetName(m_id) : d;
+}
+
+std::string Facet::shortDescription() const
+{
+ if (valid())
+ return constget(m_tags->facetData(m_id), "_SD_");
+ throw std::out_of_range( "No short description for this facet" );
+}
+std::string Facet::shortDescription(const std::string& d) const
+{
+ return valid() ? constget(m_tags->facetData(m_id), "_SD_") : d;
+}
+
+std::string Facet::longDescription() const
+{
+ if (valid())
+ return constget(m_tags->facetData(m_id), "Description");
+ throw std::out_of_range( "No long description for this facet" );
+}
+std::string Facet::longDescription(const std::string& d) const
+{
+ return valid() ? constget(m_tags->facetData(m_id), "Description") : d;
+}
+
+bool Facet::hasTag(const std::string& name) const
+{
+ if (!valid())
+ throw std::out_of_range( "hasTag() called on an invalid facet" );
+ return m_tags->hasTag(this->name() + "::" + name);
+}
+
+std::set< Tag > Facet::tags() const
+{
+ if (!valid())
+ throw std::out_of_range( "tags() called on an invalid facet" );
+ return m_tags->tags(m_id);
+}
+
+
+Facet Tag::facet() const
+{
+ if (valid())
+ return m_tags->facetByTag(m_id);
+ throw std::out_of_range( "No facet for this tag" );
+}
+
+std::string Tag::name() const
+{
+ if (valid())
+ return m_tags->tagShortName(m_id);
+ throw std::out_of_range( "No name for this tag" );
+}
+std::string Tag::name(const std::string& d) const
+{
+ return valid() ? m_tags->tagShortName(m_id) : d;
+}
+
+std::string Tag::fullname() const
+{
+ if (valid())
+ return m_tags->tagName(m_id);
+ throw std::out_of_range( "No full name for this tag" );
+}
+std::string Tag::fullname(const std::string& d) const
+{
+ return valid() ? m_tags->tagName(m_id) : d;
+}
+
+std::string Tag::shortDescription() const
+{
+ if (valid())
+ return constget(m_tags->tagData(m_id), "_SD_");
+ throw std::out_of_range( "No short description for this tag" );
+}
+std::string Tag::shortDescription(const std::string& d) const
+{
+ return valid() ? constget(m_tags->tagData(m_id), "_SD_") : d;
+}
+
+std::string Tag::longDescription() const
+{
+ if (valid())
+ return constget(m_tags->tagData(m_id), "Description");
+ throw std::out_of_range( "No long description for this tag" );
+}
+std::string Tag::longDescription(const std::string& d) const
+{
+ return valid() ? constget(m_tags->tagData(m_id), "Description") : d;
+}
+
+}
+}
+
+// vim:set ts=3 sw=3:
diff --git a/ept/debtags/tag.h b/ept/debtags/tag.h
new file mode 100644
index 0000000..bb7488f
--- /dev/null
+++ b/ept/debtags/tag.h
@@ -0,0 +1,251 @@
+// -*- C++ -*-
+#ifndef EPT_DEBTAGS_TAG_H
+#define EPT_DEBTAGS_TAG_H
+
+/** \file
+ * Debtags facets and tags
+ */
+
+/*
+ * Copyright (C) 2005,2006,2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <set>
+#include <string>
+
+namespace ept {
+namespace debtags {
+
+class Vocabulary;
+
+class Tag;
+
+/**
+ * Representation of a facet.
+ *
+ * ept::debtags::Facet represents a Facet with all its informations.
+ * It is guaranteed to have fast value-copy semantics, so it can be passed
+ * around freely and efficiently without worrying about memory management
+ * issues.
+ *
+ * The class is normally instantiated using a Vocabulary:
+ * \code
+ * Facet facet = vocabulary.faceByName("made-of");
+ * \endcode
+ *
+ * Facets can contain an "invalid" value, in which case using any of their
+ * methods will likely produce segfault. The "invalid" facets are useful as
+ * "none" return values:
+ *
+ * \code
+ * Facet facet = vocabulary.facetByName("made-of");
+ * if (!facet)
+ * throw SomeException("facet \"made-of\" has not been defined");
+ * \endcode
+ */
+class Facet
+{
+protected:
+ const Vocabulary* m_tags;
+ int m_id;
+
+ Facet(const Vocabulary* tags, int id) : m_tags(tags), m_id(id) {}
+
+public:
+ Facet() : m_tags(0), m_id(-1) {}
+ ~Facet() {}
+
+ bool operator==(const Facet& f) const { return m_id == f.m_id; }
+ bool operator!=(const Facet& f) const { return m_id != f.m_id; }
+ bool operator<(const Facet& f) const { return m_id < f.m_id; }
+
+ /**
+ * Return true if the facet is valid
+ */
+ operator bool() const { return m_id != -1; }
+ bool valid() const { return m_id != -1; }
+
+ /**
+ * Return the name of the facet
+ * @throws std::out_of_range if the facet is not valid
+ */
+ std::string name() const;
+ /**
+ * Return the name of the facet
+ *
+ * Returns d if the facet is not valid.
+ */
+ std::string name(const std::string& d) const;
+
+ /**
+ * Return the short description of the facet
+ * @throws std::out_of_range if the facet is not valid
+ */
+ std::string shortDescription() const;
+ /**
+ * Return the short description of the facet
+ *
+ * Returns d if the facet is not valid.
+ */
+ std::string shortDescription(const std::string& d) const;
+
+ /**
+ * Return the long description of the facet
+ * @throws std::out_of_range if the facet is not valid
+ */
+ std::string longDescription() const;
+ /**
+ * Return the long description of the facet
+ *
+ * Returns d if the facet is not valid.
+ */
+ std::string longDescription(const std::string& d) const;
+
+ /**
+ * Return true if the facet has a tag with the given name (name, not fullname)
+ */
+ bool hasTag(const std::string& name) const;
+
+ /**
+ * Return the list of tags in this facet
+ */
+ std::set<Tag> tags() const;
+
+ /**
+ * Return the ID of this facet
+ *
+ * @warning This method is exported to help in writing tests, but it is not
+ * part of the normal API: do not use it, because future implementations may
+ * not be based on IDs and therefore not have this method.
+ */
+ int id() const { return m_id; }
+
+ friend class Vocabulary;
+};
+
+/**
+ * Representation of a tag.
+ *
+ * ept::debtags::Tag represents a Tag with all its informations.
+ * It is guaranteed to have fast value-copy semantics, so it can be passed
+ * around freely and efficiently without worrying about memory management
+ * issues.
+ *
+ * The class is normally instantiated using a Vocabulary:
+ * \code
+ * Tag tag = vocabulary.tagByName("made-of::lang:c++");
+ * \endcode
+ *
+ * Tags can contain an "invalid" value, in which case using any of their
+ * methods will likely produce segfault. The "invalid" facets are useful as
+ * "none" return values:
+ *
+ * \code
+ * Tag tag = vocabulary.tagByName("made-of");
+ * if (!tag)
+ * throw SomeException("tag \"mytag\" has not been defined");
+ * \endcode
+ */
+class Tag
+{
+protected:
+ const Vocabulary* m_tags;
+ int m_id;
+
+ Tag(const Vocabulary* tags, int id) : m_tags(tags), m_id(id) {}
+
+public:
+ typedef std::set< Tag > Set;
+
+ Tag() : m_tags(0), m_id(-1) {}
+ ~Tag() {}
+
+ bool operator==(const Tag& f) const { return m_id == f.m_id; }
+ bool operator!=(const Tag& f) const { return m_id != f.m_id; }
+ bool operator<(const Tag& f) const { return m_id < f.m_id; }
+
+ operator bool() const { return m_id != -1; }
+ bool valid() const { return m_id != -1; }
+
+ Facet facet() const;
+
+ /**
+ * Return the name of the tag, without the facet:: prefix
+ * @throws std::out_of_range if the tag is not valid
+ */
+ std::string name() const;
+ /**
+ * Return the short description of the tag
+ *
+ * Returns d if the tag is not valid.
+ */
+ std::string name(const std::string& d) const;
+
+ /**
+ * Return the name of the tag, with the facet:: prefix
+ * @throws std::out_of_range if the tag is not valid
+ */
+ std::string fullname() const;
+ /**
+ * Return the short description of the tag
+ *
+ * Returns d if the tag is not valid.
+ */
+ std::string fullname(const std::string& d) const;
+
+ /**
+ * Return the short description of the tag
+ * @throws std::out_of_range if the tag is not valid
+ */
+ std::string shortDescription() const;
+ /**
+ * Return the short description of the tag
+ *
+ * Returns d if the tag is not valid.
+ */
+ std::string shortDescription(const std::string& d) const;
+
+ /**
+ * Return the long description of the tag
+ *
+ * @throws std::out_of_range if the tag is not valid
+ */
+ std::string longDescription() const;
+ /**
+ * Return the long description of the tag
+ *
+ * Returns d if the tag is not valid.
+ */
+ std::string longDescription(const std::string& d) const;
+
+ /**
+ * Return the ID of this tag
+ *
+ * @warning This method is exported to help in writing tests, but it is not
+ * part of the normal API: do not use it, because future implementations may
+ * not be based on IDs and therefore not have this method.
+ */
+ int id() const { return m_id; }
+
+ friend class Vocabulary;
+};
+
+}
+}
+
+// vim:set ts=3 sw=3:
+#endif
diff --git a/ept/debtags/tag.test.h b/ept/debtags/tag.test.h
new file mode 100644
index 0000000..998147d
--- /dev/null
+++ b/ept/debtags/tag.test.h
@@ -0,0 +1,107 @@
+/*
+ * Copyright (C) 2005,2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#if 0
+#include <ept/tests/test-utils.h>
+#include <ept/debtags/tag.h>
+#include <ept/debtags/vocabulary.h>
+#include <ept/debtags/maint/path.h>
+
+#include <tagcoll/utils/set.h>
+
+using namespace std;
+using namespace ept::debtags;
+
+namespace tut {
+
+struct ept_debtags_tag_shar
+{
+ Path::OverrideDebtagsSourceDir odsd;
+ Path::OverrideDebtagsIndexDir odid;
+ Path::OverrideDebtagsUserSourceDir odusd;
+ Path::OverrideDebtagsUserIndexDir oduid;
+ Vocabulary voc;
+
+ ept_debtags_tag_shar()
+ : odsd("./"), odid("./"), odusd("./"), oduid("./") {}
+};
+
+TESTGRP( ept_debtags_tag );
+
+template<> template<>
+void to::test<1>()
+{
+ Tag a, b;
+ ensure( a == b );
+ ensure( !a.valid() );
+ ensure( !b.valid() );
+}
+
+template<> template<>
+void to::test<2>()
+{
+ Tag a;
+ int x = 1;
+ try {
+ a.shortDescription();
+ x = 2;
+ } catch (...) {
+ x = 3;
+ }
+ ensure_equals( x, 3 );
+}
+
+template<> template<>
+void to::test< 3 >()
+{
+ Facet f = voc.facetByName( "works-with" );
+ Tag t = voc.tagByName( "works-with::people" );
+ ensure( t.valid() );
+ ensure( f.valid() );
+ ensure( t.facet() == f );
+ ensure( tagcoll::utils::set_contains(f.tags(), t) );
+}
+
+template<> template<>
+void to::test< 4 >()
+{
+ Facet f = voc.facetByName( "works-with" );
+ Tag t = voc.tagByName( "works-with::people" );
+ ensure( t.valid() );
+ ensure( f.valid() );
+ ensure( f.hasTag( t.name() ) );
+}
+
+template<> template<>
+void to::test< 5 >()
+{
+ Tag t = voc.tagByName( "works-with::people" );
+ ensure( t.valid() );
+ ensure( t.facet().hasTag( t.name() ) );
+ ensure( tagcoll::utils::set_contains(t.facet().tags(), t) );
+}
+
+}
+
+/*
+#include <ept/cache/tag.tcc>
+#include <ept/cache/debtags/vocabulary.tcc>
+*/
+
+// vim:set ts=3 sw=3:
+#endif
diff --git a/ept/debtags/utils.h b/ept/debtags/utils.h
new file mode 100644
index 0000000..d8a32c4
--- /dev/null
+++ b/ept/debtags/utils.h
@@ -0,0 +1,66 @@
+/*
+ * Ready-made utility classes for Debtags
+ *
+ * Copyright (C) 2003--2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#ifndef EPT_DEBTAGS_UTILS_H
+#define EPT_DEBTAGS_UTILS_H
+
+#include <wibble/mixin.h>
+#include <ept/debtags/tag.h>
+
+namespace ept {
+namespace debtags {
+
+/**
+ * Convert a collection of ITEMs tagged with Tags to a collection of
+ * ITEMs tagged with only the facets.
+ */
+template<typename OUT>
+class TagToFacet : public wibble::mixin::OutputIterator< TagToFacet<OUT> >
+{
+protected:
+ OUT out;
+
+public:
+ TagToFacet(const OUT& out) : out(out) {}
+
+ template<typename ITEMS, typename TAGS>
+ TagToFacet<OUT>& operator=(const std::pair<ITEMS, TAGS>& data)
+ {
+ std::set< Facet > facets;
+ for (typename TAGS::const_iterator i = data.second.begin();
+ i != data.second.end(); ++i)
+ facets.insert(i->facet());
+ *out = make_pair(data.first, facets);
+ ++out;
+ return *this;
+ }
+};
+
+template<typename OUT>
+static TagToFacet<OUT> tagToFacet(const OUT& out)
+{
+ return TagToFacet<OUT>(out);
+}
+
+}
+}
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/ept/debtags/vocabulary.cc b/ept/debtags/vocabulary.cc
new file mode 100644
index 0000000..364fd94
--- /dev/null
+++ b/ept/debtags/vocabulary.cc
@@ -0,0 +1,230 @@
+/* -*- C++ -*-
+ * Tag vocabulary access
+ *
+ * Copyright (C) 2003--2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/debtags/vocabulary.h>
+#include <ept/debtags/maint/vocabularyindexer.h>
+#include <ept/debtags/maint/debdbparser.h>
+#include <ept/debtags/maint/path.h>
+
+#include <tagcoll/input/memory.h>
+
+#include <cstring>
+#include <sstream>
+
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <fcntl.h>
+#include <sys/mman.h>
+
+using namespace tagcoll;
+
+namespace ept {
+namespace debtags {
+
+int Vocabulary::FacetIndex::id(const char* name) const
+{
+ if (size() == 0) return -1;
+ int begin, end;
+
+ /* Binary search */
+ begin = -1, end = size();
+ while (end - begin > 1)
+ {
+ int cur = (end + begin) / 2;
+ if (strcmp(item(cur)->name, name) > 0)
+ end = cur;
+ else
+ begin = cur;
+ }
+
+ if (begin == -1 || strcmp(item(begin)->name, name) != 0)
+ //throw NotFoundException(string("looking for the ID of string ") + str);
+ return -1;
+ else
+ return begin;
+}
+
+int tagcmp(const char* tag1, const char* tag2)
+{
+ const char* tsep1 = strstr(tag1, "::");
+ if (tsep1 == NULL) return strcmp(tag1, tag2);
+ const char* tsep2 = strstr(tag2, "::");
+ if (tsep2 == NULL) return strcmp(tag1, tag2);
+
+ // See what is the length of the shortest facet
+ int len1 = tsep1 - tag1;
+ int len2 = tsep2 - tag2;
+ int minlen = len1 < len2 ? len1 : len2;
+
+ int res = strncmp(tag1, tag2, minlen);
+ if (res != 0)
+ // Different facets
+ return res;
+
+ if (len1 == len2)
+ // If the facet is the same, compare the tags
+ return strcmp(tsep1 + 2, tsep2 + 2);
+ else
+ // Two facets with similar prefixes
+ return len1 < len2 ? -1 : 1;
+}
+
+int Vocabulary::TagIndex::id(const char* name) const
+{
+ if (size() == 0) return -1;
+ int begin, end;
+
+ /* Binary search */
+ begin = -1, end = size();
+ while (end - begin > 1)
+ {
+ int cur = (end + begin) / 2;
+ if (tagcmp(item(cur)->name, name) > 0)
+ end = cur;
+ else
+ begin = cur;
+ }
+
+ if (begin == -1 || tagcmp(item(begin)->name, name) != 0)
+ //throw NotFoundException(string("looking for the ID of string ") + str);
+ return -1;
+ else
+ return begin;
+}
+
+Vocabulary::Vocabulary()
+ : voc_fd(-1), voc_size(0), voc_buf(0)
+{
+ std::string vocfname;
+ std::string idxfname;
+
+ if (!VocabularyIndexer::obtainWorkingVocabulary(vocfname, idxfname))
+ {
+ m_timestamp = 0;
+ return;
+ }
+
+ m_timestamp = Path::timestamp(idxfname);
+
+ mastermmap.init(idxfname);
+
+ // Initialize the facet and tag indexes
+ findex.init(mastermmap, 0);
+ tindex.init(mastermmap, 1);
+
+ // MMap the vocabulary
+
+ // Open the file
+ voc_fname = vocfname;
+ if ((voc_fd = open(voc_fname.c_str(), O_RDONLY)) == -1)
+ throw wibble::exception::File(voc_fname, "opening vocabulary file");
+
+ off_t size = lseek(voc_fd, 0, SEEK_END);
+ if (size == (off_t)-1)
+ throw wibble::exception::File(voc_fname, "reading the size of vocabulary file");
+ voc_size = size;
+
+ // Map the file into memory
+ if ((voc_buf = (const char*)mmap(0, voc_size, PROT_READ, MAP_PRIVATE, voc_fd, 0)) == MAP_FAILED)
+ throw wibble::exception::File(voc_fname, "mmapping vocabulary file");
+}
+
+Vocabulary::~Vocabulary()
+{
+ // Unmap and close the file
+ if (voc_buf)
+ munmap((void*)voc_buf, voc_size);
+ if (voc_fd != -1)
+ close(voc_fd);
+}
+
+Facet Vocabulary::facetByID(int id) const
+{
+ return Facet(this, id);
+}
+
+Tag Vocabulary::tagByID(int id) const
+{
+ return Tag(this, id);
+}
+
+void Vocabulary::parseVocBuf(std::map<std::string, std::string>& res, size_t ofs, size_t len) const
+{
+ // Access the right part of the mmapped buffer
+ std::stringstream name;
+ name << voc_fname << '+' << ofs << '-' << len;
+ input::Memory in(name.str(), voc_buf + ofs, len);
+ DebDBParser parser(in);
+ // Parse the raw string data and store it in the cache vector
+ parser.nextRecord(res);
+
+ std::string desc = res["Description"];
+ if (!desc.empty())
+ {
+ size_t pos = desc.find('\n');
+ if (pos == std::string::npos)
+ res["_SD_"] = desc;
+ else
+ res["_SD_"] = desc.substr(0, pos);
+ }
+}
+
+std::string Vocabulary::tagShortName(int id) const
+{
+ const char* fullname = tindex.name(id);
+ char* sub = strstr(fullname, "::");
+ if (sub != NULL)
+ return sub + 2;
+ else
+ return fullname;
+}
+
+const std::map<std::string, std::string>& Vocabulary::facetData(int id) const
+{
+ if (id < 0) return emptyData;
+
+ // Enlarge the cache vector if needed
+ if ((unsigned)id >= m_facetData.size())
+ m_facetData.resize(id + 1);
+
+ if (m_facetData[id].empty())
+ parseVocBuf(m_facetData[id], findex.offset(id), findex.size(id));
+
+ return m_facetData[id];
+}
+
+const std::map<std::string, std::string>& Vocabulary::tagData(int id) const
+{
+ if (id < 0) return emptyData;
+
+ // Enlarge the cache vector if needed
+ if ((unsigned)id >= m_tagData.size())
+ m_tagData.resize(id + 1);
+
+ if (m_tagData[id].empty())
+ parseVocBuf(m_tagData[id], tindex.offset(id), tindex.size(id));
+
+ return m_tagData[id];
+}
+
+}
+}
+
+// vim:set ts=4 sw=4:
diff --git a/ept/debtags/vocabulary.h b/ept/debtags/vocabulary.h
new file mode 100644
index 0000000..7c115a1
--- /dev/null
+++ b/ept/debtags/vocabulary.h
@@ -0,0 +1,282 @@
+#ifndef EPT_DEBTAGS_VOCABULARY_H
+#define EPT_DEBTAGS_VOCABULARY_H
+
+/** @file
+ * @author Enrico Zini <enrico@enricozini.org>
+ * Debtags vocabulary access
+ */
+
+/*
+ * Copyright (C) 2003,2004,2005,2006,2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/debtags/tag.h>
+#include <tagcoll/diskindex/mmap.h>
+
+#include <string>
+#include <vector>
+#include <map>
+
+namespace ept {
+namespace debtags {
+
+class Vocabulary
+{
+public:
+ class FacetIndex : public tagcoll::diskindex::MMap
+ {
+ protected:
+ // Layout of the data in the index
+ struct Item {
+ int offset;
+ int size;
+ int firsttag;
+ int lasttag;
+ const char name[];
+ };
+ inline Item* item(int id) const
+ {
+ if (id >= 0 && (unsigned)id < size())
+ return (Item*)(m_buf + ((int*)m_buf)[id]);
+ return NULL;
+ }
+
+ public:
+ FacetIndex() : tagcoll::diskindex::MMap() {}
+ FacetIndex(const tagcoll::diskindex::MasterMMap& master, size_t idx)
+ : tagcoll::diskindex::MMap(master, idx) {}
+
+ /// Get the number of facets in the index
+ size_t size() const { return m_size == 0 ? 0 : *(int*)m_buf / sizeof(int); }
+ /// Get the offset of the facet data in the vocabulary for this facet
+ size_t offset(int id) const { Item* i = item(id); return i == NULL ? 0 : i->offset; }
+ /// Get the size of the facet data in the vocabulary for this facet
+ size_t size(int id) const { Item* i = item(id); return i == NULL ? 0 : i->size; }
+ /// Get the id of the first tag for this facet
+ int firsttag(int id) const { Item* i = item(id); return i == NULL ? -1 : i->firsttag; }
+ /// Get the id of the last tag for this facet
+ int lasttag(int id) const { Item* i = item(id); return i == NULL ? -1 : i->lasttag; }
+ /// Get the name of this facet
+ const char* name(int id) const { Item* i = item(id); return i == NULL ? "" : i->name; }
+ /// Get the ID of the facet with this name
+ int id(const char* name) const;
+ int id(const std::string& name) const { return id(name.c_str()); }
+ };
+
+ class TagIndex : public tagcoll::diskindex::MMap
+ {
+ protected:
+ // Layout of the data in the index
+ struct Item {
+ int offset;
+ int size;
+ int facet;
+ const char name[];
+ };
+ inline Item* item(int id) const
+ {
+ if (id >= 0 && (unsigned)id < size())
+ return (Item*)(m_buf + ((int*)m_buf)[id]);
+ return NULL;
+ }
+
+ public:
+ TagIndex() : tagcoll::diskindex::MMap() {}
+ TagIndex(const tagcoll::diskindex::MasterMMap& master, size_t idx)
+ : tagcoll::diskindex::MMap(master, idx) {}
+
+ /// Get the number of tags in the index
+ size_t size() const { return m_size == 0 ? 0 : *(int*)m_buf / sizeof(int); }
+ /// Get the offset of the facet data in the vocabulary for this tag
+ size_t offset(int id) const { Item* i = item(id); return i == NULL ? 0 : i->offset; }
+ /// Get the size of the facet data in the vocabulary for this tag
+ size_t size(int id) const { Item* i = item(id); return i == NULL ? 0 : i->size; }
+ /// Get the id of the facet for this tag
+ int facet(int id) const { Item* i = item(id); return i == NULL ? -1 : i->facet; }
+ /// Get the name of this tag
+ const char* name(int id) const { Item* i = item(id); return i == NULL ? "" : i->name; }
+ /// Get the ID of the tag with this name
+ int id(const char* name) const;
+ int id(const std::string& name) const { return id(name.c_str()); }
+ };
+
+protected:
+ // Master MMap index container
+ tagcoll::diskindex::MasterMMap mastermmap;
+
+ time_t m_timestamp;
+
+ // Mmapped vocabulary file
+ std::string voc_fname;
+ int voc_fd;
+ size_t voc_size;
+ const char* voc_buf;
+
+ // Facet and tag indexes
+ FacetIndex findex;
+ TagIndex tindex;
+
+ // Cached parsed facet and tag records
+ mutable std::vector< std::map<std::string, std::string> > m_facetData;
+ mutable std::vector< std::map<std::string, std::string> > m_tagData;
+ // Empty parsed data to return when data is asked for IDs == -1
+ std::map<std::string, std::string> emptyData;
+
+ void parseVocBuf(std::map<std::string, std::string>& res, size_t ofs, size_t len) const;
+
+public:
+ Vocabulary();
+ ~Vocabulary();
+
+ /// Get the timestamp of when the index was last updated
+ time_t timestamp() const { return m_timestamp; }
+
+ /// Return true if this data source has data, false if it's empty
+ bool hasData() const { return m_timestamp != 0; }
+
+ const FacetIndex& facetIndex() const { return findex; }
+ const TagIndex& tagIndex() const { return tindex; }
+
+ /**
+ * Check if the vocabulary contains the facet `name'
+ */
+ bool hasFacet(const std::string& name) const
+ {
+ return findex.id(name.c_str()) != -1;
+ }
+
+ /**
+ * Check if the vocabulary contains the tag `fullname'
+ */
+ bool hasTag(const std::string& fullname) const
+ {
+ return tindex.id(fullname.c_str()) != -1;
+ }
+
+ /**
+ * Return the facet with the given name
+ */
+ Facet facetByID(int id) const;
+
+ /**
+ * Return the tag with the given full name
+ */
+ Tag tagByID(int id) const;
+
+ template<typename IDS>
+ std::set<Tag> tagsByID(const IDS& ids) const
+ {
+ std::set<Tag> res;
+ for (typename IDS::const_iterator i = ids.begin();
+ i != ids.end(); ++i)
+ res.insert(tagByID(*i));
+ return res;
+ }
+
+ /**
+ * Return the facet for the tag with the given ID
+ */
+ Facet facetByTag(int id) const { return facetByID(tindex.facet(id)); }
+
+ /**
+ * Return the facet with the given name
+ */
+ Facet facetByName(const std::string& name) const { return facetByID(findex.id(name)); }
+
+ /**
+ * Return the tag with the given full name
+ */
+ Tag tagByName(const std::string& fullname) const { return tagByID(tindex.id(fullname)); }
+
+ /**
+ * Return all the facets in the vocabulary
+ */
+ std::set< Facet > facets() const
+ {
+ std::set< Facet > res;
+ for (size_t i = 0; i < findex.size(); i++)
+ res.insert(facetByID(i));
+ return res;
+ }
+
+ /**
+ * Return all the tags in the vocabulary
+ */
+ std::set< Tag > tags() const
+ {
+ std::set< Tag > res;
+ for (size_t i = 0; i < tindex.size(); i++)
+ res.insert(tagByID(i));
+ return res;
+ }
+
+ /**
+ * Return the tags in the given facet
+ */
+ std::set< Tag > tags(int facet) const
+ {
+ std::set< Tag > res;
+ for (int i = findex.firsttag(facet); i != -1 && i <= findex.lasttag(facet); i++)
+ res.insert(tagByID(i));
+ return res;
+ }
+
+ std::set< Tag > tags(const std::string& facetName) const
+ {
+ return tags(findex.id(facetName));
+ }
+
+ std::set< Tag > tags(const Facet& facet) const
+ {
+ return tags(facet.id());
+ }
+
+#if 0
+ /// Get the DerivedTagList with the Equates: expressions read from the vocabulary
+ const DerivedTagList& getEquations() const throw () { return equations; }
+
+ /// Get a set with all the facets present in the vocabulary that are matched by `filter'
+ FacetSet facets(const FacetMatcher& filter) const throw () { return getFiltered(filter); }
+#endif
+
+#if 0
+ // These functions are here just to be used by Facet and Tag. I'm not
+ // making them private because I don't want Facet and Tag to access other
+ // Vocabulary member, and other classes can't use these anyway as Facet::Data and
+ // Tag::Data are protected
+ const Facet::Data& facetData(int idx) { return m_facets[idx]; }
+ const Tag::Data& tagData(int idx) { return m_tags[idx]; }
+#endif
+
+ /// Get the facet name given the facet id
+ std::string facetName(int id) const { return findex.name(id); }
+
+ /// Get the tag name given the tag id
+ std::string tagName(int id) const { return tindex.name(id); }
+
+ /// Get the tag name given the tag id
+ std::string tagShortName(int id) const;
+
+ const std::map<std::string, std::string>& facetData(int id) const;
+ const std::map<std::string, std::string>& tagData(int id) const;
+};
+
+}
+}
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/ept/debtags/vocabulary.test.h b/ept/debtags/vocabulary.test.h
new file mode 100644
index 0000000..977eef5
--- /dev/null
+++ b/ept/debtags/vocabulary.test.h
@@ -0,0 +1,318 @@
+/*
+ * Tag vocabulary access
+ *
+ * Copyright (C) 2003--2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <wibble/test.h>
+#include <ept/debtags/vocabulary.h>
+#include <ept/debtags/maint/vocabularymerger.h>
+#include <ept/debtags/maint/path.h>
+#include <tagcoll/utils/set.h>
+#include <tagcoll/input/stdio.h>
+
+#include "debtags.test.h"
+
+// This is not exported by default
+namespace ept {
+namespace debtags {
+int tagcmp(const char* tag1, const char* tag2);
+}
+}
+
+using namespace std;
+using namespace tagcoll::utils;
+using namespace ept::debtags;
+
+struct TestVocabulary : DebtagsTestEnvironment
+{
+ Vocabulary m_tags;
+ Vocabulary& tags() { return m_tags; }
+
+ Test _1()
+{
+ tags(); // this will throw if the open above didn't work
+}
+
+ Test _2()
+{
+ assert( tags().hasFacet( "works-with" ) );
+ assert( !tags().hasFacet( "blah" ) );
+}
+
+ Test _3()
+{
+ assert( tags().hasTag( "works-with::people" ) );
+ assert( !tags().hasTag( "works-with::midgets" ) );
+}
+
+ Test _4()
+{
+ Tag people = tags().tagByName( "works-with::people" ),
+ midgets = tags().tagByName( "works-with::midgets" ),
+ blahg = tags().tagByName( "works-with::blahg" ),
+ text = tags().tagByName( "works-with::text" ),
+ people2 = tags().tagByName( "works-with::people" );
+ assert( people != midgets );
+ assert( people != text );
+ assert( people != blahg );
+ assert( midgets == blahg );
+ assert( midgets == midgets );
+ assert( people == people2 );
+ assert( people == people );
+}
+
+ Test _5()
+{
+ Tag a = tags().tagByName( "works-with::people" ),
+ b = tags().tagByName( "works-with::midgets" );
+ std::set< Tag > s = tags().tags(),
+ f = tags().tags( "works-with" ),
+ n = tags().tags( "nonsense" );
+ assert( set_contains(s, a) );
+ assert( set_contains(f, a) );
+ assert( set_contains(s, f) );
+ assert( !set_contains(s, b) );
+ assert( !set_contains(f, b) );
+ assert( n.empty() );
+}
+
+ Test _6()
+{
+ Facet f = tags().facetByName( "works-with" );
+ Tag t = tags().tagByName( "works-with::people" );
+ assert_eq(f.name(), "works-with");
+ assert_eq(t.name(), "people");
+ assert_eq(t.fullname(), "works-with::people");
+}
+
+ Test _7()
+{
+ Facet f = tags().facetByName( "works-with" );
+ std::set< Tag > x = tags().tags( "works-with" );
+ assert( x == f.tags() );
+}
+
+ Test _8()
+{
+ Facet f = tags().facetByName( "does-not-work-with" );
+ int x = 1;
+ try {
+ f.tags();
+ x = 2;
+ } catch (...) {
+ x = 3;
+ }
+ assert_eq( x, 3 );
+}
+
+ Test _9()
+{
+ Facet f = tags().facetByName( "legacy" );
+ assert_eq(f.shortDescription(), "");
+ assert_eq(f.longDescription(), "");
+ //assert_eq(f.shortDescription( "weehee" ), "weehee");
+}
+
+ Test _10()
+{
+ // assert that one-character tag names are parsed correctly
+ assert( tags().hasTag( "implemented-in::c" ) );
+}
+
+ Test _11()
+{
+ // assert that all tags are somehow working
+ std::set<Facet> facets = tags().facets();
+
+ for (std::set<Facet>::const_iterator i = facets.begin();
+ i != facets.end(); i++)
+ {
+ i->name(string("foo"));
+ i->shortDescription(string("foo"));
+ i->longDescription(string("foo"));
+ i->tags();
+ }
+}
+
+ Test _12()
+{
+ // assert that all tags are somehow working
+ std::set<Tag> tags = this->tags().tags();
+
+ for (std::set<Tag>::const_iterator i = tags.begin();
+ i != tags.end(); i++)
+ {
+ i->name(string("foo"));
+ i->fullname(string("foo"));
+ i->shortDescription(string("foo"));
+ i->longDescription(string("foo"));
+ }
+}
+
+// Check for correctness of the first and last tag in the vocabulary
+ Test _13()
+{
+ Vocabulary& tags = this->tags();
+
+ Tag first = tags.tagByName("accessibility::TODO");
+ assert(first != Tag());
+ assert_eq(first.fullname(), string("accessibility::TODO"));
+ assert_eq(first.name(), string("TODO"));
+ assert_eq(first.shortDescription(), string("Need an extra tag"));
+
+ Tag last = tags.tagByName("x11::xserver");
+ assert(last != Tag());
+ assert_eq(last.fullname(), string("x11::xserver"));
+ assert_eq(last.name(), string("xserver"));
+ assert_eq(last.shortDescription(), string("X Server"));
+}
+
+ Test _14()
+{
+ // assert that it's possible to go from facet to ID and back
+ std::set<Facet> facets = tags().facets();
+
+ for (std::set<Facet>::const_iterator i = facets.begin();
+ i != facets.end(); i++)
+ {
+ Facet f = tags().facetByID(i->id());
+ assert_eq(*i, f);
+ assert_eq(i->name(), f.name());
+ assert_eq(i->shortDescription(), f.shortDescription());
+ assert_eq(i->longDescription(), f.longDescription());
+ assert_eq(i->tags().size(), f.tags().size());
+ }
+}
+
+ Test _15()
+{
+ // assert that it's possible to go from tag to ID and back
+ std::set<Tag> tags = this->tags().tags();
+
+ for (std::set<Tag>::const_iterator i = tags.begin();
+ i != tags.end(); i++)
+ {
+ Tag t = this->tags().tagByID(i->id());
+ assert_eq(*i, t);
+ assert_eq(i->name(), t.name());
+ assert_eq(i->fullname(), t.fullname());
+ assert_eq(i->shortDescription(), t.shortDescription());
+ assert_eq(i->longDescription(), t.longDescription());
+ }
+}
+
+ Test _16()
+{
+ // assert that facet IDs are distinct
+ std::set<Facet> facets = tags().facets();
+ std::set<int> ids;
+ for (std::set<Facet>::const_iterator i = facets.begin();
+ i != facets.end(); i++)
+ ids.insert(i->id());
+
+ assert_eq(facets.size(), ids.size());
+}
+
+ Test _17()
+{
+ // assert that tag IDs are distinct
+ std::set<Tag> tags = this->tags().tags();
+ std::set<int> ids;
+ for (std::set<Tag>::const_iterator i = tags.begin();
+ i != tags.end(); i++)
+ ids.insert(i->id());
+
+ assert_eq(tags.size(), ids.size());
+}
+
+ Test _18()
+{
+ // assert that all the tags are indexed
+ ept::debtags::VocabularyMerger voc;
+ tagcoll::input::Stdio in(ept::debtags::Path::vocabulary());
+ voc.read(in);
+ std::set<std::string> all = voc.tagNames();
+ for (std::set<std::string>::const_iterator i = all.begin();
+ i != all.end(); ++i)
+ assert(this->tags().hasTag(*i));
+
+ // There should be the same amount of tags in both
+ std::set<Tag> allTags = this->tags().tags();
+ assert_eq(all.size(), allTags.size());
+}
+
+ Test _19()
+{
+ // test the tagcmp function
+
+ // If unfaceted, same as strcmp
+ assert(ept::debtags::tagcmp("antani", "blinda") < 0);
+ assert(ept::debtags::tagcmp("blinda", "antani") > 0);
+ assert_eq(ept::debtags::tagcmp("antani", "antani"), 0);
+
+ // If the same and faceted, should work
+ assert_eq(ept::debtags::tagcmp("antani::blinda", "antani::blinda"), 0);
+
+ // With different facet names, work just as strcmp
+ assert(ept::debtags::tagcmp("antani::blinda", "blinda::blinda") < 0);
+ assert(ept::debtags::tagcmp("blinda::blinda", "antani::blinda") > 0);
+ assert(ept::debtags::tagcmp("anta::blinda", "antani::blinda") < 0);
+ assert(ept::debtags::tagcmp("antani::blinda", "anta::blinda") > 0);
+ assert(ept::debtags::tagcmp("anta::blinda", "anta-ni::blinda") < 0);
+ assert(ept::debtags::tagcmp("anta-ni::blinda", "anta::blinda") > 0);
+
+ // With same facet names, work just as strcmp on the tags
+ assert(ept::debtags::tagcmp("a::antani", "a::blinda") < 0);
+ assert(ept::debtags::tagcmp("a::blinda", "a::antani") > 0);
+ assert(ept::debtags::tagcmp("a::anta", "a::antani") < 0);
+ assert(ept::debtags::tagcmp("a::antani", "a::anta") > 0);
+ assert(ept::debtags::tagcmp("a::anta", "a::anta-ni") < 0);
+ assert(ept::debtags::tagcmp("a::anta-ni", "a::anta") > 0);
+}
+
+ Test _20()
+{
+ // check that we're seeing all the tags for a facet
+ std::set<Tag> t = tags().tags("accessibility");
+ assert_eq(t.size(), 10u);
+
+ t = tags().tags("works-with-format");
+ assert_eq(t.size(), 33u);
+}
+
+// If there is no data, Vocabulary should work as an empty vocabulary
+ Test _21()
+{
+ Path::OverrideDebtagsSourceDir odsd("./empty");
+ Path::OverrideDebtagsIndexDir odid("./empty");
+ Path::OverrideDebtagsUserSourceDir odusd("./empty");
+ Path::OverrideDebtagsUserIndexDir oduid("./empty");
+ Vocabulary empty;
+
+ assert(!empty.hasData());
+
+ set<Facet> facets = empty.facets();
+ assert_eq(facets.size(), 0u);
+
+ set<Tag> tags = empty.tags();
+ assert_eq(tags.size(), 0u);
+}
+
+};
+
+// vim:set ts=4 sw=4:
diff --git a/ept/intro.doc.h b/ept/intro.doc.h
new file mode 100644
index 0000000..bc8c441
--- /dev/null
+++ b/ept/intro.doc.h
@@ -0,0 +1,75 @@
+/** \mainpage EPT library documentation
+
+\section Introduction to the EPT library
+
+The EPT library is a collection of <em>data providers</em>, that are interface
+to access various kind of information about \em packages.
+
+All data providers are independent from each other and can be instantiated
+alone. This allows to instantiate only the amount of infrastructure that is
+needed for a job, and to use alternative data provider implementations where
+appropriate.
+
+Because of this, for example, libept can be used in applications that already
+use libapt-pkg directly: if the Apt object is not instantiated, then libept
+will not use the apt-pkg library at all.
+
+Package names (and, where used, versions) are what brings all the data
+providers together: all the data providers access information about Debian
+packages, which have a well defined namespace. libept represents a package
+simply with a std::string containing its name: to get various kinds of
+information about a package, one just queries it by name to many data
+providers:
+
+\code
+ Apt apt;
+ Debtags debtags;
+ Popcon popcon;
+
+ // Get the Apt record for the debtags package
+ PackageRecord record(apt.rawRecord("debtags"));
+
+ // Get the tags of the debtags package
+ std::set<Tag> tags = debtags.getTagsOfItem("debtags");
+
+ // Get the popcon score of the debtags package
+ float score = popcon.score("debtags");
+
+ // Print the records of all image editors
+ std::set<Tag> imageEditors;
+ imageEditors.insert(debtags.vocabulary().tagByName("use::editing"));
+ imageEditors.insert(debtags.vocabulary().tagByName("works-with::image"));
+ imageEditors.insert(debtags.vocabulary().tagByName("role::program"));
+ std::set<std::string> packages = debtags.getItemsHavingTags(imageEditors);
+ for (std::set<std::string>::const_iterator i = packages.begin();
+ i != packages.end(); ++i)
+ {
+ PackageRecord rec(apt.rawRecord(*i));
+ PackageState state = apt.state(*i);
+ // Also show whether a package is installed
+ if (state.isInstalled())
+ std::cout << rec.package() << " i " << rec.shortDescription();
+ else
+ std::cout << rec.package() << " - " << rec.shortDescription();
+ }
+\endcode
+
+A data provider does not need to know about the others, nor it needs to
+implement a specific interface: the only requirement on a data provider is that
+it can be queried using package names.
+
+The only methods that are found in all data providers are hasData() and
+timestamp(), that can be used to query if a data provider is working and how up
+to date it is.
+
+The data providers currently implemented are:
+
+\li ept::apt::Apt: access the APT database.
+\li ept::debtags::Debtags: access the Debtags tag information.
+\li ept::popcon::Popcon: access Popcon package scores.
+\li ept::textsearch::TextSearch: fast Xapian-based full text search on package description, and more.
+
+It is easy to implement more data providers. It is also easy to implement new
+data providers outside of this library, as long as they can be queried using
+package names.
+*/
diff --git a/ept/libept.m4 b/ept/libept.m4
new file mode 100644
index 0000000..8bd83be
--- /dev/null
+++ b/ept/libept.m4
@@ -0,0 +1,9 @@
+# LIBEPT_DEFS([LIBEPT_REQS=libtagcoll2])
+# ---------------------------------------
+AC_DEFUN([LIBEPT_DEFS],
+[
+ dnl Import libtagcoll data
+ PKG_CHECK_MODULES(LIBEPT,m4_default([$1], libept))
+ AC_SUBST(LIBEPT_CFLAGS)
+ AC_SUBST(LIBEPT_LIBS)
+])
diff --git a/ept/libept.pc.in b/ept/libept.pc.in
new file mode 100644
index 0000000..efadfce
--- /dev/null
+++ b/ept/libept.pc.in
@@ -0,0 +1,11 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: libept
+Description: Access various data sources about software packages
+Version: @EPT_VERSION@
+Requires: libtagcoll2 libwibble
+Cflags: -I${includedir}
+Libs: -L${libdir} -lept -lapt-pkg -lxapian -lz
diff --git a/ept/popcon/local.cc b/ept/popcon/local.cc
new file mode 100644
index 0000000..308a9e4
--- /dev/null
+++ b/ept/popcon/local.cc
@@ -0,0 +1,168 @@
+/** @file
+ * @author Enrico Zini <enrico@enricozini.org>
+ * Correlate popcon data with local popcon information
+ */
+
+/*
+ * Copyright (C) 2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/popcon/local.h>
+#include <ept/popcon/popcon.h>
+#include <ept/popcon/maint/path.h>
+
+#include <wibble/exception.h>
+
+#include <algorithm>
+#include <fstream>
+#include <cmath>
+
+//#include <iostream>
+
+using namespace std;
+
+namespace ept {
+namespace popcon {
+
+// Split a string where there are separators
+static vector<string> split(const std::string& str, char sep = ' ')
+{
+ vector<string> res;
+ size_t start = 0;
+ while (start < str.size())
+ {
+ size_t end = str.find(sep, start);
+ if (end == string::npos)
+ {
+ res.push_back(str.substr(start));
+ break;
+ }
+ else
+ {
+ res.push_back(str.substr(start, end-start));
+ start = end + 1;
+ }
+ }
+ return res;
+}
+
+// Reverse sort pairs by comparing their second element
+struct secondsort
+{
+ bool operator()(const pair<string, float>& a, const pair<string, float>& b) const
+ {
+ if (a.second == b.second)
+ return a.first > b.first;
+ else
+ return a.second > b.second;
+ }
+};
+
+Local::Local(const std::string& file)
+{
+ m_timestamp = Path::timestamp(file);
+ if (m_timestamp == 0)
+ return;
+
+ ifstream in;
+ in.open(file.c_str());
+ if (!in.good())
+ throw wibble::exception::File(file, "opening file for reading");
+
+ while (!in.eof())
+ {
+ std::string line;
+ getline(in, line);
+ if (line.substr(0, 10) == "POPULARITY")
+ continue;
+ if (line.substr(0, 14) == "END-POPULARITY")
+ continue;
+ vector<string> data = split(line);
+ if (data.size() < 4)
+ continue;
+ if (data[3] == "<NOFILES>")
+ // This is an empty / virtual package
+ m_scores.insert(make_pair(data[2], 0.1));
+ else if (data.size() == 4)
+ // Package normally in use
+ m_scores.insert(make_pair(data[2], 1.0));
+ else if (data[4] == "<OLD>")
+ // Unused packages
+ m_scores.insert(make_pair(data[2], 0.3));
+ else if (data[4] == "<RECENT-CTIME>")
+ // Recently installed packages
+ m_scores.insert(make_pair(data[2], 0.5));
+ }
+}
+
+float Local::score(const std::string& pkg) const
+{
+ std::map<std::string, float>::const_iterator i = m_scores.find(pkg);
+ if (i == m_scores.end())
+ return 0;
+ else
+ return i->second;
+}
+
+/**
+ * Return the TFIDF score of the package computed against the popcon
+ * information.
+ */
+float Local::tfidf(const Popcon& popcon, const std::string& pkg) const
+{
+ float popconScore = popcon.score(pkg);
+ //cerr << pkg << ": " << score(pkg) << " * log(" << (float)popcon.submissions() << " / " << popconScore << ") = " << score(pkg) * log((float)popcon.submissions() / popconScore) << endl;
+ if (popconScore == 0)
+ return 0;
+ else
+ return score(pkg) * log((float)popcon.submissions() / popconScore);
+
+}
+
+std::vector< std::pair<std::string, float> > Local::scores() const
+{
+ vector< pair<string, float> > res;
+ // Copy the scores in res
+ copy(m_scores.begin(), m_scores.end(), back_inserter(res));
+ // Sort res by score
+ sort(res.begin(), res.end(), secondsort());
+ return res;
+}
+
+std::vector< std::pair<std::string, float> > Local::tfidf(const Popcon& popcon) const
+{
+ vector< pair<string, float> > res;
+ // Compute the tfidf scores and store them into res
+ for (std::map<std::string, float>::const_iterator i = m_scores.begin();
+ i != m_scores.end(); ++i)
+ {
+ float popconScore = popcon.score(i->first);
+ if (popconScore == 0)
+ res.push_back(make_pair(i->first, 0.0f));
+ else
+ res.push_back(make_pair(i->first,
+ i->second * log((float)popcon.submissions() / popconScore)));
+ }
+ // Sort res by score
+ sort(res.begin(), res.end(), secondsort());
+ return res;
+}
+
+}
+}
+
+// vim:set ts=4 sw=4:
diff --git a/ept/popcon/local.h b/ept/popcon/local.h
new file mode 100644
index 0000000..257cc72
--- /dev/null
+++ b/ept/popcon/local.h
@@ -0,0 +1,87 @@
+#ifndef EPT_POPCON_LOCAL_H
+#define EPT_POPCON_LOCAL_H
+
+/** @file
+ * @author Enrico Zini <enrico@enricozini.org>
+ * Correlate popcon data with local popcon information
+ */
+
+/*
+ * Copyright (C) 2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <string>
+#include <vector>
+#include <map>
+
+namespace ept {
+namespace popcon {
+
+class Popcon;
+
+/**
+ * Access the results of the local daily popcon scan.
+ */
+class Local
+{
+protected:
+ std::map<std::string, float> m_scores;
+ time_t m_timestamp;
+
+public:
+ Local(const std::string& file = std::string("/var/log/popularity-contest"));
+
+ /// Get the timestamp of the local popcon information
+ time_t timestamp() const { return m_timestamp; }
+
+ /// Return true if this data source has data, false if it's empty
+ bool hasData() const { return m_timestamp != 0; }
+
+ /**
+ * Return the local score of the package
+ */
+ float score(const std::string& pkg) const;
+
+ /**
+ * Return the TFIDF score of the package computed against the popcon
+ * information.
+ *
+ * The TFIDF score is high when a package is representative of this system,
+ * that is, it is used in this system and not much used in other systems.
+ */
+ float tfidf(const Popcon& popcon, const std::string& pkg) const;
+
+ /**
+ * Read the local popcon vote and return the list of packages and their
+ * local scores, sorted by ascending score.
+ */
+ std::vector< std::pair<std::string, float> > scores() const;
+
+ /**
+ * Read the local popcon vote and return the list of packages and their
+ * TFIDF scores computed against the popcon information.
+ *
+ * The packages will be sorted by ascending score.
+ */
+ std::vector< std::pair<std::string, float> > tfidf(const Popcon& popcon) const;
+};
+
+}
+}
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/ept/popcon/local.test.h b/ept/popcon/local.test.h
new file mode 100644
index 0000000..66d9919
--- /dev/null
+++ b/ept/popcon/local.test.h
@@ -0,0 +1,111 @@
+// -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+/*
+ * popcon/local test
+ *
+ * Copyright (C) 2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/popcon/local.h>
+#include <ept/popcon/popcon.h>
+#include <ept/popcon/maint/path.h>
+
+#include <ept/test.h>
+
+using namespace std;
+using namespace ept;
+using namespace ept::popcon;
+
+struct TestPopconLocal
+{
+ Path::OverridePopconSourceDir odsd;
+ Path::OverridePopconIndexDir odid;
+ Path::OverridePopconUserSourceDir odusd;
+ Path::OverridePopconUserIndexDir oduid;
+
+ Popcon popcon;
+ Local local;
+
+ TestPopconLocal()
+ : odsd( TEST_ENV_DIR "popcon" ),
+ odid( TEST_ENV_DIR "popcon" ),
+ odusd( TEST_ENV_DIR "popcon" ),
+ oduid( TEST_ENV_DIR "popcon" ),
+ local( TEST_ENV_DIR "popcon/popularity-contest" )
+ {}
+
+ // Very basic access
+ Test basicAccess()
+ {
+ assert(local.score("apt") > 0);
+ assert(local.tfidf(popcon, "apt") > 0);
+ }
+
+#if 0 // mornfall: apparently left out by enrico, leaving as it is
+// Check that every valid index is accessible
+template<> template<>
+void to::test< 2 >()
+{
+ for (size_t i = 0; i < popcon.size(); ++i)
+ {
+ //cerr << popcon.name(i) << " " << popcon.score(i) << endl;
+ assert(popcon.score(i) > 0);
+ }
+}
+
+// Check that we can get a score for every package
+template<> template<>
+void to::test< 3 >()
+{
+ int has = 0;
+ for (Apt::iterator i = apt.begin(); i != apt.end(); ++i)
+ {
+ float score = popcon.score(*i);
+ if (score > 0)
+ ++has;
+ }
+ // At least 1000 packages should have a score
+ assert(has > 1000);
+}
+
+// Check that scores are meaningful
+template<> template<>
+void to::test< 4 >()
+{
+ assert(popcon["apt"] > popcon["libapt-pkg-dev"]);
+}
+
+// If there is no data, Popcon should work as if all scores were 0
+template<> template<>
+void to::test<5>()
+{
+ Path::OverridePopconSourceDir odsd("./empty");
+ Path::OverridePopconIndexDir odid("./empty");
+ Path::OverridePopconUserSourceDir odusd("./empty");
+ Path::OverridePopconUserIndexDir oduid("./empty");
+ Popcon empty;
+
+ assert_eq(empty.timestamp(), 0);
+ assert(!empty.hasData());
+
+ assert(empty.size() == 0);
+ assert(empty.score("apt") == 0.0);
+}
+#endif
+
+};
+
+// vim:set ts=4 sw=4:
diff --git a/ept/popcon/maint/path.cc b/ept/popcon/maint/path.cc
new file mode 100644
index 0000000..acb5029
--- /dev/null
+++ b/ept/popcon/maint/path.cc
@@ -0,0 +1,115 @@
+// -*- mode: c++; indent-tabs-mode: t -*-
+
+/** \file
+ * popcon paths
+ */
+
+/*
+ * Copyright (C) 2005,2006,2007 Enrico Zini <enrico@debian.org>, Peter Rockai <me@mornfall.net>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/config.h>
+#include <ept/popcon/maint/path.h>
+
+#include <wibble/sys/fs.h>
+#include <wibble/string.h>
+
+#include <sys/types.h> // getpwuid, stat, mkdir, getuid
+#include <sys/stat.h> // stat, mkdir
+#include <pwd.h> // getpwuid
+#include <unistd.h> // stat, getuid
+
+using namespace wibble;
+
+namespace ept {
+namespace popcon {
+
+static std::string userdir()
+{
+ std::string rcdir;
+
+ struct passwd* udata = getpwuid(getuid());
+ rcdir = str::joinpath(udata->pw_dir, ".popcon");
+
+ return rcdir;
+}
+
+
+Path &Path::instance() {
+ if (!s_instance) {
+ s_instance = new Path;
+ instance().m_popconSourceDir = POPCON_DB_DIR;
+ instance().m_popconIndexDir = POPCON_DB_DIR;
+ instance().m_popconUserSourceDir = userdir();
+ instance().m_popconUserIndexDir = userdir();
+ }
+ return *s_instance;
+}
+
+int Path::access( const std::string &s, int m ) {
+ return ::access( s.c_str(), m );
+}
+
+time_t Path::timestamp( const std::string& file ) {
+ std::auto_ptr<struct stat> st = wibble::sys::fs::stat(file);
+ return st.get() == NULL ? 0 : st->st_mtime;
+}
+
+void Path::setPopconSourceDir( const std::string &s )
+{
+ instance().m_popconSourceDir = s;
+}
+void Path::setPopconIndexDir( const std::string &s )
+{
+ instance().m_popconIndexDir = s;
+}
+void Path::setPopconUserSourceDir( const std::string &s )
+{
+ instance().m_popconUserSourceDir = s;
+}
+void Path::setPopconUserIndexDir( const std::string &s )
+{
+ instance().m_popconUserIndexDir = s;
+}
+
+std::string Path::popconSourceDir() { return instance().m_popconSourceDir; }
+std::string Path::popconIndexDir() { return instance().m_popconIndexDir; }
+std::string Path::popconUserSourceDir() { return instance().m_popconUserSourceDir; }
+std::string Path::popconUserIndexDir() { return instance().m_popconUserIndexDir; }
+
+std::string Path::scores() {
+ return str::joinpath(popconIndexDir(), "scores");
+}
+
+std::string Path::scoresIndex() {
+ return str::joinpath(popconIndexDir(), "scores.idx");
+}
+
+std::string Path::userScores() {
+ return str::joinpath(popconUserIndexDir(), "scores");
+}
+
+std::string Path::userScoresIndex() {
+ return str::joinpath(popconUserIndexDir(), "scores.idx");
+}
+
+Path *Path::s_instance = 0;
+
+}
+}
+
+// vim:set ts=4 sw=4:
diff --git a/ept/popcon/maint/path.h b/ept/popcon/maint/path.h
new file mode 100644
index 0000000..5b4306c
--- /dev/null
+++ b/ept/popcon/maint/path.h
@@ -0,0 +1,127 @@
+// -*- mode: c++; indent-tabs-mode: t -*-
+/** \file
+ * popcon paths
+ */
+
+/*
+ * Copyright (C) 2005,2006,2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#ifndef EPT_POPCON_PATH_H
+#define EPT_POPCON_PATH_H
+
+#include <string>
+
+struct stat;
+
+namespace ept {
+namespace popcon {
+
+/**
+ * Singleton class to configure and access the various Popcon paths
+ */
+class Path
+{
+public:
+ static std::string scores();
+ static std::string scoresIndex();
+ static std::string userScores();
+ static std::string userScoresIndex();
+
+ static std::string popconSourceDir();
+ static std::string popconIndexDir();
+ static std::string popconUserSourceDir();
+ static std::string popconUserIndexDir();
+
+ // Directory where Popcon source data is found
+ static void setPopconSourceDir( const std::string &s );
+
+ // Directory where Popcon indexes are kept
+ static void setPopconIndexDir( const std::string &s );
+
+ // User-specific directory for Popcon source data
+ static void setPopconUserSourceDir( const std::string &s );
+
+ // User-specific directory for Popcon index data
+ static void setPopconUserIndexDir( const std::string &s );
+
+ static int access( const std::string &, int );
+ static time_t timestamp( const std::string& );
+
+ // RAII-style classes to temporarily override directories
+ class OverridePopconSourceDir
+ {
+ std::string old;
+ public:
+ OverridePopconSourceDir(const std::string& path) : old(Path::popconSourceDir())
+ {
+ Path::setPopconSourceDir(path);
+ }
+ ~OverridePopconSourceDir() { Path::setPopconSourceDir(old); }
+ };
+ class OverridePopconIndexDir
+ {
+ std::string old;
+ public:
+ OverridePopconIndexDir(const std::string& path) : old(Path::popconIndexDir())
+ {
+ Path::setPopconIndexDir(path);
+ }
+ ~OverridePopconIndexDir() { Path::setPopconIndexDir(old); }
+ };
+ class OverridePopconUserSourceDir
+ {
+ std::string old;
+ public:
+ OverridePopconUserSourceDir(const std::string& path) : old(Path::popconUserSourceDir())
+ {
+ Path::setPopconUserSourceDir(path);
+ }
+ ~OverridePopconUserSourceDir() { Path::setPopconUserSourceDir(old); }
+ };
+ class OverridePopconUserIndexDir
+ {
+ std::string old;
+ public:
+ OverridePopconUserIndexDir(const std::string& path) : old(Path::popconUserIndexDir())
+ {
+ Path::setPopconUserIndexDir(path);
+ }
+ ~OverridePopconUserIndexDir() { Path::setPopconUserIndexDir(old); }
+ };
+protected:
+ static Path *s_instance;
+ static Path &instance();
+
+ // Directory where Popcon source data is found
+ std::string m_popconSourceDir;
+
+ // Directory where Popcon indexes are kept
+ std::string m_popconIndexDir;
+
+ // User-specific directory for Popcon source data
+ std::string m_popconUserSourceDir;
+
+ // User-specific directory for Popcon index data
+ std::string m_popconUserIndexDir;
+};
+
+}
+}
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/ept/popcon/maint/popconindexer.cc b/ept/popcon/maint/popconindexer.cc
new file mode 100644
index 0000000..f0e39ad
--- /dev/null
+++ b/ept/popcon/maint/popconindexer.cc
@@ -0,0 +1,247 @@
+#include <ept/popcon/popcon.h>
+#include <ept/popcon/maint/popconindexer.h>
+#include <ept/popcon/maint/path.h>
+
+#include <wibble/exception.h>
+#include <wibble/sys/fs.h>
+
+#include <tagcoll/diskindex/mmap.h>
+
+#include <set>
+#include <string>
+#include <cstdio>
+#include <cstring>
+
+using namespace std;
+
+namespace ept {
+namespace popcon {
+
+template<typename STRUCT>
+struct StructIndexer : public tagcoll::diskindex::MMapIndexer
+{
+ const STRUCT& data;
+ StructIndexer(const STRUCT& data) : data(data) {}
+
+ int encodedSize() const { return sizeof(STRUCT); }
+ void encode(char* buf) const { *(STRUCT*)buf = data; }
+};
+
+/// MMapIndexer that indexes the package names
+struct PopconGenerator : public tagcoll::diskindex::MMapIndexer
+{
+ // Sorted set of all available package names and data
+ std::map<std::string, Score> data;
+
+ int encodedSize() const
+ {
+ int size = data.size() * sizeof(Score);
+ for (std::map<std::string, Score>::const_iterator i = data.begin();
+ i != data.end(); ++i)
+ size += i->first.size() + 1;
+ return tagcoll::diskindex::MMap::align(size);
+ }
+
+ void encode(char* buf) const
+ {
+ int pos = data.size() * sizeof(Score);
+ int idx = 0;
+ for (std::map<std::string, Score>::const_iterator i = data.begin();
+ i != data.end(); ++i)
+ {
+ ((Score*)buf)[idx] = i->second;
+ ((Score*)buf)[idx].offset = pos;
+ memcpy(buf + pos, i->first.c_str(), i->first.size() + 1);
+ pos += i->first.size() + 1;
+ ++idx;
+ }
+ }
+};
+
+
+PopconIndexer::PopconIndexer()
+ : mainSource(Path::popconSourceDir()),
+ userSource(Path::popconUserSourceDir())
+{
+ rescan();
+}
+
+void PopconIndexer::rescan()
+{
+ ts_main_src = mainSource.timestamp();
+ ts_user_src = userSource.timestamp();
+ ts_main_sco = Path::timestamp(Path::scores());
+ ts_user_sco = Path::timestamp(Path::userScores());
+ ts_main_idx = Path::timestamp(Path::scoresIndex());
+ ts_user_idx = Path::timestamp(Path::userScoresIndex());
+}
+
+bool PopconIndexer::needsRebuild() const
+{
+ // If there are no indexes of any kind, then we need rebuilding
+ if (ts_user_sco == 0 || ts_main_sco == 0 || ts_user_idx == 0 && ts_main_idx == 0)
+ return true;
+
+ // If the user index is ok, then we are fine
+ if (ts_user_sco >= sourceTimestamp() && ts_user_idx >= sourceTimestamp())
+ return false;
+
+ // If there are user sources, then we cannot use the system index
+ if (ts_user_src > 0)
+ return true;
+
+ // If there are no user sources, then we can fallback on the system
+ // indexes in case the user indexes are not up to date
+ if (ts_main_sco >= sourceTimestamp() && ts_main_idx >= sourceTimestamp())
+ return false;
+
+ return true;
+}
+
+bool PopconIndexer::userIndexIsRedundant() const
+{
+ // If there is no user index, then it is not redundant
+ if (ts_user_idx == 0)
+ return false;
+
+ // If the system index is not up to date, then the user index is not
+ // redundant
+ if (ts_main_idx < sourceTimestamp())
+ return false;
+
+ return true;
+}
+
+bool PopconIndexer::rebuild(const std::string& scofname, const std::string& idxfname)
+{
+ PopconGenerator gen;
+ InfoStruct is;
+ is.submissions = 0;
+ if (!mainSource.readScores(gen.data, is.submissions))
+ userSource.readScores(gen.data, is.submissions);
+ if (gen.data.empty())
+ return false;
+
+ StructIndexer<InfoStruct> infoStruct(is);
+
+ // Create the index
+ tagcoll::diskindex::MasterMMapIndexer master(idxfname);
+ master.append(gen);
+ master.append(infoStruct);
+ master.commit();
+
+// for (map<string, Score>::const_iterator i = gen.data.begin(); i != gen.data.end(); ++i)
+// {
+// fprintf(stderr, "%s %d %f\n", i->first.c_str(), i->second.offset, i->second.score);
+// }
+
+ // Create the score file
+ FILE* out = fopen(scofname.c_str(), "wt");
+ if (out == NULL)
+ throw wibble::exception::File(scofname, "opening and truncating file for writing");
+ for (map<string, Score>::const_iterator i = gen.data.begin();
+ i != gen.data.end(); ++i)
+ {
+ fprintf(out, "%s %f\n", i->first.c_str(), i->second.score);
+ }
+ fclose(out);
+ return true;
+}
+
+bool PopconIndexer::rebuildIfNeeded()
+{
+ if (needsRebuild())
+ {
+ // Decide if we rebuild the user index or the system index
+ if (Path::access(Path::popconIndexDir(), W_OK) == 0)
+ {
+ // Since we can write on the system index directory, we rebuild
+ // the system index
+ if (!rebuild(Path::scores(), Path::scoresIndex()))
+ return false;
+ ts_main_sco = Path::timestamp(Path::scores());
+ ts_main_idx = Path::timestamp(Path::scoresIndex());
+ if (Path::scores() == Path::userScores())
+ ts_user_sco = ts_main_sco;
+ if (Path::scoresIndex() == Path::userScoresIndex())
+ ts_user_idx = ts_main_idx;
+ } else {
+ wibble::sys::fs::mkFilePath(Path::userScores());
+ wibble::sys::fs::mkFilePath(Path::userScoresIndex());
+ if (!rebuild(Path::userScores(), Path::userScoresIndex()))
+ return false;
+ ts_user_sco = Path::timestamp(Path::userScores());
+ ts_user_idx = Path::timestamp(Path::userScoresIndex());
+ }
+ return true;
+ }
+ return false;
+}
+
+bool PopconIndexer::deleteRedundantUserIndex()
+{
+ if (userIndexIsRedundant())
+ {
+ // Delete the user indexes if they exist
+ if (Path::scores() != Path::userScores())
+ {
+ unlink(Path::userScores().c_str());
+ ts_user_sco = 0;
+ }
+ if (Path::scoresIndex() != Path::userScoresIndex())
+ {
+ unlink(Path::userScoresIndex().c_str());
+ ts_user_idx = 0;
+ }
+ return true;
+ }
+ return false;
+}
+
+bool PopconIndexer::getUpToDatePopcon(std::string& scofname, std::string& idxfname)
+{
+ // If there are no indexes of any kind, then we have nothing to return
+ if (ts_user_sco == 0 && ts_main_sco == 0 && ts_user_idx == 0 && ts_main_idx == 0)
+ return false;
+
+ // If the user index is up to date, use it
+ if (ts_user_sco >= sourceTimestamp() &&
+ ts_user_idx >= sourceTimestamp())
+ {
+ scofname = Path::userScores();
+ idxfname = Path::userScoresIndex();
+ return true;
+ }
+
+ // If the user index is not up to date and we have user sources, we cannot
+ // fall back to the system index
+ if (ts_user_src != 0)
+ return false;
+
+ // Fallback to the system index
+ if (ts_main_sco >= sourceTimestamp() &&
+ ts_main_idx >= sourceTimestamp())
+ {
+ scofname = Path::scores();
+ idxfname = Path::scoresIndex();
+ return true;
+ }
+
+ return false;
+}
+
+
+bool PopconIndexer::obtainWorkingPopcon(std::string& scofname, std::string& idxfname)
+{
+ PopconIndexer indexer;
+
+ indexer.rebuildIfNeeded();
+ indexer.deleteRedundantUserIndex();
+ return indexer.getUpToDatePopcon(scofname, idxfname);
+}
+
+
+}
+}
+
+// vim:set ts=4 sw=4:
diff --git a/ept/popcon/maint/popconindexer.h b/ept/popcon/maint/popconindexer.h
new file mode 100644
index 0000000..86789cf
--- /dev/null
+++ b/ept/popcon/maint/popconindexer.h
@@ -0,0 +1,75 @@
+#ifndef EPT_DEBTAGS_PKGIDINDEXER_H
+#define EPT_DEBTAGS_PKGIDINDEXER_H
+
+/** @file
+ * @author Enrico Zini <enrico@enricozini.org>
+ * Rebuild and maintain the map from package IDs to package names
+ */
+
+/*
+ * Copyright (C) 2003-2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/popcon/maint/sourcedir.h>
+#include <string>
+
+namespace ept {
+namespace popcon {
+
+struct InfoStruct
+{
+ size_t submissions;
+};
+
+struct PopconIndexer
+{
+ SourceDir mainSource;
+ SourceDir userSource;
+ time_t ts_main_src;
+ time_t ts_user_src;
+ time_t ts_main_sco;
+ time_t ts_user_sco;
+ time_t ts_main_idx;
+ time_t ts_user_idx;
+
+ time_t sourceTimestamp() const
+ {
+ time_t res = ts_main_src;
+ if (ts_user_src > res) res = ts_user_src;
+ return res;
+
+ }
+ bool needsRebuild() const;
+ bool rebuild(const std::string& scofname, const std::string& idxfname);
+ bool rebuildIfNeeded();
+ bool getUpToDatePopcon(std::string& scofname, std::string& idxfname);
+
+ bool userIndexIsRedundant() const;
+ bool deleteRedundantUserIndex();
+
+ void rescan();
+
+ PopconIndexer();
+
+ static bool obtainWorkingPopcon(std::string& scofname, std::string& idxfname);
+};
+
+}
+}
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/ept/popcon/maint/sourcedir.cc b/ept/popcon/maint/sourcedir.cc
new file mode 100644
index 0000000..44afa4e
--- /dev/null
+++ b/ept/popcon/maint/sourcedir.cc
@@ -0,0 +1,143 @@
+#include <ept/popcon/maint/sourcedir.h>
+#include <ept/popcon/maint/path.h>
+
+#include <wibble/string.h>
+
+#include <tagcoll/input/zlib.h>
+#include <tagcoll/input/stdio.h>
+
+#include <cstdlib>
+
+using namespace std;
+using namespace wibble;
+
+namespace ept {
+namespace popcon {
+
+SourceDir::FileType SourceDir::fileType(const std::string& name)
+{
+ if (name[0] == '.') return SKIP;
+
+ if (name == "all-popcon-results.txt") return RAW;
+ if (name == "all-popcon-results.txt.gz") return RAWGZ;
+
+ return SKIP;
+}
+
+time_t SourceDir::timestamp()
+{
+ if (!valid()) return 0;
+
+ time_t max = 0;
+ for (const_iterator d = begin(); d != end(); ++d)
+ {
+ FileType type = fileType(d->d_name);
+ if (type == SKIP) continue;
+
+ time_t ts = Path::timestamp(str::joinpath(path(), d->d_name));
+ if (ts > max) max = ts;
+ }
+
+ return max;
+}
+
+bool readLine(tagcoll::input::Input& in, string& str)
+{
+ str.clear();
+ int c;
+ while ((c = in.nextChar()) != tagcoll::input::Input::Eof && c != '\n')
+ str += c;
+ return c != tagcoll::input::Input::Eof;
+}
+
+static void parseScores(tagcoll::input::Input& in, map<std::string, Score>& out, size_t& submissions)
+{
+ string line;
+ while (readLine(in, line))
+ {
+ if (line.size() < 10)
+ continue;
+ if (line.substr(0, 13) == "Submissions: ")
+ {
+ submissions = strtoul(line.substr(13).c_str(), 0, 10);
+ continue;
+ }
+ if (line.substr(0, 9) != "Package: ")
+ continue;
+ size_t start = 9;
+ size_t end = line.find(' ', start);
+ if (end == string::npos)
+ continue;
+ string name = line.substr(start, end-start);
+ // Skip packages not in the apt index
+ //if (!apt.isValid(name))
+ //continue;
+
+ start = line.find_first_not_of(' ', end);
+ if (start == string::npos) continue;
+ end = line.find(' ', start);
+ if (end == string::npos) continue;
+ string vote = line.substr(start, end-start);
+
+ start = line.find_first_not_of(' ', end);
+ if (start == string::npos) continue;
+ end = line.find(' ', start);
+ if (end == string::npos) continue;
+ string old = line.substr(start, end-start);
+
+ start = line.find_first_not_of(' ', end);
+ if (start == string::npos) continue;
+ end = line.find(' ', start);
+ if (end == string::npos) continue;
+ string recent = line.substr(start, end-start);
+
+ start = line.find_first_not_of(' ', end);
+ if (start == string::npos) continue;
+ end = line.find(' ', start);
+ if (end == string::npos) end = line.size();
+ string nofiles = line.substr(start, end-start);
+
+ float score = (float)strtoul(vote.c_str(), NULL, 10)
+ + (float)strtoul(recent.c_str(), NULL, 10) * 0.5f
+ + (float)strtoul(old.c_str(), NULL, 10) * 0.3f
+ + (float)strtoul(nofiles.c_str(), NULL, 10) * 0.8f;
+
+ if (score > 0)
+ out.insert(make_pair(name, Score(score)));
+ }
+}
+
+bool SourceDir::readScores(map<std::string, Score>& out, size_t& submissions)
+{
+ if (!valid()) return false;
+ bool done = false;
+
+ for (const_iterator d = begin(); d != end(); ++d)
+ {
+ FileType type = fileType(d->d_name);
+ if (type == RAW)
+ {
+ // Read uncompressed data
+ tagcoll::input::Stdio in(str::joinpath(path(), d->d_name));
+
+ // Read the scores
+ parseScores(in, out, submissions);
+ done = true;
+ }
+ else if (type == RAWGZ)
+ {
+ // Read compressed data
+ tagcoll::input::Zlib in(str::joinpath(path(), d->d_name));
+
+ // Read the scores
+ parseScores(in, out, submissions);
+ done = true;
+ }
+ }
+ return done;
+}
+
+}
+}
+
+// vim:set ts=4 sw=4:
diff --git a/ept/popcon/maint/sourcedir.h b/ept/popcon/maint/sourcedir.h
new file mode 100644
index 0000000..fb8911f
--- /dev/null
+++ b/ept/popcon/maint/sourcedir.h
@@ -0,0 +1,63 @@
+#ifndef EPT_POPCON_SOURCEDIR_H
+#define EPT_POPCON_SOURCEDIR_H
+
+/** @file
+ * @author Enrico Zini <enrico@enricozini.org>
+ * Popcon data source directory access
+ */
+
+/*
+ * Copyright (C) 2003,2004,2005,2006,2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/popcon/popcon.h>
+#include <wibble/sys/fs.h>
+#include <string>
+#include <map>
+
+namespace ept {
+namespace popcon {
+
+/**
+ * Access a directory containing Debtags data files
+ */
+class SourceDir : public wibble::sys::fs::Directory
+{
+protected:
+ enum FileType { SKIP, RAW, RAWGZ };
+
+ // Check if a file name is a tag file, a vocabulary file or a file to skip.
+ // Please notice that it works on file names, not paths.
+ FileType fileType(const std::string& name);
+
+public:
+ SourceDir(const std::string& path) : Directory(path) {}
+
+ /// Return the time of the newest file in the source directory
+ time_t timestamp();
+
+ /**
+ * Read the tag files in the directory and output their content to the map
+ */
+ bool readScores(std::map<std::string, Score>& out, size_t& submissions);
+};
+
+}
+}
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/ept/popcon/popcon.cc b/ept/popcon/popcon.cc
new file mode 100644
index 0000000..2ce9e53
--- /dev/null
+++ b/ept/popcon/popcon.cc
@@ -0,0 +1,95 @@
+// -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+
+/** @file
+ * @author Enrico Zini <enrico@enricozini.org>
+ * Quick map from package IDs to package names
+ */
+
+/*
+ * Copyright (C) 2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/popcon/popcon.h>
+#include <ept/popcon/maint/popconindexer.h>
+#include <ept/popcon/maint/path.h>
+
+//#include <iostream>
+
+using namespace std;
+
+namespace ept {
+namespace popcon {
+
+size_t Popcon::GeneralInfo::submissions() const
+{
+ if (!m_buf) return 0;
+ return ((InfoStruct*)m_buf)->submissions;
+}
+
+Popcon::Popcon()
+{
+ std::string scofname, idxfname;
+
+ if (!PopconIndexer::obtainWorkingPopcon(scofname, idxfname))
+ {
+ m_timestamp = 0;
+ return;
+ }
+
+ //cerr << "GOT " << scofname << " " << idxfname << endl;
+
+ m_timestamp = Path::timestamp(idxfname);
+
+ mastermmap.init(idxfname);
+ tagcoll::diskindex::MMap::init(mastermmap, 0);
+
+ m_info.init(mastermmap, 1);
+
+ //cerr << "SIZE " << size() << endl;
+ //for (size_t i = 0; i < size(); ++i)
+ //{
+ // cerr << "EL " << i << ": " << ((Score*)m_buf)[i].offset << " " << ((Score*)m_buf)[i].score << endl;
+ //}
+}
+
+float Popcon::scoreByName(const std::string& name) const
+{
+ // Binary search the index to find the package ID
+ int begin, end;
+
+ /* Binary search */
+ begin = -1, end = size();
+ while (end - begin > 1)
+ {
+ int cur = (end + begin) / 2;
+ if (this->name(cur) > name)
+ end = cur;
+ else
+ begin = cur;
+ }
+
+ if (begin == -1 || this->name(begin) != name)
+ //throw NotFoundException(string("looking for the ID of string ") + str);
+ return 0;
+ else
+ return score(begin);
+}
+
+}
+}
+
+// vim:set ts=4 sw=4:
diff --git a/ept/popcon/popcon.h b/ept/popcon/popcon.h
new file mode 100644
index 0000000..684f98a
--- /dev/null
+++ b/ept/popcon/popcon.h
@@ -0,0 +1,153 @@
+// -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+#ifndef EPT_POPCON_POPCON_H
+#define EPT_POPCON_POPCON_H
+
+/** @file
+ * @author Enrico Zini <enrico@enricozini.org>
+ * Access popcon data
+ */
+
+/*
+ * Copyright (C) 2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <tagcoll/diskindex/mmap.h>
+#include <string>
+
+namespace ept {
+namespace apt {
+class Apt;
+}
+
+namespace popcon {
+
+/**
+ * Store the score information in the popcon cache.
+ *
+ * Currently, this is only one float; more can be added in the future.
+ */
+class Score
+{
+protected:
+ unsigned offset;
+
+public:
+ float score;
+
+ Score(float score) : offset(offset), score(score) {}
+
+ friend class Popcon;
+ friend class PopconIndexer;
+ friend class PopconGenerator;
+};
+
+/**
+ * Maps Packages to IDs and vice-versa.
+ *
+ * This is used in building the Debtags fast index, which works representing
+ * tags and packages as int IDs.
+ *
+ * Index building works like this:
+ * 1. The file all-popcon-results.txt.gz is downloaded from
+ * http://popcon.debian.org/all-popcon-results.txt.gz
+ * 2. The file is put in either ~/.popcon/all-popcon-results.txt.gz
+ * or in /var/lib/popcon/all-popcon-results.txt.gz
+ * 3. If the file is newer than the index, it will be automatically used to
+ * recompute the scores and rebuild the index.
+ */
+class Popcon : public tagcoll::diskindex::MMap
+{
+ struct GeneralInfo : public tagcoll::diskindex::MMap
+ {
+ size_t submissions() const;
+ };
+
+ tagcoll::diskindex::MasterMMap mastermmap;
+ time_t m_timestamp;
+
+ GeneralInfo m_info;
+
+ /// Get the score structure by index
+ const Score* structByIndex(size_t idx) const
+ {
+ if (idx >= 0 && idx < size())
+ return (Score*)m_buf + idx;
+ return 0;
+ }
+
+public:
+ Popcon();
+
+ /// Get the timestamp of when the index was last updated
+ time_t timestamp() const { return m_timestamp; }
+
+ /// Return true if this data source has data, false if it's empty
+ bool hasData() const { return m_timestamp != 0; }
+
+ /// Return the total number of popcon submissions
+ size_t submissions() const { return m_info.submissions(); }
+
+ /// Get the number of packages in the index
+ size_t size() const
+ {
+ if (m_buf)
+ return ((Score*)m_buf)->offset / sizeof(Score);
+ else
+ return 0;
+ }
+
+ /**
+ * Get a package name by index
+ *
+ * If the index is not valid, returns the empty string.
+ */
+ std::string name(size_t idx) const
+ {
+ const Score* s = structByIndex(idx);
+ if (s == 0) return std::string();
+ return std::string(m_buf + s->offset);
+ }
+
+ /// Get the score by index
+ float scoreByIndex(size_t idx) const
+ {
+ const Score* s = structByIndex(idx);
+ if (!s) return 0;
+ return s->score;
+ }
+
+ /// Get the score structure by package name
+ float scoreByName(const std::string& name) const;
+
+ /// Get the score by index
+ float score(size_t idx) const { return scoreByIndex(idx); }
+
+ /// Get the score by index
+ float operator[](int idx) const { return scoreByIndex(idx); }
+
+ /// Get the score by name
+ float score(const std::string& name) const { return scoreByName(name); }
+
+ /// Get the score structure by package name
+ float operator[](const std::string& name) const { return scoreByName(name); }
+};
+
+}
+}
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/ept/popcon/popcon.test.h b/ept/popcon/popcon.test.h
new file mode 100644
index 0000000..4509b85
--- /dev/null
+++ b/ept/popcon/popcon.test.h
@@ -0,0 +1,108 @@
+// -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+/*
+ * popcon test
+ *
+ * Copyright (C) 2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/popcon/popcon.h>
+#include <ept/popcon/maint/path.h>
+#include <ept/apt/apt.h>
+#include <set>
+
+#include <ept/test.h>
+
+using namespace std;
+using namespace ept;
+using namespace ept::popcon;
+using namespace ept::apt;
+
+struct TestPopcon
+{
+ popcon::Path::OverridePopconSourceDir odsd;
+ popcon::Path::OverridePopconIndexDir odid;
+ popcon::Path::OverridePopconUserSourceDir odusd;
+ popcon::Path::OverridePopconUserIndexDir oduid;
+
+ Apt apt;
+ Popcon popcon;
+
+ TestPopcon()
+ : odsd( TEST_ENV_DIR "popcon" ),
+ odid( TEST_ENV_DIR "popcon" ),
+ odusd( TEST_ENV_DIR "popcon" ),
+ oduid( TEST_ENV_DIR "popcon" )
+ {}
+
+ Test basicAccess()
+ {
+ assert_eq(popcon.submissions(), 52024);
+ assert(popcon.size() > 0);
+ assert(popcon.score(0) > 0);
+ assert(!popcon.name(0).empty());
+ }
+
+ // Check that every valid index is accessible
+ Test accessibility()
+ {
+ for (size_t i = 0; i < popcon.size(); ++i)
+ {
+ //cerr << popcon.name(i) << " " << popcon.score(i) << endl;
+ assert(popcon.score(i) > 0);
+ }
+ }
+
+ // Check that we can get a score for every package
+ Test haveScores()
+ {
+ int has = 0;
+ for (Apt::iterator i = apt.begin(); i != apt.end(); ++i)
+ {
+ float score = popcon.score(*i);
+ if (score > 0)
+ ++has;
+ }
+ // At least 1000 packages should have a score
+ assert(has > 1000);
+ }
+
+ // Check that scores are meaningful
+ Test validScores()
+ {
+ assert(popcon["apt"] > popcon["libapt-pkg-dev"]);
+ }
+
+ // If there is no data, Popcon should work as if all scores were 0
+ Test fallbackValues()
+ {
+ popcon::Path::OverridePopconSourceDir odsd("./empty");
+ popcon::Path::OverridePopconIndexDir odid("./empty");
+ popcon::Path::OverridePopconUserSourceDir odusd("./empty");
+ popcon::Path::OverridePopconUserIndexDir oduid("./empty");
+ Popcon empty;
+
+ assert_eq(empty.timestamp(), 0);
+ assert(!empty.hasData());
+
+ assert_eq(empty.submissions(), 0);
+ assert(empty.size() == 0);
+ assert(empty.score("apt") == 0.0);
+ }
+
+};
+
+// vim:set ts=4 sw=4:
diff --git a/ept/progresscallback.cpp b/ept/progresscallback.cpp
new file mode 100644
index 0000000..af5877c
--- /dev/null
+++ b/ept/progresscallback.cpp
@@ -0,0 +1,12 @@
+#include <ept/progresscallback.h>
+
+namespace ept {
+
+ bool ProgressCallback::Pulse(pkgAcquire *Owner)
+ {
+ pkgAcquireStatus::Pulse(Owner);
+ UpdatePulse(FetchedBytes, CurrentCPS, CurrentItems);
+ return true;
+ }
+
+}
diff --git a/ept/progresscallback.h b/ept/progresscallback.h
new file mode 100644
index 0000000..a5dbd6a
--- /dev/null
+++ b/ept/progresscallback.h
@@ -0,0 +1,28 @@
+/** -*- C++ -*-
+ @file progresscallback.h
+ @author Michael Vogt <mvo@debian.org>
+*/
+
+#ifndef EPT_PROGRESSCALLBACK_H
+#define EPT_PROGRESSCALLBACK_H
+
+#include <apt-pkg/acquire.h>
+
+namespace ept {
+
+class ProgressCallback : public pkgAcquireStatus
+{
+protected:
+ virtual bool Pulse(pkgAcquire *Owner);
+public:
+ ProgressCallback() {};
+ virtual ~ProgressCallback() {};
+ virtual bool MediaChange( string, string ) { return false; } // bah
+
+ // override this to get periodic updates
+ virtual void UpdatePulse( double, double, unsigned long ) {}
+};
+
+}
+
+#endif
diff --git a/ept/sources.h b/ept/sources.h
new file mode 100644
index 0000000..cefbc56
--- /dev/null
+++ b/ept/sources.h
@@ -0,0 +1,220 @@
+/** -*- C++ -*-
+ @file ept/sources.h
+ @author Peter Rockai <me@mornfall.net>
+*/
+
+#include <iterator>
+#include <iostream>
+#include <sstream>
+#include <string>
+
+#include <wibble/range.h>
+#include <wibble/mixin.h>
+
+#ifndef EPT_SOURCES_H
+#define EPT_SOURCES_H
+
+namespace ept {
+
+struct Sources {
+ struct Entry : wibble::mixin::Comparable< Entry > {
+ typedef wibble::Range< std::string > StringRange;
+ typedef wibble::Consumer< std::string > StringConsumer;
+ typedef std::vector< std::string > StringVector;
+ struct Word { std::string s; };
+ enum Type { Binary, Source, Comment };
+ Entry( bool e = false, Type t = Comment,
+ std::string u = "", std::string d = "",
+ StringRange c = wibble::range( *new StringVector ) )
+ : m_enabled( e ), m_type( t ), m_url( u ), m_dist( d )
+ {
+ c.output( wibble::consumer( m_components ) );
+ }
+
+ Entry( const Entry &e )
+ : m_enabled( e.m_enabled ), m_type( e.m_type ), m_url( e.m_url ),
+ m_dist( e.m_dist ), m_comment( e.m_comment )
+ {
+ wibble::range( e.m_components ).output( wibble::consumer( m_components ) );
+ }
+
+ bool operator< ( const Entry &o ) const {
+ if (type() < o.type())
+ return true;
+ if (enabled() < o.enabled())
+ return true;
+ if (url() < o.url())
+ return true;
+ if (distribution() < o.distribution())
+ return true;
+ if (components() < o.components())
+ return true;
+ if (comment() < o.comment())
+ return true;
+ return false;
+ }
+
+ bool operator== ( const Entry &e ) const {
+ return not ( ( *this < e ) || ( e < *this ) );
+ }
+
+ std::string components() const {
+ std::ostringstream s;
+ std::copy( m_components.begin(), m_components.end(),
+ std::ostream_iterator< std::string >( s, " " ) );
+ return s.str();
+ }
+
+ void setComponents( const std::string &s ) {
+ std::istringstream i( s );
+ m_components.clear();
+ std::copy( std::istream_iterator< std::string >( i ),
+ std::istream_iterator< std::string >(),
+ wibble::consumer( m_components ) );
+ }
+
+ std::string typeString() const {
+ switch (type())
+ {
+ case Binary: return "deb";
+ case Source: return "deb-src";
+ case Comment: return "comment";
+ }
+ }
+
+ void setTypeString( const std::string &s ) {
+ if (s == "deb") setType( Binary );
+ if (s == "deb-src") setType( Source );
+ if (s == "comment") setType( Comment );
+ }
+
+ std::string distribution() const { return m_dist; }
+ void setDistribution( const std::string &s ) { m_dist = s; }
+
+ std::string url() const { return m_url; }
+ void setUrl( const std::string &s ) { m_url = s; }
+
+ bool enabled() const { return m_enabled; }
+ void setEnabled( bool e ) { m_enabled = e; }
+
+ std::string comment() const { return m_comment; }
+ void setComment( const std::string &s ) { m_comment = s; }
+
+ Type type() const { return m_type; }
+ void setType( Type t ) {
+ m_type = t;
+ if (t == Comment) setEnabled( false );
+ }
+
+ friend std::istream &operator >>( std::istream &i, Entry &s );
+
+ protected:
+
+ bool m_enabled;
+ Type m_type;
+ std::string m_url;
+ std::string m_dist;
+ StringVector m_components;
+ std::string m_comment;
+ };
+ void add( const Entry &e ) {
+ wibble::consumer( m_entries ).consume( e );
+ }
+ void clear() { m_entries.clear(); }
+ void disable( const Entry & );
+ void enable( const Entry & );
+ wibble::Range< Entry > entries() const {
+ return wibble::range( m_entries );
+ }
+ friend std::istream &operator >>( std::istream &i, Sources &s );
+protected:
+ std::vector< Entry > m_entries;
+};
+
+inline std::istream &operator >>( std::istream &i, Sources::Entry::Word &w )
+{
+ bool bracket = false, quote = false, started = false;
+ char c;
+ w.s = "";
+ while (!i.eof()) {
+ c = i.get();
+ if (started && !quote && !bracket && isspace( c ))
+ break;
+ if (!isspace( c ))
+ started = true;
+ if (started)
+ w.s += c;
+ if (bracket && c == ']')
+ bracket = false;
+ if (quote && c == '"')
+ quote = false;
+ if (!quote && c == '[')
+ bracket = true;
+ if (!bracket && c == '"')
+ quote = true;
+ }
+ return i;
+}
+
+inline std::istream &operator >>( std::istream &i, Sources::Entry &e ) {
+ std::string line, tmp;
+ std::getline( i, line );
+ std::istringstream l( line );
+ // std::cerr << "parsing line: " << line << std::endl;
+ l >> tmp;
+ e.setEnabled( true );
+ if (tmp[0] == '#') {
+ if (tmp.size() > 1)
+ tmp = tmp.substr(1);
+ else
+ l >> tmp;
+ e.setEnabled( false );
+ }
+ // std::cerr << "type: " << tmp << std::endl;
+ if (tmp == "deb" || tmp == "deb-src") {
+ e.setTypeString( tmp );
+ } else {
+ // std::cerr << "comment: '" << line << "'" << std::endl;
+ e.setType( Sources::Entry::Comment );
+ e.setEnabled( false );
+ e.setComment( line );
+ return i;
+ }
+ Sources::Entry::Word w;
+ l >> w; e.m_url = w.s;
+ l >> w; e.m_dist = w.s;
+ e.m_components.clear();
+ std::copy( std::istream_iterator< std::string >( l ),
+ std::istream_iterator< std::string >(),
+ wibble::consumer( e.m_components ) );
+ return i;
+}
+
+inline std::ostream &operator <<( std::ostream &o, const Sources::Entry &e )
+{
+ if (e.type() == Sources::Entry::Comment)
+ return o << e.comment();
+ if (! e.enabled())
+ o << "# ";
+ o << e.typeString();
+ o << " " << e.url() << " " << e.distribution() << " " << e.components();
+ return o;
+}
+
+inline std::istream &operator >>( std::istream &i, Sources &s ) {
+ std::copy( std::istream_iterator< Sources::Entry >( i ),
+ std::istream_iterator< Sources::Entry >(),
+ wibble::consumer( s.m_entries ) );
+ return i;
+}
+
+inline std::ostream &operator <<( std::ostream &o, const Sources &s ) {
+ std::copy( s.entries().begin(), s.entries().end(),
+ std::ostream_iterator< Sources::Entry >( o, "\n" ) );
+ return o;
+}
+
+}
+
+#endif
+// vim:set ts=4 sw=4:
diff --git a/ept/test-data/debtags/package-tags b/ept/test-data/debtags/package-tags
new file mode 100644
index 0000000..303ed6d
--- /dev/null
+++ b/ept/test-data/debtags/package-tags
@@ -0,0 +1,21145 @@
+3dchess: game::board, game::board:chess, interface::3d, role::program, use::gameplaying, x11::application
+3ddesktop: game::toys, interface::3d, role::program, scope::utility, uitoolkit::gtk, use::viewing, x11::applet
+44bsd-rdist: admin::file-distribution, interface::commandline, role::program, scope::utility, use::synchronizing
+6tunnel: interface::daemon, network::server, network::vpn, protocol::ipv6, role::program, use::proxying, use::routing
+855resolution: admin::configuring, hardware::video, interface::commandline, interface::x11, role::program, scope::utility, use::configuring, x11::library
+915resolution: admin::configuring, admin::hardware, hardware::video, interface::commandline, role::program, scope::utility, use::driver
+9base: admin::configuring, devel::code-generator, devel::interpreter, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::file
+9menu: interface::x11, role::program, scope::utility, x11::application
+9wm: interface::x11, role::program, x11::window-manager
+a2ps: devel::prettyprint, interface::commandline, role::program, scope::utility, suite::gnu, use::converting, use::printing, works-with-format::postscript, works-with::text
+a2ps-perl-ja: culture::japanese, implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, use::printing, works-with-format::postscript, works-with::text
+aa3d: game::toys, interface::commandline, role::program, scope::utility, use::viewing
+aalib-bin: game::demos, interface::text-mode, uitoolkit::ncurses, use::gameplaying, works-with::video
+aalib1: devel::library, interface::text-mode, role::shared-lib, uitoolkit::ncurses, works-with::video
+aalib1-dev: devel::library, role::devel-lib, works-with::video
+aap: devel::buildtools, implemented-in::python, interface::commandline, role::program, scope::utility, works-with::software:source
+aap-doc: devel::buildtools, devel::doc, devel::lang:python, made-of::data:html, made-of::data:pdf, role::documentation, works-with::software:source
+aatv: admin::special:not-applicable, culture::special:not-applicable, devel::special:not-applicable, filetransfer::special:not-applicable, game::toys, hardware::video, implemented-in::c, interface::commandline, interface::text-mode, junior::special:not-applicable, made-of::special:not-applicable, mail::special:not-applicable, network::special:not-applicable, role::program, scope::utility, security::special:not-applicable, sound::special:not-applicable, uitoolkit::TODO, use::viewing, web::special:not-applicable, works-with-format::special:not-applicable, works-with::video, x11::special:not-applicable
+abakus: field::mathematics, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::application
+abc2ps: field::arts, interface::commandline, role::program, scope::utility, use::converting, works-with-format::postscript, works-with::music-notation, works-with::text
+abcde: hardware::storage, hardware::storage:cd, interface::commandline, role::program, scope::utility, use::converting, use::storing, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::audio
+abcm2ps: field::arts, interface::commandline, role::program, scope::utility, use::converting, works-with-format::postscript, works-with::music-notation, works-with::text
+abcmidi: interface::commandline, role::program, scope::utility, sound::midi, use::converting, use::playing, works-with::audio, works-with::music-notation
+abcmidi-yaps: field::arts, interface::commandline, role::program, scope::utility, use::converting, works-with-format::postscript, works-with::music-notation, works-with::text
+abicheck: devel::testing-qa, implemented-in::perl, interface::commandline, role::program, scope::utility, use::checking
+abiword: interface::x11, role::program, scope::application, uitoolkit::gtk, use::editing, use::text-formatting, works-with-format::html, works-with-format::tex, works-with::text, x11::application
+abiword-common: interface::x11, role::app-data, special::auto-inst-parts, uitoolkit::gtk, use::editing, use::text-formatting, works-with-format::html, works-with-format::tex, works-with::text, x11::application
+abiword-doc: interface::x11, made-of::data:html, role::documentation, uitoolkit::gtk, use::editing, use::text-formatting, works-with-format::html, works-with-format::tex, works-with::text
+abiword-gnome: interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::editing, use::text-formatting, works-with-format::html, works-with-format::tex, works-with::text, x11::application
+abiword-help: interface::web, made-of::data:html, role::documentation, use::editing, use::text-formatting, works-with-format::html, works-with-format::tex, works-with::text
+abiword-plugins: interface::text-mode, interface::x11, role::plugin, role::shared-lib, uitoolkit::gtk, uitoolkit::ncurses, use::editing, use::text-formatting, works-with-format::html, works-with-format::tex, works-with::text, x11::application
+abiword-plugins-gnome: interface::text-mode, interface::x11, role::plugin, suite::gnome, uitoolkit::gtk, uitoolkit::ncurses, use::editing, use::text-formatting, works-with-format::html, works-with-format::tex, works-with::text, x11::application
+abntex: role::app-data, works-with-format::tex, works-with::text
+abook: interface::text-mode, role::program, scope::application, uitoolkit::ncurses, use::organizing, works-with::pim
+aboot-base: admin::boot, admin::hardware, role::app-data
+aboot-cross: admin::boot, admin::hardware, hardware::storage, hardware::storage:cd, interface::commandline, role::program, scope::utility, use::storing, works-with-format::iso9660, works-with::archive
+abs-guide: role::documentation
+abuse: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::entertaining, use::gameplaying, x11::application
+abuse-frabs: game::arcade, role::app-data, use::gameplaying
+abuse-lib: game::arcade, role::app-data, use::gameplaying
+abuse-sdl: game::arcade, role::dummy, special::obsolete, uitoolkit::sdl
+abuse-sfx: game::arcade, use::gameplaying
+acct: admin::accounting, admin::user-management, interface::daemon, role::program, suite::gnu, use::monitor, use::storing, use::viewing, works-with::logfile, works-with::software:running
+ace-of-penguins: game::card, interface::x11, role::program, use::gameplaying, x11::application
+acfax: hardware::hamradio, hardware::modem, interface::x11, role::program, scope::application, uitoolkit::athena, works-with::fax, x11::application
+acheck: devel::i18n, implemented-in::perl, interface::commandline, role::program, scope::utility, use::checking
+acheck-rules: devel::i18n, interface::commandline, role::app-data, use::checking
+acheck-rules-fr: culture::french, devel::i18n, interface::commandline, role::app-data, use::checking
+achilles: field::biology, game::toys, interface::x11, role::program, uitoolkit::sdl, x11::application
+achims-guestbook: implemented-in::php, interface::web, network::server, protocol::http, role::program, web::cms, works-with-format::html, works-with::text
+acidbase: implemented-in::php, interface::web, protocol::http, role::plugin, security::ids, security::log-analyzer, use::monitor, web::application
+acidlab: implemented-in::php, network::server, role::program, security::ids, security::log-analyzer, web::application
+acidlab-doc: role::documentation
+acidlab-mysql: devel::lang:sql, implemented-in::php, role::metapackage, works-with::db
+acidlab-pgsql: devel::lang:sql, implemented-in::php, role::metapackage, works-with::db
+acidwarp: game::demos, use::gameplaying
+ack: culture::japanese, interface::commandline, role::program, scope::utility, use::converting, works-with::text
+acl: admin::user-management, interface::commandline, role::program, scope::utility, works-with::file
+acl-alisp: devel::compiler, devel::lang:lisp
+acl-alisp8: devel::compiler, devel::lang:lisp
+acl-installer: devel::interpreter, devel::lang:lisp
+acl-mlisp: devel::compiler, devel::lang:lisp
+acl-mlisp8: devel::compiler, devel::lang:lisp
+acl-pro-installer: devel::lang:lisp
+acl2: devel::interpreter, devel::lang:lisp, field::mathematics, implemented-in::lisp, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, works-with::software:source
+acl2-books: devel::interpreter, devel::lang:lisp, devel::library, field::mathematics, implemented-in::lisp, role::app-data, works-with::software:source
+acl2-books-certs: devel::interpreter, devel::lang:lisp, field::mathematics, interface::text-mode, role::app-data, uitoolkit::ncurses, works-with::software:source
+acl2-books-source: devel::interpreter, devel::lang:lisp, implemented-in::lisp, interface::text-mode, role::source, uitoolkit::ncurses
+acl2-doc: devel::doc, devel::interpreter, devel::lang:lisp, field::mathematics, interface::text-mode, made-of::data:html, role::documentation, uitoolkit::ncurses, works-with::software:source
+acl2-emacs: devel::interpreter, devel::lang:lisp, field::mathematics, implemented-in::lisp, interface::commandline, role::plugin, suite::emacs, use::editing, works-with::software:source
+acl2-infix: devel::interpreter, devel::lang:lisp, devel::library, field::mathematics, implemented-in::lisp, role::app-data, works-with::software:source
+acl2-infix-source: devel::interpreter, devel::lang:lisp, devel::library, field::mathematics, implemented-in::lisp, role::source
+acl2-source: devel::interpreter, devel::lang:lisp, field::mathematics, implemented-in::lisp, interface::text-mode, role::source, uitoolkit::ncurses
+acldoc-el: special::not-yet-tagged, special::not-yet-tagged::a
+aclock.app: implemented-in::objc, interface::x11, role::plugin, suite::gnustep, uitoolkit::gnustep, use::timekeeping, x11::applet
+acm: game::arcade, interface::x11, role::program, suite::gnu, use::gameplaying, x11::application
+acm4: game::arcade, interface::x11, role::program, suite::gnu, uitoolkit::athena, use::gameplaying, x11::application
+aconnectgui: interface::x11, role::program, scope::application, uitoolkit::TODO, x11::application
+acorn-fdisk: admin::filesystem, interface::commandline, role::program, scope::utility, use::checking
+acovea: devel::lang:c, devel::lang:c++, devel::profiler, implemented-in::c++, interface::commandline, role::program, scope::utility, works-with::software:source
+acovea-results: devel::doc, devel::examples, devel::lang:c, devel::lang:c++, devel::profiler, interface::commandline, role::documentation
+acpi: admin::power-management, hardware::power, hardware::power:acpi, interface::commandline, role::program, scope::utility, use::viewing
+acpi-support: admin::hardware, admin::power-management, hardware::laptop, hardware::power, hardware::power:acpi, implemented-in::c, implemented-in::shell, role::program, use::driver
+acpid: admin::power-management, hardware::power, hardware::power:acpi, interface::daemon, role::program
+acpidump: admin::power-management, hardware::power, hardware::power:acpi, interface::commandline, role::program, scope::utility, use::viewing
+acpitool: admin::power-management, hardware::laptop, hardware::power, hardware::power:acpi, interface::commandline, role::program, scope::utility, use::configuring, use::viewing
+acs: field::electronics
+acx100-source: admin::kernel, hardware::special:todo, implemented-in::c, role::source, special::not-yet-tagged, special::not-yet-tagged::a, use::driver
+ada-mode: devel::lang:ada, implemented-in::lisp, interface::commandline, role::plugin, suite::emacs, use::editing, works-with::software:source
+ada-reference-manual: devel::doc, devel::lang:ada, made-of::data:html, made-of::data:info, role::documentation
+adabrowse: devel::docsystem, devel::lang:ada, implemented-in::ada, interface::shell, role::program, works-with-format::html, works-with-format::xml, works-with::software:source, works-with::text
+adacgi: devel::lang:ada, implemented-in::ada, interface::web, network::server, protocol::http, role::program, web::cgi
+adacontrol: devel::lang:ada, implemented-in::ada
+addresses-goodies-for-gnustep: implemented-in::objc, interface::commandline, interface::x11, role::plugin, suite::gnustep, use::organizing, works-with::mail, works-with::pim, x11::applet
+addresses.framework: implemented-in::objc, interface::x11, role::plugin, suite::gnustep, works-with::mail, works-with::pim, x11::applet
+addressmanager.app: implemented-in::objc, interface::x11, role::plugin, suite::gnustep, works-with::mail, works-with::pim, x11::applet
+addressview.framework: implemented-in::objc, interface::x11, role::plugin, suite::gnustep, use::organizing, use::viewing, works-with::mail, works-with::pim, x11::applet
+adduser: admin::user-management, implemented-in::perl, interface::commandline, role::program, scope::utility
+adduser-ng: admin::user-management, implemented-in::perl, interface::commandline, role::program, scope::utility
+adduser-ng-doc: admin::configuring, admin::user-management, implemented-in::perl, made-of::data:html, role::documentation
+adduser-ng-doc-devel: admin::configuring, admin::user-management, devel::doc, made-of::data:html, made-of::data:pdf, role::documentation
+adduser-plugin-bkdinit: admin::configuring, admin::user-management, devel::rcs, implemented-in::perl, interface::commandline, role::plugin
+adduser-plugin-cvsaccess: admin::configuring, devel::rcs, implemented-in::perl, interface::commandline, role::plugin
+adduser-plugin-eximconf: admin::configuring, implemented-in::perl, interface::commandline, protocol::smtp, role::plugin
+adduser-plugin-eximconf4: admin::configuring, implemented-in::perl, interface::commandline, protocol::smtp, role::plugin
+adduser-plugin-notifyjabber: admin::configuring, implemented-in::perl, interface::commandline, protocol::jabber, role::plugin
+adduser-plugin-quota: admin::configuring, implemented-in::perl, interface::commandline, role::plugin
+adduser-ui-cdk: admin::configuring, admin::user-management, interface::text-mode, role::plugin, uitoolkit::ncurses
+adept: role::dummy, special::meta
+adept-common: made-of::data:icons, role::app-data
+adept-installer: admin::package-management, implemented-in::c++, interface::x11, role::program, scope::utility, suite::debian, uitoolkit::qt, works-with::software:package, x11::application
+adept-manager: admin::package-management, implemented-in::c++, interface::x11, role::program, scope::utility, suite::debian, suite::kde, uitoolkit::qt, works-with::software:package
+adept-notifier: admin::package-management, implemented-in::c++, interface::x11, role::plugin, scope::utility, suite::kde, uitoolkit::qt, use::monitor, works-with::software:package, x11::applet
+adept-updater: admin::package-management, implemented-in::c++, interface::x11, role::program, scope::utility, suite::debian, uitoolkit::qt, works-with::software:package, x11::application
+adesklets: devel::lang:python, implemented-in::python, interface::text-mode, interface::x11, role::program, scope::utility, uitoolkit::ncurses, x11::applet
+adjtimex: admin::kernel, interface::commandline, role::program, scope::utility, use::configuring, use::timekeeping
+admesh: field::mathematics, interface::commandline, role::program, scope::utility, works-with-format::vrml, works-with::3dmodel
+adonthell: game::adventure, role::program, uitoolkit::sdl, use::gameplaying
+adonthell-data: game::adventure, role::app-data, use::gameplaying
+adplay: interface::text-mode, role::program, sound::player, uitoolkit::ncurses, use::playing, works-with::audio
+adplug-utils: interface::commandline, role::program, scope::utility, use::organizing, works-with::audio
+adtool: admin::user-management, interface::commandline, protocol::ldap, role::program, scope::utility, use::configuring, works-with::db
+adun.app: field::biology, interface::x11, role::program, uitoolkit::gnustep, x11::application
+advancecomp: implemented-in::c, interface::commandline, role::program, scope::utility, use::compressing, works-with-format::png, works-with-format::zip, works-with::archive, works-with::file, works-with::image, works-with::image:raster
+advi: implemented-in::ocaml, interface::x11, role::program, scope::utility, use::viewing, works-with::text, x11::application
+advi-examples: devel::lang:ocaml, interface::x11, made-of::data:tex, role::app-data, use::viewing, works-with-format::tex, works-with::text, x11::application
+adzapper: interface::web, mail::filters, protocol::http, role::plugin, use::proxying, web::server, works-with-format::html, works-with::text
+aee: interface::x11, role::program, scope::application, use::editing, works-with::text, x11::application
+aegis: devel::ide, devel::rcs, devel::testing-qa, interface::commandline, role::program, scope::utility, use::checking, use::editing, use::synchronizing, works-with::software:source
+aegis-doc: devel::doc, devel::ide, devel::rcs, devel::testing-qa, made-of::data:postscript, made-of::data:tex, role::documentation
+aegis-tk: devel::ide, devel::rcs, devel::testing-qa, interface::x11, role::program, scope::application, uitoolkit::tk, use::checking, use::editing, use::synchronizing, works-with::software:source, x11::application
+aegis-virus-scanner: implemented-in::perl, interface::x11, role::program, security::antivirus, uitoolkit::gtk, use::checking, works-with-format::tar, works-with-format::zip, works-with::archive, works-with::file, x11::application
+aegis-web: devel::ide, devel::rcs, devel::testing-qa, interface::web, protocol::http, role::plugin, use::browsing, web::cgi
+aeromail: implemented-in::php, interface::web, mail::user-agent, network::client, protocol::imap, role::program, works-with::mail
+aespipe: interface::commandline, role::program, scope::utility, security::cryptography
+aewan: interface::text-mode, role::program, scope::application, uitoolkit::ncurses, use::editing, works-with::image
+aewm: interface::x11, role::program, uitoolkit::gtk, x11::application, x11::window-manager
+aewm++: implemented-in::c++, interface::x11, role::program, x11::application, x11::window-manager
+aewm++-goodies: implemented-in::c++, interface::x11, role::program, scope::utility, x11::application
+af: interface::text-mode, mail::user-agent, network::client, role::program, uitoolkit::ncurses, works-with::mail
+afbackup: admin::backup, hardware::storage, interface::commandline, interface::daemon, interface::x11, network::server, network::service, role::program, scope::utility, uitoolkit::tk, use::monitor, use::storing, works-with::file, x11::application
+afbackup-client: admin::backup, hardware::storage, interface::commandline, interface::x11, network::client, network::service, role::program, uitoolkit::tk, use::storing, works-with::file, x11::application
+afbackup-common: admin::backup, hardware::storage, implemented-in::tcl, interface::commandline, network::service, role::app-data, special::auto-inst-parts, use::storing, works-with::file
+affiche: implemented-in::objc, interface::x11, role::dummy, special::obsolete, suite::gnustep, use::editing, use::organizing, works-with::pim, x11::applet
+affix: admin::hardware, interface::commandline, role::program, scope::utility, use::driver
+affix-common: admin::hardware, role::app-data, special::auto-inst-parts, use::driver
+affix-headers: admin::hardware, devel::library, role::devel-lib, use::driver
+affix-source: admin::hardware, admin::kernel, implemented-in::c, role::source, use::driver
+afio: admin::backup, interface::commandline, role::program, scope::utility, use::compressing, use::storing, works-with::archive
+aft: implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, use::text-formatting, use::typesetting, works-with-format::html, works-with-format::tex, works-with::text
+afterstep: implemented-in::c, interface::x11, role::program, suite::gnustep, uitoolkit::gtk, uitoolkit::ncurses, x11::window-manager
+afuse: implemented-in::c, interface::shell, network::client, role::program
+agave: implemented-in::c++, role::program, uitoolkit::gtk
+agenda.app: implemented-in::objc, interface::x11, role::program, scope::application, suite::gnustep, uitoolkit::gnustep, use::organizing, use::timekeeping, works-with::pim, x11::application
+aget: filetransfer::http, interface::commandline, network::client, protocol::http, role::program, use::downloading
+aggregate: interface::commandline, network::configuration, network::firewall, network::routing, protocol::ip, role::program, scope::utility, use::converting
+agistudio: devel::ide, game::arcade, interface::x11, role::program, scope::utility, uitoolkit::qt, use::editing, x11::application
+agrep: implemented-in::c, interface::commandline, role::program, scope::utility, use::searching, works-with::text
+agsync: hardware::embedded, interface::commandline, role::program, scope::utility, use::synchronizing
+agsync-dev: devel::library, hardware::embedded, interface::commandline, role::devel-lib, use::synchronizing
+aide: interface::commandline, role::program, scope::utility, security::ids, security::integrity, use::monitor, works-with::file, works-with::mail
+aiksaurus: interface::commandline, role::program, scope::utility, uitoolkit::gtk, use::checking, works-with::dictionary
+aime: game::mud, interface::daemon, network::server, role::program, use::gameplaying
+aime-doc: game::mud, made-of::data:html, role::documentation, use::gameplaying
+aircrack: interface::commandline, network::scanner, role::dummy, scope::utility, security::cryptography, special::obsolete, use::scanning
+aircrack-ng: interface::commandline, network::scanner, role::program, scope::utility, security::authentication, security::cryptography, use::scanning
+airsnort: interface::x11, network::scanner, role::program, scope::utility, security::cryptography, uitoolkit::gtk, use::scanning, x11::application
+airstrike: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+airstrike-common: interface::x11, role::app-data, uitoolkit::sdl, use::gameplaying, x11::application
+aish: interface::commandline, role::program, scope::utility, use::converting, works-with::archive
+ajaxterm: implemented-in::python, interface::shell, interface::web, network::service, protocol::http, role::program, web::server
+akode: devel::library, interface::x11, role::plugin, sound::player, suite::kde, uitoolkit::qt, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+akode-dbg: devel::debugger, devel::library, field::mathematics, interface::x11, role::devel-lib, suite::kde, uitoolkit::qt, x11::application
+akregator: implemented-in::c++, interface::x11, network::client, protocol::http, role::program, scope::application, suite::kde, uitoolkit::qt, use::browsing, web::blog, works-with-format::xml, works-with-format::xml:rss, x11::application
+akregator-konq-plugin: interface::x11, uitoolkit::qt
+akregator-kontact-plugin: interface::x11, uitoolkit::qt
+alacarte: admin::configuring, implemented-in::python, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::configuring, x11::application
+aladin: admin::hardware, implemented-in::perl, interface::commandline, role::program, scope::utility, use::downloading, use::synchronizing
+alamin-client: implemented-in::perl, interface::commandline, network::client, network::service, role::program, use::checking, use::transmission
+alamin-doc: culture::spanish, made-of::data:html, network::service, role::documentation
+alamin-mysql: devel::lang:sql, implemented-in::perl, interface::commandline, network::service, role::program, scope::utility, use::converting, use::storing, works-with::db
+alamin-server: implemented-in::perl, interface::daemon, network::server, network::service, role::program, use::proxying, use::transmission
+alamin-smpp: implemented-in::perl, interface::commandline, network::client, network::service, role::program, use::synchronizing
+albert: devel::docsystem, devel::lang:lisp, implemented-in::lisp, interface::commandline, role::program, scope::utility, works-with-format::docbook, works-with::software:source, works-with::text
+album: implemented-in::perl, role::program, scope::application, use::browsing, use::organizing, works-with-format::html, works-with::image, works-with::image:raster, works-with::text
+albumshaper: interface::x11, role::program, scope::application, uitoolkit::qt, use::editing, use::organizing, works-with-format::jpg, works-with::image, works-with::image:raster, x11::application
+alcovebook-sgml: interface::commandline, role::program, scope::utility, use::converting, use::text-formatting, works-with-format::html, works-with-format::pdf, works-with-format::postscript, works-with-format::sgml, works-with::text
+alcovebook-sgml-doc: culture::french, role::documentation, use::converting, use::text-formatting, works-with-format::html, works-with-format::pdf, works-with-format::postscript, works-with-format::sgml, works-with::text
+aldo: implemented-in::c++, interface::text-mode, role::program, scope::utility, use::learning, works-with::audio
+ale: implemented-in::c++, interface::commandline, role::program, scope::utility, use::converting, works-with::image, works-with::image:raster
+aleph: devel::interpreter, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, works-with::software:source
+aleph-dev: devel::interpreter, devel::library, role::devel-lib, uitoolkit::ncurses, works-with::software:source
+aleph-doc: devel::doc, devel::interpreter, made-of::data:pdf, made-of::data:postscript, role::documentation, works-with::software:source
+aleph-emacs: implemented-in::lisp, interface::commandline, role::plugin, suite::emacs, use::editing, works-with::software:source
+alevt: hardware::video, interface::x11, network::client, role::program, use::browsing, use::playing, x11::application
+alevtd: hardware::video, interface::web, network::server, protocol::http, role::program, use::playing, web::server, works-with-format::html, works-with::text
+alex: devel::code-generator, devel::lang:haskell, implemented-in::haskell, interface::commandline, role::program, scope::utility, works-with::software:source
+alexandria: implemented-in::ruby, interface::x11, protocol::http, role::program, uitoolkit::gtk, use::downloading, use::organizing, use::searching, x11::application
+alicq: implemented-in::tcl, interface::x11, network::client, protocol::oscar, role::program, uitoolkit::tk, use::chatting, x11::application
+alien: devel::packaging, implemented-in::perl, interface::commandline, role::program, suite::debian, use::converting, works-with-format::tar, works-with::archive, works-with::software:package
+allegro-demo: devel::library, game::arcade, game::demos, interface::x11, role::program, use::gameplaying, x11::application
+allegro-demo-data: devel::library, game::arcade, game::demos, interface::x11, role::app-data, use::gameplaying, x11::application
+allegro-examples: devel::examples, devel::library, interface::commandline, interface::x11, role::program, sound::player, use::playing, works-with-format::wav, works-with::audio, x11::application
+alleyoop: devel::profiler, devel::testing-qa, implemented-in::c, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::checking, use::editing, works-with::software:running, x11::application
+alml: implemented-in::perl, interface::commandline, role::program, scope::utility, use::typesetting, works-with-format::html, works-with-format::pdf, works-with-format::postscript, works-with-format::sgml, works-with-format::tex, works-with::text
+alsa-base: admin::configuring, admin::hardware, admin::kernel, role::app-data, works-with::audio
+alsa-firmware-loaders: role::program, use::driver, works-with::audio
+alsa-headers: role::dummy, special::obsolete
+alsa-modules-2.4-386: admin::hardware, admin::kernel, role::dummy, role::metapackage, use::driver, works-with::audio
+alsa-modules-2.4-586tsc: admin::hardware, admin::kernel, role::dummy, role::metapackage, use::driver, works-with::audio
+alsa-modules-2.4-686: admin::hardware, admin::kernel, role::dummy, role::metapackage, use::driver, works-with::audio
+alsa-modules-2.4-686-smp: admin::hardware, admin::kernel, role::dummy, role::metapackage, use::driver, works-with::audio
+alsa-modules-2.4-k6: admin::hardware, admin::kernel, role::dummy, role::metapackage, use::driver, works-with::audio
+alsa-modules-2.4-k7: admin::hardware, admin::kernel, role::dummy, role::metapackage, use::driver, works-with::audio
+alsa-modules-2.4-k7-smp: admin::hardware, admin::kernel, use::driver, works-with::audio
+alsa-modules-2.4.27-2-386: admin::hardware, admin::kernel, role::shared-lib, use::driver, works-with::audio
+alsa-modules-2.4.27-2-586tsc: admin::hardware, admin::kernel, role::shared-lib, use::driver, works-with::audio
+alsa-modules-2.4.27-2-686: admin::hardware, admin::kernel, role::shared-lib, use::driver, works-with::audio
+alsa-modules-2.4.27-2-686-smp: admin::hardware, admin::kernel, role::shared-lib, use::driver, works-with::audio
+alsa-modules-2.4.27-2-k6: admin::hardware, admin::kernel, role::shared-lib, use::driver, works-with::audio
+alsa-modules-2.4.27-2-k7: admin::hardware, admin::kernel, role::shared-lib, use::driver, works-with::audio
+alsa-modules-2.4.27-2-k7-smp: admin::hardware, admin::kernel, role::shared-lib, use::driver, works-with::audio
+alsa-oss: admin::hardware, interface::commandline, role::program, scope::utility, use::converting, use::playing, works-with::audio
+alsa-source: admin::hardware, admin::kernel, implemented-in::c, role::source, use::driver, works-with::audio
+alsa-tools: field::arts, hardware::TODO, interface::commandline, role::program, scope::utility, works-with::audio
+alsa-tools-gui: field::arts, hardware::TODO, interface::x11, role::program, scope::utility, uitoolkit::gtk, works-with::audio, x11::application
+alsa-utils: admin::configuring, admin::hardware, admin::kernel, interface::text-mode, role::program, uitoolkit::ncurses, use::configuring, works-with::audio
+alsamixergui: admin::hardware, admin::kernel, implemented-in::c++, interface::x11, role::program, scope::application, sound::mixer, uitoolkit::fltk, works-with::audio, x11::application
+alsaplayer: sound::player, use::playing, works-with::audio
+alsaplayer-alsa: admin::hardware, role::plugin, sound::player, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::audio, x11::application
+alsaplayer-common: admin::hardware, role::app-data, sound::player, special::auto-inst-parts, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::audio, x11::application
+alsaplayer-daemon: admin::hardware, interface::daemon, role::plugin, sound::player, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::audio, x11::application
+alsaplayer-esd: admin::hardware, role::plugin, sound::player, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::audio, x11::application
+alsaplayer-gtk: admin::hardware, interface::x11, role::plugin, sound::player, uitoolkit::gtk, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::audio, x11::application
+alsaplayer-jack: admin::hardware, role::plugin, sound::player, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::audio, x11::application
+alsaplayer-nas: admin::hardware, admin::kernel, role::plugin, sound::player, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::audio, x11::application
+alsaplayer-oss: admin::hardware, admin::kernel, role::plugin, sound::player, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::audio, x11::application
+alsaplayer-text: admin::hardware, interface::commandline, role::plugin, sound::player, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::audio, x11::application
+alsaplayer-xosd: admin::hardware, interface::x11, role::plugin, sound::player, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::audio, x11::application
+altermime: implemented-in::c, interface::commandline, mail::filters, role::program, scope::utility, works-with::mail
+altgcc: devel::compiler, devel::lang:c, works-with::software:source
+am-utils: admin::filesystem, hardware::storage, interface::daemon, role::program
+am-utils-doc: role::documentation
+amanda-client: admin::backup, hardware::storage, interface::text-mode, network::client, network::service, role::program, uitoolkit::ncurses, use::storing, works-with-format::tar, works-with::archive
+amanda-common: admin::backup, hardware::storage, interface::commandline, interface::text-mode, network::service, role::app-data, special::auto-inst-parts, uitoolkit::ncurses, use::storing, works-with-format::tar, works-with::archive
+amanda-server: admin::backup, hardware::storage, interface::daemon, network::server, network::service, role::program, uitoolkit::ncurses, works-with-format::tar, works-with::archive
+amap-align: field::biology, implemented-in::c++, interface::commandline, role::program, scope::utility, use::special:todo, works-with-format::plaintext, works-with::special:todo
+amarok: interface::x11, role::program, scope::application, sound::player, suite::kde, uitoolkit::gtk, uitoolkit::qt, use::playing, works-with::audio, x11::application
+amarok-arts: devel::library, interface::x11, role::plugin, sound::player, suite::kde, uitoolkit::qt, use::playing, works-with::audio, x11::application
+amarok-engines: interface::x11, role::dummy, role::metapackage, sound::player, special::meta, suite::kde, uitoolkit::qt, use::playing, works-with::audio, x11::application
+amarok-gstreamer: interface::x11, role::plugin, sound::player, suite::kde, use::playing, works-with::audio, x11::application
+amarok-xine: interface::x11, role::plugin, sound::player, suite::kde, use::playing, works-with::audio, x11::application
+amaterus: interface::x11, role::program, uitoolkit::gtk, x11::window-manager
+amavis-ng: mail::filters, protocol::smtp, role::program, security::antivirus, works-with::mail
+amavis-ng-milter-helper: mail::filters, protocol::smtp, role::program, security::antivirus, works-with::mail
+amavis-stats: admin::accounting, implemented-in::perl, implemented-in::php, interface::commandline, role::program, scope::utility, security::antivirus, use::viewing, works-with::db
+amavisd-new: interface::commandline, mail::filters, protocol::smtp, role::program, scope::utility, security::antivirus, use::scanning, works-with::mail
+amavisd-new-milter: interface::commandline, mail::filters, protocol::smtp, role::program, scope::utility, security::antivirus, works-with::mail
+amaya: implemented-in::c++, interface::x11, network::client, protocol::http, role::program, scope::application, uitoolkit::wxwindows, use::browsing, use::editing, web::application, web::browser, works-with-format::html, works-with::text, x11::application
+amd: interface::daemon, role::dummy
+amd64-libs: admin::hardware, devel::library, role::shared-lib
+amd64-libs-dev: admin::hardware, devel::library, role::devel-lib
+ami: accessibility::input, culture::korean, interface::x11, network::server, role::program, suite::gnustep, uitoolkit::gtk, x11::applet, x11::application
+amiga-fdisk-cross: admin::filesystem, interface::commandline, role::program, scope::utility, use::checking
+amiwm: interface::x11, role::program, x11::application
+amoeba: game::demos, uitoolkit::gtk, use::gameplaying
+amoeba-data: game::demos, role::app-data, special::auto-inst-parts, use::gameplaying
+amor: game::toys, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+amphetamine: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+amphetamine-data: game::arcade, interface::x11, role::app-data, special::auto-inst-parts, uitoolkit::sdl, use::gameplaying, x11::application
+ample: implemented-in::c, interface::daemon, network::server, network::service, role::program, sound::player, use::playing, works-with-format::mp3, works-with::audio
+amrita: devel::lang:ruby, devel::library, role::dummy, role::metapackage, special::obsolete, works-with-format::html, works-with-format::xml, works-with::text
+ams: interface::x11, role::program, scope::application, sound::midi, uitoolkit::qt, use::playing, works-with::audio, x11::application
+amsn: implemented-in::tcl, interface::x11, network::client, protocol::msn-messenger, role::program, uitoolkit::tk, use::chatting, x11::application
+amsynth: interface::x11, role::program, scope::application, sound::midi, sound::mixer, uitoolkit::gtk, works-with::audio, x11::application
+amule: implemented-in::c, interface::x11, network::client, role::program, uitoolkit::wxwidgets, uitoolkit::wxwindows, use::downloading, use::transmission, works-with::file, x11::application
+amule-common: role::app-data, special::auto-inst-parts, use::downloading
+amule-daemon: implemented-in::c, interface::daemon, interface::web, network::server, protocol::http, role::program, scope::utility, use::downloading, use::transmission
+amule-utils: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::a
+amule-utils-gui: uitoolkit::wxwindows
+an: game::toys, interface::commandline, role::program, use::gameplaying, works-with::text
+anacron: admin::automation, interface::daemon, role::program, scope::utility
+analog: interface::commandline, protocol::http, role::program, scope::utility, security::log-analyzer, use::scanning, works-with-format::html, works-with::logfile, works-with::text
+anarchism: made-of::data:html, role::data
+and: interface::daemon, network::server, role::program, works-with::software:running
+angband: game::rpg, game::rpg:rogue, implemented-in::c, interface::text-mode, interface::x11, role::program, uitoolkit::ncurses, use::entertaining, use::gameplaying
+angband-doc: game::rpg:rogue, role::documentation, use::gameplaying
+angrydd: game::tetris, interface::x11, role::program, scope::application, uitoolkit::sdl, use::gameplaying, x11::application
+animal-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib, works-with::image
+animal0: devel::library, implemented-in::c, role::shared-lib, works-with::image
+animals: game::toys, interface::commandline, role::program, use::gameplaying
+anjuta: devel::ide, devel::lang:c, devel::lang:c++, implemented-in::c, interface::text-mode, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, uitoolkit::ncurses, use::editing
+anjuta-common: devel::ide, devel::lang:c, devel::lang:c++, interface::text-mode, interface::x11, role::app-data, suite::gnome, uitoolkit::gtk, uitoolkit::ncurses, x11::application
+annodex-tools: interface::commandline, role::program, scope::utility, use::converting, works-with::audio, works-with::video
+annoyance-filter: interface::commandline, mail::filters, role::program, scope::utility, use::scanning, works-with::db, works-with::mail
+annoyance-filter-doc: interface::commandline, made-of::data:pdf, mail::filters, role::documentation, works-with::db, works-with::mail
+anon-proxy: implemented-in::c++, interface::daemon, protocol::http, role::program, security::cryptography, use::proxying
+ant: devel::buildtools, implemented-in::java, implemented-in::perl, implemented-in::shell, role::program, scope::utility, works-with-format::xml, works-with::software:source
+ant-doc: devel::buildtools, role::documentation
+ant-optional: devel::buildtools, implemented-in::java, role::app-data, scope::utility
+ant-phone: interface::x11, protocol::voip, role::program, scope::utility, uitoolkit::gtk, x11::application
+anteater: implemented-in::c++, interface::commandline, role::program, scope::utility, security::log-analyzer, works-with::logfile, works-with::mail
+antennavis: hardware::hamradio, interface::x11, role::program, scope::utility, use::viewing, x11::application
+anthy: accessibility::input, culture::japanese, interface::commandline, role::program, scope::utility, works-with::dictionary
+anthy-el: accessibility::input, culture::japanese, implemented-in::lisp, interface::commandline, role::plugin, suite::emacs, works-with::dictionary
+antigravitaattori: game::arcade, game::sport:racing, interface::3d, junior::games-gl, role::program, use::gameplaying, x11::application
+antiword: interface::commandline, role::program, scope::utility, use::converting, works-with-format::plaintext, works-with-format::postscript, works-with::dtp, works-with::text
+antlr: devel::code-generator, devel::lang:c++, devel::lang:java, implemented-in::java, interface::commandline, role::program, scope::utility, use::converting
+anymeal: role::program, uitoolkit::qt
+ao40tlmview: hardware::hamradio, interface::text-mode, role::program, scope::utility, uitoolkit::gtk, uitoolkit::ncurses, use::viewing, x11::application
+aoetools: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::a
+aolserver: interface::daemon, network::server, protocol::http, role::program, web::server
+aolserver-dev: interface::daemon, network::server, protocol::http, role::program, web::server
+aolserver-doc: interface::daemon, network::server, protocol::http, role::documentation, role::program, web::server
+aolserver4: filetransfer::http, implemented-in::tcl, interface::daemon, network::server, network::service, role::program, web::cms, web::server, works-with-format::html, works-with::text
+aolserver4-dev: devel::lang:tcl, devel::library, filetransfer::http, implemented-in::tcl, interface::daemon, network::service, protocol::http, role::devel-lib, web::cms, web::server, works-with-format::html, works-with::text
+aolserver4-doc: devel::doc, devel::lang:c, devel::lang:tcl, filetransfer::http, interface::daemon, made-of::data:html, network::service, protocol::http, role::documentation, web::cms, web::server, works-with-format::html, works-with::text
+aolserver4-nscache: devel::lang:c, devel::lang:tcl, filetransfer::http, interface::daemon, network::service, protocol::http, role::shared-lib, use::storing, web::cms, web::server, works-with-format::html, works-with::text
+aolserver4-nsimap: devel::lang:tcl, filetransfer::http, interface::daemon, mail::imap, network::service, protocol::http, protocol::imap, role::shared-lib, web::cms, web::server, works-with-format::html, works-with::text
+aolserver4-nsldap: devel::lang:tcl, filetransfer::http, interface::daemon, network::service, protocol::http, protocol::ldap, role::shared-lib, web::cms, web::server, works-with-format::html, works-with::db, works-with::text
+aolserver4-nsopenssl: devel::lang:tcl, filetransfer::http, interface::daemon, network::service, protocol::http, protocol::ssl, role::shared-lib, web::cms, web::server, works-with-format::html, works-with::text
+aolserver4-nspostgres: devel::lang:sql, devel::lang:tcl, filetransfer::http, interface::daemon, network::service, protocol::http, role::shared-lib, web::cms, web::server, works-with-format::html, works-with::db, works-with::text
+aolserver4-nssha1: devel::lang:tcl, filetransfer::http, interface::daemon, network::service, protocol::http, role::shared-lib, security::cryptography, web::cms, web::server, works-with-format::html, works-with::text
+aolserver4-nsxml: devel::lang:tcl, filetransfer::http, interface::daemon, network::service, protocol::http, role::shared-lib, web::cms, web::server, works-with-format::html, works-with-format::xml, works-with::text
+ap-utils: protocol::snmp, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::a, uitoolkit::ncurses
+apache: filetransfer::http, implemented-in::c, interface::daemon, network::server, network::service, protocol::http, protocol::ipv6, role::program, suite::apache, web::server, works-with-format::html, works-with::text
+apache-common: filetransfer::http, implemented-in::c, interface::daemon, made-of::data:icons, network::service, protocol::http, protocol::ipv6, role::app-data, special::auto-inst-parts, suite::apache, web::server, works-with-format::html, works-with::text
+apache-dbg: devel::debugger, filetransfer::http, implemented-in::c, interface::daemon, network::service, protocol::http, protocol::ipv6, role::devel-lib, suite::apache, use::checking, web::server
+apache-dev: devel::lang:c, devel::library, filetransfer::http, implemented-in::c, interface::daemon, network::service, protocol::http, protocol::ipv6, role::devel-lib, suite::apache, web::server, works-with-format::html, works-with::text
+apache-doc: culture::french, culture::japanese, filetransfer::http, interface::daemon, made-of::data:html, network::service, protocol::http, protocol::ipv6, role::documentation, suite::apache, web::server, works-with-format::html, works-with::text
+apache-perl: devel::lang:perl, filetransfer::http, implemented-in::c, interface::daemon, network::server, network::service, protocol::http, protocol::ipv6, role::program, suite::apache, web::server, works-with-format::html, works-with::text
+apache-ssl: filetransfer::http, implemented-in::c, interface::daemon, network::server, network::service, protocol::http, protocol::ipv6, protocol::ssl, role::program, security::cryptography, suite::apache, web::server, works-with-format::html, works-with::text
+apache-utils: filetransfer::http, implemented-in::c, interface::commandline, network::server, network::service, protocol::http, protocol::ipv6, role::program, suite::apache, web::server, works-with-format::html, works-with::text
+apache2: filetransfer::http, implemented-in::c, interface::daemon, network::server, network::service, protocol::http, protocol::ipv6, role::program, suite::apache, web::server, works-with-format::html, works-with::text
+apache2-common: filetransfer::http, implemented-in::c, interface::daemon, network::server, network::service, protocol::http, protocol::ipv6, role::program, special::auto-inst-parts, suite::apache, web::server, works-with-format::html, works-with::text
+apache2-doc: filetransfer::http, interface::daemon, made-of::data:html, network::service, protocol::http, protocol::ipv6, role::documentation, suite::apache, web::server, works-with-format::html, works-with::text
+apache2-mpm-event: filetransfer::http, implemented-in::c, interface::daemon, network::server, network::service, protocol::http, protocol::ipv6, role::program, suite::apache, web::server, works-with-format::html, works-with::text
+apache2-mpm-itk: filetransfer::http, implemented-in::c, interface::daemon, network::server, network::service, protocol::http, protocol::ipv6, role::program, suite::apache, web::server, works-with-format::html, works-with::text
+apache2-mpm-perchild: filetransfer::http, implemented-in::c, interface::daemon, network::server, network::service, protocol::http, protocol::ipv6, role::dummy, special::obsolete, suite::apache, web::server, works-with-format::html, works-with::text
+apache2-mpm-prefork: filetransfer::http, implemented-in::c, interface::daemon, network::server, network::service, protocol::http, protocol::ipv6, role::program, suite::apache, web::server, works-with-format::html, works-with::text
+apache2-mpm-threadpool: filetransfer::http, implemented-in::c, interface::daemon, network::server, network::service, protocol::http, protocol::ipv6, role::program, suite::apache, web::server, works-with-format::html, works-with::text
+apache2-mpm-worker: filetransfer::http, implemented-in::c, interface::daemon, network::server, network::service, protocol::http, protocol::ipv6, role::program, suite::apache, web::server, works-with-format::html, works-with::text
+apache2-prefork-dev: devel::library, filetransfer::http, implemented-in::c, interface::daemon, network::service, protocol::http, protocol::ipv6, role::devel-lib, suite::apache, web::server, works-with-format::html, works-with::text
+apache2-src: role::source, suite::apache, web::server
+apache2-threaded-dev: devel::library, filetransfer::http, implemented-in::c, interface::daemon, network::service, protocol::http, protocol::ipv6, role::devel-lib, suite::apache, web::server
+apache2-utils: admin::configuring, filetransfer::http, implemented-in::c, implemented-in::perl, interface::commandline, network::service, protocol::http, protocol::ipv6, role::program, scope::utility, security::authentication, suite::apache, works-with-format::html, works-with::text
+apache2.2-common: filetransfer::http, implemented-in::c, interface::daemon, network::server, protocol::http, protocol::ipv6, protocol::ssl, role::app-data, suite::apache, web::cgi, web::server, works-with-format::html
+apachetop: admin::monitoring, implemented-in::c, interface::text-mode, role::program, scope::utility, suite::apache, uitoolkit::ncurses, use::monitor, works-with::logfile, works-with::software:running
+apbs: field::chemistry, implemented-in::c, interface::commandline, role::program, scope::utility
+apcalc: field::mathematics, interface::shell, interface::text-mode, role::program, scope::utility
+apcalc-common: field::mathematics, interface::commandline, interface::text-mode, role::app-data, special::auto-inst-parts
+apcalc-dev: field::mathematics, interface::text-mode, role::devel-lib, uitoolkit::ncurses
+apcd: admin::logging, admin::power-management, hardware::power:ups, interface::daemon, network::client, network::server, role::program, use::monitor, works-with::logfile
+apcupsd: admin::power-management, hardware::power, hardware::power:ups, interface::daemon, interface::text-mode, network::server, role::program, scope::utility, uitoolkit::ncurses, use::monitor
+apcupsd-cgi: admin::power-management, hardware::power, hardware::power:ups, interface::web, network::server, role::program, use::monitor, web::cgi
+apcupsd-doc: admin::power-management, hardware::power, hardware::power:ups, interface::daemon, made-of::data:html, role::documentation, use::monitor
+apel: devel::library, implemented-in::lisp, interface::commandline, role::plugin, suite::emacs
+apertium-es-ca: culture::catalan
+apertium-es-pt: culture::portuguese, culture::spanish, field::linguistics, role::app-data
+apertium-fr-ca: culture::catalan, culture::french, field::linguistics, role::app-data
+apg: admin::user-management, interface::commandline, role::program, scope::utility, security::cryptography
+aplus-fsf: devel::interpreter, devel::runtime, interface::commandline, role::program, scope::utility, works-with::software:source
+aplus-fsf-dev: devel::interpreter, devel::library, devel::runtime, interface::commandline, role::devel-lib, works-with::software:source
+aplus-fsf-doc: devel::doc, devel::interpreter, devel::runtime, interface::commandline, role::documentation, works-with::software:source
+aplus-fsf-el: devel::interpreter, devel::runtime, implemented-in::lisp, interface::commandline, role::plugin, suite::emacs, use::editing
+apmd: admin::power-management, hardware::laptop, hardware::power, hardware::power:apm, interface::daemon, network::server, role::program, use::configuring
+apollon: implemented-in::c, interface::x11, network::client, network::service, role::program, uitoolkit::qt, use::downloading, use::searching, x11::applet
+apoo: devel::lang:python, devel::machinecode, implemented-in::python, interface::x11, role::metapackage, role::program, uitoolkit::gtk, use::learning, x11::application
+app-install-data: role::app-data, special::auto-inst-parts
+apple2: hardware::emulation
+approx: admin::package-management, implemented-in::ocaml, interface::daemon, network::server, protocol::http, role::program, suite::debian, use::downloading, use::proxying
+aprsd: hardware::hamradio, interface::daemon, network::server, network::service, protocol::http, role::program, use::proxying, use::routing
+aprsdigi: hardware::hamradio, interface::daemon, network::server, role::program, use::proxying, use::routing
+apsfilter: devel::library, hardware::printer, interface::commandline, role::program, scope::utility, use::converting, use::printing, works-with-format::postscript, works-with::text
+apt: admin::package-management, filetransfer::ftp, filetransfer::http, hardware::storage, hardware::storage:cd, interface::commandline, network::client, protocol::ftp, protocol::http, protocol::ipv6, role::program, suite::debian, use::downloading, use::searching, works-with::software:package
+apt-build: admin::package-management, devel::debian, devel::packaging, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, works-with::software:package, works-with::software:source
+apt-cacher: admin::package-management, implemented-in::perl, interface::daemon, network::server, network::service, protocol::http, role::program, suite::debian, use::downloading, use::proxying, use::storing, works-with::software:package, works-with::software:source
+apt-cross: devel::buildtools, devel::debian, devel::packaging, implemented-in::perl, interface::commandline, role::program, scope::utility, special::completely-tagged, suite::debian, works-with::software:package
+apt-doc: admin::package-management, filetransfer::ftp, filetransfer::http, hardware::storage, hardware::storage:cd, interface::commandline, made-of::data:html, protocol::ftp, protocol::http, protocol::ipv6, role::documentation, suite::debian, use::downloading, use::searching, works-with::software:package
+apt-dpkg-ref: admin::package-management, interface::commandline, made-of::data:html, made-of::data:pdf, made-of::data:postscript, made-of::data:tex, role::documentation, suite::debian, use::configuring, use::scanning, works-with::software:package
+apt-file: implemented-in::perl, interface::commandline, role::program, suite::debian, use::searching, works-with::file, works-with::software:package
+apt-howto: admin::package-management, filetransfer::ftp, filetransfer::http, interface::commandline, made-of::data:html, made-of::data:pdf, made-of::data:postscript, protocol::ftp, protocol::http, protocol::ipv6, role::dummy, special::meta, suite::debian, use::downloading, use::searching, works-with::software:package
+apt-howto-ca: admin::package-management, culture::catalan, filetransfer::http, interface::commandline, made-of::data:html, made-of::data:pdf, made-of::data:postscript, protocol::ipv6, role::documentation, suite::debian, use::downloading, use::searching, works-with::software:package
+apt-howto-common: admin::package-management, filetransfer::http, made-of::data:html, made-of::data:pdf, made-of::data:postscript, protocol::ipv6, role::documentation, role::metapackage, special::auto-inst-parts, suite::debian, use::downloading, use::searching, works-with::software:package
+apt-howto-de: admin::package-management, culture::german, filetransfer::http, made-of::data:html, made-of::data:pdf, made-of::data:postscript, protocol::ipv6, role::documentation, suite::debian, use::downloading, use::searching, works-with::software:package
+apt-howto-el: admin::package-management, culture::greek, filetransfer::http, made-of::data:html, made-of::data:pdf, made-of::data:postscript, protocol::ipv6, role::documentation, suite::debian, use::downloading, use::searching, works-with::software:package
+apt-howto-en: admin::package-management, culture::TODO, filetransfer::http, made-of::data:html, made-of::data:pdf, made-of::data:postscript, protocol::ipv6, role::documentation, suite::debian, use::downloading, use::searching, works-with::software:package
+apt-howto-es: admin::package-management, culture::spanish, filetransfer::http, made-of::data:html, made-of::data:pdf, made-of::data:postscript, protocol::ipv6, role::documentation, suite::debian, use::downloading, use::searching, works-with::software:package
+apt-howto-fr: admin::package-management, culture::french, filetransfer::http, made-of::data:html, made-of::data:pdf, made-of::data:postscript, protocol::ipv6, role::documentation, suite::debian, use::downloading, use::searching, works-with::software:package
+apt-howto-it: admin::package-management, culture::italian, filetransfer::http, made-of::data:html, made-of::data:pdf, made-of::data:postscript, protocol::ipv6, role::documentation, suite::debian, use::downloading, use::searching, works-with::software:package
+apt-howto-ja: admin::package-management, culture::japanese, filetransfer::ftp, filetransfer::http, interface::commandline, made-of::data:html, made-of::data:pdf, made-of::data:postscript, protocol::ftp, protocol::http, protocol::ipv6, role::documentation, suite::debian, use::downloading, use::searching, works-with::software:package
+apt-howto-ko: admin::package-management, culture::korean, filetransfer::http, made-of::data:html, made-of::data:pdf, made-of::data:postscript, protocol::ipv6, role::documentation, suite::debian, use::downloading, use::searching, works-with::software:package
+apt-howto-pl: admin::package-management, culture::polish, filetransfer::http, interface::commandline, made-of::data:html, made-of::data:pdf, made-of::data:postscript, protocol::ftp, protocol::ipv6, role::documentation, suite::debian, use::downloading, use::searching, works-with::software:package
+apt-howto-pt-br: admin::package-management, culture::brazilian, filetransfer::http, made-of::data:html, made-of::data:pdf, made-of::data:postscript, protocol::ipv6, role::documentation, suite::debian, use::downloading, use::searching, works-with::software:package
+apt-howto-ru: admin::package-management, culture::russian, filetransfer::http, made-of::data:html, made-of::data:pdf, made-of::data:postscript, protocol::ftp, protocol::ipv6, role::documentation, suite::debian, use::downloading, use::searching, works-with::software:package
+apt-howto-tr: admin::package-management, culture::turkish, filetransfer::http, interface::commandline, made-of::data:html, made-of::data:pdf, made-of::data:postscript, protocol::ftp, protocol::ipv6, role::documentation, suite::debian, use::downloading, use::searching, works-with::software:package
+apt-howto-uk: admin::package-management, culture::ukrainian, made-of::data:html, made-of::data:pdf, role::documentation, suite::debian
+apt-listbugs: admin::package-management, implemented-in::ruby, interface::commandline, protocol::http, role::program, scope::utility, suite::debian, works-with::bugs, works-with::software:package
+apt-listchanges: admin::package-management, implemented-in::python, interface::commandline, role::program, scope::utility, suite::debian, use::viewing, works-with::logfile, works-with::software:package
+apt-mirror: interface::commandline, network::client, protocol::ftp, protocol::http, role::program, scope::utility, suite::debian, use::downloading, use::synchronizing, works-with::file, works-with::software:package
+apt-move: hardware::storage, implemented-in::shell, interface::commandline, role::program, scope::utility, suite::debian, use::organizing, works-with::software:package
+apt-proxy: admin::package-management, filetransfer::ftp, filetransfer::http, interface::daemon, network::server, network::service, protocol::ftp, protocol::http, role::program, suite::debian, use::downloading, use::proxying, works-with::software:package
+apt-rdepends: devel::packaging, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, use::viewing, works-with::software:package
+apt-rpm-repository: admin::package-management, interface::commandline, role::program, scope::utility, works-with::software:package
+apt-show-source: devel::packaging, interface::commandline, role::program, scope::utility, suite::debian
+apt-show-versions: admin::package-management, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, use::checking, works-with::software:package
+apt-spy: admin::package-management, filetransfer::ftp, filetransfer::http, interface::commandline, network::scanner, protocol::ftp, protocol::http, role::program, scope::utility, suite::debian, use::downloading, use::scanning
+apt-src: admin::package-management, devel::debian, devel::packaging, filetransfer::ftp, filetransfer::http, hardware::storage, hardware::storage:cd, interface::commandline, protocol::ftp, protocol::http, protocol::ipv6, role::program, scope::utility, suite::debian, use::downloading, works-with::software:source
+apt-utils: admin::package-management, interface::commandline, role::program, scope::utility, suite::debian, use::configuring, use::organizing, works-with::software:package
+apt-watch: admin::package-management, filetransfer::http, interface::x11, protocol::http, role::dummy, scope::utility, special::obsolete, suite::debian, suite::gnome, uitoolkit::gtk, use::monitor, works-with::software:package, x11::applet
+apt-watch-gnome: admin::package-management, filetransfer::http, interface::x11, protocol::http, role::program, scope::utility, suite::debian, suite::gnome, uitoolkit::gtk, works-with::software:package, x11::applet
+apt-zip: admin::package-management, filetransfer::ftp, filetransfer::http, hardware::storage, protocol::ftp, protocol::http, protocol::ipv6, role::plugin, suite::debian, use::downloading, works-with::software:package
+aptconf: admin::package-management, implemented-in::python, interface::commandline, role::program, scope::utility, suite::debian, use::configuring
+apticron: admin::package-management, interface::daemon, network::server, role::program, suite::debian, use::monitor, works-with::mail
+aptitude: admin::configuring, admin::package-management, implemented-in::c++, interface::text-mode, role::program, scope::application, suite::debian, uitoolkit::ncurses, use::browsing, use::configuring, works-with::software:package
+aptitude-doc-cs: admin::package-management, culture::czech, interface::text-mode, made-of::data:html, role::documentation, suite::debian, uitoolkit::ncurses, use::browsing, use::configuring, works-with::software:package
+aptitude-doc-en: admin::package-management, culture::TODO, interface::text-mode, made-of::data:html, role::documentation, suite::debian, uitoolkit::ncurses, use::browsing, use::configuring, works-with::software:package
+aptitude-doc-fi: admin::package-management, culture::finnish, made-of::data:html, role::documentation, suite::debian
+aptitude-doc-fr: admin::package-management, culture::french, interface::text-mode, made-of::data:html, role::documentation, suite::debian, uitoolkit::ncurses, use::browsing, use::configuring, works-with::software:package
+aptsh: admin::package-management, filetransfer::http, interface::shell, role::program, scope::utility, suite::debian, use::downloading, works-with::software:package
+apwal: interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, x11::applet
+aqbanking-tool: field::finance, interface::commandline, office::finance, role::program, works-with::pim
+aqbanking16-qt-wizard: field::finance, interface::x11, office::finance, role::program, uitoolkit::qt, works-with::pim
+aqmoney: field::finance, role::program, scope::application
+aqsis: interface::commandline, role::program, special::not-yet-tagged, special::not-yet-tagged::a, works-with::3dmodel, x11::application
+aqsis-libs: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::a, uitoolkit::TODO, x11::application
+aqsis-libs-dev: devel::library, role::devel-lib
+ara: implemented-in::ocaml, interface::commandline, role::program, scope::application, suite::debian, use::searching, works-with::software:package
+ara-byte: implemented-in::ocaml, interface::commandline, role::program, scope::application, suite::debian, use::searching, works-with::software:package
+arabtex: culture::arabic, culture::hebrew, interface::commandline, made-of::data:font, role::app-data, works-with-format::tex, works-with::text
+araneida: devel::lang:lisp, implemented-in::lisp, interface::daemon, network::server, protocol::http, role::program, scope::utility, web::server, works-with-format::html
+aranym: hardware::emulation, interface::x11, role::program, scope::application, uitoolkit::sdl, x11::application
+arb: field::biology, implemented-in::c++, implemented-in::perl, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::a, x11::application
+arb-common: field::biology, special::auto-inst-parts, special::not-yet-tagged, special::not-yet-tagged::a
+arb-doc: field::biology, made-of::data:html, role::documentation, special::not-yet-tagged, special::not-yet-tagged::a
+arbortext-catalog: devel::lang:java
+arc: interface::commandline, role::program, scope::utility, use::compressing, use::storing, works-with::archive
+arch-buildpackage: devel::buildtools, devel::debian, devel::packaging, devel::rcs, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, works-with::software:source
+arch2darcs: devel::rcs, implemented-in::haskell, interface::commandline, role::program, scope::utility, use::converting
+archivemail: admin::backup, implemented-in::python, interface::commandline, role::program, scope::utility, use::compressing, use::storing, works-with::mail
+archmbox: admin::backup, implemented-in::perl, interface::commandline, role::program, scope::utility, use::compressing, use::storing, works-with::mail
+archway: devel::rcs, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::synchronizing, x11::application
+archzoom: devel::rcs, implemented-in::perl, interface::x11, network::client, protocol::http, role::program, x11::application
+ardour-doc: field::arts, role::documentation, sound::midi, sound::mixer, use::editing
+ardour-gtk: field::arts, interface::x11, role::program, sound::midi, sound::mixer, sound::recorder, uitoolkit::gtk, use::editing, works-with::audio, x11::application
+ardour-gtk-dbg: special::not-yet-tagged, special::not-yet-tagged::a
+ardour-gtk-i686: field::arts, interface::x11, role::program, sound::midi, sound::mixer, sound::recorder, uitoolkit::gtk, use::editing, works-with::audio, x11::application
+ardour-session-exchange: interface::commandline, role::program, works-with::audio
+argouml: devel::lang:java, implemented-in::java, use::editing
+argouml-doc: role::documentation
+argus-client: admin::accounting, interface::text-mode, network::client, network::scanner, role::program, uitoolkit::ncurses, use::monitor, works-with::logfile
+argus-server: admin::accounting, interface::daemon, network::scanner, network::server, role::program, use::monitor, works-with::logfile
+aria: filetransfer::ftp, filetransfer::http, interface::x11, protocol::ftp, protocol::http, role::program, scope::utility, uitoolkit::gtk, use::downloading, works-with::file, x11::application
+aria2: filetransfer::ftp, filetransfer::http, interface::commandline, network::client, protocol::bittorrent, protocol::ftp, protocol::http, role::program, scope::utility, use::downloading, works-with::file
+aribas: devel::interpreter, field::mathematics, implemented-in::lisp, interface::commandline, role::program, scope::utility, suite::emacs
+arj: implemented-in::c, interface::commandline, role::program, scope::utility, use::compressing, use::storing, works-with::archive
+ark: interface::x11, role::program, scope::application, scope::utility, suite::kde, uitoolkit::qt, use::compressing, use::storing, works-with-format::tar, works-with-format::zip, works-with::archive, x11::application
+arkhart: devel::lang:lua, game::mud, implemented-in::c++, interface::3d, role::app-data, use::gameplaying
+arkrpg: devel::lang:lua, game::mud, implemented-in::c++, interface::3d, role::program, scope::application, uitoolkit::sdl, use::gameplaying, x11::application
+arla: admin::filesystem, interface::daemon, interface::text-mode, network::client, network::service, protocol::kerberos, role::program, scope::utility, uitoolkit::athena, uitoolkit::ncurses, works-with::file
+arla-modules-source: admin::filesystem, admin::kernel, implemented-in::c, network::service, protocol::kerberos, role::source, uitoolkit::ncurses
+armagetron: game::arcade, interface::3d, junior::games-gl, network::client, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+armagetron-common: game::arcade, interface::3d, interface::commandline, made-of::data:html, role::app-data, role::documentation, special::auto-inst-parts, uitoolkit::sdl, use::gameplaying, x11::application
+armagetron-server: game::arcade, interface::3d, interface::commandline, interface::daemon, network::server, role::program, use::gameplaying, x11::application
+arno-iptables-firewall: admin::monitoring, implemented-in::shell, network::firewall, role::TODO, security::firewall, use::filtering
+arpalert: admin::monitoring, interface::daemon, protocol::ethernet, role::program, scope::utility
+arpd: interface::daemon
+arping: admin::monitoring, interface::commandline, network::scanner, protocol::ip, role::program, scope::utility
+arptables: interface::commandline, network::firewall, network::service, role::program, scope::utility, use::monitor
+arpwatch: admin::monitoring, interface::daemon, mail::smtp, network::scanner, network::server, role::program, use::monitor
+array-util: admin::hardware, hardware::storage, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::monitor, use::viewing, x11::application
+arrayprobe: admin::hardware, hardware::storage, interface::commandline, role::program, scope::utility, use::monitor
+arson: hardware::storage, hardware::storage:cd, interface::x11, role::program, suite::kde, uitoolkit::qt, use::storing, works-with-format::iso9660, works-with-format::mp3, works-with-format::oggvorbis, works-with::archive, works-with::audio, works-with::video, x11::application
+artist: field::arts, hardware::input, hardware::input:mouse, implemented-in::lisp, role::plugin, suite::emacs, use::editing, works-with::image, works-with::image:vector
+arts: role::dummy, role::metapackage, special::meta, suite::kde, works-with::audio
+arts-dbg: devel::library, role::devel-lib, suite::kde, works-with::audio
+artsbuilder: interface::x11, role::program, sound::mixer, suite::kde, uitoolkit::qt, use::editing, works-with::audio, x11::application
+artwiz-cursor: hardware::input, hardware::input:mouse, interface::x11, made-of::data:font, role::app-data, x11::theme
+asc: game::strategy, role::program, special::not-yet-tagged, special::not-yet-tagged::a, uitoolkit::ncurses, uitoolkit::sdl, use::gameplaying
+asc-data: role::app-data, special::not-yet-tagged, special::not-yet-tagged::a
+asc-music: game::strategy, role::app-data
+ascd: hardware::storage, hardware::storage:cd, interface::x11, role::program, scope::utility, sound::mixer, sound::player, suite::gnustep, use::playing, works-with::audio, x11::applet
+ascdc: hardware::storage, hardware::storage:cd, interface::x11, role::program, scope::utility, suite::gnustep, x11::applet
+ascii: implemented-in::c, interface::commandline, role::program, scope::utility, use::converting, works-with::text
+asciidoc: devel::docsystem, implemented-in::python, interface::commandline, role::program, use::converting, use::text-formatting, works-with::text
+asciijump: game::arcade, implemented-in::c, interface::text-mode, role::program, use::gameplaying
+asclassic: interface::x11, role::program, suite::gnustep, x11::window-manager
+asclock: interface::x11, role::program, scope::utility, suite::gnustep, use::timekeeping, x11::applet
+asclock-themes: interface::x11, role::app-data, scope::utility, suite::gnustep, use::timekeeping, x11::application, x11::theme
+ascpu: interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+ash: interface::shell, role::dummy, special::obsolete, use::login
+asis-programs: devel::examples, devel::lang:ada, implemented-in::ada, interface::commandline, role::program, scope::utility
+asiya24-vfont: culture::japanese, made-of::data:font, role::app-data, works-with::font
+asmail: interface::x11, mail::notification, role::program, scope::utility, suite::gnustep, use::monitor, works-with::mail, x11::applet
+asmem: interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+asmix: interface::x11, role::program, scope::utility, sound::mixer, suite::gnustep, works-with::audio, x11::applet
+asmixer: interface::x11, role::program, scope::utility, sound::mixer, suite::gnustep, works-with::audio, x11::applet
+asmon: interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+asmounter: admin::filesystem, interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+asn1-mode: devel::code-generator, implemented-in::lisp, role::plugin, suite::emacs, use::editing
+asn1c: devel::compiler, devel::lang:c, interface::commandline, scope::utility
+asp: interface::commandline, network::client, network::server, protocol::ip, role::program, use::searching
+asp.net-examples: devel::examples, role::app-data, web::application
+asp.net2-examples: devel::ecma-cli, devel::examples
+aspectc++: devel::compiler, devel::lang:c++, implemented-in::c++, interface::commandline, role::program
+aspectj: devel::lang:java
+aspectj-anttasks: devel::lang:java
+aspectj-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::a
+aspell: role::program, suite::gnu, uitoolkit::ncurses, use::checking, works-with::dictionary, works-with::text
+aspell-ar: culture::arabic, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-bg: culture::bulgarian, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-bin: implemented-in::c, implemented-in::perl, interface::commandline, use::checking
+aspell-bn: culture::bengali, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-br: culture::TODO, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-ca: culture::catalan, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-cs: culture::czech, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-cy: culture::welsh, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-da: culture::danish, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-de: culture::german, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-de-alt: culture::german, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-doc: devel::doc, made-of::data:info, role::documentation, suite::gnu, use::checking
+aspell-el: culture::greek, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-en: culture::TODO, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-eo: culture::esperanto, made-of::data:dictionary, role::app-data, suite::gnu
+aspell-es: culture::spanish, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-et: culture::estonian, made-of::data:dictionary, role::app-data, suite::gnu
+aspell-fa: culture::farsi, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-fi: culture::finnish, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-fo: culture::faroese, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-fr: culture::french, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-ga: culture::irish, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-gl-minimos: culture::TODO, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-gu: culture::TODO, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-he: culture::hebrew, made-of::data:dictionary, role::app-data, suite::gnu
+aspell-hi: culture::hindi, made-of::data:dictionary, role::app-data, suite::gnu
+aspell-hr: culture::croatian, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-hu: culture::hungarian, made-of::data:dictionary, role::app-data, suite::gnu
+aspell-is: culture::icelandic, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-it: culture::italian, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-ku: culture::TODO, made-of::data:dictionary, role::app-data, suite::gnu
+aspell-lt: culture::TODO, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-mr: culture::TODO, made-of::data:dictionary, role::app-data, suite::gnu
+aspell-nl: culture::dutch, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-no: culture::norwegian, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-or: culture::TODO, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-pa: culture::punjabi, made-of::data:dictionary, role::app-data, suite::gnu
+aspell-pl: culture::polish, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-pt: culture::portuguese, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-pt-br: culture::brazilian, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-pt-common: culture::portuguese, made-of::data:dictionary, role::app-data, use::checking
+aspell-pt-pt: culture::portuguese, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-ro: culture::romanian, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-ru: culture::russian, made-of::data:dictionary, role::app-data, suite::gnu
+aspell-sk: culture::slovak, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-sl: culture::TODO, culture::slovenian, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-sv: culture::swedish, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-ta: culture::tamil, made-of::data:dictionary, role::app-data, suite::gnu
+aspell-te: culture::TODO, made-of::data:dictionary, role::app-data, suite::gnu
+aspell-tl: culture::TODO, made-of::data:dictionary, role::app-data, suite::gnu, use::checking
+aspell-uk: culture::ukrainian, made-of::data:dictionary, role::app-data, suite::gnu
+aspell-ukr: culture::ukrainian, made-of::data:dictionary, role::dummy, special::obsolete, suite::gnu, use::checking
+aspell-uz: culture::uzbek, made-of::data:dictionary, role::app-data, suite::gnu
+aspseek: protocol::http, use::searching
+aspseek-cgi: protocol::http, use::searching
+aspseek-cgi-common: protocol::http, special::auto-inst-parts, use::searching
+aspseek-common: protocol::http, special::auto-inst-parts, use::searching
+aspseek-libmysqldb: protocol::http, use::searching
+asr-manpages: admin::user-management, devel::doc, devel::lang:c, game::toys, made-of::data:man, role::data, special::completely-tagged
+asterisk: implemented-in::c, interface::daemon, interface::text-mode, network::server, protocol::ssl, protocol::voip, role::program, scope::utility, uitoolkit::ncurses, works-with::audio, works-with::db
+asterisk-app-dtmftotext: protocol::voip, role::plugin, works-with::audio, works-with::text
+asterisk-app-fax: protocol::voip, role::plugin, works-with::audio, works-with::fax
+asterisk-app-misdn-v110: protocol::voip, role::plugin, works-with::audio
+asterisk-bristuff: hardware::modem, protocol::voip, role::plugin, uitoolkit::ncurses, works-with::audio
+asterisk-chan-capi: hardware::modem, protocol::voip, role::plugin, works-with::audio
+asterisk-chan-misdn: hardware::TODO, protocol::voip, role::plugin, special::not-yet-tagged, special::not-yet-tagged::a, suite::TODO
+asterisk-classic: protocol::voip, role::plugin, uitoolkit::ncurses, works-with::audio
+asterisk-config: protocol::voip, role::app-data, use::configuring, works-with::audio
+asterisk-dev: devel::library, protocol::voip, role::devel-lib, works-with::audio
+asterisk-doc: made-of::data:html, protocol::voip, role::documentation, works-with::audio
+asterisk-gtk-console: interface::x11, protocol::voip, role::plugin, uitoolkit::gtk, use::configuring, works-with::audio, x11::application
+asterisk-h323: protocol::voip, role::dummy, special::obsolete, works-with::audio
+asterisk-oh323: protocol::ldap, protocol::voip, role::plugin, security::authentication, uitoolkit::sdl, works-with::audio, works-with::db
+asterisk-prompt-de: culture::german, protocol::voip, role::app-data, works-with::audio
+asterisk-prompt-es: culture::spanish, protocol::voip, role::app-data, works-with::audio
+asterisk-prompt-es-co: culture::spanish, protocol::voip, role::app-data, works-with::audio
+asterisk-prompt-fr: culture::french, protocol::voip, role::app-data, works-with::audio
+asterisk-prompt-it: culture::italian, protocol::voip, role::app-data, works-with::audio
+asterisk-prompt-se: culture::swedish, protocol::voip, role::app-data, works-with::audio
+asterisk-rate-engine: protocol::voip, role::plugin, works-with::audio
+asterisk-sounds-extra: protocol::voip, role::app-data, works-with::audio
+asterisk-sounds-main: protocol::voip, role::app-data, works-with::audio
+asterisk-web-vmail: interface::web, protocol::http, protocol::voip, role::plugin, web::cgi, works-with::audio
+astrolog: game::toys, use::gameplaying
+astyle: devel::lang:c, devel::lang:c++, devel::lang:java, devel::prettyprint, interface::commandline, role::program, scope::utility, use::printing, works-with::software:source
+aswiki: devel::rcs, implemented-in::ruby, interface::web, network::server, protocol::http, role::program, web::wiki, works-with-format::html, works-with::text
+asymptote: interface::text-mode, interface::x11, role::program, uitoolkit::ncurses, uitoolkit::tk, use::typesetting, works-with-format::tex, works-with::image:vector
+at: interface::daemon, network::client, network::server, role::program, use::timekeeping
+at-spi: accessibility::screen-reader, devel::library, implemented-in::c, interface::x11, role::shared-lib, suite::gnome, uitoolkit::gtk, x11::application
+at-spi-doc: accessibility::screen-reader, devel::library, interface::x11, made-of::data:html, role::documentation, suite::gnome, uitoolkit::gtk, x11::application
+at76c503a-source: admin::kernel, role::source, use::driver
+atanks: game::arcade, game::strategy, interface::x11, role::program, use::gameplaying, x11::application
+atanks-data: game::arcade, game::strategy, interface::x11, role::app-data, use::gameplaying, x11::application
+atari-fdisk-cross: admin::filesystem, interface::commandline, role::program, scope::utility
+atari800: hardware::emulation, uitoolkit::ncurses, uitoolkit::sdl
+aterm: implemented-in::c, interface::x11, role::program, scope::utility, x11::terminal
+aterm-ml: culture::TODO, culture::chinese, culture::greek, culture::japanese, implemented-in::c, interface::x11, role::program, scope::utility, x11::terminal
+atfs: admin::filesystem, admin::user-management, devel::library, interface::commandline, role::program, scope::utility
+atfs-dev: admin::filesystem, admin::user-management, devel::library, interface::commandline, role::devel-lib
+atftp: admin::boot, filetransfer::ftp, interface::commandline, network::client, protocol::ftp, role::program, use::checking, use::downloading, works-with::file
+atftpd: admin::boot, filetransfer::ftp, interface::daemon, network::server, protocol::ftp, role::program, use::downloading, works-with::file
+athcool: admin::power-management, hardware::power, hardware::power:acpi, interface::commandline, role::program, scope::utility, use::configuring
+athena-jot: implemented-in::c, interface::commandline, role::program, scope::utility
+atitvout: hardware::video, implemented-in::c, interface::commandline, role::program, scope::utility
+atlantik: game::board, interface::x11, network::client, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+atlantik-dev: game::board, interface::x11, role::devel-lib, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+atlantikdesigner: game::board, interface::x11, role::program, suite::kde, uitoolkit::qt, use::editing, use::gameplaying, x11::application
+atlas-doc: role::documentation
+atlas2-3dnow-dev: devel::library
+atlas2-base-dev: devel::library
+atlas2-sse-dev: devel::library
+atlas2-sse2-dev: devel::library
+atlas3-3dnow: admin::hardware, field::mathematics, implemented-in::c, implemented-in::fortran, role::shared-lib
+atlas3-3dnow-dev: admin::hardware, devel::library, field::mathematics, implemented-in::c, role::devel-lib
+atlas3-base: admin::hardware, field::mathematics, implemented-in::c, role::shared-lib
+atlas3-base-dev: admin::hardware, devel::library, field::mathematics, implemented-in::c, implemented-in::fortran, role::devel-lib
+atlas3-doc: devel::doc, devel::lang:c, field::mathematics, made-of::data:postscript, role::documentation
+atlas3-headers: admin::hardware, devel::library, field::mathematics, implemented-in::c, implemented-in::fortran, role::devel-lib
+atlas3-sse: admin::hardware, field::mathematics, implemented-in::c, implemented-in::fortran, role::shared-lib
+atlas3-sse-dev: admin::hardware, devel::library, field::mathematics, implemented-in::c, role::devel-lib
+atlas3-sse2: admin::hardware, field::mathematics, implemented-in::c, role::shared-lib
+atlas3-sse2-dev: admin::hardware, devel::library, field::mathematics, implemented-in::c, role::devel-lib
+atlas3-test: admin::hardware, devel::testing-qa, field::mathematics, implemented-in::c, interface::commandline, role::program, scope::utility, use::checking
+atlc: field::electronics, interface::commandline, role::program, scope::utility, use::editing, works-with::image, works-with::image:raster
+atlc-examples: devel::examples, field::electronics, interface::commandline, role::app-data, use::editing, works-with::image, works-with::image:raster
+atm-dev: devel::library, protocol::atm, role::dummy, special::obsolete
+atm-tools: interface::daemon, network::configuration, network::server, protocol::atm, role::program, use::configuring
+atmel-firmware: admin::hardware, use::driver, use::transmission
+atokx: uitoolkit::gtk
+atokx2: special::not-yet-tagged, special::not-yet-tagged::a, uitoolkit::gtk
+atom4: game::puzzle, interface::text-mode, interface::x11, role::program, uitoolkit::ncurses, use::gameplaying, x11::application
+atomix: field::chemistry, game::puzzle, interface::x11, role::program, suite::gnome, uitoolkit::gtk, use::gameplaying, x11::application
+atomix-data: field::chemistry, game::puzzle, interface::x11, role::app-data, special::auto-inst-parts, suite::gnome, uitoolkit::gtk, x11::application
+atool: implemented-in::perl, interface::commandline, role::program, scope::utility, use::compressing, use::converting, use::storing, works-with-format::tar, works-with-format::zip, works-with::archive, works-with::software:package
+atop: admin::accounting, admin::monitoring, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::monitor, works-with::software:running
+atp: devel::lang:c, devel::lang:c++, devel::prettyprint, interface::commandline, role::program, scope::utility, use::converting, works-with-format::postscript, works-with::software:source, works-with::text
+atris: game::tetris, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+attal: game::strategy, interface::x11, role::program, uitoolkit::qt, use::gameplaying, x11::application
+attal-themes-medieval: game::strategy, interface::x11, role::app-data, uitoolkit::qt, use::gameplaying, x11::theme
+attr: admin::filesystem, admin::user-management, interface::commandline, role::program, scope::utility, works-with::file
+aub: network::client, protocol::nntp, role::program, use::downloading, works-with::archive
+auctex: implemented-in::lisp, interface::commandline, role::plugin, suite::emacs, suite::gnu, use::editing, works-with-format::tex, works-with::text
+audacious: implemented-in::c, interface::x11, role::program, scope::application, sound::player, uitoolkit::gtk, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, x11::application
+audacious-crossfade: role::plugin, scope::application, sound::player, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+audacious-dev: devel::library, role::devel-lib, uitoolkit::gtk, works-with::audio
+audacity: interface::x11, role::program, scope::application, sound::recorder, uitoolkit::wxwidgets, uitoolkit::wxwindows, use::editing, works-with::audio, x11::application
+audiolink: devel::lang:sql, implemented-in::perl, interface::commandline, role::program, scope::application, use::organizing, use::searching, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, works-with::db
+audiooss: interface::commandline, role::program, scope::utility, use::proxying, works-with::audio
+august: interface::x11, role::program, scope::application, uitoolkit::tk, use::editing, works-with-format::html, works-with::text, x11::application
+aumix: implemented-in::c, interface::text-mode, role::program, scope::utility, sound::mixer, uitoolkit::ncurses, works-with::audio
+aumix-gtk: implemented-in::c, interface::x11, role::program, scope::utility, sound::mixer, uitoolkit::gtk, uitoolkit::ncurses, works-with::audio, x11::application
+authbind: interface::daemon, network::server, role::program, security::authentication, use::transmission
+auto-apt: admin::package-management, interface::commandline, role::program, scope::utility, suite::debian, use::downloading, use::searching, works-with::software:package
+autobook: devel::buildtools, devel::code-generator, devel::lang:c, role::data, role::documentation
+autoclass: field::mathematics, interface::commandline, role::program, scope::utility, use::organizing
+autoconf: devel::buildtools, devel::code-generator, devel::lang:c, interface::commandline, role::program, scope::utility, suite::gnu
+autoconf-archive: devel::buildtools, devel::code-generator, devel::lang:c, interface::commandline, role::plugin, scope::utility
+autoconf-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::a
+autoconf2.13: devel::buildtools, devel::code-generator, devel::lang:c, interface::commandline, role::program, scope::utility, special::obsolete, suite::gnu
+autodebtest: devel::debian, devel::testing-qa, implemented-in::python, interface::commandline, role::program, scope::utility, suite::debian, use::checking, works-with::software:package
+autodia: devel::docsystem, devel::lang:c++, devel::lang:perl, implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, works-with-format::xml, works-with::software:source
+autodns-dhcp: implemented-in::perl, interface::daemon, network::configuration, network::server, protocol::dhcp, protocol::dns, role::program
+autofs: admin::filesystem, interface::daemon, role::program, scope::utility
+autofs-hesiod: admin::filesystem, interface::daemon, role::program, scope::utility
+autofs-ldap: admin::filesystem, interface::daemon, protocol::ldap, role::program, scope::utility, works-with::db
+autogen: devel::code-generator, implemented-in::c, interface::commandline, role::program, scope::utility, suite::gnu, works-with::text
+autolog: admin::user-management, interface::daemon, network::server, role::program
+automake: devel::buildtools, implemented-in::perl, interface::commandline, role::program, use::configuring
+automake1.4: devel::buildtools, devel::code-generator, devel::lang:c, interface::commandline, role::program, scope::utility, suite::gnu
+automake1.6: devel::buildtools, devel::code-generator, devel::lang:c, interface::commandline, role::program, scope::utility
+automake1.7: devel::buildtools, devel::code-generator, devel::lang:c, interface::commandline, role::program, scope::utility, suite::gnu
+automake1.8: devel::buildtools, devel::code-generator, devel::lang:c, interface::commandline, role::program, scope::utility, suite::gnu
+automake1.9: devel::buildtools, devel::code-generator, devel::lang:c, interface::commandline, role::program, scope::utility, suite::gnu
+autopilot: hardware::embedded, interface::daemon, network::server, role::program, use::synchronizing
+autopkgtest: devel::debian, devel::testing-qa, implemented-in::python, interface::commandline, role::program, scope::utility, suite::debian, use::checking, works-with::software:package
+autoproject: devel::buildtools, interface::commandline, role::program, scope::utility, suite::gnu, works-with::software:source
+autopsy: interface::commandline, role::program, scope::utility, security::forensics
+autorespond: works-with::mail
+autossh: implemented-in::c, interface::daemon, network::server, protocol::ssh, role::program, use::login, use::monitor
+autotools-dev: devel::buildtools, devel::doc, devel::library, interface::commandline, role::app-data
+autotrace: implemented-in::c, interface::commandline, role::program, scope::application, scope::utility, use::converting, works-with::image, works-with::image:raster, works-with::image:vector
+ava: devel::machinecode, interface::commandline, role::program, scope::utility
+avahi-autoipd: implemented-in::c, interface::daemon, network::configuration, protocol::ip, role::program
+avahi-daemon: implemented-in::c, interface::daemon, network::configuration, network::scanner, network::server, protocol::dns, role::program, scope::utility, use::scanning
+avahi-discover: implemented-in::python, interface::x11, network::client, network::scanner, protocol::dns, role::program, scope::utility, uitoolkit::gtk, use::scanning, x11::application
+avahi-dnsconfd: interface::daemon, network::client, network::scanner, protocol::dns, role::program, scope::utility
+avahi-utils: interface::commandline, network::scanner, protocol::dns, role::program, scope::utility, use::scanning
+avce00: devel::lang:c, devel::testing-qa, role::program, scope::utility
+avida-base: field::biology, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, works-with::software:running
+avida-qt-viewer: field::biology, interface::x11, role::program, scope::utility, uitoolkit::qt, use::viewing, works-with::software:running, x11::application
+avida-viewer: field::biology, interface::text-mode, role::program, uitoolkit::ncurses, use::viewing, works-with::software:running
+aview: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::playing, use::viewing, works-with::video
+avifile-divx-plugin: special::not-yet-tagged, special::not-yet-tagged::a
+avifile-mad-plugin: sound::player, works-with-format::mp3, works-with::audio
+avifile-mjpeg-plugin: special::not-yet-tagged, special::not-yet-tagged::a
+avifile-player: role::program, uitoolkit::qt, uitoolkit::sdl, use::viewing, works-with::video
+avifile-utils: role::program, scope::utility, uitoolkit::qt, uitoolkit::sdl
+avifile-vorbis-plugin: special::not-yet-tagged, special::not-yet-tagged::a
+avifile-win32-plugin: works-with::audio
+avifile-xvid-plugin: special::not-yet-tagged, special::not-yet-tagged::a
+avr-libc: devel::library, field::electronics, implemented-in::c, role::devel-lib
+avra: devel::machinecode, field::electronics, interface::commandline, role::program, scope::utility
+avrdude: devel::machinecode, field::electronics, hardware::embedded, interface::commandline, role::program, scope::utility, uitoolkit::ncurses
+avrdude-doc: devel::machinecode, field::electronics, hardware::embedded, role::documentation
+avrp: devel::machinecode, field::electronics, interface::commandline, role::program, scope::utility
+avrprog: devel::machinecode, field::electronics, interface::commandline, role::program, scope::utility, use::driver
+avscan: interface::x11, role::program, security::antivirus, uitoolkit::gtk, works-with::file, works-with::mail, x11::application
+away: interface::commandline, role::program, scope::utility
+awesfx: admin::hardware, interface::commandline, role::program, scope::utility, sound::midi, use::playing, works-with::audio
+awstats: admin::monitoring, implemented-in::perl, interface::commandline, interface::web, role::program, security::log-analyzer, use::monitor, web::cgi, works-with-format::html, works-with::logfile, works-with::text
+ax25-apps: hardware::hamradio, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses
+ax25-tools: admin::hardware, hardware::hamradio, interface::commandline, role::program, scope::utility, use::configuring
+ax25-xtools: admin::hardware, hardware::hamradio, interface::x11, role::program, scope::utility, uitoolkit::TODO, use::configuring, x11::application
+ax25mail-utils: hardware::hamradio, interface::commandline, role::program, scope::utility, use::downloading
+ax25spyd: hardware::hamradio, interface::daemon, role::program, uitoolkit::ncurses, use::monitor
+axe: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::a, uitoolkit::athena, use::editing, works-with::text, x11::application
+axel: interface::commandline, role::program, scope::utility, use::downloading
+axel-kapt: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::downloading, x11::application
+axiom: devel::compiler, devel::interpreter, field::mathematics, implemented-in::lisp, interface::text-mode, role::program, scope::utility
+axiom-databases: field::mathematics, interface::text-mode, role::app-data, uitoolkit::ncurses, works-with::db
+axiom-doc: field::mathematics, interface::text-mode, made-of::data:tex, role::documentation, uitoolkit::ncurses
+axiom-graphics: field::mathematics, interface::x11, role::program, scope::utility, works-with::image, x11::application
+axiom-graphics-data: field::mathematics, interface::x11, role::app-data, works-with::image, x11::application
+axiom-hypertex: devel::doc, field::mathematics, interface::text-mode, role::program, scope::utility
+axiom-hypertex-data: devel::doc, field::mathematics, interface::text-mode, role::app-data
+axiom-source: field::mathematics, interface::text-mode, role::source
+axiom-test: devel::testing-qa, field::mathematics, interface::text-mode, role::app-data
+axiom-tex: field::mathematics, interface::text-mode, role::app-data, works-with-format::tex, works-with::text
+axkit: interface::daemon, network::server, role::program, web::server, works-with-format::xml
+axkit-examples: made-of::data:xml, network::server, role::program, web::server, works-with-format::xml
+axkit-language-htmldoc: network::server, role::program, web::server, works-with-format::xml
+axkit-language-query: network::server, role::program, web::server, works-with-format::xml
+axkit-xsp-webutils: network::server, role::program, web::server, works-with-format::xml
+axp: devel::rcs, implemented-in::perl, interface::commandline, role::program, scope::utility
+axyl: devel::lang:php, devel::lang:sql, implemented-in::php, role::program, web::cms, works-with-format::html, works-with::db, works-with::text
+axyl-doc: devel::examples, devel::lang:php, made-of::data:html, role::documentation, web::cms
+axyl-lucene: devel::lang:php, implemented-in::java, interface::daemon, network::server, role::program, web::cms, works-with-format::xml
+aylet: interface::text-mode, role::program, sound::player, uitoolkit::ncurses, use::playing, works-with::audio
+aylet-gtk: interface::x11, role::program, sound::player, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+ayttm: filetransfer::dcc, interface::x11, network::client, protocol::irc, protocol::jabber, protocol::msn-messenger, protocol::oscar, protocol::yahoo-messenger, role::program, uitoolkit::gtk, use::chatting, x11::application
+ayuda: role::documentation
+azureus: admin::file-distribution, implemented-in::java, interface::x11, protocol::bittorrent, role::program, special::not-yet-tagged, special::not-yet-tagged::a, uitoolkit::TODO, use::downloading, works-with::file
+b2evolution: implemented-in::php, network::client, protocol::http, role::plugin, use::editing, web::blog, works-with-format::xml, works-with-format::xml:rss
+babel-0.10.2: special::not-yet-tagged, special::not-yet-tagged::b
+babel-0.10.2-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::b
+babel-0.8.8: special::not-yet-tagged, special::not-yet-tagged::b
+babel-0.8.8-doc: special::not-yet-tagged, special::not-yet-tagged::b
+babygimp: implemented-in::perl, interface::x11, role::program, scope::application, uitoolkit::tk, use::editing, works-with::image, works-with::image:raster, x11::application
+backup-manager: admin::backup, implemented-in::perl, implemented-in::shell, interface::commandline, role::program, scope::utility, use::compressing, use::storing, works-with-format::tar, works-with-format::zip, works-with::archive, works-with::file
+backup-manager-doc: admin::backup, made-of::data:html, made-of::data:pdf, role::documentation
+backup2l: admin::backup, hardware::storage, interface::commandline, role::program, scope::utility, use::compressing, use::storing, works-with-format::tar, works-with::archive, works-with::file
+backupninja: admin::backup, implemented-in::shell, interface::commandline, role::program, scope::utility, use::storing, works-with::archive, works-with::file
+backuppc: admin::backup, hardware::storage, implemented-in::perl, interface::daemon, interface::web, network::server, role::program, use::compressing, use::storing, web::cgi, works-with-format::tar, works-with-format::zip, works-with::archive
+bacula: admin::backup, network::service, role::dummy, role::metapackage, special::meta, use::storing
+bacula-client: admin::backup, interface::daemon, network::client, network::service, role::dummy, role::metapackage, special::meta
+bacula-common: admin::backup, network::service, role::app-data, use::storing
+bacula-console: admin::backup, interface::text-mode, network::service, role::program, scope::utility, uitoolkit::ncurses, use::configuring, use::storing
+bacula-console-gnome: admin::backup, interface::x11, network::service, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::configuring, use::storing, x11::application
+bacula-console-wx: uitoolkit::wxwindows
+bacula-director-common: admin::backup, interface::daemon, network::service, role::app-data, use::storing
+bacula-director-mysql: admin::backup, devel::lang:sql, interface::daemon, network::server, network::service, role::program, use::storing, works-with::db
+bacula-director-pgsql: admin::backup, devel::lang:sql, interface::daemon, network::server, network::service, role::program, use::storing, works-with::db
+bacula-director-sqlite: admin::backup, devel::lang:sql, network::server, network::service, role::program, use::storing, works-with::db
+bacula-director-sqlite3: admin::backup, devel::lang:sql, implemented-in::c, interface::daemon, network::server, network::service, role::program, use::organizing, works-with::archive, works-with::db
+bacula-doc: admin::backup, made-of::data:pdf, role::documentation
+bacula-fd: admin::backup, interface::daemon, network::client, network::service, role::program, use::storing, works-with::file
+bacula-sd: admin::backup, hardware::storage, interface::daemon, network::client, network::service, role::program, use::storing
+bacula-server: admin::backup, network::server, network::service, role::dummy, role::metapackage, special::meta, works-with::db
+bacula-traymonitor: admin::backup, interface::x11, network::client, role::program, uitoolkit::gtk, use::storing, x11::applet
+bacula-wxconsole: admin::backup, interface::x11, network::service, role::program, scope::utility, uitoolkit::wxwidgets, use::configuring, use::storing, x11::application
+bake: devel::buildtools, devel::lang:python, implemented-in::python, interface::commandline, role::program, scope::utility
+baken: field::geography, hardware::hamradio, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::viewing, x11::application
+balazar: game::adventure, interface::3d, interface::x11, role::program, use::gameplaying, x11::application
+balsa: implemented-in::c, interface::x11, mail::imap, mail::pop, mail::user-agent, network::client, protocol::imap, protocol::pop3, protocol::smtp, role::program, scope::application, suite::gnome, suite::gnu, uitoolkit::gtk, works-with::mail, x11::application
+bamboo: devel::lang:sql, implemented-in::php, interface::web, network::server, role::program, web::application, web::wiki, works-with-format::html, works-with::db, works-with::text
+bandersnatch: special::not-yet-tagged, special::not-yet-tagged::b
+bandersnatch-frontend: special::not-yet-tagged, special::not-yet-tagged::b
+bandwidthd: admin::monitoring, interface::daemon, protocol::ip, role::program, scope::utility, use::viewing, works-with-format::html, works-with::network-traffic
+banshee: implemented-in::c-sharp, uitoolkit::gtk, works-with::audio
+banshee-daap: uitoolkit::gtk, works-with::audio
+baobab: interface::x11, role::program, special::obsolete, suite::gnome, uitoolkit::gtk, use::scanning, works-with::file, x11::application
+barcode: interface::commandline, role::program, special::not-yet-tagged, special::not-yet-tagged::b, suite::gnu, works-with-format::postscript, works-with::text
+barrage: game::arcade, implemented-in::c, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+barrendero: works-with::mail
+base-config: admin::configuring, role::dummy, suite::debian, use::configuring
+base-files: admin::configuring, role::app-data, special::auto-inst-parts, suite::debian
+base-passwd: admin::configuring, admin::user-management, implemented-in::c, interface::commandline, role::app-data, role::program, scope::utility, security::authentication, suite::debian, use::login
+bash: implemented-in::c, interface::shell, role::program, scope::utility, suite::gnu, uitoolkit::ncurses
+bash-builtins: devel::lang:c, devel::library, implemented-in::c, interface::shell, role::devel-lib, suite::gnu, uitoolkit::ncurses
+bash-doc: devel::doc, devel::examples, implemented-in::c, interface::shell, made-of::data:info, role::documentation, suite::gnu
+bash-minimal: implemented-in::c, interface::shell, role::program, scope::utility, suite::gnu
+bash-static: admin::recovery, implemented-in::c, interface::shell, role::program, scope::utility, suite::gnu, use::login
+bash3: implemented-in::c, interface::shell, uitoolkit::ncurses
+bash3-doc: devel::doc, interface::shell, made-of::data:info, role::documentation
+bashdb: suite::gnu
+basilisk2: hardware::emulation, implemented-in::c++, interface::x11, role::program, scope::application, uitoolkit::gtk, uitoolkit::sdl, x11::application
+basket: interface::x11, role::program, scope::application, suite::kde, uitoolkit::qt, x11::application
+bastet: game::tetris, implemented-in::c, interface::text-mode, role::program, use::gameplaying
+bastille: devel::testing-qa, interface::text-mode, role::program, scope::utility, security::ids, suite::gnu, uitoolkit::ncurses
+batmon.app: role::program
+battery-stats: hardware::laptop, hardware::power, hardware::power:apm, interface::daemon, network::server, role::program, use::monitor
+battfink: hardware::laptop, uitoolkit::gtk
+battleball: game::arcade, interface::x11, role::program, use::gameplaying, x11::application
+baycomepp: hardware::hamradio, hardware::modem, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::driver, x11::application
+baycomusb: hardware::hamradio, hardware::modem, hardware::usb, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::driver, x11::application
+bayonne: special::not-yet-tagged, special::not-yet-tagged::b, suite::gnu
+bayonne-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::b
+bayonne-prompts-en: special::not-yet-tagged, special::not-yet-tagged::b, suite::gnu
+bayonne-prompts-sys: special::not-yet-tagged, special::not-yet-tagged::b, suite::gnu
+bazaar: devel::rcs, implemented-in::c, interface::commandline, interface::x11, role::program, scope::application, uitoolkit::gtk
+bazaar-dbg: special::not-yet-tagged, special::not-yet-tagged::b
+bazaar-doc: role::documentation
+bb: game::demos, interface::text-mode, role::program, uitoolkit::ncurses, use::gameplaying, use::viewing
+bbappconf: interface::x11, role::program, scope::utility, use::configuring, x11::application
+bbconf: uitoolkit::qt, x11::window-manager
+bbdate: interface::x11, role::program, scope::utility, use::timekeeping, x11::applet
+bbdb: implemented-in::lisp, role::plugin, suite::emacs, use::editing, use::searching, use::storing, works-with::db, works-with::mail, works-with::pim
+bbe: interface::commandline, role::program, scope::utility, works-with::file
+bbkeys: hardware::input, interface::x11, role::program, scope::utility, x11::application
+bbmail: implemented-in::c++, interface::x11, mail::notification, network::client, role::program, scope::utility, uitoolkit::xlib, works-with::mail, x11::applet
+bbpager: implemented-in::c++, interface::x11, role::program, scope::utility, uitoolkit::xlib, works-with::software:running, x11::applet
+bbppp: hardware::modem, implemented-in::c, interface::x11, role::program, scope::utility, use::configuring, use::dialing, x11::applet
+bbrun: implemented-in::c, interface::x11, role::program, scope::utility, uitoolkit::gtk, works-with::software:running, x11::applet
+bbsload: interface::x11, role::program, scope::utility, use::monitor, x11::applet
+bbtime: implemented-in::c++, interface::x11, role::program, scope::utility, uitoolkit::xlib, use::timekeeping, x11::applet
+bc: devel::interpreter, field::mathematics, implemented-in::c, interface::text-mode, role::program, scope::utility, suite::gnu, uitoolkit::ncurses
+bcc: admin::boot, devel::compiler, devel::lang:c, interface::commandline, role::program, scope::utility, works-with::software:source
+bchunk: hardware::storage, hardware::storage:cd, implemented-in::c, interface::commandline, role::program, scope::utility, use::converting, works-with::archive
+bclock: interface::x11, role::program, scope::utility, use::timekeeping, x11::application
+bcm43xx-fwcutter: admin::hardware, admin::kernel, hardware::laptop, interface::commandline, interface::text-mode, scope::utility, use::driver
+bcm4400-source: admin::kernel, implemented-in::c, protocol::ethernet, role::source, use::driver
+bcm5700-source: admin::kernel, role::source, use::driver
+bcp: devel::library
+bcrelay: interface::daemon, role::program, works-with::network-traffic
+bcrypt: interface::commandline, role::program, scope::utility, security::cryptography
+bdfresize: interface::commandline, role::program, scope::utility, use::converting, works-with::font
+beagle: implemented-in::c-sharp, interface::x11, role::program, uitoolkit::gtk, use::searching
+beagle-dev: role::devel-lib
+beancounter: devel::lang:sql, field::finance, implemented-in::perl, interface::commandline, office::finance, role::program, scope::application, use::downloading, use::monitor, works-with::db, works-with::text
+beast: devel::lang:scheme, field::arts, interface::x11, sound::mixer, suite::gnome, uitoolkit::gtk, works-with::audio, x11::application
+beav: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::editing, works-with::file
+beef: devel::interpreter, implemented-in::c, interface::commandline, role::program, works-with::software:source
+beep: implemented-in::c, interface::commandline, role::program, scope::utility, works-with::audio
+beep-media-player: implemented-in::c, interface::x11, role::program, scope::application, sound::player, uitoolkit::gtk, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, x11::application
+beep-media-player-dev: implemented-in::c, interface::x11, role::devel-lib, sound::player, uitoolkit::gtk, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, x11::application
+beep-media-player-scrobbler: implemented-in::c, interface::x11, protocol::TODO, role::plugin, scope::application, sound::player, special::completely-tagged, uitoolkit::gtk, use::entertaining, use::organizing, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+beep-media-player-wma: uitoolkit::gtk
+beepcore-c-dev: devel::library, implemented-in::c, role::devel-lib
+beepcore-c0: devel::library, implemented-in::c, role::shared-lib
+beid-tools: role::program, scope::utility, security::authentication, security::cryptography, uitoolkit::qt, uitoolkit::wxwindows
+beidgui: uitoolkit::qt, uitoolkit::wxwidgets, uitoolkit::wxwindows
+belocs-locales-bin: devel::compiler, devel::i18n, interface::commandline, role::app-data, role::program, scope::utility
+belocs-locales-data: devel::i18n, role::app-data
+belpic: admin::hardware, implemented-in::c, implemented-in::c++, interface::commandline, interface::x11, security::authentication, security::cryptography
+beneath-a-steel-sky: game::adventure, role::program, use::gameplaying
+bf-utf-source: devel::i18n, role::source, works-with::font
+bfbtester: devel::testing-qa, interface::commandline, role::program, scope::utility, use::checking, works-with::software:running
+bfilter: implemented-in::c++, interface::daemon, protocol::http, role::program, use::filtering, use::proxying, works-with-format::html
+bfilter-common: role::app-data
+bfilter-gui: implemented-in::c++, protocol::http, role::program, scope::application, uitoolkit::gtk, use::filtering, use::proxying, works-with-format::html, x11::application
+bfr: interface::commandline, role::program, scope::utility
+bg5cc: culture::chinese, devel::prettyprint, use::printing
+bg5ps: culture::chinese, use::printing
+bglibs-dev: devel::library, role::devel-lib
+bglibs-doc: devel::doc, devel::library, made-of::data:html, made-of::data:tex, role::documentation
+bhl: implemented-in::lisp, interface::commandline, role::plugin, suite::emacs, use::converting, use::editing, works-with-format::html, works-with-format::tex, works-with::text
+biabam: interface::commandline, mail::user-agent, network::client, role::program, use::storing, works-with::file, works-with::mail
+bibclean: devel::prettyprint, implemented-in::c, interface::commandline, role::program, scope::utility, use::checking, works-with-format::bib, works-with-format::tex, works-with::text
+bibcursed: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::editing, works-with-format::bib, works-with-format::tex, works-with::text
+bibindex: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::editing, use::searching, works-with-format::bib, works-with-format::tex, works-with::text
+bible-kjv: role::data, use::searching
+bible-kjv-text: role::data, use::searching
+bibledit: uitoolkit::gtk
+bibletime: culture::german, interface::x11, role::data, suite::kde, uitoolkit::qt, use::searching, x11::application
+bibletime-i18n: culture::german, interface::x11, role::data, uitoolkit::qt, use::searching, x11::application
+bibtex2html: implemented-in::ocaml, interface::commandline, role::program, scope::utility, use::converting, use::editing, works-with-format::bib, works-with-format::html, works-with-format::tex, works-with::text
+bibtool: implemented-in::c, interface::commandline, role::program, scope::utility, use::editing, use::organizing, use::searching, works-with-format::bib, works-with-format::tex, works-with::text
+bibtool-dev: use::editing, works-with-format::tex, works-with::text
+bibview: interface::x11, uitoolkit::athena, use::editing, works-with-format::tex, works-with::text
+bicyclerepair: devel::lang:python, devel::library, implemented-in::python, role::plugin
+bidentd: interface::daemon, network::server, network::service, protocol::ident, role::program
+bidiv: accessibility::ocr, culture::arabic, culture::hebrew, interface::commandline, role::program, scope::utility, use::converting, use::viewing, works-with::text
+bidwatcher: field::finance, interface::x11, role::program, scope::application, uitoolkit::gtk
+biew: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::editing, works-with::file
+biff: interface::commandline, interface::daemon, mail::notification, network::client, network::server, role::program, works-with::mail
+big-cursor: accessibility::screen-magnify, interface::x11, role::app-data, x11::theme
+bigloo: devel::compiler, devel::interpreter, devel::lang:scheme, implemented-in::scheme, interface::commandline, interface::text-mode, role::program, scope::utility, works-with::software:source
+bigloo-devtools: devel::buildtools, devel::debugger, devel::lang:c, devel::lang:scheme, implemented-in::scheme, interface::commandline, role::program, scope::utility, works-with::software:running, works-with::software:source
+bigloo-doc: devel::interpreter, devel::lang:scheme, role::documentation
+bigloo-examples: devel::doc, devel::examples, devel::lang:scheme, implemented-in::scheme, role::documentation
+bigloo-ude: devel::ide, devel::lang:scheme, implemented-in::lisp, role::plugin, suite::emacs, use::editing, works-with::software:source
+billard-gl: game::simulation, interface::3d, role::program, use::gameplaying, x11::application
+billard-gl-data: game::simulation, interface::3d, role::app-data, use::gameplaying, x11::application
+biloba: game::board, game::strategy, implemented-in::c, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+biloba-data: game::board, game::strategy, implemented-in::c, role::app-data, use::gameplaying
+bin86: devel::machinecode, interface::commandline, role::program, scope::utility
+bincimap: interface::daemon, mail::imap, network::server, protocol::imap, protocol::ssl, role::program, works-with::mail
+bincimap-run: interface::commandline, mail::imap, protocol::imap, protocol::ssl, role::program, scope::utility, use::configuring, works-with::mail
+binclock: implemented-in::c, interface::commandline, role::program, scope::utility, use::timekeeping
+bind: interface::daemon, network::server, network::service, protocol::dns, protocol::ipv6, role::program
+bind-dev: interface::daemon, network::service, protocol::dns, protocol::ipv6, role::devel-lib
+bind-doc: interface::daemon, made-of::data:html, made-of::data:postscript, network::service, protocol::dns, protocol::ipv6, role::documentation
+bind9: interface::daemon, network::server, network::service, protocol::dns, protocol::ipv6, protocol::ssl, role::program
+bind9-doc: interface::daemon, made-of::data:html, network::service, protocol::dns, protocol::ipv6, protocol::ssl, role::documentation
+bind9-host: interface::commandline, network::client, network::service, protocol::dns, protocol::ssl, role::program
+bindgraph: implemented-in::perl, interface::commandline, protocol::dns, role::program, scope::utility, use::monitor, works-with::db, works-with::logfile
+binfmt-support: admin::kernel, devel::interpreter, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian
+bing: interface::commandline, network::scanner, role::program, scope::utility, use::monitor, works-with::network-traffic
+binkd: implemented-in::perl, interface::commandline, network::client, protocol::fidonet, role::program, use::transmission, works-with::mail
+bins: implemented-in::perl, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, works-with-format::html, works-with-format::xml, works-with::image, works-with::image:raster, works-with::text, x11::application
+binstats: devel::debugger, interface::commandline, role::program, scope::utility, use::scanning, works-with::software:running
+binutils: devel::machinecode, interface::commandline, role::program, scope::utility, suite::gnu
+binutils-avr: admin::hardware, devel::machinecode, interface::commandline, role::program, scope::utility, suite::gnu
+binutils-dev: devel::machinecode, interface::commandline, role::devel-lib, suite::gnu
+binutils-doc: devel::machinecode, interface::commandline, made-of::data:info, role::documentation, suite::gnu
+binutils-h8300-hms: admin::hardware, devel::machinecode, interface::commandline, role::program, scope::utility, suite::gnu
+binutils-m68hc1x: admin::hardware, devel::machinecode, hardware::embedded, interface::commandline, role::program, scope::utility, suite::gnu
+binutils-multiarch: devel::machinecode, interface::commandline, role::program, scope::utility, suite::gnu
+biococoa.app: field::biology, implemented-in::objc, interface::x11, role::plugin, suite::gnustep, uitoolkit::gnustep, use::converting, x11::applet
+biomode: field::biology, implemented-in::lisp, role::plugin, suite::emacs, use::editing
+bioperl: devel::lang:perl, devel::library, field::biology, role::app-data
+biosquid: devel::lang:c, field::biology, implemented-in::c, interface::commandline, role::program
+bip: interface::daemon, network::server, network::service, protocol::irc, role::program, use::proxying
+bird: interface::daemon, network::routing, network::server, protocol::ipv6, role::program, uitoolkit::ncurses, use::routing
+birthday: interface::commandline, role::program, scope::application, use::monitor, use::timekeeping, works-with::pim
+bison: devel::code-generator, devel::lang:c, devel::lang:c++, implemented-in::c, interface::commandline, role::program, scope::utility, suite::gnu, works-with::software:source
+bison++: devel::code-generator, devel::lang:c, devel::lang:c++, interface::commandline, role::program, scope::utility, suite::gnu, works-with::software:source
+bison-1.35: devel::code-generator, devel::lang:c, interface::commandline, role::program, scope::utility, suite::gnu, works-with::software:source
+bison-doc: made-of::data:info, made-of::data:pdf, role::documentation
+bisonc++: suite::gnu
+bitchx: filetransfer::dcc, interface::text-mode, network::client, protocol::ipv6, protocol::irc, role::program, uitoolkit::ncurses, use::chatting
+bitchx-dev: filetransfer::dcc, protocol::ipv6, protocol::irc, role::devel-lib, uitoolkit::gtk, use::chatting, x11::application
+bitchx-gtk: filetransfer::dcc, interface::x11, network::client, protocol::ipv6, protocol::irc, role::program, uitoolkit::gtk, uitoolkit::ncurses, use::chatting, x11::application
+bitchx-ssl: filetransfer::dcc, interface::text-mode, network::client, protocol::ipv6, protocol::irc, protocol::ssl, role::program, security::cryptography, uitoolkit::gtk, uitoolkit::ncurses, use::chatting, x11::application
+bitcollider: interface::commandline, network::client, network::service, protocol::http, role::program, use::scanning, works-with::file
+bitcollider-plugins: interface::commandline, network::service, protocol::http, role::plugin, use::scanning, works-with-format::wav, works-with::audio, works-with::image
+bitlbee: interface::daemon, network::server, protocol::irc, protocol::jabber, protocol::msn-messenger, protocol::oscar, protocol::ssl, protocol::yahoo-messenger, role::program, use::chatting, use::converting, use::proxying
+bitmap-mule: implemented-in::lisp, role::plugin, suite::emacs, use::editing, works-with::image, works-with::image:raster
+bitpim: hardware::TODO, hardware::usb, implemented-in::python, interface::x11, role::program, scope::application, uitoolkit::wxwidgets, use::synchronizing, works-with::pim, x11::application
+bitpim-lib: implemented-in::c, implemented-in::c++, implemented-in::python, role::plugin, special::auto-inst-parts
+bitscope: interface::x11, role::program, scope::utility, uitoolkit::gtk, use::viewing, works-with::audio, x11::application
+bittornado: implemented-in::python, interface::text-mode, interface::x11, network::client, network::server, network::service, protocol::bittorrent, role::program, uitoolkit::ncurses, use::downloading, works-with::file, x11::application
+bittornado-gui: implemented-in::python, interface::x11, network::client, network::server, network::service, protocol::bittorrent, role::program, uitoolkit::gtk, use::downloading, works-with::file, x11::application
+bittorrent: implemented-in::python, interface::text-mode, network::client, network::server, network::service, protocol::bittorrent, role::program, uitoolkit::ncurses, use::downloading, works-with::file, x11::application
+bittorrent-gui: implemented-in::python, interface::x11, network::client, network::server, network::service, role::program, uitoolkit::gtk, use::downloading, works-with::file, x11::application
+bjam: devel::buildtools, interface::commandline, role::program, scope::utility, works-with::software:source
+bk2site: interface::web, protocol::http, role::program, scope::utility, suite::netscape, use::browsing, use::converting, web::cgi, works-with-format::html, works-with::text
+bl: role::program, scope::utility
+black-box: game::puzzle, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+blackbook: interface::x11, role::program, scope::application, uitoolkit::gtk, use::organizing, works-with::pim, x11::applet
+blackbox: interface::x11, role::program, x11::window-manager
+blackbox-themes: x11::theme
+blacs-lam-dev: field::mathematics, implemented-in::fortran, role::devel-lib, special::auto-inst-parts
+blacs-lam-test: devel::testing-qa, field::mathematics, implemented-in::fortran, role::app-data, special::auto-inst-parts
+blacs-mpich-dev: field::mathematics, implemented-in::fortran, role::devel-lib, special::auto-inst-parts
+blacs-mpich-test: devel::testing-qa, field::mathematics, implemented-in::fortran, role::app-data, special::auto-inst-parts
+blacs-pvm-dev: field::mathematics, implemented-in::fortran, role::devel-lib, special::auto-inst-parts
+blacs-pvm-test: devel::testing-qa, field::mathematics, implemented-in::fortran, role::app-data, special::auto-inst-parts
+blacs-test-common: devel::testing-qa, field::mathematics, implemented-in::fortran, role::app-data, special::auto-inst-parts
+blacs1-lam: field::mathematics, implemented-in::fortran, role::shared-lib, special::auto-inst-parts
+blacs1-mpich: field::mathematics, implemented-in::fortran, role::shared-lib, special::auto-inst-parts
+blacs1-pvm: field::mathematics, implemented-in::fortran, role::shared-lib, special::auto-inst-parts
+blam: implemented-in::c-sharp, interface::x11, network::client, protocol::http, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::b, suite::gnome, uitoolkit::gtk, use::browsing, use::downloading, web::blog, works-with-format::xml, works-with-format::xml:rss, x11::application
+blas: devel::library, field::mathematics, implemented-in::fortran
+blas-dev: devel::library, field::mathematics, implemented-in::fortran
+blas-doc: role::documentation
+blas-test: devel::library, devel::testing-qa, field::mathematics
+blast: game::toys, interface::x11, role::program, use::gameplaying, x11::applet
+blast2: field::biology, implemented-in::c, interface::commandline, role::program, scope::utility, use::searching
+bld: interface::daemon, mail::filters, network::server, role::program, use::monitor, works-with::mail
+bld-postfix: interface::commandline, mail::filters, role::plugin, use::monitor, works-with::mail
+bld-tools: interface::commandline, mail::filters, role::program, scope::utility, use::monitor, works-with::mail
+blender: interface::3d, role::program, scope::application, uitoolkit::sdl, use::editing, works-with::3dmodel, x11::application
+blender-ogrexml: special::not-yet-tagged, special::not-yet-tagged::b
+blinkd: hardware::modem, interface::commandline, mail::notification, role::program, scope::utility
+blinken: interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+blitz++: devel::lang:c++, devel::library, field::mathematics, implemented-in::c++, role::devel-lib
+blktool: admin::configuring, admin::hardware, hardware::detection, hardware::storage, interface::commandline, role::program, scope::utility, use::configuring
+bloboats: game::arcade, implemented-in::c++, interface::x11, role::program, scope::application, use::gameplaying, x11::application
+blobwars: game::platform, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+blogtk: implemented-in::python, interface::x11, network::client, protocol::http, role::program, uitoolkit::gtk, use::editing, web::blog, x11::application
+bloksi: game::puzzle, interface::x11, suite::gnome, use::gameplaying
+blootbot: filetransfer::dcc, implemented-in::perl, protocol::irc, use::chatting
+blop: role::shared-lib, use::converting, works-with::audio
+blosxom: filetransfer::ftp, implemented-in::perl, interface::web, protocol::ftp, protocol::webdav, role::program, scope::application, use::editing, web::blog, works-with::text
+blt: devel::lang:tcl, devel::library, interface::x11, role::app-data, role::shared-lib, x11::application
+blt-demo: devel::examples, devel::lang:tcl, devel::library, implemented-in::shell, interface::x11, role::app-data, uitoolkit::tk
+blt-dev: devel::lang:tcl, devel::library, interface::x11, role::devel-lib
+bluefish: implemented-in::c, interface::x11, role::program, suite::gnome, uitoolkit::gtk, use::editing, works-with-format::html, works-with::text, x11::application
+bluemon: implemented-in::c, interface::daemon, role::program, scope::utility
+bluez-bcm203x: special::not-yet-tagged, special::not-yet-tagged::b
+bluez-cups: hardware::printer, role::app-data, uitoolkit::gtk, use::driver, use::printing
+bluez-firmware: hardware::TODO, special::not-yet-tagged, special::not-yet-tagged::b
+bluez-gnome: implemented-in::c, interface::x11, network::service, role::program, scope::utility, suite::gnome, uitoolkit::gtk, x11::application
+bluez-hcidump: implemented-in::c, interface::commandline, role::program, scope::utility, use::monitor
+bluez-passkey-gnome: uitoolkit::gtk
+bluez-pcmcia-support: hardware::printer, role::app-data, use::printing
+bluez-pin: hardware::printer, interface::x11, role::program, scope::application, uitoolkit::gtk, use::configuring, use::printing, x11::application
+bluez-utils: hardware::printer, implemented-in::c, interface::commandline, interface::daemon, network::server, role::program, scope::utility, use::printing
+bmagic: devel::library
+bmconf: admin::boot, interface::commandline, role::program, scope::utility, use::configuring
+bmon: interface::text-mode, network::scanner, role::program, scope::utility, uitoolkit::ncurses, use::monitor, works-with::network-traffic
+bmp-crossfade: interface::x11, role::plugin, sound::mixer, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+bmpx: uitoolkit::gtk
+bmpx-dev: devel::library, implemented-in::c, role::devel-lib, uitoolkit::gtk
+bmv: implemented-in::c, interface::svga, role::program, scope::utility, use::viewing, works-with-format::postscript, works-with::text
+bnetd: interface::daemon, network::server, network::service, role::program, use::gameplaying
+bnfc: devel::code-generator, devel::lang:c, devel::lang:c++, devel::lang:haskell, devel::lang:java, implemented-in::haskell, interface::commandline, role::program, scope::utility, works-with-format::tex, works-with::software:source, works-with::text
+bnlib1: devel::library, field::mathematics, role::shared-lib
+bnlib1-dev: devel::library, field::mathematics
+boa: interface::daemon, network::server, protocol::http, role::program, web::server, works-with-format::html, works-with::text
+boa-constructor: devel::ide, devel::lang:python, interface::x11, role::program, scope::application, uitoolkit::wxwidgets, works-with::software:source, x11::application
+bobot++: devel::lang:scheme, filetransfer::dcc, implemented-in::c++, interface::daemon, network::server, protocol::irc, role::program, use::chatting
+bochs: hardware::emulation, implemented-in::c++, interface::x11, role::program, scope::application, uitoolkit::sdl, uitoolkit::wxwidgets, x11::application
+bochs-doc: hardware::emulation, made-of::data:html, role::documentation
+bochs-sdl: hardware::emulation, implemented-in::c++, role::plugin, uitoolkit::sdl, x11::application
+bochs-svga: hardware::emulation, implemented-in::c++, interface::svga, role::plugin
+bochs-term: hardware::emulation, implemented-in::c++, interface::text-mode, role::plugin, uitoolkit::ncurses
+bochs-wx: hardware::emulation, implemented-in::c++, interface::x11, role::plugin, uitoolkit::wxwidgets, uitoolkit::wxwindows, x11::application
+bochs-x: hardware::emulation, implemented-in::c++, interface::x11, role::plugin, uitoolkit::sdl, uitoolkit::wxwidgets, x11::application
+bochsbios: hardware::emulation, implemented-in::c++, role::app-data, uitoolkit::sdl
+bock: devel::compiler, works-with::software:source
+bogl-bterm: devel::library, interface::framebuffer, role::program, scope::utility, works-with::text, works-with::unicode, x11::terminal
+bogofilter: implemented-in::c, interface::commandline, mail::filters, role::program, scope::utility, use::scanning, works-with::db, works-with::mail
+bogofilter-bdb: mail::filters, role::program, works-with::mail
+bogofilter-common: mail::filters
+bogosort: implemented-in::c, interface::commandline, role::program, scope::utility, works-with::text
+boinc-app-seti: field::astronomy, field::physics, implemented-in::c++, role::plugin
+boinc-client: field::astronomy, field::biology, field::chemistry, field::mathematics, field::physics, field::statistics, implemented-in::c, interface::commandline, network::client, protocol::http, role::program, use::TODO, use::special:todo
+boinc-dev: implemented-in::c++, role::devel-lib
+boinc-manager: implemented-in::c++, role::program, uitoolkit::wxwindows
+bombardier: game::arcade, interface::text-mode, role::program, suite::gnu, uitoolkit::ncurses, use::gameplaying
+bomberclone: game::arcade, interface::x11, protocol::ipv6, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+bomberclone-data: game::arcade, interface::x11, protocol::ipv6, role::app-data, uitoolkit::sdl, use::gameplaying, x11::application
+bombermaze: game::arcade, interface::x11, role::program, suite::gnome, uitoolkit::gtk, use::gameplaying, x11::application
+bonfire: role::dummy, special::obsolete
+bongo: implemented-in::lisp, interface::text-mode, role::program, sound::player, suite::emacs, use::playing, works-with::audio
+bonnie++: admin::benchmarking, hardware::storage, implemented-in::c++, interface::commandline, role::program, scope::utility, use::checking
+bonobo: devel::library, devel::rpc, interface::x11, protocol::corba, role::program, scope::utility, suite::gnome, uitoolkit::gtk, works-with-format::xml, x11::application
+bonobo-activation: devel::library, devel::rpc, interface::x11, protocol::corba, role::dummy, suite::gnome, uitoolkit::gtk, works-with-format::xml, x11::application
+bonobo-conf: devel::library, devel::rpc, interface::x11, protocol::corba, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::configuring, works-with-format::xml, x11::application
+bonsai: devel::lang:sql, devel::rcs, implemented-in::perl, interface::web, network::server, role::program, suite::mozilla, web::cgi, works-with::db
+boo: devel::compiler, devel::ecma-cli, devel::interpreter, implemented-in::c-sharp, role::program
+bookcase: interface::x11, role::dummy, role::program, scope::application, uitoolkit::qt, use::organizing
+bookmark-merge: implemented-in::perl, interface::commandline, protocol::http, role::program, scope::utility, suite::mozilla, suite::netscape, use::synchronizing, works-with::db
+bookmarkbridge: interface::x11, role::program, scope::utility, suite::mozilla, uitoolkit::qt, use::synchronizing, x11::application
+bookmarks: made-of::data:html, protocol::http, role::data, suite::debian, use::browsing
+bookview: uitoolkit::tk
+bool: implemented-in::c, interface::commandline, role::program, scope::utility, suite::gnu, use::searching, works-with::text
+boost-build: devel::buildtools
+boot-icons: special::not-yet-tagged, special::not-yet-tagged::b
+bootcd: admin::boot, admin::filesystem, hardware::storage:cd, hardware::storage:floppy, role::app-data, role::program, scope::utility
+bootcd-hppa: admin::boot, admin::filesystem, admin::hardware, hardware::storage, hardware::storage:cd, role::plugin, role::program, scope::utility
+bootcd-i386: admin::backup, admin::boot, admin::filesystem, admin::hardware, hardware::storage, hardware::storage:cd, role::plugin, role::program, scope::utility
+bootcd-ia64: admin::boot, admin::filesystem, admin::hardware, hardware::storage, hardware::storage:cd, role::plugin
+bootcd-mkinitrd: admin::boot, admin::filesystem, hardware::storage, hardware::storage:cd, role::plugin, role::program, scope::utility
+bootchart: admin::benchmarking, admin::boot, role::program, use::viewing, works-with-format::png, works-with-format::svg, works-with::image, works-with::image:raster, works-with::image:vector
+bootchart-view: admin::benchmarking, admin::boot, role::program, use::viewing, works-with-format::png, works-with-format::svg, works-with::image, works-with::image:raster, works-with::image:vector
+bootp: admin::boot, interface::daemon, network::configuration, network::server, protocol::dhcp, role::program, use::configuring
+bootparamd: admin::boot, interface::daemon, network::configuration, network::server, protocol::dhcp, role::program, use::configuring
+bootpc: admin::boot, interface::daemon, network::client, network::configuration, protocol::dhcp, protocol::dns, protocol::ip, role::program, use::configuring
+bootsplash: admin::boot, interface::framebuffer, role::program
+bopm: filetransfer::dcc, interface::daemon, network::server, protocol::irc, role::program, use::chatting, use::monitor, use::proxying
+bos: game::strategy, role::app-data, role::program, use::gameplaying
+boson: game::strategy, implemented-in::c++, interface::3d, role::program, scope::application, suite::kde, uitoolkit::qt, use::gameplaying
+boson-base: game::strategy, suite::kde, uitoolkit::qt, use::gameplaying
+boson-data: game::strategy, role::app-data, suite::kde, use::gameplaying
+boson-dbg: devel::library
+boson-music: game::strategy, role::app-data, suite::kde, use::gameplaying
+bottlerocket: field::electronics, game::toys, implemented-in::c, interface::commandline, interface::x11, role::program, scope::utility, uitoolkit::tk, use::driver, x11::application
+bouml: devel::modelling, implemented-in::c++, role::program
+boust: interface::x11, uitoolkit::tk, use::viewing, x11::application
+boxes: interface::commandline, role::program, scope::utility, works-with::mail
+boxshade: accessibility::special:not-applicable, admin::special:not-applicable, culture::special:not-applicable, devel::prettyprint, devel::special:not-applicable, field::biology, game::special:not-applicable, implemented-in::c, interface::commandline, junior::special:not-applicable, made-of::special:not-applicable, role::program, scope::utility, use::converting, works-with-format::html, works-with-format::plaintext, works-with-format::postscript, works-with-format::special:todo, works-with-format::tex, works-with::special:todo, works-with::text
+bozohttpd: interface::daemon, network::server, protocol::http, protocol::ipv6, role::program, web::server, works-with-format::html, works-with::text
+bpalogin: admin::login, interface::shell, network::client, network::configuration, role::program, use::dialing, use::login
+bplay: interface::commandline, role::program, scope::utility, sound::player, use::playing, use::storing, works-with-format::wav, works-with::audio
+br2684ctl: admin::configuring, admin::hardware, admin::kernel, hardware::modem, hardware::modem:dsl, hardware::usb, implemented-in::c, interface::commandline, protocol::atm, protocol::ethernet, role::program, scope::utility, use::configuring, use::driver
+brag: implemented-in::tcl, interface::commandline, network::client, protocol::nntp, role::program, use::downloading, works-with::archive
+brahms: interface::x11, sound::midi, uitoolkit::qt, use::editing, works-with::music-notation
+brasero: hardware::storage:cd, hardware::storage:dvd, role::program, uitoolkit::gtk, use::storing
+brazilian-conjugate: culture::brazilian, field::linguistics, interface::commandline, role::program, scope::utility, works-with::dictionary
+brickos: devel::library, game::toys, hardware::embedded, role::devel-lib, use::driver
+brickos-doc: devel::doc, game::toys, hardware::embedded, made-of::data:html, role::documentation, use::driver, use::gameplaying
+bridge-utils: interface::commandline, network::configuration, network::routing, protocol::ethernet, role::program, scope::utility, use::routing
+brightside: interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, x11::applet
+briquolo: game::arcade, interface::3d, interface::x11, role::program, use::gameplaying, x11::application
+bristol: hardware::emulation, interface::x11, sound::midi, works-with::audio, x11::application
+brltty: accessibility::screen-reader, implemented-in::c, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::driver
+browser-history: admin::logging, interface::web, protocol::http, role::plugin, suite::netscape, use::monitor, web::browser, web::cgi, works-with-format::html, works-with::text
+brutalchess: game::board, game::board:chess, interface::3d, interface::x11, role::program, use::gameplaying
+brutefir: interface::commandline, role::program, scope::utility, sound::mixer, use::converting, works-with::audio
+bsc: uitoolkit::qt
+bsdgames: game::adventure, game::board, game::puzzle, game::simulation, game::toys, implemented-in::c, interface::commandline, interface::text-mode, role::program, uitoolkit::ncurses, use::gameplaying
+bsdgames-nonfree: game::rpg, game::rpg:rogue, implemented-in::c, interface::text-mode, role::program, uitoolkit::ncurses, use::gameplaying
+bsdiff: implemented-in::c, interface::commandline, role::program, scope::utility, use::synchronizing, works-with::TODO
+bsdmainutils: implemented-in::c, interface::commandline, interface::text-mode, role::program, uitoolkit::ncurses
+bsdtar: admin::backup, admin::file-distribution, devel::packaging, interface::commandline, role::program, scope::utility, use::storing, works-with-format::tar, works-with::archive, works-with::file
+bsdutils: admin::logging, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::software:running, works-with::text
+bse-alsa: works-with::audio
+bsfilter: mail::filters, special::not-yet-tagged, special::not-yet-tagged::b
+bsh: devel::interpreter, devel::lang:java, implemented-in::java, interface::shell, role::program, scope::utility
+bsh-doc: role::documentation
+bsign: admin::monitoring, security::integrity, use::checking
+bsmtpd: interface::daemon, mail::smtp, network::server, protocol::smtp, role::program, works-with::mail
+btscanner: uitoolkit::ncurses
+btyacc: devel::code-generator
+bubblefishymon: admin::monitoring, interface::x11, role::program, scope::utility, suite::gnustep, uitoolkit::gtk, use::monitor, x11::applet
+bubblemon: admin::monitoring, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::monitor, x11::applet
+buffer: interface::commandline, role::program, scope::utility
+buffy: implemented-in::c++, interface::x11, mail::notification, role::program, uitoolkit::gtk, use::browsing, use::monitor, works-with::mail, x11::application
+bug: devel::bugtracker, interface::commandline, protocol::smtp, role::dummy, special::obsolete, suite::debian, works-with::bugs
+bug-buddy: implemented-in::c, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, works-with::bugs, x11::application
+bugsquish: game::arcade, interface::x11, junior::arcade, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+bugsx: field::mathematics, game::toys, implemented-in::c, interface::x11, use::gameplaying, x11::application
+bugzilla: devel::bugtracker, implemented-in::perl, interface::web, network::server, protocol::http, role::program, web::cgi, works-with-format::html, works-with::bugs, works-with::text
+bugzilla-doc: devel::bugtracker, interface::web, made-of::data:html, made-of::data:sgml, protocol::http, role::documentation, web::cgi, works-with::bugs
+buici-clock: interface::x11, role::program, scope::utility, use::timekeeping, x11::application
+build-essential: devel::packaging, interface::commandline, role::data, suite::debian
+buildtool: devel::buildtools, interface::commandline, role::program, scope::utility, works-with::software:source
+buildtool-doc: devel::buildtools, interface::commandline, made-of::data:html, role::documentation, works-with::software:source
+bum: uitoolkit::gtk
+bumprace: game::arcade, interface::x11, junior::arcade, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+bumprace-data: game::arcade, interface::x11, role::app-data, special::auto-inst-parts, uitoolkit::sdl, use::gameplaying, x11::application
+buoh: uitoolkit::gtk
+burgerspace: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+burn: hardware::storage, hardware::storage:cd, interface::commandline, role::program, scope::utility, use::storing, works-with-format::iso9660, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::archive, works-with::audio
+busybox: admin::filesystem, admin::recovery, interface::commandline, interface::shell, role::program, scope::utility, works-with::archive, works-with::file, works-with::text
+busybox-static: admin::recovery, interface::shell, role::program, scope::utility, use::login, works-with::file
+buthead: interface::commandline, role::program, scope::utility, use::converting, works-with::text
+buxon: implemented-in::python, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::browsing, works-with-format::xml, works-with::file
+bvi: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::editing, works-with::file
+bwbar: interface::commandline, network::scanner, role::program, scope::utility, use::monitor, works-with-format::png, works-with::image:raster, works-with::network-traffic
+bwbasic: devel::interpreter, interface::commandline, role::program, scope::utility, works-with::software:source
+bwidget: devel::lang:tcl, devel::library, interface::x11, role::app-data, uitoolkit::tk, x11::application
+bwm: interface::commandline, network::scanner, role::program, scope::utility, use::monitor, works-with::network-traffic
+bwm-ng: uitoolkit::ncurses, works-with::network-traffic
+bximage: admin::boot, hardware::emulation, implemented-in::c++, interface::commandline, role::program, scope::utility
+byacc: devel::code-generator, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::software:source
+bygfoot: game::strategy, interface::x11, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+byzanz: uitoolkit::gtk
+bzflag: game::arcade, interface::3d, junior::games-gl, network::client, role::program, uitoolkit::ncurses, uitoolkit::sdl, use::gameplaying, x11::application
+bzflag-server: game::arcade, interface::3d, interface::daemon, network::server, network::service, protocol::ssl, role::program, uitoolkit::ncurses, use::gameplaying
+bzip2: implemented-in::c, interface::commandline, role::program, scope::utility, use::compressing, works-with::archive, works-with::file
+bzr: devel::rcs, interface::commandline, role::program, scope::application
+bzr-svn: devel::rcs, implemented-in::python, protocol::http, role::plugin
+c++-annotations: devel::lang:c++, role::dummy, special::meta, use::learning
+c++-annotations-dvi: devel::lang:c++, made-of::data:tex, role::documentation, use::learning
+c++-annotations-html: devel::lang:c++, made-of::data:html, role::documentation, use::learning
+c++-annotations-latex: devel::lang:c++, made-of::data:tex, role::documentation, use::learning
+c++-annotations-pdf: devel::lang:c++, made-of::data:pdf, role::documentation, use::learning
+c++-annotations-ps: devel::lang:c++, made-of::data:postscript, role::documentation, use::learning
+c++-annotations-txt: devel::lang:c++, role::documentation, use::learning
+c-cpp-reference: devel::doc, devel::lang:c, role::documentation
+c-sig: role::plugin, suite::emacs, use::editing
+c2050: hardware::printer, role::special:not-applicable, use::printing
+c2hs: devel::code-generator, devel::lang:haskell, implemented-in::haskell, role::program, scope::utility, use::converting, works-with::software:source
+c2hs-doc: role::documentation
+c2html: devel::lang:c, devel::prettyprint, implemented-in::c, interface::commandline, interface::web, role::program, scope::utility, web::cgi, works-with-format::html, works-with::software:source, works-with::text
+c2man: devel::docsystem, devel::lang:c, interface::commandline, role::program, special::obsolete, use::converting, works-with-format::html, works-with-format::man, works-with-format::tex, works-with::software:source, works-with::text
+c2n: special::not-yet-tagged, special::not-yet-tagged::c
+c3270: uitoolkit::ncurses
+ca-certificates: protocol::ssl, role::app-data, security::authentication
+cabber: protocol::jabber, special::not-yet-tagged, special::not-yet-tagged::c, uitoolkit::ncurses, use::chatting
+cabextract: interface::commandline, role::program, scope::utility, works-with::archive
+cabot: special::not-yet-tagged, special::not-yet-tagged::c
+caca-utils: interface::text-mode, uitoolkit::ncurses, use::viewing, works-with::image, works-with::image:raster
+cacao: devel::interpreter, devel::lang:java, devel::runtime, implemented-in::c, role::program
+cacti: use::monitor
+cacti-cactid: admin::monitoring, interface::daemon, protocol::snmp, role::program, scope::utility, use::monitor
+cadaver: interface::text-mode, network::client, protocol::webdav, role::program, uitoolkit::ncurses
+cadubi: use::editing
+calamaris: admin::benchmarking, admin::monitoring, implemented-in::perl, interface::commandline, interface::text-mode, interface::web, role::program, use::checking, use::monitor, use::proxying, works-with::logfile
+calc: role::plugin, suite::emacs, suite::gnu
+calcoo: field::mathematics, interface::x11, uitoolkit::gtk, x11::application
+calctool: role::dummy
+calcurse: implemented-in::c, interface::commandline, role::program, uitoolkit::ncurses, use::organizing, works-with::pim
+calife: admin::login, admin::user-management, interface::commandline, security::authentication
+cam: interface::text-mode, sound::mixer, uitoolkit::ncurses
+camas: devel::library, interface::daemon, mail::user-agent, network::server, protocol::imap, protocol::smtp, role::program, works-with::mail
+came: works-with::image, works-with::image:raster, works-with::video
+camediaplay: hardware::camera, hardware::usb, interface::commandline, works-with::image, works-with::image:raster
+cameleon: devel::ide, devel::lang:ocaml, devel::library, implemented-in::ocaml, role::program, scope::utility, uitoolkit::gtk, uitoolkit::ncurses
+cameleon-doc: devel::doc, devel::lang:ocaml, implemented-in::ocaml, role::documentation
+camera.app: hardware::camera, implemented-in::objc, special::not-yet-tagged, special::not-yet-tagged::c, suite::gnustep, uitoolkit::gnustep
+camlidl: devel::lang:ml, devel::lang:ocaml, implemented-in::ocaml
+camlidl-doc: devel::lang:ocaml, devel::prettyprint, role::documentation
+camlp4-doc: devel::doc, devel::lang:ml, role::documentation
+camorama: hardware::camera, interface::x11, role::program, special::not-yet-tagged, special::not-yet-tagged::c, suite::gnome, uitoolkit::gtk, use::storing, works-with::image, works-with::image:raster, works-with::video, x11::application
+camserv: hardware::camera, interface::daemon, network::server, role::program
+camserv-relay: interface::daemon, network::server, role::program
+camstream: hardware::camera, hardware::video, implemented-in::c++, interface::x11, role::program, uitoolkit::qt, works-with::image:raster, works-with::video, x11::application
+camstream-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::c
+canna: culture::japanese, interface::daemon, network::server, role::program, works-with::dictionary
+canna-shion: culture::japanese, made-of::data:dictionary, role::app-data
+canna-utils: culture::japanese
+cantlr: special::not-yet-tagged, special::not-yet-tagged::c
+cantus: role::program, scope::application, suite::gnome, uitoolkit::gtk, use::organizing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+cantus3: special::not-yet-tagged, special::not-yet-tagged::c
+capi4hylafax: hardware::modem, uitoolkit::gtk, works-with::fax
+capisuite: special::not-yet-tagged, special::not-yet-tagged::c, works-with::fax
+capiutils: admin::configuring, admin::hardware, hardware::modem, implemented-in::c, interface::special:not-yet-tagged, role::program, scope::utility, works-with::special:not-yet-tagged
+capplets: implemented-in::c, suite::gnome, uitoolkit::gtk, use::configuring
+capplets-data: role::app-data, special::auto-inst-parts, suite::gnome, uitoolkit::gtk, use::configuring
+cappuccino: game::toys, interface::x11, role::program, suite::gnome, uitoolkit::gtk, use::gameplaying, x11::application
+caps: role::plugin, special::not-yet-tagged, special::not-yet-tagged::c
+carpaltunnel: special::not-yet-tagged, special::not-yet-tagged::c
+caspar: admin::configuring, use::typesetting, works-with-format::docbook, works-with::text
+caspar-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::c
+casper: admin::boot, admin::filesystem, implemented-in::shell, protocol::smb, role::plugin, scope::utility, special::completely-tagged, works-with-format::iso9660
+cassbeam: special::not-yet-tagged, special::not-yet-tagged::c
+castle-combat: game::strategy, role::program, uitoolkit::sdl, use::gameplaying
+castle-combat-data: role::app-data, special::not-yet-tagged, special::not-yet-tagged::c
+casu: implemented-in::c, interface::commandline, use::chatting
+catdoc: interface::commandline, interface::x11, role::program, uitoolkit::tk, use::converting, works-with-format::tex, works-with::dtp, works-with::text, x11::application
+catdvi: interface::commandline, role::program, use::converting, works-with-format::tex, works-with::text
+caudium: interface::daemon, network::server, network::service, protocol::http, role::program, web::browser
+caudium-dev: devel::library, interface::daemon, network::service, protocol::http, role::devel-lib, web::browser
+caudium-modules: interface::daemon, network::server, network::service, protocol::http, role::program, web::browser
+caudium-perl: devel::lang:perl, network::service, protocol::http, web::browser
+caudium-pixsl: interface::daemon, network::server, network::service, protocol::http, role::program, web::browser
+caudium-ultralog: interface::daemon, network::server, network::service, protocol::http, role::program, web::browser, works-with::logfile
+cbedic: works-with::dictionary
+cbios: special::not-yet-tagged, special::not-yet-tagged::c
+cbmconvert: hardware::emulation, interface::commandline, works-with::file
+cbmlink: special::not-yet-tagged, special::not-yet-tagged::c
+cbmlink-cbmc2n: special::not-yet-tagged, special::not-yet-tagged::c
+cbmlink-cbmprg: special::not-yet-tagged, special::not-yet-tagged::c
+cbmlink-cbmutils: special::not-yet-tagged, special::not-yet-tagged::c
+cbrowser: devel::lang:c
+cbrpager: uitoolkit::gtk
+ccache: devel::compiler, role::program, scope::utility, use::TODO, works-with::software:source
+ccal: role::program, scope::application, works-with::pim
+cccc: devel::lang:c, devel::testing-qa
+cccd: hardware::storage:cd, interface::x11, sound::player, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+ccd2iso: hardware::storage:cd, role::program, scope::utility, use::converting, works-with-format::iso9660
+ccmalloc: devel::debugger, devel::profiler
+ccontrol: devel::buildtools, devel::lang:c, devel::lang:c++, implemented-in::c, implemented-in::python, implemented-in::shell, interface::commandline, role::program, scope::utility, works-with::software:source
+ccrypt: interface::commandline, security::cryptography
+ccs: special::not-yet-tagged, special::not-yet-tagged::c
+ccze: devel::prettyprint, interface::commandline, role::program, scope::utility, use::checking, use::filtering, use::monitor, use::searching, use::viewing, works-with::logfile, works-with::software:running, works-with::software:source, works-with::text
+cd-circleprint: hardware::storage, hardware::storage:cd
+cd-discid: hardware::storage, hardware::storage:cd, interface::commandline, protocol::http, role::program, works-with-format::iso9660, works-with::archive
+cdargs: interface::text-mode, uitoolkit::ncurses
+cdbackup: admin::backup, hardware::storage, hardware::storage:cd, use::storing
+cdbs: devel::buildtools, devel::packaging, role::TODO, suite::debian
+cdcat: special::not-yet-tagged, special::not-yet-tagged::c, uitoolkit::qt
+cdcd: hardware::storage, hardware::storage:cd, interface::commandline, interface::text-mode, role::program, sound::player, uitoolkit::ncurses, use::playing, works-with::audio
+cdck: hardware::storage:cd, hardware::storage:dvd, implemented-in::c++, interface::commandline, role::program, scope::utility, use::checking, works-with-format::iso9660
+cdcontrol: hardware::storage, hardware::storage:cd, use::storing, works-with-format::iso9660, works-with::archive
+cdcover: hardware::storage, hardware::storage:cd
+cdd-common: special::not-yet-tagged, special::not-yet-tagged::c
+cdd-dev: role::app-data, suite::debian
+cdd-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::c
+cdda2wav: hardware::storage, hardware::storage:cd, interface::commandline, role::program, scope::utility, works-with-format::iso9660, works-with::archive, works-with::audio
+cddb: hardware::storage, hardware::storage:cd, network::client, role::program
+cddb.bundle: special::not-yet-tagged, special::not-yet-tagged::c
+cdebconf: devel::packaging, implemented-in::c, suite::debian, uitoolkit::gtk
+cdebootstrap: admin::TODO, devel::debian, interface::commandline, role::program, suite::debian
+cdecl: devel::lang:c
+cdfs-src: admin::filesystem, admin::kernel, hardware::storage, hardware::storage:cd, role::source
+cdlabelgen: hardware::storage:cd, implemented-in::perl, interface::commandline, role::program, works-with-format::postscript
+cdparanoia: hardware::storage, hardware::storage:cd, interface::commandline, role::program, works-with-format::iso9660, works-with::archive
+cdrbq: hardware::storage, hardware::storage:cd, implemented-in::tcl, interface::x11, role::program, uitoolkit::tk, use::storing, works-with-format::iso9660, works-with::archive, x11::application
+cdrdao: hardware::storage:cd, interface::commandline, role::program, scope::utility, use::storing, works-with-format::iso9660, works-with::archive
+cdrecord: hardware::storage, hardware::storage:cd, interface::commandline, role::dummy, special::obsolete, use::storing, works-with-format::iso9660, works-with::archive
+cdrskin: hardware::storage, hardware::storage:cd, interface::commandline, role::program, scope::utility, use::storing
+cdrtoaster: hardware::storage, hardware::storage:cd, interface::x11, uitoolkit::tk, works-with-format::iso9660, works-with::archive, x11::application
+cdrtools-doc: hardware::storage:cd, role::documentation, use::storing, works-with-format::iso9660, works-with::archive
+cdrw-taper: admin::backup
+cdtool: hardware::storage:cd, role::program, sound::player, use::playing, works-with::audio
+cduce: special::not-yet-tagged, special::not-yet-tagged::c, works-with-format::xml
+cdw: interface::text-mode, uitoolkit::ncurses, use::storing, works-with::file
+cdw-common: hardware::storage, hardware::storage:cd, role::shared-lib, use::storing, works-with-format::iso9660
+cecilia: field::arts, interface::x11, role::program, scope::application, sound::mixer, uitoolkit::tk, use::editing, works-with::audio, x11::application
+cedar-backup2: admin::backup, admin::recovery, devel::lang:python, hardware::storage:cd, implemented-in::python, interface::commandline, role::program, scope::utility, works-with-format::tar, works-with::archive
+cedar-backup2-doc: admin::backup, admin::recovery, devel::lang:python, hardware::storage:cd, implemented-in::python, interface::commandline, role::documentation, scope::utility, works-with-format::tar, works-with::archive
+cedet-common: implemented-in::lisp, interface::commandline, role::plugin, suite::emacs
+cedet-contrib: devel::code-generator, implemented-in::lisp, interface::commandline, role::plugin, suite::emacs, use::editing, works-with::software:source
+celestia: field::astronomy, interface::3d, suite::gnome, uitoolkit::gtk, uitoolkit::qt, use::gameplaying
+celestia-common: field::astronomy, interface::3d, role::app-data, special::auto-inst-parts, suite::gnome, uitoolkit::gtk, use::gameplaying, x11::application
+celestia-glut: field::astronomy, interface::x11
+celestia-gnome: field::astronomy, interface::3d, interface::x11, special::obsolete, suite::gnome, uitoolkit::gtk, x11::application
+cenon-doc: interface::x11, made-of::data:pdf, role::documentation, suite::gnustep, use::converting, works-with-format::pdf, works-with-format::postscript, works-with::image, works-with::image:vector, works-with::text, x11::applet
+cenon.app: implemented-in::objc, interface::x11, role::plugin, suite::gnustep, uitoolkit::gnustep, use::converting, works-with-format::pdf, works-with-format::postscript, works-with::image, works-with::image:vector, works-with::text, x11::applet
+centericq: interface::text-mode, mail::notification, network::client, protocol::jabber, protocol::msn-messenger, protocol::oscar, protocol::ssl, protocol::yahoo-messenger, role::program, uitoolkit::ncurses, use::chatting, works-with::im
+centericq-common: interface::text-mode, protocol::jabber, protocol::msn-messenger, protocol::ssl, protocol::yahoo-messenger, role::app-data, special::auto-inst-parts, uitoolkit::ncurses, use::chatting
+centericq-fribidi: culture::arabic, culture::hebrew, interface::text-mode, network::client, protocol::jabber, protocol::msn-messenger, protocol::ssl, protocol::yahoo-messenger, role::program, uitoolkit::ncurses
+centericq-utf8: interface::text-mode, network::client, protocol::jabber, protocol::msn-messenger, protocol::ssl, protocol::yahoo-messenger, role::program, uitoolkit::ncurses, works-with::text, works-with::unicode
+cernlib: field::physics, implemented-in::fortran, role::dummy, role::metapackage, special::meta
+cernlib-base: devel::code-generator, field::physics, implemented-in::fortran, interface::commandline, role::program, scope::utility, suite::debian, works-with::software:source
+cernlib-core: field::physics, implemented-in::fortran, role::dummy, role::metapackage, special::meta
+cernlib-core-dev: field::physics, implemented-in::fortran, role::dummy, role::metapackage, special::meta
+cernlib-extras: field::physics, implemented-in::fortran, role::dummy, role::metapackage, special::meta
+cernlib-montecarlo: field::physics, implemented-in::fortran, role::dummy, role::metapackage, special::meta
+cervisia: devel::rcs, interface::x11, role::program, scope::application, scope::utility, suite::kde, uitoolkit::qt, use::synchronizing, x11::application
+cfe: uitoolkit::ncurses, works-with::font
+cfengine: admin::cluster, admin::configuring, admin::file-distribution, implemented-in::perl, interface::commandline, network::service, protocol::ssl, role::program, scope::utility, use::configuring
+cfengine-doc: admin::cluster, admin::configuring, admin::file-distribution, interface::commandline, made-of::data:html, made-of::data:info, network::service, protocol::ssl, role::documentation, use::configuring
+cfengine2: admin::cluster, admin::configuring, admin::file-distribution, admin::filesystem, admin::monitoring, implemented-in::c, interface::commandline, interface::daemon, network::service, protocol::ssl, role::program, scope::utility, suite::gnu, use::configuring
+cfengine2-doc: admin::cluster, admin::configuring, admin::file-distribution, interface::commandline, made-of::data:html, made-of::data:info, network::service, protocol::ssl, role::documentation, suite::gnu, use::configuring
+cfgstoragemaker: implemented-in::perl, interface::commandline, network::scanner, role::program, scope::utility, use::configuring, use::monitor
+cfi-en: made-of::data:html, role::data
+cfi-sv: culture::swedish, made-of::data:html, made-of::data:tex, role::data
+cfingerd: interface::daemon, network::server, network::service, protocol::finger, role::program, use::scanning, works-with::people
+cflow: devel::lang:c, interface::commandline, role::program, scope::utility, suite::gnu, use::browsing, works-with::software:source
+cfortran: devel::lang:c, devel::lang:c++, devel::lang:fortran, role::devel-lib, use::converting
+cfs: admin::filesystem, interface::commandline, role::program, scope::utility, security::cryptography, use::storing
+cftp: filetransfer::ftp, interface::text-mode, network::client, protocol::ftp, role::program, uitoolkit::ncurses, use::downloading, works-with::file
+cfv: admin::backup, implemented-in::python, interface::commandline, role::program, scope::utility, security::integrity, use::checking, works-with::file
+cgdb: devel::debugger, devel::lang:c, implemented-in::c, interface::text-mode, uitoolkit::ncurses, works-with::software:running
+cget: special::not-yet-tagged, special::not-yet-tagged::c
+cgi-mapserver: field::geography, interface::web, network::server, role::program, web::cgi, works-with::image
+cgiemail: implemented-in::c, interface::web, network::server, protocol::http, protocol::smtp, role::program, web::cgi, works-with::mail
+cgiirc: implemented-in::perl, interface::web, network::client, protocol::irc, role::program, use::chatting, web::cgi
+cgilib: devel::lang:c, devel::library, implemented-in::c, protocol::http, role::app-data, web::cgi
+cgiwrap: admin::user-management, implemented-in::c, interface::web, network::server, protocol::http, role::program, scope::utility, web::cgi
+cgoban: game::board, interface::x11, role::program, use::gameplaying, x11::application
+cgvg: implemented-in::perl, interface::commandline, role::program, scope::utility, use::searching, works-with::software:source
+chaksem: role::plugin, use::viewing, works-with-format::tex, works-with::text
+chameleon: interface::commandline, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::viewing, x11::application
+changetrack: devel::rcs, implemented-in::perl, interface::commandline, role::program, scope::utility, use::configuring, use::monitor
+charmap.app: implemented-in::objc, interface::x11, role::plugin, suite::gnustep, uitoolkit::gnustep, use::configuring, works-with::font, x11::applet
+chase: interface::commandline, role::program, scope::utility, use::checking
+chasen: culture::japanese, field::linguistics, interface::commandline, role::program, scope::utility, works-with::dictionary
+chasen-cannadic: culture::japanese, field::linguistics, made-of::data:dictionary, role::app-data, use::searching
+chasen-dictutils: culture::japanese, field::linguistics, interface::commandline, role::program, scope::utility, use::searching, works-with::dictionary
+chbg: interface::x11, role::program, scope::application, uitoolkit::gtk, use::configuring, use::viewing, works-with::image, works-with::image:raster, x11::application, x11::screensaver
+chdrv: culture::chinese, culture::taiwanese
+chdrvfont: culture::chinese, culture::taiwanese, made-of::data:font, role::app-data
+check: devel::lang:c, devel::library, devel::testing-qa, role::shared-lib, works-with::software:source
+checkbot: implemented-in::perl, interface::commandline, network::client, protocol::http, role::program, use::checking, works-with-format::html, works-with::text
+checkgmail: devel::lang:perl, interface::x11, uitoolkit::gtk
+checkinstall: devel::buildtools, interface::commandline, role::program, scope::utility, use::monitor, works-with::software:package
+checkmp3: implemented-in::c, interface::commandline, role::program, scope::utility, use::checking, works-with-format::mp3, works-with::audio
+checkpolicy: admin::kernel, admin::user-management, devel::compiler, interface::commandline, role::program, scope::utility, security::TODO, works-with::software:source
+checkpw: interface::commandline, role::program, scope::utility, security::authentication, works-with::mail
+checksecurity: implemented-in::perl, interface::commandline, role::program, scope::utility, security::ids, use::scanning
+checkservice: implemented-in::perl, interface::commandline, network::scanner, role::program, scope::utility, use::checking
+checkstyle: devel::lang:java, devel::testing-qa, interface::commandline, role::program, scope::utility, use::checking, works-with::software:source
+cheesetracker: interface::x11, sound::mixer, uitoolkit::gtk, uitoolkit::qt, use::editing, works-with::audio, x11::application
+cheetah-common: devel::code-generator, devel::lang:python, implemented-in::python, interface::commandline, role::program, scope::utility
+chemeq: devel::interpreter, field::chemistry, implemented-in::c, interface::commandline, role::program, scope::utility, works-with-format::tex, works-with::text
+chemical-mime-data: field::biology, field::chemistry, role::app-data, use::organizing
+chemtool: field::chemistry, interface::x11, role::program, scope::application, uitoolkit::gtk, use::editing, works-with-format::svg, works-with::image, works-with::image:vector, x11::application
+cheops: interface::x11, protocol::ip, role::program, scope::application, uitoolkit::gtk, x11::application
+cheops-ng: uitoolkit::gtk, uitoolkit::ncurses
+cherokee: filetransfer::http, implemented-in::c, interface::daemon, network::hiavailability, network::server, network::service, protocol::http, protocol::ipv6, protocol::ssl, role::program, use::transmission, web::server
+cherrypy: devel::code-generator, devel::compiler, devel::lang:python, devel::lang:sql, implemented-in::python, interface::commandline, role::program, scope::application, works-with-format::html, works-with::db, works-with::software:source, works-with::text
+cherrypy-doc: devel::code-generator, devel::compiler, devel::doc, devel::lang:python, devel::lang:sql, interface::commandline, made-of::data:html, made-of::data:pdf, role::documentation, works-with-format::html, works-with::db, works-with::software:source, works-with::text
+cherrypy-examples: devel::code-generator, devel::compiler, devel::examples, devel::lang:python, devel::lang:sql, implemented-in::python, interface::commandline, role::app-data, works-with-format::html, works-with::db, works-with::software:source, works-with::text
+chiark-backup: admin::backup, interface::commandline, role::program, scope::utility
+chiark-really: admin::login, admin::user-management, interface::commandline, role::program, scope::utility, security::authentication, use::login
+chiark-rwbuffer: hardware::storage, interface::commandline, role::program, scope::utility, use::storing, works-with::archive, works-with::audio
+chiark-scripts: admin::user-management, interface::commandline, protocol::dns, role::program, scope::utility, use::checking, use::synchronizing
+chiark-utils-bin: interface::commandline, role::program, scope::utility, works-with::file
+chicken: devel::interpreter, devel::lang:c, devel::lang:scheme, interface::commandline, role::program, scope::utility, works-with::software:source
+childsplay: implemented-in::python, interface::x11, role::program, uitoolkit::sdl, use::learning
+childsplay-alphabet-sounds-ca: culture::catalan
+childsplay-alphabet-sounds-de: culture::german
+childsplay-alphabet-sounds-es: culture::spanish
+childsplay-alphabet-sounds-fr: culture::french
+childsplay-alphabet-sounds-it: culture::italian
+childsplay-alphabet-sounds-nl: culture::dutch
+childsplay-alphabet-sounds-pt: culture::portuguese
+childsplay-alphabet-sounds-ru: culture::russian
+childsplay-alphabet-sounds-sv: culture::swedish
+childsplay-lfc-names-ca: culture::catalan
+childsplay-lfc-names-fr: culture::french
+childsplay-lfc-names-nl: culture::dutch
+childsplay-plugins: special::not-yet-tagged, special::not-yet-tagged::c
+chill: devel::compiler, interface::commandline, role::metapackage, works-with::software:source
+chill-2.95: devel::compiler, interface::commandline, role::program, scope::utility, suite::gnu, works-with::software:source
+chimera2: interface::x11, network::client, protocol::http, role::program, uitoolkit::athena, use::browsing, web::browser, works-with-format::html, works-with::text, x11::application
+chinput: accessibility::input, culture::chinese, culture::taiwanese, interface::commandline, network::server, role::program
+chipmunk-log: field::electronics, role::program, scope::utility
+chipmunk-log-doc: field::electronics, role::documentation
+chise-db: accessibility::input, role::app-data, works-with::db
+chkrootkit: implemented-in::c, interface::commandline, role::program, scope::utility, security::ids
+chktex: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::checking, works-with-format::tex, works-with::text
+chmlib: role::shared-lib, use::compressing, use::viewing, works-with::archive
+chmlib-bin: interface::commandline, role::program, scope::utility, use::checking, use::compressing, use::viewing, works-with::archive
+chmlib-dev: devel::library, role::devel-lib, use::compressing, use::viewing, works-with::archive
+chntpw: admin::user-management, interface::commandline, role::program, scope::utility, security::authentication
+choosewm: admin::login, implemented-in::c, role::plugin, scope::utility, uitoolkit::gtk, use::login, x11::application
+chora2: implemented-in::php, interface::web, web::application, works-with::software:source
+chpax: admin::kernel, interface::commandline, role::program, scope::utility, special::obsolete
+chromium: game::arcade, interface::x11, uitoolkit::sdl, use::gameplaying, x11::application
+chromium-data: game::arcade, interface::x11, role::app-data, special::auto-inst-parts, use::gameplaying, x11::application
+chrony: interface::daemon, interface::text-mode, network::server, network::service, role::program, uitoolkit::ncurses, use::timekeeping
+chrootuid: admin::user-management, interface::daemon, network::server, role::program
+chrpath: interface::commandline, role::program, scope::utility, use::editing, works-with::file
+ciao-daemons: implemented-in::c++, role::program
+cimg-dev: devel::library, implemented-in::c++, role::devel-lib, works-with::image, works-with::image:raster, x11::library
+cinepaint: interface::x11, role::program, scope::application, uitoolkit::gtk, use::editing, works-with::image, works-with::image:raster, works-with::video, x11::application
+cinepaint-data: interface::x11, role::app-data, special::auto-inst-parts, uitoolkit::gtk, use::editing, works-with::image, works-with::image:raster, works-with::video, x11::application
+cipe-common: admin::kernel, implemented-in::c, network::vpn, role::app-data, security::cryptography
+cipe-source: admin::kernel, implemented-in::c, network::vpn, role::source, security::cryptography
+circ-tex: field::electronics, field::physics, interface::commandline, role::plugin, works-with-format::tex, works-with::text
+circlepack: field::mathematics, implemented-in::c, interface::x11, use::viewing, x11::application
+circuslinux: game::arcade, interface::x11, junior::arcade, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+circuslinux-data: game::arcade, interface::x11, junior::arcade, role::app-data, uitoolkit::sdl, use::gameplaying, x11::application
+cjet: admin::hardware, hardware::printer, interface::commandline, role::program, scope::utility, use::driver, use::printing
+cjk-latex: culture::chinese, culture::japanese, culture::korean, culture::taiwanese, implemented-in::TODO, implemented-in::c, role::plugin, use::editing, works-with-format::tex, works-with::text
+ckermit: admin::automation, admin::login, filetransfer::ftp, filetransfer::http, hardware::modem, implemented-in::c, interface::commandline, interface::daemon, interface::shell, network::client, network::server, protocol::ftp, protocol::http, protocol::ssh, role::program, scope::application, uitoolkit::ncurses, use::dialing, use::downloading, use::login, use::transmission, works-with::file
+cksfv: interface::commandline, role::program, scope::utility, security::integrity, use::checking
+cl-acl-compat: devel::lang:lisp, devel::library, implemented-in::lisp, use::converting
+cl-aima: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data
+cl-ansi-tests: devel::lang:lisp, devel::library, devel::testing-qa, implemented-in::lisp, use::checking
+cl-arnesi: devel::lang:lisp, implemented-in::lisp
+cl-asdf: devel::buildtools, devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data
+cl-aserve: devel::lang:lisp, devel::library, implemented-in::lisp, protocol::http, role::app-data
+cl-aspectl: devel::lang:lisp, implemented-in::lisp
+cl-awk: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data, use::scanning, works-with::text
+cl-base64: devel::lang:lisp, devel::library, implemented-in::lisp
+cl-binary-types: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data
+cl-blowfish: devel::lang:lisp, devel::library, implemented-in::lisp, security::cryptography
+cl-cclan: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data
+cl-cil: devel::lang:lisp, devel::library, game::board, game::board:chess, implemented-in::lisp, use::gameplaying
+cl-closer-mop: devel::lang:lisp, implemented-in::lisp
+cl-clue: devel::lang:lisp, devel::library, implemented-in::lisp, x11::library
+cl-clx-sbcl: devel::lang:lisp, devel::library, implemented-in::lisp, x11::library
+cl-contextl: devel::lang:lisp, implemented-in::lisp
+cl-csv: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data, use::text-formatting, works-with::text
+cl-defsystem3: devel::buildtools, devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data
+cl-environment: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data
+cl-f2cl: devel::lang:fortran, devel::lang:lisp, devel::library, implemented-in::lisp, use::converting, works-with::software:source
+cl-fad: devel::lang:lisp, implemented-in::lisp
+cl-faq: devel::doc, devel::lang:lisp, role::documentation
+cl-fiveam: devel::lang:lisp, implemented-in::lisp
+cl-ftp: devel::lang:lisp, devel::library, filetransfer::ftp, implemented-in::lisp, protocol::ftp, role::app-data, use::downloading
+cl-gd: devel::lang:lisp, devel::library, implemented-in::lisp, works-with::image, works-with::image:raster
+cl-geodesics: devel::lang:lisp
+cl-getopt: devel::lang:lisp, devel::library, implemented-in::lisp, interface::commandline
+cl-grt: devel::lang:lisp, devel::library, implemented-in::lisp, works-with::3dmodel
+cl-html-template: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data, works-with-format::html, works-with::text
+cl-htmlgen: devel::lang:lisp, devel::library, implemented-in::lisp, use::converting, works-with-format::html, works-with::software:source, works-with::text
+cl-hyperobject: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data, works-with-format::html, works-with-format::xml, works-with::text
+cl-infix: devel::lang:lisp
+cl-inflate: devel::lang:lisp, devel::library, implemented-in::lisp, use::compressing, works-with-format::zip, works-with::archive
+cl-integrate: devel::lang:lisp, devel::library, field::mathematics, implemented-in::lisp
+cl-interpol: devel::lang:lisp, devel::library, implemented-in::lisp
+cl-irc: devel::lang:lisp, devel::library, implemented-in::lisp, protocol::irc, use::chatting
+cl-irc-logger: admin::logging, devel::lang:lisp, devel::library, implemented-in::lisp, protocol::irc, use::chatting, works-with::logfile
+cl-ironclad: devel::lang:lisp, implemented-in::lisp, security::cryptography
+cl-iterate: devel::lang:lisp, devel::library, implemented-in::lisp
+cl-jpeg: devel::lang:lisp, devel::library, implemented-in::lisp, works-with-format::jpg, works-with::image, works-with::image:raster
+cl-kmrcl: devel::lang:lisp, devel::library, implemented-in::lisp
+cl-kpax: implemented-in::lisp
+cl-lexer: devel::code-generator, devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data
+cl-lml: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data, works-with-format::html, works-with::text
+cl-lml2: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data, works-with-format::html, works-with::text
+cl-lw-compat: devel::lang:lisp, implemented-in::lisp
+cl-mcclim: devel::lang:lisp, devel::library, devel::ui-builder, implemented-in::lisp, interface::x11, x11::library
+cl-mcclim-doc: devel::doc, devel::lang:lisp, devel::library, devel::ui-builder, interface::x11, made-of::data:postscript, role::documentation, x11::library
+cl-mcclim-examples: devel::examples, devel::lang:lisp, devel::library, devel::ui-builder, implemented-in::lisp, interface::x11, role::documentation, x11::library
+cl-md5: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data, security::integrity
+cl-memoization: devel::lang:lisp, devel::library, implemented-in::lisp
+cl-menusystem: devel::lang:lisp, devel::library, implemented-in::lisp
+cl-meta: devel::code-generator, devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data
+cl-metering: devel::lang:lisp, devel::library, devel::profiler, implemented-in::lisp, role::app-data
+cl-modlisp: devel::lang:lisp, devel::library, implemented-in::lisp, suite::apache
+cl-net-telent-date: devel::lang:lisp, devel::library, implemented-in::lisp, use::timekeeping
+cl-odcl: devel::lang:lisp
+cl-paip: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data
+cl-parse-number: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data
+cl-pdf: devel::lang:lisp, devel::library, implemented-in::lisp, use::converting, works-with-format::pdf, works-with::text
+cl-pg: devel::lang:lisp, devel::lang:sql, devel::library, implemented-in::lisp, role::app-data, works-with::db
+cl-photo: devel::lang:lisp, implemented-in::lisp, special::not-yet-tagged, special::not-yet-tagged::c
+cl-pipes: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data
+cl-plus: devel::debian, devel::lang:lisp, devel::library, implemented-in::lisp, works-with::software:package
+cl-png: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data, works-with-format::png, works-with::image, works-with::image:raster
+cl-port: devel::lang:lisp, devel::library, implemented-in::lisp
+cl-postoffice: devel::lang:lisp, devel::library, implemented-in::lisp, mail::imap, mail::pop, mail::smtp, protocol::imap, protocol::pop3, protocol::smtp, role::app-data
+cl-ppcre: devel::lang:lisp, devel::lang:perl, devel::library, implemented-in::lisp, use::searching
+cl-ptester: devel::lang:lisp, devel::library, devel::testing-qa, implemented-in::lisp, role::app-data
+cl-pubmed: devel::lang:lisp, devel::library, field::biology, implemented-in::lisp
+cl-puri: devel::lang:lisp, devel::library, implemented-in::lisp
+cl-qbook: devel::lang:lisp, implemented-in::lisp, made-of::data:tex, works-with-format::html, works-with::text
+cl-quick-arrays: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data
+cl-readline: devel::lang:lisp, devel::library, implemented-in::lisp, interface::commandline
+cl-regex: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data, use::searching
+cl-reversi: devel::lang:lisp, devel::library, game::board, implemented-in::lisp, role::app-data, use::gameplaying
+cl-reversi-clim: devel::lang:lisp, uitoolkit::motif, use::gameplaying
+cl-rfc2388: devel::lang:lisp, implemented-in::lisp
+cl-rlc: devel::lang:lisp, devel::library, field::electronics, hardware::emulation, implemented-in::lisp
+cl-rsm-bitcomp: devel::lang:lisp, devel::library, implemented-in::lisp, use::compressing
+cl-rsm-bool-comp: devel::lang:lisp, devel::library, implemented-in::lisp
+cl-rsm-cache: devel::lang:lisp, devel::library, implemented-in::lisp
+cl-rsm-delayed: devel::lang:lisp, devel::library, implemented-in::lisp
+cl-rsm-filter: devel::lang:lisp, devel::library, implemented-in::lisp
+cl-rsm-finance: devel::lang:lisp, devel::library, field::finance, implemented-in::lisp
+cl-rsm-fuzzy: devel::lang:lisp, devel::library, implemented-in::lisp
+cl-rsm-gen-prog: devel::lang:lisp, devel::library, implemented-in::lisp
+cl-rsm-genetic-alg: devel::lang:lisp, devel::library, implemented-in::lisp
+cl-rsm-memo: devel::lang:lisp, devel::library, implemented-in::lisp
+cl-rsm-mod: devel::lang:lisp, devel::library, field::mathematics, implemented-in::lisp
+cl-rsm-modal: devel::lang:lisp, devel::library, implemented-in::lisp
+cl-rsm-mpoly: devel::lang:lisp, devel::library, field::mathematics, implemented-in::lisp, role::app-data
+cl-rsm-queue: devel::lang:lisp, devel::library, implemented-in::lisp
+cl-rsm-rand: devel::lang:lisp, devel::library, implemented-in::lisp
+cl-rsm-random: devel::lang:lisp, devel::library, implemented-in::lisp
+cl-rsm-rsa: devel::lang:lisp, devel::library, implemented-in::lisp, security::cryptography
+cl-rsm-string: devel::lang:lisp, devel::library, implemented-in::lisp, works-with::text
+cl-rss: devel::lang:lisp, devel::library, implemented-in::lisp, protocol::http, use::downloading, works-with-format::xml, works-with-format::xml:rss
+cl-rt: devel::lang:lisp, devel::library, devel::testing-qa, implemented-in::lisp, role::app-data
+cl-s-base64: devel::lang:lisp, implemented-in::lisp
+cl-s-http-server: implemented-in::lisp, web::server
+cl-s-sysdeps: devel::lang:lisp, implemented-in::lisp
+cl-s-utils: devel::lang:lisp, implemented-in::lisp
+cl-s-xml: devel::lang:lisp, implemented-in::lisp, made-of::data:xml
+cl-salza: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data, use::compressing
+cl-screamer: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data
+cl-screen-sbcl: implemented-in::lisp
+cl-scribble: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data
+cl-sdl: devel::lang:lisp, devel::library, implemented-in::lisp, interface::x11, uitoolkit::sdl, x11::library
+cl-sdl-demos: devel::examples, devel::lang:lisp, devel::library, implemented-in::lisp, interface::3d, interface::x11, uitoolkit::sdl, x11::library
+cl-sdl-img: devel::lang:lisp, devel::library, implemented-in::lisp, interface::x11, uitoolkit::sdl, x11::library
+cl-sdl-mix: devel::lang:lisp, devel::library, implemented-in::lisp, interface::x11, uitoolkit::sdl, x11::library
+cl-sdl-opengl: devel::lang:lisp, devel::library, implemented-in::lisp, interface::3d, role::app-data, x11::library
+cl-sdl-ttf: devel::lang:lisp, devel::library, implemented-in::lisp, interface::x11, role::app-data, uitoolkit::sdl, works-with::font, x11::library
+cl-series: devel::lang:lisp, devel::library, implemented-in::lisp
+cl-soap: devel::lang:lisp, protocol::soap
+cl-speech-dispatcher: accessibility::speech, devel::lang:lisp, devel::library, implemented-in::lisp, works-with::audio
+cl-split-sequence: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data
+cl-sql: devel::lang:lisp, devel::lang:sql, devel::library, implemented-in::lisp, role::app-data, works-with::db
+cl-sql-aodbc: devel::lang:lisp, devel::lang:sql, devel::library, implemented-in::lisp, role::app-data, works-with::db
+cl-sql-mysql: devel::lang:lisp, devel::lang:sql, devel::library, implemented-in::lisp, role::app-data, works-with::db
+cl-sql-odbc: devel::lang:lisp, devel::lang:sql, devel::library, implemented-in::lisp, role::app-data, works-with::db
+cl-sql-oracle: devel::lang:lisp, devel::lang:sql, implemented-in::lisp, special::not-yet-tagged, special::not-yet-tagged::c, works-with::db
+cl-sql-postgresql: devel::lang:lisp, devel::lang:sql, devel::library, implemented-in::lisp, role::app-data, works-with::db
+cl-sql-postgresql-socket: devel::lang:lisp, devel::lang:sql, devel::library, implemented-in::lisp, role::app-data, works-with::db
+cl-sql-sqlite: devel::lang:lisp, devel::lang:sql, devel::library, implemented-in::lisp, role::app-data, works-with::db
+cl-sql-sqlite3: devel::lang:lisp, devel::lang:sql, implemented-in::lisp, special::not-yet-tagged, special::not-yet-tagged::c, works-with::db
+cl-sql-tests: devel::lang:lisp, devel::lang:sql, devel::library, devel::testing-qa, implemented-in::lisp, works-with::db
+cl-sql-uffi: devel::lang:lisp, devel::lang:sql, devel::library, implemented-in::lisp, works-with::db
+cl-ssl: devel::lang:lisp, devel::library, implemented-in::lisp, protocol::ssl, security::cryptography
+cl-statistics: devel::lang:lisp, devel::library, field::statistics, implemented-in::lisp, role::app-data
+cl-swank: implemented-in::lisp
+cl-syslog: devel::lang:lisp, devel::library, implemented-in::lisp, works-with::logfile
+cl-tbnl: devel::lang:lisp, implemented-in::lisp, made-of::data:html
+cl-tclink: devel::lang:lisp, devel::library, field::finance, implemented-in::lisp, protocol::ssl, role::app-data
+cl-ubf: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data
+cl-uffi: devel::lang:lisp, devel::library, implemented-in::lisp
+cl-uffi-tests: devel::lang:lisp, devel::library, devel::testing-qa, implemented-in::lisp
+cl-umlisp: devel::lang:lisp
+cl-umlisp-orf: devel::lang:lisp, implemented-in::lisp, special::not-yet-tagged, special::not-yet-tagged::c
+cl-unit: devel::lang:lisp, devel::library, devel::testing-qa, implemented-in::lisp, role::app-data
+cl-units: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data, use::converting
+cl-url-rewrite: devel::lang:lisp, implemented-in::lisp
+cl-utilities: devel::lang:lisp, implemented-in::lisp
+cl-webactions: devel::lang:lisp, devel::library, implemented-in::lisp, protocol::http, works-with-format::html, works-with::text
+cl-who: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data, works-with-format::html, works-with::text
+cl-xlunit: devel::lang:lisp, devel::library, devel::testing-qa, implemented-in::lisp, role::app-data
+cl-xmls: devel::lang:lisp, devel::library, implemented-in::lisp, role::app-data, works-with-format::xml
+cl-xptest: devel::lang:lisp, devel::library, devel::testing-qa, implemented-in::lisp, role::app-data
+cl-yacc: devel::code-generator, devel::lang:lisp, implemented-in::lisp, works-with::software:source
+cl-yaclml: devel::lang:lisp, implemented-in::lisp
+clamav: implemented-in::c, interface::commandline, role::program, scope::utility, security::antivirus, use::scanning, works-with::file, works-with::mail
+clamav-base: interface::commandline, role::app-data, security::antivirus, special::auto-inst-parts, use::scanning, works-with::file, works-with::mail
+clamav-daemon: implemented-in::c, interface::daemon, mail::filters, network::server, role::program, security::antivirus, use::scanning, works-with::file, works-with::mail
+clamav-data: interface::commandline, mail::filters, role::app-data, security::antivirus, works-with::file, works-with::mail
+clamav-dbg: devel::TODO, implemented-in::c, role::TODO
+clamav-docs: made-of::data:html, made-of::data:pdf, mail::filters, role::documentation, security::antivirus, works-with::file, works-with::mail
+clamav-freshclam: implemented-in::c, interface::commandline, interface::daemon, role::program, scope::utility, security::antivirus, use::downloading, works-with::file, works-with::mail
+clamav-getfiles: devel::debian, interface::commandline, security::antivirus, suite::debian, use::downloading, works-with::file, works-with::mail
+clamav-milter: implemented-in::c, interface::daemon, mail::filters, network::server, role::program, security::antivirus, use::scanning, works-with::mail
+clamav-testfiles: devel::testing-qa, interface::commandline, role::app-data, security::antivirus, use::checking
+clamcour: implemented-in::c++, interface::daemon, mail::filters, network::server, role::program, security::antivirus, use::scanning, works-with::mail
+clamsmtp: implemented-in::c, interface::daemon, mail::smtp, network::server, network::service, protocol::smtp, role::program, security::antivirus, use::proxying, use::scanning, works-with::mail
+clanbomber: game::arcade, interface::x11, role::program, use::gameplaying, x11::application
+clanbomber-data: game::arcade, interface::x11, role::app-data, use::gameplaying, x11::application
+clanlib-doc: devel::doc, game::arcade, made-of::data:html, role::documentation, works-with::software:source
+clanlib-examples: devel::doc, devel::examples, game::arcade, role::source
+clara: accessibility::ocr, implemented-in::c, interface::web, interface::x11, role::program, scope::application, use::converting, works-with::image, works-with::image:raster, x11::application
+classpath: devel::lang:java, devel::library, devel::runtime, role::shared-lib, suite::gnu, uitoolkit::gtk
+classpath-common: devel::lang:java, devel::library, devel::runtime, implemented-in::java, role::app-data, suite::gnu
+classpath-common-unzipped: devel::lang:java, devel::library, devel::runtime, implemented-in::java, role::app-data, suite::gnu
+classpath-doc: devel::doc, devel::lang:java, devel::library, devel::runtime, made-of::data:info, made-of::data:tex, role::documentation, suite::gnu
+classpath-gtkpeer: uitoolkit::gtk
+classpath-tools: devel::compiler, devel::lang:c, devel::lang:java, interface::commandline, role::program, scope::utility, works-with::software:source
+clc-intercal: devel::compiler, devel::interpreter, game::toys, interface::commandline, role::program, scope::utility, works-with::software:source
+cldump: devel::lang:sql, interface::commandline, role::program, scope::utility, use::converting, works-with::db
+cle: implemented-in::c, interface::shell, role::program, scope::utility
+clearsilver-dev: implemented-in::python, interface::commandline, role::devel-lib, works-with-format::html, works-with::text
+clex: admin::filesystem, mail::special:not-applicable, uitoolkit::ncurses
+cli-common: devel::lang:lisp, implemented-in::lisp
+cli-common-dev: devel::ecma-cli, devel::lang:c-sharp, devel::packaging, interface::commandline, role::program, scope::utility, suite::debian, works-with::software:source
+clif: devel::interpreter, devel::lang:c, interface::commandline, role::program, scope::utility, works-with::software:source
+clig: devel::code-generator, devel::docsystem, devel::lang:c, interface::commandline, role::program, scope::utility, works-with::software:source
+clipbook.app: implemented-in::objc, interface::x11, role::plugin, suite::gnustep, uitoolkit::gnustep, use::viewing, works-with::text, x11::applet
+clips: devel::interpreter, devel::lang:c, implemented-in::c, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses
+clips-common: devel::doc, devel::examples, devel::interpreter, devel::lang:c, implemented-in::c, made-of::data:html, role::app-data, special::auto-inst-parts
+clips-doc: devel::doc, devel::examples, devel::interpreter, devel::lang:c, made-of::data:pdf, role::documentation
+clisp: devel::debugger, devel::interpreter, devel::lang:lisp, devel::runtime, implemented-in::c, interface::commandline, interface::text-mode, role::program, scope::application, suite::gnu, works-with::software:source
+clisp-dev: devel::compiler, devel::debugger, devel::interpreter, devel::lang:lisp, devel::library, role::devel-lib, suite::gnu, uitoolkit::ncurses
+clisp-doc: devel::interpreter, devel::lang:lisp, made-of::data:html, made-of::data:postscript, made-of::data:tex, role::documentation, suite::gnu
+cloop-src: admin::kernel, role::source, use::compressing
+cloop-utils: interface::commandline, role::program, scope::utility, use::compressing
+cltl: devel::lang:lisp, implemented-in::lisp, special::not-yet-tagged, special::not-yet-tagged::c
+clue: devel::lang:lisp, role::dummy, special::obsolete
+clustalw: accessibility::special:not-yet-tagged, admin::special:not-applicable, culture::special:not-applicable, devel::special:not-applicable, field::biology, field::special:todo, filetransfer::special:not-applicable, game::special:not-applicable, hardware::special:not-applicable, implemented-in::c, interface::shell, interface::x11, junior::special:not-applicable, made-of::special:not-applicable, mail::special:not-applicable, network::special:not-applicable, protocol::special:not-applicable, role::program, scope::utility, security::special:not-applicable, sound::special:not-applicable, suite::special:not-applicable, uitoolkit::special:todo, use::special:todo, web::special:not-applicable, works-with-format::special:todo, works-with::TODO, works-with::special:todo, x11::application
+clustalw-mpi: field::biology, interface::commandline, network::client, role::program, scope::application
+clustalx: field::biology, uitoolkit::motif
+clusterssh: admin::cluster, implemented-in::perl, interface::x11, network::client, protocol::ssh, role::program, uitoolkit::tk, use::login, x11::application
+clvm: admin::cluster, admin::filesystem, hardware::storage, interface::daemon, network::server, role::program, uitoolkit::ncurses, use::configuring
+cm-super: made-of::data:tex
+cm-super-x11: made-of::data:tex, x11::font
+cmail: implemented-in::lisp, interface::commandline, mail::user-agent, network::client, role::plugin, role::program, suite::emacs, use::editing, works-with::mail
+cmail-icons: made-of::data:icons, mail::user-agent, role::app-data, suite::emacs, use::editing, works-with::mail
+cmake: devel::buildtools, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses
+cman: special::not-yet-tagged, special::not-yet-tagged::c
+cman-kernel-dev: special::not-yet-tagged, special::not-yet-tagged::c
+cmap-adobe-cns1: special::not-yet-tagged, special::not-yet-tagged::c
+cmap-adobe-gb1: special::not-yet-tagged, special::not-yet-tagged::c
+cmap-adobe-japan1: special::not-yet-tagged, special::not-yet-tagged::c
+cmap-adobe-japan2: special::not-yet-tagged, special::not-yet-tagged::c
+cmap-adobe-korea1: special::not-yet-tagged, special::not-yet-tagged::c
+cmatrix: game::toys, interface::text-mode, role::program, uitoolkit::ncurses, use::entertaining
+cmatrix-xfont: game::toys, made-of::data:font, role::app-data, x11::font
+cmix: devel::code-generator, devel::interpreter, devel::lang:c, implemented-in::c, implemented-in::c++, interface::commandline, interface::web, role::program, scope::utility, works-with::software:source
+cmml-tools: interface::commandline, role::program, scope::utility, use::editing, use::text-formatting, works-with::text
+cmt: role::plugin, role::shared-lib, sound::mixer, use::converting, works-with::audio
+cmucl: devel::compiler, devel::debugger, devel::ide, devel::interpreter, devel::lang:lisp, devel::profiler, devel::runtime, field::mathematics, implemented-in::lisp, interface::commandline, interface::text-mode, role::program, scope::application, scope::utility, works-with::software:source
+cmucl-clm: devel::debugger, devel::lang:lisp, interface::daemon, interface::x11, network::server, role::program, scope::application, uitoolkit::motif, x11::application
+cmucl-clx: devel::lang:lisp, role::dummy
+cmucl-defsystem: devel::lang:lisp, role::dummy
+cmucl-docs: devel::compiler, devel::doc, made-of::data:html, made-of::data:pdf, made-of::data:postscript, role::documentation
+cmucl-graystream: devel::lang:lisp, role::dummy
+cmucl-hemlock: devel::lang:lisp, role::dummy, use::editing
+cmucl-normal: devel::lang:lisp, role::dummy
+cmucl-safe: devel::lang:lisp, role::dummy
+cmucl-small: devel::lang:lisp, role::dummy
+cmucl-source: devel::compiler, devel::lang:lisp, role::source
+cmus: uitoolkit::ncurses, works-with-format::mpc
+cmuscheme48-el: devel::lang:scheme, implemented-in::lisp, suite::emacs
+cnews: interface::daemon, network::server, protocol::nntp, role::program
+cobex: hardware::modem, role::program
+coco-cs: implemented-in::c-sharp, special::not-yet-tagged, special::not-yet-tagged::c
+coco-doc: devel::code-generator, devel::lang:java, made-of::data:pdf, role::documentation
+coco-java: devel::code-generator, implemented-in::java, interface::commandline, role::program, scope::utility
+code2html: devel::prettyprint, implemented-in::perl, interface::commandline, interface::web, role::program, scope::utility, use::printing, web::cgi, works-with-format::html, works-with::software:source, works-with::text
+codebreaker: game::puzzle, interface::x11, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+codegroup: interface::commandline, role::program, scope::utility, use::converting, works-with::file, works-with::text
+codeine: uitoolkit::qt
+codeville: devel::rcs
+cogito: devel::rcs, implemented-in::perl, implemented-in::shell, interface::commandline, role::program, scope::special:not-yet-tagged
+cogre: implemented-in::lisp, interface::commandline, role::plugin, suite::emacs, use::editing, works-with::image, works-with::image:vector, works-with::software:source
+coldfire: uitoolkit::ncurses
+coldsync: devel::lang:perl, hardware::embedded, interface::commandline, role::program, scope::utility, use::synchronizing
+collatinus-doc: field::linguistics, made-of::data:html, made-of::data:pdf, role::documentation
+collectd: admin::hardware, admin::monitoring, admin::power-management, hardware::laptop, hardware::power, hardware::power:acpi, hardware::power:apm, hardware::power:ups, implemented-in::c, interface::daemon, role::program, scope::utility, use::monitor, works-with::network-traffic
+collectd-apache: admin::monitoring, implemented-in::c, role::plugin, scope::utility, use::monitor
+collectd-dbg: admin::monitoring, role::TODO, use::monitor
+collectd-dev: admin::monitoring, devel::lang:c, role::devel-lib
+collectd-hddtemp: admin::hardware, admin::monitoring, hardware::storage, implemented-in::c, interface::daemon, role::plugin, scope::utility, use::monitor
+collectd-mysql: admin::monitoring, implemented-in::c, interface::daemon, role::plugin, scope::utility, use::monitor, works-with::db
+collectd-ping: admin::monitoring, implemented-in::c, interface::daemon, network::hiavailability, network::scanner, protocol::ip, role::plugin, scope::utility, use::monitor
+collectd-sensors: admin::hardware, admin::monitoring, hardware::TODO, implemented-in::c, interface::daemon, role::plugin, scope::utility, use::monitor
+colordiff: devel::prettyprint, interface::commandline, role::program, scope::utility, use::synchronizing, works-with::text
+colorgcc: devel::prettyprint, implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, works-with::logfile
+colorize: role::dummy
+colormake: devel::buildtools, devel::prettyprint, implemented-in::perl, interface::commandline, role::program, scope::utility
+colrconv: interface::text-mode, network::client, role::program, uitoolkit::ncurses, use::login
+colrdx: uitoolkit::ncurses
+comedi-source: admin::kernel, role::devel-lib, role::source, use::driver
+comerr-dev: devel::library, role::devel-lib, works-with::logfile
+comix: implemented-in::python, interface::x11, role::program, uitoolkit::gtk, use::special:not-yet-tagged, works-with-format::TODO
+comixcursors: x11::theme
+common-lisp-controller: devel::compiler, devel::debian, devel::lang:lisp, devel::packaging, interface::commandline, role::program, scope::utility, suite::debian, use::organizing, works-with::software:package, works-with::software:source
+compartment: admin::user-management, interface::commandline, role::program, scope::utility, use::monitor, works-with::software:running
+compface: interface::commandline, role::program, scope::utility, use::compressing, use::converting, works-with::image, works-with::image:raster, works-with::mail
+compilercache: devel::compiler, devel::lang:c, devel::lang:c++, interface::commandline, use::proxying, works-with::software:source
+compiz: accessibility::screen-magnify, implemented-in::c, interface::3d, interface::x11, role::program, scope::application, special::meta, suite::gnome, uitoolkit::gtk, uitoolkit::xlib, x11::window-manager
+compiz-core: interface::x11, role::program, x11::application, x11::window-manager
+compiz-gnome: uitoolkit::gtk
+compiz-gtk: uitoolkit::gtk
+compiz-plugins: uitoolkit::gtk
+config-manager: devel::rcs, interface::commandline, protocol::ftp, protocol::http, role::program, scope::utility, use::synchronizing
+configlet-frontends: role::program, scope::utility, suite::debian, x11::applet
+configure-debian: admin::configuring, implemented-in::perl, interface::text-mode, role::program, scope::utility, suite::debian, use::configuring
+confluence: devel::compiler, devel::lang:c, devel::machinecode, field::electronics, interface::commandline, role::program, scope::utility, works-with::software:source
+conglomerate: interface::x11, role::program, scope::application, uitoolkit::gtk, use::editing, works-with-format::xml, x11::application
+conglomerate-common: devel::examples, interface::x11, role::app-data, uitoolkit::gtk, use::editing, works-with-format::xml, x11::application
+conky: admin::monitoring, interface::x11, role::program, uitoolkit::xlib, use::monitor, x11::applet
+connect.app: hardware::modem, implemented-in::objc, interface::daemon, network::server, role::plugin, role::program, suite::gnustep, use::dialing, x11::applet
+conquest: game::strategy, interface::text-mode, network::client, role::program, uitoolkit::ncurses, use::gameplaying
+conquest-data: game::strategy, role::app-data, use::gameplaying
+conquest-gl: game::strategy, interface::3d, network::client, role::program, uitoolkit::ncurses, use::gameplaying, x11::application
+conquest-libs: devel::library, game::strategy, interface::text-mode, role::shared-lib, uitoolkit::ncurses, use::gameplaying
+conquest-server: game::strategy, interface::daemon, interface::text-mode, network::server, role::program, scope::utility, uitoolkit::ncurses, use::gameplaying
+cons: devel::buildtools, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::gnu
+conserver-client: network::client, role::program
+conserver-server: interface::daemon, network::server, role::program
+console-common: admin::configuring, hardware::input, role::app-data, special::auto-inst-parts, use::configuring
+console-cyrillic: admin::configuring, culture::bulgarian, culture::mongolian, culture::russian, culture::serbian, culture::slovak, culture::ukrainian, hardware::input, made-of::data:font, role::app-data, use::configuring
+console-data: admin::configuring, hardware::input:keyboard, made-of::data:font, role::app-data, use::configuring
+console-log: interface::daemon, network::server, role::program, security::forensics, suite::debian, use::viewing, works-with::logfile
+console-setup: admin::configuring, hardware::input:keyboard, implemented-in::shell, interface::commandline, role::program, scope::utility, use::configuring, works-with::font
+console-setup-mini: hardware::input:keyboard
+console-terminus: admin::configuring, made-of::data:font, role::app-data
+console-tools: admin::configuring, hardware::input:keyboard, implemented-in::c, implemented-in::python, interface::commandline, role::program, scope::utility, use::configuring, works-with::font
+console-tools-dev: admin::configuring, devel::library, interface::commandline, role::devel-lib, use::configuring, works-with::font
+conspy: uitoolkit::ncurses
+contact-lookup-applet: interface::x11, suite::gnome, uitoolkit::gtk, use::searching, works-with::mail, works-with::pim, x11::application
+contacts: implemented-in::c, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, works-with-format::TODO, works-with::pim
+contest: admin::benchmarking, admin::kernel, interface::commandline, role::program, scope::utility, works-with::software:running
+convertfs: admin::filesystem
+convmv: devel::i18n, implemented-in::perl, interface::commandline, role::program, scope::utility, works-with::file
+cook: devel::buildtools, interface::commandline, role::program, scope::utility, works-with::software:source
+cook-doc: devel::buildtools, interface::commandline, made-of::data:postscript, made-of::data:tex, role::documentation
+cook-rsh: devel::buildtools, devel::rpc
+cookietool: interface::commandline, role::program, scope::utility, use::organizing, web::browser, works-with::db
+coolmail: interface::x11, mail::notification, role::program, scope::utility, use::monitor, works-with::mail, x11::application
+coq: devel::compiler, field::mathematics, implemented-in::ocaml, interface::commandline, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses
+coq-doc: devel::doc, role::documentation
+coq-libs: devel::library, field::mathematics, implemented-in::ocaml, role::app-data
+coq7-libs: field::mathematics, implemented-in::ocaml, role::app-data
+coqide: devel::ide, field::mathematics, implemented-in::ocaml, interface::x11, role::program, scope::application, uitoolkit::gtk, uitoolkit::ncurses, use::checking, x11::application
+coreutils: admin::configuring, implemented-in::c, interface::commandline, role::program, scope::utility, suite::gnu, works-with::file
+corewars: devel::machinecode, game::strategy, hardware::emulation, interface::x11, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+coriander: hardware::camera, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, uitoolkit::sdl, use::downloading, use::driver, works-with::image, works-with::image:raster, x11::application
+corkscrew: interface::commandline, network::vpn, protocol::http, role::program, scope::utility, use::proxying, use::routing
+countrycodes: interface::commandline, role::data
+courier-authdaemon: interface::daemon, network::server, role::program, security::authentication, works-with::mail
+courier-authlib: role::plugin, security::authentication
+courier-authlib-ldap: protocol::ldap, role::plugin
+courier-authlib-userdb: admin::monitoring, implemented-in::c, protocol::imap, role::plugin, security::authentication, works-with::mail
+courier-authmysql: devel::lang:sql, interface::daemon, mail::transport-agent, network::server, role::program, security::authentication, works-with::db, works-with::mail
+courier-authpostgresql: devel::lang:sql, interface::daemon, mail::transport-agent, network::server, role::program, security::authentication, works-with::db, works-with::mail
+courier-base: interface::daemon, mail::transport-agent, network::server, role::program, works-with::mail
+courier-doc: interface::daemon, made-of::data:html, mail::transport-agent, role::documentation, works-with::mail
+courier-faxmail: hardware::modem, interface::daemon, network::server, role::program, use::converting, works-with::fax, works-with::mail
+courier-filter-perl: implemented-in::perl, interface::daemon, mail::filters, network::server, role::program, security::antivirus, use::scanning, works-with::mail
+courier-imap: interface::daemon, mail::imap, network::server, network::service, protocol::imap, role::program, works-with::mail
+courier-imap-ssl: interface::daemon, mail::imap, network::server, network::service, protocol::imap, protocol::ssl, role::program, works-with::mail
+courier-ldap: interface::daemon, network::server, protocol::ldap, role::program, security::authentication, works-with::db, works-with::mail
+courier-maildrop: interface::daemon, mail::delivery-agent, network::server, role::program, works-with::mail
+courier-mlm: interface::daemon, mail::list, network::server, role::program, works-with::mail
+courier-mta: interface::daemon, mail::transport-agent, network::server, network::service, protocol::smtp, role::program, works-with::mail
+courier-mta-ssl: interface::daemon, mail::transport-agent, network::server, network::service, protocol::smtp, protocol::ssl, role::program, works-with::mail
+courier-pcp: interface::daemon, network::server, role::program, use::organizing, works-with::mail, works-with::pim
+courier-pop: interface::daemon, mail::pop, network::server, network::service, protocol::pop3, role::program, works-with::mail
+courier-pop-ssl: interface::daemon, mail::pop, network::server, network::service, protocol::pop3, protocol::ssl, role::program, works-with::mail
+courier-ssl: interface::daemon, mail::transport-agent, network::server, protocol::ssl, role::program, works-with::mail
+courier-webadmin: admin::configuring, interface::web, network::server, protocol::http, role::program, use::configuring, web::application, works-with::mail
+couriergraph: admin::monitoring, implemented-in::perl, interface::daemon, mail::imap, mail::pop, role::program, scope::utility, use::monitor, works-with::db, works-with::logfile, works-with::mail
+cowbell: implemented-in::c-sharp, uitoolkit::gtk
+cowdancer: admin::filesystem, field::TODO, role::program, scope::utility, use::special:todo, works-with::file
+cowsay: game::toys, implemented-in::perl, interface::commandline, role::program, use::entertaining, works-with::text
+cpad-common: devel::library
+cpad-kernel-dev: admin::hardware, devel::library, role::devel-lib, use::driver
+cpad-kernel-source: admin::hardware, role::source, use::driver
+cpanel: accessibility::input, culture::chinese, culture::taiwanese, interface::x11, uitoolkit::gtk, use::configuring, x11::application
+cpbk: admin::backup, interface::commandline, role::program, scope::utility, use::synchronizing, works-with::file
+cpio: hardware::storage, interface::commandline, role::program, scope::utility, suite::gnu, use::storing, works-with-format::tar, works-with::archive
+cpipe: implemented-in::c, interface::commandline, role::program, scope::utility
+cplay: implemented-in::python, interface::text-mode, role::program, scope::application, sound::player, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::audio
+cpmtools: admin::filesystem, interface::text-mode, uitoolkit::ncurses, works-with::file
+cpp: devel::interpreter, devel::lang:c, implemented-in::c, interface::commandline, role::dummy, scope::utility, special::meta, suite::gnu, works-with::software:source
+cpp-2.95: devel::interpreter, devel::lang:c, implemented-in::c, interface::commandline, role::program, scope::utility, suite::gnu, works-with::software:source
+cpp-2.95-doc: devel::doc, devel::interpreter, devel::lang:c, interface::commandline, made-of::data:info, role::documentation, suite::gnu, works-with::software:source
+cpp-3.3: devel::interpreter, devel::lang:c, implemented-in::c, interface::commandline, role::program, scope::utility, suite::gnu, works-with::software:source
+cpp-3.3-doc: devel::doc, devel::interpreter, devel::lang:c, interface::commandline, made-of::data:info, role::documentation, suite::gnu, works-with::software:source
+cpp-3.4: devel::interpreter, devel::lang:c, implemented-in::c, interface::commandline, role::program, scope::utility, suite::gnu, works-with::software:source
+cpp-3.4-doc: devel::doc, devel::interpreter, devel::lang:c, interface::commandline, made-of::data:info, role::documentation, suite::gnu, works-with::software:source
+cpp-4.0: devel::interpreter, devel::lang:c, implemented-in::c, interface::commandline, role::program, scope::utility
+cpp-4.0-doc: role::documentation
+cpp-4.1: devel::interpreter, devel::lang:c, devel::lang:c++, implemented-in::c, interface::commandline, role::program, suite::gnu, works-with::software:source
+cpp-doc: devel::doc, devel::lang:c, role::documentation
+cpphs: devel::interpreter, devel::lang:haskell, implemented-in::haskell, interface::commandline, role::program, scope::utility, works-with::software:source
+cppunit: devel::lang:c, role::dummy
+cpqarrayd: admin::monitoring, hardware::storage, implemented-in::c, interface::daemon, role::program, scope::utility, use::monitor
+cproto: devel::code-generator, devel::lang:c, implemented-in::c, interface::commandline, role::program, scope::utility, use::converting, works-with::software:source
+cpu: admin::user-management, implemented-in::c, interface::commandline, protocol::ldap, role::program, scope::utility, security::authentication, works-with::db
+cpuburn: admin::hardware, devel::testing-qa, interface::commandline, role::program, scope::utility, works-with::software:running
+cpudyn: admin::boot, admin::hardware, hardware::laptop, hardware::power, hardware::power:acpi, hardware::power:apm, interface::daemon, role::program, scope::utility, use::configuring
+cpufreqd: admin::boot, admin::hardware, hardware::laptop, hardware::power, hardware::power:acpi, hardware::power:apm, interface::daemon, role::program, scope::utility, use::configuring
+cpufrequtils: hardware::detection, interface::commandline, role::program, scope::utility, use::configuring, use::viewing
+cpuid: hardware::detection, interface::commandline, role::program, scope::utility, use::viewing
+cpulimit: admin::hardware, admin::monitoring, implemented-in::c, interface::commandline, role::program
+crack: interface::commandline, role::program, scope::utility, security::authentication, use::checking, works-with::dictionary
+crack-attack: game::tetris, interface::3d, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+crack-common: role::app-data, security::authentication, special::auto-inst-parts, use::checking, works-with::dictionary
+crack-md5: interface::commandline, role::program, scope::utility, security::authentication, use::checking, works-with::dictionary
+cracklib-runtime: interface::commandline, role::program, scope::utility, security::authentication, use::checking, works-with::dictionary
+cracklib2: devel::library, implemented-in::c, interface::commandline, role::shared-lib, security::authentication, use::checking, works-with::dictionary
+cracklib2-dev: devel::lang:c, devel::library, role::devel-lib, security::authentication, use::checking, works-with::dictionary
+craft: game::strategy, interface::x11, role::program, use::gameplaying, x11::application
+crafted: game::strategy, uitoolkit::gtk, use::gameplaying
+crafty: game::board, game::board:chess, use::gameplaying
+crafty-books-medium: game::board, game::board:chess, special::auto-inst-parts, use::gameplaying
+crafty-books-medtosmall: game::board, game::board:chess, special::auto-inst-parts, use::gameplaying
+crafty-books-small: game::board, game::board:chess, special::auto-inst-parts, use::gameplaying
+cramfsprogs: admin::filesystem, interface::commandline, role::program, scope::utility, use::checking, use::storing
+cramfsswap: admin::filesystem, admin::hardware, interface::commandline, role::program, scope::utility, use::compressing, use::converting
+crank: interface::x11, role::program, scope::utility, security::cryptography, uitoolkit::gtk, use::converting, works-with::text, x11::application
+crash: admin::kernel, devel::debugger, interface::commandline, role::program, scope::utility, uitoolkit::ncurses, works-with::logfile, works-with::software:running
+crashmail: implemented-in::c++, interface::commandline, network::client, protocol::fidonet, role::program, works-with::mail
+crashme: admin::kernel, devel::testing-qa, interface::commandline, role::program, scope::utility, works-with::software:running, works-with::text
+crawl: game::rpg:rogue, implemented-in::c++, interface::text-mode, role::program, uitoolkit::ncurses, use::gameplaying
+cream: devel::editor, role::plugin
+creox: field::arts, interface::x11, role::program, scope::application, suite::kde, uitoolkit::qt, use::converting, works-with::audio, x11::application
+cricket: implemented-in::perl, interface::web, network::server, role::program, use::monitor, use::viewing, web::cgi, works-with::db
+crimson: game::strategy, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+crip: hardware::storage, hardware::storage:cd, implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, use::storing, works-with-format::iso9660, works-with-format::oggvorbis, works-with::archive, works-with::audio
+criticalmass: game::arcade, interface::3d, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+criticalmass-data: game::arcade, interface::3d, role::app-data, special::auto-inst-parts, uitoolkit::sdl, use::gameplaying, x11::application
+crm114: interface::commandline, mail::filters, role::program, scope::utility, security::log-analyzer, use::scanning, works-with::logfile, works-with::mail
+cron: admin::automation, implemented-in::c, interface::daemon, role::program, scope::utility
+cron-apt: admin::automation, admin::package-management, interface::daemon, role::program, scope::utility, suite::debian, use::downloading, works-with::software:package
+cronolog: implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, works-with::logfile
+cronosii: interface::x11, mail::user-agent, network::client, role::program, suite::gnome, use::editing, works-with::mail, x11::application
+crossfire-client: implemented-in::c, role::dummy, role::program, works-with::audio
+crossfire-client-gtk: game::mud, implemented-in::c, interface::x11, network::client, role::program, scope::application, uitoolkit::gtk, uitoolkit::sdl, use::gameplaying, x11::application
+crossfire-client-gtk2: game::mud, implemented-in::c, interface::x11, network::client, role::program, uitoolkit::gtk, uitoolkit::sdl, use::gameplaying, x11::application
+crossfire-client-images: made-of::data:icons, role::app-data
+crossfire-client-sounds: role::app-data
+crossfire-client-x11: game::mud, implemented-in::c, interface::x11, network::client, role::program, uitoolkit::athena, use::entertaining, use::gameplaying, x11::application
+crossfire-common: role::app-data
+crossfire-doc: role::documentation
+crossfire-edit: implemented-in::c, interface::x11, role::program, uitoolkit::athena, use::editing, x11::application
+crossfire-maps: role::app-data
+crossfire-maps-small: role::app-data
+crossfire-server: game::mud, implemented-in::c, implemented-in::python, interface::daemon, network::server, network::service, role::program, scope::application, use::gameplaying
+crosshurd: admin::boot, admin::kernel, admin::package-management, devel::debian, interface::commandline, role::program, scope::utility, suite::debian, use::configuring
+crossvc: devel::rcs, implemented-in::c++, interface::x11, role::program, uitoolkit::qt, x11::application
+cruft: admin::monitoring, admin::package-management, interface::commandline, role::program, scope::utility, suite::debian, use::monitor, works-with::file
+cryopid: implemented-in::c, interface::commandline, role::program, scope::utility, works-with::software:running
+crypt++el: implemented-in::lisp, role::plugin, security::cryptography, suite::emacs, use::compressing, use::editing, works-with::archive
+cryptcat: interface::commandline, network::scanner, role::program, scope::utility, security::cryptography, use::transmission
+cryptmount: admin::filesystem, role::program, scope::application, security::cryptography, security::privacy, works-with::file
+cryptonit: uitoolkit::wxwindows
+cryptplug: role::shared-lib, security::cryptography
+cryptplug-dev: role::devel-lib, security::cryptography
+cryptsetup: admin::boot, admin::filesystem, interface::commandline, role::program, scope::utility, security::cryptography, use::configuring
+crystalcursors: made-of::data:icons, role::data, x11::theme
+crystalspace: interface::3d, uitoolkit::sdl
+crystalspace-data: game::simulation, role::app-data, use::gameplaying
+crystalspace-dev: interface::3d, role::devel-lib
+crystalspace-doc: interface::3d, role::documentation
+crywrap: interface::daemon, network::server, network::service, protocol::ssl, role::program, security::cryptography, use::proxying
+cscope: devel::lang:c, implemented-in::c, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::browsing, works-with::software:source
+cscvs: devel::lang:sql, devel::rcs, implemented-in::python, interface::commandline, role::program, scope::utility, use::converting, works-with::db
+csh: interface::shell, role::program, scope::utility
+csmash: game::arcade, interface::3d, role::program, uitoolkit::gtk, uitoolkit::sdl, use::gameplaying, x11::application
+csmash-data: game::arcade, interface::3d, role::app-data, uitoolkit::gtk, uitoolkit::sdl, use::gameplaying, x11::application
+csmash-demosong: game::arcade, interface::3d, role::app-data, uitoolkit::gtk, uitoolkit::sdl, use::gameplaying, x11::application
+csound: interface::x11, role::program, scope::application, sound::TODO, uitoolkit::fltk, use::editing, works-with::audio, x11::application
+csound-doc: interface::x11, made-of::data:html, made-of::data:sgml, role::documentation, uitoolkit::TODO, use::editing, works-with::audio
+css-mode: implemented-in::lisp, role::plugin, suite::emacs, use::editing, use::text-formatting, works-with::text
+cssc: devel::rcs, interface::commandline, role::program, scope::utility, suite::gnu, use::synchronizing
+cssed: interface::x11, role::program, scope::application, uitoolkit::gtk, use::checking, use::editing, use::text-formatting, works-with::text, x11::application
+cstocs: culture::czech, implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, use::organizing, works-with::text
+cstream: implemented-in::c, interface::commandline, use::transmission
+cthugha: sound::player, uitoolkit::athena, uitoolkit::ncurses
+cthumb: implemented-in::perl, interface::commandline, role::program, scope::application, works-with-format::html, works-with::image, works-with::image:raster, works-with::text
+ctie: interface::commandline, role::program, scope::utility, use::converting, works-with-format::tex, works-with::text
+ctklight: devel::code-generator
+ctn: devel::lang:sql, field::TODO, field::biology, implemented-in::c, interface::commandline, interface::x11, role::program, scope::application, scope::utility, uitoolkit::athena, uitoolkit::motif, works-with::db, works-with::image, works-with::image:raster, x11::application
+ctn-dev: devel::lang:sql, field::biology, implemented-in::c, role::devel-lib, role::documentation, uitoolkit::athena, uitoolkit::motif, works-with::db, works-with::image, works-with::image:raster
+ctn-doc: devel::lang:sql, field::biology, made-of::data:pdf, role::documentation, works-with::db, works-with::image, works-with::image:raster
+ctrlproxy: implemented-in::c, interface::daemon, network::client, network::server, network::service, protocol::ipv6, protocol::irc, role::program, use::chatting, use::proxying
+ctrlproxy-dev: protocol::irc, role::devel-lib, use::chatting, use::proxying
+ctsim: field::biology, interface::3d, interface::commandline, role::program, scope::application, uitoolkit::wxwidgets, uitoolkit::wxwindows, use::viewing, works-with::3dmodel, x11::application
+ctsim-athlon: field::biology, interface::3d, interface::commandline, role::program, scope::application, uitoolkit::wxwidgets, use::viewing, works-with::3dmodel, x11::application
+ctsim-doc: field::biology, interface::3d, made-of::data:html, made-of::data:pdf, role::documentation, uitoolkit::wxwidgets, use::viewing, works-with::3dmodel, x11::application
+ctsim-help: field::biology, interface::3d, role::documentation, uitoolkit::wxwidgets, use::viewing, works-with::3dmodel, x11::application
+ctsim-pentium4: admin::hardware, field::biology, interface::3d, interface::commandline, role::program, scope::application, uitoolkit::wxwidgets, uitoolkit::wxwindows, use::viewing, works-with::3dmodel, x11::application
+cttex: culture::TODO, interface::commandline, role::program, scope::utility, use::editing, works-with-format::html, works-with-format::tex, works-with::text
+ctwm: interface::x11, role::program, x11::window-manager
+cu: interface::commandline, network::client, network::service, role::program, use::downloading, use::login
+cuetools: hardware::storage, hardware::storage:cd, interface::commandline, role::program, scope::utility, use::converting, use::organizing, works-with::audio
+culmus: culture::hebrew, made-of::data:font, role::app-data, x11::font
+culmus-fancy: x11::font
+cup: devel::code-generator, devel::lang:java, interface::commandline, role::program, scope::utility, works-with::software:source
+cups-pdf: role::app-data, use::converting, use::printing, works-with-format::pdf, works-with::text
+cupsomatic-ppd: hardware::printer, use::printing
+cupsys: hardware::printer, implemented-in::c, interface::daemon, network::server, protocol::lpr, protocol::smb, protocol::special:todo, protocol::ssl, role::program, use::printing, works-with-format::html, works-with-format::jpg, works-with-format::pdf, works-with-format::plaintext, works-with-format::png, works-with-format::postscript, works-with::image:raster, works-with::image:vector, works-with::text
+cupsys-bsd: hardware::printer, interface::commandline, role::program, scope::utility, use::printing
+cupsys-client: hardware::printer, interface::commandline, network::client, protocol::special:todo, protocol::ssl, role::program, use::printing
+cupsys-common: hardware::printer, role::app-data, use::printing
+cupsys-dbg: devel::library, hardware::printer
+cupsys-driver-gimpprint: hardware::printer, role::dummy, special::obsolete, use::printing
+cupsys-driver-gimpprint-data: role::app-data
+cupsys-driver-gutenprint: hardware::printer, role::plugin, use::driver, use::printing
+cupsys-pt: culture::portuguese, hardware::printer, interface::x11, protocol::ssl, uitoolkit::gtk, use::printing, use::viewing, x11::application
+curator: interface::commandline, role::program, scope::utility, use::organizing, works-with-format::html, works-with::image, works-with::image:raster, works-with::text
+curl: filetransfer::ftp, filetransfer::http, implemented-in::c, interface::commandline, network::client, protocol::ftp, protocol::http, protocol::ipv6, protocol::kerberos, protocol::ldap, protocol::ssl, role::program, scope::utility, use::downloading, use::synchronizing, works-with::file
+curlftpfs: implemented-in::c, role::program
+curves: devel::rcs, interface::text-mode, role::program, scope::utility, use::browsing, use::synchronizing
+cutecom: uitoolkit::qt
+cutils: devel::code-generator, devel::lang:c, implemented-in::c, interface::commandline, role::program, scope::utility, use::converting, works-with::software:source
+cutter: interface::commandline, network::routing, protocol::ip, role::program, scope::utility, use::routing
+cuyo: game::tetris, interface::x11, junior::arcade, role::program, uitoolkit::qt, use::gameplaying, x11::application
+cvm: admin::login, interface::commandline, role::program, scope::utility, security::authentication
+cvm-dev: devel::library, role::devel-lib, security::authentication
+cvm-mysql: devel::lang:sql, interface::commandline, role::program, scope::utility, security::authentication, works-with::db
+cvm-pgsql: devel::lang:sql, interface::commandline, role::program, scope::utility, security::authentication, works-with::db
+cvs: devel::rcs, implemented-in::c, interface::commandline, network::client, network::server, role::program, use::synchronizing
+cvs-autoreleasedeb: devel::buildtools, devel::debian, devel::packaging, devel::rcs, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, use::synchronizing, works-with::software:source
+cvs-buildpackage: devel::buildtools, devel::debian, devel::packaging, devel::rcs, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, use::synchronizing, works-with::software:source
+cvs-mailcommit: admin::logging, devel::rcs, implemented-in::perl, interface::commandline, role::program, scope::utility, works-with::mail
+cvs-syncmail: admin::logging, devel::rcs, implemented-in::python, interface::commandline, mail::TODO, role::program, scope::utility, use::synchronizing, works-with::mail
+cvs2cl: admin::logging, devel::rcs, implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, use::synchronizing, works-with::logfile
+cvs2html: devel::rcs, implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, use::synchronizing, works-with-format::html, works-with::logfile, works-with::text
+cvs2svn: devel::rcs, implemented-in::python, interface::commandline, role::program, scope::utility, use::converting
+cvsbook: devel::doc, devel::rcs, made-of::data:html, made-of::data:info, made-of::data:postscript, role::data, use::synchronizing
+cvsbook-ja: culture::japanese, devel::doc, devel::rcs, made-of::data:html, made-of::data:info, made-of::data:postscript, role::data, use::synchronizing
+cvsd: accessibility::special:not-applicable, admin::file-distribution, culture::special:not-applicable, devel::rcs, implemented-in::c, implemented-in::perl, implemented-in::shell, interface::daemon, junior::special:not-applicable, network::server, network::service, protocol::ipv6, role::program, sound::special:not-applicable, use::downloading, use::storing, use::synchronizing, works-with::file, works-with::software:source
+cvsdelta: devel::rcs, interface::commandline, role::program, scope::utility, use::monitor, use::synchronizing
+cvsgraph: devel::rcs, interface::commandline, role::program, scope::utility, use::synchronizing, use::viewing, works-with::image
+cvsnt: devel::rcs
+cvsps: devel::rcs, interface::commandline, role::program, scope::utility, use::scanning, use::synchronizing, use::viewing
+cvsreport: devel::rcs, interface::commandline, role::program, scope::utility, use::scanning, use::synchronizing, use::viewing, works-with-format::html, works-with::text
+cvstrac: devel::bugtracker, devel::rcs, filetransfer::http, implemented-in::c, interface::web, network::server, protocol::http, role::program, use::browsing, use::synchronizing, web::cgi, web::server, works-with-format::html, works-with::bugs, works-with::text
+cvsutils: devel::buildtools, devel::rcs, implemented-in::perl, interface::commandline, role::program, scope::utility, use::synchronizing, works-with::software:source
+cvsweb: devel::rcs, filetransfer::http, interface::web, protocol::http, role::program, scope::utility, use::browsing, use::synchronizing, web::cgi
+cw: game::toys, hardware::hamradio, interface::commandline, role::program, scope::utility, use::converting, use::gameplaying, works-with::audio, works-with::text
+cwcdr: hardware::storage, hardware::storage:cd, implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, works-with-format::iso9660, works-with-format::mp3, works-with-format::oggvorbis, works-with::archive, works-with::audio
+cwcp: game::toys, hardware::hamradio, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::converting, use::gameplaying, works-with::audio, works-with::text
+cwdaemon: hardware::hamradio, hardware::modem, interface::daemon, network::server, role::program, use::converting, works-with::text
+cweb: devel::lang:c, role::dummy
+cweb-latex: devel::docsystem, devel::lang:c, role::app-data, works-with-format::tex, works-with::text
+cwebx: devel::docsystem, devel::lang:c, devel::lang:c++, interface::commandline, role::program, scope::utility, works-with-format::tex, works-with::software:source, works-with::text
+cwirc: hardware::hamradio, interface::commandline, protocol::irc, role::plugin, uitoolkit::gtk, use::chatting, use::converting, works-with::audio, works-with::text
+cxref: devel::docsystem, devel::lang:c, implemented-in::c, interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with-format::tex, works-with::software:source, works-with::text
+cxref-doc: devel::doc, devel::docsystem, devel::lang:c, interface::commandline, made-of::data:html, made-of::data:tex, role::documentation, use::converting, works-with-format::html, works-with-format::tex, works-with::software:source, works-with::text
+cxref-emacs: devel::docsystem, devel::lang:c, implemented-in::lisp, interface::commandline, role::plugin, suite::emacs, use::converting, use::editing, works-with-format::html, works-with-format::tex, works-with::software:source, works-with::text
+cyclades-serial-client: admin::hardware, interface::daemon, network::client, network::service, role::program, use::driver
+cycle: implemented-in::python, interface::x11, role::program, uitoolkit::wxwidgets, use::timekeeping
+cynthiune.app: implemented-in::objc, interface::x11, role::plugin, sound::player, suite::gnustep, uitoolkit::gnustep, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, x11::applet
+cyphesis-cpp: game::mud, implemented-in::c++, interface::daemon, network::server, network::service, protocol::ssl, role::program, use::gameplaying
+cyphesis-cpp-clients: game::mud, interface::text-mode, network::client, network::service, protocol::ssl, role::program, scope::utility, uitoolkit::ncurses, use::configuring, use::gameplaying
+cyphesis-cpp-mason: game::mud, network::service, protocol::ssl, role::app-data, use::gameplaying
+cyrus-admin: interface::daemon, network::server, role::program, works-with::mail
+cyrus-admin-2.2: implemented-in::perl, mail::filters, network::client, role::program, works-with::mail
+cyrus-clients-2.2: works-with::mail
+cyrus-common: interface::daemon, network::server, role::program, special::auto-inst-parts, works-with::mail
+cyrus-common-2.2: implemented-in::c, interface::commandline, interface::daemon, mail::delivery-agent, mail::filters, mail::notification, network::server, role::program, works-with::mail
+cyrus-dev: interface::daemon, network::server, role::program, works-with::mail
+cyrus-dev-2.2: works-with::mail
+cyrus-doc-2.2: works-with::mail
+cyrus-imapd: interface::daemon, network::server, network::service, protocol::imap, role::program, works-with::mail
+cyrus-imapd-2.2: implemented-in::c, interface::daemon, mail::imap, network::server, protocol::imap, protocol::ssl, role::program, works-with::mail
+cyrus-murder-2.2: works-with::mail
+cyrus-nntpd-2.2: works-with::mail
+cyrus-pop3d: interface::daemon, network::server, network::service, protocol::pop3, role::program, works-with::mail
+cyrus-pop3d-2.2: implemented-in::c, interface::daemon, mail::pop, network::server, protocol::pop3, protocol::ssl, role::program, works-with::mail
+cyrus21-admin: interface::daemon, network::server, network::service, role::program, use::configuring, works-with::mail
+cyrus21-clients: interface::commandline, mail::filters, mail::imap, mail::pop, mail::smtp, network::client, network::service, protocol::imap, protocol::ipv6, protocol::pop3, protocol::smtp, protocol::ssl, role::program, security::authentication, works-with::mail
+cyrus21-common: interface::daemon, mail::filters, network::service, protocol::ipv6, protocol::ssl, role::app-data, special::auto-inst-parts, works-with::mail
+cyrus21-dev: mail::filters, mail::imap, mail::pop, mail::smtp, network::service, protocol::imap, protocol::pop3, protocol::smtp, protocol::ssl, role::devel-lib, works-with::mail
+cyrus21-doc: interface::daemon, made-of::data:html, mail::filters, mail::imap, mail::pop, mail::smtp, network::service, protocol::imap, protocol::ipv6, protocol::pop3, protocol::smtp, protocol::ssl, role::documentation, security::authentication, works-with::mail
+cyrus21-imapd: interface::daemon, mail::filters, mail::imap, network::server, network::service, protocol::imap, protocol::ipv6, protocol::ssl, role::program, works-with::mail
+cyrus21-murder: interface::daemon, mail::filters, network::server, role::program, works-with::mail
+cyrus21-pop3d: interface::daemon, mail::filters, mail::pop, network::server, network::service, protocol::ipv6, protocol::pop3, protocol::ssl, role::program, security::authentication, works-with::mail
+cyrus2courier: works-with::mail
+d-shlibs: devel::packaging, interface::commandline, role::program, scope::utility, suite::debian, works-with::software:source
+d4x: filetransfer::ftp, filetransfer::http, interface::x11, network::client, protocol::ftp, protocol::http, role::program, uitoolkit::gtk, use::downloading, works-with::file, x11::application
+daapd: special::not-yet-tagged, special::not-yet-tagged::d
+dacco-cat-users: culture::catalan, made-of::data:dictionary, made-of::data:html, role::app-data
+dacco-eng-users: culture::TODO, culture::catalan
+dacode: devel::lang:sql, implemented-in::php, interface::web, network::server, protocol::http, role::program, web::cms, works-with-format::html, works-with::db, works-with::text
+dacode-doc: culture::french, devel::lang:sql, made-of::data:html, protocol::http, role::documentation, web::cms, works-with-format::html, works-with::db, works-with::text
+dact: interface::commandline, role::program, scope::utility, use::compressing, works-with::archive
+dadadodo: game::toys, interface::commandline, role::program, scope::utility, use::gameplaying, works-with::text
+daemon: admin::configuring, implemented-in::c, interface::daemon, role::program, scope::utility
+daemontools-installer: interface::commandline, use::configuring
+dag2html: field::genealogy, implemented-in::ocaml, interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with::people, works-with::text
+dailystrips: implemented-in::perl, interface::commandline, network::client, protocol::http, role::program, use::downloading, use::monitor, use::organizing, works-with::image, works-with::image:raster
+dak: admin::file-distribution, admin::package-management, devel::debian, devel::lang:sql, devel::testing-qa, implemented-in::python, implemented-in::shell, interface::commandline, network::server, protocol::ldap, role::program, scope::utility, security::authentication, suite::debian, use::organizing, use::synchronizing, works-with::db, works-with::mail, works-with::software:package
+dancer-ircd: filetransfer::dcc, implemented-in::c, interface::daemon, network::server, protocol::dns, protocol::ident, protocol::ip, protocol::ipv6, protocol::irc, protocol::udp, role::program, security::special:todo, special::obsolete
+dancer-ircd-doc: filetransfer::dcc, interface::daemon, made-of::data:html, made-of::data:postscript, protocol::irc, role::documentation, use::chatting
+dancer-services: filetransfer::dcc, implemented-in::c, interface::daemon, network::server, network::service, protocol::irc, role::program, security::authentication, security::special:todo, special::obsolete
+dansguardian: interface::daemon, mail::filters, network::server, protocol::http, role::program, use::proxying, web::server
+dante-client: interface::commandline, network::client, role::program, use::proxying
+dante-server: interface::daemon, network::server, role::program, use::proxying
+dar: admin::backup, interface::commandline, role::program, scope::utility, use::storing, works-with::file
+dar-static: admin::backup, interface::commandline, role::program, scope::utility, use::storing, works-with::file
+darcs: devel::rcs, implemented-in::haskell, interface::commandline, interface::text-mode, network::client, role::program, scope::application, works-with::software:source
+darcs-buildpackage: devel::debian, devel::packaging, devel::rcs, implemented-in::haskell, role::program, scope::utility
+darcs-load-dirs: devel::rcs, interface::commandline, role::program, scope::utility, use::converting, use::synchronizing
+darcs-server: devel::rcs, network::server, protocol::http, protocol::ssl, role::program, suite::apache, uitoolkit::ncurses, use::synchronizing, web::cgi
+dares: uitoolkit::ncurses
+dares-qt: uitoolkit::qt
+darkice: interface::commandline, network::server, network::service, role::program, use::playing, use::transmission, works-with-format::oggvorbis, works-with::audio
+darkstat: interface::web, network::scanner, network::server, role::program, use::monitor, works-with-format::html, works-with::text
+dart-client: admin::cluster, devel::testing-qa, implemented-in::tcl, network::client, role::program, use::checking
+dart-server: admin::cluster, devel::testing-qa, implemented-in::java, interface::daemon, network::server, protocol::ftp, protocol::http, role::program
+dash: implemented-in::c, interface::shell, role::program, scope::utility
+dasher: accessibility::input, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, x11::application
+dasher-data: interface::x11
+datefudge: devel::testing-qa, implemented-in::c, interface::commandline, role::program, role::shared-lib, scope::utility, use::timekeeping
+dates: implemented-in::c, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::timekeeping, works-with-format::TODO, works-with::pim
+dav-text: uitoolkit::ncurses
+davfs2: implemented-in::c, interface::commandline, network::client, protocol::http, protocol::webdav, role::program
+dazuko-source: admin::user-management, role::source, use::driver
+db2-doc: devel::doc, made-of::data:html, made-of::data:postscript, role::documentation, works-with::db
+db2latex-xsl: role::app-data, use::converting, works-with-format::docbook, works-with-format::tex, works-with::text
+db2latex-xsl-doc: devel::examples, made-of::data:html, made-of::data:pdf, made-of::data:postscript, made-of::data:tex, made-of::data:xml, role::documentation, use::converting, works-with-format::docbook, works-with-format::tex, works-with::text
+db3-doc: devel::doc, made-of::data:html, role::documentation, works-with::db
+db4.1-doc: devel::doc, made-of::data:html, role::documentation, works-with::db
+db4.1-util: interface::commandline, role::program, scope::utility, use::checking, use::viewing, works-with::db
+db4.2-doc: devel::doc, made-of::data:html, role::documentation, works-with::db
+db4.2-util: interface::commandline, role::program, scope::utility, use::checking, use::viewing, works-with::db
+db4.3-doc: devel::doc, made-of::data:html, role::documentation, works-with::db
+db4.3-util: interface::commandline, role::program, scope::utility, use::checking, use::viewing, works-with::db
+db4.4-doc: devel::doc, made-of::data:html, role::documentation, works-with::db
+db4.4-util: interface::commandline, role::program, scope::utility, use::checking, use::viewing, works-with::db
+dbacl: uitoolkit::ncurses
+dballe: field::TODO, implemented-in::c, implemented-in::fortran, interface::commandline, role::program, use::organizing, use::searching, use::storing
+dballe-common: role::app-data
+dbbalancer: devel::lang:sql, interface::daemon, network::load-balancing, network::server, role::program, use::proxying, works-with::db
+dbconfig-common: admin::configuring, admin::package-management, devel::packaging, implemented-in::shell, protocol::db:mysql, protocol::db:psql, use::configuring, works-with::db, works-with::software:package
+dbench: admin::benchmarking, interface::commandline, role::program, scope::utility, use::monitor
+dbengine: devel::lang:sql, implemented-in::perl, interface::web, network::server, role::program, web::application, works-with::db
+dbf2mysql: devel::lang:sql, interface::commandline, role::program, scope::utility, use::converting, works-with::db
+dbishell: devel::lang:sql, interface::shell, role::program, scope::utility, works-with::db
+dblatex: use::typesetting, works-with-format::docbook
+dbmail-mysql: mail::imap, mail::pop, special::not-yet-tagged, special::not-yet-tagged::d
+dbmail-pgsql: mail::imap, mail::pop, special::not-yet-tagged, special::not-yet-tagged::d
+dbmix: interface::x11, sound::mixer, sound::player, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+dbs: devel::debian, devel::packaging, implemented-in::shell, role::app-data, suite::debian, use::synchronizing, works-with::software:source
+dbskkd-cdb: culture::japanese, interface::daemon, network::server, role::program, works-with::dictionary
+dbtcp: interface::text-mode, uitoolkit::ncurses, works-with::db
+dbus: devel::lang:c, implemented-in::c, interface::daemon, protocol::TODO, role::program
+dbus-1: interface::daemon, network::server, role::program, role::shared-lib
+dbus-1-dev: devel::library, interface::daemon, role::devel-lib
+dbus-1-doc: interface::daemon, made-of::data:html, role::documentation
+dbus-1-utils: admin::configuring, implemented-in::c, network::client, protocol::TODO, role::program
+dbus-glib-1: interface::daemon, role::shared-lib
+dbus-glib-1-dev: devel::library, interface::daemon, role::devel-lib
+dbview: interface::commandline, role::program, scope::utility, use::converting, use::viewing, works-with::db
+dc: field::mathematics, interface::commandline, role::program, scope::utility, suite::gnu
+dcc-client: interface::commandline, mail::filters, network::client, protocol::smtp, role::program, use::checking, use::synchronizing, works-with::mail
+dcc-common: mail::filters, protocol::smtp, role::app-data, use::checking, use::synchronizing, works-with::mail
+dcc-milter: mail::filters, protocol::smtp, role::plugin, use::checking, use::synchronizing, works-with::mail
+dcc-server: interface::daemon, mail::filters, network::server, protocol::smtp, role::program, use::checking, use::synchronizing, works-with::mail
+dcd: hardware::storage, hardware::storage:cd, implemented-in::c++, interface::commandline, role::program, scope::application, sound::player, use::playing, works-with::audio
+dcgui: interface::x11, network::client, protocol::ssl, role::program, uitoolkit::gtk, use::downloading, x11::application
+dcgui-qt: interface::x11, role::dummy, uitoolkit::qt, x11::application
+dchroot: admin::login, admin::user-management, interface::commandline, role::program, scope::utility
+dcl: role::program, scope::utility, suite::gnu, works-with::people
+dclock: interface::x11, role::program, scope::utility, use::timekeeping, x11::application
+dcmtk: interface::commandline, protocol::ssl, role::program, scope::utility, use::converting, use::downloading, works-with::image, works-with::image:raster
+dcmtk-doc: interface::commandline, made-of::data:html, role::documentation, use::converting, use::downloading, works-with::image, works-with::image:raster
+dcmtk-www: interface::web, network::server, role::plugin, role::program, use::converting, use::downloading, use::organizing, web::application, works-with::image, works-with::image:raster
+dconf: admin::hardware, role::program, scope::utility, use::scanning
+dcoprss: interface::x11, protocol::http, role::program, scope::utility, suite::kde, uitoolkit::qt, use::downloading, works-with-format::xml, works-with-format::xml:rss, x11::application
+dcraw: hardware::camera, implemented-in::c, interface::commandline, role::program, scope::utility, use::converting, works-with-format::jpg, works-with::image, works-with::image:raster
+dctc: interface::commandline, network::client, protocol::ssl, role::program, uitoolkit::gtk, use::downloading
+dctrl-tools: admin::package-management, devel::debian, implemented-in::c, interface::commandline, role::program, scope::utility, suite::debian, use::searching, use::synchronizing, works-with::software:package, works-with::text
+ddccontrol: hardware::video, interface::commandline, role::program, scope::utility, use::configuring
+ddccontrol-db: hardware::video, role::data
+ddclient: network::client, protocol::dns, role::program
+ddd: devel::debugger, devel::lang:ada, devel::lang:c, devel::lang:c++, devel::lang:fortran, devel::lang:java, devel::lang:pascal, devel::lang:perl, devel::lang:python, interface::x11, role::program, suite::gnu, uitoolkit::athena, uitoolkit::motif, uitoolkit::ncurses, use::checking, x11::application
+ddd-doc: devel::debugger, devel::doc, role::documentation, suite::gnu
+ddns3-client: special::not-yet-tagged, special::not-yet-tagged::d
+ddrescue: admin::recovery, hardware::storage, interface::commandline, role::program, scope::utility, use::storing
+dds2tar: works-with::archive
+ddskk: culture::japanese, works-with::font
+ddtc: devel::packaging, suite::debian, works-with::mail
+deal: game::card
+deb-gview: admin::package-management, devel::debian, devel::packaging, implemented-in::c, interface::x11, role::program, scope::utility, suite::debian, uitoolkit::gtk, works-with::TODO, works-with::software:package
+debarchiver: devel::packaging, suite::debian
+debaux: devel::buildtools, devel::packaging, implemented-in::perl, interface::commandline, suite::debian, works-with::software:source
+debaux-debconf: devel::packaging, suite::debian
+debbuggtk: suite::gnome, uitoolkit::gtk, works-with::bugs
+debbugs: devel::bugtracker, suite::debian, works-with::bugs
+debbugs-el: role::dummy, special::obsolete, suite::debian, suite::emacs, use::editing
+debconf: admin::configuring, implemented-in::perl, interface::commandline, interface::text-mode, interface::x11, role::program, scope::utility, suite::debian, uitoolkit::gtk, uitoolkit::qt, use::configuring
+debconf-doc: devel::doc, devel::packaging, role::documentation, suite::debian, use::configuring
+debconf-english: devel::packaging, suite::debian, use::configuring
+debconf-i18n: devel::i18n, made-of::data:man, role::app-data, suite::debian
+debconf-utils: admin::configuring, devel::debian, implemented-in::perl, interface::commandline, role::program, suite::debian, use::configuring
+debdelta: role::program, works-with::software:package
+debfoster: admin::package-management, interface::commandline, role::program, suite::debian, use::checking, use::organizing, works-with::software:package
+debget: interface::commandline, suite::debian
+debhelper: devel::buildtools, devel::debian, devel::packaging, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, works-with::software:source
+debian-archive-keyring: admin::file-distribution, role::data, security::authentication, suite::debian
+debian-builder: devel::buildtools, devel::debian, devel::testing-qa, implemented-in::perl, interface::commandline, role::program, special::not-yet-tagged, special::not-yet-tagged::d, suite::debian, works-with::software:source
+debian-cd: devel::debian, hardware::storage, hardware::storage:cd, hardware::storage:dvd, implemented-in::perl, implemented-in::shell, interface::commandline, role::program, scope::utility, special::completely-tagged, suite::debian, use::storing, works-with-format::iso9660, works-with::archive, works-with::software:package
+debian-edu-archive-keyring: admin::file-distribution, role::data, security::authentication, suite::special:todo
+debian-edu-config: special::not-yet-tagged, special::not-yet-tagged::d, suite::debian
+debian-edu-install: special::not-yet-tagged, special::not-yet-tagged::d, suite::debian
+debian-el: implemented-in::lisp, role::plugin, suite::debian, suite::emacs
+debian-goodies: implemented-in::python, interface::commandline, role::program, scope::utility, suite::debian, use::searching, works-with::bugs, works-with::software:package
+debian-history: culture::french, culture::italian, culture::japanese, culture::portuguese, made-of::data:html, role::documentation, suite::debian
+debian-history-ko: culture::korean, role::documentation, suite::debian
+debian-installer: admin::TODO, admin::install, role::documentation, suite::debian
+debian-installer-manual: made-of::data:html, role::documentation, suite::debian
+debian-keyring: role::app-data, security::authentication, suite::debian
+debian-policy: devel::doc, made-of::data:html, made-of::data:pdf, made-of::data:postscript, made-of::data:sgml, role::documentation, suite::debian
+debian-reference: role::documentation, role::metapackage, special::meta, suite::debian
+debian-reference-common: devel::examples, role::documentation, special::auto-inst-parts, suite::debian
+debian-reference-de: culture::german, role::documentation, suite::debian
+debian-reference-en: culture::TODO, devel::doc, devel::packaging, made-of::data:html, role::documentation, suite::debian
+debian-reference-es: culture::spanish, role::documentation, suite::debian
+debian-reference-fr: culture::french, role::documentation, suite::debian
+debian-reference-it: culture::italian, role::documentation, suite::debian
+debian-reference-ja: culture::japanese, role::documentation, suite::debian
+debian-reference-pl: culture::polish, role::documentation, suite::debian
+debian-reference-pt-br: culture::brazilian, role::documentation, suite::debian
+debian-reference-zh-cn: culture::chinese, role::documentation, suite::debian
+debian-reference-zh-tw: culture::taiwanese, role::documentation, suite::debian
+debian-zh-faq-s: culture::chinese, role::documentation, suite::debian
+debian-zh-faq-t: culture::chinese, culture::taiwanese, role::documentation, suite::debian
+debiandoc-sgml: interface::commandline, made-of::data:html, role::program, scope::utility, suite::debian, use::converting, use::editing, use::text-formatting, works-with-format::docbook, works-with-format::html, works-with-format::pdf, works-with-format::postscript, works-with-format::sgml, works-with-format::tex, works-with-format::xml, works-with::text
+debiandoc-sgml-doc: role::documentation, suite::debian, use::editing
+debiandoc-sgml-doc-pt-br: culture::brazilian, role::documentation, suite::debian, use::editing
+debiandoc2dbxml: interface::commandline, role::program, scope::utility, suite::debian, use::converting, works-with-format::docbook, works-with-format::sgml, works-with-format::xml, works-with::text
+debianutils: admin::configuring, implemented-in::c, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian
+debmake: devel::code-generator, devel::debian, devel::packaging, role::program, scope::utility, special::obsolete, suite::debian
+debmirror: admin::file-distribution, filetransfer::ftp, filetransfer::http, implemented-in::perl, interface::commandline, protocol::ftp, protocol::http, role::program, suite::debian, use::downloading, use::synchronizing, works-with::software:package
+debnest: special::not-yet-tagged, special::not-yet-tagged::d, suite::debian
+debootstrap: admin::virtualization, devel::debian, filetransfer::http, implemented-in::shell, interface::commandline, protocol::http, role::program, scope::utility, suite::debian, works-with-format::tar, works-with::software:package
+deborphan: admin::package-management, implemented-in::c, interface::commandline, role::program, scope::utility, suite::debian, use::checking, use::organizing, works-with::software:package
+debpartial: devel::packaging, suite::debian
+debpartial-mirror: special::not-yet-tagged, special::not-yet-tagged::d
+debram: interface::commandline, role::program, scope::application, suite::debian, use::searching, works-with::software:package
+debram-data: interface::commandline, role::app-data, suite::debian, use::searching, works-with::software:package
+debroster: game::toys, suite::debian
+debsecan: admin::automation, admin::monitoring, admin::special:todo, devel::testing-qa, network::scanner, role::program, security::special:todo, suite::debian, use::scanning, use::special:todo
+debsig-verify: devel::packaging, security::integrity, suite::debian
+debsigs: devel::packaging, implemented-in::perl, interface::commandline, role::program, scope::utility, security::authentication, suite::debian, works-with::software:package
+debsums: admin::package-management, role::program, security::integrity, suite::debian, works-with::software:package
+debtags: devel::buildtools, implemented-in::c++, interface::commandline, role::program, scope::application, suite::debian, use::searching, works-with::software:package
+debtags-edit: devel::debian, implemented-in::c++, interface::x11, role::program, scope::application, suite::debian, uitoolkit::gtk, use::editing, use::organizing, works-with::software:package, x11::application
+debview: role::dummy, special::obsolete, suite::debian, suite::emacs, use::editing
+deco: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::browsing, use::organizing, works-with::file
+decompyle: devel::debugger, devel::lang:python, interface::commandline, role::program, scope::application, works-with::software:source
+decompyle2.2: devel::debugger, devel::lang:python, interface::commandline, role::program, scope::application, works-with::software:source
+dedit: culture::japanese, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::editing, x11::application
+defendguin: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+defendguin-data: game::arcade, interface::x11, role::app-data, use::gameplaying, x11::application
+defoma: admin::configuring, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, use::configuring, works-with::font
+defoma-doc: admin::configuring, interface::commandline, made-of::data:html, made-of::data:sgml, role::documentation, suite::debian, use::configuring, works-with::font
+defrag: admin::filesystem, interface::commandline, role::program, scope::utility, uitoolkit::ncurses
+dejagnu: devel::testing-qa, implemented-in::tcl, interface::commandline, role::program, scope::utility, suite::gnu
+deliver: interface::daemon, mail::delivery-agent, network::server, role::program, works-with::mail
+delo: admin::boot, interface::commandline, role::program, scope::utility, use::configuring
+deluge-torrent: implemented-in::python, network::client, protocol::bittorrent, role::program, uitoolkit::gtk, use::downloading
+democracyplayer: accessibility::special:not-applicable, admin::special:not-applicable, culture::special:not-applicable, devel::special:not-applicable, filetransfer::http, game::special:not-applicable, hardware::special:not-applicable, implemented-in::c, implemented-in::python, interface::x11, junior::special:not-applicable, network::client, protocol::bittorrent, protocol::http, role::program, scope::application, security::special:not-applicable, sound::player, suite::gnome, uitoolkit::gtk, use::browsing, use::downloading, use::entertaining, use::playing, web::TODO, works-with-format::TODO, works-with-format::mp3, works-with-format::oggtheora, works-with-format::oggvorbis, works-with-format::xml, works-with-format::xml:rss, works-with::audio, works-with::file, works-with::video, x11::application
+denemo: implemented-in::c, interface::x11, suite::gnu, uitoolkit::gtk, use::editing, works-with-format::tex, works-with::music-notation, works-with::text, x11::application
+denyhosts: admin::configuring, admin::logging, implemented-in::python, interface::daemon, protocol::ssh, role::program, scope::utility, security::TODO, security::forensics, use::TODO
+dep.pl: interface::commandline, role::program, scope::utility, suite::debian, use::scanning
+derivations: field::mathematics, role::data
+deroff: interface::commandline, role::program, scope::utility, use::converting, use::text-formatting, works-with-format::man, works-with::text
+deskbar-applet: suite::gnome, uitoolkit::gtk
+desklaunch: interface::x11, role::program, scope::utility, x11::application
+deskmenu: interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+desktop-base: interface::x11, made-of::data:icons, role::app-data, special::auto-inst-parts, suite::debian, uitoolkit::special:not-applicable
+desktop-file-utils: admin::configuring, interface::commandline, role::program, scope::utility, suite::gnome, use::checking, use::configuring
+destar: implemented-in::python, interface::daemon, interface::web, network::configuration, protocol::voip, web::application, works-with-format::plaintext, works-with::people
+detachtty: interface::commandline, role::program, scope::utility, use::login
+deutex: game::arcade, role::program, use::editing, use::gameplaying
+devel-protocols: devel::library, role::metapackage
+develock-el: devel::lang:c, devel::lang:java, devel::lang:php, implemented-in::lisp, role::plugin, suite::emacs, use::viewing, works-with-format::html, works-with-format::tex, works-with::software:source, works-with::text
+developers-reference: devel::debian, devel::doc, devel::packaging, made-of::data:html, role::documentation, suite::debian
+developers-reference-fr: culture::french, devel::debian, devel::doc, devel::packaging, made-of::data:html, role::documentation, suite::debian
+devfsd: admin::filesystem, interface::daemon, network::server, role::program, use::configuring
+devhelp: devel::doc, implemented-in::c, interface::x11, protocol::http, protocol::ssl, role::documentation, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::browsing, works-with-format::html, works-with::text, x11::application
+devhelp-book-autotools: devel::doc, role::documentation, suite::gnome, uitoolkit::gtk
+devhelp-book-binutils: devel::doc, role::documentation, suite::gnome, uitoolkit::gtk
+devhelp-book-cvs: devel::doc, role::documentation, suite::gnome, uitoolkit::gtk
+devhelp-book-emacs: devel::doc, role::documentation, suite::gnome, uitoolkit::gtk
+devhelp-book-gdb: devel::doc, role::documentation, suite::gnome, uitoolkit::gtk
+devhelp-book-glibc: devel::doc, role::documentation, suite::gnome, uitoolkit::gtk
+devhelp-book-gtk2: devel::doc, role::documentation, suite::gnome, uitoolkit::gtk
+devhelp-book-make: devel::doc, role::documentation, suite::gnome, uitoolkit::gtk
+devhelp-book-sdl: devel::doc, role::documentation, suite::gnome, uitoolkit::gtk
+devhelp-books: devel::doc, role::metapackage, special::meta, suite::gnome, uitoolkit::gtk
+devhelp-common: devel::doc, interface::x11, made-of::data:html, protocol::http, protocol::ssl, role::app-data, role::documentation, special::auto-inst-parts, suite::gnome, uitoolkit::gtk, works-with-format::html, works-with::text, x11::application
+device3dfx-source: hardware::video, implemented-in::c, role::source, use::driver
+devilspie: interface::x11, role::program, scope::utility, uitoolkit::gtk, use::configuring, x11::application, x11::library
+devio: admin::backup, admin::filesystem, admin::recovery, hardware::storage, implemented-in::c, interface::commandline, role::program, scope::utility
+devscripts: devel::debian, devel::packaging, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, use::checking, works-with::bugs, works-with::software:package, works-with::software:source
+devscripts-el: devel::debian, devel::packaging, implemented-in::lisp, interface::commandline, role::plugin, suite::debian, suite::emacs, use::editing, works-with::software:package, works-with::software:source
+devtodo: interface::text-mode, role::program, scope::application, uitoolkit::ncurses, use::checking, use::organizing, works-with-format::html, works-with-format::pdf, works-with::text
+dfm: interface::x11, role::program, scope::application, uitoolkit::gtk, use::browsing, use::organizing, works-with::file, x11::application
+dfontmgr: admin::configuring, interface::x11, role::program, scope::application, suite::debian, uitoolkit::gtk, works-with::font, x11::application
+dfsbuild: admin::boot, devel::debian, hardware::storage, hardware::storage:cd, hardware::storage:dvd, implemented-in::haskell, interface::commandline, protocol::http, role::program, scope::utility, suite::debian, use::downloading, use::storing, works-with-format::iso9660, works-with::archive
+dgen: uitoolkit::sdl
+dgipip: hardware::hamradio, interface::daemon, network::client, network::server, role::program
+dgpsip: field::geography, hardware::hamradio, interface::commandline, protocol::ip, role::program, scope::utility, use::checking, use::downloading
+dh-buildinfo: devel::debian, devel::testing-qa, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, works-with::software:source
+dh-consoledata: devel::debian, devel::packaging, interface::commandline, role::program, scope::utility, suite::debian, works-with::software:source
+dh-kpatches: admin::kernel, devel::debian, devel::packaging, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, works-with::software:source
+dh-make: devel::debian, devel::packaging, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, works-with::software:package, works-with::software:source
+dh-make-perl: devel::debian, devel::lang:perl, devel::packaging, implemented-in::perl, role::program, suite::debian, works-with::software:package, works-with::software:source
+dhcdbd: network::client, network::configuration, protocol::dhcp, role::program
+dhcp: interface::daemon, network::configuration, network::server, protocol::dhcp, protocol::ip, role::program, use::configuring
+dhcp-client: interface::commandline, network::client, network::configuration, protocol::dhcp, protocol::ip, role::program, use::configuring
+dhcp-dns: protocol::dhcp, protocol::dns
+dhcp-relay: interface::daemon, network::configuration, network::server, protocol::dhcp, protocol::ip, role::program, use::configuring, use::proxying
+dhcp3-client: interface::commandline, network::client, network::configuration, protocol::dhcp, protocol::ip, role::program, use::configuring
+dhcp3-common: network::configuration, protocol::dhcp, protocol::ip, role::app-data, special::auto-inst-parts, use::configuring
+dhcp3-dev: devel::library, network::configuration, protocol::dhcp, protocol::ip, role::devel-lib, use::configuring
+dhcp3-relay: interface::daemon, network::configuration, network::server, protocol::dhcp, protocol::ip, role::program, use::configuring, use::proxying
+dhcp3-server: interface::daemon, network::configuration, network::server, protocol::dhcp, protocol::ip, role::program, use::configuring
+dhcpcd: interface::daemon, network::client, network::configuration, protocol::dhcp, protocol::ip, role::program, use::configuring
+dhcpdump: interface::commandline, network::scanner, protocol::dhcp, protocol::ip, role::program, scope::utility, use::viewing
+dhcping: admin::monitoring, interface::commandline, network::scanner, protocol::dhcp, protocol::ip, role::program, scope::utility, use::scanning
+dhelp: implemented-in::perl, interface::web, network::server, protocol::http, role::documentation, role::program, suite::debian, use::browsing, web::browser, web::server, works-with-format::html, works-with::text
+dhid: protocol::dns, role::dummy
+dhis-client: interface::commandline, network::client, protocol::ip, role::program
+dhis-dns-engine: interface::daemon, protocol::dns, protocol::ip, role::plugin
+dhis-mx-sendmail-engine: interface::daemon, protocol::ip, protocol::smtp, role::plugin
+dhis-server: interface::daemon, network::server, protocol::ip, role::program
+dhis-tools-dns: interface::commandline, protocol::dns, protocol::ip, role::program, scope::utility
+dhis-tools-genkeys: interface::commandline, protocol::dns, protocol::ip, role::program, scope::utility, security::cryptography
+dhttpd: interface::daemon, network::server, protocol::http, role::program, web::server, works-with-format::html, works-with::text
+di: hardware::storage, interface::commandline, role::program, scope::utility, use::viewing
+di-packages-build: suite::debian
+dia: interface::x11, role::program, scope::application, suite::gnu, uitoolkit::gtk, use::editing, works-with::image, works-with::image:vector, x11::application
+dia-common: interface::x11, role::app-data, special::auto-inst-parts, suite::gnu, uitoolkit::gtk, use::editing, works-with::image, works-with::image:vector, x11::application
+dia-gnome: interface::x11, role::program, scope::application, suite::gnome, suite::gnu, uitoolkit::gtk, use::editing, works-with::image, works-with::image:vector, x11::application
+dia-libs: interface::x11, role::shared-lib, special::auto-inst-parts, suite::gnu, uitoolkit::gtk, use::editing, works-with::image, works-with::image:vector
+dia2code: devel::lang:ada, devel::lang:c, devel::lang:c++, devel::lang:java, devel::lang:php, devel::lang:python, interface::commandline, role::program, scope::utility, use::converting, use::editing, works-with::image, works-with::image:vector, works-with::software:source
+diablo: interface::daemon, network::server, protocol::nntp, role::program
+diablo-common: special::auto-inst-parts, special::not-yet-tagged, special::not-yet-tagged::d
+diablo-readerd: special::not-yet-tagged, special::not-yet-tagged::d
+diald: hardware::modem, interface::daemon, network::server, role::program, use::dialing, use::proxying
+dialign: field::biology, implemented-in::c, interface::commandline, role::program, scope::utility, works-with-format::plaintext, works-with::special:todo
+dialog: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, works-with::text
+diasce: suite::gnome, uitoolkit::gtk, use::editing
+diasce2: suite::gnome, uitoolkit::gtk, use::editing
+diatheke: implemented-in::c, implemented-in::perl, interface::commandline, interface::web, role::program, scope::utility, use::searching, web::cgi, works-with-format::html, works-with::text
+dicomnifti: implemented-in::c++, interface::commandline, role::program, scope::utility, use::converting
+dict: interface::commandline, network::client, role::program, use::searching, works-with::dictionary
+dict-bouvier: made-of::data:dictionary, role::app-data
+dict-de-en: culture::TODO, culture::german, made-of::data:dictionary, role::app-data, use::converting
+dict-devil: made-of::data:dictionary, role::app-data
+dict-easton: made-of::data:dictionary, role::app-data
+dict-elements: field::chemistry, made-of::data:dictionary, role::app-data
+dict-foldoc: made-of::data:dictionary, role::app-data
+dict-freedict: role::metapackage
+dict-freedict-afr-deu: culture::afrikaans, culture::german, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-cro-eng: culture::TODO, culture::croatian, made-of::data:dictionary, role::app-data
+dict-freedict-cze-eng: culture::TODO, culture::czech, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-dan-eng: culture::TODO, culture::danish, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-deu-eng: culture::TODO, culture::german, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-deu-fra: culture::french, culture::german, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-deu-ita: culture::german, culture::italian, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-deu-nld: culture::dutch, culture::german, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-deu-por: culture::german, culture::portuguese, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-eng-ara: culture::TODO, culture::arabic, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-eng-cro: culture::TODO, culture::croatian, made-of::data:dictionary, role::app-data
+dict-freedict-eng-cze: culture::TODO, culture::czech, made-of::data:dictionary, role::app-data
+dict-freedict-eng-deu: culture::TODO, culture::german, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-eng-fra: culture::TODO, culture::french, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-eng-hin: culture::TODO, culture::hindi, made-of::data:dictionary, role::app-data
+dict-freedict-eng-hun: culture::TODO, culture::hungarian, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-eng-iri: culture::TODO, culture::irish, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-eng-ita: culture::TODO, culture::italian, made-of::data:dictionary, role::app-data, use::checking
+dict-freedict-eng-lat: culture::TODO, made-of::data:dictionary, role::app-data, use::checking
+dict-freedict-eng-nld: culture::TODO, culture::dutch, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-eng-por: culture::TODO, culture::portuguese, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-eng-rom: culture::TODO, culture::romanian, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-eng-rus: culture::TODO, culture::russian, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-eng-scr: culture::TODO, culture::bosnian, culture::croatian, culture::serbian, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-eng-spa: culture::TODO, culture::spanish, made-of::data:dictionary, role::app-data, use::checking
+dict-freedict-eng-swa: culture::TODO, made-of::data:dictionary, role::app-data
+dict-freedict-eng-swe: culture::TODO, culture::swedish, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-eng-tur: culture::TODO, culture::turkish, made-of::data:dictionary, role::app-data
+dict-freedict-eng-wel: culture::TODO, culture::welsh, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-fra-deu: culture::french, culture::german, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-fra-eng: culture::TODO, culture::french, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-fra-nld: culture::dutch, culture::french, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-gla-deu: culture::TODO, culture::german, made-of::data:dictionary, role::app-data
+dict-freedict-hin-eng: culture::TODO, culture::hindi, made-of::data:dictionary, role::app-data
+dict-freedict-hun-eng: culture::TODO, culture::hungarian, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-iri-eng: culture::TODO, culture::irish, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-ita-deu: culture::german, culture::italian, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-ita-eng: culture::TODO, culture::italian, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-jpn-deu: culture::german, culture::japanese, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-lat-deu: culture::german, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-lat-eng: culture::TODO, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-nld-deu: culture::dutch, culture::german, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-nld-eng: culture::TODO, culture::dutch, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-nld-fra: culture::dutch, culture::french, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-por-deu: culture::german, culture::portuguese, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-por-eng: culture::TODO, culture::portuguese, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-sco-deu: culture::german, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-scr-eng: culture::TODO, culture::bosnian, culture::croatian, culture::serbian, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-slo-eng: culture::TODO, culture::slovak, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-spa-eng: culture::TODO, culture::spanish, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-swa-eng: culture::TODO, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-swe-eng: culture::TODO, culture::swedish, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-tur-deu: culture::german, culture::turkish, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-tur-eng: culture::TODO, culture::turkish, made-of::data:dictionary, role::app-data, use::converting
+dict-freedict-wel-eng: culture::TODO, culture::welsh, made-of::data:dictionary, role::app-data, use::converting
+dict-gazetteer: role::data
+dict-gazetteer2k: field::geography, role::metapackage
+dict-gazetteer2k-counties: field::geography, role::data
+dict-gazetteer2k-places: field::geography, role::data
+dict-gazetteer2k-zips: field::geography, role::data
+dict-gcide: culture::TODO, made-of::data:dictionary, role::app-data
+dict-hitchcock: made-of::data:dictionary, role::app-data
+dict-jargon: made-of::data:dictionary, role::app-data
+dict-moby-thesaurus: made-of::data:dictionary, role::app-data
+dict-vera: made-of::data:dictionary, role::app-data, suite::gnu
+dict-web1913: role::dummy
+dict-wn: made-of::data:dictionary, role::app-data
+dictd: interface::daemon, network::server, role::program, works-with::dictionary
+dictem: implemented-in::lisp, interface::commandline, network::client, role::plugin, role::program, suite::emacs, works-with::dictionary
+dictfmt: interface::commandline, role::program, scope::utility, use::converting, works-with::dictionary, works-with::text
+diction: interface::commandline, role::program, scope::utility, suite::gnu, use::checking, works-with::text
+dictionaries-common: implemented-in::lisp, implemented-in::perl, role::plugin, role::program, scope::utility, special::auto-inst-parts, works-with::dictionary
+dictionaries-common-dev: devel::debian, devel::doc, devel::library, role::data, role::program, scope::utility, suite::debian, works-with::dictionary
+dictionary-el: implemented-in::lisp, network::client, role::plugin, role::program, suite::emacs, use::checking, works-with::dictionary
+dictionaryreader.app: role::program
+dictzip: interface::commandline, role::program, scope::utility, use::compressing, works-with::dictionary
+didiwiki: implemented-in::c, interface::web, network::server, role::program, web::server, web::wiki, works-with-format::html, works-with::text
+dietlibc: devel::lang:c, devel::library, interface::commandline, role::shared-lib
+dietlibc-dev: devel::lang:c, devel::library, interface::commandline, role::devel-lib
+dietlibc-doc: devel::doc, devel::lang:c, devel::library, role::documentation
+diff: interface::commandline, role::program, scope::utility, suite::gnu, use::synchronizing, works-with::file, works-with::text
+diff-doc: interface::commandline, made-of::data:info, role::documentation, suite::gnu, use::synchronizing, works-with::file, works-with::text
+diffmon: interface::commandline, role::program, scope::utility, use::configuring, use::monitor, works-with::mail, works-with::text
+diffstat: devel::rcs, interface::commandline, role::program, scope::utility, use::synchronizing, works-with::image
+digikam: hardware::camera, implemented-in::c++, interface::x11, role::program, scope::application, suite::kde, uitoolkit::qt, use::browsing, use::organizing, use::searching, works-with::image, works-with::image:raster, x11::application
+digikamimageplugins: hardware::camera, implemented-in::c++, interface::x11, role::plugin, suite::kde, uitoolkit::qt, use::converting, use::editing, works-with::image, works-with::image:raster, x11::application
+digikamimageplugins-doc: role::documentation, x11::application
+digitaldj: devel::lang:sql, interface::x11, role::program, scope::application, sound::player, uitoolkit::gtk, use::organizing, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, works-with::db, x11::application
+digitemp: hardware::detection, interface::commandline, role::program, scope::utility, use::monitor
+dillo: implemented-in::c, interface::x11, network::client, protocol::http, protocol::ssl, role::program, uitoolkit::gtk, use::browsing, web::browser, x11::application
+dime: devel::library, implemented-in::c++, role::shared-lib, works-with-format::vrml, works-with::3dmodel
+ding: implemented-in::tcl, interface::x11, role::program, scope::application, uitoolkit::tk, use::checking, works-with::dictionary, x11::application
+diogenes: culture::dutch, culture::french, culture::spanish, culture::swedish, devel::rcs, implemented-in::php, interface::web, network::server, protocol::http, protocol::ldap, protocol::webdav, role::program, web::cms, works-with-format::html, works-with::db, works-with::text
+diploma: devel::buildtools, devel::examples, interface::commandline, role::data, use::typesetting, works-with-format::tex, works-with::image, works-with::text
+dircproxy: filetransfer::dcc, interface::daemon, network::server, protocol::irc, role::program, use::chatting, use::proxying
+dirdiff: devel::rcs, interface::x11, role::program, scope::application, uitoolkit::tk, use::synchronizing, works-with::text, x11::application
+directory-administrator: admin::user-management, implemented-in::c, interface::x11, suite::gnome, uitoolkit::gtk
+directoryassistant: interface::x11, protocol::ldap, role::program, scope::application, uitoolkit::gtk, use::organizing, works-with::db, works-with::pim, x11::application
+directvnc: admin::monitoring, interface::framebuffer, network::client, role::program, use::login, use::viewing
+dirmngr: interface::daemon, network::server, protocol::ldap, role::program, security::cryptography, use::downloading, works-with::db, x11::application
+dirvish: admin::backup, implemented-in::perl, interface::commandline, role::program, scope::utility, use::synchronizing, works-with::file
+disc-cover: implemented-in::perl, interface::commandline, role::program, scope::application, use::printing, works-with-format::html, works-with-format::pdf, works-with-format::postscript, works-with-format::tex, works-with::text
+discover: admin::boot, admin::configuring, admin::hardware, hardware::detection, interface::commandline, role::program, scope::utility
+discover-data: admin::boot, admin::configuring, admin::hardware, devel::library, hardware::detection, interface::commandline, role::app-data, special::auto-inst-parts
+discover1: admin::boot, admin::configuring, admin::hardware, hardware::detection, interface::commandline, role::program, scope::utility
+discover1-data: admin::boot, admin::configuring, admin::hardware, devel::library, hardware::detection, interface::commandline, role::app-data, special::obsolete
+discus: implemented-in::python, interface::commandline, role::program, scope::utility, use::scanning
+diskless: use::configuring
+diskless-image-secure: use::configuring
+diskless-image-simple: use::configuring
+disktype: admin::recovery, hardware::storage, interface::commandline, role::program, scope::utility, use::scanning, works-with-format::iso9660, works-with::archive
+display-dhammapada: interface::commandline, role::program, scope::utility, use::viewing, works-with::text
+displaycalibrator.app: implemented-in::objc, interface::x11, role::plugin, suite::gnustep, uitoolkit::gnustep, use::configuring, x11::applet
+dissy: devel::debugger, devel::interpreter, implemented-in::python, role::special:not-applicable, uitoolkit::gtk
+dist: admin::file-distribution, devel::buildtools, devel::code-generator, devel::lang:perl, interface::commandline, role::program, scope::utility, works-with::software:source
+distcc: admin::cluster, devel::buildtools, devel::lang:c, devel::lang:c++, interface::commandline, interface::daemon, network::client, network::server, role::program, uitoolkit::gtk, works-with::software:source
+distccmon-gnome: admin::cluster, devel::buildtools, devel::lang:c, devel::lang:c++, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::monitor, works-with::software:source, x11::application
+distmp3: admin::cluster, interface::commandline, interface::daemon, network::client, network::server, role::program, use::converting, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+distributed-net: field::mathematics, interface::commandline, network::client, role::program, scope::utility, use::searching
+diveintopython: devel::doc, devel::examples, devel::lang:python, made-of::data:html, role::documentation
+divine: hardware::laptop
+divxcomp: implemented-in::perl, interface::commandline, role::program, scope::utility, use::checking, works-with::video
+djbdns-installer: protocol::dns
+djbdoc2man: implemented-in::python, interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with-format::man, works-with::text
+djtools: hardware::printer, interface::commandline, role::program, scope::utility, use::driver, use::printing
+djview: interface::commandline, interface::x11, role::program, scope::application, uitoolkit::qt, use::viewing, works-with::image, works-with::image:raster, x11::application
+djvulibre-bin: culture::japanese, interface::commandline, role::program, scope::utility, use::compressing, use::converting, works-with::image, works-with::image:raster
+djvulibre-plugin: interface::web, role::plugin, role::shared-lib, use::viewing, works-with::image, works-with::image:raster
+djvuserve: interface::commandline, interface::web, role::program, scope::utility, use::viewing, web::cgi, works-with::image, works-with::image:raster
+dlint: interface::commandline, network::client, protocol::dns, role::program, use::checking
+dlocate: admin::package-management, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, use::searching, works-with::file, works-with::software:package
+dlume: implemented-in::c, interface::x11, role::program, scope::application, uitoolkit::gtk, use::editing, use::organizing, use::searching, works-with-format::xml, works-with::pim, x11::application
+dmachinemon: admin::monitoring, interface::daemon, network::service, use::monitor, works-with::software:running
+dmachinemon-master: admin::monitoring, interface::daemon, network::server, network::service, role::program, use::monitor, works-with::software:running
+dmachinemon-servent: admin::monitoring, interface::daemon, network::client, network::server, network::service, role::program, use::monitor, works-with::software:running
+dmachinemon-treeview: admin::monitoring, interface::daemon, network::client, network::service, role::program, use::viewing, works-with::software:running
+dmake: devel::buildtools, interface::commandline, role::program, scope::utility, suite::openoffice, works-with::software:source
+dmalloc: devel::debugger, role::dummy
+dmenu: implemented-in::c, interface::commandline, role::program, scope::utility, uitoolkit::xlib, x11::application
+dmidecode: admin::hardware, hardware::detection, interface::commandline, role::program, scope::utility, use::viewing
+dmraid: admin::filesystem, hardware::storage, implemented-in::c, interface::commandline, role::program, scope::utility, use::scanning
+dmsetup: admin::filesystem, interface::commandline, role::program, scope::utility, use::configuring
+dmx4linux-tools: uitoolkit::ncurses
+dnet-common: interface::daemon, interface::text-mode, network::client, network::server, network::service, role::program, special::auto-inst-parts, uitoolkit::ncurses, use::configuring
+dnet-progs: interface::daemon, interface::text-mode, network::client, network::server, network::service, role::program, uitoolkit::ncurses, use::configuring
+dnotify: interface::commandline, use::monitor, works-with::file
+dns-browse: implemented-in::tcl, interface::commandline, interface::x11, network::client, protocol::dns, role::program, use::browsing, x11::application
+dnscvsutil: admin::backup, devel::rcs, implemented-in::perl, interface::commandline, protocol::dns, role::program, scope::utility, use::configuring
+dnsdoctor: implemented-in::ruby, interface::commandline, network::client, protocol::dns, role::program, use::checking
+dnsdoctor-cgi: implemented-in::ruby, interface::commandline, interface::web, network::client, protocol::dns, role::program, use::checking, web::cgi
+dnshistory: implemented-in::c, interface::commandline, role::program, scope::utility, works-with::logfile
+dnsmasq: admin::boot, interface::daemon, network::server, protocol::dhcp, protocol::dns, role::program, use::proxying
+dnstop: interface::text-mode, protocol::dns, role::program, scope::utility, uitoolkit::ncurses, use::monitor
+dnstracer: interface::commandline, network::client, protocol::dns, role::program, use::searching
+dnsutils: interface::commandline, network::client, protocol::dns, role::program
+dnswalk: implemented-in::perl, interface::commandline, network::client, protocol::dns, role::program, use::checking
+doc++: devel::docsystem, devel::lang:c, devel::lang:c++, devel::lang:java, interface::commandline, role::program, scope::utility, works-with-format::html, works-with-format::tex, works-with::software:source, works-with::text
+doc-base: admin::configuring, implemented-in::perl, interface::web, protocol::http, role::documentation, role::program, scope::utility, suite::debian
+doc-central: implemented-in::python, interface::web, network::server, protocol::http, role::program, suite::debian, use::browsing, web::cgi
+doc-debian: role::documentation, suite::debian
+doc-debian-es: culture::spanish, role::documentation, suite::debian
+doc-debian-fr: culture::french, role::documentation, suite::debian
+doc-debian-ja: culture::japanese, role::documentation, suite::debian
+doc-debian-ko: culture::korean, role::documentation, suite::debian
+doc-debian-uk: culture::ukrainian
+doc-gnome-hig: devel::doc, made-of::data:html, role::documentation, suite::gnome
+doc-html-w3: role::documentation
+doc-iana: devel::doc, role::documentation
+doc-linux-de: culture::german, made-of::data:html, role::documentation
+doc-linux-es: culture::spanish, role::documentation
+doc-linux-fr-html: culture::french, made-of::data:html, role::documentation
+doc-linux-fr-text: culture::french, role::documentation
+doc-linux-hr: culture::croatian, role::documentation
+doc-linux-html: made-of::data:html, role::documentation
+doc-linux-html-ko: culture::korean, role::documentation
+doc-linux-html-pt: culture::brazilian, culture::portuguese, role::documentation
+doc-linux-it: culture::italian, role::documentation
+doc-linux-it-text: culture::italian, role::documentation
+doc-linux-ja-html: culture::japanese, made-of::data:html, role::documentation
+doc-linux-ja-text: culture::japanese, role::documentation
+doc-linux-nl-html: culture::dutch, made-of::data:html, role::documentation
+doc-linux-nl-text: culture::dutch, role::documentation
+doc-linux-nonfree-html: made-of::data:html, role::documentation, special::not-yet-tagged, special::not-yet-tagged::d
+doc-linux-nonfree-text: role::documentation, special::not-yet-tagged, special::not-yet-tagged::d
+doc-linux-pl: culture::polish, role::documentation
+doc-linux-pl-html: culture::polish, made-of::data:html, role::documentation
+doc-linux-sv-html: culture::swedish, made-of::data:html, role::documentation
+doc-linux-sv-text: culture::swedish, role::documentation
+doc-linux-text: made-of::TODO, role::documentation
+doc-linux-text-ko: culture::korean, role::documentation
+doc-linux-text-pt: culture::brazilian, culture::portuguese, role::documentation
+doc-rfc: devel::doc, role::documentation
+doc-rfc-0001-0999: devel::doc, role::documentation
+doc-rfc-1000-1999: devel::doc, role::documentation
+doc-rfc-2000-2999: devel::doc, role::documentation
+doc-rfc-3000-3999: devel::doc, role::documentation
+doc-rfc-experimental: devel::doc, role::documentation
+doc-rfc-fyi-bcp: devel::doc, role::documentation
+doc-rfc-misc: devel::doc, role::documentation
+doc-rfc-old-std: devel::doc, role::documentation
+doc-rfc-std: devel::doc, role::documentation
+doc-rfc-std-proposed: devel::doc, role::documentation
+docbook: role::app-data, use::editing, works-with-format::docbook, works-with::text
+docbook-defguide: devel::doc, made-of::data:html, role::data, role::documentation, works-with-format::docbook, works-with::text
+docbook-doc: devel::doc, made-of::data:html, role::documentation, use::editing, works-with-format::docbook, works-with::text
+docbook-dsssl: interface::commandline, role::app-data, use::converting, use::editing, use::printing, works-with-format::docbook, works-with-format::html, works-with::text
+docbook-dsssl-doc: devel::doc, made-of::data:html, role::documentation, use::converting, use::editing, use::printing, works-with-format::docbook, works-with-format::html, works-with::text
+docbook-ebnf: role::app-data, use::converting, use::editing, works-with-format::docbook, works-with-format::xml, works-with::text
+docbook-html-forms: role::app-data, use::converting, use::editing, works-with-format::docbook, works-with-format::html, works-with::text
+docbook-jrefentry: devel::docsystem, devel::lang:java, role::app-data, use::converting, use::editing, works-with-format::docbook, works-with::software:source, works-with::text
+docbook-mathml: role::app-data, use::editing, works-with-format::docbook, works-with::text
+docbook-simple: role::app-data, use::editing, works-with-format::docbook, works-with::text
+docbook-slides: role::app-data, use::editing, works-with-format::docbook, works-with::text
+docbook-slides-demo: devel::examples, role::app-data, use::editing, works-with-format::docbook, works-with::text
+docbook-to-man: interface::commandline, role::program, scope::utility, use::converting, works-with-format::docbook, works-with-format::man, works-with::text
+docbook-utils: implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, use::editing, use::text-formatting, works-with-format::docbook, works-with-format::html, works-with-format::man, works-with-format::pdf, works-with-format::postscript, works-with::text
+docbook-website: role::app-data, use::editing, works-with-format::docbook, works-with-format::html, works-with::text
+docbook-xml: role::app-data, use::editing, works-with-format::docbook, works-with-format::xml, works-with::text
+docbook-xsl: role::app-data, use::editing, works-with-format::docbook, works-with::text
+docbook-xsl-stylesheets-ko: culture::korean, role::app-data, use::editing, works-with-format::docbook, works-with::text
+docbook2x: interface::commandline, role::program, scope::utility, use::converting, use::text-formatting, works-with-format::docbook, works-with-format::info, works-with-format::man, works-with-format::xml, works-with::text
+docdiff: implemented-in::ruby, interface::commandline, role::program, scope::utility, use::synchronizing, use::text-formatting, works-with::text
+docker: interface::x11, role::program, scope::utility, suite::gnome, suite::gnustep, suite::kde, x11::applet, x11::application
+doclifter: implemented-in::python, interface::commandline, role::program, scope::utility, use::converting, works-with-format::docbook, works-with-format::man, works-with::text
+doctorj: devel::lang:java, devel::testing-qa, interface::commandline, role::program, scope::utility, use::checking, works-with::software:source
+dodgindiamond2: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+dog: interface::commandline, protocol::ftp, protocol::http, role::program, scope::utility, use::converting, use::downloading, works-with::file
+dokuwiki: implemented-in::php, interface::web, protocol::http, special::not-yet-tagged, special::not-yet-tagged::d, web::application, web::wiki, works-with-format::plaintext, works-with::text
+dolphin: implemented-in::c, role::program, suite::kde, uitoolkit::qt, use::organizing, works-with::file
+dome: field::mathematics, interface::commandline, role::program, scope::utility, works-with::image
+domesday: implemented-in::java, interface::commandline, use::organizing, works-with-format::html, works-with::text
+donkey: interface::commandline, role::program, scope::utility, security::cryptography
+doodle: interface::commandline, network::client, role::program, use::searching, works-with::file
+doodled: special::not-yet-tagged, special::not-yet-tagged::d
+doom-package: game::arcade, implemented-in::shell, role::program, use::gameplaying, use::storing
+doom-wad-shareware: game::arcade, special::invalid-tag, use::gameplaying
+doomlegacy-data: game::arcade, role::app-data, use::gameplaying
+doomlegacy-sdl: special::not-yet-tagged, special::not-yet-tagged::d, uitoolkit::sdl
+doomlegacy-x11: special::not-yet-tagged, special::not-yet-tagged::d
+dopewars: game::strategy, interface::text-mode, interface::x11, role::program, uitoolkit::gtk, uitoolkit::ncurses, uitoolkit::sdl, use::gameplaying, x11::application
+dosage: filetransfer::http, implemented-in::python, interface::commandline, network::client, protocol::http, role::app-data, role::program, use::downloading, works-with::image, works-with::image:raster
+dosbox: hardware::emulation, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+doscan: interface::commandline, network::scanner, role::program, scope::utility, use::scanning
+doschk: interface::commandline, role::program, scope::utility, suite::gnu, use::checking, works-with::file
+dosemu: hardware::emulation, role::program
+dosemu-freedos: accessibility::special:not-applicable, admin::hardware, filetransfer::special:not-applicable, game::special:not-applicable, interface::commandline, junior::special:not-applicable, made-of::special:not-applicable, mail::special:not-applicable, network::special:not-applicable, protocol::special:not-applicable, role::special:todo, scope::suite, security::special:not-applicable, sound::special:not-applicable, special::not-yet-tagged, special::not-yet-tagged::d, uitoolkit::special:not-applicable, web::special:not-applicable, x11::special:not-applicable
+dosfstools: admin::filesystem, interface::commandline, role::program, scope::utility, use::checking
+dossizola: game::board, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+dossizola-data: game::board, interface::x11, role::app-data, uitoolkit::sdl, use::gameplaying
+dovecot: role::dummy, special::obsolete
+dovecot-common: interface::daemon, mail::imap, mail::pop, network::server, protocol::imap, protocol::pop3, role::program, special::auto-inst-parts, works-with::mail
+dovecot-imapd: interface::daemon, mail::imap, network::server, protocol::imap, role::program, works-with::mail
+dovecot-pop3d: interface::daemon, mail::pop, network::server, protocol::pop3, role::program, works-with::mail
+doxygen: devel::docsystem, devel::lang:c, devel::lang:c++, role::program, scope::utility, works-with-format::html, works-with::software:source, works-with::text
+doxygen-doc: devel::doc, devel::lang:c, devel::lang:c++, made-of::data:html, role::documentation, works-with-format::html, works-with::software:source, works-with::text
+doxygen-gui: devel::docsystem, devel::lang:c, devel::lang:c++, interface::x11, role::program, scope::application, uitoolkit::qt, use::configuring, works-with-format::html, works-with::software:source, works-with::text, x11::application
+doxymacs: devel::docsystem, suite::emacs, use::editing
+dpatch: devel::packaging, devel::rcs, interface::commandline, role::program, scope::utility, suite::debian, use::synchronizing, works-with::software:source
+dphys-config: admin::configuring, role::program, use::configuring, use::synchronizing
+dphys-kernel-packages: admin::package-management, devel::debian, interface::special:not-yet-tagged, role::program, scope::utility, suite::debian, works-with::software:package
+dpkg: admin::package-management, implemented-in::c, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, use::configuring, use::scanning, works-with::software:package
+dpkg-awk: admin::package-management, interface::commandline, role::program, scope::utility, suite::debian, use::searching, works-with::software:package
+dpkg-cross: admin::package-management, devel::debian, devel::packaging, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, works-with::software:package, works-with::software:source
+dpkg-dev: admin::package-management, devel::debian, devel::packaging, implemented-in::c, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, works-with::archive, works-with::software:package, works-with::software:source
+dpkg-dev-el: admin::package-management, devel::debian, devel::packaging, implemented-in::lisp, role::plugin, suite::debian, suite::emacs, use::editing, works-with::software:package, works-with::software:source
+dpkg-doc: devel::packaging, role::documentation, suite::debian
+dpkg-ftp: admin::package-management, filetransfer::ftp, implemented-in::perl, protocol::ftp, role::plugin, suite::debian, use::downloading, works-with::software:package
+dpkg-multicd: admin::package-management, devel::packaging, hardware::storage, hardware::storage:cd, role::plugin, suite::debian, use::downloading, works-with::software:package
+dpkg-repack: admin::package-management, devel::debian, devel::packaging, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, works-with::software:package
+dpkg-ruby: admin::package-management, devel::debian, devel::lang:ruby, devel::library, devel::packaging, implemented-in::ruby, interface::commandline, role::program, scope::utility, suite::debian, works-with::software:package
+dpkg-sig: admin::package-management, devel::debian, devel::packaging, interface::commandline, role::program, scope::utility, security::integrity, suite::debian, works-with::software:package
+dpkg-www: admin::package-management, interface::web, network::server, protocol::http, role::program, suite::debian, use::browsing, web::cgi, works-with::software:package
+dpsyco: admin::configuring, role::metapackage, suite::debian, use::configuring
+dpsyco-base: admin::configuring, admin::user-management, interface::commandline, role::program, scope::utility, suite::debian, use::configuring
+dpsyco-cfengine: admin::configuring, admin::user-management, interface::commandline, role::program, scope::utility, suite::debian, use::configuring
+dpsyco-devel: admin::configuring, admin::user-management, devel::packaging, interface::commandline, role::program, scope::utility, suite::debian, use::configuring
+dpsyco-lib: admin::configuring, admin::user-management, devel::library, implemented-in::shell, interface::commandline, role::program, scope::utility, suite::debian, use::configuring
+dpsyco-mysql: admin::configuring, admin::user-management, devel::lang:sql, interface::commandline, role::program, scope::utility, suite::debian, use::configuring, works-with::db
+dpsyco-patch: admin::configuring, admin::user-management, interface::commandline, role::program, scope::utility, suite::debian, use::configuring, use::synchronizing
+dpsyco-samba: admin::configuring, admin::user-management, filetransfer::smb, interface::commandline, protocol::smb, role::program, scope::utility, suite::debian, suite::samba, use::configuring
+dpsyco-skel: admin::configuring, admin::user-management, interface::commandline, role::program, scope::utility, suite::debian, use::configuring, works-with::file
+dpsyco-ssh: admin::configuring, admin::user-management, interface::commandline, protocol::ssh, role::program, scope::utility, suite::debian, use::configuring
+dpsyco-sudo: admin::configuring, admin::user-management, interface::commandline, role::program, scope::utility, suite::debian, use::configuring
+dput: admin::file-distribution, devel::packaging, implemented-in::python, interface::commandline, protocol::TODO, role::program, suite::debian, use::checking, use::synchronizing, works-with::software:package
+drac: interface::daemon, mail::imap, mail::pop, mail::smtp, network::server, network::service, protocol::dns, protocol::imap, protocol::pop3, protocol::smtp, role::program, security::authentication, use::proxying, works-with::mail
+drac-dev: mail::imap, mail::pop, mail::smtp, network::service, protocol::dns, protocol::imap, protocol::pop3, protocol::smtp, role::devel-lib, security::authentication, use::proxying, works-with::mail
+drawmap: field::geography, interface::commandline, role::program, scope::application, use::converting, works-with::image, works-with::image:raster
+drawtiming: field::electronics, interface::commandline, role::program, scope::utility, use::editing, works-with::image
+drbd0.7-module-source: admin::cluster, admin::kernel, interface::commandline, role::source
+drbd0.7-utils: admin::cluster, interface::commandline, role::program
+drdsl: special::not-yet-tagged, special::not-yet-tagged::d
+drgeo: field::mathematics, interface::x11, role::program, scope::application, suite::gnu, uitoolkit::gtk, use::editing, use::learning, works-with::image, works-with::image:vector, x11::application
+drgeo-doc: field::mathematics, interface::x11, made-of::data:html, role::documentation, suite::gnu, uitoolkit::gtk, use::editing, use::learning, works-with::image, works-with::image:vector, x11::application
+driconf: admin::configuring, culture::german, culture::italian, culture::russian, culture::spanish, implemented-in::python, role::program, scope::utility, uitoolkit::gtk, use::configuring, x11::application, x11::library
+drift: devel::lang:haskell, implemented-in::haskell
+driftnet: interface::x11, protocol::ethernet, role::program, scope::application, uitoolkit::gtk, use::monitor, works-with::image, works-with::image:raster, x11::application
+drip: suite::gnome, uitoolkit::gtk, uitoolkit::ncurses, uitoolkit::sdl, use::converting, works-with::video
+drivel: interface::web, protocol::http, protocol::ssl, uitoolkit::gtk, use::editing, works-with-format::xml, works-with-format::xml:rss, x11::application
+droidbattles: devel::compiler, devel::interpreter, game::simulation, implemented-in::c++, interface::x11, role::program, uitoolkit::qt, use::entertaining, use::gameplaying, x11::application
+dropbear: admin::login, interface::daemon, network::server, network::service, protocol::ssh, role::program, security::authentication, use::login
+drpython: devel::lang:python
+drqueue: admin::cluster, interface::daemon, interface::x11, network::server, role::program, works-with::3dmodel, works-with::software:running, works-with::video, x11::application
+drscheme: devel::ide, devel::interpreter, devel::lang:scheme, interface::x11, role::program, scope::application, scope::utility, use::learning, x11::application
+drsync: admin::backup, implemented-in::perl, interface::commandline, network::client, role::program, use::synchronizing
+drupal: devel::lang:sql, implemented-in::php, interface::web, network::server, protocol::http, role::program, web::cms, works-with-format::html, works-with::db, works-with::text
+drupal-4.7: implemented-in::php, interface::web, protocol::http, role::program, web::application, web::blog
+drupal-theme-marvinclassic: devel::lang:sql, implemented-in::php, interface::web, protocol::http, role::app-data, special::not-yet-tagged, special::not-yet-tagged::d, works-with-format::html, works-with::db, works-with::text
+drupal-theme-unconed: devel::lang:sql, implemented-in::php, interface::web, protocol::http, role::app-data, special::not-yet-tagged, special::not-yet-tagged::d, works-with-format::html, works-with::db, works-with::text
+dselect: admin::package-management, implemented-in::c++, interface::text-mode, role::program, scope::application, suite::debian, uitoolkit::ncurses, works-with::software:package
+dsh: admin::cluster, interface::shell, role::program, scope::utility, use::login
+dsniff: interface::commandline, network::scanner, protocol::ethernet, protocol::http, protocol::ip, protocol::smtp, protocol::ssh, role::program, scope::utility, use::monitor
+dspam: implemented-in::c, mail::filters, mail::smtp, role::program, use::scanning, works-with::db, works-with::mail
+dspam-doc: role::documentation
+dssi-dev: devel::library, role::devel-lib
+dssi-example-plugins: devel::library, uitoolkit::qt
+dssi-host-jack: devel::library
+dssi-utils: devel::library
+dstat: admin::accounting, implemented-in::python, interface::commandline, role::program, scope::utility, use::monitor, works-with::network-traffic
+dtach: interface::commandline, role::program, scope::utility
+dtaus: culture::german, field::finance, hardware::storage, interface::commandline, role::program, scope::application
+dtmfdial: admin::hardware, interface::commandline, protocol::voip, role::program, scope::utility, use::driver, works-with::audio
+duali: culture::arabic, implemented-in::python, interface::commandline, role::program, scope::utility, use::checking, works-with::dictionary
+duali-data: culture::arabic, interface::commandline, role::app-data, use::checking
+dump: admin::backup, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::storing
+dumpasn1: interface::commandline, role::program, scope::utility, use::storing, use::text-formatting, works-with::text
+dumputils: admin::kernel, admin::recovery, implemented-in::c, interface::commandline, role::program, scope::utility, security::forensics, use::configuring
+duplicity: admin::backup, implemented-in::python, interface::commandline, role::program, scope::utility, security::cryptography, works-with-format::tar, works-with::archive
+dupload: admin::file-distribution, devel::packaging, interface::commandline, role::program, scope::utility, suite::debian, works-with::software:package
+durep: hardware::storage, implemented-in::perl, interface::commandline, role::program, scope::utility, use::monitor
+dvb-dev: hardware::video, role::dummy, special::obsolete, use::driver
+dvb-utils: hardware::video, interface::commandline, role::program, scope::utility, use::driver, use::viewing
+dvbackup: admin::backup, hardware::camera, use::storing, works-with::file
+dvbsnoop: hardware::video, interface::commandline, role::program, scope::utility, use::monitor, use::viewing, works-with::video
+dvbstream: interface::commandline, network::service, role::program, scope::utility, use::transmission, works-with::video
+dvbtune: admin::hardware, hardware::video, interface::commandline, role::program, scope::utility, use::configuring, use::driver
+dvd+rw-tools: hardware::storage, hardware::storage:dvd, implemented-in::c++, interface::commandline, role::program, scope::utility, use::storing, works-with-format::iso9660, works-with::archive, works-with::file
+dvdauthor: hardware::storage, hardware::storage:dvd, interface::commandline, role::program, scope::utility, use::storing, works-with::video
+dvdbackup: hardware::storage, hardware::storage:dvd, implemented-in::c, interface::commandline, role::program, scope::utility, use::converting, use::storing, works-with-format::iso9660, works-with::archive, works-with::video
+dvdbackup-dbg: devel::TODO, implemented-in::c, role::TODO
+dvdisaster: uitoolkit::gtk
+dvdisaster-doc: admin::hardware
+dvdrtools: hardware::storage, hardware::storage:cd, hardware::storage:dvd, interface::commandline, role::program, use::storing, works-with-format::iso9660, works-with::file
+dvdtape: hardware::storage, hardware::storage:dvd, implemented-in::c, interface::commandline, role::program, scope::utility, special::completely-tagged, use::converting, use::storing, works-with-format::iso9660
+dvgrab: hardware::camera, interface::commandline, role::program, scope::utility, use::storing, works-with::audio, works-with::video
+dvhtool: admin::filesystem, hardware::storage, interface::commandline, role::program, scope::utility, use::editing
+dvi2dvi: interface::commandline, role::program, scope::utility, use::converting, works-with-format::tex, works-with::text
+dvi2ps: interface::commandline, role::program, scope::utility, use::converting, works-with-format::postscript, works-with-format::tex, works-with::text
+dvi2ps-fontdata-a2n: culture::japanese, interface::commandline, made-of::data:font, role::app-data, use::converting, works-with-format::postscript, works-with-format::tex, works-with::text
+dvi2ps-fontdata-ja: culture::japanese, interface::commandline, made-of::data:font, role::app-data, use::converting, works-with-format::postscript, works-with-format::tex, works-with::text
+dvi2ps-fontdata-n2a: culture::japanese, interface::commandline, made-of::data:font, role::app-data, use::converting, works-with-format::postscript, works-with-format::tex, works-with::text
+dvi2ps-fontdata-ptexfake: culture::japanese, interface::commandline, made-of::data:font, role::app-data, use::converting, works-with-format::postscript, works-with-format::tex, works-with::text
+dvi2ps-fontdata-rsp: culture::japanese, hardware::printer, interface::commandline, made-of::data:font, role::app-data, use::converting, works-with-format::postscript, works-with-format::tex, works-with::text
+dvi2ps-fontdata-tbank: culture::japanese, hardware::printer, interface::commandline, made-of::data:font, role::app-data, use::converting, works-with-format::postscript, works-with-format::tex, works-with::text
+dvi2ps-fontdata-three: culture::japanese, interface::commandline, made-of::data:font, role::app-data, use::converting, works-with-format::postscript, works-with-format::tex, works-with::text
+dvi2ps-fontdesc-morisawa5: culture::japanese, role::app-data, use::converting, use::editing, use::text-formatting, works-with-format::tex, works-with::text
+dvi2tty: interface::commandline, role::program, scope::utility, use::viewing, works-with-format::tex, works-with::text
+dvidvi: interface::commandline, role::program, scope::utility, use::converting, use::printing, works-with-format::tex, works-with::text
+dvifb: interface::framebuffer, role::program, scope::utility, use::viewing, works-with-format::tex, works-with::text
+dvilib2: devel::library, role::shared-lib, use::editing, works-with-format::postscript, works-with-format::tex, works-with::text
+dvilib2-dev: devel::library, role::devel-lib, use::editing, works-with-format::postscript, works-with-format::tex, works-with::text
+dvilx: interface::commandline, role::program, scope::utility, use::viewing, works-with-format::tex, works-with::text, x11::application
+dvipdfm-cjk: culture::chinese, culture::japanese, culture::korean, culture::taiwanese, interface::commandline, role::dummy, special::obsolete, use::converting, works-with-format::pdf, works-with-format::tex, works-with::text
+dvipdfm-cjk-cmap: role::dummy, special::not-yet-tagged, special::not-yet-tagged::d
+dvipdfmx: culture::chinese, culture::japanese, culture::korean, culture::taiwanese, interface::commandline, role::program, scope::utility, use::converting, works-with-format::pdf, works-with-format::tex, works-with::text
+dvipng: interface::commandline, role::program, scope::utility, use::viewing, works-with-format::png, works-with-format::tex, works-with::image, works-with::image:raster, works-with::text
+dvipost: scope::utility, works-with-format::tex
+dvips-fontdata-n2bk: culture::japanese, made-of::data:font, role::app-data, works-with-format::tex, works-with::text
+dvipsk-ja: culture::japanese, role::program, scope::utility, use::converting, use::editing, works-with-format::postscript, works-with-format::tex, works-with::text
+dvisvga: interface::svga, role::program, scope::utility, use::viewing, works-with-format::tex, works-with::text
+dviutils: interface::commandline, role::program, scope::utility, use::editing, works-with-format::tex, works-with::text
+dvorak7min: game::typing, hardware::input:keyboard, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::gameplaying, use::learning
+dvr: uitoolkit::qt
+dwm: implemented-in::c, role::program, uitoolkit::xlib, x11::window-manager
+dwm-tools: implemented-in::c, interface::commandline, role::program, scope::utility, uitoolkit::xlib, x11::application
+dwww: implemented-in::c, implemented-in::perl, interface::web, role::program, scope::utility, suite::debian, use::searching, web::cgi, works-with-format::html, works-with-format::info, works-with-format::man, works-with::text
+dx: interface::x11, role::program, scope::utility, uitoolkit::motif, use::viewing, works-with::image, x11::application
+dx-dev: role::dummy
+dx-doc: interface::x11, made-of::data:html, role::documentation, uitoolkit::motif, use::viewing, works-with::image, x11::application
+dxpc: interface::x11, network::client, network::server, role::program, use::compressing, use::dialing, x11::library
+dxsamples: devel::examples, interface::commandline, role::documentation, role::program, scope::utility, use::viewing, works-with::image
+dynafont: role::app-data, works-with::font, works-with::text, works-with::unicode
+dynamite: interface::commandline, role::program, scope::utility, use::compressing, works-with-format::zip, works-with::archive
+dzedit: devel::docsystem, devel::lang:fortran, interface::commandline, role::program, scope::application, use::editing, works-with::software:source
+e00compr: devel::lang:c, field::geography, interface::commandline, role::program, scope::utility, use::compressing, use::converting, works-with::file, works-with::image:vector
+e16keyedit: implemented-in::c, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::configuring, x11::application
+e16menuedit: implemented-in::c, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::configuring, x11::application
+e16menuedit2: implemented-in::c, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::configuring, x11::application
+e2fsck-static: admin::filesystem, implemented-in::c, interface::commandline, role::program, security::integrity, use::checking
+e2fslibs: role::shared-lib
+e2fslibs-dev: admin::filesystem, devel::library, hardware::storage, role::devel-lib
+e2fsprogs: admin::configuring, admin::filesystem, hardware::storage, interface::commandline, role::program, scope::utility, security::integrity, use::checking
+e2ps: culture::japanese, interface::commandline, role::program, scope::utility, use::converting, use::printing, works-with-format::plaintext, works-with-format::postscript, works-with::text
+e2tools: admin::filesystem, interface::commandline, role::program, scope::utility
+e2undel: admin::filesystem, admin::recovery, interface::commandline, role::program, scope::utility, works-with::file
+e3: implemented-in::c, interface::commandline, role::program, scope::utility, use::editing, works-with::text
+eagle: field::electronics, implemented-in::c++, interface::x11, role::program, scope::application, special::completely-tagged, special::not-yet-tagged, special::not-yet-tagged::e, uitoolkit::qt, use::checking, use::editing, use::printing, x11::application
+eagle-data: field::electronics, role::app-data, role::documentation, special::auto-inst-parts, special::not-yet-tagged, special::not-yet-tagged::e
+eagle-usb-data: hardware::modem, hardware::modem:dsl, hardware::usb, role::app-data, use::driver
+eagle-usb-modules-source: hardware::modem, hardware::modem:dsl, hardware::usb, role::source, use::driver
+eagle-usb-utils: hardware::modem, hardware::modem:dsl, hardware::usb, interface::daemon, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::e, use::driver
+ean13: interface::commandline, role::program, scope::utility, use::converting, works-with::image:raster
+earth3d: uitoolkit::qt
+easychem: field::chemistry, interface::x11, role::program, uitoolkit::gtk, use::editing, x11::application
+easydiff.app: devel::rcs, implemented-in::objc, interface::x11, role::plugin, suite::gnustep, uitoolkit::gnustep, use::synchronizing, works-with::text, x11::applet
+easytag: interface::x11, role::program, scope::application, uitoolkit::gtk, use::editing, use::organizing, works-with-format::mp3, works-with::audio, x11::application
+eb-doc: culture::japanese, hardware::storage, hardware::storage:cd, made-of::data:info, role::documentation, use::viewing, works-with-format::zip, works-with::archive, works-with::text
+eb-utils: hardware::storage, hardware::storage:cd, interface::commandline, role::program, scope::utility, use::viewing, works-with-format::zip, works-with::archive, works-with::text
+eblook: hardware::storage, hardware::storage:cd, interface::commandline, role::program, scope::utility, use::searching, works-with::dictionary
+eboard: game::board, game::board:chess, interface::x11, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+eboard-extras-pack1: game::board, game::board:chess, interface::x11, role::app-data, uitoolkit::gtk, use::gameplaying, x11::application, x11::theme
+ebook-dev-alp: devel::doc, devel::lang:c, made-of::data:pdf, role::data, role::documentation
+ebook-dev-ggad: devel::doc, role::data, role::documentation, suite::gnome, uitoolkit::gtk
+ebook-dev-kde20: devel::runtime, role::data, role::documentation, suite::kde, uitoolkit::qt
+ebtables: admin::kernel, interface::commandline, network::firewall, protocol::ethernet, role::program, scope::utility, security::firewall, use::configuring
+ebview: hardware::storage, hardware::storage:cd, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::searching, works-with::dictionary, x11::application
+ec-fonts-mftraced: special::not-yet-tagged, special::not-yet-tagged::e
+ecamegapedal: interface::x11, role::program, scope::application, uitoolkit::qt, use::editing, works-with::audio, x11::application
+ecartis: mail::list, protocol::smtp, role::app-data, use::organizing, works-with::mail
+ecartis-cgi: interface::web, mail::list, network::server, protocol::http, protocol::smtp, role::program, use::organizing, web::cgi, works-with::mail
+ecasound: interface::text-mode, role::program, scope::application, sound::mixer, sound::player, uitoolkit::ncurses, use::editing, works-with::audio
+ecasound-el: implemented-in::lisp, role::plugin, sound::mixer, suite::emacs, use::editing, works-with::audio
+ecasound2.2: sound::mixer, sound::player, works-with::audio
+ecawave: interface::x11, role::program, scope::application, sound::mixer, uitoolkit::qt, use::editing, works-with-format::wav, works-with::audio, x11::application
+ecb: devel::buildtools, implemented-in::lisp, role::plugin, suite::emacs, use::browsing, use::editing, works-with::software:source
+echolot: interface::daemon, mail::smtp, network::scanner, network::server, protocol::smtp, role::program, use::monitor, use::proxying
+echoping: admin::monitoring, implemented-in::c, interface::commandline, network::client, network::scanner, protocol::ipv6, protocol::smtp, protocol::ssl, role::program, scope::application
+eciadsl: hardware::modem, hardware::modem:dsl, hardware::usb, implemented-in::c, interface::daemon, network::server, role::program, use::driver
+ecj-bootstrap: devel::compiler, devel::lang:java
+ecj-bootstrap-gcj: devel::compiler, devel::lang:java, role::program, suite::eclipse, works-with::software:source
+ecl: uitoolkit::ncurses
+eclipse: devel::ide, devel::lang:java, interface::x11, role::program, suite::eclipse, works-with::software:source, x11::application
+eclipse-ecj: devel::compiler, devel::lang:java
+eclipse-efj: devel::lang:java, role::program, scope::utility, suite::eclipse
+eclipse-javac: devel::lang:java
+eclipse-jdt: devel::ide, devel::lang:java, suite::eclipse, uitoolkit::TODO
+eclipse-jdt-common: devel::compiler, devel::debugger, devel::ide, devel::lang:java, interface::x11, role::devel-lib, suite::eclipse, works-with::software:source, x11::application
+eclipse-nls-sdk: special::not-yet-tagged, special::not-yet-tagged::e
+eclipse-pde: devel::lang:java, special::invalid-tag
+eclipse-pde-common: devel::ide, devel::lang:java, suite::eclipse
+eclipse-platform: devel::ide, devel::lang:java, interface::x11, role::program
+eclipse-platform-common: devel::ide, devel::lang:java, suite::eclipse
+eclipse-rcp: devel::ide, suite::eclipse, uitoolkit::TODO
+eclipse-sdk: devel::compiler, devel::debugger, devel::lang:java, special::invalid-tag
+eclipse-source: devel::ide, special::not-yet-tagged, special::not-yet-tagged::e
+eclipse-webdav-ftp: special::not-yet-tagged, special::not-yet-tagged::e
+ecos: devel::library, hardware::embedded, role::devel-lib
+ecos-doc: devel::doc, devel::library, hardware::embedded, role::documentation
+ecosconfig: hardware::embedded, interface::x11, uitoolkit::gtk, uitoolkit::wxwidgets, uitoolkit::wxwindows, use::configuring, x11::application
+ed: interface::commandline, interface::text-mode, role::program, scope::utility, suite::gnu, use::editing, works-with::text
+edb: implemented-in::lisp, role::plugin, suite::emacs, use::editing, works-with::db
+edbrowse: accessibility::screen-reader, implemented-in::perl, interface::commandline, protocol::http, protocol::ssl, web::browser, works-with-format::html, works-with::text
+ede: devel::buildtools, implemented-in::lisp, role::plugin, suite::emacs, use::editing, works-with::file
+edenmath.app: field::mathematics, implemented-in::objc, interface::x11, role::plugin, suite::gnustep, uitoolkit::gnustep, x11::applet
+edict: culture::TODO, culture::japanese, made-of::data:dictionary, role::app-data, use::checking
+edict-el: culture::japanese, implemented-in::lisp, role::plugin, suite::emacs, use::checking, works-with::dictionary
+edict-fpw: culture::TODO, culture::japanese, made-of::data:dictionary, role::app-data, use::checking
+edit-json: uitoolkit::gtk
+education-astronomy: field::astronomy, role::metapackage, use::learning
+education-chemistry: field::chemistry, role::metapackage, use::learning
+education-common: role::metapackage, use::configuring, use::learning
+education-desktop-gnome: interface::x11, role::metapackage, suite::gnome, uitoolkit::gtk, use::learning
+education-desktop-kde: interface::x11, role::metapackage, suite::kde, uitoolkit::qt, use::learning
+education-desktop-other: interface::x11, role::metapackage, use::learning
+education-electronics: field::electronics, role::metapackage, use::learning
+education-geography: field::geography, role::metapackage, use::learning
+education-graphics: field::arts, role::metapackage, use::learning, works-with::image
+education-language: role::metapackage, use::learning, works-with::dictionary
+education-laptop: hardware::laptop, role::metapackage, use::learning
+education-logic-games: game::puzzle, role::dummy, special::meta, use::gameplaying, use::learning
+education-main-server: interface::daemon, role::metapackage, role::program, use::learning
+education-mathematics: field::mathematics, role::metapackage, use::learning
+education-misc: role::metapackage, use::learning
+education-music: field::arts, role::metapackage, works-with::music-notation
+education-networked: network::configuration, role::metapackage, use::learning
+education-physics: field::physics, role::metapackage, use::learning
+education-services: network::firewall, role::metapackage, use::learning
+education-standalone: role::metapackage, use::learning
+education-standalone-extras: role::metapackage, use::learning
+education-tasks: admin::package-management, role::metapackage, use::learning
+education-thin-client-server: role::metapackage, use::learning
+education-workstation: role::metapackage, use::learning
+ee: interface::text-mode, role::program, scope::application, uitoolkit::ncurses, use::editing, works-with::text
+eep24c: devel::machinecode, field::electronics, hardware::embedded, interface::commandline, role::program, scope::utility
+efax: hardware::modem, implemented-in::c, interface::commandline, role::program, scope::utility, use::transmission, works-with::fax
+efax-gtk: hardware::modem, interface::x11, uitoolkit::gtk, use::transmission, works-with::fax, x11::application
+effectv: interface::x11, role::program, scope::utility, uitoolkit::sdl, use::converting, works-with::video, x11::application
+efibootmgr: admin::boot, interface::commandline, role::program, scope::utility, use::configuring
+efingerd: interface::daemon, network::server, network::service, role::program, use::searching, works-with::people
+eflite: accessibility::speech, implemented-in::lisp, role::plugin, suite::emacs, works-with::audio
+efp: game::arcade, hardware::emulation, role::app-data, use::gameplaying
+egg: role::plugin, suite::emacs, use::editing
+eggdrop: devel::lang:c, devel::lang:tcl, filetransfer::dcc, implemented-in::c, interface::daemon, network::server, protocol::irc, role::program, use::chatting
+eggdrop-data: filetransfer::dcc, protocol::irc, role::app-data, use::chatting
+eglade: devel::buildtools
+egnome: devel::library, interface::x11, role::shared-lib, suite::gnome, uitoolkit::gtk, x11::application
+egoboo: game::rpg:rogue, interface::3d, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+egoboo-data: game::rpg:rogue, interface::3d, role::app-data, special::auto-inst-parts, use::gameplaying, x11::application
+egroupware: implemented-in::php, interface::web, use::organizing, web::appserver, works-with::db
+egroupware-addressbook: devel::lang:sql, implemented-in::php, interface::web, protocol::ldap, use::organizing, use::storing, web::application, works-with::db, works-with::mail, works-with::pim
+egroupware-bookmarks: implemented-in::php, interface::web, use::organizing, web::application, works-with::db, works-with::pim
+egroupware-calendar: implemented-in::php, interface::web, use::organizing, web::application, works-with::db, works-with::mail, works-with::pim
+egroupware-comic: implemented-in::php, interface::web, web::application, works-with::db
+egroupware-core: implemented-in::php, interface::web, role::app-data, use::organizing, web::appserver, works-with::db
+egroupware-developer-tools: devel::i18n, implemented-in::php, interface::web, use::organizing, web::application, works-with::db, works-with::software:source
+egroupware-email: implemented-in::php, interface::web, mail::imap, mail::pop, mail::smtp, mail::user-agent, protocol::imap, protocol::pop3, protocol::ssl, web::application, works-with::db, works-with::mail
+egroupware-emailadmin: admin::user-management, implemented-in::php, interface::web, use::organizing, web::application, works-with::db, works-with::mail
+egroupware-etemplate: devel::code-generator, devel::lang:php, implemented-in::php, interface::web, use::editing, use::organizing, web::application, works-with::db
+egroupware-felamimail: implemented-in::php, interface::web, mail::user-agent, use::editing, use::organizing, web::application, works-with::db, works-with::mail
+egroupware-filemanager: implemented-in::php, interface::web, use::browsing, use::organizing, web::application, works-with::db, works-with::file
+egroupware-forum: implemented-in::php, interface::web, web::application, web::cms, works-with::db
+egroupware-ftp: filetransfer::ftp, implemented-in::php, interface::web, network::client, protocol::ftp, role::program, web::application, works-with::db
+egroupware-fudforum: implemented-in::php, interface::web, web::application, web::cms, works-with::db
+egroupware-headlines: implemented-in::php, interface::web, web::application, works-with-format::xml:rss, works-with::db
+egroupware-infolog: devel::bugtracker, implemented-in::php, interface::web, use::organizing, web::application, works-with::bugs, works-with::db
+egroupware-jinn: implemented-in::php, interface::web, web::application, works-with::db, works-with::pim
+egroupware-ldap: implemented-in::php, interface::web, protocol::ldap, use::organizing, web::application, works-with::db
+egroupware-manual: implemented-in::php, interface::web, made-of::data:html, role::documentation, use::organizing, web::application, works-with::db
+egroupware-messenger: implemented-in::php, interface::web, web::application, works-with::db
+egroupware-news-admin: implemented-in::php, interface::web, use::organizing, web::application, web::cms, works-with::db
+egroupware-phpbrain: implemented-in::php, interface::web, use::organizing, web::application, web::cms, works-with::db
+egroupware-phpldapadmin: implemented-in::php, interface::web, use::configuring, web::application
+egroupware-phpsysinfo: hardware::detection, implemented-in::php, interface::web, use::organizing, web::application, works-with::db
+egroupware-polls: implemented-in::php, interface::web, use::organizing, web::application, works-with::db, works-with::people
+egroupware-projects: implemented-in::php, interface::web, use::timekeeping, web::application, works-with::db
+egroupware-registration: admin::user-management, implemented-in::php, interface::web, use::organizing, web::application, works-with::db
+egroupware-sitemgr: implemented-in::php, interface::web, use::organizing, web::application, web::cms, works-with::db
+egroupware-stocks: field::finance, implemented-in::php, interface::web, web::application, works-with::db
+egroupware-tts: devel::bugtracker, implemented-in::php, interface::web, web::application, works-with::bugs, works-with::db
+egroupware-wiki: implemented-in::php, interface::web, use::organizing, web::application, web::wiki, works-with::db
+egtk: devel::lang:c, devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+eiciel: uitoolkit::gtk
+eieio: devel::editor, implemented-in::lisp, role::plugin, suite::emacs, use::editing
+einstein: game::puzzle, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+ejabberd: implemented-in::TODO, network::server, protocol::jabber, role::program, special::not-yet-tagged, special::not-yet-tagged::e
+eject: hardware::storage, hardware::storage:cd, implemented-in::c, interface::commandline, role::program, scope::utility, use::driver
+ekg: culture::polish, implemented-in::c, interface::text-mode, network::client, protocol::ssl, role::program, uitoolkit::ncurses, use::chatting
+ekiga: protocol::voip, role::program, uitoolkit::gtk, works-with::audio
+elastic-base: devel::interpreter
+elastic-doc: devel::interpreter, role::documentation
+eldav: implemented-in::lisp, network::client, protocol::webdav, role::plugin, role::program, suite::emacs, use::editing
+electric: field::electronics, interface::x11, role::program, scope::application, suite::gnu, uitoolkit::motif, use::editing, x11::application
+electric-fence: devel::debugger, role::shared-lib, works-with::software:running
+electricsheep: game::toys, interface::x11, network::server, network::service, role::program, uitoolkit::sdl, use::downloading, use::viewing, works-with::video, x11::screensaver
+elfsh: devel::testing-qa, interface::shell, role::program, scope::utility, uitoolkit::ncurses
+elfsign: interface::commandline, protocol::ssl, role::program, scope::utility, security::cryptography
+elfutils: devel::buildtools, devel::testing-qa, interface::commandline, role::program, scope::utility, use::checking, use::viewing, works-with::software:source
+eli: devel::code-generator, devel::compiler, interface::shell, role::program, scope::utility, uitoolkit::ncurses, works-with::software:source
+eli-doc: devel::code-generator, devel::compiler, devel::doc, made-of::data:html, made-of::data:postscript, role::documentation, works-with::software:source
+eli-xtools: devel::code-generator, devel::compiler, interface::x11, role::program, scope::utility, uitoolkit::tk, x11::application
+elib: devel::examples, devel::lang:lisp, devel::library, implemented-in::lisp, role::devel-lib, suite::emacs, suite::gnu, use::editing
+elilo: admin::boot, admin::hardware, interface::commandline, role::program, scope::utility, use::driver
+elinks: devel::lang:lua, interface::text-mode, network::client, protocol::http, protocol::ipv6, protocol::ssl, role::program, uitoolkit::ncurses, use::browsing, web::browser, works-with-format::html, works-with::text
+elinks-lite: interface::text-mode, network::client, protocol::http, role::program, use::browsing, web::browser, works-with-format::html, works-with::text
+elisp-manual: devel::doc, devel::lang:lisp, made-of::data:info, role::documentation, suite::emacs
+elisp-manual-ja: culture::japanese, devel::doc, devel::lang:lisp, made-of::data:info, role::documentation, suite::emacs, use::editing
+elk: devel::interpreter, devel::lang:scheme, interface::commandline, role::program, scope::utility, uitoolkit::athena, uitoolkit::motif
+elkdoc: devel::doc, devel::lang:scheme, role::documentation
+elks-libc: devel::lang:c, devel::lang:scheme, devel::library, devel::machinecode, role::devel-lib
+elmo: special::not-yet-tagged, special::not-yet-tagged::e, uitoolkit::ncurses
+elog: interface::daemon, interface::web, network::server, protocol::http, role::program, use::editing, use::organizing, works-with-format::html, works-with-format::xml, works-with-format::xml:rss, works-with::pim, works-with::text
+elpoint: implemented-in::lisp, role::plugin, suite::emacs, use::editing, use::viewing, works-with::image, works-with::image:raster
+elscreen: implemented-in::lisp, interface::commandline, role::plugin, suite::emacs, use::editing
+elserv: implemented-in::lisp, implemented-in::ruby, interface::daemon, network::server, protocol::http, role::plugin, role::program, suite::emacs, use::editing, web::server
+elvis: devel::editor, implemented-in::c, interface::commandline, interface::text-mode, interface::x11, uitoolkit::ncurses, use::editing, web::browser, works-with::text, x11::application
+elvis-common: devel::editor, interface::text-mode, role::app-data, uitoolkit::ncurses, use::editing, works-with::text
+elvis-console: devel::editor, implemented-in::c, interface::text-mode, role::program, scope::application, uitoolkit::ncurses, use::editing, web::browser, works-with::text
+elvis-tiny: devel::editor, implemented-in::c, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::editing, works-with::text
+elvis-tools: devel::editor, interface::commandline, role::program, scope::utility, works-with::software:source, works-with::text
+elza: devel::interpreter, devel::testing-qa, implemented-in::perl, interface::commandline, protocol::http, role::program, scope::utility, web::cgi, works-with-format::html, works-with::text
+em8300: implemented-in::c, interface::commandline, use::viewing, works-with::video
+em8300-bin: uitoolkit::gtk
+em8300-headers: special::not-yet-tagged, special::not-yet-tagged::e
+em8300-source: interface::commandline
+emacs: devel::editor, role::dummy, special::meta, suite::emacs, suite::gnu, use::editing
+emacs-chess: game::board, game::board:chess, implemented-in::lisp, interface::commandline, role::plugin, suite::emacs, use::gameplaying
+emacs-chess-pieces: game::board, game::board:chess, made-of::data:icons, role::app-data, suite::emacs, use::gameplaying
+emacs-color-themes: suite::emacs
+emacs-goodies-el: devel::editor, implemented-in::lisp, role::plugin, suite::emacs, use::editing, works-with::text
+emacs-goodies-extra-el: devel::editor, implemented-in::lisp, interface::commandline, role::dummy, special::obsolete, suite::emacs, use::editing, works-with::text
+emacs-intl-fonts: devel::editor, made-of::data:font, role::app-data, suite::emacs, use::editing, works-with::text, works-with::unicode
+emacs-jabber: suite::emacs
+emacs-lisp-intro: devel::lang:lisp, made-of::data:info, role::documentation, suite::emacs, use::editing
+emacs-lisp-intro-ja: culture::japanese, devel::lang:lisp, made-of::data:info, role::documentation, suite::emacs, use::editing
+emacs-manual-ja: culture::japanese, devel::editor, made-of::data:info, role::documentation, suite::emacs, use::editing
+emacs-snapshot: devel::editor, implemented-in::c, implemented-in::lisp, interface::text-mode, interface::x11, role::program, scope::application, suite::emacs, uitoolkit::athena, uitoolkit::ncurses, use::browsing, use::chatting, use::editing, use::entertaining, use::gameplaying, use::text-formatting, works-with::mail, works-with::software:source, works-with::text
+emacs-snapshot-bin-common: suite::emacs
+emacs-snapshot-common: suite::emacs
+emacs-snapshot-el: suite::emacs
+emacs-snapshot-gtk: devel::editor, implemented-in::c, implemented-in::lisp, interface::text-mode, interface::x11, role::program, scope::application, suite::emacs, uitoolkit::gtk, uitoolkit::ncurses, use::browsing, use::chatting, use::editing, use::entertaining, use::gameplaying, use::text-formatting, works-with::mail, works-with::software:source, works-with::text
+emacs-snapshot-nox: suite::emacs, uitoolkit::ncurses
+emacs-wiki: implemented-in::lisp, role::plugin, suite::emacs, use::editing, web::wiki, works-with-format::html, works-with::text
+emacs21: devel::editor, interface::text-mode, interface::x11, role::metapackage, role::program, suite::emacs, suite::gnu, uitoolkit::athena, uitoolkit::ncurses, use::editing, works-with::dtp, works-with::mail, works-with::text, x11::application
+emacs21-bin-common: devel::editor, interface::commandline, role::program, scope::utility, special::auto-inst-parts, suite::emacs, suite::gnu, use::editing, works-with::text
+emacs21-common: devel::editor, implemented-in::lisp, interface::x11, role::app-data, special::auto-inst-parts, suite::emacs, suite::gnu, uitoolkit::athena, use::editing, works-with::text
+emacs21-common-non-dfsg: suite::emacs
+emacs21-el: devel::editor, devel::library, implemented-in::lisp, role::source, suite::emacs, suite::gnu, use::editing, works-with::text
+emacs21-nox: devel::editor, interface::text-mode, role::program, scope::application, suite::emacs, suite::gnu, uitoolkit::ncurses, use::editing, works-with::text
+emacsen-common: admin::configuring, devel::editor, implemented-in::lisp, role::app-data, special::auto-inst-parts, suite::emacs, use::configuring, works-with::text
+emacspeak: accessibility::screen-reader, accessibility::speech, implemented-in::lisp, implemented-in::perl, implemented-in::tcl, interface::commandline, role::plugin, suite::emacs, use::editing, works-with::audio
+emacspeak-ss: accessibility::screen-reader, accessibility::speech, role::app-data, suite::emacs, use::editing, works-with::audio
+email-reminder: interface::x11, mail::smtp, protocol::smtp, role::program, scope::application, uitoolkit::gtk, use::timekeeping, works-with::mail, works-with::pim, x11::application
+emcast: interface::commandline, protocol::ip, role::program, scope::utility, use::transmission
+emdebian-tools: admin::package-management, devel::buildtools, devel::compiler, devel::debian, devel::packaging, hardware::embedded, implemented-in::perl, interface::commandline, role::program, scope::utility, special::completely-tagged, suite::TODO, suite::debian, works-with::software:package, works-with::software:source
+emelfm: interface::x11, role::program, scope::application, uitoolkit::gtk, use::browsing, use::organizing, works-with::file, x11::application
+emifreq-applet: interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::monitor, x11::applet
+emil: implemented-in::c, interface::commandline, mail::filters, mail::smtp, role::program, scope::utility, use::converting, works-with::mail
+emile: admin::boot, implemented-in::TODO, implemented-in::c, interface::commandline, scope::application
+emile-bootblocks: admin::boot, implemented-in::TODO, implemented-in::c, interface::commandline
+emma: implemented-in::python, interface::x11, role::program, uitoolkit::gtk, use::editing, use::viewing, works-with::db, x11::application
+emms: implemented-in::lisp, interface::commandline, made-of::data:info, sound::player, suite::emacs, suite::gnu, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, works-with::video
+empire: game::strategy, interface::text-mode, role::program, uitoolkit::ncurses, use::gameplaying
+empire-hub: game::strategy, interface::daemon, network::server, role::program, use::gameplaying
+empire-lafe: game::strategy, network::client, role::program, uitoolkit::ncurses, use::gameplaying
+emuga: admin::user-management, interface::commandline, role::program, scope::utility, use::configuring
+emwin: hardware::hamradio
+enamdict: culture::japanese, made-of::data:dictionary, role::app-data, use::checking
+enca: implemented-in::c, interface::commandline, role::program, scope::utility, special::completely-tagged, use::converting, works-with::text, works-with::unicode
+encfs: admin::filesystem, interface::commandline, role::program, scope::utility, security::cryptography
+encore: game::mud, role::app-data, use::gameplaying
+endeavour2: implemented-in::c, implemented-in::c++, interface::x11, role::program, scope::application, uitoolkit::gtk, use::browsing, use::compressing, use::organizing, use::searching, works-with::file, x11::application
+enemies-of-carlotta: culture::finnish, culture::french, culture::spanish, culture::swedish, implemented-in::python, interface::commandline, mail::list, role::program, scope::application, use::special:todo, works-with::mail
+enemylines7: game::fps, role::program, use::gameplaying
+engauge-digitizer: uitoolkit::qt
+enigma: devel::lang:lua, game::TODO, game::puzzle, implemented-in::c++, interface::x11, role::program, scope::application, uitoolkit::sdl, use::gameplaying, x11::application
+enigma-data: game::puzzle, implemented-in::lua, interface::x11, made-of::data:xml, made-of::special:todo, role::app-data, special::auto-inst-parts, uitoolkit::sdl, use::gameplaying, x11::application
+enigma-doc: game::TODO, game::puzzle, made-of::data:html, role::documentation, use::gameplaying
+enigma-level-previews: game::TODO, game::puzzle, made-of::TODO, role::app-data, use::gameplaying
+enigmail: interface::x11, mail::user-agent, role::plugin, security::authentication, security::cryptography, security::integrity, security::privacy, suite::mozilla, use::checking, works-with::mail
+enigmail-locale-ca: culture::catalan
+enigmail-locale-de: culture::german
+enigmail-locale-es-ar: culture::arabic
+enigmail-locale-es-es: culture::spanish
+enigmail-locale-fi: culture::finnish
+enigmail-locale-fr: culture::french
+enigmail-locale-hu: culture::hungarian
+enigmail-locale-it: culture::italian
+enigmail-locale-ja: culture::japanese
+enigmail-locale-nb: culture::bokmaal
+enigmail-locale-nl: culture::dutch
+enigmail-locale-pl: culture::polish
+enigmail-locale-pt-br: culture::brazilian
+enigmail-locale-ru: culture::russian
+enigmail-locale-sk: culture::slovak
+enigmail-locale-sl: culture::slovenian
+enigmail-locale-sv: culture::swedish
+enigmail-locale-zh-cn: culture::chinese
+enlightenment: interface::x11, role::program, x11::window-manager
+enlightenment-data: interface::x11, role::app-data, x11::window-manager
+enlightenment-theme-bluesteel: interface::x11, role::app-data, x11::theme, x11::window-manager
+enlightenment-theme-brushedmetal: interface::x11, role::app-data, x11::theme, x11::window-manager
+enlightenment-theme-ganymede: interface::x11, role::app-data, x11::theme, x11::window-manager
+enlightenment-theme-shinymetal: interface::x11, role::app-data, x11::theme, x11::window-manager
+enscribe: implemented-in::c, interface::commandline, role::program, scope::utility, use::converting, works-with::audio, works-with::image, works-with::image:raster
+enscript: implemented-in::c, interface::commandline, role::program, scope::utility, special::completely-tagged, use::converting, use::printing, use::text-formatting, works-with-format::html, works-with-format::plaintext, works-with-format::postscript, works-with::text
+ent: devel::testing-qa, field::mathematics, implemented-in::c, interface::commandline, role::program, scope::utility
+entity: devel::lang:perl, devel::ui-builder, interface::x11, role::program, scope::utility, uitoolkit::gtk, works-with-format::xml, x11::application
+entity-c: devel::lang:c, devel::ui-builder, interface::x11, role::shared-lib, uitoolkit::gtk, works-with-format::xml, x11::application
+entity-doc: devel::doc, devel::ui-builder, interface::x11, made-of::data:html, made-of::data:sgml, protocol::ssl, role::documentation, uitoolkit::gtk, works-with-format::xml, x11::application
+entity-gl: devel::ui-builder, interface::x11, role::shared-lib, uitoolkit::gtk, works-with-format::xml, x11::application, x11::library
+entity-javascript: devel::ui-builder, interface::x11, role::app-data, uitoolkit::gtk, works-with-format::xml, x11::application
+entity-python: devel::lang:python, devel::ui-builder, interface::x11, role::app-data, uitoolkit::gtk, works-with-format::xml, x11::application
+entity-tcl: devel::lang:tcl, devel::ui-builder, interface::x11, role::app-data, uitoolkit::gtk, x11::application
+eog: implemented-in::c, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::viewing, works-with-format::jpg, works-with-format::png, works-with::image, works-with::image:raster, works-with::image:vector, x11::application
+eperl: devel::interpreter, devel::lang:perl, implemented-in::perl, interface::commandline, role::program, scope::utility, works-with::software:source
+epic4: filetransfer::dcc, interface::text-mode, network::client, protocol::irc, protocol::ssl, role::program, uitoolkit::ncurses, use::chatting
+epic4-help: filetransfer::dcc, interface::text-mode, protocol::irc, protocol::ssl, role::documentation, uitoolkit::ncurses, use::chatting
+epic4-script-hienoa: filetransfer::dcc, interface::text-mode, protocol::irc, protocol::ssl, role::app-data, uitoolkit::ncurses, use::chatting
+epic4-script-lice: filetransfer::dcc, interface::text-mode, protocol::irc, protocol::ssl, role::app-data, uitoolkit::ncurses, use::chatting
+epic4-script-light: filetransfer::dcc, interface::text-mode, protocol::irc, protocol::ssl, role::app-data, uitoolkit::ncurses, use::chatting
+epic4-script-thirdeye: filetransfer::dcc, protocol::irc, use::chatting
+epiphany: game::arcade, implemented-in::c++, interface::x11, role::program, uitoolkit::special:not-yet-tagged, use::gameplaying, x11::application
+epiphany-browser: filetransfer::http, implemented-in::c, interface::x11, network::client, protocol::http, protocol::ssl, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::browsing, web::browser, works-with-format::html, works-with::text, x11::application
+epiphany-browser-dev: implemented-in::c, interface::x11, protocol::http, role::devel-lib, suite::gnome, uitoolkit::gtk, use::browsing, web::browser, works-with-format::html, works-with::text
+epiphany-data: game::arcade, implemented-in::c++, role::app-data, use::gameplaying
+epiphany-extensions: implemented-in::c, interface::x11, protocol::http, protocol::ssl, role::plugin, suite::gnome, uitoolkit::gtk, use::browsing, web::browser, works-with-format::html, works-with::text, x11::application
+epm: devel::packaging, interface::commandline, interface::x11, role::program, scope::utility, works-with-format::tar, works-with::archive, works-with::software:package, works-with::software:source, x11::application
+epos: accessibility::speech, field::linguistics, implemented-in::c++, interface::commandline, role::program, scope::utility, sound::speech, works-with::audio
+epos-ktd: accessibility::speech, role::app-data
+epos-lpc: accessibility::speech, role::app-data
+epos-ptd: accessibility::speech, role::app-data
+epplets: interface::x11, role::plugin, role::program, scope::utility, x11::applet, x11::application
+epstool: interface::commandline, role::program, scope::utility, use::editing, works-with-format::postscript, works-with::text
+epwutil: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::e, use::compressing, use::scanning, use::viewing, works-with::dictionary
+epydoc-doc: devel::doc, devel::docsystem, devel::lang:python, made-of::data:html, role::documentation, works-with::software:source, x11::application
+eql: interface::commandline, network::load-balancing, role::program, scope::utility, use::configuring, use::routing, works-with::network-traffic
+equivs: admin::package-management, devel::packaging, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, works-with::software:package
+erc: filetransfer::dcc, implemented-in::lisp, network::client, protocol::irc, role::plugin, role::program, suite::emacs, use::chatting
+eric: devel::debugger, devel::editor, devel::ide, devel::lang:python, devel::lang:ruby, implemented-in::python, interface::x11, role::program, scope::application, special::completely-tagged, uitoolkit::qt, use::editing, works-with::software:source, x11::application
+eric-api-files: role::app-data
+erlang: devel::interpreter
+erlang-base: devel::interpreter, uitoolkit::ncurses
+erlang-base-hipe: uitoolkit::ncurses
+erlang-doc-html: devel::interpreter, made-of::data:html, role::documentation
+erlang-manpages: devel::interpreter, made-of::data:man, role::documentation
+eroaster: role::program, scope::utility, use::storing
+eruby: devel::interpreter, devel::lang:ruby, implemented-in::ruby, interface::commandline, role::program, scope::utility, works-with::software:source
+es: interface::shell, role::program, scope::utility, uitoolkit::ncurses
+escputil: hardware::printer, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::driver, use::printing
+esh: interface::shell, role::program, scope::utility
+esix: special::not-yet-tagged, special::not-yet-tagged::e
+eskuel: devel::lang:sql, implemented-in::php, interface::web, network::server, protocol::http, role::program, web::application, works-with::db
+esmtp: interface::daemon, mail::transport-agent, network::server, protocol::smtp, role::program, works-with::mail
+esmtp-run: interface::daemon, mail::transport-agent, network::server, protocol::smtp, role::program, works-with::mail
+esound: interface::daemon, network::server, role::program, works-with::audio
+esound-clients: network::client, role::program, works-with::audio
+esound-common: interface::daemon, role::app-data, special::auto-inst-parts, works-with::audio
+espeak: implemented-in::c++, sound::speech
+esperanza: implemented-in::c++, network::client, role::program, suite::xmms2, uitoolkit::qt
+ess: devel::lang:r, field::statistics, implemented-in::lisp, role::plugin, suite::emacs, use::editing
+estic: admin::hardware, hardware::modem, interface::text-mode, uitoolkit::ncurses, use::configuring
+esvn: devel::rcs, interface::x11, network::client, role::program, uitoolkit::qt, use::synchronizing, x11::application
+esvn-doc: devel::rcs, interface::x11, role::documentation, uitoolkit::qt, use::synchronizing, x11::application
+etalk: implemented-in::lisp, network::client, role::plugin, role::program, suite::emacs, suite::gnu, use::chatting, x11::application
+eterm: interface::x11, role::program, role::shared-lib, scope::utility, x11::terminal
+eterm-themes: interface::x11, role::app-data, x11::terminal, x11::theme
+etherape: admin::monitoring, interface::x11, network::scanner, role::program, suite::gnome, uitoolkit::gtk, use::monitor, works-with::network-traffic, x11::application
+etherboot: admin::boot, interface::commandline, role::program, scope::utility, use::storing
+etherboot-doc: admin::boot, role::documentation, use::storing
+etherconf: admin::configuring, devel::packaging, interface::commandline, network::client, network::configuration, protocol::dhcp, role::program, suite::debian, use::configuring
+ethereal: admin::monitoring, interface::x11, network::scanner, role::program, scope::utility, uitoolkit::gtk, use::scanning, x11::application
+ethereal-common: admin::monitoring, interface::x11, network::scanner, role::app-data, scope::utility, special::auto-inst-parts, uitoolkit::gtk, use::scanning, x11::application
+ethereal-dev: admin::monitoring, devel::library, interface::x11, network::scanner, role::devel-lib, uitoolkit::gtk, use::scanning, x11::application
+etherwake: admin::boot, interface::text-mode, role::program, scope::utility, use::transmission
+ethiop: field::linguistics, interface::commandline, use::editing, works-with-format::tex, works-with::text
+ethstats: admin::monitoring, interface::commandline, role::program, scope::utility, use::monitor
+ethstatus: admin::monitoring, interface::text-mode, protocol::ethernet, uitoolkit::ncurses, use::monitor
+ethtool: admin::hardware, hardware::detection, interface::commandline, network::configuration, role::program, scope::utility
+etktab: interface::x11, role::program, scope::application, uitoolkit::tk, works-with::music-notation, x11::application
+etl-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib
+etpan-ng: interface::text-mode, mail::user-agent, protocol::imap, protocol::nntp, protocol::pop3, uitoolkit::ncurses, works-with::mail
+ettercap: interface::text-mode, network::scanner, role::program, scope::utility, uitoolkit::ncurses, use::scanning
+ettercap-common: interface::text-mode, network::scanner, role::app-data, uitoolkit::ncurses, use::scanning
+ettercap-gtk: interface::x11, network::scanner, role::program, scope::utility, uitoolkit::gtk, uitoolkit::ncurses, use::scanning, x11::application
+eudc: implemented-in::lisp, protocol::ldap, role::plugin, suite::emacs, use::editing, use::searching, works-with::db, works-with::dictionary
+eukleides: field::mathematics, interface::commandline, role::program, scope::utility, uitoolkit::gtk, use::typesetting, works-with-format::postscript, works-with-format::tex, works-with::text
+euler: field::mathematics, implemented-in::c, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::viewing, x11::application
+euler-doc: field::mathematics, role::documentation, uitoolkit::gtk, use::viewing, x11::application
+euro-support: role::documentation, suite::debian, use::configuring, works-with::font
+euro-support-console: interface::text-mode, role::documentation, suite::debian, use::configuring, works-with::font
+euro-support-x: interface::x11, role::documentation, suite::debian, use::configuring, works-with::font
+evilwm: interface::x11, role::program, x11::window-manager
+evince: implemented-in::c, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::viewing, works-with-format::TODO, works-with-format::pdf, works-with-format::postscript, works-with::text, x11::application
+evms: admin::configuring, admin::filesystem, admin::kernel, hardware::storage, interface::commandline, use::configuring
+evms-cli: admin::configuring, admin::filesystem, admin::kernel, hardware::storage, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::configuring
+evms-gui: admin::configuring, admin::filesystem, admin::kernel, hardware::storage, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::configuring, x11::application
+evms-ha: admin::configuring, admin::filesystem, admin::kernel, interface::daemon, network::hiavailability, role::plugin, use::monitor
+evms-ncurses: admin::configuring, admin::filesystem, admin::kernel, hardware::storage, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::configuring
+evolution: interface::x11, mail::imap, mail::pop, mail::smtp, mail::user-agent, network::client, protocol::imap, protocol::pop3, protocol::smtp, protocol::ssl, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::TODO, use::browsing, works-with::mail, x11::application
+evolution-data-server: interface::daemon, network::server, protocol::ldap, protocol::ssl, role::program, suite::gnome, uitoolkit::gtk, works-with::db
+evolution-data-server-dev: devel::library, protocol::ldap, protocol::ssl, role::devel-lib, role::metapackage, suite::gnome, uitoolkit::gtk, works-with::db
+evolution-data-server1.2: special::not-yet-tagged, special::not-yet-tagged::e
+evolution-data-server1.2-dev: special::not-yet-tagged, special::not-yet-tagged::e
+evolution-dev: devel::library, interface::x11, protocol::imap, protocol::pop3, protocol::smtp, role::devel-lib, suite::gnome, uitoolkit::gtk, works-with::mail, x11::application
+evolution-exchange: protocol::kerberos, protocol::ssl, role::plugin, suite::gnome, uitoolkit::gtk, use::converting, works-with::db, works-with::mail
+evolution-jescs: uitoolkit::gtk
+evolution-plugins: mail::TODO, role::plugin, special::not-yet-tagged, special::not-yet-tagged::e, uitoolkit::gtk
+evolution-plugins-experimental: uitoolkit::gtk
+evolution-webcal: special::not-yet-tagged, special::not-yet-tagged::e, uitoolkit::gtk
+evolver: field::mathematics, role::program, scope::application, uitoolkit::ncurses, use::viewing, x11::application
+evolver-doc: field::mathematics, role::documentation, uitoolkit::ncurses, use::viewing, x11::application
+ewiki: implemented-in::php, interface::web, network::server, protocol::http, role::program, use::editing, web::wiki, works-with-format::html, works-with::text
+ewipe: implemented-in::tcl, interface::x11, role::program, scope::application, uitoolkit::tk, use::editing, use::viewing, works-with-format::html, works-with::text, x11::application
+exaile: implemented-in::python, interface::x11, role::program, sound::player, uitoolkit::gtk, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, x11::application
+exdbm: role::shared-lib, use::organizing
+exfalso: implemented-in::python, interface::x11, role::program, scope::application, uitoolkit::gtk, use::editing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+exif: hardware::camera, interface::commandline, role::program, scope::utility, use::scanning, works-with::image, works-with::image:raster
+exiftags: hardware::camera, interface::commandline, role::program, scope::utility, use::scanning, works-with::image, works-with::image:raster
+exiftran: hardware::camera, interface::commandline, role::program, scope::utility, use::converting, works-with::image, works-with::image:raster
+exim: implemented-in::c, interface::daemon, mail::delivery-agent, mail::smtp, mail::transport-agent, network::server, network::service, protocol::ipv6, protocol::smtp, role::program, special::obsolete, works-with::mail
+exim-doc: interface::daemon, made-of::data:info, mail::delivery-agent, mail::smtp, mail::transport-agent, network::server, network::service, protocol::ipv6, protocol::smtp, role::documentation, role::program, works-with::mail
+exim-doc-html: interface::daemon, made-of::data:html, mail::delivery-agent, mail::smtp, mail::transport-agent, network::service, protocol::ipv6, protocol::smtp, role::documentation, works-with::mail
+exim4: implemented-in::c, interface::daemon, mail::delivery-agent, mail::smtp, mail::transport-agent, network::service, protocol::ipv6, protocol::smtp, protocol::ssl, role::dummy, special::meta, works-with::mail
+exim4-base: implemented-in::c, interface::daemon, mail::delivery-agent, mail::smtp, mail::transport-agent, network::server, network::service, protocol::ipv6, protocol::smtp, protocol::ssl, role::program, special::auto-inst-parts, works-with::mail
+exim4-config: admin::configuring, implemented-in::shell, interface::daemon, mail::delivery-agent, mail::smtp, mail::transport-agent, network::service, protocol::ipv6, protocol::smtp, protocol::ssl, role::program, scope::utility, use::configuring, works-with::mail
+exim4-daemon-heavy: implemented-in::c, interface::daemon, mail::delivery-agent, mail::smtp, mail::transport-agent, network::server, network::service, protocol::ipv6, protocol::smtp, protocol::ssl, role::program, works-with::mail
+exim4-daemon-light: implemented-in::c, interface::daemon, mail::delivery-agent, mail::smtp, mail::transport-agent, network::server, network::service, protocol::ipv6, protocol::smtp, protocol::ssl, role::program, works-with::mail
+exim4-doc-html: interface::daemon, made-of::data:html, mail::smtp, mail::transport-agent, network::service, protocol::ipv6, protocol::smtp, protocol::ssl, role::documentation, works-with::mail
+exim4-doc-info: interface::daemon, made-of::data:info, mail::smtp, mail::transport-agent, network::service, protocol::ipv6, protocol::smtp, role::documentation, works-with::mail
+eximon: interface::x11, protocol::smtp, role::program, scope::application, special::obsolete, uitoolkit::athena, use::monitor, works-with::mail, x11::application
+eximon4: interface::x11, protocol::smtp, role::program, scope::application, uitoolkit::athena, use::monitor, works-with::mail, x11::application
+exiv2: devel::lang:c++, implemented-in::c++, interface::commandline, scope::utility, use::converting
+exmap: uitoolkit::gtk
+exmh: implemented-in::tcl, interface::x11, mail::user-agent, network::client, role::program, uitoolkit::tk, works-with::mail, x11::application
+expat: devel::examples, implemented-in::c, interface::commandline, role::program, scope::utility, works-with-format::xml
+expect: devel::interpreter, interface::commandline, interface::shell, role::program, scope::utility, works-with::software:running
+expect-dev: devel::interpreter, interface::commandline, interface::shell, role::devel-lib, works-with::software:running
+expect-tcl8.3-dev: role::devel-lib
+expect5.31: special::not-yet-tagged::e, special::obsolete
+expectk: devel::interpreter, interface::commandline, interface::shell, interface::x11, role::program, scope::utility, uitoolkit::tk, works-with::software:running, x11::application
+expectk-tk8.3: interface::commandline, x11::application
+expectk5.24: special::not-yet-tagged::e, special::obsolete
+expectk5.31: special::not-yet-tagged::e, special::obsolete
+exrtools: interface::commandline, role::program, scope::utility, use::converting, works-with::image, works-with::image:raster
+ext2resize: admin::filesystem, implemented-in::c, interface::commandline, role::program, scope::utility
+extace: interface::x11, network::client, role::program, uitoolkit::gtk, use::viewing, works-with::audio, x11::application
+extipl: admin::boot, admin::hardware, interface::commandline, role::program, scope::utility
+extipl-boot: admin::boot, admin::hardware, role::app-data
+extract: interface::commandline, role::program, scope::utility, use::scanning, works-with::file
+exuberant-ctags: devel::lang:c, devel::lang:c++, devel::lang:java, devel::lang:lisp, devel::lang:lua, devel::lang:perl, devel::lang:php, devel::lang:python, devel::lang:ruby, devel::lang:scheme, devel::lang:tcl, interface::commandline, role::program, scope::utility, use::browsing, use::searching, works-with::software:source
+exult: game::adventure, game::rpg, interface::x11, role::program, uitoolkit::sdl, use::gameplaying
+exult-studio: game::adventure, interface::x11, role::program, uitoolkit::gtk, use::editing
+eyed3: implemented-in::python, interface::commandline, role::program, scope::utility, use::organizing, works-with-format::mp3, works-with::audio
+eyesapplet: game::toys, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::gameplaying, x11::applet, x11::application
+ez-ipupdate: interface::daemon, network::client, network::configuration, protocol::dns, role::program, use::configuring
+ezmlm-browse: implemented-in::python, interface::web, network::client, protocol::http, role::program, web::browser, works-with-format::html, works-with::text
+ezmlm-src: mail::list, works-with::mail
+ezpublish-src: admin::file-distribution, implemented-in::php, interface::web, mail::list, role::program, scope::application, use::organizing, use::storing, web::application, web::cms, works-with-format::html, works-with::file, works-with::text
+f-prot-installer: admin::package-management, interface::commandline, mail::filters, role::program, scope::utility, security::antivirus, use::downloading
+f-spot: field::arts, hardware::camera, implemented-in::c-sharp, interface::x11, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::f, suite::gnome, uitoolkit::gtk, use::organizing, works-with-format::jpg, works-with::image, works-with::image:raster, x11::application
+f2c: devel::compiler, devel::lang:fortran, interface::commandline, role::program, scope::utility, use::converting, works-with::software:source
+faad: interface::commandline, role::program, scope::utility, sound::compression, use::converting, works-with::audio
+facter: devel::lang:ruby, devel::library, implemented-in::ruby, interface::commandline, role::devel-lib, role::program, role::shared-lib
+facturalux: culture::german, culture::spanish, devel::bugtracker, devel::lang:sql, implemented-in::c++, interface::x11, role::program, scope::application, uitoolkit::qt, works-with::bugs, works-with::db, x11::application
+facturalux-dev: culture::german, culture::spanish, devel::bugtracker, devel::lang:sql, devel::library, implemented-in::c++, interface::x11, role::devel-lib, uitoolkit::qt, works-with::bugs, works-with::db, x11::application
+fai: admin::boot, admin::cluster, admin::package-management, implemented-in::perl, interface::daemon, network::server, role::program, scope::application, suite::debian, use::configuring, use::synchronizing, works-with::software:package
+fai-client: admin::automation, admin::cluster, admin::configuring, admin::package-management, implemented-in::perl, implemented-in::shell, interface::commandline, role::program, use::configuring
+fai-doc: role::documentation
+fai-kernels: admin::automation, admin::kernel, implemented-in::c, role::special:todo, suite::debian
+fai-nfsroot: role::special:todo, special::auto-inst-parts
+fai-quickstart: role::special:todo
+fai-server: admin::automation, admin::cluster, admin::configuring, admin::package-management, implemented-in::perl, implemented-in::shell, interface::commandline, role::special:todo, use::configuring
+fail2ban: admin::automation, admin::logging, admin::monitoring, implemented-in::python, interface::commandline, interface::daemon, network::firewall, protocol::ip, role::program, security::authentication, security::firewall, security::ids, security::log-analyzer, use::login, use::monitor, works-with-format::plaintext, works-with::logfile, works-with::text
+fake: devel::lang:tcl, interface::commandline, network::hiavailability, protocol::ip, role::program, scope::utility
+fakechroot: devel::packaging, interface::commandline, role::program, role::shared-lib, scope::utility, suite::debian
+fakepop: interface::daemon, mail::pop, network::server, protocol::pop3, protocol::ssl, role::program
+fakeroot: devel::packaging, interface::commandline, role::program, role::shared-lib, scope::utility, suite::debian
+falconseye: game::rpg:rogue, role::program, uitoolkit::ncurses, uitoolkit::sdl, use::gameplaying
+falconseye-data: game::rpg:rogue, role::app-data, special::auto-inst-parts, use::gameplaying
+falselogin: admin::login, interface::shell, role::program, scope::utility, security::authentication
+fam: devel::rpc, implemented-in::c++, interface::daemon, network::server, role::program, use::monitor, works-with::file
+fantasdic: implemented-in::ruby, interface::x11, made-of::data:dictionary, role::app-data, uitoolkit::gtk, works-with::dictionary, x11::application
+fapg: implemented-in::c, interface::commandline, role::program, scope::utility, use::organizing, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::audio
+faqomatic: implemented-in::perl, interface::web, network::server, protocol::http, role::program, web::application, web::cgi, works-with-format::html, works-with::text
+farpd: interface::daemon, network::server, role::program
+fast-user-switch-applet: implemented-in::c, role::plugin, uitoolkit::gtk
+fastdep: devel::code-generator, implemented-in::c, implemented-in::c++, interface::commandline, role::program, scope::utility, works-with::software:source
+fastdnaml: field::biology, interface::commandline, role::program, scope::utility
+fastjar: devel::lang:java, implemented-in::c, interface::commandline, role::program, scope::utility, use::storing, works-with-format::zip, works-with::archive
+fastlink: field::biology, interface::commandline, role::program, scope::utility
+fastlink-doc: field::biology, role::documentation
+fatsort: interface::commandline, role::program, scope::utility, works-with::text
+faubackup: admin::backup, hardware::storage, interface::commandline, interface::daemon, role::program, scope::utility, use::storing
+fb-music-high: game::tetris, role::app-data, use::gameplaying
+fb-music-low: game::tetris, role::app-data, use::gameplaying
+fbb: hardware::hamradio, interface::daemon, interface::text-mode, network::server, role::program, scope::utility, uitoolkit::ncurses
+fbbdoc: hardware::hamradio, interface::daemon, interface::text-mode, made-of::data:html, role::documentation, uitoolkit::ncurses
+fbdesk: interface::x11, role::program, scope::utility, x11::applet
+fbgetty: admin::login, interface::commandline, interface::framebuffer, role::program, scope::utility, use::login
+fbgrab: implemented-in::c, interface::commandline, interface::framebuffer, role::program, scope::utility, use::storing, works-with-format::png, works-with::image, works-with::image:raster
+fbi: interface::framebuffer, role::program, scope::utility, use::viewing, works-with::image, works-with::image:raster
+fbiterm: interface::framebuffer, role::program, scope::utility, use::login
+fblogo: admin::boot, interface::commandline, role::program, scope::utility, use::converting, works-with::image, works-with::image:raster, works-with::software:source
+fbpager: implemented-in::c++, interface::x11, role::program, scope::utility, x11::applet, x11::application
+fbpanel: interface::x11, role::program, scope::utility, uitoolkit::gtk, works-with::software:running, x11::applet, x11::application
+fbset: implemented-in::c, interface::commandline, interface::framebuffer, role::program, scope::utility, use::configuring
+fbtv: interface::framebuffer, role::program, scope::utility, uitoolkit::ncurses, use::viewing, works-with::video
+fceu: hardware::emulation, interface::x11, role::program, scope::application, uitoolkit::sdl, use::gameplaying, x11::application
+fcheck: interface::daemon, network::server, role::program, security::ids, use::monitor, works-with::file
+fcitx: accessibility::input, culture::chinese, game::toys, interface::x11, use::gameplaying, x11::application
+fcmp: game::strategy, use::gameplaying
+fcrackzip: interface::commandline, role::program, scope::utility, security::cryptography, use::converting, works-with-format::zip, works-with::archive
+fcron: interface::daemon, network::server, role::program, use::timekeeping
+fda: devel::debugger
+fdclone: interface::shell, interface::text-mode, role::program, scope::application, uitoolkit::ncurses, use::browsing, use::organizing, works-with::file
+fdflush: admin::hardware, hardware::storage:floppy, interface::commandline, role::program, scope::utility, use::synchronizing
+fdupes: interface::text-mode, role::program, scope::utility, use::searching, works-with::file
+fdutils: admin::filesystem, admin::hardware, hardware::storage:floppy, interface::commandline, role::program, scope::utility, use::configuring
+feed2imap: implemented-in::ruby, interface::commandline, mail::TODO, network::client, protocol::http, protocol::imap, protocol::ssl, role::program, scope::utility, use::downloading, use::monitor, use::storing, web::blog, works-with-format::xml, works-with-format::xml:rss, works-with::mail
+feh: interface::x11, role::program, scope::application, use::browsing, use::viewing, works-with::image, works-with::image:raster, x11::application
+felix: implemented-in::ocaml
+felt: devel::interpreter, field::mathematics, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::learning
+felt-doc: devel::interpreter, field::mathematics, interface::text-mode, made-of::data:postscript, role::documentation, uitoolkit::ncurses, use::learning
+fence: special::not-yet-tagged, special::not-yet-tagged::f
+fence-gnbd: special::not-yet-tagged, special::not-yet-tagged::f
+fenris: devel::debugger, devel::testing-qa
+ferite: devel::interpreter
+ferite-doc: role::documentation
+ferm: devel::compiler, interface::commandline, network::firewall, role::program, scope::utility, security::firewall, use::configuring
+ferret: suite::gnu
+festalon: special::not-yet-tagged, special::not-yet-tagged::f
+festival: accessibility::speech, devel::interpreter, implemented-in::scheme, interface::text-mode, network::client, network::server, role::program, sound::speech, uitoolkit::ncurses, works-with::audio
+festival-dev: accessibility::speech, devel::interpreter, devel::lang:scheme, devel::library, implemented-in::scheme, interface::text-mode, role::devel-lib, uitoolkit::ncurses, works-with::audio
+festival-doc: accessibility::speech, devel::interpreter, interface::text-mode, made-of::data:html, made-of::data:postscript, role::documentation, sound::speech, uitoolkit::ncurses, works-with::audio
+festival-freebsoft-utils: accessibility::speech, implemented-in::scheme, interface::commandline, role::program, scope::utility, sound::speech, works-with::audio
+festival-hi: accessibility::input, accessibility::speech, interface::text-mode, role::program, sound::speech, works-with::audio
+festlex-cmu: accessibility::speech, made-of::data:dictionary, role::app-data, sound::speech, works-with::audio
+festlex-ifd: accessibility::speech, culture::italian, implemented-in::lisp, role::app-data, sound::speech
+festlex-oald: accessibility::speech, role::app-data
+festlex-poslex: accessibility::speech, made-of::data:dictionary, role::app-data, sound::speech, works-with::audio
+festvox-don: accessibility::speech, role::app-data
+festvox-ellpc11k: accessibility::speech, role::app-data
+festvox-italp16k: accessibility::speech, culture::italian, implemented-in::lisp, role::app-data, sound::speech
+festvox-itapc16k: accessibility::speech, culture::italian, implemented-in::lisp, role::app-data, sound::speech
+festvox-kallpc16k: accessibility::speech, role::app-data, sound::speech, works-with::audio
+festvox-kallpc8k: accessibility::speech, role::app-data, sound::speech, works-with::audio
+festvox-kdlpc16k: accessibility::speech, role::app-data, sound::speech, works-with::audio
+festvox-kdlpc8k: accessibility::speech, role::app-data, sound::speech, works-with::audio
+festvox-rablpc16k: accessibility::speech, role::app-data
+festvox-rablpc8k: accessibility::speech, role::app-data
+festvox-suopuhe-common: role::app-data
+festvox-suopuhe-lj: accessibility::speech, culture::finnish, role::plugin, sound::speech
+festvox-suopuhe-mv: accessibility::speech, culture::finnish, role::plugin, sound::speech
+fet: interface::x11, role::program, scope::application, uitoolkit::qt, use::organizing, x11::application
+feta: admin::configuring, implemented-in::perl, interface::commandline, interface::text-mode, suite::debian, use::configuring, use::learning, works-with::software:package
+fetchmail: interface::daemon, mail::imap, mail::pop, network::client, network::server, protocol::imap, protocol::pop3, protocol::ssl, role::program, works-with::mail
+fetchmail-ssl: interface::daemon, mail::imap, mail::pop, protocol::imap, protocol::pop3, protocol::ssl, role::dummy, special::obsolete
+fetchmailconf: admin::configuring, implemented-in::python, interface::x11, mail::pop, protocol::imap, protocol::pop3, role::program, scope::utility, uitoolkit::tk, use::configuring, works-with::mail, x11::application
+fetchyahoo: implemented-in::perl, interface::commandline, protocol::http, role::program, scope::utility, use::downloading, works-with::mail
+feynmf: field::physics, made-of::data:tex, works-with-format::tex, works-with::text
+ffingerd: interface::daemon, network::server, protocol::finger, role::program, use::searching, works-with::people
+ffmpeg: interface::commandline, interface::x11, network::server, role::program, role::shared-lib, uitoolkit::sdl, use::playing, works-with::audio, works-with::video, x11::application
+ffmpeg2theora: devel::library, implemented-in::c, interface::commandline, role::program, scope::utility, sound::compression, use::converting, works-with-format::oggtheora, works-with::video
+fftw-dev: devel::library, field::mathematics, implemented-in::fortran, role::devel-lib, works-with::image, works-with::image:raster
+fftw-docs: devel::doc, devel::library, field::mathematics, role::documentation, special::not-yet-tagged, special::not-yet-tagged::f, works-with::image, works-with::image:raster
+fftw2: devel::library, field::mathematics, implemented-in::fortran, role::shared-lib, works-with::image, works-with::image:raster
+fftw3: devel::library, field::mathematics, implemented-in::fortran, role::shared-lib, works-with::audio, works-with::image, works-with::image:raster
+fftw3-dev: devel::library, field::mathematics, implemented-in::fortran, role::devel-lib, works-with::image, works-with::image:raster
+fftw3-doc: devel::doc, devel::library, field::mathematics, role::documentation, works-with::image, works-with::image:raster
+fgetty: admin::login, interface::commandline, role::program, scope::utility, use::login
+fgfs-base: game::simulation, role::app-data, special::auto-inst-parts, use::gameplaying
+fglrx-control: admin::configuring, hardware::video, interface::x11, uitoolkit::qt, use::configuring, x11::application
+fglrx-driver: admin::hardware, hardware::video, implemented-in::c, role::plugin, use::driver, x11::special:todo
+fglrx-kernel-src: admin::kernel, hardware::video, implemented-in::c, role::source, use::driver
+fhist: devel::rcs, interface::commandline, role::program, scope::utility, use::synchronizing, works-with::file, works-with::text
+fhist-doc: devel::rcs, interface::commandline, made-of::data:postscript, made-of::data:tex, role::documentation, use::synchronizing, works-with::file
+fiaif: implemented-in::shell, interface::daemon, network::firewall, network::server, role::program, security::firewall, use::configuring
+fibusql: devel::lang:sql, field::finance, implemented-in::php, interface::web, network::client, role::program, web::application, works-with-format::html, works-with-format::xml, works-with::db, works-with::text
+fidelio: interface::x11, network::client, role::program, suite::gnome, uitoolkit::gtk, use::chatting, use::downloading, x11::application
+fidogate: implemented-in::perl, interface::daemon, protocol::fidonet, use::dialing
+fifteenapplet: game::puzzle, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::gameplaying, x11::applet, x11::application
+fig2ps: implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, works-with-format::postscript, works-with-format::tex, works-with::image, works-with::image:vector, works-with::text
+fig2sty: devel::lang:perl, implemented-in::perl, interface::commandline, role::program, scope::utility, use::typesetting, works-with-format::tex, works-with::image, works-with::image:vector, works-with::text
+fig2sxd: interface::commandline, role::program, scope::utility, use::converting, works-with::dtp, works-with::image, works-with::image:vector
+figfonts: special::not-yet-tagged, special::not-yet-tagged::f
+figfonts-cjk: special::not-yet-tagged, special::not-yet-tagged::f
+figlet: interface::commandline, role::program, scope::utility, works-with::font, works-with::text
+fil-plugins: implemented-in::c, role::plugin, works-with::audio
+file: interface::commandline, role::program, scope::utility, use::scanning, works-with::file
+file-kanji: culture::japanese, interface::commandline, role::program, scope::utility, use::checking, use::scanning, works-with::file
+file-rc: admin::boot, admin::configuring, implemented-in::shell, interface::daemon, role::program, use::configuring
+file-roller: implemented-in::c, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::compressing, use::storing, works-with-format::iso9660, works-with-format::tar, works-with-format::zip, works-with::archive, works-with::software:package, x11::application
+filelight: interface::x11, role::program, suite::kde, uitoolkit::qt, use::scanning, works-with::file, x11::application
+filepp: implemented-in::perl, interface::commandline, role::program, scope::utility, works-with::text
+filerunner: filetransfer::ftp, interface::x11, network::client, protocol::ftp, role::program, uitoolkit::tk, use::browsing, use::downloading, x11::application
+fileschanged: admin::filesystem, admin::monitoring, implemented-in::c, interface::commandline, interface::shell, use::monitor, works-with::file
+filetraq: devel::rcs, implemented-in::shell, interface::daemon, role::program, scope::utility, use::checking, use::configuring
+fileutils: interface::commandline, role::dummy, special::obsolete, suite::gnu
+filezilla: filetransfer::ftp, filetransfer::sftp, interface::x11, network::client, protocol::ftp, protocol::sftp, protocol::ssl, role::program, uitoolkit::wxwidgets, uitoolkit::wxwindows, use::downloading, works-with::file, x11::application
+filler: devel::lang:haskell, game::board, role::program, use::gameplaying
+fillets-ng: game::puzzle, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+fillets-ng-data: role::app-data, uitoolkit::sdl, use::gameplaying, x11::application
+fillets-ng-data-cs: role::app-data, special::not-yet-tagged, special::not-yet-tagged::f
+filter: interface::commandline, mail::delivery-agent, mail::filters, role::program, scope::utility, works-with::mail
+filtergen: interface::commandline, network::firewall, role::program, scope::utility, security::firewall, use::configuring
+filterproxy: implemented-in::perl, network::server, protocol::http, role::program, use::proxying, web::server, works-with-format::html, works-with::text
+filters: game::toys, implemented-in::c, implemented-in::perl, interface::commandline, role::program, use::converting, use::gameplaying, works-with::text
+findimagedupes: implemented-in::perl, interface::commandline, role::program, scope::utility, use::searching, works-with::image, works-with::image:raster
+findutils: implemented-in::c, interface::commandline, role::program, scope::utility, use::searching, works-with::file
+finger: interface::commandline, network::client, protocol::finger, role::program, works-with::people
+finger-ldap: interface::commandline, interface::daemon, network::client, network::server, protocol::finger, protocol::ldap, role::program, use::searching, works-with::db, works-with::people
+fingerd: interface::daemon, network::server, protocol::finger, role::program, use::searching, works-with::people
+firebird-utils: devel::lang:sql, implemented-in::shell, interface::commandline, role::program, works-with::db
+firebird1.5-classic: devel::lang:sql, implemented-in::c++, interface::commandline, interface::daemon, network::server, role::program, works-with::db
+firebird2-classic-server: devel::lang:sql, implemented-in::c++, interface::daemon, network::server, role::program, works-with::db
+firebird2-common: role::app-data, use::configuring, works-with::db, works-with::logfile
+firebird2-dev: devel::lang:c, devel::lang:c++, devel::lang:sql, devel::library, implemented-in::c, implemented-in::c++, role::devel-lib, works-with::db
+firebird2-examples: devel::examples, devel::lang:c, devel::lang:c++, devel::lang:sql, implemented-in::c, implemented-in::c++, role::source, works-with::db
+firebird2-server-common: devel::lang:sql, implemented-in::c++, role::app-data, works-with::db
+firebird2-super-server: devel::lang:sql, implemented-in::c++, interface::daemon, network::server, role::program, works-with::db
+firebird2-utils-classic: devel::lang:sql, implemented-in::c++, interface::commandline, role::program, uitoolkit::ncurses, use::checking, use::configuring, works-with::db
+firebird2-utils-super: devel::lang:sql, implemented-in::c++, interface::commandline, role::program, uitoolkit::ncurses, use::checking, use::configuring, works-with::db
+firedns: interface::commandline, network::client, protocol::dns, protocol::ipv6, role::program, use::searching
+fireflier-client-gtk: interface::x11, network::client, network::firewall, role::program, security::firewall, uitoolkit::gtk, x11::application
+fireflier-client-kde: interface::x11, network::client, network::firewall, role::program, security::firewall, uitoolkit::qt, x11::application
+fireflier-client-qt: interface::x11, network::client, network::firewall, role::program, security::firewall, uitoolkit::qt, x11::application
+fireflier-server: interface::daemon, network::firewall, network::server, protocol::ssl, role::program, security::firewall
+firefox: devel::interpreter, devel::lang:ecmascript, filetransfer::ftp, filetransfer::http, implemented-in::c++, interface::x11, network::client, protocol::ftp, protocol::http, protocol::ip, protocol::ipv6, protocol::ssl, role::program, scope::application, special::obsolete, suite::mozilla, uitoolkit::gtk, use::browsing, use::downloading, web::browser, works-with-format::TODO, works-with-format::html, works-with-format::jpg, works-with-format::plaintext, works-with-format::png, works-with-format::svg, works-with-format::xml, works-with-format::xml:rss, works-with-format::xml:xslt, works-with::image:raster, x11::application
+firefox-dom-inspector: suite::mozilla
+firefox-gnome-support: special::obsolete, suite::gnome, suite::mozilla, uitoolkit::gtk, web::browser
+firefox-locale-ar: culture::arabic, role::app-data, suite::mozilla
+firefox-locale-bg: culture::bulgarian, role::app-data, suite::mozilla
+firefox-locale-ca: culture::catalan, role::app-data, suite::mozilla
+firefox-locale-cs: culture::czech, role::app-data, suite::mozilla
+firefox-locale-da: culture::danish, role::app-data, suite::mozilla
+firefox-locale-de: culture::german, role::app-data, suite::mozilla
+firefox-locale-el: culture::greek, role::app-data, suite::mozilla
+firefox-locale-en-gb: culture::TODO, role::app-data, suite::mozilla
+firefox-locale-es-ar: culture::spanish, role::app-data, suite::mozilla
+firefox-locale-es-es: culture::spanish, role::app-data, suite::mozilla
+firefox-locale-eu: culture::basque, role::app-data, suite::mozilla, web::browser
+firefox-locale-fi: culture::finnish, role::app-data, suite::mozilla
+firefox-locale-fr: culture::french, role::app-data, suite::mozilla
+firefox-locale-ga-ie: culture::irish, role::app-data, suite::mozilla
+firefox-locale-he: culture::hebrew, role::app-data, suite::mozilla
+firefox-locale-hu: culture::hungarian, role::app-data, suite::mozilla
+firefox-locale-it: culture::italian, role::app-data, suite::mozilla
+firefox-locale-ja: culture::japanese, role::app-data, suite::mozilla
+firefox-locale-ko: culture::korean, role::app-data, suite::mozilla
+firefox-locale-lt: culture::TODO, role::app-data, suite::mozilla
+firefox-locale-mk: culture::TODO, role::app-data, suite::mozilla
+firefox-locale-nb-no: culture::bokmaal, role::app-data, suite::mozilla
+firefox-locale-nl: culture::dutch, role::app-data, suite::mozilla
+firefox-locale-pa-in: culture::punjabi, role::app-data, suite::mozilla
+firefox-locale-pl: culture::polish, role::app-data, suite::mozilla
+firefox-locale-pt-br: culture::brazilian, role::app-data, suite::mozilla
+firefox-locale-ro: culture::romanian, role::app-data, suite::mozilla
+firefox-locale-ru: culture::russian, role::app-data, suite::mozilla
+firefox-locale-sk: culture::slovak, role::app-data, suite::mozilla
+firefox-locale-sl: culture::slovenian, role::app-data, suite::mozilla
+firefox-locale-sv-se: culture::swedish, role::app-data, suite::mozilla
+firefox-locale-tr: culture::turkish, role::app-data, suite::mozilla
+firefox-locale-uk: culture::ukrainian, role::app-data, suite::mozilla
+firefox-locale-zh-cn: culture::chinese, role::app-data, suite::mozilla
+firefox-locale-zh-tw: culture::taiwanese, role::app-data, suite::mozilla
+firefox-sage: implemented-in::ecmascript, interface::x11, network::client, protocol::http, role::plugin, uitoolkit::TODO, use::browsing, use::monitor, web::blog, works-with-format::xml, works-with-format::xml:rss, x11::special:todo
+firefox-webdeveloper: interface::x11, role::plugin, scope::utility, suite::mozilla, uitoolkit::gtk, use::browsing, use::editing, use::viewing, web::browser, works-with-format::html
+firehol: implemented-in::shell, interface::daemon, network::firewall, network::server, role::program, security::firewall, use::configuring
+firestarter: interface::x11, network::firewall, protocol::ssl, role::program, scope::application, security::firewall, suite::gnome, uitoolkit::gtk, use::configuring, use::monitor, x11::application
+fisg: interface::commandline, protocol::irc, role::program, scope::utility, use::converting, works-with-format::html, works-with::logfile, works-with::text
+fish: implemented-in::c, interface::shell, role::program, scope::utility, uitoolkit::ncurses
+fityk: field::chemistry, field::physics, implemented-in::c++, interface::x11, legacy::science, role::program, scope::utility, uitoolkit::wxwidgets, x11::application
+fixincludes: devel::code-generator, implemented-in::shell, interface::commandline, role::program, scope::utility, use::converting, works-with::software:source
+fkiss: game::toys, interface::x11, role::program, uitoolkit::gtk, use::gameplaying, use::viewing, works-with::image, works-with::image:raster, x11::application
+flac: interface::commandline, role::program, scope::utility, sound::compression, use::converting, works-with::audio
+flac123: interface::commandline, role::program, scope::utility, sound::player, use::playing, works-with-format::TODO, works-with::audio
+flamerobin: devel::lang:sql, implemented-in::c++, role::program, uitoolkit::wxwindows, works-with::db
+flamethrower: admin::file-distribution, interface::daemon, network::server, role::program, use::synchronizing, works-with::file
+flash-kernel: admin::boot, role::program, scope::utility
+flashplugin-nonfree: suite::mozilla, use::browsing
+flashybrid: admin::filesystem, hardware::storage, role::app-data, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::f
+flawfinder: devel::lang:c, devel::lang:c++, devel::testing-qa, interface::commandline, role::program, scope::utility, use::checking, works-with::software:source
+fldiff: interface::x11, role::program, uitoolkit::fltk, works-with::file, x11::application
+flex: devel::code-generator, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::software:source
+flex-doc: devel::code-generator, devel::doc, made-of::data:html, role::documentation
+flex-old: devel::code-generator, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::software:source
+flex-old-doc: devel::code-generator, devel::doc, made-of::data:html, role::documentation
+flexbackup: admin::backup, implemented-in::perl, interface::commandline, role::program, scope::utility, works-with::archive
+flexloader: field::electronics, interface::commandline, role::program, scope::utility, use::configuring, use::driver
+flexml: devel::code-generator, interface::commandline, role::program, scope::utility, works-with-format::xml
+flight-of-the-amazon-queen: game::adventure, role::app-data, use::gameplaying
+flightgear: game::simulation, interface::x11, role::program, scope::application, use::gameplaying, x11::application
+flim: implemented-in::lisp, role::plugin, suite::emacs, use::converting, use::editing, works-with::mail
+flin: interface::shell, uitoolkit::ncurses
+flip: interface::commandline, role::program, scope::utility, use::converting, works-with::text
+flite: accessibility::speech, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::audio
+flite1-dev: accessibility::speech, devel::library, role::devel-lib, works-with::audio
+floatbg: game::toys, interface::commandline, role::program, scope::utility, x11::application
+floater: game::card, interface::text-mode, interface::x11, role::program, uitoolkit::ncurses, uitoolkit::tk, use::gameplaying, x11::application
+flobopuyo: game::tetris, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+floppybackup: admin::backup, hardware::storage:floppy, interface::commandline, role::program, scope::utility, use::storing
+floppyd: hardware::storage:floppy, interface::commandline, interface::daemon, network::server, network::service, role::program
+flow-tools: admin::accounting, devel::lang:sql, interface::daemon, network::configuration, network::server, protocol::ip, role::program, use::monitor, works-with::db
+flow-tools-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::f
+flowscan: admin::accounting, implemented-in::perl, implemented-in::shell, network::configuration, protocol::ip, role::program, scope::utility, use::viewing
+flpsed: interface::x11, role::program, scope::application, uitoolkit::fltk, use::editing, works-with-format::pdf, works-with-format::postscript, works-with::text, x11::application
+fltk1.1-doc: devel::doc, devel::examples, made-of::data:html, made-of::data:pdf, made-of::data:postscript, role::documentation, uitoolkit::fltk
+fluid: devel::ui-builder, implemented-in::c++, interface::commandline, interface::x11, role::program, scope::utility, uitoolkit::fltk, x11::application
+fluidsynth: interface::commandline, role::program, scope::utility, sound::midi, use::playing, works-with::audio
+fluxbox: interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::window-manager
+fluxconf: interface::x11, role::program, scope::utility, uitoolkit::gtk, use::configuring, x11::window-manager
+flwm: interface::x11, role::program, uitoolkit::fltk, x11::window-manager
+flydraw: special::not-yet-tagged, special::not-yet-tagged::f
+flying: game::simulation, interface::x11, role::program, use::gameplaying, x11::application
+flyspray: devel::bugtracker, implemented-in::php, interface::web, network::server, protocol::http, role::program, web::application, works-with::bugs, works-with::db
+fmirror: filetransfer::ftp, interface::commandline, network::client, protocol::ftp, role::program, use::synchronizing, works-with::file
+fmit: uitoolkit::qt
+fml: culture::japanese, implemented-in::perl, interface::commandline, interface::daemon, mail::list, network::server, role::program, scope::utility, works-with::mail
+fml-doc: culture::japanese, interface::commandline, interface::daemon, made-of::data:html, mail::list, role::documentation, works-with::mail
+fmtools: interface::commandline, role::program, scope::utility, sound::mixer, use::driver, works-with::audio
+fnfx-client: hardware::input, hardware::laptop, interface::commandline, network::client, role::program, use::driver
+fnfxd: hardware::input:keyboard, hardware::laptop, hardware::power, hardware::power:acpi, interface::daemon, network::server, role::program, use::driver
+fnlib-data: devel::library, role::app-data, works-with::font
+fnorb: devel::lang:python, implemented-in::python, interface::daemon, network::server, protocol::corba, role::program
+fnorb-doc: devel::examples, devel::lang:python, implemented-in::python, protocol::corba, role::documentation
+fnord: interface::daemon, network::server, protocol::ipv6, role::program, web::server, works-with-format::html, works-with::text
+focalinux-html: culture::brazilian, made-of::data:html, role::documentation, suite::debian
+focalinux-text: culture::brazilian, role::documentation, suite::debian
+foiltex: role::program, scope::application, works-with-format::tex, works-with::text
+fondu: interface::commandline, role::program, scope::utility, use::converting, works-with::font
+fontconfig: implemented-in::c, interface::commandline, role::program, scope::utility, works-with::font
+fontconfig-config: made-of::data:xml, role::app-data, special::auto-inst-parts, works-with::font
+fonter: interface::text-mode, role::program, scope::application, uitoolkit::ncurses, use::editing, works-with::font
+fontforge: interface::x11, role::program, scope::application, use::editing, works-with::font, x11::application
+fontforge-doc: interface::x11, made-of::data:html, role::documentation, use::editing, works-with::font, x11::application
+fonttools: devel::lang:python, devel::library, implemented-in::python, interface::commandline, role::app-data, use::converting, works-with-format::xml, works-with::font
+fonty: culture::polish, interface::commandline, made-of::data:font, role::app-data
+fonty-dev: interface::commandline, role::program, scope::utility, use::converting, works-with::font
+fonty-rg: interface::commandline, made-of::data:font, role::app-data
+foo2zjs: hardware::printer, interface::commandline, role::program, scope::utility, use::driver, use::printing
+foobillard: game::simulation, interface::3d, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+fookb-plainx: accessibility::input, hardware::input, interface::x11, role::program, scope::utility, suite::gnustep, use::configuring, x11::application
+fookb-wmaker: accessibility::input, hardware::input, interface::x11, role::program, scope::utility, suite::gnustep, use::configuring, x11::applet
+foomatic-bin: use::printing
+foomatic-db: hardware::printer, made-of::data:xml, role::app-data, use::configuring, use::printing
+foomatic-db-engine: hardware::printer, role::program, use::driver, use::printing
+foomatic-db-gimp-print: hardware::printer, made-of::data:xml, role::app-data, use::configuring, use::printing
+foomatic-db-gutenprint: hardware::printer
+foomatic-db-hpijs: hardware::printer, made-of::data:xml, role::app-data, use::configuring, use::printing
+foomatic-filters: hardware::printer, role::app-data, use::driver, use::printing, works-with-format::postscript, works-with::text
+foomatic-filters-ppds: hardware::printer, role::app-data, use::driver, use::printing, works-with-format::pdf, works-with::text
+foomatic-gui: hardware::printer, implemented-in::python, interface::x11, role::program, scope::application, scope::utility, suite::gnome, uitoolkit::gtk, use::configuring, use::printing, x11::application
+fop: implemented-in::java, role::program, use::converting, works-with-format::docbook, works-with-format::pdf, works-with-format::xml, works-with::text
+fop-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::f
+foremost: admin::recovery, hardware::storage, interface::commandline, role::program, scope::utility, security::forensics, use::scanning
+forg: implemented-in::python, interface::x11, network::client, role::program, uitoolkit::tk, use::browsing, x11::application
+forrest: special::not-yet-tagged, special::not-yet-tagged::f
+fort: devel::lang:ocaml, devel::testing-qa, implemented-in::ocaml
+fort77: devel::compiler, devel::lang:fortran, interface::commandline, role::program, scope::utility, works-with::software:source
+fortune-mod: game::toys, interface::commandline, role::program, scope::utility, use::gameplaying, use::viewing, works-with::text
+fortune-zh: culture::chinese, culture::taiwanese, game::toys, interface::commandline, use::gameplaying, use::viewing, works-with::text, works-with::unicode
+fortunes: game::toys, interface::commandline, role::data, use::gameplaying, use::viewing, works-with::text
+fortunes-bg: culture::bulgarian, game::toys, interface::commandline, role::data, use::gameplaying, works-with::text
+fortunes-bofh-excuses: game::toys, interface::commandline, role::data, use::gameplaying, works-with::text
+fortunes-br: culture::brazilian, game::toys, interface::commandline, role::data, use::gameplaying, works-with::text
+fortunes-cs: culture::czech, culture::slovak, game::toys, interface::commandline, role::data, use::gameplaying, works-with::text
+fortunes-de: culture::german, game::toys, interface::commandline, role::data, use::gameplaying, works-with::text
+fortunes-debian-hints: game::toys, interface::commandline, role::documentation, suite::debian, use::gameplaying, works-with::text
+fortunes-eo: culture::esperanto, game::toys, role::data, use::gameplaying, works-with::text, works-with::unicode
+fortunes-eo-ascii: culture::esperanto, game::toys, role::data, use::gameplaying, use::viewing, works-with::text
+fortunes-eo-iso3: culture::esperanto, game::toys, role::data, use::gameplaying, use::viewing, works-with::text
+fortunes-es: culture::spanish, game::toys, interface::commandline, role::data, use::gameplaying, works-with::text
+fortunes-es-off: culture::spanish, game::toys, role::data, use::gameplaying, works-with::text
+fortunes-fr: culture::french, game::toys, role::data, use::gameplaying, works-with::text
+fortunes-ga: culture::irish, game::toys, interface::commandline, role::data, use::gameplaying, works-with::text
+fortunes-it: culture::italian, game::toys, interface::commandline, role::data, use::gameplaying, works-with::text
+fortunes-it-off: culture::italian, game::toys, interface::commandline, role::data, use::gameplaying, works-with::text
+fortunes-mario: culture::brazilian, culture::portuguese, game::toys, interface::commandline, role::data, special::completely-tagged, use::gameplaying, works-with::text
+fortunes-min: game::toys, interface::commandline, role::data, use::gameplaying, works-with::text
+fortunes-off: game::toys, interface::commandline, role::data, use::gameplaying, works-with::text
+fortunes-pl: culture::polish, game::toys, interface::commandline, role::data, use::gameplaying, works-with::text
+forutil: devel::lang:fortran, devel::testing-qa, interface::commandline, role::program, scope::utility, use::checking, works-with::software:source
+fp-compiler: devel::compiler, devel::lang:pascal, interface::commandline, role::program, scope::utility, works-with::software:source
+fp-docs: devel::doc, devel::lang:pascal, made-of::data:html, made-of::data:pdf, role::documentation, works-with::software:source
+fp-ide: devel::lang:pascal, special::not-yet-tagged, special::not-yet-tagged::f
+fp-units-base: devel::lang:pascal, devel::library
+fp-units-db: devel::lang:pascal, devel::library, works-with::db
+fp-units-fcl: devel::lang:pascal, devel::library
+fp-units-fv: special::not-yet-tagged, special::not-yet-tagged::f
+fp-units-gfx: devel::lang:pascal, devel::library, interface::svga, interface::x11, x11::library
+fp-units-gnome1: devel::lang:pascal, devel::library, suite::gnome
+fp-units-gtk: devel::lang:pascal, devel::library, uitoolkit::gtk, x11::library
+fp-units-misc: devel::lang:pascal, devel::library, use::compressing
+fp-units-net: devel::lang:pascal, devel::library, protocol::ip, web::cgi
+fp-units-rtl: devel::lang:pascal, devel::runtime
+fp-utils: devel::buildtools, devel::lang:pascal, interface::commandline, role::program, scope::utility, works-with::software:source
+fpdns: interface::commandline, network::scanner, protocol::dns, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::f, use::checking
+fping: admin::monitoring, interface::commandline, network::scanner, protocol::ip, role::program, scope::utility, use::scanning
+fpm: interface::x11, role::program, scope::application, security::cryptography, suite::gnome, uitoolkit::gtk, use::storing, x11::application
+fprobe: interface::daemon, network::routing, network::server, role::program, use::transmission
+fprobe-ng: interface::daemon, network::routing, network::server, role::program, use::transmission
+fprobe-ulog: interface::daemon, network::firewall, network::server, protocol::snmp, role::program, use::transmission
+fractxtra: field::mathematics, works-with::image, works-with::image:raster
+fragroute: devel::testing-qa, interface::commandline, network::scanner, role::program, scope::utility, use::proxying, use::routing
+fragrouter: devel::testing-qa, interface::commandline, network::scanner, role::program, scope::utility, use::proxying, use::routing
+framerd: devel::lang:scheme, uitoolkit::ncurses
+francine: admin::login, interface::commandline, role::program, scope::utility, use::login
+free-java-sdk: devel::ide, devel::lang:java, implemented-in::java
+freebirth: interface::x11, role::program, scope::application, sound::TODO, sound::sequencer, uitoolkit::gtk, works-with::audio, x11::application
+freebsd-buildutils: devel::buildtools, interface::commandline
+freebsd-manpages: admin::kernel, devel::doc
+freebsd-sendpr: special::not-yet-tagged, special::not-yet-tagged::f
+freebsd5-buildutils: devel::buildtools, interface::commandline, role::program, scope::utility, works-with::software:source
+freecdb: interface::commandline, role::program, scope::utility, works-with::db
+freecell-solver-bin: game::card, implemented-in::python, interface::commandline, role::program, scope::utility, use::checking
+freeciv: role::dummy
+freeciv-client-gtk: game::strategy, interface::x11, network::client, role::program, scope::application, uitoolkit::gtk, uitoolkit::sdl, use::gameplaying, x11::application
+freeciv-client-xaw3d: game::strategy, interface::x11, network::client, role::program, scope::application, uitoolkit::athena, uitoolkit::sdl, use::gameplaying, x11::application
+freeciv-data: game::strategy, role::app-data, special::auto-inst-parts, use::gameplaying
+freeciv-gtk: interface::x11, role::dummy, special::obsolete
+freeciv-server: game::strategy, interface::daemon, network::server, role::program, use::gameplaying
+freeciv-xaw3d: interface::x11, role::dummy, special::obsolete
+freecraft: game::strategy, interface::svga, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+freedoom: game::arcade, interface::x11, role::app-data, uitoolkit::special:not-applicable, use::gameplaying, x11::application
+freedroid: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+freedroid-data: game::arcade, interface::x11, role::app-data, uitoolkit::sdl, use::gameplaying, x11::application
+freefem: devel::interpreter, field::physics, interface::commandline, role::program, scope::utility
+freefem-doc: devel::doc, devel::interpreter, field::physics, made-of::data:html, made-of::data:pdf, role::documentation
+freefem-examples: devel::examples, devel::interpreter, field::physics, role::documentation
+freefem3d: devel::interpreter, field::physics, implemented-in::c++, interface::commandline, role::program, scope::utility, uitoolkit::qt, works-with::3dmodel
+freeglut3: devel::library, interface::3d, role::shared-lib, x11::library
+freeglut3-dbg: devel::debugger, devel::library, interface::3d, role::shared-lib, x11::library
+freeglut3-dev: devel::library, interface::3d, role::devel-lib, x11::library
+freeguide: culture::TODO, culture::german, culture::norwegian, culture::swedish, implemented-in::java, interface::special:not-yet-tagged, protocol::http, role::program, scope::utility, use::viewing, works-with-format::xml, works-with::video
+freej: game::toys, implemented-in::c++, interface::x11, role::program, uitoolkit::gtk, uitoolkit::ncurses, uitoolkit::sdl, use::entertaining, works-with::audio, works-with::video, x11::application
+freeloader: filetransfer::ftp, filetransfer::http, implemented-in::python, network::client, protocol::bittorrent, protocol::ftp, protocol::http, role::program, suite::gnome, use::downloading
+freemind: implemented-in::java, interface::x11, role::program, scope::application, use::organizing, use::viewing, x11::application
+freenet6: network::vpn, protocol::ipv6, role::dummy, special::obsolete, use::routing
+freepats: role::app-data, sound::midi, use::playing
+freepops: implemented-in::c, implemented-in::lua, interface::daemon, mail::pop, network::server, protocol::http, protocol::pop3, role::program, use::converting, use::downloading, works-with-format::xml, works-with-format::xml:rss, works-with::mail
+freepops-doc: interface::daemon, made-of::data:pdf, mail::pop, protocol::http, protocol::pop3, role::documentation, use::converting, use::downloading, works-with-format::xml, works-with-format::xml:rss, works-with::mail
+freepwing: culture::japanese, implemented-in::perl, interface::commandline, role::program, scope::application, use::converting, use::viewing, works-with::text
+freeradius: implemented-in::c, interface::daemon, network::server, protocol::radius, role::program, security::authentication, works-with::db
+freeradius-dialupadmin: implemented-in::php, interface::web, protocol::radius, role::plugin, security::authentication, web::application, works-with::db
+freeradius-iodbc: implemented-in::c, protocol::radius, role::plugin, security::authentication, works-with::db
+freeradius-krb5: implemented-in::c, protocol::kerberos, protocol::radius, role::plugin, security::authentication, works-with::db
+freeradius-ldap: implemented-in::c, protocol::ldap, protocol::radius, role::plugin, security::authentication, works-with::db
+freeradius-mysql: devel::lang:sql, implemented-in::c, protocol::radius, role::plugin, security::authentication, works-with::db
+freesci: devel::interpreter, game::adventure, implemented-in::c, interface::text-mode, interface::x11, role::program, scope::utility, uitoolkit::ncurses, uitoolkit::sdl, uitoolkit::tk, use::gameplaying, x11::application
+freesci-doc: devel::interpreter, game::adventure, interface::text-mode, interface::x11, role::documentation, uitoolkit::ncurses, uitoolkit::sdl, uitoolkit::tk, use::gameplaying, x11::application
+freeswan: interface::commandline, network::vpn, role::program, scope::utility, security::cryptography
+freeswan-modules-source: network::vpn, role::source, security::cryptography
+freesweep: game::puzzle, interface::text-mode, role::program, uitoolkit::ncurses, use::gameplaying, use::scanning
+freetable: implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with::text
+freetalk: uitoolkit::ncurses, use::chatting
+freetds-dev: devel::lang:sql, devel::library, role::devel-lib, works-with::db
+freetennis: game::arcade, implemented-in::ocaml, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+freetennis-common: game::arcade, role::app-data, use::gameplaying
+freetype1-tools: devel::examples, devel::library, interface::commandline, role::app-data, role::program, scope::utility, works-with::font
+freetype2: devel::library, role::dummy, special::obsolete, works-with::font
+freetype2-demos: devel::examples, devel::library, interface::commandline, interface::x11, role::app-data, role::program, scope::utility, works-with::font, x11::application
+freewnn-common: accessibility::input, culture::chinese, culture::japanese, culture::korean, culture::taiwanese, network::server, role::app-data, special::auto-inst-parts
+freewnn-cserver: accessibility::input, culture::chinese, culture::taiwanese, interface::daemon, network::server, role::program
+freewnn-jserver: accessibility::input, culture::japanese, interface::daemon, network::server, role::program
+freewnn-kserver: accessibility::input, culture::korean, interface::daemon, network::server, role::program
+freewrl: protocol::http, use::browsing, works-with-format::vrml, works-with::3dmodel
+freqtweak: uitoolkit::wxwidgets, uitoolkit::wxwindows
+frotz: devel::interpreter, game::adventure, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::gameplaying
+frown: devel::lang:haskell, implemented-in::haskell
+frox: filetransfer::ftp, interface::daemon, network::server, protocol::ftp, role::program, use::proxying, works-with::file
+frozen-bubble: game::tetris, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+frozen-bubble-data: game::tetris, role::app-data, special::auto-inst-parts, uitoolkit::sdl, use::gameplaying
+fruit: game::board:chess, implemented-in::c, role::program, use::gameplaying
+fsh: interface::shell, network::client, protocol::ssh, role::program, use::login
+fslint: implemented-in::python, interface::x11, role::program, use::checking, works-with::file
+fsp: interface::commandline, network::client, role::program, use::downloading, works-with::file
+fspanel: interface::x11, role::program, scope::utility, use::viewing, works-with::software:running, x11::applet, x11::application
+fspd: interface::daemon, network::server, role::program, use::downloading, works-with::file
+fst: uitoolkit::gtk
+fsviewer: interface::x11, role::program, scope::application, use::browsing, works-with::file, x11::application
+fsviewer-icons: interface::x11, made-of::data:icons, role::app-data, use::browsing, works-with::file, x11::application
+ftape-doc: devel::doc, role::documentation
+ftdi-eeprom: hardware::usb, interface::commandline, role::program, scope::utility, use::downloading, use::driver
+fte: devel::editor, devel::lang:c, devel::lang:c++, devel::lang:java, devel::lang:perl, implemented-in::c++, role::app-data, role::metapackage, use::editing, works-with::text
+fte-console: devel::editor, devel::lang:c, devel::lang:c++, devel::lang:java, devel::lang:perl, implemented-in::c++, interface::text-mode, uitoolkit::ncurses, use::editing, works-with::text
+fte-docs: devel::doc, devel::editor, devel::lang:c, devel::lang:c++, devel::lang:java, devel::lang:perl, made-of::data:html, role::documentation, use::editing, works-with::text
+fte-terminal: devel::editor, devel::lang:c, devel::lang:c++, devel::lang:java, devel::lang:perl, implemented-in::c++, interface::text-mode, use::editing, works-with::text
+fte-xwindow: devel::editor, devel::lang:c, devel::lang:c++, devel::lang:java, devel::lang:perl, implemented-in::c++, interface::x11, use::editing, works-with::text, x11::application
+ftgl-dev: role::devel-lib, works-with::font, works-with::text, x11::library
+ftjam: devel::buildtools, interface::commandline, role::program, scope::utility
+ftm: interface::text-mode, network::firewall, role::program, scope::utility, uitoolkit::ncurses, use::monitor
+ftnchek: devel::lang:fortran, devel::testing-qa, interface::commandline, role::program, scope::utility, use::checking, works-with::software:source
+ftp: filetransfer::ftp, interface::text-mode, network::client, protocol::ftp, role::program, uitoolkit::ncurses, use::downloading, works-with::file
+ftp-proxy: filetransfer::ftp, interface::daemon, network::server, protocol::ftp, role::program, use::proxying
+ftp-ssl: filetransfer::ftp, interface::text-mode, network::client, protocol::ftp, protocol::ssl, role::program, security::cryptography, uitoolkit::ncurses, use::downloading, works-with::file
+ftp-upload: filetransfer::ftp, interface::commandline, network::client, protocol::ftp, role::program, use::transmission, works-with::file
+ftp.app: implemented-in::objc, network::client, protocol::ftp, role::program, suite::gnustep
+ftpd: filetransfer::ftp, interface::daemon, network::server, protocol::ftp, role::program, works-with::file
+ftpd-ssl: filetransfer::ftp, interface::daemon, network::server, protocol::ftp, protocol::ssl, role::program, security::authentication, security::cryptography, works-with::file
+ftpgrab: filetransfer::ftp, interface::commandline, network::client, protocol::ftp, role::program, use::synchronizing, works-with::file
+ftplib-dev: devel::lang:c, devel::library, filetransfer::ftp, protocol::ftp, role::devel-lib, works-with::file
+ftplib3: devel::lang:c, devel::library, filetransfer::ftp, protocol::ftp, role::shared-lib, works-with::file
+ftpmirror: filetransfer::ftp, interface::commandline, protocol::ftp, use::synchronizing, works-with::file
+ftpwatch: filetransfer::ftp, interface::daemon, network::client, protocol::ftp, role::program, use::monitor, works-with::file
+fttools: admin::configuring, devel::library, implemented-in::perl, interface::commandline, role::program, scope::utility, use::configuring, works-with::font
+fujiplay: hardware::camera, interface::commandline, role::program, scope::utility, use::converting, use::downloading, works-with::image, works-with::image:raster
+fullquottel: implemented-in::c++, interface::commandline, mail::filters, role::program, works-with::mail
+funnelweb: devel::docsystem, interface::commandline, role::documentation, role::program, scope::utility, use::converting, works-with-format::html, works-with-format::tex, works-with::software:source, works-with::text
+funnelweb-doc: devel::doc, devel::docsystem, made-of::data:html, role::documentation, use::converting, works-with-format::html, works-with-format::tex, works-with::software:source, works-with::text
+funny-manpages: devel::doc, game::toys, made-of::data:man, role::documentation
+fuse-source: admin::filesystem, admin::kernel, implemented-in::c, role::source
+fuse-utils: admin::filesystem, interface::commandline, role::program, scope::utility
+fusesmb: admin::filesystem, network::client, protocol::smb, role::program
+fuzz: devel::testing-qa, interface::commandline, use::checking
+fuzzyocr: implemented-in::perl, mail::filters, role::plugin, role::program, use::scanning, works-with::image, works-with::image:raster, works-with::mail
+fv: implemented-in::tcl, interface::x11, role::program, scope::application, uitoolkit::tk, use::editing, use::viewing, works-with::image, works-with::image:vector, x11::application
+fvwm: interface::x11, role::program, uitoolkit::gtk, uitoolkit::ncurses, x11::window-manager
+fvwm-crystal: made-of::data:icons, role::app-data, scope::utility, x11::theme
+fvwm-gnome: interface::x11, role::program, suite::gnome, uitoolkit::gtk, uitoolkit::ncurses, x11::window-manager
+fvwm-icons: interface::x11, made-of::data:icons, role::app-data, uitoolkit::gtk, x11::window-manager
+fvwm1: interface::x11, role::program, x11::window-manager
+fvwm95: interface::x11, network::server, role::program, uitoolkit::athena, x11::window-manager
+fvwm95-icons: interface::x11, made-of::data:icons, role::app-data, x11::window-manager
+fwanalog: admin::monitoring, implemented-in::shell, interface::commandline, role::program, scope::utility, security::firewall, security::log-analyzer, use::scanning, works-with::logfile
+fwatch: admin::kernel, admin::logging, admin::monitoring, interface::commandline, role::program, scope::utility, works-with::software:running
+fwatch-modules-src: admin::kernel, admin::logging, admin::monitoring, role::source, works-with::software:running
+fwbuilder: interface::x11, protocol::ssl, role::program, scope::utility, security::firewall, uitoolkit::gtk, uitoolkit::qt, use::configuring, x11::application
+fwbuilder-bsd: interface::x11, role::program, scope::utility, security::firewall, uitoolkit::qt, use::configuring, x11::application
+fwbuilder-common: role::app-data, security::firewall, special::auto-inst-parts, use::configuring, x11::application
+fwbuilder-doc: made-of::data:html, role::documentation, security::firewall, use::configuring
+fwbuilder-linux: interface::x11, security::firewall, uitoolkit::qt, use::configuring, x11::application
+fweb: devel::docsystem, devel::lang:c, devel::lang:c++, devel::lang:fortran, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::converting, works-with-format::tex, works-with::software:source, works-with::text
+fweb-doc: devel::doc, devel::docsystem, devel::lang:c, devel::lang:c++, devel::lang:fortran, made-of::data:html, made-of::data:info, role::documentation, uitoolkit::ncurses, use::converting, works-with-format::tex, works-with::software:source, works-with::text
+fwlogwatch: interface::daemon, network::server, role::program, security::log-analyzer, use::scanning, works-with::logfile
+fxload: hardware::usb, interface::commandline, role::program, scope::utility, use::downloading, use::driver
+fyre: special::not-yet-tagged, special::not-yet-tagged::f, uitoolkit::gtk
+g++: devel::compiler, devel::lang:c++, implemented-in::c, interface::commandline, role::dummy, special::meta, suite::gnu, works-with::software:source
+g++-2.95: devel::compiler, devel::lang:c++, implemented-in::c, interface::commandline, role::program, suite::gnu, works-with::software:source
+g++-3.3: devel::compiler, devel::lang:c++, implemented-in::c, interface::commandline, role::program, suite::gnu, works-with::software:source
+g++-3.4: devel::compiler, devel::lang:c++, implemented-in::c, interface::commandline, role::program, suite::gnu, works-with::software:source
+g++-4.0: implemented-in::c, interface::commandline, role::program
+g++-4.1: devel::compiler, devel::lang:c++, implemented-in::c, interface::commandline, role::program, suite::gnu, works-with::software:source
+g-wrap: devel::code-generator, devel::lang:c, devel::lang:scheme, implemented-in::scheme, interface::commandline, role::program, scope::utility
+g3data: field::statistics, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::viewing, works-with::image, works-with::image:vector, x11::application
+g77: devel::compiler, devel::lang:fortran, implemented-in::c, interface::commandline, role::dummy, role::metapackage, special::meta, suite::gnu, works-with::software:source
+g77-2.95: devel::compiler, devel::lang:fortran, implemented-in::c, interface::commandline, suite::gnu, works-with::software:source
+g77-2.95-doc: devel::compiler, devel::doc, devel::lang:fortran, made-of::data:info, role::documentation, suite::gnu
+g77-3.3: devel::compiler, devel::lang:fortran, implemented-in::c, interface::commandline, works-with::software:source
+g77-3.3-doc: devel::compiler, devel::doc, devel::lang:fortran, role::documentation
+g77-3.4: devel::compiler, devel::lang:fortran, implemented-in::c, interface::commandline, role::program, suite::gnu, works-with::software:source
+g77-3.4-doc: devel::compiler, devel::doc, devel::lang:fortran, made-of::data:info, role::documentation, suite::gnu
+g77-doc: devel::compiler, devel::doc, devel::lang:fortran, role::metapackage, special::meta, works-with::software:source
+gabber: interface::x11, network::client, protocol::jabber, protocol::msn-messenger, protocol::ssl, protocol::yahoo-messenger, role::program, suite::gnome, uitoolkit::gtk, use::chatting, x11::application
+gabber2: protocol::jabber, suite::gnome, uitoolkit::gtk, use::chatting
+gaby: implemented-in::c, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, works-with::pim, x11::application
+gacc: field::finance, interface::x11, office::finance, role::program, scope::application, uitoolkit::gtk, use::organizing, works-with::pim, x11::application
+gadfly: devel::lang:sql, implemented-in::python, interface::daemon, interface::shell, network::server, role::program, works-with::db
+gaffitter: implemented-in::c++, interface::commandline, role::program, scope::utility, use::searching, works-with::file
+gaia: field::geography, interface::3d, interface::x11, network::client, role::program, use::viewing, x11::application
+gaiksaurus: interface::x11, uitoolkit::gtk, works-with::dictionary, x11::application
+gaim: implemented-in::c, interface::commandline, interface::x11, network::client, protocol::irc, protocol::jabber, protocol::msn-messenger, protocol::oscar, protocol::ssl, protocol::yahoo-messenger, role::plugin, role::program, scope::application, uitoolkit::gtk, uitoolkit::ncurses, use::chatting, works-with::people, x11::applet, x11::application
+gaim-data: interface::x11, protocol::jabber, protocol::msn-messenger, protocol::ssl, protocol::yahoo-messenger, role::app-data, special::auto-inst-parts, uitoolkit::gtk, use::chatting, x11::application
+gaim-dev: devel::lang:c, devel::library, implemented-in::c, interface::x11, protocol::jabber, protocol::msn-messenger, protocol::ssl, protocol::yahoo-messenger, role::devel-lib, uitoolkit::gtk, use::chatting, x11::application
+gaim-encryption: implemented-in::c, interface::x11, protocol::jabber, protocol::msn-messenger, protocol::ssl, protocol::yahoo-messenger, security::cryptography, uitoolkit::gtk, use::chatting, x11::application
+gaim-extendedprefs: implemented-in::c, interface::x11, protocol::jabber, protocol::msn-messenger, protocol::ssl, protocol::yahoo-messenger, role::plugin, uitoolkit::gtk, use::chatting, use::configuring, x11::application
+gaim-guifications: implemented-in::c, interface::x11, protocol::jabber, protocol::msn-messenger, protocol::ssl, protocol::yahoo-messenger, role::plugin, uitoolkit::gtk, use::chatting, x11::application
+gaim-irchelper: filetransfer::dcc, protocol::irc, role::plugin, suite::gnome, use::chatting
+gaim-librvp: uitoolkit::gtk
+gaim-otr: implemented-in::c, interface::x11, protocol::jabber, protocol::msn-messenger, protocol::ssl, protocol::yahoo-messenger, role::plugin, security::authentication, security::cryptography, uitoolkit::gtk, use::chatting, x11::application
+gaim-themes: interface::x11, protocol::jabber, protocol::msn-messenger, protocol::ssl, protocol::yahoo-messenger, role::app-data, uitoolkit::gtk, use::chatting, x11::theme
+gaim-thinklight: hardware::laptop, hardware::special:todo, implemented-in::c, role::plugin, scope::utility, uitoolkit::special:not-applicable, use::chatting, use::monitor
+gaim-xmms-remote: uitoolkit::gtk
+gajim: implemented-in::python, interface::x11, network::client, protocol::jabber, role::program, uitoolkit::gtk, use::chatting, x11::application
+galan: field::arts, implemented-in::c, interface::x11, role::program, scope::application, sound::TODO, sound::midi, sound::mixer, sound::sequencer, uitoolkit::gtk, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::audio, x11::application
+galculator: field::mathematics, interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+galeon: filetransfer::ftp, filetransfer::http, implemented-in::c, interface::x11, network::client, protocol::ftp, protocol::http, protocol::ipv6, role::program, suite::gnome, uitoolkit::gtk, use::browsing, use::viewing, web::browser, works-with-format::html, works-with::text, x11::application
+galeon-common: filetransfer::ftp, filetransfer::http, implemented-in::c, interface::x11, protocol::ftp, protocol::http, protocol::ipv6, role::app-data, special::auto-inst-parts, suite::gnome, uitoolkit::gtk, web::browser, works-with-format::html, works-with::text, x11::application
+gallery: implemented-in::php, interface::web, network::server, role::program, use::organizing, web::application, works-with::image, works-with::image:raster
+gallery2: implemented-in::php, interface::web
+gallimimus: devel::lang:sql, implemented-in::php, interface::commandline, interface::web, role::program, scope::utility, use::downloading, web::application, works-with-format::xml, works-with-format::xml:rss, works-with::db
+galrey: implemented-in::perl, interface::commandline, role::program, scope::utility, use::organizing, works-with-format::html, works-with::image, works-with::image:raster, works-with::text
+galternatives: admin::configuring, implemented-in::python, interface::x11, role::program, suite::debian, uitoolkit::gtk, use::configuring, x11::application
+gambas: special::not-yet-tagged, special::not-yet-tagged::g
+gambas-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::g
+gambas-gb-compress: devel::library, special::not-yet-tagged, special::not-yet-tagged::g
+gambas-gb-db: devel::library, special::not-yet-tagged, special::not-yet-tagged::g, works-with::db
+gambas-gb-db-mysql: devel::lang:sql, devel::library, special::not-yet-tagged, special::not-yet-tagged::g, works-with::db
+gambas-gb-db-postgresql: devel::lang:sql, devel::library, special::not-yet-tagged, special::not-yet-tagged::g, works-with::db
+gambas-gb-db-sqlite: devel::lang:sql, devel::library, special::not-yet-tagged, special::not-yet-tagged::g, works-with::db
+gambas-gb-debug: special::not-yet-tagged, special::not-yet-tagged::g
+gambas-gb-eval: devel::library, special::not-yet-tagged, special::not-yet-tagged::g
+gambas-gb-net: devel::library, special::not-yet-tagged, special::not-yet-tagged::g
+gambas-gb-net-curl: devel::library, special::not-yet-tagged, special::not-yet-tagged::g
+gambas-gb-qt: devel::library, special::not-yet-tagged, special::not-yet-tagged::g, uitoolkit::qt
+gambas-gb-qt-editor: devel::library, special::not-yet-tagged, special::not-yet-tagged::g, uitoolkit::qt
+gambas-gb-qt-ext: devel::library, special::not-yet-tagged, special::not-yet-tagged::g, uitoolkit::qt
+gambas-gb-qt-kde: uitoolkit::qt
+gambas-gb-qt-kde-html: uitoolkit::qt
+gambas-gb-sdl: devel::library, special::not-yet-tagged, special::not-yet-tagged::g, uitoolkit::sdl
+gambas-gb-vb: devel::library, special::not-yet-tagged, special::not-yet-tagged::g
+gambas-gb-xml: devel::library, special::not-yet-tagged, special::not-yet-tagged::g
+gambas-runtime: devel::library, special::not-yet-tagged, special::not-yet-tagged::g
+gambc: devel::compiler, devel::doc, devel::interpreter, devel::lang:scheme, devel::library, devel::runtime, implemented-in::scheme, interface::commandline, interface::text-mode, role::documentation, role::program, role::shared-lib
+gambit: field::mathematics, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, uitoolkit::wxwidgets, uitoolkit::wxwindows, use::gameplaying, x11::application
+gambit-doc: field::mathematics, interface::x11, role::documentation, suite::gnome, uitoolkit::gtk, uitoolkit::wxwidgets, use::gameplaying, x11::application
+gamin: admin::filesystem, admin::kernel, admin::monitoring, implemented-in::c, interface::daemon, role::plugin, suite::gnome, works-with::file
+gamix: interface::x11, role::program, scope::utility, sound::mixer, uitoolkit::gtk, works-with::audio, x11::application
+gammu: admin::hardware, admin::monitoring, hardware::TODO, hardware::embedded, hardware::modem, implemented-in::c, interface::commandline, interface::daemon, network::server, network::service, role::program, scope::utility, use::monitor, use::synchronizing, use::transmission, works-with::db, works-with::pim
+gandalf-dev: devel::lang:c, devel::library, role::devel-lib, works-with::image:raster
+gandalf-doc: devel::doc, devel::lang:c, role::documentation, works-with::image:raster
+gandalf1: devel::lang:c, role::shared-lib, works-with::image:raster
+ganglia-monitor: admin::cluster, admin::monitoring, interface::daemon, network::server, network::service, role::program, use::monitor, works-with-format::xml
+gap: field::mathematics, role::metapackage
+gap-character-tables: devel::library, field::mathematics, role::app-data
+gap-core: field::mathematics, interface::commandline, role::program, scope::utility
+gap-dev: devel::compiler, devel::library, field::mathematics, role::devel-lib, role::documentation, works-with::software:source
+gap-doc: devel::doc, field::mathematics, made-of::data:pdf, made-of::data:tex, role::documentation
+gap-libs: devel::library, field::mathematics
+gap-matrix-schreiersims: devel::library, field::mathematics, role::app-data
+gap-online-help: field::mathematics, made-of::data:tex, role::documentation
+gap-prim-groups: devel::library, field::mathematics, role::app-data
+gap-small-groups: devel::library, field::mathematics, role::app-data
+gap-small-groups-extra: devel::library, field::mathematics, role::app-data
+gap-table-of-marks: devel::library, field::mathematics, role::app-data
+gap-trans-groups: devel::library, field::mathematics, role::app-data
+gapcmon: uitoolkit::gtk
+gaphor: implemented-in::python, interface::commandline, role::program, scope::utility, use::organizing, works-with::image, works-with::image:vector
+gappletviewer-4.1: devel::lang:java, devel::runtime, role::program
+garlic: field::biology, field::chemistry, interface::x11, role::program, scope::utility, use::viewing, x11::application
+garlic-doc: field::biology, field::chemistry, interface::x11, role::documentation, use::viewing, x11::application
+gasql: interface::x11, suite::gnome, uitoolkit::gtk
+gato: interface::x11, role::program, scope::utility, uitoolkit::gtk, use::configuring, x11::application
+gatos: hardware::video, interface::commandline, interface::x11, use::playing, use::storing, works-with::image, works-with::image:raster, works-with::video, x11::application
+gauche: devel::interpreter, devel::lang:scheme, interface::commandline, role::program, scope::utility
+gauche-dev: devel::lang:scheme, role::devel-lib, role::documentation
+gauche-doc: devel::doc, devel::lang:scheme, role::documentation
+gauche-gdbm: devel::lang:scheme, works-with::db
+gauche-gl: devel::lang:scheme, interface::3d, x11::library
+gauche-gtk: devel::lang:scheme, devel::library, uitoolkit::gtk, x11::library
+gaupol: implemented-in::python, interface::x11, role::program, scope::application, uitoolkit::gtk, use::editing, works-with::text
+gav: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+gav-themes: game::arcade, interface::x11, role::app-data, uitoolkit::sdl, use::gameplaying, x11::theme
+gawk: devel::interpreter, interface::commandline, role::program, scope::utility, suite::gnu, use::scanning, works-with::text
+gazpacho: devel::ui-builder, implemented-in::python, interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+gb: devel::interpreter, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, works-with::software:source, x11::application
+gbackground: uitoolkit::gtk
+gbase: field::mathematics, interface::commandline, interface::x11, uitoolkit::gtk, x11::application
+gbatnav: game::strategy, interface::x11, role::program, suite::gnome, uitoolkit::gtk, use::gameplaying, x11::application
+gbdfed: uitoolkit::gtk
+gbib: interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::browsing, use::editing, works-with-format::bib, works-with-format::tex, works-with::text, x11::application
+gbindadmin: uitoolkit::gtk
+gbuffy: interface::x11, mail::imap, mail::notification, protocol::imap, protocol::nntp, protocol::ssl, uitoolkit::gtk, works-with::mail, x11::application
+gcal: interface::text-mode, role::program, scope::application, uitoolkit::ncurses, use::organizing, use::timekeeping, works-with::pim
+gcalctool: field::mathematics, implemented-in::c, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, x11::application
+gcb: field::geography, hardware::hamradio, interface::commandline, role::program, scope::utility
+gcc: devel::compiler, devel::lang:c, implemented-in::c, interface::commandline, role::metapackage, role::program, special::meta, suite::gnu, works-with::software:source
+gcc-2.95: devel::compiler, devel::lang:c, implemented-in::c, interface::commandline, role::program, scope::utility, suite::gnu, works-with::software:source
+gcc-2.95-doc: devel::compiler, devel::doc, devel::lang:c, devel::lang:c++, devel::lang:objc, made-of::data:info, role::documentation, suite::gnu
+gcc-3.3: devel::compiler, devel::lang:c, implemented-in::c, interface::commandline, role::program, scope::utility, suite::gnu, works-with::software:source
+gcc-3.3-base: devel::compiler, devel::lang:c, implemented-in::c, interface::commandline, role::app-data, special::auto-inst-parts, suite::gnu, works-with::software:source
+gcc-3.3-doc: devel::compiler, devel::doc, devel::lang:c, devel::lang:c++, devel::lang:objc, made-of::data:info, role::documentation, suite::gnu
+gcc-3.4: devel::compiler, devel::lang:c, implemented-in::c, interface::commandline, role::program, scope::utility, suite::gnu, works-with::software:source
+gcc-3.4-base: devel::compiler, devel::lang:c, implemented-in::c, interface::commandline, role::app-data, special::auto-inst-parts, suite::gnu, works-with::software:source
+gcc-3.4-doc: devel::compiler, devel::doc, devel::lang:c, devel::lang:c++, devel::lang:objc, made-of::data:info, role::documentation, suite::gnu
+gcc-4.0: devel::compiler, devel::lang:c, implemented-in::c, interface::commandline, role::program, works-with::software:source
+gcc-4.0-base: devel::compiler, devel::lang:c, implemented-in::c, interface::commandline, role::program, special::auto-inst-parts, works-with::software:source
+gcc-4.0-doc: role::documentation
+gcc-4.0-locales: devel::compiler, implemented-in::c, implemented-in::c++, suite::gnu
+gcc-4.1: devel::compiler, devel::lang:c, implemented-in::c, interface::commandline, role::program, suite::gnu, works-with::software:source
+gcc-4.1-base: devel::compiler, devel::lang:c, implemented-in::c, interface::commandline, role::app-data, special::auto-inst-parts, suite::gnu, works-with::software:source
+gcc-4.1-locales: suite::gnu
+gcc-4.1-source: suite::gnu
+gcc-4.2: devel::compiler, devel::lang:c, devel::lang:c++, implemented-in::c, interface::commandline, role::program, suite::gnu, works-with::software:source
+gcc-avr: devel::compiler, devel::lang:c, implemented-in::c, interface::commandline, role::program, scope::utility, suite::gnu, works-with::software:source
+gcc-doc: devel::doc, devel::lang:c, devel::lang:c++, devel::lang:objc, role::documentation, role::metapackage
+gcc-h8300-hms: devel::compiler, devel::lang:c, devel::lang:c++, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::software:source
+gcc-m68hc1x: devel::compiler, hardware::embedded, suite::gnu
+gcc-snapshot: devel::compiler
+gcc272: devel::compiler, devel::lang:c, implemented-in::c, interface::commandline, role::program, scope::utility, suite::gnu, works-with::software:source
+gcc272-docs: devel::compiler, devel::doc, devel::lang:c, made-of::data:info, role::documentation
+gccchecker: devel::compiler, devel::debugger, devel::lang:c, interface::commandline, role::program, scope::utility, use::checking, works-with::software:source
+gcdmaster: uitoolkit::gtk
+gcdw: hardware::storage, hardware::storage:cd, interface::text-mode, interface::x11, uitoolkit::gtk, uitoolkit::ncurses, use::storing, works-with-format::iso9660, works-with::archive, x11::application
+gcfilms: uitoolkit::gtk
+gch: devel::lang:ada, devel::testing-qa, interface::commandline, role::program, scope::utility, use::checking, works-with::software:source
+gchangepass: admin::user-management, implemented-in::c, interface::x11, role::program, scope::application, uitoolkit::gtk, x11::application
+gchempaint: field::chemistry, interface::x11, role::program, suite::gnome, uitoolkit::gtk, use::editing, works-with-format::special:todo, x11::application
+gcipher: interface::commandline, interface::x11, network::service, role::program, scope::utility, security::cryptography, suite::gnome, use::proxying, works-with::text, x11::application
+gcj: devel::compiler, devel::lang:java, implemented-in::c, interface::commandline, role::dummy, role::metapackage, suite::gnu, works-with::software:source
+gcj-3.3: devel::compiler, devel::lang:java, implemented-in::c, interface::commandline, works-with::software:source
+gcj-3.4: devel::compiler, devel::lang:java, implemented-in::c, interface::commandline, works-with::software:source
+gcj-4.1: devel::compiler, devel::lang:java, interface::commandline, role::program, suite::gnu, works-with::software:source
+gcj-4.1-base: devel::compiler, devel::lang:java, interface::commandline, role::dummy, special::meta, suite::gnu, works-with::software:source
+gcjwebplugin: special::not-yet-tagged, special::not-yet-tagged::g, uitoolkit::gtk
+gcl: devel::compiler, devel::interpreter, devel::lang:lisp, implemented-in::c, interface::commandline, role::program, scope::utility, suite::gnu, uitoolkit::ncurses, uitoolkit::tk, works-with::software:source
+gcl-doc: devel::compiler, devel::doc, devel::lang:lisp, made-of::data:info, role::documentation, suite::gnu, uitoolkit::tk
+gclcvs: devel::compiler, devel::interpreter, devel::lang:lisp, implemented-in::c, interface::commandline, role::program, scope::utility, uitoolkit::ncurses, uitoolkit::tk, works-with::software:source
+gclcvs-doc: devel::compiler, devel::doc, devel::lang:lisp, made-of::data:info, role::documentation, uitoolkit::tk
+gco: interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::organizing, x11::application
+gcolor2: implemented-in::c, interface::x11, role::program, scope::utility, uitoolkit::gtk, works-with::image
+gcombust: hardware::storage, hardware::storage:cd, interface::x11, uitoolkit::gtk, use::storing, works-with-format::iso9660, works-with::archive, x11::application
+gcompris: game::puzzle, game::typing, implemented-in::python, interface::x11, role::program, suite::gnome, uitoolkit::gtk, uitoolkit::sdl, use::gameplaying, use::learning, x11::application
+gcompris-data: game::puzzle, game::typing, role::app-data, special::auto-inst-parts, suite::gnome, uitoolkit::gtk, uitoolkit::sdl, use::gameplaying, use::learning
+gcompris-sound-da: culture::danish, game::puzzle, game::typing, suite::gnome, uitoolkit::gtk, uitoolkit::sdl, use::gameplaying, use::learning
+gcompris-sound-de: culture::german, game::puzzle, game::typing, suite::gnome, uitoolkit::gtk, uitoolkit::sdl, use::gameplaying, use::learning
+gcompris-sound-en: culture::TODO, role::app-data, use::learning
+gcompris-sound-es: culture::spanish, game::puzzle, game::typing, suite::gnome, uitoolkit::gtk, uitoolkit::sdl, use::gameplaying, use::learning
+gcompris-sound-eu: culture::basque
+gcompris-sound-fi: culture::finnish
+gcompris-sound-fr: culture::french, game::puzzle, game::typing, suite::gnome, uitoolkit::gtk, uitoolkit::sdl, use::gameplaying, use::learning
+gcompris-sound-hu: culture::hungarian
+gcompris-sound-it: culture::italian, game::puzzle, game::typing, suite::gnome, uitoolkit::gtk, uitoolkit::sdl, use::gameplaying, use::learning
+gcompris-sound-nl: culture::dutch
+gcompris-sound-pt: culture::portuguese, game::puzzle, game::typing, suite::gnome, uitoolkit::gtk, uitoolkit::sdl, use::gameplaying, use::learning
+gcompris-sound-ru: culture::russian, game::puzzle, game::typing, suite::gnome, uitoolkit::gtk, uitoolkit::sdl, use::gameplaying, use::learning
+gcompris-sound-sv: culture::swedish, special::not-yet-tagged, special::not-yet-tagged::g
+gcompris-sound-tr: culture::turkish
+gconf: admin::configuring, interface::daemon, network::server, role::program, suite::gnome, uitoolkit::gtk, use::configuring, works-with::db
+gconf-editor: admin::configuring, implemented-in::c, interface::x11, protocol::ssl, role::program, suite::gnome, uitoolkit::gtk, use::configuring, works-with::db
+gconf2: admin::configuring, implemented-in::c, interface::commandline, interface::daemon, network::server, role::program, scope::utility, suite::gnome, use::configuring, works-with-format::xml
+gconf2-common: role::app-data, special::auto-inst-parts, suite::gnome
+gcpegg: interface::commandline, uitoolkit::ncurses
+gcrontab: interface::x11, role::program, scope::utility, uitoolkit::gtk, use::configuring, x11::application
+gcstar: uitoolkit::gtk
+gcu-bin: uitoolkit::gtk
+gcvs: devel::rcs, implemented-in::c++, interface::x11, uitoolkit::gtk, use::synchronizing, works-with::text, x11::application
+gcx: field::astronomy, uitoolkit::gtk
+gda-mysql: suite::gnome, uitoolkit::gtk
+gda-odbc: suite::gnome, uitoolkit::gtk
+gda-postgres: suite::gnome, uitoolkit::gtk
+gda2-freetds: devel::library, suite::gnome, works-with::db
+gda2-mysql: devel::lang:sql, devel::library, suite::gnome, works-with::db
+gda2-odbc: devel::library, role::shared-lib, suite::gnome, works-with::db
+gda2-postgres: devel::lang:sql, devel::library, role::shared-lib, suite::gnome, works-with::db
+gda2-sqlite: devel::lang:sql, devel::library, role::shared-lib, suite::gnome, works-with::db
+gdal-bin: field::geography, interface::commandline, role::program, scope::utility, use::checking, use::converting, works-with::image, works-with::image:raster, works-with::image:vector
+gdancer: interface::x11, role::plugin, sound::player, suite::xmms, uitoolkit::gtk, use::viewing, works-with::audio, works-with::video
+gdb: devel::debugger, devel::lang:c, devel::lang:c++, devel::lang:fortran, devel::lang:java, interface::text-mode, role::program, scope::utility, suite::gnu, uitoolkit::ncurses, works-with::software:running
+gdb-avr: devel::debugger, devel::lang:c, devel::lang:c++, devel::lang:fortran, devel::lang:java, devel::machinecode, role::program, scope::utility, suite::gnu, uitoolkit::ncurses, works-with::software:running
+gdb-m68hc1x: devel::debugger, devel::lang:c, devel::lang:c++, devel::machinecode, hardware::embedded, interface::text-mode, role::program, scope::utility, suite::gnu, uitoolkit::ncurses, works-with::software:running
+gddccontrol: uitoolkit::gtk
+gddrescue: admin::recovery, hardware::storage, interface::commandline, role::program, scope::utility, suite::gnu, use::storing
+gdeb: admin::package-management, interface::x11, suite::debian, suite::gnome, suite::xfce, uitoolkit::gtk, use::browsing, works-with::software:package, x11::application
+gdebi: admin::package-management, filetransfer::ftp, filetransfer::http, implemented-in::python, interface::x11, protocol::ftp, protocol::http, role::program, scope::utility, suite::debian, uitoolkit::gtk, use::downloading, works-with::software:package, x11::application
+gdeskcal: implemented-in::python, interface::x11, role::program, scope::application, uitoolkit::gtk, use::timekeeping, works-with::pim, x11::application
+gdesklets: game::toys, implemented-in::python, interface::daemon, interface::x11, network::server, role::program, suite::gnome, uitoolkit::gtk, use::entertaining, x11::application
+gdesklets-data: implemented-in::python, interface::x11, role::app-data, suite::gnome, uitoolkit::gtk, x11::applet
+gdhcpd: uitoolkit::gtk
+gdis: field::chemistry, interface::3d, uitoolkit::gtk, use::editing, works-with::3dmodel, x11::application
+gdk-imlib1: devel::library, interface::x11, role::shared-lib, uitoolkit::gtk, works-with::image, works-with::image:raster, x11::library
+gdk-imlib1-dev: interface::x11, role::devel-lib, uitoolkit::gtk
+gdk-imlib11: role::shared-lib, uitoolkit::gtk, use::viewing, works-with::image
+gdk-imlib11-dev: devel::doc, devel::examples, devel::library, role::devel-lib, uitoolkit::gtk
+gdm: admin::login, interface::daemon, network::server, role::program, security::authentication, suite::gnome, uitoolkit::gtk, use::login, x11::display-manager
+gdm-themes: admin::login, role::app-data, suite::gnome, x11::theme
+gdmap: uitoolkit::gtk
+gdpc: field::chemistry, field::physics, interface::x11, role::program, scope::application, uitoolkit::gtk, use::viewing, works-with-format::jpg, works-with-format::png, works-with::3dmodel, works-with::video, x11::application
+gdpc-examples: devel::doc, devel::examples, field::chemistry, field::physics, role::documentation
+gdrae: uitoolkit::gtk
+gdtclft: devel::lang:tcl, devel::library, implemented-in::tcl, role::app-data, works-with::image, works-with::image:raster, x11::library
+geant321: devel::lang:fortran, field::physics, implemented-in::fortran, special::not-yet-tagged, special::not-yet-tagged::g
+geant321-data: devel::lang:fortran, field::physics, role::app-data, special::not-yet-tagged, special::not-yet-tagged::g
+geant321-doc: devel::lang:fortran, field::physics, role::documentation, special::not-yet-tagged, special::not-yet-tagged::g
+geany: devel::ide, implemented-in::c, interface::x11, role::program, uitoolkit::gtk, use::editing, works-with::text, works-with::unicode, x11::application
+gearhead: game::rpg:rogue, implemented-in::TODO, interface::text-mode, role::program, scope::application, use::gameplaying
+gearhead-data: role::app-data
+geda: field::electronics, interface::x11, role::program, scope::application, suite::gnu, uitoolkit::gtk, use::editing, x11::application
+geda-doc: field::electronics, role::documentation, suite::gnu
+geda-examples: devel::examples, field::electronics, role::app-data, special::not-yet-tagged, special::not-yet-tagged::g, suite::gnu, uitoolkit::gtk, x11::application
+geda-gattrib: field::electronics, interface::x11, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::g, suite::gnu, uitoolkit::gtk, use::editing, x11::application
+geda-gnetlist: field::electronics, interface::x11, role::program, scope::application, suite::gnu, uitoolkit::gtk, x11::application
+geda-gschem: field::electronics, interface::x11, role::program, scope::application, suite::gnu, uitoolkit::gtk, x11::application
+geda-gsymcheck: field::electronics, interface::x11, role::program, scope::application, suite::gnu, uitoolkit::gtk, use::checking, x11::application
+geda-symbols: field::electronics, interface::x11, role::app-data, suite::gnu, uitoolkit::gtk, x11::application
+geda-utils: field::electronics, interface::x11, role::program, scope::utility, suite::gnu, uitoolkit::gtk, x11::application
+gedit: implemented-in::c, interface::x11, role::program, suite::gnome, uitoolkit::gtk, use::editing, works-with::text, works-with::unicode, x11::application
+gedit-common: implemented-in::c, interface::x11, special::auto-inst-parts, suite::gnome, uitoolkit::gtk, use::editing, works-with::text, works-with::unicode, x11::application
+gedit-dev: devel::library, implemented-in::c, interface::x11, role::devel-lib, suite::gnome, uitoolkit::gtk, use::editing, works-with::text, works-with::unicode, x11::application
+geekast: role::dummy
+geekast-binary: uitoolkit::gtk
+geekcode: game::toys, interface::commandline, role::program, use::gameplaying
+geg: field::mathematics, interface::x11, role::program, scope::application, uitoolkit::gtk, x11::application
+geki2: game::arcade, interface::x11, role::program, use::gameplaying, x11::application
+geki3: game::arcade, interface::x11, role::program, use::gameplaying, x11::application
+gem: devel::examples, devel::library, role::documentation, x11::library
+gemdropx: game::tetris, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+gems: implemented-in::c, interface::text-mode, network::server, network::service, role::program, scope::application, use::monitor, use::viewing
+genders: admin::cluster, admin::configuring, admin::file-distribution, implemented-in::perl, interface::commandline, network::configuration, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::g, use::configuring
+genesis: field::biology, hardware::emulation, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses
+genesis-data: field::biology, hardware::emulation, role::app-data, special::not-yet-tagged, special::not-yet-tagged::g
+geneweb: field::genealogy, implemented-in::ocaml, interface::web, network::server, role::program, scope::utility, works-with::people
+genext2fs: admin::filesystem, hardware::embedded, implemented-in::c, interface::commandline, role::program, scope::utility
+gengetopt: devel::code-generator, devel::lang:c, interface::commandline, role::program, scope::utility, suite::gnu
+genisoimage: hardware::storage, hardware::storage:cd, hardware::storage:dvd, interface::commandline, role::program, scope::utility, use::storing, works-with-format::iso9660, works-with::archive
+genisovh: admin::boot, hardware::storage, hardware::storage:cd, interface::commandline, role::program, scope::utility
+genparse: devel::code-generator, devel::lang:c, interface::commandline, role::program, scope::utility, works-with::software:source
+genpower: admin::monitoring, admin::package-management, hardware::power, hardware::power:ups, interface::daemon, network::server, role::program, use::monitor
+genromfs: admin::filesystem, hardware::embedded, interface::commandline, role::program, scope::utility
+gentoo: implemented-in::c, interface::x11, role::program, scope::application, uitoolkit::gtk, use::browsing, use::organizing, works-with::file, x11::application
+geoip-bin: field::geography, interface::commandline, protocol::ip, role::program, scope::utility, use::scanning
+geomview: field::mathematics, interface::x11, role::program, scope::application, uitoolkit::motif, use::viewing, works-with::3dmodel, x11::application
+geotoad: field::geography, implemented-in::ruby, interface::commandline, protocol::http, role::program, scope::utility, use::downloading, use::searching
+gerbv: field::electronics, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::viewing, x11::application
+geresh: interface::text-mode, role::program, scope::application, uitoolkit::ncurses, use::editing, works-with::text, works-with::unicode
+gerris: field::mathematics, field::physics
+gerstensaft: interface::x11, network::client, role::program, uitoolkit::gtk, use::downloading, x11::application
+getmail: protocol::pop3, special::obsolete, works-with::mail
+getmail4: implemented-in::python, interface::daemon, mail::imap, mail::pop, network::client, protocol::imap, protocol::pop3, protocol::ssl, role::program, use::downloading, works-with::mail
+gettext: devel::i18n, devel::library, interface::commandline, role::program, role::shared-lib, scope::utility, suite::gnu, use::converting, works-with::text
+gettext-base: admin::configuring, devel::i18n, interface::commandline, role::program, scope::utility, suite::gnu, use::converting, works-with::text
+gettext-doc: devel::doc, devel::i18n, made-of::data:html, role::documentation, suite::gnu, use::converting, works-with::text
+gettext-el: devel::i18n, implemented-in::lisp, role::plugin, suite::emacs, use::editing, works-with::text
+geximon: admin::monitoring, implemented-in::python, interface::x11, mail::smtp, role::program, scope::utility, uitoolkit::gtk
+gfax: hardware::modem, implemented-in::c-sharp, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::transmission, works-with::fax, x11::application
+gfc-examples: devel::examples, devel::lang:c++, implemented-in::c++, interface::x11, role::app-data, role::documentation, uitoolkit::gtk, x11::library
+gff2aplot: field::biology, implemented-in::perl, interface::shell, role::program, scope::utility, use::converting, works-with-format::postscript, works-with::text
+gff2ps: field::biology, implemented-in::shell, interface::commandline, made-of::data:postscript, scope::utility, use::converting, works-with-format::postscript, works-with::text
+gfont: works-with::font
+gfontview: interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::viewing, works-with::font, x11::application
+gforge: admin::user-management, devel::bugtracker, devel::docsystem, devel::rcs, implemented-in::perl, implemented-in::php, interface::web, mail::list, protocol::http, role::metapackage, role::program, special::meta, suite::gforge, web::application, works-with::bugs, works-with::file, works-with::people, works-with::software:source
+gforge-common: admin::user-management, implemented-in::perl, implemented-in::php, interface::web, protocol::http, role::app-data, suite::gforge, use::configuring, web::application
+gforge-cvs: devel::rcs, implemented-in::perl, implemented-in::php, interface::web, protocol::http, protocol::ssl, role::plugin, suite::gforge, web::application
+gforge-db-postgresql: devel::lang:sql, implemented-in::perl, implemented-in::php, interface::web, protocol::http, role::plugin, suite::gforge, web::application, works-with::db
+gforge-dns-bind9: implemented-in::perl, implemented-in::php, interface::web, protocol::dns, protocol::http, role::plugin, suite::gforge, use::configuring, web::application
+gforge-ftp-proftpd: filetransfer::ftp, implemented-in::perl, implemented-in::php, interface::web, protocol::ftp, protocol::http, role::plugin, suite::gforge, use::downloading, web::application, works-with::file
+gforge-ldap-openldap: implemented-in::perl, implemented-in::php, interface::web, protocol::http, protocol::ldap, role::plugin, suite::gforge, web::application, works-with::db
+gforge-lists-mailman: implemented-in::perl, implemented-in::php, interface::web, mail::list, protocol::http, protocol::smtp, role::plugin, suite::gforge, web::application, works-with::mail
+gforge-mta-courier: implemented-in::perl, role::plugin, suite::gforge
+gforge-mta-exim: implemented-in::perl, protocol::smtp, role::plugin, suite::gforge, works-with::mail
+gforge-mta-exim4: implemented-in::perl, mail::smtp, protocol::smtp, role::plugin, suite::gforge, works-with::mail
+gforge-mta-postfix: implemented-in::perl, mail::smtp, protocol::smtp, role::plugin, suite::gforge, works-with::mail
+gforge-plugin-scmcvs: devel::rcs, implemented-in::perl, implemented-in::php, interface::web, role::plugin, suite::gforge, works-with::software:source
+gforge-plugin-scmsvn: devel::rcs, implemented-in::perl, interface::web, role::plugin, suite::gforge, works-with::software:source
+gforge-shell-ldap: admin::user-management, implemented-in::perl, implemented-in::php, interface::web, protocol::http, protocol::ldap, role::plugin, security::authentication, suite::gforge, web::application, works-with::db
+gforge-shell-postgresql: admin::user-management, implemented-in::perl, role::plugin, suite::gforge
+gforge-sourceforge-transition: devel::lang:sql, implemented-in::shell, interface::web, protocol::http, role::plugin, suite::gforge, use::converting, web::application, works-with::db
+gforge-theme-starterpack: protocol::http, role::app-data, suite::gforge, web::application
+gforge-web-apache: implemented-in::perl, implemented-in::php, implemented-in::shell, interface::web, protocol::http, role::plugin, suite::apache, suite::gforge, web::application, web::server
+gforth: devel::interpreter, interface::commandline, role::program, scope::utility, suite::gnu, works-with::software:source
+gfortran: devel::compiler, devel::lang:fortran, role::dummy, suite::gnu
+gfortran-4.1: devel::compiler, devel::lang:fortran, interface::commandline, role::program, suite::gnu
+gfortran-doc: devel::compiler, implemented-in::fortran, role::dummy
+gfpoken: game::puzzle, implemented-in::c, interface::x11, role::program, special::completely-tagged, uitoolkit::gtk, use::gameplaying, x11::application
+gfs-tools: special::not-yet-tagged, special::not-yet-tagged::g
+gfslicer: interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, works-with::archive, works-with::file, x11::application
+gftp: filetransfer::ftp, interface::x11, protocol::ftp, role::metapackage, uitoolkit::gtk, use::downloading, works-with::file, x11::application
+gftp-common: filetransfer::ftp, protocol::ftp, role::app-data, special::auto-inst-parts, use::downloading, works-with::file, x11::application
+gftp-gtk: filetransfer::ftp, interface::x11, network::client, protocol::ftp, role::program, uitoolkit::gtk, use::downloading, works-with::file, x11::application
+gftp-text: filetransfer::ftp, interface::text-mode, network::client, protocol::ftp, role::program, uitoolkit::ncurses, use::downloading, works-with::file, x11::application
+ggcov: devel::lang:c, devel::testing-qa, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::viewing, x11::application
+ggi-doc: devel::doc, devel::library, made-of::data:html, role::documentation, x11::library
+ggobi: field::statistics, role::program, uitoolkit::gtk, use::viewing, works-with-format::xml
+ggz-docs: role::documentation
+ggz-game-servers: special::not-yet-tagged, special::not-yet-tagged::g
+ggz-gtk-client: role::program
+ggz-gtk-game-data: role::app-data, special::not-yet-tagged, special::not-yet-tagged::g
+ggz-kde-client: role::program
+ggz-kde-game-data: role::app-data, special::not-yet-tagged, special::not-yet-tagged::g
+ggz-txt-client: role::program, uitoolkit::ncurses
+ggz-utils: role::program, scope::utility
+ggzd: interface::daemon, role::program
+ghc-cvs: devel::compiler, devel::lang:haskell, implemented-in::c, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, works-with::software:source
+ghc-cvs-doc: devel::compiler, devel::doc, devel::lang:haskell, interface::commandline, made-of::data:html, made-of::data:postscript, made-of::data:tex, role::documentation
+ghc-cvs-hopengl: devel::lang:haskell, devel::library, implemented-in::haskell, role::app-data, role::devel-lib, x11::library
+ghc-cvs-libsrc: devel::compiler, devel::lang:haskell, devel::library, implemented-in::haskell, interface::commandline, role::source
+ghc-cvs-prof: devel::lang:haskell, devel::library, devel::profiler, implemented-in::haskell, interface::commandline, role::app-data, role::devel-lib
+ghc5: devel::compiler, devel::interpreter, devel::lang:haskell, implemented-in::c, interface::commandline, uitoolkit::ncurses, works-with::software:source
+ghc5-doc: devel::compiler, devel::doc, devel::lang:haskell, role::documentation
+ghc5-hopengl: devel::lang:haskell, devel::library, role::devel-lib
+ghc5-libsrc: devel::compiler, devel::lang:haskell, role::source
+ghc5-prof: devel::lang:haskell, devel::library, role::devel-lib
+ghc6: devel::compiler, devel::interpreter, devel::lang:haskell, implemented-in::c, implemented-in::haskell, interface::commandline, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, works-with::software:source
+ghc6-doc: devel::compiler, devel::doc, devel::lang:haskell, interface::commandline, role::documentation
+ghc6-hopengl: devel::lang:haskell, devel::library, implemented-in::haskell, role::app-data, role::devel-lib, x11::library
+ghc6-libsrc: devel::compiler, devel::lang:haskell, implemented-in::haskell, interface::commandline, role::source
+ghc6-prof: devel::lang:haskell, devel::library, devel::profiler, implemented-in::haskell, interface::commandline, role::app-data, role::devel-lib
+ghdl: devel::compiler, field::electronics, hardware::emulation, interface::commandline, role::program, scope::utility, works-with::software:source
+ghemical: field::chemistry, interface::3d, suite::gnome, uitoolkit::gtk, use::editing, use::viewing, works-with::3dmodel, x11::application
+ghex: interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::editing, works-with::file, x11::application
+ghextris: game::tetris, implemented-in::python, interface::x11, role::program, suite::gnome, uitoolkit::gtk, use::gameplaying, x11::application
+ghfaxviewer: hardware::modem, interface::x11, role::program, scope::application, suite::gnome, suite::gnu, uitoolkit::gtk, use::viewing, works-with::fax, x11::application
+ghostcore: game::mud, role::app-data, use::gameplaying, works-with::db
+giarpfanoa: implemented-in::shell, interface::commandline, network::scanner, protocol::dns, protocol::ip, role::program, scope::utility, use::scanning
+giblib-dev: devel::library, role::devel-lib, works-with::image, works-with::image:raster, x11::library
+giblib1: devel::library, role::devel-lib, role::shared-lib, works-with::image, works-with::image:raster, x11::library
+giblib1-dbg: devel::library
+gibraltar-bootsupport: admin::boot, hardware::storage, hardware::storage:cd, role::app-data
+gidentd: interface::daemon, network::server, protocol::ident, protocol::ipv6, role::program
+gidic: interface::x11, made-of::data:dictionary, role::app-data, uitoolkit::gtk, works-with::dictionary, x11::application
+gif2png: interface::commandline, role::program, scope::utility, use::converting, works-with::image, works-with::image:raster
+giflib-bin: interface::commandline, role::program, scope::utility, use::converting, works-with::image:raster
+giflib-dbg: devel::library
+giflib3g: devel::library, role::shared-lib, works-with::image:raster, x11::library
+giflib3g-dev: devel::library, role::devel-lib, works-with::image:raster, x11::library
+gifsicle: interface::commandline, role::program, scope::utility, use::compressing, use::converting, works-with::image, works-with::image:raster
+gift: role::metapackage, special::meta, use::downloading
+giftcurs: implemented-in::c, interface::text-mode, network::client, protocol::ipv6, role::program, uitoolkit::ncurses, use::downloading
+giftd: implemented-in::c, interface::daemon, network::client, network::server, role::program, use::downloading
+giftoxic: interface::x11, network::client, role::program, uitoolkit::gtk, use::downloading, x11::application
+giftrans: implemented-in::c, interface::commandline, role::program, scope::utility, special::completely-tagged, use::converting, works-with-format::TODO, works-with::image, works-with::image:raster
+giftui: interface::x11, network::client, role::program, uitoolkit::gtk, use::downloading, x11::application
+gigtools: special::not-yet-tagged, special::not-yet-tagged::g
+gij: devel::interpreter, devel::lang:java, interface::commandline, role::dummy, role::metapackage, special::meta, suite::gnu, works-with::software:source
+gij-3.3: devel::interpreter, devel::lang:java, interface::commandline
+gij-3.4: devel::interpreter, devel::lang:java, interface::commandline
+gij-4.1: devel::interpreter, devel::lang:java, devel::runtime, interface::commandline, role::program, suite::gnu
+gimageview: interface::x11, role::program, scope::utility, uitoolkit::gtk, use::viewing, works-with::image, works-with::image:raster, x11::application
+gimp: implemented-in::c, interface::x11, role::program, scope::application, suite::gimp, suite::gnu, uitoolkit::gtk, use::editing, works-with-format::jpg, works-with-format::pdf, works-with::image, works-with::image:raster, works-with::text, x11::application
+gimp-cbmplugs: implemented-in::c, interface::x11, role::plugin, suite::gimp, use::converting, works-with::image, works-with::image:raster
+gimp-data: made-of::data:icons, role::app-data, special::auto-inst-parts, suite::gimp, suite::gnu, uitoolkit::gtk, works-with::image, works-with::image:raster
+gimp-data-extras: interface::x11, role::app-data, suite::gimp, suite::gnu, use::editing, works-with::image, works-with::image:raster
+gimp-dbg: suite::gimp, suite::gnu
+gimp-dcraw: hardware::camera, interface::x11, role::plugin, role::program, scope::application, suite::gimp, suite::gnu, uitoolkit::gtk, use::converting, works-with::image, works-with::image:raster, x11::application
+gimp-dimage-color: hardware::camera, interface::x11, role::plugin, scope::utility, suite::gimp, suite::gnu, uitoolkit::gtk, use::converting, works-with::image, works-with::image:raster, x11::application
+gimp-gap: interface::x11, role::plugin, suite::gimp, suite::gnu, uitoolkit::gtk, use::editing, works-with::image, works-with::image:raster, works-with::video
+gimp-help-common: interface::x11, role::documentation, special::auto-inst-parts, suite::gimp, suite::gnu
+gimp-help-cs: culture::czech, interface::x11, made-of::data:html, role::documentation, suite::gimp, suite::gnu
+gimp-help-de: culture::german, interface::x11, made-of::data:html, role::documentation, suite::gimp, suite::gnu
+gimp-help-en: culture::TODO, interface::x11, made-of::data:html, role::documentation, suite::gimp, suite::gnu
+gimp-help-fr: culture::french, interface::x11, made-of::data:html, role::documentation, suite::gimp, suite::gnu
+gimp-help-it: culture::italian, role::documentation, suite::gnu
+gimp-help-nl: culture::dutch, role::documentation, suite::gnu
+gimp-help-sv: culture::swedish, interface::x11, made-of::data:html, role::documentation, suite::gimp, suite::gnu
+gimp-help-zh-cn: culture::chinese, interface::x11, made-of::data:html, role::documentation, suite::gimp, suite::gnu
+gimp-helpbrowser: interface::x11, role::plugin, suite::gimp, suite::gnu, uitoolkit::gtk, use::browsing, works-with-format::html, works-with::text, x11::application
+gimp-print: suite::gnu, uitoolkit::gtk, use::printing
+gimp-python: devel::lang:python, implemented-in::python, interface::x11, role::app-data, suite::gimp, uitoolkit::gtk, use::editing, works-with::image, works-with::image:raster
+gimp-resynthesizer: suite::gnu, uitoolkit::gtk
+gimp-svg: made-of::data:svg, role::plugin, suite::gimp, suite::gnu, works-with-format::svg, works-with::image, works-with::image:vector
+gimp-texturize: interface::x11, role::plugin, suite::gimp, suite::gnu, uitoolkit::gtk, use::editing, works-with::image, works-with::image:raster
+gimp-ufraw: hardware::camera, interface::x11, role::plugin, role::program, scope::application, suite::gimp, suite::gnu, uitoolkit::gtk, use::converting, works-with::image, works-with::image:raster, x11::application
+gimp1.2: interface::x11, role::dummy
+gimp2.0-quiteinsane: interface::x11, role::plugin, suite::gimp, suite::gnu, uitoolkit::gtk, uitoolkit::qt, works-with::image, works-with::image:raster, x11::application
+gimpprint-doc: hardware::printer, interface::x11, made-of::data:html, made-of::data:pdf, role::documentation, use::printing
+gimpprint-locales: hardware::printer, interface::x11, role::app-data, use::printing
+ginac-tools: devel::lang:c++, field::mathematics, interface::shell, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::viewing
+gip: interface::commandline, interface::x11, protocol::ip, role::program, scope::utility, uitoolkit::gtk, x11::application
+gipsc: interface::x11, protocol::ip, role::program, scope::utility, suite::gnome, uitoolkit::gtk, x11::application
+git: implemented-in::c, interface::text-mode, role::program, scope::utility, suite::gnu, uitoolkit::ncurses, use::browsing, works-with::file, works-with::software:running
+git-core: devel::rcs, implemented-in::c, implemented-in::perl, implemented-in::shell, interface::commandline, network::client, role::program, scope::special:not-yet-tagged, works-with::file, works-with::software:source
+git-cvs: devel::rcs, role::program
+git-doc: role::documentation
+git-email: devel::rcs
+gitk: devel::rcs, implemented-in::tcl, interface::x11, role::program, uitoolkit::tk, use::viewing, works-with::software:source, x11::application
+gjay: interface::x11, role::program, scope::application, sound::player, suite::xmms, uitoolkit::gtk, use::organizing, use::playing, works-with::audio, x11::application
+gjdoc: devel::docsystem, devel::lang:java, implemented-in::java, interface::commandline, role::program, scope::utility, suite::gnu, works-with-format::xml, works-with::software:source
+gjiten: culture::japanese, role::app-data, role::program, scope::application, suite::gnome, uitoolkit::gtk, works-with::dictionary, x11::application
+gjots2: implemented-in::python, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::editing, works-with::pim, x11::application
+gkdebconf: admin::configuring, interface::x11, role::program, suite::debian, uitoolkit::gtk, use::configuring, x11::application
+gkdial: hardware::modem, uitoolkit::gtk, use::dialing
+gkdial-gnome: hardware::modem, role::dummy, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::dialing, x11::applet
+gkermit: interface::commandline, network::client, role::program, use::downloading, use::login
+gkrelldnet: role::program, scope::utility, x11::applet
+gkrellkam: hardware::camera, interface::x11, role::plugin, suite::gkrellm, uitoolkit::gtk, works-with::image, works-with::image:raster, x11::application
+gkrellm: interface::x11, protocol::ssl, role::program, scope::application, suite::gkrellm, uitoolkit::gtk, use::monitor, x11::application
+gkrellm-alltraxclock: interface::x11, role::plugin, suite::gkrellm, uitoolkit::gtk, use::timekeeping, x11::application
+gkrellm-alltraxclock2: interface::x11, role::plugin, role::shared-lib, suite::gkrellm, uitoolkit::gtk, use::timekeeping, x11::application
+gkrellm-bfm: interface::x11, role::plugin, role::shared-lib, scope::utility, suite::gkrellm, uitoolkit::gtk, use::monitor, x11::application
+gkrellm-common: interface::x11, role::app-data, special::auto-inst-parts, suite::gkrellm, uitoolkit::gtk, x11::application
+gkrellm-hdplop: hardware::storage, interface::x11, role::plugin, suite::gkrellm, uitoolkit::gtk, use::monitor, x11::application
+gkrellm-i8k: hardware::laptop, interface::x11, role::plugin, suite::gkrellm, uitoolkit::gtk, use::monitor, x11::application
+gkrellm-ibam: admin::power-management, hardware::laptop, hardware::power, hardware::power:apm, interface::x11, role::plugin, suite::gkrellm, uitoolkit::gtk, use::monitor, x11::application
+gkrellm-leds: interface::x11, role::plugin, role::shared-lib, suite::gkrellm, uitoolkit::gtk, use::monitor, x11::application
+gkrellm-mailwatch: interface::x11, mail::notification, role::plugin, suite::gkrellm, uitoolkit::gtk, use::monitor, x11::application
+gkrellm-mldonkey: implemented-in::c, interface::x11, role::plugin, suite::gkrellm, uitoolkit::gtk, use::downloading, use::monitor, x11::application
+gkrellm-radio: interface::x11, role::plugin, suite::gkrellm, uitoolkit::gtk, use::playing, x11::application
+gkrellm-reminder: interface::x11, role::plugin, role::shared-lib, suite::gkrellm, uitoolkit::gtk, use::organizing, works-with::pim, x11::application
+gkrellm-snmp: interface::x11, protocol::snmp, role::plugin, suite::gkrellm, uitoolkit::gtk, use::monitor, x11::application
+gkrellm-volume: interface::x11, role::plugin, role::shared-lib, sound::mixer, suite::gkrellm, uitoolkit::gtk, x11::application
+gkrellm-x86info: hardware::detection, interface::x11, role::plugin, role::shared-lib, suite::gkrellm, uitoolkit::gtk, x11::application
+gkrellmd: interface::daemon, interface::x11, network::server, role::program, suite::gkrellm, uitoolkit::gtk, use::monitor, x11::application
+gkrellmitime: interface::x11, role::plugin, suite::gkrellm, uitoolkit::gtk, use::timekeeping, x11::application
+gkrellmms: interface::x11, role::plugin, role::shared-lib, sound::player, suite::gkrellm, suite::xmms, uitoolkit::gtk, use::playing, x11::application
+gkrellmoon: interface::x11, role::plugin, role::shared-lib, suite::gkrellm, uitoolkit::gtk, use::timekeeping, x11::application
+gkrellmss: interface::x11, role::plugin, role::shared-lib, suite::gkrellm, uitoolkit::gtk, use::monitor, x11::application
+gkrellmwho2: interface::x11, role::plugin, role::shared-lib, suite::gkrellm, uitoolkit::gtk, use::monitor, x11::application
+gkrellmwireless: interface::x11, role::plugin, suite::gkrellm, uitoolkit::gtk, use::monitor, x11::application
+gkrellongrun: interface::x11, role::plugin, suite::gkrellm, uitoolkit::gtk, use::monitor, x11::application
+gkrellshoot: interface::x11, role::plugin, role::shared-lib, suite::gkrellm, uitoolkit::gtk, works-with::image, works-with::image:raster, x11::application
+gkrellweather: interface::x11, role::plugin, role::shared-lib, suite::gkrellm, uitoolkit::gtk, use::monitor, x11::application
+gkrellxmms2: implemented-in::c, network::client, role::plugin, suite::gkrellm, suite::xmms2, uitoolkit::gtk
+gksu: admin::user-management, interface::x11, role::program, scope::utility, security::authentication, uitoolkit::gtk, use::login, x11::application
+gl-117: game::simulation, interface::3d, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+gl-117-data: game::simulation, interface::3d, role::app-data, uitoolkit::sdl, x11::application
+glabels: interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::printing, x11::application
+glabels-data: role::app-data, suite::gnome, uitoolkit::gtk, use::printing
+glabels-dev: interface::x11, role::devel-lib, suite::gnome, uitoolkit::gtk, use::printing, x11::application
+glade: devel::lang:c, devel::lang:c++, devel::lang:perl, devel::lang:python, devel::ui-builder, interface::x11, role::program, scope::application, uitoolkit::gtk, use::editing, works-with-format::xml, works-with::software:source, x11::application
+glade-2: devel::lang:c, devel::lang:c++, devel::lang:perl, devel::lang:python, devel::ui-builder, interface::x11, role::program, scope::application, uitoolkit::gtk, use::editing, works-with-format::xml, works-with::software:source, x11::application
+glade-common: devel::doc, devel::lang:c, devel::ui-builder, interface::x11, role::documentation, special::auto-inst-parts, suite::gnome, uitoolkit::gtk, use::editing, works-with-format::xml, works-with::software:source, x11::application
+glade-common-2: devel::doc, devel::lang:c, devel::ui-builder, interface::x11, role::documentation, special::auto-inst-parts, suite::gnome, uitoolkit::gtk, use::editing, works-with-format::xml, works-with::software:source, x11::application
+glade-doc: devel::doc, devel::lang:c, devel::ui-builder, interface::x11, made-of::data:html, role::documentation, suite::gnome, uitoolkit::gtk, use::editing, works-with-format::xml, works-with::software:source, x11::application
+glade-doc-2: devel::doc, devel::lang:c, devel::ui-builder, interface::x11, made-of::data:html, role::documentation, suite::gnome, uitoolkit::gtk, use::editing, works-with-format::xml, works-with::software:source, x11::application
+glade-gnome: devel::lang:c, devel::lang:c++, devel::lang:perl, devel::lang:python, devel::ui-builder, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::editing, works-with-format::xml, works-with::software:source, x11::application
+glade-gnome-2: devel::lang:c, devel::lang:c++, devel::lang:perl, devel::lang:python, devel::ui-builder, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::editing, works-with-format::xml, works-with::software:source, x11::application
+glade-perl: devel::lang:perl, uitoolkit::gtk, use::editing
+glademm: devel::code-generator, devel::lang:c++, devel::ui-builder, implemented-in::c++, interface::commandline, role::program, scope::utility, use::editing, works-with-format::xml, works-with::software:source
+glame: devel::lang:scheme, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::editing, works-with::audio
+glark: implemented-in::ruby, interface::commandline, role::program, scope::utility, use::searching, works-with::text
+glcpu: interface::3d, network::service, role::program, scope::utility, use::monitor, x11::application
+gle-doc: devel::doc, devel::examples, devel::library, interface::3d, role::documentation, x11::library
+glfer: hardware::hamradio, interface::x11, role::program, scope::application, uitoolkit::gtk, use::transmission, use::viewing, x11::application
+glibc-doc: devel::doc, devel::lang:c, devel::library, made-of::data:html, made-of::data:info, role::documentation, suite::gnu
+glide2-bin: devel::library, hardware::video, interface::commandline, role::program, scope::utility, use::driver, x11::library
+gliese: field::astronomy, game::toys, use::gameplaying
+glimmer: interface::x11, suite::gnome, uitoolkit::gtk, use::editing
+glimpse: special::not-yet-tagged, special::not-yet-tagged::g, use::searching
+glipper: implemented-in::c, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::editing, use::storing, works-with::software:running, works-with::text
+gliv: interface::x11, role::program, scope::utility, uitoolkit::gtk, use::viewing, works-with::image, works-with::image:raster, x11::library
+glob2: game::strategy, network::client, role::program, uitoolkit::sdl, use::gameplaying
+global: devel::lang:c, devel::lang:c++, devel::lang:java, interface::commandline, role::program, scope::utility, use::searching, works-with::software:source
+glosstex: interface::commandline, role::program, scope::utility, use::editing, works-with-format::tex, works-with::dictionary, works-with::text
+glotski: game::puzzle, interface::x11, role::program, suite::gnome, uitoolkit::gtk, use::gameplaying, x11::application
+glpk: field::mathematics, implemented-in::c, role::devel-lib, suite::gnu
+gltron: game::arcade, interface::3d, junior::games-gl, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+glunarclock: game::toys, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::entertaining, use::timekeeping, x11::applet
+glurp: implemented-in::c, interface::x11, network::client, role::program, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+glut-doc: devel::doc, devel::library, role::documentation, special::obsolete
+glutg3: devel::library, interface::3d
+glutg3-dev: devel::library, interface::3d, role::dummy, special::obsolete
+gmail-notify: implemented-in::python, interface::x11, works-with::mail
+gmailfs: admin::filesystem, implemented-in::python, interface::commandline, role::program, scope::utility, use::organizing, works-with::mail
+gman: implemented-in::c, interface::web, interface::x11, role::program, uitoolkit::gtk, use::browsing, use::viewing, web::cgi, works-with-format::man, x11::application
+gmanedit: interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::editing, works-with-format::man, works-with::text, x11::application
+gmemusage: implemented-in::c, interface::x11, role::program, scope::utility, use::monitor, x11::application
+gmessage: interface::commandline, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::viewing, x11::application
+gmetad: admin::monitoring, interface::daemon, network::server, network::service, role::program, use::monitor, works-with-format::xml, works-with::db
+gmfsk: hardware::hamradio, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, x11::application
+gmgaclock: hardware::video, suite::gnome, uitoolkit::gtk
+gmod: implemented-in::c++, interface::text-mode, sound::player, uitoolkit::ncurses, use::playing, works-with::audio
+gmoo: game::mud, interface::x11, network::client, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+gmp-ecm: field::mathematics, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::g
+gmpc: interface::x11, network::client, role::program, suite::gnome, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+gmrun: interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+gmsh: interface::x11, role::program, scope::application, uitoolkit::TODO, use::editing, works-with::3dmodel, x11::application
+gmt: field::geography, interface::commandline, role::program, scope::utility, use::editing, works-with-format::postscript, works-with::image:vector, works-with::text
+gmt-coast-low: field::geography, role::app-data, use::editing, works-with-format::postscript, works-with::image:vector, works-with::text
+gmt-doc: field::geography, made-of::data:html, role::documentation, use::editing, works-with-format::postscript, works-with::image, works-with::image:vector, works-with::text
+gmt-doc-pdf: field::geography, made-of::data:pdf, role::documentation, use::editing, works-with-format::postscript, works-with::image, works-with::image:vector, works-with::text
+gmt-doc-ps: field::geography, made-of::data:postscript, role::documentation, use::editing, works-with-format::postscript, works-with::image, works-with::image:vector, works-with::text
+gmt-examples: devel::examples, field::geography, role::app-data, use::editing, works-with-format::postscript, works-with::image:vector, works-with::text
+gmt-manpages: field::geography, made-of::data:man, role::documentation, use::editing, works-with-format::postscript, works-with::image, works-with::image:vector, works-with::text
+gmt-tutorial: field::geography, role::app-data, role::documentation, use::editing, works-with-format::postscript, works-with::image, works-with::image:vector, works-with::text
+gmt-tutorial-pdf: field::geography, made-of::data:pdf, role::documentation, use::editing, works-with-format::postscript, works-with::image, works-with::image:vector, works-with::text
+gmt-tutorial-ps: field::geography, made-of::data:postscript, role::documentation, use::editing, works-with-format::postscript, works-with::image:vector, works-with::text
+gnade-bin: devel::lang:sql, implemented-in::ada
+gnade-dev: devel::lang:ada, devel::lang:sql, devel::library, implemented-in::ada, role::devel-lib, works-with::db
+gnade-doc: devel::doc, devel::lang:ada, devel::lang:sql, made-of::data:html, made-of::data:pdf, made-of::data:postscript, role::documentation, works-with::db
+gnarwl: mail::delivery-agent, network::client, protocol::ldap, protocol::smtp, role::program, works-with::db, works-with::mail
+gnash: interface::x11, role::program, suite::gnu, uitoolkit::gtk, uitoolkit::ncurses, use::playing, works-with::audio, works-with::video
+gnash-tools: uitoolkit::ncurses
+gnat: devel::compiler, devel::lang:ada, implemented-in::c, interface::commandline, role::dummy, scope::utility, suite::gnu, works-with::software:source
+gnat-3.3: devel::compiler, devel::lang:ada, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::software:source
+gnat-3.3-doc: devel::compiler, devel::doc, devel::lang:ada, made-of::data:info, role::documentation
+gnat-3.4: devel::compiler, devel::lang:ada, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::software:source
+gnat-3.4-doc: devel::compiler, devel::doc, devel::lang:ada, made-of::data:info, role::documentation
+gnat-4.1: devel::compiler, devel::lang:ada, interface::commandline, role::program, scope::utility, suite::gnu, works-with::software:source
+gnat-4.1-base: devel::compiler, devel::lang:ada, interface::commandline, role::app-data, special::auto-inst-parts, suite::gnu, works-with::software:source
+gnat-doc: devel::compiler, devel::doc, devel::lang:ada, made-of::data:html, made-of::data:info, role::documentation
+gnat-gdb: devel::debugger, devel::lang:ada, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, works-with::software:running
+gnat-gdb-doc: devel::debugger, devel::doc, devel::lang:ada, made-of::data:html, role::documentation, works-with::software:running
+gnat-glade: devel::compiler, devel::lang:ada, interface::commandline, role::program, scope::utility, works-with::software:source
+gnat-glade-doc: devel::compiler, devel::doc, devel::examples, devel::lang:ada, made-of::data:info, role::documentation, works-with::software:source
+gnat-gps: devel::ide, devel::lang:ada, devel::lang:c, interface::x11, role::program, scope::application, uitoolkit::gtk, use::editing, x11::application
+gnat-gps-doc: devel::doc, devel::ide, devel::lang:ada, devel::lang:c, made-of::data:html, made-of::data:info, made-of::data:postscript, role::documentation, uitoolkit::gtk, x11::application
+gnats: devel::bugtracker, mail::smtp, network::server, protocol::smtp, role::program, suite::gnu, works-with::bugs, works-with::mail
+gnats-user: devel::bugtracker, mail::smtp, network::client, protocol::smtp, role::program, suite::gnu, works-with::bugs, works-with::mail
+gnatsweb: devel::bugtracker, implemented-in::perl, interface::web, role::program, scope::utility, suite::gnu, web::cgi, works-with::bugs
+gnbd-client: hardware::storage, implemented-in::c, interface::commandline, network::client, network::service, role::program
+gnbd-server: hardware::storage, implemented-in::c, interface::daemon, network::server, network::service, role::program
+gngb: hardware::emulation, hardware::input, hardware::input:joystick, interface::3d, role::program, scope::application, uitoolkit::sdl, use::gameplaying, x11::application
+gngeo: special::not-yet-tagged, special::not-yet-tagged::g, uitoolkit::sdl
+gngeogui: special::not-yet-tagged, special::not-yet-tagged::g
+gniall: game::toys, interface::x11, role::program, suite::gnome, uitoolkit::gtk, use::gameplaying, x11::application
+gnobog: interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::browsing, use::organizing, works-with::pim, x11::application
+gnocatan-ai: role::dummy, special::obsolete
+gnocatan-client: role::dummy, special::obsolete
+gnocatan-help: role::dummy, special::obsolete
+gnocatan-meta-server: role::dummy, special::obsolete
+gnocatan-server-console: role::dummy, special::obsolete
+gnocatan-server-data: role::dummy, special::obsolete
+gnocatan-server-gtk: role::dummy, special::obsolete
+gnochm: suite::gnome
+gnoemoe: uitoolkit::gtk, uitoolkit::ncurses
+gnofin: field::finance, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk
+gnoise: interface::x11, role::program, scope::application, sound::player, uitoolkit::gtk, use::editing, works-with-format::wav, works-with::audio, x11::application
+gnoise-gnome: interface::x11, role::program, scope::application, sound::player, suite::gnome, uitoolkit::gtk, use::editing, works-with-format::wav, works-with::audio, x11::application
+gnokii: admin::hardware, hardware::embedded, hardware::modem, interface::x11, role::program, scope::application, uitoolkit::gtk, use::transmission, x11::application
+gnokii-smsd: admin::hardware, hardware::embedded, interface::daemon, network::server, role::program, uitoolkit::gtk, use::transmission, x11::application
+gnokii-smsd-mysql: admin::hardware, devel::lang:sql, hardware::embedded, role::plugin, uitoolkit::gtk, use::transmission, works-with::db, x11::application
+gnokii-smsd-pgsql: admin::hardware, devel::lang:sql, hardware::embedded, role::plugin, uitoolkit::gtk, use::transmission, works-with::db, x11::application
+gnomad2: interface::x11, role::program, scope::utility, uitoolkit::gtk, use::downloading, works-with::audio, x11::application
+gnome: interface::x11, role::metapackage, special::meta, suite::gnome, uitoolkit::gtk
+gnome-about: game::toys, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::viewing, works-with::people, x11::application
+gnome-accessibility-themes: accessibility::screen-magnify, interface::x11, role::app-data, suite::gnome, uitoolkit::gtk, x11::theme
+gnome-alsamixer: interface::x11, role::program, scope::utility, sound::mixer, suite::gnome, uitoolkit::gtk, works-with::audio
+gnome-applets: admin::filesystem, admin::power-management, game::toys, hardware::modem, hardware::storage, hardware::storage:cd, implemented-in::c, interface::x11, mail::notification, role::plugin, suite::gnome, uitoolkit::gtk, use::downloading, use::monitor, use::playing, works-with::file, works-with::mail, works-with::pim, x11::applet
+gnome-applets-data: role::app-data, role::program, scope::utility, special::auto-inst-parts, suite::gnome, uitoolkit::gtk, x11::applet
+gnome-applets-dbg: suite::gnome
+gnome-applets-dev: devel::lang:c, devel::library, interface::x11, role::devel-lib, suite::gnome, uitoolkit::gtk, x11::applet
+gnome-apt: admin::package-management, filetransfer::ftp, filetransfer::http, interface::x11, protocol::ftp, protocol::http, protocol::ssl, role::program, suite::debian, suite::gnome, uitoolkit::gtk, uitoolkit::ncurses, use::configuring, use::downloading, use::searching, works-with::software:package, x11::application
+gnome-art: filetransfer::http, implemented-in::ruby, interface::x11, network::client, protocol::http, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::g, suite::gnome, uitoolkit::gtk, use::downloading, works-with::image, works-with::image:raster, x11::application, x11::theme
+gnome-audio: role::app-data, suite::gnome, uitoolkit::gtk, use::playing
+gnome-backgrounds: interface::x11, role::app-data, suite::gnome, uitoolkit::gtk, x11::theme
+gnome-bin: admin::configuring, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::configuring, x11::application
+gnome-blog: implemented-in::python, interface::x11, network::client, role::program, suite::gnome, uitoolkit::gtk, use::editing, works-with-format::xml, works-with-format::xml:rss, x11::applet
+gnome-breakout: game::arcade, interface::x11, role::program, suite::gnome, uitoolkit::gtk, use::gameplaying, x11::application
+gnome-btdownload: role::program, suite::gnome
+gnome-cards-data: game::card, role::app-data, suite::gnome
+gnome-chess: game::board, game::board:chess, role::program, suite::gnome, uitoolkit::gtk, use::gameplaying
+gnome-commander: interface::x11, role::program, scope::application, uitoolkit::gtk, use::browsing, use::organizing, works-with::file, x11::application
+gnome-common: devel::library, interface::commandline, role::program, scope::utility, special::auto-inst-parts, suite::gnome, uitoolkit::gtk
+gnome-control-center: implemented-in::c, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::configuring, x11::application
+gnome-core: interface::x11, role::metapackage, special::meta, suite::gnome, uitoolkit::gtk
+gnome-core-devel: devel::library, interface::x11, role::metapackage, special::meta, suite::gnome, uitoolkit::gtk
+gnome-cpufreq-applet: interface::x11, role::plugin, suite::gnome, uitoolkit::gtk, use::monitor, x11::applet
+gnome-cups-manager: hardware::printer, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::configuring, use::printing, x11::application
+gnome-db: interface::x11, suite::gnome, uitoolkit::gtk
+gnome-db-doc: interface::x11, role::documentation, suite::gnome, uitoolkit::gtk
+gnome-desktop-data: interface::x11, role::app-data, special::auto-inst-parts, suite::gnome, uitoolkit::gtk
+gnome-desktop-environment: interface::x11, role::metapackage, special::meta, suite::gnome, uitoolkit::gtk
+gnome-dev-doc: devel::doc, interface::x11, made-of::data:html, role::documentation, suite::gnome, uitoolkit::gtk
+gnome-devel: devel::packaging, interface::x11, role::metapackage, special::meta, suite::gnome, uitoolkit::gtk
+gnome-doc-tools: devel::docsystem, interface::commandline, role::data, suite::gnome, uitoolkit::gtk, works-with-format::html, works-with::text
+gnome-doc-utils: devel::docsystem, interface::commandline, role::program, scope::utility, suite::gnome, use::converting, works-with-format::xml
+gnome-extra-icons: interface::x11, made-of::data:icons, role::app-data, suite::gnome, uitoolkit::gtk, x11::theme
+gnome-fifth-toe: interface::x11, role::metapackage, special::meta, suite::gnome, uitoolkit::gtk, x11::application
+gnome-find: interface::x11, role::program, suite::gnome, uitoolkit::gtk, use::searching, works-with::file, x11::application
+gnome-games: game::board, game::card, game::puzzle, game::tetris, interface::x11, role::program, suite::gnome, uitoolkit::gtk, use::gameplaying, x11::application
+gnome-games-data: interface::x11, role::app-data, suite::gnome, uitoolkit::gtk, use::gameplaying
+gnome-games-extra-data: interface::x11, role::app-data, suite::gnome, uitoolkit::gtk, use::gameplaying, x11::theme
+gnome-gpg: interface::x11, role::program, scope::application, security::cryptography, suite::gnome, uitoolkit::gtk, use::storing, works-with::pim
+gnome-gv: interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::viewing, works-with-format::postscript, works-with::text, x11::application
+gnome-hearts: game::card, suite::gnome, uitoolkit::gtk
+gnome-icon-theme: interface::x11, made-of::data:icons, made-of::data:svg, role::app-data, suite::gnome, uitoolkit::gtk, x11::theme
+gnome-icon-theme-blankon: suite::gnome, uitoolkit::gtk
+gnome-icon-theme-dlg-neu: suite::gnome, uitoolkit::gtk
+gnome-icon-theme-gartoon: interface::x11, made-of::data:icons, made-of::data:svg, role::app-data, suite::gnome, uitoolkit::gtk, x11::theme
+gnome-icon-theme-nuovo: suite::gnome, uitoolkit::gtk
+gnome-icon-theme-suede: special::not-yet-tagged, special::not-yet-tagged::g, suite::gnome, uitoolkit::gtk
+gnome-iconedit: interface::x11, role::program, suite::gnome, uitoolkit::gtk, use::editing, works-with-format::svg, works-with::image, works-with::image:raster, works-with::image:vector, x11::application
+gnome-jabber: protocol::jabber, protocol::msn-messenger, protocol::oscar, suite::gnome, uitoolkit::gtk
+gnome-keyring: implemented-in::c, interface::daemon, role::plugin, security::authentication, security::cryptography, security::privacy, suite::gnome, uitoolkit::gtk, use::storing
+gnome-keyring-manager: implemented-in::c, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::storing, x11::application
+gnome-libs-data: interface::x11, role::app-data, special::auto-inst-parts, suite::gnome, uitoolkit::gtk
+gnome-lokkit: interface::x11, network::firewall, role::program, scope::utility, security::firewall, suite::gnome, uitoolkit::gtk, use::configuring, use::routing, x11::application
+gnome-mag: accessibility::screen-magnify, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::viewing, x11::application
+gnome-main-menu: suite::gnome, uitoolkit::gtk
+gnome-media: hardware::storage, hardware::storage:cd, interface::x11, role::program, scope::utility, sound::mixer, sound::player, sound::recorder, suite::gnome, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+gnome-media-common: suite::gnome
+gnome-menus: admin::configuring, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, x11::application, x11::library
+gnome-mime-data: admin::configuring, interface::x11, role::app-data, special::auto-inst-parts, suite::gnome, uitoolkit::gtk, works-with::file
+gnome-mount: suite::gnome, uitoolkit::gtk
+gnome-mud: game::mud, network::client, role::program, suite::gnome, uitoolkit::gtk, uitoolkit::ncurses, use::gameplaying, x11::application
+gnome-netstatus-applet: admin::monitoring, interface::x11, network::configuration, protocol::ssl, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::monitor, x11::applet, x11::application
+gnome-nettool: implemented-in::c, interface::x11, network::scanner, protocol::dns, protocol::ip, role::program, scope::application, suite::gnome, uitoolkit::gtk, x11::application
+gnome-office: interface::x11, role::metapackage, special::meta, suite::gnome, uitoolkit::gtk, x11::application
+gnome-osd: suite::gnome
+gnome-panel: implemented-in::c, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, x11::applet
+gnome-panel-data: interface::x11, role::app-data, special::auto-inst-parts, suite::gnome, uitoolkit::gtk, x11::applet
+gnome-peercast: suite::gnome, uitoolkit::gtk
+gnome-photo-printer: hardware::printer, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::printing, works-with::image, works-with::image:raster, x11::application
+gnome-pilot: hardware::embedded, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, uitoolkit::ncurses, x11::applet
+gnome-pilot-conduits: hardware::embedded, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::synchronizing, works-with::pim, x11::applet
+gnome-pim: role::program, scope::application, suite::gnome, uitoolkit::gtk, works-with::pim
+gnome-pkg-tools: devel::packaging, interface::commandline, role::program, scope::utility, suite::gnome, works-with::software:source
+gnome-pkgview: interface::x11, suite::gnome, uitoolkit::gtk, use::checking, works-with::software:package, x11::applet
+gnome-power-manager: role::program, suite::gnome, uitoolkit::gtk
+gnome-ppp: hardware::modem, interface::x11, network::configuration, protocol::ssl, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::dialing, x11::application
+gnome-presence-applet: suite::gnome, uitoolkit::gtk
+gnome-randr-applet: interface::x11, role::plugin, suite::gnome, uitoolkit::gtk, x11::applet, x11::application, x11::library
+gnome-schedule: implemented-in::python, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::configuring
+gnome-screensaver: role::plugin, role::program, security::privacy, suite::gnome, uitoolkit::gtk
+gnome-session: interface::daemon, interface::x11, network::server, role::program, suite::gnome, uitoolkit::gtk, x11::display-manager
+gnome-spell: interface::x11, role::program, scope::utility, special::auto-inst-parts, suite::gnome, uitoolkit::gtk, use::checking, works-with::dictionary, works-with::text
+gnome-splashscreen-manager: special::not-yet-tagged, special::not-yet-tagged::g, suite::gnome
+gnome-sudo: interface::x11, suite::gnome, uitoolkit::gtk
+gnome-sudoku: suite::gnome
+gnome-swallow-applet: interface::x11, role::plugin, suite::gnome, uitoolkit::gtk, use::configuring, x11::applet
+gnome-system-monitor: interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::monitor, works-with::software:running, x11::application
+gnome-system-tools: admin::configuring, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::configuring, x11::application
+gnome-tasksel: admin::package-management, implemented-in::python, interface::x11, suite::gnome, uitoolkit::gtk, use::organizing, works-with::software:package, x11::application
+gnome-terminal: implemented-in::c, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::login, x11::terminal
+gnome-terminal-data: suite::gnome
+gnome-themes: interface::x11, made-of::data:icons, made-of::data:svg, role::app-data, suite::gnome, uitoolkit::gtk, x11::theme
+gnome-themes-extras: interface::x11, made-of::data:icons, made-of::data:svg, role::metapackage, special::meta, suite::gnome, uitoolkit::gtk, x11::theme
+gnome-think: interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::editing, use::organizing, works-with-format::xml, x11::application
+gnome-u2ps: interface::commandline, role::program, scope::utility, suite::gnome, use::converting, works-with-format::postscript, works-with::text, works-with::unicode
+gnome-user-guide: suite::gnome
+gnome-user-share: suite::gnome, uitoolkit::gtk
+gnome-utils: hardware::storage:floppy, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::searching, use::viewing, works-with::dictionary, works-with::logfile, x11::applet
+gnome-vfs-extfs: admin::filesystem, implemented-in::perl, interface::x11, protocol::ftp, protocol::http, role::plugin, special::auto-inst-parts, suite::gnome, uitoolkit::gtk, works-with::archive, works-with::software:package, x11::application
+gnome-vlc: interface::x11, role::dummy, special::obsolete, suite::gnome, uitoolkit::gtk, use::playing, works-with::video, x11::application
+gnome-volume-manager: admin::filesystem, hardware::camera, hardware::storage, hardware::storage:cd, interface::daemon, network::server, role::program, suite::gnome, uitoolkit::gtk, x11::application
+gnome-xine: role::dummy, suite::gnome, uitoolkit::gtk, use::viewing, works-with::video
+gnome2-user-guide: made-of::data:xml, role::documentation, suite::gnome
+gnomebaker: hardware::storage, hardware::storage:cd, hardware::storage:dvd, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::storing, works-with-format::iso9660, works-with::archive, x11::application
+gnomeicu: implemented-in::c, interface::x11, network::client, protocol::oscar, protocol::ssl, role::program, suite::gnome, uitoolkit::gtk, use::chatting
+gnomeicu-common: implemented-in::c, interface::x11, protocol::oscar, protocol::ssl, role::app-data, special::auto-inst-parts, suite::gnome, uitoolkit::gtk, use::chatting, x11::application
+gnomekiss: game::toys, interface::x11, role::program, suite::gnome, uitoolkit::gtk, use::gameplaying, use::viewing, works-with::image, works-with::image:raster, x11::application
+gnomemeeting: implemented-in::c++, interface::x11, protocol::ipv6, protocol::voip, role::program, scope::application, suite::gnome, uitoolkit::gtk, uitoolkit::sdl, use::playing, works-with::video, x11::application
+gnomermind: game::puzzle, interface::x11, role::program, suite::gnome, uitoolkit::gtk, use::gameplaying, x11::application
+gnomesword: interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::searching, use::text-formatting, use::viewing, works-with::text, x11::application
+gnometab: field::arts, implemented-in::c, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::editing, works-with::music-notation, x11::application
+gnomoradio: special::not-yet-tagged, special::not-yet-tagged::g, suite::gnome, uitoolkit::gtk, use::playing, x11::application
+gnomp3: interface::x11, role::program, scope::application, sound::player, suite::gnome, uitoolkit::gtk, use::playing, works-with-format::mp3, works-with::audio, x11::application
+gnopernicus: accessibility::screen-magnify, accessibility::screen-reader, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::viewing, x11::application
+gnotepad+: interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::editing, works-with::text, x11::application
+gnotepad+-help: interface::x11, role::documentation, suite::gnome, uitoolkit::gtk, use::editing, works-with::text, x11::application
+gnotime: implemented-in::c, interface::x11, office::project-management, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::organizing, use::timekeeping, works-with::pim, x11::application
+gnu-efi: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::g, suite::gnu
+gnu-smalltalk: devel::interpreter, role::documentation, suite::gnu, uitoolkit::tk
+gnu-smalltalk-doc: devel::interpreter, role::documentation, suite::gnu
+gnu-standards: devel::doc, role::documentation
+gnubg: game::board, implemented-in::c, interface::3d, interface::text-mode, interface::x11, junior::games-gl, role::program, suite::gnu, uitoolkit::gtk, uitoolkit::ncurses, use::gameplaying, x11::application
+gnubg-bearoffs: game::board, role::app-data, use::gameplaying
+gnubg-data: role::app-data, suite::gnu
+gnubiff: interface::x11, mail::notification, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::monitor, x11::applet
+gnubik: game::puzzle, interface::3d, junior::games-gl, role::program, suite::gnu, uitoolkit::gtk, use::gameplaying, x11::application
+gnuboy-sdl: hardware::emulation, uitoolkit::sdl
+gnuboy-svga: hardware::emulation
+gnuboy-x: hardware::emulation
+gnucap: field::electronics, interface::text-mode, role::program, scope::utility, suite::gnu, uitoolkit::ncurses, use::checking
+gnucash: field::finance, implemented-in::c, interface::x11, office::finance, role::program, scope::application, suite::gnome, suite::gnu, uitoolkit::gtk, works-with::pim, works-with::spreadsheet, x11::application
+gnucash-common: field::finance, interface::x11, role::app-data, special::auto-inst-parts, suite::gnome, suite::gnu, uitoolkit::gtk, works-with::pim, works-with::spreadsheet, x11::application
+gnucash-docs: field::finance, interface::x11, office::finance, role::documentation, suite::gnome, suite::gnu, uitoolkit::gtk, works-with::pim, x11::application
+gnuchess: game::board, game::board:chess, interface::text-mode, interface::x11, role::program, suite::gnu, uitoolkit::gtk, uitoolkit::ncurses, use::gameplaying, x11::application
+gnuchess-book: game::board, game::board:chess, role::app-data, suite::gnu, use::gameplaying, x11::application
+gnudip: implemented-in::perl, interface::daemon, network::server, protocol::dns, protocol::http, role::program, web::cgi
+gnudoku: uitoolkit::gtk
+gnudoq: suite::gnu
+gnue-appserver: network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::g, suite::gnu
+gnue-common: special::auto-inst-parts, special::not-yet-tagged, special::not-yet-tagged::g, suite::gnu
+gnue-designer: devel::ide, devel::lang:python, implemented-in::python, interface::x11, role::program, scope::application, uitoolkit::wxwidgets, x11::application
+gnue-navigator: devel::lang:python, implemented-in::python, interface::x11, role::program, scope::application, uitoolkit::wxwidgets, works-with-format::xml, x11::application
+gnue-reports: interface::x11, role::program, scope::application, works-with-format::html, works-with-format::plaintext, works-with-format::xml, works-with::text, x11::application
+gnugk: interface::x11, network::server, protocol::voip, role::program, suite::gnu, uitoolkit::sdl, x11::application
+gnugo: game::board, interface::text-mode, interface::x11, role::program, suite::gnu, uitoolkit::ncurses, use::gameplaying, x11::application
+gnuhtml2latex: implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with-format::tex, works-with::text
+gnuift: implemented-in::c++, interface::daemon, interface::web, network::server, role::program, suite::gnu, use::searching, web::scripting, works-with-format::xml, works-with::image, works-with::image:raster
+gnuift-doc: made-of::data:html, made-of::data:tex, role::documentation, suite::gnu, use::searching, works-with::image, works-with::image:raster
+gnuift-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, suite::gnu, use::searching, works-with::image, works-with::image:raster
+gnulib: devel::lang:c, devel::library, implemented-in::c, role::source, suite::gnu
+gnumach: special::not-yet-tagged, special::not-yet-tagged::g, suite::gnu
+gnumach-dbg: devel::library, special::not-yet-tagged, special::not-yet-tagged::g, suite::gnu
+gnumach-dev: admin::kernel, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::g, suite::gnu
+gnumail-doc: role::documentation, suite::gnu
+gnumail.app: implemented-in::objc, interface::x11, mail::user-agent, network::client, protocol::smtp, role::plugin, role::program, suite::gnustep, use::editing, works-with::mail, x11::application
+gnumed-doc: role::documentation
+gnumeric: implemented-in::c, interface::x11, office::spreadsheet, role::program, scope::application, suite::gnome, suite::gnu, uitoolkit::gtk, use::editing, works-with::spreadsheet, x11::application
+gnumeric-common: interface::x11, role::app-data, special::auto-inst-parts, suite::gnome, suite::gnu, uitoolkit::gtk, use::editing, works-with::spreadsheet
+gnumeric-doc: interface::x11, made-of::data:xml, role::documentation, suite::gnome, suite::gnu, uitoolkit::gtk, use::editing, works-with::spreadsheet
+gnumeric-plugins-extra: implemented-in::perl, implemented-in::python, interface::x11, office::spreadsheet, role::plugin, suite::gnome, suite::gnu, uitoolkit::gtk, use::editing, works-with::spreadsheet
+gnump3d: implemented-in::perl, interface::web, network::server, protocol::http, role::program, sound::player, suite::gnu, use::organizing, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+gnunet: interface::commandline, interface::daemon, network::client, network::server, network::service, role::program, role::shared-lib, security::authentication, suite::gnu, use::chatting, use::downloading
+gnunet-gtk: interface::commandline, interface::x11, network::client, role::program, scope::application, security::authentication, suite::gnu, uitoolkit::gtk, use::chatting, use::downloading, x11::application
+gnunit: uitoolkit::gtk
+gnunit2: uitoolkit::gtk
+gnupg: interface::commandline, role::program, scope::utility, security::cryptography, suite::gnu, works-with::file
+gnupg-agent: interface::commandline, network::client, role::program, security::cryptography, suite::gnu, works-with::pim
+gnupg-doc: made-of::data:html, made-of::data:postscript, role::documentation, security::cryptography
+gnupg2: interface::commandline, role::program, scope::utility, security::cryptography, suite::gnu, use::converting
+gnuplot: field::mathematics, implemented-in::c, interface::commandline, role::dummy, role::metapackage, suite::gnu, use::converting, works-with::image, works-with::image:vector
+gnuplot-doc: field::mathematics, role::documentation, suite::gnu, use::converting, works-with::image, works-with::image:vector
+gnuplot-mode: field::mathematics, implemented-in::lisp, role::plugin, suite::emacs, suite::gnu, use::editing, works-with::image, works-with::image:vector
+gnuplot-nox: field::mathematics, interface::commandline, role::program, scope::application, suite::gnu, use::converting, works-with::image, works-with::image:vector
+gnuplot-x11: implemented-in::c, interface::x11, role::program, scope::application, suite::gnu, use::converting, works-with::image, works-with::image:vector, x11::application
+gnupod-tools: hardware::embedded, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::gnu
+gnuradio: suite::gnu
+gnuradio-doc: field::electronics, role::documentation, suite::gnu
+gnuradio-examples: role::app-data, special::not-yet-tagged, special::not-yet-tagged::g, suite::gnu
+gnurobbo: game::puzzle, interface::x11, role::program, suite::gnu, uitoolkit::sdl, use::gameplaying, x11::application
+gnurobots: devel::lang:scheme, game::strategy, interface::text-mode, role::program, suite::gnu, uitoolkit::ncurses, use::gameplaying
+gnus: implemented-in::lisp, mail::imap, mail::pop, mail::user-agent, network::client, protocol::nntp, protocol::smtp, role::plugin, role::program, suite::emacs, suite::gnu, use::downloading, use::editing, works-with::mail
+gnus-bonus-el: implemented-in::lisp, mail::filters, network::client, protocol::nntp, protocol::smtp, role::plugin, role::program, suite::emacs, suite::gnu, use::downloading, use::editing, works-with::mail
+gnuserv: implemented-in::lisp, interface::commandline, network::server, role::plugin, role::program, suite::emacs, suite::gnu, use::editing
+gnushogi: game::board, interface::text-mode, role::program, suite::gnu, uitoolkit::ncurses, use::gameplaying
+gnusim8085: devel::debugger, devel::machinecode, field::electronics, hardware::emulation, interface::x11, uitoolkit::gtk, use::checking, use::viewing, x11::application
+gnusound: interface::x11, role::program, scope::application, suite::gnu, uitoolkit::gtk, use::converting, use::editing, works-with::audio, x11::application
+gnustep: devel::runtime, implemented-in::objc, interface::x11, role::metapackage, special::meta, suite::gnustep, x11::application
+gnustep-antlr: devel::lang:objc, implemented-in::objc, role::devel-lib, suite::gnustep
+gnustep-back: implemented-in::objc, interface::x11, role::app-data, suite::gnustep, x11::application
+gnustep-back-common: suite::gnustep
+gnustep-back-doc: role::documentation, suite::gnustep
+gnustep-back0.11: implemented-in::objc, suite::gnustep
+gnustep-base-common: devel::lang:objc, implemented-in::objc, role::shared-lib, suite::gnustep
+gnustep-base-doc: devel::doc, devel::lang:objc, made-of::data:html, made-of::data:pdf, role::documentation, suite::gnustep
+gnustep-base-examples: devel::examples, devel::lang:objc, implemented-in::objc, interface::commandline, role::source, suite::gnustep
+gnustep-base-runtime: implemented-in::objc, suite::gnustep
+gnustep-common: suite::gnustep
+gnustep-core: devel::runtime, implemented-in::objc, interface::x11, role::metapackage, special::meta, suite::gnustep, x11::application
+gnustep-core-devel: devel::buildtools, devel::lang:objc, implemented-in::objc, interface::x11, role::metapackage, special::meta, suite::gnustep, x11::application
+gnustep-core-doc: devel::doc, devel::lang:objc, role::dummy, role::metapackage, special::meta, suite::gnustep
+gnustep-devel: devel::buildtools, devel::lang:objc, implemented-in::objc, interface::x11, role::metapackage, special::meta, suite::gnustep, x11::application
+gnustep-dl2: implemented-in::objc, role::devel-lib, suite::gnustep, works-with::db
+gnustep-examples: devel::examples, implemented-in::objc, role::app-data, suite::gnustep
+gnustep-games: implemented-in::objc, interface::x11, role::dummy, special::meta, suite::gnustep, uitoolkit::gnustep, use::gameplaying, x11::application
+gnustep-gd: devel::lang:objc, devel::library, interface::x11, role::devel-lib, suite::gnustep, works-with::image, x11::library
+gnustep-gpbs: implemented-in::objc, suite::gnustep
+gnustep-gui-common: devel::library, implemented-in::objc, interface::x11, role::app-data, suite::gnustep, x11::library
+gnustep-gui-doc: devel::doc, devel::lang:objc, devel::library, interface::x11, made-of::data:html, made-of::data:pdf, role::documentation, suite::gnustep, x11::library
+gnustep-gui-runtime: implemented-in::objc, suite::gnustep
+gnustep-icons: made-of::data:icons, role::app-data, suite::gnustep, x11::theme
+gnustep-make: devel::buildtools, devel::lang:objc, implemented-in::objc, interface::commandline, role::program, scope::utility, suite::gnustep, works-with::software:source
+gnustep-make-doc: devel::doc, devel::lang:objc, made-of::data:html, made-of::data:pdf, made-of::data:postscript, role::documentation, suite::gnustep
+gnustep-make-ogo: devel::buildtools, devel::lang:objc, implemented-in::objc, interface::commandline, role::program, scope::utility, suite::gnustep, works-with::software:source
+gnustep-netclasses: devel::lang:objc, devel::library, implemented-in::objc, protocol::ssl, role::shared-lib, suite::gnustep
+gnustep-ppd: hardware::printer, implemented-in::objc, role::app-data, suite::gnustep, use::printing
+gnustep-tutorial-html: suite::gnustep
+gnustep-tutorial-pdf: made-of::data:pdf, suite::gnustep
+gnutls-bin: interface::commandline, network::client, network::server, protocol::ssl, role::program, security::cryptography, suite::gnu
+gnutls-doc: suite::gnu
+gnuvd: uitoolkit::gtk, works-with::dictionary
+gnuvd-gnome: suite::gnome, uitoolkit::gtk, works-with::dictionary
+gnuwash.app: implemented-in::objc, interface::x11, role::plugin, suite::gnustep, uitoolkit::gnustep, use::timekeeping, x11::application
+goats: interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, x11::applet
+gob: devel::code-generator, devel::lang:c, interface::commandline, role::program, scope::utility, uitoolkit::gtk
+gob2: devel::code-generator, devel::lang:c, interface::commandline, role::program, scope::utility, uitoolkit::gtk
+gobby: uitoolkit::gtk, use::editing
+gobjc: devel::compiler, devel::lang:objc, implemented-in::c, interface::commandline, role::metapackage, special::meta, suite::gnu, works-with::software:source
+gobjc++: suite::gnu
+gobjc++-4.1: suite::gnu
+gobjc-2.95: devel::compiler, devel::lang:objc, implemented-in::c, interface::commandline, role::program, scope::utility, suite::gnu, works-with::software:source
+gobjc-3.3: devel::compiler, devel::lang:objc, implemented-in::c, interface::commandline, works-with::software:source
+gobjc-3.4: devel::compiler, devel::lang:objc, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::software:source
+gobjc-4.1: devel::compiler, devel::lang:objc, implemented-in::c, interface::commandline, role::program, suite::gnu, works-with::software:source
+gobo: devel::buildtools, devel::library, interface::commandline, role::program, scope::utility, works-with::software:source
+gobo-doc: devel::buildtools, devel::doc, devel::examples, made-of::data:html, role::documentation
+gocr: accessibility::ocr, implemented-in::c, interface::commandline, role::program, scope::application, use::converting, works-with::image, works-with::image:raster, works-with::text
+gocr-doc: accessibility::ocr, made-of::data:html, role::documentation, use::converting, works-with::image, works-with::image:raster, works-with::text
+gocr-gtk: accessibility::ocr, interface::x11, role::program, scope::application, uitoolkit::gtk, use::converting, works-with::image, works-with::image:raster, works-with::text, x11::application
+gocr-tk: accessibility::ocr, interface::x11, role::program, scope::application, uitoolkit::tk, use::converting, works-with::image, works-with::image:raster, works-with::text, x11::application
+godbcconfig: interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::configuring, works-with::db, x11::application
+gok: accessibility::input, hardware::input, hardware::input:mouse, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, x11::application
+gok-doc: accessibility::input, hardware::input, hardware::input:mouse, interface::x11, made-of::data:html, role::documentation, suite::gnome, uitoolkit::gtk, x11::application
+goldedplus: special::not-yet-tagged, special::not-yet-tagged::g
+golem: interface::x11, x11::window-manager
+gom: interface::text-mode, role::program, scope::application, sound::mixer, uitoolkit::ncurses, works-with::audio
+gom-x: interface::x11, role::program, scope::application, sound::mixer, uitoolkit::ncurses, works-with::audio, x11::application
+gomoku.app: game::board, implemented-in::objc, interface::x11, role::plugin, suite::gnustep, uitoolkit::gnustep, use::gameplaying, x11::application
+gonzui: special::not-yet-tagged, special::not-yet-tagged::g
+goo: devel::compiler, devel::interpreter, devel::lang:lisp, implemented-in::c, implemented-in::lisp, interface::commandline, interface::text-mode, role::program, scope::utility, works-with::software:source
+goobox: hardware::storage, hardware::storage:cd, interface::x11, role::program, scope::application, sound::player, suite::gnome, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+googleearth-package: devel::packaging, scope::utility, use::downloading
+googlizer: interface::x11, protocol::http, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::searching, x11::applet
+gopchop: uitoolkit::gtk
+gopher: interface::text-mode, network::client, role::program, uitoolkit::ncurses
+gorm: devel::lang:objc, devel::ui-builder, implemented-in::objc, role::program, scope::application, suite::gnustep
+gorm.app: devel::ui-builder, implemented-in::objc, role::program, suite::gnustep, uitoolkit::gnustep
+gosa: implemented-in::php, interface::web, network::server, protocol::ldap, role::program, use::configuring, web::application, works-with::db
+gosa-help-de: culture::german
+gosa-help-fr: culture::french
+gosa-help-nl: culture::dutch
+gosa-schema: interface::web, protocol::ldap, role::app-data, use::configuring, web::application, works-with::db
+gossip: interface::x11, network::client, protocol::jabber, protocol::msn-messenger, role::program, suite::gnome, uitoolkit::gtk, use::chatting, x11::application
+gotmail: implemented-in::perl, interface::commandline, protocol::http, role::program, scope::utility, use::downloading, works-with::mail
+gozer: accessibility::screen-magnify, interface::commandline, role::program, scope::utility, use::converting, use::viewing, works-with::image, works-with::image:raster, works-with::text
+gpa: interface::x11, role::program, scope::application, security::cryptography, suite::gnu, uitoolkit::gtk, x11::application
+gpaint: interface::x11, role::program, scope::application, suite::gnome, suite::gnu, uitoolkit::gtk, use::editing, works-with::image, works-with::image:raster, x11::application
+gpar2: uitoolkit::gtk
+gpart: admin::boot, admin::recovery, hardware::storage, interface::commandline, role::program, scope::application, x11::terminal
+gparted: admin::filesystem, role::program, scope::utility, suite::gnome, uitoolkit::gtk
+gpass: suite::gnome, uitoolkit::gtk
+gpc: devel::compiler, devel::lang:pascal, implemented-in::c, interface::commandline, role::metapackage, special::meta, suite::gnu, works-with::software:source
+gpc-2.1-3.3: devel::compiler, devel::lang:pascal, implemented-in::c, interface::commandline, works-with::software:source
+gpc-2.1-3.3-doc: devel::compiler, devel::doc, devel::lang:pascal, role::documentation
+gpc-2.1-3.4: devel::compiler, devel::lang:pascal, interface::commandline, role::program, scope::utility, suite::gnu, works-with::software:source
+gpc-2.1-3.4-doc: devel::compiler, devel::doc, devel::lang:pascal, made-of::data:info, role::documentation, suite::gnu
+gpc-2.95: devel::compiler, devel::lang:pascal, interface::commandline, role::program, scope::utility, suite::gnu, works-with::software:source
+gpc-2.95-doc: devel::compiler, devel::doc, devel::lang:pascal, made-of::data:info, role::documentation, suite::gnu
+gpc-doc: devel::compiler, devel::doc, devel::lang:pascal, made-of::data:info, role::documentation, role::metapackage, special::meta, suite::gnu
+gpdf: interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::viewing, works-with-format::pdf, works-with::text, x11::application
+gpe-bluetooth: hardware::embedded, implemented-in::c, interface::x11, role::program, suite::TODO, uitoolkit::gtk
+gpe-calendar: hardware::embedded, implemented-in::c, interface::x11, role::program, scope::utility, suite::TODO, uitoolkit::gtk, use::organizing, works-with::pim
+gpe-clock: hardware::embedded, implemented-in::c, interface::x11, role::program, scope::utility, suite::TODO, uitoolkit::gtk, use::timekeeping, x11::applet
+gpe-contacts: hardware::embedded, implemented-in::c, interface::x11, role::program, scope::application, suite::TODO, uitoolkit::gtk, use::organizing, works-with::db, works-with::pim, x11::application
+gpe-edit: hardware::embedded, interface::x11, role::program, scope::application, suite::TODO, uitoolkit::gtk, use::editing, works-with::text, x11::application
+gpe-expenses: admin::accounting, field::finance, hardware::embedded, implemented-in::c, interface::x11, role::program, scope::utility, suite::TODO, uitoolkit::gtk, use::organizing, use::viewing, works-with::pim
+gpe-filemanager: admin::file-distribution, hardware::embedded, implemented-in::c, interface::x11, role::program, scope::application, suite::TODO, uitoolkit::gtk, use::organizing
+gpe-gallery: hardware::embedded, implemented-in::c, interface::x11, role::program, scope::application, suite::TODO, uitoolkit::gtk, works-with::image, works-with::image:raster, x11::application
+gpe-go: game::board, hardware::embedded, implemented-in::c, interface::x11, role::program, suite::TODO, uitoolkit::gtk, use::gameplaying
+gpe-icons: hardware::embedded, interface::x11, made-of::data:icons, role::app-data, suite::TODO, uitoolkit::gtk, x11::application
+gpe-julia: field::mathematics, game::toys, hardware::embedded, implemented-in::c, interface::x11, role::program, scope::application, suite::TODO, uitoolkit::gtk, use::viewing, works-with::image, x11::application
+gpe-lights: game::puzzle, hardware::embedded, implemented-in::c, interface::x11, role::program, suite::TODO, uitoolkit::gtk, use::gameplaying, x11::application
+gpe-mininet: hardware::embedded, implemented-in::c, interface::x11, role::program, suite::TODO, uitoolkit::gtk
+gpe-othello: game::board, implemented-in::c, interface::x11, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+gpe-question: hardware::embedded, implemented-in::c, interface::x11, role::program, scope::utility, suite::TODO, uitoolkit::gtk
+gpe-screenshot: hardware::embedded, implemented-in::c, interface::x11, role::program, suite::TODO, uitoolkit::gtk
+gpe-shield: hardware::embedded, implemented-in::c, interface::x11, network::firewall, role::program, scope::utility, security::firewall, suite::TODO, uitoolkit::gtk, use::configuring, x11::application
+gpe-soundbite: hardware::embedded, implemented-in::c, interface::x11, role::program, scope::utility, sound::player, sound::recorder, suite::TODO, uitoolkit::gtk, works-with::audio, works-with::file
+gpe-soundserver: hardware::embedded, implemented-in::c, interface::daemon, interface::x11, role::program, scope::utility, suite::TODO, uitoolkit::gtk, use::playing
+gpe-su: hardware::embedded, implemented-in::c, interface::x11, role::program, scope::utility, security::authentication, suite::TODO, uitoolkit::gtk, works-with::software:running
+gpe-taskmanager: hardware::embedded, interface::x11, role::program, scope::application, uitoolkit::gtk, use::monitor, works-with::software:running, x11::application
+gpe-todo: hardware::embedded, implemented-in::c, interface::x11, role::program, scope::application, suite::TODO, uitoolkit::gtk, use::organizing, works-with::pim, x11::application
+gpe-watch: hardware::embedded, implemented-in::c, interface::x11, role::program, scope::application, suite::TODO, uitoolkit::gtk, use::monitor
+gpe-what: hardware::embedded, implemented-in::c, interface::x11, role::program, suite::TODO, uitoolkit::gtk
+gperf: implemented-in::c++, interface::commandline, role::program, scope::utility, security::integrity, works-with::text
+gperf-ace: implemented-in::c++, interface::commandline, role::program, scope::utility, security::integrity, works-with::text
+gperiodic: field::chemistry, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::viewing, x11::application
+gpgkeys: interface::x11, network::client, role::program, security::cryptography, uitoolkit::qt, x11::application
+gpgp: interface::x11, network::client, role::program, security::cryptography, suite::gnome, uitoolkit::gtk, x11::application
+gpgsm: interface::commandline, role::program, scope::utility, security::cryptography, suite::gnu
+gpgv: interface::commandline, role::program, scope::utility, security::cryptography, suite::gnu, use::checking
+gphoto2: hardware::camera, hardware::usb, interface::shell, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, works-with::image, works-with::image:raster
+gphotocoll: devel::lang:sql, implemented-in::c, interface::x11, suite::gnome, uitoolkit::gtk, use::organizing, use::viewing, works-with::db, works-with::image, works-with::image:raster, x11::application
+gphotofs: admin::filesystem, hardware::camera, network::client
+gphpedit: devel::editor, devel::lang:php, interface::x11, protocol::ssl, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::editing, works-with-format::html, works-with::text, x11::application
+gpib-modules-source: admin::hardware, admin::kernel, role::source, use::driver
+gpiv: uitoolkit::gtk
+gplanarity: game::puzzle, implemented-in::c, interface::x11, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+gpm: hardware::input, hardware::input:mouse, implemented-in::c, interface::daemon, network::server, role::program, uitoolkit::ncurses
+gpp: devel::buildtools, devel::lang:c, devel::lang:c++, implemented-in::c, interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with-format::tex, works-with::software:source, works-with::text
+gpppkill: hardware::modem, interface::x11, uitoolkit::gtk, use::dialing, x11::application
+gpppon: hardware::modem, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::configuring, x11::applet
+gpr: hardware::printer, interface::commandline, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::printing, works-with-format::pdf, works-with-format::postscript, works-with::text
+gpredict: field::astronomy, hardware::hamradio, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::monitor, x11::application
+gproftpd: admin::configuring, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::configuring, works-with::software:running, x11::application
+gprolog: devel::compiler, devel::interpreter, devel::lang:prolog, interface::commandline, role::program, scope::utility, suite::gnu, works-with::software:source
+gprolog-doc: devel::compiler, devel::doc, devel::lang:prolog, made-of::data:html, made-of::data:pdf, role::documentation, suite::gnu
+gps: interface::x11, role::program, scope::application, uitoolkit::gtk, use::monitor, works-with::software:running, x11::application
+gpsbabel: field::geography, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::g, use::converting
+gpscorrelate-gui: uitoolkit::gtk
+gpsd: field::geography, interface::daemon, network::server, network::service, role::program
+gpsd-clients: field::geography, implemented-in::python, interface::x11, network::client, role::program, uitoolkit::motif, uitoolkit::ncurses, use::viewing, x11::application
+gpsdrive: field::geography, interface::x11, network::client, role::program, uitoolkit::gtk, use::viewing, x11::application
+gpsim: hardware::embedded, hardware::emulation, interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+gpsim-dev: devel::library, hardware::embedded, hardware::emulation, interface::x11, role::devel-lib, role::documentation, uitoolkit::gtk, x11::application
+gpsim-doc: hardware::emulation, interface::x11, made-of::data:pdf, made-of::data:postscript, made-of::data:tex, role::documentation, uitoolkit::gtk, x11::application
+gpsim-lcd: hardware::emulation, interface::x11, role::plugin, uitoolkit::gtk, x11::application
+gpsim-lcd-graphic: hardware::embedded, hardware::emulation, uitoolkit::gtk
+gpsim-led: hardware::emulation, uitoolkit::gtk
+gpsim-logic: hardware::emulation, interface::x11, role::plugin, uitoolkit::gtk, x11::application
+gpsk31: hardware::hamradio, hardware::modem, interface::x11, role::program, scope::application, uitoolkit::gtk, use::transmission, x11::application
+gpsman: field::geography, interface::x11, network::client, role::program, uitoolkit::tk, use::organizing, works-with::image, works-with::image:vector, x11::application
+gpsmanshp: devel::lang:tcl, devel::library, role::shared-lib, uitoolkit::tk, works-with::image, works-with::image:vector, x11::application
+gpstrans: field::geography, interface::commandline, network::client, role::program, use::downloading, works-with::image, works-with::image:vector
+gputils: devel::machinecode, field::electronics, hardware::embedded, interface::commandline, role::program, scope::utility, suite::gnu
+gpw: interface::commandline, role::program, scope::utility, security::cryptography, works-with::text
+gpx2shp: field::geography, interface::commandline, role::program, scope::utility, use::converting, works-with::image, works-with::image:vector
+gq: implemented-in::c, interface::x11, network::client, protocol::ldap, role::program, scope::application, uitoolkit::gtk, use::browsing, use::editing, x11::application
+gqcam: hardware::camera, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::downloading, works-with::image, works-with::image:raster, works-with::video, x11::application
+gql-shell: interface::text-mode, uitoolkit::ncurses
+gqmpeg: interface::commandline, interface::x11, role::program, scope::utility, sound::player, uitoolkit::gtk, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, x11::application
+gquilt: devel::buildtools, devel::rcs, implemented-in::python, interface::x11, role::program, scope::utility, uitoolkit::gtk, works-with::software:source
+gqview: interface::x11, role::program, scope::application, uitoolkit::gtk, use::browsing, use::viewing, works-with-format::jpg, works-with-format::png, works-with::image, works-with::image:raster, x11::application
+gr-audio-alsa: field::electronics, hardware::hamradio, special::not-yet-tagged, special::not-yet-tagged::g
+gr-audio-oss: hardware::hamradio, role::shared-lib, works-with::audio
+gr-usrp: field::electronics, hardware::hamradio, special::not-yet-tagged, special::not-yet-tagged::g
+grabc: interface::commandline, interface::x11, role::program, scope::utility, use::checking, works-with::image, x11::applet
+grace: field::mathematics, implemented-in::fortran, interface::x11, role::program, scope::application, uitoolkit::motif, use::editing, use::printing, works-with-format::postscript, works-with::image, works-with::image:vector, works-with::text, x11::application
+grace6: field::mathematics, implemented-in::fortran, interface::x11, role::program, scope::application, uitoolkit::motif, use::editing, use::printing, works-with-format::postscript, works-with::image, works-with::image:vector, works-with::text, x11::application
+gradio: admin::hardware, interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+gradm: admin::configuring, admin::kernel, admin::user-management, interface::commandline, role::program, scope::utility, use::configuring
+gradm2: admin::configuring, admin::kernel, admin::user-management, interface::commandline, role::program, scope::utility, use::configuring
+gramadoir: culture::irish, interface::commandline, use::checking, works-with::dictionary
+gramofile: hardware::storage, hardware::storage:cd, role::program, scope::application, uitoolkit::ncurses, use::converting, use::storing, works-with-format::iso9660, works-with-format::wav, works-with::archive, works-with::audio
+gramps: field::genealogy, implemented-in::python, interface::x11, suite::gnome, uitoolkit::gtk, works-with::people, x11::application
+grande: game::arcade, interface::x11, role::program, use::gameplaying, x11::application
+grandfatherclock: implemented-in::perl, interface::commandline, role::program, scope::utility, use::timekeeping, works-with::audio
+granule: uitoolkit::gtk
+grap: interface::commandline, role::program, scope::utility, use::typesetting, works-with-format::man, works-with-format::tex, works-with::image, works-with::image:vector, works-with::text
+graph-includes: special::not-yet-tagged, special::not-yet-tagged::g
+graphdefang: admin::monitoring, implemented-in::perl, interface::commandline, mail::filters, role::program, scope::application, security::log-analyzer, web::cgi, works-with-format::png, works-with::image, works-with::image:raster, works-with::logfile
+graphicsmagick: interface::commandline, interface::x11, role::program, scope::application, use::converting, works-with::image, works-with::image:raster, x11::application
+graphicsmagick-imagemagick-compat: works-with::image
+graphicsmagick-libmagick-dev-compat: works-with::image
+graphmonkey: field::mathematics, implemented-in::c-sharp, interface::x11, role::program, scope::application, uitoolkit::gtk, use::viewing, x11::application
+graphthing: implemented-in::c++, role::program, uitoolkit::wxwindows
+graphviz: field::mathematics, interface::commandline, interface::x11, role::program, role::shared-lib, scope::utility, uitoolkit::athena, uitoolkit::tk, use::viewing, works-with::image, works-with::image:raster, works-with::image:vector, x11::application
+graphviz-dev: field::mathematics, interface::commandline, interface::x11, role::devel-lib, uitoolkit::athena, uitoolkit::tk, use::viewing, works-with::image, works-with::image:raster, works-with::image:vector, x11::application
+graphviz-doc: field::mathematics, interface::commandline, interface::x11, made-of::data:pdf, made-of::data:postscript, role::documentation, uitoolkit::athena, uitoolkit::tk, use::viewing, works-with::image, works-with::image:raster, works-with::image:vector, x11::application
+grass: field::geography, interface::x11, role::program, scope::application, uitoolkit::motif, uitoolkit::ncurses, use::organizing, use::viewing, works-with::3dmodel, x11::application
+grass-doc: field::geography, interface::x11, made-of::data:html, role::documentation, uitoolkit::motif, use::organizing, use::viewing, works-with::3dmodel, x11::application
+graveman: hardware::storage, hardware::storage:cd, hardware::storage:dvd, implemented-in::c, interface::x11, role::program, uitoolkit::gtk, use::storing, works-with-format::iso9660, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::archive, works-with::audio, x11::application
+gravitywars: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+grc: implemented-in::python, interface::commandline, role::program, scope::utility, use::converting, works-with::logfile, works-with::text
+grcm: interface::x11, network::client, protocol::TODO, protocol::ssh, role::program, suite::gnome, uitoolkit::gtk, use::login, use::proxying, x11::application
+grdesktop: interface::x11, network::client, role::program, suite::gnome, uitoolkit::gtk, use::login, x11::application
+greed: game::arcade, interface::text-mode, role::program, uitoolkit::ncurses, use::gameplaying
+greenwich: interface::x11, network::client, protocol::dns, role::program, suite::gnome, uitoolkit::gtk, use::searching, x11::application
+grep: implemented-in::c, interface::commandline, role::program, scope::utility, suite::gnu, use::searching, works-with::text
+grep-dctrl: implemented-in::c, interface::commandline, role::dummy, special::obsolete, suite::debian, use::searching, works-with::software:package
+grepmail: implemented-in::perl, interface::commandline, role::program, scope::utility, use::searching, works-with::mail
+gresolver: implemented-in::perl, interface::x11, protocol::dns, role::program, suite::gnome, uitoolkit::gtk, x11::application
+gretl: field::statistics, implemented-in::c, interface::text-mode, interface::x11, role::program, scope::utility, suite::gnu, uitoolkit::gtk, x11::application
+gretl-common: field::finance, field::mathematics, implemented-in::shell, interface::x11, role::app-data, suite::gnu, uitoolkit::gtk, uitoolkit::ncurses, x11::application
+gretl-data: field::finance, field::mathematics, interface::x11, role::app-data, suite::gnu, uitoolkit::gtk, x11::application
+gretl-doc: field::finance, field::mathematics, interface::x11, made-of::data:html, made-of::data:xml, role::documentation, suite::gnu, uitoolkit::gtk, uitoolkit::ncurses, x11::application
+greylistd: interface::daemon, mail::filters, mail::smtp, protocol::smtp, role::program, scope::utility, works-with::mail
+gri: devel::interpreter, interface::commandline, role::program, scope::utility, works-with-format::postscript, works-with::text
+gri-el: devel::interpreter, implemented-in::lisp, interface::commandline, role::plugin, suite::emacs, use::editing, works-with-format::postscript, works-with::text
+gri-html-doc: devel::interpreter, made-of::data:html, role::documentation, works-with-format::postscript, works-with::text
+gri-ps-doc: devel::interpreter, interface::commandline, made-of::data:postscript, role::documentation, works-with-format::postscript, works-with::text
+gridlock.app: devel::lang:c, devel::lang:c++, implemented-in::c, implemented-in::c++, interface::x11, made-of::data:tex, role::plugin, suite::gnustep, uitoolkit::gnustep, use::gameplaying, x11::application
+griffith: implemented-in::python, interface::commandline, interface::x11, role::program, scope::application, uitoolkit::gtk, use::organizing, works-with::db, x11::application
+grig: hardware::hamradio, interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+gringotts: interface::x11, role::program, scope::application, security::cryptography, uitoolkit::gtk, use::storing, x11::application
+grip: hardware::storage, hardware::storage:cd, interface::x11, protocol::ssl, role::program, scope::application, suite::gnome, uitoolkit::gtk, uitoolkit::ncurses, use::converting, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, x11::application
+grisbi: field::finance, interface::x11, office::finance, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::organizing, works-with-format::html, works-with-format::tex, works-with::pim, works-with::text, x11::application
+grmonitor: interface::3d, role::program, scope::utility, use::viewing, works-with::software:running, x11::application
+groach: game::toys, interface::x11, suite::gnome, uitoolkit::gtk, x11::application
+groff: interface::commandline, interface::text-mode, interface::x11, role::program, scope::utility, suite::gnu, uitoolkit::athena, use::converting, use::printing, use::viewing, works-with-format::html, works-with-format::man, works-with-format::postscript, works-with-format::tex, works-with::font, works-with::text, works-with::unicode, x11::application
+groff-base: interface::commandline, interface::text-mode, role::program, scope::utility, suite::gnu, use::converting, works-with-format::man, works-with-format::postscript, works-with::text, works-with::unicode
+grokking-the-gimp: role::data, role::documentation, works-with::image, works-with::image:raster
+gromacs: field::biology, field::chemistry, implemented-in::c, interface::commandline, interface::x11, role::program, uitoolkit::xlib, use::special:not-applicable, x11::application
+gromacs-dev: devel::library, field::biology, field::chemistry, implemented-in::c, role::devel-lib
+gromacs-doc: field::biology, field::chemistry, made-of::data:html, made-of::data:man, made-of::data:pdf, role::app-data, role::documentation
+gromacs-lam: devel::library, field::biology, field::chemistry, implemented-in::c, interface::commandline, role::devel-lib, role::program, scope::utility, works-with::software:package
+gromacs-mpich: devel::library, field::biology, field::chemistry, implemented-in::c, interface::commandline, role::devel-lib, role::program, scope::utility, works-with::software:package
+gromit: interface::x11, role::program, scope::utility, uitoolkit::gtk, use::editing, x11::application
+groovy: special::not-yet-tagged, special::not-yet-tagged::g
+groovy-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::g
+grouch.app: network::client, uitoolkit::gnustep
+groundhog: game::puzzle, interface::x11, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+grpn: field::mathematics, interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+grsync: uitoolkit::gtk
+grub: admin::boot, interface::shell, interface::text-mode, role::program, scope::application, uitoolkit::ncurses
+grub-disk: admin::boot, hardware::storage:floppy, role::app-data
+grub-doc: admin::boot, interface::shell, interface::text-mode, made-of::data:html, made-of::data:info, role::documentation
+grub-splashimages: admin::boot, interface::shell, interface::text-mode, made-of::data:icons, role::app-data, x11::theme
+grub2: special::not-yet-tagged, special::not-yet-tagged::g, uitoolkit::ncurses
+grubconf: interface::x11, uitoolkit::gtk
+gruftistats: interface::commandline, protocol::irc, role::program, scope::utility, use::converting, works-with-format::html, works-with::logfile, works-with::text
+grun: interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+grunch: works-with::image:raster
+grunt: implemented-in::python, interface::commandline, role::program, scope::utility, security::authentication, works-with::mail
+grunt-uucp: interface::commandline, role::program, scope::utility, security::authentication
+gs: devel::interpreter, interface::commandline, interface::x11, role::dummy, special::obsolete, use::printing, use::viewing, works-with-format::postscript, works-with::font, works-with::text, x11::application
+gs-afpl: devel::interpreter, interface::commandline, interface::x11, role::program, special::not-yet-tagged, special::not-yet-tagged::g, use::printing, works-with-format::postscript, works-with::font, works-with::text, x11::application
+gs-aladdin: role::dummy, use::printing
+gs-cjk-resource: use::printing, use::text-formatting, use::viewing, works-with::text
+gs-common: devel::interpreter, interface::commandline, interface::x11, role::app-data, special::auto-inst-parts, use::printing, use::viewing, works-with-format::postscript, works-with::text, x11::application
+gs-esp: devel::interpreter, interface::commandline, interface::x11, role::program, use::printing, use::viewing, works-with-format::postscript, works-with::font, works-with::text, x11::application
+gs-gpl: devel::interpreter, interface::commandline, interface::x11, role::program, use::printing, use::viewing, works-with-format::postscript, works-with::font, works-with::text, x11::application
+gsambad: uitoolkit::gtk
+gsasl: interface::commandline, mail::imap, mail::smtp, protocol::imap, protocol::smtp, role::program, scope::utility, security::authentication, suite::gnu
+gscanbus: hardware::camera, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::checking, x11::application
+gsetroot: uitoolkit::gtk
+gsfonts: made-of::data:font, role::app-data, use::printing, works-with-format::postscript, works-with::text
+gsfonts-other: made-of::data:font, role::app-data, use::printing, works-with-format::postscript, works-with::text
+gsfonts-wadalab-common: culture::japanese, made-of::data:font, role::app-data, special::auto-inst-parts, use::printing, works-with-format::postscript, works-with::text
+gsfonts-wadalab-gothic: culture::japanese, made-of::data:font, role::app-data, use::printing, works-with-format::postscript, works-with::text
+gsfonts-wadalab-mincho: culture::japanese, made-of::data:font, role::app-data, use::printing, works-with-format::postscript, works-with::text
+gsfonts-x11: interface::special:not-applicable, made-of::data:font, role::app-data, works-with-format::postscript, works-with::font, works-with::text, x11::font
+gshare: implemented-in::c-sharp, uitoolkit::gtk
+gsl-bin: devel::lang:c, field::mathematics, implemented-in::c, interface::commandline, role::program, scope::utility, suite::gnu
+gsl-doc-pdf: devel::doc, devel::lang:c, field::mathematics, made-of::data:pdf, role::documentation, suite::gnu
+gsl-ref-html: devel::doc, devel::lang:c, field::mathematics, made-of::data:html, role::documentation, suite::gnu
+gsl-ref-psdoc: devel::doc, devel::lang:c, field::mathematics, made-of::data:postscript, role::documentation, suite::gnu
+gsm-utils: hardware::TODO, hardware::modem, interface::commandline, role::program, scope::utility, use::synchronizing, works-with::pim
+gsmartcard: culture::greek, suite::gnome, uitoolkit::gtk
+gsn-curses: game::rpg, use::gameplaying
+gsn-jigsaw: game::rpg, use::gameplaying
+gsnes9x: hardware::emulation, suite::gnome, uitoolkit::gtk
+gsoap: devel::compiler, devel::lang:c, devel::lang:c++, protocol::soap, role::shared-lib, use::converting
+gspca-source: hardware::camera, role::source
+gspot: suite::gnome, uitoolkit::gtk
+gss-doc: devel::doc, made-of::data:html, made-of::data:info, made-of::data:man, made-of::data:pdf, protocol::kerberos, role::documentation, security::authentication, security::cryptography, suite::gnu
+gstm: protocol::ssh, protocol::ssl, uitoolkit::gtk
+gstreamer-editor: devel::editor, interface::x11, protocol::ssl, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::editing, works-with::audio, x11::application
+gstreamer-tools: implemented-in::c, interface::commandline, role::program, scope::utility, use::playing, works-with::audio, works-with::video
+gstreamer0.10-alsa: works-with::audio
+gstreamer0.10-doc: role::documentation
+gstreamer0.10-gnomevfs: implemented-in::c, network::client, protocol::ftp, protocol::http, protocol::sftp, protocol::smb, protocol::ssl, protocol::webdav, role::plugin, sound::player, suite::gnome, use::playing, works-with::audio, works-with::video
+gstreamer0.10-plugins-base: interface::x11, role::plugin, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+gstreamer0.10-plugins-base-apps: role::plugin, works-with::audio, works-with::video
+gstreamer0.10-plugins-base-dbg: devel::library
+gstreamer0.10-plugins-base-doc: role::documentation
+gstreamer0.10-plugins-good: uitoolkit::gtk
+gstreamer0.10-plugins-good-dbg: devel::library
+gstreamer0.10-plugins-good-doc: role::documentation
+gstreamer0.10-plugins-ugly: role::plugin, works-with::audio, works-with::video
+gstreamer0.10-plugins-ugly-dbg: devel::library
+gstreamer0.10-plugins-ugly-doc: role::documentation
+gstreamer0.10-tools: interface::commandline, role::program, works-with::audio, works-with::video
+gstreamer0.10-x: hardware::video, role::plugin, use::playing, works-with::font, works-with::video
+gstreamer0.8-a52dec: devel::library, hardware::storage, hardware::storage:dvd, interface::x11, role::plugin, sound::player, uitoolkit::gtk, use::playing, works-with::audio, works-with::video, x11::application
+gstreamer0.8-aa: devel::library, interface::x11, role::plugin, uitoolkit::gtk, use::playing, works-with-format::plaintext, works-with::text, works-with::video, x11::application
+gstreamer0.8-alsa: devel::library, interface::x11, role::plugin, sound::player, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+gstreamer0.8-artsd: devel::library, interface::x11, role::plugin, sound::player, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+gstreamer0.8-audiofile: devel::library, interface::x11, role::plugin, sound::player, uitoolkit::gtk, use::playing, works-with-format::wav, works-with::audio, x11::application
+gstreamer0.8-caca: devel::library, interface::x11, role::plugin, uitoolkit::gtk, use::playing, works-with-format::plaintext, works-with::text, works-with::video, x11::application
+gstreamer0.8-cdparanoia: devel::library, hardware::storage, hardware::storage:cd, interface::x11, role::plugin, sound::player, uitoolkit::gtk, use::playing, works-with-format::iso9660, works-with::archive, works-with::audio, x11::application
+gstreamer0.8-doc: devel::doc, devel::library, interface::x11, made-of::data:html, made-of::data:pdf, made-of::data:postscript, role::documentation, sound::player, uitoolkit::gtk, use::playing, works-with::audio
+gstreamer0.8-dv: devel::library, interface::x11, role::plugin, uitoolkit::gtk, use::playing, works-with::video, x11::application
+gstreamer0.8-dvd: devel::library, hardware::storage, hardware::storage:dvd, interface::x11, role::plugin, sound::player, uitoolkit::gtk, use::playing, works-with::audio, works-with::video, x11::application
+gstreamer0.8-esd: devel::library, interface::x11, role::plugin, sound::player, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+gstreamer0.8-festival: accessibility::speech, devel::library, interface::x11, role::plugin, sound::player, uitoolkit::gtk, use::playing, works-with::audio
+gstreamer0.8-flac: devel::library, interface::x11, role::plugin, sound::compression, sound::player, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+gstreamer0.8-gnomevfs: devel::library, interface::x11, role::plugin, sound::player, suite::gnome, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+gstreamer0.8-gsm: devel::library, interface::x11, role::plugin, sound::player, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+gstreamer0.8-gtk: uitoolkit::gtk
+gstreamer0.8-hermes: devel::library, interface::x11, role::plugin, uitoolkit::gtk, use::converting, works-with::video
+gstreamer0.8-jpeg: devel::library, interface::x11, role::plugin, uitoolkit::gtk, use::playing, use::viewing, works-with-format::jpg, works-with::image, works-with::image:raster, works-with::video, x11::application
+gstreamer0.8-mad: devel::library, interface::x11, role::plugin, sound::player, uitoolkit::gtk, use::playing, works-with::audio, works-with::video, x11::application
+gstreamer0.8-mikmod: devel::library, interface::x11, role::plugin, sound::midi, sound::player, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+gstreamer0.8-misc: interface::x11, role::plugin, sound::player, uitoolkit::gtk, use::playing, works-with::audio
+gstreamer0.8-mpeg2dec: devel::library, interface::x11, role::plugin, sound::player, uitoolkit::gtk, use::playing, works-with::audio, works-with::video, x11::application
+gstreamer0.8-musepack: works-with-format::mpc
+gstreamer0.8-oss: devel::library, interface::x11, role::plugin, sound::player, uitoolkit::gtk, use::playing, works-with::audio, works-with::video, x11::application
+gstreamer0.8-plugin-apps: devel::library, interface::x11, role::program, scope::utility, sound::player, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+gstreamer0.8-plugins: interface::x11, role::metapackage, sound::player, special::meta, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+gstreamer0.8-sdl: devel::library, interface::x11, role::plugin, uitoolkit::sdl, use::playing, works-with::video, x11::application
+gstreamer0.8-sid: devel::library, interface::x11, role::plugin, sound::player, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+gstreamer0.8-speex: devel::library, interface::x11, role::plugin, sound::compression, sound::player, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+gstreamer0.8-swfdec: devel::library, interface::x11, protocol::http, role::plugin, sound::player, uitoolkit::gtk, use::playing, works-with::audio, works-with::video
+gstreamer0.8-theora: devel::library, interface::x11, role::plugin, sound::player, uitoolkit::gtk, use::playing, works-with-format::oggtheora, works-with::video, x11::application
+gstreamer0.8-tools: devel::library, interface::commandline, interface::x11, role::plugin, role::program, scope::utility, sound::player, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+gstreamer0.8-vorbis: implemented-in::c, role::plugin, role::shared-lib, sound::compression, use::playing, works-with-format::oggvorbis, works-with::audio
+gstreamer0.8-x: interface::x11, role::plugin, sound::player, uitoolkit::gtk, use::playing, works-with::audio, x11::application, x11::library
+gsumi: interface::x11, role::program, scope::application, uitoolkit::gtk, use::editing, works-with::image, works-with::image:raster, x11::application
+gswitchit: interface::x11, uitoolkit::gtk
+gsynaptics: interface::x11, role::program, scope::utility, uitoolkit::gtk
+gtablix: uitoolkit::gtk
+gtalk: interface::daemon, interface::x11, network::client, network::server, role::program, suite::gnu, uitoolkit::gtk, uitoolkit::ncurses, use::chatting, x11::application
+gtamsanalyzer.app: implemented-in::objc, interface::x11, role::plugin, special::not-yet-tagged, special::not-yet-tagged::g, suite::gnustep, uitoolkit::gnustep, use::scanning, works-with::text, x11::application
+gtans: game::puzzle, implemented-in::c, interface::x11, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+gtetrinet: game::tetris, interface::x11, role::program, suite::gnome, uitoolkit::gtk, use::gameplaying, x11::application
+gthumb: interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::browsing, use::viewing, works-with::image, works-with::image:raster, x11::application
+gtick: field::arts, interface::x11, uitoolkit::gtk, use::timekeeping, works-with::audio, x11::application
+gtimer: implemented-in::c, interface::x11, role::program, scope::application, uitoolkit::gtk, use::organizing, use::timekeeping, x11::application
+gtk-doc-tools: devel::docsystem, interface::commandline, role::program, scope::utility, uitoolkit::gtk, works-with-format::sgml, works-with::software:source, works-with::text
+gtk-engines-begtk: uitoolkit::gtk, x11::theme
+gtk-engines-eazel: uitoolkit::gtk, x11::theme
+gtk-engines-geramik: role::app-data, uitoolkit::gtk, x11::theme
+gtk-engines-geramik-data: role::app-data, special::auto-inst-parts, uitoolkit::gtk, x11::theme
+gtk-engines-icegradient: role::app-data, uitoolkit::gtk, x11::theme
+gtk-engines-industrial: role::app-data, uitoolkit::gtk, x11::theme
+gtk-engines-lighthouseblue: role::app-data, uitoolkit::gtk, x11::theme
+gtk-engines-mac2: uitoolkit::gtk
+gtk-engines-metal: role::app-data, uitoolkit::gtk, x11::theme
+gtk-engines-mist: role::app-data, uitoolkit::gtk, x11::theme
+gtk-engines-notif: role::app-data, uitoolkit::gtk, x11::theme
+gtk-engines-pixmap: role::app-data, uitoolkit::gtk, x11::theme
+gtk-engines-qtpixmap: role::app-data, uitoolkit::gtk, x11::theme
+gtk-engines-raleigh: role::app-data, uitoolkit::gtk, x11::theme
+gtk-engines-redmond95: role::app-data, uitoolkit::gtk, x11::theme
+gtk-engines-smooth: role::app-data, uitoolkit::gtk, x11::theme
+gtk-engines-thingeramik: role::app-data, uitoolkit::gtk, x11::theme
+gtk-engines-thingeramik-data: role::app-data, special::auto-inst-parts, uitoolkit::gtk, x11::theme
+gtk-engines-thinice: role::app-data, uitoolkit::gtk, x11::theme
+gtk-engines-xenophilia: role::app-data, uitoolkit::gtk, x11::theme
+gtk-gnutella: interface::commandline, interface::x11, network::client, role::program, scope::application, uitoolkit::gtk, use::downloading, works-with::file, x11::application
+gtk-im-libthai: uitoolkit::gtk
+gtk-imonc: hardware::embedded, interface::x11, uitoolkit::gtk, use::monitor, use::routing, x11::application
+gtk-led-askpass: interface::x11, protocol::ssh, role::program, scope::utility, security::authentication, uitoolkit::gtk, use::login, x11::application
+gtk-qt-engine: uitoolkit::gtk, uitoolkit::qt
+gtk-sharp: implemented-in::c-sharp, uitoolkit::gtk
+gtk-sharp-examples: devel::examples, implemented-in::c-sharp, uitoolkit::gtk
+gtk-sharp-gapi: implemented-in::c-sharp, special::not-yet-tagged, special::not-yet-tagged::g
+gtk-sharp2: implemented-in::c-sharp, uitoolkit::gtk
+gtk-sharp2-examples: implemented-in::c-sharp, uitoolkit::gtk
+gtk-sharp2-gapi: implemented-in::c-sharp
+gtk-shell: interface::x11, uitoolkit::gtk, x11::application
+gtk-smooth-themes: made-of::data:icons, role::app-data, uitoolkit::gtk, x11::theme
+gtk-theme-switch: interface::x11, role::program, uitoolkit::gtk, use::configuring, use::downloading, use::viewing, works-with-format::tar, works-with::archive, works-with::image, x11::application, x11::theme
+gtk2-engines: uitoolkit::gtk
+gtk2-engines-cleanice: made-of::data:svg, role::app-data, uitoolkit::gtk, x11::theme
+gtk2-engines-clearlooks: made-of::data:svg, role::app-data, x11::theme
+gtk2-engines-crux: made-of::data:svg, role::app-data, x11::theme
+gtk2-engines-geramik: made-of::data:svg, role::app-data, uitoolkit::gtk, x11::theme
+gtk2-engines-gtk-qt: made-of::data:svg, role::app-data, suite::kde, uitoolkit::gtk, uitoolkit::qt, x11::theme
+gtk2-engines-highcontrast: made-of::data:svg, role::app-data, x11::theme
+gtk2-engines-industrial: made-of::data:svg, role::app-data, uitoolkit::gtk, x11::theme
+gtk2-engines-lighthouseblue: made-of::data:svg, role::app-data, x11::theme
+gtk2-engines-magicchicken: made-of::data:svg, role::app-data, uitoolkit::gtk, x11::theme
+gtk2-engines-metal: made-of::data:svg, role::app-data, x11::theme
+gtk2-engines-mist: made-of::data:svg, role::app-data, x11::theme
+gtk2-engines-pixbuf: made-of::data:svg, role::app-data, uitoolkit::gtk, x11::theme
+gtk2-engines-qtpixmap: made-of::data:svg, role::app-data, uitoolkit::gtk, x11::theme
+gtk2-engines-redmond95: made-of::data:svg, role::app-data, x11::theme
+gtk2-engines-smooth: made-of::data:svg, role::app-data, x11::theme
+gtk2-engines-spherecrystal: made-of::data:svg, role::app-data, uitoolkit::gtk, x11::theme
+gtk2-engines-thingeramik: made-of::data:svg, role::app-data, uitoolkit::gtk, x11::theme
+gtk2-engines-thinice: made-of::data:svg, role::app-data, x11::theme
+gtk2-engines-wonderland: made-of::data:svg, role::app-data, uitoolkit::gtk, x11::theme
+gtk2-engines-xfce: made-of::data:svg, role::app-data, suite::xfce, uitoolkit::gtk, x11::theme
+gtk2.0-examples: devel::examples, devel::ui-builder, role::app-data, uitoolkit::gtk, x11::library
+gtkam: hardware::camera, interface::x11, role::program, scope::application, uitoolkit::gtk, use::viewing, works-with-format::jpg, works-with::image, works-with::image:raster, x11::application
+gtkam-gimp: hardware::camera, interface::x11, role::plugin, uitoolkit::gtk, use::viewing, works-with-format::jpg, works-with::image, works-with::image:raster, x11::application
+gtkatlantic: game::board, interface::x11, network::client, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+gtkballs: game::puzzle, interface::x11, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+gtkboard: game::board, interface::x11, role::program, uitoolkit::gtk, uitoolkit::sdl, use::gameplaying, x11::application
+gtkcookie: interface::x11, protocol::http, role::program, scope::application, uitoolkit::gtk, use::editing, web::browser, x11::application
+gtkdialog: uitoolkit::gtk
+gtkdiskfree: admin::filesystem, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::monitor, x11::application
+gtkeyboard: accessibility::input, hardware::input, hardware::input:mouse, interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+gtkfontsel: interface::x11, role::program, scope::utility, uitoolkit::gtk, use::browsing, use::viewing, works-with::font, x11::application
+gtkglarea5: devel::lang:c, devel::library, interface::x11, role::shared-lib, special::auto-inst-parts, uitoolkit::gtk, x11::library
+gtkglarea5-dev: devel::lang:c, devel::library, interface::x11, role::devel-lib, uitoolkit::gtk, x11::library
+gtkgo: game::board, interface::x11, role::program, suite::gnome, uitoolkit::gtk, use::gameplaying, x11::application
+gtkgrepmail: implemented-in::perl, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::searching, works-with::mail, x11::application
+gtkguitune: admin::hardware, field::arts, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::configuring, works-with::audio, x11::application
+gtkhtml: devel::library, interface::x11, role::plugin, suite::gnome, uitoolkit::gtk, use::viewing, works-with-format::html, works-with::text, x11::application
+gtkhtml3.0: devel::library, interface::x11, suite::gnome, uitoolkit::gtk, works-with-format::html, works-with::text
+gtkhtml3.2: interface::x11, uitoolkit::gtk
+gtkhtml3.6: special::not-yet-tagged, special::not-yet-tagged::g, uitoolkit::gtk
+gtkhtml3.8: uitoolkit::gtk
+gtkhx: interface::x11, network::client, network::server, network::service, role::program, uitoolkit::gtk, use::chatting, use::downloading, x11::application
+gtklookat: interface::x11, role::program, scope::utility, uitoolkit::gtk, use::viewing, works-with-format::vrml, works-with::3dmodel, x11::application
+gtklp: interface::commandline, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::configuring, use::printing, x11::application
+gtkmorph: interface::x11, role::program, scope::application, uitoolkit::gtk, use::editing, works-with::image, works-with::image:raster, x11::application
+gtkmorph-example: devel::examples, interface::x11, role::app-data, uitoolkit::gtk, use::editing, works-with::image, works-with::image:raster, x11::application
+gtkodbcconfig0: role::shared-lib, suite::gnome, uitoolkit::gtk, use::configuring, works-with::db
+gtkorphan: admin::package-management, implemented-in::perl, interface::x11, role::program, scope::utility, suite::debian, uitoolkit::gtk, use::checking, use::organizing, works-with::software:package
+gtkpbbuttons: hardware::laptop, implemented-in::c, interface::x11, role::program, uitoolkit::gtk
+gtkpbbuttons-common: role::app-data, special::auto-inst-parts
+gtkpbbuttons-gnome: hardware::laptop, implemented-in::c, interface::x11, role::program, suite::gnome, uitoolkit::gtk
+gtkpod: admin::file-distribution, admin::hardware, implemented-in::c, interface::x11, network::client, role::program, scope::application, sound::player, uitoolkit::gtk, use::playing, use::synchronizing, works-with-format::mp3, works-with::audio, x11::application
+gtkpool: game::simulation, interface::x11, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+gtkrecover: interface::x11, uitoolkit::gtk
+gtksee: interface::x11, role::program, scope::application, uitoolkit::gtk, use::browsing, use::viewing, works-with::image, works-with::image:raster, x11::application
+gtktalog: hardware::storage, hardware::storage:cd, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::browsing, use::organizing, x11::application
+gtkterm: hardware::modem, interface::x11, network::client, role::program, uitoolkit::gtk, uitoolkit::ncurses, use::configuring, use::transmission, x11::application
+gtktrain: uitoolkit::gtk
+gtkwave: field::electronics, hardware::emulation, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::viewing, x11::application
+gtm: filetransfer::http, interface::x11, network::client, protocol::http, role::program, suite::gnome, uitoolkit::gtk, use::downloading, x11::application
+gtml: implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with::text
+gtoaster: hardware::storage, hardware::storage:cd, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, works-with-format::iso9660, works-with::archive, x11::application
+gtodo: implemented-in::c, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::organizing, works-with::pim, x11::application
+gtodo-applet: interface::x11, role::plugin, suite::gnome, uitoolkit::gtk, use::organizing, works-with::pim, x11::applet
+gtranslator: devel::i18n, implemented-in::c, interface::x11, role::program, suite::gnome, uitoolkit::gtk, use::converting, works-with::dictionary, x11::application
+gtweakui: interface::x11, suite::gnome, uitoolkit::gtk, use::configuring, x11::application
+gtypist: game::typing, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::gameplaying
+guarddog: interface::x11, network::firewall, role::program, scope::application, security::firewall, suite::kde, uitoolkit::qt, use::configuring, x11::application
+gucharmap: interface::x11, role::program, scope::utility, uitoolkit::gtk, use::browsing, works-with::font, works-with::text, works-with::unicode, x11::application
+guessnet: hardware::laptop, implemented-in::c++, interface::commandline, network::scanner, role::program, scope::utility, use::scanning
+gui-apt-key: uitoolkit::gtk
+guidedog: interface::x11, network::configuration, suite::kde, uitoolkit::qt, use::configuring, x11::application
+guikachu: devel::ui-builder, hardware::embedded, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::editing, works-with-format::xml, x11::application
+guikachu2rcp: devel::ui-builder, hardware::embedded, interface::commandline, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::converting, works-with-format::xml
+guile-1.6: devel::interpreter, devel::lang:scheme, interface::commandline, role::program, scope::utility, suite::gnu, works-with::software:source
+guile-1.6-dev: devel::lang:scheme, devel::library, role::devel-lib, uitoolkit::ncurses
+guile-1.6-doc: devel::doc, devel::lang:scheme, made-of::data:info, role::documentation
+guile-1.6-libs: devel::lang:scheme, devel::library, implemented-in::scheme, interface::text-mode, role::app-data, role::shared-lib, uitoolkit::ncurses
+guile-1.6-slib: devel::lang:scheme, devel::library, implemented-in::scheme, role::app-data
+guile-1.8: suite::gnu
+guile-1.8-dev: devel::library, role::devel-lib, uitoolkit::ncurses
+guile-1.8-libs: uitoolkit::ncurses
+guile-common: devel::interpreter, devel::lang:scheme, implemented-in::scheme, special::auto-inst-parts
+guile-db: devel::debugger, devel::lang:scheme, implemented-in::scheme, role::app-data
+guile-g-wrap: devel::code-generator, devel::lang:c, devel::lang:scheme, implemented-in::scheme, role::devel-lib
+guile-gnome0-canvas: devel::lang:scheme, devel::library, implemented-in::scheme, interface::x11, role::app-data, suite::gnome, uitoolkit::gtk
+guile-gnome0-dev: devel::lang:scheme, devel::library, interface::x11, role::devel-lib, suite::gnome
+guile-gnome0-gconf: devel::lang:scheme, devel::library, implemented-in::scheme, role::app-data, suite::gnome, uitoolkit::gtk
+guile-gnome0-glib: devel::lang:scheme, devel::library, implemented-in::scheme, role::app-data, suite::gnome, x11::library
+guile-gnome0-gnome: devel::lang:scheme, devel::library, implemented-in::scheme, suite::gnome, uitoolkit::gtk
+guile-gnome0-gnome-ui: devel::lang:scheme, devel::library, implemented-in::scheme, interface::x11, role::app-data, suite::gnome, uitoolkit::gtk
+guile-gnome0-gtk: devel::lang:scheme, devel::library, implemented-in::scheme, interface::x11, role::app-data, suite::gnome, uitoolkit::gtk
+guile-gnome0-vfs: devel::lang:scheme, devel::library, implemented-in::scheme, role::app-data, suite::gnome, uitoolkit::gtk
+guile-library: devel::lang:scheme, devel::library, devel::testing-qa, implemented-in::scheme, role::app-data
+guile-pg: devel::lang:scheme, devel::lang:sql, devel::library, implemented-in::scheme, role::app-data, works-with::db
+guile-simplesql: devel::lang:scheme, devel::lang:sql, devel::library, implemented-in::scheme, role::app-data, suite::gnu, works-with::db
+guile-www: devel::lang:scheme, devel::library, implemented-in::scheme, protocol::http, role::app-data, suite::gnu
+guile1.4: devel::interpreter, devel::lang:scheme, interface::commandline, works-with::software:source
+guile1.4-doc: devel::doc, devel::interpreter, devel::lang:scheme, made-of::data:info, role::documentation
+guile1.4-slib: devel::interpreter, devel::lang:scheme, implemented-in::scheme, role::app-data
+guitar: interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::viewing, works-with::archive, x11::application
+gumshoe: game::rpg, use::gameplaying
+gup: implemented-in::c, interface::commandline, mail::special:todo, protocol::nntp, role::program, use::configuring, works-with::mail
+gupsc: interface::x11, suite::gnome, uitoolkit::gtk
+gutenbrowser: special::not-yet-tagged, special::not-yet-tagged::g, uitoolkit::qt
+gutenprint-doc: hardware::printer, role::data
+gutenprint-locales: hardware::printer
+gv: implemented-in::c, interface::x11, role::program, scope::application, suite::gnu, uitoolkit::athena, use::viewing, works-with-format::pdf, works-with-format::postscript, works-with::text, x11::application
+gvidm: accessibility::screen-magnify, interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::applet
+gvlc: interface::x11, role::dummy, sound::player, special::obsolete, uitoolkit::gtk, use::playing, works-with::audio, works-with::video, x11::application
+gvr: devel::interpreter, game::puzzle, implemented-in::python, interface::x11, role::dummy, special::obsolete, use::gameplaying, use::learning, x11::application
+gvr-lessons: devel::interpreter, game::puzzle, implemented-in::python, interface::x11, role::app-data, use::gameplaying, use::learning, x11::application
+gwaterfall: uitoolkit::gtk
+gwave: field::electronics, interface::text-mode, interface::x11, role::program, scope::application, uitoolkit::gtk, uitoolkit::ncurses, use::viewing, x11::application
+gwc: interface::x11, uitoolkit::gtk, use::converting, works-with::audio, x11::application
+gweled: game::puzzle, interface::x11, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+gwenview: interface::x11, role::program, scope::application, suite::kde, uitoolkit::qt, use::browsing, use::viewing, works-with::image, works-with::image:raster, x11::application
+gwget: interface::x11, network::client, protocol::http, role::program, suite::gnome, uitoolkit::gtk, use::downloading, works-with::file, x11::applet
+gwhois: implemented-in::perl, interface::commandline, interface::daemon, network::client, network::server, protocol::dns, role::program, use::searching
+gworkspace-apps-wrappers: interface::x11, role::app-data, suite::gnustep, x11::application
+gworkspace.app: implemented-in::objc, interface::x11, role::plugin, suite::gnustep, uitoolkit::gnustep, use::browsing, x11::applet
+gworldclock: interface::x11, role::program, scope::application, uitoolkit::gtk, use::timekeeping, works-with::pim, x11::application
+gwp: game::special:todo, game::strategy, special::not-yet-tagged, special::not-yet-tagged::g, uitoolkit::gtk, use::gameplaying, works-with::mail
+gwremote.app: implemented-in::objc, interface::x11, network::client, network::service, role::plugin, role::program, suite::gnustep, use::browsing, works-with::file, x11::applet
+gwtp: field::genealogy, interface::web, network::client, protocol::http, role::program, use::downloading, use::synchronizing, web::cgi
+gwydion-dylan: devel::interpreter
+gwydion-dylan-dev: devel::interpreter
+gwydion-dylan-doc-html: role::documentation
+gwydion-dylan-sgml: special::not-yet-tagged, special::not-yet-tagged::g
+gxedit: interface::x11, uitoolkit::gtk, use::editing, x11::application
+gxine: hardware::storage, hardware::storage:dvd, role::program, sound::player, suite::gnome, uitoolkit::gtk, use::playing, use::viewing, works-with::video
+gxineplugin: suite::gnome
+gxmms: interface::x11, role::program, scope::utility, suite::gnome, suite::xmms, uitoolkit::gtk, use::configuring, x11::applet, x11::application
+gxmms-bmp: uitoolkit::gtk
+gxmms-xmms: uitoolkit::gtk
+gxmms2: implemented-in::c, role::program, suite::xmms2, uitoolkit::gtk
+gxproc: interface::x11, uitoolkit::gtk, x11::application
+gxset: interface::x11, role::program, scope::utility, uitoolkit::gtk, use::configuring, x11::application
+gyrus: suite::gnome, uitoolkit::gtk
+gzip: implemented-in::c, interface::commandline, role::program, scope::utility, suite::gnu, use::compressing, works-with::archive, works-with::file
+h5utils: interface::commandline, role::program, scope::utility, use::converting, use::viewing
+habak: x11::application
+haddock: devel::docsystem, devel::lang:haskell, implemented-in::haskell, interface::commandline, role::program, scope::utility, works-with-format::html, works-with::software:source, works-with::text
+hal: admin::hardware, hardware::detection, interface::daemon, network::server, role::program
+hal-device-manager: admin::hardware, hardware::detection, implemented-in::python, interface::x11, network::client, role::program, x11::application
+hal-doc: admin::hardware, hardware::detection, made-of::data:html, role::documentation
+halibut: interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with-format::info, works-with-format::man, works-with-format::pdf, works-with-format::postscript, works-with::text, works-with::unicode
+hamfax: hardware::hamradio, interface::x11, uitoolkit::qt, use::transmission, works-with::fax, x11::application
+hamlib++-dev: devel::lang:c++, devel::library, hardware::hamradio, role::devel-lib
+hamlib-dev: devel::lang:c, devel::library, hardware::hamradio, role::devel-lib
+hamlib-doc: devel::doc, devel::library, hardware::hamradio, made-of::data:html, role::documentation
+hamlib-utils: hardware::hamradio, interface::commandline, role::program, scope::utility, use::checking
+hamlib3: devel::lang:c, devel::library, hardware::hamradio, role::shared-lib
+hamlib3++: devel::lang:c++, devel::library, hardware::hamradio, role::shared-lib
+hamlib3-perl: devel::lang:perl, hardware::hamradio, implemented-in::perl, role::app-data
+hamlib3-tcl: devel::lang:tcl, hardware::hamradio, implemented-in::tcl, role::app-data
+hammerhead: devel::testing-qa, interface::commandline, protocol::http, protocol::ssl, role::program, scope::utility, use::checking
+hamsoft: hardware::hamradio, interface::x11, role::plugin, suite::mozilla, uitoolkit::gtk, x11::application
+hanterm-classic: culture::korean, interface::x11, role::program, scope::utility, uitoolkit::athena, uitoolkit::ncurses, x11::terminal
+hanterm-xf: culture::korean, interface::x11, role::program, scope::utility, uitoolkit::athena, uitoolkit::ncurses, x11::terminal
+hanzim: culture::chinese, culture::taiwanese, interface::x11, role::program, scope::utility, uitoolkit::tk, use::learning, works-with::dictionary, x11::application
+happy: devel::code-generator, devel::lang:haskell, implemented-in::haskell, interface::commandline, role::program, scope::utility
+happydigger: devel::lang:sql, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::h, uitoolkit::gtk, works-with::db, x11::application
+harbour: devel::compiler, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::h, works-with::software:source
+harden: role::metapackage, special::meta
+harden-clients: network::client, role::program, special::meta
+harden-development: devel::testing-qa, role::metapackage, special::meta
+harden-doc: culture::french, culture::german, culture::italian, culture::japanese, culture::russian, culture::spanish, role::data, role::documentation, use::learning
+harden-environment: role::metapackage, security::ids, special::meta
+harden-nids: role::metapackage, security::ids, special::meta
+harden-remoteaudit: network::scanner, role::metapackage, special::meta
+harden-servers: network::server, role::metapackage, role::program, special::meta
+harden-surveillance: role::metapackage, special::meta, use::monitor
+harden-tools: special::meta
+hardinfo: hardware::detection, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::scanning, x11::application
+hardware-monitor: admin::hardware, interface::x11, role::plugin, suite::gnome, uitoolkit::gtk, use::monitor, x11::applet
+hasciicam: hardware::video, interface::web, use::playing, works-with-format::html, works-with::text, works-with::video
+hashalot: interface::commandline, role::program, scope::utility, security::cryptography
+hashcash: implemented-in::c, mail::filters, role::program, scope::application, works-with::mail
+haskell-devscripts: devel::buildtools, devel::debian, devel::lang:haskell, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::h, suite::debian
+haskell-doc: devel::doc, devel::lang:haskell, role::documentation, role::metapackage, special::meta
+haskell-hsql-doc: role::documentation
+haskell-http-doc: role::documentation
+haskell-mode: devel::editor, devel::lang:haskell, implemented-in::lisp, role::plugin, suite::emacs, use::editing
+haskell-utils: devel::debian, devel::lang:haskell, implemented-in::haskell, interface::commandline, role::program, scope::utility, special::auto-inst-parts
+haskell98-report: devel::doc, devel::lang:haskell, made-of::data:html, made-of::data:pdf, made-of::data:postscript, role::data, role::documentation
+haskell98-tutorial: devel::doc, devel::lang:haskell, made-of::data:html, role::data, role::documentation
+haskelldb-bin: devel::lang:haskell, devel::lang:sql, devel::library, interface::commandline, role::program, scope::utility, works-with::db
+hat: devel::debugger, devel::lang:haskell, role::metapackage, special::meta, uitoolkit::ncurses, works-with::software:source
+hat-ghc5: devel::debugger, devel::lang:haskell, implemented-in::haskell, role::app-data, works-with::software:source
+hat-ghc6: devel::debugger, devel::lang:haskell, implemented-in::haskell, role::app-data, works-with::software:source
+hat-nhc98: devel::debugger, devel::lang:haskell, implemented-in::haskell, works-with::software:source
+hatari: hardware::emulation, interface::x11, role::program, uitoolkit::sdl
+haxe: implemented-in::ocaml
+hbf-cns40-1: culture::chinese, made-of::data:font, role::app-data, works-with-format::tex, works-with::text
+hbf-cns40-2: culture::chinese, made-of::data:font, role::app-data, works-with-format::tex, works-with::text
+hbf-cns40-3: culture::chinese, made-of::data:font, role::app-data, works-with-format::tex, works-with::text
+hbf-cns40-4: culture::chinese, made-of::data:font, role::app-data, works-with-format::tex, works-with::text
+hbf-cns40-5: culture::chinese, made-of::data:font, role::app-data, works-with-format::tex, works-with::text
+hbf-cns40-6: culture::chinese, made-of::data:font, role::app-data, works-with-format::tex, works-with::text
+hbf-cns40-7: culture::chinese, made-of::data:font, role::app-data, works-with-format::tex, works-with::text
+hbf-cns40-b5: culture::chinese, made-of::data:font, role::app-data, works-with-format::tex, works-with::text
+hbf-jfs56: culture::chinese, made-of::data:font, role::app-data, works-with-format::tex, works-with::text
+hbf-kanji48: culture::chinese, culture::japanese, made-of::data:font, role::app-data, works-with-format::tex, works-with::text
+hdate-applet: uitoolkit::gtk
+hddtemp: admin::hardware, admin::monitoring, hardware::storage, interface::commandline, role::program, scope::utility, x11::application
+hdf5-tools: interface::commandline, role::documentation, role::program, scope::utility, use::converting
+hdparm: admin::benchmarking, admin::hardware, hardware::storage, implemented-in::c, interface::commandline, role::program, use::configuring
+hdparm-dbg: devel::TODO, implemented-in::c, role::TODO
+hdup: admin::backup, culture::russian, interface::commandline, role::program, scope::utility, use::compressing, use::storing, works-with::file
+headache: devel::lang:c, devel::lang:ocaml, implemented-in::ocaml, interface::commandline, role::program, scope::utility, use::converting, works-with::software:source
+heaplayers: devel::lang:c++, role::devel-lib
+heaplayers-allocators: devel::lang:c++, role::devel-lib
+hearse: game::rpg:rogue, interface::commandline, role::program, scope::utility, use::downloading, use::gameplaying
+heartbeat: implemented-in::python, interface::daemon, network::hiavailability, role::program, scope::utility
+heartbeat-2: uitoolkit::ncurses
+heartbeat-2-dev: role::devel-lib
+heartbeat-dev: interface::daemon, network::hiavailability, role::devel-lib
+hebcal: culture::hebrew, interface::commandline, role::program, scope::utility, use::timekeeping
+heimdal-clients: filetransfer::ftp, interface::commandline, interface::text-mode, network::client, protocol::ftp, protocol::kerberos, protocol::ldap, protocol::ssl, role::program, security::cryptography, uitoolkit::ncurses, use::downloading, use::login, works-with::db
+heimdal-clients-x: interface::x11, network::client, protocol::kerberos, protocol::ssl, role::program, security::cryptography, x11::library
+heimdal-dev: devel::library, protocol::kerberos, role::devel-lib, security::cryptography
+heimdal-docs: made-of::data:info, protocol::kerberos, role::documentation, security::cryptography
+heimdal-kdc: admin::file-distribution, admin::user-management, network::server, protocol::kerberos, role::program, security::cryptography
+heimdal-servers: filetransfer::ftp, network::server, protocol::ftp, protocol::kerberos, protocol::ssl, role::program, security::cryptography, uitoolkit::ncurses, use::downloading, use::login
+heimdal-servers-x: interface::x11, protocol::kerberos, role::plugin, security::cryptography, x11::library
+helix-player: interface::x11, role::program, scope::application, sound::player, uitoolkit::gtk, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, works-with::image, works-with::image:raster, works-with::video, x11::application
+hellanzb: network::client, protocol::nntp, role::program, use::downloading, works-with::archive
+hello: devel::examples, devel::packaging, interface::commandline, role::program, scope::utility, suite::debian, suite::gnu
+hello-dbs: devel::examples, devel::packaging, interface::commandline, role::program, scope::utility, suite::debian
+hello-debhelper: devel::examples, devel::packaging, interface::commandline, suite::debian
+help2man: implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, works-with-format::man, works-with::text
+helpdeco: implemented-in::c, interface::commandline, role::program, scope::utility
+helpviewer.app: implemented-in::objc, interface::x11, role::plugin, suite::gnustep, uitoolkit::gnustep, use::viewing, x11::application
+henplus: devel::lang:sql, implemented-in::java, interface::shell, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::h, works-with::db
+hercules: hardware::emulation, interface::commandline, role::program, scope::utility
+hermes1: devel::library, role::shared-lib, works-with::image, works-with::image:raster
+hermes1-dev: devel::library, role::devel-lib, works-with::image, works-with::image:raster
+heroes-common: game::arcade, interface::x11, role::app-data, special::auto-inst-parts, use::gameplaying, x11::application
+heroes-data: game::arcade, interface::x11, role::app-data, special::auto-inst-parts, use::gameplaying, x11::application
+heroes-ggi: game::arcade, interface::x11, role::program, use::gameplaying, x11::application
+heroes-sdl: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+heroes-sound-effects: game::arcade, interface::x11, role::app-data, use::gameplaying, x11::application
+heroes-sound-tracks: game::arcade, interface::x11, role::app-data, use::gameplaying, x11::application
+hesiod: interface::commandline, protocol::dns, role::program, scope::utility
+hevea: implemented-in::ocaml, interface::commandline, role::program, scope::utility, use::converting, use::editing, works-with-format::html, works-with-format::info, works-with-format::plaintext, works-with-format::png, works-with-format::tex, works-with::image, works-with::image:raster, works-with::text
+hevea-doc: made-of::data:html, made-of::data:tex, role::documentation, use::converting
+hex: culture::japanese, interface::commandline, role::program, scope::utility, use::converting, use::viewing, works-with::file
+hexcat: interface::commandline, role::program, scope::utility, use::viewing, works-with::file
+hexcurse: implemented-in::c, interface::text-mode, uitoolkit::ncurses, use::editing, works-with::file
+hexedit: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::editing, works-with::file
+hexer: interface::commandline, role::program, scope::utility, uitoolkit::ncurses, use::editing, works-with::file
+hexxagon: game::puzzle, interface::x11, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+hf: hardware::hamradio, hardware::modem, interface::daemon, interface::x11, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::h, uitoolkit::gtk, uitoolkit::ncurses
+hfsplus: admin::filesystem, interface::commandline, role::program, scope::utility
+hfsutils: admin::filesystem, interface::commandline, role::program, scope::utility
+hfsutils-tcltk: admin::filesystem, interface::x11, role::program, scope::utility, uitoolkit::tk, x11::application
+hibernate: admin::power-management, hardware::power, hardware::power:acpi, interface::daemon, network::server, role::program
+hicolor-icon-theme: interface::x11, role::app-data, x11::theme
+highlight: devel::prettyprint, interface::commandline, role::program, scope::utility, use::converting, use::text-formatting, works-with-format::html, works-with-format::tex, works-with::software:source, works-with::text
+hiki: implemented-in::ruby, interface::web, network::server, role::program, use::editing, web::wiki, works-with-format::html, works-with::text
+hindent: devel::prettyprint, implemented-in::perl, interface::commandline, role::program, scope::utility, works-with-format::html, works-with::text
+hinfo: interface::commandline, mail::filters, protocol::dns, role::program, scope::utility, use::checking
+hitop: devel::code-generator, interface::commandline, role::program, scope::utility, works-with-format::html, works-with::text
+hlatex: culture::korean, role::plugin, use::editing, works-with-format::tex, works-with::text
+hlatex-fonts-base: culture::korean, made-of::data:font, role::app-data, works-with-format::tex, works-with::text
+hlatex-fonts-extra: culture::korean, made-of::data:font, role::app-data, works-with-format::tex, works-with::text
+hlfl: interface::commandline, network::firewall, role::program, scope::utility, security::firewall, use::converting, works-with::text
+hlins: implemented-in::ocaml, interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with::text
+hmake: devel::buildtools, devel::lang:haskell, implemented-in::haskell, interface::commandline, role::program, scope::utility, uitoolkit::ncurses
+hmmer: field::biology, implemented-in::c, interface::commandline, role::program, scope::utility
+hmmer-doc: devel::doc, devel::examples, field::biology, made-of::data:pdf, role::documentation
+hmmer-pvm: field::biology, implemented-in::c, interface::commandline, role::program, scope::utility
+hnb: interface::text-mode, role::program, scope::application, uitoolkit::ncurses, use::organizing, works-with-format::html, works-with-format::plaintext, works-with-format::xml, works-with::pim, works-with::text
+hocr-gtk: accessibility::ocr, culture::hebrew, implemented-in::c, interface::x11, role::program, scope::application, uitoolkit::gtk, use::converting, works-with::image, works-with::image:raster, works-with::text, x11::application
+hodie: interface::commandline, role::program, scope::utility, use::timekeeping
+hoichess: game::board:chess, implemented-in::c, role::program, use::gameplaying
+holotz-castle: game::platform, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+holotz-castle-data: game::platform, role::app-data, uitoolkit::sdl, use::gameplaying
+holotz-castle-editor: game::platform, interface::x11, role::program, scope::utility, uitoolkit::sdl, use::editing, x11::application
+holotz-castle-milanb: game::platform, interface::x11, role::app-data, uitoolkit::sdl, use::gameplaying, x11::application
+honeyd: interface::daemon, network::server, network::service, role::program, security::ids, uitoolkit::ncurses
+honeyd-common: interface::daemon, network::service, role::documentation, security::ids
+honyaku-el: suite::emacs, use::editing
+horae: field::biology, field::chemistry, field::physics, implemented-in::perl, interface::x11, legacy::science, scope::suite, uitoolkit::tk, x11::application
+horde2: devel::lang:php, devel::lang:sql, implemented-in::php, interface::web, protocol::http, protocol::ldap, web::appserver, works-with::db
+horde3: devel::lang:php, devel::lang:sql, devel::web, implemented-in::php, interface::web, protocol::http, protocol::ldap, web::appserver, works-with::db
+horgand: special::not-yet-tagged, special::not-yet-tagged::h
+host: interface::commandline, protocol::dns, role::program, scope::utility, use::checking
+hostap-modules-2.4.27-2-386: special::not-yet-tagged, special::not-yet-tagged::h
+hostap-modules-2.4.27-2-586tsc: admin::kernel, network::configuration, network::service, use::driver
+hostap-modules-2.4.27-2-686: admin::kernel, network::configuration, network::service, use::driver
+hostap-modules-2.4.27-2-686-smp: admin::kernel, network::configuration, network::service, use::driver
+hostap-modules-2.4.27-2-k6: admin::kernel, network::configuration, network::service, use::driver
+hostap-modules-2.4.27-2-k7: admin::kernel, network::configuration, network::service, use::driver
+hostap-modules-2.4.27-2-k7-smp: admin::kernel, network::configuration, network::service, use::driver
+hostap-modules-2.6.8-2-386: admin::kernel, network::configuration, network::service, use::driver
+hostap-modules-2.6.8-2-686: admin::kernel, network::configuration, network::service, use::driver
+hostap-modules-2.6.8-2-686-smp: admin::kernel, network::configuration, network::service, use::driver
+hostap-modules-2.6.8-2-k7: admin::kernel, network::configuration, network::service, use::driver
+hostap-modules-2.6.8-2-k7-smp: admin::kernel, network::configuration, network::service, use::driver
+hostap-source: network::configuration, role::source, use::driver
+hostap-utils: interface::commandline, network::client, network::configuration, network::service, role::program, security::authentication
+hostapd: interface::daemon, network::configuration, network::server, network::service, protocol::radius, role::program, security::authentication
+hostname: interface::commandline, role::program, scope::utility, use::configuring
+hotkey-setup: hardware::laptop, role::program, scope::utility
+hotkeys: hardware::input:keyboard, interface::daemon, uitoolkit::gtk, x11::application
+hotplug: admin::boot, admin::hardware, hardware::camera, hardware::detection, hardware::input, hardware::input:mouse, hardware::modem, hardware::storage, hardware::usb, implemented-in::shell, interface::daemon, network::configuration, network::server, role::program
+hotsmtp: network::server, protocol::http, protocol::smtp, role::program, special::not-yet-tagged, special::not-yet-tagged::h
+hotswap: hardware::laptop, interface::x11, role::metapackage, special::meta
+hotswap-gui: hardware::laptop, interface::x11, uitoolkit::motif, uitoolkit::qt, x11::application
+hotswap-text: hardware::laptop, interface::commandline
+hotway: interface::daemon, network::server, protocol::http, protocol::pop3, role::program, works-with-format::html, works-with::mail, works-with::text
+howl-utils: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::h
+hoz-gui: uitoolkit::gtk
+hp-ppd: hardware::printer, role::app-data, use::printing
+hp-search-mac: hardware::detection, implemented-in::perl, interface::commandline, network::scanner, protocol::ethernet, role::program, scope::utility
+hp2xx: role::program, scope::utility, use::converting, works-with::image, works-with::image:raster, works-with::image:vector
+hp48cc: devel::compiler, hardware::printer, role::program, scope::utility, works-with::software:source
+hpijs: hardware::printer, interface::commandline, role::program, scope::utility, use::printing
+hpijs-ppds: hardware::printer
+hping2: admin::monitoring, implemented-in::c, interface::commandline, network::scanner, role::program, scope::utility, use::scanning
+hping3: admin::monitoring, devel::lang:tcl, implemented-in::c, interface::commandline, network::scanner, role::program, scope::utility, use::scanning
+hplip: hardware::printer, implemented-in::python, interface::daemon, network::server, protocol::ssl, role::program, use::printing
+hplip-data: hardware::printer, interface::daemon, protocol::ssl, role::app-data, use::printing
+hplip-dbg: hardware::printer
+hplip-doc: hardware::printer, role::documentation
+hpodder: filetransfer::http, implemented-in::c, implemented-in::haskell, interface::commandline, network::client, role::program, use::downloading, use::entertaining, web::blog, works-with-format::mp3, works-with-format::xml:rss, works-with::audio
+hpoj: hardware::printer, interface::daemon, network::server, role::program, role::shared-lib, use::driver, use::printing
+hpoj-xojpanel: hardware::printer, interface::x11, role::program, scope::utility, uitoolkit::qt, use::printing, use::viewing, x11::application
+hpsockd: interface::daemon, network::server, network::service, role::program, special::not-yet-tagged, special::not-yet-tagged::h, use::proxying
+hptalx: uitoolkit::gtk
+hrd: game::puzzle, interface::text-mode, uitoolkit::ncurses
+hsetroot: implemented-in::c, interface::commandline, role::program, scope::application
+hsftp: interface::text-mode, network::client, protocol::TODO, role::program, uitoolkit::ncurses, use::downloading, use::login
+hspell: culture::hebrew, interface::commandline, made-of::data:dictionary, role::app-data, use::checking
+hspell-gui: culture::hebrew, interface::x11, role::plugin, suite::gnome, uitoolkit::gtk, use::checking, x11::application
+ht: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::editing, use::viewing
+htag: implemented-in::perl, interface::commandline, protocol::fidonet, protocol::nntp, role::program, scope::utility, works-with::mail
+htcheck: devel::lang:sql, implemented-in::c++, interface::commandline, protocol::http, role::program, scope::utility, use::checking, works-with-format::html, works-with::db, works-with::text
+htcheck-php: devel::lang:sql, implemented-in::php, interface::web, protocol::http, role::program, scope::utility, use::checking, web::application, works-with-format::html, works-with::db, works-with::text
+htdig: implemented-in::c++, interface::commandline, interface::web, network::server, protocol::http, role::program, use::searching, web::cgi, works-with-format::html, works-with::text
+htdig-doc: made-of::data:html, role::documentation, use::searching, web::cgi, works-with-format::html, works-with::text
+html-helper-mode: implemented-in::lisp, role::plugin, suite::emacs, use::editing, works-with-format::html, works-with::text
+html2ps: interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with-format::postscript, works-with::text
+html2text: interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with-format::plaintext, works-with::text
+html2wml: implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, use::text-formatting, works-with-format::html, works-with::text
+htmldoc: interface::commandline, interface::x11, role::program, scope::utility, uitoolkit::TODO, use::converting, works-with-format::html, works-with-format::pdf, works-with-format::postscript, works-with::image, works-with::image:raster, works-with::text, x11::application
+htmldoc-common: interface::commandline
+htmlgen: devel::lang:python, devel::library, implemented-in::python, role::dummy, works-with-format::html, works-with::text
+htop: admin::monitoring, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::monitor, works-with::software:running
+htp: interface::commandline, role::program, scope::utility, works-with-format::html, works-with::text
+httperf: admin::benchmarking, implemented-in::c, interface::commandline, protocol::http, role::program, use::monitor
+httping: admin::monitoring, implemented-in::c, interface::commandline, network::scanner, protocol::http, role::program, scope::utility
+httptunnel: interface::commandline, interface::daemon, network::client, network::server, network::vpn, protocol::http, role::program, use::routing
+httrack: filetransfer::ftp, filetransfer::http, interface::commandline, protocol::ftp, protocol::http, role::program, scope::utility, use::browsing, use::synchronizing
+httrack-doc: filetransfer::ftp, filetransfer::http, made-of::data:html, protocol::ftp, protocol::http, role::documentation, use::browsing, use::synchronizing
+hubcot: game::toys, hardware::usb, interface::commandline, role::program, scope::utility, use::driver
+hubcot-source: game::toys, hardware::usb, role::source
+hugin-bin: interface::x11, role::program, uitoolkit::gtk, uitoolkit::wxwindows, use::editing, works-with-format::jpg, works-with::image, works-with::image:raster, x11::application
+hugin-tools: interface::x11, role::program, uitoolkit::gtk, uitoolkit::wxwindows, use::editing, works-with-format::jpg, works-with::image, works-with::image:raster, x11::application
+hugs: devel::interpreter, devel::lang:haskell, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses
+hunglish: accessibility::input, culture::hungarian, hardware::input:keyboard
+hunit-doc: devel::lang:haskell, devel::testing-qa, role::documentation
+hunspell: culture::hungarian, uitoolkit::ncurses
+hunspell-de-at: culture::german, made-of::data:dictionary, role::app-data, use::checking
+hunspell-de-ch: culture::german, made-of::data:dictionary, role::app-data, use::checking
+hunspell-de-de: culture::german, made-of::data:dictionary, role::app-data, use::checking
+hunt: interface::commandline, network::scanner, role::program, scope::utility
+hurd-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::h
+hwb: role::data, role::documentation
+hwdata: admin::configuring, admin::hardware, hardware::detection, role::app-data, use::configuring
+hwinfo: admin::hardware, hardware::detection, implemented-in::c, interface::commandline, role::program, scope::utility, use::scanning
+hwtools: admin::configuring, admin::hardware, interface::commandline, role::program, scope::utility, use::checking, use::configuring
+hx: interface::text-mode, network::client, role::program, uitoolkit::gtk, uitoolkit::ncurses, use::chatting, use::downloading, x11::application
+hybrid-dev: devel::lang:c, devel::library, protocol::irc, role::devel-lib, use::chatting
+hybserv: implemented-in::c, interface::daemon, network::server, network::service, protocol::irc, role::program, use::login
+hydrogen: interface::x11, role::program, scope::application, sound::sequencer, uitoolkit::qt, x11::application
+hylafax-client: hardware::modem, interface::commandline, network::client, role::program, use::transmission, works-with::fax, x11::application
+hylafax-doc: hardware::modem, made-of::data:html, role::documentation, use::transmission, works-with::fax
+hylafax-server: hardware::modem, implemented-in::c++, interface::commandline, interface::daemon, network::server, role::program, use::transmission, works-with::fax, works-with::mail
+hyperestraier: use::searching
+hyperlatex: implemented-in::lisp, role::plugin, suite::emacs, use::editing, works-with-format::html, works-with-format::tex, works-with::text
+hypermail: interface::commandline, mail::list, role::program, scope::utility, use::storing, works-with::mail
+hyperspec: devel::lang:lisp
+hyphen-show: interface::commandline, role::program, scope::utility, use::checking, use::editing, works-with-format::tex, works-with::text
+hypre-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::h
+hztty: culture::chinese, culture::taiwanese, interface::commandline, role::program, scope::utility, use::converting, use::editing, x11::terminal
+i2c-2.4.27-2-386: admin::hardware, admin::kernel, admin::monitoring, implemented-in::c, use::driver
+i2c-2.4.27-2-586tsc: admin::hardware, admin::kernel, admin::monitoring, implemented-in::c, use::driver
+i2c-2.4.27-2-686: admin::hardware, admin::kernel, admin::monitoring, implemented-in::c, use::driver
+i2c-2.4.27-2-686-smp: admin::hardware, admin::kernel, admin::monitoring, implemented-in::c, use::driver
+i2c-2.4.27-2-k6: admin::hardware, admin::kernel, admin::monitoring, implemented-in::c, use::driver
+i2c-2.4.27-2-k7: admin::hardware, admin::kernel, admin::monitoring, implemented-in::c, use::driver
+i2c-2.4.27-2-k7-smp: admin::hardware, admin::kernel, admin::monitoring, implemented-in::c, use::driver
+i2c-source: admin::kernel, admin::monitoring, role::source, use::driver
+i2e: culture::TODO, culture::spanish, interface::commandline, interface::x11, made-of::data:dictionary, role::app-data, role::program, scope::utility, uitoolkit::gtk, use::converting, works-with::dictionary, x11::application
+i810switch: admin::hardware, hardware::video, implemented-in::c, interface::commandline, use::configuring
+i8kutils: hardware::laptop, interface::commandline, interface::x11, role::program, scope::utility, uitoolkit::tk, x11::applet, x11::application
+ia32-libs: role::shared-lib
+ia32-sun-java5-bin: devel::lang:java, devel::runtime, interface::commandline, role::program
+iacd: filetransfer::dcc, interface::daemon, network::server, protocol::ipv6, protocol::irc, role::program, use::chatting
+iamerican: culture::TODO, made-of::data:dictionary, role::app-data, use::checking
+iasl: devel::compiler, hardware::power:acpi, implemented-in::c, interface::commandline, role::program, scope::utility
+iaxcomm: uitoolkit::gtk, uitoolkit::wxwindows
+ibackup: admin::backup, interface::commandline, role::program, scope::utility, security::cryptography, use::compressing, use::storing, works-with-format::tar, works-with::archive
+ibam: admin::power-management, hardware::laptop, hardware::power, hardware::power:apm, interface::commandline, interface::x11, role::program, scope::utility, use::monitor
+ibod: hardware::modem, interface::daemon, network::configuration, network::load-balancing, network::server, role::program, use::dialing, works-with::network-traffic
+ibp: field::geography, hardware::hamradio, interface::text-mode, interface::x11, uitoolkit::ncurses, use::viewing, x11::application
+ibrazilian: culture::brazilian, made-of::data:dictionary, role::app-data, use::checking
+ibritish: culture::TODO, made-of::data:dictionary, role::app-data, use::checking
+ibulgarian: culture::bulgarian, made-of::data:dictionary, role::app-data, use::checking
+ibwebadmin: admin::configuring, implemented-in::php, interface::web, use::configuring, web::appserver, works-with::db
+ic35link: special::not-yet-tagged, special::not-yet-tagged::i
+icatalan: culture::catalan, made-of::data:dictionary, role::app-data, use::checking
+icc-profiles: works-with::image, works-with::image:raster
+iceape: role::dummy, suite::mozilla
+iceape-browser: implemented-in::c++, interface::x11, network::client, protocol::http, protocol::ssl, role::program, suite::mozilla, uitoolkit::gtk, use::browsing, web::browser, works-with-format::html, x11::application
+iceape-calendar: implemented-in::c++, role::plugin, suite::mozilla, use::organizing, use::timekeeping
+iceape-chatzilla: implemented-in::c++, network::client, protocol::irc, role::plugin, suite::mozilla
+iceape-dbg: devel::debugger, suite::mozilla
+iceape-dev: devel::library, role::devel-lib, suite::mozilla
+iceape-dom-inspector: implemented-in::c++, interface::x11, role::plugin, scope::utility, suite::mozilla, works-with-format::html, works-with-format::xml
+iceape-gnome-support: role::plugin, suite::gnome, suite::mozilla
+iceape-l10n-be: culture::TODO, role::app-data, suite::mozilla
+iceape-l10n-ca: culture::catalan, role::app-data, suite::mozilla
+iceape-l10n-cs: culture::czech, role::app-data, suite::mozilla
+iceape-l10n-de: culture::german, role::app-data, suite::mozilla
+iceape-l10n-fr: culture::french, role::app-data, suite::mozilla
+iceape-l10n-he: culture::hebrew, role::app-data, suite::mozilla
+iceape-l10n-it: culture::italian, role::app-data, suite::mozilla
+iceape-l10n-pl: culture::polish, role::app-data, suite::mozilla
+iceape-l10n-ru: culture::russian, role::app-data, suite::mozilla
+iceape-locale-pl: role::dummy, special::obsolete
+iceape-mailnews: implemented-in::c++, interface::x11, mail::filters, mail::imap, mail::pop, mail::smtp, mail::user-agent, network::client, protocol::imap, protocol::nntp, protocol::pop3, protocol::smtp, protocol::ssl, role::plugin, uitoolkit::TODO, works-with::mail
+icebreaker: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+icecast-client: interface::commandline, network::client, network::service, role::program, sound::player, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+icecast-server: interface::daemon, network::server, network::service, protocol::http, role::program, sound::player, use::playing, use::transmission, web::application, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+icecast2: filetransfer::http, implemented-in::c, interface::commandline, interface::daemon, interface::web, network::server, network::service, protocol::http, role::program, sound::mixer, sound::player, use::playing, use::transmission, web::application, works-with-format::html, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, works-with::text
+icecc: admin::cluster, devel::buildtools, devel::compiler, implemented-in::perl, interface::daemon, network::client, network::server, role::program, scope::utility, works-with::software:source
+icecc-monitor: uitoolkit::qt
+iceconf: interface::x11, role::program, scope::utility, uitoolkit::gtk, use::configuring, x11::application, x11::window-manager
+icecream: implemented-in::perl, interface::commandline, network::client, protocol::http, role::program, use::downloading, works-with::audio
+icedax: hardware::storage:cd, interface::commandline, role::program, scope::utility, use::converting, works-with-format::iso9660, works-with::audio
+icedove: interface::x11, mail::filters, mail::imap, mail::pop, mail::smtp, mail::user-agent, network::client, protocol::imap, protocol::ldap, protocol::nntp, protocol::pop3, protocol::smtp, protocol::ssl, role::program, suite::gnu, suite::mozilla, uitoolkit::gtk, use::synchronizing, works-with::mail, x11::application
+icedove-gnome-support: uitoolkit::gtk
+icedove-locale-bg: culture::bulgarian
+icedove-locale-ca: culture::catalan
+icedove-locale-da: culture::danish
+icedove-locale-de: culture::german
+icedove-locale-en-gb: culture::TODO, role::app-data, suite::mozilla
+icedove-locale-es-ar: culture::arabic
+icedove-locale-es-es: culture::spanish
+icedove-locale-eu: culture::basque
+icedove-locale-fi: culture::finnish
+icedove-locale-fr: culture::french
+icedove-locale-ga: culture::irish
+icedove-locale-he: culture::hebrew
+icedove-locale-hu: culture::hungarian
+icedove-locale-it: culture::italian
+icedove-locale-ja: culture::japanese
+icedove-locale-ko: culture::korean
+icedove-locale-nb: culture::bokmaal
+icedove-locale-nl: culture::dutch
+icedove-locale-pa: culture::punjabi
+icedove-locale-pl: culture::polish
+icedove-locale-pt-br: culture::brazilian
+icedove-locale-ru: culture::russian
+icedove-locale-sk: culture::slovak
+icedove-locale-sl: culture::slovenian
+icedove-locale-sv: culture::swedish
+icedove-locale-tr: culture::turkish
+icedove-locale-uk: culture::ukrainian
+icedove-locale-zh-cn: culture::chinese
+icemc: interface::x11, role::program, scope::utility, uitoolkit::qt, use::configuring, use::editing, x11::application
+iceme: implemented-in::python, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::configuring, use::editing, x11::application
+icepref: implemented-in::python, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::configuring, x11::application
+ices2: filetransfer::http, implemented-in::c, interface::commandline, network::client, protocol::http, role::program, sound::mixer, sound::player, use::playing, use::transmission, works-with-format::oggvorbis, works-with::audio
+iceweasel: devel::interpreter, devel::lang:ecmascript, filetransfer::ftp, filetransfer::http, interface::x11, network::client, protocol::ftp, protocol::http, protocol::ipv6, protocol::ssl, role::program, scope::application, suite::mozilla, uitoolkit::gtk, use::browsing, use::downloading, web::browser, works-with-format::html, works-with-format::jpg, works-with-format::plaintext, works-with-format::png, works-with-format::svg, works-with-format::xml, works-with-format::xml:rss, works-with-format::xml:xslt, works-with::image, works-with::image:raster, works-with::image:vector, works-with::text, x11::application
+icewm: implemented-in::c, interface::x11, role::program, scope::application, uitoolkit::TODO, uitoolkit::athena, uitoolkit::gtk, x11::window-manager
+icewm-common: interface::x11, role::app-data, special::auto-inst-parts, uitoolkit::gtk, x11::window-manager
+icewm-experimental: interface::x11, role::program, uitoolkit::gtk, x11::window-manager
+icewm-gnome: interface::x11, network::server, role::program, suite::gnome, uitoolkit::gtk, x11::window-manager
+icewm-gnome-support: interface::x11, role::app-data, suite::gnome, uitoolkit::gtk, x11::application, x11::window-manager
+icewm-lite: interface::x11, role::program, uitoolkit::gtk, x11::window-manager
+icewm-themes: interface::x11, role::app-data, x11::theme
+icheck: devel::buildtools, devel::lang:c, devel::library, devel::testing-qa, interface::commandline
+ickle: interface::commandline, interface::x11, network::client, protocol::oscar, role::program, uitoolkit::gtk, use::chatting, x11::application
+ickle-common: interface::x11, made-of::data:icons, role::app-data, special::auto-inst-parts, uitoolkit::gtk, use::chatting, x11::application
+ickle-control: interface::commandline, role::program, scope::utility, uitoolkit::gtk, use::chatting, x11::application
+icmake: devel::buildtools, interface::commandline, role::program, scope::utility
+icmpinfo: interface::commandline, role::program, scope::utility, security::log-analyzer, use::scanning, works-with::logfile
+icmpush: interface::commandline, role::program, scope::utility, use::editing
+icom: hardware::hamradio, role::program, scope::utility
+icomlib-bin: hardware::hamradio, interface::commandline, role::program, scope::utility, x11::application
+icomlib-doc: hardware::hamradio, role::documentation
+icomlib1: devel::library, hardware::hamradio, interface::commandline, role::shared-lib
+icomlib1-dev: devel::library, hardware::hamradio, role::devel-lib, role::documentation
+icon-ipl: devel::compiler, devel::interpreter, interface::commandline, role::app-data, works-with::software:source
+iconc: devel::compiler, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::software:source
+icont: devel::interpreter, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::software:source
+iconx: devel::interpreter, implemented-in::c, interface::commandline, role::program, scope::utility
+icoutils: interface::commandline, role::program, scope::utility, use::converting, works-with::image, works-with::image:raster
+icu: implemented-in::c, implemented-in::c++, works-with::text, works-with::unicode
+icu-data: role::app-data, works-with::text, works-with::unicode
+icu-doc: devel::doc, devel::lang:c, devel::lang:c++, made-of::data:html, role::documentation, works-with::text, works-with::unicode
+icu-i18ndata: works-with::text, works-with::unicode
+icu-locales: works-with::text, works-with::unicode
+icukrell: special::not-yet-tagged, special::not-yet-tagged::i
+iczech: culture::czech, made-of::data:dictionary, role::app-data, use::checking
+id3: interface::commandline, role::program, scope::utility, use::editing, use::organizing, works-with-format::mp3, works-with::audio
+id3ed: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::editing, use::organizing, works-with-format::mp3, works-with::audio
+id3ren: interface::commandline, role::program, scope::utility, use::organizing, works-with-format::mp3, works-with::audio
+id3tool: interface::commandline, role::program, scope::utility, use::editing, use::organizing, works-with-format::mp3, works-with::audio
+id3v2: interface::commandline, role::program, scope::utility, use::editing, use::organizing, works-with-format::mp3, works-with::audio
+ida: use::viewing, works-with::image, works-with::image:raster
+idanish: culture::danish, made-of::data:dictionary, role::app-data, use::checking
+idecrypt: interface::commandline, protocol::ident, role::program, scope::utility, security::cryptography
+ident2: implemented-in::c, interface::daemon, network::server, protocol::ident, role::program
+idesk: interface::x11, role::program, scope::utility, x11::application
+idl-font-lock-el: implemented-in::lisp, role::plugin, suite::emacs, use::editing
+idle: devel::ide, devel::lang:python, interface::x11, role::dummy, role::metapackage, special::meta, uitoolkit::tk, use::editing, x11::application
+idle-python2.1: devel::ide, devel::lang:python, interface::x11, uitoolkit::tk, use::editing, x11::application
+idle-python2.2: devel::ide, devel::lang:python, interface::x11, uitoolkit::tk, use::editing, x11::application
+idle-python2.3: devel::ide, devel::lang:python, interface::x11, uitoolkit::tk, use::editing, x11::application
+idle-python2.4: devel::ide, devel::lang:python, interface::x11, uitoolkit::tk, use::editing, x11::application
+idn: devel::i18n, implemented-in::c, implemented-in::lisp, interface::commandline, role::plugin, role::program, scope::utility, suite::emacs, suite::gnu, works-with::text, works-with::unicode
+idswakeup: admin::monitoring, implemented-in::shell, interface::commandline, role::program, scope::utility, security::ids, use::checking
+idutch: culture::dutch, made-of::data:dictionary, role::app-data, use::checking
+ieee80211-source: role::source
+iesperanto: culture::esperanto, made-of::data:dictionary, role::app-data, use::checking
+iestonian: culture::estonian, made-of::data:dictionary, role::app-data, use::checking
+ifaroese: culture::faroese, made-of::data:dictionary, role::app-data, use::checking
+ifcico: hardware::modem, interface::commandline, network::configuration, protocol::fidonet, role::program, scope::utility
+ifeffit: field::biology, field::chemistry, field::physics, implemented-in::c, implemented-in::fortran, interface::x11, legacy::science, scope::application, uitoolkit::tk, x11::application
+ifenslave: admin::kernel, interface::commandline, network::configuration, role::dummy, role::metapackage, special::obsolete
+ifenslave-2.4: admin::kernel, network::configuration, role::program, scope::utility
+ifenslave-2.6: admin::kernel, network::configuration, role::program, scope::utility
+ifgate: protocol::fidonet, protocol::ip
+ifhp: hardware::printer, role::program, scope::utility, use::printing
+ifile: mail::filters, role::program, scope::utility, works-with::mail
+ifile-gnus-el: implemented-in::lisp, mail::filters, role::plugin, suite::emacs, works-with::mail
+ifinnish: culture::finnish, made-of::data:dictionary, role::app-data, use::checking
+ifinnish-large: culture::finnish, made-of::data:dictionary, role::app-data, use::checking
+ifinnish-small: culture::finnish, made-of::data:dictionary, role::app-data, use::checking
+ifmail: protocol::fidonet, protocol::ip
+ifmetric: interface::commandline, network::configuration, protocol::ip, role::program, scope::utility, use::configuring
+ifp-line: hardware::embedded, hardware::usb, interface::commandline, role::program, scope::utility, use::synchronizing, works-with::audio
+ifp-line-libifp: hardware::embedded, hardware::usb, interface::commandline, role::program, scope::utility, use::synchronizing, works-with::audio
+ifpgui: uitoolkit::qt
+ifplugd: hardware::laptop, interface::daemon, network::configuration, network::server, role::program
+ifrename: interface::commandline, network::configuration, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::i
+ifrench: culture::french, made-of::data:dictionary, role::app-data, use::checking
+ifrench-gut: culture::french, made-of::data:dictionary, role::app-data, use::checking
+ifrit: field::chemistry, field::physics, implemented-in::c++, role::program, uitoolkit::ncurses, uitoolkit::qt, use::viewing, x11::application
+ifscheme: interface::commandline, network::configuration, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::i, use::configuring
+ifstat: admin::benchmarking, admin::monitoring, implemented-in::c, interface::commandline, protocol::snmp, role::program, scope::utility, use::monitor
+iftop: admin::monitoring, interface::text-mode, network::configuration, role::program, uitoolkit::ncurses, use::monitor, works-with::network-traffic
+ifupdown: implemented-in::c, implemented-in::perl, interface::commandline, network::configuration, protocol::ipv6, role::program, scope::utility, use::configuring
+ifupdown-scripts-zg2: implemented-in::shell, interface::commandline, network::configuration, special::not-yet-tagged, special::not-yet-tagged::i, suite::debian, use::configuring
+igaelic: made-of::data:dictionary, role::app-data, use::checking
+igal: implemented-in::perl, use::organizing, use::viewing, works-with-format::html, works-with::image, works-with::image:raster, works-with::text
+igalician-minimos: made-of::data:dictionary, role::app-data, use::checking
+ihu: uitoolkit::qt
+ihungarian: culture::hungarian, made-of::data:dictionary, role::app-data, use::checking
+ii: implemented-in::c, interface::commandline, network::client, protocol::irc, role::program, use::chatting, works-with::file
+iiimecf: accessibility::input, implemented-in::lisp, role::plugin, suite::emacs, use::editing
+iiimf-client-gtk: uitoolkit::gtk
+iiimf-htt-csconv: accessibility::input, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::i, use::converting
+iiimf-htt-le-canna: accessibility::input, culture::japanese, special::not-yet-tagged, special::not-yet-tagged::i
+iiimf-htt-le-indic: accessibility::input, culture::bengali, culture::hindi, culture::punjabi, culture::tamil, special::not-yet-tagged, special::not-yet-tagged::i
+iiimf-htt-le-newpy: accessibility::input, culture::chinese, special::not-yet-tagged, special::not-yet-tagged::i
+iiimf-htt-server: accessibility::input, interface::daemon, network::server, role::program, works-with::text, works-with::unicode
+iiimf-htt-xbe: accessibility::input, role::program, scope::utility, works-with::text, works-with::unicode
+iiimf-im-switcher: uitoolkit::gtk
+iiimf-le-canna: uitoolkit::gtk
+iiimf-le-hangul: uitoolkit::gtk
+iiimf-le-sun-hong-kong-chinese: uitoolkit::gtk
+iiimf-le-sun-simplified-chinese: uitoolkit::gtk
+iiimf-le-sun-traditional-chinese: uitoolkit::gtk
+iiimgcf: accessibility::input, interface::x11, network::client, role::program, uitoolkit::gtk, works-with::text, works-with::unicode, x11::application
+iirish: culture::irish, made-of::data:dictionary, role::app-data, use::checking
+iisemulator: hardware::emulation, implemented-in::perl, interface::daemon, network::server, network::service, role::program, special::not-yet-tagged, special::not-yet-tagged::i
+iitalian: culture::italian, made-of::data:dictionary, role::app-data, use::checking
+ijsgimpprint: hardware::printer, interface::commandline, role::program, scope::utility, use::driver, use::printing
+ijsgutenprint: hardware::printer
+ike-scan: interface::commandline, network::scanner, network::vpn, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::i, use::scanning
+ikiwiki: devel::lang:perl, devel::rcs, implemented-in::perl, interface::web, protocol::http, web::blog, web::wiki, works-with-format::html
+ikvm: special::not-yet-tagged, special::not-yet-tagged::i
+ilisp: devel::lang:lisp, implemented-in::lisp, role::plugin, suite::emacs, use::editing
+ilisp-doc: devel::doc, devel::lang:lisp, made-of::data:html, made-of::data:pdf, role::documentation, suite::emacs, use::editing
+ilithuanian: made-of::data:dictionary, role::app-data, use::checking
+illuminator-demo: devel::examples, interface::text-mode, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, uitoolkit::ncurses, use::viewing, works-with::image, works-with::image:vector, x11::application
+illuminator-doc: devel::doc, made-of::data:html, made-of::data:pdf, made-of::data:postscript, made-of::data:tex, role::documentation, use::viewing, works-with::image, works-with::image:vector
+ilohamail: implemented-in::php, interface::web, mail::user-agent, network::client, role::program, use::editing, web::application, works-with::mail
+im: implemented-in::perl, mail::imap, mail::user-agent, network::client, protocol::imap, protocol::ipv6, protocol::nntp, role::program, works-with::mail
+im-sdk-docs: accessibility::input, devel::doc, role::documentation
+im-switch: accessibility::input, culture::chinese, culture::japanese, culture::korean, culture::taiwanese, interface::commandline, role::program
+imageindex: interface::commandline, role::program, scope::utility, works-with-format::html, works-with::image, works-with::image:raster, works-with::text
+imagemagick: interface::commandline, interface::x11, role::program, scope::application, scope::utility, use::converting, use::viewing, works-with::image, works-with::image:raster, x11::application
+imageviewer: implemented-in::objc, role::plugin, suite::gnustep, use::viewing, works-with::image:raster
+imanx: made-of::data:dictionary, role::app-data, use::checking
+imapcopy: implemented-in::TODO
+imapfilter: interface::commandline, mail::filters, mail::imap, network::client, protocol::imap, role::program, works-with::mail
+imapproxy: interface::daemon, mail::imap, protocol::imap, uitoolkit::ncurses, use::proxying
+imapsync: mail::imap, protocol::imap, special::not-yet-tagged, special::not-yet-tagged::i, use::synchronizing
+imaptool: interface::x11, role::program, scope::utility, uitoolkit::athena, use::editing, works-with::image, works-with::image:raster, x11::application
+imaze-lesstif: game::arcade, interface::3d, network::client, role::program, uitoolkit::motif, use::gameplaying, x11::application
+imaze-sounds: game::arcade, made-of::TODO, role::app-data
+imaze-xaw: game::arcade, interface::3d, network::client, role::program, uitoolkit::athena, use::gameplaying, x11::application
+imaze-xlabed: game::arcade, interface::3d, role::program, uitoolkit::athena, use::editing, use::gameplaying, x11::application
+imaze-xview: game::arcade, interface::3d, network::client, role::program, use::gameplaying, x11::application
+imazesrv: game::arcade, interface::daemon, network::server, role::program, use::gameplaying
+imcom: protocol::jabber, protocol::msn-messenger, protocol::oscar, use::chatting
+imediff2: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::synchronizing, works-with::text
+imgseek: implemented-in::python, interface::x11, role::program, scope::application, uitoolkit::qt, use::organizing, use::viewing, works-with::image, works-with::image:raster, x11::application
+imgsizer: implemented-in::python, interface::commandline, role::program, scope::utility, use::editing, works-with-format::html, works-with::image, works-with::image:raster, works-with::text
+imgtex: special::not-yet-tagged, special::not-yet-tagged::i
+imgvtopgm: hardware::embedded, interface::commandline, role::program, scope::utility, use::converting, works-with::image, works-with::image:raster
+imhangul: accessibility::input, culture::korean, interface::x11, role::shared-lib, uitoolkit::gtk, x11::application
+imhangul-status-applet: accessibility::input, culture::korean, interface::x11, role::plugin, suite::gnome, uitoolkit::gtk
+imlib-base: devel::doc, devel::library, role::app-data, uitoolkit::gtk, works-with::image, works-with::image:raster
+imlib-progs: devel::library, interface::x11, uitoolkit::gtk, works-with::image:raster
+imlib1: devel::library, interface::x11, role::shared-lib, works-with::image:raster
+imlib11: devel::library, interface::x11, role::shared-lib, works-with::image, works-with::image:raster
+imlib11-dev: devel::library, interface::x11, role::devel-lib, works-with::image, works-with::image:raster
+imms: role::plugin, suite::xmms, uitoolkit::gtk, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, x11::application
+imp3: implemented-in::php, interface::web, mail::imap, mail::user-agent, network::client, protocol::imap, role::program, web::application, works-with::mail
+imp4: implemented-in::php, interface::web, mail::imap, mail::user-agent, network::client, protocol::imap, role::program, web::application, works-with::mail
+impose+: implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, use::printing, works-with-format::postscript, works-with::text
+imview: works-with::image, works-with::image:raster
+imview-doc: role::documentation, works-with::image
+imwheel: admin::hardware, hardware::input, hardware::input:mouse, interface::daemon, role::program, scope::utility
+indent: devel::lang:c, devel::lang:c++, devel::prettyprint, interface::commandline, role::program, scope::utility, suite::gnu, use::converting, works-with::software:source
+indent-doc: devel::lang:c, devel::lang:c++, devel::prettyprint, interface::commandline, made-of::data:html, role::documentation, suite::gnu, use::converting, works-with::software:source
+indi: admin::hardware, field::astronomy, hardware::TODO, role::TODO, use::driver
+inetutils-ftp: filetransfer::ftp, implemented-in::c, interface::text-mode, network::client, protocol::ftp, role::program, uitoolkit::ncurses, use::downloading, works-with::file
+inetutils-ftpd: filetransfer::ftp, implemented-in::c, interface::daemon, network::server, protocol::ftp, role::program, works-with::file
+inetutils-inetd: implemented-in::c, interface::daemon, network::server, network::service, protocol::ip, protocol::ipv6, role::program
+inetutils-ping: admin::monitoring, implemented-in::c, interface::commandline, network::scanner, protocol::ip, protocol::ipv6, role::program, scope::utility, use::monitor, use::scanning
+inetutils-syslogd: admin::logging, interface::daemon, network::server, role::program, works-with::logfile
+inetutils-talk: interface::text-mode, network::client, role::program, uitoolkit::ncurses, use::chatting
+inetutils-talkd: interface::daemon, network::server, role::program, use::chatting
+inetutils-telnet: interface::text-mode, network::client, role::program, uitoolkit::ncurses, use::login
+inetutils-telnetd: interface::daemon, network::server, role::program, uitoolkit::ncurses, use::login
+inetutils-tools: interface::commandline, network::configuration, role::program, scope::utility
+info: implemented-in::c, interface::text-mode, role::program, suite::gnu, uitoolkit::ncurses, use::viewing, works-with-format::info, works-with::text
+info2man: implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, works-with-format::info, works-with-format::man, works-with::text
+info2www: implemented-in::perl, interface::commandline, interface::web, protocol::http, role::program, scope::utility, use::converting, web::cgi, works-with-format::html, works-with-format::info, works-with::text
+inform: game::rpg, use::gameplaying
+inform-docs: game::rpg, role::documentation, use::gameplaying
+inform-mode: game::adventure, implemented-in::lisp, role::plugin, suite::emacs, use::editing
+ingerman: culture::german, made-of::data:dictionary, role::app-data, use::checking
+ingo1: implemented-in::php, interface::web, mail::filters, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::i
+initng: admin::automation, admin::boot, role::program
+initramfs-tools: admin::boot, admin::filesystem, admin::kernel, interface::commandline, role::program
+initrd-netboot-tools: admin::boot, admin::configuring, admin::filesystem, admin::hardware, admin::kernel, hardware::embedded, interface::shell, network::configuration, protocol::dhcp, role::program, scope::utility
+initrd-tools: admin::boot, admin::filesystem, admin::kernel, interface::commandline, role::program, scope::utility, suite::debian
+initscripts: admin::boot, admin::power-management, interface::daemon, role::program, scope::utility, use::configuring
+initz: implemented-in::lisp, role::plugin, suite::emacs, use::configuring, use::editing
+ink: hardware::printer
+inkscape: implemented-in::c, interface::x11, role::program, scope::application, uitoolkit::gtk, use::editing, works-with-format::pdf, works-with-format::postscript, works-with-format::svg, works-with-format::tex, works-with::image, works-with::image:vector, x11::application
+inn: interface::daemon, network::server, protocol::nntp, role::program
+inn2: interface::daemon, network::server, protocol::nntp, role::program
+inn2-dev: devel::library, interface::daemon, protocol::nntp, role::devel-lib
+inn2-inews: interface::commandline, network::client, protocol::nntp, role::program
+inn2-ssl: interface::daemon, network::server, protocol::nntp, protocol::ssl, role::program, security::cryptography
+innerspace.app: implemented-in::objc, role::program, suite::gnome, suite::gnustep, uitoolkit::gnustep
+innfeed: interface::daemon, protocol::nntp, role::program, scope::utility, use::transmission
+innovation3d: interface::3d, special::invalid-tag, uitoolkit::qt
+innovation3d-dev: interface::3d, special::invalid-tag, uitoolkit::qt
+innovation3d-plugins: interface::3d, special::invalid-tag, uitoolkit::qt
+inorwegian: culture::norwegian, made-of::data:dictionary, role::app-data, use::checking
+inotail: implemented-in::c, interface::commandline, role::program, scope::utility, use::monitor, use::viewing
+inotify-tools: admin::monitoring, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::file
+input-utils: admin::hardware, admin::kernel, hardware::input, implemented-in::c, interface::commandline, role::program, scope::utility
+insight: devel::debugger, interface::text-mode, interface::x11, role::program, scope::application, uitoolkit::ncurses, uitoolkit::tk, x11::application
+install-doc: role::documentation, suite::debian
+installation-guide-alpha: admin::TODO, admin::install, made-of::data:html, made-of::data:pdf, role::documentation, suite::debian
+installation-guide-amd64: admin::TODO, admin::install, made-of::data:html, made-of::data:pdf, role::documentation, suite::debian
+installation-guide-arm: admin::TODO, admin::install, made-of::data:html, made-of::data:pdf, role::documentation, suite::debian
+installation-guide-hppa: admin::TODO, admin::install, made-of::data:html, made-of::data:pdf, role::documentation, suite::debian
+installation-guide-i386: admin::TODO, admin::install, made-of::data:html, made-of::data:pdf, role::documentation, suite::debian
+installation-guide-ia64: admin::TODO, admin::install, made-of::data:html, made-of::data:pdf, role::documentation, suite::debian
+installation-guide-mips: admin::TODO, admin::install, made-of::data:pdf, made-of::data:xml, role::documentation, suite::debian
+installation-guide-mipsel: admin::TODO, admin::install, made-of::data:html, made-of::data:pdf, role::documentation, suite::debian
+installation-guide-powerpc: admin::TODO, admin::install, made-of::data:html, made-of::data:pdf, role::documentation, suite::debian
+installation-guide-s390: admin::TODO, admin::install, made-of::data:html, made-of::data:pdf, role::documentation, suite::debian
+installation-guide-sparc: admin::TODO, admin::install, made-of::data:html, made-of::data:pdf, role::documentation, suite::debian
+installation-report: devel::bugtracker, hardware::detection, implemented-in::shell, interface::commandline, role::program, scope::utility, suite::debian
+installwatch: admin::package-management, role::program, scope::utility, use::monitor, use::organizing, works-with::software:source
+int-fiction-installer: game::rpg, use::gameplaying
+integrit: interface::daemon, network::server, role::program, security::integrity, use::checking, works-with::db
+intel2gas: devel::machinecode, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::i, use::converting
+intercal: devel::compiler, interface::commandline, role::program, scope::utility, works-with::software:source
+interchange: role::program, scope::utility
+interchange-cat-foundation: role::program, scope::utility
+interchange-doc: made-of::data:html, role::documentation, works-with::db
+interchange-ui: role::program, scope::utility
+inti-examples: devel::examples, devel::lang:c++, role::source, uitoolkit::gtk
+intltool: devel::i18n, implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, works-with-format::xml
+intltool-debian: devel::i18n, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, use::converting, works-with::text
+intuitively: hardware::laptop, interface::commandline, network::configuration, role::program, scope::utility, use::configuring
+inventor-clients: devel::library, interface::3d, network::client, role::program, uitoolkit::motif, works-with::3dmodel, x11::application
+inventor-data: devel::examples, devel::library, interface::3d, role::app-data, uitoolkit::motif, works-with::3dmodel
+inventor-demo: devel::examples, devel::library, interface::3d, uitoolkit::motif, works-with::3dmodel, x11::application
+inventor-dev: devel::library, interface::3d, role::devel-lib, uitoolkit::motif, works-with::3dmodel
+inventor-doc: devel::doc, devel::library, interface::3d, made-of::data:man, role::documentation, uitoolkit::motif, works-with::3dmodel
+iodbc: devel::lang:sql, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::configuring, works-with::db, x11::application
+iog: admin::logging, interface::commandline, network::configuration, role::program, scope::utility, use::monitor, works-with::image, works-with::image:vector
+iogerman: culture::german, made-of::data:dictionary, role::app-data, use::checking
+ion2: implemented-in::c, implemented-in::lua, interface::x11, role::program, x11::window-manager
+ion2-dev: devel::lang:c, devel::lang:lua, devel::library, implemented-in::c, implemented-in::lua, interface::x11, role::devel-lib, x11::window-manager
+ion2-doc: devel::doc, devel::lang:lua, interface::x11, made-of::data:html, made-of::data:pdf, role::documentation, x11::window-manager
+ion3: implemented-in::c, implemented-in::lua, interface::x11, role::program, scope::application, uitoolkit::athena, x11::window-manager
+ion3-dev: devel::lang:c, devel::lang:lua, devel::library, role::devel-lib, x11::window-manager
+ion3-doc: devel::doc, devel::lang:lua, interface::x11, made-of::data:html, made-of::data:pdf, role::documentation, x11::window-manager
+ion3-mod-ionflux: special::not-yet-tagged, special::not-yet-tagged::i
+ion3-scripts: implemented-in::lua, interface::commandline, role::plugin, use::configuring, x11::window-manager
+iozone3: admin::benchmarking, interface::commandline, role::program, use::checking
+ip2host: implemented-in::perl, interface::commandline, protocol::dns, role::program, scope::utility, security::log-analyzer, works-with::logfile
+ipac-ng: admin::accounting, admin::logging, network::firewall, role::program, scope::utility, security::firewall, use::configuring, works-with::logfile
+ipadic: works-with::dictionary
+ipautofw: network::firewall, security::firewall
+ipband: admin::monitoring, interface::daemon, network::server, protocol::ip, role::program, special::not-yet-tagged, special::not-yet-tagged::i, use::monitor, works-with::mail, works-with::network-traffic
+ipcalc: implemented-in::perl, interface::commandline, interface::web, role::program, scope::utility, use::converting, web::cgi
+ipchains: admin::configuring, implemented-in::c, interface::commandline, network::firewall, role::program, scope::utility, security::firewall
+ipcheck: implemented-in::python, interface::commandline, network::configuration, protocol::dns, protocol::http, protocol::ssl, role::program, scope::utility, use::configuring
+ipe: interface::x11, role::program, scope::application, uitoolkit::qt, use::editing, works-with-format::pdf, works-with-format::postscript, works-with::text, x11::application
+iperf: admin::monitoring, interface::commandline, interface::daemon, network::server, protocol::ip, protocol::ipv6, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::i, use::monitor, works-with::network-traffic
+ipfm: interface::commandline, protocol::ip, role::program, scope::utility, use::monitor, works-with::network-traffic
+ipfwadm: admin::configuring, implemented-in::c, interface::commandline, network::firewall, role::program, scope::utility, security::firewall
+ipgrab: interface::commandline, protocol::ip, role::program, scope::utility, use::monitor
+ipip: interface::daemon, network::server, network::vpn, protocol::ip, role::program, use::routing
+ipmasq: admin::configuring, interface::commandline, network::configuration, network::firewall, role::program, scope::utility, security::firewall
+ipmasqadm: admin::configuring, interface::commandline, network::configuration, network::firewall, role::program, scope::utility, security::firewall
+ipmenu: admin::configuring, interface::text-mode, network::firewall, security::firewall
+ipmitool: admin::hardware, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::i, use::configuring
+ipolish: culture::polish, made-of::data:dictionary, role::app-data, use::checking
+ipopd: implemented-in::c, interface::daemon, mail::pop, network::server, network::service, protocol::pop3, protocol::ssl, role::program, works-with::mail
+ipopd-ssl: implemented-in::c, interface::daemon, mail::pop, network::service, protocol::pop3, protocol::ssl, role::dummy, special::obsolete, works-with::mail
+iportuguese: culture::portuguese, made-of::data:dictionary, role::app-data, use::checking
+ippl: admin::logging, interface::daemon, network::server, protocol::ip, role::program, use::monitor
+ipppd: hardware::modem, interface::daemon, network::configuration, network::server, role::program, use::dialing
+iprelay: interface::daemon, network::configuration, network::server, role::program, use::configuring, use::proxying, works-with::network-traffic
+iprint: implemented-in::c, interface::commandline, role::program, scope::utility, use::converting
+iproute: admin::configuring, interface::commandline, protocol::ipv6, role::program, role::shared-lib, scope::utility, use::routing
+iproute-dev: admin::configuring, devel::library, interface::commandline, protocol::ipv6, role::devel-lib, use::routing
+iproute-doc: made-of::data:html, made-of::data:postscript, made-of::data:tex, role::documentation
+ipsc: interface::commandline, role::program, scope::utility, use::converting
+ipsec-tools: interface::commandline, protocol::ssl, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::i
+ipsvd: interface::daemon, network::server, network::service, role::program
+iptables: admin::configuring, interface::commandline, network::firewall, role::program, role::shared-lib, scope::utility, security::firewall, works-with::network-traffic
+iptables-dev: admin::configuring, devel::doc, devel::library, interface::commandline, network::firewall, role::devel-lib, security::firewall
+iptotal: admin::monitoring, interface::commandline, protocol::ip, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::i, use::monitor, works-with::network-traffic
+iptraf: admin::monitoring, interface::text-mode, protocol::ip, role::program, scope::utility, uitoolkit::ncurses, use::monitor
+iptstate: admin::kernel, admin::monitoring, interface::text-mode, network::firewall, protocol::ip, role::program, scope::utility, security::firewall, special::not-yet-tagged, special::not-yet-tagged::i, uitoolkit::ncurses
+iputils-arping: admin::monitoring, implemented-in::c, interface::commandline, network::scanner, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::i
+iputils-ping: admin::monitoring, implemented-in::c, interface::commandline, network::scanner, protocol::ipv6, role::program, scope::utility
+iputils-tracepath: admin::monitoring, implemented-in::c, interface::commandline, network::scanner, protocol::ipv6, role::program, scope::utility
+ipv6calc: implemented-in::c, interface::commandline, protocol::ip, protocol::ipv6, role::program, scope::utility, use::converting
+ipvsadm: admin::cluster, hardware::emulation, interface::commandline, network::hiavailability, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::i
+ipw2100-source: admin::kernel, role::source, use::driver
+ipw2200-source: admin::kernel, role::source, special::not-yet-tagged, special::not-yet-tagged::i, use::driver
+ipw3945d: admin::hardware, hardware::TODO, interface::daemon, network::TODO, role::TODO, scope::special:todo, scope::utility, use::driver
+ipx: admin::configuring, admin::kernel, interface::commandline, network::configuration, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::i, use::routing
+ipxripd: interface::daemon, network::configuration, network::server, role::program, use::routing
+ipython: devel::interpreter, devel::lang:python, interface::shell, role::program, scope::utility
+ipython-common: devel::interpreter, devel::lang:python, implemented-in::python, interface::shell, role::app-data, special::not-yet-tagged, special::not-yet-tagged::i
+irb: devel::interpreter, devel::lang:ruby, interface::commandline, role::dummy, special::meta
+irb1.6: devel::interpreter, devel::lang:ruby, interface::commandline, role::program, scope::utility
+irb1.8: devel::interpreter, devel::lang:ruby, interface::commandline, role::program, scope::utility
+irb1.9: special::not-yet-tagged, special::not-yet-tagged::i
+ircd: filetransfer::dcc, interface::daemon, protocol::irc, role::dummy, use::chatting
+ircd-hybrid: filetransfer::dcc, implemented-in::c, interface::daemon, network::server, protocol::irc, role::program, use::chatting
+ircd-irc2: filetransfer::dcc, implemented-in::c, interface::daemon, network::server, protocol::irc, role::program, use::chatting
+ircd-ircu: filetransfer::dcc, implemented-in::c, interface::daemon, network::server, protocol::irc, role::program, use::chatting
+ircii: filetransfer::dcc, interface::text-mode, protocol::irc, role::program, scope::utility, uitoolkit::ncurses, use::chatting
+ircmarkers: field::geography, implemented-in::perl, interface::commandline, role::program, scope::utility, use::TODO, use::entertaining, works-with-format::jpg, works-with-format::png, works-with::image, works-with::image:raster
+ircp: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::i, use::transmission
+irda-utils: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::i, use::configuring, use::transmission
+ire: game::adventure, role::program, use::gameplaying
+ire-ed: game::adventure, interface::text-mode, role::program, scope::utility, use::editing
+ire-rotj: game::adventure, role::app-data, use::gameplaying
+ire-the-flat: game::adventure, role::app-data, use::gameplaying
+iripdb: hardware::embedded, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::i, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, works-with::db
+irm: devel::lang:sql, implemented-in::php, interface::web, network::server, role::program, web::application, works-with::db
+irmp3: special::not-yet-tagged, special::not-yet-tagged::i, works-with-format::mp3, works-with::audio
+irmp3-ncurses: uitoolkit::ncurses
+iroffer: filetransfer::dcc, implemented-in::c, interface::commandline, network::server, protocol::irc, role::program, use::chatting, use::transmission
+irpas: special::not-yet-tagged, special::not-yet-tagged::i
+irqbalance: admin::hardware, interface::daemon, network::server, role::program
+irssi: interface::text-mode, protocol::irc, role::program, uitoolkit::ncurses, use::chatting
+irssi-dev: role::devel-lib
+irssi-plugin-icq: special::not-yet-tagged, special::not-yet-tagged::i
+irssi-scripts: filetransfer::dcc, implemented-in::perl, interface::text-mode, protocol::irc, role::app-data, use::chatting
+irssi-snapshot: filetransfer::dcc, interface::text-mode, network::client, protocol::ipv6, protocol::irc, role::program, use::chatting
+irssi-text: filetransfer::dcc, interface::text-mode, network::client, protocol::ipv6, protocol::irc, role::program, role::shared-lib, uitoolkit::ncurses, use::chatting
+irussian: culture::russian, made-of::data:dictionary, role::app-data, use::checking
+isag: admin::accounting, admin::logging, implemented-in::tcl, interface::commandline, role::program, uitoolkit::tk, use::monitor, works-with::image, works-with::image:vector
+isakmpd: interface::daemon, network::server, protocol::ssl, role::program, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::i
+isapnptools: admin::hardware, interface::commandline, use::configuring
+isdexport: devel::lang:c++, implemented-in::c++, role::program
+isdnactivecards: hardware::modem, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::configuring, use::dialing
+isdnbutton: hardware::modem, implemented-in::c, interface::x11, role::program, scope::utility, uitoolkit::athena, use::configuring, use::monitor, x11::applet
+isdneurofile: hardware::modem, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::dialing, use::transmission
+isdnlog: admin::logging, hardware::modem, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::i
+isdnlog-data: admin::logging, hardware::modem, role::app-data, special::not-yet-tagged, special::not-yet-tagged::i
+isdnutils: hardware::modem, role::metapackage, use::dialing
+isdnutils-base: hardware::modem, interface::commandline, role::program, scope::utility, uitoolkit::ncurses, use::dialing
+isdnutils-doc: culture::german, hardware::modem, role::documentation, use::dialing
+isdnutils-xtools: hardware::modem, interface::x11, role::program, scope::utility, uitoolkit::athena, use::dialing, x11::application
+isdnvbox: hardware::modem, role::metapackage, use::dialing
+isdnvboxclient: hardware::modem, interface::text-mode, network::client, role::program, uitoolkit::ncurses, use::dialing
+isdnvboxserver: hardware::modem, interface::daemon, network::server, role::program, use::dialing
+iselect: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::searching, works-with::text
+isic: interface::commandline, role::program, scope::utility, security::ids, use::checking, use::transmission
+iso-codes: devel::i18n, role::data
+isomd5sum: implemented-in::c
+isoqlog: implemented-in::c, role::program, scope::utility, security::log-analyzer, special::not-yet-tagged, special::not-yet-tagged::i, works-with-format::html, works-with::logfile, works-with::text
+ispanish: culture::spanish, made-of::data:dictionary, role::app-data, use::checking
+ispell: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, works-with::dictionary
+istanbul: implemented-in::python, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::monitor, works-with-format::oggtheora, works-with::audio, works-with::video, x11::application
+iswedish: culture::swedish, made-of::data:dictionary, role::app-data, use::checking
+iswiss: culture::german, made-of::data:dictionary, role::app-data, use::checking
+isync: interface::commandline, mail::imap, protocol::imap, protocol::ssl, role::program, scope::utility, use::synchronizing, works-with::mail
+itagalog: made-of::data:dictionary, role::app-data, use::checking
+italc-client: uitoolkit::qt
+italc-master: uitoolkit::qt
+itcl3: devel::lang:tcl, devel::library, implemented-in::c, implemented-in::tcl, role::app-data, role::shared-lib
+itcl3-dev: devel::lang:tcl, devel::library, role::devel-lib
+itcl3-doc: devel::doc, devel::lang:tcl, made-of::data:man, role::documentation
+itcl3.0: devel::lang:tcl, devel::library, implemented-in::c, implemented-in::tcl, role::app-data
+itcl3.0-dev: devel::lang:tcl, devel::library, role::devel-lib
+itcl3.1: devel::lang:tcl, devel::library, implemented-in::c, implemented-in::tcl, role::app-data
+itcl3.1-dev: devel::lang:tcl, devel::library, role::devel-lib
+itcl3.1-doc: devel::doc, devel::lang:tcl, made-of::data:man, role::documentation
+itk3: devel::lang:tcl, devel::library, implemented-in::c, implemented-in::tcl, role::app-data, uitoolkit::tk
+itk3-dev: devel::lang:tcl, devel::library, role::devel-lib, uitoolkit::tk
+itk3-doc: devel::doc, devel::lang:tcl, made-of::data:man, role::documentation, uitoolkit::tk
+itk3.0: devel::lang:tcl, devel::library, implemented-in::c, implemented-in::tcl, role::app-data, uitoolkit::tk
+itk3.0-dev: devel::lang:tcl, devel::library, role::devel-lib, uitoolkit::tk
+itk3.1: devel::lang:tcl, devel::library, implemented-in::c, implemented-in::tcl, role::app-data, uitoolkit::tk
+itk3.1-dev: devel::lang:tcl, devel::library, role::devel-lib, uitoolkit::tk
+itk3.1-doc: devel::doc, devel::lang:tcl, made-of::data:man, role::documentation, uitoolkit::tk
+itools: implemented-in::perl, interface::commandline, role::program, scope::utility, use::timekeeping
+itrans-doc: made-of::data:html, made-of::data:postscript, role::documentation
+iukrainian: culture::ukrainian, made-of::data:dictionary, role::app-data, use::checking
+ivi: devel::debugger, field::electronics, interface::x11, role::program, scope::utility, uitoolkit::tk, use::checking, use::viewing, x11::application
+ivman: admin::filesystem, admin::hardware, hardware::detection, hardware::storage, implemented-in::python, interface::commandline, interface::daemon, role::program, scope::utility
+ivritex: culture::hebrew, role::plugin, use::typesetting, works-with-format::tex, works-with::text
+ivtools-bin: interface::x11, role::program, scope::application, use::editing, works-with::image, works-with::image:vector, x11::application
+ivtools-dev: devel::library, interface::x11, role::devel-lib, use::editing, works-with::image, works-with::image:vector, x11::application
+ivtools-interviews: devel::lang:c++, devel::library, interface::x11, role::shared-lib, x11::application
+ivtools-unidraw: devel::library, interface::x11, role::shared-lib, use::editing, works-with::image:vector, x11::application
+iwidgets3.1: devel::lang:tcl, devel::library, implemented-in::tcl, interface::x11, role::app-data, uitoolkit::tk, x11::application
+iwidgets3.1-doc: devel::doc, devel::lang:tcl, interface::x11, role::documentation, uitoolkit::tk, x11::application
+iwidgets4: devel::lang:tcl, devel::library, implemented-in::tcl, interface::x11, role::app-data, uitoolkit::tk, x11::application
+iwidgets4-doc: devel::doc, devel::lang:tcl, interface::x11, role::documentation, uitoolkit::tk, x11::application
+ixbiff: interface::daemon, mail::notification, role::program, scope::utility, use::monitor, works-with::mail, x11::application
+ja-trans: culture::japanese, devel::i18n, role::app-data
+jabber: interface::daemon, network::server, protocol::ipv6, protocol::jabber, role::program, use::chatting, works-with-format::xml
+jabber-aim: interface::daemon, protocol::jabber, protocol::oscar, role::plugin, use::chatting
+jabber-common: interface::daemon, protocol::ipv6, protocol::jabber, role::app-data, use::chatting
+jabber-dev: devel::library, protocol::ipv6, protocol::jabber, protocol::msn-messenger, protocol::oscar, protocol::yahoo-messenger, role::devel-lib, use::chatting
+jabber-irc: interface::daemon, network::server, protocol::irc, protocol::jabber, role::program, use::chatting
+jabber-jit: interface::daemon, protocol::jabber, protocol::oscar, role::plugin, use::chatting
+jabber-jud: admin::user-management, interface::daemon, protocol::jabber, use::chatting
+jabber-msn: interface::daemon, protocol::jabber, protocol::msn-messenger, role::plugin, use::chatting
+jabber-muc: interface::daemon, protocol::jabber, protocol::ssl, role::plugin, use::chatting
+jabber-yahoo: interface::daemon, protocol::jabber, protocol::yahoo-messenger, role::plugin, use::chatting
+jablicator: admin::cluster, admin::configuring, admin::package-management, devel::packaging, interface::commandline, role::program, scope::utility, suite::debian, use::configuring, use::synchronizing, works-with::software:package
+jabref: implemented-in::java, interface::x11, role::program, use::editing, works-with-format::bib, works-with-format::tex, x11::application
+jack: hardware::storage, hardware::storage:cd, implemented-in::python, interface::commandline, role::program, scope::utility, works-with-format::iso9660, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::archive, works-with::audio
+jack-rack: interface::x11, role::plugin, sound::mixer, uitoolkit::gtk, works-with::audio, x11::application
+jack-tools: interface::x11, network::client, role::program, sound::player, use::playing, works-with::audio, x11::application
+jackbeat: uitoolkit::gtk
+jackd: interface::commandline, interface::daemon, network::client, network::server, role::program, sound::player, use::playing, works-with::audio
+jackeq: implemented-in::c, interface::x11, role::program, scope::utility, sound::mixer, uitoolkit::gtk, x11::application
+jade: interface::commandline, use::editing, works-with-format::sgml, works-with-format::tex, works-with::text
+jadetex: use::converting, use::text-formatting, works-with-format::pdf, works-with-format::sgml, works-with-format::tex, works-with-format::xml, works-with::text
+jags: filetransfer::smb, interface::x11, network::client, protocol::smb, role::program, suite::samba, uitoolkit::gtk, use::browsing, x11::application
+jail: admin::logging, implemented-in::c, interface::daemon, network::server, role::program, works-with::logfile
+jailer: admin::configuring, implemented-in::perl, interface::commandline, role::program, scope::utility
+jailtool: admin::configuring, implemented-in::perl, interface::commandline, role::program, scope::utility
+jam: devel::buildtools, interface::commandline, role::program, scope::utility, works-with::software:source
+jamin: implemented-in::c, interface::x11, role::program, scope::utility, sound::mixer, uitoolkit::gtk, use::editing, works-with::audio, x11::application
+jamvm: devel::lang:java, devel::runtime, role::shared-lib
+jargon: made-of::data:info, role::data
+jargon-text: role::data
+jasmin-sable: devel::interpreter, devel::lang:java, interface::commandline, role::program, scope::utility
+java-common: devel::doc, devel::lang:java, role::documentation, special::auto-inst-parts
+java-gcj-compat: devel::lang:java, implemented-in::java
+java-gcj-compat-dev: devel::lang:java, devel::library, implemented-in::java, role::devel-lib
+java-package: devel::buildtools, devel::debian, devel::lang:java, implemented-in::shell, role::program, works-with::software:package, works-with::software:source
+java2html: devel::lang:c++, devel::lang:java, devel::prettyprint, interface::commandline, interface::web, use::converting, web::cgi, works-with-format::html, works-with::software:source, works-with::text
+javacc: devel::code-generator, implemented-in::java, interface::commandline, role::program, scope::utility
+jaxml: devel::lang:python, implemented-in::python, interface::commandline, role::program, scope::utility, use::editing, works-with-format::xml
+jazip: admin::filesystem, admin::hardware, hardware::storage, interface::commandline, interface::x11, role::program, scope::utility, x11::application
+jbibtex-base: culture::japanese, interface::commandline, role::app-data, special::not-yet-tagged, special::not-yet-tagged::j, works-with-format::tex, works-with::text
+jbibtex-bin: culture::japanese, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::j, works-with-format::bib, works-with-format::tex, works-with::text
+jbidwatcher: implemented-in::java, role::program, scope::application
+jbofihe: devel::code-generator, implemented-in::c, interface::commandline, role::program, scope::utility, use::checking, works-with::text
+jde: suite::emacs, use::editing
+jdresolve: implemented-in::perl, protocol::dns, role::program, scope::utility, security::log-analyzer, works-with::logfile
+jed: devel::editor, interface::text-mode, role::program, scope::application, use::editing, works-with::text
+jed-common: devel::editor, role::app-data, special::auto-inst-parts, use::editing, works-with::text
+jed-extra: devel::editor, devel::library, role::devel-lib, use::editing, works-with::text
+jed-sl: devel::editor, interface::text-mode, role::source, use::editing, works-with::text
+jedstate: devel::editor, interface::text-mode, role::plugin, use::editing, works-with::text
+jered: devel::editor, interface::text-mode, uitoolkit::ncurses, use::editing, works-with::text
+jesred: interface::daemon, network::server, protocol::http, role::program, use::proxying
+jester: game::board, interface::x11, role::program, use::gameplaying, x11::application
+jetty: filetransfer::http, implemented-in::java, interface::daemon, network::server, role::program, web::appserver, web::cgi, web::server
+jetty-extra: filetransfer::http, implemented-in::java, interface::daemon, network::server, role::program, web::server
+jfbterm: culture::chinese, culture::japanese, culture::korean, culture::taiwanese, interface::framebuffer, role::program, scope::utility, use::login
+jffnms: admin::monitoring, implemented-in::php, interface::web, network::configuration, network::server, protocol::snmp, role::program, use::monitor
+jflex: devel::code-generator, devel::lang:java, interface::commandline, role::program, scope::utility
+jfsutils: admin::filesystem, interface::commandline, role::program, scope::utility
+jftpgw: filetransfer::ftp, interface::daemon, network::server, protocol::ftp, role::program, use::proxying
+jgraph: implemented-in::c, interface::commandline, role::program, scope::utility, use::converting, works-with-format::postscript, works-with::text
+jhcore: game::mud, role::app-data, use::gameplaying
+jhead: hardware::camera, implemented-in::c, interface::commandline, role::program, scope::utility, works-with-format::jpg, works-with::image, works-with::image:raster
+jigdo: filetransfer::ftp, filetransfer::http, interface::commandline, interface::x11, network::client, protocol::ftp, protocol::http, role::program, uitoolkit::gtk, use::downloading, works-with-format::iso9660, works-with::archive, x11::application
+jigdo-file: filetransfer::ftp, filetransfer::http, interface::commandline, protocol::ftp, protocol::http, role::program, scope::utility, use::downloading, works-with-format::iso9660, works-with::archive, x11::application
+jigit: hardware::storage, hardware::storage:cd, hardware::storage:dvd, implemented-in::c, implemented-in::perl, implemented-in::shell, interface::commandline, role::program, scope::utility, special::completely-tagged, web::cgi, works-with-format::iso9660, works-with::archive
+jigl: implemented-in::perl, interface::commandline, interface::web, role::program, use::organizing, use::viewing, works-with-format::jpg, works-with::image:raster
+jikes: devel::compiler, devel::lang:java, interface::commandline, role::program, scope::utility, works-with::software:source
+jikes-classpath: devel::compiler, devel::lang:java, interface::commandline, role::plugin, works-with::software:source
+jikes-gij: devel::compiler, devel::lang:java, interface::commandline, role::plugin, works-with::software:source
+jikes-kaffe: devel::compiler, devel::lang:java, interface::commandline, role::plugin, works-with::software:source
+jikes-sablevm: devel::compiler, devel::lang:java, interface::commandline, role::plugin, works-with::software:source
+jikes-sun: devel::lang:java
+jitterbug: devel::bugtracker, interface::web, mail::smtp, network::server, protocol::http, protocol::smtp, role::program, web::cgi, works-with-format::html, works-with::bugs, works-with::mail, works-with::text
+jlatex209-base: culture::japanese, role::plugin, special::obsolete, works-with-format::tex, works-with::text
+jlatex209-bin: culture::japanese, role::program, special::obsolete, works-with-format::tex, works-with::text
+jless: culture::japanese, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::viewing, works-with::text
+jlex: devel::code-generator, devel::lang:java, interface::commandline, role::program, scope::utility, works-with::software:source
+jlha-utils: implemented-in::java, interface::commandline, role::program, scope::utility, use::compressing, works-with::archive
+jlint: devel::lang:java, devel::testing-qa, interface::commandline, role::program, scope::utility, use::checking, works-with::software:source
+jlint-doc: devel::doc, devel::lang:java, devel::testing-qa, interface::commandline, made-of::data:html, made-of::data:info, made-of::data:pdf, role::documentation, use::checking, works-with::software:source
+jmeter: admin::benchmarking, devel::lang:java, devel::profiler, implemented-in::java
+jmk: devel::buildtools, implemented-in::java, interface::commandline, role::program, scope::utility
+jmon: admin::cluster, admin::monitoring, interface::daemon, network::server, protocol::ip, role::program, uitoolkit::ncurses, use::monitor
+jmp: devel::lang:java, devel::profiler, uitoolkit::gtk
+jmpost: culture::japanese, special::not-yet-tagged, special::not-yet-tagged::j, use::editing, works-with-format::postscript, works-with-format::tex, works-with::image, works-with::image:vector, works-with::text
+jnethack: culture::japanese, game::rpg:rogue, interface::commandline, interface::x11, role::program, uitoolkit::athena, uitoolkit::gtk, uitoolkit::ncurses, use::gameplaying, x11::application
+jnettop: admin::monitoring, interface::text-mode, protocol::ip, uitoolkit::ncurses, use::monitor
+joe: interface::text-mode, role::program, scope::application, uitoolkit::ncurses, use::editing, works-with::text
+john: implemented-in::c, interface::commandline, role::program, scope::utility, security::authentication, use::checking
+jokosher: implemented-in::python, interface::x11, role::program, scope::application, sound::mixer, sound::recorder, uitoolkit::gtk, use::editing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, x11::application
+jove: devel::editor, implemented-in::c, interface::text-mode, role::program, scope::application, uitoolkit::ncurses, use::editing
+joy2key: hardware::input:joystick
+joystick: admin::configuring, admin::hardware, hardware::input, hardware::input:joystick, role::program, scope::utility, use::configuring
+jpeginfo: interface::commandline, role::program, scope::utility, use::checking, works-with-format::jpg, works-with::image, works-with::image:raster
+jpegoptim: implemented-in::c, interface::commandline, role::program, scope::utility, use::compressing, works-with::image:raster
+jpegpixi: field::astronomy, implemented-in::c, interface::commandline, role::program, scope::utility, works-with-format::jpg, works-with::image, works-with::image:raster
+jpilot: hardware::embedded, implemented-in::c, interface::commandline, role::program, scope::application, uitoolkit::gtk, use::synchronizing
+jpilot-backup: admin::backup, hardware::embedded, interface::commandline, interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+jpilot-mail: hardware::embedded, uitoolkit::gtk, works-with::mail
+jpilot-plugins: hardware::embedded, role::plugin, works-with::pim, x11::application
+jpilot-syncmal: hardware::embedded, interface::commandline, interface::x11, role::plugin, uitoolkit::gtk, use::synchronizing, x11::application
+jsboard: culture::korean, devel::lang:sql, implemented-in::php, interface::web, network::server, role::program, use::chatting, web::application, works-with::db
+jsboard-theme-aicom-ko: culture::korean, devel::lang:sql, interface::web, made-of::data:icons, role::app-data, use::chatting, web::application, works-with::db, x11::theme
+jsboard-theme-debian-ko: culture::korean, devel::lang:sql, interface::web, made-of::data:icons, role::app-data, suite::debian, use::chatting, web::application, works-with::db, x11::theme
+jsboard-theme-diary-en: devel::lang:sql, interface::web, made-of::data:icons, role::app-data, use::chatting, web::application, works-with::db, x11::theme
+jsboard-theme-diary-ko: culture::korean, devel::lang:sql, interface::web, made-of::data:icons, role::app-data, use::chatting, web::application, works-with::db, x11::theme
+jsboard-theme-trash-en: devel::lang:sql, interface::web, made-of::data:icons, role::app-data, use::chatting, web::application, works-with::db, x11::theme
+jsboard-theme-trash-ko: culture::korean, devel::lang:sql, interface::web, made-of::data:icons, role::app-data, use::chatting, web::application, works-with::db, x11::theme
+jsboard-theme-wizz-ko: culture::korean, devel::lang:sql, interface::web, made-of::data:icons, role::app-data, use::chatting, web::application, works-with::db, x11::theme
+jscalibrator: admin::hardware, hardware::input, hardware::input:joystick, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::configuring, x11::application
+jslaunch: hardware::input:joystick, implemented-in::c, interface::daemon, role::program, scope::utility
+jsmath: field::chemistry, field::mathematics, field::physics, implemented-in::ecmascript, interface::web, role::program, role::special:todo, scope::utility, suite::apache, use::converting, use::text-formatting, use::viewing, web::browser, web::scripting, works-with-format::tex, works-with::font, works-with::text
+jsmath-fonts: role::app-data
+jsmath-fonts-sprite: role::app-data
+jspwiki: implemented-in::java, interface::web, special::completely-tagged, web::wiki
+jsvc: devel::lang:java, interface::daemon, role::program, scope::utility
+jsvc-dev: devel::lang:java, devel::library, interface::daemon, role::devel-lib
+jswat: devel::debugger, devel::lang:java, special::obsolete
+jswat-doc: devel::debugger, devel::lang:java, role::documentation
+jswat2: devel::debugger, devel::lang:java
+jta: implemented-in::java, protocol::ip, role::program, scope::utility, use::login, x11::applet
+jtex-base: culture::japanese, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::j, use::editing, works-with-format::tex, works-with::text
+jtex-bin: culture::japanese, interface::commandline, special::not-yet-tagged, special::not-yet-tagged::j, use::editing, works-with-format::tex, works-with::text
+juic: devel::compiler, devel::lang:java, devel::library, interface::commandline, uitoolkit::qt, works-with::software:source
+juice: interface::text-mode, role::program, scope::utility, sound::player, uitoolkit::ncurses, use::browsing, use::editing, use::organizing, works-with-format::mp3, works-with::audio
+juk: interface::x11, role::program, scope::application, suite::kde, uitoolkit::qt, use::organizing, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, x11::application
+juke: interface::text-mode, role::program, scope::utility, sound::player, uitoolkit::ncurses, use::playing, works-with::audio
+jukebox-mercury: admin::filesystem, hardware::storage, hardware::storage:cd, interface::commandline, role::program, scope::utility
+juman: culture::japanese, field::linguistics, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::j, use::converting, works-with::text
+juman-dic: culture::japanese, field::linguistics, made-of::data:dictionary, role::app-data, special::not-yet-tagged, special::not-yet-tagged::j
+jumpnbump: game::arcade, game::platform, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+jumpnbump-levels: game::arcade, game::platform, interface::x11, role::app-data, scope::utility, use::gameplaying, x11::application
+junior-arcade: game::arcade, junior::meta, role::dummy, role::metapackage, special::meta, use::gameplaying
+junior-art: interface::x11, junior::meta, role::metapackage, special::meta, use::editing, works-with::image, works-with::image:raster, x11::application
+junior-doc: junior::meta, made-of::data:html, made-of::data:postscript, role::documentation
+junior-games-card: game::card, interface::x11, junior::meta, role::dummy, role::metapackage, special::meta, use::gameplaying, x11::application
+junior-games-gl: game::arcade, interface::3d, junior::meta, role::dummy, role::metapackage, special::meta, use::gameplaying, x11::application
+junior-games-net: interface::x11, junior::meta, network::service, role::dummy, role::metapackage, special::meta, use::gameplaying, x11::application
+junior-games-sim: interface::x11, junior::meta, role::dummy, role::metapackage, special::meta, use::gameplaying, x11::application
+junior-games-text: interface::text-mode, junior::meta, role::dummy, role::metapackage, special::meta, use::gameplaying
+junior-gnome: interface::x11, junior::meta, role::metapackage, special::meta, suite::gnome, uitoolkit::gtk, x11::application
+junior-internet: interface::x11, junior::meta, protocol::http, role::metapackage, special::meta, use::browsing, web::browser, x11::application
+junior-kde: interface::x11, junior::meta, role::metapackage, special::meta, suite::kde, uitoolkit::qt, x11::application
+junior-math: field::mathematics, junior::meta, role::metapackage, special::meta, use::learning
+junior-programming: devel::lang:python, junior::meta, role::metapackage, special::meta
+junior-puzzle: game::puzzle, interface::x11, junior::meta, role::dummy, role::metapackage, special::meta, use::gameplaying, x11::application
+junior-sound: junior::meta, role::metapackage, special::meta, use::playing, works-with::audio
+junior-system: junior::meta, role::metapackage, special::meta, use::browsing, works-with::software:running
+junior-toys: game::toys, interface::x11, junior::meta, role::dummy, role::metapackage, special::meta, use::entertaining, x11::application
+junior-typing: game::typing, junior::meta, role::dummy, role::metapackage, special::meta, use::gameplaying, use::learning
+junior-writing: junior::meta, role::metapackage, special::meta, use::checking, use::editing, works-with::dtp, works-with::text
+junit: devel::lang:java, devel::testing-qa, interface::commandline, role::program, scope::utility
+junit-doc: devel::doc, devel::examples, devel::lang:java, interface::commandline, role::documentation
+junkfilter: mail::filters, works-with::mail
+jvim-canna: culture::japanese, devel::editor, interface::text-mode, role::program, scope::application, uitoolkit::ncurses, use::editing, works-with::text
+jvim-doc: culture::japanese, devel::editor, interface::text-mode, role::documentation, use::editing, works-with::text
+jwhois: interface::commandline, network::client, protocol::dns, role::program, suite::gnu, use::searching
+jwm: implemented-in::c, interface::x11, role::program, scope::utility, uitoolkit::athena, x11::window-manager
+jython: devel::lang:java, devel::lang:python, implemented-in::python, interface::commandline, role::program, scope::utility, works-with::software:source
+jython-doc: devel::doc, devel::lang:java, devel::lang:python, implemented-in::python, role::documentation
+jzip: devel::interpreter, game::adventure, implemented-in::c, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::gameplaying
+k3b: hardware::storage, hardware::storage:cd, hardware::storage:dvd, implemented-in::c++, interface::x11, role::program, scope::application, suite::kde, uitoolkit::qt, use::storing, works-with-format::iso9660, works-with::archive, x11::application
+k3b-i18n: hardware::storage, hardware::storage:cd, role::app-data, suite::kde, uitoolkit::qt, use::storing, works-with-format::iso9660, works-with::archive, x11::application
+k3blibs: hardware::storage:cd, role::app-data, suite::kde, uitoolkit::qt, use::storing, works-with-format::iso9660, works-with::archive, x11::application
+k3blibs-dev: devel::library, hardware::storage:cd, role::devel-lib, suite::kde, use::storing, works-with-format::iso9660, works-with::archive
+k3d: implemented-in::c++, interface::x11, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::k, uitoolkit::gtk, use::editing, works-with::3dmodel, x11::application
+k3d-dev: role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::k, use::editing, works-with::3dmodel
+k3d-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::k, use::editing, works-with::3dmodel
+k3dsurf: uitoolkit::qt
+k6fftwgel-dev: devel::library, field::mathematics, implemented-in::fortran, role::devel-lib, works-with::image, works-with::image:raster
+k6fftwgel2: devel::library, field::mathematics, implemented-in::fortran, role::shared-lib, works-with::image, works-with::image:raster
+k7fftwgel-dev: devel::library, field::mathematics, implemented-in::fortran, role::devel-lib, works-with::image, works-with::image:raster
+k7fftwgel2: devel::library, field::mathematics, implemented-in::fortran, role::shared-lib, works-with::image, works-with::image:raster
+kaboodle: interface::x11, role::program, scope::application, sound::player, suite::kde, uitoolkit::qt, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, x11::application
+kaddressbook: interface::x11, role::program, scope::application, suite::kde, uitoolkit::qt, works-with::pim, x11::application
+kaddressbook-plugins: interface::x11, role::plugin, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, works-with::pim, x11::application
+kaffe: devel::interpreter, devel::lang:java, interface::commandline, role::program, scope::utility
+kaffe-common: devel::lang:java, devel::runtime, role::app-data, special::auto-inst-parts
+kaffe-dev: devel::lang:java, role::devel-lib
+kaffe-doc: devel::doc, devel::lang:java, role::documentation, special::not-yet-tagged, special::not-yet-tagged::k
+kaffe-jthreads: devel::lang:java, devel::runtime, role::shared-lib, uitoolkit::gtk
+kaffe-pthreads: devel::lang:java, devel::runtime, role::shared-lib, uitoolkit::gtk
+kaffe-pthreads-profile: devel::lang:java, devel::runtime, role::shared-lib
+kaffeine: interface::x11, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::gtk, uitoolkit::qt, use::playing, works-with::video, x11::application
+kaffeine-mozilla: interface::x11, role::plugin, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, suite::mozilla, uitoolkit::gtk, use::playing, works-with::video, x11::application
+kakasi: culture::japanese, special::not-yet-tagged, special::not-yet-tagged::k
+kakasi-dic: culture::japanese, made-of::data:dictionary, role::app-data, special::not-yet-tagged, special::not-yet-tagged::k
+kalarm: interface::x11, role::program, scope::application, suite::kde, uitoolkit::qt, use::organizing, use::timekeeping, works-with::mail, works-with::pim, x11::application
+kalgebra: uitoolkit::qt
+kali: game::toys, interface::x11, role::program, scope::utility, use::gameplaying, x11::application
+kalign: field::biology, implemented-in::c, interface::commandline, role::program, scope::utility, works-with-format::plaintext, works-with::special:todo
+kalzium: field::chemistry, interface::x11, role::program, suite::kde, uitoolkit::qt, use::browsing, use::learning, x11::application
+kamera: hardware::camera, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::viewing, works-with::image, works-with::image:raster, x11::application
+kanadic: culture::japanese, use::learning, x11::application
+kanagram: interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, use::learning, works-with::text, x11::application
+kanatest: culture::japanese, interface::x11, special::not-yet-tagged, special::not-yet-tagged::k, uitoolkit::gtk, use::learning, x11::application
+kandy: interface::commandline, interface::x11, role::program, suite::kde, uitoolkit::qt, works-with::pim, x11::application
+kanjidic: culture::japanese, made-of::data:dictionary, role::app-data, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k
+kanjipad: culture::japanese, implemented-in::c, interface::x11, uitoolkit::gtk
+kanjisaver: uitoolkit::qt
+kannasaver: uitoolkit::qt
+kannel: special::not-yet-tagged, special::not-yet-tagged::k
+kannel-dev: role::devel-lib
+kannel-docs: role::documentation, special::not-yet-tagged, special::not-yet-tagged::k
+kannel-extras: special::not-yet-tagged, special::not-yet-tagged::k
+kappfinder: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::browsing, use::searching, works-with::file, x11::application
+kapptemplate: devel::examples, devel::lang:c++, suite::kde
+kaptain: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::application
+kaquarium: game::toys, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, x11::applet, x11::application
+karamba: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::gtk, uitoolkit::qt, x11::application
+karbon: interface::x11, role::program, scope::application, suite::kde, uitoolkit::qt, use::editing, works-with::image:vector, x11::application
+karm: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::organizing, use::timekeeping, works-with::pim, x11::application
+karpski: interface::x11, network::scanner, protocol::ethernet, role::program, scope::utility, uitoolkit::gtk, x11::application
+karrigell-doc: role::documentation
+kasablanca: filetransfer::ftp, implemented-in::c++, protocol::ftp, role::program, uitoolkit::qt
+kasteroids: game::arcade, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+kasumi: uitoolkit::gtk
+katapult: role::program, suite::kde, uitoolkit::qt, x11::application
+kate: interface::x11, role::program, scope::application, scope::utility, suite::kde, uitoolkit::qt, use::editing, x11::application
+kate-plugins: interface::x11, role::plugin, suite::kde, uitoolkit::qt, use::editing, x11::application
+katomic: game::puzzle, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+katoob: culture::arabic, culture::farsi, culture::hebrew, interface::x11, special::not-yet-tagged, special::not-yet-tagged::k, uitoolkit::gtk, use::editing, works-with::text, x11::application
+kaudiocreator: hardware::storage, hardware::storage:cd, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::storing, works-with::audio, x11::application
+kaya: implemented-in::haskell, uitoolkit::ncurses
+kazehakase: interface::x11, role::program, scope::application, uitoolkit::gtk, web::browser, x11::application
+kbabel: devel::i18n, interface::x11, made-of::data:dictionary, role::app-data, role::program, scope::utility, suite::kde, uitoolkit::qt, use::editing, works-with::dictionary, x11::application
+kbabel-dev: devel::i18n, devel::library, role::devel-lib, suite::kde, uitoolkit::qt, use::editing
+kbackgammon: game::board, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+kbarcode: special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, use::printing
+kbattleship: game::board, implemented-in::c++, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+kbd: admin::configuring, hardware::input:keyboard, role::program, scope::utility, works-with::font
+kbd-compat: works-with::font
+kbear: filetransfer::ftp, interface::x11, network::client, protocol::ftp, role::program, suite::kde, uitoolkit::qt, use::downloading, x11::application
+kbedic: uitoolkit::qt, works-with::dictionary
+kbfx: uitoolkit::qt
+kbibtex: interface::x11, uitoolkit::qt, works-with-format::bib, x11::application
+kbiff: interface::x11, mail::notification, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, uitoolkit::qt, x11::applet, x11::application
+kblackbox: game::puzzle, interface::x11, role::program, suite::kde, use::gameplaying, x11::application
+kboincspy: implemented-in::c++, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::configuring, use::monitor, use::viewing, x11::application
+kboincspy-dev: devel::library, implemented-in::c++, role::devel-lib
+kbounce: game::arcade, implemented-in::c++, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+kbruch: field::mathematics, interface::x11, role::program, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, use::learning, x11::application
+kbstate: hardware::input:keyboard, role::program, scope::utility, x11::application
+kbugbuster: devel::bugtracker, interface::x11, role::program, suite::kde, uitoolkit::qt, x11::application
+kcachegrind: devel::profiler, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::application
+kcachegrind-converters: devel::profiler, interface::x11, role::plugin, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, x11::application
+kcalc: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::application
+kcc: culture::japanese, special::not-yet-tagged, special::not-yet-tagged::k
+kcd: hardware::storage:cd, interface::x11, role::program, scope::utility, sound::player, suite::kde, uitoolkit::qt, use::playing, works-with::audio, x11::applet, x11::application
+kcdlabel: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::application
+kcemirror: hardware::input, hardware::input:mouse, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, uitoolkit::qt, x11::application
+kcharselect: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::application
+kchart: interface::x11, role::program, scope::application, suite::kde, uitoolkit::qt, use::editing, works-with::image, works-with::image:raster, x11::application
+kcheckgmail: interface::x11, mail::notification, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, works-with::mail, x11::application
+kchmviewer: suite::kde, uitoolkit::qt
+kcmlinuz: admin::kernel, devel::buildtools, interface::x11, suite::kde, uitoolkit::qt, x11::application
+kcoloredit: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::editing, works-with::image, works-with::image:raster, x11::application
+kcontrol: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::configuring, x11::application
+kcpuload: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::monitor, x11::applet, x11::application
+kcron: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::editing, x11::application
+kdat: admin::backup, hardware::storage, interface::x11, role::program, suite::kde, uitoolkit::qt, use::storing, use::viewing, works-with::file, x11::application
+kdbg: devel::debugger, devel::lang:c, interface::x11, role::program, suite::kde, uitoolkit::qt, x11::application
+kdc2tiff: hardware::camera, special::not-yet-tagged, special::not-yet-tagged::k
+kde: role::metapackage, special::meta, suite::kde, uitoolkit::qt
+kde-amusements: role::dummy, role::metapackage, special::meta, suite::kde, uitoolkit::qt, use::gameplaying
+kde-core: role::metapackage, special::meta, suite::kde, uitoolkit::qt
+kde-devel: devel::ide, role::metapackage, special::meta, suite::kde, uitoolkit::qt
+kde-devel-extras: devel::ide, role::metapackage, special::meta, suite::kde
+kde-extras: interface::x11, role::metapackage, special::meta, suite::kde, uitoolkit::qt, x11::application
+kde-guidance: uitoolkit::qt
+kde-i18n-af: culture::afrikaans, suite::kde, uitoolkit::qt
+kde-i18n-ar: culture::arabic, suite::kde, uitoolkit::qt
+kde-i18n-az: culture::TODO, suite::kde
+kde-i18n-bg: culture::bulgarian, suite::kde, uitoolkit::qt
+kde-i18n-bn: culture::bengali, suite::kde, uitoolkit::qt
+kde-i18n-br: culture::TODO, suite::kde
+kde-i18n-bs: culture::bosnian, suite::kde, uitoolkit::qt
+kde-i18n-ca: culture::catalan, suite::kde, uitoolkit::qt
+kde-i18n-cs: culture::czech, suite::kde, uitoolkit::qt
+kde-i18n-cy: culture::welsh, suite::kde, uitoolkit::qt
+kde-i18n-da: culture::danish, suite::kde, uitoolkit::qt
+kde-i18n-de: culture::german, suite::kde, uitoolkit::qt
+kde-i18n-el: culture::greek, suite::kde, uitoolkit::qt
+kde-i18n-engb: culture::TODO, suite::kde, uitoolkit::qt
+kde-i18n-eo: culture::esperanto, suite::kde, uitoolkit::qt
+kde-i18n-es: culture::spanish, suite::kde, uitoolkit::qt
+kde-i18n-et: culture::estonian, suite::kde, uitoolkit::qt
+kde-i18n-eu: culture::basque, suite::kde, uitoolkit::qt
+kde-i18n-fa: culture::farsi, suite::kde, uitoolkit::qt
+kde-i18n-fi: culture::finnish, suite::kde, uitoolkit::qt
+kde-i18n-fr: culture::french, suite::kde, uitoolkit::qt
+kde-i18n-fy: culture::TODO, suite::kde
+kde-i18n-ga: culture::irish, suite::kde
+kde-i18n-gl: culture::TODO, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt
+kde-i18n-he: culture::hebrew, suite::kde, uitoolkit::qt
+kde-i18n-hi: culture::hindi, suite::kde, uitoolkit::qt
+kde-i18n-hr: culture::croatian, suite::kde, uitoolkit::qt
+kde-i18n-hsb: special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt
+kde-i18n-hu: culture::hungarian, suite::kde, uitoolkit::qt
+kde-i18n-is: culture::icelandic, suite::kde, uitoolkit::qt
+kde-i18n-it: culture::italian, suite::kde, uitoolkit::qt
+kde-i18n-ja: culture::japanese, suite::kde, uitoolkit::qt
+kde-i18n-km: culture::TODO, suite::kde
+kde-i18n-ko: culture::korean, suite::kde
+kde-i18n-lt: culture::TODO, suite::kde
+kde-i18n-lv: culture::TODO, suite::kde
+kde-i18n-mk: culture::TODO, suite::kde
+kde-i18n-mn: culture::mongolian, suite::kde, uitoolkit::qt
+kde-i18n-ms: culture::TODO, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt
+kde-i18n-nb: culture::bokmaal, suite::kde, uitoolkit::qt
+kde-i18n-nds: special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt
+kde-i18n-nl: culture::dutch, suite::kde, uitoolkit::qt
+kde-i18n-nn: culture::nynorsk, suite::kde, uitoolkit::qt
+kde-i18n-pa: culture::punjabi, suite::kde, uitoolkit::qt
+kde-i18n-pl: culture::polish, suite::kde, uitoolkit::qt
+kde-i18n-pt: culture::portuguese, suite::kde, uitoolkit::qt
+kde-i18n-ptbr: culture::brazilian, suite::kde, uitoolkit::qt
+kde-i18n-ro: culture::romanian, suite::kde, uitoolkit::qt
+kde-i18n-ru: culture::russian, suite::kde, uitoolkit::qt
+kde-i18n-rw: culture::TODO, suite::kde
+kde-i18n-se: culture::TODO, suite::kde
+kde-i18n-sk: culture::slovak, suite::kde, uitoolkit::qt
+kde-i18n-sl: culture::slovenian, suite::kde, uitoolkit::qt
+kde-i18n-sr: culture::serbian, suite::kde, uitoolkit::qt
+kde-i18n-srlatin: culture::serbian, suite::kde, uitoolkit::qt
+kde-i18n-ss: culture::TODO, suite::kde
+kde-i18n-sv: culture::swedish, suite::kde, uitoolkit::qt
+kde-i18n-ta: culture::tamil, suite::kde, uitoolkit::qt
+kde-i18n-tg: culture::tajik, suite::kde, uitoolkit::qt
+kde-i18n-tr: culture::turkish, suite::kde, uitoolkit::qt
+kde-i18n-uk: culture::ukrainian, suite::kde, uitoolkit::qt
+kde-i18n-uz: culture::uzbek, suite::kde, uitoolkit::qt
+kde-i18n-zhcn: culture::chinese, suite::kde, uitoolkit::qt
+kde-i18n-zhtw: suite::kde, uitoolkit::qt
+kde-icons-crystal: made-of::data:icons, role::app-data, suite::kde, uitoolkit::qt
+kde-icons-crystalclear: suite::kde
+kde-icons-mono: suite::kde
+kde-icons-noia: made-of::data:icons, role::app-data, suite::kde, uitoolkit::qt
+kde-icons-nuovext: suite::kde
+kde-icons-nuvola: suite::kde
+kde-kdm-themes: suite::kde
+kde-style-comix: uitoolkit::qt
+kde-style-klearlook: uitoolkit::qt
+kde-style-lipstik: implemented-in::c++, suite::kde, uitoolkit::qt, use::TODO
+kde-style-serenity: uitoolkit::qt
+kde-wallpapers-lineartreworked: suite::kde
+kdeaccessibility: accessibility::input, role::metapackage, special::meta, suite::kde
+kdeaccessibility-dbg: devel::library, suite::kde
+kdeaddons: role::metapackage, role::plugin, role::program, scope::utility, special::meta, suite::kde, uitoolkit::qt, x11::applet
+kdeaddons-dbg: devel::library, suite::kde
+kdeaddons-doc-html: made-of::data:html, role::documentation, suite::kde, uitoolkit::qt
+kdeaddons-kfile-plugins: role::plugin, suite::kde, uitoolkit::qt
+kdeadmin: admin::configuring, role::metapackage, special::meta, suite::kde, uitoolkit::qt
+kdeadmin-dbg: devel::library, suite::kde
+kdeadmin-doc-html: suite::kde
+kdeadmin-kfile-plugins: admin::package-management, role::plugin, suite::kde, uitoolkit::qt, works-with::software:package
+kdeartwork: made-of::data:icons, role::app-data, role::metapackage, special::meta, suite::kde, uitoolkit::qt
+kdeartwork-dbg: devel::library, suite::kde
+kdeartwork-emoticons: suite::kde
+kdeartwork-misc: interface::x11, sound::midi, suite::kde, uitoolkit::qt, x11::theme
+kdeartwork-style: interface::x11, suite::kde, uitoolkit::qt, x11::theme
+kdeartwork-theme-desktop: role::dummy, suite::kde, uitoolkit::qt
+kdeartwork-theme-icon: made-of::data:icons, role::app-data, suite::kde, uitoolkit::qt
+kdeartwork-theme-window: interface::x11, suite::kde, uitoolkit::qt
+kdebase: interface::x11, role::metapackage, special::meta, suite::kde, uitoolkit::qt, x11::application
+kdebase-bin: admin::configuring, interface::commandline, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt
+kdebase-data: role::app-data, suite::kde, uitoolkit::qt
+kdebase-dbg: devel::library, suite::kde
+kdebase-dev: devel::library, role::devel-lib, suite::kde, uitoolkit::qt
+kdebase-doc: made-of::data:html, role::documentation, suite::kde, uitoolkit::qt
+kdebase-doc-html: role::documentation
+kdebase-kio-plugins: interface::x11, protocol::ftp, protocol::http, protocol::imap, protocol::pop3, protocol::smtp, role::plugin, suite::kde, uitoolkit::qt, x11::application
+kdebindings-java: devel::lang:java, role::metapackage, special::meta, suite::kde, uitoolkit::qt
+kdebluetooth: implemented-in::c++, role::program, suite::kde, uitoolkit::qt
+kdebluetooth-irmcsync: suite::kde, uitoolkit::qt
+kdeedu: interface::x11, role::metapackage, special::meta, suite::kde, uitoolkit::qt, use::learning, x11::application
+kdeedu-data: role::app-data, suite::kde, uitoolkit::qt, use::learning
+kdeedu-dbg: devel::library, suite::kde
+kdeedu-doc-html: made-of::data:html, role::documentation, suite::kde, uitoolkit::qt, use::learning
+kdegames: role::dummy, role::metapackage, special::meta, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+kdegames-card-data: game::card, role::app-data, suite::kde
+kdegames-dbg: suite::kde
+kdegames-doc-html: made-of::data:html, role::documentation, suite::kde, uitoolkit::qt, use::gameplaying
+kdegraphics: interface::x11, role::metapackage, special::meta, suite::kde, uitoolkit::qt, works-with::image, x11::application
+kdegraphics-dbg: devel::library, suite::kde
+kdegraphics-dev: devel::library, role::devel-lib, suite::kde, uitoolkit::qt, works-with::image
+kdegraphics-kfile-plugins: interface::x11, role::metapackage, special::meta, suite::kde, uitoolkit::qt, works-with::image, x11::application
+kdelibs: role::metapackage, special::meta, suite::kde, uitoolkit::qt
+kdelibs-bin: implemented-in::c++, interface::commandline, interface::daemon, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt
+kdelibs-data: made-of::data:xml, role::app-data, suite::kde, uitoolkit::qt
+kdelibs-dbg: devel::library, suite::kde
+kdelibs3-bin: role::dummy, suite::kde, uitoolkit::qt
+kdelibs4: role::shared-lib, suite::kde, uitoolkit::qt
+kdelibs4-dev: devel::library, role::devel-lib, suite::kde, uitoolkit::qt
+kdelibs4-doc: devel::doc, devel::lang:c, devel::library, made-of::data:html, role::documentation, suite::kde, uitoolkit::qt
+kdelibs4c2a: role::shared-lib, suite::kde, uitoolkit::qt
+kdelirc: hardware::input, interface::x11, role::plugin, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::application
+kdemultimedia: role::metapackage, special::meta, suite::kde, uitoolkit::qt, works-with::video
+kdemultimedia-dbg: devel::library, suite::kde
+kdemultimedia-dev: devel::library, role::devel-lib, role::metapackage, special::meta, suite::kde, uitoolkit::qt, works-with::video
+kdemultimedia-doc-html: suite::kde
+kdemultimedia-kappfinder-data: role::app-data, suite::kde, uitoolkit::qt
+kdemultimedia-kfile-plugins: role::plugin, suite::kde, uitoolkit::qt, works-with::audio, works-with::video
+kdemultimedia-kio-plugins: hardware::storage, hardware::storage:cd, role::plugin, suite::kde, uitoolkit::qt, works-with::audio, x11::application
+kdenetwork: role::metapackage, special::meta, suite::kde, uitoolkit::qt
+kdenetwork-dbg: devel::library, suite::kde
+kdenetwork-dev: role::devel-lib, suite::kde
+kdenetwork-doc-html: suite::kde
+kdenetwork-filesharing: network::configuration, protocol::smb, role::shared-lib, suite::kde, uitoolkit::qt
+kdenetwork-kfile-plugins: suite::kde
+kdepasswd: interface::x11, role::program, scope::utility, security::authentication, suite::kde, uitoolkit::qt, x11::application
+kdepim: interface::x11, role::metapackage, special::meta, suite::kde, uitoolkit::qt, works-with::pim, x11::application
+kdepim-dbg: devel::library, suite::kde
+kdepim-dev: devel::library, interface::x11, role::devel-lib, suite::kde, uitoolkit::qt, works-with::pim
+kdepim-doc: role::documentation, suite::kde, uitoolkit::qt, works-with::pim
+kdepim-doc-html: made-of::data:html, role::documentation, suite::kde, uitoolkit::qt, works-with::pim
+kdepim-kfile-plugins: role::plugin, suite::kde, uitoolkit::qt, works-with::pim
+kdepim-kio-plugins: interface::x11, protocol::imap, role::plugin, suite::kde, uitoolkit::qt, works-with::pim, x11::application
+kdepim-kresources: interface::x11, role::program, scope::utility, uitoolkit::qt, x11::application
+kdepim-wizards: admin::configuring, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::configuring, works-with::pim, x11::application
+kdeprint: hardware::printer, interface::x11, role::program, suite::kde, uitoolkit::qt, use::printing, works-with-format::pdf, works-with::fax, works-with::text, x11::application
+kdesdk: devel::library, role::metapackage, role::program, special::meta, suite::kde, uitoolkit::qt
+kdesdk-dbg: devel::library, suite::kde
+kdesdk-doc-html: devel::doc, made-of::data:html, role::documentation, suite::kde, uitoolkit::qt
+kdesdk-kfile-plugins: interface::x11, role::plugin, suite::kde, uitoolkit::qt, works-with::software:source, x11::application
+kdesdk-kio-plugins: admin::filesystem, devel::rcs, interface::x11, role::plugin, suite::kde, uitoolkit::qt, x11::application
+kdesdk-misc: devel::library, interface::x11, role::devel-lib, role::plugin, suite::kde, uitoolkit::qt
+kdesdk-scripts: devel::library, devel::rcs, interface::commandline, role::devel-lib, role::plugin, role::program, scope::utility, suite::kde, uitoolkit::qt
+kdesktop: interface::x11, role::metapackage, role::program, suite::kde, uitoolkit::qt, use::configuring, x11::application
+kdessh: interface::x11, protocol::ssh, role::program, suite::kde, uitoolkit::qt, use::login, x11::application
+kdesvn: devel::rcs, network::client, role::program, uitoolkit::qt, x11::application
+kdesvn-kio-plugins: suite::kde, uitoolkit::qt
+kdetoys: game::toys, role::metapackage, special::meta, suite::kde, uitoolkit::qt
+kdetoys-dbg: devel::library, suite::kde
+kdetoys-doc-html: game::toys, made-of::data:html, role::documentation, suite::kde, uitoolkit::qt
+kdetv: hardware::video, interface::x11, role::program, suite::kde, uitoolkit::qt, use::playing, works-with::video, x11::application
+kdeutils: role::metapackage, special::meta, suite::kde, uitoolkit::qt, x11::application
+kdeutils-dbg: devel::library, suite::kde
+kdeutils-dev: devel::library, role::devel-lib, suite::kde, uitoolkit::qt
+kdeutils-doc: devel::doc, role::documentation, suite::kde
+kdeutils-doc-html: suite::kde
+kdevelop: devel::ide, devel::lang:ada, devel::lang:c, devel::lang:c++, devel::lang:haskell, devel::lang:java, devel::lang:pascal, devel::lang:perl, devel::lang:php, devel::lang:python, devel::lang:ruby, devel::lang:sql, devel::ui-builder, implemented-in::c++, interface::x11, role::program, scope::application, suite::kde, uitoolkit::qt, works-with::software:source, x11::application
+kdevelop-data: made-of::data:icons, role::app-data, suite::kde
+kdevelop3: devel::ide, devel::lang:c, devel::lang:c++, interface::x11, role::program, scope::application, suite::kde, uitoolkit::qt, use::editing, x11::application
+kdevelop3-data: devel::ide, devel::lang:c, devel::lang:c++, role::app-data, suite::kde, uitoolkit::qt
+kdevelop3-dev: devel::ide, devel::lang:c, devel::lang:c++, devel::library, role::devel-lib, suite::kde, uitoolkit::qt
+kdevelop3-doc: devel::doc, devel::lang:c, devel::lang:c++, role::documentation, suite::kde, uitoolkit::qt
+kdevelop3-plugins: devel::ide, devel::lang:c, devel::lang:c++, interface::x11, role::plugin, suite::kde, uitoolkit::qt, works-with::software:source
+kdewallpapers: suite::kde, uitoolkit::qt, x11::theme
+kdewebdev: role::metapackage, special::meta, suite::kde, uitoolkit::qt, web::scripting
+kdewebdev-dbg: devel::library, suite::kde
+kdewebdev-doc-html: made-of::data:html, role::documentation, suite::kde, uitoolkit::qt, web::scripting
+kdf: admin::filesystem, hardware::storage, interface::x11, role::program, suite::kde, uitoolkit::qt, use::scanning, x11::application
+kdict: interface::x11, network::client, role::program, suite::kde, uitoolkit::qt, use::checking, works-with::dictionary, x11::application
+kdiff3: implemented-in::c++, interface::x11, role::program, scope::utility, uitoolkit::qt, works-with::software:source, works-with::text, x11::application
+kdirstat: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::scanning, x11::application
+kdissert: interface::x11, role::program, suite::kde, uitoolkit::qt, use::organizing, use::text-formatting, works-with-format::html, works-with-format::tex, works-with::text, x11::application
+kdm: interface::daemon, network::server, role::program, suite::kde, uitoolkit::qt, x11::display-manager
+kdmtheme: uitoolkit::qt
+kdnssd: suite::kde
+kdoc: devel::docsystem, devel::lang:c++, implemented-in::perl, interface::commandline, protocol::corba, role::program, scope::utility, works-with::software:source
+kdoomsday: interface::x11, role::program, scope::utility, suite::kde, use::timekeeping, x11::applet, x11::application
+kdrill: culture::japanese, interface::x11, role::program, scope::utility, uitoolkit::athena, works-with::dictionary, x11::application
+kdvi: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::viewing, works-with-format::tex, works-with::text, x11::application
+kedit: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, use::editing, works-with::text, x11::application
+keduca: interface::x11, suite::kde, uitoolkit::qt, use::editing, use::learning, x11::application
+keep: uitoolkit::qt
+keepalived: admin::monitoring, interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::k, use::monitor
+kenolaba: game::board, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+kerberos4kth-clients: interface::commandline, network::client, protocol::kerberos, role::program, security::cryptography, uitoolkit::ncurses
+kerberos4kth-clients-x: interface::x11, network::client, protocol::kerberos, role::program, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::k, x11::application
+kerberos4kth-dev: devel::library, protocol::kerberos, role::devel-lib, security::cryptography
+kerberos4kth-docs: made-of::data:info, protocol::kerberos, role::documentation, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::k
+kerberos4kth-kdc: interface::daemon, network::server, protocol::kerberos, role::program, security::cryptography
+kerberos4kth-kip: interface::daemon, network::server, protocol::kerberos, role::program, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::k
+kerberos4kth-servers: interface::daemon, network::server, protocol::kerberos, role::program, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::k, uitoolkit::ncurses
+kerberos4kth-servers-x: interface::daemon, network::server, protocol::kerberos, role::program, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::k, x11::application
+kerberos4kth-services: protocol::kerberos, role::dummy, security::cryptography
+kerberos4kth-user: protocol::kerberos, role::dummy, security::cryptography
+kerberos4kth-x11: protocol::kerberos, role::dummy, security::cryptography
+kerberos4kth1: protocol::kerberos, role::dummy, security::cryptography
+kernel-build-2.4.27-2: admin::kernel, devel::library, implemented-in::c, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-doc-2.2.25: admin::kernel, role::documentation
+kernel-doc-2.4.24: role::documentation, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-doc-2.4.25: role::documentation, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-doc-2.4.26: role::documentation, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-doc-2.4.27: admin::kernel, role::documentation, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-doc-2.4.27-speakup: accessibility::speech, admin::kernel, role::documentation, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-doc-2.6.10: role::documentation, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-doc-2.6.11: role::documentation, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-doc-2.6.8: admin::kernel, role::documentation, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.4-386: admin::kernel, devel::library, role::metapackage
+kernel-headers-2.4-586tsc: admin::kernel, devel::library, role::metapackage
+kernel-headers-2.4-686: admin::kernel, devel::library, role::metapackage
+kernel-headers-2.4-686-smp: admin::kernel, devel::library, role::metapackage
+kernel-headers-2.4-k6: admin::kernel, devel::library, role::metapackage
+kernel-headers-2.4-k7: admin::kernel, devel::library, role::metapackage
+kernel-headers-2.4-k7-smp: admin::kernel, devel::library, role::metapackage
+kernel-headers-2.4.27-2: admin::kernel, devel::library, role::devel-lib
+kernel-headers-2.4.27-2-386: admin::kernel, devel::library, implemented-in::c, role::devel-lib
+kernel-headers-2.4.27-2-586tsc: admin::kernel, devel::library, implemented-in::c, role::devel-lib
+kernel-headers-2.4.27-2-686: admin::kernel, devel::library, implemented-in::c, role::devel-lib
+kernel-headers-2.4.27-2-686-smp: admin::kernel, devel::library, implemented-in::c, role::devel-lib
+kernel-headers-2.4.27-2-k6: admin::kernel, devel::library, implemented-in::c, role::devel-lib
+kernel-headers-2.4.27-2-k7: admin::kernel, devel::library, implemented-in::c, role::devel-lib
+kernel-headers-2.4.27-2-k7-smp: admin::kernel, devel::library, implemented-in::c, role::devel-lib
+kernel-headers-2.4.27-speakup: accessibility::speech, admin::kernel, devel::library, implemented-in::c, role::devel-lib
+kernel-headers-2.6-386: admin::kernel, devel::library, role::metapackage
+kernel-headers-2.6-686: admin::kernel, devel::library, role::metapackage
+kernel-headers-2.6-686-smp: admin::kernel, devel::library, role::metapackage
+kernel-headers-2.6-amd64-generic: admin::kernel, devel::library, role::metapackage
+kernel-headers-2.6-amd64-k8: admin::kernel, devel::library, role::metapackage
+kernel-headers-2.6-amd64-k8-smp: admin::kernel, devel::library, role::metapackage
+kernel-headers-2.6-em64t-p4: admin::kernel, devel::library, role::metapackage
+kernel-headers-2.6-em64t-p4-smp: admin::kernel, devel::library, role::metapackage
+kernel-headers-2.6-k7: admin::kernel, devel::library, role::metapackage
+kernel-headers-2.6-k7-smp: admin::kernel, devel::machinecode, role::metapackage
+kernel-headers-2.6.10-1: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.10-1-386: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.10-1-686: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.10-1-686-smp: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.10-1-k7: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.10-1-k7-smp: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.10-9: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.10-9-amd64-generic: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.10-9-amd64-k8: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.10-9-amd64-k8-smp: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.10-9-em64t-p4: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.10-9-em64t-p4-smp: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.11-1: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.11-1-386: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.11-1-686: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.11-1-686-smp: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.11-1-i386: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.11-1-k7: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.11-1-k7-smp: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.11-9: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.11-9-amd64-generic: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.11-9-amd64-k8: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.11-9-amd64-k8-smp: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.11-9-em64t-p4: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.11-9-em64t-p4-smp: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-headers-2.6.8-11: admin::kernel, devel::library, implemented-in::c, role::devel-lib
+kernel-headers-2.6.8-11-amd64-generic: admin::kernel, devel::library, implemented-in::c, role::devel-lib
+kernel-headers-2.6.8-11-amd64-k8: admin::kernel, devel::library, implemented-in::c, role::devel-lib
+kernel-headers-2.6.8-11-amd64-k8-smp: admin::kernel, devel::library, implemented-in::c, role::devel-lib
+kernel-headers-2.6.8-11-em64t-p4: admin::kernel, devel::library, implemented-in::c, role::devel-lib
+kernel-headers-2.6.8-11-em64t-p4-smp: admin::kernel, devel::library, implemented-in::c, role::devel-lib
+kernel-headers-2.6.8-2: admin::kernel, devel::library, implemented-in::c, role::devel-lib
+kernel-headers-2.6.8-2-386: admin::kernel, devel::library, implemented-in::c, role::devel-lib
+kernel-headers-2.6.8-2-686: admin::kernel, devel::library, implemented-in::c, role::devel-lib
+kernel-headers-2.6.8-2-686-smp: admin::kernel, devel::library, implemented-in::c, role::devel-lib
+kernel-headers-2.6.8-2-k7: admin::kernel, devel::library, implemented-in::c, role::devel-lib
+kernel-headers-2.6.8-2-k7-smp: admin::kernel, devel::library, implemented-in::c, role::devel-lib
+kernel-image-2.4-386: admin::boot, admin::kernel, role::metapackage
+kernel-image-2.4-586tsc: admin::boot, admin::kernel, role::metapackage
+kernel-image-2.4-686: admin::boot, admin::kernel, role::metapackage
+kernel-image-2.4-686-smp: admin::boot, admin::kernel, role::metapackage
+kernel-image-2.4-k6: admin::boot, admin::kernel, role::metapackage
+kernel-image-2.4-k7: admin::boot, admin::kernel, role::metapackage
+kernel-image-2.4-k7-smp: admin::boot, admin::kernel, role::metapackage
+kernel-image-2.4.25-xeno-p2: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.4.25-xeno-p2-modules: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.4.27-2-386: admin::boot, admin::kernel, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.4.27-2-586tsc: admin::boot, admin::kernel, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.4.27-2-686: admin::boot, admin::kernel, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.4.27-2-686-smp: admin::boot, admin::kernel, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.4.27-2-k6: admin::boot, admin::kernel, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.4.27-2-k7: admin::boot, admin::kernel, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.4.27-2-k7-smp: admin::boot, admin::kernel, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.4.27-speakup: admin::boot, admin::kernel, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6-386: admin::kernel, role::metapackage
+kernel-image-2.6-686: admin::kernel, role::metapackage
+kernel-image-2.6-686-smp: admin::kernel, role::metapackage
+kernel-image-2.6-amd64-generic: admin::kernel, role::metapackage
+kernel-image-2.6-amd64-k8: admin::kernel, role::metapackage
+kernel-image-2.6-amd64-k8-smp: admin::kernel, role::metapackage
+kernel-image-2.6-em64t-p4: admin::kernel, role::metapackage
+kernel-image-2.6-em64t-p4-smp: admin::kernel, role::metapackage
+kernel-image-2.6-k7: admin::kernel, role::metapackage
+kernel-image-2.6-k7-smp: admin::kernel, role::metapackage
+kernel-image-2.6.10-1-386: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.10-1-686: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.10-1-686-smp: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.10-1-k7: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.10-1-k7-smp: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.10-9-amd64-generic: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.10-9-amd64-k8: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.10-9-amd64-k8-smp: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.10-9-em64t-p4: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.10-9-em64t-p4-smp: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.11-1-386: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.11-1-686: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.11-1-686-smp: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.11-1-k7: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.11-1-k7-smp: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.11-9-amd64-generic: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.11-9-amd64-k8: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.11-9-amd64-k8-smp: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.11-9-em64t-p4: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.11-9-em64t-p4-smp: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.8-11-amd64-generic: admin::boot, admin::kernel, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.8-11-amd64-k8: admin::boot, admin::kernel, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.8-11-amd64-k8-smp: admin::boot, admin::kernel, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.8-11-em64t-p4: admin::boot, admin::kernel, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.8-11-em64t-p4-smp: admin::boot, admin::kernel, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.8-2-386: admin::boot, admin::kernel, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.8-2-686: admin::boot, admin::kernel, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.8-2-686-smp: admin::boot, admin::kernel, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.8-2-k7: admin::boot, admin::kernel, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-2.6.8-2-k7-smp: admin::boot, admin::kernel, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-image-netbootable: admin::boot, admin::kernel, network::configuration, protocol::dhcp, role::metapackage
+kernel-internals-guide: admin::kernel, made-of::data:html, made-of::data:sgml, role::documentation
+kernel-kbuild-2.6-3: admin::kernel, devel::buildtools, implemented-in::c, role::program, scope::utility, works-with::software:source
+kernel-package: admin::kernel, devel::packaging, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, works-with::software:source
+kernel-patch-2.2.25-m68k: admin::kernel, implemented-in::c
+kernel-patch-2.4-bluez: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-2.4-cobalt: admin::kernel
+kernel-patch-2.4-fasttraks150: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-2.4-grsecurity: admin::kernel, implemented-in::c
+kernel-patch-2.4-i2c: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k, use::driver
+kernel-patch-2.4-kgdb: admin::kernel
+kernel-patch-2.4-lids: admin::kernel
+kernel-patch-2.4-lm-sensors: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k, use::driver
+kernel-patch-2.4-lowlatency: admin::kernel, implemented-in::c
+kernel-patch-2.4-preempt: admin::kernel, implemented-in::c
+kernel-patch-2.4-supermount-ng: admin::filesystem, admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-2.4.19-arm: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-2.4.27-arm: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-2.4.27-hppa: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-2.4.27-ia64: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-2.4.27-m68k: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-2.4.27-s390: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-2.6-bluez: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-2.6-cman: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-2.6-dlm: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-2.6-gfs: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-2.6-gnbd: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-2.6-reiser4: admin::filesystem, admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-2.6.10-hppa: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-2.6.10-s390: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-2.6.8-hppa: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-2.6.8-m68k: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-2.6.8-s390: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-acl: admin::kernel
+kernel-patch-adamantix: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-adeos: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-atopacct: admin::accounting, admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-atopcnt: admin::accounting, admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-badram: admin::kernel, implemented-in::c
+kernel-patch-bootsplash: admin::kernel
+kernel-patch-cryptoloop: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-debian-2.4.24: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-debian-2.4.25: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-debian-2.4.26: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-debian-2.4.27: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k, suite::debian
+kernel-patch-debian-2.6.10: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-debian-2.6.11: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-debian-2.6.8: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k, suite::debian
+kernel-patch-debianlogo: admin::kernel, implemented-in::c, suite::debian
+kernel-patch-evms: admin::filesystem, admin::kernel, implemented-in::c
+kernel-patch-exec-shield: admin::kernel, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-freeswan: admin::kernel, implemented-in::c, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-gcov: admin::kernel, devel::testing-qa, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-grsecurity2: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-kdb: admin::kernel, devel::debugger, implemented-in::c
+kernel-patch-lkcd: admin::kernel, devel::debugger, implemented-in::c
+kernel-patch-lowlatency-2.4: admin::kernel, role::dummy, special::obsolete
+kernel-patch-ltt: admin::kernel, devel::debugger, implemented-in::c
+kernel-patch-misdn: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-mppe: admin::kernel, implemented-in::c, security::cryptography
+kernel-patch-nfs-ngroups: admin::filesystem, admin::kernel, admin::user-management, implemented-in::c, protocol::nfs
+kernel-patch-nfs-swap: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-openmosix: admin::kernel
+kernel-patch-openswan: admin::kernel, implemented-in::c, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-ppscsi-2.4: admin::kernel, implemented-in::c
+kernel-patch-ppscsi-2.6: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-preempt-2.4: admin::kernel, role::dummy, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-psd: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-quota: admin::kernel, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-relayfs: admin::kernel, implemented-in::c
+kernel-patch-scanlogic: admin::kernel
+kernel-patch-scripts: admin::kernel, interface::commandline, role::program, scope::utility, works-with::software:source
+kernel-patch-scsi-idle: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-skas: admin::kernel, implemented-in::c
+kernel-patch-speakup: accessibility::speech, admin::kernel, implemented-in::c
+kernel-patch-squashfs: admin::filesystem, admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-tekram-dc3x5: admin::kernel, implemented-in::c
+kernel-patch-time: admin::kernel, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-ttl: admin::kernel
+kernel-patch-uml: admin::kernel
+kernel-patch-usagi: admin::kernel
+kernel-patch-vserver: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-patch-wrr: admin::kernel, implemented-in::c, network::configuration, network::firewall, network::routing, protocol::ethernet, security::firewall, use::configuring, use::routing
+kernel-patch-xen: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-pcmcia-modules-2.4-386: admin::kernel, role::metapackage, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-pcmcia-modules-2.4-586tsc: admin::kernel, role::metapackage, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-pcmcia-modules-2.4-686: admin::kernel, role::metapackage, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-pcmcia-modules-2.4-686-smp: admin::kernel, role::metapackage, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-pcmcia-modules-2.4-k6: admin::kernel, role::metapackage, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-pcmcia-modules-2.4-k7: admin::kernel, role::metapackage, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-pcmcia-modules-2.4-k7-smp: admin::kernel, role::metapackage, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-pcmcia-modules-2.4.27-2-386: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-pcmcia-modules-2.4.27-2-586tsc: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-pcmcia-modules-2.4.27-2-686: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-pcmcia-modules-2.4.27-2-686-smp: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-pcmcia-modules-2.4.27-2-k6: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-pcmcia-modules-2.4.27-2-k7: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-pcmcia-modules-2.4.27-2-k7-smp: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-source-2.2.25: admin::kernel, implemented-in::c, role::source
+kernel-source-2.4.24: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-source-2.4.25: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-source-2.4.26: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-source-2.4.27: admin::kernel, implemented-in::c, role::source, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-source-2.6.10: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-source-2.6.11: admin::kernel, implemented-in::c, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-source-2.6.8: admin::kernel, implemented-in::c, role::source, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-tree-2.4.24: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-tree-2.4.25: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-tree-2.4.26: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-tree-2.4.27: admin::kernel, role::metapackage, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-tree-2.6.10: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-tree-2.6.11: special::not-yet-tagged, special::not-yet-tagged::k
+kernel-tree-2.6.8: admin::kernel, role::dummy, special::not-yet-tagged, special::not-yet-tagged::k
+kernel-wedge: admin::kernel, devel::buildtools, devel::debian, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::debian
+kernellab: admin::kernel, implemented-in::perl, interface::commandline, role::program, scope::utility
+kerneltop: admin::kernel, admin::monitoring, implemented-in::c, interface::text-mode, role::program, scope::utility, use::monitor, works-with::software:running
+kerry: uitoolkit::qt
+ketchup: admin::kernel, devel::buildtools, interface::commandline, role::program, scope::utility, use::downloading, works-with::archive, works-with::software:source
+ketm: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+ketm-data: game::arcade, interface::x11, role::app-data, uitoolkit::sdl, x11::application
+keurocalc: suite::kde, uitoolkit::qt
+keurocalc-data: role::app-data, special::auto-inst-parts
+kexi: devel::lang:sql, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, works-with::db, x11::application
+kexi-mdb-plugin: uitoolkit::qt
+kexi-mysql-driver: devel::lang:sql, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, use::converting, works-with::db
+kexi-postgresql-driver: devel::lang:sql, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, use::converting, works-with::db
+keyanalyze: interface::commandline, role::program, scope::utility, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::k, works-with::image, works-with::image:vector
+keybled: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::applet, x11::application
+keyboards-rg: culture::esperanto, culture::russian, culture::slovak, culture::ukrainian, hardware::input:keyboard, special::not-yet-tagged, special::not-yet-tagged::k
+keychain: interface::daemon, network::server, protocol::ssh, role::program, security::cryptography, use::login
+keyjnote: implemented-in::python, interface::x11, office::presentation, role::program, scope::utility, uitoolkit::gtk, use::viewing, works-with-format::pdf, works-with::image, works-with::image:raster, x11::application
+keyjnotegui: implemented-in::python, interface::x11, office::presentation, role::program, scope::utility, suite::kde, use::viewing, works-with-format::pdf, works-with::image, x11::application
+keylaunch: interface::x11, role::program, scope::utility, x11::application
+keylookup: implemented-in::perl, interface::commandline, network::client, role::dummy, role::program, security::cryptography, special::obsolete, use::downloading
+keymapper: hardware::input:keyboard
+keynote: security::cryptography, special::not-yet-tagged, special::not-yet-tagged::k
+keytouch: admin::configuring, hardware::input:keyboard, implemented-in::c, interface::daemon, interface::x11, role::program, scope::utility, uitoolkit::gtk
+keytouch-editor: admin::configuring, hardware::input:keyboard, implemented-in::c, interface::commandline, role::program, scope::utility, use::editing
+kfax: hardware::modem, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::viewing, works-with::fax, x11::application
+kfaxview: interface::x11, role::program, suite::kde, uitoolkit::qt, use::viewing, works-with::fax, works-with::image, works-with::image:raster, x11::application
+kfilereplace: interface::x11, role::plugin, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, works-with::text, x11::application
+kfind: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, works-with::file, x11::application
+kfish: game::toys, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::applet, x11::application
+kflickr: uitoolkit::qt
+kflog: field::geography, interface::x11, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, works-with::image, works-with::image:vector, x11::application
+kfloppy: admin::filesystem, hardware::storage:floppy, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::application
+kfocus: interface::x11, office::project-management, role::program, scope::utility, suite::kde, uitoolkit::qt, use::organizing, works-with::people, x11::application
+kfolding: suite::kde
+kformula: field::mathematics, interface::x11, role::program, suite::kde, uitoolkit::qt, use::editing, works-with-format::tex, works-with::text, x11::application
+kforth: devel::interpreter, implemented-in::c++, interface::commandline, role::program, scope::utility, uitoolkit::ncurses
+kfouleggs: game::tetris, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+kfreebsd-source-5.4: admin::kernel
+kfreebsd5-source: special::not-yet-tagged, special::not-yet-tagged::k
+kftgt: implemented-in::c, interface::commandline, network::client, protocol::kerberos, role::program, security::authentication, special::not-yet-tagged, special::not-yet-tagged::k
+kftgtd: implemented-in::c, network::server, role::program, security::authentication, special::not-yet-tagged, special::not-yet-tagged::k
+kftpgrabber: filetransfer::ftp, network::client, protocol::ftp, protocol::sftp, role::program, suite::kde, uitoolkit::qt, use::downloading, works-with::file
+kgamma: interface::x11, role::plugin, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, x11::application
+kgeography: suite::kde, uitoolkit::qt
+kgeography-data: suite::kde
+kget: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::downloading, x11::application
+kghostview: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::viewing, works-with-format::pdf, works-with-format::postscript, works-with::text, x11::application
+kgoldrunner: game::arcade, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+kgpg: interface::x11, role::program, scope::utility, security::cryptography, security::integrity, suite::kde, uitoolkit::qt, x11::application
+kguitar: suite::kde, uitoolkit::qt
+khangman: game::puzzle, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, works-with::text, x11::application
+khelpcenter: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, works-with-format::docbook, works-with::text, x11::application
+khexedit: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::editing, works-with::file, x11::application
+kiax: uitoolkit::qt
+kicad: uitoolkit::wxwindows
+kicad-doc-de: culture::german
+kicad-doc-en: culture::TODO
+kicad-doc-es: culture::spanish
+kicad-doc-fr: culture::french
+kicad-doc-it: culture::italian
+kicad-doc-pt: culture::portuguese
+kicad-doc-ru: culture::russian
+kicker: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::applet, x11::application
+kicker-applets: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::gtk, uitoolkit::qt, x11::applet, x11::application
+kiconedit: interface::x11, role::program, suite::kde, uitoolkit::qt, use::editing, works-with-format::png, works-with::image, works-with::image:raster, x11::application
+kid: implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::k, works-with-format::xml
+kid3: interface::x11, role::program, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, use::editing, use::organizing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, x11::application
+kig: field::mathematics, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, use::viewing, works-with::image, works-with::image:vector, x11::application
+kiki: devel::interpreter, implemented-in::python, role::program, uitoolkit::wxwidgets, use::learning
+kildclient: uitoolkit::gtk
+kile: interface::shell, interface::x11, suite::kde, uitoolkit::qt, use::editing, works-with-format::tex, works-with::text, x11::application
+kile-i18n: culture::estonian, culture::italian, culture::swedish, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, works-with-format::tex, works-with::text
+kimagemapeditor: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, use::editing, works-with-format::html, works-with::image, works-with::image:raster, works-with::text, x11::application
+kimberlite: special::not-yet-tagged, special::not-yet-tagged::k
+kimberlite-doc: protocol::pop3, role::documentation, works-with::mail
+kimdaba: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, use::searching, works-with::image, works-with::image:raster, x11::application
+kimwitu: devel::code-generator, devel::lang:c, interface::commandline, role::program, scope::utility
+kimwitu++: devel::code-generator, devel::lang:c++, interface::commandline, role::program, scope::utility
+kimwitu++-doc: devel::code-generator, devel::lang:c++, made-of::data:html, made-of::data:pdf, role::documentation
+kimwitu-doc: devel::code-generator, devel::lang:c, made-of::data:html, made-of::data:pdf, role::documentation
+kino: hardware::camera, implemented-in::c, implemented-in::c++, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::editing, works-with::video, x11::application
+kino-dvtitler: interface::x11, role::plugin, special::not-yet-tagged, special::not-yet-tagged::k, suite::gnome, uitoolkit::gtk, use::editing, works-with::video, x11::application
+kino-timfx: interface::x11, role::plugin, special::not-yet-tagged, special::not-yet-tagged::k, suite::gnome, uitoolkit::gtk, use::editing, works-with::video, x11::application
+kinoplus: field::arts, implemented-in::c, interface::x11, role::plugin, special::not-yet-tagged, special::not-yet-tagged::k, suite::gnome, uitoolkit::gtk, use::editing, works-with::video, x11::application
+kinput2-canna: culture::japanese, network::server, role::program, uitoolkit::athena
+kinput2-canna-wnn: culture::japanese, network::server, role::program, uitoolkit::athena
+kinput2-common: culture::japanese, special::auto-inst-parts, special::not-yet-tagged, special::not-yet-tagged::k
+kinput2-wnn: culture::japanese, network::server, role::program, uitoolkit::athena
+kiosktool: suite::kde, uitoolkit::qt
+kipi-plugins: hardware::camera, role::plugin, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, works-with::image, works-with::image:raster, x11::application
+kipina: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, uitoolkit::gtk, x11::application
+kipina-dev-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::k
+kismet: network::scanner, role::program, scope::utility, uitoolkit::ncurses, use::scanning
+kiss: admin::recovery, interface::shell, role::program, scope::utility, uitoolkit::ncurses
+kitchensync: interface::x11, network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, use::synchronizing, works-with::pim, x11::application
+kiten: culture::japanese, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::learning, x11::application
+kitty: suite::kde, uitoolkit::qt, web::blog
+kivio: interface::x11, role::program, scope::application, suite::kde, uitoolkit::qt, use::editing, works-with::image, works-with::image:vector, x11::application
+kivio-data: role::app-data, special::auto-inst-parts, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, x11::application
+kjots: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::organizing, works-with::text, x11::application
+kjscmd: devel::interpreter, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt
+kjumpingcube: game::board, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+kkbswitch: accessibility::input, hardware::input:keyboard, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::configuring, x11::applet
+klamav: uitoolkit::qt
+klaptopdaemon: hardware::laptop, interface::x11, network::server, role::program, suite::kde, uitoolkit::qt, use::monitor, x11::application
+klash: uitoolkit::ncurses, uitoolkit::qt
+klatin: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, use::learning, works-with-format::xml, x11::application
+kleopatra: interface::x11, network::client, protocol::ldap, role::program, security::authentication, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, works-with::db, works-with::pim, x11::application
+klettres: culture::czech, culture::danish, culture::dutch, culture::french, culture::italian, culture::slovak, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::learning, x11::application
+klettres-data: role::app-data, special::not-yet-tagged, special::not-yet-tagged::k, use::learning
+klibc-utils: implemented-in::c, interface::commandline, role::program, scope::utility
+klibido: implemented-in::c++, interface::x11, network::client, protocol::nntp, role::program, suite::kde, uitoolkit::qt, use::downloading, works-with::archive, x11::application
+klic: devel::compiler, devel::lang:c, interface::commandline, role::program, scope::utility, works-with::software:source
+klic-doc: devel::compiler, devel::doc, devel::examples, devel::lang:c, role::documentation
+klickety: game::puzzle, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+klineakconfig: hardware::input:keyboard, suite::kde, uitoolkit::qt
+klines: game::puzzle, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+klinkstatus: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, use::checking, works-with-format::html, works-with::text, x11::application
+klipper: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::application
+klipsi: role::program, scope::utility
+klog: hardware::hamradio, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, works-with::logfile, x11::application
+klogd: admin::kernel, admin::logging, interface::daemon, network::server, role::program, works-with::logfile
+klogic: field::electronics, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::editing, x11::application
+klone: devel::lang:c, devel::web, filetransfer::http, hardware::embedded, implemented-in::c, interface::daemon, network::server, protocol::http, protocol::ssl, role::program, scope::application, use::transmission, web::appserver, web::server
+klone-doc: role::documentation
+klone-package: devel::buildtools, devel::packaging, devel::web, implemented-in::shell, interface::commandline, role::program, scope::utility
+klone-source: devel::lang:c, devel::web, filetransfer::http, hardware::embedded, implemented-in::c, interface::daemon, network::server, protocol::http, protocol::ssl, role::source, web::appserver, web::server
+kluppe: uitoolkit::gtk
+kmag: accessibility::screen-magnify, interface::x11, role::program, suite::kde, uitoolkit::qt, use::viewing, x11::application
+kmahjongg: game::puzzle, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+kmail: interface::x11, mail::imap, mail::pop, mail::user-agent, network::client, protocol::imap, protocol::ipv6, protocol::pop3, protocol::smtp, protocol::ssl, role::program, suite::kde, uitoolkit::qt, works-with::mail, x11::application
+kmailcvt: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::converting, works-with::mail, works-with::pim, x11::application
+kmatplot: uitoolkit::qt
+kmd: devel::debugger, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, uitoolkit::gtk, x11::application
+kmenuedit: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::editing, x11::application
+kmerlin: interface::x11, network::client, protocol::msn-messenger, role::program, suite::kde, uitoolkit::qt, use::chatting, x11::application
+kmess: suite::kde, uitoolkit::qt
+kmessedwords: game::puzzle, interface::x11, suite::kde, uitoolkit::qt, use::gameplaying, use::learning, x11::application
+kmflcomp: hardware::input:keyboard
+kmid: interface::x11, role::program, scope::utility, sound::midi, sound::player, suite::kde, uitoolkit::qt, works-with::audio, x11::application
+kmilo: hardware::input:keyboard, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, x11::application
+kmines: game::puzzle, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+kmix: interface::x11, role::program, scope::utility, sound::mixer, suite::kde, uitoolkit::qt, works-with::audio, x11::application
+kmldonkey: interface::x11, network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, use::downloading, x11::application
+kmobiletools: admin::hardware, hardware::TODO, hardware::embedded, implemented-in::c++, interface::x11, role::program, scope::application, suite::kde, uitoolkit::qt, use::transmission
+kmoon: game::toys, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::timekeeping, x11::applet, x11::application
+kmousetool: accessibility::input, hardware::input, hardware::input:mouse, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::application
+kmouth: accessibility::speech, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, x11::application
+kmplayer: hardware::storage:cd, hardware::storage:dvd, interface::x11, role::program, suite::kde, uitoolkit::qt, use::playing, works-with::audio, works-with::video, x11::application
+kmplayer-common: uitoolkit::qt
+kmplayer-plugin: uitoolkit::qt
+kmplot: field::mathematics, interface::x11, role::program, suite::kde, uitoolkit::qt, use::viewing, works-with::image, works-with::image:vector, x11::application
+kmrml: interface::x11, role::plugin, suite::kde, uitoolkit::qt, use::searching, works-with::image, x11::application
+kmtrace: devel::debugger, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, x11::application
+kmyfirewall: admin::configuring, admin::kernel, interface::x11, role::program, scope::utility, security::firewall, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, use::configuring, x11::application
+kmymoney2: field::finance, interface::x11, office::finance, role::program, scope::application, suite::kde, uitoolkit::qt, x11::application
+knapster2: interface::x11, sound::player, suite::kde, uitoolkit::qt, use::downloading, use::playing, works-with-format::mp3, works-with::audio, x11::application
+knemo: suite::kde, uitoolkit::qt
+knetdockapp: suite::kde, uitoolkit::qt
+knetfilter: admin::configuring, admin::kernel, interface::x11, role::program, scope::utility, security::firewall, suite::kde, uitoolkit::qt, use::configuring, x11::application
+knetload: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::monitor, x11::applet, x11::application
+knetwalk: admin::configuring, game::puzzle, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+knetworkconf: suite::kde
+knews: interface::x11, network::client, network::server, protocol::nntp, role::program, use::downloading, use::transmission, x11::application
+knewsticker: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::monitor, works-with-format::xml, works-with-format::xml:rss, x11::applet, x11::application
+knewsticker-scripts: interface::x11, role::app-data, scope::utility, suite::kde, uitoolkit::qt, x11::application
+knights: game::board, game::board:chess, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+knl: admin::boot, admin::kernel, role::program, scope::utility
+knmap: suite::kde, uitoolkit::qt
+knockd: interface::daemon, network::server, protocol::ethernet, role::program, special::not-yet-tagged, special::not-yet-tagged::k
+knocker: implemented-in::c, interface::commandline, network::scanner, role::program, scope::utility, use::scanning
+knoda: interface::x11, network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, works-with::db, x11::application
+knode: interface::x11, network::client, protocol::ipv6, protocol::nntp, role::program, suite::kde, uitoolkit::qt, use::transmission, x11::application
+knotes: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::application
+knutclient: interface::x11, network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, x11::application
+koalamud: game::mud, interface::daemon, network::server, role::program, use::gameplaying
+kobodeluxe: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+kode: uitoolkit::qt
+kodo: game::toys, hardware::input:mouse, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+kodos: devel::lang:python, implemented-in::python, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, uitoolkit::qt, x11::application
+koffice: interface::x11, role::metapackage, suite::kde, uitoolkit::qt, use::editing, x11::application
+koffice-data: interface::x11, role::app-data, suite::kde, uitoolkit::qt, use::editing, x11::application
+koffice-dbg: devel::library, suite::kde
+koffice-dev: devel::library, interface::x11, role::devel-lib, suite::kde, uitoolkit::qt, use::editing, x11::application
+koffice-doc: devel::doc, role::documentation, suite::kde
+koffice-doc-html: interface::x11, made-of::data:html, role::documentation, suite::kde, uitoolkit::qt, use::editing, x11::application
+koffice-i18n-af: culture::afrikaans, role::app-data, suite::kde
+koffice-i18n-bg: culture::bulgarian, role::app-data, suite::kde
+koffice-i18n-br: role::app-data, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde
+koffice-i18n-ca: culture::catalan, role::app-data, suite::kde
+koffice-i18n-cs: culture::czech, role::app-data, suite::kde
+koffice-i18n-cy: culture::welsh, role::app-data, suite::kde
+koffice-i18n-da: culture::danish, role::app-data, suite::kde
+koffice-i18n-de: culture::german, role::app-data, suite::kde
+koffice-i18n-el: culture::greek, role::app-data, suite::kde
+koffice-i18n-engb: culture::TODO, role::app-data, suite::kde
+koffice-i18n-eo: culture::esperanto, role::app-data, suite::kde
+koffice-i18n-es: culture::spanish, role::app-data, suite::kde
+koffice-i18n-et: culture::estonian, role::app-data, suite::kde
+koffice-i18n-eu: culture::basque, role::app-data, suite::kde
+koffice-i18n-fa: culture::farsi, role::app-data, suite::kde
+koffice-i18n-fi: culture::finnish, role::app-data, suite::kde
+koffice-i18n-fr: culture::french, role::app-data, suite::kde
+koffice-i18n-he: culture::hebrew, role::app-data, suite::kde
+koffice-i18n-hsb: role::app-data, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde
+koffice-i18n-hu: culture::hungarian, role::app-data, suite::kde
+koffice-i18n-it: culture::italian, role::app-data, suite::kde
+koffice-i18n-ja: culture::japanese, role::app-data, suite::kde
+koffice-i18n-lo: role::app-data, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde
+koffice-i18n-mt: role::app-data, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde
+koffice-i18n-nb: culture::bokmaal, role::app-data, suite::kde
+koffice-i18n-nl: culture::dutch, role::app-data, suite::kde
+koffice-i18n-nn: culture::nynorsk, role::app-data, suite::kde
+koffice-i18n-pl: culture::polish, role::app-data, suite::kde
+koffice-i18n-pt: culture::portuguese, role::app-data, suite::kde
+koffice-i18n-ptbr: culture::brazilian, role::app-data, suite::kde
+koffice-i18n-ru: culture::russian, role::app-data, suite::kde
+koffice-i18n-se: role::app-data, suite::kde
+koffice-i18n-sk: culture::slovak, role::app-data, suite::kde
+koffice-i18n-sl: culture::slovenian, role::app-data, suite::kde
+koffice-i18n-sr: culture::serbian, role::app-data, suite::kde
+koffice-i18n-srlatin: culture::serbian, role::app-data, suite::kde
+koffice-i18n-sv: culture::swedish, role::app-data, suite::kde
+koffice-i18n-tg: culture::tajik, role::app-data, suite::kde
+koffice-i18n-th: role::app-data, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde
+koffice-i18n-tr: culture::turkish, role::app-data, suite::kde
+koffice-i18n-uk: culture::ukrainian
+koffice-i18n-ven: role::app-data, suite::kde
+koffice-i18n-xh: role::app-data, suite::kde
+koffice-i18n-zhcn: culture::chinese, role::app-data, suite::kde
+koffice-i18n-zhcngb2312: culture::chinese, role::app-data, role::dummy, special::obsolete, suite::kde
+koffice-i18n-zhtw: role::app-data, suite::kde
+koffice-i18n-zhtwbig5: culture::taiwanese, role::app-data, role::dummy, special::obsolete, suite::kde
+koffice-i18n-zu: role::app-data, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde
+koffice-libs: interface::x11, role::shared-lib, suite::kde, uitoolkit::qt, use::editing, x11::application
+kolf: game::arcade, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+kolf-dev: devel::library, game::arcade, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::k
+kolourpaint: interface::x11, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, use::editing, works-with::image, works-with::image:raster, x11::application
+komba2: filetransfer::smb, interface::x11, protocol::smb, suite::kde, uitoolkit::qt, use::browsing, x11::application
+komi: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+kommander: devel::code-generator, devel::ui-builder, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, works-with::software:source, x11::application
+kommander-dev: devel::library, devel::ui-builder, role::devel-lib, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt
+kommando: uitoolkit::qt
+komparator: uitoolkit::qt
+kompare: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, works-with::text, x11::application
+kompose: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, works-with::software:running, x11::application
+kon2: culture::japanese, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k
+konfont: culture::japanese, made-of::data:font, role::app-data, role::program, scope::utility, works-with::font
+konq-plugins: interface::x11, protocol::http, role::plugin, suite::kde, uitoolkit::qt, use::browsing, web::browser, works-with-format::html, works-with::text, x11::application
+konq-speaker: accessibility::speech, interface::x11, role::plugin, suite::kde, uitoolkit::qt, x11::application
+konqueror: interface::x11, network::client, protocol::http, protocol::ipv6, role::program, scope::application, scope::utility, suite::kde, uitoolkit::qt, use::browsing, web::browser, works-with-format::html, works-with::file, works-with::text, x11::application
+konqueror-nsplugins: interface::x11, role::plugin, suite::kde, suite::netscape, uitoolkit::qt, use::browsing, x11::application
+konquest: game::strategy, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+konserve: admin::backup, interface::x11, role::program, scope::utility, uitoolkit::qt, x11::applet, x11::application
+konsole: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::application, x11::terminal
+konsolekalendar: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, use::organizing, use::timekeeping, works-with::pim, x11::application
+kontact: interface::x11, role::program, scope::application, scope::utility, uitoolkit::qt, works-with::pim, x11::application
+konversation: interface::x11, network::client, protocol::irc, role::program, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::gtk, uitoolkit::qt, use::chatting, web::TODO, x11::application
+konwert: culture::polish, culture::russian, culture::ukrainian, interface::commandline, role::program, scope::utility, use::converting
+konwert-dev: devel::library, interface::commandline, role::devel-lib, role::program, scope::utility, use::converting
+konwert-filters: interface::commandline, scope::utility, use::converting
+kooka: accessibility::ocr, hardware::scanner, interface::x11, role::program, suite::kde, uitoolkit::qt, works-with::image, works-with::image:raster, works-with::text, x11::application
+kopete: filetransfer::dcc, interface::x11, network::client, protocol::irc, protocol::jabber, protocol::msn-messenger, protocol::oscar, role::program, suite::kde, uitoolkit::gtk, uitoolkit::qt, use::chatting, x11::application
+korganizer: interface::x11, role::program, scope::application, scope::utility, suite::kde, uitoolkit::qt, use::organizing, works-with::pim, x11::application
+korn: interface::x11, mail::notification, protocol::imap, protocol::nntp, protocol::pop3, role::program, scope::utility, suite::kde, uitoolkit::qt, works-with::mail, x11::application
+koshell: interface::x11, suite::kde, uitoolkit::qt, use::editing, x11::application
+koth: game::strategy, interface::x11, network::client, network::server, role::program, use::gameplaying, x11::application
+koules: game::arcade, interface::x11, junior::arcade, role::program, use::gameplaying, x11::application
+kover: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::printing, x11::application
+kpackage: admin::package-management, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::browsing, use::configuring, works-with::software:package, x11::application
+kpager: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::application
+kpat: game::card, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+kpdf: interface::x11, network::client, role::program, suite::kde, uitoolkit::qt, use::viewing, works-with-format::pdf, works-with::text, x11::application
+kpercentage: field::mathematics, interface::x11, role::program, suite::kde, uitoolkit::qt, use::learning, x11::application
+kpersonalizer: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::applet, x11::application
+kpf: interface::x11, network::server, protocol::http, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::applet, x11::application
+kphone: interface::x11, network::client, protocol::voip, role::program, suite::kde, uitoolkit::qt, x11::application
+kphotoalbum: uitoolkit::qt
+kphotobymail: devel::lang:python, implemented-in::python, role::program, scope::application, scope::utility, uitoolkit::qt, works-with-format::jpg, works-with::image
+kpicosim: uitoolkit::qt
+kpilot: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::synchronizing, works-with::pim, x11::application
+kplato: interface::x11, office::project-management, role::program, suite::kde, uitoolkit::qt, use::organizing, x11::application
+kpoker: game::card, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+kpovmodeler: interface::3d, role::program, scope::application, suite::kde, uitoolkit::qt, use::editing
+kpowersave: admin::power-management, hardware::power:acpi, hardware::power:apm, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::configuring
+kppp: hardware::modem, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::dialing, x11::application
+kpresenter: interface::x11, office::presentation, role::program, scope::utility, suite::kde, uitoolkit::qt, use::editing, x11::application
+kprof: devel::profiler, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::application
+kpsion: role::program, scope::utility, uitoolkit::qt
+kpsk: hardware::hamradio, suite::kde, uitoolkit::qt
+kq: game::adventure, implemented-in::lua, interface::x11, role::program, use::gameplaying, x11::application
+kq-data: game::adventure, role::app-data, use::gameplaying, x11::application
+kradio: suite::kde, uitoolkit::qt
+krb4-config: admin::login, protocol::kerberos, role::app-data, security::authentication, use::configuring, use::login
+krb5-admin-server: admin::user-management, implemented-in::c, interface::daemon, network::server, protocol::kerberos, role::program, security::authentication
+krb5-clients: filetransfer::ftp, implemented-in::c, interface::commandline, network::client, protocol::ftp, protocol::kerberos, role::program, security::authentication, security::cryptography, uitoolkit::ncurses, use::login, works-with::file
+krb5-config: admin::login, protocol::kerberos, role::app-data, security::authentication, use::configuring, use::login
+krb5-doc: devel::doc, made-of::data:html, made-of::data:info, made-of::data:postscript, protocol::kerberos, role::documentation, security::authentication
+krb5-ftpd: filetransfer::ftp, implemented-in::c, interface::daemon, network::server, protocol::ftp, protocol::kerberos, role::program, security::authentication, security::cryptography, works-with::file
+krb5-kdc: admin::user-management, implemented-in::c, interface::daemon, network::server, protocol::kerberos, role::program, security::authentication
+krb5-rsh-server: admin::login, implemented-in::c, interface::daemon, network::server, protocol::kerberos, role::program, security::authentication, security::cryptography
+krb5-telnetd: admin::login, implemented-in::c, interface::daemon, network::server, protocol::kerberos, role::program, security::authentication, security::cryptography
+krb5-user: admin::login, admin::user-management, implemented-in::c, interface::commandline, network::client, protocol::kerberos, role::program, security::authentication, use::login
+krdc: interface::x11, network::client, role::program, scope::utility, suite::kde, uitoolkit::qt, use::login, x11::application
+krec: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, x11::application
+krecipes: uitoolkit::qt
+krecipes-data: role::app-data
+krecord: interface::x11, role::program, scope::utility, sound::player, suite::kde, uitoolkit::qt, use::playing, works-with-format::wav, works-with::audio, x11::application
+kredentials: admin::filesystem, implemented-in::c++, interface::x11, protocol::kerberos, role::program, security::authentication, uitoolkit::qt, use::login
+kregexpeditor: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, use::viewing, x11::application
+krename: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, works-with::file, x11::application
+kreversi: game::board, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+krfb: interface::x11, network::server, role::program, suite::kde, uitoolkit::qt, x11::application
+krita: interface::x11, role::program, scope::application, uitoolkit::qt, use::editing, works-with::image:raster, x11::application
+kronolith: interface::web, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::k, use::organizing, web::application, works-with::pim
+kronolith2: special::not-yet-tagged, special::not-yet-tagged::k
+kruler: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::application
+krusader: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::browsing, use::organizing, works-with::file, x11::application
+ksame: game::puzzle, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+ksayit: role::program, scope::utility, uitoolkit::qt, x11::application
+kscd: hardware::storage, hardware::storage:cd, interface::x11, role::program, scope::utility, sound::player, suite::kde, uitoolkit::qt, use::playing, works-with::audio, x11::application
+kscope: uitoolkit::qt
+kscreensaver: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::screensaver
+kscreensaver-xsavers: interface::x11, role::plugin, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, x11::screensaver
+kseg: field::mathematics, implemented-in::c++, interface::x11, uitoolkit::qt, use::learning, use::viewing, x11::application
+ksensors: admin::kernel, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::monitor, x11::application
+ksetisaver: field::astronomy, suite::kde, uitoolkit::qt, x11::screensaver
+ksh: interface::shell, role::program, scope::utility, use::login
+kshisen: game::strategy, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+kshutdown: admin::power-management, hardware::power, implemented-in::c++, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt
+ksig: interface::commandline, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, works-with::mail, x11::application
+ksim: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::monitor, x11::application
+ksimus: field::electronics, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::application
+ksimus-boolean: field::electronics, interface::x11, role::plugin, suite::kde
+ksimus-datarecorder: field::electronics, interface::x11, role::plugin, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde
+ksimus-dev: devel::library, field::electronics, role::devel-lib, suite::kde, uitoolkit::qt
+ksimus-floatingpoint: field::electronics, interface::x11, role::plugin, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde
+ksirc: filetransfer::dcc, interface::x11, network::client, protocol::irc, role::program, suite::kde, uitoolkit::qt, use::chatting, x11::application
+ksirtet: game::tetris, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+ksmiletris: game::tetris, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+ksmserver: interface::daemon, interface::x11, network::server, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::application
+ksnake: game::arcade, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+ksnapshot: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, works-with::image, works-with::image:raster, x11::applet, x11::application
+ksociograma: interface::x11, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, use::learning
+ksocrat: culture::russian, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, works-with::dictionary, x11::application
+ksocrat-data: culture::russian, interface::x11, made-of::data:dictionary, role::app-data, suite::kde, uitoolkit::qt, x11::application
+ksokoban: game::puzzle, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+kspaceduel: game::arcade, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+ksplash: interface::x11, role::program, suite::kde, uitoolkit::qt, x11::application
+ksplash-engine-moodin: uitoolkit::qt
+kspread: interface::x11, office::spreadsheet, role::program, suite::kde, uitoolkit::qt, use::editing, works-with::spreadsheet, x11::application
+kspy: devel::debugger, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, works-with::software:running, x11::application
+kst: field::chemistry, field::physics, implemented-in::c++, interface::commandline, interface::x11, role::dummy, role::metapackage, special::meta, suite::kde, use::viewing, x11::application
+kst-bin: field::chemistry, field::physics, implemented-in::c++, implemented-in::fortran, interface::commandline, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::ncurses, uitoolkit::qt, use::viewing, x11::application
+kst-doc: field::chemistry, field::physics, interface::commandline, interface::x11, made-of::data:xml, role::documentation, suite::kde, uitoolkit::qt, use::viewing, x11::application
+kst-plugins: field::chemistry, field::physics, implemented-in::c++, implemented-in::fortran, interface::commandline, interface::x11, role::plugin, suite::kde, uitoolkit::qt, use::viewing, x11::application
+kstars: field::astronomy, game::toys, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+kstars-data: field::astronomy, game::toys, interface::x11, role::app-data, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+kstart: admin::login, implemented-in::c, interface::commandline, network::client, protocol::kerberos, role::program, security::authentication, use::login
+kstreamripper: implemented-in::c++, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, x11::application
+ksubtile: suite::kde, uitoolkit::qt
+ksudoku: game::puzzle, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+ksvg: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::viewing, works-with-format::svg, works-with::image, works-with::image:vector, x11::application
+ksymoops: admin::kernel, devel::debugger, interface::commandline, role::program, scope::utility, use::converting, works-with::logfile, x11::application
+ksynaptics: hardware::laptop, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::configuring, x11::applet, x11::application
+ksync: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::synchronizing, works-with::pim, x11::application
+ksysguard: interface::x11, network::TODO, network::client, role::program, suite::kde, uitoolkit::qt, use::monitor, x11::application
+ksysguardd: interface::daemon, network::server, role::program, suite::kde, uitoolkit::qt, use::monitor, x11::application
+ksystemlog: uitoolkit::qt
+ksysv: admin::boot, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::configuring, x11::application
+ktalkd: interface::daemon, network::server, role::program, suite::kde, uitoolkit::qt, use::chatting, x11::application
+kteatime: game::toys, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::entertaining, use::timekeeping, x11::applet, x11::application
+ktechlab: uitoolkit::gtk, uitoolkit::qt
+kterm: culture::japanese, interface::x11, role::program, scope::utility, uitoolkit::athena, uitoolkit::ncurses, x11::terminal
+ktexmaker2: interface::shell, interface::x11, role::dummy, suite::kde, uitoolkit::qt, use::editing, works-with-format::tex, works-with::text, x11::application
+kthesaurus: interface::x11, made-of::data:dictionary, role::program, suite::kde, use::checking, works-with::dictionary, x11::application
+ktimer: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::timekeeping, x11::application
+ktimetrace: role::program, scope::utility, suite::kde, uitoolkit::qt, use::viewing, x11::application
+ktip: interface::x11, role::documentation, suite::kde, uitoolkit::qt, use::learning, x11::application
+ktnef: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::viewing, works-with::mail, x11::application
+ktorrent: interface::x11, network::client, network::server, protocol::bittorrent, role::program, suite::kde, uitoolkit::qt, use::downloading, x11::application
+ktouch: game::typing, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, use::learning, x11::application
+ktrack: field::astronomy, suite::kde, uitoolkit::qt
+ktron: game::arcade, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+kttsd: accessibility::screen-reader, interface::daemon, role::program, suite::kde, uitoolkit::qt, works-with::audio, works-with::file, x11::application
+kttsd-contrib-plugins: x11::application
+ktuberling: game::toys, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+kturtle: devel::ide, interface::x11, role::program, scope::utility, uitoolkit::qt, use::learning, x11::application
+ktux: game::toys, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application, x11::screensaver
+kuake: interface::x11, suite::kde, uitoolkit::qt, x11::application, x11::theme
+kudzu: admin::boot, hardware::detection, interface::daemon, role::program, scope::utility
+kudzu-dev: admin::boot, devel::library, hardware::detection, role::devel-lib
+kugar: interface::x11, role::program, scope::application, suite::kde, uitoolkit::qt, use::editing, x11::application
+kuickshow: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::viewing, works-with::image, works-with::image:raster, x11::application
+kuipc: devel::compiler, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, works-with::software:source
+kuiviewer: devel::ui-builder, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, uitoolkit::qt, use::viewing, x11::application
+kunittest: suite::kde, uitoolkit::qt
+kurush: special::not-yet-tagged, special::not-yet-tagged::k, uitoolkit::gtk
+kuser: admin::user-management, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::application
+kuvert: interface::commandline, mail::filters, role::program, scope::utility, security::cryptography, works-with::mail
+kvdr: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::playing, works-with::video, x11::application
+kverbos: culture::spanish, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::learning, x11::application
+kview: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::converting, use::viewing, works-with::image, works-with::image:raster, x11::application
+kviewshell: implemented-in::c++, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::viewing, works-with::image, works-with::image:raster, x11::application
+kvirc: filetransfer::dcc, interface::x11, network::client, protocol::irc, role::program, suite::kde, uitoolkit::qt, use::chatting, x11::application
+kvirc-data: filetransfer::dcc, interface::x11, protocol::irc, role::app-data, suite::kde, uitoolkit::qt, use::chatting, x11::application
+kvirc-dev: devel::library, filetransfer::dcc, interface::x11, protocol::irc, role::devel-lib, suite::kde, uitoolkit::qt, use::chatting, x11::application
+kvirc-doc: filetransfer::dcc, protocol::irc, role::documentation, use::chatting
+kvirc2: uitoolkit::qt
+kvirc2-dev: role::devel-lib
+kvlc: interface::x11, role::dummy, special::obsolete, suite::kde, uitoolkit::qt, use::playing, use::viewing, works-with::video
+kvm: admin::virtualization, hardware::emulation, role::program, scope::application, security::TODO, security::privacy, uitoolkit::sdl, x11::application
+kvm-source: admin::hardware, role::source, use::driver
+kvoctrain: field::linguistics, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::learning, x11::application
+kvpnc: suite::kde, uitoolkit::qt
+kwalletmanager: interface::x11, role::program, scope::utility, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, x11::application
+kwartz: devel::code-generator, devel::lang:php, devel::lang:ruby, implemented-in::ruby, role::program, scope::utility, web::scripting, works-with-format::html, works-with::text
+kwave: interface::x11, role::program, sound::mixer, suite::kde, uitoolkit::qt, use::editing, works-with-format::wav, works-with::audio, x11::application
+kwavecontrol: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, use::monitor, x11::applet, x11::application
+kweather: game::toys, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::gameplaying, x11::applet, x11::application
+kwifimanager: hardware::TODO, interface::x11, network::configuration, network::scanner, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, x11::application
+kwiki: implemented-in::perl, interface::web, role::program, scope::utility, special::completely-tagged, web::wiki
+kwin: interface::x11, role::program, suite::kde, uitoolkit::qt, x11::application, x11::window-manager
+kwin-baghira: role::special:not-applicable, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, x11::theme
+kwin-style-crystal: uitoolkit::qt
+kwin-style-dekorator: uitoolkit::qt
+kwin-style-powder: suite::kde, uitoolkit::qt
+kwin-style-serenity: uitoolkit::qt
+kwin-style-suse2: suite::kde, uitoolkit::qt
+kwin4: game::board, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+kwirelessmonitor: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, use::monitor, x11::applet, x11::application
+kwlan: uitoolkit::qt
+kword: interface::x11, role::program, scope::application, suite::kde, uitoolkit::qt, use::editing, use::text-formatting, works-with::text, x11::application
+kwordquiz: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, use::learning, x11::application
+kworldclock: game::toys, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::timekeeping, x11::applet, x11::application
+kxdocker: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, x11::applet, x11::application
+kxdocker-data: interface::x11, role::app-data, suite::kde, uitoolkit::qt, x11::application
+kxmleditor: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::editing, works-with-format::xml, x11::application
+kxsldbg: devel::debugger, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, works-with-format::xml:xslt, x11::application
+kxstitch: interface::x11, special::not-yet-tagged, special::not-yet-tagged::k, suite::kde, uitoolkit::qt, use::editing, x11::application
+kxterm: interface::x11, role::program, scope::utility, uitoolkit::motif, x11::terminal
+l2tpd: network::vpn, use::routing
+l2tpns: interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::l
+labplot: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l, suite::kde, uitoolkit::qt, works-with::image, works-with::image:raster, works-with::image:vector, works-with::spreadsheet, x11::application
+labrea: interface::daemon, network::server, network::service, protocol::ethernet, role::program, security::ids
+lacheck: interface::commandline, role::program, scope::utility, use::checking, works-with-format::tex, works-with::text
+ladcca-bin: devel::examples, interface::x11, network::client, role::documentation, role::program, uitoolkit::gtk, works-with::audio, x11::application
+ladcca-dev: devel::library, role::devel-lib, works-with::audio
+ladcca2: role::shared-lib, works-with::audio
+ladccad: interface::x11, special::not-yet-tagged, special::not-yet-tagged::l
+ladder.app: game::board, game::strategy, role::program, suite::gnu, suite::gnustep, uitoolkit::gnustep
+ladspa-sdk: devel::examples, devel::library, role::devel-lib, works-with::audio
+lakai: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l, works-with::audio
+lam-mpidoc: network::configuration, role::documentation
+lam-runtime: devel::runtime, implemented-in::fortran, network::configuration, role::program, scope::utility
+lam4: network::configuration, role::shared-lib
+lam4-dev: devel::library, network::configuration, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+lam4c2: role::shared-lib
+lambdacore: game::mud, use::gameplaying
+lambdamoo: game::mud, interface::daemon, network::server, role::program, use::gameplaying
+lambdamoo-docs: game::mud, role::documentation, use::gameplaying
+lampython: devel::interpreter, devel::lang:python, network::configuration, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l
+langband-data: game::rpg, game::rpg:rogue, role::app-data, special::auto-inst-parts, use::gameplaying
+langband-engine: game::rpg, game::rpg:rogue, use::gameplaying
+langband-vanilla: game::rpg, game::rpg:rogue, interface::text-mode, use::gameplaying
+langband-zterm: uitoolkit::sdl
+langdrill: implemented-in::c++, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::learning, x11::application
+language-env: admin::configuring, culture::bulgarian, culture::catalan, culture::danish, culture::french, culture::german, culture::japanese, culture::korean, culture::polish, culture::russian, culture::serbian, culture::spanish, culture::turkish, culture::ukrainian, devel::i18n, implemented-in::perl, implemented-in::tcl, interface::commandline, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::tk, use::configuring
+lanmap: implemented-in::c, interface::commandline, interface::daemon, network::scanner, role::program, use::monitor, works-with::image
+lapack: devel::lang:fortran, devel::library, field::mathematics, role::shared-lib
+lapack-dev: devel::lang:fortran, devel::library, field::mathematics, role::devel-lib
+lapack-doc: devel::lang:fortran, devel::library, field::mathematics, role::documentation
+lapack-pic: devel::lang:fortran, devel::library, field::mathematics, role::shared-lib
+lapack-test: devel::lang:fortran, devel::testing-qa, field::mathematics, interface::commandline, role::program, scope::utility
+lapack3: devel::lang:fortran, devel::library, field::mathematics, implemented-in::fortran, role::shared-lib
+lapack3-dev: devel::lang:fortran, devel::library, field::mathematics, implemented-in::fortran, role::devel-lib
+lapack3-doc: devel::lang:fortran, devel::library, field::mathematics, role::documentation
+lapack3-pic: devel::lang:fortran, devel::library, field::mathematics, implemented-in::fortran, role::devel-lib, role::shared-lib
+lapack3-test: devel::lang:fortran, devel::testing-qa, field::mathematics, interface::commandline, role::program, scope::utility
+lapack99: devel::lang:fortran, devel::library, field::mathematics, role::shared-lib
+lapack99-dev: devel::lang:fortran, devel::library, field::mathematics, role::devel-lib
+lapispuzzle.app: game::arcade, implemented-in::objc, interface::x11, role::plugin, special::not-yet-tagged, special::not-yet-tagged::l, suite::gnustep, uitoolkit::gnustep, use::gameplaying, x11::application
+laptop-detect: admin::configuring, hardware::laptop, implemented-in::shell, interface::commandline, role::program, scope::utility
+laptop-mode-tools: admin::kernel, admin::power-management, hardware::laptop, hardware::power, hardware::power:acpi, interface::commandline, role::program, scope::utility
+laptop-net: hardware::laptop, interface::daemon, network::configuration, network::server, protocol::dhcp, protocol::ethernet, role::program
+laptop-net-doc: hardware::laptop, network::configuration, protocol::dhcp, protocol::ethernet, role::documentation
+laptop-netconf: hardware::laptop, interface::commandline, network::configuration, role::program, scope::utility, use::configuring
+larswm: interface::x11, role::program, x11::window-manager
+lash-bin: uitoolkit::gtk
+last-exit: implemented-in::c-sharp, uitoolkit::gtk
+lastfm: implemented-in::c++, role::program, uitoolkit::qt, use::playing, works-with::audio, x11::application
+lastfmsubmitd: network::server, protocol::http, role::program
+lat: implemented-in::c-sharp, protocol::ldap, role::program, uitoolkit::gtk
+latd: admin::login, interface::commandline, interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::l, use::login
+late: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+late-data: game::arcade, role::app-data, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::sdl
+latex-beamer: role::plugin, use::typesetting, works-with-format::tex, works-with::text
+latex-bridge: game::card, made-of::data:tex, role::plugin, special::not-yet-tagged, special::not-yet-tagged::l, use::typesetting
+latex-cjk-chinese: culture::chinese, culture::taiwanese, field::linguistics, made-of::data:tex, role::plugin, use::typesetting, works-with-format::tex, works-with::font, works-with::unicode
+latex-cjk-common: culture::chinese, culture::japanese, made-of::data:tex, use::typesetting, works-with-format::tex, works-with::font
+latex-cjk-japanese: culture::japanese, implemented-in::TODO, made-of::data:tex, role::plugin, use::text-formatting, use::typesetting, works-with-format::tex, works-with::text
+latex-make: devel::buildtools, implemented-in::TODO, made-of::data:tex, role::devel-lib, role::source, use::text-formatting, works-with::text
+latex-mk: use::typesetting
+latex-source2e-doc: made-of::data:pdf, made-of::data:tex, role::documentation
+latex-svninfo: devel::rcs, role::plugin, special::not-yet-tagged, special::not-yet-tagged::l, use::typesetting, works-with-format::tex, works-with::text
+latex-ucs: role::plugin, special::not-yet-tagged, special::not-yet-tagged::l, use::typesetting, works-with-format::tex, works-with::text
+latex-ucs-contrib: role::plugin, special::not-yet-tagged, special::not-yet-tagged::l, use::typesetting, works-with-format::tex, works-with::text
+latex-ucs-dev: devel::library, role::devel-lib, use::typesetting, works-with-format::tex, works-with::text
+latex-ucs-doc: made-of::data:postscript, role::documentation, use::typesetting, works-with-format::tex, works-with::text
+latex-ucs-uninames: role::plugin, special::not-yet-tagged, special::not-yet-tagged::l, use::typesetting, works-with-format::tex, works-with::text
+latex-xcolor: role::plugin, use::typesetting, works-with-format::tex, works-with::text
+latex-xft-fonts: made-of::data:font, role::app-data, use::typesetting, works-with-format::tex, works-with::text, x11::font
+latex.service: implemented-in::objc, interface::x11, role::plugin, special::not-yet-tagged, special::not-yet-tagged::l, suite::gnustep, uitoolkit::gnustep, use::typesetting, works-with-format::tex, works-with::text, x11::application
+latex209-base: role::plugin, special::not-yet-tagged, special::not-yet-tagged::l, special::obsolete, use::typesetting, works-with-format::tex, works-with::text
+latex209-bin: interface::commandline, role::program, scope::utility, special::obsolete, use::typesetting, works-with-format::tex, works-with::text
+latex209-src: role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l, special::obsolete, use::typesetting, works-with-format::tex, works-with::text
+latex2html: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l, use::converting, works-with-format::html, works-with-format::tex, works-with::text
+latex2rtf: interface::commandline, role::program, scope::utility, use::converting, use::text-formatting, works-with-format::tex, works-with::text
+latex2rtf-doc: made-of::data:html, made-of::data:info, made-of::data:pdf, role::documentation, use::text-formatting, works-with-format::tex, works-with::text
+latrine: field::linguistics, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::learning, works-with::dictionary
+launcher: interface::x11, role::program, scope::utility, uitoolkit::tk, x11::application
+launchtool: admin::monitoring, implemented-in::c++, interface::commandline, interface::daemon, role::program, scope::utility, special::completely-tagged, use::monitor, works-with::software:running
+lavaps: game::toys, interface::x11, suite::gnome, uitoolkit::gtk, uitoolkit::tk, use::entertaining, use::monitor, works-with::software:running, x11::application
+lbdb: implemented-in::c, implemented-in::perl, implemented-in::shell, interface::commandline, protocol::finger, role::program, use::searching, works-with::db, works-with::mail
+lbreakout2: game::arcade, interface::x11, junior::arcade, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+lbreakout2-data: game::arcade, role::app-data, special::auto-inst-parts, use::gameplaying
+lbt: field::mathematics, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l, use::converting
+lbxproxy: interface::daemon, network::server, role::program, use::proxying, x11::xserver
+lcab: interface::commandline, role::program, scope::utility, use::storing, works-with::archive
+lcap: admin::kernel, interface::commandline, role::program, scope::utility
+lcd4linux: uitoolkit::ncurses
+lcdf-typetools: interface::commandline, role::program, scope::utility, use::converting, works-with-format::postscript, works-with-format::tex, works-with::font, works-with::text
+lcdproc: hardware::lcd, interface::daemon, network::client, network::server, role::program, uitoolkit::ncurses
+lcov: devel::testing-qa, implemented-in::perl, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l, works-with-format::html, works-with::text
+lcrash: admin::kernel, devel::debugger, implemented-in::c, interface::commandline, role::program, scope::utility
+lcrash-dev: admin::kernel, devel::debugger, devel::library, implemented-in::c, interface::commandline, role::devel-lib, scope::utility
+ld.so.preload-manager: implemented-in::perl, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l
+ldap-account-manager: admin::user-management, culture::french, culture::german, culture::japanese, implemented-in::php, interface::web, protocol::ldap, works-with-format::pdf, works-with::db, works-with::text
+ldap-haskell-doc: role::documentation
+ldap-utils: implemented-in::c, interface::commandline, network::client, protocol::ldap, role::program, scope::utility, works-with::db
+ldap2dns: interface::commandline, protocol::dns, protocol::ldap, role::program, scope::utility, works-with::db
+ldapdiff: implemented-in::c, interface::commandline, network::client, protocol::ldap, role::program, use::synchronizing, works-with::db
+ldapdns: interface::daemon, network::server, protocol::dns, protocol::ldap, role::program, works-with::db
+ldaptor-common: devel::lang:python, implemented-in::python, protocol::ldap, role::app-data, special::not-yet-tagged, special::not-yet-tagged::l, works-with::db
+ldaptor-doc: devel::doc, devel::lang:python, protocol::ldap, role::documentation, works-with::db
+ldaptor-utils: implemented-in::python, interface::commandline, protocol::ldap, role::program, scope::utility, works-with::db
+ldaptor-webui: admin::monitoring, admin::user-management, interface::web, protocol::ldap, role::program, scope::utility, use::editing, works-with::db
+ldapvi: interface::commandline, protocol::ldap, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::ncurses, use::editing, works-with::db
+lde: admin::filesystem, role::program, scope::utility
+ldirectord: interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::l, use::monitor
+ldm: network::server, role::program, security::authentication, uitoolkit::gtk, use::login, x11::display-manager
+ldmud: game::mud, use::gameplaying
+ldp-docbook-dsssl: made-of::data:xml, role::data, role::documentation
+ldp-docbook-xsl: made-of::data:xml, role::data, role::documentation
+ldso: devel::library, role::devel-lib
+ldtp: devel::testing-qa, implemented-in::python, interface::commandline, role::program
+le: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::ncurses, use::editing
+le-dico-de-rene-cougnenc: culture::french, made-of::data:dictionary, role::app-data
+leafnode: interface::daemon, network::server, protocol::ipv6, protocol::nntp, role::program
+leafpad: interface::x11, uitoolkit::gtk, use::editing, works-with::text, x11::application
+leaktracer: devel::debugger, devel::lang:c++, devel::testing-qa, interface::commandline, role::program, scope::utility
+leave: role::program, scope::utility, use::timekeeping
+ledcontrol: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+ledcontrol-gtk: interface::commandline, interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+ledit: implemented-in::ocaml, interface::shell, role::program, scope::utility
+ledstats: role::program, scope::utility, use::monitor
+leksbot: field::biology, interface::commandline, made-of::data:dictionary, role::app-data, role::program, scope::utility, works-with::dictionary
+lemon: devel::code-generator, devel::lang:c, devel::lang:c++, interface::commandline, role::program, scope::utility
+less: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::viewing, works-with::text
+lessdisks: admin::boot, admin::cluster, admin::configuring, admin::filesystem, hardware::embedded, hardware::storage, interface::commandline, interface::daemon, network::server, network::service, role::program, use::configuring
+lessdisks-cloner-server: admin::backup, admin::cluster, admin::file-distribution, network::server, network::service, role::program, use::synchronizing, works-with::file
+lessdisks-cloner-terminal: admin::backup, admin::cluster, admin::file-distribution, network::client, role::program, use::synchronizing, works-with::file
+lessdisks-doc: admin::cluster, admin::filesystem, role::documentation
+lessdisks-easydialog: admin::cluster, interface::text-mode
+lessdisks-terminal: admin::boot, admin::cluster, admin::login, hardware::embedded, interface::commandline, interface::daemon, interface::framebuffer, interface::shell, interface::text-mode, network::client, role::program
+lessdisks-xterminal: admin::cluster, admin::login, hardware::embedded, interface::x11, use::login, x11::xserver
+lesstif-bin: devel::library, interface::x11, role::program, scope::utility, uitoolkit::motif, x11::window-manager
+lesstif-dev: devel::library, role::devel-lib, uitoolkit::motif
+lesstif-doc: devel::library, role::documentation, uitoolkit::motif
+lesstif1: devel::library, role::shared-lib, uitoolkit::motif
+lesstif2: devel::library, role::shared-lib, uitoolkit::motif
+lesstif2-dev: devel::library, role::devel-lib, uitoolkit::motif
+levee: devel::editor, interface::commandline, role::program, scope::utility, uitoolkit::ncurses, use::editing
+lexmark7000linux: hardware::printer, use::driver, use::printing
+lfm: implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::l, use::browsing, works-with::file
+lft: interface::commandline, network::routing, role::program, scope::utility, use::routing
+lftp: filetransfer::ftp, interface::shell, interface::text-mode, network::client, protocol::ftp, protocol::http, protocol::ipv6, protocol::sftp, role::program, uitoolkit::ncurses, use::downloading, works-with::file
+lg-all: interface::web, role::metapackage
+lg-base: interface::web, role::app-data
+lg-issue01to08: interface::web, role::data
+lg-issue09: interface::web, role::data
+lg-issue10: interface::web, role::data
+lg-issue100: interface::web, role::data
+lg-issue101: interface::web, role::data
+lg-issue102: interface::web, role::data
+lg-issue103: interface::web, role::data
+lg-issue104: interface::web, role::data
+lg-issue105: interface::web, role::data
+lg-issue106: interface::web, role::data
+lg-issue107: interface::web, role::data
+lg-issue108: interface::web, role::data
+lg-issue109: interface::web, role::data
+lg-issue11: interface::web, role::data
+lg-issue110: interface::web, role::data
+lg-issue111: interface::web, role::data
+lg-issue112: interface::web, role::data
+lg-issue113: interface::x11, role::data
+lg-issue12: interface::web, role::data
+lg-issue13: interface::web, role::data
+lg-issue14: interface::web, role::data
+lg-issue15: interface::web, role::data
+lg-issue16: interface::web, role::data
+lg-issue17: interface::web, role::data
+lg-issue18: interface::web, role::data
+lg-issue19: interface::web, role::data
+lg-issue20: interface::web, role::data
+lg-issue21: interface::web, role::data
+lg-issue22: interface::web, role::data
+lg-issue23: interface::web, role::data
+lg-issue24: interface::web, role::data
+lg-issue25: interface::web, role::data
+lg-issue26: interface::web, role::data
+lg-issue27: interface::web, role::data
+lg-issue28: interface::web, role::data
+lg-issue29: interface::web, role::data
+lg-issue30: interface::web, role::data
+lg-issue31: interface::web, role::data
+lg-issue32: interface::web, role::data
+lg-issue33: interface::web, role::data
+lg-issue34: interface::web, role::data
+lg-issue35: interface::web, role::data
+lg-issue36: interface::web, role::data
+lg-issue37: interface::web, role::data
+lg-issue38: interface::web, role::data
+lg-issue39: interface::web, role::data
+lg-issue40: interface::web, role::data
+lg-issue41: interface::web, role::data
+lg-issue42: interface::web, role::data
+lg-issue43: interface::web, role::data
+lg-issue44: interface::web, role::data
+lg-issue45: interface::web, role::data
+lg-issue46: interface::web, role::data
+lg-issue47: interface::web, role::data
+lg-issue48: interface::web, role::data
+lg-issue49: interface::web, role::data
+lg-issue50: interface::web, role::data
+lg-issue51: interface::web, role::data
+lg-issue52: interface::web, role::data
+lg-issue53: interface::web, role::data
+lg-issue54: interface::web, role::data
+lg-issue55: interface::web, role::data
+lg-issue56: interface::web, role::data
+lg-issue57: interface::web, role::data
+lg-issue58: interface::web, role::data
+lg-issue59: interface::web, role::data
+lg-issue60: interface::web, role::data
+lg-issue61: interface::web, role::data
+lg-issue62: interface::web, role::data
+lg-issue63: interface::web, role::data
+lg-issue64: interface::web, role::data
+lg-issue65: interface::web, role::data
+lg-issue66: interface::web, role::data
+lg-issue67: interface::web, role::data
+lg-issue68: interface::web, role::data
+lg-issue69: interface::web, role::data
+lg-issue70: interface::web, role::data
+lg-issue71: interface::web, role::data
+lg-issue72: interface::web, role::data
+lg-issue73: interface::web, role::data
+lg-issue74: interface::web, role::data
+lg-issue75: interface::web, role::data
+lg-issue76: interface::web, role::data
+lg-issue77: interface::web, role::data
+lg-issue78: interface::web, role::data
+lg-issue79: interface::web, role::data
+lg-issue80: interface::web, role::data
+lg-issue81: interface::web, role::data
+lg-issue82: interface::web, role::data
+lg-issue83: interface::web, role::data
+lg-issue84: interface::web, role::data
+lg-issue85: interface::web, role::data
+lg-issue86: interface::web, role::data
+lg-issue87: interface::web, role::data
+lg-issue88: interface::web, role::data
+lg-issue89: interface::web, role::data
+lg-issue90: interface::web, role::data
+lg-issue91: interface::web, role::data
+lg-issue92: interface::web, role::data
+lg-issue93: interface::web, role::data
+lg-issue94: interface::web, role::data
+lg-issue95: interface::web, role::data
+lg-issue96: interface::web, role::data
+lg-issue97: interface::web, role::data
+lg-issue98: interface::web, role::data
+lg-issue99: interface::web, role::data
+lg-latest-two: interface::web, role::metapackage
+lg-subscription: interface::web, role::metapackage
+lgc-pg: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::sdl
+lgeneral: game::strategy, uitoolkit::sdl, use::gameplaying
+lgrind: devel::prettyprint, use::printing
+lha: interface::commandline, role::program, scope::utility, use::storing, works-with::archive
+lhs2tex: devel::doc, devel::docsystem, devel::lang:haskell, devel::prettyprint, implemented-in::haskell, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l, works-with-format::tex, works-with::software:source, works-with::text
+lib-dom-java: devel::lang:java, devel::library, role::dummy
+lib32z1-dev: role::devel-lib, use::compressing
+lib3ds-dev: devel::lang:c, devel::library, role::devel-lib, works-with::3dmodel
+lib64asound2: role::shared-lib
+lib64asound2-dev: devel::library
+lib64bz2-1.0: role::shared-lib, use::compressing
+lib64bz2-dev: devel::library
+lib64ffi4: role::shared-lib
+lib64g2c0: devel::lang:fortran, role::shared-lib, suite::gnu
+lib64gcc1: admin::hardware, devel::library, role::shared-lib
+lib64gfortran1: role::shared-lib, suite::gnu
+lib64mudflap0: role::shared-lib
+lib64ncurses5: devel::lang:c, interface::text-mode, role::shared-lib, suite::special:not-applicable, use::text-formatting, works-with::text, x11::special:not-applicable
+lib64ncurses5-dev: devel::library, uitoolkit::ncurses
+lib64objc1: role::shared-lib, suite::gnu
+lib64readline5: implemented-in::c, role::shared-lib, suite::gnu
+lib64readline5-dev: devel::library, implemented-in::c, suite::gnu
+lib64ssp0: role::shared-lib
+lib64stdc++6: devel::lang:c++, devel::library, role::shared-lib, suite::gnu
+lib64stdc++6-4.0-dbg: devel::library
+lib64stdc++6-4.1-dbg: devel::library, suite::gnu
+lib64z1: role::shared-lib
+lib64z1-dev: devel::library, role::devel-lib
+liba52-0.7.4: devel::library, role::shared-lib
+liba52-0.7.4-dev: devel::library, role::devel-lib
+libaa-bin: uitoolkit::ncurses
+libaa1: role::shared-lib, uitoolkit::ncurses
+libaa1-dev: devel::library, role::devel-lib, uitoolkit::ncurses
+libaal-dev: admin::filesystem, devel::library, role::devel-lib
+libabz0: devel::lang:c, devel::library, role::shared-lib
+libabz0-dev: devel::lang:c, devel::library, role::devel-lib
+libaca-dev: devel::library, interface::text-mode, role::devel-lib, uitoolkit::ncurses
+libaca0: devel::library, interface::text-mode, role::shared-lib, uitoolkit::ncurses
+libace-dev: devel::library, devel::rpc, implemented-in::c++, role::devel-lib
+libace-doc: devel::doc, devel::lang:c++, devel::rpc, role::documentation
+libace-flreactor-dev: devel::library, implemented-in::c++, interface::x11, role::devel-lib, uitoolkit::TODO
+libace-flreactor5.4: role::shared-lib, uitoolkit::TODO
+libace-flreactor5.4.7c2a: implemented-in::c++, role::shared-lib
+libace-htbp-dev: devel::library
+libace-qtreactor-dev: devel::library, implemented-in::c++, interface::x11, role::devel-lib, uitoolkit::qt
+libace-qtreactor5.4: role::shared-lib
+libace-qtreactor5.4.7c2a: uitoolkit::qt
+libace-rmcast-dev: devel::library, implemented-in::c++, role::devel-lib
+libace-rmcast5.4: role::shared-lib
+libace-ssl-dev: devel::library
+libace-tkreactor-dev: devel::library, implemented-in::c++, role::devel-lib, uitoolkit::tk
+libace-tkreactor5.4: role::shared-lib
+libace-tmcast-dev: devel::library
+libace-xtreactor-dev: devel::library, implemented-in::c++, role::devel-lib
+libace-xtreactor5.4: role::shared-lib
+libace5.4: devel::rpc, implemented-in::c++, role::shared-lib
+libacexml-dev: devel::library, implemented-in::c++, role::devel-lib, works-with-format::xml
+libacexml5.4: role::shared-lib
+libacl1: admin::user-management, devel::library, role::shared-lib
+libacl1-dev: admin::user-management, devel::library, role::devel-lib
+libacme-brainfck-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libacme-poe-knee-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libacovea-5.1-5: role::shared-lib
+libacr38ucontrol-dev: devel::library
+libacr38ucontrol0: role::shared-lib
+libactiveldap-ruby: devel::lang:ruby
+libactiveldap-ruby1.8: devel::lang:ruby, role::shared-lib
+libadabindx-dev: devel::lang:ada, devel::library, implemented-in::ada, interface::x11, role::devel-lib, uitoolkit::motif
+libadabindx0: devel::lang:ada, implemented-in::ada, interface::x11, role::shared-lib, uitoolkit::motif
+libadasockets-dev: devel::library
+libadasockets0: devel::lang:ada, devel::library, implemented-in::ada, role::shared-lib
+libadasockets0-dev: devel::lang:ada, devel::library, implemented-in::ada, role::devel-lib
+libadasockets1: role::shared-lib
+libaddresses-dev: devel::library
+libaddresses0: role::shared-lib
+libaddressview-dev: devel::library
+libaddressview0: role::shared-lib
+libadduser-pluginloader-perl: admin::user-management, devel::lang:perl, implemented-in::perl, role::shared-lib
+libadns1: devel::lang:c, devel::lang:c++, devel::library, protocol::dns, role::shared-lib
+libadns1-bin: devel::lang:c, devel::lang:c++, devel::library, interface::commandline, protocol::dns, role::program, scope::utility, use::checking
+libadns1-dev: devel::lang:c, devel::lang:c++, devel::library, protocol::dns, role::devel-lib
+libadolc-dev: devel::lang:c, devel::lang:c++, devel::library, field::mathematics, implemented-in::c++, role::devel-lib
+libadolc0: role::shared-lib
+libadolc1: devel::lang:c, devel::lang:c++, devel::library, field::mathematics, implemented-in::c++, role::shared-lib
+libadolc1-doc: devel::doc, devel::lang:c, devel::lang:c++, devel::library, field::mathematics, made-of::data:postscript, role::documentation
+libadolc1-examples: devel::examples, devel::lang:c, devel::lang:c++, devel::library, field::mathematics, implemented-in::c++, interface::commandline, role::program, scope::utility, use::checking
+libadplug-dev: devel::library
+libadplug0c2a: role::shared-lib
+libaffix-dev: admin::hardware, devel::library, role::devel-lib
+libaffix2: admin::hardware, devel::library, role::shared-lib
+libafterimage-dev: devel::lang:c, devel::library, implemented-in::c, interface::x11, role::devel-lib
+libafterimage0: devel::library, interface::x11, role::shared-lib
+libafterstep1: implemented-in::c, interface::x11, role::shared-lib, uitoolkit::gtk
+libagg-dev: devel::library
+libagrep-ocaml: devel::lang:ocaml, devel::library, implemented-in::ocaml, use::searching, works-with::text
+libagrep-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib, use::searching, works-with::text
+libaiksaurus-1.2-0c2a: role::shared-lib, works-with::dictionary
+libaiksaurus-1.2-data: made-of::data:dictionary
+libaiksaurus-1.2-dev: devel::library, uitoolkit::gtk
+libaiksaurus-data: devel::library, role::app-data
+libaiksaurus-dev: devel::library
+libaiksaurus0c102: devel::library, role::shared-lib
+libaiksaurusgtk-1.2-0c2a: role::shared-lib, uitoolkit::gtk, works-with::dictionary
+libaiksaurusgtk-1.2-dev: devel::library, uitoolkit::gtk
+libaiksaurusgtk-dev: devel::library, interface::x11
+libaiksaurusgtk0c102: devel::library, interface::x11, role::shared-lib, uitoolkit::gtk
+libaio-dev: devel::library
+libaio1: role::shared-lib
+libaire0: admin::hardware, field::electronics, role::shared-lib
+libakode-dev: devel::library
+libakode2: role::shared-lib
+libaldmb0: devel::library, role::shared-lib, works-with::audio
+libaldmb0-dev: devel::library, role::devel-lib, works-with::audio
+libaldmb1: role::shared-lib
+libaldmb1-dev: devel::library
+libalgorithm-annotate-perl: devel::lang:perl, devel::rcs, implemented-in::perl, role::shared-lib
+libalgorithm-c3-perl: devel::lang:perl
+libalgorithm-dependency-perl: devel::lang:perl
+libalgorithm-diff-perl: devel::lang:perl, devel::library, devel::rcs, implemented-in::perl, role::shared-lib
+libalgorithm-diff-ruby: devel::lang:ruby, devel::library, devel::rcs, implemented-in::ruby, role::metapackage
+libalgorithm-diff-ruby1.6: devel::lang:ruby, devel::library, devel::rcs, implemented-in::ruby
+libalgorithm-diff-ruby1.8: devel::lang:ruby, devel::library, devel::rcs, implemented-in::ruby
+libalias-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+liballegro-dev: devel::library, role::devel-lib, use::gameplaying
+liballegro-doc: devel::doc, devel::library, made-of::data:html, made-of::data:info, made-of::data:man, role::documentation, use::gameplaying
+liballegro4.1: devel::library, role::shared-lib, use::gameplaying
+liballegro4.1-dbg: devel::library, role::shared-lib, use::gameplaying
+liballegro4.1-plugin-arts: devel::library, role::shared-lib, use::gameplaying, works-with::audio
+liballegro4.1-plugin-esd: devel::library, role::shared-lib, use::gameplaying, works-with::audio
+liballegro4.1-plugin-jack: devel::library, role::shared-lib, use::gameplaying, works-with::audio
+liballegro4.1-plugin-svgalib: devel::library, interface::svga, role::shared-lib, use::gameplaying
+liballegro4.2: role::shared-lib
+liballegro4.2-dev: devel::library
+liballegro4a: devel::library, role::shared-lib, use::gameplaying
+liballegro4a-plugin-arts: devel::library, role::shared-lib, use::gameplaying, works-with::audio
+liballegro4a-plugin-esd: devel::library, role::shared-lib, use::gameplaying, works-with::audio
+liballegro4a-plugin-svgalib: devel::library, interface::svga, role::shared-lib, use::gameplaying
+libalogg: devel::library, role::shared-lib, use::gameplaying, works-with-format::oggvorbis, works-with::audio
+libalogg-dev: devel::library, role::devel-lib, use::gameplaying, works-with-format::oggvorbis, works-with::audio
+libalps-heap1: field::physics, role::shared-lib
+libalps-heap1-dev: devel::library, field::physics
+libalps-light1: field::physics, role::shared-lib
+libalps-light1-dev: devel::library, field::physics
+libalps-mpi1: field::physics, role::shared-lib
+libalps-mpi1-dev: devel::library, field::physics
+libalps-pvm1: field::physics, role::shared-lib
+libalps-pvm1-dev: devel::library, field::physics
+libalps-sgl1: field::physics, role::shared-lib
+libalps-sgl1-dev: devel::library, field::physics
+libalps1: role::shared-lib
+libalps1-dev: devel::library
+libalsaplayer-dev: devel::library, role::devel-lib, works-with::audio
+libalsaplayer0: devel::library, role::shared-lib, works-with::audio
+libaltlinuxhyph-dev: devel::library, role::devel-lib, works-with-format::tex, works-with::text
+libalut-dev: devel::library
+libalut0: role::shared-lib
+libalzabo-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libamazon-ruby: devel::lang:ruby, devel::library, implemented-in::ruby, protocol::http
+libamrita-ruby1.6: devel::lang:ruby, devel::library, implemented-in::ruby, works-with-format::html, works-with::text
+libamrita-ruby1.8: devel::lang:ruby, devel::library, implemented-in::ruby, works-with-format::html, works-with::text
+libamstd-ruby1.8: devel::lang:ruby, devel::library, implemented-in::ruby
+libamu-dev: admin::filesystem, devel::library, role::devel-lib
+libamu2: role::shared-lib
+libamu4: role::shared-lib
+libannodex0: devel::library, role::shared-lib, works-with::video
+libannodex0-dbg: devel::library, special::not-yet-tagged, special::not-yet-tagged::l
+libannodex0-dev: devel::library, role::devel-lib, works-with::video
+libant1.5-java: devel::lang:java
+libant1.6-java: devel::buildtools, devel::lang:java, devel::library, implemented-in::java
+libanthy-dev: accessibility::input, culture::japanese, devel::library, role::devel-lib
+libanthy0: accessibility::input, culture::japanese, devel::library, role::shared-lib
+libantlr-dev: devel::code-generator, devel::lang:c++, devel::library, role::devel-lib
+libanydata-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libao-dev: devel::library, role::devel-lib, works-with::audio
+libao2: devel::library, role::shared-lib, works-with::audio
+libapache-admin-config-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, suite::apache
+libapache-asp-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::http, role::shared-lib, suite::apache, web::appserver
+libapache-auth-ldap: devel::library, interface::daemon, network::server, role::program, security::authentication, suite::apache, web::server
+libapache-authcookie-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::http, role::shared-lib, security::authentication, suite::apache
+libapache-authensmb: devel::library, protocol::http, protocol::smb, role::plugin, security::authentication, suite::apache
+libapache-authnetldap-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::ldap, role::shared-lib, security::authentication, suite::apache, works-with::db
+libapache-authznetldap-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::ldap, role::shared-lib, security::authentication, suite::apache, works-with::db
+libapache-configfile-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, suite::apache, use::configuring
+libapache-csacek: devel::i18n, devel::library, network::server, role::program, suite::apache, use::converting, works-with::text
+libapache-db-perl: devel::debugger, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, suite::apache
+libapache-dbi-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, suite::apache, works-with::db
+libapache-dbilogconfig-perl: admin::logging, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, suite::apache, works-with::db
+libapache-dbilogger-perl: admin::monitoring, devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, suite::apache, works-with::db
+libapache-filter-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, suite::apache, use::converting
+libapache-gallery-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, suite::apache, works-with::image, works-with::image:raster
+libapache-htpasswd-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, security::authentication, suite::apache
+libapache-miniwiki-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, suite::apache, web::wiki
+libapache-mod-acct-mysql: admin::logging, devel::lang:sql, devel::library, implemented-in::c, protocol::http, role::plugin, suite::apache, works-with::db, works-with::logfile
+libapache-mod-acct-pgsql: admin::logging, devel::lang:sql, devel::library, implemented-in::c, protocol::http, role::plugin, suite::apache, works-with::db, works-with::logfile
+libapache-mod-aspseek: devel::library, interface::daemon, network::server, role::program, suite::apache, web::server
+libapache-mod-auth-curdir: devel::library, interface::web, protocol::http, role::plugin, security::authentication, suite::apache
+libapache-mod-auth-kerb: devel::library, protocol::http, protocol::kerberos, role::plugin, security::authentication, suite::apache
+libapache-mod-auth-mysql: devel::lang:sql, devel::library, implemented-in::c, interface::web, protocol::http, role::plugin, security::authentication, suite::apache, works-with::db
+libapache-mod-auth-pam: devel::library, interface::web, protocol::http, role::plugin, security::authentication, suite::apache
+libapache-mod-auth-pgsql: devel::lang:sql, devel::library, implemented-in::c, interface::web, protocol::http, role::plugin, security::authentication, suite::apache, works-with::db
+libapache-mod-auth-plain: devel::library, interface::web, protocol::http, role::plugin, security::authentication, suite::apache
+libapache-mod-auth-radius: devel::library, interface::web, protocol::http, protocol::radius, role::plugin, security::authentication, suite::apache
+libapache-mod-auth-shadow: admin::user-management, devel::library, interface::web, protocol::http, role::plugin, security::authentication, suite::apache
+libapache-mod-auth-useragent: devel::library, interface::web, protocol::http, role::plugin, security::authentication, suite::apache
+libapache-mod-backhand: devel::library, network::load-balancing, protocol::http, role::plugin, suite::apache
+libapache-mod-cgi-debug: devel::debugger, devel::library, role::plugin, suite::apache, web::cgi
+libapache-mod-choke: devel::library, network::load-balancing, protocol::http, role::plugin, suite::apache
+libapache-mod-chroot: admin::user-management, devel::library, interface::daemon, role::plugin, suite::apache
+libapache-mod-dav: devel::library, protocol::http, protocol::webdav, role::plugin, suite::apache
+libapache-mod-dosevasive: suite::apache
+libapache-mod-encoding: devel::i18n, devel::library, protocol::http, role::plugin, suite::apache, use::converting
+libapache-mod-fastcgi: devel::library, role::plugin, suite::apache, web::cgi
+libapache-mod-filter: devel::library, protocol::http, role::plugin, suite::apache, use::converting, works-with-format::html, works-with::text
+libapache-mod-frontpage-mirfak: devel::library, interface::daemon, network::server, role::program, suite::apache, web::server
+libapache-mod-geoip: suite::apache
+libapache-mod-gzip: devel::library, protocol::http, role::plugin, suite::apache, use::compressing
+libapache-mod-index-rss: devel::library, protocol::http, role::plugin, suite::apache, works-with-format::xml, works-with-format::xml:rss
+libapache-mod-interchange: devel::library, interface::daemon, network::server, role::program, suite::apache, web::server
+libapache-mod-iptos: devel::library, network::load-balancing, role::plugin, suite::apache
+libapache-mod-jk: devel::lang:java, devel::library, role::plugin, suite::apache, web::appserver
+libapache-mod-jk-doc: suite::apache
+libapache-mod-layout: devel::library, protocol::http, role::plugin, suite::apache, works-with-format::html, works-with::text
+libapache-mod-ldap: devel::library, protocol::ldap, role::plugin, security::authentication, suite::apache, works-with::db
+libapache-mod-limitipconn: devel::library, network::load-balancing, protocol::http, role::plugin, suite::apache
+libapache-mod-lisp: devel::lang:lisp, devel::library, network::server, protocol::http, role::program, suite::apache, web::scripting
+libapache-mod-mono: special::not-yet-tagged, special::not-yet-tagged::l, suite::apache
+libapache-mod-mp3: devel::library, interface::web, role::plugin, suite::apache, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+libapache-mod-musicindex: implemented-in::c, interface::web, role::plugin, suite::apache, use::downloading, use::organizing, use::playing, use::searching, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+libapache-mod-ngobjweb: suite::apache
+libapache-mod-perl: devel::lang:perl, devel::library, implemented-in::perl, role::plugin, suite::apache
+libapache-mod-perl-doc: devel::doc, devel::lang:perl, devel::library, made-of::data:html, made-of::data:pdf, role::documentation, suite::apache
+libapache-mod-php4: devel::lang:php, devel::library, protocol::kerberos, protocol::ssl, role::plugin, suite::apache, web::scripting
+libapache-mod-php5: suite::apache
+libapache-mod-python: devel::lang:python, devel::library, role::metapackage, role::plugin, suite::apache, web::cgi
+libapache-mod-python-doc: devel::lang:python, devel::library, made-of::data:html, role::documentation, suite::apache, web::cgi
+libapache-mod-python2.1: devel::lang:python, devel::library, role::plugin, suite::apache, web::cgi
+libapache-mod-python2.2: devel::lang:python, devel::library, role::plugin, suite::apache, web::cgi
+libapache-mod-python2.3: devel::lang:python, devel::library, role::plugin, suite::apache, web::cgi
+libapache-mod-random: devel::library, interface::web, protocol::http, role::plugin, suite::apache
+libapache-mod-relocate: devel::library, interface::web, protocol::http, role::plugin, suite::apache
+libapache-mod-removeip: suite::apache
+libapache-mod-repository: devel::library, interface::web, role::plugin, suite::apache, use::storing
+libapache-mod-rpaf: devel::library, protocol::http, role::plugin, suite::apache, use::proxying
+libapache-mod-ruby: devel::lang:ruby, devel::library, role::plugin, suite::apache, web::cgi
+libapache-mod-scgi: devel::library, protocol::http, role::plugin, suite::apache, web::cgi
+libapache-mod-security: admin::logging, devel::library, role::plugin, security::authentication, suite::apache
+libapache-mod-speedycgi: devel::library, protocol::http, role::plugin, suite::apache, web::cgi
+libapache-mod-ssl: devel::library, protocol::http, protocol::ssl, role::plugin, suite::apache
+libapache-mod-ssl-doc: devel::library, made-of::data:html, protocol::http, protocol::ssl, role::documentation, suite::apache
+libapache-mod-suphp: devel::lang:php, devel::library, role::plugin, suite::apache, web::scripting
+libapache-mod-text2html: devel::library, interface::web, role::plugin, suite::apache, works-with-format::plaintext, works-with::text
+libapache-mod-trigger: devel::library, role::plugin, suite::apache
+libapache-mod-tsunami: devel::library, network::load-balancing, protocol::http, role::plugin, suite::apache
+libapache-mod-witch: devel::library, interface::daemon, network::server, role::program, suite::apache, web::server
+libapache-mod-xslt: devel::library, role::plugin, suite::apache, works-with-format::html, works-with-format::xml, works-with::text
+libapache-modxslt: special::not-yet-tagged, special::not-yet-tagged::l, suite::apache
+libapache-reload-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, suite::apache
+libapache-request-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::http, role::shared-lib, suite::apache
+libapache-requestnotes-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::http, role::shared-lib, suite::apache
+libapache-ruby1.8: devel::lang:ruby, devel::library, implemented-in::ruby, suite::apache
+libapache-session-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::web, protocol::http, role::shared-lib, suite::apache
+libapache-session-wrapper-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::web, protocol::http, role::shared-lib, suite::apache
+libapache-sessionx-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::web, protocol::http, role::shared-lib, suite::apache
+libapache-singleton-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, suite::apache
+libapache-ssi-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::http, role::shared-lib, suite::apache
+libapache-stage-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::web, role::shared-lib, suite::apache, works-with-format::html, works-with::text
+libapache-template-perl: devel::lang:perl, devel::library, implemented-in::perl, suite::apache, works-with-format::html, works-with::text
+libapache2-mod-annodex: suite::apache
+libapache2-mod-apreq2: suite::apache
+libapache2-mod-auth-kerb: devel::library, interface::web, protocol::http, protocol::kerberos, role::plugin, security::authentication, suite::apache
+libapache2-mod-auth-mysql: devel::lang:sql, devel::library, implemented-in::c, interface::web, protocol::http, role::plugin, security::authentication, suite::apache, works-with::db
+libapache2-mod-auth-pam: devel::library, interface::web, protocol::http, role::plugin, security::authentication, suite::apache
+libapache2-mod-auth-pgsql: devel::lang:sql, devel::library, implemented-in::c, interface::web, protocol::http, role::plugin, security::authentication, suite::apache, works-with::db
+libapache2-mod-auth-plain: devel::library, interface::web, protocol::http, role::plugin, security::authentication, suite::apache
+libapache2-mod-auth-sys-group: admin::user-management, devel::library, interface::web, protocol::http, role::plugin, security::authentication, suite::apache
+libapache2-mod-bt: suite::apache
+libapache2-mod-bt-dev: devel::library, suite::apache
+libapache2-mod-cband: suite::apache
+libapache2-mod-chroot: admin::user-management, devel::library, interface::daemon, role::plugin, suite::apache
+libapache2-mod-dnssd: suite::apache
+libapache2-mod-encoding: devel::i18n, devel::library, protocol::http, role::plugin, suite::apache, use::converting
+libapache2-mod-fastcgi: special::not-yet-tagged, special::not-yet-tagged::l, suite::apache
+libapache2-mod-fcgid: devel::library, role::plugin, suite::apache, web::cgi
+libapache2-mod-geoip: suite::apache
+libapache2-mod-ifier: protocol::http, role::plugin, suite::apache, use::filtering
+libapache2-mod-jk: suite::apache
+libapache2-mod-jk2: devel::lang:java, devel::library, role::plugin, suite::apache, web::appserver
+libapache2-mod-layout: devel::library, interface::web, role::plugin, suite::apache, works-with-format::html, works-with::text
+libapache2-mod-ldap-userdir: admin::user-management, devel::library, protocol::ldap, role::plugin, suite::apache, works-with::db
+libapache2-mod-macro: admin::configuring, devel::library, role::plugin, suite::apache
+libapache2-mod-mime-xattr: suite::apache
+libapache2-mod-mono: suite::apache
+libapache2-mod-musicindex: implemented-in::c, interface::web, role::plugin, suite::apache, use::downloading, use::organizing, use::playing, use::searching, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+libapache2-mod-ngobjweb: suite::apache
+libapache2-mod-perl2: devel::lang:perl, devel::library, implemented-in::perl, role::plugin, suite::apache
+libapache2-mod-perl2-dev: devel::lang:c, devel::lang:perl, devel::library, role::devel-lib, suite::apache
+libapache2-mod-perl2-doc: role::documentation, suite::apache, web::appserver, web::cgi
+libapache2-mod-php4: devel::lang:php, devel::library, role::plugin, suite::apache
+libapache2-mod-php5: suite::apache
+libapache2-mod-proxy-html: devel::library, protocol::http, role::plugin, suite::apache, use::proxying, works-with-format::html, works-with::text
+libapache2-mod-python: devel::lang:python, devel::library, role::metapackage, role::plugin, suite::apache, web::cgi
+libapache2-mod-python-doc: devel::lang:python, devel::library, made-of::data:html, role::documentation, suite::apache, web::cgi
+libapache2-mod-python2.2: devel::lang:python, devel::library, role::plugin, suite::apache, web::cgi
+libapache2-mod-python2.3: devel::lang:python, devel::library, role::plugin, suite::apache, web::cgi
+libapache2-mod-removeip: suite::apache
+libapache2-mod-rpaf: devel::library, role::plugin, suite::apache, use::proxying
+libapache2-mod-ruby: devel::lang:ruby, devel::library, role::plugin, suite::apache, web::cgi
+libapache2-mod-scgi: devel::library, protocol::http, role::plugin, suite::apache, web::cgi
+libapache2-mod-security: admin::logging, devel::library, role::plugin, security::authentication, suite::apache
+libapache2-mod-shib: implemented-in::c++, interface::web, protocol::http, role::plugin, security::authentication, suite::apache
+libapache2-mod-speedycgi: suite::apache
+libapache2-mod-suphp: devel::lang:php, devel::library, role::plugin, suite::apache, web::scripting
+libapache2-mod-vhost-hash-alias: suite::apache
+libapache2-mod-vhost-ldap: suite::apache
+libapache2-mod-xmlrpc2: devel::library, devel::rpc, interface::web, protocol::http, protocol::xmlrpc, role::plugin, suite::apache
+libapache2-modbt-perl: devel::lang:perl, suite::apache
+libapache2-modxslt: special::not-yet-tagged, special::not-yet-tagged::l, suite::apache
+libapache2-redirtoservname: devel::library, protocol::http, role::plugin, suite::apache
+libapache2-request-perl: devel::lang:c, devel::lang:perl, devel::library, implemented-in::perl, protocol::http, suite::apache
+libapache2-svn: devel::library, devel::rcs, interface::web, network::service, protocol::http, protocol::webdav, role::plugin, security::authentication, suite::apache
+libapache2-webauth: implemented-in::c, interface::web, protocol::http, protocol::kerberos, role::plugin, security::authentication, special::not-yet-tagged, special::not-yet-tagged::l, suite::apache
+libapache2-webkdc: admin::login, implemented-in::c, interface::web, network::server, protocol::http, protocol::kerberos, role::plugin, security::authentication, special::not-yet-tagged, special::not-yet-tagged::l, suite::apache
+libapertium-1.0-0: role::shared-lib
+libapertium-1.0-0-dev: devel::library
+libapm-dev: admin::power-management, devel::library, hardware::power, hardware::power:apm, role::devel-lib
+libapm1: admin::power-management, devel::library, hardware::power, hardware::power:apm, role::shared-lib
+libapol-dev: devel::library
+libapol1: role::shared-lib
+libapp-cache-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libapp-info-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, role::source
+libappconfig-perl: admin::configuring, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libapr0: devel::library, devel::runtime, role::shared-lib, suite::apache
+libapr0-dev: devel::library, devel::runtime, role::devel-lib, suite::apache
+libapr1: role::shared-lib, suite::apache
+libapr1-dbg: devel::library, suite::apache
+libapr1-dev: devel::library, suite::apache
+libapreq2: suite::apache
+libapreq2-dev: suite::apache
+libapreq2-doc: suite::apache
+libaprutil1: role::shared-lib, suite::apache
+libaprutil1-dbg: devel::library, suite::apache
+libaprutil1-dev: devel::library, suite::apache
+libapt-front-dev: admin::package-management, devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, works-with::software:package
+libapt-pkg-dev: admin::package-management, devel::debian, devel::library, role::devel-lib, suite::debian, works-with::software:package
+libapt-pkg-doc: admin::package-management, devel::debian, devel::doc, devel::library, made-of::data:html, role::documentation, suite::debian, works-with::software:package
+libapt-pkg-perl: admin::package-management, devel::debian, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, suite::debian, works-with::software:package
+libapt-rpm-pkg-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libapt-rpm-pkg-libc6.3-5-0: special::not-yet-tagged, special::not-yet-tagged::l
+libapt-rpm-pkg-libc6.3-6-2: role::shared-lib
+libaqbanking-data: role::app-data, special::not-yet-tagged, special::not-yet-tagged::l
+libaqbanking-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libaqbanking-plugins-libgwenhywfar17: special::not-yet-tagged, special::not-yet-tagged::l
+libaqbanking-plugins-libgwenhywfar38: role::shared-lib
+libaqbanking0: special::not-yet-tagged, special::not-yet-tagged::l
+libaqbanking0-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libaqbanking16: role::shared-lib
+libaqbanking16-dev: devel::library
+libaqdtaus3: role::shared-lib
+libaqgeldkarte4: role::shared-lib
+libaqhbci-data: role::app-data, special::not-yet-tagged, special::not-yet-tagged::l
+libaqhbci-plugin-libaqbanking0: special::not-yet-tagged, special::not-yet-tagged::l
+libaqhbci-qt-tools: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::qt
+libaqhbci10: role::shared-lib
+libaqhbci2: special::not-yet-tagged, special::not-yet-tagged::l
+libaqhbci2-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libaqnone0: role::shared-lib
+libarb: field::biology, special::not-yet-tagged, special::not-yet-tagged::l
+libarch-perl: devel::lang:perl, devel::library, devel::rcs, implemented-in::perl, role::shared-lib
+libarchive-ar-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, works-with::archive
+libarchive-dev: devel::library
+libarchive-tar-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::storing, works-with-format::tar, works-with::archive
+libarchive-zip-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::compressing, use::storing, works-with-format::zip, works-with::archive
+libarchive1: role::shared-lib
+libares-dev: devel::lang:c, devel::library, network::client, protocol::dns, role::devel-lib, role::documentation
+libares0: devel::library, implemented-in::c, network::client, protocol::dns, role::shared-lib, special::ipv6-nosupport
+libargtable2-0: role::shared-lib
+libargtable2-dev: devel::library
+libarkrpg: devel::lang:c++, devel::library, game::rpg, implemented-in::c++, role::shared-lib, use::gameplaying
+libarkrpg-dev: devel::lang:c++, devel::lang:lua, devel::library, game::mud, implemented-in::c++, interface::3d, role::devel-lib, use::gameplaying
+libarpack++2: implemented-in::c++, role::shared-lib
+libarpack++2-dev: devel::lang:c++, devel::library, field::mathematics, implemented-in::c++, role::devel-lib
+libarpack2: devel::lang:fortran, devel::library, field::mathematics, implemented-in::fortran, role::shared-lib
+libarpack2-dev: devel::lang:fortran, devel::library, field::mathematics, implemented-in::fortran, role::devel-lib
+libarr-dev: devel::library, interface::text-mode
+libarr0: devel::library, interface::text-mode, role::shared-lib
+libarray-compare-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libarray-printcols-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libarray-refelem-perl: devel::lang:perl
+libart-2.0-2: devel::lang:c, devel::library, implemented-in::c, role::shared-lib, works-with::image, works-with::image:vector
+libart-2.0-dev: devel::lang:c, devel::lang:c++, devel::library, implemented-in::c, role::devel-lib, works-with::image, works-with::image:vector
+libart-dev: devel::library, role::devel-lib, uitoolkit::gtk, works-with::image, works-with::image:vector
+libart-ruby1.6: devel::lang:ruby, devel::library, implemented-in::ruby, uitoolkit::gtk, works-with::image:vector
+libart2: devel::library, role::shared-lib, uitoolkit::gtk, works-with::image, works-with::image:vector
+libart2-ruby: devel::lang:ruby, devel::library, works-with::image, works-with::image:vector
+libarts1: devel::library, role::shared-lib, uitoolkit::qt
+libarts1-audiofile: devel::library, role::shared-lib, uitoolkit::qt, works-with::audio
+libarts1-dev: devel::library, role::devel-lib, uitoolkit::qt, works-with::audio
+libarts1-mpeglib: devel::library, role::shared-lib, uitoolkit::qt, works-with-format::mp3, works-with::audio
+libarts1-xine: devel::library, role::shared-lib, suite::kde, uitoolkit::qt, works-with::audio
+libarts1c2a: role::shared-lib, uitoolkit::qt
+libartsc0: devel::lang:c, devel::library, role::shared-lib, uitoolkit::qt, works-with::audio
+libartsc0-dev: devel::lang:c, devel::library, role::devel-lib, uitoolkit::qt, works-with::audio
+libasedrive-serial: admin::hardware, devel::library, role::shared-lib, use::driver
+libasedrive-usb: admin::hardware, devel::library, hardware::usb, role::shared-lib, use::driver
+libasis-3.15p-1: devel::debugger, devel::lang:ada, devel::library, role::shared-lib
+libasis-3.15p-1-dev: devel::debugger, devel::lang:ada, devel::library, role::devel-lib
+libasis-dev: devel::library, implemented-in::ada
+libasis2005: implemented-in::ada, role::shared-lib
+libasm-dev: devel::library
+libasm-java: devel::lang:java, special::not-yet-tagged, special::not-yet-tagged::l
+libasm-java-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libasm1: role::shared-lib
+libasn1-6-heimdal: devel::library, protocol::kerberos, role::shared-lib
+libasound2: devel::library, role::shared-lib, works-with::audio
+libasound2-dev: devel::library, role::devel-lib, works-with::audio
+libasound2-doc: devel::doc, devel::library, made-of::data:html, role::documentation, works-with::audio
+libasound2-plugins: devel::library, role::plugin, works-with::audio
+libaspell-dev: devel::library, role::devel-lib, suite::gnu, works-with::dictionary
+libaspell15: devel::library, role::shared-lib, suite::gnu, use::checking, works-with::dictionary
+libaspell15c2: role::dummy, special::obsolete, suite::gnu, use::checking, works-with::dictionary
+libaspseek-dev: devel::library, role::devel-lib
+libaspseek0: devel::library, role::shared-lib
+libassa3.4-0: role::shared-lib
+libassa3.4-0-dbg: devel::library
+libassa3.4-0-dev: devel::library
+libassetml-dev: devel::library, role::devel-lib
+libassetml0: role::shared-lib
+libassuan-dev: devel::library, role::devel-lib, security::cryptography
+libast2: devel::library, role::shared-lib
+libast2-dev: devel::library, role::devel-lib
+libastro-fits-cfitsio-perl: devel::lang:perl, devel::library, field::astronomy, implemented-in::perl
+libastro-fits-header-perl: devel::lang:perl, devel::library, field::astronomy, implemented-in::perl, role::shared-lib
+libasyncns-dev: devel::library
+libasyncns0: role::shared-lib
+libatfs1: admin::filesystem, devel::library, role::shared-lib
+libatk1-ruby: devel::lang:ruby, devel::library, role::shared-lib
+libatk1.0-0: devel::library, role::shared-lib
+libatk1.0-data: devel::library, role::app-data
+libatk1.0-dbg: devel::debugger, devel::library, role::shared-lib
+libatk1.0-dev: devel::library, role::devel-lib
+libatk1.0-doc: devel::doc, devel::library, made-of::data:html, role::documentation
+libatlas-cpp-0.5-dbg: devel::library, role::shared-lib
+libatlas-cpp-0.5-dev: devel::library, role::devel-lib
+libatlas-cpp-0.6-0c2a: role::shared-lib
+libatlas-cpp-0.6-0c2a-dbg: devel::library
+libatlas-cpp-0.6-dev: devel::library
+libatlas-cpp-doc: devel::doc, devel::lang:c++, devel::library, game::mud, role::documentation, use::gameplaying
+libatm1: devel::library, protocol::atm, role::shared-lib
+libatm1-dev: devel::library, protocol::atm, role::devel-lib
+libatomic-ops-dev: devel::library, role::devel-lib
+libatspi-dbg: accessibility::screen-reader, devel::debugger, devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libatspi-dev: accessibility::screen-reader, devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk
+libatspi1.0-0: accessibility::screen-reader, devel::lang:c, devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libattr1: admin::user-management, devel::library, role::shared-lib
+libattr1-dev: admin::user-management, devel::library, role::devel-lib
+libattribute-handlers-perl: devel::lang:perl, devel::library, implemented-in::perl, role::app-data
+libaubio2: role::shared-lib
+libaudacious4: implemented-in::c++, role::shared-lib, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+libaudio-cd-perl: devel::lang:perl, devel::library, hardware::storage, hardware::storage:cd, implemented-in::perl, role::shared-lib
+libaudio-dev: devel::library, implemented-in::c, network::client, network::service, protocol::TODO, role::devel-lib, sound::mixer, sound::player, sound::recorder, special::completely-tagged, works-with::audio
+libaudio-file-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::audio
+libaudio-flac-decoder-perl: devel::lang:perl, implemented-in::perl
+libaudio-flac-header-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::TODO, works-with::audio
+libaudio-flac-perl: devel::lang:perl, devel::library, implemented-in::perl, role::app-data, works-with::audio
+libaudio-mixer-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, sound::mixer
+libaudio-moosic-perl: devel::lang:perl, devel::library, implemented-in::perl, network::client, role::program, role::shared-lib, works-with::audio
+libaudio-scrobbler-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libaudio-wav-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::wav, works-with::audio
+libaudio2: devel::library, implemented-in::c, network::client, network::service, protocol::TODO, role::shared-lib, sound::mixer, sound::player, sound::recorder, special::completely-tagged, works-with::audio
+libaudiofile-dev: devel::library, role::devel-lib, works-with-format::wav, works-with::audio
+libaudiofile0: devel::library, role::shared-lib, works-with-format::wav, works-with::audio
+libaunit-dev: devel::lang:ada, devel::library, devel::testing-qa, implemented-in::ada, role::devel-lib
+libaunit1: devel::lang:ada, devel::library, devel::testing-qa, implemented-in::ada, role::shared-lib
+libaunit1.03: implemented-in::ada, role::shared-lib
+libauthen-captcha-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, security::authentication
+libauthen-krb5-perl: devel::lang:perl, devel::library, implemented-in::perl, network::client, protocol::kerberos, role::devel-lib, role::shared-lib, security::authentication, security::cryptography, use::login
+libauthen-pam-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, security::authentication
+libauthen-radius-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::radius, role::shared-lib, security::authentication
+libauthen-sasl-cyrus-perl: devel::lang:perl, devel::library, implemented-in::perl, role::devel-lib, role::shared-lib, security::authentication, security::cryptography
+libauthen-sasl-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, security::authentication
+libauthen-simple-pam-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libauthen-simple-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libauthen-smb-perl: devel::lang:perl, devel::library, filetransfer::smb, implemented-in::perl, protocol::smb, security::authentication
+libautotrace-dev: devel::library, implemented-in::c, role::devel-lib
+libautotrace3: devel::library, implemented-in::c, role::shared-lib
+libautounit-dev: devel::lang:c, devel::library, devel::testing-qa, role::devel-lib
+libautounit-guile: devel::library, role::devel-lib
+libautounit2: devel::library, role::shared-lib
+libavahi-client-dev: devel::library, role::shared-lib
+libavahi-client3: role::shared-lib
+libavahi-common-data: network::configuration, network::scanner, protocol::dns, role::app-data
+libavahi-common-dev: devel::library, role::devel-lib
+libavahi-common3: role::shared-lib
+libavahi-compat-howl-dev: devel::library
+libavahi-compat-howl0: role::shared-lib
+libavahi-compat-libdnssd-dev: devel::library
+libavahi-compat-libdnssd1: role::shared-lib
+libavahi-core-dev: devel::library
+libavahi-core4: role::shared-lib
+libavahi-glib-dev: devel::library, network::scanner, protocol::dns, role::devel-lib
+libavahi-glib1: role::shared-lib
+libavahi-qt3-1: role::shared-lib, uitoolkit::qt
+libavahi-qt3-dev: devel::library, network::scanner, protocol::dns, role::devel-lib, uitoolkit::qt
+libavahi-qt4-1: role::shared-lib
+libavahi-qt4-dev: devel::library
+libavahi1.0-cil: devel::ecma-cli, devel::lang:c-sharp, devel::runtime, role::devel-lib, use::browsing
+libavalon-excalibur-java: devel::lang:java, devel::library
+libavalon-excalibur-java-doc: devel::doc, devel::library, role::documentation
+libavalon-framework-java: devel::lang:java, devel::library
+libavalon-framework-java-doc: devel::doc, devel::library, role::documentation
+libavc1394-0: devel::library, hardware::camera, role::shared-lib, works-with::audio, works-with::video
+libavc1394-dev: devel::library, hardware::camera, role::devel-lib, works-with::audio, works-with::video
+libavcodec-dev: devel::library, role::devel-lib, works-with::video
+libavcodec0d: role::shared-lib, works-with-format::TODO, works-with-format::mp3, works-with-format::oggtheora, works-with-format::oggvorbis, works-with-format::wav, works-with::audio, works-with::video
+libavformat-dev: devel::library, role::devel-lib, works-with::video
+libavformat0d: role::shared-lib, works-with-format::TODO, works-with-format::mp3, works-with-format::oggtheora, works-with-format::oggvorbis, works-with-format::wav, works-with::audio, works-with::video
+libavifile-0.7-dev: role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libavifile-0.7c102: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::sdl
+libavifile-0.7c2: role::shared-lib, works-with-format::TODO
+libavl-dev: devel::library, role::devel-lib
+libavl1: devel::library, role::shared-lib
+libaws-bin: implemented-in::ada
+libaws-dev: devel::lang:ada, devel::library, implemented-in::ada, role::devel-lib
+libaws-doc: devel::doc, devel::lang:ada, devel::library, implemented-in::ada, made-of::data:html, made-of::data:info, role::documentation, web::scripting
+libaws2: devel::lang:ada, devel::library, implemented-in::ada, role::shared-lib, web::scripting
+libaws2.2: implemented-in::ada, role::shared-lib
+libax25: devel::library, hardware::hamradio, role::shared-lib
+libax25-dev: devel::library, hardware::hamradio, role::devel-lib
+libb-size-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libbackport-util-concurrent-java: devel::lang:java
+libbakery-2.3-11: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libbakery-2.3-11c2a: implemented-in::c++, role::shared-lib, uitoolkit::gtk
+libbakery-2.3-common: devel::lang:c++, devel::library, devel::ui-builder, implemented-in::c++, role::shared-lib, suite::gnome, uitoolkit::gtk
+libbakery-2.3-dev: devel::lang:c++, devel::library, devel::ui-builder, implemented-in::c++, role::devel-lib, suite::gnome, uitoolkit::gtk
+libbakery-2.4-1: implemented-in::c++, role::shared-lib, uitoolkit::gtk
+libbakery-2.4-dev: devel::library, implemented-in::c++, role::shared-lib, uitoolkit::gtk
+libbakery-gnomeui2.0-1: role::shared-lib, uitoolkit::gtk
+libbakery-gnomeui2.0-dev: devel::library, role::devel-lib
+libbakery2.0-1: role::shared-lib, uitoolkit::gtk
+libbakery2.0-dev: devel::library, role::devel-lib
+libbatik-java: devel::lang:java, devel::library, works-with-format::svg, works-with::image, works-with::image:vector
+libbcel-java: devel::lang:java, devel::library, role::shared-lib
+libbcel-java-doc: devel::doc, devel::lang:java, devel::library, made-of::data:html, role::documentation
+libbcmail-java: devel::lang:java
+libbcpg-java: devel::lang:java
+libbcprov-java: devel::lang:java
+libbctsp-java: devel::lang:java
+libbdd-dev: devel::library, role::devel-lib
+libbdd0c2: role::shared-lib
+libbeecrypt6: role::shared-lib
+libbeecrypt6-dev: role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libbeid2: culture::special:todo, implemented-in::c++, role::shared-lib, security::authentication, security::cryptography, uitoolkit::qt, uitoolkit::wxwindows, use::driver
+libbeid2-dev: culture::special:todo, devel::library, implemented-in::c++, role::devel-lib, use::driver
+libbeidlibopensc2: culture::TODO, implemented-in::c++, role::shared-lib, security::authentication, security::cryptography, uitoolkit::qt, uitoolkit::wxwidgets, uitoolkit::wxwindows
+libbeidlibopensc2-dev: devel::library
+libbelpic0: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libbelpic0-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libbenchmark-ocaml-dev: devel::lang:ocaml, devel::library
+libber0: devel::library, role::shared-lib
+libber0-dev: devel::library, role::devel-lib
+libberkeleydb-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libbigdecimal-ruby: devel::lang:ruby, devel::library, field::mathematics, role::metapackage
+libbind-confparser-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::dns, role::shared-lib
+libbind-dev: devel::library, protocol::dns, role::devel-lib
+libbind9-0: role::shared-lib
+libbinio-dev: devel::library
+libbinio1c2: role::shared-lib
+libbio-ruby: devel::lang:ruby, devel::library, field::biology, role::metapackage
+libbio-ruby1.8: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l
+libbit-vector-minimal-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libbit-vector-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libbitcollider-dev: devel::library, network::service, protocol::http, role::devel-lib, use::scanning, works-with::file
+libbitcollider1: devel::library, network::service, protocol::http, role::shared-lib, use::scanning, works-with::file
+libblkid-dev: admin::filesystem, devel::library, role::devel-lib
+libblkid1: admin::filesystem, devel::library, role::shared-lib
+libbluetooth1: devel::library, role::shared-lib
+libbluetooth1-dev: admin::hardware, devel::library, role::devel-lib
+libbluetooth2: implemented-in::c, role::shared-lib
+libbluetooth2-dev: devel::library, implemented-in::c, role::devel-lib
+libbobcat1: role::shared-lib
+libbobcat1-dev: devel::library
+libbogl-dev: devel::library, interface::framebuffer, role::devel-lib
+libbogl0: devel::library, interface::framebuffer, role::shared-lib
+libbonobo-activation-dev: devel::library, protocol::corba, role::dummy, special::obsolete, suite::gnome, uitoolkit::gtk
+libbonobo-activation4: devel::library, protocol::corba, role::dummy, special::obsolete, suite::gnome, uitoolkit::gtk
+libbonobo-conf-dev: devel::library, devel::rpc, protocol::corba, role::devel-lib, suite::gnome, uitoolkit::gtk
+libbonobo-conf0: devel::library, devel::rpc, protocol::corba, role::shared-lib, suite::gnome, uitoolkit::gtk
+libbonobo-dev: devel::library, devel::rpc, protocol::corba, role::devel-lib, suite::gnome, uitoolkit::gtk
+libbonobo2: devel::library, devel::rpc, protocol::corba, role::shared-lib, suite::gnome, uitoolkit::gtk
+libbonobo2-0: devel::library, devel::rpc, protocol::corba, role::shared-lib, suite::gnome, uitoolkit::gtk
+libbonobo2-common: devel::library, devel::rpc, protocol::corba, role::app-data, special::auto-inst-parts, suite::gnome, uitoolkit::gtk
+libbonobo2-dev: devel::library, devel::rpc, protocol::corba, role::devel-lib, suite::gnome, uitoolkit::gtk
+libbonobomm1.3-9: role::shared-lib, uitoolkit::gtk
+libbonobomm1.3-9c2: role::shared-lib, uitoolkit::gtk
+libbonobomm1.3-dev: devel::lang:c++, devel::library, devel::rpc, protocol::corba, role::devel-lib, suite::gnome, uitoolkit::gtk
+libbonoboui2-0: devel::library, devel::rpc, protocol::corba, role::shared-lib, suite::gnome, uitoolkit::gtk
+libbonoboui2-common: devel::library, devel::rpc, protocol::corba, role::app-data, special::auto-inst-parts, suite::gnome, uitoolkit::gtk
+libbonoboui2-dev: devel::library, devel::rpc, protocol::corba, role::devel-lib, suite::gnome, uitoolkit::gtk
+libbonobouimm1.3-7: role::shared-lib, uitoolkit::gtk
+libbonobouimm1.3-7c2a: uitoolkit::gtk
+libbonobouimm1.3-dev: devel::lang:c++, devel::library, devel::rpc, protocol::corba, role::devel-lib, suite::gnome, uitoolkit::gtk
+libboost-date-time-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, use::timekeeping
+libboost-date-time1.33.1: role::shared-lib
+libboost-dbg: devel::lang:c++, devel::library, implemented-in::c++, role::shared-lib
+libboost-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib
+libboost-doc: devel::doc, devel::lang:c++, devel::library, made-of::data:html, role::documentation
+libboost-filesystem-dev: admin::filesystem, devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib
+libboost-filesystem1.33.1: role::shared-lib
+libboost-graph-dev: devel::lang:c++, devel::library, field::mathematics, implemented-in::c++, role::devel-lib
+libboost-graph1.33.1: role::shared-lib
+libboost-iostreams-dev: devel::library, role::devel-lib
+libboost-iostreams1.33.1: role::shared-lib
+libboost-program-options-dev: devel::lang:c++, devel::library, implemented-in::c++, interface::commandline, role::devel-lib
+libboost-program-options1.33.1: role::shared-lib
+libboost-python-dev: devel::lang:c++, devel::lang:python, devel::library, implemented-in::c++, role::devel-lib
+libboost-python1.33.1: devel::lang:c++, devel::lang:python, devel::library, role::devel-lib
+libboost-regex-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, use::searching
+libboost-regex1.33.1: role::shared-lib
+libboost-serialization-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib
+libboost-signals-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib
+libboost-signals1.33.1: role::shared-lib
+libboost-test-dev: devel::lang:c++, devel::library, devel::testing-qa, implemented-in::c++, role::devel-lib
+libboost-test1.33.1: role::shared-lib
+libboost-thread-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib
+libboost-thread1.33.1: role::shared-lib
+libboost-wave-dev: devel::library
+libbotan1.4: role::shared-lib
+libbotan1.5: role::shared-lib
+libboulder-perl: devel::lang:perl, devel::library, implemented-in::perl, role::devel-lib, role::shared-lib
+libbow: devel::library, implemented-in::c, interface::commandline, role::program, scope::utility, use::searching, works-with::text
+libbreakpoint-ruby: devel::lang:ruby
+libbreakpoint-ruby1.8: devel::lang:ruby
+libbric-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libbrlapi: accessibility::TODO, devel::library, role::shared-lib
+libbrlapi-dev: accessibility::TODO, devel::library, role::devel-lib
+libbrlapi1: role::shared-lib
+libbrlapi1-dev: devel::library
+libbsd-resource-perl: devel::lang:perl, devel::library, implemented-in::perl
+libbsearch-ruby: devel::lang:ruby, devel::library, role::metapackage, use::searching
+libbsearch-ruby1.8: devel::lang:ruby, devel::library, role::shared-lib, use::searching
+libbsf-java: devel::lang:java, devel::library, role::devel-lib
+libbt: role::shared-lib
+libbt-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libbtools-java: devel::lang:java, devel::library
+libbtools-java-doc: devel::doc, devel::lang:java, devel::library, role::documentation
+libbtparse-dev: devel::library, implemented-in::c, role::devel-lib, use::scanning, works-with-format::bib, works-with-format::tex, works-with::text
+libbtparse0: devel::library, implemented-in::c, role::shared-lib, use::scanning, works-with-format::bib, works-with-format::tex, works-with::text
+libbttracker0: role::shared-lib
+libbttracker0-dev: devel::library
+libbtutil0: role::shared-lib
+libbtutil0-dev: devel::library
+libbuffy-dev: devel::lang:c++, devel::library, implemented-in::c++, mail::notification, role::devel-lib, works-with::mail
+libbuoy-java: devel::lang:java
+libburn-1: devel::library, hardware::storage, hardware::storage:cd, implemented-in::c, role::shared-lib, use::storing
+libburn-dev: devel::library, hardware::storage, hardware::storage:cd, implemented-in::c, role::devel-lib, use::storing
+libbusiness-creditcard-perl: devel::lang:perl, devel::library, field::finance, implemented-in::perl, role::shared-lib, use::checking
+libbusiness-onlinepayment-authorizenet-perl: devel::lang:perl, devel::library, field::finance, implemented-in::perl, role::shared-lib
+libbusiness-onlinepayment-bankofamerica-perl: devel::lang:perl, devel::library, field::finance, implemented-in::perl, role::app-data
+libbusiness-onlinepayment-payconnect-perl: devel::lang:perl, devel::library, field::finance, implemented-in::perl, network::client, role::shared-lib
+libbusiness-onlinepayment-perl: devel::lang:perl, devel::library, field::finance, implemented-in::perl, role::shared-lib
+libbusiness-onlinepayment-tclink-perl: devel::lang:perl, devel::library, field::finance, implemented-in::perl, network::client, role::shared-lib
+libbusiness-ups-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::http, role::shared-lib
+libbz2-1.0: devel::library, role::shared-lib, use::compressing
+libbz2-dev: devel::library, role::devel-lib, use::compressing
+libbz2-ruby1.6: devel::lang:ruby, devel::library, role::shared-lib, use::compressing
+libbz2-ruby1.8: devel::lang:ruby, devel::library, role::shared-lib, use::compressing
+libc-client-dev: devel::lang:c, devel::library, implemented-in::c, protocol::kerberos, protocol::ssl, role::devel-lib, works-with::mail
+libc-client2002edebian: devel::lang:c, devel::library, implemented-in::c, protocol::kerberos, protocol::ssl, role::shared-lib, works-with::mail
+libc-scan-perl: devel::lang:c, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::scanning, works-with::software:source
+libc5: devel::library, role::shared-lib, special::obsolete
+libc5-altdbg: devel::library, role::shared-lib, special::obsolete
+libc5-altdev: devel::library, special::obsolete
+libc6: devel::lang:c, devel::library, implemented-in::c, protocol::ipv6, role::shared-lib, suite::gnu
+libc6-amd64: role::shared-lib, suite::gnu
+libc6-dbg: devel::debugger, devel::lang:c, devel::library, implemented-in::c, role::shared-lib, suite::gnu
+libc6-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib, suite::gnu
+libc6-dev-amd64: devel::library, role::devel-lib, suite::gnu
+libc6-dev-i386: role::shared-lib
+libc6-i686: admin::hardware, devel::lang:c, devel::library, implemented-in::c, role::shared-lib, suite::gnu
+libc6-pic: devel::lang:c, devel::library, implemented-in::c, role::app-data, suite::gnu
+libc6-prof: devel::lang:c, devel::library, devel::profiler, implemented-in::c, role::devel-lib, suite::gnu
+libc6-xen: suite::gnu
+libc6.1: devel::lang:c, devel::library, implemented-in::c, role::shared-lib
+libc6.1-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib
+libcaca-dev: devel::library, role::devel-lib, uitoolkit::ncurses, works-with::image
+libcaca0: role::shared-lib, uitoolkit::ncurses
+libcache-cache-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libcache-fastmmap-perl: devel::lang:perl
+libcache-memcached-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libcache-mmap-perl: devel::lang:perl
+libcache-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libcache-simple-timedexpiry-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libcairo-directfb2: role::shared-lib
+libcairo-directfb2-dev: devel::library
+libcairo-java: devel::lang:java
+libcairo-ocaml: devel::lang:ocaml
+libcairo-ocaml-dev: devel::lang:ocaml, devel::library
+libcairo-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::x11, role::shared-lib, uitoolkit::gtk, works-with::image:raster, x11::TODO
+libcairo-ruby: devel::lang:ruby
+libcairo-ruby1.8: devel::lang:ruby, role::shared-lib
+libcairo-ruby1.9: devel::lang:ruby, role::shared-lib
+libcairo1: devel::library, special::not-yet-tagged, special::not-yet-tagged::l, x11::library
+libcairo1-dev: devel::library
+libcairo2: role::shared-lib
+libcairo2-dev: devel::library, role::devel-lib, uitoolkit::gtk
+libcairo2-doc: uitoolkit::gtk
+libcairomm-1.0-0: role::shared-lib
+libcairomm-1.0-dev: devel::library
+libcal3d-doc: devel::doc, devel::lang:c++, devel::library, role::documentation, works-with::3dmodel
+libcal3d10-dev: devel::library, role::devel-lib
+libcal3d11-dev: devel::library
+libcal3d11c2a: implemented-in::c++, interface::3d, role::shared-lib, works-with::video
+libcalendar-ocaml-dev: devel::lang:ocaml, devel::library, devel::prettyprint, implemented-in::ocaml, role::devel-lib, use::timekeeping
+libcalendar-simple-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::timekeeping
+libcamel1.2-0: special::not-yet-tagged, special::not-yet-tagged::l
+libcamel1.2-8: role::shared-lib
+libcamel1.2-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libcamelbones0: devel::lang:objc, devel::lang:perl, devel::library, implemented-in::perl, role::app-data, role::shared-lib, suite::gnustep
+libcamelbones0-dev: devel::lang:objc, devel::lang:perl, devel::library, implemented-in::perl, role::devel-lib, suite::gnustep
+libcameleon-ocaml-dev: devel::lang:ocaml, devel::library
+libcamlimages-ocaml: devel::lang:ocaml, devel::library, implemented-in::ocaml, works-with::image
+libcamlimages-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib, works-with::image
+libcamlimages-ocaml-doc: devel::doc, devel::examples, devel::lang:ocaml, devel::library, implemented-in::ocaml, made-of::data:html, role::documentation, works-with::image
+libcamomile-ocaml-data: devel::library
+libcamomile-ocaml-dev: devel::lang:ocaml, devel::library
+libcanlock2: devel::library, protocol::nntp, role::shared-lib, security::authentication
+libcanlock2-dev: devel::library, protocol::nntp, role::devel-lib, security::authentication
+libcanna1g: accessibility::input, culture::japanese, devel::library, role::shared-lib
+libcanna1g-dev: accessibility::input, culture::japanese, devel::library, role::devel-lib
+libcap-bin: devel::library, interface::commandline, role::program, scope::utility, works-with::software:running
+libcap-dev: devel::library, role::devel-lib, works-with::software:running
+libcap1: devel::library, role::shared-lib, works-with::software:running
+libcap2: devel::library, role::shared-lib, works-with::software:running
+libcap2-bin: devel::library, interface::commandline, role::program, scope::utility, works-with::software:running
+libcap2-dev: devel::library, role::devel-lib
+libcapi20-3: role::shared-lib
+libcapi20-dev: devel::library, role::devel-lib, works-with::fax
+libcapplet1: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk, x11::applet
+libcapplet1-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk, x11::applet
+libcapsinetwork-dev: devel::lang:c++, devel::library, implemented-in::c++, network::service, role::devel-lib
+libcapsinetwork0: devel::library, role::shared-lib
+libcapsinetwork0c2a: implemented-in::c++, role::shared-lib
+libcarp-assert-more-perl: devel::debugger, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libcarp-assert-perl: devel::debugger, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libcarp-clan-perl: devel::debugger, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libcarp-datum-perl: devel::debugger, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libcatalyst-engine-apache-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libcatalyst-model-cdbi-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libcatalyst-modules-extra-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libcatalyst-modules-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libcatalyst-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libcatalyst-plugin-formvalidator-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libcatalyst-plugin-session-fastmmap-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libcatalyst-view-tt-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libcbanking16: role::shared-lib
+libccaudio-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, suite::gnu, works-with-format::wav, works-with::audio
+libccaudio1-1.2-0: role::shared-lib, suite::gnu
+libccaudio2-0.9-0: role::shared-lib
+libccaudio2-dev: devel::library, role::devel-lib
+libccid: devel::library, hardware::storage, hardware::usb, role::shared-lib, security::cryptography
+libccrtp-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, suite::gnu
+libccrtp1-1.0-0c102: devel::library, role::shared-lib
+libccrtp1-1.5-0: role::shared-lib, suite::gnu
+libccs-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libccscript-dev: devel::lang:c++, devel::library, implemented-in::c++, protocol::voip, role::devel-lib, suite::gnu
+libccscript2-0.6-3: role::shared-lib, suite::gnu
+libccscript3-1.1-0: role::shared-lib, suite::gnu
+libccscript3-dev: devel::library, role::devel-lib, suite::gnu
+libcdaudio-dev: devel::library
+libcdaudio0: devel::library, hardware::storage:cd, role::shared-lib, works-with::audio
+libcdaudio0-dev: devel::library, hardware::storage:cd, role::devel-lib, works-with::audio
+libcdaudio1: role::shared-lib
+libcdb-dev: devel::library
+libcdb-file-perl: devel::lang:perl, devel::library, implemented-in::perl
+libcdb1: role::shared-lib
+libcddb-get-perl: devel::lang:perl, devel::library, hardware::storage, hardware::storage:cd, implemented-in::perl, protocol::http, role::shared-lib, use::downloading, works-with::db
+libcddb0: special::not-yet-tagged, special::not-yet-tagged::l
+libcddb0-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libcddb2: role::shared-lib
+libcddb2-dev: devel::library
+libcdg123-0: role::shared-lib
+libcdio-cdda-dev: devel::library
+libcdio-cdda0: role::shared-lib
+libcdio-dev: devel::library, hardware::storage, hardware::storage:cd, role::devel-lib
+libcdio-paranoia-dev: devel::library
+libcdio-paranoia0: role::shared-lib
+libcdio6: role::shared-lib
+libcdk-dev: devel::library, implemented-in::c, interface::text-mode, role::devel-lib, uitoolkit::ncurses
+libcdk-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::text-mode, uitoolkit::ncurses
+libcdk4: devel::library, implemented-in::c, interface::text-mode, role::shared-lib, uitoolkit::ncurses
+libcdk5: role::shared-lib
+libcdk5-dev: devel::library, uitoolkit::ncurses
+libcdparanoia0: devel::library, hardware::storage, hardware::storage:cd, role::shared-lib, use::scanning
+libcdparanoia0-dev: devel::library, hardware::storage, hardware::storage:cd, role::devel-lib, uitoolkit::gtk, use::scanning
+libcegui-mk2-0: special::not-yet-tagged, special::not-yet-tagged::l
+libcegui-mk2-0-dbg: devel::library, special::not-yet-tagged, special::not-yet-tagged::l
+libcegui-mk2-0c2a-dbg: devel::library
+libcegui-mk2-dev: devel::library, role::devel-lib, role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libcegui-mk2-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libcf-ocaml: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::shared-lib
+libcf-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libcfitsio-dev: devel::lang:c, devel::lang:fortran, devel::library, field::astronomy, implemented-in::c, role::devel-lib
+libcfitsio-doc: devel::doc, devel::lang:c, devel::lang:fortran, devel::library, field::astronomy, made-of::data:html, made-of::data:postscript, role::documentation
+libcfitsio2: devel::lang:c, devel::lang:fortran, devel::library, field::astronomy, implemented-in::c, implemented-in::fortran, role::shared-lib
+libcfitsio3: implemented-in::fortran
+libcflexplugin: devel::library, hardware::storage, role::plugin, security::cryptography
+libcflow-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::ip
+libcgal-dev: devel::library, uitoolkit::qt
+libcgal1: role::shared-lib
+libcgi-ajax-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libcgi-application-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, web::cgi
+libcgi-application-plugins-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libcgi-dev: devel::library, role::devel-lib
+libcgi-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libcgi-extratags-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, web::cgi, works-with-format::html, works-with::text
+libcgi-fast-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, web::cgi
+libcgi-formalware-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, web::cgi, works-with-format::xml
+libcgi-formbuilder-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, web::cgi, works-with-format::html, works-with::text
+libcgi-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::http, role::shared-lib, web::cgi
+libcgi-session-expiresessions-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, web::cgi, works-with::db
+libcgi-session-perl: devel::lang:perl, implemented-in::perl, interface::web, protocol::http, role::shared-lib, web::cgi
+libcgi-simple-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::http, role::shared-lib, web::cgi
+libcgi-ssi-parser-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, web::cgi
+libcgi-ssi-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, web::cgi
+libcgi-untaint-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::checking, web::cgi
+libcgi-validate-perl: devel::lang:perl, devel::library, web::cgi
+libcgi-xml-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, web::cgi, works-with-format::xml
+libcgi-xmlapplication-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, web::cgi, works-with-format::xml
+libcgi-xmlform-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, web::cgi, works-with-format::xml
+libcgi0: role::shared-lib
+libcgicc-doc: devel::doc, devel::lang:c++, devel::library, made-of::data:html, role::documentation, suite::gnu, web::cgi, works-with-format::html, works-with::text
+libcgicc1: devel::library, implemented-in::c++, role::shared-lib, suite::gnu, web::cgi, works-with-format::html, works-with::text
+libcgicc1-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, role::documentation, suite::gnu, web::cgi, works-with-format::html, works-with::text
+libcgicg1: devel::lang:c, devel::library, implemented-in::c, role::shared-lib, web::cgi, works-with-format::html, works-with::text
+libcgicg1-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib, web::cgi, works-with-format::html, works-with::text
+libcharles0: devel::lang:ada, devel::library, implemented-in::ada, role::shared-lib
+libcharles0-dev: devel::lang:ada, devel::library, implemented-in::ada, role::devel-lib
+libchart-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libchart-strip-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libcharva1-java: devel::lang:java
+libcharva1-jni: uitoolkit::ncurses
+libchasen-dev: culture::japanese, devel::library, field::linguistics, role::devel-lib
+libchasen0: culture::japanese, devel::library, field::TODO, role::shared-lib
+libchatbot-eliza-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::gameplaying
+libchemistry-elements-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libcherokee-base0: implemented-in::c, role::shared-lib
+libcherokee-base0-dev: devel::library, implemented-in::c, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libcherokee-client0: implemented-in::c, role::shared-lib
+libcherokee-client0-dev: devel::library, implemented-in::c, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libcherokee-server0: implemented-in::c, role::shared-lib
+libcherokee-server0-dev: devel::library, implemented-in::c, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libchewing-data: accessibility::input, culture::chinese, culture::taiwanese, role::app-data
+libchewing2: accessibility::input, culture::chinese, culture::taiwanese, devel::library, role::shared-lib
+libchewing2-dev: accessibility::input, culture::chinese, culture::taiwanese, devel::library, role::devel-lib
+libchewing3: role::shared-lib
+libchewing3-dev: devel::library
+libchicken-dev: devel::library
+libchicken0: role::shared-lib
+libchipcard-doc: role::documentation
+libchipcard2-0: special::not-yet-tagged, special::not-yet-tagged::l
+libchipcard2-0c2: role::shared-lib, special::auto-inst-parts, use::driver
+libchipcard2-data: role::app-data, special::auto-inst-parts, special::not-yet-tagged, special::not-yet-tagged::l
+libchipcard2-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libchipcard2-tools: hardware::TODO, special::not-yet-tagged, special::not-yet-tagged::l, suite::special:todo, use::driver
+libchipcard20-dev: devel::library
+libchise-dev: devel::i18n, devel::lang:c, devel::library, role::devel-lib
+libchise1: devel::i18n, devel::lang:c, devel::library, role::shared-lib
+libchm-bin: devel::library
+libchm-dev: devel::library
+libchm1: role::shared-lib
+libciao-dev: devel::lang:c++, devel::library, implemented-in::c++, protocol::corba, role::devel-lib
+libcinepaint-dev: devel::library, role::devel-lib, use::editing, works-with::image, works-with::image:raster
+libcinepaint0: devel::library, role::shared-lib, use::editing, works-with::image, works-with::image:raster
+libckit-smlnj: special::not-yet-tagged, special::not-yet-tagged::l
+libclalsadrv-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, works-with::audio
+libclalsadrv1: role::shared-lib
+libclamav-dev: devel::library, implemented-in::c, role::devel-lib, security::antivirus, use::scanning
+libclamav1: devel::library, implemented-in::c, role::shared-lib, security::antivirus, use::scanning
+libclamav2: role::shared-lib
+libclan2-gl: devel::library, special::auto-inst-parts, use::gameplaying
+libclan2-gui: devel::library, interface::x11
+libclan2-jpeg: devel::library
+libclan2-lua: devel::library
+libclan2-mikmod: devel::library
+libclan2-network: devel::library
+libclan2-png: devel::library
+libclan2-sound: devel::library
+libclan2-ttf: devel::library
+libclan2-vorbis: devel::library
+libclan2c2a-jpeg: devel::lang:c++, devel::library, implemented-in::c++, role::plugin, works-with-format::jpg, works-with::image, works-with::image:raster
+libclan2c2a-mikmod: devel::library, role::devel-lib, works-with::audio
+libclan2c2a-png: devel::lang:c++, devel::library, implemented-in::c++, role::plugin
+libclan2c2a-sound: devel::lang:c++, devel::library, implemented-in::c++, role::plugin, works-with::audio
+libclan2c2a-vorbis: works-with-format::oggvorbis, works-with::audio
+libclanlib-dev: devel::library, role::devel-lib, use::gameplaying
+libclanlib2: devel::library, role::shared-lib
+libclanlib2c2a: devel::lang:c++, devel::library, implemented-in::c++, role::shared-lib, use::gameplaying
+libclass-accessor-chained-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libclass-accessor-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libclass-autouse-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libclass-base-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libclass-c3-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libclass-container-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libclass-contract-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libclass-data-accessor-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libclass-data-inheritable-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libclass-date-perl: devel::lang:perl, devel::library, implemented-in::perl, use::timekeeping
+libclass-dbi-abstractsearch-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libclass-dbi-asform-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with-format::html, works-with::db, works-with::text
+libclass-dbi-fromcgi-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, web::cgi, works-with::db
+libclass-dbi-fromform-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libclass-dbi-loader-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libclass-dbi-loader-relationship-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libclass-dbi-mysql-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libclass-dbi-pager-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libclass-dbi-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libclass-dbi-pg-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libclass-dbi-plugin-abstractcount-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::plugin, role::shared-lib, works-with::db
+libclass-dbi-plugin-pager-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::plugin, role::shared-lib, works-with::db
+libclass-dbi-plugin-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libclass-dbi-plugin-retrieveall-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libclass-dbi-plugin-type-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libclass-dbi-sqlite-perl: devel::lang:perl, devel::lang:sql, implemented-in::perl, role::shared-lib, works-with::db
+libclass-default-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libclass-delegator-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, role::source
+libclass-errorhandler-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libclass-factory-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libclass-factory-util-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libclass-inner-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libclass-inspector-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::checking
+libclass-makemethods-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libclass-meta-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libclass-methodmaker-perl: devel::code-generator, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libclass-mop-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libclass-multimethods-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libclass-objecttemplate-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libclass-prototyped-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libclass-returnvalue-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libclass-singleton-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libclass-spiffy-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libclass-throwable-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libclass-trigger-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libclass-virtual-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libclass-whitehole-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libclassworlds-java: devel::lang:java, role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libclassworlds-java-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libclearsilver-perl: devel::lang:perl, devel::web, web::cgi, works-with-format::html, works-with::file, works-with::text
+libcli-dev: devel::library, role::devel-lib
+libcli1: devel::library, role::shared-lib
+libclips: devel::interpreter, devel::lang:c, devel::library, implemented-in::c, role::devel-lib, role::shared-lib
+libclips-dev: devel::interpreter, devel::lang:c, devel::library, implemented-in::c, role::devel-lib
+libcln-dev: devel::lang:c++, devel::library, field::mathematics, implemented-in::c++, role::devel-lib
+libcln4: role::shared-lib
+libclone-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libclucene-dev: devel::library
+libclucene0: role::shared-lib
+libclutils0: devel::lang:c++, implemented-in::c++, role::shared-lib
+libclutils0-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib
+libclutils0c2: role::shared-lib
+libclutter-0.1-0: role::shared-lib, uitoolkit::gtk
+libclutter-0.1-dev: devel::library, uitoolkit::gtk
+libcman-dev: devel::library
+libcman1: role::shared-lib
+libcmd-ruby: devel::lang:ruby
+libcmd-ruby1.8: devel::lang:ruby
+libcmdparse-ruby: devel::lang:ruby
+libcmdparse2-ruby: devel::lang:ruby
+libcmdparse2-ruby1.8: devel::lang:ruby
+libcml-smlnj: special::not-yet-tagged, special::not-yet-tagged::l
+libcmlutil-smlnj: special::not-yet-tagged, special::not-yet-tagged::l
+libcmml0: devel::library, role::shared-lib, use::text-formatting, works-with::text
+libcmml0-dbg: devel::debugger, devel::library, role::shared-lib, use::text-formatting, works-with::text
+libcmml0-dev: devel::library, role::devel-lib, use::text-formatting, works-with::text
+libcmml1: role::shared-lib
+libcmml1-dbg: devel::library
+libcmml1-dev: devel::library
+libcnf-dev: devel::lang:c, devel::lang:fortran, devel::library, implemented-in::c, role::devel-lib
+libcnumx0-dev: devel::library, role::devel-lib
+libcob1: role::shared-lib, uitoolkit::ncurses
+libcob1-dev: devel::library
+libcoin20: role::shared-lib
+libcoin20-dev: devel::lang:c++, devel::library, interface::3d, role::devel-lib, role::documentation
+libcoin20-doc: devel::doc, devel::lang:c++, devel::library, interface::3d, role::documentation
+libcoin20-runtime: devel::lang:c++, devel::library, interface::3d, role::app-data, role::documentation
+libcoin20c102: devel::library, role::shared-lib
+libcoin40: devel::library, role::shared-lib, works-with::text, works-with::unicode
+libcoin40-dev: devel::lang:c++, devel::library, interface::3d, role::devel-lib, role::documentation
+libcoin40-doc: devel::doc, devel::lang:c++, devel::library, interface::3d, role::documentation
+libcoin40-runtime: devel::lang:c++, devel::library, interface::3d, role::app-data, role::documentation
+libcoin40c2: role::shared-lib
+libcojets1-dev: devel::library
+libcojets2: field::physics, role::shared-lib
+libcojets2-dev: devel::library, field::physics
+libcolor-scheme-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libcomedi-0.7.22: role::shared-lib
+libcomedi-dev: devel::library, role::devel-lib, use::driver
+libcomedi0: devel::library, role::shared-lib, use::driver
+libcomerr2: devel::debugger, devel::library, role::shared-lib
+libcommandline-ruby: devel::lang:ruby
+libcommandline-ruby1.8: devel::lang:ruby
+libcommoncpp2-1.0-0c102: devel::library, role::shared-lib
+libcommoncpp2-1.5-0: role::shared-lib, suite::gnu
+libcommoncpp2-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, suite::gnu
+libcommoncpp2-doc: suite::gnu
+libcommons-beanutils-java: devel::lang:java, devel::library, implemented-in::java
+libcommons-cli-java: devel::lang:java, devel::library, implemented-in::java, interface::commandline
+libcommons-codec-java: devel::lang:java, devel::library, implemented-in::java
+libcommons-collections-java: devel::lang:java, devel::library, implemented-in::java
+libcommons-collections3-java: devel::lang:java, devel::library, implemented-in::java
+libcommons-daemon-java: devel::lang:java, devel::library, implemented-in::java, interface::daemon
+libcommons-dbcp-java: devel::lang:java, devel::library, implemented-in::java, network::load-balancing, works-with::db
+libcommons-digester-java: devel::lang:java, devel::library, implemented-in::java, works-with-format::xml
+libcommons-discovery-java: devel::lang:java, devel::library, implemented-in::java
+libcommons-el-java: devel::lang:java
+libcommons-fileupload-java: devel::lang:java, devel::library, implemented-in::java, protocol::http
+libcommons-httpclient-java: devel::lang:java, devel::library
+libcommons-httpclient-java-doc: devel::doc, devel::library, role::documentation
+libcommons-io-java: devel::lang:java
+libcommons-jexl-java: devel::lang:java, devel::library, implemented-in::java
+libcommons-jxpath-java: devel::lang:java, devel::library, implemented-in::java
+libcommons-lang-java: devel::lang:java, devel::library, implemented-in::java
+libcommons-launcher-java: devel::lang:java
+libcommons-logging-java: admin::logging, devel::lang:java, devel::library, implemented-in::java
+libcommons-modeler-java: devel::lang:java, devel::library, implemented-in::java
+libcommons-modeler-java-doc: devel::doc, devel::lang:java, devel::library, role::documentation
+libcommons-net-java: devel::lang:java, devel::library, implemented-in::java, network::service
+libcommons-pool-java: devel::lang:java, devel::library, implemented-in::java
+libcommons-validator-java: devel::lang:java, devel::library, implemented-in::java, use::checking, works-with-format::xml
+libcompfaceg1: devel::library, role::shared-lib, use::compressing, works-with::image, works-with::image:raster, works-with::mail
+libcompfaceg1-dev: devel::library, role::devel-lib, use::compressing, works-with::image, works-with::image:raster, works-with::mail
+libcomplearn0: role::shared-lib
+libcompress-bzip2-perl: devel::lang:perl
+libcompress-zlib-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::compressing
+libconcurrent-java: devel::lang:java
+libconfhelper-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, suite::debian, use::configuring, use::editing
+libconfig-any-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libconfig-auto-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::configuring
+libconfig-file-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, use::configuring
+libconfig-general-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::configuring
+libconfig-inetd-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libconfig-inifiles-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::configuring
+libconfig-simple-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::configuring
+libconfig-tiny-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::configuring
+libconfig-yaml-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::configuring
+libconfig0: devel::library, role::shared-lib, use::configuring
+libconfig0-dev: devel::library, role::devel-lib, use::configuring
+libconfigfile-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::configuring
+libconfigreader-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::configuring
+libconfigwin-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib, uitoolkit::gtk, use::configuring
+libconfuse-dev: devel::library, implemented-in::c, role::devel-lib, use::configuring
+libconfuse0: devel::library, implemented-in::c, role::shared-lib, use::configuring
+libconsole: devel::library, interface::commandline, role::shared-lib, works-with::font
+libcontactsdb-dev: devel::library, implemented-in::c, role::devel-lib, suite::TODO, works-with::db
+libcontactsdb0: role::shared-lib
+libcontextual-return-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libconvert-asn1-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libconvert-ber-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libconvert-binhex-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::mail
+libconvert-tnef-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::mail
+libconvert-units-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::converting
+libconvert-uulib-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::converting, works-with::mail
+libcorba-orbit-perl: devel::lang:perl, devel::library, devel::rpc, implemented-in::perl, protocol::corba, role::shared-lib
+libcore++-demo: special::not-yet-tagged, special::not-yet-tagged::l
+libcore++-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libcore++-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libcore++1: special::not-yet-tagged, special::not-yet-tagged::l
+libcore++1c2: role::shared-lib
+libcorelinux: devel::library, implemented-in::c++, role::shared-lib
+libcorelinux-dev: devel::library, implemented-in::c++, role::devel-lib
+libcorelinux-doc: devel::doc, devel::library, made-of::data:html, made-of::data:pdf, made-of::data:postscript, role::documentation
+libcorelinux-examples: devel::examples, devel::library, implemented-in::c++, role::source
+libcos4: devel::library
+libcos4-dev: devel::library, implemented-in::c++, protocol::corba, role::devel-lib
+libcos4c2: role::shared-lib
+libcoy-perl: devel::debugger, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libcoyotl-3.1-4: role::shared-lib
+libcoyotl-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib
+libcoyotl2: devel::lang:c++, devel::library, implemented-in::c++, role::shared-lib
+libcpan-distnameinfo-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libcpan-mini-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libcpanplus-perl: special::not-yet-tagged, special::not-yet-tagged::l
+libcppopt-dev: devel::lang:c++, devel::library, implemented-in::c++, interface::commandline, role::devel-lib
+libcppopt0: devel::lang:c++, devel::library, implemented-in::c++, interface::commandline, role::shared-lib
+libcppopt0c2: role::shared-lib
+libcppunit-1.10-2: special::not-yet-tagged, special::not-yet-tagged::l
+libcppunit-1.12-0: devel::testing-qa, role::shared-lib
+libcppunit-dev: devel::lang:c++, devel::library, devel::testing-qa, role::devel-lib
+libcpufreq-dev: admin::hardware, devel::library, role::devel-lib
+libcpufreq0: admin::hardware, devel::library, role::shared-lib
+libcreal-ocaml-dev: devel::lang:ocaml, devel::library, field::mathematics, implemented-in::ocaml, role::devel-lib
+libcrimson-java: devel::lang:java, devel::library, implemented-in::java, role::app-data, role::documentation, works-with-format::xml
+libcrimson-java-doc: devel::doc, devel::lang:java, devel::library, made-of::data:html, role::documentation, works-with-format::xml
+libcroco3: devel::library, role::shared-lib, works-with-format::html, works-with::text
+libcroco3-dev: devel::library, role::devel-lib, works-with-format::html, works-with::text
+libcrypt-blowfish-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, security::cryptography
+libcrypt-cbc-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, security::cryptography
+libcrypt-ciphersaber-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, security::cryptography
+libcrypt-des-ede3-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libcrypt-des-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, security::cryptography
+libcrypt-dh-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, security::cryptography
+libcrypt-ecb-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, security::cryptography
+libcrypt-gpg-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, security::cryptography
+libcrypt-hcesha-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, security::cryptography
+libcrypt-openssl-bignum-perl: devel::lang:perl
+libcrypt-openssl-dsa-perl: devel::lang:perl
+libcrypt-openssl-random-perl: devel::lang:perl
+libcrypt-openssl-rsa-perl: devel::lang:perl
+libcrypt-passwdmd5-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, security::cryptography
+libcrypt-rijndael-perl: devel::lang:perl, devel::library, implemented-in::perl, security::cryptography
+libcrypt-simple-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, security::cryptography
+libcrypt-smbhash-perl: devel::lang:perl, devel::library, filetransfer::smb, implemented-in::perl, protocol::smb, role::shared-lib, security::cryptography
+libcrypt-ssleay-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::http, protocol::ssl, role::shared-lib, security::cryptography
+libcrypt-unixcrypt-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, security::cryptography
+libcrypto++-dev: devel::library, implemented-in::c++, role::devel-lib, security::cryptography
+libcrypto++-doc: role::documentation, security::cryptography
+libcrypto++-utils: devel::library, devel::testing-qa, implemented-in::c++, interface::commandline, role::program, scope::utility, security::cryptography, use::checking
+libcrypto++5.2: implemented-in::c++, role::shared-lib
+libcrypto++5.2c2a: implemented-in::c++, role::shared-lib, security::cryptography
+libcryptokit-ocaml: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::shared-lib, security::cryptography
+libcryptokit-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib, security::cryptography
+libcsiro0: devel::library, field::geography, role::shared-lib
+libcsoap-dev: devel::library
+libcsoap1: role::shared-lib
+libcss-tiny-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::html, works-with::text
+libcsv-ruby: devel::lang:ruby, devel::library, role::dummy
+libcsv-ruby1.6: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, works-with::spreadsheet
+libct1: devel::library, role::shared-lib
+libct3: role::shared-lib
+libcteco5000-dev: devel::library, hardware::storage, role::devel-lib
+libcteco50000: devel::library, hardware::storage, role::shared-lib
+libctk-dev: devel::library, interface::text-mode
+libctk3: devel::library, interface::text-mode, role::shared-lib
+libctk3-dev: devel::library, interface::text-mode
+libctl-dev: devel::lang:scheme, devel::library, field::physics, implemented-in::scheme, role::devel-lib
+libctl-doc: devel::doc, devel::lang:scheme, devel::library, field::physics, made-of::data:html, role::documentation
+libctl2scm16: devel::lang:scheme, devel::library, field::physics, role::shared-lib
+libctl3: role::shared-lib
+libcucul-dev: devel::library
+libcucul0: role::shared-lib
+libcunit1: role::shared-lib
+libcunit1-dev: devel::library
+libcupsimage2: devel::library, hardware::printer, role::shared-lib, use::printing, works-with::image, works-with::image:raster
+libcupsimage2-dev: devel::library, hardware::printer, role::devel-lib, use::printing, works-with::image, works-with::image:raster
+libcupsys2: hardware::printer, protocol::special:todo, role::shared-lib, use::printing
+libcupsys2-dev: devel::library, hardware::printer, protocol::ssl, role::devel-lib, use::printing
+libcupsys2-gnutls10: devel::library, hardware::printer, protocol::ssl, role::shared-lib, use::printing
+libcurl-ocaml: devel::lang:ocaml, devel::library, filetransfer::ftp, filetransfer::http, implemented-in::ocaml, protocol::ftp, protocol::http, protocol::ssl, role::shared-lib, use::downloading
+libcurl-ocaml-dev: devel::lang:ocaml, devel::library, filetransfer::ftp, filetransfer::http, implemented-in::c, implemented-in::ocaml, protocol::ftp, protocol::http, protocol::ssl, role::devel-lib
+libcurl3: devel::library, filetransfer::ftp, filetransfer::http, implemented-in::c, protocol::ftp, protocol::http, protocol::ssl, role::shared-lib, use::downloading
+libcurl3-dbg: devel::debugger, devel::lang:c, devel::library, filetransfer::ftp, filetransfer::http, implemented-in::c, protocol::ftp, protocol::http, protocol::ssl, role::shared-lib, use::downloading
+libcurl3-dev: devel::doc, devel::lang:c, devel::library, filetransfer::ftp, filetransfer::http, implemented-in::c, made-of::data:html, made-of::data:pdf, protocol::ftp, protocol::http, protocol::ssl, role::devel-lib, use::downloading
+libcurl3-gnutls: filetransfer::ftp, filetransfer::http, protocol::ftp, protocol::http, protocol::ldap, protocol::ssl, role::shared-lib, use::downloading
+libcurl3-gnutls-dev: devel::library
+libcurl3-openssl-dev: devel::library, role::devel-lib
+libcurses-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::text-mode, role::shared-lib, uitoolkit::ncurses
+libcurses-ruby: devel::lang:ruby, devel::library, implemented-in::ruby, interface::text-mode, role::metapackage
+libcurses-ruby1.6: devel::lang:ruby, devel::library, implemented-in::ruby, interface::text-mode, role::shared-lib
+libcurses-ui-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::text-mode, role::devel-lib, role::shared-lib, uitoolkit::ncurses
+libcurses-widgets-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::text-mode, role::shared-lib, uitoolkit::ncurses
+libcv-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libcv0.9-0: special::not-yet-tagged, special::not-yet-tagged::l
+libcv0.9.7-0: role::shared-lib
+libcvaux-dev: devel::library, role::devel-lib, works-with::image
+libcvaux0.9-0: special::not-yet-tagged, special::not-yet-tagged::l
+libcvaux0.9.7-0: role::shared-lib
+libcvs-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libcvsservice-dev: devel::lang:c++, devel::library, devel::rcs, implemented-in::c++, role::devel-lib, suite::kde, uitoolkit::qt
+libcvsservice0: devel::lang:c++, devel::library, devel::rcs, implemented-in::c++, role::shared-lib, suite::kde, uitoolkit::qt
+libcwd-dev: devel::library, role::devel-lib
+libcwd-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libcwd0: role::shared-lib
+libcwd0-dbg: devel::lang:c++, devel::library, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libcwnn-dev: accessibility::input, culture::chinese, culture::taiwanese, devel::library, role::devel-lib
+libcwnn0: accessibility::input, culture::chinese, culture::taiwanese, devel::library, role::shared-lib
+libcxxtools-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib
+libcxxtools3: devel::lang:c++, devel::library, implemented-in::c++, role::shared-lib
+libcyrus-imap-perl21: devel::lang:c, devel::lang:perl, devel::library, implemented-in::perl, mail::imap, protocol::imap, protocol::ssl, special::auto-inst-parts, works-with::mail
+libdaemon-dev: devel::lang:c, devel::library, implemented-in::c, interface::daemon, role::devel-lib
+libdaemon0: implemented-in::c, interface::daemon, role::shared-lib
+libdaemonize-ruby: devel::lang:ruby
+libdaemonize-ruby1.8: devel::lang:ruby
+libdancer-xml0: devel::library, role::shared-lib, works-with-format::xml
+libdancer-xml0-dev: devel::library, role::devel-lib, works-with-format::xml
+libdar-dev: admin::backup, devel::library, role::devel-lib, use::storing, works-with::archive
+libdar64-4: role::shared-lib
+libdata-buffer-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libdata-compare-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libdata-dump-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libdata-dumper-simple-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libdata-dumpxml-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libdata-flow-perl: devel::lang:c, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libdata-formvalidator-perl: devel::lang:perl, devel::library, implemented-in::perl, role::devel-lib, role::shared-lib, use::checking
+libdata-hierarchy-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libdata-optlist-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libdata-page-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libdata-random-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libdata-showtable-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libdata-sorting-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::organizing
+libdata-structure-util-perl: devel::lang:perl
+libdata-types-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libdata-validate-domain-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libdata-visitor-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libdate-calc-perl: devel::lang:perl, devel::library, implemented-in::c, implemented-in::perl, role::shared-lib, use::timekeeping
+libdate-convert-perl: devel::library, implemented-in::perl, role::shared-lib
+libdate-ical-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::timekeeping
+libdate-leapyear-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::timekeeping
+libdate-manip-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::timekeeping
+libdate-pcalc-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::timekeeping
+libdate-simple-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::timekeeping
+libdatetime-calendar-discordian-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::timekeeping
+libdatetime-format-builder-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libdatetime-format-db2-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libdatetime-format-mail-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libdatetime-format-mysql-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libdatetime-format-pg-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libdatetime-format-strptime-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libdatetime-format-w3cdtf-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libdatetime-locale-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::timekeeping
+libdatetime-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::timekeeping
+libdatetime-timezone-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::timekeeping
+libdb-file-lock-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libdb1: devel::library, role::shared-lib
+libdb1-altdev: devel::library
+libdb1-compat: devel::library, implemented-in::c, role::shared-lib, special::obsolete, works-with::db
+libdb2: devel::library, implemented-in::c, role::shared-lib, special::obsolete, works-with::db
+libdb2-dbg: devel::debugger, devel::library, implemented-in::c, role::shared-lib, special::obsolete, works-with::db
+libdb2-dev: devel::library, implemented-in::c, role::devel-lib, special::obsolete, works-with::db
+libdb2-ruby1.6: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, special::obsolete, works-with::db
+libdb2-ruby1.8: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, special::obsolete, works-with::db
+libdb2-util: devel::library, implemented-in::c, interface::commandline, role::program, scope::utility, special::obsolete, works-with::db
+libdb3: devel::library, implemented-in::c, role::shared-lib, works-with::db
+libdb3++-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, works-with::db
+libdb3++c102: devel::library, implemented-in::c++, role::shared-lib, works-with::db
+libdb3-dev: devel::library, implemented-in::c, role::devel-lib, works-with::db
+libdb3-ruby1.6: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, works-with::db
+libdb3-ruby1.8: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, works-with::db
+libdb3-ruby1.9: devel::lang:ruby, works-with::db
+libdb3-tcl: devel::lang:tcl, devel::library, implemented-in::tcl, role::app-data, works-with::db
+libdb3-util: devel::library, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::db
+libdb4.1: devel::library, implemented-in::c, role::shared-lib, works-with::db
+libdb4.1++: devel::library, implemented-in::c++, role::shared-lib, works-with::db
+libdb4.1++-dev: devel::library, implemented-in::c++, role::devel-lib, works-with::db
+libdb4.1-dev: devel::library, implemented-in::c, role::devel-lib, works-with::db
+libdb4.1-java: devel::lang:java, devel::library, implemented-in::java, role::app-data, works-with::db
+libdb4.1-ruby1.6: devel::lang:ruby
+libdb4.1-ruby1.8: devel::lang:ruby
+libdb4.1-tcl: devel::lang:tcl, devel::library, implemented-in::tcl, role::app-data, works-with::db
+libdb4.2: devel::library, implemented-in::c, role::shared-lib, works-with::db
+libdb4.2++: devel::lang:c++, implemented-in::c++, role::shared-lib, works-with::db
+libdb4.2++-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, works-with::db
+libdb4.2++c2: role::shared-lib, works-with::db
+libdb4.2-dev: devel::library, implemented-in::c, role::devel-lib, works-with::db
+libdb4.2-java: devel::lang:java, devel::library, implemented-in::java, role::app-data, works-with::db
+libdb4.2-java-dev: works-with::db
+libdb4.2-ruby1.6: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, works-with::db
+libdb4.2-ruby1.8: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, works-with::db
+libdb4.2-ruby1.9: devel::lang:ruby, works-with::db
+libdb4.2-tcl: devel::lang:tcl, devel::library, implemented-in::tcl, role::app-data, works-with::db
+libdb4.3: devel::library, implemented-in::c, role::shared-lib, works-with::db
+libdb4.3++: implemented-in::c++, role::shared-lib
+libdb4.3++-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, works-with::db
+libdb4.3++c2: role::shared-lib, works-with::db
+libdb4.3-dev: devel::library, implemented-in::c, role::devel-lib, works-with::db
+libdb4.3-java: devel::lang:java, works-with::db
+libdb4.3-java-dev: works-with::db
+libdb4.3-ruby1.8: devel::lang:ruby, works-with::db
+libdb4.3-ruby1.9: devel::lang:ruby, works-with::db
+libdb4.3-tcl: devel::lang:tcl, devel::library, implemented-in::tcl, role::app-data, works-with::db
+libdb4.4: role::shared-lib, works-with::db
+libdb4.4++: works-with::db
+libdb4.4++-dev: devel::library, works-with::db
+libdb4.4-dev: devel::library, implemented-in::c, role::devel-lib, works-with::db
+libdb4.4-java: devel::lang:java, works-with::db
+libdb4.4-java-dev: works-with::db
+libdb4.4-tcl: works-with::db
+libdb4.5: role::shared-lib
+libdb4.5++-dev: devel::library
+libdb4.5-dev: devel::library
+libdb4.5-java: devel::lang:java
+libdb4.5-java-dev: devel::library
+libdballe-bufrex-dev: devel::lang:c, devel::library, field::TODO, implemented-in::c, role::devel-lib
+libdballe-bufrex-doc: devel::doc, role::documentation
+libdballe-bufrex3: implemented-in::c, role::shared-lib
+libdballe-core-dev: devel::lang:c, devel::library, field::TODO, implemented-in::c, role::devel-lib
+libdballe-core-doc: devel::doc, role::documentation
+libdballe-core3: implemented-in::c, role::shared-lib
+libdballe-db-dev: devel::lang:c, devel::library, field::TODO, implemented-in::c, role::devel-lib, use::searching
+libdballe-db-doc: devel::doc, role::documentation
+libdballe-db3: implemented-in::c, role::shared-lib
+libdballe-dev: devel::lang:c, devel::lang:fortran, devel::library, field::TODO, implemented-in::c, implemented-in::fortran, role::devel-lib
+libdballe-msg-dev: devel::lang:c, devel::library, field::TODO, implemented-in::c, role::devel-lib
+libdballe-msg-doc: devel::doc, role::documentation
+libdballe-msg3: implemented-in::c, role::shared-lib
+libdballe2: devel::lang:c, field::TODO, implemented-in::c, role::shared-lib
+libdballef-dev: devel::lang:fortran, devel::library, field::TODO, implemented-in::c, role::devel-lib
+libdballef2: devel::lang:fortran, field::TODO, implemented-in::fortran, role::shared-lib
+libdballef3: implemented-in::c, role::shared-lib
+libdballepp-dev: devel::lang:c++, devel::library, field::TODO, implemented-in::c++, role::devel-lib
+libdballepp3: implemented-in::c++, role::shared-lib
+libdbaudiolib0: devel::library, interface::daemon, role::shared-lib, sound::mixer, uitoolkit::gtk, works-with::audio
+libdbaudiolib0-dev: devel::library, interface::daemon, role::devel-lib, sound::mixer, works-with::audio
+libdbd-anydata-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libdbd-csv-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db, works-with::spreadsheet
+libdbd-dbftp-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, works-with::db
+libdbd-excel-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libdbd-informix-perl: devel::lang:perl, implemented-in::perl
+libdbd-ldap-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, network::client, protocol::ldap, role::program, role::shared-lib, works-with::db
+libdbd-maxdb-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libdbd-mysql: devel::lang:sql, devel::library, implemented-in::c, role::shared-lib, works-with::db
+libdbd-mysql-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libdbd-mysql-ruby: devel::lang:ruby, devel::lang:sql, devel::library, implemented-in::ruby, role::metapackage, works-with::db
+libdbd-mysql-ruby1.6: devel::lang:ruby
+libdbd-mysql-ruby1.8: devel::lang:ruby, devel::lang:sql, devel::library, implemented-in::ruby, works-with::db
+libdbd-odbc-perl: devel::lang:perl, devel::library, implemented-in::perl, works-with::db
+libdbd-odbc-ruby: devel::lang:ruby, devel::library, implemented-in::ruby, role::metapackage, works-with::db
+libdbd-odbc-ruby1.6: devel::lang:ruby
+libdbd-odbc-ruby1.8: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, works-with::db
+libdbd-pg-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, protocol::db:psql, role::shared-lib, works-with::db
+libdbd-pg-ruby: devel::lang:ruby, devel::lang:sql, devel::library, implemented-in::ruby, role::metapackage, works-with::db
+libdbd-pg-ruby1.6: devel::lang:ruby
+libdbd-pg-ruby1.8: devel::lang:ruby, devel::lang:sql, devel::library, implemented-in::ruby, works-with::db
+libdbd-pgsql: devel::lang:sql, devel::library, implemented-in::c, role::shared-lib, works-with::db
+libdbd-ram-perl: devel::lang:perl, devel::library, implemented-in::perl
+libdbd-sqlite: devel::lang:sql, devel::library, implemented-in::c, role::shared-lib, works-with::db
+libdbd-sqlite-ruby: devel::lang:ruby, devel::lang:sql, devel::library, implemented-in::ruby, role::metapackage, works-with::db
+libdbd-sqlite-ruby1.6: devel::lang:ruby
+libdbd-sqlite-ruby1.8: devel::lang:ruby, devel::lang:sql, devel::library, implemented-in::ruby, works-with::db
+libdbd-sqlite2-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libdbd-sqlite3-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libdbd-sqlite3-ruby: devel::lang:ruby, devel::lang:sql, works-with::db
+libdbd-sqlite3-ruby1.8: devel::lang:ruby, devel::lang:sql, works-with::db
+libdbd-sqlrelay-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, use::proxying, works-with::db
+libdbd-sybase-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, works-with::db
+libdbd-xbase-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libdbh1.0-1: devel::library, role::shared-lib
+libdbh1.0-dev: devel::library, role::devel-lib
+libdbi-ocaml: devel::lang:ocaml, devel::lang:sql, devel::library, implemented-in::ocaml, role::shared-lib, works-with::db
+libdbi-ocaml-dev: devel::lang:ocaml, devel::lang:sql, devel::library, implemented-in::ocaml, role::devel-lib, works-with::db
+libdbi-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libdbi-ruby: devel::lang:ruby, devel::lang:sql, devel::library, implemented-in::ruby, role::metapackage, works-with::db
+libdbi-ruby1.6: devel::lang:ruby
+libdbi-ruby1.8: devel::lang:ruby, devel::lang:sql, devel::library, implemented-in::ruby, role::shared-lib, works-with::db
+libdbi0: devel::lang:c, devel::lang:sql, devel::library, implemented-in::c, role::shared-lib, works-with::db
+libdbi0-dev: devel::lang:c, devel::lang:sql, devel::library, implemented-in::c, role::devel-lib, works-with::db
+libdbix-abstract-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libdbix-cgi-perl: devel::lang:perl, devel::library, implemented-in::perl, web::cgi
+libdbix-class-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libdbix-class-schema-loader-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libdbix-contextualfetch-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libdbix-datasource-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libdbix-dbschema-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libdbix-easy-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libdbix-fulltextsearch-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libdbix-password-perl: admin::user-management, devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libdbix-profile-perl: devel::lang:perl, devel::lang:sql, devel::library, devel::profiler, implemented-in::perl, role::shared-lib, works-with::db
+libdbix-recordset-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libdbix-searchbuilder-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libdbix-xml-rdb-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with-format::xml, works-with::db
+libdbix-xmlmessage-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with-format::xml, works-with::db
+libdbm-ruby: devel::lang:ruby, devel::library, implemented-in::ruby, role::metapackage, works-with::db
+libdbm-ruby1.6: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, works-with::db
+libdbm-ruby1.8: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, works-with::db
+libdbm-ruby1.9: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l
+libdbus-1-3: role::shared-lib
+libdbus-1-cil: devel::library, role::shared-lib
+libdbus-1-dev: devel::library, role::devel-lib
+libdbus-glib-1-2: role::shared-lib
+libdbus-glib-1-dev: devel::library, role::devel-lib
+libdbus-qt-1-1c2: role::shared-lib, uitoolkit::qt
+libdbus-qt-1-dev: devel::library, uitoolkit::qt
+libdc0: role::shared-lib
+libdc0-dev: devel::library, implemented-in::c, network::service, role::devel-lib, use::downloading
+libdc0c2: role::shared-lib
+libdc1394-13: hardware::camera, role::shared-lib
+libdc1394-13-dev: devel::library, hardware::camera, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libdc1394-examples: devel::examples, devel::library, hardware::camera, interface::commandline, role::program, scope::utility
+libdcmtk0-dev: devel::library, role::devel-lib, use::converting, use::downloading, works-with::image
+libdcmtk1: role::shared-lib
+libdcmtk1-dev: devel::library
+libdcop3-java: devel::lang:java, devel::library, implemented-in::java, role::app-data, suite::kde
+libdcop3-java-dev: devel::lang:java, devel::library, implemented-in::java, role::devel-lib, suite::kde
+libdcop3-jni: devel::lang:java, devel::library, implemented-in::java, role::app-data, suite::kde
+libddccontrol-dev: devel::library
+libddccontrol0: role::shared-lib
+libdebconf-client-ruby: devel::lang:ruby, devel::library
+libdebconfclient0: devel::library, implemented-in::c, role::shared-lib, suite::debian, use::configuring
+libdebconfclient0-dev: devel::library, implemented-in::c, role::devel-lib, suite::debian, use::configuring
+libdebian-installer-extra4: devel::library, implemented-in::c, role::shared-lib, suite::debian
+libdebian-installer4: devel::library, implemented-in::c, role::shared-lib, suite::debian
+libdebian-installer4-dev: devel::library, implemented-in::c, role::devel-lib, suite::debian
+libdebian-package-html-perl: devel::debian, devel::lang:perl, devel::packaging, devel::testing-qa, implemented-in::perl, role::shared-lib
+libdebtags-dev: devel::library, role::devel-lib
+libdebtags-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, suite::debian, use::searching, works-with::software:package
+libdebtags0: role::shared-lib
+libdebug-trace-perl: devel::debugger, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libdebug0: devel::debugger, devel::lang:c, devel::library, implemented-in::c, role::shared-lib
+libdebug0-dev: devel::debugger, devel::lang:c, devel::library, implemented-in::c, role::devel-lib
+libdelimmatch-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::searching
+libdeps-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libdeps-renderer-dot-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libdeps-renderer-tulip-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libdevel-corestack-perl: devel::debugger, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libdevel-cover-perl: devel::lang:perl
+libdevel-cycle-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libdevel-logger-ruby: admin::logging, devel::lang:ruby, devel::library, implemented-in::ruby, role::metapackage
+libdevel-logger-ruby1.6: admin::logging, devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib
+libdevel-logger-ruby1.8: admin::logging, devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib
+libdevel-ptkdb-perl: devel::debugger, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, uitoolkit::tk
+libdevel-stacktrace-perl: devel::debugger, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libdevel-symdump-perl: devel::debugger, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::software:running
+libdevhelp-1-0: devel::doc, devel::library, implemented-in::c, role::shared-lib, suite::gnome, uitoolkit::gtk, use::browsing
+libdevhelp-1-dev: devel::doc, devel::library, implemented-in::c, role::devel-lib, role::documentation, suite::gnome, uitoolkit::gtk, use::browsing
+libdevice-serialport-perl: admin::hardware, devel::lang:perl, devel::library, implemented-in::perl
+libdevil-dev: devel::library, implemented-in::c, role::devel-lib, uitoolkit::sdl, works-with::image
+libdevil1: devel::library, role::shared-lib, uitoolkit::sdl
+libdevil1c2: role::shared-lib
+libdevmapper-dev: admin::kernel, devel::library, implemented-in::c, role::devel-lib
+libdevmapper1.01: admin::kernel, devel::library, implemented-in::c, role::shared-lib
+libdevmapper1.02: role::shared-lib
+libdfb++-0.9-25: role::shared-lib
+libdfb++-dev: devel::library
+libdiacanvas2-0: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk, works-with-format::svg, works-with::image:vector
+libdiacanvas2-0-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk, works-with-format::svg, works-with::image:vector
+libdiacanvas2-0-doc: devel::library, made-of::data:html, role::documentation, suite::gnome, uitoolkit::gtk, works-with-format::svg, works-with::image:vector
+libdiacanvas2-1: role::shared-lib, uitoolkit::gtk
+libdiacanvas2-1-dev: devel::library
+libdianewcanvas2: devel::library, role::shared-lib, uitoolkit::gtk, works-with-format::svg, works-with::image, works-with::image:vector
+libdianewcanvas2-dev: devel::library, role::devel-lib, uitoolkit::gtk, works-with-format::svg, works-with::image, works-with::image:vector
+libdigest-bubblebabble-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libdigest-crc-perl: devel::lang:perl, devel::library, implemented-in::perl, security::integrity
+libdigest-hmac-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, security::cryptography, security::integrity
+libdigest-md2-perl: devel::lang:perl, devel::library, implemented-in::perl, security::cryptography, security::integrity
+libdigest-md4-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, security::integrity
+libdigest-nilsimsa-perl: devel::lang:perl, devel::library, implemented-in::c, implemented-in::perl, role::app-data, security::integrity
+libdigest-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, security::cryptography, security::integrity
+libdigest-sha-perl: devel::lang:perl, implemented-in::perl, security::cryptography
+libdigest-sha1-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, security::cryptography, security::integrity
+libdime: devel::lang:c++, devel::library, implemented-in::c++, role::shared-lib, works-with::3dmodel
+libdime-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, works-with::3dmodel
+libdime-doc: devel::doc, devel::lang:c++, devel::library, made-of::data:html, role::documentation, works-with::3dmodel
+libdirectfb-0.9-20: devel::library, interface::framebuffer, role::shared-lib
+libdirectfb-0.9-25: role::shared-lib
+libdirectfb-bin: devel::library, interface::framebuffer, role::program, scope::utility, use::configuring
+libdirectfb-dev: devel::library, interface::framebuffer, role::devel-lib
+libdirectfb-extra: devel::library, interface::framebuffer, role::shared-lib, uitoolkit::sdl
+libdiscover-dev: devel::library, hardware::detection, role::devel-lib
+libdiscover1: devel::library, hardware::detection, role::app-data, role::shared-lib
+libdiscover1-dev: devel::library, hardware::detection, role::devel-lib
+libdiscover1-pic: devel::library, hardware::detection, role::devel-lib
+libdiscover2: devel::library, hardware::detection, role::app-data, role::shared-lib
+libdisplaymigration0: devel::library, role::shared-lib, uitoolkit::gtk
+libdisplaymigration0-dev: devel::library, role::devel-lib, uitoolkit::gtk
+libdjbdns1: devel::library, protocol::dns, role::shared-lib
+libdjbdns1-dev: devel::library, protocol::dns, role::devel-lib
+libdjvulibre-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libdjvulibre1: devel::library, role::shared-lib
+libdjvulibre15: role::shared-lib
+libdl-ruby: devel::lang:ruby, devel::library, implemented-in::ruby, role::metapackage
+libdl1-altdev: devel::library
+libdlisp0: devel::lang:lisp, devel::library, implemented-in::lisp, role::shared-lib, works-with::text
+libdlisp0-dev: devel::lang:lisp, devel::library, implemented-in::lisp, role::devel-lib, works-with::text
+libdlm-dev: devel::library, role::devel-lib
+libdlm0: devel::library, role::shared-lib
+libdlm1: role::shared-lib
+libdm0: admin::filesystem, devel::library, role::shared-lib
+libdm0-dev: admin::filesystem, devel::library, role::devel-lib
+libdmalloc-dev: devel::library
+libdmalloc4: devel::debugger, devel::lang:c, devel::library, role::shared-lib
+libdmalloc4-dev: role::devel-lib
+libdmsocket-0.32.5-0: devel::library, network::service, role::shared-lib
+libdmsocket-0.32.5-0-dev: devel::library, network::service, role::devel-lib
+libdmx-dev: devel::library, network::server, role::devel-lib, x11::library
+libdmx1: role::shared-lib
+libdmx1-dbg: devel::library
+libdmx4linux-dev: devel::library
+libdmx4linux2: role::shared-lib
+libdnas-application-0.32.5-0: devel::library, network::service, role::shared-lib
+libdnas-application-0.32.5-0-dev: devel::library, network::service, role::devel-lib
+libdnas-core-0.32.5-0: devel::library, network::service, role::shared-lib
+libdnas-core-0.32.5-0-dev: devel::library, network::service, role::devel-lib
+libdnet: devel::library, implemented-in::c++, network::service, role::shared-lib
+libdnet-dev: devel::library, implemented-in::c++, network::service, role::devel-lib
+libdns-zoneparse-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::dns, role::shared-lib
+libdns20: protocol::dns, role::shared-lib
+libdns21: role::shared-lib
+libdns22: protocol::dns, role::shared-lib
+libdnsres-dev: devel::library
+libdnsres0: role::shared-lib
+libdockapp-dev: devel::library, role::devel-lib, suite::gnustep, x11::applet
+libdockapp2: devel::library, role::shared-lib, suite::gnustep, x11::applet
+libdom1-java: devel::lang:java, devel::library, implemented-in::java, role::app-data, works-with-format::html, works-with::text
+libdoodle-dev: devel::library
+libdoodle1: role::shared-lib
+libdoodle1-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libdotconf-dev: devel::library, implemented-in::c, role::devel-lib, use::configuring
+libdotconf1.0: devel::library, implemented-in::c, role::shared-lib, use::configuring
+libdpkg-ruby1.6: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, suite::debian, works-with::software:package
+libdpkg-ruby1.8: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, suite::debian, works-with::software:package
+libdps-dev: devel::library, interface::x11, role::devel-lib, works-with-format::postscript, works-with::text
+libdps1: devel::library, interface::x11, role::shared-lib, works-with-format::postscript, works-with::text
+libdps1-dbg: devel::library, interface::x11, role::shared-lib, works-with-format::postscript, works-with::text
+libdrb-ruby: devel::lang:ruby, devel::library, implemented-in::ruby, role::metapackage
+libdrb-ruby1.6: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib
+libdrm-dev: devel::library
+libdrm2: role::shared-lib
+libdscaler: special::not-yet-tagged, special::not-yet-tagged::l
+libdshconfig1: devel::library, implemented-in::c, role::shared-lib, use::configuring
+libdshconfig1-dev: devel::library, implemented-in::c, role::devel-lib, use::configuring
+libdspam7: role::shared-lib
+libdstyx: devel::code-generator, devel::library, role::shared-lib
+libdtdparser-java: devel::lang:java, devel::library, implemented-in::java, use::text-formatting, works-with::text
+libdts-dev: devel::library, role::devel-lib, works-with::audio
+libdumb0: devel::library, role::shared-lib, use::playing, works-with::audio
+libdumb0-dev: devel::library, role::devel-lib, use::playing, works-with::audio
+libdumb1: role::shared-lib
+libdumb1-dev: devel::library
+libdumbnet-dev: devel::library, network::service, role::devel-lib
+libdumbnet1: devel::library, network::service, role::shared-lib
+libdv-bin: devel::library, interface::text-mode, interface::x11, role::program, scope::utility, uitoolkit::gtk, uitoolkit::ncurses, uitoolkit::sdl, works-with::video
+libdv4: devel::library, role::shared-lib, uitoolkit::gtk, works-with::video
+libdv4-dev: devel::library, role::devel-lib, uitoolkit::gtk, works-with::video
+libdvb-dev: devel::library, hardware::video, role::devel-lib, works-with::video
+libdvbpsi3: devel::library, role::shared-lib, use::playing, works-with::video
+libdvbpsi3-dev: devel::library, role::devel-lib, works-with::video
+libdvbpsi4: role::shared-lib
+libdvbpsi4-dev: devel::library, role::devel-lib
+libdvdnav-dev: devel::library, hardware::storage, hardware::storage:dvd, role::devel-lib, use::browsing
+libdvdnav4: devel::library, hardware::storage, hardware::storage:dvd, role::shared-lib, use::browsing
+libdvdplay0: devel::library, hardware::storage, hardware::storage:dvd, role::shared-lib, use::playing
+libdvdplay0-dev: devel::library, hardware::storage, hardware::storage:dvd, role::devel-lib, use::playing
+libdvdread-dev: devel::library
+libdvdread3: devel::library, hardware::storage, hardware::storage:dvd, role::shared-lib, use::playing
+libdvdread3-dev: devel::library, hardware::storage:dvd, role::devel-lib, use::playing
+libdw-dev: devel::library
+libdwarf-dev: devel::debugger, devel::doc, devel::library, implemented-in::c, role::devel-lib
+libdx4: devel::library, role::shared-lib, uitoolkit::motif
+libdx4-dev: devel::library, role::devel-lib, uitoolkit::motif
+libdynamite: role::shared-lib
+libdynamite-dev: devel::library, role::devel-lib, use::compressing
+libdynamite0: role::shared-lib
+libeb-ruby1.8: devel::lang:ruby, devel::library, hardware::storage, hardware::storage:cd, implemented-in::ruby, role::shared-lib, use::viewing, works-with::text
+libeb7: devel::library, hardware::storage, hardware::storage:cd, role::shared-lib, use::viewing, works-with::text
+libeb7-dev: devel::library, hardware::storage, hardware::storage:cd, role::devel-lib, use::viewing, works-with::text
+libebl-dev: devel::library
+libebml-dev: devel::library, role::devel-lib
+libebook1.2-3: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libebook1.2-5: role::shared-lib
+libebook1.2-dev: devel::library, role::devel-lib, uitoolkit::gtk
+libecal1.2-2: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libecal1.2-6: role::shared-lib
+libecal1.2-dev: devel::library, role::devel-lib
+libecasound-ruby1.8: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, sound::player, works-with::audio
+libecasound2.2-dev: devel::lang:c++, devel::library, role::devel-lib, sound::player, works-with::audio
+libecasoundc2.2-dev: devel::lang:c, devel::library, role::devel-lib, sound::player, works-with::audio
+libecgi-dev: devel::lang:c, devel::library, implemented-in::c, protocol::http, role::devel-lib, web::cgi, works-with-format::html, works-with::text
+libecgi0: devel::lang:c, devel::library, implemented-in::c, protocol::http, role::shared-lib, web::cgi, works-with-format::html, works-with::text
+libeclipse-jni: special::not-yet-tagged, special::not-yet-tagged::l
+libecpg-compat2: role::shared-lib
+libecpg-dev: devel::lang:c, devel::lang:sql, devel::library, implemented-in::c, protocol::kerberos, protocol::ssl, role::devel-lib, works-with::db
+libecpg5: role::shared-lib
+libedata-book1.2-2: role::shared-lib, uitoolkit::gtk
+libedata-book1.2-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libedata-cal1.2-1: special::not-yet-tagged, special::not-yet-tagged::l
+libedata-cal1.2-5: role::shared-lib
+libedata-cal1.2-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libedataserver1.2-4: special::not-yet-tagged, special::not-yet-tagged::l
+libedataserver1.2-7: role::shared-lib
+libedataserver1.2-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libedataserverui1.2-4: special::not-yet-tagged, special::not-yet-tagged::l
+libedataserverui1.2-6: role::shared-lib, uitoolkit::gtk
+libedataserverui1.2-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libedit-dev: devel::library, interface::text-mode, role::devel-lib, uitoolkit::ncurses, use::editing
+libedit2: devel::library, interface::text-mode, role::shared-lib, uitoolkit::ncurses, use::editing
+libeditex-dev: devel::library
+libeditex-ocaml: devel::lang:ocaml, implemented-in::ocaml, role::shared-lib
+libeditex-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml
+libeditline-dev: devel::library, implemented-in::c, interface::shell, role::devel-lib, use::editing
+libeditline0: devel::library, implemented-in::c, interface::shell, role::shared-lib, use::editing
+libeel2-2: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libeel2-data: devel::library, role::app-data, suite::gnome, uitoolkit::gtk
+libeel2-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk
+libefs-dev: devel::library, role::devel-lib, suite::gnome
+libefs1: devel::library, role::shared-lib, suite::gnome
+libegroupwise1.2-10: role::shared-lib
+libegroupwise1.2-5: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libegroupwise1.2-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libegroupwise6: protocol::ssl, role::shared-lib
+libelastic-dev: devel::library, role::devel-lib
+libelastic8: devel::library
+libelf-dev: devel::library
+libelf1: role::shared-lib
+libelfg0: devel::library, role::shared-lib
+libelfg0-dev: devel::library, role::devel-lib
+libelfsh0: devel::library, implemented-in::c, role::shared-lib, uitoolkit::ncurses
+libelfsh0-dev: devel::library, implemented-in::c, role::devel-lib
+libelk0: devel::lang:scheme, devel::library, role::shared-lib
+libelk0-dev: devel::lang:scheme, devel::library, role::devel-lib
+libemail-abstract-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::mail
+libemail-address-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libemail-date-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libemail-filter-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libemail-find-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::searching, works-with::mail
+libemail-folder-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libemail-foldertype-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::scanning, works-with::mail
+libemail-localdelivery-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libemail-messageid-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libemail-mime-contenttype-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libemail-mime-encodings-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libemail-mime-modifier-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libemail-mime-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libemail-send-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libemail-simple-creator-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libemail-simple-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::mail
+libemail-valid-loose-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libemail-valid-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::checking, works-with::mail
+libembperl-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::web, web::scripting, works-with-format::html, works-with::text
+libenca-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib, use::converting, works-with::text, works-with::unicode
+libenca0: devel::lang:c, devel::library, implemented-in::c, role::devel-lib, role::shared-lib, use::converting, works-with::text, works-with::unicode
+libenchant-dev: devel::library, role::devel-lib, use::checking, works-with::text
+libenchant-voikko: uitoolkit::ncurses
+libenchant1: role::shared-lib
+libenchant1c2a: implemented-in::c, interface::commandline, role::program, scope::utility, use::checking, works-with::dictionary, works-with::text
+libend-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libendeavour2-2: implemented-in::c, role::shared-lib
+libendeavour2-dev: devel::library, implemented-in::c, role::devel-lib
+libenet-dev: devel::library
+libengine-pkcs11-openssl: security::cryptography
+libentity-dev: devel::library, devel::ui-builder, role::devel-lib, uitoolkit::gtk, use::editing
+libentity0: devel::library, devel::ui-builder, role::shared-lib, uitoolkit::gtk, use::editing
+libenv-ps1-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::shell, role::shared-lib
+libepplet-dev: devel::lang:c, devel::library, interface::x11, role::devel-lib, x11::applet
+libepplet0: devel::lang:c, devel::library, interface::x11, role::shared-lib, x11::applet
+libept-dev: admin::package-management, devel::debian, devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, suite::debian, works-with::software:package
+libequeue-gtk2-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libequeue-ocaml: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::shared-lib
+libequeue-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+liberb-ruby: devel::lang:ruby, devel::library, implemented-in::ruby, role::metapackage
+liberb-ruby1.6: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib
+liberis-1.2-dbg: devel::library, role::shared-lib
+liberis-1.2-dev: devel::library, role::devel-lib
+liberis-1.3-11: role::shared-lib
+liberis-1.3-11-dbg: devel::library
+liberis-1.3-dev: devel::library
+liberis-doc: devel::doc, devel::lang:c++, devel::library, game::mud, made-of::data:html, role::documentation
+liberror-perl: devel::debugger, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+liberuby: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib
+liberuby-dev: devel::lang:ruby, devel::library, implemented-in::ruby, role::devel-lib
+libesd-alsa0: devel::library, interface::daemon, role::shared-lib, works-with::audio
+libesd0: devel::library, interface::daemon, role::shared-lib, works-with::audio
+libesd0-dev: devel::library, interface::daemon, role::devel-lib, works-with::audio
+libesmtp-dev: devel::library, mail::smtp, protocol::smtp, role::devel-lib, works-with::mail
+libesmtp5: devel::library, mail::smtp, protocol::smtp, role::shared-lib, works-with::mail
+libespeak1: role::shared-lib
+libestools1.2: role::shared-lib
+libestools1.2-dev: accessibility::speech, devel::library, field::linguistics, role::devel-lib, works-with::audio
+libestools1.2c102: role::shared-lib
+libestraier-dev: devel::library
+libestraier-java: devel::lang:java
+libestraier-ruby1.8: devel::lang:ruby
+libestraier8: role::shared-lib
+libetoken: devel::library, hardware::storage, hardware::usb, role::shared-lib
+libetpan-dev: devel::library, protocol::imap, protocol::pop3, protocol::smtp, protocol::ssl, role::devel-lib, works-with::mail
+libetpan-doc: devel::doc, devel::library, protocol::imap, protocol::pop3, protocol::smtp, protocol::ssl, role::documentation
+libetpan10: role::shared-lib
+libeurodec1: devel::library, field::physics, role::shared-lib
+libeurodec1-dev: devel::library, field::physics, role::devel-lib
+libevent-dev: devel::library, role::devel-lib, works-with::software:running
+libevent-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libevent-rpc-perl: devel::lang:perl, devel::library, devel::rpc, implemented-in::perl, role::devel-lib, role::shared-lib
+libevent1: devel::library, role::shared-lib, works-with::software:running
+libeventdb-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib, suite::TODO
+libeventdb0: role::shared-lib, uitoolkit::gtk
+libeventdb1: implemented-in::c, role::shared-lib, suite::TODO
+libevms-2.5: admin::filesystem, devel::library, role::shared-lib, role::source
+libevms-dev: admin::filesystem, devel::library, role::devel-lib
+libevocosm-3.1-1: role::shared-lib
+libevocosm-dev: devel::library, implemented-in::c++, role::devel-lib
+libevocosm0: devel::library, implemented-in::c++, role::shared-lib
+libevolution-ruby: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l
+libevolution-ruby1.8: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l
+libevolution2.0-cil: uitoolkit::gtk
+libevtlog-dev: devel::library
+libevtlog0: role::shared-lib
+libevtlog0-dbg: devel::library
+libexception-class-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libexchange-storage1.2-1: role::shared-lib, uitoolkit::gtk
+libexchange-storage1.2-dev: devel::library
+libexene-smlnj: special::not-yet-tagged, special::not-yet-tagged::l
+libexif-dev: devel::library, role::devel-lib, works-with-format::jpg, works-with::image, works-with::image:raster
+libexif-gtk-dev: devel::library, role::devel-lib, uitoolkit::gtk, use::editing, use::viewing, works-with-format::jpg, works-with::image, works-with::image:raster
+libexif-gtk4: devel::library, role::shared-lib, uitoolkit::gtk
+libexif-gtk5: role::shared-lib, uitoolkit::gtk
+libexif-ruby: devel::lang:ruby, devel::library, implemented-in::ruby, role::metapackage, use::editing, use::viewing, works-with-format::jpg, works-with::image, works-with::image:raster
+libexif-ruby1.6: devel::lang:ruby, devel::library, implemented-in::ruby, use::editing, use::viewing, works-with-format::jpg, works-with::image:raster
+libexif-ruby1.8: devel::lang:ruby, devel::library, implemented-in::ruby, use::editing, use::viewing, works-with-format::jpg, works-with::image, works-with::image:raster
+libexif10: role::shared-lib
+libexif12: role::shared-lib
+libexiv2-0.10: role::shared-lib
+libexiv2-dev: devel::library
+libexo-0.3-0: role::shared-lib, uitoolkit::gtk
+libexo-0.3-dev: devel::library
+libexosip2-5: role::shared-lib
+libexosip2-dev: devel::library
+libexpat-ocaml: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::shared-lib, works-with-format::xml
+libexpat-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::c, implemented-in::ocaml, role::devel-lib, works-with-format::xml
+libexpat1: devel::library, implemented-in::c, role::shared-lib, works-with-format::xml
+libexpat1-dev: devel::library, implemented-in::c, role::devel-lib, works-with-format::xml
+libexpect-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::software:running
+libexporter-lite-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libexporter-tidy-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libexscalibar1: role::shared-lib, uitoolkit::qt
+libexscalibar1-dev: devel::library
+libextlib-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libextractor-dev: devel::library, suite::gnu
+libextractor-java-dev: devel::library, suite::gnu
+libextractor-java0: role::shared-lib, suite::gnu
+libextractor-plugins: role::shared-lib, suite::gnu, uitoolkit::gtk, works-with::file
+libextractor1: role::shared-lib
+libextractor1c2a: role::shared-lib, suite::gnu, use::scanning, works-with::file
+libextutils-autoinstall-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libextutils-cbuilder-perl: devel::lang:c, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libextutils-depends-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libextutils-f77-perl: devel::lang:fortran, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libextutils-parsexs-perl: devel::lang:c, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::converting, works-with::software:source
+libextutils-pkgconfig-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libextutils-xsbuilder-perl: devel::lang:c, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::software:source
+libezv24-0: role::shared-lib
+libezv24-dev: devel::library
+libf2c2: role::shared-lib
+libf2c2-dev: devel::library
+libfaad-dev: devel::library
+libfaad0: role::shared-lib
+libfaad2-0: role::shared-lib
+libfacile-ocaml-dev: devel::lang:ocaml, devel::library
+libfactory++-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib
+libfakekey-dev: devel::library, role::devel-lib
+libfakekey0: role::shared-lib
+libfam-dev: devel::library, role::devel-lib, use::monitor, works-with::file
+libfam-ruby: devel::lang:ruby, devel::library, role::shared-lib, use::monitor, works-with::file
+libfam0: role::shared-lib
+libfam0c102: role::shared-lib
+libfann1: devel::library, implemented-in::c, role::shared-lib
+libfann1-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib
+libfax-hylafax-client-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::fax
+libfbclient1: devel::lang:sql, implemented-in::c, implemented-in::c++, role::shared-lib, uitoolkit::ncurses, works-with::db
+libfbembed1: devel::lang:sql, hardware::embedded, implemented-in::c, implemented-in::c++, role::shared-lib, uitoolkit::ncurses, works-with::db
+libfcgi-dev: devel::library, role::devel-lib, web::cgi
+libfcgi-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, web::cgi
+libfcgi-procmanager-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libfcgi-ruby1.6: devel::lang:ruby, devel::library, implemented-in::ruby, web::cgi
+libfcgi-ruby1.8: devel::lang:ruby, devel::library, implemented-in::ruby, web::cgi
+libfcgi0: devel::lang:c, devel::library, implemented-in::c, role::shared-lib, web::cgi
+libfcgi0c2: role::shared-lib
+libfeed-find-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libfeedparser-ruby: devel::lang:ruby
+libfeedparser-ruby1.8: devel::lang:ruby
+libferite-dev: devel::library
+libferite0: devel::library
+libffcall1: devel::library, role::shared-lib
+libffcall1-dev: devel::library, role::devel-lib
+libffi2: devel::library, role::shared-lib
+libffi2-dev: devel::library, role::devel-lib
+libffi3-dev: devel::library, role::devel-lib
+libffi4: role::shared-lib
+libffi4-dev: devel::library, role::devel-lib
+libfile-basedir-perl: admin::filesystem, devel::lang:perl, implemented-in::perl, role::shared-lib, use::organizing, works-with::file
+libfile-cache-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libfile-chdir-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libfile-copy-recursive-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libfile-counterfile-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libfile-desktopentry-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, use::organizing
+libfile-find-rule-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::searching
+libfile-flat-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libfile-homedir-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libfile-mimeinfo-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, use::scanning, works-with::file
+libfile-mmagic-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::scanning, works-with::file
+libfile-modified-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libfile-ncopy-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::file
+libfile-nfslock-perl: devel::lang:perl, implemented-in::perl, protocol::nfs, role::shared-lib
+libfile-path-expand-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libfile-readbackwards-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::logfile
+libfile-remove-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::file
+libfile-rsync-perl: devel::lang:perl, devel::library, implemented-in::perl, use::synchronizing
+libfile-rsyncp-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::synchronizing
+libfile-scan-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, security::antivirus, use::scanning
+libfile-slurp-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libfile-sync-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::mail
+libfile-tail-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::logfile
+libfile-touch-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libfile-type-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::scanning, works-with::file
+libfile-which-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::searching
+libfilehandle-unget-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libfilesys-df-perl: devel::lang:perl
+libfilesys-diskfree-perl: admin::filesystem, devel::lang:perl, devel::library, implemented-in::perl, role::app-data, use::scanning
+libfilesys-diskspace-perl: admin::filesystem, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::scanning
+libfilesys-smbclient-perl: admin::filesystem, devel::lang:perl, devel::library, filetransfer::smb, implemented-in::perl, protocol::smb
+libfilesys-statvfs-perl: admin::filesystem, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::scanning
+libfilesystem-ruby1.6: admin::filesystem, devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, use::scanning
+libfilesystem-ruby1.8: admin::filesystem, devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, use::scanning
+libfileutils-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libfilter-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::software:source
+libfinance-quote-perl: devel::lang:perl, devel::library, field::finance, implemented-in::perl, protocol::http, role::shared-lib, use::downloading
+libfinance-streamer-perl: devel::lang:perl, devel::library, field::finance, implemented-in::perl, role::shared-lib
+libfinance-yahooquote-perl: devel::lang:perl, devel::library, field::finance, implemented-in::perl, protocol::http, role::shared-lib, use::downloading
+libfirebird2-classic: role::shared-lib, uitoolkit::ncurses
+libfirebird2-super: role::shared-lib, uitoolkit::ncurses
+libfiredns-dev: devel::library, protocol::dns, role::devel-lib
+libfiredns0.9: devel::library, protocol::dns, role::shared-lib
+libfirestring-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib
+libfirestring0.9: devel::lang:c, devel::library, implemented-in::c, role::shared-lib
+libfirstworks-sqlr-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, use::proxying, works-with::db
+libfishsound1: devel::library, implemented-in::c, role::shared-lib, works-with-format::oggvorbis, works-with::audio
+libfishsound1-dbg: devel::debugger, devel::library, implemented-in::c, role::shared-lib, works-with-format::oggvorbis, works-with::audio
+libfishsound1-dev: devel::library, implemented-in::c, role::devel-lib, works-with-format::oggvorbis, works-with::audio
+libflac++-dev: devel::library, implemented-in::c++, role::devel-lib, sound::compression, works-with::audio
+libflac++4: implemented-in::c++, role::shared-lib
+libflac++5: role::shared-lib
+libflac-dev: devel::library, implemented-in::c, role::devel-lib, sound::compression, works-with::audio
+libflac6: role::shared-lib, sound::TODO, sound::compression
+libflac7: role::shared-lib
+libflash-dev: devel::library, role::devel-lib
+libflash-mozplugin: special::not-yet-tagged, special::not-yet-tagged::l
+libflash-swfplayer: implemented-in::c++, role::program, use::playing, works-with-format::TODO, works-with::audio, works-with::video
+libflash0: devel::library
+libflash0c2: role::shared-lib
+libflite1: devel::library, implemented-in::c, role::shared-lib, sound::speech
+libflorist-3.15p-1: devel::lang:ada, devel::library, implemented-in::ada, role::shared-lib
+libflorist-3.15p-1-dev: devel::lang:ada, devel::library, implemented-in::ada, role::devel-lib
+libflorist-dev: devel::library, implemented-in::ada
+libflorist2006: implemented-in::ada, role::shared-lib
+libfltk1.1: implemented-in::c++, interface::3d, interface::x11, role::shared-lib, uitoolkit::fltk, works-with-format::jpg, works-with-format::png, works-with::image, works-with::image:raster
+libfltk1.1-dbg: devel::debugger, devel::library, implemented-in::c++, interface::3d, interface::x11, role::app-data, uitoolkit::fltk
+libfltk1.1-dev: devel::lang:c++, devel::library, implemented-in::c++, interface::3d, interface::x11, role::devel-lib, uitoolkit::fltk, works-with-format::jpg, works-with-format::png, works-with::image, works-with::image:raster
+libfltk1.1c102: devel::library, role::shared-lib, uitoolkit::TODO
+libfltk1.1c102-dbg: role::shared-lib, uitoolkit::TODO
+libfluidsynth-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib, sound::midi, uitoolkit::ncurses, use::playing
+libfluidsynth1: devel::library, implemented-in::c, role::shared-lib, sound::midi, uitoolkit::ncurses, use::playing
+libfnlib-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib, works-with::font
+libfnlib0: devel::library, implemented-in::c, role::shared-lib, works-with::font
+libfont-afm-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::font
+libfont-ttf-perl: devel::lang:perl, devel::library, implemented-in::perl, role::devel-lib, role::shared-lib, works-with::font
+libfontconfig1: devel::library, implemented-in::c, role::shared-lib, use::configuring, works-with::font
+libfontconfig1-dbg: devel::debugger, devel::library, implemented-in::c, role::shared-lib, use::configuring, works-with::font
+libfontconfig1-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib, use::configuring, works-with::font
+libfontenc-dev: devel::library, role::devel-lib, works-with::font, x11::library
+libfontenc1: role::shared-lib, works-with::font, x11::library
+libfonts-java: devel::lang:java
+libform-validator-ruby: devel::lang:ruby
+libform-validator-ruby1.8: devel::lang:ruby
+libforms-bin: devel::library, devel::ui-builder, implemented-in::c, interface::commandline, interface::x11, role::program, scope::utility, use::editing, works-with-format::postscript, works-with::text, x11::application
+libforms-dev: devel::lang:c, devel::library, implemented-in::c, interface::x11, role::devel-lib
+libforms-doc: devel::doc, devel::library, role::documentation
+libforms1: devel::library, implemented-in::c, interface::x11, role::shared-lib
+libformsgl-dev: devel::lang:c, devel::library, implemented-in::c, interface::3d, role::devel-lib
+libformsgl1: devel::library, implemented-in::c, interface::3d, role::shared-lib
+libformvalidator-simple-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libfortune-perl: devel::lang:perl, devel::library, game::toys, implemented-in::perl, interface::commandline, role::shared-lib, use::gameplaying, works-with::text
+libfoundation-tools: implemented-in::objc
+libfoundation1.0: implemented-in::objc, role::shared-lib
+libfoundation1.0-dev: devel::library, implemented-in::objc
+libfox-1.6-0: role::shared-lib
+libfox-1.6-dev: devel::library
+libfox-doc: devel::doc, devel::library, interface::x11, role::documentation
+libfox1.0: devel::library, interface::x11, role::shared-lib
+libfox1.0-dbg: devel::library, interface::x11, role::shared-lib
+libfox1.0-dev: devel::library, interface::x11
+libfox1.2: interface::x11, role::shared-lib
+libfox1.2-dev: devel::lang:c++, devel::library, implemented-in::c++, interface::x11, role::devel-lib
+libfox1.2-doc: devel::doc, devel::lang:c++, devel::library, interface::x11, role::documentation
+libfox1.4: role::shared-lib
+libfox1.4-dev: devel::library, role::devel-lib
+libfox1.4-doc: role::documentation
+libfreebob0: role::shared-lib
+libfreebob0-dev: devel::library
+libfreecell-solver-dev: devel::lang:c, devel::library, game::card, implemented-in::c, role::devel-lib
+libfreecell-solver0: devel::library, game::card, implemented-in::c, role::shared-lib
+libfreefem-dev: devel::lang:c++, devel::library, field::mathematics, implemented-in::c++, role::devel-lib
+libfreefem-doc: devel::doc, devel::lang:c++, devel::library, field::mathematics, role::documentation
+libfreefem0: devel::library, field::mathematics, implemented-in::c++, role::shared-lib
+libfreetype6: devel::library, implemented-in::c, role::shared-lib, works-with::font
+libfreetype6-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib, works-with::font
+libfreeze31: role::shared-lib
+libfreezethaw-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::storing
+libfribidi-dev: culture::arabic, culture::hebrew, devel::lang:c, devel::library, implemented-in::c, role::devel-lib
+libfribidi0: culture::arabic, culture::hebrew, devel::library, implemented-in::c, role::shared-lib
+libfrontier-rpc-perl: devel::lang:perl, devel::library, devel::rpc, implemented-in::perl, role::shared-lib, works-with-format::xml
+libfs-dev: devel::library
+libfs6: role::shared-lib
+libfs6-dbg: devel::library
+libfslio0: role::shared-lib
+libfslio0-dev: devel::library
+libft-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::font
+libftdi-dev: devel::lang:c, devel::library, field::electronics, hardware::usb, implemented-in::c, role::devel-lib
+libftdi0: field::electronics, hardware::usb, implemented-in::c, role::shared-lib
+libftw0: devel::library, role::shared-lib
+libftw0-dev: devel::library, role::devel-lib
+libfuse-dev: admin::filesystem, admin::kernel, devel::lang:c, devel::lang:c++, devel::library, implemented-in::c, role::devel-lib
+libfuse-perl: devel::lang:perl
+libfuse2: admin::filesystem, admin::kernel, devel::library, implemented-in::c, role::shared-lib
+libfusefs-ruby: devel::lang:ruby
+libfusefs-ruby1.8: devel::lang:ruby
+libfusionsound-0.9-25: role::shared-lib
+libfusionsound-dev: devel::library
+libfwbuilder-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib, security::firewall, use::configuring
+libfwbuilder6: role::app-data, role::shared-lib
+libfwbuilder6c2a: role::shared-lib, security::firewall
+libg++2.8.1.3-dbg: devel::debugger, devel::lang:c++, devel::library, implemented-in::c++, role::shared-lib, special::obsolete, suite::gnu
+libg++2.8.1.3-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, special::obsolete, suite::gnu
+libg++2.8.1.3-glibc2.2: devel::lang:c++, devel::library, implemented-in::c++, role::shared-lib, special::obsolete, suite::gnu
+libg++27: devel::library, implemented-in::c++, role::shared-lib
+libg++27-altdev: devel::library, implemented-in::c++
+libg2-dev: devel::lang:c, devel::lang:fortran, devel::lang:perl, devel::library, implemented-in::c, role::devel-lib, works-with::image, works-with::image:raster
+libg20: devel::lang:c, devel::lang:fortran, devel::lang:perl, devel::library, implemented-in::c, role::shared-lib, works-with::image, works-with::image:raster
+libg20-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::image, works-with::image:raster
+libg2banking2: role::shared-lib, uitoolkit::gtk
+libg2c0: devel::lang:fortran, devel::library, implemented-in::fortran, role::shared-lib, suite::gnu
+libg2c0-dev: devel::lang:fortran, devel::library, implemented-in::fortran, role::devel-lib, suite::gnu
+libgadu-dev: culture::polish, devel::lang:c, devel::library, implemented-in::c, network::client, role::devel-lib, role::program, uitoolkit::gtk, use::chatting
+libgadu3: culture::polish, devel::lang:c, devel::library, implemented-in::c, network::client, role::program, role::shared-lib, uitoolkit::gtk, use::chatting
+libgai-dev: devel::library, devel::ui-builder, role::devel-lib, uitoolkit::gtk, x11::applet
+libgai0: devel::library, devel::ui-builder, role::shared-lib, uitoolkit::gtk, x11::applet
+libgail-common: accessibility::screen-reader, devel::library, role::shared-lib, special::auto-inst-parts, suite::gnome, uitoolkit::gtk
+libgail-dbg: accessibility::screen-reader, devel::debugger, devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgail-dev: accessibility::screen-reader, devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgail-doc: accessibility::screen-reader, devel::doc, devel::library, made-of::data:html, role::documentation, suite::gnome, uitoolkit::gtk
+libgail-gnome-dbg: accessibility::screen-reader, devel::debugger, devel::library, devel::rpc, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgail-gnome-dev: accessibility::screen-reader, devel::library, devel::rpc, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgail-gnome-module: accessibility::screen-reader, devel::library, devel::rpc, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgail17: accessibility::screen-reader, devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgal-data: devel::library, suite::gnome, uitoolkit::gtk, x11::application
+libgal-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk, x11::application
+libgal2.0-6: role::shared-lib, uitoolkit::gtk
+libgal2.0-common: devel::library, special::auto-inst-parts
+libgal2.0-dev: devel::library, role::devel-lib, suite::gnome
+libgal2.4-0: special::not-yet-tagged, special::not-yet-tagged::l
+libgal2.4-common: special::not-yet-tagged, special::not-yet-tagged::l
+libgal2.4-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libgal23: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk, x11::application
+libgalago-dev: devel::library
+libgalago-gtk-dev: devel::library, uitoolkit::gtk
+libgalago-gtk1: role::shared-lib, uitoolkit::gtk
+libgalago-gtk1.0-cil: uitoolkit::gtk
+libgalago2: role::shared-lib
+libgambc4: role::shared-lib
+libgamin-dev: admin::filesystem, devel::library, implemented-in::c, role::devel-lib
+libgamin0: admin::filesystem, implemented-in::c, role::shared-lib, special::auto-inst-parts
+libgammu-dev: admin::hardware, devel::examples, devel::lang:c, devel::library, hardware::embedded, hardware::modem, implemented-in::c, role::devel-lib, use::synchronizing, use::transmission, works-with::pim
+libgammu0: admin::hardware, devel::lang:c, devel::library, hardware::embedded, hardware::modem, implemented-in::c, role::devel-lib, role::shared-lib, use::synchronizing, use::transmission, works-with::pim
+libgammu1: admin::hardware, devel::lang:c, devel::library, hardware::embedded, hardware::modem, implemented-in::c, role::devel-lib, role::shared-lib, use::synchronizing, use::transmission, works-with::pim
+libganglia1: admin::cluster, admin::monitoring, devel::library, network::service, role::shared-lib, use::monitor, works-with-format::xml
+libganglia1-dev: admin::cluster, admin::monitoring, devel::library, network::service, role::devel-lib, use::monitor, works-with-format::xml
+libgarlic-dev: devel::library
+libgarlic2006: role::shared-lib
+libgatos-dev: devel::library, hardware::video, role::devel-lib, use::storing, works-with::video
+libgatos0: devel::library, hardware::video, role::shared-lib, use::storing, works-with::video
+libgavl-dev: devel::library
+libgavl0: role::shared-lib
+libgb-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgb0: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgbf-1-0: role::shared-lib, suite::gnome, uitoolkit::gtk
+libgbf-1-common: suite::gnome
+libgbf-1-dev: devel::library, suite::gnome
+libgc-dev: devel::lang:c, devel::lang:c++, devel::library, implemented-in::c, role::devel-lib
+libgc1: role::shared-lib
+libgc1c2: role::shared-lib
+libgcc1: devel::lang:c, devel::lang:c++, devel::library, role::shared-lib
+libgcgi-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib, web::cgi
+libgcgi0: devel::lang:c, devel::library, implemented-in::c, role::shared-lib, web::cgi
+libgcj-bc: devel::lang:java, role::TODO
+libgcj-common: devel::lang:java, devel::library, role::shared-lib, special::auto-inst-parts
+libgcj-dev: devel::lang:java, devel::library, role::metapackage
+libgcj4: devel::lang:java, devel::library, role::shared-lib
+libgcj4-dev: devel::library, role::devel-lib
+libgcj5-dev: devel::library, role::devel-lib
+libgcj7-0: role::shared-lib
+libgcj7-awt: implemented-in::java, role::shared-lib, uitoolkit::gtk
+libgcj7-dbg: devel::library
+libgcj7-dev: devel::library, role::devel-lib
+libgcj7-jar: devel::lang:java, devel::runtime, role::shared-lib
+libgcj7-src: devel::library
+libgcompris-1-0: devel::library, game::puzzle, role::shared-lib, suite::gnome, uitoolkit::gtk, uitoolkit::sdl, use::gameplaying, use::learning
+libgcompris-1-dev: devel::library, game::puzzle, role::devel-lib, suite::gnome, uitoolkit::gtk, uitoolkit::sdl, use::gameplaying, use::learning
+libgconf-bridge-dev: devel::library, uitoolkit::gtk
+libgconf-bridge0: role::shared-lib, uitoolkit::gtk
+libgconf-cil: devel::ecma-cli, devel::lang:c-sharp, implemented-in::c-sharp, role::shared-lib, suite::gnome, use::configuring
+libgconf-dev: admin::configuring, devel::library, devel::rpc, role::devel-lib, uitoolkit::gtk
+libgconf-java: admin::configuring, devel::lang:java, devel::library, suite::gnome, uitoolkit::gtk, use::configuring
+libgconf11: admin::configuring, devel::library, devel::rpc, role::shared-lib, uitoolkit::gtk, use::configuring
+libgconf2-4: admin::configuring, devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk, use::configuring
+libgconf2-dev: admin::configuring, devel::library, role::devel-lib, suite::gnome, use::configuring
+libgconf2-ruby: admin::configuring, devel::lang:ruby, devel::library, role::shared-lib, suite::gnome, use::configuring
+libgconf2.0-cil: devel::ecma-cli, implemented-in::c-sharp, suite::gnome, uitoolkit::gtk
+libgconfmm-2.6-1c2: role::shared-lib, uitoolkit::gtk
+libgconfmm-2.6-dev: admin::configuring, devel::lang:c++, devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk, use::configuring
+libgconfmm2.0-1c102: devel::library, role::shared-lib, uitoolkit::gtk
+libgconfmm2.0-dev: devel::library, role::devel-lib, uitoolkit::gtk
+libgcr410: devel::library, hardware::storage, role::shared-lib, use::driver
+libgcrypt-dev: devel::library
+libgcrypt-doc: devel::doc, devel::library, role::documentation
+libgcrypt1: devel::library
+libgcrypt11: devel::library, role::shared-lib, security::cryptography
+libgcrypt11-dbg: devel::debugger, devel::library, role::shared-lib, security::cryptography
+libgcrypt11-dev: devel::library, role::devel-lib, security::cryptography
+libgcrypt11-doc: devel::doc, devel::library, role::documentation, security::cryptography
+libgcrypt7: special::not-yet-tagged, special::not-yet-tagged::l
+libgcrypt7-dev: devel::library
+libgcrypt7-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libgcu-dev: devel::library, uitoolkit::gtk
+libgcu0: role::shared-lib, uitoolkit::gtk
+libgd-barcode-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libgd-dev: devel::library, role::dummy, special::obsolete, use::editing, works-with::image, works-with::image:raster
+libgd-gd1-noxpm-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, special::obsolete, use::editing, works-with-format::jpg, works-with-format::png, works-with::image, works-with::image:raster
+libgd-gd1-perl: devel::lang:perl, devel::library, implemented-in::perl
+libgd-gd2-noxpm-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::editing, works-with-format::jpg, works-with-format::png, works-with-format::svg, works-with::image, works-with::image:raster
+libgd-gd2-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::editing, works-with-format::png, works-with::image, works-with::image:raster
+libgd-gif-tools: devel::library, interface::commandline, role::program, scope::utility, use::editing, works-with::image:raster
+libgd-gif1: devel::library, role::shared-lib, use::editing, works-with::image:raster
+libgd-gif1-dev: devel::library, role::devel-lib, use::editing, works-with::image:raster
+libgd-graph-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::editing, works-with::image, works-with::image:raster
+libgd-graph3d-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::editing, works-with::3dmodel, works-with::image, works-with::image:raster
+libgd-noxpm-dev: devel::library, role::devel-lib, special::obsolete, use::editing, works-with-format::png, works-with::image, works-with::image:raster
+libgd-perl: devel::lang:perl, devel::library, implemented-in::perl, use::editing, works-with::image, works-with::image:raster
+libgd-ruby1.6: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, use::editing, works-with::image:raster
+libgd-ruby1.8: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, use::editing, works-with::image, works-with::image:raster
+libgd-securityimage-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libgd-text-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::editing, works-with::image, works-with::image:raster, works-with::text
+libgd-tools: devel::library, interface::commandline, role::program, scope::utility, use::editing, works-with-format::png, works-with::image, works-with::image:raster
+libgd-xpm-dev: devel::library, role::devel-lib, special::obsolete, use::editing, works-with-format::png, works-with::image, works-with::image:raster
+libgd1: devel::library, role::dummy, role::shared-lib, special::obsolete, use::editing, works-with::image, works-with::image:raster
+libgd1-noxpm: devel::library, role::shared-lib, special::obsolete, use::editing, works-with-format::png, works-with::image, works-with::image:raster
+libgd1-xpm: devel::library, role::shared-lib, special::obsolete, use::editing, works-with-format::png, works-with::image, works-with::image:raster
+libgd2: devel::library, role::dummy, use::editing, works-with::image:raster
+libgd2-dev: devel::library, role::dummy, use::editing, works-with::image:raster
+libgd2-noxpm: devel::library, role::shared-lib, use::editing, works-with-format::png, works-with::image, works-with::image:raster
+libgd2-noxpm-dev: devel::library, role::devel-lib, use::editing, works-with-format::png, works-with::image, works-with::image:raster
+libgd2-xpm: devel::library, role::shared-lib, use::editing, works-with-format::png, works-with::image, works-with::image:raster
+libgd2-xpm-dev: devel::library, role::devel-lib, use::editing, works-with-format::png, works-with::image, works-with::image:raster
+libgda-common: devel::library, special::auto-inst-parts, suite::gnome, uitoolkit::gtk
+libgda-dev: devel::library, uitoolkit::gtk
+libgda-doc: devel::doc, devel::library, role::documentation
+libgda0: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgda2-3: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgda2-3-dbg: devel::debugger, devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgda2-bin: role::program, scope::utility, suite::gnome, uitoolkit::ncurses, works-with::db
+libgda2-common: devel::library, role::data, special::auto-inst-parts, suite::gnome, uitoolkit::gtk
+libgda2-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgda2-doc: devel::doc, devel::library, made-of::data:html, role::documentation, suite::gnome, uitoolkit::gtk
+libgda2-ruby: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgdal-doc: devel::doc, devel::library, field::geography, role::documentation, works-with::image, works-with::image:raster
+libgdal1: field::geography, role::shared-lib
+libgdal1-1.3.2: role::shared-lib
+libgdal1-1.3.2-dev: devel::library
+libgdal1-dev: devel::library, field::geography, role::devel-lib, works-with::image:raster
+libgdamm1.3-7: devel::lang:c++, devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgdamm1.3-8: role::shared-lib, suite::gnu
+libgdamm1.3-dev: devel::lang:c++, devel::library, role::devel-lib, suite::gnome, suite::gnu, uitoolkit::gtk
+libgdbm-dev: devel::library, role::devel-lib, suite::gnu, works-with::db
+libgdbm-ruby: devel::lang:ruby, devel::library, implemented-in::ruby, role::metapackage, works-with::db
+libgdbm-ruby1.6: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, works-with::db
+libgdbm-ruby1.8: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, works-with::db
+libgdbm-ruby1.9: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l
+libgdbm3: devel::library, role::shared-lib, suite::gnu, works-with::db
+libgdbmg1: devel::library, role::shared-lib, suite::gnu, works-with::db
+libgdchart-gd1-noxpm: devel::library, role::shared-lib, use::editing, works-with::image, works-with::image:raster
+libgdchart-gd1-noxpm-dev: devel::library, role::devel-lib, use::editing, works-with::image, works-with::image:raster
+libgdchart-gd1-xpm: devel::library, role::shared-lib, use::editing, works-with::image, works-with::image:raster
+libgdchart-gd1-xpm-dev: devel::library, role::devel-lib, use::editing, works-with::image, works-with::image:raster
+libgdchart-gd2-noxpm: devel::library, role::shared-lib, use::editing, works-with::image, works-with::image:raster
+libgdchart-gd2-noxpm-dev: devel::library, role::devel-lib, use::editing, works-with::image, works-with::image:raster
+libgdchart-gd2-xpm: devel::library, role::shared-lib, use::editing, works-with::image, works-with::image:raster
+libgdchart-gd2-xpm-dev: devel::library, role::devel-lib, use::editing, works-with::image, works-with::image:raster
+libgdgeda-dev: devel::library, field::electronics, role::devel-lib, suite::gnu, use::editing
+libgdgeda6: devel::library, field::electronics, role::shared-lib, suite::gnu, use::editing
+libgdiplus: special::not-yet-tagged, special::not-yet-tagged::l
+libgdk-imlib-ruby1.6: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, uitoolkit::gtk, works-with::image:raster
+libgdk-pixbuf-dev: devel::library, role::devel-lib, uitoolkit::gtk, works-with::image, works-with::image:raster
+libgdk-pixbuf-gnome-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk, works-with::image, works-with::image:raster
+libgdk-pixbuf-gnome2: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk, works-with::image, works-with::image:raster
+libgdk-pixbuf-perl: devel::lang:perl, uitoolkit::gtk
+libgdk-pixbuf-ruby1.6: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, uitoolkit::gtk, works-with::image:raster
+libgdk-pixbuf2: devel::library, role::shared-lib, uitoolkit::gtk, works-with::image, works-with::image:raster
+libgdk-pixbuf2-ruby: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, uitoolkit::gtk, works-with::image, works-with::image:raster
+libgdl-1-0: role::shared-lib, suite::gnome, uitoolkit::gtk
+libgdl-1-common: suite::gnome
+libgdl-1-dev: devel::library, suite::gnome
+libgdome2-0: devel::library, role::shared-lib, works-with-format::xml
+libgdome2-cpp-smart-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, works-with-format::xml
+libgdome2-cpp-smart0: devel::library, role::shared-lib
+libgdome2-cpp-smart0c2a: devel::lang:c++, implemented-in::c++, role::shared-lib, works-with-format::xml
+libgdome2-dev: devel::library, role::devel-lib, works-with-format::xml
+libgdome2-ocaml: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::shared-lib, works-with-format::html, works-with-format::xml, works-with::text
+libgdome2-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib, works-with-format::html, works-with-format::xml, works-with::text
+libgdome2-xslt-dev: devel::lang:c, devel::lang:c++, devel::library, implemented-in::c, role::devel-lib, works-with-format::xml
+libgdome2-xslt-ocaml: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::shared-lib, works-with-format::xml
+libgdome2-xslt-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib, works-with-format::xml
+libgdome2-xslt0: devel::library, role::shared-lib
+libgeant1: role::shared-lib, uitoolkit::motif
+libgeant1-dev: devel::library
+libgeant321-2: field::physics, implemented-in::fortran, role::shared-lib
+libgeant321-2-dev: devel::library, field::physics, implemented-in::fortran, role::devel-lib
+libgecko-cil: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libgecko2.0-cil: uitoolkit::gtk
+libgecode-doc: devel::examples, role::documentation, scope::application, use::searching
+libgecode7-dev: devel::library, implemented-in::c++, role::devel-lib, use::searching
+libgecode8: implemented-in::c++, role::shared-lib, use::searching
+libgeda-dev: devel::library, field::electronics, role::devel-lib, suite::gnu, uitoolkit::gtk, use::editing
+libgeda-doc: devel::doc, devel::library, field::electronics, role::documentation, use::editing
+libgeda20: devel::library, field::electronics, role::shared-lib, suite::gnu, uitoolkit::gtk, use::editing
+libgef-java: devel::lang:java, devel::library
+libgempc410: devel::library, hardware::storage, role::shared-lib, security::cryptography, use::driver
+libgempc430: devel::library, hardware::storage, role::shared-lib, security::cryptography, use::driver
+libgems-ruby1.8: devel::lang:ruby
+libgenders-perl: admin::cluster, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libgenders0: role::shared-lib
+libgenders0-dev: devel::library
+libgengameng-dev: devel::lang:c++, devel::library, role::devel-lib, uitoolkit::sdl, use::gameplaying
+libgengameng4: devel::library, role::shared-lib, uitoolkit::sdl
+libgeo-coordinates-utm-perl: devel::lang:perl, devel::library, field::geography, implemented-in::perl, role::shared-lib
+libgeo-helmerttransform-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libgeo-ipfree-perl: devel::lang:perl, devel::library, field::geography, implemented-in::perl, role::shared-lib, use::converting
+libgeo-metar-perl: devel::lang:perl, devel::library, field::geography, implemented-in::perl, role::shared-lib
+libgeo-postcode-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libgeography-nationalgrid-perl: devel::lang:perl, devel::library, field::geography, implemented-in::perl, role::shared-lib
+libgeoip-dev: devel::lang:c, devel::library, field::geography, implemented-in::c, role::devel-lib
+libgeoip1: devel::library, field::geography, implemented-in::c, role::shared-lib
+libgeos-c1: role::shared-lib
+libgeos-dev: devel::library, field::geography, role::devel-lib
+libgeos-doc: devel::doc, devel::library, field::geography, role::documentation
+libgetargs-long-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::commandline, role::shared-lib
+libgetenv-java: devel::lang:java, devel::library, implemented-in::java, role::app-data
+libgetopt++-dev: devel::library
+libgetopt++1: role::shared-lib
+libgetopt-argvfile-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libgetopt-declare-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::commandline, role::shared-lib
+libgetopt-euclid-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libgetopt-java: devel::lang:java, devel::library, implemented-in::java, interface::commandline, role::app-data, suite::gnu
+libgetopt-mixed-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::commandline, role::shared-lib
+libgetopt-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, interface::commandline, role::shared-lib
+libgettext-ruby-util: devel::lang:ruby, devel::library, implemented-in::ruby, interface::commandline, role::program, scope::utility
+libgettext-ruby1.6: devel::lang:ruby
+libgettext-ruby1.8: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib
+libgfccore-2.0-0c2a-dbg: devel::library
+libgfccore-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, role::documentation, uitoolkit::gtk
+libgfccore-doc: devel::doc, devel::lang:c++, devel::library, made-of::data:html, role::documentation, uitoolkit::gtk
+libgfcui-2.0-0c2a: uitoolkit::gtk
+libgfcui-2.0-0c2a-dbg: devel::library
+libgfcui-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, role::documentation, uitoolkit::gtk
+libgfcui-doc: devel::doc, devel::lang:c++, devel::library, made-of::data:html, role::documentation, uitoolkit::gtk
+libgfortran1: role::shared-lib, suite::gnu
+libgfortran1-dev: devel::lang:fortran, devel::library, role::devel-lib, suite::gnu
+libggi-samples: devel::examples, devel::library, interface::x11, role::program, scope::utility, uitoolkit::ncurses, x11::library
+libggi-target-aa: devel::library, interface::text-mode, role::shared-lib, uitoolkit::ncurses, x11::library
+libggi-target-emu: devel::library, interface::x11, role::shared-lib, uitoolkit::ncurses, x11::library
+libggi-target-fbdev: devel::library, interface::framebuffer, role::shared-lib, uitoolkit::ncurses, x11::library
+libggi-target-glide: devel::library, interface::3d, role::shared-lib, x11::library
+libggi-target-monotext: devel::library, interface::text-mode, role::shared-lib, uitoolkit::ncurses, x11::library
+libggi-target-svgalib: devel::library, interface::svga, role::shared-lib, uitoolkit::ncurses, x11::library
+libggi-target-terminfo: devel::library, interface::text-mode, role::shared-lib, uitoolkit::ncurses
+libggi-target-vcsa: devel::library, interface::text-mode, role::shared-lib, uitoolkit::ncurses, x11::library
+libggi-target-x: devel::library, interface::x11, role::shared-lib, uitoolkit::ncurses, x11::library
+libggi2: devel::library, role::shared-lib, uitoolkit::ncurses, x11::library
+libggi2-dev: devel::library, role::devel-lib, x11::library
+libggigcp0: devel::library, interface::x11, role::shared-lib, x11::library
+libggigcp0-dev: devel::library, interface::x11, role::devel-lib, x11::library
+libggigcp1: uitoolkit::ncurses
+libggigcp1-dev: devel::library
+libggimisc2: devel::library, interface::framebuffer, interface::svga, role::shared-lib, uitoolkit::ncurses, x11::library
+libggimisc2-dev: devel::library, interface::framebuffer, interface::svga, role::devel-lib, x11::library
+libggiwmh0: devel::library, interface::x11, role::shared-lib, uitoolkit::ncurses, x11::library
+libggiwmh0-dev: devel::library, interface::x11, role::devel-lib, x11::library
+libggiwmh0-target-x: devel::library, interface::x11, role::shared-lib, uitoolkit::ncurses, x11::library
+libggtl2: implemented-in::c, role::shared-lib, use::gameplaying, use::searching
+libggtl2-dev: devel::examples, devel::lang:c, devel::library, implemented-in::c, role::devel-lib, use::gameplaying, use::searching
+libggz-dev: devel::library, role::devel-lib
+libggz-gtk-dev: devel::library
+libggz-gtk0: role::shared-lib, uitoolkit::gtk
+libggz1: devel::library
+libggz2: role::shared-lib
+libggzcore-dev: devel::library, role::devel-lib
+libggzcore-utils: devel::library, role::program, scope::utility
+libggzcore3: special::not-yet-tagged, special::not-yet-tagged::l
+libggzcore7: role::shared-lib
+libggzdmod-dev: devel::library, role::devel-lib
+libggzdmod2: special::not-yet-tagged, special::not-yet-tagged::l
+libggzdmod4: role::shared-lib
+libggzdmodpp0: role::shared-lib
+libggzmod-dev: devel::library, role::devel-lib
+libggzmod1: devel::library
+libggzmod4: role::shared-lib
+libghc6-cabal-dev: devel::debian, devel::lang:haskell, devel::library, implemented-in::haskell, role::devel-lib, suite::debian
+libghc6-cairo-dev: devel::library
+libghc6-gconf-dev: devel::library
+libghc6-glade-dev: devel::library, uitoolkit::gtk
+libghc6-glib-dev: devel::library
+libghc6-gtk-dev: devel::library, uitoolkit::gtk
+libghc6-haskelldb-dev: devel::lang:haskell, devel::lang:sql, devel::library, implemented-in::haskell, role::devel-lib, works-with::db
+libghc6-hdbc-dev: devel::library
+libghc6-hdbc-missingh-dev: devel::lang:haskell, implemented-in::haskell
+libghc6-hdbc-odbc-dev: devel::lang:sql, devel::library, works-with::db
+libghc6-hdbc-postgresql-dev: devel::lang:sql, devel::library, works-with::db
+libghc6-hdbc-sqlite3-dev: devel::lang:sql, devel::library, works-with::db
+libghc6-hsql-dev: devel::lang:haskell, devel::lang:sql, devel::library, implemented-in::haskell, role::devel-lib, works-with::db
+libghc6-hsql-mysql-dev: devel::library
+libghc6-hsql-odbc-dev: devel::library
+libghc6-hsql-postgresql-dev: devel::library
+libghc6-hsql-sqlite-dev: devel::library
+libghc6-hsql-sqlite3-dev: devel::library
+libghc6-http-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libghc6-missingh-dev: devel::lang:haskell, devel::library, implemented-in::haskell, role::devel-lib, role::documentation
+libghc6-missingpy-dev: devel::lang:haskell, devel::lang:python, devel::library, implemented-in::haskell, role::devel-lib
+libghc6-mogul-dev: devel::library, uitoolkit::gtk
+libghc6-mozembed-dev: devel::library, uitoolkit::gtk
+libghc6-sourceview-dev: devel::library, uitoolkit::gtk
+libghc6-wash-dev: devel::library
+libghemical-data: uitoolkit::gtk
+libghemical-dev: devel::library, uitoolkit::gtk
+libghttp-dev: devel::library, protocol::http, role::devel-lib, suite::gnome, uitoolkit::gtk
+libghttp1: devel::library, protocol::http, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgif-dev: devel::library
+libgif4: role::shared-lib, works-with-format::TODO
+libgift-dev: devel::library, implemented-in::c, role::devel-lib, use::downloading
+libgift0: devel::library, implemented-in::c, role::shared-lib, special::auto-inst-parts, use::downloading
+libgiftproto-dev: devel::library, implemented-in::c, role::devel-lib, use::downloading
+libgiftproto0: devel::library, implemented-in::c, role::shared-lib, special::auto-inst-parts, use::downloading
+libgig: special::not-yet-tagged, special::not-yet-tagged::l
+libgig-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libgig3c2: role::shared-lib
+libgii0: devel::library, hardware::input, role::shared-lib
+libgii0-dev: devel::library, hardware::input, role::devel-lib
+libgii0-target-x: devel::library, hardware::input, x11::library
+libgii1: role::shared-lib
+libgii1-dev: devel::library
+libgii1-target-x: hardware::input, role::plugin
+libgiigic1: role::shared-lib
+libgiigic1-dev: devel::library
+libgimp-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, suite::gimp, uitoolkit::gtk, works-with::image
+libgimp2.0: devel::library, role::shared-lib, suite::gimp, suite::gnu, uitoolkit::gtk
+libgimp2.0-dev: devel::library, role::devel-lib, suite::gimp, suite::gnu, uitoolkit::gtk
+libgimp2.0-doc: devel::doc, devel::library, made-of::data:html, role::documentation, suite::gimp, suite::gnu, uitoolkit::gtk
+libgimpprint1: devel::library, hardware::printer, role::shared-lib, suite::gimp, use::printing
+libgimpprint1-dev: devel::library, hardware::printer, use::printing
+libgimpprint1-doc: devel::doc, devel::library, hardware::printer, role::documentation, use::printing
+libginac-dev: devel::library, field::mathematics, role::devel-lib
+libginac1.3c2a-dbg: devel::library
+libgksu1.2-0: devel::library, role::shared-lib, security::authentication, uitoolkit::gtk, use::login
+libgksu1.2-dev: devel::library, role::devel-lib, security::authentication, uitoolkit::gtk, use::login
+libgksu2-0: role::shared-lib, uitoolkit::gtk
+libgksu2-dev: devel::library
+libgksuui1.0-0: role::shared-lib
+libgksuui1.0-1: interface::x11, role::shared-lib, uitoolkit::gtk
+libgksuui1.0-dev: devel::library, role::devel-lib, security::authentication, uitoolkit::gtk, use::login
+libgl1-mesa-dbg: special::not-yet-tagged, special::not-yet-tagged::l
+libgl1-mesa-dev: devel::library, role::devel-lib, x11::library
+libgl1-mesa-dri: hardware::video, role::shared-lib
+libgl1-mesa-glide3: role::shared-lib
+libgl1-mesa-glide3-dev: role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libgl1-mesa-glx: role::shared-lib
+libgl1-mesa-swx11: role::shared-lib
+libgl1-mesa-swx11-dev: devel::library
+libglacier2-31: role::shared-lib
+libglade-bonobo0: devel::library, devel::rpc, protocol::corba, role::shared-lib, suite::gnome, uitoolkit::gtk
+libglade-bonobo0-dev: devel::library, devel::rpc, protocol::corba, role::devel-lib, suite::gnome, uitoolkit::gtk
+libglade-cil: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libglade-gnome0: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk, use::editing
+libglade-gnome0-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk, use::editing
+libglade-java: devel::lang:java, devel::library, implemented-in::java, suite::gnome, uitoolkit::gtk
+libglade-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, uitoolkit::gtk, use::editing
+libglade-ruby1.6: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, suite::gnome, uitoolkit::gtk
+libglade0: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk, use::editing
+libglade0-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk, use::editing
+libglade2-0: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk, use::editing
+libglade2-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk, use::editing
+libglade2-ruby: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, suite::gnome, uitoolkit::gtk
+libglade2.0-cil: devel::ecma-cli, devel::library, role::shared-lib, uitoolkit::gtk
+libglademm-2.4-1c2a: uitoolkit::gtk
+libglademm-2.4-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, suite::gnome, uitoolkit::gtk
+libglademm2.0-1c102: devel::library, role::shared-lib, uitoolkit::gtk
+libglademm2.0-dev: devel::library, role::devel-lib, uitoolkit::gtk
+libgladexml-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, suite::gnome, uitoolkit::gtk, use::editing
+libgle-dev: devel::library, interface::3d, role::dummy, special::obsolete, x11::library
+libgle-doc: devel::doc, devel::library, interface::3d, role::documentation, role::dummy, special::obsolete, x11::library
+libgle3: devel::library, interface::3d, role::shared-lib, x11::library
+libgle3-dev: devel::library, interface::3d, role::devel-lib, role::documentation, x11::library
+libglew-dev: devel::library, interface::3d, role::devel-lib, x11::library
+libglew1: devel::library, interface::3d, role::shared-lib, x11::library
+libglib-cil: devel::ecma-cli, devel::lang:c-sharp, implemented-in::c-sharp, role::shared-lib, suite::gnome
+libglib-java: devel::lang:java
+libglib-perl: devel::lang:perl, devel::library, devel::special:todo, implemented-in::perl, role::shared-lib
+libglib1.2: devel::lang:c, devel::library, implemented-in::c, role::shared-lib, uitoolkit::gtk
+libglib1.2-dbg: devel::debugger, devel::lang:c, devel::library, implemented-in::c, role::shared-lib, uitoolkit::gtk
+libglib1.2-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib, uitoolkit::gtk
+libglib1.2-doc: devel::doc, devel::lang:c, devel::library, made-of::data:html, made-of::data:info, made-of::data:tex, role::documentation, uitoolkit::gtk
+libglib2-ruby: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, uitoolkit::gtk
+libglib2.0-0: devel::lang:c, devel::library, implemented-in::c, role::shared-lib, uitoolkit::gtk
+libglib2.0-0-dbg: devel::debugger, devel::lang:c, devel::library, implemented-in::c, role::shared-lib, uitoolkit::gtk
+libglib2.0-cil: devel::ecma-cli, devel::library, role::devel-lib
+libglib2.0-data: devel::lang:c, devel::library, implemented-in::c, role::app-data, uitoolkit::gtk
+libglib2.0-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib, uitoolkit::gtk
+libglib2.0-doc: devel::doc, devel::lang:c, devel::library, made-of::data:html, role::documentation, uitoolkit::gtk
+libglibmm-2.4-1: role::shared-lib
+libglibmm-2.4-1c2a: devel::lang:c++, devel::library, implemented-in::c++, role::shared-lib
+libglibmm-2.4-1c2a-dbg: devel::library
+libglibmm-2.4-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, uitoolkit::gtk
+libglide2: devel::library, interface::3d, role::shared-lib, x11::library
+libglide2-dev: devel::library, interface::3d, role::devel-lib, x11::library
+libglide3: devel::library, interface::3d, role::shared-lib, x11::library
+libglide3-dev: devel::library, interface::3d, role::devel-lib, x11::library
+libglitz-glx1: role::shared-lib
+libglitz-glx1-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libglitz1: role::shared-lib
+libglitz1-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libgloox-dev: devel::library
+libgloox4: role::shared-lib
+libglpk0: suite::gnu
+libglpng: devel::library, interface::3d, role::shared-lib, works-with-format::png, works-with::image, works-with::image:raster
+libglpng-dev: devel::library, interface::3d, role::devel-lib, works-with-format::png, works-with::image, works-with::image:raster
+libglu1-mesa: devel::library, interface::3d, role::shared-lib, x11::library
+libglu1-mesa-dev: devel::library, implemented-in::c, interface::3d, role::devel-lib, uitoolkit::xlib, x11::library
+libglu1-xorg: role::dummy, special::obsolete
+libglu1-xorg-dev: devel::library, role::devel-lib
+libglui-dev: devel::library, interface::3d, role::devel-lib
+libglui2c102: special::not-yet-tagged, special::not-yet-tagged::l
+libglut3: devel::library, interface::3d, role::dummy, role::shared-lib, special::obsolete, x11::library
+libglut3-dev: devel::library, interface::3d, role::dummy, special::obsolete, x11::library
+libgmime-2.0-2: role::shared-lib
+libgmime-2.0-2-dev: devel::library
+libgmime0: devel::library
+libgmime0-dev: devel::library, role::devel-lib
+libgmime1: special::not-yet-tagged, special::not-yet-tagged::l
+libgmime1-dev: devel::library, role::devel-lib
+libgmime2: devel::library, role::shared-lib, works-with::file, works-with::mail
+libgmime2-dev: devel::library, role::devel-lib, works-with::file, works-with::mail
+libgmime2.1: devel::library, role::shared-lib, works-with::file, works-with::mail
+libgmime2.1-dev: devel::library, role::devel-lib, works-with::file, works-with::mail
+libgmime2.2-cil: devel::ecma-cli, devel::lang:c-sharp, devel::library, role::devel-lib, works-with::mail
+libgmp-ocaml: devel::lang:ocaml, devel::library, field::mathematics, implemented-in::ocaml, role::shared-lib
+libgmp-ocaml-dev: devel::lang:ocaml, devel::library, field::mathematics, implemented-in::ocaml, role::devel-lib
+libgmp3: devel::library, role::shared-lib, works-with-format::mp3, works-with::audio
+libgmp3-dev: devel::lang:c, devel::library, field::mathematics, implemented-in::c, role::devel-lib
+libgmp3-doc: devel::doc, devel::examples, devel::lang:c, devel::library, field::mathematics, made-of::data:info, role::documentation
+libgmp3c2: role::shared-lib, suite::gnu
+libgmpxx4: role::shared-lib, suite::gnu
+libgnademysql-dev: devel::lang:sql, devel::library, implemented-in::ada
+libgnademysql1: devel::lang:ada, devel::lang:sql, devel::library, implemented-in::ada, role::shared-lib, works-with::db
+libgnademysql1.6: devel::lang:sql, implemented-in::ada, role::shared-lib
+libgnadeodbc-dev: devel::lang:sql, devel::library, implemented-in::ada
+libgnadeodbc1: devel::lang:ada, devel::lang:sql, devel::library, implemented-in::ada, role::shared-lib, works-with::db
+libgnadeodbc1.6: devel::lang:sql, implemented-in::ada, role::shared-lib
+libgnadepostgresql-dev: devel::lang:sql, devel::library, implemented-in::ada
+libgnadepostgresql1: devel::lang:ada, devel::lang:sql, devel::library, implemented-in::ada, role::shared-lib, works-with::db
+libgnadepostgresql1.6: devel::lang:sql, implemented-in::ada, role::shared-lib
+libgnadesqlite-dev: devel::lang:sql, devel::library, implemented-in::ada
+libgnadesqlite1: devel::lang:ada, devel::lang:sql, devel::library, implemented-in::ada, role::shared-lib, works-with::db
+libgnadesqlite1.6: devel::lang:sql, implemented-in::ada, role::shared-lib
+libgnash0: role::shared-lib, uitoolkit::gtk, uitoolkit::ncurses
+libgnat-3.15p-1: devel::lang:ada, devel::library, role::shared-lib
+libgnat-3.4: devel::lang:ada, devel::library, role::shared-lib
+libgnat-4.1: role::shared-lib, suite::gnu
+libgnatprj-dev: devel::library, suite::gnu
+libgnatprj4.1: role::shared-lib, suite::gnu
+libgnatvsn-dev: devel::library, suite::gnu
+libgnatvsn4.1: role::shared-lib, suite::gnu
+libgnet-dev: devel::library, implemented-in::c, network::service, role::devel-lib
+libgnet2.0-0: devel::library, implemented-in::c, network::service, role::shared-lib
+libgnetwork1.0-0: devel::library, network::service, protocol::ssl, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnetwork1.0-dev: devel::library, network::service, protocol::ssl, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgnokii2-dev: devel::library, role::devel-lib
+libgnokii3: role::shared-lib
+libgnome-cil: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libgnome-desktop-2: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnome-desktop-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgnome-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgnome-gnorba-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::corba, suite::gnome, uitoolkit::gtk
+libgnome-java: devel::lang:java, devel::library, implemented-in::java, suite::gnome, uitoolkit::gtk
+libgnome-jni: devel::lang:java, devel::library, implemented-in::java, suite::gnome, uitoolkit::gtk
+libgnome-keyring-dev: devel::library, role::devel-lib, security::cryptography, suite::gnome, uitoolkit::gtk
+libgnome-keyring0: devel::library, role::shared-lib, security::cryptography, suite::gnome, uitoolkit::gtk
+libgnome-mag-dev: accessibility::screen-magnify, devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgnome-mag2: accessibility::screen-magnify, devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnome-menu-dev: devel::library, suite::gnome
+libgnome-menu2: suite::gnome
+libgnome-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnome-pilot2: devel::library, hardware::embedded, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnome-pilot2-dev: devel::library, hardware::embedded, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgnome-print-perl: devel::lang:perl, devel::library, implemented-in::perl, suite::gnome, uitoolkit::gtk, use::printing
+libgnome-ruby1.6: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnome-speech3: accessibility::input, accessibility::speech, devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnome-speech3-dev: accessibility::input, accessibility::speech, devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgnome-vfs-common: admin::filesystem, devel::library, role::app-data, special::auto-inst-parts, suite::gnome, uitoolkit::gtk
+libgnome-vfs-dev: admin::filesystem, devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgnome-vfs0: admin::filesystem, devel::library, role::shared-lib, uitoolkit::gtk
+libgnome-vfsmm-2.6-1c2a: suite::gnome
+libgnome-vfsmm-2.6-dev: admin::filesystem, devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgnome-window-settings-dev: devel::library
+libgnome-window-settings1: role::shared-lib, uitoolkit::gtk
+libgnome2-0: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnome2-canvas-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::x11, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnome2-common: devel::i18n, devel::library, role::app-data, special::auto-inst-parts, suite::gnome, uitoolkit::gtk
+libgnome2-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgnome2-doc: devel::doc, devel::library, made-of::data:html, role::documentation, suite::gnome, uitoolkit::gtk
+libgnome2-gconf-perl: admin::configuring, devel::lang:perl, devel::library, implemented-in::perl, suite::gnome, uitoolkit::gtk, use::configuring
+libgnome2-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnome2-print-perl: devel::lang:perl, hardware::printer, implemented-in::perl, suite::gnome, uitoolkit::gtk, use::printing
+libgnome2-ruby: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnome2-vfs-perl: admin::filesystem, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnome2-wnck-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnome2.0-cil: uitoolkit::gtk
+libgnome32: devel::library, implemented-in::c, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnomeada-2.4: devel::lang:ada, devel::library, implemented-in::ada, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnomeada-2.8: role::shared-lib, uitoolkit::gtk
+libgnomeada2-dev: devel::lang:ada, devel::library, implemented-in::ada, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgnomecanvas2-0: devel::library, interface::x11, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnomecanvas2-common: devel::i18n, devel::library, interface::x11, role::app-data, special::auto-inst-parts, suite::gnome, uitoolkit::gtk
+libgnomecanvas2-dev: devel::library, interface::x11, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgnomecanvas2-doc: devel::doc, devel::library, interface::x11, made-of::data:html, role::documentation, suite::gnome, uitoolkit::gtk
+libgnomecanvas2-ruby: devel::lang:ruby, devel::library, implemented-in::ruby, interface::x11, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnomecanvasmm-2.6-1c2a: suite::gnome, uitoolkit::gtk
+libgnomecanvasmm-2.6-dev: devel::lang:c++, devel::library, implemented-in::c++, interface::x11, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgnomecanvasmm2.0-1c102: devel::library, interface::x11, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnomecanvasmm2.0-dev: devel::library, interface::x11, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgnomecups1.0-1: admin::configuring, devel::library, protocol::ssl, role::shared-lib, suite::gnome, uitoolkit::gtk, use::printing
+libgnomecups1.0-dev: admin::configuring, devel::library, protocol::ssl, role::devel-lib, suite::gnome, uitoolkit::gtk, use::printing
+libgnomecupsui1.0-1: admin::configuring, devel::library, protocol::ssl, role::shared-lib, suite::gnome, uitoolkit::gtk, use::printing
+libgnomecupsui1.0-1c2a: suite::gnome, uitoolkit::gtk
+libgnomecupsui1.0-dev: admin::configuring, devel::library, protocol::ssl, role::devel-lib, suite::gnome, uitoolkit::gtk, use::printing
+libgnomedb-dev: devel::library, suite::gnome, uitoolkit::gtk
+libgnomedb0: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnomedb0-common: devel::library, special::auto-inst-parts, suite::gnome, uitoolkit::gtk
+libgnomedb2-4: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk, works-with::db
+libgnomedb2-4-dbg: devel::debugger, devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk, works-with::db
+libgnomedb2-bin: uitoolkit::gtk
+libgnomedb2-common: devel::library, special::auto-inst-parts, suite::gnome, uitoolkit::gtk, works-with::db
+libgnomedb2-dev: devel::library, role::devel-lib, role::documentation, suite::gnome, uitoolkit::gtk, works-with::db
+libgnomedb2-doc: devel::doc, devel::library, made-of::data:html, role::documentation, suite::gnome, uitoolkit::gtk, works-with::db
+libgnomemm-2.6-1c2: role::shared-lib, uitoolkit::gtk
+libgnomemm-2.6-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgnomemm-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgnomemm1.2-9: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnomemm1.2-9c2: role::shared-lib, uitoolkit::gtk
+libgnomemm2.0-1: role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnomemm2.0-dev: devel::library, role::devel-lib, suite::gnome
+libgnomeprint-bin: devel::library, hardware::printer, interface::commandline, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::printing, works-with::font
+libgnomeprint-data: devel::i18n, devel::library, hardware::printer, made-of::data:font, role::app-data, suite::gnome, uitoolkit::gtk, use::printing
+libgnomeprint-dev: devel::library, hardware::printer, role::devel-lib, suite::gnome, uitoolkit::gtk, use::printing
+libgnomeprint15: devel::library, hardware::printer, role::shared-lib, suite::gnome, uitoolkit::gtk, use::printing
+libgnomeprint2-ruby: devel::lang:ruby, devel::library, hardware::printer, implemented-in::ruby, role::shared-lib, suite::gnome, uitoolkit::gtk, use::printing
+libgnomeprint2.2-0: devel::library, hardware::printer, role::shared-lib, suite::gnome, uitoolkit::gtk, use::printing
+libgnomeprint2.2-data: devel::interpreter, devel::library, hardware::printer, role::app-data, suite::gnome, uitoolkit::gtk, use::printing
+libgnomeprint2.2-dev: devel::library, hardware::printer, role::devel-lib, suite::gnome, uitoolkit::gtk, use::printing
+libgnomeprint2.2-doc: devel::doc, devel::library, hardware::printer, made-of::data:html, role::documentation, suite::gnome, uitoolkit::gtk, use::printing
+libgnomeprintui2-ruby: devel::lang:ruby, devel::library, hardware::printer, implemented-in::ruby, role::shared-lib, uitoolkit::gtk, use::printing
+libgnomeprintui2.2-0: devel::library, hardware::printer, interface::x11, role::shared-lib, suite::gnome, uitoolkit::gtk, use::printing
+libgnomeprintui2.2-common: devel::i18n, devel::library, hardware::printer, interface::x11, role::app-data, special::auto-inst-parts, suite::gnome, uitoolkit::gtk, use::printing
+libgnomeprintui2.2-dev: devel::library, hardware::printer, interface::x11, role::devel-lib, suite::gnome, uitoolkit::gtk, use::printing
+libgnomeprintui2.2-doc: devel::doc, devel::library, hardware::printer, interface::x11, made-of::data:html, role::documentation, suite::gnome, uitoolkit::gtk, use::printing
+libgnomesu-common: admin::user-management, devel::library, role::app-data, suite::gnome, uitoolkit::gtk
+libgnomesu-dev: admin::user-management, devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgnomesu0: admin::user-management, devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnomesupport0: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnomeui-0: devel::library, interface::x11, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnomeui-0-dbg: devel::library, suite::gnome
+libgnomeui-common: devel::i18n, devel::library, interface::x11, role::app-data, special::auto-inst-parts, suite::gnome, uitoolkit::gtk
+libgnomeui-dbg: devel::library, interface::x11, role::shared-lib, suite::gnome
+libgnomeui-dev: devel::library, interface::x11, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgnomeui-doc: devel::doc, devel::library, interface::x11, role::documentation, suite::gnome, uitoolkit::gtk
+libgnomeui32: devel::library, interface::x11, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnomeuimm-2.6-1c2a: suite::gnome, uitoolkit::gtk
+libgnomeuimm-2.6-dev: devel::lang:c++, devel::library, implemented-in::c++, interface::x11, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgnomeuimm2.0-1: interface::x11, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnomeuimm2.0-dev: devel::library, interface::x11, role::devel-lib, suite::gnome
+libgnomevfs2-0: admin::filesystem, devel::library, protocol::ssl, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnomevfs2-0-dbg: devel::library, suite::gnome
+libgnomevfs2-bin: admin::filesystem, role::program, suite::gnome, works-with::file
+libgnomevfs2-common: admin::filesystem, devel::library, special::auto-inst-parts, suite::gnome, uitoolkit::gtk
+libgnomevfs2-dev: admin::filesystem, devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgnomevfs2-extra: suite::gnome
+libgnomevfs2-ruby: admin::filesystem, devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnomevfsmm1.3-6: role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnomevfsmm1.3-dev: devel::library, role::devel-lib, suite::gnome
+libgnorba-dev: devel::library, devel::rpc, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgnorba27: devel::library, devel::rpc, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnorbagtk0: devel::library, devel::rpc, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgnu-regexp-java: devel::lang:java, devel::library, implemented-in::java, role::app-data, suite::gnu, use::searching
+libgnucrypto-java: devel::lang:java, devel::library, implemented-in::java, role::app-data, security::cryptography, suite::gnu
+libgnuift0-dev: devel::library, implemented-in::c++, role::devel-lib, suite::gnu, use::searching, works-with-format::xml, works-with::image, works-with::image:raster
+libgnuift0c2a: suite::gnu
+libgnuinet-java: devel::lang:java, devel::library, implemented-in::java, protocol::http, protocol::imap, protocol::pop3, protocol::smtp, suite::gnu
+libgnujaf-java: devel::lang:java, devel::library, implemented-in::java, suite::gnu
+libgnujaxp-java: devel::lang:java, devel::library, implemented-in::java, works-with-format::xml
+libgnujaxp-java-doc: devel::doc, devel::lang:java, devel::library, role::documentation, works-with-format::xml
+libgnujaxp-jni: devel::lang:java, devel::library, implemented-in::java, works-with-format::xml
+libgnujmi-java: devel::lang:java, devel::library, implemented-in::java, role::app-data, suite::gnu
+libgnumail-java: devel::lang:java, devel::library, implemented-in::java, mail::imap, mail::pop, mail::smtp, protocol::imap, protocol::pop3, protocol::smtp, role::app-data, suite::gnu, works-with::mail
+libgnupg-interface-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, security::cryptography, suite::gnu
+libgnupg-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, security::cryptography, suite::gnu
+libgnuplot-ruby: devel::lang:ruby
+libgnuplot-ruby1.8: devel::lang:ruby, role::shared-lib
+libgnuradio-core0-dev: devel::lang:c++, devel::library, hardware::hamradio, implemented-in::c++, role::devel-lib, suite::gnu
+libgnuradio-core0c2a: suite::gnu
+libgnuradio-core0c2a-dbg: devel::library, suite::gnu
+libgnuradio0: special::not-yet-tagged, special::not-yet-tagged::l
+libgnuradio0-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libgnustep-base-dev: devel::library, implemented-in::objc, suite::gnustep
+libgnustep-base1.10: devel::library, implemented-in::objc, role::shared-lib, suite::gnustep
+libgnustep-base1.10-dbg: devel::library, implemented-in::objc, role::shared-lib, suite::gnustep
+libgnustep-base1.10-dev: devel::lang:objc, devel::library, role::devel-lib, suite::gnustep
+libgnustep-base1.13: implemented-in::objc, role::shared-lib, suite::gnustep
+libgnustep-base1.13-dbg: devel::library, implemented-in::objc, suite::gnustep
+libgnustep-gui-dev: devel::library, implemented-in::objc, suite::gnustep
+libgnustep-gui0.11: implemented-in::objc, role::shared-lib, suite::gnustep
+libgnustep-gui0.11-dbg: devel::library, implemented-in::objc, suite::gnustep
+libgnustep-gui0.9: devel::library, implemented-in::objc, interface::x11, role::shared-lib, suite::gnustep
+libgnustep-gui0.9-dbg: devel::library, implemented-in::objc, interface::x11, role::shared-lib, suite::gnustep
+libgnustep-gui0.9-dev: devel::lang:objc, devel::library, implemented-in::objc, interface::x11, role::devel-lib, suite::gnustep
+libgnutella-gift: devel::library, implemented-in::c, network::service, role::shared-lib, suite::gnu, use::downloading
+libgnutls-dev: devel::library, role::devel-lib, suite::gnu
+libgnutls10: special::not-yet-tagged, special::not-yet-tagged::l
+libgnutls10-dev: devel::library
+libgnutls11: devel::library, protocol::ssl, role::shared-lib
+libgnutls11-dbg: devel::library, protocol::ssl, role::shared-lib
+libgnutls11-dev: devel::library, protocol::ssl, role::devel-lib
+libgnutls13: protocol::ssl, role::shared-lib, security::cryptography, suite::gnu
+libgnutls13-dbg: suite::gnu
+libgnutls7: special::not-yet-tagged, special::not-yet-tagged::l
+libgnutls7-dev: devel::library
+libgocr-dev: accessibility::ocr, devel::library, role::devel-lib, use::converting, works-with::image, works-with::image:raster
+libgocr-doc: accessibility::ocr, devel::doc, devel::library, made-of::data:html, made-of::data:postscript, role::documentation, use::converting, works-with::image, works-with::image:raster
+libgocr0: accessibility::ocr, devel::library, role::shared-lib, use::converting, works-with::image, works-with::image:raster
+libgoffice-0-3: devel::library, implemented-in::c, role::shared-lib
+libgoffice-0-3-dbg: devel::library, implemented-in::c, role::devel-lib
+libgoffice-0-dev: devel::buildtools, devel::library, implemented-in::c, suite::gnome
+libgoffice-1-2: role::shared-lib, uitoolkit::gtk
+libgoffice-1-2-dbg: devel::library, implemented-in::c, role::shared-lib
+libgoffice-1-common: role::app-data
+libgoffice-1-dev: devel::buildtools, devel::library, implemented-in::c, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgoogle-perftools-dev: devel::library
+libgoogle-perftools0: role::shared-lib
+libgpattern-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib, uitoolkit::gtk
+libgpcl-dev: devel::library
+libgpcl0: devel::library, role::shared-lib
+libgpelaunch-dev: devel::library, hardware::embedded, implemented-in::c, role::devel-lib, suite::TODO
+libgpelaunch0: devel::library, hardware::embedded, implemented-in::c, role::shared-lib, suite::TODO, uitoolkit::gtk
+libgpepimc0: devel::library, hardware::embedded, implemented-in::c, role::shared-lib, suite::TODO, uitoolkit::gtk, works-with::pim
+libgpepimc0-dev: devel::library, hardware::embedded, implemented-in::c, role::devel-lib, suite::TODO, uitoolkit::gtk, works-with::pim
+libgpeschedule-dev: devel::lang:c, devel::library, hardware::embedded, implemented-in::c, interface::x11, role::devel-lib, suite::TODO, uitoolkit::gtk
+libgpeschedule0: devel::lang:c, devel::library, hardware::embedded, implemented-in::c, interface::x11, role::devel-lib, role::shared-lib, suite::TODO, uitoolkit::gtk
+libgpevtype0: devel::library, hardware::embedded, implemented-in::c, role::shared-lib, suite::TODO, uitoolkit::gtk, use::converting, works-with::pim
+libgpevtype0-dev: devel::library, hardware::embedded, implemented-in::c, role::devel-lib, suite::TODO, uitoolkit::gtk, use::converting, works-with::pim
+libgpewidget-dev: devel::lang:c, devel::library, hardware::embedded, implemented-in::c, role::devel-lib, suite::TODO, uitoolkit::gtk
+libgpewidget1: devel::lang:c, devel::library, hardware::embedded, implemented-in::c, role::devel-lib, role::shared-lib, suite::TODO, uitoolkit::gtk
+libgpg-error-dev: devel::library, role::devel-lib, security::cryptography, suite::gnu
+libgpg-error0: devel::library, role::shared-lib, security::cryptography, suite::gnu
+libgpgme-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib, security::cryptography
+libgpgme-ruby: devel::lang:ruby
+libgpgme-ruby1.8: devel::lang:ruby, role::shared-lib
+libgpgme-ruby1.9: devel::lang:ruby, role::shared-lib
+libgpgme11: devel::lang:c, devel::library, implemented-in::c, role::shared-lib, security::cryptography
+libgpgme11-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib, security::cryptography
+libgpgme6: devel::lang:c, devel::library, implemented-in::c, role::shared-lib, security::cryptography
+libgphoto2-2: devel::library, hardware::camera, role::shared-lib, works-with-format::jpg, works-with::image, works-with::image:raster
+libgphoto2-2-dev: devel::library, hardware::camera, role::devel-lib, works-with-format::jpg, works-with::image, works-with::image:raster
+libgphoto2-port0: devel::library, hardware::camera, hardware::usb, role::shared-lib
+libgpib-bin: admin::hardware, devel::library, interface::commandline, role::program, scope::utility
+libgpib-perl: admin::hardware, devel::lang:perl, devel::library, implemented-in::perl, role::app-data, role::devel-lib
+libgpib0: admin::hardware, devel::lang:c, devel::library, implemented-in::c, role::shared-lib
+libgpib0-dev: admin::hardware, devel::lang:c, devel::library, implemented-in::c, role::devel-lib
+libgpiv2: role::shared-lib
+libgpmg1: devel::library, hardware::input, hardware::input:mouse, role::shared-lib, uitoolkit::ncurses
+libgpmg1-dev: devel::library, hardware::input, hardware::input:mouse, role::devel-lib
+libgpod-common: made-of::TODO, role::app-data
+libgpod-dev: devel::library, implemented-in::c, role::devel-lib, uitoolkit::gtk
+libgpod0: implemented-in::c, role::shared-lib, uitoolkit::gtk, use::synchronizing
+libgql-0.5-1: devel::library, role::shared-lib
+libgql-0.5-dev: devel::lang:c, devel::library, role::devel-lib
+libgql-0.5-script: devel::library, role::shared-lib
+libgql-driver-0.5-mysql: devel::library, role::shared-lib
+libgql-driver-0.5-pg: devel::library, role::shared-lib
+libgql-driver-0.5-sqlite: devel::library, role::shared-lib
+libgraflib1: devel::library, field::physics, implemented-in::fortran, role::shared-lib
+libgraflib1-dev: devel::lang:c, devel::lang:fortran, devel::library, field::physics, role::devel-lib
+libgrafx11-1: devel::library, field::physics, implemented-in::fortran, interface::x11, role::shared-lib, works-with-format::postscript, works-with::text
+libgrafx11-1-dev: devel::lang:c, devel::lang:fortran, devel::library, field::physics, interface::x11, role::devel-lib, works-with-format::postscript, works-with::text
+libgraph-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libgraphics-colordeficiency-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::converting, works-with::image
+libgraphics-colornames-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::image
+libgraphics-colornames-www-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libgraphics-colorobject-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::image
+libgraphics-magick-perl: devel::lang:perl, devel::library, implemented-in::c, implemented-in::perl, role::devel-lib, role::shared-lib, use::converting, use::editing, works-with-format::gif, works-with-format::jpg, works-with-format::png, works-with-format::svg, works-with-format::tiff, works-with::image, works-with::image:raster, works-with::image:vector
+libgraphicsmagick++1: role::shared-lib
+libgraphicsmagick++1-dev: devel::library
+libgraphicsmagick1: role::shared-lib
+libgraphicsmagick1-dev: devel::library
+libgraphite-dev: devel::library
+libgraphite2: role::shared-lib
+libgraphviz-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::image, works-with::image:raster, works-with::image:vector
+libgrass: devel::library, field::geography, role::devel-lib, role::shared-lib, uitoolkit::ncurses
+libgrass-dev: devel::library, field::geography, role::devel-lib
+libgretl1: devel::library, field::finance, field::mathematics, role::shared-lib, suite::gnu, uitoolkit::gtk
+libgretl1-dev: devel::library, field::finance, field::mathematics, role::devel-lib, suite::gnu, uitoolkit::gtk
+libgringotts-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib, security::cryptography, use::storing
+libgringotts1: devel::lang:c, devel::library, implemented-in::c, security::cryptography, use::storing
+libgringotts2: role::shared-lib
+libgsasl7: devel::library, protocol::kerberos, role::shared-lib, security::authentication, suite::gnu
+libgsasl7-dev: devel::library, protocol::kerberos, role::devel-lib, security::authentication, suite::gnu
+libgsf-1: devel::library, role::shared-lib, works-with-format::xml
+libgsf-1-114: devel::library, devel::runtime, implemented-in::c, role::shared-lib, suite::gnome, works-with-format::xml
+libgsf-1-114-dbg: devel::lang:c, devel::library, implemented-in::c, role::devel-lib
+libgsf-1-common: role::app-data, special::auto-inst-parts
+libgsf-1-dbg: devel::debugger, devel::library, role::shared-lib, works-with-format::xml
+libgsf-1-dev: devel::library, implemented-in::c, role::devel-lib, works-with-format::xml
+libgsf-bin: interface::commandline, role::program, scope::utility, suite::gnome, use::converting, use::organizing, works-with::image, works-with::image:raster
+libgsf-gnome-1: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk, works-with-format::xml
+libgsf-gnome-1-114: implemented-in::c, role::shared-lib, suite::gnome
+libgsf-gnome-1-114-dbg: devel::library, implemented-in::c, role::devel-lib, suite::gnome
+libgsf-gnome-1-dbg: devel::debugger, devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk, works-with-format::xml
+libgsf-gnome-1-dev: devel::library, implemented-in::c, role::devel-lib, suite::gnome, uitoolkit::gtk, works-with-format::xml
+libgsl-ruby: devel::lang:ruby, role::dummy
+libgsl-ruby1.8: devel::lang:ruby, role::shared-lib
+libgsl0: devel::lang:c, devel::library, field::mathematics, implemented-in::c, role::shared-lib, suite::gnu
+libgsl0-dbg: devel::library, suite::gnu
+libgsl0-dev: devel::lang:c, devel::library, field::mathematics, implemented-in::c, role::devel-lib, suite::gnu
+libgsm-tools: accessibility::speech, devel::library, interface::commandline, role::devel-lib, role::program, scope::utility, sound::compression, sound::speech
+libgsm1: devel::library, protocol::voip, role::shared-lib, sound::compression, sound::speech
+libgsm1-dev: devel::library, protocol::voip, role::devel-lib, sound::compression, sound::speech
+libgsmme-dev: devel::library, protocol::voip, role::devel-lib
+libgsmme1c102: devel::library, role::shared-lib
+libgss-dbg: role::special:todo, suite::gnu
+libgss-dev: devel::lang:c, devel::library, implemented-in::c, protocol::kerberos, role::devel-lib, security::authentication, security::cryptography, suite::gnu
+libgss0: implemented-in::c, protocol::kerberos, role::shared-lib, security::authentication, suite::gnu
+libgssapi-dev: devel::library
+libgssapi-perl: devel::lang:perl
+libgssapi1-heimdal: devel::library, protocol::kerberos, role::shared-lib
+libgssapi2: implemented-in::c, protocol::kerberos, role::shared-lib, security::authentication, security::cryptography
+libgssapi4-heimdal: devel::library, protocol::kerberos, protocol::ssl, role::shared-lib, security::authentication, security::cryptography
+libgstreamer-gconf0.8-0: devel::library, role::shared-lib, sound::player, suite::gnome, uitoolkit::gtk, use::configuring, works-with::audio
+libgstreamer-gconf0.8-dev: devel::library, role::devel-lib, sound::player, suite::gnome, uitoolkit::gtk, use::configuring, works-with::audio
+libgstreamer-perl: devel::lang:perl
+libgstreamer-plugins-base0.10-0: role::shared-lib
+libgstreamer-plugins-base0.10-dev: devel::library
+libgstreamer-plugins0.8-0: role::shared-lib, sound::player, use::playing, works-with::audio
+libgstreamer-plugins0.8-dev: devel::library, role::devel-lib, sound::player, use::playing, works-with::audio
+libgstreamer0.10-0: role::shared-lib
+libgstreamer0.10-0-dbg: devel::library
+libgstreamer0.10-dev: devel::library
+libgstreamer0.10-ruby1.8: devel::lang:ruby, role::shared-lib
+libgstreamer0.8-0: role::shared-lib, sound::player, use::playing, works-with::audio
+libgstreamer0.8-dev: devel::library, role::devel-lib, sound::player, use::playing, works-with::audio
+libgstreamer0.8-ruby: devel::lang:ruby, devel::library, implemented-in::ruby, sound::player, suite::gnome, uitoolkit::gtk, use::playing, works-with::audio
+libgtk+2.0-directfb-udeb-dev: devel::library, uitoolkit::gtk
+libgtk-canvas1: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgtk-canvas1-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk
+libgtk-cil: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libgtk-directfb-2.0-0: role::shared-lib, uitoolkit::gtk
+libgtk-directfb-2.0-dev: devel::library, uitoolkit::gtk
+libgtk-imlib-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, uitoolkit::gtk
+libgtk-java: devel::lang:java, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libgtk-jni: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libgtk-mozembed-ruby: devel::lang:ruby, uitoolkit::gtk
+libgtk-mozembed-ruby1.8: devel::lang:ruby, uitoolkit::gtk
+libgtk-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, uitoolkit::gtk
+libgtk-pixbuf-perl: devel::lang:perl, devel::library, implemented-in::perl, uitoolkit::gtk
+libgtk-ruby1.6: devel::lang:ruby, uitoolkit::gtk
+libgtk-trayicon-ruby: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libgtk-trayicon-ruby1.8: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libgtk1.2: devel::library, role::shared-lib, uitoolkit::gtk
+libgtk1.2-common: devel::i18n, devel::library, role::app-data, special::auto-inst-parts, uitoolkit::gtk
+libgtk1.2-dbg: devel::debugger, devel::library, role::shared-lib, uitoolkit::gtk
+libgtk1.2-dev: devel::library, role::devel-lib, uitoolkit::gtk
+libgtk1.2-doc: devel::doc, devel::library, made-of::data:html, made-of::data:info, made-of::data:sgml, role::documentation, uitoolkit::gtk
+libgtk2-ex-podviewer-perl: devel::lang:perl, implemented-in::perl, interface::x11, role::shared-lib, scope::utility, uitoolkit::gtk, use::viewing, works-with-format::TODO, works-with::TODO
+libgtk2-ex-simple-list-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, uitoolkit::gtk
+libgtk2-ex-volumebutton-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, sound::mixer, uitoolkit::gtk
+libgtk2-gladexml-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, uitoolkit::gtk, works-with-format::xml
+libgtk2-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::x11, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgtk2-perl-doc: devel::doc, devel::lang:perl, devel::library, made-of::data:man, role::documentation, uitoolkit::gtk
+libgtk2-podviewer-perl: devel::lang:perl, devel::library, implemented-in::perl, role::app-data, uitoolkit::gtk, use::viewing, works-with-format::man, works-with::text
+libgtk2-ruby: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, uitoolkit::gtk
+libgtk2-spell-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, uitoolkit::gtk, use::checking, works-with::text
+libgtk2-trayicon-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgtk2-traymanager-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgtk2.0-0: devel::library, implemented-in::c, role::shared-lib, uitoolkit::gtk
+libgtk2.0-0-dbg: devel::lang:c, devel::library, implemented-in::c, role::shared-lib, uitoolkit::gtk
+libgtk2.0-bin: admin::configuring, devel::library, interface::commandline, role::program, scope::utility, uitoolkit::gtk
+libgtk2.0-cil: devel::ecma-cli, devel::library, role::shared-lib, uitoolkit::gtk
+libgtk2.0-common: devel::i18n, devel::library, role::app-data, special::auto-inst-parts, uitoolkit::gtk
+libgtk2.0-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib, uitoolkit::gtk
+libgtk2.0-doc: devel::doc, devel::library, made-of::data:html, role::documentation, uitoolkit::gtk
+libgtkada-2.4: devel::lang:ada, devel::library, implemented-in::ada, role::shared-lib, uitoolkit::gtk
+libgtkada-2.8: role::shared-lib, uitoolkit::gtk
+libgtkada-gl-2.4: devel::lang:ada, devel::library, implemented-in::ada, interface::3d, role::shared-lib, uitoolkit::gtk
+libgtkada-gl-2.8: role::shared-lib, uitoolkit::gtk
+libgtkada-glade-2.4: devel::lang:ada, devel::library, implemented-in::ada, role::shared-lib, uitoolkit::gtk
+libgtkada-glade-2.8: role::shared-lib, uitoolkit::gtk
+libgtkada2-bin: implemented-in::ada, uitoolkit::gtk
+libgtkada2-dev: devel::lang:ada, devel::library, implemented-in::ada, role::devel-lib, role::documentation, suite::gnome, uitoolkit::gtk
+libgtkada2-doc: devel::doc, devel::lang:ada, devel::library, implemented-in::ada, made-of::data:html, made-of::data:info, role::documentation, suite::gnome, uitoolkit::gtk
+libgtkdatabox-0.2.3.0-0: role::shared-lib, uitoolkit::gtk
+libgtkdatabox-0.2.4.7-0: special::not-yet-tagged, special::not-yet-tagged::l
+libgtkdatabox-0.6.0-0: role::shared-lib, uitoolkit::gtk
+libgtkdatabox-0.6.0-0-dev: devel::library, uitoolkit::gtk
+libgtkdatabox-dev: devel::library, role::devel-lib, uitoolkit::gtk, use::viewing
+libgtkdatesview-dev: devel::library, uitoolkit::gtk
+libgtkdatesview0: role::shared-lib, uitoolkit::gtk
+libgtkextra-1.0-0: devel::ui-builder, implemented-in::c, interface::x11, role::shared-lib, uitoolkit::gtk
+libgtkextra-dev: devel::library, devel::ui-builder, implemented-in::c, role::devel-lib, uitoolkit::gtk
+libgtkextra-x11-2.0-1: implemented-in::c, role::shared-lib, uitoolkit::gtk
+libgtkextra-x11-2.0-dbg: devel::debugger, devel::lang:c, devel::library, implemented-in::c, role::devel-lib, uitoolkit::gtk
+libgtkextra-x11-2.0-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib, uitoolkit::gtk
+libgtkextra16: devel::library, role::shared-lib, uitoolkit::gtk
+libgtkextra17: devel::library, role::shared-lib, uitoolkit::gtk
+libgtkextra17-dev: devel::library, role::devel-lib, uitoolkit::gtk
+libgtkextramm-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, uitoolkit::gtk
+libgtkextramm0.9-12: devel::library, role::shared-lib
+libgtkextramm0.9-12c2: role::shared-lib, uitoolkit::gtk
+libgtkgl2.0-1: devel::library, role::shared-lib, uitoolkit::gtk
+libgtkgl2.0-dev: devel::library, interface::3d, role::devel-lib, uitoolkit::gtk
+libgtkglarea-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::3d, role::shared-lib, uitoolkit::gtk
+libgtkglext1: devel::library, interface::3d, role::shared-lib, uitoolkit::gtk
+libgtkglext1-dev: devel::library, interface::3d, role::devel-lib, uitoolkit::gtk
+libgtkglext1-doc: devel::doc, devel::library, interface::3d, role::documentation, uitoolkit::gtk
+libgtkglext1-ruby: devel::lang:ruby, devel::library, implemented-in::ruby, interface::3d, role::shared-lib, uitoolkit::gtk
+libgtkglextmm1: role::shared-lib, uitoolkit::gtk
+libgtkglextmm1-dev: devel::lang:c++, devel::library, implemented-in::c++, interface::3d, role::devel-lib, uitoolkit::gtk
+libgtkhex0: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk, use::editing, works-with::file
+libgtkhex0-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk, use::editing, works-with::file
+libgtkhtml-data: devel::library, role::app-data, uitoolkit::gtk, works-with-format::html, works-with::text
+libgtkhtml-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk, works-with-format::html, works-with::text
+libgtkhtml1.1-3: devel::library, role::shared-lib, uitoolkit::gtk, works-with-format::html, works-with::text
+libgtkhtml2-0: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk, works-with-format::html, works-with::text
+libgtkhtml2-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk, works-with-format::html, works-with::text
+libgtkhtml2-ruby: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, uitoolkit::gtk, works-with-format::html, works-with::text
+libgtkhtml3.0-4: role::shared-lib, uitoolkit::gtk
+libgtkhtml3.0-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk, works-with-format::html, works-with::text
+libgtkhtml3.2-dev: devel::library, role::devel-lib
+libgtkhtml3.6-18: special::not-yet-tagged, special::not-yet-tagged::l
+libgtkhtml3.6-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libgtkhtml3.8-15: role::shared-lib, uitoolkit::gtk
+libgtkhtml3.8-dbg: devel::library, uitoolkit::gtk
+libgtkhtml3.8-dev: devel::library, uitoolkit::gtk
+libgtkimreg-dev: devel::library, interface::x11, role::devel-lib, uitoolkit::gtk, works-with::image
+libgtkimreg0: devel::library, interface::x11, role::shared-lib, uitoolkit::gtk, works-with::image
+libgtkmathview-bin: devel::library, field::mathematics, implemented-in::c++, interface::commandline, role::program, scope::utility, uitoolkit::gtk, use::editing, works-with-format::xml
+libgtkmathview-dev: devel::library, field::mathematics, implemented-in::c++, role::devel-lib, uitoolkit::gtk, use::editing, works-with-format::xml
+libgtkmathview0: devel::library, role::shared-lib, uitoolkit::gtk
+libgtkmathview0c2a: devel::lang:c++, field::mathematics, role::shared-lib, uitoolkit::gtk
+libgtkmm-2.4-1: role::shared-lib
+libgtkmm-2.4-1c2a: devel::lang:c++, implemented-in::c++, role::shared-lib, uitoolkit::gtk
+libgtkmm-2.4-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, uitoolkit::gtk
+libgtkmm-2.4-doc: devel::doc, devel::lang:c++, devel::library, made-of::data:html, role::documentation, uitoolkit::gtk
+libgtkmm-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, uitoolkit::gtk
+libgtkmm-doc: devel::doc, devel::lang:c++, devel::library, made-of::data:html, role::documentation, uitoolkit::gtk
+libgtkmm1.2-0: devel::library, role::shared-lib, uitoolkit::gtk
+libgtkmm1.2-0c2a: uitoolkit::gtk
+libgtkmm2.0-1c102: devel::library, role::shared-lib, uitoolkit::gtk
+libgtkmm2.0-1c2a: uitoolkit::gtk
+libgtkmm2.0-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, uitoolkit::gtk
+libgtkmm2.0-doc: devel::doc, devel::lang:c++, devel::library, made-of::data:html, role::documentation, uitoolkit::gtk
+libgtksourceview-cil: special::not-yet-tagged, special::not-yet-tagged::l
+libgtksourceview-common: devel::library, devel::prettyprint, role::app-data, role::documentation, uitoolkit::gtk, use::editing, works-with::software:source
+libgtksourceview-dev: devel::library, devel::prettyprint, role::devel-lib, role::documentation, uitoolkit::gtk, use::editing, works-with::software:source
+libgtksourceview-doc: devel::doc, devel::library, devel::prettyprint, made-of::data:html, role::documentation, use::editing, works-with::software:source
+libgtksourceview1-ruby: devel::lang:ruby, devel::library, devel::prettyprint, implemented-in::ruby, role::shared-lib, suite::gnome, uitoolkit::gtk, use::editing, works-with::software:source
+libgtksourceview1.0-0: devel::library, devel::prettyprint, role::shared-lib, uitoolkit::gtk, use::editing, works-with::software:source
+libgtksourceview2.0-cil: uitoolkit::gtk
+libgtkspell-dev: devel::library, role::devel-lib, uitoolkit::gtk, use::checking, works-with::text
+libgtkspell0: devel::library, role::shared-lib, uitoolkit::gtk, use::checking, works-with::text
+libgtkxmhtml-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk, works-with-format::html, works-with::text
+libgtkxmhtml-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, suite::gnome, uitoolkit::gtk, works-with-format::html, works-with::text
+libgtkxmhtml1: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk, works-with-format::html, works-with::text
+libgtop-daemon: devel::library, suite::gnome, uitoolkit::gtk
+libgtop-dev: devel::library, suite::gnome, uitoolkit::gtk
+libgtop1: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgtop2-2: role::shared-lib
+libgtop2-7: role::shared-lib
+libgtop2-common: role::app-data
+libgtop2-daemon: devel::library, suite::gnome, uitoolkit::gtk
+libgtop2-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk, use::monitor, works-with::software:running
+libgts-0.7-1: devel::library, field::mathematics, interface::3d, role::shared-lib
+libgts-0.7-5: role::shared-lib, suite::gnu
+libgts-dev: devel::library, field::mathematics, interface::3d, role::devel-lib, suite::gnu
+libgts-doc: devel::doc, devel::library, field::mathematics, interface::3d, made-of::data:html, role::documentation, suite::gnu
+libgucharmap4: devel::library, role::shared-lib, uitoolkit::gtk, works-with::text, works-with::unicode
+libgucharmap4-dev: devel::library, role::devel-lib, uitoolkit::gtk, works-with::text, works-with::unicode
+libguichan0: role::shared-lib
+libguichan0-dev: devel::library
+libguile-dev: devel::lang:c, devel::lang:scheme, devel::library, role::devel-lib, uitoolkit::qt
+libguile-ltdl-1: devel::lang:scheme, devel::library, role::shared-lib
+libguile9: devel::lang:scheme, devel::library, role::shared-lib, uitoolkit::ncurses
+libguilegtk-1.2-0: devel::lang:scheme, devel::library, role::shared-lib, uitoolkit::gtk
+libguilegtk-1.2-dev: devel::lang:scheme, devel::library, role::devel-lib, uitoolkit::gtk
+libgulm-dev: devel::library
+libgulm1: role::shared-lib
+libguppi-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk
+libguppi16: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libgutenprint-dev: devel::library, hardware::printer
+libgutenprint-doc: hardware::printer
+libgutenprint2: hardware::printer, role::shared-lib
+libgutenprintui1-1: hardware::printer, role::shared-lib, uitoolkit::gtk
+libgutenprintui1-dev: hardware::printer
+libgutenprintui2-1: hardware::printer, role::shared-lib, uitoolkit::gtk
+libgutenprintui2-dev: hardware::printer
+libgwenhywfar-data: role::app-data, special::not-yet-tagged, special::not-yet-tagged::l
+libgwenhywfar-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libgwenhywfar17: special::not-yet-tagged, special::not-yet-tagged::l
+libgwenhywfar17-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libgwenhywfar38: role::shared-lib
+libgwenhywfar38-dev: devel::library
+libgwrap-runtime0: devel::lang:c, devel::lang:scheme, devel::library, role::shared-lib
+libgwrap-runtime0-dev: devel::lang:c, devel::lang:scheme, devel::library, role::devel-lib
+libgwrapguile-dev: devel::lang:scheme, devel::library, role::devel-lib, uitoolkit::qt
+libgwrapguile1: devel::lang:scheme, devel::library, role::shared-lib, uitoolkit::qt
+libhal-dev: devel::library, hardware::detection, role::devel-lib
+libhal-storage-dev: devel::library, hardware::detection, hardware::storage, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libhal-storage0: special::not-yet-tagged, special::not-yet-tagged::l
+libhal-storage1: role::shared-lib
+libhal0: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libhal1: role::shared-lib
+libhamlib++-dev: devel::library
+libhamlib-dev: devel::library
+libhamlib2: role::shared-lib
+libhamlib2++c2: role::shared-lib
+libhamlib2-perl: devel::lang:perl
+libharminv2: role::shared-lib
+libhd13: role::shared-lib
+libhd13-dev: devel::library
+libhdate-dev: devel::library
+libhdate-pascal: devel::library
+libhdate-perl: devel::lang:perl
+libhdate1: role::shared-lib
+libhdb7-heimdal: devel::library, protocol::kerberos, role::shared-lib, works-with::db
+libhdf4g: devel::library, field::physics, role::shared-lib, use::storing
+libhdf4g-dev: devel::library, field::physics, role::devel-lib, use::storing
+libhdf4g-doc: devel::doc, devel::library, field::physics, made-of::data:html, role::documentation, use::storing
+libhdf4g-run: devel::library, field::physics, interface::commandline, role::program, scope::utility, use::storing
+libhdf5-doc: devel::doc, devel::library, field::physics, made-of::data:html, role::documentation, use::storing
+libhdf5-lam-1.6.2-0: devel::library
+libhdf5-lam-1.6.5-0: role::shared-lib
+libhdf5-lam-dev: devel::library, field::physics, role::devel-lib, role::documentation, use::storing
+libhdf5-mpich-1.6.2-0: devel::library
+libhdf5-mpich-1.6.5-0: role::shared-lib
+libhdf5-mpich-dev: devel::library, field::physics, role::devel-lib, use::storing
+libhdf5-serial-1.6.2-0: devel::library
+libhdf5-serial-1.6.5-0: role::shared-lib
+libhdf5-serial-dev: devel::library, field::physics, role::devel-lib, role::documentation, use::storing
+libheap-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libherwig59: special::not-yet-tagged, special::not-yet-tagged::l
+libherwig59-2: field::physics, role::shared-lib
+libherwig59-2-dev: devel::library, field::physics
+libherwig59-dev: devel::library
+libhesiod-dev: devel::library, protocol::dns, role::devel-lib
+libhesiod0: devel::library, protocol::dns, role::shared-lib
+libhfsp-dev: admin::filesystem, devel::library, role::devel-lib
+libhfsp0: admin::filesystem, devel::library, role::shared-lib
+libhid-dev: devel::library, hardware::input, hardware::usb, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libhid0: hardware::input, hardware::usb, role::shared-lib
+libhighgui-dev: devel::library, hardware::camera, role::devel-lib, uitoolkit::gtk, use::monitor, works-with::video
+libhighgui0.9-0: special::not-yet-tagged, special::not-yet-tagged::l
+libhighgui0.9.7-0: role::shared-lib, uitoolkit::gtk
+libhighline-ruby: devel::lang:ruby
+libhighline-ruby1.8: devel::lang:ruby, role::shared-lib
+libhk-classes-dev: devel::library
+libhk-classes-mdb: role::devel-lib
+libhk-classes-mysql: devel::lang:c++, devel::lang:sql, devel::library, implemented-in::c++, role::devel-lib, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, works-with::db
+libhk-classes-odbc: devel::lang:c++, devel::lang:sql, devel::library, implemented-in::c++, role::devel-lib, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, works-with::db
+libhk-classes-paradox: role::devel-lib
+libhk-classes-postgres: devel::lang:c++, devel::lang:sql, devel::library, implemented-in::c++, role::devel-lib, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, works-with::db
+libhk-classes-sqlite: devel::lang:c++, devel::lang:sql, devel::library, implemented-in::c++, role::devel-lib, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, works-with::db
+libhk-classes-sqlite3: role::devel-lib, role::shared-lib
+libhk-classes-xbase: role::devel-lib
+libhk-classes13: role::shared-lib
+libhk-classes13-dev: devel::library
+libhk-classes15: role::shared-lib
+libhk-classes7: special::not-yet-tagged, special::not-yet-tagged::l
+libhk-classes7-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libhk-kdeclasses7: devel::lang:c++, devel::lang:sql, devel::library, implemented-in::c++, role::devel-lib, role::shared-lib, uitoolkit::qt, works-with::db
+libhk-kdeclasses7-dev: devel::lang:c++, devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libhnj-dev: devel::library, role::devel-lib, use::typesetting, works-with-format::tex, works-with::text
+libhnj0: role::shared-lib, use::typesetting, works-with-format::tex, works-with::text
+libhoard: devel::library
+libhocr-dev: devel::library
+libhocr-perl: devel::lang:perl
+libhocr0: role::shared-lib, uitoolkit::gtk
+libhonyaku-damashii-ruby1.6: devel::lang:ruby
+libhowl-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libhowl-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libhowl0: special::not-yet-tagged, special::not-yet-tagged::l
+libhpricot-ruby: devel::lang:ruby
+libhpricot-ruby1.8: devel::lang:ruby, role::shared-lib
+libhpricot-ruby1.9: devel::lang:ruby, role::shared-lib
+libhs: devel::library
+libhs-dev: devel::library, role::devel-lib
+libhsqldb-java: devel::lang:java, implemented-in::java, role::shared-lib, works-with::db
+libhtml-calendarmonth-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::timekeeping, works-with-format::html, works-with::text
+libhtml-clean-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::html, works-with::text
+libhtml-element-extended-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::html, works-with::text
+libhtml-embperl-perl: devel::lang:perl, devel::library, implemented-in::perl, web::scripting, works-with-format::html, works-with::text
+libhtml-fillinform-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::web, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, works-with-format::html, works-with::text
+libhtml-format-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::converting, use::text-formatting, works-with-format::html, works-with-format::postscript, works-with::text
+libhtml-fromtext-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::converting, works-with-format::html, works-with-format::plaintext, works-with::text
+libhtml-highlight-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libhtml-htmltokenizer-ruby: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, works-with-format::html, works-with::text
+libhtml-linkextractor-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::http, role::shared-lib, works-with-format::html, works-with::text
+libhtml-lint-perl: devel::debugger, devel::lang:perl, devel::library, devel::prettyprint, implemented-in::perl, role::shared-lib, use::checking, works-with-format::html, works-with::text
+libhtml-mason-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::html, works-with::text
+libhtml-mason-perl-doc: devel::doc, devel::lang:perl, made-of::data:html, role::documentation, special::not-yet-tagged, special::not-yet-tagged::l, works-with-format::html, works-with::text
+libhtml-mason-perl-examples: devel::examples, devel::lang:perl, implemented-in::perl, made-of::data:html, role::documentation, special::not-yet-tagged, special::not-yet-tagged::l, works-with-format::html, works-with::text
+libhtml-munger-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::converting, works-with-format::html, works-with::text
+libhtml-parser-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::html, works-with::text
+libhtml-parser-ruby1.6: devel::lang:ruby, devel::library
+libhtml-parser-ruby1.8: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, works-with-format::html, works-with::text
+libhtml-prototype-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libhtml-scrubber-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, use::filtering, works-with-format::html, works-with::text
+libhtml-simpleparse-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::html, works-with::text
+libhtml-table-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::html, works-with::text
+libhtml-tableextract-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::html, works-with::text
+libhtml-tagcloud-perl: devel::lang:perl, devel::library, devel::web, implemented-in::perl, role::shared-lib
+libhtml-tagfilter-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libhtml-tagset-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::html, works-with::text
+libhtml-template-expr-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, works-with-format::html, works-with::text
+libhtml-template-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::html, works-with::text
+libhtml-template-ruby: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, works-with-format::html, works-with::text
+libhtml-tokeparser-simple-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::html, works-with::text
+libhtml-tree-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::html, works-with::text
+libhtml-widget-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libhtml-widgets-selectlayers-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, web::scripting, works-with-format::html, works-with::text
+libhtml-wikiconverter-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libhtree-ruby1.8: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, works-with-format::html, works-with::text
+libhttp-access2-ruby: devel::lang:ruby, devel::library, implemented-in::ruby, protocol::http
+libhttp-access2-ruby1.6: devel::lang:ruby, devel::library, protocol::http
+libhttp-access2-ruby1.8: devel::lang:ruby, devel::library, implemented-in::ruby, protocol::http, role::shared-lib
+libhttp-body-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libhttp-browserdetect-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::daemon, protocol::http, role::shared-lib
+libhttp-cache-transparent-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::http, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, use::storing
+libhttp-daemon-ssl-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libhttp-dav-perl: devel::lang:perl, devel::library, implemented-in::perl, network::client, protocol::http, protocol::webdav, role::program, role::shared-lib
+libhttp-ghttp-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::http, suite::gnome, uitoolkit::gtk
+libhttp-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, protocol::http, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libhttp-proxy-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::http, role::shared-lib, use::proxying
+libhttp-recorder-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libhttp-request-ascgi-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libhttp-request-params-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libhttp-server-simple-perl: devel::lang:perl, devel::library, filetransfer::http, implemented-in::perl, protocol::http, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, web::server
+libhttpfetcher-dev: devel::library, filetransfer::http, protocol::http, role::devel-lib
+libhttpfetcher1: devel::library, filetransfer::http, protocol::http
+libhttrack-dev: devel::library, filetransfer::ftp, protocol::ftp, role::devel-lib, use::synchronizing
+libhttrack1: devel::library, filetransfer::ftp, protocol::ftp, role::shared-lib, use::synchronizing
+libhugs-hdbc-missingh: devel::lang:haskell, implemented-in::haskell
+libhugs-hdbc-sqlite3: role::shared-lib
+libhugs-http: special::not-yet-tagged, special::not-yet-tagged::l
+libhugs-hunit: special::not-yet-tagged, special::not-yet-tagged::l
+libhugs-missingh: devel::lang:haskell, devel::library, implemented-in::haskell, role::documentation, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libhula-dev: devel::library
+libhula0: role::shared-lib
+libhunspell-dev: devel::library
+libhypre-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libhypre1.6.0: special::not-yet-tagged, special::not-yet-tagged::l
+libhypre1.6.0c2: role::shared-lib
+libhz-dev: accessibility::input, culture::chinese, culture::taiwanese, devel::library, role::devel-lib, use::converting
+libhz0: accessibility::input, culture::chinese, culture::taiwanese, devel::library, role::shared-lib, use::converting
+libi18n-acceptlanguage-perl: devel::i18n, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libi18n-charset-perl: devel::i18n, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::text, works-with::unicode
+libi18n-java: devel::lang:java
+libiax-dev: devel::library, protocol::voip, role::devel-lib
+libiax0: devel::library, protocol::voip, role::shared-lib
+libibtk-dev: devel::library, hardware::video, role::devel-lib, use::storing, works-with::video
+libibtk0: devel::library, hardware::video, role::shared-lib, use::storing, works-with::video
+libibverbs-dev: devel::library
+libibverbs1: role::shared-lib
+libibverbs1-dbg: devel::library
+libice-dev: devel::library, role::devel-lib, x11::library
+libice6: role::shared-lib, x11::library
+libice6-dbg: devel::library, role::shared-lib, x11::library
+libicebox31: role::shared-lib
+libicee-java: devel::lang:java
+libicee11: role::shared-lib
+libiceec11: role::shared-lib
+libicegrid31: role::shared-lib
+libicepatch2-31: role::shared-lib
+libicessl31: role::shared-lib
+libicestorm31: role::shared-lib
+libiceutil31: role::shared-lib
+libicexml31: role::shared-lib
+libiconv-hook-dev: devel::i18n, devel::library, role::devel-lib, use::converting
+libiconv-hook1: devel::i18n, devel::library, role::shared-lib, use::converting
+libiconv-ruby: devel::i18n, devel::lang:ruby, devel::library, implemented-in::ruby, use::converting
+libiconv-ruby1.6: devel::lang:ruby, devel::library
+libicq2000: devel::library, role::shared-lib
+libicq2000-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, role::documentation
+libicq2000-doc: devel::doc, devel::lang:c++, devel::library, made-of::data:html, role::documentation
+libicq2000c2: role::shared-lib
+libicu21-dev: devel::library, role::devel-lib
+libicu21c102: devel::library
+libicu28: special::not-yet-tagged, special::not-yet-tagged::l
+libicu28-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libicu36: role::shared-lib
+libicu36-dev: devel::library
+libid3-3.8.3: devel::library, role::shared-lib
+libid3-3.8.3-dev: devel::library, role::devel-lib, use::organizing, works-with-format::mp3, works-with::audio
+libid3-3.8.3c2a: role::shared-lib
+libid3tag0: devel::library, role::shared-lib, use::organizing, works-with-format::mp3, works-with::audio
+libid3tag0-dev: devel::library, role::devel-lib, use::organizing, works-with-format::mp3, works-with::audio
+libiddev-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libident: devel::library, protocol::ident, role::shared-lib
+libident-dev: devel::library, protocol::ident, role::devel-lib
+libidl-dev: devel::library, protocol::corba, role::devel-lib
+libidl0: devel::library, protocol::corba, role::shared-lib
+libidn11: protocol::dns, role::shared-lib, suite::gnu, works-with::text, works-with::unicode
+libidn11-dev: devel::library, protocol::dns, role::devel-lib, suite::gnu, works-with::text, works-with::unicode
+libiec61883-0: role::shared-lib
+libiec61883-dev: devel::library
+libieee1284-3: admin::hardware, devel::library, role::shared-lib
+libieee1284-3-dev: admin::hardware, devel::library, role::devel-lib
+libifp-dev: devel::library, hardware::usb, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l, works-with-format::mp3, works-with::audio
+libifp4: hardware::usb, role::shared-lib, sound::player, works-with-format::mp3, works-with::audio
+libifstat-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l, use::monitor
+libihelp-ruby: devel::lang:ruby
+libihelp-ruby1.8: devel::lang:ruby
+libiiimcf-dev: accessibility::input, devel::i18n, devel::lang:c, devel::library, implemented-in::c, role::devel-lib, works-with::text, works-with::unicode
+libiiimcf2: accessibility::input, devel::lang:c, special::not-yet-tagged, special::not-yet-tagged::l
+libiiimcf3: role::shared-lib
+libiiimp-dev: accessibility::input, devel::i18n, devel::lang:c, devel::library, implemented-in::c, role::devel-lib, works-with::text, works-with::unicode
+libiiimp0: accessibility::input, devel::lang:c, special::not-yet-tagged, special::not-yet-tagged::l
+libiiimp1: role::shared-lib
+libijs-0.35: hardware::printer, role::shared-lib, use::printing, works-with::image:raster
+libijs-dev: devel::library, hardware::printer, role::devel-lib, use::printing, works-with::image:raster
+libiksemel-dev: devel::library
+libiksemel1: devel::lang:c, special::not-yet-tagged, special::not-yet-tagged::l
+libiksemel1-dev: devel::lang:c, devel::library, role::devel-lib
+libiksemel3: role::shared-lib
+libima-dbi-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libimage-base-bundle-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, use::editing, works-with::image:raster
+libimage-exif-perl: devel::lang:perl, devel::library, implemented-in::perl, use::scanning, works-with-format::jpg, works-with::image:raster
+libimage-exiftool-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libimage-imlib2-perl: devel::lang:perl, devel::library, implemented-in::perl, use::editing, works-with::image, works-with::image:raster
+libimage-info-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::organizing, works-with::image, works-with::image:raster
+libimage-librsvg-perl: devel::lang:perl, devel::library
+libimage-rsvg-perl: devel::lang:perl, implemented-in::perl, special::not-yet-tagged, special::not-yet-tagged::l
+libimage-size-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::scanning, works-with::image, works-with::image:raster
+libimage-size-ruby1.6: devel::lang:ruby, devel::library
+libimage-size-ruby1.8: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, use::scanning, works-with::image:raster
+libimager-perl: devel::lang:perl, devel::library, implemented-in::perl, use::converting, works-with::image:raster
+libimap-admin-perl: devel::lang:perl, devel::library, implemented-in::perl, mail::imap, protocol::imap, role::shared-lib, works-with::mail
+libimdb-film-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libimlib2: devel::library, role::shared-lib, works-with::image, works-with::image:raster
+libimlib2-dev: devel::library, role::devel-lib, works-with::image, works-with::image:raster
+libimlib2-ruby: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, works-with::image:raster
+libindex0: role::shared-lib
+libindex0-dev: devel::library
+libinklevel-dev: devel::library, hardware::printer
+libinklevel3: hardware::printer, role::shared-lib
+libinline-octave-perl: devel::lang:octave, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::software:source
+libinline-perl: devel::lang:c, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::software:source
+libinline-ruby: devel::lang:ruby
+libinline-ruby1.8: devel::lang:ruby
+libinstrudeo-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib
+libinstrudeo0: devel::lang:c++, implemented-in::c++, role::shared-lib
+libinti-dev: devel::lang:c++, devel::library, role::devel-lib, uitoolkit::gtk
+libinti-doc: devel::doc, devel::lang:c++, devel::library, role::documentation
+libinti-gconf-dev: devel::lang:c++, devel::library, role::devel-lib
+libinti-gconf-doc: devel::doc, devel::lang:c++, devel::library, role::documentation
+libinti-gconf1.0: devel::lang:c++, devel::library, uitoolkit::gtk
+libinti-gl-dev: devel::lang:c++, devel::library, role::devel-lib
+libinti-gl-doc: devel::lang:c++, devel::library, role::documentation
+libinti-gl1: devel::lang:c++, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libinti-sourceview-dev: devel::lang:c++, devel::library, role::devel-lib
+libinti-sourceview-doc: devel::lang:c++, role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libinti-sourceview1: devel::lang:c++, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libinti1.0-1.2: devel::lang:c++, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libintl-gettext-ruby: devel::i18n, devel::lang:ruby, devel::library, implemented-in::ruby
+libintl-gettext-ruby1.6: devel::lang:ruby, devel::library
+libintl-gettext-ruby1.8: devel::i18n, devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib
+libintl-perl: devel::i18n, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libintl-xs-perl: devel::i18n, devel::lang:perl, devel::library, implemented-in::c, implemented-in::perl, special::not-yet-tagged, special::not-yet-tagged::l
+libinventor0: role::shared-lib
+libinventor0c102: devel::library, uitoolkit::motif
+libio-all-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libio-capture-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libio-digest-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libio-interface-perl: devel::lang:perl, devel::library, implemented-in::perl, network::configuration, role::devel-lib, role::shared-lib
+libio-lockedfile-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libio-multiplex-perl: devel::lang:perl, devel::library, implemented-in::perl, role::devel-lib, role::shared-lib
+libio-prompt-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libio-pty-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libio-socket-inet6-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::ipv6, role::shared-lib
+libio-socket-multicast-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::ip
+libio-socket-ssl-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::ssl, role::shared-lib
+libio-string-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libio-stringy-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libio-stty-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libio-zlib-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::compressing
+libiodbc2: devel::library, role::shared-lib, works-with::db
+libiodbc2-dev: devel::library, role::devel-lib, works-with::db
+libipc-run-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::software:running
+libipc-run3-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, works-with::software:running
+libipc-shareable-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libipc-sharedcache-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libipc-sharelite-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libipc-signal-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libipe1: role::shared-lib, uitoolkit::qt
+libipe1-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::qt, use::editing, works-with-format::pdf, works-with-format::postscript, works-with::text
+libipe1c2a: role::shared-lib
+libipoddevice-dev: devel::library
+libipoddevice0: role::shared-lib
+libipodui-cil: uitoolkit::gtk
+libiptables-ipv4-ipqueue-perl: devel::lang:perl, implemented-in::perl, network::firewall, protocol::ip, security::firewall, special::not-yet-tagged, special::not-yet-tagged::l
+libirman-dev: admin::hardware, devel::library, role::devel-lib
+libisajet758: special::not-yet-tagged, special::not-yet-tagged::l
+libisajet758-2: field::physics, role::shared-lib
+libisajet758-2-dev: devel::library, field::physics
+libisajet758-dev: devel::library
+libisapnp-dev: devel::library
+libisc11: role::shared-lib
+libisc9: protocol::TODO, protocol::dns, role::shared-lib
+libisccc0: devel::library, protocol::dns, role::shared-lib
+libisccfg1: role::shared-lib
+libisdnnet-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libiso9660-3: special::not-yet-tagged, special::not-yet-tagged::l
+libiso9660-4: role::shared-lib
+libiso9660-dev: admin::filesystem, devel::library, hardware::storage, hardware::storage:cd, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, works-with-format::iso9660, works-with::archive
+libisofs-1: admin::filesystem, hardware::storage, hardware::storage:cd, role::shared-lib, use::storing, works-with-format::iso9660, works-with::archive
+libisofs-dev: admin::filesystem, devel::library, hardware::storage, hardware::storage:cd, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l, use::storing, works-with-format::iso9660, works-with::archive
+libiterm-dev: devel::i18n, devel::library, role::devel-lib
+libiterm1: devel::i18n, devel::library, role::shared-lib
+libitext-java: devel::lang:java
+libitext-java-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libitl-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l, use::timekeeping
+libitl0: role::shared-lib, use::timekeeping
+libiv-unidraw1: role::shared-lib
+libiv1: role::shared-lib
+libiw-dev: devel::library, network::configuration, role::devel-lib
+libiw27: special::not-yet-tagged, special::not-yet-tagged::l
+libiw28: role::shared-lib
+libjabberoo-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libjabberoo0: special::not-yet-tagged, special::not-yet-tagged::l
+libjabberoo0c2a-dbg: devel::library
+libjack0.100.0-0: role::shared-lib
+libjack0.100.0-dev: devel::library, role::devel-lib, works-with::audio
+libjack0.80.0-0: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libjack0.80.0-dev: devel::library
+libjackasyn-dev: devel::library, role::devel-lib, sound::player, uitoolkit::gtk, works-with::audio
+libjackasyn0: role::shared-lib, sound::player, works-with::audio
+libjakarta-poi-java: devel::lang:java, role::documentation
+libjakarta-poi-java-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libjama-dev: devel::lang:c++, devel::library, field::mathematics, implemented-in::c++, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libjama-java: devel::lang:java
+libjasper-1.701-1: role::shared-lib, works-with-format::jpg, works-with::image, works-with::image:raster
+libjasper-1.701-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l, works-with-format::jpg, works-with::image:raster
+libjasper-runtime: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, works-with-format::jpg, works-with::image:raster
+libjavascript-perl: devel::lang:perl, devel::library, implemented-in::perl, special::not-yet-tagged, special::not-yet-tagged::l, web::scripting
+libjavascript-rpc-perl: devel::lang:perl, devel::library, devel::rpc, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, web::cgi
+libjaxen-java: devel::lang:java, devel::library, implemented-in::java, special::not-yet-tagged, special::not-yet-tagged::l, works-with-format::xml
+libjaxme-java: devel::lang:java
+libjaxp1.2-java: devel::lang:java, devel::library, implemented-in::java, role::shared-lib, works-with-format::xml
+libjaxp1.3-java: devel::lang:java, devel::library, implemented-in::java, role::shared-lib, works-with-format::xml
+libjazzy-java: devel::lang:java, special::not-yet-tagged, special::not-yet-tagged::l
+libjcalendar-java: devel::lang:java
+libjcifs-java: devel::lang:java
+libjcode-perl: culture::japanese, devel::lang:perl, devel::library, implemented-in::perl
+libjcode-pm-perl: culture::japanese, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libjcommon-java: devel::lang:java
+libjconv-bin: culture::japanese, devel::library, interface::commandline, role::program, scope::utility, use::converting, works-with::text
+libjconv-dev: culture::japanese, devel::library, role::devel-lib, use::converting, works-with::text
+libjconv2: culture::japanese, devel::library, role::shared-lib, use::converting, works-with::text
+libjdepend-java: devel::lang:java, devel::library, devel::testing-qa, implemented-in::java
+libjdom-java: devel::lang:java, devel::library, implemented-in::java, works-with-format::xml
+libjdom0-java: devel::lang:java, devel::library, implemented-in::java, special::not-yet-tagged, special::not-yet-tagged::l, works-with-format::xml
+libjdom1-java: devel::lang:java, devel::library, implemented-in::java, special::not-yet-tagged, special::not-yet-tagged::l, works-with-format::xml
+libjessie-java: devel::lang:java, devel::library, implemented-in::java, protocol::ssl
+libjfreechart-java: devel::lang:java
+libjfreereport-java: devel::lang:java, role::documentation
+libjfreereport-java-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libjgoodies-forms-java: devel::lang:java
+libjgoodies-looks-java: devel::lang:java, devel::library, implemented-in::java, role::devel-lib
+libjgoodies-looks-java-doc: devel::doc, devel::lang:java, devel::library, made-of::data:html, role::documentation
+libjgraph-java: devel::lang:java, devel::library, implemented-in::java, role::devel-lib
+libjgraph-java-doc: devel::doc, devel::lang:java, devel::library, made-of::data:html, role::documentation
+libjgrapht-java: devel::lang:java
+libjinglebase0.3-0: role::shared-lib
+libjinglebase0.3-dev: devel::library
+libjinglep2p0.3-0: role::shared-lib
+libjinglep2p0.3-dev: devel::library
+libjinglesession0.3-0: role::shared-lib
+libjinglesession0.3-dev: devel::library
+libjinglexmllite0.3-0: role::shared-lib
+libjinglexmllite0.3-dev: devel::library
+libjinglexmpp0.3-0: role::shared-lib
+libjinglexmpp0.3-dev: devel::library
+libjlha-java: devel::lang:java, implemented-in::java, use::compressing
+libjlha-java-doc-ja: culture::japanese, role::documentation
+libjline-java: devel::lang:java, implemented-in::java, interface::commandline, role::shared-lib
+libjmagick6-java: devel::lang:java
+libjmock-java: devel::lang:java
+libjpeg-mmx-dev: devel::library, role::devel-lib, works-with::image:raster
+libjpeg-mmx-progs: devel::library, works-with::image:raster
+libjpeg-progs: devel::library, implemented-in::perl, works-with::image:raster
+libjpeg62: devel::library, role::shared-lib, works-with-format::jpg, works-with::image, works-with::image:raster
+libjpeg62-dev: devel::library, role::devel-lib, works-with-format::jpg, works-with::image, works-with::image:raster
+libjs0: devel::library, role::shared-lib, uitoolkit::ncurses, web::scripting
+libjs0-dev: devel::library, role::devel-lib, web::scripting
+libjsch-java: devel::lang:java, devel::library, implemented-in::java, protocol::ssh, role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libjsch-java-doc: devel::examples, devel::lang:java, implemented-in::java, role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libjson-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libjson-ruby: devel::lang:ruby
+libjson-ruby1.8: devel::lang:ruby
+libjsw-dev: devel::library, hardware::input, hardware::input:joystick, role::devel-lib, uitoolkit::gtk
+libjsw2: devel::library, hardware::input, hardware::input:joystick, role::shared-lib, uitoolkit::gtk
+libjts-java: devel::lang:java
+libjudy-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib
+libjudydebian1: devel::lang:c, implemented-in::c, role::shared-lib
+libjuman-dev: culture::japanese, devel::library, field::linguistics, role::devel-lib
+libjuman4: culture::japanese, field::linguistics, role::shared-lib
+libjunitperf-java: devel::lang:java, devel::library
+libjunitperf-java-doc: devel::doc, devel::library, role::documentation
+libjzlib-java: devel::lang:java, devel::library, implemented-in::java, use::compressing
+libk3b-dev: devel::library
+libk3b2: role::shared-lib, uitoolkit::qt
+libkadm1-kerberos4kth: devel::library, protocol::kerberos, security::authentication
+libkadm55: implemented-in::c, network::client, protocol::kerberos, role::shared-lib, security::authentication
+libkadm5clnt4-heimdal: devel::library, protocol::kerberos, role::shared-lib, security::authentication
+libkadm5srv7-heimdal: devel::library, protocol::kerberos, role::shared-lib, security::authentication
+libkafs0-heimdal: devel::library, protocol::kerberos, role::shared-lib, security::authentication
+libkafs0-kerberos4kth: devel::library, protocol::kerberos, security::authentication
+libkakasi-ruby1.8: culture::japanese, devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, use::converting
+libkakasi2: culture::japanese, devel::library, role::shared-lib, use::converting
+libkakasi2-dev: culture::japanese, devel::library, role::devel-lib, use::converting
+libkbanking1: role::shared-lib
+libkcal2-dev: devel::lang:c++, devel::library, role::devel-lib, use::organizing, use::timekeeping, works-with::pim
+libkcal2a: special::not-yet-tagged, special::not-yet-tagged::l
+libkcal2b: uitoolkit::qt
+libkcddb1: hardware::storage, hardware::storage:cd, role::shared-lib, uitoolkit::qt
+libkdb-1-kerberos4kth: devel::library, protocol::kerberos, security::authentication
+libkde3-java: devel::lang:java, devel::library, implemented-in::java, special::not-yet-tagged, special::not-yet-tagged::l
+libkde3-jni: devel::lang:java, implemented-in::java, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::qt
+libkdeedu-dev: devel::library, implemented-in::c++, role::devel-lib, suite::kde, uitoolkit::qt, use::learning
+libkdeedu1: devel::library, suite::kde, uitoolkit::qt
+libkdeedu3: role::shared-lib, uitoolkit::qt
+libkdegames-dev: devel::library, implemented-in::c++, role::devel-lib, suite::kde, uitoolkit::qt, use::gameplaying
+libkdegames-doc: devel::doc, made-of::data:html, role::documentation, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::qt
+libkdegames1: devel::library, implemented-in::c++, role::shared-lib, suite::kde, uitoolkit::qt, use::gameplaying
+libkdenetwork2: devel::library, suite::kde, uitoolkit::qt
+libkdepim1: special::not-yet-tagged, special::not-yet-tagged::l
+libkdepim1-dev: devel::library, role::devel-lib
+libkdepim1a: uitoolkit::qt
+libkdtree++-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libkernlib1: devel::lang:fortran, field::physics, implemented-in::fortran, role::shared-lib
+libkernlib1-dev: devel::lang:fortran, devel::library, field::physics, implemented-in::fortran, role::devel-lib
+libkexi-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libkexif1: role::shared-lib, uitoolkit::qt
+libkexif1-dev: devel::library, implemented-in::c++, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::qt, works-with-format::jpg, works-with::image:raster
+libkeynote-dev: devel::library, role::devel-lib, security::cryptography
+libkeynote0: devel::library, role::shared-lib, security::cryptography
+libkgantt0: implemented-in::c++, role::shared-lib, uitoolkit::qt, use::organizing, works-with::pim
+libkgantt0-dev: devel::library, implemented-in::c++, role::devel-lib, uitoolkit::qt, use::organizing, works-with::pim
+libkipi0: role::shared-lib, uitoolkit::qt
+libkipi0-dev: devel::library, implemented-in::c++, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::qt
+libkiten-dev: devel::library, interface::x11
+libkiten1: interface::x11, role::shared-lib
+libkjsembed-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l, web::scripting
+libkjsembed1: role::shared-lib, suite::kde, uitoolkit::qt, web::scripting
+libkleopatra0-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libkleopatra0a: special::not-yet-tagged, special::not-yet-tagged::l
+libkleopatra1: role::shared-lib, uitoolkit::qt
+libkleopatra1-dev: devel::library
+libklibc: admin::boot, role::shared-lib
+libklibc-dev: devel::library
+libkmfl-dev: devel::library, hardware::input:keyboard
+libkmfl0: hardware::input:keyboard, role::shared-lib
+libkmflcomp-dev: devel::library, hardware::input:keyboard
+libkmflcomp0: hardware::input:keyboard, role::shared-lib
+libkmime2: role::shared-lib
+libkokyu-dev: devel::library, protocol::corba, role::devel-lib
+libkokyu5.4: special::not-yet-tagged, special::not-yet-tagged::l
+libkolab-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libkonq4: devel::library, role::shared-lib, uitoolkit::qt, works-with::file
+libkonq4-dev: devel::library, role::devel-lib, uitoolkit::qt, works-with::file
+libkorundum0-ruby1.8: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::qt
+libkpathsea-dev: devel::library, role::devel-lib, use::editing, works-with-format::tex, works-with::text
+libkpathsea-perl: devel::lang:perl, devel::library, implemented-in::perl, use::editing, works-with-format::tex, works-with::text
+libkpathsea3: devel::library, role::shared-lib, use::editing, works-with-format::tex, works-with::text
+libkpathsea4: role::shared-lib
+libkpimexchange1: implemented-in::c++, role::shared-lib, suite::kde, works-with::pim
+libkpimexchange1-dev: devel::library, implemented-in::c++, role::devel-lib, works-with::pim
+libkpimidentities1: implemented-in::c++, interface::x11, role::shared-lib, suite::kde, uitoolkit::qt, works-with::pim
+libkrb-1-kerberos4kth: devel::library, protocol::kerberos, security::authentication
+libkrb5-17-heimdal: devel::library, protocol::kerberos, role::shared-lib, security::authentication
+libkrb5-dbg: role::special:todo
+libkrb5-dev: admin::login, admin::user-management, devel::lang:c, devel::library, implemented-in::c, network::client, protocol::kerberos, role::devel-lib, security::authentication, security::cryptography, use::login
+libkrb53: admin::login, implemented-in::c, network::client, protocol::kerberos, role::shared-lib, security::authentication, security::cryptography, use::login
+libksba-dev: devel::library, role::devel-lib, security::authentication, special::not-yet-tagged, special::not-yet-tagged::l
+libksba8: role::shared-lib, security::authentication
+libkscan-dev: devel::library, role::devel-lib, suite::kde, uitoolkit::qt
+libkscan1: devel::library, role::shared-lib, suite::kde, uitoolkit::qt
+libksieve0: role::shared-lib, uitoolkit::qt, works-with::mail, works-with::pim
+libksieve0-dev: devel::library, role::devel-lib, uitoolkit::qt, works-with::mail, works-with::pim
+libkst1: special::not-yet-tagged, special::not-yet-tagged::l
+libkst1-dev: devel::library, field::astronomy, implemented-in::fortran, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::qt
+libkst1c2: implemented-in::fortran, interface::x11, role::shared-lib, uitoolkit::qt
+libkthacl1-kerberos4kth: protocol::kerberos, security::authentication, special::not-yet-tagged, special::not-yet-tagged::l
+libktnef1: role::shared-lib
+libktnef1-dev: devel::library
+libktoblzcheck-bin: culture::german, field::finance, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l
+libktoblzcheck1: special::not-yet-tagged, special::not-yet-tagged::l
+libktoblzcheck1-dev: culture::german, devel::library, field::finance, role::devel-lib
+libktoblzcheck1c2a: role::shared-lib
+libkuipx11-1: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::motif
+libkuipx11-1-dev: devel::library
+libkvutils2.2-dev: devel::library, role::devel-lib, works-with::audio
+libkwiki-cache-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libkwiki-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libkwnn-dev: accessibility::input, culture::korean, devel::library, role::devel-lib
+libkwnn0: accessibility::input, culture::korean, devel::library, role::shared-lib
+libkxl0: role::shared-lib
+libkxl0-dev: devel::library, role::devel-lib
+liblablgl-ocaml: devel::lang:ocaml, devel::library, implemented-in::ocaml, interface::3d, role::shared-lib, uitoolkit::gtk, uitoolkit::tk
+liblablgl-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, interface::3d, role::devel-lib, uitoolkit::gtk, uitoolkit::tk
+liblablgtk-ocaml: devel::lang:ocaml, devel::library, implemented-in::ocaml, suite::gnome, uitoolkit::gtk
+liblablgtk-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib, uitoolkit::gtk
+liblablgtk2-gl-ocaml: devel::lang:ocaml, uitoolkit::gtk
+liblablgtk2-gl-ocaml-dev: devel::lang:ocaml, devel::library, uitoolkit::gtk
+liblablgtk2-gnome-ocaml: devel::lang:ocaml, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+liblablgtk2-gnome-ocaml-dev: devel::lang:ocaml, devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+liblablgtk2-ocaml: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::shared-lib, uitoolkit::gtk
+liblablgtk2-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib, uitoolkit::gtk
+liblablgtk2-ocaml-doc: devel::doc, devel::lang:ocaml, made-of::data:man, role::documentation, uitoolkit::gtk
+liblablgtkmathview-ocaml: devel::lang:ocaml, devel::library, field::mathematics, implemented-in::ocaml, role::shared-lib, uitoolkit::gtk
+liblablgtkmathview-ocaml-dev: devel::lang:ocaml, devel::library, field::mathematics, implemented-in::ocaml, role::devel-lib, uitoolkit::gtk
+liblablgtksourceview-ocaml: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::shared-lib, suite::gnome, uitoolkit::gtk
+liblablgtksourceview-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib, suite::gnome, uitoolkit::gtk
+liblash-dev: devel::library
+liblash2: role::shared-lib
+liblasi-dev: devel::library
+liblasi0: role::shared-lib
+liblasso-cil: special::not-yet-tagged, special::not-yet-tagged::l
+liblasso-java: devel::lang:java
+liblasso3: role::shared-lib
+liblasso3-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+liblcms-utils: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l, works-with-format::jpg, works-with::image:raster
+liblcms1: devel::library, role::shared-lib, works-with-format::jpg, works-with::image:raster
+liblcms1-dev: devel::library, role::devel-lib, works-with-format::jpg, works-with::image:raster
+libldap-2.2-7: protocol::ldap, role::shared-lib, works-with::db
+libldap-2.3-0: implemented-in::c, network::client, protocol::ldap, role::shared-lib, works-with::db
+libldap-ocaml: devel::lang:ocaml, implemented-in::ocaml
+libldap-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, protocol::ldap, role::devel-lib, works-with::db
+libldap-ruby1.8: devel::lang:ruby, devel::library, implemented-in::ruby, protocol::ldap, role::shared-lib, works-with::db
+libldap2: devel::library, protocol::ldap, role::shared-lib, works-with::db
+libldap2-dev: devel::library, protocol::ldap, role::devel-lib, works-with::db
+libleakbug-dev: devel::debugger, devel::library, role::devel-lib, suite::gnu
+libleakbug1: devel::debugger, devel::library, role::shared-lib, suite::gnu
+libleptonica-dev: devel::library
+liblineak-0.9-0: hardware::input:keyboard, role::shared-lib
+liblineak-dev: devel::library, hardware::input:keyboard
+liblingoteach2: special::not-yet-tagged, special::not-yet-tagged::l
+liblingoteach2-dev: devel::library
+liblingoteach4: role::shared-lib, uitoolkit::gtk
+liblingoteach4-dev: devel::library, uitoolkit::gtk
+liblingua-de-ascii-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+liblingua-en-inflect-number-perl: culture::TODO, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+liblingua-en-inflect-perl: culture::TODO, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+liblingua-en-namecase-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+liblingua-en-nameparse-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+liblingua-en-numbers-ordinate-perl: culture::TODO, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+liblingua-en-words2nums-perl: culture::TODO, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+liblingua-es-numeros-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+liblingua-ga-gramadoir-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+liblingua-ispell-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::dictionary
+liblingua-preferred-perl: devel::i18n, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+liblingua-pt-stemmer-perl: culture::portuguese, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+liblingua-romkan-perl: culture::japanese, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+liblingua-stem-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+liblingua-stem-snowball-da-perl: culture::danish, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+liblink-grammar4: field::linguistics, role::shared-lib, works-with::dictionary
+liblink-grammar4-dev: devel::library
+liblinphone1: role::shared-lib
+liblinphone1-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+liblinux-aio-perl: devel::lang:perl, devel::library, implemented-in::perl, special::not-yet-tagged, special::not-yet-tagged::l
+liblinux-inotify2-perl: devel::lang:perl
+liblip-dev: devel::library, field::mathematics, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+liblip1: special::not-yet-tagged, special::not-yet-tagged::l
+liblip2: role::shared-lib
+liblircclient-dev: devel::library, hardware::input, role::devel-lib, uitoolkit::gtk
+liblircclient0: devel::library, hardware::input, role::shared-lib
+liblist-compare-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+liblist-moreutils-perl: devel::lang:perl, devel::library, implemented-in::perl, special::not-yet-tagged, special::not-yet-tagged::l
+liblivejournal-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::http, role::shared-lib
+liblivemedia-dev: devel::library, role::devel-lib, use::playing, works-with::video
+liblo0: role::shared-lib
+liblo0-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+liblo10k1-0: role::shared-lib
+liblocale-gettext-perl: devel::i18n, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+liblocale-maketext-fuzzy-perl: devel::i18n, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+liblocale-maketext-lexicon-perl: devel::i18n, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+liblocale-maketext-simple-perl: devel::i18n, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+liblocale-po-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+liblocale-ruby: devel::lang:ruby
+liblocale-ruby1.8: devel::lang:ruby
+liblocale-subcountry-perl: devel::i18n, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+liblockdev1: devel::library, role::shared-lib
+liblockdev1-dbg: devel::debugger, devel::library, role::shared-lib
+liblockdev1-dev: devel::library, role::devel-lib
+liblockdev1-perl: devel::lang:perl, devel::library, implemented-in::perl, role::devel-lib, role::shared-lib
+liblockfile-dev: devel::library, role::devel-lib
+liblockfile-simple-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+liblockfile1: devel::library, role::shared-lib
+liblog-agent-logger-perl: admin::logging, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::logfile
+liblog-agent-perl: admin::logging, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::logfile
+liblog-agent-rotate-perl: admin::logging, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::logfile
+liblog-dispatch-perl: admin::logging, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::logfile
+liblog-log4perl-perl: admin::logging, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::logfile
+liblog-loglite-perl: admin::logging, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::logfile
+liblog-tracemessages-perl: devel::debugger, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+liblog4cpp-dev: devel::lang:c++, devel::library, role::devel-lib
+liblog4cpp-doc: admin::logging, devel::doc, devel::lang:c++, devel::library, made-of::data:html, role::documentation, works-with::logfile
+liblog4cpp1c102: devel::lang:c++, special::not-yet-tagged, special::not-yet-tagged::l
+liblog4cpp4: role::shared-lib
+liblog4cpp4-dev: devel::library
+liblog4cxx9-dev: devel::lang:c++, devel::library, role::devel-lib
+liblog4cxx9-doc: role::documentation
+liblog4cxx9c2a: devel::lang:c++, role::shared-lib
+liblog4j1.2-java: admin::logging, devel::lang:java, devel::library, implemented-in::java, works-with::logfile
+liblog4j1.2-java-doc: admin::logging, devel::doc, devel::lang:java, devel::library, made-of::data:html, role::documentation, special::not-yet-tagged, special::not-yet-tagged::l, works-with::logfile
+liblog4net1.2-cil: admin::logging, devel::ecma-cli, devel::lang:c-sharp, devel::runtime, role::devel-lib, works-with::logfile
+liblog4r-ruby: admin::logging, devel::lang:ruby, devel::library, implemented-in::ruby, special::not-yet-tagged, special::not-yet-tagged::l, works-with::logfile
+liblog4r-ruby1.8: admin::logging, devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, works-with::logfile
+liblogfile-rotate-perl: admin::logging, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::compressing, works-with::logfile
+liblogkit-java: admin::logging, devel::lang:java, devel::library, implemented-in::java, works-with::logfile
+libloki-dev: devel::lang:c++, devel::library, role::devel-lib
+libloki0.1.5: role::shared-lib
+libloudmouth1-0: devel::lang:c, implemented-in::c, protocol::jabber, protocol::ssl, role::shared-lib
+libloudmouth1-0-dbg: devel::library
+libloudmouth1-dev: devel::lang:c, devel::library, implemented-in::c, protocol::jabber, protocol::ssl, role::devel-lib
+liblrdf0: role::shared-lib, works-with-format::xml
+liblrdf0-dev: devel::library, role::devel-lib, works-with-format::xml
+liblscp-dev: devel::library
+libltdl3: devel::library, role::shared-lib
+libltdl3-dev: devel::library, role::devel-lib
+libltt-0.9: admin::kernel, devel::debugger, devel::library, role::shared-lib
+liblttoolbox-1.0-0: role::shared-lib
+liblttoolbox-1.0-0-dev: devel::library
+liblua40: devel::lang:lua, devel::library, implemented-in::lua, role::shared-lib
+liblua40-dev: devel::lang:lua, devel::library, implemented-in::lua, role::devel-lib
+liblua5.1-0: devel::lang:lua, role::shared-lib
+liblua5.1-0-dev: devel::lang:lua, devel::library, role::devel-lib
+liblua5.1-curl-dev: devel::lang:lua, devel::library, protocol::ftp, protocol::ssl, role::devel-lib
+liblua5.1-curl0: role::shared-lib
+liblua5.1-expat-dev: devel::library
+liblua5.1-expat0: role::shared-lib
+liblua5.1-filesystem-dev: devel::library
+liblua5.1-filesystem0: role::shared-lib
+liblua5.1-socket-dev: devel::library
+liblua5.1-socket2: role::shared-lib
+liblua5.1-sql-mysql-dev: devel::library
+liblua5.1-sql-mysql2: role::shared-lib
+liblua5.1-sql-sqlite-dev: devel::library
+liblua5.1-sql-sqlite2: role::shared-lib
+liblua50: devel::lang:lua, implemented-in::lua, role::shared-lib
+liblua50-dev: devel::lang:lua, devel::library, implemented-in::lua, role::devel-lib
+liblua50-socket-dev: devel::library
+liblua50-socket2: role::shared-lib
+liblualib40: devel::lang:lua, devel::library, implemented-in::lua, role::shared-lib, special::auto-inst-parts
+liblualib40-dev: devel::lang:lua, devel::library, implemented-in::lua, role::devel-lib
+liblualib50: devel::lang:lua, implemented-in::lua, role::shared-lib, special::auto-inst-parts
+liblualib50-dev: devel::lang:lua, devel::library, implemented-in::lua, role::devel-lib
+liblucene-java: devel::lang:java, devel::library
+liblucene-java-doc: devel::doc, devel::library, role::documentation
+libluminate-dev: devel::library, role::devel-lib, role::documentation, use::viewing
+libluminate6: special::not-yet-tagged, special::not-yet-tagged::l
+libluminate7: role::shared-lib, uitoolkit::gtk
+liblwp-authen-wsse-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, security::authentication, special::not-yet-tagged, special::not-yet-tagged::l
+liblwp-dev: devel::library
+liblwp-protocol-http-socketunix-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::http, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+liblwp2: role::shared-lib
+liblwres1: devel::library, role::shared-lib
+liblwres9: role::shared-lib
+liblzo-dev: devel::library, role::devel-lib, use::compressing
+liblzo1: devel::library, role::shared-lib, use::compressing
+liblzo2-2: role::shared-lib
+liblzo2-dev: devel::library
+libm17n-0: role::shared-lib
+libm17n-0-dbg: devel::library
+libm17n-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmac-ipod-gnupod-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmacrosystem-dev: devel::library, role::devel-lib
+libmacrosystem0c102: special::not-yet-tagged, special::not-yet-tagged::l
+libmad-ocaml: devel::lang:ocaml, implemented-in::ocaml
+libmad-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libmad0: devel::library, role::shared-lib, works-with-format::mp3, works-with::audio
+libmad0-dev: devel::library, role::devel-lib, works-with-format::mp3, works-with::audio
+libmagic-dev: devel::lang:c, devel::library, role::devel-lib
+libmagic1: role::app-data, role::shared-lib, works-with::file
+libmagick++6: devel::lang:c++, implemented-in::c++, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmagick++6-dev: devel::library, implemented-in::c++, role::devel-lib
+libmagick++9-dev: devel::lang:c++, devel::library, implemented-in::c, implemented-in::c++, role::devel-lib, works-with-format::gif, works-with-format::jpg, works-with-format::png, works-with-format::svg, works-with-format::tiff, works-with::image, works-with::image:raster, works-with::image:vector
+libmagick++9c2a: devel::lang:c++, devel::library, implemented-in::c++, role::shared-lib, works-with::image, works-with::image:raster
+libmagick6: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmagick6-dev: devel::library, role::devel-lib
+libmagick9: role::shared-lib
+libmagick9-dev: devel::library
+libmagma-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmagma1: devel::library
+libmail-audit-perl: devel::lang:perl, devel::library, implemented-in::perl, mail::filters, works-with::mail
+libmail-box-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::mail
+libmail-bulkmail-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::mail
+libmail-cclient-perl: devel::lang:perl, devel::library, network::client, protocol::imap, protocol::pop3, role::program, works-with::mail
+libmail-dkim-perl: devel::lang:perl, devel::library, implemented-in::perl, mail::filters, mail::smtp, protocol::smtp, role::shared-lib, security::authentication, security::cryptography, security::integrity, use::checking, works-with::mail, works-with::unicode
+libmail-gnupg-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmail-imapclient-perl: devel::lang:perl, devel::library, implemented-in::perl, network::client, protocol::imap, role::devel-lib, role::shared-lib, works-with::mail
+libmail-listdetector-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmail-mbox-messageparser-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmail-mboxparser-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmail-milter-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmail-pop3client-perl: devel::lang:perl, devel::library, implemented-in::perl, network::client, protocol::pop3, role::program, role::shared-lib, works-with::mail
+libmail-rfc822-address-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmail-sender-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::smtp, role::shared-lib, works-with::mail
+libmail-sendmail-perl: devel::lang:perl, devel::library, implemented-in::perl, mail::smtp, protocol::smtp, role::shared-lib, works-with::mail
+libmail-spf-query-perl: devel::lang:perl, implemented-in::perl, protocol::dns, role::shared-lib
+libmail-srs-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmail-verify-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmail-verp-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmailtools-perl: devel::lang:perl, devel::library, implemented-in::perl, network::client, role::program, role::shared-lib, works-with::mail
+libmailutils-dev: devel::library, suite::gnu
+libmailutils0: devel::lang:c, devel::library, protocol::imap
+libmailutils0-dev: devel::library, role::devel-lib
+libmailutils1: role::shared-lib, suite::gnu
+libmal-dev: devel::library, role::devel-lib
+libmal1: role::shared-lib
+libmalaga-dev: devel::library, role::devel-lib
+libmalaga6: special::not-yet-tagged, special::not-yet-tagged::l
+libmalaga7: role::shared-lib
+libmaloc-dev: devel::library
+libmarc-charset-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmarc-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmarc-record-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmas-dev: devel::library, role::devel-lib
+libmas0: special::not-yet-tagged, special::not-yet-tagged::l
+libmas0c2: role::shared-lib
+libmasonx-interp-withcallbacks-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmasonx-request-withapachesession-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmatchbox-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmatchbox1: hardware::embedded, interface::x11, role::shared-lib
+libmath++-dev: devel::library, implemented-in::c++, role::devel-lib
+libmath++-doc: devel::doc, devel::library, implemented-in::c++, role::documentation
+libmath++0: devel::library, implemented-in::c++
+libmath-basecalc-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libmath-bigint-gmp-perl: devel::lang:perl, implemented-in::perl, special::not-yet-tagged, special::not-yet-tagged::l
+libmath-combinatorics-perl: devel::lang:perl, devel::library, field::mathematics, implemented-in::perl, role::devel-lib, role::shared-lib
+libmath-derivative-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmath-fibonacci-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmath-gmp-perl: devel::lang:perl
+libmath-nocarry-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmath-numbercruncher-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libmath-randomorg-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmath-round-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libmath-spline-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmath-vec-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmath3d-0.3-0: devel::library, field::mathematics
+libmath3d-dev: devel::library, field::mathematics, role::devel-lib
+libmatheval1: role::shared-lib, suite::gnu
+libmatheval1-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l, suite::gnu
+libmathlib1: special::not-yet-tagged, special::not-yet-tagged::l
+libmathlib1-dev: devel::library
+libmathlib2: role::shared-lib
+libmathlib2-dev: devel::library, role::devel-lib
+libmatrixssl1.2: protocol::ssl, special::not-yet-tagged, special::not-yet-tagged::l
+libmatrixssl1.2-dev: devel::library, protocol::ssl, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmatrixssl1.2-doc: protocol::ssl, role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libmatrixssl1.7: role::shared-lib, security::cryptography
+libmatrixssl1.7-dev: devel::library, security::cryptography
+libmatrixssl1.7-doc: role::documentation, security::cryptography
+libmatroska-dev: devel::library, role::devel-lib
+libmaypole-perl: devel::lang:perl, devel::library, devel::web, implemented-in::perl, role::shared-lib, works-with::db
+libmaypole-plugin-authentication-usersessioncookie-perl: devel::lang:perl, devel::library, implemented-in::perl, role::plugin, role::shared-lib
+libmaypole-plugin-upload-perl: devel::lang:perl, devel::library, implemented-in::perl, role::plugin, role::shared-lib
+libmcal: devel::library
+libmcal0: devel::library, role::shared-lib
+libmcal0-dev: devel::library, role::devel-lib
+libmcardplugin: devel::library, security::cryptography
+libmcrypt-dev: devel::library, role::devel-lib
+libmcrypt4: devel::library, role::shared-lib
+libmd3-1: role::shared-lib
+libmd3-dev: devel::library
+libmd5-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, security::integrity
+libmdbtools: devel::library, role::shared-lib, works-with::db
+libmdc2: role::shared-lib, uitoolkit::gtk
+libmdc2-dev: devel::library, role::devel-lib
+libmdn-perl: devel::lang:perl, devel::library, implemented-in::perl
+libmdnkit-dev: devel::library, role::devel-lib
+libmdnkit9: devel::library
+libmdsp-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libmeanwhile-dev: devel::library
+libmeanwhile1: role::shared-lib
+libmecab-dev: devel::library, role::devel-lib
+libmecab0: special::not-yet-tagged, special::not-yet-tagged::l
+libmecab1: role::shared-lib
+libmed1: role::shared-lib
+libmedc1: role::shared-lib
+libmediastreamer0: role::shared-lib
+libmediastreamer0-dev: devel::library
+libmemcache-dev: devel::library
+libmemcache0: role::shared-lib
+libmercator-0.2-1: special::not-yet-tagged, special::not-yet-tagged::l
+libmercator-0.2-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmeshio-dev: devel::library
+libmeshio0: devel::library
+libmetacity-dev: devel::library, role::devel-lib, uitoolkit::gtk
+libmetacity0: devel::library, role::shared-lib, uitoolkit::gtk
+libmetakit-tcl: role::app-data, special::not-yet-tagged, special::not-yet-tagged::l
+libmetakit2.4.9.3: special::not-yet-tagged, special::not-yet-tagged::l
+libmetakit2.4.9.3-dev: devel::library, role::devel-lib
+libmetakit2.4.9.3c2: role::shared-lib
+libmhash-dev: devel::library, role::devel-lib, security::integrity
+libmhash2: devel::library, role::shared-lib, security::integrity
+libmidi-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, sound::midi
+libmifluz0: devel::library
+libmifluz0-dev: devel::library
+libmikmod2: devel::library, role::shared-lib
+libmikmod2-dev: devel::library, role::devel-lib
+libmilter-dev: devel::library, role::devel-lib, works-with::mail
+libmilter0: role::shared-lib
+libmime-base32-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmime-explode-perl: devel::lang:perl, devel::library, implemented-in::perl, works-with::mail
+libmime-lite-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::mail
+libmime-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::mail
+libmime-types-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::mail
+libmimedir: special::not-yet-tagged, special::not-yet-tagged::l
+libmimedir-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmimedir-gnome0: special::not-yet-tagged, special::not-yet-tagged::l
+libmimedir-gnome0-dev: devel::library, role::devel-lib
+libmimedir-gnome0.3: role::shared-lib
+libmimedir0: role::shared-lib
+libmimelib1-dev: devel::library, role::devel-lib, suite::kde, uitoolkit::qt
+libmimelib1a: special::not-yet-tagged, special::not-yet-tagged::l
+libmimetic-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, works-with::mail
+libmimetic-doc: devel::doc, devel::lang:c++, devel::library, made-of::data:html, role::documentation
+libmimetic0: devel::library, implemented-in::c++, role::shared-lib, works-with::mail
+libminc0: devel::library, role::shared-lib
+libminc0-dev: devel::library, role::devel-lib
+libming0: role::shared-lib
+libminpack1: implemented-in::fortran
+libmisdn-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmissinglib-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libmkdoc-xml-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmlchat-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libmldbm-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libmldbm-sync-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libmlgtk-ocaml: devel::lang:ocaml, devel::library, implemented-in::ocaml, uitoolkit::gtk
+libmlgtk-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib, uitoolkit::gtk
+libmlnlffi-smlnj: special::not-yet-tagged, special::not-yet-tagged::l
+libmlpcap-ocaml: devel::lang:ocaml, implemented-in::ocaml
+libmlpcap-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libmlrisctools-smlnj: special::not-yet-tagged, special::not-yet-tagged::l
+libmm-dev: devel::library, role::devel-lib
+libmm13: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmm14: role::shared-lib
+libmms-dev: devel::library
+libmms0: role::shared-lib
+libmng-dev: devel::library, role::devel-lib, works-with::image, works-with::image:raster
+libmng1: devel::library, role::shared-lib, works-with::image, works-with::image:raster
+libmockobjects-java: devel::lang:java, role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libmockobjects-java-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libmodem-vgetty-perl: devel::lang:perl, hardware::modem, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmodplug-dev: interface::x11, special::not-yet-tagged, special::not-yet-tagged::l
+libmodplug0: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmodplug0c2: role::shared-lib, sound::player, works-with::audio
+libmodule-build-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmodule-corelist-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmodule-depends-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, works-with::software:source
+libmodule-find-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmodule-info-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmodule-install-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmodule-load-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmodule-packaged-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmodule-pluggable-fast-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmodule-pluggable-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmodule-scandeps-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmodule-signature-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libmodule-versions-report-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmodxslt0: special::not-yet-tagged, special::not-yet-tagged::l
+libmodxslt0-dev: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libmoe-dev: devel::library, role::devel-lib
+libmoe1.5: devel::library, role::shared-lib
+libmon-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libmono-corlib1.0-cil: devel::ecma-cli, devel::runtime, role::devel-lib
+libmono-corlib2.0-cil: devel::ecma-cli, devel::lang:c-sharp, devel::runtime, role::devel-lib
+libmono-data-tds1.0-cil: devel::ecma-cli, devel::lang:c-sharp, devel::runtime, role::devel-lib
+libmono-data-tds2.0-cil: devel::ecma-cli, devel::lang:c-sharp, devel::runtime, role::devel-lib
+libmono-dev: devel::interpreter, devel::profiler
+libmono-microsoft-build2.0-cil: devel::ecma-cli, devel::lang:c-sharp, devel::runtime, role::devel-lib
+libmono-peapi1.0-cil: devel::ecma-cli, devel::lang:c-sharp, devel::runtime, role::devel-lib
+libmono-peapi2.0-cil: devel::ecma-cli, devel::lang:c-sharp, devel::runtime, role::devel-lib
+libmono-relaxng1.0-cil: devel::ecma-cli, devel::lang:c-sharp, devel::runtime, role::devel-lib
+libmono-security1.0-cil: devel::ecma-cli, devel::lang:c-sharp, devel::runtime, role::devel-lib
+libmono-security2.0-cil: devel::ecma-cli, devel::lang:c-sharp, devel::runtime, role::devel-lib
+libmono-sharpzip0.84-cil: devel::ecma-cli, devel::lang:c-sharp, role::devel-lib
+libmono-sharpzip2.84-cil: devel::ecma-cli, devel::lang:c-sharp, devel::runtime, role::devel-lib
+libmono-system-data1.0-cil: devel::ecma-cli, devel::lang:c-sharp, devel::runtime, role::devel-lib
+libmono-system-data2.0-cil: devel::ecma-cli, devel::lang:c-sharp, devel::runtime, role::devel-lib
+libmono-system-runtime1.0-cil: devel::ecma-cli, devel::lang:c-sharp, devel::runtime, role::devel-lib
+libmono-system-web1.0-cil: devel::ecma-cli, devel::lang:c-sharp, devel::runtime
+libmono-system-web2.0-cil: devel::ecma-cli, devel::lang:c-sharp, devel::runtime, role::devel-lib
+libmono-system1.0-cil: devel::ecma-cli, devel::lang:c-sharp, devel::runtime, role::devel-lib
+libmono-system2.0-cil: devel::ecma-cli, devel::lang:c-sharp, devel::runtime, role::devel-lib
+libmono-winforms2.0-cil: devel::ecma-cli, devel::lang:c-sharp, devel::runtime, role::devel-lib
+libmono0: devel::ecma-cli, devel::interpreter, devel::profiler, role::shared-lib
+libmono1.0-cil: devel::ecma-cli, devel::lang:c-sharp, devel::runtime, implemented-in::c-sharp, role::devel-lib
+libmono2.0-cil: devel::ecma-cli, devel::lang:c-sharp, devel::runtime, role::devel-lib
+libmoose-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmopac7-0: field::chemistry, field::physics, role::shared-lib
+libmopac7-dev: devel::library, field::chemistry, field::physics
+libmorph: devel::library, role::shared-lib, uitoolkit::gtk, works-with::image, works-with::image:raster
+libmorph-dev: devel::library, role::devel-lib, uitoolkit::gtk, works-with::image, works-with::image:raster
+libmos: special::not-yet-tagged, special::not-yet-tagged::l
+libmos-dev: devel::library, role::devel-lib
+libmotif-dev: devel::library
+libmotif3: devel::library, role::shared-lib
+libmozillainterfaces-java: devel::lang:java, devel::library
+libmozjs-dev: devel::library
+libmozjs0d: devel::interpreter, devel::lang:ecmascript, devel::library, implemented-in::c, role::devel-lib, role::shared-lib
+libmozjs0d-dbg: devel::library
+libmp3-info-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::mp3, works-with::audio
+libmp3-tag-perl: devel::lang:perl, implemented-in::perl, interface::commandline, role::program, role::shared-lib, scope::utility, use::organizing, works-with-format::mp3, works-with::audio
+libmp3hip-dev: devel::library, works-with-format::mp3, works-with::audio
+libmp3hip0: devel::library, works-with-format::mp3, works-with::audio
+libmp3info-ruby1.8: devel::lang:ruby
+libmp3tag-ruby1.6: devel::lang:ruby
+libmp3tag-ruby1.8: devel::lang:ruby
+libmp4-info-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libmpcdec-dev: devel::library, works-with-format::mpc
+libmpcdec3: role::shared-lib, works-with-format::mpc
+libmpd0: role::shared-lib
+libmpeg-dev: devel::library, role::devel-lib, works-with::video
+libmpeg-doc: devel::doc, devel::library, role::documentation, works-with::video
+libmpeg1: devel::library, role::shared-lib, works-with::video
+libmpeg2-4: role::shared-lib, use::playing, works-with::video
+libmpeg2-4-dev: devel::library, role::devel-lib
+libmpeg3-1: devel::library, role::shared-lib
+libmpeg3-dev: devel::library, role::devel-lib
+libmpfi-dev: devel::library
+libmpfr-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmpfr1: role::shared-lib
+libmpich-mpd1.0: special::not-yet-tagged, special::not-yet-tagged::l
+libmpich-mpd1.0-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmpich-mpd1.0c2: role::shared-lib
+libmpich-shmem1.0-dev: devel::library
+libmpich-shmem1.0c2: role::shared-lib
+libmpich1.0: devel::library
+libmpich1.0-dev: devel::library, implemented-in::fortran, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmpich1.0c2: implemented-in::fortran, role::shared-lib
+libmrml0: special::not-yet-tagged, special::not-yet-tagged::l
+libmrml0-dev: devel::library
+libmrml1-dev: devel::library, suite::gnu
+libmrml1c2a: suite::gnu
+libmsgcat-perl: devel::i18n, devel::lang:perl, devel::library, implemented-in::c, implemented-in::perl, role::shared-lib, works-with::text
+libmthca-dev: devel::library
+libmthca1: role::shared-lib
+libmthca1-dbg: devel::library
+libmudflap0: role::shared-lib
+libmudflap0-dev: devel::lang:c, devel::library, implemented-in::c, role::shared-lib
+libmultisync-plugin-all: devel::library
+libmultisync-plugin-backup: devel::library, suite::gnome, uitoolkit::gtk
+libmultisync-plugin-evolution: devel::library, suite::gnome, uitoolkit::gtk
+libmultisync-plugin-irmc: devel::library, suite::gnome, uitoolkit::gtk
+libmultisync-plugin-irmc-bluetooth: devel::library
+libmultisync-plugin-opie: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libmultisync-plugin-palm: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libmultisync-plugin-syncml: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libmusclecard-dev: devel::library
+libmusclecard1: role::shared-lib
+libmusclepkcs11: devel::library, role::shared-lib, security::cryptography
+libmusclepkcs11-dev: devel::library, role::devel-lib, security::cryptography
+libmusicbrainz-client-perl: devel::lang:perl
+libmusicbrainz-queries-perl: devel::lang:perl
+libmusicbrainz-ruby1.8: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l
+libmusicbrainz2: devel::library, role::shared-lib
+libmusicbrainz2-dev: devel::library, role::devel-lib
+libmusicbrainz4: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmusicbrainz4-dev: devel::library, role::devel-lib
+libmusicbrainz4c2a: implemented-in::c++, role::shared-lib, sound::TODO, works-with-format::iso9660, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+libmutexm-ruby1.6: devel::lang:ruby
+libmx4j-java: devel::lang:java, devel::library
+libmxml-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmxml1: role::shared-lib
+libmyodbc: devel::library
+libmyspell-dev: devel::library, role::devel-lib
+libmyspell3: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmyspell3c2: role::shared-lib
+libmysql++-dev: devel::lang:sql, devel::library, works-with::db
+libmysql++2c2a: devel::lang:sql, works-with::db
+libmysql-java: devel::lang:java, devel::library
+libmysql-ocaml: devel::lang:ocaml, devel::lang:sql, implemented-in::ocaml, role::shared-lib, works-with::db
+libmysql-ocaml-dev: devel::lang:ocaml, devel::lang:sql, devel::library, implemented-in::ocaml, role::devel-lib, works-with::db
+libmysql-ruby: devel::lang:ruby, devel::library
+libmysql-ruby1.6: devel::lang:ruby
+libmysql-ruby1.8: devel::lang:ruby
+libmysqlclient10: devel::library
+libmysqlclient10-dev: devel::library, role::devel-lib
+libmysqlclient12: special::not-yet-tagged, special::not-yet-tagged::l
+libmysqlclient12-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmysqlclient14: special::not-yet-tagged, special::not-yet-tagged::l
+libmysqlclient14-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libmysqlclient15-dev: devel::lang:sql, devel::library, protocol::db:mysql, role::devel-lib, works-with::db
+libmysqlclient15off: devel::lang:c, devel::library, protocol::db:mysql, role::shared-lib, works-with::db
+libmythes-dev: devel::library
+libnagios-object-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libnanohttp-dev: devel::library
+libnanohttp1: role::shared-lib
+libnarray-ruby: devel::lang:ruby
+libnarray-ruby1.8: devel::lang:ruby
+libnasl-dev: devel::library, role::devel-lib
+libnasl2: role::shared-lib
+libnautilus-burn-dev: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libnautilus-burn0: special::not-yet-tagged, special::not-yet-tagged::l
+libnautilus-burn3: role::shared-lib, uitoolkit::gtk
+libnautilus-extension-dev: devel::library
+libnautilus-extension1: role::shared-lib, uitoolkit::gtk
+libnautilus2-2: devel::library, suite::gnome, uitoolkit::gtk
+libnautilus2-dev: devel::library, suite::gnome, uitoolkit::gtk
+libnbio0: role::shared-lib
+libnbio2-java: devel::lang:java, devel::library
+libncbi6: devel::library, field::biology, implemented-in::c, role::shared-lib, use::converting, use::searching
+libncbi6-dbg: devel::debugger, devel::library, field::biology, implemented-in::c, role::app-data
+libncbi6-dev: devel::library, field::biology, implemented-in::c, role::devel-lib, use::converting, use::searching
+libncp: devel::library
+libncp-dev: devel::library, role::devel-lib
+libncurses-ruby: devel::lang:ruby, uitoolkit::ncurses
+libncurses-ruby1.8: devel::lang:ruby, implemented-in::ruby, role::shared-lib, uitoolkit::ncurses
+libncurses-ruby1.9: devel::lang:ruby
+libncurses4: devel::library, interface::text-mode, role::shared-lib, uitoolkit::ncurses
+libncurses5: devel::library, interface::text-mode, role::shared-lib, uitoolkit::ncurses
+libncurses5-dbg: devel::debugger, devel::library, interface::text-mode, uitoolkit::ncurses
+libncurses5-dev: devel::library, interface::text-mode, role::devel-lib, uitoolkit::ncurses
+libncursesw5: devel::library, role::shared-lib, uitoolkit::ncurses
+libncursesw5-dbg: devel::debugger, devel::library, uitoolkit::ncurses
+libncursesw5-dev: devel::library, role::devel-lib, uitoolkit::ncurses
+libnecpp-dev: devel::library
+libnecpp0: role::shared-lib
+libneedle-extras-ruby1.8: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l
+libneedle-ruby1.8: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l
+libnekohtml-java: devel::lang:java
+libneon23: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libneon23-dev: devel::library, role::devel-lib
+libneon24: protocol::http, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libneon24-dev: devel::library, role::devel-lib
+libneon25: role::shared-lib
+libneon25-dbg: devel::library
+libneon25-dev: devel::library
+libneon26: role::shared-lib
+libneon26-dbg: devel::library
+libneon26-dev: devel::library
+libneon26-gnutls: protocol::http, protocol::webdav, role::shared-lib
+libneon26-gnutls-dbg: devel::library
+libneon26-gnutls-dev: devel::library
+libnessus-dev: devel::library, role::devel-lib
+libnessus2: role::shared-lib
+libnet-acl-ruby1.6: devel::lang:ruby
+libnet-amazon-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libnet-arp-perl: devel::lang:perl
+libnet-bittorrent-libbt-tracker-perl: devel::lang:perl
+libnet-cidr-lite-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libnet-cidr-perl: devel::lang:perl, implemented-in::perl, protocol::ip, protocol::ipv6, role::shared-lib
+libnet-daemon-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::daemon, role::shared-lib
+libnet-dbus-perl: devel::lang:perl
+libnet-dns-fingerprint-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libnet-dns-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::dns, role::shared-lib
+libnet-domain-tld-perl: devel::lang:perl, implemented-in::perl, protocol::dns, role::shared-lib
+libnet-easytcp-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libnet-finger-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libnet-ftpserver-perl: devel::lang:perl, devel::library, filetransfer::ftp, implemented-in::perl, interface::daemon, network::server, protocol::ftp, role::program, role::shared-lib
+libnet-google-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libnet-hotline-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libnet-ident-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::ident, role::shared-lib
+libnet-ifconfig-wrapper-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libnet-imap-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::imap, role::shared-lib
+libnet-imap-simple-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libnet-imap-simple-ssl-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libnet-ip-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libnet-ipv6addr-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libnet-irc-perl: devel::lang:perl, devel::library, filetransfer::dcc, implemented-in::perl, protocol::irc, role::shared-lib, use::chatting
+libnet-irc-ruby: devel::lang:ruby, devel::library, protocol::irc
+libnet-jabber-loudmouth-perl: devel::lang:perl, devel::library
+libnet-jabber-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libnet-ldap-perl: devel::lang:perl, devel::library, implemented-in::perl, network::client, protocol::ldap, role::shared-lib, works-with::db
+libnet-ldap-server-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libnet-libidn-perl: devel::lang:perl, implemented-in::perl, special::not-yet-tagged, special::not-yet-tagged::l
+libnet-lite-ftp-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libnet-nbname-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libnet-netmask-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::ip, role::shared-lib
+libnet-ntp-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libnet-openid-consumer-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libnet-openid-server-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libnet-patricia-perl: devel::lang:perl, devel::library, implemented-in::perl
+libnet-pcap-perl: devel::lang:perl, devel::library, implemented-in::perl
+libnet-perl: devel::lang:perl, devel::library, implemented-in::perl, mail::pop, mail::smtp, protocol::nntp, protocol::pop3, protocol::smtp, role::shared-lib
+libnet-ph-perl: devel::lang:perl, devel::library, implemented-in::perl, network::client, role::devel-lib, role::shared-lib, special::obsolete, works-with::db
+libnet-ping-external-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libnet-rawip-perl: devel::lang:perl, devel::library, implemented-in::perl
+libnet-rblclient-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libnet-scp-expect-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libnet-scp-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libnet-server-mail-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libnet-server-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libnet-sftp-ruby1.8: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l
+libnet-sident-perl: devel::lang:perl, devel::library, implemented-in::c, implemented-in::perl, protocol::ident, protocol::kerberos, role::devel-lib, role::shared-lib, security::authentication, special::not-yet-tagged, special::not-yet-tagged::l
+libnet-smpp-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libnet-smtp-server-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libnet-smtpauth-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::smtp, role::shared-lib, role::source
+libnet-snmp-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::snmp, role::shared-lib
+libnet-snpp-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libnet-socks-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libnet-ssh-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::ssh, role::shared-lib, security::cryptography, use::login
+libnet-ssh-ruby1.8: devel::lang:ruby, protocol::ssh, special::not-yet-tagged, special::not-yet-tagged::l
+libnet-ssleay-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, security::cryptography
+libnet-subnets-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libnet-tclink-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libnet-telnet-cisco-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libnet-telnet-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::TODO, role::shared-lib, use::login
+libnet-tftp-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libnet-whois-raw-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libnet-whois-ripe-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libnet-xmpp-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libnet-xwhois-perl: devel::lang:perl, implemented-in::perl, network::client, role::shared-lib, use::searching
+libnet-z3950-perl: devel::lang:perl
+libnet0: role::shared-lib, special::obsolete
+libnet0-dev: devel::library, role::devel-lib, special::obsolete
+libnet1: devel::library, role::shared-lib
+libnet1-dev: devel::library, role::devel-lib
+libnet6-1.3-0: role::shared-lib
+libnet6-1.3-0-dbg: devel::library
+libnet6-1.3-dev: devel::library
+libnetaddr-ip-perl: devel::lang:c, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libnetcdf++3: role::shared-lib
+libnetcdf3: implemented-in::fortran, role::shared-lib
+libnetclient-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libnetdude: devel::library, uitoolkit::gtk
+libnetfilter-conntrack-dev: devel::library
+libnetfilter-conntrack1: role::shared-lib
+libnetfilter-conntrack1-dbg: devel::library
+libnetfilter-log-dev: devel::library
+libnetfilter-log1: role::shared-lib
+libnetfilter-log1-dbg: devel::library
+libnetfilter-queue-dev: devel::library
+libnetfilter-queue1: role::shared-lib
+libnetfilter-queue1-dbg: devel::library
+libnetgen-dev: devel::library
+libnetpbm10: devel::library, implemented-in::c, role::shared-lib, special::completely-tagged, use::converting, works-with::image, works-with::image:raster
+libnetpbm10-dev: devel::library, implemented-in::c, role::devel-lib, special::completely-tagged, use::converting, works-with::image, works-with::image:raster
+libnetpbm9: devel::library, implemented-in::c, role::shared-lib, special::completely-tagged, use::converting, works-with::image, works-with::image:raster
+libnetpbm9-dev: devel::library, implemented-in::c, role::devel-lib, special::completely-tagged, use::converting, works-with::image, works-with::image:raster
+libnetserver-generic-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::daemon, network::server, role::program, role::shared-lib
+libnettle-dev: devel::library, role::devel-lib
+libnettle2: role::shared-lib
+libnetwork-ipv4addr-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::ip, role::shared-lib
+libnewlib-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libnewlib-headers: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libnewlib0: role::shared-lib
+libnewmat10: role::shared-lib
+libnewmat10-dev: devel::library
+libnewpki-dev: devel::library
+libnewpki2: role::shared-lib, security::cryptography
+libnews-article-perl: devel::lang:perl, devel::library, implemented-in::perl, network::client, protocol::nntp, role::devel-lib, role::shared-lib
+libnews-newsrc-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::nntp, role::shared-lib
+libnews-nntpclient-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::nntp, role::shared-lib
+libnews-scan-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::nntp, role::shared-lib
+libnewt-dev: devel::library, interface::text-mode, role::devel-lib
+libnewt-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::text-mode
+libnewt-pic: devel::library, interface::text-mode
+libnewt0.51: devel::library, interface::text-mode, role::shared-lib
+libnewt0.52: implemented-in::c, role::shared-lib, uitoolkit::TODO
+libnfnetlink-dev: devel::library
+libnfnetlink1: role::shared-lib
+libnfnetlink1-dbg: devel::library
+libnfsidmap-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libnfsidmap1: special::not-yet-tagged, special::not-yet-tagged::l
+libnfsidmap2: protocol::nfs, role::shared-lib
+libnids-dev: devel::library, role::devel-lib
+libnids1: devel::library, role::shared-lib
+libnids1.20: role::shared-lib
+libnids1.21: role::shared-lib
+libniftiio0: role::shared-lib
+libniftiio0-dev: devel::library
+libnjb-dev: devel::library, role::devel-lib
+libnjb-doc: devel::library, role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libnjb-examples: devel::library, interface::x11
+libnjb-hotplug: special::not-yet-tagged, special::not-yet-tagged::l
+libnjb1: role::shared-lib
+libnjb1-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libnjb1-doc: devel::library, role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libnjb4: special::not-yet-tagged, special::not-yet-tagged::l
+libnjb5: role::shared-lib
+libnkf-perl: devel::lang:perl, devel::library, implemented-in::perl
+libnl-dev: devel::library
+libnl1-pre6: role::shared-lib
+libnm-glib-dev: devel::library
+libnm-glib0: role::shared-lib
+libnm-util-dev: devel::library
+libnm-util0: role::shared-lib
+libnmap-parser-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libnmz7: role::shared-lib
+libnmz7-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libnoise-dev: devel::library
+libnoise0: role::shared-lib
+libnora-ruby1.6: devel::lang:ruby
+libnora-ruby1.8: devel::lang:ruby
+libnotify-bin: interface::commandline, role::program, scope::utility
+libnotify-dev: devel::library
+libnotify1: implemented-in::c, role::shared-lib, uitoolkit::gtk
+libnspr-dev: devel::library, role::devel-lib
+libnspr4: devel::library, role::shared-lib
+libnspr4-0d: role::shared-lib
+libnspr4-0d-dbg: devel::library
+libnspr4-dev: devel::library
+libnss-db: devel::library, role::shared-lib, use::configuring
+libnss-dev: devel::library, role::devel-lib
+libnss-ldap: admin::user-management, devel::library, implemented-in::c, protocol::ldap, role::shared-lib, use::configuring
+libnss-lwres: devel::library, use::configuring
+libnss-mdns: protocol::dns, protocol::ip, role::shared-lib, suite::gnu
+libnss-mysql: devel::library, use::configuring
+libnss-mysql-bg: implemented-in::c, role::plugin, role::shared-lib, security::authentication, works-with::db
+libnss-pgsql1: special::not-yet-tagged, special::not-yet-tagged::l
+libnss3: devel::library, role::shared-lib
+libnss3-0d: role::shared-lib
+libnss3-0d-dbg: devel::library
+libnss3-dev: devel::lang:c, devel::library, implemented-in::c, protocol::ssl, role::devel-lib, security::cryptography
+libnsuml-java: devel::lang:java, devel::library
+libntfs-3g-dev: devel::library
+libntfs-3g0: role::shared-lib
+libntfs-dev: devel::library, role::devel-lib
+libntfs-gnomevfs: special::not-yet-tagged, special::not-yet-tagged::l
+libntfs5: special::not-yet-tagged, special::not-yet-tagged::l
+libntfs9: role::shared-lib
+libntlm0: role::shared-lib
+libntlm0-dev: devel::library
+libnuclient: special::not-yet-tagged, special::not-yet-tagged::l
+libnuma-dbg: devel::library
+libnuma-dev: devel::library
+libnuma1: role::shared-lib
+libnumber-compare-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libnumber-format-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libnumerix-ocaml: devel::lang:ocaml, implemented-in::ocaml
+libnumerix-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib, role::documentation
+libnunit2.2.6-cil: devel::ecma-cli, devel::lang:c-sharp, devel::library, devel::testing-qa, role::devel-lib
+libnurbs++-dev: devel::library, implemented-in::c++, role::devel-lib
+libnurbs++1c102: implemented-in::c++, special::not-yet-tagged, special::not-yet-tagged::l
+libnurbs++1c2: role::shared-lib
+libnws-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libnzb-dev: devel::library
+liboaf-dev: devel::library, devel::rpc, role::devel-lib, suite::gnome, uitoolkit::gtk
+liboaf0: devel::library, devel::rpc, role::shared-lib, suite::gnome, uitoolkit::gtk
+libobby-0.4-0: role::shared-lib
+libobby-0.4-0-dbg: devel::library
+libobby-0.4-dev: devel::library
+libobexftp-dev: devel::library, implemented-in::c, role::devel-lib
+libobjc-lf2: implemented-in::objc, role::shared-lib
+libobjc-lf2-dev: devel::lang:objc, devel::library, implemented-in::objc
+libobjc1: devel::lang:objc, devel::library, implemented-in::objc, role::shared-lib, suite::gnu
+libobject-multitype-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libobject-realize-later-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libobject-signature-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libocamlcvs-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libocamlgraph-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libocamlgsl-ocaml: devel::lang:ocaml, implemented-in::ocaml
+libocamlgsl-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libocamlnet-ocaml: devel::lang:ocaml, implemented-in::ocaml, role::shared-lib
+libocamlnet-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libocamlodbc-ocaml-bin: devel::lang:ocaml, implemented-in::ocaml, uitoolkit::gtk
+libocamlodbc-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libocc0: special::not-yet-tagged, special::not-yet-tagged::l
+libocc0-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libocl-argo-java: devel::lang:java, devel::library
+libodbc++-dev: devel::library
+libodbc++4: role::shared-lib
+libodbc-ruby1.6: devel::lang:ruby
+libodbc-ruby1.8: devel::lang:ruby
+libodbcinstq1: devel::library, uitoolkit::qt
+libodbcinstq1c2: role::shared-lib, uitoolkit::qt
+libode0: special::not-yet-tagged, special::not-yet-tagged::l
+libode0-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libode0c2: role::shared-lib
+libofa0: role::shared-lib
+libofa0-dev: devel::library
+libofbis-dev: devel::library, role::devel-lib
+libofbis0: role::shared-lib
+libofx-dev: devel::library, role::devel-lib
+libofx1: special::not-yet-tagged, special::not-yet-tagged::l
+libofx3: role::shared-lib
+libogg-dev: devel::library, role::devel-lib
+libogg-vorbis-decoder-perl: devel::lang:perl, implemented-in::perl
+libogg-vorbis-header-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libogg-vorbis-header-pureperl-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libogg0: devel::library, role::shared-lib
+liboggflac++-dev: devel::library, implemented-in::c++, role::devel-lib
+liboggflac++0c102: devel::library, implemented-in::c++
+liboggflac++2: role::shared-lib
+liboggflac-dev: devel::library, role::devel-lib
+liboggflac1: devel::library, role::shared-lib
+liboggflac3: role::shared-lib
+liboggz1: role::shared-lib
+liboggz1-dbg: devel::debugger, devel::library, special::not-yet-tagged, special::not-yet-tagged::l
+liboggz1-dev: devel::library, role::devel-lib
+libogre-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libogre5: special::not-yet-tagged, special::not-yet-tagged::l
+libogre5-dbg: devel::library, special::not-yet-tagged, special::not-yet-tagged::l
+libogre5c2a-dbg: devel::library
+liboil0.2: special::not-yet-tagged, special::not-yet-tagged::l
+liboil0.2-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+liboil0.3: role::shared-lib
+liboil0.3-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libokey-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libole-storage-lite-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libomnievents: special::not-yet-tagged, special::not-yet-tagged::l
+libomnievents-dbg: devel::library, special::not-yet-tagged, special::not-yet-tagged::l
+libomnievents-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libomniorb4: devel::library, protocol::ssl
+libomniorb4-dev: devel::library, protocol::ssl, role::devel-lib
+libomniorb4c2: role::shared-lib
+libomnithread3: devel::library
+libomnithread3-dev: devel::library, role::devel-lib
+libomnithread3c2: role::shared-lib
+libonig2: role::shared-lib
+liboo2c: devel::library
+libooc-vo: devel::library
+libooc-vo-dev: devel::library, interface::x11, role::devel-lib
+libooc-x11: devel::library, role::shared-lib
+libooc-x11-dev: devel::library, role::devel-lib
+libooc-xml: devel::library
+libooc-xml-dev: devel::library, role::devel-lib
+libooolib-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+liboop-dev: devel::library, role::devel-lib, role::documentation
+liboop-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+liboop4: role::shared-lib
+libopal-2.2.0: role::shared-lib
+libopal-dbg: devel::library
+libopal-dev: devel::library
+libopenafs-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib
+libopenal-dev: devel::library, role::devel-lib
+libopenal0: devel::library, role::shared-lib, uitoolkit::sdl
+libopenal0a: role::shared-lib, works-with::audio
+libopenalpp-cvs: special::not-yet-tagged, special::not-yet-tagged::l
+libopenalpp-cvs-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libopenalpp-cvs1: role::shared-lib
+libopenbabel-dev: devel::library, role::devel-lib
+libopenbabel0: special::not-yet-tagged, special::not-yet-tagged::l
+libopenbabel1: role::shared-lib
+libopencdk-dev: devel::library
+libopencdk4: devel::library
+libopencdk8: role::shared-lib
+libopencdk8-dbg: devel::debugger, devel::library, special::not-yet-tagged, special::not-yet-tagged::l
+libopencdk8-dev: devel::library, role::devel-lib
+libopenct1: role::shared-lib
+libopenct1-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libopenexr-dev: devel::library, role::devel-lib
+libopenexr2: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libopenexr2c2a: role::shared-lib
+libopenft-gift: implemented-in::c
+libopengl-dylan: special::not-yet-tagged, special::not-yet-tagged::l
+libopengl-perl: devel::lang:perl, devel::library, implemented-in::perl
+libopengl-ruby: devel::lang:ruby
+libopenh323-1.15.2: special::not-yet-tagged, special::not-yet-tagged::l
+libopenh323-1.18.0: role::shared-lib
+libopenh323-dbg: devel::debugger, devel::library, protocol::voip
+libopenh323-dev: devel::library, role::devel-lib
+libopenh323-doc: devel::doc, devel::library, role::documentation
+libopenhbci-dev: devel::library
+libopenhbci-plugin-ddvcard: special::not-yet-tagged, special::not-yet-tagged::l
+libopenhbci14: special::not-yet-tagged, special::not-yet-tagged::l
+libopenhpi2: role::shared-lib
+libopenipmi-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libopenipmi0: interface::x11, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::ncurses
+libopenobex-1.0-0: devel::library, role::shared-lib
+libopenobex-1.0-0-dev: devel::library, role::devel-lib
+libopenobex1: filetransfer::TODO, implemented-in::c, protocol::TODO, role::shared-lib
+libopenobex1-dev: devel::library, implemented-in::c, role::shared-lib
+libopensc-openssl: protocol::ssl, special::not-yet-tagged, special::not-yet-tagged::l
+libopensc1: special::not-yet-tagged, special::not-yet-tagged::l
+libopensc1-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libopensc2: role::shared-lib
+libopensc2-dev: devel::library
+libopenscenegraph: field::geography, special::not-yet-tagged, special::not-yet-tagged::l
+libopenscenegraph-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libopenscenegraph4: role::shared-lib
+libopenspc-dev: devel::library, hardware::emulation, role::devel-lib
+libopenspc0: hardware::emulation, role::shared-lib
+libopensrs-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libopenssl-ruby: devel::lang:ruby, devel::library, protocol::ssl, security::cryptography
+libopenssl-ruby1.6: devel::lang:ruby, protocol::ssl
+libopenssl-ruby1.8: devel::lang:ruby, implemented-in::ruby, protocol::ssl, role::shared-lib
+libopenssl-ruby1.9: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l
+libopensync0: role::shared-lib
+libopensync0-dev: devel::library
+libopenthreads: special::not-yet-tagged, special::not-yet-tagged::l
+libopenthreads-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libopenthreads4: role::shared-lib
+libopentoken-dev: devel::library, implemented-in::ada, role::devel-lib
+libopentoken3: special::not-yet-tagged, special::not-yet-tagged::l
+libopentoken3.0b: implemented-in::ada
+libopenvrml-doc: devel::library
+libopenvrml4: special::not-yet-tagged, special::not-yet-tagged::l
+libopenvrml4-dev: devel::library, role::devel-lib
+libopenvrml4-doc: devel::library, role::documentation
+libopenvrml5-dev: devel::library
+libopie-dev: devel::library, role::devel-lib
+liboping-dev: devel::library
+liboping0: role::shared-lib
+liboptions-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+liboptparse-ruby1.6: devel::lang:ruby
+libopts25: role::shared-lib
+libopts25-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+liborange: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+liborange-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+liborange0: role::shared-lib
+liborbit-dev: devel::library, devel::rpc, role::devel-lib
+liborbit0: devel::library, devel::rpc, role::shared-lib
+liborbit2: devel::library, role::shared-lib
+liborbit2-dev: devel::library, devel::rpc, role::devel-lib
+liborbit2cpp-dev: devel::library, role::devel-lib
+liborbit2cpp9: special::not-yet-tagged, special::not-yet-tagged::l
+liboro-java: devel::lang:java, devel::library
+liborsa-doc: devel::doc, field::astronomy, role::documentation
+liborsa0-dev: devel::library, field::physics, implemented-in::c++, role::devel-lib
+liborsa0c2a: implemented-in::c++, role::shared-lib
+libortp0: special::not-yet-tagged, special::not-yet-tagged::l
+libortp0-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libortp5: role::shared-lib
+libortp5-dev: devel::library
+liboscache-java: devel::lang:java, special::not-yet-tagged, special::not-yet-tagged::l
+libosgal-cvs: special::not-yet-tagged, special::not-yet-tagged::l
+libosgal-cvs-dev: devel::library, role::devel-lib, role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libosgal-cvs1: role::shared-lib
+libosgcal: special::not-yet-tagged, special::not-yet-tagged::l
+libosgcal-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libosgcal0: role::shared-lib
+libosip0: special::not-yet-tagged, special::not-yet-tagged::l
+libosip0-dev: devel::library, role::devel-lib
+libosip2-3: role::shared-lib, suite::gnu
+libosip2-dev: devel::library, role::devel-lib, suite::gnu
+libosmesa6: role::shared-lib
+libosmesa6-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libosp-dev: devel::library, role::devel-lib
+libosp4: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libosp5: role::shared-lib
+libossp-sa-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libossp-sa12: role::shared-lib
+libossp-uuid-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libossp-uuid-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libossp-uuid12: special::not-yet-tagged, special::not-yet-tagged::l
+libossp-uuid13: role::shared-lib
+libossp-uuid15: role::shared-lib
+libostyle-dev: devel::library, role::devel-lib
+libostyle1: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libostyle1c2: role::shared-lib
+libotf-bin: role::devel-lib, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l
+libotf-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libotf0: role::shared-lib
+libotf0-dbg: devel::library
+libotp0-kerberos4kth: devel::library, protocol::kerberos
+libotr1: special::not-yet-tagged, special::not-yet-tagged::l
+libotr1-bin: special::not-yet-tagged, special::not-yet-tagged::l
+libotr1-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libotr2: implemented-in::c, role::shared-lib, security::authentication, security::cryptography, security::privacy
+libotr2-bin: implemented-in::c, interface::commandline, role::program, scope::utility, security::authentication, security::cryptography, security::privacy
+libotr2-dev: devel::library, implemented-in::c, role::devel-lib, security::authentication, security::cryptography, security::privacy
+libots-dev: devel::library, role::devel-lib
+libots0: role::app-data, role::shared-lib, works-with::text
+libounit-ocaml-dev: devel::lang:ocaml, implemented-in::ocaml
+libow-util-ant-tasks-java: devel::lang:java, devel::library
+libowfat-dev: devel::library, role::devel-lib
+libp11-0: role::shared-lib
+libp11-0-dbg: devel::library
+libp11-dev: devel::library
+libpacklib1: role::shared-lib
+libpacklib1-dev: devel::library, role::devel-lib
+libpacklib1-lesstif-dev: devel::library
+libpadwalker-perl: devel::lang:perl, implemented-in::perl, special::not-yet-tagged, special::not-yet-tagged::l
+libpalm-perl: culture::japanese, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libpam-ccreds: security::authentication, special::not-yet-tagged, special::not-yet-tagged::l
+libpam-chroot: devel::library, security::authentication
+libpam-cracklib: devel::library, security::authentication, use::configuring
+libpam-devperm: special::not-yet-tagged, special::not-yet-tagged::l
+libpam-doc: devel::doc, devel::library, role::documentation, security::authentication, use::configuring
+libpam-dotfile: devel::library, security::authentication
+libpam-encfs: security::authentication
+libpam-heimdal: admin::login, implemented-in::c, network::client, protocol::kerberos, role::plugin, security::authentication, use::login
+libpam-krb5: admin::login, implemented-in::c, network::client, protocol::kerberos, role::plugin, security::authentication, use::login
+libpam-ldap: devel::library, implemented-in::c, protocol::ldap, role::shared-lib, security::authentication, use::configuring, works-with::db
+libpam-modules: devel::library, role::shared-lib, security::authentication, use::configuring
+libpam-mount: devel::library, implemented-in::c, security::authentication
+libpam-musclecard: devel::library, security::authentication
+libpam-mysql: devel::library, security::authentication, use::configuring
+libpam-ncp: devel::library, security::authentication, use::configuring
+libpam-openafs-kaserver: admin::login, implemented-in::c, network::client, protocol::kerberos, role::plugin, security::authentication, use::login
+libpam-openafs-session: admin::filesystem, admin::login, implemented-in::c, protocol::kerberos, role::plugin, security::authentication, use::login
+libpam-opensc: special::not-yet-tagged, special::not-yet-tagged::l
+libpam-opie: devel::library, security::authentication, use::configuring
+libpam-p11: security::authentication
+libpam-passwdqc: devel::library, security::authentication
+libpam-pgsql: security::authentication, special::not-yet-tagged, special::not-yet-tagged::l
+libpam-poldi: security::authentication
+libpam-pwdfile: devel::library, security::authentication, use::configuring
+libpam-pwgen: devel::library, security::authentication
+libpam-radius-auth: devel::library, protocol::radius, security::authentication, use::configuring
+libpam-runtime: devel::library, role::shared-lib, security::authentication, use::configuring
+libpam-shishi: admin::login, implemented-in::c, network::client, protocol::kerberos, role::plugin, security::authentication, use::login
+libpam-smbpass: devel::library, security::authentication, use::configuring
+libpam-ssh: admin::login, implemented-in::c, interface::daemon, protocol::TODO, protocol::ssh, role::plugin, security::authentication, special::not-yet-tagged, special::not-yet-tagged::l, use::login
+libpam-tmpdir: devel::library, security::authentication, use::configuring
+libpam-umask: security::authentication, special::not-yet-tagged, special::not-yet-tagged::l
+libpam-unix2: security::authentication, special::not-yet-tagged, special::not-yet-tagged::l
+libpam0g: devel::library, role::shared-lib, security::authentication, use::configuring
+libpam0g-dev: devel::library, role::devel-lib, security::authentication, use::configuring
+libpanel-applet2-0: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libpanel-applet2-dbg: devel::debugger, devel::library
+libpanel-applet2-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk
+libpanel-applet2-doc: devel::doc, devel::library, role::documentation, suite::gnome, uitoolkit::gtk
+libpanel-applet2-ruby: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libpanelappletmm-2.6-1: special::not-yet-tagged, special::not-yet-tagged::l
+libpanelappletmm-2.6-1c2: role::shared-lib, uitoolkit::gtk
+libpanelappletmm-2.6-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libpango1-ruby: devel::lang:ruby
+libpango1.0-0: devel::library, role::shared-lib
+libpango1.0-0-dbg: devel::library
+libpango1.0-common: devel::library, role::app-data, special::auto-inst-parts
+libpango1.0-dbg: devel::library
+libpango1.0-dev: devel::library, role::devel-lib
+libpango1.0-doc: devel::doc, devel::library, role::documentation
+libpano12-0: role::shared-lib
+libpano12-bin: interface::commandline, role::program, scope::utility, use::editing, works-with-format::jpg, works-with-format::png, works-with::image, works-with::image:raster
+libpano12-dev: devel::library
+libpantomime1: role::shared-lib
+libpantomime1-dev: devel::library
+libpantomime1.2: role::shared-lib
+libpantomime1.2-dev: devel::library
+libpaper-dev: devel::library, role::devel-lib
+libpaper-utils: devel::library, hardware::printer, role::shared-lib, use::configuring
+libpaper1: devel::library, role::shared-lib
+libpaperg: devel::library, role::dummy, special::obsolete
+libpaperg-dev: devel::library, role::devel-lib, role::dummy, special::obsolete
+libpaps-dev: devel::library
+libpar-dist-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libpar-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libpar2-0: role::shared-lib
+libpar2-0-dev: devel::library
+libparagui1.0: devel::library, role::shared-lib, uitoolkit::sdl
+libparagui1.0-dev: devel::library, role::devel-lib
+libparallel-forkmanager-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libparams-callbackrequest-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libparams-check-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libparams-classify-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libparams-util-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libparams-validate-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libpari-dbg: devel::library
+libpari-dev: devel::library
+libpari1: devel::library, field::mathematics
+libpari1-dev: devel::library, field::mathematics, role::devel-lib
+libpari2-gmp: field::mathematics, role::shared-lib
+libparmetis-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libparmetis3.1: role::shared-lib
+libparportled: devel::library
+libparportled-dev: devel::library, role::devel-lib
+libparrot-dev: devel::library
+libparrot0.4.6: role::shared-lib
+libparse-cpan-packages-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libparse-debian-packages-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libparse-debianchangelog-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, use::converting, works-with::software:package
+libparse-mediawikidump-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::converting, works-with-format::xml, works-with::db, works-with::text
+libparse-plainconfig-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libparse-recdescent-perl: devel::code-generator, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libparse-syslog-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libparse-yapp-perl: devel::code-generator, devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libparted-swig-perl: devel::lang:perl, devel::library
+libparted1.6-12: special::not-yet-tagged, special::not-yet-tagged::l
+libparted1.6-dbg: devel::debugger, devel::library
+libparted1.6-dev: devel::library, role::devel-lib
+libparted1.6-i18n: devel::library
+libparted1.7-1: role::shared-lib, suite::gnu
+libparted1.7-dbg: devel::library, suite::gnu
+libparted1.7-dev: devel::library, suite::gnu
+libparted1.7-i18n: suite::gnu
+libpath-class-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libpaw1: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::motif
+libpaw1-dev: devel::library
+libpawlib2: implemented-in::fortran, role::shared-lib
+libpawlib2-dev: devel::library, implemented-in::fortran
+libpawlib2-lesstif: interface::x11
+libpawlib2-lesstif-dev: devel::library
+libpcap-dev: devel::library, implemented-in::c, role::devel-lib, special::obsolete
+libpcap-ruby1.6: devel::lang:ruby
+libpcap-ruby1.8: devel::lang:ruby
+libpcap0.7: devel::library, role::shared-lib
+libpcap0.7-dev: devel::library, implemented-in::c, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libpcap0.8: implemented-in::c, role::shared-lib
+libpcap0.8-dev: devel::library, implemented-in::c, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libpcd-dev: devel::library, role::devel-lib
+libpcd2: role::shared-lib
+libpci1: role::shared-lib
+libpci2: role::shared-lib, special::obsolete
+libpcl1: role::shared-lib
+libpcl1-dev: devel::library
+libpcmanx-core0: role::shared-lib, uitoolkit::gtk
+libpcre-ocaml: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::shared-lib
+libpcre-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libpcre3: devel::library, role::shared-lib, use::scanning, use::searching
+libpcre3-dev: devel::library, role::devel-lib, use::scanning, use::searching
+libpcrecpp0: role::shared-lib
+libpcsc-perl: devel::lang:perl, devel::library, implemented-in::perl
+libpcsclite-dev: devel::library, role::devel-lib
+libpcsclite1: role::shared-lib
+libpda-pilot-perl: devel::lang:perl, devel::library, hardware::embedded, implemented-in::perl
+libpdf-api2-perl: devel::lang:perl, devel::library, devel::prettyprint, implemented-in::perl, role::shared-lib, use::printing, works-with-format::pdf, works-with::text
+libpdf-create-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libpdf-fdf-simple-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libpdf-report-perl: devel::lang:perl, devel::library, implemented-in::perl, role::devel-lib, role::shared-lib, use::text-formatting, use::typesetting, works-with-format::pdf, works-with::text
+libpdf-table-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libpdfkit0: role::shared-lib
+libpdfkit0-dev: devel::library
+libpdflib804: special::not-yet-tagged, special::not-yet-tagged::l
+libpdflib804-2: field::physics, role::shared-lib
+libpdflib804-2-dev: devel::library, field::physics
+libpdflib804-dev: devel::library
+libpeercast0: role::shared-lib
+libpeercast0-dev: devel::library
+libperl-dev: devel::lang:perl, devel::library, role::devel-lib
+libperl4caml-ocaml: devel::lang:ocaml, implemented-in::ocaml
+libperl4caml-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libperl4caml-ocaml-doc: devel::lang:ocaml, implemented-in::ocaml, role::documentation
+libperl5.8: devel::lang:perl, devel::library, role::shared-lib
+libperl6-export-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libperl6-form-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libperl6-slurp-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libperldoc-search-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libperlio-eol-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libperlio-via-dynamic-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libperlio-via-symlink-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libperlmenu-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libpetal-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libpetsc2.2.0: special::not-yet-tagged, special::not-yet-tagged::l
+libpetsc2.2.0-dbg: devel::library
+libpetsc2.2.0-dev: devel::library, role::devel-lib
+libpetsc2.3.1: role::shared-lib
+libpetsc2.3.1-dbg: devel::library
+libpetsc2.3.1-dev: devel::library
+libpetsc2.3.2: implemented-in::fortran, role::shared-lib
+libpetsc2.3.2-dbg: implemented-in::fortran
+libpetsc2.3.2-dev: implemented-in::fortran
+libpfm3: role::shared-lib
+libpfm3-3.2: role::shared-lib
+libpfm3-3.2-dev: devel::library
+libpfm3-dev: devel::library
+libpfqueue-dev: devel::library
+libpfqueue0: role::shared-lib, uitoolkit::ncurses
+libpg-java: devel::lang:java, devel::lang:sql, works-with::db
+libpg-perl: devel::lang:perl, implemented-in::perl, protocol::db:psql, role::shared-lib, works-with::db
+libpgeasy: devel::library
+libpgeasy-dev: devel::library, role::devel-lib
+libpgjava: devel::lang:java, devel::library
+libpgp-sign-perl: devel::lang:perl, devel::library, implemented-in::perl, role::devel-lib, role::shared-lib, security::cryptography, use::checking
+libpgperl: devel::lang:perl, devel::library
+libpgraphutil-smlnj: special::not-yet-tagged, special::not-yet-tagged::l
+libpgsql-ocaml: devel::lang:ocaml, implemented-in::ocaml
+libpgsql-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml
+libpgsql-ruby: devel::lang:ruby, devel::library, role::metapackage
+libpgsql-ruby1.6: devel::lang:ruby
+libpgsql-ruby1.8: devel::lang:ruby
+libpgtcl: devel::lang:tcl, devel::library, uitoolkit::tk
+libpgtcl-dev: devel::lang:tcl, devel::library
+libpgtcl1.5: devel::lang:sql, role::shared-lib, works-with::db
+libpgtypes2: devel::lang:sql, role::shared-lib, works-with::db
+libphat0: role::shared-lib, uitoolkit::gtk
+libphat0-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libphidgets-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libphidgets0: role::shared-lib
+libphotos202: role::shared-lib
+libphotos202-dev: devel::library, role::devel-lib
+libphp-adodb: devel::lang:php, devel::library
+libphp-diogenes: special::not-yet-tagged, special::not-yet-tagged::l
+libphp-jpgraph: special::not-yet-tagged, special::not-yet-tagged::l
+libphp-jpgraph-examples: special::not-yet-tagged, special::not-yet-tagged::l
+libphp-phplot: devel::library
+libphp-phpmailer: implemented-in::php, mail::transport-agent, protocol::smtp, role::shared-lib, works-with::mail
+libphtools1: special::not-yet-tagged, special::not-yet-tagged::l
+libphtools1-dev: devel::library
+libphtools2: field::physics, role::shared-lib
+libphtools2-dev: devel::library, field::physics
+libphysfs-1.0-0: role::shared-lib
+libphysfs-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libpils-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libpils0: role::shared-lib
+libpisock++0: devel::library, implemented-in::c++, uitoolkit::ncurses
+libpisock-dev: devel::library, implemented-in::c, role::devel-lib, uitoolkit::ncurses
+libpisock8: devel::library, uitoolkit::ncurses
+libpisock9: implemented-in::c, role::shared-lib, works-with::pim, works-with::software:running
+libpisync0: devel::library, implemented-in::c, role::shared-lib, uitoolkit::ncurses
+libpixie-java: devel::lang:java
+libpixman1: role::shared-lib
+libpixman1-dev: devel::library, role::devel-lib
+libpja-java: devel::lang:java, devel::library
+libpja-java-doc: devel::doc, devel::library, role::documentation
+libplexus-utils: special::not-yet-tagged, special::not-yet-tagged::l
+libplot-dev: devel::library, role::devel-lib, suite::gnu, uitoolkit::athena
+libplot-perl: devel::lang:perl, devel::library, implemented-in::perl
+libplot2: devel::library, role::shared-lib, uitoolkit::athena
+libplot2c2: role::shared-lib, suite::gnu
+libplplot-c++9: implemented-in::c++, special::not-yet-tagged, special::not-yet-tagged::l
+libplplot-c++9c2: role::shared-lib, use::viewing
+libplplot-dev: devel::library, role::devel-lib
+libplplot-fortran9: role::shared-lib
+libplplot9: role::shared-lib, use::viewing
+libplrpc-perl: devel::lang:perl, devel::library, devel::rpc, implemented-in::perl, role::shared-lib
+libplucene-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libpmount-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libpmount0.0: role::shared-lib
+libpng-dylan: special::not-yet-tagged, special::not-yet-tagged::l
+libpng-sixlegs-java: devel::lang:java
+libpng10-0: devel::library, role::shared-lib, works-with::image:raster
+libpng10-dev: devel::lang:c, devel::library, role::devel-lib, works-with::image:raster
+libpng12-0: devel::library, role::shared-lib, works-with::image, works-with::image:raster
+libpng12-dev: devel::lang:c, devel::library, role::devel-lib, works-with::image, works-with::image:raster
+libpng2: role::dummy, special::not-yet-tagged, special::not-yet-tagged::l, special::obsolete
+libpng2-dev: devel::library, role::devel-lib, role::dummy, special::not-yet-tagged, special::not-yet-tagged::l, special::obsolete
+libpng3: devel::library, field::mathematics, role::shared-lib
+libpng3-dev: devel::library, role::dummy, special::not-yet-tagged, special::not-yet-tagged::l, special::obsolete
+libpngwriter0: special::not-yet-tagged, special::not-yet-tagged::l
+libpngwriter0-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libpngwriter0c2: role::shared-lib
+libpod-coverage-perl: devel::lang:perl, implemented-in::perl
+libpod-escapes-perl: devel::docsystem, devel::lang:perl, implemented-in::perl, role::shared-lib
+libpod-index-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libpod-pom-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libpod-sax-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libpod-simple-perl: devel::docsystem, devel::lang:perl, implemented-in::perl, role::shared-lib, use::converting, works-with::text
+libpod-tests-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libpoe-component-client-dns-perl: devel::lang:perl, devel::library, implemented-in::perl, network::client, protocol::dns, role::program, role::shared-lib
+libpoe-component-client-http-perl: devel::lang:perl, devel::library, implemented-in::perl, network::client, role::program, role::shared-lib
+libpoe-component-client-ident-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libpoe-component-client-ping-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libpoe-component-irc-perl: devel::lang:perl, devel::library, filetransfer::dcc, implemented-in::perl, protocol::irc, role::shared-lib, use::chatting
+libpoe-component-jabber-perl: devel::lang:perl
+libpoe-component-jobqueue-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libpoe-filter-ircd-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libpoe-filter-xml-perl: devel::lang:perl
+libpoe-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, uitoolkit::gtk
+libpoker-eval: special::not-yet-tagged, special::not-yet-tagged::l
+libpoker-eval-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libpoker3d: special::not-yet-tagged, special::not-yet-tagged::l
+libpolyxmass-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libpolyxmass10: field::chemistry, field::physics, role::shared-lib
+libpolyxmass7: special::not-yet-tagged, special::not-yet-tagged::l
+libpoppler-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libpoppler-glib-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libpoppler-qt-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::qt
+libpoppler0: special::not-yet-tagged, special::not-yet-tagged::l
+libpoppler0-glib: special::not-yet-tagged, special::not-yet-tagged::l
+libpoppler0-qt: special::not-yet-tagged, special::not-yet-tagged::l
+libpoppler0c2: role::shared-lib
+libpoppler0c2-glib: uitoolkit::gtk
+libpoppler0c2-qt: interface::x11
+libpopplerkit-dev: devel::library
+libpopplerkit0: role::shared-lib
+libpopt-dev: devel::library, role::devel-lib
+libpopt0: devel::library, role::shared-lib
+libportaudio-dev: devel::library
+libportaudio0: role::shared-lib
+libportaudio2: role::shared-lib
+libportaudiocpp0: role::shared-lib
+libportmidi-dev: devel::library
+libportmidi0: role::shared-lib
+libposixlock-ruby: devel::lang:ruby
+libposixlock-ruby1.8: devel::lang:ruby
+libpostgis-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libpostgis-java: devel::lang:java, role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libpostgis1-pg74: special::not-yet-tagged, special::not-yet-tagged::l
+libpostgresql-ocaml: devel::lang:ocaml, devel::lang:sql, implemented-in::ocaml, role::shared-lib, works-with::db
+libpostgresql-ocaml-dev: devel::lang:ocaml, devel::lang:sql, devel::library, implemented-in::ocaml, role::devel-lib, works-with::db
+libpostproc-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libpostscript-file-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libpostscript-simple-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libpostscriptbarcode: works-with-format::postscript, works-with::text
+libpowersave-dev: devel::library
+libpowersave10: role::shared-lib
+libppd-dev: devel::library, role::devel-lib
+libppd0: devel::library, hardware::printer, role::shared-lib
+libppi-html-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libppi-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libppi-xs-perl: devel::lang:perl, implemented-in::perl, special::not-yet-tagged, special::not-yet-tagged::l
+libpq-dev: devel::library, role::devel-lib
+libpq3: devel::library
+libpq4: devel::lang:sql, role::shared-lib, works-with::db
+libpqxx-2.4.3: special::not-yet-tagged, special::not-yet-tagged::l
+libpqxx-2.6.8: role::shared-lib
+libpqxx-dev: devel::lang:c, devel::library, role::devel-lib
+libprefork-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libprelude-dev: devel::library, role::devel-lib
+libprelude0: devel::library
+libprelude2: role::shared-lib
+libpreludedb-dev: devel::library
+libpreludedb0: role::shared-lib
+libpri-dev: devel::library, role::devel-lib
+libpri1: special::not-yet-tagged, special::not-yet-tagged::l
+libpri1.2: role::shared-lib
+libprinterconf-dev: devel::library, hardware::printer, role::devel-lib
+libprinterconf0: devel::library
+libprinterconf0c2a: hardware::printer
+libprintsys: devel::library, hardware::printer
+libproc-background-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libproc-daemon-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libproc-dev: devel::library, role::devel-lib
+libproc-invokeeditor-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libproc-pid-file-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libproc-process-perl: devel::lang:perl, devel::library, implemented-in::perl
+libproc-syncexec-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libproc-waitstat-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libproducer: special::not-yet-tagged, special::not-yet-tagged::l
+libproducer-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libproducer4: role::shared-lib
+libprogressbar-ruby1.6: devel::lang:ruby
+libprogressbar-ruby1.8: devel::lang:ruby
+libprpc-perl: devel::lang:perl, devel::library, devel::rpc, implemented-in::perl, role::shared-lib
+libpsiconv-dev: devel::library, role::devel-lib
+libpsiconv5: special::not-yet-tagged, special::not-yet-tagged::l
+libpsiconv6: role::shared-lib
+libpsp-html-parser-perl: devel::lang:perl, devel::library, implemented-in::perl, works-with-format::html, works-with::text
+libpsp-parser-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libpsp-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::daemon, role::shared-lib
+libpspell-dev: devel::library, role::devel-lib
+libpstoedit-dev: devel::library, implemented-in::c++, role::devel-lib
+libpstoedit0: devel::library, role::shared-lib
+libpstoedit0c2a: implemented-in::c++, role::shared-lib, use::converting, works-with-format::postscript
+libpstreams-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libpsys-dev: devel::library, role::devel-lib
+libpsys1: devel::library
+libpt-1.10.0: role::shared-lib
+libpt-1.8.3: special::not-yet-tagged, special::not-yet-tagged::l
+libpt-dbg: devel::library, interface::x11
+libpt-dev: devel::library, interface::x11, role::devel-lib
+libpt-doc: devel::doc, devel::library, role::documentation
+libpt-plugins-alsa: special::not-yet-tagged, special::not-yet-tagged::l
+libpt-plugins-avc: special::not-yet-tagged, special::not-yet-tagged::l
+libpt-plugins-dc: special::not-yet-tagged, special::not-yet-tagged::l
+libpt-plugins-oss: special::not-yet-tagged, special::not-yet-tagged::l
+libpt-plugins-v4l: special::not-yet-tagged, special::not-yet-tagged::l
+libpt-plugins-v4l2: role::shared-lib
+libpth-dbg: devel::debugger, devel::library
+libpth-dev: devel::library, role::devel-lib, suite::gnu
+libpth-prof: devel::library
+libpth2: devel::library
+libpth20: role::shared-lib, suite::gnu
+libpthread-dev: devel::library, suite::gnu
+libpthread20: role::shared-lib, suite::gnu
+libpty-ruby: devel::lang:ruby, devel::library
+libpty-ruby1.6: devel::lang:ruby
+libpulse-dev: devel::library
+libpulse0: role::shared-lib
+libpvm3: devel::library, role::shared-lib
+libpxp-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libpythonize0: role::shared-lib
+libpythonize0-dev: devel::library
+libqalculate-dev: devel::library
+libqalculate3: role::shared-lib
+libqbanking4: role::shared-lib, uitoolkit::qt
+libqca1: special::not-yet-tagged, special::not-yet-tagged::l
+libqca1c2: role::shared-lib, uitoolkit::qt
+libqcad0: special::not-yet-tagged, special::not-yet-tagged::l
+libqcad0-dev: interface::x11, special::not-yet-tagged, special::not-yet-tagged::l
+libqd-dev: devel::library
+libqdbm++-dev: devel::library
+libqdbm-dev: devel::library
+libqdbm-java: devel::lang:java
+libqdbm-perl: devel::lang:perl
+libqdbm-ruby1.8: devel::lang:ruby
+libqdbm14: role::shared-lib
+libqdbm3++c2: role::shared-lib
+libqgis0: uitoolkit::qt
+libqgis0-dev: uitoolkit::qt
+libqglviewer-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libqglviewer1: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::qt
+libqhull-dev: devel::library, role::devel-lib
+libqhull5: role::shared-lib
+libqof-0.5.0-1: special::not-yet-tagged, special::not-yet-tagged::l
+libqof-0.5.0-1-dbg: devel::library, special::not-yet-tagged, special::not-yet-tagged::l
+libqof-backend-qsf0: implemented-in::c, interface::special:not-applicable, role::plugin, special::completely-tagged, use::converting, works-with-format::xml, works-with::file, works-with::pim
+libqof-backend-sqlite0: devel::lang:sql, implemented-in::c, interface::special:not-applicable, role::plugin, special::completely-tagged, use::converting, works-with::db
+libqof-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib, works-with::software:source
+libqof-doc: devel::doc, devel::lang:c, made-of::data:html, role::documentation
+libqof1: devel::lang:c, devel::library, implemented-in::c, role::devel-lib, role::shared-lib, use::converting, use::organizing, use::searching, use::storing, use::synchronizing
+libqof1-dbg: devel::debugger, devel::lang:c, devel::library, implemented-in::c, role::devel-lib
+libqscintilla-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, role::documentation, uitoolkit::qt
+libqscintilla-doc: devel::doc, devel::library, made-of::data:html, role::documentation
+libqscintilla5: special::not-yet-tagged, special::not-yet-tagged::l
+libqscintilla6: devel::lang:c++, implemented-in::c++, role::shared-lib, uitoolkit::qt
+libqssl-dev: devel::library, protocol::ssl, role::devel-lib
+libqssl2c102: protocol::ssl, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::qt
+libqt-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, uitoolkit::qt
+libqt0-ruby1.8: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::qt
+libqt3-compat-headers: devel::library, interface::x11, role::devel-lib, uitoolkit::qt
+libqt3-dev: devel::library, role::devel-lib, uitoolkit::qt
+libqt3-headers: devel::lang:c, devel::library, role::devel-lib, uitoolkit::qt
+libqt3-i18n: devel::library, uitoolkit::qt
+libqt3-java: devel::lang:java, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::qt
+libqt3-jni: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::qt
+libqt3-mt: interface::x11, role::shared-lib, scope::utility, uitoolkit::qt, x11::library
+libqt3-mt-dev: devel::library, role::devel-lib, uitoolkit::qt
+libqt3-mt-ibase: uitoolkit::qt
+libqt3-mt-mysql: interface::x11, uitoolkit::qt
+libqt3-mt-odbc: uitoolkit::qt
+libqt3-mt-psql: uitoolkit::qt
+libqt3-mt-sqlite: uitoolkit::qt
+libqt3c102: devel::library
+libqt3c102-ibase: special::not-yet-tagged, special::not-yet-tagged::l
+libqt3c102-mt: devel::library, role::shared-lib, uitoolkit::qt
+libqt3c102-mt-ibase: special::not-yet-tagged, special::not-yet-tagged::l
+libqt3c102-mt-mysql: devel::library, uitoolkit::qt
+libqt3c102-mt-odbc: devel::library, uitoolkit::qt
+libqt3c102-mt-psql: devel::library, uitoolkit::qt
+libqt3c102-mt-sqlite: special::not-yet-tagged, special::not-yet-tagged::l
+libqt3c102-mysql: devel::library, uitoolkit::qt
+libqt3c102-odbc: devel::library, uitoolkit::qt
+libqt3c102-psql: devel::library, uitoolkit::qt
+libqt3c102-sqlite: special::not-yet-tagged, special::not-yet-tagged::l
+libqt4-core: implemented-in::c++, role::shared-lib, uitoolkit::qt
+libqt4-dev: devel::library, role::devel-lib
+libqt4-gui: devel::lang:c++, devel::library, devel::ui-builder, implemented-in::c++, interface::x11, role::shared-lib, uitoolkit::qt
+libqt4-qt3support: implemented-in::c++, role::shared-lib, uitoolkit::qt
+libqt4-ruby: devel::lang:ruby, role::shared-lib, uitoolkit::qt
+libqt4-ruby1.8: devel::lang:ruby, devel::library, implemented-in::c++, implemented-in::ruby, role::shared-lib, uitoolkit::qt
+libqt4-sql: implemented-in::c++, role::shared-lib, uitoolkit::qt
+libqthreads-12: devel::library, role::shared-lib
+libqttestrunner1: special::not-yet-tagged, special::not-yet-tagged::l
+libqttestrunner1c2a: uitoolkit::qt
+libquantlib-0.3.13: role::shared-lib
+libquantlib-0.3.14: role::shared-lib
+libquantlib0: devel::library, field::finance
+libquantlib0-dev: devel::library, field::finance, role::devel-lib, role::documentation
+libquantum-dev: devel::library
+libquantum-entanglement-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libquantum-superpositions-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libquantum3: role::shared-lib
+libquicktime-dev: devel::library, role::devel-lib
+libquicktime0: interface::x11, role::shared-lib
+libquicktime1: devel::library, role::shared-lib
+libquota-perl: devel::lang:perl, devel::library, devel::rpc, implemented-in::perl
+libqwt-dev: devel::library, role::devel-lib, role::documentation, uitoolkit::qt
+libqwt-doc: devel::doc, devel::library, role::documentation
+libqwt4: special::not-yet-tagged, special::not-yet-tagged::l
+libqwt4c2: role::shared-lib, uitoolkit::qt
+libracc-runtime-ruby: devel::lang:ruby
+libracc-runtime-ruby1.6: devel::lang:ruby
+libradius1: devel::library, protocol::radius, role::shared-lib, security::authentication
+libradius1-dev: devel::library, protocol::radius, role::devel-lib, security::authentication
+libradiusclient-ng-dev: devel::library
+libradiusclient-ng2: role::shared-lib
+librainbow-dev: special::not-yet-tagged, special::not-yet-tagged::l
+librainbow0: special::not-yet-tagged, special::not-yet-tagged::l
+librainbow0c2: role::shared-lib, suite::gnome
+libranlip-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libranlip1: special::not-yet-tagged, special::not-yet-tagged::l
+libranlip1c2: role::shared-lib
+librapi2: role::shared-lib
+librapi2-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+librapi2-tools: special::not-yet-tagged, special::not-yet-tagged::l
+libraptor1: role::shared-lib
+libraptor1-dev: devel::library, role::devel-lib
+librasqal0: role::shared-lib
+librasqal0-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libraw1394-5: devel::library, role::shared-lib
+libraw1394-8: role::shared-lib
+libraw1394-dev: devel::library, role::devel-lib
+librcov-ruby1.8: devel::lang:ruby
+librcs-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+librd-html-ext-ruby1.8: devel::lang:ruby
+librd-ruby1.6: devel::lang:ruby
+librd-ruby1.8: devel::lang:ruby
+librdf-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+librdf-ruby: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l
+librdf0: role::shared-lib
+librdf0-dev: devel::library, role::devel-lib
+libreadline-java: devel::lang:java, devel::library, uitoolkit::ncurses
+libreadline-java-doc: devel::doc, devel::lang:java, devel::library, role::documentation
+libreadline-ruby: devel::lang:ruby, devel::library
+libreadline-ruby1.6: devel::lang:ruby, uitoolkit::ncurses
+libreadline-ruby1.8: devel::lang:ruby, implemented-in::ruby, role::shared-lib, uitoolkit::ncurses
+libreadline-ruby1.9: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::ncurses
+libreadline4: devel::library, interface::shell, role::shared-lib, uitoolkit::ncurses
+libreadline4-dbg: devel::debugger, devel::library, interface::shell
+libreadline4-dev: devel::library, interface::shell, role::devel-lib
+libreadline5: role::shared-lib, suite::gnu, uitoolkit::ncurses
+libreadline5-dbg: devel::debugger, devel::library, special::not-yet-tagged, special::not-yet-tagged::l, suite::gnu
+libreadline5-dev: devel::library, role::devel-lib, suite::gnu, uitoolkit::ncurses
+librecode-dev: devel::library, role::devel-lib
+librecode0: devel::library, role::shared-lib
+libredcloth-ruby: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l
+libredcloth-ruby1.8: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l
+libregex0: devel::library, use::scanning, use::searching
+libregex0-altdev: devel::library, use::scanning, use::searching
+libregexp-common-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libregexp-java: devel::lang:java, devel::library
+libregexp-pp-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libregexp-shellish-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, use::searching, works-with::text
+libregexx-dev: devel::library, role::devel-lib, use::scanning, use::searching
+libregexx1c102: special::not-yet-tagged, special::not-yet-tagged::l
+libreiser4-dev: devel::library, role::devel-lib, uitoolkit::ncurses
+libreiserfs0.3-0: devel::library, role::shared-lib
+libreiserfs0.3-dbg: devel::debugger, devel::library
+libreiserfs0.3-dev: devel::library, role::devel-lib
+librelaxng-datatype-java: devel::lang:java, special::not-yet-tagged, special::not-yet-tagged::l
+libremctl-dev: devel::lang:c, devel::library, implemented-in::c, network::client, protocol::kerberos, role::devel-lib, security::authentication, security::cryptography
+libremctl1: implemented-in::c, network::client, protocol::kerberos, role::shared-lib, security::authentication, security::cryptography
+librenaissance0: role::shared-lib
+librenaissance0-dev: devel::library
+librep-dev: devel::lang:lisp, devel::library, role::devel-lib
+librep9: devel::lang:lisp, devel::library, role::shared-lib, uitoolkit::ncurses
+libreport-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libresid-builder-dev: devel::library, role::devel-lib
+libresid-builder0: devel::library
+libresmgr-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libresmgr1: special::not-yet-tagged, special::not-yet-tagged::l
+libreturn-value-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+librexml-ruby: devel::lang:ruby, devel::library, implemented-in::ruby
+librfilter-ruby1.6: devel::lang:ruby
+librfilter-ruby1.8: devel::lang:ruby, role::documentation, works-with::mail
+librio500-dev: devel::library
+librlog-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+librlog1: special::not-yet-tagged, special::not-yet-tagged::l
+librmagick-ruby: devel::lang:ruby, role::documentation
+librmagick-ruby-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+librmagick-ruby1.8: devel::lang:ruby
+librmail-ruby-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+librmail-ruby1.6: devel::lang:ruby
+librmail-ruby1.8: devel::lang:ruby, works-with::mail
+libroboradio-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libroboradio0: special::not-yet-tagged, special::not-yet-tagged::l
+libroboradio0c2: role::shared-lib
+libroken16-heimdal: protocol::kerberos, role::shared-lib, security::authentication, security::cryptography
+libroken16-kerberos4kth: devel::library, protocol::kerberos
+libroman-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libromana-perligata-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libromkan-ruby: devel::lang:ruby, devel::library
+libromkan-ruby1.8: devel::lang:ruby
+libropkg-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+librote-dev: devel::library, uitoolkit::ncurses
+librote0: role::shared-lib, uitoolkit::ncurses
+libroxen-123session: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-adbanner: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-asis: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-calculator: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-calendar: devel::library, interface::daemon, network::server, suite::roxen, works-with::pim
+libroxen-cloakingdevice: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-columnify: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-deepleap: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-diary: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-dirlist: devel::library, suite::roxen
+libroxen-disclaimer: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-discussit: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-ecms: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-errormessage: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-expires: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-explaindir: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-faq: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-finder: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-flash2: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-floatingcode: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-footnote: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-form: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-graphicalcounter: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-group: devel::library, suite::roxen
+libroxen-guestbook: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-hubbethrottle: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-ics: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-imho: devel::library, interface::daemon, network::server, protocol::imap, suite::roxen, works-with::mail
+libroxen-jsredirect: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-layout: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-linkif: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-logsql: special::not-yet-tagged, special::not-yet-tagged::l, suite::roxen
+libroxen-mail: devel::library, interface::daemon, network::server, suite::roxen, works-with::mail
+libroxen-mailcloak: special::not-yet-tagged, special::not-yet-tagged::l, suite::roxen
+libroxen-mailform: devel::library, interface::daemon, network::server, protocol::http, protocol::smtp, suite::roxen, works-with::mail
+libroxen-mailit: devel::library, interface::daemon, mail::smtp, network::server, protocol::http, protocol::smtp, suite::roxen, works-with::mail
+libroxen-meta: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-ntuserauth: devel::lang:pike, devel::library, implemented-in::c, implemented-in::pike, interface::daemon, network::server, protocol::smb, security::authentication, suite::roxen
+libroxen-outline: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-path: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-photoalbum: devel::library, interface::daemon, network::server, suite::roxen, works-with::image
+libroxen-pop3: devel::library, interface::daemon, mail::pop, network::server, protocol::pop3, suite::roxen, works-with::mail
+libroxen-popdrop: devel::library, interface::daemon, mail::pop, network::server, protocol::pop3, suite::roxen, works-with::mail
+libroxen-presentit: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-pressrelease: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-pretoggle: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-programcache: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-randomfile: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-referrerdeny: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-remoteuser: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-roxpoll: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-safequote: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-secureinsert: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-sexybody: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-simplenews: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-smbauth: devel::library, interface::daemon, network::server, protocol::smb, suite::roxen
+libroxen-sqlcounter: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-sqlextras: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-stripper: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-swarm: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-switch: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-telnetproxy: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-templatefs: devel::library, suite::roxen
+libroxen-tex: devel::library, interface::daemon, network::server, suite::roxen, works-with-format::tex, works-with::text
+libroxen-thumbnail: devel::library, interface::daemon, network::server, suite::roxen, works-with::image
+libroxen-thumbview: devel::library, interface::daemon, network::server, suite::roxen, works-with-format::html, works-with::image
+libroxen-tokenfs: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-trimpath: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-watchdog: devel::library, interface::daemon, network::server, suite::roxen
+libroxen-webmail: devel::library, interface::daemon, network::server, suite::roxen, works-with::mail
+libroxen-xmlrpc-caudium: devel::library, suite::roxen
+libroxen-xmlrpc-common: devel::library, special::auto-inst-parts, suite::roxen
+libroxen-xmlrpc-roxen: devel::library, suite::roxen
+libroxen-xmlutils: devel::library, interface::daemon, network::server, suite::roxen, works-with-format::html, works-with-format::xml
+libroxen-zopegw: devel::library, suite::roxen, suite::zope
+libroy-dev: devel::library, role::devel-lib
+libroy1: role::shared-lib
+libroy1-dbg: devel::debugger, devel::library
+libroy1-prof: devel::library
+librpc-ocaml-dev: devel::lang:ocaml, devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::ncurses
+librpc-xml-perl: devel::lang:perl, devel::library, devel::rpc, implemented-in::perl, protocol::xmlrpc, role::devel-lib, role::shared-lib
+librpc2-4: role::shared-lib
+librpc2-dev: devel::library
+librpcsecgss-dev: devel::library
+librpcsecgss3: role::shared-lib
+librplay3: devel::library, role::shared-lib
+librplay3-dev: devel::library, role::devel-lib
+librpm-dev: devel::library, role::devel-lib
+librpm4: devel::library, role::shared-lib
+librra0: role::shared-lib
+librra0-dev: devel::library, role::devel-lib
+librra0-tools: special::not-yet-tagged, special::not-yet-tagged::l
+librrd0: devel::library, role::shared-lib, use::storing
+librrd0-dev: devel::library, role::devel-lib, use::storing
+librrd2: role::shared-lib
+librrd2-dev: devel::library
+librrdp-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::storing
+librrds-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::storing
+librss1: role::shared-lib, uitoolkit::qt
+librss1-dev: devel::library, role::devel-lib
+librsskit0: role::shared-lib
+librsskit0-dev: devel::library
+librsvg2-2: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk, works-with-format::svg, works-with::image, works-with::image:vector
+librsvg2-bin: interface::commandline, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::converting, use::viewing, works-with-format::svg, works-with::image, works-with::image:vector, x11::application
+librsvg2-common: devel::library, role::shared-lib, special::auto-inst-parts, suite::gnome, uitoolkit::gtk
+librsvg2-dev: devel::library, role::devel-lib, uitoolkit::gtk
+librsvg2-ruby: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+librsync-dev: devel::library, role::devel-lib
+librsync1: devel::library, role::shared-lib, works-with::file
+librtf-document-perl: devel::lang:perl, devel::library, implemented-in::perl, role::documentation, role::shared-lib
+librubilicious-ruby1.8: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l
+libruby: devel::lang:ruby, devel::library
+libruby1.6: devel::lang:ruby, devel::library
+libruby1.6-dbg: special::not-yet-tagged, special::not-yet-tagged::l
+libruby1.8: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, uitoolkit::ncurses
+libruby1.8-dbg: devel::library
+libruby1.9: role::shared-lib, uitoolkit::ncurses
+libruby1.9-dbg: devel::library, special::not-yet-tagged, special::not-yet-tagged::l
+librudiments-dev: devel::library
+librudiments0-dev: devel::library
+librudiments0-doc: devel::doc, devel::library, role::documentation
+librudiments0.29: role::shared-lib
+librudiments0c102: special::not-yet-tagged, special::not-yet-tagged::l
+libruli-bin: devel::library, special::not-yet-tagged, special::not-yet-tagged::l
+libruli3: special::not-yet-tagged, special::not-yet-tagged::l
+libruli3-dev: devel::library, special::not-yet-tagged, special::not-yet-tagged::l
+libruli4: role::shared-lib
+libruli4-dev: devel::library
+librvm-dev: devel::library
+librvm1: role::shared-lib
+librxp1: devel::library, role::shared-lib
+librxp1-dev: devel::library, role::devel-lib
+librxtx-java: devel::lang:java, special::not-yet-tagged, special::not-yet-tagged::l
+libs11n-dev: devel::library, role::devel-lib
+libs11n-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libs11n0: special::not-yet-tagged, special::not-yet-tagged::l
+libsablevm-classlib1-java: devel::lang:java, devel::library
+libsablevm-native1: devel::library, role::shared-lib, uitoolkit::gtk
+libsablevm1: devel::library, role::shared-lib, uitoolkit::gtk
+libsablevm1-dev: devel::library, role::devel-lib
+libsablot0: role::shared-lib
+libsablot0-dev: devel::library, role::devel-lib
+libsablot0c102: devel::library
+libsafe: devel::library
+libsafe-hole-perl: devel::lang:perl, devel::library, implemented-in::perl
+libsage-0.1: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::sdl
+libsage-dev: devel::library, role::devel-lib
+libsage0: role::shared-lib
+libsaml-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, security::authentication, works-with-format::xml
+libsaml5: implemented-in::c++, role::shared-lib, security::authentication, works-with-format::xml
+libsamplerate0: devel::library, role::shared-lib
+libsamplerate0-dev: devel::library, role::devel-lib
+libsane: devel::library, role::shared-lib, works-with::image, works-with::image:raster
+libsane-dbg: devel::library
+libsane-dev: devel::library, role::devel-lib, works-with::image, works-with::image:raster
+libsane-extras: devel::library
+libsane-extras-dbg: devel::library
+libsane-extras-dev: devel::library, role::devel-lib
+libsapdbc-java: devel::lang:java
+libsapdbc7.5.01-java: devel::lang:java
+libsary-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libsary-ruby1.8: devel::lang:ruby
+libsary10: role::shared-lib
+libsasl2: devel::library, role::shared-lib, security::authentication
+libsasl2-2: role::shared-lib, security::authentication
+libsasl2-2-dev: devel::library
+libsasl2-dev: devel::library, role::devel-lib, security::authentication
+libsasl2-gssapi-mit: devel::library, security::authentication
+libsasl2-krb4-mit: devel::library, protocol::kerberos, security::authentication
+libsasl2-modules: devel::library, role::shared-lib, security::authentication
+libsasl2-modules-gssapi-heimdal: devel::library, security::authentication
+libsasl2-modules-kerberos-heimdal: devel::library, protocol::kerberos, security::authentication
+libsasl2-modules-sql: special::not-yet-tagged, special::not-yet-tagged::l
+libsaxon-java: devel::lang:java, devel::library, works-with-format::xml:xslt
+libsaxon-java-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libsaxpath-java: devel::lang:java
+libsc-dev: devel::library, role::devel-lib
+libsc-doc: devel::doc, devel::library, role::documentation
+libsc6: special::not-yet-tagged, special::not-yet-tagged::l
+libsc7: role::shared-lib
+libscalar-properties-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libscam1: special::not-yet-tagged, special::not-yet-tagged::l
+libschedule-cron-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libschoolbell: special::not-yet-tagged, special::not-yet-tagged::l
+libschooltool: special::not-yet-tagged, special::not-yet-tagged::l
+libschooltool-clients: special::not-yet-tagged, special::not-yet-tagged::l
+libscim-dev: accessibility::input, devel::library, role::devel-lib, uitoolkit::gtk
+libscim8c2a: uitoolkit::gtk
+libsclang1: role::shared-lib
+libscriptalicious-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libscrollkeeper-dev: devel::library, role::devel-lib, role::documentation
+libscrollkeeper0: devel::library, role::shared-lib
+libscsynth1: role::shared-lib
+libsctp-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsctp1: role::shared-lib
+libscw-0.1-2: role::shared-lib, uitoolkit::gtk
+libscw-0.1-dev: devel::library, uitoolkit::gtk
+libsdbm-ruby: devel::lang:ruby, devel::library
+libsdbm-ruby1.6: devel::lang:ruby
+libsdcv-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsdcv3: special::not-yet-tagged, special::not-yet-tagged::l
+libsdl-console: devel::library, uitoolkit::sdl
+libsdl-console-dev: devel::library, role::devel-lib, uitoolkit::sdl
+libsdl-erlang: devel::library, uitoolkit::sdl
+libsdl-gfx1.2: devel::library, role::shared-lib, uitoolkit::sdl
+libsdl-gfx1.2-4: role::shared-lib
+libsdl-gfx1.2-dev: devel::library, role::devel-lib, uitoolkit::sdl
+libsdl-image1.2: devel::library, role::shared-lib, uitoolkit::sdl, works-with::image, works-with::image:raster
+libsdl-image1.2-dev: devel::library, role::devel-lib, uitoolkit::sdl, works-with::image, works-with::image:raster
+libsdl-mixer1.2: devel::library, role::shared-lib, uitoolkit::sdl, works-with::audio
+libsdl-mixer1.2-dev: devel::library, role::devel-lib, uitoolkit::sdl
+libsdl-net1.2: devel::library, role::shared-lib, uitoolkit::sdl
+libsdl-net1.2-dev: devel::library, role::devel-lib, uitoolkit::sdl
+libsdl-ocaml: devel::lang:ocaml, devel::library, implemented-in::ocaml, uitoolkit::sdl
+libsdl-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib, uitoolkit::sdl
+libsdl-pango-dev: devel::library
+libsdl-pango1: role::shared-lib
+libsdl-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, uitoolkit::sdl
+libsdl-ruby1.8: devel::lang:ruby, uitoolkit::sdl
+libsdl-sge: devel::library, uitoolkit::sdl
+libsdl-sge-dev: devel::library, role::devel-lib, uitoolkit::sdl
+libsdl-sound1.2: role::shared-lib, uitoolkit::ncurses, uitoolkit::sdl
+libsdl-sound1.2-dev: devel::library, role::devel-lib
+libsdl-stretch-0-2: role::shared-lib, uitoolkit::sdl
+libsdl-stretch-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libsdl-ttf1.2: devel::library, uitoolkit::sdl, works-with::font
+libsdl-ttf1.2-dev: devel::library, uitoolkit::sdl, works-with::font
+libsdl-ttf2.0-0: devel::library, role::shared-lib, uitoolkit::sdl
+libsdl-ttf2.0-dev: devel::library, role::devel-lib, uitoolkit::sdl
+libsdl1.2-dev: devel::library, role::devel-lib, uitoolkit::sdl
+libsdl1.2debian: devel::library, hardware::input, role::dummy, special::meta, uitoolkit::sdl, works-with::audio
+libsdl1.2debian-all: devel::library, hardware::input, uitoolkit::sdl, works-with::audio
+libsdl1.2debian-alsa: hardware::input, role::shared-lib, uitoolkit::sdl, works-with::audio
+libsdl1.2debian-arts: devel::library, hardware::input, role::shared-lib, uitoolkit::sdl, works-with::audio
+libsdl1.2debian-esd: devel::library, hardware::input, role::shared-lib, uitoolkit::sdl, works-with::audio
+libsdl1.2debian-nas: hardware::input, role::shared-lib, uitoolkit::sdl, works-with::audio
+libsdl1.2debian-oss: devel::library, hardware::input, role::shared-lib, uitoolkit::sdl
+libsdp2: devel::library, role::dummy, special::obsolete
+libsdp2-dev: devel::library, role::devel-lib, role::dummy, special::obsolete
+libsds-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsds0: role::shared-lib, uitoolkit::gtk
+libseal-dev: devel::library, role::devel-lib
+libseal1: devel::library, role::shared-lib
+libsearch-xapian-perl: devel::lang:perl, implemented-in::c++, implemented-in::perl, use::searching, web::search-engine, works-with::text
+libseaudit-dev: devel::library
+libseaudit1: role::shared-lib
+libseda-java: devel::lang:java
+libsefs-dev: devel::library
+libsefs1: role::shared-lib
+libselinux1: role::shared-lib, security::TODO, security::authentication, security::ids
+libselinux1-dev: devel::library, special::not-yet-tagged, special::not-yet-tagged::l
+libsemanage1: role::shared-lib
+libsemanage1-dev: devel::library
+libsendmail-milter-perl: devel::lang:perl, implemented-in::perl
+libsendmail-pmilter-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libsensors-dev: devel::library, role::devel-lib
+libsensors3: role::shared-lib
+libsepol1: role::shared-lib
+libsepol1-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libserf-0-0: devel::lang:c, devel::library, implemented-in::c, network::client, role::shared-lib
+libserf-0-0-dev: devel::lang:c, devel::library, implemented-in::c, network::client, role::devel-lib
+libserveez-0.1.5: role::shared-lib, suite::gnu
+libserveez-dev: devel::library, role::devel-lib, suite::gnu
+libservlet2.3-java: devel::lang:java, devel::library
+libservlet2.4-java: devel::lang:java, special::not-yet-tagged, special::not-yet-tagged::l
+libset-crontab-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libset-intspan-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libset-object-perl: devel::lang:perl, devel::library, implemented-in::perl
+libsexy-dev: devel::library, uitoolkit::gtk
+libsexy2: role::shared-lib, uitoolkit::gtk
+libsexymm-dev: devel::library, uitoolkit::gtk
+libsexymm2: role::shared-lib, uitoolkit::gtk
+libsexymm2-dbg: devel::library
+libsfs0: devel::library
+libsfs0-dev: devel::library, role::devel-lib
+libsfs0c2: protocol::nfs, role::shared-lib
+libsfs0c2-dev: devel::library, protocol::nfs
+libsgmls-perl: devel::lang:perl, devel::library, implemented-in::perl, role::documentation, role::shared-lib
+libsgutils1: role::shared-lib
+libsha-ocaml: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::shared-lib, security::cryptography
+libsha-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib, security::cryptography
+libsha1-ocaml: devel::lang:ocaml
+libsha1-ocaml-dev: devel::lang:ocaml, devel::library
+libshadow-ruby1.6: devel::lang:ruby
+libshadow-ruby1.8: devel::lang:ruby
+libshell-posix-select-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libshhmsg1: devel::library, role::shared-lib
+libshhmsg1-dev: devel::library, role::devel-lib
+libshhopt1: devel::library, role::shared-lib, suite::gnu
+libshhopt1-dev: devel::library, role::devel-lib, suite::gnu
+libshib-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, security::authentication
+libshib-target5: implemented-in::c++, role::shared-lib, security::authentication
+libshib6: implemented-in::c++, role::shared-lib, security::authentication
+libshisa-dev: admin::user-management, devel::lang:c, devel::library, implemented-in::c, protocol::kerberos, role::devel-lib, security::authentication, security::cryptography, suite::gnu
+libshisa0: admin::user-management, implemented-in::c, protocol::kerberos, role::shared-lib, security::authentication, security::cryptography, suite::gnu, use::login
+libshishi-dev: devel::lang:c, devel::library, implemented-in::c, protocol::kerberos, role::devel-lib, role::shared-lib, security::authentication, security::cryptography, suite::gnu, use::login
+libshishi0: implemented-in::c, protocol::kerberos, role::shared-lib, security::authentication, security::cryptography, suite::gnu, use::login
+libshout-ocaml: devel::lang:ocaml, implemented-in::ocaml
+libshout-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libshout3: role::shared-lib
+libshout3-dev: devel::library, role::devel-lib
+libshp-dev: devel::library, role::devel-lib
+libshp1: devel::library, role::shared-lib
+libsident0: implemented-in::c, network::client, protocol::ident, protocol::kerberos, role::shared-lib, security::authentication
+libsident0-dev: devel::lang:c, devel::library, implemented-in::c, network::client, protocol::ident, protocol::kerberos, role::devel-lib, security::authentication, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::l
+libsidl-dev: devel::library, role::devel-lib
+libsidl0.10.2: role::shared-lib
+libsidl0.10.2-java: devel::lang:java, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsidl0.8.8: special::not-yet-tagged, special::not-yet-tagged::l
+libsidl0.8.8-java: devel::lang:java
+libsidplay1: role::shared-lib, uitoolkit::gtk
+libsidplay1-c102: devel::library, role::shared-lib
+libsidplay1-dev: devel::library, role::devel-lib, uitoolkit::gtk
+libsidplay2: role::shared-lib, uitoolkit::gtk
+libsidplay2-1c102: devel::library
+libsidplay2-dev: devel::library, role::devel-lib
+libsidutils-dev: devel::library, role::devel-lib
+libsidutils0: devel::library, role::shared-lib
+libsieve2-1: role::shared-lib
+libsieve2-dev: devel::library
+libsigc++-1.2-5c102: devel::lang:c++, devel::library, implemented-in::c++, role::shared-lib
+libsigc++-1.2-5c2: role::shared-lib
+libsigc++-1.2-dev: devel::library, implemented-in::c++, role::devel-lib
+libsigc++-2.0-0: devel::lang:c++, implemented-in::c++, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsigc++-2.0-0c2a: implemented-in::c++, role::shared-lib, special::auto-inst-parts
+libsigc++-2.0-dev: devel::library, implemented-in::c++, role::devel-lib
+libsigc++-2.0-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libsigc++-dev: devel::library, implemented-in::c++, role::devel-lib
+libsigc++0c102: devel::lang:c++, devel::library, implemented-in::c++
+libsigc++0c2: role::shared-lib
+libsigc-perl: devel::lang:perl, implemented-in::perl
+libsigcperl-dev: devel::library, role::devel-lib
+libsigcperl1: special::not-yet-tagged, special::not-yet-tagged::l
+libsigcx-0.6-2: special::not-yet-tagged, special::not-yet-tagged::l
+libsigcx-0.6-dev: devel::library, role::devel-lib
+libsigcx-gtk-0.6-1: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libsigcx-gtk-0.6-1c2a: uitoolkit::gtk
+libsigcx-gtk-0.6-dev: devel::library, role::devel-lib, uitoolkit::gtk
+libsigsegv-dev: devel::library, role::devel-lib, suite::gnu
+libsilc: special::not-yet-tagged, special::not-yet-tagged::l
+libsilc-1.0-2: role::shared-lib
+libsilc-1.0-2-dev: devel::library
+libsilc-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsimage-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsimage20: role::shared-lib
+libsimpledb-dev: devel::library
+libsimpledb2: role::shared-lib
+libsimplelist0: devel::library, implemented-in::c, role::shared-lib, scope::utility
+libsimplelist0-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib, scope::utility
+libskim-dev: devel::library
+libskim0: role::shared-lib, uitoolkit::qt
+libskstream-0.3: special::not-yet-tagged, special::not-yet-tagged::l
+libskstream-0.3-3: role::shared-lib
+libskstream-0.3-3-dbg: devel::library
+libskstream-0.3-dbg: devel::library, special::not-yet-tagged, special::not-yet-tagged::l
+libskstream-0.3-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsl0-kerberos4kth: devel::library, protocol::kerberos
+libslang1: role::shared-lib
+libslang1-pic: devel::library
+libslang1-utf8: role::shared-lib
+libslang1-utf8-pic: devel::library
+libslang2: role::shared-lib
+libslang2-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib, uitoolkit::special:todo
+libslang2-pic: devel::library
+libslapd2-dev: devel::library
+libslbreflex-dev: devel::library, role::devel-lib
+libslbreflex2: devel::library, role::shared-lib
+libslice31: role::shared-lib
+libslide-webdavclient-java: devel::lang:java
+libslp-dev: devel::library, role::devel-lib
+libslp1: devel::library, role::shared-lib
+libsm-dev: devel::library, role::devel-lib
+libsm6: role::shared-lib
+libsm6-dbg: devel::library
+libsmapi-dev: devel::library, role::devel-lib
+libsmapi2: devel::library, role::shared-lib
+libsmart-comments-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libsmbclient: devel::library, network::client, protocol::smb, role::shared-lib
+libsmbclient-dev: devel::library, role::devel-lib
+libsmbios-dev: devel::library
+libsmbios1: role::shared-lib
+libsmbiosxml-dev: devel::library
+libsmbiosxml1: role::shared-lib
+libsmi2: devel::library, role::shared-lib
+libsmi2-common: special::not-yet-tagged, special::not-yet-tagged::l
+libsmi2-dev: devel::library, role::devel-lib
+libsmjs-dev: devel::library, role::devel-lib
+libsmjs1: role::shared-lib
+libsmlnj-smlnj: special::not-yet-tagged, special::not-yet-tagged::l
+libsmokekde-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsmokekde1: role::shared-lib
+libsmokeqt-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsmokeqt1: role::shared-lib, uitoolkit::qt
+libsmokeqt4-1: implemented-in::c++, role::shared-lib, uitoolkit::qt
+libsmpeg-dev: devel::library, role::devel-lib, uitoolkit::sdl, works-with-format::mp3, works-with::audio, works-with::video
+libsmpeg0: devel::library, role::shared-lib, uitoolkit::gtk, uitoolkit::sdl, works-with-format::mp3, works-with::audio, works-with::video
+libsmtpguard-dev: devel::library
+libsmtpguard1: role::shared-lib
+libsnacc-dbg: devel::library, devel::rpc
+libsnacc-dev: devel::library, devel::rpc, role::devel-lib
+libsnacc0: devel::library, devel::rpc
+libsnacc0c2: role::shared-lib
+libsnack2: devel::lang:tcl, devel::library, role::shared-lib, uitoolkit::tk
+libsnack2-dev: devel::lang:tcl, devel::library, role::devel-lib, role::documentation
+libsnack2-doc: devel::doc, devel::lang:tcl, devel::library, role::documentation
+libsndfile0: devel::library
+libsndfile0-dev: devel::library, role::devel-lib
+libsndfile1: devel::library, role::shared-lib
+libsndfile1-dev: devel::library, role::devel-lib
+libsndobj-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libsndobj2: special::not-yet-tagged, special::not-yet-tagged::l
+libsndobj2c2: role::shared-lib
+libsnmp-base: devel::library, protocol::snmp, role::app-data
+libsnmp-mib-compiler-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::snmp, role::shared-lib
+libsnmp-multi-perl: devel::lang:perl, implemented-in::perl, protocol::snmp, role::shared-lib
+libsnmp-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::snmp, role::shared-lib
+libsnmp-ruby: admin::monitoring, devel::lang:ruby, implemented-in::ruby, protocol::snmp, role::dummy, special::meta
+libsnmp-ruby1.8: admin::monitoring, devel::lang:ruby, implemented-in::ruby, protocol::snmp, role::shared-lib
+libsnmp-session-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::snmp, role::shared-lib
+libsnmp1.4-java: devel::lang:java, protocol::snmp, role::shared-lib
+libsnmp4.2: devel::library
+libsnmp4.2-dev: devel::library, role::devel-lib
+libsnmp5: devel::library, role::shared-lib
+libsnmp5-dev: devel::library, role::devel-lib
+libsnmp9: protocol::snmp, role::shared-lib
+libsnmp9-dev: devel::library, protocol::snmp, role::devel-lib
+libsnmpkit-dev: devel::library, protocol::snmp, role::devel-lib
+libsnmpkit2c102: special::not-yet-tagged, special::not-yet-tagged::l
+libsnmpkit2c2a: protocol::snmp, role::shared-lib
+libsnowball-norwegian-perl: culture::norwegian, devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsnowball-swedish-perl: culture::swedish, devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsnowpg-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libsoap-java: devel::lang:java, devel::library
+libsoap-java-doc: devel::doc, devel::lang:java, devel::library, role::documentation
+libsoap-lite-perl: devel::lang:perl, devel::library, devel::rpc, implemented-in::perl, protocol::soap, role::shared-lib
+libsoap-perl: devel::lang:perl, devel::library, devel::rpc, implemented-in::perl, works-with-format::xml
+libsoap-ruby1.6: devel::lang:ruby
+libsocket6-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::ipv6, role::shared-lib
+libsocks4: devel::library, role::shared-lib
+libsocksd: devel::library
+libsocksd-dev: devel::library, role::devel-lib
+libsofia-sip-ua-dev: devel::library
+libsofia-sip-ua-glib-dev: devel::library
+libsofia-sip-ua-glib0: role::shared-lib
+libsofia-sip-ua0: role::shared-lib
+libsomaplayer-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsomaplayer0: role::shared-lib, uitoolkit::gtk
+libsope-appserver4.4: role::shared-lib
+libsope-appserver4.4-dev: devel::library
+libsope-core4.4: role::shared-lib
+libsope-core4.4-dev: devel::library
+libsope-gdl1-4.4: role::shared-lib
+libsope-gdl1-4.4-dev: devel::library
+libsope-ical4.4: role::shared-lib
+libsope-ical4.4-dev: devel::library
+libsope-ldap4.4: role::shared-lib
+libsope-ldap4.4-dev: devel::library
+libsope-mime4.4: role::shared-lib
+libsope-mime4.4-dev: devel::library
+libsope-xml4.4: role::shared-lib
+libsope-xml4.4-dev: devel::library
+libsope4.4-dev: devel::library
+libsoqt-dev: devel::library, role::devel-lib, uitoolkit::qt
+libsoqt20: role::shared-lib, uitoolkit::qt
+libsoqt20c102: devel::library, uitoolkit::qt
+libsort-versions-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libsoundtouch1: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsoundtouch1-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsoundtouch1c2: role::shared-lib
+libsoup2.0-0: protocol::ssl, special::not-yet-tagged, special::not-yet-tagged::l
+libsoup2.0-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libsoup2.2-7: protocol::ssl, special::not-yet-tagged, special::not-yet-tagged::l
+libsoup2.2-8: role::shared-lib
+libsoup2.2-dev: devel::library, filetransfer::http, implemented-in::c, protocol::http, role::devel-lib, suite::gnome
+libsoup2.2-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libsp-gxmlcpp-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk
+libsp-gxmlcpp1: devel::library, suite::gnome, uitoolkit::gtk
+libsp1: devel::library, role::shared-lib
+libsp1-dev: devel::library, role::devel-lib
+libsp1c2: role::shared-lib
+libspandsp-dev: devel::library, hardware::modem, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libspandsp-doc: hardware::modem
+libspandsp0: special::not-yet-tagged, special::not-yet-tagged::l
+libspandsp1: hardware::modem, role::shared-lib
+libspeechd-dev: devel::library, role::devel-lib
+libspeechd1: special::not-yet-tagged, special::not-yet-tagged::l
+libspeechd2: role::shared-lib
+libspeex-dev: devel::library, role::devel-lib
+libspeex1: role::shared-lib
+libspf-dev: devel::library, role::devel-lib, role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libspf-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libspf0: role::shared-lib
+libspf2-2: role::shared-lib
+libspf2-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsphinx2-dev: devel::library, role::devel-lib
+libsphinx2g0: devel::library, role::shared-lib
+libspiffy-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libspin-java: devel::lang:java, devel::library, implemented-in::java, role::devel-lib
+libspin-java-doc: devel::doc, devel::lang:java, devel::library, made-of::data:html, role::documentation
+libspoon-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libspork-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libspread-perl: devel::lang:perl, implemented-in::perl
+libspread1: role::shared-lib
+libspread1-dev: devel::library, role::devel-lib
+libspreadsheet-parseexcel-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::spreadsheet
+libspreadsheet-parseexcel-simple-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libspreadsheet-writeexcel-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::spreadsheet
+libsprng2: special::not-yet-tagged, special::not-yet-tagged::l
+libsprng2-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsprng2-doc: devel::library, role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libsql-abstract-limit-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libsql-abstract-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libsql-statement-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libsql-translator-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libsqldbc7.5.00: special::not-yet-tagged, special::not-yet-tagged::l
+libsqldbc7.5.00-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsqldbc75: role::shared-lib
+libsqldbc75-dev: devel::library
+libsqlite-ocaml: devel::lang:ocaml, implemented-in::ocaml
+libsqlite-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libsqlite-tcl: devel::library
+libsqlite0: devel::library, role::shared-lib
+libsqlite0-dev: devel::library, role::devel-lib
+libsqlite3-0: devel::lang:sql, role::shared-lib, works-with::db
+libsqlite3-dev: devel::library, role::devel-lib
+libsqlite3-ruby: devel::lang:ruby
+libsqlite3-ruby1.8: devel::lang:ruby
+libsqlite3-tcl: special::not-yet-tagged, special::not-yet-tagged::l
+libsqlod7.5.00: special::not-yet-tagged, special::not-yet-tagged::l
+libsqlod7.5.00-dev: devel::library, role::devel-lib
+libsqlod75: role::shared-lib
+libsqlod75-dev: devel::library
+libsqlplus-dev: devel::library, role::devel-lib
+libsqlplus1: devel::library
+libsqlrelay-0.37: role::shared-lib
+libsqlrelay-java: devel::lang:java
+libsqlrelay-ruby: devel::lang:ruby, devel::library
+libsqlxx-dev: devel::library, role::devel-lib
+libsqlxx2.3c102: special::not-yet-tagged, special::not-yet-tagged::l
+libsrs2-0: role::shared-lib
+libsrs2-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libss0-kerberos4kth: devel::library, protocol::kerberos
+libss2: role::shared-lib
+libsscm-dev: devel::library
+libsscm0: role::shared-lib
+libssl-dev: devel::library, protocol::ssl, role::devel-lib
+libssl-ocaml: devel::lang:ocaml, devel::library, protocol::ssl
+libssl-ocaml-dev: devel::lang:ocaml, devel::library
+libssl0.9.6: devel::library, protocol::ssl
+libssl0.9.7: devel::library, protocol::ssl, role::shared-lib, security::cryptography
+libssl0.9.7-dbg: devel::library, security::cryptography
+libssl0.9.8: role::shared-lib, security::cryptography
+libssl0.9.8-dbg: devel::library, security::cryptography
+libssp0: role::shared-lib
+libst-dev: devel::library, role::devel-lib
+libst1: devel::library, role::shared-lib
+libstar-parser-perl: devel::lang:perl
+libstartup-notification0: devel::library, implemented-in::c, role::shared-lib
+libstartup-notification0-dev: devel::library, role::devel-lib
+libstat-lsmode-perl: devel::lang:perl, devel::library, implemented-in::perl, role::devel-lib, role::shared-lib, works-with::file
+libstatgrab-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libstatgrab5: special::not-yet-tagged, special::not-yet-tagged::l
+libstatgrab6: role::shared-lib
+libstatistics-descriptive-perl: devel::lang:perl, devel::library, field::statistics, implemented-in::perl, role::devel-lib, role::shared-lib
+libstdc++2.10-dbg: devel::debugger, devel::lang:c++, devel::library, implemented-in::c++, suite::gnu
+libstdc++2.10-dev: devel::library, implemented-in::c++, role::devel-lib, suite::gnu
+libstdc++2.10-glibc2.2: devel::lang:c++, devel::library, implemented-in::c++, role::shared-lib, suite::gnu
+libstdc++5: devel::lang:c, devel::lang:c++, devel::library, implemented-in::c++, role::shared-lib, suite::gnu
+libstdc++5-3.3-dbg: devel::debugger, devel::lang:c, devel::library, implemented-in::c++, suite::gnu
+libstdc++5-3.3-dev: devel::lang:c, devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, suite::gnu
+libstdc++5-3.3-doc: devel::doc, devel::library, role::documentation, suite::gnu
+libstdc++5-3.3-pic: devel::library, implemented-in::c++, suite::gnu
+libstdc++6: implemented-in::c++, role::shared-lib, suite::gnu
+libstdc++6-4.0-dbg: devel::library
+libstdc++6-4.0-dev: devel::library, role::devel-lib
+libstdc++6-4.0-doc: role::documentation
+libstdc++6-4.0-pic: devel::library
+libstdc++6-4.1-dbg: devel::library, suite::gnu
+libstdc++6-4.1-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, suite::gnu
+libstdc++6-4.1-doc: suite::gnu
+libstdc++6-4.1-pic: devel::library, suite::gnu
+libstdc++6-dbg: devel::debugger, devel::library, implemented-in::c++, special::not-yet-tagged, special::not-yet-tagged::l, suite::gnu
+libstdc++6-dev: devel::library, implemented-in::c++, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l, suite::gnu
+libstdc++6-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l, suite::gnu
+libstdc++6-pic: devel::library, implemented-in::c++, special::not-yet-tagged, special::not-yet-tagged::l, suite::gnu
+libstfl-dev: devel::lang:c, devel::library, implemented-in::c, interface::text-mode, role::devel-lib, uitoolkit::ncurses
+libstk0: special::not-yet-tagged, special::not-yet-tagged::l
+libstk0-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libstlport4.6: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libstlport4.6-dev: devel::library, role::devel-lib
+libstlport4.6c2: role::shared-lib
+libstlport5.0: implemented-in::c++, role::shared-lib
+libstlport5.0-dev: devel::library
+libstlport5.1: implemented-in::c++, role::shared-lib
+libstlport5.1-dev: devel::library, implemented-in::c++, role::devel-lib
+libstonith-dev: devel::library, role::devel-lib
+libstonith0: devel::library, role::shared-lib
+libstrigihtmlgui-dev: devel::library
+libstrigihtmlgui0: role::shared-lib
+libstring-approx-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::searching
+libstring-crc32-perl: devel::lang:perl, devel::library, implemented-in::perl
+libstring-escape-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libstring-format-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libstring-koremutake-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libstring-mkpasswd-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libstring-parity-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libstring-random-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libstring-shellquote-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::text
+libstroke0: devel::library, hardware::input:mouse, role::shared-lib, uitoolkit::gtk
+libstroke0-dev: devel::library, hardware::input:mouse, role::devel-lib, uitoolkit::gtk
+libstrscan-ruby: devel::lang:ruby, devel::library
+libstrscan-ruby1.6: devel::lang:ruby
+libstrutilsxx-dev: devel::library, role::devel-lib
+libstrutilsxx0.7c102: special::not-yet-tagged, special::not-yet-tagged::l
+libstruts1.1-java: devel::lang:java
+libstruts1.2-java: devel::lang:java, special::not-yet-tagged, special::not-yet-tagged::l
+libstyx2: role::shared-lib
+libsub-exporter-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libsub-install-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libsub-name-perl: devel::lang:perl
+libsub-override-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsub-uplevel-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libsubtitles-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libsufary-perl: devel::lang:perl, devel::library, implemented-in::perl
+libsufary-ruby: devel::lang:ruby, devel::library
+libsufary-ruby1.6: devel::lang:ruby
+libsufary-ruby1.8: devel::lang:ruby
+libsufary2: devel::library, role::shared-lib
+libsuikyo-ruby1.8: devel::lang:ruby
+libsundials-serial-dev: devel::library
+libsundials-serial0: role::shared-lib
+libsuperlu3: field::mathematics, implemented-in::c, role::shared-lib
+libsuperlu3-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsvg-ruby: devel::lang:ruby
+libsvg-ruby1.8: devel::lang:ruby
+libsvg-tt-graph-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsvga1: interface::svga, role::shared-lib
+libsvga1-dev: devel::library, interface::svga, role::devel-lib
+libsvm-dev: devel::library
+libsvm2: role::shared-lib
+libsvn-core-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libsvn-dev: devel::library
+libsvn-java: devel::lang:java
+libsvn-mirror-perl: devel::lang:perl, devel::rcs, implemented-in::perl, role::shared-lib, use::synchronizing
+libsvn-notify-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, role::source, special::not-yet-tagged, special::not-yet-tagged::l
+libsvn-perl: devel::lang:perl, devel::rcs, implemented-in::perl, role::shared-lib
+libsvn-ruby: devel::lang:ruby
+libsvn-ruby1.8: devel::lang:ruby
+libsvn-simple-perl: devel::lang:perl, devel::rcs, implemented-in::perl, role::shared-lib, use::synchronizing, works-with::text
+libsvn0: devel::library, role::shared-lib
+libsvn0-dev: devel::library, role::devel-lib
+libsvn1: role::shared-lib
+libsvncpp-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsvncpp0: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsvncpp0c2a: devel::lang:c++, devel::rcs, implemented-in::c++, role::shared-lib
+libsvnqt-dev: devel::library, uitoolkit::qt
+libsvnqt3: role::shared-lib, uitoolkit::qt
+libswf-perl: devel::lang:perl
+libswfdec0.3: role::shared-lib
+libswfdec0.3-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libswidgets-java: devel::lang:java
+libswingwt-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libswingwt-java: devel::lang:java, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libswingwt0: role::shared-lib
+libswish-api-common-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libsword-dev: devel::library, role::devel-lib, uitoolkit::gtk
+libsword4: special::not-yet-tagged, special::not-yet-tagged::l
+libsword6: role::shared-lib
+libswt-gtk-3.1: special::not-yet-tagged, special::not-yet-tagged::l
+libswt-gtk-3.1-java: devel::lang:java, special::not-yet-tagged, special::not-yet-tagged::l
+libswt-gtk-3.1-jni: special::not-yet-tagged, special::not-yet-tagged::l
+libswt-gtk-3.2: role::shared-lib
+libswt-gtk-3.2-java: devel::lang:java
+libswt-gtk-3.2-jni: uitoolkit::gtk
+libswt-gtk-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libswt-motif3-java: devel::lang:java, special::not-yet-tagged, special::not-yet-tagged::l
+libswt-motif3-jni: special::not-yet-tagged, special::not-yet-tagged::l
+libswt-mozilla-gtk-3.1: special::not-yet-tagged, special::not-yet-tagged::l
+libswt-mozilla-gtk-3.1-java: devel::lang:java, special::not-yet-tagged, special::not-yet-tagged::l
+libswt-mozilla-gtk-3.1-jni: special::not-yet-tagged, special::not-yet-tagged::l
+libswt-mozilla-gtk-3.2: role::shared-lib
+libswt-mozilla-gtk-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libswt-pocketpc3-java: devel::lang:java, special::not-yet-tagged, special::not-yet-tagged::l
+libswt-pocketpc3-jni: special::not-yet-tagged, special::not-yet-tagged::l
+libswt2.1-gtk2-java: devel::lang:java
+libswt2.1-gtk2-jni: special::not-yet-tagged, special::not-yet-tagged::l
+libswt2.1-motif-java: devel::lang:java
+libswt2.1-motif-jni: special::not-yet-tagged, special::not-yet-tagged::l
+libswt3.1-gtk-gcj: devel::lang:java, devel::library, role::devel-lib, role::shared-lib, suite::eclipse, uitoolkit::gtk
+libswt3.1-gtk-java: devel::lang:java
+libswt3.1-gtk-jni: uitoolkit::gtk
+libswt3.2-gtk-java: devel::lang:java
+libswt3.2-gtk-jni: role::shared-lib
+libsybdb3: devel::library
+libsybdb5: role::shared-lib
+libsyck0-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsylpheed-claws-dev: devel::lang:c, implemented-in::c, mail::user-agent, role::devel-lib, works-with::mail
+libsylpheed-claws-gtk2-dev: devel::lang:c, implemented-in::c, role::devel-lib, uitoolkit::gtk, works-with::mail
+libsynaptics-dev: devel::library
+libsynaptics0: role::shared-lib
+libsynce0: role::shared-lib
+libsynce0-dev: devel::library, role::devel-lib
+libsyncml-dev: devel::library
+libsyncml0: role::shared-lib
+libsynfig-dev: devel::library
+libsynfig-doc: devel::library
+libsynfig0: role::shared-lib
+libsynfigapp-dev: devel::library
+libsynfigapp0: role::shared-lib
+libsynopsis8: role::shared-lib
+libsynopsis8-dev: devel::library
+libsys-cpu-perl: devel::lang:perl, implemented-in::perl, special::not-yet-tagged, special::not-yet-tagged::l
+libsys-cpuload-perl: devel::lang:perl, devel::library, implemented-in::perl
+libsys-hostname-long-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libsys-syslog-perl: devel::lang:perl
+libsys-utmp-perl: devel::lang:perl, devel::library, implemented-in::perl
+libsysadm-install-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libsysfs-dev: devel::library, role::devel-lib
+libsysfs1: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsysfs2: role::shared-lib
+libsyslog-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libsyslog-ruby: devel::lang:ruby, devel::library
+libsyslog-ruby1.6: devel::lang:ruby, devel::library
+libt1-5: role::shared-lib
+libt1-dev: devel::library, role::devel-lib
+libt1-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libtabe-db: devel::library
+libtabe-dev: devel::library, role::devel-lib
+libtabe2: devel::library, role::shared-lib
+libtag1: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libtag1-dev: devel::library, role::devel-lib
+libtag1-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libtag1c2a: role::shared-lib
+libtagc0: role::shared-lib
+libtagc0-dev: devel::library, role::devel-lib
+libtagc0-ruby: devel::lang:ruby
+libtagc0-ruby1.8: devel::lang:ruby
+libtagcoll-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, use::organizing
+libtagcoll0: devel::lang:c++, devel::library, implemented-in::c++, role::shared-lib, use::organizing
+libtagcoll2-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, use::organizing
+libtangram-perl: devel::lang:perl, devel::library, implemented-in::perl, network::client, role::program, role::shared-lib
+libtao-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libtao-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libtao-flresource-dev: devel::library
+libtao-orbsvcs-dev: devel::library, role::devel-lib
+libtao-orbsvcs1.4: special::not-yet-tagged, special::not-yet-tagged::l
+libtao-qtreactor-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libtao-qtreactor1.4: special::not-yet-tagged, special::not-yet-tagged::l
+libtao-qtresource-dev: devel::library, role::devel-lib
+libtao-qtresource1.4.7c2a: uitoolkit::qt
+libtao-tkresource-dev: devel::library
+libtao-xtreactor-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libtao-xtreactor1.4: special::not-yet-tagged, special::not-yet-tagged::l
+libtao-xtresource-dev: devel::library
+libtao1.4: implemented-in::c++, protocol::corba, role::shared-lib
+libtar: devel::library, role::shared-lib
+libtar-dev: devel::library, role::devel-lib
+libtasn1-0: devel::library
+libtasn1-2: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libtasn1-2-dev: devel::library, role::devel-lib
+libtasn1-3: role::shared-lib
+libtasn1-3-bin: interface::commandline, role::program, scope::utility
+libtasn1-3-dev: devel::library, role::devel-lib
+libtasn1-dev: devel::library
+libtcltk-ruby: devel::lang:ruby, devel::lang:tcl, devel::library, uitoolkit::tk
+libtcltk-ruby1.6: devel::lang:ruby
+libtcltk-ruby1.8: devel::lang:ruby
+libtcltk-ruby1.9: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l
+libtdb1: devel::library, role::shared-lib, works-with::db
+libtelepathy-dev: devel::library
+libtelepathy2: role::shared-lib
+libtemplate-multilingual-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtemplate-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::html, works-with-format::postscript
+libtemplate-perl-doc: devel::doc, devel::library, role::documentation
+libtemplate-plugin-calendar-simple-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libtemplate-plugin-class-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtemplate-plugin-clickable-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libtemplate-plugin-gd-perl: devel::lang:perl, implemented-in::perl, works-with-format::png, works-with::image
+libtemplate-plugin-yaml-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libtemplate-timer-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtemplates-parser-dev: devel::library, implemented-in::ada
+libtemplates-parser10: implemented-in::ada, role::shared-lib
+libtempura-ruby1.8: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l
+libtenovis-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libterm-progressbar-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libterm-prompt-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libterm-query-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libterm-readkey-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::text-mode, role::shared-lib
+libterm-readline-gnu-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::text-mode, role::shared-lib, uitoolkit::ncurses
+libterm-readline-perl-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::commandline, role::shared-lib
+libterm-readline-zoid-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libterm-readpassword-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libterm-shell-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libterm-size-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libterm-slang-perl: devel::lang:perl, devel::library, implemented-in::perl, interface::text-mode
+libterm-visual-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtermios-ruby: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l
+libtermios-ruby1.8: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l
+libterralib1-dev: devel::library
+libterralib1c2a: uitoolkit::qt
+libtest-base-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtest-builder-tester-perl: devel::lang:perl, implemented-in::perl
+libtest-class-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtest-classapi-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtest-cmd-perl: devel::lang:perl, devel::library, devel::testing-qa, implemented-in::perl, role::shared-lib
+libtest-deep-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtest-differences-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtest-exception-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtest-harness-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtest-html-content-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtest-inline-perl: devel::lang:perl, devel::library, devel::testing-qa, implemented-in::perl, role::shared-lib
+libtest-longstring-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtest-manifest-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtest-mockmodule-perl: devel::lang:perl, devel::library, devel::testing-qa, implemented-in::perl, role::shared-lib
+libtest-mockobject-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtest-nowarnings-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtest-pod-coverage-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libtest-pod-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtest-reporter-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtest-simple-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtest-tap-htmlmatrix-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtest-tap-model-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtest-tester-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtest-unit-perl: devel::lang:perl, devel::library, devel::testing-qa, role::shared-lib
+libtest-unit-ruby: devel::lang:ruby, devel::testing-qa
+libtest-unit-ruby1.6: devel::lang:ruby, devel::testing-qa
+libtest-use-ok-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtest-warn-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtest-www-mechanize-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtext-asciitable-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtext-aspell-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::checking, works-with::dictionary
+libtext-autoformat-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::text-formatting, works-with::text
+libtext-bibtex-perl: devel::lang:perl, works-with-format::bib
+libtext-charwidth-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtext-chasen-perl: devel::lang:perl, implemented-in::perl
+libtext-csv-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libtext-diff-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, use::synchronizing, works-with::text
+libtext-english-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libtext-format-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::text
+libtext-format-ruby: devel::lang:ruby
+libtext-format-ruby1.8: devel::lang:ruby, role::shared-lib
+libtext-formattable-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtext-german-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libtext-glob-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, use::searching
+libtext-header-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libtext-iconv-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libtext-kakasi-perl: devel::lang:perl, devel::library, implemented-in::perl
+libtext-pdf-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::pdf, works-with::text
+libtext-query-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libtext-querysql-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libtext-quoted-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtext-reform-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtext-roman-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libtext-shellwords-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtext-simpletable-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtext-template-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libtext-typography-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtext-unaccent-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libtext-unidecode-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libtext-vcard-perl: devel::lang:perl, implemented-in::perl, role::source, use::converting, use::organizing, use::storing, use::synchronizing, use::text-formatting, use::viewing, works-with-format::plaintext, works-with::pim, works-with::text
+libtext-vfile-asdata-perl: devel::lang:perl, implemented-in::perl, role::source, use::converting, use::organizing, use::text-formatting, use::viewing, works-with::pim, works-with::text
+libtext-wikiformat-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtext-wrapi18n-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libtext-wrapper-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libtexttools-dev: devel::lang:ada, devel::lang:c++, devel::library, implemented-in::ada, implemented-in::c++, role::devel-lib, uitoolkit::ncurses
+libtexttools2: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::ncurses
+libtexttools2.0: implemented-in::ada, implemented-in::c++, role::shared-lib, uitoolkit::ncurses
+libtextwrap-dev: devel::library, role::devel-lib
+libtextwrap1: role::shared-lib
+libthai0: role::shared-lib
+libtheora-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libtheora0: role::shared-lib, works-with-format::oggtheora, works-with::video
+libthunar-vfs-1-2: role::shared-lib, uitoolkit::gtk
+libthunar-vfs-1-dev: devel::library
+libticables3: devel::library, role::shared-lib
+libticables3-dev: devel::library, role::devel-lib, uitoolkit::gtk
+libticalcs4: devel::library, role::shared-lib, uitoolkit::gtk
+libticalcs4-dev: devel::library, role::devel-lib, uitoolkit::gtk
+libtidy-0.99-0: role::shared-lib
+libtidy-dev: devel::library, role::devel-lib, role::documentation
+libtidy-ruby: devel::lang:ruby
+libtidy-ruby1.8: devel::lang:ruby
+libtidy0: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libtie-array-sorted-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libtie-cache-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libtie-cphash-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtie-dxhash-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtie-ical-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtie-ixhash-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libtie-regexphash-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libtiff-opengl: implemented-in::c, implemented-in::c++, interface::commandline, role::program, scope::utility, use::converting
+libtiff-tools: devel::library, role::program, use::converting, works-with::image, works-with::image:raster
+libtiff4: role::shared-lib, works-with::image:raster
+libtiff4-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libtiffxx0: special::not-yet-tagged, special::not-yet-tagged::l
+libtiffxx0c2: role::shared-lib
+libtifiles0: devel::library, role::shared-lib
+libtifiles0-dev: devel::library, role::devel-lib
+libtime-duration-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libtime-format-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtime-human-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libtime-modules-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::timekeeping
+libtime-period-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::timekeeping
+libtime-piece-mysql-perl: devel::lang:perl, devel::lang:sql, devel::library, implemented-in::perl, role::shared-lib, works-with::db
+libtime-piece-perl: devel::lang:perl, devel::library, implemented-in::perl
+libtime-stopwatch-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtimedate-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libtioga-ruby: devel::lang:ruby
+libtioga-ruby1.8: devel::lang:ruby, implemented-in::c, implemented-in::ruby, role::devel-lib, role::shared-lib
+libtk-filedialog-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtk-gbarr-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtk-histentry-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libtk-img: devel::library, role::shared-lib, uitoolkit::tk
+libtk-objscanner-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtk-png-perl: devel::lang:perl
+libtk-pod-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtk-ruby: devel::lang:ruby, devel::lang:tcl, devel::library
+libtk-ruby1.6: devel::lang:ruby
+libtk-splashscreen-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libtk-tablematrix-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, uitoolkit::tk
+libtktable-dev: devel::library
+libtktable2.9: role::shared-lib
+libtlen1: devel::library, role::shared-lib, uitoolkit::gtk
+libtlen1-dev: devel::library, role::devel-lib, uitoolkit::gtk
+libtm-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtmail-ruby-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libtmail-ruby1.6: devel::lang:ruby
+libtmail-ruby1.8: devel::lang:ruby, works-with::mail
+libtnt-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libtntdb-dev: devel::lang:c++, devel::library, devel::web, implemented-in::c++, role::devel-lib, web::appserver, works-with::db
+libtntdb0: implemented-in::c++, role::shared-lib, works-with::db
+libtntnet-dev: devel::library, filetransfer::http, implemented-in::c++, role::devel-lib
+libtntnet5: devel::lang:c++, devel::web, implemented-in::c++, role::shared-lib, web::appserver, web::server
+libtododb0: role::shared-lib, uitoolkit::gtk
+libtododb0-dev: devel::library, role::devel-lib, uitoolkit::gtk
+libtolua-dev: devel::library, role::devel-lib
+libtolua0: devel::library, role::shared-lib
+libtomcat4-java: devel::lang:java, devel::library
+libtomcat5-java: devel::lang:java
+libtomcat5.5-java: devel::lang:java
+libtonezone-dev: devel::library, role::devel-lib
+libtonezone1: devel::library, role::shared-lib
+libtool: devel::buildtools, devel::lang:c, devel::lang:c++, devel::lang:fortran, devel::lang:java, devel::library, implemented-in::shell, role::program, scope::utility, suite::gnu
+libtool-doc: devel::buildtools, devel::doc, devel::library, role::documentation, suite::gnu
+libtool1.4: special::not-yet-tagged, special::not-yet-tagged::l, special::obsolete
+libtool1.4-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l, special::obsolete
+libtoolbar-java: devel::lang:java
+libtoolbutton-java: devel::lang:java
+libtorch3: devel::lang:c, field::mathematics
+libtorch3-dev: devel::library, role::devel-lib
+libtorch3c2: role::shared-lib
+libtorrent9: role::shared-lib
+libtorrent9-dev: devel::library
+libtotem-plparser-dev: devel::library, uitoolkit::gtk
+libtotem-plparser1: role::shared-lib, uitoolkit::gtk
+libtowitoko-dev: devel::library, role::devel-lib
+libtowitoko2: devel::library, hardware::TODO, role::shared-lib, security::cryptography
+libtrain-bin: devel::library
+libtrain-dev: devel::library, role::devel-lib
+libtrain1: devel::library, role::shared-lib
+libtrash: devel::library
+libtre-dev: devel::library, role::devel-lib
+libtre4: role::shared-lib
+libtree-dagnode-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtree-redblack-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libtree-simple-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libtree-simple-visitorfactory-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libtse3-0.2.7: special::not-yet-tagged, special::not-yet-tagged::l
+libtse3-dev: devel::library, role::devel-lib
+libttf-dev: devel::library, works-with::image, works-with::image:raster
+libttf2: devel::library, role::shared-lib, special::obsolete, works-with::image, works-with::image:raster
+libtulip-2.0: special::not-yet-tagged, special::not-yet-tagged::l
+libtulip-2.0-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libtulip-ogl-2.0: special::not-yet-tagged, special::not-yet-tagged::l
+libtulip-ogl-2.0-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libtulip-qt-2.0: special::not-yet-tagged, special::not-yet-tagged::l
+libtulip-qt-2.0-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libtulip-qt4-2.0-dev: devel::library
+libtunepimp-bin: role::program, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::ncurses, use::organizing, works-with::audio
+libtunepimp-perl: devel::lang:perl, implemented-in::perl
+libtunepimp2: special::not-yet-tagged, special::not-yet-tagged::l
+libtunepimp2-dev: devel::library, role::devel-lib
+libtunepimp3: role::shared-lib
+libtunepimp3-dev: devel::library
+libtut-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib
+libtw: devel::library, interface::text-mode, role::shared-lib, uitoolkit::ncurses
+libtw-dev: devel::library, interface::text-mode, role::devel-lib
+libtw0: role::shared-lib, uitoolkit::gtk, uitoolkit::ncurses
+libtwofish-dev: devel::lang:c, devel::library, role::devel-lib, security::cryptography
+libtwolame-dev: devel::library
+libtwolame0: role::shared-lib
+libtyvis1: special::not-yet-tagged, special::not-yet-tagged::l
+libtyvis1-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libubit-dev: devel::library, role::devel-lib
+libubit1: special::not-yet-tagged, special::not-yet-tagged::l
+libucl-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib
+libucl1: implemented-in::c, role::shared-lib, use::compressing
+libuclibc-dev: devel::library, role::devel-lib
+libuclibc0: devel::library, role::shared-lib
+libuclmmbase1: devel::library, role::shared-lib
+libuclmmbase1-dev: culture::czech, devel::library, role::devel-lib
+libuconv-ruby1.6: devel::lang:ruby
+libuconv-ruby1.8: devel::lang:ruby
+libudns-dev: devel::library
+libudns0: role::shared-lib
+libufsparse: field::mathematics, implemented-in::fortran, role::shared-lib
+libufsparse-dbg: devel::library, implemented-in::fortran
+libufsparse-dev: devel::library, implemented-in::fortran
+libufsparse-doc: implemented-in::fortran
+libuim-data: role::app-data, special::auto-inst-parts
+libuim-dev: devel::library, role::devel-lib
+libuim-nox-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libuim0: special::not-yet-tagged, special::not-yet-tagged::l
+libuim0-dbg: devel::debugger, devel::library, special::not-yet-tagged, special::not-yet-tagged::l
+libuim0-nox: special::not-yet-tagged, special::not-yet-tagged::l
+libuim0-nox-dbg: devel::debugger, devel::library, special::not-yet-tagged, special::not-yet-tagged::l
+libuim3: role::shared-lib
+libumfpack4: role::shared-lib
+libumfpack4-dev: devel::library, role::devel-lib, role::documentation
+libumfpack4-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libunac1: devel::library, role::shared-lib
+libunac1-dev: devel::library, role::devel-lib
+libunderware: special::not-yet-tagged, special::not-yet-tagged::l
+libunderware-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libungif-bin: devel::library, use::converting, works-with::image, works-with::image:raster
+libungif3g: devel::library, works-with::image:raster
+libungif4-dev: devel::library, role::devel-lib, works-with::image, works-with::image:raster
+libungif4g: devel::library, role::shared-lib, works-with::image, works-with::image:raster
+libunicode-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk
+libunicode-japanese-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libunicode-map-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::text, works-with::unicode
+libunicode-map8-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::text, works-with::unicode
+libunicode-maputf8-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::text, works-with::unicode
+libunicode-string-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with::text, works-with::unicode
+libunicode0: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libuniconf4.0: special::not-yet-tagged, special::not-yet-tagged::l
+libuniconf4.2: role::shared-lib
+libuninameslist-dev: devel::library
+libuninameslist0: role::shared-lib
+libunit++-dev: devel::library, implemented-in::c++, role::devel-lib, role::documentation
+libunit++-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libuniversal-can-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libuniversal-exports-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libuniversal-isa-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libuniversal-moniker-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libuniversal-require-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libunix-syslog-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libunshield: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libunshield-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libunshield0: role::shared-lib
+libupnp-dev: devel::library, implemented-in::c, network::client, network::configuration, network::server, protocol::TODO, role::devel-lib, special::completely-tagged, special::not-yet-tagged, special::not-yet-tagged::l, use::configuring
+libupnp0: implemented-in::c, network::client, network::configuration, network::server, protocol::TODO, role::shared-lib, special::completely-tagged, use::configuring
+libuptimed: devel::library
+libuptimed-dev: devel::library, implemented-in::c, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libuptimed0: implemented-in::c, role::shared-lib
+liburi-fetch-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+liburi-find-delimited-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+liburi-find-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+liburi-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::html, works-with-format::xml, works-with::text
+liburi-query-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libusb++-0.1-4: implemented-in::c++, special::not-yet-tagged, special::not-yet-tagged::l
+libusb++-0.1-4c2: role::shared-lib
+libusb++-dev: devel::library, implemented-in::c++, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libusb-0.1-4: devel::library, role::shared-lib
+libusb-dev: devel::library, role::devel-lib
+libuser-identity-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libuser-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libuser-simple-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libuser1: role::shared-lib
+libuser1-dev: devel::library
+libusrp0: special::not-yet-tagged, special::not-yet-tagged::l
+libusrp0-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libusrp0c2a-dbg: devel::library
+libuu-dev: devel::library, role::devel-lib
+libuuid1: role::shared-lib
+libv4l-ruby1.8: devel::lang:ruby
+libvalidate-net-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libvanessa-adt-dev: devel::library, role::devel-lib
+libvanessa-adt0: devel::library, role::shared-lib
+libvanessa-logger-dev: devel::library, role::devel-lib
+libvanessa-logger-sample: devel::library
+libvanessa-logger0: devel::library, role::shared-lib
+libvanessa-socket-dev: devel::library, role::devel-lib
+libvanessa-socket-pipe: devel::library
+libvanessa-socket0: devel::library, role::shared-lib
+libvarconf-1.0: special::not-yet-tagged, special::not-yet-tagged::l
+libvarconf-1.0-6: role::shared-lib
+libvarconf-1.0-6-dbg: devel::library
+libvarconf-1.0-dbg: devel::library
+libvarconf-dev: devel::library, role::devel-lib
+libvcdinfo-dev: devel::library, role::devel-lib
+libvcdinfo0: role::shared-lib
+libvcp-dest-svk-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libvcp-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libvcs-cvs-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libvcs-lite-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libvcs-perl: devel::lang:perl, devel::library, devel::rcs, implemented-in::perl, role::shared-lib
+libvcs-rcs-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libvdeplug2: role::shared-lib
+libvdk2-2: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libvdk2-2c2: role::shared-lib, uitoolkit::gtk
+libvdk2-dbg: devel::debugger, devel::library, role::shared-lib
+libvdk2-dev: devel::library, role::devel-lib, uitoolkit::gtk
+libvdk2-doc: devel::doc, devel::library, role::documentation
+libvdkbuilder2: devel::library, uitoolkit::gtk
+libvdkbuilder2-dev: devel::library, role::devel-lib, uitoolkit::gtk
+libvdkbuilder2c2: role::shared-lib, uitoolkit::gtk
+libvdkxdb0-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libvdkxdb0c102: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libvdkxdb2-2: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libvdkxdb2-2c2: role::shared-lib, uitoolkit::gtk
+libvdkxdb2-dev: devel::library, role::devel-lib, uitoolkit::gtk
+libvds-dev: devel::library, uitoolkit::TODO
+libvecmath1.2-java: devel::lang:java
+libverbiste0: special::not-yet-tagged, special::not-yet-tagged::l
+libverbiste0-dev: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libversion-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libvformat1: role::shared-lib
+libvformat1-dev: devel::library, role::devel-lib
+libvibrant6: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::motif
+libvibrant6-dbg: devel::debugger, devel::library
+libvibrant6-dev: devel::lang:c, devel::library, field::biology, implemented-in::c, interface::x11, role::devel-lib, uitoolkit::motif, use::viewing
+libvibrant6a: field::biology, implemented-in::c, interface::x11, role::shared-lib, uitoolkit::motif, use::viewing
+libvibrant6a-dbg: devel::debugger, devel::lang:c, devel::library, field::biology, implemented-in::c, interface::x11, role::app-data, uitoolkit::motif, use::viewing
+libvideo-capture-v4l-perl: devel::lang:perl, implemented-in::perl, special::not-yet-tagged, special::not-yet-tagged::l
+libvideo-ivtv-perl: devel::lang:perl, implemented-in::perl, special::not-yet-tagged, special::not-yet-tagged::l
+libview-dev: devel::library, uitoolkit::gtk
+libview2: role::shared-lib, uitoolkit::gtk
+libview2-dbg: devel::library
+libvigraimpex-dev: devel::library
+libvigraimpex2: role::shared-lib
+libvips-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libvips-tools: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l
+libvips10: special::not-yet-tagged, special::not-yet-tagged::l
+libvips10-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libvips10c2a: role::shared-lib, works-with::image
+libvisual-0.4-0: role::shared-lib
+libvisual-0.4-dev: devel::library
+libvisual-0.4-plugins: uitoolkit::gtk
+libvlc0: role::shared-lib
+libvlc0-dev: devel::library, role::devel-lib
+libvmime-dev: devel::library
+libvmime0: role::shared-lib
+libvncauth-dev: devel::library, role::devel-lib
+libvncauth0: devel::library, role::shared-lib
+libvncserver-dev: interface::x11, special::not-yet-tagged, special::not-yet-tagged::l
+libvoikko-dev: devel::library
+libvoikko1: role::shared-lib
+libvolume-id-dev: devel::library
+libvolume-id0: admin::filesystem, role::shared-lib, use::scanning
+libvorbis-dev: devel::library, role::devel-lib
+libvorbis-ocaml: devel::lang:ocaml, implemented-in::ocaml
+libvorbis-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libvorbis-perl: devel::lang:perl, devel::library, implemented-in::perl, works-with-format::oggvorbis, works-with::audio
+libvorbis0a: devel::library, role::shared-lib, works-with-format::oggvorbis, works-with::audio
+libvorbisenc2: devel::library, role::shared-lib
+libvorbisfile-ruby: devel::lang:ruby, devel::library, role::metapackage
+libvorbisfile-ruby1.6: devel::lang:ruby
+libvorbisfile-ruby1.8: devel::lang:ruby
+libvorbisfile3: devel::library, role::shared-lib
+libvpim-ruby1.8: devel::lang:ruby, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libvpopmail-dev: devel::library, interface::daemon, network::server, role::devel-lib, role::program, works-with::mail
+libvpopmail-freecdb: devel::library, interface::daemon, network::server, role::program, works-with::mail
+libvpopmail-lmysql: devel::library, interface::daemon, network::server, role::program, works-with::mail
+libvpopmail-mysql: devel::library, interface::daemon, network::server, role::program, works-with::mail
+libvpopmail-perl: devel::lang:perl
+libvpopmail1: devel::library, interface::daemon, network::server, role::program, works-with::mail
+libvte-cil: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libvte-common: devel::library, special::auto-inst-parts, uitoolkit::gtk
+libvte-dev: devel::library, role::devel-lib, uitoolkit::gtk, uitoolkit::ncurses
+libvte-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libvte-ruby: devel::lang:ruby, uitoolkit::gtk, uitoolkit::ncurses
+libvte2.0-cil: uitoolkit::gtk
+libvte4: devel::library, role::shared-lib, uitoolkit::gtk, uitoolkit::ncurses
+libvtk4: devel::library
+libvtk4-dev: devel::library, role::devel-lib
+libvtk5: role::shared-lib
+libvtk5-dev: devel::library
+libvtk5-qt3: role::shared-lib, uitoolkit::qt
+libvtk5-qt3-dev: devel::library
+libvtk5-qt4: role::shared-lib
+libvtk5-qt4-dev: devel::library
+libwaili: devel::library, role::shared-lib, works-with::image:raster
+libwaili-dev: devel::library, role::devel-lib, works-with::image, works-with::image:raster
+libwaili1c2: role::shared-lib
+libwant-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libwarped0: special::not-yet-tagged, special::not-yet-tagged::l
+libwarped0-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libwarped0c2: role::shared-lib
+libwavpack-dev: devel::library, uitoolkit::ncurses
+libwavpack0: role::shared-lib
+libwbxml2: special::not-yet-tagged, special::not-yet-tagged::l
+libwbxml2-0: role::shared-lib
+libwbxml2-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libwbxml2-utils: special::not-yet-tagged, special::not-yet-tagged::l
+libweather-com-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libwebauth-perl: admin::login, devel::lang:perl, devel::library, implemented-in::c, implemented-in::perl, protocol::kerberos, role::devel-lib, role::shared-lib, security::authentication, special::not-yet-tagged, special::not-yet-tagged::l
+libwebauth1: admin::login, implemented-in::c, network::client, protocol::kerberos, role::shared-lib, security::authentication
+libwebauth1-dev: admin::login, devel::lang:c, devel::library, implemented-in::c, network::client, protocol::kerberos, role::devel-lib, security::authentication, special::not-yet-tagged, special::not-yet-tagged::l
+libwebkdc-perl: admin::login, devel::lang:perl, devel::library, implemented-in::perl, protocol::http, protocol::kerberos, role::devel-lib, role::shared-lib, security::authentication, special::not-yet-tagged, special::not-yet-tagged::l, suite::apache
+libwebrick-ruby: devel::lang:ruby, devel::library
+libwebrick-ruby1.6: devel::lang:ruby
+libwerken.xpath-java: devel::lang:java, devel::library
+libwfmath-0.3: special::not-yet-tagged, special::not-yet-tagged::l
+libwfmath-0.3-3c2a-dbg: devel::library
+libwfmath-0.3-dbg: devel::library, special::not-yet-tagged, special::not-yet-tagged::l
+libwfmath-0.3-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libwfmath-doc: devel::doc, devel::library, role::documentation
+libwfnetobjs0: devel::library
+libwfnetobjs0-dev: devel::library, role::devel-lib
+libwfnetobjs0c2: role::shared-lib
+libwftk-0.7: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::sdl
+libwftk-dev: devel::library, role::devel-lib
+libwftk-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libwhisker-perl: devel::lang:perl, devel::library, devel::testing-qa, implemented-in::perl, role::shared-lib
+libwibble-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib
+libwiki-toolkit-formatter-usemod-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libwiki-toolkit-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libwiki-toolkit-plugin-categoriser-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libwiki-toolkit-plugin-diff-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libwiki-toolkit-plugin-locator-grid-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libwiki-toolkit-plugin-rss-reader-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libwims: special::not-yet-tagged, special::not-yet-tagged::l
+libwine: devel::library, role::shared-lib, uitoolkit::ncurses
+libwine-alsa: devel::library
+libwine-arts: devel::library
+libwine-capi: special::not-yet-tagged, special::not-yet-tagged::l
+libwine-cil: special::not-yet-tagged, special::not-yet-tagged::l
+libwine-dev: devel::library, role::devel-lib
+libwine-gl: interface::special:not-applicable, role::shared-lib, x11::library
+libwine-gphoto2: hardware::camera, role::shared-lib
+libwine-jack: special::not-yet-tagged, special::not-yet-tagged::l
+libwine-nas: devel::library
+libwine-print: devel::library, hardware::printer
+libwine-twain: devel::library
+libwings-dev: devel::library, interface::x11, role::devel-lib, suite::gnustep
+libwmaker0-dev: devel::library, interface::x11, role::devel-lib
+libwmf-bin: devel::library, interface::commandline, role::program, scope::utility, use::converting, use::viewing, works-with::image
+libwmf-dev: devel::library, role::devel-lib
+libwmf-doc: devel::doc, devel::library, role::documentation
+libwmf0.2-7: devel::library, role::shared-lib
+libwn-dev: devel::library, field::mathematics, role::devel-lib
+libwn6: devel::library, field::mathematics, role::shared-lib
+libwnck-common: devel::i18n, devel::library, role::app-data, special::auto-inst-parts
+libwnck-dev: devel::library, role::devel-lib, uitoolkit::gtk
+libwnck18: implemented-in::c, role::shared-lib, uitoolkit::gtk
+libwnck4: devel::library, role::shared-lib, uitoolkit::gtk
+libwnn-dev: devel::library, role::devel-lib
+libwnn0: devel::library, role::shared-lib
+libwnn6: devel::library
+libwnn6-1: role::shared-lib
+libwnn6-dev: devel::library, role::devel-lib
+libwpd-stream8: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libwpd-stream8c2a: role::shared-lib, use::text-formatting, works-with::dtp
+libwpd-tools: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libwpd8: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libwpd8-dev: devel::library, role::devel-lib, role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libwpd8-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libwpd8c2a: implemented-in::c, role::shared-lib, works-with::dtp
+libwrap-ruby1.8: devel::lang:ruby
+libwrap0: devel::library, role::shared-lib
+libwrap0-dev: devel::library, role::devel-lib
+libwraster3: role::shared-lib
+libwraster3-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libwsound-dev: devel::library, role::devel-lib
+libwv-1.2-3: role::shared-lib
+libwv-dev: devel::library
+libwv2-1: special::not-yet-tagged, special::not-yet-tagged::l
+libwv2-1c2: role::shared-lib
+libwv2-dev: devel::library, role::devel-lib
+libwvstreams-dev: devel::library, role::devel-lib
+libwvstreams4.0-base: special::not-yet-tagged, special::not-yet-tagged::l
+libwvstreams4.0-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libwvstreams4.0-extras: special::not-yet-tagged, special::not-yet-tagged::l
+libwvstreams4.0-fft: special::not-yet-tagged, special::not-yet-tagged::l
+libwvstreams4.0-qt: special::not-yet-tagged, special::not-yet-tagged::l
+libwvstreams4.0-speex: special::not-yet-tagged, special::not-yet-tagged::l
+libwvstreams4.0-vorbis: special::not-yet-tagged, special::not-yet-tagged::l
+libwvstreams4.2-base: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib
+libwvstreams4.2-extras: devel::lang:c++, implemented-in::c++, role::devel-lib
+libwvstreams4.2-qt: uitoolkit::qt
+libwww-cnic-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libwww-curl-perl: devel::lang:perl, implemented-in::perl
+libwww-dev: devel::library, role::devel-lib
+libwww-doc: devel::doc, devel::library, role::documentation
+libwww-freshmeat-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libwww-google-calculator-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libwww-indexparser-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libwww-mechanize-perl: devel::lang:perl, implemented-in::perl, protocol::http, role::shared-lib
+libwww-mechanize-ruby: devel::lang:ruby
+libwww-mechanize-ruby1.8: devel::lang:ruby, role::shared-lib
+libwww-mechanize-ruby1.9: devel::lang:ruby, role::shared-lib
+libwww-mediawiki-client-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libwww-myspace-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libwww-opensearch-perl: devel::lang:perl, implemented-in::perl, network::client, protocol::http, role::shared-lib, use::searching, web::scripting, works-with-format::xml, works-with-format::xml:rss
+libwww-perl: devel::lang:perl, devel::library, implemented-in::perl, protocol::http, role::shared-lib
+libwww-search-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libwww-shorten-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libwww-ssl-dev: devel::library, protocol::ssl, role::devel-lib
+libwww-ssl0: devel::library, protocol::ssl, role::shared-lib
+libwww-topica-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libwww0: devel::library, role::shared-lib
+libwxbase2.4: devel::library
+libwxbase2.4-1: role::shared-lib
+libwxbase2.4-dbg: devel::debugger, devel::library
+libwxbase2.4-dev: devel::library, role::devel-lib, uitoolkit::wxwidgets
+libwxbase2.6-0: role::shared-lib
+libwxbase2.6-dbg: devel::library
+libwxbase2.6-dev: devel::library
+libwxgtk2.4: devel::library, role::shared-lib, uitoolkit::gtk
+libwxgtk2.4-1: role::shared-lib, uitoolkit::gtk
+libwxgtk2.4-1-contrib: uitoolkit::wxwindows
+libwxgtk2.4-contrib: devel::library, uitoolkit::wxwidgets
+libwxgtk2.4-contrib-dev: devel::library, role::devel-lib, uitoolkit::wxwidgets, uitoolkit::wxwindows
+libwxgtk2.4-dbg: devel::debugger, devel::library
+libwxgtk2.4-dev: devel::library, role::devel-lib, uitoolkit::wxwidgets, uitoolkit::wxwindows
+libwxgtk2.4-python: devel::lang:python, devel::library, implemented-in::python, role::shared-lib, uitoolkit::wxwidgets
+libwxgtk2.6-0: role::shared-lib, uitoolkit::gtk
+libwxgtk2.6-dbg: devel::library
+libwxgtk2.6-dev: devel::library, uitoolkit::wxwindows
+libx11-6: devel::lang:c, devel::library, implemented-in::c, network::client, protocol::TODO, role::shared-lib, suite::TODO, x11::library
+libx11-6-dbg: devel::library
+libx11-data: network::client, role::app-data, x11::library
+libx11-dev: devel::library, role::devel-lib
+libx11-freedesktop-desktopentry-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libx11-protocol-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libx500-dn-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libx86-1: role::shared-lib
+libx86-dev: devel::library
+libxalan110: role::shared-lib
+libxalan110-dev: devel::library
+libxalan18: special::not-yet-tagged, special::not-yet-tagged::l
+libxalan18-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libxalan18-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libxalan2-java: devel::lang:java, devel::library, implemented-in::java, role::shared-lib, works-with-format::xml:xslt
+libxalan2-java-doc: devel::doc, devel::lang:java, devel::library, role::documentation, role::program, scope::utility, x11::applet
+libxapian-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, use::searching, web::search-engine, works-with::text
+libxapian-ruby1.8: devel::lang:ruby, implemented-in::c++, role::shared-lib, use::searching, web::search-engine, works-with::text
+libxapian13: devel::lang:c++, devel::library, implemented-in::c++, role::shared-lib, use::searching, web::search-engine, works-with::text
+libxar-dev: uitoolkit::wxwindows
+libxau-dev: devel::library, role::devel-lib, security::authentication, x11::library
+libxau6: network::service, role::shared-lib, security::authentication, x11::library
+libxau6-dbg: devel::library
+libxaw-headers: devel::lang:c, implemented-in::c, role::devel-lib, uitoolkit::athena, x11::library
+libxaw6: devel::library, interface::x11, role::shared-lib
+libxaw6-dbg: devel::library, uitoolkit::athena
+libxaw6-dev: devel::library, role::devel-lib, uitoolkit::athena
+libxaw7: devel::library, interface::x11, role::shared-lib, uitoolkit::athena, x11::library
+libxaw7-dbg: devel::library, uitoolkit::athena
+libxaw7-dev: devel::library, role::devel-lib, uitoolkit::athena
+libxbae-dev: devel::library
+libxbae4: role::shared-lib
+libxbase2.0-0: role::shared-lib
+libxbase2.0-0c102: devel::library
+libxbase2.0-bin: devel::library, role::program, works-with::db
+libxbase2.0-dev: devel::library, role::devel-lib
+libxbox-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libxbox0: role::shared-lib
+libxbsql-bin: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::ncurses
+libxbsql-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libxbsql-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libxbsql0: special::not-yet-tagged, special::not-yet-tagged::l
+libxbsql0c2: role::shared-lib
+libxc-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libxc-python: special::not-yet-tagged, special::not-yet-tagged::l
+libxc1.2: special::not-yet-tagged, special::not-yet-tagged::l
+libxclass-dev: devel::library
+libxclass0: special::not-yet-tagged, special::not-yet-tagged::l
+libxclass0-dev: devel::library, role::devel-lib
+libxclass0.9.2: role::shared-lib
+libxcomposite-dev: devel::library, role::devel-lib, x11::library
+libxcomposite1: role::shared-lib
+libxcomposite1-dbg: devel::library
+libxcrypt-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libxcrypt1: role::shared-lib
+libxcursor-dev: devel::library, role::devel-lib
+libxcursor1: hardware::input:mouse, role::shared-lib, x11::library
+libxcursor1-dbg: devel::debugger, devel::library
+libxdamage-dev: devel::library, role::devel-lib, x11::library
+libxdamage1: role::shared-lib
+libxdamage1-dbg: devel::library
+libxdb-dev: devel::library, role::devel-lib
+libxdb1: role::shared-lib
+libxdb1c102: devel::library
+libxdelta2: devel::library, role::shared-lib
+libxdelta2-dev: devel::library, role::devel-lib
+libxdmcp-dev: devel::library, role::devel-lib, security::authentication, x11::library
+libxdmcp6: admin::login, network::service, role::shared-lib, x11::library
+libxdmcp6-dbg: devel::library
+libxerces-java: devel::lang:java, devel::library
+libxerces2-java: devel::interpreter, devel::lang:java, devel::library, implemented-in::java, role::shared-lib, works-with-format::xml
+libxerces2-java-doc: devel::doc, devel::library, role::documentation
+libxerces25: special::not-yet-tagged, special::not-yet-tagged::l
+libxerces25-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libxerces25-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libxerces26: special::not-yet-tagged, special::not-yet-tagged::l
+libxerces26-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libxerces26-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libxerces27: role::shared-lib
+libxerces27-dev: devel::library
+libxercesicu25: special::not-yet-tagged, special::not-yet-tagged::l
+libxercesicu26: special::not-yet-tagged, special::not-yet-tagged::l
+libxevie-dev: devel::library
+libxevie1: role::shared-lib
+libxevie1-dbg: devel::library
+libxext-dev: devel::library, role::devel-lib
+libxext6: role::shared-lib, x11::library
+libxext6-dbg: devel::library
+libxfce4mcs-client-1: special::not-yet-tagged, special::not-yet-tagged::l
+libxfce4mcs-client3: role::shared-lib
+libxfce4mcs-dev: devel::library, role::devel-lib, uitoolkit::gtk
+libxfce4mcs-manager-1: special::not-yet-tagged, special::not-yet-tagged::l
+libxfce4mcs-manager3: role::shared-lib
+libxfce4util-1: role::shared-lib, suite::xfce
+libxfce4util-dev: devel::library, role::devel-lib, uitoolkit::gtk
+libxfce4util4: role::shared-lib
+libxfcegui4-1: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+libxfcegui4-4: role::shared-lib, uitoolkit::gtk
+libxfcegui4-dev: devel::library, role::devel-lib
+libxfixes-dev: devel::library, role::devel-lib, x11::library
+libxfixes3: role::shared-lib, x11::library
+libxfixes3-dbg: devel::library
+libxfont-dev: devel::library, role::devel-lib, works-with::font, x11::library
+libxfont1: role::shared-lib, works-with::font, x11::library
+libxft-dev: devel::library, role::devel-lib
+libxft1: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libxft1-dbg: devel::library
+libxft2: devel::library, role::shared-lib, works-with::font, x11::library
+libxft2-dbg: devel::library
+libxi-dev: devel::library, role::devel-lib
+libxi6: hardware::input, role::shared-lib, x11::library
+libxi6-dbg: devel::library
+libxine-dev: devel::library, role::devel-lib, works-with::video
+libxine1: devel::library, role::shared-lib, works-with::audio, works-with::video
+libxinerama-dev: devel::library, role::devel-lib, x11::library
+libxinerama1: role::shared-lib, x11::library
+libxinerama1-dbg: devel::library
+libxiterm-dev: devel::library, role::devel-lib, uitoolkit::gtk
+libxiterm1: devel::library, role::shared-lib, uitoolkit::gtk
+libxkbfile-dev: devel::library, hardware::input:keyboard, role::devel-lib, x11::library
+libxkbfile1: hardware::input:keyboard, role::shared-lib, x11::library
+libxkbfile1-dbg: devel::library, hardware::input:keyboard
+libxkbsel-dev: hardware::input:keyboard, special::not-yet-tagged, special::not-yet-tagged::l
+libxkbui-dev: devel::library, hardware::input:keyboard, interface::x11, role::devel-lib, x11::library
+libxkbui1: hardware::input:keyboard, interface::x11, role::shared-lib
+libxkbui1-dbg: devel::library, hardware::input:keyboard
+libxklavier-dev: devel::library, role::devel-lib, uitoolkit::gtk
+libxklavier10: hardware::input:keyboard, role::shared-lib, uitoolkit::gtk
+libxklavier8: special::not-yet-tagged, special::not-yet-tagged::l
+libxmerl-erlang: devel::library
+libxml++1.0: devel::lang:c++, devel::library, role::shared-lib, special::auto-inst-parts, works-with-format::xml
+libxml++1.0-dev: devel::lang:c++, devel::library, role::devel-lib, works-with-format::xml
+libxml++1.0-doc: devel::doc, devel::lang:c++, role::documentation, works-with-format::xml
+libxml++2.6: special::not-yet-tagged, special::not-yet-tagged::l
+libxml++2.6-2: role::shared-lib
+libxml++2.6-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libxml++2.6-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libxml-atom-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libxml-autowriter-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libxml-catalog-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::editing
+libxml-checker-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxml-commons-resolver1.1-java: devel::lang:java
+libxml-commons-resolver1.1-java-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libxml-csv-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxml-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk
+libxml-dom-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::xml
+libxml-dt-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libxml-dumper-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxml-easyobj-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libxml-encoding-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxml-feed-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libxml-filter-buffertext-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxml-filter-detectws-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxml-filter-reindent-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxml-filter-saxt-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxml-filter-sort-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libxml-filter-xslt-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxml-generator-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxml-grove-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxml-handler-composer-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxml-handler-printevents-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxml-handler-trees-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxml-handler-yawriter-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxml-im-exporter-java: devel::lang:java
+libxml-libxml-common-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::xml
+libxml-libxml-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, suite::gnome, works-with-format::xml
+libxml-libxslt-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, suite::gnome, uitoolkit::gtk, works-with-format::xml, works-with-format::xml:xslt
+libxml-light-ocaml-dev: devel::lang:ocaml, devel::library
+libxml-mini-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, use::editing, works-with-format::xml
+libxml-namespacesupport-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::xml
+libxml-node-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxml-nodefilter-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libxml-opml-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libxml-parser-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::xml
+libxml-parser-ruby1.6: devel::lang:ruby
+libxml-parser-ruby1.8: devel::lang:ruby, implemented-in::ruby, role::shared-lib, works-with-format::xml
+libxml-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::xml
+libxml-qofqsf-perl: implemented-in::perl, role::source, use::converting, use::organizing, use::synchronizing, works-with-format::xml, works-with::pim
+libxml-regexp-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::xml
+libxml-rss-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::html, works-with-format::xml:rss
+libxml-rsslite-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libxml-ruby: devel::lang:ruby
+libxml-ruby1.8: devel::lang:ruby, devel::library, implemented-in::ruby, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, works-with-format::xml
+libxml-sablot-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxml-sax-expat-incremental-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libxml-sax-expat-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::xml
+libxml-sax-machines-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxml-sax-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::xml
+libxml-sax-writer-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxml-security-c-dev: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib, security::cryptography, works-with-format::xml
+libxml-security-c-doc: made-of::data:html, role::documentation, security::cryptography, use::checking, works-with-format::xml
+libxml-security-c12: implemented-in::c++, role::shared-lib, security::cryptography, use::checking, works-with-format::xml
+libxml-simple-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::xml
+libxml-simpleobject-enhanced-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libxml-simpleobject-libxml-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libxml-simpleobject-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libxml-smart-perl: devel::lang:perl, implemented-in::perl, role::shared-lib
+libxml-stream-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxml-twig-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::xml
+libxml-um-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxml-writer-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::xml
+libxml-xerces-perl: devel::lang:perl, devel::library, implemented-in::perl
+libxml-xpath-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxml-xql-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxml-xslt-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::xml, works-with-format::xml:xslt
+libxml1: devel::library, role::shared-lib, suite::gnome, works-with-format::xml
+libxml2: devel::library, role::shared-lib, suite::gnome, works-with-format::xml
+libxml2-dbg: devel::library
+libxml2-dev: devel::library, role::devel-lib, suite::gnome, works-with-format::xml
+libxml2-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+libxml2-python2.3: role::dummy, special::not-yet-tagged, special::not-yet-tagged::l
+libxml2-utils: interface::commandline, role::program, uitoolkit::ncurses, use::checking, use::configuring, works-with-format::xml
+libxmlada1: devel::lang:ada, implemented-in::ada, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l, works-with-format::xml
+libxmlada1-dev: devel::lang:ada, devel::library, implemented-in::ada, role::devel-lib, works-with-format::xml
+libxmlada2: implemented-in::ada, role::shared-lib
+libxmlada2-dev: devel::library, implemented-in::ada
+libxmlrpc++0: devel::lang:c++, protocol::xmlrpc, role::shared-lib
+libxmlrpc-c3: devel::library, protocol::xmlrpc, role::shared-lib
+libxmlrpc-c3-dev: devel::library, role::devel-lib
+libxmlrpc-ruby: devel::lang:ruby
+libxmlrpc-ruby1.6: devel::lang:ruby
+libxmlsec1: implemented-in::c, role::shared-lib, security::cryptography, works-with-format::xml
+libxmlsec1-dev: devel::library, implemented-in::c, role::devel-lib, security::cryptography, works-with-format::xml
+libxmlsec1-gnutls: implemented-in::c, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::l, suite::gnu, works-with-format::xml
+libxmlsec1-nss: implemented-in::c, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::l, works-with-format::xml
+libxmlsec1-openssl: implemented-in::c, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::l, works-with-format::xml
+libxmltok1: devel::library, role::shared-lib
+libxmltok1-dev: devel::library, role::devel-lib
+libxmltv-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, works-with-format::xml
+libxmms-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib, sound::player, suite::xmms, uitoolkit::gtk
+libxmms-ruby: devel::lang:ruby, devel::library, suite::xmms, uitoolkit::gtk
+libxmmsclient++-dev: devel::library, implemented-in::c++, suite::xmms2
+libxmmsclient++-glib-dev: devel::library, implemented-in::c++, suite::xmms2
+libxmmsclient++-glib0: implemented-in::c++, role::shared-lib, suite::xmms2
+libxmmsclient++0: implemented-in::c++, role::shared-lib, suite::xmms2
+libxmmsclient-dev: devel::library, implemented-in::c, suite::xmms2
+libxmmsclient-glib-dev: devel::library, implemented-in::c, suite::xmms2
+libxmmsclient-glib0: implemented-in::c, role::shared-lib, suite::xmms2
+libxmmsclient-ruby: devel::lang:ruby, role::dummy, special::meta, suite::xmms2
+libxmmsclient-ruby1.8: devel::lang:ruby, implemented-in::c, suite::xmms2
+libxmmsclient0: implemented-in::c, role::shared-lib, suite::xmms2
+libxmp2: implemented-in::c, role::shared-lib
+libxmpi4: role::shared-lib
+libxmpi4-dev: devel::library, role::devel-lib
+libxmpp4r-ruby: devel::lang:ruby
+libxmpp4r-ruby1.8: devel::lang:ruby
+libxmu-dev: devel::library, role::devel-lib
+libxmu-headers: devel::library, role::devel-lib, x11::library
+libxmu6: role::shared-lib, x11::library
+libxmu6-dbg: devel::library
+libxmuu-dev: devel::library, role::devel-lib
+libxmuu1: role::shared-lib, x11::library
+libxmuu1-dbg: devel::library
+libxnee-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libxosd-dev: devel::library, interface::x11, role::devel-lib
+libxosd2: devel::library, role::shared-lib
+libxp-dev: devel::library, hardware::printer, role::devel-lib
+libxp-java: devel::lang:java, special::not-yet-tagged, special::not-yet-tagged::l
+libxp6: hardware::printer, role::shared-lib, x11::library
+libxp6-dbg: devel::library, hardware::printer
+libxplc0.3.11: special::not-yet-tagged, special::not-yet-tagged::l
+libxplc0.3.11-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+libxplc0.3.13: role::shared-lib
+libxplc0.3.13-dev: devel::library
+libxpm-dev: devel::library, role::devel-lib
+libxpm4: role::shared-lib, works-with::image:raster, x11::library
+libxpm4-dbg: devel::library
+libxpp2-java: devel::lang:java
+libxpp3-java: devel::lang:java
+libxprintapputil-dev: devel::library, hardware::printer
+libxprintapputil1: hardware::printer, role::shared-lib
+libxprintutil-dev: devel::library, hardware::printer
+libxprintutil1: hardware::printer, role::shared-lib
+libxrandr-dev: devel::library, role::devel-lib
+libxrandr2: role::shared-lib, x11::library
+libxrandr2-dbg: devel::debugger, devel::library
+libxrender-dev: devel::library, role::devel-lib
+libxrender1: role::shared-lib, x11::library
+libxrender1-dbg: devel::debugger, devel::library
+libxres-dev: devel::library, role::devel-lib, x11::library
+libxres1: role::shared-lib, x11::library
+libxres1-dbg: devel::library
+libxsettings-client-dev: devel::lang:c, devel::library, hardware::embedded, implemented-in::c, interface::x11, role::devel-lib, suite::TODO, uitoolkit::xlib, x11::library
+libxsettings-client-doc: devel::doc, hardware::embedded, made-of::data:html, role::documentation
+libxsettings-client0: devel::lang:c, devel::library, hardware::embedded, implemented-in::c, interface::x11, role::devel-lib, role::shared-lib, suite::TODO, uitoolkit::xlib, x11::library
+libxsettings-dev: devel::lang:c, devel::library, hardware::embedded, implemented-in::c, interface::x11, role::devel-lib, suite::TODO, uitoolkit::xlib
+libxsettings0: devel::lang:c, devel::library, hardware::embedded, implemented-in::c, interface::x11, role::devel-lib, role::shared-lib, suite::TODO, uitoolkit::xlib, x11::library
+libxsharp-dev: special::not-yet-tagged, special::not-yet-tagged::l
+libxsharp0: special::not-yet-tagged, special::not-yet-tagged::l
+libxslt-ruby: devel::lang:ruby
+libxslt-ruby1.8: devel::lang:ruby, special::not-yet-tagged, special::not-yet-tagged::l
+libxslt1: devel::library
+libxslt1-dbg: devel::library
+libxslt1-dev: devel::library, role::devel-lib
+libxslt1-python2.3: role::dummy, special::not-yet-tagged, special::not-yet-tagged::l
+libxslt1.1: role::shared-lib, works-with-format::xml, works-with-format::xml:xslt
+libxsltc-java: devel::code-generator, devel::lang:java, devel::library
+libxss-dev: devel::library, role::devel-lib, x11::library, x11::screensaver
+libxss1: role::shared-lib, x11::library
+libxss1-dbg: devel::library
+libxstr-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib
+libxstyx: devel::library
+libxt-dev: devel::library, role::devel-lib
+libxt-java: devel::lang:java, devel::library, role::shared-lib, works-with-format::xml, works-with-format::xml:xslt
+libxt6: role::shared-lib, x11::library
+libxt6-dbg: devel::library
+libxtemplate-ruby1.8: devel::lang:ruby
+libxtm-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libxtrap-dev: devel::library, role::devel-lib
+libxtrap6: role::shared-lib, x11::library
+libxtrap6-dbg: devel::library
+libxtst-dev: devel::library, role::devel-lib
+libxtst6: role::shared-lib, x11::library
+libxtst6-dbg: devel::library
+libxul-dev: devel::library
+libxul0d: protocol::soap, role::shared-lib, suite::mozilla, uitoolkit::gtk, works-with-format::svg, works-with-format::xml:xslt
+libxul0d-dbg: devel::library
+libxv-dev: devel::library, role::devel-lib
+libxv1: role::shared-lib, x11::library
+libxv1-dbg: devel::library
+libxvmc-dev: devel::library, role::devel-lib, works-with::video, x11::library
+libxvmc1: role::shared-lib, x11::library
+libxvmc1-dbg: devel::library
+libxxf86dga-dev: devel::library, hardware::video, role::devel-lib, x11::library
+libxxf86dga1: role::shared-lib, x11::library
+libxxf86dga1-dbg: devel::library
+libxxf86misc-dev: devel::library, hardware::input, role::devel-lib, x11::library
+libxxf86misc1: hardware::input, role::shared-lib
+libxxf86misc1-dbg: devel::library, hardware::input
+libxxf86vm-dev: devel::library, hardware::video, role::devel-lib, x11::library
+libxxf86vm1: role::shared-lib, x11::library
+libxxf86vm1-dbg: devel::library
+liby-dev: devel::library, role::devel-lib
+liby2-14: role::shared-lib
+libyaml-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+libyaml-ruby: devel::lang:ruby, devel::library, implemented-in::ruby
+libyaml-ruby1.6: devel::lang:ruby
+libyaml-syck-perl: devel::lang:perl
+libyate1.0.0: role::shared-lib
+libyaz: special::not-yet-tagged, special::not-yet-tagged::l
+libyaz-dev: devel::library, role::devel-lib
+libyaz2: role::shared-lib
+libyehia0.5-0: devel::library
+libyehia0.5-dev: devel::library, role::devel-lib
+libyehia0.5-python: devel::lang:python, devel::library
+libyehia0.5-script: devel::library
+libyehia0.5-script-gtk: devel::library, uitoolkit::gtk
+libytnef0: role::shared-lib
+libytnef0-dev: devel::library
+libzap-dev: devel::library, role::devel-lib
+libzap1: devel::library, role::shared-lib
+libzephyr-dev: devel::library, role::devel-lib
+libzephyr3: devel::library, role::shared-lib
+libzephyr3-krb: devel::library, protocol::kerberos
+libzeroc-ice-dev: devel::library
+libzeroc-ice-java: devel::lang:java
+libzeroc-ice31: role::shared-lib
+libzip-ocaml: devel::lang:ocaml, devel::library, implemented-in::ocaml, use::compressing
+libzip-ocaml-dev: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib, use::compressing
+libzip-ruby1.6: devel::lang:ruby, use::compressing, use::storing, works-with-format::zip, works-with::archive
+libzip-ruby1.8: devel::lang:ruby, use::compressing, use::storing, works-with-format::zip, works-with::archive
+libzipios++-dev: devel::library, implemented-in::c++, role::devel-lib, works-with-format::zip, works-with::archive
+libzipios++0c102: devel::library, implemented-in::c++, works-with-format::zip, works-with::archive
+libzlib-ruby: devel::lang:ruby, devel::library
+libzlib-ruby1.6: devel::lang:ruby
+libzorp2: role::shared-lib
+libzorp2-dev: devel::library, role::devel-lib
+libzorpll: devel::library, network::firewall, security::firewall
+libzorpll-dbg: devel::library
+libzorpll-dev: devel::library, role::devel-lib
+libzorpll3.0.6: role::shared-lib
+libzorpll3.0.6-dbg: devel::library
+libzrtpcpp-0.9-0: role::shared-lib, suite::gnu
+libzrtpcpp-dev: devel::library, suite::gnu
+libzvbi-common: devel::library, role::documentation, special::auto-inst-parts
+libzvbi-dev: devel::library, role::devel-lib
+libzvbi-doc: devel::library, role::documentation
+libzvbi0: devel::library, role::shared-lib
+libzvt-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk
+libzvt2: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libzvt2.0-0: devel::library, role::shared-lib, suite::gnome, uitoolkit::gtk
+libzvt2.0-dev: devel::library, role::devel-lib, suite::gnome, uitoolkit::gtk
+libzzip-0-12: role::shared-lib, works-with-format::zip, works-with::archive
+libzzip-dev: devel::library, role::devel-lib, scope::utility, works-with-format::zip, works-with::archive
+licq: network::client, protocol::oscar, role::program, use::chatting
+licq-dev: devel::library, protocol::oscar, role::devel-lib, use::chatting
+licq-plugin-autoreply: special::not-yet-tagged, special::not-yet-tagged::l
+licq-plugin-console: interface::commandline, role::plugin, uitoolkit::ncurses, use::chatting
+licq-plugin-forwarder: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::ncurses
+licq-plugin-jonsgtk: interface::x11, protocol::oscar, role::plugin, role::shared-lib, uitoolkit::gtk, use::chatting, x11::application
+licq-plugin-kde: interface::x11, role::plugin, suite::kde, uitoolkit::qt, use::chatting, x11::application
+licq-plugin-osd: special::not-yet-tagged, special::not-yet-tagged::l
+licq-plugin-qt: interface::x11, role::plugin, uitoolkit::qt, use::chatting
+licq-plugin-rms: interface::daemon, role::plugin, use::chatting
+lidstools-2.4: security::ids
+liece: filetransfer::dcc, network::client, protocol::irc, role::plugin, role::program, suite::emacs, use::chatting
+liece-dcc: filetransfer::dcc, protocol::ipv6, protocol::irc, role::plugin, suite::emacs, use::chatting
+lifelines: field::genealogy, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, works-with::people
+lifelines-doc: field::genealogy, made-of::data:html, made-of::data:pdf, made-of::data:xml, role::documentation, works-with::people
+lifelines-doc-sv: culture::swedish, field::genealogy, made-of::data:html, made-of::data:pdf, made-of::data:xml, role::documentation, works-with::people
+lifelines-reports: field::genealogy, role::plugin, scope::utility, works-with::people
+liferea: implemented-in::c, interface::x11, network::client, protocol::http, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::browsing, use::downloading, web::blog, works-with-format::xml, works-with-format::xml:rss, x11::application
+liferea-gtkhtml: implemented-in::c, role::plugin, special::not-yet-tagged, special::not-yet-tagged::l, suite::gnome, uitoolkit::gtk, works-with-format::xml, works-with-format::xml:rss
+liferea-mozilla: role::dummy, x11::application
+liferea-xulrunner: implemented-in::c, role::plugin, uitoolkit::gtk
+lightlab: devel::examples, game::demos, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::gameplaying, works-with::3dmodel
+lightning: devel::lang:c, devel::library, devel::machinecode, implemented-in::c, interface::3d, interface::commandline, role::devel-lib, suite::gnu
+lightspeed: field::astronomy, game::toys, interface::3d, role::program, uitoolkit::gtk, use::entertaining, works-with::3dmodel, x11::application
+lighttpd: filetransfer::http, implemented-in::c, interface::daemon, network::server, protocol::http, protocol::ipv6, protocol::ldap, protocol::ssl, role::program, scope::utility, web::cgi, web::server, works-with-format::html
+lighttpd-doc: role::documentation
+lighttpd-mod-cml: devel::lang:lua, role::shared-lib, special::obsolete
+lilo: admin::boot, interface::commandline, role::program, scope::utility
+lilo-config: admin::boot, admin::configuring, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::configuring, x11::application
+lilo-doc: admin::boot, made-of::data:postscript, role::documentation
+lilypond: implemented-in::c++, implemented-in::python, implemented-in::scheme, interface::commandline, role::program, scope::utility, suite::gnu, use::typesetting, works-with-format::tex, works-with::music-notation, works-with::text
+lilypond-data: role::app-data, special::not-yet-tagged, special::not-yet-tagged::l, use::typesetting, works-with-format::tex, works-with::music-notation, works-with::text
+lilypond-doc: made-of::data:html, made-of::data:postscript, made-of::data:tex, role::documentation, use::typesetting, works-with-format::tex, works-with::music-notation, works-with::text
+lilypond1.3: role::dummy, special::obsolete, use::typesetting, works-with-format::tex, works-with::music-notation, works-with::text
+limo: interface::commandline, role::program, scope::utility, works-with::file
+lincity: game::strategy, interface::x11, role::program, use::gameplaying, x11::application
+lincity-ng: game::simulation, interface::x11, x11::application
+lincredits: game::toys, implemented-in::python, use::printing, works-with-format::html, works-with-format::tex, works-with::text
+lincvs: role::dummy
+linda: devel::packaging, devel::testing-qa, implemented-in::python, interface::commandline, role::program, scope::utility, suite::debian, use::checking, works-with::software:package
+lineak-defaultplugin: hardware::input:keyboard, hardware::storage, hardware::storage:cd, role::plugin, sound::mixer, special::not-yet-tagged, special::not-yet-tagged::l, works-with::audio
+lineak-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::l
+lineak-kdeplugins: hardware::input:keyboard, role::plugin, special::not-yet-tagged, special::not-yet-tagged::l, suite::kde, uitoolkit::qt
+lineak-xosdplugin: hardware::input:keyboard, hardware::video, role::plugin, special::not-yet-tagged, special::not-yet-tagged::l
+lineakd: hardware::input:keyboard, interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::l
+linesrv: implemented-in::c, interface::daemon, interface::web, network::configuration, network::server, role::program, use::monitor, web::cgi
+linesrv-mysql: devel::lang:sql, implemented-in::c, interface::daemon, network::configuration, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::l, use::monitor, works-with::db
+lingot: implemented-in::c, role::program, uitoolkit::gtk
+lingoteach-lesson: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+lingoteach-sound-english: culture::TODO, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk, use::learning
+lingoteach-sound-german: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+lingoteach-sound-spanish: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+lingoteach-ui: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+linhdd: admin::filesystem, role::program, uitoolkit::gtk
+link-grammar: field::linguistics, interface::commandline, role::program, use::checking, works-with::dictionary
+link-grammar-dictionaries-en: culture::TODO, field::linguistics, made-of::data:dictionary, role::app-data
+link-monitor-applet: uitoolkit::gtk
+linkchecker: implemented-in::python, interface::commandline, interface::web, protocol::ftp, protocol::http, role::program, role::shared-lib, scope::utility, use::checking, works-with-format::html, works-with::text
+linklint: implemented-in::perl, interface::commandline, interface::web, protocol::ftp, protocol::http, role::program, scope::utility, use::checking, works-with-format::html, works-with::text
+links: interface::text-mode, network::client, protocol::http, role::program, use::browsing, web::browser, works-with-format::html, works-with::text
+links-ssl: interface::text-mode, protocol::ssl, role::dummy, special::obsolete, use::browsing, web::browser, works-with-format::html, works-with::text
+links2: interface::commandline, interface::framebuffer, interface::text-mode, interface::x11, network::client, protocol::http, protocol::ssl, role::program, uitoolkit::ncurses, use::browsing, web::browser, works-with-format::html, works-with::text, x11::application
+linm: uitoolkit::ncurses
+linneighborhood: filetransfer::smb, interface::x11, network::client, protocol::smb, role::program, uitoolkit::gtk, use::browsing, x11::application
+linpac: hardware::hamradio, uitoolkit::ncurses
+linphone: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+linphone-common: made-of::TODO, role::app-data
+linphone-nox: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::ncurses
+linpopup: filetransfer::smb, interface::x11, network::client, protocol::smb, role::program, uitoolkit::gtk, use::chatting, x11::application
+linpqa: devel::compiler, interface::commandline, role::program, scope::utility, works-with::software:source
+linpsk: hardware::hamradio, interface::x11, role::program, scope::utility, uitoolkit::qt, x11::application
+linsmith: uitoolkit::gtk
+lintian: devel::packaging, devel::testing-qa, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, use::checking, works-with::software:package
+linup: special::not-yet-tagged, special::not-yet-tagged::l
+linux-doc-2.6.18: admin::kernel, made-of::data:html, role::documentation
+linux-headers-2.6-486: admin::kernel
+linux-headers-2.6-686: admin::kernel
+linux-headers-2.6-k7: admin::kernel
+linux-headers-2.6.12-1: devel::buildtools, devel::lang:c, implemented-in::c, role::devel-lib, works-with::software:source
+linux-headers-2.6.18-2: devel::lang:c, devel::library, devel::special:todo, implemented-in::c, role::devel-lib
+linux-headers-2.6.18-2-686: devel::lang:c, devel::library, devel::special:todo, implemented-in::c, role::devel-lib
+linux-headers-2.6.18-2-k7: devel::lang:c, devel::library, devel::special:todo, implemented-in::c, role::devel-lib
+linux-headers-2.6.18-3: devel::buildtools, implemented-in::c, role::source
+linux-headers-2.6.18-3-486: admin::kernel, devel::lang:c, devel::library, implemented-in::c, role::devel-lib
+linux-headers-2.6.18-3-686: admin::kernel, role::devel-lib
+linux-headers-2.6.18-3-amd64: admin::kernel, role::devel-lib
+linux-headers-2.6.18-3-k7: admin::kernel, role::devel-lib
+linux-headers-2.6.18-4: devel::library, implemented-in::c, role::shared-lib
+linux-headers-2.6.18-4-686: admin::kernel, role::source
+linux-image-2.6-486: admin::kernel
+linux-image-2.6-686: admin::kernel
+linux-image-2.6-686-smp: admin::kernel
+linux-image-2.6-k7: admin::kernel
+linux-image-2.6-k7-smp: admin::kernel
+linux-image-2.6.18-2-686: admin::boot, admin::hardware, admin::kernel, implemented-in::c, suite::debian
+linux-image-2.6.18-2-k7: admin::kernel, implemented-in::c, role::special:todo
+linux-image-2.6.18-3-486: admin::boot, admin::hardware, admin::kernel, implemented-in::c, suite::debian, use::driver
+linux-image-2.6.18-3-686: admin::boot, admin::hardware, admin::kernel, implemented-in::c, suite::debian, use::driver
+linux-image-2.6.18-3-686-bigmem: admin::boot, admin::hardware, admin::kernel, implemented-in::c, suite::debian, use::driver
+linux-image-2.6.18-3-amd64: admin::kernel, implemented-in::c, role::TODO
+linux-image-2.6.18-3-k7: admin::boot, admin::hardware, admin::kernel, implemented-in::c, suite::debian, use::driver
+linux-image-2.6.18-4-686: admin::kernel
+linux-image-2.6.18-4-amd64: role::program
+linux-image-2.6.18-4-k7: admin::kernel
+linux-image-486: admin::kernel
+linux-image-686: admin::kernel
+linux-image-k7: admin::kernel
+linux-kbuild-2.6.18: admin::kernel, role::special:todo
+linux-kernel-headers: admin::kernel, devel::lang:c, devel::library, implemented-in::c, role::devel-lib
+linux-manual-2.6.18: admin::kernel, made-of::data:man, role::documentation
+linux-sound-base: admin::configuring, role::app-data, works-with::audio
+linux-source-2.6.18: admin::kernel, devel::debian, implemented-in::c, role::source
+linux-wlan-ng: admin::hardware, role::special:not-applicable, use::driver
+linux-wlan-ng-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+linux-wlan-ng-firmware: admin::hardware, role::data
+linux-wlan-ng-modules-2.4.27-2-386: special::not-yet-tagged, special::not-yet-tagged::l
+linux-wlan-ng-modules-2.4.27-2-586tsc: special::not-yet-tagged, special::not-yet-tagged::l
+linux-wlan-ng-modules-2.4.27-2-686: special::not-yet-tagged, special::not-yet-tagged::l
+linux-wlan-ng-modules-2.4.27-2-686-smp: special::not-yet-tagged, special::not-yet-tagged::l
+linux-wlan-ng-modules-2.4.27-2-k6: special::not-yet-tagged, special::not-yet-tagged::l
+linux-wlan-ng-modules-2.4.27-2-k7: special::not-yet-tagged, special::not-yet-tagged::l
+linux-wlan-ng-modules-2.4.27-2-k7-smp: special::not-yet-tagged, special::not-yet-tagged::l
+linux-wlan-ng-source: admin::kernel, implemented-in::c, role::source
+linux32: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l
+linuxdcpp0.691: implemented-in::c++, interface::x11, network::client, protocol::ip, protocol::ssl, role::program, uitoolkit::gtk, use::downloading, works-with::file, works-with::network-traffic
+linuxdoc-tools: interface::commandline, role::program, scope::utility, use::checking, use::converting, works-with-format::docbook, works-with-format::sgml, works-with::text
+linuxdoc-tools-info: interface::commandline, role::plugin, special::not-yet-tagged, special::not-yet-tagged::l, use::converting, works-with-format::info, works-with-format::sgml, works-with::text
+linuxdoc-tools-latex: interface::commandline, role::plugin, special::not-yet-tagged, special::not-yet-tagged::l, use::converting, works-with-format::sgml, works-with-format::tex, works-with::text
+linuxdoc-tools-text: interface::commandline, role::plugin, special::not-yet-tagged, special::not-yet-tagged::l, use::converting, works-with-format::plaintext, works-with-format::sgml, works-with::text
+linuxfacile: culture::italian, made-of::data:postscript, role::documentation
+linuxinfo: interface::commandline, role::program, scope::utility
+linuxlogo: admin::boot, game::toys, interface::commandline, role::program, scope::utility
+linuxprinting.org-ppds: hardware::printer
+linuxsms: special::not-yet-tagged, special::not-yet-tagged::l
+linuxtrade: field::finance, interface::text-mode, network::client, role::program, uitoolkit::ncurses
+linuxvideostudio: uitoolkit::gtk, use::editing, works-with::video
+linuxvnc: interface::text-mode, network::server, role::program, use::login, use::viewing
+linwsjt: hardware::hamradio, interface::x11, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::wxwidgets, x11::application
+liquidwar: game::strategy, interface::x11, role::program, use::gameplaying, x11::application
+liquidwar-data: game::strategy, interface::x11, role::app-data, use::gameplaying, x11::application
+liquidwar-server: x11::application
+lirc: network::server, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l
+lirc-modules-source: admin::kernel, implemented-in::c, role::source, special::not-yet-tagged, special::not-yet-tagged::l, use::driver
+lirc-svga: interface::svga, interface::x11, special::not-yet-tagged, special::not-yet-tagged::l, x11::application
+lirc-x: interface::x11, special::not-yet-tagged, special::not-yet-tagged::l, x11::application
+lire: implemented-in::perl, interface::commandline, role::program, scope::utility, security::log-analyzer, use::converting, works-with-format::docbook, works-with::logfile, works-with::text
+lire-devel-doc: devel::doc, made-of::data:html, made-of::data:pdf, role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+lire-doc: made-of::data:html, made-of::data:pdf, role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+lisa: interface::x11, network::scanner, role::program, scope::utility, suite::kde, uitoolkit::qt, use::searching, x11::application
+lisaac: devel::compiler
+lisaac-common: devel::library
+listadmin: implemented-in::perl, interface::commandline, mail::list, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l, works-with::mail
+listen: implemented-in::python, role::program, sound::player, uitoolkit::gtk, works-with-format::mp3, works-with-format::oggtheora, works-with-format::oggvorbis, works-with-format::wav
+lists-archives: implemented-in::perl, interface::web, mail::list, role::program, scope::utility, use::converting, works-with-format::html, works-with::mail, works-with::text
+litmus: devel::testing-qa, interface::commandline, protocol::webdav, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l
+littler: devel::lang:r, field::statistics, implemented-in::c, interface::commandline, role::program, suite::gnu
+littlewizard: devel::interpreter, implemented-in::c++, interface::x11, role::program, uitoolkit::gtk, use::learning, x11::application
+littlewizard-data: made-of::data:icons, role::app-data
+live-package: devel::debian, interface::commandline, role::program, scope::utility, suite::debian, works-with-format::iso9660, works-with::archive, works-with::software:package
+liveice: uitoolkit::ncurses
+liwc: devel::lang:c, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::software:source
+lkcdutils: admin::kernel, devel::debugger, role::dummy, special::not-yet-tagged, special::not-yet-tagged::l
+lkcdutils-dev: admin::kernel, devel::debugger, devel::library, role::dummy, special::not-yet-tagged, special::not-yet-tagged::l
+lkl: hardware::input:keyboard, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::l
+lksctp-tools: admin::kernel, devel::testing-qa, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l, use::checking
+lksctp-tools-doc: admin::kernel, role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+lletters: game::typing, interface::x11, role::program, uitoolkit::gtk, use::gameplaying, use::learning, x11::application
+lletters-media: game::typing, interface::x11, role::app-data, special::auto-inst-parts, uitoolkit::gtk, use::gameplaying
+llgal: implemented-in::perl, interface::commandline, role::program, use::organizing, use::viewing, web::scripting, works-with::image, works-with::image:raster, works-with::video
+lltag: implemented-in::perl, interface::commandline, role::program, use::editing, use::organizing, use::storing, use::viewing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+llvm: special::not-yet-tagged, special::not-yet-tagged::l
+llvm-cfe: special::not-yet-tagged, special::not-yet-tagged::l
+llvm-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+llvm-libs: special::not-yet-tagged, special::not-yet-tagged::l
+lm-batmon: admin::power-management, hardware::laptop, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::monitor, x11::applet, x11::application
+lm-sensors: admin::kernel, interface::commandline, role::program, scope::utility, use::monitor
+lm-sensors-2.4.27-2-386: admin::kernel, special::not-yet-tagged, special::not-yet-tagged::l, use::driver, use::monitor
+lm-sensors-2.4.27-2-586tsc: admin::kernel, special::not-yet-tagged, special::not-yet-tagged::l, use::driver, use::monitor
+lm-sensors-2.4.27-2-686: admin::kernel, special::not-yet-tagged, special::not-yet-tagged::l, use::driver, use::monitor
+lm-sensors-2.4.27-2-686-smp: admin::kernel, special::not-yet-tagged, special::not-yet-tagged::l, use::driver, use::monitor
+lm-sensors-2.4.27-2-k6: admin::kernel, special::not-yet-tagged, special::not-yet-tagged::l, use::driver, use::monitor
+lm-sensors-2.4.27-2-k7: admin::kernel, special::not-yet-tagged, special::not-yet-tagged::l, use::driver, use::monitor
+lm-sensors-2.4.27-2-k7-smp: admin::kernel, special::not-yet-tagged, special::not-yet-tagged::l, use::driver, use::monitor
+lm-sensors-source: admin::kernel, implemented-in::c, role::source, use::driver, use::monitor
+lmarbles: game::puzzle, interface::x11, uitoolkit::sdl, x11::application
+lmbench: special::not-yet-tagged, special::not-yet-tagged::l
+lmbench-doc: role::documentation
+lmemory: admin::cluster, game::card, interface::x11, role::program, uitoolkit::gtk, use::gameplaying, works-with::image, works-with::image:raster, x11::application
+lmms: field::arts, implemented-in::c++, scope::application, sound::mixer, sound::recorder, sound::sequencer, special::completely-tagged, suite::kde, uitoolkit::qt, uitoolkit::sdl, use::editing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, works-with::music-notation, x11::application
+lmodern: made-of::data:font, role::app-data, use::typesetting, works-with-format::postscript, works-with-format::tex, works-with::text, x11::font
+lnpd: admin::boot, interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::l
+load-dirs-common: devel::rcs, role::app-data, special::auto-inst-parts, special::not-yet-tagged, special::not-yet-tagged::l
+loadlin: admin::boot, interface::commandline, role::program, scope::utility
+loadmeter: interface::x11, role::program, scope::utility, use::monitor, x11::application
+loadwatch: interface::commandline, role::program, scope::utility, use::monitor, works-with::software:running
+localeconf: admin::configuring, role::program, scope::utility, suite::debian, use::configuring
+localepurge: interface::commandline, role::program, scope::utility, suite::debian, use::configuring
+locales: admin::configuring, devel::i18n, implemented-in::c, role::app-data, role::program, scope::utility, suite::gnu
+locales-all: admin::configuring, devel::i18n, role::app-data, scope::utility, suite::gnu
+localization-config: admin::configuring, devel::i18n, special::not-yet-tagged, special::not-yet-tagged::l
+lock-keys-applet: interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, x11::applet, x11::application
+lockfile-progs: interface::commandline, role::program, scope::utility, works-with::mail
+lockout: admin::user-management, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l, use::configuring
+lockvc: interface::svga, role::program, scope::utility
+loco: implemented-in::perl, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l, works-with::logfile
+lodju: implemented-in::python, interface::x11, suite::gnome, uitoolkit::gtk, use::organizing, works-with::image, works-with::image:raster, x11::application
+log-analysis: implemented-in::perl, interface::x11, role::program, scope::utility, uitoolkit::tk, works-with::logfile
+log2mail: admin::logging, admin::monitoring, implemented-in::c++, interface::daemon, network::server, role::program, scope::utility, use::monitor, works-with::logfile, works-with::mail
+logcheck: admin::logging, implemented-in::shell, interface::daemon, network::server, role::program, scope::utility, use::monitor, works-with::logfile, works-with::mail
+logcheck-database: admin::logging, role::app-data, special::auto-inst-parts, use::monitor, works-with::logfile, works-with::mail
+logidee-tools: interface::commandline, role::program, use::editing, use::learning, use::text-formatting, works-with-format::xml, works-with::text
+login: admin::login, interface::commandline, interface::text-mode, role::program, scope::application, security::authentication, use::login
+login.app: implemented-in::c++, interface::x11, role::plugin, suite::gnustep, use::login, x11::display-manager
+logjam: interface::x11, network::client, role::program, suite::gnome, uitoolkit::gtk, use::editing, use::organizing, x11::application
+logjam-xmms: interface::commandline, interface::x11, network::client, role::program, suite::xmms, uitoolkit::gtk, x11::application
+logrotate: admin::automation, admin::logging, interface::commandline, network::server, role::program, use::compressing, works-with::logfile
+logtail: admin::logging, implemented-in::perl, interface::commandline, role::program, scope::utility, use::viewing, works-with::logfile
+logtool: role::program, scope::utility, security::log-analyzer, special::not-yet-tagged, special::not-yet-tagged::l, works-with-format::html, works-with::logfile, works-with::text
+logtools: interface::commandline, role::program, scope::utility, security::log-analyzer, special::not-yet-tagged, special::not-yet-tagged::l, works-with::logfile
+logwatch: admin::monitoring, field::special:not-applicable, implemented-in::perl, role::program, security::log-analyzer, use::monitor, works-with::logfile
+lojban-common: culture::TODO, culture::special:todo, field::linguistics, made-of::data:dictionary, role::app-data
+loki: field::biology, special::not-yet-tagged, special::not-yet-tagged::l
+loki-doc: field::biology, made-of::data:postscript, role::documentation, special::not-yet-tagged, special::not-yet-tagged::l
+lokkit: admin::configuring, interface::text-mode, role::program, scope::utility, security::firewall, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+lomoco: admin::hardware, hardware::input:mouse, hardware::usb, implemented-in::c, interface::commandline, role::program, scope::utility, use::configuring
+londonlaw: implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::wxwidgets
+longrun: hardware::laptop, interface::commandline, role::program, scope::utility, uitoolkit::gtk, x11::application
+lookup: interface::commandline, role::program, scope::utility, use::searching, works-with::dictionary
+lookup-el: implemented-in::lisp, role::plugin, suite::emacs, works-with::dictionary
+loop-aes-2.6-486: security::cryptography
+loop-aes-2.6-686: security::cryptography
+loop-aes-2.6-k7: security::cryptography
+loop-aes-ciphers-source: admin::kernel, implemented-in::c, role::source, security::cryptography
+loop-aes-source: admin::kernel, implemented-in::c, role::source, security::cryptography
+loop-aes-utils: admin::kernel, interface::commandline, role::program, scope::utility, security::cryptography
+lopster: interface::x11, network::client, role::program, uitoolkit::gtk, use::chatting, use::downloading, works-with-format::mp3, works-with::audio, x11::application
+lostirc: filetransfer::dcc, interface::commandline, interface::x11, network::client, protocol::irc, role::program, uitoolkit::gtk, use::chatting, x11::application
+lout: implemented-in::c, interface::commandline, role::program, use::typesetting, works-with-format::pdf, works-with-format::plaintext, works-with-format::postscript, works-with::software:source, works-with::text
+lout-common: role::app-data, role::documentation, special::not-yet-tagged, special::not-yet-tagged::l, use::typesetting
+lout-doc: role::documentation, use::typesetting
+lp-solve: field::mathematics, role::program, scope::application
+lpc-mode: game::mud, role::plugin, special::not-yet-tagged, special::not-yet-tagged::l, suite::emacs
+lpe: devel::editor, interface::text-mode, uitoolkit::ncurses, use::editing, works-with::text
+lphdisk: admin::package-management, hardware::laptop, role::program, scope::utility
+lphoto: hardware::camera, interface::x11, role::program, scope::application, uitoolkit::gtk, use::organizing, works-with-format::jpg, works-with::image, works-with::image:raster, x11::application
+lpkg: role::program, scope::utility, works-with::software:package
+lpr: hardware::printer, interface::daemon, network::server, role::program, use::printing
+lprfax: hardware::modem, role::program, scope::utility, works-with::fax
+lprng: hardware::printer, interface::daemon, network::server, role::program, use::printing
+lprng-doc: hardware::printer, role::documentation, use::printing
+lprof: implemented-in::c++, interface::x11, role::program, scope::utility, uitoolkit::qt, x11::application
+lrzsz: admin::file-distribution, hardware::modem, implemented-in::tcl, interface::commandline, role::program, scope::utility, use::downloading, use::transmission
+lsadb: hardware::detection, interface::commandline, role::program, scope::utility
+lsb: role::metapackage
+lsb-base: admin::boot, admin::filesystem, admin::package-management, implemented-in::shell, role::shared-lib
+lsb-core: special::not-yet-tagged, special::not-yet-tagged::l
+lsb-cxx: devel::lang:c++, special::not-yet-tagged, special::not-yet-tagged::l
+lsb-desktop: uitoolkit::gtk, uitoolkit::qt
+lsb-graphics: special::not-yet-tagged, special::not-yet-tagged::l
+lsb-release: interface::commandline, role::program, scope::utility
+lsb-rpm: special::not-yet-tagged, special::not-yet-tagged::l, works-with::software:package
+lsbappchk: devel::buildtools, devel::lang:c, interface::commandline, role::program, scope::utility
+lsdb: role::plugin, special::not-yet-tagged, special::not-yet-tagged::l, suite::emacs, works-with::db, works-with::mail
+lsdvd: hardware::storage:dvd, interface::commandline, role::program, scope::utility, use::scanning
+lsh: interface::shell, role::program, scope::utility
+lsh-client: interface::commandline, interface::shell, network::client, protocol::ssh, role::program, scope::utility, security::authentication, use::login
+lsh-server: admin::login, interface::daemon, network::server, protocol::ssh, role::program, security::authentication, uitoolkit::ncurses, use::login
+lsh-utils: interface::text-mode, protocol::ssh, role::program, scope::utility, security::authentication, uitoolkit::ncurses, use::login
+lsh-utils-doc: made-of::data:info, role::documentation, security::authentication, use::login
+lshw: hardware::detection, interface::commandline, role::program, scope::utility, uitoolkit::gtk, use::viewing, works-with-format::html, works-with-format::xml, works-with::text
+lshw-common: hardware::detection, interface::commandline, role::app-data, scope::utility, special::auto-inst-parts, use::viewing
+lshw-gtk: hardware::detection, interface::commandline, interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+lskat: game::card, interface::x11, role::program, suite::kde, uitoolkit::qt, use::gameplaying, x11::application
+lslk: interface::commandline, role::program, scope::utility, use::searching, works-with::file
+lsmbox: implemented-in::c, interface::commandline, mail::notification, role::program, scope::utility, uitoolkit::ncurses
+lsnipes: game::arcade, interface::text-mode, role::program, uitoolkit::ncurses, use::gameplaying
+lsof: interface::commandline, role::program, scope::utility, use::searching, works-with::file, works-with::software:running
+lsof-2.2: role::dummy, special::not-yet-tagged, special::not-yet-tagged::l, special::obsolete, use::searching
+lspowertweak: hardware::detection, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::gtk
+lsscsi: hardware::storage, implemented-in::c, interface::commandline, role::program, scope::utility, use::monitor, use::scanning
+ltp: special::not-yet-tagged, special::not-yet-tagged::l
+ltp-commands-test: special::not-yet-tagged, special::not-yet-tagged::l
+ltp-disc-test: hardware::storage:cd, hardware::storage:floppy, special::not-yet-tagged, special::not-yet-tagged::l
+ltp-kernel-test: special::not-yet-tagged, special::not-yet-tagged::l
+ltp-misc-test: special::not-yet-tagged, special::not-yet-tagged::l
+ltp-network-test: special::not-yet-tagged, special::not-yet-tagged::l
+ltp-tools: special::not-yet-tagged, special::not-yet-tagged::l
+ltrace: devel::debugger, interface::commandline, role::program, scope::utility
+ltris: game::tetris, interface::x11, uitoolkit::sdl, x11::application
+ltsp-utils: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l
+ltt: admin::kernel, devel::debugger, role::metapackage, role::program, scope::utility
+ltt-dev: admin::kernel, devel::debugger, devel::library, role::devel-lib
+ltt-doc: admin::kernel, devel::debugger, made-of::data:html, role::documentation
+ltt-tracer: admin::kernel, devel::debugger, interface::commandline, role::program, scope::utility, works-with::logfile
+ltt-visualizer: admin::kernel, devel::debugger, interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+lua40: devel::compiler, devel::interpreter, devel::lang:lua, interface::commandline, role::program, scope::utility, works-with::software:source
+lua40-doc: devel::doc, devel::lang:lua, made-of::data:html, role::documentation
+lua5.1: devel::interpreter, devel::lang:lua, devel::library, devel::runtime, implemented-in::lua, interface::commandline, role::shared-lib, works-with::software:source
+lua5.1-doc: role::documentation
+lua50: devel::compiler, devel::interpreter, devel::lang:lua, interface::commandline, role::program, scope::utility, works-with::software:source
+lua50-doc: devel::doc, devel::lang:lua, made-of::data:html, role::documentation
+luasocket: devel::lang:lua, devel::library, protocol::ftp, protocol::http, protocol::smtp, role::dummy, role::shared-lib, special::obsolete
+luasocket-dev: devel::lang:lua, devel::library, protocol::ftp, protocol::http, protocol::smtp, role::dummy, special::not-yet-tagged, special::not-yet-tagged::l, special::obsolete
+lufs-cryptofs: admin::filesystem, role::plugin, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::l
+lufs-source: admin::filesystem, role::source, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l
+lufs-utils: admin::filesystem, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l
+lukemftp: filetransfer::ftp, interface::shell, network::client, protocol::ftp, protocol::ipv6, role::program, uitoolkit::ncurses, use::downloading, works-with::file
+lukemftpd: filetransfer::ftp, interface::daemon, network::server, protocol::ftp, role::program
+luma: implemented-in::python, interface::x11, protocol::ldap, role::program, scope::utility, uitoolkit::qt, use::browsing, works-with::db, x11::application
+lunar: interface::commandline, role::program, scope::utility, use::timekeeping
+luola: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+luola-data: game::arcade, role::app-data, special::auto-inst-parts, use::gameplaying
+luola-levels: game::arcade, role::app-data, special::auto-inst-parts, use::gameplaying, x11::application
+luola-nostalgy: game::arcade, role::plugin, use::gameplaying, x11::theme
+lurker: interface::commandline, interface::web, mail::list, role::program, scope::utility, use::searching, use::storing, works-with::mail
+lurkftp: filetransfer::ftp, network::client, protocol::ftp, role::program, use::synchronizing
+lusernet.app: implemented-in::objc, protocol::nntp, role::plugin, special::not-yet-tagged, special::not-yet-tagged::l, suite::gnustep
+lush: devel::compiler, devel::lang:c, devel::lang:lisp, interface::shell, role::program, scope::utility
+lush-library: devel::lang:lisp, implemented-in::lisp, role::app-data
+luxman: game::arcade, interface::svga, interface::x11, role::program, use::gameplaying, x11::application
+lv: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::viewing, works-with::text
+lvm-common: admin::filesystem, role::app-data, special::auto-inst-parts, special::not-yet-tagged, special::not-yet-tagged::l
+lvm10: admin::filesystem, interface::commandline, role::program, scope::utility
+lvm2: admin::filesystem, interface::commandline, role::program, scope::utility, uitoolkit::ncurses
+lw-per-installer: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::motif
+lw-pro-installer: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::motif
+lw-pro-installer-43: special::not-yet-tagged, special::not-yet-tagged::l, uitoolkit::motif
+lwm: interface::x11, role::program, x11::window-manager
+lwresd: interface::daemon, network::server, protocol::dns, role::program
+lxdoom: game::arcade, interface::daemon, role::program, use::gameplaying
+lxdoom-sndserv: game::arcade, interface::3d, role::plugin, use::gameplaying
+lxdoom-svga: game::arcade, interface::3d, role::program, use::gameplaying
+lxdoom-x11: game::arcade, interface::3d, role::program, use::gameplaying
+lxmusserv: game::arcade, interface::3d, role::plugin, use::gameplaying
+lxr: devel::docsystem
+lxr-cvs: devel::docsystem, devel::lang:c, devel::rcs, devel::ui-builder, implemented-in::perl, interface::web, made-of::data:html, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::l, use::learning, web::application, works-with-format::html, works-with::software:source
+lybniz: field::mathematics, implemented-in::python, interface::x11, role::program, uitoolkit::gtk, use::viewing
+lynkeos.app: field::astronomy, interface::x11, role::program, suite::gnustep, uitoolkit::gnustep
+lynx: interface::text-mode, network::client, protocol::http, protocol::ipv6, protocol::ssl, role::program, uitoolkit::ncurses, use::browsing, web::browser, works-with-format::html, works-with::text
+lynx-cur: interface::text-mode, network::client, protocol::http, protocol::ipv6, protocol::ssl, role::program, uitoolkit::ncurses, use::browsing, web::browser, works-with-format::html, works-with::text
+lynx-cur-wrapper: interface::text-mode, protocol::http, protocol::ipv6, protocol::ssl, role::metapackage, uitoolkit::ncurses, use::browsing, web::browser, works-with-format::html, works-with::text
+lyskom-elisp-client: implemented-in::lisp, network::client, role::program, suite::emacs
+lyskom-server: interface::daemon, network::server, role::program
+lyskom-tty-client: network::client, role::program
+lyx: interface::x11, role::metapackage, role::program, scope::application, scope::utility, use::editing, use::text-formatting, use::typesetting, works-with-format::tex, works-with::text, x11::application
+lyx-common: role::app-data, scope::utility, use::editing, use::text-formatting, use::typesetting, works-with-format::tex, works-with::text, x11::application
+lyx-qt: implemented-in::c, interface::x11, role::program, scope::application, uitoolkit::qt, use::editing, use::text-formatting, use::typesetting, works-with-format::tex, works-with::text, x11::application
+lyx-xforms: implemented-in::c, interface::x11, role::program, scope::application, use::editing, use::text-formatting, use::typesetting, works-with-format::tex, works-with::text, x11::application
+lzma: implemented-in::c, interface::commandline, role::program, scope::utility, use::compressing, use::storing, works-with::archive, works-with::file
+lzop: implemented-in::c, interface::commandline, role::program, scope::utility, use::compressing, works-with::archive, works-with::file
+m-tx: works-with::music-notation
+m17n-db: devel::i18n, devel::lang:c, role::app-data, special::auto-inst-parts
+m17n-docs: devel::i18n, devel::lang:c, role::documentation, special::not-yet-tagged, special::not-yet-tagged::m
+m17n-env: devel::i18n, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m
+m17n-lib-bin: devel::i18n, devel::lang:c, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m
+m2c: devel::compiler, interface::commandline, role::program, scope::utility
+m2crypto: devel::lang:python, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::m
+m4: devel::interpreter, interface::commandline, role::program, scope::utility, suite::gnu
+m4-doc: devel::doc, devel::interpreter, made-of::data:html, role::documentation, suite::gnu
+m68k-vme-tftplilo: admin::boot, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m
+mac-fdisk: admin::filesystem, interface::commandline, role::program, scope::utility
+macchanger: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m
+macutils: interface::commandline, role::program, scope::utility, use::converting
+madbomber: game::arcade, interface::x11, junior::arcade, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+madbomber-data: interface::x11, role::app-data, uitoolkit::sdl, use::gameplaying, x11::application
+madison-lite: devel::debian, implemented-in::perl, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, suite::debian, works-with::software:package
+madman: implemented-in::c++, interface::x11, role::program, scope::application, suite::xmms, uitoolkit::gtk, uitoolkit::qt, use::organizing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, x11::application
+madoka: culture::japanese, filetransfer::dcc, implemented-in::perl, interface::daemon, network::server, protocol::ipv6, protocol::irc, role::program, use::chatting, use::proxying
+madplay: interface::commandline, role::program, scope::utility, sound::player, use::playing, works-with-format::mp3, works-with::audio
+madwifi-doc: admin::kernel, role::documentation, use::driver
+madwifi-source: admin::kernel, implemented-in::c, role::source, use::driver
+madwifi-tools: admin::TODO, admin::configuring, admin::hardware, hardware::TODO, hardware::laptop, implemented-in::c, implemented-in::shell, interface::commandline, interface::daemon, network::configuration, protocol::TODO, role::program, scope::utility, security::authentication, security::cryptography, security::privacy, use::configuring, use::monitor
+maelstrom: game::arcade, uitoolkit::sdl, use::gameplaying
+magic-haskell-doc: role::documentation
+magicdev: hardware::storage, hardware::storage:cd, interface::x11, network::server, role::program, suite::gnome, uitoolkit::gtk, x11::application
+magicfilter: hardware::printer, use::printing
+magicrescue: admin::filesystem, admin::recovery, implemented-in::c, interface::commandline, role::program, scope::utility, use::scanning, works-with::file
+magma: special::not-yet-tagged, special::not-yet-tagged::m
+magma-plugin-sm: special::not-yet-tagged, special::not-yet-tagged::m
+magnus: field::mathematics, interface::x11, role::program, scope::utility, uitoolkit::tk, x11::application
+mah-jong: game::board, interface::x11, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+mahoro-ruby: devel::lang:ruby, devel::library, implemented-in::c, role::special:todo, use::scanning, works-with::file
+mahoro-ruby1.8: devel::lang:ruby, devel::library, implemented-in::c, role::special:todo, use::scanning, works-with::file
+mail-audit-tools: implemented-in::perl, interface::commandline, mail::filters, mail::pop, protocol::pop3, role::program, scope::utility, works-with::mail
+mail-expire: implemented-in::perl, interface::commandline, role::program, scope::utility, use::storing, works-with::mail
+mail-notification: interface::x11, mail::notification, protocol::ssl, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, suite::gnome, suite::kde, suite::xfce, uitoolkit::gtk, works-with::mail, x11::applet, x11::application
+mail-notification-evolution: uitoolkit::gtk
+mailagent: devel::interpreter, implemented-in::perl, interface::commandline, mail::filters, role::program, scope::utility, works-with::mail
+mailcheck: implemented-in::c, interface::commandline, mail::notification, mail::pop, protocol::imap, protocol::pop3, role::program, scope::utility, works-with::mail
+mailcrypt: implemented-in::lisp, interface::commandline, role::plugin, security::cryptography, suite::emacs
+maildir-bulletin: role::program, scope::utility, works-with::mail
+maildir-filter: interface::commandline, mail::filters, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, works-with::mail
+maildirsync: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, use::synchronizing, works-with::mail
+maildrop: interface::daemon, mail::delivery-agent, mail::filters, network::server, role::program, works-with::mail
+mailfilter: interface::commandline, mail::filters, mail::pop, protocol::pop3, role::program, scope::utility, use::dialing, works-with::mail
+mailfront: interface::daemon, mail::filters, mail::pop, network::server, network::service, protocol::pop3, protocol::smtp, role::program, security::authentication, special::not-yet-tagged, special::not-yet-tagged::m
+mailgraph: implemented-in::perl, interface::daemon, network::server, role::program, use::monitor, works-with::db, works-with::mail
+mailleds: interface::daemon, mail::notification, network::server, role::program, works-with::mail
+mailliststat: mail::list, use::scanning, works-with::mail
+mailman: implemented-in::python, interface::web, mail::list, network::server, role::program, suite::gnu, works-with::mail
+mailping: admin::monitoring, implemented-in::python, mail::smtp, network::scanner, protocol::smtp, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, use::monitor
+mailreader: implemented-in::perl, network::client, protocol::ssl, role::program, works-with::mail
+mailscanner: mail::filters, role::program, scope::utility, security::antivirus, works-with::mail
+mailsync: mail::imap, protocol::imap, role::program, scope::utility, use::synchronizing, works-with::mail
+mailtextbody: implemented-in::c++, interface::commandline, mail::filters, role::program, works-with::mail
+mailto: implemented-in::c, interface::web, protocol::http, protocol::smtp, role::program, scope::utility, web::cgi, works-with::mail
+mailutils: interface::text-mode, mail::filters, mail::imap, mail::pop, mail::smtp, mail::user-agent, network::client, protocol::imap, protocol::pop3, protocol::smtp, protocol::ssl, role::program, suite::gnu, uitoolkit::ncurses, works-with::mail
+mailutils-comsatd: interface::daemon, mail::notification, network::server, role::program, suite::gnu, works-with::mail
+mailutils-doc: made-of::data:html, made-of::data:info, mail::filters, mail::imap, mail::pop, mail::smtp, protocol::imap, protocol::pop3, protocol::smtp, role::documentation, works-with::mail
+mailutils-imap4d: interface::daemon, mail::imap, network::server, protocol::imap, protocol::ssl, role::program, suite::gnu, works-with::mail
+mailutils-mh: interface::text-mode, mail::user-agent, protocol::ssl, role::program, scope::utility, suite::gnu, uitoolkit::ncurses, works-with::mail
+mailutils-pop3d: interface::daemon, mail::pop, network::server, protocol::pop3, protocol::ssl, role::program, suite::gnu, works-with::mail
+mailx: implemented-in::c, interface::commandline, mail::smtp, mail::user-agent, network::client, protocol::smtp, role::program, works-with::mail
+maint-guide: devel::debian, devel::doc, made-of::data:html, made-of::data:pdf, made-of::data:postscript, made-of::data:sgml, role::documentation, suite::debian
+maint-guide-de: culture::german, devel::debian, devel::doc, made-of::data:html, made-of::data:pdf, made-of::data:postscript, made-of::data:sgml, role::documentation, suite::debian
+maint-guide-es: culture::spanish, devel::debian, devel::doc, made-of::data:html, made-of::data:pdf, made-of::data:postscript, made-of::data:sgml, role::documentation, suite::debian
+maint-guide-fr: culture::french, devel::debian, devel::doc, made-of::data:html, made-of::data:pdf, made-of::data:postscript, made-of::data:sgml, role::documentation, suite::debian
+maint-guide-it: culture::italian, devel::debian, devel::doc, made-of::data:html, made-of::data:pdf, made-of::data:postscript, made-of::data:sgml, role::documentation, suite::debian
+maint-guide-ja: culture::japanese, devel::debian, devel::doc, made-of::data:html, made-of::data:pdf, made-of::data:postscript, made-of::data:sgml, role::documentation, suite::debian
+maint-guide-ko: culture::korean, devel::debian, devel::doc, made-of::data:html, made-of::data:pdf, made-of::data:postscript, made-of::data:sgml, role::documentation, suite::debian
+maint-guide-pl: culture::polish, devel::debian, devel::doc, made-of::data:html, made-of::data:pdf, made-of::data:postscript, made-of::data:sgml, role::documentation, suite::debian
+maint-guide-pt: culture::brazilian, culture::portuguese, devel::debian, devel::doc, made-of::data:html, made-of::data:pdf, made-of::data:postscript, made-of::data:sgml, role::documentation, suite::debian
+maint-guide-ru: culture::russian, devel::debian, devel::doc, made-of::data:html, made-of::data:pdf, made-of::data:postscript, made-of::data:sgml, role::documentation, suite::debian
+maint-guide-zh: culture::chinese, devel::debian, devel::doc, made-of::data:html, made-of::data:pdf, made-of::data:postscript, made-of::data:sgml, role::documentation, suite::debian
+mairix: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, use::searching, works-with::mail
+make: devel::buildtools, implemented-in::c, interface::commandline, role::program, scope::utility, suite::gnu, works-with::software:source
+make-doc: devel::doc, devel::lang:c, made-of::data:html, made-of::data:postscript, role::documentation
+makedev: admin::boot, admin::configuring, admin::hardware, interface::commandline, role::program, scope::utility
+makedic: devel::compiler, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, use::learning, works-with::dictionary
+makejail: interface::daemon, network::server, role::program, use::configuring
+makejvf: culture::japanese, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, works-with::font
+makepasswd: implemented-in::perl, interface::commandline, role::program, scope::utility, security::authentication
+makepatch: devel::rcs, implemented-in::perl, interface::commandline, use::synchronizing, works-with::software:source
+makeself: interface::commandline, role::program, scope::utility, security::integrity, works-with-format::tar, works-with::archive
+makexvpics: uitoolkit::gtk, works-with::image, works-with::image:raster
+makeztxt: implemented-in::c, interface::commandline, role::program, scope::utility, use::converting, use::synchronizing, works-with-format::plaintext, works-with::db, works-with::text
+malaga-bin: field::linguistics, interface::commandline, interface::x11, role::documentation, role::program, scope::utility, suite::emacs, uitoolkit::gtk, x11::application
+malaga-doc: field::linguistics, made-of::data:html, made-of::data:pdf, made-of::data:postscript, made-of::data:tex, role::documentation
+malsync: interface::commandline, role::program, scope::utility, uitoolkit::gtk, use::synchronizing
+man-db: interface::commandline, role::program, scope::utility, use::searching, use::viewing, works-with-format::man, works-with::db, works-with::text
+man2html: implemented-in::c, interface::web, role::program, use::converting, web::cgi, works-with-format::html, works-with-format::man, works-with::text
+mancala: game::board, interface::text-mode, interface::x11, role::program, use::gameplaying, x11::application
+manderlbot: special::not-yet-tagged, special::not-yet-tagged::m
+manedit: interface::x11, role::program, scope::application, uitoolkit::gtk, use::editing, works-with-format::man, works-with-format::xml, works-with::text, x11::application
+manpages: made-of::data:man, role::documentation
+manpages-de: culture::german, made-of::data:man, role::documentation
+manpages-de-dev: culture::german, devel::doc, made-of::data:man, role::documentation
+manpages-dev: devel::doc, made-of::data:man, role::documentation
+manpages-es: culture::spanish, made-of::data:man, role::documentation
+manpages-es-extra: culture::spanish, made-of::data:man, role::documentation
+manpages-fi: culture::finnish, made-of::data:man, role::documentation
+manpages-fr: culture::french, made-of::data:man, role::documentation
+manpages-hu: culture::hungarian, made-of::data:man, role::documentation
+manpages-it: culture::italian, made-of::data:man, role::documentation
+manpages-ja: culture::japanese, made-of::data:man, role::documentation
+manpages-ja-dev: culture::japanese, devel::doc, made-of::data:man, role::documentation
+manpages-ko: culture::korean, made-of::data:man, role::documentation
+manpages-nl: culture::dutch, made-of::data:man, role::documentation
+manpages-pl: culture::polish, made-of::data:man, role::documentation
+manpages-pl-dev: culture::polish, devel::doc, made-of::data:man, role::documentation
+manpages-posix: special::not-yet-tagged, special::not-yet-tagged::m
+manpages-posix-dev: special::not-yet-tagged, special::not-yet-tagged::m
+manpages-pt: culture::portuguese, made-of::data:man, role::documentation
+manpages-pt-dev: culture::portuguese, devel::doc, made-of::data:man, role::documentation
+manpages-ru: culture::russian, made-of::data:man, role::documentation
+manpages-tr: culture::turkish, made-of::data:man, role::documentation
+manpages-zh: culture::chinese, culture::taiwanese, made-of::data:man, role::documentation
+mantis: devel::bugtracker, devel::lang:sql, implemented-in::php, interface::web, network::server, role::program, works-with::bugs, works-with::db
+manued-el: implemented-in::lisp, interface::commandline, role::plugin, suite::emacs, use::editing
+mapserver-bin: devel::ide, field::geography, special::not-yet-tagged, special::not-yet-tagged::m
+mapserver-doc: devel::doc, devel::examples, field::geography, role::documentation, special::not-yet-tagged, special::not-yet-tagged::m
+maradns: interface::daemon, network::server, protocol::dns, role::program
+maria: devel::testing-qa, field::mathematics, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses
+maria-doc: devel::doc, devel::testing-qa, field::mathematics, made-of::data:html, made-of::data:info, role::documentation
+markdown: implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with-format::plaintext, works-with::text
+marote: hardware::hamradio, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::qt, x11::application
+mas-server: interface::daemon, network::server, network::service, role::program, sound::player, special::not-yet-tagged, special::not-yet-tagged::m, use::proxying, works-with::audio
+mas-utils: interface::commandline, interface::x11, network::service, role::program, scope::utility, sound::player, special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::gtk, use::proxying, works-with::audio, x11::application
+mason: admin::configuring, admin::kernel, interface::commandline, network::firewall, role::program, scope::utility, security::firewall, use::configuring
+masqdialer: hardware::modem, use::dialing
+masqmail: hardware::modem, interface::daemon, mail::pop, mail::smtp, network::server, protocol::pop3, protocol::smtp, role::program, use::dialing, works-with::mail
+matanza: game::arcade, special::not-yet-tagged, special::not-yet-tagged::m
+matchbox: hardware::embedded, role::dummy, role::metapackage, special::meta, uitoolkit::gtk, x11::xserver
+matchbox-common: hardware::embedded, role::app-data, special::auto-inst-parts, uitoolkit::gtk, x11::xserver
+matchbox-desktop: hardware::embedded, interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+matchbox-desktop-dev: devel::library, hardware::embedded, role::devel-lib, uitoolkit::gtk, x11::application
+matchbox-keyboard: hardware::embedded, hardware::input:mouse, interface::x11, role::program, x11::application
+matchbox-nest: interface::daemon, network::server, role::program, uitoolkit::gtk, x11::xserver
+matchbox-panel: hardware::embedded, interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+matchbox-panel-manager: hardware::embedded, interface::x11, network::server, role::program, uitoolkit::gtk, x11::application
+matchbox-themes-extra: hardware::embedded, role::app-data, uitoolkit::gtk, x11::theme, x11::window-manager
+matchbox-window-manager: hardware::embedded, interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application, x11::window-manager
+mathomatic: field::mathematics, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses
+mathomatic-primes: field::mathematics, interface::text-mode, role::plugin, role::program, scope::utility, uitoolkit::ncurses
+mathopd: interface::daemon, network::server, role::program, web::server
+mathpartir: field::mathematics, role::plugin, use::typesetting, works-with-format::tex, works-with::text
+mathwar: field::mathematics, interface::x11, role::program, suite::gnome, uitoolkit::gtk, use::gameplaying, use::learning, x11::application
+matrem: game::toys, interface::x11, special::not-yet-tagged, special::not-yet-tagged::m, x11::application
+matroxset: admin::configuring, hardware::video, interface::text-mode, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::ncurses, use::configuring
+matwrap: devel::lang:c++, field::mathematics, implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting
+mawk: devel::interpreter, interface::commandline, role::program, scope::utility
+maxdb-buildtools: devel::buildtools, devel::lang:sql, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, works-with::db
+maxdb-dbanalyzer: admin::benchmarking, devel::lang:sql, interface::commandline, role::program, scope::utility, use::monitor, works-with::db, x11::application
+maxdb-dbmcli: devel::lang:sql, interface::commandline, role::program, scope::utility, works-with::db, x11::application
+maxdb-doc: devel::lang:sql, made-of::data:html, role::documentation, works-with::db
+maxdb-loadercli: devel::lang:sql, interface::commandline, network::client, role::program, works-with::db, x11::application
+maxdb-lserver: devel::lang:sql, interface::commandline, network::client, role::program, works-with::db, x11::application
+maxdb-server: devel::lang:sql, interface::daemon, network::server, role::program, use::proxying, works-with::db, x11::application
+maxdb-server-7.5.00: devel::lang:sql, interface::daemon, network::server, role::program, works-with::db, x11::application
+maxdb-server-dbg-7.5.00: devel::debugger, devel::lang:sql, interface::daemon, network::server, role::program, works-with::db, x11::application
+maxdb-sqlcli: devel::lang:sql, interface::commandline, network::client, role::program, works-with::db, x11::application
+maxdb-webtools: devel::lang:sql, interface::web, interface::x11, network::server, role::program, web::appserver, works-with::db, x11::application
+maxima: field::mathematics, implemented-in::lisp, interface::text-mode, interface::x11, role::program, scope::utility, special::completely-tagged, uitoolkit::ncurses, uitoolkit::tk, use::learning, x11::application
+maxima-doc: field::mathematics, role::documentation
+maxima-emacs: devel::lang:lisp, field::mathematics, interface::commandline, role::plugin, suite::emacs, use::editing
+maxima-share: devel::lang:lisp, devel::library, field::mathematics, interface::commandline, role::app-data
+maxima-src: devel::lang:lisp, field::mathematics, implemented-in::lisp, interface::commandline, role::app-data, role::source
+maxima-test: devel::lang:lisp, devel::testing-qa, field::mathematics, interface::commandline, role::program, scope::utility
+mayavi: implemented-in::python, interface::x11, role::program, scope::utility, uitoolkit::tk, use::viewing, works-with-format::postscript, works-with-format::vrml, works-with::3dmodel, works-with::image, works-with::image:raster, works-with::text, x11::application
+mazeofgalious: game::platform, interface::x11, role::program, uitoolkit::sdl, use::gameplaying
+mb2md: implemented-in::perl, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, use::converting, works-with::mail
+mbmon: admin::monitoring, interface::commandline, network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::m, use::monitor
+mbot: implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::m, works-with::mail
+mboxcheck: implemented-in::perl, interface::commandline, mail::notification, role::program, scope::utility, works-with::mail, x11::application
+mboxcheck-applet: implemented-in::python, interface::x11, mail::notification, role::program, scope::utility, suite::gnome, works-with::mail, x11::applet, x11::application
+mboxgrep: interface::commandline, use::searching, works-with::mail
+mbr: admin::boot, hardware::storage, interface::commandline, role::program, scope::utility, use::driver
+mbrowse: interface::x11, protocol::snmp, uitoolkit::gtk, use::browsing, x11::application
+mc: interface::text-mode, role::program, scope::application, suite::gnu, use::browsing, use::organizing, works-with::file
+mc-foo: implemented-in::python, interface::commandline, interface::daemon, network::client, network::server, role::program, sound::player, use::organizing, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+mcabber: uitoolkit::ncurses
+mcdp: hardware::storage, hardware::storage:cd, interface::text-mode, sound::player, use::playing, works-with::audio
+mcelog: devel::debugger, interface::commandline, special::not-yet-tagged, special::not-yet-tagged::m, use::viewing, works-with::logfile
+mcl: field::mathematics
+mcl-doc: field::mathematics, made-of::data:html, made-of::data:postscript, role::documentation, special::not-yet-tagged, special::not-yet-tagged::m
+mconfig: admin::configuring, admin::kernel, devel::buildtools, interface::text-mode, special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::ncurses, use::configuring
+mcp-plugins: role::plugin, use::filtering, works-with::audio
+mcpp: devel::debugger, devel::interpreter, devel::lang:c, interface::commandline, special::not-yet-tagged, special::not-yet-tagged::m, works-with::software:source
+mcrypt: interface::commandline, role::program, scope::utility, security::cryptography
+mctools-lite: hardware::storage, hardware::storage:cd, interface::x11, sound::mixer, sound::player, use::organizing, use::playing, works-with::audio, x11::application
+mcvs: devel::rcs, implemented-in::lisp, interface::text-mode, uitoolkit::ncurses
+mdadm: admin::boot, admin::configuring, hardware::storage, implemented-in::c, implemented-in::shell, interface::commandline, interface::daemon, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, use::configuring, use::monitor
+mdbtools: devel::lang:sql, interface::text-mode, role::program, uitoolkit::ncurses, works-with::db
+mdbtools-dev: devel::library, role::devel-lib, uitoolkit::gtk, works-with::db
+mdbtools-gmdb: interface::x11, suite::gnome, uitoolkit::gtk, use::viewing, works-with::db, x11::application
+mdctl: admin::configuring, hardware::storage, role::dummy, special::not-yet-tagged, special::not-yet-tagged::m, special::obsolete
+mdetect: admin::configuring, hardware::detection, hardware::input, hardware::input:mouse, interface::commandline, role::program, scope::utility, use::configuring
+mdk: devel::machinecode, hardware::emulation, interface::text-mode, interface::x11, uitoolkit::gtk, uitoolkit::ncurses, x11::application
+mdnkit: special::not-yet-tagged, special::not-yet-tagged::m, use::converting
+mdnkit-doc-en: made-of::data:html, role::documentation, special::not-yet-tagged, special::not-yet-tagged::m, use::converting
+mdnkit-doc-jp: culture::japanese, role::documentation, special::not-yet-tagged, special::not-yet-tagged::m, use::converting
+mdns-scan: network::scanner, special::not-yet-tagged, special::not-yet-tagged::m, use::scanning
+mdnsresponder: special::not-yet-tagged, special::not-yet-tagged::m
+mecab: culture::japanese, field::linguistics, interface::commandline, special::not-yet-tagged, special::not-yet-tagged::m
+mecab-ipadic: special::not-yet-tagged, special::not-yet-tagged::m
+mecab-jumandic: culture::japanese, field::linguistics, made-of::data:dictionary, role::app-data, special::not-yet-tagged, special::not-yet-tagged::m
+mecab-utils: culture::japanese, field::linguistics, interface::commandline, special::not-yet-tagged, special::not-yet-tagged::m, works-with::dictionary
+med-bio: field::biology, role::metapackage
+med-bio-dev: devel::library, field::biology, role::dummy, role::metapackage, special::meta, special::not-yet-tagged, special::not-yet-tagged::m
+med-cms: field::biology, role::metapackage, special::meta, special::not-yet-tagged, special::not-yet-tagged::m, web::cms
+med-common: field::biology, role::metapackage, special::auto-inst-parts, special::not-yet-tagged, special::not-yet-tagged::m
+med-dent: field::biology, special::not-yet-tagged, special::not-yet-tagged::m
+med-doc: field::biology, role::documentation
+med-imaging: field::biology, role::metapackage, works-with::image, works-with::image:raster
+med-imaging-dev: devel::library, field::biology, role::dummy, special::meta, uitoolkit::gtk, works-with::image, works-with::image:raster
+med-pharmacy: field::biology, field::chemistry, role::metapackage, special::not-yet-tagged, special::not-yet-tagged::m
+med-physics: field::biology, field::physics, role::metapackage, special::not-yet-tagged, special::not-yet-tagged::m
+med-tools: field::biology, special::not-yet-tagged, special::not-yet-tagged::m
+medcon: field::biology, implemented-in::c, interface::commandline, uitoolkit::gtk, use::converting, works-with::image, works-with::image:raster, x11::application
+mediamate: devel::lang:sql, implemented-in::php, interface::web, network::server, role::program, use::organizing, works-with::db
+mediawiki: implemented-in::php, interface::web, made-of::data:html, network::server, protocol::http, role::program, web::wiki, works-with-format::html, works-with::db, works-with::text
+mediawiki-extensions: implemented-in::ocaml
+mediawiki1.7: implemented-in::php, interface::web, made-of::data:html, network::server, protocol::http, role::program, web::wiki, works-with-format::html, works-with::db, works-with::text
+mediawiki1.7-math: implemented-in::ocaml
+medusa: admin::monitoring, implemented-in::c, interface::commandline, network::scanner, role::program, scope::utility, security::authentication
+medussa: admin::cluster, interface::daemon, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::m
+megahal: game::toys, interface::commandline, role::program, use::gameplaying
+meld: implemented-in::python, interface::x11, role::program, suite::gnome, uitoolkit::gtk, use::synchronizing, works-with::text, x11::application
+mell: implemented-in::lisp, special::not-yet-tagged, special::not-yet-tagged::m, suite::emacs
+melon: interface::x11, mail::notification, uitoolkit::gtk, use::monitor, works-with::mail, x11::application
+memaid-pyqt: interface::x11, special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::qt, use::learning, x11::application
+members: admin::user-management, interface::commandline, role::program, scope::utility
+memcached: devel::profiler, interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::m
+memories: implemented-in::perl, interface::web, role::program, web::application, works-with::image, works-with::image:raster
+memprof: devel::debugger, devel::profiler, interface::x11, suite::gnome, uitoolkit::gtk, x11::application
+memstat: admin::benchmarking, interface::commandline, role::program, use::monitor
+memtest86: admin::benchmarking, admin::boot, hardware::storage:floppy, implemented-in::c, interface::text-mode, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, use::checking
+memtest86+: admin::benchmarking, admin::boot, hardware::storage:floppy, interface::text-mode, role::program, scope::utility, use::checking
+memtester: admin::benchmarking, hardware::TODO, interface::commandline, role::program, scope::utility, use::checking
+mencal: implemented-in::perl, interface::commandline, role::program, use::timekeeping, works-with::pim
+mendexk: special::not-yet-tagged, special::not-yet-tagged::m, works-with-format::tex, works-with::text
+menhir: devel::lang:ocaml, implemented-in::ocaml
+menu: admin::configuring, role::program, scope::utility, suite::debian
+menu-xdg: admin::configuring, suite::debian
+mercurial: devel::rcs, implemented-in::python, interface::commandline, network::client, network::server, protocol::TODO, protocol::http, role::program, scope::application, use::storing, use::synchronizing, works-with::software:source
+mercury: special::not-yet-tagged, special::not-yet-tagged::m
+mercury-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::m
+mergeant: devel::lang:sql, interface::x11, protocol::ssl, suite::gnome, uitoolkit::gtk, use::browsing, works-with::db, x11::application
+mergeant-doc: devel::lang:sql, interface::x11, role::documentation, suite::gnome, uitoolkit::gtk, use::browsing, works-with::db, x11::application
+mergelog: implemented-in::c, interface::commandline, security::log-analyzer, special::not-yet-tagged, special::not-yet-tagged::m, works-with::logfile
+mesa-common-dev: devel::library, role::devel-lib
+mesa-swx11-source: devel::library, role::source
+mesa-utils: admin::hardware, hardware::video, interface::commandline, role::program, use::viewing, x11::application
+mesademos: devel::examples, devel::library, x11::application
+mesag-dev: devel::library, role::devel-lib, x11::application
+mesag3: devel::library, role::shared-lib, x11::application
+meschach: devel::library, field::mathematics, role::devel-lib, role::shared-lib
+meschach-dev: devel::library, field::mathematics, role::devel-lib
+messagewall: interface::daemon, mail::filters, mail::smtp, network::server, protocol::smtp, role::program, use::proxying, works-with::mail
+metacafe-dl: filetransfer::http, implemented-in::python, interface::commandline, network::client, protocol::http, role::program, scope::application, use::downloading, works-with::video
+metacam: hardware::camera, interface::commandline, use::scanning, works-with-format::jpg, works-with::image, works-with::image:raster
+metacity: interface::x11, role::program, uitoolkit::gtk, x11::window-manager
+metacity-common: x11::window-manager
+metacity-themes: interface::x11, uitoolkit::gtk, x11::theme, x11::window-manager
+metalog: special::not-yet-tagged, special::not-yet-tagged::m
+metamail: interface::commandline, interface::text-mode, uitoolkit::ncurses, use::viewing, works-with::mail
+metapixel: interface::commandline, role::program, scope::application, works-with-format::jpg, works-with-format::png, works-with::image, works-with::image:raster
+metar: interface::commandline, network::client, protocol::ftp, role::program
+meterbridge: interface::x11, role::plugin, special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::sdl, x11::application
+mew: interface::commandline, mail::imap, mail::pop, mail::smtp, mail::user-agent, network::client, protocol::imap, protocol::nntp, protocol::pop3, protocol::smtp, role::program, security::cryptography, suite::emacs, use::editing, works-with::mail
+mew-beta: interface::commandline, mail::imap, mail::pop, mail::smtp, mail::user-agent, network::client, protocol::imap, protocol::nntp, protocol::pop3, protocol::smtp, role::program, security::cryptography, suite::emacs, use::editing, works-with::mail
+mew-beta-bin: interface::commandline, mail::user-agent, security::cryptography, suite::emacs, use::converting, works-with::mail
+mew-bin: interface::commandline, mail::user-agent, suite::emacs, use::converting, works-with::mail
+mffm-fftw-dev: devel::lang:c, devel::library, implemented-in::c++, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::m
+mffm-fftw1: devel::lang:c, implemented-in::c++, special::not-yet-tagged, special::not-yet-tagged::m
+mffm-gtkclasses-dev: devel::library, role::devel-lib
+mffm-libsndfilew-dev: devel::lang:c, devel::library, implemented-in::c++, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::m
+mffm-timecode-dev: devel::lang:c, devel::library, implemented-in::c++, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::m
+mftrace: implemented-in::python, interface::commandline, use::converting, works-with::font
+mg: uitoolkit::ncurses
+mga-vid-common: admin::configuring, hardware::video, special::not-yet-tagged, special::not-yet-tagged::m, use::configuring
+mga-vid-source: hardware::video, role::source, special::not-yet-tagged, special::not-yet-tagged::m, use::driver
+mgapdesk: admin::configuring, hardware::video, interface::x11, uitoolkit::gtk, use::configuring, x11::application
+mgdiff: interface::x11, uitoolkit::motif, works-with::text, x11::application
+mgetty: admin::login, hardware::modem, interface::commandline, role::program, use::login
+mgetty-docs: admin::login, hardware::modem, role::documentation, use::login
+mgetty-fax: hardware::modem, use::transmission, works-with::fax
+mgetty-pvftools: hardware::modem, protocol::voip, special::not-yet-tagged, special::not-yet-tagged::m, use::transmission, works-with::audio
+mgetty-viewfax: hardware::modem, interface::x11, use::viewing, works-with::fax, x11::application
+mgetty-voice: hardware::modem, works-with::audio
+mgm: admin::monitoring, implemented-in::perl, interface::x11, role::program, scope::application, uitoolkit::tk, use::monitor, x11::application
+mgm-doc: admin::monitoring, made-of::data:html, role::documentation, use::monitor
+mgp: interface::x11, office::presentation, role::program, scope::application, use::converting, use::viewing, x11::application
+mgt: game::board, interface::text-mode, uitoolkit::ncurses, use::editing
+mguesser: special::not-yet-tagged, special::not-yet-tagged::m, use::scanning
+mh-book: made-of::data:html, role::data, works-with::mail
+mh-e: interface::commandline, mail::smtp, mail::user-agent, network::client, role::plugin, role::program, special::not-yet-tagged, special::not-yet-tagged::m, suite::emacs, use::editing, works-with::mail
+mhc: interface::commandline, role::plugin, suite::emacs, use::organizing, works-with::pim
+mhc-utils: implemented-in::ruby, interface::x11, uitoolkit::gtk, use::organizing, works-with::pim, x11::application
+mhonarc: implemented-in::perl, interface::commandline, interface::web, mail::list, role::program, use::converting, use::organizing, use::storing, works-with-format::html, works-with::mail, works-with::text
+mhwaveedit: uitoolkit::gtk
+micro-httpd: admin::file-distribution, filetransfer::http, interface::daemon, network::server, protocol::http, role::program, scope::utility, security::TODO, special::not-yet-tagged, special::not-yet-tagged::m, use::TODO, web::server
+micro-inetd: special::not-yet-tagged, special::not-yet-tagged::m
+micro-proxy: special::not-yet-tagged, special::not-yet-tagged::m
+microcode.ctl: admin::boot, admin::hardware, interface::commandline, role::program, scope::utility, use::driver
+middleman: special::not-yet-tagged, special::not-yet-tagged::m
+midentd: interface::daemon, network::server, protocol::ident, role::program
+midge: implemented-in::perl, interface::commandline, role::program, scope::utility, sound::midi, use::converting
+midish: uitoolkit::ncurses
+mifluz: devel::library, implemented-in::c++, use::searching
+mifluz-doc: devel::library, role::documentation, use::searching
+mig: special::not-yet-tagged, special::not-yet-tagged::m, suite::gnu
+migemo: culture::japanese, suite::emacs, use::editing, use::searching
+migemo-perl: culture::japanese, devel::lang:perl, implemented-in::perl, role::plugin, special::obsolete, suite::emacs
+migrationtools: admin::user-management, implemented-in::perl, interface::commandline, protocol::ldap, role::program, scope::utility, use::converting, works-with::db
+mii-diag: admin::hardware, hardware::detection, interface::commandline, network::configuration, role::program, scope::utility, use::configuring
+mikmod: implemented-in::c, interface::commandline, interface::text-mode, role::program, scope::utility, sound::player, uitoolkit::ncurses, works-with::audio
+milter-greylist: implemented-in::c, interface::daemon, mail::filters, mail::smtp, network::server, protocol::ip, protocol::smtp, role::program, scope::utility, use::scanning, works-with::db, works-with::mail
+mime-codecs: implemented-in::lisp, use::converting, works-with::mail
+mime-construct: implemented-in::perl, interface::commandline, role::program, scope::utility, works-with::mail
+mime-support: admin::configuring, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, works-with::mail
+mimedecode: interface::commandline, role::program, scope::utility, use::converting, works-with::mail
+mimedefang: implemented-in::perl, interface::x11, mail::filters, network::server, role::program, works-with::mail
+mimefilter: implemented-in::perl, interface::commandline, mail::filters, role::program, scope::utility, works-with::mail
+mimetex: field::mathematics, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, use::converting, works-with-format::tex, works-with::image, works-with::image:raster, works-with::text
+mimms: filetransfer::special:todo, interface::commandline, network::client, role::program, scope::utility, use::downloading, works-with::audio, works-with::video
+min12xxw: hardware::printer
+minc-tools: field::biology, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, works-with::image, works-with::image:raster
+mindi: admin::boot, admin::recovery, interface::commandline, role::metapackage, role::program, scope::utility
+mindi-busybox: admin::boot, admin::recovery, interface::shell, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m
+mindi-kernel: admin::boot, admin::forensics, admin::kernel, role::app-data, suite::debian
+mindi-partimagehack: admin::boot, admin::filesystem, admin::forensics, interface::commandline, role::program, scope::utility
+mindterm: devel::lang:java, interface::web, network::client, role::program, security::cryptography, use::login
+mindy: devel::interpreter
+mined: interface::text-mode, special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::ncurses, use::editing, works-with::text
+mines.app: game::puzzle, implemented-in::objc, interface::x11, role::plugin, role::program, special::not-yet-tagged, special::not-yet-tagged::m, suite::gnustep, uitoolkit::gnustep, use::gameplaying, x11::application
+mingetty: admin::login, interface::commandline, role::program, scope::utility, use::login
+mingw32: devel::compiler, devel::lang:c, devel::lang:c++, interface::commandline, role::program, scope::utility, works-with::software:source
+mingw32-binutils: devel::buildtools, devel::compiler, devel::lang:c, devel::lang:c++, interface::commandline, role::program, scope::utility, suite::gnu
+mingw32-runtime: devel::compiler, devel::lang:c, devel::lang:c++, devel::runtime, interface::commandline, role::program, scope::utility
+mini-dinstall: devel::packaging, implemented-in::python, suite::debian
+minicom: hardware::modem, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::login
+minimalist: implemented-in::perl, interface::special:todo, mail::list, network::server, protocol::smtp, role::program, scope::application, works-with::mail
+minit: admin::boot, implemented-in::c, interface::commandline, interface::daemon, use::monitor
+minpack-dev: devel::doc, devel::examples, devel::library, field::mathematics, implemented-in::fortran, role::devel-lib, role::documentation, role::shared-lib
+minpack1: field::mathematics, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::m
+mipe: field::biology
+mips-tools: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m
+mips64emul: hardware::emulation, special::not-yet-tagged, special::not-yet-tagged::m
+mirage: implemented-in::python, interface::x11, role::program, scope::application, uitoolkit::gtk, use::browsing, use::editing, use::organizing, use::viewing, works-with-format::gif, works-with-format::jpg, works-with-format::png, works-with-format::svg, works-with-format::tiff, works-with::image, works-with::image:raster, x11::application
+mird-dev: devel::library, role::devel-lib, works-with::db
+mird1: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::m, works-with::db
+miredo: implemented-in::c, interface::commandline, interface::daemon, network::server, network::vpn, protocol::ipv6, role::program, scope::utility, use::routing
+miredo-server: implemented-in::c, interface::commandline, interface::daemon, network::server, network::vpn, protocol::ipv6, role::program, scope::utility
+mirror: filetransfer::ftp, implemented-in::perl, network::client, protocol::ftp, role::program, use::synchronizing
+mirrordir: admin::backup, filetransfer::ftp, protocol::ftp, use::synchronizing
+mirrormagic: game::puzzle, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+mirrormagic-data: game::puzzle, interface::x11, role::app-data, special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::sdl, x11::application
+miscfiles: made-of::data:dictionary, role::data, suite::gnu
+misdn-kernel-headers: admin::kernel, special::not-yet-tagged, special::not-yet-tagged::m
+misdn-kernel-source: admin::kernel, role::source, special::not-yet-tagged, special::not-yet-tagged::m, use::driver
+misdn-utils: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m
+misdn-voipisdn: protocol::voip, special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::ncurses
+missingh-doc: devel::lang:haskell, role::documentation, special::not-yet-tagged, special::not-yet-tagged::m
+mit-scheme: devel::compiler, devel::interpreter, devel::lang:scheme, devel::runtime, interface::text-mode, role::plugin, suite::emacs, suite::gnu, uitoolkit::ncurses, use::editing, works-with::mail
+mit-scheme-dbg: suite::gnu
+mixal: devel::interpreter, hardware::emulation
+mixer.app: implemented-in::c++, interface::x11, role::program, scope::utility, sound::mixer, suite::gnustep, x11::applet, x11::application
+mixmaster: implemented-in::perl, interface::daemon, interface::text-mode, network::client, network::server, role::program, security::cryptography, uitoolkit::ncurses, works-with::mail
+mixxx: uitoolkit::qt
+mkcue: hardware::storage, hardware::storage:cd, implemented-in::c++, interface::commandline, role::program, scope::utility, use::converting, use::storing, works-with::audio
+mkdecbootcd: admin::boot, hardware::storage:cd, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m
+mkinitrd-cd: admin::boot, hardware::storage, hardware::storage:cd, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m
+mkisofs: hardware::storage, hardware::storage:cd, hardware::storage:dvd, interface::commandline, role::dummy, scope::utility, special::obsolete, use::storing, works-with-format::iso9660, works-with::archive
+mklibs: devel::buildtools, implemented-in::python, interface::commandline, role::program, scope::utility
+mklibs-copy: devel::buildtools, implemented-in::python, interface::commandline, role::program, scope::utility
+mknbi: admin::boot, implemented-in::perl, network::configuration, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m
+mknfonts.tool: implemented-in::objc, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, suite::gnustep, works-with::font
+mkrboot: admin::boot, hardware::storage:floppy, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m
+mktemp: implemented-in::c, interface::commandline, role::program, scope::utility, use::TODO, works-with::file
+mkvmlinuz: admin::boot, admin::kernel, implemented-in::c, implemented-in::shell, interface::commandline, role::program, scope::utility
+mkvtoolnix: interface::commandline, role::program, sound::compression, use::converting, works-with-format::mp3, works-with-format::oggtheora, works-with-format::oggvorbis, works-with-format::wav, works-with::audio, works-with::video
+mkvtoolnix-gui: interface::x11, role::program, sound::compression, uitoolkit::wxwindows, use::converting, works-with::audio, works-with::video
+ml-burg: special::not-yet-tagged, special::not-yet-tagged::m
+ml-lex: devel::code-generator, devel::lang:ml
+ml-nlffigen: special::not-yet-tagged, special::not-yet-tagged::m
+ml-yacc: devel::code-generator, devel::lang:ml
+mlchat: implemented-in::ocaml, interface::x11, network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::gtk, use::chatting, x11::application
+mldonkey-gui: implemented-in::ocaml, interface::commandline, interface::x11, network::client, role::program, uitoolkit::gtk, x11::application
+mldonkey-server: implemented-in::ocaml, interface::commandline, interface::text-mode, interface::web, protocol::bittorrent, use::downloading
+mlglade: devel::compiler, devel::lang:ocaml, implemented-in::ocaml, interface::commandline, role::program, scope::utility, works-with-format::xml
+mlmmj: mail::list, special::not-yet-tagged, special::not-yet-tagged::m, works-with::mail
+mlmmj-php-web: implemented-in::php, interface::web, mail::list, special::not-yet-tagged, special::not-yet-tagged::m
+mlmmj-php-web-admin: devel::lang:php, interface::web, special::not-yet-tagged, special::not-yet-tagged::m
+mlock: interface::commandline, role::program, scope::utility, works-with::mail
+mlterm: interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::terminal
+mlterm-common: interface::x11, role::app-data, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::gtk, x11::terminal
+mlterm-im-iiimf: role::plugin, special::not-yet-tagged, special::not-yet-tagged::m, x11::terminal
+mlterm-im-m17nlib: role::plugin, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, x11::terminal
+mlterm-im-scim: role::plugin, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, x11::terminal
+mlterm-im-uim: role::plugin, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, x11::terminal
+mlterm-tiny: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, x11::terminal
+mlterm-tools: admin::configuring, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::gtk, use::configuring, x11::terminal
+mlton: devel::compiler, devel::lang:ml, interface::commandline, role::program, scope::utility, works-with::software:source
+mlview: special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::gtk, uitoolkit::ncurses
+mma: implemented-in::python, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m
+mmake: devel::buildtools, devel::lang:java, interface::commandline, role::program, scope::utility
+mminstance: role::dummy, special::obsolete, works-with::font
+mmix-src: devel::machinecode, hardware::emulation
+mmm-mode: role::plugin, suite::emacs
+mmorph: field::linguistics, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m
+mmucl: game::mud, implemented-in::tcl, interface::x11, network::client, role::program, uitoolkit::tk, use::gameplaying, x11::application
+mmv: interface::commandline, role::program, scope::utility, use::organizing, works-with::file
+mmx-emu: hardware::emulation, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::m
+mn-fit: field::statistics, implemented-in::fortran, special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::ncurses
+mn-fit-common: field::statistics, role::app-data, special::not-yet-tagged, special::not-yet-tagged::m
+mn-fit-dev: devel::library, field::statistics, implemented-in::fortran, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::ncurses
+mn-fit-doc: field::statistics, made-of::data:pdf, made-of::data:postscript, role::documentation, special::not-yet-tagged, special::not-yet-tagged::m
+mnemo: interface::web, special::not-yet-tagged, special::not-yet-tagged::m, use::organizing, works-with::pim
+mnemo2: special::not-yet-tagged, special::not-yet-tagged::m
+mnogosearch-common: devel::lang:sql, interface::web, role::app-data, special::auto-inst-parts, use::searching, works-with::db
+mnogosearch-dev: devel::lang:sql, devel::library, interface::web, role::devel-lib, use::searching, works-with::db
+mnogosearch-doc: devel::lang:sql, interface::web, role::documentation, use::searching, works-with::db
+mnogosearch-mysql: devel::lang:sql, interface::web, role::app-data, use::searching, works-with::db
+mnogosearch-pgsql: devel::lang:sql, interface::web, role::app-data, use::searching, works-with::db
+mnogosearch-php: use::searching
+mnogosearch-sqlite: devel::lang:sql, interface::web, role::app-data, use::searching, works-with::db
+moagg: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+moagg-data: game::arcade, interface::x11, role::app-data, uitoolkit::sdl, x11::application
+moaggedit: game::arcade, interface::x11, role::program, scope::utility, uitoolkit::qt, use::editing, x11::application
+mobilemesh: network::configuration, special::not-yet-tagged, special::not-yet-tagged::m
+moc: filetransfer::http, implemented-in::c, interface::commandline, interface::daemon, interface::text-mode, network::client, protocol::http, role::program, scope::application, scope::utility, sound::player, uitoolkit::ncurses, use::playing, works-with-format::mp3, works-with-format::mpc, works-with-format::oggvorbis, works-with-format::special:todo, works-with::audio
+mocka: devel::compiler
+mod-chroot-common: role::plugin, special::not-yet-tagged, special::not-yet-tagged::m, suite::apache
+mod-musicindex-common: role::app-data, special::not-yet-tagged, special::not-yet-tagged::m, suite::apache, works-with::audio
+mod-security-common: role::plugin, security::ids, special::not-yet-tagged, special::not-yet-tagged::m, suite::apache
+modconf: admin::configuring, admin::kernel, implemented-in::shell, interface::commandline, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::configuring
+modemp3d: hardware::hamradio, interface::x11, role::program, scope::utility, uitoolkit::gtk, works-with-format::mp3, works-with::audio, x11::application
+modemu: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, use::transmission
+modlogan: admin::accounting, admin::monitoring, implemented-in::c, interface::commandline, interface::web, role::program, security::log-analyzer, special::not-yet-tagged, special::not-yet-tagged::m, works-with-format::html, works-with::logfile, works-with::text
+module-assistant: admin::kernel, devel::debian, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, suite::debian, works-with::software:source
+module-init-tools: admin::kernel, implemented-in::c, interface::commandline, role::program, scope::utility
+modutils: admin::configuring, admin::kernel, interface::commandline, role::program, scope::utility, use::configuring
+modxslt-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::m
+modxslt-tools: interface::commandline, special::not-yet-tagged, special::not-yet-tagged::m, works-with-format::xml:xslt
+moinmoin-common: implemented-in::python, interface::web, network::server, role::app-data, role::program, web::wiki
+mol: admin::virtualization, implemented-in::c, role::program, scope::utility
+molphy: field::biology, implemented-in::c, role::program, scope::application
+mon: admin::monitoring, implemented-in::perl, use::monitor, works-with::logfile, works-with::mail
+mona: field::mathematics, role::program, scope::utility
+mondo: admin::backup, hardware::storage, interface::commandline, network::server, role::program, scope::utility, use::synchronizing
+mondo-doc: admin::backup, hardware::storage, role::documentation, use::synchronizing
+monit: admin::monitoring, interface::daemon, network::hiavailability, network::server, role::program, use::monitor, works-with::software:running
+moniwiki: implemented-in::php, interface::web, network::server, role::program, web::wiki
+mono: devel::ecma-cli, devel::interpreter, devel::lang:c-sharp, devel::runtime, role::metapackage, special::not-yet-tagged::m
+mono-apache-server: special::not-yet-tagged, special::not-yet-tagged::m
+mono-assemblies-arch: special::not-yet-tagged, special::not-yet-tagged::m
+mono-assemblies-base: special::not-yet-tagged, special::not-yet-tagged::m
+mono-common: devel::ecma-cli, role::app-data
+mono-devel: devel::ecma-cli
+mono-gac: devel::ecma-cli, devel::lang:c-sharp, devel::runtime, implemented-in::c-sharp, interface::commandline, role::program
+mono-gmcs: devel::compiler, devel::ecma-cli, devel::lang:c-sharp, implemented-in::c-sharp, interface::commandline
+mono-jay: special::not-yet-tagged, special::not-yet-tagged::m
+mono-jit: devel::ecma-cli, devel::interpreter, devel::runtime, implemented-in::c, interface::commandline, special::not-yet-tagged::m
+mono-mcs: devel::compiler, devel::ecma-cli, devel::lang:c-sharp, implemented-in::c-sharp, interface::commandline
+mono-runtime: devel::ecma-cli, devel::runtime, role::metapackage
+mono-utils: devel::ecma-cli, devel::lang:c-sharp, devel::packaging, interface::commandline, role::program, scope::utility
+mono-xsp: implemented-in::c-sharp, interface::daemon, protocol::http, role::program, special::not-yet-tagged::m, web::appserver
+monodevelop: devel::editor, devel::ide, devel::lang:c-sharp, devel::lang:java, devel::ui-builder, implemented-in::c-sharp, uitoolkit::gtk
+monodevelop-boo: uitoolkit::gtk
+monodevelop-java: uitoolkit::gtk
+monodevelop-nunit: uitoolkit::gtk
+monodevelop-query: uitoolkit::gtk
+monodevelop-versioncontrol: uitoolkit::gtk
+monodoc: special::not-yet-tagged, special::not-yet-tagged::m
+monodoc-base: devel::doc, devel::ecma-cli, devel::lang:c-sharp, implemented-in::c-sharp, interface::commandline, role::program
+monodoc-browser: special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::gtk
+monodoc-gtksourceview2.0-manual: role::documentation
+monodoc-http: special::not-yet-tagged, special::not-yet-tagged::m
+monodoc-manual: devel::doc, made-of::data:xml, role::documentation
+monopd: game::board, interface::daemon, network::server, role::program, use::gameplaying
+monotone: devel::rcs, interface::commandline, network::client, role::program
+monotone-viz: implemented-in::ocaml, uitoolkit::gtk
+monster-masher: game::arcade, interface::x11, suite::gnome, uitoolkit::gtk, x11::application
+monsterz: game::puzzle, interface::x11, role::program, use::gameplaying, x11::application
+monsterz-data: role::app-data
+montecarlo-base: field::physics, role::app-data, special::not-yet-tagged, special::not-yet-tagged::m
+moodle: devel::lang:sql, implemented-in::php, interface::web, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::m, use::learning, works-with::db
+moodle-book: implemented-in::php, interface::web, role::plugin, special::not-yet-tagged, special::not-yet-tagged::m, use::learning
+moodss: interface::x11, role::program, scope::utility, uitoolkit::tk, use::editing, use::viewing, works-with::spreadsheet, x11::application
+mooix: game::mud, interface::daemon, network::server, role::program, use::gameplaying
+moomps: admin::monitoring, implemented-in::tcl, interface::x11, network::server, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::tk, use::monitor, works-with::logfile, works-with::mail, works-with::spreadsheet
+moon-buggy: game::arcade, interface::text-mode, junior::arcade, role::program, uitoolkit::ncurses, use::gameplaying
+moon-buggy-esd: game::arcade, interface::text-mode, junior::arcade, role::program, uitoolkit::ncurses, use::gameplaying, works-with::audio
+moon-lander: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+moon-lander-data: game::arcade, interface::x11, role::app-data, special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::sdl, x11::application
+moosic: interface::commandline, interface::daemon, network::client, network::server, role::program, sound::midi, sound::player, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+mopd: interface::daemon, special::not-yet-tagged, special::not-yet-tagged::m
+mordor: game::mud, role::program, use::gameplaying
+moreutils: implemented-in::c, implemented-in::perl, interface::commandline, role::program, scope::utility, works-with::text
+moria: game::rpg, game::rpg:rogue, use::gameplaying
+most: implemented-in::c, interface::commandline, interface::text-mode, role::program, scope::utility, uitoolkit::TODO, use::viewing, works-with-format::man, works-with-format::plaintext, works-with::text
+motif-clients: special::not-yet-tagged, special::not-yet-tagged::m
+motifnls: made-of::TODO, role::app-data, special::not-yet-tagged, special::not-yet-tagged::m, x11::TODO
+motion: hardware::camera, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, use::monitor, works-with-format::TODO, works-with::image, works-with::video
+motioneye: hardware::camera, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, use::storing, works-with::image, works-with::image:raster, works-with::video, x11::application
+moto4lin: admin::hardware, hardware::modem, hardware::usb, implemented-in::c, uitoolkit::qt, use::synchronizing, use::transmission, works-with::pim, x11::application
+motor: devel::ide, devel::lang:c, devel::lang:c++, devel::lang:java, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::editing
+motor-common: devel::ide, devel::lang:c, devel::lang:c++, devel::lang:java, interface::commandline, role::app-data, scope::utility, special::auto-inst-parts, use::editing
+motor-fribidi: culture::arabic, culture::hebrew, devel::ide, devel::lang:c, devel::lang:c++, devel::lang:java, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::editing
+motv: uitoolkit::ncurses, works-with::video
+mount: admin::filesystem, hardware::storage, interface::commandline, role::program, scope::utility
+mountapp: admin::filesystem, hardware::storage, interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::applet, x11::application
+mouseemu: admin::kernel, hardware::emulation, hardware::input, hardware::input:mouse, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m
+mousepad: uitoolkit::gtk
+mova: interface::x11, role::program, scope::utility, uitoolkit::tk, works-with::dictionary, x11::application
+movixmaker-2: admin::boot, hardware::storage, hardware::storage:cd, implemented-in::perl, interface::commandline, interface::x11, role::program, special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::gtk, x11::application
+mozart: devel::TODO, devel::compiler, devel::ide, devel::interpreter, implemented-in::c++, role::program, scope::utility, uitoolkit::tk
+mozart-doc: devel::doc, made-of::data:html, role::documentation, role::program, scope::utility, x11::applet
+mozart-gtk: devel::ide, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::gtk, x11::application
+mozart-stdlib: devel::library, role::devel-lib, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m
+mozilla: interface::x11, role::metapackage, special::meta, suite::mozilla, use::browsing, works-with-format::html, works-with::text, x11::application
+mozilla-biofox: field::biology, field::genealogy, role::plugin, suite::mozilla, use::browsing, use::searching, works-with::db
+mozilla-bonobo: interface::x11, protocol::corba, role::plugin, suite::gnome, suite::mozilla, uitoolkit::gtk, use::browsing, works-with-format::html, works-with::text, x11::application
+mozilla-bookmarksftp: filetransfer::TODO, filetransfer::ftp, filetransfer::http, implemented-in::ecmascript, interface::x11, protocol::ftp, protocol::http, protocol::webdav, role::plugin, suite::mozilla, uitoolkit::gtk
+mozilla-browser: implemented-in::c, interface::x11, network::client, role::program, role::shared-lib, suite::mozilla, uitoolkit::gtk, use::browsing, web::browser, works-with-format::html, works-with-format::xml, works-with::text, x11::application
+mozilla-calendar: interface::x11, role::program, scope::utility, suite::mozilla, uitoolkit::gtk, use::organizing, use::timekeeping, works-with::pim, x11::application
+mozilla-cascades: implemented-in::ecmascript, interface::x11, role::plugin, suite::mozilla, uitoolkit::gtk, use::editing, works-with-format::html, works-with::text, x11::application
+mozilla-chatzilla: filetransfer::dcc, interface::x11, network::client, protocol::irc, role::plugin, role::program, suite::mozilla, uitoolkit::gtk, use::chatting, works-with-format::html, works-with::text, x11::application
+mozilla-checky: interface::x11, role::plugin, suite::mozilla, uitoolkit::gtk, use::checking, works-with-format::html, works-with::text, x11::application
+mozilla-ctxextensions: interface::x11, role::plugin, suite::mozilla, uitoolkit::gtk, use::browsing, works-with-format::html, works-with::text, x11::application
+mozilla-dev: devel::library, interface::x11, role::devel-lib, suite::mozilla, uitoolkit::gtk, use::browsing, works-with-format::html, works-with::text, x11::application
+mozilla-diggler: interface::x11, role::plugin, suite::mozilla, uitoolkit::gtk, use::browsing, works-with-format::html, works-with::text, x11::application
+mozilla-dom-inspector: devel::debugger, interface::x11, role::plugin, suite::mozilla, uitoolkit::gtk, use::checking, works-with-format::html, works-with::text, x11::application
+mozilla-enigmail: interface::x11, role::plugin, security::cryptography, suite::mozilla, uitoolkit::gtk, use::checking, works-with::mail, x11::application
+mozilla-firefox: implemented-in::c, interface::x11, network::client, role::program, role::shared-lib, suite::mozilla, uitoolkit::gtk, use::browsing, web::browser, works-with-format::html, works-with-format::xml, works-with::text, x11::application
+mozilla-firefox-adblock: implemented-in::ecmascript, role::plugin, security::privacy, suite::mozilla, web::browser
+mozilla-firefox-dom-inspector: devel::debugger, interface::x11, role::plugin, role::shared-lib, suite::mozilla, uitoolkit::gtk, use::checking, works-with-format::html, works-with::text, x11::application
+mozilla-firefox-gnome-support: implemented-in::c, interface::x11, role::plugin, suite::gnome, suite::mozilla, uitoolkit::gtk, use::browsing, works-with-format::html, works-with::text, x11::application
+mozilla-firefox-locale-af-za: culture::afrikaans, role::app-data, suite::mozilla
+mozilla-firefox-locale-ar: culture::arabic, role::app-data, suite::mozilla
+mozilla-firefox-locale-ast-es: culture::spanish, role::app-data, suite::mozilla
+mozilla-firefox-locale-bg-bg: culture::bulgarian, role::app-data, suite::mozilla
+mozilla-firefox-locale-ca: culture::catalan, role::app-data, suite::mozilla
+mozilla-firefox-locale-cs-cz: culture::czech, role::app-data, suite::mozilla
+mozilla-firefox-locale-da-dk: culture::danish, role::app-data, suite::mozilla
+mozilla-firefox-locale-de-de: culture::german, role::app-data, suite::mozilla
+mozilla-firefox-locale-el: culture::greek, role::app-data, suite::mozilla
+mozilla-firefox-locale-en-gb: culture::TODO, role::app-data, suite::mozilla
+mozilla-firefox-locale-es-ar: culture::arabic, culture::swedish, role::app-data, suite::mozilla
+mozilla-firefox-locale-es-es: culture::spanish, role::app-data, suite::mozilla
+mozilla-firefox-locale-eu: culture::basque, role::app-data, suite::mozilla
+mozilla-firefox-locale-fi-fi: culture::finnish, role::app-data, suite::mozilla
+mozilla-firefox-locale-fr-fr: culture::french, role::app-data, suite::mozilla
+mozilla-firefox-locale-ga-ie: culture::irish, role::app-data, suite::mozilla
+mozilla-firefox-locale-gu-in: role::app-data, suite::mozilla
+mozilla-firefox-locale-he-il: culture::hebrew, role::app-data, suite::mozilla
+mozilla-firefox-locale-hu-hu: culture::hungarian, role::app-data, suite::mozilla
+mozilla-firefox-locale-it: culture::italian, role::app-data, suite::mozilla
+mozilla-firefox-locale-ja: culture::japanese, role::app-data, suite::mozilla
+mozilla-firefox-locale-ko: culture::korean, role::app-data, suite::mozilla
+mozilla-firefox-locale-mk-mk: role::app-data, suite::mozilla
+mozilla-firefox-locale-nb: culture::bokmaal, role::app-data, suite::mozilla
+mozilla-firefox-locale-nl-nl: culture::dutch, role::app-data, suite::mozilla
+mozilla-firefox-locale-pa-in: role::app-data, suite::mozilla
+mozilla-firefox-locale-pl-pl: culture::polish, role::app-data, suite::mozilla
+mozilla-firefox-locale-pt-br: culture::brazilian, role::app-data, suite::mozilla
+mozilla-firefox-locale-pt-pt: culture::portuguese, role::app-data, suite::mozilla
+mozilla-firefox-locale-ro-ro: culture::romanian, role::app-data, suite::mozilla
+mozilla-firefox-locale-ru-ru: culture::russian, role::app-data, suite::mozilla
+mozilla-firefox-locale-sl-si: role::app-data, suite::mozilla
+mozilla-firefox-locale-sq-al: role::app-data, suite::mozilla
+mozilla-firefox-locale-sv-se: culture::swedish, role::app-data, suite::mozilla
+mozilla-firefox-locale-tr: culture::turkish, role::app-data, suite::mozilla
+mozilla-firefox-locale-tr-tr: culture::turkish, role::app-data, suite::mozilla
+mozilla-firefox-locale-uk: culture::ukrainian, role::app-data, suite::mozilla
+mozilla-firefox-locale-zh-cn: culture::chinese, role::app-data, suite::mozilla
+mozilla-firefox-locale-zh-tw: culture::taiwanese, role::app-data, suite::mozilla
+mozilla-firefox-theme-rtlclassic: interface::x11, role::app-data, suite::mozilla, uitoolkit::gtk, use::browsing, works-with-format::html, works-with::text, x11::application, x11::theme
+mozilla-firefox-webdeveloper: suite::mozilla
+mozilla-helix-player: interface::x11, suite::mozilla, uitoolkit::gtk, x11::application
+mozilla-imagezoom: implemented-in::ecmascript, interface::web, interface::x11, role::plugin, suite::mozilla, uitoolkit::gtk, use::browsing, works-with-format::html, works-with-format::jpg, works-with-format::png, works-with::image, works-with::image:raster, x11::application
+mozilla-js-debugger: devel::debugger, interface::x11, role::plugin, suite::mozilla, uitoolkit::gtk, use::checking, works-with-format::html, works-with::text, x11::application
+mozilla-livehttpheaders: devel::debugger, interface::x11, role::plugin, suite::mozilla, uitoolkit::gtk, use::browsing, works-with-format::html, works-with::text, x11::application
+mozilla-locale-ca: culture::catalan, role::dummy, special::obsolete, suite::mozilla
+mozilla-locale-cs: culture::czech, role::dummy, special::obsolete, suite::mozilla
+mozilla-locale-cy: culture::welsh, role::app-data, suite::mozilla
+mozilla-locale-da: culture::danish, role::app-data, suite::mozilla
+mozilla-locale-de-at: culture::german, role::dummy, special::obsolete, suite::mozilla
+mozilla-locale-el: culture::greek, role::app-data, suite::mozilla
+mozilla-locale-es: culture::spanish, role::app-data, role::dummy, special::obsolete, suite::mozilla
+mozilla-locale-es-es: culture::spanish, role::app-data, suite::mozilla
+mozilla-locale-eu: culture::basque, role::app-data, suite::mozilla
+mozilla-locale-fr: culture::french, role::dummy, special::obsolete, suite::mozilla
+mozilla-locale-hu: culture::hungarian, role::app-data, suite::mozilla
+mozilla-locale-it: culture::italian, role::dummy, special::obsolete, suite::mozilla
+mozilla-locale-ja: culture::japanese, role::app-data, suite::mozilla
+mozilla-locale-ko: culture::korean, role::app-data, suite::mozilla
+mozilla-locale-lt: role::app-data, suite::mozilla
+mozilla-locale-no-nb: culture::bokmaal, role::plugin, suite::mozilla
+mozilla-locale-pl: culture::polish, role::dummy, special::obsolete, suite::mozilla
+mozilla-locale-ptbr: culture::brazilian, role::app-data, role::plugin, suite::mozilla
+mozilla-locale-sl: culture::slovenian, role::app-data, suite::mozilla
+mozilla-locale-tr: culture::turkish, role::app-data, suite::mozilla
+mozilla-locale-zh-cn: culture::chinese, role::app-data, suite::mozilla, use::browsing
+mozilla-locale-zh-hk: culture::chinese, suite::mozilla, use::browsing
+mozilla-locale-zh-tw: culture::chinese, culture::taiwanese, role::app-data, suite::mozilla, use::browsing
+mozilla-mailnews: interface::x11, mail::imap, mail::pop, mail::user-agent, network::client, protocol::imap, protocol::nntp, protocol::pop3, role::plugin, role::program, suite::mozilla, uitoolkit::gtk, works-with::mail, x11::application
+mozilla-mozgest: accessibility::input, interface::x11, role::plugin, suite::mozilla, uitoolkit::gtk, use::browsing, works-with-format::html, works-with::text, x11::application
+mozilla-mplayer: special::not-yet-tagged, special::not-yet-tagged::m, suite::mozilla, uitoolkit::gtk, use::playing
+mozilla-nukeimage: interface::x11, role::plugin, suite::mozilla, uitoolkit::gtk, use::browsing, works-with-format::html, works-with::image, works-with::image:raster, works-with::text, x11::application
+mozilla-opensc: interface::x11, role::plugin, security::authentication, suite::mozilla, uitoolkit::gtk, use::browsing, works-with-format::html, works-with::text, x11::application
+mozilla-plugin-gnash: suite::mozilla
+mozilla-plugin-pcmanx: suite::mozilla, uitoolkit::gtk
+mozilla-plugin-vlc: interface::x11, role::plugin, suite::mozilla, uitoolkit::gtk, use::playing, works-with-format::html, works-with::audio, works-with::text, works-with::video, x11::application
+mozilla-psm: interface::x11, protocol::ssl, role::plugin, role::shared-lib, security::cryptography, suite::mozilla, uitoolkit::gtk, use::browsing, works-with-format::html, works-with::text, x11::application
+mozilla-stumbleupon: interface::x11, role::plugin, suite::mozilla, uitoolkit::gtk, use::browsing, works-with-format::html, works-with::text, x11::application
+mozilla-tabextensions: interface::x11, role::plugin, suite::mozilla, uitoolkit::gtk, use::browsing, works-with-format::html, works-with::text, x11::application
+mozilla-thunderbird: interface::x11, mail::imap, mail::smtp, mail::user-agent, network::client, protocol::imap, protocol::smtp, role::program, suite::mozilla, uitoolkit::gtk, use::editing, works-with::mail, x11::application
+mozilla-thunderbird-dev: devel::library, interface::x11, mail::imap, mail::smtp, mail::user-agent, protocol::imap, protocol::smtp, role::devel-lib, suite::mozilla, uitoolkit::gtk, works-with::mail, x11::application
+mozilla-thunderbird-enigmail: interface::x11, mail::imap, mail::smtp, mail::user-agent, protocol::imap, protocol::smtp, role::plugin, security::cryptography, suite::mozilla, uitoolkit::gtk, use::checking, works-with::mail, x11::application
+mozilla-thunderbird-inspector: devel::debugger, interface::x11, mail::imap, mail::smtp, mail::user-agent, protocol::imap, protocol::smtp, role::plugin, suite::mozilla, uitoolkit::gtk, use::checking, x11::application
+mozilla-thunderbird-locale-ca: culture::catalan, role::app-data, suite::mozilla
+mozilla-thunderbird-locale-cs: suite::mozilla
+mozilla-thunderbird-locale-de: culture::german, role::app-data, suite::mozilla
+mozilla-thunderbird-locale-el: culture::greek, role::app-data, suite::mozilla
+mozilla-thunderbird-locale-es: culture::spanish, role::app-data, suite::mozilla
+mozilla-thunderbird-locale-fr: culture::french, role::app-data, suite::mozilla
+mozilla-thunderbird-locale-it: culture::italian, role::app-data, suite::mozilla
+mozilla-thunderbird-locale-ko: culture::korean, role::app-data, suite::mozilla
+mozilla-thunderbird-locale-nb: culture::bokmaal, special::not-yet-tagged, special::not-yet-tagged::m, suite::mozilla
+mozilla-thunderbird-locale-nl: culture::dutch, role::app-data, suite::mozilla
+mozilla-thunderbird-locale-pl: culture::polish, role::app-data, suite::mozilla
+mozilla-thunderbird-locale-pt-br: culture::brazilian, role::app-data, suite::mozilla
+mozilla-thunderbird-locale-ru: culture::russian, role::app-data, suite::mozilla
+mozilla-thunderbird-locale-sv: culture::swedish, role::app-data, suite::mozilla
+mozilla-thunderbird-locale-tr: culture::turkish, role::app-data, suite::mozilla
+mozilla-thunderbird-locale-uk: culture::ukrainian, role::app-data, suite::mozilla
+mozilla-thunderbird-offline: interface::x11, protocol::imap, protocol::smtp, role::plugin, suite::mozilla, uitoolkit::gtk, use::editing, works-with::mail, x11::application
+mozilla-thunderbird-typeaheadfind: interface::x11, protocol::imap, protocol::smtp, role::plugin, suite::mozilla, uitoolkit::gtk, works-with::mail, x11::application
+mozilla-venkman: devel::debugger, interface::x11, role::plugin, suite::mozilla, uitoolkit::gtk, use::checking, works-with-format::html, works-with::text, x11::application
+mozplugger: interface::x11, role::plugin, role::shared-lib, suite::mozilla, use::browsing, works-with-format::html, works-with::text, x11::application
+mp: interface::commandline, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::printing, x11::application
+mp32ogg: implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+mp3blaster: interface::text-mode, role::program, sound::mixer, sound::player, uitoolkit::ncurses, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+mp3burn: hardware::storage, hardware::storage:cd, implemented-in::perl, interface::commandline, role::program, scope::utility, works-with-format::iso9660, works-with-format::mp3, works-with::archive, works-with::audio
+mp3c: hardware::storage, hardware::storage:cd, interface::commandline, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::converting, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+mp3cd: hardware::storage:cd, interface::commandline, role::program, works-with-format::iso9660, works-with-format::mp3, works-with-format::oggvorbis, works-with::archive, works-with::audio
+mp3check: interface::commandline, role::program, scope::utility, use::checking, works-with-format::mp3, works-with::audio
+mp3gain: implemented-in::c, interface::commandline, role::program, scope::utility, sound::compression, use::converting, works-with-format::mp3, works-with::audio
+mp3info: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::checking, works-with-format::mp3, works-with::audio
+mp3info-gtk: interface::x11, role::program, scope::utility, uitoolkit::gtk, use::checking, works-with-format::mp3, works-with::audio, x11::application
+mp3kult: devel::lang:sql, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::organizing, works-with-format::mp3, works-with::audio, works-with::db, x11::application
+mp3rename: interface::commandline, role::program, scope::utility, use::organizing, works-with-format::mp3, works-with::audio
+mp3report: implemented-in::perl, interface::commandline, role::program, scope::utility, use::scanning, works-with-format::html, works-with-format::mp3, works-with::audio, works-with::text
+mp3roaster: hardware::storage, hardware::storage:cd, implemented-in::perl, interface::commandline, role::program, scope::utility, use::storing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+mp3splt: interface::commandline, role::program, scope::utility, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+mp3val: interface::commandline, role::program, scope::utility, works-with-format::mp3
+mp3wrap: interface::commandline, role::program, scope::utility, works-with-format::mp3, works-with::audio
+mp4h: interface::commandline, role::program, scope::utility, works-with-format::html, works-with::text
+mpack: interface::commandline, role::program, scope::utility, use::storing, works-with::archive, works-with::mail
+mpage: hardware::printer, interface::commandline, role::program, scope::utility, use::printing, works-with-format::postscript, works-with::text
+mpatrolc102: devel::debugger, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::motif
+mpb: field::physics, role::program, scope::utility
+mpb-doc: field::physics, made-of::data:html, role::documentation
+mpb-mpi: admin::cluster, field::physics, role::program, scope::utility
+mpc: interface::commandline, network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::m, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::audio
+mpc-ace: devel::code-generator, implemented-in::perl, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m
+mpc123: implemented-in::c, interface::commandline, role::program, sound::player, use::playing, works-with-format::mpc, works-with::audio
+mpd: interface::daemon, network::server, network::service, role::program, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::audio
+mpdcon.app: implemented-in::objc, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, suite::gnustep, uitoolkit::gnustep, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::audio, x11::application
+mpdscribble: implemented-in::c, interface::daemon, network::client, protocol::http, role::program, sound::TODO, sound::player, use::entertaining, use::playing, works-with::audio
+mpe-source: devel::profiler, role::source, special::not-yet-tagged, special::not-yet-tagged::m
+mped: devel::editor, interface::text-mode, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::gtk, uitoolkit::ncurses, use::editing, works-with::software:source, works-with::text
+mpeg2dec: interface::svga, interface::text-mode, interface::x11, role::program, sound::player, uitoolkit::ncurses, uitoolkit::sdl, use::converting, use::playing, works-with::audio, works-with::video, x11::application
+mpeg3-utils: interface::commandline, role::program, scope::utility, use::converting, works-with-format::mp3, works-with::audio, works-with::video
+mpegdemux: interface::commandline, role::program, scope::utility, use::converting, works-with::audio, works-with::video
+mpeglib: devel::library, role::program, role::shared-lib, scope::utility, suite::kde, works-with-format::mp3, works-with::audio, works-with::video
+mpg123: interface::commandline, role::program, sound::player, use::playing, works-with-format::mp3, works-with::audio
+mpg123-alsa: implemented-in::c, role::program, scope::application, sound::player, use::playing, works-with-format::mp3, works-with::audio
+mpg123-el: implemented-in::lisp, interface::commandline, role::plugin, suite::emacs, use::playing, works-with-format::mp3, works-with::audio
+mpg123-esd: sound::player, works-with-format::mp3, works-with::audio
+mpg123-nas: sound::player, works-with-format::mp3, works-with::audio
+mpg123-oss-3dnow: sound::player, works-with-format::mp3, works-with::audio
+mpg123-oss-i486: sound::player, works-with-format::mp3, works-with::audio
+mpg321: interface::commandline, role::program, scope::utility, sound::player, use::playing, works-with-format::mp3, works-with::audio
+mpgtx: interface::commandline, role::program, scope::utility, use::converting, works-with-format::mp3, works-with::audio, works-with::video
+mpi-doc: admin::cluster, devel::rpc, made-of::data:html, made-of::data:man, role::documentation
+mpi-specs: role::data, role::documentation
+mpich: admin::cluster, devel::rpc, role::dummy, special::obsolete
+mpich-bin: admin::cluster, devel::rpc, implemented-in::fortran, role::program, scope::utility
+mpich-mpd: admin::cluster, devel::library, devel::rpc, role::dummy, special::obsolete
+mpich-mpd-bin: admin::cluster, devel::rpc, role::program, scope::utility
+mpichpython: admin::cluster, devel::interpreter, devel::lang:python, devel::rpc
+mplayer: implemented-in::c, interface::commandline, interface::framebuffer, interface::svga, interface::x11, role::program, sound::player, uitoolkit::gtk, uitoolkit::ncurses, use::playing, works-with-format::TODO, works-with-format::mp3, works-with-format::oggtheora, works-with-format::oggvorbis, works-with-format::wav, works-with::audio, works-with::video, x11::application
+mpqc: field::chemistry, field::physics, role::program, scope::utility
+mpqc-support: field::chemistry, field::physics, implemented-in::perl, role::program, scope::utility, suite::emacs, uitoolkit::tk, x11::application
+mpy-svn-stats: devel::rcs, implemented-in::python, interface::commandline, role::program
+mrename: interface::commandline, role::program, scope::utility, works-with::file
+mrproject: implemented-in::c, interface::x11, role::dummy, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::editing, use::organizing, works-with::people, x11::application
+mrt: admin::benchmarking, admin::logging, admin::monitoring, implemented-in::c, interface::commandline, network::routing, protocol::ipv6, role::program, scope::utility, use::monitor
+mrtg: admin::monitoring, interface::commandline, network::routing, protocol::snmp, role::program, scope::utility, use::monitor, works-with-format::png, works-with::image, works-with::image:raster
+mrtg-contrib: admin::monitoring, interface::commandline, network::routing, role::program, scope::utility, use::monitor, works-with-format::png, works-with::image, works-with::image:raster
+mrtg-ping-probe: admin::monitoring, implemented-in::perl, interface::commandline, network::routing, role::program, scope::utility, use::monitor, works-with-format::png, works-with::image, works-with::image:raster
+mrtg-rrd: interface::commandline
+mrtgutils: admin::monitoring, implemented-in::c, interface::commandline, network::routing, role::program, scope::utility, use::monitor, works-with-format::png, works-with::image, works-with::image:raster
+mrwtoppm: hardware::camera, interface::commandline, role::program, scope::utility, use::converting, works-with::image, works-with::image:raster
+mrwtoppm-data: hardware::camera, role::app-data, use::converting, works-with::image, works-with::image:raster
+mrwtoppm-gimp: hardware::camera, interface::x11, role::plugin, scope::utility, suite::gimp, uitoolkit::gtk, works-with::image, works-with::image:raster, x11::application
+mrwtoppm-utils: hardware::camera, interface::commandline, role::program, scope::utility, use::converting, works-with::image, works-with::image:raster
+mrxvt: interface::x11, role::program, scope::utility, x11::terminal
+mrxvt-cjk: interface::x11, role::program, scope::utility, x11::terminal
+mrxvt-common: interface::x11, role::app-data, scope::utility, special::auto-inst-parts, x11::terminal
+mrxvt-mini: interface::x11, role::program, scope::utility, x11::terminal
+ms-sys: admin::boot, hardware::storage:floppy, interface::commandline, role::program, scope::utility
+msc: implemented-in::python, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m
+mscompress: interface::commandline, role::program, scope::utility, use::compressing
+mserv: network::server, role::program, sound::player, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+mserv-cgi: interface::web, role::program, scope::utility, sound::player, use::playing, web::cgi, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+mserv-client: network::client, role::program, sound::player, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+mserv-dev: devel::library, role::devel-lib, sound::player, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+msmtp: mail::smtp, network::client, protocol::smtp, role::program, security::authentication, special::not-yet-tagged, special::not-yet-tagged::m
+msort: interface::commandline, role::program, use::organizing, works-with::text
+mssstest: special::not-yet-tagged, special::not-yet-tagged::m
+msttcorefonts: made-of::data:font, role::app-data
+mt-daapd: implemented-in::c, interface::daemon, network::server, role::program, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::audio
+mt-st: admin::backup, hardware::storage, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, use::storing
+mtasc: devel::compiler, implemented-in::ocaml
+mtd-tools: admin::filesystem, hardware::storage, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m
+mtink: hardware::printer, implemented-in::c, interface::x11, role::program, scope::utility, uitoolkit::motif, use::monitor, x11::application
+mtink-doc: hardware::printer, implemented-in::c, interface::x11, role::documentation, uitoolkit::motif, use::monitor, x11::application
+mtools: admin::filesystem, hardware::storage:floppy, interface::commandline, role::program, scope::utility
+mtoolsfm: admin::filesystem, hardware::storage:floppy, interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+mtop: admin::monitoring, devel::lang:sql, implemented-in::perl, interface::text-mode, role::program, scope::utility, use::monitor, works-with::db
+mtr: interface::text-mode, interface::x11, network::scanner, protocol::ip, role::program, scope::utility, uitoolkit::gtk, uitoolkit::ncurses, use::checking, use::routing, x11::application
+mtr-tiny: interface::text-mode, network::scanner, protocol::ip, role::program, scope::utility, uitoolkit::ncurses, use::checking
+mtrack: field::geography, hardware::hamradio, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::monitor, x11::application
+mtx: admin::backup, interface::commandline, role::program, scope::utility, use::storing
+mu-cite: role::plugin, suite::emacs
+muddleftpd: filetransfer::ftp, interface::daemon, network::server, protocol::ftp, role::program, works-with::file
+mudnames: game::mud, interface::daemon, network::server, role::program, use::gameplaying
+mueller7-dict: culture::TODO, culture::russian, made-of::data:dictionary, role::app-data, use::converting
+mueller7-mova: culture::TODO, culture::russian, made-of::data:dictionary, role::app-data, use::converting
+mueller7accent-dict: culture::TODO, culture::russian, made-of::data:dictionary, role::app-data, use::converting
+mueller7accent-mova: culture::TODO, culture::russian, made-of::data:dictionary, role::app-data, use::converting
+muh: filetransfer::dcc, protocol::irc, role::program, scope::utility, use::chatting
+muine: interface::x11, sound::player, suite::gnome, uitoolkit::gtk, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, x11::application
+muine-plugin-inotify: uitoolkit::gtk
+muine-plugin-serpentine: uitoolkit::gtk
+muine-plugin-trayicon: uitoolkit::gtk, x11::application
+mule-ucs: implemented-in::lisp, role::plugin, suite::emacs, use::editing
+multex-base: interface::commandline, special::not-yet-tagged, special::not-yet-tagged::m, use::editing, works-with-format::tex, works-with::text
+multex-bin: special::not-yet-tagged, special::not-yet-tagged::m, use::editing, works-with-format::tex, works-with::text
+multi-aterm: role::program, scope::utility
+multi-gnome-terminal: interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, x11::terminal
+multi-gnome-terminal-doc: interface::x11, role::documentation, suite::gnome, uitoolkit::gtk, x11::terminal
+multicd: admin::backup, hardware::storage, hardware::storage:cd, role::program, scope::utility, use::storing
+multimail: implemented-in::c++, interface::text-mode, network::client, role::program, uitoolkit::ncurses, works-with::mail
+multimix: field::mathematics
+multimon: hardware::hamradio
+multipath-tools: admin::kernel, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::ncurses
+multisync: hardware::embedded, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::synchronizing, works-with::pim
+multisync-tools: interface::commandline, role::program, scope::utility, use::synchronizing, works-with::pim
+multisync0.90: uitoolkit::gtk
+multitail: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::viewing, works-with::logfile
+multitee: interface::commandline, role::program, scope::utility
+munin: admin::monitoring, implemented-in::perl, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, use::monitor
+munin-node: admin::monitoring, implemented-in::perl, interface::daemon, network::server, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, use::monitor
+murasaki: special::not-yet-tagged, special::not-yet-tagged::m
+muscle: field::biology, implemented-in::c++, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::m, works-with-format::plaintext, works-with::special:todo
+muscle-doc: field::biology, made-of::data:html, role::documentation, special::not-yet-tagged, special::not-yet-tagged::m
+muscletools: interface::commandline, role::program, scope::utility, security::cryptography, uitoolkit::ncurses
+muse: interface::x11, sound::midi, uitoolkit::qt, use::editing, works-with::music-notation, x11::application
+museeq: uitoolkit::qt
+mush-src: special::not-yet-tagged, special::not-yet-tagged::m
+music-applet: uitoolkit::gtk
+music123: implemented-in::ada, interface::commandline, role::program, scope::utility, sound::player, use::playing, works-with::audio
+musiclibrarian: implemented-in::python, interface::x11, role::program, scope::application, use::organizing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, x11::application
+musixlyr: special::not-yet-tagged, special::not-yet-tagged::m, works-with-format::tex, works-with::music-notation, works-with::text
+musixtex: special::not-yet-tagged, special::not-yet-tagged::m, works-with-format::tex, works-with::music-notation, works-with::text
+musixtex-slurps: special::not-yet-tagged, special::not-yet-tagged::m, works-with-format::tex, works-with::music-notation, works-with::text
+mutella: interface::text-mode, interface::web, network::client, network::service, role::program, special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::ncurses, use::downloading
+mutt: implemented-in::c, interface::text-mode, mail::imap, mail::pop, mail::user-agent, network::client, protocol::imap, protocol::ipv6, protocol::pop3, protocol::ssl, role::program, uitoolkit::ncurses, use::editing, works-with::mail
+mutt-ng: implemented-in::c, interface::commandline, interface::text-mode, mail::imap, mail::pop, mail::user-agent, network::client, protocol::imap, protocol::ipv6, protocol::pop3, role::program, uitoolkit::ncurses, works-with::mail
+muttprint: devel::prettyprint, implemented-in::perl, network::client, role::program, use::printing, works-with::mail
+muttprint-manual: devel::prettyprint, role::documentation, use::printing
+muttprofile: role::plugin, use::configuring, works-with::mail
+mwavem: special::not-yet-tagged, special::not-yet-tagged::m
+mxv: interface::x11, role::program, scope::application, use::editing, use::viewing, works-with-format::wav, works-with::audio, x11::application
+mydns-common: devel::lang:sql, interface::daemon, protocol::dns, role::app-data, role::documentation, role::program, scope::utility, works-with::db
+mydns-mysql: devel::lang:sql, interface::daemon, network::server, protocol::dns, role::program, works-with::db
+mydns-pgsql: devel::lang:sql, interface::daemon, network::server, protocol::dns, role::program, works-with::db
+mypasswordsafe: interface::x11, role::program, scope::utility, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::m, uitoolkit::qt, x11::application
+myphpmoney: devel::lang:sql, field::finance, implemented-in::php, interface::web, special::not-yet-tagged, special::not-yet-tagged::m, use::organizing, works-with::db
+myspell-bg: culture::bulgarian, made-of::data:dictionary, role::app-data, use::checking
+myspell-ca: culture::catalan, made-of::data:dictionary, role::app-data, use::checking
+myspell-cs-cz: culture::czech, made-of::data:dictionary, role::app-data
+myspell-da: culture::danish, made-of::data:dictionary, role::app-data, use::checking
+myspell-de-at: culture::german, made-of::data:dictionary, role::app-data, use::checking
+myspell-de-ch: culture::german, made-of::data:dictionary, role::app-data, use::checking
+myspell-de-de: culture::german, made-of::data:dictionary, role::app-data, use::checking
+myspell-de-de-oldspell: culture::german, made-of::data:dictionary, role::app-data, use::checking
+myspell-el-gr: culture::greek, made-of::data:dictionary, role::app-data, use::checking
+myspell-en-au: culture::TODO, made-of::data:dictionary, role::app-data, use::checking
+myspell-en-gb: culture::TODO, made-of::data:dictionary, role::app-data, use::checking
+myspell-en-us: culture::TODO, made-of::data:dictionary, role::app-data, use::checking
+myspell-eo: culture::esperanto, made-of::data:dictionary, role::app-data, use::checking
+myspell-es: culture::spanish, made-of::data:dictionary, role::app-data, use::checking
+myspell-et: culture::estonian
+myspell-fi: culture::finnish, made-of::data:dictionary, role::app-data, use::checking
+myspell-fo: culture::faroese
+myspell-fr: culture::french, made-of::data:dictionary, role::app-data, use::checking
+myspell-fr-gut: culture::french, made-of::data:dictionary, role::app-data, use::checking
+myspell-ga: culture::irish, made-of::data:dictionary, role::app-data, use::checking
+myspell-gd: culture::TODO, made-of::data:dictionary, role::app-data, use::checking
+myspell-gl-es: culture::spanish, made-of::data:dictionary, role::app-data, use::checking
+myspell-gv: culture::TODO, made-of::data:dictionary, role::app-data, use::checking
+myspell-he: culture::hebrew, made-of::data:dictionary, role::app-data, use::checking
+myspell-hr: culture::croatian
+myspell-hu: culture::hungarian, made-of::data:dictionary, role::app-data, use::checking
+myspell-it: culture::italian, made-of::data:dictionary, role::app-data, use::checking
+myspell-lt: culture::TODO, made-of::data:dictionary, role::app-data, use::checking
+myspell-lv: culture::TODO, made-of::data:dictionary, role::app-data, use::checking
+myspell-nb: culture::bokmaal, made-of::data:dictionary, role::app-data, use::checking
+myspell-nl: culture::dutch, made-of::data:dictionary, role::app-data, use::checking
+myspell-nn: culture::nynorsk, made-of::data:dictionary, role::app-data, use::checking
+myspell-pl: culture::polish, made-of::data:dictionary, role::app-data, use::checking
+myspell-pt: culture::portuguese
+myspell-pt-br: culture::brazilian, made-of::data:dictionary, role::app-data, use::checking
+myspell-pt-pt: culture::portuguese
+myspell-ru: culture::russian, made-of::data:dictionary, role::app-data, use::checking
+myspell-sk: culture::slovak
+myspell-sl: culture::TODO, culture::slovenian, made-of::data:dictionary, role::app-data, use::checking
+myspell-sv-se: culture::swedish, made-of::data:dictionary, role::app-data, use::checking
+myspell-sw: culture::TODO, made-of::data:dictionary, role::app-data
+myspell-th: culture::thai, made-of::data:dictionary, role::app-data
+myspell-uk: culture::ukrainian, made-of::data:dictionary, role::app-data, use::checking
+mysql-admin: devel::lang:sql, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::configuring, works-with::db, x11::application
+mysql-admin-common: devel::lang:sql, interface::x11, role::app-data, special::auto-inst-parts, uitoolkit::gtk, use::configuring, works-with::db, x11::application
+mysql-client: devel::lang:sql, interface::text-mode, network::client, role::program, uitoolkit::ncurses, works-with::db
+mysql-client-4.1: devel::lang:sql, interface::text-mode, network::client, role::program, uitoolkit::ncurses, works-with::db
+mysql-client-5.0: interface::text-mode, network::client, protocol::db:mysql, role::program, uitoolkit::ncurses, works-with::db
+mysql-client-5.1: devel::lang:sql, interface::commandline, network::client, protocol::db:mysql, role::program, works-with::db
+mysql-common: devel::lang:sql, role::app-data, special::auto-inst-parts, works-with::db
+mysql-common-4.1: devel::lang:sql, role::app-data, special::auto-inst-parts, works-with::db
+mysql-doc: devel::lang:sql, role::documentation, works-with::db
+mysql-doc-4.1: devel::lang:sql, works-with::db
+mysql-navigator: devel::lang:sql, interface::x11, network::client, role::program, uitoolkit::qt, works-with::db, x11::application
+mysql-query-browser: devel::lang:sql, interface::x11, network::client, role::program, uitoolkit::gtk, works-with::db, x11::application
+mysql-query-browser-common: devel::lang:sql, interface::x11, role::app-data, works-with::db, x11::application
+mysql-server: devel::lang:sql, interface::daemon, network::server, role::program, works-with::db
+mysql-server-4.1: devel::lang:sql, interface::daemon, protocol::db:mysql, role::dummy, role::program, special::obsolete, works-with::db
+mysql-server-5.0: interface::commandline, interface::daemon, network::server, protocol::db:mysql, role::program, uitoolkit::ncurses, works-with::db
+mysqltcl: devel::lang:sql, devel::lang:tcl, devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::m, works-with::db
+mytop: admin::monitoring, devel::lang:sql, implemented-in::perl, interface::text-mode, role::program, scope::utility, use::monitor, works-with::db
+mzscheme: devel::interpreter, devel::lang:scheme, interface::text-mode, interface::x11, role::program, scope::utility, uitoolkit::athena, uitoolkit::ncurses, x11::application
+nabi: accessibility::input, culture::korean, uitoolkit::gtk
+nag: implemented-in::php, interface::web, special::not-yet-tagged, special::not-yet-tagged::n, use::organizing
+nag2: special::not-yet-tagged, special::not-yet-tagged::n
+nagat: admin::configuring, admin::monitoring, implemented-in::php, interface::web, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n, use::configuring, use::monitor
+nagi: hardware::emulation, uitoolkit::sdl
+nagios-common: admin::monitoring, interface::daemon, role::app-data, special::not-yet-tagged, special::not-yet-tagged::n, use::monitor
+nagios-mysql: admin::monitoring, devel::lang:sql, network::server, role::program, use::monitor, works-with::db
+nagios-nrpe-doc: admin::monitoring, interface::daemon, role::documentation, special::not-yet-tagged, special::not-yet-tagged::n, use::monitor
+nagios-nrpe-plugin: admin::monitoring, role::plugin, special::not-yet-tagged, special::not-yet-tagged::n, use::monitor
+nagios-nrpe-server: admin::monitoring, interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::n, use::monitor
+nagios-pgsql: admin::monitoring, devel::lang:sql, interface::daemon, network::server, role::program, use::monitor, works-with::db
+nagios-plugins: admin::monitoring, implemented-in::c, implemented-in::perl, interface::daemon, role::plugin, use::monitor
+nagios-plugins-basic: admin::monitoring, role::plugin, use::monitor
+nagios-statd-client: admin::monitoring, network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::n, use::monitor
+nagios-statd-server: admin::monitoring, interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::n, use::monitor
+nagios-text: admin::monitoring, implemented-in::c, interface::daemon, network::server, role::program, use::monitor, works-with::logfile
+nagios2: admin::monitoring, implemented-in::c, interface::commandline, interface::daemon, protocol::http, protocol::nntp, protocol::pop3, protocol::smtp, protocol::tcp, role::program, scope::application, use::monitor
+nagios2-doc: role::documentation
+nail: interface::commandline, interface::shell, mail::imap, mail::pop, mail::smtp, mail::user-agent, network::client, protocol::imap, protocol::pop3, protocol::smtp, protocol::ssl, role::program, special::completely-tagged, use::transmission, works-with::mail
+naim: interface::text-mode, network::client, protocol::irc, protocol::oscar, role::program, special::not-yet-tagged, special::not-yet-tagged::n, uitoolkit::ncurses, use::chatting
+namazu2: implemented-in::c, implemented-in::perl, interface::web, network::server, role::program, use::searching, web::cgi
+namazu2-common: role::documentation, special::not-yet-tagged, special::not-yet-tagged::n, use::searching, web::cgi
+namazu2-index-tools: implemented-in::perl, interface::web, role::program, scope::utility, use::searching, web::cgi
+nana: devel::debugger, devel::lang:c, devel::library, implemented-in::c, role::devel-lib, role::source, suite::gnu, works-with::logfile
+nano: interface::text-mode, role::program, scope::utility, suite::gnu, uitoolkit::ncurses, use::editing, works-with::text
+nano-tiny: interface::text-mode, role::program, scope::utility, suite::gnu, use::editing, works-with::text
+nanoblogger: implemented-in::shell, interface::commandline, interface::shell, role::program, scope::utility, use::editing, use::text-formatting, web::blog, web::cms, works-with-format::html, works-with::text
+nant: devel::buildtools, implemented-in::c-sharp
+nap: interface::text-mode, network::client, role::program, uitoolkit::ncurses, use::downloading
+nas: implemented-in::c, interface::daemon, network::server, network::service, protocol::TODO, role::program, sound::mixer, sound::player, sound::recorder, special::completely-tagged, use::playing, works-with::audio
+nas-bin: implemented-in::c, network::client, protocol::TODO, role::program, scope::utility, sound::mixer, sound::player, sound::recorder, special::completely-tagged, use::playing, works-with::audio
+nas-doc: devel::doc, made-of::data:postscript, protocol::TODO, role::documentation, works-with::audio
+nase-a60: devel::interpreter, role::program, scope::utility, uitoolkit::athena
+nasm: devel::compiler, devel::machinecode, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::software:source
+nasm-mode: devel::machinecode, interface::commandline, role::plugin, role::program, scope::utility, suite::emacs, use::editing
+nast: interface::text-mode, network::scanner, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n, uitoolkit::ncurses
+nautilus: interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::browsing, use::organizing, works-with::file, x11::application
+nautilus-actions: suite::gnome, uitoolkit::gtk
+nautilus-cd-burner: hardware::storage, hardware::storage:cd, hardware::storage:dvd, interface::x11, role::plugin, suite::gnome, uitoolkit::gtk, use::storing, works-with-format::iso9660, works-with::archive, x11::application
+nautilus-data: role::app-data, special::auto-inst-parts, suite::gnome, uitoolkit::gtk, use::browsing, use::organizing, works-with::file
+nautilus-dbg: suite::gnome
+nautilus-gksu: uitoolkit::gtk
+nautilus-media: interface::x11, role::plugin, sound::player, suite::gnome, uitoolkit::gtk, use::browsing, use::playing, works-with::audio, works-with::video, x11::application
+nautilus-open-terminal: implemented-in::c, role::plugin, uitoolkit::gtk
+nautilus-sendto: interface::x11, role::plugin, suite::gnome, uitoolkit::gtk, use::compressing, use::transmission, works-with::archive, works-with::file, x11::application
+nawm: interface::commandline, interface::x11, role::program, role::shared-lib, scope::utility, x11::application, x11::window-manager
+nbd-client: admin::cluster, admin::kernel, hardware::storage, implemented-in::c, interface::commandline, network::client, network::hiavailability, network::service, role::program, special::ipv6-nosupport, use::storing
+nbd-server: hardware::storage, implemented-in::c, interface::commandline, interface::daemon, network::server, network::service, role::program
+nbsmtp: interface::commandline, interface::daemon, mail::smtp, mail::transport-agent, network::server, network::service, protocol::smtp, role::program, works-with::mail
+nbtscan: interface::commandline, network::scanner, protocol::smb, role::program, scope::utility, use::scanning
+ncbi-data: field::biology, role::app-data, special::not-yet-tagged, special::not-yet-tagged::n
+ncbi-epcr: field::biology, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n
+ncbi-epcr-data: field::biology, role::app-data, special::not-yet-tagged, special::not-yet-tagged::n
+ncbi-tools-bin: field::biology, implemented-in::c, interface::commandline, role::program, scope::utility, use::converting, use::searching
+ncbi-tools-x11: field::biology, implemented-in::c, interface::3d, interface::x11, role::program, scope::utility, uitoolkit::motif, use::searching, x11::application
+ncbi-tools6: field::biology, role::dummy, special::obsolete
+ncdt: interface::commandline, role::program, scope::utility, use::browsing, works-with-format::mp3, works-with::audio, works-with::file
+ncftp: filetransfer::ftp, interface::text-mode, network::client, protocol::ftp, role::program, scope::utility, uitoolkit::ncurses, use::downloading, works-with::file
+ncftp2: filetransfer::ftp, interface::text-mode, network::client, protocol::ftp, role::program, uitoolkit::ncurses, use::downloading, works-with::file
+ncmpc: interface::text-mode, network::client, role::program, sound::player, uitoolkit::ncurses, use::playing, works-with::audio
+nco: interface::commandline, role::program, scope::utility
+ncompress: interface::commandline, role::program, scope::utility, use::compressing
+ncpfs: admin::filesystem, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n, use::printing
+ncurses-base: devel::library, interface::text-mode, role::app-data, uitoolkit::ncurses
+ncurses-bin: admin::configuring, devel::library, interface::commandline, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses
+ncurses-hexedit: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::editing, works-with::file
+ncurses-term: devel::library, interface::text-mode, role::app-data, uitoolkit::ncurses
+nd: filetransfer::http, interface::commandline, network::client, protocol::webdav, role::program, web::cms
+ndiff: implemented-in::perl, interface::commandline, network::scanner, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n
+ndisc6: admin::monitoring, implemented-in::c, implemented-in::perl, interface::commandline, protocol::ipv6, role::program, scope::utility, use::monitor
+ndiswrapper-common: admin::hardware, hardware::special:todo, interface::commandline, network::configuration, role::program, scope::utility, use::configuring
+ndiswrapper-modules-2.6.8-2-386: admin::kernel, use::driver
+ndiswrapper-modules-2.6.8-2-686: admin::kernel, use::driver
+ndiswrapper-modules-2.6.8-2-686-smp: admin::kernel, use::driver
+ndiswrapper-modules-2.6.8-2-k7: admin::kernel, use::driver
+ndiswrapper-modules-2.6.8-2-k7-smp: admin::kernel, use::driver
+ndiswrapper-source: admin::kernel, role::source, use::driver
+ndiswrapper-utils: interface::commandline, role::program, scope::utility
+ndiswrapper-utils-1.1: admin::configuring, admin::hardware, interface::commandline, role::program, use::configuring, use::driver
+ndiswrapper-utils-1.9: admin::configuring, admin::hardware, hardware::laptop, implemented-in::c, interface::commandline, network::configuration, role::program, scope::utility, use::configuring, use::driver
+ndoc: devel::doc, implemented-in::c-sharp, interface::commandline
+ndoc-doc: role::documentation
+ndtpd: hardware::storage, hardware::storage:cd, interface::daemon, network::server, role::program, use::playing, works-with::dictionary
+ne: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::editing, works-with::text
+nec: field::electronics, hardware::hamradio, implemented-in::fortran
+nedit: interface::text-mode, interface::x11, role::program, scope::application, uitoolkit::motif, use::editing, works-with::text, x11::application
+nemesi: special::not-yet-tagged, special::not-yet-tagged::n
+nemesis: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n
+nessus: interface::x11, network::client, network::scanner, role::program, uitoolkit::gtk, x11::application
+nessus-dev: devel::library, network::scanner, role::devel-lib, x11::application
+nessus-plugins: network::scanner, role::program, scope::utility, x11::application
+nessusd: interface::daemon, network::scanner, network::server, role::program, x11::application
+nestra: hardware::emulation
+net-acct: admin::accounting, interface::daemon, network::server, protocol::ip, role::program, special::not-yet-tagged, special::not-yet-tagged::n
+net-tools: admin::configuring, interface::commandline, network::configuration, network::routing, network::vpn, protocol::ipv6, role::program, scope::utility, use::routing
+netapplet: admin::configuring, interface::x11, network::configuration, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n, suite::gnome, uitoolkit::gtk, use::configuring, x11::applet, x11::application
+netatalk: implemented-in::c, interface::daemon, network::server, network::service, role::program, works-with::file
+netbase: network::configuration, role::app-data, special::meta
+netcat: implemented-in::c, interface::commandline, protocol::ip, protocol::tcp, protocol::udp, role::program, scope::utility, use::downloading, use::transmission
+netcat6: implemented-in::c, interface::commandline, protocol::ip, protocol::ipv6, role::program, scope::utility
+netcdf-bin: implemented-in::fortran, interface::commandline, role::program, scope::utility
+netcdf-doc: made-of::data:html, made-of::data:info, made-of::data:postscript, role::documentation
+netcdf-perl: devel::lang:perl, devel::library, implemented-in::perl, role::shared-lib
+netcdfg-dev: devel::library, implemented-in::fortran, role::devel-lib
+netcdfg3: interface::commandline, role::program, scope::utility
+netdiag: admin::monitoring, interface::text-mode, network::scanner, role::program, uitoolkit::ncurses, use::monitor, works-with::network-traffic
+netdiscover: interface::commandline, network::scanner, role::program, scope::utility, use::scanning
+netdude: interface::x11, network::scanner, role::program, scope::utility, uitoolkit::gtk, use::editing, use::monitor, x11::application
+netdude-dev: interface::x11, network::scanner, role::devel-lib, uitoolkit::gtk, use::editing, use::monitor, x11::application
+netenv: hardware::laptop, interface::commandline, network::configuration, role::program, scope::utility
+nethack: game::rpg:rogue, role::dummy, special::obsolete, use::gameplaying
+nethack-common: game::rpg:rogue, role::app-data, special::auto-inst-parts, use::gameplaying
+nethack-console: game::rpg:rogue, interface::text-mode, role::program, uitoolkit::ncurses, use::gameplaying
+nethack-el: game::rpg:rogue, interface::text-mode, role::plugin, suite::emacs, use::gameplaying
+nethack-gnome: game::rpg:rogue, interface::x11, suite::gnome, uitoolkit::gtk, uitoolkit::ncurses, use::gameplaying, x11::application
+nethack-lisp: game::rpg:rogue, implemented-in::lisp, interface::text-mode, role::app-data, special::auto-inst-parts, suite::emacs, use::gameplaying
+nethack-qt: game::rpg:rogue, interface::text-mode, interface::x11, uitoolkit::ncurses, uitoolkit::qt, use::gameplaying, x11::application
+nethack-spoilers: game::rpg:rogue, made-of::data:html, role::documentation, use::gameplaying
+nethack-x11: game::rpg:rogue, interface::text-mode, interface::x11, uitoolkit::athena, uitoolkit::ncurses, use::gameplaying, x11::application
+nethogs: uitoolkit::ncurses
+netjuke: special::not-yet-tagged, special::not-yet-tagged::n
+netkit-inetd: interface::commandline, network::server, network::service, protocol::ip, role::program, special::completely-tagged, use::configuring, works-with::file
+netkit-ping: admin::benchmarking, admin::monitoring, interface::commandline, network::hiavailability, network::scanner, protocol::ip, role::program, scope::utility, special::completely-tagged, use::checking, use::monitor, use::routing
+netmask: interface::commandline, network::configuration, role::program, scope::utility
+netmaze: game::arcade, interface::3d, role::program, use::gameplaying, x11::application
+netmon-applet: admin::monitoring, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::monitor, x11::applet, x11::application
+netmrg: admin::monitoring, implemented-in::php, interface::web, special::not-yet-tagged, special::not-yet-tagged::n, works-with::db
+netpanzer: game::strategy, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+netpanzer-data: interface::x11, role::app-data, uitoolkit::sdl, x11::application
+netpbm: implemented-in::c, implemented-in::shell, interface::commandline, role::program, scope::utility, special::completely-tagged, use::converting, works-with-format::TODO, works-with-format::jpg, works-with-format::png, works-with-format::postscript, works-with::image, works-with::image:raster
+netperf: admin::benchmarking, interface::commandline, role::program, special::not-yet-tagged, special::not-yet-tagged::n, use::monitor, works-with::network-traffic
+netpipe-lam: admin::benchmarking, network::scanner, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n
+netpipe-mpich: admin::benchmarking, network::scanner, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n
+netpipe-pvm: admin::benchmarking, network::scanner, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n
+netpipe-tcp: admin::benchmarking, network::scanner, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n
+netpipes: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n
+netplan: works-with::pim
+netrik: interface::text-mode, protocol::http, uitoolkit::ncurses, use::browsing, web::browser, works-with-format::html, works-with::text
+netris: game::tetris, interface::text-mode, role::program, uitoolkit::ncurses, use::gameplaying
+netsaint-statd-plugins: admin::monitoring, implemented-in::perl, interface::daemon, role::plugin, use::monitor
+netsaint-statd-server: admin::monitoring, interface::daemon, network::server, role::program, use::monitor
+netscript-2.4: admin::configuring, admin::kernel, interface::commandline, network::configuration, network::firewall, network::routing, role::program, scope::utility, use::configuring
+netsed: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n, use::editing
+netselect: implemented-in::c, interface::commandline, network::scanner, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n, use::downloading
+netselect-apt: implemented-in::shell, interface::commandline, network::scanner, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n, suite::debian, use::downloading
+netspeed: admin::monitoring, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::monitor, x11::applet, x11::application
+netstat-nat: admin::monitoring, implemented-in::c, interface::commandline, network::firewall, role::program, scope::utility, security::firewall, use::monitor
+nettle-bin: interface::commandline, role::program, scope::utility, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::n
+nettoe: game::toys, interface::text-mode, role::program, use::gameplaying
+netwag: admin::monitoring, interface::x11, network::scanner, role::program, scope::utility, uitoolkit::tk, use::scanning, x11::application
+netwag-doc: admin::monitoring, interface::x11, network::scanner, role::documentation, uitoolkit::tk, use::scanning
+network-console-config: network::configuration, role::metapackage, special::not-yet-tagged, special::not-yet-tagged::n
+network-manager: interface::daemon, role::program
+network-manager-dev: role::devel-lib
+network-manager-gnome: interface::daemon, role::program, suite::gnome, uitoolkit::gtk
+network-manager-kde: implemented-in::c++, interface::daemon, role::program, suite::kde, uitoolkit::qt
+networkstatus: uitoolkit::qt
+netwox: admin::monitoring, interface::commandline, network::scanner, role::program, role::shared-lib, scope::utility, use::scanning
+netwox-doc: admin::monitoring, interface::commandline, network::scanner, role::documentation, use::scanning
+neutrino: interface::x11, network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::n, suite::gnome, uitoolkit::gtk, use::playing, x11::application
+neverball: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+neverdata: game::arcade, interface::x11, role::app-data, uitoolkit::sdl, use::gameplaying, x11::application
+newbiedoc: interface::web, made-of::data:html, role::documentation
+newlib-m68hc1x: hardware::embedded, special::not-yet-tagged, special::not-yet-tagged::n
+newmail: interface::commandline, mail::notification, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n, works-with::mail
+newpki-client: network::client, role::program, security::cryptography, uitoolkit::wxwindows
+newpki-server: network::server, role::program, security::cryptography
+newsbeuter: implemented-in::c++, interface::text-mode, network::client, role::program, uitoolkit::TODO, uitoolkit::ncurses, use::downloading, web::blog, works-with-format::xml, works-with-format::xml:rss, works-with::special:todo
+newsflash: interface::daemon, network::server, protocol::nntp, role::program, use::downloading
+newsgate: interface::daemon, network::server, protocol::nntp, role::program
+newspost: interface::commandline, network::client, protocol::nntp, role::program, security::integrity, use::checking
+newsx: implemented-in::c, network::client, protocol::ipv6, protocol::nntp, role::program, use::downloading
+newt-tcl: devel::lang:tcl, devel::library, interface::text-mode, role::devel-lib
+nexuiz: interface::3d, interface::x11, role::program, use::gameplaying
+nexuiz-data: role::app-data, special::auto-inst-parts
+nfs-common: admin::filesystem, interface::commandline, interface::daemon, network::client, network::server, protocol::nfs, role::program
+nfs-kernel-server: admin::kernel, interface::daemon, network::server, protocol::nfs, role::program
+nfs-user-server: interface::daemon, network::server, protocol::nfs, role::program
+nfsboot: admin::boot, interface::daemon, role::metapackage
+nfsbooted: admin::boot, role::program, scope::utility
+ng-cjk: culture::japanese, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::editing, works-with::text
+ng-cjk-canna: culture::japanese, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::editing, works-with::text
+ng-common: culture::japanese, special::auto-inst-parts, use::editing, works-with::text
+ng-latin: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::editing, works-with::text
+ng-utils: interface::commandline, role::program, scope::utility, use::searching
+nget: interface::text-mode, network::client, protocol::nntp, role::program, uitoolkit::ncurses, use::downloading
+nginx: network::service, protocol::http
+ngircd: filetransfer::dcc, implemented-in::c, interface::daemon, network::server, protocol::irc, role::program, use::chatting
+nglister: interface::commandline, network::client, protocol::nntp, role::program, use::downloading
+ngrep: interface::commandline, network::scanner, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n, use::searching
+ngs-js: devel::interpreter, devel::lang:ecmascript, interface::commandline, role::program, scope::utility, uitoolkit::ncurses
+nhc98: devel::compiler, devel::lang:haskell, interface::commandline, role::program, scope::utility, works-with::software:source
+nhc98-doc: devel::compiler, devel::lang:haskell, made-of::data:html, role::documentation
+nhfsstone: admin::benchmarking, admin::filesystem, network::client, protocol::nfs, role::program
+nice: devel::compiler, devel::lang:java, implemented-in::java, interface::commandline, role::program, scope::utility, works-with::software:source
+nickle: devel::interpreter, field::mathematics, interface::text-mode, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n, uitoolkit::ncurses
+nicotine: implemented-in::python, interface::x11, network::client, role::program, uitoolkit::gtk, use::chatting, use::downloading, use::searching, x11::application
+nictools-nopci: admin::hardware, interface::commandline, network::configuration, role::program, scope::utility, use::configuring
+nictools-pci: admin::hardware, interface::commandline, network::configuration, role::program, scope::utility, use::configuring
+nighthawk: game::arcade, interface::x11, role::program, use::gameplaying, x11::application
+nikto: implemented-in::perl, interface::commandline, network::scanner, protocol::http, protocol::ssl, role::program, scope::utility, use::scanning, web::cgi
+ninix-aya: game::toys, implemented-in::python, interface::x11, role::program, uitoolkit::gtk, use::entertaining
+ninpaths: admin::monitoring, interface::daemon, network::server, protocol::nntp, role::program
+ninvaders: game::arcade, interface::text-mode, role::program, scope::application, uitoolkit::ncurses, use::gameplaying
+nip2: role::program, scope::utility, uitoolkit::gtk, use::editing, works-with::image, works-with::image:raster, x11::application
+nis: admin::configuring, admin::user-management, interface::commandline, interface::daemon, network::client, network::server, network::service, role::program, security::authentication, special::not-yet-tagged, special::not-yet-tagged::n, use::login, use::synchronizing
+nitpic: hardware::embedded, hardware::emulation, interface::x11, role::program, scope::utility, uitoolkit::athena, x11::application
+njbtools: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n, works-with::audio
+njplot: field::biology, role::program, scope::utility, uitoolkit::motif, use::organizing
+nkf: culture::japanese, special::not-yet-tagged, special::not-yet-tagged::n
+nload: admin::monitoring, implemented-in::c, interface::text-mode, network::special:todo, role::program, scope::utility, uitoolkit::ncurses, use::monitor
+nmap: admin::monitoring, interface::commandline, network::scanner, role::program, scope::utility, use::scanning
+nmapfe: admin::monitoring, interface::x11, network::scanner, role::program, scope::utility, uitoolkit::gtk, use::scanning, x11::application
+nmh: implemented-in::c, interface::commandline, interface::text-mode, mail::imap, mail::pop, mail::smtp, mail::user-agent, network::client, protocol::imap, protocol::pop3, protocol::smtp, role::program, scope::application, uitoolkit::ncurses, works-with::mail
+nms-cookielib: implemented-in::perl, interface::web, special::not-yet-tagged, special::not-yet-tagged::n, web::cgi
+nms-countdown: implemented-in::perl, interface::web, special::not-yet-tagged, special::not-yet-tagged::n, use::timekeeping, web::cgi
+nms-ffa: implemented-in::perl, interface::web, special::not-yet-tagged, special::not-yet-tagged::n, web::cgi
+nms-formmail: implemented-in::perl, interface::web, mail::smtp, protocol::smtp, special::not-yet-tagged, special::not-yet-tagged::n, web::cgi
+nms-guestbook: implemented-in::perl, interface::web, special::not-yet-tagged, special::not-yet-tagged::n, web::cgi
+nms-rand-image: implemented-in::perl, interface::web, special::not-yet-tagged, special::not-yet-tagged::n, use::viewing, web::cgi, works-with::image
+nms-rand-link: implemented-in::perl, interface::web, special::not-yet-tagged, special::not-yet-tagged::n, web::cgi
+nms-rand-text: implemented-in::perl, interface::web, special::not-yet-tagged, special::not-yet-tagged::n, web::cgi
+nms-search: implemented-in::perl, interface::web, special::not-yet-tagged, special::not-yet-tagged::n, use::searching, web::cgi
+nms-ssi-rand-image: implemented-in::perl, interface::web, special::not-yet-tagged, special::not-yet-tagged::n, web::cgi, works-with::image
+nms-textclock: implemented-in::perl, interface::web, special::not-yet-tagged, special::not-yet-tagged::n, use::timekeeping, web::cgi
+nms-textcounter: implemented-in::perl, interface::web, special::not-yet-tagged, special::not-yet-tagged::n, web::cgi
+nmzmail: implemented-in::c, interface::text-mode, role::plugin, role::program, use::searching, works-with::mail
+nn: implemented-in::c, interface::text-mode, network::client, protocol::nntp, role::program, uitoolkit::ncurses
+nntp: interface::daemon, network::server, protocol::nntp, role::program
+no-ip: implemented-in::c, interface::commandline, interface::daemon, network::client, protocol::dns, role::program
+noatun: interface::x11, role::program, sound::player, suite::kde, uitoolkit::qt, use::playing, works-with::audio, works-with::video, x11::application
+noatun-plugins: interface::svga, interface::text-mode, interface::x11, role::plugin, sound::player, suite::kde, uitoolkit::gtk, uitoolkit::ncurses, uitoolkit::qt, uitoolkit::sdl, use::viewing, works-with::video, x11::application
+node: hardware::hamradio
+noffle: interface::daemon, network::server, protocol::nntp, role::program
+noflushd: hardware::laptop, interface::daemon, network::server, role::program
+noiz2sa: game::arcade, interface::x11, special::not-yet-tagged, special::not-yet-tagged::n, uitoolkit::sdl, x11::application
+noiz2sa-data: game::arcade, interface::x11, role::app-data, special::not-yet-tagged, special::not-yet-tagged::n, uitoolkit::sdl, x11::application
+nomarch: interface::commandline, role::program, scope::utility, use::compressing, works-with::archive
+nonlock: role::program, scope::utility, x11::applet
+normalize-audio: interface::commandline, role::program, scope::utility, use::converting, works-with-format::wav, works-with::audio
+noshell: admin::user-management, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n
+nosql: devel::lang:sql, interface::commandline, interface::daemon, network::client, network::server, role::program, works-with::db
+note: implemented-in::perl, interface::commandline, role::program, scope::utility
+notebook-gtk2: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n, suite::gnome, uitoolkit::gtk, use::organizing, works-with-format::xml, x11::application
+noteedit: field::arts, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::editing, works-with::music-notation, x11::application
+noteedit-data: field::arts, interface::x11, role::app-data, suite::kde, uitoolkit::qt, use::editing, works-with::music-notation, x11::application
+notification-daemon: uitoolkit::gtk
+notifyme: interface::commandline, role::program, scope::utility, use::monitor, works-with::people
+nowebm: devel::docsystem
+nowhere: special::not-yet-tagged, special::not-yet-tagged::n
+npadmin: hardware::printer, interface::commandline, network::client, role::program, use::checking, use::printing
+nqc: devel::compiler, hardware::embedded, interface::commandline, role::program, scope::utility, works-with::software:source
+nqxml: devel::lang:ruby, interface::commandline, role::program, scope::utility, works-with-format::xml
+nrg2iso: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n, use::converting, works-with-format::iso9660, works-with::archive
+nsca: admin::monitoring, network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::n, use::monitor
+nscd: interface::daemon, network::server, protocol::dns, role::program, special::not-yet-tagged, special::not-yet-tagged::n, suite::gnu
+nsd: interface::daemon, network::server, protocol::dns, role::program
+nsis: devel::packaging, implemented-in::c, implemented-in::c++, interface::commandline, role::program, scope::utility
+nslint: implemented-in::c, interface::commandline, protocol::dns, role::program, scope::utility, use::checking
+nslu2-utils: admin::configuring, admin::hardware, interface::commandline, scope::utility
+nsmon: interface::commandline, network::scanner, protocol::dns, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n, use::checking
+nss-updatedb: interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::n
+nstreams: interface::commandline, role::program, scope::utility, security::firewall
+nstx: interface::commandline, protocol::dns, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n, use::transmission
+nte: interface::x11, role::program, scope::utility, uitoolkit::tk, use::editing, works-with::text, x11::application
+ntfs-3g: admin::filesystem, hardware::storage, implemented-in::c, interface::commandline, interface::shell, role::program, scope::utility
+ntfsdoc: admin::filesystem, devel::doc, role::documentation
+ntfsprogs: admin::filesystem, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n, use::checking
+ntfstools: admin::filesystem, interface::commandline, role::dummy, special::not-yet-tagged, special::not-yet-tagged::n, special::obsolete, use::checking
+ntlmaps: implemented-in::python, interface::daemon, network::server, role::program, security::authentication, special::not-yet-tagged, special::not-yet-tagged::n, use::proxying
+ntop: admin::monitoring, interface::text-mode, interface::web, role::program, use::monitor, works-with::network-traffic
+ntp: admin::benchmarking, admin::configuring, interface::commandline, network::service, protocol::ip, role::program, scope::utility, use::timekeeping
+ntp-doc: admin::benchmarking, interface::daemon, made-of::data:html, role::documentation, use::timekeeping
+ntp-refclock: interface::commandline, interface::daemon, network::server, role::program
+ntp-server: admin::benchmarking, interface::commandline, interface::daemon, network::service, protocol::ip, role::metapackage, use::timekeeping
+ntp-simple: interface::commandline, interface::daemon, network::server, role::program, scope::utility
+ntpdate: admin::benchmarking, admin::configuring, interface::commandline, network::client, network::service, protocol::ip, role::program, use::timekeeping
+nttcp: special::not-yet-tagged, special::not-yet-tagged::n
+nuauth: special::not-yet-tagged, special::not-yet-tagged::n
+nuauth-extra: special::not-yet-tagged, special::not-yet-tagged::n
+nuauth-log-mysql: devel::lang:sql, special::not-yet-tagged, special::not-yet-tagged::n, works-with::db
+nuauth-log-pgsql: devel::lang:sql, special::not-yet-tagged, special::not-yet-tagged::n, works-with::db
+nuauth-utils: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n
+nufw: special::not-yet-tagged, special::not-yet-tagged::n
+nullidentd: interface::daemon, network::server, protocol::ident, role::program
+nullmailer: interface::daemon, mail::transport-agent, network::server, protocol::smtp, role::program, works-with::mail
+num-utils: implemented-in::perl, interface::commandline, role::program, scope::utility
+numerix-doc: devel::doc, devel::lang:ocaml, field::mathematics, role::documentation, special::not-yet-tagged, special::not-yet-tagged::n
+numlockx: role::program, scope::utility, x11::application
+nunit: devel::ecma-cli, devel::lang:c-sharp, devel::testing-qa, implemented-in::c-sharp, use::checking
+nut: admin::monitoring, hardware::power, hardware::power:ups, interface::daemon, network::server, role::program, scope::utility
+nut-cgi: admin::monitoring, hardware::power, hardware::power:ups, interface::web, role::plugin, role::program, scope::utility, web::cgi
+nut-dev: admin::monitoring, devel::library, hardware::power, hardware::power:ups, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::n
+nut-nutrition: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n, use::organizing, works-with::pim
+nut-snmp: admin::monitoring, hardware::power, hardware::power:ups, protocol::snmp, role::plugin, special::not-yet-tagged, special::not-yet-tagged::n
+nut-usb: admin::monitoring, hardware::power, hardware::power:ups, hardware::usb, role::plugin, special::not-yet-tagged, special::not-yet-tagged::n
+nutcpc: special::not-yet-tagged, special::not-yet-tagged::n
+nvclock: hardware::video, uitoolkit::gtk
+nvclock-gtk: uitoolkit::gtk
+nvclock-qt: uitoolkit::gtk, uitoolkit::qt
+nvi: devel::editor, interface::text-mode, role::program, uitoolkit::ncurses, use::editing, works-with::text
+nvidia-cg-toolkit: special::not-yet-tagged, special::not-yet-tagged::n
+nvidia-glx: devel::library, hardware::video, use::driver
+nvidia-glx-dev: devel::library, hardware::video, role::devel-lib
+nvidia-kernel-2.4.27-2-386: special::not-yet-tagged, special::not-yet-tagged::n
+nvidia-kernel-2.4.27-2-586tsc: special::not-yet-tagged, special::not-yet-tagged::n
+nvidia-kernel-2.4.27-2-686: special::not-yet-tagged, special::not-yet-tagged::n
+nvidia-kernel-2.4.27-2-686-smp: special::not-yet-tagged, special::not-yet-tagged::n
+nvidia-kernel-2.4.27-2-k6: special::not-yet-tagged, special::not-yet-tagged::n
+nvidia-kernel-2.4.27-2-k7: special::not-yet-tagged, special::not-yet-tagged::n
+nvidia-kernel-2.4.27-2-k7-smp: special::not-yet-tagged, special::not-yet-tagged::n
+nvidia-kernel-common: hardware::video, special::auto-inst-parts
+nvidia-kernel-source: hardware::video, role::source, use::driver
+nvidia-settings: admin::configuring, hardware::video, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::configuring, x11::application
+nvidia-xconfig: hardware::video, role::program, scope::utility, use::configuring
+nvram-wakeup: hardware::power, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n
+nvtv: hardware::video, interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+nvu: special::not-yet-tagged, special::not-yet-tagged::n, uitoolkit::gtk
+nvu-dev: special::not-yet-tagged, special::not-yet-tagged::n
+nwall: interface::text-mode, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n, uitoolkit::ncurses, use::chatting
+nwatch: admin::monitoring, implemented-in::perl, interface::commandline, network::scanner, role::program, scope::utility
+nwrite: role::program, scope::utility
+nws: admin::monitoring, network::service, special::not-yet-tagged, special::not-yet-tagged::n, use::monitor
+nxml-mode: role::plugin, special::not-yet-tagged, special::not-yet-tagged::n, suite::emacs, use::editing, works-with-format::html, works-with-format::xml, works-with::text
+nxtvepg: interface::x11, role::program, scope::utility, uitoolkit::tk, use::viewing, x11::application
+nyello: implemented-in::c++, interface::commandline, interface::shell, network::client, role::program, suite::xmms2
+nyquist: devel::interpreter, field::arts, interface::text-mode, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::n, uitoolkit::ncurses, works-with::music-notation
+o3read: implemented-in::c, interface::commandline, role::program, special::obsolete, use::converting, works-with-format::TODO, works-with-format::html, works-with-format::plaintext, works-with::spreadsheet, works-with::text, works-with::unicode
+oaf: devel::library, devel::rpc, network::client, network::server, role::program, suite::gnome, uitoolkit::gtk, works-with-format::xml
+oaklisp: devel::interpreter, devel::lang:scheme, interface::commandline, role::program, scope::utility
+obconf: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::o, uitoolkit::gtk, use::configuring, x11::application
+obexfs: admin::file-distribution, admin::filesystem, filetransfer::special:todo, hardware::special:todo, implemented-in::c, interface::commandline, protocol::TODO, role::program, scope::utility, use::downloading, use::synchronizing, use::transmission, works-with::file
+obexftp: admin::file-distribution, network::client, role::program
+obexpushd: hardware::embedded, implemented-in::c, interface::commandline, network::service, role::program, scope::utility
+obexserver: admin::file-distribution, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::o
+ocaml: devel::compiler, devel::lang:ocaml, implemented-in::ocaml, role::metapackage, works-with::software:source
+ocaml-base: devel::lang:ocaml, devel::runtime, implemented-in::ocaml, interface::x11, role::shared-lib, uitoolkit::tk, x11::application
+ocaml-base-nox: devel::lang:ocaml, devel::runtime, implemented-in::ocaml, interface::text-mode, role::shared-lib, uitoolkit::ncurses
+ocaml-book-en: devel::doc, devel::lang:ocaml, implemented-in::ocaml, role::data, role::documentation
+ocaml-book-fr: culture::french, devel::doc, devel::lang:ocaml, implemented-in::ocaml, role::data, role::documentation
+ocaml-compiler-libs: devel::compiler, devel::lang:ocaml, devel::library, implemented-in::ocaml, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::o
+ocaml-core: devel::lang:ocaml, implemented-in::ocaml, role::metapackage, special::meta
+ocaml-dbforge: devel::code-generator, devel::lang:ocaml, implemented-in::ocaml, interface::x11, uitoolkit::gtk, uitoolkit::ncurses, x11::application
+ocaml-doc: devel::doc, devel::lang:ocaml, implemented-in::ocaml, role::documentation
+ocaml-findlib: devel::lang:ocaml, implemented-in::ocaml, interface::commandline, role::program, scope::utility
+ocaml-interp: devel::interpreter, devel::lang:ocaml, devel::library, implemented-in::ocaml, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::o
+ocaml-ioxml: devel::code-generator, devel::lang:ocaml, implemented-in::ocaml, works-with-format::xml
+ocaml-libs: devel::lang:ocaml, devel::library, implemented-in::ocaml, role::metapackage, special::meta
+ocaml-mode: devel::lang:ocaml, implemented-in::lisp, role::plugin, suite::emacs, use::editing
+ocaml-native-compilers: devel::compiler, devel::lang:ocaml, implemented-in::ocaml, interface::commandline, role::program, scope::utility, uitoolkit::ncurses, works-with::software:source
+ocaml-nox: devel::lang:ocaml, implemented-in::ocaml, interface::text-mode, role::metapackage, role::program, special::not-yet-tagged, special::not-yet-tagged::o, uitoolkit::ncurses, works-with::software:source
+ocaml-omom: devel::code-generator, devel::lang:ocaml, implemented-in::ocaml, interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+ocaml-report: devel::docsystem, devel::lang:ocaml, implemented-in::ocaml, role::program, scope::utility, uitoolkit::gtk, uitoolkit::ncurses, works-with-format::xml
+ocaml-source: devel::lang:ocaml, implemented-in::ocaml, role::source
+ocaml-tools: devel::lang:ocaml, implemented-in::ocaml, interface::commandline, role::program, scope::utility
+ocaml-ulex: devel::code-generator, devel::lang:ocaml, implemented-in::ocaml, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::o
+ocaml-zoggy: devel::lang:ocaml, devel::library, devel::ui-builder, implemented-in::ocaml, role::program, scope::utility, uitoolkit::gtk
+ocamlcvs: devel::lang:ocaml, devel::rcs, implemented-in::ocaml, interface::x11, role::program, scope::utility, uitoolkit::gtk, uitoolkit::ncurses, x11::application
+ocamldsort: devel::lang:ocaml, implemented-in::ocaml, interface::commandline, role::program, scope::utility, works-with::software:source
+ocamlweb: devel::docsystem, devel::lang:ocaml, implemented-in::ocaml, interface::commandline, role::program, scope::utility, works-with-format::tex, works-with::software:source, works-with::text
+ocfs2-tools: uitoolkit::ncurses
+ocrad: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::o, suite::gnu, use::converting, works-with::image, works-with::image:raster
+octave: devel::lang:octave, field::mathematics, role::metapackage, suite::gnu
+octave-ci: devel::library, field::mathematics, role::devel-lib
+octave-epstk: devel::lang:octave, devel::library, field::mathematics, role::devel-lib, suite::gnu, works-with-format::postscript, works-with::text
+octave-forge: devel::lang:octave, devel::library, field::mathematics, role::devel-lib, suite::gnu, uitoolkit::ncurses
+octave-gpc: field::mathematics, uitoolkit::ncurses
+octave-matcompat: field::mathematics, role::dummy
+octave-plplot: devel::examples, devel::lang:octave, devel::library, field::mathematics, interface::text-mode, role::devel-lib, role::program, scope::utility, uitoolkit::ncurses
+octave-sp: devel::lang:octave, devel::library, field::mathematics, role::devel-lib, role::program, scope::utility, suite::gnu, uitoolkit::ncurses
+octave-statdataml: devel::lang:octave, devel::library, field::mathematics, role::devel-lib, works-with-format::xml
+octave2.0: devel::compiler, field::mathematics, interface::commandline, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, works-with::software:source
+octave2.0-doc: devel::doc, field::mathematics, made-of::data:postscript, role::documentation
+octave2.0-emacsen: devel::editor, field::mathematics, implemented-in::lisp, role::plugin, suite::emacs, use::editing
+octave2.0-headers: devel::library, field::mathematics, role::devel-lib
+octave2.0-htmldoc: devel::doc, field::mathematics, made-of::data:html, role::documentation
+octave2.0-info: devel::doc, field::mathematics, made-of::data:info, role::documentation
+octave2.0-staticlibs: devel::library, field::mathematics, role::devel-lib
+octave2.1: devel::interpreter, devel::lang:octave, field::mathematics, implemented-in::c++, interface::commandline, interface::text-mode, role::program, scope::utility, suite::gnu, uitoolkit::ncurses, works-with::software:source
+octave2.1-doc: devel::doc, devel::lang:octave, field::mathematics, made-of::data:pdf, role::documentation, suite::gnu
+octave2.1-emacsen: devel::editor, devel::lang:octave, field::mathematics, implemented-in::lisp, role::plugin, suite::emacs, suite::gnu, use::editing
+octave2.1-forge: devel::lang:octave, field::mathematics, implemented-in::c++, scope::utility, suite::gnu, works-with::software:source
+octave2.1-headers: devel::lang:octave, devel::library, field::mathematics, role::devel-lib, suite::gnu, uitoolkit::ncurses
+octave2.1-htmldoc: devel::doc, devel::lang:octave, field::mathematics, made-of::data:html, role::documentation, suite::gnu
+octave2.1-info: devel::doc, devel::lang:octave, field::mathematics, made-of::data:info, role::documentation, suite::gnu
+octave2.9: devel::interpreter, devel::lang:octave, field::mathematics, implemented-in::c++, interface::commandline, interface::text-mode, role::program, scope::utility, suite::gnu, uitoolkit::ncurses, works-with::software:source
+octave2.9-doc: made-of::data:pdf, role::documentation, suite::gnu
+octave2.9-emacsen: devel::lang:octave, suite::emacs, suite::gnu
+octave2.9-forge: suite::gnu, uitoolkit::ncurses
+octave2.9-headers: devel::lang:octave, suite::gnu, uitoolkit::ncurses
+octave2.9-htmldoc: role::documentation, suite::gnu, works-with::text
+octave2.9-info: made-of::data:info, role::documentation, suite::gnu
+octaviz: devel::lang:octave, field::mathematics, interface::3d, role::program, scope::utility, uitoolkit::ncurses, use::viewing
+octplot: devel::lang:octave, uitoolkit::ncurses, use::viewing
+odbc-postgresql: devel::lang:sql, interface::daemon, network::server, role::program, works-with::db
+odbcinst1: devel::lang:sql, role::program, role::shared-lib, scope::utility, special::not-yet-tagged, special::not-yet-tagged::o, works-with::db
+odbcinst1debian1: role::shared-lib, uitoolkit::qt, use::configuring, works-with::db
+odin: devel::buildtools, implemented-in::c, interface::commandline, role::program, scope::utility
+odontolinux: devel::lang:sql, implemented-in::php, interface::web, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::o, use::organizing, works-with::db
+odot: implemented-in::perl, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::organizing, use::timekeeping, x11::application
+odt2txt: implemented-in::c, interface::commandline, role::plugin, role::program, scope::utility, use::converting, works-with-format::TODO, works-with::text
+odyssey: field::electronics, hardware::embedded, implemented-in::c++, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::o, use::driver, use::storing, use::transmission
+offlineimap: implemented-in::python, interface::x11, mail::imap, protocol::imap, protocol::ssl, role::program, scope::utility, uitoolkit::tk, use::synchronizing, works-with::mail, x11::application
+oftc-hybrid: filetransfer::dcc, interface::daemon, network::server, protocol::irc, role::program, use::chatting
+oftc-hybrid-doc: role::documentation
+oftpd: filetransfer::ftp, interface::daemon, network::server, protocol::ftp, role::program, works-with::file
+ofx: field::finance, implemented-in::c, implemented-in::c++, interface::commandline, role::program, scope::utility, use::converting, use::viewing, works-with-format::special:todo
+oggfwd: implemented-in::c, interface::commandline, network::client, role::program, scope::utility, works-with-format::oggtheora, works-with-format::oggvorbis, works-with::audio, works-with::video
+oggz-tools: interface::commandline, role::program, scope::utility, use::checking, works-with-format::oggtheora, works-with-format::oggvorbis, works-with::audio, works-with::video
+ogle: hardware::storage, hardware::storage:dvd, role::program, scope::utility, use::playing, works-with::video
+ogle-gui: hardware::storage, hardware::storage:dvd, interface::x11, role::plugin, uitoolkit::gtk, use::playing, works-with::video, x11::application
+ogle-mmx: hardware::storage, hardware::storage:dvd, role::program, scope::utility, use::playing, works-with::video
+ogmtools: interface::commandline, role::program, scope::utility, use::converting, works-with-format::oggtheora, works-with-format::oggvorbis, works-with::audio, works-with::video
+ogre-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::o
+ogre-plugins-cgprogrammanager: special::not-yet-tagged, special::not-yet-tagged::o
+ogre-tools: special::not-yet-tagged, special::not-yet-tagged::o
+ohphone: protocol::voip, uitoolkit::sdl
+ohphone-basic: protocol::voip, uitoolkit::sdl
+oidentd: interface::daemon, network::server, protocol::ident, protocol::ipv6, role::program
+oinkmaster: admin::configuring, implemented-in::perl, interface::commandline, network::scanner, role::program, scope::utility, use::configuring, use::downloading, works-with::archive
+okle: hardware::storage:dvd, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::o, suite::kde, uitoolkit::qt, use::playing, works-with::video, x11::application
+okumura-clsfiles: role::app-data, special::not-yet-tagged, special::not-yet-tagged::o, works-with-format::tex, works-with::text
+oleo: interface::text-mode, interface::x11, office::spreadsheet, role::program, scope::application, suite::gnu, uitoolkit::ncurses, use::editing, works-with::spreadsheet, x11::application
+olvwm: interface::x11, role::program, x11::window-manager
+olwm: interface::x11, role::program, x11::window-manager
+om-gtk: uitoolkit::gtk
+omake: devel::buildtools, implemented-in::ocaml, uitoolkit::ncurses
+omega-rpg: game::rpg:rogue, implemented-in::c, interface::text-mode, role::program, uitoolkit::ncurses, use::gameplaying
+omnievents: interface::daemon, network::server, protocol::corba, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::o
+omniidl4: devel::compiler, protocol::corba, works-with::software:source
+omniidl4-python: devel::compiler, devel::lang:python, devel::library, protocol::corba
+omniorb4: network::client, protocol::corba, role::program
+omniorb4-doc: devel::doc, protocol::corba, role::documentation
+omniorb4-idl: devel::library, protocol::corba
+omniorb4-nameserver: interface::daemon, network::server, protocol::corba, role::program
+omt: filetransfer::ftp, implemented-in::perl, protocol::ftp, role::program, scope::utility, use::synchronizing, works-with-format::html, works-with::text
+onak: interface::daemon, network::server, role::program, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::o
+oneko: game::toys, interface::x11, role::program, use::entertaining, x11::application
+oneliner-el: implemented-in::lisp, interface::commandline, role::plugin, special::not-yet-tagged, special::not-yet-tagged::o, suite::emacs
+onlisp-code: devel::examples, devel::lang:lisp, role::data, role::documentation
+onlisp-pdf: devel::doc, devel::lang:lisp, made-of::data:pdf, role::data, role::documentation
+onlisp-ps: devel::doc, devel::lang:lisp, made-of::data:postscript, role::data, role::documentation, works-with-format::postscript, works-with::text
+oo-browser: devel::ide, interface::x11, role::plugin, role::program, scope::utility, suite::emacs, uitoolkit::athena, use::browsing, use::editing, works-with::software:source, x11::application
+oo2c: devel::compiler, interface::commandline, role::program, scope::utility, works-with::software:source
+oolite: game::rpg, game::simulation, game::strategy, interface::3d, interface::x11, x11::application
+oonsoo: game::card, interface::x11, use::gameplaying, x11::application
+ooo2dbk: implemented-in::python, interface::commandline, role::program, scope::utility, suite::openoffice, use::converting, works-with-format::docbook, works-with::dtp, works-with::text
+oooqs-kde: interface::x11, role::program, scope::utility, suite::kde, suite::openoffice, uitoolkit::qt, x11::applet, x11::application
+oops: filetransfer::ftp, interface::daemon, protocol::ftp, use::proxying
+ooqstart-gnome: interface::x11, role::program, scope::utility, suite::gnome, suite::openoffice, uitoolkit::gtk, x11::applet, x11::application
+op-panel: implemented-in::perl, interface::daemon, interface::web, protocol::voip, works-with::people
+opalmod: devel::lang:perl, implemented-in::perl, role::app-data
+open-cobol: uitoolkit::ncurses
+openacs-doc: devel::doc, implemented-in::tcl, role::documentation, web::appserver
+openafs-client: admin::filesystem, implemented-in::c, interface::commandline, interface::text-mode, network::client, protocol::kerberos, role::program, uitoolkit::ncurses, use::storing, works-with::file
+openafs-dbg: role::special:todo
+openafs-dbserver: admin::filesystem, implemented-in::c, interface::daemon, network::server, protocol::kerberos, role::program, works-with::db, works-with::file
+openafs-doc: admin::filesystem, made-of::data:html, made-of::data:pdf, role::documentation
+openafs-fileserver: admin::backup, admin::filesystem, implemented-in::c, interface::daemon, network::server, protocol::kerberos, role::program, use::storing, works-with::file
+openafs-kpasswd: implemented-in::c, interface::commandline, network::client, protocol::kerberos, role::program, security::authentication
+openafs-krb5: admin::filesystem, implemented-in::c, interface::commandline, protocol::kerberos, role::program, security::authentication
+openafs-modules-source: admin::filesystem, admin::kernel, implemented-in::c, network::client, protocol::kerberos, role::source, use::storing, works-with::file
+openalpp-cvs-doc: devel::doc, devel::library, implemented-in::c++, role::documentation, special::not-yet-tagged, special::not-yet-tagged::o
+openam: interface::daemon, network::server, protocol::voip, role::program, uitoolkit::sdl
+openarena: game::arcade, interface::3d, interface::x11, role::program, use::gameplaying
+openarena-data: game::arcade, role::app-data, use::gameplaying
+openbabel: field::chemistry, implemented-in::c++, interface::commandline, role::program, scope::utility, use::converting
+openbox: interface::x11, role::program, scope::utility, x11::window-manager
+openbox-themes: interface::x11, special::not-yet-tagged, special::not-yet-tagged::o, x11::theme, x11::window-manager
+openbsd-inetd: implemented-in::c, interface::daemon, network::server, network::service, protocol::ipv6, role::program, use::configuring
+openc++: devel::compiler, devel::lang:c++, implemented-in::c++, role::program, scope::utility, works-with::software:source
+opencity: game::simulation, interface::3d, interface::x11, role::program, use::gameplaying, x11::application
+openclipart: made-of::data:icons, role::app-data, role::metapackage, special::not-yet-tagged, special::not-yet-tagged::o
+openclipart-openoffice.org: made-of::data:font, role::app-data, special::not-yet-tagged, special::not-yet-tagged::o, suite::openoffice
+openclipart-png: made-of::data:icons, role::app-data, special::not-yet-tagged, special::not-yet-tagged::o
+openclipart-svg: made-of::data:icons, made-of::data:svg, role::app-data, special::not-yet-tagged, special::not-yet-tagged::o
+openct: hardware::embedded, special::not-yet-tagged, special::not-yet-tagged::o
+opencubicplayer: interface::commandline, interface::text-mode, interface::x11, role::program, sound::midi, sound::mixer, sound::player, uitoolkit::ncurses, use::playing, works-with-format::iso9660, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::tar, works-with-format::wav, works-with-format::zip, works-with::audio
+opencv-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::o
+opendb: devel::lang:sql, implemented-in::php, special::not-yet-tagged, special::not-yet-tagged::o, use::organizing, web::application, works-with::db
+opendchub: admin::user-management, interface::daemon, network::server, network::service, role::program, use::chatting, use::downloading, use::searching, works-with::file
+opendict: accessibility::speech, field::linguistics, implemented-in::python, interface::x11, network::client, role::program, scope::application, sound::speech, uitoolkit::gtk, uitoolkit::wxwidgets, use::browsing, use::editing, use::learning, use::searching, works-with-format::TODO, works-with::dictionary, x11::application
+opendict-plugins-lingvosoft: culture::TODO, culture::russian, field::linguistics, made-of::data:dictionary, role::app-data, use::browsing, use::checking, use::gameplaying, use::learning, use::searching
+openduke: special::not-yet-tagged, special::not-yet-tagged::o, uitoolkit::sdl
+openexr: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::o, uitoolkit::TODO, use::viewing, works-with::image, works-with::image:raster
+openggsn: network::service, special::not-yet-tagged, special::not-yet-tagged::o
+openggsn-dev: devel::library, network::service, role::devel-lib
+openh323gk: interface::daemon, protocol::voip, role::dummy, special::obsolete
+openipmi: admin::monitoring, interface::text-mode, interface::x11, protocol::ssl, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::o, uitoolkit::ncurses, x11::application
+openjade: interface::commandline, use::converting, use::editing, use::text-formatting, works-with-format::html, works-with-format::sgml, works-with-format::tex, works-with-format::xml, works-with::text
+openjade1.3: interface::commandline, use::converting, use::editing, use::text-formatting, works-with-format::html, works-with-format::sgml, works-with-format::tex, works-with-format::xml, works-with::text
+openload: devel::testing-qa, interface::commandline, network::load-balancing, protocol::http, special::not-yet-tagged, special::not-yet-tagged::o
+openmash: role::program, scope::utility, uitoolkit::tk, works-with::video
+openmcu: interface::daemon, network::server, protocol::voip, role::program, uitoolkit::sdl, works-with::audio, works-with::video
+openmosix: admin::cluster, admin::monitoring, network::load-balancing
+openmosixview: uitoolkit::qt
+openmpi-dev: devel::library, role::devel-lib
+openmsx: hardware::emulation, special::not-yet-tagged, special::not-yet-tagged::o, uitoolkit::sdl
+openmsx-catapult: hardware::emulation, special::not-yet-tagged, special::not-yet-tagged::o, uitoolkit::wxwidgets, uitoolkit::wxwindows
+opennap: interface::daemon, network::server, role::program, use::chatting, use::downloading
+openntpd: admin::configuring, interface::daemon, network::server, network::service, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::o, use::timekeeping
+openobex-apps: network::service, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::o
+openoffice.org: made-of::data:font, made-of::data:icons, role::app-data, role::shared-lib, suite::openoffice, use::editing, works-with::db, works-with::dtp, works-with::spreadsheet
+openoffice.org-base: implemented-in::c++, role::program, special::auto-inst-parts, suite::openoffice, works-with::db
+openoffice.org-bin: implemented-in::c++, interface::x11, role::shared-lib, suite::openoffice, uitoolkit::athena, use::editing, use::printing, use::typesetting, works-with::db, works-with::dtp, works-with::spreadsheet, x11::application
+openoffice.org-calc: implemented-in::c++, interface::x11, office::spreadsheet, role::program, scope::application, suite::openoffice, use::printing, works-with::spreadsheet, x11::application
+openoffice.org-common: role::app-data, suite::openoffice
+openoffice.org-core: role::shared-lib, special::auto-inst-parts, suite::openoffice
+openoffice.org-debian-files: admin::configuring, implemented-in::c++, interface::x11, role::program, scope::application, special::auto-inst-parts, suite::debian, suite::openoffice, x11::application
+openoffice.org-dev: devel::ide, interface::x11, role::devel-lib, suite::openoffice, x11::application
+openoffice.org-dev-doc: devel::doc, devel::examples, devel::lang:c++, devel::lang:java, role::documentation, suite::openoffice
+openoffice.org-draw: implemented-in::c++, interface::x11, role::program, scope::application, suite::openoffice, use::editing, use::printing, works-with-format::jpg, works-with-format::png, works-with::image, works-with::image:raster, x11::application
+openoffice.org-evolution: interface::x11, role::plugin, suite::openoffice, works-with::mail, works-with::pim, x11::application
+openoffice.org-filter-so52: implemented-in::c++, role::plugin, suite::openoffice, use::converting
+openoffice.org-gnome: suite::gnome, suite::openoffice
+openoffice.org-gtk: uitoolkit::gtk
+openoffice.org-gtk-gnome: role::plugin, suite::gnome, suite::openoffice
+openoffice.org-help-cs: culture::czech, role::documentation, suite::openoffice
+openoffice.org-help-da: culture::danish
+openoffice.org-help-de: culture::german, role::documentation, suite::openoffice
+openoffice.org-help-el: culture::greek, role::documentation, suite::openoffice
+openoffice.org-help-en: culture::TODO, role::documentation, role::dummy, special::obsolete, suite::openoffice
+openoffice.org-help-en-gb: culture::TODO, role::documentation, suite::openoffice
+openoffice.org-help-en-us: culture::TODO, role::documentation, suite::openoffice
+openoffice.org-help-es: culture::spanish, role::documentation, suite::openoffice
+openoffice.org-help-et: culture::estonian
+openoffice.org-help-fr: culture::french, role::documentation, suite::openoffice
+openoffice.org-help-hu: culture::hungarian
+openoffice.org-help-it: culture::italian, role::documentation, suite::openoffice
+openoffice.org-help-ja: culture::japanese, role::documentation, suite::openoffice
+openoffice.org-help-ko: culture::korean, role::documentation, suite::openoffice
+openoffice.org-help-nl: culture::dutch
+openoffice.org-help-pl: culture::polish
+openoffice.org-help-pt-br: culture::brazilian, role::documentation, suite::openoffice
+openoffice.org-help-ru: culture::russian
+openoffice.org-help-sl: culture::slovenian
+openoffice.org-help-sv: culture::swedish, role::documentation, suite::openoffice
+openoffice.org-help-tr: culture::turkish, role::documentation, suite::openoffice
+openoffice.org-help-zh-cn: culture::chinese, role::documentation, suite::openoffice
+openoffice.org-help-zh-tw: culture::taiwanese, role::documentation, suite::openoffice
+openoffice.org-hyphenation-da: culture::danish, role::app-data, suite::openoffice
+openoffice.org-hyphenation-de: culture::german, made-of::data:dictionary, role::app-data, suite::openoffice, use::typesetting
+openoffice.org-hyphenation-en-gb: special::not-yet-tagged, special::not-yet-tagged::o
+openoffice.org-hyphenation-en-us: special::not-yet-tagged, special::not-yet-tagged::o
+openoffice.org-hyphenation-hr: culture::croatian
+openoffice.org-hyphenation-hu: culture::hungarian, made-of::data:dictionary, role::app-data, suite::openoffice, use::typesetting
+openoffice.org-hyphenation-it: culture::italian, role::app-data, suite::openoffice
+openoffice.org-hyphenation-lt: culture::TODO, made-of::data:dictionary, role::app-data, suite::openoffice, use::typesetting
+openoffice.org-hyphenation-pl: culture::polish, made-of::data:dictionary, role::app-data, suite::openoffice, use::typesetting
+openoffice.org-hyphenation-ru: culture::russian, role::app-data, suite::openoffice
+openoffice.org-impress: implemented-in::c++, interface::x11, office::presentation, role::program, scope::application, suite::openoffice, use::editing, use::printing, works-with-format::jpg, works-with-format::png, works-with::audio, works-with::image, works-with::image:raster, works-with::text, works-with::video
+openoffice.org-java-common: implemented-in::java, role::shared-lib, special::auto-inst-parts, suite::openoffice
+openoffice.org-kde: interface::x11, role::plugin, suite::kde, suite::openoffice, uitoolkit::qt, x11::application
+openoffice.org-l10n-af: culture::afrikaans, role::app-data, suite::openoffice
+openoffice.org-l10n-ar: culture::arabic, role::app-data, suite::openoffice
+openoffice.org-l10n-be-by: culture::TODO, role::app-data, suite::openoffice
+openoffice.org-l10n-bg: culture::bulgarian, role::app-data, suite::openoffice
+openoffice.org-l10n-bn: culture::bengali, role::app-data, suite::openoffice
+openoffice.org-l10n-bs: culture::bosnian
+openoffice.org-l10n-ca: culture::catalan, role::app-data, suite::openoffice
+openoffice.org-l10n-cs: culture::czech, role::app-data, suite::openoffice
+openoffice.org-l10n-cy: culture::welsh, role::app-data, suite::openoffice
+openoffice.org-l10n-da: culture::danish, role::app-data, suite::openoffice
+openoffice.org-l10n-de: culture::german, role::app-data, suite::openoffice
+openoffice.org-l10n-el: culture::greek, role::app-data, suite::openoffice
+openoffice.org-l10n-en: role::app-data, suite::openoffice
+openoffice.org-l10n-en-gb: culture::TODO, role::app-data, suite::openoffice
+openoffice.org-l10n-en-za: culture::TODO, role::app-data, suite::openoffice
+openoffice.org-l10n-eo: culture::esperanto
+openoffice.org-l10n-es: culture::spanish, role::app-data, suite::openoffice
+openoffice.org-l10n-et: culture::estonian, role::app-data, suite::openoffice
+openoffice.org-l10n-eu: culture::basque, role::app-data, suite::openoffice
+openoffice.org-l10n-fa: culture::farsi
+openoffice.org-l10n-fi: culture::finnish, role::app-data, suite::openoffice
+openoffice.org-l10n-fr: culture::french, role::app-data, suite::openoffice
+openoffice.org-l10n-ga: culture::TODO, culture::irish, role::app-data, suite::openoffice
+openoffice.org-l10n-gl: role::app-data, suite::openoffice
+openoffice.org-l10n-gu-in: culture::TODO, role::app-data, suite::openoffice
+openoffice.org-l10n-he: culture::hebrew, role::app-data, suite::openoffice
+openoffice.org-l10n-hi: culture::hindi, role::app-data, suite::openoffice
+openoffice.org-l10n-hi-in: culture::hindi, role::app-data, suite::openoffice
+openoffice.org-l10n-hr: culture::croatian, role::app-data, suite::openoffice
+openoffice.org-l10n-hu: culture::hungarian, role::app-data, suite::openoffice
+openoffice.org-l10n-it: culture::italian, role::app-data, suite::openoffice
+openoffice.org-l10n-ja: culture::japanese, role::app-data, suite::openoffice
+openoffice.org-l10n-km: culture::TODO, role::app-data, suite::openoffice
+openoffice.org-l10n-kn: role::app-data, suite::openoffice
+openoffice.org-l10n-ko: culture::korean, role::app-data, suite::openoffice
+openoffice.org-l10n-lt: culture::TODO, role::app-data, suite::openoffice
+openoffice.org-l10n-nb: culture::bokmaal, culture::norwegian, role::app-data, suite::openoffice
+openoffice.org-l10n-nl: culture::dutch, role::app-data, suite::openoffice
+openoffice.org-l10n-nn: culture::nynorsk, role::app-data, suite::openoffice
+openoffice.org-l10n-ns: role::app-data, suite::openoffice
+openoffice.org-l10n-pa-in: culture::punjabi, role::app-data, suite::openoffice
+openoffice.org-l10n-pl: culture::polish, role::app-data, suite::openoffice
+openoffice.org-l10n-pt: culture::portuguese, role::app-data, suite::openoffice
+openoffice.org-l10n-pt-br: culture::brazilian, role::app-data, suite::openoffice
+openoffice.org-l10n-ru: culture::russian, role::app-data, suite::openoffice
+openoffice.org-l10n-rw: culture::TODO, role::app-data, suite::openoffice
+openoffice.org-l10n-sk: culture::slovak, role::app-data, suite::openoffice
+openoffice.org-l10n-sl: culture::TODO, culture::slovenian, role::app-data, suite::openoffice
+openoffice.org-l10n-sr-cs: culture::serbian, role::app-data, suite::openoffice
+openoffice.org-l10n-st: culture::TODO, role::app-data, suite::openoffice
+openoffice.org-l10n-sv: culture::swedish, role::app-data, suite::openoffice
+openoffice.org-l10n-tg: culture::tajik
+openoffice.org-l10n-th: culture::thai, role::app-data, suite::openoffice
+openoffice.org-l10n-tn: culture::TODO, role::app-data, suite::openoffice
+openoffice.org-l10n-tr: culture::turkish, role::app-data, suite::openoffice
+openoffice.org-l10n-ts: culture::TODO, role::app-data, suite::openoffice
+openoffice.org-l10n-uk: culture::ukrainian
+openoffice.org-l10n-vi: culture::TODO, role::app-data, suite::openoffice
+openoffice.org-l10n-xh: culture::TODO, role::app-data
+openoffice.org-l10n-zh-cn: culture::chinese, role::app-data, suite::openoffice
+openoffice.org-l10n-zh-tw: culture::taiwanese, role::app-data, suite::openoffice
+openoffice.org-l10n-zu: culture::TODO, role::app-data, suite::openoffice
+openoffice.org-math: field::mathematics, implemented-in::java, role::program, scope::application, suite::openoffice, use::editing
+openoffice.org-mimelnk: role::app-data, suite::kde, suite::openoffice
+openoffice.org-thesaurus-cs: culture::czech, made-of::data:dictionary, role::app-data, suite::openoffice
+openoffice.org-thesaurus-de: culture::german, made-of::data:dictionary, role::app-data, suite::openoffice
+openoffice.org-thesaurus-de-ch: culture::german, made-of::data:dictionary, role::app-data, suite::openoffice
+openoffice.org-thesaurus-en-au: culture::TODO, made-of::data:dictionary, role::app-data, suite::openoffice
+openoffice.org-thesaurus-en-us: culture::TODO, made-of::data:dictionary, role::app-data, suite::openoffice
+openoffice.org-thesaurus-it: culture::italian, made-of::data:dictionary, role::app-data, suite::openoffice
+openoffice.org-thesaurus-pl: culture::polish, made-of::data:dictionary, role::app-data, suite::openoffice
+openoffice.org-thesaurus-sk: culture::slovak
+openoffice.org-writer: implemented-in::c++, interface::x11, role::program, scope::application, suite::openoffice, use::editing, use::printing, use::text-formatting, works-with-format::jpg, works-with-format::png, works-with::image, works-with::image:raster, works-with::text, x11::application
+openrpg: game::rpg, implemented-in::python, interface::x11, network::client, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::o, uitoolkit::gtk, use::gameplaying, x11::application
+opensaml-schemas: made-of::data:xml, role::app-data, security::authentication
+opensc: hardware::embedded, role::program, scope::utility, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::o
+openscenegraph: devel::ui-builder, field::geography, special::not-yet-tagged, special::not-yet-tagged::o, works-with::3dmodel, x11::application
+openscenegraph-doc: devel::ui-builder, role::documentation, special::not-yet-tagged, special::not-yet-tagged::o, works-with::3dmodel
+opensched: office::project-management, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::o, use::organizing, works-with-format::postscript, works-with-format::tex, works-with::people, works-with::text
+openslp-doc: devel::library, role::documentation
+opensp: interface::commandline, role::program, scope::utility, use::checking, use::editing, works-with-format::sgml, works-with-format::xml, works-with::text
+openssh-client: filetransfer::sftp, implemented-in::c, interface::commandline, interface::shell, network::client, protocol::ssh, role::program, security::authentication, security::cryptography, uitoolkit::ncurses, use::login, use::transmission, works-with::file
+openssh-server: admin::login, interface::daemon, network::server, protocol::ssh, role::program, security::authentication, security::cryptography, use::login, use::transmission
+openssl: interface::commandline, protocol::ssl, role::program, scope::utility, security::cryptography, security::integrity, use::checking
+openswan: admin::kernel, role::program, scope::utility, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::o
+openswan-modules-source: admin::kernel, role::source, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::o
+opensyncutils: hardware::embedded, interface::commandline, role::program
+openthesaurus-de-kword: culture::german, made-of::data:dictionary, role::app-data, special::not-yet-tagged, special::not-yet-tagged::o
+openthesaurus-de-text: culture::german, made-of::data:dictionary, role::app-data, special::not-yet-tagged, special::not-yet-tagged::o
+openthreads-doc: devel::doc, devel::lang:c++, role::documentation, special::not-yet-tagged, special::not-yet-tagged::o
+openuniverse: field::astronomy, interface::3d, interface::commandline, role::program, scope::application, use::viewing, x11::application
+openuniverse-common: field::astronomy, interface::3d, role::app-data, special::not-yet-tagged, special::not-yet-tagged::o, x11::application
+openverse: implemented-in::tcl, interface::daemon, interface::x11, network::client, network::server, role::program, uitoolkit::tk, use::chatting, x11::application
+openvpn: interface::daemon, network::server, network::vpn, role::program, security::cryptography
+openvrml-lookat: interface::3d, protocol::http, use::browsing, use::viewing, works-with-format::vrml, works-with::3dmodel, x11::application
+openwince-include: devel::library, hardware::embedded, role::shared-lib, scope::utility, special::not-yet-tagged, special::not-yet-tagged::o
+openwince-jtag: hardware::embedded, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::o
+opie-client: role::program, scope::utility, security::cryptography, suite::opie
+opie-server: interface::daemon, network::server, role::program, security::cryptography, suite::opie
+oprofile: devel::profiler, interface::commandline, interface::x11, network::server, role::program, scope::utility, uitoolkit::qt, x11::application
+oprofile-common: interface::commandline, scope::utility, x11::application
+oprofile-gui: role::program, scope::utility, uitoolkit::qt, x11::application
+oprofile-source: role::source, special::not-yet-tagged, special::not-yet-tagged::o
+opt: devel::library, role::shared-lib
+optcomplete-common: devel::doc, implemented-in::python, role::app-data, role::documentation, special::not-yet-tagged, special::not-yet-tagged::o
+optipng: implemented-in::c, interface::commandline, role::program, scope::application, scope::utility, special::completely-tagged, use::compressing, use::converting, works-with-format::png, works-with::image, works-with::image:raster
+opustex: special::not-yet-tagged, special::not-yet-tagged::o, works-with-format::tex, works-with::music-notation, works-with::text
+orage: interface::x11, role::program, scope::utility, suite::xfce, uitoolkit::gtk, use::organizing, use::timekeeping, works-with-format::TODO, works-with::pim, x11::applet
+orange: interface::commandline, role::program, scope::utility, use::converting, works-with::archive
+orbit: devel::rpc, interface::commandline, role::program, scope::utility, suite::gnome
+orbit2: devel::rpc, interface::commandline, protocol::corba, role::program, scope::utility, suite::gnome
+orbit2-nameserver: network::server, protocol::corba, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::o
+orbital-eunuchs-sniper: game::arcade, implemented-in::c++, interface::x11, role::program, use::gameplaying
+oregano: field::electronics, suite::gnome, uitoolkit::gtk
+orgadoc: interface::commandline, role::program, scope::utility, use::searching, works-with-format::xml
+original-awk: devel::interpreter, interface::commandline, role::program, scope::utility
+oroborus: interface::x11, role::program, scope::utility, x11::window-manager
+orpheus: uitoolkit::ncurses
+orpie: field::mathematics, implemented-in::ocaml, interface::text-mode, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::o, uitoolkit::ncurses
+orville-write: interface::commandline, role::program, scope::utility
+os-prober: admin::install, implemented-in::shell, interface::commandline, role::program, scope::utility, suite::debian
+os8: special::not-yet-tagged, special::not-yet-tagged::o
+osdclock: interface::x11, role::program, scope::utility, use::timekeeping, x11::application
+osdsh: interface::x11, role::program, scope::utility, use::monitor, x11::application
+osgal-cvs-doc: devel::library, role::documentation, special::not-yet-tagged, special::not-yet-tagged::o
+osgcal-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::o
+osh: interface::shell, role::program, scope::utility, uitoolkit::ncurses
+osiris: admin::monitoring, network::service, protocol::ssl, role::program, scope::utility, security::ids, special::not-yet-tagged, special::not-yet-tagged::o, use::monitor
+osirisd: admin::monitoring, interface::daemon, network::server, network::service, protocol::ssl, role::program, security::ids, special::not-yet-tagged, special::not-yet-tagged::o, use::scanning
+osirismd: admin::configuring, admin::monitoring, interface::daemon, network::server, network::service, protocol::ssl, role::program, security::ids, special::not-yet-tagged, special::not-yet-tagged::o, use::configuring, use::monitor
+oskit: devel::library, role::devel-lib
+ospics: made-of::data:icons, role::app-data, works-with::image, works-with::image:raster
+oss-compat: admin::configuring, role::app-data, special::auto-inst-parts, works-with::audio
+oss-preserve: interface::commandline, role::program, scope::utility, sound::mixer, use::configuring
+otags: devel::lang:ocaml, implemented-in::ocaml, role::program, scope::utility
+otp: interface::commandline, role::program, scope::utility, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::o
+otrs: devel::lang:sql, interface::web, network::server, role::program, web::application, works-with::bugs, works-with::db, works-with::mail
+otrs-doc-de: culture::german, devel::lang:sql, interface::web, role::documentation, special::not-yet-tagged, special::not-yet-tagged::o, web::application, works-with::bugs, works-with::db, works-with::mail
+otrs-doc-en: culture::TODO, interface::web, role::documentation, special::not-yet-tagged, special::not-yet-tagged::o, web::application, works-with::bugs, works-with::db, works-with::mail
+otrs2-doc-de: culture::german
+otrs2-doc-en: culture::TODO, interface::web, role::documentation, web::application, works-with::bugs, works-with::dictionary, works-with::mail
+outguess: interface::commandline, role::program, scope::utility, security::cryptography, works-with-format::jpg, works-with::image, works-with::image:raster
+ov511-source: admin::kernel, hardware::camera, hardware::usb, role::source, special::not-yet-tagged, special::not-yet-tagged::o, use::driver
+overgod: game::arcade, interface::x11, role::program, scope::application, use::gameplaying, x11::application
+overgod-data: game::arcade, role::app-data, use::gameplaying
+overkill: game::arcade, implemented-in::c, interface::text-mode, role::program, use::gameplaying
+owl: devel::lang:perl, interface::text-mode, network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::o, uitoolkit::ncurses, use::chatting
+oxine: hardware::video, implemented-in::c, interface::x11, role::program, uitoolkit::xlib, use::playing, works-with::audio, works-with::video, x11::application
+p0f: interface::commandline, network::scanner, role::program, scope::utility
+p10cfgd: hardware::hamradio, interface::daemon, network::server, role::program, use::configuring
+p2c: devel::lang:pascal, interface::commandline, role::program, scope::utility, works-with::software:source
+p3nfs: admin::filesystem, use::synchronizing
+p3scan: interface::daemon, mail::pop, network::server, protocol::pop3, role::program, security::antivirus
+p4fftwgel-dev: devel::library, role::devel-lib
+p4fftwgel2: field::mathematics, role::shared-lib
+p7zip: admin::file-distribution, implemented-in::c++, interface::commandline, role::program, scope::utility, special::completely-tagged, use::compressing, works-with::archive, works-with::file
+p7zip-full: implemented-in::c, interface::commandline, role::program, scope::utility, use::compressing, works-with::archive, works-with::file
+pachi: game::arcade, game::platform, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+pachi-data: game::arcade, game::platform, role::app-data, special::auto-inst-parts, uitoolkit::sdl, use::gameplaying, x11::application
+packagesearch: admin::package-management, implemented-in::c++, interface::x11, role::program, scope::utility, suite::debian, uitoolkit::qt, use::searching, works-with::software:package, x11::application
+packit: interface::commandline, network::scanner, protocol::ethernet, protocol::ip, role::program, scope::utility
+pacman: game::arcade, interface::text-mode, interface::x11, role::program, uitoolkit::ncurses, use::gameplaying, x11::application
+padevchooser: role::program, scope::utility, uitoolkit::gtk, works-with::audio
+paintlib-dev: devel::library, implemented-in::c++, role::devel-lib, use::editing, works-with::image, works-with::image:raster
+paintlib2: implemented-in::c++, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::sdl, use::editing, works-with::image:raster
+paintlib2c2a: devel::lang:c++, implemented-in::c++, works-with::image, works-with::image:raster
+paje.app: implemented-in::objc, role::plugin, special::not-yet-tagged, special::not-yet-tagged::p, suite::gnustep, use::viewing
+paketto: interface::commandline, network::firewall, role::program, scope::utility, security::firewall, use::scanning
+pal: interface::text-mode, role::program, scope::application, uitoolkit::ncurses, use::organizing, use::timekeeping, works-with::pim
+palbart: devel::machinecode, interface::commandline, role::program, scope::utility
+palo: admin::boot, interface::commandline, role::program, scope::utility
+paman: uitoolkit::gtk
+pan: interface::x11, network::client, protocol::nntp, role::program, uitoolkit::gtk, x11::application
+panorama: special::not-yet-tagged, special::not-yet-tagged::p
+pantomime-dev: devel::lang:objc, devel::library, role::devel-lib, works-with::mail
+pantomime1: devel::lang:objc, devel::library, role::shared-lib, works-with::mail
+papaya: game::mud, network::client, role::program, uitoolkit::gtk, use::gameplaying
+paprefs: uitoolkit::gtk
+paps: interface::commandline, role::program, scope::utility, use::converting, works-with-format::postscript, works-with::image, works-with::image:vector, works-with::text, works-with::unicode
+par: interface::commandline, role::program, scope::utility, works-with::text
+par2: admin::backup, interface::commandline, role::program, scope::utility, security::integrity, works-with::archive
+parchive: admin::backup, interface::commandline, role::program, scope::utility, security::integrity, works-with::archive
+paredit-el: devel::lang:lisp, suite::emacs
+pari-doc: field::mathematics, role::documentation
+pari-extra: field::mathematics, role::app-data, role::documentation
+pari-gp: field::mathematics, role::documentation, uitoolkit::ncurses
+parmetis-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::p
+parmetis-test: special::not-yet-tagged, special::not-yet-tagged::p
+parrot-doc: role::documentation
+parsewiki: implemented-in::perl, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::docbook, works-with-format::html, works-with-format::tex, works-with::text
+parted: admin::filesystem, interface::commandline, interface::text-mode, role::program, scope::utility, suite::gnu, uitoolkit::ncurses
+parted-doc: admin::filesystem, interface::text-mode, role::documentation, suite::gnu, uitoolkit::ncurses
+partimage: admin::backup, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, works-with::archive
+partimage-doc: admin::backup, admin::filesystem, role::documentation, use::compressing, use::storing
+partimage-server: admin::backup, interface::commandline, protocol::ssl, role::program, use::transmission
+partlibrary: field::electronics, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+pas2html: devel::lang:pascal, devel::prettyprint, role::program, scope::utility, web::cgi, works-with-format::html, works-with::software:source, works-with::text
+pasmo: devel::machinecode, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p
+passepartout: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::gtk, use::typesetting, works-with-format::postscript, works-with-format::xml, works-with::image, works-with::image:raster, works-with::image:vector, works-with::text, x11::application
+passivetex: special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::tex, works-with::text
+passwd: admin::user-management, implemented-in::c, interface::commandline, role::program, security::authentication
+paste-common: devel::lang:python, devel::library, implemented-in::python, role::devel-lib, role::shared-lib
+patch: devel::rcs, implemented-in::c, interface::commandline, role::program, scope::utility, use::editing, use::synchronizing, works-with-format::plaintext, works-with::software:source, works-with::text
+patchage: uitoolkit::gtk
+patcher: devel::rcs, implemented-in::perl, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, use::synchronizing, works-with::text
+patchutils: devel::rcs, implemented-in::c, implemented-in::perl, interface::commandline, role::program, scope::utility, use::synchronizing, works-with::text
+pathogen: game::puzzle, interface::x11, role::program, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::sdl, use::gameplaying, x11::application
+pathological: game::puzzle, implemented-in::python, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+pathological-music: game::puzzle, interface::x11, role::app-data, special::auto-inst-parts, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::sdl, x11::application
+paul: interface::x11, role::program, scope::application, uitoolkit::gtk, use::viewing, works-with::image, works-with::image:raster, x11::application
+paul-doc: culture::german, interface::x11, role::documentation, uitoolkit::gtk, use::viewing, works-with::image, works-with::image:raster, x11::application
+pavucontrol: interface::x11, role::program, scope::utility, sound::mixer, uitoolkit::gtk
+pavuk: interface::commandline, interface::x11, network::client, protocol::ftp, protocol::http, role::program, uitoolkit::gtk, use::downloading, x11::application
+pavumeter: uitoolkit::gtk
+paw: field::physics, implemented-in::fortran, interface::x11, role::program, scope::utility, use::viewing, x11::application
+paw++: field::physics, implemented-in::fortran, interface::x11, role::program, scope::utility, uitoolkit::motif, use::viewing, x11::application
+paw++-static: field::physics, implemented-in::fortran, interface::x11, scope::utility, special::obsolete, uitoolkit::motif, use::viewing, x11::application
+paw-common: field::physics, interface::x11, role::app-data, use::viewing, x11::application
+paw-demos: devel::examples, devel::testing-qa, field::physics, interface::x11, x11::application
+paw-static: field::physics, interface::x11, role::dummy, scope::utility, special::obsolete, use::viewing, x11::application
+pawserv: admin::file-distribution, field::physics, implemented-in::fortran, interface::daemon, network::server, role::program, use::downloading
+pax: admin::backup, interface::commandline, role::program, scope::utility, use::converting, use::storing, works-with::archive
+pax-utils: devel::machinecode, implemented-in::c, interface::commandline, role::program, scope::utility, security::special:not-yet-tagged, works-with-format::TODO, works-with::software:running
+paxctl: admin::kernel, admin::user-management, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p
+paxtest: admin::kernel, admin::user-management, devel::testing-qa, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p
+pbbuttonsd: admin::hardware, admin::power-management, hardware::laptop, implemented-in::c, interface::daemon, role::program
+pbbuttonsd-dev: hardware::laptop, implemented-in::c, role::devel-lib
+pbox-tex: special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::tex, works-with::text
+pbuilder: devel::packaging, interface::commandline, role::program, scope::utility, suite::debian, works-with::software:source
+pbzip2: hardware::TODO, implemented-in::c++, interface::commandline, role::program, scope::utility, use::compressing, works-with::archive, works-with::file
+pc532down: admin::hardware, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, use::downloading
+pcal: interface::commandline, role::program, scope::utility, use::organizing, use::timekeeping, works-with-format::postscript, works-with::pim, works-with::text
+pcb: field::electronics, interface::x11, role::program, scope::utility, uitoolkit::athena, uitoolkit::gtk, use::editing, x11::application
+pccts: devel::code-generator, role::program, scope::utility
+pcd2html: culture::german, interface::commandline, role::program, scope::utility, use::converting, use::organizing, works-with-format::html, works-with::image, works-with::image:raster, works-with::text
+pcf2bdf: interface::commandline, role::program, scope::utility, use::converting, works-with::font
+pciutils: admin::configuring, admin::hardware, hardware::detection, interface::commandline, role::program, scope::utility
+pciutils-dev: admin::configuring, admin::hardware, hardware::detection, role::devel-lib, use::configuring
+pclock: implemented-in::c, interface::x11, role::program, scope::utility, suite::gnustep, uitoolkit::xlib, use::timekeeping, x11::applet, x11::application
+pcmanfm: interface::x11, role::program, scope::application, uitoolkit::gtk, use::browsing, use::organizing, works-with::file, x11::application
+pcmanfm-nohal: uitoolkit::gtk
+pcmanx-gtk2: uitoolkit::gtk
+pcmcia-cs: hardware::detection, hardware::laptop, implemented-in::c, interface::daemon, network::server, role::program
+pcmcia-modules-2.4.26-1-386: special::not-yet-tagged, special::not-yet-tagged::p
+pcmcia-modules-2.4.26-1-586tsc: special::not-yet-tagged, special::not-yet-tagged::p
+pcmcia-modules-2.4.26-1-686: special::not-yet-tagged, special::not-yet-tagged::p
+pcmcia-modules-2.4.26-1-686-smp: special::not-yet-tagged, special::not-yet-tagged::p
+pcmcia-modules-2.4.26-1-k6: special::not-yet-tagged, special::not-yet-tagged::p
+pcmcia-modules-2.4.26-1-k7: special::not-yet-tagged, special::not-yet-tagged::p
+pcmcia-modules-2.4.26-1-k7-smp: special::not-yet-tagged, special::not-yet-tagged::p
+pcmcia-modules-2.4.27-2-386: admin::kernel, hardware::laptop, special::not-yet-tagged, special::not-yet-tagged::p
+pcmcia-modules-2.4.27-2-586tsc: admin::kernel, hardware::laptop, special::not-yet-tagged, special::not-yet-tagged::p
+pcmcia-modules-2.4.27-2-686: admin::kernel, hardware::laptop, special::not-yet-tagged, special::not-yet-tagged::p
+pcmcia-modules-2.4.27-2-686-smp: admin::kernel, hardware::laptop, special::not-yet-tagged, special::not-yet-tagged::p
+pcmcia-modules-2.4.27-2-k6: admin::kernel, hardware::laptop, special::not-yet-tagged, special::not-yet-tagged::p
+pcmcia-modules-2.4.27-2-k7: admin::kernel, hardware::laptop, special::not-yet-tagged, special::not-yet-tagged::p
+pcmcia-modules-2.4.27-2-k7-smp: admin::kernel, hardware::laptop, special::not-yet-tagged, special::not-yet-tagged::p
+pcmcia-source: admin::kernel, hardware::laptop, role::source, use::driver
+pcmciautils: admin::hardware, hardware::detection, hardware::laptop, implemented-in::c, interface::daemon, role::program, use::driver
+pconf-detect: hardware::detection, hardware::printer, interface::commandline, role::program, scope::utility, use::printing
+pconsole: admin::cluster, admin::login, interface::shell, role::program, scope::utility, use::login
+pcproxy: special::not-yet-tagged, special::not-yet-tagged::p, use::proxying
+pcrd: hardware::hamradio, interface::commandline, interface::daemon, role::program, scope::utility
+pcregrep: implemented-in::c, interface::commandline, role::program, scope::utility, special::completely-tagged, use::searching, works-with::text
+pcsc-tools: hardware::detection, interface::x11, role::program, scope::utility, security::cryptography, uitoolkit::gtk, x11::application
+pcscd: interface::daemon, network::server, role::program, security::cryptography
+pcsx: hardware::emulation, role::dummy, special::meta, use::entertaining, use::gameplaying
+pcsx-bin: hardware::emulation, role::program, uitoolkit::gtk, use::entertaining, use::gameplaying
+pcsx-i18n: culture::special:not-yet-tagged, hardware::emulation, role::app-data, use::TODO
+pd-externals: role::plugin, special::not-yet-tagged, special::not-yet-tagged::p
+pd-pdp: interface::x11, role::plugin, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::sdl, works-with::video, x11::application
+pd-zexy: role::plugin, special::not-yet-tagged, special::not-yet-tagged::p
+pdbv: implemented-in::perl, interface::web, network::server, role::program, suite::debian, use::browsing, works-with-format::html, works-with::text
+pdfcrack: implemented-in::c, interface::commandline, role::program, scope::utility, security::cryptography, works-with-format::pdf, works-with::file
+pdfcube: interface::x11, role::program, scope::application, use::viewing, works-with-format::pdf, x11::application
+pdfedit: role::program, use::editing, works-with-format::pdf, works-with::text
+pdfjam: implemented-in::shell, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, use::converting, works-with-format::pdf, works-with::text
+pdfkit.framework: interface::x11, role::plugin, special::not-yet-tagged, special::not-yet-tagged::p, suite::gnustep, use::viewing, works-with-format::pdf, works-with::text, x11::application
+pdfscreen: interface::commandline, role::program, scope::utility, use::converting, works-with-format::pdf, works-with-format::tex, works-with::text
+pdftk: implemented-in::c++, implemented-in::java, interface::commandline, role::program, scope::utility, security::cryptography, use::converting, works-with-format::pdf, works-with::text
+pdftohtml: interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with-format::pdf, works-with::text
+pdftoipe: implemented-in::c++, interface::commandline, role::program, scope::utility, uitoolkit::qt, use::converting, works-with-format::pdf, works-with-format::xml, works-with::text
+pdksh: implemented-in::c, interface::shell, role::program, scope::utility
+pdl: devel::lang:perl, devel::library, field::mathematics, implemented-in::fortran, implemented-in::perl, interface::commandline, interface::shell, role::devel-lib, role::program, scope::utility
+pdmenu: interface::shell, interface::text-mode, role::program, scope::utility, suite::debian, uitoolkit::ncurses, use::browsing
+pdns: interface::daemon, protocol::dns, role::metapackage
+pdns-backend-geo: interface::daemon, network::server, network::service, protocol::dns, role::program, works-with::db
+pdns-backend-ldap: interface::daemon, network::server, network::service, protocol::dns, protocol::ldap, role::program, works-with::db
+pdns-backend-mysql: devel::lang:sql, interface::daemon, network::server, network::service, protocol::dns, role::program, works-with::db
+pdns-backend-pgsql: devel::lang:sql, interface::daemon, network::server, network::service, protocol::dns, role::program, works-with::db
+pdns-backend-pipe: interface::daemon, network::server, network::service, protocol::dns, role::program
+pdns-backend-sqlite: devel::lang:sql, interface::daemon, network::server, network::service, protocol::dns, role::program, works-with::db
+pdns-doc: interface::daemon, made-of::data:html, network::service, protocol::dns, role::documentation
+pdns-recursor: interface::daemon, network::server, network::service, protocol::dns, role::program
+pdns-server: interface::daemon, network::server, network::service, protocol::dns, role::program
+pdnsd: interface::daemon, network::server, network::service, protocol::dns, protocol::ipv6, role::program, use::proxying
+pdp1-lisp: devel::interpreter, devel::lang:lisp, hardware::emulation, use::converting
+pdsh: admin::cluster, admin::file-distribution, implemented-in::c, interface::shell, network::client, role::program
+pdumpfs: admin::backup, implemented-in::ruby, interface::commandline, role::program, scope::utility, use::storing
+peacock: interface::x11, special::not-yet-tagged, special::not-yet-tagged::p, suite::gnome, uitoolkit::gtk, use::editing, works-with-format::html, works-with::text, x11::application
+pearpc: hardware::emulation, interface::x11, role::program, scope::utility, uitoolkit::sdl, x11::application
+pen: network::load-balancing, special::not-yet-tagged, special::not-yet-tagged::p
+pencam: hardware::camera, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, use::downloading, works-with::image
+penggy: hardware::modem, network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::p
+penguin-command: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+pennmush: game::mud, network::server, protocol::ssl, role::program, use::gameplaying
+pennmush-common: game::mud, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+pennmush-i18n: culture::dutch, culture::french, culture::hungarian, culture::norwegian, culture::spanish, culture::swedish, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+pennmush-mysql: devel::lang:sql, game::mud, network::server, role::program, use::gameplaying, works-with::db
+pentanet-dev: devel::library, role::devel-lib, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p
+pentanet-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::p
+pentanet-utils: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::ncurses
+pente: game::board, interface::commandline, interface::text-mode, interface::x11, role::program, uitoolkit::ncurses, use::gameplaying, x11::application
+pentium-builder: admin::configuring, devel::packaging, role::plugin, suite::debian, use::configuring
+perdition: interface::daemon, mail::imap, mail::pop, network::server, protocol::imap, protocol::pop3, protocol::ssl, role::program, use::proxying, works-with::mail
+perdition-dev: devel::library, interface::daemon, mail::imap, mail::pop, protocol::imap, protocol::pop3, role::devel-lib, use::proxying, works-with::mail
+perdition-ldap: mail::pop, protocol::ldap, protocol::pop3, protocol::ssl, role::shared-lib, use::proxying, works-with::db, works-with::mail
+perdition-mysql: devel::lang:sql, mail::pop, protocol::pop3, protocol::ssl, role::shared-lib, use::proxying, works-with::db, works-with::mail
+perdition-odbc: mail::pop, protocol::pop3, protocol::ssl, role::shared-lib, use::proxying, works-with::db, works-with::mail
+perdition-postgresql: devel::lang:sql, mail::pop, protocol::pop3, protocol::ssl, role::shared-lib, use::proxying, works-with::db, works-with::mail
+perforate: interface::commandline, role::program, scope::utility, works-with::file
+perl: devel::interpreter, devel::lang:perl, implemented-in::perl, interface::commandline, role::program, role::shared-lib, scope::utility
+perl-5.004: devel::interpreter
+perl-5.004-base: devel::interpreter
+perl-5.004-debug: devel::interpreter
+perl-5.004-doc: devel::doc, devel::interpreter
+perl-5.004-suid: devel::interpreter
+perl-5.005: devel::interpreter
+perl-5.005-base: devel::interpreter
+perl-5.005-debug: devel::interpreter
+perl-5.005-doc: devel::doc, devel::interpreter
+perl-5.005-suid: devel::interpreter
+perl-5.6: devel::interpreter
+perl-5.6-base: devel::interpreter
+perl-5.6-debug: devel::interpreter
+perl-5.6-doc: devel::doc, devel::interpreter
+perl-5.6-suid: devel::interpreter
+perl-base: devel::interpreter, devel::lang:perl, implemented-in::perl, role::shared-lib
+perl-byacc: devel::code-generator, devel::lang:perl, implemented-in::perl, interface::commandline, role::program, scope::utility, works-with::software:source
+perl-debug: devel::debugger, devel::interpreter, devel::lang:perl, implemented-in::perl, interface::commandline, role::program, scope::utility
+perl-doc: devel::doc, devel::lang:perl, implemented-in::perl, role::documentation
+perl-mapscript: devel::lang:perl, field::geography, implemented-in::perl, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+perl-modules: devel::lang:perl, implemented-in::perl, role::shared-lib, special::auto-inst-parts
+perl-suid: admin::user-management, devel::lang:perl, implemented-in::perl, interface::commandline, role::program, scope::utility
+perl-tk: devel::interpreter, devel::lang:perl, implemented-in::perl, interface::x11, role::app-data, role::shared-lib, uitoolkit::tk, x11::application
+perl2html: devel::lang:perl, devel::prettyprint, interface::commandline, interface::web, role::program, scope::utility, use::printing, web::cgi, works-with-format::html, works-with::software:source, works-with::text
+perlindex: devel::doc, implemented-in::perl, interface::commandline, role::program, scope::utility, use::searching, works-with-format::man, works-with::text
+perlmagick: devel::lang:perl, implemented-in::perl, role::app-data, role::shared-lib, works-with::image, works-with::image:raster
+perlpanel: implemented-in::perl, interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::applet, x11::application
+perlprimer: field::biology, implemented-in::perl, interface::x11, network::client, role::program, scope::utility, uitoolkit::tk, use::special:todo, works-with-format::plaintext, works-with::special:todo, x11::application
+perlprimer-doc: field::biology, made-of::data:html, role::documentation
+perlsgml: devel::lang:perl, implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, works-with-format::sgml, works-with-format::xml, works-with::text
+perltidy: devel::lang:perl, devel::prettyprint, implemented-in::perl, interface::commandline, role::program, scope::utility, use::printing, works-with-format::html, works-with::software:source, works-with::text
+perspic: interface::x11, role::program, scope::utility, uitoolkit::gtk, use::searching, works-with::text, x11::application
+perspic-texts: role::data
+pessulus: suite::gnome
+petris: game::tetris, interface::text-mode, role::program, uitoolkit::ncurses, use::gameplaying
+petsc-dbg: devel::library, role::metapackage
+petsc-dev: devel::library, role::dummy, role::metapackage
+petsc2.2.0-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::p
+pfaedit: interface::x11, role::dummy, special::obsolete, use::editing, works-with::font, x11::application
+pfb2t1c2pfb: role::program, use::compressing, use::converting, works-with::font
+pfe: devel::interpreter, uitoolkit::ncurses
+pfe-dev: devel::library, role::devel-lib
+pfe-doc: devel::doc, devel::interpreter, made-of::data:html, made-of::data:pdf, role::documentation
+pflogsumm: admin::monitoring, implemented-in::perl, security::log-analyzer, special::not-yet-tagged, special::not-yet-tagged::p, use::monitor, works-with::logfile
+pforth: devel::interpreter, interface::commandline, role::program, scope::utility
+pfqueue: uitoolkit::ncurses
+pftp: filetransfer::ftp, interface::shell, network::client, protocol::ftp, role::program, use::downloading, works-with::file
+pgaccess: devel::lang:sql, interface::x11, role::program, scope::utility, uitoolkit::tk, works-with::db, x11::application
+pgadmin3: devel::lang:sql, special::invalid-tag, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::gtk, uitoolkit::wxwidgets, uitoolkit::wxwindows, works-with::db
+pgadmin3-data: role::app-data, role::documentation, uitoolkit::gtk
+pgagent: uitoolkit::wxwindows
+pgapack: field::mathematics
+pgdocs-pdf: devel::lang:sql, made-of::data:pdf, role::data, role::documentation, use::printing, works-with::db
+pgdocs-pdf-a4: devel::lang:sql, made-of::data:pdf, role::data, role::documentation, use::printing, works-with::db
+pgf: made-of::data:tex, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::tex, works-with::image, works-with::image:vector, works-with::text
+pgmonitor: admin::monitoring, devel::lang:sql, interface::x11, role::program, scope::utility, uitoolkit::tk, use::monitor, works-with::db, x11::application
+pgn-extract: game::board, game::board:chess, interface::commandline, role::program, scope::utility, use::searching
+pgp4pine: security::cryptography, works-with::mail
+pgpdump: interface::commandline, role::program, scope::utility, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::p, use::viewing
+pgperl: special::not-yet-tagged, special::not-yet-tagged::p
+pgpgpg: interface::commandline, role::program, scope::utility, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::p, use::converting
+pgplot5: devel::library, field::mathematics, role::devel-lib, role::shared-lib
+pgpool: devel::lang:sql, interface::daemon, network::load-balancing, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::p, use::proxying, works-with::db
+pgrep: interface::commandline, role::dummy, special::obsolete, use::searching, works-with::text
+phalanx: game::board, game::board:chess, role::program, use::gameplaying
+phaseshift: hardware::hamradio, interface::x11, uitoolkit::qt, x11::application
+photon: implemented-in::python, interface::commandline, role::program, scope::utility
+photopc: hardware::camera, interface::commandline, role::program, scope::utility, use::configuring, use::downloading, works-with::image, works-with::image:raster
+photoprint: hardware::printer, uitoolkit::gtk
+phototk: hardware::camera, interface::x11, role::program, scope::utility, uitoolkit::tk, use::configuring, use::downloading, works-with::image:raster, x11::application
+php-auth: devel::lang:php, devel::library, implemented-in::php, security::authentication, special::not-yet-tagged, special::not-yet-tagged::p
+php-cgiwrap: devel::lang:php, implemented-in::php, interface::web, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, web::cgi
+php-clamav: special::not-yet-tagged, special::not-yet-tagged::p
+php-date: devel::lang:php, devel::library, implemented-in::php, special::not-yet-tagged, special::not-yet-tagged::p, use::timekeeping
+php-elisp: devel::lang:php, devel::prettyprint, implemented-in::lisp, role::plugin, suite::emacs, use::editing
+php-file: devel::lang:php, devel::library, implemented-in::php, special::not-yet-tagged, special::not-yet-tagged::p, works-with::file
+php-fpdf: devel::lang:php, devel::library, implemented-in::php, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::pdf, works-with::text
+php-html-template-it: culture::italian, devel::lang:php, devel::library, implemented-in::php, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::html, works-with::text
+php-http-request: filetransfer::http, implemented-in::php, network::client, protocol::http, role::shared-lib
+php-imlib: devel::lang:php, devel::library, implemented-in::php, works-with::image, works-with::image:raster
+php-mail-mime: devel::lang:php, devel::library, implemented-in::php, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::special:todo, works-with::mail
+php-net-url: implemented-in::php, role::shared-lib, works-with-format::special:todo
+php-pear: devel::lang:php, implemented-in::php, role::shared-lib
+php-radius: devel::lang:php, devel::library, implemented-in::php, protocol::radius, security::authentication, special::not-yet-tagged, special::not-yet-tagged::p
+php-soap: devel::lang:php, protocol::soap
+php3: devel::interpreter, devel::lang:php, implemented-in::php, web::scripting
+php3-cgi: devel::interpreter, devel::lang:php, implemented-in::php, web::cgi, web::scripting
+php3-cgi-gd: devel::lang:php, devel::library, implemented-in::php, web::cgi
+php3-cgi-imap: devel::lang:php, devel::library, implemented-in::php, mail::imap, protocol::imap, web::cgi
+php3-cgi-ldap: devel::lang:php, devel::library, implemented-in::php, protocol::ldap, web::cgi, works-with::db
+php3-cgi-magick: devel::lang:php, devel::library, implemented-in::php, use::converting, web::cgi, works-with::image:raster
+php3-cgi-mhash: devel::lang:php, devel::library, implemented-in::php, security::integrity, web::cgi
+php3-cgi-mysql: devel::lang:php, devel::lang:sql, devel::library, implemented-in::php, web::cgi, works-with::db
+php3-cgi-pgsql: devel::lang:php, devel::lang:sql, devel::library, implemented-in::php, special::not-yet-tagged, special::not-yet-tagged::p, web::cgi, works-with::db
+php3-cgi-snmp: devel::lang:php, devel::library, implemented-in::php, web::cgi
+php3-cgi-xml: devel::lang:php, devel::library, implemented-in::php, web::cgi, works-with-format::xml
+php3-dev: devel::lang:php, devel::library, implemented-in::php, role::devel-lib
+php3-doc: devel::doc, devel::lang:php, made-of::data:html, role::documentation
+php3-gd: devel::lang:php, devel::library, implemented-in::php
+php3-imap: devel::lang:php, devel::library, implemented-in::php, mail::imap, protocol::imap
+php3-ldap: devel::lang:php, devel::library, implemented-in::php, protocol::ldap, works-with::db
+php3-magick: devel::lang:php, devel::library, implemented-in::php, use::converting, works-with::image:raster
+php3-mhash: devel::lang:php, devel::library, implemented-in::php, security::integrity
+php3-mysql: devel::lang:php, devel::lang:sql, devel::library, implemented-in::php, works-with::db
+php3-pgsql: devel::lang:php, devel::lang:sql, devel::library, implemented-in::php, works-with::db
+php3-snmp: devel::lang:php, devel::library, implemented-in::php
+php3-xml: devel::lang:php, devel::library, implemented-in::php, works-with-format::xml
+php4: devel::interpreter, devel::lang:php, implemented-in::php, web::scripting
+php4-apd: devel::debugger, devel::lang:php, devel::library, devel::profiler, implemented-in::php
+php4-auth-pam: devel::lang:php, devel::library, implemented-in::php, security::authentication, special::not-yet-tagged, special::not-yet-tagged::p
+php4-cgi: devel::interpreter, devel::lang:php, implemented-in::php, web::cgi
+php4-cli: devel::interpreter, devel::lang:php, implemented-in::c, implemented-in::php, interface::commandline, role::program, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::ncurses
+php4-common: devel::examples, devel::lang:php, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+php4-curl: devel::lang:php, devel::library, implemented-in::php, protocol::ftp, protocol::http, use::downloading
+php4-dbtcp: devel::lang:php, devel::library, implemented-in::php, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+php4-dev: devel::lang:php, devel::library, implemented-in::php, role::devel-lib
+php4-domxml: devel::lang:php, devel::library, implemented-in::php, works-with-format::xml
+php4-gd: devel::lang:php, devel::library, implemented-in::php
+php4-gpib: devel::lang:php, devel::library, implemented-in::php, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+php4-idn: devel::lang:php, devel::library, implemented-in::php, special::not-yet-tagged, special::not-yet-tagged::p
+php4-imagick: devel::lang:php, devel::library, implemented-in::php, use::converting, works-with::image, works-with::image:raster
+php4-imap: devel::lang:php, devel::library, implemented-in::php, mail::imap, protocol::imap
+php4-interbase: devel::lang:php, devel::library, implemented-in::php, web::scripting, works-with::db
+php4-kadm5: admin::user-management, devel::lang:php, devel::library, implemented-in::c, implemented-in::php, network::client, protocol::kerberos, role::devel-lib, role::shared-lib, security::authentication
+php4-lasso: special::not-yet-tagged, special::not-yet-tagged::p
+php4-ldap: devel::lang:php, devel::library, implemented-in::php, protocol::ldap, works-with::db
+php4-mapscript: role::devel-lib
+php4-maxdb: devel::lang:php, devel::lang:sql, devel::library, implemented-in::php, works-with::db
+php4-mcal: devel::lang:php, devel::library, implemented-in::php, use::timekeeping
+php4-mcrypt: devel::lang:php, devel::library, implemented-in::php, security::cryptography
+php4-mhash: devel::lang:php, devel::library, implemented-in::php, security::integrity
+php4-mysql: devel::lang:php, devel::lang:sql, devel::library, implemented-in::php, works-with::db
+php4-odbc: devel::lang:php, devel::library, implemented-in::php, works-with::db
+php4-pear: devel::lang:php, devel::library, implemented-in::php, role::dummy, special::obsolete
+php4-pear-log: admin::logging, devel::lang:php, devel::library, implemented-in::php, works-with::logfile
+php4-pgsql: devel::lang:php, devel::lang:sql, devel::library, implemented-in::php, works-with::db
+php4-ps: devel::lang:php, devel::library, implemented-in::php, works-with-format::postscript, works-with::text
+php4-recode: devel::lang:php, devel::library, implemented-in::php, works-with::text
+php4-rrdtool: devel::lang:php, devel::library, implemented-in::php, works-with::db
+php4-snmp: devel::lang:php, devel::library, implemented-in::php, protocol::snmp, role::shared-lib
+php4-spplus: special::not-yet-tagged, special::not-yet-tagged::p
+php4-sqlite: devel::lang:php, devel::lang:sql, devel::library, implemented-in::php, works-with::db
+php4-sqlrelay: devel::lang:php, devel::lang:sql, devel::library, implemented-in::php, works-with::db
+php4-sybase: devel::lang:php, devel::lang:sql, devel::library, implemented-in::php, works-with::db
+php4-syck: devel::lang:php, devel::library, implemented-in::php
+php4-tclink: devel::lang:php, devel::library, implemented-in::php, security::authentication
+php4-vpopmail: special::not-yet-tagged, special::not-yet-tagged::p
+php4-xapian: devel::lang:php, implemented-in::c++, use::searching, web::search-engine, works-with::text
+php4-xslt: devel::lang:php, devel::library, works-with-format::xml:xslt
+php5: network::server, works-with::file
+php5-cgi: devel::lang:php, implemented-in::c, role::program, web::cgi, web::scripting
+php5-cli: devel::interpreter, devel::lang:php, implemented-in::c, interface::commandline, role::program
+php5-common: devel::lang:php
+php5-dev: devel::lang:php, role::devel-lib
+php5-gd: devel::lang:php, implemented-in::php, role::shared-lib, works-with::image
+php5-snmp: devel::lang:php, implemented-in::php, protocol::snmp, role::shared-lib
+php5-xapian: devel::lang:php, implemented-in::c++, use::searching, web::search-engine, works-with::text
+php5-xmlrpc: protocol::xmlrpc
+php5-xsl: devel::lang:php, devel::library, works-with-format::xml:xslt
+phpbb2: devel::lang:sql, implemented-in::php, interface::web, role::program, web::application, works-with::db
+phpbb2-conf-mysql: implemented-in::php, interface::web, protocol::db:mysql, use::configuring, works-with::db
+phpbb2-languages: implemented-in::php, interface::web, made-of::special:todo, role::TODO
+phpdoc: devel::lang:php
+phpgedview: field::genealogy, implemented-in::php, interface::web, made-of::data:html, role::program, scope::application, use::editing, use::organizing, use::searching, web::application, works-with::db, works-with::people
+phpgedview-languages: implemented-in::php, made-of::special:todo, role::app-data
+phpgedview-places: field::genealogy, made-of::data:dictionary, role::app-data
+phpgedview-themes: made-of::data:html, role::app-data
+phpgroupware: implemented-in::php, interface::web, role::program, scope::application, use::organizing, web::application
+phpgroupware-addressbook: implemented-in::php, interface::web, role::plugin, use::searching, web::application, works-with::pim
+phpgroupware-admin: admin::user-management, implemented-in::php, interface::web, role::plugin, use::configuring, web::application
+phpgroupware-bookmarks: implemented-in::php, interface::web, role::plugin, web::application, works-with::pim
+phpgroupware-calendar: implemented-in::php, interface::web, role::plugin, use::organizing, use::timekeeping, web::application, works-with::pim
+phpgroupware-chat: implemented-in::php, interface::web, role::plugin, use::chatting, web::application
+phpgroupware-comic: implemented-in::php, interface::web, role::plugin, web::application, works-with::image, works-with::image:raster
+phpgroupware-core: implemented-in::php, interface::web, role::dummy, web::application
+phpgroupware-developer-tools: devel::i18n, implemented-in::php, interface::web, role::plugin, web::application
+phpgroupware-dj: implemented-in::php, interface::web, role::plugin, web::application, works-with-format::mp3, works-with::audio
+phpgroupware-eldaptir: implemented-in::php, interface::web, protocol::ldap, role::plugin, web::application, works-with::db
+phpgroupware-email: implemented-in::php, interface::web, role::plugin, web::application, works-with::mail
+phpgroupware-etemplate: implemented-in::php, interface::web, role::plugin, use::editing, web::application
+phpgroupware-felamimail: implemented-in::php, interface::web, mail::user-agent, role::plugin, use::editing, web::application, works-with::mail
+phpgroupware-filemanager: implemented-in::php, interface::web, role::plugin, web::appserver, works-with::pim
+phpgroupware-folders: implemented-in::php, interface::web, role::plugin, web::application
+phpgroupware-forum: implemented-in::php, interface::web, role::plugin, web::application
+phpgroupware-ftp: implemented-in::php, interface::web, protocol::ftp, role::plugin, use::downloading, web::application
+phpgroupware-fudforum: implemented-in::php, interface::web, role::plugin, use::chatting, web::application
+phpgroupware-headlines: implemented-in::php, interface::web, role::plugin, web::application
+phpgroupware-hr: culture::croatian, implemented-in::php, interface::web, role::plugin, web::application, works-with::people
+phpgroupware-img: implemented-in::php, interface::web, role::plugin, use::editing, web::application, works-with::image, works-with::image:raster
+phpgroupware-infolog: implemented-in::php, interface::web, role::plugin, web::application, works-with::bugs, works-with::people
+phpgroupware-manual: implemented-in::php, interface::web, role::documentation, web::application
+phpgroupware-messenger: implemented-in::php, interface::web, role::plugin, use::transmission, web::application
+phpgroupware-napster: implemented-in::php, interface::web, role::plugin, use::downloading, web::application
+phpgroupware-news-admin: implemented-in::php, interface::web, role::plugin, web::application
+phpgroupware-nntp: implemented-in::php, interface::web, network::client, protocol::nntp, role::plugin, role::program, web::application
+phpgroupware-notes: implemented-in::php, interface::web, role::plugin, use::organizing, web::application
+phpgroupware-phonelog: implemented-in::php, interface::web, role::plugin, web::application, works-with::pim
+phpgroupware-phpbrain: implemented-in::php, interface::web, role::plugin, web::application
+phpgroupware-phpgwapi: devel::lang:php, devel::library, implemented-in::php, interface::web, role::devel-lib
+phpgroupware-phpsysinfo: hardware::detection, implemented-in::php, interface::web, role::plugin, web::application
+phpgroupware-polls: implemented-in::php, interface::web, role::plugin, web::application
+phpgroupware-preferences: implemented-in::php, interface::web, role::plugin, web::application
+phpgroupware-projects: implemented-in::php, interface::web, role::plugin, web::application
+phpgroupware-qmailldap: admin::user-management, implemented-in::php, interface::web, protocol::ldap, role::plugin, web::application, works-with::db, works-with::mail
+phpgroupware-registration: admin::user-management, implemented-in::php, interface::web, role::plugin, web::application
+phpgroupware-setup: admin::configuring, implemented-in::php, interface::web, role::plugin, web::application
+phpgroupware-sitemgr: implemented-in::php, interface::web, role::plugin, web::application, web::cms
+phpgroupware-skel: devel::examples, implemented-in::php, interface::web, role::plugin, web::application
+phpgroupware-soap: implemented-in::php, interface::web, network::client, network::server, protocol::soap, role::plugin, role::program, web::application
+phpgroupware-stocks: field::finance, implemented-in::php, interface::web, role::plugin, web::application
+phpgroupware-todo: implemented-in::php, interface::web, role::plugin, use::organizing, web::application
+phpgroupware-tts: implemented-in::php, interface::web, role::plugin, web::application, works-with::bugs
+phpgroupware-wiki: implemented-in::php, interface::web, role::plugin, web::wiki
+phpgroupware-xmlrpc: implemented-in::php, interface::web, protocol::xmlrpc, role::plugin, web::application
+phpix: implemented-in::php, interface::web, special::not-yet-tagged, special::not-yet-tagged::p, works-with::image, works-with::image:raster
+phpldapadmin: implemented-in::php, interface::web, protocol::ldap, works-with::db
+phpmyadmin: admin::backup, admin::configuring, devel::lang:sql, implemented-in::php, interface::web, protocol::db:mysql, role::program, scope::application, use::browsing, use::configuring, use::editing, use::organizing, use::searching, use::storing, web::application, works-with::db
+phppgadmin: devel::lang:sql, implemented-in::php, interface::web, works-with::db
+phpqladmin: special::not-yet-tagged, special::not-yet-tagged::p
+phpreports: implemented-in::php, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::xml
+phpsysinfo: hardware::detection, implemented-in::php, interface::web, special::not-yet-tagged, special::not-yet-tagged::p
+phpunit: implemented-in::php, special::not-yet-tagged, special::not-yet-tagged::p
+phpwiki: devel::lang:php, implemented-in::php, interface::web, role::program, web::wiki
+phtml: special::not-yet-tagged, special::not-yet-tagged::p
+phylip: field::biology
+phylip-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::p
+pi: field::mathematics, game::toys
+pia: interface::x11, role::program, scope::utility, uitoolkit::athena, use::playing, works-with::video, x11::application
+pic2fig: interface::commandline, role::program, scope::utility, use::converting, works-with::image, works-with::image:vector
+pica: admin::configuring, admin::file-distribution, implemented-in::perl, special::not-yet-tagged, special::not-yet-tagged::p, use::synchronizing, works-with::file
+picalib: admin::configuring, implemented-in::perl, special::not-yet-tagged, special::not-yet-tagged::p
+picard: role::program, scope::application, works-with::audio
+picasm: devel::machinecode, field::electronics, hardware::embedded, interface::commandline, role::program, scope::utility
+picax: admin::package-management, implemented-in::python, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, suite::debian, works-with::software:package
+picocom: hardware::modem, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, use::checking, use::configuring
+picon-domains: special::not-yet-tagged, special::not-yet-tagged::p
+picon-misc: special::not-yet-tagged, special::not-yet-tagged::p
+picon-news: special::not-yet-tagged, special::not-yet-tagged::p
+picon-unknown: special::not-yet-tagged, special::not-yet-tagged::p
+picon-usenix: special::not-yet-tagged, special::not-yet-tagged::p
+picon-users: special::not-yet-tagged, special::not-yet-tagged::p
+picon-weather: special::not-yet-tagged, special::not-yet-tagged::p
+picp: devel::machinecode, field::electronics, hardware::embedded, interface::commandline, role::program, scope::utility
+picprog: field::electronics, hardware::embedded
+picwiz: interface::x11, special::not-yet-tagged, special::not-yet-tagged::p, suite::kde, uitoolkit::qt, use::converting, works-with::image, works-with::image:raster, x11::application
+pidentd: interface::daemon, network::server, protocol::ident, role::program, security::cryptography
+pidentd-des: interface::commandline, interface::daemon, protocol::ident, role::dummy, security::cryptography, special::obsolete
+pike: devel::interpreter, devel::lang:pike, role::dummy, special::obsolete
+pike-crypto: devel::interpreter, devel::lang:pike, role::dummy, security::cryptography, special::obsolete
+pike-crypto-build: devel::lang:pike
+pike-gdbm: devel::interpreter, devel::lang:pike, role::dummy, special::obsolete, works-with::db
+pike-gz: devel::interpreter, devel::lang:pike, role::dummy, special::obsolete, use::compressing
+pike-image: devel::interpreter, devel::lang:pike, role::dummy, special::obsolete, works-with::image:raster
+pike-mysql: devel::interpreter, devel::lang:pike, devel::lang:sql, role::dummy, special::obsolete, works-with::db
+pike-pg: devel::interpreter, devel::lang:pike, devel::lang:sql, role::dummy, special::obsolete, works-with::db
+pike7.2: devel::interpreter, devel::lang:pike, implemented-in::pike, interface::commandline, role::program, scope::utility
+pike7.2-crypto: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, security::cryptography
+pike7.2-gdbm: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, works-with::db
+pike7.2-gl: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, x11::library
+pike7.2-gtk: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, uitoolkit::gtk
+pike7.2-gz: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, use::compressing
+pike7.2-image: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, works-with::image:raster
+pike7.2-mysql: devel::lang:pike, devel::lang:sql, devel::library, implemented-in::pike, role::app-data, works-with::db
+pike7.2-odbc: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, works-with::db
+pike7.2-pexts-admintools: admin::configuring, devel::lang:pike, devel::library, implemented-in::pike, role::app-data, use::configuring
+pike7.2-pexts-bzip2: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, use::compressing
+pike7.2-pexts-curses: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, uitoolkit::ncurses
+pike7.2-pexts-geoip: devel::lang:pike, devel::library, field::geography, implemented-in::pike, role::app-data
+pike7.2-pexts-mcrypt: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, security::cryptography
+pike7.2-pexts-mhash: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, security::integrity
+pike7.2-pexts-newt: devel::lang:pike, devel::library, implemented-in::pike, interface::text-mode, role::app-data
+pike7.2-pexts-pcre: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, use::searching
+pike7.2-pg: devel::lang:pike, devel::lang:sql, devel::library, implemented-in::pike, role::app-data, works-with::db
+pike7.2-sane: devel::lang:pike, devel::library, implemented-in::pike, role::app-data
+pike7.4: devel::interpreter, devel::lang:pike, role::metapackage
+pike7.4-core: devel::interpreter, devel::lang:pike, implemented-in::pike, interface::commandline, role::program, scope::utility
+pike7.4-dev: devel::lang:pike, devel::library, implemented-in::pike, role::devel-lib
+pike7.4-doc: devel::doc, devel::lang:pike, role::metapackage
+pike7.4-gdbm: devel::lang:pike, devel::lang:sql, devel::library, implemented-in::pike, role::app-data, works-with::db
+pike7.4-gl: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, x11::library
+pike7.4-gtk: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, uitoolkit::gtk
+pike7.4-image: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, works-with::image:raster
+pike7.4-manual: devel::doc, devel::lang:pike, made-of::data:html, role::documentation
+pike7.4-meta: devel::lang:pike, devel::library, role::metapackage
+pike7.4-mysql: devel::lang:pike, devel::lang:sql, devel::library, implemented-in::pike, role::app-data, works-with::db
+pike7.4-odbc: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, works-with::db
+pike7.4-perl: devel::interpreter, devel::lang:perl, devel::lang:pike, devel::library, role::shared-lib, use::converting
+pike7.4-pexts-admintools: admin::configuring, devel::lang:pike, devel::library, implemented-in::pike, role::app-data, use::configuring
+pike7.4-pexts-bzip2: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, use::compressing
+pike7.4-pexts-curses: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, uitoolkit::ncurses
+pike7.4-pexts-geoip: devel::lang:pike, devel::library, field::geography, implemented-in::pike, role::app-data
+pike7.4-pexts-mcrypt: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, security::cryptography
+pike7.4-pexts-mhash: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, security::integrity
+pike7.4-pexts-newt: devel::lang:pike, devel::library, implemented-in::pike, interface::text-mode, role::app-data
+pike7.4-pexts-pcre: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, use::searching
+pike7.4-pg: devel::lang:pike, devel::lang:sql, devel::library, implemented-in::pike, role::app-data, works-with::db
+pike7.4-reference: devel::doc, devel::lang:pike, made-of::data:html, role::documentation
+pike7.4-sane: devel::lang:pike, devel::library, implemented-in::pike, role::app-data
+pike7.4-sdl: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, uitoolkit::sdl
+pike7.4-svg: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, works-with-format::svg, works-with::image:vector
+pike7.6: devel::interpreter, devel::lang:pike, role::metapackage
+pike7.6-bzip2: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, use::compressing
+pike7.6-core: devel::interpreter, devel::lang:pike, implemented-in::pike, interface::commandline, role::program, scope::utility
+pike7.6-dev: devel::lang:pike, devel::library, implemented-in::pike, role::devel-lib
+pike7.6-doc: devel::doc, devel::lang:pike, made-of::data:html, role::documentation, role::metapackage
+pike7.6-gdbm: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, works-with::db
+pike7.6-gl: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, x11::library
+pike7.6-gtk: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, uitoolkit::gtk
+pike7.6-image: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, works-with::image, works-with::image:raster
+pike7.6-manual: devel::doc, devel::lang:pike, made-of::data:html, role::documentation
+pike7.6-meta: devel::lang:pike, devel::library, role::metapackage
+pike7.6-mysql: devel::lang:pike, devel::lang:sql, devel::library, implemented-in::pike, role::app-data, works-with::db
+pike7.6-odbc: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, works-with::db
+pike7.6-pcre: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, use::searching
+pike7.6-perl: devel::interpreter, devel::lang:perl, devel::lang:pike, devel::library, role::shared-lib, use::converting
+pike7.6-pexts-admintools: devel::library, special::not-yet-tagged, special::not-yet-tagged::p
+pike7.6-pexts-bzip2: special::not-yet-tagged, special::not-yet-tagged::p
+pike7.6-pexts-curses: special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::ncurses
+pike7.6-pexts-geoip: devel::library, special::not-yet-tagged, special::not-yet-tagged::p
+pike7.6-pexts-mcrypt: devel::library, special::not-yet-tagged, special::not-yet-tagged::p
+pike7.6-pexts-mhash: devel::library, special::not-yet-tagged, special::not-yet-tagged::p
+pike7.6-pexts-newt: devel::library, special::not-yet-tagged, special::not-yet-tagged::p
+pike7.6-pexts-pcre: devel::library, special::not-yet-tagged, special::not-yet-tagged::p
+pike7.6-pg: devel::lang:pike, devel::lang:sql, devel::library, implemented-in::pike, role::app-data, works-with::db
+pike7.6-reference: devel::doc, devel::lang:pike, made-of::data:html, role::documentation
+pike7.6-sane: devel::lang:pike, devel::library, implemented-in::pike, role::app-data
+pike7.6-sdl: devel::lang:pike, devel::library, implemented-in::pike, uitoolkit::sdl
+pike7.6-svg: devel::lang:pike, devel::library, implemented-in::pike, role::app-data, uitoolkit::gtk, works-with-format::svg, works-with::image, works-with::image:vector
+pileup: game::toys, hardware::hamradio, interface::commandline, role::program, use::gameplaying, use::learning
+pilot-link: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::synchronizing
+pilot-manager: hardware::embedded, interface::x11, role::program, scope::utility, uitoolkit::tk, use::synchronizing, works-with::pim, x11::application
+pilot-qof: filetransfer::special:todo, hardware::special:todo, implemented-in::c, interface::commandline, protocol::special:not-applicable, role::program, scope::utility, special::completely-tagged, use::converting, use::organizing, use::searching, use::storing, use::synchronizing, works-with-format::xml, works-with::file, works-with::pim, works-with::text, works-with::unicode
+pilot-template: devel::code-generator, hardware::embedded, interface::commandline, role::program, scope::utility
+pilrc: devel::compiler, devel::editor, interface::commandline, interface::x11, role::program, scope::utility, uitoolkit::gtk
+pilrcui: interface::commandline, role::program, scope::utility, uitoolkit::gtk
+pimd: interface::daemon, network::routing, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::p, use::routing
+pimppa: devel::lang:sql, filetransfer::ftp, interface::commandline, interface::x11, protocol::ftp, protocol::nntp, suite::gnome, uitoolkit::gtk, use::downloading, works-with::db, x11::application
+pinball: game::simulation, implemented-in::c++, interface::x11, role::program, uitoolkit::ncurses, uitoolkit::sdl, use::gameplaying, x11::application
+pinball-data: game::simulation, interface::x11, role::app-data, special::auto-inst-parts, uitoolkit::sdl, use::gameplaying, x11::application
+pinball-dev: devel::lang:c++, game::simulation, interface::x11, role::devel-lib, uitoolkit::sdl, x11::application
+pine-tracker: network::client, role::program, works-with::mail
+pinentry-curses: interface::text-mode, role::program, scope::utility, security::authentication, uitoolkit::ncurses
+pinentry-doc: devel::doc, made-of::data:info, role::documentation, security::authentication, suite::gnu
+pinentry-gtk: interface::x11, role::program, scope::utility, security::authentication, suite::gnu, uitoolkit::gtk, uitoolkit::ncurses, x11::application
+pinentry-gtk2: interface::x11, role::program, scope::utility, security::authentication, suite::gnu, uitoolkit::gtk, uitoolkit::ncurses, x11::application
+pinentry-qt: interface::x11, role::program, scope::utility, security::authentication, suite::gnu, uitoolkit::ncurses, uitoolkit::qt, x11::application
+pinfo: interface::text-mode, role::program, uitoolkit::ncurses, use::viewing, works-with-format::info, works-with::text
+pingus: game::strategy, interface::x11, role::program, use::gameplaying, x11::application
+pingus-data: game::strategy, interface::x11, role::app-data, special::auto-inst-parts, use::gameplaying, x11::application
+pioneers-ai: game::board, implemented-in::c, network::client, protocol::tcp, role::plugin, special::completely-tagged, use::entertaining, use::gameplaying
+pioneers-client: game::board, implemented-in::c, interface::x11, network::client, protocol::tcp, role::program, special::completely-tagged, uitoolkit::gtk, use::entertaining, use::gameplaying, x11::application
+pioneers-help: game::board, made-of::data:html, role::documentation, use::entertaining, use::gameplaying
+pioneers-meta-server: game::board, implemented-in::c, network::server, network::service, protocol::tcp, role::program, use::gameplaying, use::organizing
+pioneers-server-console: game::board, implemented-in::c, network::server, network::service, protocol::tcp, role::program, use::entertaining, use::gameplaying
+pioneers-server-data: game::board, role::app-data, use::entertaining, use::gameplaying
+pioneers-server-gtk: game::board, implemented-in::c, interface::x11, network::server, network::service, protocol::tcp, role::program, special::completely-tagged, uitoolkit::gtk, use::entertaining, use::gameplaying, x11::application
+pipenightdreams: game::puzzle, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+pipenightdreams-data: game::puzzle, interface::x11, role::app-data, uitoolkit::sdl, use::gameplaying, x11::application
+pipsecd: network::vpn, protocol::ssl, special::not-yet-tagged, special::not-yet-tagged::p, use::configuring, use::routing
+pisg: filetransfer::dcc, implemented-in::perl, interface::commandline, protocol::irc, role::program, scope::utility, use::converting, use::monitor, works-with::logfile
+pistachio-dev: special::not-yet-tagged, special::not-yet-tagged::p
+pistachio-doc: special::not-yet-tagged, special::not-yet-tagged::p
+pistachio-kernel: special::not-yet-tagged, special::not-yet-tagged::p
+pistachio-kernel-headers: special::not-yet-tagged, special::not-yet-tagged::p
+pitivi: implemented-in::python, interface::x11, role::program, uitoolkit::gtk, use::editing, works-with-format::oggtheora, works-with-format::oggvorbis, works-with-format::wav, works-with::audio, works-with::video, x11::application
+piuparts: devel::testing-qa, implemented-in::python, interface::commandline, role::program, scope::utility, suite::debian, use::checking, works-with::software:package
+piwi: devel::lang:sql, implemented-in::perl, interface::web, security::ids, special::not-yet-tagged, special::not-yet-tagged::p, web::application, works-with::db
+pixelize: interface::x11, role::program, scope::utility, uitoolkit::gtk, works-with::image, works-with::image:raster, x11::application
+pixmap: interface::x11, role::program, scope::application, uitoolkit::athena, use::editing, works-with::image, works-with::image:raster, x11::application
+pkcipe: admin::configuring, network::vpn, protocol::ssl, role::program, scope::utility, security::authentication, use::configuring
+pkf: culture::japanese, implemented-in::perl, special::not-yet-tagged, special::not-yet-tagged::p
+pkg-config: admin::configuring, devel::buildtools, interface::commandline, role::program, scope::utility
+pkglist: implemented-in::perl, suite::debian, works-with::software:package
+pkgsync: admin::package-management, interface::commandline, role::program, scope::utility, use::synchronizing, works-with::software:package
+pkspxy: implemented-in::c, interface::daemon, network::server, role::program, security::cryptography, use::proxying
+pkspxyc: implemented-in::c, interface::commandline, network::client, role::program, security::cryptography, use::proxying
+pktrace: implemented-in::python, interface::commandline, role::dummy, special::obsolete, use::converting, works-with::font
+pktstat: admin::monitoring, interface::text-mode, network::scanner, protocol::ftp, protocol::http, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::ncurses, use::monitor, works-with::network-traffic
+plan: interface::x11, role::program, scope::application, uitoolkit::motif, use::organizing, works-with::pim, x11::application
+planet: implemented-in::python, interface::commandline, interface::web, network::client, protocol::http, role::program, scope::application, use::downloading, use::monitor, web::blog, works-with-format::html, works-with-format::xml, works-with-format::xml:rss
+planetpenguin-racer: game::arcade, interface::3d, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+planetpenguin-racer-data: game::arcade, interface::3d, role::app-data, special::auto-inst-parts, use::gameplaying, x11::application
+planetpenguin-racer-extras: game::arcade, interface::3d, role::app-data, use::gameplaying, x11::application
+planetpenguin-racer-gimp-dev: role::app-data
+planets: field::astronomy, game::simulation, interface::x11, role::program, uitoolkit::tk, use::gameplaying, x11::application
+planner: implemented-in::c, interface::x11, office::project-management, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::editing, use::organizing, works-with::people, x11::application
+planner-dev: devel::lang:c, devel::library, implemented-in::c, interface::x11, role::devel-lib, suite::gnome, uitoolkit::gtk, uitoolkit::ncurses, use::editing, use::organizing, works-with::people, x11::application
+planner-el: implemented-in::lisp, role::plugin, special::not-yet-tagged, special::not-yet-tagged::p, suite::emacs, use::text-formatting, works-with-format::html, works-with::pim, works-with::text
+playground: suite::gnome, uitoolkit::gtk
+playground-dev: role::devel-lib
+playground-plugin-xmms: suite::gnome
+playmidi: implemented-in::c, interface::text-mode, interface::x11, role::program, sound::midi, sound::player, uitoolkit::athena, uitoolkit::ncurses, works-with::audio, x11::application
+playmp3list: interface::text-mode, sound::player, uitoolkit::ncurses, works-with-format::mp3, works-with::audio
+plex86: hardware::emulation, role::dummy, special::not-yet-tagged, special::not-yet-tagged::p, special::obsolete
+plex86-curses: hardware::emulation, interface::text-mode, role::dummy, special::not-yet-tagged, special::not-yet-tagged::p, special::obsolete, uitoolkit::ncurses
+plex86-kernel: admin::kernel, hardware::emulation, special::not-yet-tagged, special::not-yet-tagged::p
+plex86-kernel-src: admin::kernel, hardware::emulation, role::dummy
+plex86-x: hardware::emulation, interface::x11, role::dummy, special::not-yet-tagged, special::not-yet-tagged::p, special::obsolete, x11::application
+plib-doc: devel::doc, devel::library, hardware::input:joystick, made-of::data:html, role::documentation, x11::library
+plib1.8.4: special::not-yet-tagged, special::not-yet-tagged::p
+plib1.8.4-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+plib1.8.4-pic: devel::library, special::not-yet-tagged, special::not-yet-tagged::p
+pload: admin::monitoring, hardware::modem, uitoolkit::athena, use::monitor, x11::application
+plone: implemented-in::python, interface::web, role::metapackage, web::application, web::cms
+plopfolio.app: implemented-in::objc, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, suite::gnustep, uitoolkit::gnustep, x11::application
+plotdrop: suite::gnome, uitoolkit::gtk, use::viewing
+ploticus: scope::application, special::not-yet-tagged, special::not-yet-tagged::p, use::printing
+ploticus-doc: role::documentation
+plotmtv: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, use::viewing, works-with::image, works-with::image:vector, x11::application
+plotutils: interface::x11, role::program, scope::utility, suite::gnu, uitoolkit::athena, works-with::image, works-with::image:vector, x11::application
+plplot-bin: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, use::converting, works-with::image, works-with::image:vector
+plplot-doc: made-of::data:html, made-of::data:info, made-of::data:pdf, role::documentation
+plplot-tcl: devel::lang:tcl, interface::x11, role::program, scope::utility, uitoolkit::tk, use::converting, works-with::image, works-with::image:vector, x11::application
+plplot-tcl-dev: devel::library, implemented-in::tcl, interface::x11, role::devel-lib, uitoolkit::tk, use::converting, works-with::image, works-with::image:vector, x11::application
+plplot9-driver-gd: role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, use::converting, works-with-format::jpg, works-with-format::png, works-with::image, works-with::image:raster, works-with::image:vector
+plplot9-driver-gnome: interface::x11, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, suite::gnome, uitoolkit::gtk, works-with::image:vector, x11::application
+plplot9-driver-gnome2: uitoolkit::gtk
+plplot9-driver-wxwidgets: uitoolkit::wxwindows
+plplot9-driver-xwin: role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::image, works-with::image:vector, x11::application
+plptools: admin::backup, admin::filesystem, interface::commandline, interface::daemon, role::program, scope::utility, use::printing, use::synchronizing, works-with::archive, works-with::file
+plptools-dev: admin::backup, admin::filesystem, devel::library, role::devel-lib, use::printing, use::synchronizing
+plptools-kde: role::program, scope::utility, suite::kde
+plucker: uitoolkit::gtk
+plucker-desktop: interface::x11, role::program, scope::application, uitoolkit::wxwidgets, uitoolkit::wxwindows, use::browsing, use::synchronizing, x11::application
+plum: culture::japanese, filetransfer::dcc, implemented-in::perl, protocol::irc, role::program, scope::utility, use::chatting
+plywood: implemented-in::python, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, use::typesetting, works-with-format::tex, works-with::text
+plywood-elisp: implemented-in::lisp, role::plugin, special::not-yet-tagged, special::not-yet-tagged::p, suite::emacs, use::typesetting, works-with-format::tex, works-with::text
+pm-dev: devel::library, role::devel-lib, use::proxying
+pmac-fdisk: admin::filesystem, interface::commandline, role::program, scope::utility
+pmacct: admin::accounting, admin::configuring, devel::lang:sql, network::scanner, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, use::monitor, works-with::db
+pmake: devel::buildtools, interface::commandline, role::program, scope::utility
+pmccabe: devel::lang:c, devel::lang:c++, devel::testing-qa, interface::commandline, role::program, scope::utility, works-with::software:source
+pmidi: interface::commandline, role::program, scope::utility, sound::midi, sound::player, use::playing
+pmk: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p
+pmount: admin::filesystem, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p
+pmp-common: hardware::detection, interface::daemon, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, use::playing
+pmtools: devel::debugger, devel::lang:perl, implemented-in::perl, interface::commandline, role::program, scope::utility, works-with::software:source
+pmx: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, use::typesetting, works-with-format::tex, works-with::music-notation, works-with::text
+pnet: devel::compiler, interface::commandline, role::program, scope::utility, works-with::software:source
+pnet-assemblies: devel::library, protocol::ssl, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+pnet-compiler: devel::compiler, interface::text-mode, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::ncurses, works-with::software:source
+pnet-ctools: devel::compiler, devel::lang:c, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, works-with::software:source
+pnet-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+pnet-interpreter: devel::interpreter, interface::text-mode, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::ncurses
+pnetc: devel::library, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::p
+png-definitive-guide: made-of::data:html, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::png, works-with::image, works-with::image:raster
+png2html: interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with-format::png, works-with::image, works-with::image:raster, works-with::text
+pngcheck: interface::commandline, role::program, scope::utility, use::checking, works-with-format::png, works-with::image, works-with::image:raster
+pngcrush: implemented-in::c, interface::commandline, role::program, scope::utility, use::compressing, works-with-format::png, works-with::image, works-with::image:raster
+pngmeta: implemented-in::c, interface::commandline, role::program, scope::utility, use::scanning, works-with-format::png, works-with::image, works-with::image:raster
+pngnq: implemented-in::c, interface::commandline, role::program, scope::utility, use::compressing, works-with-format::png, works-with::image, works-with::image:raster
+pngquant: implemented-in::c, interface::commandline, role::program, scope::utility, use::compressing, use::converting, works-with-format::png, works-with::image, works-with::image:raster
+pnm2ppa: hardware::printer, use::printing
+pnscan: interface::commandline, network::scanner, role::program, scope::utility, use::scanning
+po-debconf: devel::i18n, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian
+po-debiandoc: devel::i18n, implemented-in::perl, interface::commandline, role::program, scope::utility, works-with-format::sgml, works-with::text
+po4a: devel::i18n, implemented-in::perl, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::docbook, works-with-format::man, works-with-format::sgml, works-with::text
+poa: field::biology, implemented-in::c, interface::commandline, role::program, scope::utility, works-with-format::plaintext, works-with::special:todo
+poc-streamer: special::not-yet-tagged, special::not-yet-tagged::p
+pocketpc-binutils: devel::buildtools, hardware::embedded, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, suite::gnu
+pocketpc-cab: devel::packaging, hardware::embedded, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, use::storing, works-with::archive
+pocketpc-g++: devel::compiler, devel::lang:c++, hardware::embedded, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, suite::gnu, works-with::software:source
+pocketpc-gas: devel::machinecode, hardware::embedded, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, suite::gnu
+pocketpc-gcc: devel::compiler, devel::lang:c, hardware::embedded, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, suite::gnu, works-with::software:source
+pocketpc-sdk: devel::library, hardware::embedded, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+podbrowser: devel::doc, implemented-in::perl, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::browsing, works-with::software:source, x11::application
+podracer: web::blog
+poe.app: implemented-in::objc, interface::x11, role::plugin, special::not-yet-tagged, special::not-yet-tagged::p, suite::gnustep, uitoolkit::gnustep, use::editing, works-with-format::oggvorbis, works-with::audio, x11::application
+poedit: devel::i18n, interface::x11, role::program, scope::utility, uitoolkit::gtk, uitoolkit::wxwidgets, uitoolkit::wxwindows, use::editing, x11::application
+pointerize: devel::i18n, interface::commandline, role::program, scope::utility, use::converting, works-with::software:source
+pointless: implemented-in::python, interface::x11, role::program, scope::application, use::text-formatting, use::viewing, works-with::text, x11::application
+poker3d: special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::gtk, uitoolkit::sdl
+poker3d-data: role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+poker3d-server: special::not-yet-tagged, special::not-yet-tagged::p
+policycoreutils: admin::kernel, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::software:running
+polipo: interface::daemon, network::server, network::service, protocol::http, role::program, special::not-yet-tagged, special::not-yet-tagged::p, use::proxying, web::server, works-with-format::html, works-with::text
+polygen: devel::interpreter, game::toys, implemented-in::ocaml, interface::commandline, role::program, scope::utility, use::entertaining, works-with::text
+polygen-data: devel::interpreter, game::toys, implemented-in::ocaml, interface::commandline, role::app-data, use::entertaining, works-with::text
+polyglot: game::board:chess, implemented-in::c, role::program, use::gameplaying
+polymer: uitoolkit::qt
+polyxmass: field::chemistry, interface::x11, role::metapackage, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, suite::gnu
+polyxmass-bin: field::chemistry, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, suite::gnu, uitoolkit::gtk, use::editing, x11::application
+polyxmass-bin-common: interface::x11, role::program, scope::utility, suite::gnu
+polyxmass-common: field::chemistry, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, suite::gnu
+polyxmass-data: field::chemistry, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, suite::gnu
+polyxmass-doc: field::chemistry, made-of::data:tex, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p, suite::gnu
+pong2: game::arcade, interface::3d, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+pop-before-smtp: admin::configuring, implemented-in::perl, mail::pop, mail::smtp, protocol::pop3, protocol::smtp, role::program, scope::utility, security::authentication, special::not-yet-tagged, special::not-yet-tagged::p, works-with::logfile, works-with::mail
+pop3browser: hardware::modem, implemented-in::perl, mail::pop, protocol::pop3, role::program, scope::utility, use::checking, works-with::mail
+popa3d: interface::daemon, mail::pop, network::server, protocol::pop3, role::program, security::authentication, works-with::mail
+popfile: devel::lang:sql, interface::web, mail::filters, network::server, role::program, use::organizing, works-with::db
+poppass-cgi: implemented-in::perl, interface::web, mail::pop, network::client, protocol::pop3, role::program, security::authentication, special::not-yet-tagged, special::not-yet-tagged::p, web::cgi, works-with::mail
+poppassd: interface::daemon, mail::pop, network::server, protocol::pop3, role::program, security::authentication, works-with::mail
+poppler-utils: interface::commandline, role::program, scope::utility, use::converting, use::filtering, works-with-format::pdf, works-with::text
+popularity-contest: implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, use::transmission, works-with::software:package
+pork: implemented-in::c, interface::text-mode, network::client, protocol::oscar, role::program, scope::application, uitoolkit::ncurses, use::chatting
+pornview: interface::x11, role::program, scope::application, uitoolkit::gtk, use::browsing, use::viewing, works-with-format::jpg, works-with-format::png, works-with::image, works-with::image:raster, x11::application
+portmap: devel::rpc, implemented-in::c, interface::daemon, network::server, network::service, role::program, special::auto-inst-parts
+portsentry: interface::daemon, network::server, network::service, role::program, security::ids, use::monitor
+portslave: admin::login, hardware::modem, security::authentication, use::dialing, use::login
+pose: devel::TODO, hardware::embedded, implemented-in::c++, interface::x11, role::program, scope::utility, uitoolkit::xlib
+pose-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::p
+pose-profile: special::not-yet-tagged, special::not-yet-tagged::p
+pose-skins: special::not-yet-tagged, special::not-yet-tagged::p
+posh: interface::shell, role::program, scope::utility, use::login
+positron: hardware::embedded, implemented-in::python, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, use::synchronizing, works-with::audio
+posixtestsuite: devel::testing-qa, role::dummy, special::not-yet-tagged, special::not-yet-tagged::p
+post-el: implemented-in::lisp, role::plugin, suite::emacs, use::editing, works-with::mail
+post-faq: implemented-in::perl, interface::commandline, network::client, protocol::nntp, role::program
+postal: admin::benchmarking, interface::commandline, mail::smtp, protocol::smtp, role::program, scope::utility, use::transmission, works-with::mail
+poster: interface::commandline, role::program, scope::utility, use::converting, use::printing, works-with-format::postscript, works-with::text
+postfix: interface::daemon, mail::smtp, mail::transport-agent, network::server, protocol::smtp, role::program, works-with::mail
+postfix-dev: devel::library, interface::daemon, mail::smtp, mail::transport-agent, protocol::smtp, role::devel-lib, works-with::mail
+postfix-doc: interface::daemon, mail::smtp, mail::transport-agent, protocol::smtp, role::documentation, works-with::mail
+postfix-gld: devel::lang:sql, implemented-in::c, interface::daemon, mail::filters, network::server, role::program, use::checking, works-with::db, works-with::mail
+postfix-ldap: interface::daemon, network::server, protocol::ldap, protocol::smtp, role::program, security::authentication, works-with::db, works-with::mail
+postfix-mysql: devel::lang:sql, interface::daemon, network::server, protocol::smtp, role::program, security::authentication, use::storing, works-with::db, works-with::mail
+postfix-pcre: interface::daemon, network::server, role::program, security::authentication, works-with::mail
+postfix-pgsql: devel::lang:sql, interface::daemon, network::server, protocol::smtp, role::program, security::authentication, use::storing, works-with::db, works-with::mail
+postfix-policyd: mail::filters, role::plugin, role::program, use::checking, works-with::mail
+postgis: field::geography, use::organizing
+postgresql: devel::lang:sql, interface::daemon, network::server, role::program, works-with::db
+postgresql-7.4: role::program, works-with::db
+postgresql-7.4-plr: works-with::db
+postgresql-7.4-plruby: works-with::db
+postgresql-8.1: interface::daemon, role::program, works-with::db
+postgresql-8.1-plr: works-with::db
+postgresql-8.2: devel::lang:sql, interface::daemon, network::server, network::service, protocol::db:psql, role::program, works-with::db
+postgresql-autodoc: devel::docsystem, devel::lang:sql, implemented-in::perl, interface::commandline, role::program, scope::utility, works-with-format::docbook, works-with-format::html, works-with::db, works-with::text
+postgresql-client: devel::lang:sql, interface::commandline, network::client, role::program, works-with::db
+postgresql-client-7.4: role::program, works-with::db
+postgresql-client-8.1: works-with::db
+postgresql-client-8.2: devel::lang:sql, interface::commandline, network::client, protocol::db:psql, role::program, works-with::db
+postgresql-client-common: role::TODO, use::configuring, works-with::db
+postgresql-common: admin::configuring, interface::commandline, network::service, protocol::db:psql, protocol::ssl, role::program, works-with::db
+postgresql-contrib: devel::lang:sql, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+postgresql-contrib-7.4: works-with::db
+postgresql-contrib-8.1: works-with::db
+postgresql-dev: devel::lang:sql, devel::library, interface::daemon, role::devel-lib, works-with::db
+postgresql-doc: devel::lang:sql, interface::daemon, made-of::data:html, role::documentation, works-with::db
+postgresql-doc-7.4: role::documentation
+postgresql-doc-8.1: works-with::db
+postgresql-filedump-8.1: implemented-in::perl, works-with::db
+postgresql-plperl-7.4: implemented-in::perl, works-with::db
+postgresql-plperl-8.1: implemented-in::perl, works-with::db
+postgresql-plpython-7.4: implemented-in::python, works-with::db
+postgresql-plpython-8.1: implemented-in::python, works-with::db
+postgresql-plr: devel::lang:r, devel::lang:sql, devel::library, interface::commandline, role::devel-lib, works-with::db
+postgresql-plruby: devel::lang:ruby, devel::lang:sql, devel::library, implemented-in::c, interface::commandline, works-with::db
+postgresql-pltcl-7.4: implemented-in::tcl, works-with::db
+postgresql-pltcl-8.1: implemented-in::tcl, works-with::db
+postgresql-server-dev-7.4: devel::library, works-with::db
+postgresql-server-dev-8.1: devel::library, works-with::db
+postgrey: implemented-in::perl, interface::daemon, mail::filters, network::server, role::program, use::checking, works-with::db, works-with::mail
+postit: network::client, protocol::nntp, role::program, use::transmission
+postman: culture::basque, culture::catalan, culture::spanish, implemented-in::c++, interface::daemon, interface::web, network::server, protocol::imap, protocol::nntp, role::program, web::cgi, works-with::mail
+postmark: admin::benchmarking, admin::filesystem, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p
+postnews: implemented-in::python, interface::commandline, network::client, protocol::nntp, role::program, special::not-yet-tagged, special::not-yet-tagged::p
+potion: admin::monitoring, interface::text-mode, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::ncurses, use::monitor
+potool: devel::i18n, interface::commandline, role::program, scope::utility, use::checking, use::editing, works-with::text
+potrace: interface::commandline, role::program, scope::utility, use::converting, works-with::image, works-with::image:raster, works-with::image:vector
+potracegui: interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::converting, works-with::image, works-with::image:raster, works-with::image:vector, x11::application
+pound: interface::daemon, network::load-balancing, network::server, protocol::http, protocol::ssl, role::program, special::not-yet-tagged, special::not-yet-tagged::p, use::proxying, web::server
+povray: role::dummy
+povray-3.5: field::TODO, field::arts, field::chemistry, field::mathematics, implemented-in::c++, interface::commandline, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::p, use::TODO, works-with::3dmodel, works-with::image:raster
+povray-3.5-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::p
+povray-3.5-examples: special::not-yet-tagged, special::not-yet-tagged::p
+povray-3.5-includes: special::not-yet-tagged, special::not-yet-tagged::p
+povray-3.6: works-with::3dmodel
+powermanga: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+powermanga-data: game::arcade, interface::x11, role::app-data, special::auto-inst-parts, uitoolkit::sdl, use::gameplaying, x11::application
+powermgmt-base: admin::power-management, hardware::laptop, hardware::power, hardware::power:acpi, interface::commandline, role::program, scope::utility, special::auto-inst-parts, use::configuring
+powernowd: admin::power-management, interface::daemon, role::program, special::not-yet-tagged, special::not-yet-tagged::p, use::configuring
+powerpc-ibm-utils: admin::hardware, implemented-in::c, implemented-in::perl, implemented-in::shell, interface::commandline, role::program, scope::utility
+powerpc-utils: admin::hardware, hardware::input:mouse, implemented-in::c, interface::commandline, role::program, scope::utility
+powerprefs: admin::hardware, admin::power-management, hardware::laptop, implemented-in::c, interface::x11, role::program, uitoolkit::gtk, use::configuring
+powersaved: admin::power-management, hardware::laptop, hardware::power, hardware::power:acpi, hardware::power:apm, interface::commandline, interface::daemon, role::program
+powershell: interface::x11, role::plugin, suite::emacs, suite::gnome, uitoolkit::gtk, use::browsing, use::editing, x11::application, x11::terminal
+powertweak: admin::configuring, hardware::detection, interface::x11, role::metapackage, role::program, scope::utility, use::configuring
+powertweak-extra: admin::configuring, hardware::detection, role::plugin, scope::utility, use::configuring
+powertweak-gtk: admin::configuring, hardware::detection, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::configuring, x11::application
+powertweakd: admin::configuring, hardware::detection, interface::daemon, network::server, role::program, scope::utility, use::configuring
+powstatd: admin::monitoring, hardware::power, hardware::power:ups, interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::p, use::monitor
+powstatd-crypt: admin::monitoring, hardware::power, hardware::power:ups, interface::daemon, network::server, role::program, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::p, use::monitor
+poxml: devel::i18n, interface::commandline, interface::x11, role::program, scope::utility, uitoolkit::qt, use::editing, works-with-format::docbook, works-with::text, x11::application
+ppdfilt: hardware::printer, interface::commandline, role::program, scope::utility, suite::gnu, use::printing, works-with-format::postscript, works-with::text
+pperl: devel::lang:perl, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p
+ppmd: interface::commandline, role::program, scope::utility, use::compressing, works-with::text
+ppmtofb: interface::framebuffer, role::program, scope::utility, use::viewing, works-with::image, works-with::image:raster
+ppp: hardware::modem, interface::daemon, network::server, protocol::ipv6, role::program, use::dialing
+ppp-dev: devel::library, hardware::modem, role::devel-lib, use::dialing
+pppconfig: admin::configuring, hardware::modem, interface::text-mode, network::configuration, role::program, scope::utility, use::configuring, use::dialing
+pppdcapiplugin: admin::hardware, hardware::modem, interface::daemon, role::plugin, use::dialing
+pppoe: hardware::modem, hardware::modem:dsl, implemented-in::c, protocol::ethernet, use::dialing
+pppoeconf: admin::configuring, hardware::modem, hardware::modem:dsl, network::configuration, protocol::ethernet, role::program, scope::utility, use::configuring, use::dialing
+pppstatus: admin::accounting, hardware::modem, interface::text-mode, uitoolkit::ncurses, use::dialing, use::monitor
+ppscsi-source: admin::kernel, role::source, special::not-yet-tagged, special::not-yet-tagged::p, use::driver
+ppthtml: interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with::text
+pptp-linux: interface::commandline, network::client, network::configuration, network::vpn, role::program, use::routing
+pptpd: interface::daemon, network::configuration, network::server, network::vpn, role::program, use::routing
+pptview: interface::x11, role::program, scope::utility, use::viewing, x11::application
+ppxp: hardware::modem, interface::text-mode, uitoolkit::ncurses, use::dialing
+ppxp-dev: devel::library, hardware::modem, role::devel-lib, use::dialing
+ppxp-tcltk: hardware::modem, interface::x11, uitoolkit::tk, use::dialing, x11::application
+ppxp-x11: hardware::modem, interface::x11, uitoolkit::athena, use::dialing, x11::application
+praat: field::linguistics, interface::x11, role::program, scope::application, uitoolkit::motif, works-with::audio, x11::application
+pratico: culture::portuguese, role::data, special::not-yet-tagged, special::not-yet-tagged::p, suite::debian
+prboom: game::arcade, interface::3d, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+prc-tools: devel::buildtools, hardware::embedded, interface::commandline, role::dummy, special::not-yet-tagged, special::not-yet-tagged::p, special::obsolete
+prc-tools-arm: admin::hardware, devel::buildtools, hardware::embedded, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p
+prc-tools-doc: devel::buildtools, devel::doc, hardware::embedded, role::documentation
+prc-tools-m68k: admin::hardware, devel::buildtools, hardware::embedded, interface::commandline, interface::text-mode, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::ncurses
+prc-tools-utils: devel::buildtools, hardware::embedded, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p
+prcs: devel::rcs, interface::commandline, role::program, scope::utility, use::synchronizing, works-with::file
+prcs-el: devel::rcs, implemented-in::lisp, interface::commandline, role::plugin, suite::emacs, use::synchronizing, works-with::file
+prcs-synch: devel::rcs, implemented-in::perl, interface::commandline, role::program, scope::utility, use::synchronizing, works-with::file
+prcs-utils: devel::rcs, interface::commandline, role::program, scope::utility, use::synchronizing, works-with::file
+prcs-visualtree: devel::rcs, interface::commandline, role::program, scope::utility, use::viewing, works-with::image, works-with::image:vector
+predict: field::astronomy, hardware::hamradio, interface::text-mode, network::server, role::program, uitoolkit::ncurses
+predict-gsat: field::astronomy, hardware::hamradio, interface::x11, network::client, role::program, uitoolkit::gtk, x11::application
+preferences: admin::configuring, implemented-in::objc, interface::x11, role::plugin, special::not-yet-tagged, special::not-yet-tagged::p, suite::gnustep, use::configuring, x11::application
+preferences.app: implemented-in::objc, interface::x11, role::program, suite::gnustep, uitoolkit::gnustep, x11::application
+prelink: devel::buildtools, interface::commandline, role::program, scope::utility, works-with::software:source
+preload: implemented-in::c, interface::daemon, role::program, scope::application, works-with::software:running
+prelude-lml: admin::monitoring, interface::commandline, role::program, scope::utility, security::ids, security::log-analyzer, special::not-yet-tagged, special::not-yet-tagged::p, use::monitor, works-with::logfile
+prelude-manager: admin::monitoring, devel::lang:sql, interface::commandline, interface::daemon, network::server, role::program, security::ids, special::not-yet-tagged, special::not-yet-tagged::p, use::monitor, works-with::db
+prelude-nids: admin::monitoring, security::ids, special::not-yet-tagged, special::not-yet-tagged::p, use::monitor
+premail: security::cryptography
+prestimel: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, use::converting, use::editing, works-with-format::html, works-with-format::xml, works-with::TODO, works-with::text
+pretzel: devel::prettyprint, interface::commandline, role::program, scope::utility, use::printing, works-with-format::tex, works-with::software:source, works-with::text
+preview-latex: interface::commandline, role::plugin, suite::emacs, use::editing, use::viewing, works-with-format::tex, works-with::text
+preview-latex-style: role::app-data, use::viewing, works-with-format::tex, works-with::text
+preview.app: implemented-in::objc, interface::x11, role::plugin, special::not-yet-tagged, special::not-yet-tagged::p, suite::gnustep, uitoolkit::gnustep, use::viewing, works-with::image, x11::application
+price.app: implemented-in::objc, interface::x11, role::plugin, role::program, special::not-yet-tagged, special::not-yet-tagged::p, suite::gnustep, uitoolkit::gnustep, use::converting, works-with::image, works-with::image:raster, x11::application
+primaxscan: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p
+prime: accessibility::input, culture::japanese, implemented-in::ruby, special::not-yet-tagged, special::not-yet-tagged::p
+prime-dict: accessibility::input, culture::japanese, implemented-in::ruby, made-of::data:dictionary, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+prime-el: accessibility::input, culture::japanese, implemented-in::lisp, role::plugin, special::not-yet-tagged, special::not-yet-tagged::p, suite::emacs
+primer3: field::biology, implemented-in::c, interface::commandline, role::program, scope::utility, works-with-format::plaintext, works-with::special:todo
+printbill: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p
+printconf: admin::configuring, hardware::detection, hardware::printer, implemented-in::python, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, use::configuring
+printfilters-ppd: hardware::printer, role::plugin, suite::gnu, use::printing
+printop: admin::configuring, hardware::detection, hardware::printer, interface::x11, uitoolkit::tk, use::configuring, use::printing, x11::application
+printtool: admin::configuring, hardware::printer, interface::x11, role::program, scope::utility, uitoolkit::tk, use::configuring, use::printing, x11::application
+prips: interface::commandline, role::program, scope::utility
+prismstumbler: interface::x11, network::scanner, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::gtk, use::scanning, x11::application
+privoxy: implemented-in::c, interface::daemon, interface::web, network::server, protocol::http, role::program, use::proxying, web::server
+prj2make-sharp: special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::gtk
+probcons: field::biology, implemented-in::c++, interface::commandline, role::program, scope::utility, works-with-format::plaintext, works-with::special:todo
+probcons-extra: field::biology, implemented-in::c++, interface::commandline, role::program, scope::utility, works-with-format::plaintext, works-with::special:todo
+procinfo: hardware::detection, implemented-in::c, implemented-in::perl, interface::commandline, role::program, scope::utility, uitoolkit::ncurses, use::monitor
+procmail: interface::commandline, mail::delivery-agent, mail::filters, role::program, scope::utility, works-with::mail
+procmail-lib: devel::examples, implemented-in::perl, mail::filters, role::documentation, role::program, scope::utility, use::checking, works-with::mail
+procmeter: admin::monitoring, interface::x11, role::program, scope::utility, uitoolkit::athena, use::monitor, x11::application
+procmeter3: admin::monitoring, hardware::power, hardware::power:acpi, interface::x11, mail::notification, role::program, role::shared-lib, scope::utility, uitoolkit::athena, uitoolkit::gtk, use::monitor, works-with::mail, x11::application
+procps: admin::monitoring, interface::commandline, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::monitor, works-with::software:running
+producer-doc: devel::lang:c++, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p, x11::library
+proftpd: filetransfer::ftp, interface::daemon, network::server, protocol::ftp, protocol::ssl, role::program, uitoolkit::ncurses, works-with::file
+proftpd-common: filetransfer::ftp, interface::daemon, protocol::ftp, protocol::ssl, role::program, scope::utility, special::auto-inst-parts, uitoolkit::ncurses, works-with::file
+proftpd-doc: filetransfer::ftp, interface::daemon, made-of::data:html, protocol::ftp, protocol::ssl, role::documentation, works-with::file
+proftpd-ldap: filetransfer::ftp, interface::daemon, network::server, protocol::ftp, protocol::ldap, protocol::ssl, role::program, security::authentication, works-with::db, works-with::file
+proftpd-mysql: devel::lang:sql, filetransfer::ftp, interface::daemon, network::server, protocol::ftp, protocol::ssl, role::program, security::authentication, works-with::db, works-with::file
+proftpd-pgsql: devel::lang:sql, filetransfer::ftp, interface::daemon, network::server, protocol::ftp, protocol::ssl, role::program, security::authentication, works-with::db, works-with::file
+proj: field::mathematics, role::program, scope::utility
+proj-ps-doc: field::mathematics, made-of::data:postscript, role::documentation
+projectcenter: devel::ide, devel::lang:objc, implemented-in::objc, suite::gnustep
+projectcenter.app: implemented-in::objc, role::program, suite::gnustep, uitoolkit::gnustep
+projectmanager.app: devel::editor, devel::ide, devel::ui-builder, implemented-in::objc, interface::x11, role::program, suite::gnustep, uitoolkit::gnustep, x11::application
+prokyon3: devel::lang:sql, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::qt, use::editing, use::organizing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, works-with::db, x11::application
+prolog-el: devel::lang:prolog, implemented-in::lisp, interface::commandline, role::plugin, suite::emacs, use::editing, works-with::software:source
+prom-mew: interface::commandline, mail::notification, role::plugin, security::log-analyzer, suite::emacs, works-with::mail
+pronto: implemented-in::perl, interface::x11, mail::pop, mail::user-agent, network::client, protocol::pop3, role::program, uitoolkit::gtk, works-with::mail, x11::application
+proofgeneral: field::mathematics, interface::commandline, role::plugin, special::not-yet-tagged, special::not-yet-tagged::p, suite::emacs, use::checking
+proofgeneral-coq: field::mathematics, interface::commandline, role::plugin, special::not-yet-tagged, special::not-yet-tagged::p, suite::emacs, use::checking
+proofgeneral-doc: field::mathematics, made-of::data:html, role::documentation, suite::emacs, use::checking
+proofgeneral-misc: field::mathematics, interface::commandline, role::plugin, special::not-yet-tagged, special::not-yet-tagged::p, suite::emacs, use::checking
+propaganda-debian: interface::x11, role::app-data, suite::debian, x11::application, x11::theme
+propsel: interface::x11, role::program, scope::utility, x11::application
+prospect: admin::benchmarking, admin::kernel, devel::profiler, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, use::monitor
+prosper: made-of::data:postscript, made-of::data:tex, office::presentation, special::completely-tagged, special::not-yet-tagged, special::not-yet-tagged::p, use::TODO, use::editing, use::typesetting, works-with-format::jpg, works-with-format::pdf, works-with-format::postscript, works-with-format::tex, works-with::font, works-with::image, works-with::image:raster, works-with::image:vector, works-with::text
+protoize: devel::lang:c, interface::commandline, role::program, scope::utility, use::converting, works-with::software:source
+provami: field::TODO, implemented-in::python, interface::x11, role::program, uitoolkit::wxwidgets, use::viewing, x11::application
+proxychains: implemented-in::c, interface::commandline, network::vpn, use::proxying
+proxycheck: interface::commandline, mail::filters, network::scanner, role::program, scope::utility, use::checking
+proxymngr: interface::daemon, network::server, role::program, use::proxying, x11::xserver
+prozgui: interface::x11, network::client, role::program, uitoolkit::TODO, use::downloading, x11::application
+prozilla: use::downloading
+ps2eps: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, use::converting, works-with-format::postscript, works-with::text
+psad: admin::monitoring, interface::daemon, network::firewall, network::server, role::program, security::firewall, security::ids, use::checking
+pscan: devel::lang:c, devel::testing-qa, implemented-in::c, interface::commandline, role::program, scope::utility, use::checking, works-with::software:source
+psemu-input-omnijoy: hardware::input, hardware::input:joystick, hardware::input:keyboard, uitoolkit::gtk
+psemu-input-padjoy: uitoolkit::gtk
+psemu-sound-oss: uitoolkit::gtk
+psemu-video-x11: uitoolkit::gtk
+psfontmgr: admin::configuring, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, use::configuring, works-with::font
+psgml: interface::commandline, role::plugin, suite::emacs, use::editing, works-with-format::sgml, works-with::text
+psh: implemented-in::perl, interface::shell, role::program, scope::utility, use::login
+psi: interface::x11, network::client, protocol::jabber, protocol::msn-messenger, protocol::oscar, role::program, uitoolkit::qt, use::chatting, x11::application
+psi-translations: culture::czech, culture::dutch, culture::finnish, culture::french, culture::german, culture::polish, culture::russian, culture::slovak, culture::spanish, interface::x11, protocol::jabber, protocol::msn-messenger, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::qt, use::chatting, x11::application
+psi3: implemented-in::fortran
+psignifit: field::statistics, implemented-in::c, interface::commandline, role::program
+psk31lx: hardware::hamradio, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses
+pslib-dev: devel::library, role::devel-lib, works-with-format::postscript, works-with::text
+pslib1: devel::lang:c, devel::library, implemented-in::c, role::shared-lib, works-with-format::postscript, works-with::text
+psmisc: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, works-with::software:running
+psp: devel::lang:perl, implemented-in::perl, web::scripting
+psp-doc: devel::lang:perl, made-of::data:html, made-of::data:tex, role::documentation, web::scripting
+psp-parser: devel::lang:perl, implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, web::scripting, works-with-format::html, works-with::text
+psp-samples: devel::examples, implemented-in::perl, role::documentation, web::scripting
+psp-samples-src: devel::examples, implemented-in::perl, role::documentation, web::scripting
+pspp: field::mathematics, interface::commandline, role::program, scope::utility, uitoolkit::ncurses
+pspresent: interface::x11, role::program, scope::utility, use::viewing, works-with-format::postscript, works-with::text, x11::application
+psrip: interface::commandline, role::program, scope::utility, use::editing, works-with-format::postscript, works-with::text
+pstack: devel::debugger, interface::commandline, role::program, scope::utility, works-with::software:running
+pstngw: protocol::voip, uitoolkit::sdl
+pstoedit: implemented-in::c++, interface::commandline, role::program, scope::utility, use::converting, use::editing, works-with-format::pdf, works-with-format::postscript, works-with::dtp, works-with::image, works-with::image:vector, works-with::text
+pstotext: implemented-in::c, interface::commandline, role::program, scope::utility, use::converting, works-with-format::pdf, works-with-format::postscript, works-with::text
+psutils: implemented-in::c, implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, works-with-format::postscript, works-with::text
+pterm: interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::terminal
+ptex-base: culture::japanese, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, use::editing, works-with-format::tex, works-with::text
+ptex-bin: culture::japanese, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, use::editing, works-with-format::tex, works-with::text
+ptex-buildsupport: culture::japanese, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, use::editing, works-with-format::tex, works-with::text
+ptex-jisfonts: culture::japanese, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, use::editing, works-with-format::tex, works-with::text
+ptex-jtex: special::not-yet-tagged, special::not-yet-tagged::p, use::editing, works-with-format::tex, works-with::text
+pth-dbg: devel::library, suite::gnu
+ptknettools: implemented-in::perl, interface::x11, network::client, protocol::dns, role::program, uitoolkit::tk, x11::application
+ptunnel: interface::commandline, protocol::ip, protocol::tcp, role::program, scope::utility, use::proxying, use::transmission, works-with::network-traffic
+publib-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib
+pubtal: filetransfer::ftp, implemented-in::python, interface::commandline, protocol::ftp, role::program, scope::application, use::synchronizing, use::text-formatting, web::blog, web::cms, works-with-format::html, works-with-format::plaintext, works-with-format::xml, works-with::file, works-with::text
+puf: interface::commandline, network::client, protocol::http, role::program, use::downloading
+pugs: uitoolkit::ncurses
+pugs-doc: role::documentation
+pulseaudio: interface::daemon, network::client, network::server, protocol::tcp, role::program, works-with::audio
+pulseaudio-esound-compat: devel::library, implemented-in::c, role::plugin, works-with::audio
+pump: admin::boot, interface::daemon, network::client, network::configuration, protocol::dhcp, role::program
+pup: hardware::printer, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::printing, x11::application
+puppet: admin::automation, admin::configuring, admin::package-management, admin::user-management, implemented-in::ruby, interface::commandline, interface::daemon, network::client, role::program, works-with::file, works-with::software:package, works-with::software:running
+pure-ftpd: filetransfer::ftp, interface::daemon, network::server, protocol::ftp, protocol::ssl, role::program, works-with::file
+pure-ftpd-common: filetransfer::ftp, interface::daemon, protocol::ftp, protocol::ssl, role::app-data, special::auto-inst-parts, works-with::file
+pure-ftpd-ldap: filetransfer::ftp, interface::daemon, network::server, protocol::ftp, protocol::ldap, protocol::ssl, role::program, security::authentication, works-with::db, works-with::file
+pure-ftpd-mysql: devel::lang:sql, filetransfer::ftp, interface::daemon, network::server, protocol::ftp, protocol::ssl, role::program, security::authentication, works-with::db, works-with::file
+pure-ftpd-postgresql: devel::lang:sql, filetransfer::ftp, interface::daemon, network::server, protocol::ftp, protocol::ssl, role::program, security::authentication, works-with::db, works-with::file
+puredata: interface::x11, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::tk, use::editing, works-with::audio, works-with::image, works-with::image:raster, x11::application
+purity: game::toys, interface::commandline, role::program, use::gameplaying
+purity-off: game::toys, interface::commandline, role::app-data, use::gameplaying
+putty: interface::x11, network::client, protocol::ssh, role::program, uitoolkit::gtk, use::login, x11::terminal
+putty-tools: admin::file-distribution, admin::login, filetransfer::ftp, filetransfer::sftp, interface::shell, network::client, protocol::sftp, protocol::ssh, protocol::ssl, role::program, use::downloading, use::login, x11::application
+pv: interface::commandline, role::program, scope::utility, use::monitor
+pvm: hardware::emulation, interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::p
+pvm-dev: devel::library, hardware::emulation, interface::daemon, network::server, role::devel-lib
+pvpgn: interface::daemon, network::server, use::entertaining, use::gameplaying
+pwc-source: admin::kernel, hardware::camera, implemented-in::c, role::source
+pwgen: interface::commandline, role::program, scope::utility, security::authentication
+pwm: interface::x11, role::program, x11::window-manager
+pwsafe: uitoolkit::ncurses
+pxe: admin::boot, interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::p
+pxlib-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+pxlib1: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+pybliographer: implemented-in::python, interface::x11, role::program, suite::gnome, use::converting, use::editing, use::searching, works-with-format::bib, works-with-format::tex, works-with::text, x11::application
+pyblosxom: implemented-in::python, interface::web, protocol::http, role::program, scope::utility, use::editing, web::blog, works-with-format::xml, works-with-format::xml:rss
+pyca: special::not-yet-tagged, special::not-yet-tagged::p
+pycaml: devel::lang:ocaml, devel::lang:python, devel::library, implemented-in::ocaml, role::devel-lib
+pychecker: devel::debugger, devel::lang:python, implemented-in::python, interface::commandline, role::program, scope::utility, use::checking, works-with::software:source
+pyching: game::toys, implemented-in::python, interface::x11, x11::application
+pycmail: implemented-in::python, mail::delivery-agent, mail::filters, use::checking, works-with::mail
+pycocuma: implemented-in::python, interface::x11, role::program, scope::application, uitoolkit::tk, use::organizing, works-with-format::special:todo, works-with::pim, x11::application
+pydance: game::arcade, implemented-in::python, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+pydance-music: game::arcade, implemented-in::python, interface::x11, role::app-data, special::auto-inst-parts, uitoolkit::sdl, use::gameplaying, x11::application
+pydb: devel::debugger, devel::lang:python, implemented-in::python, interface::commandline, use::checking, works-with::software:source
+pydf: implemented-in::python, interface::commandline, role::program, scope::utility, use::monitor, works-with::file
+pydict: culture::TODO, culture::chinese, implemented-in::python, interface::commandline, interface::x11, made-of::data:dictionary, role::app-data, uitoolkit::gtk, use::converting, works-with::dictionary, x11::application
+pyftpd: filetransfer::ftp, implemented-in::python, interface::daemon, network::server, protocol::ftp, role::program, works-with::file
+pyg: implemented-in::python, interface::daemon, network::server, protocol::nntp, protocol::smtp, role::program, use::converting, works-with::mail
+pygfarm: implemented-in::perl, role::plugin, special::not-yet-tagged, special::not-yet-tagged::p, works-with::dictionary
+pygopherd: implemented-in::python, interface::daemon, network::server, network::service, role::program, special::not-yet-tagged, special::not-yet-tagged::p, works-with::file
+pylint: devel::debugger, devel::lang:python, implemented-in::python, interface::commandline, role::metapackage, special::not-yet-tagged, special::not-yet-tagged::p, use::checking, works-with::software:source
+pylint-common: devel::debugger, devel::lang:python, implemented-in::lisp, interface::commandline, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, suite::emacs, use::checking, works-with::software:source
+pylint-test: devel::debugger, devel::lang:python, devel::testing-qa, implemented-in::python, interface::commandline, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+pymacs: devel::lang:lisp, devel::lang:python, implemented-in::python, role::metapackage, role::plugin, special::not-yet-tagged, special::not-yet-tagged::p, suite::emacs
+pymacs-elisp: devel::lang:lisp, devel::lang:python, implemented-in::lisp, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, suite::emacs
+pymol: field::biology, field::chemistry, implemented-in::python, interface::x11, role::program, scope::utility, uitoolkit::tk, use::viewing, works-with::image, x11::application
+pympd: implemented-in::python, interface::x11, network::client, role::program, scope::application, scope::utility, sound::player, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+pymsnt: implemented-in::python, network::service, protocol::jabber, protocol::msn-messenger, use::chatting
+pyopenssl-doc: devel::doc, devel::lang:python, made-of::data:html, made-of::data:postscript, protocol::ssl, role::documentation, security::cryptography
+pypanel: implemented-in::perl, interface::x11, role::program, uitoolkit::xlib, x11::applet
+pypar2: admin::forensics, implemented-in::python, interface::x11, role::program, scope::utility, uitoolkit::gtk, works-with::file, x11::application
+pype: devel::debugger, devel::editor, devel::lang:python, devel::ui-builder, implemented-in::python, interface::x11, role::program, suite::special:not-applicable, uitoolkit::wxwidgets, use::editing, works-with::software:source, works-with::text, x11::application
+pyqt-tools: devel::i18n, devel::lang:python, devel::ui-builder, implemented-in::c++, interface::commandline, role::program, scope::utility, use::converting
+pyrad: devel::lang:python, implemented-in::python, protocol::radius, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+pyrex-mode: devel::code-generator, devel::lang:c, devel::lang:c++, devel::lang:python, devel::prettyprint, implemented-in::lisp, role::plugin, suite::emacs
+pyrite-publisher: hardware::embedded, implemented-in::python, interface::commandline, interface::x11, role::program, scope::utility, uitoolkit::wxwidgets, use::converting, works-with-format::html, works-with::text, x11::application
+pyro: devel::lang:python, implemented-in::python, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+pyro-doc: devel::doc, devel::lang:python, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p
+pyro-examples: devel::examples, devel::lang:python, implemented-in::python, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p
+pyro-gui: devel::lang:python, implemented-in::python, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::tk, uitoolkit::wxwidgets, x11::application
+pyroman: admin::configuring, implemented-in::python, interface::commandline, network::firewall, role::program, security::firewall, use::configuring, works-with::network-traffic
+pyslide: implemented-in::python, interface::x11, office::presentation, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::sdl, use::viewing, works-with-format::xml, x11::application
+pysol: game::card, implemented-in::python, interface::x11, role::program, uitoolkit::tk, use::gameplaying, x11::application
+pysol-cardsets: game::card, role::app-data
+pysol-sound-server: game::card, implemented-in::python, interface::x11, network::server, role::plugin, role::program, sound::player, uitoolkit::sdl, use::gameplaying, works-with::audio, x11::application
+pysol-sounds: game::card, made-of::TODO, role::app-data, use::gameplaying
+python: devel::interpreter, devel::lang:python, implemented-in::python, interface::commandline, role::metapackage, role::program, scope::utility, special::meta
+python-2play: devel::lang:python, devel::library, game::arcade, implemented-in::python, role::app-data
+python-4suite: devel::lang:python, devel::library, implemented-in::python, role::metapackage, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::xml:rss, works-with-format::xml:xslt
+python-4suite-common: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::xml
+python-4suite-doc: devel::doc, devel::examples, devel::lang:python, made-of::data:html, made-of::data:xml, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p
+python-4suite-server: devel::lang:python, implemented-in::python, interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::p, web::server, works-with-format::xml
+python-adns: devel::lang:python, devel::library, implemented-in::python, protocol::dns
+python-aima: devel::lang:python, devel::library
+python-albatross: devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, web::scripting
+python-albatross-common: devel::lang:python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, web::scripting
+python-albatross-doc: devel::doc, devel::lang:python, made-of::data:pdf, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p, web::scripting
+python-all-dev: role::dummy
+python-alsaaudio: devel::lang:python, implemented-in::c, implemented-in::python, role::shared-lib, works-with::audio
+python-apsw: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python-apt: devel::lang:python, devel::library, implemented-in::python, role::shared-lib, suite::debian, works-with::software:package
+python-avahi: devel::library, implemented-in::c, implemented-in::python, protocol::dns, role::shared-lib
+python-beautifulsoup: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, use::checking, works-with-format::html, works-with::text
+python-bibtex: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::tex, works-with::text
+python-biggles: devel::lang:python, devel::library, implemented-in::python, works-with-format::tex, works-with::image, works-with::image:vector, works-with::text
+python-biopython: devel::lang:python, devel::library, field::biology, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p
+python-biopython-doc: devel::doc, devel::lang:python, field::biology, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p
+python-biopython-martel: devel::lang:python, devel::library, field::biology, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, works-with::text
+python-biopython-sql: devel::lang:python, devel::lang:sql, devel::library, field::biology, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python-bluez: implemented-in::c, role::shared-lib
+python-bsddb3: devel::lang:python, devel::library, implemented-in::python, role::metapackage, works-with::db
+python-bsddb3-doc: devel::doc, devel::lang:python, role::documentation, works-with::db
+python-buffy: devel::lang:python, devel::library, implemented-in::python, mail::notification, role::app-data, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python-cairo: devel::lang:python, devel::library, implemented-in::python, role::shared-lib, works-with::image:vector
+python-cairo-dev: role::devel-lib
+python-cdb: devel::lang:python, devel::library
+python-cddb: devel::lang:python, devel::library, hardware::storage, hardware::storage:cd, implemented-in::python, role::app-data, role::shared-lib, works-with::audio
+python-celementtree: devel::lang:python, devel::library, implemented-in::c, implemented-in::python, role::shared-lib, works-with-format::xml
+python-central: admin::automation, admin::package-management, devel::buildtools, devel::lang:python, implemented-in::python, interface::commandline, role::program, scope::utility, works-with::software:package, works-with::software:source
+python-cerealizer: devel::lang:python, devel::library, role::devel-lib, use::storing
+python-chardet: devel::lang:python, devel::library, implemented-in::python, role::devel-lib, role::shared-lib, works-with-format::plaintext, works-with::text
+python-cheetah: devel::code-generator, devel::lang:python, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, web::scripting
+python-cherrypy: devel::lang:python, devel::web
+python-chm: role::shared-lib
+python-cjkcodecs: culture::chinese, culture::japanese, culture::korean, culture::taiwanese, devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p
+python-clamav: special::not-yet-tagged, special::not-yet-tagged::p
+python-clearsilver: devel::lang:perl, devel::lang:python, devel::library, devel::web, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p, web::cgi, works-with-format::html, works-with::text
+python-clientcookie: devel::lang:python, devel::library, implemented-in::python, protocol::http, special::not-yet-tagged, special::not-yet-tagged::p
+python-comedilib: devel::lang:python, devel::library, implemented-in::python, role::app-data, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python-configlet: devel::lang:python, devel::library, role::metapackage, suite::gnome, uitoolkit::gtk, use::configuring
+python-constraint: devel::lang:python, field::mathematics, implemented-in::python
+python-crack: devel::lang:python, devel::library, implemented-in::python, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::p
+python-crypto: devel::lang:python, devel::library, implemented-in::python, role::shared-lib, security::cryptography
+python-ctypes: devel::lang:c, devel::lang:python, devel::library, implemented-in::python, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python-cubictemp: implemented-in::python, role::program
+python-cxx: devel::lang:python, devel::library, implemented-in::c++, special::not-yet-tagged, special::not-yet-tagged::p
+python-cxx-dev: devel::lang:c++, devel::lang:python, devel::library, implemented-in::python, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python-davlib: devel::lang:python, devel::library, implemented-in::python, protocol::webdav, role::app-data
+python-dballe: devel::lang:python, devel::library, field::TODO, implemented-in::c++, role::devel-lib
+python-dbus: devel::lang:python, implemented-in::python, role::shared-lib
+python-dcop: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, suite::kde, uitoolkit::qt
+python-debian: devel::debian, devel::lang:python, devel::library, devel::packaging, implemented-in::python, role::devel-lib, suite::debian
+python-dev: devel::lang:python, devel::library, implemented-in::python, role::devel-lib
+python-dhm: devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, web::cgi, works-with::db
+python-diacanvas2: devel::lang:python, devel::library, implemented-in::python, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python-django: devel::lang:python, devel::web, implemented-in::python, interface::commandline, interface::web, protocol::http, role::devel-lib, scope::application, web::TODO
+python-dns: devel::lang:python, devel::library, implemented-in::python, protocol::dns, role::app-data
+python-doc: devel::doc, devel::lang:python, made-of::data:html, made-of::data:info, role::documentation
+python-docutils: devel::docsystem, devel::lang:python, implemented-in::python, interface::commandline, role::program, special::not-yet-tagged, special::not-yet-tagged::p, use::text-formatting, works-with-format::html, works-with-format::tex, works-with-format::xml, works-with::text
+python-dsv: devel::lang:python, implemented-in::python, role::source, works-with::db, works-with::spreadsheet, works-with::text
+python-ecasound2.2: devel::lang:python, devel::library, implemented-in::python, role::app-data, sound::midi
+python-editobj: devel::lang:python, devel::library, implemented-in::python, role::app-data, uitoolkit::tk, use::editing
+python-egenix-mx-base-dev: devel::lang:c, devel::lang:python, devel::library, implemented-in::c, role::devel-lib
+python-egenix-mxdatetime: devel::lang:python, devel::library, implemented-in::python, role::shared-lib, use::timekeeping
+python-egenix-mxproxy: devel::lang:python, devel::library, implemented-in::python
+python-egenix-mxqueue: devel::lang:python, devel::library, implemented-in::python
+python-egenix-mxstack: devel::lang:python, devel::library, implemented-in::python
+python-egenix-mxtexttools: devel::lang:python, devel::library, implemented-in::python, works-with::text
+python-egenix-mxtools: devel::lang:python, devel::library, implemented-in::python, role::shared-lib
+python-elementtree: devel::lang:python, devel::library, implemented-in::python, works-with-format::xml
+python-elementtree-doc: devel::doc, devel::lang:python, made-of::data:html, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p
+python-empy-doc: made-of::data:html, role::documentation
+python-enchant: devel::lang:python, devel::library, implemented-in::c, implemented-in::python, role::devel-lib, role::shared-lib, use::checking, works-with::text
+python-epydoc: devel::docsystem, devel::lang:python, implemented-in::python, interface::commandline, interface::x11, role::documentation, role::program, scope::utility, uitoolkit::tk, x11::application
+python-eunuchs: devel::lang:python, devel::library, implemented-in::python
+python-examples: devel::doc, devel::examples, devel::lang:python, devel::library, implemented-in::python, role::documentation
+python-excelerator: devel::lang:python, devel::library, implemented-in::python, interface::commandline, role::devel-lib, role::shared-lib, scope::utility, works-with-format::html, works-with-format::plaintext, works-with::spreadsheet, works-with::text
+python-extclass: devel::lang:c, devel::lang:c++, devel::lang:python, devel::library, implemented-in::python
+python-eyed3: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with-format::mp3, works-with::audio
+python-f2py: devel::lang:fortran, devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p
+python-f2py-doc: devel::doc, devel::lang:fortran, devel::lang:python, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p
+python-fam: special::not-yet-tagged, special::not-yet-tagged::p
+python-feedparser: devel::lang:python, devel::web, implemented-in::python, network::client, protocol::http, role::devel-lib, role::shared-lib, role::source, use::downloading, works-with-format::html, works-with-format::xml, works-with-format::xml:rss
+python-fixedpoint: devel::lang:python, devel::library, field::mathematics, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p
+python-flac: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::audio
+python-foomatic: devel::lang:python, devel::library, hardware::printer, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, use::printing
+python-forgethtml: devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::html, works-with::text
+python-forgetsql: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python-fuse: admin::filesystem, devel::lang:python, devel::library, implemented-in::python, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python-gadfly: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, works-with::db
+python-gammu: devel::lang:python, devel::library, hardware::TODO, hardware::embedded, hardware::modem, implemented-in::c, implemented-in::python, role::devel-lib, role::shared-lib, use::synchronizing, use::transmission, works-with::pim
+python-gammu-doc: devel::doc, devel::lang:python, hardware::TODO, hardware::embedded, hardware::modem, role::documentation, use::synchronizing, use::transmission, works-with-format::TODO, works-with-format::ldif, works-with::pim
+python-gd: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with::image, works-with::image:raster
+python-gdal: devel::lang:python, devel::library, field::geography, implemented-in::python, role::app-data
+python-gdbm: devel::lang:python, devel::library, implemented-in::python, role::shared-lib, works-with::db
+python-gdchart: devel::lang:python, devel::library, implemented-in::python, role::app-data, x11::library
+python-gdchart2: devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, x11::library
+python-gdchart2-doc: devel::doc, devel::examples, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p, x11::library
+python-gdk-imlib-1.2: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::gtk
+python-gendoc: devel::docsystem, devel::lang:python, implemented-in::python, interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with::software:source, works-with::text
+python-genetic: devel::lang:python, devel::library, field::mathematics, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python-geoip: devel::lang:python, devel::library, implemented-in::python, role::app-data, role::devel-lib
+python-glade-1.2: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::gtk
+python-glade2: devel::lang:python, devel::library, implemented-in::python, interface::x11, role::shared-lib, uitoolkit::gtk
+python-gmenu: suite::gnome
+python-gnome-1.2: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, suite::gnome, uitoolkit::gtk
+python-gnome2: devel::lang:python, devel::library, implemented-in::python, role::shared-lib, suite::gnome, uitoolkit::gtk
+python-gnome2-desktop: devel::lang:python, implemented-in::python, role::shared-lib, suite::gnome, uitoolkit::gtk
+python-gnome2-dev: devel::lang:python, devel::library, implemented-in::python, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p, suite::gnome, uitoolkit::gtk
+python-gnome2-extras: devel::lang:python, implemented-in::python, interface::x11, role::shared-lib, suite::gnome, uitoolkit::gtk
+python-gnome2-extras-dev: devel::library, role::devel-lib, uitoolkit::gtk
+python-gnome2-extras-doc: role::documentation, suite::gnome
+python-gnupginterface: devel::lang:python, devel::library, implemented-in::python, role::app-data, security::cryptography
+python-gnuplot: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with::image, works-with::image:vector
+python-gnuradio: devel::lang:python, devel::library, hardware::hamradio, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python-gpib: devel::lang:python, devel::library, implemented-in::python, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python-gpod: implemented-in::python, role::shared-lib
+python-gst: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, use::playing
+python-gst0.10: implemented-in::python, role::shared-lib, scope::suite, use::playing, works-with::audio
+python-gtk-1.2: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::gtk
+python-gtk2: devel::lang:python, devel::library, implemented-in::python, interface::x11, role::shared-lib, uitoolkit::gtk
+python-gtk2-dev: devel::lang:python, devel::library, implemented-in::python, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::gtk
+python-gtk2-doc: devel::doc, devel::lang:python, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::gtk
+python-gtk2-tutorial: devel::doc, devel::lang:python, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::gtk
+python-gtkextra: devel::lang:python, devel::library, implemented-in::python, role::app-data, uitoolkit::gtk
+python-gtkmvc: devel::lang:python, devel::library, devel::ui-builder, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python-happydoc: devel::docsystem, devel::lang:python, implemented-in::python, interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with::software:source, works-with::text
+python-happydoc-doc: devel::doc, devel::docsystem, devel::lang:python, made-of::data:html, role::documentation, use::converting, works-with-format::html, works-with::software:source, works-with::text
+python-hid: devel::lang:python, devel::library, hardware::usb, implemented-in::python, role::app-data, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python-hip: devel::lang:python, devel::library, works-with-format::mp3, works-with::audio
+python-htmlgen: devel::lang:python, devel::library, implemented-in::python, interface::commandline, role::devel-lib, scope::utility, works-with-format::html, works-with::text
+python-htmltmpl: devel::lang:python, devel::library, implemented-in::python, web::scripting, works-with-format::html, works-with::text
+python-iconvcodec: devel::lang:python, devel::library, implemented-in::python, role::shared-lib, use::converting, works-with::text, works-with::unicode
+python-id3: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with-format::mp3, works-with::audio
+python-id3lib: devel::lang:python, devel::library, implemented-in::python, role::metapackage, works-with-format::mp3, works-with::audio
+python-ieee1284: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python-imaging: devel::lang:python, devel::library, implemented-in::python, role::shared-lib, works-with::image, works-with::image:raster
+python-imaging-doc: devel::doc, devel::lang:python, role::documentation, works-with::image, works-with::image:raster
+python-imaging-doc-html: devel::doc, devel::lang:python, made-of::data:html, role::documentation, works-with::image, works-with::image:raster
+python-imaging-doc-pdf: devel::doc, devel::lang:python, made-of::data:pdf, role::documentation, works-with::image, works-with::image:raster
+python-imaging-sane: devel::lang:python, devel::library, implemented-in::python, role::documentation, works-with::image, works-with::image:raster
+python-imaging-tk: devel::lang:python, devel::library, implemented-in::python, role::shared-lib, uitoolkit::tk, works-with::image, works-with::image:raster
+python-ipy: devel::library, implemented-in::python, role::shared-lib
+python-irclib: devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, use::chatting
+python-jabber: devel::lang:python, devel::library, implemented-in::python, protocol::jabber, protocol::msn-messenger, protocol::oscar, use::chatting
+python-japanese-codecs: culture::japanese, devel::lang:python, devel::library, implemented-in::python, works-with::text, works-with::unicode
+python-jinja: devel::code-generator, devel::lang:python, devel::library, implemented-in::python, role::devel-lib, role::shared-lib, works-with::text
+python-jtoolkit: devel::lang:python, devel::web
+python-kde3: special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::qt
+python-kde3-dev: role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python-kde3-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::p
+python-kid: devel::lang:python, implemented-in::python, role::devel-lib, role::program, use::TODO, works-with-format::xml
+python-kinterbasdb: devel::lang:python, devel::library, implemented-in::python, works-with::db
+python-kiwi: devel::lang:python, devel::library, implemented-in::python, uitoolkit::gtk
+python-kjbuckets: devel::lang:python, devel::library, implemented-in::python, works-with::image, works-with::image:vector
+python-ldap: devel::lang:python, devel::library, implemented-in::c, implemented-in::python, protocol::ldap, role::shared-lib
+python-ldap-doc: devel::doc, devel::lang:python, made-of::data:html, role::documentation
+python-ldaptor: devel::lang:python, devel::library, implemented-in::python, protocol::ldap, works-with::db
+python-libgmail: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::mail
+python-libxml2: devel::lang:python, devel::library, implemented-in::python, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::xml
+python-libxslt1: devel::lang:python, devel::library, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::xml:xslt
+python-logilab-astng: devel::lang:python, implemented-in::python
+python-logilab-common: devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python-logilab-common-test: devel::lang:python, devel::testing-qa, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python-m2crypto: devel::lang:python, devel::library, protocol::ssl
+python-mako: devel::code-generator, devel::lang:python, devel::library, implemented-in::python, role::devel-lib, role::shared-lib, works-with::text
+python-mapscript: devel::lang:python, devel::library, field::geography, implemented-in::python, role::app-data, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python-matplotlib: implemented-in::python, interface::x11, uitoolkit::wxwindows, x11::application
+python-matplotlib-doc: role::documentation
+python-maxdb: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db, x11::application
+python-maxdb-loader: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db, x11::application
+python-medusa: devel::lang:python, devel::library, implemented-in::python, network::service, special::not-yet-tagged, special::not-yet-tagged::p
+python-metakit: devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python-minimal: admin::boot, devel::interpreter, implemented-in::python, role::program, scope::utility
+python-mode: devel::lang:python, implemented-in::lisp, interface::commandline, role::plugin, special::not-yet-tagged, special::not-yet-tagged::p, suite::emacs
+python-modplug: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::audio
+python-moinmoin: devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, web::wiki
+python-mpdclient: devel::lang:python, devel::library, implemented-in::python, role::app-data, sound::player, special::not-yet-tagged, special::not-yet-tagged::p
+python-mpi: devel::lang:python, devel::library, implemented-in::python, role::app-data
+python-mpz: devel::lang:python, devel::library, field::mathematics, implemented-in::python, role::metapackage
+python-musicbrainz: devel::lang:python, devel::library, hardware::storage, hardware::storage:cd, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+python-mutagen: devel::lang:python, implemented-in::python, role::devel-lib, use::editing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+python-mysqldb: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, works-with::db
+python-nautilus: special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::gtk
+python-netcdf: devel::lang:python, devel::library, implemented-in::python, role::app-data
+python-networkx: implemented-in::python
+python-nevow: devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, web::scripting
+python-newt: devel::lang:python, devel::library, implemented-in::python, interface::text-mode, role::app-data
+python-numarray: devel::lang:python, devel::library, field::mathematics, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p
+python-numarray-doc: devel::doc, devel::lang:python, field::mathematics, made-of::data:pdf, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p
+python-numarray-ext: devel::lang:python, devel::library, field::mathematics, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p
+python-numeric: devel::lang:python, devel::library, field::mathematics, implemented-in::python, role::shared-lib
+python-numeric-ext: devel::lang:python, devel::library, field::mathematics, implemented-in::python, role::metapackage
+python-numeric-tutorial: devel::doc, devel::lang:python, field::mathematics, role::documentation
+python-numpy: devel::lang:python, devel::library, field::mathematics, role::devel-lib
+python-omniorb2: devel::lang:python, devel::library, implemented-in::python, protocol::corba, special::not-yet-tagged, special::not-yet-tagged::p
+python-openal: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::audio
+python-opengl: devel::lang:python, devel::library, implemented-in::python, x11::library
+python-optcomplete: devel::lang:python, devel::library, implemented-in::python, interface::commandline, special::not-yet-tagged, special::not-yet-tagged::p
+python-optik: devel::lang:python, devel::library, implemented-in::python, interface::commandline, role::metapackage
+python-orbit: devel::lang:python, devel::library, implemented-in::python, protocol::corba, role::metapackage
+python-orbit-dev: devel::lang:python, devel::library, implemented-in::python, protocol::corba, role::devel-lib
+python-osd: devel::lang:python, devel::library, implemented-in::python, x11::library
+python-oss: devel::lang:python, devel::library, implemented-in::python, works-with::audio
+python-pam: devel::lang:python, devel::library, implemented-in::python, security::authentication
+python-parallel: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python-paramiko: devel::lang:python, protocol::ssh
+python-parted: devel::lang:python, devel::library
+python-paste: devel::lang:python, devel::library, devel::web, implemented-in::python, role::devel-lib, role::shared-lib
+python-pastedeploy: devel::lang:python, devel::library, implemented-in::python, role::devel-lib, role::shared-lib
+python-pastescript: devel::lang:python, devel::library, implemented-in::python, role::devel-lib, role::shared-lib
+python-pastewebkit: devel::lang:python, devel::library, implemented-in::python, role::devel-lib, role::shared-lib
+python-pcgi: devel::lang:python, devel::library
+python-pexpect: devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, works-with::software:running
+python-pgsql: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, works-with::db
+python-phidgets: devel::lang:python, devel::library, hardware::usb, implemented-in::python, role::app-data, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python-pisock: devel::lang:python, devel::library, hardware::embedded, implemented-in::python, role::app-data
+python-plplot: devel::lang:python, devel::library, implemented-in::python, role::app-data, uitoolkit::gtk, works-with::image, works-with::image:vector
+python-pmock: devel::lang:python, devel::library, devel::testing-qa, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p
+python-pmw: devel::lang:python, devel::library, implemented-in::python, role::shared-lib, uitoolkit::tk
+python-pmw-doc: devel::doc, devel::lang:python, role::documentation, uitoolkit::tk
+python-poker2d: uitoolkit::gtk
+python-popy: devel::lang:python, devel::lang:sql, devel::library, implemented-in::c, role::metapackage, works-with::db
+python-pqueue: devel::lang:python, devel::library, implemented-in::c, role::app-data
+python-profiler: special::not-yet-tagged, special::not-yet-tagged::p
+python-psyco: devel::compiler, devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, works-with::spreadsheet
+python-psyco-doc: devel::compiler, devel::doc, devel::lang:python, made-of::data:html, made-of::data:postscript, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p
+python-psycopg: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, works-with::db
+python-pyao: devel::lang:python, devel::library, implemented-in::python, role::app-data, role::shared-lib, works-with::audio
+python-pychart: special::not-yet-tagged, special::not-yet-tagged::p
+python-pycurl: devel::lang:python, devel::library, filetransfer::ftp, filetransfer::http, implemented-in::c, implemented-in::python, network::client, protocol::ftp, protocol::http, protocol::ssl, role::devel-lib, role::shared-lib, use::downloading
+python-pyepl: devel::lang:python, field::special:todo, hardware::input, hardware::input:keyboard, hardware::input:mouse, hardware::special:todo, hardware::video, implemented-in::c, implemented-in::python, interface::commandline, interface::special:not-applicable, interface::x11, office::presentation, role::devel-lib, role::program, scope::suite, sound::player, use::monitor, use::playing, use::viewing, works-with::people, x11::application
+python-pyepl-common: role::app-data
+python-pygame: devel::lang:python, devel::library, implemented-in::python, role::shared-lib, sound::mixer, sound::player, uitoolkit::sdl, works-with::audio, works-with::video
+python-pygments: devel::lang:python, devel::library, implemented-in::python, interface::commandline, role::devel-lib, role::shared-lib, use::text-formatting, works-with::text
+python-pygraphviz: implemented-in::c, implemented-in::python
+python-pygresql: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, works-with::db
+python-pylibacl: admin::user-management, devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p
+python-pylons: devel::lang:python, devel::web
+python-pymad: devel::lang:python, devel::library, implemented-in::python, role::app-data, role::shared-lib, works-with-format::mp3, works-with::audio
+python-pymetar: devel::lang:python, devel::library, implemented-in::python, interface::commandline, role::app-data, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p
+python-pyode: devel::lang:python, implemented-in::python, role::devel-lib, role::source
+python-pyode-doc: role::documentation
+python-pyogg: devel::lang:python, devel::library, implemented-in::python, role::app-data, role::shared-lib, works-with-format::oggvorbis, works-with::audio
+python-pyopenssl: devel::lang:python, devel::library, protocol::ssl
+python-pyorbit: devel::lang:python, devel::library, implemented-in::python, protocol::corba
+python-pyorbit-dev: role::devel-lib
+python-pyorbit-omg: devel::lang:python, devel::library, protocol::corba, role::devel-lib
+python-pyparsing: devel::code-generator, devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p
+python-pyrex: devel::code-generator, devel::lang:c, devel::lang:c++, devel::lang:python, devel::library, implemented-in::python
+python-pysnmp-common: devel::lang:python, implemented-in::python, protocol::snmp, role::shared-lib
+python-pysnmp2: devel::lang:python, implemented-in::python, protocol::snmp, role::shared-lib
+python-pysnmp4: devel::lang:python, implemented-in::python, protocol::snmp, role::shared-lib
+python-pysnmp4-doc: devel::doc, devel::lang:python, protocol::snmp, role::documentation
+python-pysnmp4-mibs: devel::lang:python, protocol::snmp, role::app-data
+python-pysqlite2: devel::lang:python, devel::lang:sql, implemented-in::python, role::shared-lib, works-with::db
+python-pythoncard: special::not-yet-tagged, special::not-yet-tagged::p
+python-pyvorbis: devel::lang:python, devel::library, implemented-in::python, role::app-data, role::shared-lib, works-with-format::oggvorbis, works-with::audio
+python-pyvtk: devel::lang:python, devel::library, implemented-in::python, use::viewing
+python-pyx: devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::postscript, works-with::text
+python-pyx-common: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::postscript, works-with::text
+python-pyx-doc: devel::doc, devel::lang:python, made-of::data:pdf, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::postscript, works-with::text
+python-pyxattr: admin::filesystem, devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p
+python-pyxine: devel::lang:python, devel::library, special::not-yet-tagged, special::not-yet-tagged::p
+python-qt-dev: devel::lang:python, devel::library, implemented-in::python, role::devel-lib, uitoolkit::qt
+python-qt3: devel::lang:python, devel::library, implemented-in::c++, role::shared-lib, uitoolkit::qt
+python-qt3-doc: devel::doc, devel::lang:python, role::documentation, uitoolkit::qt
+python-qt3-gl: devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::qt
+python-qtext: devel::lang:python, devel::library, implemented-in::c++, uitoolkit::qt
+python-qwt4: uitoolkit::qt
+python-rdflib: devel::lang:python, devel::library, devel::web, implemented-in::python, role::devel-lib, works-with-format::xml, works-with::software:source
+python-reportlab: devel::lang:python, devel::library, implemented-in::python, works-with-format::pdf, works-with::text
+python-reportlab-doc: devel::doc, devel::lang:python, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::pdf, works-with::text
+python-roman: devel::examples, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python-routes: devel::lang:python, devel::library, implemented-in::python, role::devel-lib, role::shared-lib
+python-rpm: devel::lang:python, devel::library, role::devel-lib, works-with::software:package
+python-rpy: devel::lang:python, devel::lang:r, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p
+python-rpy-doc: devel::doc, devel::examples, devel::lang:python, devel::lang:r, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p
+python-rrd: devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python-scientific: devel::lang:python, devel::library, implemented-in::python, role::app-data
+python-scientific-doc: devel::doc, devel::lang:python, role::documentation
+python-scipy: devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p
+python-scipy-core: devel::lang:c, devel::lang:c++, devel::lang:fortran, devel::lang:python, devel::library, interface::commandline, special::not-yet-tagged, special::not-yet-tagged::p
+python-selinux: implemented-in::python, role::devel-lib, role::shared-lib, role::source
+python-semanage: devel::lang:python, role::devel-lib, security::TODO, works-with::software:running
+python-serial: devel::lang:python, devel::library, implemented-in::python, role::app-data
+python-setuptools: devel::lang:python, implemented-in::python, interface::commandline, role::plugin, use::configuring
+python-simplejson: devel::lang:python, devel::library, implemented-in::python, role::devel-lib, role::shared-lib
+python-simpleparse: devel::code-generator, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python-simpletal: devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, web::scripting
+python-simpy: devel::lang:python, devel::library
+python-simpy-doc: devel::doc, field::physics, made-of::data:html, role::documentation
+python-sip-qt3: devel::lang:c++, devel::lang:python, devel::library, implemented-in::python, role::metapackage, uitoolkit::qt
+python-sip4-dev: devel::lang:c++, devel::lang:python, devel::library, implemented-in::python, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python-sip4-qt3: devel::lang:c++, devel::lang:python, devel::library, implemented-in::python, role::metapackage, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::qt
+python-slang: devel::lang:c, devel::lang:python, devel::library, implemented-in::python, role::app-data
+python-slides: devel::lang:python, devel::library, implemented-in::python, use::viewing
+python-smbpasswd: special::not-yet-tagged, special::not-yet-tagged::p
+python-soappy: devel::lang:python, devel::library, devel::rpc, implemented-in::python, protocol::soap, role::app-data
+python-soya: devel::lang:python, devel::library, implemented-in::c, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::sdl, x11::library
+python-soya-doc: devel::doc, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::sdl, x11::library
+python-sqlalchemy: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::devel-lib, role::shared-lib, works-with::db
+python-sqlalchemy-doc: devel::doc, devel::lang:python, made-of::data:html, role::documentation
+python-sqlite: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, works-with::db
+python-sqlobject: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python-sqlrelay: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, works-with::db
+python-statgrab: special::not-yet-tagged, special::not-yet-tagged::p
+python-stats: devel::lang:python, devel::library, field::statistics, implemented-in::python, role::app-data
+python-subversion: devel::lang:python, devel::library, devel::rcs, role::shared-lib
+python-support: devel::compiler, devel::lang:python, devel::packaging, implemented-in::python, interface::commandline, role::program, scope::utility, works-with::software:source
+python-svn: devel::lang:python, devel::library, devel::rcs, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p
+python-syck: devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p
+python-tables: devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python-tables-doc: devel::doc, made-of::data:html, made-of::data:pdf, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python-tclink: devel::lang:python, devel::library, field::finance, implemented-in::python
+python-tcpwrap: devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p
+python-textile: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, web::wiki
+python-tk: devel::lang:python, devel::library, implemented-in::python, role::shared-lib, uitoolkit::tk
+python-tmda: devel::lang:python, devel::library
+python-tofu: devel::lang:python, devel::library, role::devel-lib
+python-tunepimp: devel::lang:python, devel::library, implemented-in::perl, special::not-yet-tagged, special::not-yet-tagged::p, works-with::audio
+python-turbogears: devel::lang:python, devel::web
+python-twisted: devel::lang:python, devel::library, implemented-in::python, network::service
+python-twisted-bin: role::shared-lib
+python-twisted-conch: devel::lang:python, devel::library, implemented-in::python, network::service
+python-twisted-core: devel::lang:python, implemented-in::python, role::shared-lib
+python-twisted-lore: devel::lang:python, implemented-in::python
+python-twisted-mail: devel::lang:python, devel::library, mail::imap, mail::pop, mail::smtp, protocol::imap, protocol::pop3, protocol::smtp, role::devel-lib, works-with::mail
+python-twisted-web: devel::lang:python, implemented-in::python, role::devel-lib, role::shared-lib, web::appserver, web::server
+python-twisted-words: devel::lang:python, protocol::irc, protocol::jabber, protocol::msn-messenger, protocol::oscar, role::devel-lib, use::chatting
+python-tz: devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p, use::timekeeping
+python-uncertainities: devel::lang:python, devel::library, field::statistics, implemented-in::python, role::app-data
+python-unit: devel::lang:python, devel::library, devel::testing-qa, implemented-in::python
+python-uno: devel::lang:c++, devel::lang:python, implemented-in::python, role::shared-lib, suite::openoffice
+python-utmp: admin::logging, devel::lang:python, devel::library, implemented-in::python, role::app-data
+python-visual: devel::lang:python, devel::library, implemented-in::python, interface::3d, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::gtk, use::viewing
+python-vte: devel::lang:python, devel::library, implemented-in::python, role::app-data, uitoolkit::gtk, uitoolkit::ncurses
+python-vtk: devel::lang:python, devel::library, implemented-in::python, role::app-data, uitoolkit::tk
+python-wavelets: devel::lang:python, devel::library, implemented-in::c, implemented-in::python, role::devel-lib, role::shared-lib
+python-weblib: devel::lang:python, devel::library, devel::web, implemented-in::python, protocol::http
+python-weblib-doc: devel::doc, devel::examples, devel::lang:python, protocol::http, role::documentation
+python-wxglade: devel::ui-builder, implemented-in::python, uitoolkit::wxwidgets
+python-wxgtk2.4: devel::lang:python, uitoolkit::wxwidgets, uitoolkit::wxwindows
+python-wxgtk2.6: devel::lang:python, role::shared-lib, uitoolkit::wxwidgets
+python-wxgui: special::not-yet-tagged, special::not-yet-tagged::p
+python-wxtools: devel::lang:python, implemented-in::python, role::shared-lib, uitoolkit::wxwidgets
+python-wxversion: devel::lang:python, devel::library, interface::x11, role::shared-lib, uitoolkit::wxwidgets
+python-xapian: devel::lang:python, implemented-in::c++, use::searching, web::search-engine, works-with::text
+python-xdg: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, x11::library
+python-xlib: devel::lang:python, devel::library, implemented-in::python, x11::library
+python-xlib-doc: devel::doc, devel::lang:python, made-of::data:html, role::documentation, x11::library
+python-xml: devel::lang:python, devel::library, implemented-in::python, role::shared-lib, works-with-format::xml
+python-xmms: devel::lang:python, devel::library, implemented-in::c, implemented-in::python, sound::player, suite::xmms, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+python-xmms-doc: devel::doc, devel::lang:python, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p, suite::xmms
+python-xmmsclient: devel::lang:python, implemented-in::c, suite::xmms2
+python-xmpp: devel::lang:python, devel::library, implemented-in::python, protocol::jabber, special::not-yet-tagged, special::not-yet-tagged::p
+python-yappy: devel::code-generator, devel::lang:python, devel::library, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::p
+python-yappy-doc: devel::code-generator, devel::doc, devel::lang:python, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p
+python-zopeinterface: devel::lang:python, devel::library, implemented-in::python, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::p, suite::zope, web::cms
+python-zsi: devel::lang:python, devel::library, devel::rpc, implemented-in::python, protocol::soap, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python2.1: devel::interpreter, devel::lang:python, devel::library, implemented-in::python, role::app-data, uitoolkit::ncurses
+python2.1-adns: devel::lang:python, devel::library, implemented-in::python, protocol::dns, role::app-data
+python2.1-cjkcodecs: culture::chinese, culture::japanese, culture::korean, culture::taiwanese, devel::lang:python, devel::library, implemented-in::python, role::app-data
+python2.1-crypto: devel::lang:python, devel::library, implemented-in::python, role::app-data, security::cryptography
+python2.1-csv: devel::lang:python, devel::library, implemented-in::python, role::app-data, use::text-formatting, works-with::text
+python2.1-dev: devel::lang:python, devel::library, implemented-in::python, role::devel-lib
+python2.1-difflib: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::software:source
+python2.1-doc: devel::doc, devel::lang:python, made-of::data:html, made-of::data:info, role::documentation
+python2.1-egenix-mxdatetime: devel::lang:c, devel::lang:python, devel::library, implemented-in::python, role::app-data, use::timekeeping
+python2.1-egenix-mxproxy: devel::lang:python, devel::library, implemented-in::python, role::app-data
+python2.1-egenix-mxqueue: devel::lang:python, devel::library, implemented-in::python, role::app-data
+python2.1-egenix-mxstack: devel::lang:python, devel::library, implemented-in::python, role::app-data
+python2.1-egenix-mxtexttools: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with::text
+python2.1-egenix-mxtools: devel::lang:python, devel::library, implemented-in::python, role::app-data
+python2.1-email: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::mail
+python2.1-epydoc: devel::docsystem, devel::lang:python, implemented-in::python, interface::commandline, role::dummy, special::obsolete
+python2.1-examples: devel::doc, devel::examples, devel::lang:python, implemented-in::python, role::documentation
+python2.1-extclass: devel::lang:c, devel::lang:c++, devel::lang:python, devel::library, implemented-in::python, role::app-data
+python2.1-fuse: admin::filesystem, devel::lang:python, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.1-gadfly: devel::lang:python, devel::lang:sql, devel::library, role::app-data, works-with::db
+python2.1-gdbm: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with::db
+python2.1-gdchart2: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, x11::library
+python2.1-htmlgen: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with-format::html, works-with::text
+python2.1-htmltmpl: devel::lang:python, devel::library, implemented-in::python, role::app-data, web::scripting, works-with-format::html, works-with::text
+python2.1-iconvcodec: devel::i18n, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.1-imaging: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with::image:raster
+python2.1-imaging-sane: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with::image:raster
+python2.1-imaging-tk: devel::lang:python, devel::library, implemented-in::python, role::app-data, uitoolkit::tk, works-with::image:raster
+python2.1-jabber: devel::lang:python, devel::library, implemented-in::python, protocol::jabber, role::app-data
+python2.1-kinterbasdb: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with::db
+python2.1-kjbuckets: devel::lang:python, devel::library, implemented-in::c, role::app-data, works-with::image:vector
+python2.1-korean-codecs: culture::korean, devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with::text, works-with::unicode
+python2.1-ldap: devel::lang:python, devel::library, implemented-in::python, protocol::ldap, role::app-data, works-with::db
+python2.1-libplot: devel::lang:python, devel::library, implemented-in::python, role::app-data, uitoolkit::athena
+python2.1-logilab-common: devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.1-medusa: devel::lang:python, devel::library, implemented-in::python, network::service, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.1-mpz: devel::lang:python, devel::library, field::mathematics, implemented-in::python, role::app-data
+python2.1-musicbrainz: devel::lang:python, devel::library, hardware::storage:cd, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+python2.1-numeric: devel::lang:python, devel::library, field::mathematics, implemented-in::python, role::app-data
+python2.1-numeric-ext: devel::lang:python, devel::library, implemented-in::python, role::app-data
+python2.1-omniorb2: devel::lang:python, devel::library, implemented-in::python, protocol::corba, role::app-data
+python2.1-opengl: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, x11::library
+python2.1-optik: devel::lang:python, devel::library, implemented-in::python, interface::commandline, role::app-data
+python2.1-orbit: devel::lang:python, devel::library, implemented-in::python, protocol::corba, role::app-data
+python2.1-oss: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with::audio
+python2.1-pam: devel::lang:python, devel::library, implemented-in::python, role::app-data, security::authentication
+python2.1-pgsql: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::app-data, works-with::db
+python2.1-popy: devel::lang:python, devel::lang:sql, devel::library, implemented-in::c, role::app-data, works-with::db
+python2.1-profiler: special::not-yet-tagged, special::not-yet-tagged::p
+python2.1-psyco: devel::compiler, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::software:source
+python2.1-psycopg: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, works-with::db
+python2.1-pymacs: devel::lang:lisp, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.1-pyvtk: devel::lang:python, devel::library, implemented-in::python, role::app-data, use::viewing
+python2.1-reportlab: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::pdf, works-with::text
+python2.1-reportlab-accel: devel::lang:python, devel::library, implemented-in::c, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::pdf, works-with::text
+python2.1-sqlite: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::app-data, works-with::db
+python2.1-tau: devel::lang:python, devel::library, devel::profiler, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.1-tclink: devel::lang:python, devel::library, field::finance, implemented-in::python, role::app-data
+python2.1-textwrap: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::text
+python2.1-tk: devel::lang:python, devel::library, implemented-in::python, role::app-data, uitoolkit::tk
+python2.1-unit: devel::lang:python, devel::library, devel::testing-qa, implemented-in::python, role::app-data
+python2.1-weblib: devel::lang:python, devel::library, implemented-in::python, protocol::http, role::app-data
+python2.1-xlib: devel::lang:python, devel::library, implemented-in::python, role::app-data, x11::library
+python2.1-xml: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with-format::xml
+python2.1-xmlbase: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with-format::xml
+python2.1-xmms: devel::lang:python, devel::library, implemented-in::c, implemented-in::python, role::app-data, sound::player, suite::xmms, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+python2.1-xmpp: devel::lang:python, devel::library, implemented-in::python, protocol::jabber, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2: devel::interpreter, devel::lang:python, devel::library, implemented-in::python, role::app-data, uitoolkit::ncurses
+python2.2-4suite: devel::lang:python, devel::library, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::xml:rss
+python2.2-adns: devel::lang:python, devel::library, implemented-in::python, protocol::dns, role::app-data
+python2.2-albatross: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, web::scripting
+python2.2-apoo: devel::lang:python, devel::library, devel::machinecode, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::tk, use::learning
+python2.2-biggles: devel::lang:python, devel::library, implemented-in::python, uitoolkit::athena, works-with-format::tex, works-with::image:vector, works-with::text
+python2.2-bsddb3: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with::db
+python2.2-bz2: devel::lang:python, devel::library, implemented-in::python, role::app-data, use::compressing
+python2.2-celementtree: devel::lang:python, devel::library, implemented-in::c, implemented-in::python, role::shared-lib, works-with-format::xml
+python2.2-cheetah: devel::code-generator, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, web::scripting
+python2.2-cjkcodecs: culture::chinese, culture::japanese, culture::korean, culture::taiwanese, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-clientcookie: devel::lang:python, devel::library, implemented-in::python, protocol::http, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-crack: devel::lang:python, devel::library, implemented-in::python, role::app-data, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-crypto: devel::lang:python, devel::library, implemented-in::python, role::app-data, security::cryptography
+python2.2-csv: devel::lang:python, devel::library, implemented-in::python, role::app-data, use::text-formatting, works-with::text
+python2.2-dev: devel::lang:python, devel::library, implemented-in::python, role::devel-lib
+python2.2-dhm: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, protocol::ldap, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.2-doc: devel::doc, devel::lang:python, made-of::data:html, made-of::data:info, role::documentation
+python2.2-docutils: devel::docsystem, devel::lang:python, devel::library, implemented-in::python, role::metapackage, special::not-yet-tagged, special::not-yet-tagged::p, use::text-formatting, works-with::text
+python2.2-egenix-mxdatetime: devel::lang:c, devel::lang:python, devel::library, implemented-in::c, role::app-data
+python2.2-egenix-mxproxy: devel::lang:python, devel::library, implemented-in::python, role::app-data
+python2.2-egenix-mxqueue: devel::lang:python, devel::library, implemented-in::python, role::app-data
+python2.2-egenix-mxstack: devel::lang:python, devel::library, implemented-in::python, role::app-data
+python2.2-egenix-mxtexttools: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with::text
+python2.2-egenix-mxtools: devel::lang:python, devel::library, implemented-in::python, role::app-data
+python2.2-elementtree: devel::lang:python, devel::library, implemented-in::python, role::shared-lib, works-with-format::xml
+python2.2-epydoc: devel::docsystem, devel::lang:python, implemented-in::python, interface::commandline, role::dummy, special::obsolete
+python2.2-examples: devel::doc, devel::examples, devel::lang:python, implemented-in::python, role::documentation
+python2.2-extclass: devel::lang:c, devel::lang:c++, devel::lang:python, devel::library, implemented-in::python, role::app-data
+python2.2-f2py: devel::lang:fortran, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-fixedpoint: devel::lang:python, devel::library, field::mathematics, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-fuse: admin::filesystem, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-gadfly: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::app-data, works-with::db
+python2.2-gdbm: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with::db
+python2.2-gdchart2: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, x11::library
+python2.2-gpib: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-htmlgen: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with-format::html, works-with::text
+python2.2-htmltmpl: devel::lang:python, devel::library, implemented-in::python, role::app-data, web::scripting, works-with-format::html, works-with::text
+python2.2-iconvcodec: devel::i18n, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-id3lib: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::mp3, works-with::audio
+python2.2-imaging: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with::image:raster
+python2.2-imaging-sane: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with::image:raster
+python2.2-imaging-tk: devel::lang:python, devel::library, implemented-in::python, role::app-data, uitoolkit::tk, works-with::image:raster
+python2.2-ipython: devel::lang:python, devel::library, implemented-in::python, interface::shell, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-jabber: devel::lang:python, devel::library, implemented-in::python, protocol::jabber, role::app-data
+python2.2-japanese-codecs: culture::japanese, devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with::text, works-with::unicode
+python2.2-kinterbasdb: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with::db
+python2.2-kjbuckets: devel::lang:python, devel::library, implemented-in::c, role::app-data, works-with::image:vector
+python2.2-korean-codecs: culture::korean, devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with::text, works-with::unicode
+python2.2-ldap: devel::lang:python, devel::library, implemented-in::python, protocol::ldap, role::app-data, works-with::db
+python2.2-libplot: devel::lang:python, devel::library, implemented-in::python, role::app-data, uitoolkit::athena, works-with::image:vector
+python2.2-librdf: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-libxml2: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::xml
+python2.2-libxslt1: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-logilab-common: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.2-medusa: devel::lang:python, devel::library, implemented-in::python, network::service, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-moinmoin: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, web::wiki
+python2.2-mpz: devel::lang:python, devel::library, field::mathematics, implemented-in::python, role::app-data
+python2.2-musicbrainz: devel::lang:python, devel::library, hardware::storage:cd, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+python2.2-mysqldb: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::app-data, works-with::db
+python2.2-numarray: devel::lang:python, devel::library, field::mathematics, implemented-in::python, role::app-data
+python2.2-numarray-ext: devel::lang:python, devel::library, field::mathematics, implemented-in::python, role::app-data
+python2.2-numeric: devel::lang:python, devel::library, field::mathematics, implemented-in::python, role::app-data
+python2.2-numeric-ext: devel::lang:python, devel::library, field::mathematics, implemented-in::python, role::app-data
+python2.2-omniorb2: devel::lang:python, devel::library, implemented-in::python, protocol::corba, role::app-data
+python2.2-omniorb2-omg: devel::lang:python, devel::library, implemented-in::python, protocol::corba, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-opengl: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, x11::library
+python2.2-optik: devel::lang:python, devel::library, implemented-in::python, interface::commandline, role::app-data
+python2.2-orbit: devel::lang:python, devel::library, implemented-in::python, protocol::corba, role::app-data
+python2.2-oss: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with::audio
+python2.2-pam: devel::lang:python, devel::library, implemented-in::python, role::app-data, security::authentication
+python2.2-pexpect: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::software:running
+python2.2-pgsql: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::app-data, works-with::db
+python2.2-popy: devel::lang:python, devel::lang:sql, devel::library, implemented-in::c, role::app-data, works-with::db
+python2.2-profiler: special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-psyco: devel::compiler, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::software:source
+python2.2-psycopg: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::app-data, works-with::db
+python2.2-pychart: special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-pycurl: devel::lang:python, devel::library, implemented-in::python, role::app-data, use::downloading
+python2.2-pygame: devel::lang:python, devel::library, implemented-in::python, role::app-data, sound::mixer, sound::player, uitoolkit::sdl, works-with::audio, works-with::video
+python2.2-pygresql: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.2-pylibacl: admin::user-management, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-pylint: devel::lang:python, devel::library, devel::testing-qa, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, use::checking, works-with::software:source
+python2.2-pymacs: devel::lang:lisp, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-pymad: special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-pyopenssl: devel::lang:python, devel::library, implemented-in::python, protocol::ssl, role::app-data
+python2.2-pyorbit: devel::lang:python, devel::library, implemented-in::python, protocol::corba, role::app-data
+python2.2-pyorbit-omg: devel::lang:python, devel::library, implemented-in::python, protocol::corba, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-pyrex: devel::code-generator, devel::lang:c, devel::lang:c++, devel::lang:python, devel::library, implemented-in::python, role::app-data, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-pyvtk: devel::lang:python, devel::library, implemented-in::python, role::app-data, use::viewing
+python2.2-pyx: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::postscript, works-with::text
+python2.2-pyxattr: admin::filesystem, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-reportlab: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::pdf, works-with::text
+python2.2-reportlab-accel: devel::lang:python, devel::library, implemented-in::c, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::pdf, works-with::text
+python2.2-rpy: devel::lang:python, devel::lang:r, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-rrd: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.2-scipy: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-scipy-core: devel::lang:c, devel::lang:c++, devel::lang:fortran, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-simpletal: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, web::cms
+python2.2-sqlite: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::app-data, works-with::db
+python2.2-sqlobject: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.2-sqlrelay: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::app-data, use::proxying, works-with::db
+python2.2-tables: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.2-tau: devel::lang:python, devel::library, devel::profiler, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-tclink: devel::lang:python, devel::library, field::finance, implemented-in::python, role::app-data
+python2.2-textwrap: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::text
+python2.2-tk: devel::lang:python, devel::library, implemented-in::python, role::app-data, uitoolkit::tk
+python2.2-tunepimp: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, use::organizing, works-with::audio
+python2.2-twisted: devel::lang:python, devel::library, implemented-in::python, network::service, role::app-data
+python2.2-twisted-bin: devel::lang:python, devel::library, implemented-in::python, network::service, role::app-data
+python2.2-twisted-conch: devel::lang:python, devel::library, implemented-in::python, network::service, role::app-data
+python2.2-unit: devel::lang:python, devel::library, devel::testing-qa, implemented-in::python, role::app-data
+python2.2-weblib: devel::lang:python, devel::library, implemented-in::python, protocol::http, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-xlib: devel::lang:python, devel::library, implemented-in::python, role::app-data, x11::library
+python2.2-xml: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with-format::xml
+python2.2-xmlbase: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with-format::xml
+python2.2-xmms: devel::lang:python, devel::library, implemented-in::c, implemented-in::python, role::app-data, role::devel-lib, sound::player, suite::xmms, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+python2.2-xmpp: devel::lang:python, devel::library, implemented-in::python, protocol::jabber, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-yappy: devel::code-generator, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.2-zopeinterface: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, suite::zope, web::cms
+python2.3: devel::interpreter, devel::lang:python, devel::library, implemented-in::python, interface::text-mode, role::app-data, uitoolkit::ncurses
+python2.3-4suite: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::xml
+python2.3-adns: devel::lang:python, devel::library, implemented-in::python, protocol::dns, role::app-data
+python2.3-albatross: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, web::scripting
+python2.3-apoo: devel::lang:python, devel::library, devel::machinecode, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, use::learning
+python2.3-apsw: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.3-babel: special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-biggles: devel::lang:python, devel::library, implemented-in::python, role::app-data, uitoolkit::athena, works-with-format::tex, works-with::image:vector, works-with::text
+python2.3-biopython: devel::lang:python, devel::library, field::biology, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-biopython-martel: devel::lang:python, devel::library, field::biology, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::xml
+python2.3-biopython-sql: devel::lang:python, devel::lang:sql, devel::library, field::biology, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.3-bsddb3: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.3-celementtree: devel::lang:python, devel::library, implemented-in::c, implemented-in::python, role::shared-lib, works-with-format::xml
+python2.3-cheetah: devel::code-generator, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, web::scripting
+python2.3-cjkcodecs: culture::chinese, culture::japanese, culture::korean, culture::taiwanese, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-clearsilver: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::html, works-with::text
+python2.3-clientcookie: devel::lang:python, devel::library, implemented-in::python, protocol::http, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-configlet: special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-crack: devel::lang:python, devel::library, implemented-in::python, role::app-data, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-crypto: devel::lang:python, devel::library, implemented-in::python, role::app-data, security::cryptography
+python2.3-ctypes: devel::lang:c, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-cxx: devel::lang:c++, devel::lang:python, devel::library, implemented-in::python, role::app-data, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-cxx-dev: devel::lang:c++, devel::lang:python, devel::library, implemented-in::python, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-dbg: uitoolkit::ncurses
+python2.3-dbus: devel::lang:python, devel::library, devel::rpc, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-dev: devel::lang:python, devel::library, implemented-in::python, role::devel-lib
+python2.3-dhm: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, protocol::ldap, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.3-diacanvas2: devel::lang:python, devel::library, implemented-in::python, role::app-data, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-dictclient: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::dictionary
+python2.3-dictdlib: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::dictionary
+python2.3-doc: devel::doc, devel::lang:python, devel::library, made-of::data:html, made-of::data:info, role::documentation
+python2.3-docutils: devel::lang:python, devel::library, implemented-in::python, role::metapackage, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-egenix-mxdatetime: devel::lang:python, devel::library, implemented-in::python, role::app-data, use::timekeeping
+python2.3-egenix-mxproxy: devel::lang:c, devel::lang:python, devel::library, implemented-in::c, role::app-data, use::proxying
+python2.3-egenix-mxqueue: devel::lang:python, devel::library, implemented-in::python, role::app-data
+python2.3-egenix-mxstack: devel::lang:python, devel::library, implemented-in::python, role::app-data
+python2.3-egenix-mxtexttools: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with::text
+python2.3-egenix-mxtools: devel::lang:python, devel::library, implemented-in::python, role::app-data
+python2.3-elementtree: devel::lang:python, devel::library, implemented-in::python, role::shared-lib, works-with-format::xml
+python2.3-epydoc: devel::lang:python, devel::library, implemented-in::python, role::dummy, special::obsolete
+python2.3-eunuchs: devel::lang:python, devel::library, implemented-in::python, role::app-data
+python2.3-examples: devel::doc, devel::examples, devel::lang:python, implemented-in::python, role::app-data
+python2.3-extclass: devel::lang:c++, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-f2py: devel::lang:fortran, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, use::converting
+python2.3-fam: special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-fixedpoint: devel::lang:python, devel::library, field::mathematics, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-forgethtml: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::html, works-with::text
+python2.3-forgetsql: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.3-fuse: admin::filesystem, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-gadfly: devel::code-generator, devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::app-data, works-with::db
+python2.3-gamin: admin::filesystem, devel::library, implemented-in::python, role::devel-lib
+python2.3-gdbm: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with::db
+python2.3-gdchart2: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::image:vector
+python2.3-glade2: devel::lang:python, devel::library, implemented-in::python, interface::x11, role::app-data, role::shared-lib, uitoolkit::gtk
+python2.3-gnome2: devel::lang:python, devel::library, implemented-in::python, role::app-data, suite::gnome, uitoolkit::gtk
+python2.3-gpib: devel::lang:python, devel::library, implemented-in::python, role::app-data, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-gtk2: devel::lang:python, devel::library, implemented-in::python, interface::x11, role::app-data, role::shared-lib, uitoolkit::gtk
+python2.3-hamlib3: devel::lang:python, devel::library, hardware::hamradio, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-hk-classes: devel::lang:c++, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-htmlgen: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with-format::html, works-with::text
+python2.3-htmltmpl: devel::lang:python, devel::library, implemented-in::python, role::app-data, web::scripting, works-with-format::html, works-with::text
+python2.3-iconvcodec: devel::i18n, devel::lang:python, devel::library, implemented-in::python, role::app-data, role::shared-lib
+python2.3-id3lib: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with-format::mp3, works-with::audio
+python2.3-imaging: devel::lang:python, devel::library, implemented-in::python, role::app-data, role::shared-lib, works-with::image:raster
+python2.3-imaging-sane: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with::image:raster
+python2.3-imaging-tk: devel::lang:python, devel::library, implemented-in::python, role::app-data, role::shared-lib, uitoolkit::tk, works-with::image:raster
+python2.3-ipython: devel::lang:python, devel::library, implemented-in::python, interface::shell, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-irclib: devel::lang:python, devel::library, implemented-in::python, protocol::irc, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-jabber: devel::lang:python, devel::library, implemented-in::python, protocol::jabber, role::app-data
+python2.3-japanese-codecs: culture::japanese, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::text, works-with::unicode
+python2.3-kde3: special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-kinterbasdb: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.3-kjbuckets: devel::lang:python, devel::library, implemented-in::c, role::app-data, works-with::image:vector
+python2.3-korean-codecs: culture::korean, devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with::text, works-with::unicode
+python2.3-lasso: special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-ldap: devel::lang:python, devel::library, implemented-in::python, protocol::ldap, role::app-data, works-with::db
+python2.3-ldaptor: devel::lang:python, devel::library, implemented-in::python, protocol::ldap, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.3-libplot: devel::lang:python, devel::library, implemented-in::python, role::app-data, uitoolkit::athena, works-with::image:vector
+python2.3-librdf: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-libxml2: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::xml
+python2.3-libxslt1: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::xml
+python2.3-logilab-common: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.3-maxdb: devel::lang:python, devel::lang:sql, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.3-maxdb-loader: devel::lang:python, devel::lang:sql, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.3-medusa: devel::lang:python, devel::library, implemented-in::python, network::service, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-metakit: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.3-moinmoin: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, web::wiki
+python2.3-mpz: devel::lang:python, devel::library, field::mathematics, implemented-in::python, role::app-data
+python2.3-musicbrainz: devel::lang:python, devel::library, hardware::storage:cd, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+python2.3-mysqldb: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::app-data, works-with::db
+python2.3-nevow: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, web::scripting
+python2.3-numarray: devel::lang:python, devel::library, field::mathematics, implemented-in::python, role::app-data
+python2.3-numarray-ext: devel::lang:python, devel::library, field::mathematics, implemented-in::python, role::app-data
+python2.3-numeric: devel::lang:python, devel::library, field::mathematics, implemented-in::python, role::app-data, role::shared-lib
+python2.3-numeric-ext: devel::lang:python, devel::library, field::mathematics, implemented-in::python, role::app-data
+python2.3-omniorb2: devel::lang:python, devel::library, implemented-in::python, protocol::corba, role::app-data, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-omniorb2-omg: devel::lang:python, devel::library, implemented-in::python, protocol::corba, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-opengl: devel::lang:python, devel::library, hardware::video, implemented-in::c, implemented-in::python, interface::3d, interface::x11, role::shared-lib, use::gameplaying, x11::library
+python2.3-optcomplete: devel::lang:python, devel::library, implemented-in::python, interface::commandline, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-orbit: devel::lang:python, devel::library, implemented-in::python, protocol::corba, role::app-data
+python2.3-osd: devel::lang:python, devel::library, implemented-in::python, role::app-data, x11::library
+python2.3-oss: devel::lang:python, devel::library, implemented-in::python, role::app-data, works-with::audio
+python2.3-pam: devel::lang:python, devel::library, implemented-in::python, role::app-data, role::shared-lib, security::authentication
+python2.3-pexpect: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::software:running
+python2.3-pgsql: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::app-data, works-with::db
+python2.3-pmock: devel::lang:python, devel::library, devel::testing-qa, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-popy: devel::lang:python, devel::lang:sql, devel::library, implemented-in::c, implemented-in::python, role::app-data, works-with::db
+python2.3-profiler: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-psyco: devel::compiler, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::software:source
+python2.3-psycopg: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::app-data, works-with::db
+python2.3-pychart: special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-pycurl: devel::lang:python, devel::library, implemented-in::python, role::app-data, use::downloading
+python2.3-pygame: devel::lang:python, devel::library, implemented-in::python, role::app-data, sound::mixer, sound::player, uitoolkit::sdl, works-with::audio, works-with::video
+python2.3-pygresql: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.3-pylibacl: admin::user-management, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-pylint: devel::lang:python, devel::library, devel::testing-qa, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, use::checking, works-with::software:source
+python2.3-pymacs: devel::lang:lisp, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-pymad: special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-pyopenssl: devel::lang:python, devel::library, implemented-in::python, protocol::ssl, role::app-data, role::shared-lib, security::cryptography
+python2.3-pyorbit: devel::lang:python, devel::library, implemented-in::python, protocol::corba, role::app-data
+python2.3-pyorbit-omg: devel::lang:python, devel::library, implemented-in::python, protocol::corba, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-pyparsing: devel::code-generator, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-pypoker-eval: devel::lang:python, devel::library, game::card, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-pyrex: devel::code-generator, devel::lang:c, devel::lang:c++, devel::lang:python, devel::library, implemented-in::python, role::app-data, role::program, scope::utility
+python2.3-pythoncard: special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-pyvtk: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, use::viewing
+python2.3-pyx: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::postscript, works-with::text
+python2.3-pyxattr: admin::filesystem, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-qt3: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::qt
+python2.3-qt3-gl: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::qt, x11::library
+python2.3-qtext: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::qt
+python2.3-reportlab: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::pdf, works-with::text
+python2.3-reportlab-accel: devel::lang:python, devel::library, implemented-in::c, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::pdf, works-with::text
+python2.3-rpy: devel::lang:python, devel::lang:r, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-rrd: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.3-samba: devel::lang:python, devel::library, implemented-in::python, protocol::smb, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-scgi: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, web::cgi
+python2.3-scipy: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-scipy-core: devel::lang:c, devel::lang:c++, devel::lang:fortran, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-setuptools: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-simpletal: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, web::scripting
+python2.3-simpy: devel::lang:python, devel::library, field::physics, implemented-in::python, role::app-data
+python2.3-simpy-gui: devel::lang:python, devel::library, field::physics, implemented-in::python, role::app-data, uitoolkit::tk
+python2.3-sip-dev: devel::lang:c++, devel::lang:python, devel::library, implemented-in::python, role::app-data, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-sip-qt3: devel::lang:c++, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::qt
+python2.3-sip4-dev: devel::lang:c++, devel::lang:python, devel::library, implemented-in::python, role::app-data, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-sip4-qt3: devel::lang:c++, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::qt
+python2.3-slides: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, use::viewing
+python2.3-sqlite: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, network::client, role::app-data, role::program, works-with::db
+python2.3-sqlobject: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.3-sqlrelay: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, use::proxying, works-with::db
+python2.3-subversion: devel::lang:python, devel::library, devel::rcs, implemented-in::python, role::app-data, role::shared-lib
+python2.3-svn: devel::lang:python, devel::library, devel::rcs, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-syck: devel::code-generator, devel::lang:python, devel::library, implemented-in::python, role::app-data, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-tables: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.3-tau: devel::lang:python, devel::library, devel::profiler, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-tclink: devel::lang:python, devel::library, field::finance, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-tcpwrap: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-tk: devel::lang:python, devel::library, implemented-in::python, role::app-data, role::shared-lib, uitoolkit::tk
+python2.3-tunepimp: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, use::organizing, works-with::audio
+python2.3-twisted: devel::lang:python, devel::library, implemented-in::python, network::client, network::server, network::service, role::app-data, role::program
+python2.3-twisted-bin: devel::lang:python, devel::library, implemented-in::python, network::service, role::app-data, role::shared-lib
+python2.3-twisted-conch: devel::lang:python, devel::library, implemented-in::python, network::service, role::app-data
+python2.3-tz: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, use::timekeeping
+python2.3-unit: devel::lang:python, devel::library, devel::testing-qa, implemented-in::python, role::app-data
+python2.3-usrp: special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-weblib: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, web::scripting
+python2.3-xlib: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, x11::library
+python2.3-xml: devel::lang:python, devel::library, implemented-in::python, role::app-data, role::shared-lib, works-with-format::xml
+python2.3-xmldiff: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::xml
+python2.3-xmms: devel::lang:python, devel::library, implemented-in::c, implemented-in::python, role::app-data, role::devel-lib, sound::player, suite::xmms, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+python2.3-xmpp: devel::lang:python, devel::library, implemented-in::python, protocol::jabber, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-yappy: devel::code-generator, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.3-zopeinterface: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, suite::zope, web::cms
+python2.3-zsi: devel::lang:python, devel::library, devel::rpc, implemented-in::python, role::app-data
+python2.4: devel::interpreter, devel::lang:python, devel::library, implemented-in::python, interface::text-mode, role::shared-lib, uitoolkit::ncurses
+python2.4-4suite: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::xml
+python2.4-apsw: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.4-babel: role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-biopython: special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-biopython-martel: special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-biopython-sql: special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-celementtree: devel::lang:python, devel::library, implemented-in::c, implemented-in::python, role::shared-lib, works-with-format::xml
+python2.4-cheetah: devel::code-generator, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-crack: devel::lang:python, devel::library, implemented-in::python, role::app-data, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-ctypes: devel::lang:c, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-cxx: devel::lang:c++, devel::lang:python, devel::library, implemented-in::python, role::app-data, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-cxx-dev: devel::lang:c++, devel::lang:python, devel::library, implemented-in::python, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-dbg: devel::debugger, devel::interpreter, devel::lang:python, implemented-in::python, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::ncurses
+python2.4-dev: devel::lang:python, devel::library, implemented-in::python, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-doc: devel::lang:python, devel::library, made-of::data:html, made-of::data:info, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-docutils: devel::docsystem, devel::lang:python, devel::library, implemented-in::python, role::metapackage, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-egenix-mxdatetime: devel::lang:c, devel::lang:python, devel::library, implemented-in::c, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-egenix-mxproxy: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-egenix-mxqueue: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-egenix-mxstack: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-egenix-mxtexttools: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::text
+python2.4-egenix-mxtools: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-elementtree: devel::lang:python, devel::library, implemented-in::python, role::shared-lib, works-with-format::xml
+python2.4-eunuchs: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-examples: devel::doc, devel::examples, devel::lang:python, implemented-in::python, role::documentation, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-f2py: devel::lang:fortran, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, use::converting
+python2.4-fam: special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-gdbm: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.4-gdchart2: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::image:vector
+python2.4-id3lib: special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-ipython: devel::lang:python, devel::library, implemented-in::python, interface::shell, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-libxml2: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::xml
+python2.4-libxslt1: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::xml
+python2.4-logilab-common: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.4-maxdb: devel::lang:python, devel::lang:sql, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.4-maxdb-loader: devel::lang:python, devel::lang:sql, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.4-minimal: devel::interpreter, devel::lang:python, devel::library, implemented-in::python, interface::text-mode, role::shared-lib, uitoolkit::ncurses
+python2.4-moinmoin: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, web::wiki
+python2.4-mysqldb: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.4-numarray: devel::lang:python, devel::library, field::mathematics, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-numarray-ext: devel::lang:python, devel::library, field::mathematics, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-numeric: devel::lang:python, devel::library, field::mathematics, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-numeric-ext: devel::lang:python, devel::library, field::mathematics, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-omniorb2: devel::lang:python, devel::library, implemented-in::python, protocol::corba, role::app-data, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-omniorb2-omg: devel::lang:python, devel::library, implemented-in::python, protocol::corba, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-optcomplete: devel::lang:python, devel::library, implemented-in::python, interface::commandline, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-osd: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, x11::library
+python2.4-pexpect: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::software:running
+python2.4-profiler: special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-psyco: devel::compiler, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::software:source
+python2.4-pychart: special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-pycurl: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, use::downloading
+python2.4-pygresql: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.4-pylint: devel::lang:python, devel::library, devel::testing-qa, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, use::checking, works-with::software:source
+python2.4-pymad: special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-pyopenssl: devel::lang:python, devel::library, implemented-in::python, protocol::ssl, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-pyparsing: devel::code-generator, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-qt3: special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-qtext: special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-reportlab: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::image:vector
+python2.4-reportlab-accel: devel::lang:python, devel::library, implemented-in::c, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::image:vector
+python2.4-rpy: devel::lang:python, devel::lang:r, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-rrd: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.4-scipy: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-scipy-core: devel::lang:c, devel::lang:c++, devel::lang:fortran, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-setuptools: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-simpletal: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, web::cms
+python2.4-sip4-dev: special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-sip4-qt3: special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-slides: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, use::viewing
+python2.4-sqlite: devel::lang:python, devel::lang:sql, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.4-svn: devel::lang:python, devel::library, devel::rcs, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-tables: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with::db
+python2.4-tk: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, uitoolkit::tk
+python2.4-xml: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, works-with-format::xml
+python2.4-xmms: devel::lang:python, devel::library, implemented-in::c, implemented-in::python, role::app-data, role::devel-lib, sound::player, suite::xmms, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+python2.4-yappy: devel::code-generator, devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p
+python2.4-zopeinterface: devel::lang:python, devel::library, implemented-in::python, role::app-data, special::not-yet-tagged, special::not-yet-tagged::p, suite::zope, web::cms
+python2.5: uitoolkit::ncurses
+python2.5-dbg: uitoolkit::ncurses
+python2.5-dev: devel::lang:python, devel::library, implemented-in::python, role::devel-lib
+python2.5-minimal: devel::interpreter, devel::lang:python, devel::library, implemented-in::python, interface::text-mode, role::app-data, uitoolkit::ncurses
+pythoncad: implemented-in::python, interface::x11, uitoolkit::gtk
+pythoncard: special::not-yet-tagged, special::not-yet-tagged::p
+pythoncard-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::p
+pythoncard-tools: special::not-yet-tagged, special::not-yet-tagged::p
+pytone: implemented-in::python, interface::text-mode, role::program, scope::utility, sound::player, uitoolkit::ncurses, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+pytris: game::tetris, implemented-in::python, interface::x11, role::program, use::gameplaying, x11::application
+pyuic3: devel::lang:python, devel::ui-builder, implemented-in::python, role::dummy, special::not-yet-tagged, special::not-yet-tagged::p, special::obsolete, uitoolkit::qt
+pyxmms-remote: implemented-in::python, interface::commandline, network::client, role::program, sound::player, suite::xmms, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+pyzor: implemented-in::python, mail::filters, network::service, role::program, use::filtering, works-with::mail
+qalc: field::mathematics, interface::text-mode, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::q, uitoolkit::ncurses
+qalculate: field::mathematics, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, x11::application
+qalculate-gtk: interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+qalculate-kde: interface::x11, role::program, scope::utility, uitoolkit::qt, x11::application
+qbankmanager: uitoolkit::qt
+qbrew: interface::x11, role::program, scope::utility, uitoolkit::qt, x11::application
+qc-usb-source: admin::kernel, hardware::camera, hardware::usb, role::source, special::not-yet-tagged, special::not-yet-tagged::q, use::driver
+qc-usb-utils: admin::kernel, hardware::camera, hardware::usb, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::q, use::configuring
+qca-dev: devel::library, role::devel-lib, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::q, uitoolkit::qt
+qca-tls: role::plugin, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::q, uitoolkit::qt
+qcad: interface::x11, role::program, scope::application, uitoolkit::qt, use::editing, works-with::3dmodel, x11::application
+qcad-doc: interface::x11, role::documentation, uitoolkit::qt, use::editing, works-with::3dmodel, x11::application
+qcam: hardware::camera, interface::svga, interface::x11, role::program, scope::utility, works-with-format::jpg, works-with::image, works-with::image:raster, works-with::video, x11::application
+qct: devel::buildtools, devel::rcs, implemented-in::python, interface::commandline, interface::x11, role::plugin, uitoolkit::qt, use::synchronizing, use::viewing, works-with::file
+qdbm-cgi: web::application, works-with::db
+qdbm-doc: role::documentation, works-with::db
+qdbm-util: works-with::db
+qe: culture::chinese, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::editing, works-with::text
+qemacs: interface::text-mode, interface::x11, role::program, scope::application, use::editing, works-with-format::docbook, works-with-format::html, works-with::text, x11::application
+qemacs-nox: x11::application
+qemu: hardware::emulation, implemented-in::c, interface::x11, role::program, scope::utility, uitoolkit::ncurses, uitoolkit::sdl, x11::application
+qemu-launcher: uitoolkit::gtk
+qemuctl: uitoolkit::gtk
+qgis: field::geography, interface::x11, role::program, scope::application, scope::utility, uitoolkit::qt, use::viewing, x11::application
+qgis-dev: devel::library, field::geography, interface::x11, role::devel-lib, uitoolkit::qt, use::viewing, x11::application
+qgit: uitoolkit::qt
+qgo: game::board, interface::x11, network::client, role::program, uitoolkit::qt, use::gameplaying, x11::application
+qhull-bin: field::mathematics, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::q
+qiv: interface::x11, role::program, scope::utility, uitoolkit::gtk, use::viewing, works-with-format::jpg, works-with-format::png, works-with::image, works-with::image:raster, x11::application
+qjackctl: interface::commandline, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::q, uitoolkit::gtk, uitoolkit::qt, use::configuring, works-with::audio, x11::application
+qla2x00-source: special::not-yet-tagged, special::not-yet-tagged::q
+qliss3d: uitoolkit::qt
+qlo10k1: uitoolkit::qt
+qm: devel::testing-qa, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::q
+qmail-qfilter: mail::filters, special::not-yet-tagged, special::not-yet-tagged::q
+qmail-src: network::client, protocol::smtp, role::program, works-with::mail
+qmailadmin: special::not-yet-tagged, special::not-yet-tagged::q
+qmailanalog-installer: special::not-yet-tagged, special::not-yet-tagged::q
+qmailmrtg7: special::not-yet-tagged, special::not-yet-tagged::q
+qmc: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::q
+qmtest: devel::testing-qa, special::not-yet-tagged, special::not-yet-tagged::q
+qobex: uitoolkit::qt
+qpcr1k: hardware::hamradio, interface::x11, role::program, scope::utility, uitoolkit::qt, x11::application
+qpopper: interface::daemon, mail::pop, network::server, protocol::pop3, role::program, works-with::mail
+qpopper-drac: interface::daemon, mail::pop, network::server, protocol::imap, role::program, security::authentication, works-with::mail
+qprof: devel::profiler, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::q
+qps: admin::monitoring, interface::x11, role::program, scope::utility, uitoolkit::qt, use::monitor, works-with::software:running, x11::application
+qpxtool: uitoolkit::qt
+qsf: implemented-in::c, interface::commandline, mail::filters, role::plugin, role::program, scope::application, use::checking, works-with-format::plaintext, works-with::db, works-with::mail, works-with::text
+qsstv: hardware::hamradio, interface::x11, role::program, scope::utility, uitoolkit::qt, works-with::fax, works-with::image, x11::application
+qstat: game::arcade, interface::commandline, role::program, scope::utility, use::searching
+qsynaptics: hardware::input, hardware::laptop, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::q, uitoolkit::qt, use::configuring, x11::application
+qsynth: implemented-in::c++, interface::x11, role::program, scope::utility, sound::midi, uitoolkit::qt, works-with::audio, x11::application
+qt-x11-free-dbg: devel::library, uitoolkit::qt
+qt3-apps-dev: devel::lang:c++, devel::library, devel::ui-builder, role::devel-lib, uitoolkit::qt
+qt3-assistant: devel::doc, devel::lang:c++, devel::ui-builder, interface::x11, role::program, scope::utility, uitoolkit::qt, works-with-format::html, works-with::text, x11::application
+qt3-designer: devel::lang:c++, devel::ui-builder, interface::x11, role::program, scope::utility, uitoolkit::qt, x11::application
+qt3-dev-tools: devel::buildtools, devel::lang:c++, devel::ui-builder, role::program, scope::utility, uitoolkit::qt
+qt3-dev-tools-compat: devel::lang:c++, devel::ui-builder, role::program, scope::utility, uitoolkit::qt, use::converting, works-with::software:source
+qt3-dev-tools-embedded: devel::lang:c++, devel::ui-builder, hardware::embedded, role::program, scope::utility, uitoolkit::qt, works-with::font
+qt3-doc: devel::doc, devel::examples, implemented-in::c++, interface::x11, made-of::data:html, made-of::data:man, role::documentation, uitoolkit::qt
+qt3-examples: devel::examples, implemented-in::c++, role::documentation, uitoolkit::qt
+qt3-linguist: devel::i18n, implemented-in::c++, interface::x11, role::program, scope::utility, uitoolkit::qt, x11::application
+qt3-qtconfig: admin::configuring, interface::x11, role::program, scope::utility, uitoolkit::qt, use::configuring, x11::application
+qt4-designer: devel::lang:c++, devel::ui-builder, interface::x11, role::program, uitoolkit::qt, use::editing, x11::application
+qt4-dev-tools: devel::lang:c++, devel::ui-builder, interface::x11, role::program, uitoolkit::qt, x11::application
+qt4-doc: devel::doc, role::documentation, uitoolkit::qt
+qt4-qtconfig: implemented-in::c++, interface::x11, role::program, scope::utility, uitoolkit::qt, use::configuring
+qtads: devel::interpreter, game::adventure, interface::commandline, role::program, scope::utility, uitoolkit::qt
+qtdmm: uitoolkit::qt
+qterm: interface::x11, uitoolkit::qt, x11::application
+qtorrent: implemented-in::python, interface::x11, network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::q, uitoolkit::qt, use::downloading, x11::application
+qtparted: admin::configuring, admin::filesystem, implemented-in::c++, interface::x11, role::program, scope::utility, special::completely-tagged, special::not-yet-tagged, special::not-yet-tagged::q, uitoolkit::qt, use::configuring, works-with::TODO, x11::application
+qtstalker: field::finance, interface::x11, special::not-yet-tagged, special::not-yet-tagged::q, uitoolkit::qt, use::viewing, x11::application
+qtstalker-doc: field::finance, interface::x11, made-of::data:html, role::documentation, special::not-yet-tagged, special::not-yet-tagged::q, uitoolkit::qt, use::viewing, x11::application
+quack-el: devel::ide, devel::lang:scheme, implemented-in::lisp, role::plugin, suite::emacs, use::editing
+quagga: implemented-in::c, network::routing, protocol::ipv6, role::program, scope::utility, suite::gnu, uitoolkit::ncurses, use::routing
+quagga-doc: made-of::data:info, network::routing, role::documentation, use::routing
+quake2: game::arcade, network::client, role::program, uitoolkit::sdl, use::gameplaying
+quake2-data: role::app-data, use::gameplaying
+quanta: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::q, suite::kde, uitoolkit::qt, use::editing, works-with-format::html, works-with::text, x11::application
+quanta-data: interface::x11, role::app-data, special::not-yet-tagged, special::not-yet-tagged::q, suite::kde, uitoolkit::qt, use::editing, works-with-format::html, works-with::text, x11::application
+quantlib-examples: devel::examples, devel::lang:python, field::finance, role::documentation, special::not-yet-tagged, special::not-yet-tagged::q
+quantlib-python: devel::lang:python, devel::library, field::finance, role::documentation, role::shared-lib
+quantlib-refman: devel::doc, devel::lang:python, field::finance, made-of::data:pdf, role::documentation
+quantlib-refman-html: devel::doc, devel::lang:python, field::finance, made-of::data:html, role::documentation
+quantlib-ruby: devel::lang:ruby, devel::library, field::finance, role::documentation, role::shared-lib
+quark: interface::commandline, interface::x11, network::server, role::program, scope::utility, sound::player, suite::gnome, uitoolkit::gtk, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, x11::applet, x11::application
+quarry: game::board, interface::x11, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+qucs: field::electronics, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::q, uitoolkit::qt, x11::application
+quelcom: interface::commandline, role::program, role::shared-lib, scope::utility, use::editing, works-with-format::mp3, works-with-format::wav, works-with::audio
+queue: special::not-yet-tagged, special::not-yet-tagged::q
+quick-lounge-applet: role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::organizing, x11::applet, x11::application
+quick-reference-de: culture::german, made-of::data:html, made-of::data:pdf, made-of::data:postscript, role::documentation, suite::debian
+quick-reference-en: culture::TODO, made-of::data:html, made-of::data:pdf, made-of::data:postscript, role::documentation, suite::debian
+quick-reference-es: culture::spanish, made-of::data:html, made-of::data:pdf, made-of::data:postscript, role::documentation, suite::debian
+quick-reference-fr: culture::french, made-of::data:html, made-of::data:pdf, made-of::data:postscript, role::documentation, suite::debian
+quick-reference-it: culture::italian, made-of::data:html, made-of::data:pdf, made-of::data:postscript, role::documentation, suite::debian
+quick-reference-ja: culture::japanese, made-of::data:html, made-of::data:pdf, made-of::data:postscript, role::documentation, suite::debian
+quick-reference-pl: culture::polish, made-of::data:html, made-of::data:pdf, made-of::data:postscript, role::documentation, suite::debian
+quick-reference-pt-br: culture::brazilian, made-of::data:html, made-of::data:pdf, made-of::data:postscript, role::documentation, suite::debian
+quick-reference-zh-cn: culture::chinese, made-of::data:html, made-of::data:pdf, made-of::data:postscript, role::documentation, suite::debian
+quick-reference-zh-tw: culture::taiwanese, made-of::data:html, made-of::data:pdf, made-of::data:postscript, role::documentation, suite::debian
+quicklist: implemented-in::c, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::organizing, works-with::pim, x11::application
+quickml: implemented-in::ruby, mail::list, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::q
+quickplot: interface::commandline, role::program, scope::utility, uitoolkit::athena, uitoolkit::gtk, use::viewing, x11::application
+quicksynergy: role::program, uitoolkit::gtk
+quicktime-utils: interface::commandline, role::program, scope::utility, use::converting, works-with::video
+quicktime-x11utils: interface::x11, role::program, scope::utility, uitoolkit::athena, uitoolkit::gtk, works-with::video, x11::application
+quilt: devel::buildtools, devel::rcs, interface::commandline, role::program, scope::utility, works-with::software:source
+quinn-diff: devel::buildtools, interface::commandline, role::program, scope::utility, suite::debian, use::checking
+quintuple-agent: interface::x11, role::program, scope::utility, security::cryptography, uitoolkit::gtk, use::storing, x11::application
+quiteinsane: interface::x11, uitoolkit::qt, use::downloading, works-with::image, works-with::image:raster, x11::application
+quixote: devel::lang:python, devel::library, implemented-in::python, protocol::http, role::source, special::completely-tagged
+quodlibet: implemented-in::python, interface::x11, role::program, scope::application, sound::player, uitoolkit::gtk, use::playing, use::searching, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, x11::application
+quodlibet-ext: implemented-in::c, interface::x11, role::plugin, role::shared-lib, sound::player, uitoolkit::gtk, use::playing, x11::application
+quota: admin::configuring, admin::user-management, hardware::storage, interface::commandline, role::program, scope::utility, use::configuring, works-with::people
+quotatool: admin::configuring, admin::user-management, hardware::storage, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::q, use::configuring
+qvlc: interface::x11, role::dummy, special::obsolete, uitoolkit::qt, use::playing, works-with::video, x11::application
+qvplay: hardware::camera, interface::commandline, role::program, scope::utility, use::downloading, works-with::image, works-with::image:raster
+qvwm: interface::x11, role::program, x11::window-manager
+r-base: devel::lang:r, field::statistics, implemented-in::c, implemented-in::fortran, implemented-in::r, role::dummy, role::metapackage, special::meta, special::obsolete, suite::gnu
+r-base-core: devel::lang:r, devel::library, field::statistics, implemented-in::c, implemented-in::fortran, implemented-in::r, interface::commandline, interface::shell, interface::x11, role::app-data, role::program, scope::utility, suite::gnu
+r-base-dev: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::devel-lib, suite::gnu, uitoolkit::ncurses
+r-base-html: devel::doc, devel::lang:r, field::statistics, made-of::data:html, role::documentation, suite::gnu
+r-base-latex: devel::doc, devel::lang:r, field::statistics, made-of::data:tex, role::documentation, suite::gnu
+r-bioc-repostools: devel::lang:r, devel::library, devel::rcs, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-abind: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-acepack: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-bayesm: field::mathematics, field::statistics, implemented-in::r, suite::gnu
+r-cran-boot: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-cairodevice: suite::gnu, uitoolkit::gtk
+r-cran-car: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-chron: suite::gnu
+r-cran-cluster: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-coda: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r
+r-cran-date: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, special::obsolete, suite::gnu, use::timekeeping
+r-cran-dbi: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu, works-with::db
+r-cran-design: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-e1071: suite::gnu
+r-cran-eco: field::mathematics, implemented-in::r, suite::gnu
+r-cran-effects: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-fbasics: devel::lang:r, devel::library, field::finance, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-fcalendar: field::mathematics, implemented-in::r, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-fecofin: suite::gnu
+r-cran-fextremes: devel::lang:r, devel::library, field::finance, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-fmultivar: field::mathematics, implemented-in::r, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-foptions: devel::lang:r, devel::library, field::finance, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-foreign: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu, use::converting
+r-cran-fportfolio: field::mathematics, implemented-in::r, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-fseries: devel::lang:r, devel::library, field::finance, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-gdata: field::mathematics, implemented-in::r, suite::gnu
+r-cran-gmodels: field::mathematics, implemented-in::r, suite::gnu
+r-cran-gplots: field::mathematics, implemented-in::r, suite::gnu
+r-cran-gregmisc: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-gtkdevice: devel::lang:r, field::statistics, implemented-in::r, role::app-data, uitoolkit::gtk
+r-cran-gtools: field::mathematics, implemented-in::r, suite::gnu
+r-cran-hdf5: field::mathematics, implemented-in::r, suite::gnu
+r-cran-hmisc: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-its: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-kernsmooth: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-lattice: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu, use::viewing
+r-cran-latticeextra: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu, use::viewing
+r-cran-lme4: field::mathematics, implemented-in::r, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-lmtest: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu, use::checking
+r-cran-mapdata: devel::lang:r, devel::library, field::geography, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-mapproj: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r
+r-cran-maps: devel::lang:r, devel::library, field::geography, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-matchit: field::mathematics, implemented-in::r, suite::gnu
+r-cran-matrix: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-mcmcpack: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-mgcv: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-misc3d: field::mathematics, implemented-in::r, suite::gnu
+r-cran-mnp: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-multcomp: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-mvtnorm: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-nlme: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-pscl: field::mathematics, implemented-in::r, suite::gnu
+r-cran-psy: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-qtl: devel::lang:r, devel::library, field::biology, field::statistics, implemented-in::r, role::app-data, suite::gnu
+r-cran-quadprog: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-rcmdr: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu, uitoolkit::tk
+r-cran-relimp: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-rgl: devel::lang:r, devel::library, field::statistics, implemented-in::r, interface::3d, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu, use::viewing
+r-cran-rgtk2: suite::gnu, uitoolkit::gtk
+r-cran-rmpi: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-rmysql: devel::lang:r, devel::lang:sql, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu, works-with::db
+r-cran-rodbc: devel::lang:r, devel::lang:sql, devel::library, field::statistics, implemented-in::r, role::app-data, suite::gnu, works-with::db
+r-cran-rpart: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-rpvm: devel::lang:r, devel::library, field::statistics, hardware::emulation, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-rquantlib: devel::lang:r, devel::library, field::finance, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-rsprng: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-sandwich: devel::lang:r, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-sm: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-snow: admin::cluster, devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-statdataml: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::r, works-with-format::xml
+r-cran-strucchange: devel::lang:r, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-survival: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-tkrplot: devel::lang:r, field::statistics, implemented-in::r, role::app-data, suite::gnu, uitoolkit::tk
+r-cran-tseries: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-vgam: suite::gnu
+r-cran-vr: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-cran-xml: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu, works-with-format::xml
+r-cran-zelig: field::mathematics, implemented-in::r, suite::gnu
+r-cran-zoo: devel::lang:r, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-doc-html: devel::doc, devel::lang:r, field::statistics, made-of::data:html, role::documentation, suite::gnu
+r-doc-info: devel::doc, devel::lang:r, field::statistics, made-of::data:info, role::documentation, suite::gnu
+r-doc-pdf: devel::doc, devel::lang:r, field::statistics, made-of::data:pdf, role::documentation, suite::gnu
+r-gnome: devel::lang:r, field::statistics, implemented-in::r, interface::x11, role::dummy, special::obsolete, suite::gnome, uitoolkit::gtk
+r-mathlib: devel::lang:c, devel::lang:c++, devel::lang:r, field::mathematics, field::statistics, implemented-in::r, suite::gnu
+r-noncran-lindsey: field::mathematics, implemented-in::r, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-omegahat-ggobi: suite::gnu, uitoolkit::gtk
+r-omegahat-rgtk: devel::lang:r, field::statistics, implemented-in::r, interface::x11, role::app-data, suite::gnome, uitoolkit::gtk
+r-other-gking-matchit: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::dummy, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r-other-gking-zelig: devel::lang:r, devel::library, field::statistics, implemented-in::r, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r
+r-recommended: devel::lang:r, field::statistics, role::dummy, role::metapackage, special::meta, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnu
+r5rs-doc: devel::doc, devel::lang:scheme, role::documentation
+racc: devel::code-generator, devel::lang:ruby, interface::commandline, role::program, scope::utility
+raccess: role::program, scope::utility
+raccess4vbox3: accessibility::speech, hardware::modem, role::program, scope::utility
+race: game::arcade, interface::x11, use::gameplaying, x11::application
+race-data: game::arcade, interface::x11, role::app-data, use::gameplaying, x11::application
+racoon: interface::daemon, network::server, role::program, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::r
+radeontool: hardware::laptop, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::r
+radio: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, works-with::audio
+radioclk: interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::r, use::timekeeping
+radiusclient1: protocol::radius, role::program, scope::utility, security::authentication
+radiuscontext: implemented-in::python, protocol::radius, security::authentication, security::log-analyzer, works-with::logfile
+radiusd-cistron: interface::daemon, network::server, protocol::radius, role::program, security::authentication
+radiusd-livingston: interface::daemon, network::server, protocol::radius, role::program, security::authentication
+radvd: interface::daemon, network::routing, network::server, protocol::ipv6, role::program, use::routing
+rafkill: game::arcade, implemented-in::c++, interface::x11, role::program, use::gameplaying, x11::application
+rafkill-data: interface::x11, role::app-data, use::gameplaying, x11::application
+rageircd: special::not-yet-tagged, special::not-yet-tagged::r
+ragel: devel::code-generator, devel::compiler, devel::interpreter, devel::lang:c, devel::lang:c++, devel::lang:objc, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::software:source
+raggle: implemented-in::ruby, interface::text-mode, network::client, role::program, uitoolkit::ncurses, use::downloading, web::blog, works-with-format::xml, works-with-format::xml:rss
+raidutils: admin::configuring, admin::filesystem, hardware::storage, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::r, use::converting
+rails: devel::code-generator, devel::lang:ruby, devel::lang:sql, devel::web, filetransfer::special:not-applicable, game::special:not-applicable, hardware::special:not-applicable, implemented-in::ruby, interface::web, junior::special:not-applicable, mail::special:not-applicable, network::special:not-yet-tagged, protocol::http, role::devel-lib, scope::suite, sound::special:not-applicable, suite::special:not-applicable, uitoolkit::special:not-applicable, use::TODO, web::application, works-with-format::html, works-with::db, x11::special:not-applicable
+rain: interface::commandline, protocol::ip, role::program, scope::utility
+rake: devel::buildtools, devel::lang:ruby, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::r, works-with::software:source
+rancid-cgi: special::not-yet-tagged, special::not-yet-tagged::r
+rancid-core: special::not-yet-tagged, special::not-yet-tagged::r
+rancid-installer: special::not-yet-tagged, special::not-yet-tagged::r
+rancid-util: admin::configuring, admin::monitoring, special::not-yet-tagged, special::not-yet-tagged::r
+randomize-lines: implemented-in::c, interface::commandline, role::program, scope::utility, works-with::text
+randomplay: implemented-in::perl, interface::commandline, role::program, scope::utility, sound::player, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+randtype: game::toys, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::r, works-with::text
+rapidsvn: devel::rcs, interface::x11, network::client, role::program, uitoolkit::wxwidgets, uitoolkit::wxwindows, x11::application
+raptor-utils: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::r, use::checking, works-with-format::xml
+rar: interface::commandline, role::program, use::compressing, works-with::archive
+rarpd: admin::configuring, interface::daemon, network::configuration, network::server, protocol::ip, role::program, use::configuring
+ras: interface::commandline, role::program, scope::utility, security::integrity, use::storing, works-with::file
+rasmol: field::chemistry, interface::x11, role::program, scope::utility, use::viewing, x11::application
+rasmol-doc: field::chemistry, made-of::data:html, made-of::data:postscript, role::documentation, special::not-yet-tagged, special::not-yet-tagged::r, use::viewing
+rasqal-utils: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::r, works-with-format::xml
+raster3d: field::biology, implemented-in::fortran, interface::commandline, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::r, use::converting, use::viewing, works-with-format::jpg, works-with-format::png, works-with::3dmodel, works-with::image, works-with::image:raster
+raster3d-doc: devel::doc, devel::examples, field::biology, made-of::data:html, made-of::data:pdf, role::documentation, special::not-yet-tagged, special::not-yet-tagged::r
+rat: protocol::voip, uitoolkit::tk
+rate-engine: devel::lang:sql, protocol::voip, special::not-yet-tagged, special::not-yet-tagged::r, works-with::db
+ratfor: devel::code-generator, devel::lang:fortran, interface::commandline, role::program, scope::utility, use::converting
+ratmenu: interface::x11, role::program, scope::utility, use::configuring, x11::application
+ratpoison: interface::x11, role::program, scope::application, x11::application, x11::window-manager
+rats: devel::lang:c, devel::lang:c++, devel::lang:perl, devel::lang:php, devel::lang:python, devel::testing-qa, role::program, scope::utility, works-with::software:source
+rawdog: implemented-in::python, interface::commandline, network::client, role::program, use::downloading, web::blog, works-with-format::xml, works-with-format::xml:rss
+rawrec: interface::commandline, role::program, scope::utility, sound::player, use::editing, works-with::audio
+rawstudio: hardware::camera, uitoolkit::gtk
+razor: interface::daemon, mail::filters, role::program, scope::utility, works-with::mail
+razzle: game::toys, interface::svga, role::program, use::entertaining, works-with::video
+rbbr: devel::doc, devel::lang:ruby, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::r, uitoolkit::gtk, use::browsing, works-with::software:source
+rblcheck: interface::commandline, mail::filters, network::client, protocol::dns, role::program, use::checking, works-with::mail
+rbldnsd: interface::daemon, mail::filters, network::server, protocol::dns, role::program, special::not-yet-tagged, special::not-yet-tagged::r, works-with::mail
+rbootd: admin::boot, interface::daemon, network::server, network::service, role::program, special::not-yet-tagged, special::not-yet-tagged::r
+rbot: implemented-in::ruby, interface::daemon, special::not-yet-tagged, special::not-yet-tagged::r, use::chatting
+rbscrobbler: special::not-yet-tagged, special::not-yet-tagged::r
+rc: interface::shell, role::program, scope::utility, uitoolkit::ncurses, use::login
+rcalc: field::mathematics, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, uitoolkit::ncurses, x11::application
+rcconf: admin::boot, admin::configuring, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, use::configuring
+rccp: filetransfer::dcc, interface::text-mode, network::client, protocol::irc, role::program, special::not-yet-tagged, special::not-yet-tagged::r, use::downloading
+rcs: devel::rcs, interface::commandline, role::program, scope::utility, suite::gnu, use::synchronizing, works-with::file
+rcs-latex: devel::rcs, interface::commandline, role::plugin, special::not-yet-tagged, special::not-yet-tagged::r, use::editing, works-with-format::tex, works-with::text
+rdate: interface::commandline, network::client, network::service, role::program, special::not-yet-tagged, special::not-yet-tagged::r, use::timekeeping
+rdeliver: implemented-in::ruby, mail::delivery-agent, mail::filters, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::r, works-with::mail
+rdesktop: interface::x11, network::client, protocol::ssl, role::program, scope::utility, uitoolkit::xlib, use::login, x11::application
+rdiff: interface::commandline, role::program, scope::utility, security::integrity, special::not-yet-tagged, special::not-yet-tagged::r, works-with::file
+rdiff-backup: admin::backup, role::program, scope::utility, use::synchronizing, works-with::file
+rdist: admin::file-distribution, filetransfer::ftp, network::client, network::server, protocol::ftp, role::program, use::synchronizing, works-with::file
+rdoc: devel::docsystem, devel::lang:ruby, role::documentation, role::metapackage, works-with-format::html, works-with-format::xml, works-with::software:source, works-with::text
+rdoc1.8: devel::docsystem, devel::lang:ruby, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::r, works-with-format::html, works-with-format::xml, works-with::software:source, works-with::text
+rdoc1.9: special::not-yet-tagged, special::not-yet-tagged::r
+rdtool: devel::docsystem, devel::lang:ruby, interface::commandline, role::program, scope::utility, use::converting, works-with::software:source
+rdtool-elisp: devel::docsystem, devel::lang:ruby, implemented-in::lisp, interface::commandline, role::plugin, suite::emacs, works-with::software:source
+re: culture::russian, role::program, scope::utility, use::converting, works-with::text
+re2c: devel::code-generator, devel::lang:c, interface::commandline, role::program, scope::utility, use::searching
+read-edid: admin::hardware, hardware::detection, interface::commandline, role::program, scope::utility
+readline-common: interface::commandline, role::app-data, special::auto-inst-parts, suite::gnu
+readpst: implemented-in::c, interface::commandline, role::program, scope::utility, use::converting, works-with::mail
+readseq: field::biology, interface::commandline, role::program, scope::utility, use::converting
+reaim: filetransfer::dcc, protocol::msn-messenger, protocol::oscar, special::not-yet-tagged, special::not-yet-tagged::r, use::downloading, use::proxying
+realpath: implemented-in::c, interface::commandline, role::program, scope::utility, works-with::file
+realtime-lsm: admin::kernel, admin::user-management, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::r, use::configuring
+realtime-lsm-source: admin::kernel, admin::user-management, role::source, special::not-yet-tagged, special::not-yet-tagged::r
+realtimebattle: culture::special:not-applicable, game::strategy, implemented-in::c++, interface::x11, role::program, scope::application, uitoolkit::gtk, use::gameplaying, x11::application
+realtimebattle-common: devel::lang:java, devel::lang:perl, game::strategy, interface::x11, network::client, role::app-data, role::program, special::auto-inst-parts, special::not-yet-tagged, special::not-yet-tagged::r, use::gameplaying, x11::application
+recite: accessibility::speech, interface::commandline, role::program, scope::utility, works-with::text
+recode: devel::i18n, interface::commandline, role::program, scope::utility, use::converting, works-with::text
+recode-doc: devel::i18n, interface::commandline, made-of::data:html, role::documentation, use::converting, works-with::text
+records-common: implemented-in::lisp, implemented-in::r, role::app-data, special::auto-inst-parts, suite::emacs, use::editing, use::organizing, works-with::pim
+records-gnuemacs: implemented-in::lisp, interface::commandline, role::plugin, suite::emacs, use::editing, use::organizing, works-with::pim
+records-xemacs: implemented-in::lisp, interface::commandline, role::plugin, suite::emacs, use::editing, use::organizing, works-with::pim
+recover: admin::recovery, implemented-in::c, interface::commandline, role::program, scope::utility, use::scanning, works-with::file
+recoverjpeg: admin::recovery, interface::commandline, role::program, scope::utility, use::scanning, works-with::image, works-with::image:raster
+redboot: devel::debugger, hardware::embedded, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::r, use::checking, use::downloading
+redet-doc: role::documentation
+redir: interface::daemon, network::server, network::service, role::program, special::not-yet-tagged, special::not-yet-tagged::r, use::proxying
+redland-utils: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::r, works-with-format::xml
+ree: interface::commandline, role::program
+refblas3: devel::lang:fortran, field::mathematics, implemented-in::fortran, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::r
+refblas3-dev: devel::lang:fortran, field::mathematics, implemented-in::fortran, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::r
+refblas3-doc: devel::doc, devel::lang:fortran, field::mathematics, role::documentation, special::not-yet-tagged, special::not-yet-tagged::r
+refblas3-test: admin::power-management, devel::lang:fortran, field::mathematics, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::r
+regexplorer: interface::x11, role::program, scope::utility, uitoolkit::qt, use::searching, use::viewing, x11::application
+regexxer: interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::searching, use::viewing, x11::application
+regina-normal: field::mathematics, interface::commandline, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, x11::application
+regina-normal-dev: devel::lang:c, devel::library, field::mathematics, role::devel-lib, suite::kde
+regina-normal-doc: devel::doc, field::mathematics, role::documentation, suite::kde
+regina-rexx: devel::interpreter, interface::commandline, role::program, scope::utility
+regina3: devel::interpreter, interface::commandline, role::program, role::shared-lib, scope::utility, special::not-yet-tagged, special::not-yet-tagged::r
+regina3-dev: devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::r
+regionset: hardware::storage, hardware::storage:dvd, interface::commandline, role::program, scope::utility, security::cryptography, use::configuring
+reiser4progs: admin::filesystem, interface::commandline, role::program, scope::utility, uitoolkit::ncurses, use::checking, use::converting
+reiserfsprogs: admin::filesystem, admin::kernel, interface::commandline, role::program, scope::utility, use::checking, use::converting
+rekall: devel::lang:sql, uitoolkit::qt, works-with::db
+relay-ctrl: special::not-yet-tagged, special::not-yet-tagged::r
+remctl: interface::commandline, interface::daemon, network::client, network::server, role::dummy, special::not-yet-tagged, special::not-yet-tagged::r, special::obsolete
+remctl-client: implemented-in::c, interface::commandline, network::client, protocol::kerberos, role::program, security::authentication, security::cryptography
+remctl-server: implemented-in::c, interface::daemon, network::server, protocol::kerberos, role::program, security::authentication, security::cryptography
+remember-el: implemented-in::lisp, role::plugin, special::not-yet-tagged, special::not-yet-tagged::r, suite::emacs, works-with::text
+remembrance-agent: implemented-in::lisp, role::plugin, suite::emacs, use::searching, works-with::text
+remind: implemented-in::c, interface::x11, role::program, scope::utility, uitoolkit::tk, use::organizing, use::timekeeping, works-with::pim, x11::application
+remotedesk.app: implemented-in::objc, interface::x11, network::client, role::program, suite::gnustep, uitoolkit::gnustep
+remstats: admin::monitoring, implemented-in::perl, interface::web, network::client, role::program, use::monitor, use::viewing, web::cgi, works-with-format::html, works-with::db, works-with::image:vector, works-with::text
+remstats-bintools: admin::monitoring, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::r, use::routing, use::storing, works-with-format::html, works-with::db, works-with::image, works-with::image:vector, works-with::text
+remstats-doc: admin::monitoring, made-of::data:html, role::documentation, use::monitor
+remstats-servers: admin::filesystem, admin::monitoring, interface::daemon, network::server, network::service, role::program, special::not-yet-tagged, special::not-yet-tagged::r, use::monitor, works-with::logfile
+renaissance: devel::doc, devel::examples, devel::lang:objc, devel::ui-builder, implemented-in::objc, made-of::data:html, role::devel-lib, role::documentation, suite::gnustep, works-with-format::xml
+renameutils: interface::text-mode, role::program, scope::utility, works-with::file
+renattach: interface::commandline, role::program, scope::utility, security::antivirus, special::not-yet-tagged, special::not-yet-tagged::r, use::converting, works-with::mail
+render-dev: devel::doc, devel::library, role::devel-lib, role::documentation, x11::library
+rep: devel::interpreter, devel::lang:lisp, interface::commandline, role::program, scope::utility
+rep-doc: devel::doc, devel::interpreter, devel::lang:lisp, made-of::data:info, role::documentation
+rep-gtk: devel::lang:lisp, interface::x11, role::devel-lib, uitoolkit::gtk, x11::application
+rep-gtk-gnome: devel::lang:lisp, interface::x11, role::devel-lib, suite::gnome, uitoolkit::gtk, x11::application
+rep-xmms: devel::lang:lisp, role::devel-lib, suite::xmms
+replicator: admin::boot, admin::file-distribution, implemented-in::perl, interface::text-mode, role::program, scope::utility, suite::debian
+reportbug: culture::special:not-applicable, devel::bugtracker, filetransfer::special:not-applicable, implemented-in::python, interface::commandline, junior::special:not-applicable, mail::smtp, network::client, protocol::http, protocol::smtp, role::program, scope::utility, security::special:not-applicable, sound::special:not-applicable, special::TODO, special::completely-tagged, suite::debian, uitoolkit::special:not-applicable, use::TODO, web::special:not-applicable, works-with-format::plaintext, works-with::bugs, x11::special:not-applicable
+reppu: admin::cluster, interface::daemon, network::client, network::server, role::program, works-with::image, works-with::image:raster
+reprepro: admin::file-distribution, admin::package-management, implemented-in::c, interface::commandline, role::program, scope::utility, security::authentication, use::organizing, use::synchronizing, works-with::software:package
+request-tracker3: devel::bugtracker, devel::lang:sql, implemented-in::perl, interface::web, mail::smtp, web::cgi, works-with::bugs, works-with::db, works-with::mail
+request-tracker3.4: devel::lang:sql, implemented-in::perl, interface::web, mail::smtp, web::cgi, works-with::bugs, works-with::db, works-with::mail
+request-tracker3.6: admin::issuetracker, devel::bugtracker, implemented-in::perl, interface::web, role::program, works-with::bugs
+resample: interface::commandline, role::program, scope::utility, sound::compression, use::compressing, use::converting, works-with::audio
+reseed: admin::boot, implemented-in::perl, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::r
+resmed-doc: culture::german, field::biology, made-of::data:html, role::documentation
+resmgr: admin::user-management, interface::daemon, network::server, role::program, security::authentication, special::not-yet-tagged, special::not-yet-tagged::r
+resolvconf: admin::configuring, interface::commandline, network::configuration, protocol::dns, use::configuring
+rest2web-doc: role::documentation
+restartd: interface::daemon, network::hiavailability, network::server, role::program, use::monitor, works-with::software:running
+retchmail: interface::daemon, mail::pop, network::client, protocol::pop3, role::program, special::not-yet-tagged, special::not-yet-tagged::r, use::downloading, works-with::mail
+revelation: implemented-in::python, interface::x11, role::program, scope::utility, security::authentication, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::r, suite::gnome, uitoolkit::gtk, x11::application
+revtex: made-of::data:tex, special::not-yet-tagged, special::not-yet-tagged::r
+revtex4: role::dummy, special::not-yet-tagged, special::not-yet-tagged::r, special::obsolete, works-with-format::tex, works-with::text
+rexima: interface::text-mode, role::program, scope::utility, sound::mixer, uitoolkit::ncurses, works-with::audio
+rezound: implemented-in::c++, interface::x11, role::program, scope::application, sound::player, use::converting, use::editing, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::audio, x11::application
+rfb: interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::r, use::viewing, x11::library
+rfdump: uitoolkit::gtk
+rgpsp: admin::monitoring, interface::daemon, network::server, network::service, role::program, special::not-yet-tagged, special::not-yet-tagged::r, use::monitor, works-with::software:running
+rhapsody: protocol::irc, uitoolkit::ncurses
+rhdb-admin: uitoolkit::tk
+rhdb-explain: devel::prettyprint, devel::profiler, implemented-in::java, interface::x11, network::client, protocol::ipv6, role::program, use::viewing, x11::application
+rhino: devel::interpreter, devel::lang:java, implemented-in::java, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::r
+rhino-doc: devel::doc, devel::lang:java, role::documentation
+rhinote: implemented-in::python, interface::x11, role::program, uitoolkit::tk, use::editing, works-with-format::plaintext, works-with::text, x11::application
+rhyme: implemented-in::c, interface::text-mode, made-of::data:dictionary, role::app-data, role::program, scope::utility, uitoolkit::ncurses, works-with::dictionary
+rhythmbox: hardware::storage, hardware::storage:cd, interface::x11, role::program, scope::application, sound::player, suite::gnome, uitoolkit::gtk, use::organizing, use::playing, works-with-format::iso9660, works-with-format::mp3, works-with-format::oggvorbis, works-with::archive, works-with::audio, x11::application
+rhythmbox-applet: hardware::storage, hardware::storage:cd, interface::x11, role::plugin, sound::player, suite::gnome, uitoolkit::gtk, use::organizing, use::playing, works-with-format::iso9660, works-with-format::mp3, works-with-format::oggvorbis, works-with::archive, works-with::audio, x11::applet
+ri: devel::doc, devel::lang:ruby, implemented-in::ruby, interface::text-mode, role::metapackage, use::browsing
+ri-cs-el: devel::doc, devel::lang:ruby, implemented-in::lisp, interface::text-mode, role::plugin, suite::emacs, use::browsing
+ri-db-el: devel::doc, devel::lang:ruby, implemented-in::lisp, interface::text-mode, role::plugin, suite::emacs, use::browsing
+ri-li: game::puzzle, game::strategy, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+ri-li-data: role::app-data
+ri1.6: devel::doc, devel::lang:ruby, implemented-in::ruby, interface::text-mode, role::program, scope::utility, use::browsing
+ri1.8: devel::doc, devel::lang:ruby, implemented-in::ruby, interface::text-mode, role::program, scope::utility, use::browsing
+ri1.9: special::not-yet-tagged, special::not-yet-tagged::r
+riece: culture::japanese, implemented-in::lisp, network::client, protocol::irc, role::program, suite::emacs, use::chatting
+riece-async: implemented-in::lisp, implemented-in::ruby, protocol::irc, role::plugin, suite::emacs, use::chatting
+riece-google: implemented-in::lisp, implemented-in::ruby, network::client, protocol::http, protocol::irc, role::plugin, role::program, suite::emacs, use::chatting, use::searching
+riece-hangman: game::puzzle, implemented-in::lisp, protocol::irc, role::plugin, suite::emacs, use::chatting, works-with::dictionary
+riece-kakasi: culture::japanese, implemented-in::lisp, protocol::irc, role::plugin, suite::emacs, use::chatting, use::converting, works-with::text
+riece-lsdb: implemented-in::lisp, protocol::irc, role::plugin, suite::emacs, use::chatting, works-with::db, works-with::pim
+riece-ndcc: filetransfer::dcc, implemented-in::lisp, network::client, protocol::irc, role::plugin, role::program, suite::emacs, use::chatting, use::downloading
+riece-rdcc: filetransfer::dcc, implemented-in::lisp, implemented-in::ruby, network::client, protocol::irc, role::plugin, role::program, suite::emacs, use::chatting, use::downloading
+riece-xface: implemented-in::lisp, protocol::irc, role::plugin, suite::emacs, use::chatting, use::viewing, works-with::image:raster
+rig: interface::commandline, role::program, scope::utility, security::authentication, security::privacy, works-with::people
+rigel: devel::lang:sql, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::organizing, works-with::db, works-with::pim, x11::application
+rinetd: interface::daemon, network::server, network::service, role::program, special::not-yet-tagged, special::not-yet-tagged::r, use::proxying
+rio: interface::commandline, role::program, scope::utility, sound::player, use::driver, use::playing, use::synchronizing, works-with-format::mp3, works-with::audio
+rioutil: hardware::usb, interface::commandline, role::program, scope::utility, sound::player, special::not-yet-tagged, special::not-yet-tagged::r, use::driver, use::playing, use::synchronizing, works-with-format::mp3, works-with::audio
+ripit: role::program, works-with::audio
+ripperx: hardware::storage, hardware::storage:cd, interface::x11, role::program, scope::application, uitoolkit::gtk, use::converting, works-with-format::iso9660, works-with-format::mp3, works-with-format::oggvorbis, works-with::archive, works-with::audio, x11::application
+rivet: devel::lang:tcl, special::not-yet-tagged, special::not-yet-tagged::r, uitoolkit::tk, web::scripting, works-with::db
+rkhunter: implemented-in::shell, interface::commandline, role::program, scope::utility, security::ids, security::integrity, use::checking, use::scanning
+rkward: uitoolkit::qt
+rlfe: interface::text-mode, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::r, uitoolkit::ncurses, works-with::text
+rlinetd: implemented-in::c, interface::daemon, network::server, network::service, protocol::ipv6, role::program
+rlplot: implemented-in::c++, interface::x11, role::program, scope::utility, uitoolkit::qt, use::viewing, works-with::image, works-with::image:vector, x11::application
+rlpr: hardware::printer, interface::daemon, network::server, network::service, role::program, use::printing
+rlwrap: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, works-with::text
+rmagic: admin::monitoring, implemented-in::c, interface::web, role::program, scope::utility, security::log-analyzer, works-with-format::html, works-with::logfile, works-with::text
+rmail: interface::daemon, mail::smtp, protocol::ldap, special::not-yet-tagged, special::not-yet-tagged::r, use::converting, works-with::db
+rman: interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with-format::man, works-with-format::plaintext, works-with-format::sgml, works-with-format::tex, works-with::text
+rmligs-german: culture::german, implemented-in::perl, interface::commandline, role::program, special::not-yet-tagged, special::not-yet-tagged::r, use::checking, works-with-format::tex, works-with::dictionary, works-with::text
+rnas-gtk: admin::monitoring, interface::x11, network::client, network::service, role::program, special::not-yet-tagged, special::not-yet-tagged::r, uitoolkit::gtk, works-with::software:running, x11::application
+rnc-mode: implemented-in::lisp, role::plugin, special::not-yet-tagged, special::not-yet-tagged::r, suite::emacs, use::editing, works-with-format::xml
+rng-tools: interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::r
+robodoc: devel::docsystem, devel::lang:c, devel::lang:c++, devel::lang:fortran, devel::lang:lisp, devel::lang:perl, devel::lang:tcl, interface::commandline, role::program, scope::utility, use::text-formatting, works-with-format::docbook, works-with-format::html, works-with-format::man, works-with-format::pdf, works-with-format::plaintext, works-with-format::tex, works-with::software:source, works-with::text
+robotfindskitten: game::simulation, interface::text-mode, special::not-yet-tagged, special::not-yet-tagged::r, uitoolkit::ncurses
+robotour: devel::machinecode, game::simulation, special::not-yet-tagged, special::not-yet-tagged::r, uitoolkit::wxwindows, use::gameplaying
+rockdodger: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+rocklight: interface::x11, scope::utility
+rocks: special::not-yet-tagged, special::not-yet-tagged::r
+rolldice: game::rpg, interface::commandline, role::program, scope::utility, use::gameplaying
+romeo: hardware::embedded, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::r
+root-portal: admin::monitoring, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::monitor, works-with::logfile, works-with::software:running, x11::application
+root-tail: admin::monitoring, implemented-in::c, interface::x11, role::program, scope::utility, uitoolkit::xlib, use::monitor, works-with::logfile, x11::application
+rootstrap: special::not-yet-tagged, special::not-yet-tagged::r
+rosegarden: interface::commandline, interface::x11, role::program, sound::midi, sound::mixer, sound::sequencer, uitoolkit::qt, use::editing, works-with::audio, works-with::music-notation, x11::application
+rosegarden2: interface::commandline, interface::x11, role::program, scope::application, sound::midi, uitoolkit::athena, use::editing, works-with::music-notation, x11::application
+rosegarden4: interface::x11, role::program, scope::application, sound::midi, suite::kde, uitoolkit::qt, use::editing, works-with::music-notation, x11::application
+rotix: game::toys, interface::commandline, role::program, scope::utility, works-with::text
+roundup: devel::bugtracker, implemented-in::python, interface::commandline, interface::web, role::program, scope::utility, works-with::bugs, works-with::mail
+routeplanner: field::geography, implemented-in::python, interface::text-mode, role::program, scope::application, uitoolkit::gtk, use::organizing
+routeplanner-gnome: field::geography, implemented-in::python, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::organizing, x11::application
+router-audit-tool: implemented-in::perl, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::r, use::checking, use::routing
+rox-filer: interface::x11, role::program, scope::application, uitoolkit::gtk, use::browsing, works-with::file, x11::application
+roxen-fonts-iso8859-1: made-of::data:font, role::app-data, suite::roxen
+roxen-fonts-iso8859-2: made-of::data:font, role::app-data, suite::roxen
+roxen3: special::not-yet-tagged, special::not-yet-tagged::r
+roxen3-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::r
+roxen4: devel::lang:sql, filetransfer::http, implemented-in::pike, interface::daemon, network::server, network::service, protocol::http, role::program, special::not-yet-tagged, special::not-yet-tagged::r, suite::roxen, web::server, works-with-format::html, works-with::db, works-with::text
+roxen4-doc: devel::lang:sql, filetransfer::http, interface::daemon, network::service, protocol::http, role::documentation, suite::roxen, web::server, works-with-format::html, works-with::db, works-with::text
+rpl: implemented-in::python, interface::commandline, role::program, scope::utility, works-with::text
+rplay: interface::daemon, network::service, role::dummy, sound::player, use::playing, use::proxying, works-with::audio
+rplay-client: interface::commandline, network::client, role::program, sound::player, use::playing, use::proxying, works-with::audio
+rplay-contrib: interface::daemon, mail::notification, network::client, role::program, sound::player, use::playing, use::proxying, works-with::audio, works-with::mail
+rplay-perl: devel::lang:perl, implemented-in::perl, interface::daemon, role::shared-lib, sound::player, use::playing, use::proxying, works-with::audio
+rplay-server: interface::daemon, network::server, network::service, role::program, sound::player, use::playing, use::proxying, works-with::audio
+rpld: admin::boot, admin::file-distribution, interface::daemon, network::server, network::service, role::program
+rpm: admin::package-management, devel::packaging, interface::commandline, role::program, scope::utility, works-with::db, works-with::software:package
+rpm2html: admin::package-management, interface::commandline, role::program, scope::utility, use::scanning, works-with-format::html, works-with::software:package, works-with::text
+rpmstrap: admin::virtualization, interface::commandline, role::program, scope::utility, works-with::software:package
+rpncalc: field::mathematics, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses
+rrdcollect: special::not-yet-tagged, special::not-yet-tagged::r
+rrdtool: interface::commandline, role::program, scope::utility, use::storing, use::viewing, works-with::db
+rrdtool-tcl: implemented-in::tcl, interface::x11, role::program, scope::utility, uitoolkit::tk, use::storing, use::viewing, works-with::db, x11::application
+rrootage: game::arcade, implemented-in::c++, interface::x11, uitoolkit::sdl, x11::application
+rrootage-data: game::arcade, interface::x11, role::app-data, special::not-yet-tagged, special::not-yet-tagged::r, uitoolkit::sdl, x11::application
+rsbac-admin: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::r
+rsbac-dev: special::not-yet-tagged, special::not-yet-tagged::r
+rsbac-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::r
+rsbac-klogd: special::not-yet-tagged, special::not-yet-tagged::r
+rscheme: devel::interpreter, devel::lang:scheme, interface::commandline, role::program, scope::utility, works-with::software:source
+rsh-client: interface::shell, network::client, role::program, use::login
+rsh-redone-client: interface::shell, network::client, protocol::ipv6, role::program, use::login
+rsh-redone-server: interface::daemon, network::server, network::service, protocol::ipv6, role::program, use::login
+rsh-server: interface::daemon, network::server, network::service, role::program, use::login
+rsibreak: uitoolkit::qt
+rsjog: hardware::input, implemented-in::ruby, interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+rsnapshot: admin::backup, implemented-in::perl, implemented-in::shell, role::program, use::storing, works-with::file
+rspfd: hardware::hamradio
+rsplib-dev: devel::library, network::hiavailability, role::devel-lib
+rsplib1: network::hiavailability, special::not-yet-tagged, special::not-yet-tagged::r
+rsrce: admin::boot, admin::configuring, implemented-in::c, interface::commandline, interface::shell, interface::text-mode, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::r, use::editing, works-with::file
+rss-glx: game::toys, interface::x11, role::plugin, x11::library, x11::screensaver
+rss2email: implemented-in::python, interface::commandline, mail::TODO, network::client, protocol::http, protocol::smtp, role::program, scope::utility, use::converting, use::downloading, use::monitor, use::storing, web::blog, works-with-format::xml, works-with-format::xml:rss, works-with::mail
+rssh: admin::login, implemented-in::c, interface::shell, role::program, scope::utility, security::special:todo, use::login
+rssreader.app: implemented-in::objc, interface::x11, role::plugin, role::program, suite::gnustep, uitoolkit::gnustep, use::downloading, works-with-format::xml, works-with-format::xml:rss, x11::applet
+rstat-client: admin::monitoring, interface::commandline, network::client, role::program, use::monitor
+rstatd: admin::monitoring, interface::daemon, network::server, role::program, use::monitor
+rsync: admin::backup, admin::file-distribution, interface::commandline, interface::daemon, network::client, network::server, protocol::ip, protocol::ipv6, role::program, use::synchronizing, works-with::file
+rsyncrypto: admin::backup, admin::file-distribution, interface::commandline, protocol::ssl, role::program, scope::utility, security::cryptography, use::compressing, use::converting, works-with::file
+rt2400: uitoolkit::qt
+rt2400-source: admin::kernel, implemented-in::c, role::source, use::driver
+rt2500: uitoolkit::qt
+rt2500-source: admin::kernel, implemented-in::c, role::source, use::driver
+rt2570-source: admin::kernel, implemented-in::c, role::source, use::driver
+rt2x00-source: admin::kernel, implemented-in::c, role::source, use::driver
+rt3-clients: devel::bugtracker, implemented-in::perl, interface::commandline, network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::r, works-with::bugs, works-with::mail
+rt3.4-clients: devel::bugtracker, implemented-in::perl, interface::commandline, network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::r, works-with::bugs, works-with::mail
+rtai: special::not-yet-tagged, special::not-yet-tagged::r
+rtai-doc: devel::doc, role::documentation, special::not-yet-tagged, special::not-yet-tagged::r
+rtai-source: role::source, special::not-yet-tagged, special::not-yet-tagged::r
+rtf2latex: interface::commandline, use::converting, use::text-formatting, works-with-format::tex, works-with::text
+rtfm: interface::web, special::not-yet-tagged, special::not-yet-tagged::r, web::wiki, works-with::bugs
+rtorrent: admin::file-distribution, network::client, protocol::bittorrent, role::program, uitoolkit::ncurses, use::downloading, works-with::file
+rubber: devel::buildtools, implemented-in::python, interface::commandline, role::program, scope::utility, works-with-format::tex, works-with::text
+rubilicious: role::metapackage, use::organizing, works-with::pim
+rubrica: interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, works-with::pim, x11::application
+ruby: devel::interpreter, devel::lang:ruby, devel::runtime, implemented-in::ruby, interface::commandline, role::dummy, special::meta, works-with::software:source
+ruby-elisp: devel::lang:ruby, devel::library, implemented-in::lisp, role::metapackage, suite::emacs, use::editing
+ruby-eserver: devel::examples, devel::lang:ruby, implemented-in::ruby, interface::daemon, network::server, network::service, role::program, special::not-yet-tagged, special::not-yet-tagged::r
+ruby-gnome2: devel::lang:ruby, devel::library, implemented-in::ruby, role::metapackage, suite::gnome, uitoolkit::gtk
+ruby-manual: devel::doc, devel::lang:ruby, role::documentation
+ruby1.6: devel::interpreter, devel::lang:ruby, devel::runtime, implemented-in::ruby, interface::commandline, role::program, scope::utility, works-with::software:source
+ruby1.6-dev: devel::lang:ruby, devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::r
+ruby1.6-elisp: devel::lang:ruby, devel::library, implemented-in::lisp, role::plugin, suite::emacs, use::editing
+ruby1.6-examples: devel::doc, devel::examples, devel::lang:ruby, implemented-in::ruby, role::documentation
+ruby1.8: devel::interpreter, devel::lang:ruby, devel::runtime, implemented-in::ruby, interface::commandline, role::program, scope::utility, works-with::software:source
+ruby1.8-dev: devel::lang:ruby, devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::r
+ruby1.8-elisp: devel::lang:ruby, devel::library, implemented-in::lisp, role::plugin, suite::emacs, use::editing
+ruby1.8-examples: devel::doc, devel::examples, devel::lang:ruby, implemented-in::ruby, role::documentation
+ruby1.9: devel::interpreter, devel::lang:ruby, devel::runtime, implemented-in::ruby, interface::commandline, role::program, scope::utility, works-with::software:source
+ruby1.9-dev: role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::r
+ruby1.9-elisp: special::not-yet-tagged, special::not-yet-tagged::r
+ruby1.9-examples: special::not-yet-tagged, special::not-yet-tagged::r
+rubybook: devel::doc, devel::lang:ruby, made-of::data:html, role::documentation
+rubyfilter-doc: devel::doc, devel::examples, devel::lang:ruby, made-of::data:html, role::documentation, works-with::mail
+rubygems: devel::lang:ruby, implemented-in::ruby, role::program
+rubymagick: devel::lang:ruby, devel::library, implemented-in::ruby, role::app-data, works-with::image:raster
+rungetty: admin::login, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::r, use::login
+runit: admin::boot, admin::configuring, interface::daemon, role::program, scope::utility
+runit-run: admin::boot, interface::daemon, network::server, role::program
+rusers: interface::commandline, network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::r, use::monitor, works-with::people
+rusersd: interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::r, use::monitor, works-with::people
+rutebook: role::data, role::documentation
+rwall: interface::commandline, network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::r, use::transmission
+rwalld: interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::r, use::transmission
+rwho: interface::commandline, network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::r, use::monitor
+rwhod: interface::daemon, network::server, network::service, role::program, special::not-yet-tagged, special::not-yet-tagged::r, use::monitor
+rx320: hardware::hamradio, interface::commandline, role::program, scope::utility
+rxp: interface::commandline, role::program, scope::utility, use::checking, works-with-format::xml
+rxvt: interface::x11, role::program, scope::utility, use::timekeeping, x11::terminal
+rxvt-beta: interface::x11, role::program, scope::utility, use::timekeeping, x11::terminal
+rxvt-ml: interface::x11, role::program, scope::utility, x11::terminal
+rxvt-unicode: interface::x11, role::program, scope::utility, works-with::text, works-with::unicode, x11::terminal
+rxvt-unicode-lite: interface::x11, role::program, scope::utility, works-with::text, works-with::unicode, x11::terminal
+rxvt-unicode-ml: interface::x11, role::program, scope::utility, works-with::text, works-with::unicode, x11::terminal
+rzip: implemented-in::c, interface::commandline, role::program, scope::utility, use::compressing, use::storing, works-with::archive, works-with::file
+s3mod: interface::commandline, role::program, scope::utility, sound::player, use::playing
+s3switch: hardware::video, interface::commandline, role::program, scope::utility, use::configuring
+sa-exim: implemented-in::c, implemented-in::perl, mail::filters, mail::smtp, protocol::smtp, role::plugin, special::not-yet-tagged, special::not-yet-tagged::s, use::filtering, use::scanning, works-with::mail
+sabayon: admin::configuring, role::program, suite::gnome
+sablecc: devel::code-generator, devel::lang:java
+sablevm: devel::interpreter, devel::lang:java, devel::runtime, implemented-in::c, role::program, works-with::software:source
+sablotron: implemented-in::c++, interface::commandline, works-with-format::xml, works-with-format::xml:xslt
+sabre: game::arcade, interface::3d, interface::x11, role::program, uitoolkit::ncurses, use::gameplaying, x11::application
+sabre-common: game::arcade, interface::3d, interface::x11, role::app-data, special::auto-inst-parts, use::gameplaying, x11::application
+sac: admin::accounting, admin::user-management, interface::daemon, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::monitor
+safecat: interface::commandline, role::program, scope::utility, works-with::file
+sagasu: interface::x11, special::not-yet-tagged, special::not-yet-tagged::s, suite::gnome, uitoolkit::gtk, use::searching, works-with::text, x11::application
+saidar: special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::ncurses
+sailcut-doc: role::documentation
+sam: interface::text-mode, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::editing, x11::application
+sam2p: implemented-in::c++, interface::commandline, role::program, scope::utility, use::converting, works-with-format::jpg, works-with-format::pdf, works-with-format::png, works-with-format::postscript, works-with::image, works-with::image:raster, works-with::image:vector, works-with::text
+samba: admin::filesystem, filetransfer::smb, interface::daemon, network::server, network::service, protocol::smb, role::program
+samba-common: filetransfer::smb, network::service, protocol::smb, role::app-data, special::auto-inst-parts, uitoolkit::ncurses
+samba-dbg: admin::filesystem, devel::debugger, filetransfer::smb, interface::daemon, network::server, network::service, protocol::smb, role::program, special::not-yet-tagged, special::not-yet-tagged::s
+samba-doc: devel::examples, filetransfer::smb, made-of::data:html, network::service, protocol::smb, role::documentation, suite::samba
+samba-doc-ja: culture::japanese, filetransfer::smb, made-of::data:html, made-of::data:pdf, network::service, protocol::smb, role::documentation
+samba-doc-pdf: devel::examples, filetransfer::smb, made-of::data:pdf, network::service, role::documentation, suite::samba
+samhain: admin::monitoring, interface::commandline, interface::daemon, role::program, scope::utility, security::ids, security::integrity, use::monitor
+samidare: implemented-in::ruby, protocol::http, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::monitor, works-with-format::html, works-with::text
+sanduhr: interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::timekeeping, x11::applet
+sane: interface::x11, role::program, scope::application, uitoolkit::gtk, use::downloading, works-with::image, works-with::image:raster, x11::application
+sane-utils: interface::commandline, interface::daemon, role::program, scope::utility, use::configuring, works-with::image, works-with::image:raster
+sanitizer: implemented-in::perl, mail::filters, security::antivirus, works-with::mail
+saods9: devel::lang:tcl, field::astronomy, implemented-in::tcl, interface::commandline, interface::x11, role::documentation, role::program, scope::application, special::completely-tagged, uitoolkit::tk, use::converting, use::downloading, use::editing, use::learning, use::viewing, web::browser, works-with::image, works-with::image:raster, x11::application
+saoimage: field::astronomy, interface::x11, role::program, scope::application, special::completely-tagged, use::viewing, x11::application
+sapphire: interface::x11, role::program, x11::window-manager
+sarg: security::log-analyzer, special::not-yet-tagged, special::not-yet-tagged::s, use::viewing, works-with-format::html, works-with::logfile, works-with::text
+sarien: devel::interpreter, game::adventure, interface::x11, uitoolkit::sdl, x11::application
+sary: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::searching, works-with::dictionary
+sary-doc: culture::japanese, made-of::data:html, role::documentation, special::not-yet-tagged, special::not-yet-tagged::s, use::searching, works-with::dictionary
+sash: admin::recovery, interface::shell, role::program, scope::utility, use::login, works-with::file
+sasl2-bin: admin::user-management, interface::commandline, role::program, scope::utility, security::authentication
+sattrack: field::astronomy, hardware::hamradio
+sattrack-x11: field::astronomy, hardware::hamradio
+sauce: mail::filters, mail::smtp, protocol::smtp, works-with::mail
+sawfish: accessibility::ocr, implemented-in::lisp, interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::window-manager
+sawfish-data: implemented-in::lisp, role::app-data
+sawfish-gnome: implemented-in::lisp, interface::x11, role::dummy, special::not-yet-tagged, special::not-yet-tagged::s, special::obsolete, suite::gnome, uitoolkit::gtk, x11::window-manager
+sawfish-lisp-source: implemented-in::lisp, interface::x11, role::source, uitoolkit::gtk, x11::window-manager
+sawfish-merlin-ugliness: implemented-in::lisp, interface::x11, role::plugin, uitoolkit::gtk, x11::window-manager
+sawfish-pager: interface::x11, role::program, scope::utility, uitoolkit::gtk, use::viewing, x11::applet
+sawfish-themes: interface::x11, made-of::data:icons, role::app-data, x11::theme, x11::window-manager
+sawfish-xmms: implemented-in::lisp, role::app-data, sound::player, suite::xmms, uitoolkit::gtk, x11::window-manager
+saxon-catalog: devel::lang:java
+saydate: accessibility::speech, interface::commandline, role::program, scope::utility, sound::player, use::timekeeping, works-with::audio
+saytime: accessibility::speech, interface::commandline, role::program, scope::utility, sound::player, use::timekeeping, works-with::audio
+sb16ctrl-bochs: hardware::emulation, interface::commandline, role::program, scope::utility
+sbcl: devel::compiler, devel::ide, devel::lang:lisp, works-with::software:source
+sbcl-common: special::not-yet-tagged, special::not-yet-tagged::s
+sbm: admin::boot, admin::configuring, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::s, use::configuring
+sbuild: devel::buildtools, devel::packaging, interface::commandline, role::program, scope::utility, suite::debian, works-with::software:package, works-with::software:source
+sc: office::spreadsheet, role::program, scope::application, uitoolkit::ncurses, use::editing, works-with::spreadsheet
+scala: devel::compiler, implemented-in::java
+scalable-cyrfonts-tex: made-of::data:font, role::app-data, works-with-format::tex, works-with::text
+scalapack-doc: admin::cluster, field::mathematics, role::documentation
+scalapack-lam-dev: admin::cluster, devel::library, field::mathematics, implemented-in::fortran, role::devel-lib
+scalapack-lam-test: admin::cluster, devel::testing-qa, field::mathematics, implemented-in::fortran, role::app-data
+scalapack-mpich-dev: admin::cluster, devel::library, field::mathematics, implemented-in::fortran, role::devel-lib
+scalapack-mpich-test: admin::cluster, devel::testing-qa, field::mathematics, role::app-data
+scalapack-pvm-dev: admin::cluster, devel::library, field::mathematics, implemented-in::fortran, role::devel-lib
+scalapack-pvm-test: admin::cluster, devel::testing-qa, field::mathematics, role::app-data
+scalapack-test-common: admin::cluster, devel::testing-qa, field::mathematics, role::app-data, special::auto-inst-parts
+scalapack1-lam: admin::cluster, field::mathematics, implemented-in::fortran, role::shared-lib
+scalapack1-mpich: admin::cluster, field::mathematics, implemented-in::fortran, role::shared-lib
+scalapack1-pvm: admin::cluster, field::mathematics, implemented-in::fortran, role::shared-lib
+scalemail: implemented-in::python, mail::smtp
+scandetd: admin::monitoring, interface::daemon, network::server, role::program, security::ids, use::monitor, works-with::mail
+scanerrlog: implemented-in::python, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, suite::apache, works-with-format::html, works-with-format::pdf, works-with-format::plaintext, works-with-format::xml, works-with::logfile, works-with::text
+scanlogd: admin::monitoring, interface::daemon, network::server, role::program, security::ids, use::monitor, works-with::logfile
+scansort: implemented-in::c, interface::commandline, role::program, scope::utility, use::organizing, works-with::image, works-with::image:raster
+scanssh: interface::commandline, network::scanner, protocol::ssh, role::program, scope::utility, use::scanning
+scantv: hardware::video, interface::commandline, role::program, scope::utility, use::scanning, works-with::video
+scapy: implemented-in::python, interface::commandline, network::scanner, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::scanning
+sced: special::invalid-tag, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::athena
+schedtool: admin::kernel, implemented-in::c, interface::commandline, role::program, scope::utility, use::configuring, works-with::software:running
+schedutils: admin::kernel, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, works-with::software:running
+scheme48-doc: made-of::data:html, made-of::data:pdf, role::documentation
+schism: interface::x11, role::program, sound::midi, sound::mixer, sound::player, sound::recorder, sound::sequencer, use::playing, works-with::audio, x11::application
+schoolbell: interface::web, network::server, protocol::http, role::program, special::not-yet-tagged, special::not-yet-tagged::s, use::organizing, use::timekeeping, web::application, web::server, works-with-format::pdf, works-with-format::xml, works-with::pim, works-with::text
+schooltool: culture::catalan, filetransfer::http, implemented-in::python, interface::web, special::not-yet-tagged, special::not-yet-tagged::s, suite::zope, use::text-formatting, web::application, works-with::TODO, works-with::text
+schooltool-clients: special::not-yet-tagged, special::not-yet-tagged::s
+schroot: admin::power-management, admin::special:todo, admin::virtualization, devel::special:todo, role::program, security::special:todo, suite::debian, use::learning, use::special:todo
+scid: game::board, game::board:chess, interface::x11, role::program, uitoolkit::tk, use::browsing, use::editing, use::searching, x11::application
+scigraphica: field::statistics, interface::commandline, interface::x11, uitoolkit::gtk, uitoolkit::ncurses, x11::application
+scilab: field::mathematics, uitoolkit::tk
+scilab-bin: special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::gtk, uitoolkit::ncurses
+scilab-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::s
+scim: accessibility::input, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::gtk
+scim-anthy: uitoolkit::gtk
+scim-bridge: uitoolkit::gtk
+scim-canna: uitoolkit::gtk
+scim-chewing: accessibility::input, culture::taiwanese, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::gtk
+scim-chinese: accessibility::input, culture::chinese, uitoolkit::gtk
+scim-config-gconf: accessibility::input, special::not-yet-tagged, special::not-yet-tagged::s, suite::gnome
+scim-config-socket: accessibility::input, special::not-yet-tagged, special::not-yet-tagged::s
+scim-dev: accessibility::input, devel::library, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::s
+scim-dev-doc: accessibility::input, devel::doc, made-of::data:html, role::documentation, special::not-yet-tagged, special::not-yet-tagged::s
+scim-frontend-socket: accessibility::input, special::not-yet-tagged, special::not-yet-tagged::s
+scim-gtk2-immodule: accessibility::input, implemented-in::c++, interface::x11, role::plugin, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::gtk, x11::application
+scim-hangul: accessibility::input, culture::korean, interface::x11, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::gtk, x11::application
+scim-m17n: accessibility::input, special::not-yet-tagged, special::not-yet-tagged::s
+scim-modules-table: uitoolkit::gtk
+scim-pinyin: uitoolkit::gtk
+scim-prime: uitoolkit::gtk
+scim-server-socket: accessibility::input, special::not-yet-tagged, special::not-yet-tagged::s
+scim-skk: uitoolkit::gtk
+scim-tables-additional: accessibility::input, special::not-yet-tagged, special::not-yet-tagged::s
+scim-tables-ja: accessibility::input, culture::japanese, special::not-yet-tagged, special::not-yet-tagged::s
+scim-tables-ko: accessibility::input, culture::korean, special::not-yet-tagged, special::not-yet-tagged::s
+scim-tables-zh: accessibility::input, culture::chinese, culture::taiwanese
+scim-thai: uitoolkit::gtk
+scim-uim: accessibility::input, special::not-yet-tagged, special::not-yet-tagged::s
+sciplot-dev: devel::library, role::devel-lib, works-with::image, works-with::image:vector
+sciplot1: devel::library, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::motif, works-with-format::postscript, works-with::image, works-with::image:vector, works-with::text
+scite: devel::editor, interface::x11, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::gtk, use::editing, works-with-format::html, works-with::software:source, works-with::text, x11::application
+scli: interface::commandline, network::configuration, network::scanner, protocol::snmp, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::ncurses
+scm: devel::lang:scheme, uitoolkit::ncurses
+scmail: implemented-in::scheme, mail::filters, special::not-yet-tagged, special::not-yet-tagged::s, works-with::mail
+scmxx: hardware::embedded, special::not-yet-tagged, special::not-yet-tagged::s
+scons: devel::buildtools, implemented-in::python, interface::commandline, role::program, scope::utility
+scoop: devel::lang:sql, implemented-in::perl, interface::web, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::s, web::cms, works-with::db
+scoop-doc: devel::lang:sql, made-of::data:html, role::documentation, web::cms, works-with::db
+scorched3d: game::arcade, role::program, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::sdl, uitoolkit::wxwidgets, uitoolkit::wxwindows, use::gameplaying, x11::application
+scorched3d-data: role::app-data, special::not-yet-tagged, special::not-yet-tagged::s
+scorched3d-dbg: role::devel-lib
+scorched3d-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::s
+score-reading-trainer: uitoolkit::qt
+scottfree: devel::interpreter, game::adventure, role::program, uitoolkit::ncurses, use::gameplaying
+scowl: made-of::data:dictionary, role::app-data
+scponly: admin::user-management, interface::shell, protocol::sftp, protocol::ssh, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::login
+scrabble: game::puzzle, special::not-yet-tagged, special::not-yet-tagged::s, use::gameplaying
+scram: field::electronics, special::not-yet-tagged, special::not-yet-tagged::s
+screader: accessibility::screen-reader, interface::text-mode, role::program, scope::utility
+screem: interface::x11, role::program, special::not-yet-tagged, special::not-yet-tagged::s, suite::gnome, uitoolkit::gtk, use::editing, works-with-format::html, works-with::text, x11::application
+screen: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, works-with::software:running
+screenkast: implemented-in::c++, interface::x11, role::program, uitoolkit::qt, x11::application
+screentest: interface::x11, role::program, scope::utility, uitoolkit::gtk, use::checking, x11::application
+scribus: interface::x11, role::program, scope::application, uitoolkit::qt, use::editing, works-with-format::pdf, works-with-format::postscript, works-with-format::svg, works-with::dtp, works-with::image, works-with::image:raster, works-with::image:vector, works-with::text
+scribus-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::s
+scribus-ng: uitoolkit::qt
+scribus-template: interface::x11, role::app-data, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::qt, use::editing, works-with::dtp, x11::application
+scripts4ticker: interface::commandline, protocol::http, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::downloading
+scripturechecks: uitoolkit::gtk
+scrollkeeper: devel::doc, role::program, scope::utility, use::organizing, works-with::text
+scrollz: filetransfer::dcc, interface::text-mode, network::client, protocol::irc, role::program, uitoolkit::ncurses, use::chatting
+scrot: interface::commandline, role::program, scope::utility, use::storing, works-with::image, works-with::image:raster
+scsh: devel::lang:scheme, devel::library, implemented-in::scheme, interface::shell, role::metapackage
+scsh-0.6: devel::interpreter, devel::lang:scheme, devel::library, implemented-in::scheme
+scsh-0.6-doc: devel::doc, devel::lang:scheme, made-of::data:html, made-of::data:postscript, role::documentation
+scsh-common-0.6: devel::examples, devel::lang:scheme, devel::library, implemented-in::scheme, role::app-data
+scsh-doc: devel::doc, devel::lang:scheme, role::dummy, role::metapackage
+scsi-idle: admin::power-management, hardware::storage, interface::daemon, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s
+scsiadd: hardware::storage, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::scanning
+scsitools: admin::hardware, hardware::storage, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::configuring, use::scanning
+sctplib-dev: devel::library, role::devel-lib
+sctplib-doc: devel::doc, role::documentation, special::not-yet-tagged, special::not-yet-tagged::s
+sctplib1: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::s
+scummvm: game::adventure, hardware::emulation, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+sdate: game::toys, implemented-in::c, interface::commandline, role::program, scope::utility, use::entertaining, use::timekeeping
+sdcc: devel::compiler, devel::lang:c, devel::machinecode, hardware::embedded, interface::commandline, role::program, scope::utility, works-with::software:source
+sdcc-doc: devel::compiler, devel::doc, devel::lang:c, hardware::embedded, role::documentation
+sdcc-libraries: devel::compiler, devel::lang:c, devel::library, hardware::embedded, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::s
+sdcc-ucsim: devel::debugger, devel::lang:c, hardware::embedded, hardware::emulation, interface::commandline, role::program, scope::utility, uitoolkit::ncurses
+sdcv: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, works-with::dictionary
+sdd: interface::commandline, role::program, scope::utility, works-with::file
+sdf: devel::docsystem, implemented-in::perl, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::converting, use::text-formatting, works-with-format::html, works-with-format::man, works-with-format::pdf, works-with-format::plaintext, works-with-format::postscript, works-with-format::sgml, works-with-format::tex, works-with::text
+sdf-doc: devel::doc, devel::docsystem, interface::commandline, role::documentation, use::converting, use::text-formatting, works-with-format::html, works-with-format::man, works-with-format::pdf, works-with-format::plaintext, works-with-format::postscript, works-with-format::sgml, works-with-format::tex, works-with::text
+sdic: works-with::dictionary
+sdic-edict: role::app-data
+sdic-gene95: works-with::dictionary
+sdljump-data: role::app-data, special::auto-inst-parts
+sdm: interface::daemon, interface::x11, network::server, protocol::ssh, role::program, use::login, x11::display-manager
+sdm-terminal: admin::login, protocol::ssh, role::app-data, security::authentication, special::not-yet-tagged, special::not-yet-tagged::s, use::login, x11::display-manager
+sdparm: admin::configuring, hardware::storage, implemented-in::c, interface::commandline, role::program, scope::utility, use::configuring
+sdr: interface::x11, uitoolkit::tk, use::organizing, x11::application
+seahorse: interface::x11, role::program, scope::application, security::cryptography, suite::gnome, uitoolkit::gtk, x11::application
+seam: devel::interpreter, devel::runtime, implemented-in::c++, role::program
+sear: game::mud, implemented-in::c++, interface::x11, network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::ncurses, uitoolkit::sdl, x11::application
+sear-media: game::mud, interface::x11, role::app-data, special::not-yet-tagged, special::not-yet-tagged::s, x11::application
+search-ccsb: implemented-in::perl, interface::commandline, protocol::http, role::plugin, special::completely-tagged, suite::emacs, use::searching, works-with-format::tex, works-with::text
+search-citeseer: implemented-in::perl, interface::commandline, network::client, protocol::http, role::plugin, role::program, special::completely-tagged, suite::emacs, use::searching, works-with-format::tex, works-with::text
+searchandrescue: game::arcade, interface::3d, role::program, use::gameplaying, x11::application
+searchandrescue-common: game::arcade, interface::3d, role::app-data, role::documentation, special::auto-inst-parts, special::not-yet-tagged, special::not-yet-tagged::s, use::gameplaying, x11::application
+searchandrescue-data: interface::3d, role::app-data, special::not-yet-tagged, special::not-yet-tagged::s, x11::application
+searchmonkey: uitoolkit::gtk
+seaview: field::biology, implemented-in::c++, interface::x11, role::program, scope::utility, uitoolkit::fltk, use::editing, use::printing, use::special:todo, works-with-format::plaintext, works-with::special:todo, x11::application
+sec: implemented-in::perl, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s
+secpanel: interface::x11, protocol::ssh, security::authentication, uitoolkit::tk, use::login, x11::application
+secpolicy: admin::configuring, admin::user-management, interface::x11, role::program, scope::utility, security::authentication, suite::kde, uitoolkit::qt, use::configuring, x11::application
+secure-delete: implemented-in::c, interface::commandline, role::program, scope::utility, security::privacy, works-with::file
+secvpn: accessibility::speech, network::vpn, protocol::TODO, protocol::ssh, use::routing, works-with::file
+sed: interface::commandline, role::program, scope::utility, suite::gnu, works-with::text
+seesat5: field::astronomy, interface::commandline, role::program, scope::utility, use::searching
+sel: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, works-with::file
+select-xface: role::plugin, suite::emacs, works-with::image, works-with::image:raster, works-with::mail
+selectwm: interface::x11, uitoolkit::gtk, use::configuring, x11::application, x11::window-manager
+selfhtml: role::documentation
+selflinux: culture::german, made-of::data:html, role::documentation
+selflinux-pdf: culture::german, made-of::data:pdf, role::documentation, special::not-yet-tagged, special::not-yet-tagged::s
+selinux-basics: admin::TODO, admin::configuring, implemented-in::python, implemented-in::shell, interface::daemon, role::TODO, role::program, scope::utility, security::TODO, security::ids, security::privacy
+selinux-doc: admin::user-management, role::documentation, special::not-yet-tagged, special::not-yet-tagged::s
+selinux-policy-default: special::not-yet-tagged, special::not-yet-tagged::s
+selinux-policy-refpolicy-doc: admin::TODO, admin::configuring, role::documentation, security::TODO, security::ids, security::privacy
+selinux-policy-refpolicy-src: admin::TODO, admin::configuring, devel::TODO, implemented-in::TODO, role::source, security::TODO, security::ids, security::privacy
+selinux-policy-refpolicy-strict: admin::TODO, admin::configuring, role::app-data, security::TODO, security::ids, security::privacy
+selinux-policy-refpolicy-targeted: admin::TODO, admin::configuring, role::app-data, security::TODO, security::ids, security::privacy
+selinux-utils: admin::configuring, admin::user-management, role::program, scope::utility, security::TODO, special::not-yet-tagged, special::not-yet-tagged::s
+semantic: devel::code-generator, interface::commandline, role::program, scope::utility, suite::emacs
+semi: role::plugin, suite::emacs, works-with::mail
+sendfile: interface::commandline, network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::ncurses, use::transmission, works-with::file
+sendip: interface::commandline, protocol::ipv6, role::program, scope::utility, use::transmission
+sendmail: interface::daemon, mail::smtp, mail::transport-agent, protocol::ipv6, protocol::smtp, role::metapackage, works-with::mail
+sendmail-base: interface::daemon, mail::smtp, mail::transport-agent, protocol::ipv6, protocol::smtp, role::app-data, works-with::mail
+sendmail-bin: interface::daemon, mail::transport-agent, protocol::ipv6, protocol::ldap, protocol::smtp, protocol::ssl, role::app-data, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, works-with::db, works-with::mail
+sendmail-cf: admin::configuring, interface::daemon, mail::transport-agent, protocol::ipv6, protocol::smtp, role::app-data, use::configuring, works-with::mail
+sendmail-doc: devel::doc, interface::daemon, mail::transport-agent, protocol::ipv6, role::documentation, works-with::mail
+sendpage-client: interface::commandline, network::client, role::program, use::dialing, use::transmission, works-with-format::plaintext, works-with::text
+sendpage-common: devel::library, implemented-in::perl, role::app-data, special::auto-inst-parts, special::not-yet-tagged, special::not-yet-tagged::s, use::dialing, use::transmission, works-with-format::plaintext, works-with::text
+sendpage-server: interface::daemon, network::server, role::program, use::dialing, use::transmission, works-with-format::plaintext, works-with::text
+sendxmpp: implemented-in::perl, interface::commandline, protocol::jabber, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s
+sensible-mda: interface::commandline, mail::delivery-agent, role::metapackage, role::program, special::not-yet-tagged, special::not-yet-tagged::s, works-with::mail
+sensord: admin::logging, hardware::detection, interface::daemon, role::program, scope::utility, use::monitor, works-with::logfile
+sensors-applet: hardware::TODO, implemented-in::c, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::monitor, x11::applet
+sepol-utils: admin::kernel, admin::user-management, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s
+seq24: interface::x11, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::gtk, use::editing, use::playing, x11::application
+ser2net: interface::daemon, network::server, role::program, use::proxying, use::transmission
+serendipity: implemented-in::php, interface::web, protocol::http, role::program, scope::application, web::application, web::blog, web::cms, works-with-format::html
+serpentine: hardware::storage, hardware::storage:cd, implemented-in::python, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, works-with::audio, x11::application
+serpento: implemented-in::python, interface::daemon, network::server, role::program, works-with::dictionary
+serveez: interface::daemon, network::server, network::service, role::program, special::not-yet-tagged, special::not-yet-tagged::s, suite::gnu
+serveez-doc: made-of::data:info, network::service, role::documentation, suite::gnu
+service-discovery-applet: interface::x11, protocol::TODO, role::program, uitoolkit::gtk, use::monitor, use::scanning, x11::applet
+set6x86: admin::configuring, admin::hardware, devel::lang:c, implemented-in::c, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::configuring
+setcd: admin::configuring, hardware::storage, hardware::storage:cd, interface::commandline, role::program, scope::utility, use::configuring
+setiathome: special::not-yet-tagged, special::not-yet-tagged::s
+setmixer: admin::boot, admin::configuring, interface::commandline, role::program, scope::utility, sound::mixer
+setools: admin::kernel, admin::user-management, interface::x11, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::gtk, x11::application
+setserial: admin::configuring, admin::hardware, hardware::detection, interface::commandline, role::program, scope::utility, use::configuring
+sextractor: field::astronomy, implemented-in::c, interface::commandline, role::program, scope::application, special::completely-tagged, use::viewing, works-with::image, works-with::image:raster, x11::application
+seyon: admin::hardware, filetransfer::TODO, hardware::modem, implemented-in::c, interface::x11, protocol::TODO, role::program, scope::utility, special::completely-tagged, uitoolkit::athena, use::dialing, x11::application
+sfftobmp: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::converting, works-with::fax, works-with::image, works-with::image:raster
+sfftw-dev: devel::library, field::mathematics, role::devel-lib
+sfftw2: field::mathematics, role::shared-lib, special::auto-inst-parts
+sffview: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::wxwindows, use::viewing, works-with::fax, x11::application
+sfio1999: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::s
+sfio2000: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::s
+sformat: admin::recovery, hardware::storage, interface::commandline, role::program, scope::utility
+sfront: devel::compiler, interface::commandline, role::program, scope::utility, sound::player, works-with-format::mp3, works-with::audio
+sfs-client: admin::filesystem, network::client, protocol::nfs, role::program, security::authentication
+sfs-common: admin::filesystem, network::service, protocol::nfs, role::app-data, special::auto-inst-parts, special::not-yet-tagged, special::not-yet-tagged::s
+sfs-server: admin::filesystem, interface::daemon, network::server, protocol::nfs, role::program, security::authentication
+sg-utils: admin::hardware, hardware::storage, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::scanning, works-with-format::iso9660, works-with::archive
+sg3-utils: admin::configuring, admin::hardware, admin::kernel, hardware::storage, interface::commandline, role::program, use::checking, use::configuring, use::driver, use::viewing
+sgb: field::mathematics
+sgb-doc: field::mathematics, role::documentation
+sgb-src: special::not-yet-tagged, special::not-yet-tagged::s, special::obsolete
+sgcontrol: hardware::hamradio, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, suite::gnome, uitoolkit::gtk, x11::application
+sgf2tex: game::board, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::converting, works-with-format::tex, works-with::text
+sgml-base: admin::configuring, devel::docsystem, implemented-in::perl, interface::commandline, role::app-data, use::configuring, use::editing, works-with-format::sgml, works-with::text
+sgml-base-doc: admin::configuring, devel::doc, devel::docsystem, made-of::data:html, made-of::data:pdf, role::documentation, use::configuring, use::editing, works-with-format::sgml, works-with::text
+sgml-data: admin::configuring, devel::docsystem, implemented-in::perl, role::app-data, use::configuring, use::editing, works-with-format::sgml, works-with::text
+sgml-spell-checker: devel::docsystem, implemented-in::perl, interface::shell, use::checking, works-with-format::sgml, works-with::dictionary, works-with::file, works-with::text
+sgml2x: devel::docsystem, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::converting, works-with-format::sgml, works-with::text
+sgmls-doc: devel::doc, devel::docsystem, made-of::data:html, role::documentation, use::editing, works-with-format::sgml, works-with::text
+sgmlspl: devel::examples, implemented-in::perl, interface::commandline, role::program, scope::utility, use::editing, works-with-format::sgml, works-with::text
+sgmltexi: interface::commandline, role::program, scope::application, use::editing, works-with-format::sgml, works-with-format::tex, works-with::text
+sgmltools-lite: implemented-in::python, interface::commandline, role::program, scope::utility, use::converting, use::editing, works-with-format::docbook, works-with-format::html, works-with-format::pdf, works-with-format::postscript, works-with-format::sgml, works-with-format::tex, works-with::text
+sgrep: interface::commandline, role::program, scope::utility, use::searching, use::text-formatting, works-with::text
+sgt-puzzles: game::puzzle, implemented-in::c, interface::x11, role::program, uitoolkit::gtk, use::entertaining, x11::application
+shaketracker: interface::x11, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::gtk, x11::application
+shapecfg: admin::configuring, network::configuration, special::not-yet-tagged, special::not-yet-tagged::s, use::configuring
+shapelib: devel::library, field::geography, interface::commandline, role::devel-lib, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::converting, works-with::image
+shaper: admin::configuring, interface::commandline, network::configuration, role::program, scope::utility, use::routing
+shaperd: admin::configuring, interface::daemon, network::configuration, use::routing
+shapetools: admin::filesystem, special::not-yet-tagged, special::not-yet-tagged::s
+shapetools-tutorial: role::documentation
+shared-mime-info: admin::configuring, role::app-data, suite::gnome, works-with::file
+sharutils: interface::commandline, role::program, scope::utility, use::converting, works-with::archive
+sharutils-doc: interface::commandline, made-of::data:html, role::documentation, suite::gnu, works-with::archive
+shc: devel::compiler, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s
+shellutils: interface::commandline, role::dummy, special::not-yet-tagged, special::not-yet-tagged::s, special::obsolete, suite::gnu
+shermans-aquarium: admin::monitoring, game::toys, interface::x11, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::gtk, uitoolkit::sdl, use::monitor, x11::applet, x11::application, x11::screensaver
+shfs-source: admin::filesystem, protocol::ssh, role::source, special::not-yet-tagged, special::not-yet-tagged::s
+shfs-utils: admin::filesystem, interface::commandline, protocol::ssh, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::configuring
+shisa: admin::user-management, implemented-in::c, interface::commandline, protocol::kerberos, role::program, security::authentication, security::cryptography, suite::gnu, use::login
+shisen.app: game::board, game::puzzle, implemented-in::objc, interface::x11, role::program, special::not-yet-tagged, special::not-yet-tagged::s, suite::gnustep, uitoolkit::gnustep, use::gameplaying, x11::applet
+shishi: admin::login, implemented-in::c, interface::commandline, network::client, protocol::kerberos, role::program, security::authentication, security::cryptography, suite::gnu, use::login
+shishi-common: protocol::kerberos, role::app-data, special::auto-inst-parts, suite::gnu, use::configuring
+shishi-dbg: role::special:todo, suite::gnu
+shishi-doc: devel::doc, made-of::data:html, made-of::data:info, made-of::data:man, made-of::data:pdf, protocol::kerberos, role::documentation, security::authentication, security::cryptography, suite::gnu
+shishi-kdc: admin::login, admin::user-management, implemented-in::c, interface::daemon, network::server, protocol::kerberos, role::program, security::authentication, suite::gnu, use::login
+shntool: interface::commandline, role::program, scope::utility, use::converting, works-with-format::wav, works-with::audio
+shorewall: admin::configuring, interface::commandline, network::firewall, protocol::ipv6, role::program, scope::utility, security::firewall, use::configuring, use::routing
+shorewall-doc: admin::configuring, made-of::data:html, made-of::data:pdf, network::firewall, protocol::ipv6, role::documentation, security::firewall, use::configuring, use::routing
+shorlfilter: interface::commandline, network::client, protocol::http, role::program, special::not-yet-tagged, special::not-yet-tagged::s, use::compressing
+showimg: interface::x11, role::program, scope::application, suite::kde, uitoolkit::qt, use::viewing, works-with::image, works-with::image:raster, x11::application
+shtool: devel::buildtools, devel::packaging, implemented-in::shell, interface::commandline, role::program, scope::utility, suite::gnu
+shx: interface::text-mode, network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::ncurses
+sibsim4: field::biology, implemented-in::c, interface::commandline, role::program, scope::utility, use::special:todo, works-with-format::plaintext, works-with-format::special:todo, works-with::special:todo
+sic: interface::text-mode, network::client, protocol::irc, role::program, use::chatting
+sidentd: implemented-in::c, interface::daemon, network::server, protocol::ident, protocol::kerberos, role::program, security::authentication
+sidplay: interface::commandline, role::program, scope::utility, sound::player, use::playing, works-with::audio
+sidplay-base: interface::commandline, role::app-data, role::program, scope::utility, sound::player, use::converting, use::playing, works-with::audio
+siege: devel::testing-qa, interface::commandline, protocol::http, protocol::ssl, role::program, scope::utility, use::checking
+sig2dot: implemented-in::perl, interface::commandline, role::program, scope::utility, security::cryptography, use::converting, works-with::image, works-with::image:vector
+sigma-align: field::biology, implemented-in::ocaml, interface::commandline, role::program, scope::utility, works-with-format::plaintext, works-with::special:todo
+signify: implemented-in::perl, interface::commandline, role::program, scope::utility, works-with::mail
+signing-party: implemented-in::perl, interface::commandline, role::program, scope::utility, security::cryptography, works-with-format::postscript, works-with::mail, works-with::text
+silky: special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::gtk
+sillypoker: game::card, interface::commandline, interface::text-mode, role::program, uitoolkit::ncurses, use::gameplaying
+silo: admin::boot, admin::filesystem, interface::commandline, role::program, scope::utility
+sim: implemented-in::c++, interface::x11, network::client, protocol::jabber, protocol::msn-messenger, protocol::oscar, protocol::ssl, protocol::yahoo-messenger, role::program, special::not-yet-tagged, special::not-yet-tagged::s, suite::kde, uitoolkit::qt, use::chatting, x11::application
+sim-data: made-of::data:icons, role::app-data
+sim-qt: implemented-in::c++, interface::x11, network::client, protocol::jabber, protocol::msn-messenger, protocol::oscar, protocol::ssl, protocol::yahoo-messenger, role::program, uitoolkit::qt, use::chatting, x11::application
+sim4: field::biology, implemented-in::c, interface::commandline, role::program, scope::utility, use::special:todo, works-with-format::plaintext, works-with-format::special:todo, works-with::special:todo
+simgear-dev: devel::library, role::devel-lib
+simgear0: devel::library, role::shared-lib
+simh: hardware::emulation, role::program, scope::utility
+simph323: devel::examples, hardware::emulation, protocol::ldap, protocol::ssl, uitoolkit::sdl, works-with::db
+simplecdrx: uitoolkit::gtk
+simpleproxy: interface::daemon, network::server, network::service, role::program, special::not-yet-tagged, special::not-yet-tagged::s, use::proxying
+simpleui.bundle: role::app-data, special::not-yet-tagged, special::not-yet-tagged::s, suite::gnustep, x11::theme
+simulavr: devel::machinecode, field::electronics, hardware::emulation, interface::text-mode, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::ncurses
+simulpic: devel::machinecode, field::electronics, hardware::embedded, hardware::emulation, interface::commandline, role::program, scope::utility
+since: interface::text-mode, role::program, scope::utility, use::viewing, works-with::logfile
+sing: admin::monitoring, implemented-in::c, network::scanner, role::program, scope::utility, use::scanning
+singularity: game::simulation, game::strategy, implemented-in::python, interface::x11, role::program, uitoolkit::sdl, use::entertaining, use::gameplaying
+singularity-data: role::app-data
+sip: devel::lang:c++, devel::lang:python, implemented-in::python, interface::commandline, role::program, scope::utility
+sip-tester: admin::benchmarking, protocol::voip, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::ncurses, use::checking
+sip4: devel::code-generator, devel::lang:c++, devel::lang:python, implemented-in::c, interface::commandline, role::program, scope::utility, special::completely-tagged, special::not-yet-tagged, special::not-yet-tagged::s, works-with::software:source
+sipcalc: interface::commandline, protocol::ipv6, role::program, scope::utility
+sipp: devel::library, role::shared-lib, works-with::3dmodel
+sipp-dev: devel::library, role::devel-lib, works-with::3dmodel
+siproxd: interface::daemon, network::server, protocol::voip, role::program, special::not-yet-tagged, special::not-yet-tagged::s, use::proxying
+sipsak: interface::commandline, protocol::voip, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::checking
+siptoolbox: special::not-yet-tagged, special::not-yet-tagged::s
+sirc: filetransfer::dcc, implemented-in::perl, interface::text-mode, network::client, protocol::irc, role::program, uitoolkit::ncurses, use::chatting
+sitebar: devel::lang:sql, implemented-in::php, interface::web, protocol::http, role::program, special::not-yet-tagged, special::not-yet-tagged::s, use::organizing, works-with::db, works-with::pim
+sitecopy: filetransfer::ftp, filetransfer::http, implemented-in::c, interface::commandline, network::client, protocol::ftp, protocol::http, protocol::ssl, protocol::webdav, role::program, use::synchronizing, works-with-format::html, works-with::text
+sitemap: implemented-in::python, interface::commandline, protocol::http, role::program, scope::application, use::organizing, works-with-format::html, works-with::text
+sitescooper: hardware::embedded, implemented-in::perl, protocol::http, use::downloading, use::monitor, works-with-format::html, works-with::text
+sitescooper-sites: hardware::embedded, implemented-in::perl, protocol::http, role::app-data, use::downloading, use::monitor, works-with-format::html, works-with::text
+sitesummary: admin::monitoring, implemented-in::perl, implemented-in::shell, network::server, role::program, use::monitor
+sitesummary-client: admin::monitoring, implemented-in::shell, network::client, role::program, use::monitor
+sjeng: game::board, game::board:chess, role::program, use::gameplaying, works-with::db, x11::application
+sjog: admin::hardware, hardware::input, hardware::input:mouse, interface::x11, uitoolkit::gtk, x11::application
+skalibs-dev: devel::lang:c, devel::library, implemented-in::c, role::devel-lib
+skalibs-doc: devel::doc, devel::lang:c, made-of::data:html, role::documentation, special::not-yet-tagged, special::not-yet-tagged::s
+skencil: field::arts, implemented-in::python, interface::x11, mail::special:not-applicable, network::special:not-applicable, office::presentation, protocol::special:not-applicable, role::program, scope::application, security::special:not-applicable, sound::special:not-applicable, suite::special:not-applicable, uitoolkit::tk, use::TODO, use::converting, use::editing, web::special:not-applicable, works-with-format::TODO, works-with-format::pdf, works-with-format::postscript, works-with-format::svg, works-with::image, works-with::image:vector, x11::application
+sketch: role::dummy, special::obsolete
+skim: uitoolkit::qt
+skippy: implemented-in::c, interface::x11, role::program, scope::utility, uitoolkit::special:not-applicable, x11::application
+skkdic: culture::japanese, made-of::data:dictionary, role::app-data
+skkdic-cdb: culture::japanese, made-of::data:dictionary, role::app-data
+skkdic-extra: culture::japanese, made-of::data:dictionary, role::app-data
+skkfep: accessibility::input, culture::japanese, interface::text-mode, network::client, role::program, uitoolkit::ncurses
+skkinput: accessibility::input, culture::japanese, interface::x11, network::client, role::program, x11::application
+skksearch: accessibility::input, culture::japanese, implemented-in::c, network::server, role::program, works-with::dictionary
+skkserv: accessibility::input, culture::japanese, implemented-in::lisp, network::server, role::program, works-with::dictionary
+skktools: accessibility::input, culture::japanese, implemented-in::lisp, interface::commandline, role::program, scope::utility, works-with::dictionary
+skribe: implemented-in::scheme, special::not-yet-tagged, special::not-yet-tagged::s, use::editing, works-with-format::html, works-with-format::info, works-with-format::man, works-with-format::pdf, works-with-format::plaintext, works-with-format::tex, works-with::text
+skribe-doc: role::documentation, special::not-yet-tagged, special::not-yet-tagged::s, use::editing
+skribe-el: implemented-in::lisp, role::documentation, role::plugin, special::not-yet-tagged, special::not-yet-tagged::s, suite::emacs, use::editing
+skribe-examples: devel::examples, implemented-in::scheme, role::data, role::documentation, special::not-yet-tagged, special::not-yet-tagged::s, use::editing
+sks-ecc: implemented-in::c, interface::commandline, role::program, scope::utility, security::cryptography, works-with::file
+sks-ecc-doc: interface::special:not-applicable, role::documentation, scope::utility, security::cryptography
+skyeye: uitoolkit::gtk
+skyutils-dev: devel::library, protocol::http, role::devel-lib
+skyutils2: protocol::http, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::s
+sl: game::toys, interface::text-mode, role::program, uitoolkit::ncurses, use::entertaining
+sl-modem-daemon: admin::hardware, hardware::modem, implemented-in::c, interface::daemon, role::program
+sl-modem-source: hardware::modem
+slang-gsl: field::physics, suite::gnu
+slang-gtk: uitoolkit::gtk
+slang1: devel::lang:c, devel::library, interface::text-mode, role::shared-lib
+slang1-dev: devel::lang:c, devel::library, interface::text-mode, role::devel-lib
+slang1-pic: devel::lang:c, devel::library, hardware::embedded, interface::text-mode, role::devel-lib
+slang1-utf8-dev: devel::lang:c, devel::library, interface::text-mode, role::devel-lib
+slang1-utf8-pic: devel::lang:c, devel::library, interface::text-mode, role::shared-lib
+slang1a-utf8: devel::lang:c, devel::library, interface::text-mode, role::shared-lib
+slapd: implemented-in::c, interface::daemon, network::server, protocol::ldap, role::program, security::authentication, works-with::db
+slash: devel::lang:sql, interface::web, special::not-yet-tagged, special::not-yet-tagged::s, web::blog, web::cms, works-with::db
+slashem: game::rpg:rogue, interface::text-mode, uitoolkit::gtk, uitoolkit::ncurses
+slashem-common: game::rpg:rogue, role::app-data, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::gtk
+slashem-gtk: game::rpg:rogue, interface::x11, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::gtk, uitoolkit::ncurses, x11::application
+slashem-sdl: game::rpg:rogue, interface::x11, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::gtk, uitoolkit::sdl, x11::application
+slashem-x11: game::rpg:rogue, interface::x11, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::athena, uitoolkit::gtk, uitoolkit::ncurses, x11::application
+slat: admin::user-management, interface::text-mode, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::ncurses, use::checking
+slate: uitoolkit::ncurses
+slatec: devel::lang:fortran, devel::library, field::mathematics, implemented-in::fortran, role::shared-lib
+slay: admin::user-management, interface::commandline, role::program, scope::utility, works-with::software:running
+slbackup: admin::backup, implemented-in::perl, interface::daemon, network::server, role::program
+sleepd: admin::power-management, hardware::laptop, hardware::power, hardware::power:acpi, hardware::power:apm, interface::daemon, network::server, role::program
+sleepenh: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::timekeeping
+sleuthkit: admin::forensics, interface::commandline, role::program, scope::utility
+slib: devel::lang:scheme, devel::library, implemented-in::scheme, role::app-data
+slice: interface::commandline, role::program, scope::utility, works-with::text
+slidentd: interface::daemon, network::server, protocol::ident, role::program
+slides-doc: devel::lang:python, role::documentation, works-with-format::html, works-with::text
+slimp3: implemented-in::perl, interface::daemon, network::server, role::program, sound::player, special::not-yet-tagged, special::not-yet-tagged::s, use::playing, works-with-format::mp3, works-with::audio
+slimserver: network::server, role::program, works-with::audio
+slirp: hardware::modem, network::server, role::program
+slmon: admin::monitoring, interface::text-mode, role::program, scope::utility, use::monitor
+slocate: interface::commandline, role::program, scope::utility, use::searching, works-with::file
+sloccount: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, works-with::software:source
+slpd: interface::daemon, network::scanner, network::server, network::service, role::program, special::not-yet-tagged, special::not-yet-tagged::s
+slpim: interface::text-mode, role::program, scope::application, uitoolkit::ncurses, works-with::pim
+slptool: interface::commandline, network::client, network::scanner, network::service, role::program, special::not-yet-tagged, special::not-yet-tagged::s
+slrn: interface::text-mode, network::client, protocol::nntp, protocol::ssl, role::program
+slrnface: interface::x11, protocol::nntp, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::viewing, works-with::image, works-with::image:raster, x11::application
+slrnpull: interface::commandline, network::client, protocol::nntp, protocol::ssl, role::program
+slsc: interface::text-mode, office::spreadsheet, role::program, scope::application, uitoolkit::ncurses, use::editing, works-with::spreadsheet
+slune: game::arcade, implemented-in::python, interface::3d, interface::x11, role::program, use::gameplaying, x11::application
+slurm: admin::monitoring, interface::text-mode, role::program, scope::application, uitoolkit::ncurses, use::monitor
+smail: network::server, protocol::smtp, role::program, works-with::mail
+smake: devel::buildtools, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s
+smalleiffel: devel::compiler, interface::commandline, role::dummy, special::obsolete, works-with::software:source
+smart-notifier: admin::monitoring, interface::x11, role::program, scope::utility, use::monitor
+smartcard: admin::hardware, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s
+smarteiffel: devel::TODO, devel::compiler, implemented-in::c, interface::commandline, role::program, scope::utility, suite::gnu, works-with::software:source
+smartlist: mail::list, works-with::mail
+smartmontools: admin::monitoring, hardware::storage, interface::daemon, network::server, role::program, use::monitor
+smartpm: admin::package-management, implemented-in::python, role::program, special::not-yet-tagged, special::not-yet-tagged::s, works-with::software:package
+smarty: devel::lang:php, special::not-yet-tagged, special::not-yet-tagged::s, web::cgi
+smb-nat: filetransfer::smb, interface::commandline, network::client, network::scanner, protocol::smb, role::program, use::scanning
+smb2www: filetransfer::smb, implemented-in::perl, interface::web, network::client, protocol::smb, role::program, suite::samba, use::browsing, web::cgi
+smb4k: filetransfer::smb, interface::x11, network::client, protocol::smb, role::program, suite::kde, suite::samba, uitoolkit::qt, use::browsing, x11::application
+smbc: filetransfer::smb, interface::text-mode, network::client, protocol::smb, role::program, suite::samba, uitoolkit::ncurses, use::browsing, use::searching
+smbclient: filetransfer::smb, interface::commandline, interface::text-mode, network::client, protocol::smb, role::program, suite::samba, uitoolkit::ncurses, use::browsing
+smbfs: admin::filesystem, filetransfer::smb, interface::commandline, network::client, protocol::smb, role::program, suite::samba
+smbget: filetransfer::smb, interface::commandline, network::client, protocol::smb, role::program, special::not-yet-tagged, special::not-yet-tagged::s, suite::samba, use::downloading
+smbldap-tools: admin::user-management, filetransfer::smb, implemented-in::perl, interface::commandline, protocol::ldap, protocol::smb, protocol::ssl, role::program, scope::utility, security::authentication, works-with::db
+smilutils: implemented-in::c++, interface::text-mode, interface::x11, role::shared-lib, uitoolkit::gtk, uitoolkit::ncurses, uitoolkit::sdl, use::converting, works-with::video, x11::application
+sml-mode: devel::lang:ml, implemented-in::lisp, role::plugin, suite::emacs, use::editing
+smlnj: devel::buildtools, devel::compiler, devel::interpreter, devel::lang:ml, implemented-in::ml, interface::commandline, interface::text-mode, role::program, scope::application, scope::utility, works-with::software:source
+smlnj-runtime: devel::lang:ml, devel::runtime, implemented-in::ml, role::app-data, role::shared-lib, scope::special:todo, works-with::software:package
+smokeping: admin::logging, admin::monitoring, implemented-in::perl, interface::web, network::server, protocol::ipv6, role::program, special::not-yet-tagged, special::not-yet-tagged::s, use::scanning, web::cgi, works-with::db, works-with::image, works-with::image:vector, works-with::logfile
+smpeg-gtv: interface::x11, role::program, scope::application, sound::player, uitoolkit::gtk, uitoolkit::sdl, use::playing, works-with-format::mp3, works-with::audio, works-with::video, x11::application
+smpeg-plaympeg: interface::commandline, interface::x11, role::program, scope::application, sound::player, uitoolkit::gtk, uitoolkit::sdl, use::viewing, works-with-format::mp3, works-with::audio, works-with::video, x11::application
+smpeg-xmms: interface::x11, role::plugin, role::shared-lib, sound::player, suite::xmms, uitoolkit::gtk, uitoolkit::sdl, use::viewing, works-with-format::mp3, works-with::audio, works-with::video, x11::application
+sms-pl: culture::polish, implemented-in::c++, interface::commandline, network::client, role::program, use::transmission
+smsclient: network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::s, use::transmission
+smssend: network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::s, use::transmission
+smstools: hardware::modem, use::transmission
+smtm: field::finance, implemented-in::perl, network::client, office::finance, protocol::http, role::program, uitoolkit::tk, use::downloading
+smtp-refuser: interface::daemon, mail::filters, network::server, protocol::ip, protocol::smtp, role::program, works-with::mail
+smtpd: interface::daemon, mail::smtp, network::server, protocol::smtp, role::program, use::proxying, works-with::mail
+smtpfeed: interface::daemon, network::server, protocol::smtp, role::program, works-with::mail
+sn: interface::daemon, network::server, protocol::nntp, role::program
+snac: field::mathematics, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, x11::application
+snacc: devel::compiler, devel::lang:c, devel::lang:c++, devel::rpc, interface::commandline, role::program, scope::utility, works-with::software:source
+snacc-doc: devel::doc, devel::rpc, made-of::data:postscript, made-of::data:tex, role::documentation
+snake4: game::arcade, interface::x11, role::program, uitoolkit::athena, use::gameplaying, x11::application
+snappea: devel::lang:python, field::mathematics, interface::x11, uitoolkit::tk, x11::application
+snappea-dev: devel::library, field::mathematics, role::devel-lib
+snarf: interface::commandline, protocol::ftp, protocol::http, role::program, scope::utility, use::downloading
+snd: devel::lang:scheme, role::metapackage, uitoolkit::gtk, use::editing, use::viewing, works-with::audio
+snd-doc: devel::lang:scheme, role::documentation, use::editing, use::viewing, works-with::audio
+snd-gtk: devel::lang:scheme, interface::x11, role::program, scope::application, uitoolkit::gtk, use::editing, use::viewing, works-with::audio, x11::application
+snd-gtk-alsa: devel::lang:scheme, interface::x11, role::program, scope::application, uitoolkit::gtk, use::editing, use::viewing, works-with::audio, x11::application
+sndfile-programs: devel::examples, interface::commandline, sound::player, use::converting, works-with-format::wav, works-with::audio
+snes9express: hardware::emulation, suite::gnome, uitoolkit::gtk
+snes9x-common: special::auto-inst-parts, special::not-yet-tagged, special::not-yet-tagged::s
+snes9x-opengl: interface::3d
+snes9x-x: hardware::emulation, interface::x11, role::program, use::gameplaying, x11::application
+sng: devel::compiler, interface::commandline, role::program, scope::utility, use::converting, use::text-formatting, works-with-format::png, works-with::image, works-with::image:raster, works-with::text
+sniffit: interface::text-mode, mail::notification, role::program, scope::utility, uitoolkit::ncurses, use::monitor, use::scanning, works-with::mail
+snmp: interface::commandline, network::service, protocol::snmp, role::program, scope::utility
+snmpd: interface::daemon, network::server, protocol::snmp, role::program, use::monitor
+snmptrapfmt: interface::daemon, network::server, protocol::snmp, role::program, special::not-yet-tagged, special::not-yet-tagged::s, use::monitor
+snooper: admin::hardware, interface::text-mode, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::ncurses
+snoopy: admin::logging, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, works-with::logfile, works-with::software:running
+snort: admin::logging, admin::monitoring, interface::daemon, network::server, role::program, security::ids, use::monitor
+snort-common: admin::logging, admin::monitoring, interface::daemon, role::app-data, security::ids, special::auto-inst-parts, use::monitor
+snort-doc: admin::logging, admin::monitoring, interface::daemon, made-of::data:pdf, role::documentation, security::ids, use::monitor
+snort-mysql: admin::logging, admin::monitoring, devel::lang:sql, interface::daemon, network::server, role::program, security::ids, use::monitor, works-with::db
+snort-pgsql: admin::logging, admin::monitoring, devel::lang:sql, interface::daemon, network::server, role::program, security::ids, use::monitor, works-with::db
+snort-rules-default: admin::logging, admin::monitoring, interface::daemon, role::app-data, security::ids, special::auto-inst-parts, use::monitor
+snowdrop: interface::commandline, role::program, scope::utility, security::integrity, works-with::text
+snowflake: game::toys, interface::x11, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+snownews: implemented-in::c, interface::text-mode, network::client, role::program, uitoolkit::ncurses, works-with-format::xml, works-with-format::xml:rss, works-with::special:todo
+sntop: admin::monitoring, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::monitor
+snui-client: network::client, role::program
+snui-common: special::auto-inst-parts, special::not-yet-tagged, special::not-yet-tagged::s
+snui-server: interface::daemon, network::server, role::program
+so-far: game::rpg, use::gameplaying
+soap4r: devel::lang:ruby, role::metapackage, special::not-yet-tagged, special::not-yet-tagged::s
+socat: role::program, special::not-yet-tagged, special::not-yet-tagged::s, use::transmission
+socket: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s
+socketapi-dev: devel::library, role::devel-lib
+socketapi1: devel::library, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::s
+socklog: admin::kernel, admin::logging, interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::s, works-with::logfile
+socklog-run: admin::kernel, admin::logging, interface::daemon, role::app-data, special::not-yet-tagged, special::not-yet-tagged::s, works-with::logfile
+socks4-clients: interface::text-mode, network::client, protocol::finger, protocol::ftp, role::program, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::ncurses, use::proxying
+socks4-server: interface::daemon, network::server, role::program, use::proxying
+sodipodi: interface::x11, role::program, role::shared-lib, scope::application, uitoolkit::gtk, use::editing, works-with-format::png, works-with-format::svg, works-with::image, works-with::image:vector, x11::application
+softbeep: role::shared-lib, works-with::audio
+solarwolf: game::arcade, implemented-in::python, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+solfege: field::arts, implemented-in::python, suite::gnome, suite::gnu, uitoolkit::gtk, use::learning, x11::application
+solid-pop3d: implemented-in::c, interface::daemon, mail::pop, network::server, protocol::pop3, role::program, works-with::mail
+somaplayer: implemented-in::c, interface::commandline, interface::x11, network::client, network::server, role::program, sound::player, uitoolkit::gtk, use::playing, works-with-format::iso9660, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::archive, works-with::audio, x11::application
+somaplayer-doc: interface::commandline, interface::x11, made-of::data:html, role::documentation, sound::player, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::gtk, use::playing, works-with-format::iso9660, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::archive, works-with::audio, x11::application
+sonata: implemented-in::python, interface::x11, network::client, role::program, scope::application, sound::player, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+songwrite: field::arts, implemented-in::python, interface::x11, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::tk, use::editing, works-with::music-notation, x11::application
+sooperlooper: special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::ncurses, uitoolkit::wxwindows
+sopwith: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+sork-accounts: admin::user-management, implemented-in::php, interface::web, special::not-yet-tagged, special::not-yet-tagged::s
+sork-forwards: implemented-in::php, interface::web, special::not-yet-tagged, special::not-yet-tagged::s, works-with::mail
+sork-passwd: implemented-in::php, interface::web, security::authentication
+sork-vacation: implemented-in::php, interface::web, special::not-yet-tagged, special::not-yet-tagged::s, works-with::mail
+sortmail: mail::filters, role::program, scope::utility, use::organizing, works-with::mail
+sound-icons: role::app-data, use::playing
+sound-juicer: hardware::storage, hardware::storage:cd, implemented-in::c, interface::x11, role::program, scope::application, sound::player, suite::gnome, uitoolkit::gtk, use::converting, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::audio, x11::application
+sound-recorder: hardware::storage, hardware::storage:cd, interface::commandline, role::program, scope::utility, sound::player, works-with-format::wav, works-with::audio
+soundconverter: implemented-in::python, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::converting, works-with::audio, x11::application
+soundgrab: interface::commandline, role::program, scope::application, use::editing, works-with-format::oggvorbis, works-with-format::wav, works-with::audio
+soundmodem: hardware::hamradio, interface::x11, uitoolkit::gtk, x11::application
+soundtracker: interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::editing, use::playing, works-with::audio, x11::application
+source-highlight: devel::prettyprint, implemented-in::c++, interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with::software:source, works-with::text
+sourceforge: devel::buildtools, role::dummy, special::obsolete
+sourcenav: devel::buildtools, role::program, scope::utility, use::browsing, use::editing, works-with::software:source
+sox: implemented-in::c, interface::commandline, role::program, scope::utility, use::converting, works-with::audio
+sox-dev: implemented-in::c, role::devel-lib, use::converting, works-with::audio
+sp: interface::commandline, role::program, use::converting, use::editing, works-with-format::sgml, works-with-format::xml, works-with::text
+space-orbit: field::physics, game::arcade, interface::3d, role::program, use::gameplaying, x11::application
+space-orbit-common: field::physics, game::arcade, interface::3d, role::app-data, use::gameplaying
+spacearyarya: game::arcade, interface::x11, role::program, use::gameplaying, x11::application
+spacechart: field::astronomy, game::toys, interface::3d, role::program, suite::gnome, uitoolkit::gtk, use::gameplaying, use::viewing, x11::application
+spamass-milter: implemented-in::c++, interface::daemon, mail::filters, protocol::smtp, use::scanning, works-with::mail
+spamassassin: implemented-in::perl, interface::daemon, mail::filters, network::server, protocol::smtp, role::program, use::scanning, works-with::mail
+spambayes: implemented-in::python, interface::daemon, mail::filters, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::s, use::checking, works-with::mail
+spamc: interface::commandline, mail::filters, network::client, protocol::smtp, role::program, use::scanning, works-with::mail
+spamoracle: implemented-in::ocaml, interface::commandline, mail::filters, protocol::smtp, role::program, scope::utility, use::checking, works-with::mail
+spamoracle-byte: implemented-in::ocaml, interface::commandline, mail::filters, protocol::smtp, role::program, scope::utility, use::checking, works-with::mail
+spampd: implemented-in::perl, interface::daemon, mail::filters, mail::smtp, network::server, protocol::smtp, role::program, use::scanning, works-with::mail
+spamprobe: implemented-in::c++, interface::commandline, mail::filters, role::program, scope::utility, use::checking, works-with::db, works-with::mail
+sparsehash: devel::library
+spass: field::mathematics, special::not-yet-tagged, special::not-yet-tagged::s
+spawg: interface::x11, role::program, scope::utility, uitoolkit::gtk, use::viewing, works-with-format::tex, works-with::text, x11::application
+spawx11: interface::x11, role::program, scope::utility, use::viewing, works-with-format::tex, works-with::text, x11::application
+spca5xx-source: role::source
+spe: devel::ide, devel::lang:python, uitoolkit::wxwidgets
+specimen: interface::x11, role::program, scope::application, sound::midi, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::gtk, works-with::audio, x11::application
+spectemu-common: hardware::emulation, special::auto-inst-parts
+spectemu-svga: hardware::emulation, uitoolkit::ncurses
+spectemu-x11: hardware::emulation, uitoolkit::ncurses
+specter: admin::logging, interface::daemon, network::server, role::program, security::firewall, use::monitor
+specter-mysql: admin::logging, devel::lang:sql, interface::daemon, role::plugin, security::firewall, use::monitor, works-with::db
+specter-pgsql: admin::logging, devel::lang:sql, interface::daemon, role::plugin, security::firewall, use::monitor, works-with::db
+spectrum-roms: hardware::emulation
+speech-dispatcher: accessibility::speech, interface::daemon, network::server, role::program, works-with::audio
+speech-dispatcher-doc-cs: accessibility::speech, culture::czech, made-of::data:info, role::documentation, works-with::audio
+speech-dispatcher-festival: accessibility::speech, role::metapackage, works-with::audio
+speech-tools: accessibility::speech, field::linguistics, implemented-in::c++, interface::commandline, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::playing
+speech-tools-doc: accessibility::speech, field::linguistics, interface::commandline, interface::text-mode, made-of::data:html, made-of::data:postscript, role::documentation, use::playing, works-with::audio
+speechd-el: accessibility::screen-reader, accessibility::speech, devel::library, implemented-in::lisp, role::documentation, role::plugin, suite::emacs, use::playing, works-with::audio
+speechd-el-doc-cs: accessibility::screen-reader, accessibility::speech, culture::czech, devel::library, made-of::data:info, role::documentation, suite::emacs, use::playing, works-with::audio
+speedbar: implemented-in::lisp, role::plugin, suite::emacs, use::browsing, use::editing, works-with::file
+speedbar-beta: implemented-in::lisp, role::dummy, special::obsolete, suite::emacs, use::browsing, use::editing, works-with::file
+speedtouch: hardware::modem:dsl, hardware::usb, role::program, scope::utility, use::dialing, use::driver
+speedy-cgi-perl: devel::lang:perl, implemented-in::perl, role::shared-lib, web::cgi
+speex: interface::commandline, protocol::voip, role::program, scope::utility, sound::compression, use::converting, works-with-format::wav, works-with::audio
+speex-doc: devel::doc, made-of::data:html, made-of::data:pdf, made-of::data:postscript, made-of::data:tex, protocol::voip, role::documentation, sound::compression, use::converting, works-with-format::wav, works-with::audio
+spell: interface::commandline, role::program, scope::utility, suite::gnu, use::checking, works-with::dictionary, works-with::text
+spellcast: game::strategy, interface::x11, role::program, use::gameplaying, x11::application
+spellcast-doc: game::strategy, role::documentation, use::gameplaying
+spellutils: implemented-in::c, interface::commandline, role::program, scope::utility, use::checking, works-with::dictionary, works-with::mail, works-with::text
+spew: admin::benchmarking, devel::testing-qa, hardware::storage, implemented-in::c++, interface::commandline, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses
+spfmilter: special::not-yet-tagged, special::not-yet-tagged::s
+spfqtool: protocol::smtp, role::program, special::not-yet-tagged, special::not-yet-tagged::s, use::checking
+spfquery: special::not-yet-tagged, special::not-yet-tagged::s
+sphinx2-bin: accessibility::speech-recognition, interface::commandline, role::program, scope::utility, works-with::audio
+sphinx2-hmm-6k: accessibility::speech-recognition, role::app-data, works-with::audio
+spicctrl: hardware::laptop, interface::commandline, role::program, scope::utility, uitoolkit::gtk, use::configuring
+spider: game::card, interface::x11, role::program, uitoolkit::athena, use::gameplaying, x11::application
+spidermonkey-bin: devel::interpreter, devel::lang:ecmascript, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::ncurses
+spidermonkey1: devel::interpreter, role::dummy, special::not-yet-tagged, special::not-yet-tagged::s, special::obsolete
+spikeproxy: implemented-in::python, interface::commandline, made-of::data:xml, protocol::http, protocol::ssl, use::checking, use::proxying
+spim: hardware::emulation, uitoolkit::athena
+spinner: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::dialing, use::transmission
+spip: special::not-yet-tagged, special::not-yet-tagged::s
+spip-eva: special::not-yet-tagged, special::not-yet-tagged::s
+spiralsynthmodular: implemented-in::c++, interface::x11, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::TODO, works-with::audio, x11::application
+spl-core: uitoolkit::ncurses
+spl-kde: uitoolkit::qt
+spl-webspl: uitoolkit::ncurses
+splashy: admin::boot, admin::power-management, devel::special:not-applicable, field::special:not-applicable, filetransfer::special:not-applicable, game::special:not-applicable, implemented-in::c, interface::framebuffer, mail::special:not-applicable, protocol::special:not-applicable, role::program, scope::special:todo, suite::special:not-applicable, uitoolkit::special:not-applicable, use::monitor, web::special:not-applicable, x11::special:not-applicable
+splat: hardware::hamradio, special::not-yet-tagged, special::not-yet-tagged::s
+splay: interface::commandline, role::program, scope::utility, sound::player, use::playing, works-with-format::mp3, works-with-format::wav, works-with::audio
+spline: field::mathematics
+splint: devel::lang:c, devel::testing-qa, interface::commandline, role::program, scope::utility, use::checking, works-with::software:source
+splint-doc: devel::lang:c, devel::testing-qa, interface::commandline, made-of::data:html, role::documentation, use::checking, works-with::software:source
+splitdigest: interface::commandline, mail::list, role::program, scope::utility, use::converting, works-with::mail
+splitvt: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, works-with::software:running
+spong-client: admin::monitoring, implemented-in::perl, interface::commandline, network::client, network::service, role::program, use::monitor
+spong-common: admin::monitoring, implemented-in::perl, interface::commandline, network::service, role::app-data, special::auto-inst-parts, use::monitor
+spong-server: admin::monitoring, implemented-in::perl, interface::commandline, interface::daemon, network::server, network::service, role::program, use::monitor
+spong-www: admin::monitoring, implemented-in::perl, interface::commandline, interface::web, network::client, network::service, role::program, use::monitor, web::cgi, works-with::db
+sppc: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::editing, use::viewing, works-with-format::postscript, works-with::image, works-with::image:raster, works-with::text, x11::application
+spread: network::service, special::not-yet-tagged, special::not-yet-tagged::s
+springgraph: implemented-in::perl, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::converting, works-with::image, works-with::image:vector
+sqcwa: interface::daemon, protocol::http, role::plugin, use::proxying, works-with::logfile
+sql-editor: devel::lang:sql, implemented-in::python, interface::x11, uitoolkit::gtk, use::editing, works-with::db, x11::application
+sql-ledger: devel::lang:sql, field::finance, implemented-in::perl, interface::web, office::finance, role::program, scope::application, use::organizing, web::application, works-with::db
+sqlite: devel::lang:sql, devel::library, implemented-in::c, interface::commandline, network::client, role::program, works-with::db
+sqlite-doc: devel::lang:sql, devel::library, made-of::data:html, role::documentation, works-with::db
+sqlite3: devel::lang:sql, devel::library, implemented-in::c, interface::commandline, network::client, role::program, works-with::db
+sqlite3-doc: devel::lang:sql, devel::library, made-of::data:html, role::documentation, works-with::db
+sqlrelay: devel::lang:sql, implemented-in::c++, interface::daemon, network::load-balancing, network::server, role::program, uitoolkit::ncurses, use::proxying, works-with::db
+sqlrelay-config-gtk: admin::configuring, devel::lang:sql, interface::x11, network::client, role::program, uitoolkit::gtk, use::configuring, use::proxying, works-with::db, x11::application
+sqlrelay-dev: devel::lang:c, devel::lang:c++, devel::lang:sql, devel::library, network::load-balancing, role::devel-lib, use::proxying, works-with::db
+sqlrelay-doc: devel::lang:sql, made-of::data:html, network::load-balancing, role::documentation, use::proxying, works-with::db
+sqlrelay-freetds: devel::lang:sql, role::plugin, special::not-yet-tagged, special::not-yet-tagged::s, use::proxying, works-with::db
+sqlrelay-mysql: devel::lang:sql, role::plugin, special::not-yet-tagged, special::not-yet-tagged::s, use::proxying, works-with::db
+sqlrelay-odbc: devel::lang:sql, role::plugin, special::not-yet-tagged, special::not-yet-tagged::s, use::proxying, works-with::db
+sqlrelay-postgresql: devel::lang:sql, role::plugin, special::not-yet-tagged, special::not-yet-tagged::s, use::proxying, works-with::db
+sqlrelay-sqlite: devel::lang:sql, role::plugin, use::proxying, works-with::db
+sqlrelay-test: devel::debugger, devel::lang:sql, role::plugin, special::not-yet-tagged, special::not-yet-tagged::s, use::proxying, works-with::db
+sqsh: devel::lang:sql, interface::shell, network::client, role::program, uitoolkit::motif, uitoolkit::ncurses, works-with::db
+squashfs-tools: admin::filesystem, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::compressing
+squid: filetransfer::ftp, filetransfer::http, interface::daemon, network::server, protocol::ftp, protocol::http, protocol::ldap, role::program, use::proxying, works-with-format::html, works-with::db, works-with::text
+squid-cgi: filetransfer::ftp, filetransfer::http, interface::daemon, network::server, protocol::ftp, protocol::http, role::program, use::proxying, web::cgi, works-with-format::html, works-with::text
+squid-common: protocol::http, role::app-data, special::not-yet-tagged, special::not-yet-tagged::s, use::proxying
+squid-prefetch: protocol::http, special::not-yet-tagged, special::not-yet-tagged::s, use::proxying
+squid3: interface::daemon, network::server, protocol::ftp, protocol::http, role::program, use::proxying
+squidclient: filetransfer::ftp, filetransfer::http, interface::commandline, network::client, protocol::ftp, protocol::http, role::program, use::proxying, works-with-format::html, works-with::text
+squidguard: admin::user-management, filetransfer::ftp, filetransfer::http, interface::daemon, protocol::ftp, protocol::http, role::plugin, use::configuring, use::proxying, works-with-format::html, works-with::text
+squidtaild: filetransfer::ftp, filetransfer::http, implemented-in::perl, interface::web, network::server, protocol::ftp, protocol::http, role::program, security::log-analyzer, use::monitor, use::proxying, works-with-format::html, works-with::logfile, works-with::text
+squidview: filetransfer::ftp, filetransfer::http, interface::text-mode, protocol::ftp, protocol::http, security::log-analyzer, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::ncurses, use::monitor, use::proxying, works-with-format::html, works-with::logfile, works-with::text
+squirrelmail: implemented-in::php, interface::web, mail::imap, mail::smtp, mail::user-agent, network::server, protocol::http, protocol::imap, protocol::smtp, role::program, scope::application, use::browsing, use::editing, use::searching, use::transmission, use::viewing, web::application, web::special:todo, works-with::mail
+squirrelmail-decode: devel::i18n, implemented-in::php, use::converting, works-with-format::plaintext, works-with::mail, works-with::text
+squirrelmail-locales: interface::web, mail::imap, mail::transport-agent, protocol::imap, role::app-data, use::editing, use::viewing, works-with::mail
+squishdot: implemented-in::python, network::server, role::program, suite::zope, use::editing, web::cms
+sqwebmail: interface::daemon, network::server, role::program, works-with::mail
+sqwebmail-de: culture::german, interface::web, made-of::data:html, mail::user-agent, network::server, role::app-data, use::organizing, web::application, works-with::mail, works-with::pim
+src2tex: devel::docsystem, devel::prettyprint, interface::commandline, role::program, scope::utility, use::converting, use::printing, works-with-format::tex, works-with::software:source, works-with::text
+srcinst: implemented-in::haskell
+srecord: devel::machinecode, implemented-in::c++, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::converting
+sredird: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s
+srg: filetransfer::ftp, filetransfer::http, implemented-in::c, implemented-in::c++, interface::commandline, protocol::ftp, protocol::http, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::monitor, use::proxying, works-with-format::html, works-with::logfile, works-with::text
+srs: implemented-in::perl, mail::filters, network::client, role::program, security::authentication, special::not-yet-tagged, special::not-yet-tagged::s, works-with::mail
+ss-dev: devel::library, interface::commandline, role::devel-lib, role::program, scope::utility
+ssed: interface::commandline, role::program, scope::utility, works-with::text
+ssh: interface::shell, network::client, network::server, protocol::ip, protocol::ipv6, protocol::ssh, role::program, security::cryptography, use::login
+ssh-askpass: interface::x11, protocol::ssh, role::program, scope::utility, security::authentication, uitoolkit::gtk, use::login, x11::application
+ssh-askpass-fullscreen: interface::x11, protocol::ssh, role::program, scope::utility, security::authentication, uitoolkit::gtk, use::login, x11::application
+ssh-askpass-gnome: interface::x11, protocol::ssh, role::program, scope::utility, security::authentication, suite::gnome, uitoolkit::gtk, use::login, x11::application
+ssh-krb5: interface::shell, network::client, network::server, protocol::ipv6, protocol::kerberos, protocol::ssh, role::program, security::cryptography, use::login
+sshfs: admin::filesystem, interface::shell, network::client, protocol::ssh, role::program, security::cryptography
+ssl-cert: interface::commandline, protocol::ssl, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s
+ssldump: interface::commandline, protocol::ssl, role::program, scope::utility, use::scanning
+sslwrap: interface::daemon, network::server, protocol::ssl, role::program, special::not-yet-tagged, special::not-yet-tagged::s
+ssmtp: interface::daemon, mail::transport-agent, network::server, protocol::smtp, role::program, works-with::mail
+ssystem: field::astronomy, game::toys, interface::3d, role::program, use::gameplaying, x11::application
+stalin: devel::compiler, devel::lang:scheme, interface::commandline, role::program, scope::utility, works-with::software:source
+star: interface::commandline, role::program, scope::utility, use::converting, use::storing, works-with-format::tar, works-with::archive
+stardata-common: field::astronomy, role::TODO, works-with::software:package
+stardic: culture::TODO, culture::chinese, interface::x11, made-of::data:dictionary, role::app-data, role::program, scope::utility, uitoolkit::motif, use::converting, works-with::dictionary, x11::application
+stardict: interface::x11, protocol::ssl, suite::gnome, uitoolkit::gtk, use::checking, works-with::dictionary, x11::application
+stardict-common: made-of::data:icons, role::app-data, special::auto-inst-parts, suite::gnome, works-with::dictionary
+stardict-english-czech: culture::czech, made-of::data:dictionary, role::app-data, use::converting
+stardict-gtk: uitoolkit::gtk
+stardict-tools: implemented-in::java, interface::x11, protocol::ssl, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::converting, works-with::dictionary, x11::application
+starfighter: game::arcade, implemented-in::c++, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+starfighter-data: game::arcade, interface::x11, role::app-data, uitoolkit::sdl, use::gameplaying, x11::application
+starplot: field::astronomy, game::toys, implemented-in::c++, interface::3d, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+stars: uitoolkit::gtk
+startalk: hardware::embedded, interface::text-mode, uitoolkit::ncurses, use::storing, works-with::pim
+starttls: interface::commandline, protocol::ssl, role::program, scope::utility, suite::emacs
+starvoyager: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+starvoyager-data: game::arcade, interface::x11, role::app-data, uitoolkit::sdl, use::gameplaying, x11::application
+statcvs: devel::rcs, implemented-in::java, works-with-format::html, works-with::text
+statd: admin::monitoring, interface::daemon, network::server, network::service, role::program, use::monitor
+statgrab: special::not-yet-tagged, special::not-yet-tagged::s
+statnews: admin::accounting, implemented-in::perl, interface::commandline, network::client, protocol::nntp, role::program
+statserial: admin::hardware, hardware::modem, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::monitor
+statslog: special::not-yet-tagged, special::not-yet-tagged::s
+stax: game::tetris, interface::x11, role::program, use::gameplaying, x11::application
+steam: devel::lang:sql, filetransfer::ftp, filetransfer::http, implemented-in::pike, interface::web, mail::imap, mail::smtp, network::server, role::program, use::chatting, use::organizing, web::application, works-with::db
+steam-lib: devel::library, interface::web, role::shared-lib, use::organizing, web::application
+stegdetect: interface::commandline, role::program, scope::utility, security::cryptography, use::scanning, works-with::image, works-with::image:raster
+steghide: interface::commandline, role::program, scope::utility, security::cryptography, works-with::image, works-with::image:raster
+stella: hardware::emulation, uitoolkit::sdl
+stellarium: field::astronomy, interface::x11, role::program, scope::application, uitoolkit::sdl, use::viewing, x11::application
+stellarium-data: field::astronomy, interface::x11, role::app-data, special::auto-inst-parts, uitoolkit::sdl, use::viewing, x11::application
+stepbill.app: game::arcade, implemented-in::objc, interface::x11, role::plugin, role::program, security::antivirus, suite::gnustep, uitoolkit::gnustep, use::gameplaying, x11::applet
+steptalk: devel::library, implemented-in::objc, interface::commandline, role::devel-lib, role::program, scope::utility, suite::gnustep, uitoolkit::ncurses
+stepulator.app: field::mathematics, implemented-in::objc, interface::x11, role::plugin, suite::gnustep, uitoolkit::gnustep, x11::applet
+stereograph: interface::commandline, role::program, scope::utility, works-with::image, works-with::image:raster
+stetic: devel::ui-builder, implemented-in::c-sharp, interface::x11, uitoolkit::gtk
+stgit: devel::rcs, role::program
+stk: devel::examples, game::demos, implemented-in::tcl, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, works-with::audio
+stk-doc: devel::doc, made-of::data:html, made-of::data:pdf, role::documentation, works-with::audio
+stklos: devel::lang:scheme, devel::library, interface::x11, role::devel-lib, role::program, scope::utility, uitoolkit::gtk, x11::application
+stl-manual: devel::doc, devel::lang:c++, made-of::data:html, role::documentation
+stone: interface::commandline, protocol::ssl, role::program, scope::utility, use::proxying
+stonith: admin::cluster, admin::power-management, special::not-yet-tagged, special::not-yet-tagged::s, use::configuring
+stopmotion: special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::qt, uitoolkit::sdl
+storebackup: admin::backup, implemented-in::perl, interface::daemon, role::program, scope::application, use::compressing, use::storing
+stow: admin::package-management, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::gnu, use::organizing
+strace: devel::debugger, interface::commandline, role::program, scope::utility, use::monitor, works-with::software:running
+stratagus: game::strategy, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+stratagus-gl: game::strategy, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application, x11::library
+straw: implemented-in::python, interface::x11, network::client, protocol::http, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::browsing, use::downloading, web::blog, works-with-format::xml, works-with-format::xml:rss, x11::application
+streamer: hardware::video, role::program, scope::utility, use::storing, works-with::video
+streamripper: interface::commandline, network::client, role::program, scope::utility, use::downloading, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, x11::application
+streamtuner: interface::x11, role::program, role::shared-lib, scope::application, uitoolkit::gtk, use::browsing, use::playing, works-with::audio, x11::application
+stress: devel::debugger, special::not-yet-tagged, special::not-yet-tagged::s, use::checking
+strigi-daemon: role::program, use::searching, x11::application
+stripclub: interface::x11, network::client, protocol::http, role::program, uitoolkit::fltk, web::browser, works-with::image, works-with::image:raster, x11::application
+stroq: uitoolkit::qt
+stun: interface::commandline, interface::daemon, network::client, network::server, network::service, network::vpn, protocol::ip, protocol::udp, protocol::voip, role::program, scope::utility, use::transmission
+stunnel: interface::daemon, network::client, network::server, protocol::ssl, role::program, security::cryptography, use::proxying
+stunnel4: interface::commandline, interface::daemon, network::client, network::server, protocol::ssl, role::program, security::cryptography, use::proxying
+styx: devel::code-generator, interface::commandline, role::program, scope::utility, works-with::software:source
+styx-dev: devel::code-generator, devel::library, role::devel-lib
+styx-doc: devel::code-generator, devel::examples, made-of::data:html, role::documentation
+subcommander: devel::rcs, implemented-in::c++, interface::x11, role::program, uitoolkit::qt, x11::application
+subcommander-doc: devel::rcs, made-of::data:html, role::documentation
+subproject-howto: made-of::data:html, made-of::data:postscript, role::documentation, suite::debian
+subterfugue: devel::debugger, implemented-in::python, interface::commandline, role::program, scope::application, works-with::software:running
+subtitleeditor: uitoolkit::gtk
+subversion: devel::rcs, interface::commandline, network::client, network::server, protocol::http, protocol::webdav, role::program, use::storing, use::synchronizing
+subversion-tools: devel::rcs, implemented-in::perl, interface::commandline, protocol::http, protocol::webdav, role::program, scope::utility, use::storing, use::synchronizing
+suck: interface::daemon, network::server, protocol::nntp, protocol::ssl, role::program, use::downloading
+sudo: admin::login, admin::user-management, interface::commandline, role::program, scope::utility, security::authentication
+sudoku: uitoolkit::ncurses
+sufary: culture::japanese, interface::commandline, role::program, scope::utility, use::searching, works-with::dictionary, works-with::text
+sufary-dev: culture::japanese, devel::library, role::devel-lib, use::searching, works-with::dictionary, works-with::text
+sufary-tcltk: culture::japanese, interface::x11, role::program, scope::application, uitoolkit::tk, use::searching, works-with::dictionary, works-with::text, x11::application
+sugarplum: implemented-in::perl, mail::filters, special::not-yet-tagged, special::not-yet-tagged::s, works-with::dictionary
+suikyo-elisp: culture::japanese, devel::lang:lisp, special::not-yet-tagged, special::not-yet-tagged::s, suite::emacs, use::converting, works-with::text
+suikyo-table: culture::japanese, role::app-data, special::not-yet-tagged, special::not-yet-tagged::s, use::converting, works-with::text
+sulu: hardware::embedded, hardware::usb, interface::x11, uitoolkit::gtk, use::synchronizing, works-with-format::mp3, works-with::audio, x11::application
+sumika: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::gtk, use::editing, use::viewing, works-with::dictionary, x11::application
+sun-java5-bin: devel::lang:java, devel::runtime, interface::commandline, role::program
+sun-java5-demo: devel::examples, devel::lang:java, implemented-in::java, role::documentation
+sun-java5-jdk: devel::compiler, devel::debugger, devel::lang:java, implemented-in::java
+sun-java5-jre: devel::lang:java, devel::runtime, interface::commandline, role::program
+sun-java6-bin: devel::lang:java, devel::runtime, interface::commandline, role::program
+sun-java6-jdk: devel::lang:java, devel::library, devel::runtime, interface::commandline, role::program
+sun-java6-jre: devel::lang:java, devel::library, devel::runtime
+sunbird: implemented-in::c++, interface::x11, role::program, scope::application, uitoolkit::gtk, use::organizing, use::timekeeping, x11::application
+sunclock: implemented-in::c, interface::x11, role::program, scope::utility, uitoolkit::xlib, use::timekeeping, x11::application
+sunclock-maps: role::app-data
+sup: admin::cluster, admin::file-distribution, interface::daemon, network::client, network::server, network::service, role::program, use::synchronizing
+super: admin::user-management, implemented-in::c, interface::commandline, role::program, scope::utility, security::authentication, special::not-yet-tagged, special::not-yet-tagged::s
+supercollider: implemented-in::c++, interface::text-mode, sound::TODO, sound::mixer, sound::player, sound::recorder, sound::sequencer, suite::emacs
+supercollider-dev: implemented-in::c++, role::devel-lib, sound::TODO, sound::mixer, sound::player, sound::recorder, sound::sequencer
+supercollider-doc: role::documentation, sound::TODO, sound::mixer, sound::player, sound::recorder, sound::sequencer
+superd: interface::daemon, network::server, network::service, role::program, special::not-yet-tagged, special::not-yet-tagged::s
+superkaramba: interface::x11, role::program, special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::qt, x11::application
+supertransball2: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying
+supertux: game::arcade, game::platform, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+supertux-data: game::arcade, interface::x11, role::app-data, special::auto-inst-parts, uitoolkit::sdl, use::gameplaying, x11::application
+supertuxkart: game::sport:racing, role::program, use::entertaining
+supertuxkart-data: role::app-data
+suphp-common: admin::user-management, devel::lang:php, role::app-data
+supybot: implemented-in::python, interface::daemon, network::server, protocol::irc, role::program
+surfraw: implemented-in::shell, interface::commandline, network::client, protocol::http, role::program, use::searching, web::browser
+survex: field::geography, field::geology, implemented-in::c, interface::3d, interface::commandline, interface::x11, role::program, scope::application, uitoolkit::gtk, uitoolkit::wxwidgets, use::organizing, works-with::image, x11::application
+survex-aven: implemented-in::c, implemented-in::c++, interface::3d, interface::commandline, interface::x11, role::program, uitoolkit::wxwidgets, use::viewing, works-with::image, x11::application
+survex-svxedit: implemented-in::tcl, interface::commandline, interface::x11, role::program, scope::application, uitoolkit::tk, use::editing, works-with::text, x11::application
+suspend2-userui: admin::boot, admin::power-management, hardware::laptop, hardware::power, hardware::power:acpi, implemented-in::c, interface::framebuffer, interface::text-mode, role::plugin
+susv2: special::not-yet-tagged, special::not-yet-tagged::s
+susv3: special::not-yet-tagged, special::not-yet-tagged::s
+sux: admin::login, interface::commandline, role::program, security::authentication, use::login, x11::application
+svgalib-bin: devel::library, interface::svga, role::program, scope::utility
+svgalib1-libggi2: devel::library, interface::svga, role::shared-lib, uitoolkit::ncurses
+svgalibg1: interface::svga, role::dummy
+svgalibg1-dev: devel::library, interface::svga, role::dummy
+svgatextmode: admin::configuring, hardware::video, interface::commandline, interface::svga, role::program, scope::utility, use::configuring, works-with::text
+svk: devel::rcs, implemented-in::perl, interface::commandline, network::client, role::program
+svn-arch-mirror: devel::rcs, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, use::converting
+svn-buildpackage: devel::debian, devel::packaging, devel::rcs, interface::commandline, role::program, scope::utility, suite::debian, works-with::software:package
+svn-devscripts: role::dummy, special::not-yet-tagged, special::not-yet-tagged::s
+svn-workbench: devel::rcs, interface::x11, network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::s, x11::application
+svncviewer: interface::svga, network::client, role::program, use::login, use::viewing
+svnmailer: devel::rcs, implemented-in::python, mail::TODO
+svtools: special::not-yet-tagged, special::not-yet-tagged::s
+swaks: implemented-in::perl, interface::commandline, mail::smtp, protocol::ipv6, protocol::smtp, role::program, scope::utility, use::checking
+swami: interface::x11, role::program, scope::application, sound::midi, uitoolkit::gtk, use::editing, works-with::audio, x11::application
+swaml: devel::lang:python, devel::web, implemented-in::python, interface::commandline, network::server, role::program, scope::utility, use::converting, works-with-format::xml, works-with::mail, works-with::text
+swapd: interface::daemon, network::server, role::program, scope::utility
+swapspace: admin::automation, hardware::storage, implemented-in::c, interface::daemon, role::program, use::organizing
+swat: admin::configuring, filetransfer::smb, interface::web, made-of::data:html, network::client, protocol::smb, role::program, use::configuring, web::application
+swatch: admin::monitoring, implemented-in::perl, interface::commandline, role::program, scope::utility, security::log-analyzer, use::monitor, works-with::logfile
+swath: culture::TODO, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s, works-with-format::tex, works-with::text
+sweep: interface::x11, role::program, scope::application, sound::player, uitoolkit::gtk, use::editing, use::viewing, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::audio, x11::application
+sweep-dev: devel::library, interface::x11, role::devel-lib, sound::player, uitoolkit::gtk, use::editing, use::viewing, works-with-format::mp3, works-with-format::oggvorbis, works-with-format::wav, works-with::audio, x11::application
+swf-player: interface::x11, role::plugin, suite::gnome, suite::mozilla, uitoolkit::gtk, uitoolkit::sdl, use::browsing, x11::application
+swh-plugins: role::shared-lib, works-with::audio
+swi-prolog: devel::interpreter, devel::lang:prolog, interface::commandline, role::program, scope::utility, uitoolkit::ncurses
+swi-prolog-clib: devel::lang:c, devel::lang:prolog, devel::library, role::app-data, role::shared-lib
+swi-prolog-doc: devel::doc, devel::lang:prolog, made-of::data:html, made-of::data:pdf, role::documentation
+swi-prolog-http: devel::lang:prolog, devel::library, protocol::http, role::app-data
+swi-prolog-semweb: devel::lang:prolog, devel::library, role::app-data, works-with-format::xml
+swi-prolog-sgml: devel::lang:prolog, devel::library, role::app-data, works-with-format::html, works-with-format::sgml, works-with::text
+swi-prolog-table: devel::lang:prolog, devel::library, role::app-data, works-with::db
+swi-prolog-xpce: devel::lang:prolog, devel::library, interface::x11, role::app-data, x11::library
+swig: devel::compiler, devel::lang:c, devel::lang:c++, interface::commandline, role::program, scope::utility, works-with::software:source
+swig-doc: devel::doc, devel::lang:c, devel::lang:c++, made-of::data:html, role::documentation
+swig-examples: devel::examples, devel::lang:c, devel::lang:c++, interface::commandline, role::documentation, role::program, scope::utility
+swig1.3: devel::compiler, devel::lang:c, devel::lang:c++, interface::commandline, role::dummy, special::obsolete, works-with::software:source
+swig1.3-doc: devel::doc, devel::lang:c, devel::lang:c++, role::dummy, special::obsolete
+swig1.3-examples: devel::examples, devel::lang:c, devel::lang:c++, interface::commandline, role::documentation, role::dummy, special::obsolete
+swingwt-demo: devel::examples, devel::lang:java, special::not-yet-tagged, special::not-yet-tagged::s
+swish++: implemented-in::c++, implemented-in::perl, interface::web, role::program, scope::utility, use::searching, web::cgi, works-with-format::html, works-with::text
+swish-e: interface::web, use::searching, web::cgi, works-with-format::html, works-with::text
+swish-e-dev: devel::library, interface::web, role::devel-lib, use::searching, web::cgi, works-with-format::html, works-with::text
+swisswatch: interface::x11, role::program, scope::utility, use::timekeeping, x11::application
+switchconf: hardware::laptop, interface::commandline, use::configuring
+sword-comm-mhcc: role::data
+sword-comm-pers: role::data
+sword-dict-naves: role::data
+sword-text-kjv: field::TODO, role::data
+sword-text-web: role::data
+swscanner: special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::qt
+sxid: admin::monitoring, admin::user-management, interface::daemon, role::program, scope::utility, use::monitor, works-with::file
+sylpheed: implemented-in::c, interface::x11, mail::user-agent, network::client, role::program, uitoolkit::gtk, works-with::mail, x11::application
+sylpheed-claws: implemented-in::c, interface::x11, mail::user-agent, network::client, role::program, uitoolkit::gtk, works-with::mail, x11::application
+sylpheed-claws-clamav: implemented-in::c, interface::x11, mail::filters, role::plugin, security::antivirus, uitoolkit::gtk, works-with::mail, x11::application
+sylpheed-claws-dillo-viewer: implemented-in::c, interface::x11, role::plugin, uitoolkit::gtk, use::viewing, works-with-format::html, works-with::mail
+sylpheed-claws-ghostscript-viewer: interface::x11, role::plugin, uitoolkit::gtk, use::viewing, works-with-format::postscript, works-with::mail, works-with::text, x11::application
+sylpheed-claws-gtk2: implemented-in::c, interface::x11, mail::imap, mail::pop, mail::smtp, mail::user-agent, network::client, protocol::imap, protocol::ipv6, protocol::ldap, protocol::nntp, protocol::pop3, protocol::smtp, protocol::ssl, role::program, scope::application, uitoolkit::gtk, use::editing, use::organizing, works-with-format::ldif, works-with-format::plaintext, works-with::dictionary, works-with::mail, works-with::pim, works-with::text, x11::application
+sylpheed-claws-gtk2-acpi-notifier: implemented-in::c, interface::x11, mail::notification, role::plugin, uitoolkit::gtk, use::monitor, works-with::mail
+sylpheed-claws-gtk2-attach-remover: implemented-in::c, interface::x11, role::plugin, uitoolkit::gtk, use::compressing, works-with::mail
+sylpheed-claws-gtk2-bogofilter: implemented-in::c, mail::filters, role::plugin, uitoolkit::gtk, use::filtering, use::scanning, works-with::mail
+sylpheed-claws-gtk2-cache-saver: implemented-in::c, role::plugin, use::synchronizing
+sylpheed-claws-gtk2-clamav: implemented-in::c, mail::filters, role::plugin, security::antivirus, uitoolkit::gtk, use::filtering, use::scanning, works-with::mail
+sylpheed-claws-gtk2-dillo-viewer: implemented-in::c, interface::x11, role::plugin, uitoolkit::gtk, use::viewing, works-with-format::html, works-with::mail
+sylpheed-claws-gtk2-doc: made-of::data:html, made-of::data:pdf, made-of::data:postscript, role::documentation
+sylpheed-claws-gtk2-etpan-privacy: implemented-in::c, interface::x11, role::plugin, security::cryptography, uitoolkit::gtk, use::checking, use::viewing, works-with::mail
+sylpheed-claws-gtk2-extra-plugins: role::dummy, special::meta, works-with::mail
+sylpheed-claws-gtk2-feeds-reader: implemented-in::c, interface::x11, network::client, protocol::http, role::plugin, uitoolkit::gtk, use::viewing, works-with-format::TODO, works-with-format::xml:rss
+sylpheed-claws-gtk2-fetchinfo-plugin: implemented-in::c, role::plugin, uitoolkit::gtk, use::filtering, works-with::mail
+sylpheed-claws-gtk2-html2-viewer: implemented-in::c, interface::x11, role::plugin, uitoolkit::gtk, use::viewing, works-with-format::html, works-with::mail
+sylpheed-claws-gtk2-i18n: culture::bokmaal, culture::brazilian, culture::bulgarian, culture::chinese, culture::croatian, culture::czech, culture::dutch, culture::french, culture::german, culture::greek, culture::hungarian, culture::italian, culture::japanese, culture::korean, culture::polish, culture::slovak, culture::spanish, culture::swedish, culture::taiwanese, role::app-data
+sylpheed-claws-gtk2-mailmbox-plugin: uitoolkit::gtk
+sylpheed-claws-gtk2-perl-filter: uitoolkit::gtk
+sylpheed-claws-gtk2-pgpinline: uitoolkit::gtk
+sylpheed-claws-gtk2-pgpmime: uitoolkit::gtk
+sylpheed-claws-gtk2-plugins: uitoolkit::gtk
+sylpheed-claws-gtk2-smime-plugin: uitoolkit::gtk
+sylpheed-claws-gtk2-spamassassin: uitoolkit::gtk
+sylpheed-claws-gtk2-trayicon: uitoolkit::gtk
+sylpheed-claws-gtk2-vcalendar-plugin: uitoolkit::gtk
+sylpheed-claws-i18n: culture::brazilian, culture::bulgarian, culture::chinese, culture::croatian, culture::czech, culture::dutch, culture::french, culture::german, culture::greek, culture::hungarian, culture::italian, culture::japanese, culture::korean, culture::polish, culture::slovak, culture::spanish, culture::swedish, culture::taiwanese, interface::x11, role::app-data, uitoolkit::gtk
+sylpheed-claws-image-viewer: interface::x11, role::plugin, uitoolkit::gtk, use::viewing, works-with::image, works-with::image:raster, works-with::mail, x11::application
+sylpheed-claws-maildir-plugin: interface::x11, mail::imap, protocol::imap, role::plugin, uitoolkit::gtk, use::storing, works-with::mail, x11::application
+sylpheed-claws-pgpinline-plugin: special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::gtk
+sylpheed-claws-pgpmime: interface::x11, role::plugin, security::authentication, security::cryptography, uitoolkit::gtk, works-with::mail, x11::application
+sylpheed-claws-plugins: interface::x11, mail::user-agent, role::metapackage, uitoolkit::gtk, works-with::mail, x11::application
+sylpheed-claws-scripts: implemented-in::perl, implemented-in::shell, interface::x11, mail::user-agent, role::plugin, uitoolkit::gtk, works-with::mail, x11::application
+sylpheed-claws-spamassassin: implemented-in::c, interface::x11, mail::filters, role::plugin, uitoolkit::gtk, use::filtering, use::scanning, works-with::mail, x11::application
+sylpheed-claws-themes: interface::x11, made-of::data:icons, role::app-data, uitoolkit::gtk, works-with::mail, x11::theme
+sylpheed-claws-trayicon: interface::x11, mail::notification, suite::gnome, suite::kde, uitoolkit::gtk, use::monitor, works-with::mail, x11::applet
+sylpheed-claws-vcalendar-plugin: special::not-yet-tagged, special::not-yet-tagged::s, uitoolkit::gtk
+sylpheed-doc: interface::x11, made-of::data:html, mail::user-agent, role::documentation, uitoolkit::gtk, works-with::mail, x11::application
+sylpheed-gtk1: implemented-in::c, interface::x11, mail::user-agent, network::client, role::program, uitoolkit::gtk, use::editing, use::viewing, works-with::mail, works-with::text, x11::application
+sylpheed-i18n: culture::brazilian, culture::bulgarian, culture::chinese, culture::croatian, culture::czech, culture::danish, culture::dutch, culture::estonian, culture::french, culture::german, culture::greek, culture::hungarian, culture::italian, culture::japanese, culture::korean, culture::polish, culture::russian, culture::serbian, culture::slovak, culture::spanish, culture::swedish, culture::taiwanese, culture::turkish, culture::ukrainian, interface::x11, role::plugin, use::viewing, works-with::text, x11::application
+sylseg-sk: culture::slovak
+symlinks: interface::commandline, role::program, scope::utility, use::organizing, use::scanning
+sympa: mail::list, works-with::mail
+synaesthesia: game::demos, interface::x11, sound::player, uitoolkit::sdl, use::viewing, works-with::audio, x11::application
+synaptic: admin::package-management, implemented-in::c++, interface::x11, role::program, scope::application, suite::debian, uitoolkit::gtk, works-with::software:package, x11::application
+syncbbdb: hardware::embedded, implemented-in::perl, interface::commandline, role::program, scope::utility, use::synchronizing
+synce-dccm: hardware::embedded, interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::s
+synce-kde: hardware::embedded, interface::x11, network::client, role::program, suite::kde, uitoolkit::qt, use::browsing, use::synchronizing, x11::application
+synce-kde-dev: devel::library, hardware::embedded, interface::x11, role::devel-lib, suite::kde, use::browsing, use::synchronizing, x11::application
+synce-multisync-plugin: hardware::embedded, interface::x11, network::client, role::program, uitoolkit::gtk, use::synchronizing, x11::application
+synce-serial: hardware::embedded, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::s
+syncekonnector-dev: devel::library, role::devel-lib
+synergy: hardware::input, hardware::input:keyboard, hardware::input:mouse, implemented-in::c, interface::daemon, interface::x11, network::client, network::server, network::service, role::program, uitoolkit::special:not-applicable, x11::application
+synfig-dbg: devel::library
+synfigstudio: uitoolkit::gtk
+synfigstudio-dbg: devel::library
+synopsis: devel::docsystem, implemented-in::c++, implemented-in::python, interface::commandline, role::program, scope::utility, works-with::software:source
+synopsis-formatter-dot: special::not-yet-tagged, special::not-yet-tagged::s
+sysadmin-guide: made-of::data:html, role::documentation
+sysfence: admin::monitoring, interface::daemon, network::server, role::program, use::monitor
+sysfsutils: admin::configuring, admin::filesystem, interface::commandline, role::program, scope::utility
+sysklogd: admin::logging, admin::monitoring, interface::daemon, network::server, role::program, works-with::logfile
+syslinux: admin::boot, hardware::storage, interface::commandline, role::program, scope::utility
+syslog-ng: admin::accounting, admin::boot, admin::kernel, admin::logging, admin::monitoring, interface::daemon, network::server, role::program, use::checking, use::monitor, use::storing, works-with::logfile
+syslog-summary: interface::commandline, role::program, scope::utility, security::log-analyzer, use::scanning, works-with::logfile
+syslogout: admin::configuring, admin::user-management, suite::debian
+sysnews: admin::login, interface::commandline, role::program, scope::utility, works-with::text
+sysprof: uitoolkit::gtk
+sysprof-module-source: role::source
+sysprofile: admin::user-management, suite::debian, use::configuring
+sysstat: admin::accounting, admin::monitoring, implemented-in::c, interface::commandline, interface::daemon, network::server, role::program, use::monitor, works-with::logfile
+system-tools-backends-dev: role::devel-lib
+systemconfigurator: admin::configuring, interface::commandline, role::program, scope::utility, use::configuring
+systemimager-boot-i386-standard: admin::boot, admin::cluster, admin::file-distribution, admin::kernel, role::app-data, use::synchronizing
+systemimager-boot-ia64-standard: admin::boot, admin::cluster, admin::file-distribution, admin::kernel, role::app-data, use::synchronizing
+systemimager-client: admin::boot, admin::cluster, admin::file-distribution, admin::kernel, implemented-in::perl, interface::commandline, network::client, role::program, use::synchronizing
+systemimager-common: admin::boot, admin::cluster, admin::file-distribution, admin::kernel, implemented-in::perl, interface::commandline, role::app-data, role::program, scope::utility, special::auto-inst-parts, use::synchronizing
+systemimager-doc: admin::boot, admin::cluster, admin::file-distribution, admin::kernel, made-of::data:html, made-of::data:pdf, made-of::data:postscript, role::documentation, use::synchronizing
+systemimager-server: admin::boot, admin::cluster, admin::file-distribution, admin::kernel, implemented-in::perl, interface::daemon, network::server, role::program, use::synchronizing
+systemimager-server-flamethrowerd: admin::boot, admin::cluster, admin::file-distribution, admin::kernel, implemented-in::perl, interface::daemon, network::server, role::program, use::synchronizing
+systemimager-ssh-i386: admin::boot, admin::cluster, admin::file-distribution, admin::kernel, protocol::TODO, role::plugin, use::synchronizing
+systemimager-ssh-ia64: admin::boot, admin::cluster, admin::file-distribution, admin::kernel, protocol::TODO, role::plugin, use::synchronizing
+systeminstaller: admin::boot, admin::cluster, admin::file-distribution, admin::kernel, implemented-in::perl, interface::x11, role::program, scope::application, uitoolkit::tk, use::synchronizing, x11::application
+systraq: admin::monitoring, interface::daemon, network::server, role::program, security::integrity, use::monitor, works-with::mail
+systune: admin::configuring, admin::kernel, devel::profiler, interface::commandline, role::program, scope::utility, use::configuring, works-with::software:running
+sysutils: admin::benchmarking, interface::commandline, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, works-with::software:running
+sysv-rc: admin::boot, admin::configuring, implemented-in::perl, interface::commandline, role::app-data, role::program, scope::utility, use::configuring
+sysv-rc-conf: admin::boot, interface::text-mode, role::program, scope::utility, use::configuring, use::editing
+sysvbanner: game::toys, network::service, use::viewing, works-with::text
+sysvconfig: admin::boot, admin::configuring, interface::text-mode, role::program, scope::utility, use::configuring
+sysvinit: admin::boot, admin::configuring, admin::power-management, implemented-in::c, interface::commandline, interface::daemon, network::server, role::program, scope::utility, use::configuring
+sysvinit-utils: admin::login, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::software:running
+t-code: accessibility::input, culture::japanese, implemented-in::lisp, interface::commandline, role::plugin, suite::emacs
+t-coffee: field::biology
+t-gnus: suite::emacs, use::editing
+t-prot: implemented-in::perl, interface::commandline, mail::filters, role::program, scope::utility, use::converting, works-with::mail
+t1-cyrillic: culture::russian, made-of::data:font, role::app-data
+t1-oldslavic: made-of::data:font, role::app-data
+t1-teams: culture::bulgarian, culture::russian, made-of::data:font, role::app-data
+t1-xfree86-nonfree: made-of::data:font, role::app-data, works-with::font
+t1lib-bin: devel::library, interface::commandline, role::program, scope::utility, uitoolkit::athena, use::configuring, use::viewing, works-with::font, x11::application
+t1lib-dev: devel::library, role::devel-lib, special::obsolete, works-with::font
+t1lib1: devel::library, role::shared-lib, works-with::font
+t1utils: interface::commandline, role::program, scope::utility, use::converting, works-with::font
+t38modem: hardware::modem, special::not-yet-tagged, special::not-yet-tagged::t, uitoolkit::sdl, works-with::fax
+tac-plus: interface::daemon, protocol::ldap, special::not-yet-tagged, special::not-yet-tagged::t, works-with::db
+tads-dev: special::not-yet-tagged, special::not-yet-tagged::t, special::obsolete
+tads2: game::rpg, uitoolkit::ncurses, use::gameplaying
+tads2-dev: uitoolkit::ncurses
+tads2-mode: game::adventure, implemented-in::lisp, role::plugin, suite::emacs, use::editing
+tads3: game::rpg, protocol::ip, uitoolkit::ncurses, use::gameplaying
+tads3-doc: devel::doc, role::documentation
+tadsr: special::not-yet-tagged, special::not-yet-tagged::t, special::obsolete
+tag-types: interface::commandline, role::program, scope::utility, use::organizing, works-with::file
+tagcoll: implemented-in::c++, interface::commandline, role::program, scope::utility, use::organizing, use::searching
+tagcolledit: implemented-in::c++, interface::x11, role::program, scope::application, uitoolkit::gtk, use::editing, use::organizing, x11::application
+taglog: interface::x11, role::program, scope::application, uitoolkit::tk, use::organizing, use::timekeeping, x11::application
+tagtool: interface::x11, role::program, scope::application, uitoolkit::gtk, use::editing, use::organizing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, x11::application
+tailor: devel::rcs, implemented-in::python, interface::commandline, role::program, scope::application, use::converting
+talk: interface::text-mode, network::client, role::program, uitoolkit::ncurses, use::chatting
+talkd: interface::daemon, network::server, role::program, use::chatting
+talksoup.app: implemented-in::objc, interface::x11, protocol::irc, role::plugin, role::program, suite::gnustep, uitoolkit::gnustep, use::chatting, x11::applet
+tama: game::toys, interface::daemon, network::server, role::program, use::gameplaying
+tamil-gtk2im: accessibility::input, culture::tamil, interface::x11, special::not-yet-tagged, special::not-yet-tagged::t, uitoolkit::gtk, x11::application
+tango-icon-theme: made-of::data:icons, made-of::data:svg, role::data, suite::gnome, x11::theme
+tao-time: implemented-in::c++, interface::daemon, role::program
+tap-plugins: role::plugin, use::filtering, works-with::audio
+tapiir: special::not-yet-tagged, special::not-yet-tagged::t, uitoolkit::TODO, works-with::audio
+tar: admin::backup, admin::file-distribution, devel::packaging, interface::commandline, role::program, scope::utility, suite::gnu, use::storing, works-with-format::tar, works-with::archive, works-with::file
+tarcust: devel::packaging, implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, works-with-format::tar, works-with::archive
+tardy: devel::packaging, implemented-in::c++, interface::commandline, role::program, scope::utility, use::converting, works-with-format::tar, works-with::archive
+taskjuggler: uitoolkit::qt
+tasksel: admin::package-management, interface::text-mode, role::program, scope::utility, suite::debian, use::configuring, works-with::software:package
+tasksel-data: role::app-data
+tatctae: game::rpg, use::gameplaying
+tau: devel::profiler, interface::commandline, role::devel-lib, role::program, scope::utility, use::timekeeping, works-with::software:running
+tau-examples: devel::examples, devel::profiler, role::source, use::timekeeping, works-with::software:running
+tau-python-common: devel::library, devel::profiler, implemented-in::python, role::app-data, use::timekeeping, works-with::software:running
+tau-racy: devel::profiler, interface::x11, role::program, scope::utility, uitoolkit::tk, use::timekeeping, works-with::software:running, x11::application
+tcc: devel::compiler, devel::lang:c, interface::commandline, role::program, scope::utility, works-with::software:source
+tcd: hardware::storage, hardware::storage:cd, interface::text-mode, uitoolkit::ncurses, uitoolkit::sdl, use::playing, works-with-format::iso9660, works-with::archive, works-with::audio
+tcl8.0: devel::interpreter, devel::lang:tcl, devel::runtime, implemented-in::tcl, interface::commandline, role::app-data, role::program, scope::utility, special::obsolete, works-with::software:source
+tcl8.0-dev: devel::lang:tcl, role::devel-lib, special::obsolete
+tcl8.0-doc: devel::doc, devel::lang:tcl, made-of::TODO, role::documentation, special::obsolete
+tcl8.0-ja: culture::japanese, devel::lang:tcl
+tcl8.3: devel::interpreter, devel::lang:tcl, devel::runtime, implemented-in::tcl, interface::commandline, role::app-data, role::program, scope::utility, works-with::software:source
+tcl8.3-dev: devel::lang:tcl, role::devel-lib
+tcl8.3-doc: devel::doc, devel::lang:tcl, made-of::data:man, role::documentation
+tcl8.4: devel::interpreter, devel::lang:tcl, devel::runtime, implemented-in::tcl, interface::commandline, role::app-data, role::program, scope::utility, works-with::software:source
+tcl8.4-dev: devel::lang:tcl, role::devel-lib
+tcl8.4-doc: devel::doc, devel::lang:tcl, made-of::data:man, role::documentation
+tclcurl: devel::lang:tcl, devel::library, filetransfer::ftp, filetransfer::http, implemented-in::tcl, protocol::ftp, protocol::http, protocol::ssl, role::shared-lib
+tcldom: special::not-yet-tagged, special::not-yet-tagged::t
+tclex: devel::code-generator, devel::lang:tcl, interface::commandline, role::program, scope::utility, uitoolkit::tk, works-with::software:source
+tclexpat: devel::lang:tcl, devel::library, implemented-in::tcl, role::shared-lib, works-with-format::xml
+tcllib: devel::lang:tcl, devel::library, devel::profiler, implemented-in::tcl, role::app-data
+tclmagick: devel::library, implemented-in::tcl, role::shared-lib, uitoolkit::tk, works-with::image, works-with::image:raster, x11::application
+tclparser: devel::debugger, devel::lang:tcl, devel::library, implemented-in::tcl, role::shared-lib
+tclreadline: devel::lang:tcl, devel::library, implemented-in::tcl, role::app-data, uitoolkit::ncurses
+tclsoap: devel::lang:tcl, protocol::soap, special::not-yet-tagged, special::not-yet-tagged::t
+tclthread: devel::lang:tcl, devel::library, implemented-in::tcl, role::app-data
+tcltls: devel::lang:tcl, devel::library, implemented-in::tcl, protocol::ssl, role::shared-lib, security::cryptography
+tclvfs: devel::lang:tcl, devel::library, implemented-in::tcl, role::app-data
+tclx8.3: devel::interpreter, devel::lang:tcl, devel::runtime, implemented-in::tcl, interface::commandline, role::app-data, role::program, scope::utility, works-with::software:source
+tclx8.3-dev: devel::lang:tcl, role::devel-lib
+tclx8.3-doc: devel::doc, devel::lang:tcl, made-of::data:man, role::documentation
+tclx8.4: devel::interpreter, devel::lang:tcl, devel::runtime, implemented-in::tcl, interface::commandline, role::app-data, role::program, scope::utility, works-with::software:source
+tclx8.4-dev: devel::lang:tcl, role::devel-lib
+tclx8.4-doc: devel::doc, devel::lang:tcl, made-of::data:man, role::documentation
+tclxapian: devel::lang:tcl, implemented-in::c++, use::searching, web::search-engine, works-with::text
+tclxml: devel::lang:tcl, devel::library
+tcm: implemented-in::c++, interface::x11, role::program, scope::utility, uitoolkit::motif, use::editing, use::organizing, x11::application
+tcm-doc: devel::doc, interface::x11, role::documentation, uitoolkit::motif, use::editing, use::organizing, x11::application
+tcng: admin::configuring, network::configuration, use::configuring, works-with-format::xml
+tcpd: admin::logging, admin::monitoring, interface::daemon, network::configuration, network::server, network::service, protocol::tcp, role::program, security::authentication, use::monitor
+tcpdump: admin::monitoring, interface::commandline, network::scanner, protocol::ip, protocol::ipv6, protocol::ssl, role::program, scope::utility, use::monitor
+tcpflow: admin::monitoring, interface::commandline, network::scanner, protocol::ip, role::program, scope::utility, use::monitor
+tcpick: admin::monitoring, interface::commandline, network::scanner, protocol::ip, role::program, scope::utility, use::monitor
+tcpquota: admin::accounting, hardware::modem, implemented-in::perl, interface::daemon, network::server, role::program, use::dialing
+tcpreen: admin::monitoring, implemented-in::c++, interface::commandline, network::scanner, role::program, scope::utility, use::monitor, use::routing
+tcpreplay: interface::commandline, role::program, scope::utility, security::ids, use::transmission
+tcpser: hardware::modem
+tcpslice: admin::monitoring, interface::commandline, role::program, scope::utility, use::editing, works-with::logfile
+tcpspy: admin::logging, implemented-in::c, interface::daemon, protocol::ip, special::not-yet-tagged, special::not-yet-tagged::t, use::monitor
+tcpstat: admin::monitoring, interface::commandline, protocol::ip, role::program, scope::utility, use::monitor, use::viewing
+tcptrace: admin::monitoring, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::t, use::monitor, use::viewing
+tcptraceroute: interface::commandline, protocol::ip, protocol::tcp, role::program, scope::utility
+tcptrack: admin::monitoring, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::monitor
+tcputils: interface::commandline, network::configuration, role::program, scope::utility, use::transmission
+tcpxtract: admin::monitoring, implemented-in::c, interface::commandline, protocol::ethernet, role::program, scope::utility, security::log-analyzer, use::monitor
+tcs: devel::i18n, interface::commandline, role::program, scope::utility, use::converting, works-with::text, works-with::unicode
+tcsh: implemented-in::c, interface::shell, role::program, scope::utility, uitoolkit::ncurses
+tcsh-kanji: culture::japanese, role::program, scope::utility
+tct: interface::commandline, role::program, scope::utility, security::forensics, security::ids
+tdb-dev: devel::library, role::devel-lib, works-with::db
+tdb-tools: interface::commandline, role::program, scope::utility, works-with::db
+tdfsb: game::toys, interface::3d, uitoolkit::sdl, use::browsing, works-with::file, x11::application
+tdiary: implemented-in::ruby, special::not-yet-tagged, special::not-yet-tagged::t, web::blog
+tdiary-contrib: implemented-in::ruby, special::not-yet-tagged, special::not-yet-tagged::t, web::blog
+tdiary-mode: implemented-in::lisp, special::not-yet-tagged, special::not-yet-tagged::t, suite::emacs, use::editing, web::blog
+tdiary-plugin: implemented-in::ruby, special::not-yet-tagged, special::not-yet-tagged::t, web::blog
+tdiary-theme: role::app-data, special::not-yet-tagged, special::not-yet-tagged::t, web::blog
+tdl: implemented-in::c, interface::commandline, role::program, scope::application, use::organizing, works-with::pim
+tdom: devel::lang:tcl, devel::library, implemented-in::tcl, role::app-data, special::not-yet-tagged, special::not-yet-tagged::t, works-with-format::xml
+tdsodbc: devel::lang:sql, works-with::db
+tdtd: implemented-in::lisp, role::plugin, suite::emacs, use::editing, works-with-format::sgml, works-with::text
+tea: special::not-yet-tagged, special::not-yet-tagged::t, uitoolkit::gtk
+teamspeak-client: interface::x11, protocol::voip, role::program, uitoolkit::qt, use::gameplaying, works-with::audio
+teapop: interface::daemon, mail::pop, network::server, protocol::pop3, role::program, works-with::mail
+teapop-ldap: interface::daemon, mail::pop, network::server, protocol::ldap, protocol::pop3, role::program, works-with::db, works-with::mail
+teapop-mysql: devel::lang:sql, interface::daemon, mail::pop, network::server, protocol::pop3, role::program, works-with::db, works-with::mail
+teapop-pgsql: devel::lang:sql, interface::daemon, mail::pop, network::server, protocol::pop3, role::program, works-with::db, works-with::mail
+teatime: interface::x11, role::plugin, suite::gnome, uitoolkit::gtk, use::timekeeping, x11::applet
+tecnoballz: game::arcade, implemented-in::c++, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+tecnoballz-data: game::arcade, interface::x11, role::app-data, uitoolkit::sdl, use::gameplaying, x11::application
+ted: interface::x11, role::program, scope::application, uitoolkit::motif, use::editing, use::text-formatting, works-with::text, x11::application
+ted-common: made-of::data:font, role::app-data, special::auto-inst-parts, use::editing, use::text-formatting, works-with::text
+tedia2sql: devel::lang:sql, implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, works-with::db, works-with::image, works-with::image:vector
+teg: game::strategy, implemented-in::c, interface::x11, role::program, suite::gnome, uitoolkit::gtk, use::gameplaying, x11::application
+tela: field::mathematics, implemented-in::fortran, interface::shell, role::program, scope::application, uitoolkit::ncurses
+telak: filetransfer::ftp, filetransfer::http, interface::commandline, protocol::ftp, protocol::http, role::program, scope::utility, use::downloading, works-with::image, works-with::image:raster
+telegnome: filetransfer::http, interface::x11, protocol::http, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::downloading, use::viewing, x11::application
+teleport: interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::t, uitoolkit::gtk, works-with::software:running, x11::application
+tellico: implemented-in::c++, interface::x11, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::t, uitoolkit::qt, use::organizing, works-with-format::xml, works-with-format::xml:xslt, works-with::pim, x11::application
+tellico-data: role::app-data, role::documentation, special::auto-inst-parts
+telnet: admin::login, interface::shell, network::client, protocol::ipv6, role::program, uitoolkit::ncurses, use::login
+telnet-ssl: admin::login, implemented-in::c++, interface::commandline, interface::shell, interface::text-mode, network::client, protocol::ipv6, protocol::ssl, role::program, security::authentication, security::cryptography, uitoolkit::ncurses, use::login
+telnetd: admin::login, interface::daemon, network::server, protocol::ipv6, role::program, use::login
+telnetd-ssl: admin::login, implemented-in::c, interface::daemon, network::server, protocol::ipv6, protocol::ssl, role::program, security::authentication, security::cryptography, uitoolkit::ncurses, use::login
+template-new: interface::commandline, role::program, scope::utility, use::editing, use::text-formatting, works-with::text
+tendra: devel::compiler, devel::lang:c, devel::lang:c++, interface::commandline, role::program, scope::utility, works-with::software:source
+tendra-doc: devel::compiler, devel::lang:c, devel::lang:c++, made-of::data:html, role::documentation
+tenmado: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+tepache: devel::lang:python, devel::ui-builder, implemented-in::python, role::program, uitoolkit::gtk, works-with-format::xml, works-with::software:source
+termcap-compat: devel::library, interface::text-mode, role::app-data, role::shared-lib
+terminal: implemented-in::objc, interface::x11, role::program, scope::utility, suite::gnustep, x11::terminal
+terminal.app: implemented-in::objc, interface::commandline, interface::text-mode, interface::x11, role::program, suite::gnustep, uitoolkit::special:todo, use::editing, works-with::text, x11::application, x11::terminal
+terminatorx: interface::x11, role::program, scope::application, uitoolkit::gtk, use::editing, works-with::audio, x11::application
+termnet: special::not-yet-tagged, special::not-yet-tagged::t
+termnetd: special::not-yet-tagged, special::not-yet-tagged::t
+terraform: interface::x11, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::t, suite::gnome, uitoolkit::gtk, use::editing, works-with::3dmodel, x11::application
+tessa: field::physics, implemented-in::c, implemented-in::python, interface::commandline, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::t, works-with::3dmodel
+tessa-mpi: field::physics, implemented-in::python, special::not-yet-tagged, special::not-yet-tagged::t, works-with::3dmodel
+tesseract-ocr: accessibility::ocr, implemented-in::c++, interface::commandline, role::program, scope::utility, use::converting, works-with::image, works-with::image:raster, works-with::text
+testdisk: admin::boot, admin::filesystem, admin::recovery, interface::commandline, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::checking
+tetex-base: made-of::data:font, role::app-data, use::editing, use::typesetting, works-with-format::tex, works-with::text
+tetex-bin: admin::configuring, interface::commandline, interface::x11, role::program, scope::application, uitoolkit::athena, use::converting, use::editing, use::typesetting, works-with-format::tex, works-with::text, x11::application
+tetex-brev: culture::norwegian, interface::commandline, role::plugin, special::not-yet-tagged, special::not-yet-tagged::t, use::editing, use::typesetting, works-with-format::tex, works-with::text
+tetex-doc: made-of::data:html, made-of::data:pdf, made-of::data:postscript, made-of::data:tex, role::documentation, use::editing, use::typesetting, works-with-format::tex, works-with::text
+tetex-doc-nonfree: role::documentation, works-with::text
+tetex-extra: made-of::data:font, role::app-data, use::editing, use::typesetting, works-with-format::tex, works-with::text
+tetex-frogg: culture::french, role::plugin, use::editing, use::typesetting, works-with-format::tex, works-with::text
+tetex-frogg-doc: culture::french, made-of::data:postscript, made-of::data:tex, role::documentation, use::editing, use::typesetting, works-with-format::tex, works-with::text
+tetex-src: role::source, use::editing, use::typesetting, works-with-format::tex, works-with::text
+tethereal: admin::monitoring, interface::text-mode, network::scanner, role::dummy, use::scanning
+tetradraw: interface::text-mode, role::program, scope::application, uitoolkit::ncurses, use::editing, use::text-formatting, use::viewing, works-with::text
+tetrinet-client: game::tetris, interface::text-mode, role::program, uitoolkit::gtk, uitoolkit::ncurses, use::gameplaying
+tetrinet-server: game::tetris, interface::daemon, network::server, role::program, use::gameplaying
+tetrinetx: game::tetris, interface::daemon, network::server, role::program, uitoolkit::gtk, use::gameplaying
+tex-chess: game::board, game::board:chess, made-of::data:font, role::app-data, role::plugin, use::typesetting, works-with-format::tex, works-with::font, works-with::text
+tex-common: role::TODO, special::auto-inst-parts, works-with-format::tex, works-with::text
+tex-guy: interface::commandline, role::program, scope::utility, use::converting, use::editing, use::printing, use::typesetting, use::viewing, works-with-format::postscript, works-with-format::tex, works-with::image, works-with::image:raster, works-with::text
+tex-skak: game::board, game::board:chess, made-of::data:font, role::app-data, role::plugin, use::typesetting, works-with-format::tex, works-with::font, works-with::text
+tex4ht: implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, use::editing, use::typesetting, works-with-format::html, works-with-format::tex, works-with::text
+tex4ht-common: works-with-format::html, works-with-format::tex, works-with::text
+texgd: made-of::data:tex, special::not-yet-tagged, special::not-yet-tagged::t, works-with-format::png, works-with::image:raster
+texi2html: implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with-format::tex, works-with::text
+texify: devel::prettyprint, implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, use::printing, works-with-format::tex, works-with::software:source, works-with::text
+texinfo: interface::commandline, role::program, scope::utility, use::converting, works-with-format::info, works-with-format::tex, works-with::text
+texlive-base: made-of::data:font, made-of::data:html, made-of::data:pdf, made-of::data:tex, role::app-data, role::documentation, suite::TODO, use::typesetting, works-with-format::pdf, works-with-format::postscript, works-with-format::tex, works-with::font, works-with::image, works-with::image:vector, works-with::text, x11::font
+texlive-base-bin: uitoolkit::ncurses
+texlive-chemistry: field::chemistry, made-of::data:tex, role::plugin, suite::TODO, use::typesetting, works-with-format::tex, works-with::text
+texlive-common: works-with-format::tex
+texlive-context: use::typesetting, works-with-format::tex
+texlive-doc-base: made-of::data:html, made-of::data:pdf, role::documentation, suite::TODO, use::typesetting
+texlive-doc-bg: culture::bulgarian
+texlive-doc-de: culture::german, made-of::data:html, made-of::data:pdf, made-of::data:postscript, made-of::data:tex, role::documentation, works-with-format::tex
+texlive-doc-en: culture::TODO, made-of::data:html, made-of::data:pdf, made-of::data:postscript, made-of::data:tex, role::documentation, works-with-format::tex
+texlive-doc-es: culture::spanish
+texlive-doc-fi: culture::finnish
+texlive-doc-fr: culture::french
+texlive-doc-it: culture::italian
+texlive-doc-ja: culture::japanese
+texlive-doc-ko: culture::korean
+texlive-doc-mn: culture::mongolian
+texlive-doc-nl: culture::dutch
+texlive-doc-pl: culture::polish
+texlive-doc-pt: culture::portuguese
+texlive-doc-ru: culture::russian
+texlive-doc-uk: culture::ukrainian
+texlive-extra-utils: use::typesetting
+texlive-font-utils: scope::utility, works-with::font
+texlive-fonts-recommended: made-of::data:font, made-of::data:tex, use::typesetting, works-with-format::tex, works-with::font
+texlive-formats-extra: use::typesetting, works-with-format::tex
+texlive-lang-german: culture::german, field::biology, field::chemistry, role::app-data
+texlive-lang-polish: culture::polish, made-of::data:font, use::typesetting
+texlive-latex-base: made-of::data:font, made-of::data:html, made-of::data:pdf, made-of::data:tex, role::app-data, role::documentation, suite::TODO, use::typesetting, works-with-format::pdf, works-with-format::postscript, works-with-format::tex, works-with::font, works-with::image, works-with::image:vector, works-with::text, x11::font
+texlive-latex-extra: works-with-format::tex
+texlive-math-extra: field::mathematics, made-of::data:tex, use::typesetting, works-with-format::tex
+texlive-omega: use::typesetting
+texlive-pdfetex: use::typesetting, works-with-format::pdf, works-with-format::tex
+texlive-pictures: made-of::data:tex, role::app-data, use::printing, use::text-formatting, use::typesetting, works-with-format::pdf, works-with-format::postscript, works-with-format::tex, works-with::image, works-with::image:vector
+texmacs: field::mathematics, interface::text-mode, role::program, scope::application, suite::gnu, use::editing, use::text-formatting, use::typesetting, works-with-format::tex, works-with::text
+texmacs-common: field::mathematics, interface::commandline, interface::text-mode, role::app-data, suite::gnu, use::editing, use::text-formatting, use::typesetting, works-with-format::tex, works-with::text
+texmaker: implemented-in::c++, interface::x11, role::program, uitoolkit::qt, use::editing, use::typesetting, works-with-format::tex, x11::application
+texpower: office::presentation, role::plugin, use::editing, use::typesetting, use::viewing, works-with-format::pdf, works-with-format::tex, works-with::text
+texpower-examples: devel::examples, made-of::data:pdf, made-of::data:tex, role::documentation, use::editing, use::typesetting, use::viewing, works-with-format::pdf, works-with-format::tex, works-with::text
+texpower-manual: made-of::data:pdf, made-of::data:tex, role::documentation, use::editing, use::typesetting, use::viewing, works-with-format::pdf, works-with-format::tex, works-with::text
+textchk: implemented-in::perl, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::t, use::checking, works-with::dictionary, works-with::text
+textdraw: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::editing, works-with::image
+textedit.app: implemented-in::objc, interface::x11, role::plugin, role::program, suite::gnustep, uitoolkit::gnustep, use::editing, use::text-formatting, works-with-format::plaintext, works-with::text, x11::applet
+textopo: field::biology, role::plugin, use::editing, use::typesetting, works-with-format::tex, works-with::image, works-with::text
+textutils: interface::commandline, suite::gnu, works-with::text
+tf: game::mud, network::client, role::program, uitoolkit::ncurses, use::gameplaying
+tf5: game::mud, implemented-in::c, interface::text-mode, network::client, role::program, uitoolkit::ncurses, use::gameplaying
+tfm-arphic-bkai00mp: made-of::data:font, role::app-data, works-with-format::tex, works-with::text
+tfm-arphic-bsmi00lp: made-of::data:font, role::app-data, works-with-format::tex, works-with::text
+tfm-arphic-gbsn00lp: made-of::data:font, role::app-data, works-with-format::tex, works-with::text
+tfm-arphic-gkai00mp: made-of::data:font, role::app-data, works-with-format::tex, works-with::text
+tftp: admin::boot, admin::file-distribution, interface::commandline, network::client, role::program
+tftp-hpa: admin::boot, admin::file-distribution, filetransfer::ftp, interface::commandline, network::client, protocol::ftp, protocol::ip, role::program, use::configuring
+tftpd: admin::boot, admin::file-distribution, filetransfer::ftp, interface::daemon, network::server, protocol::ftp, protocol::ip, role::program, use::configuring
+tftpd-hpa: admin::boot, admin::file-distribution, filetransfer::ftp, interface::daemon, network::server, protocol::ftp, protocol::ip, role::program, use::configuring
+tgif: interface::x11, role::program, scope::application, use::editing, works-with-format::postscript, works-with-format::tex, works-with::image, works-with::image:vector, works-with::text, x11::application
+thai-system: culture::TODO, role::documentation, role::metapackage
+thailatex: culture::TODO, role::plugin, use::editing, use::typesetting, works-with-format::tex, works-with::text
+the: interface::text-mode, role::program, scope::application, uitoolkit::ncurses, use::editing, works-with::text
+the-doc: interface::text-mode, made-of::data:html, role::documentation, uitoolkit::ncurses, use::editing, works-with::text
+therion: field::special:todo, implemented-in::c++, implemented-in::tcl, interface::commandline, interface::x11, role::program, scope::application, uitoolkit::tk, use::editing, works-with-format::pdf, works-with-format::plaintext, works-with::3dmodel, works-with::image, works-with::text, x11::application
+therion-doc: role::documentation
+thescoder: devel::compiler, implemented-in::c, interface::commandline, role::program, scope::utility, suite::openoffice, works-with::dictionary
+thewidgetfactory: uitoolkit::gtk
+thinkpad-base: hardware::laptop, role::app-data, use::configuring
+thinkpad-source: hardware::laptop, role::source, use::driver
+thoggen: uitoolkit::gtk
+thoughttracker: culture::french, culture::german, interface::x11, role::program, scope::application, uitoolkit::gtk, use::organizing, works-with::db, x11::application
+thrust: game::arcade, interface::svga, junior::arcade, role::program, use::gameplaying
+thttpd: interface::daemon, network::server, protocol::http, role::program, web::server, works-with-format::html, works-with::text
+thttpd-util: interface::commandline, protocol::http, role::program, scope::utility, web::server, works-with-format::html, works-with::text
+thuban: field::geography, implemented-in::python, interface::x11, role::program, scope::application, uitoolkit::wxwidgets, uitoolkit::wxwindows, use::viewing, works-with::image, x11::application
+thunar: implemented-in::c, interface::x11, role::program, scope::application, suite::xfce, uitoolkit::gtk, use::organizing, use::searching, works-with::file, x11::application
+thunar-media-tags-plugin: uitoolkit::gtk
+thunderbird: mail::user-agent, role::dummy, special::obsolete, suite::mozilla
+thunderbird-locale-bg: culture::bulgarian
+thunderbird-locale-da: culture::danish
+thunderbird-locale-de: culture::german
+thunderbird-locale-en-gb: culture::TODO, role::dummy, special::obsolete, suite::mozilla
+thunderbird-locale-es-ar: culture::arabic
+thunderbird-locale-es-es: culture::spanish
+thunderbird-locale-eu: culture::basque
+thunderbird-locale-fi: culture::finnish
+thunderbird-locale-fr: culture::french
+thunderbird-locale-he: culture::hebrew
+thunderbird-locale-hu: culture::hungarian
+thunderbird-locale-it: culture::italian
+thunderbird-locale-ja: culture::japanese
+thunderbird-locale-ko: culture::korean
+thunderbird-locale-nb: culture::bokmaal
+thunderbird-locale-nl: culture::dutch
+thunderbird-locale-pa: culture::punjabi
+thunderbird-locale-pl: culture::polish
+thunderbird-locale-pt-br: culture::brazilian
+thunderbird-locale-ru: culture::russian
+thunderbird-locale-sk: culture::slovak
+thunderbird-locale-sl: culture::slovenian
+thunderbird-locale-sv: culture::swedish
+thunderbird-locale-tr: culture::turkish
+thunderbird-locale-zh-cn: culture::chinese
+thunderbird-traybiff: uitoolkit::gtk
+thy: interface::daemon, network::server, protocol::http, protocol::ipv6, protocol::ssl, role::program, security::cryptography, web::server, works-with-format::html, works-with::text
+thy-auth: interface::daemon, protocol::http, protocol::ipv6, role::program, scope::utility, security::authentication, works-with-format::html, works-with::text
+ticker: interface::text-mode, role::program, scope::utility, use::viewing, works-with::text
+ticker.app: interface::x11, role::plugin, role::program, scope::utility, suite::gnustep, use::viewing, works-with::text, x11::applet
+tictactoe: game::board, implemented-in::ruby, interface::x11, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+tidev-modules-source: field::mathematics, role::source, use::driver
+tidy: interface::commandline, role::program, scope::utility, use::checking, works-with-format::html, works-with::text
+tidy-doc: made-of::data:html, role::documentation, use::checking
+tidy-proxy: implemented-in::perl, interface::daemon, network::server, protocol::http, role::program, use::checking, use::proxying, works-with-format::html, works-with::text
+tiemu: hardware::emulation, interface::x11, role::program, scope::application, uitoolkit::gtk, uitoolkit::sdl, x11::application
+tiemu-skinedit: hardware::emulation, interface::x11, role::program, scope::application, uitoolkit::gtk, use::editing, x11::application
+tig: uitoolkit::ncurses
+tiger: admin::monitoring, implemented-in::c, implemented-in::shell, interface::commandline, role::program, scope::application, security::ids, security::integrity
+tiger-otheros: implemented-in::c, implemented-in::shell, interface::commandline, role::program, scope::application, security::ids, security::integrity
+tightvnc-java: network::client, role::program, use::login
+tightvncserver: hardware::emulation, interface::daemon, network::server, network::service, role::program, use::login, use::viewing
+tigr-glimmer: field::biology, implemented-in::c++, interface::commandline, role::program, scope::application, use::searching
+tik: interface::x11, protocol::oscar, uitoolkit::tk, use::chatting, x11::application
+tilda: uitoolkit::gtk, uitoolkit::ncurses
+tilp: field::mathematics, interface::x11, role::program, scope::application, uitoolkit::gtk, use::synchronizing, x11::application
+time: devel::profiler, interface::commandline, role::program, scope::utility, suite::gnu, use::timekeeping, works-with::software:running
+timecode-dev: devel::lang:c++, devel::lang:octave, devel::library, role::app-data, role::devel-lib, use::timekeeping
+timemachine: field::arts, interface::x11, role::program, scope::utility, uitoolkit::gtk, uitoolkit::ncurses, x11::application
+timemon.app: implemented-in::objc, interface::x11, role::plugin, suite::gnustep, uitoolkit::gnustep, use::timekeeping, works-with::software:running, x11::applet
+timeout: interface::commandline, role::program, scope::utility, use::timekeeping, works-with::software:running
+timeoutd: admin::user-management, interface::daemon, network::server, role::program, use::timekeeping
+timer-applet: uitoolkit::gtk
+timezoneconf: admin::configuring, interface::text-mode, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::t, use::configuring
+timidity: interface::text-mode, interface::x11, role::program, scope::application, sound::midi, sound::player, uitoolkit::athena, uitoolkit::ncurses, use::playing, works-with::audio, x11::application
+timidity-el: implemented-in::lisp, role::plugin, sound::midi, sound::player, suite::emacs, use::editing, works-with::audio
+timidity-interfaces-extra: interface::x11, role::program, role::shared-lib, scope::application, sound::midi, sound::player, uitoolkit::gtk, uitoolkit::ncurses, uitoolkit::tk, use::playing, works-with::audio
+tin: implemented-in::c, interface::text-mode, network::client, protocol::nntp, role::program, scope::application, uitoolkit::ncurses
+tina: special::not-yet-tagged, special::not-yet-tagged::t, uitoolkit::ncurses
+tinc: implemented-in::c, interface::daemon, made-of::data:info, network::vpn, protocol::ethernet, protocol::ip, security::cryptography
+tint: game::tetris, interface::text-mode, role::program, uitoolkit::ncurses, use::gameplaying
+tintin++: game::mud, interface::text-mode, network::client, role::program, uitoolkit::ncurses, use::gameplaying
+tinyca: implemented-in::perl, interface::x11, protocol::ssl, role::program, scope::application, security::cryptography, uitoolkit::gtk, use::editing, works-with-format::zip, works-with::archive, x11::application
+tinycdb: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::t, works-with::db
+tinyhoneypot: admin::logging, implemented-in::perl, interface::daemon, network::server, protocol::TODO, protocol::ftp, protocol::http, protocol::pop3, protocol::ssh, role::program, security::ids, use::monitor
+tinyirc: filetransfer::dcc, interface::text-mode, network::client, protocol::irc, role::program, uitoolkit::ncurses, use::chatting
+tinymce: implemented-in::ecmascript
+tinymux: game::mud, interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::t
+tinyproxy: interface::daemon, network::server, protocol::http, role::program, use::proxying
+tinysnmp-agent: special::not-yet-tagged, special::not-yet-tagged::t
+tinysnmp-agent-dev: role::devel-lib
+tinysnmp-dev: role::devel-lib
+tinysnmp-manager-dev: devel::library
+tinysnmp-module-dvb: special::not-yet-tagged, special::not-yet-tagged::t
+tinysnmp-module-interfaces: special::not-yet-tagged, special::not-yet-tagged::t
+tinysnmp-module-resources: special::not-yet-tagged, special::not-yet-tagged::t
+tinysnmp-module-ups: special::not-yet-tagged, special::not-yet-tagged::t
+tinysnmp-tools: special::not-yet-tagged, special::not-yet-tagged::t
+tinywm: implemented-in::c, implemented-in::python, interface::x11, role::program, x11::window-manager
+tiobench: admin::benchmarking, admin::hardware, hardware::storage, implemented-in::c, implemented-in::perl
+tioga: implemented-in::c, implemented-in::ruby, role::devel-lib
+tipa: field::linguistics, made-of::data:font, role::app-data, use::typesetting, works-with-format::tex, works-with::text
+tipptrainer: game::typing, interface::x11, role::program, uitoolkit::gtk, uitoolkit::wxwidgets, uitoolkit::wxwindows, use::gameplaying, use::learning, x11::application
+tipptrainer-data-de: culture::german, game::typing, role::app-data, use::gameplaying, use::learning, x11::application
+tipptrainer-data-en: culture::TODO, game::typing, role::app-data, use::gameplaying, use::learning, x11::application
+tirc: filetransfer::dcc, interface::text-mode, network::client, protocol::irc, role::program, uitoolkit::ncurses, use::chatting
+titrax: uitoolkit::athena
+tix: devel::lang:tcl, devel::library, uitoolkit::tk
+tix-dev: role::devel-lib
+tix8.1: devel::runtime, implemented-in::tcl, role::app-data, uitoolkit::tk
+tix8.1-dev: devel::lang:tcl, role::devel-lib, uitoolkit::tk
+tk-brief: interface::x11, role::program, scope::application, uitoolkit::tk, use::editing, use::text-formatting, works-with-format::tex, works-with::text, x11::application
+tk707: interface::x11, role::program, scope::application, sound::midi, uitoolkit::tk, x11::application
+tk8.0: devel::lang:tcl, devel::library, devel::runtime, role::app-data, special::obsolete, uitoolkit::tk
+tk8.0-dev: devel::lang:tcl, role::devel-lib, uitoolkit::tk
+tk8.0-doc: devel::doc, devel::lang:tcl, made-of::TODO, role::documentation, uitoolkit::tk
+tk8.0-ja: culture::japanese, devel::lang:tcl
+tk8.3: devel::lang:tcl, devel::library, devel::runtime, role::app-data, uitoolkit::tk
+tk8.3-dev: devel::lang:tcl, role::devel-lib, uitoolkit::tk
+tk8.3-doc: devel::doc, devel::lang:tcl, made-of::data:man, role::documentation, uitoolkit::tk
+tk8.4: devel::lang:tcl, devel::library, devel::runtime, role::app-data, uitoolkit::tk
+tk8.4-dev: devel::lang:tcl, role::devel-lib, uitoolkit::tk
+tk8.4-doc: devel::doc, devel::lang:tcl, made-of::data:man, role::documentation, uitoolkit::tk
+tkabber: implemented-in::tcl, interface::x11, network::client, protocol::jabber, protocol::ssl, role::program, uitoolkit::tk, use::chatting, works-with::text, works-with::unicode, x11::application
+tkchooser: implemented-in::tcl, interface::x11, network::server, role::program, uitoolkit::tk, use::browsing, x11::display-manager
+tkcon: devel::ide, devel::lang:tcl, implemented-in::tcl, interface::shell, role::program, scope::application, uitoolkit::tk
+tkcvs: devel::rcs, implemented-in::tcl, interface::x11, network::client, role::program, uitoolkit::tk, use::synchronizing, x11::application
+tkdesk: implemented-in::tcl, interface::x11, role::program, scope::application, uitoolkit::tk, use::browsing, use::organizing, works-with::file, x11::application
+tkdiff: devel::rcs, implemented-in::tcl, interface::x11, role::program, scope::application, uitoolkit::tk, use::synchronizing, use::viewing, works-with::text
+tkdvi: implemented-in::tcl, interface::x11, role::program, scope::utility, uitoolkit::tk, use::text-formatting, use::viewing, works-with-format::dvi, works-with::text, x11::application
+tkfont: implemented-in::tcl, interface::x11, role::program, scope::utility, uitoolkit::tk, works-with::font, x11::application
+tkgate: field::electronics, hardware::emulation, implemented-in::tcl, interface::x11, role::program, scope::application, uitoolkit::tk, x11::application
+tkinfo: implemented-in::tcl, interface::x11, role::program, scope::utility, uitoolkit::tk, use::viewing, works-with-format::info, works-with::text, x11::application
+tkirc: filetransfer::dcc, protocol::irc, use::chatting
+tkman: implemented-in::tcl, interface::commandline, interface::x11, role::program, scope::application, uitoolkit::tk, use::viewing, works-with-format::info, works-with-format::man, works-with::text, x11::application
+tkmib: implemented-in::perl, interface::x11, network::scanner, protocol::snmp, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::t, uitoolkit::tk, use::browsing
+tkmixer: interface::x11, role::program, scope::utility, sound::mixer, uitoolkit::tk, use::configuring, works-with::audio, x11::application
+tkpaint: implemented-in::tcl, interface::x11, role::program, scope::application, uitoolkit::tk, use::editing, works-with::image, works-with::image:raster, x11::application
+tkpgp: security::cryptography, uitoolkit::tk
+tkping: admin::monitoring, implemented-in::perl, interface::x11, network::scanner, protocol::ip, uitoolkit::tk, x11::application
+tkps: implemented-in::tcl, interface::x11, role::program, scope::application, uitoolkit::tk, use::monitor, works-with::software:running, x11::application
+tkrat: interface::x11, mail::imap, mail::pop, mail::user-agent, network::client, protocol::imap, protocol::pop3, role::program, uitoolkit::tk, use::editing, use::transmission, works-with::mail, x11::application
+tkseti: uitoolkit::tk
+tksmb: filetransfer::smb, interface::x11, network::client, protocol::smb, role::program, use::browsing, x11::application
+tktable: devel::lang:tcl, implemented-in::tcl, role::app-data, uitoolkit::tk
+tktable-dev: devel::examples, devel::lang:tcl, role::app-data, uitoolkit::tk
+tkusr: hardware::modem, implemented-in::tcl, interface::x11, network::client, role::program, uitoolkit::tk, use::downloading, works-with::fax, x11::application
+tkvnc: implemented-in::perl, interface::x11, network::client, role::program, uitoolkit::tk, use::login, use::viewing, x11::application
+tkworld: implemented-in::tcl, interface::x11, role::program, scope::application, uitoolkit::tk, x11::application
+tkx8.3: devel::lang:tcl, devel::library, devel::runtime, implemented-in::tcl, role::app-data, uitoolkit::tk
+tkx8.3-dev: devel::lang:tcl, devel::library, role::devel-lib, uitoolkit::tk
+tkx8.3-doc: devel::doc, devel::lang:tcl, made-of::data:man, role::documentation, uitoolkit::tk
+tla: devel::rcs, implemented-in::c, interface::commandline, role::program, suite::gnu, use::synchronizing
+tla-buildpackage: devel::packaging, devel::rcs, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::t, suite::debian, works-with-format::tar, works-with::archive, works-with::software:package
+tla-doc: devel::doc, devel::rcs, implemented-in::c, role::documentation, suite::gnu
+tla-load-dirs: devel::rcs, implemented-in::python, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::t
+tla-tools: devel::rcs, interface::commandline, role::program, scope::utility, suite::gnu
+tleds: hardware::input:keyboard, implemented-in::c, interface::commandline, role::program, scope::utility, use::monitor
+tleenx2: culture::polish, interface::x11, network::client, protocol::jabber, role::program, uitoolkit::gtk, use::chatting, x11::application
+tlf: hardware::hamradio, interface::text-mode, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::t, uitoolkit::ncurses
+tlfmanual: hardware::hamradio, interface::text-mode, made-of::data:html, role::documentation, special::not-yet-tagged, special::not-yet-tagged::t, uitoolkit::ncurses
+tmake: devel::buildtools, implemented-in::perl, interface::commandline, role::program, scope::utility, uitoolkit::qt, use::editing
+tmda: devel::lang:python, interface::daemon, mail::filters, network::server, protocol::smtp, role::program, works-with::mail
+tmispell-voikko: uitoolkit::ncurses
+tmpreaper: admin::automation, interface::daemon, role::program, scope::utility, works-with::file
+tmsnc: uitoolkit::ncurses
+tn5250: hardware::emulation, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::login
+tnef: implemented-in::c, interface::commandline, role::program, scope::utility, use::converting, use::viewing, works-with::mail
+tnftp: special::not-yet-tagged, special::not-yet-tagged::t, uitoolkit::ncurses
+tntdb-mysql0: implemented-in::c++, protocol::db:mysql, role::plugin, works-with::db
+tntdb-postgresql0: implemented-in::c++, protocol::db:psql, role::plugin, works-with::db
+tntdb-sqlite0: implemented-in::c++, role::plugin, works-with::db
+tntnet: devel::web, filetransfer::http, implemented-in::c++, interface::daemon, network::server, protocol::http, protocol::ssl, role::program, use::transmission, web::appserver, web::server
+tntnet-demos: devel::examples, devel::lang:c++, devel::web, implemented-in::c++, role::documentation, role::plugin
+tntnet-doc: devel::doc, devel::examples, devel::lang:c++, devel::web, role::documentation
+tob: admin::backup, hardware::storage, hardware::storage:floppy, implemented-in::perl, implemented-in::shell, interface::commandline, role::program, scope::application, use::storing, works-with::file
+tochnog: field::physics, interface::commandline, role::program, scope::application
+tochnog-doc: field::physics, made-of::data:html, made-of::data:postscript, role::documentation
+tofrodos: interface::commandline, role::program, scope::utility, use::converting, works-with::text
+toilet: interface::commandline, interface::text-mode, role::program, use::entertaining, use::text-formatting, works-with::text
+tomboy: implemented-in::c-sharp, interface::x11, role::program, suite::gnome, uitoolkit::gtk, x11::application
+tomcat4: devel::lang:java, web::appserver
+tomcat4-admin: special::not-yet-tagged, special::not-yet-tagged::t
+tomcat4-webapps: special::not-yet-tagged, special::not-yet-tagged::t
+tomcat5: devel::lang:java, devel::web, implemented-in::java, interface::web, network::server, protocol::http, role::program, suite::apache, web::appserver
+tomcat5.5: devel::lang:java, interface::web, role::program, suite::apache, web::appserver
+tome: game::rpg, interface::text-mode, role::program, special::not-yet-tagged, special::not-yet-tagged::t, uitoolkit::ncurses, use::entertaining, use::gameplaying
+toolame: interface::commandline, role::program, scope::utility, use::converting, works-with-format::mp3, works-with::audio
+toolbar-fancy: implemented-in::lisp, interface::x11, made-of::data:icons, role::plugin, suite::emacs, use::editing, x11::application
+toolchain-source: devel::buildtools, interface::commandline, role::source
+toolchain-source-gdb: devel::debugger, interface::commandline, role::source
+toolchain-source-newlib: devel::lang:c, hardware::embedded, role::source
+topal: network::client, role::program, security::cryptography, uitoolkit::ncurses, works-with::mail
+toppler: game::arcade, interface::x11, junior::arcade, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+tor: implemented-in::c, interface::daemon, network::client, network::routing, network::server, role::program, security::cryptography, special::completely-tagged, use::proxying, use::routing
+tora: devel::debugger, devel::lang:sql, interface::x11, role::program, scope::utility, suite::kde, uitoolkit::qt, use::browsing, use::editing, works-with::db, x11::application
+torcs: game::sport, game::sport:racing, interface::3d, interface::x11, role::program, use::gameplaying
+torcs-data: role::app-data, special::not-yet-tagged, special::not-yet-tagged::t
+torcs-data-cars-extra: special::not-yet-tagged, special::not-yet-tagged::t
+torcs-data-tracks-oval: special::not-yet-tagged, special::not-yet-tagged::t
+torcs-data-tracks-road: special::not-yet-tagged, special::not-yet-tagged::t
+torrentflux: filetransfer::TODO, implemented-in::php, network::client, network::service, protocol::bittorrent, role::program, use::downloading, web::TODO, web::application, works-with::file
+torsmo: admin::monitoring, implemented-in::c, interface::x11, role::program, scope::utility, special::completely-tagged, use::monitor, x11::application
+toshset: admin::configuring, admin::power-management, hardware::laptop, interface::commandline, role::program, scope::utility, use::configuring
+toshutils: admin::configuring, admin::power-management, hardware::laptop, interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+totd: interface::daemon, network::server, protocol::dns, protocol::ipv6, role::program, special::not-yet-tagged, special::not-yet-tagged::t, use::proxying
+totem: interface::x11, role::dummy, sound::player, special::obsolete, suite::gnome, uitoolkit::gtk, use::playing, works-with::audio, works-with::video, x11::application
+totem-gstreamer: hardware::storage, hardware::storage:cd, hardware::storage:dvd, implemented-in::c, interface::x11, protocol::ssl, role::program, scope::application, sound::player, suite::gnome, uitoolkit::gtk, use::downloading, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, works-with::video, x11::application
+totem-xine: hardware::storage, hardware::storage:cd, hardware::storage:dvd, implemented-in::c, interface::x11, protocol::ssl, role::program, scope::application, sound::player, suite::gnome, uitoolkit::gtk, use::downloading, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, works-with::video, x11::application
+toursst: implemented-in::python, interface::commandline, network::client, role::program, use::downloading, works-with-format::xml, works-with-format::xml:rss
+tpb: admin::configuring, hardware::input, hardware::laptop, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::t, use::configuring
+tpconfig: admin::configuring, hardware::input, hardware::laptop, role::program, scope::utility, use::configuring
+tpctl: admin::configuring, hardware::input, hardware::laptop, interface::commandline, interface::text-mode, uitoolkit::ncurses, use::configuring
+tpp: implemented-in::ruby, interface::text-mode, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::t, uitoolkit::ncurses, use::viewing, works-with::text
+tqsllib-bin: hardware::hamradio, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::t
+tqsllib-dev: devel::library, hardware::hamradio, role::devel-lib
+tqsllib1: hardware::hamradio, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::t
+tra: admin::file-distribution, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::t, use::synchronizing, works-with::file
+trac: devel::bugtracker, implemented-in::python, interface::web, role::program, special::not-yet-tagged, special::not-yet-tagged::t, web::wiki, works-with::bugs
+traceproto: admin::benchmarking, implemented-in::c, interface::commandline, network::scanner, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::t, use::routing, use::scanning
+traceroute: admin::benchmarking, interface::commandline, network::routing, network::scanner, protocol::TODO, protocol::ip, role::program, scope::utility, use::routing
+traceroute-nanog: admin::benchmarking, implemented-in::c, interface::commandline, network::routing, network::scanner, role::program, scope::utility, use::routing
+trackballs: game::puzzle, interface::3d, role::program, uitoolkit::sdl, use::editing, use::gameplaying, x11::application
+trackballs-data: game::puzzle, interface::3d, role::app-data, special::auto-inst-parts, uitoolkit::sdl, use::gameplaying, x11::application
+trackballs-music: game::puzzle, interface::3d, made-of::TODO, role::app-data, uitoolkit::qt, uitoolkit::sdl, use::gameplaying, x11::application
+traffic-vis: admin::monitoring, network::scanner, protocol::ip, special::not-yet-tagged, special::not-yet-tagged::t, use::monitor, use::viewing, works-with-format::postscript, works-with::image, works-with::image:raster, works-with::text
+tramp: implemented-in::lisp, protocol::TODO, protocol::smb, protocol::ssh, role::plugin, suite::emacs, use::editing, works-with::file
+trang: implemented-in::java, special::not-yet-tagged, special::not-yet-tagged::t, use::converting, works-with-format::xml
+trans-de-en: culture::TODO, culture::german, made-of::data:dictionary, role::app-data, use::converting
+transcalc: field::electronics, field::mathematics, interface::x11, role::program, scope::application, uitoolkit::gtk, x11::application
+transcend: game::arcade, interface::x11, role::program, use::entertaining, use::gameplaying
+transcriber: field::linguistics, interface::x11, uitoolkit::tk, use::editing, works-with::audio, works-with::text, x11::application
+transfig: implemented-in::c, interface::commandline, role::program, scope::utility, use::converting, use::printing, works-with::image, works-with::image:vector
+translate: culture::german, interface::commandline, works-with::dictionary
+translate-docformat: devel::docsystem, interface::commandline, role::program, scope::utility, use::converting, works-with-format::docbook, works-with-format::html, works-with-format::plaintext, works-with-format::postscript, works-with-format::sgml, works-with-format::tex, works-with::text
+translucency-source: admin::filesystem, admin::kernel, role::source, special::not-yet-tagged, special::not-yet-tagged::t
+transmission: uitoolkit::gtk
+transproxy: interface::daemon, network::server, protocol::http, role::program, use::proxying
+transset: interface::x11, role::program, scope::utility
+trashapplet: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::t, uitoolkit::gtk
+trayer: interface::x11, uitoolkit::gtk, x11::applet
+tre-agrep: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::t, use::searching, works-with::text
+tree: interface::commandline, role::program, scope::utility, use::browsing, works-with::file
+tree-puzzle: field::biology, use::organizing, use::searching
+tree-puzzle-doc: field::biology, role::documentation
+treecc: devel::code-generator, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::t
+treelang-3.3: devel::compiler, devel::examples, role::documentation, works-with::software:source
+treelang-3.4: devel::compiler, devel::examples, role::documentation
+treelang-4.1: suite::gnu
+treetool: field::biology
+treeviewx: field::biology, implemented-in::c++, interface::x11, role::program, scope::utility, uitoolkit::wxwindows, use::viewing, works-with-format::pdf, works-with-format::plaintext, works-with-format::postscript, works-with-format::svg, works-with::special:todo, x11::application
+tremulous: game::fps, interface::x11, network::client, network::server, role::program, use::entertaining
+tremulous-data: role::app-data
+tremulous-server: interface::text-mode, network::server, role::program, use::gameplaying
+trickle: implemented-in::c, interface::commandline, role::program, scope::utility, use::configuring, use::downloading
+trigger: game::sport:racing, implemented-in::c, interface::3d, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+tripwire: admin::monitoring, interface::commandline, interface::daemon, mail::TODO, role::program, security::ids, security::integrity, use::monitor, works-with::file, works-with::mail
+trn: network::client, protocol::nntp, role::program, uitoolkit::ncurses
+trn4: network::client, protocol::nntp, role::program, uitoolkit::ncurses
+troffcvt: implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, use::text-formatting, works-with-format::html, works-with-format::man, works-with-format::plaintext, works-with::text
+trophy: game::arcade, interface::x11, use::gameplaying, x11::application
+trophy-data: game::arcade, interface::x11, role::app-data, use::gameplaying, x11::application
+trr19: game::typing, role::plugin, suite::emacs, use::learning
+trscripts: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::t, use::converting, works-with::font, works-with::text
+truc: interface::commandline, role::program, scope::utility, use::storing, use::transmission, works-with::file, works-with::mail
+trueprint: devel::lang:c, devel::lang:c++, devel::lang:java, devel::lang:pascal, devel::lang:perl, devel::lang:pike, devel::prettyprint, interface::commandline, role::program, scope::utility, suite::gnu, use::printing, works-with-format::postscript, works-with::software:source, works-with::text
+trustedqsl: hardware::hamradio, protocol::ssl, special::not-yet-tagged, special::not-yet-tagged::t, uitoolkit::wxwidgets, uitoolkit::wxwindows
+trustees: admin::configuring, admin::user-management, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::t, use::configuring
+ts10: hardware::emulation
+tsclient: interface::x11, network::client, role::program, suite::gnome, uitoolkit::gtk, use::login, use::viewing, x11::applet
+tse3play: interface::commandline, role::program, scope::application, sound::midi, sound::player, use::converting, use::playing, works-with::audio
+tshark: admin::monitoring, interface::commandline, network::scanner, role::program, scope::utility, use::monitor, works-with::network-traffic
+tsocks: implemented-in::c, interface::daemon, network::client, network::server, role::program, use::proxying
+tspc: admin::configuring, interface::commandline, network::client, network::vpn, protocol::ipv6, role::program, special::not-yet-tagged, special::not-yet-tagged::t, use::configuring, use::routing
+ttcn-el: implemented-in::lisp, role::plugin, suite::emacs, use::editing
+ttcn3parser: devel::interpreter, devel::testing-qa, implemented-in::python, interface::commandline, role::program, scope::utility, use::checking
+ttf-alee: culture::korean, made-of::data:font, role::app-data, role::content:font, role::data
+ttf-arabeyes: made-of::data:font, role::app-data, role::content:font, role::data
+ttf-arhangai: culture::mongolian, made-of::data:font, role::app-data, role::content:font, role::data
+ttf-arphic-bkai00mp: culture::taiwanese, made-of::data:font, role::app-data, role::content:font, role::data
+ttf-arphic-bsmi00lp: culture::taiwanese, made-of::data:font, role::app-data, role::content:font, role::data
+ttf-arphic-gbsn00lp: culture::chinese, made-of::data:font, role::app-data, role::content:font, role::data
+ttf-arphic-gkai00mp: culture::chinese, made-of::data:font, role::app-data, role::content:font, role::data
+ttf-arphic-ukai: culture::chinese, culture::taiwanese, made-of::data:font, role::app-data, role::content:font, role::data
+ttf-arphic-uming: culture::chinese, culture::taiwanese, made-of::data:font, role::app-data, role::content:font, role::data
+ttf-baekmuk: culture::korean, made-of::data:font, role::app-data, role::content:font, role::data
+ttf-bengali-fonts: culture::bengali, made-of::data:font, role::app-data, role::content:font, role::data
+ttf-bitstream-vera: made-of::data:font, role::app-data, role::content:font, role::data
+ttf-bpg-georgian-fonts: role::content:font, role::data
+ttf-dejavu: made-of::data:font, role::content:font, role::data
+ttf-devanagari-fonts: culture::hindi, made-of::data:font, role::app-data, role::content:font, role::data
+ttf-dustin: made-of::data:font, role::app-data, role::content:font, role::data
+ttf-dzongkha: role::content:font, role::data
+ttf-f500: made-of::data:font, role::app-data, role::content:font, role::data
+ttf-farsiweb: culture::farsi, made-of::data:font, role::app-data, role::content:font, role::data
+ttf-freefont: made-of::data:font, role::app-data, role::content:font, role::data, suite::gnu
+ttf-gentium: made-of::data:font, role::app-data, role::content:font, role::data
+ttf-georgewilliams: made-of::data:font, role::content:font, role::data
+ttf-gujarati-fonts: made-of::data:font, role::app-data, role::content:font, role::data
+ttf-indic-fonts: culture::bengali, culture::hindi, culture::punjabi, culture::tamil, made-of::data:font, role::content:font, role::data, role::metapackage
+ttf-isabella: made-of::data:font, role::app-data, role::content:font, role::data
+ttf-junicode: made-of::data:font, role::app-data, role::content:font, role::data, works-with::text, works-with::unicode
+ttf-kacst: culture::arabic, made-of::data:font, role::app-data, role::content:font, role::data
+ttf-kannada-fonts: made-of::data:font, role::app-data, role::content:font, role::data
+ttf-khmeros: culture::TODO, made-of::data:font, role::content:font, role::data
+ttf-kochi-gothic: culture::japanese, made-of::data:font, role::app-data, role::content:font, role::data
+ttf-kochi-gothic-naga10: made-of::data:font, role::app-data, role::content:font, role::data, works-with::font
+ttf-kochi-mincho: culture::japanese, made-of::data:font, role::app-data, role::content:font, role::data
+ttf-kochi-mincho-naga10: made-of::data:font, role::app-data, role::content:font, role::data, works-with::font
+ttf-lao: role::content:font, role::data
+ttf-larabie-deco: made-of::data:font, role::app-data, role::content:font, role::data, works-with::font
+ttf-larabie-straight: made-of::data:font, role::app-data, role::content:font, role::data, works-with::font
+ttf-larabie-uncommon: made-of::data:font, role::app-data, role::content:font, role::data, works-with::font
+ttf-malayalam-fonts: made-of::data:font, role::app-data, role::content:font, role::data
+ttf-mgopen: made-of::data:font, role::app-data, role::content:font, role::data
+ttf-mikachan: culture::japanese, made-of::data:font, role::app-data, role::content:font, role::data
+ttf-mph-2b-damase: made-of::data:font, role::content:font, role::data
+ttf-nafees: role::content:font, role::data
+ttf-opensymbol: made-of::data:font, role::app-data, role::content:font, role::data, suite::openoffice
+ttf-oriya-fonts: made-of::data:font, role::app-data, role::content:font, role::data
+ttf-paktype: made-of::data:font, role::app-data, role::content:font, role::data
+ttf-punjabi-fonts: culture::punjabi, made-of::data:font, role::app-data, role::content:font, role::data
+ttf-sazanami-gothic: culture::japanese, made-of::data:font, role::app-data, role::content:font, role::data
+ttf-sazanami-mincho: culture::japanese, made-of::data:font, role::app-data, role::content:font, role::data
+ttf-sil-abyssinica: role::content:font, role::data
+ttf-sil-charis: role::content:font, role::data
+ttf-sil-doulos: role::content:font, role::data
+ttf-sjfonts: made-of::data:font, role::app-data
+ttf-staypuft: made-of::data:font, role::app-data
+ttf-summersby: made-of::data:font, role::app-data, role::content:font, role::data
+ttf-tamil-fonts: culture::tamil, made-of::data:font, role::app-data, role::content:font, role::data
+ttf-telugu-fonts: made-of::data:font, role::app-data, role::content:font, role::data, special::not-yet-tagged, special::not-yet-tagged::t
+ttf-thai-tlwg: role::content:font, role::data
+ttf-thryomanes: culture::bulgarian, culture::greek, culture::russian, culture::serbian, culture::slovak, made-of::data:font, role::app-data, role::content:font, role::data
+ttf-tmuni: made-of::data:font, role::app-data, role::content:font, role::data, special::not-yet-tagged, special::not-yet-tagged::t
+ttf-unfonts: culture::korean, made-of::data:font, role::app-data, role::content:font, role::data
+ttf-uralic: made-of::data:font, role::app-data, role::content:font, role::data, special::not-yet-tagged, special::not-yet-tagged::t
+ttf-vlgothic: role::content:font, role::data
+ttf-xfree86-nonfree: made-of::data:font, role::app-data, role::content:font, role::data, works-with::font
+ttf-xfree86-nonfree-syriac: made-of::data:font, role::app-data, role::content:font, role::data
+ttf2pt1: interface::commandline, role::program, scope::utility, use::converting, works-with::font
+ttf2pt1-chinese: culture::chinese, culture::taiwanese, role::app-data, use::converting, works-with::font
+ttfprint: culture::chinese, culture::taiwanese, interface::commandline, role::program, scope::utility, use::converting, use::printing, works-with-format::postscript, works-with::font, works-with::text
+tth: special::not-yet-tagged, special::not-yet-tagged::t, use::editing, works-with-format::tex, works-with::text
+ttmkfdir: admin::configuring, interface::commandline, role::program, scope::utility, use::configuring, works-with::font
+ttt: admin::monitoring, interface::x11, network::scanner, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::t, uitoolkit::tk, use::monitor, works-with::network-traffic, x11::application
+ttthreeparser: devel::lang:java
+tttprobe: admin::monitoring, interface::x11, network::scanner, special::not-yet-tagged, special::not-yet-tagged::t, use::monitor, use::transmission, x11::application
+tttview: admin::monitoring, interface::x11, network::scanner, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::t, use::viewing, x11::application
+ttv: hardware::video, interface::text-mode, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::t, uitoolkit::ncurses, use::viewing, works-with::video
+ttyd: hardware::modem, special::not-yet-tagged, special::not-yet-tagged::t
+ttylog: admin::logging, hardware::modem, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::t, use::monitor
+ttyrec: admin::logging, interface::commandline, role::program, scope::utility, use::storing, works-with::software:running
+ttysnoop: admin::monitoring, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::t, use::monitor
+tua: admin::monitoring, interface::commandline, interface::daemon, protocol::TODO, role::program, scope::utility, security::log-analyzer, special::not-yet-tagged, special::not-yet-tagged::t, use::monitor, works-with::logfile
+tuareg-mode: devel::lang:ocaml, implemented-in::lisp, role::plugin, suite::emacs, use::editing
+tulip: uitoolkit::qt
+tun-source: admin::hardware, role::source, special::not-yet-tagged, special::not-yet-tagged::t, use::driver, use::transmission
+turba: interface::web, role::program, scope::application, web::application, works-with::db, works-with::pim
+turba2: interface::web, role::program, scope::application, web::application, works-with::db, works-with::pim
+turck-mmcache: special::not-yet-tagged, special::not-yet-tagged::t
+turqstat: admin::monitoring, interface::commandline, protocol::fidonet, protocol::nntp, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::t, use::monitor
+tutos: devel::lang:sql, interface::web, role::program, scope::application, use::organizing, web::application, works-with::db, works-with::people
+tutos2: devel::lang:sql, interface::web, office::project-management, role::program, scope::application, use::organizing, web::application, works-with::db, works-with::people
+tuxeyes: game::toys, interface::x11, role::program, uitoolkit::qt, use::entertaining, x11::application
+tuxkart: game::arcade, interface::3d, junior::games-gl, role::program, use::gameplaying, x11::application
+tuxkart-data: game::arcade, interface::3d, junior::games-gl, role::app-data, use::gameplaying, x11::application
+tuxmath: field::mathematics, game::arcade, implemented-in::c, junior::arcade, role::program, uitoolkit::sdl, use::gameplaying, use::learning
+tuxpaint: interface::x11, role::program, scope::application, uitoolkit::sdl, use::learning, works-with::image, works-with::image:raster, x11::application
+tuxpaint-config: admin::configuring, interface::x11, uitoolkit::sdl, use::configuring, x11::application
+tuxpaint-data: role::app-data
+tuxpaint-stamps-default: interface::x11, role::app-data, uitoolkit::sdl, use::gameplaying, use::learning, works-with::image, works-with::image:raster, x11::application
+tuxpuck: game::arcade, implemented-in::c, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+tuxracer: game::arcade, interface::3d, role::dummy, special::obsolete, uitoolkit::sdl, use::gameplaying, x11::application
+tuxracer-data: game::arcade, interface::3d, role::dummy, special::obsolete, uitoolkit::sdl, use::gameplaying, x11::application
+tuxracer-extras: game::arcade, interface::3d, role::app-data, role::dummy, special::obsolete, uitoolkit::sdl, use::gameplaying, x11::application
+tuxtype: game::arcade, game::typing, implemented-in::c, junior::arcade, role::program, uitoolkit::sdl, use::gameplaying, use::learning
+tuxtype-data: role::app-data
+tuxtype-data-nonfree: role::app-data
+tv-fonts: made-of::data:font, role::app-data, x11::font
+tvtime: hardware::video, interface::x11, role::program, scope::application, use::viewing, works-with::video
+twclock: hardware::hamradio, interface::x11, role::program, scope::utility, uitoolkit::motif, use::timekeeping, use::viewing, x11::application
+twig: devel::lang:sql, implemented-in::php, interface::web, network::client, protocol::imap, role::program, use::organizing, works-with::db, works-with::pim
+twiki: devel::lang:perl, devel::library, interface::daemon, network::server, role::program, web::wiki
+twin: interface::text-mode, network::client, network::server, role::program, uitoolkit::ncurses, x11::window-manager
+twinkle: uitoolkit::qt
+twisted-doc: network::service, role::documentation
+twisted-doc-api: devel::doc, made-of::data:html, network::service, role::documentation, special::not-yet-tagged, special::not-yet-tagged::t
+twisted-quotes: role::data, special::not-yet-tagged, special::not-yet-tagged::t
+twlog: admin::logging, hardware::hamradio, interface::x11, uitoolkit::motif, use::editing, x11::application
+twm: interface::x11, role::program, x11::window-manager
+twoftpd: filetransfer::ftp, interface::daemon, network::server, protocol::ftp, role::program, works-with::file
+twoftpd-run: admin::configuring, filetransfer::ftp, interface::commandline, protocol::ftp, role::program, scope::utility, use::configuring
+twolame: interface::commandline, role::program, sound::compression, use::compressing, use::converting, works-with-format::mp3, works-with-format::wav, works-with::audio, works-with::file
+twpsk: hardware::hamradio, interface::x11, role::program, scope::utility, uitoolkit::motif, uitoolkit::ncurses, x11::application
+twutils: field::mathematics, role::program, scope::utility
+txt2html: implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with-format::plaintext, works-with::text
+txt2man: interface::commandline, role::program, scope::utility, use::converting, works-with-format::man, works-with-format::plaintext, works-with::text
+txt2pdbdoc: interface::commandline, role::program, scope::utility, use::converting, use::text-formatting, works-with-format::html, works-with::text
+txt2regex: implemented-in::shell, interface::commandline, role::program, scope::utility, use::converting, use::searching
+txt2tags: implemented-in::python, interface::commandline, role::program, scope::utility, use::converting, use::text-formatting, works-with-format::html, works-with-format::sgml, works-with::text
+type-handling: devel::packaging, hardware::detection, interface::commandline, role::program, scope::utility, suite::debian
+type1inst: admin::configuring, implemented-in::perl, interface::commandline, role::program, scope::utility, use::configuring, works-with::font
+typespeed: game::typing, interface::text-mode, role::program, uitoolkit::ncurses, use::gameplaying, use::learning
+typo3-site-installer: special::not-yet-tagged, special::not-yet-tagged::t
+tz-brasil: admin::configuring, culture::brazilian, interface::commandline, role::program, scope::utility, use::configuring, use::timekeeping
+tzc: network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::t
+tzdata: role::app-data, use::timekeeping
+tzwatch: interface::commandline, interface::x11, role::program, scope::utility, use::timekeeping
+u++: devel::lang:c++, devel::library, implemented-in::c++, role::devel-lib
+u++-doc: devel::doc, devel::lang:c++, made-of::data:postscript, role::documentation
+uae: hardware::emulation, uitoolkit::gtk
+uae-exotic: hardware::emulation, uitoolkit::gtk
+uae-suid: hardware::emulation, uitoolkit::gtk
+ubh: implemented-in::perl, interface::commandline, network::client, protocol::nntp, role::program, use::downloading
+ucarp: protocol::ip, special::not-yet-tagged, special::not-yet-tagged::u, use::routing
+ucblogo: interface::commandline, role::program, scope::utility, uitoolkit::ncurses, works-with::software:source
+ucbmpeg-play: use::viewing, works-with-format::mp3, works-with::audio, works-with::video
+ucf: admin::configuring, devel::packaging, interface::commandline, role::program, scope::utility, suite::debian, use::configuring
+uclibc-toolchain: devel::lang:c, devel::library, implemented-in::c, role::program, scope::utility
+ucspi-proxy: network::service, special::not-yet-tagged, special::not-yet-tagged::u, use::proxying, use::routing
+ucspi-tcp-src: network::client, network::server, protocol::tcp, role::source
+ucspi-unix: interface::commandline, network::client, network::server, network::service, role::program, special::not-yet-tagged, special::not-yet-tagged::u
+ud: admin::logging, interface::web, network::server, protocol::http, role::program, use::timekeeping, works-with-format::html, works-with::text
+ude: interface::x11, role::program, uitoolkit::xlib, x11::window-manager
+udev: admin::boot, admin::filesystem, admin::hardware, hardware::detection, implemented-in::c, implemented-in::shell, interface::daemon, role::program
+udftools: admin::filesystem, hardware::storage, hardware::storage:cd, hardware::storage:dvd, interface::commandline, role::program, scope::utility, use::configuring
+udhcpc: network::client, protocol::dhcp, role::program
+udhcpd: interface::daemon, network::server, protocol::dhcp, role::program
+udo: interface::commandline, role::program, scope::utility, use::converting, use::text-formatting, works-with-format::html, works-with-format::man, works-with-format::plaintext, works-with-format::postscript, works-with-format::tex, works-with::text
+udo-doc: interface::commandline, made-of::data:html, role::documentation, use::converting, use::text-formatting, works-with-format::html, works-with-format::man, works-with-format::plaintext, works-with-format::postscript, works-with-format::tex, works-with::text
+udo-doc-de: culture::german
+udo-doc-en: culture::TODO, made-of::data:html, role::documentation
+udo-doc-ger: culture::german, made-of::data:html, role::documentation, use::converting, use::text-formatting, works-with-format::html, works-with-format::man, works-with-format::plaintext, works-with-format::postscript, works-with-format::tex, works-with::text
+udpcast: admin::cluster, admin::file-distribution, protocol::ethernet, use::synchronizing, use::transmission
+udptunnel: network::vpn, special::not-yet-tagged, special::not-yet-tagged::u, use::routing
+ufraw: hardware::camera, interface::x11, uitoolkit::gtk, x11::application
+ugidd: admin::user-management, devel::library, interface::daemon, network::server, protocol::nfs, role::program, use::synchronizing
+uif: admin::configuring, implemented-in::perl, network::firewall, security::firewall, use::configuring
+uim: accessibility::input, role::metapackage, special::not-yet-tagged, special::not-yet-tagged::u
+uim-anthy: accessibility::input, special::not-yet-tagged, special::not-yet-tagged::u
+uim-applet-gnome: accessibility::input, interface::x11, special::not-yet-tagged, special::not-yet-tagged::u, uitoolkit::gtk, x11::application
+uim-canna: accessibility::input, special::not-yet-tagged, special::not-yet-tagged::u
+uim-common: accessibility::input, special::auto-inst-parts, special::not-yet-tagged, special::not-yet-tagged::u
+uim-fep: accessibility::input, special::not-yet-tagged, special::not-yet-tagged::u, uitoolkit::ncurses
+uim-gtk2.0: accessibility::input, interface::x11, special::not-yet-tagged, special::not-yet-tagged::u, uitoolkit::gtk, x11::application
+uim-m17nlib: accessibility::input, special::not-yet-tagged, special::not-yet-tagged::u
+uim-prime: accessibility::input, special::not-yet-tagged, special::not-yet-tagged::u
+uim-qt: uitoolkit::qt
+uim-skk: accessibility::input, special::not-yet-tagged, special::not-yet-tagged::u
+uim-utils: accessibility::input, special::not-yet-tagged, special::not-yet-tagged::u, uitoolkit::ncurses
+uim-xim: accessibility::input, interface::x11, special::not-yet-tagged, special::not-yet-tagged::u, uitoolkit::gtk, x11::application
+uisp: devel::machinecode, field::electronics, interface::commandline, role::program, scope::utility
+uligo: game::board, interface::x11, role::program, uitoolkit::tk, use::gameplaying, use::learning, x11::application
+ulog-acctd: admin::accounting, admin::logging, interface::daemon, network::firewall, role::program, scope::utility, use::monitor, works-with::logfile
+ulogd: admin::accounting, admin::logging, interface::daemon, network::firewall, role::program, scope::utility, use::monitor, works-with::logfile
+ulogd-mysql: admin::accounting, admin::logging, devel::lang:sql, interface::daemon, network::firewall, role::program, scope::utility, use::monitor, works-with::db
+ulogd-pcap: admin::accounting, admin::logging, interface::daemon, network::firewall, role::program, scope::utility, use::monitor, works-with::logfile
+ulogd-pgsql: admin::accounting, admin::logging, devel::lang:sql, interface::daemon, network::firewall, role::program, scope::utility, use::monitor, works-with::db
+ulogd-sqlite3: special::not-yet-tagged, special::not-yet-tagged::u
+ultrapoint: use::editing
+ultrapossum: admin::configuring, protocol::ldap, special::not-yet-tagged, special::not-yet-tagged::u, use::configuring, works-with::db
+ultrapossum-common: protocol::ldap, special::not-yet-tagged, special::not-yet-tagged::u, works-with::db
+ultrapossum-dev: protocol::ldap, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::u, works-with::db
+ultrapossum-dnsbalance: protocol::dns, protocol::ldap, special::not-yet-tagged, special::not-yet-tagged::u, works-with::db
+ultrapossum-failover: network::hiavailability, protocol::ldap, special::not-yet-tagged, special::not-yet-tagged::u, works-with::db
+ultrapossum-server: network::server, protocol::ldap, role::program, special::not-yet-tagged, special::not-yet-tagged::u, works-with::db
+ultrapossum-slapd: special::not-yet-tagged, special::not-yet-tagged::u
+ultrapossum-slapd-modules: special::not-yet-tagged, special::not-yet-tagged::u
+ultrapossum-test: devel::testing-qa, protocol::ldap, special::not-yet-tagged, special::not-yet-tagged::u, works-with::db
+ultrapossum-tls: protocol::ssl, special::not-yet-tagged, special::not-yet-tagged::u
+umbrello: interface::x11, role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::u, suite::kde, uitoolkit::qt, use::editing, works-with::image, works-with::image:vector, x11::application
+uml-utilities: devel::debugger, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::u, uitoolkit::ncurses
+umlrun: special::not-yet-tagged, special::not-yet-tagged::u
+umlrun-uml: special::not-yet-tagged, special::not-yet-tagged::u
+unaccent: interface::commandline, use::converting, works-with-format::plaintext, works-with::text, works-with::unicode
+unace: interface::commandline, role::program, scope::utility, use::compressing, works-with::archive
+unace-nonfree: uitoolkit::ncurses
+unadf: interface::commandline, role::program, scope::utility, works-with::file
+unalz: interface::commandline, role::program, scope::utility, use::compressing, works-with::archive
+unarj: interface::commandline, role::dummy, special::not-yet-tagged, special::not-yet-tagged::u, special::obsolete, use::compressing
+uncc: devel::lang:c
+unclutter: interface::x11, role::program, scope::utility, x11::application
+underware: special::not-yet-tagged, special::not-yet-tagged::u, uitoolkit::sdl
+unfs3: admin::filesystem, interface::daemon, network::server, protocol::nfs, role::program
+unhtml: interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with::text
+uni2ascii: implemented-in::c, interface::commandline, role::program, scope::utility, use::converting, works-with::file, works-with::text, works-with::unicode
+unicode: devel::i18n, implemented-in::python, interface::commandline, role::program, scope::utility, use::searching, use::viewing, works-with::text, works-with::unicode
+unicon-im: accessibility::input, culture::chinese, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::u
+uniconf-tools: admin::configuring, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::u, use::configuring
+uniconfd: admin::configuring, interface::daemon, network::server, network::service, role::program, special::not-yet-tagged, special::not-yet-tagged::u, use::configuring
+unicorn: uitoolkit::gtk
+unicorn-source: use::browsing
+unifdef: devel::buildtools, devel::lang:c, interface::commandline, role::program, scope::utility, use::converting, works-with::software:source
+unifont: culture::chinese, culture::taiwanese, made-of::data:font, role::app-data, suite::gnu, works-with::text, works-with::unicode, x11::font
+unionfs-source: admin::filesystem, admin::kernel, role::source, special::not-yet-tagged, special::not-yet-tagged::u
+unionfs-utils: admin::configuring, admin::filesystem, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::u, use::configuring
+unison: admin::backup, admin::file-distribution, implemented-in::ocaml, interface::commandline, role::program, scope::utility, use::synchronizing, works-with::file
+unison-gtk: admin::backup, admin::file-distribution, implemented-in::ocaml, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::synchronizing, x11::application
+unison2.9.1: implemented-in::ocaml, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::u
+unison2.9.1-gtk: implemented-in::ocaml, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::u, uitoolkit::gtk, x11::application
+units: interface::text-mode, role::program, scope::utility, suite::gnu, uitoolkit::ncurses, use::converting
+units-filter: field::chemistry, field::physics, implemented-in::c, interface::commandline, role::program, scope::utility, use::converting
+unixcw: hardware::hamradio, role::shared-lib
+unixcw-dev: hardware::hamradio, role::devel-lib
+unixodbc: implemented-in::c, interface::commandline, role::program, role::shared-lib, scope::utility, uitoolkit::ncurses, works-with::db
+unixodbc-bin: implemented-in::c, interface::x11, role::program, scope::utility, uitoolkit::qt, works-with::db, x11::application
+unixodbc-dev: devel::lang:c, role::devel-lib, works-with::db
+unlambda: devel::interpreter, game::toys, interface::commandline, role::program, scope::utility, works-with::software:source
+unp: implemented-in::perl, interface::commandline, role::program, scope::utility, use::compressing, works-with::archive
+unpaper: hardware::camera, hardware::scanner, implemented-in::c, interface::commandline, role::program, scope::utility, use::converting, use::filtering, use::organizing, use::printing, use::scanning, works-with::image:raster
+unrar: interface::commandline, role::program, works-with::archive
+unrar-free: implemented-in::c, interface::commandline, role::program, use::compressing, works-with::archive
+unrar-nonfree: special::not-yet-tagged, special::not-yet-tagged::u, use::compressing, works-with::archive
+unrtf: interface::commandline, role::program, scope::utility, use::converting, use::text-formatting, works-with-format::html, works-with-format::postscript, works-with-format::tex, works-with::text
+unsermake: devel::buildtools, interface::commandline, role::program, use::configuring
+unshield: interface::commandline, role::program, scope::utility, use::compressing, works-with::archive
+untex: interface::commandline, role::program, scope::utility, use::converting, works-with-format::plaintext, works-with-format::tex, works-with::text
+unzip: interface::commandline, role::program, scope::utility, use::compressing, works-with-format::zip, works-with::archive
+unzip-crypt: interface::commandline, role::dummy, role::program, scope::utility, security::cryptography, special::obsolete, use::compressing, works-with-format::zip, works-with::archive
+unzoo: interface::commandline, role::program, scope::utility, works-with::archive
+update: admin::kernel, interface::daemon, network::server, role::program
+update-cluster: admin::cluster, admin::configuring, admin::file-distribution, use::configuring
+update-cluster-hosts: admin::cluster, admin::configuring, admin::file-distribution, use::configuring
+update-inetd: admin::configuring, implemented-in::perl, interface::commandline, network::configuration, role::program
+update-manager: admin::package-management, interface::x11, role::program, suite::debian, suite::gnome, uitoolkit::gtk, works-with::software:package
+update-notifier: admin::package-management, interface::x11, role::program, uitoolkit::gtk, works-with::software:package, x11::application
+upgrade-system: admin::configuring, admin::package-management, interface::daemon, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::u, suite::debian, use::configuring, works-with::software:package
+uprecords-cgi: admin::monitoring, admin::power-management, implemented-in::c, interface::web, role::program, scope::utility, use::timekeeping, web::cgi, works-with-format::html, works-with::text
+upsd: admin::monitoring, admin::power-management, hardware::power, hardware::power:ups, interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::u, use::monitor
+upstart: admin::automation, admin::boot, admin::power-management, interface::daemon, role::program, works-with::software:running
+uptimed: admin::monitoring, admin::power-management, implemented-in::c, interface::commandline, interface::daemon, role::program, scope::utility, use::timekeeping
+upx-nrv: interface::commandline, role::program, scope::utility, use::compressing
+upx-ucl: implemented-in::c++, interface::commandline, role::program, scope::utility, use::compressing
+upx-ucl-beta: implemented-in::c++, interface::commandline, role::program, scope::utility, use::compressing
+uqm: game::strategy, uitoolkit::sdl, use::gameplaying
+uqm-content: game::strategy, role::app-data, use::gameplaying
+uqwk: interface::daemon, network::client, protocol::nntp, role::program, use::dialing, works-with::mail
+uqwk-spool: interface::daemon, network::client, protocol::nntp, role::program, use::dialing, works-with::mail
+urlview: implemented-in::c, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::searching, works-with::mail
+usbmgr: admin::configuring, hardware::usb, interface::daemon, role::program, scope::utility, use::configuring
+usbmount: admin::configuring, admin::filesystem, hardware::storage, hardware::usb, interface::daemon, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::u, use::configuring
+usbutils: hardware::detection, hardware::usb, interface::commandline, role::program, scope::utility, use::viewing
+usbview: hardware::detection, hardware::usb, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::viewing, x11::application
+usemod-wiki: implemented-in::perl, interface::web, network::server, protocol::http, role::program, web::wiki
+usepackage: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::u, use::configuring
+user-de: culture::german, role::documentation
+user-es: culture::spanish, implemented-in::lisp, implemented-in::perl, implemented-in::shell, role::program, scope::utility, use::configuring
+user-euro-es: culture::spanish, implemented-in::lisp, implemented-in::perl, implemented-in::shell, role::program, scope::utility, use::configuring
+user-he: culture::hebrew
+user-ja: culture::japanese, role::dummy, special::obsolete, use::configuring
+user-mode-linux: devel::debugger
+user-mode-linux-doc: admin::virtualization, made-of::data:html, role::documentation
+user-setup: admin::user-management, implemented-in::shell, interface::text-mode, interface::x11, role::program, scope::utility, suite::debian, uitoolkit::special:not-applicable
+userinfo: interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::u, use::viewing, works-with::people
+userlink-source: protocol::ip, role::source, use::driver
+usermin: admin::configuring, implemented-in::perl, interface::web, network::server, protocol::http, protocol::ssl, role::program, suite::webmin, use::configuring, web::cgi, web::server
+usermin-at: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, use::timekeeping, web::cgi
+usermin-changepass: admin::configuring, admin::user-management, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, security::authentication, suite::webmin, use::configuring, web::cgi
+usermin-chfn: admin::configuring, admin::user-management, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, security::authentication, suite::webmin, use::configuring, web::cgi
+usermin-commands: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+usermin-cron: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, use::timekeeping, web::cgi
+usermin-cshrc: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+usermin-fetchmail: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi, works-with::mail
+usermin-filemanager: special::not-yet-tagged, special::not-yet-tagged::u
+usermin-forward: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi, works-with::mail
+usermin-gnupg: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, security::cryptography, suite::webmin, use::configuring, web::cgi
+usermin-htaccess: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, security::authentication, suite::webmin, use::configuring, web::cgi
+usermin-htpasswd: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, security::authentication, suite::webmin, use::configuring, web::cgi
+usermin-mailbox: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, use::viewing, web::cgi, works-with::mail
+usermin-man: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi, works-with-format::man, works-with::text
+usermin-mysql: admin::configuring, devel::lang:sql, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi, works-with::db
+usermin-plan: admin::configuring, implemented-in::perl, interface::web, protocol::finger, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+usermin-postgresql: admin::configuring, devel::lang:sql, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi, works-with::db
+usermin-proc: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi, works-with::software:running
+usermin-procmail: admin::configuring, implemented-in::perl, interface::web, mail::delivery-agent, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+usermin-quota: admin::configuring, hardware::storage, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, use::viewing, web::cgi
+usermin-schedule: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, use::timekeeping, web::cgi, works-with::mail
+usermin-shell: admin::configuring, implemented-in::perl, interface::shell, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+usermin-spamassassin: admin::configuring, implemented-in::perl, interface::web, mail::filters, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi, works-with::mail
+usermin-ssh: admin::configuring, implemented-in::perl, interface::web, protocol::TODO, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+usermin-telnet: special::not-yet-tagged, special::not-yet-tagged::u
+usermin-tunnel: admin::configuring, implemented-in::perl, interface::web, network::configuration, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+usermin-updown: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, use::synchronizing, web::cgi, works-with::file
+usermin-usermount: admin::configuring, admin::filesystem, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+usermode: uitoolkit::gtk
+userv: admin::user-management, special::not-yet-tagged, special::not-yet-tagged::u
+usplash: admin::boot, interface::commandline, role::program, scope::utility, works-with::image, works-with::image:raster
+usrp: special::not-yet-tagged, special::not-yet-tagged::u
+usrp-firmware: special::not-yet-tagged, special::not-yet-tagged::u
+uswsusp: admin::power-management, hardware::power, hardware::power:acpi, interface::commandline, role::program, scope::utility
+utalk: interface::text-mode, network::client, role::program, uitoolkit::ncurses, use::chatting
+utf8-migration-tool: interface::commandline, role::program, scope::utility, use::converting, works-with::text, works-with::unicode
+utf8script: devel::i18n, devel::lang:python, special::not-yet-tagged, special::not-yet-tagged::u
+util-linux: admin::configuring, admin::filesystem, admin::hardware, interface::commandline, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses
+util-linux-locales: culture::brazilian, culture::catalan, culture::danish, culture::norwegian, culture::spanish, role::app-data, special::not-yet-tagged, special::not-yet-tagged::u
+util-vserver: admin::virtualization, hardware::emulation, implemented-in::c, interface::commandline, network::server, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::u
+uuagc: implemented-in::haskell
+uucp: implemented-in::c, interface::commandline, interface::daemon, network::client, network::server, protocol::ipv6, role::program, use::transmission, works-with::file, works-with::mail
+uucpsend: protocol::nntp, role::plugin, special::not-yet-tagged, special::not-yet-tagged::u, use::transmission, works-with::file
+uudeview: interface::commandline, role::program, use::converting, works-with::archive
+uuid: implemented-in::c, implemented-in::perl, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::u
+uuid-dev: devel::library, role::devel-lib
+uutraf: admin::accounting, interface::commandline, role::program, scope::utility, security::log-analyzer, special::not-yet-tagged, special::not-yet-tagged::u, use::dialing, use::monitor, works-with::logfile
+uw-imapd: interface::daemon, mail::imap, network::server, protocol::imap, role::program, works-with::mail
+uw-imapd-ssl: interface::daemon, network::server, protocol::imap, protocol::ssl, role::dummy, special::obsolete, works-with::mail
+uw-mailutils: implemented-in::c, interface::commandline, mail::delivery-agent, role::program, scope::utility, works-with::mail
+uwm: interface::x11, role::program, uitoolkit::xlib, x11::window-manager
+v4l-conf: hardware::video, interface::commandline, role::program, scope::utility, uitoolkit::athena, use::configuring, works-with::video
+vacation: interface::commandline, role::program, scope::utility, works-with::mail
+vaiostat-source: hardware::laptop, role::source, use::driver
+valgrind: devel::profiler, devel::testing-qa, interface::commandline, role::program, scope::utility, works-with::software:running
+valgrind-callgrind: devel::profiler, devel::testing-qa, made-of::data:icons, role::app-data, special::not-yet-tagged, special::not-yet-tagged::v, works-with::software:running
+valknut: interface::x11, network::client, role::program, scope::utility, uitoolkit::qt, use::downloading, x11::application
+vamps: hardware::storage:dvd, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::audio, works-with::video
+varkon: interface::x11, role::program, scope::application, use::editing, works-with::3dmodel, works-with::db, x11::application
+varkon-programmer-manual: devel::doc, interface::x11, role::documentation, special::not-yet-tagged, special::not-yet-tagged::v, use::editing, works-with::3dmodel, works-with::db
+varkon-user-manual: interface::x11, role::documentation, use::editing, works-with::3dmodel, works-with::db, x11::application
+varmon: admin::monitoring, hardware::storage, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::v, uitoolkit::ncurses, use::monitor
+vat: interface::x11, protocol::voip, role::program, scope::application, uitoolkit::tk, works-with::audio, x11::application
+vbetool: hardware::video, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::v, use::configuring
+vbindiff: uitoolkit::ncurses
+vbox3: implemented-in::tcl, network::server, protocol::voip, role::program, special::not-yet-tagged, special::not-yet-tagged::v, use::transmission
+vbpp: field::electronics, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::v
+vbs: field::electronics, hardware::emulation, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::v
+vcdimager: hardware::storage, hardware::storage:cd, role::program, scope::application, use::converting, use::editing, works-with-format::iso9660, works-with::archive, works-with::video
+vcdtools: hardware::storage, hardware::storage:cd, interface::commandline, role::program, scope::utility, use::storing, works-with::video
+vcg: interface::commandline, interface::x11, role::program, scope::application, scope::utility, use::viewing, works-with::image
+vche: interface::text-mode, uitoolkit::ncurses, use::editing, works-with::file
+vcheck: filetransfer::ftp, filetransfer::http, implemented-in::perl, protocol::ftp, protocol::http, use::downloading, use::monitor, use::searching, works-with::software:source
+vcr: works-with::video
+vcs-tree: devel::rcs, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::v, use::browsing
+vcsweb: devel::rcs, interface::commandline, protocol::http, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::v
+vde: hardware::emulation, network::routing, protocol::ethernet, role::program, scope::utility
+vde2: hardware::emulation, interface::daemon, interface::shell, network::vpn, protocol::ethernet, role::program, scope::utility, special::not-yet-tagged::v, use::checking, works-with::network-traffic
+vdesk: admin::cluster, interface::commandline, interface::x11, use::viewing, x11::application
+vdk-doc: devel::doc, devel::lang:c++, devel::ui-builder, interface::x11, role::documentation, uitoolkit::gtk
+vdk2-tutorial: devel::doc, devel::lang:c++, devel::ui-builder, interface::x11, role::documentation, uitoolkit::gtk
+vdkbuilder2: devel::ide, devel::lang:c++, devel::ui-builder, interface::x11, role::program, scope::application, uitoolkit::gtk, x11::application
+vdr: hardware::video, implemented-in::c++, role::program, scope::application, use::playing, use::storing, works-with::video
+vdr-dev: hardware::video, implemented-in::c++, role::devel-lib, use::playing, use::storing, works-with::video
+vdr-plugin-bitstreamout: hardware::video, role::plugin, sound::player, use::playing, use::storing, works-with::audio, works-with::video
+vdr-plugin-console: hardware::video, interface::commandline, role::plugin, use::login, use::playing, use::storing, works-with::video
+vdr-plugin-dvd: hardware::storage, hardware::storage:dvd, hardware::video, role::plugin, use::playing, use::storing, works-with::video
+vdr-plugin-examples: devel::examples, hardware::video, role::plugin, uitoolkit::ncurses, use::playing, use::storing, works-with::video
+vdr-plugin-femon: admin::benchmarking, hardware::video, role::plugin, use::monitor, use::playing, use::storing, works-with::video
+vdr-plugin-freecell: game::card, hardware::video, role::plugin, use::gameplaying, use::playing, use::storing, works-with::video
+vdr-plugin-games: game::arcade, game::tetris, hardware::video, role::plugin, use::gameplaying, use::organizing, use::storing, works-with::video
+vdr-plugin-mp3: hardware::storage, hardware::storage:cd, hardware::video, role::plugin, sound::player, use::playing, use::storing, works-with-format::iso9660, works-with-format::mp3, works-with-format::oggvorbis, works-with::archive, works-with::audio, works-with::video
+vdr-plugin-osdteletext: hardware::video, role::plugin, use::playing, use::storing, use::viewing, works-with::text, works-with::video
+vdr-plugin-prefermenu: hardware::video, role::plugin, use::configuring, use::playing, use::storing, works-with::video
+vdr-plugin-remote: hardware::input, hardware::video, role::plugin, use::playing, use::storing, works-with::video
+vdr-plugin-sky: hardware::video, role::plugin, use::playing, use::storing, works-with::video
+vdr-plugin-vcd: hardware::storage, hardware::storage:cd, hardware::video, role::plugin, use::playing, use::storing, works-with::video
+vdr-plugin-weather: filetransfer::ftp, hardware::video, protocol::ftp, role::plugin, use::downloading, use::playing, use::storing, works-with::video
+vdradmin: admin::configuring, culture::french, culture::german, hardware::video, implemented-in::perl, interface::web, use::configuring, use::playing, use::storing, web::application, works-with::video
+vdradmin-am: implemented-in::perl, interface::web, network::server, role::program, web::application, works-with::video
+vdrift: game::sport:racing, interface::3d, interface::x11, role::program, use::gameplaying, x11::application
+vdrift-full: role::app-data
+vdrift-minimal: role::app-data
+vectoroids: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+vegastrike: game::arcade, interface::3d, uitoolkit::gtk, uitoolkit::sdl, use::gameplaying
+vegastrike-data: role::app-data, special::auto-inst-parts, special::not-yet-tagged, special::not-yet-tagged::v, use::gameplaying
+vegastrike-music: game::simulation, interface::3d, role::app-data, special::auto-inst-parts, use::gameplaying
+velocity: devel::lang:java
+velocity-doc: devel::lang:java, role::documentation
+vera: made-of::data:dictionary, made-of::data:info, role::data, suite::gnu
+verbiste: culture::french, implemented-in::c++, interface::commandline, interface::x11, made-of::data:xml, role::program, scope::utility, uitoolkit::gtk, use::learning, works-with-format::plaintext, works-with::text, x11::applet
+verbiste-gnome: culture::french, implemented-in::c++, interface::x11, made-of::data:xml, protocol::ssl, role::plugin, uitoolkit::gtk, use::learning, works-with-format::plaintext, works-with::text, x11::applet
+verilog: devel::compiler, field::electronics, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses
+verse: game::toys, interface::commandline, role::program, scope::utility
+vertex: interface::3d, role::program, scope::application, uitoolkit::gtk, use::editing, works-with::3dmodel
+vfdata-morisawa5: culture::japanese, made-of::data:font, role::app-data
+vflib2: culture::japanese, devel::library, implemented-in::c, role::shared-lib, works-with::font
+vflib2-dev: culture::japanese, devel::library, implemented-in::c, role::devel-lib, works-with::font
+vflib2-misc: culture::japanese, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::font
+vflib3: culture::japanese, devel::library, implemented-in::c, role::shared-lib, works-with::font
+vflib3-bin: culture::japanese, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::font
+vflib3-dev: culture::japanese, devel::library, implemented-in::c, role::devel-lib, role::documentation, works-with::font
+vflib3-doc: culture::japanese, devel::doc, devel::library, role::documentation, works-with::font
+vftool: interface::commandline, role::program, scope::utility, use::converting, works-with-format::tex, works-with::font, works-with::text
+vfu: interface::text-mode, role::program, scope::application, uitoolkit::ncurses, use::browsing, use::organizing, works-with::file
+vgabios: hardware::emulation, role::app-data
+vgacardgames: game::card, interface::svga, role::program, use::gameplaying
+vgagamespack: game::board, interface::svga, use::gameplaying
+vgrabbj: hardware::camera, role::program, scope::utility, use::downloading, works-with-format::jpg, works-with-format::png, works-with::image, works-with::image:raster
+vgrind: devel::prettyprint, interface::commandline, role::program, scope::utility, use::printing, works-with::software:source
+vh: interface::text-mode, network::client, role::program, special::not-yet-tagged, special::not-yet-tagged::v, uitoolkit::ncurses, use::searching, works-with::dictionary
+vibrant6: devel::library, field::biology, role::dummy, special::obsolete
+vic: interface::x11, protocol::voip, uitoolkit::tk, works-with::video, x11::application
+vice: hardware::emulation, uitoolkit::gtk
+video4linux-nw802-source: hardware::video, role::source, special::not-yet-tagged, special::not-yet-tagged::v, use::driver
+videogen: hardware::video, interface::commandline, role::program, scope::utility, use::configuring
+videolan-doc: hardware::video, role::documentation, works-with::video
+videolink: implemented-in::c++, interface::commandline, interface::x11, role::program, uitoolkit::gtk, use::converting, works-with-format::html, works-with::video, x11::application
+view3ds: interface::3d, role::program, scope::utility, uitoolkit::qt, use::viewing, works-with::3dmodel, x11::application
+viewcvs: devel::rcs, implemented-in::python, interface::web, network::client, protocol::http, role::program, use::viewing, web::application
+viewcvs-query: devel::lang:sql, devel::rcs, implemented-in::python, interface::web, network::client, protocol::http, role::program, use::viewing, web::cgi, works-with::db
+viewglob: interface::commandline, interface::x11, role::program, uitoolkit::gtk, use::searching, use::viewing, works-with::text, x11::application
+viewmol: field::chemistry, interface::x11, uitoolkit::motif, use::viewing, x11::application
+viewpdf.app: implemented-in::objc, role::plugin, suite::gnustep, use::viewing, works-with-format::pdf, works-with::text, x11::applet
+vifm: interface::text-mode, role::program, scope::application, uitoolkit::ncurses, use::browsing, use::editing, use::organizing, works-with::file
+vigor: devel::editor, game::toys, role::program, scope::application, uitoolkit::ncurses, use::editing, use::entertaining
+vile: devel::editor, interface::text-mode, uitoolkit::ncurses, use::editing, works-with::text
+vile-common: devel::editor, interface::text-mode, role::app-data, special::auto-inst-parts, uitoolkit::ncurses, use::editing, works-with::text
+vile-filters: devel::editor, devel::prettyprint, interface::text-mode, role::app-data, uitoolkit::ncurses, use::editing, works-with::text
+vim: devel::editor, implemented-in::c, interface::text-mode, role::program, scope::application, uitoolkit::ncurses, use::editing, works-with::text, works-with::unicode
+vim-common: devel::editor, interface::text-mode, role::app-data, special::auto-inst-parts, uitoolkit::ncurses, use::editing, works-with::text, works-with::unicode
+vim-doc: devel::editor, interface::text-mode, made-of::data:html, role::documentation, uitoolkit::ncurses, use::editing, works-with::text
+vim-full: devel::editor, devel::lang:perl, devel::lang:python, devel::lang:ruby, devel::lang:tcl, implemented-in::c, interface::text-mode, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, uitoolkit::ncurses, use::editing, works-with::text, works-with::unicode, x11::application
+vim-gnome: devel::editor, implemented-in::c, interface::text-mode, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, uitoolkit::ncurses, use::editing, works-with::text, works-with::unicode, x11::application
+vim-gtk: devel::editor, implemented-in::c, interface::text-mode, interface::x11, role::program, scope::application, uitoolkit::gtk, uitoolkit::ncurses, use::editing, works-with::text, works-with::unicode, x11::application
+vim-gui-common: role::app-data, special::auto-inst-parts, use::editing
+vim-latexsuite: devel::TODO, devel::editor, interface::text-mode, role::plugin, uitoolkit::ncurses, use::editing, use::typesetting, works-with-format::tex, works-with::text
+vim-lesstif: devel::editor, implemented-in::c, interface::text-mode, interface::x11, role::program, scope::application, uitoolkit::motif, uitoolkit::ncurses, use::editing, works-with::text, works-with::unicode, x11::application
+vim-perl: devel::editor, devel::lang:perl, implemented-in::c, interface::text-mode, interface::x11, role::program, scope::application, uitoolkit::gtk, uitoolkit::ncurses, use::editing, works-with::text, works-with::unicode, x11::application
+vim-python: devel::editor, devel::lang:python, implemented-in::c, interface::text-mode, interface::x11, role::program, scope::application, uitoolkit::gtk, uitoolkit::ncurses, use::editing, works-with::text, works-with::unicode, x11::application
+vim-ruby: devel::editor, devel::lang:ruby, implemented-in::c, interface::text-mode, interface::x11, role::program, scope::application, uitoolkit::gtk, uitoolkit::ncurses, use::editing, works-with::text, works-with::unicode
+vim-runtime: devel::editor, role::app-data, role::documentation, special::auto-inst-parts, use::editing
+vim-scripts: devel::editor, role::plugin, uitoolkit::ncurses, use::editing, works-with::text
+vim-tcl: devel::editor, devel::lang:tcl, interface::text-mode, interface::x11, role::program, scope::application, uitoolkit::gtk, uitoolkit::ncurses, use::editing, works-with::text, works-with::unicode
+vim-tiny: devel::editor, role::program, scope::application, uitoolkit::ncurses, use::editing, works-with::text
+vim-vimoutliner: devel::editor, interface::text-mode, role::plugin, uitoolkit::ncurses, use::editing, use::text-formatting, works-with::text
+vimacs: devel::editor, interface::text-mode, role::plugin, uitoolkit::ncurses, use::editing, works-with::text
+vimhelp-fr: culture::french, devel::editor, interface::text-mode, role::documentation, uitoolkit::ncurses, use::editing, works-with::text, works-with::unicode
+vimpart: devel::editor, interface::x11, role::plugin, suite::kde, uitoolkit::qt, use::editing, works-with::text, x11::application
+vino: network::server, protocol::ssl, role::program, suite::gnome, uitoolkit::gtk, use::viewing
+vipec: field::electronics, interface::x11, role::program, scope::utility, uitoolkit::qt, x11::application
+viruskiller: game::arcade, interface::x11, role::program, security::antivirus, uitoolkit::sdl, use::gameplaying, x11::application
+visitors: interface::commandline, role::program, scope::utility, security::log-analyzer, use::scanning, works-with::image, works-with::image:vector, works-with::logfile
+visual-regexp: interface::x11, uitoolkit::tk, use::searching, use::viewing, works-with::text, x11::application
+visual-tcl: devel::ui-builder, implemented-in::tcl, role::program, scope::utility, uitoolkit::tk, use::editing
+visualboyadvance: hardware::emulation, role::program, scope::utility, uitoolkit::gtk, uitoolkit::sdl, use::gameplaying
+visualos: interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::viewing, x11::application
+vlan: interface::commandline, network::configuration, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::v
+vlc: interface::text-mode, interface::x11, protocol::ipv6, protocol::ssl, role::program, scope::application, sound::compression, sound::player, uitoolkit::ncurses, uitoolkit::wxwidgets, use::converting, use::playing, works-with-format::TODO, works-with-format::mp3, works-with-format::oggtheora, works-with-format::oggvorbis, works-with-format::wav, works-with::TODO, works-with::audio, works-with::video
+vlc-alsa: role::dummy, sound::player, special::obsolete, use::configuring, use::playing, works-with::audio, works-with::video
+vlc-esd: role::dummy, sound::player, special::obsolete, use::configuring, use::playing, works-with::audio, works-with::video
+vlc-ggi: interface::x11, role::dummy, sound::player, special::obsolete, use::playing, works-with::audio, works-with::video, x11::library
+vlc-glide: interface::3d, role::dummy, sound::player, special::obsolete, use::playing, works-with::audio, works-with::video, x11::library
+vlc-gnome: interface::x11, role::dummy, sound::player, special::obsolete, suite::gnome, use::playing, works-with::audio, works-with::video
+vlc-gtk: interface::x11, role::dummy, sound::player, special::obsolete, uitoolkit::gtk, use::playing, works-with::audio, works-with::video
+vlc-nox: interface::text-mode, protocol::ipv6, protocol::ssl, role::program, sound::compression, sound::player, uitoolkit::ncurses, use::converting, works-with::audio, works-with::video
+vlc-plugin-alsa: admin::configuring, role::plugin, sound::player, use::configuring, use::playing, works-with::audio, works-with::video
+vlc-plugin-arts: admin::configuring, role::plugin, sound::player, use::configuring, use::playing, works-with::audio, works-with::video
+vlc-plugin-esd: admin::configuring, role::plugin, sound::player, use::configuring, use::playing, works-with::audio, works-with::video
+vlc-plugin-ggi: interface::x11, role::plugin, sound::player, use::playing, use::printing, works-with::audio, works-with::video, x11::library
+vlc-plugin-glide: interface::3d, role::plugin, sound::player, use::playing, works-with::audio, works-with::video, x11::application, x11::library
+vlc-plugin-sdl: interface::x11, role::plugin, sound::player, uitoolkit::sdl, use::playing, works-with::audio, works-with::video, x11::library
+vlc-plugin-svgalib: interface::svga, role::plugin, sound::player, use::playing, works-with::audio, works-with::video
+vlc-qt: interface::x11, role::dummy, sound::player, special::obsolete, use::playing, works-with::audio, works-with::video, x11::library
+vlc-sdl: interface::x11, role::dummy, sound::player, special::obsolete, use::playing, works-with::audio, works-with::video, x11::library
+vlock: interface::commandline, role::program, scope::utility, security::authentication, special::not-yet-tagged, special::not-yet-tagged::v
+vlogger: admin::logging, implemented-in::perl, interface::daemon, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::v, use::organizing, works-with::logfile
+vls: hardware::storage, hardware::storage:dvd, interface::daemon, network::server, network::service, protocol::ipv6, role::program, use::playing, works-with::video
+vm: implemented-in::lisp, mail::user-agent, network::client, role::plugin, role::program, suite::emacs, use::editing, works-with::mail
+vmnet: hardware::emulation, network::configuration, special::not-yet-tagged, special::not-yet-tagged::v
+vnc-common: network::service, role::app-data, special::auto-inst-parts, use::login, use::viewing
+vnc-java: devel::lang:java, role::plugin
+vnc4-common: network::service, role::app-data, special::not-yet-tagged, special::not-yet-tagged::v, use::login, use::viewing
+vnc4server: interface::daemon, network::server, network::service, role::program, special::not-yet-tagged, special::not-yet-tagged::v, use::login, use::viewing
+vncserver: interface::daemon, network::server, network::service, role::program, use::login, use::viewing
+vnstat: admin::monitoring, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::v, use::monitor
+vobcopy: hardware::storage, hardware::storage:dvd, interface::commandline, role::program, scope::utility, use::storing, works-with::video
+voikko-fi: culture::finnish
+volume.app: interface::x11, role::program, scope::utility, sound::mixer, suite::gnustep, use::configuring, x11::applet
+volumecontrol.app: implemented-in::objc, interface::x11, role::plugin, sound::mixer, suite::gnustep, uitoolkit::gnustep, use::configuring, x11::applet
+vorbis-tools: interface::commandline, role::program, scope::utility, use::converting, use::playing, works-with-format::oggvorbis, works-with::audio
+vorbisgain: interface::commandline, role::program, scope::utility, use::converting, works-with-format::oggvorbis, works-with::audio
+vpnc: interface::daemon, network::client, network::vpn, role::program, scope::utility, security::authentication, security::cryptography, special::not-yet-tagged, special::not-yet-tagged::v
+vpopmail-bin: interface::daemon, network::server, role::program, works-with::mail
+vpopmail-doc: interface::daemon, network::server, role::documentation, role::program, works-with::mail
+vqadmin: special::not-yet-tagged, special::not-yet-tagged::v
+vqregister: special::not-yet-tagged, special::not-yet-tagged::v
+vrel: special::not-yet-tagged, special::not-yet-tagged::v
+vrflash: admin::file-distribution, hardware::embedded, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::v, use::synchronizing
+vrfy: mail::smtp, protocol::smtp, use::checking, works-with::mail
+vrms: admin::package-management, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian, use::checking, works-with::software:package
+vrrpd: interface::daemon, network::hiavailability, use::routing
+vrweb: interface::3d, protocol::http, role::program, scope::application, use::browsing, use::editing, works-with-format::vrml, works-with::3dmodel, x11::application
+vserver-debiantools: hardware::emulation, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::v, suite::debian
+vsftpd: admin::file-distribution, filetransfer::ftp, implemented-in::c, interface::daemon, network::server, protocol::ftp, protocol::ssl, role::program, works-with::file
+vsound: interface::commandline, role::program, role::shared-lib, scope::utility, use::converting, use::storing, works-with-format::wav, works-with::audio
+vstream: hardware::video, role::program, scope::utility, use::storing, works-with::audio, works-with::video
+vtgrab: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::viewing
+vtk-doc: devel::doc, devel::lang:c++, devel::ui-builder, made-of::data:html, role::documentation
+vtk-examples: devel::examples, devel::lang:c++, devel::ui-builder, implemented-in::c++, implemented-in::python, implemented-in::tcl, role::documentation, special::not-yet-tagged, special::not-yet-tagged::v
+vtk-tcl: devel::lang:c++, devel::lang:tcl, devel::library, devel::ui-builder, role::shared-lib, uitoolkit::tk, x11::library
+vtkdata: devel::examples, devel::lang:c++, devel::ui-builder, role::app-data, special::not-yet-tagged, special::not-yet-tagged::v
+vtprint: hardware::printer, interface::commandline, network::service, role::program, scope::utility, use::printing, works-with::text
+vtun: implemented-in::c, interface::daemon, network::client, network::server, network::vpn, protocol::tcp, protocol::udp, role::program, special::not-yet-tagged, special::not-yet-tagged::v
+vtwm: interface::x11, role::program, x11::window-manager
+vux: implemented-in::shell, interface::commandline, role::program, scope::application, sound::player, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+vym: uitoolkit::qt, x11::application
+vzquota: admin::virtualization, hardware::storage, role::program, scope::utility
+w-bassman: interface::commandline, role::program, scope::utility, use::viewing, works-with::people
+w3-doc-e21: made-of::data:html, protocol::http, role::documentation, suite::emacs, use::browsing, use::editing, web::browser
+w3-dtd-mathml: field::mathematics, made-of::data:html, role::app-data
+w3-el-e21: implemented-in::lisp, network::client, protocol::http, role::plugin, role::program, suite::emacs, use::browsing, use::editing, web::browser, works-with-format::html, works-with::text
+w3-lisp-e21: implemented-in::lisp, protocol::http, role::source, suite::emacs, use::browsing, use::editing, web::browser, works-with-format::html, works-with::text
+w3-recs: made-of::data:html, role::documentation, web::browser
+w3-recs-2002: role::documentation, security::cryptography
+w3-recs-2003: made-of::data:html, role::documentation
+w3-url-e21: protocol::http, role::devel-lib, suite::emacs, use::browsing, use::editing, web::browser, works-with-format::html, works-with::text
+w3-url-lisp: implemented-in::lisp, protocol::http, role::devel-lib, suite::emacs, use::browsing, use::editing, web::browser, works-with-format::html, works-with::text
+w3c-dtd-xhtml: made-of::data:html, protocol::http, role::app-data, works-with-format::html, works-with::text
+w3c-linkchecker: implemented-in::perl, interface::commandline, interface::web, protocol::http, role::program, use::checking, web::cgi
+w3c-markup-validator: implemented-in::perl, interface::web, protocol::http, role::program, use::checking, web::cgi, works-with-format::html, works-with-format::sgml, works-with::text
+w3cam: hardware::camera, interface::web, role::program, scope::utility, use::downloading, web::cgi, works-with::image, works-with::image:raster
+w3m: interface::text-mode, network::client, protocol::http, protocol::ip, protocol::ipv6, role::program, uitoolkit::ncurses, use::browsing, web::browser, works-with-format::html, works-with::text
+w3m-el: implemented-in::lisp, protocol::http, role::plugin, suite::emacs, use::browsing, use::editing, web::browser, works-with-format::html, works-with::text
+w3m-img: interface::text-mode, protocol::http, protocol::ipv6, role::shared-lib, uitoolkit::gtk, uitoolkit::ncurses, use::browsing, use::viewing, web::browser, works-with-format::html, works-with::image, works-with::image:raster, works-with::text
+w3mir: filetransfer::ftp, filetransfer::http, implemented-in::perl, interface::commandline, protocol::ftp, protocol::http, role::program, scope::utility, use::synchronizing, works-with-format::html, works-with::text
+w3mmee: interface::text-mode, network::client, protocol::http, protocol::ipv6, role::program, uitoolkit::ncurses, use::browsing, web::browser, works-with-format::html, works-with::text
+w3mmee-img: interface::text-mode, protocol::http, protocol::ipv6, role::shared-lib, uitoolkit::gtk, uitoolkit::ncurses, use::browsing, use::viewing, web::browser, works-with-format::html, works-with::image, works-with::image:raster, works-with::text
+w9wm: interface::x11, network::server, role::program, x11::window-manager
+wackamole: admin::cluster, interface::daemon, network::hiavailability, network::server, protocol::ip, role::program, special::not-yet-tagged, special::not-yet-tagged::w
+wacom-kernel-source: hardware::input, role::source, special::not-yet-tagged, special::not-yet-tagged::w, use::driver
+wacom-tools: admin::configuring, hardware::input, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::w, uitoolkit::gtk, uitoolkit::ncurses, use::configuring
+waiho.app: filetransfer::ftp, implemented-in::objc, network::client, protocol::ftp, role::plugin, role::program, suite::gnustep, use::downloading, x11::applet
+waimea: interface::x11, network::server, role::program, x11::window-manager
+wajig: admin::package-management, implemented-in::python, interface::commandline, role::program, scope::application, suite::debian, use::configuring, use::searching, works-with::software:package, works-with::software:source
+wakeonlan: admin::boot, implemented-in::perl, interface::commandline, network::configuration, protocol::ethernet, protocol::udp, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::w, use::transmission
+wallp: interface::x11, role::program, scope::utility, uitoolkit::gtk, works-with::image, works-with::image:raster, x11::application
+wallpaper-tray: suite::gnome, uitoolkit::gtk, x11::application, x11::theme
+wamerican: culture::TODO, made-of::data:dictionary, role::app-data, use::checking
+wamerican-large: culture::TODO, made-of::data:dictionary, role::app-data, use::checking
+wamerican-small: culture::TODO, made-of::data:dictionary, role::app-data, use::checking
+wammu: admin::hardware, hardware::TODO, hardware::embedded, hardware::modem, hardware::usb, implemented-in::python, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, uitoolkit::wxwidgets, use::organizing, use::synchronizing, use::transmission, works-with::pim, x11::application
+waproamd: admin::configuring, interface::daemon, network::configuration, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::w, use::configuring
+watchdog: interface::daemon, role::program, use::monitor
+wav2cdr: interface::commandline, role::program, scope::utility, use::converting, works-with-format::iso9660, works-with-format::wav, works-with::archive, works-with::audio
+wavemon: interface::text-mode, network::configuration, role::program, scope::utility, uitoolkit::ncurses, use::monitor
+wavesurfer: interface::x11, role::program, scope::application, sound::mixer, use::editing, works-with-format::mp3, works-with-format::wav, works-with::audio, x11::application
+wavpack: implemented-in::c, interface::commandline, role::program, sound::compression, works-with::audio
+wavsplit: interface::commandline, role::program, scope::utility, sound::mixer, works-with-format::wav, works-with::audio
+wayv: accessibility::input, implemented-in::c, interface::x11, role::program, scope::utility, uitoolkit::xlib, x11::application
+wbd: interface::x11, network::service, role::program, scope::application, uitoolkit::tk, use::viewing, x11::application
+wbritish: culture::TODO, made-of::data:dictionary, role::app-data, use::checking
+wbritish-huge: culture::TODO, made-of::data:dictionary, role::app-data, use::checking
+wbritish-large: culture::TODO, made-of::data:dictionary, role::app-data, use::checking
+wbritish-small: culture::TODO, made-of::data:dictionary, role::app-data, use::checking
+wbulgarian: culture::bulgarian, made-of::data:dictionary, role::app-data, use::checking
+wcalc: field::mathematics, implemented-in::c, interface::commandline, role::program
+wcanadian: culture::TODO, made-of::data:dictionary, role::app-data, use::checking
+wcanadian-huge: culture::TODO, made-of::data:dictionary, role::app-data, use::checking
+wcanadian-large: culture::TODO, made-of::data:dictionary, role::app-data, use::checking
+wcanadian-small: culture::TODO, made-of::data:dictionary, role::app-data, use::checking
+wcatalan: culture::catalan, made-of::data:dictionary, role::app-data, use::checking
+wcd: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses
+wdanish: culture::danish, made-of::data:dictionary, role::app-data, use::checking
+wdg-html-reference: made-of::data:html, role::data
+wdg-html-validator: implemented-in::perl, interface::web, protocol::http, role::program, scope::utility, use::checking, web::cgi, works-with-format::html, works-with::text
+wdiff: interface::text-mode, role::program, scope::utility, suite::gnu, uitoolkit::ncurses, use::synchronizing, works-with::text
+wdiff-doc: interface::text-mode, made-of::data:html, role::documentation, suite::gnu, uitoolkit::ncurses, use::synchronizing, works-with::text
+wdm: interface::daemon, network::server, role::program, suite::gnustep, x11::display-manager
+wdq2wav: special::not-yet-tagged, special::not-yet-tagged::w
+wdutch: culture::dutch, made-of::data:dictionary, role::app-data, use::checking
+weather: game::rpg, use::gameplaying
+weathermap4rrd: implemented-in::perl, special::not-yet-tagged, special::not-yet-tagged::w
+webalizer: admin::accounting, interface::web, role::program, use::monitor, works-with::db, works-with::logfile
+webauth-tests: admin::login, protocol::http, protocol::kerberos, role::special:todo, security::authentication, suite::apache
+webauth-utils: implemented-in::c, interface::commandline, protocol::http, protocol::kerberos, role::program, scope::utility, security::authentication, special::not-yet-tagged, special::not-yet-tagged::w, suite::apache
+webauth-weblogin: implemented-in::perl, interface::web, protocol::http, protocol::kerberos, role::program, security::authentication, suite::apache
+webcalendar: devel::lang:sql, implemented-in::php, interface::web, protocol::http, special::not-yet-tagged, special::not-yet-tagged::w, use::organizing, use::timekeeping, works-with::db, works-with::pim
+webcam: filetransfer::ftp, hardware::camera, protocol::ftp, protocol::ssh, use::downloading, works-with::image, works-with::image:raster
+webcam-server: hardware::video, implemented-in::c, interface::text-mode, interface::web, role::program, works-with::image, works-with::video
+webcamd: filetransfer::ftp, hardware::camera, interface::daemon, network::server, protocol::ftp, role::program, special::not-yet-tagged, special::not-yet-tagged::w
+webcheck: accessibility::special:not-applicable, admin::monitoring, devel::debugger, game::special:not-applicable, hardware::special:not-applicable, implemented-in::python, interface::commandline, interface::web, junior::special:not-applicable, made-of::data:html, mail::special:not-applicable, network::client, protocol::ftp, protocol::http, role::program, scope::application, sound::special:not-applicable, suite::special:not-applicable, uitoolkit::special:not-applicable, use::browsing, use::checking, use::scanning, web::application, works-with-format::html, x11::special:not-applicable
+webdruid: implemented-in::c, interface::commandline, network::server, role::program, use::monitor, works-with-format::html, works-with::logfile, works-with::text
+webfs: filetransfer::http, interface::daemon, network::server, protocol::http, protocol::ssl, role::program, web::server, works-with-format::html, works-with::text
+webhttrack: filetransfer::http, interface::daemon, network::server, protocol::http, role::program, special::not-yet-tagged, special::not-yet-tagged::w, use::browsing, use::downloading, use::synchronizing, works-with-format::html, works-with::text
+weblint-perl: implemented-in::perl, interface::commandline, role::program, scope::utility, use::checking, works-with-format::html, works-with::text
+webmagick: implemented-in::perl, role::program, scope::utility, use::browsing, use::organizing, works-with-format::html, works-with::image, works-with::image:raster, works-with::text
+webmin: admin::configuring, implemented-in::perl, interface::web, network::server, protocol::http, protocol::ssl, role::program, suite::webmin, use::configuring, web::cgi, web::server
+webmin-adsl: admin::configuring, hardware::modem:dsl, implemented-in::perl, interface::web, network::configuration, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-apache: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::apache, suite::webmin, use::configuring, web::cgi, web::server
+webmin-bandwidth: admin::configuring, admin::monitoring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, use::monitor, web::cgi
+webmin-bind: admin::configuring, implemented-in::perl, interface::web, protocol::dns, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, use::editing, web::cgi
+webmin-burner: admin::configuring, hardware::storage:cd, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, use::storing, web::cgi
+webmin-cfengine: admin::cluster, admin::configuring, admin::file-distribution, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-cluster: admin::cluster, admin::configuring, admin::file-distribution, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-core: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::app-data, suite::webmin, use::configuring, web::cgi
+webmin-cpan: admin::configuring, devel::lang:perl, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-dhcpd: admin::configuring, implemented-in::perl, interface::web, network::configuration, protocol::dhcp, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-exim: admin::configuring, implemented-in::perl, interface::web, mail::smtp, protocol::http, protocol::smtp, protocol::ssl, role::plugin, suite::webmin, use::configuring, use::monitor, web::cgi
+webmin-exports: admin::configuring, admin::filesystem, implemented-in::perl, interface::web, network::service, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-fetchmail: admin::configuring, implemented-in::perl, interface::web, mail::pop, protocol::http, protocol::pop3, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-filemanager: special::not-yet-tagged, special::not-yet-tagged::w
+webmin-firewall: admin::configuring, implemented-in::perl, interface::web, network::firewall, protocol::http, protocol::ssl, role::plugin, security::firewall, suite::webmin, use::configuring, web::cgi
+webmin-freeswan: admin::configuring, implemented-in::perl, interface::web, network::vpn, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-frox: admin::configuring, filetransfer::ftp, implemented-in::perl, interface::web, protocol::ftp, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, use::proxying, web::cgi
+webmin-fsdump: admin::backup, admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-grub: admin::boot, admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-heartbeat: admin::configuring, implemented-in::perl, interface::web, network::hiavailability, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-htaccess: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, security::authentication, suite::webmin, use::configuring, web::cgi
+webmin-inetd: admin::configuring, implemented-in::perl, interface::web, network::configuration, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-jabber: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::jabber, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-ldap-netgroups: admin::configuring, admin::user-management, implemented-in::perl, interface::web, protocol::http, protocol::ldap, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi, works-with::db
+webmin-ldap-user-simple: admin::configuring, admin::user-management, implemented-in::perl, interface::web, protocol::http, protocol::ldap, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi, works-with::db
+webmin-ldap-useradmin: admin::configuring, admin::user-management, implemented-in::perl, interface::web, protocol::http, protocol::ldap, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi, works-with::db
+webmin-lilo: admin::boot, admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-logrotate: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, use::storing, web::cgi, works-with::logfile
+webmin-lpadmin: admin::configuring, hardware::printer, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, use::printing, web::cgi
+webmin-lvm: admin::configuring, admin::filesystem, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-mailboxes: admin::configuring, implemented-in::perl, interface::web, mail::user-agent, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-mon: admin::configuring, admin::monitoring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, use::monitor, web::cgi
+webmin-mysql: admin::configuring, devel::lang:sql, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi, works-with::db
+webmin-nis: admin::configuring, admin::user-management, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi, works-with::db
+webmin-openslp: admin::configuring, implemented-in::perl, interface::web, network::configuration, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-postfix: admin::configuring, implemented-in::perl, interface::web, mail::smtp, protocol::http, protocol::smtp, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-postgresql: admin::configuring, devel::lang:sql, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi, works-with::db
+webmin-ppp: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, use::dialing, web::cgi
+webmin-pptp-client: admin::configuring, implemented-in::perl, interface::web, network::vpn, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-pptp-server: admin::configuring, implemented-in::perl, interface::web, network::vpn, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-procmail: admin::configuring, implemented-in::perl, interface::web, mail::smtp, protocol::http, protocol::smtp, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-proftpd: admin::configuring, filetransfer::ftp, implemented-in::perl, interface::web, protocol::ftp, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-pserver: admin::configuring, devel::rcs, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-qmailadmin: special::not-yet-tagged, special::not-yet-tagged::w
+webmin-quota: admin::configuring, admin::user-management, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-samba: admin::configuring, filetransfer::smb, implemented-in::perl, interface::web, protocol::http, protocol::smb, protocol::ssl, role::plugin, suite::samba, suite::webmin, use::configuring, web::cgi
+webmin-sarg: admin::accounting, admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, use::monitor, web::cgi, works-with-format::html, works-with::text
+webmin-sendmail: admin::configuring, implemented-in::perl, interface::web, mail::smtp, protocol::http, protocol::smtp, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-sentry: special::not-yet-tagged, special::not-yet-tagged::w
+webmin-shorewall: admin::configuring, implemented-in::perl, interface::web, network::configuration, network::firewall, protocol::http, protocol::ssl, role::plugin, security::firewall, suite::webmin, use::configuring, web::cgi
+webmin-slbackup: admin::backup, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::storing, web::cgi
+webmin-smart-status: admin::configuring, hardware::storage, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-snort: admin::configuring, admin::logging, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, security::ids, suite::webmin, use::configuring, use::monitor, web::cgi
+webmin-software: admin::configuring, admin::package-management, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi, works-with::software:package
+webmin-spamassassin: admin::configuring, implemented-in::perl, interface::web, mail::filters, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-squid: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, use::proxying, web::cgi
+webmin-sshd: admin::configuring, implemented-in::perl, interface::web, protocol::TODO, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-status: admin::configuring, admin::monitoring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, use::monitor, web::cgi, works-with::software:running
+webmin-stunnel: admin::configuring, implemented-in::perl, interface::web, network::vpn, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-telnet: special::not-yet-tagged, special::not-yet-tagged::w
+webmin-updown: admin::configuring, admin::file-distribution, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, use::downloading, web::cgi
+webmin-usermin: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-vgetty: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, protocol::voip, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-virtual-server: admin::configuring, hardware::emulation, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-webalizer: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, security::log-analyzer, suite::webmin, use::configuring, web::cgi, works-with::logfile
+webmin-wuftpd: admin::configuring, filetransfer::ftp, implemented-in::perl, interface::web, protocol::ftp, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+webmin-wvdial: admin::configuring, implemented-in::perl, interface::web, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, use::dialing, web::cgi
+webmin-xinetd: admin::configuring, implemented-in::perl, interface::web, network::configuration, protocol::http, protocol::ssl, role::plugin, suite::webmin, use::configuring, web::cgi
+websec: interface::daemon, protocol::http, role::program, scope::utility, use::monitor, works-with-format::html, works-with::mail, works-with::text
+websieve: admin::user-management, filetransfer::http, interface::web, mail::imap, protocol::http, protocol::imap, special::not-yet-tagged, special::not-yet-tagged::w, use::configuring, web::cgi
+websvn: devel::rcs, implemented-in::php, interface::web, protocol::http, role::program, scope::application, use::browsing, works-with-format::xml, works-with-format::xml:rss
+webxml: admin::configuring, devel::web, implemented-in::c++, interface::x11, role::program, scope::utility, uitoolkit::qt, use::editing, works-with-format::xml, x11::application
+weechat: protocol::irc, use::chatting
+weechat-common: protocol::irc
+weechat-curses: implemented-in::c, protocol::irc, uitoolkit::ncurses, use::chatting
+weechat-plugins: implemented-in::c, role::plugin
+weex: filetransfer::ftp, interface::commandline, protocol::ftp, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::w, use::synchronizing, works-with-format::html, works-with::text
+welcome2l: game::toys, implemented-in::c, interface::text-mode, role::program, scope::utility
+wenglish: made-of::data:dictionary, role::dummy, special::obsolete, use::checking
+wengophone: implemented-in::c++, protocol::voip, role::program, uitoolkit::qt, works-with::audio, x11::application
+weplab: interface::commandline, network::scanner, role::program, scope::utility, security::authentication, security::cryptography, use::scanning
+wesnoth: game::strategy, interface::x11, network::client, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+wesnoth-data: game::strategy, interface::x11, role::app-data, uitoolkit::sdl, use::gameplaying, x11::application
+wesnoth-editor: game::strategy, interface::x11, role::program, scope::utility, uitoolkit::sdl, use::editing, x11::application
+wesnoth-ei: game::strategy, interface::x11, role::app-data, uitoolkit::sdl, use::gameplaying, x11::application
+wesnoth-httt: game::strategy, interface::x11, role::app-data, uitoolkit::sdl, use::gameplaying, x11::application
+wesnoth-music: game::strategy, interface::x11, role::app-data, uitoolkit::sdl, use::gameplaying, x11::application
+wesnoth-server: game::strategy, interface::daemon, network::server, network::service, role::program, uitoolkit::sdl, use::gameplaying
+wesnoth-sotbe: game::strategy, interface::x11, role::app-data, uitoolkit::sdl, use::gameplaying, x11::application
+wesnoth-tdh: game::strategy, interface::x11, role::app-data, uitoolkit::sdl, use::gameplaying, x11::application
+wesnoth-trow: game::strategy, interface::x11, role::app-data, uitoolkit::sdl, use::gameplaying, x11::application
+wfaroese: culture::faroese, made-of::data:dictionary, role::app-data, use::checking
+wfinnish: culture::finnish, made-of::data:dictionary, role::app-data, use::checking
+wflogs: interface::commandline, network::firewall, role::program, scope::utility, security::firewall, security::log-analyzer, use::converting, use::monitor, works-with::logfile
+wfrench: culture::french, made-of::data:dictionary, role::app-data, use::checking
+wgaelic: made-of::data:dictionary, role::app-data, use::checking
+wgalician-minimos: made-of::data:dictionary, role::app-data, use::checking
+wget: filetransfer::ftp, filetransfer::http, network::client, protocol::ftp, protocol::http, role::program, suite::gnu, use::downloading, use::synchronizing
+wget-el: filetransfer::ftp, filetransfer::http, implemented-in::lisp, interface::commandline, protocol::ftp, protocol::http, role::plugin, special::not-yet-tagged, special::not-yet-tagged::w, suite::emacs, use::downloading, use::synchronizing
+whatsnewfm: implemented-in::perl, interface::commandline, mail::filters, role::program, scope::utility, works-with::mail, works-with::software:package
+whereami: hardware::laptop, network::configuration, protocol::dhcp
+whichman: implemented-in::c, interface::commandline, role::program, scope::utility, use::searching, works-with-format::man, works-with::text
+whiptail: interface::text-mode, role::program, scope::utility, use::viewing
+whitelister: implemented-in::ocaml
+whitespace: devel::interpreter, game::toys, implemented-in::haskell, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::w
+whizzytex: implemented-in::lisp, role::plugin, suite::emacs, use::editing, works-with-format::tex, works-with::text
+whois: implemented-in::c, interface::commandline, network::client, protocol::ipv6, role::program, suite::gnu, use::searching
+whowatch: admin::monitoring, admin::user-management, special::not-yet-tagged, special::not-yet-tagged::w, uitoolkit::ncurses, use::monitor, works-with::people
+wide-dhcpv6-client: interface::daemon, network::client, network::configuration, protocol::dhcp, protocol::ipv6, role::program, use::configuring
+wide-dhcpv6-relay: interface::daemon, network::configuration, network::server, protocol::dhcp, protocol::ipv6, role::program, use::configuring, use::proxying
+wide-dhcpv6-server: interface::daemon, network::configuration, network::server, protocol::dhcp, protocol::ipv6, role::program, use::configuring
+widelands: game::strategy, interface::x11, role::program, special::not-yet-tagged, special::not-yet-tagged::w, uitoolkit::sdl, use::gameplaying, x11::application
+widelands-data: role::app-data, special::not-yet-tagged, special::not-yet-tagged::w
+wifi-radar: network::configuration, role::program, x11::application
+wiggle: devel::rcs, interface::commandline, role::program, scope::utility, use::synchronizing, works-with::text
+wikipedia2text: interface::commandline, role::program, use::viewing, works-with::text
+wikipediafs: admin::filesystem, implemented-in::python, interface::commandline, network::client, protocol::http, role::plugin, use::organizing
+wildmenus.bundle: interface::x11, role::plugin, suite::gnustep, use::configuring, x11::applet
+wiliki: implemented-in::scheme, interface::web, web::wiki
+wily: devel::editor, interface::x11, role::program, scope::application, special::completely-tagged, use::editing, works-with::mail, works-with::text, x11::application
+wims: special::not-yet-tagged, special::not-yet-tagged::w
+wims-common: special::not-yet-tagged, special::not-yet-tagged::w
+wims-modules-fr: culture::french
+winbind: filetransfer::smb, interface::daemon, network::server, protocol::smb, role::program, security::authentication
+windows-el: implemented-in::lisp, role::plugin, suite::emacs, use::editing, x11::window-manager
+wine: hardware::emulation, interface::x11, role::program, scope::application, x11::application
+wine-doc: hardware::emulation, interface::x11, role::documentation, x11::application
+wine-utils: hardware::emulation, interface::x11, role::program, scope::utility, x11::application
+winesetuptk: hardware::emulation, interface::x11, role::program, scope::utility, uitoolkit::tk, use::configuring, x11::application
+wing: game::arcade, interface::x11, junior::arcade, role::program, use::gameplaying, x11::application
+wing-data: game::arcade, interface::x11, role::app-data, special::auto-inst-parts, use::gameplaying, x11::application
+wings3d: implemented-in::TODO, interface::3d, interface::x11, role::program, uitoolkit::sdl, works-with::3dmodel, x11::application
+wininfo: interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+wink: uitoolkit::gtk
+wip: uitoolkit::ncurses, use::editing
+wipe: interface::commandline, role::program, scope::utility, works-with::file
+wipl-client-exec: admin::accounting, network::client, network::service, role::program, use::monitor
+wipl-client-inetd: admin::accounting, network::client, network::service, role::program, use::monitor
+wipl-client-java: admin::accounting, devel::lang:java, interface::web, network::client, network::service, role::program, use::monitor
+wipl-client-standard: admin::accounting, network::client, network::service, role::program, use::monitor
+wipl-daemon: admin::accounting, interface::daemon, network::server, network::service, role::program, use::monitor
+wireless-tools: admin::hardware, hardware::TODO, implemented-in::c, interface::commandline, network::configuration, role::program, scope::utility, use::configuring
+wireshark: admin::monitoring, implemented-in::c, interface::x11, network::scanner, protocol::ethernet, role::program, scope::utility, uitoolkit::gtk, use::monitor, works-with::network-traffic, x11::application
+wireshark-common: admin::monitoring, network::scanner, role::app-data, scope::utility, use::monitor
+wireshark-dev: admin::monitoring, devel::library, network::scanner, role::devel-lib, use::monitor
+wirish: culture::irish, made-of::data:dictionary, role::app-data, use::checking
+wise: field::biology, implemented-in::c, interface::commandline, role::program, scope::utility, use::special:todo, works-with-format::special:not-yet-tagged, works-with::special:todo
+wise-doc: field::biology, made-of::data:html, made-of::data:pdf, role::documentation
+witalian: culture::italian, made-of::data:dictionary, role::app-data, use::checking
+wl: implemented-in::lisp, mail::imap, mail::pop, mail::user-agent, network::client, protocol::imap, protocol::nntp, protocol::pop3, role::plugin, role::program, suite::emacs, use::browsing, use::editing, works-with::mail
+wl-beta: implemented-in::lisp, mail::imap, mail::pop, mail::user-agent, network::client, protocol::imap, protocol::nntp, protocol::pop3, role::plugin, role::program, suite::emacs, use::browsing, use::editing, works-with::mail
+wlassistant: uitoolkit::qt
+wm-icons: made-of::data:icons, made-of::data:info, role::app-data, special::not-yet-tagged, special::not-yet-tagged::w, x11::theme
+wm2: implemented-in::c++, interface::x11, role::program, x11::window-manager
+wmacpi: hardware::laptop, hardware::power, hardware::power:acpi, interface::x11, role::program, scope::utility, suite::gnustep, x11::applet
+wmail: interface::x11, mail::notification, role::program, scope::utility, suite::gnustep, works-with::mail, x11::applet
+wmaker: interface::x11, network::server, role::program, suite::gnustep, x11::window-manager
+wmaker-data: interface::x11, made-of::data:icons, role::app-data, suite::gnustep, x11::window-manager
+wmaker-usersguide-ps: interface::x11, made-of::data:postscript, role::documentation, suite::gnustep, x11::window-manager
+wmakerconf: admin::configuring, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::configuring, x11::window-manager
+wmakerconf-data: admin::configuring, interface::x11, role::app-data, uitoolkit::gtk, use::configuring, x11::window-manager
+wmaloader: admin::hardware, filetransfer::TODO, implemented-in::c, interface::daemon, network::server, network::service, role::program, scope::utility, special::completely-tagged, special::not-yet-tagged, special::not-yet-tagged::w, use::downloading, use::driver
+wmanager: interface::x11, role::program, scope::utility, uitoolkit::TODO, use::configuring, x11::application, x11::window-manager
+wmanx: made-of::data:dictionary, role::app-data, use::checking
+wmavgload: interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmbattery: admin::power-management, hardware::laptop, hardware::power, hardware::power:acpi, hardware::power:apm, interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmbiff: interface::x11, mail::imap, mail::notification, mail::pop, protocol::imap, protocol::pop3, protocol::ssl, role::program, scope::utility, suite::gnustep, use::monitor, works-with::mail, x11::applet
+wmbinclock: interface::x11, role::program, scope::utility, suite::gnustep, use::timekeeping, x11::applet
+wmbio: game::toys, interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, use::timekeeping, x11::applet
+wmblob: game::toys, interface::x11, role::program, scope::utility, suite::gnustep, uitoolkit::gtk, use::viewing, x11::applet
+wmbubble: interface::x11, role::program, scope::utility, suite::gnustep, uitoolkit::gtk, use::monitor, x11::applet
+wmbutton: interface::x11, role::program, scope::utility, suite::gnustep, x11::applet
+wmcalc: field::mathematics, interface::x11, role::program, scope::utility, suite::gnustep, x11::applet
+wmcalclock: implemented-in::c, interface::x11, role::program, scope::utility, suite::gnustep, uitoolkit::xlib, use::timekeeping, x11::applet
+wmcb: interface::x11, role::program, scope::utility, suite::gnustep, use::viewing, works-with::text, x11::applet
+wmcdplay: hardware::storage, hardware::storage:cd, interface::x11, role::program, scope::utility, sound::player, suite::gnustep, use::playing, x11::applet
+wmcliphist: interface::x11, role::program, scope::utility, suite::gnustep, uitoolkit::gtk, use::viewing, works-with::text, x11::applet
+wmclock: interface::x11, role::program, scope::utility, suite::gnustep, use::timekeeping, x11::applet
+wmclockmon: implemented-in::c, interface::x11, role::program, scope::utility, suite::gnustep, uitoolkit::gtk, uitoolkit::xlib, use::timekeeping, x11::applet
+wmcoincoin: culture::french, game::toys, implemented-in::c, interface::x11, network::client, protocol::http, role::program, suite::gnustep, uitoolkit::gtk, use::browsing, use::chatting, use::entertaining, works-with-format::xml, works-with-format::xml:rss, x11::applet
+wmcpu: interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmcpuload: interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmctrl: interface::commandline, interface::x11, role::program, scope::utility, suite::gnustep, use::configuring, x11::applet
+wmcube: interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmdate: interface::x11, role::program, scope::utility, suite::gnustep, use::timekeeping, x11::applet
+wmdiskmon: hardware::storage, implemented-in::c, interface::x11, role::program, scope::utility, suite::gnustep, uitoolkit::xlib, use::monitor, x11::applet
+wmdonkeymon: interface::x11, network::client, role::program, suite::gnustep, use::downloading, x11::applet
+wmdrawer: interface::x11, role::program, scope::utility, suite::gnustep, uitoolkit::gtk, x11::applet
+wmf: interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with::mail, works-with::text
+wmfire: interface::x11, role::program, scope::utility, suite::gnustep, uitoolkit::gtk, use::monitor, x11::applet
+wmfishtime: interface::x11, mail::notification, role::program, scope::utility, suite::gnustep, uitoolkit::gtk, use::monitor, use::timekeeping, x11::applet
+wmfsm: hardware::storage, interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmget: filetransfer::ftp, filetransfer::http, interface::x11, network::client, protocol::ftp, protocol::http, role::program, suite::gnustep, use::downloading, x11::applet
+wmgrabimage: filetransfer::http, interface::x11, network::client, protocol::http, role::program, suite::gnustep, use::downloading, use::viewing, works-with::image, works-with::image:raster, x11::applet
+wmgtemp: interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmhdplop: hardware::storage, interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet, x11::application
+wmibam: admin::power-management, hardware::laptop, hardware::power, hardware::power:apm, interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmifinfo: interface::x11, network::configuration, role::program, scope::utility, suite::gnustep, use::viewing, x11::applet
+wmifs: interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmii: x11::window-manager
+wmii-doc: role::documentation, x11::window-manager
+wmii2: implemented-in::c, implemented-in::shell, role::program, x11::window-manager
+wmii2-doc: role::documentation, x11::window-manager
+wminet: interface::x11, network::service, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmitime: interface::x11, role::program, scope::utility, suite::gnustep, use::timekeeping, x11::applet
+wmix: interface::x11, role::program, scope::utility, sound::mixer, suite::gnustep, x11::applet
+wmkbd: special::not-yet-tagged, special::not-yet-tagged::w, uitoolkit::gtk
+wml: implemented-in::perl, role::program, scope::utility, works-with-format::html, works-with::text
+wmload: interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmlongrun: admin::hardware, interface::x11, role::program, scope::utility, use::monitor, x11::applet, x11::application
+wmmail: interface::x11, mail::notification, role::program, scope::utility, suite::gnustep, uitoolkit::xlib, use::monitor, works-with::mail, x11::applet
+wmmaiload: interface::x11, mail::notification, role::program, scope::utility, suite::gnustep, uitoolkit::gtk, use::monitor, works-with::mail, x11::applet
+wmmand: field::mathematics, game::toys, interface::x11, role::program, scope::utility, use::viewing, works-with::image, works-with::image:raster, x11::applet
+wmmatrix: game::toys, interface::x11, role::program, scope::utility, suite::gnustep, use::viewing, x11::applet
+wmmemload: interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmmemmon: interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmmisc: interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, works-with::software:running, x11::applet
+wmmixer: implemented-in::c, interface::x11, role::program, scope::utility, sound::mixer, suite::gnustep, uitoolkit::xlib, use::configuring, x11::applet
+wmmon: interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmmoonclock: interface::x11, role::program, scope::utility, suite::gnustep, use::timekeeping, x11::applet
+wmmount: hardware::storage, interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmnd: interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmnd-snmp: interface::x11, network::scanner, role::program, scope::utility, suite::gnustep, use::monitor, works-with::network-traffic, x11::applet
+wmnet: interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmnetload: admin::monitoring, protocol::ethernet, role::program, use::monitor
+wmnetmon: interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmnetselect: interface::x11, role::program, scope::utility, suite::gnustep, web::browser, x11::applet
+wmnut: hardware::power, hardware::power:ups, interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmpinboard: implemented-in::c, interface::x11, role::program, scope::utility, suite::gnustep, uitoolkit::xlib, use::organizing, works-with::pim, x11::applet
+wmpload: interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmppp.app: hardware::modem, interface::x11, role::program, scope::utility, suite::gnustep, use::dialing, x11::applet
+wmpuzzle: game::puzzle, interface::x11, role::program, suite::gnustep, use::gameplaying, works-with::image, works-with::image:raster, x11::applet
+wmrack: hardware::storage, hardware::storage:cd, interface::x11, role::program, scope::utility, sound::mixer, sound::player, suite::gnustep, use::playing, works-with::audio, x11::applet
+wmressel: interface::x11, role::program, scope::utility, suite::gnustep, uitoolkit::gtk, use::configuring, x11::applet
+wmscope: interface::x11, role::program, scope::utility, suite::gnustep, use::viewing, works-with::audio, x11::applet
+wmsensors: interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmsetimon: suite::gnustep
+wmshutdown: admin::power-management, role::program, scope::utility, suite::gnustep, uitoolkit::gtk, x11::applet
+wmsmpmon: interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmspaceweather: field::astronomy, interface::x11, role::program, scope::utility, suite::gnustep, use::downloading, use::monitor, x11::applet
+wmsun: interface::x11, role::program, scope::utility, suite::gnustep, use::timekeeping, x11::applet
+wmsysmon: implemented-in::c, interface::x11, role::program, scope::utility, suite::gnustep, uitoolkit::special:todo, use::monitor, x11::applet
+wmtemp: interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmtictactoe: game::board, interface::x11, role::program, scope::utility, suite::gnustep, use::gameplaying, x11::applet
+wmtime: interface::x11, role::program, scope::utility, suite::gnustep, use::timekeeping, x11::applet
+wmtimer: interface::x11, role::program, scope::utility, suite::gnustep, uitoolkit::gtk, use::timekeeping, x11::applet
+wmtop: interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, works-with::software:running, x11::applet
+wmtune: interface::x11, role::program, scope::utility, suite::gnustep, use::configuring, x11::applet
+wmtv: hardware::video, interface::x11, role::program, scope::utility, suite::gnustep, use::playing, x11::applet
+wmtz: interface::x11, role::program, scope::utility, suite::gnustep, use::timekeeping, x11::applet
+wmufo: uitoolkit::gtk
+wmusic: interface::x11, role::program, scope::utility, sound::player, suite::gnustep, suite::xmms, uitoolkit::gtk, use::playing, x11::applet
+wmwave: interface::x11, network::configuration, role::program, scope::utility, suite::gnustep, use::monitor, x11::applet
+wmweather: interface::x11, role::program, scope::utility, suite::gnustep, use::downloading, use::monitor, x11::applet
+wmweather+: interface::x11, role::program, scope::utility, suite::gnustep, use::downloading, use::monitor, x11::applet, x11::application
+wmwork: interface::x11, role::program, scope::utility, suite::gnustep, use::monitor, use::timekeeping, x11::applet
+wmx10: interface::x11, role::program, scope::utility, suite::gnustep, use::driver, use::transmission, x11::applet
+wmxres: interface::x11, role::program, scope::utility, suite::gnustep, use::configuring, x11::applet
+wngerman: culture::german, made-of::data:dictionary, role::app-data, use::checking
+wnn7egg: culture::japanese, suite::emacs, use::editing
+wnorwegian: culture::norwegian, made-of::data:dictionary, role::app-data, use::checking
+wodim: devel::special:not-applicable, filetransfer::special:not-applicable, game::special:not-applicable, hardware::storage, hardware::storage:cd, hardware::storage:dvd, implemented-in::c, interface::commandline, junior::special:not-applicable, protocol::special:not-applicable, role::program, scope::application, security::special:not-applicable, sound::TODO, use::storing, web::special:not-applicable, works-with-format::iso9660, works-with::audio, works-with::video, x11::special:not-applicable
+wogerman: culture::german, made-of::data:dictionary, role::app-data, use::checking
+wondershaper: admin::configuring, interface::commandline, network::configuration, network::firewall, protocol::ip, role::program, scope::utility, use::configuring
+woody: implemented-in::python, interface::text-mode, role::program, scope::application, use::editing, use::organizing, works-with-format::xml
+wordinspect: interface::x11, network::client, role::program, uitoolkit::gtk, use::checking, works-with::dictionary, x11::application
+wordnet: field::linguistics, implemented-in::c++, interface::x11, role::program, scope::application, uitoolkit::tk, use::checking, works-with::dictionary, x11::application
+wordnet-base: culture::TODO, field::linguistics, interface::x11, made-of::data:dictionary, role::app-data, uitoolkit::tk, use::checking, works-with::dictionary, x11::application
+wordnet-dev: devel::lang:c++, devel::library, field::linguistics, interface::x11, role::devel-lib, uitoolkit::tk, use::checking, works-with::dictionary, x11::application
+wordnet-sense-index: devel::lang:perl, field::linguistics, interface::x11, made-of::data:dictionary, role::app-data, uitoolkit::tk, use::checking, works-with::dictionary, x11::application
+wordplay: game::toys, interface::commandline, role::program, scope::utility, use::gameplaying, works-with::text
+wordpress: interface::web, web::blog
+wordtrans-data: interface::x11, role::app-data, uitoolkit::qt, use::converting, works-with::dictionary, x11::application
+wordtrans-dict: interface::x11, role::metapackage, uitoolkit::qt, use::converting, works-with::dictionary, x11::application
+wordtrans-doc: interface::x11, made-of::data:html, role::documentation, uitoolkit::qt, use::converting, works-with::dictionary, x11::application
+wordtrans-kde: interface::x11, network::client, role::program, suite::kde, uitoolkit::qt, use::converting, works-with::dictionary, x11::application
+wordtrans-qt: interface::x11, network::client, role::program, uitoolkit::qt, works-with::dictionary, x11::application
+wordtrans-web: implemented-in::php, interface::web, network::client, protocol::http, role::program, uitoolkit::qt, use::converting, works-with::dictionary, x11::application
+workbone: hardware::storage, hardware::storage:cd, interface::commandline, interface::text-mode, role::program, sound::player, uitoolkit::ncurses, use::playing, works-with::audio
+worker: culture::french, culture::german, culture::italian, culture::polish, interface::x11, role::program, scope::utility, use::browsing, works-with::file
+worker-doc: culture::german, interface::x11, role::documentation, use::browsing, works-with::file
+worklog: admin::logging, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::timekeeping
+workman: hardware::storage, hardware::storage:cd, interface::x11, role::program, scope::application, sound::player, use::playing, works-with::audio, x11::application
+workrave: hardware::input, interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::monitor, x11::applet
+worlded: devel::lang:lua, game::mud, interface::3d, role::program, scope::utility, uitoolkit::gtk, use::editing, works-with::3dmodel
+wormux: game::arcade, game::strategy, implemented-in::c++, interface::x11, role::program, scope::application, uitoolkit::sdl, use::gameplaying, x11::application
+wp2x: interface::commandline, role::program, scope::utility, use::converting, use::text-formatting, works-with-format::html, works-with-format::man, works-with-format::sgml, works-with-format::tex, works-with::text
+wpagui: admin::configuring, implemented-in::c, implemented-in::c++, interface::x11, network::configuration, network::scanner, protocol::radius, role::program, security::authentication, uitoolkit::qt, use::configuring, use::scanning
+wpasupplicant: admin::configuring, implemented-in::c, network::client, network::configuration, protocol::ssl, role::program, security::cryptography, uitoolkit::ncurses, use::configuring
+wpd2sxw: interface::commandline, role::program, scope::utility, use::converting, works-with::dtp
+wpolish: culture::polish, made-of::data:dictionary, role::app-data, use::checking
+wpp: implemented-in::perl, interface::commandline, role::source, use::converting, works-with-format::html, works-with::text
+wprint: use::printing
+wput: filetransfer::ftp, interface::commandline, network::client, protocol::ftp, role::program
+wrapperfactory.app: admin::configuring, implemented-in::objc, role::plugin, suite::gnustep, use::configuring, x11::applet
+wsola: interface::commandline, role::program, scope::utility, sound::mixer, use::converting, works-with::audio
+wsola-dev: interface::commandline, role::devel-lib, sound::mixer, use::converting, works-with::audio
+wsoundprefs: admin::configuring, interface::x11, role::program, scope::utility, suite::gnustep, use::configuring, use::editing, x11::applet
+wsoundserver: interface::daemon, network::server, role::program, sound::player, suite::gnustep, works-with-format::wav, works-with::audio
+wspanish: culture::spanish, made-of::data:dictionary, role::app-data, use::checking
+wstools: hardware::hamradio, interface::x11, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::w, uitoolkit::wxwidgets, uitoolkit::wxwindows, x11::application
+wswedish: culture::swedish, made-of::data:dictionary, role::app-data, use::checking
+wswiss: made-of::data:dictionary, role::app-data, use::checking
+wterm: interface::x11, role::program, scope::utility, suite::gnustep, x11::terminal
+wterm-ml: interface::x11, role::program, scope::utility, suite::gnustep, x11::terminal
+wu-ftpd: filetransfer::ftp, interface::daemon, network::server, protocol::ftp, role::program, works-with::file
+wukrainian: culture::ukrainian, made-of::data:dictionary, role::app-data, use::checking
+wuzzah: implemented-in::c, interface::commandline, role::program, scope::utility, use::monitor, works-with::people
+wv: role::program, role::shared-lib, scope::utility, use::converting, use::viewing, works-with-format::pdf, works-with-format::postscript, works-with-format::tex, works-with::db, works-with::dtp, works-with::spreadsheet, works-with::text
+wvdial: hardware::detection, hardware::modem, interface::commandline, network::client, role::program, use::configuring, use::dialing
+wwl: field::geography, hardware::hamradio, interface::commandline, role::program, scope::utility
+www-mysql: devel::lang:sql, interface::web, network::server, network::service, role::program, special::not-yet-tagged, special::not-yet-tagged::w, works-with-format::html, works-with::db, works-with::text
+www-pgsql: devel::lang:sql, interface::web, network::server, network::service, role::program, special::not-yet-tagged, special::not-yet-tagged::w, works-with-format::html, works-with::db, works-with::text
+wwwconfig-common: admin::configuring, implemented-in::shell, role::app-data, special::auto-inst-parts, suite::debian, use::configuring, web::scripting
+wwwoffle: filetransfer::ftp, filetransfer::http, interface::commandline, interface::web, network::server, protocol::ftp, protocol::http, role::program, use::browsing, use::dialing, use::downloading, use::proxying, works-with-format::html, works-with::text
+wwwstat: interface::commandline, role::program, scope::utility, security::log-analyzer, use::converting, works-with-format::html, works-with::logfile, works-with::text
+wx-common: devel::lang:c++, role::app-data, role::program, uitoolkit::wxwidgets
+wx2.4-doc: made-of::data:html, role::documentation
+wx2.4-headers: devel::lang:c++, implemented-in::c++, interface::x11, role::devel-lib, uitoolkit::wxwidgets
+wx2.6-doc: made-of::data:html, role::documentation
+wx2.6-headers: devel::lang:c++, devel::ui-builder, implemented-in::c++, role::devel-lib, uitoolkit::wxwidgets, works-with::software:source, x11::library
+wxmaxima: field::mathematics, implemented-in::c++, implemented-in::lisp, interface::x11, role::program, scope::application, uitoolkit::wxwindows, x11::application
+wxvlc: interface::x11, role::program, role::shared-lib, scope::application, sound::player, uitoolkit::wxwidgets, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, works-with::video, x11::application
+wxwin2.4-doc: devel::doc, devel::lang:c++, interface::x11, made-of::data:html, role::documentation, uitoolkit::wxwidgets, x11::application
+wxwin2.4-examples: devel::examples, devel::lang:c++, devel::lang:python, implemented-in::c++, interface::x11, role::app-data, uitoolkit::wxwidgets, x11::application
+wxwin2.4-headers: devel::lang:c++, devel::library, implemented-in::c++, interface::x11, role::devel-lib, uitoolkit::wxwidgets, x11::application
+wxwin2.4-i18n: devel::i18n, devel::lang:c++, implemented-in::c++, interface::x11, role::app-data, uitoolkit::wxwidgets, x11::application
+wy60: hardware::emulation, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::converting
+wyg: devel::code-generator, interface::commandline, role::program, scope::utility, works-with::software:source
+wyrd: implemented-in::ocaml, interface::commandline, role::program, uitoolkit::ncurses, use::organizing
+wysihtml-el: implemented-in::lisp, role::plugin, suite::emacs, suite::mozilla, use::editing, use::viewing, works-with-format::docbook, works-with-format::html, works-with::text
+wzdftpd: filetransfer::ftp, interface::daemon, network::server, protocol::ftp, protocol::ssl, role::program, works-with::file
+wzdftpd-back-mysql: devel::lang:sql, filetransfer::ftp, protocol::ftp, protocol::ssl, role::plugin, works-with::db
+wzdftpd-back-pgsql: devel::lang:sql, works-with::db
+wzdftpd-dev: devel::library, filetransfer::ftp, protocol::ftp, protocol::ssl, role::devel-lib, works-with::file
+wzdftpd-mod-perl: devel::lang:perl, filetransfer::ftp, implemented-in::perl, protocol::ftp, protocol::ssl, role::shared-lib, works-with::file
+wzdftpd-mod-tcl: devel::lang:tcl, filetransfer::ftp, implemented-in::tcl, protocol::ftp, protocol::ssl, role::app-data, works-with::file
+wzip: implemented-in::c, interface::commandline, role::program, scope::utility, use::compressing, works-with::image, works-with::image:raster
+x-dev: devel::library, role::shared-lib, x11::library
+x-face-el: implemented-in::lisp, role::plugin, suite::emacs, use::editing, use::viewing, works-with::image, works-with::image:raster, works-with::mail
+x-pgp-sig-el: suite::emacs, use::editing
+x-symbol: implemented-in::lisp, interface::x11, made-of::data:font, made-of::data:icons, role::plugin, suite::emacs, use::editing, works-with-format::tex, works-with::text, x11::application
+x-ttcidfont-conf: admin::configuring, culture::chinese, interface::commandline, role::program, scope::utility, use::configuring, works-with::font, x11::font
+x-window-system: interface::x11, role::metapackage, x11::window-manager
+x-window-system-core: interface::x11, role::metapackage, special::meta, x11::xserver
+x-window-system-dev: devel::library, role::metapackage, special::meta, x11::library, x11::xserver
+x10: admin::power-management, field::electronics, interface::commandline, role::program, scope::utility, use::configuring
+x10-automate: admin::package-management, field::electronics, interface::x11, role::program, scope::utility, uitoolkit::tk, x11::application
+x11-common: admin::configuring, implemented-in::shell, role::app-data, role::program, scope::utility, special::auto-inst-parts, x11::xserver
+x11proto-bigreqs-dev: devel::library, role::devel-lib, x11::library
+x11proto-composite-dev: devel::library, role::devel-lib, x11::library
+x11proto-core-dev: devel::library, role::devel-lib, x11::library
+x11proto-damage-dev: devel::library, role::devel-lib, x11::library
+x11proto-dmx-dev: devel::library, role::devel-lib, x11::library
+x11proto-evie-dev: devel::library, role::devel-lib, x11::library
+x11proto-fixes-dev: devel::library, role::devel-lib, x11::library
+x11proto-fontcache-dev: devel::library, role::devel-lib, x11::library
+x11proto-fonts-dev: devel::library, role::devel-lib, x11::library
+x11proto-gl-dev: devel::library, role::devel-lib, x11::library
+x11proto-input-dev: devel::library, role::devel-lib, x11::library
+x11proto-kb-dev: devel::library, hardware::input:keyboard, role::devel-lib, x11::library
+x11proto-print-dev: devel::library, hardware::printer, role::devel-lib, x11::library
+x11proto-randr-dev: devel::library, role::devel-lib, x11::library
+x11proto-record-dev: devel::library, role::devel-lib, x11::library
+x11proto-render-dev: devel::library, role::devel-lib, x11::library
+x11proto-resource-dev: devel::library, role::devel-lib, x11::library
+x11proto-scrnsaver-dev: devel::library, role::devel-lib, x11::library
+x11proto-trap-dev: devel::library, role::devel-lib, x11::library
+x11proto-video-dev: devel::library, role::devel-lib, x11::library
+x11proto-xcmisc-dev: devel::library, role::devel-lib, x11::library
+x11proto-xext-dev: devel::library, role::devel-lib, x11::library
+x11proto-xf86bigfont-dev: devel::library, role::devel-lib, x11::library
+x11proto-xf86dga-dev: devel::library, role::devel-lib, x11::library
+x11proto-xf86dri-dev: devel::library, role::devel-lib, x11::library
+x11proto-xf86misc-dev: devel::library, hardware::input, role::devel-lib, x11::library
+x11proto-xf86vidmode-dev: devel::library, hardware::video, role::devel-lib, x11::library
+x11proto-xinerama-dev: devel::library, role::devel-lib, x11::library
+x11vnc: interface::x11, network::server, role::program, use::login, use::viewing, x11::application
+x2vnc: hardware::input, hardware::video, interface::x11, network::server, role::program, use::login, use::viewing, x11::application
+x2x: hardware::input, hardware::video, interface::x11, network::server, role::program, use::viewing, x11::application
+x3270: interface::x11
+x86info: hardware::detection, implemented-in::c, interface::commandline, role::program, scope::utility
+xa+cv: special::not-yet-tagged, special::not-yet-tagged::x
+xa65: devel::machinecode, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::software:source
+xabacus: field::mathematics, game::board, implemented-in::c, role::program, uitoolkit::xlib
+xae: implemented-in::lisp, role::plugin, use::browsing, use::editing, works-with-format::docbook, works-with-format::xml, works-with::text
+xalan: implemented-in::c++, interface::commandline, role::program, scope::utility, works-with-format::xml, works-with-format::xml:xslt
+xaos: field::mathematics, game::toys, interface::svga, interface::text-mode, interface::x11, role::program, uitoolkit::ncurses, use::gameplaying, use::viewing, x11::application
+xapian-doc: implemented-in::c++, role::documentation, use::searching, web::search-engine, works-with::text
+xapian-examples: implemented-in::c++, role::documentation, use::searching, web::search-engine, works-with::text
+xapian-omega: implemented-in::c++, interface::web, role::program, use::searching, web::application, web::cgi, web::search-engine, works-with-format::html, works-with-format::pdf, works-with-format::plaintext, works-with-format::postscript, works-with::text
+xapian-tools: implemented-in::c++, interface::commandline, role::program, use::searching, web::search-engine, works-with::text
+xapm: admin::power-management, hardware::power, hardware::power:apm, interface::x11, role::program, scope::utility, uitoolkit::athena, x11::application
+xapple2: hardware::emulation
+xara-gtk: admin::package-management, implemented-in::ocaml, interface::x11, role::program, scope::application, suite::debian, uitoolkit::gtk, use::searching, works-with::software:package, x11::application
+xara-gtk-byte: admin::package-management, implemented-in::ocaml, interface::x11, role::program, scope::application, suite::debian, uitoolkit::gtk, use::searching, works-with::software:package, x11::application
+xaralx: interface::x11, role::program, scope::application, uitoolkit::gtk, uitoolkit::wxwindows, use::editing, use::viewing, works-with::image:vector, x11::application
+xaralx-examples: role::documentation
+xaralx-svg: role::plugin, uitoolkit::wxwindows, works-with-format::svg
+xarchive: uitoolkit::gtk
+xarchiver: uitoolkit::gtk
+xarchon: game::board, interface::x11, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+xarchon-theme-default: game::board, game::board:chess, interface::x11, role::app-data, special::auto-inst-parts, use::gameplaying, x11::theme
+xarclock: interface::x11, role::program, scope::utility, uitoolkit::athena, use::timekeeping, x11::application
+xasteroids: game::arcade, interface::x11, role::program, use::gameplaying, x11::application
+xastir: field::geography, hardware::hamradio, interface::x11, uitoolkit::motif, use::viewing, x11::application
+xautolock: hardware::input, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::monitor, x11::application, x11::screensaver
+xautomation: interface::commandline, role::program, scope::utility, x11::application
+xaw3dg: devel::library, interface::x11, role::shared-lib, uitoolkit::athena, x11::library
+xaw3dg-dev: devel::library, interface::x11, role::devel-lib, uitoolkit::athena, x11::library
+xawtv: hardware::video, role::program, scope::application, uitoolkit::athena, uitoolkit::ncurses, use::playing, works-with::video, x11::application
+xawtv-plugin-qt: hardware::video, interface::x11, role::plugin, uitoolkit::athena, use::playing, works-with::video, x11::library
+xawtv-plugins: hardware::video, interface::x11, role::plugin, uitoolkit::athena, use::playing, works-with::video, x11::library
+xawtv-tools: hardware::video, interface::text-mode, interface::x11, uitoolkit::athena, uitoolkit::ncurses, use::configuring, use::viewing, works-with::audio, works-with::video, x11::application
+xball: game::toys, interface::x11, role::program, uitoolkit::motif, use::gameplaying, x11::application
+xbanner: interface::daemon, role::program, scope::utility, use::viewing, x11::display-manager, x11::screensaver
+xbase-clients: accessibility::input, accessibility::screen-magnify, game::toys, interface::commandline, interface::text-mode, interface::x11, mail::notification, network::client, network::server, role::program, scope::utility, security::authentication, uitoolkit::athena, use::checking, use::monitor, use::timekeeping, use::viewing, works-with::font, x11::applet, x11::application
+xbat: game::arcade, interface::x11, role::program, use::gameplaying, x11::application
+xbatt: admin::monitoring, admin::power-management, hardware::laptop, hardware::power, hardware::power:apm, interface::x11, role::program, scope::utility, suite::gnustep, uitoolkit::athena, use::monitor, x11::applet
+xbattbar: admin::monitoring, admin::power-management, hardware::laptop, hardware::power, hardware::power:apm, interface::x11, role::program, scope::utility, use::monitor, x11::applet
+xbattle: game::strategy, interface::x11, network::service, role::program, use::gameplaying, x11::application
+xbel: devel::lang:python, role::data, special::not-yet-tagged, special::not-yet-tagged::x, works-with-format::xml
+xbel-utils: devel::lang:python, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::x, use::converting, works-with-format::xml
+xbill: game::arcade, interface::x11, role::program, security::antivirus, uitoolkit::athena, use::gameplaying, x11::application
+xbindkeys: hardware::input, interface::daemon, interface::x11, role::program, scope::utility, use::configuring, x11::application
+xbindkeys-config: hardware::input, interface::x11, role::program, scope::application, uitoolkit::gtk, use::configuring, x11::application
+xbitmaps: made-of::data:icons, role::app-data, x11::theme
+xbl: game::tetris, interface::3d, role::program, use::gameplaying, x11::application
+xblast: game::arcade, interface::x11, junior::arcade, role::program, use::gameplaying, x11::application
+xblast-data: role::app-data, special::not-yet-tagged, special::not-yet-tagged::x
+xblast-sound: game::arcade, interface::x11, role::app-data, use::gameplaying, x11::application
+xblast-tnt: game::arcade, interface::x11, role::program, scope::application, use::gameplaying, x11::application
+xblast-tnt-images: game::arcade, interface::x11, role::app-data, use::gameplaying, x11::application
+xblast-tnt-levels: game::arcade, interface::x11, role::app-data, use::gameplaying, x11::application
+xblast-tnt-mini: game::arcade, interface::x11, role::program, scope::application, use::gameplaying, x11::application
+xblast-tnt-models: game::arcade, interface::x11, role::app-data, use::gameplaying, x11::application
+xblast-tnt-musics: game::arcade, interface::x11, role::app-data, use::gameplaying, x11::application
+xblast-tnt-sounds: game::arcade, interface::x11, role::app-data, use::gameplaying, x11::application
+xbmbrowser: interface::x11, role::program, scope::utility, uitoolkit::athena, use::browsing, use::viewing, works-with::image:raster, x11::application
+xboard: game::board, game::board:chess, interface::x11, role::program, uitoolkit::athena, use::gameplaying, x11::application
+xboing: game::arcade, interface::x11, role::program, use::gameplaying, x11::application
+xbomb: game::puzzle, interface::x11, role::program, uitoolkit::athena, use::gameplaying, x11::application
+xbox-cromwell: admin::hardware, role::app-data, special::not-yet-tagged, special::not-yet-tagged::x, use::driver
+xbox-raincoat: admin::hardware, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::x, use::driver
+xbs: field::chemistry, interface::3d, role::program, scope::application, use::printing, use::viewing, works-with-format::postscript, works-with::text, x11::application
+xbubble: game::tetris, interface::x11, role::program, use::gameplaying, x11::application
+xbubble-data: game::tetris, interface::x11, role::app-data, use::gameplaying, x11::application
+xbuffy: interface::x11, mail::notification, protocol::nntp, protocol::smtp, role::program, scope::utility, uitoolkit::athena, use::monitor, works-with::mail, x11::application
+xbvl: culture::french, devel::interpreter, devel::lang:lisp, implemented-in::lisp, interface::commandline, role::program, scope::utility, uitoolkit::athena
+xcal: interface::x11, role::program, scope::application, uitoolkit::athena, use::organizing, use::timekeeping, works-with::pim, x11::application
+xcalendar-i18n: culture::japanese, culture::korean, interface::x11, role::program, scope::application, uitoolkit::athena, use::organizing, use::timekeeping, works-with::pim, x11::application
+xcall: hardware::hamradio, interface::x11, role::program, scope::application, uitoolkit::gtk, x11::application
+xcardii: admin::hardware, interface::x11, role::program, scope::utility, security::cryptography, uitoolkit::qt, x11::applet
+xcb: interface::x11, role::program, scope::utility, uitoolkit::athena, works-with::text, x11::application
+xcdroast: hardware::storage, hardware::storage:cd, interface::x11, role::program, scope::application, uitoolkit::gtk, use::storing, works-with-format::iso9660, works-with::archive, works-with::audio, x11::application
+xcftools: implemented-in::c, interface::commandline, role::program, scope::utility, use::converting, works-with::image:raster
+xchain: game::board, interface::x11, role::program, uitoolkit::tk, use::gameplaying, x11::application
+xchat: filetransfer::dcc, interface::x11, network::client, protocol::irc, protocol::ssl, role::program, role::shared-lib, uitoolkit::gtk, use::chatting, x11::application
+xchat-common: filetransfer::dcc, protocol::irc, protocol::ssl, role::app-data, role::documentation, special::auto-inst-parts, use::chatting
+xchat-gnome: interface::x11, protocol::irc, role::program, suite::gnome, uitoolkit::gtk, use::chatting, x11::application
+xchat-systray: filetransfer::dcc, interface::x11, protocol::irc, protocol::ssl, role::plugin, uitoolkit::gtk, use::monitor, x11::applet, x11::application
+xchat-text: filetransfer::dcc, interface::text-mode, network::client, protocol::irc, protocol::ssl, role::program, use::chatting
+xchm: interface::x11, role::program, scope::application, uitoolkit::wxwidgets, uitoolkit::wxwindows, use::text-formatting, use::viewing, works-with::text, x11::application
+xcin: accessibility::input, culture::chinese, culture::taiwanese, interface::daemon, network::server, role::program, works-with::font, x11::application
+xcin2.3: accessibility::input, culture::chinese, culture::taiwanese, interface::daemon, network::server, role::program, special::obsolete, works-with::font, x11::application
+xcingb: accessibility::input, culture::chinese, culture::taiwanese, interface::daemon, network::server, role::program, special::obsolete, works-with::font, x11::application
+xcircuit: field::electronics, implemented-in::python, interface::x11, use::editing, works-with-format::postscript, works-with::image:vector, works-with::text, x11::application
+xclass-common: devel::lang:c++, devel::library, made-of::data:icons, role::app-data, special::not-yet-tagged, special::not-yet-tagged::x, x11::library
+xclip: interface::commandline, role::program, scope::utility, works-with::text, x11::application
+xclips: devel::interpreter, devel::lang:c, implemented-in::c, interface::x11, role::program, scope::utility, x11::application
+xcolmix: interface::x11, role::program, scope::utility, use::viewing, x11::application
+xcolors: interface::x11, role::program, scope::utility, uitoolkit::athena, use::viewing, x11::application
+xcolorsel: interface::x11, role::program, scope::utility, uitoolkit::athena, use::viewing, x11::application
+xconq: game::strategy, interface::x11, role::program, uitoolkit::athena, uitoolkit::tk, use::gameplaying, x11::application
+xconq-common: game::strategy, interface::x11, role::app-data, special::auto-inst-parts, uitoolkit::athena, uitoolkit::tk, use::gameplaying, x11::application
+xconq-doc: game::strategy, interface::x11, made-of::data:html, made-of::data:info, made-of::data:postscript, role::documentation, uitoolkit::athena, uitoolkit::tk, use::gameplaying, x11::application
+xconvers: hardware::hamradio, interface::x11, role::program, scope::application, uitoolkit::gtk, x11::application
+xcruise: game::toys, implemented-in::c, interface::3d, interface::x11, uitoolkit::athena, use::browsing, works-with::file, x11::application
+xcursor-themes: hardware::input:mouse, made-of::data:icons, role::app-data, x11::theme
+xcwcp: hardware::hamradio, interface::x11, role::program, scope::application, uitoolkit::qt, use::learning, x11::application
+xdaliclock: interface::x11, role::program, scope::utility, use::timekeeping, x11::application
+xdebconfigurator: admin::configuring, interface::x11, role::program, scope::utility, use::configuring, x11::application
+xdelta: devel::rcs, interface::x11, role::program, scope::utility, use::synchronizing, works-with::file
+xdemineur: game::puzzle, interface::x11, role::program, use::gameplaying, x11::application
+xdesktopwaves: interface::x11, role::program, scope::utility, x11::screensaver
+xdeview: interface::commandline, interface::x11, role::program, scope::utility, uitoolkit::tk, use::converting, use::viewing, works-with::archive, x11::application
+xdg-utils: devel::library, implemented-in::shell, role::devel-lib, role::shared-lib, x11::library
+xdialog: interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+xdigger: game::puzzle, interface::x11, role::program, use::gameplaying, x11::application
+xdiskusage: interface::x11, role::program, scope::utility, uitoolkit::TODO, use::scanning, use::viewing, works-with-format::postscript, works-with::text, x11::application
+xdkcal: interface::x11, role::program, scope::application, use::organizing, use::timekeeping, works-with::pim, x11::application
+xdm: interface::daemon, network::server, role::program, uitoolkit::athena, x11::display-manager
+xdms: role::program, use::converting
+xdmx: x11::xserver
+xdrawchem: field::chemistry, interface::x11, uitoolkit::qt, x11::application
+xdu: interface::x11, role::program, scope::utility, uitoolkit::athena, use::scanning, use::viewing, works-with::file, x11::application
+xdvik-ja: culture::japanese, interface::x11, uitoolkit::athena, use::viewing, works-with-format::tex, works-with::text, x11::application
+xdx: hardware::hamradio, interface::x11, network::client, role::program, uitoolkit::gtk, x11::application
+xearth: game::toys, use::gameplaying
+xed: interface::x11, role::program, scope::utility, uitoolkit::tk, use::editing, works-with::text, x11::application
+xeji: game::toys, interface::x11, role::program, use::entertaining, x11::application
+xemacs21: devel::editor, interface::x11, role::dummy, role::metapackage, special::meta, suite::emacs, uitoolkit::gtk, use::editing, works-with::dtp, works-with::mail, works-with::text, x11::application
+xemacs21-basesupport: devel::editor, implemented-in::lisp, interface::x11, role::app-data, suite::emacs, use::editing, works-with::dtp, works-with::mail, works-with::text, x11::application
+xemacs21-basesupport-el: devel::editor, implemented-in::lisp, interface::x11, role::devel-lib, suite::emacs, use::editing, works-with::dtp, works-with::mail, works-with::text, x11::application
+xemacs21-bin: devel::editor, interface::text-mode, interface::x11, network::client, network::server, role::program, suite::emacs, uitoolkit::ncurses, use::editing, works-with::dtp, works-with::mail, works-with::text, x11::application
+xemacs21-gnome-mule: devel::editor, devel::i18n, interface::text-mode, interface::x11, role::program, scope::application, suite::emacs, suite::gnome, uitoolkit::gtk, uitoolkit::ncurses, use::editing, works-with::dtp, works-with::mail, works-with::text, x11::application
+xemacs21-gnome-mule-canna-wnn: accessibility::input, devel::editor, devel::i18n, interface::x11, role::program, scope::application, suite::emacs, suite::gnome, uitoolkit::gtk, uitoolkit::ncurses, use::editing, works-with::dtp, works-with::mail, works-with::text, x11::application
+xemacs21-gnome-nomule: devel::editor, interface::x11, role::program, scope::application, suite::emacs, suite::gnome, uitoolkit::gtk, uitoolkit::ncurses, use::editing, works-with::dtp, works-with::mail, works-with::text, x11::application
+xemacs21-mule: devel::editor, devel::i18n, interface::text-mode, interface::x11, role::program, scope::application, suite::emacs, uitoolkit::athena, uitoolkit::gtk, uitoolkit::ncurses, use::editing, works-with::dtp, works-with::mail, works-with::text, x11::application
+xemacs21-mule-canna-wnn: accessibility::input, devel::editor, devel::i18n, interface::text-mode, interface::x11, role::program, scope::application, suite::emacs, uitoolkit::athena, uitoolkit::gtk, uitoolkit::ncurses, use::editing, works-with::dtp, works-with::mail, works-with::text, x11::application
+xemacs21-mulesupport: devel::editor, devel::i18n, implemented-in::lisp, interface::x11, role::app-data, suite::emacs, use::editing, works-with::dtp, works-with::mail, works-with::text, x11::application
+xemacs21-mulesupport-el: devel::editor, devel::i18n, devel::lang:lisp, devel::library, implemented-in::lisp, role::devel-lib, suite::emacs, use::editing, works-with::dtp, works-with::mail, works-with::text, x11::application
+xemacs21-nomule: devel::editor, interface::text-mode, interface::x11, role::program, scope::application, suite::emacs, uitoolkit::athena, uitoolkit::gtk, uitoolkit::ncurses, use::editing, works-with::dtp, works-with::mail, works-with::text, x11::application
+xemacs21-support: devel::editor, implemented-in::lisp, role::app-data, suite::emacs, use::editing, works-with::dtp, works-with::mail, works-with::text
+xemacs21-supportel: devel::editor, devel::lang:lisp, devel::library, implemented-in::lisp, role::devel-lib, suite::emacs, use::editing, works-with::dtp, works-with::mail, works-with::text, x11::application
+xemeraldia: game::tetris, interface::x11, role::program, uitoolkit::athena, uitoolkit::gtk, use::gameplaying, x11::application
+xen: special::not-yet-tagged, special::not-yet-tagged::x
+xen-docs: role::documentation, special::not-yet-tagged, special::not-yet-tagged::x
+xen-docs-3.0: admin::virtualization, role::documentation
+xen-domain0-utils: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::x
+xen-ioemu-3.0.3-1: admin::virtualization, role::program
+xen-tools: admin::virtualization, devel::debian, implemented-in::perl, interface::commandline, role::program
+xen-utils: role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::x
+xen-utils-3.0-unstable-1: uitoolkit::ncurses
+xen-utils-3.0.3-1: admin::virtualization, implemented-in::python, uitoolkit::ncurses
+xen-utils-common: admin::virtualization, interface::commandline, role::program
+xengine: admin::benchmarking, interface::x11, role::program, scope::utility, uitoolkit::athena, x11::screensaver
+xenman: admin::virtualization, interface::x11, role::program, scope::utility, uitoolkit::gtk
+xeukleides: field::mathematics, interface::x11, role::program, scope::application, uitoolkit::gtk, x11::application
+xevil: game::arcade, interface::x11, role::program, use::gameplaying, x11::application
+xexec: interface::x11, role::program, scope::utility, uitoolkit::qt, x11::application
+xezmlm: mail::list, works-with::mail
+xfaces: interface::x11, mail::notification, network::server, role::program, uitoolkit::athena, use::monitor, works-with::image, works-with::image:raster, works-with::mail, x11::application
+xfcalendar: interface::x11, uitoolkit::gtk, use::timekeeping
+xfce4: admin::configuring, role::program, scope::utility, suite::xfce, uitoolkit::gtk, use::configuring, x11::application
+xfce4-appfinder: suite::xfce, uitoolkit::gtk
+xfce4-artwork: interface::x11, role::app-data, suite::xfce, uitoolkit::gtk, x11::application
+xfce4-battery-plugin: admin::power-management, hardware::laptop, hardware::power, hardware::power:acpi, hardware::power:apm, interface::x11, role::plugin, suite::xfce, uitoolkit::gtk, use::monitor, x11::applet
+xfce4-clipman-plugin: interface::x11, role::plugin, suite::xfce, uitoolkit::gtk, works-with::text, x11::applet
+xfce4-cpufreq-plugin: suite::xfce, uitoolkit::gtk
+xfce4-cpugraph-plugin: suite::xfce, uitoolkit::gtk
+xfce4-datetime-plugin: interface::x11, role::plugin, suite::xfce, uitoolkit::gtk, use::timekeeping, x11::applet
+xfce4-dev-tools: suite::xfce
+xfce4-diskperf-plugin: admin::benchmarking, interface::x11, role::plugin, suite::xfce, uitoolkit::gtk, use::monitor, x11::applet
+xfce4-fsguard-plugin: suite::xfce, uitoolkit::gtk
+xfce4-genmon-plugin: suite::xfce, uitoolkit::gtk
+xfce4-goodies: interface::x11, role::metapackage, suite::xfce, uitoolkit::gtk, use::monitor, x11::applet
+xfce4-icon-theme: suite::xfce
+xfce4-iconbox: interface::x11, suite::xfce, uitoolkit::gtk, x11::applet
+xfce4-mailwatch-plugin: suite::xfce, uitoolkit::gtk
+xfce4-mcs-manager: interface::x11, role::plugin, suite::xfce, uitoolkit::gtk, use::configuring, x11::applet
+xfce4-mcs-manager-dev: interface::x11, role::devel-lib, suite::xfce, uitoolkit::gtk, use::configuring, x11::applet
+xfce4-mcs-plugins: interface::x11, role::plugin, suite::xfce, uitoolkit::gtk, use::configuring, x11::application
+xfce4-messenger-plugin: suite::xfce, uitoolkit::gtk
+xfce4-minicmd-plugin: interface::commandline, interface::x11, role::plugin, suite::xfce, uitoolkit::gtk, x11::applet
+xfce4-mixer: interface::x11, role::plugin, sound::mixer, suite::xfce, uitoolkit::gtk, works-with::audio, x11::applet
+xfce4-mixer-alsa: suite::xfce, uitoolkit::gtk
+xfce4-mixer-oss: suite::xfce, uitoolkit::gtk
+xfce4-mount-plugin: suite::xfce, uitoolkit::gtk
+xfce4-netload-plugin: interface::x11, network::scanner, role::plugin, suite::xfce, uitoolkit::gtk, use::monitor, x11::applet
+xfce4-notes-plugin: interface::x11, role::plugin, suite::xfce, uitoolkit::gtk, use::organizing, works-with::pim, x11::applet
+xfce4-panel: interface::x11, role::program, scope::application, suite::xfce, uitoolkit::gtk, x11::applet
+xfce4-panel-dev: interface::x11, role::devel-lib, suite::xfce, uitoolkit::gtk, x11::applet
+xfce4-quicklauncher-plugin: suite::xfce, uitoolkit::gtk
+xfce4-radio-plugin: suite::xfce, uitoolkit::gtk
+xfce4-screenshooter-plugin: suite::xfce, uitoolkit::gtk
+xfce4-sensors-plugin: suite::xfce, uitoolkit::gtk
+xfce4-session: interface::daemon, network::server, role::program, suite::xfce, uitoolkit::gtk, x11::window-manager
+xfce4-showdesktop-plugin: interface::x11, role::plugin, suite::xfce, uitoolkit::gtk, use::viewing, x11::applet
+xfce4-smartbookmark-plugin: suite::xfce, uitoolkit::gtk
+xfce4-systemload-plugin: interface::x11, role::plugin, suite::xfce, uitoolkit::gtk, use::monitor, x11::applet
+xfce4-systray: interface::x11, role::plugin, suite::xfce, uitoolkit::gtk, use::monitor, x11::application
+xfce4-taskmanager: admin::benchmarking, admin::monitoring, implemented-in::c, interface::x11, role::program, suite::xfce, uitoolkit::gtk, use::monitor, works-with::software:running, x11::application
+xfce4-terminal: role::program, suite::xfce, uitoolkit::gtk, x11::terminal
+xfce4-themes: interface::x11, role::app-data, suite::xfce, x11::theme
+xfce4-toys: game::toys, interface::x11, role::plugin, suite::xfce, uitoolkit::gtk, x11::applet
+xfce4-trigger-launcher: interface::x11, role::plugin, suite::xfce, uitoolkit::gtk, works-with::software:running, x11::applet
+xfce4-utils: interface::x11, role::program, scope::utility, suite::xfce, uitoolkit::gtk, x11::applet
+xfce4-verve-plugin: interface::commandline, interface::x11, role::plugin, suite::xfce, uitoolkit::gtk, x11::applet
+xfce4-wavelan-plugin: interface::x11, network::configuration, role::plugin, suite::xfce, uitoolkit::gtk, use::monitor, x11::applet
+xfce4-weather-plugin: interface::x11, role::plugin, suite::xfce, uitoolkit::gtk, use::downloading, x11::applet
+xfce4-xfapplet-plugin: suite::xfce, uitoolkit::gtk
+xfce4-xmms-plugin: suite::xfce, uitoolkit::gtk
+xfdesktop4: interface::x11, role::program, scope::utility, uitoolkit::gtk, x11::application
+xfe: implemented-in::c++, interface::x11, role::program, scope::application, use::browsing, use::organizing, works-with::file, x11::application
+xffm4: interface::x11, role::program, scope::application, suite::xfce, uitoolkit::gtk, use::browsing, use::organizing, works-with::file, x11::application
+xffm4-icons: interface::x11, made-of::data:icons, role::app-data, special::auto-inst-parts, uitoolkit::gtk, use::browsing, use::organizing, works-with::file, x11::application
+xfig: implemented-in::c, interface::x11, role::program, scope::application, uitoolkit::athena, use::editing, works-with::image, works-with::image:vector, x11::application
+xfig-doc: made-of::data:html, made-of::data:pdf, role::documentation
+xfig-libs: made-of::data:icons, role::app-data, works-with::image, works-with::image:vector
+xfingerd: interface::daemon, network::server, protocol::finger, role::program
+xfireworks: game::toys, interface::x11, x11::screensaver
+xfishtank: game::toys, interface::x11, role::program, scope::utility, use::entertaining, x11::screensaver
+xflip: game::special:todo, game::toys, implemented-in::c, interface::commandline, role::program, uitoolkit::xlib, use::gameplaying, x11::application
+xfm: implemented-in::c, interface::x11, role::program, scope::application, uitoolkit::athena, use::browsing, use::organizing, works-with::file, x11::application
+xfmail: interface::x11, mail::user-agent, network::client, role::program, works-with::mail, x11::application
+xfmedia: role::program, sound::player, suite::xfce, uitoolkit::gtk, use::entertaining, use::playing, works-with::audio, works-with::video, x11::application
+xfmedia-dev: role::devel-lib
+xfont-nexus: made-of::data:font, role::app-data, works-with::font, x11::font
+xfonts-100dpi: made-of::data:font, role::app-data, x11::font
+xfonts-100dpi-transcoded: made-of::data:font, role::app-data, x11::font
+xfonts-75dpi: made-of::data:font, role::app-data, x11::font
+xfonts-75dpi-transcoded: made-of::data:font, role::app-data, x11::font
+xfonts-a12k12: culture::japanese, made-of::data:font, role::app-data, x11::font
+xfonts-abi: made-of::data:font, role::dummy, special::obsolete, x11::font
+xfonts-artwiz: made-of::data:font, role::app-data, x11::font
+xfonts-ay: culture::danish, culture::norwegian, culture::swedish, made-of::data:font, role::app-data, x11::font
+xfonts-ayu: culture::japanese, made-of::data:font, role::app-data, x11::font
+xfonts-baekmuk: culture::korean, made-of::data:font, role::app-data, x11::font
+xfonts-base: made-of::data:font, role::app-data, x11::font
+xfonts-base-transcoded: made-of::data:font, role::app-data, x11::font
+xfonts-bitmap-mule: devel::i18n, made-of::data:font, role::app-data, x11::font
+xfonts-biznet-100dpi: made-of::data:font, role::app-data, x11::font
+xfonts-biznet-75dpi: made-of::data:font, role::app-data, x11::font
+xfonts-biznet-base: made-of::data:font, role::app-data, x11::font
+xfonts-biznet-iso-8859-2-100dpi: culture::polish, made-of::data:font, role::app-data, x11::font
+xfonts-biznet-iso-8859-2-75dpi: culture::polish, made-of::data:font, role::app-data, x11::font
+xfonts-biznet-iso-8859-2-base: culture::polish, made-of::data:font, role::app-data, x11::font
+xfonts-bolkhov-75dpi: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-bolkhov-cp1251-75dpi: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-bolkhov-cp1251-misc: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-bolkhov-isocyr-75dpi: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-bolkhov-isocyr-misc: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-bolkhov-koi8r-75dpi: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-bolkhov-koi8r-misc: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-bolkhov-koi8u-75dpi: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-bolkhov-koi8u-misc: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-bolkhov-misc: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-cmex-big5p: culture::taiwanese, made-of::data:font, role::app-data, x11::font
+xfonts-cronyx-100dpi: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-cronyx-75dpi: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-cronyx-cp1251-100dpi: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-cronyx-cp1251-75dpi: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-cronyx-cp1251-misc: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-cronyx-isocyr-100dpi: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-cronyx-isocyr-75dpi: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-cronyx-isocyr-misc: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-cronyx-koi8r-100dpi: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-cronyx-koi8r-75dpi: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-cronyx-koi8r-misc: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-cronyx-koi8u-100dpi: culture::ukrainian, made-of::data:font, role::app-data, x11::font
+xfonts-cronyx-koi8u-75dpi: culture::ukrainian, made-of::data:font, role::app-data, x11::font
+xfonts-cronyx-koi8u-misc: culture::ukrainian, made-of::data:font, role::app-data, x11::font
+xfonts-cronyx-misc: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-cyrillic: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-dosemu: made-of::data:font, role::app-data, works-with::font, x11::font
+xfonts-efont-unicode: culture::russian, made-of::data:font, role::app-data, works-with::text, works-with::unicode, x11::font
+xfonts-efont-unicode-ib: culture::russian, made-of::data:font, role::app-data, works-with::text, works-with::unicode, x11::font
+xfonts-encodings: made-of::data:font, role::app-data, x11::font
+xfonts-intl-arabic: culture::arabic, made-of::data:font, role::app-data, x11::font
+xfonts-intl-asian: culture::hindi, made-of::data:font, role::app-data, x11::font
+xfonts-intl-chinese: culture::chinese, culture::taiwanese, made-of::data:font, role::app-data, x11::font
+xfonts-intl-chinese-big: culture::chinese, made-of::data:font, role::app-data, x11::font
+xfonts-intl-european: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-intl-japanese: culture::japanese, made-of::data:font, role::app-data, x11::font
+xfonts-intl-japanese-big: culture::japanese, made-of::data:font, role::app-data, x11::font
+xfonts-intl-phonetic: field::linguistics, made-of::data:font, role::app-data, x11::font
+xfonts-jmk: made-of::data:font, role::app-data, x11::font
+xfonts-kaname: culture::japanese, made-of::data:font, role::app-data, x11::font
+xfonts-kapl: made-of::data:font, role::app-data, suite::emacs, x11::font
+xfonts-kappa20: culture::japanese, made-of::data:font, role::app-data, x11::font
+xfonts-knickers: made-of::data:font, role::app-data, x11::font
+xfonts-konsole: made-of::data:font, role::app-data, suite::kde, x11::font
+xfonts-marumoji: culture::japanese, made-of::data:font, role::app-data, x11::font
+xfonts-mona: made-of::data:font, role::app-data, x11::font
+xfonts-mplus: culture::japanese, made-of::data:font, role::app-data, x11::font
+xfonts-naga10: made-of::data:font, role::app-data, works-with::font, x11::font
+xfonts-nexus: made-of::data:font, role::app-data, x11::font
+xfonts-scalable: made-of::data:font, role::app-data, x11::font
+xfonts-shinonome: culture::japanese, made-of::data:font, role::app-data, x11::font
+xfonts-terminus: culture::russian, made-of::data:font, role::app-data, x11::font
+xfonts-terminus-dos: made-of::data:font, role::app-data, x11::font
+xfonts-terminus-oblique: made-of::data:font, role::app-data, suite::emacs, x11::font
+xfonts-thai: culture::TODO, made-of::data:font, role::app-data, x11::font
+xfonts-thai-etl: culture::TODO, made-of::data:font, role::app-data, x11::font
+xfonts-thai-manop: culture::TODO, made-of::data:font, role::app-data, x11::font
+xfonts-thai-nectec: culture::TODO, made-of::data:font, role::app-data, x11::font
+xfonts-thai-ttf: culture::TODO, made-of::data:font, role::app-data, role::content:font, role::data, x11::font
+xfonts-thai-vor: culture::TODO, made-of::data:font, role::app-data, x11::font
+xfonts-tipa: field::linguistics, made-of::data:font, role::app-data, x11::font
+xfonts-utils: interface::commandline, role::program, use::converting, use::organizing, works-with::font
+xfonts-wqy: x11::font
+xfonts-x3270-misc: x11::font
+xfprint4: hardware::printer, interface::x11, role::program, scope::utility, suite::xfce, uitoolkit::gtk, use::printing, x11::application
+xfractint: game::toys, uitoolkit::ncurses, use::gameplaying
+xfree86-common: role::app-data, x11::xserver
+xfree86-driver-synaptics: hardware::input, hardware::input:mouse, implemented-in::c, role::plugin, use::driver
+xfreecd: hardware::storage, hardware::storage:cd, interface::x11, sound::player, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+xfrisk: game::board, interface::x11, role::program, uitoolkit::athena, use::gameplaying, x11::application
+xfs: interface::daemon, network::server, role::program, works-with::font
+xfsdump: admin::backup, admin::filesystem, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::storing
+xfslibs-dev: devel::library, role::devel-lib, works-with::font
+xfsprogs: admin::filesystem, interface::commandline, role::program, scope::utility, uitoolkit::ncurses
+xfstt: implemented-in::c, interface::daemon, network::server, role::program, works-with::font
+xfwm4: interface::daemon, role::program, suite::xfce, uitoolkit::gtk, x11::window-manager
+xfwm4-themes: interface::daemon, role::app-data, suite::xfce, x11::theme
+xgalaga: game::arcade, interface::x11, role::program, use::gameplaying, x11::application
+xgammon: game::board, interface::x11, role::program, uitoolkit::athena, use::gameplaying, x11::application
+xgdipc: interface::x11, network::client, protocol::dns, role::program, uitoolkit::gtk, use::configuring, x11::application
+xgdvi: interface::x11, role::program, scope::utility, uitoolkit::gtk, use::viewing, works-with-format::tex, works-with::text, x11::application
+xgmod: interface::x11, sound::player, uitoolkit::qt, use::playing, works-with::audio, x11::application
+xgobi: special::not-yet-tagged, special::not-yet-tagged::x, special::obsolete
+xgraph: interface::x11, role::program, scope::application, scope::utility, use::viewing, works-with::image, works-with::image:vector, x11::application
+xgsmlib: hardware::embedded, interface::x11, role::program, scope::application, suite::gnome, uitoolkit::gtk, use::synchronizing, works-with::pim, x11::application
+xhangglider: game::toys, interface::x11, role::program, scope::utility, x11::screensaver
+xhtml2ps: interface::x11, network::client, role::program, scope::utility, uitoolkit::tk, use::converting, works-with-format::html
+ximian-setup-tools: admin::configuring, role::dummy, special::obsolete, suite::gnome, use::configuring
+xine-ui: interface::text-mode, interface::x11, network::client, role::program, scope::application, sound::player, uitoolkit::gtk, uitoolkit::ncurses, use::playing, works-with::audio, works-with::video, x11::application
+xinetd: interface::daemon, network::server, network::service, role::program
+xinput: admin::configuring, hardware::input, interface::x11, role::program, scope::utility, use::configuring, x11::application
+xinv3d: game::arcade, interface::3d, role::program, use::gameplaying, x11::application
+xipmsg: interface::x11, network::client, protocol::ip, role::program, uitoolkit::athena, use::chatting, x11::applet
+xiterm: devel::i18n, interface::x11, role::program, scope::utility, uitoolkit::athena, uitoolkit::gtk, x11::terminal
+xiterm+thai: culture::thai, interface::x11, role::program, scope::utility, x11::terminal
+xjdic: culture::japanese, interface::commandline, interface::x11, role::program, scope::utility, use::searching, works-with::dictionary
+xjed: devel::editor, interface::x11, role::program, scope::application, use::editing, works-with::text, x11::application
+xjewel: game::tetris, interface::x11, role::program, use::gameplaying, x11::application
+xjig: game::puzzle, interface::x11, role::program, use::gameplaying, works-with::image, works-with::image:raster, x11::application
+xjokes: game::toys, interface::x11, role::program, use::entertaining, x11::application
+xjove: implemented-in::c, interface::x11, role::program, scope::application, uitoolkit::TODO, use::editing, works-with::text, x11::application
+xjump: game::arcade, interface::x11, role::program, uitoolkit::athena, use::gameplaying, x11::application
+xkb-data: accessibility::input, hardware::input:keyboard, role::app-data, special::auto-inst-parts, use::configuring
+xkbsel: hardware::input:keyboard, interface::x11, role::program, scope::utility, uitoolkit::athena, use::configuring, x11::application
+xkbset: accessibility::input, hardware::input:keyboard
+xkeycaps: hardware::input:keyboard, implemented-in::c, interface::x11, role::program, scope::utility, uitoolkit::athena, use::configuring, x11::application
+xkeysw: accessibility::input, interface::x11, role::program, scope::utility, x11::application
+xkeysw-config: accessibility::input, implemented-in::python, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::configuring, x11::application
+xlaby: game::toys, hardware::input:mouse, interface::x11, role::program, use::gameplaying, x11::application
+xlander: game::simulation, game::toys, interface::3d, use::gameplaying, x11::application
+xlassie: interface::x11, mail::imap, mail::notification, mail::pop, protocol::imap, protocol::pop3, role::program, scope::utility, suite::gnustep, works-with::mail, x11::applet
+xlbiff: interface::x11, mail::notification, role::program, scope::utility, uitoolkit::athena, works-with::mail, x11::application
+xlc: interface::x11, network::client, network::configuration, role::program, uitoolkit::gtk, x11::application
+xless: interface::x11, uitoolkit::athena, use::viewing, works-with::file, x11::application
+xletters: game::typing, interface::x11, role::program, uitoolkit::athena, use::gameplaying, use::learning, x11::application
+xlhtml: interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with::spreadsheet, works-with::text
+xli: interface::x11, role::program, scope::utility, use::viewing, works-with::image, works-with::image:raster, x11::application
+xlibmesa-dev: devel::library, role::dummy, special::obsolete, x11::library
+xlibmesa-dri: devel::library, interface::3d, role::shared-lib, x11::library
+xlibmesa-dri-dbg: devel::debugger, devel::library, interface::3d, role::shared-lib, x11::library
+xlibmesa-gl: devel::library, interface::3d, role::shared-lib, x11::library
+xlibmesa-gl-dbg: devel::debugger, devel::library, interface::3d, role::shared-lib, x11::library
+xlibmesa-gl-dev: devel::library, implemented-in::c, interface::3d, role::devel-lib, uitoolkit::xlib, x11::xserver
+xlibmesa-glu: interface::3d, role::dummy, special::obsolete, x11::library
+xlibmesa-glu-dbg: devel::debugger, devel::library, interface::3d, role::shared-lib, x11::library
+xlibmesa-glu-dev: devel::library, interface::3d, role::devel-lib, x11::xserver
+xlibmesa3: devel::library, interface::x11, role::dummy, x11::library
+xlibmesa3-dbg: devel::debugger, devel::library, interface::x11, role::dummy, special::obsolete, x11::library
+xlibosmesa-dev: devel::library, interface::x11, role::devel-lib, x11::library
+xlibosmesa4: devel::library, interface::x11, role::shared-lib, x11::library
+xlibosmesa4-dbg: devel::debugger, devel::library, role::shared-lib, x11::library
+xlibs: devel::library, interface::x11, role::dummy, special::obsolete, x11::library
+xlibs-data: devel::library, interface::x11, role::app-data, x11::library
+xlibs-dbg: devel::debugger, devel::library, interface::x11, role::dummy, special::obsolete, x11::library
+xlibs-dev: devel::library, interface::x11, role::dummy, special::obsolete, x11::library
+xlibs-pic: devel::library, interface::x11, role::dummy, special::obsolete, x11::library
+xlibs-static-dev: devel::library, implemented-in::TODO, interface::x11, role::devel-lib, uitoolkit::xlib, x11::library
+xlibs-static-pic: devel::library, interface::x11, role::devel-lib, x11::library
+xlife: game::toys, interface::text-mode, role::program, uitoolkit::ncurses, use::gameplaying
+xloadimage: interface::commandline, interface::x11, role::program, scope::utility, use::viewing, works-with::image, works-with::image:raster, x11::application
+xlockmore: interface::x11, role::program, scope::application, security::authentication, x11::screensaver
+xlockmore-gl: interface::x11, role::program, scope::application, security::authentication, x11::screensaver
+xlog: hardware::hamradio, interface::x11, uitoolkit::gtk, x11::application
+xlogmaster: interface::x11, role::program, scope::utility, suite::gnu, uitoolkit::gtk, use::monitor, works-with::logfile, x11::application
+xmabacus: game::board, interface::x11, role::program, uitoolkit::motif, use::gameplaying, x11::application
+xmacro: hardware::input, interface::x11, role::program, scope::application, use::monitor, use::storing, x11::application
+xmaddressbook: interface::x11, role::program, scope::application, uitoolkit::motif, use::organizing, works-with::pim, x11::application
+xmahjongg: game::puzzle, interface::x11, role::program, use::gameplaying, x11::application
+xmail: interface::daemon, mail::pop, mail::smtp, mail::transport-agent, network::server, protocol::finger, protocol::pop3, protocol::smtp, role::program, special::not-yet-tagged::x
+xmail-doc: interface::daemon, made-of::data:html, mail::pop, mail::smtp, mail::transport-agent, protocol::finger, protocol::pop3, protocol::smtp, role::documentation
+xmailbox: interface::x11, mail::notification, role::program, scope::utility, uitoolkit::athena, works-with::mail, x11::application
+xmake: devel::buildtools, interface::commandline, role::program, scope::utility
+xmakemol: field::chemistry, hardware::input, hardware::input:mouse, interface::x11, role::program, scope::application, uitoolkit::motif, use::editing, use::viewing, x11::application
+xmakemol-gl: field::chemistry, hardware::input, hardware::input:mouse, interface::3d, role::program, scope::application, uitoolkit::motif, use::editing, use::viewing, x11::application
+xmame-common: hardware::emulation, role::app-data, special::not-yet-tagged, special::not-yet-tagged::x
+xmame-gl: hardware::emulation, role::dummy
+xmame-sdl: special::not-yet-tagged, special::not-yet-tagged::x, uitoolkit::sdl
+xmame-svga: hardware::emulation
+xmame-tools: special::not-yet-tagged, special::not-yet-tagged::x
+xmame-x: hardware::emulation
+xmanpages-ja: culture::japanese, made-of::data:man, role::documentation
+xmaxima: field::mathematics, interface::x11, role::program, scope::application, uitoolkit::tk, x11::application
+xmbdfed: interface::x11, role::program, scope::application, special::obsolete, uitoolkit::motif, use::converting, use::editing, works-with::font, x11::application
+xmbmon: admin::monitoring, interface::commandline, interface::x11, network::client, role::program, use::monitor, x11::application
+xmcd: hardware::storage, hardware::storage:cd, interface::text-mode, interface::x11, role::program, scope::application, sound::player, uitoolkit::motif, uitoolkit::ncurses, use::playing, works-with::audio, x11::application
+xmcpustate: admin::monitoring, interface::x11, uitoolkit::motif, use::monitor, x11::application
+xmedcon: field::biology, implemented-in::c, interface::commandline, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::converting, works-with::image, works-with::image:raster, x11::application
+xmem: interface::x11, uitoolkit::athena, use::monitor, x11::application
+xmess-common: special::not-yet-tagged, special::not-yet-tagged::x
+xmess-x: hardware::emulation
+xmeter: interface::x11, role::program, scope::application, uitoolkit::athena, use::viewing, works-with::image, works-with::image:vector, x11::application
+xmh: interface::x11, mail::user-agent, network::client, role::program, uitoolkit::athena, works-with::mail, x11::application
+xmhtml1: devel::library, interface::x11, role::shared-lib, uitoolkit::motif, use::viewing, works-with-format::html, works-with::text, x11::application
+xmhtml1-dev: devel::library, interface::x11, role::devel-lib, uitoolkit::motif, use::viewing, works-with-format::html, works-with::text
+xmille: game::card, implemented-in::c, interface::x11, role::program, use::gameplaying, x11::application
+xmix: implemented-in::c, interface::x11, role::program, scope::application, sound::mixer, special::completely-tagged, uitoolkit::athena, use::configuring, works-with::audio, x11::application
+xml-core: implemented-in::perl, interface::commandline, role::app-data, use::configuring, works-with-format::xml
+xml-resume-library: interface::commandline, role::program, scope::utility, use::editing, works-with-format::html, works-with-format::pdf, works-with-format::plaintext, works-with-format::xml, works-with::pim, works-with::text
+xml-rpc-api2cpp: devel::lang:c++, devel::rpc, interface::commandline, role::program, scope::utility
+xml-rpc-api2txt: devel::rpc, interface::commandline, role::program, scope::utility, use::converting
+xml-to-sexp: devel::lang:lisp, interface::commandline, role::program, scope::utility, use::converting, works-with-format::xml
+xml2: interface::commandline, use::converting, works-with-format::html, works-with-format::xml, works-with::text
+xml2rfc: implemented-in::tcl, interface::shell, interface::x11, role::program, scope::utility, uitoolkit::tk, use::text-formatting, works-with-format::html, works-with-format::xml, works-with::text, x11::application
+xmldiff: devel::lang:python, implemented-in::python, interface::commandline, role::metapackage, use::synchronizing, works-with-format::xml
+xmldiff-test: devel::lang:python, devel::testing-qa, role::devel-lib, use::synchronizing, works-with-format::xml
+xmldiff-xmlrev: implemented-in::python, interface::commandline, role::program, scope::utility, special::not-yet-tagged::x, use::converting, use::synchronizing, works-with-format::html, works-with-format::xml, works-with::text
+xmlindent: interface::commandline, works-with-format::xml
+xmlsec1: implemented-in::c, interface::commandline, role::program, scope::utility, security::cryptography, use::converting, works-with-format::xml
+xmlstarlet: interface::commandline, protocol::ftp, protocol::http, role::program, scope::utility, use::checking, use::converting, use::searching, works-with-format::xml
+xmltex: role::plugin, use::editing, works-with-format::tex, works-with-format::xml, works-with::text
+xmlto: interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with-format::man, works-with-format::pdf, works-with-format::postscript, works-with-format::tex, works-with-format::xml, works-with::text
+xmltoman: implemented-in::perl, interface::commandline, use::converting, works-with-format::html, works-with-format::man, works-with-format::xml, works-with::text
+xmltv: implemented-in::perl, interface::commandline, role::metapackage, use::downloading, use::organizing, works-with-format::xml
+xmltv-gui: implemented-in::perl, interface::x11, role::program, uitoolkit::tk, use::organizing, works-with-format::xml, x11::application
+xmltv-util: filetransfer::http, implemented-in::perl, interface::commandline, protocol::http, role::program, scope::utility, use::downloading, works-with-format::xml
+xmms: interface::x11, role::program, role::shared-lib, scope::application, sound::player, suite::xmms, uitoolkit::gtk, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, x11::application
+xmms-adplug: uitoolkit::gtk
+xmms-alarm: interface::x11, role::plugin, sound::player, suite::xmms, uitoolkit::gtk, use::playing, use::timekeeping, works-with::audio, x11::applet
+xmms-alarm-bmp1: special::not-yet-tagged, special::not-yet-tagged::x, suite::xmms
+xmms-arts: interface::x11, role::plugin, sound::player, suite::kde, suite::xmms, uitoolkit::gtk, use::playing, works-with::audio
+xmms-blursk: interface::x11, role::plugin, role::shared-lib, sound::player, suite::xmms, use::playing, use::viewing, works-with::audio, x11::application
+xmms-bumpscope: interface::x11, role::plugin, role::shared-lib, sound::player, suite::xmms, uitoolkit::gtk, use::playing, use::viewing, works-with::audio, x11::application
+xmms-cdread: hardware::storage, hardware::storage:cd, interface::x11, role::plugin, role::shared-lib, sound::player, suite::xmms, use::playing, works-with::audio, x11::application
+xmms-coverviewer: interface::x11, role::plugin, sound::player, suite::xmms, uitoolkit::gtk, use::playing, use::viewing, works-with::audio, works-with::image, works-with::image:raster, x11::applet
+xmms-crossfade: interface::x11, role::plugin, role::shared-lib, sound::mixer, suite::xmms, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+xmms-dbmix: interface::x11, role::plugin, sound::player, suite::xmms, uitoolkit::gtk, use::playing, works-with::audio
+xmms-defx: interface::x11, role::plugin, role::shared-lib, suite::xmms, use::playing, works-with::audio
+xmms-dev: interface::x11, role::devel-lib, sound::player, suite::xmms, uitoolkit::gtk, use::playing, works-with::audio
+xmms-find: interface::x11, role::plugin, role::shared-lib, sound::player, suite::xmms, uitoolkit::gtk, use::playing, use::searching, works-with::audio, x11::application
+xmms-finespectrum: interface::x11, role::plugin, role::shared-lib, sound::player, suite::xmms, uitoolkit::gtk, use::playing, use::viewing, works-with::audio, x11::application
+xmms-flac: interface::x11, role::plugin, role::shared-lib, sound::player, suite::xmms, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+xmms-fmradio: role::plugin, sound::player, suite::xmms, uitoolkit::gtk, use::playing, works-with::audio
+xmms-goodnight: interface::x11, role::plugin, role::shared-lib, sound::player, suite::xmms, uitoolkit::gtk, use::playing, use::timekeeping, works-with::audio, x11::application
+xmms-goom: interface::x11, role::plugin, role::shared-lib, sound::player, suite::xmms, uitoolkit::gtk, uitoolkit::sdl, use::playing, use::viewing, works-with::audio, x11::application
+xmms-infinity: interface::x11, role::plugin, role::shared-lib, sound::player, suite::xmms, uitoolkit::gtk, uitoolkit::sdl, use::playing, use::viewing, works-with::audio, x11::application
+xmms-infopipe: interface::x11, role::plugin, sound::player, suite::xmms, uitoolkit::gtk, use::playing, works-with::audio
+xmms-iris: suite::xmms, uitoolkit::gtk, works-with::audio
+xmms-jack: interface::x11, role::plugin, sound::player, suite::xmms, uitoolkit::gtk, use::playing, works-with::audio
+xmms-jackasyn: interface::x11, role::plugin, sound::player, suite::xmms, uitoolkit::gtk, use::playing, works-with::audio
+xmms-jess: interface::x11, role::plugin, sound::player, suite::xmms, uitoolkit::gtk, uitoolkit::sdl, use::playing, use::viewing, works-with::audio, x11::application
+xmms-kde: interface::x11, role::plugin, sound::player, suite::kde, suite::xmms, uitoolkit::gtk, uitoolkit::sdl, use::playing, works-with::audio, x11::applet, x11::application
+xmms-kjofol: interface::x11, role::plugin, sound::player, suite::xmms, uitoolkit::gtk, use::playing, works-with::audio, x11::applet
+xmms-kjofol-skins: interface::x11, role::app-data, sound::player, suite::xmms, uitoolkit::gtk, use::playing, works-with::audio, x11::theme
+xmms-ladspa: interface::x11, role::plugin, sound::player, suite::xmms, uitoolkit::gtk, use::converting, use::playing, works-with::audio, x11::application
+xmms-lirc: hardware::input, interface::x11, role::plugin, sound::player, suite::xmms, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+xmms-liveice: sound::player, uitoolkit::gtk, works-with::audio
+xmms-mad: interface::x11, role::plugin, sound::player, suite::xmms, uitoolkit::gtk, use::playing, works-with-format::mp3, works-with::audio, x11::application
+xmms-midi: uitoolkit::gtk
+xmms-modplug: interface::commandline, interface::x11, role::plugin, sound::player, suite::xmms, use::playing, works-with::audio, x11::application
+xmms-mp4: uitoolkit::gtk
+xmms-mpg123-ja: culture::japanese, interface::x11, role::plugin, sound::player, suite::xmms, uitoolkit::gtk, use::playing, works-with::audio, works-with::video, x11::applet
+xmms-msa: interface::x11, role::plugin, sound::player, suite::xmms, uitoolkit::gtk, use::playing, works-with::audio, x11::applet
+xmms-musepack: role::program, scope::utility, uitoolkit::gtk, works-with-format::mpc
+xmms-oggre: interface::x11, role::plugin, role::shared-lib, suite::xmms, uitoolkit::gtk, use::converting, works-with-format::oggvorbis, works-with::audio, x11::application
+xmms-openspc: hardware::emulation, interface::x11, role::plugin, role::shared-lib, suite::xmms, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+xmms-osd-plugin: interface::x11, role::plugin, sound::player, suite::xmms, uitoolkit::gtk, use::playing, use::viewing, works-with::audio, x11::library
+xmms-qbble: interface::x11, role::plugin, sound::player, suite::xmms, uitoolkit::qt, use::organizing, use::playing, use::searching, works-with::audio, x11::application
+xmms-rplay: interface::x11, network::client, role::plugin, role::program, sound::player, suite::xmms, use::playing, works-with::audio
+xmms-scrobbler: implemented-in::c, interface::x11, protocol::TODO, role::plugin, scope::application, sound::player, special::completely-tagged, special::not-yet-tagged, special::not-yet-tagged::x, suite::xmms, uitoolkit::gtk, use::entertaining, use::organizing, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio
+xmms-shell: interface::commandline, role::plugin, sound::player, suite::xmms, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+xmms-sid: interface::x11, role::plugin, sound::player, suite::xmms, uitoolkit::gtk, use::playing, works-with::audio
+xmms-singit: interface::x11, role::plugin, sound::player, suite::xmms, uitoolkit::gtk, use::editing, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, works-with::text, x11::application
+xmms-skins: sound::player, suite::xmms, x11::theme
+xmms-speex: uitoolkit::gtk
+xmms-stats: admin::logging, devel::lang:sql, interface::x11, role::plugin, sound::player, suite::xmms, uitoolkit::gtk, use::organizing, use::playing, works-with::audio, works-with::db
+xmms-status-plugin: interface::x11, role::plugin, sound::player, suite::xmms, uitoolkit::gtk, use::monitor, use::playing, works-with::audio, x11::applet
+xmms-synaesthesia: interface::x11, role::plugin, role::shared-lib, sound::player, suite::xmms, uitoolkit::gtk, use::playing, use::viewing, works-with::audio, x11::application
+xmms-volnorm: interface::x11, role::plugin, role::shared-lib, sound::mixer, sound::player, suite::xmms, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+xmms-wma: uitoolkit::gtk
+xmms-wmdiscotux: sound::player, works-with::audio
+xmms-xf86audio: hardware::input, interface::x11, role::plugin, sound::player, suite::xmms, uitoolkit::gtk, use::playing, works-with::audio, x11::applet, x11::application
+xmms-xmmplayer: uitoolkit::gtk, use::playing
+xmms2: special::meta, suite::xmms2
+xmms2-client-avahi: implemented-in::c, network::client, role::program, suite::xmms2
+xmms2-client-cli: implemented-in::c, interface::commandline, network::client, role::program, scope::utility, suite::xmms2, works-with::audio
+xmms2-client-medialib-updater: implemented-in::c, role::program, suite::xmms2
+xmms2-core: implemented-in::c, interface::daemon, protocol::ip, protocol::ipv6, role::program, sound::mixer, sound::player, suite::xmms2, works-with::audio
+xmms2-dev: devel::library, role::devel-lib, suite::xmms2
+xmms2-et: devel::testing-qa, implemented-in::c, network::client, role::program, suite::xmms2
+xmms2-plugin-alsa: implemented-in::c, role::plugin, suite::xmms2, works-with::audio
+xmms2-plugin-curl: protocol::http, suite::xmms2
+xmms2-plugin-daap: implemented-in::c, role::plugin, suite::xmms2
+xmms2-plugin-faad: implemented-in::c, role::plugin, suite::xmms2
+xmms2-plugin-flac: implemented-in::c, role::plugin, suite::xmms2
+xmms2-plugin-ices: implemented-in::c, role::plugin, suite::xmms2, works-with-format::oggvorbis
+xmms2-plugin-icymetaint: implemented-in::c, suite::xmms2
+xmms2-plugin-id3v2: implemented-in::c, role::plugin, suite::xmms2, works-with-format::mp3
+xmms2-plugin-jack: implemented-in::c, role::plugin, suite::xmms2
+xmms2-plugin-mad: implemented-in::c, role::plugin, suite::xmms2, works-with-format::mp3, works-with::audio
+xmms2-plugin-mms: implemented-in::c, role::plugin, suite::xmms2, works-with::audio
+xmms2-plugin-modplug: implemented-in::c, role::plugin, suite::xmms2, works-with::audio
+xmms2-plugin-musepack: implemented-in::c, role::plugin, suite::xmms2, works-with-format::mpc, works-with::audio
+xmms2-plugin-oss: implemented-in::c, role::plugin, suite::xmms2
+xmms2-plugin-sid: implemented-in::c, role::plugin, suite::xmms2, works-with::audio
+xmms2-plugin-smb: implemented-in::c, network::client, protocol::smb, role::plugin, suite::xmms2
+xmms2-plugin-vocoder: implemented-in::c, role::plugin, suite::xmms2
+xmms2-plugin-vorbis: implemented-in::c, role::plugin, suite::xmms2, works-with-format::oggvorbis, works-with::audio
+xmms2-plugin-wma: implemented-in::c, role::plugin, suite::xmms2, works-with::audio
+xmms2-scrobbler: implemented-in::ruby, network::client, role::program, suite::xmms2
+xmmsctrl: uitoolkit::gtk
+xmon: interface::x11, network::client, network::server, role::program, uitoolkit::athena, use::monitor, x11::application
+xmorph: interface::x11, role::program, scope::application, uitoolkit::athena, uitoolkit::gtk, use::editing, works-with::image, works-with::image:raster, x11::application
+xmotd: admin::user-management, interface::x11, role::program, scope::utility, uitoolkit::athena, use::viewing, x11::application
+xmoto: game::platform, implemented-in::c++, interface::x11, role::program, scope::application, uitoolkit::sdl, use::gameplaying
+xmountains: game::toys, interface::x11, role::program, use::entertaining, x11::application
+xmove: interface::x11, network::server, role::program, works-with::software:running, x11::xserver
+xmovie: interface::x11, role::program, scope::utility, use::playing, works-with-format::mp3, works-with-format::oggvorbis, works-with::audio, works-with::video, x11::application
+xmp: implemented-in::c, role::program, scope::application, sound::player, use::playing, works-with::audio
+xmp-alsa: implemented-in::c, role::program, scope::application, sound::player, use::playing, works-with::audio
+xmp-common: sound::player, special::auto-inst-parts, use::playing, works-with::audio
+xmp-esd: implemented-in::c, role::program, scope::application, sound::player, use::playing, works-with::audio
+xmp-x11: implemented-in::c, interface::x11, sound::player, use::playing, works-with::audio, x11::application
+xmp-xmms: implemented-in::c, interface::x11, role::plugin, sound::player, suite::xmms, uitoolkit::gtk, use::playing, works-with::audio, x11::application
+xmpi: devel::runtime, interface::x11, role::shared-lib, uitoolkit::motif, x11::application
+xmpuzzles: game::puzzle, interface::x11, role::program, uitoolkit::motif, use::gameplaying, x11::application
+xmule: interface::x11, network::client, role::program, uitoolkit::gtk, uitoolkit::wxwidgets
+xnap: special::not-yet-tagged, special::not-yet-tagged::x
+xnap-snapshot: special::not-yet-tagged, special::not-yet-tagged::x
+xnc: interface::x11, role::program, role::shared-lib, scope::application, use::browsing, use::organizing, works-with::file, x11::application, x11::terminal
+xnecview: hardware::hamradio, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::viewing, works-with-format::png, works-with-format::postscript, works-with::image, works-with::image:raster, works-with::text, x11::application
+xnee: interface::x11, role::program, scope::application, use::playing, use::storing, works-with::software:running, x11::application
+xnest: interface::daemon, network::client, network::server, role::program, x11::xserver
+xnetload: interface::x11, network::scanner, role::program, scope::utility, uitoolkit::athena, use::monitor, works-with::network-traffic, x11::application
+xodo: game::toys, hardware::input:mouse, interface::x11, x11::application
+xoids: game::arcade, interface::x11, role::program, use::gameplaying, x11::application
+xonix: game::arcade, interface::x11, role::program, uitoolkit::athena, use::gameplaying, x11::application
+xoo: uitoolkit::gtk
+xorg: hardware::input, hardware::video, interface::x11, network::server, role::dummy, special::meta, use::driver, x11::xserver
+xorsa: field::astronomy, implemented-in::c++, interface::x11, role::program, uitoolkit::qt
+xoscope: uitoolkit::gtk
+xosd-bin: interface::commandline, interface::x11, role::program, scope::utility, use::viewing, works-with::text, x11::application, x11::library
+xosview: interface::x11, role::program, scope::utility, use::monitor, x11::application
+xpad: interface::x11, role::program, scope::utility, uitoolkit::gtk, use::organizing, works-with::pim, x11::application
+xpaint: interface::x11, role::program, scope::application, uitoolkit::athena, use::editing, works-with::image, works-with::image:raster, x11::application
+xpat2: game::card, interface::x11, role::program, uitoolkit::athena, use::gameplaying, x11::application
+xpcd: interface::commandline, interface::x11, role::program, scope::utility, uitoolkit::athena, use::converting, use::viewing, works-with::image:raster, x11::application
+xpcd-svga: interface::svga, role::program, scope::utility, use::viewing, works-with::image:raster
+xpdf: interface::x11, role::dummy, special::obsolete, use::viewing, works-with-format::pdf, works-with::text, x11::application
+xpdf-chinese-simplified: culture::chinese, uitoolkit::motif, use::viewing, works-with-format::pdf, works-with::text
+xpdf-chinese-traditional: culture::chinese, culture::taiwanese, uitoolkit::motif, works-with-format::pdf, works-with::text
+xpdf-common: role::app-data, special::auto-inst-parts, works-with-format::pdf, works-with::text
+xpdf-i: special::not-yet-tagged, special::not-yet-tagged::x, special::obsolete
+xpdf-japanese: culture::japanese, uitoolkit::motif, use::viewing, works-with-format::pdf, works-with::text
+xpdf-korean: culture::korean, uitoolkit::motif, use::viewing, works-with-format::pdf, works-with::text
+xpdf-reader: interface::x11, role::program, scope::utility, uitoolkit::motif, use::converting, use::viewing, works-with-format::pdf, works-with::image, works-with::image:raster, works-with::text, x11::application
+xpdf-utils: interface::commandline, role::program, scope::utility, use::converting, works-with-format::pdf, works-with-format::postscript, works-with::font, works-with::image, works-with::image:raster, works-with::text
+xpenguins: game::toys, interface::x11, role::program, scope::utility, use::entertaining, x11::screensaver
+xpenguins-applet: game::toys, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::entertaining, x11::applet
+xphoon: game::toys, interface::x11, role::program, scope::utility, use::timekeeping, x11::screensaver
+xpilot: game::arcade, interface::x11, junior::arcade, role::dummy, role::metapackage, special::obsolete, use::gameplaying, x11::application
+xpilot-client-common: game::arcade, interface::x11, role::dummy, special::obsolete, use::gameplaying
+xpilot-client-nas: game::arcade, interface::x11, network::client, role::dummy, special::obsolete, use::gameplaying, x11::application
+xpilot-client-nosound: game::arcade, interface::x11, network::client, role::dummy, special::obsolete, use::gameplaying, x11::application
+xpilot-client-rplay: game::arcade, interface::x11, network::client, role::dummy, special::obsolete, use::gameplaying, x11::application
+xpilot-extra: game::arcade, interface::x11, role::app-data, role::dummy, use::gameplaying, x11::application
+xpilot-server: game::arcade, interface::daemon, interface::x11, network::server, role::dummy, special::obsolete, use::gameplaying
+xplanet: field::astronomy, game::toys, interface::x11, role::program, scope::utility, use::viewing, x11::screensaver
+xplanet-images: field::astronomy, game::toys, interface::x11, role::app-data, use::viewing, x11::screensaver
+xplot: interface::x11, role::program, scope::utility, use::viewing, works-with::image, works-with::image:vector, x11::application
+xpm2wico: interface::commandline, role::program, scope::utility, use::converting, works-with::image, works-with::image:raster
+xpmutils: implemented-in::c, interface::commandline, role::program, scope::utility, use::checking, use::viewing, works-with-format::TODO, works-with::image:raster
+xpostit: interface::x11, role::program, scope::utility, uitoolkit::athena, use::organizing, works-with::pim, x11::application
+xpp: hardware::printer, interface::x11, role::program, scope::utility, uitoolkit::TODO, use::configuring, use::printing, x11::application
+xppaut: field::mathematics, interface::x11, role::program, scope::utility, x11::application
+xprint: hardware::printer, interface::x11, role::program, scope::utility, use::printing, works-with-format::pdf, works-with-format::postscript, works-with::fax, works-with::text, x11::application
+xprint-common: hardware::printer, interface::x11, role::app-data, uitoolkit::xlib, use::printing, works-with-format::pdf, works-with-format::postscript, works-with::fax, works-with::text, x11::application
+xprint-utils: hardware::printer, interface::commandline, role::program, use::printing, x11::application
+xprobe: admin::monitoring, implemented-in::c++, interface::commandline, network::scanner, role::program, scope::utility, special::completely-tagged, use::scanning
+xprt: interface::x11, role::dummy, use::printing
+xprt-xprintorg: interface::x11, role::dummy
+xpuyopuyo: game::tetris, interface::x11, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+xpuzzles: game::puzzle, interface::x11, role::program, use::gameplaying, x11::application
+xpvm: devel::debugger, hardware::emulation, interface::x11, role::program, scope::utility, uitoolkit::tk, use::monitor, works-with::software:running, x11::application
+xqf: game::arcade, interface::x11, network::client, network::scanner, role::program, scope::utility, uitoolkit::gtk, uitoolkit::ncurses, use::browsing, use::gameplaying, x11::application
+xracer: game::arcade, interface::3d, role::program, scope::application, use::gameplaying, x11::application
+xracer-tools: game::arcade, interface::3d, role::program, scope::utility, use::gameplaying, x11::application
+xresprobe: hardware::detection, interface::commandline, role::program, scope::utility, use::scanning, x11::library
+xrestop: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::monitor, works-with::software:running, x11::application
+xringd: hardware::modem, role::program, scope::utility, use::monitor
+xrn: interface::x11, network::client, protocol::nntp, role::program, uitoolkit::athena, x11::application
+xrootconsole: admin::monitoring, interface::x11, role::program, scope::utility, use::monitor, x11::application
+xrsh: interface::x11, network::client, network::service, role::program, use::login, x11::terminal
+xruskb: accessibility::input, culture::russian, hardware::input:keyboard, interface::x11, network::server, role::program, use::configuring, use::monitor, x11::application
+xsabre: game::arcade, interface::3d, role::program, uitoolkit::ncurses, uitoolkit::sdl, use::gameplaying
+xsane: interface::x11, role::program, scope::application, uitoolkit::gtk, works-with::image, works-with::image:raster, x11::application
+xsane-common: interface::x11, role::app-data, uitoolkit::gtk, works-with::image:raster, x11::application
+xscavenger: game::arcade, interface::x11, junior::arcade, role::program, use::gameplaying, x11::application
+xscorch: game::strategy, interface::x11, role::program, uitoolkit::gtk, use::gameplaying, x11::application
+xscreensaver: interface::x11, role::program, scope::application, uitoolkit::gtk, x11::screensaver
+xscreensaver-gl: interface::3d, role::program, scope::application, uitoolkit::gtk, x11::screensaver
+xscreensaver-gnome: interface::x11, special::obsolete
+xscreensaver-nognome: interface::x11, special::obsolete
+xsel: interface::commandline, role::program, scope::utility, use::viewing, works-with::text, x11::application
+xsensors: admin::monitoring, implemented-in::c, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::monitor, x11::application
+xserver-common: admin::configuring, interface::x11, role::app-data, special::auto-inst-parts, use::configuring, x11::xserver
+xserver-xfree86: hardware::video, interface::x11, network::server, role::program, x11::xserver
+xserver-xfree86-dbg: devel::debugger, interface::x11, x11::xserver
+xserver-xorg: hardware::input, hardware::video, interface::x11, network::server, role::dummy, special::meta, uitoolkit::xlib, use::driver, x11::xserver
+xserver-xorg-core: hardware::input, hardware::video, interface::x11, network::server, role::program, role::shared-lib, special::auto-inst-parts, uitoolkit::xlib, use::driver, x11::library, x11::xserver
+xserver-xorg-dev: devel::library, role::devel-lib, x11::xserver
+xserver-xorg-input-evdev: hardware::input
+xserver-xorg-input-kbd: hardware::input:keyboard, interface::x11, network::server, role::shared-lib, use::driver, x11::library, x11::xserver
+xserver-xorg-input-magellan: hardware::input:mouse
+xserver-xorg-input-mouse: hardware::input:mouse, interface::x11, network::server, role::shared-lib, use::driver, x11::library, x11::xserver
+xserver-xorg-input-synaptics: hardware::input, hardware::laptop, role::plugin, use::driver, x11::TODO
+xserver-xorg-input-vmmouse: hardware::input:mouse
+xserver-xorg-video-fbdev: interface::framebuffer, interface::x11, network::server, role::shared-lib, use::driver, x11::library, x11::xserver
+xserver-xorg-video-mga: devel::library, hardware::video, interface::x11, network::server, role::shared-lib, use::driver, x11::library, x11::xserver
+xserver-xorg-video-vesa: hardware::video, interface::x11, network::server, role::shared-lib, use::driver, x11::library, x11::xserver
+xserver-xorg-video-voodoo: devel::library, hardware::video, interface::3d, interface::x11, network::server, role::shared-lib, use::driver, x11::library
+xshisen: game::puzzle, interface::x11, role::program, uitoolkit::athena, use::gameplaying, x11::application
+xshodo: uitoolkit::athena
+xshogi: game::board, game::board:chess, interface::x11, role::program, uitoolkit::athena, use::gameplaying, x11::application
+xsidplay: interface::x11, sound::player, uitoolkit::qt, works-with::audio, x11::application
+xsim: special::not-yet-tagged, special::not-yet-tagged::x
+xsitecopy: interface::x11, protocol::ftp, protocol::http, protocol::ssl, protocol::webdav, suite::gnome, uitoolkit::gtk
+xskat: game::card, interface::x11, role::program, use::gameplaying, x11::application
+xslide: implemented-in::lisp, role::plugin, suite::emacs, use::editing, works-with-format::xml
+xslideshow: uitoolkit::athena, use::viewing, works-with::image, works-with::image:raster
+xsltproc: interface::commandline, role::program, scope::utility, use::converting, works-with-format::xml, works-with-format::xml:xslt
+xsmbrowser: filetransfer::smb, interface::x11, protocol::smb, suite::samba, use::browsing, x11::application
+xsmc-calc: field::electronics, hardware::hamradio, interface::x11, role::program, scope::utility, x11::application
+xsnow: game::toys, interface::x11, role::program, use::entertaining
+xsok: game::puzzle, interface::x11, role::program, uitoolkit::athena, use::gameplaying, x11::application
+xsol: game::card, interface::x11, role::program, uitoolkit::motif, use::gameplaying, x11::application
+xsoldier: game::arcade, interface::x11, junior::arcade, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+xspecs: devel::doc, devel::lang:c, made-of::data:html, made-of::data:postscript, role::documentation, x11::library
+xstarfish: interface::x11, role::program, scope::utility, use::viewing, works-with::image, works-with::image:raster, x11::screensaver
+xsteg: interface::commandline, interface::x11, role::program, scope::utility, security::cryptography, uitoolkit::gtk, works-with-format::jpg, works-with::image, works-with::image:raster, x11::application
+xstow: admin::package-management, implemented-in::c++, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::organizing
+xsupplicant: admin::configuring, network::client, network::configuration, role::program, security::authentication, use::configuring
+xsysinfo: interface::x11, uitoolkit::athena, use::monitor, x11::application
+xt: interface::x11, network::routing, role::program, scope::utility, uitoolkit::gtk, use::routing, use::viewing, x11::application
+xt-aterm: admin::file-distribution, devel::lang:c, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::x, use::converting
+xt-aterm-dev: admin::file-distribution, devel::lang:c, interface::commandline, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::x, use::converting
+xt-aterm-doc: admin::file-distribution, devel::lang:c, interface::commandline, role::documentation, special::not-yet-tagged, special::not-yet-tagged::x, use::converting
+xt-catalog: devel::lang:java
+xt-sdf2: devel::lang:c, interface::commandline, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::x
+xt-sdf2-dev: devel::lang:c, interface::commandline, role::devel-lib, special::not-yet-tagged, special::not-yet-tagged::x
+xt-strategoxt: special::not-yet-tagged, special::not-yet-tagged::x
+xt-toolbus: devel::lang:c, role::program, scope::utility, uitoolkit::tk
+xt-toolbus-doc: devel::lang:c, role::documentation, special::not-yet-tagged, special::not-yet-tagged::x, uitoolkit::tk
+xt-toolbuslib: devel::lang:c, devel::library, implemented-in::c, role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::x
+xtail: interface::x11, use::monitor, use::viewing, works-with::file, x11::application
+xtalk: implemented-in::python, interface::x11, network::client, role::program, uitoolkit::tk, use::chatting, x11::application
+xtartan: game::toys, interface::x11, use::viewing, works-with::image, works-with::image:raster, x11::application
+xteddy: game::toys, implemented-in::c, interface::x11, use::viewing, x11::application
+xtel: culture::french, hardware::modem, interface::daemon, interface::x11, network::client, network::server, role::program, uitoolkit::motif, x11::application
+xtell: interface::commandline, network::client, network::server, role::program, use::chatting
+xterm: implemented-in::c, interface::x11, role::program, scope::utility, uitoolkit::athena, x11::application, x11::terminal
+xtermcontrol: implemented-in::c, interface::commandline, role::program, scope::utility, x11::terminal
+xtermset: interface::commandline, role::program, scope::utility, x11::terminal
+xtet42: game::tetris, interface::x11, use::gameplaying, x11::application
+xtide: interface::commandline, interface::daemon, interface::web, interface::x11, network::server, protocol::http, role::program, uitoolkit::athena, use::timekeeping, x11::application
+xtide-data: role::app-data, special::auto-inst-parts, use::timekeeping
+xtightvncviewer: interface::x11, network::client, role::program, uitoolkit::athena, use::login, use::viewing, x11::application
+xtlf: uitoolkit::gtk
+xtokkaetama: game::tetris, interface::x11, role::program, use::gameplaying, x11::application
+xtoolwait: interface::commandline, role::program, scope::utility, x11::application
+xtrace: devel::debugger, interface::commandline, role::program, scope::utility, use::monitor, use::proxying, works-with::software:running, x11::application, x11::xserver
+xtradius: interface::daemon, network::server, protocol::radius, role::program, security::authentication
+xtrans-dev: devel::library, role::devel-lib, x11::library
+xtranslate: interface::commandline, interface::x11, use::converting, works-with::dictionary, x11::application
+xtris: game::tetris, interface::x11, network::client, network::server, role::program, use::gameplaying, x11::application
+xtrkcad: uitoolkit::gtk
+xtrlock: interface::daemon, network::server, role::program, x11::application
+xtron: game::arcade, interface::x11, role::program, use::gameplaying, x11::application
+xtrs: hardware::emulation, uitoolkit::ncurses
+xttitle: interface::commandline, role::program, scope::utility, x11::terminal
+xturqstat: implemented-in::c++, interface::x11, protocol::fidonet, protocol::nntp, role::program, scope::utility, uitoolkit::qt, use::monitor, x11::application
+xtux: game::arcade, role::dummy, special::obsolete, use::gameplaying
+xtux-client: game::arcade, network::client, role::program, use::gameplaying
+xtux-common: game::arcade, role::app-data, special::auto-inst-parts, use::gameplaying
+xtux-levels: game::arcade, role::app-data, use::gameplaying
+xtux-server: game::arcade, interface::daemon, network::server, role::program, use::gameplaying
+xtv: interface::x11, network::client, role::program, uitoolkit::athena, use::viewing, x11::application
+xulrunner: suite::mozilla, uitoolkit::gtk
+xulrunner-gnome-support: suite::gnome, uitoolkit::gtk
+xutils: admin::configuring, devel::buildtools, hardware::detection, interface::commandline, role::program, scope::utility, use::converting, use::viewing, works-with::font
+xutils-dev: devel::buildtools, devel::lang:c, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::software:source
+xvfb: interface::framebuffer, network::server, role::program, x11::xserver
+xvier: game::board, interface::x11, role::program, use::gameplaying, x11::application
+xview-clients: interface::x11, role::program, scope::utility, use::configuring, use::editing, use::timekeeping, works-with::text, x11::application, x11::terminal
+xview-examples: devel::examples, interface::x11, role::app-data, role::source, uitoolkit::ncurses
+xviewg: devel::library, interface::x11, role::program, scope::utility, use::viewing, works-with::image, works-with::image:raster, x11::application
+xviewg-dev: devel::library, interface::x11, role::devel-lib, use::viewing, works-with::image, works-with::image:raster, x11::application
+xvile: devel::editor, interface::x11, uitoolkit::athena, use::editing, works-with::text
+xvkbd: accessibility::input, hardware::input, hardware::input:mouse, interface::x11, role::program, scope::utility, uitoolkit::athena, x11::application
+xvmount: admin::filesystem, interface::x11, role::program, scope::utility, use::configuring, x11::application
+xvnc4viewer: interface::x11, network::client, role::program, use::login, use::viewing, x11::application
+xvncviewer: interface::x11, network::client, protocol::TODO, role::program, scope::utility, uitoolkit::athena, use::login, use::viewing, x11::application
+xvt: interface::x11, role::program, scope::utility, x11::terminal
+xwatch: admin::monitoring, interface::x11, security::ids, security::log-analyzer, use::monitor, use::viewing, works-with::logfile, x11::application
+xwatchwin: interface::commandline, role::program, use::monitor, x11::application
+xwave: interface::x11, sound::mixer, uitoolkit::athena, use::editing, works-with-format::wav, works-with::audio, x11::application
+xwelltris: game::tetris, interface::3d, role::program, uitoolkit::sdl, use::gameplaying, x11::application
+xwhois: interface::x11, network::client, role::program, uitoolkit::gtk, use::checking, x11::application
+xwine: hardware::emulation, interface::x11, role::program, scope::application, uitoolkit::gtk, x11::application
+xwit: implemented-in::c, interface::commandline, role::program, scope::utility, x11::TODO
+xwnc: role::program, scope::application, special::not-yet-tagged, special::not-yet-tagged::x, use::monitor, works-with::image, works-with::image:raster, x11::library
+xwota: uitoolkit::gtk
+xwpe: devel::ide, interface::text-mode, interface::x11, role::program, scope::application, uitoolkit::ncurses, use::editing, works-with::software:source, x11::application
+xwrits: hardware::input, implemented-in::c, interface::x11, role::program, scope::utility, use::timekeeping, x11::application
+xxdiff: interface::x11, role::program, scope::utility, uitoolkit::qt, use::synchronizing, works-with::text, x11::application
+xxgdb: devel::debugger, interface::x11, role::program, scope::utility, uitoolkit::athena, use::checking, x11::application
+xxkb: accessibility::input, culture::russian, hardware::input, interface::x11, role::program, scope::utility, x11::application
+xzgv: interface::commandline, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::viewing, works-with::image, works-with::image:raster, x11::application
+xzip: devel::interpreter, game::adventure, interface::x11, role::program, scope::utility, use::gameplaying, x11::application
+xzoom: accessibility::screen-magnify, interface::x11, role::program, scope::utility, use::viewing, x11::application
+yabasic: devel::interpreter, interface::commandline, role::program, scope::utility, uitoolkit::ncurses, works-with::software:source
+yaboot: admin::boot, implemented-in::c, interface::commandline, interface::text-mode, role::program
+yacas: devel::library, field::mathematics, interface::x11, x11::application
+yacas-doc: devel::doc, field::mathematics, made-of::data:html, role::documentation
+yacas-proteus: devel::editor, field::mathematics, interface::x11, uitoolkit::fltk, x11::application
+yaclc: implemented-in::perl, interface::commandline, protocol::http, role::program, scope::utility, suite::debian, use::checking, works-with::bugs, works-with::software:package
+yacpi: admin::monitoring, admin::power-management, hardware::power, hardware::power:acpi, implemented-in::c, interface::commandline, role::program, scope::utility, uitoolkit::ncurses, use::monitor
+yada: devel::debian, devel::packaging, implemented-in::perl, interface::commandline, role::program, scope::utility, suite::debian
+yada-doc: devel::debian, devel::doc, devel::examples, interface::commandline, role::documentation, suite::debian
+yafc: filetransfer::ftp, interface::text-mode, network::client, protocol::ftp, role::program, uitoolkit::ncurses, use::downloading, works-with::file
+yafray: field::arts, implemented-in::c++, interface::commandline, role::plugin, role::program, special::not-yet-tagged, special::not-yet-tagged::y, use::editing, works-with-format::jpg, works-with-format::png, works-with-format::xml, works-with::3dmodel, works-with::image, works-with::image:raster
+yagiuda: field::electronics, hardware::hamradio, implemented-in::c, interface::commandline, role::program, use::TODO
+yahoo2mbox: implemented-in::perl, interface::commandline, mail::list, network::client, role::program, use::downloading, use::storing, works-with::mail
+yaird: admin::boot
+yakuake: implemented-in::c++, role::program, suite::kde, uitoolkit::qt, x11::terminal
+yale: field::astronomy
+yample: mail::delivery-agent, mail::filters, works-with::mail
+yank: interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::organizing, works-with::pim, x11::application
+yapps2: devel::code-generator, devel::lang:python, devel::library, implemented-in::python, interface::commandline, role::program, scope::utility, special::completely-tagged
+yapps2-runtime: devel::code-generator, devel::lang:python, devel::library, implemented-in::python, interface::commandline, scope::utility
+yard: admin::boot, admin::filesystem, admin::recovery, hardware::storage:floppy, implemented-in::perl, interface::commandline, role::program, scope::utility
+yardradius: admin::logging, interface::daemon, network::server, protocol::radius, role::program, security::authentication
+yaret: hardware::storage, hardware::storage:cd, implemented-in::perl, interface::commandline, role::program, scope::utility, use::converting, use::storing, works-with::audio
+yarssr: implemented-in::perl, interface::x11, role::plugin, suite::gnome, suite::kde, uitoolkit::gtk, use::viewing, web::blog, works-with-format::xml, works-with-format::xml:rss, x11::applet
+yasgml: culture::japanese, implemented-in::lisp, interface::commandline, role::plugin, suite::emacs, use::editing, use::typesetting, works-with-format::sgml, works-with::text
+yasm: devel::compiler, devel::machinecode, implemented-in::c, role::program
+yasr: accessibility::screen-reader, implemented-in::c, interface::commandline, role::program, scope::utility, works-with::audio
+yate: implemented-in::c++, protocol::voip
+yate-dev: devel::library, implemented-in::c++, protocol::voip, role::devel-lib
+yate-doc: protocol::voip, role::documentation
+yate-gtk: implemented-in::c++, protocol::voip, uitoolkit::gtk, use::configuring
+yate-gtk2: uitoolkit::gtk
+yate-openh323: implemented-in::c++, protocol::voip
+yate-pgsql: implemented-in::c++, protocol::voip
+yate-qt: implemented-in::c++, protocol::voip, uitoolkit::qt, use::configuring
+yatex: implemented-in::lisp, interface::text-mode, role::plugin, suite::emacs, use::editing, use::typesetting, works-with-format::html, works-with-format::tex, works-with::text
+yaws: filetransfer::http, implemented-in::TODO, interface::daemon, network::server, protocol::http, web::server
+yaz: devel::library, implemented-in::c, interface::commandline, role::program, scope::utility, uitoolkit::ncurses, use::downloading, use::viewing, works-with::db
+yaz-doc: devel::doc, devel::library, made-of::data:html, role::documentation, use::downloading, works-with::db
+yc-el: accessibility::input, culture::japanese, implemented-in::lisp, network::client, role::plugin, role::program, suite::emacs, use::editing
+ydpdict: culture::polish, uitoolkit::ncurses, works-with::dictionary
+yelp: implemented-in::c, interface::x11, protocol::ssl, role::documentation, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::viewing, works-with-format::xml, x11::application
+yencode: interface::commandline, role::program, scope::utility, use::converting, works-with::file
+yepp: hardware::embedded, interface::x11, uitoolkit::gtk, use::synchronizing, works-with-format::mp3, works-with::audio, x11::application
+yforth: devel::ide, implemented-in::c, interface::commandline, role::program, scope::utility
+ygraph: field::mathematics, interface::x11, role::program, scope::utility, uitoolkit::gtk, use::viewing, works-with::image, works-with::image:vector, x11::application
+yics: game::board, game::board:chess, network::TODO, role::program, use::gameplaying
+yiff-server: interface::daemon, network::server, network::service, role::program, works-with::audio
+yiyantang: culture::chinese, culture::taiwanese, interface::commandline, use::converting, works-with::text
+yodl: interface::commandline, role::program, scope::utility, use::converting, works-with-format::html, works-with-format::info, works-with-format::man, works-with-format::sgml, works-with-format::tex, works-with::text
+yorick: devel::ide, devel::interpreter, field::mathematics, role::devel-lib, role::program, scope::utility, works-with::image, works-with::image:vector
+yorick-curses: uitoolkit::ncurses
+yorick-data: role::app-data
+yorick-doc: devel::doc, devel::interpreter, field::mathematics, made-of::data:html, role::documentation, works-with::image, works-with::image:vector
+youtube-dl: use::downloading
+ysm: interface::commandline, protocol::oscar, works-with::im
+ytalk: interface::commandline, role::program, scope::utility, uitoolkit::ncurses, use::chatting
+ytnef: works-with::mail
+ytree: interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::browsing, use::organizing, works-with::file
+yudit: interface::x11, role::program, scope::utility, use::converting, use::editing, works-with::text, x11::application
+yudit-doc: interface::x11, role::documentation, role::program, use::editing, works-with::text, works-with::unicode, x11::application
+yum: admin::package-management, role::program, works-with::software:package
+yydecode: interface::commandline, role::program, scope::utility, use::converting, works-with::archive
+z80asm: devel::compiler, devel::lang:ml, devel::machinecode, implemented-in::c, interface::commandline, role::program, scope::utility, special::completely-tagged, use::TODO, works-with::software:source
+z8530-utils2: hardware::hamradio, hardware::modem, interface::commandline, role::program, scope::utility, use::configuring, use::driver
+zabbix-agent: admin::monitoring, implemented-in::c, interface::daemon, network::server, role::program, use::monitor, works-with::software:running
+zabbix-frontend-php: admin::monitoring, devel::lang:sql, implemented-in::php, interface::web, protocol::http, role::program, use::monitor, web::application, works-with::db
+zabbix-server-pgsql: admin::logging, admin::monitoring, devel::lang:sql, implemented-in::c, interface::daemon, network::server, network::service, protocol::db:psql, role::program, use::monitor, works-with::db
+zangband: game::rpg, game::rpg:rogue, uitoolkit::athena, uitoolkit::gtk, uitoolkit::ncurses
+zapping: hardware::video, interface::x11, role::program, suite::gnome, uitoolkit::gtk, use::viewing, works-with::video, x11::application
+zaptel: interface::commandline, protocol::voip, role::program, scope::utility, use::configuring, use::driver
+zaptel-source: protocol::voip, role::source, use::driver
+zatacka: game::arcade, interface::x11, role::program, uitoolkit::sdl, use::gameplaying
+zbdesk: interface::x11, special::not-yet-tagged, special::not-yet-tagged::z
+zblast-data: game::arcade, role::app-data, special::auto-inst-parts, use::gameplaying
+zblast-svgalib: game::arcade, interface::svga, junior::arcade, role::program, use::gameplaying
+zblast-x11: game::arcade, interface::x11, junior::arcade, role::program, use::gameplaying
+zcip: hardware::laptop, interface::daemon, network::configuration, network::server, role::program, use::configuring
+zd1211-source: role::source
+zec: game::strategy, network::client, role::program, use::gameplaying
+zed: interface::text-mode, interface::x11, use::editing, x11::application
+zeiberbude: interface::x11, special::not-yet-tagged, special::not-yet-tagged::z
+zenirc: filetransfer::dcc, implemented-in::lisp, network::client, protocol::irc, role::plugin, role::program, suite::emacs, use::chatting
+zenity: interface::x11, role::program, scope::utility, suite::gnome, uitoolkit::gtk, use::viewing, works-with::text, x11::application
+zephyr-clients: interface::x11, network::client, role::program, uitoolkit::athena, uitoolkit::ncurses, use::chatting, x11::application
+zephyr-server: interface::daemon, network::server, role::program, use::chatting
+zephyr-server-krb: interface::daemon, network::server, protocol::kerberos, role::program, security::authentication, use::chatting
+zeroconf: network::configuration, protocol::ip, role::program, scope::utility, special::not-yet-tagged, special::not-yet-tagged::z
+zftp: field::physics, filetransfer::ftp, interface::commandline, network::client, protocol::ftp, role::program, use::downloading, works-with::file
+zgv: interface::svga, role::program, scope::utility, use::viewing, works-with::image, works-with::image:raster, works-with::image:vector
+zh-autoconvert: culture::chinese, culture::korean, role::program, scope::utility, use::converting, works-with::text
+zh-sgmltools: culture::chinese, culture::taiwanese, use::editing, works-with-format::html, works-with-format::sgml, works-with-format::tex, works-with::text
+zhcon: accessibility::ocr, culture::chinese, culture::japanese, culture::korean, culture::taiwanese, interface::commandline, interface::framebuffer, interface::text-mode, role::program, scope::utility, uitoolkit::ncurses, use::converting, works-with::text, works-with::unicode
+zile: interface::text-mode, role::program, scope::application, uitoolkit::ncurses, use::editing, works-with::text
+zim: implemented-in::perl, interface::x11, role::program, uitoolkit::gtk, use::editing, use::organizing, works-with::text
+zinc-compiler: devel::compiler, implemented-in::c, implemented-in::haskell, interface::commandline, role::program, scope::utility, works-with::software:source
+zinf: interface::x11, role::program, scope::application, sound::player, uitoolkit::gtk, use::playing, works-with-format::mp3, works-with-format::oggtheora, works-with-format::oggvorbis, works-with::audio, works-with::video, x11::application
+zinf-extras: interface::text-mode, role::plugin, sound::player, uitoolkit::ncurses, use::playing, works-with::audio
+zinf-plugin-alsa: role::plugin, sound::player, use::playing, works-with::audio
+zinf-plugin-arts: role::plugin, sound::player, use::playing, works-with::audio
+zinf-plugin-esound: role::plugin, sound::player, use::playing, works-with::audio
+zip: interface::commandline, role::program, scope::utility, use::compressing, use::storing, works-with-format::zip, works-with::archive
+zip-crypt: role::dummy, special::obsolete, works-with-format::zip, works-with::archive
+zipper.app: implemented-in::objc, interface::x11, role::plugin, suite::gnustep, uitoolkit::special:not-yet-tagged, use::compressing, use::viewing, works-with::archive, x11::applet
+zircon: filetransfer::dcc, interface::x11, network::client, protocol::irc, role::program, uitoolkit::tk, use::chatting, x11::application
+zivot: game::toys, implemented-in::fortran, interface::text-mode, role::program, use::gameplaying
+zlib-bin: interface::commandline, role::program, scope::utility, use::compressing, use::storing, works-with-format::zip, works-with::archive
+zlib1g: devel::library, role::shared-lib, use::compressing
+zlib1g-dev: devel::library, role::devel-lib, use::compressing
+zlibc: devel::library, role::shared-lib, use::compressing
+zmailer: interface::daemon, network::server, role::program, works-with::mail
+zoem: implemented-in::c, interface::commandline, interface::shell, role::program, scope::utility, use::converting, use::typesetting, works-with-format::html, works-with-format::man, works-with::text
+zoem-doc: interface::shell, role::documentation, use::converting, use::typesetting, works-with-format::html, works-with-format::man, works-with::text
+zoidberg: devel::lang:perl, implemented-in::perl, interface::shell, role::program, scope::utility
+zone-file-check: interface::commandline, protocol::dns, role::program, scope::utility, use::checking
+zonecheck: implemented-in::ruby, interface::commandline, protocol::dns, role::program, scope::utility, use::checking
+zonecheck-cgi: implemented-in::ruby, interface::web, protocol::dns, role::program, scope::utility, use::checking, web::cgi
+zoo: interface::commandline, role::program, scope::utility, use::compressing, use::storing, works-with::archive
+zope: network::server, role::program, suite::zope, web::appserver, web::server
+zope-archetypes: devel::lang:python, implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-atcontenttypes: devel::lang:python, implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-atrbw: suite::zope
+zope-atseng: suite::zope
+zope-attachmentfield: suite::zope
+zope-backtalk: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::editing, web::cms
+zope-book: network::server, role::program, suite::zope, web::server
+zope-btreefolder2: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::storing, web::cms, works-with::db
+zope-cachefu: suite::zope
+zope-callprofiler: devel::profiler, implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-cmf: implemented-in::python, interface::web, protocol::http, role::metapackage, suite::zope, web::cms
+zope-cmf1.4: implemented-in::python, interface::web, protocol::http, role::metapackage, suite::zope, web::cms
+zope-cmf1.5: suite::zope
+zope-cmf1.6: suite::zope
+zope-cmfactionicons: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-cmfactionicons1.5: suite::zope
+zope-cmfactionicons1.6: suite::zope
+zope-cmfcalendar: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::organizing, use::timekeeping, web::cms, works-with::pim
+zope-cmfcalendar1.4: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::organizing, use::timekeeping, web::cms, works-with::pim
+zope-cmfcalendar1.5: suite::zope
+zope-cmfcalendar1.6: suite::zope
+zope-cmfcore: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-cmfcore1.4: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-cmfcore1.5: suite::zope
+zope-cmfcore1.6: suite::zope
+zope-cmfdefault: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-cmfdefault1.4: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-cmfdefault1.5: suite::zope
+zope-cmfdefault1.6: suite::zope
+zope-cmfdynamicviewfti: suite::zope
+zope-cmfformcontroller: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::checking, web::cms
+zope-cmfforum: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::chatting, web::cms
+zope-cmfldap: implemented-in::python, interface::web, protocol::http, protocol::ldap, role::plugin, suite::zope, web::cms, works-with::db
+zope-cmfmember: suite::zope
+zope-cmfpgforum: devel::lang:sql, implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms, works-with::db
+zope-cmfphoto: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms, works-with::image, works-with::image:raster
+zope-cmfphotoalbum: implemented-in::python, protocol::http, role::plugin, suite::zope, web::cms, works-with::image, works-with::image:raster
+zope-cmfplacefulworkflow: suite::zope
+zope-cmfplone: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-cmfquickinstallertool: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::configuring, web::cms
+zope-cmfsetup1.5: suite::zope
+zope-cmfsetup1.6: suite::zope
+zope-cmfsin: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms, works-with-format::xml, works-with-format::xml:rss
+zope-cmftopic: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-cmftopic1.4: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-cmftopic1.5: suite::zope
+zope-cmftopic1.6: suite::zope
+zope-cmfuid1.5: suite::zope
+zope-cmfuid1.6: suite::zope
+zope-cmfworkflow: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::organizing, web::cms
+zope-common: suite::zope
+zope-cookiecrumbler: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-coreblog: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::blog, web::cms
+zope-coreblog2: suite::zope, web::blog
+zope-cps: suite::zope
+zope-cps-localizer: suite::zope
+zope-cps-portaltransforms: suite::zope
+zope-cps-translationservice: suite::zope
+zope-cpsskins: suite::zope
+zope-dcworkflow: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::organizing, web::cms
+zope-dcworkflow1.5: suite::zope
+zope-dcworkflow1.6: suite::zope
+zope-debhelper: suite::zope
+zope-docfindereverywhere: devel::doc, implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-docfindertab: devel::doc, implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-dtmlcalendar: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::organizing, use::timekeeping, web::cms, works-with::pim
+zope-emarket: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::appserver, web::cms
+zope-epoz: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::editing, web::cms
+zope-extendedpathindex: suite::zope
+zope-externaleditor: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::editing, web::cms
+zope-extfile: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::storing, web::cms
+zope-exuserfolder: implemented-in::python, interface::web, protocol::http, role::plugin, security::authentication, suite::zope, web::cms
+zope-filesystemsite: devel::rcs, implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-formulator: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::checking, web::cms
+zope-generator: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-genericsetup: suite::zope
+zope-groupuserfolder: admin::user-management, implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-i18nfolder: devel::i18n, implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-i18nlayer: devel::i18n, implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-kinterbasdbda: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms, works-with::db
+zope-kupu: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::editing, web::cms
+zope-ldap: implemented-in::python, interface::web, protocol::http, protocol::ldap, role::plugin, suite::zope, web::cms, works-with::db
+zope-ldapmultiplugins: suite::zope
+zope-ldapuserfolder: protocol::ldap, role::plugin, suite::zope, web::cms, works-with::db
+zope-linguaplone: devel::i18n, implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-localizer: devel::i18n, implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-lockablefolder: implemented-in::python, interface::web, protocol::http, role::plugin, security::authentication, suite::zope, web::cms
+zope-loginmanager: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::login, web::cms
+zope-marshall: suite::zope
+zope-mimetypesregistry: suite::zope
+zope-mysqlda: role::plugin, suite::zope, works-with::db
+zope-parsedxml: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms, works-with-format::xml
+zope-pas: suite::zope
+zope-passwordresettool: suite::zope
+zope-photo: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms, works-with::image, works-with::image:raster
+zope-plonearticle: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms, works-with::image, works-with::image:raster
+zope-plonecollectorng: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms, works-with::bugs
+zope-ploneerrorreporting: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms, works-with::bugs
+zope-ploneexfile: suite::zope
+zope-plonelanguagetool: devel::i18n, implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-plonepas: suite::zope
+zope-plonetestcase: suite::zope
+zope-plonetranslations: devel::i18n, implemented-in::python, interface::web, protocol::http, role::app-data, suite::zope, web::cms
+zope-pluginregistry: suite::zope
+zope-popyda: network::server, role::program, suite::zope, web::server
+zope-portaltransforms: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::converting, web::cms
+zope-portaltransport: special::not-yet-tagged, special::not-yet-tagged::z, suite::zope
+zope-psycopgda: devel::lang:sql, implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms, works-with::db
+zope-psycopgda2: suite::zope
+zope-pts: devel::i18n, implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-quotafolder: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::storing, web::cms
+zope-rdfgrabber: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::searching, web::cms, works-with-format::xml
+zope-replacesupport: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::searching, web::cms
+zope-resourceregistries: suite::zope
+zope-securemailhost: suite::zope
+zope-speedpack: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-sqlrelayda: devel::lang:sql, implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::proxying, web::cms, works-with::db
+zope-statusmessages: suite::zope
+zope-stripogram: special::not-yet-tagged, special::not-yet-tagged::z, suite::zope
+zope-testcase: devel::testing-qa, implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-textindexng2: devel::library, implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::organizing, use::scanning, web::cms, works-with-format::html, works-with-format::pdf, works-with-format::postscript, works-with::dtp, works-with::spreadsheet, works-with::text
+zope-textindexng2-lib: suite::zope
+zope-tinytable: network::server, role::program, suite::zope, web::server
+zope-tinytableplus: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms, works-with::db
+zope-translationservice: devel::i18n, implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-ttwtype: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-validation: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::checking, web::cms
+zope-verbosesecurity: implemented-in::python, interface::web, protocol::http, role::plugin, security::authentication, suite::zope, web::cms
+zope-xmlmethods: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms, works-with-format::xml
+zope-zaaplugins: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms, works-with::db, works-with::dtp, works-with::spreadsheet
+zope-zattachmentattribute: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-zms: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-znavigator: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-zpatterns: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-zshell: implemented-in::python, interface::shell, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope-zwiki: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms, web::wiki
+zope2.6-verbosesecurity: special::obsolete, suite::zope
+zope2.7: devel::lang:python, implemented-in::python, interface::web, network::server, role::program, suite::zope, web::application, web::cgi, web::cms
+zope2.7-archetypes: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope2.7-generator: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms
+zope2.7-mimetypesregistry: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, web::cms, works-with::file
+zope2.7-portaltransforms: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::converting, web::cms
+zope2.7-validation: implemented-in::python, interface::web, protocol::http, role::plugin, suite::zope, use::checking, web::cms
+zope2.9: implemented-in::python, interface::daemon, interface::web, made-of::data:html, network::server, protocol::http, role::program, suite::zope, web::cms, works-with-format::html, works-with::db
+zope3: implemented-in::python, interface::daemon, interface::web, made-of::data:html, made-of::data:xml, network::server, protocol::http, role::program, suite::zope, web::appserver, works-with-format::html, works-with-format::plaintext, works-with-format::xml, works-with::db, works-with::text, works-with::unicode
+zope3-doc: role::documentation
+zopectl: admin::configuring, interface::commandline, role::program, scope::utility, suite::zope, use::configuring
+zopeedit: implemented-in::python, interface::x11, network::client, network::server, protocol::http, role::program, suite::zope, uitoolkit::tk, use::editing, web::server, x11::application
+zoph: devel::lang:sql, interface::web, role::program, scope::application, use::organizing, use::storing, web::application, works-with-format::jpg, works-with::db, works-with::image, works-with::image:raster
+zorp: network::firewall, role::program, scope::utility, security::firewall, use::proxying
+zorp-doc: made-of::data:html, role::documentation
+zorp-modules: filetransfer::ftp, implemented-in::python, network::firewall, protocol::ftp, security::firewall, special::invalid-tag, use::proxying
+zorroutils: admin::configuring, admin::hardware, hardware::detection, role::program, scope::utility
+zsafe: interface::x11, role::program, scope::utility, security::cryptography, uitoolkit::qt, use::storing, works-with::pim, x11::application
+zsh: devel::interpreter, implemented-in::c, interface::shell, network::client, protocol::ftp, role::program, scope::utility
+zsh-beta: interface::shell, role::program, scope::utility, uitoolkit::ncurses
+zsh-beta-doc: interface::shell, made-of::data:html, made-of::data:info, role::documentation, uitoolkit::ncurses
+zsh-doc: interface::shell, made-of::data:html, made-of::data:info, role::documentation, uitoolkit::ncurses
+zsh-static: interface::shell, role::program, scope::utility, uitoolkit::ncurses
+zsh30: interface::shell, role::program, scope::utility, uitoolkit::ncurses
+zsh30-doc: interface::shell, made-of::data:info, role::documentation, uitoolkit::ncurses
+zsh30-static: interface::shell, role::program, scope::utility, uitoolkit::ncurses
+zsnes: hardware::emulation, role::program, uitoolkit::sdl
+zssh: hardware::modem, interface::commandline, protocol::TODO, protocol::ssh, role::program, scope::utility, uitoolkit::ncurses, use::downloading
+zsync: admin::backup, interface::commandline, network::client, protocol::ip, role::program, use::downloading, use::synchronizing
+zvbi: hardware::video, interface::daemon, network::server, role::program, special::not-yet-tagged, special::not-yet-tagged::z, use::proxying
+zynaddsubfx: implemented-in::c++, interface::x11, role::program, sound::mixer, uitoolkit::fltk, use::playing, works-with::audio
+zziplib-bin: implemented-in::c, interface::commandline, role::program, scope::utility, use::compressing, use::storing, works-with-format::zip, works-with::archive
diff --git a/ept/test-data/debtags/vocabulary b/ept/test-data/debtags/vocabulary
new file mode 100644
index 0000000..61c3c4e
--- /dev/null
+++ b/ept/test-data/debtags/vocabulary
@@ -0,0 +1,2828 @@
+Facet: accessibility
+Status: needing-review
+Nature: energy
+Description: Accessibility Support
+
+Tag: accessibility::input
+Description: Input Systems
+ Applies to input methods for non-latin languages as well as special input
+ systems.
+
+Tag: accessibility::ocr
+Description: Text Recognition (OCR)
+ Optical Character Recognition
+
+Tag: accessibility::screen-magnify
+Description: Screen Magnification
+
+Tag: accessibility::screen-reader
+Description: Screen Reading
+
+Tag: accessibility::speech
+Description: Speech Synthesis
+
+Tag: accessibility::speech-recognition
+Description: Speech Recognition
+
+Tag: accessibility::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: accessibility::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: accessibility::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: accessibility::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Facet: admin
+Status: needing-review
+Nature: energy
+Description: System Administration
+
+Tag: admin::accounting
+Description: Accounting
+
+Tag: admin::automation
+Description: Automation and scheduling
+ Automating the execution of software in the system.
+
+Tag: admin::backup
+Description: Backup and Restoration
+
+Tag: admin::benchmarking
+Description: Benchmarking
+
+Tag: admin::boot
+Description: System Boot
+
+Tag: admin::cluster
+Description: Clustering
+
+Tag: admin::configuring
+Description: Configuration Tool
+
+Tag: admin::file-distribution
+Description: File Distribution
+
+Tag: admin::filesystem
+Description: Filesystem Tool
+ Creation, maintenance, and use of filesystems
+
+Tag: admin::forensics
+Description: Forensics and Recovery
+ Recovering lost or damaged data.
+ This tag will be split into admin::recovery
+ and security::forensics.
+
+Tag: admin::hardware
+Description: Hardware Support
+
+Tag: admin::install
+Description: System installation
+
+Tag: admin::issuetracker
+Description: Issue tracker
+
+Tag: admin::kernel
+Description: Kernel or Modules
+
+Tag: admin::logging
+Description: Logging
+
+Tag: admin::login
+Description: Login
+ Logging into the system
+
+Tag: admin::monitoring
+Description: Monitoring
+
+Tag: admin::package-management
+Description: Package Management
+
+Tag: admin::power-management
+Description: Power Management
+
+Tag: admin::recovery
+Description: Data recovery
+
+Tag: admin::user-management
+Description: User Management
+
+Tag: admin::virtualization
+Description: Virtualization
+ This is not hardware emulation, but rather those facilities that allow to
+ create many isolated compartments inside the same system.
+
+Tag: admin::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: admin::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: admin::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: admin::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Facet: culture
+Status: complete
+Nature: space
+Description: Culture
+ The culture for which the package provides special support
+
+Tag: culture::afrikaans
+Description: Afrikaans
+
+Tag: culture::arabic
+Description: Arabic
+
+Tag: culture::basque
+Description: Basque
+
+Tag: culture::bengali
+Description: Bengali
+
+Tag: culture::bokmaal
+Description: Norwegian Bokmaal
+
+Tag: culture::bosnian
+Description: Bosnian
+
+Tag: culture::brazilian
+Responsible: stratus@acm.org
+Description: Brazilian
+
+Tag: culture::bulgarian
+Description: Bulgarian
+
+Tag: culture::catalan
+Description: Catalan
+
+Tag: culture::chinese
+Description: Chinese
+
+Tag: culture::czech
+Description: Czech
+
+Tag: culture::croatian
+Description: Croatian
+
+Tag: culture::danish
+Description: Danish
+
+Tag: culture::dutch
+Description: Dutch
+
+Tag: culture::esperanto
+Description: Esperanto
+
+Tag: culture::estonian
+Description: Estonian
+
+Tag: culture::faroese
+Description: Faroese
+
+Tag: culture::farsi
+Description: Farsi
+
+Tag: culture::finnish
+Description: Finnish
+
+Tag: culture::french
+Description: French
+
+Tag: culture::german
+Description: German
+
+Tag: culture::greek
+Description: Greek
+
+Tag: culture::hebrew
+Description: Hebrew
+
+Tag: culture::hindi
+Description: Hindi
+
+Tag: culture::hungarian
+Description: Hungarian
+
+Tag: culture::icelandic
+Description: Icelandic
+
+Tag: culture::irish
+Description: Irish (Gaeilge)
+
+Tag: culture::italian
+Description: Italian
+
+Tag: culture::japanese
+Description: Japanese
+
+Tag: culture::korean
+Description: Korean
+
+Tag: culture::mongolian
+Description: Mongolian
+
+Tag: culture::nynorsk
+Description: Norwegian Nynorsk
+
+Tag: culture::norwegian
+Description: Norwegian
+
+Tag: culture::polish
+Description: Polish
+
+Tag: culture::portuguese
+Description: Portuguese
+
+Tag: culture::punjabi
+Description: Punjabi
+
+Tag: culture::romanian
+Description: Romanian
+
+Tag: culture::russian
+Description: Russian
+
+Tag: culture::serbian
+Description: Serbian
+
+Tag: culture::slovak
+Description: Slovak
+
+Tag: culture::spanish
+Description: Spanish
+
+Tag: culture::swedish
+Description: Swedish
+
+Tag: culture::taiwanese
+Description: Taiwanese
+
+Tag: culture::tajik
+Description: Tajik
+
+Tag: culture::tamil
+Description: Tamil
+
+Tag: culture::thai
+Description: Thai
+
+Tag: culture::turkish
+Description: Turkish
+
+Tag: culture::ukrainian
+Description: Ukrainian
+
+Tag: culture::uzbek
+Description: Uzbek
+
+Tag: culture::welsh
+Description: Welsh
+
+Tag: culture::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: culture::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: culture::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: culture::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Facet: devel
+Status: needing-review
+Nature: energy
+Description: Software Development
+
+Tag: devel::bugtracker
+Description: Bug Tracking
+
+Tag: devel::buildtools
+Description: Build Tool
+
+Tag: devel::code-generator
+Description: Code Generation
+ Parser, lexer and other code generators
+
+Tag: devel::compiler
+Description: Compiler
+
+Tag: devel::debian
+Description: Debian
+ Tools, documentation, etc. of use primarily to Debian developers.
+
+Tag: devel::debugger
+Description: Debugging
+
+Tag: devel::doc
+Description: Documentation
+
+Tag: devel::docsystem
+Description: Literate Programming
+ Tools and auto-documenters
+
+Tag: devel::ecma-cli
+Description: ECMA CLI
+ Tools and libraries for development with implementations of
+ the ECMA CLI (Common Language Infrastructure), like Mono
+ or DotGNU Portable.NET.
+
+Tag: devel::editor
+Description: Source Editor
+
+Tag: devel::examples
+Description: Examples
+
+Tag: devel::ide
+Description: IDE
+ Integrated Development Environment
+
+Tag: devel::interpreter
+Description: Interpreter
+
+Tag: devel::i18n
+Description: Internationalization
+
+Tag: devel::lang:ada
+Description: Ada Development
+
+Tag: devel::lang:c
+Description: C Development
+
+Tag: devel::lang:c++
+Description: C++ Development
+
+Tag: devel::lang:c-sharp
+Description: C# Development
+
+Tag: devel::lang:fortran
+Description: Fortran Development
+
+Tag: devel::lang:haskell
+Description: Haskell Development
+
+Tag: devel::lang:java
+Description: Java Development
+
+Tag: devel::lang:ecmascript
+Description: Ecmascript/JavaScript Development
+
+Tag: devel::lang:lisp
+Description: Lisp Development
+
+Tag: devel::lang:lua
+Description: Lua Development
+
+Tag: devel::lang:ml
+Description: ML Development
+
+Tag: devel::lang:objc
+Description: Objective-C Development
+
+Tag: devel::lang:ocaml
+Responsible: zack@debian.org
+Description: OCaml Development
+
+Tag: devel::lang:octave
+Description: GNU Octave Development
+
+Tag: devel::lang:pascal
+Description: Pascal Development
+
+Tag: devel::lang:perl
+Description: Perl Development
+
+Tag: devel::lang:php
+Description: PHP Development
+
+Tag: devel::lang:pike
+Description: Pike Development
+
+Tag: devel::lang:prolog
+Description: Prolog Development
+
+Tag: devel::lang:python
+Description: Python Development
+
+Tag: devel::lang:r
+Description: GNU R Development
+
+Tag: devel::lang:ruby
+Description: Ruby Development
+
+Tag: devel::lang:scheme
+Description: Scheme Development
+
+Tag: devel::lang:sql
+Description: SQL
+
+Tag: devel::lang:tcl
+Description: Tcl Development
+
+Tag: devel::library
+Description: Libraries
+
+Tag: devel::machinecode
+Description: Machine Code
+ Assemblers and other machine-code development tools.
+
+Tag: devel::modelling
+Description: Modelling
+ Programs and libraries that support creation of software models
+ with modelling languages like UML or OCL.
+
+Tag: devel::packaging
+Description: Packaging
+ Tools for packaging software.
+
+Tag: devel::prettyprint
+Description: Prettyprint
+ Code pretty-printing and indentation/reformatting.
+
+Tag: devel::profiler
+Description: Profiling
+ Profiling and optimization tools.
+
+Tag: devel::rcs
+Description: Revision Control
+ RCS (Revision Control System) and SCM (Software Configuration Manager)
+
+Tag: devel::rpc
+Description: RPC
+ Remote Procedure Call, Network transparent programming
+
+Tag: devel::runtime
+Description: Runtime Support
+ Runtime environments of various languages and systems.
+
+Tag: devel::testing-qa
+Description: Testing and QA
+ Tools for software testing and quality assurance.
+
+Tag: devel::ui-builder
+Description: User Interface
+ Tools for designing user interfaces.
+
+Tag: devel::web
+Description: Web
+ Web-centric frameworks, CGI libraries and other web-specific development
+ tools.
+
+Tag: devel::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: devel::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: devel::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: devel::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Tag: educational
+Flags: empty, expand
+Description: [Edu] Educational Software
+
+
+Facet: field
+Status: controversial
+Nature: space
+Comment: how broad is the definition of a "field"?
+Description: Field
+
+Tag: field::arts
+Description: Arts
+
+Tag: field::astronomy
+Description: Astronomy
+
+Tag: field::biology
+Description: Biology
+
+Tag: field::chemistry
+Description: Chemistry
+
+Tag: field::electronics
+Description: Electronics
+ Circuit editors and other electronics-related software
+
+Tag: field::finance
+Description: Financial
+ Accounting and financial software
+
+Tag: field::genealogy
+Description: Genealogy
+
+Tag: field::geography
+Description: Geography
+
+Tag: field::geology
+Description: Geology
+
+Tag: field::linguistics
+Description: Linguistics
+
+Tag: field::mathematics
+Description: Mathematics
+
+Tag: field::physics
+Description: Physics
+
+Tag: field::statistics
+Description: Statistics
+
+Tag: field::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: field::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: field::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: field::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Facet: game
+Status: needing-review
+Nature: energy
+Description: Games and Amusement
+
+Tag: game::adventure
+Description: Adventure
+
+Tag: game::arcade
+Description: Action and Arcade
+
+Tag: game::board
+Description: Board
+
+Tag: game::board:chess
+Description: Chess
+
+Tag: game::card
+Description: Card
+
+Tag: game::demos
+Description: Demo
+
+Tag: game::fps
+Description: First person shooter
+
+Tag: game::mud
+Description: Multiplayer RPG
+ MUDs, MOOs, and other multiplayer RPGs
+
+Tag: game::platform
+Description: Platform
+
+Tag: game::puzzle
+Description: Puzzle
+
+Tag: game::rpg
+Description: Role-playing
+
+Tag: game::rpg:rogue
+Description: Rogue-Like RPG
+ Games like Nethack, Angband etc.
+
+Tag: game::simulation
+Description: Simulation
+
+Tag: game::sport
+Description: Sport games
+
+Tag: game::sport:racing
+Description: Racing
+
+Tag: game::strategy
+Description: Strategy
+
+Tag: game::tetris
+Description: Tetris-like
+
+Tag: game::toys
+Description: Toy or Gimmick
+
+Tag: game::typing
+Description: Typing Tutor
+
+Tag: game::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: game::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: game::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: game::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Facet: hardware
+Status: draft
+Nature: energy
+Description: Hardware Enablement
+
+Tag: hardware::camera
+Description: Digital Camera
+
+Tag: hardware::detection
+Description: Hardware detection
+
+Tag: hardware::embedded
+Description: Embedded
+
+Tag: hardware::emulation
+Description: Emulation
+
+Tag: hardware::input
+Description: Input Devices
+
+Tag: hardware::input:joystick
+Description: Joystick
+
+Tag: hardware::input:keyboard
+Description: Keyboard
+
+Tag: hardware::input:mouse
+Description: Mouse
+
+Tag: hardware::joystick
+Description: Joystick (legacy)
+
+Tag: hardware::hamradio
+Description: Ham Radio
+
+Tag: hardware::laptop
+Description: Laptop
+
+Tag: hardware::modem
+Description: Modem
+
+Tag: hardware::modem:dsl
+Description: xDSL Modem
+
+Tag: hardware::power
+Description: Power Management
+
+Tag: hardware::power:ups
+Comment: out of place under power:
+Description: UPS
+ Uninterruptible Power Supply
+
+Tag: hardware::power:acpi
+Description: ACPI Power Management
+
+Tag: hardware::power:apm
+Description: APM Power Management
+
+Tag: hardware::printer
+Description: Printer
+
+Tag: hardware::scanner
+Description: Image-scanning hardware
+
+Tag: hardware::storage
+Description: Storage
+
+Tag: hardware::storage:cd
+Description: CD
+ Compact Disc
+
+Tag: hardware::storage:dvd
+Description: DVD
+ Digital Versatile Disc
+
+Tag: hardware::storage:floppy
+Description: Floppy disk
+
+Tag: hardware::usb
+Description: USB
+ Universal Serial Bus
+
+Tag: hardware::video
+Description: Graphics and Video
+
+Tag: hardware::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: hardware::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: hardware::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: hardware::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Facet: made-of
+Status: needing-review
+Nature: matter
+Description: Made Of
+ The languages or data formats used to make the package
+
+Tag: made-of::data:dictionary
+Description: Dictionary
+
+Tag: made-of::data:font
+Description: Font
+
+Tag: made-of::data:html
+Description: HTML Hypertext Markup Language
+
+Tag: made-of::data:icons
+Description: Icons
+
+Tag: made-of::data:info
+Description: Documentation in Info format
+
+Tag: made-of::data:man
+Description: Manuals in nroff format
+
+Tag: made-of::data:pdf
+Description: PDF Documents
+
+Tag: made-of::data:postscript
+Description: Postscript
+
+Tag: made-of::data:sgml
+Description: SGML, Standard Generalized Markup Language
+
+Tag: made-of::data:svg
+Description: SVG, Scalable Vector Graphics
+
+Tag: made-of::data:tex
+Description: TeX, LaTeX and DVI
+
+Tag: made-of::data:vrml
+Description: VRML Virtual Reality Markup Language
+
+Tag: made-of::data:xml
+Description: XML
+
+Tag: made-of::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: made-of::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: made-of::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: made-of::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Facet: interface
+Status: needing-review
+Nature: personality
+Description: User Interface
+
+Tag: interface::3d
+Description: Three-Dimensional
+
+Tag: interface::commandline
+Description: Command Line
+
+Tag: interface::daemon
+Description: Daemon
+ Runs in background, only a control interface is provided, usually on
+ commandline.
+
+Tag: interface::framebuffer
+Description: Framebuffer
+
+Tag: interface::shell
+Description: Command Shell
+
+Tag: interface::svga
+Description: Console SVGA
+
+Tag: interface::text-mode
+Description: Text-based Interactive
+
+Tag: interface::web
+Description: World Wide Web
+
+Tag: interface::x11
+Description: X Window System
+
+Tag: interface::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: interface::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: interface::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: interface::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Facet: implemented-in
+Description: Implemented in
+
+Tag: implemented-in::ada
+Description: Ada
+
+Tag: implemented-in::c
+Description: C
+
+Tag: implemented-in::c++
+Description: C++
+
+Tag: implemented-in::c-sharp
+Description: C#
+
+Tag: implemented-in::fortran
+Description: Fortran
+
+Tag: implemented-in::haskell
+Description: Haskell
+
+Tag: implemented-in::java
+Description: Java
+
+Tag: implemented-in::ecmascript
+Description: Ecmascript/Javascript
+
+Tag: implemented-in::lisp
+Description: Lisp
+
+Tag: implemented-in::lua
+Description: Lua
+
+Tag: implemented-in::ml
+Description: ML
+
+Tag: implemented-in::objc
+Description: Objective C
+
+Tag: implemented-in::ocaml
+Responsible: zack@debian.org
+Description: OCaml
+
+Tag: implemented-in::perl
+Description: Perl
+
+Tag: implemented-in::php
+Description: PHP
+
+Tag: implemented-in::pike
+Description: Pike
+
+Tag: implemented-in::python
+Description: Python
+
+Tag: implemented-in::r
+Description: GNU R
+
+Tag: implemented-in::ruby
+Description: Ruby
+
+Tag: implemented-in::scheme
+Description: Scheme
+
+Tag: implemented-in::shell
+Description: sh, bash, ksh, tcsh and other shells
+
+Tag: implemented-in::tcl
+Description: TCL Tool Command Language
+
+Tag: implemented-in::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+
+Facet: junior
+Status: draft
+Nature: personality
+Description: Junior Applications
+ Applications recommended for younger users
+
+Tag: junior::arcade
+Implies: junior
+Description: Arcade games
+
+Tag: junior::games-gl
+Implies: junior
+Description: 3D games
+
+Tag: junior::meta
+Implies: junior
+Comment: not that the target group knows what a metapackage is
+Description: Metapackages
+
+Tag: junior::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: junior::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: junior::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Facet: mail
+Status: controversial
+Nature: personality
+Description: Electronic Mail
+
+Tag: mail::filters
+Description: Filters
+
+Tag: mail::imap
+Description: IMAP Protocol
+
+Tag: mail::list
+Description: Mailing Lists
+
+Tag: mail::notification
+Description: Notification
+ Software that notifies users about status of mailbox.
+
+Tag: mail::pop
+Description: POP3 Protocol
+
+Tag: mail::smtp
+Description: SMTP Protocol
+
+Tag: mail::delivery-agent
+Description: Mail Delivery Agent
+ Software that delivers mail to users' mailboxes.
+
+Tag: mail::transport-agent
+Description: Mail Transport Agent
+ Software that routes and transmits mail accross the system and the network.
+
+Tag: mail::user-agent
+Description: Mail user agent
+ Software that allows users to access e-mail.
+
+Tag: mail::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: mail::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: mail::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: mail::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Facet: office
+Description: Office and business
+
+Tag: office::finance
+Description: Finance
+
+Tag: office::groupware
+Description: Groupware
+
+Tag: office::presentation
+Description: Presentation
+
+Tag: office::project-management
+Description: Project management
+
+Tag: office::spreadsheet
+Description: Spreadsheet
+
+
+Facet: works-with
+Status: needing-review
+Nature: energy
+Description: Works with
+ These tags describe what is the kind of data (or even processes, or people)
+ that the package can work with.
+
+Tag: works-with::3dmodel
+Implies: works-with
+Description: 3D Model
+
+Tag: works-with::archive
+Implies: works-with
+Description: Archive
+
+Tag: works-with::audio
+Description: Audio
+
+Tag: works-with::bugs
+Description: Bugs or Issues
+
+Tag: works-with::db
+Description: Databases
+
+Tag: works-with::dictionary
+Description: Dictionaries
+
+Tag: works-with::dtp
+Description: Desktop Publishing (DTP)
+
+Tag: works-with::fax
+Description: Faxes
+
+Tag: works-with::file
+Description: Files
+
+Tag: works-with::font
+Description: Fonts
+
+Tag: works-with::im
+Description: Instant Messages
+ The package can connect to some IM network (or networks).
+
+Tag: works-with::logfile
+Description: System Logs
+
+Tag: works-with::mail
+Description: Email
+
+Tag: works-with::music-notation
+Description: Music Notation
+
+Tag: works-with::network-traffic
+Description: Network traffic
+ Routers, shapers, sniffers, firewalls and other tools
+ that work with a stream of network packets.
+
+Tag: works-with::people
+Description: People
+
+Tag: works-with::pim
+Description: Personal Information
+
+Tag: works-with::image
+Description: Image
+
+Tag: works-with::image:raster
+Description: Raster Image
+ Images made of dots, such as photos and scans
+
+Tag: works-with::image:vector
+Description: Vector Image
+ Images made of lines, such as graphs or most clipart
+
+Tag: works-with::software:package
+Description: Packaged software
+
+Tag: works-with::software:running
+Description: Running programs
+
+Tag: works-with::software:source
+Description: Source code
+
+Tag: works-with::spreadsheet
+Description: Spreadsheet
+
+Tag: works-with::text
+Description: Text
+
+Tag: works-with::unicode
+Description: Unicode
+ Please do not tag programs with simple unicode support,
+ doing so would make this tag useless.
+ Ultimately all applications should have unicode support.
+
+Tag: works-with::video
+Description: Video and Animation
+
+Tag: works-with::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: works-with::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: works-with::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: works-with::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Facet: works-with-format
+Status: needing-review
+Nature: energy
+Description: Supports Format
+
+Tag: works-with-format::bib
+Description: BibTeX
+ BibTeX list of references
+
+Tag: works-with-format::dvi
+Description: TeX DVI
+ DeVice Independent page description file, usually generated
+ by TeX or LaTeX.
+
+Tag: works-with-format::ldif
+Description: LDIF
+ Lightweight Directory Interchange Format
+
+Tag: works-with-format::vrml
+Description: VRML 3D Model
+ Virtual Reality Markup Language
+
+Tag: works-with-format::iso9660
+Description: ISO 9660 CD Filesystem
+
+Tag: works-with-format::tar
+Description: Tar Archives
+
+Tag: works-with-format::zip
+Description: Zip Archives
+
+Tag: works-with-format::mp3
+Description: MP3 Audio
+
+Tag: works-with-format::mpc
+Description: Musepack Audio
+
+Tag: works-with-format::oggvorbis
+Description: Ogg Vorbis Audio
+
+Tag: works-with-format::wav
+Description: MS RIFF Audio
+ Wave uncompressed audio format
+
+Tag: works-with-format::jpg
+Description: JPEG, Joint Picture Expert Group
+
+Tag: works-with-format::gif
+Description: GIF, Graphics Interchange Format
+
+Tag: works-with-format::png
+Description: PNG, Portable Network Graphics
+
+Tag: works-with-format::svg
+Description: SVG, Scalable Vector Graphics
+
+Tag: works-with-format::tiff
+Description: TIFF, Tagged Image File Format
+
+Tag: works-with-format::docbook
+Description: Docbook
+
+Tag: works-with-format::html
+Description: HTML Hypertext Markup Language
+
+Tag: works-with-format::info
+Description: Documentation in Info format
+
+Tag: works-with-format::man
+Description: Manpages
+
+Tag: works-with-format::pdf
+Description: PDF Documents
+
+Tag: works-with-format::plaintext
+Description: Plain text
+
+Tag: works-with-format::postscript
+Description: Postscript
+
+Tag: works-with-format::sgml
+Description: SGML, Standard Generalized Markup Language
+
+Tag: works-with-format::tex
+Description: TeX and LaTeX
+
+Tag: works-with-format::oggtheora
+Description: Ogg Theora Video
+
+Tag: works-with-format::xml
+Description: XML
+
+Tag: works-with-format::xml:rss
+Description: RSS Rich Site Summary
+ XML dialect used to describe resources and websites.
+
+Tag: works-with-format::xml:xslt
+Description: XSL Transformations (XSLT)
+
+Tag: works-with-format::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: works-with-format::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: works-with-format::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: works-with-format::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Facet: scope
+Description: Scope
+
+Tag: scope::utility
+Description: Utility
+ A narrow-scoped program for particular use case or few use cases. It
+ only does something 10-20% of users in the field will need. Often has
+ functionality missing from related applications.
+
+Tag: scope::application
+Description: Application
+ Broad-scoped program for general use. It probably has functionality
+ for 80-90% of use cases. The pieces that remain are usually to be
+ found as utilities.
+
+Tag: scope::suite
+Description: Suite
+ Comprehensive suite of applications and utilities on the scale of
+ desktop environment or base operating system.
+
+Tag: scope::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: scope::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: scope::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Facet: role
+Status: draft
+Nature: personality
+Description: Role
+
+Tag: role::program
+Description: Program
+ Executable computer program.
+
+Tag: role::shared-lib
+Description: Shared Library
+ Shared libraries used by one or more programs.
+
+Tag: role::plugin
+Description: Plugin
+ Add-on, pluggable program fragments enhancing functionality
+ of some program or system.
+
+Tag: role::devel-lib
+Description: Development Library
+ Library and header files used in software development or building.
+
+Tag: role::source
+Description: Source Code
+ Human-readable code of a program, library or a part thereof.
+
+Tag: role::documentation
+Description: Documentation
+
+Tag: role::data
+Description: Standalone Data
+
+Tag: role::app-data
+Description: Application Data
+
+Tag: role::dummy
+Description: Dummy Package
+ Packages used for upgrades and transitions.
+
+Tag: role::metapackage
+Description: Metapackage
+ Packages that install suites of other packages.
+
+Tag: role::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: role::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: role::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: role::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Facet: security
+Status: needing-review
+Nature: energy
+Description: Security
+ How the package is related to system security
+
+Tag: security::antivirus
+Description: Anti-Virus
+
+Tag: security::authentication
+Description: Authentication
+
+Tag: security::cryptography
+Description: Cryptography
+ Cryptographic and privacy-oriented tools.
+
+Tag: security::firewall
+Description: Firewall
+
+Tag: security::forensics
+Description: Forensics
+ Post-mortem analysis of intrusions.
+
+Tag: security::ids
+Description: Intrusion Detection
+
+Tag: security::integrity
+Description: File Integrity
+ Tools to monitor system for changes in filesystem and report changes
+ or tools providing other means to check system integrity.
+
+Tag: security::log-analyzer
+Description: Log Analyzer
+
+Tag: security::privacy
+Description: Privacy
+
+Tag: security::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: security::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: security::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: security::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Facet: sound
+Status: needing-review
+Nature: energy
+Responsible: free@agnula.org
+Description: Sound and Music
+
+Tag: sound::compression
+Implies: sound
+Description: Compression
+
+Tag: sound::midi
+Implies: sound
+Description: MIDI Software
+
+Tag: sound::mixer
+Implies: sound
+Description: Mixing
+
+Tag: sound::player
+Equates: use::playing && works-with::audio
+Description: Playback
+
+Tag: sound::recorder
+Implies: sound
+Description: Recording
+
+Tag: sound::sequencer
+Implies: sound
+Description: MIDI Sequencing
+
+Tag: sound::speech
+Implies: sound
+Description: Speech Synthesis
+
+Tag: sound::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: sound::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: sound::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: sound::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Facet: special
+Status: draft
+Description: Service tags
+
+Tag: special::auto-inst-parts
+Implies: special
+Description: Secondary packages users won't install directly
+
+Tag: special::completely-tagged
+Description: Package has been tagged with full care
+ This package has been tagged by carefully checking and pondering tags from
+ every facet, and it can be used as an example of good tagging and to train
+ probabilistic tag inference altorithms.
+ .
+ This tag will also be automatically removed from all packages after vocabulary
+ updates.
+
+Tag: special::meta
+Implies: special
+Description: Meta Packages for fast installation
+
+Tag: special::ipv6-nosupport
+Description: NO IPv6 support
+ Use this for packages that cannot yet or will never support IPv6.
+
+Tag: special::obsolete
+Implies: special
+Description: Obsolete Packages
+ Packages that are not used any longer, also packages only left for upgrade
+ purposes (merged / split packages)
+
+Tag: special::invalid-tag
+Description: Invalid tag
+ This tag means that the tag database contains a tag which is not present in
+ the tag vocabulary. The presence of this tag indicates a software bug: this
+ should never show up.
+
+Tag: special::not-yet-tagged
+Implies: special
+Description: !Not yet tagged packages!
+
+Tag: special::not-yet-tagged::a
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with a
+
+Tag: special::not-yet-tagged::b
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with b
+
+Tag: special::not-yet-tagged::c
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with c
+
+Tag: special::not-yet-tagged::d
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with d
+
+Tag: special::not-yet-tagged::e
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with e
+
+Tag: special::not-yet-tagged::f
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with f
+
+Tag: special::not-yet-tagged::g
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with g
+
+Tag: special::not-yet-tagged::h
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with h
+
+Tag: special::not-yet-tagged::i
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with i
+
+Tag: special::not-yet-tagged::j
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with j
+
+Tag: special::not-yet-tagged::k
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with k
+
+Tag: special::not-yet-tagged::l
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with l
+
+Tag: special::not-yet-tagged::m
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with m
+
+Tag: special::not-yet-tagged::n
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with n
+
+Tag: special::not-yet-tagged::o
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with o
+
+Tag: special::not-yet-tagged::p
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with p
+
+Tag: special::not-yet-tagged::q
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with q
+
+Tag: special::not-yet-tagged::r
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with r
+
+Tag: special::not-yet-tagged::s
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with s
+
+Tag: special::not-yet-tagged::t
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with t
+
+Tag: special::not-yet-tagged::u
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with u
+
+Tag: special::not-yet-tagged::v
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with v
+
+Tag: special::not-yet-tagged::w
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with w
+
+Tag: special::not-yet-tagged::x
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with x
+
+Tag: special::not-yet-tagged::y
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with y
+
+Tag: special::not-yet-tagged::z
+Implies: special, special::not-yet-tagged
+Description: Not yet tagged packages with z
+
+Tag: special::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+
+Facet: suite
+Status: controversial
+Nature: personality
+Comment: What is considered a 'suite'? So far the idea was to just use tags in
+ this facet to group together related packages.
+Description: Application Suite
+
+Tag: suite::apache
+Description: Apache
+
+Tag: suite::debian
+Description: Debian
+
+Tag: suite::eclipse
+Description: Eclipse
+ Eclipse tool platform and plugins.
+
+Tag: suite::emacs
+Description: Emacs
+
+Tag: suite::gforge
+Description: GForge
+ A collaborative development platform.
+
+Tag: suite::gimp
+Description: The GIMP
+
+Tag: suite::gkrellm
+Description: GKrellM Monitors
+
+Tag: suite::gnome
+Description: GNOME
+
+Tag: suite::gnu
+Description: GNU
+ Gnu's Not Unix. The package is part of the official GNU project
+
+Tag: suite::gnustep
+Description: GNUStep
+ GNUStep Desktop and WindowMaker.
+
+Tag: suite::kde
+Description: KDE
+
+Tag: suite::mozilla
+Description: Mozilla
+ Mozilla Browser and extensions
+
+Tag: suite::netscape
+Description: Netscape Navigator
+ The pre-6.0 versions of netscape browser
+
+Tag: suite::openoffice
+Description: OpenOffice.org
+
+Tag: suite::opie
+Description: Open Palmtop (OPIE)
+
+Tag: suite::roxen
+Description: Roxen
+
+Tag: suite::samba
+Description: SAMBA
+
+Tag: suite::webmin
+Description: Webmin
+
+Tag: suite::xfce
+Description: XFce
+ Lightweight desktop environment for X11.
+
+Tag: suite::xmms
+Description: XMMS
+
+Tag: suite::xmms2
+Description: XMMS 2
+
+Tag: suite::zope
+Description: ZOPE
+ The zope (web) publishing platform.
+
+Tag: suite::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: suite::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: suite::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: suite::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Facet: protocol
+Status: draft
+Nature: matter
+Description: Network Protocol
+
+Tag: protocol::db:mysql
+Description: MySQL
+ Protocol for accessing MySQL database server.
+
+Tag: protocol::db:psql
+Description: PostgreSQL
+ Protocol for accessing PostgreSQL database server.
+
+Tag: protocol::ldap
+Description: LDAP
+ Lightweight Directory Access Protocol
+
+Tag: protocol::atm
+Description: ATM
+ Asynchronous Transfer Mode, a high speed protocol for communication between
+ computers in a network.
+ .
+ While ATM is used to implement *DSL networks, it has never gained widespread
+ use as a technology for building local area networks (LANs), for which it was
+ originally intended.
+ .
+ Link: http://en.wikipedia.org/wiki/Asynchronous_Transfer_Mode
+
+Tag: protocol::bittorrent
+Description: BitTorrent
+ BitTorrent is a protocol for peer-to-peer based file distribution over
+ network.
+ .
+ Although the actual data transport happens between BitTorrent clients, one
+ central node, the so-called trackers, is needed to keep a list of all clients
+ that download or provide the same file.
+ .
+ Link: http://www.bittorrent.com/
+ Link: http://en.wikipedia.org/wiki/BitTorrent
+
+Tag: protocol::corba
+Description: CORBA
+ Common Object Request Broker Architecture, a standard for interoperability
+ between programs written in different languages and running on different
+ hardware platforms. CORBA includes a client-server network protocol for
+ distributed computing.
+ .
+ With this network protocol, CORBA clients on different computers and written
+ in different languages can exchange objects over a CORBA server such as orbit2
+ or omniORB.
+ .
+ Link: http://www.corba.org/
+
+Tag: protocol::dhcp
+Description: DHCP
+ Dynamic Host Configuration Protocol, a client-server network protocol for
+ automatic assignment of dynamic IP addresses to computers in a TCP/IP network,
+ rather than giving each computer a static IP address.
+ .
+ Link: http://en.wikipedia.org/wiki/Dynamic_Host_Configuration_Protocol
+ Link: http://www.ietf.org/rfc/rfc2131.txt
+
+Tag: protocol::dns
+Description: DNS
+ Domain Name System, a protocol to request information associated with domain
+ names (like "www.debian.org"), most prominently the IP address. The protocol
+ is used in communication with a DNS server (like BIND).
+ .
+ For the Internet, there are 13 root DNS servers around the world that keep the
+ addresses of all registered domain names and provide this information to the
+ DNS servers of Internet service providers.
+ .
+ Link: http://en.wikipedia.org/wiki/Domain_Name_System
+
+Tag: protocol::ethernet
+Description: Ethernet
+ Ethernet is the most popular networking technology for creating local area
+ networks (LANs).
+ .
+ The computers in an Ethernet network communicate over twisted-pair or fibre
+ cables and are identified by their MAC address. Several different types of
+ Ethernet exist, distinguishable by the maximum connection speed. The most
+ widespread types today are 100MBit/s (100BASE-*) or 1GBit/s (1000BASE-*).
+ .
+ Link: http://en.wikipedia.org/wiki/Ethernet
+
+Tag: protocol::fidonet
+Description: FidoNet
+ FidoNet is a mailbox system that enjoyed large popularity in the 1980s and
+ 1990s.
+ .
+ The communication between the clients and FidoNet servers was usually carried
+ out over the telephone network using modems and could be used for transferring
+ messages (comparable to email) and files.
+ .
+ Link: http://www.fidonet.org/
+ Link: http://en.wikipedia.org/wiki/Fidonet
+
+Tag: protocol::finger
+Description: Finger
+ The Name/Finger protocol is a simple network protocol to provide extensive,
+ public information about users of a computer, such as email address, telephone
+ numbers, full names etc.
+ .
+ Due to privacy concerns, the Finger protocol is not widely used any more,
+ while it widespread distribution in the early 1990s.
+ .
+ Link: http://en.wikipedia.org/wiki/Finger_protocol
+ Link: http://www.ietf.org/rfc/rfc1288.txt
+
+Tag: protocol::ftp
+Description: FTP
+ File Transfer Protocol, a protocol for exchanging and manipulation files over
+ networks and extensively used on the Internet.
+ .
+ The communication between FTP servers and clients uses two channels, the
+ control and the data channel. While FTP was originally used with
+ authentication only, most FTP servers on the Internet provide anonymous,
+ passwordless access. Since FTP does not support encryption, sensitive data
+ transfer is carried out over SFTP today.
+ .
+ Link: http://en.wikipedia.org/wiki/File_Transfer_Protocol
+ Link: http://www.ietf.org/rfc/rfc0959.txt
+
+Tag: protocol::http
+Description: HTTP
+ HyperText Transfer Protocol, one of the most important protocols for the
+ World Wide Web.
+ .
+ It controls the data transfer between HTTP servers such as Apache and HTTP
+ clients, which are web browsers in most cases. HTTP resources are requested
+ via URLs (Universal Resource Locators). While HTTP normally only supports file
+ transfer from server to client, the protocol supports sending information to
+ HTTP servers, most prominently used in HTML forms.
+ .
+ Link: http://en.wikipedia.org/wiki/Http
+ Link: http://www.ietf.org/rfc/rfc2616.txt
+
+Tag: protocol::ident
+Description: Ident
+ The Ident Internet protocol helps to identify or authenticate the user of
+ a network connection.
+ .
+ Link: http://en.wikipedia.org/wiki/Ident
+
+Tag: protocol::imap
+Description: IMAP
+ Internet Message Access Protocol, a protocol used for accessing email on a
+ server from a email client such as KMail or Evolution.
+ .
+ When using IMAP, emails stay on the server and can be categorized, edited,
+ deleted etc. there, instead of having the user download all messages onto
+ the local computer, as POP3 does.
+ .
+ Link: http://en.wikipedia.org/wiki/Internet_Message_Access_Protocol
+
+Tag: protocol::ip
+Description: IP
+ Internet Protocol (v4), a core protocol of the Internet protocol suite and
+ the very basis of the Internet.
+ .
+ Every computer that is connected to the Internet has an IP address (a 4-byte
+ number, typically represented in dotted notation like 192.25.206.10).
+ Internet IP addresses are given out by the Internet Corporation for Assigned
+ Names and Numbers (ICANN). Normally, computers on the Internet are not
+ accessed by their IP address, but by their domain name.
+ .
+ Link: http://en.wikipedia.org/wiki/IPv4
+ Link: http://www.ietf.org/rfc/rfc791.txt
+
+Tag: protocol::ipv6
+Description: IPv6
+ Internet Protocol (v6), the next-generation Internet protocol, which overcomes
+ the restrictions of IP (v4), like shortage of IP addresses, and is supposed to
+ form the new basis of the Internet in the future, replacing IP (v4).
+ .
+ Many programs already support IPv6 along with IP (v4), although it is still
+ seldomly used.
+ .
+ Link: http://en.wikipedia.org/wiki/IPv6
+ Link: http://www.ipv6.org/
+
+Tag: protocol::irc
+Description: IRC
+ Internet Relay Chat, a protocol for text chatting over network, extensively
+ used on the Internet. It supports chat rooms, so-called channels, as well as
+ private, one-to-one communication.
+ .
+ IRC servers are organized in networks, so that a client can connect to a
+ geographically near IRC server, that itself is connected to other IRC servers
+ spread over the whole world.
+ .
+ The official Debian channel is #debian on the freenode network.
+ .
+ Link: http://en.wikipedia.org/wiki/Internet_Relay_Chat
+
+Tag: protocol::jabber
+Description: Jabber
+ The Jabber protocol is an instant messaging protocol on the basis of the XMPP
+ protocol. Additionally to private one-to-one communication, it also supports
+ chat rooms, and it is used in the Jabber IM network as well as for the IM
+ capabilities for the new GoogleTalk network.
+ .
+ In contrast to other IM networks like MSN, ICQ or AIM, the Jabber servers are
+ free software and can be used to create a private chat platform or have an own
+ server to connect to the Jabber network.
+ .
+ Link: http://www.jabber.org
+ Link: http://en.wikipedia.org/wiki/Jabber
+
+Tag: protocol::kerberos
+Description: Kerberos
+ Kerberos is a authentication protocol for computer networks for secure
+ authentication over an otherwise insecure network, using symmetric
+ cryptography and a third party service provider, that is trusted both by
+ client and server.
+ .
+ The authentication mechanism provided by Kerberos is mutual, so that not only
+ a server can be sure of a client's identity, but also a client can be sure a
+ connection to a server is not intercepted.
+ .
+ Link: http://en.wikipedia.org/wiki/Kerberos_%28protocol%29
+ Link: http://http://www.ietf.org/rfc/rfc4120.txt
+
+Tag: protocol::lpr
+Description: LPR
+ The Line Printer Daemon protocol, a protocol used for accessing or providing
+ network print services in a Unix network, but also used for local setups.
+ .
+ CUPS, the Common Unix Printing System, was developed to replace the old
+ LPD/LPR system, while maintaining backwards compatibility.
+ .
+ Link: http://en.wikipedia.org/wiki/Line_Printer_Daemon_protocol
+ Link: http://www.ietf.org/rfc/rfc1179.txt
+
+Tag: protocol::msn-messenger
+Description: MSN Messenger
+ The MSN messenger protocol is the protocol that is used by Microsoft's own
+ instant messaging network.
+ .
+ The protocol is a proprietary protocol. Although Microsoft once send a draft
+ of the protocol specification to the IETF, it has since dated out and clients
+ that connect to the MSN Messenger network have to rely on reverse-engineered
+ information.
+ .
+ Link: http://www.hypothetic.org/docs/msn/
+
+Tag: protocol::nfs
+Description: NFS
+ Network File System, a protocol originally developed by Sun Microsystems in
+ 1984 and defined in RFCs 1094, 1813, and 3530 (obsoletes 3010) as a
+ distributed file system, allows a user on a client computer to access files
+ over a network as easily as if attached to its local disks.
+ .
+ Link: http://en.wikipedia.org/wiki/Network_File_System
+
+Tag: protocol::nntp
+Description: NNTP
+ Network News Transfer Protocol, a protocol for reading in writing Usenet
+ articles (a Usenet article is comparable with an email), but also used
+ among NNTP servers to transfer articles.
+ .
+ Link: http://en.wikipedia.org/wiki/Network_News_Transfer_Protocol
+ Link: http://www.ietf.org/rfc/rfc977.txt
+
+Tag: protocol::oscar
+Description: OSCAR (AIM/ICQ)
+ Open System for CommunicAtion in Realtime, an instant messaging used by
+ AOL's instant messaging network (AIM). The protocol versions 7, 8 and 9
+ of the ICQ IM network are also instances of the OSCAR protocol.
+ .
+ OSCAR is a binary proprietary protocol. Since there is no official documentation,
+ clients that connect to AIM or ICQ have to rely on information that has
+ been reverse-engineered.
+ .
+ Link: http://en.wikipedia.org/wiki/OSCAR_protocol
+ Link: http://www.oilcan.org/oscar/
+
+Tag: protocol::pop3
+Description: POP3
+ Post Office Protocol, a protocol to download emails from a mail server,
+ designed for users that have only intermittent connection to the Internet.
+ .
+ In contrast to IMAP server, messages that are downloaded via POP3 are not
+ supposed to stay on the server afterwards, since POP3 does not support
+ multiple mailboxes for one account on the server.
+ .
+ Link: http://en.wikipedia.org/wiki/Post_Office_Protocol
+ Link: http://www.ietf.org/rfc/rfc1939.txt
+
+Tag: protocol::radius
+Description: RADIUS
+ Remote Authentication Dial In User Service, a protocol for authentication,
+ authorization and accounting of network access, mostly used by Internet
+ service providers handle handle dial-up Internet connections.
+ .
+ Link: http://en.wikipedia.org/wiki/RADIUS
+ Link: http://www.ietf.org/rfc/rfc2865.txt
+
+Tag: protocol::sftp
+Description: SFTP
+ SSH File Transfer Protocol, a protocol for secure, encrypting file exchange
+ and manipulation over insecure networks, using the SSH protocol.
+ .
+ SFTP provides a complete set of file system operations, different from its
+ predecessor SCP, which only allowed file transfer. It is not, other than the
+ name might suggest, the a version of the FTP protocol executed through an
+ SSH channel.
+ .
+ Link: http://en.wikipedia.org/wiki/SSH_file_transfer_protocol
+
+Tag: protocol::smb
+Description: SMB
+ Server Message Block, a protocol for providing file access and printer sharing
+ over network, mainly used by Microsoft Windows(tm). CIFS (Common Internet File
+ System) is a synonym for SMB
+ .
+ Although SMB is a proprietary protocol, the Samba project reverse-engineered
+ the protocol and developed both client and server programs for better
+ interoperability in mixed Unix/Windows networks.
+ .
+ Link: http://en.wikipedia.org/wiki/Server_Message_Block
+ Link: http://www.samba.org/
+
+Tag: protocol::smtp
+Description: SMTP
+ Simple Mail Transfer Protocol, a protocol or for transmitting emails over the
+ Internet.
+ .
+ Every SMTP server utilizes SMTP to hand on emails to the next mail server
+ until an email arrives at its destination, from where it is usually retrieved
+ via POP3 or IMAP
+ .
+ Link: http://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol
+ Link: http://www.ietf.org/rfc/rfc2821.txt
+
+Tag: protocol::snmp
+Description: SNMP
+ Simple Network Management Protocol, a member of the Internet protocol suite
+ and used for monitoring or configuring network devices.
+ .
+ SNMP servers normally run on network equipment like routers.
+ .
+ Link: http://en.wikipedia.org/wiki/Simple_Network_Management_Protocol
+ Link: http://www.ietf.org/rfc/rfc3411.txt
+
+
+Tag: protocol::soap
+Description: SOAP
+ Simple Object Access Protocol, a protocol for exchanging messages between
+ different computers in a network. The messages are encoded in XML and usually
+ sent over HTTP.
+ .
+ SOAP is used to provide APIs to web services, such as the Google API to
+ utilize Google's searching engine from client applications.
+ .
+ Link: http://en.wikipedia.org/wiki/SOAP
+ Link: http://www.w3.org/TR/soap/
+
+Tag: protocol::ssh
+Description: SSH
+ Secure Shell, a protocol for secure, encrypted network connections. SSH can
+ be used to execute programs on a remote host with an SSH server over secure
+ otherwise insecure protocols through an SSH channel. The main use is, as the
+ name suggest, to provide encrypted login and shell access on remote servers.
+ .
+ SSH authentication can be done with password or, which is the preferred
+ mechanism, via asymmetric public/private key cryptography.
+ .
+ Link: http://en.wikipedia.org/wiki/Secure_Shell
+
+Tag: protocol::ssl
+Description: SSL/TLS
+ Secure Socket Layer/Transport Layer Security, a protocol that provides
+ secure encrypted communication on the Internet. It is used to authenticate
+ the identity of a service provider (such as a Internet banking server) and
+ to secure the communications channel.
+ .
+ Otherwise insecure protocols such as FTP, HTTP, IMAP or SMTP can be
+ transmitted over SSL/TLS to secure the transmitted data. In this case, an
+ "S" is added to the protocol name, like HTTPS, FTPS etc.
+ .
+ Link: http://en.wikipedia.org/wiki/Secure_Sockets_Layer
+
+Tag: protocol::tcp
+Description: TCP
+ Transport Control Protocol, a core protocol of the Internet protocol suite
+ and used for data transport.
+ .
+ TCP is used as the transport protocol for many services on the Internet,
+ such as FTP, HTTP, SMTP, POP3, IMAP, NNTP etc.
+ .
+ Link: http://en.wikipedia.org/wiki/Transmission_Control_Protocol
+ Link: http://www.ietf.org/rfc/rfc793.txt
+
+Tag: protocol::udp
+Description: UDP
+ User Datagram Protocol, a core protocol of the Internet protocol suite
+ and used for data transport.
+ .
+ UDP is not as reliable as TCP, but faster and thus better fit for
+ time-sensitive purposes, like the DNS protocol and VoIP.
+ .
+ Link: http://en.wikipedia.org/wiki/User_Datagram_Protocol
+ Link: http://www.ietf.org/rfc/rfc768.txt
+
+Tag: protocol::voip
+Description: VoIP
+ Voice over IP, a general term for protocols that route voice conversations
+ over the Internet.
+ .
+ Popular VoIP protocols are SIP, H.323 and IAX.
+ .
+ Link: http://en.wikipedia.org/wiki/Voice_over_IP
+
+Tag: protocol::webdav
+Description: WebDAV
+ Web-based Distributed Authoring and Versioning, a extension of the HTTP
+ protocol to support creating and changing documents on an HTTP server. Thus,
+ the client can access the documents on an HTTP server as it would those on the
+ local file system.
+ .
+ Link: http://en.wikipedia.org/wiki/WebDAV
+ Link: http://www.ietf.org/rfc/rfc2518.txt
+
+Tag: protocol::xmlrpc
+Description: XML-RPC
+ XML Remote Procedure Call, a simple protocol for remote procedure calls that
+ uses XML for encoding and the HTTP protocol for transport.
+ .
+ SOAP, which is a considerably more sophisticated protocol, was developed from
+ XML-RPC.
+ .
+ Link: http://en.wikipedia.org/wiki/XML-RPC
+ Link: http://www.xmlrpc.com/
+
+Tag: protocol::yahoo-messenger
+Description: Yahoo! Messenger
+ The Yahoo! Messenger protocol is used to connect to Yahoo!'s instant messaging
+ network.
+ .
+ This a proprietary binary protocol without any official documentation. Clients
+ that connect to the Yahoo! Messenger network have to rely on reverse-engineered
+ information.
+ .
+ Link: http://en.wikipedia.org/wiki/Yahoo%21_Messenger
+ Link: http://www.venkydude.com/articles/yahoo.htm
+
+Tag: protocol::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: protocol::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: protocol::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: protocol::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Facet: filetransfer
+Status: draft
+Nature: matter
+Description: File Transfer
+
+Tag: filetransfer::ftp
+Implies: filetransfer
+Description: FTP
+ File Transfer Protocol
+
+Tag: filetransfer::http
+Implies: protocol
+Description: HTTP
+ HyperText Transfer Protocol
+
+Tag: filetransfer::sftp
+Description: SFTP
+ Secure File Transfer Protocol
+
+Tag: filetransfer::smb
+Implies: filetransfer
+Description: SMB and CIFS
+ Windows file and printer sharing (SMB)
+
+Tag: filetransfer::dcc
+Description: IRC DCC
+ Direct Client to Client protocol used by Internet Relay Chat clients.
+
+Tag: filetransfer::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: filetransfer::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: filetransfer::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: filetransfer::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Facet: uitoolkit
+Status: needing-review
+Nature: matter
+Description: Interface Toolkit
+
+Tag: uitoolkit::athena
+Implies: uitoolkit
+Description: Athena Widgets
+
+Tag: uitoolkit::fltk
+Description: FLTK
+
+Tag: uitoolkit::gnustep
+Description: GNUstep
+
+Tag: uitoolkit::gtk
+Implies: uitoolkit
+Description: GTK
+
+Tag: uitoolkit::motif
+Implies: uitoolkit
+Description: Lesstif/Motif
+
+Tag: uitoolkit::ncurses
+Implies: uitoolkit
+Description: Ncurses TUI
+
+Tag: uitoolkit::qt
+Implies: uitoolkit
+Description: QT
+
+Tag: uitoolkit::sdl
+Implies: uitoolkit
+Description: SDL
+
+Tag: uitoolkit::tk
+Implies: uitoolkit
+Description: TK
+
+Tag: uitoolkit::wxwidgets
+Implies: uitoolkit
+Description: wxWidgets
+
+Tag: uitoolkit::xlib
+Implies: uitoolkit
+Description: X library
+
+Tag: uitoolkit::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: uitoolkit::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: uitoolkit::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: uitoolkit::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Facet: use
+Status: controversial
+Nature: energy
+Description: Purpose
+
+Tag: use::browsing
+Description: Browsing
+
+Tag: use::chatting
+Description: Chatting
+
+Tag: use::checking
+Description: Checking
+
+Tag: use::compressing
+Description: Compressing
+
+Tag: use::configuring
+Description: Configuration
+
+Tag: use::converting
+Implies: file-formats, application
+Description: Data Conversion
+
+Tag: use::dialing
+Description: Dialup Access
+
+Tag: use::downloading
+Description: Downloading
+
+Tag: use::driver
+Description: Hardware Driver
+
+Tag: use::editing
+Description: Editing
+
+Tag: use::entertaining
+Description: Entertaining
+
+Tag: use::filtering
+Description: Filtering
+
+Tag: use::gameplaying
+Description: Game Playing
+
+Tag: use::learning
+Description: Learning
+
+Tag: use::login
+Description: Login
+
+Tag: use::monitor
+Description: Monitoring
+
+Tag: use::organizing
+Description: Data Organisation
+
+Tag: use::playing
+Description: Playing Media
+
+Tag: use::printing
+Description: Printing
+
+Tag: use::proxying
+Description: Proxying
+
+Tag: use::routing
+Description: Routing
+
+Tag: use::searching
+Description: Searching
+
+Tag: use::scanning
+Description: Scanning
+
+Tag: use::storing
+Description: Storing
+
+Tag: use::synchronizing
+Description: Synchronisation
+
+Tag: use::timekeeping
+Description: Time and Clock
+
+Tag: use::transmission
+Description: Transmission
+
+Tag: use::typesetting
+Description: Typesetting
+
+Tag: use::viewing
+Description: Data Visualization
+
+Tag: use::text-formatting
+Description: Text Formatting
+
+Tag: use::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: use::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: use::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: use::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Facet: web
+Status: draft
+Nature: personality
+Description: World Wide Web
+
+Tag: web::application
+Description: Application
+
+Tag: web::appserver
+Description: Application Server
+
+Tag: web::blog
+Description: Blog Software
+
+Tag: web::browser
+Description: Browser
+
+Tag: web::cms
+Description: Content Management (CMS)
+
+Tag: web::cgi
+Description: CGI
+
+Tag: web::commerce
+Description: E-commerce
+
+Tag: web::forum
+Description: Forum
+
+Tag: web::portal
+Description: Portal
+
+Tag: web::scripting
+Description: Scripting
+
+Tag: web::search-engine
+Description: Search engine
+
+Tag: web::server
+Description: Server
+
+Tag: web::wiki
+Description: Wiki Software
+ Wiki software, servers, utilities and plug-ins.
+
+Tag: web::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: web::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: web::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: web::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Facet: network
+Status: draft
+Nature: personality
+Description: Networking
+
+Tag: network::client
+Description: Client
+
+Tag: network::server
+Description: Server
+
+Tag: network::configuration
+Description: Configuration
+
+Tag: network::firewall
+Description: Firewall
+
+Tag: network::hiavailability
+Responsible: miope@miope.org
+Description: High Availability
+
+Tag: network::load-balancing
+Description: Load Balancing
+
+Tag: network::routing
+Description: Routing
+
+Tag: network::service
+Description: Service
+
+Tag: network::scanner
+Description: Scanning
+
+Tag: network::vpn
+Description: VPN or Tunneling
+
+Tag: network::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: network::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: network::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: network::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Facet: x11
+Status: draft
+Description: X Windowing System
+
+Tag: x11::applet
+Description: Applet
+
+Tag: x11::application
+Description: Application
+
+Tag: x11::display-manager
+Description: Login Manager
+ Display managers (graphical login screens)
+
+Tag: x11::font
+Description: Font
+
+Tag: x11::library
+Description: Library
+
+Tag: x11::screensaver
+Description: Screen Saver
+
+Tag: x11::terminal
+Description: Terminal Emulator
+
+Tag: x11::theme
+Description: Theme
+
+Tag: x11::window-manager
+Description: Window Manager
+
+Tag: x11::xserver
+Description: X Server
+
+Tag: x11::TODO
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: x11::special:todo
+Description: Need an extra tag
+ The package can be categorised along this facet, but the right tag for it is
+ missing.
+ .
+ Mark a package with this tag to signal the vocabulary maintainers of cases
+ where the current tag set is lacking.
+
+Tag: x11::special:not-yet-tagged
+Description: Not yet tagged
+ This facet of the package has not yet been categorised.
+
+Tag: x11::special:not-applicable
+Description: Facet is not applicable
+ The package cannot be categorised using this facet.
+
+
+Tag: bbs
+Description: Bulletin Board Systems
+
+Tag: data-exchange
+Implies: foreignos
+Description: Data Exchange
+
+Tag: desktop
+Description: Desktop Environment
+Flags: empty, expand
+
+Tag: file-formats
+Description: File formats
+
+Tag: foreignos
+Description: Foreign OS and Hardware
+
+Tag: net
+Implies: netcomm
+Description: IP Networking
+
+Tag: netcomm
+Description: Network and Communication
+
+Tag: numerical
+Description: Calculation and numerical computation
+
+Tag: office
+Implies: application
+Description: Office software
+Flags: empty, expand
+
+Tag: protocols
+Description: IP protocol support
+
+Tag: science
+Description: Science
+
+Tag: system
+Description: System software and maintainance
+
+Tag: vi
+Description: VI editor
+
diff --git a/ept/test-data/desktop/kdict.desktop b/ept/test-data/desktop/kdict.desktop
new file mode 100644
index 0000000..8bc0849
--- /dev/null
+++ b/ept/test-data/desktop/kdict.desktop
@@ -0,0 +1,88 @@
+[Desktop Entry]
+GenericName[cs]=Online slovník
+GenericName[he]=מילון מקוון
+GenericName[fi]=Sanakirja
+GenericName[hr]=Online rjeÄnik
+GenericName[fr]=Dictionnaire électronique
+GenericName[is]=Orðabók á Netinu
+GenericName[hu]=Szótárkezelő
+Exec=kdict -caption "%c" %i %m
+X-DCOP-ServiceType=Unique
+GenericName[de]=Online-Lexikon
+Icon=kdict
+GenericName[eu]=On line hiztegia
+GenericName[ar]=قاموس على الإنترنت
+GenericName[vi]=Từ điển online
+Encoding=UTF-8
+Name[eo]=Vortaroserĉo
+GenericName[nl]=Online woordenboek
+Name[th]=พจนานุà¸à¸£à¸¡ - K
+Name[ar]=قاموس كيدي
+GenericName[wa]=Motî so les fyis
+Type=Application
+GenericName[uz]=Интернет луғат
+GenericName[sk]=On-line slovník
+GenericName[bg]=Мрежови речник
+GenericName[mk]=Речник на линија
+GenericName[ja]=オンライン辞書
+Name[ta]=கேஅகராதி
+GenericName[pl]=Słownik w sieci
+Name[cy]=KGeir
+Categories=Qt;KDE;Utility;
+GenericName[nb]=Ordbok på nettet
+GenericName[es]=Diccionario en línea
+GenericName[tr]=Çevrimiçi Sözlük
+DocPath=kdict/index.html
+GenericName[ven]=Bugu talutshedza maipfi ine yavha kha mutevhe wau tshimbila
+GenericName[gl]=Diccionario en liña
+GenericName[nso]=Pukuntsu ya Online
+Name[hu]=KDict
+GenericName[sr]=Онлајн речник
+GenericName[ms]=Kamus Talian
+Name[cs]=KDict
+GenericName[af]=Aan-lyn Woordeboek
+GenericName[eo]=Vortaro
+GenericName[ru]=Онлайн-Ñловарь
+GenericName[zu]=Isichaza magama esixhumekile
+GenericName[da]=Online-ordbog
+GenericName=Online Dictionary
+GenericName[hi]=ऑनलाइन शबà¥à¤¦à¤•ोश
+GenericName[zh_CN]=在线字典
+Name[et]=KDict
+GenericName[lt]=Žodynas tinkle
+GenericName[tg]=Луғати Шабакавӣ
+GenericName[it]=Dizionario in linea
+GenericName[ro]=Dicţionar on-line
+GenericName[uk]=Словник в мережі
+GenericName[se]=Fierpmádatsátnegirji
+Name[uz]=Луғат
+GenericName[pt]=Dicionário na Rede
+Name[da]=KDict
+X-AppInstall-Section=universe
+Name[be]=K Слоўнік
+X-AppInstall-Package=kdict
+GenericName[ga]=Foclóir ar líne
+Terminal=false
+GenericName[zh_TW]=線上字典
+X-KDE-StartupNotify=true
+GenericName[et]=Võrgusõnaraamat
+GenericName[bs]=Online rjeÄnik
+GenericName[th]=พจนานุà¸à¸£à¸¡à¹à¸šà¸šà¸­à¸­à¸™à¹„ลน์
+GenericName[ca]=Diccionari en línia
+GenericName[mt]=Dizzjunarju online
+GenericName[cy]=Geiriadur Ar-lein
+GenericName[sv]=Online-ordlista
+Name=Kdict
+Name[ko]=K사전
+Name[hi]=के-डिकà¥à¤¶
+GenericName[el]=Διαδικτυακό λεξικό
+GenericName[xh]=Incwadi eneenkcazelo zamagama Esemgceni
+GenericName[pt_BR]=Dicionário On-line
+GenericName[lv]=TieÅ¡saites VÄrdnÄ«ca
+GenericName[nn]=Internettordbok
+Name[fr]=KDict
+GenericName[ta]=இணைய அகராதி
+GenericName[sr@Latn]=Onlajn reÄnik
+GenericName[mn]=Онлайн-Толь бичиг
+GenericName[sl]=Spletni slovar
+
diff --git a/ept/test-data/desktop/test.desktop b/ept/test-data/desktop/test.desktop
new file mode 100644
index 0000000..8ffb410
--- /dev/null
+++ b/ept/test-data/desktop/test.desktop
@@ -0,0 +1,4 @@
+[Desktop Entry]
+Name=foo
+Description=bar
+Categories=Qt;KDE;Utility;
diff --git a/ept/test-data/desktop/xqf.desktop b/ept/test-data/desktop/xqf.desktop
new file mode 100644
index 0000000..f197a7f
--- /dev/null
+++ b/ept/test-data/desktop/xqf.desktop
@@ -0,0 +1,31 @@
+[Desktop Entry]
+Encoding=UTF-8
+Name=XQF
+Name[ca]=XQF
+Name[da]=XQF
+Name[de]=XQF
+Name[es]=XQF
+Name[fi]=XQF
+Name[ru]=XQF
+GenericName=XQF Game Server Browser
+GenericName[ca]=Navegador de jocs XQF
+GenericName[da]=XQF spilserver browser
+GenericName[de]=XQF Spieleserver Browser
+GenericName[es]=Navegador de servidores de juegos XQF
+GenericName[fi]=XQF Pelipalvelinselain
+GenericName[ru]=Браузер игровых Ñерверов XQF
+Comment=Locate and connect to game servers
+Comment[ca]=Cerca i connecta a servidors de jocs
+Comment[da]=Find og forbind til spilservere
+Comment[de]=Spieleserver finden und mit ihnen verbinden
+Comment[es]=Localiza y connecta a servidores de juegos
+Comment[fi]=Etsi ja yhdistä pelipalvelimiin
+Comment[ru]=ПоиÑк и подключение к игровым Ñерверам
+Exec=xqf
+Icon=xqf_32x32.png
+StartupNotify=true
+Terminal=false
+Type=Application
+Categories=X-SuSE-Core-Game;Application;Game;
+X-AppInstall-Package=xqf
+X-AppInstall-Section=universe
diff --git a/ept/test-data/desktop/xserver.desktop b/ept/test-data/desktop/xserver.desktop
new file mode 100644
index 0000000..6396965
--- /dev/null
+++ b/ept/test-data/desktop/xserver.desktop
@@ -0,0 +1,186 @@
+[Desktop Entry]
+Name[id]=Server-X
+Comment[id]=Informasi Server-X
+Keywords[pt]=X,servidor X,XServer,XFree86,ecrã,placa de vídeo,informações de sistema
+Keywords[sk]=X,X-Server,XServer,XFree86,Display,Zobrazenie,Systémové Informácie
+Comment[br]=Titouroù diwar-benn ar servijer X
+Name[fy]=X-server
+Name[nso]=Moabi wa X
+Name[fa]=کارگزار X
+Name[ro]=Server X
+Keywords[mt]=X,X-Server,XServer,XFree86,Display,System Information
+Comment[ta]=X-சேவகன௠தகவலà¯
+Exec=kcmshell xserver
+Keywords[lt]=X,X-Serveris,XServer,XFree86,Displėjus,Video plokštė,Sistemos informacija
+Name[lo]=ເຊີຟເວີ X
+Comment[hr]=Informacije o X-Poslužitelju
+Name[tg]=Сервери-X
+Comment[el]=ΠληÏοφοÏίες εξυπηÏετητή X
+Keywords[hi]=à¤à¤•à¥à¤¸,à¤à¤•à¥à¤¸-सरà¥à¤µà¤°,à¤à¤•à¥à¤¸à¤¸à¤°à¥à¤µà¤°,à¤à¤•à¥à¤¸à¤«à¥à¤°à¥€86,पà¥à¤°à¤¦à¤°à¥à¤¶à¤•,वीडियोकारà¥à¤¡,तंतà¥à¤° जानकारी
+Comment[pa]=X-ਸਰਵਰ ਜਾਣਕਾਰੀ
+Comment[nb]=X-tjenerinformasjon
+Comment[eu]=X zerbitzariari buruzko informazioa
+Icon=kcmx
+Name[sv]=X-server
+Comment[it]=Informazioni sul server X
+Name[af]=X-bediener
+Comment[ar]=معلومات عن خادم X
+Keywords[ja]=X,X-サーãƒ,Xサーãƒ,XFree86,ディスプレイ,システム情報
+Comment[ja]=Xサーãƒã®æƒ…å ±
+Keywords[bg]=екран, видеокарта, ÑиÑтемна информациÑ, Ñървър, X, X-Server, XServer, XFree86, Display, VideoCard, System Information
+Comment[he]=מידע על שרת ה־X
+Comment[th]=ข้อมูลเซิร์ฟเวอร์ X
+Comment[ga]=Eolas faoin bhfreastalaí X
+Comment[az]=X-Vericisi haqqında mə'lumat
+Keywords[nb]=X,X-tjener,Xtjener,XFree86,skjerm,videokort,systeminformasjon
+Encoding=UTF-8
+Name[eo]=X-servilo
+Comment[hu]=Az X-kiszolgáló jellemzői
+X-KDE-FactoryName=xserver
+Comment[ko]=엑스 서버 정보
+Comment[fr]=Informations sur le serveur X
+X-KDE-ParentApp=kinfocenter
+Keywords[uk]=X,X-Server,XServer,XFree86,Display,ÑиÑтемна інформаціÑ,монітор,X Ñервер,відео карта
+Name[fi]=X-palvelin
+Keywords[pt_BR]=X,Servidor X,XFree,XFree86,Display,Tela,Placa de Vídeo,Informações do sistema
+Name[th]=เซิร์ฟเวอร์ X
+Name[eu]=X zerbitzaria
+Name[ar]=خادم X
+Comment[nds]=Informatschoon över den X-Server
+Name[ga]=Freastalaí X
+Name[ss]=Sigcini X
+Keywords[it]=X,Server X,XServer,XFree86,display,schermo,informazioni sul sistema,SchedaVideo
+Name[az]=X-Vericisi
+Name[oc]=Servor X
+Type=Application
+Comment[af]=X-bediener informasie
+Name[zh_TW]=X 伺æœå™¨
+Name[bn]=à¦à¦•à§à¦¸-সারà§à¦­à¦¾à¦°
+Name[ta]=X-சேவகனà¯
+Comment[nso]=Moabi wa Tshedimoso ya X
+Comment[oc]=Informacion dèu servor X
+Keywords[tr]=X,X-Server,XServer,X sunucu, X-sunucu,Xsunucu,XFree86,Görüntü,Video Kartı,Sistem Bilgisi
+Comment[sv]=X-serverinformation
+Keywords[et]=X,X'i server,X Server,XFree86,Ekraan,Videokaart,Süsteemi info
+Comment[se]=X-bálvádiehtu
+Name[cy]=Gweinydd-X
+Categories=Qt;KDE;X-KDE-information;
+Name[ja]=Xサーãƒ
+Comment[ru]=Ð¡Ð²ÐµÐ´ÐµÐ½Ð¸Ñ Ð¾Ð± X-Ñервере
+X-KDE-Library=info
+Comment[mn]=X-Ñерверийн мÑдÑÑлÑл
+Keywords[pl]=X,X serwer,Xserwer,XFree86,karta graficzna,grafika,informacja o systemie
+Keywords[cs]=X,X-server,XServer,XFree86,Obrazovka,Informace o systému,Videokarta
+DocPath=kinfocenter/xserver/index.html
+Comment[tr]=X-Sunucusu hakkında bilgi
+Name[mk]=X-Ñервер
+Name[he]=שרת X
+Keywords[hu]=X,X-kiszolgáló,XServer,XFree86,képernyő,videokártya,rendszerinformáció
+Name[lt]=X-Serveris
+Comment=X-Server information
+Name[it]=Server X
+Name[is]=X-þjónn
+Keywords[mk]=X,X-Server,XServer,XFree86,Display,VideoCard,System Information,X Ñервер,Екран,Видеокартичка,Информации за ÑиÑтемот
+Name[hu]=X-kiszolgáló
+Keywords[he]=תצוגה,מידע מערכת,XFree86,שרת X,X, כרטיס מסך
+Comment[xh]=Ulwazi lomncedisi we-X
+X-AppInstall-Section=main
+Comment[eo]=Informo pri X-servilo
+Keywords[el]=X,ΕξυπηÏετητής-X,XServer,XFree86,Οθόνη,ΚάÏτα ΓÏαφικών, ΠληÏοφοÏίες συστήματος
+Name[ca]=Servidor X
+Comment[bs]=Informacije o X-Serveru
+Comment[uk]=Ð†Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ñ–Ñ Ñ‰Ð¾Ð´Ð¾ X-Server
+Comment[et]=X'i serveri info
+Keywords[fy]=X,X-Server,XServer,XFree86,display,systeemynformaasje,byldskerm,grafyske kaart
+Comment[be]=Ð†Ð½Ñ„Ð°Ñ€Ð¼Ð°Ñ†Ñ‹Ñ Ð°Ð± X-ÑÑрвÑры
+Comment[lo]=ຂà»à»‰àº¡àº¹àº™à»€àºŠàºµàºŸà»€àº§àºµ X
+Name[es]=Servidor X
+Keywords[ta]=X,X-சேவகனà¯,Xசேவகனà¯,XFree86, காடà¯à®šà®¿,படகà¯à®•ாடà¯à®šà®¿à®…டà¯à®Ÿà¯ˆ,அமைபà¯à®ªà¯ தகவலà¯
+Comment[mk]=Информации за X-Ñерверот
+Comment[nn]=X-tenarinformasjon
+Keywords[nl]=X,X-Server,XServer,XFree86,display,systeeminformatie,beeldscherm,videokaart
+Comment[ro]=Informaţii despre serverul X
+Comment[sk]=Informácie o X serveri
+Comment[is]=Upplýsingar um X-þjón
+Comment[lt]=X-Serverio informacija
+Keywords[is]=X,X-Server,X-þjónn,XServer,Xþjónn,XFree86,Display,skjár, VideoCard,skjákort,System Information,kerfisupplýsingar
+Name[bg]=Сървър X
+Keywords[br]=X,servijer X,XServer,XFree86,diskwel,kartenn video,titouroù reizhiad
+Comment[zh_CN]=X æœåŠ¡å™¨ä¿¡æ¯
+Keywords[nds]=X,X-Server,XServer,XFree86,Display,Dorstellen,Videkort,Systeeminformatschoon
+Name[se]=X-bálvá
+Name[pt_BR]=Servidor X
+Keywords[eu]=X,X-Server,XServer,XFree86,Display,VideoCard,sistema informazioa
+X-AppInstall-Package=kcontrol
+Comment[ss]=Umniningwane wesigcini X
+Keywords[sr@Latn]=X,X-Server,XServer,XFree86,Display,VideoCard,System Information,ekran,video kartica
+Name[nn]=X-tenar
+Comment[sl]=Podatki o strežniku X
+Name[ru]=X-Ñервер
+Name[tr]=X-Sunucusu
+Name[et]=X'i server
+Name[ven]=Siva ya X
+Comment[cs]=Informace o X-Serveru
+Comment[pl]=Informacje o X-serwerze
+Name[el]=ΕξυπηÏετητής-X
+Name[pa]=X-ਸਰਵਰ
+Name[lv]=X-Servers
+Name[sr]=X-Сервер
+Comment[pt_BR]=Informações do servidor X
+Keywords[ca]=X,Servidor X,XServer,XFree86,Monitor,Targeta de video,Informació del sistema
+Keywords[fr]=X,serveur X,XFree86,XServer,moniteur,affichage,informations système,xfree,carte vidéo,carte graphique
+Keywords[pa]=X,X-Server,XServer,XFree86,ਦਰਿਸ਼,ਵੀਡਿਓ ਕਾਰਡ, ਸਿਸਟਮ ਜਾਣਕਾਰੀ
+Comment[da]=Information om X-serveren
+Name[uz]=X-Сервер
+Keywords=X,X-Server,XServer,XFree86,Display,VideoCard,System Information
+Keywords[az]=X,X-Server,XServer,XFree86,Display,VideoCard,System Information,X-Verici,XVerici,XFree86,Displey,Sistem Haqqında Mə'lumat
+Name[da]=X-server
+Comment[hi]=à¤à¤•à¥à¤¸-सरà¥à¤µà¤° जानकारी
+Name[zu]=Umlekeleli we-X
+Name[xh]=Umncedisi we-X
+Keywords[bs]=X,X-Server,XServer,XFree86,VideoCard,Display,System Information, Ekran, Informacije o sistemu
+Name[pt]=Servidor X
+Name[sl]=Strežnik X
+Keywords[zh_CN]=X,X-Server,XServer,XFree86,Display,VideoCard,System InformationX æœåС噍,显示器,显å¡,系统信æ¯
+Name[be]=X-ÑÑрвÑÑ€
+Comment[nl]=X-Server-informatie
+Comment[tg]=Иттилооти Сервери-X
+Name[zh_CN]=X æœåС噍
+Keywords[es]=X,X-Server,XServer,XFree86,Monitor,Tarjeta, Gráfica,Sistema,Información
+Comment[bg]=Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð·Ð° Ñървъра X
+Comment[fi]=X-palvelimen tiedot
+Keywords[ro]=X,server X,XServer,XFree86,ecran,afişare,placă video,informaţii despre sistem
+Comment[mt]=Informazzjoni dwar X-Server
+Name[mn]=X-Сервер
+Comment[ca]=Informació del servidor X
+Comment[de]=Informationen zum X-Server
+Comment[sr]=Информације о X Ñерверу
+Comment[zh_TW]=X 伺æœå™¨è³‡è¨Š
+Comment[fy]=X-Server-ynformatie
+Keywords[nn]=X,X-tenar,XServer,XFree86,skjerm,skjermkort,systeminformasjon
+Name[hr]=X-Poslužitelj
+Name[nb]=X-tjener
+Comment[es]=Información sobre el servidor X
+Keywords[sr]=X,X-Server,XServer,XFree86,Display,VideoCard,System Information,екран,видео картица
+Name[br]=Servijer X
+Name[gl]=Servidor X
+Comment[sr@Latn]=Informacije o X serveru
+Comment[vi]=thông tin vỠX-Server
+Comment[uz]=X-Сервер ҳақида маълумот
+Name=X-Server
+Comment[ven]=Mafhungo a siva ya X
+Name[ko]=엑스 서버
+Keywords[sv]=X,X-server,Xserver,Xfree86,skärm,videokort,systeminformation
+Name[hi]=à¤à¤•à¥à¤¸-सरà¥à¤µà¤°
+Name[nl]=X-server
+Comment[cy]=Gwybodaeth Gweinydd-X
+Comment[bn]=à¦à¦•à§à¦¸-সারà§à¦­à¦¾à¦° সংকà§à¦°à¦¾à¦¨à§à¦¤ তথà§à¦¯
+Comment[gl]=Información do Servidor X
+Name[pl]=X-Serwer
+Keywords[da]=X,X-server,Xserver,XFree86,Skærm,Videokort,Systeminformation
+Comment[pt]=Informações sobre o servidor X
+Keywords[sl]=X,strežnik X,X-strežnik,XServer,XFree86,zaslon,grafiÄna kartica,Podatki o sistemu,sistemske informacije
+Comment[zu]=Ulwazi lomlekeleli we-X
+Comment[fa]=اطلاعات کارگزار X
+Name[fr]=Serveur X
+
diff --git a/ept/test-data/dpkg-status b/ept/test-data/dpkg-status
new file mode 100644
index 0000000..87c06e0
--- /dev/null
+++ b/ept/test-data/dpkg-status
@@ -0,0 +1,37094 @@
+Package: kdenetwork
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 40
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: all
+Version: 4:3.3.0-2
+Depends: dcoprss (>= 4:3.3.0-2), kdenetwork-filesharing (>= 4:3.3.0-2), kdict (>= 4:3.3.0-2), kget (>= 4:3.3.0-2), knewsticker (>= 4:3.3.0-2), kopete (>= 4:3.3.0-2), kpf (>= 4:3.3.0-2), kppp (>= 4:3.3.0-2), krdc (>= 4:3.3.0-2), krfb (>= 4:3.3.0-2), ksirc (>= 4:3.3.0-2), kwifimanager (>= 4:3.3.0-2), librss1 (>= 4:3.3.0-2)
+Recommends: ktalkd (>= 4:3.3.0-2), lisa (>= 4:3.3.0-2)
+Description: KDE Network metapackage
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ This package depends on the KDE Network packages.
+
+Package: alsaplayer
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 20
+Maintainer: Ivo Timmermans <ivo@debian.org>
+Architecture: i386
+Version: 0.99.76-0.2
+Replaces: alsaplayer-oss (<< 0.99.22), alsaplayer-alsa (<< 0.99.22), alsaplayer-esd (<< 0.99.22)
+Depends: alsaplayer-gtk | alsaplayer-interface, alsaplayer-oss | alsaplayer-output, alsaplayer-common
+Conflicts: alsaplayer-oss (<< 0.99.22), alsaplayer-alsa (<< 0.99.22), alsaplayer-esd (<< 0.99.22)
+Description: PCM player designed for ALSA
+ Alsaplayer is a PCM player designed specifically for use with ALSA, but
+ works great with OSS or EsounD. It's heavily threaded which cuts down on
+ skipping, offers optional and even simultaneous visual scopes, plays
+ mp3, mp2, ogg, cdda, audiofs, and lots more.
+ .
+ This empty package provides an easy transition to either the gtk or
+ text frontends; it may be safely removed once all its dependencies
+ are installed.
+
+Package: libxml-libxml-perl
+Status: purge ok not-installed
+Priority: optional
+Section: interpreters
+
+Package: dict-gcide
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 17164
+Maintainer: Bob Hilliard <hilliard@debian.org>
+Version: 0.48-4
+Replaces: dict-web1913
+Provides: dict-web1913
+Depends: dictd | dict-server
+Suggests: dict-wn
+Conflicts: dict-web1913 (<= 1.4-0.47pd-3)
+Description: A Comprehensive English Dictionary
+ .
+ This package contains the GNU version of the Collaborative
+ International Dictionary of English, formatted for use by the
+ dictionary server in the dictd package. The GCIDE contains the
+ full text of the 1913 Webster's Unabridged Dictionary, supplemented by
+ many definitions from WordNet, the Century Dictionary, 1906, and many
+ additional definitions contributed by volunteers.
+ .
+ The definitions in the core of this dictionary are at least 85 years
+ old, so they can not be expected to be politically correct by
+ contemporary standards, and no attempt has been, or will be, made to
+ make them so.
+ .
+ This package will be of limited use without the server found in the
+ dictd package, or another RFC 2229 compliant sever.
+
+Package: nxagent
+Status: install ok installed
+Priority: extra
+Section: x11
+Installed-Size: 2784
+Maintainer: Peter Rockai (mornfall) <mornfall@danill.sk>
+Architecture: i386
+Source: nx
+Version: 1.3.99.2-0
+Depends: libc6 (>= 2.3.2.ds1-4), libnxcomp0, libnxcompext0, libxpm4 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), libnxcomp0, libnxcompext0
+Description: NoMachine NX - nesting X server with roundtrip suppression
+ NoMachine NX is the next-generation X compression and roundtrip suppression
+ scheme. It can operate remote X11 sessions over 56k modem dialup links or
+ anything better.
+ .
+ The nxagent is an X server based on Xnest, but modified for the purpose of
+ reducing roundtrips over high-latency networks significantly. It is run on the
+ client side of X, that is, on the machine where X clients run. It connects,
+ over the wire, to your regular X server, possibly through nxproxy.
+ .
+ For easy to use NX tunnel look at nxtunnel-(client|server) packages.
+
+Package: module-assistant
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 172
+Maintainer: Eduard Bloch <blade@debian.org>
+Architecture: all
+Version: 0.6.8
+Depends: perl
+Suggests: build-essential, dialog | whiptail
+Description: tool make module package creation easier
+ The module-assistant tool helps users and maintainers with managing
+ external kernel modules packaged for Debian. It can do:
+ .
+ - automated preparation of build environment for modules compilation
+ (eg. automatical detection and installation of required kernel
+ source/headers)
+ - automated module source downloads
+ - configuring and keeping track of external and localy built modules
+ packages
+ - semi-automated multiple builds for multiple kernel versions
+ .
+ It also contains some framework to be used by the build-scripts in the
+ accompanying modules-source packages in Debian.
+
+Package: tcpd
+Status: install ok installed
+Priority: important
+Section: base
+Installed-Size: 196
+Maintainer: Anthony Towns <ajt@debian.org>
+Architecture: i386
+Source: tcp-wrappers
+Version: 7.6.dbs-6
+Replaces: libwrap0 (<< 7.6-8)
+Depends: libc6 (>= 2.3.2.ds1-4), libwrap0 (>= 7.6-1.1), debconf (>= 0.5) | debconf-2.0
+Conflicts: netbase (<< 3.16-1)
+Description: Wietse Venema's TCP wrapper utilities
+ Wietse Venema's network logger, also known as TCPD or LOG_TCP.
+ .
+ These programs log the client host name of incoming telnet,
+ ftp, rsh, rlogin, finger etc. requests. Security options are:
+ access control per host, domain and/or service; detection of
+ host name spoofing or host address spoofing; booby traps to
+ implement an early-warning system.
+
+Package: python2.3-kde3
+Status: install ok installed
+Priority: optional
+Section: python
+Installed-Size: 26457
+Maintainer: Ricardo Javier Cardenes Medina <rcardenes@debian.org>
+Architecture: i386
+Source: python-kde3
+Version: 3.11.3-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libqt3c102-mt (>= 3:3.3.2), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), python2.3-qt3 (>= 3.12), python2.3-qt3 (<< 3.13)
+Description: KDE3 bindings for Python 2.3
+ Python binding module that provides wide access to the KDE3 API,
+ also known as PyKDE. Using this, you'll get (for example) classes
+ from kio, kjs, khtml and kprint.
+ .
+ This version is linked against Python 2.3
+
+Package: libmimelib1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 268
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1)
+Description: KDE mime library
+ This library is used by several KDE applications to handle mime types.
+ .
+ This is the runtime package for programs that use the libmimelib library.
+ .
+ This package is part of the official KDE pim module.
+
+Package: kdeadmin
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 8
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: all
+Version: 4:3.3.0-1
+Depends: kcmlinuz (>= 4:3.3.0-1), kcron (>= 4:3.3.0-1), kdat (>= 4:3.3.0-1), kdeadmin-kfile-plugins (>= 4:3.3.0-1), kpackage (>= 4:3.3.0-1), ksysv (>= 4:3.3.0-1), kuser (>= 4:3.3.0-1), secpolicy (>= 4:3.3.0-1)
+Recommends: lilo-config (>= 4:3.3.0-1)
+Description: KDE Administration tools metapackage
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This package depends on the KDE Administration tools packages.
+
+Package: xpdf-utils
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 3200
+Maintainer: Hamish Moffatt <hamish@debian.org>
+Architecture: i386
+Source: xpdf
+Version: 3.00-8
+Provides: pdf-viewer, postscript-preview
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libpaper1, libstdc++5 (>= 1:3.3.4-1), xpdf-common (= 3.00-8)
+Conflicts: xpdf-i (<= 0.90-8), xpdf (<= 0.93-6)
+Description: Portable Document Format (PDF) suite -- utilities
+ xpdf is a suite of tools for Portable Document Format (PDF) files. (These are
+ sometimes called 'Acrobat' files after the name of Adobe's PDF software.)
+ .
+ This package contains pdftops (PDF to PostScript converter),
+ pdfinfo (PDF document information extractor), pdfimages
+ (PDF image extractor), pdftotext (PDF to text converter), and
+ pdffonts (PDF font analyzer).
+ .
+ To view PDF files, see the xpdf-reader package. That package
+ also contains pdftoppm (PDF to Portable Bitmap converter).
+
+Package: libbonoboui2-0
+Status: deinstall ok config-files
+Priority: optional
+Section: devel
+Installed-Size: 472
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Source: libbonoboui
+Version: 2.6.1-1
+Config-Version: 2.6.1-1
+Replaces: libbonoboui2-common (<= 2.4.3-1)
+Depends: libart-2.0-2 (>= 2.3.16), libatk1.0-0 (>= 1.6.0), libbonobo2-0 (>= 2.6.0), libbonoboui2-0 (>= 2.5.4), libc6 (>= 2.3.2.ds1-4), libgconf2-4 (>= 2.6.1), libglade2-0 (>= 1:2.3.6), libglib2.0-0 (>= 2.4.1), libgnome2-0 (>= 2.6.0), libgnomecanvas2-0 (>= 2.6.0), libgnomevfs2-0 (>= 2.6.0), libgtk2.0-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), liborbit2 (>= 1:2.10.0), libpango1.0-0 (>= 1.4.0), libpopt0 (>= 1.7), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.10), zlib1g (>= 1:1.2.1), libbonoboui2-common (= 2.6.1-1)
+Description: The Bonobo UI library
+ The Bonobo UI library
+ .
+ This package is a part of GNOME2
+
+Package: libtext-wrapi18n-perl
+Status: install ok installed
+Priority: important
+Section: perl
+Installed-Size: 76
+Maintainer: Tomohiro KUBOTA <kubota@debian.org>
+Version: 0.06-1
+Depends: libtext-charwidth-perl
+Description: internationalized substitute of Text::Wrap
+ This module is a substitution for Text::Wrap, supporting
+ multibyte characters such as UTF-8, EUC-JP, and GB2312, fullwidth
+ characters such as east Asian characters, combining characters
+ such as diacritical marks and Thai, and languages which don't
+ use whitespaces between words such as Chinese and Japanese.
+ .
+ It provides wrap().
+
+Package: sane-utils
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 260
+Maintainer: Julien BLACHE <jblache@debian.org>
+Architecture: i386
+Source: sane-backends
+Version: 1.0.14-7
+Replaces: libsane (<< 1.0.11-4)
+Depends: adduser (>= 3.47), libc6 (>= 2.3.2.ds1-4), libieee1284-3, libjpeg62, libsane (>= 1.0.11-3), libusb-0.1-4 (>= 1:0.1.8)
+Conffiles:
+ /etc/sane.d/saned.conf f23816f975de2723bcefec66750cf1f5
+Description: API library for scanners -- utilities
+ SANE stands for "Scanner Access Now Easy" and is an application
+ programming interface (API) that provides standardized access to any
+ raster image scanner hardware (flatbed scanner, hand-held scanner,
+ video- and still-cameras, frame-grabbers, etc.). The SANE standard is
+ free and its discussion and development are open to everybody. The
+ current source code is written to support several operating systems,
+ including GNU/Linux, OS/2, Win32 and various Unices and is available
+ under the GNU General Public License (commercial applications and
+ backends are welcome, too, however).
+ .
+ This package includes the command line frontend scanimage, the saned
+ server and the sane-find-scanner utility, along with their documentation.
+
+Package: heimdal-clients
+Status: purge ok not-installed
+Priority: extra
+Section: net
+Architecture: i386
+
+Package: oooqs-kde
+Status: purge ok not-installed
+Priority: optional
+Section: contrib/utils
+
+Package: prosper
+Status: install ok installed
+Priority: optional
+Section: tex
+Installed-Size: 1000
+Maintainer: Masayuki Hatta (mhatta) <mhatta@debian.org>
+Architecture: all
+Version: 1.00.4+cvs.2004.03.29-2
+Depends: tetex-bin (>= 2.0.2-4.1), tetex-extra (>= 2.0.2-4), gs
+Suggests: pdf-viewer, postscript-viewer
+Description: LaTeX class for writing transparencies
+ Prosper is a LaTeX class for writing transparencies. It is written on
+ top of the seminar class by Timothy Van Zandt. It aims at offering an
+ environment for easily creating slides for both presentations with an
+ overhead projector and a video projector. Slides prepared for a
+ presentation with a computer and a video projector may integrate
+ animation effects, incremental display, and such.
+
+Package: katomic
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 600
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: Atomic Entertainment game for KDE
+ This is a puzzle game, in which the object is to assemble a molecule
+ from its atoms on a Sokoban-like board. On each move, an atom goes
+ as far as it can in a specified direction before being stopped by a
+ wall or another atom.
+
+Package: java-common
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 296
+Maintainer: Debian Java Mailing List <debian-java@lists.debian.org>
+Version: 0.22
+Suggests: equivs
+Description: Base of all Java packages
+ This package must be installed in the system if a Java environment
+ is desired. It covers useful information for Java users in
+ Debian GNU/Linux, including:
+ * The Java policy document which describes the layout of Java support in
+ Debian and how Java packages should behave.
+ * The Debian-Java-FAQ which provides information on the status of
+ Java support in Debian, available compilers, virtual machines, Java
+ programs and libraries as well as on legal issues.
+ * Information on how to create dummy packages to fullfill java2
+ requirements.
+
+Package: fortunes
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 2640
+Maintainer: Pascal Hakim <pasc@debian.org>
+Architecture: all
+Source: fortune-mod
+Version: 1:1.99.1-1
+Provides: fortune-cookie-db
+Depends: fortune-mod (>= 9708-12), fortunes-min
+Description: Data files containing fortune cookies
+ There are far over 15000 different 'fortune cookies' in this package.
+ You'll need the fortune-mod package to display the cookies.
+
+Package: libfile-which-perl
+Status: purge ok not-installed
+Priority: optional
+Section: perl
+
+Package: cracklib2
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 94
+Maintainer: Martin Pitt <mpitt@debian.org>
+Version: 2.7-13
+Replaces: cracklib2.6
+Depends: libc6 (>= 2.3.2-1)
+Recommends: cracklib-runtime
+Conflicts: cracklib2.6
+Description: A pro-active password checker library
+ Shared library for cracklib2 which contains a C function which may be
+ used in a passwd like program. The idea is simple: try to prevent
+ users from choosing passwords that could be guessed by crack by
+ filtering them out, at source. cracklib2 is NOT a replacement passwd
+ program. cracklib2 is a LIBRARY.
+
+Package: kernel-headers-2.6.4-1
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 22516
+Maintainer: Herbert Xu <herbert@debian.org>
+Architecture: i386
+Source: kernel-image-2.6.4-i386
+Version: 2.6.4-1
+Provides: kernel-headers, kernel-headers-2.6
+Depends: coreutils | fileutils (>= 4.0), kernel-kbuild-2.6-1 (>= 2.6.4)
+Description: Header files related to Linux kernel version 2.6.4
+ This package provides kernel header files for version 2.6.4, for sites
+ that want the latest kernel headers. Please read
+ /usr/share/doc/kernel-headers-2.6.4-1/debian.README.gz for details
+
+Package: crystalspace-demos
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 4860
+Maintainer: Christian Bayle <bayle@debian.org>
+Architecture: i386
+Source: crystalspace
+Version: 0.96-20030912-7
+Config-Version: 0.96-20030912-7
+Depends: crystalspace (= 0.96-20030912-7)
+Description: Multiplatform 3D Game Development Kit Demos
+ Crystal Space is a free 3D game toolkit. It can be used for a variety
+ of 3D visualization tasks. Many people will probably be interested in using
+ Crystal Space as the basis of a 3D game, for which it is well suited.
+ This demos part contains demos demontrating engine capabilities, simple
+ demo from the tutorial, model test demo, isometric engine demo, particules
+ demo, and many others.
+
+Package: libio-stringy-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 312
+Maintainer: Stephen Zander <gibreel@debian.org>
+Source: io-stringy
+Version: 2.109-1
+Depends: perl (>= 5.6.0-16)
+Description: Perl5 modules for IO from scalars and arrays
+ The libio-stringy-perl package (which corresponds to the CPAN package
+ IO-stringy) provides the following Perl modules:
+ IO::AtomicFile Write a file which is updated atomically
+ IO::Lines I/O handle to read/write to array of lines
+ IO::Scalar I/O handle to read/write to a string
+ IO::ScalarArray I/O handle to read/write to array of scalars
+ IO::Wrap Wrap old-style FHs in standard OO interface
+ IO::WrapTie Tie your handles & retain full OO interface
+
+Package: debconf
+Status: install ok installed
+Priority: important
+Section: admin
+Installed-Size: 1336
+Maintainer: Joey Hess <joeyh@debian.org>
+Architecture: all
+Version: 1.4.35
+Replaces: debconf-tiny
+Provides: debconf-2.0
+Depends: debconf-i18n | debconf-english
+Pre-Depends: perl-base (>= 5.6.1-4)
+Recommends: apt-utils (>= 0.5.1)
+Suggests: debconf-doc, debconf-utils, whiptail | dialog | gnome-utils, libterm-readline-gnu-perl, libgnome2-perl, libqt-perl, libnet-ldap-perl, perl
+Conflicts: cdebconf, debconf-tiny, apt (<< 0.3.12.1), menu (<= 2.1.3-1), dialog (<< 0.9b-20020814-1), whiptail (<< 0.51.4-11), whiptail-utf8 (<= 0.50.17-13), debconf-utils (<< 1.3.22)
+Conffiles:
+ /etc/debconf.conf eb448d7ec3a6258c8601e6b27284b791
+ /etc/apt/apt.conf.d/70debconf 7e9d09d5801a42b4926b736b8eeabb73
+Description: Debian configuration management system
+ Debconf is a configuration management system for debian packages. Packages
+ use Debconf to ask questions when they are installed.
+
+Package: libttf2
+Status: install ok installed
+Priority: optional
+Section: oldlibs
+Installed-Size: 351
+Maintainer: Anthony Fok <foka@debian.org>
+Source: freetype1
+Version: 1.4pre.20030402-1.1
+Replaces: freetype0, freetype1, freetype2
+Provides: freetype2
+Depends: libc6 (>= 2.3.2-1)
+Suggests: libttf-dev, freetype1-tools
+Conflicts: freetype
+Description: FreeType 1, The FREE TrueType Font Engine, shared library files
+ The FreeType 1 engine is a free and portable TrueType font rendering engine.
+ It has been developed to provide TT support to a great variety of platforms
+ and environments.
+ .
+ Note: FreeType 1 (libttf soname 2, Debian package libttf2) is obsolete.
+ FreeType 2 (libfreetype soname 6, Debian packages libfreetype6 and
+ libfreetype6-dev) has arrived. The FreeType 2 API is a lot simpler
+ than the one in 1.x while being much more powerful. We thus
+ encourage you to adapt your source code to it as this should not
+ involve much work.
+ .
+ Home Page: http://www.freetype.org/
+ Authors: David Turner <david.turner@freetype.org>
+ Robert Wilhelm <robert.wilhelm@freetype.org>
+ Werner Lemberg <werner.lemberg@freetype.org>
+
+Package: gimp1.3
+Status: deinstall ok config-files
+Priority: optional
+Section: graphics
+Installed-Size: 8184
+Maintainer: Ari Pollak <ari@debian.org>
+Architecture: i386
+Version: 1.3.27+2.0pre4-3
+Config-Version: 1.3.27+2.0pre4-3
+Depends: wget, gimp1.3-data (= 1.3.27+2.0pre4-3), aalib1 (>= 1.2), libart-2.0-2 (>= 2.3.8), libatk1.0-0 (>= 1.4.1), libbz2-1.0, libc6 (>= 2.3.2.ds1-4), libexif9, libexpat1 (>= 1.95.6), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgail-common (>= 1.4.1), libgail17 (>= 1.4.1), libgimp1.3 (<< 1.3.28), libgimp1.3 (>= 1.3.27+2.0pre4), libgimpprint1 (>= 4.2.6), libglib2.0-0 (>= 2.2.3), libgnomecanvas2-0 (>= 2.4.0), libgsf-1 (>= 1.8.2), libgtk2.0-0 (>= 2.2.2-1), libgtkhtml2-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), libjpeg62, liblcms1 (>= 1.08-1), libmng1 (>= 1.0.3-1), libncurses5 (>= 5.3.20030510-1), libpango1.0-0 (>= 1.2.1), libpng12-0 (>= 1.2.5.0-4), librsvg2-2 (>= 2.5.0), libsm6 | xlibs (>> 4.1.0), libtiff3g, libwmf0.2-7 (>= 0.2.8), libx11-6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.6), libxmu6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0), slang1 (>> 1.4.4-7.1), zlib1g (>= 1:1.2.1)
+Suggests: gimp-help, gimp1.3-nonfree, gimp1.3-python
+Conflicts: gimp (<= 1.2.5-3)
+Conffiles:
+ /etc/gimp/1.3/gimprc 78fa5bf8e147996275fc18c49bc1434e
+ /etc/gimp/1.3/gtkrc 782b92519fe9232128260b1e34726716
+ /etc/gimp/1.3/templaterc 1bf68e43b5b8b79ce1aa3ae35f435180
+ /etc/gimp/1.3/unitrc 3ec404ec597ef5460600cccf0192f4d6
+ /etc/gimp/1.3/ps-menurc 15399529790944bffdc4d91d4027e601
+ /etc/gimp/1.3/sessionrc 0e7d0d195286139b2a4214bca01ac63b
+Description: The GNU Image Manipulation Program, development version 1.3
+ The GIMP lets you draw, paint, edit images, and much more! GIMP
+ includes the functionality and plug-ins of other famous image
+ editing and processing programs.
+ .
+ This is the unstable development version of GIMP.
+
+Package: gimp1.2
+Status: deinstall ok config-files
+Priority: optional
+Section: graphics
+Installed-Size: 25730
+Maintainer: Ben Gertzfield <che@debian.org>
+Version: 1.2.3-2
+Config-Version: 1.2.3-2
+Replaces: gimp-smotif, gimp-dmotif, gimp099, gimp-data-min, gimp, gimp1.1, gimp1.1-nonfree (<< 1.1.27-1)
+Provides: gimp-data-min, gimp, gimp1.1
+Depends: wget | wget-ssl, aalib1 (>= 1.2), libc6 (>= 2.2.4-4), libgimp1.2 (>= 1.2.0), libglib1.2 (>= 1.2.0), libgtk1.2 (>= 1.2.10-4), libgtkxmhtml1 (>= 1.4.1.3-1), libjpeg62, libmpeg1, libpng2 (>= 1.0.12), libtiff3g, slang1 (>> 1.4.4-7.1), xlibs (>> 4.1.0), zlib1g (>= 1:1.1.3)
+Recommends: xfonts-75dpi
+Suggests: freefont, sharefont, gimp1.2-nonfree, gimp-data-extras (>= 1:1.2.0), xfonts-100dpi, gimp1.2-perl
+Conflicts: gimp-smotif, gimp-dmotif, gimp099, gimp-data-min, gimp, libgimp-perl, gimp1.1
+Conffiles:
+ /etc/gimp/1.2/gimprc 44f9082eca260e4ce9e0d6806075eb5b
+ /etc/gimp/1.2/gimprc_user df9a62557bffa2411fe7f624be729037
+ /etc/gimp/1.2/gtkrc 8c740345b891179228e3d1066291167b
+ /etc/gimp/1.2/gtkrc_user 8c749353c5027d0065359562d4383b8d
+ /etc/gimp/1.2/unitrc 3ec404ec597ef5460600cccf0192f4d6
+ /etc/gimp/1.2/ps-menurc cb109e6b70720ca1ec5c74c31babc7c3
+Description: The GNU Image Manipulation Program, stable version 1.2
+ The GIMP lets you draw, paint, edit images, and much more! GIMP
+ includes the functionality and plug-ins of other famous image
+ editing and processing programs.
+ .
+ This is the stable 1.2 version of GIMP.
+ .
+ You ***MUST*** <--- (really!) have the xfonts-75dpi and xfonts-100dpi
+ packages available on the X server, whether via files or via a font
+ server like xfs. The gimp package only Recommends: these packages because
+ it's possible to have them served remotely, but you really should
+ install them. :)
+
+Package: librecode0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1304
+Maintainer: Santiago Vila <sanvila@debian.org>
+Source: recode
+Version: 3.6-10
+Depends: libc6 (>= 2.2.4-4)
+Description: Shared library on which recode is based
+ This recoding library converts files between various coded character
+ sets and surface encodings. The library recognizes or produces more
+ than 300 different character sets and is able to convert files between
+ almost any pair. Most RFC 1345 character sets, and all `libiconv'
+ character sets, are supported.
+
+Package: xserver-common
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 976
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xbase (<< 3.3.2.3a-2), xserver-vga16 (<< 3.3.2.3a-2), xserver-agx (<< 3.3.2.3a-9), xserver-mach32 (<< 3.3.2.3a-9), xserver-mach64 (<< 3.3.2.3a-9), xserver-p9000 (<< 3.3.2.3a-9), xserver-s3 (<< 3.3.2.3a-9), xserver-s3v (<< 3.3.2.3a-9), xserver-tga (<< 3.3.2.3a-9), xserver-w32 (<< 3.3.2.3a-9), xsun-utils
+Depends: debconf (>= 1.0.21), xfree86-common (>= 4.2.1-5), libc6 (>= 2.3.2.ds1-4), debconf (>= 0.5) | debconf-2.0
+Suggests: xserver-xfree86 | xserver, xfonts-base, xfonts-100dpi | xfonts-75dpi, xfonts-scalable, configlet-frontends
+Conflicts: xbase (<< 3.3.2.3a-2), xsun-utils, xbase-clients (<< 3.3.6-1), suidmanager (<< 0.50), configlet (<= 0.9.22), xserver-3dlabs (<< 3.3.6-35), xserver-8514 (<< 3.3.6-35), xserver-agx (<< 3.3.6-35), xserver-common-v3 (<< 3.3.6-35), xserver-fbdev (<< 3.3.6-35), xserver-i128 (<< 3.3.6-35), xserver-mach32 (<< 3.3.6-35), xserver-mach64 (<< 3.3.6-35), xserver-mach8 (<< 3.3.6-35), xserver-mono (<< 3.3.6-35), xserver-p9000 (<< 3.3.6-35), xserver-s3 (<< 3.3.6-35), xserver-s3v (<< 3.3.6-35), xserver-svga (<< 3.3.6-35), xserver-tga (<< 3.3.6-35), xserver-vga16 (<< 3.3.6-35), xserver-w32 (<< 3.3.6-35), xserver-xsun (<< 3.3.6-35), xserver-xsun-mono (<< 3.3.6-35), xserver-xsun24 (<< 3.3.6-35), xserver-rage128, xserver-sis
+Conffiles:
+ /etc/X11/xserver/SecurityPolicy 5e63f298721bdd4062d3c66967df99ba
+Description: files and utilities common to all X servers
+ The X server is the hardware interface of the X Window System. Its job is to
+ communicate with video display and input devices, and present them in a
+ standardized, abstract fashion via the X protocol to X clients (X-based
+ programs). The X server largely relieves programs of having to know or care
+ about the details of the hardware with which they are interacting (such
+ things as 32-bit versus 8-bit color, the layout of the keyboard, how many
+ buttons the mouse has, etc.). The catch is that the X server must itself
+ know the technical specifications of the graphics hardware and monitor, the
+ keyboard layout, the protocol used by the mouse, and so forth.
+ .
+ X servers either need fonts installed on the local host, or need to know of a
+ remote host that provides font services (with xfs, for instance). The former
+ means that font packages are mandatory. The latter means that font packages
+ may be gratuitous. To err on the side of caution, install at least the
+ xfonts-base, xfonts-100dpi or xfonts-75dpi, and xfonts-scalable packages.
+
+Package: kuickshow
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 856
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegraphics
+Version: 4:3.3.0-1.1
+Depends: imlib11, kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libjpeg62, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libtiff4, libungif4g (>= 4.1.3), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE image/slideshow viewer
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KDE image/slideshow viewer
+ .
+ This package is part of the official KDE graphics module.
+
+Package: kaudiocreator
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 464
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdemultimedia
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libartsc0 (>= 1.3.0), libasound2 (>> 1.0.5), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), libidn11, libkcddb1 (>= 4:3.3.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), kdemultimedia-kio-plugins
+Description: CD ripper and audio encoder frontend
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ CD ripper and audio encoder frontend.
+ .
+ This package is part of the official KDE multimedia module.
+
+Package: libmng-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 764
+Maintainer: Shiju p. Nair <shiju@infovillage.net>
+Architecture: i386
+Source: libmng
+Version: 1.0.5-1
+Replaces: libmng
+Depends: libmng1 (= 1.0.5-1), liblcms1-dev, libjpeg62-dev | libjpeg-dev, xlibs-dev (>= 4.1.0-0), libz-dev
+Description: M-N-G library (Development headers)
+ The libmng library supports decoding, displaying, encoding, and various
+ other manipulations of the Multiple-image Network Graphics (MNG) format
+ image files. It uses the zlib compression library, and optionally the
+ JPEG library by the Independent JPEG Group (IJG) and/or
+ lcms (little cms), a color-management library by Marti Maria Saguar.
+ .
+ Development headers
+
+Package: python2.3-reportlab
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 2824
+Maintainer: Gregor Hoffleit <flight@debian.org>
+Source: python-reportlab
+Version: 1.19debian-0.1
+Depends: python2.3, python2.3-xml, libc6 (>= 2.3.2.ds1-4)
+Recommends: python2.3-imaging
+Suggests: pdf-viewer, python2.3-egenix-mxtexttools
+Conflicts: python-reportlab (<= 1.18debian-1)
+Description: ReportLab library to create PDF documents using Python (2.3)
+ ReportLab is a library that lets you directly create documents in
+ Adobe's Portable Document Format (PDF) using the Python programming language.
+ .
+ ReportLab library creates PDF based on graphics commands without
+ intervening steps. It's therefore extremely fast, and flexible (since
+ you're using a full-blown programming language).
+ .
+ This is the Python 2.3 version of the package.
+ .
+ Sample use cases are:
+ * Dynamic PDF generation on the web
+ * High-volume corporate reporting and database publishing
+ * As embeddable print engine for other applications, including a
+ 'report language' so that users can customize their own reports.
+ * As 'build system' for complex documents with charts, tables and text
+ such as management accounts, statistical reports and scientific papers
+ * from XML to PDF in one step
+
+Package: typespeed
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 184
+Maintainer: Dafydd Harries <daf@muse.19inch.net>
+Architecture: i386
+Version: 0.4.4-7
+Depends: fileutils (>= 4.0-5) | coreutils (>> 5), libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1)
+Conflicts: suidmanager (<< 0.50)
+Description: Zap words flying across the screen by typing them correctly
+ Typespeed is a game in which words fly across your screen. Your task is to
+ zap the words by typing them before they cross the screen. If too many words
+ get by you, the game is over.
+ .
+ Homepage: http://ls.purkki.org/typespeed/
+
+Package: xfwp
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 288
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xproxy, xbase (<< 3.3.2.3a-2)
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0)
+Recommends: proxymngr
+Conflicts: xproxy
+Description: X firewall proxy server
+ The X firewall proxy is an application layer gateway proxy that may be run
+ on a network firewall host to forward X traffic across the firewall. Used
+ in conjunction with the X server Security extension and authorization
+ checking, xfwp constitutes a safe, simple, and reliable mechanism both to
+ hide the addresses of X servers located on an intranet and to enforce a
+ server connection policy. Xfwp cannot protect against mischief
+ originating on an intranet; however, when properly configured it can
+ guarantee that only trusted clients originating on authorized external
+ Internet hosts will be allowed inbound access to local X servers.
+
+Package: kdepasswd
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 428
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libkonq4 (>= 4:3.3.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: KDE password changer
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ This is a simple app for users to change their system passwords with.
+ .
+ This package is part of the official KDE base module.
+
+Package: kreversi
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 624
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: Reversi for KDE
+ Reversi is a simple strategy game that is played by two
+ players. There is only one type of piece - one side of it is black,
+ the other white. If a player captures a piece on the board, that
+ piece is turned and belongs to that player. The winner is the person
+ that has more pieces of his own color on the board and if there are
+ no more moves possible.
+
+Package: libelf1
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 320
+Maintainer: Andrew Stribblehill <ads@debian.org>
+Source: elfutils
+Version: 0.84-4
+Config-Version: 0.84-4
+Depends: libc6 (>= 2.3.2-1)
+Description: Library to read from and write to ELF files
+ Libraries which implement DWARF, ELF, and machine-specific ELF
+ handling.
+ .
+ The best example code for users of libelf1 is probably from the
+ elfutils package.
+
+Package: vrms
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 96
+Maintainer: Stephen M Moraco <stephen@debian.org>
+Version: 1.9
+Conffiles:
+ /etc/cron.monthly/vrms 976cc5beb0a818f3800ec1c786df5cf2
+Description: Virtual Richard M. Stallman
+ The vrms program will analyze the set of currently-installed packages on a
+ Debian GNU/Linux system, and report all of the packages from the non-free
+ tree which are currently installed.
+ .
+ Future versions of vrms will include an option to also display text from the
+ public writings of RMS and others that explain why use of each of the
+ installed non-free packages might cause moral issues for some in the Free
+ Software community. This functionality is not yet included.
+
+Package: dash
+Status: install ok installed
+Priority: optional
+Section: shells
+Installed-Size: 200
+Maintainer: Gerrit Pape <pape@smarden.org>
+Architecture: i386
+Version: 0.5.1-3
+Pre-Depends: libc6 (>= 2.3.2.ds1-4)
+Description: The Debian Almquist Shell
+ "dash" is a POSIX compliant shell that is much smaller than "bash".
+ We take advantage of that by making it the shell on the installation
+ root floppy, where space is at a premium.
+ .
+ It can be usefully installed as /bin/sh (because it executes scripts
+ somewhat faster than "bash"), or as the default shell either of root
+ or of a second user with a userid of 0 (because it depends on fewer
+ libraries, and is therefore less likely to be affected by an upgrade
+ problem or a disk failure). It is also useful for checking that a
+ script uses only POSIX syntax.
+ .
+ "bash" is a better shell for most users, since it has some nice
+ features absent from "dash", and is a required part of the system.
+
+Package: libid3-3.8.3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 424
+Maintainer: Robert Woodcock <rcw@debian.org>
+Architecture: i386
+Source: id3lib3.8.3
+Version: 3.8.3-4
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libstdc++5 (>= 1:3.3.3-1), zlib1g (>= 1:1.2.1)
+Description: Library for manipulating ID3v1 and ID3v2 tags.
+ This package provides a software library for manipulating ID3v1 and ID3v2
+ tags. It provides a convenient interface for software developers to include
+ standards-compliant ID3v1/2 tagging capabilities in their applications.
+ Features include identification of valid tags, automatic size conversions,
+ (re)synchronisation of tag frames, seamless tag (de)compression, and
+ optional padding facilities.
+
+Package: gimp
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 7604
+Maintainer: Ari Pollak <ari@debian.org>
+Architecture: i386
+Version: 2.0.4-1
+Replaces: gimp1.3, gimp-nonfree
+Provides: gimp2.0, gimp-nonfree
+Depends: wget, gimp-data (= 2.0.4-1), aalib1 (>= 1.2), libart-2.0-2 (>= 2.3.16), libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libexif10, libexpat1 (>= 1.95.6), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgimp2.0 (>= 2.0.0), libgimpprint1 (>= 4.2.7), libglib2.0-0 (>= 2.4.1), libgtk2.0-0 (>= 2.4.4), libice6 | xlibs (>> 4.1.0), libjpeg62, liblcms1 (>= 1.08-1), libmng1 (>= 1.0.3-1), libpango1.0-0 (>= 1.4.1), libpng12-0 (>= 1.2.5.0-4), libsm6 | xlibs (>> 4.1.0), libtiff4, libwmf0.2-7 (>= 0.2.8), libx11-6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Recommends: gimp-svg
+Suggests: gimp-help-en | gimp-help, gimp-python
+Conflicts: gimp1.3, gimp-nonfree
+Description: The GNU Image Manipulation Program, stable version 2.0
+ The GIMP lets you draw, paint, edit images, and much more! GIMP
+ includes the functionality and plug-ins of other famous image
+ editing and processing programs.
+ .
+ This is the stable version of GIMP.
+
+Package: cdrecord
+Status: install ok installed
+Priority: extra
+Section: otherosfs
+Installed-Size: 1120
+Maintainer: Joerg Jaspert <joerg@debian.org>
+Architecture: i386
+Source: cdrtools
+Version: 4:2.0+a38-1
+Replaces: cdrtools-doc
+Depends: libc6 (>= 2.3.2.ds1-4), debconf, makedev (>= 2.3.1-24)
+Recommends: mkisofs
+Suggests: xcdroast, cdrtools-doc
+Conflicts: xcdroast (<< 0.98+0alpha14-5)
+Conffiles:
+ /etc/default/cdrecord 0bcdd41f5d7c6419d524b234701d18f0
+ /etc/default/rscsi eff315991af0911ae8c96b9500c1714f
+Description: command line CD writing tool
+ cdrecord allows you to create CDs on a CD recorder.
+ It supports writing data, audio, mixed, multi-session, and CD+
+ discs, on just about every type of CD recorder out there.
+ .
+ Please install cdrtools-doc if you want most of the documentation and
+ Readme-files.
+
+Package: dpatch
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 200
+Maintainer: Joerg Jaspert <joerg@debian.org>
+Architecture: all
+Version: 2.0.8
+Recommends: dpkg-dev, fakeroot, patchutils
+Conffiles:
+ /etc/bash_completion.d/dpatch_edit_patch b8804a8cce2795833367ece4bf155515
+Description: patch maintenance system for Debian source packages
+ dpatch is an easy to use patch system for debian packages, somewhat
+ similar to the dbs package, but much simpler to use.
+ .
+ It lets you store patches and other simple customization templates in
+ debian/patches and otherwise does not require much reorganization of
+ your source tree. To get the patches applied at build time you simply
+ need to include a makefile snippet and then depend on the
+ patch/unpatch target in the build or clean stage of debian/rules - or
+ you can use the dpatch patching script directly.
+ .
+ It can easily apply patches only on specific architectures if needed.
+
+Package: kpackage
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 1056
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeadmin
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: rpm
+Suggests: khelpcenter
+Description: KDE Software package tool
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This is a frontend to both .rpm and .deb package formats. It allows you
+ to view currently installed packages, browse available packages, and
+ install/remove them.
+ .
+ This package is part of the official KDE admin module.
+
+Package: jackd
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 340
+Maintainer: Junichi Uekawa <dancer@debian.org>
+Architecture: i386
+Source: jack-audio-connection-kit
+Version: 0.98.1-5
+Depends: libc6 (>= 2.3.2.ds1-11), libc6 (>= 2.3.2.ds1-4), libcap1, libjack0.80.0-0 (= 0.98.1-5), libreadline4 (>= 4.3-1), libsndfile1 (>= 1.0.2-1)
+Suggests: qjackctl, jack-tools, meterbridge, libjackasyn0
+Description: JACK Audio Connection Kit (server and example clients)
+ Low-latency sound server. JACK allows the connection of multiple applications
+ to an audio device, as well as allowing them to share audio between
+ themselves.
+ .
+ See <http://jackit.sourceforge.net/> for more info.
+ .
+ This package contains the daemon jackd as well as some example clients.
+
+Package: libart-2.0-2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 136
+Maintainer: Ondřej Surý <ondrej@debian.org>
+Architecture: i386
+Source: libart-lgpl
+Version: 2.3.16-6
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Library of functions for 2D graphics - runtime files
+ A library of functions for 2D graphics supporting a superset of the
+ PostScript imaging model, designed to be integrated with graphics, artwork,
+ and illustration programs. It is written in optimized C, and is fully
+ compatible with C++. With a small footprint of 10,000 lines of code, it is
+ especially suitable for embedded applications.
+
+Package: karbon
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 2724
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: koffice
+Version: 1:1.3.2-2
+Replaces: koffice-libs (<< 1:1.2.90-0)
+Depends: kdelibs4 (>= 4:3.2.3), koffice-libs (>= 1:1.3.0-0), libart-2.0-2 (>= 2.3.16), libaspell15 (>= 0.50.5), libc6 (>= 2.3.2.ds1-4), libfam0c102, libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: a vector graphics application for the KDE Office Suite
+ Karbon is a vector graphics application.
+ .
+ This package is part of the KDE Office Suite.
+
+Package: libyaml-ruby1.8
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 328
+Maintainer: akira yamada <akira@debian.org>
+Architecture: i386
+Source: ruby1.8
+Version: 1.8.1+1.8.2pre2-3
+Depends: libiconv-ruby1.8, libc6 (>= 2.3.2.ds1-4), libruby1.8 (>= 1.8.1+1.8.2pre2-3)
+Recommends: libdbm-ruby1.8
+Description: YAML for Ruby 1.8
+ YAML(tm) (rhymes with "camel") is a straightforward machine parsable
+ data serialization format designed for human readability and
+ interaction with scripting languages such as Perl and Python. YAML is
+ optimized for data serialization, formatted dumping, configuration
+ files, log files, Internet messaging and filtering.
+ .
+ This package contains YAML handling library for Ruby 1.8.
+
+Package: kipi-plugins
+Status: install ok installed
+Priority: extra
+Section: checkinstall
+Installed-Size: 3452
+Maintainer: root@sirion
+Architecture: i386
+Version: 0-1
+Description: kde image plugins
+
+Package: libcdk4
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 320
+Maintainer: Stephen Zander <gibreel@debian.org>
+Architecture: i386
+Source: libcdk
+Version: 4.9.9-3.2
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1)
+Description: Curses Development Kit
+ CDK stands for 'Curses Development Kit' and it currently contains 21
+ ready to use widgets which facilitate the speedy development of full
+ screen curses programs. The current complement of widgets are: Alphalist,
+ Buttonbox, Calendar, Dialog, Entry, File Selector, Graph, Histogram,
+ Item List, Label, Marquee, Matrix, Menu, Multiple Line Entry, Radio List,
+ Scale, Scrolling List, Scrolling Window, Selection List, Slider, Template
+ and Viewer.
+ .
+ More information can be found at the CDK web site
+ http://www.vexus.ca/CDK.html .
+
+Package: libgtk1.2-common
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 940
+Maintainer: Akira TAGOH <tagoh@debian.org>
+Architecture: all
+Source: gtk+1.2
+Version: 1.2.10-17
+Replaces: libgtk1.2 (<< 1.2.10-4)
+Conffiles:
+ /etc/gtk/gtkrc.az 35a22d6744dfcb67a8efba689abdcaf2
+ /etc/gtk/gtkrc.cp1251 26a466ee49c21d9e4e81fc71de62ef66
+ /etc/gtk/gtkrc.cp1255 5b2b88230cbd20231e109b7ec26c50c0
+ /etc/gtk/gtkrc.he 3998d39e89de931de8c1eabe5730e1a0
+ /etc/gtk/gtkrc.hy 34d6d2dea5b5b641eea0856a10e59a6d
+ /etc/gtk/gtkrc.iso-8859-13 2003fad80d14cc7fce9456530b7d6767
+ /etc/gtk/gtkrc.iso-8859-14 4c05e4635b9b1d18d1a61e952a0a4d51
+ /etc/gtk/gtkrc.iso-8859-15 b57cfb45b56d2efde1235c785fc2a50a
+ /etc/gtk/gtkrc.iso-8859-2 7583eb79e9ff6371d6996e0b9223096c
+ /etc/gtk/gtkrc.iso-8859-3 8de6d603dce4b9a34a7edb0ed3ac7bf4
+ /etc/gtk/gtkrc.iso-8859-5 9f428a9108a19f41a117b6465f0881a0
+ /etc/gtk/gtkrc.iso-8859-7 a92356b895516fe527be5fe6d8afb5c9
+ /etc/gtk/gtkrc.iso-8859-9 f72492bacf98c61a9c39b5c746a68257
+ /etc/gtk/gtkrc.ja 198f6da4b968f6769bcb3a03f1ed775d
+ /etc/gtk/gtkrc.ka_GE.georgianacademy fde8a8bc49c326956615d5624144da88
+ /etc/gtk/gtkrc.ka_GE.georgianps a2f0cadd343c324ede9455d51c241914
+ /etc/gtk/gtkrc.ko 127e10d310e05eef8864c433689bd9f6
+ /etc/gtk/gtkrc.ru 4917134f95a1928ddf2ce24ca5220bf1
+ /etc/gtk/gtkrc.th 6e3b068760d7c9995645330434202ddb
+ /etc/gtk/gtkrc.uk 3c3194a96b9eb3805eb7e572da519fd7
+ /etc/gtk/gtkrc.utf-8 e4d2418b91287a002a06c7136428fd52
+ /etc/gtk/gtkrc.vi_VN.tcvn c16fbfb0d7fe373edfb5aaa9c99a0298
+ /etc/gtk/gtkrc.vi_VN.viscii c4e741a1a570ce6044cc626769cb1c11
+ /etc/gtk/gtkrc.zh_CN b59672dd230d7104857d2b87745cc991
+ /etc/gtk/gtkrc.zh_TW 92f685bc58695a5a8a03e0cc77e3dba0
+Description: Common files for the GTK+ library
+ The GIMP Toolkit is a freely available set of widgets for X.
+ GTK is easy to use, and has been implemented in such projects as
+ The GNU Image Manipulation Program (The GIMP), GNOME, a GNU
+ desktop set of utilities for X, and gzilla, a GNU web-browser.
+ .
+ This package contains the common files which the runtime libraries
+ need.
+
+Package: shared-mime-info
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 816
+Origin: Debian
+Maintainer: Filip Van Raemdonck <mechanix@debian.org>
+Bugs: debbugs://bugs.debian.org/
+Architecture: i386
+Version: 0.15-1
+Depends: libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.4.6), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1)
+Description: FreeDesktop.org shared MIME database and spec
+ This is the shared MIME-info database from the X Desktop Group. It is required
+ by any program complying to the Shared MIME-Info Database spec, which is also
+ included in this package.
+ .
+ At this time, only ROX uses this database. GNOME and KDE are expected to
+ follow soon, and hopefully others too.
+
+Package: libpq3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 288
+Maintainer: Oliver Elphick <Oliver.Elphick@lfix.co.uk>
+Architecture: i386
+Source: postgresql
+Version: 7.4.5-3
+Replaces: libpgsql2 (>= 7.3)
+Depends: libc6 (>= 2.3.2.ds1-4), libkrb53 (>= 1.3.2), libssl0.9.7
+Suggests: postgresql-doc, postgresql-client
+Conflicts: libpgsql2 (>= 7.3)
+Description: Shared library libpq.so.3 for PostgreSQL
+ C shared library to enable user programs to communicate with the
+ PostgreSQL database backend. The backend can be on another machine and
+ accessed through TCP/IP. Compatible with backends of 7.3 or later.
+ .
+ PostgreSQL is the foremost open source SQL database server
+
+Package: libt1-5
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 352
+Maintainer: Artur R. Czechowski <arturcz@hell.pl>
+Architecture: i386
+Source: t1lib
+Version: 5.0.2-3
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0)
+Description: Type 1 font rasterizer library - runtime
+ T1lib is an enhanced rasterizer for Type 1 fonts.
+ .
+ T1lib is based on the X11R5 font rasterizer code, but operates independently
+ of X11. It includes many enhancements, including underlining, antialiasing,
+ user-defined slant and extension factors, and rotation.
+ .
+ This package contains the shared libraries needed to run programs using T1lib.
+
+Package: phpdoc
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 19488
+Maintainer: Petr Cech <cech@debian.org>
+Architecture: all
+Version: 20030911-1.1
+Description: Documentation for PHP4 and PHP3
+ This package provides the documentation for the PHP4 scripting language.
+ It is mostly complete now, but it undergoes continual improvements.
+ .
+ PHP: Hypertext Preprocessor Version 4.0 is an HTML-embedded scripting
+ language. Much of its syntax is borrowed from C, Java and Perl with a
+ couple of unique PHP-specific features thrown in. The goal of the
+ language is to allow web developers to write dynamically generated
+ pages quickly.
+
+Package: kregexpeditor
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 908
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeutils
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: graphical regular expression editor plugin
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ KDE graphical regular expression editor plugin.
+ .
+ This package is part of the official KDE utils module.
+
+Package: libisccc0
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 136
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Source: bind9
+Version: 1:9.2.3+9.2.4-rc7-1
+Replaces: libbind0
+Depends: libc6 (>= 2.3.2.ds1-4), libisc7
+Conflicts: libbind0
+Description: Command Channel Library used by BIND
+ The Berkeley Internet Name Domain (BIND) implements an Internet domain
+ name server. BIND is the most widely-used name server software on the
+ Internet, and is supported by the Internet Software Consortium, www.isc.org.
+ .
+ This package delivers the libisccc shared library used by BIND's daemons
+ and clients, particularly rndc.
+
+Package: sysutils
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 156
+Maintainer: Lonnie Sauter <sauter@debian.org>
+Version: 1.3.8.5.1
+Replaces: bogo, memtest, procinfo
+Depends: libncurses5
+Conflicts: bogo, memtest, procinfo
+Description: Miscellaneous small system utilities.
+ This is a package incorporating various small utilities which are:
+ * procinfo - Displays system information from /proc (v17).
+ * memtest - Test system memory for errors (v2.93.1).
+ * bogomips - Shows the current bogomips rating without rebooting (v1.2).
+ * tofromdos - Converts DOS <-> Unix text files (v1.4).
+
+Package: modconf
+Status: install ok installed
+Priority: optional
+Section: base
+Installed-Size: 3728
+Maintainer: Frank Lichtenheld <djpig@debian.org>
+Architecture: all
+Version: 0.2.47
+Depends: whiptail-provider | whiptail, modutils (>= 2.1.85-14) | module-init-tools (>= 3.1-pre2-1)
+Description: Device Driver Configuration
+ Modconf provides a GUI for installing and configuring device driver modules.
+
+Package: esound-common
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 280
+Maintainer: Ryan Murray <rmurray@debian.org>
+Architecture: all
+Source: esound
+Version: 0.2.34-1
+Conflicts: libesd0-dev (<< 0.2.15-8)
+Conffiles:
+ /etc/esound/esd.conf ea3301881d9b2ed99b8819019289cf85
+Description: Enlightened Sound Daemon - Common files
+ This program is designed to mix together several digitized
+ audio streams for playback by a single device.
+ .
+ This package contains the documentation and configuration files.
+
+Package: arts
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 8
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: all
+Version: 1.3.0-1
+Depends: libartsc0 (>= 1.3.0-1), libarts1 (>= 1.3.0-1)
+Description: Analog Realtime Synthesizer (aRts) metapackage
+ aRts is a short form for "analog realtime synthesizer". The idea of the whole
+ thing is to create/process sound using small modules which do certain tasks.
+ These may be create a waveform (oscillators), play samples, filter data, add
+ signals, perform effects like delay/flanger/chorus, or output the data to
+ the soundcard.
+ .
+ aRts is the core sound system for KDE (and other systems)
+ .
+ This package is part of the official KDE aRts module.
+
+Package: xspecs
+Status: purge ok not-installed
+Priority: optional
+Section: x11
+
+Package: coreutils
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 7096
+Maintainer: Michael Stone <mstone@debian.org>
+Architecture: i386
+Version: 5.2.1-2
+Replaces: textutils, shellutils, fileutils, stat, debianutils (<= 2.3.1)
+Provides: textutils, shellutils, fileutils
+Pre-Depends: libacl1 (>= 2.2.11-1), libc6 (>= 2.3.2.ds1-4)
+Conflicts: stat
+Description: The GNU core utilities
+ This package contains the essential basic system utilities.
+ .
+ Specifically, this package includes:
+ basename cat chgrp chmod chown chroot cksum comm cp csplit cut date dd df dir
+ dircolors dirname du echo env expand expr factor false fmt fold groups head
+ hostid id install join link ln logname ls md5sum mkdir mkfifo mknod mv nice nl
+ nohup od paste pathchk pinky pr printenv printf ptx pwd readlink rm rmdir
+ sha1sum seq shred sleep sort split stat stty sum sync tac tail tee test touch
+ tr true tsort tty uname unexpand uniq unlink users vdir wc who whoami yes
+
+Package: aalib1-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 580
+Maintainer: Joey Hess <joeyh@debian.org>
+Architecture: i386
+Source: aalib
+Version: 1.4p5-22
+Depends: aalib1 (>= 1.2-18), libx11-dev, slang1-dev (>> 1.3.0-0), libncurses5-dev
+Description: ascii art library, development kit
+ AAlib is a portable ascii art graphics library. Internally, it works like
+ a graphics display, but the output is rendered into platform-independent
+ ascii graphics.
+ .
+ This package contains the static library and header files used in
+ development, plus developer's documentation.
+
+Package: kjumpingcube
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 304
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: Tactical one or two player game
+ KJumpingCube is a simple tactical game. You can play it against the
+ computer or against a friend. The playing field consists of squares
+ that contains points. By clicking on the squares you can increase
+ the points and if the points reach a maximum the points will jump to
+ the squares neighbours and take them over. Winner is the one, who
+ owns all squares.
+
+Package: libxpm-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 356
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs-dev (<< 4.3.0)
+Depends: libxpm4 (= 4.3.0.dfsg.1-7), libx11-dev, libc6-dev | libc-dev
+Conflicts: xlibs-dev (<< 4.3.0)
+Description: X pixmap library development files
+ Header files and a static version of the Xpm library are provided by this
+ package.
+ .
+ See the libxpm4 package for further information.
+
+Package: libsane
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 6832
+Maintainer: Julien BLACHE <jblache@debian.org>
+Architecture: i386
+Source: sane-backends
+Version: 1.0.14-7
+Replaces: libsane-extras (<< 1.0.12.1)
+Depends: debconf (>= 0.5.0), adduser (>= 3.47), makedev (>= 2.3.1-58), libc6 (>= 2.3.2.ds1-4), libgphoto2-2 (>= 2.1.4-6), libieee1284-3, libjpeg62, libusb-0.1-4 (>= 1:0.1.8), sane-utils (>= 1.0.14-7)
+Suggests: libsane-extras (>> 1.0.12.1), hotplug
+Conflicts: sane (<< 1.0.4), sane-gimp1.1 (<< 1.0.4), libusb0
+Conffiles:
+ /etc/sane.d/abaton.conf 51591e7ab98851effab49089323cb160
+ /etc/sane.d/agfafocus.conf f763f1f31d26507986aad58ca02f79f9
+ /etc/sane.d/apple.conf 602eda3ecedd81ef751d9241becb9142
+ /etc/sane.d/artec.conf 1b87eeb6069e6f5ac7b5f0cc4bf48083
+ /etc/sane.d/avision.conf 3ba45181e8de23329c5a7887a0fc43bf
+ /etc/sane.d/bh.conf ed8e137983ae58a7bf038180b29737bd
+ /etc/sane.d/canon.conf 4afe1a9ccf3c40ff7b667ac7dfb1de25
+ /etc/sane.d/canon630u.conf 5fae93df3328f1915e3d26f77a8c3b9d
+ /etc/sane.d/coolscan.conf b5a49230bc9b80a4358d966255d4697a
+ /etc/sane.d/coolscan2.conf e9039d4f201acacca70e8964ec22ee70
+ /etc/sane.d/dc25.conf 0659d0dee2b39c585b6ebc682af0dbd9
+ /etc/sane.d/dmc.conf 0731b2373c97cc98c5c42dd56e7fb05c
+ /etc/sane.d/epson.conf aa609856f61e272c7e39448fddb64a21
+ /etc/sane.d/fujitsu.conf 807c2986658811b4d00f423ebe7e0b72
+ /etc/sane.d/gt68xx.conf 56498796046969a437774646d19e42d9
+ /etc/sane.d/hp.conf 5328dfe188ece714bf9fdb7e26dc9d00
+ /etc/sane.d/leo.conf 008b9b3cad3c7073aa5331a453e68cd6
+ /etc/sane.d/matsushita.conf fe9a8941cd52c7e012724122d67a98e6
+ /etc/sane.d/microtek.conf 940c8db7e01ccaa6f2c5be2ca020ddf1
+ /etc/sane.d/microtek2.conf 75cb498c51441db57932a4895f7f0d96
+ /etc/sane.d/mustek.conf 3bbe13a911467cd77be64930d0794998
+ /etc/sane.d/mustek_pp.conf 701de507fdeb1dbc511ebd901fa8c431
+ /etc/sane.d/mustek_usb.conf f4080c5eacaf30b4ed871a5330960696
+ /etc/sane.d/nec.conf 5eed67a9759c991553fa3055af023a33
+ /etc/sane.d/pie.conf 7bdb319bd61b19389e93ed85a1ed85d1
+ /etc/sane.d/plustek.conf 3dc389e2eb9fa988514fb8d376a72aa2
+ /etc/sane.d/plustek_pp.conf 445a79b59e4a5bd09cdb15fefbf8ab01
+ /etc/sane.d/ricoh.conf b1891143384a7308ec17d9e6ac836201
+ /etc/sane.d/s9036.conf 5eed67a9759c991553fa3055af023a33
+ /etc/sane.d/sceptre.conf 9d7e8954714b47042b849ddbd2530973
+ /etc/sane.d/sharp.conf d16cb589cdceb30d4523334063ddf040
+ /etc/sane.d/sp15c.conf 74fd71c4ea2c8c58bbaa2cecfee56f7c
+ /etc/sane.d/st400.conf febd1d7966858a4a0352a2fe2c1abfa0
+ /etc/sane.d/tamarack.conf 93b1a500916dcfabd8a1c288029a5502
+ /etc/sane.d/test.conf eaccee9d3fb610a691705ddf94b9ec11
+ /etc/sane.d/teco1.conf 7976c7a3dd90fe100f30a23a29aaea89
+ /etc/sane.d/teco2.conf 1f873f79332e99cb0cd2b9eba938ac3b
+ /etc/sane.d/teco3.conf 7b632784a85ec6ead7d26e8fd195dea5
+ /etc/sane.d/umax.conf 362ccfd122d7a83ca222ce29caf67033
+ /etc/sane.d/umax_pp.conf afc05086c40b7718b12d07d4889be914
+ /etc/sane.d/umax1220u.conf 2d36f1f6c15bbfeaf2049d59dcfefe05
+ /etc/sane.d/artec_eplus48u.conf e6c6ec8236794350ac9ec95a2e8563eb
+ /etc/sane.d/ma1509.conf 73a9fd7af5924e04054f43e2708f5059
+ /etc/sane.d/ibm.conf d5eab60adbaf729bb5bf781fc4c5409d
+ /etc/sane.d/hp5400.conf 25848f289fb76aeb7f78e29ab323dbf8
+ /etc/sane.d/u12.conf 9ab31cd28e79474973fc02ccf1c06b99
+ /etc/sane.d/snapscan.conf f6a9dacc40b78867759bab822ed666db
+ /etc/sane.d/dc210.conf 821754802fb212acc9f48c7dd93ddaa1
+ /etc/sane.d/dc240.conf 821754802fb212acc9f48c7dd93ddaa1
+ /etc/sane.d/canon_pp.conf 2ecfac7c883bc980aba880f424abb8ad
+ /etc/sane.d/hpsj5s.conf 0e969889a4509e62ef352a0222d2620e
+ /etc/sane.d/gphoto2.conf ca55d23d02774d6eea321dcbd4099e5e
+ /etc/sane.d/qcam.conf 7a30e22cd391b7992646723df280f4fe
+ /etc/sane.d/v4l.conf c68d472ee915c19d73f255623f4e0223
+ /etc/sane.d/net.conf 74d6e085fcf8737e0af676efcb5882c1
+ /etc/sane.d/dll.conf afd102d56c6f1b2cba6c9a7893deae96
+ /etc/hotplug/blacklist.d/libsane 6e7c863fc325795db52d84ce2ae89087
+ /etc/hotplug/usb/libusbscanner 01b47673db69230cea3dfafdf7ec461b
+ /etc/hotplug/usb/libsane.usermap 04a94d28aab3d303d3ba348d8d7c8c1a
+ /etc/devfs/conf.d/scanner fff2ef5dc68eaefb433dcfd5c753dc0d
+Description: API library for scanners
+ SANE stands for "Scanner Access Now Easy" and is an application
+ programming interface (API) that provides standardized access to any
+ raster image scanner hardware (flatbed scanner, hand-held scanner,
+ video- and still-cameras, frame-grabbers, etc.). The SANE standard is
+ free and its discussion and development are open to everybody. The
+ current source code is written to support several operating systems,
+ including GNU/Linux, OS/2, Win32 and various Unices and is available
+ under the GNU General Public License (commercial applications and
+ backends are welcome, too, however).
+ .
+ This package includes the backends for many scanners. A libsane-extras
+ package containing some not-yet-included backends is available separately.
+ .
+ Graphical frontends for sane are available in the packages sane and
+ xsane. Command line frontend scanimage, saned and sane-find-scanner are
+ available in the sane-utils package.
+
+Package: libnetwork-ipv4addr-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 96
+Maintainer: Bernd Eckenfels <ecki@debian.org>
+Architecture: all
+Version: 0.10-1.1
+Depends: perl (>= 5.6.0-16)
+Description: The Net::IPv4Addr perl module API and ipv4calc script
+ ipv4calc can be used to calculate the netmask, broadcast and network
+ address of an IPv4 (Internet) address.
+
+Package: bomberclone-data
+Status: purge ok not-installed
+Priority: extra
+Section: games
+Architecture: all
+
+Package: sudo
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 360
+Maintainer: Bdale Garbee <bdale@gag.com>
+Architecture: i386
+Version: 1.6.7p5-2
+Depends: libc6 (>= 2.3.2.ds1-4), libpam0g (>= 0.76), libpam-modules
+Conffiles:
+ /etc/init.d/sudo 26339278ec12cf3fde09a65a56b9db6d
+ /etc/pam.d/sudo 4235c2693d4fe9930743195f09a2cc5c
+Description: Provide limited super user privileges to specific users
+ Sudo is a program designed to allow a sysadmin to give limited root
+ privileges to users and log root activity. The basic philosophy is to give
+ as few privileges as possible but still allow people to get their work done.
+
+Package: libfreetype6
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 692
+Maintainer: Anthony Fok <foka@debian.org>
+Architecture: i386
+Source: freetype
+Version: 2.1.7-2.2
+Replaces: freetype0, freetype1
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1)
+Suggests: libfreetype6-dev
+Conflicts: freetype, xpdf-reader (<< 1.00-4)
+Description: FreeType 2 font engine, shared library files
+ The FreeType project is a team of volunteers who develop free,
+ portable and high-quality software solutions for digital typography.
+ They specifically target embedded systems and focus on bringing small,
+ efficient and ubiquitous products.
+ .
+ The FreeType 2 library is their new software font engine. It has been
+ designed to provide the following important features:
+ * A universal and simple API to manage font files
+ * Support for several font formats through loadable modules
+ * High-quality anti-aliasing
+ * High portability & performance
+ .
+ Supported font formats include:
+ * TrueType files (.ttf) and collections (.ttc)
+ * Type 1 font files both in ASCII (.pfa) or binary (.pfb) format
+ * Type 1 Multiple Master fonts. The FreeType 2 API also provides
+ routines to manage design instances easily
+ * Type 1 CID-keyed fonts
+ * OpenType/CFF (.otf) fonts
+ * CFF/Type 2 fonts
+ * Adobe CEF fonts (.cef), used to embed fonts in SVG documents with
+ the Adobe SVG viewer plugin.
+ * Windows FNT/FON bitmap fonts
+ .
+ This package contains the files needed to run programs that use the
+ FreeType 2 library.
+ .
+ Home Page: http://www.freetype.org/
+ Authors: David Turner <david.turner@freetype.org>
+ Robert Wilhelm <robert.wilhelm@freetype.org>
+ Werner Lemberg <werner.lemberg@freetype.org>
+
+Package: debianutils
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 228
+Maintainer: Clint Adams <schizo@debian.org>
+Architecture: i386
+Version: 2.8.4
+Replaces: miscutils, cron (<= 3.0pl1-31), tetex-bin (<< 1.0.6-1.1), manpages-fr (<= 0.9.3-1)
+Pre-Depends: libc6 (>= 2.3.2.ds1-4), coreutils (>= 4.5.8-1)
+Conflicts: manpages-fr (<= 0.9.3-1)
+Description: Miscellaneous utilities specific to Debian
+ This package provides a number of small utilities which are used
+ primarily by the installation scripts of Debian packages, although
+ you may use them directly.
+ .
+ The specific utilities included are: installkernel mkboot mktemp
+ run-parts savelog sensible-browser sensible-editor sensible-pager
+ tempfile which.
+
+Package: kmahjongg
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 988
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: the classic mahjongg game for KDE project
+ Your mission in this game is to remove all tiles from the game board. A
+ matching pair of tiles can be removed, if they are 'free', which means that
+ no other tiles block them on the left or right side.
+
+Package: libmagick5.5.7
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 2744
+Maintainer: Ryuichi Arafune <arafune@debian.org>
+Source: imagemagick
+Version: 5:5.5.7.9-1.1
+Config-Version: 5:5.5.7.9-1.1
+Replaces: libmagick, libmagick-lzw, libmagick5g, imagemagick (<= 4:5.4.3.1-1), libmagick5 (>= 4:5.5.1)
+Provides: libmagick5
+Depends: libbz2-1.0, libc6 (>= 2.3.2.ds1-4), libfreetype6 (>= 2.1.5-1), libjpeg62, liblcms1 (>= 1.08-1), libpng12-0 (>= 1.2.5.0-4), libtiff3g, libwmf0.2-7 (>= 0.2.8), libxml2 (>= 2.6.3), xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Pre-Depends: dpkg (>= 1.6.8)
+Conflicts: libmagick, libmagick-lzw, libmagick5g, imagemagick (<= 4:5.4.3.1-1), libmagick5 (>= 4:5.5.1)
+Description: Image manipulation library (free version)
+ LibMagick supports loading and saving a very large set of image formats.
+ It allows a lot of image manipulation as well.
+ .
+ This is the `Free' version of libMagick. It doesn't come with the LZW
+ compression algorithms. It you want to compress your GIFs for example,
+ you should rebuild this package from source (see debian/rules).
+
+Package: python2.3-ldap
+Status: install ok installed
+Priority: optional
+Section: python
+Installed-Size: 276
+Maintainer: Peter Hawkins <peterh@debian.org>
+Architecture: i386
+Source: python-ldap
+Version: 2.0.1-1
+Replaces: python2.3-ldap-tls
+Depends: libc6 (>= 2.3.2.ds1-4), libldap2 (>= 2.1.17-1), libsasl2 (>= 2.1.18), libssl0.9.7, python2.3
+Suggests: python-ldap-doc
+Conflicts: python2.3-ldap-tls
+Description: A LDAP interface module for Python 2.3
+ This module provides a Python interface to the OpenLDAP client library
+ (LDAP is the Lightweight Directory Access Protocol).
+
+Package: openoffice.org
+Status: install ok installed
+Priority: optional
+Section: contrib/editors
+Installed-Size: 28880
+Maintainer: Debian OpenOffice Team <debian-openoffice@lists.debian.org>
+Architecture: all
+Version: 1.1.2-3
+Replaces: openoffice.org1.1, openoffice-de-en, openoffice-de, openoffice.org-bin (<= 1.0.3-2), openoffice.org-gnome
+Provides: openoffice.org1.1, openoffice-de-en, openoffice-de
+Depends: openoffice.org-debian-files (>> 1.1.1+1.1.2rc3), openoffice.org-bin (>> 1.1.1+1.1.2rc3), openoffice.org-l10n-en (>> 1.1.1+1.1.2rc3) | openoffice.org-l10n-1.1.2, dictionaries-common (>= 0.10) | openoffice.org-updatedicts, ttf-opensymbol
+Suggests: myspell-dictionary, openoffice.org-help, menu, ooqstart-gnome | oooqs-kde, unixodbc, cupsys-bsd, libsane, ttf-bitstream-vera, prelink, openoffice.org-hyphenation, openoffice.org-thesaurus, www-browser, libxrender1, msttcorefonts, openoffice.org-mimelnk
+Conflicts: openoffice.org1.1, openoffice, openoffice.org-l10n, openoffice.org-l10n-1.1.0, openoffice-de-en, openoffice-de, oooqs-kde (<= 1.0rc3-2), openoffice.org-spellcheck-de-de (<= 20020701-6), openoffice.org-spellcheck-de-ch (<= 20020701-6), openoffice.org-spellcheck-de-at (<= 20020701-6), openoffice.org-spellcheck-es (<= 0.0.2002.01.20-2), openoffice.org-spellcheck-fr-fr (<= 20030727-2), openoffice.org-gnome, openoffice.org-spellcheck-nb-no (<= 20020814-1), openoffice.org-spellcheck-nn-no (<= 20021023-1), openoffice.org-l10n-1.1.1
+Conffiles:
+ /etc/openoffice/sofficerc f978973d59694de44ea4e39dcb281b3d
+ /etc/openoffice/psprint.conf 940791bb3fd3451a505b3c056595b9de
+Description: high-quality office productivity suite
+ OpenOffice.org is a full-featured office productivity suite that provides
+ a near drop-in replacement for Microsoft(R) Office.
+ .
+ You can extend the functionality of OpenOffice.org by installing these
+ packages:
+ * myspell-dictionary: Myspell dictionaries for use with OpenOffice.org
+ * openoffice.org-help: User help
+ * openoffice.org-thesaurus: Thesauri for the use with OpenOffice.org
+ * openoffice.org-hyphenation: Hyphenation patterns for OpenOffice.org
+ * ooqstart-gnome/oooqs-kde: Quick start applet for Gnome/KDE desktops
+ * openoffice.org-mimelnk: OpenOffice.org MIME bindings
+ * menu: Will add openoffice.org menu entries for every Debian window manager.
+ * unixodbc: ODBC database support
+ * cupsys-bsd: Allows OpenOffice.org to detect your CUPS printer queues
+ automatically
+ * libsane: Use your sane-supported scanner with OpenOffice.org
+ * libxrender1: Speed up display by using Xrender library
+ * msttcorefonts: Installs standard MS truetype fonts (contrib)
+ .
+ See README.Debian for information about using OpenOffice.org in Debian, known
+ bugs and workarounds. More information about the Debian packages is available
+ at http://openoffice.debian.net or join us on IRC #debian-oo.
+
+Package: kdesdk-scripts
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 744
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: all
+Source: kdesdk
+Version: 4:3.2.3-2
+Replaces: kdevelop (<< 1:1.4.0-3.2)
+Depends: perl, python
+Recommends: automake1.7 | automaken, cvs, gawk
+Suggests: dmalloc, gdb, kdelibs4-doc, qt3-doc, valgrind
+Description: a set of useful development scripts for KDE
+ This package contains a number of scripts which can be used to help in
+ developing KDE-based applications. Many of these scripts however are
+ not specific to KDE, and in particular there are several general-use
+ scripts to help users in working with CVS repositories.
+ .
+ In addition to these scripts, this package provides:
+ - gdb macros for Qt/KDE programming;
+ - vim and emacs helper files for Qt/KDE programming;
+ - bash and zsh completion controls for KDE apps;
+ - valgrind error suppressions for KDE apps.
+ .
+ This package is part of the KDE Software Development Kit.
+
+Package: samba
+Status: deinstall ok config-files
+Priority: optional
+Section: net
+Installed-Size: 5912
+Maintainer: Eloy A. Paris <peloy@debian.org>
+Architecture: i386
+Version: 3.0.4-3
+Config-Version: 3.0.4-3
+Replaces: samba-common (<= 2.0.5a-2)
+Depends: samba-common (= 3.0.4-3), netbase, logrotate, libacl1 (>= 2.2.11-1), libc6 (>= 2.3.2.ds1-4), libcomerr2 (>= 1.33-3), libcupsys2 (>= 1.1.19final-1), libkrb53 (>= 1.3.2), libldap2 (>= 2.1.17-1), libpam0g (>= 0.76), libpopt0 (>= 1.7), debconf (>= 0.5) | debconf-2.0, libpam-runtime (>= 0.76-13.1), libpam-modules
+Suggests: samba-doc
+Conffiles:
+ /etc/logrotate.d/samba 5774ff5ad994638f33ddc7d53a2a205d
+ /etc/init.d/samba 4577aa7e1a231074c8d5a4af875c5462
+ /etc/cron.daily/samba f6519535df7964f95cdd7db501bf3ad2
+Description: a LanManager-like file and printer server for Unix
+ The Samba software suite is a collection of programs that
+ implements the SMB protocol for unix systems, allowing you to serve
+ files and printers to Windows, NT, OS/2 and DOS clients. This protocol
+ is sometimes also referred to as the LanManager or NetBIOS protocol.
+ .
+ This package contains all the components necessary to turn your
+ Debian GNU/Linux box into a powerful file and printer server.
+ .
+ Currently, the Samba Debian packages consist of the following:
+ .
+ samba - LanManager-like file and printer server for Unix.
+ samba-common - Samba common files used by both the server and the client.
+ smbclient - LanManager-like simple client for Unix.
+ swat - Samba Web Administration Tool
+ samba-doc - Samba documentation.
+ smbfs - Mount and umount commands for the smbfs (kernels 2.2.x and above).
+ libpam-smbpass - pluggable authentication module for SMB password database
+ libsmbclient - Shared library that allows applications to talk to SMB servers
+ libsmbclient-dev - libsmbclient shared libraries
+ winbind: Service to resolve user and group information from Windows NT servers
+ python2.3-samba: Python bindings that allow access to various aspects of Samba
+ .
+ It is possible to install a subset of these packages depending on
+ your particular needs. For example, to access other SMB servers you
+ should only need the smbclient and samba-common packages.
+
+Package: finger
+Status: install ok installed
+Priority: standard
+Section: net
+Installed-Size: 80
+Maintainer: Anibal Monsalve Salazar <A.Monsalve.Salazar@IEEE.org>
+Architecture: i386
+Source: bsd-finger
+Version: 0.17-7
+Replaces: netstd
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: user information lookup program
+ finger displays information about the system users.
+
+Package: libunicode-string-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 352
+Maintainer: Jaldhar H. Vyas <jaldhar@debian.org>
+Version: 2.07-1
+Depends: libmime-base64-perl, perlapi-5.8.0, perl (>= 5.8.0-17)
+Description: Perl modules for Unicode strings
+ This package contains the Unicode::String and Unicode::CharName modules that
+ enable the representation and manipulation of Unicode character strings in
+ perl 5
+
+Package: libxml-parser-perl
+Status: purge ok not-installed
+Priority: optional
+Section: interpreters
+
+Package: libgii0-target-x
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 92
+Maintainer: Martin Albert <ma@debian.org>
+Architecture: i386
+Source: libgii
+Version: 1:0.8.5-2
+Replaces: libgii0 (<< 1:0.8.1+rc5)
+Depends: libc6 (>= 2.3.2.ds1-4), libgii0 (>= 1:0.8.5-2), libx11-6 | xlibs (>> 4.1.0)
+Conflicts: libgii0 (<< 1:0.8.1+rc5)
+Description: General Input Interface X input target
+ "General Graphics Interface" - a fast, portable graphics environment.
+ .
+ This package contains input modules that make input sources available
+ for use with LibGII, the input library developed by the GGI project.
+ .
+ Input modules are included for these devices:
+ .
+ x Keyboard and mouse input from a newly created X window
+ xwin Keyboard, mouse and expose input from an existing X window
+ .
+ Usually, it is not necessary to specify which of these input devices
+ you want to use; LibGGI normally finds an appropriate input device.
+
+Package: libxmuu1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 312
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: xlibs (<< 4.3.0)
+Description: lightweight X Window System miscellaneous utility library
+ libXmuu is a very small set of miscellaneous utility functions extracted
+ from Xmu, Xt, and Xaw. This library is intended for X clients that need the
+ occasional useful function from these libraries but do not require the
+ toolkit overhead. To use libXmuu, simply include the headers for the other
+ libraries in the client and link against Xmuu instead of Xmu, Xt, and Xaw.
+ Needless to say, if the client uses functions from Xmu, Xt, or Xaw that are
+ not present in Xmuu, it will fail to link.
+
+Package: libkrb5-17-heimdal
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 316
+Maintainer: Brian May <bam@debian.org>
+Architecture: i386
+Source: heimdal
+Version: 0.6.1-1
+Config-Version: 0.6.1-1
+Replaces: heimdal-lib (<< 0.3e-5)
+Depends: libasn1-6-heimdal (>= 0.6.1), libc6 (>= 2.3.2.ds1-4), libcomerr2 (>= 1.33-3), libkrb-1-kerberos4kth (>= 1.2.2-10), libroken16-kerberos4kth (>= 1.2.2-10)
+Conflicts: heimdal-libs (<< 0.3e-5)
+Description: Libraries for Heimdal Kerberos
+ Heimdal is a free implementation of Kerberos 5, that aims to be
+ compatible with MIT Kerberos.
+ .
+ This package contains the kerberos 5 library.
+
+Package: byacc
+Status: install ok installed
+Priority: extra
+Section: devel
+Installed-Size: 104
+Maintainer: Jason Henry Parker <henry@debian.org>
+Version: 1.9.1-1
+Depends: libc6 (>= 2.2.4-4)
+Description: The Berkeley LALR parser generator
+ Yacc reads the grammar specification in a file
+ and generates an LR(1) parser for it. The parsers consist
+ of a set of LALR(1) parsing tables and a driver routine
+ written in the C programming language.
+
+Package: bastille
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 1504
+Maintainer: Javier Fernandez-Sanguino Pen~a <jfs@computer.org>
+Architecture: i386
+Version: 1:2.1.1-7
+Depends: perl5, libcurses-perl
+Recommends: whois, psad, bind9-host | host
+Suggests: acct, perl-tk (>= 1:800.011) | libgtk-perl
+Conflicts: libcurses-widgets-perl
+Conffiles:
+ /etc/init.d/bastille-firewall d32f2959e7a1cecccf9f8602a7860cd9
+ /etc/Bastille/bastille-firewall-early.sh 36795ccb72f065d6305cb5852013106a
+Description: Security hardening tool
+ Bastille Linux is a security hardening program for Linux. That is,
+ it can tighten your operating system and improving its security. Both
+ removing unnecessary services and improving your local configuration
+ security-wise.
+ .
+ The main goal of Bastille Linux is not only to secure the system, but
+ also to educate the installing administrator about the security issues
+ involved in what it does. Each step (all are optional) provides extensive
+ descriptions on what security issues are involved.
+ If run in the preferred Interactive mode, it can teach you a good deal
+ about Security while personalizing your system security state. If run
+ in the quicker Automated mode, it can quickly tighten your machine, once
+ a default profile is selected.
+ .
+ Bastille Linux works for several Linux distributions, this package
+ has been specifically modified to work for the Debian GNU/Linux
+ distribution.
+ .
+ Homepage: http://www.bastille-linux.org/
+
+Package: libdb1-compat
+Status: install ok installed
+Priority: required
+Section: oldlibs
+Installed-Size: 108
+Maintainer: Colin Watson <cjwatson@debian.org>
+Source: db1-compat
+Version: 2.1.3-7
+Replaces: libc6 (<< 2.2.5-13), libc6.1 (<< 2.2.5-13), libc0.3 (<< 2.2.5-13)
+Depends: libc6 (>= 2.2.5-13)
+Description: The Berkeley database routines [glibc 2.0/2.1 compatibility]
+ libdb is a library for manipulating database files, developed at Berkeley.
+ .
+ It supports three kinds of file formats:
+ * btree. A representation of a sorted, balanced tree structure.
+ * hashed. An extensible, dynamic hashing scheme.
+ * UNIX file oriented. A byte stream file with fixed or variable length
+ records.
+ .
+ This library exists for compatibility with applications built against
+ glibc 2.0 or 2.1. There is intentionally no corresponding development
+ package. Do not link new applications against this library!
+
+Package: libsdl1.2-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 3416
+Maintainer: Debian SDL maintainers <mrd-sdl@debian.org>
+Architecture: i386
+Source: libsdl1.2
+Version: 1.2.7-10
+Replaces: libsdl-dev, libsdl0.11-dev, libsdl1.0-dev, libsdl1.1-dev
+Provides: libsdl-dev
+Depends: libsdl1.2debian (= 1.2.7-10), libx11-dev | xlibs-dev (>> 4.1.0), libxext-dev | xlibs-dev (>> 4.1.0), xlibmesa-glu-dev | libglu-dev, libsvga1-dev, libasound2-dev, aalib1-dev
+Conflicts: xlibs-pic (<< 4.1.0-10), libsdl-dev, libsdl0.11-dev, libsdl0.11, libsdl1.0-dev, libsdl1.1-dev
+Description: Simple DirectMedia Layer development files
+ SDL is a library that allows programs portable low level access to a video
+ framebuffer, audio output, mouse, and keyboard.
+ .
+ This package contains the files needed to compile and link programs which
+ use SDL.
+
+Package: gdb
+Status: install ok installed
+Priority: standard
+Section: devel
+Installed-Size: 5036
+Maintainer: Daniel Jacobowitz <dan@debian.org>
+Architecture: i386
+Version: 6.1-3
+Replaces: gdb-arm, insight (<< 6.1+cvs.2004.04.07-1)
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), libreadline4 (>= 4.3-1)
+Conflicts: gdb-arm
+Description: The GNU Debugger
+ GDB is a source-level debugger, capable of breaking programs at
+ any specific line, displaying variable values, and determining
+ where errors occurred. Currently, it works for C, C++, Fortran
+ Modula 2 and Java programs. A must-have for any serious
+ programmer.
+
+Package: menu
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 1428
+Maintainer: Bill Allombert <ballombe@debian.org>
+Architecture: i386
+Version: 2.1.17
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1), dpkg (>= 1.10)
+Suggests: gksu | kdebase-bin
+Conffiles:
+ /etc/menu-methods/translate_menus af05cfaffc7c08974af34dd33caa8271
+ /etc/menu-methods/menu.h b9eef853cdee5589e3237a8d5df15077
+ /etc/menu-methods/lang.h 84dd61f24382948b764e821761ce3939
+ /etc/menu-methods/menu.config ae6ec52278a5f4abf37db7f9955069ec
+Description: Provides update-menus functions for some applications
+ The intent of this package is to streamline the menus (like the
+ fvwm2 ones) in Debian. For this purpose, menu provides an "update-menus"
+ command, that will read all installed menu files (as provided by
+ other packages in /usr/lib/menu), and run the frontends for various
+ window-managers in /etc/menu-methods to create startup files for
+ the window managers (or pdmenu).
+ The user and system admin can easily override the menu files
+ on a by-user or by-system bases.
+
+Package: phpgroupware
+Status: deinstall ok config-files
+Priority: optional
+Section: web
+Installed-Size: 1001
+Maintainer: Thomas Viehmann <tv@beamnet.de>
+Version: 0.9.14.007-4
+Config-Version: 0.9.14.007-4
+Replaces: phpgroupware-core
+Provides: phpgroupware-core-doc
+Depends: apache | httpd, php4 (>= 4:4.1.2-6) | php4-cgi (>= 4:4.1.2-6), php4-imap, php4-pgsql | php4-mysql, phpgroupware-phpgwapi (>= 0.9.14.007-4), phpgroupware-setup (>= 0.9.14.007-4), phpgroupware-admin (>= 0.9.14.007-4), phpgroupware-preferences (>= 0.9.14.007-4), wwwconfig-common (>= 0.0.33), debconf (>= 0.5)
+Recommends: php4-ldap
+Suggests: slapd | ldap-server, postgresql | mysql-server, courier-imap | imap-server, libdbi-perl, phpgroupware-manual, phpgroupware-todo, phpgroupware-notes, phpgroupware-email, phpgroupware-nntp, phpgroupware-calendar, phpgroupware-addressbook
+Conflicts: phpgroupware-doc, phpgroupware-unstable-apps, phpgroupware-transy, phpgroupware-core-doc, phpgroupware-core (<= 0.9.14.007)
+Conffiles:
+ /etc/phpgroupware/apache.conf f86af5f9c7f9725b4844185c87c508d6
+Description: web based groupWare system written in PHP
+ phpGroupWare is a fully web based groupware system. It includes applications
+ such as email, calendar, todo list, address book, file manager, notepad.
+ .
+ This is only the base package, the modules are shipped separately in
+ packages named "phpgroupware-<module>".
+
+Package: openoffice.org-bin
+Status: install ok installed
+Priority: optional
+Section: contrib/editors
+Installed-Size: 126244
+Maintainer: Debian OpenOffice Team <debian-openoffice@lists.debian.org>
+Architecture: i386
+Source: openoffice.org
+Version: 1.1.2-3
+Replaces: openoffice.org1.1-bin, openoffice.org-gnome
+Provides: openoffice.org1.1-bin
+Depends: libart-2.0-2 (>= 2.3.16), libaudio2, libc6 (>= 2.3.2.ds1-4), libcurl3, libdb4.2++, libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libmyspell3, libneon23 (>= 0.23.9.dfsg.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libstlport4.6, libx11-6 | xlibs (>> 4.1.0), libxaw7 (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), debconf (>= 1.2.0) | debconf-2.0, openoffice.org (>> 1.1.1+1.1.2rc3)
+Conflicts: openoffice.org1.1-bin
+Description: OpenOffice.org office suite binary files
+ OpenOffice.org is a full-featured office productivity suite that provides
+ a near drop-in replacement for Microsoft(R) Office.
+ .
+ This package contains the architecture-dependent binaries and libraries of
+ OpenOffice.org. See the openoffice.org package for more information.
+ .
+ For latest news on OpenOffice.org in Debian, see
+ http://openoffice.debian.net
+
+Package: makedev
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 160
+Maintainer: Bdale Garbee <bdale@gag.com>
+Architecture: all
+Version: 2.3.1-75
+Depends: base-passwd (>= 3.0.4)
+Conflicts: udev (<= 0.024-7)
+Conffiles:
+ /etc/init.d/makedev c0f39eaa8fc5eec67b7ed860f787261b
+Description: Creates device files in /dev
+ The MAKEDEV executable is used to create device files, often in /dev.
+ .
+ Device files are special files through which applications can interact
+ with hardware.
+
+Package: xpdf-reader
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 1662
+Maintainer: Hamish Moffatt <hamish@debian.org>
+Architecture: i386
+Source: xpdf
+Version: 3.00-8
+Provides: pdf-viewer, postscript-preview
+Depends: lesstif2, libc6 (>= 2.3.2.ds1-4), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libpaper1, libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libt1-5 (>= 5.0.2), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxp6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), gsfonts (>= 6.0-1), xpdf-common (= 3.00-8)
+Suggests: www-browser
+Conflicts: xpdf-i (<= 0.90-8), xpdf (<= 0.93-6)
+Description: Portable Document Format (PDF) suite -- viewer for X11
+ xpdf is a suite of tools for Portable Document Format (PDF) files. (These are
+ sometimes called 'Acrobat' files after the name of Adobe's PDF software.)
+ .
+ This package contains xpdf itself, a PDF viewer for X11.
+ xpdf is designed to be small and efficient. xpdf supports encrypted
+ PDF files. Standard X fonts, Truetype fonts and Type 1 fonts are supported.
+ .
+ This package also contains pdftoppm, a utility for converting
+ PDF files to PBM, PGM and PPM formats.
+ .
+ See also the xpdf-utils package for conversion utilities and the
+ other xpdf-* packages for additional language support.
+
+Package: gtk2-engines-thingeramik
+Status: purge ok not-installed
+Priority: optional
+Section: graphics
+
+Package: kommander
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 2600
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: quanta
+Version: 1:3.2.3-2
+Replaces: quanta (<< 1:3.1.0-3)
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: create dialogs that generate text through user interaction
+ Kommander is a set of tools that allow you to create dynamic GUI dialogs
+ that generate, based on their state, a piece of text. The piece of text
+ can be a command line to a program, any piece of code, business
+ documents that contain a lot of repititious or templated text and so on.
+ .
+ The resulting generated text can then be executed as a command line
+ program (hence the name "Kommander"), written to a file, passed to a
+ script for extended processing, and literally anything else you can
+ think of. And you aren't required to write a single line of code!
+ .
+ This package is part of the official KDE web development module.
+
+Package: ipsvd
+Status: purge ok not-installed
+Priority: optional
+Section: net
+
+Package: kdelibs
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 48
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: all
+Version: 4:3.3.0-1.1
+Depends: kdelibs4 (>= 4:3.3.0-1.1), kdelibs-bin (>= 4:3.3.0-1.1), kdelibs-data (>= 4:3.3.0-1.1)
+Description: KDE core libraries metapackage
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This package depends on the minimum required packages to run a KDE
+ application.
+
+Package: libxml2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1260
+Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs@lists.alioth.debian.org>
+Architecture: i386
+Version: 2.6.11-3
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1)
+Recommends: xml-core
+Description: GNOME XML library
+ XML is a metalanguage to let you design your own markup language.
+ A regular markup language defines a way to describe information in
+ a certain class of documents (eg HTML). XML lets you define your
+ own customized markup languages for many classes of document. It
+ can do this because it's written in SGML, the international standard
+ metalanguage for markup languages.
+ .
+ This package provides a library providing an extensive API to handle
+ such XML data files.
+
+Package: libxml1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 568
+Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs@lists.alioth.debian.org>
+Architecture: i386
+Source: libxml
+Version: 1:1.8.17-8
+Replaces: libxml0
+Provides: libxml0
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1)
+Conflicts: libxml0
+Description: GNOME XML library
+ XML is a metalanguage to let you design your own markup language.
+ A regular markup language defines a way to describe information in
+ a certain class of documents (eg HTML). XML lets you define your
+ own customized markup languages for many classes of document. It
+ can do this because it's written in SGML, the international standard
+ metalanguage for markup languages.
+
+Package: pi
+Status: install ok installed
+Priority: optional
+Section: math
+Installed-Size: 56
+Maintainer: Richard Kreckel <kreckel@ginac.de>
+Architecture: i386
+Source: cln
+Version: 1.1.8-2
+Depends: libcln3
+Description: Compute Archimedes' constant Pi to arbitrary precision
+ This program computes Archimedes' constant Pi to arbitrary precision.
+ It is extremely fast and the precision is only limited by your machine's
+ main memory.
+ .
+ This is a teaser for the CLN library, to which the actual computation is
+ delegated. You may use these decimal digits as random digits or search
+ them for hidden messages. :-)
+
+Package: telnet
+Status: install ok installed
+Priority: standard
+Section: net
+Installed-Size: 184
+Maintainer: Robert Millan <rmh@debian.org>
+Architecture: i386
+Source: netkit-telnet
+Version: 0.17-25
+Replaces: netstd
+Provides: telnet-client
+Depends: netbase, libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libncurses5 (>= 5.4-1), libstdc++5 (>= 1:3.3.4-1)
+Description: The telnet client.
+ The telnet command is used for interactive communication with another host
+ using the TELNET protocol.
+
+Package: kooka
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 1164
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegraphics
+Version: 4:3.3.0-1.1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libieee1284-3, libjpeg62, libkscan1 (>= 4:3.3.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsane (>= 1.0.11-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libtiff4, libusb-0.1-4 (>= 1:0.1.8), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: gocr
+Suggests: khelpcenter
+Conffiles:
+ /etc/kde3/kookarc 7afd20050a7c6b83b2e13aa3fdb3f851
+Description: Scanner program for KDE
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ Kooka is a scanner program based on SANE and KScan library.
+ .
+ This package is part of the official KDE graphics module.
+
+Package: login
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 1493
+Maintainer: Karl Ramm <kcr@debian.org>
+Architecture: i386
+Source: shadow
+Version: 1:4.0.3-30.1
+Replaces: shadow-login, shadow-passwd, shellutils (<< 2.0-2), manpages-de (<= 0.4-4), manpages-fr, manpages-hu, manpages-ja
+Depends: libpam-modules (>= 0.72-5)
+Pre-Depends: libc6 (>= 2.3.2.ds1-4), libpam0g (>= 0.76), libpam-runtime (>= 0.76-14)
+Conflicts: shadow-login, pam-apps, secure-su, suidregister (<< 0.50)
+Conffiles:
+ /etc/pam.d/login 5d434de0fb3a14a57ee558faf85482fc
+ /etc/pam.d/su 85dd02caeb289c469bdcc0dd9ad94986
+ /etc/login.defs f484432bbb474c423dfd7dd55793edfc
+ /etc/securetty 03bcd882759f7b474cec241d90e791ef
+Description: System login tools
+ These tools are required to be able to login and use your system. The
+ login program invokes your user shell and enables command execution. The
+ newgrp program is used to change your effective group ID (useful for
+ workgroup type situations). The su program allows changing your effective
+ user ID (useful being able to execute commands as another user).
+
+Package: libdebtags-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 1560
+Maintainer: Enrico Zini <enrico@debian.org>
+Architecture: i386
+Source: libdebtags
+Version: 0.9.5
+Depends: libdebtags0 (= 0.9.5), libtagcoll-dev (>= 0.99), libapt-pkg-dev
+Recommends: pkg-config
+Description: Unified access to Debtags and APT databases (development version)
+ libdebtags provides functionality to search and categorize debian packages
+ using the Debtags and APT databases. Functions provided:
+ .
+ * search packages by normal debian/control fields and package tags
+ * find packages related to a given one
+ * edit debtags package categorization, with undo support
+ * save and submit tag patches to the central tag archive
+ .
+ libdebtags is written with the intent to make it easy and efficient for
+ applications to include debtags support.
+ .
+ Warning: the API has not yet been stabilized and is subject to change in
+ future versions.
+
+Package: libflac++2c102
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 164
+Maintainer: Matt Zimmerman <mdz@debian.org>
+Architecture: i386
+Source: flac
+Version: 1.1.0-11
+Replaces: libflac++1 (= 1.0.4-1)
+Depends: libc6 (>= 2.3.2.ds1-4), libflac4
+Conflicts: libflac++1 (= 1.0.4-1), libflac++2
+Description: Free Lossless Audio Codec - C++ runtime library
+ FLAC stands for Free Lossless Audio Codec. Grossly oversimplified, FLAC is
+ similar to MP3, but lossless. The FLAC project consists of:
+ .
+ * The stream format
+ * libFLAC, which implements a reference encoder, stream decoder, and file
+ decoder
+ * flac, which is a command-line wrapper around libFLAC to encode and decode
+ .flac files
+ * Input plugins for various music players (Winamp, XMMS, and more in the
+ works)
+ .
+ This package contains the runtime library libFLAC++.
+
+Package: kugar
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 2144
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: koffice
+Version: 1:1.3.2-2
+Replaces: koffice-libs (<< 1:1.1-20010404-0)
+Depends: kdelibs4 (>= 4:3.2.3), koffice-libs (>= 1:1.3.0-0), libart-2.0-2 (>= 2.3.16), libaspell15 (>= 0.50.5), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter, koffice-doc-html
+Description: a business report maker for the KDE Office Suite
+ Kugar is a tool for generating business quality reports that can
+ be viewed and printed. It includes a standalone report viewer and a
+ KPart report viewer. The latter means that any KDE application can
+ embed the report viewing functionality and that reports can be viewed
+ using the Konqueror browser.
+ .
+ This package is part of the KDE Office Suite.
+
+Package: ssh
+Status: install ok installed
+Priority: standard
+Section: net
+Installed-Size: 1640
+Maintainer: Matthew Vernon <matthew@debian.org>
+Architecture: i386
+Source: openssh
+Version: 1:3.8.1p1-8
+Provides: rsh-client
+Depends: libc6 (>= 2.3.2.ds1-4), libpam0g (>= 0.76), libssl0.9.7, libwrap0, zlib1g (>= 1:1.2.1), debconf (>= 1.2.0), libpam-runtime (>= 0.76-14), libpam-modules (>= 0.72-9), adduser (>= 3.9), dpkg (>= 1.9.0)
+Suggests: ssh-askpass, xbase-clients
+Conflicts: ssh-nonfree (<< 2), ssh-socks, ssh2, sftp, rsh-client (<< 0.16.1-1)
+Conffiles:
+ /etc/ssh/ssh_config b4daec7526aab853f464b6a62cd01537
+ /etc/ssh/moduli 085771ebb2b6cfe60b84ad094de0788a
+ /etc/init.d/ssh 60c7f78120c01b393255eb7619886d96
+ /etc/pam.d/ssh c127580e21f78d8dc24091b9f3ccd736
+ /etc/default/ssh a7ff8802959335d8de91e09c16f36deb
+Description: Secure rlogin/rsh/rcp replacement (OpenSSH)
+ This is the portable version of OpenSSH, a free implementation of
+ the Secure Shell protocol as specified by the IETF secsh working
+ group.
+ .
+ Ssh (Secure Shell) is a program for logging into a remote machine
+ and for executing commands on a remote machine.
+ It provides secure encrypted communications between two untrusted
+ hosts over an insecure network. X11 connections and arbitrary TCP/IP
+ ports can also be forwarded over the secure channel.
+ It is intended as a replacement for rlogin, rsh and rcp, and can be
+ used to provide applications with a secure communication channel.
+ .
+ This package provides both the ssh client and the sshd server.
+ .
+ --------------------------------------------------------------------
+ .
+ In some countries it may be illegal to use any encryption at all
+ without a special permit.
+
+Package: libopensc0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 616
+Maintainer: Eric Dorland <eric@debian.org>
+Architecture: i386
+Source: opensc
+Version: 0.8.1-7
+Depends: libc6 (>= 2.3.2.ds1-4), libopenct0 (>> 0.5.0), libpcsclite1 (>= 1.2.9-beta5-1), libssl0.9.7
+Description: SmartCard library with support for PKCS#15 compatible smart cards
+ This package contains the libopensc libraries from OpenSC.org.
+ These libraries allow programs to access data, such as
+ cryptographic keys, on various PKCS#15 compatible smart cards
+ and similar security tokens.
+ .
+ Supported cards include Gemplus GPK, Schlumberger Cryptoflex,
+ Finnish FINEID, Swedish eID, MioCOS and TCOS cards.
+ .
+ Card initialization can be performed by utilities in the opensc package.
+
+Package: slang1-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 812
+Maintainer: Jim Mintha <jmintha@debian.org>
+Architecture: i386
+Source: slang
+Version: 1.4.9dbs-6
+Provides: slang-dev6
+Depends: slang1 (= 1.4.9dbs-6), libc6-dev | libc-dev
+Conflicts: slang1-utf8-dev, slang-dev6, slang0.99.34-dev (<< 0.99.38-2.3)
+Description: The S-Lang programming library, development version
+ S-Lang is a C programmer's library that includes routines for the rapid
+ development of sophisticated, user friendly, multi-platform applications.
+ .
+ The S-Lang library includes the following:
+ * Low level tty input routines for reading single characters at a time.
+ * Keymap routines for defining keys and manipulating multiple keymaps.
+ * A high-level key processing interface (SLkp) for
+ handling function and arrow keys.
+ * High level screen management routines for manipulating both
+ monochrome and color terminals. These routines are very
+ efficient. (SLsmg)
+ * Low level terminal-independent routines for manipulating the display
+ of a terminal. (SLtt)
+ * Routines for reading single line input with line editing and recall
+ capabilities. (SLrline)
+ * Searching functions: both ordinary searches and regular expression
+ searches. (SLsearch)
+ * An embedded stack-based language interpreter with a C-like syntax.
+
+Package: libflac4
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 268
+Maintainer: Matt Zimmerman <mdz@debian.org>
+Architecture: i386
+Source: flac
+Version: 1.1.0-11
+Replaces: libflac3 (= 1.0.4-1)
+Depends: debconf, libc6 (>= 2.3.2.ds1-4)
+Conflicts: libflac3 (= 1.0.4-1)
+Description: Free Lossless Audio Codec - runtime C library
+ FLAC stands for Free Lossless Audio Codec. Grossly oversimplified, FLAC is
+ similar to MP3, but lossless. The FLAC project consists of:
+ .
+ * The stream format
+ * libFLAC, which implements a reference encoder, stream decoder, and file
+ decoder
+ * flac, which is a command-line wrapper around libFLAC to encode and decode
+ .flac files
+ * Input plugins for various music players (Winamp, XMMS, and more in the
+ works)
+ .
+ This package contains the runtime library libFLAC.
+
+Package: irssi-text
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 2516
+Maintainer: David Pashley <david@davidpashley.com>
+Version: 0.8.9-1
+Replaces: irssi-scripts (<= 8)
+Depends: libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.2.3), libncurses5 (>= 5.3.20030510-1), libperl5.8 (>= 5.8.2), libssl0.9.7, perlapi-5.8.2, perl (>= 5.8.2-2), perl-base (>= 5.8.1)
+Suggests: irssi-scripts (>= 2)
+Conflicts: irssi, irssi-scripts (= 1)
+Conffiles:
+ /etc/irssi.conf 6e2525d3e14cc9c905a26018fd3fd91d
+Description: text-mode version of the irssi IRC client
+ Irssi is an IRC client from the author of yagirc, Timo Sirainen. It has a
+ text, GTK and GNOME interface (with integration to the GNOME panel).
+ Irssi's features include configurability, smart nick completion, DCC resuming,
+ support for plugins and perl scripting.
+ .
+ This package includes the text-mode version of the irssi client.
+ .
+ The GTK and GNOME versions of irssi haven't been developed since early
+ 2000, and currently lack much of irssi-text's functionality.
+ .
+ Other irssi packages are:
+ irssi-common: common files for the old GTK and GNOME irssi IRC clients
+ irssi-gtk: old GTK version of the irssi IRC client
+ irssi-gnome: old GNOME version of the irssi IRC client
+ irssi-scripts: Perl scripts for irssi-text
+ xirssi: GTK Version of irssi (Development version)
+ irssi-snapshot: Development version of the text-mode client
+
+Package: kdevelop-doc
+Status: purge ok not-installed
+Priority: optional
+Section: doc
+
+Package: libvorbisfile3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 48
+Maintainer: Christopher L Cheney <ccheney@debian.org>
+Source: libvorbis
+Version: 1.0.1-1
+Replaces: libvorbis0 (<< 1.0.0)
+Depends: libc6 (>= 2.3.2.ds1-4), libogg0 (>= 1.1.0), libvorbis0a (>= 1.0.1)
+Conflicts: libvorbis0 (<< 1.0.0)
+Description: The Vorbis General Audio Compression Codec
+ Ogg Vorbis is a fully open, non-proprietary, patent-and-royalty-free,
+ general-purpose compressed audio format for audio and music at fixed
+ and variable bitrates from 16 to 128 kbps/channel.
+ .
+ The Vorbisfile library provides a convenient high-level API for decoding
+ and basic manipulation of all Vorbis I audio streams.
+
+Package: kdesdk
+Status: purge ok not-installed
+Priority: optional
+Section: devel
+Architecture: i386
+
+Package: gettext-base
+Status: install ok installed
+Priority: standard
+Section: base
+Installed-Size: 780
+Maintainer: Santiago Vila <sanvila@debian.org>
+Architecture: i386
+Source: gettext
+Version: 0.14.1-5
+Replaces: gettext (<= 0.12.1-1)
+Provides: libasprintf0, libgettextpo0
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: GNU Internationalization utilities for the base system
+ This package includes the gettext and ngettext programs which allow
+ other packages to internationalize the messages given by shell scripts.
+
+Package: libvorbis-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 1952
+Maintainer: Christopher L Cheney <ccheney@debian.org>
+Source: libvorbis
+Version: 1.0.1-1
+Depends: libogg-dev, libvorbis0a (= 1.0.1-1), libvorbisenc2 (= 1.0.1-1), libvorbisfile3 (= 1.0.1-1)
+Description: The Vorbis General Audio Compression Codec (development files)
+ Ogg Vorbis is a fully open, non-proprietary, patent-and-royalty-free,
+ general-purpose compressed audio format for audio and music at fixed
+ and variable bitrates from 16 to 128 kbps/channel.
+ .
+ This package contains the header files and documentation needed to develop
+ applications with libvorbis.
+
+Package: module-init-tools
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 316
+Maintainer: Marco d'Itri <md@linux.it>
+Architecture: i386
+Version: 3.1-pre5-7
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: modutils (<= 2.4.21-1)
+Conffiles:
+ /etc/init.d/module-init-tools 2c60d574cb2a79173cb2ab84b2590d3d
+ /etc/modprobe.d/aliases bf6bc9cd1d8b7217fa61a33f6cedbe8d
+ /etc/modprobe.d/arch/i386 079af7efa9502b2cf2d421a7f89dcf4d
+Description: tools for managing Linux kernel modules
+ This package contains a set of programs for loading, inserting, and
+ removing kernel modules for Linux (versions 2.5.48 and above). It serves
+ the same function that the "modutils" package serves for Linux 2.4.
+
+Package: checkpw
+Status: purge ok not-installed
+Priority: optional
+Section: mail
+
+Package: man-db
+Status: install ok installed
+Priority: important
+Section: doc
+Installed-Size: 1400
+Maintainer: Colin Watson <cjwatson@debian.org>
+Architecture: i386
+Version: 2.4.2-19
+Replaces: man, nlsutils
+Provides: man, man-browser
+Depends: groff-base (>= 1.17.2-2), bsdmainutils, debconf (>= 1.2.0), dpkg (>= 1.9.0), libc6 (>= 2.3.2.ds1-4), libgdbm3
+Suggests: groff
+Conflicts: man, suidmanager (<< 0.50)
+Conffiles:
+ /etc/manpath.config cd0be86e8d3e1a97ba83f5db8591bf10
+ /etc/cron.daily/man-db db97bccd59bef2bc0553d7d3f7276e82
+ /etc/cron.weekly/man-db a29a37954550c9ba0d85152aebc3c592
+Description: The on-line manual pager
+ This package provides the man command, the primary way of examining the
+ on-line help files (manual pages). Other utilities provided include the
+ whatis and apropos commands for searching the manual page database, the
+ manpath utility for determining the manual page search path, and the
+ maintenance utilities mandb, catman and zsoelim. man-db uses the groff
+ suite of programs to format and display the manual pages.
+
+Package: libgphoto2-2-dev
+Status: install ok installed
+Priority: extra
+Section: libdevel
+Installed-Size: 1828
+Maintainer: christophe barbe <christophe@debian.org>
+Architecture: i386
+Source: libgphoto2
+Version: 2.1.4-6
+Replaces: libgphoto2port-dev, libgphoto2-dev
+Provides: libgphoto2port-dev, libgphoto2-dev
+Depends: libgphoto2-2 (= 2.1.4-6), libexif-dev, libc6-dev
+Conflicts: libgphoto2port-dev, gphoto2-dev (<= 2.1.1)
+Description: The gphoto2 digital camera library (development files)
+ The gphoto2 library can be used by applications to access various
+ digital camera models.
+
+Package: libhtml-format-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 152
+Maintainer: Michael Alan Dorman <mdorman@debian.org>
+Version: 2.03-0.1
+Depends: perl (>= 5.6.0-16), libhtml-tree-perl (>= 3.15), libfont-afm-perl (>= 1.17)
+Description: Format HTML syntax trees
+ The modules present in this package are:
+ .
+ HTML::Formatter - Base class for various formatters. Formatters
+ traverse a syntax tree and produce some textual output. None
+ of the current formatters handle tables or forms yet.
+ .
+ HTML::FormatText - Formatter that converts a syntax tree to plain
+ readable text.
+ .
+ HTML::FormatPS - Formatter that outputs PostScript code.
+ .
+ HTML::FormatRTF - Formatter that outputs Microsofts RTF Format.
+
+Package: libgdbm3
+Status: install ok installed
+Priority: standard
+Section: base
+Installed-Size: 72
+Maintainer: James Troup <james@nocrew.org>
+Source: gdbm
+Version: 1.8.3-2
+Depends: libc6 (>= 2.3.2-1)
+Description: GNU dbm database routines (runtime version)
+ GNU dbm ('gdbm') is a library of database functions that use extendible
+ hashing and works similarly to the standard UNIX 'dbm' functions.
+ .
+ The basic use of 'gdbm' is to store key/data pairs in a data file, thus
+ providing a persistent version of the 'dictionary' Abstract Data Type
+ ('hash' to perl programmers).
+
+Package: libexif10
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 300
+Maintainer: christophe barbe <christophe@debian.org>
+Architecture: i386
+Source: libexif
+Version: 0.6.9-1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: The EXIF library allows you to parse an EXIF file
+ Most digital cameras produce EXIF files, which are JPEG files with
+ extra tags that contain information about the image. The EXIF library
+ allows you to parse an EXIF file and read the data from those tags.
+
+Package: sharutils
+Status: install ok installed
+Priority: standard
+Section: utils
+Installed-Size: 384
+Maintainer: Santiago Vila <sanvila@debian.org>
+Architecture: i386
+Version: 1:4.2.1-11
+Depends: libc6 (>= 2.2.4-4), debianutils (>= 1.6)
+Conflicts: shar, uuencode
+Description: shar, unshar, uuencode, uudecode
+ `shar' makes so-called shell archives out of many files, preparing
+ them for transmission by electronic mail services. `unshar' helps
+ unpacking shell archives after reception. Other related utility
+ programs help with other tasks.
+ .
+ `uuencode' prepares a file for transmission over an electronic
+ channel which ignores or otherwise mangles the eight bit (high
+ order bit) of bytes. `uudecode' does the converse transformation.
+
+Package: libxine-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 476
+Maintainer: Siggi Langauf <siggi@debian.org>
+Architecture: i386
+Source: xine-lib
+Version: 1-rc5-1
+Depends: libxine1 (= 1-rc5-1), libc6-dev, xlibs-dev, zlib1g-dev | libz-dev, slang1-dev, libfreetype6-dev
+Conflicts: xine-ui (<< 0.9.10)
+Description: the xine video player library, development packages
+ This contains development files (headers, documentation and the like)
+ for the xine library (libxine).
+ .
+ Libxine provides the complete infrastructure for a video/media player.
+ It supports MPEG 1/2 and some AVI and Quicktime videos out of the box,
+ so you can use it to play DVDs, (S)VCDs and most video files out there.
+ It supports network streams, subtitles and even mp3 files. It's extensible
+ to your heart's content via plugins for audio_out, video_out, input media,
+ demuxers (stream types), audio/video and subtitle codecs.
+ Building a GUI (or text based) frontend around this should be quite easy.
+ The xine-ui package provides one for your convenience, so you can just
+ start watching your VCDs ;-)
+
+Package: kxmlrpc
+Status: purge ok not-installed
+Priority: optional
+Section: net
+
+Package: enscript
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 2304
+Maintainer: Michael Fedrowitz <michaelf@debian.org>
+Architecture: i386
+Version: 1.6.4-4
+Replaces: genscript
+Depends: libc6 (>= 2.3.2.ds1-4), libpaper1
+Suggests: gv | ghostview | postscript-viewer
+Conflicts: genscript
+Conffiles:
+ /etc/enscript.cfg a07c6bdfa820e78cb6c570434e9e5187
+Description: Converts ASCII text to Postscript, HTML, RTF or Pretty-Print
+ Enscript converts ASCII files to PostScript, HTML, RTF or Pretty-Print
+ and stores generated output to a file or sends it directly to the printer.
+
+Package: libi18n-charset-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 164
+Maintainer: Debian Perl Group <pkg-perl-maintainers@lists.alioth.debian.org>
+Version: 1.371-1
+Depends: perl (>= 5.6.0-16), libio-string-perl
+Suggests: libunicode-map-perl, libunicode-map8-perl, libunicode-maputf8-perl
+Description: Perl module for mapping character set names to IANA names
+ This module maps Character Set names to the names officially
+ registered with IANA. For example, 'Shift_JIS' is the official name
+ of 'x-sjis'.
+ .
+ It also maps character set names to Unicode::Map, Unicode::Map8, and
+ Unicode::MapUTF8 conversion scheme names (if those modules are
+ installed). For example, the Unicode::Map8 scheme name for
+ 'windows-1251' is 'cp1251'.
+
+Package: libgcrypt11
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 396
+Maintainer: Matthias Urlichs <smurf@debian.org>
+Architecture: i386
+Version: 1.2.0-6
+Depends: libc6 (>= 2.3.2.ds1-4), libgpg-error0 (>= 0.7)
+Description: LGPL Crypto library - runtime library
+ libgcrypt contains cryptographic functions. Most important free
+ ciphers have been implemented: arcfour, blowfish, cast5, des,
+ 3DES, elgamal, rijndael, RSA, twofish; as well as hash algorithms:
+ DSA, MD5, RMD160, SHA1, tiger.
+
+Package: libogg-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 380
+Maintainer: Christopher L Cheney <ccheney@debian.org>
+Source: libogg
+Version: 1.1.0-1
+Depends: libogg0 (= 1.1.0-1), libc6-dev
+Description: Ogg Bitstream Library Development
+ The libogg-dev package contains the header files and documentation
+ needed to develop applications with libogg.
+
+Package: python-twisted
+Status: purge ok not-installed
+Priority: extra
+Section: python
+Architecture: all
+
+Package: libusb-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 268
+Maintainer: Aurelien Jarno <aurel32@debian.org>
+Architecture: i386
+Source: libusb
+Version: 1:0.1.8-16
+Replaces: libusb0 (<< 1:0.1.5-1)
+Depends: libusb-0.1-4 (= 1:0.1.8-16), libc6-dev
+Description: Userspace USB programming library development files
+ Library for programming USB applications without the knowledge
+ of Linux kernel internals.
+ .
+ More information can be found at the Linux USB web site
+ http://www.linux-usb.org/ .
+
+Package: kgeo
+Status: deinstall ok config-files
+Priority: optional
+Section: math
+Installed-Size: 884
+Maintainer: Ben Burton <bab@debian.org>
+Source: kdeedu
+Version: 4:3.1.5-2
+Config-Version: 4:3.1.5-2
+Replaces: keuklid
+Provides: keuklid
+Depends: kdelibs4 (>= 4:3.1.5), libart-2.0-2 (>= 2.3.8), libaudio2, libc6 (>= 2.3.2.ds1-4), libfam0c102, libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.3.2-1), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libstdc++5 (>= 1:3.3.2-1), libxcursor1, libxft2 (>> 2.1.1), libxrender1, xlibmesa3-gl | libgl1, xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Recommends: kdeedu-data (>= 4:3.1.5-2)
+Suggests: khelpcenter, kdeedu-doc-html
+Conflicts: keuklid
+Description: interactive geometry program for KDE
+ With this program you can do geometry on a computer just like you would
+ on a blackboard in a classroom. However the computer allows you to
+ go beyond that, since KGeo is designed to do interactive geometry.
+ .
+ For example, the program allows you to move and change geometrical
+ drawings so that you can see all the changes. Imagine a triangle that
+ can be altered into any shape you want, just by moving its corners
+ around. At the same time you can see that the angles change, but that
+ they always add up to 180 degrees.
+ .
+ This package is part of the official KDE edutainment module.
+
+Package: libapache-mod-ssl
+Status: deinstall ok config-files
+Priority: optional
+Section: web
+Installed-Size: 710
+Maintainer: Domenico Andreoli <cavok@debian.org>
+Version: 2.8.16-7
+Config-Version: 2.8.16-7
+Depends: libc6 (>= 2.3.2.ds1-4), libdb4.2, libexpat1 (>= 1.95.6), libssl0.9.7, apache (>= 1.3.29.0.1-4) | apache-perl (>= 1.3.29.0.1-4), openssl
+Suggests: ca-certificates, libapache-mod-ssl-doc
+Conffiles:
+ /etc/apache/ssl.crl/README fbb7ae5d7e39607a39b1e36d30048683
+ /etc/apache/ssl.crt/snakeoil-ca-rsa.crt 84f1a96365b949eb9eebb914be6ef57c
+ /etc/apache/ssl.crt/ca-bundle.crt 9bd1d1069c69fafed5a86ea931ae45f9
+ /etc/apache/ssl.crt/README d35b932244ab815c896d1e9d2b7b171a
+ /etc/apache/ssl.crt/snakeoil-dsa.crt 33a3da39bef56ae8eda6139d014ae24c
+ /etc/apache/ssl.crt/snakeoil-rsa.crt 64a916c2bbdd6400086554906b1a0413
+ /etc/apache/ssl.crt/snakeoil-ca-dsa.crt 3b89eccf7e8060ac66c477e9f3b0eb1e
+ /etc/apache/ssl.csr/README 302a83acb325454152077ba973266022
+ /etc/apache/ssl.key/snakeoil-ca-rsa.key a97c4e5a4a25059f61a390f6dd77c3d9
+ /etc/apache/ssl.key/README 1669a3fe6847a08c6b9a4a36168c4eb3
+ /etc/apache/ssl.key/snakeoil-dsa.key 91fdc7a0670d2ef525becca81aff096a
+ /etc/apache/ssl.key/snakeoil-rsa.key 10f3ef8ab2f33d44cbb14a775dcd7f10
+ /etc/apache/ssl.key/snakeoil-ca-dsa.key 0c7a91b9bf23b8b6c02028a4947d8e57
+ /etc/apache/ssl.prm/README 9a611f57078e624b672222197b8ff377
+ /etc/apache/ssl.prm/snakeoil-dsa.prm b27eeaa2b453003540252dadaed24041
+ /etc/apache/ssl.prm/snakeoil-ca-dsa.prm da61d8748a981ced4df8c7fd868d217f
+Description: Strong cryptography (HTTPS support) for Apache
+ This Apache module provides strong cryptography for the Apache 1.3 webserver
+ via the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS
+ v1) protocols.
+ .
+ o Open-Source software (BSD-style license)
+ o Usable for both commercial and non-commercial use
+ o Available for both Unix and Win32 platforms
+ o 128-bit strong cryptography world-wide
+ o Support for SSLv2, SSLv3 and TLSv1 protocols
+ o Clean reviewable ANSI C source code
+ o Clean Apache module architecture
+ o Integrates seamlessly into Apache through an Extended API (EAPI)
+ o Full Dynamic Shared Object (DSO) support
+ o Support for the OpenSSL+RSAref US-situation
+ o Advanced pass-phrase handling for private keys
+ o X.509 certificate based authentication for both client and server
+ o Support for per-URL renegotiation of SSL handshake parameters
+ o Support for explicit seeding of the PRNG from external sources
+ o Additional boolean-expression based access control facility
+ o Backward compatibility to other Apache SSL solutions
+ o Inter-process SSL session cache
+ o Powerful dedicated SSL engine logging facility
+ o Simple and robust application to Apache source trees
+ o Fully integrated into the Apache 1.3 configuration mechanism
+ o Additional integration into the Apache Autoconf-style Interface (APACI)
+ o Assistance in X.509 v3 certificate generation
+ .
+ Homepage: http://www.modssl.org
+
+Package: cvs
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 2916
+Maintainer: Steve McIntyre <93sam@debian.org>
+Architecture: i386
+Version: 1:1.12.9-4
+Replaces: cvs-doc (<< 1.11-2)
+Provides: cvs-doc
+Depends: libc6 (>= 2.3.2.ds1-4), libpam0g (>= 0.76), zlib1g (>= 1:1.2.1), debconf (>= 0.5.00), libpam-runtime (>= 0.76-14)
+Recommends: netbase (>= 2.08-1), info | info-browser
+Conflicts: cvs-doc, cvs2cl (<< 2.55-1)
+Conffiles:
+ /etc/cron.weekly/cvs ca2135a66592eee653e9881fe454f117
+ /etc/pam.d/cvs fcc14a3f45dc0767f0642a7f69614f1b
+Description: Concurrent Versions System
+ CVS is a version control system, which allows you to keep old versions
+ of files (usually source code), keep a log of who, when, and why
+ changes occurred, etc., like RCS or SCCS. Unlike the simpler systems,
+ CVS does not just operate on one file at a time or one directory at
+ a time, but operates on hierarchical collections of directories
+ consisting of version controlled files.
+ .
+ CVS helps to manage releases and to control the concurrent editing of
+ source files among multiple authors. CVS allows triggers to
+ enable/log/control various operations and works well over a wide area
+ network.
+
+Package: astyle
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 276
+Maintainer: Luca Filipozzi <lfilipoz@debian.org>
+Version: 1.15.3-3
+Depends: libc6 (>= 2.3.1-1), libgcc1 (>= 1:3.3-0pre9), libstdc++5 (>= 1:3.3-0pre9)
+Description: Source code indenter for C++/C/Java source code
+ Artistic Style is a reindenter and reformatter of C++, C and Java
+ source code.
+
+Package: libgcrypt1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 300
+Maintainer: Matthias Urlichs <smurf@debian.org>
+Architecture: i386
+Source: libgcrypt
+Version: 1.1.12-8
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: LGPL Crypto library - runtime library
+ libgcrypt contains cryptographic functions. Most important free
+ ciphers have been implemented: arcfour, blowfish, cast5, des,
+ 3DES, elgamal, rijndael, RSA, twofish; as well as hash algorithms:
+ DSA, MD5, RMD160, SHA1, tiger.
+ .
+ This is an old version. It is provided in Debian for compatibility reasons.
+
+Package: kontact
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 2732
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Replaces: kontact-plugins (<< 4:3.2.92)
+Depends: kdelibs4 (>= 4:3.3.0), korganizer (>= 4:3.3.0), kpilot (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkcal2 (>= 4:3.3.0), libkdenetwork2 (>= 4:3.3.0), libkdepim1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Recommends: kaddressbook, kitchensync, kmail, knode, knotes
+Suggests: knewsticker, kweather
+Description: KDE pim application
+ Kontact is the integrated solution to your personal information management
+ needs. It combines KDE applications like KMail, KOrganizer, and
+ KAddressBook into a single interface to provide easy access to mail,
+ scheduling, address book and other PIM functionality.
+ .
+ This package is part of the official KDE pim module.
+
+Package: libgcrypt7
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 692
+Maintainer: Matthias Urlichs <smurf@debian.org>
+Architecture: i386
+Version: 1.1.90-9
+Depends: libc6 (>= 2.3.2.ds1-4), libgpg-error0 (>= 0.7)
+Description: LGPL Crypto library - runtime library
+ libgcrypt contains cryptographic functions. Most important free
+ ciphers have been implemented: arcfour, blowfish, cast5, des,
+ 3DES, elgamal, rijndael, RSA, twofish; as well as hash algorithms:
+ DSA, MD5, RMD160, SHA1, tiger.
+
+Package: kget
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 1156
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdenetwork
+Version: 4:3.3.0-2
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libjpeg62, libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE Download Manager
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ KDE Download Manager.
+ .
+ This package is part of the official KDE network module.
+
+Package: python-tk
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 28
+Maintainer: Matthias Klose <doko@debian.org>
+Architecture: all
+Source: python-defaults
+Version: 2.3.4-4
+Depends: python (>= 2.3), python (<< 2.4), python2.3-tk (>= 2.3.4-8)
+Description: Tkinter - Writing Tk applications with Python (default version)
+ A module for writing portable GUI applications with Python sing Tk.
+ Also known as Tkinter.
+ .
+ This package is a dependency package, which depends on Debian's default
+ Python version (currently v2.3).
+
+Package: pingus-data
+Status: purge ok not-installed
+Priority: extra
+Section: games
+Architecture: all
+
+Package: kabc
+Status: install ok installed
+Priority: extra
+Section: checkinstall
+Installed-Size: 1488
+Maintainer: root@sirion
+Version: 3.2+cvs20040214-1
+Description: KABC Libraries snapshot
+
+Package: runit
+Status: deinstall ok config-files
+Priority: optional
+Section: admin
+Installed-Size: 504
+Maintainer: Gerrit Pape <pape@smarden.org>
+Architecture: i386
+Version: 1.0.1-1
+Config-Version: 1.0.1-1
+Suggests: runit-run
+Conffiles:
+ /etc/runit/getty-5/run c3e84574e7756e92397cdb4fd0596e25
+ /etc/runit/getty-5/finish 0baa42b76a73118fb426ef989526242e
+Description: a UNIX init scheme with service supervision
+ runit is a daemontools alike replacement for SysV-init and other init
+ schemes. runit currently runs on Debian GNU/Linux, OpenBSD, FreeBSD,
+ MacOSX, and Solaris, and may be easily adapted to other unix operating
+ systems. runit implements a simple three-stage concept. Stage 1 performs
+ the system's one-time initialization tasks. Stage 2 starts the system's
+ uptime services (via the runsvdir program). Stage 3 handles the tasks
+ necessary to shutdown and halt or reboot.
+ .
+ The runit programs are compiled and linked statically with the diet libc
+ on architectures the diet libc is available for.
+ .
+ See http://smarden.org/runit/ for more information.
+ .
+ This package does not replace the /sbin/init binary. To do so you need
+ to follow the documentation or install the runit-run package.
+
+Package: slang1
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 560
+Maintainer: Jim Mintha <jmintha@debian.org>
+Architecture: i386
+Source: slang
+Version: 1.4.9dbs-6
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: The S-Lang programming library - runtime version
+ S-Lang is a C programmer's library that includes routines for the rapid
+ development of sophisticated, user friendly, multi-platform applications.
+ .
+ This package contains only the shared library libslang.so.* and copyright
+ information. It is only necessary for programs that use this library (such
+ as jed and slrn). If you plan on doing development with S-Lang, you will
+ need the companion -dev package as well.
+
+Package: libpisync0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 64
+Maintainer: Ludovic Rousseau <rousseau@debian.org>
+Architecture: i386
+Source: pilot-link
+Version: 0.11.8-10
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), libpisock8, libreadline4 (>= 4.3-1)
+Suggests: gnome-pilot, evolution
+Description: Synchronization library for PalmOS devices
+ libpisync is a library for applications to synchronize data with PalmOS
+ devices.
+ .
+ See packages gnome-pilot and evolution if you are looking to user
+ programs for your PDA.
+ .
+ Homepage: http://www.pilot-link.org/
+
+Package: biff
+Status: install ok installed
+Priority: standard
+Section: mail
+Installed-Size: 92
+Maintainer: Dave Holland <dave@debian.org>
+Architecture: i386
+Version: 1:0.17.pre20000412-1.3
+Depends: libc6 (>= 2.2.4-4)
+Description: a mail notification tool
+ biff is a small program that prints a message to your terminal
+ when new email arrives. Actually, the message is printed by
+ the comsat daemon, and biff just enables/disables the u+x
+ permission flag for the terminal, which comsat uses to determine
+ whether or not to write to your terminal.
+ .
+ biff is mainly of historic interest, since there are much better
+ alternatives (xbiff, gbiff) that are network-aware and do not
+ require a daemon. Although there are no known security problems,
+ running additional services is often considered risky.
+ .
+ By default, the biff service is disabled. To use biff email
+ notification, you must enable this service by running 'update-inetd
+ --enable biff' after the package is installed. You may also need
+ to modify the configuration of your mail transport agent to enable
+ comsat notification.
+
+Package: python2.3-twisted
+Status: deinstall ok config-files
+Priority: extra
+Section: python
+Installed-Size: 5768
+Maintainer: Matthias Klose <doko@debian.org>
+Architecture: all
+Source: twisted
+Version: 1.3.0-2
+Config-Version: 1.3.0-2
+Provides: twisted
+Depends: python2.3, python2.3-twisted-bin
+Recommends: python2.3-pyopenssl, python2.3-pam
+Suggests: python2.3-tk, python2.3-gtk2, python2.3-glade2, python2.3-qt3c102, libwxgtk2.4-python, twisted-doc, python2.3-twisted-conch
+Conflicts: python2.2-twisted (<= 1.0.7-1)
+Description: Event-based framework for internet applications
+ It includes a web server, a telnet server, a multiplayer RPG engine, a
+ generic client and server for remote object access, and APIs for creating
+ new protocols.
+ .
+ This version is usable with python2.3
+
+Package: libsdl1.2debian
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 52
+Maintainer: Debian SDL maintainers <mrd-sdl@debian.org>
+Architecture: i386
+Source: libsdl1.2
+Version: 1.2.7-10
+Depends: libsdl1.2debian-oss (= 1.2.7-10) | libsdl1.2debian-all (= 1.2.7-10) | libsdl1.2debian-esd (= 1.2.7-10) | libsdl1.2debian-arts (= 1.2.7-10) | libsdl1.2debian-alsa (= 1.2.7-10)
+Description: Simple DirectMedia Layer
+ SDL is a library that allows programs portable low level access to
+ a video framebuffer, audio output, mouse, and keyboard.
+ .
+ This is just a dummy package. You also need one of the four versions of
+ the library that this package depends on.
+ .
+ (Note: Updates from SDL CVS after the version release date are occasionally
+ factored into these packages).
+
+Package: lbreakout2-data
+Status: purge ok not-installed
+Priority: optional
+Section: games
+Architecture: all
+
+Package: omega-rpg
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 1208
+Maintainer: Guus Sliepen <guus@debian.org>
+Architecture: i386
+Version: 1:0.90-pa9-12
+Config-Version: 1:0.90-pa9-12
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1)
+Description: A text-based roguelike game
+ Omega is a complex rogue-style game of dungeon exploration. Unlike other such
+ games, there are a number of ways to "win", depending on various actions
+ taken during play. The ways you can get your name on the high score board
+ include becoming the highest ranked head of a guild, sect, college, etc., as
+ well as gaining the most points figured from possessions and experience. The
+ game (via the oracle) may impose some structure on your exploration, but you
+ need not follow all of the oracle's advice. There *is* a "total winner"
+ status, by the way.
+
+Package: liballegro4a-plugin-esd
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+Architecture: i386
+
+Package: libuuid1
+Status: install ok installed
+Priority: required
+Section: libs
+Installed-Size: 96
+Maintainer: Theodore Y. Ts'o <tytso@mit.edu>
+Architecture: i386
+Source: e2fsprogs
+Version: 1.35-6
+Replaces: e2fsprogs (<< 1.34-1)
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Universally unique id library
+ libuuid generates and parses 128-bit universally unique id's (UUID's),
+ using a standard which is blessed by both Microsoft and DCE, and is
+ being proposed as an internet standard. See the internet-draft:
+ .
+ draft-leach-uuids-guids-01.txt
+ .
+ for more information.
+
+Package: grub-client
+Status: install ok installed
+Priority: optional
+Section: web
+Installed-Size: 264
+Maintainer: Gerfried Fuchs <alfie@debian.org>
+Version: 1.0.5-1
+Depends: libc6 (>= 2.3.1-1), libcurl2 (>= 7.10.4-1), libgcc1 (>= 1:3.2.3-0pre6), libmetakit2.4.9.2, libncurses5 (>= 5.3.20021109-1), libstdc++5 (>= 1:3.2.3-0pre6), zlib1g (>= 1:1.1.4)
+Description: An Open Source, distributed effort, data submission client
+ This is the Grub crawler client, used to provide real time notification
+ updates of webpage content to the distributed, Open Source project run
+ and maintained at <http://grub.org/>. You will have to request a
+ client-id at the homepage to let you join the force. This is needed for
+ authenticated submissions to the database. Also, currently you can only
+ join if you have a static IP address.
+ .
+ Grub, in turn, provides the returned updates to any indexing or search
+ project that needs crawled content themselves. Notifications are FREE for
+ public consumption, but there will be some type of charge for larger
+ queries to their database, such as those needed by the larger engines. By
+ centralizing and organizing the crawling process, Grub hopes to increase
+ the rate at which the Internet can be crawled and simultaneously decrease
+ the amount of crawler traffic required for sites wanting their content
+ indexed on a regular basis.
+ .
+ Please don't confuse this package with the bootloader with the same name.
+ It has nothing to do with it besides the name. The project is currently
+ searching for a better name.
+
+Package: konsole
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 1628
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0)
+Provides: x-terminal-emulator
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxtst6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Recommends: xfonts-konsole
+Suggests: khelpcenter
+Description: KDE X terminal emulator
+ Konsole is an X terminal emulation which provides a command-line interface
+ (CLI) while using the graphical K Desktop Environment. Konsole helps to
+ better organize user's desktop by containing multiple sessions in a single
+ window (a less cluttered desktop).
+ .
+ It's advanced features include a simple configuration and the ability to use
+ multiple terminal shells in a single window
+ .
+ Using Konsole, a user can open:
+ .
+ Linux console sessions
+ Midnight Commander file manager sessions
+ Shell sessions
+ Root consoles sessions
+ .
+ This package is part of the official KDE base module.
+
+Package: kdepim-libs
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 1224
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Source: kdepim
+Version: 4:3.1.5-1
+Config-Version: 4:3.1.5-1
+Depends: kdelibs4 (>= 4:3.1.5), libart-2.0-2 (>= 2.3.8), libaudio2, libc6 (>= 2.3.2.ds1-4), libfam0c102, libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.3.2-1), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libstdc++5 (>= 1:3.3.2-1), libxcursor1, libxft2 (>> 2.1.1), libxrender1, xlibmesa3-gl | libgl1, xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Description: KDE PIM libraries
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KDE PIM libraries used by the other programs in the kdepim module.
+ .
+ This package is part of the official KDE pim module.
+
+Package: libsnmp5-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 4016
+Maintainer: Jochen Friedrich <jochen@scram.de>
+Architecture: i386
+Source: net-snmp
+Version: 5.1.2-4
+Replaces: libsnmp-dev, libsnmp-perl (<< 5.1.2-4)
+Provides: libsnmp-dev
+Depends: libc6-dev, libsnmp5 (= 5.1.2-4), libsnmp-perl (= 5.1.2-4), libwrap0-dev, libssl-dev
+Conflicts: libsnmp-dev
+Conffiles:
+ /etc/snmp/mib2c.access_functions.conf d53012dd1e23b45f181ba0aaeea2f591
+ /etc/snmp/mib2c.array-user.conf c67fc473e84c21dd819bd976839620b3
+ /etc/snmp/mib2c.check_values.conf b43f398c4b8e14052821f761bd11ee0c
+ /etc/snmp/mib2c.check_values_local.conf 27ddc9c5d21bd3d83eeba3cd4a02db60
+ /etc/snmp/mib2c.column_defines.conf 3adcea8370745995b9dd51d7f56b0303
+ /etc/snmp/mib2c.column_enums.conf 88614caa64fc091a8ef687eabb313e22
+ /etc/snmp/mib2c.conf 1301eada99198edeab8db6f87fbccfc6
+ /etc/snmp/mib2c.create-dataset.conf 7d801115e133dc9170b53915447634fc
+ /etc/snmp/mib2c.int_watch.conf 250e7363f8899659f1ec9b0a91a97b5d
+ /etc/snmp/mib2c.iterate.conf bb4f228ce594e72f10f1b5b88b7d335e
+ /etc/snmp/mib2c.iterate_access.conf 3d855a63e9e417c98d171317c825bdd3
+ /etc/snmp/mib2c.notify.conf 5d240bd439dbe93ad188a4480fbede88
+ /etc/snmp/mib2c.old-api.conf 0474632e20f0ec65f8f22f2dcb50a795
+ /etc/snmp/mib2c.scalar.conf 6d529bfab05f5b6b1c7299678cfd6bcd
+Description: NET SNMP (Simple Network Management Protocol) Development Files
+ The Simple Network Management Protocol (SNMP) provides a framework
+ for the exchange of management information between agents (servers)
+ and clients. The NET SNMP development files include the library
+ headers, static libraries, and documentation needed for development
+ of custom SNMP applications.
+
+Package: korn
+Status: install ok installed
+Priority: optional
+Section: mail
+Installed-Size: 448
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdenetwork2 (>= 4:3.3.0), libmimelib1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: KDE mail checker
+ Korn is a KDE mail checker that can display a small summary in the Kicker
+ tray. It supports checking mbox, pop3, imap4, and nntp sources.
+ .
+ Once mail is received you can have Korn run a third party program or change
+ the color/icon of the Kicker display. In addition to this you can have
+ Korn run a program once you click on the docked icon in Kicker.
+ .
+ This package is part of the official KDE pim module.
+
+Package: libparted1.6-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 448
+Maintainer: Parted Maintainer Team <parted-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Source: parted
+Version: 1.6.11-3
+Replaces: libparted0, libparted1, libparted2, libparted1.4 (<< 1.4.24-2)
+Provides: libparted
+Depends: libc6 (>= 2.3.2.ds1-4), libuuid1
+Recommends: libreiserfs0.3-0
+Suggests: parted | nparted, libparted1.6-dev, libparted1.6-i18n (= 1.6.11-3)
+Conflicts: parted (<< 1.4.13+14pre1), libparted0, libparted1, libparted2
+Description: The GNU Parted disk partitioning shared library
+ GNU Parted is a program that allows you to create, destroy,
+ resize, move and copy hard disk partitions. This is useful
+ for creating space for new operating systems, reorganising
+ disk usage, and copying data to new hard disks. This package
+ contains the Parted binary and manual page.
+ .
+ This package contains libparted, the required shared library
+ used by Parted.
+ .
+ Parted currently supports DOS, Mac, Sun, BSD, GPT, MIPS and
+ PC98 disklabels/partition tables, as well as a 'loop' (raw
+ disk) type which allows use on RAID/LVM. Filesystems which
+ are currently fully supported are ext2, ext3, fat (FAT16
+ and FAT32) ReiserFS (with libreiserfs) and linux-swap.
+ Parted can also detect and remove HFS (Mac OS), JFS, NTFS,
+ UFS (Sun and HP) and XFS filesystems, but cannot create,
+ resize or check these filesystems yet.
+ .
+ Note that ReiserFS support is only enabled if you install
+ the libreiserfs0.3-0 package.
+ .
+ The nature of this software means that any bugs could cause
+ massive data loss. While there are no known bugs at the moment,
+ they could exist, so please back up all important files before
+ running it, and do so at your own risk.
+
+Package: libdb4.0++c102
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 772
+Maintainer: Debian Berkeley DB Maintainers <pkg-db-devel@lists.alioth.debian.org>
+Architecture: i386
+Source: db4.0
+Version: 4.0.14-2
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libstdc++5 (>= 1:3.3.3-1)
+Conflicts: libdb2++ (<< 2:2.7.7-3), libdb4.0++
+Description: Berkeley v4.0 Database Libraries for C++ [runtime]
+ This is the runtime package for programs that use the Berkeley v4.0
+ database library. This is only for programs which use the C++ interface.
+
+Package: units
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 404
+Maintainer: John Hasler <jhasler@debian.org>
+Version: 1.81-4
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.3.20030510-1), libreadline4 (>= 4.3-1)
+Description: converts between different systems of units
+ GNU 'units' program converts quantities expressed in various scales
+ to their equivalents in other scales. The 'units' program can only
+ handle multiplicative scale changes directly. It uses a functional
+ notation for nonlinear conversions such a Fahrenheit temperature
+ to Celsius temperature.
+
+Package: liblcms1-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 380
+Maintainer: Shiju p. Nair <shiju@infovillage.net>
+Architecture: i386
+Source: lcms
+Version: 1.12-2.1
+Replaces: liblcms-dev
+Provides: liblcms-dev
+Depends: liblcms1 (= 1.12-2.1)
+Conflicts: liblcms-dev
+Description: Color management library (Development headers)
+ Development headers for Little CMS color management library.
+ lcms is a standalone CMM engine, which deals with the color management.
+ It implements a fast transformation between ICC profiles. The intention
+ of it is to be portable across several platforms.
+
+Package: libgd2-xpm
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 580
+Maintainer: Jonas Smedegaard <dr@jones.dk>
+Architecture: i386
+Source: libgd2
+Version: 2.0.28-2
+Replaces: libgd2 (<< 2.0.4-2)
+Depends: libc6 (>= 2.3.2.ds1-4), libfreetype6 (>= 2.1.5-1), libjpeg62, libpng12-0 (>= 1.2.5.0-4), zlib1g (>= 1:1.2.1)
+Suggests: libgd-tools
+Conflicts: libgd2-noxpm, libgd2 (<< 2.0.4-5)
+Description: GD Graphics Library version 2
+ GD is a graphics library. It allows your code to quickly draw images
+ complete with lines, arcs, text, multiple colours, cut and paste from
+ other images, flood fills, and write out the result as a PNG file.
+ This is particularly useful in World Wide Web applications, where PNG is
+ one of the formats accepted for inline images by most browsers.
+ .
+ This is the runtime package of the library, built with XPM (X pixmap)
+ support.
+ .
+ Website: http://www.boutell.com/gd/
+
+Package: libgnomesupport0
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 56
+Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Source: gnome-libs
+Version: 1.4.2-19
+Config-Version: 1.4.2-19
+Depends: gnome-libs-data (= 1.4.2-19), libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1)
+Conflicts: libgnome0, libgnome31
+Description: The GNOME libraries (Support libraries)
+ GNOME is a project to build a complete, user-friendly desktop based
+ entirely on free software.
+ .
+ This package contains additional support libraries for
+ GNOME.
+
+Package: tk8.4
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 2560
+Maintainer: Chris Waters <xtifr@debian.org>
+Architecture: i386
+Version: 8.4.7-1
+Provides: wish
+Depends: libc6 (>= 2.3.2.ds1-4), libx11-6 | xlibs (>> 4.1.0), tcl8.4 (>= 8.4.5)
+Recommends: xterm | x-terminal-emulator
+Conflicts: tk, tk40 (<= 4.0p3-2), libtk-img (<< 1.2.5)
+Description: Tk toolkit for Tcl and X11, v8.4 - run-time files
+ Tk is a cross-platform graphical toolkit which provides the Motif
+ look-and-feel and is implemented using the Tcl scripting language.
+ This package contains everything you need to run Tk (wish) scripts
+ and Tk-enabled apps.
+ .
+ Homepage: http://www.tcl.tk/
+
+Package: mkisofs
+Status: install ok installed
+Priority: extra
+Section: otherosfs
+Installed-Size: 1236
+Maintainer: Joerg Jaspert <joerg@debian.org>
+Architecture: i386
+Source: cdrtools
+Version: 4:2.0+a38-1
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1)
+Suggests: cdrecord, cdrtools-doc
+Conflicts: mkhybrid, xcdroast (<< 0.98+0alpha11)
+Description: Creates ISO-9660 CD-ROM filesystem images
+ mkisofs is a pre-mastering program for creating ISO-9660 CD-ROM
+ filesystem images, which can then be written to a CD-ROM (or DVD-ROM) using
+ the cdrecord program. mkisofs now includes support for making bootable
+ "El Torito" CD-ROMs, as well as CD-ROMs with support for the
+ Macintosh HFS filesystem.
+ .
+ The package also includes tools needed to create compressed isofs images
+ (mkzftree from zisofs_tools source).
+ .
+ Please install cdrtools-doc if you want most of the documentation and
+ Readme-files.
+
+Package: fuse-kio
+Status: install ok installed
+Priority: extra
+Section: checkinstall
+Installed-Size: 172
+Maintainer: Peter Rockai (mornfall) <mornfall@danill.sk>
+Architecture: i386
+Version: 0+cvs20040331-1
+Depends: fuse-module, kdelibs4 (>= 4:3.2.3), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libqt3c102-mt (>= 3:3.2.3-3), libstdc++5 (>= 1:3.3.4-1)
+Description: Bridge allowing to mount KDE ioslaves as fuse filesystems
+ The fuse-kio gateway/bridge makes it possible to mount ioslaves or
+ a general ioslave-gateway via fuse and make them this way available to
+ all linux apps. The ioslaves are part of KDE and provide support for
+ many protocols, including http, ftp or fish (using secure shell).
+ .
+ You will need working fuse-module to use this package. There are no
+ precompiled packages in Debian as of this writing, so you will need to
+ use fuse-source to compile your own (using module-assistant is
+ a preferred way to do so).
+ .
+ WARNING: This code is still experimental and may thusly have bugs. It is
+ not yet recommended for important work.
+
+Package: dlocate
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 52
+Maintainer: Craig Sanders <cas@taz.net.au>
+Version: 0.5-0.1
+Depends: grep-dctrl (>= 0.11), dpkg (>= 1.8.0), perl
+Conffiles:
+ /etc/cron.daily/dlocate 8f621648557186f5dde1f0e336e06754
+Description: fast alternative to dpkg -L and dpkg -S
+ uses GNU locate to greatly speed up finding out which package a file
+ belongs to (i.e. a very fast dpkg -S). many other uses, including
+ options to view all files in a package, calculate disk space used, view
+ and check md5sums, list man pages, etc.
+
+Package: libtasn1-2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 160
+Maintainer: Matthias Urlichs <smurf@debian.org>
+Architecture: i386
+Version: 0.2.10-4
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libgnutls5 (<< 0.5.1-4), libtasn1-1
+Description: Manage ASN.1 structures (runtime)
+ Manage ASN1 (Abstract Syntax Notation One) structures.
+ The main features of this library are:
+ * on-line ASN1 structure management that doesn't require any C code
+ file generation.
+ * off-line ASN1 structure management with C code file generation
+ containing an array.
+ * DER (Distinguish Encoding Rules) encoding
+ * no limits for INTEGER and ENUMERATED values
+ .
+ This package contains runtime libraries.
+
+Package: libtasn1-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 108
+Maintainer: Matthias Urlichs <smurf@debian.org>
+Architecture: i386
+Source: libtasn1
+Version: 0.1.2-5
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libgnutls5 (<< 0.5.1-4)
+Description: Manage ASN.1 structures (runtime)
+ Manage ASN1 (Abstract Syntax Notation One) structures.
+ The main features of this library are:
+ * on-line ASN1 structure management that doesn't require any C code
+ file generation.
+ * off-line ASN1 structure management with C code file generation
+ containing an array.
+ * DER (Distinguish Encoding Rules) encoding
+ * no limits for INTEGER and ENUMERATED values
+ .
+ This package contains runtime libraries.
+
+Package: libdb3++c102
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+Architecture: i386
+
+Package: python2.3-japanese-codecs
+Status: install ok installed
+Priority: optional
+Section: python
+Installed-Size: 1208
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Source: python-japanese-codecs
+Version: 1.4.9-3
+Replaces: python-japanese-codecs (<= 1.4.4-1)
+Depends: libc6 (>= 2.3.2.ds1-4), python2.3
+Conflicts: python-japanese-codecs (<= 1.4.4-1)
+Description: Japanese Codecs for Python
+ Python Unicode API compatible Japanese Codecs.
+ This package includes some Japanese encoding support modules such as EUC-JP,
+ Shift_JIS, ISO-2022-JP and Unicode.
+ .
+ The Python Unicode API proposal is available at
+ http://starship.python.net/crew/lemburg/unicode-proposal.txt
+
+Package: kdesdk-kfile-plugins
+Status: purge ok not-installed
+Priority: optional
+Section: kde
+Architecture: i386
+
+Package: fontconfig
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 160
+Maintainer: Josselin Mouette <joss@debian.org>
+Architecture: i386
+Version: 2.2.3-1
+Depends: libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), debconf (>= 0.5) | debconf-2.0, defoma (>= 0.7.0), ucf (>= 0.29), ttf-bitstream-vera | ttf-freefont | gsfonts-x11 | msttcorefonts
+Conflicts: libfontconfig1-dev (<< 2.2.2-1)
+Conffiles:
+ /etc/fonts/fonts.dtd d6609f578650b12499380f4758b3efed
+ /etc/fonts/fonts.conf 4ecc5cdc95c348bfdb78e22485cecc0c
+Description: generic font configuration library
+ Fontconfig is a font configuration and customization library, which
+ does not depend on the X Window System. It is designed to locate
+ fonts within the system and select them according to requirements
+ specified by applications.
+ .
+ Fontconfig is not a rasterization library, nor does it impose a
+ particular rasterization library on the application. The X-specific
+ library 'Xft' uses fontconfig along with freetype to specify and
+ rasterize fonts.
+ .
+ This package contains a program to maintain the fontconfig cache
+ (fc-cache), and a sample program to list installed fonts (fc-list).
+
+Package: kspaceduel
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 2188
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: Arcade two-player space game for KDE
+ KSpaceduel is an space arcade game for two players.
+ .
+ Each player controls a ship that flies around the sun and tries to
+ shoot at the other ship. You can play KSpaceduel with another person,
+ against the computer, or you can have the computer control both ships
+ and play each other.
+
+Package: libjpeg62
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 192
+Maintainer: Bill Allombert <ballombe@debian.org>
+Source: libjpeg6b
+Version: 6b-9
+Replaces: libjpeg6b
+Provides: libjpeg6b
+Depends: libc6 (>= 2.3.2-1)
+Conflicts: libjpeg6b
+Description: The Independent JPEG Group's JPEG runtime library
+ The Independent JPEG Group's JPEG library is a library for handling
+ JPEG files.
+ .
+ This package contains the shared library.
+
+Package: slib
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 3391
+Maintainer: James LewisMoss <dres@debian.org>
+Architecture: all
+Version: 3a1-4
+Description: Portable Scheme library
+ SLIB is a portable scheme library meant to provide compatibility and
+ utility functions for all standard scheme implementations. SLIB
+ includes initialization files for Chez, ELK 2.1, GAMBIT, MacScheme,
+ MITScheme, scheme->C, Scheme48, T3.1, and VSCM. SCM also supports
+ SLIB.
+
+Package: liballegro4.1-plugin-jack
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+Architecture: i386
+
+Package: mlock
+Status: install ok installed
+Priority: optional
+Section: mail
+Installed-Size: 88
+Maintainer: Jonas Smedegaard <dr@jones.dk>
+Architecture: i386
+Source: uw-imap
+Version: 7:2002edebian1-3
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libc-client4.5, libc-client4.6, libc-client (<< 4.7-4)
+Description: Mailbox locking program from UW
+ C-client is a library of functions for accessing mail folders and messages.
+ It was written as part of the University of Washington IMAP server, but has
+ since found other use as well.
+ .
+ libc-client.so uses this program to lock mailbox files so they don't get
+ corrupted.
+
+Package: kdebase-data
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 6548
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: all
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0), kdelibs-data (<< 4:3.3.0), kdewallpapers (<< 4:3.0.0)
+Conffiles:
+ /etc/xdg/menus/applications-merged/kde-essential.menu fd77c5c832ffa0a7152dedbc9b8e38e7
+ /etc/xdg/menus/kde-information.menu bb0506bcd029996bf9ebe8012fc454a1
+ /etc/xdg/menus/kde-screensavers.menu 8afc4f204f37c343e78a29d9982bd466
+ /etc/xdg/menus/kde-settings.menu f49a6d167de51dcc6854dabb340cf18e
+Description: KDE Base (shared data)
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This package contains all the data files needed for a basic KDE desktop
+ installation.
+ .
+ This package is part of the official KDE base module.
+
+Package: libkipi
+Status: install ok installed
+Priority: extra
+Section: checkinstall
+Installed-Size: 376
+Maintainer: root@sirion
+Architecture: i386
+Version: 0-1
+Description: kde image plugin interface
+
+Package: subversion-tools
+Status: purge ok not-installed
+Priority: optional
+Section: admin
+Architecture: all
+
+Package: libkdegames1
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 972
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1)
+Conflicts: libkdegames
+Description: KDE games library and common files
+ This library provides a common infrastructure for several of the
+ games in the KDE distribution. Features include standardized menu
+ items, high score handling, card display, and network connections
+ including chat capabilities.
+
+Package: kpercentage
+Status: install ok installed
+Priority: optional
+Section: math
+Installed-Size: 728
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeedu
+Version: 4:3.2.3-2
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.4-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: kdeedu-data (>= 4:3.2.3-2)
+Suggests: khelpcenter, kdeedu-doc-html
+Description: percentage calculation teaching tool for KDE
+ KPercentage is a small math application that will help pupils to
+ improve their skills in calculating percentages.
+ .
+ There is a special training section for the three basic tasks. Finally
+ the pupil can select a random mode, in which all three tasks are mixed
+ randomly.
+ .
+ This package is part of the official KDE edutainment module.
+
+Package: mutt
+Status: install ok installed
+Priority: standard
+Section: mail
+Installed-Size: 3768
+Maintainer: Marco d'Itri <md@linux.it>
+Architecture: i386
+Version: 1.5.6-20040818+1
+Replaces: mutt-i, mutt-utf8
+Provides: mail-reader, imap-client
+Depends: libc6 (>= 2.3.2.ds1-4), libdb4.2, libgnutls11 (>= 1.0.16), libidn11, libncursesw5 (>= 5.4-1), libsasl2 (>= 2.1.18), exim4 | mail-transport-agent
+Recommends: locales, mime-support
+Suggests: urlview, aspell | ispell, gnupg, mixmaster, openssl, ca-certificates
+Conflicts: suidmanager (<< 0.50), mutt-i, mutt-utf8
+Conffiles:
+ /etc/Muttrc b49b3f762c7b1aaf2cb524549e62416d
+Description: Text-based mailreader supporting MIME, GPG, PGP and threading
+ Mutt is a sophisticated text-based Mail User Agent. Some highlights:
+ o MIME support (including RFC1522 encoding/decoding of 8-bit message
+ headers and UTF-8 support).
+ o PGP/MIME support (RFC 2015).
+ o Advanced IMAP client supporting SSL encryption and SASL authentication.
+ o POP3 support.
+ o Mailbox threading (both strict and non-strict).
+ o Default keybindings are much like ELM.
+ o Keybindings are configurable; Mush and PINE-like ones are provided as
+ examples.
+ o Handles MMDF, MH and Maildir in addition to regular mbox format.
+ o Messages may be (indefinitely) postponed.
+ o Colour support.
+ o Highly configurable through easy but powerful rc file.
+
+Package: krusader
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 3892
+Maintainer: Angel Ramos <seamus@debian.org>
+Architecture: i386
+Version: 1.40-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libaudio2, libc6 (>= 2.3.2.ds1-4), libfam0c102, libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libice6 | libidn11, libjpeg62, libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxcursor1 (>> 1.1.2), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxrandr2 | xlibs (>> 4.3.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Suggests: kedit, konsole, rar, rpm, unzip, zip, xxdiff, kmail
+Description: File Manager for KDE
+ Krusader is an "old-school" file manager. Its twin-panel look follows in
+ the footsteps of the great file managers of old such as GNU's Midnight
+ Commander(c) and the Norton Commander(c) for DOS. Krusader features an
+ intuitive GUI, complete drag n' drop capability, transparent handling of
+ archives, MIME type support, and more.
+
+Package: kspread
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 7168
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: koffice
+Version: 1:1.3.2-2
+Replaces: koffice-libs (<< 1:1.2.90-0)
+Depends: kdelibs4 (>= 4:3.2.3), koffice-libs (>= 1:1.3.0-0), libart-2.0-2 (>= 2.3.16), libaspell15 (>= 0.50.5), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter, koffice-doc-html
+Description: a spreadsheet for the KDE Office Suite
+ KSpread is a powerful spreadsheet application. It is scriptable and
+ provides both table-oriented sheets and support for complex mathematical
+ formulae and statistics.
+ .
+ This package is part of the KDE Office Suite.
+
+Package: texi2html
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 452
+Maintainer: Ivo Timmermans <ivo@debian.org>
+Architecture: all
+Version: 1.66-1.2
+Replaces: tetex-bin (<< 1.0.7)
+Depends: perl
+Suggests: latex2html
+Description: Convert Texinfo files to HTML
+ texi2html is a Perl script that converts Texinfo files to HTML.
+ .
+ The program takes Texinfo files (not info ones) and produces a set of
+ HTML files. The quality of the output is close to the printed output
+ and is much better than an info->HTML gateway.
+ .
+ Compared to the output of `makeinfo --html', texi2html's output is
+ more customizable and (subjectively) produces better output by default.
+
+Package: krdc
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 908
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdenetwork
+Version: 4:3.3.0-2
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libjpeg62, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libslp1, libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Conflicts: rdesktop (<= 1.3.1-1)
+Description: KDE Remote Desktop Client
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ krdc is an KDE graphical client for the rfb Protocol, used by VNC.
+ .
+ This package is part of the official KDE network module.
+
+Package: dwww
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 516
+Maintainer: Robert Luberda <robert@debian.org>
+Architecture: i386
+Version: 1.9.15
+Depends: apache | httpd, man-db, file, perl (>= 5.6.0-16), libc6 (>= 2.3.2.ds1-4), debconf (>= 0.5) | debconf-2.0, menu (>= 2.1.5), realpath (>= 1.9.15), doc-base (>= 0.7.17), debianutils (>= 2.5)
+Recommends: info2www, dlocate (>= 0.5-0.1), apt
+Suggests: links | www-browser, doc-debian, swish++, dpkg-www
+Conffiles:
+ /etc/menu-methods/dwww ca7d90c40d25952a2b66149dda6a4690
+ /etc/cron.daily/dwww 355530e36dafa80390987a4b3b51977b
+ /etc/cron.weekly/dwww b74e1827925d6035ec0bfa07f7bd3215
+Description: Read all on-line documentation with a WWW browser
+ All installed on-line documentation will be served via a local HTTP
+ server. When possible, dwww converts the documentation to HTML.
+ You need to install both a CGI-capable HTTP server and a WWW
+ browser to read the documentation.
+
+Package: libiodbc2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 384
+Maintainer: Christian Hammers <ch@debian.org>
+Architecture: i386
+Version: 3.51.2-5
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: iODBC Driver Manager
+ iODBC (intrinsic Open Database Connectivity) driver manager is compatible
+ with ODBC 2.x and 3.x specification and performs exact the jobs of a
+ ODBC driver manager (i.e. driver loading, Parameters and function sequence
+ checking, driver's function invoking, etc). Any ODBC driver works with
+ ODBC 2.0 and 3.x driver manager will also work with iODBC driver manager and
+ vice versa.
+ .
+ Applications (using ODBC function calls) linked with iODBC driver manager
+ will be able to simultaneously access different type of data sources within
+ one process through suitable iODBC drivers.
+ .
+ This package contains the library files. Look for the iodbc package, too!
+
+Package: developers-reference
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 684
+Maintainer: Adam Di Carlo <aph@debian.org>
+Version: 3.3.4
+Recommends: debian-policy
+Suggests: doc-base
+Description: guidelines and information for Debian developers
+ This package contains the Debian Developer's Reference, a set of
+ guidelines and best practices which has been established by and for
+ the community of Debian developers. If you are not a Debian
+ developer, you probably do not need this package.
+ .
+ Table of Contents:
+ .
+ 1. Scope of This Document
+ 2. Applying to Become a Maintainer
+ 3. Debian Developer's Duties
+ 4. Resources for Debian Developers
+ 5. Managing Packages
+ 6. Best Packaging Practices
+ 7. Beyond Packaging
+ .
+ This package contains the English version of the Developer's
+ Reference. The Japanese translation is available in
+ developers-reference-ja and the French translation is available in
+ developers-reference-fr.
+
+Package: procps
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 552
+Maintainer: Craig Small <csmall@debian.org>
+Architecture: i386
+Version: 1:3.2.3-1
+Replaces: watch, bsdutils (<< 2.9x-1)
+Provides: watch
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1)
+Recommends: psmisc
+Conflicts: watch, libproc-dev (<< 1:1.2.6-2), w-bassman (<< 1.0-3), procps-nonfree, pgrep (<< 3.3-5)
+Conffiles:
+ /etc/sysctl.conf c629d55f0a9e2ba8e4d711e6aee5eae4
+ /etc/init.d/procps.sh f95210c57b82b303473d127a6658d0dd
+Description: The /proc file system utilities
+ These are utilities to browse the /proc filesystem, which is not a real file
+ system but a way for the kernel to provide information about the status of
+ entries in its process table. (e.g. running, stopped or "zombie")
+ Both command line and full screen utilities are provided. Ncurses is needed
+ for the full screen utilities. More information can be found at procps
+ website http://procps.sf.net/
+
+Package: mplayer-fonts
+Status: deinstall ok installed
+Priority: optional
+Section: x11
+Installed-Size: 7172
+Maintainer: Christian Marillat <marillat@debian.org>
+Architecture: all
+Version: 3.5-2
+Depends: debconf (>= 0.5) | debconf-2.0, mplayer
+Description: Fonts for mplayer
+ This package contains fonts needed (but not mandatory) by mplayer to
+ display OSD (onscreen display) and subtitles.
+
+Package: libintl-gettext-ruby
+Status: purge ok not-installed
+Priority: optional
+Section: interpreters
+
+Package: nxclient
+Status: install ok installed
+Priority: optional
+Section: base
+Maintainer: <info@nomachine.com>
+Architecture: i386
+Version: 1.3.2-7
+Description: NoMachine NX Client and Libraries.
+ This package contains the graphical front-end used to access X,
+ RDP and RFB sessions on a remote NX Server. It also includes
+ NX X compression libraries and utilities needed by both NX Client
+ and Server.
+ .
+ Source code of NX X compression libraries are released under
+ the GNU General Public License. You can download them from
+ the NoMachine web site http://www.nomachine.com/developers/.
+
+Package: poster
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 84
+Maintainer: Peter S Galbraith <psg@debian.org>
+Version: 20020830-2
+Depends: libc6 (>= 2.3.1-1), libpaper1
+Description: Create large posters out of PostScript pages
+ Poster takes a one-page PostScript file and scales it to a specified
+ size. It can tile the resulting image into multiple smaller pages
+ that can be pasted together to form the big poster. Poster prefers
+ EPS as its input although freer forms of PostScript are also
+ understood.
+
+Package: dnsutils
+Status: install ok installed
+Priority: standard
+Section: net
+Installed-Size: 332
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Source: bind9
+Version: 1:9.2.3+9.2.4-rc7-1
+Replaces: bind, bind9 (<< 1:9.1.0-3)
+Depends: libc6 (>= 2.3.2.ds1-4), libdns11, libisc7, liblwres1, libssl0.9.7, bind9-host | host
+Suggests: rblcheck
+Conflicts: netstd (<< 2.00)
+Description: Clients provided with BIND
+ The Berkeley Internet Name Domain (BIND) implements an Internet domain
+ name server. BIND is the most widely-used name server software on the
+ Internet, and is supported by the Internet Software Consortium, www.isc.org.
+ .
+ This package delivers various client programs related to DNS that are
+ derived from the BIND source tree.
+
+Package: libxft2-dev
+Status: deinstall ok config-files
+Priority: optional
+Section: devel
+Installed-Size: 192
+Maintainer: Branden Robinson <branden@debian.org>
+Source: xft2
+Version: 2.1.1-2
+Config-Version: 2.1.1-2
+Provides: libxft-dev
+Depends: libxft2 (= 2.1.1-2), libc6-dev | libc-dev, libfontconfig1-dev, libfreetype6-dev, xlibs-dev, zlib1g-dev | libz-dev, pkg-config
+Conflicts: libxft-dev
+Description: advanced font drawing library for X (development files)
+ Xft provides a client-side font API for X applications, making the FreeType
+ font rasterizer available to X clients. Fontconfig is used for font
+ specification resolution. Where available, the RENDER extension handles
+ glyph drawing; otherwise, the core X protocol is used.
+ .
+ This package provides a static library and C header files.
+
+Package: libtool
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 2324
+Maintainer: Scott James Remnant <scott@netsplit.com>
+Architecture: i386
+Version: 1.5.6-2
+Depends: gcc | c-compiler, cpp, libc6-dev | libc-dev, file, autotools-dev
+Recommends: libltdl3-dev
+Suggests: libtool-doc, autoconf (>> 2.50), automaken, g77 | fortran77-compiler, gcj
+Conflicts: autoconf (<= 2.12), automake (<= 1.3), libtool1.4
+Description: Generic library support script
+ This is GNU libtool, a generic library support script. Libtool hides
+ the complexity of generating special library types (such as shared
+ libraries) behind a consistent interface. To use libtool, add the
+ new generic library building commands to your Makefile, Makefile.in,
+ or Makefile.am. See the documentation for details. Libtool supports
+ building static libraries on all platforms.
+ .
+ Libtool supports generation of C, C++, Fortran and Java libraries.
+
+Package: a2ps
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 3076
+Maintainer: Masayuki Hatta (mhatta) <mhatta@debian.org>
+Architecture: i386
+Version: 1:4.13b-4
+Depends: libc6 (>= 2.3.2.ds1-4), libpaper1
+Pre-Depends: emacsen-common
+Recommends: bzip2, lpr | cupsys-client, psutils, wdiff
+Suggests: emacs21-nox | emacsen, groff, gs-common, gv, html2ps, imagemagick, tetex-bin, t1-cyrillic
+Conffiles:
+ /etc/a2ps.cfg 62abd5d2ffbd5251df1ae4f6200d6aba
+ /etc/a2ps-site.cfg a0350f2cd325c85160950f3c5731a4dc
+ /etc/emacs/site-start.d/50a2ps.el f66a2d9f85111461eaf630365ece8dbc
+Description: GNU a2ps - 'Anything to PostScript' converter and pretty-printer
+ GNU a2ps converts files into PostScript for printing or viewing. It uses a
+ nice default format, usually two pages on each physical page, borders
+ surrounding pages, headers with useful information (page number, printing
+ date, file name or supplied header), line numbering, symbol substitution
+ as well as pretty printing for a wide range of programming languages.
+ .
+ Historically, a2ps started as a text to PostScript converter, but thanks
+ to powerful delegations it is able to let you use it for any kind of files,
+ ie it can also digest manual pages, dvi files, texinfo, ....
+ .
+ Among the other most noticeable features of a2ps are:
+ - various encodings (all the Latins and others),
+ - various fonts (automatic font down loading),
+ - various medias,
+ - various printer interfaces,
+ - various output styles,
+ - various programming languages,
+ - various helping applications,
+ - and various spoken languages.
+
+Package: gcc-3.3
+Status: install ok installed
+Priority: standard
+Section: devel
+Installed-Size: 4132
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Version: 1:3.3.4-11
+Provides: c-compiler
+Depends: gcc-3.3-base, libgcc1 (>= 1:3.3.4-3), libc6 (>= 2.3.2.ds1-4), cpp-3.3 (>= 1:3.3.4-11), cpp-3.3 (<< 1:3.3.5), binutils (>= 2.15-2)
+Recommends: libc6-dev (>= 2.3.2.ds1-16)
+Suggests: gcc-3.3-doc (>= 1:3.3.4-11)
+Conflicts: gcc-3.2 (<= 1:3.2.3-0pre8)
+Description: The GNU C compiler
+ This is the GNU C compiler, a fairly portable optimizing compiler for C.
+
+Package: libspeex1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 112
+Maintainer: A. Maitland Bottoms <bottoms@debian.org>
+Architecture: i386
+Source: speex
+Version: 1.0.rel.4-1
+Replaces: libspeex
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: speex
+Conflicts: libspeex
+Description: The Speex Speech Codec
+ Unlike other codecs like MP3 and Ogg Vorbis, Speex is specially
+ designed for compressing voice at low bit-rates for applications
+ such as voice over IP (VoIP). In some sense, it is meant to be
+ complementary to the Ogg Vorbis codec.
+ .
+ This package is only the library.
+
+Package: gcc-3.4
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 3900
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Version: 3.4.2-2
+Provides: c-compiler
+Depends: gcc-3.4-base, libgcc1 (>= 1:3.4.2-2), libc6 (>= 2.3.2.ds1-4), cpp-3.4 (>= 3.4.2-2), cpp-3.4 (<< 3.4.3), binutils (>= 2.15)
+Recommends: libc6-dev (>= 2.3.2.ds1-16)
+Suggests: gcc-3.4-doc (>= 3.4.2-2), amd64-libs-dev
+Conflicts: gcc-3.2 (<= 1:3.2.3-0pre8)
+Description: The GNU C compiler
+ This is the GNU C compiler, a fairly portable optimizing compiler for C.
+ .
+ ABIs changed between gcc-3.3 and gcc-3.4 on some architectures (hppa, m68k,
+ mips, mipsel, sparc). Please read /usr/share/doc/gcc-3.4/README.Debian
+ for more details.
+
+Package: kdegraphics
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 36
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: all
+Version: 4:3.3.0-1.1
+Depends: kamera (>= 4:3.3.0-1.1), kcoloredit (>= 4:3.3.0-1.1), kdegraphics-kfile-plugins (>= 4:3.3.0-1.1), kdvi (>= 4:3.3.0-1.1), kfax (>= 4:3.3.0-1.1), kgamma (>= 4:3.3.0-1.1), kghostview (>= 4:3.3.0-1.1), kiconedit (>= 4:3.3.0-1.1), kmrml (>= 4:3.3.0-1.1), kolourpaint (>= 4:3.3.0-1.1), kooka (>= 4:3.3.0-1.1), kpdf (>= 4:3.3.0-1.1), kpovmodeler (>= 4:3.3.0-1.1), kruler (>= 4:3.3.0-1.1), ksnapshot (>= 4:3.3.0-1.1), ksvg (>= 4:3.3.0-1.1), kuickshow (>= 4:3.3.0-1.1), kview (>= 4:3.3.0-1.1), kviewshell (>= 4:3.3.0-1.1), libkscan1 (>= 4:3.3.0-1.1)
+Description: KDE Graphics metapackage
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ kdegraphics is a collection of graphic oriented applications:
+ .
+ * kamera: digital camera io_slave for Konqueror. Together gPhoto this
+ allows you to access your camera's picture with the URL camera:/
+ * kcoloredit: contains two programs: a color value editor and also a color
+ picker
+ * kdvi: program (and embeddable KPart) to display *.DVI files from TeX
+ * kfax: a program to display raw and tiffed fax images (g3, g3-2d, g4)
+ * kfaxview: an embeddable KPart to display tiffed fax images
+ * kfile-plugins: provide meta information for graphic files
+ * kgamma: XFree86 Gamma correction KControl module.
+ * kghostview: program (and embeddable KPart) to display *.PDF and *.PS
+ * kiconedit: an icon editor
+ * kmrml: A Konqueror plugin for searching pictures
+ * kolourpaint: a simple pixel oriented image drawing program
+ * kooka: a raster image scan program, based on SANE and libkscan
+ * kpdf: a pdf viewer
+ * kpovmodeler: A graphical editor for povray scenes
+ * kruler: a ruler in inch, centimeter and pixel to check distances on the
+ screen
+ * ksnapshot: make snapshots of the screen contents
+ * ksvg: SVG graphics viewer
+ * kuickshow: fast and comfortable imageviewer
+ * kview: picture viewer, provided as standalone program and embeddable KPart
+ * kviewshell: generic framework for viewer applications
+ .
+ This package also contains two more general libraries:
+ .
+ * libkscan: library to access scanners used by kooka (and koffice), needs
+ SANE to be used
+ .
+ This package depends on the KDE Graphics packages.
+
+Package: scrollkeeper
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 1248
+Maintainer: Gustavo Noronha Silva <kov@debian.org>
+Architecture: i386
+Version: 0.3.14-9
+Replaces: libscrollkeeper0 (<= 0.3.14-5), gnumeric (= 1.0.5-1)
+Depends: libc6 (>= 2.3.2.ds1-4), libscrollkeeper0 (>= 0.3.8), libxml2 (>= 2.6.11), libxslt1.1 (>= 1.1.8), zlib1g (>= 1:1.2.1), docbook-xml (>= 4.2-11)
+Suggests: logrotate
+Conffiles:
+ /etc/cron.monthly/scrollkeeper 96327e75f84b5d315a6b7774bfacc2a2
+ /etc/scrollkeeper.conf 5854d7a819000220cef5bafbf2632981
+ /etc/logrotate.d/scrollkeeper 40ff2eafe95170328e313d23c6a614b4
+Description: A free electronic cataloging system for documentation
+ It stores metadata specified by the http://www.ibiblio.org/osrt/omf/ (Open
+ Source Metadata Framework) as well as certain metadata extracted directly
+ from documents (such as the table of contents).
+ .
+ It provides various functionality pertaining to this metadata to help
+ browsers, such as sorting the registered documents or searching the
+ metadata for documents which satisfy a set of criteria.
+
+Package: cl-defsystem3
+Status: deinstall ok config-files
+Priority: optional
+Section: devel
+Installed-Size: 320
+Maintainer: Kevin M. Rosenberg <kmr@debian.org>
+Architecture: all
+Version: 3.3i+cvs.2004.07.18.1
+Config-Version: 3.3i+cvs.2004.07.18.1
+Replaces: common-lisp-controller (<< 3.18)
+Recommends: common-lisp-controller, cmucl | lisp-compiler
+Description: Make system for Common Lisp Packages
+ defsystem3 provides a "make" type functions for Common Lisp packages. It
+ provides compilation and loading features for complex Lisp systems
+ with multiple modules and files.
+
+Package: pstotext
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 110
+Maintainer: J.H.M. Dassen (Ray) <jdassen@debian.org>
+Version: 1.9-1
+Depends: gs | gs-aladdin (>= 3.51), libc6 (>= 2.3.2.ds1-4)
+Description: Extract text from PostScript and PDF files
+ pstotext extracts text (in the ISO 8859-1 character set) from a PostScript
+ or PDF (Portable Document Format) file. Thus, pstotext is similar to the
+ ps2ascii program that comes with ghostscript. The output of pstotext is
+ however better than that of ps2ascii, because pstotext deals better with
+ punctuation and ligatures.
+
+Package: console-tools
+Status: install ok installed
+Priority: important
+Section: utils
+Installed-Size: 900
+Maintainer: Alastair McKinstry <mckinstry@debian.org>
+Architecture: i386
+Version: 1:0.2.3dbs-55
+Replaces: open, util-linux (<< 2.11)
+Provides: console-utilities, open
+Depends: libc6 (>= 2.3.2.ds1-4), libconsole (= 1:0.2.3dbs-55), sysvinit (>> 2.74), console-common, debconf (>= 0.5)
+Recommends: console-data (>= 2002.12.04dbs-1)
+Suggests: kbd-compat
+Conflicts: console-utilities, kbd (<< 0.95-11), open, console-common (<< 0.7.25)
+Conffiles:
+ /etc/console-tools/config fca0cdd7f7912f77f928e62e47001e2d
+ /etc/console-tools/remap 2f1f15d62b45ab43c04b3ddbfcf591ec
+ /etc/init.d/console-screen.sh a5e6ad36ab0010010fdfdd1f7c3559e0
+Description: Linux console and font utilities
+ This package allows you to set-up and manipulate the Linux console (ie.
+ screen and keyboard), and manipulate console-font files.
+ .
+ `console-tools' was developed from version 0.94 of the standard `kbd'
+ package, and integrates many fixes and enhancements, including new
+ kbd features up to 0.99.
+ .
+ You will probably want to install a set of data files, such as the one
+ in the `console-data' package.
+ .
+ For command-line compatibility with kbd, you may want to install the
+ kbd-compat package.
+
+Package: libdvdread3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 176
+Maintainer: Mikael Hedin <micce@debian.org>
+Architecture: i386
+Source: libdvdread
+Version: 0.9.4-5
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: libdvdcss2, wget
+Conflicts: libdvdread1 (= 0.9.1-1)
+Description: Simple foundation for reading DVDs
+ To allow applications to access some of the more advanced features
+ of the DVD format, libdvdread offers:
+ .
+ 1. A simple abstraction for reading the files on a DVD image
+ (dvd_reader.h).
+ 2. A simple library for parsing the information (IFO) files
+ (ifo_read.h/ifo_types.h).
+ 3. A simple library for parsing the navigation (NAV) packets
+ (nav_read.h/nav_types.h).
+ .
+ libdvdread currently uses libdl to dynamically probe for libdvdcss at
+ runtime, if found, libdvdcss will be used to decrypt sections of the
+ DVD as necessary.
+
+Package: psad
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 1176
+Maintainer: Daniel Gubser <guterm@debian.org>
+Architecture: i386
+Version: 1.3.2-3
+Depends: libc6 (>= 2.3.2.ds1-4), perl (>= 5.6.0-16), libunix-syslog-perl, iptables | ipchains, syslogd | syslog-ng, libnetwork-ipv4addr-perl, libdate-calc-perl, libbit-vector-perl, whois
+Recommends: bastille
+Conflicts: bastille (<< 1:1.3.0-4)
+Conffiles:
+ /etc/psad/snort_rules/attack-responses.rules d942c1ca04d98e423f4e6f9a061878f1
+ /etc/psad/snort_rules/backdoor.rules 05119087a97febc4775220df87f93304
+ /etc/psad/snort_rules/bad-traffic.rules c871592d009d4c43271df72263e6d348
+ /etc/psad/snort_rules/chat.rules 83792bbc4951b0a8acd78fdadee5adcc
+ /etc/psad/snort_rules/ddos.rules fde0e8e59a16e5afc59cb35ee34ff6a0
+ /etc/psad/snort_rules/deleted.rules 14dbe1af3d97e091b4f64502391d354c
+ /etc/psad/snort_rules/dns.rules 8672e06d279c66787bc71b536d5b25ff
+ /etc/psad/snort_rules/dos.rules b445a876410c6f9ff56b9091b5b7b8c3
+ /etc/psad/snort_rules/experimental.rules 051bad80db954e04a1cf8e05c609edab
+ /etc/psad/snort_rules/exploit.rules 9f81a340fc4003cdd6b0b58e05d87215
+ /etc/psad/snort_rules/finger.rules 14326d8de857d5b9c931934febb00c81
+ /etc/psad/snort_rules/ftp.rules daa583ca541260ccefb0adbbd220879f
+ /etc/psad/snort_rules/icmp-info.rules 645c1644aaee09b143a2d3f398672c8e
+ /etc/psad/snort_rules/icmp.rules 69576659292635e779398f58e461b698
+ /etc/psad/snort_rules/imap.rules a9ed485eb30fbdd325d15b6d3295da59
+ /etc/psad/snort_rules/info.rules 1224cc8b1434b96c8efbc69e89044650
+ /etc/psad/snort_rules/local.rules 76a4b04c00610a5fea5c87c07a05cbba
+ /etc/psad/snort_rules/misc.rules 262350a69a2d1d6eddb6e11cb416748e
+ /etc/psad/snort_rules/multimedia.rules 620720744abe9e39e5a3b1be1c8ece62
+ /etc/psad/snort_rules/mysql.rules c484005787a82701808b9e4a496f1bae
+ /etc/psad/snort_rules/netbios.rules 6381b2cd855b36a4cf3e15e3a0bd588f
+ /etc/psad/snort_rules/nntp.rules 092992b26c6546983702b4778c75b83e
+ /etc/psad/snort_rules/oracle.rules 5439a730f61ee68f624893b163b94bfd
+ /etc/psad/snort_rules/other-ids.rules bed69b68794e0add9d8adf699ab30d37
+ /etc/psad/snort_rules/p2p.rules 85609a7c656aff1fe05e2805da57620f
+ /etc/psad/snort_rules/policy.rules 64017f2b9c967514e87babc46ca0a194
+ /etc/psad/snort_rules/pop2.rules f7bfeacc19c60935b8702248e8a69060
+ /etc/psad/snort_rules/pop3.rules 030dd476c5da37cb8121cf239558f3ae
+ /etc/psad/snort_rules/porn.rules 97f3f9d475579e1680055a3fb98e5141
+ /etc/psad/snort_rules/rpc.rules 1e77beddf0df25fff46e424078dc3f7a
+ /etc/psad/snort_rules/rservices.rules 21c3cb173b89c146d0faae9dd9162b34
+ /etc/psad/snort_rules/scan.rules b18ccd4a16d2bc47b037c7d2ee641b60
+ /etc/psad/snort_rules/shellcode.rules 1ff44cac1f37af7417fd1e5c6939bf17
+ /etc/psad/snort_rules/smtp.rules f2c98acd78588d2ac1014a395611a32e
+ /etc/psad/snort_rules/snmp.rules 464b53cbac6a5856796a6b8d1cb18592
+ /etc/psad/snort_rules/sql.rules 7d0271ca0096d8028dba30ab2c579425
+ /etc/psad/snort_rules/telnet.rules eb0a58466dbe161332587d80bc62d59b
+ /etc/psad/snort_rules/tftp.rules 569250d67df3d34a16fe416512678365
+ /etc/psad/snort_rules/virus.rules 7ca852ee38e71bc56da0d486b35d0c6c
+ /etc/psad/snort_rules/web-attacks.rules 7576237e13073685e145c38e480194b5
+ /etc/psad/snort_rules/web-cgi.rules c3a8221f3564cbd8f91a51e532c4670c
+ /etc/psad/snort_rules/web-client.rules 4988690ad931f4866e78e204bac44853
+ /etc/psad/snort_rules/web-coldfusion.rules 0daa5b86675c5de7e3047376b0eb62f8
+ /etc/psad/snort_rules/web-frontpage.rules 63aaf23b4678522e41932fe41fb931c4
+ /etc/psad/snort_rules/web-iis.rules 52db5ff73fa9ce9ab4314a6df626cb13
+ /etc/psad/snort_rules/web-misc.rules 6f03196a86e5051eb6f9cac1cee1df7d
+ /etc/psad/snort_rules/web-php.rules a62cfab35274e80caa34dc6e15adf54b
+ /etc/psad/snort_rules/x11.rules 6ee8515e78900c26e6cd79f41b58afbc
+ /etc/psad/signatures 6059071ed06036fb202d7ec0909602f4
+ /etc/psad/auto_dl 83ecb453fc637c36655beda6c6b5fc08
+ /etc/psad/psad.conf 44282d2134081f3567d706b6bdf6c440
+ /etc/psad/kmsgsd.conf a51086b3c148f4fbfd7a768988ca7d0e
+ /etc/psad/psadwatchd.conf ad3102fde881230aa94fda597e17dd59
+ /etc/psad/posf c9c159dd12d13863f1ab49854bcb7565
+ /etc/psad/icmp_types 33f77398b4619051ebb7e1923442f8c7
+ /etc/psad/fw_search.conf 0a0ab75a5c2f07f2dc14ebcffa720411
+ /etc/init.d/psad 38b09e8c26e58bbcff1dd134ad7bff86
+Description: The Port Scan Attack Detector
+ PSAD is a collection of four lightweight system daemons written in
+ Perl and in C that is designed to work with Linux firewalling code
+ (iptables in the 2.4.x kernels, and ipchains in the 2.2.x kernels)
+ to detect port scans. It features a set of highly configurable danger
+ thresholds (with sensible defaults provided), verbose alert messages
+ that include the source, destination, scanned port range, begin and
+ end times, tcp flags and corresponding nmap options (Linux 2.4.x
+ kernels only), reverse DNS info, email alerting, and automatic
+ blocking of offending ip addresses via dynamic configuration of
+ ipchains/iptables firewall rulesets.
+ .
+ In addition, for the 2.4.x kernels psad incorporates many
+ of the tcp signatures included in Snort to detect highly suspect scans
+ for:
+ .
+ * various backdoor programs (e.g. EvilFTP, GirlFriend, SubSeven)
+ * DDoS tools (mstream, shaft)
+ * advanced port scans (syn, fin, xmas) such as those made with nmap
+ .
+ Homepage: http://www.cipherdyne.org/
+
+Package: whois
+Status: install ok installed
+Priority: standard
+Section: net
+Installed-Size: 216
+Maintainer: Marco d'Itri <md@linux.it>
+Architecture: i386
+Version: 4.6.22
+Replaces: bsdmainutils (<= 4.5.1), bsdutils (<< 3.0-0)
+Depends: libc6 (>= 2.3.2.ds1-4), libidn11
+Description: The GNU whois client
+ This is a new whois (RFC 954) client rewritten from scratch.
+ It is inspired from and compatible with the usual BSD and RIPE whois(1)
+ programs.
+ It is intelligent and can automatically select the appropriate whois
+ server for most queries.
+ .
+ The package also contains mkpasswd, a simple front end to crypt(3).
+
+Package: debian-keyring
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 9448
+Maintainer: James Troup <keyring-maint@debian.org>
+Architecture: all
+Version: 2004.07.05
+Recommends: gnupg (>= 1.0.6-4)
+Description: GnuPG (and obsolete PGP) keys of Debian Developers
+ The Debian project wants developers to digitally sign the
+ announcements of their packages with GnuPG, to protect against
+ forgeries. This package contains keyrings of GnuPG and (deprecated)
+ PGP keys of developers.
+
+Package: python-configlet
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+Architecture: all
+
+Package: splay
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 248
+Maintainer: John Hedges <john@drystone.co.uk>
+Architecture: i386
+Version: 0.9.5.2-6
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libid3-3.8.3, libstdc++5 (>= 1:3.3.4-1)
+Description: Sound player for MPEG-1,2 layer 1,2,3
+ Based on maplay, this package decodes layer I, II, and III MPEG audio
+ streams/files and plays them from the command line. It can also be used
+ to play wav files.
+
+Package: bincimap-run
+Status: deinstall ok config-files
+Priority: optional
+Section: mail
+Installed-Size: 132
+Maintainer: Gerrit Pape <pape@smarden.org>
+Version: 0.1.1
+Config-Version: 0.1.1
+Provides: imap-server
+Depends: bincimap, runit (>> 0.11.2-0), ipsvd, checkpw (>> 1.00-0), adduser
+Conflicts: imap-server
+Conffiles:
+ /etc/bincimap/bincimap/log/run 8b33475c4a9d344b577c4fb0e6a96db5
+ /etc/bincimap/bincimap/run 4eaf34ab4196fa1a73942678384a1ef5
+ /etc/bincimap/bincimaps/log/run 622ec8381393205a90fe290e900b0cd8
+ /etc/bincimap/bincimaps/run a508c6daa0b19a8a6890c53003156bf2
+Description: IMAP server for Maildir depositories
+ As an alternative to existing similar IMAP servers, Binc IMAP strives to
+ be very easy to use, but robust, stable and secure. It aims at being
+ absolutely compliant with the IMAP4rev1 protocol, and simple and modular
+ in design, making it very easy for third parties to utilize the source
+ code and enhance the product.
+ .
+ Binc IMAP supports Dan J. Bernstein's Maildir format and checkpassword
+ authentication interface.
+ .
+ See http://www.bincimap.org/ for details.
+ .
+ This package sets up the bincimap-ssl service to listen on 0.0.0.0:993,
+ and additionally provides a service directory to run a non-ssl bincimap
+ service.
+
+Package: tcl8.4
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 3120
+Maintainer: Chris Waters <xtifr@debian.org>
+Architecture: i386
+Version: 8.4.7-1
+Provides: tclsh
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: tclreadline
+Conflicts: tcl, tcl74 (<= 7.4p3-2)
+Description: Tcl (the Tool Command Language) v8.4 - run-time files
+ Tcl is a powerful, easy to use, embeddable, cross-platform interpreted
+ scripting language. This package contains everything you need to run
+ Tcl scripts and Tcl-enabled apps. This version includes thread support.
+ .
+ Homepage: http://www.tcl.tk/
+
+Package: postfix-ldap
+Status: purge ok not-installed
+Priority: extra
+Section: mail
+
+Package: dpkg-repack
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 60
+Maintainer: Joey Hess <joeyh@debian.org>
+Architecture: all
+Version: 1.19
+Depends: perl, dpkg-dev
+Description: puts an unpacked .deb file back together
+ dpkg-repack creates a .deb file out of a debian package that has already
+ been installed. If any changes have been made to the package while it was
+ unpacked (ie, files in /etc were modified), the new package will inherit
+ the changes.
+ .
+ This utility can make it easy to copy packages from one computer to another,
+ or to recreate packages that are installed on your system, but no longer
+ available elsewhere, or to store the current state of a package before you
+ upgrade it.
+
+Package: ncurses-base
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 292
+Maintainer: Daniel Jacobowitz <ncurses-maint@debian.org>
+Architecture: all
+Source: ncurses
+Version: 5.4-4
+Replaces: ncurses-term
+Provides: ncurses-runtime
+Conflicts: ncurses, ncurses-runtime
+Conffiles:
+ /etc/terminfo/E/Eterm 77e9bfd2b9f650442290d67b67437d39
+ /etc/terminfo/E/Eterm-color 77e9bfd2b9f650442290d67b67437d39
+ /etc/terminfo/a/ansi 6b60f35a7fb6122a53b1e74e56cba56e
+ /etc/terminfo/c/cons25 9b34842b3ce68eb7ebf904ecd757c655
+ /etc/terminfo/c/cygwin d681596ecd9043b041653ba573a76c3e
+ /etc/terminfo/d/dumb ca3b114f0727da81a9b957b553a9915d
+ /etc/terminfo/h/hurd f3f4945bace312609517de8dea98357a
+ /etc/terminfo/l/linux 8760f812a1d023792bbaa52d4ee913ce
+ /etc/terminfo/m/mach d982b12970acbb48d594ed799615f036
+ /etc/terminfo/m/mach-bold 21465595967257ad4020192c005cb280
+ /etc/terminfo/m/mach-color 1bb86008400135036fea5773a9c819a1
+ /etc/terminfo/p/pcansi 8b97f1ea94e8d2942c8dcd2d943e1322
+ /etc/terminfo/r/rxvt bced284b61d1dbc0a8277bd7935dd511
+ /etc/terminfo/r/rxvt-basic 1eb7a931b067c96963846e2a4ef2d020
+ /etc/terminfo/r/rxvt-m 1eb7a931b067c96963846e2a4ef2d020
+ /etc/terminfo/s/screen 0d5a720e9ec24b5adae01d0725268714
+ /etc/terminfo/s/screen-bce fcd86fb14bb8862d0228ebcc5130d932
+ /etc/terminfo/s/screen-s 9c7c28dcb51cb6a756012fea6ecbc508
+ /etc/terminfo/s/screen-w bc8763ccb5b05b4b28363d58fcbf4e72
+ /etc/terminfo/s/sun c7ab8d7ab013eca15c6eb83a4c80a3d1
+ /etc/terminfo/v/vt100 d93624290a5975897b0478520c709e83
+ /etc/terminfo/v/vt102 e6fdc8a4110be9e38b4f1bb50009e883
+ /etc/terminfo/v/vt220 d84067478b4b1365bec5b152daaf9161
+ /etc/terminfo/v/vt52 2cfdf4dcc4a93c378d9c6bc01cb8f3c3
+ /etc/terminfo/w/wsvt25 5c864b0e8e94e9749f2870116518b9df
+ /etc/terminfo/w/wsvt25m 068fa9d5fa86261f444ded5dd1dea7ec
+ /etc/terminfo/x/xterm a27bce1c0ad7de297b3fd0fad07ee3b6
+ /etc/terminfo/x/xterm-debian 78e967e4963143e07e9f2bebdd3fcbae
+ /etc/terminfo/x/xterm-r5 fe7a8a99ac6e35a367fd06a54058552f
+ /etc/terminfo/x/xterm-r6 c527220621b07a8d87be6f33ec0a792e
+ /etc/terminfo/x/xterm-xfree86 4e917eab4bae83fc609831bb83d71964
+ /etc/terminfo/x/xterm-mono 033259cba48e6fb8fc34dea3ebfa2b5e
+ /etc/terminfo/x/xterm-vt220 186abe4837963b51a89188180566a66d
+ /etc/terminfo/x/xterm-color 98ec756da66f5f3f0a46bea0ae8d2641
+Description: Descriptions of common terminal types
+ This package contains what should be a reasonable subset of terminal
+ definitions, including: ansi, dumb, linux, rxvt, screen, sun, vt100,
+ vt102, vt220, vt52, and xterm.
+
+Package: tcl8.3
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 2660
+Maintainer: Chris Waters <xtifr@debian.org>
+Version: 8.3.5-4
+Config-Version: 8.3.5-4
+Provides: tclsh
+Depends: libc6 (>= 2.3.1-1)
+Suggests: tclreadline
+Conflicts: tcl, tcl74 (<= 7.4p3-2)
+Description: Tcl (the Tool Command Language) v8.3 - run-time files
+ Tcl is a powerful, easy to use, embeddable, cross-platform interpreted
+ scripting language. This package contains everything you need to run
+ Tcl scripts and Tcl-enabled apps. This version does not support
+ threads; if you need thread support, please use tcl8.4.
+ .
+ Homepage: http://www.tcl.tk/
+
+Package: libcvsservice0
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 264
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdesdk
+Version: 4:3.2.1-1
+Config-Version: 4:3.2.1-1
+Replaces: cervisia (<< 4:3.2.0)
+Depends: kdelibs4 (>= 4:3.2.1), libart-2.0-2 (>= 2.3.8), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), cvs
+Recommends: kdelibs-bin
+Conflicts: cervisia (<< 4:3.2.0)
+Description: DCOP service for accessing CVS repositories
+ This library provides a DCOP service for accessing and working with
+ remote CVS repositories. Applications may link with this library to
+ access the DCOP service directly from C++. Alternatively, scripts may
+ access the service using the standard "dcop" command-line tool.
+ .
+ DCOP is the Desktop Communication Protocol used throughout KDE.
+ .
+ This package is part of the KDE Software Development Kit.
+
+Package: libpopt0
+Status: install ok installed
+Priority: important
+Section: base
+Installed-Size: 436
+Maintainer: Paul Martin <pm@debian.org>
+Architecture: i386
+Source: popt
+Version: 1.7-5
+Replaces: popt
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: popt, libpopt-dev (<= 1.4-1), rpm (<= 4.0.2-3)
+Description: lib for parsing cmdline parameters
+ Popt was heavily influenced by the getopt() and getopt_long() functions,
+ but it allows more powerful argument expansion. It can parse arbitrary
+ argv[] style arrays and automatically set variables based on command
+ line arguments. It also allows command line arguments to be aliased via
+ configuration files and includes utility functions for parsing arbitrary
+ strings into argv[] arrays using shell-like rules.
+ .
+ This package contains the runtime library and locale data.
+
+Package: kteatime
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 320
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdetoys
+Version: 4:3.2.3-3
+Replaces: kdetoys (<< 4:3.0.1-0), task-kdetoys
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: kicker
+Suggests: khelpcenter, kdetoys-doc-html
+Conflicts: task-kdetoys
+Description: KDE utility for making a fine cup of tea
+ KTeaTime is a handy timer for steeping tea. No longer will you have to
+ guess at how long it takes for your tea to be ready. Simply select the
+ type of tea you have, and it will alert you when the tea is ready to
+ drink.
+ .
+ KTeaTime sits in the KDE system tray.
+ .
+ This package is part of the official KDE toys module.
+
+Package: dirmngr
+Status: purge ok not-installed
+Priority: optional
+Section: unknown
+
+Package: libpam0g
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 168
+Maintainer: Sam Hartman <hartmans@debian.org>
+Architecture: i386
+Source: pam
+Version: 0.76-22
+Replaces: libpam0g-util
+Depends: libc6 (>= 2.3.2.ds1-4), libpam-runtime
+Suggests: libpam-doc
+Conflicts: libpam0 (<= 0.56-2), libpam
+Description: Pluggable Authentication Modules library
+ Contains the C shared library for Linux-PAM, a suite of shared
+ libraries that enable the local system administrator to choose how
+ applications authenticate users. In other words, without rewriting
+ or recompiling a PAM-aware application, it is possible to switch
+ between the authentication mechanism(s) it uses. One may entirely
+ upgrade the local authentication system without touching the
+ applications themselves.
+
+Package: libxml-sax-perl
+Status: deinstall ok config-files
+Priority: optional
+Section: interpreters
+Installed-Size: 436
+Maintainer: Ardo van Rangelrooij <ardo@debian.org>
+Version: 0.12-3
+Config-Version: 0.12-3
+Depends: perl (>= 5.6.0-16), libxml-namespacesupport-perl
+Description: Perl module for using and building Perl SAX2 XML processors
+ This module consists of several framework classes for using and
+ building Perl SAX2 XML parsers, filters, and drivers. It is designed
+ around the need to be able to "plug in" different SAX parsers to an
+ application without requiring programmer intervention. Those of you
+ familiar with the DBI will be right at home. Some of the designs
+ come from the Java JAXP specification (SAX part), only without the
+ javaness.
+ .
+ This package also contains a script (called update-perl-sax-parsers)
+ to manage the ParserDetails.ini file. This script is intended to be
+ used in postinst and prerm package scripts to (de)register parsers.
+ See README.Debian for more info.
+
+Package: foomatic-bin
+Status: purge ok not-installed
+Priority: optional
+Section: text
+
+Package: hpijs
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 580
+Maintainer: Torsten Landschoff <torsten@debian.org>
+Architecture: i386
+Version: 1.6-3
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.4-1), libstdc++5 (>= 1:3.3.4-1), gs-gpl (>= 6.53) | gs-esp (>= 7.05) | gs-afpl (>= 7.04-2)
+Suggests: hpoj
+Description: HP Inkjet Server - Ghostscript driver for HP inkjets
+ This package contains the hpijs binary which provides Ghostscript
+ with a driver for most inkjet manufactured by Hewlett Packard using
+ the ijs interface.
+ .
+ It includes the so-called rss patch, to use pure black ink instead
+ of composite black in printers that don't do color map conversion
+ in firmware.
+ .
+ Users of USB and parallel-port HP printers are advised to also install
+ the hpoj package, and use it to send the hpijs output to the printer.
+
+Package: kword
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 9188
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: koffice
+Version: 1:1.3.2-2
+Replaces: koffice-libs (<< 1:1.2.90-0)
+Depends: kdelibs4 (>= 4:3.2.3), koffice-libs (>= 1:1.3.0-0), libart-2.0-2 (>= 2.3.16), libaspell15 (>= 0.50.5), libbz2-1.0, libc6 (>= 2.3.2.ds1-4), libdps1 (>> 4.1.0), libfam0c102, libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.1), libgsf-1 (>= 1.10.0), libice6 | xlibs (>> 4.1.0), libjasper-1.701-1 (>= 1.701.0), libjpeg62, liblcms1 (>= 1.08-1), libmagick6, libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libtiff4, libwv2-1 (>= 0.1.9-0), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.11), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Recommends: libkscan1
+Suggests: khelpcenter, koffice-doc-html
+Description: a word processor for the KDE Office Suite
+ KWord is a FrameMaker-like word processing and desktop publishing
+ application. KWord is capable of creating demanding and professional
+ looking documents. It can be used for desktop publishing, but also for
+ "normal" word processing, like writing letters, reports and so on.
+ .
+ This package is part of the KDE Office Suite.
+
+Package: mplayer-686
+Status: deinstall ok config-files
+Priority: extra
+Section: graphics
+Installed-Size: 6848
+Maintainer: Christian Marillat <marillat.christian@wanadoo.fr>
+Source: mplayer
+Version: 1:1.0-pre3-0.2
+Config-Version: 1:1.0-pre3-0.2
+Replaces: mplayer-k7, mplayer-386, mplayer-custom, mplayer-nogui
+Provides: mplayer
+Depends: aalib1 (>= 1.2), libartsc0 (>= 1.1.5), libasound2 (>> 1.0.2), libaudio2, libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libcdparanoia0 (>= 3a9.8-10), libdivxdecore0 (>= 1:5.0.1), libdv2 (>= 0.99), libdvdread3, libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libfaad2-0 (>= 2.0-rc3-0.0), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libggi2 (>= 1:2.0.2), libglib1.2 (>= 1.2.0), libgtk1.2 (>= 1.2.10-4), libjpeg62, liblame0 (>= 3.93.1-0.1), liblircclient0, liblzo1, libmad0 (>= 0.15.0b), libncurses5 (>= 5.3.20030510-1), libogg0 (>= 1.1.0), libpng10-0 (>= 1.0.15-4), libpostproc0 (>= 0.90rc4), libsdl1.2debian (>> 1.2.7-0), libsmbclient (>= 2.2.2-11), libstdc++5 (>= 1:3.3.2-1), libsvga1, libungif4g (>= 4.1.0b1), libvorbis0a (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxi6 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0), libxv1, libxvidcore2 (>= 1:0.9.2-0.2), xlibmesa-gl | libgl1, zlib1g (>= 1:1.2.1)
+Recommends: mplayer-fonts
+Suggests: w32codecs-lite | w32codecs (>= 0.91-1), libdvdcss, mplayer-doc
+Conflicts: mplayer-k7, mplayer-386, mplayer-custom, mplayer-nogui
+Conffiles:
+ /etc/mplayer/mplayer.conf 236195c5744a33e94b5ce3e906ab5ac1
+ /etc/mplayer/input.conf ae3dbdc840dc86ba038707f96f6c9b5f
+ /etc/mplayer/menu.conf 84d18a2c421dc750145919730397faa8
+ /etc/mplayer/codecs.conf 99071d6206c7069a50bd231f836040c7
+Description: The Ultimate Movie Player For Linux
+ It plays most mpeg, avi and asf files, supported by many native and win32
+ DLL codecs. You can watch VCD, DVD and even DivX movies too. The another
+ big feature of mplayer is the wide range of supported output drivers. It
+ works with X11, Xv, DGA, OpenGL, SVGAlib, fbdev, but you can use SDL (and
+ this way all drivers of SDL) and some lowlevel card-specific drivers (for
+ Matrox/3dfx/SiS) too! Most of them supports software or hardware scaling,
+ so you can enjoy movies in fullscreen.
+ .
+ This version is for Pentium Pro/Celeron/Pentium II/Pentium IIIPentium
+ Pro/Celeron/Pentium II/Pentium III/Pentium IV
+
+Package: autotools-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 132
+Maintainer: Henrique de Moraes Holschuh <hmh@debian.org>
+Architecture: all
+Version: 20040822.1
+Description: Update infrastructure for config.{guess,sub} files
+ This package installs an up-to-date (from CVS) version of config.guess
+ and config.sub, used by the automake and libtool packages. It provides
+ the canonical copy of those files for other packages as well.
+ .
+ It also documents in /usr/share/doc/autotools-dev/README.Debian best
+ practices and guidelines for using autoconf, automake and friends on
+ Debian packages. This is a must-read for any developers packaging
+ software that uses the GNU autotools, or GNU gettext.
+
+Package: kfouleggs
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 684
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Replaces: ksirtet (<< 4:3.0.9)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libkdegames1 (>= 4:3.3.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: A KDE clone of the Japanese PuyoPuyo game
+ KFouleggs is a clone of the Japanese PuyoPuyo game, with advanced
+ features such as multiplayer games against human or AI, and network
+ play. If you have played Tetris or one of its many clones, you will
+ find KFouleggs easy to learn.
+
+Package: libexif-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 280
+Maintainer: christophe barbe <christophe@debian.org>
+Architecture: i386
+Source: libexif
+Version: 0.6.9-1
+Depends: libexif10 (= 0.6.9-1), libc6-dev
+Description: The EXIF library allows you to parse an EXIF file (development files)
+ Most digital cameras produce EXIF files, which are JPEG files with
+ extra tags that contain information about the image. The EXIF library
+ allows you to parse an EXIF file and read the data from those tags.
+
+Package: jnettop
+Status: install ok installed
+Priority: extra
+Section: net
+Installed-Size: 120
+Maintainer: Ari Pollak <ari@debian.org>
+Architecture: i386
+Version: 0.9-3
+Depends: libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.4.1), libncurses5 (>= 5.4-1), libpcap0.7
+Description: View hosts/ports taking up the most network traffic
+ jNettop captures traffic comming across the host it is running on and displays
+ streams sorted by bandwidth they use. Result is a nice listing of
+ communication on network by host and port, how many bytes went
+ through this transport and the bandwidth it is consuming.
+
+Package: cdbs
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 208
+Maintainer: CDBS Hackers <build-common-hackers@lists.alioth.debian.org>
+Architecture: all
+Version: 0.4.22-1.4
+Recommends: autotools-dev, debhelper (>= 4.1.0)
+Conflicts: build-common
+Description: common build system for Debian packages
+ This package contains the Common Debian Build System, an abstract
+ build system based on Makefile inheritance which is completely
+ extensible and overridable. In other words, CDBS provides a sane set
+ of default rules upon which packages can build; any or all rules may
+ be overridden as needed.
+
+Package: libdjbdns1
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 84
+Maintainer: Gerrit Pape <pape@smarden.org>
+Source: libdjbdns
+Version: 1.05-3
+Config-Version: 1.05-3
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: DNS client library designed to replace the BIND res_*/dn_* library
+ High-level lookups:
+ .
+ The dns library provides several easy-to-use DNS lookup routines:
+ dns_ip4, dns_ip4_qualify, dns_name4, dns_mx, and dns_txt.
+ .
+ dns_ip4_qualify supports the traditional configuration mechanisms for
+ hostname rewriting: $LOCALDOMAIN, /etc/resolv.conf, and gethostname. It
+ also supports a powerful new user-controlled rewriting mechanism.
+ .
+ The functions that read /etc/resolv.conf automatically reread it every ten
+ minutes, so system administrators don't have to kill long-running programs.
+ .
+ Low-level lookups:
+ .
+ The dns_domain_* and dns_packet_* functions make it easy to safely parse DNS
+ packets. The dns_transmit_* functions send DNS queries of arbitrary types to
+ arbitrary servers. These are the functions used in the dnscache program.
+ .
+ See http://cr.yp.to/djbdns/blurb/library.html for details.
+ .
+ This package contains the shared library.
+
+Package: libusb-0.1-4
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 76
+Maintainer: Aurelien Jarno <aurel32@debian.org>
+Architecture: i386
+Source: libusb
+Version: 1:0.1.8-16
+Replaces: libusb0
+Depends: libc6 (>= 2.3.2.ds1-4), debconf (>= 0.5) | debconf-2.0
+Recommends: hotplug
+Conflicts: libusb0
+Description: Userspace USB programming library
+ Library for programming USB applications without the knowledge
+ of Linux kernel internals.
+ .
+ More information can be found at the Linux USB web site
+ http://www.linux-usb.org/ .
+
+Package: gimp1.3-python
+Status: purge ok not-installed
+Priority: optional
+Section: graphics
+Architecture: i386
+
+Package: libgpg-error0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 120
+Maintainer: Jose Carlos Garcia Sogo <jsogo@debian.org>
+Architecture: i386
+Source: libgpg-error
+Version: 1.0-1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: library for common error values and messages in GnuPG components
+ Library that defines common error values for all GnuPG
+ components. Among these are GPG, GPGSM, GPGME, GPG-Agent, libgcrypt,
+ pinentry, SmartCard Daemon and possibly more in the future.
+
+Package: psmisc
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 256
+Maintainer: Craig Small <csmall@debian.org>
+Architecture: i386
+Version: 21.5-1
+Replaces: procps (<< 1:1.2)
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1)
+Description: Utilities that use the proc filesystem
+ This package contains three little utilities that use the proc FS:
+ .
+ `fuser' identifies processes using files (similar to Sun's or SGI's fuser).
+ `killall' kills processes by name, e.g. killall -HUP named. `pstree' shows
+ the currently running processes as a tree
+
+Package: swig1.3
+Status: purge ok not-installed
+Priority: optional
+Section: interpreters
+
+Package: kdemultimedia-kio-plugins
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 356
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdemultimedia
+Version: 4:3.3.0-1
+Replaces: kdebase-audiolibs (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libcdparanoia0 (>= 3a9.8-11), libfam0c102, libflac4, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libkcddb1 (>= 4:3.3.0), libogg0 (>= 1.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Conflicts: kdebase-audiolibs (<< 4:3.0.0)
+Description: Support for browsing audio CDs under Konqueror
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ Support for browsing audio CDs under Konqueror.
+ .
+ This package is part of the official KDE multimedia module.
+
+Package: x-window-system-core
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 232
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Depends: xserver-xfree86, xlibmesa-dri, xlibmesa-gl, xlibmesa-glu, xfonts-base (>> 4.0), xfonts-100dpi, xfonts-75dpi, xfonts-scalable, xbase-clients, xutils
+Description: X Window System core components
+ This metapackage provides the essential components for a standalone
+ workstation running the X Window System. It provides the X libraries, an X
+ server (except on the S/390 architecture), a set of fonts, and a group of
+ basic X clients and utilities.
+ .
+ Higher level metapackages, such as those for desktop environments, can
+ depend on this package and simplify their dependencies.
+ .
+ It should be noted that a package providing x-window-manager and a package
+ providing x-terminal-emulator should also be installed to ensure a
+ comfortable X experience.
+
+Package: ucf
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 188
+Maintainer: Manoj Srivastava <srivasta@debian.org>
+Architecture: all
+Version: 1.08
+Conffiles:
+ /etc/ucf.conf a25ccf8058fe089f9e1acdc2004f3122
+Description: Update Configuration File: preserves user changes to config files.
+ Debian policy states that configuration files must preserve user
+ changes during package upgrade. The easy way to achieve this behavior
+ is to make the configuration file a `conffile', in which case dpkg
+ handles the file specially during upgrades, prompting the user as
+ needed.
+ .
+ This is appropriate only if it is possible to distribute a default
+ version that will work for most installations, although some system
+ administrators may choose to modify it. This implies that the
+ default version will be part of the package distribution, and must
+ not be modified by the maintainer scripts during installation (or at
+ any other time).
+ .
+ This script attempts to provide conffile like handling for files that
+ can not be labelled conffiles, are not shipped in a Debian package,
+ but handled by the postinst instead. This script allows one to
+ maintain files in /etc, preserving user changes and in general
+ offering the same facilities while upgrading that dpkg normally
+ provides for "conffiles".
+ .
+ Additionally, this script provides facilities for transitioning a
+ file that had not been provided conffile like protection to come
+ under this schema, and attempts to minimize questions asked at
+ install time. Indeed, the transitioning facility is better than the
+ one offered by dpkg while transitioning a file from a non-conffile to
+ conffile status.
+
+Package: libxp-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 332
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs-dev (<< 4.3.0)
+Depends: libxp6 (= 4.3.0.dfsg.1-7), x-dev, xlibs-static-dev, libxext-dev, libx11-dev, libc6-dev | libc-dev
+Conflicts: xlibs-dev (<< 4.3.0)
+Description: X Window System printing extension library development files
+ Header files and a static version of the Xp library are provided by this
+ package.
+ .
+ See the libxp6 package for further information.
+
+Package: libtagcoll0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 568
+Maintainer: Enrico Zini <enrico@debian.org>
+Architecture: i386
+Source: libtagcoll
+Version: 0.99.1-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1)
+Description: Functions used to manipulate tagged collections
+ Tagged collections are collections of items tagged with multiple categories.
+ libtagcoll provides general infrastructure to handle tagged collection data,
+ plus various kind of tagged collection manipulation functions:
+ .
+ * apply various kinds of transformations to the collection;
+ * generate and apply tag patches;
+ * discover and show implicit hierarchical relationships between
+ tags;
+ * organize the collection in an intuitively navigable hierarchy.
+
+Package: dovecot-common
+Status: install ok installed
+Priority: optional
+Section: mail
+Installed-Size: 500
+Maintainer: Jaldhar H. Vyas <jaldhar@debian.org>
+Architecture: i386
+Source: dovecot
+Version: 0.99.11-2
+Replaces: dovecot
+Depends: libc6 (>= 2.3.2.ds1-4), libldap2 (>= 2.1.17-1), libmysqlclient10, libpam0g (>= 0.76), libpq3 (>= 7.4), libssl0.9.7, zlib1g (>= 1:1.2.1), libpam-runtime (>= 0.76-13.1), openssl
+Conffiles:
+ /etc/dovecot-ldap.conf c56e1580610e921aea1da1f6c9ae49ed
+ /etc/dovecot.conf dd546e61f11fdfae2070ba1c0beeac1c
+ /etc/dovecot-pgsql.conf 16e05faa05d27d1c643ae20b991247f9
+ /etc/dovecot-mysql.conf 3d39a065adcbd3351610c056a794f2f7
+ /etc/pam.d/dovecot 788128882dc95f31f2f979d700603f19
+ /etc/init.d/dovecot db385459c62d943e201f20494d9e6a99
+Description: A secure mail server that supports mbox and maildir mailboxes
+ Dovecot is a mail server whose major goals are security and extreme
+ reliability. It tries very hard to handle all error conditions and verify
+ that all data is valid, making it nearly impossible to crash. It should
+ also be pretty fast, extensible, and portable.
+ .
+ This package contains the files used by both the dovecot IMAP and POP3
+ servers.
+
+Package: perl-modules
+Status: install ok installed
+Priority: standard
+Section: interpreters
+Installed-Size: 10724
+Maintainer: Brendan O'Dea <bod@debian.org>
+Architecture: all
+Source: perl
+Version: 5.8.4-2.2
+Replaces: libpod-parser-perl, libansicolor-perl, libfile-temp-perl, libnet-perl, libattribute-handlers-perl, libcgi-pm-perl, libi18n-langtags-perl, liblocale-maketext-perl, libmath-bigint-perl, libnet-ping-perl, libtest-harness-perl, libtest-simple-perl, liblocale-codes-perl
+Provides: libpod-parser-perl, libansicolor-perl, libfile-temp-perl, libnet-perl, libattribute-handlers-perl, libcgi-pm-perl, libi18n-langtags-perl, liblocale-maketext-perl, libmath-bigint-perl, libnet-ping-perl, libtest-harness-perl, libtest-simple-perl, liblocale-codes-perl
+Depends: perl (>= 5.8.4-1)
+Conflicts: libpod-parser-perl (<< 1.14-1), libansicolor-perl (<< 1.08-1), libfile-temp-perl (<< 0.14-1), libnet-perl (<< 1:1.17-1), libattribute-handlers-perl (<< 0.78-1), libcgi-pm-perl (<< 3.04-1), libi18n-langtags-perl (<< 0.29-1), liblocale-maketext-perl (<< 1.08-1), libmath-bigint-perl (<< 1.70-1), libnet-ping-perl (<< 2.31-1), libtest-harness-perl (<< 2.40-1), libtest-simple-perl (<< 0.47-1), liblocale-codes-perl (<< 2.06.1-1)
+Description: Core Perl modules.
+ Architecture independent Perl modules. These modules are part of Perl and
+ required if the `perl' package is installed.
+
+Package: bsdutils
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 156
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Source: util-linux (2.12-7)
+Version: 1:2.12-7
+Pre-Depends: libc6 (>= 2.3.2.ds1-4)
+Recommends: bsdmainutils
+Description: Basic utilities from 4.4BSD-Lite
+ This package contains the bare minimum number of BSD utilities needed
+ to boot a Debian system. You should probably also install
+ bsdmainutils to get the remaining standard BSD utilities.
+ .
+ Included are: logger, renice, replay, script, wall
+
+Package: xbase-clients
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 5068
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xbase (<< 3.3.2.3a-2), xf86setup (<< 3.3.2.3a-9), xserver-common (<< 4.0), xutils (<< 4.3.0.dfsg.1-7), xmodmap, xcontrib, xpm4g-dev, xpm-bin, xsm
+Provides: xmodmap, xcontrib, xpm-bin, xsm
+Depends: cpp, xlibs, xlibs-data, libc6 (>= 2.3.2.ds1-4), libdps1 (>> 4.1.0), libexpat1 (>= 1.95.6), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libncurses5 (>= 5.4-1), libpng12-0 (>= 1.2.5.0-4), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libxaw7 (>> 4.1.0), libxcursor1 (>> 1.1.2), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxi6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxmuu1 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), libxrandr2 | xlibs (>> 4.3.0), libxrender1, libxt6 | xlibs (>> 4.1.0), libxtrap6 | xlibs (>> 4.2.0), libxtst6 | xlibs (>> 4.1.0), libxv1, xlibmesa-gl | libgl1, xlibmesa-glu | libglu1, zlib1g (>= 1:1.2.1)
+Conflicts: xbase (<< 3.3.2.3a-2), xserver-common (<< 3.3.2.3a-9), xmodmap, xaw-wrappers (<< 0.90), xfonts-100dpi (<< 3.3.3.1-3), xfonts-75dpi (<< 3.3.3.1-3), xfonts-base (<< 3.3.3.1-3), xfonts-cyrillic (<< 3.3.3.1-3), xfonts-scalable (<< 3.3.3.1-3), xfnt100 (<= 3.3.2.3a-1), xfnt75 (<= 3.3.2.3a-1), xfntbase (<= 3.3.2.3a-1), xfntcyr (<= 3.3.2.3a-1), xfntscl (<= 3.3.2.3a-1), xdm (<< 4.0), xsm, xcontrib, xpm4g-dev, xpm-bin, xlibs (<< 4.3.0), cpp-3.3 (<< 1:3.3.3-0pre1)
+Conffiles:
+ /etc/X11/Xresources/xbase-clients 1d4a1ad0c225d7ca06f903d0973a59bf
+ /etc/X11/app-defaults/Beforelight 2a5c3b62bb133514dac3692214b6eedb
+ /etc/X11/app-defaults/Bitmap 0067cf7d63c70642d9c6f18b04008b92
+ /etc/X11/app-defaults/Bitmap-color ee00e4e0e4f2170253d88aa0e839dbb8
+ /etc/X11/app-defaults/Clock-color b4ba6ae900e0e488e4b030f14c6fe656
+ /etc/X11/app-defaults/Editres f25b32cc6efe5e12cbbd11826cb6a2f0
+ /etc/X11/app-defaults/Editres-color 81eea0a93b11517de99f2d9b8b838a74
+ /etc/X11/app-defaults/Viewres 4f77da598593ff07cda9d2d147a07772
+ /etc/X11/app-defaults/XCalc 96b856eba33b6ca6f3797b4ee9e72cca
+ /etc/X11/app-defaults/XCalc-color 9174b688798496dfe98feb050e527fa4
+ /etc/X11/app-defaults/XClipboard 18ebd8e152da9203e9e34e88dad98d97
+ /etc/X11/app-defaults/XClock 812dfcc6f6d83e2ae9da809c3bf11c67
+ /etc/X11/app-defaults/XConsole ea6d9663b783255108393f47ee66f0b2
+ /etc/X11/app-defaults/XF86Cfg 4f92609a2fbbace6475abb247f647c54
+ /etc/X11/app-defaults/XFontSel bacf71f7f919c1c9136e943d3b301ed7
+ /etc/X11/app-defaults/XLoad 3ea554c7be110102e42e25d3d83c4134
+ /etc/X11/app-defaults/XLogo 1c43090f9cef2ed23c23beb4ac892d07
+ /etc/X11/app-defaults/XLogo-color 439375bf8e3b87f46eebf35f55a8dbb5
+ /etc/X11/app-defaults/XSm 34f161c4cba12ff40099e12b40e511d3
+ /etc/X11/app-defaults/Xditview 49d35244a61618b60f17d3400f64a81e
+ /etc/X11/app-defaults/Xditview-chrtr 98a562569a7db396c9a0d2e6d414067e
+ /etc/X11/app-defaults/Xedit e0a53585631597c326adacce4149ff44
+ /etc/X11/app-defaults/Xedit-color 0426cafe1bacd16be185b5d856471920
+ /etc/X11/app-defaults/Xfd 908aa8adbd74096d9d5e5e426d50f05f
+ /etc/X11/app-defaults/Xgc 744adc578acb239541e378eb16e337f7
+ /etc/X11/app-defaults/Xmag 405f590dd6498c6fdeda499801092faa
+ /etc/X11/app-defaults/Xman 5780075461ce50bb177ad51394d5e72c
+ /etc/X11/app-defaults/Xmessage eed84b35dde8b18e7dcfc80e75c1da67
+ /etc/X11/app-defaults/Xmessage-color 021a99cd177b6d610b427bee5a532643
+ /etc/X11/app-defaults/Xvidtune debadfab2612fad48f356932ea2cbe75
+ /etc/X11/xinit/xinitrc 576e15ba0177df3fa8cae20926f79301
+ /etc/X11/xinit/xserverrc 2a2599740e52af3e67cfbe0dd64a4d67
+ /etc/X11/xsm/system.xsm 2f4e2377a2862ec6bfc9b9dc8cf1172d
+Description: miscellaneous X clients
+ An X client is a program that interfaces with an X server (almost always via
+ the X libraries), and thus with some input and output hardware like a
+ graphics card, monitor, keyboard, and pointing device (such as a mouse).
+ .
+ This package provides a miscellaneous assortment of several dozen X clients
+ that ship with the X Window System, including:
+ - startx and xinit, which initialize X sessions from the command line;
+ - xauth, a tool for controlling access to the X session;
+ - xedit, a text editor;
+ - xbiff, a tool which tells you when you have new email;
+ - xcalc, a scientific calculator desktop accessory;
+ - xclipboard, a tool to manage cut-and-pasted text selections;
+ - xcutsel, which exchanges selection and cut buffer contents;
+ - xconsole, which monitors system console messages;
+ - xditview, a viewer for ditroff output;
+ - xeyes, a demo program in which a pair of eyes track the pointer;
+ - xfd, a tool that displays all the glyphs in a given X font;
+ - xfontsel, a tool for browsing and selecting X fonts;
+ - xhost, a very dangerous program that you should never use;
+ - xkill, a tool for terminating misbehaving X clients;
+ - xload, a monitor for the system load average;
+ - xlogo, a demo program that displays the X logo;
+ - xmag, which magnifies parts of the X screen;
+ - xman, a manual page browser;
+ - xmessage, a tool to display message or dialog boxes;
+ - xrandr, a command-line interface to the RandR extension;
+ - xrefresh, a tool that forces a redraw of the X screen;
+ - xsetroot, a tool for tailoring the appearance of the root window;
+ - xtrapchar, xtrapin, xtrapinfo, xtrapout, xtrapproto, xtrapreset, and
+ xtrapstats, a group of sample clients that use the XTrap extension;
+ - xvidtune, a tool for customizing X server modelines for your monitor;
+ - xwd, a utility for taking window dumps ("screenshots") of the X session;
+ - xwud, a viewer for window dumps created by xwd;
+ - oclock and xclock, graphical clocks;
+ - beforelight, a screen saver;
+ - atobm, a converter from ASCII to X bitmap (.xbm) files;
+ - bitmap, a monochrome bitmap file editor;
+ - bmtoa, a tool that converts a monochrome bitmap to ASCII text;
+ - cxpm and sxpm, tools for checking and viewing X pixmap files;
+ - dpsexec, a Display PostScript program that allows the user to interact
+ directly with the PostScript interpreter through a command interface
+ - dpsinfo, a utility for displaying information about the DPS extension
+ present in an X server or provided by a client-side DPS agent
+ - glxgears, a GLX demo that draws three rotating gears, and prints
+ framerate information to standard output
+ - iceauth, a tool for manipulating ICE protocol authorization records;
+ - texteroids, a spinning text demo for the DPS extension
+ - xset, a tool for setting miscellaneous X server parameters;
+ - xmodmap, a utility for modifying keymaps and pointer button mappings in X;
+ - xsetmode and xsetpointer, tools for handling X Input devices;
+ - setxkbmap, xkbbell, xkbcomp, xkbevd, xkbprint, xkbvleds, and xkbwatch,
+ tools for managing the X Keyboard Extension (XKB);
+ - xsm, a session manager for X sessions;
+ - smproxy, a session manager proxy for X clients that do not use the X
+ session manager protocol;
+ - xgamma, a tool for querying and setting a monitor's gamma correction;
+ - appres, editres, listres, viewres, and xrdb, which query and update the
+ X resource database;
+ - Xmark, x11perf, and x11perfcomp, tools for benchmarking graphical
+ operations under the X Window System;
+ - fstobdf, which retrieves a font in BDF format from an X font server;
+ - xcmsdb, a device color characteristic utility for the X Color Management
+ System;
+ - xstdcmap, a utility to selectively define standard colormap properties;
+ - xev, an X event displayer;
+ - xfindproxy, a tool to locate X proxy services;
+ - xlsatoms, which lists interned atoms defined on an X server;
+ - xlsclients, which lists client applications running on an X display;
+ - xlsfonts, a server font list displayer;
+ - xprop, a property displayer for X;
+ - xdpyinfo, a display information utility for X;
+ - xwininfo, a window information utility for X;
+ - glxinfo, a GLX extension information utility for X;
+ - xvinfo, an Xv extension information utility for X;
+ - ico, an X graphics demo using an animated polyhedron;
+ - dga, a demo program for the DGA extension; and
+ - xgc, an (unfinished) X graphics demo program.
+ .
+ xbase-clients also -- except on the s390 architecture -- contains the XFree86
+ X server configuration programs xf86cfg and xf86config, but in general the
+ Debconf interface to the xserver-xfree86 package should be used instead of
+ these tools.
+ .
+ The bitmap, editres, viewres, xbiff, xcalc, xconsole, xditview, xedit,
+ xf86cfg, xman, xsetroot, and xsm programs use bitmap images provided by the
+ xlibs-data package. xkbcomp uses the XKEYBOARD (XKB) extension configuration
+ data provided by the xlibs package.
+ .
+ xrdb requires the C preprocessor (cpp) to process X resource files. The GNU
+ C preprocessor's "-traditional" support misbehaves in early releases of the
+ GCC 3.3 series; therefore, this package conflicts with those versions.
+ .
+ (Strictly speaking, atobm does not depend on any X libraries, but it shares a
+ manual page with bitmap and bmtoa, and so is grouped with them in this
+ package.)
+
+Package: libwine
+Status: install ok installed
+Priority: optional
+Section: otherosfs
+Installed-Size: 28916
+Maintainer: Ove Kaaven <ovek@arcticnet.no>
+Architecture: i386
+Source: wine
+Version: 0.0.20040716-1.2
+Replaces: libwine0.0.971116, wine (<< 0.0.20040213)
+Depends: debconf (>= 1.2.0), freeglut3, libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libjpeg62, libncurses5 (>= 5.4-1), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libungif4g (>= 4.1.3), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxi6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxv1, xlibmesa-glu | libglu1, xlibmesa3-gl | libgl1, libfreetype6
+Suggests: wine-doc, libwine-print, libicu21c102
+Conflicts: libwine0.0.971116
+Description: Windows Emulator (Library)
+ This is an ALPHA release of Wine, the MS-Windows emulator. This is
+ still a developers release and many applications may still not work.
+ .
+ This package consists of the library that implements the windows API.
+ .
+ Wine is often updated.
+
+Package: imlib1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 240
+Maintainer: Steve M. Robbins <smr@debian.org>
+Architecture: i386
+Source: imlib+png2
+Version: 1.9.14-16
+Replaces: imlib-nonfree1, libimlib1, libimlib-nonfree1
+Provides: imlib, libimlib1
+Depends: imlib-base (>= 1.9.14-1), libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libjpeg62, libpng10-0 (>= 1.0.15-4), libsm6 | xlibs (>> 4.1.0), libtiff4, libungif4g (>= 4.1.3), libxext6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Suggests: imlib-progs
+Conflicts: imlib-nonfree1, libimlib1, libimlib-nonfree1
+Description: imaging library for X and X11 (using libpng2)
+ Imlib is a low-level Xlib interface for X programmers. It allows easier
+ access to many graphics formats and can write to them as well.
+ .
+ This version is linked to libpng2.
+
+Package: kandy
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 348
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdepim1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: KDE mobile phone utility
+ At the moment Kandy is more or less a terminal program with some special
+ features to store commands and their parameters, but is also has a simple GUI
+ to access the phone book of a mobile phone and it is able to save this phone
+ book to the KDE address book.
+ .
+ Kandy is aimed at mobile phones with integrated (GSM) modems.
+ .
+ This package is part of the official KDE pim module.
+
+Package: maint-guide
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 400
+Maintainer: Josip Rodin <joy-packages@debian.org>
+Architecture: all
+Version: 1.2.2
+Suggests: doc-base, dh-make, devscripts, fakeroot, lintian, dupload | dput, debian-policy, developers-reference
+Description: Debian New Maintainers' Guide
+ This package contains the Debian New Maintainers' Guide.
+ .
+ This document tries to describe building of a Debian package to the
+ common Debian user, and wannabe developer. It uses pretty common
+ language, and it's well covered with working examples.
+ .
+ The document contains these chapters:
+ * 1 Getting started The Right Way
+ * 2 First steps
+ * 3 Modifying the source
+ * 4 Required stuff under debian/
+ * 5 Other files under debian/
+ * 6 Building the package
+ * 7 Checking the package for errors
+ * 8 Uploading the package
+ * 9 Updating the package
+ * 10 Where to ask for help
+
+Package: purity-off
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 232
+Maintainer: Marco d'Itri <md@linux.it>
+Version: 0-3
+Depends: purity
+Description: Sex related purity tests
+ This package installs the sex related purity tests not included in the
+ purity package.
+ .
+ If you are offended by sex or by unusual sexual activities please do
+ not install this package.
+
+Package: kfloppy
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 144
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeutils
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), dosfstools
+Suggests: khelpcenter
+Description: KDE floppy formatter
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ KFloppy formats disks and puts a DOS or ext2fs filesystem on them.
+ .
+ This package is part of the official KDE utils module.
+
+Package: libpt-1.6.3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 3132
+Maintainer: Debian VoIP Team <pkg-voip-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Source: pwlib
+Version: 1.6.6.4-4
+Replaces: libpt-1.5.2
+Depends: libc6 (>= 2.3.2.ds1-4), libexpat1 (>= 1.95.6), libgcc1 (>= 1:3.4.1-3), libldap2 (>= 2.1.17-1), libsasl2 (>= 2.1.19), libssl0.9.7, libstdc++5 (>= 1:3.3.4-1)
+Conflicts: gnomemeeting (<= 1.0.2-4), libopenh323-1.13.2 (<= 1.13.5-2), gnugk (<= 1:2.0.8-2), asterisk (<= 1:0.9.1+1.0RC1-4)
+Description: Portable Windows Library
+ This package contains the shared version of the library PWLib, which is
+ a moderately large class library that has its genesis many years ago as
+ a method to produce applications to run on both Microsoft Windows and
+ Unix X-Window systems.
+ .
+ For more information on PWLib visit the development homepage
+ http://www.openh323.org/
+
+Package: nighthawk
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 1288
+Maintainer: Adrian Bridgett <bridgett@debian.org>
+Version: 1.0-15
+Config-Version: 1.0-15
+Depends: libc6 (>= 2.3.1-1), libgcc1 (>= 1:3.3-0pre9), libstdc++5 (>= 1:3.3-0pre9), xlibs (>> 4.1.0)
+Conflicts: suidmanager (<< 0.50)
+Description: An improved version of Paradroid - a strategic shoot-em up
+ You are a droid out to save the universe. To do this, you must do more
+ than simply blasting everything in sight - you have to transfer to better
+ droids in order to conquer more advanced droids, and go through walls to
+ reach parts other droids cannot reach.
+
+Package: libc5-altdev
+Status: purge ok not-installed
+Priority: extra
+Section: oldlibs
+
+Package: hicolor-icon-theme
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 32
+Maintainer: Ross Burton <ross@debian.org>
+Architecture: all
+Version: 0.5-3
+Replaces: kdelibs-data (<< 4:3.2.2-2)
+Description: Default fallback theme for Freedesktop icon themes
+ This is the default fallback theme used by implementations of the
+ Freedesktop.org Icon Theme specification.
+
+Package: libpth2
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 149
+Maintainer: Luis Bustamante <luferbu@fluidsignal.com>
+Source: pth
+Version: 2.0.0-1
+Config-Version: 2.0.0-1
+Replaces: libpth-dbg (<< 2.0.0-1), libpth-prof (<< 2.0.0-1), libpth-dev (<< 2.0.0-1), libpth14
+Depends: libc6 (>= 2.3.1-1)
+Conflicts: libpth-dbg (<< 2.0.0-1), libpth-prof (<< 2.0.0-1), libpth-dev (<< 2.0.0-1), libpth14
+Description: The GNU Portable Threads
+ Pth is a very portable POSIX/ANSI-C based library for Unix
+ platforms which provides non-preemptive priority-based
+ scheduling for multiple threads of execution ("multithreading")
+ inside server applications. All threads run in the same address
+ space of the server application, but each thread has its own
+ individual program-counter, run-time stack, signal mask and
+ errno variable.
+ .
+ More informations can be found at the libpth web site
+ http://www.gnu.org/software/pth/ .
+
+Package: ksysv
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 456
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeadmin
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE SysV-style init configuration editor
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This program allows you to edit your start and stop scripts using a
+ drag and drop GUI.
+ .
+ This package is part of the official KDE admin module.
+
+Package: libident
+Status: purge ok not-installed
+Priority: important
+Section: libs
+
+Package: xdelta
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 120
+Maintainer: LaMont Jones <lamont@debian.org>
+Version: 1.1.3-6
+Depends: libc6 (>= 2.3.1-1), libglib1.2 (>= 1.2.0), libxdelta2 (>= 1.1.3), zlib1g (>= 1:1.1.4)
+Description: A diff utility which works with binary files
+ Xdelta is an application program designed to compute changes between
+ files. These changes (deltas) are similar to the output of the
+ "diff" program in that they may be used to store and transmit only the
+ changes between files. However, unlike diff, the output of Xdelta is
+ not expressed in a human-readable format--Xdelta can also apply
+ these deltas to a copy of the original file. Xdelta uses a fast,
+ linear algorithm and performs well on both binary and text files.
+
+Package: dvd+rw-tools
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 308
+Maintainer: Keita Maehara <maehara@debian.org>
+Architecture: i386
+Version: 5.21.4.10.8-1
+Replaces: dvdplusrw
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1), mkisofs
+Conflicts: dvdplusrw (<= 20020220.1)
+Description: DVD+-RW/R tools
+ This package includes a format utility for DVD+-RW media, a frontend
+ to mkisofs for burning DVD+-RW/R and some associated tools.
+
+Package: libexpat1-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 388
+Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs@lists.alioth.debian.org>
+Source: expat
+Version: 1.95.6-8
+Provides: libexpat-dev
+Depends: libexpat1 (= 1.95.6-8), libc6-dev | libc-dev
+Conflicts: libexpat-dev
+Description: XML parsing C library - development kit
+ This package contains the header file and development libraries of
+ expat, the C library for parsing XML. Expat is a stream oriented XML
+ parser. This means that you register handlers with the parser prior
+ to starting the parse. These handlers are called when the parser
+ discovers the associated structures in the document being parsed. A
+ start tag is an example of the kind of structures for which you may
+ register handlers.
+
+Package: libgdbm-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 172
+Maintainer: James Troup <james@nocrew.org>
+Architecture: i386
+Source: gdbm
+Version: 1.8.3-2
+Replaces: libgdbmg1-dev
+Depends: libc6-dev | libc-dev, libgdbm3 (= 1.8.3-2)
+Conflicts: libgdbm1-dev, libgdbmg1-dev
+Description: GNU dbm database routines (development files)
+ GNU dbm ('gdbm') is a library of database functions that use extendible
+ hashing and works similarly to the standard UNIX 'dbm' functions. This
+ package includes development support files.
+
+Package: knotes
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 1740
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Replaces: kontact (<< 4:3.2.92)
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkcal2 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0)
+Description: KDE sticky notes
+ KNotes is a program that lets you write sticky notes. The notes are saved
+ automatically when you exit the program, and they display when you open the
+ program. The program supports printing and mailing your notes.
+ .
+ This package is part of the official KDE pim module.
+
+Package: kernel-image-2.6.1-mm5
+Status: deinstall ok config-files
+Priority: optional
+Section: base
+Installed-Size: 8348
+Maintainer: Yenar Calentaure <yenar@host.sk>
+Source: kernel-source-2.6.1-mm5
+Version: 1.0-lorien-1
+Config-Version: 1.0-lorien-1
+Provides: kernel-image, kernel-image-2.6
+Depends: coreutils | fileutils (>= 4.0)
+Suggests: lilo (>= 19.1) | grub, fdutils, kernel-doc-2.6.1-mm5 | kernel-source-2.6.1-mm5
+Description: Linux kernel binary image for version 2.6.1-mm5.
+ This package contains the Linux kernel image for version 2.6.1-mm5,
+ the corresponding System.map file, and the modules built by the
+ packager. It also contains scripts that try to ensure that the
+ system is not left in a unbootable state after an update.
+ .
+ If you wish to update a bootdisk, or to use a bootloader to make
+ installing and using the image easier, we suggest you install the latest
+ fdutils (for formatting a floppy to be used as boot disk), and LILO, for a
+ powerful bootloader. Of course, both these are optional.
+ .
+ Kernel image packages are generally produced using kernel-package,
+ and it is suggested that you install that package if you wish to
+ create a custom kernel from the sources. Please look at kernel-img.conf(5),
+ and /usr/share/doc/kernel-package/README.gz from the package kernel-package
+ for details on how to tailor the installation of this or any other kernel
+ image package
+
+Package: libcurses-ruby
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 32
+Maintainer: Fumitoshi UKAI <ukai@debian.or.jp>
+Architecture: all
+Source: ruby-defaults
+Version: 1.8.1-8
+Depends: libcurses-ruby1.8
+Description: Curses interface for Ruby
+ This extended library adds the interface for curses to Ruby.
+ .
+ This package is a dependency package, which depends on Debian's default
+ Ruby version (currently 1.8.x).
+
+Package: unace
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 456
+Maintainer: Christian Marillat <marillat@debian.org>
+Architecture: i386
+Version: 2.20-0.0
+Depends: libc6
+Description: uncompress .ace files
+ Program for uncompressing for .ace files
+
+Package: xpdf
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 9
+Maintainer: Hamish Moffatt <hamish@debian.org>
+Architecture: all
+Version: 3.00-8
+Replaces: xpdf-i (<= 0.90-8)
+Depends: xpdf-reader (= 3.00-8), xpdf-utils (= 3.00-8), xpdf-common (= 3.00-8)
+Conflicts: xpdf-i (<= 0.90-8)
+Description: Portable Document Format (PDF) suite
+ xpdf is a suite of tools for Portable Document Format (PDF) files. (These are
+ sometimes called 'Acrobat' files after the name of Adobe's PDF software.)
+ .
+ The tools include xpdf, a PDF viewer (in the package xpdf-reader),
+ and PDF converters (including to/from PostScript) (in the package
+ xpdf-utils).
+ .
+ This package is intended for compatibility with previous versions of
+ this package only. You can safely remove it from your system.
+
+Package: aspell-bin
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 220
+Maintainer: Brian Nelson <pyro@debian.org>
+Architecture: i386
+Source: aspell
+Version: 0.50.5-3
+Replaces: libpspell4, aspell (<< 0.50)
+Depends: libaspell15 (>= 0.50.5), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libncurses5 (>= 5.4-1), libstdc++5 (>= 1:3.3.3-1)
+Suggests: aspell-doc, spellutils
+Conflicts: libpspell4
+Description: GNU Aspell standalone spell-check utilities
+ GNU Aspell is a spell-checker which can be used either as a standalone
+ application or embedded in other programs. Its main feature is that it
+ does a much better job of suggesting possible spellings than just about
+ any other spell-checker available for the English language, including
+ Ispell and Microsoft Word. It also has many other technical
+ enhancements over Ispell such as using shared memory for dictionaries
+ and intelligently handling personal dictionaries when more than one
+ Aspell process is open at once.
+ .
+ GNU Aspell is designed to be a drop-in replacement for Ispell.
+
+Package: libxext-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 748
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs-dev (<< 4.3.0)
+Depends: libxext6 (= 4.3.0.dfsg.1-7), x-dev, libc6-dev | libc-dev
+Conflicts: xlibs-dev (<< 4.3.0)
+Description: X Window System miscellaneous extension library development files
+ Header files and a static version of the Xext library are provided by this
+ package.
+ .
+ See the libxext6 package for further information.
+
+Package: libgwrapguile-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 96
+Maintainer: Debian QA Group <packages@qa.debian.org>
+Architecture: i386
+Source: gwrapguile
+Version: 1.3.4-12
+Replaces: libgwrapguile1 (<< 1.3.4-6)
+Depends: libgwrapguile1 (= 1.3.4-12)
+Description: Development package for libgwrapguile1
+ This file provides header files and related support for developing
+ packages that use libgwrapguile1 (aka g-wrap).
+
+Package: timidity
+Status: deinstall ok config-files
+Priority: optional
+Section: sound
+Installed-Size: 912
+Maintainer: Martin Mitchell <martin@debian.org>
+Version: 2.10.4-2.2
+Config-Version: 2.10.4-2.2
+Depends: lesstif1, libasound1 (>= 0.5.5), libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.2.4-4), libesd0 (>= 0.2.23-1) | libesd-alsa0 (>= 0.2.23-1), libglib1.2 (>= 1.2.0), libgtk1.2 (>= 1.2.10-4), libncurses5 (>= 5.2.20020112a-1), libvorbis0 (>= 1.0rc3-1), libxaw6 (>> 4.1.0), slang1 (>> 1.4.4-7.1), xlibs (>> 4.1.0)
+Suggests: timidity-patches
+Conffiles:
+ /etc/timidity.cfg 18e98582dd307d244441d9599ff3bd89
+Description: Software-only MIDI sequencer.
+ A software-only MIDI sequencer. Uses GUS-compatible MIDI patch files
+ to either play MIDI scores in real time or to convert them into .wav
+ files. Requires no hardware specific MIDI support.
+
+Package: phpgroupware-preferences
+Status: purge ok not-installed
+Priority: optional
+Section: web
+
+Package: autobook
+Status: purge ok not-installed
+Priority: optional
+Section: doc
+Architecture: all
+
+Package: debhelper
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 956
+Maintainer: Joey Hess <joeyh@debian.org>
+Architecture: all
+Version: 4.2.20
+Depends: perl (>= 5.6.0-16), coreutils | fileutils (>= 4.0-2.1), file (>= 3.23-1), dpkg-dev (>= 1.7.0), html2text, debconf-utils (>= 1.1.1), binutils, po-debconf
+Suggests: dh-make
+Conflicts: dpkg-cross (<< 1.18)
+Description: helper programs for debian/rules
+ A collection of programs that can be used in a debian/rules file to
+ automate common tasks related to building debian packages. Programs
+ are included to install various files into your package, compress
+ files, fix file permissions, integrate your package with the debian
+ menu system, debconf, doc-base, etc. Most debian packages use debhelper
+ as part of their build process.
+
+Package: php4-pgsql
+Status: deinstall ok config-files
+Priority: optional
+Section: web
+Installed-Size: 112
+Maintainer: Steve Langasek <vorlon@debian.org>
+Architecture: i386
+Version: 3:4.3.3-2
+Config-Version: 3:4.3.3-2
+Replaces: php4-cgi-pgsql
+Depends: libc6 (>= 2.3.2.ds1-4), libpq3 (>= 7.4), phpapi-20020918, debconf (>= 0.5) | debconf-2.0
+Description: PostgreSQL module for php4
+ This package provides a module for PostgreSQL database connections
+ directly from PHP scripts.
+ .
+ PHP4 is an HTML-embedded scripting language. Much of its syntax is borrowed
+ from C, Java and Perl with a couple of unique PHP-specific features thrown
+ in. The goal of the language is to allow web developers to write
+ dynamically generated pages quickly.
+
+Package: sl
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 132
+Maintainer: Kenshi Muto <kmuto@debian.org>
+Architecture: i386
+Version: 3.03-14
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1)
+Description: Correct you if you type `sl' by mistake
+ .
+ Sl is a program that can display animations aimed to correct you
+ if you type 'sl' by mistake.
+
+Package: sp
+Status: purge ok not-installed
+Priority: optional
+Section: text
+
+Package: ssl-cert
+Status: deinstall ok config-files
+Priority: optional
+Section: utils
+Installed-Size: 88
+Maintainer: Debian Apache Maintainers <debian-apache@lists.debian.org>
+Version: 1.0-7
+Config-Version: 1.0-7
+Depends: debconf (>= 0.5)
+Description: Simple debconf wrapper for openssl
+ This is a package to enable unattended installs of software that
+ need to create ssl certificates.
+ Basically, it's just a wrapper for openssl req that feeds it the correct
+ user variables.
+
+Package: libqt3-mt
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 7268
+Maintainer: Martin Loschwitz <madkiss@madkiss.org>
+Source: qt-x11-free
+Version: 2:3.1.1+cvs.20021220-1
+Config-Version: 2:3.1.1+cvs.20021220-1
+Replaces: qt3-tools (<< 2:3.0.2-20020306-1)
+Depends: libc6 (>= 2.2.4-4), libfontconfig1, libfreetype6 (>= 2.1.1-1), libjpeg62, libmng1 (>= 1.0.3-1), libpng2 (>= 1.0.12), libstdc++2.10-glibc2.2 (>= 1:2.95.4-0.010810), libxft2, nas-lib, xlibmesa3 | libgl1, xlibs (>> 4.1.0), xrender1, zlib1g (>= 1:1.1.4)
+Suggests: libqt3-mt-psql, libqt3-mt-mysql, libqt3-mt-odbc
+Description: Qt GUI Library (Threaded runtime version)
+ This is the Trolltech Qt library, version 3. It's necessary for
+ applications that link against the libqt, e.g. all KDE3 applications.
+
+Package: dpkg-dev
+Status: install ok installed
+Priority: standard
+Section: utils
+Installed-Size: 548
+Origin: debian
+Maintainer: Dpkg Development <debian-dpkg@lists.debian.org>
+Bugs: debbugs://bugs.debian.org
+Architecture: all
+Source: dpkg
+Version: 1.10.23
+Replaces: dpkgname, dpkg (<< 1.4.1.8), dpkg-doc-ja
+Depends: perl5, perl-modules, cpio (>= 2.4.2-2), patch (>= 2.2-1), make, binutils
+Recommends: c-compiler
+Suggests: gnupg, debian-keyring
+Conflicts: dpkgname
+Conffiles:
+ /etc/dpkg/shlibs.default a045abfdbc336e4523424e73f4fa40d0
+ /etc/dpkg/shlibs.override 10f58a7d103a09feeaee1b3dcffeca8c
+Description: Package building tools for Debian
+ This package contains the tools (including dpkg-source) required to
+ unpack, build and upload Debian source packages.
+ .
+ Most Debian source packages will require additional tools to build -
+ for example, most packages need the `make' and the C compiler `gcc'.
+
+Package: latex-xft-fonts
+Status: install ok installed
+Priority: extra
+Section: tex
+Installed-Size: 260
+Maintainer: Piotr Roszatycki <dexter@debian.org>
+Architecture: all
+Version: 0.1-4
+Depends: defoma
+Recommends: x-ttcidfont-conf, fontconfig
+Conffiles:
+ /etc/defoma/hints/latex-xft-fonts.hints be119fc57626ef8df8c322396af5c101
+Description: Xft-compatible versions of some LaTeX fonts
+ Some xft-compatible versions of LaTeX fonts for use with visual math
+ symbol display in LyX. It is useful primarily for the LyX Qt frontend.
+ It is also useful for Mozilla Firefox with MathML documents.
+
+Package: libxslt1-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 2048
+Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs@lists.alioth.debian.org>
+Architecture: i386
+Source: libxslt
+Version: 1.1.8-4
+Provides: libxslt-dev
+Depends: libxslt1.1 (= 1.1.8-4), libxml2-dev (>= 2.6.8), libc6-dev | libc-dev, pkg-config, libz-dev, libgcrypt11-dev
+Conflicts: libxslt-dev, libxslt0-dev
+Description: XSLT processing library - development kit
+ XSLT is an XML language for defining transformations of XML files from
+ XML to some other arbitrary format, such as XML, HTML, plain text, etc.
+ using standard XSLT stylesheets. libxslt is a C library which
+ implements XSLT.
+ .
+ This package contains the development files libxslt.
+
+Package: qt3-designer
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 7328
+Maintainer: Martin Loschwitz <madkiss@debian.org>
+Architecture: i386
+Source: qt-x11-free
+Version: 3:3.3.3-4
+Replaces: qt3-tools, libqt3-dev, libqt3-mt-dev
+Depends: libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxcursor1 (>> 1.1.2), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxrandr2 | xlibs (>> 4.3.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: qt3-dev-tools
+Suggests: qt3-assistant, qt3-doc
+Conflicts: qt-designer (<= 3:2.3.2-9), qt-designer-doc
+Description: Qt3 Designer
+ The Qt Designer is a GUI design program that interactively lets you
+ construct user interfaces for the Qt library. Additionally it lets you
+ create whole project and works together with the database drivers
+ provided by Qt to create applications with easy database accesss through
+ Qt. The resulting user interface files can then be converted to
+ C++ classes using the uic commandline utility which is usually done
+ automatically for the developer with a project management with qmake
+ or automake.
+
+Package: kbounce
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 516
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Replaces: kjezz
+Provides: kjezz
+Depends: kdelibs4 (>= 4:3.3.0), libarts1 (>= 1.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Conflicts: kjezz
+Description: Jezzball clone for the K Desktop Environment
+ This is a clone of the popular Jezzball game originally created by
+ Microsoft. Jezzball is one of the rare and simple games requiring
+ skill, timing, and patience in order to be successful. A ball begins
+ to bounce off of an area enclosed by four borders (like a
+ square). You must move your pointer to certain areas within the
+ square. Upon clicking, a new border is constructed at a relatively
+ quick pace. You can change the direction of the borders by 90 degrees
+ as well. Ultimately, you must force the ball to bounce around in a
+ smaller, and smaller area as time goes by without the ball ever
+ touching the borders as they are being constructed. If a ball touches
+ a certain part of the border as it is being built, the game is over.
+ After 75% of the original space has been blocked off from the moving
+ ball, you advance one level, and one more ball is added to the mix in
+ the following level.
+ .
+ This game was previously known as kjezz.
+
+Package: libsamplerate0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 172
+Maintainer: Anand Kumria <wildfire@progsoc.org>
+Architecture: i386
+Source: libsamplerate
+Version: 0.1.1-2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: audio rate conversion library
+ libsamplerate (aka Secret Rabbit Code) performs audio rate conversion.
+ .
+ This can be used to downsample and upsample audio from 4Hz up to 192kHz. You
+ can also define custom resample rates. An example application would be
+ converting a 44.1kHz sample rate used on CDs to the 48kHZ sample rate used
+ by DAT Devices.
+ .
+ libsamplerate provides a number of different interpolation algorithms and is
+ capable of time varying conversions and arbitary up and down sampling.
+ .
+ Further information is available at
+ <URL: http://www.mega-nerd.com/SRC/>
+
+Package: kdenetwork-kfile-plugins
+Status: purge ok not-installed
+Priority: optional
+Section: net
+
+Package: libtextwrap1
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 84
+Maintainer: Tomohiro KUBOTA <kubota@debian.org>
+Source: libtextwrap
+Version: 0.1-1
+Config-Version: 0.1-1
+Depends: libc6 (>= 2.3.2-1), libtextwrap1 (>> 0.01-0)
+Description: text-wrapping library with i18n - runtime
+ Text-wrapping (or line-folding) library for displaying a string on
+ the terminal. This supports i18n (internationalization), i.e,
+ automatic locale-encoding detection, multibyte encoding (such as
+ UTF-8, EUC-JP, and so on), fullwidth characters (occupying two
+ columns per one character, like CJK Ideogram), combining characters
+ (occupying zero columns per one character, like Thai and diacritical
+ marks), and languages which do not use whitespaces between words
+ (like Chinese and Japanese).
+
+Package: kernel-kbuild-2.6-1
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 1704
+Maintainer: Herbert Xu <herbert@debian.org>
+Architecture: i386
+Version: 2.6.5-1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Linux kernel 2.6 kbuild tools
+ This package provides kbuild tools for Linux kernel 2.6. It is used together
+ with the kernel-headers packages to build out-of-tree kernel modules.
+
+Package: libgtk1.2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1824
+Maintainer: Akira TAGOH <tagoh@debian.org>
+Architecture: i386
+Source: gtk+1.2
+Version: 1.2.10-17
+Replaces: libgtk1.1.5, libgtk1.1.6, libgtk1.1.9, libgtk1.1.11, libgtk1.1.12, libgtk1.1.13, libgtk1.1.14, libgtk1.1.15, libgtk1.1.16
+Depends: libgtk1.2-common (>= 1.2.10-17), libc6 (>= 2.3.2.ds1-4), libglib1.2 (>= 1.2.0), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxi6 | xlibs (>> 4.1.0)
+Pre-Depends: dpkg (>= 1.6.8)
+Conflicts: libgtk-dev (<< 1:1.0.2)
+Description: The GIMP Toolkit set of widgets for X
+ The GIMP Toolkit is a freely available set of widgets for X.
+ GTK is easy to use, and has been implemented in such projects as
+ The GNU Image Manipulation Program (The GIMP), GNOME, a GNU
+ desktop set of utilities for X, and gzilla, a GNU web-browser.
+
+Package: libc6-dev
+Status: install ok installed
+Priority: standard
+Section: devel
+Installed-Size: 8652
+Maintainer: GNU Libc Maintainers <debian-glibc@lists.debian.org>
+Architecture: i386
+Source: glibc
+Version: 2.3.2.ds1-16
+Replaces: man-db (<= 2.3.10-41), gettext (<= 0.10.26-1), ppp (<= 2.2.0f-24), libgdbmg1-dev (<= 1.7.3-24), ldso (<= 1.9.11-9), netkit-rpc, netbase (<< 4.0), kerberos4th-dev (<< 1.2.2-10)
+Provides: libc-dev
+Depends: libc6 (= 2.3.2.ds1-16), linux-kernel-headers
+Recommends: c-compiler
+Suggests: glibc-doc, manpages-dev
+Conflicts: libstdc++2.10-dev (<< 1:2.95.2-15), gcc-2.95 (<< 1:2.95.3-9), libpthread0-dev, libdl1-dev, libdb1-dev, libgdbm1-dev, libc6-dev (<< 2.0.110-1), locales (<< 2.1.3-5), libstdc++2.9-dev, netkit-rpc, libc-dev
+Description: GNU C Library: Development Libraries and Header Files
+ Contains the symlinks, headers, and object files needed to compile
+ and link programs which use the standard C library.
+
+Package: libsdl1.2debian-oss
+Status: deinstall ok config-files
+Priority: extra
+Section: libs
+Installed-Size: 448
+Maintainer: Debian SDL maintainers <mrd-sdl@debian.org>
+Source: libsdl1.2
+Version: 1.2.6-1
+Config-Version: 1.2.6-1
+Replaces: libsdl1.2-all, libsdl1.2-esd, libsdl1.2-oss, libsdl1.2-arts, libsdl1.2 (<< 1.2.1-1), libsdl1.2debian-all, libsdl1.2debian-esd, libsdl1.2debian-arts
+Provides: libsdl1.2-oss
+Depends: libc6 (>= 2.3.2-1), xlibs (>> 4.1.0)
+Conflicts: libsdl1.2-all, libsdl1.2-esd, libsdl1.2-oss, libsdl1.2-arts, libsdl1.2 (<< 1.2.1-1), libsdl1.2debian-all, libsdl1.2debian-esd, libsdl1.2debian-arts
+Description: Simple DirectMedia Layer (with X11 and OSS options)
+ SDL is a library that allows programs portable low level access to a video
+ framebuffer, audio output, mouse, and keyboard.
+ .
+ This version of SDL is compiled with X11 graphics and oss sound.
+
+Package: libssl0.9.7
+Status: install ok installed
+Priority: standard
+Section: libs
+Installed-Size: 4840
+Maintainer: Christoph Martin <christoph.martin@uni-mainz.de>
+Architecture: i386
+Source: openssl
+Version: 0.9.7d-5
+Depends: libc6 (>= 2.3.2.ds1-4), debconf (>= 0.5) | debconf-2.0
+Conflicts: ssleay (<< 0.9.2b), libssl, openssl (<< 0.9.6-2), libssl096-dev (<< 0.9.6-2)
+Description: SSL shared libraries
+ libssl and libcrypto shared libraries needed by programs like
+ apache-ssl, telnet-ssl and openssh.
+ .
+ It is part of the OpenSSL implementation of SSL.
+
+Package: nfs-common
+Status: install ok installed
+Priority: standard
+Section: net
+Installed-Size: 136
+Maintainer: Chip Salzenberg <chip@debian.org>
+Architecture: i386
+Source: nfs-utils
+Version: 1:1.0.6-3
+Replaces: nfs-client
+Provides: nfs-client
+Depends: portmap, debconf (>= 1.0), sysvinit (>= 2.80-1), libc6 (>= 2.3.2.ds1-4), libwrap0
+Conflicts: nfs-client
+Conffiles:
+ /etc/default/nfs-common 9409842759091e981d65a210e3e914cb
+ /etc/init.d/nfs-common 1a943afbda0736e4f19aa2a4ba88516a
+Description: NFS support files common to client and server
+ Use this package on any machine that does NFS either as client or
+ server. Programs included: lockd, statd, showmount, and nfsstat.
+ .
+ Upstream: SourceForge project "nfs", CVS module nfs-utils.
+
+Package: kdebase-bin
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 2640
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kcontrol (<< 4:3.3.0), kdebase (<< 4:3.0.0), kdebase-doc (<< 4:3.0.0), kdebase-libs (<< 4:3.0.0), kscreensaver (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpam0g (>= 0.76), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxtst6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), libpam-runtime (>= 0.76-14)
+Suggests: khelpcenter
+Conflicts: kdebase-libs (<< 4:3.0.0)
+Conffiles:
+ /etc/kde3/kxkb_groups 0a3d2d2cd5dc165b90a8aaef2ace17e5
+ /etc/pam.d/kcheckpass 752038e03e8aa9dd51dfe25be91bd04a
+ /etc/pam.d/kscreensaver 60118264330552bba58ee902afd7ad0b
+Description: KDE Base (binaries)
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This package contains miscellanous programs needed by other KDE
+ applications.
+ .
+ This package is part of the official KDE base module.
+
+Package: libssl0.9.6
+Status: deinstall ok config-files
+Priority: standard
+Section: libs
+Installed-Size: 4258
+Maintainer: Christoph Martin <christoph.martin@uni-mainz.de>
+Source: openssl096
+Version: 0.9.6l-1
+Config-Version: 0.9.6l-1
+Replaces: libssl, libssl096
+Provides: libssl096
+Depends: libc6 (>= 2.3.2-1)
+Conflicts: ssleay (<< 0.9.2b), libssl, openssl (<< 0.9.6-2), libssl096, libssl096-dev (<< 0.9.6-2)
+Description: SSL shared libraries (old version)
+ libssl and libcrypto shared libraries needed by programs like
+ apache-ssl, telnet-ssl and openssh.
+ .
+ It is part of the OpenSSL implementation of SSL.
+
+Package: xmms
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 6108
+Maintainer: Josip Rodin <joy-packages@debian.org>
+Version: 1.2.10-1
+Replaces: x11ampg, x11amp, xmms-vorbis, alsa-xmms
+Provides: mp3-decoder, x11ampg, x11amp, xmms-vorbis, alsa-xmms
+Depends: libc6 (>= 2.3.2.ds1-4), libglib1.2 (>= 1.2.0), libgtk1.2 (>= 1.2.10-4), xlibs (>> 4.1.0) | libice6, xlibs (>> 4.1.0) | libsm6, xlibs (>> 4.1.0) | libx11-6, xlibs (>> 4.1.0) | libxext6, xlibs (>> 4.1.0) | libxi6
+Recommends: libasound2 (>> 1.0.0), libaudiofile0 (>= 0.2.3-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libmikmod2 (>= 3.1.10), libogg0 (>= 1.1.0), libvorbis0a (>= 1.0.1), libvorbisfile3 (>= 1.0.1), xlibmesa3-gl | libgl1, zlib1g (>= 1:1.2.1)
+Suggests: unzip
+Conflicts: x11ampg, x11amp, xmms-vorbis, alsa-xmms
+Description: Versatile X audio player that looks like Winamp
+ X MultiMedia System is a player for various audio formats,
+ with a customizable interface based on X/GTK+.
+ .
+ It's able to read and play:
+ * Audio MPEG layer 1, 2, and 3 (with mpg123 plug-in),
+ * Ogg Vorbis files (with the Ogg Vorbis plug-in),
+ * CD Audio (with CDAudio plug-in), with CDDB support,
+ * WAV, RAW, AU (with internal wav plug-in and MikMod plug-in),
+ * MOD, XM, S3M, and other module formats (with MikMod plug-in),
+ * .cin files, id Software.
+ It has eSound, OSS, and disk writer support for outputting sound.
+ .
+ It looks almost the same as famous Winamp, and includes those neat
+ features like general purpose, visualization and effect plug-ins,
+ several of which come bundled, then spectrum analyzer, oscilloscope,
+ skins support, and of course, a playlist window.
+
+Package: kiten
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 672
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeedu
+Version: 4:3.2.3-2
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.4-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), edict, kanjidic
+Recommends: kdeedu-data (>= 4:3.2.3-2), ttf-kochi-gothic | ttf-kochi-mincho
+Suggests: khelpcenter, kdeedu-doc-html
+Description: Japanese reference/study tool for KDE
+ Kiten is a Japanese reference and study tool for KDE. It is an
+ application with multiple functions. Firstly, it is a convenient
+ English to Japanese and Japanese to English dictionary. Secondly, it is
+ a Kanji dictionary, with multiple ways to look up specific characters.
+ Thirdly, it is a tool to help you learn Kanji.
+ .
+ This package is part of the official KDE edutainment module.
+
+Package: libnet-ph-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 96
+Maintainer: Michael Alan Dorman <mdorman@debian.org>
+Version: 2.21-2
+Depends: perl (>= 5.6.0-16), libnet-perl (>= 1:1.09)
+Description: Perl module for accessing ph servers
+ Net::PH is a Perl module that provides a Perl Developer access to the
+ ph protocol.
+
+Package: kenolaba
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 504
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Replaces: kabalone
+Provides: kabalone
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Conflicts: kabalone
+Description: Enolaba board game for KDE
+ kenolaba is a simple board strategy game that is played by two
+ players. There are red and yellow pieces for each player. Beginning
+ from a start position where each player has 14 pieces, moves are
+ drawn until one player has pushed 6 pieces of his opponent out of the
+ board.
+ .
+ This game was previously known as kabalone, and was inspired by the
+ board game Abalone by Abalone SA, France.
+
+Package: bzip2
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 405
+Maintainer: Philippe Troin <phil@fifi.org>
+Version: 1.0.2-1
+Replaces: libbz2 (<< 0.9.5d-3)
+Depends: libbz2-1.0, libc6 (>= 2.2.4-4)
+Description: A high-quality block-sorting file compressor - utilities
+ bzip2 is a freely available, patent free, high-quality data compressor.
+ It typically compresses files to within 10% to 15% of the best available
+ techniques, whilst being around twice as fast at compression and six
+ times faster at decompression.
+ .
+ bzip2 compresses files using the Burrows-Wheeler block-sorting text
+ compression algorithm, and Huffman coding. Compression is generally
+ considerably better than that achieved by more conventional
+ LZ77/LZ78-based compressors, and approaches the performance of the PPM
+ family of statistical compressors.
+ .
+ The archive file format of bzip2 (.bz2) is incompatible with that of its
+ predecessor, bzip (.bz).
+
+Package: console-tools-libs
+Status: purge ok not-installed
+Priority: important
+Section: libs
+
+Package: libglib1.2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 256
+Maintainer: Akira TAGOH <tagoh@debian.org>
+Source: glib1.2
+Version: 1.2.10-9
+Replaces: libgtk-doc
+Depends: libc6 (>= 2.3.1-1)
+Description: The GLib library of C routines
+ GLib is a library containing many useful C routines for things such
+ as trees, hashes, and lists. GLib was previously distributed with
+ the GTK+ toolkit, but has been split off as of the developers' version
+ 1.1.0.
+ .
+ You do not need to install this package if you have libgtk1 (note 1,
+ not 1.1 or 1.2) installed. libgtk1 included libglib in it. libgtk1.1
+ and libgtk1.2, however, do need libglib1.1 to be installed separately.
+
+Package: vim-common
+Status: install ok installed
+Priority: extra
+Section: editors
+Installed-Size: 13372
+Maintainer: Norbert Tretkowski <nobse@debian.org>
+Architecture: all
+Source: vim
+Version: 1:6.3-025+1
+Replaces: vim (<< 1:6.2-270+2)
+Depends: vim (>> 1:6.3)
+Description: Vi IMproved - Common files
+ Vim is an almost compatible version of the UNIX editor Vi. Many new features
+ have been added: multi level undo, syntax highlighting, command line history,
+ on-line help, filename completion, block operations, folding, Unicode support,
+ etc.
+ .
+ This package contains the arch independent common files.
+
+Package: cramfsprogs
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 92
+Maintainer: Debian kernel team <debian-kernel@lists.debian.org>
+Architecture: i386
+Source: cramfs
+Version: 1.1-6
+Replaces: mkcramfs
+Provides: mkcramfs
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1)
+Conflicts: mkcramfs
+Description: Tools for CramFs (Compressed ROM File System)
+ This package contains tools that let you construct a CramFs
+ (Compressed ROM File System) image from the contents of a given directory, as
+ well as checking a constructed CramFs image and extracting its contents.
+ .
+ Cram file systems are used for Debian INITRD images.
+
+Package: libltdl3-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 76
+Maintainer: Scott James Remnant <scott@netsplit.com>
+Architecture: i386
+Source: libtool
+Version: 1.5.6-2
+Replaces: libltdl0.1-dev
+Depends: libltdl3 (= 1.5.6-2), libc6-dev, gcc | c-compiler, cpp
+Recommends: libtool
+Suggests: libtool-doc
+Conflicts: libltdl0.1-dev, libltdl0-dev
+Description: A system independent dlopen wrapper for GNU libtool
+ This package contains the header files and static libraries for the
+ libltdl package.
+ .
+ A small library that aims at hiding the various difficulties of
+ dlopening libraries from programmers. It is a system independent
+ dlopen wrapper for GNU libtool.
+ .
+ It supports the following dlopen interfaces:
+ * dlopen (Solaris, Linux and various BSD flavors)
+ * shl_load (HP-UX)
+ * LoadLibrary (Win16 and Win32)
+ * load_add_on (BeOS)
+ * GNU DLD (emulates dynamic linking for static libraries)
+ * libtool's dlpreopen
+
+Package: gtk2-engines-gtk-qt
+Status: purge ok not-installed
+Priority: optional
+Section: kde
+Architecture: i386
+
+Package: xfsprogs
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 2136
+Maintainer: Nathan Scott <nathans@debian.org>
+Architecture: i386
+Version: 2.6.20-1
+Provides: fsck-backend
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), libreadline4 (>= 4.3-1), libuuid1
+Suggests: xfsdump, attr, dvhtool, quota
+Conflicts: xfsdump (<< 2.0.0)
+Description: Utilities for managing the XFS filesystem
+ A set of commands to use the XFS filesystem, including mkfs.xfs.
+ .
+ XFS is a high performance journaling filesystem which originated
+ on the SGI IRIX platform. It is completely multi-threaded, can
+ support large files and large filesystems, extended attributes,
+ variable block sizes, is extent based, and makes extensive use of
+ Btrees (directories, extents, free space) to aid both performance
+ and scalability.
+ .
+ Refer to the documentation at http://oss.sgi.com/projects/xfs/
+ for complete details. This implementation is on-disk compatible
+ with the IRIX version of XFS.
+
+Package: superkaramba
+Status: deinstall ok config-files
+Priority: optional
+Section: kde
+Installed-Size: 1176
+Maintainer: Jean-Michel Kelbert <kelbert@debian.org>
+Version: 0.32b-1
+Config-Version: 0.32b-1
+Depends: kdelibs4 (>= 4:3.1.3), libart-2.0-2 (>= 2.3.8), libc6 (>= 2.3.2-1), libfam0c102, libgcc1 (>= 1:3.3.1-1), libglib1.2 (>= 1.2.0), libgtk1.2 (>= 1.2.10-4), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.1), libstdc++5 (>= 1:3.3.1-1), libxrender1 (>= 0.8.1), python2.3 (>= 2.3), xlibs (>> 4.1.0), xmms, zlib1g (>= 1:1.1.4)
+Conflicts: karamba
+Description: A program based on karamba improving the eyecandy of KDE
+ SuperKaramba is a tool based on karamba that allows anyone to easily create
+ and run little interactive widgets on a KDE desktop. Widgets are defined in a
+ simple text file and can be augmented with Python code to make them
+ interactive.
+ .
+ Here are just some examples of the things that can be done:
+ .
+ * Display system information such as CPU Usage, MP3 playing, etc.
+ * Create cool custom toolbars that work any way imaginable.
+ * Create little games or virtual pets that live on your desktop.
+ * Display information from the internet, such as weather and headlines.
+
+Package: dmapi
+Status: purge ok not-installed
+Priority: optional
+Section: admin
+
+Package: kmailcvt
+Status: install ok installed
+Priority: optional
+Section: mail
+Installed-Size: 268
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Replaces: kmail (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: KDE KMail addressbook converter
+ Converts addressbooks to KMail format.
+ .
+ This package is part of the official KDE pim module.
+
+Package: libid3-3.8.3-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 908
+Maintainer: Robert Woodcock <rcw@debian.org>
+Architecture: i386
+Source: id3lib3.8.3
+Version: 3.8.3-4
+Replaces: libid3-dev
+Provides: libid3-dev
+Depends: libid3-3.8.3 (= 3.8.3-4), zlib1g-dev
+Conflicts: libid3-dev
+Description: ID3 Tag Library: Development Libraries and Header Files.
+ This package contains the headers that programmers will need to develop
+ applications which will use id3lib, the software library for ID3v1 and ID3v2
+ tag manipulation.
+
+Package: libfuse-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 97
+Maintainer: Bartosz Fenski <fenio@o2.pl>
+Architecture: i386
+Source: fuse
+Version: 1.3-1
+Suggests: fuse-utils (= 1.3-1), fuse-module
+Description: Filesystem in USErspace (development files)
+ Simple interface for userspace programs to export a virtual
+ filesystem to the linux kernel.
+ .
+ This package contains the files necessary to write applications in C
+ or C++ using fuse.
+ .
+ Homepage: http://sourceforge.net/projects/avf
+
+Package: fbset
+Status: install ok installed
+Priority: optional
+Section: base
+Installed-Size: 264
+Maintainer: Guillem Jover <guillem@debian.org>
+Architecture: i386
+Version: 2.1-14
+Depends: libc6 (>= 2.3.2.ds1-4), debconf (>= 0.5) | debconf-2.0, makedev (>= 2.3.1-24) | devfsd
+Conffiles:
+ /etc/fb.modes 58b5d6e9daf8eee80f73cefb38f000d3
+Description: framebuffer device maintenance program
+ Program to modify settings for the framebuffer devices (/dev/fb[0-9]*
+ or /dev/fb/[0-9]*) on Linux, like depth, virtual resolution, timing
+ parameters etc.
+ .
+ This program is useful for all Linux/m68k kernel versions, and
+ for late 2.1 kernels and above on most other architectures.
+
+Package: openssl
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 2128
+Maintainer: Christoph Martin <christoph.martin@uni-mainz.de>
+Architecture: i386
+Version: 0.9.7d-5
+Depends: libc6 (>= 2.3.2.ds1-4), libssl0.9.7, perl
+Suggests: ca-certificates
+Conflicts: ssleay (<< 0.9.2b)
+Conffiles:
+ /etc/ssl/openssl.cnf 8a1a933621d86cdca4c1ff25f665ea4c
+Description: Secure Socket Layer (SSL) binary and related cryptographic tools
+ This package contains the openssl binary and related tools.
+ .
+ It is part of the OpenSSL implementation of SSL.
+ .
+ You need it to perform certain cryptographic actions like:
+ o Creation of RSA, DH and DSA Key Parameters
+ o Creation of X.509 Certificates, CSRs and CRLs
+ o Calculation of Message Digests
+ o Encryption and Decryption with Ciphers
+ o SSL/TLS Client and Server Tests
+ o Handling of S/MIME signed or encrypted Mail
+
+Package: libgnome2-canvas-perl
+Status: purge ok not-installed
+Priority: optional
+Section: perl
+Architecture: i386
+
+Package: glutg3
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+
+Package: libglib2.0-data
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 1052
+Maintainer: Akira TAGOH <tagoh@debian.org>
+Architecture: all
+Source: glib2.0
+Version: 2.4.6-2
+Replaces: libglib1.3, libglib1.3-data
+Depends: libglib2.0-0 (= 2.4.6-2)
+Conflicts: libglib1.3-data
+Description: Common files for GLib library
+ GLib is a library containing many useful C routines for things such
+ as trees, hashes, lists, and strings. It is a useful general-purpose
+ C library used by projects such as GTK+, GIMP, and GNOME.
+ .
+ This package contains the common files which the runtime libraries
+ need.
+
+Package: console-common
+Status: install ok installed
+Priority: important
+Section: utils
+Installed-Size: 652
+Maintainer: Alastair McKinstry <mckinstry@debian.org>
+Architecture: all
+Version: 0.7.47
+Replaces: console-tools (<< 1:0.2.3-18), kbd (<< 0.99-12), console-data (<< 1999.08.29-18)
+Depends: debianutils (>= 1.13), console-data, console-tools (>= 1:0.2.3dbs-54) | kbd
+Pre-Depends: debconf (>= 0.5)
+Recommends: console-utilities
+Conflicts: console-data (<< 1999.08.29-20)
+Conffiles:
+ /etc/init.d/keymap.sh 12d833f42ec6ac77b3d1415f0efb7b77
+Description: Basic infrastructure for text console configuration
+ This package contains the install-keymap(8) utility, which is the
+ official way to specify a boot-time keymap to the system, as well
+ as tools for internal use of keymap-providing packages.
+
+Package: xmms-dev
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 160
+Maintainer: Josip Rodin <joy-packages@debian.org>
+Architecture: i386
+Source: xmms
+Version: 1.2.10-1
+Replaces: xmms (<< 0.9.5.1-4)
+Depends: xmms (= 1.2.10-1), xlibs-dev, libglib1.2-dev, libgtk1.2-dev
+Description: XMMS development static library and header files
+ X MultiMedia System is a player for various audio formats,
+ with a customizable interface based on X/GTK+.
+ .
+ This package contains libxmms static library and header files which are
+ usually only necessary if you wish to build additional XMMS plug-ins.
+
+Package: mpg321
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 128
+Maintainer: Joe Drew <drew@debian.org>
+Version: 0.2.10.3
+Provides: mpg123, mp3-decoder
+Depends: libao2 (>= 0.8.4), libc6 (>= 2.3.2.ds1-4), libid3tag0 (>= 0.15.0b), libmad0 (>= 0.15.0b), zlib1g (>= 1:1.2.1)
+Description: A Free command-line mp3 player, compatible with mpg123
+ mpg321 is a clone of the popular mpg123 command-line mp3 player. It should
+ function as a drop-in replacement for mpg123 in many cases. While some of
+ the functionality of mpg123 is not yet implemented, mpg321 should function
+ properly in most cases for most people, such as for frontends such as
+ gqmpeg.
+ .
+ mpg321 is based on the mad MPEG audio decoding library. It therefore is
+ highly accurate, and also uses only fixed-point calculation, making it
+ more efficient on machines without a floating-point unit.
+ .
+ While mpg321 is not as fast as the non-free mpg123 on systems which have a
+ floating point unit, it comes under a fully Free license, which allows greater
+ freedom to its users. For most people who want mpg123, mpg321 is a better
+ alternative.
+
+Package: eggdrop
+Status: purge ok not-installed
+Priority: extra
+Section: net
+Architecture: i386
+
+Package: libgcrypt11-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 644
+Maintainer: Matthias Urlichs <smurf@debian.org>
+Architecture: i386
+Source: libgcrypt11
+Version: 1.2.0-6
+Provides: libgcrypt-dev
+Depends: libgcrypt11 (= 1.2.0-6), libc6-dev | libc-dev, libgpg-error-dev
+Conflicts: libgcrypt-dev
+Description: LGPL Crypto library - development files
+ libgcrypt contains cryptographic functions. Most important free
+ ciphers have been implemented: arcfour, blowfish, cast5, des,
+ 3DES, elgamal, rijndael, RSA, twofish; as well as hash algorithms:
+ DSA, MD5, RMD160, SHA1, tiger.
+ .
+ This package contains header files and libraries for static linking.
+
+Package: kdat
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 572
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeadmin
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE tape backup tool
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ Tape backup tool for KDE.
+ .
+ This package is part of the official KDE admin module.
+
+Package: lvm2
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 698
+Maintainer: Patrick Caulfield <patrick@debian.org>
+Architecture: i386
+Version: 2.00.22-1
+Provides: lvm-binaries
+Depends: libc6 (>= 2.3.2.ds1-4), libdevmapper1.00, lvm-common (>> 1.5.8)
+Suggests: dmsetup, kernel-patch-device-mapper
+Conffiles:
+ /etc/lvm/lvm.conf c51a290fe3dd60c31fec382e28372cbc
+Description: The Linux Logical Volume Manager
+ This is LVM2, the rewrite of The Linux Logical Volume Manager. LVM
+ supports enterprise level volume management of disk and disk subsystems
+ by grouping arbitrary disks into volume groups. The total capacity of
+ volume groups can be allocated to logical volumes, which are accessed as
+ regular block devices.
+ .
+ Though LVM2 is currently stable, it is not yet recommended for production
+ use. It is backwards-compatible with LVM1 (lvm10), and requires Linux
+ kernel 2.4.
+
+Package: eggdrop-data
+Status: install ok not-installed
+Priority: extra
+Section: net
+Version: 1.6.16-3
+
+Package: gphoto2
+Status: install ok installed
+Priority: extra
+Section: libs
+Installed-Size: 508
+Maintainer: christophe barbe <christophe@debian.org>
+Architecture: i386
+Version: 2.1.4-3
+Depends: libc6 (>= 2.3.2.ds1-4), libcdk4, libexif10, libgphoto2-2 (>= 2.1.4-6), libgphoto2-port0 (>= 2.1.4-6), libjpeg62, libncurses5 (>= 5.4-1), libreadline4 (>= 4.3-1)
+Suggests: gtkam
+Description: The gphoto2 digital camera command-line client
+ The gphoto2 library can be used by applications to access various
+ digital camera models.
+ This package provide the gphoto2 command-line frontend.
+
+Package: k3blibs
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 3024
+Maintainer: Jean-Michel Kelbert <kelbert@debian.org>
+Architecture: i386
+Source: k3b
+Version: 0.11.14-2
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libflac++2c102, libflac4, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libid3-3.8.3, libidn11 (>= 0.5.2), libmad0 (>= 0.15.1b), libogg0 (>= 1.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Conflicts: libk3bcore, libk3bplugin, libk3btools, libk3bproject
+Description: The KDE cd burning application library - runtime files
+ K3b is a GUI frontend to the cd recording programs cdrdao and cdrecord.
+ Its aim is to provide a very user friendly interface to all the tasks
+ that come with cd recording and a lot more.
+ .
+ This package contains runtime libraries.
+
+Package: koffice-data
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 2764
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: all
+Source: koffice
+Version: 1:1.3.2-2
+Replaces: koffice-libs (<< 1:1.2.90-0), kugar (<< 1:1.2.90-0)
+Depends: koffice-libs (= 1:1.3.2-2)
+Recommends: openoffice.org-mimelnk
+Suggests: khelpcenter, koffice-doc-html
+Description: common shared data for the KDE Office Suite
+ This package provides the architecture-independent data that is shared
+ amongst the various components of KOffice.
+ .
+ This package is part of the KDE Office Suite.
+
+Package: ncurses-bin
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 456
+Maintainer: Daniel Jacobowitz <ncurses-maint@debian.org>
+Architecture: i386
+Source: ncurses
+Version: 5.4-4
+Provides: tput
+Pre-Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1)
+Conflicts: ncurses, tput
+Description: Terminal-related programs and man pages
+ This package contains the programs used for manipulating the terminfo
+ database and individual terminfo entries, as well as some programs for
+ resetting terminals and such.
+
+Package: perl-base
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 2064
+Maintainer: Brendan O'Dea <bod@debian.org>
+Architecture: i386
+Source: perl
+Version: 5.8.4-2.2
+Replaces: perl-5.005-base (<< 6), perl-5.6-base (<< 6), perl (<< 5.8.0-9), perl-modules (<< 5.8.0-9), libperl5.8 (<< 5.8.0-20), libscalar-list-utils-perl
+Provides: perl5-base, perlapi-5.8.0, perlapi-5.8.1, perlapi-5.8.2, perlapi-5.8.3, perlapi-5.8.4, data-dumper, libscalar-list-utils-perl
+Pre-Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: perl
+Conflicts: perl-5.004-base (<< 6), perl-5.005-base (<< 6), perl-5.6-base (<< 6), data-dumper, autoconf2.13 (<< 2.13-45), libscalar-list-utils-perl (<< 1:1.13-1)
+Description: The Pathologically Eclectic Rubbish Lister.
+ A scripting language with delusions of full language-hood, Perl is used
+ in many system scripts and utilities.
+ .
+ This is a stripped down Perl with only essential libraries. To make
+ full use of Perl, you'll want to install the `perl', `perl-modules' and
+ optionally `perl-doc' packages which supplement this one.
+
+Package: sysv-rc
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 192
+Maintainer: Miquel van Smoorenburg <miquels@cistron.nl>
+Architecture: all
+Source: sysvinit
+Version: 2.86-5
+Replaces: dpkg (<< 1.9.17), sysvinit (<< 2.85-1), file-rc (>> 0.7.0)
+Suggests: sysv-rc-conf
+Conflicts: file-rc
+Description: Standard boot mechanism using symlinks in /etc/rc?.d
+ This package provides support for the System-V like system of booting,
+ shutting down and changing runlevels configured through symbolic
+ links in the /etc/rc?.d directories.
+
+Package: libjack0.80.0-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 636
+Maintainer: Junichi Uekawa <dancer@debian.org>
+Architecture: i386
+Source: jack-audio-connection-kit
+Version: 0.98.1-5
+Replaces: libjack-dev, libjack0.71.2-0 (<< 0.75.0-1)
+Provides: libjack-dev
+Depends: libjack0.80.0-0 (= 0.98.1-5), libasound2-dev, libglib1.2-dev, pkg-config
+Conflicts: libjack-dev
+Description: JACK Audio Connection Kit (development files)
+ Low-latency sound server. JACK allows the connection of multiple applications
+ to an audio device, as well as allowing them to share audio between
+ themselves.
+ .
+ See <http://jackit.sourceforge.net/> for more info.
+ .
+ This package contains files needed for the development of JACK applications
+ and an API reference.
+
+Package: cpp-3.2
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 228
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Source: gcc-3.2 (1:3.2.3ds9-9)
+Version: 1:3.2.3-9
+Depends: gcc-3.2-base (>= 1:3.2.3-9), gcc-3.2-base (<< 1:3.2.4), libc6 (>= 2.3.2.ds1-4)
+Description: The GNU C preprocessor
+ A macro processor that is used automatically by the GNU C compiler
+ to transform programs before actual compilation.
+ .
+ This package has been separated from gcc for the benefit of those who
+ require the preprocessor but not the compiler.
+
+Package: tla
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 684
+Maintainer: Andrew Suffield <asuffield@debian.org>
+Architecture: i386
+Version: 1.2-4
+Depends: libc6 (>= 2.3.2.ds1-4), libneon24 (>= 0.24.6.dfsg), diff (>= 2.8.1), patch (>= 2.5.9), gawk
+Suggests: ssh, tla-doc, gnupg
+Description: arch revision control system
+ arch is a revision control system with features that are ideal for projects
+ characterised by widely distributed development, concurrent support of
+ multiple releases, and substantial amounts of development on branches.
+ It can be a replacement for CVS and corrects many mis-features of that system.
+ .
+ tla is an implementation of arch in C, by Tom Lord.
+
+Package: cpp-3.3
+Status: install ok installed
+Priority: standard
+Section: interpreters
+Installed-Size: 3132
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-3.3
+Version: 1:3.3.4-11
+Depends: gcc-3.3-base (>= 1:3.3.4-11), gcc-3.3-base (<< 1:3.3.5), libc6 (>= 2.3.2.ds1-4)
+Description: The GNU C preprocessor
+ A macro processor that is used automatically by the GNU C compiler
+ to transform programs before actual compilation.
+ .
+ This package has been separated from gcc for the benefit of those who
+ require the preprocessor but not the compiler.
+
+Package: kppp
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 3584
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdenetwork
+Version: 4:3.3.0-2
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: ppp
+Suggests: khelpcenter
+Description: KDE dialer and frontend to pppd
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ This is a PPP GUI based on QT and KDE.
+ .
+ This package is part of the official KDE network module.
+
+Package: cpp-3.4
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 3716
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-3.4
+Version: 3.4.2-2
+Depends: gcc-3.4-base (>= 3.4.2-2), gcc-3.4-base (<< 3.4.3), libc6 (>= 2.3.2.ds1-4)
+Description: The GNU C preprocessor
+ A macro processor that is used automatically by the GNU C compiler
+ to transform programs before actual compilation.
+ .
+ This package has been separated from gcc for the benefit of those who
+ require the preprocessor but not the compiler.
+
+Package: xine-ui
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 3080
+Maintainer: Siggi Langauf <siggi@debian.org>
+Architecture: i386
+Version: 0.99.1-1
+Depends: libc6 (>= 2.3.2.ds1-4), libcurl2 (>= 7.11.1-1), libfreetype6 (>= 2.1.5-1), libice6 | xlibs (>> 4.1.0), libncurses5 (>= 5.4-1), libpng12-0 (>= 1.2.5.0-4), libreadline4 (>= 4.3-1), libsm6 | xlibs (>> 4.1.0), libssl0.9.7, libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxine1 (>= 1-rc3a), libxtst6 | xlibs (>> 4.1.0), libxv1, zlib1g (>= 1:1.2.1)
+Recommends: aalib1 (>= 1.2), slang1 (>> 1.4.4-7.1)
+Description: the xine video player, user interface
+ This is an X11 based GUI for the libxine video player library.
+ It provides xine, a skin based media player that can play all the
+ audio/video formats that libxine supports. Currently, this includes MPEG1/2,
+ some AVI and Quicktime files, some network streaming methods and disc based
+ media (VCD, SVCD, DVD). A more complete list can be found on
+ http://xine.sf.net/.
+ .
+ This package contains an additional front end, aaxine, which runs even on the
+ console. aaxine uses aalib to render ASCII art video, or you can tell it to
+ use a framebuffer device. This is more a proof of concept, but you can use it
+ to watch DVDs on your old vt100 terminal, of course. ;-)
+ .
+ Most DVDs on the market today are play-protected by the Content Scrambling
+ System (CSS). Xine does not provide any code to descramble those DVDs,
+ because of legal uncertainties. Have a look at
+ /usr/share/doc/xine-ui/README.Debian for more information!
+
+Package: libtimedate-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 212
+Maintainer: Christian Hammers <ch@debian.org>
+Architecture: all
+Source: timedate
+Version: 1.1600-4
+Replaces: timedate
+Provides: timedate
+Depends: perl (>= 5.6.0-16)
+Conflicts: timedate
+Description: Time and date functions for Perl
+ This distribution replaces my earlier GetDate distribution, which was
+ only a date parser. The date parser contained in this distribution
+ is far superior to the yacc based parser, and a *lot* faster.
+ .
+ The parser contained here will only parse absolute dates, if you want
+ a date parser that can parse relative dates then take a look at the
+ Time modules by David Muir on CPAN.
+
+Package: pinentry-curses
+Status: purge ok not-installed
+Priority: optional
+Section: unknown
+
+Package: clisp
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 6916
+Maintainer: Will Newton <will@debian.org>
+Architecture: i386
+Version: 1:2.33.2-3
+Provides: lisp-compiler
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libncurses5 (>= 5.4-1), libreadline4 (>= 4.3-1), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), common-lisp-controller (>= 4.2)
+Pre-Depends: xlibs
+Suggests: gdb
+Conflicts: clisp-doc (<< 1:2.31-1)
+Description: GNU CLISP, a Common Lisp implementation
+ Common Lisp is a high-level, general-purpose programming language.
+ GNU CLISP is a Common Lisp implementation by Bruno Haible of Karlsruhe
+ University and Michael Stoll of Munich University, both in Germany.
+ It mostly supports the Lisp described in the ANSI Common Lisp standard.
+ It runs on microcomputers (OS/2, Windows NT/2000, Windows 95/98, Amiga
+ 500-4000, Acorn RISC PC) as well as on Unix workstations (Linux, SVR4,
+ Sun4, DEC Alpha OSF, HP-UX, BeOS, NeXTstep, SGI, AIX, Sun3 and others)
+ and needs only 2 MB of RAM.
+ .
+ The user interface comes in German, English, French, Spanish, Dutch
+ and Russian.
+ .
+ GNU CLISP includes an interpreter, a compiler, a debugger, CLOS,
+ a foreign language interface, sockets, i18n, fast bignums and more.
+ An X11 interface is available through CLX, Garnet, CLUE/CLIO.
+ GNU CLISP runs Maxima, ACL2 and many other Common Lisp packages.
+
+Package: apt
+Status: install ok installed
+Priority: important
+Section: base
+Installed-Size: 3340
+Maintainer: APT Development Team <deity@lists.debian.org>
+Architecture: i386
+Version: 0.5.27
+Replaces: libapt-pkg-doc (<< 0.3.7), libapt-pkg-dev (<< 0.3.7)
+Provides: libapt-pkg-libc6.3-5-3.3
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1)
+Suggests: aptitude | synaptic | gnome-apt | wajig, dpkg-dev, apt-doc
+Description: Advanced front-end for dpkg
+ This is Debian's next generation front-end for the dpkg package manager.
+ It provides the apt-get utility and APT dselect method that provides a
+ simpler, safer way to install and upgrade packages.
+ .
+ APT features complete installation ordering, multiple source capability
+ and several other unique features, see the Users Guide in apt-doc.
+
+Package: libaudiofile-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 460
+Maintainer: Daniel Kobras <kobras@debian.org>
+Architecture: i386
+Source: audiofile
+Version: 0.2.6-4
+Replaces: libaudiofile0 (<= 0.2.3-4)
+Depends: libaudiofile0 (= 0.2.6-4), libc6-dev
+Conflicts: libaudiofile0 (<= 0.2.3-4)
+Description: Open-source version of SGI's audiofile library (header files)
+ The audiofile library allows the processing of audio data to and from audio
+ files of many common formats (currently AIFF, AIFF-C, WAVE, NeXT/Sun, BICS,
+ and raw data).
+ .
+ This package contains the development headers and library files needed to
+ compile programs using libaudiofile, as well as example programs for
+ identifying and converting audio files.
+
+Package: libgtk1.2-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 3732
+Maintainer: Akira TAGOH <tagoh@debian.org>
+Architecture: i386
+Source: gtk+1.2
+Version: 1.2.10-17
+Replaces: libgtk-dev, libgtk1.1-dev, libgtk1.1.5-dev, libgtk1.1.6-dev, libgtk1.1.9-dev, libgtk1.1.11-dev, libgtk1.1.12-dev, libgtk1.1.13-dev, libgtk1.1.14-dev, libgtk1.1.16-dev, libgtk1.2 (<< 1.2.10-4)
+Provides: libgtk-dev, libgtk1.1-dev
+Depends: libgtk1.2 (= 1.2.10-17), libglib1.2-dev, libx11-dev, libxext-dev, libxi-dev, pkg-config
+Pre-Depends: dpkg (>= 1.6.8)
+Suggests: libgtk1.2-doc
+Conflicts: libgtk1 (<< 1:1.0.4), libgtk-dev, libgtk1.1.5-dev, libgtk1.1.6-dev, libgtk1.1.7-dev, libgtk1.1.8-dev, libgtk1.1.9-dev, libgtk1.1.11-dev, libgtk1.1.12-dev, libgtk1.1.13-dev, libgtk1.1.14-dev, libgtk1.1.15-dev, libgtk1.1.16-dev, libgtk1.2 (<< 1.2.10-4)
+Description: Development files for the GIMP Toolkit
+ This package contains the header files and static libraries for the
+ GIMP Toolkit set of widgets for X.
+ .
+ Install this package if you wish to develop your own X programs using
+ the GIMP Toolkit 1.2, or if you wish to compile your own plug-ins for
+ The GIMP.
+
+Package: libxrender-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 128
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xrender
+Version: 0.8.3-7
+Depends: libxrender1 (= 0.8.3-7), libc6-dev | libc-dev, libx11-dev, render-dev, x-dev
+Conflicts: xlibs-dev (<< 4.3.0)
+Description: X Rendering Extension client library (development files)
+ The X Rendering Extension (Render) introduces digital image composition as
+ the foundation of a new rendering model within the X Window System.
+ Rendering geometric figures is accomplished by client-side tesselation into
+ either triangles or trapezoids. Text is drawn by loading glyphs into the
+ server and rendering sets of them. The Xrender library exposes this
+ extension to X clients.
+ .
+ This package provides a static library and C header files.
+
+Package: libunix-syslog-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 132
+Maintainer: Jonas Smedegaard <dr@jones.dk>
+Architecture: i386
+Version: 0.100-4
+Depends: perl (>= 5.8.4-2), perlapi-5.8.4, libc6 (>= 2.3.2.ds1-4)
+Description: Perl interface to the UNIX syslog(3) calls
+ This module provides an interface to the system logger syslogd(8) via
+ Perl's XSUBs. The implementation attempts to resemble the native
+ libc-functions of your system, so that anyone being familiar with
+ syslog.h should be able to use this module right away.
+
+Package: kde-i18n-fr
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 29852
+Maintainer: Noèl Köthe <noel@debian.org>
+Architecture: all
+Source: kde-i18n
+Version: 4:3.3.0-1
+Replaces: kdebase-i18n, kde-i18n
+Provides: kde-i18n
+Depends: kdelibs4 (>= 4:3.3.0-1)
+Suggests: kde
+Conflicts: kdebase-i18n, koffice (<< 1.3.0-2), juk (<< 4:3.2.1-1), kcachegrind (<< 4:3.2.1-1)
+Description: French (fr) internationalized (i18n) files for KDE
+ This package contains the French internationalized (i18n) files for
+ all KDE core applications.
+
+Package: apg
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 192
+Maintainer: Marc Haber <mh+debian-packages@zugschlus.de>
+Architecture: i386
+Version: 2.2.3-1
+Depends: libc6 (>= 2.3.2-1)
+Conffiles:
+ /etc/apg.conf 87cbe479394590cd9651d576319593b2
+Description: Automated Password Generator - Standalone version
+ APG (Automated Password Generator) is the tool set for random
+ password generation. It generates some random words of required type
+ and prints them to standard output. This binary package contains only
+ the standalone version of apg.
+ Advantages:
+ * Built-in ANSI X9.17 RNG (Random Number Generator)(CAST/SHA1)
+ * Built-in password quality checking system (now it has support for Bloom
+ filter for faster access)
+ * Two Password Generation Algorithms:
+ 1. Pronounceable Password Generation Algorithm (according to NIST
+ FIPS 181)
+ 2. Random Character Password Generation Algorithm with 35
+ configurable modes of operation
+ * Configurable password length parameters
+ * Configurable amount of generated passwords
+ * Ability to initialize RNG with user string
+ * Support for /dev/random
+ * Ability to crypt() generated passwords and print them as additional output.
+ * Special parameters to use APG in script
+ * Ability to log password generation requests for network version
+ * Ability to control APG service access using tcpd
+ * Ability to use password generation service from any type of box (Mac,
+ WinXX, etc.) that connected to network
+ * Ability to enforce remote users to use only allowed type of password
+ generation
+ The client/server version of apg has been deliberately omitted.
+
+Package: klines
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 376
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: Color lines for KDE
+ KLines is a simple game. It is played by one player, so there is only
+ one winner :-). You play for fun and against the high score. It was
+ inspired by a well known game - "Color lines", written for DOS by
+ Olga Demina, Igor Demina, Igor Ivkin and Gennady Denisov back in
+ 1992.
+ .
+ The main rules of the game are as simple as possible: you move (using
+ the mouse) marbles from cell to cell and build lines (horizontal,
+ vertical or diagonal). When a line contains 5 or more marbles, they
+ are removed and your score grows. After each turn the computer drops
+ three more marbles.
+
+Package: vorbis-tools
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 556
+Maintainer: Christopher L Cheney <ccheney@debian.org>
+Version: 1.0.1-1
+Depends: libao2 (>= 0.8.4), libc6 (>= 2.3.2.ds1-4), libcurl2 (>= 7.10.8-1), libflac4, libogg0 (>= 1.1.0), liboggflac1, libspeex1, libssl0.9.7, libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1), zlib1g (>= 1:1.2.1)
+Description: Several Ogg Vorbis Tools
+ vorbis-tools contains oggenc (an encoder), ogg123 (a playback tool),
+ ogginfo (displays ogg information), vcut (ogg file splitter), and
+ vorbiscomment (ogg comment editor)
+
+Package: python2.3-sip-qt3
+Status: purge ok not-installed
+Priority: optional
+Section: python
+Architecture: i386
+
+Package: fdutils
+Status: install ok installed
+Priority: optional
+Section: base
+Installed-Size: 924
+Maintainer: Jochen Voss <voss@debian.org>
+Architecture: i386
+Version: 5.4-20040228-1
+Replaces: miscutils, manpages (<< 1.11-3)
+Depends: libc6 (>= 2.3.2.ds1-4), debianutils (>= 1.7)
+Recommends: mtools (>= 3.8-1)
+Conffiles:
+ /etc/mediaprm 634ea1478e3db69c0a12fc08dbd057fb
+ /etc/fdmount.conf b9365eca8374c0b402c19a7a9b781b77
+Description: Linux floppy utilities
+ This package contains utilities for formatting extra capacity
+ disks, for automatic floppy disk mounting and unmounting, etc.
+ .
+ The package includes the following items:
+ .
+ * superformat: formats high capacity disks of (up to 1992k
+ for high density disks or up to 3984k for extra density
+ disks)
+ * fdmount: automatically mounts/unmounts disks when they are
+ inserted/removed.
+ * xdfcopy: formats, reads and writes OS/2's XDF disks.
+ * MAKEFLOPPIES: creates the floppy devices in /dev
+ * getfdprm: prints the current disk geometry (number of
+ sectors, track and heads etc)
+ * setfdprm: sets the current disk geometry
+ * fdrawcmd: sends raw commands to the floppy driver
+ * floppycontrol: configure the floppy driver
+ * General documentation about the floppy driver
+ .
+ Note that these utilities do not work for USB floppy drives, because
+ there is no direct access to the floppy controller.
+ .
+ Homepage: http://www.tux.org/pub/knaff/fdutils/
+
+Package: alsaplayer-text
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 68
+Maintainer: Ivo Timmermans <ivo@debian.org>
+Architecture: i386
+Source: alsaplayer
+Version: 0.99.76-0.2
+Replaces: alsaplayer-oss (<< 0.99.22), alsaplayer-alsa (<< 0.99.22), alsaplayer-esd (<< 0.99.22), alsaplayer (<< 0.99.36)
+Provides: alsaplayer-interface
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1), alsaplayer-common (= 0.99.76-0.2)
+Conflicts: alsaplayer-oss (<< 0.99.22), alsaplayer-alsa (<< 0.99.22), alsaplayer-esd (<< 0.99.22)
+Description: PCM player designed for ALSA (text version)
+ Alsaplayer is a PCM player designed specifically for use with ALSA, but
+ works great with OSS or EsounD. It's heavily threaded which cuts down on
+ skipping, offers optional and even simultaneous visual scopes, plays
+ mp3, mp2, ogg, cdda, audiofs, and lots more.
+ .
+ This package does not require X or GTK to run. It does require at
+ least one of the output modules.
+
+Package: xprt-xprintorg
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 1844
+Maintainer: Drew Parsons <dparsons@debian.org>
+Architecture: i386
+Source: xprint-xprintorg
+Version: 0.0.9.final.001-6
+Provides: xprt
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxaw7 (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxp6 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0), xprt-common
+Description: Xprint - the X11 print system from xprint.org (binary)
+ "Xprint" is an advanced printing system which enables X11 applications
+ to use devices like printers, FAX or create documents in formats like
+ PostScript, PDF, PCL, etc.
+ .
+ This package provides Xprt, the Xprint server compiled from
+ xprint.mozdev.org. This version supersedes the version from XFree86
+ (package xprt), which is buggy and does not work with mozilla. This version
+ provides full support for printing from mozilla, including non-latin
+ characters and MathML. TrueType fonts are supported.
+
+Package: openoffice.org-help-en
+Status: purge ok not-installed
+Priority: optional
+Section: contrib/doc
+
+Package: sgml-base
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 148
+Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs@lists.alioth.debian.org>
+Architecture: all
+Version: 1.26
+Depends: perl
+Suggests: sgml-base-doc
+Conflicts: sgml-data (<= 0.02), sgmltools-2 (<= 2.0.2-4)
+Description: SGML infrastructure and SGML catalog file support
+ This package creates the SGML infrastructure directories and provides
+ SGML catalog file support in compliance with the current Debian SGML
+ Policy draft:
+ .
+ * infrastructure directories:
+ - /etc/sgml
+ - /usr/share/sgml/{declaration,dtd,entities,misc,stylesheet}
+ - /usr/share/local/sgml/{declaration,dtd,entities,misc,stylesheet}
+ .
+ * update-catalog(8): tool for maintaining the root SGML catalog
+ file and the package SGML catalog files in the '/etc/sgml' directory
+
+Package: python2.3-imaging
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 788
+Maintainer: Matthias Urlichs <smurf@debian.org>
+Source: python-imaging
+Version: 1.1.4-3
+Replaces: pil, python-pil
+Depends: python2.3, libc6 (>= 2.3.2.ds1-4), libfreetype6 (>= 2.1.5-1), libjpeg62, zlib1g (>= 1:1.2.1), mime-support | python2.3-imaging-tk
+Suggests: python-imaging-doc
+Conflicts: pil, python-pil
+Description: Python Imaging Library
+ The Python Imaging Library (PIL) adds an image object to your Python
+ interpreter. You can load images from a variety of file formats, and
+ apply a rich set of image operations to them.
+ .
+ Image Objects:
+ o Bilevel, greyscale, palette, true colour (RGB), true colour with
+ transparency (RGBA).
+ o colour separation (CMYK).
+ o Copy, cut, paste operations.
+ o Flip, transpose, resize, rotate, and arbitrary affine transforms.
+ o Transparency operations.
+ o Channel and point operations.
+ o Colour transforms, including matrix operations.
+ o Image enhancement, including convolution filters.
+ .
+ File Formats:
+ o Full (Open/Load/Save): BMP, EPS (with ghostscript), GIF, IM, JPEG,
+ MSP, PDF, PNG, PPM, TIFF, XBM.
+ o Read only (Open/Load): ARG, CUR, DCX, FLI, FPX, GBR, GD, ICO, IMT, IPTC,
+ MCIDAS, MPEG, PhotoCD, PCX, PIXAR, PSD, TGA, SGI, SUN, TGA, WMF, XPM.
+ o Save only: PDF, EPS (without ghostscript).
+ .
+ This is the Python 2.3 version of the package.
+
+Package: kpdf
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 1200
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegraphics
+Version: 4:3.3.0-1.1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpaper1, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: PDF viewer for KDE
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KPDF allows you view PDF (Portable Document Format) files. This package
+ includes kpart so you can embed it in konqueror and a standalone
+ application.
+ .
+ This package is part of the official KDE graphics module.
+
+Package: perl-suid
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 104
+Maintainer: Brendan O'Dea <bod@debian.org>
+Architecture: i386
+Source: perl
+Version: 5.8.4-2.2
+Replaces: perl-5.005-suid (<< 6), perl-5.6-suid (<< 6)
+Depends: perl (= 5.8.4-2.2), libc6 (>= 2.3.2.ds1-4), libperl5.8 (= 5.8.4-2.2)
+Conflicts: perl-5.004-suid (<< 6), perl-5.005-suid (<< 6), perl-5.6-suid (<< 6)
+Description: Runs setuid Perl scripts.
+ suidperl is a setuid root helper program which is invoked by perl when
+ executing scripts with setuid/gid bits set on systems (like linux) which
+ don't have support setuid script execution natively in the kernel.
+ .
+ Usage of this program is now strongly deprecated upstream and support
+ (along with this package) will probably be removed in 5.10.
+
+Package: kbattleship
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 808
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libkdegames1 (>= 4:3.3.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: Battleship game for KDE
+ This is an implementation of the Battleship game. Each player tries
+ to be the first to sink all the opponent's ships by firing "blindly"
+ at them. The game has options to play over a network connection or
+ against the computer.
+
+Package: kivio
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 1812
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: koffice
+Version: 1:1.3.2-2
+Replaces: koffice-libs (<< 1:1.1-20010404-0)
+Depends: kdelibs4 (>= 4:3.2.3), koffice-libs (>= 1:1.3.0-0), libart-2.0-2 (>= 2.3.16), libaspell15 (>= 0.50.5), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, python2.3 (>= 2.3), zlib1g (>= 1:1.2.1), kivio-data (= 1:1.3.2-2)
+Description: a flowcharting program for the KDE Office Suite
+ Kivio is a flowcharting program that offers basic flowcharting abilities,
+ but with a twist. Objects are scriptable, and a backend plugin system
+ offers the ability to make objects do just about anything.
+ .
+ This package is part of the KDE Office Suite.
+
+Package: libxslt1.1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 408
+Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs@lists.alioth.debian.org>
+Architecture: i386
+Source: libxslt
+Version: 1.1.8-4
+Depends: libc6 (>= 2.3.2.ds1-4), libgcrypt11, libgpg-error0 (>= 1.0), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1)
+Conflicts: libxslt1 (<< 1.1.2-2)
+Description: XSLT processing library - runtime library
+ XSLT is an XML language for defining transformations of XML files from
+ XML to some other arbitrary format, such as XML, HTML, plain text, etc.
+ using standard XSLT stylesheets. libxslt is a C library which
+ implements XSLT.
+ .
+ This package contains libxslt library used by applications for XSLT
+ transformations.
+
+Package: dhcpcd
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 212
+Maintainer: Simon Kelley <simon@thekelleys.org.uk>
+Architecture: i386
+Version: 1:1.3.22pl4-17
+Replaces: dhcpcd-sv
+Provides: dhcp-client
+Depends: libc6 (>= 2.3.2.ds1-4), bsdutils (>= 2.11n), procps
+Recommends: pcmcia-cs
+Conflicts: dhcpcd-sv, dhcp-client, ifupdown (<< 0.6.4-4)
+Conffiles:
+ /etc/dhcpc/dhcpcd.exe 8a5669f4a1b2c7ce84e6fc9a0aae557a
+ /etc/dhcpc/config 9ecae986da4a24a906621104bea657d3
+Description: DHCP client for automatically configuring IPv4 networking.
+ Simple configuration: supports executions of a script when the
+ IP address changes.
+
+Package: kernel-image-2.5.68-mm4
+Status: deinstall ok config-files
+Priority: optional
+Section: base
+Installed-Size: 7048
+Maintainer: Yenar Calentaure <yenar@host.sk>
+Source: kernel-source-2.5.68-mm4
+Version: 1.0-lorien-1
+Config-Version: 1.0-lorien-1
+Provides: kernel-image, kernel-image-2.5
+Depends: fileutils (>= 4.0)
+Suggests: lilo (>= 19.1), fdutils, kernel-doc-2.5.68-mm4 | kernel-source-2.5.68-mm4
+Description: Linux kernel binary image for version 2.5.68-mm4.
+ This package contains the Linux kernel image for version 2.5.68-mm4,
+ the corresponding System.map file, and the modules built by the
+ packager. It also contains scripts that try to ensure that the
+ system is not left in a unbootable state after an update.
+ .
+ If you wish to update a bootdisk, or to use a bootloader to make
+ installing and using the image easier, we suggest you install the latest
+ fdutils (for formatting a floppy to be used as boot disk), and LILO, for a
+ powerful bootloader. Of course, both these are optional.
+ .
+ Kernel image packages are generally produced using kernel-package,
+ and it is suggested that you install that package if you wish to
+ create a custom kernel from the sources. Please look at kernel-img.conf(5),
+ and /usr/share/doc/kernel-package/README.gz from the package kernel-package
+ for details on how to tailor the installation of this or any other kernel
+ image package
+
+Package: libungif4g
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 120
+Maintainer: Michael Fedrowitz <michaelf@debian.org>
+Architecture: i386
+Source: libungif4
+Version: 4.1.3-1
+Replaces: giflib4g, libungif-bin (<< 4.1.0b1-1)
+Provides: giflib4g
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: giflib4g
+Description: shared library for GIF images (runtime lib)
+ This is a shared library for working with GIF images.
+ .
+ The libungif library is a specially modified version of giflib which
+ is free of the Unisys LZW patent. It can read all GIFs, but only
+ write uncompressed GIFs. If you need to be able to write compressed
+ GIFs, you can install the non-free giflib packages instead (which may
+ not be available on CD).
+
+Package: libasound2-dev
+Status: install ok installed
+Priority: extra
+Section: devel
+Installed-Size: 1564
+Maintainer: Debian ALSA Maintainers <pkg-alsa-devel@lists.alioth.debian.org>
+Architecture: i386
+Source: alsa-lib
+Version: 1.0.5-1
+Replaces: alsalib0.3.0-dev, alsalib0.3.2-dev, libasound0 (<= 0.4.1-2), libasound2 (<< 0.9.0rc7-2)
+Provides: alsalib-dev
+Depends: libasound2 (= 1.0.5-1), libc6-dev | libc-dev, alsa-headers (>> 0.9.2)
+Suggests: libasound2-doc
+Conflicts: alsalib-dev
+Description: Advanced Linux Sound Architecture (development)
+ ALSA is an effort to create a modular sound system for Linux,
+ while maintaining full compatibility with OSS/Lite.
+ .
+ These are the files necessary for development.
+
+Package: nas-lib
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+
+Package: pciutils
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 492
+Maintainer: Remco van de Meent <remco@debian.org>
+Architecture: i386
+Version: 1:2.1.11-15
+Replaces: libpci2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: wget | lynx
+Conflicts: libpci2 (<< 1:2.1.11-11), hardinfo (<= 0.3.6-3), kudzu (<= 1.1.36-2), sndconfig (<= 0.70-2), alsa-utils (<< 1.0.5-3)
+Description: Linux PCI Utilities
+ This package contains various utilities for inspecting and setting of
+ devices connected to the PCI bus.
+
+Package: xlibmesa-glu
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 800
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: libglu1, libutahglx1, mesag3 (<< 5.0.0-1), xlibmesa3 (<< 4.2.1-5), xlibmesa3-glu
+Provides: libglu1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1), xlibmesa-gl | libgl1
+Conflicts: libglu1, libutahglx1, mesag3 (<< 5.0.0-1), xlibmesa3 (<< 4.2.1-5), xlibmesa3-glu
+Description: Mesa OpenGL utility library [XFree86]
+ The OpenGL utility library (GLU) offers simple interfaces for building
+ mipmaps; checking for the presence of extensions in the OpenGL (or other
+ libraries which follow the same conventions for advertising extensions);
+ drawing piecewise linear curves, NURBS, quadrics and other primitives
+ (including, but not limited to, teapots); tesselating surfaces; setting up
+ projection matrices and unprojecting screen coordinates to world coordinates.
+ .
+ XFree86 maintains its own version of the Mesa libraries; see the xlibmesa-gl
+ package for further information.
+ .
+ This package was built using version 1.02 of the C++ ABI.
+
+Package: texinfo
+Status: install ok installed
+Priority: standard
+Section: text
+Installed-Size: 2224
+Maintainer: Josip Rodin <joy-packages@debian.org>
+Architecture: i386
+Version: 4.7-2.1
+Replaces: tetex-base (<< 1.0.2+20000804-9), texinfo (<< 4.7-2)
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: tetex-bin
+Conflicts: tetex-bin (<< 1.0), tetex-base (<< 1.0-3), ja-trans (<= 0.7-3.1)
+Description: Documentation system for on-line information and printed output
+ Texinfo is a documentation system that uses a single source file to
+ produce both on-line information and printed output.
+ .
+ Using Texinfo, you can create a printed document with the normal features
+ of a book, including chapters, sections, cross references, and indices.
+ From the same Texinfo source file, you can create a menu-driven, on-line
+ Info file with nodes, menus, cross references, and indices.
+
+Package: indent
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 500
+Maintainer: Santiago Vila <sanvila@debian.org>
+Version: 2.2.9-5
+Depends: libc6 (>= 2.2.4-4)
+Description: C language source code formatting program
+ The `indent' program changes the appearance of a C program by
+ inserting or deleting whitespace.
+ .
+ `indent' also provides options for controlling the alignment of braces and
+ declarations, program indenting, and other stylistic parameters, including
+ formatting of both C and C++ comments.
+
+Package: base-config
+Status: install ok installed
+Priority: optional
+Section: base
+Installed-Size: 1488
+Maintainer: Debian Install System Team <debian-boot@lists.debian.org>
+Architecture: all
+Version: 2.45
+Depends: debconf (>= 1.3.22), apt, adduser, console-data (>= 2002.12.04dbs-16), console-tools, passwd (>= 20000902-6), bsdutils (>= 1:2.11l), debianutils (>= 1.6), gettext-base
+Conflicts: tasksel (<< 2.00)
+Conffiles:
+ /etc/logrotate.d/base-config 5d900eb788b130065b324325b239a9ec
+Description: Debian base system configurator
+ This package handles setting up the Debian base system. It contains the
+ configuration program you see when you install Debian for the first time
+ and boot up your new Debian system.
+ .
+ It can be removed with no ill effects -- once your Debian system is
+ installed, this package's only useful function is to allow you to
+ reconfigure some things.
+
+Package: openobex-apps
+Status: install ok installed
+Priority: extra
+Section: comm
+Installed-Size: 108
+Maintainer: Edd Dumbill <ejad@debian.org>
+Architecture: i386
+Version: 1.0.0-rel-6
+Depends: libbluetooth1 (>= 2.9), libc6 (>= 2.3.2.ds1-4), libopenobex-1.0-0 (>= 1.0.0-rel)
+Description: Applications for OpenOBEX
+ The Object Exchange protocol can best be described as binary HTTP.
+ OBEX is optimised for ad-hoc wireless links and can be used to exchange
+ all kind of objects like files, pictures, calendar entries (vCal)
+ and business cards (vCard).
+ .
+ OBEX is builtin in devices like PDA's like the Palm Pilot, and mobile
+ phones like the Ericsson R320, Siemens S25, Siemens S45, Siemens ME45,
+ Nokia NM207 and Nokia 9110 Communicator.
+ .
+ This package contains some small utilities to control such devices.
+
+Package: python2.3-qt3c102
+Status: deinstall ok config-files
+Priority: optional
+Section: python
+Installed-Size: 8370
+Maintainer: Ricardo Javier Cardenes Medina <rcardenes@debian.org>
+Source: python-qt3
+Version: 3.8-3
+Config-Version: 3.8-3
+Depends: libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libgcc1 (>= 1:3.3.2-1), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.1), libstdc++5 (>= 1:3.3.2-1), python2.3-sip-qt3 (>= 3.8), xlibmesa-gl | libgl1, xlibmesa3-glu | libglu1, xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), python2.3
+Suggests: python-qt3-doc, libqt3c102-mt-mysql | libqt3c102-mt-odbc | libqt3c102-mt-psql
+Conflicts: python2.3-qt2, python2.3-qt2-mt
+Description: Qt3 bindings for Python 2.3
+ Python binding module that allows use of Qt X Window toolkit v3.
+ You can use it to create portable graphics-capable scripts (there
+ are PyQt versions for Linux, Windows and MacOS X).
+ .
+ At this moment PyQt offers a vast subset of Qt API. There are
+ some minor issues related to the differences between C++ and Python
+ (types, etc), but usually you'll be able to write code pretty the
+ same way in both languages (with syntax differences, of course)
+ .
+ Python 2.3 compile.
+
+Package: libwww0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1428
+Maintainer: Richard Atterer <atterer@debian.org>
+Source: w3c-libwww
+Version: 5.4.0-9
+Depends: libc6 (>= 2.3.2-1), zlib1g (>= 1:1.1.4)
+Conflicts: libwww-ssl0
+Description: The W3C WWW library
+ libwww is a highly modular, general-purpose client side Web API
+ written in C for Unix and Windows. It is well suited for both small
+ and large applications, like browsers/editors, robots, batch tools,
+ etc. Pluggable modules provided with libwww include complete HTTP/1.1
+ (with caching, pipelining, PUT, POST, Digest Authentication, deflate,
+ etc), MySQL logging, FTP, HTML/4, XML (expat), RDF (SiRPAC), and much
+ more.
+ .
+ libwww homepage: <http://www.w3.org/Library/>
+
+Package: odbcinst1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 256
+Maintainer: Steve Langasek <vorlon@debian.org>
+Source: unixodbc
+Version: 2.2.4-9
+Replaces: unixodbc (<< 2.1.1-2)
+Depends: libc6 (>= 2.3.2.ds1-4), libltdl3 (>= 1.5-3)
+Conffiles:
+ /etc/odbc.ini d41d8cd98f00b204e9800998ecf8427e
+ /etc/odbcinst.ini d41d8cd98f00b204e9800998ecf8427e
+Description: Support library and helper program for accessing odbc ini files
+ This package contains the libodbcinst library from unixodbc, a library
+ used by ODBC drivers for reading their configuration settings from
+ /etc/odbc.ini and ~/.odbc.ini. It is useful to provide this in
+ a stand-alone package, so that all ODBC drivers in Debian can use a
+ consistent ini library, regardless of whether applications are built
+ with iodbc or unixodbc.
+ .
+ Also contained in this package is the odbcinst helper tool, which
+ allows ODBC driver packages to install their own driver settings, and
+ the driver setup plugins, which describe the features supported by
+ individual ODBC drivers.
+
+Package: libgnomeprint2.2-0
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 506
+Maintainer: Rob Taylor <robtaylor@fastmail.fm>
+Architecture: i386
+Source: libgnomeprint
+Version: 2.6.2-3
+Config-Version: 2.6.2-3
+Depends: libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libcupsys2-gnutls10 (>= 1.1.20final-1), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libglib2.0-0 (>= 2.4.1), libpango1.0-0 (>= 1.4.0), libpopt0 (>= 1.7), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1), libgnomeprint2.2-data (= 2.6.2-3)
+Description: The GNOME 2.2 print architecture - runtime files
+ The goals of this architecture include:
+ .
+ * Absolutely uncompromised output quality
+ * Speed, memory efficiency, and other related performance goals
+ * Ability to work smoothly with Postscript printers, fonts, and other
+ resources
+ * A screen display derived from the Canvas
+ * An extension path for a wide variety of Unicode scripts
+ * An extension path for a richer set of graphics operators than Postscript
+ supports, especially transparency
+ * To make life as easy as possible for application developers
+
+Package: libdb4.1++
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 884
+Maintainer: Debian Berkeley DB Maintainers <pkg-db-devel@lists.alioth.debian.org>
+Architecture: i386
+Source: db4.1
+Version: 4.1.25-17
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libdb2++ (<< 2:2.7.7-3)
+Description: Berkeley v4.1 Database Libraries for C++ [runtime]
+ This is the runtime package for programs that use the Berkeley v4.1
+ database library. This is only for programs which use the C++ interface.
+
+Package: tetex-extra
+Status: install ok installed
+Priority: optional
+Section: tex
+Installed-Size: 39112
+Maintainer: teTeX maintainers <debian-tetex-maint@lists.debian.org>
+Architecture: all
+Source: tetex-base
+Version: 2.0.2b-5
+Replaces: kpathsea, texlib, textfm, latex, bibtex, texidoc, texpsfnt, mfbasfnt, mfnfss, xdvik, amsfonts, amstex, amslatex, ltxmisc, ltxtool, psnfss, mfdcfnt, mflib, hyperref, cspsfonts, tetex-bin (<< 1.0.7+20021025-3), tetex-french, tetex-nonfree, pb-diagram, tetex-eurosym, tetex-base (<= 1.0.2+20011202-4)
+Provides: tetex-nonfree, pb-diagram, tetex-eurosym
+Depends: tetex-base, tetex-bin (>> 2.0.2-3), gsfonts, ucf (>= 1.02)
+Pre-Depends: dpkg (>= 1.6.8)
+Conflicts: kpathsea, texlib, textfm, bibtex, texpsfnt, mfbasfnt, mfnfss, xdvik, amsfonts, amstex, amslatex, ltxmisc, ltxtool, psnfss, mfdcfnt, mflib, hyperref, tetex-french, cspsfonts, tetex-nonfree, pb-diagram, revtex4 (<= 4.0-2), tetex-eurosym, tetex-base (<< 2.0.2a)
+Conffiles:
+ /etc/texmf/lambda/language.dat b7b70636a817d3f75f28a107c240d2cf
+ /etc/texmf/latex/listings.cfg cda21886f370b2a08959be5b7c522bd0
+ /etc/texmf/latex/jblong.cfg 1ff923049f25d755e3c598f1f9bd7321
+ /etc/texmf/latex/jurabib.cfg d4655b3681c0a8be21267ee31a200164
+ /etc/texmf/latex/efxmpl.cfg 8e5a8e1829832aefb9e6190365201470
+ /etc/texmf/latex/adrplaner.cfg 26a0aedd3f777b141037b8bf0b992c92
+ /etc/texmf/latex/adrdir.cfg fafff964038150fa8cf034d92a56ee77
+ /etc/texmf/latex/adrsmall.cfg 6fdd42917d54ebb2389c6f4e4a13ae6c
+ /etc/texmf/latex/htex4ht.cfg 9f3b36f33fd350aa315a4a3a40c87ef9
+Description: Additional library files of teTeX
+ This package contains some additional parts of teTeX that some users
+ might not need. This includes some PostScript fonts from Adobe,
+ Bitstream, URW etc. It contains fonts like EC, some from the AMS,
+ and some decorative fonts. Furthermore, there are additional support
+ files for BibTeX, Omega, PSTricks, pdfTeX, LaTeX etc.
+ .
+ Together with tetex-bin and tetex-base, this will give you a
+ complete teTeX installation.
+
+Package: kpf
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 584
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdenetwork
+Version: 4:3.3.0-2
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE public fileserver
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ KDE public fileserver.
+ .
+ This package is part of the official KDE network module.
+
+Package: libsdl-ttf1.2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 84
+Maintainer: Sam Hocevar (Debian packages) <sam+deb@zoy.org>
+Architecture: i386
+Source: sdl-ttf1.2
+Version: 1.2.2-6
+Depends: libc6 (>= 2.3.2.ds1-4), libsdl1.2debian (>> 1.2.7-0), libttf2
+Description: TrueType font library for Simple DirectMedia Layer
+ SDL_ttf is a sample TrueType font library. It allows you to use
+ TrueType fonts in SDL applications.
+
+Package: manpages-dev
+Status: install ok installed
+Priority: standard
+Section: doc
+Installed-Size: 2608
+Maintainer: Martin Schulze <joey@debian.org>
+Architecture: all
+Source: manpages
+Version: 1.67-2
+Depends: manpages
+Suggests: man-browser
+Description: Manual pages about using GNU/Linux for development
+ These man pages describe the Linux programming interface, including
+ these two sections:
+ 2 = Linux system calls.
+ 3 = Library calls (note that a more comprehensive source of information
+ may be found in the glibc-doc package).
+
+Package: konsolekalendar
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 228
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Replaces: korganizer (<< 4:3.2.0)
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkcal2 (>= 4:3.3.0), libkdepim1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: KDE konsole personal organizer
+ To support console-based calendaring with KDE, the konsolekalendar
+ complements the KDE KOrganizer with an according frontend to manage
+ appointments and your schedule on a text-based console.
+ .
+ This package is part of the official KDE pim module.
+
+Package: xserver-xfree86
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 15480
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xserver-common (<< 4.0), libxfont-xtt
+Provides: xserver
+Depends: xserver-common (>= 4.3.0.dfsg.1-5), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), zlib1g (>= 1:1.2.1), debconf (>= 0.5) | debconf-2.0
+Suggests: discover, mdetect, read-edid, libglide2 (>> 2001.01.26)
+Conflicts: libxfont-xtt
+Description: the XFree86 X server
+ The XFree86 X server is an X server for several architectures and operating
+ systems; its architecture was completely redesigned for the 4.0 release, and
+ features a loadable module system in which required modules are loaded on
+ demand by a single server binary as opposed to the video card-specific X
+ servers of the 3.x release.
+ .
+ The XFree86 server supports most modern graphics hardware from most vendors,
+ and supersedes most version 3.x XFree86 X servers. See
+ <http://www.xfree86.org/4.3.0/Status.html> for information on its support for
+ your particular hardware.
+ .
+ If the discover, mdetect and read-edid packages are installed, this package's
+ configuration script will use them to attempt automatic configuration of the
+ X server based on your information returned by your video card, mouse, and
+ monitor.
+ .
+ Note that on the HP-PA, MIPS, and SuperH architectures, the server's
+ loadable module support is not present, and therefore the XFree86 server is a
+ (very large) single binary.
+ .
+ This package suggests the libglide2 package, which is necessary for the
+ XFree86 X server's "glide" video driver to work with 3Dfx Interactive's
+ Voodoo Graphics and Voodoo2 cards. Users of other video cards need not
+ install libglide2.
+
+Package: tetex-base
+Status: install ok installed
+Priority: optional
+Section: tex
+Installed-Size: 53252
+Maintainer: teTeX maintainers <debian-tetex-maint@lists.debian.org>
+Architecture: all
+Version: 2.0.2b-5
+Replaces: texidoc, bibtex, texpsfnt, mfbasfnt, xdvik, dvipsk, mfnfss, latex, texlib, mflib, textfm, kpathsea, latex2e-doc, ltxgraph, csplain, cslatex, cstexfonts, tetex-extra (<< 2.0.2a-1), tetex-doc (<< 1.0.2+20011128), tetex-nonfree, pxfonts, txfonts, mfpic, dvipdfm, texdoctk
+Depends: texinfo (>= 4.0b-1), debconf, ucf (>= 1.02)
+Pre-Depends: dpkg (>= 1.6.8)
+Recommends: tetex-doc (>> 2.0)
+Suggests: tetex-extra
+Conflicts: texidoc, bibtex, texpsfnt, mfbasfnt, xdvik, mfnfss, texlib, mflib, textfm, kpathsea, latex2e-doc, ltxgraph, csplain, cslatex, cstexfonts, tetex-bin (<= 2.0.2-15), xbase (<< 3.3.2.3a-2), tetex-nonfree (<< 1.0.2+20000804-2), pxfonts, txfonts, mfpic, cspsfonts, arabtex (<= 3.10-5)
+Conffiles:
+ /etc/X11/app-defaults/XDvi e7745a36125b187cdecacb7b3e169e1c
+ /etc/texmf/dvipdfm/README.config 2731fe134e122f315d91cae400a6b13e
+ /etc/texmf/dvipdfm/config 8713d15e9e574109c61474a3990b677f
+ /etc/texmf/dvips/config.ps 7402075ae27071bff26ddeb1143ace07
+ /etc/texmf/dvips/context.map 0c886351c178a140f3e2b6e39656ee44
+ /etc/texmf/dvips/config.outline e671960560b7cb570aef7f19af14519a
+ /etc/texmf/dvips/config.dfaxhigh 1c7ef7c0bcc006af534241df17d1e085
+ /etc/texmf/dvips/config.pdf d05ab1e98fcf0d2a4eccd4bb7ad9b0e4
+ /etc/texmf/dvips/config.dfaxlo 25b7f9a41d13d188b75fb6ec63e8fa09
+ /etc/texmf/dvips/config.pk 44348634a3771beda74b4133a8614fa5
+ /etc/texmf/dvips/config.download35 39bb1088ea568d10973f48293c205a8e
+ /etc/texmf/dvips/config.www ba6b447883942b5f0d653d878072321b
+ /etc/texmf/dvips/config.gsftopk e02bc7dd315e819e349c52191837975a
+ /etc/texmf/modes.mf b8ce45445e87ab383cedab6f82b82646
+ /etc/texmf/pdftex/context/original-ams-euler.map 878c01a7de86554eb41ff74a0b752f5f
+ /etc/texmf/pdftex/context/pl0-ams-cmr.map 0bf5e38fde2a67bb4df7cdb11e499175
+ /etc/texmf/pdftex/context/original-vogel-symbol.map e4f07d28e80b93ad2513a3e812541f32
+ /etc/texmf/pdftex/context/original-ams-cmr.map 5912f95748bc1917f14632e48cc223ac
+ /etc/texmf/pdftex/context/original-adobe-euro.map ee2826182cf6f1b95890e8b7d0fc9633
+ /etc/texmf/pdftex/context/original-youngryu-px.map b17cc8cb081cb34cbff9e197c1e97512
+ /etc/texmf/pdftex/context/original-context-symbol.map 7090f11f5bee8f5e9b46841f286d1df9
+ /etc/texmf/pdftex/context/original-youngryu-tx.map 229dbd1882f3378c4dd21e353489f03a
+ /etc/texmf/pdftex/context/il2-ams-cmr.map cc471142a76445139def6ad5b5202ad4
+ /etc/texmf/pdftex/cmttf.map 6b87723795683cdcfd846c2d8d60cb3e
+ /etc/texmf/pdftex/pdftex.cfg 8d08d2723661c86cd45e4a1408a5f923
+ /etc/texmf/latex/color.cfg d77957eef96e7e9a4bdc3d1d24a49df3
+ /etc/texmf/latex/geometry.cfg 10ea5acebcdd8c1f6e50c6059a86fc4b
+ /etc/texmf/latex/lettrine.cfg 980963bc52386638361f704f2316092b
+ /etc/texmf/latex/texsys.cfg 055c0b3967730e2dd75dee66ccde2687
+ /etc/texmf/latex/ltxguide.cfg cc8dbfee5a57b4ae20bb77cc6aeb0e1f
+ /etc/texmf/latex/latex209.cfg c9af399f9747715e21b6e64daa4e5916
+ /etc/texmf/latex/SIunits.cfg e1c35ec7ca1a5a17ac67ecbdabb6990b
+ /etc/texmf/latex/ltxdoc.cfg 50cf6ee9115a007246d2d79e350a8592
+ /etc/texmf/latex/seminar.con e72fce0eed20a2c0ffe505578a517937
+ /etc/texmf/latex/graphics.cfg 3f384c52d267b7f0a50fb71fab57d60f
+ /etc/texmf/latex/latex.ini 09e4f410ade0befce1e0bacf8e272789
+ /etc/texmf/latex/hyperref.cfg 6865c020b50d426d7d3893193933f852
+ /etc/texmf/latex/draftcopy.cfg 339604ed6e259f766281201bc26a3ebf
+ /etc/texmf/latex/fontmath.cfg ee0a90dac1a81d3aee68f1abdbbd5839
+ /etc/texmf/latex/fonttext.cfg 6be6de7b54df7d13a8831138e7f1297b
+ /etc/texmf/latex/preload.cfg a2df76edd8245ce697c998dd4cbf060f
+ /etc/texmf/etex/etex.ini eb7eeca34d4f7c338480ae2f1e95dae6
+ /etc/texmf/etex/language.def e28ea8119d0edaea53f2a55bd5a13bf5
+ /etc/texmf/platex/platex.ini c865212575be3a09cbadb694a803ca55
+ /etc/texmf/platex/language.dat 8e3525fe40ae72bb08f673b30eca1236
+ /etc/texmf/platex/hyphen.cfg 1199fd3dbe752e8eedaca7a5a6df9258
+ /etc/texmf/context/cont-usr.tex 15b671e578d517dc54df1db022c3f412
+ /etc/texmf/context/cont-de.ini c2c75aaddf59e7cd1d14ef3661578eef
+ /etc/texmf/context/cont-cz.ini 984f5ed1242258775b9c6e5e8b219a26
+ /etc/texmf/context/cont-en.ini 5d7064e3adc9acdaf94e37e9bc5c1a29
+ /etc/texmf/context/cont-it.ini 96366065e347eab53a30e72d9a6e4ca0
+ /etc/texmf/context/cont-nl.ini 25cbcc11164d749693de4eea197a9c65
+ /etc/texmf/context/cont-ro.ini a94fd43e68156f57e6bf3ac4a901af14
+ /etc/texmf/context/cont-uk.ini ee6f13cd52623786f7a13c151900ec50
+ /etc/texmf/context/texexec.ini 1497213cfcfded9d1ae2e5546cf55fc4
+ /etc/texmf/cyrplain/cyrtex.cfg 843bd70324caf63d72269dd3afdd8eb1
+ /etc/texmf/cyrplain/cyrtex.ini 40ae6def8399827a80f3736e5fb1cdf5
+ /etc/texmf/cyrplain/cyrtxinf.ini 797f2dae2d06396a4b40b1454609f025
+ /etc/texmf/cyrplain/cyramstx.ini 15d4ba30419b36376851a124619e20ba
+ /etc/texmf/cslatex/fonttext.cfg 1129c41c24cf37f4d2cad6deca949fb1
+ /etc/texmf/cslatex/hyphen.cfg 987e934d95d372902b0e1a81d3dc3802
+ /etc/texdoctk/texdoctk.dat f0612ef9750ce1b649543167c2b486f6
+ /etc/texdoctk/texdocrc 9957008bc9073607c1090f4ce55cc3c0
+Description: Basic library files of teTeX
+ This is a subset of all teTeX library files provided by Debian.
+ It should give you a working basic LaTeX system.
+ .
+ Together with tetex-bin you'll have a minimal installation. For
+ a full installation of teTeX, you should also install tetex-extra.
+
+Package: libdns10
+Status: install ok installed
+Priority: standard
+Section: libs
+Installed-Size: 974
+Maintainer: LaMont Jones <lamont@debian.org>
+Source: bind9
+Version: 1:9.2.2+9.2.3rc2-4
+Replaces: libbind0
+Depends: libc6 (>= 2.3.2-1), libisc7, libssl0.9.7
+Conflicts: libbind0
+Description: DNS Shared Library used by BIND
+ The Berkeley Internet Name Domain (BIND) implements an Internet domain
+ name server. BIND is the most widely-used name server software on the
+ Internet, and is supported by the Internet Software Consortium, www.isc.org.
+ .
+ This package delivers the libdns shared library used by BIND's daemons and
+ clients.
+
+Package: libdns11
+Status: install ok installed
+Priority: standard
+Section: libs
+Installed-Size: 1128
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Source: bind9
+Version: 1:9.2.3+9.2.4-rc7-1
+Replaces: libbind0
+Depends: libc6 (>= 2.3.2.ds1-4), libisc7, libssl0.9.7
+Conflicts: libbind0
+Description: DNS Shared Library used by BIND
+ The Berkeley Internet Name Domain (BIND) implements an Internet domain
+ name server. BIND is the most widely-used name server software on the
+ Internet, and is supported by the Internet Software Consortium, www.isc.org.
+ .
+ This package delivers the libdns shared library used by BIND's daemons and
+ clients.
+
+Package: gcc-3.3-doc
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 3720
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: all
+Source: gcc-3.3
+Version: 1:3.3.4-11
+Replaces: gcc (<= 2.7.2.3-4.3), gcc-docs (<< 2.95.2)
+Depends: gcc-3.3-base
+Conflicts: gcc-docs (<< 2.95.2)
+Description: Documentation for the GNU compilers (gcc, gobjc, g++)
+ Documentation for the GNU compilers in info format.
+
+Package: libgnome32
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 156
+Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Source: gnome-libs
+Version: 1.4.2-19
+Config-Version: 1.4.2-19
+Depends: gnome-libs-data (= 1.4.2-19), libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libdb3 (>= 3.2.9-20), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libglib1.2 (>= 1.2.0), libpopt0 (>= 1.7), zlib1g (>= 1:1.2.1)
+Conflicts: libgnome0, libgnome31
+Description: The GNOME libraries
+ GNOME is a project to build a complete, user-friendly desktop based
+ entirely on free software.
+ .
+ This package contains the shared library for the base GNOME
+ library functions.
+
+Package: mtools
+Status: install ok installed
+Priority: standard
+Section: otherosfs
+Installed-Size: 420
+Maintainer: Luis Bustamante <luferbu@fluidsignal.com>
+Version: 3.9.9-2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: floppyd
+Conffiles:
+ /etc/mtools.conf 659bb18a4490dcb17ad0b0139c2fb654
+Description: Tools for manipulating MSDOS files
+ Mtools is a collection of utilities to access MS-DOS disks from Unix
+ without mounting them. It supports Win'95 style long file names, OS/2
+ Xdf disks, ZIP/JAZ disks and 2m disks (store up to 1992kB on a high
+ density 3 1/2 disk).
+ .
+ Also included in this package are commands to eject and manipulate
+ the write/password protection control of Zip disks.
+
+Package: filters
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 384
+Maintainer: Joey Hess <joeyh@debian.org>
+Version: 2.33
+Replaces: filters-nonfree
+Depends: libc6 (>= 2.3.1-1)
+Conflicts: filters-nonfree
+Description: a collection of filters, including B1FF and the Swedish Chef
+ A collection of filters to do all sorts of strange things to text.
+ This includes such favorites as B1FF and the Swedish Chef, and a wide
+ range of others.
+
+Package: kmplot
+Status: install ok installed
+Priority: optional
+Section: math
+Installed-Size: 788
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeedu
+Version: 4:3.2.3-2
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.4-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: kdeedu-data (>= 4:3.2.3-2)
+Suggests: khelpcenter, kdeedu-doc-html
+Description: mathematical function plotter for KDE
+ KmPlot is a mathematical function plotter for KDE. It has built in a
+ powerful parser. You can plot different functions simultaneously and
+ combine their function terms to build new functions.
+ .
+ KmPlot supports parametric functions and functions in polar
+ coordinates. Several grid modes are supported. Plots may be printed
+ with high precision in the correct scale.
+ .
+ This package is part of the official KDE edutainment module.
+
+Package: pcmcia-modules-2.4.18-bf2.4
+Status: purge ok not-installed
+Priority: extra
+Section: admin
+
+Package: kdeaddons-kfile-plugins
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 284
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeaddons
+Version: 4:3.2.3-2
+Replaces: renamedlg-plugins (<= 4:3.2.0-1)
+Provides: renamedlg-plugins
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Conflicts: renamedlg-plugins (<= 4:3.2.0-1)
+Description: KDE file dialog plugins for text files and folders
+ This is a collection of plugins for the KDE file dialog. These plugins
+ extend the file dialog to offer advanced meta-information for text,
+ HTML and desktop files, as well as for folders.
+ .
+ This package also includes plugins for the KDE file rename dialog,
+ allowing a user to more easily decide what to do when faced with a
+ decision regarding conflicting filenames. Rename dialog plugins are
+ provided for audio and image files.
+ .
+ This package is part of the KDE add-ons module.
+
+Package: libsnmp5
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 2644
+Maintainer: Jochen Friedrich <jochen@scram.de>
+Architecture: i386
+Source: net-snmp
+Version: 5.1.2-4
+Replaces: snmp (<= 3.6.2-3), snmpd (<= 4.1.2-1)
+Depends: libsnmp-base (>= 5.1.2-4), libc6 (>= 2.3.2.ds1-4), libssl0.9.7, libwrap0
+Description: NET SNMP (Simple Network Management Protocol) Library
+ The Simple Network Management Protocol (SNMP) provides a framework
+ for the exchange of management information between agents (servers)
+ and clients. The NET SNMP library contains common functions for the
+ construction, sending, receiving, decoding, and manipulation of the
+ SNMP requests and responses.
+
+Package: kpager
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 196
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0), kdebase-doc (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE Desktop Pager
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KDE Desktop Pager
+ .
+ This package is part of the official KDE base module.
+
+Package: python-kde3
+Status: install ok installed
+Priority: optional
+Section: python
+Installed-Size: 12
+Maintainer: Ricardo Javier Cardenes Medina <rcardenes@debian.org>
+Architecture: all
+Version: 3.11.3-1
+Depends: python (>= 2.3), python (<< 2.4), python2.3-kde3
+Description: KDE3 bindings for Python
+ Python binding module that provides wide access to the KDE3 API,
+ also known as PyKDE. Using this, you'll get (for example) classes
+ from kio, kjs, khtml and kprint.
+ .
+ This version is dependency package, which installs the modules for
+ Debian's default Python version.
+
+Package: kpaint
+Status: deinstall ok config-files
+Priority: optional
+Section: graphics
+Installed-Size: 296
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegraphics
+Version: 4:3.2.2-1
+Config-Version: 4:3.2.2-1
+Depends: kdelibs4 (>= 4:3.2.2), libart-2.0-2, libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: A Simple Paint Program for KDE
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KPaint is a very simple paint program for KDE.
+ .
+ This package is part of the official KDE graphics module.
+
+Package: libgnomeui-0
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 900
+Maintainer: Ondřej Surý <ondrej@debian.org>
+Architecture: i386
+Source: libgnomeui
+Version: 2.6.1.1-3
+Config-Version: 2.6.1.1-3
+Depends: libart-2.0-2 (>= 2.3.16), libatk1.0-0 (>= 1.6.0), libaudiofile0 (>= 0.2.3-4), libbonobo2-0 (>= 2.6.2), libbonoboui2-0 (>= 2.5.4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libgconf2-4 (>= 2.6.1), libgcrypt7, libglade2-0 (>= 1:2.3.6), libglib2.0-0 (>= 2.4.1), libgnome-keyring0 (>= 0.2.1), libgnome2-0 (>= 2.6.0), libgnomecanvas2-0 (>= 2.6.0), libgnomevfs2-0 (>= 2.6.0), libgnutls10 (>= 1.0.0-0), libgpg-error0 (>= 0.7), libgtk2.0-0 (>= 2.4.3), libice6 | xlibs (>> 4.1.0), libjpeg62, liborbit2 (>= 1:2.10.0), libpango1.0-0 (>= 1.4.0), libpopt0 (>= 1.7), libsm6 | xlibs (>> 4.1.0), libtasn1-2 (>= 0.2.7), libx11-6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.10), zlib1g (>= 1:1.2.1), libgnomeui-common (= 2.6.1.1-3)
+Suggests: gnome-icon-theme
+Description: The GNOME 2 libraries (User Interface) - runtime files
+ This package contains the shared library for the base GNOME library
+ functions (User Interface functions).
+
+Package: libldap2
+Status: install ok installed
+Priority: important
+Section: libs
+Installed-Size: 692
+Maintainer: Torsten Landschoff <torsten@debian.org>
+Architecture: i386
+Source: openldap2
+Version: 2.1.30-3
+Replaces: libopenldap-runtime, libldap2-tls
+Provides: libldap2-tls
+Depends: libc6 (>= 2.3.2.ds1-4), libgnutls11 (>= 1.0.16), libsasl2 (>= 2.1.18)
+Conflicts: libldap2-tls, ldap-utils (<= 2.1.23-1)
+Conffiles:
+ /etc/ldap/ldap.conf 5f104fc31ae3b89e5958d2ce2d5f3ddd
+Description: OpenLDAP libraries
+ These are the run-time libraries for the OpenLDAP (Lightweight Directory
+ Access Protocol) servers and clients.
+
+Package: libglut3-dev
+Status: purge ok not-installed
+Priority: optional
+Section: devel
+
+Package: mtr-tiny
+Status: install ok installed
+Priority: standard
+Section: net
+Installed-Size: 96
+Maintainer: Robert Woodcock <rcw@debian.org>
+Architecture: i386
+Source: mtr
+Version: 0.63-1
+Replaces: mtr
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1)
+Conflicts: suidmanager (<< 0.50), mtr
+Description: Full screen ncurses traceroute tool
+ mtr combines the functionality of the 'traceroute' and 'ping' programs
+ in a single network diagnostic tool.
+ .
+ As mtr starts, it investigates the network connection between the host
+ mtr runs on and a user-specified destination host. After it
+ determines the address of each network hop between the machines,
+ it sends a sequence ICMP ECHO requests to each one to determine the
+ quality of the link to each machine. As it does this, it prints
+ running statistics about each machine.
+ .
+ mtr-tiny is compiled without support for X and conserves disk space.
+
+Package: nxproxy
+Status: install ok installed
+Priority: extra
+Section: x11
+Installed-Size: 44
+Maintainer: Peter Rockai (mornfall) <mornfall@danill.sk>
+Architecture: i386
+Source: nx
+Version: 1.3.99.2-0
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1), libnxcompext0, libnxcomp0
+Description: NoMachine NX - X protocol compression proxy
+ NoMachine NX is the next-generation X compression and roundtrip suppression
+ scheme. It can operate remote X11 sessions over 56k modem dialup links or
+ anything better.
+ .
+ The nxproxy runs on the X server side of the wire and thus accompanies
+ the nxagent running on X client side. It provides the protocol compression
+ and caching part of the NX scheme.
+ .
+ For easy to use NX tunnel look at nxtunnel-(client|server) packages.
+
+Package: xpilot
+Status: purge ok not-installed
+Priority: optional
+Section: games
+
+Package: libpopt-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 120
+Maintainer: Paul Martin <pm@debian.org>
+Architecture: i386
+Source: popt
+Version: 1.7-5
+Replaces: popt
+Depends: libc6-dev | libc-dev, libpopt0 (= 1.7-5)
+Conflicts: popt
+Description: lib for parsing cmdline parameters - development files
+ Popt was heavily influenced by the getopt() and getopt_long() functions,
+ but it allows more powerful argument expansion. It can parse arbitrary
+ argv[] style arrays and automatically set variables based on command
+ line arguments. It also allows command line arguments to be aliased via
+ configuration files and includes utility functions for parsing arbitrary
+ strings into argv[] arrays using shell-like rules.
+ .
+ This package contains the popt static library and header file.
+
+Package: bc
+Status: install ok installed
+Priority: standard
+Section: math
+Installed-Size: 184
+Maintainer: Dirk Eddelbuettel <edd@debian.org>
+Architecture: i386
+Version: 1.06-15
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), libreadline4 (>= 4.3-1)
+Description: The GNU bc arbitrary precision calculator language
+ GNU bc is an interactive algebraic language with arbitrary precision which
+ follows the POSIX 1003.2 draft standard, with several extensions including
+ multi-character variable names, an `else' statement and full Boolean
+ expressions. GNU bc does not require the separate GNU dc program.
+
+Package: bb
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 1832
+Maintainer: Uwe Hermann <uwe@debian.org>
+Version: 1.3rc1-5
+Depends: aalib1 (>= 1.2), libc6 (>= 2.3.2-1), libmikmod2 (>= 3.1.10), slang1 (>> 1.4.4-7.1), xlibs (>> 4.1.0)
+Description: An ASCII-art demo based on AAlib
+ This package contains a 'high quality audio-visual demonstration'
+ of ASCCI-art using AAlib, a portable ASCII-art graphics library.
+ This demonstration can be displayed in a text- or X11-terminal.
+
+Package: cdda2wav
+Status: install ok installed
+Priority: extra
+Section: sound
+Installed-Size: 324
+Maintainer: Joerg Jaspert <joerg@debian.org>
+Architecture: i386
+Source: cdrtools
+Version: 4:2.0+a38-1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: vorbis-tools, cdrtools-doc
+Conflicts: xcdroast (<< 0.98+0alpha11)
+Description: Creates WAV files from audio CDs
+ cdda2wav lets you digitally copy audio tracks from a CD-ROM, avoiding
+ the distortion that is introduced when recording via a sound card. Data
+ can be dumped into raw (cdr), wav or sun format sound files. Options control
+ the recording format (stereo/mono; 8/16 bits; sampling rate, etc).
+ .
+ Please install cdrtools-doc if you want most of the documentation and
+ Readme-files.
+
+Package: libdigest-sha1-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 108
+Maintainer: Michael Alan Dorman <mdorman@debian.org>
+Version: 2.01-0.1
+Depends: perlapi-5.8.0, perl (>= 5.8.0-13), libc6 (>= 2.3.1-1)
+Conflicts: libdigest-md5-perl (<< 2.13)
+Description: NIST SHA-1 message digest algorithm
+ The Digest::SHA1 module allows you to use the NIST SHA-1 message
+ digest algorithm from within Perl programs. The algorithm takes as
+ input a message of arbitrary length and produces as output a 160-bit
+ "fingerprint" or "message digest" of the input.
+
+Package: libcurses-ruby1.8
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 200
+Maintainer: akira yamada <akira@debian.org>
+Architecture: i386
+Source: ruby1.8
+Version: 1.8.1+1.8.2pre2-3
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), libruby1.8 (>= 1.8.1+1.8.2pre2-3)
+Description: Curses interface for Ruby 1.8
+ This package provides an extension library "curses" for Ruby 1.8.
+ The library makes Ruby programs to be able to use functions of the
+ curses library.
+
+Package: libgdbmg1
+Status: purge ok not-installed
+Priority: standard
+Section: libs
+
+Package: netbase
+Status: install ok installed
+Priority: important
+Section: base
+Installed-Size: 176
+Maintainer: Anthony Towns <ajt@debian.org>
+Architecture: all
+Version: 4.18
+Depends: ifupdown, netkit-inetd, tcpd, iputils-ping | ping, debconf
+Conflicts: xinetd (<= 2.2.1-8), netstd (<< 3.00), nfs-common (<< 1:0.3.2-1), nfs-user-server (<< 2.2beta47-9), nis (<= 3.6-2), rstatd (<= 3.03-3), rwalld (<= 0.16-1), rusersd (<= 0.17-1), ugidd (<< 2.2beta47-9)
+Conffiles:
+ /etc/protocols e1b2c07d83ff5322a6353945a5c4b7e6
+ /etc/init.d/networking a27fb790f077e3b752bf7008274ad3ff
+ /etc/services b2375cc046b2f21c62f03e52a0a8c777
+ /etc/rpc 3675fb19f5e59c1c4973177ee946d645
+Description: Basic TCP/IP networking system
+ This package provides the necessary infrastructure for basic TCP/IP based
+ networking.
+
+Package: purity
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 164
+Maintainer: Duncan Findlay <duncf@debian.org>
+Version: 1-17
+Depends: libc6 (>= 2.2.5-13)
+Description: Automated purity testing software.
+ For many years now, the purity test, (in various forms)
+ has been widely available on the net.
+ This package provides an automated way of taking the test.
+ .
+ Purity tests are an amusing way to see how much of a nerd or
+ a hacker you are. More tests are available in the purity-off
+ package.
+
+Package: libmagic1
+Status: install ok installed
+Priority: standard
+Section: libs
+Installed-Size: 1255
+Maintainer: Michael Piefel <piefel@debian.org>
+Architecture: i386
+Source: file
+Version: 4.10-3
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1)
+Suggests: file
+Conflicts: file (<= 4)
+Description: File type determination library using "magic" numbers
+ This library can be used to classify files according to magic number
+ tests. It implements the core functionality of the file command.
+
+Package: gtk-engines-thingeramik-data
+Status: purge ok not-installed
+Priority: optional
+Section: graphics
+
+Package: transfig
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 944
+Maintainer: Roland Rosenfeld <roland@debian.org>
+Architecture: i386
+Version: 1:3.2.5-alpha5-1
+Depends: libc6 (>= 2.3.2.ds1-4), libpng12-0 (>= 1.2.5.0-4), libx11-6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Recommends: netpbm (>= 2:9.10), gs
+Suggests: xfig, netpbm-nonfree (>= 2:9.10)
+Description: Utilities for converting XFig figure files
+ This packages contains utilities (mainly fig2dev) to handle XFig
+ (Facility for Interactive Generation of figures) files.
+ .
+ It can convert them to box, cgm, epic, eepic, eepicemu, emf, eps,
+ gif, ibmgl, jpeg, latex, map (HTML image map), mf (MetaFont), mp
+ (MetaPost), mmp (Multi-Meta- Post), pcx, pdf, pdftex, pdftex_t, pic,
+ pictex, png, ppm, ps, pstex, pstex_t, ptk (Perl/tk), sld (AutoCad
+ slide format), textyl, tiff, tk (tcl/tk), tpic, xbm and xpm.
+ .
+ Note: transfig requires netpbm-nonfree be installed for gif support.
+
+Package: gnome-mime-data
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 3296
+Maintainer: Takuo KITAME <kitame@debian.org>
+Version: 2.4.1-2
+Replaces: libgnome-vfs0 (<< 1.0.3-3), libgnome-vfs-common (<< 1.0.4-3)
+Conflicts: libgnome-vfs0 (<< 1.0.3-3), libgnome-vfs-common (<< 1.0.4-3)
+Conffiles:
+ /etc/gnome-vfs-mime-magic 1044efb9d51e31d82b537ffa40ee2e7b
+Description: base MIME and Application database for GNOME.
+ This module contains the base MIME and Application database for GNOME.
+ It is meant to be accessed through the MIME functions in GnomeVFS.
+
+Package: flashkard
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 432
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeedu
+Version: 4:3.2.3-2
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.4-1), libice6 | xlibs (>> 4.1.0), libkdeedu1 (>= 4:3.1.95-0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: kdeedu-data (>= 4:3.2.3-2)
+Suggests: khelpcenter, kdeedu-doc-html
+Description: flash card learning tool for KDE
+ FlashKard is based on a rather old learning method used to teach
+ children facts. The teacher will present a number of cards with
+ questions on it, on which the pupil will write down the answers on the
+ back of the cards, which will be checked later on by the teacher. The
+ cards with the correct answers will be removed from the pile and the
+ incorrectly answered questions will be repeated over and over again,
+ until the answer is "drilled" into the memory.
+ .
+ FlashKard is an easy to use application for children who can read and
+ write words using a keyboard. Depending on the level of questions,
+ FlashKard is suitable for adults as well, for example to learn
+ languages. You really can "drill" words into your brain over and over
+ again. The computer is the most patient teacher you ever can have.
+ .
+ This package is part of the official KDE edutainment module.
+
+Package: kapture
+Status: purge ok not-installed
+Priority: optional
+Section: admin
+Architecture: i386
+
+Package: kformula
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 1160
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: koffice
+Version: 1:1.3.2-2
+Replaces: koffice-libs (<< 1:1.1-20010404-0)
+Depends: kdelibs4 (>= 4:3.2.3), koffice-libs (>= 1:1.3.0-0), libart-2.0-2 (>= 2.3.16), libaspell15 (>= 0.50.5), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), latex-xft-fonts
+Suggests: khelpcenter, koffice-doc-html
+Description: a formula editor for the KDE Office Suite
+ KFormula is a formula editor that provides the basic input facilities
+ and the support functionality expected of a KOffice application.
+ .
+ Features include easy Greek letter insertion, intelligent cursor
+ movement, advanced syntax highlighting, multi-level undo support and
+ LaTeX export.
+ .
+ This package is part of the KDE Office Suite.
+
+Package: debpool
+Status: install ok installed
+Priority: extra
+Section: devel
+Installed-Size: 240
+Maintainer: Joel Baker <fenton@debian.org>
+Architecture: all
+Version: 0.1.3
+Depends: perl
+Recommends: gnupg, libdigest-md5-perl, libdigest-sha1-perl, libproc-daemon-perl
+Conffiles:
+ /etc/debpool/Config.pm ffd35387babf934ebcf668d859fbd84a
+Description: pool-based Debian package archiver
+ DebPool is a package archive maintenance utility designed with a goal of
+ removing any dependency on code not shipped as part of the core Debian
+ system.
+ .
+ It is capable of all of the following:
+ * Tracking multiple distributions (however, it does *not* include
+ unstable -> testing promotion scripts).
+ * Generating Release files (requires libdigest-{md5,sha1}-perl)
+ * Verifying package signatures (requires gnupg).
+ * Signing release files (requires Release files and gnupg).
+ * Running in single-pass or daemon modes.
+ .
+ DebPool is intended to be a lightweight replacement for the full Debian
+ archival scripts, in the tradition of debarchive and mini-dinstall, but
+ using a pool layout and avoiding external dependencies.
+
+Package: whiptail
+Status: install ok installed
+Priority: standard
+Section: base
+Installed-Size: 96
+Maintainer: Alastair McKinstry <mckinstry@debian.org>
+Architecture: i386
+Source: newt
+Version: 0.51.6-15
+Replaces: newt0.10, newt0.21 (<< 0.21-4), whiptail-utf8
+Provides: whiptail-provider, whiptail-utf8
+Depends: libc6 (>= 2.3.2.ds1-4), libnewt0.51, libpopt0 (>= 1.7), slang1a-utf8 (>> 1.4.9dbs-4), libnewt0.51 (= 0.51.6-15)
+Conflicts: whiptail-provider
+Description: Displays user-friendly dialog boxes from shell scripts
+ Whiptail is a "dialog" replacement using newt instead of ncurses. It
+ provides a method of displaying several different types of dialog boxes
+ from shell scripts. This allows a developer of a script to interact with
+ the user in a much friendlier manner.
+
+Package: libgsm1
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+Architecture: i386
+
+Package: libkonq4
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 664
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase-libs (<< 4:3.0.0), konqueror (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libarts1 (>= 1.3.0), libasound2 (>> 1.0.5), libaudio2, libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libfam0c102, libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), libidn11, libjack0.80.0-0 (>= 0.98.1), libmad0 (>= 0.15.1b), libogg0 (>= 1.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Conflicts: kdebase-libs (<< 4:3.0.0)
+Description: Core libraries for KDE's file manager
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This library is used by several KDE 3 apps include konqueror and kdesktop.
+ .
+ This package is part of the official KDE base module.
+
+Package: kdelirc
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 780
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeutils
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE infrared control
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ This is a frontend for the LIRC suite to use infrared devices with KDE.
+ .
+ This package is part of the official KDE utils module.
+
+Package: libsdl1.2debian-arts
+Status: install ok installed
+Priority: extra
+Section: libs
+Installed-Size: 452
+Maintainer: Debian SDL maintainers <mrd-sdl@debian.org>
+Architecture: i386
+Source: libsdl1.2
+Version: 1.2.7-10
+Replaces: libsdl1.2-all, libsdl1.2-esd, libsdl1.2-oss, libsdl1.2-arts, libsdl1.2 (<< 1.2.1-1), libsdl1.2debian-all, libsdl1.2debian-alsa, libsdl1.2debian-esd, libsdl1.2debian-oss
+Provides: libsdl1.2-arts
+Depends: libc6 (>= 2.3.2.ds1-4), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0)
+Conflicts: libsdl1.2-all, libsdl1.2-esd, libsdl1.2-oss, libsdl1.2-arts, libsdl1.2 (<< 1.2.1-1), libsdl1.2debian-all, libsdl1.2debian-alsa, libsdl1.2debian-esd, libsdl1.2debian-oss
+Description: Simple DirectMedia Layer (with X11 and aRts options)
+ SDL is a library that allows programs portable low level access to a video
+ framebuffer, audio output, mouse, and keyboard.
+ .
+ This version of SDL is compiled with X11 graphics and aRts sound.
+
+Package: adonthell-data
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 11360
+Maintainer: Gordon Fraser <gordon@debian.org>
+Architecture: all
+Version: 0.3.3-3
+Config-Version: 0.3.3-3
+Depends: adonthell (>= 0.3.3.cvs.20031022), adonthell (<< 0.4)
+Description: Data files needed by Adonthell
+ This is the official game for Adonthell 0.3
+ .
+ As a loyal servant of the elven Lady Silverhair, you arrive at the remote
+ trading post of Waste's Edge, where she is engaged in negotiations with the
+ dwarish merchant Bjarn Fingolson. But not all is well at Waste's Edge, and
+ soon you are confronted with circumstances that are about to destroy your
+ mistress' high reputation. And you are the only one to avert this ...
+ .
+ Homepage: http://adonthell.linuxgames.com/
+
+Package: ldapkio
+Status: purge ok not-installed
+Priority: extra
+Section: checkinstall
+
+Package: dbus-1
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 748
+Maintainer: Dbus Maintainance Team <debian-dbus@fooishbar.org>
+Architecture: i386
+Source: dbus
+Version: 0.22-1.0.1
+Replaces: libdbus0
+Depends: libc6 (>= 2.3.2.ds1-4), libexpat1 (>= 1.95.6), adduser
+Conflicts: libdbus0
+Conffiles:
+ /etc/default/dbus-1 52742f40d19793d0a404e8f0797eab9d
+ /etc/init.d/dbus-1 27b774700bb421b86912d4c0f16d8de7
+ /etc/dbus-1/session.conf 285e688d9bd876a0735dad2963a4673d
+ /etc/dbus-1/system.conf aa2bbf2c4b4b0f9cc197070a5ef04a5d
+Description: simple interprocess messaging system
+ D-BUS is a message bus, used for sending messages between
+ applications. Conceptually, it fits somewhere in between raw sockets
+ and CORBA in terms of complexity.
+ .
+ D-BUS supports broadcast messages, asynchronous messages (thus
+ decreasing latency), authentication, and more. It is designed to be
+ low-overhead; messages are sent using a binary protocol, not using
+ XML. D-BUS also supports a method call mapping for its messages, but
+ it is not required; this makes using the system quite simple.
+ .
+ D-BUS is still under heavy development, but is expected to be widely
+ used. It comes with several interfaces, including GLib. See the
+ description of dbus-glib-1 for more information about those.
+
+Package: libpisock++0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 84
+Maintainer: Ludovic Rousseau <rousseau@debian.org>
+Architecture: i386
+Source: pilot-link
+Version: 0.11.8-10
+Replaces: libpisock5 (<= 0.10.99-4)
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), libpisock8, libreadline4 (>= 4.3-1), libstdc++5 (>= 1:3.3.3-1)
+Conflicts: libpisock5 (<= 0.10.99-4)
+Description: C++ library for communicating with a PalmOS PDA
+ libpisock++0 is a library, which provides C++ programs with means of
+ communicating directly with a PalmOS device.
+ .
+ Homepage: http://www.pilot-link.org/
+
+Package: hfsutils
+Status: install ok installed
+Priority: optional
+Section: otherosfs
+Installed-Size: 189
+Maintainer: Rob Browning <rlb@defaultvalue.org>
+Architecture: i386
+Version: 3.2.6-7
+Depends: libc6 (>= 2.2.3-1)
+Suggests: hfsutils-tcltk
+Description: Tools for reading and writing Macintosh volumes.
+ HFS is the native Macintosh filesystem format.
+ .
+ This package contains several command-line utilities for
+ reading and writing Macintosh HFS-formatted media such as
+ floppy disks, CD-ROMs, and hard disks.
+
+Package: libaspell15
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 920
+Maintainer: Brian Nelson <pyro@debian.org>
+Architecture: i386
+Source: aspell
+Version: 0.50.5-3
+Replaces: libaspell0, libaspell1, libaspell2, libaspell3, libaspell4, libaspell5, libaspell6, libaspell8, libaspell10, libaspell11, libpspell2, libpspell4, libpspell15, aspell-bin (<< 0.50.3-4), aspell-bg (<= 3.0-1)
+Provides: libaspell11
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libstdc++5 (>= 1:3.3.3-1)
+Recommends: aspell-en | aspell-dictionary
+Suggests: aspell-bin
+Conflicts: libaspell0, libaspell1, libaspell2, libaspell3, libaspell4, libaspell5, libaspell6, libaspell8, libaspell10, libaspell11, libpspell2, libpspell4, libpspell4c102, aspell-en (<< 0.50), aspell-da (<= 1.4.22-2.3), aspell-de (<= 0.1-3-3), aspell-es (<= 0.0-3-3), aspell-fo (<= 0.1.16-2.3), aspell-fr (<= 0.1-3-4), aspell-nl (<= 1:0.1e-26), aspell-no (<= 2.0-9), aspell-pt (<= 0.0-3-4), aspell-bg (<= 2.0-2.2)
+Description: The GNU Aspell spell-checker runtime toolkits
+ These are the runtime parts of the Aspell and pspell spell-checking
+ toolkits, needed by applications that use the toolkits at runtime.
+ .
+ For a standalone spell-checker, install aspell-bin as well.
+
+Package: libelfg0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 172
+Maintainer: Alex Pennace <alex@pennace.org>
+Architecture: i386
+Source: libelf
+Version: 0.8.5-1
+Depends: libc6 (>= 2.2.4-4)
+Conflicts: libelf, libelf0 (<= 0.6.4-5)
+Description: an ELF object file access library
+ The elf library provides routines to access, and manipulate, Elf object
+ files. It is still not complete, but is required for a number of programs,
+ such as Eli (a state of the art compiler generation system), and Elk (the
+ Extension Language Kit - an implementation of the Scheme programming
+ language.)
+ .
+ This shared library may be needed by pre-packaged programs. To compile
+ programs with this library, you will need to install the libelfg0-dev
+ package as well.
+
+Package: kpersonalizer
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 624
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: KDE Personalizer
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KDE Personalizer is a wizard to configure the KDE gui.
+ .
+ This package is part of the official KDE base module.
+
+Package: libpam-modules
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 476
+Maintainer: Sam Hartman <hartmans@debian.org>
+Architecture: i386
+Source: pam
+Version: 0.76-22
+Replaces: libpam0g-util
+Provides: libpam-motd, libpam-mkhomedir
+Depends: libc6 (>= 2.3.2.ds1-4), libcap1, libdb3 (>= 3.2.9-20), libpam0g (>= 0.76)
+Conflicts: libpam0g-modules (= 0.66-1), libpam-motd, libpam-mkhomedir, suidmanager (<< 0.50)
+Conffiles:
+ /etc/security/access.conf 7978ff72bf45c60b1055c32eec4b0441
+ /etc/security/pam_env.conf 0b41577083f3c29d0dcef8cafce3242e
+ /etc/security/group.conf 0abd9d08c21f37578c7e04b9c2bd5526
+ /etc/security/limits.conf b325f3dd52897a4105a75649f15703c2
+ /etc/security/time.conf 62a54a799a700e506c24a22ad768ca64
+Description: Pluggable Authentication Modules for PAM
+ This package completes the set of modules for PAM. It includes the
+ pam_unix_*.so module as well as some specialty modules.
+
+Package: kdeedu-data
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 156
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: all
+Source: kdeedu
+Version: 4:3.2.3-2
+Suggests: kdeedu
+Description: shared data for KDE educational applications
+ This package contains shared data necessary for running the educational
+ applications provided with KDE (the K Desktop Environment).
+ .
+ This package is part of the official KDE edutainment module.
+
+Package: iftop
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 96
+Maintainer: christophe barbe <christophe@debian.org>
+Architecture: i386
+Version: 0.16-1
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), libpcap0.7
+Description: Display bandwidth usage on an interface
+ iftop does for network usage what top(1) does for CPU usage. It
+ listens to network traffic on a named interface and displays a table
+ of current bandwidth usage by pairs of hosts. Handy for answering the
+ question "why is our ADSL link so slow?".
+
+Package: kiconedit
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 556
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegraphics
+Version: 4:3.3.0-1.1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: An icon editor for creating KDE icons
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KIconedit is an icon editor for creating KDE and other icons
+ .
+ This package is part of the official KDE graphics module.
+
+Package: koshell
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 236
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: koffice
+Version: 1:1.3.2-2
+Replaces: koffice-libs (<< 1:1.1-20010404-0)
+Depends: kdelibs4 (>= 4:3.2.3), koffice-libs (>= 1:1.3.0-0), libart-2.0-2 (>= 2.3.16), libaspell15 (>= 0.50.5), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: koffice
+Suggests: khelpcenter, koffice-doc-html
+Description: the KDE Office Suite workspace
+ The KOffice workspace is a desktop with easy one-click launchers for
+ KOffice applications.
+ .
+ This package is part of the KDE Office Suite.
+
+Package: libgnomecanvas2-0
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 236
+Maintainer: Ondřej Surý <ondrej@debian.org>
+Architecture: i386
+Source: libgnomecanvas
+Version: 2.6.1.1-2
+Config-Version: 2.6.1.1-2
+Depends: libart-2.0-2 (>= 2.3.16), libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libglade2-0 (>= 1:2.3.6), libglib2.0-0 (>= 2.4.1), libgtk2.0-0 (>= 2.4.1), libpango1.0-0 (>= 1.4.0), libxml2 (>= 2.6.10), zlib1g (>= 1:1.2.1), libgnomecanvas2-common (= 2.6.1.1-2)
+Description: A powerful object-oriented display - runtime files
+ The canvas widget is a powerful and extensible object-oriented display
+ engine. A GnomeCanvasItem is a GtkObject representing some element of the
+ display, such as an image, a rectangle, an ellipse, or some text. You can
+ refer to this architecture as structured graphics; the canvas lets you deal
+ with graphics in terms of items, rather than an undifferentiated grid of
+ pixels.
+
+Package: guile-1.6
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 156
+Maintainer: Rob Browning <rlb@defaultvalue.org>
+Version: 1.6.4-4
+Provides: guile
+Depends: guile-1.6-libs, libc6 (>= 2.3.2-1), libguile-ltdl-1, libqthreads-12
+Suggests: guile-1.6-doc
+Conflicts: libguile-dev (<= 1:1.4-24)
+Description: The GNU extension language and Scheme interpreter
+ Guile is a Scheme implementation designed for real world programming,
+ providing a rich Unix interface, a module system, an interpreter, and
+ many extension languages. Guile can be used as a standard #! style
+ interpreter, via #!/usr/bin/guile, or as an extension language for
+ other applications via libguile.
+
+Package: arkrpg
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 168
+Maintainer: Marc Dequènes (Duck) <Duck@DuckCorp.org>
+Architecture: i386
+Version: 0.1.4b-4
+Config-Version: 0.1.4b-4
+Depends: libarkrpg (>= 0.1.4b), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libjpeg62, libpng12-0 (>= 1.2.5.0-4), libsdl-mixer1.2 (>= 1.2.5), libsdl1.2debian (>> 1.2.7-0), libstdc++5 (>= 1:3.3.4-1), xlibmesa-gl | libgl1, xlibmesa-glu | libglu1, zlib1g (>= 1:1.2.1)
+Recommends: arkhart
+Suggests: worlded
+Conffiles:
+ /etc/ark/arkfactories.cfg 0bc1a47da3b3343dce069e18397513ef
+ /etc/ark/arkrenderer.cfg dbe059a38997fb23da51505e1f141612
+Description: roleplaying kernel
+ Arkrpg is a powerful and flexible framework to create
+ (networked/single player) role playing games, without having to write a
+ single line of C++. All the user has to do is to create game data (models,
+ textures, world), and define the behaviour NPCs, in Lua. The engine contains
+ a full outdoor 3D engine, with support for skeletal animation, and
+ triangle-accurate collision detection. It also contains tools to create world
+ and quests, and loaders for the most common low-polygon 3D formats.
+ .
+ This package provides binaries needed to use the kernel.
+
+Package: libdevmapper-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 33
+Maintainer: Patrick Caulfield <patrick@debian.org>
+Architecture: i386
+Source: devmapper
+Version: 2:1.00.19-2
+Depends: libdevmapper1.00 (= 2:1.00.19-2), libc6-dev
+Description: The Linux Kernel Device Mapper header files
+ The Linux Kernel Device Mapper is the LVM (Linux Logical Volume Management)
+ Team's implementation of a minimalistic kernel-space driver that handles
+ volume management, while keeping knowledge of the underlying device layout
+ in user-space. This makes it useful for not only LVM, but EVMS, software
+ raid, and other drivers that create "virtual" block devices.
+ .
+ This package contains the (user-space) header files for accessing the
+ device-mapper; it allow usage of the device-mapper through a clean,
+ consistent interface (as opposed to through kernel ioctls).
+
+Package: python
+Status: install ok installed
+Priority: standard
+Section: interpreters
+Installed-Size: 452
+Maintainer: Matthias Klose <doko@debian.org>
+Architecture: all
+Source: python-defaults
+Version: 2.3.4-4
+Replaces: python2.3 (<= 2.3.2-6), python-xmlbase
+Provides: python-email, python-xmlbase
+Depends: python2.3 (>= 2.3.4-8)
+Suggests: python-doc, python-tk
+Conflicts: python2.3 (<= 2.3.2-6), python2.1 (<= 2.1.2), python-xmlbase, python-csv, python-bz2
+Description: An interactive high-level object-oriented language (default version)
+ Python, the high-level, interactive object oriented language,
+ includes an extensive class library with lots of goodies for
+ network programming, system administration, sounds and graphics.
+ .
+ This package is a dependency package, which depends on Debian's default
+ Python version (currently v2.3).
+
+Package: kview
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 1440
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegraphics
+Version: 4:3.3.0-1.1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE simple image viewer/converter
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KView is a simple image viewer/converter application.
+ .
+ This package is part of the official KDE graphics module.
+
+Package: libxrandr-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 296
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs-dev (<< 4.3.0)
+Depends: libxrandr2 (= 4.3.0.dfsg.1-7), x-dev, libxrender-dev, libxext-dev, libx11-dev, libc6-dev | libc-dev
+Conflicts: xlibs-dev (<< 4.3.0)
+Description: X Window System Resize, Rotate and Reflection extension library development files
+ Header files and a static version of the Xrandr library are provided by this
+ package.
+ .
+ See the libxrandr2 package for further information.
+
+Package: libbz2-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 77
+Maintainer: Philippe Troin <phil@fifi.org>
+Architecture: i386
+Source: bzip2
+Version: 1.0.2-1
+Replaces: bzip2 (<< 0.9.5d-3)
+Depends: libbz2-1.0 (= 1.0.2-1), libc6-dev
+Description: A high-quality block-sorting file compressor library - development
+ Static libraries and include files for the bzip2 compressor library.
+
+Package: gettext
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 4704
+Maintainer: Santiago Vila <sanvila@debian.org>
+Architecture: i386
+Version: 0.14.1-5
+Provides: libasprintf-dev, libgettextpo-dev
+Depends: libc6 (>= 2.3.2.ds1-4), gettext-base
+Suggests: cvs
+Description: GNU Internationalization utilities
+ Interesting for authors or maintainers of other packages or programs
+ which they want to see internationalized.
+
+Package: libfontconfig1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 192
+Maintainer: Josselin Mouette <joss@debian.org>
+Architecture: i386
+Source: fontconfig
+Version: 2.2.3-1
+Depends: libc6 (>= 2.3.2.ds1-4), libexpat1 (>= 1.95.6), libfreetype6 (>= 2.1.5-1), zlib1g (>= 1:1.2.1), fontconfig
+Description: generic font configuration library (shared library)
+ Fontconfig is a font configuration and customization library, which
+ does not depend on the X Window System. It is designed to locate
+ fonts within the system and select them according to requirements
+ specified by applications.
+ .
+ See the "fontconfig" package description for more information.
+
+Package: libnxcomp0
+Status: install ok installed
+Priority: extra
+Section: x11
+Installed-Size: 1148
+Maintainer: Peter Rockai (mornfall) <mornfall@danill.sk>
+Architecture: i386
+Source: nx
+Version: 1.3.99.2-0
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libjpeg62, libpng12-0 (>= 1.2.5.0-4), libstdc++5 (>= 1:3.3.4-1), zlib1g (>= 1:1.2.1)
+Description: NoMachine NX - NX compression library
+ NoMachine NX is the next-generation X compression and roundtrip suppression
+ scheme. It can operate remote X11 sessions over 56k modem dialup links or
+ anything better.
+
+Package: libxv-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 388
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs-dev (<< 4.3.0)
+Depends: libxv1 (= 4.3.0.dfsg.1-7), x-dev, libxext-dev, libx11-dev, libc6-dev | libc-dev
+Conflicts: xlibs-dev (<< 4.3.0)
+Description: X Window System video extension library development files
+ Header files and a static version of the Xv library are provided by this
+ package.
+ .
+ See the libxv1 package for further information.
+
+Package: ifupdown
+Status: install ok installed
+Priority: important
+Section: base
+Installed-Size: 244
+Maintainer: Anthony Towns <ajt@debian.org>
+Architecture: i386
+Version: 0.6.4-4.10
+Replaces: netbase (<< 4.00)
+Depends: net-tools, libc6 (>= 2.3.2.ds1-4), debconf (>= 0.5) | debconf-2.0
+Suggests: iproute, dhcp3-client | dhcp-client, ppp
+Conflicts: dhcp-client (= 3.0.1betaRC4-1)
+Conffiles:
+ /etc/init.d/ifupdown c5cd4ca9e07f6d002b7467a9cdaad3c9
+ /etc/init.d/ifupdown-clean 3f5e6c88a224d3ab056ddc1ab6793de6
+ /etc/default/ifupdown fab851ca87c5deb9d6f665e610184648
+Description: High level tools to configure network interfaces
+ This package provides the tools ifup and ifdown which may be used to
+ configure (or, respectively, deconfigure) network interfaces based on
+ interface definitions in the file /etc/network/interfaces.
+
+Package: wdiff
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 116
+Maintainer: Santiago Vila <sanvila@debian.org>
+Version: 0.5-14
+Depends: libc6 (>= 2.2.4-4), libncurses5 (>= 5.2.20020112a-1)
+Description: Compares two files word by word
+ `wdiff' is a front-end to GNU `diff'. It compares two files, finding
+ which words have been deleted or added to the first in order to create
+ the second. It has many output formats and interacts well with
+ terminals and pagers (notably with `less'). `wdiff' is particularly
+ useful when two texts differ only by a few words and paragraphs have
+ been refilled.
+
+Package: debian-cd
+Status: install ok installed
+Priority: extra
+Section: admin
+Installed-Size: 1752
+Maintainer: Raphael Hertzog <hertzog@debian.org>
+Architecture: all
+Version: 2.2.19
+Depends: perl, cpp, libdigest-md5-perl, sysutils, apt (>= 0.3.11.1), make, mkisofs | mkhybrid, lynx, grep-dctrl, apt-utils (>= 0.5.4), debootstrap, bc
+Recommends: hfsutils, debianutils (>= 1.6), jigdo-file (>= 0.7.0)
+Suggests: palo (>= 0.94), binutils-multiarch
+Conffiles:
+ /etc/debian-cd/conf.sh 153e88cf81664c822ff588fd3b5f6629
+Description: Tools for building (Official) Debian CD set
+ Debian-cd is the official tool for building Debian CD set since the potato
+ release. It was formerly called YACS (for Yet Another CD Script).
+ .
+ Its goal is to facilitate the creation of customized Debian CD set.
+
+Package: libgmp3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 508
+Maintainer: Steve M. Robbins <smr@debian.org>
+Architecture: i386
+Source: gmp
+Version: 4.1.3-3
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1)
+Conflicts: libgmp2 (<< 2.0.2-10)
+Description: Multiprecision arithmetic library
+ GNU MP is a programmer's library for arbitrary precision
+ arithmetic (ie, a bignum package). It can operate on signed
+ integer, rational, and floating point numeric types.
+ .
+ It has a rich set of functions, and the functions have a regular
+ interface.
+ .
+ The home page is http://www.swox.com/gmp
+
+Package: kate
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 1556
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase-doc (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: kregexpeditor
+Suggests: aspell | ispell, kate-plugins, khelpcenter, konq-speaker
+Description: KDE Advanced Text Editor
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This package contains the advanced text editor for KDE. It includes
+ many features including:
+ .
+ * Syntax Highlighting
+ * Folding
+ .
+ This package is part of the official KDE base module.
+
+Package: libglade2-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 200
+Maintainer: Andreas Rottmann <rotty@debian.org>
+Architecture: i386
+Source: libglade2
+Version: 1:2.4.0-1
+Depends: libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.4.1), libgtk2.0-0 (>= 2.4.1), libpango1.0-0 (>= 1.4.0), libxml2 (>= 2.6.10), zlib1g (>= 1:1.2.1)
+Recommends: python2.3
+Description: Library to load .glade files at runtime
+ This library allows you to load user interfaces in your program, which are
+ stored externally. This allows alteration of the interface without
+ recompilation of the program.
+ .
+ The interfaces can also be edited with GLADE.
+
+Package: libxext6
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 360
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: xlibs (<< 4.3.0)
+Description: X Window System miscellaneous extension library
+ libXext provides an X Window System client interface to several extensions to
+ the X protocol.
+ .
+ The supported protocol extensions are:
+ - DOUBLE-BUFFER (DBE), the Double Buffer extension;
+ - DPMS, the VESA Display Power Management System extension;
+ - Extended-Visual-Information (EVI), an extension for gathering extra
+ information about the X server's visuals;
+ - LBX, the Low Bandwith X extension;
+ - MIT-SHM, the MIT X client/server shared memory extension;
+ - MIT-SUNDRY-NONSTANDARD, a miscellaneous extension by MIT;
+ - Multi-Buffering, the multi-buffering and stereo display extension;
+ - SECURITY, the X security extension;
+ - SHAPE, the non-rectangular shaped window extension;
+ - SYNC, the X synchronization extension;
+ - TOG-CUP, the Open Group's Colormap Utilization extension;
+ - XC-APPGROUP, the X Consortium's Application Group extension;
+ - XC-MISC, the X Consortium's resource ID querying extension;
+ - XTEST, the X test extension (this is one of two client-side
+ implementations; the other is in the libXtst library, provided by the
+ libxtst6 package);
+ .
+ libXext also provides a small set of utility functions to aid authors of
+ client APIs for X protocol extensions.
+
+Package: libgconf2-4
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 200
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Source: gconf2
+Version: 2.6.4-2
+Replaces: libgconf2-2 (= 1.1.7-1)
+Depends: libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.4.6), liborbit2 (>= 1:2.10.0), gconf2 (>= 2.6.4-2)
+Conflicts: libgconf2-2 (= 1.1.7-1)
+Description: GNOME configuration database system libraries (for GNOME2)
+ GConf is a configuration database system, functionally similar to the
+ Windows registry but lots better. :-) It's being written for the GNOME
+ desktop but does not require GNOME.
+ .
+ This package contains shared libraries for GNOME2
+
+Package: libsdl-net1.2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 36
+Maintainer: Mike Furr <mfurr@debian.org>
+Source: sdl-net1.2
+Version: 1.2.5-3
+Depends: libc6 (>= 2.3.2-1), libsdl1.2debian (>> 1.2.6-0)
+Description: network library for Simple DirectMedia Layer
+ This is a small, low-level, cross-platform networking library, that
+ can be used with the Simple DirectMedia Layer library
+ (www.libsdl.org).
+
+Package: kgpgcertmanager
+Status: purge ok not-installed
+Priority: optional
+Section: net
+Architecture: i386
+
+Package: xterm
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 1108
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xbase (<< 3.3.2.3a-2)
+Provides: x-terminal-emulator
+Depends: xlibs-data, libc6 (>= 2.3.2.ds1-4), libexpat1 (>= 1.95.6), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libice6 | xlibs (>> 4.1.0), libncurses5 (>= 5.4-1), libsm6 | xlibs (>> 4.1.0), libxaw7 (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxmu6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), libxrender1, libxt6 | xlibs (>> 4.1.0)
+Recommends: xutils
+Conflicts: xbase (<< 3.3.2.3a-2), suidmanager (<< 0.50)
+Conffiles:
+ /etc/X11/app-defaults/UXTerm aaa8c1cf86eee16b6002ab6b9909ca3d
+ /etc/X11/app-defaults/XTerm 4c4f43a298c98306e82f8bf7d5da045f
+ /etc/X11/app-defaults/XTerm-color 4c4b99524636f80f5a860782af134a54
+Description: X terminal emulator
+ xterm is a terminal emulator for the X Window System. It provides DEC VT102
+ and Tektronix 4014 compatible terminals for programs that cannot use the
+ window system directly. This version implements ISO/ANSI colors and most of
+ the control sequences used by DEC VT220 terminals.
+ .
+ This package provides two commands: xterm, which is the traditional
+ terminal emulator, and uxterm, which is a wrapper around xterm that is
+ intelligent about locale settings (especially those which use the UTF-8
+ character encoding), but which requires the luit program from the xutils
+ package.
+ .
+ A complete list of control sequences supported by the X terminal emulator
+ is provided in /usr/share/doc/xterm.
+ .
+ The xterm program uses bitmap images provided by the xlibs-data package.
+
+Package: liblua50
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 140
+Maintainer: Daniel Silverstone <dsilvers@debian.org>
+Architecture: i386
+Source: lua50
+Version: 5.0.2-5
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Main interpreter library for the Lua 5.0 programming language
+ Lua is a powerful language which can be included in your C/C++ projects
+ using this library.
+ .
+ For more information, please see the lua50 and lua50-doc packages
+
+Package: libogg0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 44
+Maintainer: Christopher L Cheney <ccheney@debian.org>
+Source: libogg
+Version: 1.1.0-1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Ogg Bitstream Library
+ Libogg is a library for manipulating ogg bitstreams. It handles
+ both making ogg bitstreams and getting packets from ogg bitstreams.
+
+Package: guile-db
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 80
+Maintainer: Sam Hocevar (Debian packages) <sam+deb@zoy.org>
+Version: 0.1-2
+Depends: guile-1.6-libs, libc6 (>= 2.3.2-1), libdb3 (>= 3.2.9-19), libguile-ltdl-1, libqthreads-12
+Description: Berkeley DB module for Guile
+ The Berkeley DB module for Guile is a set of Guile Scheme functions to
+ facilitate database handling from within Scheme scripts.
+
+Package: kdelibs-kio-ldap
+Status: purge ok not-installed
+Priority: extra
+Section: checkinstall
+
+Package: ktuberling
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 1188
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: Potato Guy for KDE
+ KTuberling is a game intended for small children. Of course, it may
+ be suitable for adults who have remained young at heart.
+ .
+ It is a potato editor. That means that you can drag and drop eyes,
+ mouths, moustache, and other parts of face and goodies onto a
+ potato-like guy. Similarly, you have a penguin on which you can drop
+ other stuff.
+ .
+ There is no winner for the game. The only purpose is to make the
+ funniest faces you can.
+ .
+ There is a museum (like a "Madame Tusseau" gallery) where you can
+ find many funny examples of decorated potatoes. Of course, you can
+ send your own creations to the programmer, Eric Bischoff, who will
+ include them in the museum if he gets some spare time.
+
+Package: libcln3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1100
+Maintainer: Richard Kreckel <kreckel@ginac.de>
+Architecture: i386
+Source: cln
+Version: 1.1.8-2
+Replaces: cln
+Depends: libgmp3
+Suggests: pi
+Description: Class Library for Numbers (C++)
+ CLN is a library for computations with all kinds of numbers. It has a
+ rich set of number classes, including integers (with unlimited precision),
+ reals with various precisions (including unlimited), rationals, complex
+ numbers and polynomials. The kernel is written in assembly language.
+ It uses garbage collection (automatic, without imposing any burden on the
+ main application). Many efficient algorithms (i.e. for all transcendental
+ functions) are implemented.
+
+Package: libcln2
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 1040
+Maintainer: Richard Kreckel <kreckel@ginac.de>
+Source: cln
+Version: 1.1.5-2
+Config-Version: 1.1.5-2
+Replaces: cln
+Provides: cln
+Depends: libgmp3
+Suggests: pi
+Conflicts: cln
+Description: Class Library for Numbers (C++)
+ CLN is a library for computations with all kinds of numbers. It has a
+ rich set of number classes, including integers (with unlimited precision),
+ reals with various precisions (including unlimited), rationals, complex
+ numbers and polynomials. The kernel is written in assembly language.
+ It uses garbage collection (automatic, without imposing any burden on the
+ main application). Many efficient algorithms (i.e. for all transcendental
+ functions) are implemented.
+
+Package: ksysguardd
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 96
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0)
+Depends: libc6 (>= 2.3.2.ds1-4), libsensors3 (>= 2.8.7)
+Conffiles:
+ /etc/ksysguarddrc 839afdee475535a9b54afc92833ec0f3
+Description: KDE System Guard Daemon
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KDE System Guard Daemon is the daemon part of ksysguard. The daemon can
+ be installed on a remote machine to enable ksysguard on another machine
+ to monitor it through the daemon running there.
+ .
+ This package is part of the official KDE base module.
+
+Package: libmime-base64-perl
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+
+Package: libdate-calc-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 800
+Maintainer: Christian Hammers <ch@debian.org>
+Architecture: i386
+Version: 5.3-5
+Replaces: libdatecalc-perl
+Depends: perl (>= 5.8.4-2), perlapi-5.8.4, libbit-vector-perl
+Conflicts: libdatecalc-perl
+Description: Perl library for accessing dates
+ The package provides a Perl interface to a C library which offers a
+ wide variety of date calculations based on the Gregorian calendar
+ (the one used in all western countries today), complying with the
+ ISO/R 2015-1971 and DIN 1355 standards which specify things as what
+ leap years are, when they occur, how the week numbers are defined,
+ what's the first day of the week, how many weeks (52 or 53) a given
+ year has, and so on.
+ .
+ Although the Gregorian calendar was only adopted 1582 by most (not
+ all) European countries (some countries continued to use the Julian
+ calendar until as late as the beginning of the 20th century!), this
+ package allows you to extrapolate the Gregorian calendar back until
+ the year 1.
+
+Package: libbonobo2-common
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 1892
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Source: libbonobo
+Version: 2.6.2-6
+Replaces: bonobo-activation (<< 1:2.4)
+Depends: libbonobo2-0 (>= 2.6.2), libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.4.1), liborbit2 (>= 1:2.10.0), libpopt0 (>= 1.7), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1)
+Conflicts: bonobo-activation (<< 1:2.4)
+Conffiles:
+ /etc/bonobo-activation/bonobo-activation-config.xml 6ccbdf532ae9b7c605f4129ae1d050da
+Description: Bonobo CORBA interfaces library -- support files
+ Bonobo is a set of language and system independent CORBA interfaces
+ for creating reusable components, controls and creating compound
+ documents.
+ .
+ The Bonobo distribution includes a Gtk+ based implementation of the
+ Bonobo interfaces, enabling developers to create reusable
+ components and applications that can be used to form more complex
+ documents.
+ .
+ This package contains the support files needed by the Bonobo library.
+
+Package: libgnokii2
+Status: install ok installed
+Priority: optional
+Section: comm
+Installed-Size: 1136
+Maintainer: Bradley Marshall <brad@humbug.org.au>
+Architecture: i386
+Source: gnokii
+Version: 0.6.3-3
+Replaces: gnokii (<< 0.6.1-1)
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Gnokii library
+ Gnokii is a suite of programs linked against a backend library that allows
+ communication with Nokia phones. It current supports the Nokia 6130, 6150,
+ 6190, 5110, 5130, 5190, 3210, 3310, 3330, 8210, 7110, 6210, 6250, 6310, 6510,
+ and AT capable phones.
+ .
+ This package provides the library used by gnokii.
+
+Package: libxrender1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 88
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xrender
+Version: 0.8.3-7
+Depends: libc6 (>= 2.3.2.ds1-4), libx11-6 | xlibs (>> 4.1.0)
+Conflicts: xlibs (<< 4.3.0)
+Description: X Rendering Extension client library
+ The X Rendering Extension (Render) introduces digital image composition as
+ the foundation of a new rendering model within the X Window System.
+ Rendering geometric figures is accomplished by client-side tesselation into
+ either triangles or trapezoids. Text is drawn by loading glyphs into the
+ server and rendering sets of them. The Xrender library exposes this
+ extension to X clients.
+
+Package: postfix-pcre
+Status: purge ok not-installed
+Priority: extra
+Section: mail
+
+Package: libkpathsea3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 140
+Maintainer: teTeX maintainers <debian-tetex-maint@lists.debian.org>
+Architecture: i386
+Source: tetex-bin
+Version: 2.0.2-21
+Replaces: tetex-lib
+Provides: tetex-lib
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: tetex-lib, tetex-bin (<< 2.0), jtex-bin (<< 1.9), multex-bin (<< 0.8), ptex-bin (<< 3.0.5), dvi2ps (<< 3.2j)
+Description: path search library for teTeX (runtime part)
+ This package contains the runtime part of the Kpathsea[rch] library,
+ which implements generic path searching, configuration, and
+ TeX-specific file searching.
+
+Package: libgnome2-perl
+Status: purge ok not-installed
+Priority: optional
+Section: perl
+Architecture: i386
+
+Package: libkeynote0
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 124
+Maintainer: Martin Waitz <tali@debian.org>
+Source: keynote
+Version: 2.3-10
+Config-Version: 2.3-10
+Depends: libc6 (>= 2.3.1-1), libssl0.9.7
+Description: Decentralized Trust-Management system, shared library
+ The KeyNote architecture and language are useful as building blocks for the
+ trust management aspects of a variety of Internet protocols and services.
+
+Package: xfree86-common
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 1108
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: all
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xbase (<< 3.3.2.3a-9), xlib6g-dev (<< 4.0), xmanpages (<< 3.3.4), xstd, xserver-common (<< 4.0)
+Depends: debconf (>= 1.2.9), debianutils (>= 1.13)
+Suggests: x-window-system-core | x-window-system
+Conflicts: xbase (<< 3.3.2.3a-2), task-x-window-system-core, task-x-window-system
+Conffiles:
+ /etc/X11/Xresources/xfree86-common a0f3911120c49038cb87607e3c545b90
+ /etc/X11/Xsession 964042a0baa1a7c6dd7c8c8e027792ed
+ /etc/X11/Xsession.d/20xfree86-common_process-args 234df7ef4e57d97a446c6b81d5dc6ddd
+ /etc/X11/Xsession.d/30xfree86-common_xresources d17d5f0b4f12dcf1d968c9c2f9647e0d
+ /etc/X11/Xsession.d/50xfree86-common_determine-startup b93298febffc253a5d90431677cc7c75
+ /etc/X11/Xsession.d/90xfree86-common_ssh-agent 0c2826f6163c7219ebbf91abfa251a20
+ /etc/X11/Xsession.d/99xfree86-common_start 84ffa95821ba703d6bc203afbfd4bcac
+ /etc/X11/Xsession.options e675efbb486930e08bc779cbeb53a44e
+ /etc/X11/rgb.txt 4896b3e3380a6a2af1920709bc31b140
+ /etc/init.d/xfree86-common a40ff39032a660dbb6fffbf12ffd7640
+Description: X Window System (XFree86) infrastructure
+ xfree86-common contains the filesystem infrastructure required for further
+ installation of the X Window System in any configuration.
+ .
+ Those wishing an X server only (with remote font services and clients) will
+ also require the xserver-common package and an X server package (most
+ likely xserver-xfree86).
+ .
+ The counterpart to the above configuration is a machine with the X libraries
+ (the xlibs package), xbase-clients, a window manager, some X font packages,
+ and likely many more client packages.
+ .
+ Those who desire a standalone X workstation (and/or are fuzzy on the concepts
+ of X servers and X clients) will require both of the above sets of packages.
+ For convenience, the "x-window-system" metapackage will include everything
+ that is required for a standalone X workstation.
+ .
+ A number of terms are used to refer to the X Window System, including "X", "X
+ Version 11", "X11", "X11R6", and "X11R6.4". The version of X used in Debian
+ is derived from the version released by the XFree86 Project, Inc., and is
+ thus often also referred to as "XFree86". All of the preceding quoted terms
+ are functionally interchangeable in a Debian system.
+ .
+ Still confused? Install this package and then read the files in
+ /usr/share/doc/xfree86-common/ for assistance.
+
+Package: umbrello
+Status: deinstall ok config-files
+Priority: optional
+Section: devel
+Installed-Size: 4184
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdesdk
+Version: 4:3.2.1-1
+Config-Version: 4:3.2.1-1
+Depends: kdelibs4 (>= 4:3.2.1), libart-2.0-2 (>= 2.3.8), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter, kdesdk-doc-html
+Description: UML modelling tool and code generator
+ Umbrello UML Modeller is a Unified Modelling Language editor for KDE.
+ With UML you can create diagrams of software and other systems in a
+ standard format. Umbrello can also generate code from your UML diagrams
+ in a number of programming languages.
+ .
+ The program supports class diagrams, sequence diagrams, collaboration
+ diagrams, use case diagrams, state diagrams, activity diagrams, component
+ diagrams and deployment diagrams.
+ .
+ This package is part of the KDE Software Development Kit.
+
+Package: libgimp2.0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1904
+Maintainer: Ari Pollak <ari@debian.org>
+Architecture: i386
+Source: gimp
+Version: 2.0.4-1
+Replaces: libgimp1.3, gimp1.3-data, gimp-data (<< 2.0.0-6)
+Depends: libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.4.1), libgtk2.0-0 (>= 2.4.4), libpango1.0-0 (>= 1.4.1)
+Conflicts: libgimp1.3, gimp1.3-data, gimp-data (<< 2.0.0-6)
+Description: Libraries necessary to run the GIMP, stable version 2.0
+ This package includes the developers' release of the libgimp and
+ libgimpui libraries, necessary to run The GIMP, stable version 2.0.
+ .
+ It has been split off from the main gimp package in order to
+ facilitate easy development for packages that use libgimp and libgimpui,
+ like SANE, the Scanner Access package for GIMP.
+
+Package: libmagick6
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 3754
+Maintainer: Ryuichi Arafune <arafune@debian.org>
+Architecture: i386
+Source: imagemagick
+Version: 5:6.0.7.1-1
+Replaces: libmagick, libmagick-lzw, libmagick5g, imagemagick (<= 5:6.0.1.2-1), libmagick5 (>= 4:5.5.1)
+Depends: libbz2-1.0, libc6 (>= 2.3.2.ds1-4), libdps1 (>> 4.1.0), libfreetype6 (>= 2.1.5-1), libice6 | xlibs (>> 4.1.0), libjasper-1.701-1 (>= 1.701.0), libjpeg62, liblcms1 (>= 1.08-1), libpng12-0 (>= 1.2.5.0-4), libsm6 | xlibs (>> 4.1.0), libtiff4, libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.11), libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Pre-Depends: dpkg (>= 1.6.8)
+Conflicts: libmagick, libmagick-lzw, libmagick5g, imagemagick (<= 5:6.0.1.2-1), libmagick5 (>= 4:5.5.1-1), libmagick6.0.1
+Description: Image manipulation library
+ LibMagick supports loading and saving a very large set of image formats.
+ It allows a lot of image manipulation as well.
+
+Package: ttf-bitstream-vera
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 732
+Maintainer: Michael Fedrowitz <michaelf@debian.org>
+Version: 1.10-3
+Depends: defoma
+Recommends: x-ttcidfont-conf | fontconfig
+Conffiles:
+ /etc/defoma/hints/ttf-bitstream-vera.hints afd1963fa2faea0a4ad82b923d7d0424
+Description: The Bitstream Vera family of free TrueType fonts
+ This is a set of high-quality TrueType fonts created by Bitstream, Inc.
+ and released under a DFSG-free license. They are intended to remedy the
+ lack of free high-quality fonts for the free desktop environments.
+ .
+ They fully cover Western European languages (ISO-8859-1, ISO-8859-15) and
+ Turkish (ISO-8859-9). They also include a selection of mathematical and
+ other symbols and some limited support for Eastern European languages
+ (parts of ISO-8859-2). Non-latin scripts are not supported.
+
+Package: doc-linux-text
+Status: purge ok not-installed
+Priority: standard
+Section: doc
+
+Package: groff
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 5432
+Maintainer: Colin Watson <cjwatson@debian.org>
+Architecture: i386
+Version: 1.18.1.1-1
+Replaces: jgroff (<< 1.17-1), groff-base (<< 1.17.2-9), groff-x11 (<< 1.18-1)
+Provides: jgroff, groff-x11
+Depends: groff-base (= 1.18.1.1-1), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxaw7 (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0)
+Recommends: gs, imagemagick, libpaper1, netpbm, psutils
+Conflicts: jgroff (<< 1.17-1), groff-x11 (<< 1.18-1)
+Conffiles:
+ /etc/X11/app-defaults/GXditview 344c3faa1dc259d0ede2a9eb2ba20cbe
+Description: GNU troff text-formatting system
+ This package contains optional components of the GNU troff text-formatting
+ system. The core package, groff-base, contains the traditional tools like
+ troff, nroff, tbl, eqn, and pic. This package contains additional devices
+ and drivers for output to DVI, HTML (when the recommended packages gs,
+ netpbm, and psutils are installed), HP LaserJet printers, and Canon CAPSL
+ LBP-4 and LBP-8 printers.
+ .
+ The X75, X75-12, X100, and X100-12 devices, which allow groff output to be
+ conveniently viewed on an X display using the standard X11 fonts, are now
+ included here. They were previously in a separate package, groff-x11.
+ .
+ Besides these, the groff package contains man pages describing the language
+ and its macro sets, info documentation, and a number of supplementary
+ programs:
+ .
+ - gxditview, which is used to display the output of the X* devices, and
+ can also be used to view PostScript output from groff;
+ - grn, a preprocessor for pictures in the 'gremlin' format;
+ - tfmtodit, which creates font files for use with 'groff -Tdvi';
+ - hpftodit, which creates font files for use with 'groff -Tlj4';
+ - afmtodit, which creates font files for use with 'groff -Tps';
+ - refer, which preprocesses bibliographic references for use with groff;
+ - indxbib, which creates inverted indices for bibliographic databases used
+ by 'refer';
+ - lkbib and lookbib, which search bibliographic databases;
+ - addftinfo, which adds metric information to troff font files for use
+ with groff;
+ - pfbtops, which translates a PostScript font in .pfb format to ASCII for
+ use with groff;
+ - mmroff, a simple groff preprocessor which expands references in mm;
+ - pic2graph, which converts PIC diagrams into cropped image files;
+ - eqn2graph, which converts EQN equations into cropped image files.
+ .
+ All the standard macro packages are supported.
+
+Package: cryptplug
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 124
+Maintainer: Jose Carlos Garcia Sogo <jsogo@debian.org>
+Architecture: i386
+Version: 0.3.16-1
+Depends: libc6 (>= 2.3.1-1), libgpgme6 (>= 0.3.15-1)
+Description: Collection of plugins to crytographic engines
+ A collection of plug-ins to cryptographic engines, accessible
+ by the crypt-plug interface. Applications can make use of the crypto
+ operations provided by the CryptPlug interface, and the plug-ins
+ provided by this package implement the interface for various
+ cryptographic engines, like GnuPG.
+
+Package: wesnoth
+Status: deinstall ok config-files
+Priority: extra
+Section: games
+Installed-Size: 3364
+Maintainer: Isaac Clerencia <isaac@sindominio.net>
+Architecture: i386
+Version: 0.8.2-1
+Config-Version: 0.8.2-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libsdl-image1.2 (>= 1.2.3), libsdl-mixer1.2 (>= 1.2.5), libsdl-net1.2, libsdl-ttf2.0-0, libsdl1.2debian (>> 1.2.7-0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), wesnoth-data (= 0.8.2-1), ttf-bitstream-vera
+Recommends: wesnoth-music
+Description: fantasy turn-based strategy game
+ Battle for control of villages, using variety of units which have advantages
+ and disadvantages in different types of terrains and against different types
+ of attacks. Units gain experience and advance levels, and are carried over
+ from one scenario to the next campaign.
+ .
+ Battle for Wesnoth home: http://www.wesnoth.org/
+
+Package: fileutils
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 16
+Maintainer: Michael Stone <mstone@debian.org>
+Architecture: all
+Source: coreutils
+Version: 5.2.1-2
+Pre-Depends: coreutils
+Description: The GNU file management utilities (transitional package)
+ Empty package to facilitate upgrades, can be safely removed.
+
+Package: dict-wn
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 11844
+Maintainer: Andreas Tille <tille@debian.org>
+Architecture: all
+Source: wordnet
+Version: 2.0g-8
+Depends: dictd | dict-server
+Suggests: dict-gcide
+Description: Electronic lexical database of English language for dict
+ This package contains WordNet (r) v 2.0, a modern dictionary of the
+ English language, formatted for use by the dictionary server in the
+ dictd package. This dictionary contains only nouns, verbs, adverbs,
+ and adjectives. It is not intended as a stand-alone dictionary, but
+ rather as a supplement to the older but more complete dictionary
+ found in dict-gcide.
+ .
+ This package will be of limited use without the server found in the
+ dictd package.
+ .
+ Homepage: http://www.cogsci.princeton.edu/~wn/
+url: http://www.cogsci.princeton.edu/
+
+Package: console-data
+Status: install ok installed
+Priority: important
+Section: utils
+Installed-Size: 3940
+Maintainer: Alastair McKinstry <mckinstry@debian.org>
+Architecture: all
+Version: 2002.12.04dbs-46
+Replaces: console-tools-data
+Provides: console-tools-data, console-keymaps
+Depends: debconf (>= 0.5), console-common
+Recommends: console-tools (>= 1:0.2.3-16) | kbd (>= 0.99-12)
+Conflicts: kbd (<= 0.96a-1), kbd-data, console-tools-data
+Description: Keymaps, fonts, charset maps, fallback tables for console-tools
+ This package contains the standard data files for the Linux Console Tools.
+ .
+ This includes keyboard definitions (keymaps), console fonts for various
+ encodings, maps defining the standard charsets for use by text applications,
+ and fallback tables allowing to approximate an unavailable character's glyph
+ with the glyph of another character in the current font.
+
+Package: liballegro4a
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 1048
+Maintainer: Sam Hocevar (Debian packages) <sam+deb@zoy.org>
+Architecture: i386
+Source: allegro4
+Version: 2:4.0.3-14
+Config-Version: 2:4.0.3-14
+Depends: libc6 (>= 2.3.2.ds1-4), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0)
+Recommends: liballegro4a-plugin-esd | liballegro4a-plugin-arts
+Conflicts: liballegro3.9.34wip1 (<< 3935pre1-7), liballegro4
+Description: portable library for cross-platform game and multimedia development
+ Allegro is a cross-platform library intended for use in computer games
+ and other types of multimedia programming. It is used by many DOS games
+ and can be used to port them easily to Linux. Allegro supports many
+ kinds of input and output interfaces, e.g. X11 (Xlib or DGA),
+ framebuffer, SVGAlib.
+ .
+ NOTE: you should install XFree86 to use the display output plugins.
+ Alternatively, you can use the framebuffer output, or install the
+ liballegro-plugin-svgalib on i386.
+
+Package: aspell-en
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 4368
+Maintainer: Brian Nelson <pyro@debian.org>
+Architecture: i386
+Version: 0.51-1-1
+Provides: aspell-dictionary
+Depends: libaspell15
+Suggests: aspell-bin
+Description: English dictionary for GNU Aspell
+ This package contains all the required files to add support
+ for English language to the GNU Aspell spell checker.
+ .
+ American, British and Canadian spellings are included.
+
+Package: libreadline4-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 476
+Maintainer: Matthias Klose <doko@debian.org>
+Architecture: i386
+Source: readline4
+Version: 4.3-11
+Replaces: libreadline4 (<< 2.5a)
+Provides: libreadline-dev
+Depends: libreadline4 (= 4.3-11), libncurses5-dev
+Conflicts: libreadline4 (<< 2.5a), libreadline-dev
+Description: GNU readline and history libraries, development files
+ The GNU readline library aids in the consistency of user interface
+ across discrete programs that need to provide a command line
+ interface.
+ .
+ The GNU history library provides a consistent user interface for
+ recalling lines of previously typed input.
+ .
+ This package contains as well the readline documentation in info format.
+
+Package: mbr
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 46
+Maintainer: Santiago Garcia Mantinan <manty@debian.org>
+Architecture: i386
+Version: 1.1.5-2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Master Boot Record for IBM-PC compatible computers.
+ This is used in booting Linux from the hard disk.
+ The MBR runs first, then transfers control to LILO, which transfers
+ control to the Linux kernel.
+
+Package: kdeartwork-misc
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 3960
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: all
+Source: kdeartwork
+Version: 4:3.2.3-2
+Suggests: kworldclock
+Description: various multimedia goodies released with KDE
+ This package contains miscellaneous multimedia goodies that come with
+ the official KDE release.
+ .
+ Included are additional KDE sounds and kworldclock themes.
+ .
+ This package is part of the KDE artwork module.
+
+Package: libgtk2.0-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 4412
+Maintainer: Akira TAGOH <tagoh@debian.org>
+Architecture: i386
+Source: gtk+2.0
+Version: 2.4.9-1
+Replaces: libgtk2.0-0png3
+Depends: libgtk2.0-common (>= 2.4.9-1), libgtk2.0-bin (>= 2.4.9-1), libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libglib2.0-0 (>= 2.4.6), libgtk2.0-0 (>= 2.4.3), libjpeg62, libpango1.0-0 (>= 1.4.1), libpng12-0 (>= 1.2.5.0-4), libtiff4, libx11-6 | xlibs (>> 4.1.0), libxcursor1 (>> 1.1.2), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxi6 | xlibs (>> 4.1.0), libxrandr2 | xlibs (>> 4.3.0), libxrender1, zlib1g (>= 1:1.2.1)
+Conflicts: libgtk2.0-0png3, eog2 (<< 1.0.1-4), gnome-panel2 (<< 2.0.4-1), celestia (<< 1.2.4-4), gimp1.3 (<< 1.3.7-1.1), metatheme (<< 0.9.7-3), libgnomeui-0 (<< 2.0.6-2), gtk2.0-examples (<< 2.2.0), libgdkxft0, gtk2-engines-wonderland (<= 1.0-2), gtk2-engines-cleanice (<= 1.2.8-1), gtk2-engines-thinice (<< 2.6), gtk2-engines-crux (<< 2.6), gtk2-engines-mist (<< 2.6), gtk2-engines-highcontrast (<< 2.6), gtk2-engines-lighthouseblue (<< 2.6), gnome-themes (<< 2.6), gtk2-engines-industrial (<< 0.2.32-5), gtk2-engines-pixbuf (<< 2.2.0-2.1), gtk2-engines-redmond95 (<< 2.2.0-2.1), gtk2-engines-metal (<< 2.2.0-2.1), gtk2-engines-magicchicken (<= 1.1.1-4), gtk2-engines-qtpixmap (<= 0.28-1), gtk2-engines-smooth (<< 0.5.6-3), gtk2-engines-xfce (<= 2.1.8-1), tamil-gtk2im (<= 2.2-4), imhangul (<< 0.9.9-3), librsvg2-common (<< 2.6.3-1)
+Description: The GTK+ graphical user interface library
+ The GTK+ is a multi-platform toolkit for creating graphical user
+ interfaces. Offering a complete set of widgets, the GTK+ is suitable
+ for projects ranging from small one-off tools to complete application
+ suites.
+ .
+ This package contains the shared libraries.
+
+Package: libslp1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 132
+Maintainer: Ganesan Rajagopal <rganesan@debian.org>
+Source: openslp
+Version: 1.0.11-7
+Depends: libc6 (>= 2.3.2.ds1-4), debconf, net-tools
+Suggests: slpd (= 1.0.11-7), openslp-doc (= 1.0.11-7)
+Description: OpenSLP libraries
+ Service Location Protocol is a IETF standard protocol that is used to
+ discover/advertise services on the network. You can use SLP for anything
+ from locating a suitable printer on your floor to discovering what LDAP
+ directories are available in your organization. This package provides
+ the OpenSLP run-time library package that is linked to SLP aware
+ applications. This library implements RFC 2614 - An API for Service
+ Location. Unless there is a SLP DA in the network, you must install the
+ slpd package to be able to advertise the services.
+
+Package: doc-base
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 89
+Maintainer: Adam Di Carlo <aph@debian.org>
+Version: 0.7.18
+Depends: perl
+Suggests: dhelp | dwww
+Conflicts: dhelp (<< 0.3.14), dwww (<< 1.9.0)
+Description: utilities to manage online documentation
+ This package contains utilities to manage documentation installed on
+ a Debian system. It contains a database of document metadata.
+ Various third-party systems such as 'dwww', 'dhelp' and 'doc-central'
+ use this data to provide a catalog of available documentation.
+ .
+ If you want to get additional information about 'doc-base' please
+ consult the `Debian doc-base Manual' included in this package.
+
+Package: qt3-dev-tools
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 4044
+Maintainer: Martin Loschwitz <madkiss@debian.org>
+Architecture: i386
+Source: qt-x11-free
+Version: 3:3.3.3-4
+Replaces: qt3-tools, libqt3-dev, libqt3-mt-dev, qt3-doc (<= 3:3.1.1-2)
+Depends: libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxcursor1 (>> 1.1.2), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxrandr2 | xlibs (>> 4.3.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: libqt3-mt-dev | libqt3-dev
+Conflicts: libqt-dev (<< 3:2.3.2-10), uic (<= 3:2.3.2-9)
+Description: Qt3 development tools
+ This package contains all tools that are necessary to build programs
+ that are written using Qt3. These are: qmake, uic and moc.
+ For Qt3 development, you most likely want to install this package.
+
+Package: discover-data
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+Architecture: all
+
+Package: libgnomevfs2-common
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 3012
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Source: gnome-vfs2
+Version: 2.6.2-2
+Replaces: libgnomevfs2-dev (<< 2.6.0), libgnome2-common (<< 2.6.0), gnome-vfs-extras2, gnome-vfs-sftp
+Depends: libbonobo2-0 (>= 2.6.2), libbz2-1.0, libc6 (>= 2.3.2.ds1-4), libfam0c102, libgconf2-4 (>= 2.6.4), libglib2.0-0 (>= 2.4.6), libgnomevfs2-0 (>= 2.6.0), liborbit2 (>= 1:2.10.0), libpopt0 (>= 1.7), libsmbclient (>= 3.0.2a-1), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1), gnome-mime-data, gconf2 (>= 2.6.0), shared-mime-info
+Conflicts: gnome-vfs-extras2, gnome-vfs-sftp
+Conffiles:
+ /etc/gnome-vfs-2.0/vfolders/applications-all-users.vfolder-info a72d726fcd4f374a10985de6e17461aa
+ /etc/gnome-vfs-2.0/vfolders/network.vfolder-info f8fed46268857ccacb040849e191759d
+ /etc/gnome-vfs-2.0/vfolders/preferences-all-users.vfolder-info 643f7129933ae4feb808dab1eac3404c
+ /etc/gnome-vfs-2.0/vfolders/favorites.vfolder-info efdae1696021e6aace5286a476d069a5
+ /etc/gnome-vfs-2.0/vfolders/start-here.vfolder-info 6eae6f624a3815be6acd9abc63a7c6e8
+ /etc/gnome-vfs-2.0/vfolders/server-settings.vfolder-info 4021059d6b086897f79b23e70dcf4c90
+ /etc/gnome-vfs-2.0/vfolders/system-settings.vfolder-info 50962811be39d3c3a582204422d11a9d
+ /etc/gnome-vfs-2.0/modules/default-modules.conf c3e6fdbf5fe427e46a9c50bcebd01aaa
+ /etc/gnome-vfs-2.0/modules/smb-module.conf f2377c166540cb0f32e8b4a3535e498a
+ /etc/gnome-vfs-2.0/modules/ssl-modules.conf 15b6fccdf1796b2d5da358ff697a2e83
+Description: The GNOME virtual file-system library common files (for GNOME2)
+ GNOME VFS is the GNOME virtual file system. It is the foundation of the
+ Nautilus file manager. It provides a modular architecture and ships with
+ several modules that implement support for file systems, http, ftp and others.
+ It provides a URI-based API, a backend supporting asynchronous file
+ operations, a MIME type manipulation library and other features.
+ .
+ This package is a part of GNOME2
+
+Package: kfax
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 764
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegraphics
+Version: 4:3.3.0-1.1
+Replaces: kview (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), kviewshell (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libjpeg62, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libtiff4, libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: KDE G3/G4 Fax Viewer
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KDE G3/G4 Fax Viewer
+ .
+ This package is part of the official KDE graphics module.
+
+Package: python2.3-pam
+Status: purge ok not-installed
+Priority: optional
+Section: python
+Architecture: i386
+
+Package: kcron
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 396
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeadmin
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE Crontab editor
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ Crontab editor for KDE.
+ .
+ This package is part of the official KDE admin module.
+
+Package: libhdf5-serial-1.6.2-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1365
+Maintainer: Josselin Mouette <joss@debian.org>
+Architecture: i386
+Source: hdf5
+Version: 1.6.2-3
+Provides: libhdf5-1.6.2-0, libhdf5++-1.6.2-0
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libstdc++5 (>= 1:3.3.3-1), zlib1g (>= 1:1.2.1)
+Conflicts: libhdf5-1.6.2-0
+Description: Hierarchical Data Format 5 (HDF5) - runtime files - serial version
+ HDF5 is a file format and library for storing scientific data.
+ HDF5 was designed and implemented to address the deficiencies of
+ HDF4.x. It has a more powerful and flexible data model, supports
+ files larger than 2 GB, and supports parallel I/O.
+ .
+ This package contains runtime files for serial platforms.
+ .
+ URL: http://hdf.ncsa.uiuc.edu/HDF5/
+
+Package: shellutils
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 16
+Maintainer: Michael Stone <mstone@debian.org>
+Architecture: all
+Source: coreutils
+Version: 5.2.1-2
+Pre-Depends: coreutils
+Description: The GNU shell programming utilities (transitional package)
+ Empty package to facilitate upgrades, can be safely removed.
+
+Package: dhcp-client
+Status: deinstall ok config-files
+Priority: optional
+Section: net
+Installed-Size: 284
+Maintainer: Eloy A. Paris <peloy@debian.org>
+Source: dhcp
+Version: 2.0pl5-16.1
+Config-Version: 2.0pl5-16.1
+Replaces: dhcp-client-beta
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: dhcp-client-beta, dhcpcd
+Conffiles:
+ /etc/dhclient-script 413817ae1d37992ccaf40da683c190fe
+ /etc/dhclient.conf 10830c7543724cfd36f10dd87a5f98eb
+Description: DHCP Client
+ This is a split off from the dhcp package and contains the DHCP client
+ tools.
+ .
+ Cable modem users likely need this or another dhcp client to successfully
+ connect to the network.
+ .
+ Documentation (apart from manpages) can be found in the dhcp package.
+ .
+ Note: This package _requires_ a 2.2.x or later Linux kernel. 2.0.x
+ kernels are _not_ supported.
+ .
+ This is the DHCP client from version 2 of the Internet Software
+ Consortium DHCP package. For more information visit the ISC web site
+ at http://www.isc.org.
+
+Package: libnet-snpp-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 128
+Maintainer: Michael Alan Dorman <mdorman@debian.org>
+Version: 1.16-1
+Depends: perl (>= 5.6.0-16), perl (>= 5.8) | libnet-perl (>= 1:1.09)
+Description: Perl module for accessing SNPP servers
+ Net::SNPP is a Perl module that provides a Perl Developer access to the
+ SNPP Simple Network Paging Protocol.
+
+Package: aspell-sk
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 22948
+Maintainer: Brian Nelson <pyro@debian.org>
+Architecture: i386
+Version: 0.52-0-1
+Provides: aspell-dictionary
+Depends: libaspell15
+Suggests: aspell-bin
+Description: Slovak dictionary for GNU Aspell
+ This package contains all the required files to add support for the
+ Slovak language to the GNU Aspell spell checker.
+
+Package: libsnmp-base
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 2296
+Maintainer: Jochen Friedrich <jochen@scram.de>
+Architecture: all
+Source: net-snmp
+Version: 5.1.2-4
+Replaces: snmp (<= 3.6.2-3), libsnmp, zebra, zebra-pj, quagga
+Provides: libsnmp
+Conflicts: libsnmp
+Description: NET SNMP (Simple Network Management Protocol) MIBs and Docs
+ The Simple Network Management Protocol (SNMP) provides a framework
+ for the exchange of management information between agents (servers)
+ and clients. This package includes the MIBs (Management Information
+ Bases) and documentation for the the SNMP libraries, agents and
+ applications. MIBs contain a formal description of the data that can
+ be managed using SNMP. They are used by NET SNMP libraries, agents
+ and applications.
+
+Package: libpam0g-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 356
+Maintainer: Sam Hartman <hartmans@debian.org>
+Architecture: i386
+Source: pam
+Version: 0.76-22
+Replaces: libpam0g (<= 0.65)
+Provides: libpam-dev
+Depends: libpam0g (= 0.76-22), libc6-dev | libc-dev
+Conflicts: libpam-dev, libpam-dbg
+Description: Development files for PAM
+ Contains C header files and development shared libraries libraries for
+ libpam, the pluggable authentication modules, a suite of shared libraries
+ that enable the local system administrator to choose how applications
+ authenticate users.
+ .
+ PAM decouples applications from the authentication mechanism, making it
+ possible to upgrade the authentication system without recompiling or
+ rewriting the applications.
+
+Package: gawk
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 2136
+Maintainer: James Troup <james@nocrew.org>
+Architecture: i386
+Version: 1:3.1.4-1
+Provides: awk
+Pre-Depends: libc6 (>= 2.3.2.ds1-4)
+Description: GNU awk, a pattern scanning and processing language
+ `awk', a program that you can use to select particular records in a
+ file and perform operations upon them.
+ .
+ Gawk is the GNU Project's implementation of the AWK programming language.
+ It conforms to the definition of the language in the POSIX 1003.2 Command
+ Language And Utilities Standard. This version in turn is based on the
+ description in The AWK Programming Language, by Aho, Kernighan, and
+ Weinberger, with the additional features defined in the System V Release
+ 4 version of UNIX awk. Gawk also provides more recent Bell Labs awk
+ extensions, and some GNU-specific extensions.
+
+Package: ktalkd
+Status: deinstall ok config-files
+Priority: extra
+Section: net
+Installed-Size: 280
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Source: kdenetwork
+Version: 4:3.1.5-1
+Config-Version: 4:3.1.5-1
+Replaces: talkd
+Provides: talkd
+Depends: kdelibs4 (>= 4:3.1.5), libart-2.0-2 (>= 2.3.8), libaudio2, libc6 (>= 2.3.2.ds1-4), libfam0c102, libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.3.2-1), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libstdc++5 (>= 1:3.3.2-1), libxcursor1, libxft2 (>> 2.1.1), libxrender1, xlibmesa3-gl | libgl1, xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Recommends: talk, ytalk
+Conflicts: talkd
+Conffiles:
+ /etc/kde3/ktalkdrc f59ffb0d79bd21b1debe376fe15ddd3d
+Description: KDE talk daemon
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ Talk daemon for KDE.
+ .
+ This package is part of the official KDE network module.
+
+Package: mozilla-thunderbird
+Status: deinstall ok config-files
+Priority: optional
+Section: mail
+Installed-Size: 31940
+Maintainer: Alexander Sack <asac@jwsdot.com>
+Architecture: i386
+Version: 0.6-3
+Config-Version: 0.6-3
+Depends: libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.3.3-1), libglib2.0-0 (>= 2.4.1), libgtk2.0-0 (>= 2.4.1), libpango1.0-0 (>= 1.4.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxp6 | xlibs (>> 4.1.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Recommends: myspell-dictionary, xprt-xprintorg, mozilla-thunderbird-enigmail
+Suggests: mozilla-thunderbird-offline, mozilla-thunderbird-typeaheadfind, mozilla-thunderbird-inspector, mozilla-firefox, ttf-bitstream-vera, ttf-freefont
+Conffiles:
+ /etc/mozilla-thunderbird/global-config.js 48ea4063bc02cfdf05cc53724f3bb5e9
+Description: Mozilla Thunderbird standalone mail client
+ Mozilla Thunderbird is a redesign of the Mozilla mail component. The
+ goal is to produce a cross platform stand alone mail application using
+ the XUL user interface language. Mozilla Thunderbird leaves a somewhat
+ smaller memory footprint than the Mozilla suite.
+
+Package: pcmcia-cs
+Status: install ok installed
+Priority: extra
+Section: base
+Installed-Size: 1076
+Maintainer: Per Olofsson <pelle@dsv.su.se>
+Architecture: i386
+Version: 3.2.5-8
+Depends: libc6 (>= 2.3.2.ds1-4), modutils | module-init-tools, psmisc
+Pre-Depends: debconf (>= 0.2.17)
+Recommends: hotplug
+Suggests: pcmcia-modules, ifupdown (>= 0.6.4-4.2), wireless-tools, libx11-6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0)
+Conffiles:
+ /etc/init.d/pcmcia c25a1b58a9a1d119844330e433d7de8f
+ /etc/pcmcia/cis/3CCFEM556.dat 064309527ab5c6f73f17f99f6b07e471
+ /etc/pcmcia/cis/3CXEM556.dat 51e99ef0d234ea1b455b0555336f7379
+ /etc/pcmcia/cis/COMpad2.dat 66748ecad364a24ea2150fccb1adbca0
+ /etc/pcmcia/cis/COMpad4.dat a1b4e46b220b7ecaec0287875f47e549
+ /etc/pcmcia/cis/DP83903.dat fb612f42364fd06c46aa936386a79abb
+ /etc/pcmcia/cis/E-CARD.dat 3bd542b30f74fb6066b045436e0c70c6
+ /etc/pcmcia/cis/LA-PCM.dat bee381e5d148bd073184a5cadfb6c314
+ /etc/pcmcia/cis/MT5634ZLX.dat 15bc79fe185e6cc00c888ab6e54a0640
+ /etc/pcmcia/cis/NE2K.dat f6092c8b414a94b96e310654cc5cad04
+ /etc/pcmcia/cis/PCMLM28.dat bc1d913acfd5b8b70a6694bbd48b5795
+ /etc/pcmcia/cis/PE-200.dat b779b33a4a692557517a3e6edf343fb2
+ /etc/pcmcia/cis/PE520.dat fb7b7e2d7664771f0c4a1a39cc2efabf
+ /etc/pcmcia/cis/RS-COM-2P.dat c9dd2f55d05d86f88cdf52f3e1363da2
+ /etc/pcmcia/cis/tamarack.dat 90e5c6c2d26d81921e0f8d8c38c355f2
+ /etc/pcmcia/config.opts fa29265deae425e78d941c3803d923c7
+ /etc/pcmcia/config 79aace76b724b9265ddef31acc931433
+ /etc/pcmcia/ftl.opts c6e0cd4d69e56836a6ff071bba8df4c3
+ /etc/pcmcia/ftl 6dd75642c915ab390fd3cfe1a0aef4f3
+ /etc/pcmcia/ide.opts 98f615befe89350382037398ef6cd226
+ /etc/pcmcia/ide a081dbdfdfa893713443e0fdb744907a
+ /etc/pcmcia/ieee1394.opts 2bcfa5b4650abd23d1ddb94b49b8f1f5
+ /etc/pcmcia/ieee1394 f30fb7cf0ade37ca692261aa8099460e
+ /etc/pcmcia/memory.opts bd8486017c46fef68ac2ecf597c8e31b
+ /etc/pcmcia/memory a62afda6be1a5857b1ee447612b6df7d
+ /etc/pcmcia/network.opts 646dc1215a4c8e34176450a9b45ab296
+ /etc/pcmcia/network 13ae76afcb604089cf6a213a417e4982
+ /etc/pcmcia/parport.opts d7a128b7352b136d60935fca3638a4f6
+ /etc/pcmcia/parport fc0fa017d0d821e96cd3f99d22bbb212
+ /etc/pcmcia/scsi.opts 6c45330bd15b2db612d1d12d5682face
+ /etc/pcmcia/scsi d8ae3f54036a35bef6febc483ed096fd
+ /etc/pcmcia/serial.opts 29563e96e7629967e7c84689fd2ac01f
+ /etc/pcmcia/serial 3fbe1d5b0074322be599f0fccb342952
+ /etc/pcmcia/wireless.opts 19681af80e5979b9e5cde0d3572f1b44
+ /etc/pcmcia/wireless 813f33685dfae5811bf280241b068f93
+ /etc/pcmcia/shared cb5d56b3525f61a9af629a64819eea99
+Description: PCMCIA Card Services for Linux
+ PCMCIA cards are commonly used in laptops to provide expanded
+ capabilities, such as modems, increased memory, etc. Some desktop PCs
+ can accept PCMCIA cards as well, although this is rare.
+ .
+ This package provides the card manager daemon that can respond to card
+ insertion and removal events, loading and unloading drivers on demand.
+ It supports ``hot swapping'' of most PCMCIA cards, so cards can be
+ inserted and ejected at any time.
+ .
+ The actual kernel modules required for this package are contained
+ in either the pcmcia-modules-<kernel version> package or the
+ kernel-pcmcia-modules-<kernel version> package, where <kernel
+ version> is the version of the kernel for which the modules have
+ been compiled. The pcmcia-modules-<kernel version> package contains
+ the drivers that were compiled from this package's source. The
+ kernel-pcmcia-modules-<kernel version> package contains the drivers
+ that compiled from the (version 2.4 or later) kernel source.
+ .
+ Since version 2.4 (and later) kernels have their own drivers, they can
+ be built with their own PCMCIA support. Nevertheless, this package or
+ the hotplug package is still required to load and unload drivers on
+ demand.
+ .
+ The ifupdown package can be used to configure PCMCIA network
+ interfaces. The wireless-tools package is required by many wireless
+ network adapters. The hotplug package is required by 2.4 (and later)
+ series kernels to use PCI (Cardbus) devices.
+
+Package: cupsys-bsd
+Status: install ok installed
+Priority: extra
+Section: net
+Installed-Size: 192
+Maintainer: Kenshi Muto <kmuto@debian.org>
+Architecture: i386
+Source: cupsys
+Version: 1.1.20final+rc1-5
+Replaces: lpr, cupsys (<= 1.1.15-2), manpages-fr (<< 0.9.5-1)
+Provides: lpr
+Depends: libc6 (>= 2.3.2.ds1-4), libcupsys2-gnutls10 (>= 1.1.20final-1), cupsys-client (= 1.1.20final+rc1-5), debconf, netbase
+Conflicts: lpr, lprng, manpages-fr (<< 0.9.5-1)
+Description: Common UNIX Printing System(tm) - BSD commands
+ The Common UNIX Printing System (or CUPS(tm)) is a printing system and
+ general replacement for lpd and the like. It supports the Internet
+ Printing Protocol (IPP), and has its own filtering driver model for
+ handling various document types.
+ .
+ This package provides the BSD commands for interacting with CUPS. It
+ is provides separately to allow CUPS to coexist with other printing
+ systems (to a small degree).
+ .
+ The terms "Common UNIX Printing System" and "CUPS" are trademarks of
+ Easy Software Products (www.easysw.com), and refer to the original
+ source packages from which these packages are made.
+
+Package: gramps
+Status: deinstall ok config-files
+Priority: optional
+Section: gnome
+Installed-Size: 13924
+Maintainer: James A. Treacy <treacy@debian.org>
+Architecture: all
+Version: 1.0.5a-1
+Config-Version: 1.0.5a-1
+Replaces: gramps-manual, gramps-extending-doc
+Depends: python2.3-gnome2 (>= 2.0.2-1), python2.3-glade2, python2.3-reportlab, python2.3-imaging, scrollkeeper, yelp
+Recommends: rcs
+Conflicts: gramps-manual, gramps-extending-doc, gramps-common
+Description: Genealogical Research and Analysis Management Program
+ GRAMPS, the Genealogical Research and Analysis Management Programming System
+ is an Open Source genealogy program written in Python, using the GTK/GNOME
+ interface.
+ GRAMPS has the ability to import GEDCOM files that are used in such programs
+ as FamilyTree Maker for Windows and can produce reports in various formats
+ such as the popular ABIWord and OpenOffice.org formats as well as HTML and PDF.
+
+Package: libxtst-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 304
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs-dev (<< 4.3.0)
+Depends: libxtst6 (= 4.3.0.dfsg.1-7), x-dev, libxext-dev, libxi-dev, libx11-dev, libc6-dev | libc-dev
+Conflicts: xlibs-dev (<< 4.3.0)
+Description: X Window System event recording and testing extension library development files
+ Header files and a static version of the Xtst library are provided by this
+ package.
+ .
+ See the libxtst6 package for further information.
+
+Package: libartsc0-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 28
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: arts
+Version: 1.3.0-1
+Replaces: libarts (<< 4:3.0.0), libarts-alsa (<< 4:3.0.0), libarts-dev (<< 4:3.0.0)
+Depends: libartsc0 (= 1.3.0-1), libglib2.0-dev
+Conflicts: libarts (<< 4:3.0.0), libarts-alsa (<< 4:3.0.0), libarts-dev (<< 4:3.0.0)
+Description: aRts Sound system C support library (development files)
+ aRts is a short form for "analog realtime synthesizer". The idea of the whole
+ thing is to create/process sound using small modules which do certain tasks.
+ These may be create a waveform (oscillators), play samples, filter data, add
+ signals, perform effects like delay/flanger/chorus, or output the data to
+ the soundcard.
+ .
+ This package contains the header files needed to build apps that use the aRts
+ sound daemon C binding.
+ .
+ This package is part of the official KDE aRts module.
+
+Package: resolvconf
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 248
+Maintainer: Thomas Hood <jdthood@yahoo.co.uk>
+Architecture: all
+Version: 1.21
+Depends: initscripts (>= 2.85-15), debconf (>= 0.5) | debconf-2.0
+Suggests: ppp (>= 2.4.2), dhcp3-client (>= 3.0+3.0.1rc11-5) | dhcp-client (>= 2.0pl5-18) | dhcpcd (>= 1:1.3.22pl4-9) | pump (>= 0.8.19), ifupdown (>= 0.6.4-4.7), bind9 (>= 1:9.2.3-1) | dnsmasq (>= 2.9-2) | pdnsd (>= 1.1.11par-1)
+Conflicts: pppconfig (<< 2.3.1), pppoeconf (<< 1.0), xisp, totd, dhcp3-client (<< 3.0+3.0.1rc11-5), dhcp-client (<< 2.0pl5-18), dhcp-client (= 3.0.1betaRC4-1), dhcpcd (<< 1:1.3.22pl4-7), pump (<< 0.8.15-1), udhcpc, pcmcia-cs (<< 3.2.5-1), ifupdown (<< 0.6.4-4.1), divine, laptop-net (<< 2.21-1), whereami (<< 0.3.3), bind9 (<< 1:9.2.1-7), bind (<< 1:8.3.4-1), dnsmasq (<< 1.13-2), pdnsd (<< 1.1.10par-4)
+Enhances: bind9 (>= 1:9.2.3-1) | bind (>= 1:8.4.1-2), libc6, nscd
+Conffiles:
+ /etc/network/if-up.d/000resolvconf 23194eaf9dea57daa2abd55cf4955665
+ /etc/network/if-down.d/resolvconf 23123d3c66c57763836442b30dee6a3a
+ /etc/dhcp3/dhclient-enter-hooks.d/resolvconf badcb5438b49ff5d3ce4df68aa028cde
+ /etc/resolvconf/update.d/bind 34ec3c997ec54a3579f0de9156167e1b
+ /etc/resolvconf/update.d/libc 9569cef611cea06e0b57ee8ae2b18ff2
+ /etc/resolvconf/resolv.conf.d/base d41d8cd98f00b204e9800998ecf8427e
+ /etc/resolvconf/resolv.conf.d/head 5aee5a60350035d958401da5c0432be3
+ /etc/resolvconf/interface-order 1e4c2e44c41b0a17da1bf084586fd267
+ /etc/init.d/resolvconf 5cb87a0aa6be30793e67f46f10f20624
+ /etc/ppp/ip-up.d/000resolvconf df2318145721c6a0b4be542dc4992ea6
+ /etc/ppp/ip-down.d/000resolvconf 6734d6d684e63179350921b1b85ac99d
+Description: Nameserver information manager
+ Resolvconf is a framework for keeping track of the system's
+ information about currently available nameservers. It sets
+ itself up as the intermediary between programs that supply
+ nameserver information and programs that use nameserver
+ information. Examples of programs that supply nameserver
+ information are: ifupdown, DHCP clients, the PPP daemon and
+ local nameservers. Examples of programs that use this
+ information are: DNS caches, resolver libraries and the
+ programs that use them.
+ .
+ This package may require some manual configuration. Please
+ read the README file for detailed instructions.
+
+Package: libnewt0
+Status: install ok installed
+Priority: standard
+Section: base
+Installed-Size: 112
+Maintainer: Enrique Zanardi <ezanard@debian.org>
+Source: newt
+Version: 0.50.17-9.6
+Depends: libc6 (>= 2.2.4-4), slang1 (>> 1.4.4-7.1)
+Conflicts: libnewt-utf8-0
+Description: Not Erik's Windowing Toolkit - text mode windowing with slang
+ Newt is a windowing toolkit for text mode built from the slang library.
+ It allows color text mode applications to easily use stackable windows,
+ push buttons, check boxes, radio buttons, lists, entry fields, labels,
+ and displayable text. Scrollbars are supported, and forms may be nested
+ to provide extra functionality. This package contains the shared library
+ for programs that have been built with newt.
+
+Package: libimlib2-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 1592
+Maintainer: Laurence J. Lane <ljlane@debian.org>
+Architecture: i386
+Source: imlib2
+Version: 1.1.0-12.3
+Replaces: libimlib2
+Depends: libimlib2 (= 1.1.0-12.3), libc6-dev, libjpeg62-dev, libpng3-dev, libtiff4-dev, zlib1g-dev, libungif4-dev, libx11-dev, libxext-dev, libfreetype6-dev
+Description: Imlib2 development files
+ Headers, static libraries and documentation for developing
+ software that uses Imlib2.
+ .
+ Imlib2 is an advanced replacement library for libraries like
+ libXpm that provides many more features with much greater
+ flexibility and speed than standard libraries, including font
+ rasterization, rotation, RGBA space rendering and blending,
+ dynamic binary filters, scripting, and more.
+ .
+ Imlib2 is not a drop-in replacement for Imlib 1.x.
+
+Package: libstorable-perl
+Status: purge ok not-installed
+Priority: optional
+Section: interpreters
+
+Package: libdpkg-ruby1.8
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 96
+Maintainer: Fumitoshi UKAI <ukai@debian.or.jp>
+Architecture: all
+Source: dpkg-ruby
+Version: 0.3.1
+Depends: libruby1.8
+Description: modules/classes for dpkg on ruby 1.8
+ It provides Debian::Dpkg and Debian::DpkgDeb modules and
+ Debian::Deb, Debian::Dsc, Debian::Archives, Debian::Sources,
+ Debian::Packages and Debian::Status classes on ruby 1.8.
+
+Package: libdpkg-ruby1.6
+Status: purge ok not-installed
+Priority: optional
+Section: devel
+
+Package: librss1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 160
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdenetwork
+Version: 4:3.3.0-2
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: KDE RSS library
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ This is the runtime package for programs that use the KDE RSS library.
+ .
+ This package is part of the official KDE network module.
+
+Package: gnome-doc-tools
+Status: deinstall ok config-files
+Priority: optional
+Section: text
+Installed-Size: 100
+Maintainer: Jules Bean <jules@debian.org>
+Architecture: all
+Version: 1.0-6.1
+Config-Version: 1.0-6.1
+Depends: docbook-dsssl
+Conflicts: cygnus-stylesheets
+Description: Tools, stylesheets and DTDs for GNOME.
+ This package provides tools, stylesheets and DTDs for use by
+ the GNOME Documentation Project.
+
+Package: info2www
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 156
+Maintainer: Uwe Hermann <uwe@debian.org>
+Version: 1.2.2.9-22
+Depends: perl, apache | httpd
+Description: Read info files with a WWW browser
+ info2www lets you read info files with a WWW browser. It requires
+ a HTTP server with CGI support.
+
+Package: atlas3-base
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 12436
+Maintainer: Camm Maguire <camm@enhanced.com>
+Architecture: i386
+Source: atlas3
+Version: 3.6.0-16
+Replaces: atlas2 (<< 3.2.1-1)
+Provides: libatlas.so.3, libblas.so.3, liblapack.so.3
+Depends: libc6 (>= 2.3.2.ds1-4), libg2c0 (>= 1:3.3.4-1), debconf (>= 0.5) | debconf-2.0
+Suggests: atlas3-3dnow, atlas3-sse, atlas3-sse2, refblas3, lapack3
+Conflicts: atlas2 (<< 3.2.1-1)
+Description: Automatically Tuned Linear Algebra Software,generic shared
+ ATLAS is an approach for the automatic generation and optimization of
+ numerical software. Currently ATLAS supplies optimized versions for the
+ complete set of linear algebra kernels known as the Basic Linear Algebra
+ Subroutines (BLAS), and a subset of the linear algebra routines in the
+ LAPACK library.
+ .
+ The libraries in this package are built without any processor extension
+ instructions, and should run on all processors of this general
+ architecture, albeit less than optimally.
+ .
+ On some architectures, multiple binary packages are provided to take
+ advantage of certain commonly available processor instruction set
+ extensions. The instruction extension set used is indicated in the
+ package name, with 'base' denoting no extensions. In general, you
+ will obtain the best performance by installing the package with the
+ most advanced instruction extension set your machine is capable of
+ running.
+ .
+ Homepage: http://math-atlas.sourceforge.net/
+
+Package: libdb2-util
+Status: purge ok not-installed
+Priority: optional
+Section: devel
+
+Package: libxpm4
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 360
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: xlibs (<< 4.3.0)
+Description: X pixmap library
+ libXpm, the X pixmap library, is a set of routines used to store and retrieve
+ X pixmaps (an X Window System data structure comprising a rectangular array
+ of pixels) from files; the xpm file format is an extension of the monochrome
+ bitmap file format in the X11 specification. (Traditionally, libXpm was
+ maintained and distributed separately from the X Window System, but XFree86
+ has absorbed this library).
+
+Package: twm
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 600
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xbase (<< 3.3.2.3a-2)
+Provides: x-window-manager
+Depends: menu (>> 1.5), libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0)
+Conffiles:
+ /etc/X11/twm/system.twmrc-menu 3d2395b6774fb151764ad5ee09796f63
+ /etc/menu-methods/twm 5d5abc9f2b19e7d985812efaccf06834
+Description: Tab window manager
+ twm is a window manager for the X Window System. It provides title bars,
+ shaped windows, several forms of icon management, user-defined macro
+ functions, click-to-type and pointer-driven keyboard focus, and
+ user-specified key and pointer button bindings.
+
+Package: qt-styles-qtcurve
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 276
+Maintainer: Christoffer Sawicki <qerub@home.se>
+Architecture: i386
+Source: qtcurve
+Version: 0.22-2
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: QtCurve theme for Qt
+ A theme based on Red Hat's Bluecurve but with lots of extra polish.
+ QtCurve features gradients, round widgets and other nice details.
+ .
+ You might want to install the qtcurve metapackage to get the other theme
+ engines in the QtCurve family and give your desktop a consistent look.
+ .
+ This package also enables you to control the look of QtCurve through the
+ style settings in the KDE Control Center.
+
+Package: prelink
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 964
+Maintainer: Andrés Roldán <aroldan@debian.org>
+Architecture: i386
+Version: 0.0.20040520-3
+Depends: libc6 (>= 2.3.2.ds1-4), libelfg0 (>= 0.8.5-1), libselinux1 (>= 1.12)
+Conffiles:
+ /etc/default/prelink ca8007f8916df6130894867cbfa67e6c
+ /etc/cron.daily/prelink 848abb248e1e3685b524a81396acee04
+ /etc/prelink.conf 30a63cd2c40be5fae83a254b2a857514
+Description: ELF prelinking utility to speed up dynamic linking
+ The prelink package contains a utility which modifies ELF shared libraries
+ and executables, so that far fewer relocations need to be resolved at
+ runtime and thus programs come up faster.
+
+Package: debian-guide
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 10606
+Maintainer: John Goerzen <jgoerzen@complete.org>
+Version: 1.1.0
+Description: Text from: Debian GNU/Linux: Guide to Installation and Usage
+ This package will install the full text in HTML and PostScript formats
+ from the book "Debian GNU/Linux: Guide to Installation and Usage" by
+ Debian developers John Goerzen and Ossama Othman (ISBN 0-7357-0914-9).
+ .
+ You can find the installed items under /usr/share/doc/debian-guide.
+
+Package: python2.3-sip4-qt3
+Status: install ok installed
+Priority: optional
+Section: python
+Installed-Size: 133
+Maintainer: Ricardo Javier Cardenes Medina <rcardenes@debian.org>
+Architecture: i386
+Source: sip4-qt3
+Version: 4.0.1-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libqt3c102-mt (>= 3:3.3.2), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), python2.3
+Conflicts: python2.3-sip-qt2, python2.3-sip-qt2-mt, python2.3-sip-qt3 (<< 4.0)
+Description: Python/C++ bindings generator - Python2.3+Qt3 runtime
+ SIP is a tool for generating bindings for C++ classes with some ideas
+ borrowed from SWIG, but capable of tighter bindings, because it's
+ specific to C++ and Python.
+ .
+ This is the Python 2.3 module needed by those created using sip and
+ is compiled against Qt 3.
+
+Package: gnome-keyring
+Status: purge ok not-installed
+Priority: optional
+Section: gnome
+Architecture: i386
+
+Package: pm-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 256
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: all
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs-dev (<< 4.3.0)
+Conflicts: xlibs-dev (<< 4.3.0)
+Description: proxy management protocol development files
+ Header files for the Open Group's proxy management protocol are provided by
+ this package.
+ .
+ There is no library implementation of this protocol at present; see
+ xc/programs/proxymngr in the xfree86 source package for a sample
+ implementation in an executable.
+
+Package: 3dchess
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 152
+Maintainer: Stephen Stafford <bagpuss@debian.org>
+Architecture: i386
+Version: 0.8.1-11
+Config-Version: 0.8.1-11
+Depends: libc6 (>= 2.3.2.ds1-4), xaw3dg (>= 1.5+E-1), xlibs (>> 4.1.0)
+Description: 3D chess for X11
+ 3 dimensional Chess game for X11R6. There are three boards, stacked
+ vertically; 96 pieces of which most are the traditional chess pieces with
+ just a couple of additions; 26 possible directions in which to move. The
+ AI isn't wonderful, but provides a challenging enough game to all but the
+ most highly skilled players.
+
+Package: libpanel-applet2-0
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 164
+Maintainer: Marc Dequènes (Duck) <Duck@DuckCorp.org>
+Architecture: i386
+Source: gnome-panel
+Version: 2.6.2-1
+Config-Version: 2.6.2-1
+Replaces: gnome-panel (<< 2.6.0-2)
+Depends: libart-2.0-2 (>= 2.3.16), libatk1.0-0 (>= 1.6.0), libbonobo2-0 (>= 2.6.2), libbonoboui2-0 (>= 2.5.4), libc6 (>= 2.3.2.ds1-4), libgconf2-4 (>= 2.6.1), libglade2-0 (>= 1:2.3.6), libglib2.0-0 (>= 2.4.1), libgnome2-0 (>= 2.6.0), libgnomecanvas2-0 (>= 2.6.0), libgnomeui-0 (>= 2.6.0), libgnomevfs2-0 (>= 2.6.0), libgtk2.0-0 (>= 2.4.3), libice6 | xlibs (>> 4.1.0), liborbit2 (>= 1:2.10.0), libpango1.0-0 (>= 1.4.0), libpopt0 (>= 1.7), libsm6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.10), zlib1g (>= 1:1.2.1)
+Description: Library for GNOME 2 Panel applets
+ This library is used by GNOME 2 panel applets.
+
+Package: apt-listbugs
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 336
+Maintainer: Masato Taruishi <taru@debian.org>
+Architecture: all
+Version: 0.0.42
+Depends: ruby (>= 1.8), libdpkg-ruby1.8, apt, libzlib-ruby1.8, libintl-gettext-ruby1.8
+Suggests: reportbug, debianutils (>= 2.0) | www-browser | w3m
+Conffiles:
+ /etc/apt/apt.conf.d/10apt-listbugs 3c49838e6f482791f68ef6f20e43404f
+ /etc/cron.daily/apt-listbugs 83a345642783a9824c28460b9dc0dd82
+Description: Lists critical bugs before each apt installation
+ apt-listbugs is a tool which retrieves bug reports from the Debian
+ Bug Tracking System and lists them. Especially, it is intended to
+ be invoked before each upgrade/installation by apt in order to check
+ whether the upgrade/installation is safe.
+ .
+ Most of Debian developers use the unstable version of Debian
+ and some users also use it because the version is the latest
+ snapshot which includes many new features and packages.
+ .
+ apt is a great convenient tool to follow your system to the latest
+ version easily. On the other hand, the feature also makes your system
+ break easily. If a package is broken and uploaded to the Debian unstable,
+ the package will be installed on many Debian system soon.
+ .
+ This tool aims to make the broken upgrade as safe as possible. You can
+ check whether the upgrade is safe or not just before the upgrade.
+
+Package: python2.3-pyorbit
+Status: purge ok not-installed
+Priority: optional
+Section: python
+Architecture: i386
+
+Package: tar
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 1416
+Maintainer: Bdale Garbee <bdale@gag.com>
+Architecture: i386
+Version: 1.14-2
+Replaces: cpio
+Pre-Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: bzip2
+Conflicts: cpio (<= 2.4.2-38)
+Conffiles:
+ /etc/rmt 3c58b7cd13da1085eff0acc6a00f43c7
+Description: GNU tar
+ Tar is a program for packaging a set of files as a single archive in tar
+ format. The function it performs is conceptually similar to cpio, and to
+ things like PKZIP in the DOS world. It is heavily used by the Debian package
+ management system, and is useful for performing system backups and exchanging
+ sets of files with others.
+
+Package: file
+Status: install ok installed
+Priority: standard
+Section: utils
+Installed-Size: 48
+Maintainer: Michael Piefel <piefel@debian.org>
+Architecture: i386
+Version: 4.10-3
+Depends: libmagic1 (= 4.10-3), libc6 (>= 2.3.2.ds1-4), libmagic1, zlib1g (>= 1:1.2.1)
+Conffiles:
+ /etc/magic 272913026300e7ae9b5e2d51f138e674
+Description: Determines file type using "magic" numbers
+ File tests each argument in an attempt to classify it. There are three
+ sets of tests, performed in this order: filesystem tests, magic number
+ tests, and language tests. The first test that succeeds causes the
+ file type to be printed.
+ .
+ Starting with version 4, the file command is not much more than a wrapper
+ around the "magic" library.
+
+Package: python2.3-pyopenssl
+Status: purge ok not-installed
+Priority: optional
+Section: python
+Architecture: i386
+
+Package: libkpimexchange1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 316
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Replaces: kdepim-libs (<< 4:3.2.0)
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkcal2 (>= 4:3.3.0), libstdc++5 (>= 1:3.3.4-1)
+Conflicts: kdepim-libs (<< 4:3.2.0)
+Description: KDE PIM Exchange library
+ This is the runtime package for programs that use the libkpimexchange
+ library.
+ .
+ This package is part of the official KDE pim module.
+
+Package: kdegames
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 56
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: all
+Version: 4:3.3.0-1
+Depends: atlantik (>= 4:3.3.0-1), kasteroids (>= 4:3.3.0-1), katomic (>= 4:3.3.0-1), kbackgammon (>= 4:3.3.0-1), kbattleship (>= 4:3.3.0-1), kblackbox (>= 4:3.3.0-1), kbounce (>= 4:3.3.0-1), kenolaba (>= 4:3.3.0-1), kfouleggs (>= 4:3.3.0-1), kgoldrunner (>= 4:3.3.0-1), kjumpingcube (>= 4:3.3.0-1), klickety (>= 4:3.3.0-1), klines (>= 4:3.3.0-1), kmahjongg (>= 4:3.3.0-1), kmines (>= 4:3.3.0-1), kolf (>= 4:3.3.0-1), konquest (>= 4:3.3.0-1), kpat (>= 4:3.3.0-1), kpoker (>= 4:3.3.0-1), kreversi (>= 4:3.3.0-1), ksame (>= 4:3.3.0-1), kshisen (>= 4:3.3.0-1), ksirtet (>= 4:3.3.0-1), ksmiletris (>= 4:3.3.0-1), ksnake (>= 4:3.3.0-1), ksokoban (>= 4:3.3.0-1), kspaceduel (>= 4:3.3.0-1), ktron (>= 4:3.3.0-1), ktuberling (>= 4:3.3.0-1), kwin4 (>= 4:3.3.0-1), lskat (>= 4:3.3.0-1)
+Suggests: kdegames-doc-html (>= 4:3.3.0-1)
+Description: KDE Games metapackage
+ This is an empty package which depends on the current version of
+ every game in the kdegames distribution.
+
+Package: libsdl-image1.2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 92
+Maintainer: Michael Koch <konqueror@gmx.de>
+Architecture: i386
+Source: sdl-image1.2
+Version: 1.2.3-5
+Depends: libc6 (>= 2.3.2.ds1-4), libjpeg62, libpng12-0 (>= 1.2.5.0-4), libsdl1.2debian (>> 1.2.4), libtiff4, zlib1g (>= 1:1.2.1)
+Conflicts: criticalmass (<< 0.97-2), libsdl-perl (<< 1.16-2), burgerspace (<< 1.6.1-1), armagetron (<< 0.1.4.9-5), libparagui1.0 (<= 0.1.0-1)
+Description: image loading library for Simple DirectMedia Layer 1.2
+ This is a simple library to load images of various formats as SDL surfaces.
+ This library currently supports BMP, PPM, PCX, GIF, JPEG, PNG, TIFF, and XPM
+ formats.
+
+Package: liburi-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 384
+Maintainer: Stefan Hornburg (Racke) <racke@linuxia.de>
+Version: 1.30-1
+Depends: perl (>= 5.6.0-16), libmime-base64-perl, libnet-perl, data-dumper
+Suggests: libwww-perl (>= 5.41)
+Conflicts: libwww-perl (<< 5.41)
+Description: Manipulates and accesses URI strings
+ From the README:
+ .
+ This package contains the URI.pm module with friends. The module
+ implements the URI class. Objects of this class represent Uniform
+ Resource Identifier (URI) references as specified in RFC 2396.
+ .
+ URI objects can be used to access and manipulate the various
+ components that make up these strings. There are also methods to
+ combine URIs in various ways.
+ .
+ The URI class replace the URI::URL class that used to be distributed
+ with libwww-perl. This package contains an emulation of the old
+ URI::URL interface. The emulated URI::URL implement both the old and
+ the new interface.
+
+Package: kitchensync
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 1744
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libkcal2 (>= 4:3.3.0), libkdepim1 (>= 4:3.3.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Description: Synchronization framework
+ This package contains a synchronization framework, still under heavy
+ development.
+ .
+ This package is part of the official KDE pim module.
+
+Package: libqt-perl
+Status: install ok installed
+Priority: optional
+Section: perl
+Installed-Size: 5932
+Maintainer: Peter Hawkins <peterh@debian.org>
+Version: 3.008-1
+Depends: libaudio2, libc6 (>= 2.3.2-1), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.3.1-1), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.1), libstdc++5 (>= 1:3.3.1-1), libxcursor1 (>= 1.0.2), libxft2 (>> 2.1.1), libxrender1 (>= 0.8.1), xlibmesa3-gl | libgl1, xlibmesa3-glu | libglu1, xlibs (>> 4.1.0), zlib1g (>= 1:1.1.4)
+Description: Perl bindings for the Qt library
+ This module lets you use the Qt library from Perl.
+ It provides an object-oriented interface and is easy to use.
+
+Package: libfont-afm-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 140
+Maintainer: Stephen Zander <gibreel@debian.org>
+Version: 1.18-1
+Depends: perl (>= 5.6.0-16)
+Description: Font::AFM - Interface to Adobe Font Metrics files
+ This module implements the Font::AFM class. Objects of this class are
+ initialised from an AFM-file and allows you to obtain information
+ about the font and the metrics of the various glyphs in the font.
+ .
+ All measurements in AFM files are given in terms of units equal to
+ 1/1000 of the scale factor of the font being used. To compute actual
+ sizes in a document, these amounts should be multiplied by (scale
+ factor of font)/1000.
+
+Package: docbook
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 1962
+Maintainer: Adam Di Carlo <aph@debian.org>
+Architecture: all
+Version: 4.3-1
+Depends: sgml-data (>= 1.5.0), sgml-base (>= 1.17)
+Suggests: psgml, docbook-xml, docbook-dsssl
+Description: standard SGML representation system for technical documents
+ DocBook is an SGML document type definition (DTD) that is well-suited
+ to books, articles, or reference documentation about technical
+ matters, systems, or software (although it is by no means limited to
+ these applications). It has emerged as an open and standard DTD in the
+ software industry, and is used as the documentation system of choice
+ for many free software projects.
+ .
+ This package contains the SGML DTD for DocBook, which describes
+ the formal structure for documents following this format. If you
+ wish to author DocBook documents using XML rather than SGML, use the
+ 'docbook-xml' package. You will need other packages in order to edit
+ (psgml), validate (opensp) or format (docbook-xsl, docbook-dsssl)
+ DocBook documents.
+ .
+ This package includes the 2.4.1, 3.0, 3.1, 4.0, 4.1, 4.2 and 4.3 versions
+ of the DocBook SGML DTD.
+ .
+ Homepage: http://www.oasis-open.org/docbook/sgml/
+
+Package: debtags
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 344
+Maintainer: Enrico Zini <enrico@debian.org>
+Architecture: i386
+Version: 0.99.2
+Depends: apt, libapt-pkg-libc6.3-5-3.3, libc6 (>= 2.3.2.ds1-4), libdebtags0 (>= 0.9.1), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1), libtagcoll0 (>= 0.99)
+Conffiles:
+ /etc/debtags/sources.list 85895d18befef75e185af3d787f14c34
+Description: Enables support for package tags
+ debtags provides a system to download a database of package tags and keep
+ it up to date. A package tag is a small label that gets attached to a
+ Debian package to represent one of his qualities.
+ .
+ A package tag database in the system can enable advanced package search
+ techniques, and advanced package browsing functions in programs that
+ support it.
+ .
+ This package has been made as a way to deploy and test package tags
+ support until it gets integrated in the normal Debian workflow.
+
+Package: libwine-print
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+Architecture: i386
+
+Package: libgc1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 240
+Maintainer: Ryan Murray <rmurray@debian.org>
+Architecture: i386
+Source: libgc
+Version: 1:6.3-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.4-1), libstdc++5 (>= 1:3.3.4-1)
+Description: Conservative garbage collector for C and C++
+ Boehm's GC is a garbage collecting storage allocator that is
+ intended to be used as a plug-in replacement for C's malloc.
+
+Package: libart2
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 96
+Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Source: gnome-libs
+Version: 1.4.2-19
+Config-Version: 1.4.2-19
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: The GNOME canvas widget - runtime files
+ GNOME is a project to build a complete, user-friendly desktop based
+ entirely on free software.
+ .
+ A canvas appears as a normal GTK+ widget with its own GDK window (or X
+ window).
+ .
+ The programmer can insert graphical items into the canvas. The canvas
+ provides several predefined item types, including lines, rectangles,
+ ellipses, polygons, and text. Canvas items can be manipulated after they
+ are created and inserted into the canvas. Common operations include
+ changing the color of an item or moving it to a different position.
+ .
+ The canvas takes care of all drawing operations so that it never flickers,
+ and so that the user does not have to worry about repainting the items he
+ or she wants to display.
+
+Package: krb5-user
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 336
+Maintainer: Sam Hartman <hartmans@debian.org>
+Architecture: i386
+Source: krb5
+Version: 1.3.4-4
+Depends: libc6 (>= 2.3.2.ds1-4), libcomerr2 (>= 1.33-3), libkadm55, libkrb53 (>= 1.3.2), libss2, libkrb53 (= 1.3.4-4), libkadm55 (= 1.3.4-4), krb5-config
+Conflicts: heimdal-clients, kerberos4kth-user, suidmanager (<< 0.50), kerberos4kth-services
+Description: Basic programs to authenticate using MIT Kerberos
+ Kerberos is a system for authenticating users and services on a network.
+ Kerberos is a trusted third-party service. That means that there is a
+ third party (the kerberos server) that is trusted by all the entities on
+ the network (users and services, usually called "principals").
+ .
+ This is the MIT reference implementation of Kerberos5.
+
+Package: libdbm-ruby1.8
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 168
+Maintainer: akira yamada <akira@debian.org>
+Architecture: i386
+Source: ruby1.8
+Version: 1.8.1+1.8.2pre2-3
+Depends: libc6 (>= 2.3.2.ds1-4), libgdbm3, libruby1.8 (>= 1.8.1+1.8.2pre2-3)
+Description: DBM interface for Ruby 1.8
+ This package provides an extension library "dbm" for Ruby 1.8. The
+ library makes Ruby programs to be able to access to a DBM file.
+ .
+ On Debian, the extension library is built with GDBM.
+
+Package: libintl-gettext-ruby1.8
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 56
+Maintainer: Masato Taruishi <taru@debian.org>
+Source: libintl-gettext-ruby
+Version: 0.11-5
+Depends: libc6 (>= 2.3.2.ds1-4), libruby1.8 (>= 1.8.1-2)
+Description: Gettext wrapper for Ruby 1.8
+ A simple wrapper of GNU gettext for Ruby 1.8.
+
+Package: libgempc430
+Status: install ok installed
+Priority: extra
+Section: libs
+Installed-Size: 132
+Maintainer: Ludovic Rousseau <rousseau@debian.org>
+Architecture: i386
+Source: ifd-gempc
+Version: 0.9.3-1
+Provides: pcsc-ifd-handler
+Depends: libc6 (>= 2.3.2.ds1-4), libusb-0.1-4 (>= 1:0.1.8), debconf, pcscd (>= 1.1.2-ubeta4-1)
+Recommends: hotplug
+Description: PC/SC driver for the GemPC 430, 432, 435 smart card readers
+ This library provides a PC/SC IFD handler implementation for the Gemplus
+ GemPC430, GemPC432 and GemPC435 USB smart card readers.
+ .
+ This package is needed to communicate with the GemPC43x smartcard
+ readers through the PC/SC Lite resource manager (pcscd).
+ .
+ Homepage: http://ludovic.rousseau.free.fr/softwares/ifd-GemPC/
+
+Package: libintl-gettext-ruby1.6
+Status: purge ok not-installed
+Priority: optional
+Section: interpreters
+
+Package: libtiff3g
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+Architecture: i386
+
+Package: etherconf
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 168
+Maintainer: Progeny Debian Packaging Team <debian-packages@progeny.com>
+Architecture: all
+Version: 1.17
+Depends: debconf (>= 1.2.0), ifupdown (>= 0.6.4), dhcp-client, libconfhelper-perl
+Suggests: configlet-frontends
+Conflicts: python-configlet (<< 2.0)
+Description: debconf interface to Ethernet device configuration
+ Etherconf is a debconf-based interface for configuring Ethernet devices on
+ your system. It supports both manual and DHCP-based configurations.
+
+Package: subversion
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 1664
+Maintainer: David Kimdon <dwhedon@debian.org>
+Architecture: i386
+Version: 1.0.6-2
+Depends: libapr0 (>= 2.0.50), libc6 (>= 2.3.2.ds1-4), libdb4.2, libexpat1 (>= 1.95.6), libldap2 (>= 2.1.17-1), libneon24 (>= 0.24.7.dfsg), libssl0.9.7, libsvn0 (>= 1.0.6-2), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1), patch, db4.2-util
+Suggests: subversion-tools
+Conffiles:
+ /etc/bash_completion.d/subversion 21431b97ca90529025a066df4b29d905
+ /etc/subversion/config 7d7efddb48658fde2efb12a87af1bb1f
+ /etc/subversion/servers 1a483279d4758bb8e0c7d60fdb608a5f
+ /etc/emacs/site-start.d/50psvn.el 92ea6c9fd048c8f7adb5c5369919764b
+ /etc/emacs/site-start.d/50vc-svn.el df58af14947d0142899baad702adb9bb
+Description: Advanced version control system (aka. svn)
+ Subversion is a version control system much like the Concurrent
+ Versions System (CVS). Version control systems allow many
+ individuals (who may be distributed geographically) to collaborate on
+ a set of files (typically source code). Subversion has all the major
+ features of CVS, plus certain new features that CVS users often wish
+ they had.
+ .
+ This package includes the Subversion client (svn), tools for creating
+ a Subversion repository and tools to make a repository available
+ over the network using a program like ssh.
+ .
+ http://subversion.tigris.org
+
+Package: libgnomeprintui2.2-0
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 276
+Maintainer: Rob Taylor <robtaylor@fastmail.fm>
+Architecture: i386
+Source: libgnomeprintui
+Version: 2.6.2-1
+Config-Version: 2.6.2-1
+Depends: libart-2.0-2 (>= 2.3.16), libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.4.1), libgnomecanvas2-0 (>= 2.6.0), libgnomeprint2.2-0 (>= 2.6.1-6), libgtk2.0-0 (>= 2.4.3), libpango1.0-0 (>= 1.4.0), libxml2 (>= 2.6.10), zlib1g (>= 1:1.2.1), libgnomeprintui2.2-common
+Description: The GNOME 2.2 print architecture User Interface - runtime files
+ The goals of this architecture include:
+ .
+ * Absolutely uncompromised output quality
+ * Speed, memory efficiency, and other related performance goals
+ * Ability to work smoothly with Postscript printers, fonts, and other
+ resources
+ * A screen display derived from the Canvas
+ * An extension path for a wide variety of Unicode scripts
+ * An extension path for a richer set of graphics operators than Postscript
+ supports, especially transparency
+ * To make life as easy as possible for application developers
+ .
+ This package contains runtime files.
+
+Package: liblinc1
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 96
+Maintainer: Sebastian Rittau <srittau@debian.org>
+Source: linc
+Version: 2:1.0.3-4
+Config-Version: 2:1.0.3-4
+Replaces: liblinc0
+Depends: libc6 (>= 2.3.2-1), libglib2.0-0 (>= 2.2.3)
+Conflicts: liblinc0
+Description: library to simplify creating networked clients and servers
+ linc is a library that eases the task of writing networked servers &
+ clients. It takes care of connection initiation and maintenance, and the
+ details of various transports. It is used by ORBit2 to handle message
+ transmission/receipt.
+ .
+ Currently supported transports:
+ IPv4 (tested)
+ UNIX domain sockets (tested)
+ IPv6
+ IrDA
+ .
+ SSL support may be available in a future version, see
+ /usr/share/doc/linc/SSL.Debian.
+
+Package: linuxlogo
+Status: install ok installed
+Priority: extra
+Section: misc
+Installed-Size: 248
+Maintainer: Steve Kostecke <steve@debian.org>
+Version: 4.07-0.1
+Depends: libc6 (>= 2.3.1-1)
+Conffiles:
+ /etc/init.d/linuxlogo 294ef0b344070cc4cc64d97d1ef8fdf0
+ /etc/linux_logo.conf 1098589e073c72cd972ff6221492b3b8
+Description: Color ANSI System Logo
+ A Color ANSI Logo with some system information that can be
+ displayed at system boot time or, with some local configuration, at
+ the login prompt. Four different Logos are available:
+ Debian Swirl(default), Debian Banner, Tux Classic and Banner.
+ .
+ The Classic and Banner Logos are based on Larry Ewing's Penguin.
+ Monochrome ASCII versions of all the logos are included.
+
+Package: xprt-common
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 644
+Maintainer: Drew Parsons <dparsons@debian.org>
+Architecture: all
+Source: xprint-xprintorg
+Version: 0.0.9.final.001-6
+Depends: xprt-xprintorg | xprt, debconf (>= 0.5) | debconf-2.0
+Recommends: xprt-xprintorg | xprt, xfonts-base
+Conffiles:
+ /etc/Xprint/C/print/attributes/document 33b2803dd19162f346a3b3f8c57b4c18
+ /etc/Xprint/C/print/attributes/job 4c5b38173fa7f3ce248f9040f24ad178
+ /etc/Xprint/C/print/attributes/printer e2bd9a07bb6a8df587c6bd681fdd2074
+ /etc/Xprint/C/print/Xprinters 55c9dc9c8621262ecd0c8d5e4312c6cd
+ /etc/Xprint/C/print/ddx-config/raster/pcl b2abd5d59f7bff25b16474ff8ee1a58c
+ /etc/Xprint/C/print/ddx-config/raster/postscript d41d8cd98f00b204e9800998ecf8427e
+ /etc/Xprint/en_US/print/attributes/document 829de2483882e5204fc095c7c1b6f00e
+ /etc/X11/Xsession.d/92xprint-xpserverlist af02b59a3e0dfd4c2dc5af7a7baf0927
+ /etc/init.d/xprint 8740261ea069c98eda9be1c4b35830b6
+Description: Xprint - the X11 print system (configuration files)
+ "Xprint" is an advanced printing system which enables X11 applications
+ to use devices like printers, FAX or create documents in formats like
+ PostScript, PDF, PCL, etc.
+ .
+ This package provides the configuration and postscript definition files
+ required to run Xprt, the Xprint server.
+ .
+ It may be used with both the xprt (XFree86.org) and xprt-xprintorg
+ (xprint.org) packages, although xprt from XFree86 is currently broken.
+
+Package: kjots
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 240
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeutils
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE note taking utility
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ kjots is a small note taker program. Name and idea are taken from the jots
+ program included in the tkgoodstuff package.
+ .
+ This package is part of the official KDE utils module.
+
+Package: libfribidi0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 126
+Maintainer: Baruch Even <baruch@debian.org>
+Architecture: i386
+Source: fribidi
+Version: 0.10.4-3
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Free Implementation of the Unicode BiDi algorithm
+ FriBiDi is a BiDi algorithm implementation for Hebrew and/or Arabic
+ languages.
+ .
+ Upstream: http://fribidi.sourceforge.net/
+
+Package: freeglut3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 236
+Maintainer: Jamie Wilkinson <jaq@debian.org>
+Architecture: i386
+Source: freeglut
+Version: 2.2.0-8
+Replaces: libglut3 (<= 3.7-23), glutg3 (<= 3.7-14)
+Provides: libglut, libglut3, glutg3
+Depends: libc6 (>= 2.3.2.ds1-4), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), xlibmesa-gl | libgl1, xlibmesa-glu | libglu1, libglut3 (>= 3.7-25)
+Conflicts: libglut3 (<= 3.7-23), glutg3 (<= 3.7-14)
+Description: OpenGL Utility Toolkit
+ GLUT is a window system independent toolkit for writing OpenGL programs,
+ implementing a simple windowing API, which makes learning about and
+ exploring OpenGL programming very easy.
+ .
+ GLUT is designed for constructing small to medium sized OpenGL programs,
+ however it is not a full-featured toolkit, so large applications requiring
+ sophisticated user interfaces are better off using native window system
+ toolkits like GTK or Motif.
+
+Package: koffice
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 48
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: all
+Version: 1:1.3.2-2
+Depends: karbon, kchart, kformula, kivio, koshell, kpresenter, kspread, kugar, kword
+Suggests: koffice-dev, koffice-doc-html
+Description: KDE Office Suite
+ KOffice is an integrated office suite for KDE, the K Desktop
+ Environment. It offers a word processor, spreadsheet, presentation
+ program, graphics tools and more.
+ .
+ This package provides all the components of KOffice.
+
+Package: kmidi
+Status: deinstall ok config-files
+Priority: optional
+Section: sound
+Installed-Size: 1760
+Maintainer: Christopher L Cheney <ccheney@debian.org>
+Source: kdemultimedia
+Version: 4:3.1.1-1
+Config-Version: 4:3.1.1-1
+Depends: kdelibs4 (>= 4:3.1.1), libart-2.0-2, libartsc0 (>= 1.1.1), libc6 (>= 2.2.4-4), libfam0, libpng2 (>= 1.0.12), libqt3c102-mt (>= 3:3.1.1), libstdc++2.10-glibc2.2 (>= 1:2.95.4-0.010810), xlibs (>> 4.1.0), zlib1g (>= 1:1.1.4), timidity
+Description: midi-to-wav player/converter for KDE
+ midi-to-wav player/converter for KDE
+
+Package: chkrootkit
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 620
+Maintainer: lantz moore <lmoore@debian.org>
+Version: 0.43-1
+Depends: libc6 (>= 2.3.2.ds1-4), binutils, net-tools
+Description: Checks for signs of rootkits on the local system
+ chkrootkit identifies whether the target computer is infected with a rootkit.
+ Some of the rootkits that chkrootkit identifies are:
+ 1. lrk3, lrk4, lrk5, lrk6 (and some variants);
+ 2. Solaris rootkit;
+ 3. FreeBSD rootkit;
+ 4. t0rn (including latest variant);
+ 5. Ambient's Rootkit for Linux (ARK);
+ 6. Ramen Worm;
+ 7. rh[67]-shaper;
+ 8. RSHA;
+ 9. Romanian rootkit;
+ 10. RK17;
+ 11. Lion Worm;
+ 12. Adore Worm.
+ Please note that this is not a definitive test, it does not ensure that the
+ target has not been cracked. In addition to running chkrootkit, one should
+ perform more specific tests.
+
+Package: libxi-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 556
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs-dev (<< 4.3.0), libx11-dev (<< 4.3.0.dfsg.1-3)
+Depends: libxi6 (= 4.3.0.dfsg.1-7), x-dev, libxext-dev, libx11-dev, libc6-dev | libc-dev
+Conflicts: xlibs-dev (<< 4.3.0), libx11-dev (<< 4.3.0.dfsg.1-3)
+Description: X Window System Input extension library development files
+ Header files and a static version of the Xi library are provided by this
+ package.
+ .
+ See the libxi6 package for further information.
+ .
+ This package declares a versioned conflict with and replacement of
+ libx11-dev because some versions of the latter package mistakenly shipped
+ a maual page that should have been in this package intead.
+
+Package: zlib1g
+Status: install ok installed
+Priority: standard
+Section: libs
+Installed-Size: 152
+Maintainer: Mark Brown <broonie@debian.org>
+Architecture: i386
+Source: zlib
+Version: 1:1.2.1.2-1
+Replaces: zlib1g-udeb
+Provides: libz1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: zlib1 (<= 1:1.0.4-7), zlib1g-udeb
+Description: compression library - runtime
+ zlib is a library implementing the deflate compression method found
+ in gzip and PKZIP. This package includes the shared library.
+
+Package: opensp
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 792
+Maintainer: Neil Roeth <neil@debian.org>
+Architecture: i386
+Version: 1.5.1.0-2
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.2-1), libosp4, libstdc++5 (>= 1:3.3.2-1), sgml-base
+Suggests: doc-base, sgml-data
+Description: OpenJade group's SGML parsing tools
+ This package is a collection of SGML/XML tools called OpenSP.
+ It is a fork from James Clark's SP suite.
+ .
+ These tools are used to parse, validate, and normalize SGML and XML
+ files. The central programs included in this package are 'onsgmls',
+ which replaces sgmls, 'ospam', 'ospent', 'osgmlnorm', and 'osx'.
+
+Package: latex-ucs
+Status: install ok installed
+Priority: optional
+Section: tex
+Installed-Size: 2215
+Maintainer: Martin Pitt <mpitt@debian.org>
+Architecture: all
+Version: 20040307-2
+Depends: tetex-bin
+Recommends: latex-ucs-uninames
+Suggests: latex-ucs-doc, latex-ucs-contrib
+Description: Support for using UTF-8 input encoding in LaTeX documents
+ This package provides support for using UTF-8 as input encoding in
+ LaTeX documents.
+ .
+ Install the package latex-ucs-uninames if you want to see the full
+ unicode character names in LaTeX error messages and can afford the
+ space (about 320kB).
+
+Package: kedit
+Status: install ok installed
+Priority: optional
+Section: editors
+Installed-Size: 276
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeutils
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE text editor
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ A simple text editor for KDE.
+ .
+ This package is part of the official KDE utils module.
+
+Package: libxslt1
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 112
+Maintainer: Graham Wilson <graham@debian.org>
+Source: libxslt
+Version: 1.1.2-3
+Config-Version: 1.1.2-3
+Depends: libc6 (>= 2.3.2.ds1-4), libxslt1.1 (= 1.1.2-3)
+Description: XSLT processing library - runtime library
+ XSLT is an XML language for defining transformations of XML files from
+ XML to some other arbitrary format, such as XML, HTML, plain text, etc.
+ using standard XSLT stylesheets. libxslt is a C library which
+ implements XSLT.
+ .
+ This package contains the deprecated libxsltbreakpoint library, and
+ exists only to transition to the new libxslt1.1 package.
+
+Package: kverbos
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 912
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeedu
+Version: 4:3.2.3-2
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.4-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: kdeedu-data (>= 4:3.2.3-2)
+Suggests: khelpcenter, kdeedu-doc-html
+Description: Spanish verb form study application for KDE
+ Kverbos allows the user to learn the forms of Spanish verbs. The program
+ suggests a verb and a time and the user enters the different verb forms.
+ The program corrects the user input and gives feedback.
+ .
+ The user can edit the list of the verbs that can be studied. The program
+ can build regular verb forms by itself. Irregular verb forms have to be
+ entered by the user.
+ .
+ This package is part of the official KDE edutainment module.
+
+Package: libmusicbrainz2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 276
+Maintainer: Andreas Rottmann <rotty@debian.org>
+Architecture: i386
+Source: libmusicbrainz-2.0
+Version: 2.0.2-9
+Depends: libc6 (>= 2.3.2.ds1-4), libexpat1 (>= 1.95.6), libgcc1 (>= 1:3.3.3-1), libstdc++5 (>= 1:3.3.3-1)
+Conflicts: libmusicbrainz1
+Description: Second generation incarnation of the CD Index - library
+ MusicBrainz indexes both digital compressed audio (MP3/Vorbis) and
+ digital audio CDs.
+
+Package: libmusicbrainz1
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+
+Package: libmal0
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 180
+Maintainer: Ludovic Rousseau <rousseau@debian.org>
+Source: libmal
+Version: 0.31-2
+Depends: libc6 (>= 2.3.2-1), libpisock8
+Description: A library of the functions in malsync (devel files)
+ libmal is simply a convenience library of the object files contained in
+ Tom Whittaker's malsync distribution, along with a few wrapper
+ functions.
+ .
+ Homepage: http://jasonday.home.att.net/code/libmal/libmal.html
+
+Package: libmal1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 176
+Maintainer: Ludovic Rousseau <rousseau@debian.org>
+Source: libmal
+Version: 0.40-3
+Depends: libc6 (>= 2.3.2.ds1-4), libpisock8
+Description: A library of the functions in malsync (devel files)
+ libmal is simply a convenience library of the object files contained in
+ Tom Whittaker's malsync distribution, along with a few wrapper
+ functions.
+ .
+ Homepage: http://jasonday.home.att.net/code/libmal/libmal.html
+
+Package: cervisia
+Status: deinstall ok config-files
+Priority: optional
+Section: devel
+Installed-Size: 1496
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdesdk
+Version: 4:3.2.1-1
+Config-Version: 4:3.2.1-1
+Depends: kdelibs4 (>= 4:3.2.1), libart-2.0-2 (>= 2.3.8), libc6 (>= 2.3.2.ds1-4), libcvsservice0 (>= 4:3.1.95-0), libfam0c102, libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: cvs (>= 1.11)
+Suggests: khelpcenter, kdesdk-doc-html
+Description: a graphical CVS front end for KDE
+ Cervisia is a KDE-based graphical front end for the CVS client.
+ .
+ As well as providing both common and advanced CVS operations, it offers
+ a variety of methods for graphically viewing information about the CVS
+ repository and your own sandbox and the relationships between different
+ versions of files. A Changelog editor is also included and is coupled
+ with the commit dialog.
+ .
+ This package is part of the KDE Software Development Kit.
+
+Package: libmusicbrainz4
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 232
+Maintainer: Andreas Rottmann <rotty@debian.org>
+Architecture: i386
+Source: libmusicbrainz-2.1
+Version: 2.1.1-3
+Depends: libc6 (>= 2.3.2.ds1-4), libexpat1 (>= 1.95.6), libgcc1 (>= 1:3.3.4-1), libstdc++5 (>= 1:3.3.4-1)
+Conflicts: libmusicbrainz1
+Description: Second generation incarnation of the CD Index - library
+ MusicBrainz indexes both digital compressed audio (MP3/Vorbis) and
+ digital audio CDs.
+
+Package: vcdimager
+Status: install ok installed
+Priority: optional
+Section: otherosfs
+Installed-Size: 1028
+Maintainer: Nicolas Boullis <nboullis@debian.org>
+Architecture: i386
+Version: 0.7.20-2
+Depends: libc6 (>= 2.3.2.ds1-4), libcdio0, libiso9660-0 (>> 0.67), libpopt0 (>= 1.7), libvcdinfo0, libxml2 (>= 2.6.10), zlib1g (>= 1:1.2.1)
+Description: A VideoCD (VCD) image mastering and ripping tool
+ This package contains a collection of tools to master (Super)VideoCD,
+ either directly from compliant MPEG streams with no PlayBack Control
+ (PBC), or out of an XML description for a full-featured (S)VCD.
+ .
+ This package also contains a VideoCD ripping tool to rip mpeg streams
+ from VideoCD images, and some debugging tools.
+
+Package: rafkill
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 568
+Maintainer: Sam Hocevar (Debian packages) <sam+deb@zoy.org>
+Version: 1.1.0-6
+Config-Version: 1.1.0-6
+Depends: rafkill-data, libaldmb0, liballegro4a (>= 2:4.0.3-8), libc6 (>= 2.3.2.ds1-4), libdumb0, libgcc1 (>= 1:3.3.2-1), libstdc++5 (>= 1:3.3.2-1), xlibs (>> 4.1.0)
+Description: vertical shoot'em-up similar to Raptor: Call of the Shadows
+ Rafkill is a clone of Raptor: Call of the Shadows, a classic shoot'em-up game.
+ .
+ You have a bird's eye view of the playing field, which is an alien world,
+ and your job is to destroy the enemies that are flying towards you shooting
+ bullets. The score lets you buy life, shield, better weapons or even new
+ spaceships.
+ .
+ Rafkill features three spaceships, more than twenty weapons, colourful
+ graphics with transparency effects, music and sound.
+
+Package: libhdb7-heimdal
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 124
+Maintainer: Brian May <bam@debian.org>
+Architecture: i386
+Source: heimdal
+Version: 0.6.1-1
+Config-Version: 0.6.1-1
+Replaces: heimdal-lib (<< 0.3e-5)
+Depends: libasn1-6-heimdal (>= 0.6.1), libc6 (>= 2.3.2.ds1-4), libdb3 (>= 3.2.9-19), libkrb5-17-heimdal (>= 0.6.1), libroken16-kerberos4kth (>= 1.2.2-10)
+Conflicts: heimdal-libs (<< 0.3e-5)
+Description: Libraries for Heimdal Kerberos
+ Heimdal is a free implementation of Kerberos 5, that aims to be
+ compatible with MIT Kerberos.
+ .
+ This package contains the library for storing the KDC database.
+
+Package: libapt-pkg-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 228
+Maintainer: Brendan O'Dea <bod@debian.org>
+Architecture: i386
+Version: 0.1.12
+Depends: perl (>= 5.8.4-2), perlapi-5.8.4, libapt-pkg-libc6.3-5-3.3, libc6 (>= 2.3.2.ds1-4)
+Description: Perl interface to libapt-pkg
+ A Perl interface to APT's libapt-pkg which provides modules for configuration
+ file/command line parsing, version comparison, inspection of the binary
+ package cache and source package details.
+
+Package: libbonobo2-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 492
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Source: libbonobo
+Version: 2.6.2-6
+Replaces: libbonobo-activation4 (<< 1:2.4)
+Depends: libbonobo2-common (= 2.6.2-6), libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.4.1), liborbit2 (>= 1:2.10.0)
+Conflicts: libbonobo-activation4 (<< 1:2.4), nautilus (<< 2.2.4-5)
+Description: Bonobo CORBA interfaces library
+ Bonobo is a set of language and system independent CORBA interfaces
+ for creating reusable components, controls and creating compound
+ documents.
+ .
+ The Bonobo distribution includes a Gtk+ based implementation of the
+ Bonobo interfaces, enabling developers to create reusable
+ components and applications that can be used to form more complex
+ documents.
+ .
+ This package contains the shared libraries.
+
+Package: libkscan1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 412
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegraphics
+Version: 4:3.3.0-1.1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libieee1284-3, libjpeg62, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsane (>= 1.0.11-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libusb-0.1-4 (>= 1:0.1.8), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: Scanner library for KDE
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KScan is KDE's Scanner Library. It's used by kooka and by koffice currently.
+ It provides an easy-to-use library, which allows you to access your scanner
+ (camera - as long as it's sane compatible).
+ .
+ This package is part of the official KDE graphics module.
+
+Package: trans-de-en
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 6348
+Maintainer: Roland Rosenfeld <roland@debian.org>
+Architecture: all
+Source: ding
+Version: 1.3-5
+Provides: translation-dictionary
+Suggests: ding
+Description: A German-English translation dictionary
+ A German-English dictionary with ca. 163,000 entries.
+ .
+ This dictionary was designed for the "ding" dictionary lookup
+ program, but may be used by other clients, too.
+ .
+ The source of the database is available from
+ http://dict.tu-chemnitz.de/
+
+Package: libmailtools-perl
+Status: install ok installed
+Priority: optional
+Section: mail
+Installed-Size: 340
+Maintainer: Matt Hope <dopey@debian.org>
+Architecture: all
+Version: 1.62-1
+Replaces: mailtools (<= 1.15-1)
+Provides: libmail-perl, mailtools
+Depends: perl (>= 5.6.0-16), libnet-perl, libtimedate-perl
+Suggests: libmail-audit-perl
+Conflicts: mailtools (<= 1.15-1)
+Description: Manipulate email in perl programs
+ This is a set of perl modules which provide an easy interface to
+ manipulating email in an object-oriented fashion.
+
+Package: libxrandr2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 312
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Depends: libc6 (>= 2.3.2.ds1-4), libxext6 | xlibs (>> 4.1.0), libxrender1
+Description: X Window System Resize, Rotate and Reflection extension library
+ libXrandr provides an X Window System client interface to the root window
+ resizing, rotation, and reflection ("R and R") extension to the X protocol.
+ .
+ As with all X protocol extensions, support for the extension is required in
+ the X server for client programs using its functionality to work as expected.
+ The XFree86 X server does not yet support the resizing aspects of this
+ extension.
+
+Package: alsaplayer-alsa
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 40
+Maintainer: Ivo Timmermans <ivo@debian.org>
+Architecture: i386
+Source: alsaplayer
+Version: 0.99.76-0.2
+Replaces: alsaplayer-oss (<< 0.99.22), alsaplayer-esd (<< 0.99.22)
+Provides: alsaplayer-output
+Depends: libasound2 (>> 1.0.5), libc6 (>= 2.3.2.ds1-4), alsaplayer-common (= 0.99.76-0.2)
+Recommends: alsaplayer
+Conflicts: alsaplayer-oss (<< 0.99.22), alsaplayer-esd (<< 0.99.22)
+Description: PCM player designed for ALSA (ALSA output module)
+ Alsaplayer is a PCM player designed specifically for use with ALSA, but
+ works great with OSS or EsounD. It's heavily threaded which cuts down on
+ skipping, offers optional and even simultaneous visual scopes, plays
+ mp3, mp2, ogg, cdda, audiofs, and lots more.
+ .
+ This is a module for alsaplayer that will output the sound through ALSA.
+
+Package: kuser
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 556
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeadmin
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE user/group administration tool
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ A user/group administration tool for KDE.
+ .
+ This package is part of the official KDE admin module.
+
+Package: klettres-data
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 5980
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: all
+Source: kdeedu
+Version: 4:3.2.3-2
+Replaces: klettres (<< 4:3.2.0.1)
+Recommends: klettres (= 4:3.2.3-2)
+Description: data files for KLettres foreign alphabet tutor
+ This package contains architecture-independent data files for KLettres,
+ the foreign alphabet tutor for KDE. This includes sound files and
+ graphics.
+ .
+ See the klettres package for further information.
+ .
+ This package is part of the official KDE edutainment module.
+
+Package: irssi-plugin-jabber
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 112
+Maintainer: Michael Banck <mbanck@debian.org>
+Architecture: i386
+Source: irssi-jabber
+Version: 0.0.20040720-1
+Depends: libc6 (>= 2.3.2.ds1-4), irssi-snapshot
+Description: Jabber plugin for irssi
+ This is an plugin for irssi which enables you to use Jabber in your
+ favourite irc-client as well.
+
+Package: dcoprss
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 208
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdenetwork
+Version: 4:3.3.0-2
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), librss1 (>= 4:3.3.0), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: KDE RSS utilities
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ The dcoprss package provides a couple of utilities that can be used by
+ applications to retrieve RSS information.
+ .
+ This package is part of the official KDE network module.
+
+Package: bonobo-activation
+Status: purge ok not-installed
+Priority: optional
+Section: devel
+
+Package: fig2ps
+Status: install ok installed
+Priority: optional
+Section: tex
+Installed-Size: 112
+Maintainer: Vincent Fourmond <fourmond@dsvidf.cea.fr>
+Architecture: all
+Version: 1.3-1
+Replaces: texmacs (<= 1.0.3-6)
+Depends: perl, transfig, tetex-bin, tetex-base, dvips
+Recommends: gv, gs, xfig, tetex-extra
+Conffiles:
+ /etc/fig2ps/fig2ps.rc 5aad41ec90487a98038938837c517ad5
+Description: Converts xfig files into ps,eps or pdf files using LaTeX for processing text
+ This perl script takes into advantage the pstex and pstex_t export
+ formats of fig2dev to separate special text and the rest of a xfig
+ file. Then, the text is processed separately using LaTeX, and
+ everything is put back together at the end, to make a nice wonderful
+ figure with the text formatted exactly the same way as the article you
+ are typing ! PDF output is also available.
+
+Package: sloccount
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 504
+Maintainer: Jesus M. Gonzalez-Barahona <jgb@debian.org>
+Architecture: i386
+Version: 2.26-2
+Depends: libc6 (>= 2.3.2.ds1-4), perl
+Suggests: doc-base
+Description: Programs for counting physical source lines of code (SLOC)
+ SLOCCount (pronounced "sloc-count") is a suite of programs for counting
+ physical source lines of code (SLOC) in potentially large software systems
+ (thus, SLOCCount is a "software metrics tool" or "software measurement tool").
+ SLOCCount can count physical SLOC for a wide number of languages;
+ listed alphabetically, they are: Ada, Assembly, awk, Bourne shell, C, C++,
+ C shell, COBOL, C#, Expect, Fortran, Java, lex/flex, LISP (including Scheme),
+ Makefile, Modula3, Objective-C, Pascal, Perl, PHP, Python, Ruby, sed, SQL,
+ TCL, Yacc/Bison.
+ SLOCCount can automatically determine if a file
+ is a source code file or not, and if so, which language it's written in.
+ As a result, you can analyze large systems completely automatically.
+ SLOCCount also includes some report-generating tools
+ to collect the data generated and present it in several different formats.
+
+Package: libmetakit2.4.9.2
+Status: install ok installed
+Priority: extra
+Section: libs
+Installed-Size: 380
+Maintainer: Gerfried Fuchs <alfie@debian.org>
+Version: 2.4.9.2-5
+Depends: libc6 (>= 2.3.1-1), libstdc++5 (>= 1:3.3-0pre5)
+Description: MetaKit embeddable database -- shared libraries
+ MetaKit is an embeddable database library. It lets you build applications
+ which store their data efficiently, in a portable way, and which will not
+ need a runtime installation. In terms of the data model, MetaKit takes
+ the middle ground between RDBMS, OODBMS, and flat-file databases - yet it
+ is quite different from each of them.
+ .
+ This package contains the shared libraries.
+
+Package: jigdo-file
+Status: install ok installed
+Priority: extra
+Section: utils
+Installed-Size: 575
+Maintainer: Richard Atterer <atterer@debian.org>
+Architecture: i386
+Source: jigdo
+Version: 0.7.1-5
+Depends: wget, libc6 (>= 2.3.2.ds1-4), libdb4.2, libgcc1 (>= 1:3.4.1-3), libstdc++6 (>= 3.4.1-3), zlib1g (>= 1:1.2.1)
+Conflicts: jigdo (<< 0.6.9)
+Description: Download Debian CD images from any Debian mirror
+ Using the jigdo-lite script contained in this package, you can use
+ your nearest "regular" Debian mirror to download Debian CD images,
+ instead of having to use one of the few, slow, overloaded mirrors
+ that offer the images as direct HTTP or FTP downloads. See
+ <http://www.debian.org/CD/jigdo-cd/> for details.
+ .
+ Jigsaw Download, or short jigdo, is a scheme developed primarily to
+ make it easy to distribute huge filesystem images (e.g. CD (ISO9660)
+ or DVD (UDF) images) over the internet, but it could also be used for
+ other data which is awkward to handle due to its size, like
+ audio/video files or large software packages.
+ .
+ jigdo tries to ensure that the large file is downloaded in small
+ parts which can be stored on different servers. People who want to
+ download the image do so by telling the jigdo download tool to
+ process one ".jigdo" file; using it, jigdo downloads the parts and
+ reassembles the image. jigdo-file is used to prepare the files for
+ download.
+ .
+ jigdo homepage: <http://atterer.net/jigdo/>
+
+Package: python-newt
+Status: install ok installed
+Priority: standard
+Section: interpreters
+Installed-Size: 136
+Maintainer: Alastair McKinstry <mckinstry@debian.org>
+Architecture: i386
+Source: newt
+Version: 0.51.6-15
+Depends: libnewt0.51 (= 0.51.6-15), python (>= 2.3), python (<< 2.4)
+Description: A NEWT module for Python
+ This module allows you to built a text UI for your Python scripts
+ using newt.
+
+Package: gsfonts
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 5080
+Maintainer: Masayuki Hatta (mhatta) <mhatta@debian.org>
+Architecture: all
+Version: 8.14+v8.11-0.1
+Depends: defoma
+Conflicts: gs (<< 5.50-5), gs-aladdin (<< 6.50-4), gsfonts-x11 (<< 0.13)
+Conffiles:
+ /etc/defoma/hints/gsfonts.hints 43e0456038af56195ea42f7639c060bd
+Description: Fonts for the Ghostscript interpreter(s)
+ These are free look-alike fonts of the Adobe PostScript fonts.
+ Recommended for all flavors of Ghostscript (gs-gpl, gs-afpl and gs-esp).
+
+Package: libsvn0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1032
+Maintainer: David Kimdon <dwhedon@debian.org>
+Architecture: i386
+Source: subversion
+Version: 1.0.6-2
+Depends: libapr0 (>= 2.0.50), libc6 (>= 2.3.2.ds1-4), libdb4.2, libexpat1 (>= 1.95.6), libldap2 (>= 2.1.17-1), libneon24 (>= 0.24.7.dfsg), libperl5.8 (>= 5.8.4), libssl0.9.7, libswig1.3.21, libxml2 (>= 2.6.11), python2.3 (>= 2.3), zlib1g (>= 1:1.2.1)
+Description: Shared libraries used by Subversion (aka. svn)
+ Subversion is a version control system much like the Concurrent
+ Versions System (CVS). Version control systems allow many
+ individuals (who may be distributed geographically) to collaborate on
+ a set of files (typically source code). Subversion has all the major
+ features of CVS, plus certain new features that CVS users often wish
+ they had.
+ .
+ This package includes shared libraries used by Subversion tools to
+ manipulate repositories and working copies.
+ .
+ http://subversion.tigris.org
+
+Package: libkdeedu1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 144
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeedu
+Version: 4:3.2.3-2
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.4-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: library for use with KDE educational apps
+ The KDE-based library libkdeedu is used with educational applications.
+ It currently provides support for data plotting and vocabulary items
+ (including a parser for kvtml vocabulary files).
+ .
+ This package is part of the official KDE edutainment module.
+
+Package: adduser
+Status: install ok installed
+Priority: important
+Section: base
+Installed-Size: 588
+Maintainer: Debian Adduser Developers <adduser-devel@lists.alioth.debian.org>
+Architecture: all
+Version: 3.59
+Depends: perl-base (>= 5.6.0), passwd (>= 961025), debconf
+Suggests: liblocale-gettext-perl, perl-modules
+Conffiles:
+ /etc/deluser.conf 95bbf430862075fdf99330e882998e66
+Description: Add and remove users and groups
+ This package includes the adduser and deluser commands for creating
+ and removing users.
+ .
+ o Adduser can create new users and groups and add existing users to
+ existing groups.
+ o Deluser can remove users and groups and remove users from a given
+ group.
+ .
+ Adding users with adduser is much easier than adding them by hand.
+ Adduser will choose appropriate UID and GID values, create a home
+ directory, copy skeletal user configuration, allow you to set an
+ initial password and the GECOS field.
+ .
+ Deluser can optionally remove and backup the user's home directory
+ and mail spool or all files on the system owned by him.
+ .
+ Optionally a custom script can be executed after each of the commands.
+ .
+ Adduser is maintained on http://alioth.debian.org/projects/adduser/.
+ There is also a development mailing list on
+ http://lists.alioth.debian.org/mailman/listinfo/adduser-devel/.
+
+Package: mzscheme
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 49140
+Maintainer: Brent A. Fulgham <bfulgham@debian.org>
+Architecture: i386
+Source: drscheme
+Version: 1:207-3
+Replaces: mzscheme-dev, mzscheme (>> 207)
+Provides: httpd
+Depends: gcc | c-compiler, debconf (>= 0.4.00), debianutils (>= 2.8.0), libreadline4-dev, libfreetype6 (>= 2.1.5-1), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libjpeg62, libncurses5 (>= 5.4-1), libpng12-0 (>= 1.2.5.0-4), libreadline4 (>= 4.3-1), libsm6 | xlibs (>> 4.1.0), libssl0.9.7, libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxaw7 (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxrender1, libxt6 | xlibs (>> 4.1.0), mzscheme, xlibmesa-gl | libgl1, zlib1g (>= 1:1.2.1)
+Suggests: menu (>= 1.5), slib
+Conflicts: libc6 (<< 2.3.1), drscheme (<< 207), drscheme-extradoc, slib (<< 2d4-2)
+Conffiles:
+ /etc/init.d/mzscheme ceb4285913358a01c5942aabf32a9ee7
+ /etc/init.d/mzscheme ceb4285913358a01c5942aabf32a9ee7
+ /etc/default/mzscheme 6ce7238bc35686e3e021e22c5fcf383d
+Description: Rice University PLT Scheme Interpreter
+ This scheme implementation forms the foundation for the DrScheme
+ programming environment. The faculty and staff at Rice University
+ developed this package to be used as a stand-alone interpreter,
+ for embedding in other applications, and for use with the
+ DrScheme graphical environment.
+
+Package: libwine-jack
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1044
+Maintainer: Ove Kaaven <ovek@arcticnet.no>
+Architecture: i386
+Source: wine
+Version: 0.0.20040716-1.2
+Depends: libwine (= 0.0.20040716-1.2), libc6 (>= 2.3.2.ds1-4), libwine, libjack0.80.0-0
+Description: Windows Emulator (JACK Sound Module)
+ This is an ALPHA release of Wine, the MS-Windows emulator. This is
+ still a developers release and many applications may still not work.
+ .
+ This package contains a JACK sound driver.
+ .
+ Wine is often updated.
+
+Package: libgnutls7-dev
+Status: purge ok not-installed
+Priority: optional
+Section: libdevel
+
+Package: modutils
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 664
+Origin: debian
+Maintainer: LaMont Jones <lamont@debian.org>
+Version: 2.4.26-1
+Replaces: manpages (<= 1.15-3)
+Depends: libc6 (>= 2.3.2.ds1-4), sysvinit (>= 2.71-2)
+Suggests: ksymoops
+Conffiles:
+ /etc/cron.daily/modutils 10fc6b90de70ffa3594d6c47ec9be935
+ /etc/init.d/modutils db89ea32d1a0f556db6f8e0aff5d5da1
+ /etc/modutils/0keep 89c032bf9e755bf0b1666227d20df03e
+ /etc/modutils/aliases ced739ecb2c43a20053a9f0eb308b2b0
+ /etc/modutils/actions 263c2a73eab64f6797b43418cc658a51
+ /etc/modutils/paths d8a5a8df20d379f1078b826806ef8115
+ /etc/modutils/arch/alpha a06fe12e20ddc763c9570267b41b0e10
+ /etc/modutils/arch/i386 f9e3eac60200d41dd5569eeabb4eddff
+ /etc/modutils/arch/m68k.generic 2c847312df7201d7004943482a0d1b4a
+ /etc/modutils/arch/m68k.amiga f07da2ebf00c6ed6649bae5501b84c4f
+ /etc/modutils/arch/m68k.atari 2893201cc7f7556160fa9cd1fb5ba56a
+ /etc/modutils/arch/m68k.mac b96b83b867551b23d221c4d67952d2f7
+ /etc/modutils/arch/powerpc.apus bcfd7aa94c8e2453dd6a448c06f172f5
+ /etc/modutils/arch/powerpc.generic 86faaa356a37e5a673c6c158ea80e2ba
+ /etc/modutils/arch/powerpc.pmac d6c5d69f128424be7efbe568a49336ab
+ /etc/modutils/arch/s390 37b9990c51e898f82d22d7c01f761928
+Description: Linux module utilities
+ These utilities are intended to make a Linux modular kernel
+ manageable for all users, administrators and distribution
+ maintainers.
+
+Package: libfontconfig1-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 1327
+Maintainer: Josselin Mouette <joss@debian.org>
+Architecture: i386
+Source: fontconfig
+Version: 2.2.3-1
+Provides: libfontconfig-dev
+Depends: libfontconfig1 (= 2.2.3-1), libexpat1-dev, libfreetype6-dev (>= 2.1.7), pkg-config
+Conflicts: libfontconfig-dev, fontconfig (<< 2.1-5)
+Description: generic font configuration library (development headers)
+ Fontconfig is a font configuration and customization library, which
+ does not depend on the X Window System. It is designed to locate
+ fonts within the system and select them according to requirements
+ specified by applications.
+ .
+ See the "fontconfig" package description for more information.
+
+Package: python2.3-glade2
+Status: purge ok not-installed
+Priority: optional
+Section: python
+Architecture: i386
+
+Package: locales
+Status: deinstall ok config-files
+Priority: standard
+Section: base
+Installed-Size: 10348
+Maintainer: GNU Libc Maintainers <debian-glibc@lists.debian.org>
+Architecture: all
+Source: glibc
+Version: 2.3.2.ds1-13
+Config-Version: 2.3.2.ds1-13
+Replaces: localebin, wg15-locale, libc6-bin, i18ndata, glibc2, locale-ja, locale-ko, locale-vi, locale-zh
+Provides: i18ndata
+Depends: glibc-2.3.2.ds1-13, debconf (>= 0.2.26)
+Conflicts: localebin, wg15-locale, i18ndata, locale-ja, locale-ko, locale-vi, locale-zh
+Conffiles:
+ /etc/locale.alias bb5e3f18c56ca04addc8f62e43a38a1d
+Description: GNU C Library: National Language (locale) data [support]
+ Machine-readable data files, shared objects and programs used by the
+ C library for localization (l10n) and internationalization (i18n) support.
+ .
+ This package contains the libc.mo i18n files, plus tools to generate
+ locale definitions from source files (included in this package). It allows
+ you to customize which definitions actually get generated. This is a
+ savings over how this package used to be, where all locales were generated
+ by default. This created a package that unpacked to an excess of 30 megs.
+
+Package: html2text
+Status: install ok installed
+Priority: optional
+Section: web
+Installed-Size: 272
+Maintainer: Adrian Bridgett <bridgett@debian.org>
+Version: 1.3.2a-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.2-1), libstdc++5 (>= 1:3.3.2-1)
+Description: An advanced HTML to text converter
+ html2text was written because the author wasn't happy with the
+ output of "lynx -dump" and so he wrote something better.
+
+Package: stl-manual
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 3718
+Maintainer: Ivo Timmermans <ivo@debian.org>
+Version: 3.30-4
+Suggests: www-browser
+Description: C++-STL documentation in HTML
+ This is the documentation for the C++ Standard Template Library
+ as found on SGIs Website.
+
+Package: traceroute
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 104
+Maintainer: Graham Wilson <graham@debian.org>
+Architecture: i386
+Version: 1.4a12-16
+Replaces: netstd
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: suidmanager (<< 0.50)
+Description: traces the route taken by packets over a TCP/IP network
+ The traceroute utility displays the route used by IP packets on their way to a
+ specified network (or Internet) host. Traceroute displays the IP number and
+ host name (if possible) of the machines along the route taken by the packets.
+ Traceroute is used as a network debugging tool. If you're having network
+ connectivity problems, traceroute will show you where the trouble is coming
+ from along the route.
+ .
+ Install traceroute if you need a tool for diagnosing network connectivity
+ problems.
+
+Package: kdebase
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 20
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: all
+Version: 4:3.3.0-1
+Depends: kappfinder (>= 4:3.3.0-1), kate (>= 4:3.3.0-1), kcontrol (>= 4:3.3.0-1), kdebase-bin (>= 4:3.3.0-1), kdebase-data (>= 4:3.3.0-1), kdebase-kio-plugins (>= 4:3.3.0-1), kdepasswd (>= 4:3.3.0-1), kdeprint (>= 4:3.3.0-1), kdesktop (>= 4:3.3.0-1), kfind (>= 4:3.3.0-1), khelpcenter (>= 4:3.3.0-1), kicker (>= 4:3.3.0-1), klipper (>= 4:3.3.0-1), kmenuedit (>= 4:3.3.0-1), konqueror-nsplugins (>= 4:3.3.0-1), konqueror (>= 4:3.3.0-1), konsole (>= 4:3.3.0-1), kpager (>= 4:3.3.0-1), kpersonalizer (>= 4:3.3.0-1), ksmserver (>= 4:3.3.0-1), ksplash (>= 4:3.3.0-1), ksysguard (>= 4:3.3.0-1), ktip (>= 4:3.3.0-1), kwin (>= 4:3.3.0-1), libkonq4 (>= 4:3.3.0-1)
+Recommends: kdm (>= 4:3.3.0-1), xfonts-konsole (>= 4:3.3.0-1)
+Description: KDE Base metapackage
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This package depends on the minimum number of packages to provide a
+ simple yet fully functional KDE desktop.
+
+Package: python2.1
+Status: install ok installed
+Priority: standard
+Section: interpreters
+Installed-Size: 5228
+Maintainer: Gregor Hoffleit <flight@debian.org>
+Architecture: i386
+Version: 2.1.3-25
+Replaces: python2.1-base, python2.1-ssl
+Depends: libc6 (>= 2.3.2.ds1-4), libdb4.2, libncurses5 (>= 5.4-1), libreadline4 (>= 4.3-1), libssl0.9.7, zlib1g (>= 1:1.2.1)
+Suggests: python2.1-doc, python2.1-tk
+Conflicts: python (<< 1.5.2-18), python-base (<= 1.5.2-18.3), python1.5-base (<= 1.5.2-18.3), python2.1-base, python2.1-regrtest (<= 2.1.1-3), python2.1-ssl
+Conffiles:
+ /etc/python2.1/site.py fc308cba3c29bf9aeb5e47c8f37651ef
+Description: An interactive high-level object-oriented language (version 2.1)
+ Version 2.1 of the high-level, interactive object oriented language,
+ includes an extensive class library with lots of goodies for
+ network programming, system administration, sounds and graphics.
+
+Package: dict-foldoc
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 2366
+Maintainer: Robert D. Hilliard <hilliard@debian.org>
+Architecture: all
+Version: 20030919-2
+Depends: dictd | dict-server
+Description: FOLDOC Dictionary Database
+ This package contains the FOLDOC, the Free On Line Dictionary of
+ Computing, supplemented by a number of Debian-specific definitions,
+ formatted for use by the dictionary server in the dictd package.
+ The FOLDOC is updated frequently; this package
+ contains the 19 Sep 2003 version.
+ .
+ This package will be of limited use without the server found
+ in the dictd package.
+
+Package: odbc-postgresql
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 380
+Maintainer: Peter Eisentraut <peter_e@gmx.net>
+Architecture: i386
+Source: psqlodbc
+Version: 1:07.03.0200-4
+Depends: libc6 (>= 2.3.2.ds1-4), odbcinst1
+Recommends: unixodbc
+Conffiles:
+ /etc/postgresql/odbcinst.ini 2dba2016c8c85e6fb24e24b8bbacd4bb
+Description: ODBC driver for PostgreSQL
+ This package provides a driver that allows ODBC-enabled applications to
+ access PostgreSQL databases. ODBC is an abstraction layer that allows
+ applications written for that layer to access databases in an manner
+ that is relatively independent of the particular database management
+ system. PostgreSQL is an open-source SQL database management system,
+ which can be accessed using this driver.
+ .
+ You need to install this package if you want to use an application that
+ provides database access through ODBC and you want that application to
+ access a PostgreSQL database. This package would need to be installed
+ on the same machine as that client application; the PostgreSQL database
+ server can be on a different machine and does not need any additional
+ software to accept ODBC clients.
+ .
+ If you want to write software that can access a database through the
+ ODBC abstraction layer, you need to install the unixODBC driver manager
+ development package unixodbc-dev, and possibly additional packages for
+ language bindings. This driver package is only used at run time.
+
+Package: python2.3
+Status: install ok installed
+Priority: standard
+Section: python
+Installed-Size: 8760
+Maintainer: Matthias Klose <doko@debian.org>
+Architecture: i386
+Version: 2.3.4-11sid
+Replaces: python2.3-xmlbase
+Provides: python2.3-xmlbase
+Depends: libbz2-1.0, libc6 (>= 2.3.2.ds1-4), libdb4.2, libncurses5 (>= 5.4-1), libreadline4 (>= 4.3-1), libssl0.9.7, zlib1g (>= 1:1.2.1)
+Recommends: python2.3-iconvcodec | python2.3-cjkcodecs | python2.3-japanese-codecs, python2.3-iconvcodec | python2.3-cjkcodecs | python2.3-korean-codecs
+Suggests: python2.3-doc
+Conflicts: python2.3-xmlbase, python2.3-csv
+Conffiles:
+ /etc/python2.3/site.py 8eb9ffc159683a8f12d63c07335b745a
+Description: An interactive high-level object-oriented language (version 2.3)
+ Version 2.3 of the high-level, interactive object oriented language,
+ includes an extensive class library with lots of goodies for
+ network programming, system administration, sounds and graphics.
+
+Package: python2.2
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 6852
+Maintainer: Matthias Klose <doko@debian.org>
+Architecture: i386
+Version: 2.2.3-10
+Replaces: python2.2-base, python2.2-ssl
+Provides: python2.2-email
+Depends: libc6 (>= 2.3.2.ds1-4), libdb4.2, libncurses5 (>= 5.4-1), libreadline4 (>= 4.3-1), libssl0.9.7, zlib1g (>= 1:1.2.1)
+Recommends: python2.2-iconvcodec | python2.2-cjkcodecs | python2.2-japanese-codecs, python2.2-iconvcodec | python2.2-cjkcodecs | python2.2-korean-codecs
+Suggests: python2.2-doc
+Conflicts: python (<< 2.3), python2.2-ssl, python2.2-email
+Conffiles:
+ /etc/python2.2/site.py 3210a8929727ad333f0cbd1436a88c7e
+Description: An interactive high-level object-oriented language (version 2.2)
+ Version 2.2 of the high-level, interactive object oriented language,
+ includes an extensive class library with lots of goodies for
+ network programming, system administration, sounds and graphics.
+
+Package: slang1a-utf8
+Status: install ok installed
+Priority: extra
+Section: libs
+Installed-Size: 564
+Maintainer: Jim Mintha <jmintha@debian.org>
+Architecture: i386
+Source: slang
+Version: 1.4.9dbs-6
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: slang1-utf8
+Description: The S-Lang programming library with utf8 support
+ S-Lang is a C programmer's library that includes routines for the rapid
+ development of sophisticated, user friendly, multi-platform applications.
+ .
+ This package contains only the shared library libslang.so.* and copyright
+ information. It is only necessary for programs that use this library (such
+ as jed and slrn). If you plan on doing development with S-Lang, you will
+ need the companion -dev package as well.
+ This packages has wide character support.
+
+Package: libgimp1.2
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+
+Package: libgimp1.3
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 1680
+Maintainer: Ari Pollak <ari@debian.org>
+Architecture: i386
+Source: gimp1.3
+Version: 1.3.27+2.0pre4-3
+Config-Version: 1.3.27+2.0pre4-3
+Replaces: gimp1.3 (<< 1.3.13-1)
+Depends: libatk1.0-0 (>= 1.4.1), libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.2.3), libgtk2.0-0 (>= 2.2.2-1), libpango1.0-0 (>= 1.2.1)
+Description: Libraries necessary to run the GIMP, development version 1.3
+ This package includes the developers' release of the libgimp and
+ libgimpui libraries, necessary to run The GIMP, unstable version 1.3.
+ .
+ It has been split off from the main gimp package in order to
+ facilitate easy development for packages that use libgimp and libgimpui,
+ like SANE, the Scanner Access package for GIMP.
+
+Package: manpages
+Status: install ok installed
+Priority: important
+Section: doc
+Installed-Size: 696
+Maintainer: Martin Schulze <joey@debian.org>
+Architecture: all
+Version: 1.67-2
+Replaces: rsh-server (<< 0.10-7)
+Suggests: man-browser
+Description: Manual pages about using a GNU/Linux system
+ This package contains GNU/Linux manual pages for these sections:
+ 4 = Devices (e.g. hd, sd).
+ 5 = File formats and protocols, syntaxes of several system
+ files (e.g. wtmp, /etc/passwd, nfs).
+ 7 = Conventions and standards, macro packages, etc.
+ (e.g. nroff, ascii).
+ .
+ Sections 1, 6 and 8 are provided by the respective applications. This
+ package only includes the intro man page describing the section.
+ .
+ The man pages describe syntaxes of several system files.
+
+Package: ed
+Status: install ok installed
+Priority: important
+Section: editors
+Installed-Size: 144
+Maintainer: James Troup <james@nocrew.org>
+Version: 0.2-20
+Depends: libc6 (>= 2.3.1-1)
+Description: The classic unix line editor
+ ed is a line-oriented text editor. It is used to
+ create, display, modify and otherwise manipulate text
+ files.
+ .
+ red is a restricted ed: it can only edit files in the
+ current directory and cannot execute shell commands.
+
+Package: kvoctrain
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 2292
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeedu
+Version: 4:3.2.3-2
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.4-1), libice6 | xlibs (>> 4.1.0), libjpeg62, libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), perl, libwww-perl
+Recommends: kdeedu-data (>= 4:3.2.3-2)
+Suggests: khelpcenter, kdeedu-doc-html
+Description: vocabulary trainer for KDE
+ KVocTrain is a little utility to help you train your vocabulary when you
+ are trying to learn a foreign language. You can create your own database
+ with the words you need. It is intended as a replacement for index
+ (flash) cards.
+ .
+ You probably remember flashcards from school. The teacher would write the
+ original expression on the front side of the card and the translation on
+ the back. Then look at the cards one after another. If you knew the
+ translation, you could put it away. If you failed, you put it back to
+ try again.
+ .
+ KVocTrain is not intended to teach you grammer or other sophisticated
+ things. This is and probably will stay beyond the scope of this application.
+ .
+ This package is part of the official KDE edutainment module.
+
+Package: tasksel
+Status: install ok installed
+Priority: optional
+Section: base
+Installed-Size: 1076
+Maintainer: Debian Install System Team <debian-boot@lists.debian.org>
+Architecture: all
+Version: 2.12
+Depends: debconf (>= 0.5) | debconf-2.0, liblocale-gettext-perl, aptitude (>= 0.2.15-1)
+Conflicts: debconf (<< 1.4.27), base-config (<< 2.32)
+Description: Tool for selecting tasks for installation on Debian system
+ This package provides 'tasksel', a simple interface for users who
+ want to pick general tasks for installation on their Debian GNU/Linux
+ system. This program is used during the installation process, but
+ users can also use tasksel at any point.
+
+Package: libsm-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 320
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs-dev (<< 4.3.0)
+Depends: libsm6 (= 4.3.0.dfsg.1-7), x-dev, libice-dev, libc6-dev | libc-dev
+Conflicts: xlibs-dev (<< 4.3.0)
+Description: X Window System Session Management library development files
+ Header files and a static version of the SM library are provided by this
+ package.
+ .
+ See the libsm6 package for further information.
+
+Package: libdb4.1-dev
+Status: install ok installed
+Priority: extra
+Section: libdevel
+Installed-Size: 1200
+Maintainer: Debian Berkeley DB Maintainers <pkg-db-devel@lists.alioth.debian.org>
+Architecture: i386
+Source: db4.1
+Version: 4.1.25-17
+Provides: libdb-dev
+Depends: libdb4.1 (= 4.1.25-17)
+Suggests: db4.1-doc
+Conflicts: libdb-dev, libdb1-dev, libdb2-dev, libdb3-dev
+Description: Berkeley v4.1 Database Libraries [development]
+ This is the development package which contains headers and static
+ libraries for the Berkeley v4.1 database library.
+
+Package: dosemu
+Status: install ok installed
+Priority: optional
+Section: contrib/otherosfs
+Installed-Size: 2164
+Maintainer: Herbert Xu <herbert@debian.org>
+Architecture: i386
+Version: 1.2.1-2
+Depends: libc6 (>= 2.3.2.ds1-4), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), slang1 (>> 1.4.4-7.1), xbase-clients (>= 3.3.3.1-5) | xutils, xbase-clients (<< 4.0) | xutils
+Recommends: dosemu-freedos
+Suggests: xfonts-dosemu
+Conflicts: suidmanager (<< 0.50)
+Conffiles:
+ /etc/dosemu/dosemu.conf bafc5f315ea0bfb695c1c0cabd9e292c
+ /etc/dosemu/dosemu.users 26db1eef14b5ffa6830525caad75b581
+Description: The Linux DOS Emulator
+ DOSEMU is a PC Emulator application that allows Linux to run a DOS
+ operating system in a virtual x86 machine. This allows you to run
+ many DOS applications.
+ - Color text and full keyboard emulation (via hotkeys) via terminal.
+ - Built-in X support, includes IBM character set font.
+ - Graphics capability at the console with most compatible video cards.
+ - DPMI support so you can run DOOM.
+ - CDROM support.
+ - Builtin IPX and pktdrvr support.
+
+Package: pppconfig
+Status: install ok installed
+Priority: optional
+Section: base
+Installed-Size: 1032
+Maintainer: John Hasler <jhasler@debian.org>
+Architecture: all
+Version: 2.3.6
+Depends: ppp (>= 2.3.7), whiptail | dialog
+Conffiles:
+ /etc/init.d/dns-clean 62a33a46f4e69ab21b72bece0f83c1f1
+ /etc/ppp/ip-up.d/0dns-up b77d104e74ecccf775e27a5305e8285e
+ /etc/ppp/ip-down.d/0dns-down b831980ed064aa8625df19a89fe33bd8
+Description: A text menu based utility for configuring ppp
+ It provides extensive explanations at each step. pppconfig supports
+ PAP, CHAP, and chat methods of authentication. It uses the standard
+ ppp configuration files and sets ppp up so that the standard pon and
+ poff commands can be used to control ppp.
+ Some features supported by pppconfig are:
+ - Multiple ISPs with separate nameservers.
+ - Modem detection.
+ - Dynamic DNS.
+ - Dial on demand.
+
+Package: libgcc1
+Status: install ok installed
+Priority: standard
+Section: libs
+Installed-Size: 116
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-3.4 (3.4.2-2)
+Version: 1:3.4.2-2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: GCC support library
+ Shared version of the support library, a library of internal subroutines
+ that GCC uses to overcome shortcomings of particular machines, or
+ special needs for some languages.
+
+Package: libidn11-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 888
+Maintainer: Ryan M. Golbeck <rmgolbeck@debian.org>
+Architecture: i386
+Source: libidn
+Version: 0.5.2-3
+Depends: libidn11 (= 0.5.2-3), pkg-config
+Conflicts: libidn9-dev
+Description: Development files GNU libidn, implementation of IETF IDN spec
+ GNU Libidn is an implementation of the Stringprep, Punycode and IDNA
+ specifications defined by the IETF Internationalized Domain Names
+ (IDN) working group, used for internationalized domain names.
+ Currently the Nameprep, Kerberos 5 and XMPP Stringprep profiles are
+ supported.
+
+Package: psfontmgr
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 172
+Maintainer: Angus Lees <gus@debian.org>
+Architecture: all
+Source: defoma
+Version: 0.11.8-0.1
+Depends: defoma (>= 0.9.1), whiptail | dialog, perl
+Conflicts: defoma-ps, scigraphica-common (<= 0.7.1-3)
+Description: PostScript font manager -- part of Defoma, Debian Font Manager
+ psfontmgr manages PostScript fonts through the Defoma framework. It
+ registers the name of available PostScript fonts to Defoma in
+ postscript category, so applications which output a postscript file
+ have all the available PostScript fonts in their font-choosing menus.
+ .
+ It also provides a tool named defoma-psfont-installer, which registers
+ PostScript fonts installed in a PostScript printer. This tool benefits
+ those who want to print a PostScript file with the printer fonts and
+ have the printer fonts appear in a font-choosing menu.
+
+Package: dictzip
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 124
+Maintainer: Kirk Hilliard <kirk@debian.org>
+Architecture: i386
+Source: dictd
+Version: 1.9.14-2
+Replaces: dictd (<< 1.7.1-1)
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1)
+Description: Compression utility for dictionary databases
+ dictzip compresses files using the gzip(1) algorithm (LZ77) in a
+ manner which is completely compatible with the gzip file format. An
+ extension to the gzip file format allows for random access to chunks
+ of about 57kb without the overhead of decompressing the entire file.
+ This package also includes dictunzip to decompress dictzipped files
+ and dictzcat for viewing dictzipped files.
+
+Package: libdb3-util
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 188
+Maintainer: Debian Berkeley DB Maintainers <pkg-db-devel@lists.alioth.debian.org>
+Architecture: i386
+Source: db3
+Version: 3.2.9-20
+Depends: libc6 (>= 2.3.2.ds1-4), libdb3 (>= 3.2.9-20)
+Description: Berkeley v3 Database Utilities
+ These are utilities that help you to use the Berkeley v3
+ database library.
+ .
+ Many programs use the Berkeley Database to store their data. Other
+ versions of the database can be found in the db2, db4.0, db4.1 and
+ db4.2 packages.
+
+Package: menu-xdg
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 72
+Maintainer: Christopher L Cheney <ccheney@debian.org>
+Architecture: all
+Version: 0.1.1
+Recommends: menu
+Conflicts: menu (<< 2.1.14)
+Conffiles:
+ /etc/menu-methods/xdg-desktop-entry-spec-apps 898024cb0d3af07128a242b3ffe876ef
+ /etc/menu-methods/xdg-desktop-entry-spec-dirs ee811f4f1818aacd6915f6ffdb1760c1
+ /etc/menu-methods/menu-xdg d97ff381d379f4032dc9a1f2a6e08f68
+Description: freedesktop.org menu compliant window manager scripts
+ menu-xdg contains menu-methods to convert the Debian menu structure to
+ the freedesktop.org xdg menu structure.
+ .
+ * Base Directory Specification Version 0.6
+ * Menu Specification Version 0.8
+ * Desktop Entry Specification Version 0.9.4
+
+Package: eyesapplet
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 100
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdetoys
+Version: 4:3.2.3-3
+Replaces: kdetoys (<< 4:3.0.1-0), task-kdetoys
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: kicker
+Conflicts: task-kdetoys
+Description: eyes applet for KDE
+ An applet for the KDE panel containing a pair of eyes that follow your mouse
+ around the screen.
+ .
+ This package is part of the official KDE toys module.
+
+Package: kvim
+Status: install ok installed
+Priority: extra
+Section: editors
+Installed-Size: 1832
+Maintainer: Norbert Tretkowski <nobse@debian.org>
+Architecture: i386
+Source: vim
+Version: 1:6.3-025+1
+Replaces: vim-tiny, vim-perl, vim-python, vim-ruby, vim-tcl, vim-tty, vim-gtk, vim-lesstif, vim-gnome, kvim (<< 1:6.2.135+1), vim (<< 1:6.2-098+1), kvim-perl, kvim-ruby, kvim-tcl, kvim-python
+Depends: vim (= 1:6.3-025+1), kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libgpmg1 (>= 1.19.6-1), libice6 | xlibs (>> 4.1.0), libncurses5 (>= 5.4-1), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0)
+Suggests: cscope, vim-doc
+Conflicts: vim-tiny, vim-perl, vim-python, vim-ruby, vim-tcl, vim-tty, vim-gtk, vim-lesstif, vim-gnome, kvim (<< 1:6.2-135+1), kvim-perl, kvim-ruby, kvim-tcl, kvim-python
+Conffiles:
+ /etc/vim/gvimrc 37a0ed98aa73d89d645c672490587033
+Description: Vi IMproved - KDE 3.x version
+ Vim is an almost compatible version of the UNIX editor Vi. Many new features
+ have been added: multi level undo, syntax highlighting, command line history,
+ on-line help, filename completion, block operations, folding, Unicode support,
+ etc.
+ .
+ This package contains a version of vim compiled with support for the
+ KDE frontend.
+
+Package: python2.3-twisted-bin
+Status: purge ok not-installed
+Priority: extra
+Section: python
+Architecture: i386
+
+Package: libice-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 412
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs-dev (<< 4.3.0)
+Depends: libice6 (= 4.3.0.dfsg.1-7), x-dev, libc6-dev | libc-dev
+Conflicts: xlibs-dev (<< 4.3.0)
+Description: Inter-Client Exchange library development files
+ Header files and a static version of the ICE library are provided by this
+ package.
+ .
+ See the libice6 package for further information.
+
+Package: gimp-data
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 19512
+Maintainer: Ari Pollak <ari@debian.org>
+Architecture: all
+Source: gimp
+Version: 2.0.4-1
+Replaces: gimp1.3-data
+Conflicts: gimp1.3-data
+Conffiles:
+ /etc/gimp/2.0/gimprc c770cf853d75549b6ed4135f966ceb79
+ /etc/gimp/2.0/gtkrc 782b92519fe9232128260b1e34726716
+ /etc/gimp/2.0/templaterc 1bf68e43b5b8b79ce1aa3ae35f435180
+ /etc/gimp/2.0/unitrc 3ec404ec597ef5460600cccf0192f4d6
+ /etc/gimp/2.0/ps-menurc 925e99dcff536fe9f43fd09610279e07
+ /etc/gimp/2.0/sessionrc 0e7d0d195286139b2a4214bca01ac63b
+Description: Data files for The GIMP, stable version 2.0
+ This package contains architecture-independent supporting data files
+ for use with The GIMP 2.0
+
+Package: libgstreamer0.8-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 2208
+Maintainer: David I. Lehn <dlehn@debian.org>
+Architecture: i386
+Source: gstreamer0.8
+Version: 0.8.5-1
+Depends: libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.4.1), libpopt0 (>= 1.7), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1)
+Suggests: gstreamer0.8-tools, gstreamer0.8-plugins
+Description: Core GStreamer libraries, plugins, and utilities
+ GStreamer is a media processing framework with support for a wide variety
+ of data sources, sinks, and formats through the use of dynamically loaded
+ plugins.
+ .
+ This package contains core components used in GStreamer based applications:
+ .
+ Various basic elements including:
+ * file source and sink
+ * tee and aggregator
+ * fake source and sink for testing
+ * identity
+ * pipe filter
+ * statistics
+ .
+ Other important plugable pieces including:
+ * autoplugging support
+ * standard schedulers
+ * type detection support
+ .
+ Library plugins:
+ * bytestream
+ * control
+ * putbits
+ * getbits
+ .
+ Utilities needed to manage GStreamer plugin information:
+ * gst-register-0.8: update the plugin registry
+ * gst-compprep-0.8: update the information for gst-complete
+ .
+ http://gstreamer.net/
+
+Package: dpkg-doc
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 72
+Origin: debian
+Maintainer: Dpkg Development <debian-dpkg@lists.debian.org>
+Bugs: debbugs://bugs.debian.org
+Architecture: all
+Source: dpkg
+Version: 1.10.23
+Replaces: dpkg-dev (<< 1.4.1.19)
+Description: Dpkg Internals Documentation
+ This document describes the internal operations of the dpkg program. It
+ covers building as well as the internals functions. If you are interested
+ in creating your own packages, then you may be more interested in the
+ debian-policy package.
+
+Package: libfaad2-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 368
+Maintainer: Christian Marillat <marillat@debian.org>
+Architecture: i386
+Source: faad2
+Version: 2.0.0-0.1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Freeware Advanced Audio Decoder - runtime files
+ FAAD2 is the fastest ISO AAC audio decoder available. FAAD2 correctly
+ decodes all MPEG-4 and MPEG-2 MAIN, LOW, LTP, LD and ER object type AAC
+ files.
+
+Package: libidl0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 216
+Maintainer: Sebastian Rittau <srittau@debian.org>
+Architecture: i386
+Source: libidl
+Version: 0.8.3-1
+Depends: cpp, libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.2.3)
+Description: library for parsing CORBA IDL files
+ libIDL is a small library for creating parse trees of CORBA v2.2 compliant
+ Interface Definition Language (IDL) files, which is a specification for
+ defining interfaces which can be used between different CORBA
+ implementations. libIDL is used in the ORBit2 IDL compiler, as well
+ as various language bindings (perl, python, etc.) for ORBit2.
+
+Package: kbruch
+Status: install ok installed
+Priority: optional
+Section: math
+Installed-Size: 348
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeedu
+Version: 4:3.2.3-2
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.4-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: kdeedu-data (>= 4:3.2.3-2)
+Suggests: khelpcenter, kdeedu-doc-html
+Description: fraction calculation teaching tool for KDE
+ KBruch is a program that generate tasks with fractions. The user has
+ to solve the given task by entering the right value for numerator
+ and denominator. The program checks the user's solution and gives
+ feedback.
+ .
+ This package is part of the official KDE edutainment module.
+
+Package: kate-plugins
+Status: install ok installed
+Priority: optional
+Section: editors
+Installed-Size: 3440
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeaddons
+Version: 4:3.2.3-2
+Depends: kate (>= 4:3.2.2), kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter, kdeaddons-doc-html, tidy
+Enhances: kate
+Description: plugins for Kate, the KDE Advanced Text Editor
+ This package contains a variety of useful plugins for Kate, the KDE
+ Advanced Text Editor. These plugins can be loaded through the plugin
+ manager in Kate settings.
+ .
+ Highlights include spell checking, text filtering, HTML/XML construction
+ and validation, insertion of shell command output, vim/emacs modeline
+ handling, opening of C/C++ headers, extraction of C/C++ symbols, a Python
+ browser and even more.
+ .
+ This package is part of the KDE add-ons module.
+
+Package: libkcddb1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 256
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdemultimedia
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: cddb library for KDE
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ cddb library for KDE.
+ .
+ This package is part of the official KDE multimedia module.
+
+Package: libgnome-desktop-2
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 144
+Maintainer: Ondřej Surý <ondrej@debian.org>
+Architecture: i386
+Source: gnome-desktop
+Version: 2.6.1-2
+Config-Version: 2.6.1-2
+Replaces: libpanel-applet2 (<= 1.5.4-1)
+Depends: libart-2.0-2 (>= 2.3.16), libatk1.0-0 (>= 1.6.0), libbonobo2-0 (>= 2.6.0), libbonoboui2-0 (>= 2.5.4), libc6 (>= 2.3.2.ds1-4), libgconf2-4 (>= 2.6.1), libglib2.0-0 (>= 2.4.1), libgnome2-0 (>= 2.6.0), libgnomecanvas2-0 (>= 2.6.0), libgnomeui-0 (>= 2.6.0), libgnomevfs2-0 (>= 2.6.0), libgtk2.0-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), liborbit2 (>= 1:2.10.0), libpango1.0-0 (>= 1.4.0), libpopt0 (>= 1.7), libsm6 | xlibs (>> 4.1.0), libstartup-notification0 (>= 0.0.5), libxml2 (>= 2.6.10), zlib1g (>= 1:1.2.1)
+Description: Utility library for loading .desktop files - runtime files
+ This library is used by GNOME 2 to load the .desktop files.
+
+Package: libdv2
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 192
+Maintainer: Daniel Kobras <kobras@debian.org>
+Source: libdv
+Version: 0.99-2
+Config-Version: 0.99-2
+Depends: libc6 (>= 2.3.1-1)
+Recommends: libdv-bin
+Description: A software library for DV format digital video (runtime lib)
+ The Quasar DV Codec (libdv) is a software decoder for DV format video, as
+ defined by the IEC 61834 and SMPTE 314M standards. DV is the encoding format
+ used by consumer-grade digital camcorders.
+ .
+ This package contains the library needed to run executables using libdv.
+
+Package: libncurses5-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 5172
+Maintainer: Daniel Jacobowitz <ncurses-maint@debian.org>
+Architecture: i386
+Source: ncurses
+Version: 5.4-4
+Replaces: ncurses-dev, ncurses-developer, libncurses-dev
+Provides: libncurses-dev, ncurses-dev
+Depends: libncurses5 (= 5.4-4), libc-dev
+Conflicts: ncurses-dev, ncurses-developer, libncurses-dev
+Description: Developer's libraries and docs for ncurses
+ This package contains the header files, static libraries
+ and symbolic links that developers using ncurses will need.
+ It also includes the libraries' man pages and other documentation.
+
+Package: libxv1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 316
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Depends: libc6 (>= 2.3.2.ds1-4), libxext6 | xlibs (>> 4.1.0)
+Description: X Window System video extension library
+ libXv provides an X Window System client interface to XVideo, the real-time
+ video extension to the X protocol.
+
+Package: libdv4
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 204
+Maintainer: Daniel Kobras <kobras@debian.org>
+Architecture: i386
+Source: libdv
+Version: 0.103-1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Recommends: libdv-bin
+Description: software library for DV format digital video (runtime lib)
+ The Quasar DV Codec (libdv) is a software decoder for DV format video, as
+ defined by the IEC 61834 and SMPTE 314M standards. DV is the encoding format
+ used by consumer-grade digital camcorders.
+ .
+ This package contains the library needed to run executables using libdv.
+
+Package: libwmf0.2-7
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 504
+Maintainer: Matej Vela <vela@debian.org>
+Source: libwmf
+Version: 0.2.8-1.1
+Depends: libc6 (>= 2.3.2.ds1-4), libexpat1 (>= 1.95.6), libfreetype6 (>= 2.1.5-1), libjpeg62, libpng12-0 (>= 1.2.5.0-4), xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), gsfonts
+Description: Windows metafile conversion library
+ Windows metafile (WMF) is a picture format used by many Windows
+ programs, e.g. Microsoft Word. libwmf is a library for interpreting
+ metafile images and either displaying them using X or converting them
+ to standard formats such as PNG, JPEG, PS, EPS and SVG(Z)...
+ .
+ This package contains the shared library.
+
+Package: aalib-bin
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 84
+Maintainer: Joey Hess <joeyh@debian.org>
+Architecture: i386
+Source: aalib
+Version: 1.4p5-22
+Depends: aalib1 (>= 1.2), libc6 (>= 2.3.2.ds1-4), libgpmg1 (>= 1.19.6-1), libncurses5 (>= 5.4-1), libx11-6 | xlibs (>> 4.1.0), slang1 (>> 1.4.9dbs-4)
+Description: sample programs using aalib
+ AAlib is a portable ascii art graphics library. Internally, it works like
+ a graphics display, but the output is rendered into gorgeous platform
+ independent ascii graphics.
+ .
+ This package contains a few sample programs that use aalib.
+
+Package: ding
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 368
+Maintainer: Roland Rosenfeld <roland@debian.org>
+Architecture: all
+Version: 1.3-5
+Depends: tk8.4 | wish
+Recommends: translation-dictionary
+Suggests: agrep, ispell, dict
+Description: Dictionary lookup program for Unix
+ This is "Ding"
+ * a dictionary lookup program for Unix,
+ * DIctionary Nice Grep,
+ * a Tk based Front-End to [ae]grep, ispell, dict, ...
+ * Ding {n} :: thing
+ .
+ This package needs agrep(1) or egrep(1) as a back end. agrep is
+ preferable, because it supports fault tolerant searching.
+ .
+ You have to install some translation dictionary word list with a
+ word/phrase in two languages in one line with some kind of separator
+ between them. The default configuration of ding uses the
+ German-English dictionary which can be found in the trans-de-en
+ package, but you can use every other translation word lists with one
+ entry per line.
+ .
+ Homepage: http://www-user.tu-chemnitz.de/~fri/ding/
+
+Package: ksirc
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 2336
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdenetwork
+Version: 4:3.3.0-2
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), perl
+Suggests: khelpcenter
+Conffiles:
+ /etc/kde3/ksircrc 88930dffb6a4953594800a67d38c6d10
+Description: KDE IRC client
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ KSirc is the default KDE IRC client. It supports scripting with Perl and has a
+ lot of compatibility with mIRC for general use.
+ .
+ This package is part of the official KDE network module.
+
+Package: kbackgammon
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 1052
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Suggests: gnubg
+Description: A Backgammon game for KDE
+ KBackgammon is a backgammon program for KDE2. It is based on the
+ code, ideas and concepts of KFibs (which is a FIBS client for
+ KDE1). For a short time, KBackgammon was called bacKgammon (if you
+ know somebody who is still using bacKgammon, please force them to
+ upgrade :-)).
+
+Package: realpath
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 64
+Maintainer: Robert Luberda <robert@debian.org>
+Architecture: i386
+Source: dwww
+Version: 1.9.15
+Replaces: dwww (<= 1.6.10)
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Return the canonicalized absolute pathname
+ The package contains a small utility realpath, which converts each
+ pathname argument to an absolute pathname, which has no components
+ that are symbolic links or the special . or .. directory entries.
+ .
+ This utility provides mostly the same functionality as `/bin/readlink -f'
+ in the coreutils package.
+
+Package: gtk-engines-thingeramik
+Status: purge ok not-installed
+Priority: optional
+Section: graphics
+
+Package: libjpeg62-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 412
+Maintainer: Bill Allombert <ballombe@debian.org>
+Source: libjpeg6b
+Version: 6b-9
+Replaces: libjpeg-dev, libjpegg-dev
+Provides: libjpeg-dev, libjpegg-dev
+Depends: libjpeg62 (= 6b-9), libc6-dev
+Conflicts: libjpeg-dev, libjpegg-dev
+Description: Development files for the IJG JPEG library
+ The Independent JPEG Group's JPEG library is a library for handling
+ JPEG files.
+ .
+ This package contains the static library, headers and documentation.
+
+Package: alsaplayer-oss
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 40
+Maintainer: Ivo Timmermans <ivo@debian.org>
+Architecture: i386
+Source: alsaplayer
+Version: 0.99.76-0.2
+Replaces: alsaplayer-alsa (<< 0.99.22), alsaplayer-esd (<< 0.99.22)
+Provides: alsaplayer-output
+Depends: libc6 (>= 2.3.2.ds1-4), alsaplayer-common (= 0.99.76-0.2)
+Recommends: alsaplayer
+Conflicts: alsaplayer-alsa (<< 0.99.22), alsaplayer-esd (<< 0.99.22)
+Description: PCM player designed for ALSA (OSS output module)
+ Alsaplayer is a PCM player designed specifically for use with ALSA, but
+ works great with OSS or EsounD. It's heavily threaded which cuts down on
+ skipping, offers optional and even simultaneous visual scopes, plays
+ mp3, mp2, ogg, cdda, audiofs, and lots more.
+ .
+ This is a module for alsaplayer that will output the sound through OSS.
+
+Package: vcdtools
+Status: install ok installed
+Priority: optional
+Section: otherosfs
+Installed-Size: 108
+Maintainer: Chris Butler <chrisb@debian.org>
+Version: 0.4-2
+Depends: libc6 (>= 2.3.1-1)
+Suggests: cdrdao
+Description: Creates Video CD (VCD) filesystem images
+ This package includes two utilities "mkvcdfs" and "vcdmplex". mkvcdfs
+ creates filesystem images for video CDs, which can then be written to
+ CD with the cdrdao program. vcdmplex is used to multiplex MPG audio and
+ data streams into a format suitable for a video CD.
+
+Package: grub
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 732
+Maintainer: Grub Maintainers <pkg-grub-devel@lists.alioth.debian.org>
+Architecture: i386
+Version: 0.95+cvs20040624-8
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1)
+Suggests: grub-doc, grubconf
+Description: GRand Unified Bootloader
+ GRUB is a GPLed bootloader intended to unify bootloading across x86
+ operating systems. In addition to loading the Linux kernel,
+ it implements the Multiboot standard, which allows for flexible loading
+ of multiple boot images (needed for modular kernels such as the GNU Hurd).
+
+Package: figlet
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 880
+Maintainer: Francesco Tapparo <cesco@debian.org>
+Version: 2.2.1-1
+Replaces: figfonts
+Depends: libc6 (>= 2.3.1-1)
+Conflicts: figfonts (<= 2.2-3), figfonts-cjk (<= 2.2-3)
+Description: Frank, Ian & Glenn's Letters
+ Figlet is a program that creates large characters out of ordinary screen
+ characters. It can create characters in many different styles and can
+ kern and "smush" these characters together in various ways. Figlet
+ output is generally reminiscent of the sort of "signatures" many people
+ like to put at the end of e-mail and Usenet messages.
+
+Package: libcapture0
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 320
+Maintainer: Peter Rockai (mornfall) <mornfall@logisys.dyndns.org>
+Architecture: i386
+Source: kapture
+Version: 0.4.1
+Config-Version: 0.4.1
+Depends: libapt-pkg-libc6.3-5-3.3, libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.4-1), libstdc++5 (>= 1:3.3.4-1), libtagcoll0 (>= 0.8), zlib1g (>= 1:1.2.1)
+Description: Common APT User inteRface Extensions library
+ This is the runtime library, required to run libcapture-based programs. The
+ library itself provides a framework built on top of libapt-pkg, with emphasis
+ on user interface programming.
+ .
+ BEWARE HOWEVER, THIS IS EXPERIMENTAL SOFTWARE!
+
+Package: libasound1
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 148
+Maintainer: Masato Taruishi <taru@debian.org>
+Source: alsa-lib-0.5
+Version: 0.5.10b-1
+Replaces: alsalib0.3.0, alsalib0.3.2, alsalib
+Depends: libc6 (>= 2.2.4-4)
+Suggests: alsadriver, alsa-base
+Conflicts: alsalib0.1.3, alsalib0.3.0, alsalib0.3.2, alsalib
+Description: Advanced Linux Sound Architecture (libraries)
+ ALSA is an effort to create a modules sound system for Linux,
+ while maintaining full compatibility with OSS/Lite.
+ .
+ This package contains the libraries.
+
+Package: libasound2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 940
+Maintainer: Debian ALSA Maintainers <pkg-alsa-devel@lists.alioth.debian.org>
+Architecture: i386
+Source: alsa-lib
+Version: 1.0.5-1
+Replaces: alsalib0.3.0, alsalib0.3.2, alsalib
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: alsa-base
+Conflicts: alsalib0.1.3, alsalib0.3.0, alsalib0.3.2, alsalib
+Description: Advanced Linux Sound Architecture (libraries)
+ ALSA is an effort to create a modular sound system for Linux,
+ while maintaining full compatibility with OSS/Lite.
+ .
+ These are the the shared library files.
+
+Package: libdps1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 628
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0)
+Description: Display PostScript (DPS) client library
+ libdps provides client-side libraries for use with the Display Postscript
+ (DPS) system.
+ .
+ This package only provides the client-side interfaces to DPS. In order to
+ fully take advantage of it, DPS extension support is required in the X
+ server, for which there is currently no freely-licensed implementation.
+
+Package: libgpgme11
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 272
+Maintainer: Jose Carlos Garcia Sogo <jsogo@debian.org>
+Architecture: i386
+Source: gpgme0.4
+Version: 0.9.0-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgpg-error0 (>= 0.7), gnupg (>= 1.2.2)
+Description: GPGME - GnuPG Made Easy
+ GPGME is a wrapper library which provides a C API to access some of the
+ GnuPG functions, such as encrypt, decrypt, sign, verify, ...
+
+Package: libieee1284-3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 68
+Maintainer: Julien BLACHE <jblache@debian.org>
+Source: libieee1284
+Version: 0.2.8-2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Cross-platform library for parallel port access
+ This library was designed to ease the use of the parallel port. It will
+ automatically figure out which access method is available, depending on the
+ running kernel and the permissions of the process.
+ .
+ It handles particular queries to the devices, like fetching the Device ID of
+ a device.
+
+Package: libsmbclient
+Status: install ok installed
+Priority: extra
+Section: libs
+Installed-Size: 1340
+Maintainer: Eloy A. Paris <peloy@debian.org>
+Architecture: i386
+Source: samba
+Version: 3.0.7-1
+Depends: libc6 (>= 2.3.2.ds1-4), libcomerr2 (>= 1.33-3), libkrb53 (>= 1.3.2), libldap2 (>= 2.1.17-1)
+Description: shared library that allows applications to talk to SMB servers
+ libsmbclient allows to write applications that use the SMB protocol.
+ This gives applications the ability to talk to Microsoft Windows servers
+ and Unix servers running Samba.
+ .
+ This package contains the libsmbclient shared library.
+
+Package: toppler
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 1376
+Maintainer: Bill Allombert <ballombe@debian.org>
+Version: 1.0.6-1
+Config-Version: 1.0.6-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.2-1), libsdl-mixer1.2 (>= 1.2.5), libsdl1.2debian (>> 1.2.6-0), libstdc++5 (>= 1:3.3.2-1), zlib1g (>= 1:1.2.1)
+Description: Clone of the "Nebulus" game on old 8 and 16 bit machines
+ Toppler is an almost complete reimplementation of the old game known as
+ Tower Toppler or Nebulus.
+ .
+ The target of the game is to reach the target door of each of the 8 towers
+ in currently 2 missions with this little green animal. This door is usually
+ at the very top of the tower.
+ .
+ But finding the way by using elevators and walking through a maze of doors
+ and platforms is not the only problem you have to solve. There are a bunch
+ of other creatures living on the tower that will hinder you to reach your
+ target by pushing you over the edge of the platforms.
+ .
+ Homepage: http://toppler.sourceforge.net/
+
+Package: libbluetooth1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 112
+Maintainer: Edd Dumbill <ejad@debian.org>
+Architecture: i386
+Source: bluez-libs
+Version: 2.9-1
+Replaces: libsdp2 (<= 1.5-2)
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libsdp2 (<= 1.5-2)
+Description: Library to use the BlueZ Linux Bluetooth stack
+ BlueZ is the official Linux Bluetooth protocol stack. It is an Open Source
+ project distributed under GNU General Public License (GPL).
+ .
+ More information is available at http://bluez.sourceforge.net/
+
+Package: openoffice.org-l10n-sk
+Status: install ok installed
+Priority: optional
+Section: contrib/editors
+Installed-Size: 18968
+Maintainer: Debian OpenOffice Team <debian-openoffice@lists.debian.org>
+Architecture: all
+Source: openoffice.org
+Version: 1.1.2-3
+Replaces: openoffice.org1.1-l10n-sk
+Provides: openoffice.org-l10n-1.1.2, openoffice.org1.1-l10n-sk
+Depends: openoffice.org (>> 1.0.99+1.1)
+Suggests: myspell-dictionary-sk, openoffice.org-hyphenation-sk, openoffice.org-thesaurus-sk, openoffice.org-help-sk
+Conflicts: openoffice.org1.1-l10n-sk
+Description: Slovak language package for OpenOffice.org
+ OpenOffice.org is a full-featured office productivity suite that provides
+ a near drop-in replacement for Microsoft(R) Office.
+ .
+ This package contains the localization of openoffice.org in
+ Slovak.
+ It contains the user interface, the templates and the autotext features.
+ (please note that not all this is available for all possible languages).
+ You can switch user interface language using the locales system.
+ .
+ Spelling dictionaries, hyphenation patterns, thesauri and help are not
+ included in this package. There are some available in separate packages
+ (myspell-*, openoffice.org-hyphenation-*, openoffice.org-thesaurus-*,
+ openoffice.org-help-*)
+ .
+ If you just want to be able to spellcheck etc. in other languages, you can
+ install extra dictionaries/hyphenation patterns/thesauri independently of
+ the language packs.
+ .
+ For latest news on OpenOffice.org in Debian, see
+ http://openoffice.debian.net
+
+Package: xdm
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 912
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xbase (<< 3.3.2.3a-2), xbase-clients (<< 4.0)
+Provides: x-display-manager
+Depends: debconf (>= 1.2.9), xbase-clients, cpp, libpam-modules, libpam-runtime (>= 0.76-13.1), libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libpam0g (>= 0.76), libsm6 | xlibs (>> 4.1.0), libxaw7 (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0), debconf (>= 0.5) | debconf-2.0
+Suggests: xutils
+Conflicts: cpp-3.3 (<< 1:3.3.3-0pre1)
+Conffiles:
+ /etc/X11/app-defaults/Chooser 301817610e89e7739ce1e121b3baf20c
+ /etc/X11/xdm/Xaccess 2bbf5b9f056c65a1754b75ba452e1ea1
+ /etc/X11/xdm/Xresources d6aa121ae790ad22d8341f196082ae49
+ /etc/X11/xdm/Xservers d1a3f3fdda4d3789e0310918dd811c71
+ /etc/X11/xdm/Xsession 7665beb7c953f2ad9df08f7f73b64fb7
+ /etc/X11/xdm/Xstartup 8e6bb9af52a4f6dced7b7a890aa34851
+ /etc/X11/xdm/Xwilling 5aec82ec5555f912e050a02f84d8d572
+ /etc/X11/xdm/pixmaps/XFree86.xpm 91cf8f46b31119b5d69270ae7bc5081d
+ /etc/X11/xdm/pixmaps/XFree86bw.xpm c9ef591e6e78edd3d2352e55c0067160
+ /etc/X11/xdm/pixmaps/debian.xpm 8bd89d6976e41f6598ab61fda364505e
+ /etc/X11/xdm/pixmaps/debianbw.xpm c90b32c82b91d0c8c69ba5a69594a21f
+ /etc/X11/xdm/xdm-config a542e61c838ee622b8aca1036e1f6233
+ /etc/X11/xdm/xdm.options 08323d8f8ab6663770eacdc078099d21
+ /etc/pam.d/xdm 5fa35d58f9585226b6ba5384255d829e
+ /etc/init.d/xdm 11ae8fac1379ceb261adf83c699196b4
+ /etc/logrotate.d/xdm 4c38b36684387eb57228ca71c1383e5c
+Description: X display manager
+ xdm manages a collection of X servers, which may be on the local host or
+ remote machines. It provides services similar to those provided by init,
+ getty, and login on character-based terminals: prompting for login name and
+ password, authenticating the user, and running a session. xdm supports XDMCP
+ (X Display Manager Control Protocol) and can also be used to run a chooser
+ process which presents the user with a menu of possible hosts that offer
+ XDMCP display management.
+ .
+ If the xutils package is installed, xdm can use the sessreg utility to
+ register login sessions to the system utmp file; this, however, is not
+ necessary for xdm to function.
+ .
+ xdm requires the C preprocessor (cpp) to process its configuration files.
+ The GNU C preprocessor's "-traditional" support misbehaves in early releases
+ of the GCC 3.3 series; therefore, this package conflicts with those versions.
+
+Package: kmenuedit
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 552
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0), kdebase-doc (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE Menu Editor
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ The KDE menu editor allows you to make customisations to the KDE menu
+ structure.
+ .
+ This package is part of the official KDE base module.
+
+Package: gimp-svg
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 100
+Maintainer: Ari Pollak <ari@debian.org>
+Architecture: i386
+Source: gimp
+Version: 2.0.4-1
+Depends: gimp (= 2.0.4-1), libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libgimp2.0 (>= 2.0.0), libglib2.0-0 (>= 2.4.1), libgtk2.0-0 (>= 2.4.4), libpango1.0-0 (>= 1.4.1), librsvg2-2 (>= 2.7.2)
+Description: SVG plugin for The GIMP, stable version 2.0
+ This package includes the plugin necessary for opening SVG (Scalable
+ Vector Graphics) files in The GIMP.
+
+Package: base-files
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 356
+Maintainer: Santiago Vila <sanvila@debian.org>
+Architecture: i386
+Version: 3.1
+Replaces: base, miscutils, libreadline, libreadlineg2 (<< 2.1-16), bash (<< 2.03-3)
+Provides: base
+Depends: awk, base-passwd (>= 2.0.3.4)
+Conffiles:
+ /etc/debian_version 61ac235d4b5a07839ed0f3af03d4f15e
+ /etc/host.conf a61b9f6548d337c1cc1e5a4de39f7b7f
+ /etc/inputrc 27bb8dcd68671f6d61f6fda7333f3c26
+ /etc/issue c492a8e6247e77a95284c93265f9a254
+ /etc/issue.net 83d0f8f05ca2a738d2da6f287a0a66e0
+ /etc/nsswitch.conf 109e33e2c91d1853b5bc56078a96aa18
+ /etc/profile 676715f4bb7c65cb40107d1e1365d6f4
+Description: Debian base system miscellaneous files
+ This package contains the basic filesystem hierarchy of a Debian system, and
+ several important miscellaneous files, such as /etc/debian_version,
+ /etc/host.conf, /etc/issue, /etc/motd, /etc/profile, /etc/nsswitch.conf,
+ and others, and the text of several common licenses in use on Debian systems.
+
+Package: clisp-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 2648
+Maintainer: Will Newton <will@debian.org>
+Architecture: i386
+Source: clisp
+Version: 1:2.33.2-3
+Replaces: clisp (<< 1:2.33.1)
+Depends: clisp, libreadline4-dev, libsigsegv-dev, libice-dev, libsm-dev, libx11-dev, libxpm-dev, libxext-dev
+Conflicts: clisp (<< 1:2.33.1)
+Description: GNU CLISP, a Common Lisp implementation (development files)
+ Common Lisp is a high-level, general-purpose programming language.
+ GNU CLISP is a Common Lisp implementation by Bruno Haible of Karlsruhe
+ University and Michael Stoll of Munich University, both in Germany.
+ It mostly supports the Lisp described in the ANSI Common Lisp standard.
+ It runs on microcomputers (OS/2, Windows NT/2000, Windows 95/98, Amiga
+ 500-4000, Acorn RISC PC) as well as on Unix workstations (Linux, SVR4,
+ Sun4, DEC Alpha OSF, HP-UX, BeOS, NeXTstep, SGI, AIX, Sun3 and others)
+ and needs only 2 MB of RAM.
+ .
+ The user interface comes in German, English, French, Spanish, Dutch
+ and Russian.
+ .
+ GNU CLISP includes an interpreter, a compiler, a debugger, CLOS,
+ a foreign language interface, sockets, i18n, fast bignums and more.
+ An X11 interface is available through CLX, Garnet, CLUE/CLIO.
+ GNU CLISP runs Maxima, ACL2 and many other Common Lisp packages.
+
+Package: libkrb-1-kerberos4kth
+Status: deinstall ok config-files
+Priority: optional
+Section: net
+Installed-Size: 188
+Maintainer: Mikael Sennerholm <mikan@debian.org>
+Architecture: i386
+Source: krb4
+Version: 1.2.2-10
+Config-Version: 1.2.2-10
+Replaces: kerberos4kth1 (<< 1.1)
+Depends: libc6 (>= 2.3.2-1), libcomerr2 (>= 1.33-3), libssl0.9.7
+Conflicts: kerberos4kth1 (<< 1.1), kerberos4kth, arla (<< 0.35.5-2)
+Description: Kerberos Libraries for Kerberos4 From KTH
+ Kerberos is a system for authenticating users and services on a network.
+ Kerberos is a trusted third-party service. That means that there is a
+ third party (the kerberos server) that is trusted by all the entities on
+ the network (users and services, usually called "principals").
+ .
+ This version is from Kungliga Tekniska Högskolan (the Royal Institute of
+ Technology in Stockholm, Sweden). It is based on the eBones version of MIT
+ Kerberos which was legally exported from the US by removing all encryption
+ hooks before export. It isn't covered by any patents and should be legal to
+ use anywhere encryption is legal at all.
+
+Package: libselinux1-dev
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 732
+Maintainer: Russell Coker <russell@coker.com.au>
+Architecture: i386
+Source: libselinux
+Version: 1.16-2
+Depends: libselinux1
+Conflicts: libselinux-dev
+Description: SELinux development headers
+ This package provides the development headers for Security-enhanced
+ Linux.
+
+Package: doc-debian
+Status: install ok installed
+Priority: standard
+Section: doc
+Installed-Size: 920
+Maintainer: Josip Rodin <joy-packages@debian.org>
+Architecture: all
+Version: 3.1
+Suggests: www-browser, postscript-viewer
+Description: Debian Project documentation, Debian FAQ and other documents
+ The Debian Project is an association of individuals who have made
+ common cause to create a free operating system.
+ .
+ In this package, you will find:
+ * Debian Linux Manifesto,
+ * Constitution for the Debian Project,
+ * Debian GNU/Linux Social Contract,
+ * Debian Free Software Guidelines.
+ .
+ Additionally provided are:
+ * Debian GNU/Linux Frequently Asked Questions (FAQ),
+ * Debian Bug Tracking System documentation, and
+ * Introduction to the Debian mailing lists.
+ .
+ All of these files are available at ftp://ftp.debian.org/debian/doc/ and
+ mirrors thereof.
+
+Package: apt-listchanges
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 336
+Maintainer: Matt Zimmerman <mdz@debian.org>
+Architecture: all
+Version: 2.56
+Depends: python (>= 2.3), apt (>= 0.5.3), python-apt, debconf, ucf (>= 0.28), debianutils (>= 2.0.2)
+Suggests: x-terminal-emulator, www-browser
+Conffiles:
+ /etc/apt/apt.conf.d/20listchanges 39204938ee32c5ebd503167ace5c1d0c
+Description: Display change history from .deb archives
+ apt-listchanges is a tool to show what has been changed in a new
+ version of a Debian package, as compared to the version currently
+ installed on the system. It does this by extracting the relevant
+ entries from the Debian changelog file, and the NEWS.Debian file.
+ .
+ It can be run on several .deb archives at a time to get a list of all
+ of the changes that would be effected by installing or upgrading a
+ group of packages. It can be configured to do this automatically
+ during upgrades using apt.
+
+Package: gcc-3.4-base
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 184
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-3.4
+Version: 3.4.2-2
+Description: The GNU Compiler Collection (base package)
+ This package contains files common to all languages and libraries
+ contained in the GNU Compiler Collection (GCC).
+
+Package: flex
+Status: install ok installed
+Priority: standard
+Section: devel
+Installed-Size: 764
+Maintainer: Manoj Srivastava <srivasta@debian.org>
+Architecture: i386
+Version: 2.5.31-27
+Depends: libc6 (>= 2.3.2.ds1-4), m4
+Recommends: gcc | c-compiler
+Suggests: bison
+Description: A fast lexical analyzer generator.
+ flex is a tool for generating scanners: programs which recognized lexical
+ patterns in text. flex reads the given input files for a description of a
+ scanner to generate. The description is in the form of pairs of regular
+ expressions and C code, called rules. flex generates as output a C source
+ file, lex.yy.c, which defines a routine yylex(). This file is compiled
+ and linked with the -lfl library to produce an executable. When the
+ executable is run, it analyzes its input for occurrences of the regular
+ expressions. Whenever it finds one, it executes the corresponding C code.
+ .
+ The behaviour of Flex has undergone a major change since version
+ 2.5.4a; Flex scanners are now reenterant, you may have multiple
+ scanners in the same program with differing sets of defaults, and
+ they play nicer with modern C and C++ compilers. The Flip side is
+ that Flex no longer conforms to the POSIX lex behaviour, and the
+ scanners require conforming implementations when flex is used in ANSI
+ C mode. The package flex-old provides the older behaviour.
+ .
+ This product includes software developed by the University of California,
+ Berkeley and its contributors. The upstream source code can be found at
+ http://prdownloads.sourceforge.net/lex/flex-2.5.31.tar.bz2?download
+ The project web page is at http://lex.sf.net/
+
+Package: libfam0c102
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 104
+Maintainer: Joerg Wendland <joergland@debian.org>
+Source: fam
+Version: 2.7.0-5
+Replaces: libfam0
+Provides: libfam0
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.2-1), libstdc++5 (>= 1:3.3.2-1)
+Recommends: fam
+Conflicts: libfam0
+Description: client library to control the FAM daemon
+ FAM monitors files and directories, notifying interested applications
+ of changes.
+ .
+ This package provides a shared library to allow programs to connect to
+ the FAM daemon and ask for files to be monitored.
+
+Package: libxtrap6
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 332
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0)
+Conflicts: xlibs (<< 4.3.0)
+Description: X Window System protocol-trapping extension library
+ libXTrap provides an X Window System client interface to the protocol-capture
+ extension to the X protocol. This library also allows core protocol input
+ events to be synthesized.
+
+Package: python2.3-tk
+Status: install ok installed
+Priority: optional
+Section: python
+Installed-Size: 420
+Maintainer: Matthias Klose <doko@debian.org>
+Architecture: i386
+Source: python2.3
+Version: 2.3.4-11sid
+Depends: python2.3 (= 2.3.4-11sid), blt (>= 2.4z), libc6 (>= 2.3.2.ds1-4), libx11-6 | xlibs (>> 4.1.0), tcl8.4 (>= 8.4.5), tk8.4 (>= 8.4.5)
+Suggests: tix8.1
+Description: Tkinter - Writing Tk applications with Python (v2.3)
+ A module for writing portable GUI applications with Python (v2.3) using Tk.
+ Also known as Tkinter.
+
+Package: mount
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 304
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Source: util-linux
+Version: 2.12-7
+Pre-Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Tools for mounting and manipulating filesystems
+ This package provides the mount(8), umount(8), swapon(8),
+ swapoff(8), and losetup(8) commands.
+
+Package: kpovmodeler
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 6168
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegraphics
+Version: 4:3.3.0-1.1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxi6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxrender1, xlibmesa-gl | libgl1, xlibmesa-glu | libglu1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter, povray
+Description: A graphical editor for povray scenes
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KPovmodeler is a graphical editor for povray scenes.
+ .
+ This package is part of the official KDE graphics module.
+
+Package: openoffice.org-mimelnk
+Status: install ok installed
+Priority: optional
+Section: contrib/editors
+Installed-Size: 232
+Maintainer: Debian OpenOffice Team <debian-openoffice@lists.debian.org>
+Architecture: all
+Source: openoffice.org
+Version: 1.1.2-2
+Recommends: kdelibs-data (>> 4:3.2.0)
+Suggests: openoffice.org
+Conflicts: openoffice.org (<< 1.0.3-3)
+Enhances: openoffice.org, koffice, kdebase
+Description: OpenOffice.org MIME bindings for KDE
+ OpenOffice.org is a full-featured office productivity suite that provides
+ a near drop-in replacement for Microsoft(R) Office.
+ .
+ This package contains the OpenOffice.org KDE MIME bindings for use with
+ KDE and KOffice.
+
+Package: kamera
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 324
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegraphics
+Version: 4:3.3.0-1.1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libexif10, libfam0c102, libgcc1 (>= 1:3.4.1-3), libgphoto2-2 (>= 2.1.4-6), libgphoto2-port0 (>= 2.1.4-6), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: digital camera io_slave for Konquerer
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This is a digital camera io_slave for KDE which uses gphoto2 and libgpio
+ to allow access to your camara's pictures with the URL camera:/
+ .
+ This package is part of the official KDE graphics module.
+
+Package: liblwres1
+Status: install ok installed
+Priority: standard
+Section: net
+Installed-Size: 172
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Source: bind9
+Version: 1:9.2.3+9.2.4-rc7-1
+Replaces: libbind0
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libbind0
+Description: Lightweight Resolver Library used by BIND
+ The Berkeley Internet Name Domain (BIND) implements an Internet domain
+ name server. BIND is the most widely-used name server software on the
+ Internet, and is supported by the Internet Software Consortium, www.isc.org.
+ .
+ This package delivers the liblwres shared library used by BIND's daemons
+ and clients.
+
+Package: krec
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 816
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdemultimedia
+Version: 4:3.3.0-1
+Depends: artsbuilder (>= 4:3.3.0), kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libarts1 (>= 1.3.0), libasound2 (>> 1.0.5), libaudio2, libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libfam0c102, libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), libidn11, libjack0.80.0-0 (>= 0.98.1), libmad0 (>= 0.15.1b), libogg0 (>= 1.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE based recorder app
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This is a KDE based recorder app.
+ .
+ This package is part of the official KDE multimedia module.
+
+Package: apache2-mpm-perchild
+Status: purge ok not-installed
+Priority: optional
+Section: net
+Architecture: i386
+
+Package: libtext-iconv-perl
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 44
+Maintainer: Steve Haslam <araqnid@debian.org>
+Architecture: i386
+Version: 1.2-3
+Depends: libc6 (>= 2.3.2.ds1-4), perl-base (>= 5.8.3-2), perlapi-5.8.3
+Description: Convert between character sets in Perl
+ The iconv() family of functions from XPG4 define an API for converting
+ between character sets (e.g. UTF-8 to Latin1, EBCDIC to ASCII). They
+ are provided by libc6
+ .
+ This package allows access to them from Perl via the Text::Iconv
+ package.
+
+Package: cvsup
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 940
+Maintainer: Torsten Landschoff <torsten@debian.org>
+Version: 16.1e-3
+Depends: libc6 (>= 2.2.4-4), libpm3, libpm3-extra, libxaw7 (>> 4.1.0), xlibs (>> 4.1.0), zlib1g (>= 1:1.1.3)
+Description: A network file distribution system optimized for CVS (client)
+ CVSup is a software package for distributing and updating collections
+ of files across a network. It can efficiently and accurately mirror
+ all types of files, including sources, binaries, hard links, symbolic
+ links, and even device nodes. CVSup's streaming communication
+ protocol and multithreaded architecture make it most likely the
+ fastest mirroring tool in existence today. In addition to being
+ a great general-purpose mirroring tool, CVSup includes special
+ features and optimizations specifically tailored to CVS repositories.
+
+Package: kcalc
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 396
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeutils
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE calculator
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ KDE's calculator.
+ .
+ This package is part of the official KDE utils module.
+
+Package: rar
+Status: install ok installed
+Priority: optional
+Section: non-free/utils
+Installed-Size: 472
+Maintainer: Petr Cech <cech@debian.org>
+Version: 3.20-2
+Depends: libc6 (>= 2.3.1-1), libgcc1 (>= 1:3.3-1), libstdc++5 (>= 1:3.3-1)
+Suggests: unrar
+Conffiles:
+ /etc/rarfiles.lst 7eca5a5ab439f2ff1899870bb77eff03
+Description: Archiver for .rar files
+ This is the RAR archiver from Eugene Roshal. It supports multiple volume
+ archives and damage protection. It can also create SFX-archives. There are
+ versions which run on DOS, Windows (3.1x,95,NT), FreeBSD, BSDI.
+ .
+ This program is shareware and you must register it after 40 days of use.
+
+Package: kernel-image-2.6.6-1-686
+Status: install ok installed
+Priority: optional
+Section: base
+Installed-Size: 43316
+Maintainer: Herbert Xu <herbert@debian.org>
+Architecture: i386
+Source: kernel-image-2.6.6-i386
+Version: 2.6.6-1
+Provides: kernel-image, kernel-image-2.6
+Depends: initrd-tools (>= 0.1.63), coreutils | fileutils (>= 4.0), module-init-tools (>= 0.9.13)
+Suggests: lilo (>= 19.1) | grub, fdutils, kernel-doc-2.6.6 | kernel-source-2.6.6
+Conflicts: hotplug (<< 0.0.20040105-1)
+Description: Linux kernel image for version 2.6.6 on PPro/Celeron/PII/PIII/PIV.
+ This package contains the Linux kernel image for version 2.6.6 on
+ Pentium Pro/Celeron/Pentium II/Pentium III/Pentium IV,
+ the corresponding System.map file, and the modules built by the packager.
+ It also contains scripts that try to ensure that the system is not left in
+ a unbootable state after an update.
+ .
+ If you wish to update a bootdisk, or to use a bootloader to make
+ installing and using the image easier, we suggest you install the latest
+ fdutils (for formatting a floppy to be used as boot disk), and LILO, for a
+ powerful bootloader. Of course, both these are optional.
+ .
+ Kernel image packages are generally produced using kernel-package,
+ and it is suggested that you install that package if you wish to
+ create a custom kernel from the sources.
+
+Package: automake1.4
+Status: purge ok not-installed
+Priority: optional
+Section: devel
+
+Package: automake1.7
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 1292
+Maintainer: Eric Dorland <eric@debian.org>
+Architecture: all
+Version: 1.7.9-6
+Provides: automaken
+Depends: autoconf (>= 2.54), autotools-dev (>= 20020320.1)
+Conflicts: automake1.6 (<< 1.6.1-4), automake (<< 1:1.4-p5-1), automake1.5 (<< 1.5-2)
+Description: A tool for generating GNU Standards-compliant Makefiles
+ Automake is a tool for automatically generating `Makefile.in's from
+ files called `Makefile.am'.
+ .
+ The goal of Automake is to remove the burden of Makefile maintenance
+ from the back of the individual GNU maintainer (and put it on the back
+ of the Automake maintainer).
+ .
+ The `Makefile.am' is basically a series of `make' macro definitions
+ (with rules being thrown in occasionally). The generated
+ `Makefile.in's are compliant with the GNU Makefile standards.
+ .
+ Automake 1.7 fails to work in a number of situations that Automake
+ 1.4 and 1.5 did, so has been renamed so that the previous version can
+ continue to be made available.
+
+Package: automake1.8
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 1492
+Maintainer: Eric Dorland <eric@debian.org>
+Architecture: all
+Version: 1.8.5-2
+Provides: automaken
+Depends: autoconf (>= 2.58), autotools-dev (>= 20020320.1)
+Conflicts: automake1.6 (<< 1.6.1-4), automake (<< 1:1.4-p5-1), automake1.5 (<< 1.5-2)
+Description: A tool for generating GNU Standards-compliant Makefiles
+ Automake is a tool for automatically generating `Makefile.in's from
+ files called `Makefile.am'.
+ .
+ The goal of Automake is to remove the burden of Makefile maintenance
+ from the back of the individual GNU maintainer (and put it on the back
+ of the Automake maintainer).
+ .
+ The `Makefile.am' is basically a series of `make' macro definitions
+ (with rules being thrown in occasionally). The generated
+ `Makefile.in's are compliant with the GNU Makefile standards.
+ .
+ Automake 1.8 fails to work in a number of situations that Automake
+ 1.4, 1.6 and 1.7 did, so has been renamed so that the previous
+ version can continue to be made available.
+
+Package: libdumb0
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 224
+Maintainer: Sam Hocevar (Debian packages) <sam+deb@zoy.org>
+Architecture: i386
+Source: libdumb
+Version: 1:0.9.2-5
+Config-Version: 1:0.9.2-5
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: dynamic universal music bibliotheque
+ DUMB is a tracker library with support for IT, XM, S3M and MOD files. It
+ targets maximum accuracy to the original formats, with low-pass resonant
+ filters for the IT files, accurate timing and pitching, and three resampling
+ quality settings (aliasing, linear interpolation and cubic interpolation).
+ .
+ This package contains the libdumb0 runtime library, a standalone library
+ for module playback. If you plan to use the Allegro library with your
+ project, please consider the libaldmb0 library.
+
+Package: mysql-common
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 84
+Maintainer: Christian Hammers <ch@debian.org>
+Architecture: all
+Source: mysql-dfsg
+Version: 4.0.21-1
+Replaces: libmysqlclient6
+Conffiles:
+ /etc/mysql/my.cnf ec1b5bf2fa8ef1a76f019ccade03f83e
+Description: mysql database common files (e.g. /etc/mysql/my.cnf)
+ MySQL is a fast, stable and true multi-user, multi-threaded SQL database
+ server. SQL (Structured Query Language) is the most popular database query
+ language in the world. The main goals of MySQL are speed, robustness and
+ ease of use.
+ .
+ This package includes files needed by all versions of the client library.
+
+Package: libqt3c102
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 6352
+Maintainer: Martin Loschwitz <madkiss@madkiss.org>
+Source: qt-x11-free
+Version: 3:3.1.1-3
+Config-Version: 3:3.1.1-3
+Replaces: libqt3-gl, qt3-tools (<< 2:3.0.2-20020306-1), libqt3, libqt3-mt
+Depends: libc6 (>= 2.2.4-4), libfontconfig1, libfreetype6 (>= 2.1.3-5), libjpeg62, libmng1 (>= 1.0.3-1), libpng2 (>= 1.0.12), libstdc++2.10-glibc2.2 (>= 1:2.95.4-0.010810), libxft2, nas-lib, xrender1, zlib1g (>= 1:1.1.4)
+Suggests: libqt3c102-psql, libqt3c102-mysql, libqt3c102-odbc, fontconfig (>= 2.1)
+Conflicts: libqt3-gl, libqt3, libqt3c
+Description: Qt Library
+ This is the Trolltech Qt library, version 3. It's necessary for
+ applications that link against the libqt.so.3.
+ .
+ WARNING: The nonthreaded version of Qt3 is considered deprecated and
+ may disappear anytime in the future. Please use libqt3-mt instead
+ (Read README.Debian for instructions).
+
+Package: quanta-data
+Status: install ok installed
+Priority: optional
+Section: web
+Installed-Size: 6468
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: all
+Source: quanta
+Version: 1:3.2.3-2
+Replaces: quanta (<< 1:3.2.3)
+Recommends: quanta (= 1:3.2.3-2)
+Description: data files for Quanta Plus web development environment
+ This package contains architecture-independent data files for Quanta
+ Plus, a web development environment for working with HTML and associated
+ languages.
+ .
+ See the quanta package for further information.
+ .
+ This package is part of the official KDE web development module.
+
+Package: emacsen-common
+Status: install ok installed
+Priority: optional
+Section: editors
+Installed-Size: 78
+Maintainer: Rob Browning <rlb@defaultvalue.org>
+Architecture: all
+Version: 1.4.15
+Depends: bsdmainutils
+Conflicts: emacs
+Conffiles:
+ /etc/emacs/site-start.el c5e78ee05c2d1b1d1f60805dee7206b4
+ /etc/emacs/site-start.d/00debian-vars.el e01bc1b84386f6c9df0716311ed6af28
+Description: Common facilities for all emacsen.
+ This package contains code that is needed by all the (x)emacs packages.
+
+Package: kghostview
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 708
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegraphics
+Version: 4:3.3.0-1.1
+Provides: postscript-viewer, pdf-viewer
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), gs
+Suggests: khelpcenter
+Description: PostScript viewer for KDE
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KGhostview is the PostScript viewer for the K Desktop Environment. It is a
+ port of Tim Theisen's Ghostview program which is used to view documents
+ prepared in Adobe's PostScript page description language. PostScript is the
+ major page description language for printing on UNIX systems and this
+ application is used to preview material intended for printing or for reading
+ documents online.
+ .
+ This package is part of the official KDE graphics module.
+
+Package: libreadline4
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 280
+Maintainer: Matthias Klose <doko@debian.org>
+Architecture: i386
+Source: readline4
+Version: 4.3-11
+Replaces: libreadline4-dev (<< 2.5a)
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1)
+Conflicts: libreadline4-dev (<< 2.5a)
+Description: GNU readline and history libraries, run-time libraries
+ The GNU readline library aids in the consistency of user interface
+ across discrete programs that need to provide a command line
+ interface.
+ .
+ The GNU history library provides a consistent user interface for
+ recalling lines of previously typed input.
+
+Package: libpt-plugins-oss
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 276
+Maintainer: Debian VoIP Team <pkg-voip-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Source: pwlib
+Version: 1.6.6.4-4
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1), libpt-1.6.3 (= 1.6.6.4-4)
+Description: Portable Windows Library Audio Plugins for the OSS Interface
+ This package contains the PWLib plugin for usage with the Open Sound
+ System interface. Install this package, if you are utilising this
+ interface..
+
+Package: libwine-alsa
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1092
+Maintainer: Ove Kaaven <ovek@arcticnet.no>
+Architecture: i386
+Source: wine
+Version: 0.0.20040716-1.2
+Depends: libwine (= 0.0.20040716-1.2), libasound2 (>> 1.0.5), libc6 (>= 2.3.2.ds1-4), libwine
+Description: Windows Emulator (ALSA Sound Module)
+ This is an ALPHA release of Wine, the MS-Windows emulator. This is
+ still a developers release and many applications may still not work.
+ .
+ This package contains an ALSA 0.9 sound driver.
+ .
+ Wine is often updated.
+
+Package: alsaplayer-common
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 412
+Maintainer: Ivo Timmermans <ivo@debian.org>
+Architecture: i386
+Source: alsaplayer
+Version: 0.99.76-0.2
+Replaces: alsaplayer-oss (<< 0.99.22), alsaplayer-alsa (<< 0.99.22), alsaplayer-esd (<< 0.99.22), alsaplayer (<< 0.99.54), alsaplayer-text (<< 0.99.54)
+Depends: libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libflac4, libgcc1 (>= 1:3.4.1-3), libid3tag0 (>= 0.15.0b), libmad0 (>= 0.15.1b), libmikmod2 (>= 3.1.10), libogg0 (>= 1.1.0), liboggflac1, libsndfile1 (>= 1.0.2-1), libstdc++5 (>= 1:3.3.4-1), libvorbis0a (>= 1.0.1), libvorbisfile3 (>= 1.0.1), zlib1g (>= 1:1.2.1), alsaplayer-oss | alsaplayer-output, alsaplayer-gtk | alsaplayer-interface
+Conflicts: alsaplayer-oss (<< 0.99.22), alsaplayer-alsa (<< 0.99.22), alsaplayer-esd (<< 0.99.22), alsaplayer (<< 0.99.54), alsaplayer-text (<< 0.99.54)
+Description: PCM player designed for ALSA (common files)
+ Alsaplayer is a PCM player designed specifically for use with ALSA, but
+ works great with OSS or EsounD. It's heavily threaded which cuts down on
+ skipping, offers optional and even simultaneous visual scopes, plays
+ mp3, mp2, ogg, cdda, audiofs, and lots more.
+ .
+ This package contains the input plugins to be used by an alsaplayer
+ frontend.
+
+Package: libncurses5
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 512
+Maintainer: Daniel Jacobowitz <ncurses-maint@debian.org>
+Architecture: i386
+Source: ncurses
+Version: 5.4-4
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Shared libraries for terminal handling
+ This package contains the shared libraries necessary to run programs
+ compiled with ncurses.
+
+Package: wdg-html-reference
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 4352
+Maintainer: Aurelien Jarno <aurel32@debian.org>
+Version: 4.0-2
+Suggests: wdg-html-validator
+Conflicts: wdg-html-validator (<< 1.5.5-9)
+Description: WDGs HTML 3.2, HTML 4, and CSS references
+ Attractive, well laid-out guides to the HTML 3.2, HTML 4, and
+ Cascading Style Sheets specifications in HTML format.
+ .
+ Homepage: http://www.htmlhelp.com
+
+Package: megami
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 296
+Maintainer: Daniel Schepler <schepler@debian.org>
+Source: kdegames
+Version: 4:3.1.5-1
+Config-Version: 4:3.1.5-1
+Depends: kdelibs4 (>= 4:3.1.5), libart-2.0-2 (>= 2.3.8), libaudio2, libc6 (>= 2.3.2.ds1-4), libfam0c102, libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.3.2-1), libkdegames1 (>= 4:3.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libstdc++5 (>= 1:3.3.2-1), libxcursor1, libxft2 (>> 2.1.1), libxrender1, xlibmesa3-gl | libgl1, xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), kdegames-card-data
+Description: Blackjack game for KDE
+ Megami is a simple blackjack game for KDE. It lacks fancy blackjack
+ rules like insurance, double down, split, or surrender, but it is
+ still fun and addictive.
+
+Package: libgstreamer0.6-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1124
+Maintainer: David I. Lehn <dlehn@debian.org>
+Architecture: i386
+Source: gstreamer
+Version: 0.6.4-1.1
+Replaces: gstreamer-core (<< 0.6.1-2), gstreamer-core-libs (<< 0.6.1-2), gstreamer-runtime (<< 0.6.1-2)
+Depends: libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.2.3), libpopt0 (>= 1.7), libxml2 (>= 2.6.8), zlib1g (>= 1:1.2.1)
+Suggests: gstreamer-tools, gstreamer-plugins
+Conflicts: gstreamer-core (<< 0.6.1-2), gstreamer-core-libs (<< 0.6.1-2), gstreamer-runtime (<< 0.6.1-2)
+Description: Core GStreamer libraries, plugins, and utilities
+ GStreamer is a media processing framework with support for a wide variety
+ of data sources, sinks, and formats through the use of dynamically loaded
+ plugins.
+ .
+ This package contains core components used in GStreamer based applications:
+ .
+ Various basic elements including:
+ * file source and sink
+ * tee and aggregator
+ * fake source and sink for testing
+ * identity
+ * pipe filter
+ * statistics
+ .
+ Other important plugable pieces including:
+ * autoplugging support
+ * standard schedulers
+ * type detection support
+ .
+ Library plugins:
+ * bytestream
+ * control
+ * putbits
+ * getbits
+ .
+ Utilities needed to manage GStreamer plugin information:
+ * gst-register: update the plugin registry
+ * gst-compprep: update the information for gst-complete
+ .
+ http://gstreamer.net/
+
+Package: vim
+Status: install ok installed
+Priority: optional
+Section: editors
+Installed-Size: 1428
+Maintainer: Norbert Tretkowski <nobse@debian.org>
+Architecture: i386
+Version: 1:6.3-025+1
+Replaces: vim-rt, vim-tiny (<< 6.0), vim-perl (<< 6.0), vim-python (<< 6.0), vim-tcl (<< 6.0), vim-tty (<< 6.0), vim-gtk (<< 6.0), vim-lesstif (<< 6.0), kvim (<< 1:6.2.135+1)
+Provides: editor, vim-rt
+Depends: libc6 (>= 2.3.2.ds1-4), libgpmg1 (>= 1.19.6-1), libncurses5 (>= 5.4-1), vim-common (>> 1:6.3)
+Pre-Depends: dpkg (>= 1.6.8)
+Suggests: ctags, vim-doc
+Conflicts: vim-rt, vim-tiny, vim-perl (<< 6.0), vim-python (<< 6.0), vim-tcl (<< 6.0), vim-tty (<< 6.0), vim-gtk (<< 6.0), vim-lesstif (<< 6.0)
+Conffiles:
+ /etc/vim/vimrc ad1abd903b5fc855764cf94c7a6d72bb
+Description: Vi IMproved - enhanced vi editor
+ Vim is an almost compatible version of the UNIX editor Vi. Many new
+ features have been added: multi level undo, syntax highlighting,
+ command line history, on-line help, filename completion, block operations,
+ folding, Unicode support, etc.
+
+Package: libgtk-imlib-perl
+Status: purge ok not-installed
+Priority: optional
+Section: interpreters
+Architecture: i386
+
+Package: dict-freedict-deu-eng
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 3052
+Maintainer: Debian QA Group <packages@qa.debian.org>
+Source: freedict
+Version: 1.1-4
+Suggests: dict, dictd
+Description: Dict package for German-English Freedict dictionary
+ This is a package of the
+ German-English Freedict dictionary
+ for the dictd server software.
+
+Package: kaddressbook
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 3884
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Replaces: kdebase (<< 4:3.0.0), kdebase-doc (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libbluetooth1 (>= 2.9), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libgnokii2 (>= 0.6.1-1), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libkcal2 (>= 4:3.3.0), libkdepim1 (>= 4:3.3.0), libkleopatra0 (>= 4:3.3.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: KDE NG addressbook application
+ KAddressBook is the main address book application for KDE; it enables you
+ to manage your contacts efficiently and comfortably. It can load and save
+ your contacts to many different locations, including the local file system,
+ LDAP servers, and SQL databases.
+ .
+ This package is part of the official KDE pim module.
+
+Package: libgnome2-vfs-perl
+Status: purge ok not-installed
+Priority: optional
+Section: perl
+Architecture: i386
+
+Package: trm
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 40
+Maintainer: Christopher L Cheney <ccheney@debian.org>
+Architecture: i386
+Version: 0.2.1-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.2-1), libid3-3.8.3, libmad0 (>= 0.15.0b), libmusicbrainz2 (>= 2.0.2), libogg0 (>= 1.1.0), libstdc++5 (>= 1:3.3.2-1), libvorbis0a (>= 1.0.1), libvorbisfile3 (>= 1.0.1), zlib1g (>= 1:1.2.1)
+Description: MusicBrainz TRM Generator
+ The TRM Generator is a small application that generates Relatable TRM acoustic
+ fingerprints.
+ .
+ Relatable TRM advanced acoustic fingerprinting technology is a leading
+ solution for identifying digital music and media files. TRM recognizes songs
+ and audio content based on the acoustical properties in the audio itself, and
+ has been developed to achieve maximum accuracy in discriminating between
+ different songs, as well as identifying each and every digitized copy of a
+ recorded song, regardless of audio file format, bit rate or common signal
+ distortions.
+
+Package: libsvga1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 676
+Maintainer: Guillem Jover <guillem@debian.org>
+Source: svgalib
+Version: 1:1.4.3-17
+Replaces: svgalibg1, svgalib-dummyg1
+Provides: svgalibg1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: svgalib, svgalib1 (<< 1:1.2.11-1), svgalib-dummyg1, svgalib-dummy1 (<< 1.2.11-1)
+Conffiles:
+ /etc/vga/null.keymap c8a2e73e2cdb4bfbc39bb739ca78976c
+ /etc/vga/dvorak-us.keymap 98cf602197cc2276cbc4f4ef1f4a9200
+ /etc/vga/libvga.et4000 625713aa06a05cd242bef448c7cf2b71
+ /etc/vga/libvga.config a3f5958d56b9cd4749e768dc02d8c5ec
+Description: console SVGA display libraries
+ svgalib provides graphics capabilities to programs running on the
+ system console, without going through the X Window System. It uses
+ direct access to the video hardware to provide low-level access to
+ the standard VGA and SVGA graphics modes. Only works with some
+ video hardware; use with caution.
+ .
+ This package contains the shared libraries and config files.
+
+Package: portmap
+Status: install ok installed
+Priority: standard
+Section: net
+Installed-Size: 116
+Maintainer: Anibal Monsalve Salazar <A.Monsalve.Salazar@IEEE.org>
+Architecture: i386
+Version: 5-4
+Replaces: netbase (<< 4.00)
+Depends: libc6 (>= 2.3.2.ds1-4), libwrap0
+Conffiles:
+ /etc/init.d/portmap 79e1610168ea14bb962751fd774f6558
+Description: The RPC portmapper
+ Portmap is a server that converts RPC (Remote Procedure Call) program
+ numbers into DARPA protocol port numbers. It must be running in order
+ to make RPC calls.
+ .
+ Services that use RPC include NFS and NIS.
+
+Package: rsync
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 396
+Maintainer: Paul Slootman <paul@debian.org>
+Architecture: i386
+Version: 2.6.2-3
+Depends: libc6 (>= 2.3.2.ds1-4), libpopt0 (>= 1.7)
+Suggests: ssh
+Conffiles:
+ /etc/default/rsync 7d29ed4588fa1b5b0a20158f391e0e05
+ /etc/init.d/rsync 70625716ff665134dae4df7801a16d50
+Description: fast remote file copy program (like rcp)
+ rsync is a program that allows files to be copied to and from remote
+ machines in much the same way as rcp. It has many more options than
+ rcp, and uses the rsync remote-update protocol to greatly speed up
+ file transfers when the destination file already exists.
+ .
+ The rsync remote-update protocol allows rsync to transfer just the
+ differences between two sets of files across the network link.
+
+Package: cdrdao
+Status: install ok installed
+Priority: extra
+Section: otherosfs
+Installed-Size: 1116
+Maintainer: Andrew Suffield <asuffield@debian.org>
+Architecture: i386
+Version: 1:1.1.9-3
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libstdc++5 (>= 1:3.3.3-1)
+Suggests: gcdmaster
+Description: Disk-At-Once (DAO) recording of audio and data CD-Rs/CD-RWs
+ cdrdao records audio or data CD-Rs in disk-at-once (DAO) mode based
+ on a textual description of the CD contents (toc-file).
+ .
+ Recording in disk-at-once mode writes the complete disc,
+ i.e. lead-in, one or more tracks and lead-out, in a single step. The
+ commonly used track-at-once (TAO) mode writes each track
+ independently which requires link blocks between two tracks.
+ .
+ Among others, cdrdao can handle the bin/cue format commonly used for
+ VCDs or disks with subchannel data.
+
+Package: mailx
+Status: install ok installed
+Priority: important
+Section: mail
+Installed-Size: 292
+Maintainer: Robert Luberda <robert@debian.org>
+Architecture: i386
+Version: 1:8.1.2-0.20040524cvs-1
+Provides: mail-reader
+Depends: libc6 (>= 2.3.2.ds1-4), liblockfile1 (>= 1.0), exim4 | mail-transport-agent, base-files (>= 2.2.0)
+Conflicts: suidmanager (<< 0.52)
+Conffiles:
+ /etc/mail.rc 2bd8160a85f53c20e55ebd375fc89431
+Description: A simple mail user agent
+ mailx is the traditional command-line-mode mail user agent.
+ Even if you don't use it it may be required by other programs.
+
+Package: cfi-en
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 960
+Maintainer: Mikael Hedin <micce@debian.org>
+Architecture: all
+Source: cfi
+Version: 3.0-5
+Suggests: www-browser
+Description: Copyright does not exist, book about hacker culture.
+ Copyright does not exist: Book about hacker culture, folklore and
+ history by Linus Walleij. This is a translation from the original
+ Swedish text. In HTML format.
+
+Package: libpam-cracklib
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 100
+Maintainer: Sam Hartman <hartmans@debian.org>
+Architecture: i386
+Source: pam
+Version: 0.76-22
+Replaces: libpam0g-cracklib
+Depends: cracklib2, libc6 (>= 2.3.2.ds1-4), libpam0g (>= 0.76), cracklib-runtime, wordlist
+Description: PAM module to enable cracklib support.
+ This package includes libpam_cracklib, a PAM module that tests
+ passwords to make sure they are not too weak during password change.
+
+Package: alsaplayer-gtk
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 280
+Maintainer: Ivo Timmermans <ivo@debian.org>
+Architecture: i386
+Source: alsaplayer
+Version: 0.99.76-0.2
+Replaces: alsaplayer (<< 0.99.54-0)
+Provides: alsaplayer-interface
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libglib1.2 (>= 1.2.0), libgtk1.2 (>= 1.2.10-4), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxi6 | xlibs (>> 4.1.0), xlibmesa-gl | libgl1, alsaplayer-common (= 0.99.76-0.2)
+Conflicts: alsaplayer (<< 0.99.54-0)
+Description: PCM player designed for ALSA (GTK version)
+ Alsaplayer is a PCM player designed specifically for use with ALSA, but
+ works great with OSS or EsounD. It's heavily threaded which cuts down on
+ skipping, offers optional and even simultaneous visual scopes, plays
+ mp3, mp2, ogg, cdda, audiofs, and lots more.
+ .
+ This package provides a GTK-based interface to alsaplayer. It
+ requires at least one of the output modules.
+
+Package: libopenct0
+Status: install ok installed
+Priority: extra
+Section: libs
+Installed-Size: 188
+Maintainer: Eric Dorland <eric@debian.org>
+Architecture: i386
+Source: openct
+Version: 0.5.0-9
+Depends: libc6 (>= 2.3.2.ds1-4), libusb-0.1-4 (>= 1:0.1.8)
+Description: middleware framework for smart card terminals (libraries)
+ OpenCT is an open source implementation providing card terminal
+ drivers. It provides a native OpenCT, CT-API and PC/SC Lite IFD
+ interface with an OpenCT ifdhandler resource manager.
+ .
+ This package provides shared libraries for OpenCT.
+
+Package: libldap2-dev
+Status: install ok installed
+Priority: extra
+Section: devel
+Installed-Size: 904
+Maintainer: Torsten Landschoff <torsten@debian.org>
+Architecture: i386
+Source: openldap2
+Version: 2.1.30-3
+Replaces: libopenldap-dev
+Provides: libldap-dev
+Depends: libldap2 (= 2.1.30-3)
+Conflicts: libldap-dev, libopenldap-dev
+Description: OpenLDAP development libraries
+ This package allows development of LDAP applications using the OpenLDAP
+ libraries. It includes headers, libraries and links to allow static and
+ dynamic linking.
+
+Package: libkleopatra0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1028
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libgpg-error0 (>= 1.0), libgpgme11 (>= 0.4.5), libice6 | xlibs (>> 4.1.0), libkdenetwork2 (>= 4:3.3.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), gnupg
+Conffiles:
+ /etc/kde3/libkleopatrarc 1940abf94aaa7ee842aa2d1ed6fd7aa2
+Description: KDE GnuPG interface libraries
+ This library is used by several KDE applications to interface to the
+ GnuPG program.
+ .
+ This is the runtime package for programs that use the libkleopatra library.
+ .
+ This package is part of the official KDE pim module.
+
+Package: kernel-headers-2.4.22-1
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 29428
+Maintainer: Herbert Xu <herbert@debian.org>
+Source: kernel-image-2.4.22-i386
+Version: 2.4.22-3
+Provides: kernel-headers, kernel-headers-2.4
+Depends: coreutils | fileutils (>= 4.0)
+Description: Header files related to Linux kernel version 2.4.22
+ This package provides kernel header files for version 2.4.22, for sites
+ that want the latest kernel headers. Please read
+ /usr/share/doc/kernel-headers-2.4.22-1/debian.README.gz for details
+
+Package: libglib-perl
+Status: purge ok not-installed
+Priority: optional
+Section: perl
+Architecture: i386
+
+Package: libnspr4
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+
+Package: amarok-arts
+Status: install ok installed
+Priority: extra
+Section: sound
+Installed-Size: 356
+Maintainer: Peter Rockai (mornfall) <mornfall@danill.sk>
+Architecture: i386
+Source: amarok
+Version: 1.0.2-1
+Depends: arts (>= 1.2), amarok (= 1.0.2-1), artsbuilder (>= 4:3.3.0), kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libarts1 (>= 1.3.0), libasound2 (>> 1.0.5), libaudio2, libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libfam0c102, libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.6), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libjack0.80.0-0 (>= 0.98.1), libmad0 (>= 0.15.1b), libogg0 (>= 1.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Description: arts engine for amarok audio player
+ Arts support for amaroK, a versatile and easy to use audio player for KDE.
+ See package amarok for the actual player.
+
+Package: khangman
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 1936
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeedu
+Version: 4:3.2.3-2
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.4-1), libice6 | xlibs (>> 4.1.0), libkdeedu1 (>= 4:3.1.95-0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: kdeedu-data (>= 4:3.2.3-2)
+Suggests: khelpcenter, kdeedu-doc-html
+Description: the classical hangman game for KDE
+ KHangMan is a game based on the well known hangman game. It is aimed
+ for children aged 6 and above. It has four levels of difficulty.
+ .
+ A word is picked at random and the letters are hidden. You must guess
+ the word by trying one letter after another. Each time you guess a wrong
+ letter, a picture of a hangman is drawn. You must guess the word before
+ getting hanged! You have 9 tries.
+ .
+ This package is part of the official KDE edutainment module.
+
+Package: ppp
+Status: install ok installed
+Priority: optional
+Section: base
+Installed-Size: 892
+Maintainer: Marco d'Itri <md@linux.it>
+Architecture: i386
+Version: 2.4.2+20040428-2
+Replaces: ppp-pam, ppp-udeb
+Depends: libc6 (>= 2.3.2.ds1-4), libpam0g (>= 0.76), libpcap0.7, libssl0.9.7, libpam-modules, libpam-runtime (>= 0.76-13.1), netbase, procps, makedev (>= 2.3.1-56)
+Suggests: libatm1
+Conflicts: ppp-pam, ppp-udeb, pppdcapiplugin (<= 1:3.2pre3-4)
+Conffiles:
+ /etc/logrotate.d/ppp 8434ebaff1b3b33bb0ea0bce523adfd3
+ /etc/ppp/ip-up 7dd9e656b466ea0a7c4bd0d20072c7e2
+ /etc/ppp/ipv6-down d86d3e78e74a9d41972dc47ee937cb25
+ /etc/ppp/ip-down 593e58711703e02a4cbcb20d9eaa33dc
+ /etc/ppp/ip-up.d/0000usepeerdns 26d83ef431ceb34be4f386cd3fe855f7
+ /etc/ppp/options 05bc845e4e5e6b3645666418237ad489
+ /etc/ppp/ipv6-up 6902d09d6e957bae17e8f4cfee5b455e
+ /etc/ppp/ip-down.d/0000usepeerdns c22a97a2202807657969b55b165bbd35
+ /etc/init.d/ppp c4e6539943950de683300d4b390bd8a6
+ /etc/init.d/pppd-dns 66f683faf51d4956ddd7b3f0a8dbe259
+ /etc/bash_completion.d/pon 35df96c596eb64d6f666160da786ba9d
+ /etc/chatscripts/pap 430c327ed1a1ee7bbe6cd1757d18ee95
+ /etc/apm/event.d/ppp c894b205a1638f6fbb7bb477c8d253b6
+ /etc/pam.d/ppp cc163be3dbe4258e639238ccd5bcdea0
+Description: Point-to-Point Protocol (PPP) daemon
+ The Point-to-Point Protocol (PPP) provides a standard way to transmit
+ datagrams over a serial link, as well as a standard way for the machines
+ at either end of the link (the "peers") to negotiate various optional
+ characteristics of the link. Using PPP, a serial link can be used to
+ transmit Internet Protocol (IP) datagrams, allowing TCP/IP connections
+ between the peers.
+
+Package: xlibmesa-glu-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 1148
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: libglu-dev, libutahglx-dev, mesag-dev (<< 5.0.0-1), xlibmesa-dev (<< 4.2.1-5)
+Provides: libglu-dev
+Depends: xlibmesa-glu (= 4.3.0.dfsg.1-7), xlibmesa-gl-dev | libgl-dev, libstdc++5-dev | libstdc++-dev, libc6-dev | libc-dev
+Conflicts: libglu-dev, libutahglx-dev, mesag-dev (<< 5.0.0-1), xlibmesa-dev (<< 4.2.1-5)
+Description: Mesa OpenGL utility library development files [XFree86]
+ xlibmesa-glu-dev provides static versions of the libraries provided in
+ xlibmesa-glu, as well as header files and manual pages.
+ .
+ See the xlibmesa-glu package for further information.
+
+Package: libcdparanoia0-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 180
+Maintainer: Aaron Lehmann <aaronl@vitelus.com>
+Source: cdparanoia
+Version: 3a9.8-11
+Replaces: libcdparanoia-dev
+Depends: libc6-dev, libcdparanoia0 (= 3a9.8-11)
+Conflicts: libcdparanoia-dev
+Description: Development files needed to compile programs that use libcdparanoia.
+ An audio extraction tool for sampling CDs. Unlike similar programs such
+ as cdda2wav, cdparanoia goes to great lengths to try to extract the audio
+ information without any artifacts such as jitter.
+
+Package: colormake
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 69
+Maintainer: Roland Bauerschmidt <rb@debian.org>
+Architecture: all
+Version: 0.2-3.2
+Depends: perl, less, debconf (>= 0.5.00)
+Description: Simple wrapper around make to colorize output
+ This package contains colormake.pl which parses the output of make to
+ colorize it to make it easier read. In addition, there are two wrapper
+ scripts included, colormake and clmake, which can be invoked instead of make
+ with colorized output on-the-fly.
+ .
+ Homepage: http://bre.klaki.net/programs/colormake/
+
+Package: kdegraphics-kfile-plugins
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 760
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegraphics
+Version: 4:3.3.0-1.1
+Replaces: kdebase-kio-plugins (<< 4:3.3.0), konqueror (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libjpeg62, libopenexr2 (>= 1.2.1), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libtiff4, libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: provide meta information for graphic files
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ Provide meta information for graphic files.
+ .
+ This package is part of the official KDE graphics module.
+
+Package: debconf-utils
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 120
+Maintainer: Joey Hess <joeyh@debian.org>
+Architecture: all
+Source: debconf
+Version: 1.4.35
+Replaces: debconf (<< 0.1.0)
+Depends: debconf (>= 1.3.20)
+Conflicts: debconf (<< 0.1.0)
+Description: debconf utilities
+ This package contains some small utilities for debconf developers.
+
+Package: ire-the-flat
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 7936
+Maintainer: Alexandre Pineau <alexandre.pineau@free.fr>
+Architecture: all
+Version: 0.90.0-4
+Config-Version: 0.90.0-4
+Depends: ire (>= 0.90pre2-1)
+Description: The flat is a demo game for IRE
+ The flat is a demo game module for the role-playing-game engine IRE.
+ .
+ This package contains datafiles used by the flat.
+
+Package: libvcdinfo0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 252
+Maintainer: Nicolas Boullis <nboullis@debian.org>
+Architecture: i386
+Source: vcdimager
+Version: 0.7.20-2
+Depends: libc6 (>= 2.3.2.ds1-4), libcdio0, libiso9660-0 (>> 0.67)
+Description: library to extract information from VideoCD
+ This library can be used to extract information stored on a
+ VideoCD. One use is in media players, such as xine and vlc (where in
+ fact it is currently used). Here libvcdinfo assists in VideoCD
+ navigation, playback control and showing what is contained on a
+ VideoCD. Some standalone programs for this library are vcd-info and
+ vcdxrip (part of the VCDImager distribution).
+
+Package: xlibs
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 2604
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: all
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xbase, xlib, xpm4g, fvwm-common, qcad (<< 1.4.6-1), xbase-clients (<< 4.0), xcontrib (<< 4.0), xlib6g (<< 4.0), xlib6g-dev (<< 4.0), xsm (<< 4.0)
+Depends: libice6, libsm6, libx11-6, libxext6, libxft1, libxi6, libxmu6, libxmuu1, libxp6, libxpm4, libxrandr2, libxt6, libxtrap6, libxtst6, xlibs-data
+Conflicts: xbase, xlib, xpm4g, fvwm-common, qcad (<< 1.4.6-1), xbase-clients (<< 4.0), xcontrib (<< 4.0), xlib6g (<< 4.0), xlib6g-dev (<< 4.0), xsm (<< 4.0)
+Conffiles:
+ /etc/X11/xkb/README ee1b504558dc1f3ab1753449d624f1ea
+ /etc/X11/xkb/README.config 28c72b5f4637302f54f46a7351554c78
+ /etc/X11/xkb/README.enhancing 61ae9f50ec9ec149b139e1dedbbef9e5
+ /etc/X11/xkb/compat.dir d38fdc5e72fabcb6dc7fb21b9936d4d6
+ /etc/X11/xkb/compat/README 57c065a1af238f221a540c47c4e026f4
+ /etc/X11/xkb/compat/accessx 42b36540c33130e489dac8eb8036c421
+ /etc/X11/xkb/compat/basic 58a9a531c00e1777a158fea079eb191f
+ /etc/X11/xkb/compat/complete 14fa66b13bb1c38ddd5f2e0a2149be83
+ /etc/X11/xkb/compat/default 873cf778c4683dba5597864630a637ed
+ /etc/X11/xkb/compat/group_led 658d644cc369522ad6a048d8530f1006
+ /etc/X11/xkb/compat/iso9995 7a1e77a0a3c50c7875ce68ae70b71f85
+ /etc/X11/xkb/compat/japan 861c4b209d717fa07fa591f6ff9631ee
+ /etc/X11/xkb/compat/keypad 6a5c56d44f81a20765419773c40cccd1
+ /etc/X11/xkb/compat/leds c06d7111d9566909935af28d12e9466e
+ /etc/X11/xkb/compat/misc d1f8c80edbe42feb6a9f300ab7a80a07
+ /etc/X11/xkb/compat/mousekeys 58bbaae5079c5053ef8f733676db8de4
+ /etc/X11/xkb/compat/norepeat 36c74b22e483f61e36007a234f2d55a1
+ /etc/X11/xkb/compat/pc 27d8c3e67830fc5db376c1959706c8db
+ /etc/X11/xkb/compat/pc98 36d11665bde848ddf4d7758914a56ff4
+ /etc/X11/xkb/compat/xfree86 1ed536ce2ec2d36229e39d38f69eaed5
+ /etc/X11/xkb/compat/xtest 2a686b8affa181ad08024812653f892d
+ /etc/X11/xkb/geometry.dir 377add9d9d1fa1e4a44ef6a0afc4a82e
+ /etc/X11/xkb/geometry/README 5ebcbff28f63060ea4c6a955361d106e
+ /etc/X11/xkb/geometry/amiga 270e4807d6ebabe607a5f2530b02575b
+ /etc/X11/xkb/geometry/ataritt 44ae4eb3934307078f85b247eee37328
+ /etc/X11/xkb/geometry/chicony 3397b500429896f5669e1127b6f76f45
+ /etc/X11/xkb/geometry/dell 6b4e8833b44ea8137f9163042a79840f
+ /etc/X11/xkb/geometry/digital/lk 78ef97f351df97483ef4fc873d872ada
+ /etc/X11/xkb/geometry/digital/pc 6299332cf4399f58ce623777ca3c33c1
+ /etc/X11/xkb/geometry/digital/unix 5799263caf4fc2fce303f3821297d64f
+ /etc/X11/xkb/geometry/everex fe703de0cb63ecf14ca72743b10fc3ed
+ /etc/X11/xkb/geometry/fujitsu 331d7f579faa9943e512c0d004b264da
+ /etc/X11/xkb/geometry/hp 190f2f4b187c7805ad2d3b1bd8fac7e3
+ /etc/X11/xkb/geometry/ibm/thinkpad 5c066e737a4c1d4812bf1c02bfdf319c
+ /etc/X11/xkb/geometry/keytronic d4cc12c1fcd533f15ce2e534a05e04c3
+ /etc/X11/xkb/geometry/kinesis e34a334ea41a641c50b773e1fb1d4f02
+ /etc/X11/xkb/geometry/macintosh 87851d6a57b6f77921fc3b1fd5876b19
+ /etc/X11/xkb/geometry/microsoft d68f7f63d179a5a1cd67a4e018924c0e
+ /etc/X11/xkb/geometry/nec cfb29ac4cda5a5f6c5de5d6c48fbe289
+ /etc/X11/xkb/geometry/northgate 3faa65ea9b8c73d2d27062b10bfc3bf7
+ /etc/X11/xkb/geometry/omnibook 99647d0d78564ac821c558d2bb7da714
+ /etc/X11/xkb/geometry/pc ff6c2b3ad8c40d0bc54b4c896955f0bf
+ /etc/X11/xkb/geometry/sgi/O2 aec986365354d5062f1fead4d0868bad
+ /etc/X11/xkb/geometry/sgi/indigo 48fa4d8aaa373cedfd7ea0a3a150e250
+ /etc/X11/xkb/geometry/sgi/indy 041654916536da8920a6a3d27b2cc486
+ /etc/X11/xkb/geometry/sony 71aef4b7a3018698a16c242c30524212
+ /etc/X11/xkb/geometry/sun 2f5919a7ceb9a828e4415342465a7d06
+ /etc/X11/xkb/geometry/winbook fbcae0dfd34aa59c950059be681598f9
+ /etc/X11/xkb/keycodes.dir 7bb6f32ef306cf8d16470e99d1f45ea9
+ /etc/X11/xkb/keycodes/README 91cd15231a937d62861576bcfcc810ee
+ /etc/X11/xkb/keycodes/aliases c9828debf1fdb121e61beea2906172ee
+ /etc/X11/xkb/keycodes/amiga 42ce3a8369ad2f4bb1a64a7f94273f7c
+ /etc/X11/xkb/keycodes/ataritt 6bec9292309b29cd820653bc80adf125
+ /etc/X11/xkb/keycodes/digital/lk bc86cb82629280ffea53ca50e2f1dd6d
+ /etc/X11/xkb/keycodes/digital/pc 860384f1becb34216060b70fdff88911
+ /etc/X11/xkb/keycodes/fujitsu 88866719957644d6a8bedf3f4afb7af3
+ /etc/X11/xkb/keycodes/hp a34d7ac08aba97c702a161e89d66acd5
+ /etc/X11/xkb/keycodes/ibm aebd101684a9f12c95e144d77da45eb5
+ /etc/X11/xkb/keycodes/macintosh f76f0c04f1da882b1e4c4df168c8d4eb
+ /etc/X11/xkb/keycodes/powerpcps2 69395b3de25003af7c1e2dab1b5a804f
+ /etc/X11/xkb/keycodes/riscpc 88c8ae661b687d59f3252b8381b61f6c
+ /etc/X11/xkb/keycodes/sgi/indigo 09a2283bae63ab82d5eb64e1000e85cb
+ /etc/X11/xkb/keycodes/sgi/indy a47615d14c6cd155881998afbd6bb14e
+ /etc/X11/xkb/keycodes/sgi/iris 1864cdf6b4010f3718653399ff9405ef
+ /etc/X11/xkb/keycodes/sony c273393e9e919ac67d2ce5f6b7e29a17
+ /etc/X11/xkb/keycodes/sun f361dd1abf41ad865145b0612c576b7d
+ /etc/X11/xkb/keycodes/xfree86 15c0410c8a30b953828ae3c7ab6e9a6f
+ /etc/X11/xkb/keycodes/xfree98 09fa799d2c2cadb145bd49efffad2a18
+ /etc/X11/xkb/keymap.dir 625c3c50c15f676d395e6e7a2a86cd66
+ /etc/X11/xkb/keymap/README d1839097f95eea0f09394dce0a5e3eb5
+ /etc/X11/xkb/keymap/amiga 0d5f22688b4c492e96e344e4efd9bcf1
+ /etc/X11/xkb/keymap/ataritt d7213e59eb781e9609f521b95be776f9
+ /etc/X11/xkb/keymap/digital/us fdf616de451eacee8f27d5dbaef08f93
+ /etc/X11/xkb/keymap/macintosh 2dbc66d9c4c45452e1aab4ddc7077c48
+ /etc/X11/xkb/keymap/sgi/be 304382c13abfb13700b367cc6eb0c496
+ /etc/X11/xkb/keymap/sgi/bg 137b6aab522768b96d882422e365606b
+ /etc/X11/xkb/keymap/sgi/ca b4c84c8f323e35a90111f57f42417100
+ /etc/X11/xkb/keymap/sgi/cz 9cbd28a9a90b176448c9362dd10c6645
+ /etc/X11/xkb/keymap/sgi/cz_qwerty 8b1f364ca429791563c34f0bad0c4aa6
+ /etc/X11/xkb/keymap/sgi/de 1409f0b2c7d209df34dcfcdcc2020dec
+ /etc/X11/xkb/keymap/sgi/de_CH 7e2d95d593560810377596e6194bdfbe
+ /etc/X11/xkb/keymap/sgi/dk 66931210673ac3a647d83dcf0dbae887
+ /etc/X11/xkb/keymap/sgi/dvorak b5c00ed7e151ec97015a8c187eeac440
+ /etc/X11/xkb/keymap/sgi/en_US 1f0a66b4cf23efad3e2d4b2f8c79340f
+ /etc/X11/xkb/keymap/sgi/es 94d0f9a9cf69f2d2bf13b6c5f92491b9
+ /etc/X11/xkb/keymap/sgi/fi 6acc092752e647fda54dee7fd971c8b5
+ /etc/X11/xkb/keymap/sgi/fr 4be304803301c9c1e94d735635bc30f3
+ /etc/X11/xkb/keymap/sgi/fr_CH 4276105f39dae14c3b88ddacf51a8988
+ /etc/X11/xkb/keymap/sgi/gb 21fd848adbcc3d0625f543da0c8722fa
+ /etc/X11/xkb/keymap/sgi/hu 584022df6dc526431cbe5d91e3c62499
+ /etc/X11/xkb/keymap/sgi/it 2e67dc75a67516e80d0c27c6b4426c18
+ /etc/X11/xkb/keymap/sgi/jp bc71071f273642961a3f91f5b6a6a5b4
+ /etc/X11/xkb/keymap/sgi/no 836d36337a6893aad3d53c06de9b8a8d
+ /etc/X11/xkb/keymap/sgi/pl 0829a5c6849c7c1a90ad7688b0ad80f3
+ /etc/X11/xkb/keymap/sgi/pt 27911f8c0cd229673ee28af41d872bfa
+ /etc/X11/xkb/keymap/sgi/ru d442115f954cb6cb5dd55404d5490cb7
+ /etc/X11/xkb/keymap/sgi/se 7c593c4ebb7fb91015f88719d3c6dc8a
+ /etc/X11/xkb/keymap/sgi/sk 10673063ebbd7bfd41dd17d94b5b6df5
+ /etc/X11/xkb/keymap/sgi/sk_qwerty 02b78498c0aee54b9cfc38afbf8ba740
+ /etc/X11/xkb/keymap/sgi/th 4e25474374efe6243b21195d2fa2c721
+ /etc/X11/xkb/keymap/sgi/us d42e75e5a51999405d5e92063b8b9ba8
+ /etc/X11/xkb/keymap/sony f51a76e546a0ce49991884f61e7a85c6
+ /etc/X11/xkb/keymap/sun/de 8cae1a494e7a475d66422364feee1e9b
+ /etc/X11/xkb/keymap/sun/es 3903c5a8e21b29928a07876795d61964
+ /etc/X11/xkb/keymap/sun/fi cb537af4b1569180b0c7c1e34189280d
+ /etc/X11/xkb/keymap/sun/fr 0a1d0b08d830b12c1de740d5607e6e8d
+ /etc/X11/xkb/keymap/sun/no 5faf81e08ab7e52606e59b9210a393d7
+ /etc/X11/xkb/keymap/sun/pl 5d12a258aec3423f4b71a9116dd906c9
+ /etc/X11/xkb/keymap/sun/ru 6f62736e0c3a5bbe8f041124cfbb34fe
+ /etc/X11/xkb/keymap/sun/se b34f42c3d841d2beabe6699b5cfd91fd
+ /etc/X11/xkb/keymap/sun/uk c2d996f4846ed0af6ca75fde762248a1
+ /etc/X11/xkb/keymap/sun/us fda4b107bd8e25409373f017b2923ed2
+ /etc/X11/xkb/keymap/xfree86 91fe5b829681cf7605cc837311ec8a7e
+ /etc/X11/xkb/keymap/xfree98 90cdf68a2cc803ea0d5b33d07390cfac
+ /etc/X11/xkb/rules/README ea2d24f0ab8e9d70c6a9231dee91d31f
+ /etc/X11/xkb/rules/sgi e1a438e9255ea1a15fc700a3c165a5c1
+ /etc/X11/xkb/rules/sgi.lst 885611678efc52e796b3558679fd989e
+ /etc/X11/xkb/rules/sun 68a699f10918ce91f2a61906e1f0ca10
+ /etc/X11/xkb/rules/sun.lst f12bff7c889d2561022f24f30266f204
+ /etc/X11/xkb/rules/xfree86 b57cd5e08cf1b10a2a1ee9c3df04d66f
+ /etc/X11/xkb/rules/xfree86-it.lst 4261329d61ba59549df77ff3734d086c
+ /etc/X11/xkb/rules/xfree86.lst 7f82f84301befc74b63630c37a2b037b
+ /etc/X11/xkb/rules/xfree86.xml d793700885746966f209225788fc6fe0
+ /etc/X11/xkb/semantics/basic e8e825c4fe9e9ccdf3fd220746e52ffa
+ /etc/X11/xkb/semantics/complete dcf8f1ce1cc960168806a8a73d2b3110
+ /etc/X11/xkb/semantics/default 007d41e47cac4115c50d49af5e285759
+ /etc/X11/xkb/semantics/xtest fa06ccd652ecb15caff6c5f430e8204a
+ /etc/X11/xkb/symbols.dir 0669c40690958d0edc4f31ab74f1d93d
+ /etc/X11/xkb/symbols/README 7563bb6c1d6e6e82012a4cf1c17efe23
+ /etc/X11/xkb/symbols/al 2ce2504897f3e75a78dca1ce88066d2a
+ /etc/X11/xkb/symbols/altwin 144b56e5f5f88c3b4761e1ed7a400f1e
+ /etc/X11/xkb/symbols/am b8e47fc7764d29e2b28c60d8f74df418
+ /etc/X11/xkb/symbols/ar 0121e7690fd67f144fa808028c6bcc7d
+ /etc/X11/xkb/symbols/az 5eec92b36c3bc3b7bb5bff0a52ba6e56
+ /etc/X11/xkb/symbols/be 1211b4edbab95a448924220db59d825f
+ /etc/X11/xkb/symbols/ben 59a6e062dca60f74814419bb1d572250
+ /etc/X11/xkb/symbols/bg b532dffa4d31b3b3e04fc9ac417ffad8
+ /etc/X11/xkb/symbols/br d68901546fe0cb998036c045c808d4e2
+ /etc/X11/xkb/symbols/bs 26b65ed124abc7c05f6d8ed9f2ae0430
+ /etc/X11/xkb/symbols/by 7f6f42709d20a4ff22ebe77f651797b0
+ /etc/X11/xkb/symbols/ca 9880992fc0d7f86460e2def4f6787b1f
+ /etc/X11/xkb/symbols/ca_enhanced 07f0ea20e3fd9e3f2a3ddaa3c2a5589d
+ /etc/X11/xkb/symbols/compose 02ae852adcbd40b71df3c230026a9d76
+ /etc/X11/xkb/symbols/ctrl 2c0715a1442fb322d0705396b2a6e1b8
+ /etc/X11/xkb/symbols/cz 7408c7cb278ebb5377dc123d34ceb828
+ /etc/X11/xkb/symbols/cz_qwerty 735cfb44152fb82b8fa3c580d1d35d0f
+ /etc/X11/xkb/symbols/czsk fa94e667f0445a680376df9905511a66
+ /etc/X11/xkb/symbols/de 7b8d3bf66ec8ac13721abde42960a93b
+ /etc/X11/xkb/symbols/de_CH 5154ed290361f4467d8f66aa9056767f
+ /etc/X11/xkb/symbols/dev e28a74e6027de11c2daabd98479207ad
+ /etc/X11/xkb/symbols/digital/lk 8742be011011deb66ac5771ed54502d3
+ /etc/X11/xkb/symbols/digital/pc d276e4a81b4a51c32e3932aab1119107
+ /etc/X11/xkb/symbols/digital/us 62324036af153c9558d11bee326b86ae
+ /etc/X11/xkb/symbols/digital/vt 7b2d987a0cacfa45cf455c6a3b37615c
+ /etc/X11/xkb/symbols/dk 0d90f6b24bb450f633f4ea4bc9884d25
+ /etc/X11/xkb/symbols/dvorak e44a4c8f17487c2b5e352c851ca7064b
+ /etc/X11/xkb/symbols/ee 32049a84cf69b4df2adbdedb39e7bc90
+ /etc/X11/xkb/symbols/el b64681544bbf73351a20adaeac1ca640
+ /etc/X11/xkb/symbols/en_US 48e692bc8458910ab227d045afa14d10
+ /etc/X11/xkb/symbols/es 822d048769fcb57201ed319a003beefe
+ /etc/X11/xkb/symbols/fi f696eca303622b734709f416545476c3
+ /etc/X11/xkb/symbols/fr a788f246ccaaa0d13500bd61e2a56aec
+ /etc/X11/xkb/symbols/fr_CH 22713cc4e5de127ba3bd11e29f494faa
+ /etc/X11/xkb/symbols/fujitsu/jp f0f947b6fc9157b7a73caa3027f6030c
+ /etc/X11/xkb/symbols/fujitsu/us f4b0c717c2ff58ead02536b410724ff6
+ /etc/X11/xkb/symbols/gb a1296a5977966a9ecea1115184a41580
+ /etc/X11/xkb/symbols/ge_la 22cd38dd79a7111ad427b0771bfe7c9c
+ /etc/X11/xkb/symbols/ge_ru 4044e99929fe78234e597692f1821a5d
+ /etc/X11/xkb/symbols/group 37a5e33a404fe983184748122b0e1f4e
+ /etc/X11/xkb/symbols/guj 94352145a98fad694cf4d0d5cb7786fe
+ /etc/X11/xkb/symbols/gur 46d48a4e7400c3bd93d1b91e2bc3da48
+ /etc/X11/xkb/symbols/hp/us c8101d44f1c34f4b4da4ec338b591796
+ /etc/X11/xkb/symbols/hr 333b66e570515da5e0cf89945dfb165e
+ /etc/X11/xkb/symbols/hr_US f497fe584a447908c97d35c637252f14
+ /etc/X11/xkb/symbols/hu 6ccd07c310178e1530ddfa29bc65cacc
+ /etc/X11/xkb/symbols/hu_US 8b7f803a9a07080852d74837c268a5fd
+ /etc/X11/xkb/symbols/hu_qwerty c4d0c6cefb000f74ef0bd84db91f2c84
+ /etc/X11/xkb/symbols/ie 78e7137c54cfb803170c4cd0d86bad4d
+ /etc/X11/xkb/symbols/il d172f409ed2c6557681a2dba9cdf2aee
+ /etc/X11/xkb/symbols/il_phonetic 14a67fdbf2f449c2f160831c9391876b
+ /etc/X11/xkb/symbols/inet 713b5496c1611631785e596256a79aad
+ /etc/X11/xkb/symbols/ir 85763cf383ef28b046d2d0ab4d4d0ab0
+ /etc/X11/xkb/symbols/is c120fde6df4a1e9ec46bcd5caeb4c10c
+ /etc/X11/xkb/symbols/iso9995-3 d08fa989ec73d56822c02ca47706e433
+ /etc/X11/xkb/symbols/it 1be49fe985b2e84944e6ec635b3fce1c
+ /etc/X11/xkb/symbols/iu d7b2feeef22fe962e4361085873d8fde
+ /etc/X11/xkb/symbols/jp 3f409c8de6584a8e20b119a508aab59d
+ /etc/X11/xkb/symbols/kan 82745bf41d91b1642ca7c64b9e97a730
+ /etc/X11/xkb/symbols/keypad c467e4f6f5a53f6a50815e5717195c69
+ /etc/X11/xkb/symbols/la 7a9bd906bfb2ae5b11a3921fd60c23a3
+ /etc/X11/xkb/symbols/level3 c0ddc2b150784cba47a42a94a2f76f53
+ /etc/X11/xkb/symbols/lo b4e14dc529020b0b785b7baee00153c7
+ /etc/X11/xkb/symbols/lock 14e4c2bd2dab8af9d91b69a820057e3c
+ /etc/X11/xkb/symbols/lt c27b81af21a6e0a2b2c278801e07b6fd
+ /etc/X11/xkb/symbols/lt_std 64e8706d7f439442e0ba5adcf115fb6d
+ /etc/X11/xkb/symbols/lv 970a63fd1356a0db5b13f1e56515b53d
+ /etc/X11/xkb/symbols/macintosh/de d7bd4a7d71123951765f0cca6da6e13a
+ /etc/X11/xkb/symbols/macintosh/de_CH 9671a54fd7fd99eb9d9c3b97f0191ec0
+ /etc/X11/xkb/symbols/macintosh/dk 26e6f36a7485761b7d720e8db7249bb2
+ /etc/X11/xkb/symbols/macintosh/es b6888e1e78bbe344ce92dcbef5f926f7
+ /etc/X11/xkb/symbols/macintosh/fi d005bd48c12189ab8acc7cddf23cce1d
+ /etc/X11/xkb/symbols/macintosh/fr f8bf2ce2451433298398eb335d45a984
+ /etc/X11/xkb/symbols/macintosh/fr_CH 8a4dc4ed28bb68dbf4584c007d5f5994
+ /etc/X11/xkb/symbols/macintosh/gb e59f63463b917bdde5588dfee824cab4
+ /etc/X11/xkb/symbols/macintosh/it f7447376d47c03eaa71720ef8563429a
+ /etc/X11/xkb/symbols/macintosh/nl bfa8740475f16fbc71dd1e7eceff7a7e
+ /etc/X11/xkb/symbols/macintosh/no aa61b8ed178c1d110017d896c52fcd0f
+ /etc/X11/xkb/symbols/macintosh/pt 88616205a54286d0c86196556acdbc6c
+ /etc/X11/xkb/symbols/macintosh/se 9b08ff141e5afbf1938dccfdae982514
+ /etc/X11/xkb/symbols/macintosh/us 6406a4294577f3f79514ac1b8837cef4
+ /etc/X11/xkb/symbols/mk ecaef424dd6ca9af0f58bc1165d18a30
+ /etc/X11/xkb/symbols/ml 8a1d6d0f624d1c58236fb54cb27d3a57
+ /etc/X11/xkb/symbols/mm 4bde063552f7d999c032e9e2138ae426
+ /etc/X11/xkb/symbols/mt ae5504a3b1872b426242b75eb93e494b
+ /etc/X11/xkb/symbols/mt_us af9d2510a05d9d968c283d9ea6ba9f86
+ /etc/X11/xkb/symbols/nec/jp b402ec8e1b391bcc4e9794ffdab3f70d
+ /etc/X11/xkb/symbols/nl c9fa2f46184f62279217d2150798fc35
+ /etc/X11/xkb/symbols/no 5c53ac95897d4a2afdfc658efad71aed
+ /etc/X11/xkb/symbols/ogham 82cc958076bf18ab1d4b7c206b99df87
+ /etc/X11/xkb/symbols/ori bfed411698bba978757e8ce28be52964
+ /etc/X11/xkb/symbols/pc/al 3cf226c905a5128ac32d322362c007a9
+ /etc/X11/xkb/symbols/pc/am bd70cb7bf6f89a4d6d3ab1deb7b17705
+ /etc/X11/xkb/symbols/pc/ar 66a1f5c27bd4560c19d937364749d54b
+ /etc/X11/xkb/symbols/pc/be da754d2be68215fa14d7a48a04a88770
+ /etc/X11/xkb/symbols/pc/ben fa57ff3381c068f1c3b205e39b53c0ba
+ /etc/X11/xkb/symbols/pc/bg 70a2d8c2ce61d46e621d09a016c4b2c5
+ /etc/X11/xkb/symbols/pc/br d564a86aaf1e9b4f1a85a25b51b1ecb1
+ /etc/X11/xkb/symbols/pc/by 74ae4d058471307f4dd3caac104ba8ff
+ /etc/X11/xkb/symbols/pc/cz d83f6ab7a2757bf4b8d1d2286bdd2e0a
+ /etc/X11/xkb/symbols/pc/cz_qwerty 3bedb3ec2fe649e11c6def94e9974d47
+ /etc/X11/xkb/symbols/pc/de b30b7d73c59c8c9c9532a41ae799c9e1
+ /etc/X11/xkb/symbols/pc/dev 54a79c41c08624fe2c4c3b42049717ff
+ /etc/X11/xkb/symbols/pc/dk b16d782b5d8c8c3acdd8ae02a4988c36
+ /etc/X11/xkb/symbols/pc/dvorak d03f4dcaf05edac480d84e018613afb5
+ /etc/X11/xkb/symbols/pc/ee c26aa525541f9411d8b958521e2cfacd
+ /etc/X11/xkb/symbols/pc/el 4182c5edcc5c105f09f1af422132d7e2
+ /etc/X11/xkb/symbols/pc/en_US 8e046f78e30a08327ca10c8806debcd5
+ /etc/X11/xkb/symbols/pc/es 0bb3d064be2db9d4180602b065ba1ee2
+ /etc/X11/xkb/symbols/pc/fi 48bfe2381053646a5eec0a2e215c2998
+ /etc/X11/xkb/symbols/pc/fr ac9230a9ab747233e35db6e293755c9e
+ /etc/X11/xkb/symbols/pc/fr-latin9 7ac3e3dac708d12878960db385e8665c
+ /etc/X11/xkb/symbols/pc/gb 2542cf49454bc8c3a7122ebfcd233e74
+ /etc/X11/xkb/symbols/pc/ge_la 2da4b776c9951f88a17fa129dfa6ce8b
+ /etc/X11/xkb/symbols/pc/ge_ru eb00f107a06847bec0c9c13d893f5cd9
+ /etc/X11/xkb/symbols/pc/guj 82e00a217e399a506881cd9c2d495dfa
+ /etc/X11/xkb/symbols/pc/gur f58c9a84ca4ef34cc80251d7991bd5c7
+ /etc/X11/xkb/symbols/pc/hr 09a8a3cbfe788facd43d0958b6449aa8
+ /etc/X11/xkb/symbols/pc/ie 65cdf0968193998878b9924c11ce91db
+ /etc/X11/xkb/symbols/pc/il d5a0d61e5dee10dc65c960c28c5e0939
+ /etc/X11/xkb/symbols/pc/il_phonetic 7282794ef9fc17b0d34b62d211fc78f8
+ /etc/X11/xkb/symbols/pc/ir f56f81a3f61c0bbc326b40f3faf53b9c
+ /etc/X11/xkb/symbols/pc/is 395cee59ef70c50bf78125977b398c0c
+ /etc/X11/xkb/symbols/pc/it f2f31c48b35cf975b75a1157d0b523c4
+ /etc/X11/xkb/symbols/pc/iu a0b8dc3e40891d0f4339474fe6c2bd81
+ /etc/X11/xkb/symbols/pc/kan 8e5fb4ef9cf8656c4f40d3d2258ebdd8
+ /etc/X11/xkb/symbols/pc/la 6d990998f64ca117f7974064083ff78d
+ /etc/X11/xkb/symbols/pc/latin dc563ba2fe6ccc414cf396ac09f6adc5
+ /etc/X11/xkb/symbols/pc/lo bc1b0e8a84eb47109110c85daf8e6829
+ /etc/X11/xkb/symbols/pc/lt 0ce763c43e9ae04f5c6c1d1451c8714a
+ /etc/X11/xkb/symbols/pc/lv e2e3520e3eb26565fe7ca6d50e2c87a5
+ /etc/X11/xkb/symbols/pc/mk aa7f4573b2cd649237a7b900347648c1
+ /etc/X11/xkb/symbols/pc/ml 9e5946e735a25b906541be77f8b877a1
+ /etc/X11/xkb/symbols/pc/mm 227cea1edfa1608c23da0b37d73ddc2d
+ /etc/X11/xkb/symbols/pc/mt 52dfc33d52d68f0c596dfd15c1ee99f4
+ /etc/X11/xkb/symbols/pc/mt_us b01f00a94bea297919279e620bbb3f61
+ /etc/X11/xkb/symbols/pc/nl 29d84638e88b1d27ec89b6b3a0d5be6d
+ /etc/X11/xkb/symbols/pc/no 2b832bb64de1d485d61e20829357c438
+ /etc/X11/xkb/symbols/pc/ogham 677d0ef2be98169d5437b8acd0914884
+ /etc/X11/xkb/symbols/pc/ori d0294ee3974d96d4bd1e1257fcc65cef
+ /etc/X11/xkb/symbols/pc/pc e02aa04888703047876d56ce22ae2c54
+ /etc/X11/xkb/symbols/pc/pl 2459b938e2e53a026c02322f586b8101
+ /etc/X11/xkb/symbols/pc/pl2 40655a97afe0ddf8197c919e06154519
+ /etc/X11/xkb/symbols/pc/pt 282672b86f344fc1df38b8a819ad3f34
+ /etc/X11/xkb/symbols/pc/ro 2cd81cfa3544017592d0507e9416f968
+ /etc/X11/xkb/symbols/pc/ru 528e693a6cd095164384ef84fdb17feb
+ /etc/X11/xkb/symbols/pc/sapmi 8bd0b18a551167dfa01b067de0817aed
+ /etc/X11/xkb/symbols/pc/se c8786f4c5b430c120cbd2f4097641bb8
+ /etc/X11/xkb/symbols/pc/si 4bdbf9ab54a80d537ae4758632da6471
+ /etc/X11/xkb/symbols/pc/sk ed5c4fd228dd8954b8e380513d526a02
+ /etc/X11/xkb/symbols/pc/sk_qwerty 1dc3ec318152bf50995988d990df2f0e
+ /etc/X11/xkb/symbols/pc/sr 3428e855b63551ef7b146ad69d99146f
+ /etc/X11/xkb/symbols/pc/syr 8be37e32fd8008c3e89fec78dd80728c
+ /etc/X11/xkb/symbols/pc/syr_phonetic 9ca14ff45788de27e8ee1dcdcd4a2adb
+ /etc/X11/xkb/symbols/pc/tel c56cf70bd0c72e75e6bf3ada064729b0
+ /etc/X11/xkb/symbols/pc/th 69856cd8eb39a9b9dda75617ccc722ab
+ /etc/X11/xkb/symbols/pc/th_pat 85e8088036ba7e0a68e9506b0092703d
+ /etc/X11/xkb/symbols/pc/th_tis 1d0dbb0151897cc6b70055ba0ac62b6c
+ /etc/X11/xkb/symbols/pc/tj f48137f88f1ad82014bd4aa578a2b23b
+ /etc/X11/xkb/symbols/pc/tml efd20654a357fbed053eeaf15cdc05cd
+ /etc/X11/xkb/symbols/pc/tr fad32fb06ed46d27ba41d2efd8ed462f
+ /etc/X11/xkb/symbols/pc/ua e7b5a0f8b82e56696efa2b6a3c2bba94
+ /etc/X11/xkb/symbols/pc/us 8a4c86fe94e10718f83d38d413865003
+ /etc/X11/xkb/symbols/pc/yu 27d9dbe51df4fb50cfe6e5b2e3fc756f
+ /etc/X11/xkb/symbols/pc104 3800839b2513908875e91759306c1581
+ /etc/X11/xkb/symbols/pl e9da25b27e27983a7dd4ae1b12ac7e2b
+ /etc/X11/xkb/symbols/pl2 1c0a6c952db2866c7eaf55032b3d56dd
+ /etc/X11/xkb/symbols/pt d58ce1aee7f458db71a091046db17c0b
+ /etc/X11/xkb/symbols/ralt 9d4fc98c0efc862b820f704666d5eaad
+ /etc/X11/xkb/symbols/ro 86b5100e53d96056a6229c184743287d
+ /etc/X11/xkb/symbols/ru 0c23df0532af82578ec5ccceda6d4ab9
+ /etc/X11/xkb/symbols/ru_yawerty b554dadb4877cfeb2cb38dd2531b3eb2
+ /etc/X11/xkb/symbols/sapmi 4f33283cfbf63ad1c17b166e9eb71f54
+ /etc/X11/xkb/symbols/se 521386b662290a16212d43183a5d9584
+ /etc/X11/xkb/symbols/se_FI ac021baf0ead532ec653ecc8ed4d3762
+ /etc/X11/xkb/symbols/se_NO 3ff3bbfbca382a80ace2409194c01c8e
+ /etc/X11/xkb/symbols/se_SE 4794a4cd660c5015c646222ab11c1f97
+ /etc/X11/xkb/symbols/sgi/jp a0fb045b73aa4db9867f6f08faca45bd
+ /etc/X11/xkb/symbols/si 5fa6f3f00704bbfa061b856923f03bba
+ /etc/X11/xkb/symbols/sk 596e0ec93fdc50eedc0b405fb3285868
+ /etc/X11/xkb/symbols/sk_qwerty 74619a234162a240a899b6be8225ddb2
+ /etc/X11/xkb/symbols/sony/us a2d9292e0829154d04151dba2839f7af
+ /etc/X11/xkb/symbols/sr 4496ee33e321a34b8f1ad8e38d89f4d4
+ /etc/X11/xkb/symbols/srvr_ctrl 203ef52eca4f1f13af25a502f13d3834
+ /etc/X11/xkb/symbols/sun/se 54d53189f4cc2045b654c2b3616312d3
+ /etc/X11/xkb/symbols/sun/us ad38daea87299c866f2728ceff4ad744
+ /etc/X11/xkb/symbols/syr 825f602652991ea0b96bde9e67998430
+ /etc/X11/xkb/symbols/syr_phonetic 1a17956f9f7406f338853a51377b490f
+ /etc/X11/xkb/symbols/tel abcab56836e4cd987486d08c09a05fc3
+ /etc/X11/xkb/symbols/th 374d46b5061c8874605314f8e7597803
+ /etc/X11/xkb/symbols/th_pat a1c6d5f7449d5215b28d8364319533a5
+ /etc/X11/xkb/symbols/th_tis cbc1ec50599598ed44e2be6aa95d14a0
+ /etc/X11/xkb/symbols/tj 57d834707dc00a1bbea8816cfa78fb5a
+ /etc/X11/xkb/symbols/tml 80320e7946ab48cb5338dd4090bd8adc
+ /etc/X11/xkb/symbols/tr d17601cb8354fbbcf5299978c993f265
+ /etc/X11/xkb/symbols/tr_f 997eecf54e16f595f52567d7522c9a94
+ /etc/X11/xkb/symbols/ua af40ef6c0cdb649c84cac2598f7084c2
+ /etc/X11/xkb/symbols/us 8b131930190f2de45d7335346d82d11b
+ /etc/X11/xkb/symbols/us_group2 56b5ac8e6acb8a7d59387a4b0c417e39
+ /etc/X11/xkb/symbols/us_group3 799f6e5bedb58b1baf81846bd447d727
+ /etc/X11/xkb/symbols/us_intl 42a5611dd5710646fa211165a438d154
+ /etc/X11/xkb/symbols/vn 6b7d7ab7ada6a91e76f22a02fa367e3a
+ /etc/X11/xkb/symbols/xfree68/amiga 990d34bb5dae25db1f63d976d0cff862
+ /etc/X11/xkb/symbols/xfree68/ataritt fad36723cc0fcf471add1e7769a1533f
+ /etc/X11/xkb/symbols/yu 423c269aadf562a2ff72fdec753d767b
+ /etc/X11/xkb/types.dir d85b2500a54cea7d70b5d4058e60fd51
+ /etc/X11/xkb/types/README 27675275ee6cca05a752744d50049b4b
+ /etc/X11/xkb/types/basic 2c3141bb0b627686e293a4e5bcfa82d6
+ /etc/X11/xkb/types/caps 385ae54d6b97e8eea8208d38b89a175d
+ /etc/X11/xkb/types/complete e35303c74b55a6d57ceb6612e27fce30
+ /etc/X11/xkb/types/default d1ff66cb6dc40ae81cd4c4b43b46b0c5
+ /etc/X11/xkb/types/extra d42a393c91ba238e21b7d9a6905c01bc
+ /etc/X11/xkb/types/iso9995 61180e4dee8a87216cb379e13cf86f26
+ /etc/X11/xkb/types/mousekeys 723ae020cdc746c423f9d100ff52fb53
+ /etc/X11/xkb/types/pc 48fda419c3bc5cbb709b568c3c960ae8
+Description: X Window System client libraries metapackage and XKB data
+ This package smooths upgrades from Debian 3.0 by depending on the individual
+ library packages into which each shared object formerly contained in this
+ package has been split.
+ .
+ This package is only depended upon by packages that haven't yet been compiled
+ against the new shared library packages.
+ .
+ This package also contains configuration data used by the X Keyboard
+ Extension (XKB). Other architecture-independent data used by X libraries can
+ be found in the xlibs-data package.
+
+Package: initrd-tools
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 96
+Maintainer: Debian kernel team <debian-kernel@lists.debian.org>
+Architecture: all
+Version: 0.1.74
+Depends: coreutils | fileutils (>= 4.1.9) | stat (>= 3.0), cpio, cramfsprogs (>= 1.1-4), dash, util-linux (>= 2.11b-3)
+Conffiles:
+ /etc/mkinitrd/mkinitrd.conf 4c9197d76ec8377d713f39131c436612
+ /etc/mkinitrd/modules 4a9655b9c9dec2df25d862ac64925442
+ /etc/default/initrd-tools.sh a4f3c50017372de74de7ac4f46c1870e
+ /etc/init.d/initrd-tools.sh b9e21231bc547f06ee0d7e3aa4ddc68e
+Description: tools to create initrd image for prepackaged Linux kernel
+ This package contains tools needed to generate an initrd image suitable for
+ booting a prepackaged Linux kernel image (as shipped with the Debian main
+ distribution). It does not cater for other uses of initrd at the moment.
+
+Package: fuse-module-2.6.4-1-686
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 60
+Maintainer: Roland Bauerschmidt <rb@debian.org>
+Architecture: i386
+Source: fuse (1.1-0.3)
+Version: 1.1-0.3k1
+Provides: fuse-module
+Depends: kernel-image-2.6.4-1-686 (= 2.6.4-1)
+Recommends: fuse-utils
+Description: Filesystem in USErspace (kernel module)
+ Simple interface for userspace programs to export a virtual
+ filesystem to the linux kernel.
+
+Package: parted
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 156
+Maintainer: Parted Maintainer Team <parted-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Version: 1.6.11-3
+Replaces: fsresize, parted1.6
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), libparted1.6-0 (>= 1.6.0), libreadline4 (>= 4.3-1)
+Suggests: parted-doc
+Conflicts: fsresize, parted1.6
+Description: The GNU Parted disk partition resizing program
+ GNU Parted is a program that allows you to create, destroy,
+ resize, move and copy hard disk partitions. This is useful
+ for creating space for new operating systems, reorganising
+ disk usage, and copying data to new hard disks. This package
+ contains the Parted binary and manual page.
+ .
+ Parted currently supports DOS, Mac, Sun, BSD, GPT, MIPS and
+ PC98 disklabels/partition tables, as well as a 'loop' (raw
+ disk) type which allows use on RAID/LVM. Filesystems which
+ are currently fully supported are ext2, ext3, fat (FAT16
+ and FAT32) ReiserFS (with libreiserfs) and linux-swap.
+ Parted can also detect and remove HFS (Mac OS), JFS, NTFS,
+ UFS (Sun and HP) and XFS filesystems, but cannot create,
+ resize or check these filesystems yet.
+ .
+ Note that ReiserFS support is only enabled if you install
+ the libreiserfs0.3-0 package.
+ .
+ The nature of this software means that any bugs could cause
+ massive data loss. While there are no known bugs at the moment,
+ they could exist, so please back up all important files before
+ running it, and do so at your own risk.
+
+Package: glibc-doc
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 8888
+Maintainer: GNU Libc Maintainers <debian-glibc@lists.debian.org>
+Architecture: all
+Source: glibc
+Version: 2.3.2.ds1-16
+Replaces: libc-doc, libc6-doc, glibcdoc
+Provides: libc-doc
+Conflicts: libc-doc, libc6-doc, glibcdoc
+Description: GNU C Library: Documentation
+ Contains The GNU C Library Reference manual in info and html format as
+ well as man pages for libpthread functions. Also included is the complete
+ GNU C Library ChangeLog.
+
+Package: libvorbisenc2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 936
+Maintainer: Christopher L Cheney <ccheney@debian.org>
+Source: libvorbis
+Version: 1.0.1-1
+Replaces: libvorbis0 (<< 1.0.0)
+Depends: libc6 (>= 2.3.2.ds1-4), libogg0 (>= 1.1.0), libvorbis0a (>= 1.0.1)
+Conflicts: libvorbis0 (<< 1.0.0)
+Description: The Vorbis General Audio Compression Codec
+ Ogg Vorbis is a fully open, non-proprietary, patent-and-royalty-free,
+ general-purpose compressed audio format for audio and music at fixed
+ and variable bitrates from 16 to 128 kbps/channel.
+ .
+ The Vorbisenc library provides a convenient API for setting up an encoding
+ environment using libvorbis.
+
+Package: installwatch
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 92
+Maintainer: Greg Norris <adric@debian.org>
+Version: 0.6.3-1
+Depends: libc6 (>= 2.2.4-4)
+Description: Track installation of local software
+ Installwatch is used to track the changes made during the installation of
+ local (i.e. non-deb) software.
+
+Package: kshisen
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 448
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: Shisen-Sho for KDE
+ KShisen-Sho is a single-player-game similar to Mahjongg and uses the
+ same set of tiles as Mahjongg.
+ .
+ The object of the game is to remove all tiles from the field.
+
+Package: logrotate
+Status: install ok installed
+Priority: important
+Section: admin
+Installed-Size: 152
+Maintainer: Paul Martin <pm@debian.org>
+Architecture: i386
+Version: 3.7-2
+Depends: libc6 (>= 2.3.2.ds1-4), libpopt0 (>= 1.7), cron (>= 3.0pl1-53) | anacron, base-passwd (>= 2.0.3.4)
+Recommends: mailx
+Conffiles:
+ /etc/logrotate.conf 52a69079dac7bbc0ee80876d14dbf6a8
+ /etc/cron.daily/logrotate d2281ecb6f898b446ac8a5984ab5a243
+Description: Log rotation utility
+ The logrotate utility is designed to simplify the administration of
+ log files on a system which generates a lot of log files. Logrotate
+ allows for the automatic rotation compression, removal and mailing of
+ log files. Logrotate can be set to handle a log file daily, weekly,
+ monthly or when the log file gets to a certain size. Normally, logrotate
+ runs as a daily cron job.
+
+Package: libsdl-image1.2-dev
+Status: purge ok not-installed
+Priority: optional
+Section: devel
+
+Package: libpango1.0-common
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 95
+Maintainer: Akira TAGOH <tagoh@debian.org>
+Architecture: i386
+Source: pango1.0
+Version: 1.4.1-2
+Replaces: libpango0, libpango-common (<< 1.0.0)
+Depends: debconf, defoma (>= 0.11.1), fontconfig (>= 2.1.91), libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libglib2.0-0 (>= 2.4.1), libpango1.0-0 (>= 1.4.1), libx11-6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: x-ttcidfont-conf
+Suggests: ttf-kochi-gothic, ttf-kochi-mincho, ttf-thryomanes, ttf-baekmuk, ttf-arphic-gbsn00lp, ttf-arphic-bsmi00lp, ttf-arphic-gkai00mp, ttf-arphic-bkai00mp
+Conffiles:
+ /etc/defoma/config/pango.conf caba01a0d8c57a5b7eb501560736028a
+Description: Modules and configuration files for the Pango
+ Pango is a library for layout and rendering of text, with an emphasis
+ on internationalization. Pango can be used anywhere that text layout is
+ needed. however, most of the work on Pango-1.0 was done using the GTK+
+ widget toolkit as a test platform. Pango forms the core of text and
+ font handling for GTK+-2.0.
+ .
+ Pango is designed to be modular; the core Pango layout can be used with
+ four different font backends:
+ - Core X windowing system fonts
+ - Client-side fonts on X using the Xft library
+ - Direct rendering of scalable fonts using the FreeType library
+ - Native fonts on Microsoft backends
+ .
+ This package contains the Pango modules and the configuration files
+ which Pango needs.
+
+Package: libexpat1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 180
+Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs@lists.alioth.debian.org>
+Source: expat
+Version: 1.95.6-8
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: XML parsing C library - runtime library
+ This package contains the runtime, shared library of expat, the C
+ library for parsing XML.
+
+Package: libltdl3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 220
+Maintainer: Scott James Remnant <scott@netsplit.com>
+Architecture: i386
+Source: libtool
+Version: 1.5.6-2
+Replaces: libltdl0.1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libltdl0.1
+Description: A system independent dlopen wrapper for GNU libtool
+ This package contains the run-time libltdl library.
+ .
+ A small library that aims at hiding the various difficulties of
+ dlopening libraries from programmers. It is a system independent
+ dlopen wrapper for GNU libtool.
+ .
+ It supports the following dlopen interfaces:
+ * dlopen (Solaris, Linux and various BSD flavors)
+ * shl_load (HP-UX)
+ * LoadLibrary (Win16 and Win32)
+ * load_add_on (BeOS)
+ * GNU DLD (emulates dynamic linking for static libraries)
+ * libtool's dlpreopen
+
+Package: libpng3-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 24
+Maintainer: Josselin Mouette <joss@debian.org>
+Architecture: all
+Source: libpng3
+Version: 1.2.5.0-7
+Depends: libpng12-dev (>= 1.2.5.0-2)
+Description: PNG library - development, compatibility package
+ libpng is a library implementing an interface for reading and writing
+ PNG (Portable Network Graphics) format files.
+ .
+ This is a dummy package provided for compatibility purposes. Please
+ use libpng12-dev instead.
+
+Package: libjasper-1.701-1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 316
+Maintainer: Roland Stigge <stigge@antcom.de>
+Architecture: i386
+Source: jasper
+Version: 1.701.0-2
+Replaces: libjasper-1.700-2
+Depends: libc6 (>= 2.3.2.ds1-4), libjpeg62
+Suggests: libjasper-runtime
+Conflicts: libjasper-1.700-2
+Description: The JasPer JPEG-2000 runtime library
+ JasPer is a collection of software (i.e., a library and application programs)
+ for the coding and manipulation of images. This software can handle image
+ data in a variety of formats. One such format supported by JasPer is the
+ JPEG-2000 format defined in ISO/IEC 15444-1:2000.
+ .
+ This package contains the shared library.
+
+Package: libosp4
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 2404
+Maintainer: Neil Roeth <neil@debian.org>
+Architecture: i386
+Source: opensp
+Version: 1.5.1.0-2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Runtime library for OpenJade group's SP suite
+ This is the SP suite's shared library runtime support. This C++
+ library contains entity management functions, parsing functions, and
+ other functions useful for SGML/XML/DSSSL development.
+ .
+ This shared library is used by the opensp and openjade packages.
+
+Package: postfix
+Status: install ok installed
+Priority: extra
+Section: mail
+Installed-Size: 1908
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Version: 2.1.4-5
+Replaces: postfix-doc (<< 1.1.7-0), postfix-tls
+Provides: mail-transport-agent
+Depends: libc6 (>= 2.3.2.ds1-4), libdb4.2, libgdbm3, debconf (>= 0.5) | debconf-2.0, netbase, adduser (>= 3.48), dpkg (>= 1.8.3), debconf
+Recommends: mail-reader, resolvconf
+Suggests: procmail, postfix-mysql, postfix-pgsql, postfix-ldap, postfix-pcre
+Conflicts: mail-transport-agent, smail, libnss-db (<< 2.2-3), postfix-tls (<< 2.0-0)
+Conffiles:
+ /etc/init.d/postfix 79ac631ecb6e3cbb1d8684aa6de101fc
+ /etc/ppp/ip-up.d/postfix 0f6d12880a5f95b96037f15d658cecb0
+ /etc/ppp/ip-down.d/postfix 0758469f9f1c073a53df50d9dc43c8eb
+ /etc/postfix/postfix-script 43d47ae8924b92d8f929d0ffa363c84a
+ /etc/postfix/post-install 9c26982c75a0500578c73a796f35c0f5
+ /etc/postfix/postfix-files 4b8051f5c6101ad744f5bfbd772a29db
+ /etc/resolvconf/update-libc.d/postfix 3c921a0c2447ae3e166a62411568d048
+Description: A high-performance mail transport agent
+ Postfix is Wietse Venema's mail transport agent that started life as an
+ alternative to the widely-used Sendmail program. Postfix attempts to
+ be fast, easy to administer, and secure, while at the same time being
+ sendmail compatible enough to not upset existing users. Thus, the outside
+ has a sendmail-ish flavor, but the inside is completely different.
+ .
+ This package does not have SASL or TLS support. For SASL and TLS support,
+ install postfix-tls.
+
+Package: wine
+Status: install ok installed
+Priority: optional
+Section: otherosfs
+Installed-Size: 2364
+Maintainer: Ove Kaaven <ovek@arcticnet.no>
+Architecture: i386
+Version: 0.0.20040716-1.2
+Replaces: libwine (<< 0.0.20010216)
+Depends: debconf (>= 1.2.0), libwine (= 0.0.20040716-1.2), xbase-clients (>= 4.0) | xcontrib
+Suggests: wine-doc, wine-utils, winesetup, msttcorefonts, binfmt-support
+Conflicts: binfmt-support (<< 1.1.2)
+Description: Windows Emulator (Binary Emulator)
+ This is an ALPHA release of Wine, the MS-Windows emulator. This is
+ still a developers release and many applications may still not work.
+ .
+ This package consists of the emulator program for running windows executables.
+ .
+ Wine is often updated.
+
+Package: smbfs
+Status: install ok installed
+Priority: optional
+Section: otherosfs
+Installed-Size: 720
+Maintainer: Eloy A. Paris <peloy@debian.org>
+Architecture: i386
+Source: samba
+Version: 3.0.7-1
+Replaces: smbfsx
+Depends: netbase (>= 2.02), samba-common (= 3.0.7-1), libc6 (>= 2.3.2.ds1-4), libcomerr2 (>= 1.33-3), libkrb53 (>= 1.3.2), libldap2 (>= 2.1.17-1)
+Suggests: smbclient
+Conflicts: smbfsx, suidmanager (<< 0.50)
+Description: mount and umount commands for the smbfs (for kernels >= than 2.2.x)
+ Smbfs is a filesystem which understands the SMB protocol.
+ This is the protocol Windows for Workgroups, Windows NT or
+ LAN Manager use to talk to each other. It was inspired by
+ samba, the program by Andrew Tridgell that turns any unix
+ site into a file server for DOS or Windows clients.
+ .
+ If you want to use command-line utilities like smbclient, smbtar
+ and/or smbspool you just need to install the smbclient package.
+ .
+ Starting with the Debian Samba packages version 2.2.0-1, the old smbfs
+ utilities for 2.0.x have been removed. There are no wrapper scripts
+ that call a specific smbmount/smbumount depending on the kernel
+ version. If you are using a 2.0.x kernel please upgrade or use the
+ latest Samba 2.0.7 Debian package.
+
+Package: python2.3-qt3
+Status: install ok installed
+Priority: optional
+Section: python
+Installed-Size: 10597
+Maintainer: Ricardo Javier Cardenes Medina <rcardenes@debian.org>
+Architecture: i386
+Source: python-qt3
+Version: 3.12-3
+Replaces: python2.3-qt3c102
+Depends: libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), xlibmesa-gl | libgl1, xlibmesa-glu | libglu1, zlib1g (>= 1:1.2.1), python2.3, python2.3-sip4-qt3 (>= 4.0.1), python2.3-sip4-qt3 (<< 4.1)
+Suggests: python2.3-qt3-gl, python-qt3-doc, libqt3c102-mt-mysql | libqt3c102-mt-odbc | libqt3c102-mt-psql
+Conflicts: python2.3-qt2, python2.3-qt2-mt, python2.3-qt3c102
+Description: Qt3 bindings for Python 2.3
+ Python binding module that allows use of Qt X Window toolkit v3.
+ You can use it to create portable graphics-capable scripts (there
+ are PyQt versions for Linux, Windows and MacOS X).
+ .
+ At this moment PyQt offers a vast subset of Qt API. There are
+ some minor issues related to the differences between C++ and Python
+ (types, etc), but usually you'll be able to write code pretty the
+ same way in both languages (with syntax differences, of course)
+ .
+ Module for Python 2.3.
+
+Package: lvm-common
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 81
+Maintainer: Patrick Caulfield <patrick@debian.org>
+Architecture: i386
+Version: 1.5.17
+Replaces: lvm
+Depends: libc6 (>= 2.3.2.ds1-4), module-init-tools | modutils (>> 2.3.11-2)
+Recommends: logrotate
+Suggests: ext2resize
+Conflicts: lvm, lvm5 (<= 0.8i-4), lvm6 (<= 0.8.final-2), lvm10 (<= 0.9-1)
+Conffiles:
+ /etc/init.d/lvm 14bb5c3fb1a23f7d6bb1f1b717ebcfc5
+ /etc/devfs/conf.d/50lvm 1ce7f0454cc3451e53ba5cdf66a7826d
+ /etc/modutils/lvm-common 512dede474f2d21748e323ab13d0756e
+ /etc/logrotate.d/lvm-common 3e9e6229dbea693db973fb0124062726
+ /etc/default/lvm-common bd68f01f732be327d1a4525bb084f099
+Description: The Logical Volume Manager for Linux (common files)
+ LVM includes all of the support for handling read/write operations on
+ physical volumes (hard disks, RAID-Systems, magneto optical, etc.,
+ multiple devices (MD), see mdadd(8) or even loop devices, see losetup(8)),
+ creating volume groups from one or more physical volumes and creating
+ one or more logical volumes in volume groups.
+ .
+ This package includes parts of the LVM packaging which do not depend on
+ the particular IO protocol version of the kernel implementation. You need
+ to install in addition one of lvm5, lvm6, or lvm10.
+
+Package: libnxcompext0
+Status: install ok installed
+Priority: extra
+Section: x11
+Installed-Size: 120
+Maintainer: Peter Rockai (mornfall) <mornfall@danill.sk>
+Architecture: i386
+Source: nx
+Version: 1.3.99.2-0
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libjpeg62, libnxcomp0, libpng12-0 (>= 1.2.5.0-4), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Description: NoMachine NX - NX compression library
+ NoMachine NX is the next-generation X compression and roundtrip suppression
+ scheme. It can operate remote X11 sessions over 56k modem dialup links or
+ anything better.
+
+Package: libmad0-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 200
+Maintainer: Kyle McMartin <kyle@debian.org>
+Architecture: i386
+Source: libmad
+Version: 0.15.1b-1
+Depends: libmad0 (= 0.15.1b-1), pkg-config
+Description: MPEG audio decoder development library
+ MAD is an MPEG audio decoder. It currently only supports the MPEG 1
+ standard, but fully implements all three audio layers (Layer I, Layer II,
+ and Layer III, the latter often colloquially known as MP3.)
+ .
+ This is the package you need to develop or compile applications that use MAD.
+
+Package: linda
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 712
+Maintainer: Steve Kowalik <stevenk@debian.org>
+Architecture: all
+Version: 0.3.6
+Provides: lintian-python
+Depends: python (>= 2.3.1), python (<< 2.4), binutils, file, dash, man-db
+Recommends: debian-policy, figlet
+Suggests: binutils-multiarch
+Conflicts: file (= 4.04)
+Description: Debian package checker, not unlike lintian
+ Linda is a Debian package checker, much like lintian, that
+ runs some rudimentary checks over source and binary packages
+ to see if they comply to Policy.
+
+Package: iproute
+Status: install ok installed
+Priority: extra
+Section: net
+Installed-Size: 808
+Maintainer: Juan Cespedes <cespedes@debian.org>
+Architecture: i386
+Version: 20010824-13.1
+Depends: libatm1, libc6 (>= 2.3.2.ds1-4)
+Conffiles:
+ /etc/iproute2/rt_dsfield 4f5a41d3f54cbe251826a6f7a3fff59d
+ /etc/iproute2/rt_protos 1db643e362a7cd195c747304d98b54e1
+ /etc/iproute2/rt_realms 8121fea974465d22b98dd60680a958ee
+ /etc/iproute2/rt_scopes 6298b8df09e9bda23ea7da49021ca457
+ /etc/iproute2/rt_tables fbe5819141bfb852f833f844d93c593f
+Description: Professional tools to control the networking in Linux kernels
+ This is `iproute', the professional set of tools to control the
+ networking behavior in kernels 2.2.x and later.
+ .
+ At least, the options CONFIG_NETLINK and CONFIG_RTNETLINK must
+ be compiled in the running kernel
+ .
+ This package is also known as iproute2 upstream and in some
+ documentation.
+
+Package: libotp0-kerberos4kth
+Status: deinstall ok config-files
+Priority: optional
+Section: net
+Installed-Size: 176
+Maintainer: Mikael Sennerholm <mikan@debian.org>
+Architecture: i386
+Source: krb4
+Version: 1.2.2-10
+Config-Version: 1.2.2-10
+Replaces: kerberos4kth1 (<< 1.1)
+Depends: libc6 (>= 2.3.2-1), libdb4.1, libroken16-kerberos4kth (>= 1.2.2-10), libssl0.9.7
+Conflicts: kerberos4kth1 (<< 1.1), kerberos4kth, arla (<< 0.35.5-2), libotp0-heimdal
+Description: Otp Libraries for Kerberos4 From KTH
+ Kerberos is a system for authenticating users and services on a network.
+ Kerberos is a trusted third-party service. That means that there is a
+ third party (the kerberos server) that is trusted by all the entities on
+ the network (users and services, usually called "principals").
+ .
+ This version is from Kungliga Tekniska Högskolan (the Royal Institute of
+ Technology in Stockholm, Sweden). It is based on the eBones version of MIT
+ Kerberos which was legally exported from the US by removing all encryption
+ hooks before export. It isn't covered by any patents and should be legal to
+ use anywhere encryption is legal at all.
+
+Package: ktron
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 324
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: Tron clone for the K Desktop Environment
+ The object of the game is to avoid running into walls, your own tail,
+ and that of your opponent.
+
+Package: libgnome2-common
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 2529
+Maintainer: Ondřej Surý <ondrej@debian.org>
+Architecture: all
+Source: libgnome
+Version: 2.6.1.1-1
+Config-Version: 2.6.1.1-1
+Replaces: libgnome2-0 (<= 1.117.0-1), nautilus (<= 1.0.6-4)
+Depends: gconf2 (>= 2.6.0-1)
+Conflicts: libgnome2-0 (<= 1.117.0-1)
+Conffiles:
+ /etc/sound/events/gnome-2.soundlist 8c793f9979686fe3cf1e9df393343453
+ /etc/sound/events/gtk-events-2.soundlist 35f5757ce57e9870d0cde5be2f2d2fce
+Description: The GNOME 2 library - common files
+ This package contains internationalization files for the base GNOME
+ library functions.
+
+Package: libxt-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 1992
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs-dev (<< 4.3.0)
+Depends: libxt6 (= 4.3.0.dfsg.1-7), x-dev, libx11-dev, libsm-dev, libice-dev, libc6-dev | libc-dev
+Conflicts: xlibs-dev (<< 4.3.0)
+Description: X Toolkit Intrinsics development files
+ Header files and a static version of the Xt library are provided by this
+ package.
+ .
+ See the libxt6 package for further information.
+
+Package: libkapture0
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 708
+Maintainer: Peter Rockai (mornfall) <mornfall@logisys.dyndns.org>
+Architecture: i386
+Source: kapture
+Version: 0.4.1
+Config-Version: 0.4.1
+Depends: kdelibs4 (>= 4:3.2.3), libapt-pkg-libc6.3-5-3.3, libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libcapture0 (>= 0.4.1), libfam0c102, libgcc1 (>= 1:3.3.4-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libtagcoll0 (>= 0.8), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: KDE APT User inteRface Extensions library
+ This is the runtime library, required to run libkapture-based programs. The
+ library itself provides a Qt/KDE based extensions to the libcapture library.
+ It includes several widgets and few convenience constructs making libcapture
+ more Qt friendly.
+ .
+ BEWARE HOWEVER, THIS IS EXPERIMENTAL SOFTWARE!
+
+Package: libopencdk-dev
+Status: purge ok not-installed
+Priority: optional
+Section: devel
+
+Package: libglut3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 48
+Maintainer: Jamie Wilkinson <jaq@debian.org>
+Architecture: all
+Source: glut
+Version: 3.7-25
+Depends: freeglut3
+Description: the OpenGL Utility Toolkit
+ GLUT (as in ``gluttony'') is a window system independent toolkit for
+ writing OpenGL programs. It implements a simple windowing API, which
+ makes life considerably easier when learning about and exploring OpenGL
+ programming.
+ .
+ GLUT is designed for constructing small to medium sized OpenGL programs,
+ however it is not a full-featured toolkit, so large applications requiring
+ sophisticated user interfaces are better off using native window system
+ toolkits like GTK or Motif.
+ .
+ This package has been replaced by ``freeglut3''.
+
+Package: docbook-to-man
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 236
+Maintainer: Luk Claes <luk.claes@ugent.be>
+Architecture: i386
+Version: 1:2.0.0-14
+Replaces: docbook-to-man-ans
+Depends: libc6 (>= 2.3.2.ds1-4), docbook, docbook-dsssl, sp | opensp
+Conflicts: docbook-to-man-ans
+Description: Converter from DocBook SGML into roff man macros
+ docbook-to-man is a batch converter that transforms UNIX-style
+ manpages from the DocBook SGML format into nroff/troff man macros.
+ This is not the original version by Fred Dalrymple, but one with the
+ modifications by David Bolen.
+
+Package: bonnie++
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 99
+Maintainer: Russell Coker <russell@coker.com.au>
+Architecture: i386
+Version: 1.03a
+Replaces: zcav, bonnie
+Provides: zcav, bonnie
+Depends: libc6 (>= 2.3.1-1), libgcc1 (>= 1:3.2.1-1), libstdc++5 (>= 1:3.2.1-1)
+Conflicts: zcav, bonnie
+Description: Hard drive bottleneck testing benchmark suite.
+ It is called Bonnie++ because it was based on the Bonnie program. This
+ program also tests performance with creating large numbers of files.
+ Now includes zcav raw-read test program. A modern hard drive will have more
+ sectors in the outer tracks because they are longer. The hard drive will
+ have a number (often more than 8) of zones where each zone has the same
+ number of sectors (due to the need for an integral number of sectors per
+ track). This program allows you to determine the levels of performance
+ provided by different zones and store them in a convenient format for gnuplot.
+
+Package: kspy
+Status: deinstall ok config-files
+Priority: optional
+Section: devel
+Installed-Size: 180
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdesdk
+Version: 4:3.2.1-1
+Config-Version: 4:3.2.1-1
+Depends: kdelibs4 (>= 4:3.2.1), libart-2.0-2 (>= 2.3.8), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), kdelibs4-dev
+Description: examines the internal state of a Qt/KDE app
+ KSpy is a tiny library which can be used to graphically display
+ the QObjects in use by a Qt/KDE app. In addition to the object tree,
+ you can also view the properties, signals and slots of any QObject.
+ .
+ Basically it provides much the same info as QObject::dumpObjectTree() and
+ QObject::dumpObjectInfo(), but in a much more convenient form. KSpy has
+ minimal overhead for the application, because the kspy library is
+ loaded dynamically using KLibLoader.
+ .
+ See /usr/share/doc/kspy/README for usage instructions.
+ .
+ This package is part of the KDE Software Development Kit.
+
+Package: libgadu-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 516
+Maintainer: Marcin Owsiany <porridge@debian.org>
+Architecture: i386
+Source: ekg
+Version: 1:1.5-2
+Depends: libgadu3 (= 1:1.5-2), libssl-dev
+Description: Gadu-Gadu protocol library - development files
+ Gadu-Gadu is an instant messaging program, very popular in
+ Poland. libgadu is a Gadu-Gadu protocol implementation
+ library.
+ .
+ This package contains the development files.
+
+Package: dict-moby-thesaurus
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 11112
+Maintainer: John Goerzen <jgoerzen@complete.org>
+Version: 1.0-5
+Suggests: dict, dictd
+Description: Largest and most comprehensive thesaurus
+ Moby Thesaurus is the largest and most comprehensive thesaurus data
+ source in English available for commercial use. This second edition
+ has been thoroughly revised adding more than 5,000 root words (to
+ total more than 30,000) with an additional _million_ synonyms and
+ related terms (to total more than 2.5 _million_ synonyms and related
+ terms).
+ .
+ This is formatted for use by the dictionary server in the dictd
+ package.
+
+Package: phpgroupware-setup
+Status: purge ok not-installed
+Priority: optional
+Section: web
+
+Package: kdemultimedia
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 16
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: all
+Version: 4:3.3.0-1
+Depends: akode (>= 4:3.3.0-1), artsbuilder (>= 4:3.3.0-1), juk (>= 4:3.3.0-1), kaboodle (>= 4:3.3.0-1), kaudiocreator (>= 4:3.3.0-1), kdemultimedia-kappfinder-data (>= 4:3.3.0-1), kdemultimedia-kfile-plugins (>= 4:3.3.0-1), kdemultimedia-kio-plugins (>= 4:3.3.0-1), kmid (>= 4:3.3.0-1), kmix (>= 4:3.3.0-1), krec (>= 4:3.3.0-1), kscd (>= 4:3.3.0-1), libarts1-audiofile (>= 4:3.3.0-1), libarts1-mpeglib (>= 4:3.3.0-1), libarts1-xine (>= 4:3.3.0-1), mpeglib (>= 4:3.3.0-1), noatun (>= 4:3.3.0-1)
+Description: KDE Multimedia metapackage
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KDE Multimedia metapackage.
+ .
+ This package is part of the official KDE multimedia module.
+
+Package: gimpprint-locales
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+
+Package: debsums
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 64
+Maintainer: Brendan O'Dea <bod@debian.org>
+Architecture: all
+Version: 2.0.11
+Depends: perl (>= 5.8.0-3), debconf (>= 0.5) | debconf-2.0
+Description: Verify installed package files against MD5 checksums.
+ debsums can verify the integrity of installed package files against
+ MD5 checksums installed by the package, or generated from a .deb
+ archive.
+
+Package: bincimap
+Status: install ok installed
+Priority: optional
+Section: mail
+Installed-Size: 1324
+Maintainer: Gerrit Pape <pape@smarden.org>
+Architecture: i386
+Version: 1.2.9final-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.4-1), libssl0.9.7, libstdc++5 (>= 1:3.3.4-1), openssl
+Recommends: bincimap-run, runit (>> 0.11.0-0), ipsvd, checkpw (>> 1.00-0)
+Conffiles:
+ /etc/bincimap/bincimap.conf a9abb8db8603501f909242b77df49e05
+Description: IMAP server for Maildir depositories
+ As an alternative to existing similar IMAP servers, Binc IMAP strives to
+ be very easy to use, but robust, stable and secure. It aims at being
+ absolutely compliant with the IMAP4rev1 protocol, and simple and modular
+ in design, making it very easy for third parties to utilize the source
+ code and enhance the product.
+ .
+ Binc IMAP supports Dan J. Bernstein's Maildir format and checkpassword
+ authentication interface.
+ .
+ See http://www.bincimap.org/ for details.
+
+Package: patch
+Status: install ok installed
+Priority: standard
+Section: utils
+Installed-Size: 188
+Maintainer: Michael Fedrowitz <michaelf@debian.org>
+Architecture: i386
+Version: 2.5.9-2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: ed
+Description: Apply a diff file to an original
+ Patch will take a patch file containing any of the four forms
+ of difference listing produced by the diff program and apply
+ those differences to an original file, producing a patched
+ version.
+
+Package: sox
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 620
+Maintainer: Guenter Geiger (Debian/GNU) <geiger@debian.org>
+Architecture: i386
+Version: 12.17.5-3
+Depends: libc6 (>= 2.3.2.ds1-4), libmad0 (>= 0.15.1b), libogg0 (>= 1.1.0), libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1)
+Description: A universal sound sample translator
+ SOX (SOund eXchange) is a generic utility for translating
+ sound files from one format to another, possibly performing
+ a sound effect at the same time. Sox is able to handle formats
+ like .ogg (vorbis), mp3, wav, aiff, voc, snd, au, gsm and several
+ more.
+ .
+ Homepage: http://sox.sourceforge.net
+
+Package: libhdf5-serial-1.6.1-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1073
+Maintainer: Josselin Mouette <joss@debian.org>
+Architecture: i386
+Source: hdf5
+Version: 1.6.1-4
+Provides: libhdf5-1.6.1-0
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1)
+Conflicts: libhdf5-1.6.1-0
+Description: Hierarchical Data Format 5 (HDF5) - runtime files - serial version
+ HDF5 is a file format and library for storing scientific data.
+ HDF5 was designed and implemented to address the deficiencies of
+ HDF4.x. It has a more powerful and flexible data model, supports
+ files larger than 2 GB, and supports parallel I/O.
+ .
+ This package contains runtime files for serial platforms.
+ .
+ URL: http://hdf.ncsa.uiuc.edu/HDF5/
+
+Package: valgrind-calltree
+Status: purge ok not-installed
+Priority: extra
+Section: devel
+Architecture: i386
+
+Package: libpango1.0-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 647
+Maintainer: Akira TAGOH <tagoh@debian.org>
+Architecture: i386
+Source: pango1.0
+Version: 1.4.1-2
+Depends: libpango1.0-common (>= 1.4.1-2), libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libglib2.0-0 (>= 2.4.1), libx11-6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxrender1, zlib1g (>= 1:1.2.1)
+Description: Layout and rendering of internationalized text
+ Pango is a library for layout and rendering of text, with an emphasis
+ on internationalization. Pango can be used anywhere that text layout is
+ needed. however, most of the work on Pango-1.0 was done using the GTK+
+ widget toolkit as a test platform. Pango forms the core of text and
+ font handling for GTK+-2.0.
+ .
+ Pango is designed to be modular; the core Pango layout can be used with
+ four different font backends:
+ - Core X windowing system fonts
+ - Client-side fonts on X using the Xft library
+ - Direct rendering of scalable fonts using the FreeType library
+ - Native fonts on Microsoft backends
+ .
+ This package contains the shared libraries.
+
+Package: kdemultimedia-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 1768
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdemultimedia
+Version: 4:3.3.0-1
+Replaces: artsbuilder (<< 4:3.0.0), mpeglib (<< 4:3.0.0), noatun (<< 4:3.0.0)
+Depends: kdelibs4-dev (>> 4:3.3.0), akode (= 4:3.3.0-1), artsbuilder (= 4:3.3.0-1), kdemultimedia-kio-plugins (= 4:3.3.0-1), kmid (= 4:3.3.0-1), kmix (= 4:3.3.0-1), krec (= 4:3.3.0-1), kscd (= 4:3.3.0-1), libarts1-mpeglib (= 4:3.3.0-1), libkcddb1 (= 4:3.3.0-1), mpeglib (= 4:3.3.0-1), noatun (= 4:3.3.0-1)
+Conflicts: libmpeg-dev
+Description: KDE Multimedia (development files)
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KDE Multimedia development files.
+ .
+ This package is part of the official KDE multimedia module.
+
+Package: kweather
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 1956
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdetoys
+Version: 4:3.2.3-3
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libjpeg62, libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: kicker
+Suggests: khelpcenter, kdetoys-doc-html
+Description: weather display applet for KDE
+ An applet for the KDE panel that displays your area's current weather.
+ Information shown includes the temperature, wind speed and air pressure.
+ By pressing a button a full weather report can be obtained.
+ .
+ KWeather also provides a weather service that can track multiple weather
+ stations and provide this information to other applications, including
+ Konqueror's sidebar and Kontact's summary page.
+ .
+ This package is part of the official KDE toys module.
+
+Package: secpolicy
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 68
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeadmin
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: KDE PAM security policy configuration tool
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This tool allows you to manipulate the PAM configuration files for each
+ "service" you have created to use PAM.
+ .
+ This package is part of the official KDE admin module.
+
+Package: kdesdk-misc
+Status: purge ok not-installed
+Priority: optional
+Section: devel
+Architecture: i386
+
+Package: kernel-image-2.4.22-1-686
+Status: deinstall ok config-files
+Priority: optional
+Section: base
+Installed-Size: 30396
+Maintainer: Herbert Xu <herbert@debian.org>
+Source: kernel-image-2.4.22-i386
+Version: 2.4.22-2
+Config-Version: 2.4.22-2
+Provides: kernel-image, kernel-image-2.4
+Depends: initrd-tools (>= 0.1.48), coreutils | fileutils (>= 4.0), modutils (>= 2.4.19)
+Suggests: lilo (>= 19.1), fdutils, kernel-doc-2.4.22, kernel-pcmcia-modules-2.4.22-1-686 | pcmcia-modules-2.4.22-1-686
+Description: Linux kernel image for version 2.4.22 on PPro/Celeron/PII/PIII/PIV.
+ This package contains the Linux kernel image for version 2.4.22 on
+ Pentium Pro/Celeron/Pentium II/Pentium III/Pentium IV,
+ the corresponding System.map file, and the modules built by the packager.
+ It also contains scripts that try to ensure that the system is not left in
+ a unbootable state after an update.
+ .
+ If you wish to update a bootdisk, or to use a bootloader to make
+ installing and using the image easier, we suggest you install the latest
+ fdutils (for formatting a floppy to be used as boot disk), and LILO, for a
+ powerful bootloader. Of course, both these are optional.
+ .
+ Kernel image packages are generally produced using kernel-package,
+ and it is suggested that you install that package if you wish to
+ create a custom kernel from the sources.
+
+Package: xpilot-client-common
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 1240
+Maintainer: Ben Armstrong <synrg@sanctuary.nslug.ns.ca>
+Source: xpilot
+Version: 4.5.5beta.20031222-1
+Config-Version: 4.5.5beta.20031222-1
+Replaces: xpilot-server (= 4.4.2final-1)
+Depends: libc6 (>= 2.3.2.ds1-4), xlibs (>> 4.1.0)
+Suggests: xpilot-server, xpilot-extra
+Conflicts: xpilot-client, xpilot (<< 4.1.0-4.U.4alpha2.1)
+Conffiles:
+ /etc/xpilot/sounds fef4bf4e565d554c53ef2c63b1baf498
+Description: Common files for XPilot clients
+ XPilot is a multi-player tactical manoeuvring game for X. Each
+ player controls their own fighter equipped with a variety of weapons
+ and power-ups. Players compete as teams or as individuals; the
+ object of the game is to score points by blasting the opposition,
+ stealing their treasure or by racing round a circuit.
+ WARNING: This game is very addictive.
+ .
+ This package contains the common files for the client, including
+ documentation and texture images for texturedObjects mode.
+
+Package: cupsys-pstoraster
+Status: purge ok not-installed
+Priority: optional
+Section: net
+
+Package: python2.3-gtk2
+Status: install ok installed
+Priority: optional
+Section: python
+Installed-Size: 1312
+Maintainer: Sebastien Bacher <seb128@debian.org>
+Architecture: i386
+Source: python-gtk2
+Version: 2.2.0-3
+Replaces: python-gtk-1.2
+Depends: libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.4.1), libgtk2.0-0 (>= 2.4.4), libpango1.0-0 (>= 1.4.0), python2.3, python2.3-numeric
+Conflicts: python-gdk-imlib, python-glade, python-gnome, python-gtk
+Description: Python bindings for the GTK+ widget set
+ This archive contains modules that allow you to use GTK+ in Python
+ programs. This package contains the bindings for the new version 2.0
+ of that toolkit.
+ .
+ Author: James Henstridge <james@daa.com.au>
+ Homepage: http://www.pygtk.org/
+
+Package: libgnorba27
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 100
+Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Source: gnome-libs
+Version: 1.4.2-19
+Config-Version: 1.4.2-19
+Depends: gnome-libs-data (= 1.4.2-19), libc6 (>= 2.3.2.ds1-4), libglib1.2 (>= 1.2.0), libgnome32 (>= 1.2.13-5), libgnomeui32 (>= 1.4.2-3), libgtk1.2 (>= 1.2.10-4), liborbit0 (>= 0.5.17), libpopt0 (>= 1.7), libx11-6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Description: GNOME CORBA services
+ GNOME is a project to build a complete, user-friendly desktop based
+ entirely on free software.
+ .
+ This package contains the shared library for GNOME's CORBA support.
+
+Package: libxft-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 220
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xft
+Version: 2.1.2-6
+Provides: libxft2-dev
+Depends: libxft2 (= 2.1.2-6), libc6-dev | libc-dev, libfontconfig1-dev, libfreetype6-dev, x-dev, libx11-dev, libxrender-dev, zlib1g-dev | libz-dev
+Conflicts: libxft2-dev, xlibs-dev (<< 4.3.0)
+Description: FreeType-based font drawing library for X (development files)
+ Xft provides a client-side font API for X applications, making the FreeType
+ font rasterizer available to X clients. Fontconfig is used for font
+ specification resolution. Where available, the RENDER extension handles
+ glyph drawing; otherwise, the core X protocol is used.
+ .
+ This package provides a static library and C header files.
+
+Package: docbook-dsssl
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 3180
+Maintainer: Adam Di Carlo <aph@debian.org>
+Architecture: all
+Version: 1.78-4
+Replaces: docbook-stylesheets
+Depends: jade | openjade, docbook (>= 3.1), sgml-data, perl, sgml-base (>= 1.17), debconf (>= 0.5)
+Suggests: jadetex, docbook-dsssl-doc, apache | httpd
+Conflicts: docbook-stylesheets
+Description: modular DocBook DSSSL stylesheets, for print and HTML
+ This package provides DSSSL stylesheets which let you convert DocBook
+ SGML or XML files to various formats.
+ .
+ This package contains two DocBook DSSSL stylesheets, one for "print"
+ output and one for HTML. The print stylesheet can be used in
+ conjunction with the RTF and the TeX back-ends that (Open)Jade
+ provides to produce output suitable for printing. The HTML
+ stylesheet can be used to convert DocBook documents into HTML.
+ .
+ The stylesheets are modular in design so that you can extend and
+ customize them.
+ .
+ Note that you can also perform DocBook XML styling using the
+ "docbook-xsl" package, which provides the XSL stylesheets. The XSL
+ stylesheets are more actively maintained and contain more new
+ features than these DSSSL stylesheets.
+ .
+ Homepage: http://docbook.sourceforge.net/
+
+Package: ksmserver
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 248
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0)
+Provides: x-session-manager
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: KDE Session Manager
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ The KDE Session Manager. It is responsible for restoring your KDE
+ session on login.
+ .
+ This package is part of the official KDE base module.
+
+Package: python2.3-configlet
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+Architecture: all
+
+Package: kfilter
+Status: purge ok not-installed
+Priority: optional
+Section: unknown
+
+Package: intltool-debian
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 120
+Maintainer: Denis Barbier <barbier@debian.org>
+Architecture: all
+Version: 0.30+20040213
+Depends: perl, gettext
+Description: Help i18n of RFC822 compliant config files
+ Intltool is a bunch of scripts written by the GNOME project to
+ internationalize many different file formats. This package is
+ a slightly modified version which adds support for RFC822
+ compliant config files, e.g. Debconf templates files.
+
+Package: usbutils
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 228
+Maintainer: Aurelien Jarno <aurel32@debian.org>
+Architecture: i386
+Version: 0.11+cvs20040318-3
+Depends: libc6 (>= 2.3.2.ds1-4), libusb-0.1-4 (>= 1:0.1.8)
+Description: USB console utilities
+ This applications show what the device tree of the USB bus looks
+ like. It shows a graphical representation of the devices that are
+ currently plugged in, showing the topology of the USB bus. It also
+ displays information on each individual device on
+ the bus.
+ .
+ More information can be found at the Linux USB web site
+ http://www.linux-usb.org/ .
+
+Package: libruby1.6
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 1756
+Maintainer: akira yamada <akira@debian.org>
+Source: ruby1.6
+Version: 1.6.8-8
+Config-Version: 1.6.8-8
+Replaces: libruby (<< 1.6.8-6), libmd5-ruby, libshell-ruby, liburi-ruby, libnkf-ruby (<< 1.6.7-4)
+Provides: libnkf-ruby
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libruby (<< 1.6.8-6), libmd5-ruby, libshell-ruby, liburi-ruby, libnkf-ruby (<< 1.6.7-4)
+Description: Libraries necessary to run Ruby 1.6.x
+ This package includes libruby, which is necessary to run Ruby.
+
+Package: libmime-perl
+Status: install ok installed
+Priority: optional
+Section: mail
+Installed-Size: 1060
+Maintainer: Stephen Zander <gibreel@debian.org>
+Source: mime-tools
+Version: 5.411-3
+Depends: perl (>= 5.6.0-16), libmailtools-perl (>= 1.11), libio-stringy-perl (>= 1.211)
+Description: Perl5 modules for MIME-compliant messages (MIME-tools)
+ The libmime-perl package provide the MIME-tools modules. MIME-tools is a
+ collection of Perl5 MIME:: modules for parsing, decoding, and generating
+ single- or multipart (even nested multipart) MIME messages.
+ The libmime-base64-perl package is needed to provide the lower-level
+ encoding/decoding for the higher-level routines in this package.
+
+Package: libruby1.8
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 2576
+Maintainer: akira yamada <akira@debian.org>
+Architecture: i386
+Source: ruby1.8
+Version: 1.8.1+1.8.2pre2-3
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Libraries necessary to run the Ruby 1.8
+ Ruby is the interpreted scripting language for quick and easy
+ object-oriented programming. It has many features to process text
+ files and to do system management tasks (as in perl). It is simple,
+ straight-forward, and extensible.
+ .
+ This package includes the libruby, necessary to run Ruby 1.8.
+
+Package: kappfinder
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 1064
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: KDE Application Finder
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ kappfinder searches your workstation for many common applications and
+ creates menu entries for them.
+ .
+ This package is part of the official KDE base module.
+
+Package: libxi6
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 328
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4), libxext6 | xlibs (>> 4.1.0)
+Conflicts: xlibs (<< 4.3.0)
+Description: X Window System Input extension library
+ libXi provides an X Window System client interface to the X Input Extension,
+ an extension to the X protocol.
+
+Package: dictfmt
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 180
+Maintainer: Kirk Hilliard <kirk@debian.org>
+Architecture: i386
+Source: dictd
+Version: 1.9.14-2
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1)
+Recommends: dictzip
+Description: Utility to format a file for use by the dictd server
+ dictfmt converts an input file to a dictionary database that conforms
+ to the DICT protocol, and creates a corresponding index file.
+
+Package: gtk-engines-geramik-data
+Status: purge ok not-installed
+Priority: optional
+Section: graphics
+
+Package: kernel-patch-2.6-reiser4
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 849
+Maintainer: Ed Boraas <ed@debian.org>
+Architecture: all
+Version: 20040813-6
+Depends: bash (>= 2.0), patch, grep-dctrl
+Suggests: kernel-source, kernel-package
+Description: Kernel patches for Reiser4 FS
+ Patches to build Reiser4 FS support in your kernel.
+ .
+ Supported kernel version(s): 2.6.8, 2.6.8.1.
+ .
+ WARNING: this software is to be considered usable but its deployment in
+ production environments is still not recommended. Use at your own risk.
+ .
+ Homepage: http://www.namesys.com/
+
+Package: fixincludes
+Status: purge ok not-installed
+Priority: extra
+Section: devel
+Architecture: i386
+
+Package: juk
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 944
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdemultimedia
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libarts1 (>= 1.3.0), libasound2 (>> 1.0.5), libaudio2, libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libfam0c102, libflac4, libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), libidn11, libjack0.80.0-0 (>= 0.98.1), libkdegst0.6 (>= 0.6.1), libmad0 (>= 0.15.1b), libmusicbrainz4 (>= 2.1.1), libogg0 (>= 1.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libtag1 (>= 1.2), libtunepimp2 (>= 0.3.0), libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), trm
+Suggests: khelpcenter
+Description: music organizer and player for KDE
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ JuK (pronounced "jook") is a jukebox and music manager for the KDE
+ desktop similar to jukebox software on other platforms such as
+ iTunes or RealOne.
+ .
+ Some of JuK's features include:
+ * Support for Ogg Vorbis and MP3 formats
+ * Tag editing support for both formats, including ID3v2 for MP3 files.
+ Multitagging or editing a selection of multiple files at once is also
+ supported
+ * Output to either the aRts, default KDE sound system, or GStreamer
+ * Managment of your "collection" and multiple playlists
+ * Import and export to m3u playlists
+ * Binary caching of audio meta-data and playlist information for faster
+ load times (starting with the second time you run JuK)
+ * Integration into KDE that allows drag-and-drop and clipboard usage
+ with other KDE and X apps
+ .
+ This package is part of the official KDE multimedia module.
+
+Package: libattr1
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 36
+Maintainer: Nathan Scott <nathans@debian.org>
+Architecture: i386
+Source: attr
+Version: 2.4.16-1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: attr (<< 2.0.0)
+Description: Extended attribute shared library
+ Contains the runtime environment required by programs that make use
+ of extended attributes.
+
+Package: libcurses-perl
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 456
+Maintainer: Jay Bonci <jaybonci@debian.org>
+Architecture: i386
+Version: 1.06-11
+Replaces: perl-curses
+Provides: perl-curses
+Depends: perl (>= 5.8.4-2.2), perlapi-5.8.4
+Conflicts: perl-curses
+Description: Curses interface for Perl
+ libcurses-perl (the Curses module from CPAN) will let you
+ use the ncurses/curses terminal screen manipulation
+ routines from Perl programs.
+ .
+ This package was previously called perl-curses. To comply with informal
+ Debian standards, it has been renamed to libcurses-perl.
+
+Package: db4.1-util
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 196
+Maintainer: Debian Berkeley DB Maintainers <pkg-db-devel@lists.alioth.debian.org>
+Architecture: i386
+Source: db4.1
+Version: 4.1.25-17
+Depends: libc6 (>= 2.3.2.ds1-4), libdb4.1
+Description: Berkeley v4.1 Database Utilities
+ This package provides different tools for manipulating databases
+ in the Berkeley v4.1 database format, and includes:
+ - db4.1_archive: write the pathnames of the log files no longer in use.
+ - db4.1_checkpoint: daemon process to monitor the database log and checkpoint
+ it periodically.
+ - db4.1_deadlock: traverse the database environment lock region and abort
+ lock requests when a deadlock is detected.
+ - db4.1_load: loads (and creates) a database from standard input.
+ - db4.1_dump: read a database file and write it in a format understood by
+ - db4.1_printlog: dump log files in human readable format.
+ - db4.1_stat: display statistics for Berkeley DB environments.
+ - db4.1_upgrade: upgrades the version of files and the databases they contain.
+ - db4.1_verify: check the structure of files and their databases.
+
+Package: kdvi
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 996
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegraphics
+Version: 4:3.3.0-1.1
+Replaces: kview (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), kviewshell (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: tetex-bin
+Suggests: khelpcenter
+Description: KDE dvi viewer
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KDE dvi viewer
+ .
+ This package is part of the official KDE graphics module.
+
+Package: xfonts-base
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 6748
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: all
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xfntbase, xfntbig, xfonts-cjk
+Provides: xfntbase, xfntbig, xfonts-cjk
+Depends: xutils (>> 4.0.3)
+Suggests: xfs, xserver
+Conflicts: xfntbase, xfonts-cjk, xbase-clients (<< 4.0)
+Conffiles:
+ /etc/X11/fonts/misc/xfonts-base.alias 346953980a4c6a3456c64adf78821d4e
+Description: standard fonts for X
+ xfonts-base provides a standard set of low-resolution bitmapped fonts. In
+ most cases it is desirable to have the X font server (xfs) and/or an X server
+ installed to make the fonts available to X clients.
+ .
+ This package contains primarily fonts in the ISO 10646-1 and ISO 8859-1
+ encodings, to conserve disk space. (A small selection of fonts in ISO
+ 8859-8, JIS-X0208.1983, JIS-X0208.1976, and GB2312.1980 fonts are also
+ included.) For other encodings, see the xfonts-base-transcoded package.
+ .
+ If you are not using a remote font server, you must install this package if
+ you are installing an X server. It contains fonts without which X servers
+ will not work.
+ .
+ This package also provides a set of files that can be used by the X or
+ fonts server to transcode fonts from one encoding to another (e.g., KOI8-R
+ to ISO-8859-5).
+ .
+ This package requires the xutils package to prepare the font directories
+ for use by an X server or X font server.
+
+Package: textutils
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 16
+Maintainer: Michael Stone <mstone@debian.org>
+Architecture: all
+Source: coreutils
+Version: 5.2.1-2
+Pre-Depends: coreutils
+Description: The GNU text file processing utilities (transitional package)
+ Empty package to facilitate upgrades, can be safely removed.
+
+Package: kdict
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 712
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdenetwork
+Version: 4:3.3.0-2
+Provides: dict-client
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libjpeg62, libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE Dictionary Client
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ kdict is an advanced KDE graphical client for the DICT Protocol, with full
+ Unicode support.
+ .
+ This package is part of the official KDE network module.
+
+Package: gs-common
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 376
+Maintainer: Masayuki Hatta (mhatta) <mhatta@debian.org>
+Architecture: all
+Version: 0.3.6
+Replaces: gs-aladdin (<< 7.0), gs (<< 6.51)
+Depends: defoma, debconf, debianutils (>= 1.6), gs, gsfonts
+Suggests: gs-pdfencrypt
+Conflicts: gs-aladdin (<< 7.0), gs (<< 6.51), psfontmgr (<< 0.4.8)
+Description: Common files for different Ghostscript releases
+ There are three different flavors of the Ghostscript PostScript
+ interpreter, released under different licenses:
+ .
+ GPL Ghostscript: Free software released under the GNU GPL. This
+ flavor is included in Debian as the "gs-gpl" package.
+ .
+ ESP Ghostscript: Free software released under the GNU GPL. This
+ version of Ghostscript is maintained and enhanced by Easy Software
+ Products et. al., and supposed to be well-suited to the CUPS. This
+ flavor is included in Debian as the "gs-esp" package.
+ .
+ AFPL Ghostscript: This flavour is the more current and more up to
+ date one but under a license that is not DFSG-free. If you want to
+ use this package please make sure that you agree to the license. The
+ AFPL variant of Ghostscript is not part of the official Debian
+ distribution but we provide a package for it in the non-free section
+ as a service to our users. This flavor is called the "gs-afpl"
+ package.
+ .
+ This package contains the common files among these flavors for
+ managing the font installation and some wrapper scripts.
+
+Package: xpilot-extra
+Status: purge ok not-installed
+Priority: optional
+Section: games
+
+Package: chicken
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 8244
+Maintainer: Davide Puricelli (evo) <evo@debian.org>
+Architecture: i386
+Version: 1.63-2
+Replaces: chicken-dev (<= 0.1072-1)
+Depends: libc6 (>= 2.3.2.ds1-4), libpcre3 (>= 4.5)
+Description: Simple Scheme-to-C compiler
+ Why CHICKEN?
+ .
+ - R5RS support.
+ - SRFIs 0, 1, 2, 4, 6, 7, 8, 9, 10, 13, 14, 16, 18, 22 and 23
+ - Syntax-case highlevel macros
+ - Lightweight threads based on first-class continuations
+ - Pattern matching with Andrew Wright's match package
+ - Record structures
+ - A simple and straightforward module system
+ - An object system with multiple inheritance, multimethods and a
+ meta-object protocol
+ - Separated compilation poses no problem and full tail-recursion and
+ first-class continuations are supported.
+ - Extended comment- and string-literal syntaxes
+ - Libraries for regular expressions, string handling, Common LISP
+ style format, UNIX system calls and extended data structures
+ - Create interpreted or compiled shell scripts written in Scheme
+ - Compiled C files can be easily distributed
+ - Generates quite portable C code and compiled files generated by it
+ (including itself) should work without any change on DOS, Windows,
+ most UNIX-like platforms, and with minor changes on other systems.
+ - Linkage to C modules and C library functions is straightforward.
+ Compiled programs can easily be embedded into existing C code.
+ - Simple. It can be used as a pedagogical tool for anybody who is
+ interested in the workings of a compiler.
+ - Extendable, since its code generation scheme, runtime system, and
+ garbage collector fit neatly into a C environment.
+ - Offers better performance than nearly all interpreter based
+ implementations, but still provides full Scheme semantics.
+ - Probably is the first implementation of Scheme that uses Henry
+ Baker's [Cheney on the M.T.A] concept.
+ .
+ Homepage: http://www.call-with-current-continuation.org
+
+Package: libnautilus2-2
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 1136
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Source: nautilus
+Version: 2.6.3b-2
+Config-Version: 2.6.3b-2
+Replaces: libnautilus1.1-0, libnautilus1.1-2
+Depends: libart-2.0-2 (>= 2.3.16), libatk1.0-0 (>= 1.6.0), libaudiofile0 (>= 0.2.3-4), libbonobo2-0 (>= 2.6.2), libbonoboui2-0 (>= 2.5.4), libc6 (>= 2.3.2.ds1-4), libeel2-2 (>= 2.6.2), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libgail-common (>= 1.4.1), libgail17 (>= 1.4.1), libgconf2-4 (>= 2.6.2), libglade2-0 (>= 1:2.3.6), libglib2.0-0 (>= 2.4.1), libgnome-desktop-2, libgnome2-0 (>= 2.6.0), libgnomecanvas2-0 (>= 2.6.0), libgnomeui-0 (>= 2.6.0), libgnomevfs2-0 (>= 2.6.0), libgtk2.0-0 (>= 2.4.4), libice6 | xlibs (>> 4.1.0), libjpeg62, liborbit2 (>= 1:2.10.0), libpango1.0-0 (>= 1.4.0), libpopt0 (>= 1.7), librsvg2-2 (>= 2.7.2), libsm6 | xlibs (>> 4.1.0), libstartup-notification0 (>= 0.0.5), libx11-6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1)
+Conflicts: libnautilus1.1-0, libnautilus1.1-2, nautilus (<< 2.6.0)
+Description: libraries for nautilus components - runtime version
+ Nautilus is the official file manager and graphical shell for the
+ GNOME desktop.
+ .
+ This package contains a few runtime libraries needed by nautilus and
+ its optional components.
+
+Package: libpng2
+Status: install ok installed
+Priority: standard
+Section: libs
+Installed-Size: 28
+Maintainer: Josselin Mouette <joss@debian.org>
+Architecture: all
+Source: libpng
+Version: 1.0.15-6
+Depends: libpng10-0 (>= 1.0.15-2)
+Description: PNG library, older version - runtime
+ libpng is a library implementing an interface for reading and writing
+ PNG (Portable Network Graphics) format files.
+ .
+ This is a dummy package; it is superseded by libpng10-0.
+
+Package: libasn1-6-heimdal
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 224
+Maintainer: Brian May <bam@debian.org>
+Architecture: i386
+Source: heimdal
+Version: 0.6.1-1
+Config-Version: 0.6.1-1
+Replaces: heimdal-lib (<< 0.3e-5)
+Depends: libc6 (>= 2.3.2.ds1-4), libcomerr2 (>= 1.33-3)
+Conflicts: heimdal-libs (<< 0.3e-5)
+Description: Libraries for Heimdal Kerberos
+ Heimdal is a free implementation of Kerberos 5, that aims to be
+ compatible with MIT Kerberos.
+ .
+ This package contains the asn1 parser required for Heimdal.
+
+Package: ksync
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 212
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libkcal2 (>= 4:3.3.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Description: KDE Sync
+ KSync is a small application using libksync, which provides a GUI for
+ selecting and syncing files, which contain data of the types, for which
+ implementations of the libksync interfaces exist. It is able to sync data
+ across networks by using the KDE ioslaves.
+ .
+ This package is part of the official KDE pim module.
+
+Package: freenet6
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 224
+Maintainer: Martin Waitz <tali@debian.org>
+Architecture: i386
+Version: 1.0-2.2
+Depends: libc6 (>= 2.3.2.ds1-4), net-tools, iproute, debconf, stat | coreutils
+Suggests: radvd
+Conffiles:
+ /etc/freenet6/tspc.conf 52e55fd3107f8e49ca3144ee2fb10595
+ /etc/freenet6/setup.sh 403d9273383229765c084af972e4b173
+ /etc/freenet6/checktunnel.sh 1e7a679c0d94480253c61d0a0e40245d
+ /etc/init.d/freenet6 0bd4270cb61da55d14da3ad8d5d8e399
+ /etc/ppp/ip-up.d/0freenet6 a2b88e181b8bd33a31b0623030f30a33
+ /etc/ppp/ip-down.d/0freenet6 aac1dfe543fe6372eef15f239da5657d
+ /etc/logcheck/ignore.d.server/freenet6 967637a3273d18581adf546e3a50c04b
+Description: Client to configure an IPv6 tunnel to freenet6
+ Providing tspc, a Tunnel Server Protocol Client, this Package allows an easy
+ way to connect the machine to the 6bone.
+ .
+ Configured tunneling is a transition method standardized by IETF to use IPv6
+ in coexistence with IPv4 by encapsulating IPv6 packets over IPv4. Any host
+ already connected to Internet with IPv4 which has an IPv6 stack can establish
+ a link to the Internet IPv6.
+ .
+ FREENET6's TSP is a new model based on a client/server approach. A protocol is
+ used to request a single IPv6 address to a full IPv6 prefix from a client to a
+ tunnel server according to the IPv6 broker model.
+
+Package: libhtml-tree-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 520
+Maintainer: Kenneth J. Pronovici <pronovic@debian.org>
+Version: 3.18-1
+Replaces: libwww-perl (<< 5.36-0)
+Depends: perl (>= 5.6.0-16), libwww-perl, libhtml-parser-perl, libhtml-tagset-perl (>= 3.02)
+Conflicts: libwww-perl (<< 5.36-0)
+Description: represent and create HTML syntax trees
+ This is a collection of modules that represent, create and extract
+ information from HTML syntax trees. These modules used to be part of
+ the libwww-perl distribution, but are now unbundled in order to
+ facilitate a separate development track.
+
+Package: libpcap0.7
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 192
+Maintainer: Romain Francoise <rfrancoise@debian.org>
+Architecture: i386
+Source: libpcap
+Version: 0.7.2-7
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: System interface for user-level packet capture
+ libpcap (Packet CAPture) provides a portable framework for low-level
+ network monitoring. Applications include network statistics collection,
+ security monitoring, network debugging, etc.
+ .
+ Since almost every system vendor provides a different interface for
+ packet capture, and since there are several tools that require this
+ functionality, we've created this system-independent API to ease in
+ porting and to alleviate the need for several system-dependent packet
+ capture modules in each application.
+ .
+ Further information is available at <URL: http://www.tcpdump.org/>
+
+Package: quanta
+Status: install ok installed
+Priority: optional
+Section: web
+Installed-Size: 4132
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Version: 1:3.2.3-2
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libjpeg62, libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.11), libxrender1, zlib1g (>= 1:1.2.1), kommander, quanta-data (= 1:3.2.3-2)
+Recommends: kfilereplace, kxsldbg, tidy, phpdoc, wdg-html-reference
+Suggests: cervisia, kompare, wget, khelpcenter
+Description: web development environment for KDE
+ Quanta Plus is a web development environment for working with HTML
+ and associated languages. It strives to be neutral and transparent
+ to all markup languages, while supporting popular web-based scripting
+ languages, CSS and other emerging W3C recommendations.
+ .
+ Amongst other features, Quanta includes a PHP debugger and supports
+ the XSLT debugger found in the separate package kxsldbg.
+ .
+ Quanta Plus is not in any way affiliated with any commercial versions
+ of Quanta. The primary coders from the original team left the GPL'd
+ version to produce a commercial product.
+ .
+ This package is part of the official KDE web development module.
+
+Package: sed
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 840
+Maintainer: Clint Adams <schizo@debian.org>
+Architecture: i386
+Version: 4.1.2-1
+Pre-Depends: libc6 (>= 2.3.2.ds1-4)
+Description: The GNU sed stream editor
+ sed reads the specified files or the standard input if no
+ files are specified, makes editing changes according to a
+ list of commands, and writes the results to the standard
+ output.
+
+Package: libperl5.8
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1164
+Maintainer: Brendan O'Dea <bod@debian.org>
+Architecture: i386
+Source: perl
+Version: 5.8.4-2.2
+Depends: libc6 (>= 2.3.2.ds1-4), perl-base (= 5.8.4-2.2)
+Conflicts: libapache-mod-perl (<< 1.29.0.1-3)
+Description: Shared Perl library.
+ This package is required by programs which embed a Perl interpreter to
+ ensure that the correct version of `perl-base' is installed. It
+ additionally contains the shared Perl library on architectures where the
+ perl binary is linked to libperl.a (currently only i386, for performance
+ reasons). In other cases the actual library is in the `perl-base' package.
+
+Package: libidn11
+Status: install ok installed
+Priority: standard
+Section: libs
+Installed-Size: 292
+Maintainer: Ryan M. Golbeck <rmgolbeck@debian.org>
+Architecture: i386
+Source: libidn
+Version: 0.5.2-3
+Replaces: libidn11-dev
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libidn9-dev
+Description: GNU libidn library, implementation of IETF IDN specifications
+ GNU Libidn is an implementation of the Stringprep, Punycode and IDNA
+ specifications defined by the IETF Internationalized Domain Names
+ (IDN) working group, used for internationalized domain names.
+ Currently the Nameprep, Kerberos 5 and XMPP Stringprep profiles are
+ supported.
+
+Package: libxml2-utils
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 340
+Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs@lists.alioth.debian.org>
+Architecture: i386
+Source: libxml2
+Version: 2.6.11-3
+Replaces: libxml2 (<< 2.5.7-1)
+Depends: libc6 (>= 2.3.2.ds1-4), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1)
+Conflicts: libxml2 (<< 2.5.7-1)
+Description: XML utilities
+ XML is a metalanguage to let you design your own markup language.
+ A regular markup language defines a way to describe information in
+ a certain class of documents (eg HTML). XML lets you define your
+ own customized markup languages for many classes of document. It
+ can do this because it's written in SGML, the international standard
+ metalanguage for markup languages.
+ .
+ This package provides xmllint, a tool for validating and reformatting
+ XML documents, and xmlcatalog, a tool to parse and manipulate XML or
+ SGML catalog files.
+
+Package: kolf
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 2096
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libstdc++5 (>= 1:3.3.4-1)
+Conffiles:
+ /etc/kde3/magic/kolf.magic f7cdcfaa9320ef323fe254daf0a09435
+Description: Minigolf game for KDE
+ This is a minigolf game for KDE that allows you to go through different
+ golf courses and waste an exorbitant amount of time.
+
+Package: libkdgantt0
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 488
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.2.3-1
+Config-Version: 4:3.2.3-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1)
+Description: KD's gantt charting library
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ Klarälvdalens Datakonsult AB's gantt charting library.
+ .
+ This is the runtime package for programs that use the libkdgantt library.
+ .
+ This package is part of the official KDE pim module.
+
+Package: libtheora0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 140
+Maintainer: Christopher L Cheney <ccheney@debian.org>
+Architecture: i386
+Source: libtheora
+Version: 0.0.0.alpha3-1
+Depends: libc6 (>= 2.3.2.ds1-4), libogg0 (>= 1.1.0)
+Description: The Theora Video Compression Codec
+ Ogg Theora
+
+Package: libgnome-perl
+Status: purge ok not-installed
+Priority: optional
+Section: interpreters
+Architecture: i386
+
+Package: libatm1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 132
+Maintainer: Peter De Schrijver (p2) <p2@mind.be>
+Architecture: i386
+Source: linux-atm
+Version: 2.4.1-16
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: atm-tools (<< 2.4.1-6)
+Description: shared library for ATM (Asynchronous Transfer Mode)
+ Shared libraries needed by ATM (Asynchronous Transfer Mode) related programs
+ .
+ Homepage: http://linux-atm.sourceforge.net/
+
+Package: bnetd
+Status: deinstall ok config-files
+Priority: optional
+Section: net
+Installed-Size: 1092
+Maintainer: Dennis L. Clark <dbugger@debian.org>
+Architecture: i386
+Version: 0.4.25-5
+Config-Version: 0.4.25-5
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: fortune
+Conffiles:
+ /etc/bnetd/bnetd.conf 3fc69d7cd884f53a7c75c46f6ccb28b6
+ /etc/bnetd/bnetd_default_user 9631d713ee34ee1e485eee0440289c9b
+ /etc/bnetd/channel.list 96e0a58b32ea40444511f296a1b91d1f
+ /etc/bnetd/bnmotd.txt 2d79c81c74bcb5c947278d946073f40b
+ /etc/bnetd/news.txt 88a05cb7d3f98c4f1ffeb5cdea54341b
+ /etc/bnetd/ad.list 9468ec7d539a065df4b9769b6187a011
+ /etc/bnetd/bnissue.txt b898bdc1a492f96b7ba152ceadfb340b
+ /etc/bnetd/tos_USA.txt dd2a10ab6749c8810e6330f467ff16f6
+ /etc/bnetd/tos_DEU.txt dd2a10ab6749c8810e6330f467ff16f6
+ /etc/init.d/bnetd 3ca234bfcff1df1276a80b0d921d5a68
+Description: Gaming server that emulates Battle.net(R)
+ The server currently implements most of the same functionality as the
+ real Battle.net(R) servers from Blizzard Entertainment. You can chat,
+ play games, use / commands, and things like account passwords, user
+ icons, ad banners, and channel operators work too. It is by no means
+ complete, though.
+ .
+ Currently Starcraft(R), Brood War(R), Diablo(R), and Warcraft(R) II
+ BNE are supported as clients.
+
+Package: xlibs-pic
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 232
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: all
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Depends: xlibs-static-pic
+Description: XFree86 static PIC libraries pseudopackage
+ This package smooths upgrades from Debian 3.0 by depending on
+ xlibs-static-pic. This pseudopackage is only depended upon by packages that
+ haven't yet corrected their dependencies to reflect the new package name.
+
+Package: hdparm
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 176
+Maintainer: Stephen Gran <sgran@debian.org>
+Architecture: i386
+Version: 5.7-1
+Replaces: apmd (<= 3.0.2-1.15)
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: apmd
+Conffiles:
+ /etc/init.d/hdparm 2ba5485cdc9dfdf29749edfafa455a59
+ /etc/apm/event.d/20hdparm 69c0a826b29c8f40b7ca5e56e53d7f83
+ /etc/hdparm.conf deb2fe77a9808ff36967856cb19bbcf8
+Description: Tune hard disk parameters for high performance
+ Get/set hard disk parameters for Linux IDE drives.
+ Primary use is for enabling irq-unmasking and IDE multiplemode.
+
+Package: kstars-data
+Status: install ok installed
+Priority: optional
+Section: science
+Installed-Size: 14984
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: all
+Source: kdeedu
+Version: 4:3.2.3-2
+Replaces: kstars (<< 4:3.2.0.1)
+Recommends: kstars (= 4:3.2.3-2)
+Description: data files for KStars desktop planetarium
+ This package contains architecture-independent data files for KStars,
+ the graphical desktop planetarium for KDE. This includes star
+ catalogues and astronomical images.
+ .
+ See the kstars package for further information.
+ .
+ This package is part of the official KDE edutainment module.
+
+Package: libpng10-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 248
+Maintainer: Josselin Mouette <joss@debian.org>
+Architecture: i386
+Source: libpng
+Version: 1.0.15-6
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1)
+Description: PNG library, older version - runtime
+ libpng is a library implementing an interface for reading and writing
+ PNG (Portable Network Graphics) format files.
+ .
+ This package contains legacy runtime libraries needed by programs
+ accessing PNG files.
+ .
+ URL: http://www.libpng.org/pub/png/libpng.html
+
+Package: libtasn1-dev
+Status: purge ok not-installed
+Priority: optional
+Section: devel
+Architecture: i386
+
+Package: abuse-sdl
+Status: purge ok not-installed
+Priority: optional
+Section: games
+Architecture: i386
+
+Package: krb5-config
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 68
+Maintainer: Sam Hartman <hartmans@debian.org>
+Architecture: all
+Source: kerberos-configs
+Version: 1.6
+Depends: debconf (>= 0.4.0)
+Conflicts: heimdal-lib (<< 0.3e-5), libkrb53 (<< 1.2.2-5)
+Description: Configuration files for Kerberos Version 5
+ This package provides /etc/krb5.conf and any other files needed to
+ configure Kerberos Version 5. This package may be used with one of
+ the implementations of Kerberos in Debian, or with a locally built
+ Kerberos . Generally this package will be installed as part of
+ installing some Kerberos implementation.
+
+Package: vnc-common
+Status: deinstall ok config-files
+Priority: optional
+Section: x11
+Installed-Size: 139
+Maintainer: Ola Lundqvist <opal@debian.org>
+Source: vnc
+Version: 3.3.7-1
+Config-Version: 3.3.7-1
+Depends: libc6 (>= 2.3.1-1), perl
+Pre-Depends: dpkg (>= 1.6.8)
+Suggests: xvncviewer | vncviewer, vncserver
+Conflicts: vnc, vnc-doc, vncserver (<< 3.3.6-1)
+Conffiles:
+ /etc/vnc.conf 260546716e9c4457b883e051a1c44154
+Description: Virtual network computing server software
+ VNC stands for Virtual Network Computing. It is, in essence, a remote
+ display system which allows you to view a computing `desktop' environment
+ not only on the machine where it is running, but from anywhere on the
+ Internet and from a wide variety of machine architectures.
+ .
+ It is implemented in a client/server model. This package provides common
+ utilities for the server and client packages.
+
+Package: libclanlib2
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 1004
+Origin: debian
+Maintainer: Filip Van Raemdonck <mechanix@debian.org>
+Bugs: debbugs://bugs.debian.org/
+Architecture: i386
+Source: clanlib
+Version: 0.6.5-1-2.2
+Config-Version: 0.6.5-1-2.2
+Depends: hermes1 (>= 1.3.2-5), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Conflicts: clanlib, clanlib2
+Description: ClanLib game SDK core runtime
+ ClanLib is a multi-platform software development kit, with an emphasis on
+ game development.
+ .
+ On one side, it tries to provide a platform independent interface to
+ write games with, by taking over the low-level work from the game and
+ providing wrappers around toolkits such as DirectFB, DirectX, OpenGL,
+ Vorbis, X11, etc., so that if a game is written with ClanLib, the game
+ should compile on any platform supported by ClanLib without changing
+ its source code.
+ .
+ On the other hand, ClanLib also tries to be a service-minded SDK.
+ In other words, the developers have put great effort into designing
+ the API, to ensure ClanLib's ease of use - while maintaining its power.
+ .
+ This is the runtime part of the ClanLib SDK, needed to run applications
+ build with it.
+
+Package: kde-core
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 16
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: all
+Source: meta-kde
+Version: 4:3.1.2
+Depends: arts, fontconfig, kdebase, kdelibs
+Suggests: kde-i18n
+Description: The K Desktop Environment (Core)
+ A metapackage containing dependencies for the core suite of KDE including
+ arts, kdelibs, and debase.
+
+Package: libpt-plugins-v4l
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+Architecture: i386
+
+Package: libnet-perl
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 400
+Maintainer: Marc 'HE' Brockschmidt <he@debian.org>
+Architecture: all
+Version: 1:1.19-1
+Depends: perl (>= 5.6.0-16), debconf (>= 0.5) | debconf-2.0
+Recommends: libnet-ph-perl, libnet-snpp-perl, libnet-telnet-perl
+Description: Implementation of Internet protocols for Perl
+ libnet contains Perl implementations of the following protocols:
+ Net::FTP (RFC959), Net::SMTP (RFC821), Net::Time (RFC867 & RFC868),
+ Net::NNTP (RFC977), Net::POP3 (RFC1939). It also contains various
+ utility functions for implementing new protocols.
+
+Package: libgtk2.0-common
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 8200
+Maintainer: Akira TAGOH <tagoh@debian.org>
+Architecture: all
+Source: gtk+2.0
+Version: 2.4.9-1
+Replaces: libgtk1.3-common, libgtk2.0-data
+Depends: libgtk2.0-0
+Conflicts: libgtk1.3-common, libgtk2.0-data
+Description: Common files for the GTK+ graphical user interface library
+ The GTK+ is a multi-platform toolkit for creating graphical user
+ interfaces. Offering a complete set of widgets, the GTK+ is suitable
+ for projects ranging from small one-off tools to complete application
+ suites.
+ .
+ This package contains the common files which the libraries need.
+
+Package: xpdf-common
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 105
+Maintainer: Hamish Moffatt <hamish@debian.org>
+Architecture: all
+Source: xpdf
+Version: 3.00-8
+Replaces: xpdf-cyrillic, xpdf-greek, xpdf-hebrew, xpdf-latin2, xpdf-thai, xpdf-turkish
+Suggests: xpdf-reader | xpdf-utils
+Conflicts: xpdf (<= 0.93-6), xpdf-cyrillic, xpdf-greek, xpdf-hebrew, xpdf-latin2, xpdf-thai, xpdf-turkish
+Conffiles:
+ /etc/xpdf/xpdfrc e171d82d96d0cf565331521a91dcc87c
+ /etc/xpdf/xpdfrc-greek fdc2566c2611c40c644a61e01fec1d85
+ /etc/xpdf/xpdfrc-hebrew ff3c2b47b177a7f4d603d84be4051f53
+ /etc/xpdf/xpdfrc-thai 06ee0bf333c51dc3e712bf83e42cdc5f
+ /etc/xpdf/xpdfrc-turkish 32afac4002c3f72eed8f0d744b120420
+ /etc/xpdf/xpdfrc-cyrillic 516c9835d2ddab53c9106347438b458e
+ /etc/xpdf/xpdfrc-latin2 d312d9d3b4e333f358a33e597f8de022
+ /etc/xpdf/xpdfrc-arabic 6c75d8e8f38b783c76146f4e2a837d25
+Description: Portable Document Format (PDF) suite -- common files
+ xpdf is a suite of tools for Portable Document Format (PDF) files. (These are
+ sometimes called 'Acrobat' files after the name of Adobe's PDF software.)
+ .
+ This package contains common files needed by the other xpdf packages.
+
+Package: guile-1.6-slib
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 24
+Maintainer: Rob Browning <rlb@defaultvalue.org>
+Source: guile-1.6
+Version: 1.6.4-4
+Depends: guile-1.6, slib
+Description: Guile SLIB support
+ Arranges for Guile to be able to use slib via (use-modules (ice-9 slib)).
+
+Package: libgpg-error-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 140
+Maintainer: Jose Carlos Garcia Sogo <jsogo@debian.org>
+Architecture: i386
+Source: libgpg-error
+Version: 1.0-1
+Depends: libgpg-error0 (= 1.0-1), libc6-dev
+Description: library for common error values and messages in GnuPG components
+ Library that defines common error values for all GnuPG
+ components. Among these are GPG, GPGSM, GPGME, GPG-Agent, libgcrypt,
+ pinentry, SmartCard Daemon and possibly more in the future.
+ .
+ This package contains the headers and other files needed to compile
+ against this library.
+
+Package: dhelp
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 220
+Maintainer: Stefan Hornburg (Racke) <racke@linuxia.de>
+Architecture: i386
+Version: 0.5.18
+Depends: libc6 (>= 2.3.2.ds1-4), libdb3 (>= 3.2.9-20), debconf, perl-modules
+Recommends: www-browser
+Suggests: httpd, swish++, info2www, man2html
+Conffiles:
+ /etc/cron.weekly/dhelp 0b786c9abffab3b177a568d80be3b801
+Description: online help system
+ Read all documentation with a WWW browser. dhelp builds a
+ index of all installed HTML documentation. You don't need
+ a WWW server to read the documentation. dhelp offers a
+ very fast search in the HTML documents.
+ .
+ You can access the online help system with the dhelp
+ program or with your browser. The URL to point your
+ browser at is http://localhost/doc/HTML/index.html
+ if you have a WWW server installed or
+ file://localhost/usr/share/doc/HTML/index.html if not.
+
+Package: memtest86
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 164
+Maintainer: Yann Dirson <dirson@debian.org>
+Architecture: i386
+Version: 3.1a-3
+Suggests: hwtools, sysutils, kernel-patch-badram, memtest86+, grub
+Description: A thorough real-mode memory tester
+ Memtest86 scans your RAM for errors.
+ .
+ This version is apparently not maintained any more upstream.
+ Especially if you own a recent computer on which it does not work,
+ you should consider looking at the memtest86+ package.
+ .
+ This tester runs independently of any OS - it is run at computer
+ boot-up, so that it can test *all* of you memory. You may want to
+ look at `memtest' (in package `sysutils'), which allows to test
+ your memory within Linux, but this one won't be able to test your
+ whole RAM.
+ .
+ This used to be part of the hwtools package, which still contains
+ another real-mode memory tester optimized for mmx machines (but less
+ actively maintained).
+ .
+ It can output a list of bad RAM regions usable by the BadRAM kernel
+ patch, so that you can still use you old RAM with one or 2 bad bits.
+ .
+ A convenience script is also provided to make a grub-based floppy or
+ image.
+
+Package: libkgantt0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 276
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Replaces: kdepim-libs (<< 4:3.2.0)
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Conflicts: kdepim-libs (<< 4:3.2.0)
+Description: KDE gantt charting library
+ This is the runtime package for programs that use the libkgantt library.
+ .
+ This package is part of the official KDE pim module.
+
+Package: lshw
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 361
+Maintainer: Ola Lundqvist <opal@debian.org>
+Architecture: i386
+Version: 01.03-1
+Depends: libc6 (>= 2.3.1-1), libgcc1 (>= 1:3.3-1), libstdc++5 (>= 1:3.3-1)
+Description: information about hardware configuration
+ A small tool to provide detailed information on the hardware
+ configuration of the machine. It can report exact memory
+ configuration, firmware version, mainboard configuration, CPU version
+ and speed, cache configuration, bus speed, etc. on DMI-capable x86
+ systems and on some PowerPC machines (PowerMac G4 is known to work).
+ .
+ Information can be output in plain text or (partial) HTML.
+
+Package: wdg-html-validator
+Status: install ok installed
+Priority: optional
+Section: web
+Installed-Size: 1248
+Maintainer: Aurelien Jarno <aurel32@debian.org>
+Architecture: all
+Version: 1.5.7-1
+Depends: sgml-data, opensp (>= 1.5release-1.1), libwww-perl, libhtml-parser-perl, libunicode-string-perl, libunicode-map8-perl, libi18n-charset-perl (>= 1.12-1), w3c-dtd-xhtml, wdg-html-reference, libjconv-bin, perl
+Recommends: apache | httpd
+Conflicts: wdg-html-reference (<< 4.0)
+Description: WDG HTML Validator
+ This is a CGI script which lets you enter the URL of a web page which will
+ be then checked against a validating SGML parser for conformance to official
+ HTML standards. Pages can also be uploaded and HTML can be directly entered.
+ .
+ A command-line version is also included in the package.
+ .
+ Homepage: http://www.htmlhelp.com/tools/validator/
+ Author: Liam Quinn <liam@htmlhelp.com>
+
+Package: freeciv-server
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 664
+Maintainer: Debian Freeciv Maintainers <pkg-freeciv-devel@lists.alioth.debian.org>
+Architecture: i386
+Source: freeciv
+Version: 1.14.2-1
+Config-Version: 1.14.2-1
+Depends: libc6 (>= 2.3.2.ds1-4), libreadline4 (>= 4.3-1), zlib1g (>= 1:1.2.1), freeciv-data (>= 1.14.2)
+Suggests: freeciv-client
+Conflicts: freeciv (<< 1.14.0-5)
+Description: Civilization turn based strategy game (server files)
+ Freeciv is a free clone of the turn based strategy game Civilization.
+ In this game, each player becomes leader of a civilization, fighting to
+ obtain the ultimate goal: the extinction of all other civilizations.
+ .
+ This is the Freeciv server.
+
+Package: kdeprint
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 1824
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0), kdebase-doc (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), enscript, gv, poster, psutils
+Suggests: khelpcenter, efax | hylafax-client | mgetty-fax
+Description: KDE Print
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This package contains the KDE printing subsystem. It can use Cups,
+ lpd-ng or the traditional lpd. It also includes support for fax and pdf
+ printing.
+ .
+ This package is part of the official KDE base module.
+
+Package: liblzo1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 168
+Maintainer: Paolo Molaro <lupus@debian.org>
+Architecture: i386
+Source: lzo
+Version: 1.08-1.2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: lzop (<= 1.00)
+Description: A real-time data compression library
+ LZO is a portable lossless data compression library written in
+ ANSI C. It offers pretty fast compression and *very* fast
+ decompression. Decompression requires no memory.
+ In addition there are slower compression levels achieving a
+ quite competitive compression ratio while still decompressing
+ at this very high speed.
+
+Package: libeel2-data
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+Architecture: all
+
+Package: setserial
+Status: install ok installed
+Priority: important
+Section: base
+Installed-Size: 120
+Maintainer: Ola Lundqvist <opal@debian.org>
+Architecture: i386
+Version: 2.17-39
+Depends: libc6 (>= 2.3.2.ds1-4), debconf (>= 0.2.17)
+Conffiles:
+ /etc/init.d/setserial 7156df096e7822b22c7e0b48db4da662
+ /etc/init.d/etc-setserial 2c9d7243ff80929e0884f8ea4b433073
+ /etc/modutils/setserial cb23d25565eae64f12ef267efd3f42c3
+Description: Controls configuration of serial ports
+ Set and/or report the configuration information associated with
+ a serial port. This information includes what I/O port and which IRQ
+ a particular serial port is using.
+ .
+ This version has a completely new approach to configuration, so if you
+ have a setup other than the standard ttyS0 and 1, you will have to get
+ your hands dirty.
+ .
+ By default, only COM1-4 are configured by the kernel, using IRQ 3 and 4.
+ If you have other serial ports (such as an AST Fourport card), or
+ if you have mapped the IRQs differently (perhaps COM3 and 4 to other
+ IRQs to allow concurrent access with COM1 and 2) then you must have this
+ package.
+
+Package: atlantik
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 1076
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libkdegames1 (>= 4:3.3.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Suggests: atlantikdesigner, monopd
+Description: KDE client for Monopoly-like network games
+ This is a KDE client for playing Monopoly-like boardgames on the
+ monopd network. It can play any board supported by the network
+ server, including the classic Monopoly game, as well as the Atlantik
+ game in which the property includes several major cities in North
+ America and Europe.
+
+Package: libtiff4
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 328
+Maintainer: Josip Rodin <joy-packages@debian.org>
+Architecture: i386
+Source: tiff
+Version: 3.6.1-1.1
+Depends: libc6 (>= 2.3.2.ds1-4), libjpeg62, zlib1g (>= 1:1.2.1)
+Description: Tag Image File Format library
+ libtiff is a library providing support for the Tag Image File Format
+ (TIFF), a widely used format for storing image data. Included is the
+ shared library.
+
+Package: libwv2-1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 704
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: wv2
+Version: 0.2.1-2
+Depends: libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.2.3), libgsf-1 (>= 1.8.2), libxml2 (>= 2.6.7), zlib1g (>= 1:1.2.1)
+Description: a library for accessing Microsoft Word documents
+ The wv2 library allows access to Microsoft Word documents, for the
+ purpose of converting them to other formats. This library is intended
+ as an eventual replacement for the wv library, used in the package wv.
+
+Package: libaudiofile0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 228
+Maintainer: Daniel Kobras <kobras@debian.org>
+Architecture: i386
+Source: audiofile
+Version: 0.2.6-4
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Open-source version of SGI's audiofile library
+ The audiofile library allows the processing of audio data to and from audio
+ files of many common formats (currently AIFF, AIFF-C, WAVE, NeXT/Sun, BICS,
+ and raw data).
+ .
+ This package contains the library needed to run executables using
+ libaudiofile.
+
+Package: amor
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 1972
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdetoys
+Version: 4:3.2.3-3
+Replaces: kdetoys (<< 4:3.0.1-0), task-kdetoys
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: kwin
+Suggests: khelpcenter, kdetoys-doc-html
+Conflicts: task-kdetoys
+Description: a KDE creature for your desktop
+ AMOR stands for Amusing Misuse Of Resources. It provides several different
+ characters who prance around your X screen doing tricks and giving you tips.
+ .
+ Note AMOR will only work with some window managers. Both KWin (the KDE
+ window manager) and Metacity (a GTK2 window manager) are supported.
+ .
+ This package is part of the official KDE toys module.
+
+Package: grep-dctrl
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 196
+Maintainer: Antti-Juhani Kaijanaho <ajk@debian.org>
+Architecture: i386
+Version: 2.1.7
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: dselect
+Conffiles:
+ /etc/grep-dctrl.rc 679b98242d70937acb6e75bcb9dbb424
+Description: Grep Debian package information
+ The grep-dctrl program can answer such questions as
+ * "What is the Debian package foo?"
+ * "Which version of the Debian package bar is now current?"
+ * "Which Debian packages does John Doe maintain?"
+ * "Which Debian packages are somehow related to the Scheme
+ programming language?"
+ and with some help
+ * "Who maintain the essential packages of a Debian system?"
+ given a useful input file.
+ .
+ It is a specialised grep program that is meant for processing any
+ file which has the general format of a Debian package control file.
+ These include the dpkg available file, the dpkg status file, and the
+ Packages files on a distribution medium (such as a Debian CD-ROM or
+ an FTP site carrying Debian).
+ .
+ This package includes the specializations grep-status and
+ grep-available, which take their input by default from the dpkg
+ status file and the dpkg available file (updated by dselect update),
+ respectively. The grep-available specialization is useful mainly to
+ users of dselect.
+
+Package: ksmiletris
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 548
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: Tetris like game for KDE
+ This is a game with falling blocks composed of different types of
+ smilies. The object of the game is to "crack a smile" by guiding
+ blocks so there are two or more of the same symbol vertically.
+
+Package: kdelibs4
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 23244
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdelibs
+Version: 4:3.3.0-1.1
+Replaces: kdelibs3 (<< 4:3.0.0), kdepim-libs (<< 4:3.0.0), kdetrayproxy (>= 0.2-1), korganizer (<< 4:3.3.0), libkmid (<< 4:3.0.0), libkmid-alsa (<< 4:3.0.0)
+Depends: libart-2.0-2 (>= 2.3.16), libarts1 (>= 1.3.0), libasound2 (>> 1.0.5), libaspell15 (>= 0.50.5), libaudio2, libaudiofile0 (>= 0.2.3-4), libbz2-1.0, libc6 (>= 2.3.2.ds1-4), libcupsys2-gnutls10 (>= 1.1.20final-1), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libfam0c102, libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libjack0.80.0-0 (>= 0.98.1), libjasper-1.701-1 (>= 1.701.0), libjpeg62, libmad0 (>= 0.15.1b), libogg0 (>= 1.1.0), libopenexr2 (>= 1.2.1), libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libtiff4, libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.11), libxrender1, libxslt1.1 (>= 1.1.8), libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), kdelibs-bin (= 4:3.3.0-1.1), kdelibs-data (>= 4:3.3.0), xbase-clients
+Conflicts: kdelibs3 (<< 4:3.0.0), kdepim-libs (<< 4:3.0.0), kdetrayproxy (>= 0.2-1), libkmid (<< 4:3.0.0), libkmid-alsa (<< 4:3.0.0)
+Description: KDE core libraries
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This package contains all the libraries needed to run a KDE
+ application.
+ .
+ You need these libraries to run kde applications.
+
+Package: libweakref-perl
+Status: purge ok not-installed
+Priority: optional
+Section: interpreters
+
+Package: lynx
+Status: install ok installed
+Priority: standard
+Section: web
+Installed-Size: 4584
+Maintainer: James Troup <james@nocrew.org>
+Version: 2.8.5-1
+Replaces: lynx-ssl
+Provides: www-browser, news-reader, lynx-ssl
+Depends: libbz2-1.0, libc6 (>= 2.3.2.ds1-4), libgnutls7 (>= 0.8.12-1), libgnutls7 (>= 0.8.12-2), libncursesw5 (>= 5.3.20030510-1), zlib1g (>= 1:1.2.1)
+Recommends: mime-support
+Conflicts: lynx-ssl
+Conffiles:
+ /etc/lynx.cfg b15e2a083dd7b2103e7c54f5924575fb
+Description: Text-mode WWW Browser
+ Lynx is a fully-featured World Wide Web (WWW) client for users
+ running cursor-addressable, character-cell display devices (e.g.,
+ vt100 terminals, vt100 emulators running on PCs or Macs, or any other
+ "curses-oriented" display). It will display hypertext markup language
+ (HTML) documents containing links to files residing on the local
+ system, as well as files residing on remote systems running Gopher,
+ HTTP, FTP, WAIS, and NNTP servers.
+
+Package: libgsf-1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 184
+Maintainer: J.H.M. Dassen (Ray) <jdassen@debian.org>
+Architecture: i386
+Source: libgsf
+Version: 1.10.1-1
+Depends: libbz2-1.0, libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.4.1), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1)
+Description: Structured File Library - runtime version
+ The GNOME Structured File Library library aims to provide an efficient
+ extensible I/O abstraction for dealing with different structured file
+ formats.
+ .
+ This is the basic runtime version of libgsf. It does not provide
+ GNOME-specific extensions.
+
+Package: konq-plugins
+Status: install ok installed
+Priority: optional
+Section: web
+Installed-Size: 2084
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeaddons
+Version: 4:3.2.3-2
+Depends: kdelibs4 (>= 4:3.2.3), konqueror (>= 4:3.2.2), libart-2.0-2 (>= 2.3.16), libarts1 (>= 1.2.3), libasound2 (>> 1.0.5), libaudio2, libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libfam0c102, libgcc1 (>= 1:3.3.3-1), libglib2.0-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), libjpeg62, libkonq4 (>= 4:3.2.2), libmad0 (>= 0.15.1b), libogg0 (>= 1.1.0), libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libvorbis0a (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), imagemagick, libjpeg-progs, python
+Suggests: khelpcenter, kdeaddons-doc-html
+Enhances: konqueror
+Description: plugins for Konqueror, the KDE file/web/doc browser
+ This package contains a variety of useful plugins for Konqueror, the
+ file manager, web browser and document viewer for KDE. These plugins
+ will appear in Konqueror's Tools menu.
+ .
+ Highlights for web browsing include web page translation, web page archiving,
+ auto-refreshing, HTML and CSS structural analysis, fast access to common
+ options, bookmarklets and a crash monitor.
+ .
+ Highlights for directory browsing include directory filters, image gallery
+ creation, samba share mounting, quick copy/move, a sidebar media player,
+ a graphical disk usage viewer and image conversions and transformations.
+ .
+ This package is part of the KDE add-ons module.
+
+Package: libwrap0-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 116
+Maintainer: Anthony Towns <ajt@debian.org>
+Architecture: i386
+Source: tcp-wrappers
+Version: 7.6.dbs-6
+Provides: libwrap-dev
+Depends: libwrap0 (= 7.6.dbs-6)
+Conflicts: libwrap-dev, netbase (<< 3.16-1)
+Description: Wietse Venema's TCP wrappers library, development files
+ Wietse Venema's network logger, also known as TCPD or LOG_TCP.
+ .
+ These programs log the client host name of incoming telnet,
+ ftp, rsh, rlogin, finger etc. requests. Security options are:
+ access control per host, domain and/or service; detection of
+ host name spoofing or host address spoofing; booby traps to
+ implement an early-warning system.
+
+Package: libdebtags0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 356
+Maintainer: Enrico Zini <enrico@debian.org>
+Architecture: i386
+Source: libdebtags
+Version: 0.9.5
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1), libtagcoll0 (>= 0.99), zlib1g (>= 1:1.2.1)
+Description: Unified access to Debtags and APT databases
+ libdebtags provides functionality to search and categorize debian packages
+ using the Debtags and APT databases. Functions provided:
+ .
+ * search packages by normal debian/control fields and package tags
+ * find packages related to a given one
+ * edit debtags package categorization, with undo support
+ * save and submit tag patches to the central tag archive
+ .
+ libdebtags is written with the intent to make it easy and efficient for
+ applications to include debtags support.
+ .
+ Warning: the API has not yet been stabilized and is subject to change in
+ future versions.
+
+Package: mdetect
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 76
+Maintainer: Branden Robinson <branden@debian.org>
+Version: 0.5.2
+Depends: libc6 (>= 2.2.5-13)
+Description: mouse device autodetection tool
+ mdetect is a tool for autoconfiguring mice; it is typically used as the
+ backend to some user-friendly frontend code. mdetect writes the autodetected
+ mouse device and protocol (as used by gpm) to standard output. It can be
+ invoked so as to produce output appropriate for XFree86 X server
+ configuration files.
+
+Package: krfb
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 2344
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdenetwork
+Version: 4:3.3.0-2
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libjpeg62, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libslp1, libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxtst6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE Remote Screen Server
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ KRfb is a small server for the RFB protocol, better known as VNC. Unlike most
+ RFB servers, KRfb allows you to share your X11 session.
+ .
+ This package is part of the official KDE network module.
+
+Package: libarts1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 4392
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: arts
+Version: 1.3.0-1
+Replaces: libarts (<< 4:3.0.0), libarts-alsa (<< 4:3.0.0)
+Depends: libartsc0 (>= 1.3.0), libasound2 (>> 1.0.5), libaudio2, libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), libjack0.80.0-0 (>= 0.98.1), libmad0 (>= 0.15.1b), libogg0 (>= 1.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Conflicts: libarts (<< 4:3.0.0), libarts-alsa (<< 4:3.0.0)
+Description: aRts Sound system
+ aRts is a short form for "analog realtime synthesizer". The idea of the whole
+ thing is to create/process sound using small modules which do certain tasks.
+ These may be create a waveform (oscillators), play samples, filter data, add
+ signals, perform effects like delay/flanger/chorus, or output the data to
+ the soundcard.
+ .
+ aRts is the core sound system for KDE (and other systems)
+ .
+ This package is part of the official KDE aRts module.
+
+Package: libfribidi-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 175
+Maintainer: Baruch Even <baruch@debian.org>
+Architecture: i386
+Source: fribidi
+Version: 0.10.4-3
+Depends: libfribidi0 (= 0.10.4-3)
+Description: Development files for FreeBidi library
+ This package contains the header files and static libraries for the
+ FriBidi C library.
+ .
+ Upstream: http://fribidi.sourceforge.net/
+
+Package: kdetoys
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 36
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: all
+Version: 4:3.2.3-3
+Depends: amor (>= 4:3.2.3-3), eyesapplet (>= 4:3.2.3-3), fifteenapplet (>= 4:3.2.3-3), kmoon (>= 4:3.2.3-3), kodo (>= 4:3.2.3-3), kteatime (>= 4:3.2.3-3), ktux (>= 4:3.2.3-3), kweather (>= 4:3.2.3-3), kworldclock (>= 4:3.2.3-3)
+Suggests: kdetoys-doc-html
+Description: toys from the official KDE release
+ This is a collection of toys provided with the official release of KDE
+ (the K Desktop Environment).
+
+Package: latex-ucs-uninames
+Status: install ok installed
+Priority: optional
+Section: tex
+Installed-Size: 378
+Maintainer: Martin Pitt <mpitt@debian.org>
+Architecture: all
+Source: latex-ucs
+Version: 20040307-2
+Depends: latex-ucs
+Description: Full unicode character names for latex-ucs
+ latex-ucs provides support for using UTF-8 as input encoding in LaTeX
+ documents.
+ .
+ This package provides the full names of unicode characters in LaTeX
+ error messages when using latex-ucs.
+
+Package: g++
+Status: install ok installed
+Priority: standard
+Section: devel
+Installed-Size: 8
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-defaults (1.17)
+Version: 4:3.3.4-2
+Provides: c++-compiler
+Depends: cpp (>= 4:3.3.4-2), gcc (>= 4:3.3.4-2), g++-3.3 (>= 1:3.3.4-1), gcc-3.3 (>= 1:3.3.4-1)
+Description: The GNU C++ compiler
+ This is the GNU C++ compiler, a fairly portable optimizing compiler for C++.
+ .
+ This is a dependency package providing the default GNU C++ compiler.
+
+Package: latex-ucs-doc
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 433
+Maintainer: Martin Pitt <mpitt@debian.org>
+Architecture: all
+Source: latex-ucs
+Version: 20040307-2
+Description: Documentation for latex-ucs
+ Documentation for package latex-ucs, which provides support for UTF-8
+ encoded LaTeX documents.
+ .
+ The documentation is installed in /usr/share/doc/latex-ucs-doc/.
+
+Package: e2fslibs
+Status: install ok installed
+Priority: required
+Section: libs
+Installed-Size: 176
+Maintainer: Theodore Y. Ts'o <tytso@mit.edu>
+Architecture: i386
+Source: e2fsprogs
+Version: 1.35-6
+Replaces: e2fsprogs (<< 1.34-1)
+Provides: libext2fs2, libe2p2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: The EXT2 filesystem libraries
+ The ext2fs and e2p libraries are used by programs that directly access
+ EXT2 filesystems from usermode programs. The EXT2 filesystem is very often
+ used as the default filesystem on Linux systems. Various system programs
+ that use libext2fs include e2fsck, mke2fs, tune2fs, etc. Programs that use
+ libe2p include dumpe2fs, chattr, and lsattr.
+
+Package: kernel-image-2.6.2-1-686
+Status: deinstall ok config-files
+Priority: optional
+Section: base
+Installed-Size: 43260
+Maintainer: Herbert Xu <herbert@debian.org>
+Source: kernel-image-2.6.2-i386
+Version: 2.6.2-2
+Config-Version: 2.6.2-2
+Provides: kernel-image, kernel-image-2.6
+Depends: initrd-tools (>= 0.1.53), coreutils | fileutils (>= 4.0), module-init-tools (>= 0.9.13)
+Suggests: lilo (>= 19.1), fdutils, kernel-doc-2.6.2
+Description: Linux kernel image for version 2.6.2 on PPro/Celeron/PII/PIII/PIV.
+ This package contains the Linux kernel image for version 2.6.2 on
+ Pentium Pro/Celeron/Pentium II/Pentium III/Pentium IV,
+ the corresponding System.map file, and the modules built by the packager.
+ It also contains scripts that try to ensure that the system is not left in
+ a unbootable state after an update.
+ .
+ If you wish to update a bootdisk, or to use a bootloader to make
+ installing and using the image easier, we suggest you install the latest
+ fdutils (for formatting a floppy to be used as boot disk), and LILO, for a
+ powerful bootloader. Of course, both these are optional.
+ .
+ Kernel image packages are generally produced using kernel-package,
+ and it is suggested that you install that package if you wish to
+ create a custom kernel from the sources.
+
+Package: libg2c0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 116
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-3.3
+Version: 1:3.3.4-11
+Depends: gcc-3.3-base, libc6 (>= 2.3.2.ds1-4)
+Description: Runtime library for GNU Fortran 77 applications
+ Library needed for GNU Fortran 77 applications linked against the
+ shared library.
+
+Package: kdeartwork-theme-icon
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 31100
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: all
+Source: kdeartwork
+Version: 4:3.2.3-2
+Replaces: kdeartwork-theme-desktop (<= 4:3.1.2-1)
+Recommends: kdesktop, kicker
+Conflicts: kdeartwork-theme-desktop (<= 4:3.1.2-1)
+Description: icon themes released with KDE
+ This package contains additional icon themes that come with the official
+ KDE release. Icon themes can be used to customise the appearance of
+ standard icons throughout KDE. They can be applied using the icon manager
+ in the KDE Control Centre.
+ .
+ This package is part of the KDE artwork module.
+
+Package: ruby1.8
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 188
+Maintainer: akira yamada <akira@debian.org>
+Architecture: i386
+Version: 1.8.1+1.8.2pre2-3
+Depends: libc6 (>= 2.3.2.ds1-4), libruby1.8 (>= 1.8.1+1.8.2pre2-3)
+Suggests: ruby1.8-examples
+Description: Interpreter of object-oriented scripting language Ruby 1.8
+ Ruby is the interpreted scripting language for quick and easy
+ object-oriented programming. It has many features to process text
+ files and to do system management tasks (as in perl). It is simple,
+ straight-forward, and extensible.
+ .
+ This package provides version 1.8 series of Ruby.
+
+Package: liblogfile-rotate-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 56
+Maintainer: Scott K. Ellis <scott@debian.org>
+Architecture: all
+Version: 1.04-1.2
+Depends: perl (>= 5.6.0-16)
+Description: Perl module to rotate logfiles.
+ Logfile::Rotate provides methods to rename and save several versions of
+ your logfiles, optionally compressing them after renaming them.
+
+Package: ruby1.6
+Status: purge ok not-installed
+Priority: optional
+Section: interpreters
+
+Package: libeel2-2
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 716
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Source: eel2
+Version: 2.6.2-1
+Config-Version: 2.6.2-1
+Depends: libart-2.0-2 (>= 2.3.16), libatk1.0-0 (>= 1.6.0), libbonobo2-0 (>= 2.6.0), libbonoboui2-0 (>= 2.5.4), libc6 (>= 2.3.2.ds1-4), libgail-common (>= 1.4.1), libgail17 (>= 1.4.1), libgconf2-4 (>= 2.6.1), libglade2-0 (>= 1:2.3.6), libglib2.0-0 (>= 2.4.1), libgnome2-0 (>= 2.6.0), libgnomecanvas2-0 (>= 2.6.0), libgnomeui-0 (>= 2.6.0), libgnomevfs2-0 (>= 2.6.0), libgtk2.0-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), liborbit2 (>= 1:2.10.0), libpango1.0-0 (>= 1.4.0), libpopt0 (>= 1.7), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.10), libxrender1, zlib1g (>= 1:1.2.1), libeel2-data
+Description: Eazel Extensions Library (for GNOME2)
+ The Eazel Extensions Library is a collection of widgets and extensions
+ to many modules of the GNOME platform. These widgets and extensions
+ were developed by hackers working on Nautilus. For the duration of
+ the Nautilus 1.0 development cycle, the code was internal to Nautilus
+ and its components.
+ .
+ This package for GNOME2
+
+Package: phpgroupware-admin
+Status: purge ok not-installed
+Priority: optional
+Section: web
+
+Package: xfonts-scalable
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 1428
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: all
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xfntscl
+Provides: xfntscl
+Depends: xutils (>> 4.0.3)
+Suggests: xfs | xserver
+Conflicts: xfntscl, xbase-clients (<< 4.0)
+Conffiles:
+ /etc/X11/fonts/Speedo/xfonts-scalable.scale 86aa572226cb6adbf9559fdd0c032402
+ /etc/X11/fonts/Type1/xfonts-scalable.scale 74288b03bd10bed59633f64e820ecf5e
+Description: scalable fonts for X
+ xfonts-scalable provides fonts that can be drawn at any size by the X server
+ or font server without loss of quality. In most cases it is desirable to
+ have the X font server (xfs) and/or an X server installed to make the fonts
+ available to X clients.
+ .
+ This package is missing three fonts from the XFree86 source archives
+ because the license terms on the fonts do not meet the Debian Free
+ Software Guidelines; they are the Type1 fonts Adobe Utopia, IBM Courier,
+ and Bigelow & Holmes (B&H) Luxi.
+ .
+ This package requires the xutils package to prepare the font directories
+ for use by an X server or X font server.
+
+Package: libfam-dev
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 144
+Maintainer: Joerg Wendland <joergland@debian.org>
+Source: fam
+Version: 2.7.0-5
+Depends: libfam0c102 (= 2.7.0-5)
+Description: client library to control the FAM daemon - development files
+ FAM monitors files and directories, notifying interested applications
+ of changes.
+ .
+ This package provides header files and static libraries to allow the
+ development of programs that interface FAM for file monitoring.
+
+Package: libarts1-audiofile
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 148
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdemultimedia
+Version: 4:3.3.0-1
+Depends: libarts1 (>= 1.3.0), libasound2 (>> 1.0.5), libaudio2, libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.1), libjack0.80.0-0 (>= 0.98.1), libmad0 (>= 0.15.1b), libogg0 (>= 1.1.0), libstdc++5 (>= 1:3.3.4-1), libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libxt6 | xlibs (>> 4.1.0)
+Description: audiofile (aRts plugin)
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ audiofile arts plugin.
+ .
+ This package is part of the official KDE multimedia module.
+
+Package: overkill-data
+Status: purge ok not-installed
+Priority: optional
+Section: games
+Architecture: all
+
+Package: xfonts-100dpi
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 5428
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: all
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xfnt100
+Provides: xfnt100
+Depends: xutils (>> 4.0.3)
+Suggests: xfs | xserver
+Conflicts: xfnt100, xbase-clients (<< 4.0)
+Conffiles:
+ /etc/X11/fonts/100dpi/xfonts-100dpi.alias 85bebd6ca213aa656c301a72eb4397cb
+Description: 100 dpi fonts for X
+ xfonts-100dpi provides a set of bitmapped fonts at 100 dots per inch. In
+ most cases it is desirable to have the X font server (xfs) and/or an X server
+ installed to make the fonts available to X clients.
+ .
+ This package contains only fonts in the ISO 10646-1 and ISO 8859-1
+ encodings, to conserve disk space. For other encodings, see the
+ xfonts-100dpi-transcoded package.
+ .
+ This package and xfonts-75dpi provide the same set of fonts, rendered at
+ different resolutions; only one or the other is necessary, but both may be
+ installed. xfonts-100dpi may be more suitable for large monitors and/or
+ large screen resolutions (over 1024x768).
+ .
+ This package requires the xutils package to prepare the font directories for
+ use by an X server or X font server.
+
+Package: libnews-nntpclient-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 112
+Maintainer: Marc 'HE' Brockschmidt <he@debian.org>
+Architecture: all
+Version: 0.37-5
+Depends: perl (>= 5.6.0-16)
+Description: News::NNTPClient, Perl support for accessing NNTP servers
+ News::NNTPClient allows you full access to NNTP (aka news or NetNews)
+ servers from within Perl applications. With it you can write applications
+ that post articles to NNTP servers, download articles, etc.
+
+Package: ktimer
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 128
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeutils
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE timer
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ This is a timer application for KDE. It allows you to execute commands after
+ a certain amount of time. It allows for looping commands as well as delaying
+ the execution of a command.
+ .
+ This package is part of the official KDE utils module.
+
+Package: libcppunit-dev
+Status: install ok not-installed
+Priority: optional
+Section: devel
+Version: 1.10.0-3
+
+Package: dictionaries-common
+Status: install ok installed
+Priority: standard
+Section: text
+Installed-Size: 499
+Maintainer: Agustin Martin Domingo <agmartin@debian.org>
+Architecture: all
+Version: 0.22.53
+Replaces: openoffice.org-updatedicts
+Provides: openoffice.org-updatedicts
+Depends: perl (>= 5.6.0-16), debconf (>= 0.5)
+Suggests: ispell, emacsen-common, jed-extra
+Conflicts: ispell (<= 3.1.20.0-1), miscfiles (<< 1.3-2.1), iamerican (<= 3.1.20.0-1), ibrazilian (<< 2.4-5.1), ibritish (<= 3.1.20.0-1), ibulgarian (<= 2.0-2), icatalan (<= 0.1-4), iczech (<= 20020628-1), idanish (<< 1.4.22-2.1), idutch (<= 1:0.1e-20), iesperanto (<< 2.1.2000.02.25-6), ifaroese (<= 0.1.16-2), ifinnish (<< 0.7-3.4), ifinnish-large (<< 0.7-3.4), ifinnish-small (<< 0.7-3.4), ifrench (<= 1.4-13), ifrench-gut (<= 1:1.0-9), igerman, ihungarian (<= 0.84-1), iitalian (<< 2.20-1.2), ingerman (<< 20010414-2), inorwegian (<< 2.0-6.1), ipolish (<< 20011004-2.1), iportuguese (<< 19980611-8), irussian (<= 0.99f0-1), ispanish (<< 1.7-5), ispell-ga, iswedish (<= 1.4.2), wbritish (<= 3.1.20.0-1), wbulgarian (<= 2.0-2), wcatalan (<= 0.1-4), wdanish (<< 1.4.22-2.1), wdutch (<= 1:0.1e-20), wenglish (<= 2.0-2), wfaroese (<= 0.1.16-2), wfinnish (<< 0.7-3.4), wfrench (<= 1.0-11), wgerman, witalian (<= 1.6), wnorwegian (<< 2.0-6.1), wngerman (<< 20010414-2), wpolish (<< 20011004-2.1), wspanish (<= 1.0.11.1), wswedish (<= 1.4.2), openoffice.org-updatedicts
+Conffiles:
+ /etc/emacs/site-start.d/50dictionaries-common.el ee3b585c40541f9f95008b7d412754d1
+Description: Common utilities for spelling dictionary tools
+ These are utilities shared by all ispell, myspell and wordlist
+ dictionaries, including support for some tools that use ispell
+ (like emacsen, jed and mutt). More info about naming conventions and
+ availability of those dictionaries in the README file.
+ .
+ Maintainers should install dictionaries-common-dev as well, and read its
+ documentation.
+
+Package: xaw3dg
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 488
+Maintainer: Francesco Paolo Lovergine <frankie@debian.org>
+Architecture: i386
+Source: xaw3d
+Version: 1.5+E-7
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0)
+Conflicts: axe (<< 6.1.2-2), xaw3d (<= 1.3-6), xfig (<< 1:3.2.4-rel-9), gv (<< 1:3.5.8-30.1)
+Description: Xaw3d widget set
+ Xaw3d is a set of 3-D widgets based on the Athena Widget set, which
+ adds a three dimensional appearance on some of the widgets of X11
+ applications linked with this library.
+ .
+ Please note that this package no longer adds a three dimensional
+ appearance on applications dynamically linked against libXaw.
+
+Package: postfix-doc
+Status: install ok installed
+Priority: extra
+Section: doc
+Installed-Size: 2080
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: all
+Source: postfix
+Version: 2.1.4-5
+Replaces: postfix (<< 0.0.20020113), postfix-tls
+Suggests: postfix
+Description: Postfix documentation
+ Postfix is Wietse Venema's mail transport agent that started life as an
+ alternative to the widely-used Sendmail program. Postfix attempts to
+ be fast, easy to administer, and secure, while at the same time being
+ sendmail compatible enough to not upset existing users. Thus, the outside
+ has a sendmail-ish flavor, but the inside is completely different.
+ .
+ This package provides documentation for Postfix.
+
+Package: libnet-server-perl
+Status: install ok installed
+Priority: optional
+Section: perl
+Installed-Size: 396
+Maintainer: Luca Filipozzi <lfilipoz@debian.org>
+Architecture: all
+Version: 0.85-3
+Depends: libio-multiplex-perl, perl (>= 5.6.0-16)
+Suggests: libio-socket-ssl-perl
+Description: An extensible, general perl server engine
+ Net::Server is an extensible, general perl server engine that combines the
+ good properties from Net::Daemon, NetServer::Generic, and Net::FTPServer;
+ and borrows various concepts from the Apache webserver.
+ .
+ Features include:
+ .
+ * Single Server Mode
+ * Inetd Server Mode
+ * Preforking Simple Mode (PreForkSimple)
+ * Preforking Managed Mode (PreFork)
+ * Forking Mode
+ * Multiplexing Mode using a single process
+ * Multi port accepts on Single, Preforking, and Forking modes
+ * Simultaneous accept/recv on tcp, udp, and unix sockets
+ * Safe signal handling in Fork/PreFork avoids perl signal trouble
+ * User customizable hooks
+ * Chroot ability after bind
+ * Change of user and group after bind
+ * Basic allow/deny access control
+ * Customized logging (choose Syslog, log_file, or STDERR)
+ * HUP able server (clean restarts via sig HUP)
+ * Dequeue ability in all Fork and PreFork modes.
+ * Taint clean
+ * Written in Perl
+ * Protection against buffer overflow
+ * Clean process flow
+ * Extensibility
+
+Package: lintian
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 1004
+Maintainer: Debian Lintian Maintainers <lintian-maint@debian.org>
+Architecture: all
+Version: 1.23.2
+Depends: perl, libdigest-md5-perl | perl (>> 5.8), file, binutils, diffstat (>= 1.27-1), man-db (>= 2.3.20-1), gettext
+Suggests: binutils-multiarch
+Conffiles:
+ /etc/lintianrc caded1749ff8d0624720c64be0e79124
+Description: Debian package checker
+ Lintian dissects Debian packages and reports bugs and policy
+ violations. It contains automated checks for many aspects of Debian
+ policy as well as some checks for common errors.
+ .
+ It uses an archive directory, called laboratory, in which it stores
+ information about the packages it examines. It can keep this
+ information between multiple invocations in order to avoid repeating
+ expensive data-collection operations. This also possible to check the
+ complete Debian archive for bugs, in a reasonable time.
+ .
+ This package is useful for all people who want to check Debian
+ packages for compliance with Debian policy. Every Debian maintainer
+ should check packages with this tool before uploading them to the
+ archive.
+ .
+ This version of Lintian is calibrated for policy version 3.6.1.
+
+Package: kscd
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 696
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdemultimedia
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libartsc0 (>= 1.3.0), libasound2 (>> 1.0.5), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), libidn11, libkcddb1 (>= 4:3.3.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE based cd player
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This is a KDE based cd player.
+ .
+ This package is part of the official KDE multimedia module.
+
+Package: cupsys-client
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 300
+Maintainer: Kenshi Muto <kmuto@debian.org>
+Architecture: i386
+Source: cupsys
+Version: 1.1.20final+rc1-5
+Replaces: cupsys (<= 1.1.18-3)
+Depends: libc6 (>= 2.3.2.ds1-4), libcupsys2-gnutls10 (>= 1.1.20final-1), zlib1g (>= 1:1.2.1)
+Recommends: cupsys-bsd
+Suggests: cupsys, kdeprint, gtklp, cupsys-pt, xpp
+Conflicts: lprng
+Description: Common UNIX Printing System(tm) - client programs (SysV)
+ The Common UNIX Printing System (or CUPS(tm)) is a printing system and
+ general replacement for lpd and the like. It supports the Internet
+ Printing Protocol (IPP), and has its own filtering driver model for
+ handling various document types.
+ .
+ This package provides the System V style print client programs.
+ .
+ The terms "Common UNIX Printing System" and "CUPS" are trademarks of
+ Easy Software Products (www.easysw.com), and refer to the original
+ source packages from which these packages are made.
+
+Package: samba-common
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 4456
+Maintainer: Eloy A. Paris <peloy@debian.org>
+Architecture: i386
+Source: samba
+Version: 3.0.7-1
+Replaces: samba (<< 2.999+3.0.alpha21-4)
+Depends: debconf, libpam-modules, libc6 (>= 2.3.2.ds1-4), libcomerr2 (>= 1.33-3), libkrb53 (>= 1.3.2), libldap2 (>= 2.1.17-1), libpopt0 (>= 1.7)
+Conffiles:
+ /etc/samba/gdbcommands 898c523d1c11feeac45538a65d00c838
+ /etc/dhcp3/dhclient-enter-hooks.d/samba 301a7d6e50db3921c03371b5af133983
+ /etc/pam.d/samba ff2488324854f7b1e892bb0df062d5f0
+Description: Samba common files used by both the server and the client
+ The Samba software suite is a collection of programs that
+ implements the SMB protocol for unix systems, allowing you to serve
+ files and printers to Windows, NT, OS/2 and DOS clients. This protocol
+ is sometimes also referred to as the LanManager or NetBIOS protocol.
+ .
+ This package contains the common files that are used by both the server
+ (provided in the samba package) and the client (provided in the smbclient
+ package).
+
+Package: apache
+Status: install ok installed
+Priority: optional
+Section: web
+Installed-Size: 808
+Maintainer: Debian Apache Maintainers <debian-apache@lists.debian.org>
+Architecture: i386
+Version: 1.3.31-6
+Replaces: apache-modules
+Provides: httpd-cgi, httpd
+Depends: libc6 (>= 2.3.2.ds1-4), libdb4.2, libexpat1 (>= 1.95.6), mime-support, apache-common (>= 1.3.31-6), apache-common (<< 1.3.32-0), perl (>= 5.8.4-2), logrotate (>= 3.5.4-1), dpkg (>> 1.9.0), libmagic1, debconf
+Suggests: apache-doc
+Conflicts: apache-modules, libapache-mod-perl (<= 1.17-1), jserv (<= 1.1-3)
+Conffiles:
+ /etc/init.d/apache 7232c1eaeefdeadea724e84427c467d9
+ /etc/logrotate.d/apache a21425239a54dfb308dcd503df9cdac4
+Description: Versatile, high-performance HTTP server
+ The most popular server in the world, Apache features a modular
+ design and supports dynamic selection of extension modules at runtime.
+ Some of its strong points are its range of possible customization,
+ dynamic adjustment of the number of server processes, and a whole
+ range of available modules including many authentication mechanisms,
+ server-parsed HTML, server-side includes, access control, CERN httpd
+ metafiles emulation, proxy caching, etc. Apache also supports multiple
+ virtual homing.
+ .
+ Separate Debian packages are available for PHP, mod_perl, Java
+ Servlet support, Apache-SSL, and other common extensions. More
+ information is available at http://www.apache.org/.
+
+Package: libxaw7-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 1180
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlib6g-dev (<< 4.0), libxaw-dev (<< 4.0.3), libxaw6-dev
+Provides: libxpm4-dev
+Depends: libxaw7 (= 4.3.0.dfsg.1-7), x-dev, libxmu-dev, libxt-dev, libsm-dev, libice-dev, libxext-dev, libx11-dev, libxpm-dev, libc6-dev | libc-dev
+Conflicts: xlib6g-dev (<< 4.0), libxaw-dev (<< 4.0.3), libxaw6-dev
+Description: X Athena widget set library development files
+ Xaw header files, a static library, and a manual page documenting new
+ features in version 7 of the Athena widget library are provided by this
+ package.
+ .
+ See the libxaw7 package for further information.
+
+Package: exuberant-ctags
+Status: install ok installed
+Priority: optional
+Section: editors
+Installed-Size: 232
+Maintainer: Colin Watson <cjwatson@debian.org>
+Architecture: i386
+Version: 1:5.5.4-1
+Provides: ctags
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: vim | nvi | elvis | vile | emacsen
+Description: build tag file indexes of source code definitions
+ ctags parses source code and produces a sort of index mapping
+ the names of significant entities (e.g. functions, classes,
+ variables) to the location where that entity is defined. This
+ index is used by editors like vi and emacsen to allow moving to
+ the definition of a user-specified entity.
+ .
+ Exuberant Ctags supports all possible C language constructions
+ and multiple other languages such as assembler, AWK, ASP, BETA,
+ Bourne/Korn/Z shell, C++, COBOL, Eiffel, Fortran, Java, Lisp,
+ Lua, Makefile, Pascal, Perl, PHP, Python, REXX, Ruby, S-Lang,
+ Scheme, Tcl, Verilog, Vim and YACC.
+
+Package: kdepim-wizards
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 360
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Depends: kaddressbook (>= 4:3.3.0), kdelibs4 (>= 4:3.3.0), knotes (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkcal2 (>= 4:3.3.0), libkdepim1 (>= 4:3.3.0), libkpimidentities1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Suggests: egroupware
+Description: KDE server configuration wizards
+ This package contains KDE-based wizards for configuring eGroupware,
+ Kolab, and SUSE Linux Openexchange servers.
+ .
+ This package is part of the official KDE pim module.
+
+Package: gnome-libs-data
+Status: deinstall ok config-files
+Priority: optional
+Section: x11
+Installed-Size: 1204
+Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
+Architecture: all
+Source: gnome-libs
+Version: 1.4.2-19
+Config-Version: 1.4.2-19
+Replaces: gnome-bin (<= 1.0.11-0), libgnome0, libgnome-dev (<= 1.2.4-3)
+Depends: gnome-bin
+Conffiles:
+ /etc/paper.config fb5c2fbfea15b991fbf09c0dbc1326b4
+ /etc/mime-magic cd35d6c91f13fc4ce8d32cd49ca724ce
+ /etc/sound/events/gnome.soundlist c50c05e863e3617881bb25000f0a81b0
+ /etc/sound/events/gtk-events.soundlist e17d6d57f3f9f31a1d57eef3d148a161
+Description: Data for GNOME libraries
+ GNOME is a project to build a complete, user-friendly desktop based
+ entirely on free software.
+ .
+ This package contains shared data used by the GNOME libraries,
+ such as i18n messages and pixmaps.
+
+Package: xlibmesa3-gl
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 10924
+Maintainer: Branden Robinson <branden@debian.org>
+Source: xfree86
+Version: 4.2.1-11
+Config-Version: 4.2.1-11
+Replaces: mesag3, xlibmesa3 (<< 4.2.1-5)
+Provides: libgl1
+Depends: libc6 (>= 2.3.2-1), xlibs (>> 4.1.0)
+Conflicts: libgl1
+Description: Mesa 3D graphics library [XFree86]
+ Mesa is a 3D graphics library which presents an API intended to be compatible
+ with OpenGL. XFree86 maintains its own version of the Mesa library (which is
+ regularly resynchronized with the official one) to permit development of the
+ XFree86 X server's Direct Rendering Infrastructure (DRI), which makes the 3D
+ acceleration features of many modern video cards available to X client
+ programmers.
+ .
+ Chipset-specific DRI modules, if available for your machine architecture,
+ are provided in this package. (Unlike the modules in the xserver-xfree86
+ package, the DRI modules are loaded by the Mesa library, not by the X server
+ itself.)
+
+Package: libggi-target-x
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+
+Package: wget
+Status: install ok installed
+Priority: optional
+Section: web
+Installed-Size: 1456
+Maintainer: Noèl Köthe <noel@debian.org>
+Version: 1.9.1-4
+Depends: libc6 (>= 2.3.2.ds1-4), libssl0.9.7
+Conflicts: wget-ssl
+Conffiles:
+ /etc/wgetrc 3b772308b2b8a53a9eec78fff49c90ef
+Description: retrieves files from the web
+ Wget is a network utility to retrieve files from the Web
+ using http and ftp, the two most widely used Internet
+ protocols. It works non-interactively, so it will work in
+ the background, after having logged off. The program supports
+ recursive retrieval of web-authoring pages as well as ftp
+ sites -- you can use wget to make mirrors of archives and
+ home pages or to travel the Web like a WWW robot.
+ .
+ Wget works particularly well with slow or unstable connections
+ by continuing to retrieve a document until the document is fully
+ downloaded. Re-getting files from where it left off works on
+ servers (both http and ftp) that support it. Both http and ftp
+ retrievals can be time stamped, so wget can see if the remote
+ file has changed since the last retrieval and automatically
+ retrieve the new version if it has.
+ .
+ Wget supports proxy servers; this can lighten the network load,
+ speed up retrieval, and provide access behind firewalls.
+ .
+ http://www.gnu.org/software/wget/
+
+Package: libxml-simple-perl
+Status: purge ok not-installed
+Priority: optional
+Section: interpreters
+
+Package: base-passwd
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 132
+Maintainer: Colin Watson <cjwatson@debian.org>
+Architecture: i386
+Version: 3.5.8
+Replaces: base
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Debian base system master password and group files
+ These are the canonical master copies of the user database files
+ (/etc/passwd and /etc/group), containing the Debian-allocated user and
+ group IDs. The update-passwd tool is provided to keep the system databases
+ synchronized with these master files.
+
+Package: libsqlite0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 424
+Maintainer: Andreas Rottmann <rotty@debian.org>
+Architecture: i386
+Source: sqlite
+Version: 2.8.15-2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Pre-Depends: debconf (>= 0.2.17)
+Description: SQLite shared library
+ SQLite is a C library that implements an SQL database engine.
+ Programs that link with the SQLite library can have SQL database
+ access without running a separate RDBMS process.
+
+Package: at
+Status: install ok installed
+Priority: important
+Section: admin
+Installed-Size: 204
+Maintainer: Ryan Murray <rmurray@debian.org>
+Version: 3.1.8-11
+Depends: libc6 (>= 2.2.4-4), mail-transport-agent
+Conffiles:
+ /etc/at.deny 8cb7e7632119dc26115436938efd2522
+ /etc/init.d/atd 02b656c0a615d92f438ed69a08787122
+Description: Delayed job execution and batch processing
+ At and batch read shell commands from standard input
+ storing them as a job to be scheduled for execution in the
+ future.
+ .
+ Use
+ at to run the job at a specified time
+ batch to run the job when system load levels permit
+
+Package: ipchains
+Status: install ok installed
+Priority: important
+Section: base
+Installed-Size: 208
+Maintainer: Lenart Janos <ocsi@debian.org>
+Version: 1.3.10-15
+Replaces: netbase (<< 4.00)
+Depends: libc6 (>= 2.2.4-4), debconf
+Suggests: doc-linux-html | doc-linux-text
+Description: Network firewalling for Linux 2.2.x
+ This package allows you to control how programs on your system may access
+ the network, and how programs on other systems may access yours via the
+ network.
+ .
+ This package fully replaces ipfwadm by wrapping it for old fashioned
+ users and for old scripts.
+ .
+ Firewalling HOWTO can be found in doc-linux-* package.
+ .
+ Linux ipchains is a rewrite of the Linux IPv4 firewalling code (which
+ was mainly stolen from BSD) and a rewrite of ipfwadm, which was a
+ rewrite of BSD's ipfw, I believe. It is required to administer the IP
+ packet filters in Linux kernel versions 2.1.102 and above.
+
+Package: bind9-host
+Status: install ok installed
+Priority: standard
+Section: net
+Installed-Size: 176
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Source: bind9
+Version: 1:9.2.3+9.2.4-rc7-1
+Replaces: dnsutils (<< 1:9.0.0)
+Provides: host
+Depends: libc6 (>= 2.3.2.ds1-4), libdns11, libisc7, libssl0.9.7
+Conflicts: host, dnsutils (<< 1:9.0.0)
+Description: Version of 'host' bundled with BIND 9.X
+ This package provides the 'host' program in the form that is bundled with
+ the BIND 9.X sources. This version differs from the one provided in the
+ package called host, which is from NIKHEF, and has a similar but different
+ set of features/options.
+
+Package: overkill
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 2728
+Maintainer: Joachim Breitner <nomeata@debian.org>
+Architecture: i386
+Version: 0.16-6
+Config-Version: 0.16-6
+Replaces: overkill-data
+Depends: libc6 (>= 2.3.2.ds1-4), libx11-6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0)
+Conflicts: overkill-data
+Description: bloody 2D action deathmatch-like game in ascii-art
+ Throw away Doom, Quake and Duke Nukem - 0verkill
+ comes. Now you don't even need graphic mode if you
+ wanna take a bloody deathmatch with your friends.
+
+Package: swh-plugins
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 1620
+Maintainer: Anand Kumria <wildfire@progsoc.org>
+Architecture: i386
+Version: 0.4.7-1
+Provides: ladspa-plugin
+Depends: fftw3, libc6 (>= 2.3.2.ds1-4)
+Description: Steve Harris's LADSPA plugins
+ Steve Harris has written a large number of plugins for LADSPA
+ compatible hosts (e.g. GLAME, Sweep and ecasound). The plugins
+ available are:
+ .
+ amp, fast overdrive, overdrive (with colourisation), comb filter,
+ waveshaper, ringmod, divider, diode, decliper, pitch scaler,
+ 16 band equaliser, sinus wavewrapper, hermes filter, chorus,
+ flanger, decimater, oscillator, gverb, phasers, harmonic generators,
+ surround encoders and more.
+ .
+ Further information about these plugins is available at
+ <URL: http://plugin.org.uk/>
+
+Package: kdelibs-bin
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 2560
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdelibs
+Version: 4:3.3.0-1.1
+Replaces: kcontrol (<< 4:3.3.0), kdelibs-dev (<< 4:3.0.0), kdelibs3-bin (<< 4:3.0.0), kdelibs3-cups (<< 4:3.0.0), konqueror (<< 4:3.2.0), korganizer (<< 4:3.3.0), libkmid (<< 4:3.0.0), libkmid-alsa (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libbz2-1.0, libc6 (>= 2.3.2.ds1-4), libcupsys2-gnutls10 (>= 1.1.20final-1), libfam0c102, libfontconfig1 (>= 2.2.1), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxml2 (>= 2.6.11), libxrender1, libxslt1.1 (>= 1.1.8), zlib1g (>= 1:1.2.1), menu-xdg, netpbm, perl-suid, python
+Conflicts: kdelibs-dev (<< 4:3.0.0), kdelibs3-bin (<< 4:3.0.0), kdelibs3-cups (<< 4:3.0.0), libkmid (<< 4:3.0.0), libkmid-alsa (<< 4:3.0.0)
+Conffiles:
+ /etc/kde3/khotnewstuffrc 51e9326b1b250f874f32d78a164c851e
+Description: KDE core binaries
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This package contains all the binaries with are used by KDE
+ applications.
+ .
+ You need these binaries to run kde applications.
+
+Package: kivio-data
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 7276
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: all
+Source: koffice
+Version: 1:1.3.2-2
+Replaces: kivio (<< 1:1.3.2)
+Recommends: kivio (= 1:1.3.2-2)
+Description: data files for Kivio flowcharting program
+ This package contains architecture-independent data files for Kivio,
+ the flowcharting program shipped with the KDE Office Suite.
+ .
+ See the kivio package for further information.
+ .
+ This package is part of the KDE Office Suite.
+
+Package: rafkill-data
+Status: purge ok not-installed
+Priority: optional
+Section: games
+
+Package: libxml-namespacesupport-perl
+Status: purge ok not-installed
+Priority: optional
+Section: interpreters
+
+Package: dict-jargon
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 701
+Maintainer: Robert D. Hilliard <hilliard@debian.org>
+Architecture: all
+Version: 4.4.4-5
+Depends: dictd | dict-server
+Description: Jargon File 4.4.4
+ This package contains The On-Line Hacker Jargon File, version 4.4.4,
+ 14 Aug 2003, formatted for use by the dictionary server in the dictd
+ package.
+ .
+ This package will be of limited use without the server found in the
+ dictd package.
+
+Package: kalarm
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 1484
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Depends: kdelibs4 (>= 4:3.3.0), libarts1 (>= 1.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkcal2 (>= 4:3.3.0), libkdenetwork2 (>= 4:3.3.0), libkdepim1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0)
+Description: KDE alarm message and command scheduler
+ KAlarm is a personal alarm message, command and email scheduler. It lets you
+ set up personal alarm messages which pop up on the screen at the chosen
+ time, or you can schedule commands to be executed or emails to be sent.
+ .
+ This package is part of the official KDE pim module.
+
+Package: libexif9
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 252
+Maintainer: christophe barbe <christophe@debian.org>
+Source: libexif
+Version: 0.5.12-1
+Config-Version: 0.5.12-1
+Depends: libc6 (>= 2.3.2-1)
+Description: The EXIF library allows you to parse an EXIF file
+ Most digital cameras produce EXIF files, which are JPEG files with
+ extra tags that contain information about the image. The EXIF library
+ allows you to parse an EXIF file and read the data from those tags.
+
+Package: librsvg2-2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 252
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Source: librsvg2
+Version: 2.7.2-5
+Depends: libart-2.0-2 (>= 2.3.16), libbonobo2-0 (>= 2.6.2), libc6 (>= 2.3.2.ds1-4), libcroco3 (>= 0.6.0), libglib2.0-0 (>= 2.4.1), libgnomevfs2-0 (>= 2.6.0), libgsf-1 (>= 1.10.0), libgtk2.0-0 (>= 2.4.4), liborbit2 (>= 1:2.10.0), libpango1.0-0 (>= 1.4.0), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1), librsvg2-common (= 2.7.2-5)
+Recommends: librsvg2-bin
+Conflicts: librsvg2-common (<< 2.6)
+Description: SAX-based renderer library for SVG files. (for GNOME2)
+ SAX-based renderer library for SVG files.
+ .
+ This package is for use with GNOME2.
+
+Package: ssh-krb5
+Status: deinstall ok config-files
+Priority: extra
+Section: net
+Installed-Size: 1600
+Maintainer: Sam Hartman <hartmans@debian.org>
+Architecture: i386
+Source: openssh-krb5
+Version: 3.6.1p2-6
+Config-Version: 3.6.1p2-6
+Provides: rsh-client, ssh
+Depends: libc6 (>= 2.3.2.ds1-4), libcomerr2 (>= 1.33-3), libkrb53 (>= 1.3.2), libpam0g (>= 0.76), libssl0.9.7, libwrap0, zlib1g (>= 1:1.2.1), debconf, adduser (>= 3.9), libpam-runtime (>= 0.76-14)
+Suggests: ssh-askpass, xbase-clients, dpkg (>= 1.8.3.1), dnsutils, rssh
+Conflicts: ssh, ssh-nonfree, ssh-socks, ssh2, sftp, rsh-client (<< 0.16.1-1)
+Conffiles:
+ /etc/ssh/ssh_config 0f0fb9d3738767b13be438aad8613ba3
+ /etc/ssh/moduli c67600310eb998d72dff1e98b0a9051e
+ /etc/init.d/ssh-krb5 88090ec03b7343e5830f7e994a219ad1
+ /etc/pam.d/ssh ef998fc1cb73802c8ca2b4de7f2f9f90
+ /etc/default/ssh a7ff8802959335d8de91e09c16f36deb
+Description: Secure rlogin/rsh/rcp replacement (OpenSSH with Kerberos)
+ This is the portable version of OpenSSH, a free implementation of
+ the Secure Shell protocol as specified by the IETF secsh working
+ group.
+ .
+ Ssh (Secure Shell) is a program for logging into a remote machine
+ and for executing commands on a remote machine.
+ It provides secure encrypted communications between two untrusted
+ hosts over an insecure network. X11 connections and arbitrary TCP/IP
+ ports can also be forwarded over the secure channel.
+ It is intended as a replacement for rlogin, rsh and rcp, and can be
+ used to provide applications with a secure communication channel.
+ .
+ This version of OpenSSH has been compiled with patches enabling
+ Kerberos authentication for protocol versions 1 and 2.
+ This package provides both the ssh client and the sshd server.
+
+Package: libexif5
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 112
+Maintainer: christophe barbe <barbe@ufies.org>
+Source: libexif
+Version: 0.5.0-1
+Depends: libc6 (>= 2.2.4-4)
+Description: The EXIF library allows you to parse an EXIF file
+ Most digital cameras produce EXIF files, which are JPEG files with
+ extra tags that contain information about the image. The EXIF library
+ allows you to parse an EXIF file and read the data from those tags.
+
+Package: equivs
+Status: install ok installed
+Priority: extra
+Section: admin
+Installed-Size: 132
+Maintainer: Fabio Rafael da Rosa <f2r@users.sourceforge.net>
+Architecture: all
+Version: 2.0.6-0.1
+Depends: perl | perl5, debhelper, dpkg-dev, devscripts, make, fakeroot
+Description: Circumvent Debian package dependencies
+ This package provides a tool to create Debian
+ packages that only contain dependency information.
+ .
+ If a package P is not installed on the system, packages
+ that depend on P cannot normally be installed. However,
+ if equivalent functionality to P is known to be installed,
+ this tool can be used to trick the Debian package management
+ system into believing that package P is actually installed.
+ .
+ Another possibility is creation of a meta package. When this
+ package contains a dependency as "Depends: a, b, c", then
+ installing this package will also select packages a, b and c.
+ Instead of "Depends", you can also use "Recommends:" or
+ "Suggests:" for less demanding dependency.
+ .
+ Please note that this is a crude hack and if thoughtlessly used,
+ it might possibly do damage to your packaging system. And please
+ note as well that using it is not the recommended way of dealing
+ with broken dependencies. Better file a bug report instead.
+
+Package: libnetpbm10
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 188
+Maintainer: Andreas Barth <aba@not.so.argh.org>
+Architecture: i386
+Source: netpbm-free
+Version: 2:10.0-7
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Shared libraries for netpbm
+ This package contains the shared libraries used by netpbm.
+
+Package: xfonts-konsole
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 48
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: all
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: konsole (<< 4:3.0.0)
+Depends: xutils (>> 4.0.3)
+Description: Fonts used by the KDE Konsole
+ These are the default fonts used by the Konsole
+ terminal emulator from KDE. You may also use them
+ with other X applications.
+ .
+ Two character cell (monospaced) fonts in the ISO 10646-1
+ encoding are provided: 8x8 and 8x16 one.
+ .
+ This package is part of the official KDE base module.
+
+Package: libgpgme6
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 176
+Maintainer: Jose Carlos Garcia Sogo <jsogo@debian.org>
+Architecture: i386
+Source: gpgme
+Version: 0.3.16-2
+Depends: libc6 (>= 2.3.2.ds1-4), gnupg (>= 1.2.0)
+Description: GPGME - GnuPG Made Easy
+ GPGME is a wrapper library which provides a C API to access some of the
+ GnuPG functions, such as encrypt, decrypt, sign, verify, ...
+
+Package: libboost-python1.30.2
+Status: deinstall ok config-files
+Priority: optional
+Section: python
+Installed-Size: 332
+Maintainer: Steve M. Robbins <smr@debian.org>
+Source: boost
+Version: 1.30.2-3
+Config-Version: 1.30.2-3
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.2-1), libstdc++5 (>= 1:3.3.2-1)
+Description: Boost Python Library
+ Part of the Boost.org library collection.
+ .
+ The Boost Python Library is used to quickly and easily export a C++
+ library to Python such that the Python interface is very similar to
+ the C++ interface. It is designed to be minimally intrusive on your
+ C++ design. In most cases, you should not have to alter your C++
+ classes in any way in order to use them with Boost.Python. The
+ system should simply "reflect" your C++ classes and functions into
+ Python. The major features of Boost.Python include support for:
+ Subclassing extension types in Python, Overriding virtual functions
+ in Python, Member function Overloading, Automatic wrapping of
+ numeric operators among others.
+ .
+ For more information on python library visit the project homepage
+ http://www.boost.org/libs/python/ .
+
+Package: libpaper-utils
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 80
+Maintainer: Stephen Zander <gibreel@debian.org>
+Architecture: i386
+Source: libpaper
+Version: 1.1.14-0.4
+Replaces: libpaperg (<< 1.1.9), libpaper1 (<< 1.1.10)
+Depends: libc6 (>= 2.3.2.ds1-4), libpaper1
+Description: Library for handling paper characteristics (utilities)
+ This package contains the configuration utility for managing a simple
+ library for use by programs needing to handle papers. It lets program
+ automatically recognize a lot of different papers with their
+ properties (actually their size). It also includes a program for
+ accessing paper information from shell scripts.
+
+Package: libpisock-dev
+Status: install ok installed
+Priority: extra
+Section: devel
+Installed-Size: 672
+Maintainer: Ludovic Rousseau <rousseau@debian.org>
+Architecture: i386
+Source: pilot-link
+Version: 0.11.8-10
+Replaces: pilot-link (<= 0.11.3-4)
+Depends: libpisock8, libpisock++0, libpisync0, libncurses-dev | libncurses5-dev
+Conflicts: libpisock3 (<= 0.9.5-pre5-1.1), pilot-link (<= 0.11.3-4)
+Description: Development files for communicating with a PalmOS PDA
+ libpisock-dev contains static libraries, header files and dynamic
+ libraries for compiling applications that communicate with a PalmOS
+ device.
+ .
+ You will need this package if you want to compile a C or C++ using
+ libpisock8, libpisock++0 or libpisync0.
+ .
+ Homepage: http://www.pilot-link.org/
+
+Package: nfs-kernel-server
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 196
+Maintainer: Chip Salzenberg <chip@debian.org>
+Architecture: i386
+Source: nfs-utils
+Version: 1:1.0.6-3
+Replaces: knfs, nfs-server
+Provides: knfs, nfs-server
+Depends: nfs-common (>= 1:0.3.3-3), debconf (>= 1.0), sysvinit (>= 2.80-1), libc6 (>= 2.3.2.ds1-4), libwrap0
+Conflicts: knfs, nfs-server
+Conffiles:
+ /etc/exports fa071681b8e7f4eff1d6f5c4f43bf1d8
+ /etc/default/nfs-kernel-server 226f8fdd37b11c59d73e2f378e22b0d0
+ /etc/init.d/nfs-kernel-server b7740fdb44dc4f563ff56a3f7bddce0c
+Description: Kernel NFS server support
+ Use this package if you have a fairly recent kernel (2.2.13 or better)
+ and you want to use the kernel-mode NFS server. The user-mode NFS
+ server in the "nfs-user-server" package is slower but more featureful
+ and easier to debug than the kernel-mode server.
+ .
+ Upstream: SourceForge project "nfs", CVS module nfs-utils.
+
+Package: libtest-unit-ruby1.8
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 408
+Maintainer: akira yamada <akira@debian.org>
+Architecture: all
+Source: ruby1.8
+Version: 1.8.1+1.8.2pre2-3
+Depends: libruby1.8 (>= 1.8.1+1.8.2pre2-3)
+Recommends: ruby1.8
+Description: unit-testing framework for Ruby 1.8
+ Test::Unit allows you to easily and flexibly write testing code for
+ your Ruby classes and modules. The general idea behind unit testing
+ is that you write a test method that makes certain assertions about
+ your code, working against a test fixture. A bunch of these test
+ methods are bundled up into a test suite and can be run any time the
+ developer wants. The results of a run are gathered in a test result
+ and displayed to the user through some UI. Test::Unit also has a
+ compatibility layer for RubyUnit, the old unit testing framework for
+ Ruby.
+ .
+ This package provides Test::Unit library for Ruby 1.8.
+
+Package: libcomerr2
+Status: install ok installed
+Priority: required
+Section: libs
+Installed-Size: 72
+Maintainer: Theodore Y. Ts'o <tytso@mit.edu>
+Architecture: i386
+Source: e2fsprogs
+Version: 1.35-6
+Replaces: e2fsprogs (<< 1.34-1)
+Provides: libcomerr-kth-compat
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: The Common Error Description library
+ libcomerr is an attempt to present a common error-handling mechanism to
+ manipulate the most common form of error code in a fashion that does not
+ have the problems identified with mechanisms commonly in use.
+
+Package: ksame
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 348
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: SameGame for KDE
+ KSame is a simple game. It's played by one player, so there is only
+ one winner :-) You play for fun and against the high score. It has
+ been inspired by SameGame, that is only famous on the Macintosh
+ platform.
+
+Package: raptor-utils
+Status: purge ok not-installed
+Priority: optional
+Section: text
+
+Package: ksim
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 1300
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeutils
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libsnmp5 (>= 5.1), libssl0.9.7, libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Conffiles:
+ /etc/kde3/ksim_panelextensionrc 4dc50d5c7d553c23860229dedb3d0cde
+Description: System information monitor
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ KSim is a plugin-based system information monitor.
+ .
+ This package is part of the official KDE utils module.
+
+Package: libraw1394-5
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 76
+Maintainer: Ben Collins <bcollins@debian.org>
+Source: libraw1394
+Version: 0.10.1-1
+Depends: debconf, makedev (>= 2.3.1-49), libc6 (>= 2.3.2-1)
+Description: library for direct access to IEEE 1394 bus (aka FireWire)
+ libraw1394 is the only supported interface to the kernel side raw1394
+ of the Linux IEEE-1394 subsystem, which provides direct access to the
+ connected 1394 buses to user space. Through libraw1394/raw1394,
+ applications can directly send to and receive from other nodes without
+ requiring a kernel driver for the protocol in question.
+
+Package: recode
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 644
+Maintainer: Santiago Vila <sanvila@debian.org>
+Version: 3.6-10
+Depends: libc6 (>= 2.2.4-4), librecode0 (>= 3.6)
+Description: Character set conversion utility
+ Free `recode' converts files between character sets and usages. When
+ exact transliterations are not possible, it may get rid of the
+ offending characters or fall back on approximations. This program
+ recognizes or produces nearly 300 different character sets and is able
+ to transliterate files between almost any pair. Most RFC 1345
+ character sets, and all `libiconv' character sets, are supported.
+
+Package: mawk
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 220
+Maintainer: James Troup <james@nocrew.org>
+Version: 1.3.3-11
+Provides: awk
+Pre-Depends: libc6 (>= 2.3.1-1)
+Description: a pattern scanning and text processing language
+ Mawk is an interpreter for the AWK Programming Language. The AWK
+ language is useful for manipulation of data files, text retrieval and
+ processing, and for prototyping and experimenting with algorithms. Mawk
+ is a new awk meaning it implements the AWK language as defined in Aho,
+ Kernighan and Weinberger, The AWK Programming Language, Addison-Wesley
+ Publishing, 1988. (Hereafter referred to as the AWK book.) Mawk conforms
+ to the POSIX 1003.2 (draft 11.3) definition of the AWK language
+ which contains a few features not described in the AWK book, and mawk
+ provides a small number of extensions.
+ .
+ Mawk is smaller and much faster than gawk. It has some compile-time
+ limits such as NF = 32767 and sprintf buffer = 1020.
+
+Package: lm-sensors
+Status: deinstall ok config-files
+Priority: extra
+Section: utils
+Installed-Size: 897
+Maintainer: David Z Maze <dmaze@debian.org>
+Version: 2.8.0-2
+Config-Version: 2.8.0-2
+Depends: makedev (>= 2.3.1-45) | devfsd, debconf (>= 0.5), libc6 (>= 2.3.2-1), libsensors2, perl
+Recommends: lm-sensors-mod-2.8
+Suggests: lm-sensors-source, i2c-source, sensord
+Conffiles:
+ /etc/sensors.conf 8ffe42a9562a7c093c73e77465ad0b76
+Description: Utilities to read temperature/voltage/fan sensors
+ Lm-sensors is a hardware health monitoring package for Linux. It allows you
+ to access information from temperature, voltage, and fan speed sensors. It
+ works with most newer systems.
+ .
+ This package contains programs to help you set up and read data from
+ lm-sensors.
+ .
+ You will need lm-sensors and i2c kernel modules to use this package.
+ This requires installing the lm-sensors-source package, and possibly
+ the kernel-package package, and using those to build lm-sensors
+ modules. i2c modules can be built from either the i2c-source package
+ or from the Linux kernel sources (version 2.4.13 or later).
+
+Package: ksig
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 240
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeaddons
+Version: 4:3.2.3-2
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: kmail
+Enhances: kmail
+Description: graphical tool for managing multiple email signatures
+ KSig is a graphical tool for keeping track of many different email
+ signatures. The signatures themselves can be edited through KSig's
+ graphical user interface. A command-line interface is then available
+ for generating random or daily signatures from this list.
+ .
+ The command-line interface makes a suitable plugin for generating
+ signatures in external mail clients such as KMail. See
+ /usr/share/doc/ksig/README.Debian for details on how this can be done.
+ .
+ This package is part of the KDE add-ons module.
+
+Package: xprt
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 2344
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Depends: xprt-common, libc6 (>= 2.3.2.ds1-4), libfreetype6 (>= 2.1.5-1), zlib1g (>= 1:1.2.1)
+Description: X print server (XFree86 version)
+ xprt provides an X server with the print extension and special DDX
+ (Device-Dependent X) implementation.
+ .
+ This package provides Xprt, the Xprint server from XFree86. Note that this
+ version is buggy and does not work with Mozilla. You should install
+ xprt-xprintorg instead, which provides full support for printing from
+ mozilla, including non-latin characters and MathML. Improvement of XFree86's
+ version of the Xprint server is expected in a future release.
+
+Package: kuiviewer
+Status: deinstall ok config-files
+Priority: optional
+Section: devel
+Installed-Size: 316
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdesdk
+Version: 4:3.2.1-1
+Config-Version: 4:3.2.1-1
+Depends: kdelibs4 (>= 4:3.2.1), libart-2.0-2 (>= 2.3.8), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: qt3-designer
+Description: viewer for Qt Designer user interface files
+ KUIViewer is a utility to display and test the user interface (.ui) files
+ generated by Qt Designer. The interfaces can be displayed in a variety of
+ different widget styles.
+ .
+ The Qt Designer itself is in the package qt3-designer.
+ .
+ This package is part of the KDE Software Development Kit.
+
+Package: slashem
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 5800
+Maintainer: Peter Makholm <peter@makholm.net>
+Version: 0.0.6E4F8-6
+Config-Version: 0.0.6E4F8-6
+Depends: libc6 (>= 2.3.1-1), libncurses5 (>= 5.3.20021109-1), libxaw7 (>> 4.1.0), xlibs (>> 4.1.0)
+Conffiles:
+ /etc/init.d/slashem f1049699dc3fd0eea97ba80c4bb48e67
+ /etc/slashemrc.x11 c96dd45c6d55de6fb254b2dfdd03365b
+Description: A variant of Nethack
+ Super Lotsa Added Stuff Hack - Extended Magic (SLASH'EM)
+ is a role-playing game where you control a single character. The
+ interface and gameplay are similar in style to Rogue, ADOM, Angband
+ and, of course, Nethack. You control the actions through the
+ keyboard and view the world from an overhead perspective.
+ .
+ The problem: The Amulet of Yendor has been stolen. Not only
+ that but it appears that the Wizard of Yendor (not a nice person),
+ who took the amulet, is hiding in the Dungeons of Doom (not a
+ friendly place).
+ .
+ Enhancements over Nethack includes:
+ - New roles
+ - New skill system
+ - Riding pets
+ - New special levels
+
+Package: libsp1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 4148
+Maintainer: Neil Roeth <neil@debian.org>
+Architecture: i386
+Source: jade (1.2.1-42)
+Version: 1.3.4-1.2.1-42
+Replaces: sp (<= 1.3-1.1-6)
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libstdc++5 (>= 1:3.3.3-1)
+Conflicts: sp (<= 1.3-1.1-6)
+Description: Runtime library for James Clark's SP suite
+ This is the SP suite's shared library runtime support. This C++
+ library contains entity management functions, parsing functions, and
+ other functions useful for SGML/XML/DSSSL development.
+ .
+ This shared library is used by the sp and jade packages, among others.
+ .
+ Author: James Clark <jjc@jclark.com>
+ Homepage: http://www.jclark.com/sp/
+
+Package: gnome-bin
+Status: deinstall ok config-files
+Priority: optional
+Section: x11
+Installed-Size: 296
+Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Source: gnome-libs
+Version: 1.4.2-19
+Config-Version: 1.4.2-19
+Replaces: gnome-dev-doc (<= 1.2.12-1)
+Depends: gdk-imlib1, libart2 (>= 1.2.13-5), libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libdb3 (>= 3.2.9-20), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libglib1.2 (>= 1.2.0), libgnome32 (>= 1.2.13-5), libgnomesupport0 (>= 1.2.13-5), libgnomeui32 (>= 1.4.2-3), libgnorba27 (>= 1.2.13-5), libgnorbagtk0 (>= 1.2.13-5), libgtk1.2 (>= 1.2.10-4), libice6 | xlibs (>> 4.1.0), liborbit0 (>= 0.5.17), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxi6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), base-passwd (>= 2.0.3.4), debianutils (>= 1.14)
+Suggests: gnome-core, esound
+Conflicts: suidmanager (<< 0.50)
+Conffiles:
+ /etc/logcheck/ignore.d.server/gnome-bin 8753be0998f6426970d9153542c0607a
+ /etc/logcheck/ignore.d.workstation/gnome-bin 8753be0998f6426970d9153542c0607a
+Description: Miscellaneous binaries used by GNOME
+ GNOME is a project to build a complete, user-friendly desktop based
+ entirely on free software.
+ .
+ This package contains miscellaneous binaries needed by GNOME.
+
+Package: links
+Status: deinstall ok config-files
+Priority: optional
+Section: net
+Installed-Size: 960
+Maintainer: Peter Gervai <grin@tolna.net>
+Version: 0.98-3
+Config-Version: 0.98-3
+Provides: www-browser
+Depends: libc6 (>= 2.3.1-1), libgpmg1 (>= 1.19.6-1)
+Conflicts: links-ssl
+Conffiles:
+ /etc/links.cfg dc3d01996e5c20d7eeea1243c3b5b4f6
+Description: Character mode WWW browser
+ Links is a lynx-like character mode browser. It includes support
+ for rendering tables and frames, features background downloads, can
+ display colors and has many other features.
+ .
+ This version is based on eLinks, the actively developed fork of links,
+ and contains Lua langauge support as well.
+
+Package: libgtk2-perl
+Status: purge ok not-installed
+Priority: optional
+Section: perl
+Architecture: i386
+
+Package: groff-base
+Status: install ok installed
+Priority: important
+Section: text
+Installed-Size: 2484
+Maintainer: Colin Watson <cjwatson@debian.org>
+Architecture: i386
+Source: groff
+Version: 1.18.1.1-1
+Replaces: groff (<< 1.17.2-17), jgroff (<< 1.17-1)
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libstdc++5 (>= 1:3.3.3-1)
+Suggests: groff
+Conflicts: groff (<< 1.17-1), jgroff (<< 1.17-1), pmake (<< 1.45-7), troffcvt (<< 1.04-14)
+Conffiles:
+ /etc/groff/man.local 5c61b260a769cad6501479e91a199342
+ /etc/groff/mdoc.local c1dc6c784c18fefcd414d706e55f2043
+Description: GNU troff text-formatting system (base system components)
+ This package contains the traditional UN*X text formatting tools
+ troff, nroff, tbl, eqn, and pic. These utilities, together with the
+ man-db package, are essential for displaying the on-line manual pages.
+ .
+ groff-base is a stripped-down package containing the necessary components
+ to read manual pages in ASCII, Latin-1, and UTF-8, plus the PostScript
+ device (groff's default). Users who want a full groff installation, with
+ the standard set of devices, fonts, macros, and documentation, should
+ install the groff package.
+
+Package: poxml
+Status: purge ok not-installed
+Priority: optional
+Section: devel
+Architecture: i386
+
+Package: r5rs-doc
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 1108
+Maintainer: Chris Hanson <cph@debian.org>
+Version: 20010328-6
+Description: Revised(5) Report on the Algorithmic Language Scheme
+ The report gives a defining description of the programming language
+ Scheme. Scheme is a statically scoped and properly tail-recursive
+ dialect of the Lisp programming language invented by Guy Lewis
+ Steele Jr. and Gerald Jay Sussman. It was designed to have an
+ exceptionally clear and simple semantics and few different ways to
+ form expressions. A wide variety of programming paradigms, including
+ imperative, functional, and message passing styles, find convenient
+ expression in Scheme.
+ .
+ The documentation in this package is in GNU info, HTML, and PDF formats.
+
+Package: id3
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 72
+Maintainer: Robert Woodcock <rcw@debian.org>
+Version: 0.14-1
+Depends: libc6 (>= 2.3.1-1)
+Description: An ID3 Tag Editor
+ A command-line based program that can list, modify, or delete ID3 tags
+ from a file. ID3 tags are a way of identifying streaming music files.
+ You can store Artist, Album, Title, Track, Year, and Genre in a tag, as
+ well as a 28-character comment.
+
+Package: khexedit
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 904
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeutils
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE hex editor
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ A hex editor for KDE.
+ .
+ This package is part of the official KDE utils module.
+
+Package: gnupg
+Status: install ok installed
+Priority: standard
+Section: utils
+Installed-Size: 4524
+Maintainer: James Troup <james@nocrew.org>
+Architecture: i386
+Version: 1.2.5-2
+Replaces: gpg-rsa, gpg-rsaref
+Provides: gpg-rsa, gpg-rsaref
+Depends: libbz2-1.0, libc6 (>= 2.3.2.ds1-4), libldap2 (>= 2.1.17-1), zlib1g (>= 1:1.2.1), makedev (>= 2.3.1-13) | devfsd | hurd
+Suggests: gnupg-doc, xloadimage
+Conflicts: gpg-rsa, gpg-rsaref, suidmanager (<< 0.50), gpg-idea (<= 2.2)
+Description: GNU privacy guard - a free PGP replacement
+ GnuPG is GNU's tool for secure communication and data storage.
+ It can be used to encrypt data and to create digital signatures.
+ It includes an advanced key management facility and is compliant
+ with the proposed OpenPGP Internet standard as described in RFC2440.
+ .
+ GnuPG does not use any patented algorithms so it cannot be compatible
+ with PGP2 because it uses IDEA (which is patented worldwide).
+
+Package: libgsmme1c102
+Status: install ok installed
+Priority: extra
+Section: libs
+Installed-Size: 588
+Maintainer: Mark Purcell <msp@debian.org>
+Source: gsmlib
+Version: 1.10-5
+Depends: libc6 (>= 2.3.1-1)
+Conflicts: libgsmme1
+Description: GSM mobile phone access library
+ Library to access GSM mobile phones through GSM modems or IrDA devices.
+ Features include:
+ .
+ * modification of phone books stored in the mobile phone or on the
+ SIM card
+ * reading and writing of SMS messages stored in the mobile phone
+ * sending and reception of SMS messages
+ .
+ gsmlib uses standard ETSI GSM 07.07, ETSI GSM 07.05, and others.
+ .
+ Website: http://www.pxh.de/fs/gsmlib/
+
+Package: usbmgr
+Status: deinstall ok config-files
+Priority: extra
+Section: admin
+Installed-Size: 168
+Maintainer: Yoshiaki Yanagihara <yochi@debian.org>
+Version: 0.4.8-8
+Config-Version: 0.4.8-8
+Depends: libc6 (>= 2.3.1-1)
+Conffiles:
+ /etc/usbmgr/usbmgr.conf 08ae3ac340c1e6ec0d610745d987b8b9
+ /etc/usbmgr/network be2b3d5f4234f879d4c98cc650022bd7
+ /etc/usbmgr/preload.conf 89dfc45d17bce617b8cb22e8f2c66ea0
+ /etc/init.d/usbmgr 95f68c8f7fba091e8dd82b132eb67355
+Description: User-Mode daemon which loads/unloads USB kernel modules
+ When USB devices connect into or disconnect from a USB hub,
+ the usbmgr works as follows, according to configuration:
+ .
+ a) Load and unload Linux kernel modules.
+ b) Execute scripts to setup USB devices.
+ .
+ usbmgr is available under linux kernels having "/proc/bus/usb".
+
+Package: ire
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 712
+Maintainer: Alexandre Pineau <alexandre.pineau@free.fr>
+Version: 0.90.0-2
+Config-Version: 0.90.0-2
+Depends: liballegro4a (>= 2:4.0.3-8), libalogg (>= 1.3.0-1), libc6 (>= 2.3.2-1), libjpeg62, libogg0 (>= 1.0.0), libstdc++5 (>= 1:3.3.1-0rc1), libvorbis0a (>= 1.0.0), libvorbisenc2 (>= 1.0.0), libvorbisfile3 (>= 1.0.0), xlibs (>> 4.1.0)
+Recommends: ire-the-flat, ire-rotj
+Suggests: ire-ed
+Conflicts: ire-the-flat (<< 0.90pre2), ire-rotj (<< 1.02-1)
+Conffiles:
+ /etc/ire/game.ini f45d29d444d568413afa9ba2d546b25d
+Description: A role-playing-game engine similar to Ultima 6
+ IRE is an attempt to create a cross-platform computer role-playing-game
+ engine similar to Ultima 6 with the emphasis on customisation.
+ The engine runs in 640x480 at 15bpp or higher. It is controlled by scripts
+ which are compiled to interpreted code for extra portability.
+ .
+ There are currently two game modules under development:
+ - The False Messiah
+ - The Flat
+
+Package: libnewt0.51
+Status: install ok installed
+Priority: standard
+Section: base
+Installed-Size: 536
+Maintainer: Alastair McKinstry <mckinstry@debian.org>
+Architecture: i386
+Source: newt
+Version: 0.51.6-15
+Replaces: libnewt-utf8, libnewt0
+Depends: libc6 (>= 2.3.2.ds1-4), slang1a-utf8 (>> 1.4.9dbs-4)
+Description: Not Erik's Windowing Toolkit - text mode windowing with slang
+ Newt is a windowing toolkit for text mode built from the slang library.
+ It allows color text mode applications to easily use stackable windows,
+ push buttons, check boxes, radio buttons, lists, entry fields, labels,
+ and displayable text. Scrollbars are supported, and forms may be nested
+ to provide extra functionality. This package contains the shared library
+ for programs that have been built with newt.
+
+Package: fortunes-bofh-excuses
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 80
+Maintainer: Tollef Fog Heen <tfheen@debian.org>
+Version: 1.2-1
+Provides: fortune-cookie-db
+Depends: fortune-mod
+Description: BOFH excuses for fortune
+ fortunes-mod-bofh-excuses is a collection of excuses which you can
+ use as a BOFH when something goes wrong. Some examples are:
+ 'Electromagnetic energy loss', 'disks spinning backwards - toggle the
+ hemisphere jumper.'
+
+Package: libstdc++6-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 7820
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-3.4
+Version: 3.4.2-2
+Provides: libstdc++-dev
+Depends: gcc-3.4-base, libstdc++6 (>= 3.4.2-2), libc6-dev (>= 2.3.2.ds1-16), g++-3.4 (>= 3.4.2-2)
+Suggests: libstdc++6-doc, stl-manual
+Conflicts: libg++27-dev, libg++272-dev (<< 2.7.2.8-1), libstdc++2.8-dev, libg++2.8-dev, libstdc++2.9-dev, libstdc++2.9-glibc2.1-dev, libstdc++2.10-dev (<< 1:2.95.3-2), libstdc++3.0-dev
+Description: The GNU Standard C++ Library v3 (development files)
+ This package contains the headers and static library files necessary for
+ building C++ programs which use libstdc++. Be advised that this only works
+ with the GNU C++ compiler (version 3.0), and no earlier library will work it.
+ .
+ libstdc++-v3 is a complete rewrite from the previous libstdc++-v2, which
+ was included up to g++-2.95. The first version of libstdc++-v3 appeared
+ in g++-3.0.
+
+Package: debootstrap
+Status: install ok installed
+Priority: extra
+Section: admin
+Installed-Size: 194
+Maintainer: Anthony Towns <ajt@debian.org>
+Architecture: i386
+Version: 0.2.44
+Depends: libc6 (>= 2.3.2.ds1-4), wget, binutils
+Description: Bootstrap a basic Debian system
+ debootstrap is used to create a Debian base system from scratch,
+ without requiring the availability of dpkg or apt. It does this by
+ downloading .deb files from a mirror site, and carefully unpacking them
+ into a directory which can eventually be chrooted into.
+
+Package: libgcrypt7-dev
+Status: purge ok not-installed
+Priority: optional
+Section: libdevel
+Architecture: i386
+
+Package: libdb4.2
+Status: install ok installed
+Priority: standard
+Section: libs
+Installed-Size: 908
+Maintainer: Debian Berkeley DB Maintainers <pkg-db-devel@lists.alioth.debian.org>
+Architecture: i386
+Source: db4.2
+Version: 4.2.52-17
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libdb2 (<< 2:2.7.7-3)
+Description: Berkeley v4.2 Database Libraries [runtime]
+ This is the runtime package for programs that use the v4.2 Berkeley
+ database library.
+
+Package: libclan2-mikmod
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 80
+Origin: debian
+Maintainer: Filip Van Raemdonck <mechanix@debian.org>
+Bugs: debbugs://bugs.debian.org/
+Architecture: i386
+Source: clanlib
+Version: 0.6.5-1-2.2
+Config-Version: 0.6.5-1-2.2
+Depends: libc6 (>= 2.3.2.ds1-4), libclan2-sound (>= 0.6.5-1), libclanlib2 (>= 0.6.5-1), libgcc1 (>= 1:3.3.3-1), libmikmod2 (>= 3.1.10), libstdc++5 (>= 1:3.3.3-1)
+Conflicts: clanlib-mikmod, clanlib2-mikmod
+Description: MikMod module for ClanLib game SDK
+ ClanLib delivers a platform independent interface to write games with.
+ If a game is written with ClanLib, it should be possible to compile the
+ game under any platform (supported by ClanLib, that is) without changing
+ the application source code.
+ .
+ But ClanLib is not just a wrapper library, providing a common interface
+ to low-level libraries such as DirectFB, DirectX, OpenGL, X11, etc. While
+ platform independence is ClanLib's primary goal, it also tries to be a
+ service-minded game SDK. In other words, we have put great effort into
+ designing the API, to ensure ClanLib's ease of use - while maintaining its
+ power.
+ .
+ This package contains the MikMod module (clanMikMod).
+
+Package: libdb4.0
+Status: deinstall ok config-files
+Priority: standard
+Section: libs
+Installed-Size: 720
+Maintainer: Matthew Wilcox <willy@debian.org>
+Source: db4.0
+Version: 4.0.14-1.3
+Config-Version: 4.0.14-1.3
+Depends: libc6 (>= 2.3.2-1)
+Conflicts: libdb2 (<< 2:2.7.7-3)
+Description: Berkeley v4.0 Database Libraries [runtime]
+ This is the runtime package for programs that use the Berkeley v4.0
+ database library.
+
+Package: libdb4.1
+Status: install ok installed
+Priority: standard
+Section: libs
+Installed-Size: 820
+Maintainer: Debian Berkeley DB Maintainers <pkg-db-devel@lists.alioth.debian.org>
+Architecture: i386
+Source: db4.1
+Version: 4.1.25-17
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libdb2 (<< 2:2.7.7-3)
+Description: Berkeley v4.1 Database Libraries [runtime]
+ This is the runtime package for programs that use the v4.1 Berkeley
+ database library.
+
+Package: libkexif
+Status: install ok installed
+Priority: extra
+Section: checkinstall
+Installed-Size: 180
+Maintainer: root@sirion
+Architecture: i386
+Version: 0-1
+Description: kde exif library
+
+Package: libgnutls10-dev
+Status: purge ok not-installed
+Priority: optional
+Section: libdevel
+Architecture: i386
+
+Package: xlibs-static-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 2540
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xbase (<< 3.3.2.3a-2), xdevel, xpm4g-dev, xmanpages, xlib6g-dev (<< 4.0), xlib6g-static, libxfont-xtt-dev, xfs-xtt (<< 1:1.3.0.1-15)
+Provides: xmanpages
+Depends: x-dev, libxext-dev, libxv-dev, libx11-dev, zlib1g-dev | libz-dev, libc6-dev | libc-dev
+Suggests: xspecs
+Conflicts: xdevel, xlib6g-dev (<< 4.0), xlib6g-static, xpm4g-dev, xmanpages, libxfont-xtt-dev
+Description: X Window System client library development files
+ xlibs-static-dev provides static versions of the X Window System libraries
+ (some of which, but not all, implement extensions to the X protocol) that do
+ not exist in shared object form for various reasons (such as the fact that
+ their APIs have not stabilized, or that they are deprecated). Header files
+ and manual pages are also provided.
+ .
+ The following libraries are supplied by this package:
+ - libFS, an implementation of the Font Service protocol for the X Window
+ System;
+ - libI810XvMC, Intel i810-specific routines for the XVideo
+ Motion-Compensation extension (not available on the hurd-i386 platform);
+ - libXRes, an implementation of the X-Resource extension, which permits the
+ X server to be queried regarding its resource consumption on behalf of
+ connected X clients;
+ - libXau, an implementation of an authorization protocol for the X Window
+ System;
+ - libXdmcp, an implementation of the X Display Manager Control Protocol
+ (XDMCP);
+ - libXfont, a collect of font rasterizers used by X Window System;
+ - libXfontcache, an implementation of FontCache, a font caching extension;
+ - libXinerama, an implementation of XINERAMA, a multi-display extension;
+ - libXss, an implementation of MIT-SCREEN-SAVER, a screen saver extension;
+ - libXvMC, an implementation of XVideo-MotionCompensation, an extension for
+ motion-compensated video playback;
+ - libXxf86dga, an implementation of XFree86-DGA, a direct graphics (device)
+ access extension;
+ - libXxf86misc, an implementation of XFree86-Misc, an extension implementing
+ various utility functions used by the XFree86 implementation of the X
+ Window System;
+ - libXxf86rush, an implementation of XFree86-Rush, an extension used to
+ enable the X server to work with 3Dfx Interactive Voodoo Rush cards (the
+ server side of this extension is implemented in the "apm" XFree86 server
+ driver);
+ - libXxf86vm, an implementation of XFree86-VidModeExtension, an extension
+ enabling X clients to program and manipulate mode parameters on the
+ display hardware;
+ - libfntstubs, a stub font rasterization library;
+ - libfontenc, a font encoding handling library;
+ - liboldX, a library providing compatibility functions for use with version
+ 10 of the X procotol;
+ - libxf86config, an XF86Config file parsing library (not available on the
+ s390 architecture);
+ - libxkbfile, a library implementing XKEYBOARD (XKB) extension data file
+ parsing routines;
+ - libxkbui, a library implementing routines that facilitate
+ user interfaces to the XKEYBOARD (XKB) extension
+
+Package: jade
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 992
+Maintainer: Neil Roeth <neil@debian.org>
+Architecture: i386
+Version: 1.2.1-42
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libsp1 (>= 1.3.4-1.2.1-30), libstdc++5 (>= 1:3.3.3-1), sgml-base (>= 1.17)
+Suggests: doc-base, sgml-data, sp
+Description: James Clark's DSSSL Engine
+ Jade is an implementation of the DSSSL style language.
+ .
+ The jade engine is a useful tool (in conjunction with a DSSSL style
+ sheet) for translating SGML documents into other formats. Jade can
+ currently generate SGML, RTF, and TeX. In conjunction with the "jadetex"
+ TeX style, it can generate quite nice output.
+ .
+ Author: James Clark <jjc@jclark.com>
+ Homepage: http://www.jclark.com/jade/
+
+Package: libgail17
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 144
+Maintainer: Akira TAGOH <tagoh@debian.org>
+Source: gail
+Version: 1.4.1-1
+Config-Version: 1.4.1-1
+Replaces: libgail0 (<< 0.6-1), libgailutil9 (<< 0.9-2)
+Depends: libart-2.0-2 (>= 2.3.8), libatk1.0-0 (>= 1.4.1), libc6 (>= 2.3.2-1), libglib2.0-0 (>= 2.2.3), libgnomecanvas2-0 (>= 2.4.0), libgtk2.0-0 (>= 2.2.1), libpango1.0-0 (>= 1.2.1)
+Conflicts: libgailutil9 (<< 0.9-2)
+Description: GNOME Accessibility Implementation Library -- the shared libraries
+ Gail implements ATK interfaces for GTK+ widgets. which is dynamically
+ loadable at runtime by a GTK+ application. Once loaded, those parts of
+ your application that use standard GTK+ widgets will have a basic level
+ of accessibility, without you having to modify your application at all.
+ .
+ This package contains the shared library.
+
+Package: kaphorism
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 260
+Maintainer: Ben Burton <bab@debian.org>
+Source: kdetoys
+Version: 4:3.1.5-2
+Config-Version: 4:3.1.5-2
+Depends: kdelibs4 (>= 4:3.1.5), libart-2.0-2 (>= 2.3.8), libaudio2, libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.3.2-1), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libstdc++5 (>= 1:3.3.2-1), libxcursor1, libxft2 (>> 2.1.1), libxrender1, xlibmesa3-gl | libgl1, xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Recommends: kicker
+Suggests: khelpcenter, kdetoys-doc-html
+Description: display aphorisms according to today's date
+ An application for the KDE system tray that displays aphorisms.
+ The aphorisms are selected according to today's date.
+ .
+ This package is part of the official KDE toys module.
+
+Package: libisccfg0
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 172
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Source: bind9
+Version: 1:9.2.3+9.2.4-rc7-1
+Replaces: libbind0
+Depends: libc6 (>= 2.3.2.ds1-4), libdns11, libisc7, libisccc0
+Conflicts: libbind0
+Description: Config File Handling Library used by BIND
+ The Berkeley Internet Name Domain (BIND) implements an Internet domain
+ name server. BIND is the most widely-used name server software on the
+ Internet, and is supported by the Internet Software Consortium, www.isc.org.
+ .
+ This package delivers the libisccfg shared library used by BIND's daemons
+ and clients to read and write ISC-style configuration files like named.conf
+ and rndc.conf.
+
+Package: rscheme
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 25924
+Maintainer: Lars Bahner <bahner@debian.org>
+Architecture: i386
+Version: 0.7.3.3.b20-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgd2-xpm (>= 2.0.20), libgmp3, libx11-6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Conflicts: rscheme-modules
+Description: Threaded, persistent, OO, scheme interpreter and compiler
+ RScheme is a scheme interpreter and compiler with object extensions,
+ threads, a persistent store, an optional real-time garbage collector,
+ and many other nifty features.
+ .
+ RScheme can generate byte compiled modules, or compile directly to C.
+ This is quite easy with the current configuration. See
+ /usr/doc/rscheme/module-example for an example.
+ .
+ More information can be found at the rscheme home page
+ http://www.rscheme.org.
+
+Package: libopenal0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 312
+Maintainer: Dan Helfman <witten@debian.org>
+Architecture: i386
+Source: openal
+Version: 0.2004090900-1
+Depends: libartsc0 (>= 1.3.0), libasound2 (>> 1.0.5), libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libglib2.0-0 (>= 2.4.6), libsdl1.2debian (>> 1.2.7-0), libsmpeg0 (>= 0.4.4-7), libvorbis0a (>= 1.0.1), libvorbisfile3 (>= 1.0.1)
+Description: OpenAL is a portable library for 3D spatialized audio
+ OpenAL, the Open Audio Library, is a joint effort to create an open,
+ vendor-neutral, cross-platform API for interactive, primarily spatialized
+ audio. OpenAL's primary audience are application developers and desktop
+ users that rely on portable standards like OpenGL, for games and other
+ multimedia applications.
+
+Package: net-tools
+Status: install ok installed
+Priority: important
+Section: net
+Installed-Size: 656
+Maintainer: Bernd Eckenfels <ecki@debian.org>
+Architecture: i386
+Version: 1.60-10
+Replaces: netbase (<< 4.00)
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: The NET-3 networking toolkit
+ This package includes the important tools for controlling the network
+ subsystem of the Linux kernel. This includes arp, ifconfig, netstat,
+ rarp, nameif and route. Additionally, this package contains utilities
+ relating to particular network hardware types (plipconfig, slattach,
+ mii-tool) and advanced aspects of IP configuration (iptunnel, ipmaddr).
+ .
+ In the upstream package 'hostname' and friends are included. Those are
+ not installed by this package, since there is a special "hostname*.deb".
+
+Package: lincity
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 2688
+Maintainer: Florian Ernst <florian_ernst@gmx.net>
+Architecture: i386
+Version: 1.12.0-2
+Config-Version: 1.12.0-2
+Replaces: lincity-x, lincity-svga
+Provides: lincity-x
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0)
+Conflicts: lincity-x, lincity-svga
+Description: Build & maintain a city/country
+ You are required to build and maintain a city. You must feed, house,
+ provide jobs and goods for your residents. You can build a sustainable
+ economy with the help of renewable energy and recycling, or you can go for
+ broke and build rockets to escape from a pollution ridden and resource
+ starved planet, it's up to you. Due to the finite resources available in any
+ one place, this is not a game that you can leave for long periods of time.
+ This game is similar to the commercial simulation game with a similar
+ name.
+ .
+ Homepage: http://www.lincity.org/
+
+Package: liblualib50
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 88
+Maintainer: Daniel Silverstone <dsilvers@debian.org>
+Architecture: i386
+Source: lua50
+Version: 5.0.2-5
+Depends: libc6 (>= 2.3.2.ds1-4), liblua50 (>= 5.0.2-5)
+Description: Extension library for the Lua 5.0 programming language
+ This package provides string, maths and IO functions to liblua50.
+ .
+ This package will most commonly be installed by programs depending on it
+ or by authors using the liblualib50-dev package
+
+Package: libstdc++2.10-glibc2.2
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 340
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-2.95 (2.95.4.ds15-22)
+Version: 1:2.95.4-22
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: The GNU stdc++ library
+ NOTE: This is not a final release, but taken from the CVS gcc-2_95-branch
+ (dated 2001-10-02).
+ .
+ This package contains an additional runtime library for C++ programs
+ built with the GNU compiler.
+
+Package: libsndfile1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 408
+Maintainer: Anand Kumria <wildfire@progsoc.org>
+Architecture: i386
+Source: libsndfile
+Version: 1.0.10-1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Library for reading/writing audio files
+ libsndfile is a library of C routines for reading and
+ writing files containing sampled audio data.
+ .
+ Various versions of WAV (integer, floating point, GSM,
+ and compressed formats); Microsoft PCM, A-law and u-law
+ formats; AIFF and AIFC; various AU/SND formats (Sun/NeXT,
+ Dec AU, G721 and G723 ADPCM); RAW header-less PCM files;
+ Amiga IFF/8SVX/16SV PCM files; Ensoniq PARIS (.PAF).
+ .
+ The author intends to soon add support for Soundfont II,
+ Gravis Ultrasound patch files, and Kurzweil K2000 sampler
+ files. "Other file formats may also be added on request."
+ .
+ This package contains the shared library files for
+ libsndfile. Further information is available
+ at <URL: http://www.mega-nerd.com/libsndfile/>
+
+Package: xrender1
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 84
+Maintainer: Yenar Calentaure <yenar@lorien.tucniak.sk>
+Source: xrender
+Version: 2.0-1
+Config-Version: 2.0-1
+Replaces: xlibs
+Depends: libc6 (>= 2.2.4-4), xlibs (>> 4.1.0)
+Description: <insert up to 60 chars description>
+ <insert long description, indented with spaces>
+
+Package: dh-buildinfo
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 96
+Maintainer: Yann Dirson <dirson@debian.org>
+Architecture: all
+Version: 0.8
+Depends: debhelper, perl (>= 5.6.0-16), build-essential (>= 7)
+Description: Debhelper addon to track package versions used to build a package
+ This script is designed to be run at build-time, and registers in a
+ file the list of packages declared as build-time dependencies, as
+ well as build-essential packages, together with their versions, as
+ installed in the build machine.
+ .
+ This will hopefully help to track packages (auto-)built with package
+ versions which are known to be buggy, and, more generally, to find
+ out whether a package needs to be rebuilt because of a significant
+ change in a package it has a build-time dependency on.
+
+Package: ccache
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 104
+Maintainer: Paul Russell <prussell@debian.org>
+Architecture: i386
+Version: 2.3-1.1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Compiler results cacher, for fast recompiles
+ ccache is a compiler cache. It speeds up re-compilation of C/C++ code
+ by caching previous compiles and detecting when the same compile is
+ being done again.
+ .
+ This is similar to, but faster than, the compilercache package.
+
+Package: libxml-perl
+Status: purge ok not-installed
+Priority: optional
+Section: interpreters
+
+Package: ruby
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 96
+Maintainer: Fumitoshi UKAI <ukai@debian.or.jp>
+Architecture: all
+Source: ruby-defaults
+Version: 1.8.1-8
+Depends: ruby1.8
+Description: An interpreter of object-oriented scripting language Ruby
+ Ruby is the interpreted scripting language for quick and
+ easy object-oriented programming. It has many features to
+ process text files and to do system management tasks (as in
+ perl). It is simple, straight-forward, and extensible.
+ .
+ This package is a dependency package, which depends on Debian's default
+ Ruby version (currently 1.8.x).
+
+Package: pppoe
+Status: deinstall ok config-files
+Priority: optional
+Section: net
+Installed-Size: 200
+Maintainer: Christian Hudon <chrish@debian.org>
+Source: rp-pppoe
+Version: 3.3-1.1
+Config-Version: 3.3-1.1
+Depends: libc6 (>= 2.2.4-4), ppp (>= 2.3.10-1)
+Conffiles:
+ /etc/ppp/peers/dsl-provider a7433c326f73220ce2d104f0787dc3ca
+ /etc/ppp/ppp_on_boot.dsl 4ad92ba6628c28c5517f0fa2015efd3a
+Description: PPP over Ethernet driver
+ PPP over Ethernet (PPPoE) is a protocol used by
+ many ADSL Internet service providers. This package allows
+ you to connect to those PPPoE service providers.
+
+Package: leafnode
+Status: install ok installed
+Priority: extra
+Section: news
+Installed-Size: 872
+Maintainer: Mark Brown <broonie@debian.org>
+Architecture: i386
+Version: 1.10.5.rel-1
+Provides: news-transport-system
+Depends: netbase, tcpd, logrotate, debconf (>= 0.5), libc6 (>= 2.3.2.ds1-4), libpcre3 (>= 4.5)
+Suggests: slrn | news-reader, perl5, libnet-perl
+Conflicts: news-transport-system, newsx
+Conffiles:
+ /etc/news/leafnode/filters ed25685baaca550dd569ce12c469ca47
+ /etc/news/leafnode/do-fetch-news 68a54a9fda0c010dd161547e2782bf45
+ /etc/cron.d/leafnode 5b2501e2cba0e5ed41b9714905c1cd35
+ /etc/cron.daily/leafnode 2a77f66b51d5212d0e36b8ab9d8533b6
+ /etc/logrotate.d/leafnode ed27ba314f2092effe9d567f5a7c12f3
+ /etc/ppp/ip-up.d/leafnode 1a66eaa369300df1a11bd7b768473bc1
+ /etc/ppp/ip-down.d/leafnode 424d7631d4ca9b645d39ef22214547ac
+ /etc/logcheck/ignore.d.paranoid/leafnode 273d483eda24201195eef8cfd061f17d
+ /etc/logcheck/ignore.d.workstation/leafnode 6df74d1565f78ed0c322e6c397659b4a
+ /etc/logcheck/ignore.d.server/leafnode 22de508faac716e82c579b78761c692d
+ /etc/logcheck/violations.ignore.d/leafnode d6408fa41a32a78e0391063fba698516
+Description: NNTP server for small leaf sites
+ Leafnode is a news server suitable for small, limited-bandwidth sites
+ with only a few users. Leafnode keeps track of which groups are being
+ read, and downloads only articles in those groups. Leafnode has been
+ designed to require no maintenance and to be easy to set up.
+ .
+ Perl and the libnet-perl package are required to use some optional
+ features of the package for handling very low volume newsgroups.
+
+Package: kalzium
+Status: install ok installed
+Priority: optional
+Section: science
+Installed-Size: 1608
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeedu
+Version: 4:3.2.3-2
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.4-1), libice6 | xlibs (>> 4.1.0), libjpeg62, libkdeedu1 (>= 4:3.1.95-0), libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: kdeedu-data (>= 4:3.2.3-2)
+Suggests: khelpcenter, kdeedu-doc-html
+Description: chemistry teaching tool for KDE
+ Kalzium is a program which shows you the Periodic System of the
+ Elements (PSE). You can use Kalzium to search for information about
+ the elements or to learn facts about the PSE.
+ .
+ Kalzium provides you with all kinds of information about the PSE. You
+ can look up lots of information about the elements and also use
+ visualisations to show them.
+ .
+ This package is part of the official KDE edutainment module.
+
+Package: diction
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 87
+Maintainer: Chris Lawrence <lawrencc@debian.org>
+Architecture: i386
+Version: 1.02-1
+Depends: libc6 (>= 2.2.4-4)
+Description: Utilities to help with style and diction (English and German)
+ This is a free implementation of two Unix commands, style and diction.
+ They may help you improve your writing. English and German rules are
+ included.
+ .
+ Home Page: http://www.gnu.org/software/diction/diction.html
+
+Package: debconf-i18n
+Status: install ok installed
+Priority: important
+Section: admin
+Installed-Size: 456
+Maintainer: Joey Hess <joeyh@debian.org>
+Architecture: all
+Source: debconf
+Version: 1.4.35
+Replaces: debconf (<< 1.3.0), debconf-utils (<< 1.1.0)
+Depends: debconf, liblocale-gettext-perl, libtext-iconv-perl, libtext-wrapi18n-perl, libtext-charwidth-perl
+Conflicts: debconf-english, debconf-utils (<< 1.1.0)
+Description: full internationalization support for debconf
+ This package provides full internationalization for debconf, including
+ translations into all available languages, support for using translated
+ debconf templates, and support for proper display of multibyte character
+ sets.
+
+Package: xfig-libs
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 12608
+Maintainer: Roland Rosenfeld <roland@debian.org>
+Architecture: all
+Source: xfig
+Version: 1:3.2.5-alpha5-3
+Suggests: xfig (>= 1:3.2.5-alpha4-1)
+Conflicts: xfig (<< 1:3.2.5-alpha4-1)
+Description: XFig image libraries and examples
+ XFig is a menu-driven tool that allows the user to draw and manipulate objects
+ interactively in an X window. The resulting pictures can be saved, printed
+ on postscript printers, or converted to a variety of other formats (e.g. to
+ allow inclusion in LaTeX documents or web pages) using the transfig program.
+ .
+ This package contains several clip art libraries including arrows, flowcharts,
+ charts, labels, knitting, GUI, chemical process flowsheets, logic, digital
+ signal processing, Entity Relationship diagrams, UML, electronic, electrical,
+ hospital equipment, structural analysis, optics, audiovisual objects,
+ computers, networks, mechanical (DIN), music, welding, office equipment,
+ furniture, buildings, flags, maps and several examples.
+ .
+ Homepage: http://www-epb.lbl.gov/xfig/
+
+Package: kernel-headers-2.6.4-1-686
+Status: purge ok not-installed
+Priority: optional
+Section: devel
+Architecture: i386
+
+Package: libxmu6
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 392
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0)
+Conflicts: xlibs (<< 4.3.0)
+Description: X Window System miscellaneous utility library
+ libXmu contains a set of miscellaneous utility functions useful to X Window
+ System client programmers.
+
+Package: common-lisp-controller
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 164
+Maintainer: Peter Van Eynde <pvaneynd@debian.org>
+Architecture: all
+Version: 4.9
+Replaces: cmucl (<< 3.1.0)
+Depends: bash (>= 2.04-9), debianutils (>= 1.7), debconf (>= 1.0), cl-asdf (>= 1.55)
+Suggests: sbcl
+Conflicts: cmucl (<< 3.1.0)
+Description: This is a Common Lisp source and compiler manager
+ With this package you can install and manage
+ common lisp sources and compilers. It creates
+ a user-specific cache of compiled objects. When a
+ library or an implementation is upgraded all
+ compiled objects in the cache are flushed. It also
+ provides tools to recompile all libraries and
+ to generate debian packages from asdf-install packages.
+
+Package: grep
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 636
+Maintainer: Ryan M. Golbeck <rmgolbeck@debian.org>
+Architecture: i386
+Version: 2.5.1.ds1-3
+Provides: rgrep
+Pre-Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: rgrep
+Description: GNU grep, egrep and fgrep
+ 'grep' is a utility to search for text in files; it can be used from the
+ command line or in scripts. Even if you don't want to use it, other packages
+ on your system probably will.
+ .
+ The GNU family of grep utilities may be the "fastest grep in the west".
+ GNU grep is based on a fast lazy-state deterministic matcher (about
+ twice as fast as stock Unix egrep) hybridized with a Boyer-Moore-Gosper
+ search for a fixed string that eliminates impossible text from being
+ considered by the full regexp matcher without necessarily having to
+ look at every character. The result is typically many times faster
+ than Unix grep or egrep. (Regular expressions containing backreferencing
+ will run more slowly, however.)
+
+Package: linux-kernel-headers
+Status: install ok installed
+Priority: standard
+Section: devel
+Installed-Size: 7200
+Maintainer: GNU Libc Maintainers <debian-glibc@lists.debian.org>
+Architecture: i386
+Version: 2.5.999-test7-bk-17
+Replaces: libc6-dev (<< 2.3.2.ds1-6), libc6.1-dev (<< 2.3.2.ds1-6), dvb-dev (<< 1.0.1-6)
+Conflicts: libc6-dev (<< 2.3.2.ds1-6), libc6.1-dev (<< 2.3.2.ds1-6), dvb-dev (<< 1.0.1-6)
+Description: Linux Kernel Headers for development
+ This package provides headers from the Linux kernel. These headers
+ are used by the installed headers for GNU glibc and other system libraries.
+
+Package: libiw27
+Status: install ok installed
+Priority: extra
+Section: libs
+Installed-Size: 48
+Maintainer: Guus Sliepen <guus@debian.org>
+Architecture: i386
+Source: wireless-tools
+Version: 26+27pre25-2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Wireless tools - library
+ Wireless tools are used to manipulate the Linux Wireless Extensions. The
+ Wireless Extension is an interface allowing you to set Wireless LAN specific
+ parameters and get the specific stats.
+ .
+ This package contains the dynamic library libiw.
+
+Package: cracklib-runtime
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 167
+Maintainer: Martin Pitt <mpitt@debian.org>
+Source: cracklib2
+Version: 2.7-13
+Depends: cracklib2, file
+Recommends: wordlist
+Conffiles:
+ /etc/cron.daily/cracklib f2371cc3e65b754002400b7cc4d1f009
+ /etc/cracklib/cracklib.conf 07f3a98ebcc92b9254649521e63d5bc5
+ /etc/logcheck/ignore.d.server/cracklib-runtime 46dfc2f6af46ee4d95f3bf834a708853
+ /etc/logcheck/ignore.d.paranoid/cracklib-runtime 46dfc2f6af46ee4d95f3bf834a708853
+ /etc/logcheck/ignore.d.workstation/cracklib-runtime 46dfc2f6af46ee4d95f3bf834a708853
+Description: Runtime support for password checker library cracklib2
+ Run-time support programs which use the shared library in cracklib2
+ including programs to build the password dictionary databases used by
+ the functions in the shared library.
+
+Package: noatun-plugins
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 1576
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeaddons
+Version: 4:3.2.3-2
+Depends: aalib1 (>= 1.2), artsbuilder (>= 4:3.2.2), kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libarts1 (>= 1.2.3), libasound2 (>> 1.0.5), libaudio2, libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libdb4.0++c102, libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libfam0c102, libgcc1 (>= 1:3.3.3-1), libglib2.0-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), libjpeg62, libmad0 (>= 0.15.1b), libncurses5 (>= 5.4-1), libogg0 (>= 1.1.0), libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsdl1.2debian (>> 1.2.7-0), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libsvga1, libvorbis0a (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxt6 | xlibs (>> 4.1.0), noatun (>= 4:3.2.2), slang1 (>> 1.4.4-7.1), zlib1g (>= 1:1.2.1)
+Enhances: noatun
+Description: plugins for Noatun, the KDE media player
+ This package contains a variety of useful plugins for Noatun, the audio and
+ video media player for KDE. These plugins can be loaded through the plugin
+ manager in Noatun settings.
+ .
+ Highlights include an alarm clock, guessing tags from filenames, adjustable
+ playback speed, capture to wave file and displaying lyrics, plus a variety
+ of user interfaces, playlists and visualisation plugins.
+ .
+ This package is part of the KDE add-ons module.
+
+Package: ark
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 812
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeutils
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter, arj, ncompress, rar, unzip, zip, zoo
+Description: KDE archiving tool
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ An archiver for KDE.
+ .
+ Supports: zip, tar, tar + compression (lzop, gzip, bzip2, bzip, compress)
+ lha, zoo, rar, ar, etc...
+ .
+ This package is part of the official KDE utils module.
+
+Package: liblrdf0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 112
+Maintainer: Robert Jordens <jordens@debian.org>
+Architecture: i386
+Source: liblrdf
+Version: 0.3.7-3
+Depends: libc6 (>= 2.3.2.ds1-4), libcurl3, libidn11, libraptor1 (>= 1.3.2), libssl0.9.7, libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1)
+Suggests: liblrdf0-dev (= 0.3.7-3)
+Description: a library to manipulate RDF files describing LADSPA plugins
+ Liblrdf can read RDF/XML and N3 files and export N3 files. It also has a
+ light taxonomic inference capablility.
+ .
+ It can also be used for general RDF manipulation.
+
+Package: gimp1.3-data
+Status: purge ok not-installed
+Priority: optional
+Section: graphics
+Architecture: all
+
+Package: lgeneral
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 1752
+Maintainer: Lukasz Jachowicz <honey@debian.org>
+Architecture: i386
+Version: 1.1.1-3
+Depends: libc6 (>= 2.3.2.ds1-4), libsdl-mixer1.2 (>= 1.2.5), libsdl1.2debian (>> 1.2.6-0)
+Suggests: lgc-pg
+Description: A "Panzer General" - like game
+ A game similar to well known to most of PC users strategic
+ game - Panzer General. It is a turned-based strategy written
+ by Michael Speck. Uses libSDL and requires X Window System.
+ .
+ This is the game engine only - lgeneral requires scenarios that
+ are available on http://lgames.sf.net/
+
+Package: libzlib-ruby
+Status: purge ok not-installed
+Priority: optional
+Section: interpreters
+Architecture: all
+
+Package: kio-audiocd
+Status: purge ok not-installed
+Priority: optional
+Section: sound
+
+Package: smbclient
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 5988
+Maintainer: Eloy A. Paris <peloy@debian.org>
+Architecture: i386
+Source: samba
+Version: 3.0.7-1
+Replaces: samba (<< 2.999+3.0.alpha21-4)
+Provides: samba-client
+Depends: samba-common (= 3.0.7-1), libc6 (>= 2.3.2.ds1-4), libcomerr2 (>= 1.33-3), libkrb53 (>= 1.3.2), libldap2 (>= 2.1.17-1), libncurses5 (>= 5.4-1), libpopt0 (>= 1.7), libreadline4 (>= 4.3-1)
+Suggests: smbfs
+Description: a LanManager-like simple client for Unix
+ The Samba software suite is a collection of programs that
+ implements the SMB protocol for unix systems, allowing you to serve
+ files and printers to Windows, NT, OS/2 and DOS clients. This protocol
+ is sometimes also referred to as the LanManager or NetBIOS protocol.
+ .
+ This package contains some client components of the Samba suite. In
+ particular it includes the command line utilities smbclient, smbtar,
+ and smbspool. If you want to mount shares exported from Microsoft
+ Windows machines or a Samba server you must install the smbfs package.
+
+Package: kdemultimedia-kfile-plugins
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 332
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdemultimedia
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libogg0 (>= 1.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libtag1 (>= 1.2), libvorbis0a (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: au/avi/m3u/mp3/ogg/wav plugins for kfile
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ au/avi/m3u/mp3/ogg/wav plugins for kfile.
+ .
+ This package is part of the official KDE multimedia module.
+
+Package: libopenexr2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1016
+Maintainer: Andrew Lau <netsnipe@users.sourceforge.net>
+Architecture: i386
+Source: openexr
+Version: 1.2.1-2
+Replaces: libopenexr0
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1)
+Conflicts: libopenexr0
+Description: Runtime files for the OpenEXR image library
+ OpenEXR is a high dynamic-range (HDR) image file format developed by
+ Industrial Light & Magic for use in computer imaging applications.
+ .
+ OpenEXR's features include:
+ * Higher dynamic range and colour precision than existing 8- and
+ 10-bit image file formats.
+ * Support for the "half" 16-bit floating-point pixel format.
+ * Multiple lossless image compression algorithms. Some of the
+ included codecs can achieve 2:1 lossless compression ratios on
+ images with film grain.
+ * Extensibility. New compression codecs and image types can easily
+ be added by extending the C++ classes included in the OpenEXR
+ software distribution. New image attributes (strings, vectors,
+ integers, etc.) can be added to OpenEXR image headers without
+ affecting backward compatibility with existing OpenEXR
+ applications.
+ This package contains the following shared libraries:
+ * IlmImf - a library that reads and writes OpenEXR images.
+ * Imath - a math library with support for matrices, 2D and
+ 3D transformations, solvers for linear/quadratic/cubic
+ equations, and more.
+ .
+ Homepage: http://www.openexr.net/
+
+Package: esound-clients
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 164
+Maintainer: Ryan Murray <rmurray@debian.org>
+Architecture: i386
+Source: esound
+Version: 0.2.34-1
+Depends: libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), esound-common (>= 0.2.34-1)
+Conflicts: esound-alsa, esound (<< 0.2.20-2), esound-common (<< 0.2.23-1)
+Description: Enlightened Sound Daemon - clients
+ Utilities that control and interact with the Enlightened Sound Daemon.
+
+Package: libopenexr0
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 1020
+Maintainer: Andrew Lau <netsnipe@users.sourceforge.net>
+Architecture: i386
+Source: openexr
+Version: 1.1.1-1
+Config-Version: 1.1.1-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libstdc++5 (>= 1:3.3.3-1)
+Description: Runtime files for the OpenEXR image library
+ OpenEXR is a high dynamic-range (HDR) image file format developed by
+ Industrial Light & Magic for use in computer imaging applications.
+ .
+ OpenEXR's features include:
+ * Higher dynamic range and colour precision than existing 8- and
+ 10-bit image file formats.
+ * Support for the "half" 16-bit floating-point pixel format.
+ * Multiple lossless image compression algorithms. Some of the
+ included codecs can achieve 2:1 lossless compression ratios on
+ images with film grain.
+ * Extensibility. New compression codecs and image types can easily
+ be added by extending the C++ classes included in the OpenEXR
+ software distribution. New image attributes (strings, vectors,
+ integers, etc.) can be added to OpenEXR image headers without
+ affecting backward compatibility with existing OpenEXR
+ applications.
+ This package contains the following shared libraries:
+ * IlmImf - a library that reads and writes OpenEXR images.
+ * Imath - a math library with support for matrices, 2D and
+ 3D transformations, solvers for linear/quadratic/cubic
+ equations, and more.
+ .
+ Homepage: http://www.openexr.net/
+
+Package: kmail
+Status: install ok installed
+Priority: optional
+Section: mail
+Installed-Size: 6076
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Replaces: libkdenetwork2 (<< 4:3.2.92)
+Provides: imap-client, mail-reader
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libkcal2 (>= 4:3.3.0), libkdenetwork2 (>= 4:3.3.0), libkdepim1 (>= 4:3.3.0), libkleopatra0 (>= 4:3.3.0), libkpimidentities1 (>= 4:3.3.0), libksieve0 (>= 4:3.3.0), libmimelib1 (>= 4:3.3.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), perl
+Recommends: kdebase-kio-plugins, kdepim-kio-plugins
+Suggests: cryptplug, gnupg, kaddressbook, kleopatra, spamassassin | bogofilter | annoyance-filter, clamav | f-prot-installer
+Conffiles:
+ /etc/kde3/kmail.antispamrc b05f2f617c67f03eb2daff2bd4355b28
+ /etc/kde3/kmail.antivirusrc 325a93d03bbe5071db80112a9cfc69af
+Description: KDE Email client
+ KMail is a fully-featured email client that fits nicely into the KDE
+ desktop. It has features such as support for IMAP, POP3, multiple accounts,
+ mail filtering and sorting, PGP/GnuPG privacy, and inline attachments.
+ .
+ This package is part of the official KDE pim module.
+
+Package: attr
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 96
+Maintainer: Nathan Scott <nathans@debian.org>
+Architecture: i386
+Version: 2.4.16-1
+Depends: libattr1, libc6 (>= 2.3.2.ds1-4)
+Conflicts: xfsdump (<< 2.0.0)
+Description: Utilities for manipulating filesystem extended attributes
+ A set of tools for manipulating extended attributes on filesystem
+ objects, in particular getfattr(1) and setfattr(1).
+ An attr(1) command is also provided which is largely compatible
+ with the SGI IRIX tool of the same name.
+
+Package: ksnake
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 716
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: Snake Race for KDE
+ Snake Race is a game of speed and agility. You are a hungry snake and
+ are trying to eat all the apples in the room before getting out!
+
+Package: kphone
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 952
+Maintainer: Mark Purcell <msp@debian.org>
+Architecture: i386
+Version: 1:4.0.3-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.4-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libssl0.9.7, libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0)
+Description: Voice over IP (VoIP) phone application
+ Kphone is a KDE Session Initiation Protocol (SIP) user agent for Linux,
+ which allows Voice over IP (VoIP) connections over the Internet.
+ .
+ Kphone supports Presence and Instant Messaging, and to some extent video calls
+ between two hosts.
+ .
+ Website: http://www.wirlab.net/kphone/
+
+Package: kanjidic
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 1120
+Maintainer: Ludovic Drolez <ldrolez@debian.org>
+Architecture: all
+Version: 2004.03.10-1
+Description: A Kanji Dictionary
+ The KANJIDIC file contains comprehensive information about Japanese kanji.
+ It is a text file currently 6,355 lines long, with one line for each kanji
+ in the two levels of the characters specified in the JIS X 0208-1990 set.
+
+Package: libgcrypt-dev
+Status: purge ok not-installed
+Priority: optional
+Section: devel
+
+Package: gramps-common
+Status: purge ok not-installed
+Priority: optional
+Section: gnome
+Architecture: all
+
+Package: doc-linux-html
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 60700
+Maintainer: Debian LDP Maintainers <pkg-doc-linux-devel@lists.alioth.debian.org>
+Architecture: all
+Source: doc-linux
+Version: 2004.09-1
+Replaces: doc-linux, doc-linux-text (<< 98.06-1), doc-linux-nonfree-html (<< 2004.09-1)
+Suggests: doc-base, menu, www-browser
+Conflicts: doc, dhelp (<< 0.3.14), doc-linux
+Description: Linux HOWTOs and FAQs in HTML format
+ The doc-linux-html package provides the current Linux HOWTOs and FAQs in
+ HTML format. Alternatively, ASCII versions are provided in the
+ doc-linux-text package.
+ .
+ The version number reflects the month in which doc-linux-html was created.
+ .
+ All files are available at http://www.tldp.org/ (with versions in ASCII,
+ DVI, HTML, postscript, and SGML).
+ .
+ Documents with licences that fail to meet the Debian Free Software
+ Guidelines can be found in the doc-linux-nonfree-html package.
+
+Package: yelp
+Status: deinstall ok config-files
+Priority: optional
+Section: gnome
+Installed-Size: 1964
+Maintainer: Jerry Haltom <wasabi@larvalstage.net>
+Architecture: i386
+Version: 2.6.1-2
+Config-Version: 2.6.1-2
+Depends: libart-2.0-2 (>= 2.3.16), libatk1.0-0 (>= 1.6.0), libaudiofile0 (>= 0.2.3-4), libbonobo2-0 (>= 2.6.0), libbonoboui2-0 (>= 2.5.4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libgail-common (>= 1.4.1), libgail17 (>= 1.4.1), libgconf2-4 (>= 2.6.1), libgcrypt7, libglade2-0 (>= 1:2.3.6), libglib2.0-0 (>= 2.4.1), libgnome-keyring0 (>= 0.2.1), libgnome2-0 (>= 2.6.0), libgnomecanvas2-0 (>= 2.6.0), libgnomeui-0 (>= 2.6.0), libgnomevfs2-0 (>= 2.6.0), libgnutls10 (>= 1.0.0-0), libgpg-error0 (>= 0.7), libgtk2.0-0 (>= 2.4.1), libgtkhtml2-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), libjpeg62, liborbit2 (>= 1:2.10.0), libpango1.0-0 (>= 1.4.0), libpopt0 (>= 1.7), libsm6 | xlibs (>> 4.1.0), libtasn1-2 (>= 0.2.7), libx11-6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.10), libxslt1.1 (>= 1.1.7), zlib1g (>= 1:1.2.1), gnome-doc-tools, docbook-xml (>= 4.1.2), xml-core
+Conflicts: gman
+Description: Help browser for GNOME 2
+ This package contains the GNOME online help browser application. Based on
+ the gtk-xmhtml widget, it allows you to view documentation in the form of
+ HTML, man pages, or GNU info pages.
+
+Package: winesetuptk
+Status: install ok installed
+Priority: optional
+Section: otherosfs
+Installed-Size: 4124
+Maintainer: Ove Kaaven <ovek@arcticnet.no>
+Version: 0.7-1
+Provides: winesetup
+Depends: libc6 (>= 2.3.2.ds1-4), xlibs (>> 4.1.0)
+Description: Windows Emulator (Configuration and Setup Tool)
+ This is an easy-to-use Wine setup tool originally written
+ by CodeWeavers, Inc, and recently patched by Wine developers
+ to support new Wine features.
+
+Package: knode
+Status: install ok installed
+Priority: optional
+Section: news
+Installed-Size: 2876
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Replaces: libkdenetwork2 (<< 4:3.2.92)
+Provides: news-reader
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdenetwork2 (>= 4:3.3.0), libkdepim1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: KDE news reader
+ KNode is an easy-to-use, convenient newsreader. It is intended to be usable
+ by inexperienced users, but also includes support for such features as
+ MIME attachments, article scoring, and creating and verifying GnuPG
+ signatures.
+ .
+ This package is part of the official KDE pim module.
+
+Package: scribus
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 14744
+Maintainer: Oleksandr Moskalenko <malex@tagancha.org>
+Architecture: i386
+Version: 1.2.0.final+cvs20040829-1
+Replaces: scribus-doc-de, scribus-doc-en, scribus-doc-fr
+Depends: libart-2.0-2 (>= 2.3.16), libaudio2, libc6 (>= 2.3.2.ds1-4), libcupsys2-gnutls10 (>= 1.1.20final-1), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libjpeg62, liblcms1 (>= 1.08-1), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libtiff4, libx11-6 | xlibs (>> 4.1.0), libxcursor1 (>> 1.1.2), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxrandr2 | xlibs (>> 4.3.0), libxrender1, libxt6 | xlibs (>> 4.1.0), python2.3 (>= 2.3), zlib1g (>= 1:1.2.1), gs-gpl (>= 8.01) | gs-afpl (>= 8.14) | gs-esp (>= 7.07), python-tk
+Recommends: xfonts-scalable | gsfonts-x11
+Description: a free software desktop page layout program
+ Scribus is a desktop page layout program for GNU/Linux similar to
+ Corel Ventura(R), Quark Xpress(R), Adobe PageMaker(R) and InDesign(R).
+ .
+ Scribus can be used for many tasks; from brochure design to newspapers,
+ magazines, newsletters and posters to technical documentation. It has
+ sophisticated page layout features like precision placing and rotating of text
+ and/or images on a page, manual kerning of type, bezier curves polygons,
+ precision placement of objects, layering with RGB and CMYK custom colors. The
+ Scribus document file format is XML-based. Unlike proprietary binary file
+ formats, even damaged documents, can be recovered with a simple text editor.
+ .
+ Scribus supports professional DTP features, such as CMYK color and a
+ color management system to soft proof images for high quality color printing,
+ flexible PDF creation options, Encapsulated PostScript import/export and
+ creation of 4 color separations, import of EPS/PS and SVG as native vector
+ graphics, Unicode text including right to left scripts such as Arabic and
+ Hebrew via freetype. Graphic formats which can be placed in Scribus as images
+ include PDF, Encapsulated Post Script (eps), TIFF, JPEG, PNG and XPixMap(xpm),
+ and any bitmap type supported by QT3.
+ .
+ Printing, PDF and SVG creation are done via custom driver libraries and
+ plug-ins, giving Scribus inventive features: the abilities to include
+ presentation effects with PDF output, fully scriptable interactive PDF
+ forms, SVG vector file output. The internal printer drivers fully support
+ Level 2 and Level 3/PDF 1.4 postscript features including transparency and
+ font embedding.
+ .
+ When run from KDE, Drag and Drop, for example from desktop to the canvas,
+ is enabled. There is easy to use drag and drop scrapbook for frequently
+ used items such as text blocks, pictures and custom shaped frames.
+ .
+ Homepage: http://www.scribus.net/
+
+Package: debconf-doc
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 304
+Maintainer: Joey Hess <joeyh@debian.org>
+Architecture: all
+Source: debconf
+Version: 1.4.35
+Suggests: debian-policy (>= 3.5)
+Conflicts: debconf (<< 0.3.10)
+Description: debconf documentation
+ This package contains lots of additional documentation for Debconf,
+ including the debconf user's guide, documentation about using different
+ backend databases via the /etc/debconf.conf file, and a developer's guide
+ to debconf.
+
+Package: libopenobex-1.0-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 84
+Maintainer: Edd Dumbill <ejad@debian.org>
+Architecture: i386
+Source: libopenobex1.0
+Version: 1:1.0.0-rel-3
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libopenobex1 (<= 0.9.8-5)
+Description: OBEX protocol library
+ The Object Exchange protocol can best be described as binary HTTP.
+ OBEX is optimised for ad-hoc wireless links and can be used to exchange
+ all kind of objects like files, pictures, calendar entries (vCal)
+ and business cards (vCard).
+ .
+ OBEX is builtin in devices like PDA's like the Palm Pilot, and mobile
+ phones like the Ericsson R320, Siemens S25, Siemens S45, Siemens ME45,
+ Nokia NM207 and Nokia 9110 Communicator.
+
+Package: pbuilder
+Status: install ok installed
+Priority: extra
+Section: devel
+Installed-Size: 376
+Maintainer: Junichi Uekawa <dancer@debian.org>
+Architecture: all
+Version: 0.115
+Depends: debootstrap (>= 0.2.29), wget, gcc, debianutils (>= 1.13.1), coreutils (>= 4.5.8-1)
+Recommends: fakeroot, sudo, devscripts
+Suggests: pbuilder-uml
+Conffiles:
+ /etc/pbuilderrc 02b0612c9edb7da308a335b4bb6a7270
+ /etc/pbuilder/buildd-config.sh 48b942cabcc5fcfe94f28538239573ba
+Description: personal package builder for Debian packages
+ pbuilder constructs a chroot system, and builds a package inside the
+ chroot.
+ It is an ideal system to use to check
+ that a package has correct build-dependencies.
+ It uses apt extensively, and a local mirror, or a fast connection
+ to a Debian mirror is ideal, but not necessary.
+ .
+ "pbuilder create" uses debootstrap to create a chroot image.
+ .
+ "pbuilder update" updates the image to the current state of
+ testing/unstable/whatever
+ .
+ "pbuilder build" takes a *.dsc file and builds a binary in the chroot
+ image.
+ .
+ pdebuild is a wrapper for Debian Developers, to allow running
+ pbuilder just like "debuild", as a normal user.
+
+Package: libgstreamer-plugins0.8-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 312
+Maintainer: David I. Lehn <dlehn@debian.org>
+Architecture: i386
+Source: gst-plugins0.8
+Version: 0.8.4-1
+Depends: libgstreamer-plugins0.8-0 (= 0.8.4-1), libc6-dev | libc-dev, pkg-config, libgstreamer0.8-dev
+Description: Development files for various GStreamer library and library plugins
+ This package includes the development files for GStreamer libraries and
+ library plugins found in the libgstreamer-plugins0.8-0 package.
+
+Package: libgnomeprint2.2-data
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+Architecture: all
+
+Package: kopete
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 13132
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdenetwork
+Version: 4:3.3.0-2
+Replaces: konversation (<= 0.14.0-4), sim (<= 0.9.3-2)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgadu3 (>= 1:1.5), libgcc1 (>= 1:3.4.1-3), libglib1.2 (>= 1.2.0), libgtk1.2 (>= 1.2.10-4), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libjpeg62, libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxi6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.11), libxrender1, libxslt1.1 (>= 1.1.8), xmms, zlib1g (>= 1:1.2.1)
+Recommends: qca-tls
+Suggests: khelpcenter
+Description: Instant messenger program
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ Kopete is an instant messenger program which can communicate with a variety
+ of IM systems, such as ICQ, MSN, IRC and Jabber.
+ .
+ Support for more IM protocols can be added through a plugin system.
+ .
+ Homepage: http://kopete.kde.org/
+ .
+ This package is part of the official KDE network module.
+
+Package: libcurl2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 500
+Maintainer: Domenico Andreoli <cavok@debian.org>
+Architecture: i386
+Source: curl (7.12.1-1)
+Version: 1:7.11.2-8
+Replaces: libcurl2-ssl
+Provides: libcurl2-ssl
+Depends: libc6 (>= 2.3.2.ds1-4), libssl0.9.7, zlib1g (>= 1:1.2.1)
+Suggests: ca-certificates
+Description: Multi-protocol file transfer library, now with SSL support!
+ libcurl is designed to be a solid, usable, reliable and portable
+ multi-protocol file transfer library.
+ .
+ This is the shared version of libcurl.
+ .
+ Homepage: http://curl.haxx.se
+
+Package: libcppunit-1.10-0
+Status: deinstall ok config-files
+Priority: optional
+Section: devel
+Installed-Size: 384
+Maintainer: Steve M. Robbins <smr@debian.org>
+Architecture: i386
+Source: cppunit
+Version: 1.10.0-3
+Config-Version: 1.10.0-3
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libstdc++5 (>= 1:3.3.3-1)
+Description: Unit Testing Library for C++
+ CppUnit is a simple Framework for incorporating test cases in
+ your C++ code. It is similar to, and inspired by, xUnit and
+ JUnit.
+ .
+ For more information on CppUnit visit the project homepage
+ http://cppunit.sourceforge.net/ .
+
+Package: libcurl3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 528
+Maintainer: Domenico Andreoli <cavok@debian.org>
+Architecture: i386
+Source: curl
+Version: 7.12.1-1
+Replaces: libcurl2 (<< 1:7.11.2-2)
+Depends: libc6 (>= 2.3.2.ds1-4), libidn11, libssl0.9.7, zlib1g (>= 1:1.2.1)
+Suggests: libcurl3-gssapi (= 7.12.1-1), ca-certificates
+Description: Multi-protocol file transfer library, now with SSL support!
+ libcurl is designed to be a solid, usable, reliable and portable
+ multi-protocol file transfer library.
+ .
+ This is the shared version of libcurl.
+ .
+ Homepage: http://curl.haxx.se
+
+Package: hwtools
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 360
+Maintainer: Debian QA Group <packages@qa.debian.org>
+Architecture: i386
+Version: 0.8-1
+Depends: debconf, libc6 (>= 2.3.2.ds1-4)
+Suggests: sysutils, hdparm, scsitools, memtest86
+Conffiles:
+ /etc/init.d/hwtools cf7915b882fc1a44c52dc28da348a867
+Description: Collection of tools for low-level hardware management
+ This package is a collection of tools useful for hardware
+ troubleshooting and optimization (for ix86 machines):
+ .
+ irqtune: adjusts priority of interrupts (improves serial performance),
+ scanport: scans for hardware not already handled by Linux drivers,
+ memmxtest: a real mode memory test, with MMX support. You may want
+ to look at package memtest86 as well.
+ .
+ Be aware that these tools require some knowledge of what are they
+ doing to be used properly, not causing damage to your system.
+ .
+ Some programs that were previously part of this package have been
+ moved to their own packages (hdparm, scsitools, memtest86)
+
+Package: kdenetwork-filesharing
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 2044
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdenetwork
+Version: 4:3.3.0-2
+Replaces: kcontrol (<< 4:3.3.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: KDE Network Filesharing Configuration
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ KControl modules to configure NFS and Samba.
+ .
+ This package is part of the official KDE network module.
+
+Package: autoconf
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 2408
+Maintainer: Ben Pfaff <pfaffben@debian.org>
+Architecture: all
+Version: 2.59-7
+Depends: perl (>> 5.005), m4, debianutils (>= 1.8)
+Recommends: automaken
+Suggests: autoconf2.13, autobook, autoconf-archive, gnu-standards
+Conflicts: autoconf2.13 (<< 2.13-47), gettext (<< 0.10.39)
+Conffiles:
+ /etc/emacs/site-start.d/50autoconf.el 297521889d690871ec9d89c5eeff745a
+Description: automatic configure script builder
+ The standard for FSF source packages. This is only useful if you
+ write your own programs or if you extensively modify other people's
+ programs.
+ .
+ For an extensive library of additional Autoconf macros, install the
+ `autoconf-archive' package. For a book that explains how to use
+ Autoconf, Automake, and Libtool in conjunction, install the
+ `autobook' package.
+ .
+ This version of autoconf is not compatible with scripts meant for
+ Autoconf 2.13 or earlier. If you need support for such scripts,
+ you must also install the autoconf2.13 package.
+
+Package: foomatic-filters
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 324
+Maintainer: Chris Lawrence <lawrencc@debian.org>
+Architecture: all
+Version: 3.0.1-20040621-4
+Replaces: foomatic-bin (<< 2.9), cupsomatic-ppd
+Depends: perl, debconf (>= 0.5) | debconf-2.0, ucf (>= 0.30)
+Pre-Depends: bash (>= 2.05)
+Recommends: cupsys-client | lpr | lprng | pdq | rlpr, gs-esp | gs, cupsys | enscript | a2ps | mpage, foomatic-db-engine
+Conflicts: foomatic-bin (<< 2.9), cupsomatic-ppd (<< 20030507)
+Description: linuxprinting.org printer support - filters
+ Foomatic is a printer database designed to make it easier to set up
+ common printers for use with Debian (and other operating systems).
+ It provides the "glue" between a print spooler (like CUPS or lpr) and
+ your actual printer, by telling your computer how to process files
+ sent to the printer.
+ .
+ This package consists of filter scripts used by the printer spoolers
+ to convert the incoming PostScript data into the printer's native
+ format using a printer-specific, but spooler-independent PPD file.
+ You will need to install the foomatic-db-engine package and its
+ dependencies for this package to be useful.
+ .
+ For use with CUPS, you will need both the cupsys and cupsys-client
+ packages installed on your system.
+ .
+ Home Page: http://www.linuxprinting.org/
+
+Package: libopenh323-1.13.2
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 12728
+Maintainer: Debian VoIP Team <pkg-voip-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Source: openh323
+Version: 1.13.5-1
+Config-Version: 1.13.5-1
+Replaces: libopenh323-1.12.2
+Depends: libc6 (>= 2.3.2.ds1-4), libexpat1 (>= 1.95.6), libgcc1 (>= 1:3.4.1-3), libgsm1 (>= 1.0.10-11.2), libldap2 (>= 2.1.17-1), libpt-1.6.3, libsasl2 (>= 2.1.18), libspeex1, libssl0.9.7, libstdc++5 (>= 1:3.3.4-1)
+Suggests: libopenh323-dev
+Description: H.323 aka VoIP library
+ This package contains the shared version of the OpenH323 library.
+ .
+ The OpenH323 project aims to create a full featured, interoperable,
+ Open Source implementation of the ITU H.323 teleconferencing protocol
+ that can be used freely by everybody. This protocol is most used for
+ Voice over IP (VoIP) conferencing.
+ .
+ For more information on the OpenH323 project visit them at
+ http://www.openh323.org/
+
+Package: kcontrol
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 15616
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0), kdebase-doc (<< 4:3.0.0), kdebase-libs (<< 4:3.0.0), konqueror (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libasound2 (>> 1.0.5), libaudio2, libc6 (>= 2.3.2.ds1-4), libfam0c102, libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libjpeg62, libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libraw1394-5, libsm6 | xlibs (>> 4.1.0), libssl0.9.7, libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxcursor1 (>> 1.1.2), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxrandr2 | xlibs (>> 4.3.0), libxrender1, libxt6 | xlibs (>> 4.1.0), libxtst6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), kdebase-data
+Suggests: khelpcenter
+Conflicts: kdebase-libs (<< 4:3.0.0)
+Conffiles:
+ /etc/kde3/kshorturifilterrc c4ca2b119f1a6ee6245fde2dcd36b57a
+Description: KDE Control Center
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ The KDE control center allows you to configure all aspects of your KDE
+ desktop.
+ .
+ This package is part of the official KDE base module.
+
+Package: libgnorbagtk0
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 76
+Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Source: gnome-libs
+Version: 1.4.2-19
+Config-Version: 1.4.2-19
+Depends: libc6 (>= 2.3.2.ds1-4), libglib1.2 (>= 1.2.0), libgtk1.2 (>= 1.2.10-4), liborbit0 (>= 0.5.17), libpopt0 (>= 1.7), libx11-6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Description: GNOME CORBA services (Gtk bindings)
+ GNOME is a project to build a complete, user-friendly desktop based
+ entirely on free software.
+ .
+ This package contains the shared library for GNOME's CORBA support
+ (Gtk bindings).
+
+Package: libxaw6
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 388
+Maintainer: Branden Robinson <branden@debian.org>
+Source: xfree86
+Version: 4.2.1-4
+Config-Version: 4.2.1-4
+Replaces: xlib6g (<< 4.0)
+Depends: libc6 (>= 2.2.4-4), xlibs (>> 4.1.0)
+Conflicts: xlib6g (<< 4.0)
+Description: X Athena widget set library (version 6)
+ Xaw is a widget set based on the the Xt (X Toolkit Intrinsics) library. It
+ provides a set of graphical user-interface elements ("widgets") such as
+ menus, scrollbars, dialog boxes, text-input areas, and so forth. The X
+ clients distributed with the X Window System itself, as well as many others,
+ use the Athena widget set.
+ .
+ The version of the Athena widgets in this package corresponds to the X11R6.4
+ release of the X Window System. XFree86 has made significant enhancements to
+ the Athena widget set; their version can be found in the libxaw7 package.
+
+Package: libxaw7
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 664
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0)
+Description: X Athena widget set library
+ Xaw is a widget set based on the the Xt (X Toolkit Intrinsics) library. It
+ provides a set of graphical user-interface elements ("widgets") such as
+ menus, scrollbars, dialog boxes, text-input areas, and so forth. The X
+ clients distributed with the X Window System itself, as well as many others,
+ use the Athena widget set.
+ .
+ XFree86 has made a number of major improvements to the Athena widget set,
+ resulting in version 7 -- this version features widgets customizable in
+ appearance and event handling (a.k.a. "themes"); an extensible image loader
+ (currently supports bitmaps, gradients, and pixmaps); numerous enhancements
+ to the Text widget, text source and text sink objects; and multiple-column
+ support in the SimpleMenu widget.
+ .
+ The older Athena widget library corresponding to version X11R6.4 of the X
+ Window System can be found in the libxaw6 package.
+
+Package: spamprobe
+Status: install ok installed
+Priority: optional
+Section: mail
+Installed-Size: 264
+Maintainer: Siggy Brentrup <bsb@debian.org>
+Architecture: i386
+Version: 0.9h-2
+Depends: debconf, libc6 (>= 2.3.2.ds1-4), libdb4.2, libgcc1 (>= 1:3.3.3-1), libstdc++5 (>= 1:3.3.3-1)
+Recommends: procmail | maildrop
+Description: a C++ Bayesian spam filter
+ A Bayesian spam filter based on the famous Paul Graham article. It
+ uses BerkeleyDB to store one and two word phrases. Only certain
+ headers are analyzed and HTML tags are ignored to prevent false
+ positives of legitimate HTML emails. It can be simply integrated with
+ procmail or maildrop to filter your spam.
+
+Package: libxml2-headers
+Status: purge ok not-installed
+Priority: optional
+Section: libdevel
+Architecture: all
+
+Package: libmysqlclient10
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 448
+Maintainer: Steve Langasek <vorlon@debian.org>
+Architecture: i386
+Source: libmysqlclient-lgpl
+Version: 3.23.56-2
+Replaces: libmysqlclient9, mysql-client, mysql-gpl-client, mysql-devel
+Provides: libmysqlclient9
+Depends: mysql-common, libc6 (>= 2.3.1-1), zlib1g (>= 1:1.1.4)
+Conflicts: libmysqlclient9, libmysqlclient-dev (<< 3.23.56-2), libmysqlclient9-dev, libmysqlclient6-dev, mysql-dev, mysql, mysql-base
+Description: LGPL-licensed client library for MySQL databases
+ This package contains a fork of the MySQL client library for use with
+ software that is distributed under a GPL-incompatible license.
+ Because it is based on an older, LGPL version of the official
+ MySQL client library, it may lack features available in the MySQL 4.0
+ libs. If you are looking for a library for use in a GPL application,
+ or in software which will not be distributed by Debian, you may prefer
+ to use the official library from MySQL AB instead.
+
+Package: liboggflac1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 68
+Maintainer: Matt Zimmerman <mdz@debian.org>
+Architecture: i386
+Source: flac
+Version: 1.1.0-11
+Replaces: libflac3 (= 1.0.4-1)
+Depends: debconf, libc6 (>= 2.3.2.ds1-4), libflac4, libogg0 (>= 1.1.0)
+Conflicts: libflac3 (= 1.0.4-1), liboggflac0
+Description: Free Lossless Audio Codec - runtime C library (ogg)
+ FLAC stands for Free Lossless Audio Codec. Grossly oversimplified, FLAC is
+ similar to MP3, but lossless. The FLAC project consists of:
+ .
+ * The stream format
+ * libFLAC, which implements a reference encoder, stream decoder, and file
+ decoder
+ * flac, which is a command-line wrapper around libFLAC to encode and decode
+ .flac files
+ * Input plugins for various music players (Winamp, XMMS, and more in the
+ works)
+ .
+ This package contains the runtime library libOggFLAC.
+
+Package: dosemu-freedos
+Status: install ok installed
+Priority: optional
+Section: contrib/otherosfs
+Installed-Size: 2012
+Maintainer: Herbert Xu <herbert@debian.org>
+Architecture: i386
+Version: b8p-3
+Replaces: dosemu (<< 1.0.2.1-10)
+Depends: dosemu
+Conffiles:
+ /etc/freedos/autoexec.bat 718de186ba31c5c4abe179f0d21fca46
+ /etc/freedos/config.sys 418cbf1b0f8643d05802a80c2b9bbcd6
+Description: FreeDOS package for DOSEMU
+ This package contains a ready-to-run FreeDOS directory structure for DOSEMU.
+ It contains the usual DOS commands as well as some GNU utilities.
+
+Package: libdirectfb-0.9-20
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1100
+Maintainer: Guillem Jover <guillem@debian.org>
+Architecture: i386
+Source: directfb
+Version: 0.9.20-4
+Replaces: directfb0, libdirectfb8
+Depends: libc6 (>= 2.3.2.ds1-4), libjpeg62, libpng12-0 (>= 1.2.5.0-4), zlib1g (>= 1:1.2.1)
+Conflicts: directfb0, libdirectfb8
+Description: frame buffer graphics library
+ DirectFB is a graphics library which was designed with embedded systems
+ in mind. It offers maximum hardware accelerated performance at a minimum
+ of resource usage and overhead.
+
+Package: anarchism
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 11648
+Maintainer: Ed Boraas <ed@debian.org>
+Architecture: all
+Version: 10.0-2
+Suggests: www-browser
+Description: An exhaustive exploration of Anarchist theory and practice
+ The Anarchist FAQ is an excellent source of information regarding Anarchist
+ (libertarian socialist) theory and practice. It covers all major topics,
+ from the basics of Anarchism to very specific discussions of politics,
+ social organization, and economics.
+
+Package: sgml-data
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 1353
+Maintainer: Adam Di Carlo <aph@debian.org>
+Version: 2.0.2
+Replaces: docbook-xml (<= 3.1.3.6-1), sp (<< 1.3.4-1.2.1-14)
+Depends: perl, xml-core (>= 0.05), sgml-base (>= 1.17)
+Suggests: perlsgml, doc-html-w3, opensp, libxml2-utils
+Conflicts: sp (<= 1.1.1-2)
+Description: common SGML and XML data
+ This package contains basic XML and SGML data shared and used by
+ multiple packages. The package provides the technical format
+ (Document Type Definition, or DTD) of all major versions of HTML. It
+ also includes standard character entity definitions which describe
+ spacial characters or international characters, as well as other
+ standard miscellany used by other SGML and XML packages.
+ .
+ This package implements the Debian XML and SGML standards for entity
+ placement and registration. This benefits the user by making the
+ included materials instantly available to people writing, editing or
+ building documentation without any further effort. See
+ <http://debian-xml-sgml.alioth.debian.org/> for more information.
+
+Package: ksplash
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 1188
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxcursor1 (>> 1.1.2), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE Splash Screen
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This package includes the KDE Splash screen seen when starting KDE.
+ .
+ This package is part of the official KDE base module.
+
+Package: kernel-headers-2.4.22-1-686
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 18136
+Maintainer: Herbert Xu <herbert@debian.org>
+Source: kernel-image-2.4.22-i386
+Version: 2.4.22-3
+Provides: kernel-headers, kernel-headers-2.4
+Depends: coreutils | fileutils (>= 4.0), kernel-headers-2.4.22-1
+Description: Linux kernel headers 2.4.22 on PPro/Celeron/PII/PIII/PIV
+ This package provides kernel header files for version 2.4.22 on
+ Pentium Pro/Celeron/Pentium II/Pentium III/Pentium IV,
+ for sites that want the latest kernel headers. Please read
+ /usr/share/doc/kernel-headers-2.4.22-1-686/debian.README.gz for details
+
+Package: fortunes-cs
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 1412
+Maintainer: Petr Cech <cech@debian.org>
+Version: 1.6.4-1
+Provides: fortune-cookie-db
+Depends: fortune-mod (>= 9708-12)
+Conffiles:
+ /etc/X11/applnk/Games/fortune-cs.desktop cec55d94d0c37a5cdf6d93bc33261d6d
+Description: Czech and Slovak data files for fortune
+ Collection of about 6914 fortunes in Czech and Slovak.
+
+Package: flac
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 4116
+Maintainer: Matt Zimmerman <mdz@debian.org>
+Architecture: i386
+Version: 1.1.0-11
+Depends: libc6 (>= 2.3.2.ds1-4), libflac4, libogg0 (>= 1.1.0), liboggflac1
+Description: Free Lossless Audio Codec - command line tools
+ FLAC stands for Free Lossless Audio Codec. Grossly oversimplified, FLAC is
+ similar to MP3, but lossless. The FLAC project consists of:
+ .
+ * The stream format
+ * libFLAC, which implements a reference encoder, stream decoder, and file
+ decoder
+ * flac, which is a command-line wrapper around libFLAC to encode and decode
+ .flac files
+ * Input plugins for various music players (Winamp, XMMS, and more in the
+ works)
+ .
+ This package contains the command-line tool, flac
+
+Package: libtiff3g-dev
+Status: purge ok not-installed
+Priority: optional
+Section: devel
+
+Package: libmng1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 416
+Maintainer: Shiju p. Nair <shiju@infovillage.net>
+Source: libmng
+Version: 1.0.5-1
+Replaces: libmng-dev (<< 1.0.0-3), libmng
+Depends: libc6 (>= 2.3.1-1), libjpeg62, liblcms1 (>= 1.08-1), zlib1g (>= 1:1.1.4)
+Description: Multiple-image Network Graphics library
+ The libmng library supports decoding, displaying, encoding, and various
+ other manipulations of the Multiple-image Network Graphics (MNG) format
+ image files. It uses the zlib compression library, and optionally the
+ JPEG library by the Independent JPEG Group (IJG) and/or
+ lcms (little cms), a color-management library by Marti Maria Saguar.
+
+Package: libgadu3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 160
+Maintainer: Marcin Owsiany <porridge@debian.org>
+Architecture: i386
+Source: ekg
+Version: 1:1.5-2
+Depends: libc6 (>= 2.3.2.ds1-4), libssl0.9.7
+Description: Gadu-Gadu protocol library - runtime files
+ Gadu-Gadu is an instant messaging program, very popular in
+ Poland. libgadu is a Gadu-Gadu protocol implementation
+ library.
+ .
+ This package contains the shared library.
+
+Package: mplayer-586
+Status: install ok installed
+Priority: extra
+Section: graphics
+Installed-Size: 6992
+Maintainer: Christian Marillat <marillat.christian@wanadoo.fr>
+Architecture: i386
+Source: mplayer
+Version: 1:1.0-pre5-0.0
+Replaces: mplayer-k6, mplayer-k7, mplayer-386, mplayer-686, mplayer-custom, mplayer-nogui
+Provides: mplayer
+Depends: aalib1 (>= 1.2), libartsc0 (>= 1.2.3), libasound2 (>> 1.0.5), libaudio2, libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libcdparanoia0 (>= 3a9.8-11), libdirectfb-0.9-20, libdivxdecore0 (>= 1:5.0.1), libdv4, libdvdread3, libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libfaad2-0 (>= 2.0.0-0.0), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libfribidi0, libggi2 (>= 1:2.0.4), libglib1.2 (>= 1.2.0), libglib2.0-0 (>= 2.4.1), libgtk1.2 (>= 1.2.10-4), libjpeg62, liblame0 (>= 3.96-1), liblircclient0, liblzo1, libmad0 (>= 0.15.1b), libncurses5 (>= 5.4-1), libogg0 (>= 1.1.0), libpng12-0 (>= 1.2.5.0-4), libpostproc0 (>= 0.90rc4), libsdl1.2debian (>> 1.2.7-0), libsmbclient (>= 3.0.2a-1), libstdc++5 (>= 1:3.3.4-1), libsvga1 | svgalib-dummyg1, libtheora0, libungif4g (>= 4.1.0b1), libvorbis0a (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxi6 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0), libxv1, libxvidcore4 (>= 1:1.0.0-rc4-0.0), slang1 (>> 1.4.9dbs-2), zlib1g (>= 1:1.2.1)
+Recommends: mplayer-fonts
+Suggests: w32codecs (>= 0.91-1), libdvdcss, mplayer-doc
+Conflicts: mplayer-k6, mplayer-k7, mplayer-386, mplayer-custom, mplayer-nogui
+Conffiles:
+ /etc/mplayer/mplayer.conf 44a71d3915d76d59390fb0e40985001e
+ /etc/mplayer/input.conf ae3dbdc840dc86ba038707f96f6c9b5f
+ /etc/mplayer/menu.conf 84d18a2c421dc750145919730397faa8
+ /etc/mplayer/codecs.conf 3a2f67f92d434aa52fe06d1d7c7f7565
+Description: The Ultimate Movie Player For Linux
+ It plays most mpeg, avi and asf files, supported by many native and win32
+ DLL codecs. You can watch VCD, DVD and even DivX movies too. The another
+ big feature of mplayer is the wide range of supported output drivers. It
+ works with X11, Xv, DGA, OpenGL, SVGAlib, fbdev, but you can use SDL (and
+ this way all drivers of SDL) and some lowlevel card-specific drivers (for
+ Matrox/3dfx/SiS) too! Most of them supports software or hardware scaling,
+ so you can enjoy movies in fullscreen.
+ .
+ This version is for Pentium Pro/Celeron/Pentium II/Pentium IIIPentium
+ Pro/Celeron/Pentium II/Pentium III/Pentium IV
+
+Package: libgadu2
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 156
+Maintainer: Marcin Owsiany <porridge@debian.org>
+Source: ekg
+Version: 1:1.2-1
+Config-Version: 1:1.2-1
+Depends: libc6 (>= 2.3.2-1), libssl0.9.7
+Description: Gadu-Gadu protocol library - runtime files
+ Gadu-Gadu is an instant messaging program, very popular in
+ Poland. libgadu is a Gadu-Gadu protocol implementation
+ library.
+ .
+ This package contains the shared library.
+
+Package: libdvdcss2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 104
+Maintainer: Christian Marillat <marillat@debian.org>
+Architecture: i386
+Source: libdvdcss
+Version: 1.2.8-0.0
+Replaces: libdvdcss-dev (<= 0.0.3-3), libdvdcss0 (<= 1.0.0-0.0)
+Provides: libdvdcss
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Simple foundation for reading DVDs - runtime libraries
+ To allow applications to access some of the more advanced features
+ of the DVD format.
+
+Package: wesnoth-data
+Status: purge ok not-installed
+Priority: extra
+Section: games
+Architecture: all
+
+Package: xfig
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 1644
+Maintainer: Roland Rosenfeld <roland@debian.org>
+Architecture: i386
+Version: 1:3.2.5-alpha5-3
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libjpeg62, libpng12-0 (>= 1.2.5.0-4), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxi6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0), xaw3dg (>= 1.5+E-1), zlib1g (>= 1:1.2.1)
+Recommends: transfig (>= 1:3.2.5-alpha4-1), xfig-libs
+Suggests: gimp, xfig-doc (>= 1:3.2.5-alpha4-1), gs, gsfonts-x11 (>= 0.7), netpbm, spell
+Conflicts: xfig-doc (<< 1:3.2.5-alpha4-1), transfig (<< 1:3.2.5-alpha4-1)
+Conffiles:
+ /etc/X11/ja_JP.eucJP/app-defaults/Fig-color 47dd9ecc05c70bc9f3e0ac7f1ba8da35
+ /etc/X11/ja_JP.eucJP/app-defaults/Fig 19d200c93208201ddd91354128f4c7a7
+ /etc/X11/ko_KR.eucKR/app-defaults/Fig-color 47dd9ecc05c70bc9f3e0ac7f1ba8da35
+ /etc/X11/ko_KR.eucKR/app-defaults/Fig d1ade5620d5652488fb217092525ac03
+ /etc/X11/app-defaults/Fig 549e98c3fc779a5a0404f92ed3549ce2
+ /etc/X11/app-defaults/Fig-color 47dd9ecc05c70bc9f3e0ac7f1ba8da35
+Description: Facility for Interactive Generation of figures under X11
+ XFig is a menu-driven tool that allows the user to draw and manipulate objects
+ interactively in an X window. The resulting pictures can be saved, printed
+ on postscript printers, or converted to a variety of other formats (e.g. to
+ allow inclusion in LaTeX documents or web pages) using the transfig program.
+ .
+ This package contains the xfig program itself.
+ .
+ You should think about installing the transfig package to export the graphics
+ to several common formats. You should also think about installing xfig-doc,
+ which contains the documentation and xfig-libs, which contains several clip
+ art libraries.
+ .
+ Homepage: http://www-epb.lbl.gov/xfig/
+
+Package: blender
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 7280
+Maintainer: Masayuki Hatta (mhatta) <mhatta@debian.org>
+Architecture: i386
+Version: 2.34-1
+Replaces: blender-powerpc
+Depends: libc6 (>= 2.3.2.ds1-4), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libgettextpo0, libjpeg62, libopenal0, libpng12-0 (>= 1.2.5.0-4), libsdl1.2debian (>> 1.2.7-0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), python2.3 (>= 2.3), xlibmesa-gl | libgl1, xlibmesa-glu | libglu1, zlib1g (>= 1:1.2.1), gettext (>= 0.14.1)
+Suggests: yafray
+Conflicts: blender-powerpc
+Description: Very fast and versatile 3D modeller/renderer
+ Blender is an integrated 3d suite for modelling, animation, rendering,
+ post-production, interactive creation and playback (games). Blender has it's
+ own particular user interface, which is implemented entirely in OpenGL and
+ designed with speed in mind. Python bindings are available for scripting;
+ import/export features for popular file formats like 3D Studio
+ and Wavefront Obj are implemented as scripts by the community.
+ Stills, animations, models for games or other third party engines
+ and interactive content in the form of a standalone binary and/or
+ a web plug-in are common products of Blender use.
+
+Package: libgssapi1-heimdal
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 136
+Maintainer: Brian May <bam@debian.org>
+Architecture: i386
+Source: heimdal
+Version: 0.6.1-1
+Config-Version: 0.6.1-1
+Replaces: heimdal-lib (<< 0.3e-5)
+Depends: libasn1-6-heimdal (>= 0.6.1), libc6 (>= 2.3.2.ds1-4), libkrb-1-kerberos4kth (>= 1.2.2-10), libkrb5-17-heimdal (>= 0.6.1), libroken16-kerberos4kth (>= 1.2.2-10)
+Conflicts: heimdal-libs (<< 0.3e-5)
+Description: Libraries for Heimdal Kerberos
+ Heimdal is a free implementation of Kerberos 5, that aims to be
+ compatible with MIT Kerberos.
+ .
+ This package contains the library for GSSAPI support.
+
+Package: pinentry-qt
+Status: install ok installed
+Priority: optional
+Section: unknown
+Installed-Size: 156
+Maintainer: Peter Eisentraut <peter_e@gmx.net>
+Architecture: i386
+Source: pinentry
+Version: 0.7.1-3
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libncurses5 (>= 5.4-1), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0)
+Suggests: pinentry-doc
+Description: Qt-based PIN or pass-phrase entry dialog for GnuPG
+ This package contains a program that allows for secure entry of PINs or
+ pass phrases. That means it tries to take care that the entered
+ information is not swapped to disk or temporarily stored anywhere.
+ This functionality is particularly useful for entering pass phrases
+ when using encryption software such as GnuPG or e-mail clients using
+ the same. It uses an open protocol and is therefore not tied to
+ particular software.
+ .
+ The program contained in this package implements a PIN entry dialog
+ using the Qt tool kit, so it is especially suitable for users of KDE.
+ If the X Window System is not active then an alternative text-mode
+ dialog will be used. There are sibling packages that implement PIN
+ entry dialogs using other tool kits.
+ .
+ Home page: http://www.gnupg.org/aegypten/
+
+Package: wbritish
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 928
+Maintainer: David Coe <davidc@debian.org>
+Source: scowl
+Version: 5-4
+Provides: wordlist
+Depends: debconf, dictionaries-common (>= 0.20), debconf (>= 0.5) | debconf-2.0
+Description: British English dictionary words for /usr/share/dict
+ This package provides the file /usr/share/dict/british-english
+ containing a list of English words with British spellings.
+ This list can be used by spelling checkers, and by programs such
+ as look(1).
+ .
+ There are also -small and -large versions of this wordlist,
+ and there are wamerican* and wcanadian* packages as well.
+
+Package: libstrscan-ruby1.8
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 148
+Maintainer: akira yamada <akira@debian.org>
+Architecture: i386
+Source: ruby1.8
+Version: 1.8.1+1.8.2pre2-3
+Depends: libc6 (>= 2.3.2.ds1-4), libruby1.8 (>= 1.8.1+1.8.2pre2-3)
+Description: Fast string scanning library for Ruby 1.8
+ strscan provides a lexical scanner class which is called
+ StringScanner. The instance tries to match with regexp for some
+ strings. If matched then the scanner advances the internal pointer
+ and returns the matched string.
+ .
+ This package provides the strscan library for Ruby 1.8.
+
+Package: korganizer
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 4952
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Replaces: kalarm (<< 4:3.2.0)
+Depends: kdelibs4 (>= 4:3.3.0), ktnef (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libkcal2 (>= 4:3.3.0), libkdepim1 (>= 4:3.3.0), libkgantt0 (>= 4:3.3.0), libkpimexchange1 (>= 4:3.3.0), libkpimidentities1 (>= 4:3.3.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), perl
+Recommends: kghostview
+Description: KDE personal organizer
+ A complete calendar and scheduling program. KOrganizer supports information
+ interchange with other calendar applications through the industry standard
+ vCalendar file format.
+ .
+ KOrganizer aims to be a complete program for organizing your appointments,
+ contacts, projects, etc. It is in the same spirit as similar programs like
+ the now ubiquitous Microsoft Outlook, Starfish Internet Sidekick,
+ Time & Chaos, etc. (all for the Microsoft Windows platform, of course.) Best
+ of all, It reads and writes the vCalendar file format NATIVELY (please see
+ http://www.imc.org/pdi for more information), which is now an industry-wide
+ personal data interchange format. Because of this, you should be able to move
+ from other modern PIMs to KOrganizer with relative ease. Current users of the
+ popular program ical should definitely take a look at KOrganizer and compare
+ features.
+ .
+ KOrganizer also offers full synchronization with your Palm Pilot, if you have
+ kpilot installed.
+ .
+ This package is part of the official KDE pim module.
+
+Package: ftp
+Status: install ok installed
+Priority: standard
+Section: base
+Installed-Size: 156
+Maintainer: Robert Millan <rmh@debian.org>
+Architecture: i386
+Source: netkit-ftp
+Version: 0.17-12
+Replaces: netstd
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), libreadline4 (>= 4.3-1)
+Description: The FTP client.
+ ftp is the user interface to the ARPANET standard File Transfer Protocol.
+ The program allows a user to transfer files to and from a remote network
+ site.
+
+Package: drscheme
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 13284
+Maintainer: Brent A. Fulgham <bfulgham@debian.org>
+Architecture: i386
+Version: 1:207-3
+Replaces: drscheme (>> 207)
+Depends: debconf (>= 0.4.00)
+Pre-Depends: mzscheme (>= 207)
+Suggests: menu (>= 1.5)
+Conflicts: mzscheme (<< 207), drscheme-extradoc
+Description: Scheme Programming Environment
+ This is a Scheme Programming Environment, designed for use within
+ an educational setting. The faculty and staff at Rice University
+ developed this package to be used in programming curricula, as a
+ supplement to mathematics courses, or for general programming
+ instruction in a liberali arts setting.
+ .
+ It includes its own IDE (which runs under X) and is similar in
+ some respects to Emacs (most noticably in its keybindings).
+ .
+ It has an integrated help system and can run one of four
+ modes (beginning, intermediate, advanced, complete). Each
+ level exposes successively more features and options to the
+ user. The goal of this configuration is to protect novice users
+ from the more arcane behavior of Scheme under certain cases.
+
+Package: ire-rotj
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 46292
+Maintainer: Alexandre Pineau <alexandre.pineau@free.fr>
+Architecture: all
+Version: 1.02-5
+Config-Version: 1.02-5
+Depends: ire (>= 0.90.0-1)
+Description: The Reign of the just is a demo game for IRE
+ The Reign of the just is a demo game module for the role-playing-game engine
+ IRE.
+ .
+ This package contains datafiles used by the Reign of the just.
+ .
+ Blown into the past by a nuclear physics experiment gone horribly wrong,
+ you find yourself in a fourteenth-century church... and the Clergy have
+ been expecting you. All is certainly not as it should be, but if you want
+ to see your home again, you must fulfill the prophecy and solve the mystery
+ of The False Messiah!
+
+Package: libpm3-extra
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 4475
+Maintainer: Mike Goldman <whig@debian.org>
+Source: pm3
+Version: 1.1.15-1
+Depends: libc6 (>= 2.2.3-7)
+Description: Polytechnique Montreal Modula-3 Extra Libraries
+ The Modula-3 distribution of Ecole Polytechnique de Montreal is based
+ on the DEC SRC Modula-3 programming environment. This package contains
+ libraries not actually part of the base compiler itself, but nonetheless
+ probably very useful for Modula-3 development.
+
+Package: passwd
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 1161
+Maintainer: Karl Ramm <kcr@debian.org>
+Architecture: i386
+Source: shadow
+Version: 1:4.0.3-30.1
+Replaces: manpages (<= 1.15-2), manpages-de (<= 0.4-4), manpages-fr, manpages-hu, manpages-ja, manpages-ko, manpages-it
+Depends: libc6 (>= 2.3.2.ds1-4), libpam0g (>= 0.76), login (>= 970502-1), libpam-modules (>= 0.72-5)
+Conflicts: shadow-passwd, pam-apps, suidregister (<< 0.50), debconf (<< 0.5)
+Conffiles:
+ /etc/pam.d/chfn 264d111e77be5d90f0fe55addfcc29a9
+ /etc/pam.d/chsh a5a92a6bace997a3ca6c34eaafa0dabd
+ /etc/pam.d/passwd eaf2ad85b5ccd06cceb19a3e75f40c63
+Description: Change and administer password and group data
+ This package includes passwd, chsh, chfn, and many other programs to
+ maintain password and group data.
+ .
+ Shadow passwords are supported. See /usr/share/doc/passwd/README.Debian
+
+Package: xlibs-static-pic
+Status: install ok installed
+Priority: extra
+Section: libdevel
+Installed-Size: 980
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs-pic (<< 4.3.0)
+Depends: xlibs-static-dev (= 4.3.0.dfsg.1-7), libxext-dev, libxv-dev, libx11-dev, zlib1g-dev | libz-dev, libc6-dev | libc-dev
+Conflicts: xlibs-pic (<< 4.3.0)
+Description: X Window System client extension library PIC archives
+ This package provides PIC archives (static libraries with PIC information)
+ of the libraries in xlibs-static-dev.
+ .
+ These archives are available for use *only* for linking into objects which
+ will be accessed using the dlopen() function, such as plugin modules for
+ applications.
+ .
+ See the xlibs-static-dev package for a description of the specific libraries
+ available in this package.
+
+Package: libgimpprint1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 840
+Maintainer: Roger Leigh <rleigh@debian.org>
+Architecture: i386
+Source: gimp-print
+Version: 4.2.7-2
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1)
+Suggests: gimpprint-locales (>= 4.2.7-2)
+Description: The Gimp-Print printer driver library
+ This package includes the Gimp-Print shared library, needed to
+ run programs using Gimp-Print drivers.
+ .
+ This is Gimp-Print version 4.2.7, a stable release in
+ the 4.2 line.
+ .
+ Gimp-Print is the print facility for the Gimp, and in addition a
+ suite of drivers that may be used with common UNIX spooling systems
+ using GhostScript or CUPS. These drivers provide printing quality
+ for UNIX/Linux on a par with proprietary vendor-supplied drivers in
+ many cases, and can be used for many of the most demanding printing
+ tasks.
+
+Package: nxtunnel-server
+Status: install ok installed
+Priority: extra
+Section: x11
+Installed-Size: 44
+Maintainer: Peter Rockai (mornfall) <mornfall@danill.sk>
+Architecture: all
+Source: nx
+Version: 1.3.99.2-0
+Depends: ssh, xbase-clients, nxagent
+Recommends: x-window-manager
+Description: server portion of nxtunnel
+ NoMachine NX is the next-generation X compression and roundtrip suppression
+ scheme. It can operate remote X11 sessions over 56k modem dialup links or
+ anything better.
+ .
+ The nxtunnel is a simple script to create NX tunnels, analogous to ssh X
+ forwarding (beware though, it does not support encryption as of now!)
+ .
+ Install this package to allow inbound nx connections from machines with
+ nxtunnel-client installed.
+
+Package: alloyon
+Status: install ok installed
+Priority: extra
+Section: checkinstall
+Installed-Size: 164
+Maintainer: root@sirion
+Architecture: i386
+Version: 0.2-1
+Description: alloyon windeco
+
+Package: xfonts-75dpi
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 4948
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: all
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xfnt75
+Provides: xfnt75
+Depends: xutils (>> 4.0.3)
+Suggests: xfs | xserver
+Conflicts: xfnt75, xbase-clients (<< 4.0)
+Conffiles:
+ /etc/X11/fonts/75dpi/xfonts-75dpi.alias 6bc48023f2ae7f3bfc105db7b0ee6b49
+Description: 75 dpi fonts for X
+ xfonts-75dpi provides a set of bitmapped fonts at 75 dots per inch. In most
+ cases it is desirable to have the X font server (xfs) and/or an X server
+ installed to make the fonts available to X clients.
+ .
+ This package contains only fonts in the ISO 10646-1 and ISO 8859-1
+ encodings, to conserve disk space. For other encodings, see the
+ xfonts-75dpi-transcoded package.
+ .
+ This package and xfonts-100dpi provide the same set of fonts, rendered at
+ different resolutions; only one or the other is necessary, but both may be
+ installed. xfonts-75dpi may be more suitable for small monitors and/or small
+ screen resolutions (under 1024x768).
+ .
+ This package requires the xutils package to prepare the font directories
+ for use by an X server or X font server.
+
+Package: kfind
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 468
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0), kdebase-libs (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libkonq4 (>= 4:3.3.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Conflicts: kdebase-libs (<< 4:3.0.0)
+Description: KDE File Find Utility
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ kfind can be used to find files and directories on your
+ workstations.
+ .
+ This package is part of the official KDE base module.
+
+Package: bsdmainutils
+Status: install ok installed
+Priority: important
+Section: utils
+Installed-Size: 612
+Maintainer: Graham Wilson <graham@debian.org>
+Architecture: i386
+Version: 6.0.15
+Replaces: bsdutils (<< 3.0-0)
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), debconf (>= 0.5) | debconf-2.0, bsdutils (>= 3.0-0), debianutils (>= 1.8)
+Suggests: cpp, wenglish | wordlist, whois, vacation
+Conflicts: textutils (<< 2.0-1), suidmanager (<< 0.50)
+Conffiles:
+ /etc/calendar/default f499e79b0d2d685aa5ae7e1013940b96
+ /etc/cron.daily/bsdmainutils f58739ed756eb2efa7b73f377976a5e4
+Description: collection of more utilities from FreeBSD
+ This package contains lots of small programs many people expect to find
+ when they use a BSD-style Unix system.
+ .
+ Included are: banner, ncal, cal, calendar, col, colcrt, colrm, column, from,
+ hexdump, look, lorder, ul, write.
+ .
+ This package used to contain whois and vacation, which are now distributed
+ in their own packages. Also here was tsort, which is now in the "coreutils"
+ package.
+
+Package: libimlib2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 524
+Maintainer: Laurence J. Lane <ljlane@debian.org>
+Architecture: i386
+Source: imlib2
+Version: 1.1.0-12.3
+Depends: libc6 (>= 2.3.2.ds1-4), libfreetype6 (>= 2.1.5-1), libjpeg62, libpng12-0 (>= 1.2.5.0-4), libtiff4, libungif4g (>= 4.1.3), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Description: powerful image loading and rendering library
+ Imlib2 is an advanced replacement library for libraries like
+ libXpm that provides many more features with much greater
+ flexibility and speed than standard libraries, including font
+ rasterization, rotation, RGBA space rendering and blending,
+ dynamic binary filters, scripting, and more.
+ .
+ Imlib2 is not a drop-in replacement for Imlib 1.x.
+
+Package: distcc
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 344
+Maintainer: Carsten Wolff <carsten@wolffcarsten.de>
+Architecture: i386
+Version: 2.17-1
+Depends: libc6 (>= 2.3.2.ds1-4), libpopt0 (>= 1.7), adduser, debconf, netbase (>= 4.09)
+Suggests: distccmon-gnome
+Conffiles:
+ /etc/logrotate.d/distcc 5520b48277176e09cccb8ffcd17d7e38
+ /etc/init.d/distcc 3ca010ded8190b2d6181ed912e470103
+Description: Simple distributed compiler client and server
+ distcc is a program to distribute compilation of C or C++ code across
+ several machines on a network. distcc should always generate the same
+ results as a local compile, is simple to install and use, and is often
+ significantly faster than a local compile. distcc does not require all
+ machines to share a filesystem, have synchronized clocks, or to have
+ the same libraries or header files installed.
+ .
+ http://distcc.samba.org/
+
+Package: pcscd
+Status: install ok installed
+Priority: extra
+Section: misc
+Installed-Size: 260
+Maintainer: Ludovic Rousseau <rousseau@debian.org>
+Architecture: i386
+Source: pcsc-lite
+Version: 1.2.9-beta6-1
+Depends: libccid | pcsc-ifd-handler, libc6 (>= 2.3.2.ds1-4), libpcsclite1 (>= 1.2.9-beta6-1), libusb-0.1-4 (>= 1:0.1.8)
+Conflicts: libpcsclite0 (<< 1.2.0-rc1-1)
+Conffiles:
+ /etc/reader.conf.d/0comments 46048242fb7fcc3164663bca6801c1b3
+ /etc/init.d/pcscd b360c71a7064f864475e7033c33cb6de
+Description: Middleware to access a smart card using PC/SC (daemon side)
+ The purpose of PC/SC Lite is to provide a Windows(R) SCard interface
+ in a very small form factor for communicating to smart cards and
+ smart cards readers.
+ .
+ The PC/SC daemon is used to dynamically allocate/deallocate reader
+ drivers at runtime and manage connections to the readers.
+ .
+ Also contains formaticc(1) to send one or more request APDU's to a
+ smarcard and get responses and bundleTool(8).
+ .
+ pcsc-lite is part of the MUSCLE project http://musclecard.com/
+ .
+ Homepage: http://pcsclite.alioth.debian.org/
+
+Package: kernel-image-2.6.4-1-686
+Status: install ok installed
+Priority: optional
+Section: base
+Installed-Size: 42744
+Maintainer: Herbert Xu <herbert@debian.org>
+Architecture: i386
+Source: kernel-image-2.6.4-i386
+Version: 2.6.4-1
+Provides: kernel-image, kernel-image-2.6
+Depends: initrd-tools (>= 0.1.59), coreutils | fileutils (>= 4.0), module-init-tools (>= 0.9.13)
+Suggests: lilo (>= 19.1) | grub, fdutils, kernel-doc-2.6.4 | kernel-source-2.6.4
+Conflicts: hotplug (<< 0.0.20040105-1)
+Description: Linux kernel image for version 2.6.4 on PPro/Celeron/PII/PIII/PIV.
+ This package contains the Linux kernel image for version 2.6.4 on
+ Pentium Pro/Celeron/Pentium II/Pentium III/Pentium IV,
+ the corresponding System.map file, and the modules built by the packager.
+ It also contains scripts that try to ensure that the system is not left in
+ a unbootable state after an update.
+ .
+ If you wish to update a bootdisk, or to use a bootloader to make
+ installing and using the image easier, we suggest you install the latest
+ fdutils (for formatting a floppy to be used as boot disk), and LILO, for a
+ powerful bootloader. Of course, both these are optional.
+ .
+ Kernel image packages are generally produced using kernel-package,
+ and it is suggested that you install that package if you wish to
+ create a custom kernel from the sources.
+
+Package: hostname
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 76
+Maintainer: Graham Wilson <graham@debian.org>
+Version: 2.13
+Pre-Depends: libc6 (>= 2.3.2.ds1-4)
+Description: A utility to set/show the host name or domain name
+ The hostname command can be used to either set or display
+ the current host or domain name of the system. This name is
+ used by many of the networking programs to identify the machine.
+ The domain name is also used by NIS/YP.
+
+Package: kompare
+Status: deinstall ok config-files
+Priority: optional
+Section: devel
+Installed-Size: 1032
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdesdk
+Version: 4:3.2.1-1
+Config-Version: 4:3.2.1-1
+Depends: kdelibs4 (>= 4:3.2.1), libart-2.0-2 (>= 2.3.8), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: a KDE GUI for viewing differences between files
+ Kompare is a KDE GUI for viewing the differences between two files.
+ It will also optionally create a diff file.
+ .
+ This package is part of the KDE Software Development Kit.
+
+Package: acct
+Status: deinstall ok config-files
+Priority: optional
+Section: admin
+Installed-Size: 282
+Maintainer: Luis Bustamante <luferbu@fluidsignal.com>
+Architecture: i386
+Version: 6.3.5-39
+Config-Version: 6.3.5-39
+Depends: libc6 (>= 2.3.2.ds1-4), debconf (>= 1.2.9)
+Conffiles:
+ /etc/cron.daily/acct 8873a8cf994ebe1c5ec2693a056e4fd7
+ /etc/cron.monthly/acct 43b8efd82d34e493bce21fda2171235d
+ /etc/init.d/acct 368902b86e5d1533f9631aeeb521e10c
+Description: The GNU Accounting utilities for process and login accounting
+ The GNU Accounting utilities `ac', `accton', `last', `lastcomm', and
+ `sa' add login and process accounting support to Debian GNU/Linux.
+ "Login accounting" provides summaries of system resource usage based
+ on connect time, and "process accounting" provides summaries based on
+ the commands executed on the system. The 'last' command is provided by
+ the Debian sysvinit package and not included here.
+
+Package: vimpart
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 396
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeaddons
+Version: 4:3.2.3-2
+Replaces: libvimpart0, libvimpart-dev
+Provides: libvimpart0, libvimpart-dev
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), kcontrol (>= 4:3.2.0), kvim | kvim-perl | kvim-python | kvim-ruby | kvim-tcl | vim-gnome | vim-gtk | vim-lesstif | vim-perl | vim-python | vim-ruby | vim-tcl
+Conflicts: libvimpart0, libvimpart-dev
+Description: embedded Vim text editor component for KDE
+ This package allows the text editor Vim to be embedded into a number of
+ different KDE applications. It does this by encapsulating Vim within a
+ KPart (an embedded KDE component).
+ .
+ Applications that can make use of the Vim part include KDevelop,
+ Konqueror and KWrite.
+ .
+ Note that this component requires a graphical version of Vim (such as KVim
+ or GVim) to be installed separately. The Vim component may also need
+ to be configured before use - this can be done in the KDE Components
+ section of the KDE Control Centre.
+ .
+ This package is part of the KDE add-ons module.
+
+Package: atlantikdesigner
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 328
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeaddons
+Version: 4:3.2.3-2
+Depends: atlantik (>= 4:3.2.3), kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libkdegames1 (>= 4:3.2.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Enhances: atlantik
+Description: game board designer for Atlantik
+ Atlantik Designer is a game board designer for Atlantik.
+ .
+ Atlantik is a KDE client for playing Monopoly-like board games on the
+ monopd network. The purpose of Atlantik is to acquire land in major
+ cities in North America and Europe while being a transatlantic traveller.
+ .
+ This package is part of the KDE add-ons module.
+
+Package: gpgsm
+Status: purge ok not-installed
+Priority: optional
+Section: unknown
+
+Package: kstars
+Status: install ok installed
+Priority: optional
+Section: science
+Installed-Size: 5012
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeedu
+Version: 4:3.2.3-2
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.4-1), libice6 | xlibs (>> 4.1.0), libkdeedu1 (>= 4:3.1.95-0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), kstars-data (= 4:3.2.3-2)
+Recommends: kdeedu-data (>= 4:3.2.3-2)
+Suggests: konqueror, khelpcenter, kdeedu-doc-html
+Description: desktop planetarium for KDE
+ KStars is a graphical desktop planetarium for KDE. It depicts an
+ accurate simulation of the night sky, including stars, constellations,
+ star clusters, nebulae, galaxies, all planets, the Sun, the Moon,
+ comets and asteroids. You can see the sky as it appears from any
+ location on Earth, on any date.
+ .
+ The user interface is highly intuitive and flexible. The display can
+ be panned and zoomed with the mouse, and you can easily identify
+ objects and track their motion across the sky. KStars includes many
+ powerful features, yet the interface is clean and simple and fun to use.
+ .
+ This package is part of the official KDE edutainment module.
+
+Package: knewsticker-scripts
+Status: install ok installed
+Priority: optional
+Section: web
+Installed-Size: 104
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: all
+Source: kdeaddons
+Version: 4:3.2.3-2
+Depends: perl, python, libfinance-quote-perl, libmime-perl, libnews-nntpclient-perl, libwww-perl
+Recommends: knewsticker
+Enhances: knewsticker
+Description: scripts for KNewsTicker, the KDE news ticker
+ This package contains a variety of scripts that provide additional news
+ sources for KNewsTicker, the news ticker applet for the KDE panel. See
+ /usr/share/doc/knewsticker-scripts/README.Debian for usage details.
+ .
+ Highlights include newsgroup handling, stock data retrieval, sports scores
+ and various local news sources.
+ .
+ This package is part of the KDE add-ons module.
+
+Package: libsensors-dev
+Status: install ok installed
+Priority: extra
+Section: devel
+Installed-Size: 300
+Maintainer: Aurelien Jarno <aurel32@debian.org>
+Architecture: i386
+Source: lm-sensors
+Version: 2.8.7-8
+Depends: libsensors3 (= 2.8.7-8)
+Conflicts: libsensors3 (<= 2.8.6-1)
+Description: Lm-sensors development kit
+ Lm-sensors is a hardware health monitoring package for Linux. It allows you
+ to access information from temperature, voltage, and fan speed sensors. It
+ works with most newer systems.
+ .
+ This package contains the static library and header files used in
+ development.
+ .
+ Homepage: http://www.lm-sensors.nu
+
+Package: nmap
+Status: install ok installed
+Priority: extra
+Section: net
+Installed-Size: 1692
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Version: 3.70-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libpcre3 (>= 4.5), libssl0.9.7, libstdc++5 (>= 1:3.3.4-1)
+Description: The Network Mapper
+ Nmap is a utility for network exploration or security auditing. It
+ supports ping scanning (determine which hosts are up), many port
+ scanning techniques, version detection (determine service protocols
+ and application versions listening behind ports), and TCP/IP
+ fingerprinting (remote host OS or device identification). Nmap also
+ offers flexible target and port specification, decoy/stealth scanning,
+ sunRPC scanning, and more. Most Unix and Windows platforms are
+ supported in both GUI and commandline modes. Several popular handheld
+ devices are also supported, including the Sharp Zaurus and the iPAQ.
+
+Package: fakeroot
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 248
+Maintainer: Clint Adams <schizo@debian.org>
+Architecture: i386
+Version: 1.0.7
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Gives a fake root environment
+ This package is intended to enable something like:
+ dpkg-buildpackage -rfakeroot
+ i.e. to remove the need to become root for a package build.
+ This is done by setting LD_PRELOAD to libfakeroot.so,
+ which provides wrappers around getuid, chown, chmod, mknod,
+ stat, and so on, thereby creating a fake root environment.
+ .
+ fakeroot requires SYSV IPC to operate.
+
+Package: ktouch
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 1752
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeedu
+Version: 4:3.2.3-2
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.4-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: kdeedu-data (>= 4:3.2.3-2)
+Suggests: khelpcenter, kdeedu-doc-html
+Description: touch typing tutor for KDE
+ KTouch is a program for learning touch typing - it helps you learn to
+ type on a keyboard quickly and correctly. Every finger has its place on
+ the keyboard with associated keys to press.
+ .
+ KTouch helps you learn to touch type by providing you with text to
+ train on, and adjusts to different levels depending on how good you are.
+ It can display which key to press next, and the correct finger to use.
+ .
+ This package is part of the official KDE edutainment module.
+
+Package: kdesktop
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 1292
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0), konqueror (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libjpeg62, libkonq4 (>= 4:3.3.0), libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), kdebase-bin
+Recommends: eject
+Conffiles:
+ /etc/kde3/kdesktop_custom_menu1 3a0fcba22deba53030c9bc76e4dc43d4
+ /etc/kde3/kdesktop_custom_menu2 33eb3167478728fc1ec1ee85f9aaa418
+Description: KDE Desktop
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KDE Desktop
+ .
+ This package is part of the official KDE base module.
+
+Package: elinks
+Status: install ok installed
+Priority: optional
+Section: web
+Installed-Size: 2888
+Maintainer: Peter Gervai <grin@tolna.net>
+Architecture: i386
+Version: 0.9.1+0.9.2pre4-1
+Provides: links, www-browser
+Depends: libbz2-1.0, libc6 (>= 2.3.2.ds1-4), libexpat1 (>= 1.95.6), libgnutls11 (>= 1.0.16), libgpmg1 (>= 1.19.6-1), liblua50 (>= 5.0.2-5), liblualib50 (>= 5.0.2-5), zlib1g (>= 1:1.2.1), debconf
+Conffiles:
+ /etc/elinks/elinks.conf 0df0daf93afd3f55019a69239f422bc2
+Description: Character mode WWW/FTP browser
+ ELinks (Enhanced Links) is a lynx-like character mode browser,
+ created from the Links browser with many patches and enhancements.
+ It includes support for rendering tables and frames, features
+ background downloads, can display colors, supports the Lua scripting
+ language, IPV6 and has many other features. ELinks is linked against
+ GNUTLS to prevent license issues.
+
+Package: hotplug
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 368
+Maintainer: Fumitoshi UKAI <ukai@debian.or.jp>
+Architecture: all
+Version: 0.0.20040329-15
+Replaces: usbmgr
+Depends: module-init-tools | modutils (>= 2.4.2), debconf (>= 0.2.26), procps, grep (>= 2.5.1.ds1-2)
+Recommends: ifupdown, usbutils, pciutils
+Suggests: ifrename
+Conflicts: usbmgr, alsa-base (<< 1.0.4-2)
+Conffiles:
+ /etc/hotplug/dasd.agent 43d7f539a49a83db8ba0a35fde846391
+ /etc/hotplug/firmware.agent b4692afca964f4c7e2af1bb65b3fad1a
+ /etc/hotplug/ieee1394.agent 0bf4a1bafa516ea342c6772fb16da74e
+ /etc/hotplug/input.agent 9a3b3f63a9448f6e36ea51bdf27bd180
+ /etc/hotplug/net.agent 6267a0d735d0ac2a591dfe034a0d61d7
+ /etc/hotplug/pci.agent 753854bee5b8cf45ee9b298c6fcaf8a2
+ /etc/hotplug/scsi.agent ccddf2a7c9b885038f6e344c49463d4b
+ /etc/hotplug/tape.agent 43b1781f5745d09882c65c599f70027f
+ /etc/hotplug/usb.agent 97a1c4ca684972a8186c86c0749edde1
+ /etc/hotplug/input.rc d6eb923faa5b7992fb3c23bd38d4e616
+ /etc/hotplug/net.rc 2f4d5ea50b2065d339e166ae3570aa7a
+ /etc/hotplug/pci.rc 82552e73ca01418deebe38e614c14c1b
+ /etc/hotplug/usb.rc 841d69b439ccaaad48064a72b8acce8f
+ /etc/hotplug/net.ifup ff1a0e19d8743ab26ff2dd3d8476441e
+ /etc/hotplug/dasd.permissions 12df3c44c04a5e8a436cc32ca0b37e3e
+ /etc/hotplug/tape.permissions 029d45c5c09b966daefe619dd17ee311
+ /etc/hotplug/isapnp.rc c460f1593228bc3de42b42b2963bb482
+ /etc/hotplug/usb.handmap defe1b9758c9977183231582f8784deb
+ /etc/hotplug/blacklist 476d170c3d9219806dd6c8c533495570
+ /etc/hotplug/hotplug.functions 761db2d424891b662570691454ed33c7
+ /etc/hotplug.d/default/default.hotplug 0a45d6dd375f1dd4a0cbcce1616e1eb4
+ /etc/modprobe.d/isapnp/isapnp.aliases c1e026ac43bd13113c343605f7eb80c5
+ /etc/logcheck/violations.ignore.d/hotplug a3c30b54c9fb96a53cf33e9410a61d99
+ /etc/init.d/hotplug 7da2bb4c357524e5090d61bd595eb172
+Description: Linux Hotplug Scripts
+ This package contains the scripts necessary for hotplug Linux support,
+ and lets you plug in new devices and use them immediately.
+ It includes support for PCI, Cardbus (PCMCIA), USB and Firewire devices
+ and can automatically configure network interfaces.
+
+Package: kwin-style-mkultra
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 152
+Maintainer: Mike Hommey <mh@glandium.org>
+Source: mkultra
+Version: 0.2.1-3
+Depends: kdelibs4 (>= 4:3.1.4), libart-2.0-2 (>= 2.3.8), libaudio2, libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.3.2-1), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.1), libstdc++5 (>= 1:3.3.2-1), libxcursor1, libxft2 (>> 2.1.1), xlibmesa3-gl | libgl1, xlibs (>= 4.2.0), zlib1g (>= 1:1.2.1)
+Description: Lightweight KDE window decoration theme
+ MKUltra is a lightweight native KDE window decoration theme derived
+ from the minimalist and excellent Web theme.
+ .
+ MKUltra ought to appeal to those out there who aren't impressed by
+ super complex alpha-blended reflective throbbing multithreaded aqua
+ clones/alternatives.
+
+Package: libacl1
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 48
+Maintainer: Nathan Scott <nathans@debian.org>
+Source: acl
+Version: 2.2.23-1
+Depends: libattr1 (>= 2.4.4-1), libc6 (>= 2.3.2-1)
+Conflicts: acl (<< 2.0.0), libacl1-kerberos4kth
+Description: Access control list shared library
+ This package contains the libacl.so dynamic library containing
+ the POSIX 1003.1e draft standard 17 functions for manipulating
+ access control lists.
+
+Package: libsigsegv-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 76
+Maintainer: Will Newton <will@debian.org>
+Architecture: i386
+Source: libsigsegv
+Version: 2.1-1
+Description: Library for handling page faults in a portable way.
+ GNU libsigsegv is a library that allows handling page faults in a
+ portable way. It is used e.g. for generational garbage collectors
+ and stack overflow handlers.
+ .
+ This package contains the libsigsegv development files.
+
+Package: supertux-data
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 13280
+Maintainer: Gürkan Sengün <gurkan@linuks.mine.nu>
+Architecture: all
+Source: supertux
+Version: 0.1.2-1
+Description: Levels for classic 2D jump 'n run sidescroller with Tux
+ SuperTux is a classic 2D jump 'n run sidescroller game in a similar
+ style like the original SuperMario games. This is the game data.
+
+Package: screen
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 980
+Maintainer: Adam Lazur <zal@debian.org>
+Architecture: i386
+Version: 4.0.2-4
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), libpam0g (>= 0.76), base-passwd (>= 2.0.3.4), passwd (>= 1:4.0.3-10)
+Pre-Depends: debconf (>= 0.2.17)
+Conflicts: suidmanager (<< 0.52)
+Conffiles:
+ /etc/screenrc 0f03c578a71c3af3ed4d92a5557e7a5a
+ /etc/init.d/screen-cleanup a901aec1dd4e30bfd69988dc2a2b612a
+Description: a terminal multiplexor with VT100/ANSI terminal emulation
+ screen is a terminal multiplexor that runs several separate "screens" on a
+ single physical character-based terminal. Each virtual terminal emulates a
+ DEC VT100 plus several ANSI X3.64 and ISO 2022 functions. Screen sessions
+ can be detached and resumed later on a different terminal.
+ .
+ Screen also supports a whole slew of other features. Some of these are:
+ configurable input and output translation, serial port support, configurable
+ logging, multi-user support, and utf8 charset support.
+
+Package: libstartup-notification0
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 64
+Maintainer: Ondřej Surý <ondrej@debian.org>
+Architecture: i386
+Source: startup-notification
+Version: 0.6-2
+Config-Version: 0.6-2
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0)
+Description: library for program launch feedback (shared library)
+ startup-notification is a library which allows programs to give the user
+ visual feedback that they are being launched; this is typically implemented
+ using a busy cursor. This library is currently used by GNOME programs, but
+ is part of the freedesktop.org suite of cross-desktop libraries.
+ .
+ This package contains the shared library.
+
+Package: xlibmesa-dri
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 13988
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibmesa3 (<< 4.2.1-5), xlibmesa3-gl
+Depends: xlibmesa-gl
+Suggests: libglide3
+Conflicts: xlibmesa3 (<< 4.2.1-5), xlibmesa3-gl
+Description: Mesa 3D graphics library modules [XFree86]
+ Chipset-specific DRI modules for the Mesa library, if available for your
+ machine architecture, are provided in this package. (Unlike the modules in
+ the xserver-xfree86 package, the DRI modules are loaded by the Mesa library,
+ not by the X server itself.)
+ .
+ This package suggests the libglide3 package, which is necessary for 3D
+ acceleration support for users of 3Dfx Interactive's Voodoo Banshee, Voodoo3,
+ Voodoo4, and Voodoo5 cards. Users of other video cards need not install
+ libglide3. Note that 3D acceleration support for 3Dfx cards is not available
+ for the PowerPC and SPARC architectures.
+
+Package: mencoder-586
+Status: install ok installed
+Priority: extra
+Section: graphics
+Installed-Size: 5296
+Maintainer: Christian Marillat <marillat.christian@wanadoo.fr>
+Architecture: i386
+Source: mplayer
+Version: 1:1.0-pre5-0.0
+Replaces: mencoder-k7, mencoder-386, mencoder-686, mencoder-custom
+Provides: mencoder
+Depends: libasound2 (>> 1.0.5), libc6 (>= 2.3.2.ds1-4), libcdparanoia0 (>= 3a9.8-11), libdivxdecore0 (>= 1:5.0.1), libdivxencore0 (>= 1:5.0.1), libdv4, libdvdread3, libfaad2-0 (>= 2.0.0-0.0), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libfribidi0, libjpeg62, liblame0 (>= 3.96-1), liblircclient0, liblzo1, libmad0 (>= 0.15.1b), libncurses5 (>= 5.4-1), libogg0 (>= 1.1.0), libpng12-0 (>= 1.2.5.0-4), libpostproc0 (>= 0.90rc4), libsmbclient (>= 3.0.2a-1), libstdc++5 (>= 1:3.3.4-1), libtheora0, libungif4g (>= 4.1.0b1), libvorbis0a (>= 1.0.1), libxvidcore4 (>= 1:1.0.0-rc4-0.0), zlib1g (>= 1:1.2.1)
+Suggests: w32codecs (>= 0.91-1), libdvdcss, mplayer-doc
+Conflicts: mencoder-k6, mencoder-k7, mencoder-386, mencoder-custom
+Conffiles:
+ /etc/mplayer/mencoder_codecs.conf 3a2f67f92d434aa52fe06d1d7c7f7565
+Description: MPlayer's Movie Encoder
+ A simple movie encoder, designed to encode MPlayer-playable movies
+ (AVI/ASF/OGG/DVD/VCD/VOB/MPG/MOV/VIV/FLI/RM/NUV/NET) to other
+ MPlayer-playable formats. It can encode with various codecs, like DivX4 (1
+ or 2 passes), libavcodec, PCM/MP3/VBRMP3 audio. Also has stream copying and
+ video resizing abilities.
+ .
+ This version is for Pentium Pro/Celeron/Pentium II/Pentium IIIPentium
+ Pro/Celeron/Pentium II/Pentium III/Pentium IV
+
+Package: libpisock8
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 196
+Maintainer: Ludovic Rousseau <rousseau@debian.org>
+Architecture: i386
+Source: pilot-link
+Version: 0.11.8-10
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), libreadline4 (>= 4.3-1)
+Suggests: jpilot, pilot-link, malsync, kpilot, gnome-pilot, evolution
+Description: Library for communicating with a PalmOS PDA
+ libpisock8 is a library used by pilot-link programs and any other
+ packages that want to communicate with a PalmOS device.
+ .
+ See packages jpilot, pilot-link, malsync, kpilot, gnome-pilot,
+ evolution if you are looking to user programs for your PDA.
+ .
+ Homepage: http://www.pilot-link.org/
+
+Package: libpam-runtime
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 180
+Maintainer: Sam Hartman <hartmans@debian.org>
+Architecture: all
+Source: pam
+Version: 0.76-22
+Replaces: libpam0g-util, libpam0g-dev
+Conflicts: libpam0g-util, libpam0g (<< 0.66-0)
+Conffiles:
+ /etc/pam.conf c29f5bbea9887ff059b5973185c82212
+ /etc/pam.d/other 31aa7f2181889ffb00b87df4126d1701
+Description: Runtime support for the PAM library
+ Contains configuration files and directories required for
+ authentication to work on Debian systems. This package is required
+ on almost all installations.
+
+Package: cmake
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 6608
+Maintainer: A. Maitland Bottoms <bottoms@debian.org>
+Architecture: i386
+Version: 2.0.3-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1), zlib1g (>= 1:1.2.1)
+Description: A cross-platform, open-source make system
+ CMake is used to control the software compilation process using
+ simple platform and compiler independent configuration files. CMake
+ generates native makefiles and workspaces that can be used in the
+ compiler environment of your choice. CMake is quite sophisticated: it
+ is possible to support complex environments requiring system
+ configuration, pre-processor generation, code generation, and template
+ instantiation.
+ .
+ CMake was developed by Kitware as part of the NLM Insight
+ Segmentation and Registration Toolkit project. The ASCI VIEWS project
+ also provided support in the context of their parallel computation
+ environment. Other sponsors include the Insight, VTK, and VXL open
+ source software communities.
+
+Package: kdewallpapers
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 2356
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: all
+Source: kdeartwork
+Version: 4:3.2.3-2
+Replaces: kdeartwork-theme-desktop (<= 4:3.1.2-1)
+Suggests: kwin | x-window-manager
+Conflicts: kdeartwork-theme-desktop (<= 4:3.1.2-1)
+Description: wallpapers released with KDE
+ This package contains additional wallpapers that come with the official
+ KDE release. Wallpapers can be applied using the background manager in
+ the KDE Control Centre.
+ .
+ This package is part of the KDE artwork module.
+
+Package: libpisock4
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+
+Package: libaudio2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 148
+Maintainer: Steve McIntyre <93sam@debian.org>
+Architecture: i386
+Source: nas
+Version: 1.6d-2
+Replaces: nas-lib
+Provides: nas-lib
+Depends: libc6 (>= 2.3.2.ds1-4), libxt6 | xlibs (>> 4.1.0)
+Suggests: nas
+Conflicts: nas-lib
+Description: The Network Audio System (NAS). (shared libraries)
+ The Network Audio System was developed by NCD for playing, recording, and
+ manipulating audio data over a network. Like the X Window System, it uses
+ the client/server model to separate applications from the specific drivers
+ that control audio input and output devices.
+ .
+ This package contains the nas library (libaudio), needed for both remote
+ and local output.
+
+Package: nxserver
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 80
+Maintainer: Peter Rockai (mornfall) <mornfall@danill.sk>
+Architecture: all
+Version: 0.1-3
+Depends: nxagent, nxssh, nxproxy
+Description: FreeNX application/thin-client server based on NX technology
+ NoMachine NX is the next-generation X compression and roundtrip suppression
+ scheme. It can operate remote X11 sessions over 56k modem dialup links or
+ anything better.
+ .
+ This package contains a free (GPL) implementation of the nxserver component.
+
+Package: foomatic-db-engine
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 704
+Maintainer: Chris Lawrence <lawrencc@debian.org>
+Architecture: i386
+Version: 3.0.1-20040506-1
+Replaces: foomatic-bin (<< 2.9)
+Depends: perl (>= 5.6.0-16), libc6 (>= 2.3.2.ds1-4), libxml2 (>= 2.6.8), zlib1g (>= 1:1.2.1), foomatic-db, foomatic-filters, wget | curl
+Pre-Depends: bash (>= 2.05)
+Recommends: netcat
+Suggests: foomatic-db-hpijs, foomatic-db-gimp-print, foomatic-gui
+Conflicts: foomatic-bin (<< 2.9), foomatic-db (<< 2.9)
+Description: linuxprinting.org printer support - programs
+ Foomatic is a printing system designed to make it easier to set up
+ common printers for use with Debian (and other operating systems).
+ It provides the "glue" between a print spooler (like CUPS or lpr) and
+ your actual printer, by telling your computer how to process files
+ sent to the printer.
+ .
+ This package contains the architecture-dependent programs needed to
+ set up and maintain the foomatic system. You will also need one or
+ more database packages. The foomatic-db package includes drivers for
+ most common printers using Ghostscript as the print processor, as
+ well as some common glue code used in other filter systems.
+ .
+ foomatic-db-hpijs includes support for photo-quality printing with
+ Hewlett-Packard and some other consumer inkjets using the HPIJS
+ backend developed by HP.
+ .
+ foomatic-db-gimp-print includes support for photo-quality printing
+ with many consumer inkjets (including those from HP and Epson).
+ .
+ foomatic-gui provides a GNOME-based setup tool for Foomatic printer
+ queues using the command-line tools provided in this package.
+ .
+ Home Page: http://www.linuxprinting.org/
+
+Package: docbook-xml
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 1697
+Maintainer: Adam Di Carlo <aph@debian.org>
+Architecture: all
+Version: 4.3-1
+Provides: docbk-xml
+Depends: sgml-data (>= 2.0.2), symlinks, xml-core (>= 0.05), sgml-base (>= 1.17)
+Suggests: docbook, docbook-doc, docbook-dsssl, docbook-xsl
+Conffiles:
+ /etc/sgml/docbook-xml/3.1.7/dbgenent.ent 28693def65ae112326d36adcc6120d7d
+ /etc/sgml/docbook-xml/4.0/dbgenent.ent e12c1ec4ee0669dd4fad8aa06f51d650
+ /etc/sgml/docbook-xml/4.1.2/dbgenent.mod ff50724b83f8882fc9e8231523b01606
+ /etc/sgml/docbook-xml/4.2/dbgenent.mod 081cd00c46a110da400770eb9baf968b
+ /etc/sgml/docbook-xml/4.3/dbgenent.mod ce4a918789b89c9bd47e67ea708397e2
+Description: standard XML documentation system, for software and systems
+ DocBook is an XML document type definition (DTD). That is, it
+ contains the "DocBook" document structure. This is used by authors
+ or editors writing documents in the DocBook XML format. DocBook was
+ designed for books, articles, or reference documentation about
+ technical matters or software. It has emerged as an open, standard
+ DTD in the software industry, and is the documentation system of
+ choice for many free software projects.
+ .
+ This package contains the XML DTD for DocBook, which describes the
+ formal structure for documents following this format. If you wish to
+ author DocBook documents using SGML rather than XML, use the
+ 'docbook' package. You will need other packages in order to edit
+ (psgml), validate (opensp, libxml2) or format (docbook-xsl,
+ docbook-dsssl) DocBook documents.
+ .
+ This package ships with the latest DocBook XML DTD, as well as a
+ select set of legacy DTDs for use with older documents.
+ .
+ Homepage: http://www.oasis-open.org/docbook/xml/
+
+Package: librsvg2-common
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 124
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Source: librsvg2
+Version: 2.7.2-5
+Depends: libart-2.0-2 (>= 2.3.16), libatk1.0-0 (>= 1.6.0), libbonobo2-0 (>= 2.6.2), libc6 (>= 2.3.2.ds1-4), libcroco3 (>= 0.6.0), libglib2.0-0 (>= 2.4.1), libgnomevfs2-0 (>= 2.6.0), libgsf-1 (>= 1.10.0), libgtk2.0-0 (>= 2.4.4), liborbit2 (>= 1:2.10.0), libpango1.0-0 (>= 1.4.0), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1), libgtk2.0-bin (>= 2.4.1-3), libgtk2.0-common (>= 2.4.1-3), librsvg2-2 (>= 2.7.2-5)
+Description: SAX-based renderer library for SVG files. (for GNOME2)
+ SAX-based renderer library for SVG files.
+ .
+ This package includes the gdk-pixbuf loader and a GTK+ engine.
+
+Package: gcc-3.2-base
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 152
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Source: gcc-3.2 (1:3.2.3ds9-9)
+Version: 1:3.2.3-9
+Description: The GNU Compiler Collection (base package)
+ This package contains files common to all languages and libraries
+ contained in the GNU Compiler Collection (GCC).
+
+Package: exim
+Status: deinstall ok config-files
+Priority: important
+Section: mail
+Installed-Size: 1213
+Maintainer: Mark Baker <mbaker@iee.org>
+Version: 3.35-1
+Config-Version: 3.35-1
+Replaces: mail-transport-agent
+Provides: mail-transport-agent
+Depends: libc6 (>= 2.2.4-4), libdb2 (>= 2:2.7.7-4), libident (>= 0.22-1), libldap2 (>= 2.0.2-2), libpam0g, libpcre3, cron (>= 3.0pl1-42)
+Recommends: netbase
+Suggests: mail-reader, eximon
+Conflicts: mail-transport-agent, exim-doc-html (<= 3.00-2), suidregister (<< 0.50)
+Conffiles:
+ /etc/init.d/exim 70bafa4597d3d9037b7973afae2ddfc2
+ /etc/cron.daily/exim 95382bca7260c0e87d84d8c566c9fe0d
+ /etc/cron.d/exim a172ac39dfebda0a45cb5851cd0edb4d
+ /etc/ppp/ip-up.d/exim b3875ed036bd9e2a22bb6e1c6f0b4acc
+ /etc/email-addresses 6bea09fbb18e4676012105fa5fc726c6
+Description: An MTA (Mail Transport Agent)
+ This MTA is rather easier to configure than smail or sendmail.
+ It is a drop-in replacement for sendmail/mailq/rsmtp.
+ Advanced features include the ability to reject connections from
+ known spam sites, and an extremely efficient queue processing
+ algorithm.
+
+Package: libtunepimp2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 472
+Maintainer: Robert Jordens <jordens@debian.org>
+Architecture: i386
+Source: libtunepimp
+Version: 0.3.0-2
+Depends: libc6 (>= 2.3.2.ds1-4), libflac4, libgcc1 (>= 1:3.4.1-3), libmad0 (>= 0.15.1b), libmusicbrainz4 (>= 2.1.1), libogg0 (>= 1.1.0), libstdc++5 (>= 1:3.3.4-1), libvorbis0a (>= 1.0.1), libvorbisfile3 (>= 1.0.1)
+Suggests: libtunepimp2-dev, libtunepimp-bin
+Description: MusicBrainz tagging library and simple tagger application
+ Libtunepimp simplifies tagging your audio files with the correct data
+ about artist, album and track title using the MusicBrainz infrastrucure.
+ It works on top of libmusicbrainz and libraries to read audio in mp3, flac, wav
+ and ogg files.
+
+Package: gdk-imlib1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 288
+Maintainer: Steve M. Robbins <smr@debian.org>
+Architecture: i386
+Source: imlib+png2
+Version: 1.9.14-16
+Replaces: gdk-imlib-nonfree1, libgdk-imlib-nonfree1, libgdk-imlib1
+Provides: gdk-imlib, libgdk-imlib1
+Depends: imlib-base (>= 1.9.14-1), libc6 (>= 2.3.2.ds1-4), libglib1.2 (>= 1.2.0), libgtk1.2 (>= 1.2.10-4), libjpeg62, libpng10-0 (>= 1.0.15-4), libtiff4, libungif4g (>= 4.1.3), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxi6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Suggests: imlib-progs
+Conflicts: gdk-imlib-nonfree1, libgdk-imlib-nonfree1, libgdk-imlib1
+Description: imaging library for use with gtk (using libpng2)
+ Gdk-Imlib is a low-level gdk interface for gtk programmers. It allows easier
+ access to many graphics formats and can write to them as well.
+ .
+ This version is linked to libpng2.
+
+Package: libdvdread3-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 256
+Maintainer: Mikael Hedin <micce@debian.org>
+Architecture: i386
+Source: libdvdread
+Version: 0.9.4-5
+Provides: libdvdread-dev
+Depends: libdvdread3 (= 0.9.4-5)
+Conflicts: libdvdread-dev, libdvdread2-dev
+Description: Simple foundation for reading DVDs
+ To allow applications to access some of the more advanced features
+ of the DVD format, libdvdread offers:
+ .
+ 1. A simple abstraction for reading the files on a DVD image
+ (dvd_reader.h).
+ 2. A simple library for parsing the information (IFO) files
+ (ifo_read.h/ifo_types.h).
+ 3. A simple library for parsing the navigation (NAV) packets
+ (nav_read.h/nav_types.h).
+ .
+ libdvdread currently uses libdl to dynamically probe for libdvdcss at
+ runtime, if found, libdvdcss will be used to decrypt sections of the
+ DVD as necessary.
+ .
+ libdvdread-dev contains static libraries, headers, and some documentation.
+
+Package: sysvinit
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 320
+Maintainer: Miquel van Smoorenburg <miquels@cistron.nl>
+Architecture: i386
+Version: 2.86-5
+Replaces: last, bsdutils (<= 2.0-2)
+Depends: coreutils
+Pre-Depends: libc6 (>= 2.3.2.ds1-4), initscripts, sysv-rc (>= 2.85-2) | file-rc (>> 0.7.0)
+Conflicts: last
+Description: System-V like init
+ Init is the first program to run after your system is booted, and
+ continues to run as process number 1 until your system halts. Init's
+ job is to start other programs that are essential to the operation of
+ your system. All processes are descended from init. For more information,
+ see the manual page init(8).
+
+Package: gnupg-doc
+Status: install ok installed
+Priority: standard
+Section: doc
+Installed-Size: 3940
+Maintainer: James Troup <james@nocrew.org>
+Version: 2003.04.06-2
+Suggests: gnupg
+Description: GNU Privacy Guard documentation
+ Additional documentation for GnuPG in HTML and (where possible)
+ PostScript and plain text format. Includes:
+ .
+ o The GNU Privacy Handbook
+ o Replacing PGP 2.x with GnuPG
+ o GnuPG mini-HOWTO
+ .
+ The GNU Privacy Handbook is provided in English, French, German,
+ Italian, Spanish and Russian.
+ The Replacing PGP 2.x with GnuPG document is provided in English and
+ Spanish.
+ The mini-HOWTO is provided in English, Catalan, Chinese, Dutch,
+ French, German, Portuguese, Spanish, Swedish and Vietnamese.
+
+Package: libyaml-ruby
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 36
+Maintainer: Fumitoshi UKAI <ukai@debian.or.jp>
+Architecture: all
+Source: ruby-defaults (1.8.1-8)
+Version: 0.60-8
+Depends: libyaml-ruby1.8 (>= 1.8.1), libyaml-ruby1.8 (<< 1.8.2)
+Description: YAML for Ruby
+ YAML(tm) (rhymes with "camel") is a straightforward machine parsable data
+ serialization format designed for human readability and interaction with
+ scripting languages such as Perl and Python. YAML is optimized for data
+ serialization, formatted dumping, configuration files, log files, Internet
+ messaging and filtering.
+ .
+ This package contains YAML handling library for Ruby.
+ .
+ This package is a dependency package, which depends on Debian's default
+ Ruby version (currently 1.8.x).
+
+Package: libksba0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 165
+Maintainer: Marcus Brinkmann <brinkmd@debian.org>
+Source: libksba
+Version: 0.4.3-1
+Depends: libc6 (>= 2.2.4-4)
+Description: X.509 and CMS protocol support library
+ KSBA is a library designed to build software based on the X.509 and
+ CMS protocols.
+ .
+ This package contains the runtime library files.
+
+Package: bookcase
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 2472
+Maintainer: Regis Boudin <regis@boudin.name>
+Architecture: i386
+Version: 0.9.3-1
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libaudio2, libc6 (>= 2.3.2.ds1-4), libfam0c102, libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libjpeg62, libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxcursor1 (>> 1.1.2), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxml2 (>= 2.6.10), libxmu6 | xlibs (>> 4.1.0), libxrender1, libxslt1.1 (>= 1.1.7), libxt6 | xlibs (>> 4.1.0), xlibmesa-gl | libgl1, zlib1g (>= 1:1.2.1)
+Description: A collection manager for books, videos, music
+ Bookcase is a collection manager for KDE. It includes default collections for
+ books, bibliographies, comic books, videos, music, coins, stamps, trading
+ cards, nd wines, and also allows custom collections. Unlimited user-defined
+ fields are allowed. Names are automatically formatted, and the collection may
+ be sorted by any property. Filters are available to limit the visible entries
+ by definable criteria. Full customization for printing is possible through
+ editing the default XSLT file. Automatic ISBN validation is included. It can
+ importe CSV, BibTeX, and BibTeXML and export CSV, HTML, BibTeX, BibTeXML, and
+ PilotDB.
+ .
+ The author started developing it when he couldn't find a personal database
+ program which didn't use a SQL backend. The data is saved in XML format, which
+ makes it easy to parse.
+
+Package: xvfb
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 3916
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xbase (<< 3.3.2.1-2)
+Depends: libc6 (>= 2.3.2.ds1-4), libfreetype6 (>= 2.1.5-1), zlib1g (>= 1:1.2.1)
+Suggests: xbase-clients
+Description: virtual framebuffer X server
+ xvfb provides an X server that can run on machines with no display hardware
+ and no physical input devices. It emulates a dumb framebuffer using virtual
+ memory. The primary use of this server was intended to be server testing,
+ but other novel uses for it have been found, including testing clients
+ against unusual depths and screen configurations, doing batch processing with
+ Xvfb as a background rendering engine, load testing, as an aid to porting the
+ X server to a new platform, and providing an unobtrusive way to run
+ applications that don't really need an X server but insist on having one
+ anyway.
+ .
+ This package also contains a convenience script called xvfb-run which
+ simplifies the automated execution of X clients in a virtual server
+ environment. This convenience script requires the use of the xauth
+ program from xbase-clients, hence the suggestion of xbase-clients.
+
+Package: kmessedwords
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 1096
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeedu
+Version: 4:3.2.3-2
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.4-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: kdeedu-data (>= 4:3.2.3-2)
+Suggests: khelpcenter, kdeedu-doc-html
+Description: letter order game for KDE
+ KMessedWords is a game that is based on the word/letter puzzles that the
+ author played as a child. A word is picked at random and displayed with
+ its letters in a messed order, with difficulty dependent on the chosen level.
+ You have an unlimited number of tries, and scores are kept.
+ .
+ It is a very simply constructed game, with 3 dificulty levels of play.
+ It is fully customizable, allowing you to write in your own words and set
+ your own 'look and feel' of the game. It is aimed for children aged 10+
+ because of the dificulty, but of course everyone is welcome to try.
+ .
+ This package is part of the official KDE edutainment module.
+
+Package: translate
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 72
+Maintainer: Anibal Monsalve Salazar <A.Monsalve.Salazar@IEEE.org>
+Architecture: i386
+Version: 0.6-3
+Depends: trans-de-en
+Suggests: xtranslate
+Conffiles:
+ /etc/translate.conf 22ae6eb36f9f170f2b4f69da94b967bc
+Description: translates given words from English to German or viceversa
+ It looks up a word in a file with language-to-language translations
+ (field separator should be \" :: \") and maintains local dictionaries.
+ So it should be easy to add more languages, if you have such a dictionary.
+
+Package: libsdl-mixer1.2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 296
+Maintainer: Josselin Mouette <joss@debian.org>
+Architecture: i386
+Source: sdl-mixer1.2
+Version: 1.2.5-8
+Depends: libc6 (>= 2.3.2.ds1-4), libogg0 (>= 1.1.0), libsdl1.2debian (>> 1.2.7-0), libsmpeg0 (>= 0.4.4-7), libvorbis0a (>= 1.0.1), libvorbisfile3 (>= 1.0.1)
+Description: mixer library for Simple DirectMedia Layer 1.2
+ SDL Mixer is a sample multi-channel audio mixer library. It supports 4
+ channels of 16 bit stereo audio, plus a single channel of music, mixed by
+ the popular MikMod MOD, Timidity MIDI, and SMPEG MP3 libraries.
+ .
+ URL: http://www.libsdl.org/projects/SDL_mixer/
+
+Package: libdivxencore0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 524
+Maintainer: Christian Marillat <marillat@debian.org>
+Architecture: i386
+Source: divx4linux
+Version: 1:5.0.1-1
+Depends: libc6 (>= 2.2.4-4)
+Description: DivX MPEG-4 Codec - encoder library
+ DivXTM compression technology is a software application that compresses
+ digital video so it can be downloaded over DSL or cable modems in a
+ relatively short time with no reduced visual quality.
+
+Package: framerd
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 3876
+Maintainer: Kenneth Benefiel Haase <kh@beingmeta.com>
+Version: 2.4.1-1.1
+Depends: libc6 (>= 2.3.1-1), libncurses5 (>= 5.3.20021109-1), libreadline4 (>= 4.3-1)
+Conffiles:
+ /etc/init.d/framerd 9078eb2d875e21a5ad7e419353e29bd0
+ /etc/emacs/site-start.d/50framerd.el 460542528985f58116e6cf53964916cf
+ /etc/emacs/site-start.d/50framerd.el newconffile
+ /etc/init.d/framerd newconffile
+Description: a scalable knowledge base development and application platform
+ FramerD provides a robust and scalable object database especially
+ designed and optimized for pointer-intensive semi-structured data with
+ complex or evolving data models. FramerD includes full support for
+ Unicode in both data and programs together with powerful tools for
+ text processing and linguistic analysis.
+ FramerD natively supports reading and and generation of XML, HTML, and
+ MIME data. Web services support has long included built-in support
+ for processing CGI requests both directly and with fastcgi. With
+ version 2.4, FramerD comes with mod_fdserv, a lightweight extension to
+ the Apache webserver for transparently managing persistent
+ multi-threaded servlets responding to CGI requests.
+
+Package: libconfhelper-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 64
+Maintainer: Debian QA Group <packages@qa.debian.org>
+Architecture: all
+Version: 0.12.5
+Depends: liblogfile-rotate-perl (>= 1.03-1), perl (>= 5.6.0-16)
+Description: Library for editing configuration files
+ Library to make editing configuration files easier.
+ It provides functions to deal with configuration files in chunks,
+ allowing nice co-existence with users and other programs on the system.
+ It was written specifically for use with DebConf scripts.
+
+Package: kblackbox
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 356
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: A simple logical game for the KDE project
+ KBlackBox is a game of hide and seek played on an grid of boxes. Your
+ opponent (Random number generator, in this case) has hidden several
+ balls within this box. By shooting rays into the box and observing
+ where they emerge it is possible to deduce the positions of the
+ hidden balls. The fewer rays you use to find the balls, the lower
+ your score.
+
+Package: libxmltok1-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 312
+Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs@lists.alioth.debian.org>
+Architecture: i386
+Source: libxmltok
+Version: 1.2-1
+Depends: libxmltok1 (= 1.2-1), libc6-dev | libc-dev
+Description: XML Parser Toolkit, developer libraries
+ Libraries for XML parsing in C. It aims to be fully conforming. It
+ is currently not a validating XML processor.
+ .
+ The library libxmltok contains a low-level library for tokenizing
+ XML. The library libxmlparse contains an XML parser library which is
+ built on top of the xmltok library.
+ .
+ Author: James Clark <jjc@jclark.com>
+ Homepage: http://www.jclark.com/xml/expat.html
+
+Package: initscripts
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 240
+Maintainer: Miquel van Smoorenburg <miquels@cistron.nl>
+Architecture: i386
+Source: sysvinit
+Version: 2.86-5
+Replaces: sysvinit (<< 2.85-12), libc6, libc6.1, libc0.1, libc0.3
+Depends: libc6 (>= 2.3.2.ds1-4), libc6 (>= 2.3.2.ds1-12), dpkg (>= 1.9.0), mount (>= 2.11l-1), util-linux (>= 2.9t-2), e2fsprogs (>= 1.19-1), coreutils (>= 5.0.91-2)
+Conflicts: kbd (<< 0.95-2), mdutils (<< 0.35-9)
+Conffiles:
+ /etc/init.d/bootclean.sh 0d1d6f95cf963039ae8432b84b86ec7d
+ /etc/init.d/bootlogd c0f2d42ebccf2557f06bf66604b18d99
+ /etc/init.d/bootmisc.sh 455df9cd285c5d6326a436efdc74c40b
+ /etc/init.d/checkfs.sh 967e9fe550b2c542afb33e68fc55642c
+ /etc/init.d/checkroot.sh daf91cd7620b2e1d27211e8c18cf1401
+ /etc/init.d/halt 4808f1aede4c2a7b0fac8ccb0fb8c453
+ /etc/init.d/hostname.sh d8d00942182f145fa79ee6e3f21701d9
+ /etc/init.d/mountall.sh fd7357a4265988882f726583140e6945
+ /etc/init.d/mountnfs.sh b7dc66770a0e871b2c6385439b96fb97
+ /etc/init.d/mountvirtfs bb68b339a394ddabd0c46963f461000c
+ /etc/init.d/reboot aff6c76c29e8daa1f7c47479024d51b2
+ /etc/init.d/rmnologin 347e049a5dffc54d5cb35ec1db993d2a
+ /etc/init.d/sendsigs fe47e89705d4e8cbeef67d5d58ffbdbc
+ /etc/init.d/single e52066862f174d4645ff1940791fc9f0
+ /etc/init.d/umountfs 16da012fa60187f152dd8f22723437fc
+ /etc/init.d/umountnfs.sh 79ce331d23ab5c11d5092107defd83aa
+ /etc/init.d/urandom adf134b3b5186310f0746bc75e067016
+ /etc/default/bootlogd 70a108da715299a6e33470eb450669fb
+ /etc/default/devpts fc857c5ac5fb84d80720ed4d1c624f6e
+ /etc/default/halt 18d9844cf8ca8608e2a559a4555e593a
+ /etc/default/tmpfs 6adb7e5e79d0a59d4e95905f6bef2512
+Description: Standard scripts needed for booting and shutting down
+ These scripts are meant for standard Debian/GNU/Linux installations.
+
+Package: libblkid1
+Status: install ok installed
+Priority: required
+Section: libs
+Installed-Size: 112
+Maintainer: Theodore Y. Ts'o <tytso@mit.edu>
+Architecture: i386
+Source: e2fsprogs
+Version: 1.35-6
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Block device id library
+ The blkid library which allows system programs like fsck and
+ mount to quickly and easily find block devices by filesystem UUID and
+ LABEL. This allows system administrators to avoid specifiying
+ filesystems by hard-coded device names, but via a logical naming
+ system instead.
+
+Package: liborbit2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 552
+Maintainer: Sebastian Rittau <srittau@debian.org>
+Architecture: i386
+Source: orbit2
+Version: 1:2.10.2-1.1
+Replaces: liborbit2-dev (<< 2.8.1-1)
+Depends: libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.4.1), libidl0, libpopt0 (>= 1.7)
+Conflicts: liborbit2-dev (<< 2.8.1-1), liblinc1 (<< 1.0.3-4), libbonobo-activation4 (<< 1:2.4.0)
+Description: libraries for ORBit2 - a CORBA ORB
+ ORBit2 is a high-performance CORBA (Common Object Request Broker
+ Architecture) ORB (Object Request Broker). It allows programs to send
+ requests and receive replies from other programs, regardless of the
+ locations of the two programs. CORBA is an architecture that enables
+ communication between program objects, regardless of the programming
+ language they're written in or the operating system they run on.
+ .
+ This package contains the run-time libraries used by ORBit2-based
+ applications.
+
+Package: liborbit0
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 504
+Maintainer: Sebastian Rittau <srittau@debian.org>
+Architecture: i386
+Source: orbit
+Version: 0.5.17-9
+Config-Version: 0.5.17-9
+Depends: cpp, libc6 (>= 2.3.1-1), libglib1.2 (>= 1.2.0), libwrap0
+Conflicts: libbonobo2 (<< 1.0.14)
+Conffiles:
+ /etc/orbitrc dc0a034d2502dda65cc200bacd13a4f5
+Description: Libraries for ORBit - a CORBA ORB
+ ORBit is a lightweight CORBA ORB designed for use with the Gnome project.
+ (Nothing about it requires Gnome, though.)
+ .
+ This package contains the run-time libraries used by ORBit-based apps.
+
+Package: dc
+Status: install ok installed
+Priority: standard
+Section: math
+Installed-Size: 196
+Maintainer: Dirk Eddelbuettel <edd@debian.org>
+Architecture: i386
+Source: bc
+Version: 1.06-15
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: The GNU dc arbitrary precision reverse-polish calculator
+ GNU dc is a reverse-polish desk calculator which supports unlimited
+ precision arithmetic. It also allows you to define and call macros.
+ .
+ A reverse-polish calculator stores numbers on a stack. Entering a number
+ pushes it on the stack. Arithmetic operations pop arguments off the
+ stack and push the results.
+
+Package: gpm
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 432
+Maintainer: Debian GPM Team <pkg-gpm-devel@lists.alioth.debian.org>
+Architecture: i386
+Version: 1.19.6-17
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), debconf (>= 0.5) | debconf-2.0, debianutils (>= 1.7), ucf (>= 0.28)
+Conffiles:
+ /etc/init.d/gpm ead291f53dd12a9dbc3ba75408bebfc6
+Description: General Purpose Mouse Interface
+ This package provides a daemon that captures mouse events when the system
+ console is active, and delivers events to applications through a library.
+ .
+ The default when no application is running is to emulate "selection", that
+ is, to allow cut-and-paste with the mouse on the console the same way as
+ it is done under X.
+
+Package: python-ldap
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 60
+Maintainer: Peter Hawkins <peterh@debian.org>
+Architecture: all
+Version: 2.0.1-1
+Depends: python (>= 2.3), python (<< 2.4), python2.3-ldap
+Description: A LDAP interface module for Python. [dummy package]
+ This module provides a Python interface to the OpenLDAP client library
+ (LDAP is the Lightweight Directory Access Protocol).
+ .
+ This dummy package just depends on the default version of python-ldap.
+
+Package: libroken16-kerberos4kth
+Status: deinstall ok config-files
+Priority: optional
+Section: net
+Installed-Size: 156
+Maintainer: Mikael Sennerholm <mikan@debian.org>
+Architecture: i386
+Source: krb4
+Version: 1.2.2-10
+Config-Version: 1.2.2-10
+Replaces: kerberos4kth1 (<< 1.1)
+Depends: libc6 (>= 2.3.2-1), libdb4.1
+Conflicts: kerberos4kth1 (<< 1.1), kerberos4kth, arla (<< 0.35.5-2), libroken9-heimdal, libroken16-heimdal, heimdal-clients (<= 0.4e-17)
+Description: Roken Libraries for Kerberos4 From KTH
+ Kerberos is a system for authenticating users and services on a network.
+ Kerberos is a trusted third-party service. That means that there is a
+ third party (the kerberos server) that is trusted by all the entities on
+ the network (users and services, usually called "principals").
+ .
+ This version is from Kungliga Tekniska Högskolan (the Royal Institute of
+ Technology in Stockholm, Sweden). It is based on the eBones version of MIT
+ Kerberos which was legally exported from the US by removing all encryption
+ hooks before export. It isn't covered by any patents and should be legal to
+ use anywhere encryption is legal at all.
+
+Package: libmusicbrainz-dev
+Status: purge ok not-installed
+Priority: optional
+Section: devel
+
+Package: kruler
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 288
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegraphics
+Version: 4:3.3.0-1.1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: a screen ruler and color measurement tool for KDE
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ Kruler is a screen ruler and color measurement tool for KDE.
+ .
+ This package is part of the official KDE graphics module.
+
+Package: libss2
+Status: install ok installed
+Priority: required
+Section: libs
+Installed-Size: 84
+Maintainer: Theodore Y. Ts'o <tytso@mit.edu>
+Architecture: i386
+Source: e2fsprogs
+Version: 1.35-6
+Replaces: e2fsprogs (<< 1.34-1)
+Depends: libcomerr2
+Description: Command-line interface parsing library
+ This package includes a tool that parses a command table to generate
+ a simple command-line interface parser, the include files needed to
+ compile and use it, and the static libs.
+ .
+ It was originally inspired by the Multics SubSystem library.
+
+Package: python2.3-subversion
+Status: purge ok not-installed
+Priority: optional
+Section: python
+Architecture: i386
+
+Package: php4-imap
+Status: deinstall ok config-files
+Priority: optional
+Section: web
+Installed-Size: 156
+Maintainer: Adam Conrad <adconrad@0c3.net>
+Architecture: i386
+Source: php4
+Version: 4:4.3.4-4
+Config-Version: 4:4.3.4-4
+Replaces: php4-cgi-imap
+Depends: libc-client2002edebian, libc6 (>= 2.3.2.ds1-4), libcomerr2 (>= 1.33-3), libkrb53 (>= 1.3.2), libssl0.9.7, debconf (>= 0.5) | debconf-2.0, phpapi-20020918, libapache-mod-ssl
+Description: IMAP module for php4
+ This package provides a module for IMAP functions in PHP scripts.
+ .
+ PHP4 is an HTML-embedded scripting language. Much of its syntax is borrowed
+ from C, Java and Perl with a couple of unique PHP-specific features thrown
+ in. The goal of the language is to allow web developers to write
+ dynamically generated pages quickly.
+
+Package: libgstreamer-plugins0.8-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 416
+Maintainer: David I. Lehn <dlehn@debian.org>
+Architecture: i386
+Source: gst-plugins0.8
+Version: 0.8.4-1
+Depends: libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.4.6), libgstreamer0.8-0 (>= 0.8.5-1), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1)
+Description: Various GStreamer libraries and library plugins
+ This package contains various GStreamer libraries and library plugins which
+ include utilities for use by other GStreamer plugins and applications.
+ .
+ GStreamer plugins load the library plugins at runtime as needed. Other
+ plugin pacakges and applications will depend on this package if it is needed.
+ This package contains:
+ .
+ * libraries:
+ * libgstinterfaces
+ * libgstmedia-info
+ * libgstplay
+ * library plugins:
+ * gstaudio
+ * gstidct
+ * gstriff
+ * gstresample
+ * gstvideo
+
+Package: libsigc++-1.2-5c102
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 64
+Maintainer: Daniel Burrows <dburrows@debian.org>
+Source: libsigc++-1.2
+Version: 1.2.5-1
+Depends: libc6 (>= 2.3.1-1), libgcc1 (>= 1:3.3-0pre9), libstdc++5 (>= 1:3.3-0pre9)
+Conflicts: libsigc++-1.2-5
+Description: Type-safe Signal Framework for C++ - runtime
+ This library implements a full callback system for use in widget
+ libraries, abstract interfaces, and general programming. It provides
+ the ability to connect an abstract callback to a class method,
+ function, or function object, and contains adaptor classes for
+ connection of dissimilar callbacks.
+ .
+ These are the runtime files for libsigc++, needed only if you wish to
+ run software which depends on it.
+
+Package: noatun
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 6216
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdemultimedia
+Version: 4:3.3.0-1
+Depends: artsbuilder (>= 4:3.3.0), kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libarts1 (>= 1.3.0), libasound2 (>> 1.0.5), libaudio2, libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libfam0c102, libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), libidn11, libjack0.80.0-0 (>= 0.98.1), libmad0 (>= 0.15.1b), libogg0 (>= 1.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter, noatun-plugins
+Description: Media player (for video and audio)
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ Media player (for video and audio) for KDE.
+ .
+ This package is part of the official KDE multimedia module.
+
+Package: ktux
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 472
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdetoys
+Version: 4:3.2.3-3
+Replaces: kdetoys (<< 4:3.0.1-0), task-kdetoys
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: kwin
+Conflicts: task-kdetoys
+Description: Tux screensaver for KDE
+ A neat Tux-in-a-spaceship screensaver for the K Desktop Environment (KDE).
+ .
+ This package is part of the official KDE toys module.
+
+Package: findutils
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 600
+Maintainer: Andreas Metzler <ametzler@debian.org>
+Architecture: i386
+Version: 4.1.20-4
+Pre-Depends: libc6 (>= 2.3.2.ds1-4)
+Conffiles:
+ /etc/cron.daily/find 5625bd5d20fdfe84de20176862dfbd89
+ /etc/updatedb.conf 24ae22a05df121181b4503e2d92af898
+Description: utilities for finding files--find, xargs, and locate
+ These utilities find files meeting specified criteria and perform
+ various actions on the files which are found.
+
+Package: fakechroot
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 180
+Origin: debian
+Maintainer: Piotr Roszatycki <dexter@debian.org>
+Architecture: i386
+Version: 0.2.6+0.7.8
+Depends: fakeroot (>= 0.7.8), libc6 (>= 2.3.2-1)
+Description: Gives a fake chroot environment
+ This package provides a library which overrides libc functions, so
+ it is possible to use root-specific tools without root priviliges.
+ .
+ In fake chroot you can install i.e. Debian boostrap, create developer's
+ environment and build packages inside chroot'ed system using standard
+ non-root user account.
+
+Package: libnet-telnet-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 216
+Maintainer: Gunnar Wolf <gwolf@debian.org>
+Version: 3.03-1
+Depends: perl (>= 5.6.0-16)
+Description: Script telnetable connections
+ Net::Telnet allows you to make client connections to a TCP port and
+ do network I/O, especially to a port using the TELNET protocol.
+ Simple I/O methods such as print, get, and getline are provided.
+ More sophisticated interactive features are provided because
+ connecting to a TELNET port ultimately means communicating with a
+ program designed for human interaction. These interactive features
+ include the ability to specify a timeout and to wait for patterns to
+ appear in the input stream, such as the prompt from a shell.
+
+Package: libxft1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 356
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4), libexpat1 (>= 1.95.6), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libxext6 | xlibs (>> 4.1.0), libxrender1
+Conflicts: xlibs (<< 4.3.0)
+Description: FreeType-based font drawing library for X (version 1)
+ Xft provides a client-side font API for X applications, making the FreeType
+ font rasterizer available to X clients. Fontconfig is used for font
+ specification resolution. Where available, the RENDER extension handles
+ glyph drawing; otherwise, the core X protocol is used.
+ .
+ This is an older, deprecated version of the Xft library, provided only for
+ applications that have not yet been updated to use version 2 of the Xft
+ library.
+
+Package: libxft2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 144
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xft
+Version: 2.1.2-6
+Depends: libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libx11-6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: FreeType-based font drawing library for X
+ Xft provides a client-side font API for X applications, making the FreeType
+ font rasterizer available to X clients. Fontconfig is used for font
+ specification resolution. Where available, the RENDER extension handles
+ glyph drawing; otherwise, the core X protocol is used.
+
+Package: libjpeg-progs
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 352
+Maintainer: Bill Allombert <ballombe@debian.org>
+Source: libjpeg6b
+Version: 6b-9
+Depends: libc6 (>= 2.3.2-1), libjpeg62
+Description: Programs for manipulating JPEG files
+ This package contains programs for manipulating JPEG files:
+ cjpeg/djpeg: convert to/from the JPEG file format
+ rdjpgcom/wrjpgcom: read/write comments in JPEG files
+ jpegtran: lossless transformations of JPEG files
+
+Package: libgnomecanvas2-common
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 612
+Maintainer: Ondřej Surý <ondrej@debian.org>
+Architecture: all
+Source: libgnomecanvas
+Version: 2.6.1.1-2
+Replaces: libgnomecanvas2-0 (<= 1.117.0-1)
+Conflicts: libgnomecanvas2-0 (<= 1.117.0-1)
+Description: A powerful object-oriented display - common files
+ The canvas widget is a powerful and extensible object-oriented display
+ engine. A GnomeCanvasItem is a GtkObject representing some element of the
+ display, such as an image, a rectangle, an ellipse, or some text. You can
+ refer to this architecture as structured graphics; the canvas lets you deal
+ with graphics in terms of items, rather than an undifferentiated grid of
+ pixels.
+ .
+ This package contains internationalization files.
+
+Package: aview
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 124
+Maintainer: Uwe Hermann <uwe@debian.org>
+Architecture: i386
+Version: 1.3.0rc1-6
+Depends: aalib1 (>= 1.2), libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.3.20030510-1), slang1 (>> 1.4.4-7.1), xlibs (>> 4.1.0) | libx11-6
+Suggests: imagemagick, netpbm
+Description: A high quality ASCII art image viewer and video player
+ aview is a high quality ASCII art image viewer and video player. It is
+ especially useful with a text-based browser such as lynx, links or w3m.
+ .
+ It supports the pnm, pgm, pbm and ppm image formats, as well as
+ the FLI and FLC video formats. It also supports output via stdio,
+ (n)curses and slang and even has support for gpm.
+ .
+ Features
+ * High quality ASCII art rendering
+ * Portable
+ * Save into many formats (HTML, text, ANSI, more/less etc...)
+ * Contrast, Bright, Gamma control
+ * Image zooming/unzooming
+ * Three dithering modes
+ * Hidden "bonus" features :)
+ * Inversion
+ * Support for bright, dim, inverse attributes/extended character set
+
+Package: libkadm5clnt4-heimdal
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 100
+Maintainer: Brian May <bam@debian.org>
+Architecture: i386
+Source: heimdal
+Version: 0.6.1-1
+Config-Version: 0.6.1-1
+Replaces: heimdal-lib (<< 0.3e-5)
+Depends: libc6 (>= 2.3.2.ds1-4), libhdb7-heimdal (>= 0.6.1), libkrb5-17-heimdal (>= 0.6.1), libroken16-kerberos4kth (>= 1.2.2-10)
+Conflicts: heimdal-libs (<< 0.3e-5)
+Description: Libraries for Heimdal Kerberos
+ Heimdal is a free implementation of Kerberos 5, that aims to be
+ compatible with MIT Kerberos.
+ .
+ This package contains the client library for kadmin.
+
+Package: libgail-common
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+
+Package: khelpcenter
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 1572
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase-doc (<< 4:3.0.0), konqueror (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libjpeg62, libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: KDE Help Center
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ The KDE Help center provides help on how to use the KDE desktop.
+ .
+ This package is part of the official KDE base module.
+
+Package: apt-move
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 208
+Maintainer: Herbert Xu <herbert@debian.org>
+Architecture: i386
+Version: 4.2.22
+Depends: bc, coreutils, dash | ash, libapt-pkg-libc6.3-5-3.3, libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.2-1), libstdc++5 (>= 1:3.3.2-1)
+Recommends: apt
+Conffiles:
+ /etc/apt-move.conf af6c6da664b944ff1fbb578c88911c98
+Description: Maintain Debian packages in a package pool
+ apt-move is used to move a collection of Debian package files into a proper
+ archive hierarchy as is used in the official Debian archive. It is intended as
+ a tool to help manage the apt-get(8) file cache, but could be configured to
+ work with any collection of Debian packages.
+ .
+ Running apt-move periodically will assist in managing the resulting partial
+ mirror by optionally removing obsolete packages, and creating valid local
+ Packages.gz files. It can also build a partial or complete local mirror of a
+ Debian binary distribution (including an ``installed-packages only'' mirror).
+
+Package: python2.3-numeric
+Status: install ok installed
+Priority: optional
+Section: python
+Installed-Size: 312
+Maintainer: Matthias Klose <doko@debian.org>
+Architecture: i386
+Source: python-numeric
+Version: 23.3-5
+Depends: python2.3, libc6 (>= 2.3.2.ds1-4)
+Suggests: python-numeric-tutorial (>= 20.0)
+Description: Numerical (matrix-oriented) Mathematics for Python
+ The Numeric Extensions to Python (NumPy) add powerful
+ multi-dimensional array objects to the wonderful general purpose
+ programming language Python. These new objects give Python the number
+ crunching power of numeric languages like Matlab and IDL while
+ maintaining all of the advantages of the general-purpose programming
+ language Python.
+ .
+ These extensions add two new object types to Python, and then include
+ a number of extensions that take advantage of these two new objects:
+ .
+ - Multidimensional Array Objects
+ * Efficient arrays of homogeneous machine types (floats, longs,
+ complex doubles)
+ * Arbitrary number of dimensions
+ * Sophisticated structural operations
+ - Universal Function Objects
+ * Support mathematical functions on all Python objects
+ * Very efficient for array objects
+
+Package: kdepim
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 32
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: all
+Version: 4:3.3.0-2
+Depends: kaddressbook (>= 4:3.3.0-2), kalarm (>= 4:3.3.0-2), kandy (>= 4:3.3.0-2), karm (>= 4:3.3.0-2), kdepim-kfile-plugins (>= 4:3.3.0-2), kdepim-kio-plugins (>= 4:3.3.0-2), kdepim-wizards (>= 4:3.3.0-2), kitchensync (>= 4:3.3.0-2), kleopatra (>= 4:3.3.0-2), kmail (>= 4:3.3.0-2), kmailcvt (>= 4:3.3.0-2), knode (>= 4:3.3.0-2), knotes (>= 4:3.3.0-2), konsolekalendar (>= 4:3.3.0-2), kontact (>= 4:3.3.0-2), korganizer (>= 4:3.3.0-2), korn (>= 4:3.3.0-2), kpilot (>= 4:3.3.0-2), ksync (>= 4:3.3.0-2), ktnef (>= 4:3.3.0-2), libkcal2 (>= 4:3.3.0-2), libkdenetwork2 (>= 4:3.3.0-2), libkdepim1 (>= 4:3.3.0-2), libkgantt0 (>= 4:3.3.0-2), libkleopatra0 (>= 4:3.3.0-2), libkpimexchange1 (>= 4:3.3.0-2), libkpimidentities1 (>= 4:3.3.0-2), libksieve0 (>= 4:3.3.0-2), libmimelib1 (>= 4:3.3.0-2)
+Suggests: kdepim-doc-html
+Description: KDE Personal Information Management metapackage
+ kdepim is a collection of Personal Information Management (PIM) tools for the
+ K Desktop Enviromnent (KDE).
+ .
+ This is an empty package which depends on the current version of every
+ application in the kdepim distribution.
+
+Package: fortune-mod
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 96
+Maintainer: Pascal Hakim <pasc@debian.org>
+Architecture: i386
+Version: 1:1.99.1-1
+Replaces: fortune
+Provides: fortune
+Depends: libc6 (>= 2.3.2.ds1-4), librecode0 (>= 3.6), fortunes-min | fortune-cookie-db
+Suggests: xcontrib, bsdmainutils
+Conflicts: fortune
+Description: provides fortune cookies on demand
+ These are the machine-dependent parts of the fortune package, i.e.
+ the fortune program and the programs used for generating the data files.
+ The fortune package displays epigrams selected randomly from a selection
+ of fortune files. This is an enhanced version of the BSD program.
+ The data files (which can be shared) are contained in the 'fortunes-min',
+ 'fortunes', and 'fortunes-off' packages.
+
+Package: dosfstools
+Status: install ok installed
+Priority: optional
+Section: otherosfs
+Installed-Size: 144
+Maintainer: Roman Hodek <roman@hodek.net>
+Version: 2.10-1
+Replaces: mkdosfs
+Depends: libc6 (>= 2.3.2-1)
+Conflicts: mkdosfs
+Description: Utilities to create and check MS-DOS FAT filesystems
+ Inside of this package there are two utilities (mkdosfs alias
+ mkfs.dos, and dosfsck alias fsck.msdos) to create and to check MS-DOS
+ FAT filesystems on either hard disks or floppies under Linux. This
+ version uses the enhanced boot sector/superblock format of DOS 3.3+
+ as well as provides a default dummy boot sector code.
+
+Package: tla-doc
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 572
+Maintainer: Andrew Suffield <asuffield@debian.org>
+Architecture: all
+Source: tla
+Version: 1.2-4
+Description: revision control system (documentation)
+ arch is a revision control system with features that are ideal for projects
+ characterised by widely distributed development, concurrent support of
+ multiple releases, and substantial amounts of development on branches.
+ It can be a replacement for CVS and corrects many mis-features of that system.
+ .
+ tla is an implementation of arch in C, by Tom Lord.
+ .
+ This package contains the documentation.
+
+Package: knewsticker
+Status: install ok installed
+Priority: optional
+Section: web
+Installed-Size: 1164
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdenetwork
+Version: 4:3.3.0-2
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), librss1 (>= 4:3.3.0), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), kicker
+Suggests: khelpcenter, knewsticker-scripts
+Description: KDE news ticker
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ This is a News ticker for the KDE panel. It can scroll news from your favorite
+ news sites like /. and freshmeat.
+ .
+ This package is part of the official KDE network module.
+
+Package: kde-amusements
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 16
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: all
+Source: meta-kde
+Version: 4:3.1.2
+Depends: kde-core, kdeedu, kdegames, kdetoys
+Suggests: kde-i18n
+Description: The K Desktop Environment (Games and Toys)
+ A metapackage containing dependencies for all KDE based educational software,
+ games, and toys.
+
+Package: kontact-plugins
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 184
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeaddons
+Version: 4:3.2.3-2
+Depends: kdelibs4 (>= 4:3.2.3), kontact (>= 4:3.2.2), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libkdepim1 (>= 4:3.2.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), dcoprss
+Recommends: kaddressbook-plugins
+Suggests: khelpcenter, kdeaddons-doc-html
+Enhances: kontact
+Description: plugins for Kontact, the KDE groupware client
+ This package contains a variety of useful plugins for Kontact, the
+ groupware client for KDE. These plugins can be loaded through the
+ Kontact settings.
+ .
+ Highlights include a news ticker plugin.
+ .
+ This package is part of the KDE add-ons module.
+
+Package: postgresql-client
+Status: deinstall ok config-files
+Priority: optional
+Section: misc
+Installed-Size: 1433
+Maintainer: Oliver Elphick <Oliver.Elphick@lfix.co.uk>
+Architecture: i386
+Source: postgresql
+Version: 7.4.2-5
+Config-Version: 7.4.2-5
+Replaces: postgresql (<< 7.4)
+Depends: libc6 (>= 2.3.2.ds1-4), libkrb53 (>= 1.3.2), libpam0g (>= 0.76), libreadline4 (>= 4.3-1), libssl0.9.7, zlib1g (>= 1:1.2.1), debconf (>= 0.5) | debconf-2.0, libpq3 (>= 7.4), debianutils (>= 1.7), mailx
+Suggests: postgresql-doc, pgdocs
+Conflicts: postgresql (<< 7.4)
+Conffiles:
+ /etc/postgresql/postgresql.env 66e03639996790dbd1e25b7567820c85
+Description: Front-end programs for PostgreSQL
+ This package contains client and administrative programs for PostgreSQL:
+ these are the user front-end, psql, and scripts for creating and destroying
+ users and database schemas.
+ .
+ If you install PostgreSQL on a standalone machine, you need this package
+ too. On a network, you can install this package on many client machines,
+ while the postgresql server package may be installed on only one machine.
+ .
+ PostgreSQL is the foremost open source SQL database server.
+
+Package: libqt3-mt-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 160
+Maintainer: Martin Loschwitz <madkiss@debian.org>
+Architecture: i386
+Source: qt-x11-free
+Version: 3:3.3.3-4
+Replaces: libqt-mt-dev, libqt3-dev (>= 3.0.5-4), libqt3-helper, libqt3-headers (<= 3:3.1.1-3), libqt3-emb (<= 3:3.0.3-1)
+Depends: xlibs-static-dev (>= 4.3.0.dfsg.1-4), libxext-dev (>= 4.3.0.dfsg.1-4), libxrandr-dev (>= 4.3.0.dfsg.1-4), x-dev (>= 4.3.0.dfsg.1-4), libsm-dev (>= 4.3.0.dfsg.1-4), libxmu-dev (>= 4.3.0.dfsg.1-4), libice-dev (>= 4.3.0.dfsg.1-4), libx11-dev (>= 4.3.0.dfsg.1-4), libxt-dev (>= 4.3.0.dfsg.1-4), libmng-dev (>= 1.0.3), libpng12-0-dev, libjpeg62-dev, zlib1g-dev, libfreetype6-dev, libc6-dev, libqt3c102-mt (= 3:3.3.3-4), libqt3-headers (= 3:3.3.3-4), qt3-dev-tools (= 3:3.3.3-4), xlibmesa-gl-dev | libgl-dev, xlibmesa-glu-dev | libglu1-mesa-dev | libglu-dev, libxft-dev, libxrender-dev, libxcursor-dev, libaudio-dev
+Recommends: libqt3-compat-headers
+Suggests: libqt3-i18n, qt3-doc
+Conflicts: libqt-mt-dev, libqt3-emb (<= 3:3.0.3-1)
+Description: Qt development files (Threaded)
+ Qt is a C++ class library optimized for graphical user interface
+ development. This package contains the libqt-mt.so symlink, necessary
+ for building threaded Qt applications as well as the libqui.so symlink
+ and the necessary header files for libqui.so. (See README.Debian and
+ the Qt Documentation for instructions on libqui.so)
+ .
+ WARNING: If you plan to build some older Qt3 applications, you will
+ most probably have to install the libqt3-compat-headers package. It
+ contains all the headers which are not part of the official Qt3 API
+ anymore but which are still used by some programs. So if you encounter
+ problems with missing header files, please install this package first
+ before you send a bugreport.
+
+Package: kworldclock
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 748
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdetoys
+Version: 4:3.2.3-3
+Replaces: kdetoys (<< 4:3.0.1-0), task-kdetoys, kworldwatch (<= 4:2.2-beta1-1)
+Provides: kworldwatch
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: kdeartwork-misc, kicker, khelpcenter, kdetoys-doc-html
+Conflicts: task-kdetoys, kworldwatch (<= 4:2.2-beta1-1)
+Description: earth watcher for KDE
+ Displays where in the world it is light and dark depending on time, as
+ well as offering the time in all of the major cities of the world.
+ This can be run standalone or as an applet in the KDE panel.
+ .
+ Additional kworldclock themes are available in the kdeartwork-misc package.
+ .
+ This package is part of the official KDE toys module.
+
+Package: imlib11-dev
+Status: deinstall ok config-files
+Priority: optional
+Section: libdevel
+Installed-Size: 288
+Maintainer: Steve M. Robbins <smr@debian.org>
+Source: imlib
+Version: 1.9.14-14
+Config-Version: 1.9.14-14
+Replaces: imlib-nonfree-dev, libimlib-nonfree-dev, libimlib-dev, imlib-progs (<< 1.9.10-4), imlib-dev
+Provides: imlib-development
+Depends: imlib-base (>= 1.9.14-12), imlib11 (= 1.9.14-14), libjpeg62-dev, libpng12-dev, libtiff3g-dev, libungif4-dev, xlibs-dev, zlib1g-dev
+Conflicts: imlib-nonfree-dev, libimlib-nonfree-dev, libimlib-dev, imlib-dev, imlib1-dev, gdk-imlib1-dev
+Description: Header files needed for Imlib development
+ Headers, static lib, examples, and docs for X developers to use Imlib.
+
+Package: hermes1
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 184
+Maintainer: David Schleef <ds@schleef.org>
+Version: 1.3.3+really1.3.2-2
+Config-Version: 1.3.3+really1.3.2-2
+Replaces: hermes1-dev (<= 1.3.1)
+Depends: libc6 (>= 2.3.2-1)
+Conflicts: hermes1-dev (<= 1.3.1)
+Description: The Hermes pixel-format library
+ Hermes is a library that does the dirty work of a graphics library
+ or application that nobody else wants to do, and it does it fast
+ because the effort is concentrated on just that. The thing nobody
+ wants to do is conversion between pixel formats - between all pixel
+ formats that is, not between any two. There are handwritten assembler
+ routines in Hermes that should make anything look fast.
+ .
+ An application or library that uses Hermes will for example be able to
+ render into one buffer and convert it to whatever pixel format is available
+ on the target platform at the time.
+ .
+ Other services provided by Hermes include palette handling including
+ caching of lookup tables, and surface clearing to a specific colour value.
+ .
+ See http://www.clanlib.org/ for more info
+
+Package: netkit-ping
+Status: purge ok not-installed
+Priority: important
+Section: net
+
+Package: kdeedu
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 44
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: all
+Version: 4:3.2.3-2
+Depends: flashkard (>= 4:3.2.3-2), kalzium (>= 4:3.2.3-2), kbruch (>= 4:3.2.3-2), kdeedu-data (>= 4:3.2.3-2), keduca (>= 4:3.2.3-2), khangman (>= 4:3.2.3-2), kig (>= 4:3.2.3-2), kiten (>= 4:3.2.3-2), klettres (>= 4:3.2.3-2), kmessedwords (>= 4:3.2.3-2), kmplot (>= 4:3.2.3-2), kpercentage (>= 4:3.2.3-2), kstars (>= 4:3.2.3-2), ktouch (>= 4:3.2.3-2), kverbos (>= 4:3.2.3-2), kvoctrain (>= 4:3.2.3-2)
+Suggests: kdeedu-doc-html
+Description: educational apps from the official KDE release
+ This is a collection of educational applications provided with the official
+ release of KDE (the K Desktop Environment).
+
+Package: libgnomevfs2-0
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 656
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Source: gnome-vfs2
+Version: 2.6.2-2
+Depends: libbonobo2-0 (>= 2.6.2), libc6 (>= 2.3.2.ds1-4), libgconf2-4 (>= 2.6.4), libglib2.0-0 (>= 2.4.6), libgnutls11 (>= 1.0.16), liborbit2 (>= 1:2.10.0), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1), libgnomevfs2-common (>= 2.6.2-2)
+Recommends: fam
+Description: The GNOME virtual file-system libraries (for GNOME2)
+ GNOME VFS is the GNOME virtual file system. It is the foundation of the
+ Nautilus file manager. It provides a modular architecture and ships with
+ several modules that implement support for file systems, http, ftp and others.
+ It provides a URI-based API, a backend supporting asynchronous file
+ operations, a MIME type manipulation library and other features.
+ .
+ This package is a part of GNOME2
+
+Package: devscripts
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 604
+Maintainer: Julian Gilbey <jdg@debian.org>
+Architecture: i386
+Version: 2.8.4
+Depends: dpkg-dev, debianutils (>= 2.0), perl, libc6 (>= 2.3.2.ds1-4)
+Recommends: fakeroot
+Suggests: devscripts-el, build-essential, cvs-buildpackage, debian-keyring, dupload (>= 2.1) | dput, gnupg (>= 1.0.7), gnuplot, libdigest-md5-perl, libtimedate-perl, libnet-ldap-perl, lintian | linda, mailx, patch, patchutils, ssh, strace, wdiff, www-browser, ldap-utils
+Conflicts: suidmanager (<< 0.51)
+Description: Scripts to make the life of a Debian Package maintainer easier
+ Contains the following scripts, dependencies/recommendations shown in
+ brackets afterwards:
+ - bts: a command-line tool for manipulating the BTS [www-browser,
+ libwww-perl, mailx]
+ - checkbashisms: check whether a /bin/sh script contains any common
+ bash-specific contructs
+ - cvs-debi, cvs-debc: to call debi and debc from the CVS working directory
+ after running cvs-debuild or cvs-buildpackage [cvs-buildpackage]
+ - cvs-debrelease: to call debrelease from the CVS working directory
+ after running cvs-debuild or cvs-buildpackage [cvs-buildpackage,
+ dupload | dput, ssh]
+ - cvs-debuild: run cvs-buildpackage using debuild (see below) as the
+ package building program [cvs-buildpackage, fakeroot, lintian | linda,
+ gnupg]
+ - debc: display the contents of just-built .debs
+ - debchange/dch: automagically add entries to debian/changelog files
+ [libnet-ldap-perl]
+ - debclean: purge a Debian source tree [fakeroot]
+ - debdiff: compare two versions of a Debian package to check for
+ added and removed files [wdiff, patchutils]
+ - debi: install a just-built package
+ - debpkg: dpkg wrapper to be able to manage/test packages without su
+ - debrelease: wrapper around dupload or dput [dupload | dput, ssh]
+ - debsign, debrsign: sign a .changes/.dsc pair without needing any of
+ the rest of the package to be present; can sign the pair remotely
+ or fetch the pair from a remote machine for signing [gnupg,
+ debian-keyring, ssh]
+ - debuild: wrapper to build a package without having to su or worry
+ about how to invoke dpkg to build using fakeroot. Also deals
+ with common environment problems, umask etc. [fakeroot,
+ lintian | linda, gnupg]
+ - dpkg-depcheck, dpkg-genbuilddeps: determine the packages used during
+ the build of a Debian package; useful for determining the Build-Depends
+ control field needed [build-essential, strace]
+ - dscverify: verify the integrity of a Debian package from the
+ .changes or .dsc files [gnupg, debian-keyring, libdigest-md5-perl]
+ - grep-excuses: grep the update_excuses.html file for your packages [wget]
+ - mergechanges: merge .changes files from a package built on different
+ architectures
+ - plotchangelog: view a nice plot of the data in a changelog file
+ [libtimedate-perl, gnuplot]
+ - rc-alert: list installed packages which have release-critical bugs [wget]
+ - tagpending: shell script which runs from a Debian source tree and tags
+ bugs that are to be closed in the latest changelog as pending.
+ [ldap-utils]
+ - uscan: scan upstream sites for new releases of packages [libwww-perl]
+ - uupdate: integrate upstream changes into a source package [patch]
+ - wnpp-alert: list installed packages which are orphaned or up for
+ adoption [wget]
+ Also included are a set of example mail filters for filtering mail
+ from Debian mailing lists using exim, procmail, etc.
+
+Package: slapd
+Status: deinstall ok config-files
+Priority: extra
+Section: net
+Installed-Size: 2488
+Maintainer: Torsten Landschoff <torsten@debian.org>
+Source: openldap2
+Version: 2.1.23-1
+Config-Version: 2.1.23-1
+Provides: ldap-server
+Depends: libc6 (>= 2.3.2-1), libdb4.1, libgcrypt1 (>> 1.1.11-0), libgnutls7 (>= 0.8.9-1), libiodbc2 (>= 3.0.6-4), libldap2 (>= 2.1.17-1), libltdl3 (>= 1.5-1), libsasl2 (>= 2.1.15), libslp1, libtasn1-0 (>= 0.1.1-2), libwrap0, zlib1g (>= 1:1.1.4), debconf (>= 0.2.50), coreutils (>= 4.5.1-1) | fileutils (>= 4.0i-1), psmisc, libldap2 (= 2.1.23-1), perl (>> 5.8.0) | libmime-base64-perl
+Suggests: ldap-utils
+Conflicts: umich-ldapd, ldap-server, libbind-dev, bind-dev
+Conffiles:
+ /etc/ldap/schema/README 0d8657cdf2a5cd0d2694e0b716749560
+ /etc/ldap/schema/corba.schema 0ed895a11dbfa293ec81751003bb4333
+ /etc/ldap/schema/core.schema fea441d3e50596c81bb00f256614de4e
+ /etc/ldap/schema/cosine.schema 896788e12657b12d9f15dae6ae9d6f9b
+ /etc/ldap/schema/inetorgperson.schema 4589024b8cc5b1a222783a62d0c7471f
+ /etc/ldap/schema/java.schema 1e8ad9645f02d6f9cf3a85c9ddcd99fd
+ /etc/ldap/schema/misc.schema 9494bf4ce779a1d5017c15034dafcecc
+ /etc/ldap/schema/nis.schema 7b2c507c78f051317ff3627c006cb15b
+ /etc/ldap/schema/openldap.schema b9f9627ed33f0d3baaa117d0e8273dd0
+ /etc/default/slapd c96c06584300dfc4bf7207a65a638211
+ /etc/init.d/slapd 5ffe3c826a4f7d20a2442ead2fd6a021
+Description: OpenLDAP server (slapd)
+ This is the OpenLDAP (Lightweight Directory Access Protocol) standalone
+ server (slapd). The server can be used to provide a standalone directory
+ service and also includes the slurpd replication server and centipede.
+
+Package: libbonobo-activation4
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+
+Package: libsensors1
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 144
+Maintainer: David Z Maze <dmaze@debian.org>
+Source: lm-sensors
+Version: 2.6.3-5
+Config-Version: 2.6.3-5
+Replaces: lm-sensors (= 2.3.2-1)
+Depends: libc6 (>= 2.2.4-4)
+Recommends: lm-sensors
+Conflicts: lm-sensors (= 2.3.2-1), libsensors0
+Description: Library to read temperature/voltage/fan sensors
+ Lm-sensors is a hardware health monitoring package for Linux. It allows you
+ to access information from temperature, voltage, and fan speed sensors. It
+ works with most newer systems.
+ .
+ This package contains a shared library for querying lm-sensors.
+
+Package: libx11-6
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1376
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: xfree86-common (>> 4.3.0), xlibs-data, libc6 (>= 2.3.2.ds1-4), debconf (>= 0.5) | debconf-2.0
+Conflicts: xlibs (<< 4.3.0)
+Description: X Window System protocol client library
+ The libX11 library, also known as "Xlib", provides a means of communicating
+ with an X server via the X protocol.
+ .
+ Xlib provides low-level functionality, dealing mostly with the wire protocol
+ and in terms of basic operations such as opening and closing the connection
+ to the X server, creating graphics contexts, drawing graphics primitives such
+ as lines, arcs, and glyphs, handling events, and so forth. A set of
+ dynamically-loadable internationalization modules is also part of this
+ package, though not in the libX11 shared object itself.
+ .
+ Application programmers who are new to the X Window System will likely find
+ one of the many "Toolkit" libraries far more convenient to program against
+ than Xlib directly. Examples of popular toolkit libraries are GTK+, Qt,
+ XForms, LessTif, and Athena.
+ .
+ libx11-6 depends on xlibs-data for locale data and the X error and keysym
+ databases.
+
+Package: libiconv-ruby1.8
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 148
+Maintainer: akira yamada <akira@debian.org>
+Architecture: i386
+Source: ruby1.8
+Version: 1.8.1+1.8.2pre2-3
+Depends: libc6 (>= 2.3.2.ds1-4), libruby1.8 (>= 1.8.1+1.8.2pre2-3)
+Description: A Wrapper class of iconv for the Ruby 1.8
+ A wrapper class of iconv(3) for the Ruby 1.8, which translates string
+ between various coding systems.
+ .
+ This package provides the iconv library for Ruby 1.8.
+
+Package: libsensors3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 212
+Maintainer: Aurelien Jarno <aurel32@debian.org>
+Architecture: i386
+Source: lm-sensors
+Version: 2.8.7-8
+Depends: libc6 (>= 2.3.2.ds1-4), debconf (>= 0.5) | debconf-2.0
+Suggests: lm-sensors, lm-sensors-mod-2.7 | kernel-image-2.6
+Description: Library to read temperature/voltage/fan sensors
+ Lm-sensors is a hardware health monitoring package for Linux. It allows you
+ to access information from temperature, voltage, and fan speed sensors. It
+ works with most newer systems.
+ .
+ This package contains a shared library for querying lm-sensors.
+ .
+ Homepage: http://www.lm-sensors.nu
+
+Package: libsensors2
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 147
+Maintainer: David Z Maze <dmaze@debian.org>
+Source: lm-sensors
+Version: 2.8.1-2
+Config-Version: 2.8.1-2
+Replaces: lm-sensors (= 2.3.2-1)
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: lm-sensors, lm-sensors-mod-2.8
+Conflicts: lm-sensors (= 2.3.2-1), libsensors0, lm-sensors-mod
+Description: Library to read temperature/voltage/fan sensors
+ Lm-sensors is a hardware health monitoring package for Linux. It allows you
+ to access information from temperature, voltage, and fan speed sensors. It
+ works with most newer systems.
+ .
+ This package contains a shared library for querying lm-sensors.
+
+Package: ksysguard
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 1368
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0), kdebase-doc (<< 4:3.0.0), kpm (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), ksysguardd (= 4:3.3.0-1)
+Suggests: khelpcenter
+Conflicts: kpm (<< 4:3.0.0)
+Description: KDE System Guard
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KDE System Guard allows you to monitor various statistics about your
+ computer.
+ .
+ This package is part of the official KDE base module.
+
+Package: xlibmesa-gl
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 736
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: libgl1, libutahglx1, xlibmesa3 (<< 4.2.1-5), xlibmesa3-gl
+Provides: libgl1
+Depends: libc6 (>= 2.3.2.ds1-4), libxext6 | xlibs (>> 4.1.0)
+Suggests: xlibmesa-dri
+Conflicts: libgl1, libutahglx1, xlibmesa3 (<< 4.2.1-5), xlibmesa3-gl
+Description: Mesa 3D graphics library [XFree86]
+ Mesa is a 3D graphics library which presents an API intended to be compatible
+ with OpenGL. XFree86 maintains its own version of the Mesa library (which is
+ regularly resynchronized with the official one) to permit development of the
+ XFree86 X server's Direct Rendering Infrastructure (DRI), which makes the 3D
+ acceleration features of many modern video cards available to X client
+ programmers.
+ .
+ Chipset-specific acceleration modules, if available for your machine
+ architecture, are provided in the xlibmesa-dri package.
+
+Package: rcconf
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 88
+Maintainer: Atsushi KAMOSHIDA <kamop@debian.org>
+Architecture: all
+Version: 1.8
+Depends: whiptail | whiptail-provider | dialog, sysv-rc
+Conflicts: file-rc
+Description: Debian Runlevel configuration tool
+ This tool configures system services in connection with system
+ runlevels. It turns on/off services using the scripts in
+ /etc/init.d/. Rcconf works with System-V style runlevel configuration.
+ It is a TUI frontend to the update-rc.d command.
+
+Package: karamba
+Status: purge ok not-installed
+Priority: optional
+Section: kde
+
+Package: libsmpeg0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 304
+Maintainer: Joe Drew <drew@debian.org>
+Source: smpeg
+Version: 0.4.5+cvs20030824-1
+Depends: libc6 (>= 2.3.2-1), libsdl1.2debian (>> 1.2.5-0), libstdc++5 (>= 1:3.3.1-1)
+Conflicts: smpeg, libsmpeg-dev (<= 0.3.5-1), smpeg-gtv (<= 0.3.5-1), smpeg-plaympeg (<= 0.3.5-1)
+Description: SDL MPEG Player Library - shared libraries
+ SMPEG (SDL MPEG Player Library) is a free MPEG1 video player library with
+ sound support. Video playback is based on the ubiquitous Berkeley MPEG
+ player, mpeg_play v2.2. Audio is played through a slightly modified
+ mpegsound library, part of splay v0.8.2. SMPEG supports MPEG audio (MP3),
+ MPEG-1 video, and MPEG system streams.
+ .
+ This package contains the libsmpeg shared library that is required by
+ many MPEG-playing packages, including smpeg-xmms and smpeg-plaympeg.
+
+Package: libao2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 100
+Maintainer: Christopher L Cheney <ccheney@debian.org>
+Architecture: i386
+Source: libao
+Version: 0.8.5-1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: libartsc0, libasound2, libaudio2, libesd0 | libesd-alsa0
+Conffiles:
+ /etc/libao.conf c718e37ffffd7338b9fb9e385aa54b8c
+Description: Cross Platform Audio Output Library
+ Libao is a cross platform audio output library. It currently supports
+ ESD, OSS, Solaris, and IRIX.
+
+Package: lbreakout2
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 616
+Maintainer: Daniel Burrows <dburrows@debian.org>
+Architecture: i386
+Version: 2.5-1
+Config-Version: 2.5-1
+Depends: libc6 (>= 2.3.2.ds1-4), libpng12-0 (>= 1.2.5.0-4), libsdl-mixer1.2 (>= 1.2.5), libsdl1.2debian (>> 1.2.7-0), zlib1g (>= 1:1.2.1), lbreakout2-data (= 2.5-1)
+Conflicts: suidmanager (<< 0.50)
+Description: A ball-and-paddle game with nice graphics
+ lbreakout2 is a game similar to the classics breakout and xboing, featuring
+ a number of added graphical enhancements and effects. You control a paddle
+ at the bottom of the playing-field, and must destroy bricks at the top
+ by bouncing balls against them.
+ .
+ lbreakout2 is a complete rewrite of the game "lbreakout". Users of
+ lbreakout probably want to install this.
+
+Package: ncurses-term
+Status: install ok installed
+Priority: standard
+Section: admin
+Installed-Size: 6084
+Maintainer: Daniel Jacobowitz <ncurses-maint@debian.org>
+Architecture: all
+Source: ncurses
+Version: 5.4-4
+Description: Additional terminal type definitions
+ This package contains all of the terminal definitions not found in
+ the ncurses-base package. There are far too many to list here.
+
+Package: python-gtk2
+Status: install ok installed
+Priority: optional
+Section: python
+Installed-Size: 80
+Maintainer: Sebastien Bacher <seb128@debian.org>
+Architecture: all
+Version: 2.2.0-3
+Depends: python (>= 2.3), python2.3-gtk2, python (<< 2.4)
+Conflicts: python-gdk-imlib, python-glade, python-gnome, python-gtk
+Description: Python bindings for the GTK+ widget set
+ This archive contains modules that allow you to use GTK+ in Python
+ programs. This package contains the bindings for the new version 2.0
+ of that toolkit.
+ .
+ This package is a dependency package, which select the right package
+ for the default Python version (currently v2.3).
+ .
+ Author: James Henstridge <james@daa.com.au>
+ Homepage: http://www.pygtk.org/
+
+Package: tetex-bin
+Status: install ok installed
+Priority: optional
+Section: tex
+Installed-Size: 8700
+Maintainer: teTeX maintainers <debian-tetex-maint@lists.debian.org>
+Architecture: i386
+Version: 2.0.2-21
+Replaces: texbin, xdvik, mflib, kpathsea, makeindex, ps2pk, latex, texidoc, dvipdfm, cweb, texdoctk
+Provides: texbin, xdvi, metafont, makeindex, ps2pk, latex, tex, dvips, dvipsk, dvipdfm, cweb, texdoctk
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libkpathsea3 (>= 2.0.2-1), libpaper1, libpng12-0 (>= 1.2.5.0-4), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libt1-5 (>= 5.0.2), libwww0 (>= 5.4.0) | libwww-ssl0 (>= 5.4.0), libx11-6 | xlibs (>> 4.1.0), libxaw7 (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), perl, tetex-base, ed, debianutils (>= 1.13.1), debconf (>= 0.5.00), mime-support, sed (>= 4.0.5), ucf (>= 1.02)
+Pre-Depends: dpkg (>= 1.6.8)
+Recommends: dialog | whiptail, psutils, texi2html, perl-tk
+Suggests: lpr, postscript-viewer, pdf-viewer, tetex-extra, texinfo
+Conflicts: texbin, xdvik, mflib, kpathsea, makeindex, ps2pk, latex, dvipdfm, cweb, texdoctk, nextawg (<= 0.5.1-34), nextaw (<< 0.8-2), alml (<< 2002.08.29-4), jbibtex-bin (<< 3.0.5+0.04-2), jtex-bin (<= 1.8-5.1), passivetex (<< 1.21-5), ptex-bin (<< 3.0.5+0.04-2), xmltex (<< 1.9-4), tetex-base (<= 2.0.2b-2), jadetex (<< 3.13-2)
+Conffiles:
+ /etc/texmf/fmt.d/00tetex.cnf 55811af3562faf342261dbc3b5e060a2
+ /etc/texmf/xdvi.cfg 4a062704c6de2e46359fcd30ba35aed9
+ /etc/cron.daily/tetex-bin 3e39827b981ca6435003d9868b1efec5
+Description: The teTeX binary files
+ This is the binary part of teTeX. This package contains all the
+ programs belonging to teTeX, i.e. the (La)TeX compiler itself, and
+ variants like pdf(La)TeX, e-TeX etc.
+ .
+ It also contains auxiliary programs like bibtex, makeindex, dvips
+ and xdvi, conversion tools and some tools for maintaining your teTeX
+ system. Also included are man pages and info files about these
+ programs.
+ .
+ Lambda, Omega, MetaPost, MetaFun and AmSTeX won't work without
+ having tetex-extra installed.
+
+Package: lbxproxy
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 648
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xproxy, xbase (<< 3.3.2.3a-2)
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Recommends: proxymngr
+Conflicts: xproxy
+Conffiles:
+ /etc/X11/lbxproxy/AtomControl 5d5340a22cad1a4728b6e0cc3ac39ab2
+Description: Low Bandwidth X (LBX) proxy server
+ Applications that would like to take advantage of the Low Bandwidth extension
+ to X (LBX) must make their connections to an lbxproxy. These applications
+ need know nothing about LBX, they simply connect to the lbxproxy as if were a
+ regular X server. The lbxproxy accepts client connections, multiplexes them
+ over a single connection to the X server, and performs various optimizations
+ on the X protocol to make it faster over low bandwidth and/or high latency
+ connections.
+
+Package: e2fsprogs
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 1244
+Maintainer: Theodore Y. Ts'o <tytso@mit.edu>
+Architecture: i386
+Version: 1.35-6
+Pre-Depends: e2fslibs (= 1.35-6), libblkid1 (>= 1.34-1), libc6 (>= 2.3.2.ds1-4), libcomerr2 (>= 1.34-1), libss2 (>= 1.34-1), libuuid1 (>= 1.34-1)
+Suggests: gpart, parted, e2fsck-static
+Conflicts: dump (<< 0.4b4-4), quota (<< 1.55-8.1), initscripts (<< 2.85-4), sysvinit (<< 2.85-4)
+Description: The EXT2 file system utilities and libraries
+ EXT2 stands for "Extended Filesystem", version 2. It's the main
+ filesystem type used for hard disks on Debian and other Linux systems.
+ .
+ This package contains programs for creating, checking, and maintaining EXT2
+ filesystems, and the generic `fsck' wrapper.
+
+Package: libpaper1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 92
+Maintainer: Stephen Zander <gibreel@debian.org>
+Architecture: i386
+Source: libpaper
+Version: 1.1.14-0.4
+Replaces: libpaperg (<< 1.1.9)
+Provides: libpaperg
+Depends: libc6 (>= 2.3.2.ds1-4), debconf (>= 1.3.22), ucf (>= 0.28)
+Recommends: libpaper-utils
+Description: Library for handling paper characteristics
+ This package contains a simple library for use by programs needing
+ to handle papers. It lets program automatically recognize a lot of
+ different papers with their properties (actually their size).
+
+Package: bin86
+Status: install ok installed
+Priority: standard
+Section: devel
+Installed-Size: 208
+Maintainer: Juan Cespedes <cespedes@debian.org>
+Architecture: i386
+Source: linux86
+Version: 0.16.14-1.1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: linux86
+Description: 16-bit x86 assembler and loader
+ This is the as86 and ld86 distribution written by Bruce Evans.
+ It's a complete 8086 assembler and loader which can make 32-bit
+ code for the 386+ processors (under Linux it's used only to create
+ the 16-bit bootsector and setup binaries).
+
+Package: kcachegrind
+Status: deinstall ok config-files
+Priority: optional
+Section: devel
+Installed-Size: 1064
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdesdk
+Version: 4:3.2.1-1
+Config-Version: 4:3.2.1-1
+Depends: kdelibs4 (>= 4:3.2.1), libart-2.0-2 (>= 2.3.8), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: valgrind-calltree
+Suggests: khelpcenter, kdesdk-doc-html
+Description: visualisation tool for valgrind profiling output
+ KCachegrind is a visualisation tool for the profiling data generated
+ by calltree, a profiling skin for valgrind. Applications can be
+ profiled using calltree without being recompiled, and shared libraries
+ and plugin architectures are supported.
+ .
+ This package is part of the KDE Software Development Kit.
+
+Package: libnetpbm9
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 204
+Maintainer: A. Barth (sponsored by Steve McIntyre) <93sam-sponsoring-aba@klecker.debian.org>
+Source: netpbm-free
+Version: 2:9.25-6
+Config-Version: 2:9.25-6
+Depends: libc6 (>= 2.3.2-1)
+Description: Shared libraries for netpbm
+ This package contains shared libraries used to be used by netpbm.
+ Now we've switched to a single shared library, look out for libnetpbm10.
+ This package is provided for backward compatibility.
+
+Package: xfsdump
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 656
+Maintainer: Nathan Scott <nathans@debian.org>
+Architecture: i386
+Version: 2.2.21-1
+Depends: libattr1 (>= 2.0.0), libc6 (>= 2.3.2.ds1-4), libdm0 (>= 2.1.0), libncurses5 (>= 5.4-1), libuuid1, xfsprogs (>= 2.6.4)
+Description: Administrative utilities for the XFS filesystem
+ The xfsdump package contains xfsdump, xfsrestore and a number of
+ other administrative utilities for managing XFS filesystems.
+ .
+ xfsdump examines files in a filesystem, determines which need to be
+ backed up, and copies those files to a specified disk, tape or other
+ storage medium. It uses XFS-specific directives for optimizing the
+ dump of an XFS filesystem, and also knows how to backup XFS extended
+ attributes. Backups created with xfsdump are "endian safe" and can
+ thus be transfered between Linux machines of different architectures
+ and also between IRIX machines.
+ .
+ xfsrestore performs the inverse function of xfsdump; it can restore a
+ full backup of a filesystem. Subsequent incremental backups can then
+ be layered on top of the full backup. Single files and directory
+ subtrees may be restored from full or partial backups.
+
+Package: fuse-source
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 156
+Maintainer: Bartosz Fenski <fenio@o2.pl>
+Architecture: all
+Source: fuse
+Version: 1.3-1
+Depends: make, gcc | c-compiler
+Recommends: dpkg-dev, kernel-package
+Suggests: devscripts
+Description: Filesystem in USErspace (source for kernel module)
+ Simple interface for userspace programs to export a virtual
+ filesystem to the linux kernel.
+ .
+ This package contains the source code for the fuse module. It is
+ required to use fuse with a self-compiled kernel.
+ .
+ http://sourceforge.net/projects/avf
+
+Package: acl
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 120
+Maintainer: Nathan Scott <nathans@debian.org>
+Version: 2.2.23-1
+Depends: libacl1, libattr1 (>= 2.4.4-1), libc6 (>= 2.3.2-1)
+Description: Access control list utilities
+ This package contains the getfacl and setfacl utilities needed for
+ manipulating access control lists.
+
+Package: symlinks
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 29
+Maintainer: Bernd Eckenfels <ecki@debian.org>
+Version: 1.2-4.1
+Depends: libc6 (>= 2.3.1-1)
+Description: scan/change symbolic links
+ Symlinks scans directories for symbolic links and lists
+ them on stdout. Each link is prefixed with a classification
+ of relative, absolute, dangling, messy, lengthy or other_fs.
+ .
+ Symlinks can also convert absolute links (within the same filesystem)
+ to relative links and can delete messy and dangling links.
+
+Package: libkpimidentities1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 148
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdepim1 (>= 4:3.3.0), libkleopatra0 (>= 4:3.3.0), libstdc++5 (>= 1:3.3.4-1)
+Description: KDE PIM user identity information library
+ This library provides information to KDE programs about user identity,
+ such as email address, organization, etc.
+ .
+ This is the runtime package for programs that use the libkpimidentities
+ library.
+ .
+ This package is part of the official KDE pim module.
+
+Package: libatk1.0-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 164
+Maintainer: Akira TAGOH <tagoh@debian.org>
+Architecture: i386
+Source: atk1.0
+Version: 1.6.1-3
+Depends: libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.4.1)
+Recommends: libatk1.0-data
+Description: The ATK accessibility toolkit
+ ATK is a toolkit providing accessibility interfaces for applications or
+ other toolkits. By implementing these interfaces, those other toolkits or
+ applications can be used with tools such as screen readers, magnifiers, and
+ other alternative input devices.
+ .
+ This is the runtime part of ATK, needed to run applications built with it.
+
+Package: postgresql
+Status: deinstall ok config-files
+Priority: optional
+Section: misc
+Installed-Size: 9516
+Maintainer: Oliver Elphick <Oliver.Elphick@lfix.co.uk>
+Architecture: i386
+Version: 7.4.2-5
+Config-Version: 7.4.2-4
+Replaces: postgresql-pl, libpgtcl (<< 7.3rel-5), libpgperl (<< 1:2.0.1-1)
+Depends: libc6 (>= 2.3.2.ds1-4), libcomerr2 (>= 1.33-3), libkrb53 (>= 1.3.2), libpam0g (>= 0.76), libperl5.8 (>= 5.8.4), libreadline4 (>= 4.3-1), libssl0.9.7, python2.3 (>= 2.3), zlib1g (>= 1:1.2.1), debconf (>= 0.5) | debconf-2.0, procps, debianutils (>= 1.13.1), postgresql-client (>= 7.4), libpq3 (>= 7.4), mailx, ucf (>= 0.8)
+Pre-Depends: adduser (>= 3.34)
+Suggests: libpg-perl, libpgjava, libpgtcl, postgresql-doc, postgresql-dev, postgresql-contrib, pidentd | ident-server, pgdocs, pgaccess
+Conflicts: postgres95, libpq1, postgresql-pl, postgresql-test, postgresql-contrib (<< 7.2), ecpg (<< 7.2), libpgtcl (<< 7.3rel-5), libpgperl (<< 1:2.0.1-1)
+Conffiles:
+ /etc/cron.d/postgresql 23a8c41418e73b8e9f63d15b0a5a17a0
+ /etc/init.d/postgresql 89c1e1756ffc88b9a0dc71e7d15ffdc6
+ /etc/logrotate.d/postgresql 8822ce30bcea0aad31febb60793fe7bc
+ /etc/logcheck/ignore.d.server/postgresql 3baad38bef168f2e265fdbb10ef96039
+ /etc/logcheck/violations.ignore.d/logcheck-postgresql 56140ea2fefe72cc34b461267f8dc975
+ /etc/logcheck/ignore.d.paranoid/postgresql 3baad38bef168f2e265fdbb10ef96039
+ /etc/logcheck/ignore.d.workstation/postgresql 3baad38bef168f2e265fdbb10ef96039
+ /etc/postgresql/pg_ident.conf 13315f01db0ad8a8638326b9f035c896
+ /etc/postgresql/pg_hba.conf 2ec14365922bdbe4add9b83e342bd402
+Description: Object-relational SQL database, descended from POSTGRES
+ PostgreSQL is an object-relational database, which supports a large part
+ of SQL-99. It is under continuous development and each release implements
+ more of the SQL standard, to the extent that it is now probably more compliant
+ than most commercial databases. It also supports some object-oriented
+ features.
+ .
+ As compared to MySQL, PostgreSQL is more fully featured - most importantly,
+ PostgreSQL supports transactions on all tables, something which is essential
+ to multi-user update of a database, and referential integrity, which, equally,
+ is essential to a reliable database. The trade-off is that it can be slower,
+ though again, each release sees improvements in efficiency and PostgreSQL
+ tends to outperform MySQL when there are many simultaneous connections. For
+ more information, see <http://OpenACS.org/why-not-mysql.html>.
+ .
+ This package provides the backend features; you need postgresql-client or
+ some other front-end to be able to access them. A package providing
+ ident-server is needed if you want to authenticate remote connections with
+ identd.
+
+Package: libpaperg
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 20
+Maintainer: Stephen Zander <gibreel@debian.org>
+Architecture: all
+Source: libpaper
+Version: 1.1.14-0.4
+Depends: libpaper1 (= 1.1.14-0.4), libpaper-utils (= 1.1.14-0.4)
+Description: Library for handling paper characteristics (dummy package)
+ This is a dummy package to force the transition to the new naming
+ scheme. It can be safely deleted.
+
+Package: php4-ldap
+Status: deinstall ok config-files
+Priority: optional
+Section: web
+Installed-Size: 108
+Maintainer: Adam Conrad <adconrad@0c3.net>
+Architecture: i386
+Source: php4
+Version: 4:4.3.4-4
+Config-Version: 4:4.3.4-4
+Replaces: php4-cgi-ldap
+Depends: libc6 (>= 2.3.2.ds1-4), libldap2 (>= 2.1.17-1), debconf (>= 0.5) | debconf-2.0, phpapi-20020918
+Description: LDAP module for php4
+ This package provides a module for LDAP functions in PHP scripts.
+ .
+ PHP4 is an HTML-embedded scripting language. Much of its syntax is borrowed
+ from C, Java and Perl with a couple of unique PHP-specific features thrown
+ in. The goal of the language is to allow web developers to write
+ dynamically generated pages quickly.
+
+Package: kpat
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 748
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1), kdebase-data, kdegames-card-data
+Description: KDE solitaire patience game
+ KPatience is a collection of 14 card games. All the games are single
+ player games.
+
+Package: blop
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 1660
+Maintainer: Mario Lang <mlang@debian.org>
+Architecture: i386
+Version: 0.2.8-1
+Provides: ladspa-plugin
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Bandlimited wavetable-based oscillator plugins for LADSPA hosts
+ BLOP comprises a set of LADSPA plugins that generate bandlimited
+ sawtooth, square, variable pulse and slope-variable triangle waves,
+ for use in LADSPA aware audio applications, principally as components
+ of a modular synthesis network.
+ .
+ They are wavetable based, and are designed to produce output with
+ harmonic content as high as possible over a wide pitch range.
+ .
+ Additionally, there are a few extra plugins to assist in building
+ synthesis networks, like a analogue-type sequencer, sync-square and
+ ADSR envelope.
+
+Package: libhesiod0
+Status: deinstall ok config-files
+Priority: extra
+Section: libs
+Installed-Size: 64
+Maintainer: Steve Langasek <vorlon@debian.org>
+Architecture: i386
+Source: hesiod
+Version: 3.0.2-15
+Config-Version: 3.0.2-15
+Depends: libc6 (>= 2.3.2-1), debconf
+Description: Libraries for hesiod, a service name resolution protocol
+ This package contains the shared library for hesiod,
+ the Project Athena service name resolution protocol used at MIT and
+ elsewhere.
+
+Package: guile-1.6-doc
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 412
+Maintainer: Rob Browning <rlb@defaultvalue.org>
+Source: guile-1.6
+Version: 1.6.4-4
+Replaces: guile-doc, goops-doc
+Provides: guile-doc
+Conflicts: guile-doc, guile1.4-doc, goops-doc
+Description: Reference and tutorial documentation for Guile 1.6
+ This package contains the documentation for guile 1.6, including both
+ a reference manual (via "info guile") and a tutorial (via "info
+ guile-tut").
+ .
+ Guile is a Scheme implementation designed for real world programming,
+ providing a rich Unix interface, a module system, an interpreter, and
+ many extension languages. Guile can be used as a standard #! style
+ interpreter, via #!/usr/bin/guile, or as an extension language for
+ other applications via libguile.
+
+Package: kmix
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 848
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdemultimedia
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libasound2 (>> 1.0.5), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE based mixer app
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This is a KDE based mixer app.
+ .
+ This package is part of the official KDE multimedia module.
+
+Package: libkdegst0.6
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 284
+Maintainer: David Schleef <ds@schleef.org>
+Architecture: i386
+Source: kgst
+Version: 0.6.1-8
+Depends: libaudio2, libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.1), libgstreamer0.6-0 (>= 0.6.1-2), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libpopt0 (>= 1.7), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxcursor1 (>> 1.1.2), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxml2 (>= 2.6.11), libxrandr2 | xlibs (>> 4.3.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Description: KDE bindings for GStreamer (shared libraries)
+ This package provides C++ wrappers (in the KDE style) for GStreamer.
+ GStreamer is a media processing framework with support for a wide variety
+ of data sources, sinks, and formats through the use of dynamically loaded
+ plugins.
+ .
+ Any application that requires this library will depend on this package,
+ so this package does not generally need to be separately installed.
+
+Package: libkregexpeditor
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+
+Package: kmid
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 720
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdemultimedia
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libasound2 (>> 1.0.5), libaudio2, libc6 (>= 2.3.2.ds1-4), libfam0c102, libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxcursor1 (>> 1.1.2), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxrandr2 | xlibs (>> 4.3.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: midi/karaoke player for KDE
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ midi/karaoke player for KDE.
+ .
+ This package is part of the official KDE multimedia module.
+
+Package: kernel-image-2.6.5-1-686
+Status: deinstall ok config-files
+Priority: optional
+Section: base
+Installed-Size: 42964
+Maintainer: Herbert Xu <herbert@debian.org>
+Architecture: i386
+Source: kernel-image-2.6.5-i386
+Version: 2.6.5-2
+Config-Version: 2.6.5-1
+Provides: kernel-image, kernel-image-2.6
+Depends: initrd-tools (>= 0.1.63), coreutils | fileutils (>= 4.0), module-init-tools (>= 0.9.13)
+Suggests: lilo (>= 19.1) | grub, fdutils, kernel-doc-2.6.5 | kernel-source-2.6.5
+Conflicts: hotplug (<< 0.0.20040105-1)
+Description: Linux kernel image for version 2.6.5 on PPro/Celeron/PII/PIII/PIV.
+ This package contains the Linux kernel image for version 2.6.5 on
+ Pentium Pro/Celeron/Pentium II/Pentium III/Pentium IV,
+ the corresponding System.map file, and the modules built by the packager.
+ It also contains scripts that try to ensure that the system is not left in
+ a unbootable state after an update.
+ .
+ If you wish to update a bootdisk, or to use a bootloader to make
+ installing and using the image easier, we suggest you install the latest
+ fdutils (for formatting a floppy to be used as boot disk), and LILO, for a
+ powerful bootloader. Of course, both these are optional.
+ .
+ Kernel image packages are generally produced using kernel-package,
+ and it is suggested that you install that package if you wish to
+ create a custom kernel from the sources.
+
+Package: acroread
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 25232
+Maintainer: Christian Marillat <marillat@debian.org>
+Architecture: i386
+Version: 5.09-woody0.0
+Provides: pdf-viewer, postscript-preview
+Depends: libc6 (>= 2.2.4-4), xlibs (>> 4.1.0), acroread-debian-files (>= 0.0.4)
+Description: Adobe Acrobat Reader: Portable Document Format file viewer
+ Adobe Acrobat Reader for viewing and printing Adobe Portable Document
+ Format (PDF) files.
+ .
+ Home Page: http://www.adobe.com/products/acrobat/readermain.html
+
+Package: libstrscan-ruby
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 36
+Maintainer: Fumitoshi UKAI <ukai@debian.or.jp>
+Architecture: all
+Source: ruby-defaults (1.8.1-8)
+Version: 0.7.0-8
+Depends: libstrscan-ruby1.8 (>= 1.8.1), libstrscan-ruby1.8 (<< 1.8.2)
+Description: Fast string scanning library for Ruby
+ Strscan is a lexical scan library for Ruby.
+ .
+ This package is a dependency package, which depends on Debian's default
+ Ruby version (currently 1.8.x).
+
+Package: liblame0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 380
+Maintainer: Christian Marillat <marillat@debian.org>
+Architecture: i386
+Source: lame
+Version: 3.96.1-1
+Replaces: liblame-dev (<= 3.92-0.0)
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: LAME Ain't an MP3 Encoder
+ Lame is a program which can be used to create compressed audio files. (Lame
+ aint MP3 encoder). These audio files can be played back by popular mp3
+ players such as mpg123. To read from stdin, use "-" for <infile>. To write
+ to stdout, use a "-" for <outfile>.
+ .
+ This package contains the dynamic libraries, which provides the encoding
+ functionality of lame.
+
+Package: dict-freedict-cze-eng
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 60
+Maintainer: Debian QA Group <packages@qa.debian.org>
+Source: freedict
+Version: 1.1-4
+Suggests: dict, dictd
+Description: Dict package for Czech-English Freedict dictionary
+ This is a package of the
+ Czech-English Freedict dictionary
+ for the dictd server software.
+
+Package: libpostproc0
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 132
+Maintainer: Christian Marillat <marillat@debian.org>
+Source: mplayer-libpostproc
+Version: 1:1.0-pre1.1
+Depends: libc6 (>= 2.3.2-1)
+Description: Mplayer postproc shared libraries
+ This package contains the MPlayer postproc shared library.
+
+Package: libpng12-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 580
+Maintainer: Josselin Mouette <joss@debian.org>
+Architecture: i386
+Source: libpng3
+Version: 1.2.5.0-7
+Replaces: libpng3-dev (<= 1.2.5), libpng12-0-dev
+Provides: libpng-dev, libpng12-0-dev
+Depends: libpng12-0 (= 1.2.5.0-7), zlib1g-dev
+Conflicts: libpng2-dev, libpng-dev, libpng12-0-dev, libpng2 (<< 1.0.12-3)
+Description: PNG library - development
+ libpng is a library implementing an interface for reading and writing
+ PNG (Portable Network Graphics) format files.
+ .
+ This package contains the header and development files needed to build
+ programs and packages using libpng.
+ .
+ URL: http://www.libpng.org/pub/png/libpng.html
+
+Package: lesstif1
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+Architecture: i386
+
+Package: lesstif2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1660
+Maintainer: Sam Hocevar (Debian packages) <sam+deb@zoy.org>
+Architecture: i386
+Source: lesstif1-1
+Version: 1:0.93.94-8
+Replaces: libmotif
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxp6 | xlibs (>> 4.1.0), libxrender1, libxt6 | xlibs (>> 4.1.0)
+Conflicts: libmotif
+Description: OSF/Motif 2.1 implementation released under LGPL
+ Contains runtime shared libraries for LessTif, the Hungry Programmers'
+ version of OSF/Motif 2.1.
+ .
+ Contains runtime shared libraries for libXm and libMrm.
+
+Package: hexedit
+Status: purge ok not-installed
+Priority: optional
+Section: editors
+
+Package: libcroco2
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 328
+Maintainer: Sebastien Bacher <seb128@debian.org>
+Architecture: i386
+Source: libcroco
+Version: 0.5.1-1
+Config-Version: 0.5.1-1
+Depends: libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.2.3), libxml2 (>= 2.6.8), zlib1g (>= 1:1.2.1)
+Description: a generic Cascading Style Sheet (CSS) parsing and manipulation toolkit
+ Services provided by Libcroco
+ * A parser module that provides
+ o A SAC like api. SAC stands for Simple Api for CSS. SAC is an event driven
+ api wich resembles SAX in the xml world.
+ o A CSSOM like api. CSSOM stands for Cascading Style Sheet Object Model.
+ .
+ The libcroco parser implements the CSS Level 2 specification, the CSS
+ forward compatibility rules and the CSS cascading rules.
+ .
+ * A CSS2 selection engine
+ Given an xml element node (that obviously comes from an xml document) and
+ a stylesheet cascade, the Libcroco selection engine can evaluate the css
+ selectors of the cascade and return the style properties associated to
+ the xml element node.
+ .
+ Note that the xml manipulation toolkit used by the libcroco selection
+ engine at the moment is libxml2.
+ .
+ This package contains the shared libraries.
+
+Package: libcroco3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 344
+Maintainer: Sebastien Bacher <seb128@debian.org>
+Architecture: i386
+Source: libcroco
+Version: 0.6.0-2
+Depends: libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.4.1), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1)
+Description: a generic Cascading Style Sheet (CSS) parsing and manipulation toolkit
+ Services provided by Libcroco
+ * A parser module that provides
+ o A SAC like api. SAC stands for Simple Api for CSS. SAC is an event driven
+ api wich resembles SAX in the xml world.
+ o A CSSOM like api. CSSOM stands for Cascading Style Sheet Object Model.
+ .
+ The libcroco parser implements the CSS Level 2 specification, the CSS
+ forward compatibility rules and the CSS cascading rules.
+ .
+ * A CSS2 selection engine
+ Given an xml element node (that obviously comes from an xml document) and
+ a stylesheet cascade, the Libcroco selection engine can evaluate the css
+ selectors of the cascade and return the style properties associated to
+ the xml element node.
+ .
+ Note that the xml manipulation toolkit used by the libcroco selection
+ engine at the moment is libxml2.
+ .
+ This package contains the shared libraries.
+
+Package: libarkrpg
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 912
+Maintainer: Marc Dequènes (Duck) <Duck@DuckCorp.org>
+Architecture: i386
+Source: arkrpg
+Version: 0.1.4b-4
+Config-Version: 0.1.4b-4
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libltdl3 (>= 1.5.2-2), liblua40 (>= 4.0-13), liblualib40 (>= 4.0-13), libstdc++5 (>= 1:3.3.4-1), xlibmesa-gl | libgl1, xlibmesa-glu | libglu1
+Suggests: arkrpg
+Description: shared libraries for Arkrpg
+ Arkrpg is a powerful and flexible framework to create
+ (networked/single player) role playing games, without having to write a
+ single line of C++. All the user has to do is to create game data (models,
+ textures, world), and define the behaviour NPCs, in Lua. The engine contains
+ a full outdoor 3D engine, with support for skeletal animation, and
+ triangle-accurate collision detection. It also contains tools to create world
+ and quests, and loaders for the most common low-polygon 3D formats.
+ .
+ This package provides shared libraries.
+
+Package: mdk
+Status: install ok installed
+Priority: optional
+Section: otherosfs
+Installed-Size: 1215
+Maintainer: Baruch Even <baruch@debian.org>
+Architecture: i386
+Version: 1.1-2
+Depends: guile-1.6-libs, libc6 (>= 2.3.2.ds1-4), libglade0, libglib1.2 (>= 1.2.0), libgtk1.2 (>= 1.2.10-4), libguile-ltdl-1, libncurses5 (>= 5.4-1), libqthreads-12, libreadline4 (>= 4.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxi6 | xlibs (>> 4.1.0), libxml1 (>= 1:1.8.14-3), zlib1g (>= 1:1.2.1)
+Conffiles:
+ /etc/emacs/site-start.d/50mdk.el b0ee3b3e91abca06a2f4cc8ca6bf0fd7
+Description: MIX Development Kit
+ MDK stands for MIX Development Kit, and provides tools for developing
+ and executing, in a MIX virtual machine, MIXAL programs.
+ .
+ The MIX is Donald Knuth's mythical computer, described in the first
+ volume of The Art of Computer Programming, which is programmed using
+ MIXAL, the MIX assembly language.
+ .
+ MDK includes a MIXAL assembler (mixasm) and a MIX virtual machine
+ (mixvm) with a command line interface. In addition, a GTK+ GUI to
+ mixvm, called gmixvm, and a Guile interpreter with an embedded MIX
+ virtual machine called mixguile, are provided.
+ .
+ Using these interfaces, you can debug your MIXAL programs at source
+ code level, and read/modify the contents of all the components of the
+ MIX computer (including block devices, which are simulated using the
+ file system).
+ .
+ Homepage: http://www.gnu.org/software/mdk/mdk.html
+
+Package: slicker-applets
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 604
+Maintainer: Igor Genibel <igenibel@debian.org>
+Source: slicker
+Version: 0.0.0cvs20030726-3
+Depends: slicker (>= 0.0.0cvs20030726-3)
+Description: all slicker's applets
+ Slicker consists of three primary items Cards, the Slider, and a
+ Task-bar. Which can be used in conjunction with each other, and Kicker,
+ or utilized by themselves.
+ .
+ Cards provide a frame work for embedded applets to be docked at the edge
+ of the screen. These cards are "stackable" and provide a
+ "retractable/extendable" work area.
+ .
+ The Slider is a corner piece to slicker, it provides a constant, "solid"
+ launching pad, and is home of the miniapps.
+ .
+ The Task-bar is a typical taskbar with not so typical features... The
+ taskbar is an "organic" app that cleanly expands or contracts as needed.
+
+Package: graphviz
+Status: install ok installed
+Priority: optional
+Section: non-free/graphics
+Installed-Size: 4716
+Maintainer: Stephen M Moraco <stephen@debian.org>
+Architecture: i386
+Version: 1.14-1
+Depends: libc6 (>= 2.3.2.ds1-4), libexpat1 (>= 1.95.6), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libice6 | xlibs (>> 4.1.0), libjpeg62, libpng12-0 (>= 1.2.5.0-4), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxaw7 (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), tk8.4, tcl8.4
+Suggests: msttcorefonts
+Conflicts: gdtclft
+Description: a set of graph drawing tools
+ Graph drawing addresses the problem of visualizing structural information
+ by constructing geometric representations of abstract graphs and networks.
+ Automatic generation of graph drawings has important applications in key
+ technologies such as database design, software engineering, VLSI and
+ network design and visual interfaces in other domains. Situations where
+ these tools might be particularly useful include:
+ .
+ * you would like to restructure a program and first need to understand
+ the relationships between its types, procedures, and source files.
+ * you need to find the bottlenecks in an Internet backbone - not only
+ individual links, but their relationships
+ * you're debugging a protocol or microarchitecture represented as a
+ finite state machine and need to figure out how a certain
+ error state arises
+ * you would like to browse a database schema, knowledge base, or
+ distributed program represented pictorially
+ * you would like to see an overview of a collection of linked documents
+ * you would like to discover patterns and communities of interest in a
+ database of telephone calls or e-mail messages
+ .
+ Homepage: http://www.graphviz.org
+ Development-page: http://www.research.att.com/sw/tools/graphviz
+
+Package: cpp
+Status: install ok installed
+Priority: standard
+Section: interpreters
+Installed-Size: 40
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-defaults (1.17)
+Version: 4:3.3.4-2
+Depends: cpp-3.3 (>= 1:3.3.4-1)
+Suggests: cpp-doc
+Conflicts: cpp-doc (<< 1:2.95.3)
+Description: The GNU C preprocessor (cpp)
+ The GNU C preprocessor is a macro processor that is used automatically
+ by the GNU C compiler to transform programs before actual compilation.
+ .
+ This package has been separated from gcc for the benefit of those who
+ require the preprocessor but not the compiler.
+ .
+ This is a dependency package providing the default GNU C preprocessor.
+
+Package: libqt3c102-mt
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 7420
+Maintainer: Martin Loschwitz <madkiss@debian.org>
+Architecture: i386
+Source: qt-x11-free
+Version: 3:3.3.3-4
+Replaces: qt3-tools (<< 2:3.0.2-20020306-1), libqt3-helper, libqt3, libqt3-mt
+Depends: libaudio2, libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libjpeg62, libmng1 (>= 1.0.3-1), libpng12-0 (>= 1.2.5.0-4), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxcursor1 (>> 1.1.2), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxrandr2 | xlibs (>> 4.3.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), fontconfig
+Suggests: libqt3c102-mt-psql, libqt3c102-mt-mysql, libqt3c102-mt-odbc
+Conflicts: libqt3-mt, libqui1-emb, libqt3c-mt
+Description: Qt GUI Library (Threaded runtime version), Version 3
+ This is the Trolltech Qt library, version 3. It's necessary for
+ applications that link against the libqt-mt.so.3, e.g. all KDE3
+ applications.
+
+Package: ldap-utils
+Status: install ok installed
+Priority: extra
+Section: net
+Installed-Size: 292
+Maintainer: Torsten Landschoff <torsten@debian.org>
+Architecture: i386
+Source: openldap2
+Version: 2.1.30-3
+Replaces: openldap-utils, slapd (<< 2.1.25), openldapd
+Provides: ldap-client, openldap-utils
+Depends: libc6 (>= 2.3.2.ds1-4), libdb4.2, libgcrypt11, libgnutls11 (>= 1.0.16), libgpg-error0 (>= 0.7), libiodbc2 (>= 3.51.2-2), libldap2 (>= 2.1.17-1), libltdl3 (>= 1.5.2-2), libsasl2 (>= 2.1.18), libslp1, zlib1g (>= 1:1.2.1), libldap2 (= 2.1.30-3)
+Recommends: libsasl2-modules
+Conflicts: umich-ldap-utils, openldap-utils, ldap-client
+Description: OpenLDAP utilities
+ Utilities from the OpenLDAP (Lightweight Directory Access Protocol)
+ package. These utilities can access a local or remote LDAP server
+ and contain all the client programs required to access LDAP servers.
+
+Package: checkinstall
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 132
+Maintainer: Matt Hope <dopey@debian.org>
+Architecture: all
+Version: 1.5.3-3
+Depends: installwatch (>> 0.6), file
+Conffiles:
+ /etc/checkinstall 5a7b8d41d1ee9abb96ce14c0f8c5f8f7
+Description: installation tracker
+ CheckInstall keeps track of all the files created or
+ modified by your installation script ("make install"
+ "make install_modules", "setup", etc), builds a
+ standard binary package and installs it in your
+ system giving you the ability to uninstall it with your
+ distribution's standard package management utilities.
+
+Package: libglib1.2-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 468
+Maintainer: Akira TAGOH <tagoh@debian.org>
+Source: glib1.2
+Version: 1.2.10-9
+Replaces: libgtk-doc, libglib1.1.5-dev, libglib1.1.6-dev, libglib1.1.9-dev, libglib1.1.11-dev, libglib1.1.12-dev, libglib1.1.13-dev, libglib1.1.16-dev, libglib1.2 (<< 1.2.10-3)
+Provides: libglib-dev, libglib1.1-dev
+Depends: libglib1.2 (= 1.2.10-9), libc6-dev | libc-dev, pkg-config
+Suggests: libglib1.2-doc
+Conflicts: libglib-dev, libglib1.1.5-dev, libglib1.1.7-dev, libglib1.1.8-dev, libglib1.1.9-dev, libglib1.1.10-dev, libglib1.1.11-dev, libglib1.1.12-dev, libglib1.1.13-dev, libglib1.1.16-dev, libglib1.2 (<< 1.2.10-3)
+Description: Development files for GLib library
+ GLib is a library containing many useful C routines for things such
+ as trees, hashes, and lists. GLib was previously distributed with
+ the GTK+ toolkit, but has been split off as of the developers' version
+ 1.1.0.
+ .
+ This package contains the header files and static libraries for the
+ GLib C library
+
+Package: xsltproc
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 164
+Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs@lists.alioth.debian.org>
+Architecture: i386
+Source: libxslt
+Version: 1.1.8-4
+Depends: libc6 (>= 2.3.2.ds1-4), libgcrypt11, libgpg-error0 (>= 1.0), libxml2 (>= 2.6.11), libxslt1.1 (>= 1.1.8), zlib1g (>= 1:1.2.1)
+Description: XSLT command line processor
+ XSLT is an XML language for defining transformations of XML files from
+ XML to some other arbitrary format, such as XML, HTML, plain text, etc.
+ using standard XSLT stylesheets.
+ .
+ This package contains a command line tool that facilitates XSLT
+ transformations.
+
+Package: kaddressbook-plugins
+Status: install ok installed
+Priority: optional
+Section: editors
+Installed-Size: 100
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeaddons
+Version: 4:3.2.3-2
+Depends: kaddressbook (>= 4:3.2.2), kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: kworldclock, kontact-plugins, khelpcenter, kdeaddons-doc-html
+Enhances: kaddressbook
+Description: plugins for Kaddressbook, the KDE address book
+ This package contains a variety of useful plugins for the KDE address
+ book. These plugins can be loaded through the KDE address book settings.
+ .
+ Highlights include exporting postal addresses as flags in KWorldClock.
+ .
+ This package is part of the KDE add-ons module.
+
+Package: kdeutils
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 12
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: all
+Version: 4:3.3.0-1
+Depends: ark (>= 4:3.3.0-1), kcalc (>= 4:3.3.0-1), kcharselect (>= 4:3.3.0-1), kdelirc (>= 4:3.3.0-1), kdessh (>= 4:3.3.0-1), kdf (>= 4:3.3.0-1), kedit (>= 4:3.3.0-1), kfloppy (>= 4:3.3.0-1), kgpg (>= 4:3.3.0-1), khexedit (>= 4:3.3.0-1), kjots (>= 4:3.3.0-1), klaptopdaemon (>= 4:3.3.0-1), kmilo (>= 4:3.3.0-1), kregexpeditor (>= 4:3.3.0-1), ksim (>= 4:3.3.0-1), ktimer (>= 4:3.3.0-1), kwalletmanager (>= 4:3.3.0-1)
+Description: KDE Utilities metapackage
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ This package depends on the KDE Utilities packages.
+
+Package: libarts1-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 1076
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: arts
+Version: 1.3.0-1
+Replaces: kdelibs3 (<< 4:3.0.0), libarts (<< 4:3.0.0), libarts-alsa (<< 4:3.0.0), libarts-dev (<< 4:3.0.0), libkmid (<< 4:3.0.0), libkmid-alsa (<< 4:3.0.0), libkmid-dev (<< 4:3.0.0)
+Depends: libarts1 (= 1.3.0-1), libartsc0-dev, libasound2-dev, libaudio-dev, libaudiofile-dev, libesd0-dev, libglib2.0-dev, libjack0.80.0-dev, libmad0-dev, libogg-dev, libqt3-mt-dev, libvorbis-dev
+Conflicts: kdelibs3 (<< 4:3.0.0), libarts (<< 4:3.0.0), libarts-alsa (<< 4:3.0.0), libarts-dev (<< 4:3.0.0), libkmid (<< 4:3.0.0), libkmid-alsa (<< 4:3.0.0), libkmid-dev (<< 4:3.0.0)
+Description: aRts Sound system (development files)
+ aRts is a short form for "analog realtime synthesizer". The idea of the whole
+ thing is to create/process sound using small modules which do certain tasks.
+ These may be create a waveform (oscillators), play samples, filter data, add
+ signals, perform effects like delay/flanger/chorus, or output the data to
+ the soundcard.
+ .
+ This package contains the header files needed to build apps that use the aRts
+ sound daemon.
+ .
+ This package is part of the official KDE aRts module.
+
+Package: w3c-dtd-xhtml
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 704
+Maintainer: Frederic Schutz <schutz@mathgen.ch>
+Architecture: all
+Version: 1.1-5
+Depends: xml-core (>= 0.05), sgml-base (>= 1.17), sgml-data (>= 1.9.1)
+Description: W3C eXtensible HyperText Markup Language (XHTML) DTD
+ XHTML is a family of XML based document types that reproduce,
+ subset and extend HTML4. This package includes Document Type
+ Definitions for the eXtensible HyperText Markup Language (XHTML)
+ versions Basic, 1.0 and 1.1.
+ .
+ Author: W3C HTML Working Group <mailto:www-html@w3.org>
+ Homepage: http://www.w3.org/TR/xhtml11/
+
+Package: crystalspace
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 43560
+Maintainer: Christian Bayle <bayle@debian.org>
+Architecture: i386
+Version: 0.98-20040623-2
+Config-Version: 0.98-20040623-2
+Depends: libasound2 (>> 1.0.4), libc6 (>= 2.3.2.ds1-4), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libjpeg62, libmikmod2 (>= 3.1.10), libmng1 (>= 1.0.3-1), libogg0 (>= 1.1.0), libopenal0, libpng12-0 (>= 1.2.5.0-4), libsdl1.2debian (>> 1.2.7-0), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libvorbis0a (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), python2.3 (>= 2.3), zlib1g (>= 1:1.2.1), python
+Suggests: crystalspace-doc, crystalspace-dev
+Conffiles:
+ /etc/crystalspace/asciiart.cfg c0741b2a8176f2fd1f1035c7f9ffa598
+ /etc/crystalspace/autoexec.cfg a6a67c3d06c8d453e8b996146c338296
+ /etc/crystalspace/awstest.cfg c8c8cb4f632d50d8e7c1275035621c50
+ /etc/crystalspace/awstut.cfg bd74125fc19e3416e035ed73fc7752d5
+ /etc/crystalspace/bugplug.cfg bb60a8e9ca71a6ed97bb19300582ad65
+ /etc/crystalspace/bugplug.key f6c8570548d7942f97016916c1ffd228
+ /etc/crystalspace/csbumptest.cfg 52dc4d1a99a817781f83b886ef63a865
+ /etc/crystalspace/csdemo.cfg 00beff2684bc866015999830b52f4cbd
+ /etc/crystalspace/csws.cfg 8bdab92567574ecae2f1b6ca34b8fff7
+ /etc/crystalspace/cswstest.cfg 244db08a1394d0d0aa82a84a38c2ba6f
+ /etc/crystalspace/engine.cfg 6480c0c78e2e32d1f4aa0da1b85464e9
+ /etc/crystalspace/fancycon.cfg 806acee8cd73f3eceee2c91b868ccafd
+ /etc/crystalspace/fontplex.cfg c135ea92d52ab01e1b214b3bcc677a19
+ /etc/crystalspace/freetype.cfg 192bdc92954c5d94b8395d0bfdcd4a9f
+ /etc/crystalspace/g2dtest.cfg 904711078de00a90b78920a1d89bd8d3
+ /etc/crystalspace/gldrivers.xml 49cac7dae51d7d6907239cc1f286ecff
+ /etc/crystalspace/joystick.cfg 79edf13f5dd5ee992a0c8fffcfcc64aa
+ /etc/crystalspace/macosx.cfg a68d2d232813f8bf7c0402c3210603b0
+ /etc/crystalspace/map2cs.cfg db5b240786f68308a1701aa77b4dff54
+ /etc/crystalspace/mouse.cfg 5617bb215a4558108ba8b960ff1d39a1
+ /etc/crystalspace/movierecorder.cfg 9629ad10f6560d70c7775d44ab748f6c
+ /etc/crystalspace/null3d.cfg b3a37945de92221e52764794ebfd2f70
+ /etc/crystalspace/opengl.cfg 6b8e5299be2287c776d5d99da8ac0bf2
+ /etc/crystalspace/r3dopengl.cfg 1edb578e9d614d4b51147850eeec961e
+ /etc/crystalspace/shadermgr.cfg 4a7c9a4f8a89c02d4d03380ec0f68532
+ /etc/crystalspace/simpcon.cfg 8fb5c2baa814189a1c3ca2effe734e9a
+ /etc/crystalspace/soft3d.cfg 84182b383d29bda98441ec67a2f1dc18
+ /etc/crystalspace/sound.cfg f6c87eb710b230ccd4a20b8a80d29b6e
+ /etc/crystalspace/standardcon.cfg e68271eaa59628c6579ba2f31dd90b18
+ /etc/crystalspace/system.cfg e71675e17e1eace4233638ea344d0c3f
+ /etc/crystalspace/thing.cfg ff912f0d1bbed291d0a9ebaf639305f7
+ /etc/crystalspace/video.cfg 78ff3e557d2879eda5ee4d85854f31e1
+ /etc/crystalspace/walktest.cfg 99905ea698c7848798b1d7785ec2623b
+ /etc/crystalspace/waterdemo.cfg 99ec33ac47821faf27a36014e8f2fae5
+ /etc/crystalspace/vfs.cfg 35e25ca7605576972e2b159a579e6649
+Description: Multiplatform 3D Game Development Kit
+ Crystal Space is a free 3D game toolkit. It can be used for a variety
+ of 3D visualization tasks. Many people will probably be interested in using
+ Crystal Space as the basis of a 3D game, for which it is well suited.
+ It is divided in a main package containing engine, a dev package
+ containing dev related utilities, a doc package containing extended html
+ documentation.
+
+Package: xutils
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 3116
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: rstart, rstartd, xbase-clients (<= 4.0.1-8), xserver-common (<< 4.0), xfonts-base (<< 4.3.0.dfsg.1-7), xbase (<< 3.3.2.3a-2), xlibs-dev (<< 4.1.0-12), xlib6g-dev (<< 4.0), dpsclient, xcontrib
+Depends: xfree86-common (>> 4.3), cpp, libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), zlib1g (>= 1:1.2.1)
+Suggests: ssh | rsh-server, ssh | rsh-client, xlibs-data
+Conflicts: rstart, rstartd, xbase-clients (<< 4.0), xserver-common (<< 4.0), xbase (<< 3.3.2.3a-2), cpp-3.3 (<< 1:3.3.3-0pre1)
+Conffiles:
+ /etc/X11/rstart/commands/@List 3136f73ea92f9d0713fab87b43e115d7
+ /etc/X11/rstart/commands/ListContexts 47dd38a3e578e28ba8178717f88d436b
+ /etc/X11/rstart/commands/ListGenericCommands 990244465726f0f0253167b9bc548d51
+ /etc/X11/rstart/commands/x11r6/@List 2f8c5da2a627177e87e6ff462e769df6
+ /etc/X11/rstart/commands/x11r6/LoadMonitor 6c85958e27ab270430fb231215ad6b0d
+ /etc/X11/rstart/commands/x11r6/Terminal 6eb40925388edfe891d94845e46866ff
+ /etc/X11/rstart/config 15fef3ea0bbc331bf1e88597e0dacce1
+ /etc/X11/rstart/contexts/@List 462ceaab24460a7650c1c7dd08f7d7f1
+ /etc/X11/rstart/contexts/default 6464dd06f101fdd425138f28fb2ccca0
+ /etc/X11/rstart/contexts/x11r6 31f26a79e13731d9be22b60383ff430a
+Description: X Window System utility programs
+ xutils provides a set of utility programs shipped with the X Window System
+ that do not require the X libraries; many of these programs are useful
+ even on a system that does not have any X clients or X servers installed.
+ .
+ The programs in this package include:
+ - bdftopcf, which converts BDF fonts to PCF fonts;
+ - bdftruncate and ucs2any, tools to generate fonts with various encodings
+ from ISO 10646-encoded fonts
+ - ccmakedep, a version of makedepend which "does it right"
+ - cleanlinks, a program to remove dangling symlinks and empty directories
+ from a shadow link tree (created with lndir)
+ - fslsfonts, a tool that lists fonts served by an X font server;
+ - imake, a C preprocessor interface to the make utility;
+ - lndir, a tool that creates a shadow directory of symbolic links to
+ another directory tree;
+ - luit, a filter that can be run between an arbitrary application and a
+ UTF-8 terminal emulator;
+ - makedepend, a tool to create dependencies in makefiles;
+ - makeg, a tool for making debuggable executables;
+ - makepsres, a tool that creates PostScript language resource database
+ files;
+ - makestrs, a tool that makes string table C source and header(s);
+ - mkcfm, a tool that create summaries of font metric files in CID font
+ directories;
+ - mkdirhier, a tool that creates a directory hierarchy;
+ - mkfontdir, a program to generate fonts.dir files;
+ - scanpci, a utility for retrieving information about the PCI bus and
+ devices on it (not available on all architectures);
+ - pcitweak, a utility that can be used to examine or change registers in
+ the PCI configuration space (not available on all architectures);
+ - pswrap, a tool that creates C procedures from segments of PostScript
+ language code;
+ - resize, which prints a shell command for setting the TERM and TERMCAP
+ environment variables to indicate the current size of the xterm (or
+ compatible program) window from which the command is run;
+ - revpath, which generates a relative path that can be used to undo a
+ change-directory;
+ - rstart, a remote start client;
+ - rstartd, a remote start daemon activated by rstart connections;
+ - sessreg, a simple program for managing utmp/wtmp entries;
+ - showfont, a font dumper for use with an X font server;
+ - showrgb, a decompiler for RGB color-name databases;
+ - xfsinfo, an X font server information utility;
+ - xmkmf, a tool that creates a Makefile from an Imakefile; and
+ - xon, a tool that starts an X program on a remote machine.
+ .
+ Installation of an rsh or ssh daemon (server) is necessary if rstartd is
+ to be used, and installation of an rsh or ssh client is necessary if
+ rstart is to be used. The luit program requires locale information from
+ the xlibs-data package.
+ .
+ imake uses the C preprocessor (cpp) as a macro processor. The GNU C
+ preprocessor's "-traditional" support misbehaves in early releases of the GCC
+ 3.3 series; therefore, this package conflicts with those versions.
+
+Package: gimp-data-extras
+Status: purge ok not-installed
+Priority: optional
+Section: graphics
+
+Package: xpilot-client-nosound
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 444
+Maintainer: Ben Armstrong <synrg@sanctuary.nslug.ns.ca>
+Source: xpilot
+Version: 4.5.5beta.20031222-1
+Config-Version: 4.5.5beta.20031222-1
+Replaces: xpilot-client
+Depends: libc6 (>= 2.3.2.ds1-4), xlibs (>> 4.1.0), xpilot-client-common
+Suggests: xpilot-server, xpilot-extra
+Conflicts: xpilot-client, xpilot (<< 4.1.0-4.U.4alpha2.1)
+Description: Client (without sound support) for XPilot
+ XPilot is a multi-player tactical manoeuvring game for X. Each
+ player controls their own fighter equipped with a variety of weapons
+ and power-ups. Players compete as teams or as individuals; the
+ object of the game is to score points by blasting the opposition,
+ stealing their treasure or by racing round a circuit.
+ WARNING: This game is very addictive.
+ .
+ This package contains the client needed to play the game; it is
+ compiled without sound support.
+
+Package: liballegro4.1
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 1104
+Maintainer: Sam Hocevar (Debian packages) <sam+deb@zoy.org>
+Architecture: i386
+Source: allegro4.1
+Version: 2:4.1.15-4
+Config-Version: 2:4.1.15-4
+Depends: libasound2 (>> 1.0.5), libc6 (>= 2.3.2.ds1-4), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0)
+Recommends: liballegro4.1-plugin-jack
+Suggests: timidity-patches, liballegro4.1-plugin-esd | liballegro4.1-plugin-arts
+Conflicts: liballegro3.9.34wip1 (<< 3935pre1-7), liballegro4
+Description: portable library for cross-platform game and multimedia development
+ Allegro is a cross-platform library intended for use in computer games
+ and other types of multimedia programming. It is used by many DOS games
+ and can be used to port them easily to Linux. Allegro supports many
+ kinds of input and output interfaces, e.g. X11 (Xlib or DGA),
+ framebuffer, SVGAlib.
+ .
+ NOTE: you should install XFree86 to use the display output plugins.
+ Alternatively, you can use the framebuffer output, or install the
+ liballegro-plugin-svgalib on i386.
+
+Package: phpgroupware-phpgwapi
+Status: purge ok not-installed
+Priority: optional
+Section: web
+
+Package: libzlib-ruby1.6
+Status: purge ok not-installed
+Priority: optional
+Section: interpreters
+
+Package: liblircclient0
+Status: install ok installed
+Priority: extra
+Section: libs
+Installed-Size: 92
+Maintainer: Amaya Rodrigo Sastre <amaya@debian.org>
+Architecture: i386
+Source: lirc
+Version: 0.6.6-12
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: lirc
+Description: LIRC client library
+ This library provides functions so that other programs (eg xawtv)
+ can support remote controls via LIRC.
+
+Package: libsnmp-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 1248
+Maintainer: Jochen Friedrich <jochen@scram.de>
+Architecture: i386
+Source: net-snmp
+Version: 5.1.2-4
+Depends: perl (>= 5.8.4-2), perlapi-5.8.4, libsnmp5 (= 5.1.2-4)
+Description: NET SNMP (Simple Network Management Protocol) Perl5 Support
+ The Simple Network Management Protocol (SNMP) provides a framework
+ for the exchange of management information between agents (servers)
+ and clients. The NET SNMP perl5 support files provide the perl
+ functions for integration of SNMP into applications, written in perl.
+
+Package: digikam
+Status: install ok installed
+Priority: extra
+Section: checkinstall
+Installed-Size: 3580
+Maintainer: root@sirion
+Architecture: i386
+Version: 0-1
+Description: album management for kde
+
+Package: syslinux
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 479
+Maintainer: Juan Cespedes <cespedes@debian.org>
+Architecture: i386
+Version: 2.10-1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Recommends: mtools
+Description: Bootloader for Linux/i386 using MS-DOS floppies
+ SYSLINUX is a boot loader for the Linux/i386 operating system which
+ operates off an MS-DOS/Windows FAT filesystem. It is intended to
+ simplify first-time installation of Linux, and for creation of rescue
+ and other special-purpose boot disks.
+ .
+ It can also be used as a PXE bootloader during network boots.
+ .
+ SYSLINUX is probably not suitable as a general purpose boot loader.
+ However, SYSLINUX has shown itself to be quite useful in a number of
+ special-purpose applications.
+
+Package: libgnomeui-common
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+Architecture: all
+
+Package: gzip
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 232
+Maintainer: Bdale Garbee <bdale@gag.com>
+Architecture: i386
+Version: 1.3.5-9
+Depends: debianutils (>= 1.6)
+Pre-Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: less
+Description: The GNU compression utility
+ This is the standard GNU file compression utility, which is also the default
+ compression tool for Debian. It typically operates on files with names
+ ending in '.gz'.
+ .
+ This package can also decompress '.Z' files created with 'compress'.
+
+Package: libwww-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 1032
+Maintainer: Michael Alan Dorman <mdorman@debian.org>
+Architecture: all
+Version: 5.800-1
+Depends: perl (>= 5.6.0-16), libnet-perl (>= 1:1.09) | perl (>= 5.8.1), libdigest-md5-perl, libmime-base64-perl (>= 2.1) | perl (>= 5.8), liburi-perl (>= 1.10), libhtml-parser-perl (>= 3.33), libhtml-tree-perl (>= 3.11)
+Recommends: libmailtools-perl, libhtml-format-perl
+Suggests: libio-socket-ssl-perl (>= 0.81-2)
+Description: WWW client/server library for Perl (aka LWP)
+ Libwww-perl is a collection of Perl modules which provides a simple
+ and consistent programming interface (API) to the World-Wide Web. The
+ main focus of the library is to provide classes and functions that
+ allow you to write WWW clients, thus libwww-perl said to be a WWW
+ client library. The library also contain modules that are of more
+ general use, as well as a simple HTTP/1.1-compatible server
+ implementation.
+
+Package: libdivxdecore0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 452
+Maintainer: Christian Marillat <marillat@debian.org>
+Source: divx4linux
+Version: 1:5.0.1-1
+Depends: libc6 (>= 2.2.4-4)
+Description: DivX MPEG-4 Codec - decoder library
+ DivXTM compression technology is a software application that compresses
+ digital video so it can be downloaded over DSL or cable modems in a
+ relatively short time with no reduced visual quality.
+
+Package: libzlib-ruby1.8
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 176
+Maintainer: akira yamada <akira@debian.org>
+Architecture: i386
+Source: ruby1.8
+Version: 1.8.1+1.8.2pre2-3
+Depends: libc6 (>= 2.3.2.ds1-4), libruby1.8 (>= 1.8.1+1.8.2pre2-3), zlib1g (>= 1:1.2.1)
+Description: Extension library to use zlib from Ruby 1.8
+ Ruby/zlib is a extension library which makes Ruby to be able to use
+ zlib library. It also provides the features for accessing gzipped
+ files.
+ .
+ This package provides Ruby/zlib library for Ruby 1.8.
+
+Package: audacity
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 4280
+Maintainer: Matt Brubeck <mbrubeck@cs.hmc.edu>
+Architecture: i386
+Version: 1.2.1-4
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libid3tag0 (>= 0.15.0b), libmad0 (>= 0.15.1b), libogg0 (>= 1.1.0), libsndfile1 (>= 1.0.2-1), libstdc++5 (>= 1:3.3.4-1), libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libwxgtk2.4 (>= 2.4.2.4)
+Suggests: ladspa-plugin
+Description: A fast, cross-platform audio editor
+ Audacity is a multi-track audio editor for Linux/Unix, MacOS and
+ Windows. It is designed for easy recording, playing and editing of
+ digital audio. Audacity features digital effects and spectrum
+ analysis tools. Editing is very fast and provides unlimited
+ undo/redo.
+ .
+ Supported file formats include Ogg Vorbis, MP3, WAV, AIFF, and AU.
+ .
+ For more information, see http://audacity.sourceforge.net/.
+
+Package: dpkg
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 3868
+Origin: debian
+Maintainer: Dpkg Development <debian-dpkg@lists.debian.org>
+Bugs: debbugs://bugs.debian.org
+Architecture: i386
+Version: 1.10.23
+Replaces: dpkg-doc-ja, dpkg-static, manpages-de (<= 0.4-3)
+Pre-Depends: dselect, libc6 (>= 2.3.2.ds1-4)
+Conflicts: sysvinit (<< 2.82-1), dpkg-iasearch (<< 0.11), dpkg-static, dpkg-dev (<< 1.10)
+Conffiles:
+ /etc/dpkg/origins/debian 24926c0576edec3e316fd9f6072b8118
+ /etc/alternatives/README 69c4ba7f08363e998e0f2e244a04f881
+Description: Package maintenance system for Debian
+ This package contains the programs which handle the installation and
+ removal of packages on your system.
+ .
+ The primary interface for the dpkg suite is the `dselect' program;
+ a more low-level and less user-friendly interface is available in
+ the form of the `dpkg' command.
+ .
+ In order to unpack and build Debian source packages you will need to
+ install the developers' package `dpkg-dev' as well as this one.
+
+Package: lilo-config
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 260
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeadmin
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libaudio2, libc6 (>= 2.3.2.ds1-4), libfam0c102, libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxcursor1 (>> 1.1.2), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxrandr2 | xlibs (>> 4.3.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), kcontrol
+Suggests: lilo
+Description: KDE Frontend for lilo configuration
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ lilo-config is a KDE based frontend to the lilo boot manager configuration.
+ It runs out of the KDE Control Center.
+ .
+ This package is part of the official KDE admin module.
+
+Package: reiser4progs
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 1492
+Maintainer: Ed Boraas <ed@debian.org>
+Architecture: i386
+Version: 1.0.0-5
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), libreadline4 (>= 4.3-1), libuuid1, debconf (>= 1.2.0) | debconf-2.0
+Suggests: kernel-patch-2.6-reiser4 (>= 20040813-1)
+Description: Administration utilities for the Reiser4 filesystem
+ The following utilities to manage Reiser4 filesystems are provided:
+ .
+ - debugfs.reiser4
+ - cpfs.reiser4
+ - fsck.reiser4
+ - measurefs.reiser4
+ - mkfs.reiser4
+ - resizefs.reiser4
+ .
+ Homepage: http://www.namesys.com/
+
+Package: supertux
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 568
+Maintainer: Gürkan Sengün <gurkan@linuks.mine.nu>
+Architecture: i386
+Version: 0.1.2-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libsdl-image1.2 (>= 1.2.3), libsdl-mixer1.2 (>= 1.2.5), libsdl1.2debian (>> 1.2.7-0), libstdc++5 (>= 1:3.3.4-1), xlibmesa-gl | libgl1, zlib1g (>= 1:1.2.1), supertux-data
+Description: Classic 2D jump 'n run sidescroller with Tux
+ SuperTux is a classic 2D jump 'n run sidescroller game in a similar
+ style like the original SuperMario games.
+ .
+ Homepage: http://super-tux.sourceforge.net/
+
+Package: libgpmg1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 104
+Maintainer: Debian GPM Team <pkg-gpm-devel@lists.alioth.debian.org>
+Architecture: i386
+Source: gpm
+Version: 1.19.6-17
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1)
+Suggests: gpm
+Conflicts: libgpm1 (<< 1.12-3)
+Description: General Purpose Mouse - shared library
+ This package provides a library that handles mouse requests
+ and delivers them to applications. See the description for the 'gpm'
+ package for more information.
+
+Package: kdevelop-data
+Status: purge ok not-installed
+Priority: optional
+Section: devel
+
+Package: kmatplot
+Status: install ok installed
+Priority: optional
+Section: math
+Installed-Size: 2462
+Maintainer: Hugo van der Merwe <hvdm@debian.org>
+Architecture: i386
+Version: 0.4-6
+Depends: atlas3-base | lapack3 | liblapack.so.3, atlas3-base | refblas3 | libblas.so.3, fftw3, libaudio2, libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libg2c0 (>= 1:3.3.3-1), libgcc1 (>= 1:3.3.3-1), libhdf5-serial-1.6.1-0 | libhdf5-1.6.1-0, libice6 | xlibs (>> 4.1.0), libjpeg62, libncurses5 (>= 5.4-1), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libreadline4 (>= 4.3-1), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxcursor1, libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxmu6 | xlibs (>> 4.1.0), libxrender1, libxt6 | xlibs (>> 4.1.0), xlibmesa-gl | libgl1, xlibmesa-glu | libglu1, zlib1g (>= 1:1.2.1)
+Recommends: octave2.1 (>= 2.1.57), octave2.1 (<< 2.1.58)
+Conffiles:
+ /etc/kmatplotrc 3d9fe79a80ff16775b4a797f2df8024e
+Description: A Gnuplot-like tool for plotting data sets in 2D or 3D
+ KMatplot is a gnuplot-like tool for plotting data sets in either two or
+ three dimensions. It can plot many types of 2d plots, including pixmaps
+ and contours, and 3d surfaces. It offers a full WYSIWYG mode with
+ multiple objects on a single page.
+ .
+ As opposite to Gnuplot, KMatplot is very clickable, so easier to use
+ for unexperienced users. It can be used instead of Gnuplot with Octave
+ and Scilab - there are new dll functions installed in those packages,
+ which communicate with KMatplot through an Unix socket. Those functions
+ are named 'kplot', 'kimage', kmesh', ... and are similar to those found
+ in Octave by default.
+ .
+ The Debian package is not built with Scilab support by default.
+
+Package: fftw3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 2488
+Maintainer: Paul Brossier <piem@altern.org>
+Architecture: i386
+Version: 3.0.1-10
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: fftw3-dev
+Description: Library for computing Fast Fourier Transforms
+ This library computes Fast Fourier Transforms (FFT) in one
+ or more dimensions. It is extremely fast. This package
+ contains the shared library versions of the fftw libraries
+ in single, double and long double precisions. Note that on
+ some architectures double is the same as long double in
+ which case there is no long double library.
+ .
+ To get the static library and the header files you need to
+ install fftw3-dev.
+ .
+ For documentation install fftw3-doc.
+
+Package: kgamma
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 328
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegraphics
+Version: 4:3.3.0-1.1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: Gamma correction KControl module
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KGamma is a control center module for gamma correction
+ of the X11 display.
+ .
+ This package is part of the official KDE graphics module.
+
+Package: libqt3-headers
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 2440
+Maintainer: Martin Loschwitz <madkiss@debian.org>
+Architecture: i386
+Source: qt-x11-free
+Version: 3:3.3.3-4
+Replaces: libqt3-mt-dev, libqt3-dev, libqt3-plugins-headers
+Recommends: libqt3-mt-dev
+Description: Qt3 header files
+ This package contains all header files for libqt and libqt-mt which come
+ with Qt3. If you want to compile or develop programs which use Qt3, you
+ have to install this package.
+
+Package: tcsh
+Status: install ok installed
+Priority: standard
+Section: shells
+Installed-Size: 1240
+Maintainer: Martin A. Godisch <godisch@debian.org>
+Architecture: i386
+Version: 6.13.01-4
+Replaces: tcsh-kanji, tcsh-i18n
+Provides: c-shell
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1)
+Conflicts: tcsh-kanji, tcsh-i18n
+Conffiles:
+ /etc/csh.cshrc 95840dc6e4e39dbf6ac99f76c30dc13b
+ /etc/csh.login 11dc986dd073cd47de4b860b27de76c2
+ /etc/csh.logout d753c13e2000ee9fc65dd23417b6d00f
+ /etc/complete.tcsh 85855dc131c46bfac4af0105659e22dd
+Description: TENEX C Shell, an enhanced version of Berkeley csh
+ The TENEX C Shell is an enhanced version of the Berkeley Unix C shell.
+ It includes all features of 4.4BSD C shell, plus a command-line editor,
+ programmable word completion, spelling correction and more. The tcsh
+ homepage can be found at http://www.tcsh.org/Home.
+ .
+ There is another package, tcsh-kanji, providing KANJI support.
+
+Package: fortunes-debian-hints
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 64
+Maintainer: Joel Baker <fenton@debian.org>
+Version: 1.5
+Provides: fortune-cookie-db
+Recommends: fortune-mod (>= 9708-31)
+Description: Debian Hints for fortune
+ This package provides a set of hints and tips on using Debian, in a
+ fortune database format. New Debian users (or administrators) may find its
+ advice particularly sage or helpful, and even veteren Debianites might
+ find some new tidbits.
+
+Package: libxvidcore2
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 484
+Maintainer: Christian Marillat <marillat@debian.org>
+Source: xvidcore
+Version: 1:0.9.2-0.3
+Config-Version: 1:0.9.2-0.3
+Depends: libc6 (>= 2.3.2-1)
+Description: MPEG-4 Video encoder
+ This codec is the open source video codec from Project Mayo, now developed
+ by others people.
+
+Package: libxvidcore4
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 692
+Maintainer: Christian Marillat <marillat@debian.org>
+Architecture: i386
+Source: xvidcore
+Version: 2:1.0.2-0.0
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: High quality ISO MPEG4 codec library
+ XviD is a high quality/performance ISO MPEG4 codec.
+
+Package: libpcre3
+Status: install ok installed
+Priority: important
+Section: libs
+Installed-Size: 240
+Maintainer: Mark Baker <mbaker@iee.org>
+Architecture: i386
+Source: pcre3
+Version: 4.5-1.1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libpcre3-dev (<= 4.3-3)
+Description: Perl 5 Compatible Regular Expression Library - runtime files
+ This is a library of functions to support regular expressions whose syntax
+ and semantics are as close as possible to those of the Perl 5 language.
+ .
+ This package contains the runtime libraries.
+
+Package: render-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 112
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Source: render
+Version: 0.8-4
+Depends: x-dev
+Conflicts: xlibs-dev (<< 4.3.0)
+Description: X Rendering Extension header files and documentation
+ The X Rendering Extension (Render) introduces digital image composition as
+ the foundation of a new rendering model within the X Window System.
+ Rendering geometric figures is accomplished by client-side tesselation into
+ either triangles or trapezoids. Text is drawn by loading glyphs into the
+ server and rendering sets of them.
+ .
+ This package contains header files and documentation for the X Rendering
+ Extension. The library and server implementations of the extension are
+ separate.
+
+Package: dh-make
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 284
+Maintainer: Craig Small <csmall@debian.org>
+Version: 0.36
+Depends: debhelper (>= 4.0.0), make, perl, dpkg-dev
+Suggests: build-essential
+Conflicts: ldap-utils (<< 2.0.0-0)
+Description: Debianizing Tool for debhelper
+ This package contains dh_make, which generates a Debian style source package
+ from regular source code archive. Customizes control files. Provides example
+ setup for debhelper utilities that is usually usable with minimal editing.
+
+Package: gsfonts-x11
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 124
+Maintainer: Roland Rosenfeld <roland@debian.org>
+Version: 0.17
+Depends: gsfonts (>= 6.0-2), xutils (>= 4.1.0-12)
+Conflicts: gsfonts (<< 6.0-2)
+Conffiles:
+ /etc/X11/fonts/Type1/gsfonts-x11.scale 99c6fce657cf452619a6ffb708ae4b3c
+ /etc/X11/fonts/Type1/gsfonts-x11.alias f61d8b707eb67bf5b6d0aaa9f1906208
+Description: Make Ghostscript fonts available to X11
+ This packages makes the 35 Postscript fonts from the gsfonts package
+ available to your X server under their "urw" names and via
+ fonts.alias with the official "adobe" names, too.
+ .
+ This package does not contain any fonts itself but allows to reuse
+ the ghostscript fonts as X11 screen fonts.
+
+Package: aptitude
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 4748
+Maintainer: Daniel Burrows <dburrows@debian.org>
+Architecture: i386
+Version: 0.2.15.6-1
+Depends: libapt-pkg-libc6.3-5-3.3, libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libncurses5 (>= 5.4-1), libsigc++-1.2-5c102, libstdc++5 (>= 1:3.3.4-1)
+Recommends: aptitude-doc-en | aptitude-doc
+Conffiles:
+ /etc/logrotate.d/aptitude fb66bc5dc8c13edbcb83cea15ff86959
+Description: terminal-based apt frontend
+ aptitude is a terminal-based apt frontend with a number of useful
+ features, including: a mutt-like syntax for matching packages in a
+ flexible manner, dselect-like persistence of user actions, the
+ ability to retrieve and display the Debian changelog of most
+ packages, and extreme flexibility and customization.
+ .
+ aptitude is also Y2K-compliant, non-fattening, naturally cleansing,
+ and housebroken.
+
+Package: jack-tools
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 179
+Maintainer: Robert Jordens <jordens@debian.org>
+Architecture: i386
+Version: 0.0.2-2
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libjack0.80.0-0 (>= 0.94.0), libsm6 | xlibs (>> 4.1.0), libsndfile1 (>= 1.0.2-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), jackd (>= 0.94.0)
+Description: various JACK tools: plumbing, play, udp, ctl, scope, clock
+ This collection contains a bunch of small tools for JACK written by Rohan
+ Drape for the JACK low latency audio API.
+ .
+ JACK allows the connection of multiple applications to an audio device,
+ as well as allowing them to share audio between themselves.
+ .
+ jack.plumbing maintains a set of port connection rules and
+ manages these as clients register ports with JACK. Port names are
+ implicitly bounded regular expressions and support sub-expression
+ patterns.
+ .
+ jack.play is a light-weight JACK sound file player. It
+ creates as many output ports as there are channels in the input file.
+ .
+ jack.udp is a UDP audio transport mechansim for JACK. The
+ send mode reads signals from a set of JACK input ports and sends
+ UDP packets to the indicated port at the indicated host at a rate
+ determined by the local JACK daemon. The "recv" mode reads
+ incoming packets at the indicated port and writes the incoming data to
+ a set of JACK output ports at a rate that is determined by the local
+ JACK daemon.
+ .
+ jack.ctl is a JACK session manager. It reads configuration information
+ from a system wide and a user specific configuration file and
+ manages sessions involving the JACK daemon proper and optionally a
+ set of secondary jack daemons.
+ .
+ jack.scope draws either a time domain signal trace or a self
+ correlation trace. Multiple input channels are superimposed, each
+ channel is drawn in a different color. jack.scope accepts
+ OSC packets for interactive control of drawing parameters.
+ .
+ jack.clock publishes the transport state of the local JACK server as OSC
+ packets over a UDP connection. jack.clock allows any OSC enabled
+ application to act as a JACK transport client, receiving
+ sample accurate pulse stream timing data, and monitoring and
+ initiating transport state change.
+ .
+ Further information can be found at <http://www.alphalink.com.au/~rd>.
+
+Package: offlineimap
+Status: install ok installed
+Priority: optional
+Section: mail
+Installed-Size: 532
+Maintainer: John Goerzen <jgoerzen@complete.org>
+Architecture: all
+Version: 4.0.7
+Depends: python2.3
+Suggests: python2.3-tk
+Description: IMAP/Maildir synchronization and reader support
+ OfflineIMAP is a tool to simplify your e-mail reading. With
+ OfflineIMAP, you can:
+ .
+ * Read the same mailbox from multiple computers, and have your
+ changes (deletions, etc.) be automatically reflected on
+ all computers
+ .
+ * Use various mail clients to read a single mail box
+ .
+ * Read mail while offline (on a laptop) and have all changes
+ synchronized when you get connected again
+ .
+ * Read IMAP mail with mail readers that do not support IMAP
+ .
+ * Use SSL (secure connections) to read IMAP mail even if your reader
+ doesn't support SSL
+ .
+ * Synchronize your mail using a completely safe and fault-tolerant
+ algorithm. (At least I think it is!)
+ .
+ * Customize which mailboxes to synchronize with regular expressions
+ or lists.
+ .
+ * Synchronize your mail two to four times faster than with other tools
+ or other mail readers' internal IMAP support.
+ .
+ In short, OfflineIMAP is a tool to let you read mail how YOU want to.
+
+Package: jack-rack
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 276
+Maintainer: Guenter Geiger <geiger@debian.org>
+Architecture: i386
+Version: 1.4.3-1
+Depends: jackd, swh-plugins, blop, cmt, libasound2 (>> 0.9.8), libatk1.0-0 (>= 1.4.1), libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.2.3), libgtk2.0-0 (>= 2.2.1), libjack0.80.0-0 (>= 0.94.0), liblrdf0, libpango1.0-0 (>= 1.2.1), libxml2 (>= 2.6.3), zlib1g (>= 1:1.2.1)
+Description: LADSPA effects "rack" for JACK
+ JACK Rack is an effects "rack" for the JACK low latency audio API. The
+ rack can be filled with LADSPA effects plugins and can be controlled
+ using the ALSA sequencer. It's phat; it turns your computer into an
+ effects box.
+
+Package: akode
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 880
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdemultimedia
+Version: 4:3.3.0-1
+Depends: libarts1 (>= 1.3.0), libasound2 (>> 1.0.5), libaudio2, libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libflac4, libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.1), libjack0.80.0-0 (>= 0.98.1), libmad0 (>= 0.15.1b), libogg0 (>= 1.1.0), liboggflac1, libsamplerate0, libspeex1, libstdc++5 (>= 1:3.3.4-1), libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libxt6 | xlibs (>> 4.1.0)
+Description: akode arts plugin
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ akode arts plugin.
+ .
+ This package is part of the official KDE multimedia module.
+
+Package: libc-client2002ddebian
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 36
+Maintainer: Your Name <yourname@foo.com>
+Version: 1.0
+Description: fake libc-client-2002ddebian for php4-imap
+ long description and info
+
+Package: kwin
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 2484
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: kdebase-bin (= 4:3.3.0-1), kdebase-data (= 4:3.3.0-1), kdesktop (= 4:3.3.0-1), kicker (= 4:3.3.0-1), kpager (= 4:3.3.0-1), kpersonalizer (= 4:3.3.0-1), ksmserver (= 4:3.3.0-1), ksplash (= 4:3.3.0-1)
+Description: KDE Window Manager
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This package contains the default KDE window manager
+ .
+ This package is part of the official KDE base module.
+
+Package: pkg-config
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 124
+Maintainer: Scott James Remnant <scott@netsplit.com>
+Architecture: i386
+Source: pkgconfig
+Version: 0.15.0-4
+Depends: libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.2.3)
+Suggests: libgnome-dev
+Description: Manage compile and link flags for libraries
+ pkg-config is a system for managing library compile and link flags that
+ works with automake and autoconf.
+ .
+ Increasingly libraries ship with ".pc" files that allow querying of the
+ compiler and linker flags needed to use them through the pkg-config(1)
+ program.
+
+Package: myspell-bg
+Status: deinstall ok config-files
+Priority: optional
+Section: text
+Installed-Size: 936
+Maintainer: Anton Zinoviev <zinoviev@debian.org>
+Source: bgoffice
+Version: 3.0-2
+Config-Version: 3.0-2
+Replaces: mybulgarian
+Provides: myspell-dictionary, myspell-dictionary-bg, mybulgarian
+Depends: dictionaries-common (>= 0.20.1) | openoffice.org-updatedicts
+Suggests: openoffice.org
+Conflicts: openoffice.org (<= 1.0.3-2), mybulgarian
+Description: The Bulgarian dictionary for myspell
+ This is the Bulgarian dictionary for use with the myspell spellchecker
+ which is currently used within OpenOffice.org and the mozilla
+ spellchecker.
+ .
+ Provided by the BgOffice project, http://bgoffice.sf.net
+
+Package: psi
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 5376
+Maintainer: Jan Niehusmann <jan@debian.org>
+Architecture: i386
+Version: 0.9.2-2
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libqt3c102-mt (>= 3:3.3.2), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Recommends: qca-tls
+Suggests: psi-translations
+Description: Jabber client using Qt
+ Psi is a jabber client looking (by design) like licq. Besides basic
+ instant messaging services, it provides support for features like
+ groupchat and multiple accounts.
+ For more information on jabber, see www.jabber.org (or the
+ jabber package which contains the jabber server software).
+
+Package: libtool-doc
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 2336
+Maintainer: Scott James Remnant <scott@netsplit.com>
+Architecture: all
+Source: libtool
+Version: 1.5.6-2
+Conflicts: libtool1.4-doc
+Description: Generic library support script
+ This package contains the GNU libtool documentation.
+ .
+ GNU libtool is generic library support script. Libtool hides
+ the complexity of generating special library types (such as shared
+ libraries) behind a consistent interface. To use libtool, add the
+ new generic library building commands to your Makefile, Makefile.in,
+ or Makefile.am. See the documentation for details. Libtool supports
+ building static libraries on all platforms.
+
+Package: abuse
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 752
+Maintainer: Sam Hocevar (Debian packages) <sam+deb@zoy.org>
+Architecture: i386
+Source: abuse-sdl
+Version: 1:0.7.0-1
+Config-Version: 1:0.7.0-1
+Replaces: abuse-sdl (<< 0.6.1-2)
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.4-1), libsdl1.2debian (>> 1.2.7-0), libstdc++5 (>= 1:3.3.4-1), xlibmesa-gl | libgl1, abuse-frabs | abuse-lib (>= 2.00-11)
+Conflicts: abuse-sdl (<< 0.6.1-2)
+Description: SDL port of the Abuse action game
+ Abuse is a side scrolling shoot-em-up action game from Crack dot Com.
+ .
+ This package contains the SDL-version of the Abuse game engine. It requires
+ a mouse.
+
+Package: imlib11
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 236
+Maintainer: Steve M. Robbins <smr@debian.org>
+Architecture: i386
+Source: imlib
+Version: 1.9.14-17
+Provides: imlib
+Depends: imlib-base (>= 1.9.14-1), libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libjpeg62, libpng12-0 (>= 1.2.5.0-4), libsm6 | xlibs (>> 4.1.0), libtiff4, libungif4g (>= 4.1.3), libxext6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Suggests: imlib-progs
+Description: Imlib is an imaging library for X and X11
+ Imlib is a low-level Xlib interface for X programmers. It allows easier
+ access to many graphics formats and can write to them as well.
+
+Package: x-ttcidfont-conf
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 148
+Maintainer: Debian QA Group <packages@qa.debian.org>
+Architecture: all
+Version: 17
+Depends: defoma (>= 0.5.0), debconf (>= 1.2.0), xutils
+Conflicts: psfontmgr (<= 0.4.0)
+Conffiles:
+ /etc/defoma/config/x-ttcidfont-conf.conf2 83a31934eb3581a74cf0932317de141f
+Description: Configure TrueType and CID fonts for X
+ This package configures TrueType fonts and CID fonts (as well as CMaps)
+ for X. It generates .scale file and .alias file from TrueType and CID
+ fonts registered to Defoma, and calls mkfontdir (and mkcfm).
+ Both xtt and freetype backends which are used to handle TrueType fonts
+ in X are supported.
+
+Package: libaudio-dev
+Status: install ok installed
+Priority: extra
+Section: devel
+Installed-Size: 3004
+Maintainer: Steve McIntyre <93sam@debian.org>
+Architecture: i386
+Source: nas
+Version: 1.6d-2
+Replaces: nas-dev
+Provides: nas-dev
+Depends: libaudio2, libc6 (>= 2.3.2.ds1-4), libxt6 | xlibs (>> 4.1.0)
+Conflicts: nas-dev
+Description: The Network Audio System (NAS). (development files)
+ The Network Audio System was developed by NCD for playing, recording, and
+ manipulating audio data over a network. Like the X Window System, it uses
+ the client/server model to separate applications from the specific drivers
+ that control audio input and output devices.
+ .
+ This package contains the header files and static library (libaudio.a),
+ needed for development of programs using nas.
+
+Package: debian-policy
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 2012
+Maintainer: Debian Policy List <debian-policy@lists.debian.org>
+Architecture: all
+Version: 3.6.1.1
+Replaces: packaging-manual
+Suggests: doc-base
+Conflicts: dpkg-dev (<< 1.4.0.9), doc-base (<< 0.6), packaging-manual
+Description: Debian Policy Manual and related documents
+ This package contains:
+ - Debian Policy Manual
+ - Linux Filesystem Hierarchy Standard (FHS)
+ - Authoritative list of virtual package names
+ - Paper about libc6 migration
+ - Policy checklist for upgrading your packages
+ It also replaces the old Packaging Manual; most of the still-relevant
+ content is now included as appendices to the Policy Manual.
+
+Package: yaf
+Status: deinstall ok config-files
+Priority: optional
+Section: sound
+Installed-Size: 396
+Maintainer: Christopher L Cheney <ccheney@debian.org>
+Source: kdemultimedia
+Version: 4:3.1.0-1
+Config-Version: 4:3.1.0-1
+Depends: kdelibs4 (>= 4:3.1.0), libc6 (>= 2.2.4-4), libcdparanoia0 (>= 3a9.8-6), libogg0 (>= 1.0rc3-1), libstdc++2.10-glibc2.2 (>= 1:2.95.4-0.010810), libvorbis0 (>= 1.0rc3-1), mpeglib (>= 4:3.1.0), xlibs (>> 4.1.0)
+Description: Yet Another Frontend - yaf is a simple protocol for communication over streams
+ These programs allow you to test mpeglib without using arts
+
+Package: openoffice.org-debian-files
+Status: install ok installed
+Priority: optional
+Section: contrib/editors
+Installed-Size: 244
+Maintainer: Debian OpenOffice Team <debian-openoffice@lists.debian.org>
+Architecture: all
+Version: 1.1.2-3+2
+Replaces: openoffice.org1.1-debian-files
+Provides: openoffice.org1.1-debian-files
+Depends: openoffice.org (>> 1.1.1+1.1.2rc3), debianutils (>= 1.16), openoffice.org-bin (>> 1.1.1+1.1.2rc3)
+Conflicts: openoffice.org1.1-debian-files, openoffice.org (<= 1.0.1-5)
+Conffiles:
+ /etc/openoffice/autoresponse.conf b3b81a69b85de8e5a660b5b6b2f6d56f
+ /etc/openoffice/openoffice.conf 408396888f97d708bf77273146b4ad48
+Description: Debian specific parts of OpenOffice.org
+ This is part of the packaging of OpenOffice.org for Debian.
+ .
+ This package contains extra files supplied by Debian that are not part of the
+ upstream source:
+ .
+ - man pages
+ - README.Debian and TODO
+ - Debian menu files
+ - MIME types for mail handling
+ - startup and configuration script (/usr/bin/openoffice)
+
+Package: libncursesw5
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 532
+Maintainer: Daniel Jacobowitz <ncurses-maint@debian.org>
+Architecture: i386
+Source: ncurses
+Version: 5.4-4
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Shared libraries for terminal handling (wide character support)
+ This package contains the shared libraries necessary to run programs
+ compiled with ncursesw, which includes support for wide characters.
+
+Package: apache2-common
+Status: deinstall ok config-files
+Priority: optional
+Section: net
+Installed-Size: 3160
+Maintainer: Debian Apache Maintainers <debian-apache@lists.debian.org>
+Architecture: i386
+Source: apache2
+Version: 2.0.49-1
+Config-Version: 2.0.48-8
+Depends: libapr0 (>= 2.0.49), libc6 (>= 2.3.2.ds1-4), libdb4.2, libexpat1 (>= 1.95.6), libldap2 (>= 2.1.17-1), libssl0.9.7, zlib1g (>= 1:1.2.1), debconf, debianutils (>= 1.6), mime-support, openssl, net-tools, ssl-cert (>= 1.0-7), libmagic1
+Suggests: apache2-doc
+Conffiles:
+ /etc/apache2/sites-available/default 10afe1471c21535b677583b02f7e0c10
+ /etc/apache2/mods-available/actions.load 95dcfd2efdd41666de5f31dd72e01e41
+ /etc/apache2/mods-available/asis.load f9b9a0503caeb92985bd840a28f5e5b9
+ /etc/apache2/mods-available/auth_anon.load 16aa77bafe21414bb70124c66dce0adb
+ /etc/apache2/mods-available/auth_dbm.load c96741ce23e9201534c1f5b1f3f2b694
+ /etc/apache2/mods-available/auth_digest.load 9cffb7b8299cfb160350514f84cd738c
+ /etc/apache2/mods-available/auth_ldap.load a46825b66d74c67765bc96357a6da8c0
+ /etc/apache2/mods-available/cache.load ea99aba14e9aa25c27653b9958239a6e
+ /etc/apache2/mods-available/cern_meta.load 2c2d9adcb273f934304e7dfb5775f7b9
+ /etc/apache2/mods-available/cgi.load 32a1c48f0e29feb415c9460378728d82
+ /etc/apache2/mods-available/cgid.load c3ee2eac02c248b5a39fb1a7afee4cb9
+ /etc/apache2/mods-available/dav.load ed469867552a1145b8c3ffa5780ff83e
+ /etc/apache2/mods-available/dav_fs.load 3fa14d6e9f9d8eb25d09ed4823508f6d
+ /etc/apache2/mods-available/deflate.load ac4540dd672556b07f900425751f745c
+ /etc/apache2/mods-available/disk_cache.load 8d05e39b68406c232f5b3533425a6825
+ /etc/apache2/mods-available/expires.load dac64edc06fe538c2edd7b3f1f3b03f1
+ /etc/apache2/mods-available/ext-filter.load d3c4acfca1322274a9a8504e8cef27e9
+ /etc/apache2/mods-available/ext_filter.load d3c4acfca1322274a9a8504e8cef27e9
+ /etc/apache2/mods-available/file_cache.load d3115a6b766528d198af55bf712c5b50
+ /etc/apache2/mods-available/headers.load ba7d09162b65d09397bd58be33138e4d
+ /etc/apache2/mods-available/imap.load 017607e8f1693a200daf5b660cfa5910
+ /etc/apache2/mods-available/include.load 427760ab8396c2a3af8dfa25ed62c92c
+ /etc/apache2/mods-available/info.load c1faffe40b8bed9f2b817b9dc0503bb6
+ /etc/apache2/mods-available/ldap.load 735ac5f246738e11a53f6c515b8dfc48
+ /etc/apache2/mods-available/mem_cache.load f3b5c8ec81d062a9ae02b79dc2d720b7
+ /etc/apache2/mods-available/mime_magic.load ab5c69aa0c91f11157e9bfc4972f8cce
+ /etc/apache2/mods-available/proxy.load a66891ede08d0a7c32a541ce57697706
+ /etc/apache2/mods-available/proxy_connect.load 04de97207e06e5f5f737bd8e07de55ec
+ /etc/apache2/mods-available/proxy_ftp.load fd9b8f1a450f23f83e963dbd5a494d16
+ /etc/apache2/mods-available/proxy_http.load 2373b5392476521a14e84a444647f640
+ /etc/apache2/mods-available/rewrite.load 55e18fb7df64c8f390904b972637c17d
+ /etc/apache2/mods-available/speling.load 095570b0cb18ebdfc357a2241c6932ea
+ /etc/apache2/mods-available/ssl.load 75536619bec23ffc5c907734cce151a0
+ /etc/apache2/mods-available/suexec.load 335169c85f4afc14524846789d46af06
+ /etc/apache2/mods-available/unique_id.load 6c13959015fb35276572070b44e63380
+ /etc/apache2/mods-available/usertrack.load 8400042dd4374fad5eedf33ffb3c68f0
+ /etc/apache2/mods-available/vhost_alias.load fdd42d34966c329cdee2435dfe72ee24
+ /etc/apache2/mods-available/cgid.conf 1ae6a31cd7a8a95f33c1dabe86a0ec26
+ /etc/apache2/mods-available/dav_fs.conf d9452c28c52a584812e48fa9bf3f2e9d
+ /etc/apache2/mods-available/mime_magic.conf b6f1c9bc5cb4bc0b71a067502fea0ff7
+ /etc/apache2/mods-available/proxy.conf d7c68117f035212baf809c6f42ebbcc2
+ /etc/apache2/mods-available/ssl.conf b96e73c301774fea22d02cc559f03947
+ /etc/apache2/mods-available/userdir.conf 4783b4c44a059cd29bf6b1803b2b3e98
+ /etc/apache2/apache2.conf c2b76f459d95cbfe33d584ad4b474641
+ /etc/apache2/magic efa83b2a56fd085be42650a5c932d6a2
+ /etc/apache2/README 25a0b1567e4ad2d543a9fdc6c4f6d347
+ /etc/logrotate.d/apache2 b6804bacb0b6970a7c211d853cb38fa1
+ /etc/init.d/apache2 6c21e3c816c28e846e39c73cdbfec2d8
+Description: Next generation, scalable, extendable web server
+ Apache v2 is the next generation of the omnipresent Apache web server. This
+ version - a total rewrite - introduces many new improvements, such as
+ threading, a new API, IPv6 support, request/response filtering, and more.
+ .
+ It is also considerably faster, and can be easily extended to provide services
+ other than http.
+ .
+ This package contains all the standard apache2 modules, including SSL support.
+ However, it does *not* include the server itself; for this you need to
+ install one of the apache2-mpm-* packages; such as worker or prefork.
+
+Package: libxml2-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 5012
+Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs@lists.alioth.debian.org>
+Architecture: i386
+Source: libxml2
+Version: 2.6.11-3
+Replaces: libxml2 (<= 2.6.6-1), libxml2-headers (= 2.6.7-1)
+Depends: libxml2 (= 2.6.11-3), zlib1g-dev | libz-dev
+Conflicts: libxml2 (<= 2.6.6-1), libxml2-headers (= 2.6.7-1)
+Description: Development files for the GNOME XML library
+ XML is a metalanguage to let you design your own markup language.
+ A regular markup language defines a way to describe information in
+ a certain class of documents (eg HTML). XML lets you define your
+ own customized markup languages for many classes of document. It
+ can do this because it's written in SGML, the international standard
+ metalanguage for markup languages.
+ .
+ Install this package if you wish to develop your own programs using
+ the GNOME XML library.
+
+Package: libc-client2002edebian
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1112
+Maintainer: Jonas Smedegaard <dr@jones.dk>
+Architecture: i386
+Source: uw-imap
+Version: 7:2002edebian1-3
+Depends: libc6 (>= 2.3.2.ds1-4), libcomerr2 (>= 1.33-3), libkrb53 (>= 1.3.2), libpam0g (>= 0.76), libssl0.9.7, libpam-modules, mlock
+Recommends: debconf (>= 1.2.0)
+Suggests: uw-mailutils
+Description: UW c-client library for mail protocols
+ C-client is a library of functions for accessing mail folders and messages.
+ It was written as part of the University of Washington IMAP server, but has
+ since found other use as well.
+ .
+ This package contains the shared c-client mail handling library with SSL
+ support.
+
+Package: libswig1.3
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+
+Package: libreiserfs0.3-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 164
+Maintainer: Jose Luis Tallon <jltallon@adv-solutions.net>
+Architecture: i386
+Source: progsreiserfs
+Version: 0.3.0.4-4
+Replaces: libreiserfs0.3-udeb
+Provides: libreiserfs
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: progsreiserfs, libreiserfs0.3-dev, parted
+Description: ReiserFS filesystem access and manipulation library, shared libraries
+ libreiserfs is a library for ReiserFS filesystem access and
+ manipulation. The primary goal is to develop a fully
+ functional library which may be linked from other projects
+ which need ReiserFS filesystem access. GNU Parted can
+ currently use libreiserfs, other programs which may include
+ GNU GRUB, Yaboot, partimage and EVMS. . This package
+ contains the shared libraries for libreiserfs. They are
+ needed for the ReiserFS utility programs in the
+ progsreiserfs package, as well as to use any other
+ libreiserfs - using program (eg. the ReiserFS functionality
+ of GNU Parted).
+
+Package: libclan2-png
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 72
+Origin: debian
+Maintainer: Filip Van Raemdonck <mechanix@debian.org>
+Bugs: debbugs://bugs.debian.org/
+Architecture: i386
+Source: clanlib
+Version: 0.6.5-1-2.2
+Config-Version: 0.6.5-1-2.2
+Depends: libc6 (>= 2.3.2.ds1-4), libclanlib2 (>= 0.6.5-1), libgcc1 (>= 1:3.3.3-1), libpng12-0 (>= 1.2.5.0-4), libstdc++5 (>= 1:3.3.3-1)
+Conflicts: clanlib-png, clanlib2-png
+Description: PNG module for ClanLib game SDK
+ ClanLib delivers a platform independent interface to write games with.
+ If a game is written with ClanLib, it should be possible to compile the
+ game under any platform (supported by ClanLib, that is) without changing
+ the application source code.
+ .
+ But ClanLib is not just a wrapper library, providing a common interface
+ to low-level libraries such as DirectFB, DirectX, OpenGL, X11, etc. While
+ platform independence is ClanLib's primary goal, it also tries to be a
+ service-minded game SDK. In other words, we have put great effort into
+ designing the API, to ensure ClanLib's ease of use - while maintaining its
+ power.
+ .
+ This package contains the PNG module (clanPNG).
+
+Package: selinux
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 789
+Maintainer: Russell Coker <russell@coker.com.au>
+Source: selinux-small
+Version: 2002031409-4
+Provides: flask
+Depends: libc6 (>= 2.2.4-4), libpam0g (>= 0.72-1)
+Conflicts: flask, devfsd (<< 1.3.25-1)
+Conffiles:
+ /etc/devfs/conf.d/selinux cb8db79978bd5299f3a2fde6bd810f7c
+ /etc/pam.d/run_init 6f00cab330c6bc5ca6bbee5e7a5d7bc5
+ /etc/pam.d/newrole 6f00cab330c6bc5ca6bbee5e7a5d7bc5
+ /etc/security/default_context 24f5baa922c40da7b28334500ea736e5
+ /etc/security/default_type 4a4d8c676d05c059d46b7be1736e0803
+ /etc/security/cron_context e9ae10dadf94bd9dc78ce0057970791b
+ /etc/security/initrc_context 5a81f6953618a27c85d55ef287dc85e7
+Description: Policy config files and management for NSE Security Enhanced Linux
+ /etc/selinux contains the policy files, checkpolicy will check the policy.
+
+Package: liblocale-gettext-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 104
+Maintainer: Raphael Hertzog <hertzog@debian.org>
+Version: 1.01-17
+Depends: libc6 (>= 2.3.1-1), perlapi-5.8.0, perl-base (>= 5.8.0-17)
+Pre-Depends: perl-base (>= 5.8)
+Description: Using libc functions for internationalization in Perl
+ The gettext module permits access from perl to the gettext() family of
+ functions for retrieving message strings from databases constructed
+ to internationalize software.
+ .
+ It provides gettext(), dgettext(), dcgettext(), textdomain(),
+ bindtextdomain(), bind_textdomain_codeset(), ngettext(), dcngettext()
+ and dngettext().
+
+Package: qca-tls
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 128
+Maintainer: Jan Niehusmann <jan@debian.org>
+Architecture: i386
+Version: 1.0-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.2-1), libqt3c102-mt (>= 3:3.2.3), libssl0.9.7, libstdc++5 (>= 1:3.3.2-1)
+Description: TLS plugin for the Qt Cryptographic Architecture (QCA)
+ This is a plugin to provide SSL/TLS capability to programs that
+ utilize the Qt Cryptographic Architecture (QCA).
+ .
+ QCA is a library providing an easy API for several cryptographic algorithmns
+ to Qt programs.
+ .
+ At the moment only the qca-tls plugin is packaged for debian, as it's
+ used by the package 'psi'. The generic library and several other plugins
+ will be packaged when upstream releases them.
+
+Package: dbs
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 160
+Maintainer: Warren Turkal <wt@midsouth.rr.com>
+Architecture: all
+Version: 0.34
+Depends: make, bzip2, perl
+Conffiles:
+ /etc/bash_completion.d/dbs-edit-patch 29340773609461f1985b03daa43232f3
+Description: Allows Debian source packages with multiple patches
+ DBS stands for Debian Build System and is an alternative approach for
+ source packages which want to ship a pristine source and then apply
+ patches to it. This allows the distribution of multiple patches inside
+ one package that are applied during the build process.
+ .
+ Please see http://snoopy.apana.org.au/~bam/debian/faq/#dbs for further
+ information on DBS.
+
+Package: libk3bplugin1
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 488
+Maintainer: Jean-Michel Kelbert <kelbert@debian.org>
+Source: k3b
+Version: 0.10.3-5
+Config-Version: 0.10.3-5
+Provides: libk3bplugin
+Depends: kdelibs4 (>= 4:3.1.5), libart-2.0-2 (>= 2.3.8), libaudio2, libc6 (>= 2.3.2.ds1-4), libfam0c102, libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.3.2-1), libid3-3.8.3, libk3bcore2 (>= 0.10.3), libk3bproject1 (>= 0.10.3), libk3btools1 (>= 0.10.3), libmad0 (>= 0.15.0b), libogg0 (>= 1.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libstdc++5 (>= 1:3.3.2-1), libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libxcursor1, libxft2 (>> 2.1.1), libxrender1, xlibmesa3-gl | libgl1, xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Description: The KDE cd burning application library - plugin runtime files
+ The library libk3bplugin, handles the plugins of k3b.
+ K3b is a GUI frontend to the cd recording programs cdrdao and cdrecord.
+ It's aim is to provide a very user friendly interface to all the tasks
+ that come with cd recording and a lot more.
+
+Package: irda-common
+Status: deinstall ok config-files
+Priority: optional
+Section: misc
+Installed-Size: 148
+Maintainer: NOKUBI Takatsugu <knok@daionet.gr.jp>
+Source: irda-utils
+Version: 0.9.15-5
+Config-Version: 0.9.15-5
+Replaces: irda-utils
+Depends: libc6 (>= 2.3.1-1)
+Conflicts: irda-utils
+Conffiles:
+ /etc/modutils/irda 8f455e1bb61c4c14741beea63eb38df8
+ /etc/init.d/irda b559dce7011df234fa9888d3e62aeeef
+ /etc/devfs/conf.d/irda d4b4bcb1395c0cb30361a323d0d0e9af
+Description: IrDA management utilities
+ Essential files for handling IrDA device.
+ This package contains irattach and findchip.
+
+Package: libgle3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 172
+Maintainer: Jamie Wilkinson <jaq@debian.org>
+Architecture: i386
+Source: gle
+Version: 3.1.0-5
+Depends: libc6 (>= 2.3.2.ds1-4), xlibmesa3-gl | libgl1, xlibmesa3-glu | libglu1, xlibmesa3-gl | libgl1
+Conflicts: glutg3 (<< 3.7-13)
+Description: OpenGL tubing and extrusion library
+ The GLE Tubing and Extrusion library is an extension to OpenGL for drawing
+ tubing and extrusions, including surfaces of revolution, sweeps, tubes,
+ polycones, polycylinders, and helicoids. Generally the extruded surface
+ is specifed with a 2D polyline that is extruded along a 3D path. A local
+ coordinate system allows for additional flexibility in the primitives
+ drawn. Extrusions may be texture mapped in a variety of ways.
+
+Package: build-essential
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 48
+Maintainer: Scott James Remnant <scott@netsplit.com>
+Architecture: i386
+Version: 10.1
+Depends: libc6-dev | libc-dev, gcc (>= 3:3.3), g++ (>= 3:3.3), make, dpkg-dev (>= 1.4.1.19)
+Description: informational list of build-essential packages
+ If you do not plan to build Debian packages, you don't need this
+ package. Moreover this package is not required for building Debian
+ packages.
+ .
+ This package contains an informational list of packages which are
+ considered essential for building Debian packages. This package also
+ depends on the packages on that list, to make it easy to have the
+ build-essential packages installed.
+ .
+ If you have this package installed, you only need to install whatever
+ a package specifies as its build-time dependencies to build the
+ package. Conversely, if you are determining what your package needs
+ to build-depend on, you can always leave out the packages this
+ package depends on.
+ .
+ This package is NOT the definition of what packages are
+ build-essential; the real definition is in the Debian Policy Manual.
+ This package contains merely an informational list, which is all
+ most people need. However, if this package and the manual disagree,
+ the manual is correct.
+
+Package: gs
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 44
+Maintainer: Masayuki Hatta (mhatta) <mhatta@debian.org>
+Architecture: all
+Source: gs-gpl
+Version: 8.01-5
+Depends: gs-gpl
+Description: Transitional package
+ This dummy package is provided for a smooth transition from the
+ previous gs package (the package name has been changed to gs-gpl).
+ It may safely be removed after installation.
+
+Package: gv
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 672
+Maintainer: Martin A. Godisch <godisch@debian.org>
+Architecture: i386
+Version: 1:3.5.8-36
+Replaces: gv-2d, gv-3d, fvwm-common (<< 2.0.46-BETA-2)
+Provides: postscript-viewer, pdf-viewer
+Depends: gs, libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0), xaw3dg (>= 1.5+E-1)
+Conflicts: gv-2d, gv-3d
+Conffiles:
+ /etc/X11/app-defaults/GV 80c14684314417e65a049c48d7728782
+Description: PostScript and PDF viewer for X
+ gv is a comfortable viewer of PostScript and PDF files for the X
+ Window System. It uses the ghostscript PostScript(tm) interpreter
+ and is based on the classic X front-end for gs, ghostview. It is
+ more comfortable and more powerful than ghostview. gv's upstream
+ homepage can be found at http://wwwthep.physik.uni-mainz.de/~plass/gv/.
+
+Package: kgoldrunner
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 1332
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: A KDE clone of the Loderunner arcade game
+ KGoldrunner, a game of action and puzzle solving. Run through the
+ maze, dodge your enemies, collect all the gold and climb up to the
+ next level.
+ .
+ You must guide the hero with the mouse or keyboard and collect all
+ the gold nuggets, then you can climb up into the next level. Your
+ enemies are also after the gold and they will kill you if they catch
+ you!
+ .
+ The problem is you have no weapon to kill them. All you can do is
+ run away, dig holes in the floor to trap them or lure them into some
+ area where they cannot hurt you. After a short time a trapped enemy
+ climbs out of his hole, but if it closes before that, he will die and
+ reappear somewhere else.
+
+Package: kdepim-kio-plugins
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 360
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1)
+Description: KDE pim I/O Slaves
+ This package includes the pim kioslaves. This includes newimap4 and sieve.
+ .
+ This package is part of the official KDE pim module.
+
+Package: kdeartwork
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 40
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: all
+Version: 4:3.2.3-2
+Depends: kdeartwork-misc (>= 4:3.2.3-2), kdeartwork-style (>= 4:3.2.3-2), kdeartwork-theme-icon (>= 4:3.2.3-2), kdeartwork-theme-window (>= 4:3.2.3-2), kdewallpapers (>= 4:3.2.3-2), kscreensaver (>= 4:3.2.3-2)
+Description: themes, styles and more from the official KDE release
+ This is a collection of artistic goodies (themes, widget styles, screen
+ savers and so on) provided with the official release of KDE (the K Desktop
+ Environment).
+
+Package: edict
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 5904
+Maintainer: Ludovic Drolez <ldrolez@debian.org>
+Architecture: all
+Version: 2004.08.04-1
+Suggests: lookup | xjdic | sdic-edict
+Description: English / Japanese dictionary
+ The EDICT file is the outcome of a voluntary project to produce a freely
+ available Japanese / English dictionary in machine-readable form.
+ This package also contains the compdic, computing and communications
+ dictionary file.
+
+Package: kdegames-card-data
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 3952
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: all
+Source: kdegames
+Version: 4:3.3.0-1
+Replaces: kdecarddecks
+Provides: kdecarddecks
+Recommends: kpat | kpoker | lskat
+Conflicts: kdecarddecks
+Description: Card decks for KDE games
+ Several different collections of card images for use by KDE games.
+
+Package: reportbug
+Status: install ok installed
+Priority: standard
+Section: utils
+Installed-Size: 344
+Maintainer: Chris Lawrence <lawrencc@debian.org>
+Architecture: all
+Version: 2.64
+Depends: python2.3
+Recommends: python2.3-cjkcodecs | python2.3-iconvcodec
+Suggests: postfix | exim4 | mail-transport-agent, gnupg | pgp, debconf-utils (>> 1.1.0), debsums, file (>> 1.30)
+Conffiles:
+ /etc/reportbug.conf 3d5c88b49974ae1d8a4c89f5d5189e3d
+Description: Reports bugs in the Debian distribution
+ reportbug is a tool designed to make the reporting of bugs in Debian
+ and derived distributions relatively painless. Its features include:
+ .
+ * Integration with the mutt, af, and mh/nmh mail readers.
+ * Access to outstanding bug reports to make it easier to identify
+ whether problems have already been reported.
+ * Automatic checking for newer versions of packages.
+ * Optional automatic verification of integrity of packages via debsums.
+ * Support for following-up on outstanding reports.
+ * Optional PGP/GnuPG integration.
+ .
+ reportbug is designed to be used on systems with an installed mail
+ transport agent, like exim or sendmail; however, you can edit the
+ configuration file and send reports using any available mail server.
+ .
+ If your system's users use locales with character sets other than
+ UTF-8 and ISO-8859-*, one of either python2.3-cjkcodecs or
+ python2.3-iconvcodec is required for proper operation. For Asian
+ locales, the use of python2.3-cjkcodecs is preferred over the more
+ limited python2.3-iconvcodec.
+
+Package: gksu
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 256
+Maintainer: Gustavo Noronha Silva <kov@debian.org>
+Architecture: i386
+Version: 1.2.1-1
+Replaces: gnome-sudo, libgksu0
+Provides: gnome-sudo
+Depends: libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libgksu1.2-0, libgksuui1.0-0, libglib2.0-0 (>= 2.4.1), libgtk2.0-0 (>= 2.4.4), libpango1.0-0 (>= 1.4.0), libx11-6 | xlibs (>> 4.1.0)
+Conflicts: gnome-sudo (<= 0.3-1.1)
+Description: graphical frontend to su
+ gksu is a Gtk+ frontend to /bin/su. It supports login shells
+ and preserving environment when acting as a su frontend. It
+ is useful to menu items or other graphical programs that need
+ to ask a user's password to run another program as another user.
+
+Package: anacron
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 196
+Maintainer: Pascal Hakim <pasc@debian.org>
+Architecture: i386
+Version: 2.3-10
+Replaces: pe
+Depends: libc6 (>= 2.3.2.ds1-4), debianutils (>= 1.7), sysklogd | system-log-daemon, exim4 | mail-transport-agent, debconf
+Recommends: cron (>= 3.0pl1-43)
+Suggests: powermgmt-base
+Conffiles:
+ /etc/anacrontab c5462d1a6879baefa21f3dc068cbcc34
+ /etc/cron.d/anacron 621be9beef2b1af778fa4c0dd61332a7
+ /etc/init.d/anacron 3ff1b8241b882a3e7ed315a6ed5eb4b0
+ /etc/cron.daily/0anacron a46c5cc26a2a6715d0155781ddd07a19
+ /etc/cron.weekly/0anacron b2c55b2905f28b3b53bdf3e2d66e830b
+ /etc/cron.monthly/0anacron 402ac7af3ebd2da5dddcd3712d776ae3
+ /etc/apm/event.d/anacron 651f3c7f79a14332f9fa7bb368039210
+Description: a cron-like program that doesn't go by time
+ Anacron (like `anac(h)ronistic') is a periodic command scheduler. It
+ executes commands at intervals specified in days. Unlike cron, it
+ does not assume that the system is running continuously. It can
+ therefore be used to control the execution of daily, weekly and
+ monthly jobs (or anything with a period of n days), on systems that
+ don't run 24 hours a day. When installed and configured properly,
+ Anacron will make sure that the commands are run at the specified
+ intervals as closely as machine-uptime permits.
+ .
+ This package is pre-configured to execute the daily jobs of the Debian
+ system. You should install this program if your system isn't powered on
+ 24 hours a day to make sure the maintenance jobs of other Debian packages
+ are executed each day.
+
+Package: psutils
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 331
+Maintainer: Rob Browning <rlb@defaultvalue.org>
+Version: 1.17-17
+Provides: postscript-preview
+Depends: libc6 (>= 2.3.1-1), libpaper1
+Suggests: gs, gv
+Description: A collection of PostScript document handling utilities
+ This collection of utilities is for manipulating PostScript
+ documents. Page selection and rearrangement are supported, including
+ arrangement into signatures for booklet printing, and page merging
+ for n-up printing.
+ .
+ Programs included: showchar psnup fixscribeps epsffit fixfmps fixtpps
+ fixwpps fixwwps fixpsditps extractres getafm fixmacps fixpspps
+ fixwfwps psbook pstops fixdlsrps includeres psresize psmerge psselect
+
+Package: kdelibs-data
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 23608
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: all
+Source: kdelibs
+Version: 4:3.3.0-1.1
+Replaces: kbabel (<< 4:3.2.0), kchart (<< 1:1.3.0), kcontrol (<< 4:3.3.0), kdeartwork-style (<< 4:3.0.0), kdelibs3 (<< 4:3.0.0), kdelibs3-cups (<< 4:3.0.0), kdetrayproxy (>= 0.2-1), kformula (<< 1:1.3.0), kivio (<< 1:1.3.0), koffice-data (<< 1:1.3.0-2), koffice-libs (<< 1:1.3.0), kontour (<< 1:1.3.0), korganizer (<< 4:3.3.0), kpresenter (<< 1:1.3.0), krusader (<< 1.30-2), kspread (<< 1:1.3.0), kugar (<< 1:1.3.0), kword (<< 1:1.3.0), openoffice.org-mimelnk (<< 1.1.2-4)
+Depends: hicolor-icon-theme
+Conflicts: kdelibs3 (<< 4:3.0.0), kdelibs3-cups (<< 4:3.0.0), kdetrayproxy (>= 0.2-1), kontour (<< 1:1.3.0)
+Conffiles:
+ /etc/kde3/colors/40 Colors be72f4766cd39aa18b05542fa767940c
+ /etc/kde3/colors/Royal 6a4fcc73cb6b80cf897211d30c052245
+ /etc/kde3/colors/Web 5f17750f3842cacdbebbebe705ea713d
+ /etc/kde3/katesyntaxhighlightingrc 8f884c480b676ad96191a622542fa7c5
+ /etc/kde3/kdebug.areas 79712d19e4125f7cf4808a345604b8d9
+ /etc/kde3/kdebugrc 8bf803a67616b971fdf249e42228c6f0
+ /etc/kde3/kdeprintrc c3342fa9a6007398504e83984270e0ff
+ /etc/kde3/ksslcalist 83525fbd54ed0c6e169dca6d2f83fd99
+ /etc/kde3/ktexteditor_autobookmarkerrc e4fa8bdfde586e8415be283b08c10902
+ /etc/kde3/kthemestylerc 6f051465bec809bae15e0836b8a26bc0
+ /etc/kde3/language.codes bf3acb79d97c6e29a59f641fcf4ded93
+ /etc/kde3/ui/kprintpreviewui.rc 197fe793ea16349a32eddcf5d7d7da8d
+ /etc/kde3/ui/ui_standards.rc ca2bac992556bfaffa5085260c78ba26
+ /etc/xdg/menus/applications.menu ded4d841098ec41e4d35631c21ee2bd6
+Description: KDE core shared data
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This package contains all the data files used by KDE programs.
+ .
+ You need these data files to run kde applications.
+
+Package: info
+Status: install ok installed
+Priority: important
+Section: doc
+Installed-Size: 344
+Maintainer: Josip Rodin <joy-packages@debian.org>
+Architecture: i386
+Source: texinfo
+Version: 4.7-2.1
+Provides: info-browser
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1)
+Conflicts: xemacs-support
+Description: Standalone GNU Info documentation browser
+ The Info file format is an easily-parsable representation for online
+ documents. This program allows you to view Info documents, like the
+ ones stored in /usr/share/info.
+ .
+ Much of the software in Debian comes with its online documentation in
+ the form of Info files, so it is most likely you will want to install it.
+
+Package: libgwrapguile1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 372
+Maintainer: Debian QA Group <packages@qa.debian.org>
+Architecture: i386
+Source: gwrapguile
+Version: 1.3.4-12
+Replaces: libgwrapguile-dev (<< 1.3.4-6)
+Depends: guile-1.6-libs, libc6 (>= 2.3.2.ds1-4), libglib1.2 (>= 1.2.0), libguile-ltdl-1, libqthreads-12, guile-1.6
+Conflicts: gnucash (<< 1.8.2-2)
+Description: g-wrap: Tool for exporting C libraries into Scheme interpreters
+ This is a tool for specifying types, functions, and constants to
+ import into a Scheme interpreter, and for generating code (in C) to
+ interface these to the Guile and RScheme interpreters in particular.
+
+Package: libdigest-md5-perl
+Status: purge ok not-installed
+Priority: optional
+Section: interpreters
+
+Package: libkdepim1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 904
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Replaces: kdepim-libs (<< 4:3.2.0)
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkcal2 (>= 4:3.3.0), libstdc++5 (>= 1:3.3.4-1)
+Conflicts: kdepim-libs (<< 4:3.2.0)
+Description: KDE PIM library
+ This is the runtime package for programs that use the libkdepim library.
+ .
+ This package is part of the official KDE pim module.
+
+Package: libopencdk8
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 224
+Maintainer: Matthias Urlichs <smurf@debian.org>
+Architecture: i386
+Source: opencdk8
+Version: 0.5.5-10
+Replaces: libopencdk4 (= 0.4.3-1)
+Depends: libc6 (>= 2.3.2.ds1-4), libgcrypt11, libgpg-error0 (>= 1.0), zlib1g (>= 1:1.2.1)
+Conflicts: libopencdk4 (= 0.4.3-1)
+Description: Open Crypto Development Kit (OpenCDK) (runtime)
+ This library provides functions to handle basic parts of the OpenPGP
+ message format.
+ .
+ The aim of the library is *not* to replace any available PGP version.
+ There will be no real support for key management (sign, revoke, alter
+ preferences, ...) and some other parts are only rudimentarily
+ available. The main purpose is to handle and understand OpenPGP
+ packets and to execute basic operations on them. For example to
+ encrypt/decrypt or to sign/verify keys and some packet routines.
+ .
+ Because of the fact that sensitive data is being handled, the
+ library doesn't contain any real cryptographic code. The libgcrypt
+ package is used for all crypto routines.
+ .
+ This package contains the runtime library for OpenCDK.
+
+Package: libopencdk4
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 144
+Maintainer: Ivo Timmermans <ivo@debian.org>
+Source: opencdk
+Version: 1:0.4.2-3
+Config-Version: 1:0.4.2-3
+Depends: libc6 (>= 2.3.1-1), libgcrypt1 (>> 1.1.11-0), libpopt0 (>= 1.6.4), zlib1g (>= 1:1.1.4)
+Description: Open Crypto Development Kit (OpenCDK) (runtime)
+ This library provides functions to handle basic parts of the OpenPGP
+ message format.
+ .
+ The aim of the library is *not* to replace any available PGP version.
+ There will be no real support for key management (sign, revoke, alter
+ preferences, ...) and some other parts are only rudimentarily
+ available. The main purpose is to handle and understand OpenPGP
+ packets and to execute basic operations on them. For example to
+ encrypt/decrypt or to sign/verify keys and some packet routines.
+ .
+ Because of the fact that sensitive data is being handled, the
+ library doesn't contain any real cryptographic code. The libgcrypt
+ package is used for all crypto routines.
+ .
+ This package contains the runtime library for OpenCDK.
+
+Package: moon-buggy
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 320
+Maintainer: Christian T. Steigies <cts@debian.org>
+Architecture: i386
+Version: 0.5.53-8
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), debconf
+Conflicts: moon-buggy-esd, moon-buggy-pause, suidmanager (<< 0.50)
+Description: Drive some car across the moon
+ Moon-buggy is a simple character graphics game, where you drive some
+ kind of car across the moon's surface. Unfortunately there are
+ dangerous craters there. Fortunately your car can jump over them!
+
+Package: minicom
+Status: install ok installed
+Priority: optional
+Section: comm
+Installed-Size: 900
+Maintainer: Martin A. Godisch <godisch@debian.org>
+Version: 2.1-7
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.3.20030510-1)
+Recommends: lrzsz
+Conffiles:
+ /etc/minicom/minicom.users efa42669d060f2df1995615f5a1d9c1f
+Description: friendly menu driven serial communication program
+ Minicom is a clone of the MS-DOS "Telix" communication program. It emulates
+ ANSI and VT102 terminals, has a dialing directory and auto zmodem download.
+ backports for the stable Debian release are provided at Minicom's upstream
+ homepage, which can be found at http://alioth.debian.org/projects/minicom/.
+
+Package: xlibmesa3
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 11564
+Maintainer: Branden Robinson <branden@debian.org>
+Source: xfree86
+Version: 4.2.1-4
+Config-Version: 4.2.1-4
+Replaces: mesag3, xserver-xfree86 (<< 4.0.2)
+Provides: libgl1
+Depends: debconf (>> 0.5), libc6 (>= 2.2.4-4), libstdc++2.10-glibc2.2 (>= 1:2.95.4-0.010810), xlibs (>> 4.1.0)
+Conflicts: libgl1, mesag3
+Description: XFree86 version of Mesa 3D graphics library
+ Mesa is a 3D graphics library which presents an API intended to be compatible
+ with OpenGL. XFree86 maintains its own version of the Mesa library (which is
+ regularly resynchronized with the official one) to permit development of the
+ XFree86 X server's Direct Rendering Infrastructure (DRI), which makes the 3D
+ acceleration features of many modern video cards available to X client
+ programmers.
+ .
+ Chipset-specific DRI modules, if available for your machine architecture,
+ are provided in this package. (Unlike the modules in the xserver-xfree86
+ package, the DRI modules are loaded by the Mesa library, not by the X server
+ itself.)
+
+Package: eject
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 160
+Maintainer: Frank Lichtenheld <djpig@debian.org>
+Architecture: i386
+Version: 2.0.13deb-7
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: cdtool, setcd
+Description: ejects CDs and operates CD-Changers under Linux
+ This little program will eject CD-ROMs (assuming your drive supports
+ the CDROMEJECT ioctl). It also allows setting the autoeject feature,
+ currently supported by a number of the Linux CD-ROM drivers. See the
+ documentation in /usr/src/linux/Documentation for more information on
+ the autoeject feature.
+ .
+ On supported ATAPI/IDE multi-disc CD-ROM changers, it allows changing
+ the active disc.
+
+Package: libsdl-ttf2.0-0
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 76
+Maintainer: Jerome Marant <jerome@debian.org>
+Source: sdl-ttf2.0
+Version: 2.0.6-5
+Config-Version: 2.0.6-5
+Depends: libc6 (>= 2.3.2.ds1-4), libfreetype6 (>= 2.1.5-1), libsdl1.2debian (>> 1.2.6-0), zlib1g (>= 1:1.2.1)
+Description: ttf library for Simple DirectMedia Layer with FreeType 2 support
+ SDL_ttf is a sample TrueType font library. It allows you to use
+ TrueType fonts in SDL applications.
+
+Package: arkhart
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 12608
+Maintainer: Marc Dequènes (Duck) <Duck@DuckCorp.org>
+Architecture: all
+Version: 0.1.4-6
+Config-Version: 0.1.4-6
+Depends: arkrpg (>= 0.1.4-7)
+Conffiles:
+ /etc/ark/arkglobal.cfg 3a6d3a95e8b23c92ca30652f3d6458bc
+Description: former world for Arkrpg
+ Arkrpg is a powerful and flexible framework to create
+ (networked/single player) role playing games, without having to write a
+ single line of C++. All the user has to do is to create game data (models,
+ textures, world), and define the behaviour NPCs, in Lua. The engine contains
+ a full outdoor 3D engine, with support for skeletal animation, and
+ triangle-accurate collision detection. It also contains tools to create world
+ and quests, and loaders for the most common low-polygon 3D formats.
+ .
+ This package provides the former world crafted for this kernel.
+
+Package: libssl-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 7016
+Maintainer: Christoph Martin <christoph.martin@uni-mainz.de>
+Architecture: i386
+Source: openssl
+Version: 0.9.7d-5
+Depends: libssl0.9.7 (= 0.9.7d-5)
+Conflicts: ssleay (<< 0.9.2b), libssl08-dev, libssl09-dev, libssl095a-dev, libssl096-dev
+Description: SSL development libraries, header files and documentation
+ libssl and libcrypt development libraries, header files and manpages
+ .
+ It is part of the OpenSSL implementation of SSL.
+
+Package: xlibmesa-gl-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 3392
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: libgl-dev, libutahglx-dev, xlibmesa-dev (<< 4.2.1-5)
+Provides: libgl-dev
+Depends: xlibmesa-gl (= 4.3.0.dfsg.1-7), x-dev, libxext-dev, libx11-dev, libc6-dev | libc-dev
+Conflicts: libgl-dev, libutahglx-dev, xlibmesa-dev (<< 4.2.1-5)
+Description: Mesa 3D graphics library development files [XFree86]
+ xlibmesa-gl-dev provides static versions of the libraries provided in
+ xlibmesa-gl, as well as header files and manual pages.
+ .
+ See the xlibmesa-gl package for further information.
+
+Package: geekcode
+Status: install ok installed
+Priority: extra
+Section: games
+Installed-Size: 188
+Maintainer: Eric Dorland <eric@debian.org>
+Architecture: i386
+Version: 1.7.3-1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Program for generating geekcode
+ This is a program for generating the geekcode.
+ See http://www.geekcode.com for more info and for discovering
+ if you need the geekcode.
+
+Package: kdemultimedia-kappfinder-data
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 104
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdemultimedia
+Version: 4:3.3.0-1
+Depends: kappfinder
+Conffiles:
+ /etc/xdg/menus/applications-merged/kde-multimedia-music.menu cb5680d42731c9820374a461085376b0
+Description: Multimedia data for kappfinder
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ Multimedia data for kappfinder.
+ .
+ This package is part of the official KDE multimedia module.
+
+Package: kwifimanager
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 628
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdenetwork
+Version: 4:3.3.0-2
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libarts1 (>= 1.3.0), libasound2 (>> 1.0.5), libaudio2, libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libfam0c102, libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.6), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libiw27 (>= 26+27pre10), libjack0.80.0-0 (>= 0.98.1), libmad0 (>= 0.15.1b), libogg0 (>= 1.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE Wireless Lan Manager
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ The KDE Wireless Lan Manager.
+ .
+ This package is part of the official KDE network module.
+
+Package: libjconv-bin
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 44
+Maintainer: Peter Novodvorsky <nidd@debian.org>
+Source: libjconv
+Version: 2.8-4.0
+Depends: libc6 (>= 2.3.1-1)
+Conflicts: wdg-htmlvalidator (<< 1.5.5-2)
+Description: charset conversion library - binaries
+ This library provide Japanese Code Conversion capability based on iconv. It
+ is based by application to enlarge number of supported encoding. It isn't
+ only for japanese people, it is used as helper in sylpheed mailer.
+ .
+ This package contains the jconv program which does conversions between
+ encodings using libjconv.
+
+Package: libbonoboui2-common
+Status: purge ok not-installed
+Priority: optional
+Section: devel
+Architecture: all
+
+Package: python2.3-gnome2
+Status: purge ok not-installed
+Priority: optional
+Section: python
+Architecture: i386
+
+Package: libdv-bin
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 112
+Maintainer: Daniel Kobras <kobras@debian.org>
+Architecture: i386
+Source: libdv
+Version: 0.103-1
+Replaces: libdv-dev (<< 0.98-1)
+Depends: aalib1 (>= 1.2), libasound2 (>> 1.0.5), libc6 (>= 2.3.2.ds1-4), libdv4, libglib1.2 (>= 1.2.0), libgtk1.2 (>= 1.2.10-4), libncurses5 (>= 5.4-1), libpopt0 (>= 1.7), libsdl1.2debian (>> 1.2.7-0), libsvga1, libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxi6 | xlibs (>> 4.1.0), libxv1, slang1 (>> 1.4.9dbs-2)
+Description: software library for DV format digital video (sample apps)
+ The Quasar DV Codec (libdv) is a software decoder for DV format video, as
+ defined by the IEC 61834 and SMPTE 314M standards. DV is the encoding format
+ used by consumer-grade digital camcorders.
+ .
+ This package contains sample programs for viewing, encoding, and transferring
+ DV data.
+
+Package: alsa-utils
+Status: install ok installed
+Priority: extra
+Section: sound
+Installed-Size: 396
+Maintainer: Debian ALSA Maintainers <pkg-alsa-devel@lists.alioth.debian.org>
+Architecture: i386
+Version: 1.0.5-3
+Replaces: alsautils, alsaconf
+Provides: audio-mixer, alsautils, alsaconf
+Depends: libasound2 (>> 1.0.5), libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), dialog | whiptail, modutils (>= 2.3.5-1) | module-init-tools, alsa-base (>= 1.0.4), pciutils (>= 1:2.1.11-4)
+Conflicts: alsautils (<< 0.5), alsa-utils-0.5, alsaconf, alsa-base-0.4, alsaconf-0.4
+Description: Advanced Linux Sound Architecture (utilities)
+ ALSA is an effort to create a modular sound system for Linux,
+ while maintaining full compatibility with OSS/Lite.
+ .
+ These are the utilities needed to configure and use the ALSA system.
+
+Package: libslicker0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 224
+Maintainer: Igor Genibel <igenibel@debian.org>
+Source: slicker
+Version: 0.0.0cvs20030726-3
+Depends: kdelibs4 (>= 4:3.1.3), libart-2.0-2 (>= 2.3.8), libc6 (>= 2.3.1-1), libgcc1 (>= 1:3.3.1-0rc1), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.1.1), libstdc++5 (>= 1:3.3.1-0rc1), libxrender1 (>= 0.8.1), zlib1g (>= 1:1.1.4)
+Description: Runtime libraries for Slicker
+ Slicker consists of three primary items Cards, the Slider, and a
+ Task-bar. Which can be used in conjunction with each other, and Kicker,
+ or utilized by themselves.
+ .
+ Cards provide a frame work for embedded applets to be docked at the edge
+ of the screen. These cards are "stackable" and provide a
+ "retractable/extendable" work area.
+ .
+ The Slider is a corner piece to slicker, it provides a constant, "solid"
+ launching pad, and is home of the miniapps.
+ .
+ The Task-bar is a typical taskbar with not so typical features... The
+ taskbar is an "organic" app that cleanly expands or contracts as needed.
+
+Package: gcc
+Status: install ok installed
+Priority: standard
+Section: devel
+Installed-Size: 28
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-defaults (1.17)
+Version: 4:3.3.4-2
+Provides: c-compiler
+Depends: cpp (>= 4:3.3.4-2), gcc-3.3 (>= 1:3.3.4-1), cpp-3.3 (>= 1:3.3.4-1)
+Recommends: libc-dev
+Suggests: make, manpages-dev, autoconf, automake, libtool, flex, bison, gdb, gcc-doc
+Conflicts: gcc-doc (<< 1:2.95.3)
+Description: The GNU C compiler
+ This is the GNU C compiler, a fairly portable optimizing compiler for C.
+ .
+ This is a dependency package providing the default GNU C compiler.
+
+Package: kplayer
+Status: purge ok not-installed
+Priority: optional
+Section: x11
+Architecture: i386
+
+Package: libzvt2.0-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 220
+Maintainer: Debian QA Group <packages@qa.debian.org>
+Source: libzvt
+Version: 2.0.1cvs20021009-4
+Depends: libart-2.0-2 (>= 2.3.8), libatk1.0-0 (>= 1.2.4), libc6 (>= 2.3.1-1), libglib2.0-0 (>= 2.2.1), libgtk2.0-0 (>= 2.2.1), libpango1.0-0 (>= 1.2.1)
+Conflicts: libzvt2-0
+Description: The GNOME 2 zvt (zterm) widget - runtime files
+ 'vt' terminal emulation for GNOME. This package provide a
+ small-as-possible, fast and efficient X term type program, which would also
+ provide equivalent functionality.
+
+Package: dpkg-ruby
+Status: purge ok not-installed
+Priority: optional
+Section: devel
+
+Package: kscreensaver
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 3136
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeartwork
+Version: 4:3.2.3-2
+Replaces: kdeartwork-screensaver (<= 3.1.0-1)
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxt6 | xlibs (>> 4.1.0), xlibmesa-gl | libgl1, xlibmesa-glu | libglu1, zlib1g (>= 1:1.2.1), kdebase-bin
+Recommends: kwin, xscreensaver-nognome | xscreensaver, xscreensaver-gl
+Conflicts: kdeartwork-screensaver (<= 3.1.0-1)
+Conffiles:
+ /etc/kde3/antrc 59b8314ea78837e84d05974504db411a
+ /etc/kde3/attractionrc c9f2e3fe2d9e03168b37d9fba1d4b6fa
+ /etc/kde3/bouboulerc a21f515b99b600ec2da3378bf8462135
+ /etc/kde3/bubblesrc 99d28e05a544ad79ec81dfcef66ff3b5
+ /etc/kde3/coralrc 50280b4ff1b2dd05b207947180d7d07d
+ /etc/kde3/crystalrc 02d6901b739312de0ea1f7e92c2ffab6
+ /etc/kde3/decayscreenrc 0bd71c1afd2f8d5c3f7a0d85aac8e399
+ /etc/kde3/deluxerc 7312fed1fb42ca055c31a86a18a814fe
+ /etc/kde3/demonrc a71439e47c49c6465591bda34d36d1bd
+ /etc/kde3/driftrc 6116cfc80d316aff7c63415a7f7ab97b
+ /etc/kde3/epicyclerc edc1501d0d233aae84947c0fc56d8cc4
+ /etc/kde3/fadeplotrc 582d2f76b618a718211569fbc09d7225
+ /etc/kde3/flamerc 2720e859ee8b69074be335f4ab025a44
+ /etc/kde3/flowrc 251a23b3a004fc3b92c24c220f888ad9
+ /etc/kde3/forestrc f25e73871d794e042065b0523a9d8dc6
+ /etc/kde3/gearsrc 0ef10601cedbd3a52e79368d4a615626
+ /etc/kde3/gooprc 88000ff8d62f304cb27384d5ebbfc405
+ /etc/kde3/gravrc a3ce8e2a860aa949d9e0cc3b4d2637b8
+ /etc/kde3/halorc df4052fa247d2f54cb45e21d0bd5fcdd
+ /etc/kde3/imsmaprc 3d0a4837924469881597e22a042e237e
+ /etc/kde3/interferencerc af835845b7364edb1663f212c58a5285
+ /etc/kde3/kumpparc e1d3c811eefba4f0d4557a581c2692f0
+ /etc/kde3/laserrc f79b68b6101411e1846ab5b131da9112
+ /etc/kde3/lissierc 4189d398e0dafd60909716bfcdec0de9
+ /etc/kde3/penroserc 79c113fe44a3e6e0f7454a19f9dc326c
+ /etc/kde3/rocksrc ad2a67d172dac2eeea5cb7142b01b5d0
+ /etc/kde3/sliprc 45a1a5b795dbada5458c152c53fa1b6c
+Description: screen savers released with KDE
+ This package contains the screen savers that come with the official KDE
+ release. They can be tested and selected within the Appearance and Themes
+ section of the KDE Control Centre.
+ .
+ This package is part of the KDE artwork module.
+
+Package: mixal
+Status: install ok installed
+Priority: extra
+Section: otherosfs
+Installed-Size: 88
+Maintainer: Vince Mulhollon <vlm@debian.org>
+Version: 1.08-9
+Depends: libc6 (>= 2.3.1-1)
+Description: A MIX emulator and MIXAL interpreter
+ Mixal is an implementation of the imaginary computer called
+ MIX and its assembly language MIXAL, which were invented
+ by Donald E. Knuth in the 1960's for use in his monumental
+ and yet unfinished book series "The Art of Computer Programming".
+ All actual programs and all programming exercises in the series
+ are written in MIXAL.
+ .
+ This package contains a modified version of Darius Bacon's Mixal
+ implementation. It takes a MIXAL source file, translates it to
+ MIX machine code and then executes the resulting program, all in
+ a single run. The result of the assembler step cannot be extracted
+ to a file. Similarly, one cannot take a precompiled MIX program and
+ try to execute it in this emulator - only MIXAL source is accepted.
+ .
+ The MIX emulator does not support floating-point operations
+ nor the tape devices described in Knuth's book. This is not fatal,
+ however, and most of the programs and exercise answers in Knuth's
+ book can be run in this MIXAL implementation.
+
+Package: slicker
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 520
+Maintainer: Igor Genibel <igenibel@debian.org>
+Version: 0.0.0cvs20030726-3
+Depends: kdelibs4 (>= 4:3.1.3), kicker (>= 4:3.1.3), libart-2.0-2 (>= 2.3.8), libc6 (>= 2.3.1-1), libfam0c102, libgcc1 (>= 1:3.3.1-0rc1), libkonq4 (>= 4:3.1.3), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.1.1), libslicker0, libstdc++5 (>= 1:3.3.1-0rc1), libxrender1 (>= 0.8.1), zlib1g (>= 1:1.1.4)
+Recommends: slicker-applets
+Description: binary for SlicKer, an alternative for the KDE Kicker
+ Slicker consists of three primary items Cards, the Slider, and a
+ Task-bar. Which can be used in conjunction with each other, and Kicker,
+ or utilized by themselves.
+ .
+ Cards provide a frame work for embedded applets to be docked at the edge
+ of the screen. These cards are "stackable" and provide a
+ "retractable/extendable" work area.
+ .
+ The Slider is a corner piece to slicker, it provides a constant, "solid"
+ launching pad, and is home of the miniapps.
+ .
+ The Task-bar is a typical taskbar with not so typical features... The
+ taskbar is an "organic" app that cleanly expands or contracts as needed.
+
+Package: libdiscover1
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 612
+Maintainer: Debian Install System Team <debian-boot@lists.debian.org>
+Architecture: i386
+Source: discover
+Version: 1.5-3
+Config-Version: 1.5-3
+Depends: libc6 (>= 2.3.2.ds1-4), discover-data
+Description: hardware identification library
+ libdiscover1 is a library enabling identification of various PCI, PCMCIA, and
+ USB devices.
+
+Package: libsdl-ttf2.0-dev
+Status: purge ok not-installed
+Priority: optional
+Section: devel
+
+Package: libxmuu-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 252
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs-dev (<< 4.3.0)
+Depends: libxmuu1 (= 4.3.0.dfsg.1-7), libx11-dev, libc6-dev | libc-dev
+Conflicts: xlibs-dev (<< 4.3.0)
+Description: lightweight X Window System miscellaneous utility library development files
+ A static version of the Xmuu library is provided by this package. Because
+ this library is a stripped-down version of the Xmu library, its header
+ files are in libxmu-dev.
+ .
+ See the libxmuu1 package for further information.
+
+Package: libdb4.2++
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 988
+Maintainer: Debian Berkeley DB Maintainers <pkg-db-devel@lists.alioth.debian.org>
+Architecture: i386
+Source: db4.2
+Version: 4.2.52-17
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1)
+Conflicts: libdb2++ (<< 2:2.7.7-3)
+Description: Berkeley v4.2 Database Libraries for C++ [runtime]
+ This is the runtime package for programs that use the Berkeley v4.2
+ database library. This is only for programs which use the C++ interface.
+
+Package: dialog
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 892
+Maintainer: Santiago Vila <sanvila@debian.org>
+Architecture: i386
+Version: 1.0-20040731-1
+Depends: libc6 (>= 2.3.2.ds1-4), libncursesw5 (>= 5.4-1), debianutils (>= 1.6)
+Description: Displays user-friendly dialog boxes from shell scripts
+ This application provides a method of displaying several different types
+ of dialog boxes from shell scripts. This allows a developer of a script
+ to interact with the user in a much friendlier manner.
+ .
+ The following types of boxes are at your disposal:
+ yes/no Typical query style box with "Yes" and "No" answer buttons
+ menu A scrolling list of menu choices with single entry selection
+ input Query style box with text entry field
+ message Similar to the yes/no box, but with only an "Ok" button
+ text A scrollable text box that works like a simple file viewer
+ info A message display that allows asynchronous script execution
+ checklist Similar to the menu box, but allowing multiple selections
+ radiolist Checklist style box allowing single selections
+ gauge Typical "progress report" style box
+ tail Allows viewing the end of files (tail) that auto updates
+ background tail Similar to tail but runs in the background.
+
+Package: mpeglib
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 724
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdemultimedia
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libcdparanoia0 (>= 3a9.8-11), libgcc1 (>= 1:3.4.1-3), libogg0 (>= 1.1.0), libstdc++5 (>= 1:3.3.4-1), libvorbis0a (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxv1
+Recommends: libarts1-mpeglib
+Description: mp3 and mpeg I video/audio library for linux
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ mpeglib is a mp3 and mpeg I video/audio library for linux.
+ .
+ mpeg I audio player (layer I,II,III (mp3))
+ mpeg I video player
+ mpeg I system layer player
+ wav player
+ .
+ This package is part of the official KDE multimedia module.
+
+Package: nxssh
+Status: install ok installed
+Priority: extra
+Section: x11
+Installed-Size: 276
+Maintainer: Peter Rockai (mornfall) <mornfall@danill.sk>
+Architecture: i386
+Source: nx
+Version: 1.3.99.2-0
+Depends: libc6 (>= 2.3.2.ds1-4), libssl0.9.7, zlib1g (>= 1:1.2.1)
+Description: NoMachine NX - custom and modified OpenSSH
+ NoMachine NX is the next-generation X compression and roundtrip suppression
+ scheme. It can operate remote X11 sessions over 56k modem dialup links or
+ anything better.
+ .
+ This package provides binary nxssh, which is used by the NX server to handle
+ inbound connections from nxclient's.
+
+Package: qt-style-reinhardt
+Status: install ok installed
+Priority: extra
+Section: checkinstall
+Installed-Size: 196
+Maintainer: Peter Rockai (mornfall) <mornfall@danill.sk>
+Architecture: i386
+Source: reinhardtstyle
+Version: 0.7.1-1
+Depends: kdelibs4 (>= 4:3.2.92), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: minimalistic style for Qt/KDE
+ Homepage: http://www.leinir.dk/leinir/content.php?content=programming&subcontent=reinhardt
+
+Package: diffstat
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 80
+Maintainer: Greg Norris <adric@debian.org>
+Architecture: i386
+Version: 1.34-1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: produces graph of changes introduced by a diff file
+ This program is a simple that reads the output of the 'diff' program,
+ and produces a histogram of the total number of lines that were changed.
+ It is useful for scanning a patch file to see which files were changed.
+
+Package: libx11-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 4368
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs-dev (<< 4.3.0)
+Depends: libx11-6 (= 4.3.0.dfsg.1-7), libxext-dev, libxi-dev, xlibs-static-dev, x-dev, libc6-dev | libc-dev
+Conflicts: xlibs-dev (<< 4.3.0)
+Description: X Window System protocol client library development files
+ Header files and a static version of the X11 library ("Xlib") are provided by
+ this package.
+ .
+ See the libx11-6 package for further information.
+ .
+ Ideally, this package would not depend on any extension headers, as Xlib is
+ designed to implement only the core X protocol. Nevertheless, some parts of
+ Xlib have acquired references to extension headers over the years.
+ Specifically, header files for the BIG-REQUESTS, XKEYBOARD, XInputExtension,
+ and XC-MISC extensions are used internally. These dependencies are not
+ exposed via Xlib's own external interfaces.
+
+Package: iputils-ping
+Status: install ok installed
+Priority: extra
+Section: net
+Installed-Size: 124
+Maintainer: Noah Meyerhans <noahm@debian.org>
+Architecture: i386
+Source: iputils
+Version: 3:20020927-2
+Replaces: netbase (<< 4.00)
+Provides: ping
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: ping, suidmanager (<< 0.50)
+Description: Tools to test the reachability of network hosts
+ The ping command sends ICMP ECHO_REQUEST packets to a host in order to
+ test if the host is reachable via the network.
+ .
+ This package includes a ping6 utility which supports IPv6 network
+ connections.
+
+Package: libxtrap-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 360
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs-dev (<< 4.3.0)
+Depends: libxtrap6 (= 4.3.0.dfsg.1-7), x-dev, libxt-dev, libsm-dev, libice-dev, libxext-dev, libx11-dev, libc6-dev | libc-dev
+Conflicts: xlibs-dev (<< 4.3.0)
+Description: X Window System protocol-trapping extension library development files
+ Header files and a static version of the XTrap library are provided by this
+ package.
+ .
+ See the libxtrap6 package for further information.
+
+Package: liblcms1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 260
+Maintainer: Shiju p. Nair <shiju@infovillage.net>
+Architecture: i386
+Source: lcms
+Version: 1.12-2.1
+Replaces: liblcms
+Provides: liblcms
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: liblcms-utils
+Conflicts: liblcms
+Description: Color management library
+ lcms is a standalone CMM engine, which deals with the color management.
+ It implements a fast transformation between ICC profiles. The intention
+ of it is to be portable across several platforms.
+
+Package: libcupsys2-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 280
+Maintainer: Kenshi Muto <kmuto@debian.org>
+Architecture: i386
+Source: cupsys
+Version: 1.1.20final+rc1-5
+Replaces: libcupsys1-dev, libcupsys-dev
+Provides: libcupsys-dev
+Depends: libcupsys2-gnutls10 (= 1.1.20final+rc1-5), libgnutls11-dev
+Conflicts: libcupsys1-dev, libcupsys-dev
+Description: Common UNIX Printing System(tm) - development files
+ The Common UNIX Printing System (or CUPS(tm)) is a printing system and
+ general replacement for lpd and the like. It supports the Internet
+ Printing Protocol (IPP), and has its own filtering driver model for
+ handling various document types.
+ .
+ This package provides the files necessary for developing CUPS-aware
+ applications and CUPS drivers.
+ .
+ The terms "Common UNIX Printing System" and "CUPS" are trademarks of
+ Easy Software Products (www.easysw.com), and refer to the original
+ source packages from which these packages are made.
+
+Package: svgalibg1
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+
+Package: libapt-pkg-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 320
+Maintainer: APT Development Team <deity@lists.debian.org>
+Architecture: i386
+Source: apt
+Version: 0.5.27
+Depends: apt-utils, libapt-pkg-libc6.3-5-3.3
+Description: Development files for APT's libapt-pkg and libapt-inst
+ This package contains the header files and libraries for
+ developing with APT's libapt-pkg Debian package manipulation
+ library and the libapt-inst deb/tar/ar library.
+
+Package: libartsc0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 44
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: arts
+Version: 1.3.0-1
+Replaces: libarts (<< 4:3.0.0), libarts-alsa (<< 4:3.0.0)
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libarts (<< 4:3.0.0), libarts-alsa (<< 4:3.0.0)
+Description: aRts Sound system C support library
+ aRts is a short form for "analog realtime synthesizer". The idea of the whole
+ thing is to create/process sound using small modules which do certain tasks.
+ These may be create a waveform (oscillators), play samples, filter data, add
+ signals, perform effects like delay/flanger/chorus, or output the data to
+ the soundcard.
+ .
+ This package contains the C binding to the aRts sound daemon.
+ .
+ This package is part of the official KDE aRts module.
+
+Package: libgksu1.2-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 172
+Maintainer: Gustavo Noronha Silva <kov@debian.org>
+Architecture: i386
+Source: libgksu1.2
+Version: 1.2.4-1
+Depends: libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.4.6), xbase-clients
+Recommends: sudo
+Description: library providing su and sudo functionality
+ This library comes from the gksu program. It provides a simple
+ API to use su and sudo in programs that need to execute tasks
+ as other user. It provides X authentication facilities for running
+ programs in a X session.
+
+Package: diff
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 828
+Maintainer: Santiago Vila <sanvila@debian.org>
+Architecture: i386
+Version: 2.8.1-6
+Pre-Depends: libc6 (>= 2.2.4-4)
+Description: File comparison utilities
+ The diff package provides the diff, diff3, sdiff, and cmp programs.
+ .
+ `diff' shows differences between two files, or each corresponding file
+ in two directories. `cmp' shows the offsets and line numbers where
+ two files differ. `cmp' can also show all the characters that
+ differ between the two files, side by side. `diff3' shows differences
+ among three files. `sdiff' merges two files interactively.
+ .
+ The set of differences produced by `diff' can be used to distribute
+ updates to text files (such as program source code) to other people.
+ This method is especially useful when the differences are small compared
+ to the complete files. Given `diff' output, the `patch' program can
+ update, or "patch", a copy of the file.
+
+Package: doxygen
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 3736
+Maintainer: Matthias Klose <doko@debian.org>
+Architecture: i386
+Version: 1.3.8-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1)
+Suggests: doxygen-doc, doxygen-gui, graphviz
+Description: Documentation system for C, C++ and IDL
+ Doxygen is a documentation system for C, C++ and IDL. It can generate an
+ on-line class browser (in HTML) and/or an off-line reference manual (in
+ LaTeX) from a set of documented source files. There is also support for
+ generating man pages and for converting the generated output into
+ Postscript, hyperlinked PDF or compressed HTML. The documentation is
+ extracted directly from the sources.
+
+Package: libxp6
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 328
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4), libxext6 | xlibs (>> 4.1.0)
+Conflicts: xlibs (<< 4.3.0)
+Description: X Window System printing extension library
+ libXp provides an X Window System client interface to XPRINT, a printing
+ extension to the X protocol.
+
+Package: xli
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 348
+Maintainer: James R. Van Zandt <jrv@debian.org>
+Version: 1.17.0-14
+Depends: libc6 (>= 2.3.1-1), libjpeg62, libpng2 (>= 1.0.12), xlibs (>> 4.1.0), zlib1g (>= 1:1.1.4)
+Description: view images under X11
+ Can view the following image types under X11: FBM Image, Sun
+ Rasterfile, CMU WM Raster, Portable Bit Map (PBM, PGM, PPM), Portable
+ Network Graphics (PNG), Faces Project, GIF Image, JFIF style jpeg
+ Image, Utah RLE Image, Windows, OS/2 RLE Image, Photograph on CD
+ Image, X Window Dump, Targa Image, McIDAS areafile, G3 FAX Image, PC
+ Paintbrush Image, GEM Bit Image, MacPaint Image, X Pixmap, X Bitmap.
+
+Package: kernel-image-2.6.3-1-686
+Status: deinstall ok config-files
+Priority: optional
+Section: base
+Installed-Size: 42036
+Maintainer: Herbert Xu <herbert@debian.org>
+Architecture: i386
+Source: kernel-image-2.6.3-i386
+Version: 2.6.3-2
+Config-Version: 2.6.3-2
+Provides: kernel-image, kernel-image-2.6
+Depends: initrd-tools (>= 0.1.59), coreutils | fileutils (>= 4.0), module-init-tools (>= 0.9.13)
+Suggests: lilo (>= 19.1), fdutils, kernel-doc-2.6.3
+Conflicts: hotplug (<< 0.0.20040105-1)
+Description: Linux kernel image for version 2.6.3 on PPro/Celeron/PII/PIII/PIV.
+ This package contains the Linux kernel image for version 2.6.3 on
+ Pentium Pro/Celeron/Pentium II/Pentium III/Pentium IV,
+ the corresponding System.map file, and the modules built by the packager.
+ It also contains scripts that try to ensure that the system is not left in
+ a unbootable state after an update.
+ .
+ If you wish to update a bootdisk, or to use a bootloader to make
+ installing and using the image easier, we suggest you install the latest
+ fdutils (for formatting a floppy to be used as boot disk), and LILO, for a
+ powerful bootloader. Of course, both these are optional.
+ .
+ Kernel image packages are generally produced using kernel-package,
+ and it is suggested that you install that package if you wish to
+ create a custom kernel from the sources.
+
+Package: read-edid
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 76
+Maintainer: Branden Robinson <branden@debian.org>
+Version: 1.4.1-2
+Depends: libc6 (>= 2.2.5-13)
+Description: hardware information-gathering tool for VESA PnP monitors
+ read-edid consists of two tools; get-edid uses a VESA VBE 2 interrupt
+ service routine request to read a 128 byte EDID version 1 structure from
+ your graphics card, which retrieves this information from the monitor via
+ the Data Display Channel (DDC). parse-edid parses this data structure and
+ outputs data about the monitor suitable for inclusion into an XF86Config
+ file.
+ .
+ get-edid uses real-mode x86 instructions to communicate with the video
+ hardware; therefore, it is usable only by root, and this package is only
+ available for the i386 architecture.
+
+Package: dict-vera
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 340
+Maintainer: Robert D. Hilliard <hilliard@debian.org>
+Architecture: all
+Source: vera (1.12-1)
+Version: 1:1.12-1
+Depends: dictd | dict-server
+Description: V.E.R.A. - A Dictionary of Computer Related Acronyms
+ This package contains V.E.R.A. -- Virtual Entity of Relevant
+ Acronyms, formatted for use by the dictionary server in the
+ dictd package. This is based on gnu version 1.12 of V.E.R.A.
+ (upstream version 6.5)
+ .
+ This package will be of limited use without the server found
+ in the dictd package.
+
+Package: xscreensaver
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 9148
+Maintainer: Karl Ramm <kcr@debian.org>
+Architecture: i386
+Version: 4.16-1
+Replaces: xscreensaver-gnome (<< 4.09-2), xscreensaver-nognome (<< 4.09-2)
+Provides: xscreensaver-gnome, xscreensaver-nognome
+Depends: libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libglade2-0 (>= 1:2.3.6), libglib2.0-0 (>= 2.4.1), libgtk2.0-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), libjpeg62, libpam0g (>= 0.76), libpango1.0-0 (>= 1.4.0), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.10), libxmu6 | xlibs (>> 4.1.0), libxrandr2 | xlibs (>> 4.3.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Recommends: xli | xloadimage, netpbm, libjpeg-progs, perl5, wordlist
+Suggests: xdaliclock, xscreensaver-gl, fortune, www-browser, qcam | streamer
+Conflicts: xscreensaver-gnome (<< 4.09-2), xscreensaver-nognome (<< 4.09-2), gnome-control-center (<< 1:2)
+Conffiles:
+ /etc/pam.d/xscreensaver 1f9d8debca1b79db4ecc3a3e771ac5b3
+ /etc/X11/app-defaults/XScreenSaver-nogl 5e8a43e951dd4dac962fc2d7a1836f92
+Description: Automatic screensaver for X
+ The purpose of xscreensaver is to display pretty pictures on your screen
+ when it is not in use, in keeping with the philosophy that unattended
+ monitors should always be doing something interesting, just like they do
+ in the movies.
+ .
+ The benefit that this program has over the combination of the xlock and
+ xautolock programs is the ease with which new graphics hacks can be
+ installed: you don't need to recompile this program to add a new display
+ mode, you just change some resource settings. Any program which can be
+ invoked in such a way that it draws on the root window of the screen can
+ now be used as a screensaver without modification. The programs that
+ are being run as screensavers don't need to have any special knowledge
+ about what it means to be a screensaver.
+
+Package: xlibmesa3-glu
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 696
+Maintainer: Branden Robinson <branden@debian.org>
+Source: xfree86
+Version: 4.2.1-11
+Config-Version: 4.2.1-11
+Replaces: mesag3 (<< 5.0.0-1), xlibmesa3 (<< 4.2.1-5)
+Provides: libglu1
+Depends: libc6 (>= 2.3.2-1), libgcc1 (>= 1:3.3.1-1), libstdc++5 (>= 1:3.3.1-1)
+Conflicts: libglu1
+Description: Mesa OpenGL utility library [XFree86]
+ The OpenGL utility library (GLU) offers simple interfaces for building
+ mipmaps; checking for the presence of extensions in the OpenGL (or other
+ libraries which follow the same conventions for advertising extensions);
+ drawing piecewise linear curves, NURBS, quadrics and other primitives
+ (including, but not limited to, teapots); tesselating surfaces; setting up
+ projection matrices and unprojecting screen coordinates to world coordinates.
+ .
+ XFree86 maintains its own version of the Mesa libraries; see the xlibmesa3-gl
+ package for more information.
+ .
+ This package was built using version 1.02 of the C++ ABI.
+
+Package: apache-common
+Status: install ok installed
+Priority: optional
+Section: web
+Installed-Size: 3024
+Maintainer: Debian Apache Maintainers <debian-apache@lists.debian.org>
+Architecture: i386
+Source: apache
+Version: 1.3.31-6
+Replaces: apache (<= 1.3.1-1), libapache-mod-roaming, libapache-mod-auth-sys, libapache-mod-put
+Provides: libapache-mod-roaming, libapache-mod-auth-sys, libapache-mod-put
+Depends: libc6 (>= 2.3.2.ds1-4), libdb4.2, libexpat1 (>= 1.95.6), perl (>= 5.8.4-2), mime-support, debconf (>= 1.4.22), apache-utils (>= 1.3.31-6), sed (>= 4.0.5-1), ucf (>= 1.06), lynx | www-browser
+Suggests: apache, apache-ssl, apache-perl
+Conflicts: apache (<= 1.3.1-1), libapache-mod-roaming, libapache-mod-auth-sys, libapache-mod-put
+Description: Support files for all Apache webservers
+ Provides the Apache modules and support binaries needed by all
+ packages of 1.3.x (regular, SSL, and locally compiled). Also
+ includes manpages and module documentation.
+
+Package: apache-utils
+Status: install ok installed
+Priority: optional
+Section: web
+Installed-Size: 428
+Maintainer: Debian Apache Maintainers <debian-apache@lists.debian.org>
+Architecture: i386
+Source: apache
+Version: 1.3.31-6
+Replaces: apache-common (<< 1.3.28.0.1-1)
+Depends: libc6 (>= 2.3.2.ds1-4), libdb4.2, libexpat1 (>= 1.95.6), libssl0.9.7, perl (>= 5.8.4-2)
+Conflicts: apache-common (<< 1.3.28.0.1-1)
+Description: Utility programs for webservers
+ Provides some add-on programs useful for any webserver. These include:
+ - ab (Apache benchmark tool)
+ - logresolve (Resolve IP addresses to hostname in logfiles)
+ - htpasswd (Manipulate basic authentication files)
+ - htdigest (Manipulate digest authentication files)
+ - dbmmanage (Manipulate basic authentication files in DBM format)
+ - rotatelogs (Periodically stop writing to a logfile and open a new one)
+
+Package: eventwatcher
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 776
+Maintainer: Kévin 'ervin' Ottens <ervin@ipsquad.net>
+Architecture: i386
+Version: 0.4.1-1
+Depends: kdelibs4 (>= 4:3.2.2), libart-2.0-2 (>= 2.3.8), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: EventWatcher is a KDE application which notifies you about various events.
+ "Events" are pieces of information about, for example, news ticker or blog updates,
+ new emails, user logons, system warnings, hardware events etc.
+ They get collected by EventWatcher plugins and sent to the main application which
+ lives in the KDE system tray for most of the time and displays this information.
+
+Package: guile-1.6-libs
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 2010
+Maintainer: Rob Browning <rlb@defaultvalue.org>
+Source: guile-1.6
+Version: 1.6.4-4
+Depends: libc6 (>= 2.3.2-1), libguile-ltdl-1, libncurses5 (>= 5.3.20030510-1), libqthreads-12, libreadline4 (>= 4.3-1)
+Description: Main Guile libraries
+ Guile is a Scheme implementation designed for real world programming,
+ providing a rich Unix interface, a module system, an interpreter, and
+ many extension languages. Guile can be used as a standard #! style
+ interpreter, via #!/usr/bin/guile, or as an extension language for
+ other applications via libguile.
+
+Package: libkcal2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1596
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Replaces: kdepim-libs (<< 4:3.2.0)
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdepim1 (>= 4:3.3.0), libstdc++5 (>= 1:3.3.4-1)
+Conflicts: kdepim-libs (<< 4:3.2.0)
+Description: KDE calendaring library
+ This library provides a C++ API for handling the vCalendar and iCalendar
+ formats.
+ .
+ This is the runtime package for programs that use the libkcal library.
+ .
+ This package is part of the official KDE pim module.
+
+Package: ktnef
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 468
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: KDE TNEF viewer
+ The TNEF File Viewer allows you to handle mail attachments using the TNEF
+ format. These attachments are usually found in mails coming from Microsoft
+ mail servers and embed the mail properties as well as the actual attachments.
+ .
+ This package is part of the official KDE pim module.
+
+Package: libbz2-1.0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 79
+Maintainer: Philippe Troin <phil@fifi.org>
+Architecture: i386
+Source: bzip2
+Version: 1.0.2-1
+Depends: libc6 (>= 2.2.4-4)
+Suggests: libbz2-dev, bzip2
+Description: A high-quality block-sorting file compressor library - runtime
+ This package contains libbzip2 which is used by the bzip2 compressor.
+
+Package: kmines
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 564
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: Minesweeper for KDE
+ KMines is the classic Minesweeper game. You must uncover all the
+ empty cases without blowing on a mine.
+ .
+ When you uncover a case, a number appears : it indicates how many
+ mines surround this case. If there is no number the neighbour cases
+ are automatically uncovered. In your process of uncovering secure
+ cases, it is very useful to put a flag on the cases which contain a
+ mine.
+
+Package: libgksu0
+Status: deinstall ok config-files
+Priority: optional
+Section: admin
+Installed-Size: 212
+Maintainer: Gustavo Noronha Silva <kov@debian.org>
+Architecture: i386
+Source: gksu
+Version: 1.0.7-1
+Config-Version: 1.0.7-1
+Replaces: gksu (<< 1.0.0)
+Depends: libatk1.0-0 (>= 1.4.1), libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.2.3), libgtk2.0-0 (>= 2.2.1), libpango1.0-0 (>= 1.2.1), xbase-clients
+Conflicts: gksu (<< 1.0.0)
+Description: a graphical fronted to su library
+ This library comes from the gksu program. It provides a Gtk+
+ dialog and X authentication facilities for running programs
+ as root or another user in a X session.
+
+Package: libxml-grove-perl
+Status: purge ok not-installed
+Priority: optional
+Section: interpreters
+
+Package: libungif4-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 132
+Maintainer: Michael Fedrowitz <michaelf@debian.org>
+Architecture: i386
+Source: libungif4
+Version: 4.1.3-1
+Replaces: giflib4-dev
+Provides: giflib4-dev, giflib-dev
+Depends: libungif4g (= 4.1.3-1), libc6-dev | libc-dev
+Conflicts: giflib-dev, giflib4-dev, giflib3g-dev, libungif3g-dev
+Description: shared library for GIF images (development files)
+ This package contains header files needed to compile programs that use
+ libungif.
+ .
+ The libungif library is a specially modified version of giflib which
+ is free of the Unisys LZW patent. It can read all GIFs, but only
+ write uncompressed GIFs. If you need to be able to write compressed
+ GIFs, you can install the non-free giflib packages instead (which may
+ not be available on CD).
+
+Package: libkafs0-heimdal
+Status: deinstall ok config-files
+Priority: extra
+Section: libs
+Installed-Size: 96
+Maintainer: Brian May <bam@debian.org>
+Architecture: i386
+Source: heimdal
+Version: 0.6.1-1
+Config-Version: 0.6.1-1
+Depends: libc6 (>= 2.3.2.ds1-4), libkrb-1-kerberos4kth (>= 1.2.2-10), libkrb5-17-heimdal (>= 0.6.1), libroken16-kerberos4kth (>= 1.2.2-10), libssl0.9.7
+Description: Libraries for Heimdal Kerberos
+ Heimdal is a free implementation of Kerberos 5, that aims to be
+ compatible with MIT Kerberos.
+ .
+ This package contains the library for KAFS support.
+
+Package: kasteroids
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 1152
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libarts1 (>= 1.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0)
+Description: Asteroids for KDE
+ You know this game. It is based on Warwick Allison's QwSpriteField
+ widget.
+ .
+ The objective of kasteroids is to destroy all the asteroids on the
+ screen to advance to the next level. Your ship is destroyed if it
+ makes contact with an asteroid.
+
+Package: lskat
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 536
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1), kdegames-card-data
+Description: Lieutnant Skat card game for KDE
+ Lieutnant skat (from German Offiziersskat) is a card game for two
+ players. It is roughly played according to the rules of Skat but with
+ only two players and simplified rules.
+ .
+ Every player has a set of cards in front of him/her, half of them
+ covered and half of them open. Both players try to win more than 60
+ of the 120 possible points. After 16 moves all cards are played and
+ the game ends.
+
+Package: perl
+Status: install ok installed
+Priority: standard
+Section: interpreters
+Installed-Size: 11468
+Maintainer: Brendan O'Dea <bod@debian.org>
+Architecture: i386
+Version: 5.8.4-2.2
+Replaces: perl-5.005 (<< 6), perl-5.6 (<< 6), perl-doc (<< 5.8.0-1), perl-modules (<< 5.8.1-1), libdigest-md5-perl, libmime-base64-perl, libtime-hires-perl, libstorable-perl
+Provides: perl5, libdigest-md5-perl, libmime-base64-perl, libtime-hires-perl, libstorable-perl
+Depends: perl-base (= 5.8.4-2.2), perl-modules (>= 5.8.4-2.2), libc6 (>= 2.3.2.ds1-4), libdb4.2, libgdbm3
+Suggests: perl-doc, libterm-readline-perl-perl
+Conflicts: perl-5.004 (<< 6), perl-5.005 (<< 6), perl-5.6 (<< 6), perl-doc (<< 5.8.4-1), libdigest-md5-perl (<< 2.33-1), libmime-base64-perl (<< 3.01-1), libtime-hires-perl (<< 1.59-1), libstorable-perl (<< 2.12-1)
+Description: Larry Wall's Practical Extraction and Report Language.
+ An interpreted scripting language, known among some as "Unix's Swiss
+ Army Chainsaw".
+ .
+ Perl is optimised for scanning arbitrary text files and system
+ administration. It has built-in extended regular expression matching
+ and replacement, a data-flow mechanism to improve security with
+ setuid scripts and is extensible via modules that can interface to C
+ libraries.
+
+Package: libwvstreams3-base
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 844
+Maintainer: Patrick Patterson <ppatters@debian.org>
+Architecture: i386
+Source: wvstreams
+Version: 3.75.0-1
+Provides: libwvstreams3
+Depends: libc6 (>= 2.3.2.ds1-4), libdb2 (>= 2:2.7.7.0-7), libfam0c102, libgcc1 (>= 1:3.3.3-1), libgdbm3, libpam0g (>= 0.76), libssl0.9.7, libstdc++5 (>= 1:3.3.3-1), zlib1g (>= 1:1.2.1)
+Description: C++ network libraries for rapid application development
+ WvStreams is a library suite that is comprised of several parts. Among
+ them are:
+ * WvIPStreams: which includes WvTCPStream and WvUDPStream
+ * WvStrings: yet another C++ String class
+ * WvCrypto streams: a REALLY easy way to add SSL support to applications
+ * WvConf: a configuration file handler
+ * WvLog: a log files handler
+ and a whole host of other goodness.
+ .
+ These are the base classes used to build programs such as the ever popular
+ WvDial, TunnelVision, FastForward, KWvDial, retchmail, and many more yet
+ to come. ;)
+
+Package: libidn9
+Status: deinstall ok config-files
+Priority: standard
+Section: libs
+Installed-Size: 220
+Maintainer: Ryan M. Golbeck <rmgolbeck@debian.org>
+Source: libidn
+Version: 0.1.14-2
+Config-Version: 0.1.14-2
+Depends: libc6 (>= 2.3.1-1)
+Description: GNU libidn library, implementation of IETF IDN specifications
+ GNU Libidn is an implementation of the Stringprep, Punycode and IDNA
+ specifications defined by the IETF Internationalized Domain Names
+ (IDN) working group, used for internationalized domain names.
+ Currently the Nameprep, Kerberos 5 and XMPP Stringprep profiles are
+ supported.
+
+Package: kdebase-kio-plugins
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 2276
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0), kdebase-doc (<< 4:3.0.0), kdebase-libs (<< 4:3.0.0), konqueror (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libjpeg62, libldap2 (>= 2.1.17-1), libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libsmbclient (>= 3.0.2a-1), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxcursor1 (>> 1.1.2), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter, mtools
+Conflicts: kdebase-libs (<< 4:3.0.0)
+Conffiles:
+ /etc/kde3/mountwatcher.desktop 87430ca35e3b9361edee6e47ff1e4ee3
+Description: KDE I/O Slaves
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This package includes the base kioslaves. This includes file, http,
+ ftp, smtp, pop and imap.
+ .
+ This package is part of the official KDE base module.
+
+Package: libmikmod2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 316
+Maintainer: Ingo Saitz <ingo@debian.org>
+Architecture: i386
+Source: libmikmod (3.1.11-5)
+Version: 3.1.11-a-5
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: A portable sound library
+ This library is capable of playing samples as well as module
+ files and was originally written by Jean-Paul Mikkers (MikMak) for DOS. It has
+ subsequently been hacked by many hands and now runs on many Unix flavours.
+ It uses the OSS /dev/dsp driver including in all recent kernels for output,
+ as well as ALSA and EsounD, and will also write wav files.
+ .
+ Supported file formats include mod, stm, s3m, mtm, xm, and it.
+
+Package: libapt-pkg-doc
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 320
+Maintainer: APT Development Team <deity@lists.debian.org>
+Architecture: all
+Source: apt
+Version: 0.5.27
+Description: Documentation for APT development
+ This package contains documentation for development of the APT
+ Debian package manipulation program and its libraries.
+
+Package: kdm
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 1112
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Provides: x-display-manager
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpam0g (>= 0.76), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxtst6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), debconf (>= 1.2.9), kdebase-bin, libpam-runtime (>= 0.76-14), xbase-clients
+Recommends: logrotate
+Suggests: khelpcenter, menu
+Conffiles:
+ /etc/kde3/kdm/kdm.options 5822fe4d026ec65fa8dc9d83854f6f42
+ /etc/kde3/kdm/Xaccess 8f854c775ecf01f1c03f666cd45df3e7
+ /etc/kde3/kdm/Xreset 15d90c41344a0a1a24525a0abf2f415e
+ /etc/kde3/kdm/Xservers d3ab063f564492e0e31830f56ccd350e
+ /etc/kde3/kdm/Xsession c084a734d9a214939d3f0a8d1e5a8887
+ /etc/kde3/kdm/Xsetup e2fe2d1f60e9775c8dd97f4a2773809e
+ /etc/kde3/kdm/Xstartup a49ea0e70722717f22b5289c89018470
+ /etc/kde3/kdm/Xwilling ab97870cde0424d576375813874a304e
+ /etc/kde3/kdm/backgroundrc f131d4a60db99addf8e80427f397e332
+ /etc/kde3/kdm/kdmrc 5479a51df866ef6eec19e58c64b6e62f
+ /etc/pam.d/kdm-np fd63b59f4f003520b6f6c8e532741673
+ /etc/pam.d/kdm b5ea396de97e9e83bc6b0fd5164939e9
+ /etc/logrotate.d/kdm 8c9e62d059711c10bff151ffb78f6228
+ /etc/init.d/kdm 6e05a5130fa266bfd8a70699db337ceb
+Description: KDE Display Manager
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ kdm manages a collection of X servers, which may be on the local host or
+ remote machines. It provides services similar to those provided by init,
+ getty, and login on character-based terminals: prompting for login name and
+ password, authenticating the user, and running a session. kdm supports XDMCP
+ (X Display Manager Control Protocol) and can also be used to run a chooser
+ process which presents the user with a menu of possible hosts that offer
+ XDMCP display management.
+ .
+ This package is part of the official KDE base module.
+
+Package: kde
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 16
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: all
+Source: meta-kde
+Version: 4:3.1.2
+Depends: kde-core, kde-amusements, kdeaddons, kdeadmin, kdeartwork, kdegraphics, kdemultimedia, kdenetwork, kdepim, kdeutils, quanta
+Suggests: kde-i18n
+Description: The K Desktop Environment
+ A metapackage containing dependencies for the official suite of KDE including
+ arts, kdeaddons, kdeadmin, kdeartwork, kdebase, kdeedu, kdegames, kdegraphics,
+ kdelibs, kdemultimedia, kdenetwork, kdepim, kdetoys, kdeutils, and quanta.
+ .
+ Does not contain depends for Development packages.
+
+Package: xnest
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 3620
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xbase (<< 3.3.2.1-1)
+Depends: xserver-common, libc6 (>= 2.3.2.ds1-4), libfreetype6 (>= 2.1.5-1), libxext6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Description: nested X server
+ xnest an X server that is itself an X client. This allows you to run a
+ server within a server; this is occasionally useful for testing new window
+ managers and other X clients.
+ .
+ Xnest relies upon its parent X server for font services.
+
+Package: kdf
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 700
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeutils
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE disk free
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ This program shows the disk usage of the mounted devices.
+ .
+ This package is part of the official KDE utils module.
+
+Package: libgtkhtml2-0
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 488
+Maintainer: Takuo KITAME <kitame@debian.org>
+Source: libgtkhtml2
+Version: 2.4.1-1
+Config-Version: 2.4.1-1
+Depends: libart-2.0-2 (>= 2.3.8), libatk1.0-0 (>= 1.4.1), libc6 (>= 2.3.2.ds1-4), libgail-common (>= 1.4.1), libgail17 (>= 1.4.1), libglib2.0-0 (>= 2.2.3), libgnomecanvas2-0 (>= 2.4.0), libgtk2.0-0 (>= 2.2.1), libpango1.0-0 (>= 1.2.1), libxml2 (>= 2.5.9), zlib1g (>= 1:1.1.4)
+Description: HTML rendering/editing library - runtime files. (for GNOME2)
+ This is GtkHTML, a lightweight HTML rendering/printing/editing engine. It
+ was originally based on KHTMLW, but is now being developed independently.
+ .
+ This package is a part of GNOME2
+
+Package: libgcrypt-doc
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+
+Package: libtag1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 268
+Maintainer: Christopher L Cheney <ccheney@debian.org>
+Architecture: i386
+Source: taglib
+Version: 1.2-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1)
+Description: TagLib Audio Meta-Data Library
+ TagLib is a library for reading and editing the meta-data of several popular
+ audio formats. Currently it supports both ID3v1 and ID3v2 for MP3 files, Ogg
+ Vorbis comments and ID3 tags and Vorbis comments in FLAC files.
+ .
+ This is the runtime package for programs that use the TagLib Audio Meta-Data
+ Library.
+
+Package: irda-utils
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 276
+Maintainer: Sebastian Henschel <shensche@debian.org>
+Architecture: i386
+Version: 0.9.16-7
+Replaces: irda-common, irda-tools
+Provides: irda-tools
+Depends: libc6 (>= 2.3.2.ds1-4), libglib1.2 (>= 1.2.0), debconf (>= 0.5) | debconf-2.0, makedev (>= 2.3.1-66), module-init-tools
+Recommends: ircp, openobex-apps
+Suggests: libgsmme1c102, liblinc1, obexftp, setserial
+Conflicts: irda-common, irda-tools
+Conffiles:
+ /etc/devfs/conf.d/irda d4b4bcb1395c0cb30361a323d0d0e9af
+ /etc/init.d/irda-utils 0c7f3347609a3be76eca88b1bf2311bd
+Description: IrDA management and handling utilities
+ This package contains userspace utilities to manage and handle infrared
+ devices. It includes irattach, findchip, irdadump, irdaping and irpsion5.
+ OBEX tools are removed since 0.9.5. If you need to use IrOBEX,
+ use openobex-apps package.
+ .
+ Authors: Dag Brattli <dagb@users.sourceforge.net> and
+ Jean Tourrilhes <jean2@users.sourceforge.net>
+ Homepage: http://irda.sourceforge.net
+
+Package: python-qt3
+Status: install ok installed
+Priority: optional
+Section: python
+Installed-Size: 52
+Maintainer: Ricardo Javier Cardenes Medina <rcardenes@debian.org>
+Architecture: all
+Version: 3.12-3
+Depends: python (>= 2.3), python (<< 2.4), python2.3-qt3
+Description: Qt3 bindings for Python (default version)
+ Python binding module that allows use of Qt X Window toolkit v3.
+ You can use it to create portable graphics-capable scripts (there
+ are PyQt versions for both Linux and Windows).
+ .
+ This is a void package. It only depends on the real one, compiled
+ against Debian's default Python version.
+
+Package: libhtml-parser-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 292
+Maintainer: Kenneth J. Pronovici <pronovic@debian.org>
+Architecture: i386
+Version: 3.36-1
+Replaces: libwww-perl (<< 5.36-0)
+Depends: perlapi-5.8.3, perl (>= 5.8.3-2), libhtml-tagset-perl, libc6 (>= 2.3.2.ds1-4)
+Conflicts: libwww-perl (<< 5.36-0), libhtml-tree-perl (<< 0.61-0)
+Description: A collection of modules that parse HTML text documents
+ This is a collection of modules that parse HTML text documents. These
+ modules used to be part of the libwww-perl distribution, but are now
+ unbundled in order to facilitate a separate development track.
+
+Package: aumix
+Status: install ok installed
+Priority: extra
+Section: sound
+Installed-Size: 444
+Maintainer: Romain Francoise <rfrancoise@debian.org>
+Architecture: i386
+Version: 2.8-7
+Replaces: aumix-alsa, aumix-gtk
+Provides: audio-mixer
+Depends: libc6 (>= 2.3.2.ds1-4), libgpmg1 (>= 1.19.6-1), libncurses5 (>= 5.4-1)
+Conflicts: aumix-alsa, aumix-gtk
+Conffiles:
+ /etc/init.d/aumix 200184251fba28c1c7fd3f836f075124
+Description: Simple text-based mixer control program
+ aumix is a small, easy-to-use program to control the mixer of your sound
+ card. It runs in text mode using the ncurses library, or from the command
+ line (non-interactively). It can read default settings from a file, and it
+ can also automatically save and restore the mixer settings at shutdown and
+ boot.
+ .
+ A wrapper script xaumix is provided that finds and invokes xterm or a
+ replacement. This is primarily for creating the best sized terminal window.
+ If you want a true graphical interface, install aumix-gtk instead. That has
+ the same functionality as this one in addition to offering a nice X GUI.
+ .
+ The old companion package aumix-alsa, which did take advantage of the
+ extra facilities in the ALSA sound driver, is no longer available.
+ This package should work fine with the OSS compatibility layer of the
+ modern ALSA drivers.
+
+Package: libdb2
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 636
+Maintainer: Debian Berkeley DB Maintainers <pkg-db-devel@lists.alioth.debian.org>
+Architecture: i386
+Source: db2
+Version: 2:2.7.7.0-9
+Replaces: libdb2.6, lib-bdb2, libc6 (<< 2.2.2-4), libc6.1 (<< 2.2.2-4), libc0.2 (<< 2.2.2-4)
+Pre-Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: lib-bdb2
+Description: The Berkeley database routines (run-time files)
+ libdb2 is a library for manipulating database files, developed at
+ Berkeley and extended by Sleepycat Software Inc.
+ This is an ancient, obsolete version.
+ .
+ It supports three kinds of file formats:
+ * btree. A representation of a sorted, balanced tree structure.
+ * hashed. An extensible, dynamic hashing scheme.
+ * UNIX file oriented. A byte stream file with fixed or variable
+ length records.
+ Other core database services:
+ * page cache management for fast access, clean page allocation.
+ * lock with multiple reader/writer granularity.
+ * nested transaction support with logging and rollback recovery
+ (two phase commit).
+ * Large set of utilities, to dump/load/restore data and examine log.
+
+Package: libdb3
+Status: install ok installed
+Priority: required
+Section: libs
+Installed-Size: 732
+Maintainer: Debian Berkeley DB Maintainers <pkg-db-devel@lists.alioth.debian.org>
+Architecture: i386
+Source: db3
+Version: 3.2.9-20
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libdb2 (<< 2:2.7.7-3)
+Description: Berkeley v3 Database Libraries [runtime]
+ This is the runtime package for programs that use the Berkeley v3
+ database library.
+ .
+ Many programs use the Berkeley Database to store their data. Other
+ versions of the database can be found in the db2, db4.0, db4.1 and
+ db4.2 packages.
+
+Package: irssi-plugin-icq
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 92
+Maintainer: Michael Banck <mbanck@debian.org>
+Architecture: i386
+Version: 0.2-2
+Depends: libc6 (>= 2.3.1-1), irssi-text (>= 0.8.6) | irssi-snapshot | xirssi
+Description: ICQ plugin for irssi
+ This is an plugin for irssi which enables you to use ICQ in your
+ favourite irc-client as well.
+ .
+ It supports away-status, a buddy-list, /msg and /query.
+
+Package: libclan2-gui
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 768
+Origin: debian
+Maintainer: Filip Van Raemdonck <mechanix@debian.org>
+Bugs: debbugs://bugs.debian.org/
+Architecture: i386
+Source: clanlib
+Version: 0.6.5-1-2.2
+Config-Version: 0.6.5-1-2.2
+Depends: libc6 (>= 2.3.2.ds1-4), libclanlib2 (>= 0.6.5-1), libgcc1 (>= 1:3.3.3-1), libstdc++5 (>= 1:3.3.3-1)
+Conflicts: clanlib-gui, clanlib2-gui
+Description: GUI module for ClanLib game SDK
+ ClanLib delivers a platform independent interface to write games with.
+ If a game is written with ClanLib, it should be possible to compile the
+ game under any platform (supported by ClanLib, that is) without changing
+ the application source code.
+ .
+ But ClanLib is not just a wrapper library, providing a common interface
+ to low-level libraries such as DirectFB, DirectX, OpenGL, X11, etc. While
+ platform independence is ClanLib's primary goal, it also tries to be a
+ service-minded game SDK. In other words, we have put great effort into
+ designing the API, to ensure ClanLib's ease of use - while maintaining its
+ power.
+ .
+ This package contains the GUI module (clanGUI).
+
+Package: xmon
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 196
+Maintainer: Filip Van Raemdonck <mechanix@debian.org>
+Architecture: i386
+Version: 1.5.6-1.3
+Depends: libc6 (>= 2.3.1-1), libxaw7 (>> 4.1.0), xlibs (>> 4.1.0)
+Description: An interactive X protocol monitor
+ Xmon interactively monitors the byte-stream connections between an X
+ server and a number of X clients. Xmon recognises all requests,
+ events, errors and replies sent between the clients and the server
+ which are part of the core X protocol.
+
+Package: libdvdnav4
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 248
+Maintainer: Philipp Matthias Hahn <pmhahn@debian.org>
+Architecture: i386
+Source: libdvdnav
+Version: 0.1.9-3
+Config-Version: 0.1.9-3
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: The DVD navigation library
+ This is the DVD navigation library, which provides an interface
+ to the advanced features of DVDs, like menus, navigation, etc.
+ .
+ This package contains the libdvdnav runtime library.
+
+Package: scummvm
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 2888
+Maintainer: Tore Anderson <tore@debian.org>
+Architecture: i386
+Version: 0.6.1b-1
+Config-Version: 0.6.1b-1
+Depends: libasound2 (>> 1.0.5), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libmad0 (>= 0.15.1b), libmpeg2-4, libogg0 (>= 1.1.0), libsdl1.2debian (>> 1.2.7-0), libstdc++5 (>= 1:3.3.4-1), libvorbis0a (>= 1.0.1), libvorbisfile3 (>= 1.0.1), zlib1g (>= 1:1.2.1)
+Suggests: timidity, beneath-a-steel-sky, flight-of-the-amazon-queen
+Description: Free implementation of LucasArts' S.C.U.M.M interpreter
+ ScummVM is a 'virtual machine' for several classic graphical
+ point-and-click adventure games. It is designed to run Adventure Soft's
+ Simon the Sorcerer 1 and 2, Revolution's Beneath A Steel Sky, and games
+ based on LucasArts' S.C.U.M.M (Script Creation Utility for Maniac Mansion)
+ system. S.C.U.M.M is used for many games, including Monkey Island,
+ Day of the Tentacle, Sam and Max and more. See the official compatibility
+ list at <http://www.scummvm.org/compatibility_stable.php> for a full list
+ ofsupported games.
+ .
+ The game data of two games compatible with ScummVM is included in Debian.
+ These are:
+ .
+ - Beneath a Steel Sky (package name: beneath-a-steel-sky)
+ - Flight of the Amazon Queen (package name: flight-of-the-amazon-queen)
+ .
+ To actually make use of ScummVM, you'll have to install one of these, or
+ obtain the proprietary game data for the another supported game from
+ somewhere else.
+
+Package: gimp-python
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 300
+Maintainer: Ari Pollak <ari@debian.org>
+Architecture: i386
+Source: gimp
+Version: 2.0.4-1
+Replaces: gimp (<< 2.0.2-6)
+Depends: python-gtk2 (>= 1.99.12), libc6 (>= 2.3.2.ds1-4), libgimp2.0 (>= 2.0.0), libglib2.0-0 (>= 2.4.1), python (>= 2.3), python (<< 2.4)
+Conflicts: gimp (<< 2.0.2-6)
+Description: Python support and plugins for The GIMP, stable version 2.0
+ This package includes the Python modules necessary to write Python-based
+ plugins for The GIMP. It includes several plugins with various useful
+ features.
+
+Package: libsigc++0
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+
+Package: libmal-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 516
+Maintainer: Ludovic Rousseau <rousseau@debian.org>
+Source: libmal
+Version: 0.40-3
+Depends: libmal1, libc6-dev
+Description: A library of the functions in malsync
+ libmal is simply a convenience library of the object files contained in
+ Tom Whittaker's malsync distribution, along with a few wrapper
+ functions.
+ .
+ This package contains the necessary files to compile a program using
+ libmal1
+ .
+ Homepage: http://jasonday.home.att.net/code/libmal/libmal.html
+
+Package: sysklogd
+Status: install ok installed
+Priority: important
+Section: base
+Installed-Size: 204
+Maintainer: Martin Schulze <joey@debian.org>
+Architecture: i386
+Version: 1.4.1-15
+Replaces: syslogd
+Provides: syslogd, system-log-daemon
+Depends: libc6 (>= 2.3.2.ds1-4), klogd | linux-kernel-log-daemon
+Conflicts: syslogd
+Conffiles:
+ /etc/syslog.conf 3882195aa34cd97b8a57120bc8b47f3b
+ /etc/init.d/sysklogd 7337ea73b78e2db57730612688df6665
+ /etc/cron.daily/sysklogd deeb1ff55fe8ca49054901a0e80f10e6
+ /etc/cron.weekly/sysklogd 766afd8b048c440c4a0c4013e1f439fb
+Description: System Logging Daemon
+ This package implements the system log daemon, which is an enhanced
+ version of the standard Berkeley utility program. It is responsible
+ for providing logging of messages received from programs and facilities
+ on the local host as well as from remote hosts.
+
+Package: libswig1.3.21
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 252
+Maintainer: Torsten Landschoff <torsten@debian.org>
+Architecture: i386
+Source: swig1.3
+Version: 1.3.21-5
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libswig1.1, libswig1.3
+Description: Runtime support libraries for swig generated wrappers
+ This package contains the runtime support libraries needed to run
+ some swig generated wrappers. Install this package only if any
+ other package you have installed depends on it.
+
+Package: attal-themes-medieval
+Status: purge ok not-installed
+Priority: optional
+Section: games
+Architecture: all
+
+Package: libkadm55
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 412
+Maintainer: Sam Hartman <hartmans@debian.org>
+Architecture: i386
+Source: krb5
+Version: 1.3.4-4
+Replaces: libkrb53 (<= 1.3)
+Depends: libkrb53 (= 1.3.4-4)
+Description: MIT Kerberos administration runtime libraries
+ Kerberos is a system for authenticating users and services on a network.
+ Kerberos is a trusted third-party service. That means that there is a
+ third party (the kerberos server) that is trusted by all the entities on
+ the network (users and services, usually called "principals").
+ .
+ This is the MIT reference implementation of Kerberos5.
+
+Package: klickety
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 336
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: A Clickomania-like game for KDE
+ Klickety is an adaptation of the (perhaps) well-known Clickomania
+ game; it is very similar to the "same" game.
+
+Package: efax
+Status: install ok installed
+Priority: optional
+Section: comm
+Installed-Size: 304
+Maintainer: Filippo Panessa <fpanessa@aliceposta.it>
+Version: 1:0.9a-14
+Depends: libc6 (>= 2.3.2.ds1-4), libpaperg | libpaper-utils, debconf (>= 0.2.0), make
+Suggests: gs, xloadimage | imagemagick | mgetty-viewfax
+Conffiles:
+ /etc/efax.rc a4e6187eab001ca150e1de3bfb4b4320
+ /etc/cron.weekly/efax fa9709d41c7ef090a02c1b71fe9ef6d7
+Description: Programs to send and receive fax messages
+ efax is a small ANSI C/POSIX program that provides the data transport
+ function for fax applications using any Class 1 or Class 2 fax modem.
+ Another program, efix, converts between fax, text, bit-map and gray-scale
+ formats. fax, a shell script, provides a simple user interface to the efax
+ and efix programs. It allows you to send text or Postscript files as faxes
+ and receive, print or preview received faxes.
+ .
+ The ghostscript package is needed to fax Postscript files, and a image
+ viewing program as xloadimage is need to view incoming faxes.
+ .
+ Note that you probably have to adapt /etc/efax.rc to your needs.
+
+Package: libslp-dev
+Status: install ok installed
+Priority: extra
+Section: devel
+Installed-Size: 232
+Maintainer: Ganesan Rajagopal <rganesan@debian.org>
+Source: openslp
+Version: 1.0.11-7
+Depends: libslp1 (= 1.0.11-7), libc6-dev
+Suggests: openslp-doc (= 1.0.11-7)
+Conflicts: libxdelta3-dev
+Description: OpenSLP development libraries
+ Service Location Protocol is a IETF standard protocol that is used to
+ discover/advertise services on the network. You can use SLP for anything
+ from locating a suitable printer on your floor to discovering what LDAP
+ directories are available in your organization. This package allows
+ development of SLP applications using the OpenSLP libraries. It includes
+ headers, libraries and links to allow static and dynamic linking. It also
+ includes slptool, a utility to test service advertisement/lookup. The
+ library implements RFC 2614 - An API for Service Location.
+
+Package: libtiff4-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 1336
+Maintainer: Josip Rodin <joy-packages@debian.org>
+Architecture: i386
+Source: tiff
+Version: 3.6.1-1.1
+Provides: libtiff-dev
+Depends: libtiff4 (= 3.6.1-1.1), libc6-dev
+Conflicts: libtiff3g-dev, libtiff3-dev, libtiff-dev
+Description: Tag Image File Format library, development files
+ libtiff is a library providing support for the Tag Image File Format
+ (TIFF), a widely used format for storing image data. Included are the
+ development files, static library and the required headers.
+
+Package: procmail
+Status: install ok installed
+Priority: standard
+Section: mail
+Installed-Size: 328
+Maintainer: Santiago Vila <sanvila@debian.org>
+Version: 3.22-9
+Depends: libc6 (>= 2.2.4-4)
+Recommends: exim4 | mail-transport-agent | fetchmail
+Conflicts: suidmanager (<< 0.50)
+Description: Versatile e-mail processor
+ Can be used to create mail-servers, mailing lists, sort your incoming
+ mail into separate folders/files (real convenient when subscribing to one
+ or more mailing lists or for prioritising your mail), preprocess your
+ mail, start any programs upon mail arrival (e.g. to generate different
+ chimes on your workstation for different types of mail) or selectively
+ forward certain incoming mail automatically to someone.
+
+Package: kwin4
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 548
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: Connect Four clone for KDE
+ Four wins is a game for two players. Each player is represented by a
+ colour (yellow and red). The goal of the game is to get four
+ connected pieces of your colour into a row, column or any
+ diagonal. This is done by placing one of your pieces into any of the
+ seven columns. A piece will begin to fill a column from the bottom,
+ i.e. it will fall down until it reaches the ground level or another
+ stone. After a move is done it is the turn of the other player. This
+ is repeated until the game is over, i.e. one of the players has four
+ pieces in a row, column or diagonal or no more moves are possible
+ because the board is filled.
+
+Package: libboost-python1.31.0
+Status: install ok installed
+Priority: optional
+Section: python
+Installed-Size: 352
+Maintainer: Steve M. Robbins <smr@debian.org>
+Architecture: i386
+Source: boost
+Version: 1.31.0-7
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1), python2.3 (>= 2.3)
+Description: Boost Python Library
+ Part of the Boost.org library collection.
+ .
+ The Boost Python Library is used to quickly and easily export a C++
+ library to Python such that the Python interface is very similar to
+ the C++ interface. It is designed to be minimally intrusive on your
+ C++ design. In most cases, you should not have to alter your C++
+ classes in any way in order to use them with Boost.Python. The
+ system should simply "reflect" your C++ classes and functions into
+ Python. The major features of Boost.Python include support for:
+ Subclassing extension types in Python, Overriding virtual functions
+ in Python, Member function Overloading, Automatic wrapping of
+ numeric operators among others.
+ .
+ Homepage: http://www.boost.org/libs/python/
+
+Package: koffice-libs
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 5944
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: koffice
+Version: 1:1.3.2-2
+Replaces: koffice (<< 2.1-beta2-1), kword (<< 1:1.2.90-0)
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libaspell15 (>= 0.50.5), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.11), libxrender1, libxslt1.1 (>= 1.1.8), zlib1g (>= 1:1.2.1), koffice-data (= 1:1.3.2-2)
+Recommends: kghostview (>= 4:3.0.1-0), latex-xft-fonts
+Suggests: wordnet, tetex-extra
+Description: common libraries and binaries for the KDE Office Suite
+ This package provides the libraries and binaries that are shared amongst
+ the various components of KOffice.
+ .
+ This package is part of the KDE Office Suite.
+
+Package: konqueror-nsplugins
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 300
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: konqueror (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Description: Netscape plugin support for Konqueror
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This package includes Netscape plugin support for Konqueror.
+ .
+ This package is part of the official KDE base module.
+
+Package: lilo
+Status: install ok installed
+Priority: important
+Section: base
+Installed-Size: 989
+Maintainer: Andrés Roldán <aroldan@debian.org>
+Architecture: i386
+Version: 1:22.5.9-6
+Depends: debconf (>= 1.2.9), libc6 (>= 2.3.2.ds1-4), libdevmapper1.00
+Suggests: lilo-doc
+Conflicts: manpages (<< 1.29-3)
+Description: LInux LOader - The Classic OS loader can load Linux and others
+ This Package contains lilo (the installer) and boot-record-images to
+ install Linux, OS/2, DOS and generic Boot Sectors of other OSes.
+ .
+ You can use LILO to manage your Master Boot Record (with a simple text screen,
+ text menu or colorful splash graphics) or call LILO from other Boot-Loaders to
+ jump-start the Linux kernel.
+
+Package: kcmlinuz
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 332
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeadmin
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libjpeg62, libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), kcontrol
+Suggests: kernel-source, kernel-package
+Description: KDE Frontend for the Linux kernel configuration
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ kcmlinuz is a KDE based frontend to Linux kernel configuration.
+ It runs out of the KDE Control Center.
+ .
+ This package is part of the official KDE admin module.
+
+Package: ksokoban
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 504
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: Sokoban game for KDE
+ The first sokoban game was created in 1982 by Hiroyuki Imabayashi at
+ the Japanese company Thinking Rabbit, Inc. "Sokoban" is japanese for
+ "warehouse keeper". The idea is that you are a warehouse keeper
+ trying to push crates to their proper locations in a warehouse.
+ .
+ The problem is that you cannot pull the crates or step over them. If
+ you are not careful, some of the crates can get stuck in wrong places
+ and/or block your way.
+ .
+ It can be rather difficult just to solve a level. But if you want to
+ make it even harder, you can try to minimise the number of moves
+ and/or pushes you use to solve the level.
+ .
+ To make the game more fun for small kids (below 10 years or so), some
+ collections with easier levels are also included in KSokoban. These
+ are marked (easy) in the level collection menu. Of course, these
+ levels can be fun for adults too, for example if you don't want to
+ expose yourself to too much mental strain.
+
+Package: libsane-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 5468
+Maintainer: Julien BLACHE <jblache@debian.org>
+Architecture: i386
+Source: sane-backends
+Version: 1.0.14-7
+Replaces: libsane-extras-dev (<< 1.0.12.1)
+Depends: libsane (= 1.0.14-7), libusb-dev (>= 1:0.1.6a-1), libieee1284-3-dev (>= 0.2.3-1), libjpeg62-dev
+Suggests: libsane-extras-dev (>> 1.0.12.1)
+Description: API development library for scanners [development files]
+ SANE stands for "Scanner Access Now Easy" and is an application
+ programming interface (API) that provides standardized access to any
+ raster image scanner hardware (flatbed scanner, hand-held scanner,
+ video- and still-cameras, frame-grabbers, etc.). The SANE standard is
+ free and its discussion and development are open to everybody. The
+ current source code is written to support several operating systems,
+ including GNU/Linux, OS/2, Win32 and various Unices and is available
+ under the GNU General Public License (commercial applications and
+ backends are welcome, too, however).
+ .
+ This package contains the files needed to build your applications
+ using SANE.
+
+Package: xscreensaver-gl
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 6816
+Maintainer: Karl Ramm <kcr@debian.org>
+Architecture: i386
+Source: xscreensaver
+Version: 4.16-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgle3, libglib2.0-0 (>= 2.4.1), libgtk2.0-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0), xlibmesa-gl | libgl1, xlibmesa-glu | libglu1
+Recommends: xscreensaver
+Conflicts: xscreensaver (<< 4.14-2)
+Conffiles:
+ /etc/X11/app-defaults/XScreenSaver-gl 98d1a17c7a8f91b58fa74b7da44be99e
+Description: GL(Mesa) screenhacks for xscreensaver
+ These are some extra hacks for xscreensaver that use the Mesa
+ OpenGL-compatible library. They are included as an extra package so
+ the base package doesn't require Mesa. In addition, these hacks function
+ nicely as GL demos for people who want to try out hardware accelerated 3D
+ with XFree86 4.x
+
+Package: libgstreamer0.8-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 2004
+Maintainer: David I. Lehn <dlehn@debian.org>
+Architecture: i386
+Source: gstreamer0.8
+Version: 0.8.5-1
+Depends: libgstreamer0.8-0 (= 0.8.5-1), libc6-dev | libc-dev, pkg-config, libpopt-dev, libglib2.0-dev, libxml2-dev
+Recommends: gstreamer0.8-doc (= 0.8.5-1)
+Description: GStreamer development libraries and headers
+ GStreamer is a media processing framework with support for a wide variety
+ of data sources, sinks, and formats through the use of dynamically loaded
+ plugins.
+ .
+ This package contains development libraries and headers.
+ .
+ http://gstreamer.net/
+
+Package: libvorbis0a
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 184
+Maintainer: Christopher L Cheney <ccheney@debian.org>
+Source: libvorbis
+Version: 1.0.1-1
+Replaces: libvorbis0
+Depends: libc6 (>= 2.3.2.ds1-4), libogg0 (>= 1.1.0)
+Conflicts: libvorbis0
+Description: The Vorbis General Audio Compression Codec
+ Ogg Vorbis is a fully open, non-proprietary, patent-and-royalty-free,
+ general-purpose compressed audio format for audio and music at fixed
+ and variable bitrates from 16 to 128 kbps/channel.
+ .
+ The Vorbis library is the primary Ogg Vorbis library.
+
+Package: autofs
+Status: install ok installed
+Priority: extra
+Section: utils
+Installed-Size: 356
+Maintainer: Arthur Korn <arthur@debian.org>
+Architecture: i386
+Version: 3.9.99-4.0.0pre10-20
+Depends: libc6 (>= 2.3.2.ds1-4), procps
+Recommends: nfs-common, perl
+Conflicts: samba (<< 2.0.6-1)
+Conffiles:
+ /etc/auto.master 125e2b94a7a27d43d92ad0620f443f28
+ /etc/auto.misc 872521530bdf832ce44c09e3f0ceeb93
+ /etc/auto.net 72dabbbde7d2b3f2665b368fa2354c58
+ /etc/init.d/autofs 4626f79ae50b1e825f9ff09cb0409560
+ /etc/apm/event.d/autofs 024b72ac6decba96f42b1ad7c99e1065
+ /etc/modutils/autofs 0f301c5d251946f7085f582aadd017dc
+ /etc/modprobe.d/autofs ac17fea18d160cab1da5590baae9a4f7
+ /etc/default/autofs 32cbed97974a2d15666a5ad42abe6ca6
+Description: A kernel-based automounter for Linux
+ Autofs controls the operation of the automount daemons. The
+ automount daemons automatically mount filesystems when they
+ are used and unmount them after a period of inactivity. This
+ is done based on a set of pre-configured maps.
+ .
+ The kernel automounter implements an almost complete SunOS style
+ automounter under Linux. The automounter is supported by Linux
+ kernels 2.0.31 and higher. Automounter support must be activated
+ while compiling the kernel.
+ .
+ nfs-common is needed for NFS mounts. Perl is needed for support scripts
+ for LDAP master maps.
+
+Package: xlibs-data
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 7476
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: all
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Conflicts: xlibs (<< 4.3.0), xbase-clients (<< 4.3.0)
+Conffiles:
+ /etc/X11/cursors/core.theme 73cec8bd811379ca1a61cb240e96fb51
+ /etc/X11/cursors/handhelds.theme d8be9d15f982704d007d3ba3d8009f54
+ /etc/X11/cursors/redglass.theme d1e8adaca475bf4a4b295ca5407244fd
+ /etc/X11/cursors/whiteglass.theme f24b4a1b5e7754dbb60a831af8bc591a
+Description: X Window System client data
+ This package provides architecture-independent data for the X Window System,
+ including the locale data and a set of bitmap and pixmap image files commonly
+ used by X clients, including a set of cursor themes.
+ .
+ Architecture-independent X Keyboard Extension (XKB) data is found in the
+ xlibs package.
+
+Package: libgnutls7
+Status: install ok installed
+Priority: standard
+Section: libs
+Installed-Size: 396
+Maintainer: Matthias Urlichs <smurf@debian.org>
+Architecture: i386
+Source: gnutls7
+Version: 0.8.12-7
+Replaces: gnutls0, gnutls3, gnutls0.4
+Depends: libc6 (>= 2.3.2.ds1-4), libgcrypt1 (>> 1.1.11-0), liblzo1, libtasn1-0 (>= 0.1.1-2), zlib1g (>= 1:1.2.1)
+Suggests: gnutls-bin
+Conflicts: gnutls0, gnutls0.4
+Description: GNU TLS library - runtime library
+ gnutls is a portable library which implements the Transport Layer
+ Security (TLS) 1.0 and Secure Sockets Layer (SSL) 3.0 protocols.
+ .
+ Currently gnutls implements:
+ - the TLS 1.0 and SSL 3.0 protocols, without any US-export
+ controlled algorithms
+ - X509 Public Key Infrastructure (with several limitations).
+ - SRP for TLS authentication.
+ - TLS Extension mechanism
+ .
+ This package contains the runtime libraries.
+
+Package: libgnutls5
+Status: deinstall ok config-files
+Priority: standard
+Section: libs
+Installed-Size: 352
+Maintainer: Ivo Timmermans <ivo@debian.org>
+Source: gnutls5
+Version: 0.8.8-2
+Config-Version: 0.8.8-2
+Replaces: gnutls0, gnutls3, gnutls0.4
+Depends: libc6 (>= 2.3.1-1), libgcrypt1 (>> 1.1.11-0), liblzo1, libopencdk4, libpopt0 (>= 1.7), libtasn1-0 (>= 0.1.1-2), zlib1g (>= 1:1.1.4)
+Conflicts: gnutls0, gnutls0.4
+Description: GNU TLS library - runtime library
+ gnutls is a portable library which implements the Transport Layer
+ Security (TLS) 1.0 and Secure Sockets Layer (SSL) 3.0 protocols.
+ .
+ Currently gnutls implements:
+ - the TLS 1.0 and SSL 3.0 protocols, without any US-export
+ controlled algorithms
+ - X509 Public Key Infrastructure (with several limitations).
+ - SRP for TLS authentication.
+ - TLS Extension mechanism
+ .
+ This package contains the runtime libraries.
+
+Package: perl-doc
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 11940
+Maintainer: Brendan O'Dea <bod@debian.org>
+Architecture: all
+Source: perl
+Version: 5.8.4-2.2
+Replaces: perl-5.005-doc (<< 6), perl-5.6-doc (<< 6)
+Depends: perl (>= 5.8.4-1)
+Suggests: man-browser, groff
+Conflicts: perl-5.004-doc (<< 6), perl-5.005-doc (<< 6), perl-5.6-doc (<< 6)
+Description: Perl documentation.
+ Perl manual pages, POD documentation and the `perldoc' program. If you are
+ writing Perl programs, you almost certainly need this.
+
+Package: nxtunnel-client
+Status: install ok installed
+Priority: extra
+Section: x11
+Installed-Size: 44
+Maintainer: Peter Rockai (mornfall) <mornfall@danill.sk>
+Architecture: all
+Source: nx
+Version: 1.3.99.2-0
+Depends: ssh, xbase-clients, nxproxy
+Recommends: xserver
+Suggests: x-window-system-core
+Description: client portion of nxtunnel
+ NoMachine NX is the next-generation X compression and roundtrip suppression
+ scheme. It can operate remote X11 sessions over 56k modem dialup links or
+ anything better.
+ .
+ The nxtunnel is a simple script to create NX tunnels, analogous to ssh X
+ forwarding (beware though, it does not support encryption as of now!)
+ .
+ Install this package to create outbound nx connections to machines with
+ nxtunnel-server installed.
+
+Package: libgphoto2-2
+Status: install ok installed
+Priority: extra
+Section: libs
+Installed-Size: 2880
+Maintainer: christophe barbe <christophe@debian.org>
+Architecture: i386
+Source: libgphoto2
+Version: 2.1.4-6
+Depends: libc6 (>= 2.3.2.ds1-4), libexif10, libgphoto2-port0 (>= 2.1.4-6), libjpeg62
+Suggests: gphoto2 (>= 2.1.1), gtkam
+Conflicts: gphoto2 (<= 2.1.1)
+Description: The gphoto2 digital camera library
+ The gphoto2 library can be used by applications to access various
+ digital camera models.
+ The gphoto2 command-line frontend is now shipped separately.
+
+Package: kdeadmin-kfile-plugins
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 76
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeadmin
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: KDE File dialog plugins for deb and rpm files
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ File dialog plugins for deb and rpm package files.
+ .
+ This package is part of the official KDE admin module.
+
+Package: akregator
+Status: install ok installed
+Priority: extra
+Section: checkinstall
+Installed-Size: 968
+Maintainer: Pierre Habouzit <pierre.habouzit@m4x.org>
+Architecture: i386
+Version: 1.0-beta6-2
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libjpeg62, libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: RSS feed aggregator for KDE
+ aKregator is a fast, lightweight, and intuitive feed reader program for KDE.
+ It allows you to quickly browse through hundreds of thousands of internet feeds
+ in a quick, efficient, and familiar way.
+
+Package: libarts1-mpeglib
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1036
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdemultimedia
+Version: 4:3.3.0-1
+Replaces: libarts-mpeglib (<< 4:3.0.0)
+Depends: libarts1 (>= 1.3.0), libartsc0 (>= 1.3.0), libasound2 (>> 1.0.5), libaudio2, libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libcdparanoia0 (>= 3a9.8-11), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.1), libjack0.80.0-0 (>= 0.98.1), libmad0 (>= 0.15.1b), libogg0 (>= 1.1.0), libstdc++5 (>= 1:3.3.4-1), libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0), libxv1, mpeglib (>= 4:3.3.0)
+Conflicts: libarts-mpeglib (<< 4:3.0.0)
+Description: mpeglib is a mp3 and mpeg I video/audio library (Arts plugin)
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ mpeglib is a mp3 and mpeg I video/audio library for linux.
+ .
+ This is the arts (KDE Sound daemon) plugin.
+ .
+ This package is part of the official KDE multimedia module.
+
+Package: unzip
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 296
+Maintainer: Santiago Vila <sanvila@debian.org>
+Architecture: i386
+Version: 5.51-2
+Replaces: unzip-crypt (<< 5.41)
+Depends: libc6 (>= 2.2.4-4)
+Suggests: zip
+Conflicts: unzip-crypt (<< 5.41)
+Description: De-archiver for .zip files
+ InfoZIP's unzip program. With the exception of multi-volume archives
+ (ie, .ZIP files that are split across several disks using PKZIP's /& option),
+ this can handle any file produced either by PKZIP, or the corresponding
+ InfoZIP zip program.
+ .
+ This version supports encryption.
+
+Package: rcs
+Status: purge ok not-installed
+Priority: standard
+Section: devel
+Architecture: i386
+
+Package: archivemail
+Status: install ok installed
+Priority: optional
+Section: mail
+Installed-Size: 128
+Maintainer: Joey Hess <joeyh@debian.org>
+Architecture: all
+Version: 0.6.1-3
+Depends: python (>= 2.3), python (<< 3)
+Description: archive and compress your old email
+ Archivemail moves old mail out of a mailbox (in Maildir, MH, or
+ mbox format, or via IMAP) and archives it in a compressed mbox-format
+ mailbox file. It is well suited to be run from cron for automatic
+ archiving of your old mail.
+
+Package: xlibs-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 232
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: all
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Depends: libice-dev, libsm-dev, libx11-dev, libxext-dev, libxi-dev, libxmu-dev, libxmuu-dev, libxp-dev, libxpm-dev, libxrandr-dev, libxt-dev, libxtrap-dev, libxtst-dev, libxv-dev, pm-dev, x-dev, xlibs-static-dev
+Description: X Window System client library development files pseudopackage
+ This package smooths upgrades from Debian 3.0 by depending on libice-dev,
+ libsm-dev, libx11-dev, libxext-dev, libxi-dev, libxmu-dev, libxmuu-dev,
+ libxp-dev, libxpm-dev, libxrandr-dev, libxt-dev, libxtrap-dev, libxtst-dev,
+ libxv-dev, pm-dev, x-dev, and xlibs-static-dev. This pseudopackage is only
+ depended upon by packages that haven't yet corrected their dependencies to
+ reflect the new library arrangement.
+
+Package: zlib1g-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 576
+Maintainer: Mark Brown <broonie@debian.org>
+Architecture: i386
+Source: zlib
+Version: 1:1.2.1.2-1
+Provides: libz-dev
+Depends: zlib1g (= 1:1.2.1.2-1), libc6-dev | libc-dev
+Conflicts: zlib1-dev
+Description: compression library - development
+ zlib is a library implementing the deflate compression method found
+ in gzip and PKZIP. This package includes the development support
+ files.
+
+Package: libgnomeui32
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 1036
+Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Source: gnome-libs
+Version: 1.4.2-19
+Config-Version: 1.4.2-19
+Depends: gnome-libs-data (= 1.4.2-19), gdk-imlib1, libart2 (>= 1.2.13-5), libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libdb3 (>= 3.2.9-20), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libglib1.2 (>= 1.2.0), libgnome32 (>= 1.2.13-5), libgtk1.2 (>= 1.2.10-4), libice6 | xlibs (>> 4.1.0), libpopt0 (>= 1.7), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxi6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Description: The GNOME libraries (User Interface)
+ GNOME is a project to build a complete, user-friendly desktop based
+ entirely on free software.
+ .
+ This package contains the shared library for the base GNOME
+ library functions (User Interface functions).
+
+Package: libdps-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 984
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: dpsclient-dev
+Depends: libdps1 (= 4.3.0.dfsg.1-7), x-dev, libc6-dev | libc-dev
+Conflicts: dpsclient-dev
+Description: Display PostScript (DPS) client library development files
+ Header files and a static version of the DPS (Display PostScript) client
+ library are provided by this package.
+ .
+ See the libdps1 package for further information.
+
+Package: libhtml-tableextract-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 152
+Maintainer: Ross Peachey <rcp@debian.org>
+Version: 1.08-1
+Depends: perl (>= 5.6.0-16), libhtml-parser-perl
+Description: Perl module that simplifies extraction of information from HTML
+ HTML::TableExtract is a module that simplifies the extraction of information
+ contained in tables within HTML documents.
+
+Package: amarok
+Status: install ok installed
+Priority: extra
+Section: checkinstall
+Installed-Size: 2456
+Maintainer: Peter Rockai (mornfall) <mornfall@danill.sk>
+Architecture: i386
+Version: 1.0.2-1
+Depends: amarok-arts | amarok-gstreamer, kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libjpeg62, libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libtag1 (>= 1.2), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, xlibmesa-gl | libgl1, zlib1g (>= 1:1.2.1)
+Suggests: amarok-xmms
+Conffiles:
+ /etc/kde3/amarokrc f4ffec5373b5d4363203dce763ffcc27
+Description: versatile and easy to use audio player for KDE
+ amaroK tries to be a little different, providing a simple drag and drop
+ interface that really makes playlist handling easy.
+ .
+ Features include:
+ - fresh playlist concept, very fast to use, with drag and drop
+ - plays all formats supported by aRts, including mp3, ogg,
+ audio CDs, streams
+ - audio effects, like reverb and compressor
+ - compatible with the .m3u and .pls formats for playlists
+ - nice GUI, integrates into the KDE look, but with a unique touch
+ .
+ Both aRts and GStreamer support is available in packages amarok-arts and
+ amarok-gstreamer, respectively. NMM engine is not yet included.
+ .
+ The xmms visualisation support is available in package amarok-xmms.
+
+Package: kviewshell
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 536
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegraphics
+Version: 4:3.3.0-1.1
+Replaces: kview (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: KDE generic framework for viewer applications
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KDE generic framework for viewer applications
+ .
+ This package is part of the official KDE graphics module.
+
+Package: libguile-ltdl-1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 46
+Maintainer: Rob Browning <rlb@defaultvalue.org>
+Source: guile-1.6
+Version: 1.6.4-4
+Depends: libc6 (>= 2.3.2-1)
+Description: Guile's patched version of libtool's libltdl
+ Guile is a Scheme implementation designed for real world programming,
+ providing a rich Unix interface, a module system, an interpreter, and
+ many extension languages. Guile can be used as a standard #! style
+ interpreter, via #!/usr/bin/guile, or as an extension language for
+ other applications via libguile.
+
+Package: apt-zip
+Status: install ok installed
+Priority: extra
+Section: admin
+Installed-Size: 104
+Maintainer: Giacomo Catenazzi <cate@debian.org>
+Version: 0.13.2
+Depends: apt (>= 0.3.10)
+Conffiles:
+ /etc/apt/apt-zip.conf 364b9d8b45de67bbbd17dadddec023a2
+Description: Update a non-networked computer using apt and removable media
+ These scripts simplify the process of using dselect and apt on a
+ non-networked Debian box, using removable media like ZIP floppies.
+ One generates a `fetch' script (supporting backends such as wget and
+ lftp, in a modular, extensible way) to be run on a host with better
+ connectivity, check space constraints of your removable media, and
+ then install the package on your Debian box.
+ .
+ Note on current version: space-checking is not done and spanning
+ multiple disks is not yet supported.
+
+Package: keduca
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 796
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeedu
+Version: 4:3.2.3-2
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.4-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: kdeedu-data (>= 4:3.2.3-2)
+Suggests: khelpcenter, kdeedu-doc-html
+Description: interactive form-based tests for KDE
+ KEduca is a flash-card application which allows you to make
+ interactive form-based tests.
+ .
+ This package is part of the official KDE edutainment module.
+
+Package: dselect
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 460
+Origin: debian
+Maintainer: Dpkg Development <debian-dpkg@lists.debian.org>
+Bugs: debbugs://bugs.debian.org
+Architecture: i386
+Source: dpkg
+Version: 1.10.23
+Replaces: dpkg (<< 1.10.3)
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.4-1), libncurses5 (>= 5.4-1), libstdc++5 (>= 1:3.3.4-1)
+Conffiles:
+ /etc/dpkg/dselect.cfg 190f7cf843556324495ef12759b752e3
+Description: a user tool to manage Debian packages
+ dselect is the primary user interface for installing, removing and
+ managing Debian packages. It is a front-end to dpkg.
+
+Package: libsl0-kerberos4kth
+Status: deinstall ok config-files
+Priority: optional
+Section: net
+Installed-Size: 100
+Maintainer: Mikael Sennerholm <mikan@debian.org>
+Architecture: i386
+Source: krb4
+Version: 1.2.2-10
+Config-Version: 1.2.2-10
+Replaces: kerberos4kth1 (<< 1.1)
+Depends: libc6 (>= 2.3.2-1), libedit2 (>= 2.5.cvs.20010821-1)
+Conflicts: kerberos4kth1 (<< 1.1), kerberos4kth, arla (<< 0.35.5-2), libsl0-heimdal
+Description: Sl Libraries for Kerberos4 From KTH
+ Kerberos is a system for authenticating users and services on a network.
+ Kerberos is a trusted third-party service. That means that there is a
+ third party (the kerberos server) that is trusted by all the entities on
+ the network (users and services, usually called "principals").
+ .
+ This version is from Kungliga Tekniska Högskolan (the Royal Institute of
+ Technology in Stockholm, Sweden). It is based on the eBones version of MIT
+ Kerberos which was legally exported from the US by removing all encryption
+ hooks before export. It isn't covered by any patents and should be legal to
+ use anywhere encryption is legal at all.
+
+Package: gconf2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 4620
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Version: 2.6.4-2
+Replaces: libgconf2-4 (<< 1.1.10-2)
+Depends: libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libgconf2-4 (>= 2.6.4), libglib2.0-0 (>= 2.4.6), libgtk2.0-0 (>= 2.4.4), liborbit2 (>= 1:2.10.0), libpango1.0-0 (>= 1.4.1), libpopt0 (>= 1.7), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1)
+Conflicts: gconf (<< 1.0.6-4), libgconf11 (<< 1.0.9-2.1)
+Conffiles:
+ /etc/gconf/2/path b72872158ede6472f1d3b0d9f3ee1690
+Description: GNOME configuration database system. (daemon and tools, for GNOME2)
+ GConf is a configuration database system, functionally similar to the
+ Windows registry but lots better. :-) It's being written for the GNOME
+ desktop but does not require GNOME.
+ .
+ This package contains gconfd daemon and gconf tools binaries for GNOME2
+
+Package: artsbuilder
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 9132
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdemultimedia
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libarts1 (>= 1.3.0), libasound2 (>> 1.0.5), libaudio2, libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libfam0c102, libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), libidn11, libjack0.80.0-0 (>= 0.98.1), libmad0 (>= 0.15.1b), libogg0 (>= 1.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: Arts synthesizer designer
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This is the analog real-time synthesizer graphical design tool.
+ .
+ This package is part of the official KDE multimedia module.
+
+Package: kolourpaint
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 1796
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegraphics
+Version: 4:3.3.0-1.1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: A Simple Paint Program for KDE
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KolourPaint is a very simple paint program for KDE.
+ .
+ This package is part of the official KDE graphics module.
+
+Package: mime-support
+Status: install ok installed
+Priority: standard
+Section: net
+Installed-Size: 168
+Maintainer: Brian White <bcwhite@pobox.com>
+Architecture: all
+Version: 3.28-1
+Recommends: file (>= 3.27-3)
+Conflicts: a2ps (<< 4.10.4), metamail (<< 2.7-44)
+Conffiles:
+ /etc/mime.types b676ecbfc05d97dfce407ded62e5cbe8
+ /etc/mailcap.order ba07e08a7fe3741d0b8339127963190e
+Description: MIME files 'mime.types' & 'mailcap', and support programs
+ As these files can be used by all MIME compliant programs, they
+ have been moved into their own package that others can depend upon.
+ .
+ Other packages add themselves as viewers/editors/composers/etc by
+ using the provided "update-mime" program.
+ .
+ In addition, the commands "see", "edit", "compose", and "print"
+ will display, alter, create, and print (respectively) any file using
+ a program determined from the entries in the mime.types and mailcap
+ files.
+
+Package: alsa-base
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 228
+Maintainer: Debian ALSA Maintainers <pkg-alsa-devel@lists.alioth.debian.org>
+Architecture: all
+Source: alsa-driver
+Version: 1.0.5a-3
+Replaces: alsa-modules, alsa-base-0.4
+Provides: alsa
+Depends: psmisc, modutils (>= 2.3.5-1) | module-init-tools, debconf, alsa-utils (>= 1.0.2-2), debianutils (>= 1.6)
+Suggests: apmd (>= 3.0.2-1)
+Conflicts: alsa-base-0.4, alsa-modules, modutils (= 2.3.20-1), alsaconf (<< 0.4.3b-4), lsof-2.2 (<< 4.64)
+Conffiles:
+ /etc/hotplug/blacklist.d/alsa-base b2686df3efe52925a3b6d25882509ece
+ /etc/modutils/alsa-base 9c71224c2e614653bba6b78ac668c177
+ /etc/modprobe.d/alsa-base 5dcc3de6bd5a7aa0d15137f3e61954b2
+ /etc/apm/event.d/alsa 2d4e44d1dd697898f0604e2a8675993b
+ /etc/devfs/conf.d/alsa 78b43684d5cb91738349a1fc5bc432cd
+ /etc/init.d/alsa 008ff4adb5e9d09c86587696d17fadbf
+Description: ALSA sound driver common files
+ ALSA is an effort to create a modular sound system for Linux,
+ while maintaining full compatibility with OSS/Lite.
+ .
+ These are the common files to be used on ALSA such as the scripts used
+ to load and unload the modules at boot time. In addition, this package
+ is for mutex control between several ALSA versions.
+
+Package: pinfo
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 304
+Origin: debian
+Maintainer: Christian Kurz <shorty@debian.org>
+Bugs: debbugs://bugs.debian.org
+Version: 0.6.8-1
+Provides: info-browser
+Depends: libc6 (>= 2.3.2-1), libncurses5 (>= 5.3.20030510-1)
+Suggests: lynx, mutt
+Conffiles:
+ /etc/pinforc 0e42c2e8292a166ad0e189cf434e335d
+Description: An alternative info-file viewer
+ pinfo is an viewer for Info documents, which is based on ncurses.
+ The key-commands are in the style of lynx.
+
+Package: libxine0
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+
+Package: libxine1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 8392
+Maintainer: Siggi Langauf <siggi@debian.org>
+Architecture: i386
+Source: xine-lib
+Version: 1-rc5-1
+Replaces: xine-dvdnav
+Depends: libasound2 (>> 1.0.5), libc6 (>= 2.3.2.ds1-4), libfreetype6 (>= 2.1.5-1), libpng12-0 (>= 1.2.5.0-4), libspeex1, libxext6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Recommends: libogg0 (>= 1.1.0), libvorbis0a (>= 1.0.1), libxv1
+Suggests: libartsc0
+Conflicts: sinek (<< 0.7), xine-ui (<< 0.9.10)
+Description: the xine video/media player library, binary files
+ This is the xine media player library (libxine).
+ Libxine provides the complete infrastructure for a video/media player.
+ It supports MPEG 1/2 and some AVI and Quicktime videos out of the box,
+ so you can use it to play DVDs, (S)VCDs and most video files out there.
+ It supports network streams, subtitles and even mp3 or ogg files.
+ It's extensible to your heart's content via plugins for audio_out,
+ video_out, input media, demuxers (stream types), audio/video and
+ subtitle codecs.
+ Building a GUI (or text based) frontend around this should be quite easy.
+ The xine-ui package provides one for your convenience, so you can just
+ start watching your VCDs ;-)
+
+Package: libgtkxmhtml1
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 416
+Maintainer: Christian Marillat <marillat@debian.org>
+Source: gnome-libs
+Version: 1.4.1.4-3
+Config-Version: 1.4.1.4-3
+Depends: libc6 (>= 2.2.4-4), libglib1.2 (>= 1.2.0), libgtk1.2 (>= 1.2.10-4), libjpeg62, libpng2 (>= 1.0.12), xlibs (>> 4.1.0), zlib1g (>= 1:1.1.4)
+Description: The Gnome gtkxmhtml (HTML) widget
+ Gnome is the "GNU Network Object Model Environment"
+ .
+ It is a project to build a complete, user-friendly desktop based
+ entirely on free software.
+ .
+ This package contains the shared library for the gtkxmhtml widget,
+ which is used to render HTML pages.
+
+Package: apt-proxy
+Status: deinstall ok config-files
+Priority: extra
+Section: admin
+Installed-Size: 220
+Maintainer: Otavio Salvador <otavio@debian.org>
+Architecture: all
+Version: 1.9.15
+Config-Version: 1.9.15
+Replaces: apt-proxy-v2 (<= 1.9.5)
+Depends: debconf (>= 0.5.00), python (>= 2.3), python (<< 2.4), python-twisted, python-apt (>= 0.5.8), bzip2
+Suggests: rsync
+Conflicts: apt-proxy-v2 (<= 1.9.5)
+Conffiles:
+ /etc/default/apt-proxy 6a4d2d7cab3d2f5dff0c214c4add6d96
+ /etc/init.d/apt-proxy 0b95b53853bf5c98d3e7a56914e766bc
+ /etc/apt-proxy/apt-proxy-v2.conf 0529dba0a195c78cbe40ecc46d52c140
+ /etc/logrotate.d/apt-proxy 1c18a07b6a105db92e1e1982e4e69980
+Description: Debian archive proxy and partial mirror builder development
+ This is version 2 of apt-proxy which will, when ready, replace apt-proxy v1.
+ .
+ apt-proxy automatically builds a Debian HTTP mirror based
+ on requests which pass through the proxy. It's great for
+ multiple Debian machines on the same network with a slower
+ internet link.
+ .
+ The archive is automatically kept up to date using http,
+ ftp or rsync. Cache cleaning of unused and old versions
+ is configurable. You can also import the contents of
+ your apt cache into the archive using apt-proxy-import.
+ .
+ For more information, see the apt-proxy homepage at
+ http://apt-proxy.sourceforge.net
+ .
+ The suggested packages are needed for the following
+ features: rsync for rsyncd backends, and
+ dpkg-dev for apt-proxy-import.
+
+Package: x2x
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 72
+Maintainer: Randolph Chung <tausq@debian.org>
+Version: 1.27-8
+Depends: libc6 (>= 2.2.5-13), xlibs (>> 4.1.0)
+Description: Link two X displays together, simulating a multiheaded display
+ x2x joins a pair of X displays together, as if they were a single
+ multiheaded display. The pointer can be warped between displays,
+ or, depending on how you start x2x, can slide from one display to the
+ other when it runs off the edge of the screen. Keyboard focus also
+ moves between displays in the way you'd expect, and the X selection
+ propagates around. At least one of the displays involved (specifically,
+ the one being controlled remotely) must support the XTEST extension.
+ (The servers shipped by Debian support this.)
+ .
+ x2x is useful when you have two displays on the same desk, as you can use
+ a single keyboard and mouse to control both. If you want to propagate
+ your selections between displays which are not sharing a desk, you might
+ be more interested in the package propsel. Propsel does not link the
+ displays' keyboard and mouse, which would be confusing in some cases,
+ and can propagate between up to 8 displays, whereas x2x can handle only
+ two at a time.
+
+Package: libpm3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 3810
+Maintainer: Mike Goldman <whig@debian.org>
+Source: pm3
+Version: 1.1.15-1
+Depends: libc6 (>= 2.2.3-7)
+Description: Polytechnique Montreal Modula-3 Libraries
+ The Modula-3 distribution of Ecole Polytechnique de Montreal is based
+ on the DEC SRC Modula-3 programming environment. Programs built with
+ PM3 require this library.
+
+Package: cl-asdf
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 208
+Maintainer: Kevin M. Rosenberg <kmr@debian.org>
+Architecture: all
+Version: 1.86-1
+Recommends: common-lisp-controller, sbcl | lisp-compiler
+Description: Another System Definition Facility
+ asdf provides a "make" type functions for Common Lisp packages. It
+ provides compilation and loading features for complex Lisp systems
+ with multiple modules and files. It is similar in concept to, but
+ with features different from, "defsystem" which is included in the
+ common-lisp-controller package. Unlike defsystem3 in CLC, asdf is
+ object-oriented and extensible.
+
+Package: ldap-gateways
+Status: install ok installed
+Priority: extra
+Section: net
+Installed-Size: 232
+Maintainer: Wichert Akkerman <wakkerma@debian.org>
+Source: openldap2
+Version: 2.0.23-6.3
+Depends: libc6 (>= 2.2.4-4), libldap2 (>= 2.0.23-1), libsasl7
+Conflicts: openldap-gateways
+Description: OpenLDAP Gateways
+ These programs provide directory interaction (gateways) with your
+ existing servers. They include fax, finger, gopher and mail gateways,
+ aswell as some useful utilities.
+
+Package: kcharselect
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 152
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeutils
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE character selector
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ A Character set selector for KDE.
+ .
+ This package is part of the official KDE utils module.
+
+Package: libnss3
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+
+Package: xml-core
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 224
+Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs@lists.alioth.debian.org>
+Architecture: all
+Version: 0.09
+Depends: perl, sgml-base (>= 1.17)
+Suggests: debhelper (>= 4.1.75)
+Description: XML infrastructure and XML catalog file support
+ This package creates the XML infrastructure directories and provides
+ XML catalog file support in compliance with the current Debian XML
+ Policy draft:
+ .
+ * infrastructure directories:
+ - /etc/xml
+ - /usr/share/xml/{declaration,entities,misc,schema}
+ - /usr/share/local/xml/{declaration,entities,misc,schema}
+ .
+ * XML catalog schema: OASIS XML Catalog Committee Specification 1.0
+ .
+ * update-xmlcatalog(8): tool for maintaining the root XML catalog
+ file and the package XML catalog files in the '/etc/xml' directory
+ as well as local XML catalog files.
+ .
+ * dh_installxmlcatalogs(1): debhelper tool for installing local XML
+ catalog files and registering XML entities in package XML catalog
+ files and the root XML catalog file (requires debhelper package)
+
+Package: kernel-package
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 1148
+Maintainer: Manoj Srivastava <srivasta@debian.org>
+Architecture: all
+Version: 8.094
+Depends: perl, dpkg (>= 1.4), dpkg-dev (>= 1.4.0.9), gcc | c-compiler, make
+Recommends: libc6-dev | libc-dev
+Suggests: kernel-source, libdb3-dev, libncurses-dev, docbook-utils
+Conffiles:
+ /etc/kernel-pkg.conf 659bbb163cef7c5e2953ced0b3b2d6a1
+ /etc/bash_completion.d/make_kpkg 961db89fd1206546b1dfb1624fb130d2
+Description: A utility for building Linux kernel related Debian packages.
+ This package provides the capability to create a debian kernel-image
+ package by just running make-kpkg kernel_image in a kernel source
+ directory tree. It can also package the relevant kernel headers into
+ a kernel-headers package. In general, this package is very useful if
+ you need to create a custom kernel, if, for example, the default
+ kernel does not support some of your hardware, or you wish a leaner,
+ meaner kernel. It also scripts the steps that need be taken to
+ compile the kernel, which is quite convenient (forgetting a crucial
+ step once was the initial motivation for this package). Please look at
+ /usr/share/doc/kernel-package/Rationale.gz for a full list of advantages
+ of this package.
+ .
+ If you are running on an intel x86 platform, and you wish to compile a
+ custom kernel (why else are you considering this package?), then you may
+ need the package bin86 as well. (This is not required on other platforms).
+
+Package: libwxgtk2.4
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 5620
+Maintainer: Ron Lee <ron@debian.org>
+Architecture: i386
+Source: wxwindows2.4
+Version: 2.4.2.6
+Replaces: wxgtk2.1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libglib1.2 (>= 1.2.0), libgtk1.2 (>= 1.2.10-4), libjpeg62, libpng10-0 (>= 1.0.15-4), libstdc++5 (>= 1:3.3.4-1), libtiff4, libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxi6 | xlibs (>> 4.1.0), xlibmesa-gl | libgl1, xlibmesa-glu | libglu1, zlib1g (>= 1:1.2.1)
+Description: wxWindows Cross-platform C++ GUI toolkit (GTK+ runtime)
+ wxWindows is a class library for C++ providing GUI (Graphical User
+ Interface) and other facilities on more than one platform. Version 2.4
+ currently supports subsets of GTK+, Motif, and MS Windows.
+ .
+ This package provides the shared libraries needed to run programs linked
+ against wxWindows. To use the (optional) glcanvas library you will need
+ to have Mesa or OpenGL installed.
+
+Package: liblcms
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 188
+Maintainer: Luis Arocha <data@debian.org>
+Source: lcms
+Version: 1.08-3
+Config-Version: 1.08-3
+Depends: libc6 (>= 2.2.4-4)
+Description: Color management library
+ lcms deals with color management stuff.
+ lcms is a CMM engine.
+ Implements fast transforms between ICC profiles.
+ lcms is a library FOR PROGRAMMERS ONLY.
+ lcms is a standalone engine.
+ lcms intends to be PORTABLE across several platforms.
+ lcms is distributed under GNU Lesser license agreement.
+
+Package: cron
+Status: install ok installed
+Priority: important
+Section: admin
+Installed-Size: 272
+Maintainer: Steve Greenland <stevegr@debian.org>
+Architecture: i386
+Version: 3.0pl1-86
+Depends: libc6 (>= 2.3.2.ds1-4), libpam0g (>= 0.76), debianutils (>= 1.7), adduser
+Recommends: exim4 | postfix | mail-transport-agent
+Suggests: anacron (>= 2.0-1), logrotate, lockfile-progs, checksecurity
+Conflicts: suidmanager (<< 0.50), lockfile-progs (<< 0.1.7)
+Conffiles:
+ /etc/crontab b16c871ad13d4d7c44d610ef1546c194
+ /etc/init.d/cron c323a0f1879c386ef44747110e3b5b06
+ /etc/cron.daily/standard c3df5f1fe5cc4d5f5bc836c0d80f81df
+ /etc/cron.monthly/standard 597fcd12507f76fb847cc0174ad98b63
+ /etc/pam.d/cron b0578d348356cd0d046e37782419ea1d
+ /etc/cron.hourly/.placeholder e5e12910bf011222160404d7bdb824f2
+ /etc/cron.daily/.placeholder e5e12910bf011222160404d7bdb824f2
+ /etc/cron.weekly/.placeholder e5e12910bf011222160404d7bdb824f2
+ /etc/cron.monthly/.placeholder e5e12910bf011222160404d7bdb824f2
+ /etc/cron.d/.placeholder e5e12910bf011222160404d7bdb824f2
+Description: management of regular background processing
+ cron is a background process (`daemon') that runs programs at regular
+ intervals (for example, every minute, day, week or month); which
+ processes are run and at what times are specified in the `crontab'.
+ .
+ Users may also install crontabs so that processes are run on
+ their behalf, though this feature can be disabled or restricted to
+ particular users.
+ .
+ Output from the commands is usually mailed to the system administrator
+ (or to the user in question); you should probably install a mail system
+ as well so that you can receive these messages.
+ .
+ This cron package is configured by default to do various standard
+ system maintenance tasks, such as ensuring that logfiles do not
+ grow endlessly and overflow the disk.
+ .
+ The lockfile-progs package is only a "Suggests" because of the poor
+ way that dselect handles "Recommends", but I do strongly suggest that
+ you install it; it prevents /etc/cron.daily/standard from running multiple
+ times if something gets jammed.
+
+Package: funny-manpages
+Status: install ok installed
+Priority: optional
+Section: doc
+Installed-Size: 140
+Maintainer: Pawel Wiecek <coven@debian.org>
+Version: 1.3-5
+Suggests: asr-manpages (>= 1.3-4)
+Description: more funny manpages
+ A set of miscellaneous humorous manpages (don't take them too seriously!).
+ Includes, amongst others, rtfm (1).
+ Warning! Some of these manpages might be treated offensive.
+ You've been warned.
+
+Package: libtest-unit-ruby
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 48
+Maintainer: Fumitoshi UKAI <ukai@debian.or.jp>
+Architecture: all
+Source: ruby-defaults (1.8.1-8)
+Version: 0.1.8+ruby1.8-8
+Depends: libtest-unit-ruby1.8 (>= 1.8.1), libtest-unit-ruby1.8 (<< 1.8.2)
+Description: unit-testing framework for the Ruby language
+ This allows you to easily and flexibly write testing code for your
+ Ruby classes and modules. The general idea behind unit testing is that
+ you write a test method that makes certain assertions about your code,
+ working against a test fixture. A bunch of these test methods are
+ bundled up into a test suite and can be run any time the developer
+ wants. The results of a run are gathered in a test result and displayed
+ to the user through some UI. Test::Unit also has a compatibility layer
+ for RubyUnit, the old unit testing framework for Ruby.
+ .
+ Because the Ruby/GTK package in Debian does not support Ruby 1.8, the
+ GTK test runner is disabled for this package. The Fox test runner is also
+ unavailable because Ruby's Fox module has not been packaged for Debian.
+ .
+ This package is a dependency package, which depends on Debian's default
+ Ruby version (currently 1.8.x).
+
+Package: clanbomber
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 350
+Maintainer: Martin Pitt <mpitt@debian.org>
+Architecture: i386
+Version: 1.05-2
+Config-Version: 1.05-2
+Depends: clanbomber-data (= 1.05-2), hermes1 (>= 1.3.2-5), libc6 (>= 2.3.2.ds1-4), libclan2-mikmod (>= 0.6.5-1), libclan2-sound (>= 0.6.5-1), libclanlib2 (>= 0.6.5-1), libgcc1 (>= 1:3.3.3-1), libstdc++5 (>= 1:3.3.3-1), zlib1g (>= 1:1.2.1)
+Description: Bomberman like game
+ The players move through a 2D maze and are able to drop bombs. The
+ goal of ClanBomber is to blow away your opponents, but avoid being
+ blown up yourself. To make the game more interesting it is possible
+ to collect powerups that are revealed by blasting away boxes.
+ .
+ Features include:
+ .
+ * Nice graphics and sound
+ * Fullscreen when your X server supports resolution 800x600
+ * Powerups and diseases
+ * Up to eight players; up to three of them can be human, the others
+ are computer controlled
+ * Steering by keyboard
+ * Level editor
+
+Package: acroread-debian-files
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 156
+Maintainer: Christian Marillat <marillat@debian.org>
+Architecture: all
+Version: 0.0.6
+Replaces: acroread (<= 5.08-woody0.1)
+Depends: acroread
+Recommends: mime-support
+Conffiles:
+ /etc/X11/app-defaults/AcroRead 90cb13b601bb26cf6a7c087c289f426d
+Description: Debian specific parts of Adobe Acrobat Reader
+ This package contains extra files supplied by Debian that are not part of
+ the upstream source:
+ .
+ - manpage
+ - README.Debian
+ - Debian menu file
+ - MIME types
+ - Startup script (/usr/bin/acroread)
+ - Xresources file
+
+Package: libgnome-keyring0
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 76
+Maintainer: Ondřej Surý <ondrej@debian.org>
+Architecture: i386
+Source: gnome-keyring
+Version: 0.2.1-2
+Config-Version: 0.2.1-2
+Depends: libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.4.1), gnome-keyring (= 0.2.1-2)
+Description: GNOME keyring services library
+ gnome-keyring is a daemon in the session, similar to ssh-agent,
+ and other applications can use it to store passwords and other
+ sensitive informations.
+ .
+ The program can manage several keyrings, each with its own master
+ password, and there is also a session keyring which is never stored to
+ disk, but forgotten when the session ends.
+ .
+ This package contains shared libraries for GNOME.
+
+Package: libmpeg1
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+
+Package: gnomemeeting
+Status: deinstall ok config-files
+Priority: optional
+Section: gnome
+Installed-Size: 7232
+Maintainer: Jose Carlos Garcia Sogo <jsogo@debian.org>
+Architecture: i386
+Version: 1.0.2-4
+Config-Version: 1.0.2-4
+Depends: libart-2.0-2 (>= 2.3.16), libatk1.0-0 (>= 1.6.0), libaudiofile0 (>= 0.2.3-4), libbonobo2-0 (>= 2.6.2), libbonoboui2-0 (>= 2.5.4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libgcc1 (>= 1:3.4.1-3), libgconf2-4 (>= 2.6.2), libglib2.0-0 (>= 2.4.1), libgnome2-0 (>= 2.6.1.1), libgnomecanvas2-0 (>= 2.6.0), libgnomeui-0 (>= 2.6.0), libgnomevfs2-0 (>= 2.6.0), libgtk2.0-0 (>= 2.4.4), libice6 | xlibs (>> 4.1.0), libldap2 (>= 2.1.17-1), libopenh323-1.13.2 (>= 1.13.5), liborbit2 (>= 1:2.10.0), libpango1.0-0 (>= 1.4.0), libpopt0 (>= 1.7), libpt-1.6.3, libsdl1.2debian (>> 1.2.7-0), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1), gconf2 (>= 2.6.2-1), libpt-plugins-alsa | libpt-plugins-oss, libpt-plugins-v4l | libpt-plugins-avc | libpt-plugins-dc
+Recommends: libpt-plugins-v4l, libpt-plugins-avc, libpt-plugins-dc
+Description: The GnomeMeeting Voice Over IP Suite
+ H.323 compatible videoconferencing and VOIP/IP-Telephony application
+ that allows you to make audio and video calls to remote users with
+ H.323 hardware or software (such as Microsoft Netmeeting).
+ .
+ It supports all modern videoconferencing features, such as registering
+ to an ILS directory, gatekeeper support, making multi-user conference
+ calls using an external MCU, using modern Quicknet telephony cards,
+ and making PC-To-Phone calls.
+
+Package: xlibmesa4-glu
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 640
+Maintainer: Daniel Stone <dstone@trinity.unimelb.edu.au>
+Source: xfree86
+Version: 4.3.0-0ds3
+Config-Version: 4.3.0-0ds3
+Replaces: mesag3 (<< 5.0.0-1), xlibmesa3, xlibmesa4
+Provides: libglu1
+Depends: libc6 (>= 2.2.4-4), libstdc++2.10-glibc2.2 (>= 1:2.95.4-0.010810)
+Conflicts: libglu1
+Description: Mesa OpenGL utility library [XFree86]
+ The OpenGL utility library (GLU) offers simple interfaces for building
+ mipmaps; checking for the presence of extensions in the OpenGL (or other
+ libraries which follow the same conventions for advertising extensions);
+ drawing piecewise linear curves, NURBS, quadrics and other primitives
+ (including, but not limited to, teapots); tesselating surfaces; setting up
+ projection matrices and unprojecting screen coordinates to world coordinates.
+ .
+ XFree86 maintains its own version of the Mesa libraries; see the xlibmesa3-gl
+ package for more information.
+ .
+ This package was built using version 1.02 of the C++ ABI.
+
+Package: imagemagick
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 4681
+Maintainer: Ryuichi Arafune <arafune@debian.org>
+Architecture: i386
+Version: 5:6.0.7.1-1
+Replaces: imagemagick-doc, geomview (<= 1.8.0)
+Depends: libmagick6 (= 5:6.0.7.1-1)
+Suggests: gs, html2ps, lpr
+Conflicts: imagemagick-doc
+Description: Image manipulation programs
+ Imagemagick is a set of programs to manipulate various image formats
+ (JPEG, TIFF, PhotoCD, PBM, XPM, etc...). All manipulations can
+ be achieved through shell commands as well as through a X11 graphical
+ interface (display).
+ .
+ Possible effects: colormap manipulation, channel operations, thumbnail
+ creation, image annotation, limited drawing, image distortion, etc...
+ .
+ This package suggests a postscript interpreter (gs) to read postscript
+ files. It will however function happily without it (as long as you don't
+ want to read postscript).
+
+Package: libkdenetwork2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 876
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Replaces: kgpgcertmanager (<< 4:3.2.0), kmail (<< 4:3.2.0), knode (<< 4:3.2.0)
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1), perl
+Description: KDE Network library
+ This is the runtime package for programs that use the libkdenetwork library.
+ .
+ This package is part of the official KDE pim module.
+
+Package: libedit2
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 152
+Maintainer: Pawel Wiecek <coven@debian.org>
+Architecture: i386
+Source: libedit
+Version: 2.6.cvs.20020109-7
+Config-Version: 2.6.cvs.20020109-7
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.3.20030510-1)
+Description: BSD editline and history libraries
+ The editline library provides generic line editing and
+ history functions.
+ .
+ It slightly resembles GNU readline
+
+Package: libxtst6
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 320
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4), libxext6 | xlibs (>> 4.1.0)
+Conflicts: xlibs (<< 4.3.0)
+Description: X Window System event recording and testing extension library
+ libXTrap provides an X Window System client interface to the RECORD and XTEST
+ extensions to the X protocol. Note that an alternative interface to the
+ XTEST protocol extension is provided by libXext, in the libext6 package.
+
+Package: libgnome2-0
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 214
+Maintainer: Ondřej Surý <ondrej@debian.org>
+Architecture: i386
+Source: libgnome
+Version: 2.6.1.1-1
+Config-Version: 2.6.1.1-1
+Depends: libaudiofile0 (>= 0.2.3-4), libbonobo2-0 (>= 2.6.2), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libgconf2-4 (>= 2.6.2), libgcrypt11, libglib2.0-0 (>= 2.4.1), libgnomevfs2-0 (>= 2.6.0), libgnutls11 (>= 1.0.16), libgpg-error0 (>= 0.7), liborbit2 (>= 1:2.10.0), libpopt0 (>= 1.7), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1), libgnome2-common (>= 2.6.1.1), libgnome2-common (<< 2.6.1.1.0-0)
+Description: The GNOME 2 library - runtime files
+ This package contains the shared library for the base GNOME library
+ functions.
+
+Package: dovecot-imapd
+Status: install ok installed
+Priority: optional
+Section: mail
+Installed-Size: 564
+Maintainer: Jaldhar H. Vyas <jaldhar@debian.org>
+Architecture: i386
+Source: dovecot
+Version: 0.99.11-2
+Provides: imap-server
+Depends: libc6 (>= 2.3.2.ds1-4), libssl0.9.7, dovecot-common (>= 0.99.10-5)
+Conflicts: imap-server
+Description: A secure IMAP server that supports mbox and maildir mailboxes
+ Dovecot is a mail server whose major goals are security and extreme
+ reliability. It tries very hard to handle all error conditions and verify
+ that all data is valid, making it nearly impossible to crash. It should
+ also be pretty fast, extensible, and portable.
+ .
+ This package contains the dovecot IMAP server.
+
+Package: libcdparanoia0
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 172
+Maintainer: Aaron Lehmann <aaronl@vitelus.com>
+Source: cdparanoia
+Version: 3a9.8-11
+Replaces: libcdparanoia
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libcdparanoia
+Description: Shared libraries for cdparanoia (runtime lib)
+ An audio extraction tool for sampling CDs. Unlike similar programs such
+ as cdda2wav, cdparanoia goes to great lengths to try to extract the audio
+ information without any artifacts such as jitter.
+
+Package: kdevelop
+Status: deinstall ok config-files
+Priority: optional
+Section: devel
+Installed-Size: 3480
+Maintainer: Norman Jordan <njordan@debian.org>
+Version: 4:2.1.5.1-6
+Config-Version: 4:2.1.5.1-6
+Replaces: kdevelop-doc
+Depends: kdelibs4 (>= 4:3.1.5), libart-2.0-2 (>= 2.3.8), libaudio2, libc6 (>= 2.3.2.ds1-4), libfam0c102, libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.3.2-1), libice6 | xlibs (>> 4.1.0), libjpeg62, libpcre3 (>= 4.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.2-1), libx11-6 | xlibs (>> 4.1.0), libxcursor1, libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxmu6 | xlibs (>> 4.1.0), libxrender1, libxt6 | xlibs (>> 4.1.0), xlibmesa-gl | libgl1, zlib1g (>= 1:1.2.1), autoconf, automake1.6 | automake1.7, kdevelop-data
+Recommends: make, kdevelop-doc
+Suggests: libqt3-mt-dev, qt3-doc, kdbg, kdelibs4-dev, kdebase, libarts1-dev, kdelibs4-doc, htdig, doxygen | kdoc, gettext, sgmltools-lite, linuxdoc-tools, a2ps, enscript, gv, qt3-designer | kde-designer, qt3-dev-tools, ark, kpaint, qt3-linquist | kbabel, kiconedit, gdb, kdesdk, graphviz, c-cpp-reference, ebook-dev-kde20, dh-make
+Conffiles:
+ /etc/kde3/kdeveloprc 6f0b81fe6c407457fd8c5a89c84443bf
+ /etc/kde3/kdeveloprc 6f0b81fe6c407457fd8c5a89c84443bf
+Description: An IDE for Unix/X11
+ KDevelop is an easy to use Integrated Development Environment
+ for developing C/C++ applications under X11. It features
+ project management, an advanced editor, a class browser
+ and an integrated debugger.
+ .
+ The application wizard can generate fully functional projects
+ for terminal programs and GUI programs using Qt, KDE or GNOME.
+
+Package: libsasl7
+Status: install ok installed
+Priority: important
+Section: libs
+Installed-Size: 217
+Maintainer: Dima Barsky <dima@debian.org>
+Source: cyrus-sasl
+Version: 1.5.28-6.1
+Depends: libc6 (>= 2.3.2-1), libdb3 (>= 3.2.9-19), libpam0g (>= 0.76), libdb3-util
+Suggests: libsasl-digestmd5, libsasl-modules-plain
+Description: Authentication abstraction library
+ This is the Cyrus SASL API implementation. It can be used on the client
+ or server side to provide authentication. See RFC 2222 for more
+ information.
+ .
+ Any of: ANONYMOUS, CRAM-MD5, DIGEST-MD5, GSSAPI (MIT Kerberos 5 or Heimdal
+ Kerberos 5), KERBEROS_V4, PLAIN, or LOGIN can be used.
+
+Package: libsasl2
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 524
+Maintainer: Dima Barsky <dima@debian.org>
+Architecture: i386
+Source: cyrus-sasl2
+Version: 2.1.19-1.1
+Depends: libc6 (>= 2.3.2.ds1-4), libdb4.2
+Recommends: libsasl2-modules (= 2.1.19-1.1)
+Conflicts: libsasl2-gssapi-mit (<< 2.1.18), libsasl2-krb4-mit (<< 2.1.18)
+Description: Authentication abstraction library
+ SASL is the Simple Authentication and Security Layer, a method for
+ adding authentication support to connection-based protocols. To use
+ SASL, a protocol includes a command for identifying and
+ authenticating a user to a server and for optionally negotiating
+ protection of subsequent protocol interactions. If its use is
+ negotiated, a security layer is inserted between the protocol and the
+ connection. See RFC 2222 for more information.
+ .
+ This is the Cyrus SASL API implementation, version 2.
+ .
+ Any of: ANONYMOUS, CRAM-MD5, DIGEST-MD5, GSSAPI (MIT Kerberos 5 or Heimdal
+ Kerberos 5), KERBEROS_V4, OTP, PLAIN, or LOGIN can be used. This package
+ is unusable without the SASL plugins. Most likely you will need to install
+ the libsasl2-modules package.
+
+Package: ircp
+Status: install ok installed
+Priority: optional
+Section: comm
+Installed-Size: 37
+Maintainer: Henning Glawe <glaweh@debian.org>
+Architecture: i386
+Version: 0.3-2
+Depends: libc6 (>= 2.3.2.ds1-4), libopenobex-1.0-0 (>= 1.0.0-rel)
+Description: Utility for "beaming" files via IRDA
+ ircp transfers files to/from Linux, Windows and PDAs
+ via IRDA. It is designed for working e.g. with Quickbeam.
+
+Package: blt
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 4928
+Maintainer: Chris Waters <xtifr@debian.org>
+Architecture: i386
+Version: 2.4z-3
+Replaces: blt4.2, blt8.0-unoff, blt8.0, blt-common, blt-dev (<< 2.4z-3), blt-demo (<< 2.4i-1)
+Provides: blt-common
+Depends: libc6 (>= 2.3.2.ds1-4), libx11-6 | xlibs (>> 4.1.0), tcl8.4 (>= 8.4.5) | tcl8.3 (>= 8.3.5) | tcl8.0 (>= 8.0.4), tk8.4 (>= 8.4.5) | tk8.3 (>= 8.3.5) | tk8.0 (>= 8.0.5)
+Suggests: blt-demo
+Conflicts: blt4.2, blt8.0-unoff, blt8.0, blt-common
+Description: the BLT extension library for Tcl/Tk - run-time package
+ BLT is a library of useful extensions for the Tcl language and the
+ popular Tk graphical toolkit. It adds a vector and tree data type,
+ background execution and some debugging tools to Tcl, and provides
+ several new widgets for Tk, including graphs, bar-charts, trees, tabs,
+ splines and hyper-links, as well as a new geometry manager, drag &
+ drop support, and more.
+ .
+ This package contains everything you need to use BLT with your Tcl/Tk
+ scripts and Tcl/Tk-enabled apps.
+ .
+ Homepage: http://blt.sourceforge.net/
+
+Package: nano
+Status: install ok installed
+Priority: important
+Section: editors
+Installed-Size: 1012
+Maintainer: Jordi Mallach <jordi@debian.org>
+Architecture: i386
+Version: 1.2.4-2
+Replaces: pico
+Provides: editor
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1)
+Suggests: spell
+Conflicts: nano-tiny (<= 1.0.0-1), pico
+Conffiles:
+ /etc/nanorc ffc097996eb5c45823848662a41b9db6
+Description: free Pico clone with some new features
+ GNU nano is a free replacement for Pico, the default Pine editor. Pine is
+ copyrighted under a slightly restrictive license, that makes it unsuitable
+ for Debian's main section. GNU nano is an effort to provide a Pico-like
+ editor, but also includes some features that were missing in the original,
+ such as 'search and replace', 'goto line' or internationalization support.
+
+Package: karm
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 724
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkcal2 (>= 4:3.3.0), libkdepim1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0)
+Description: KDE time tracker tool
+ KArm is a time tracker for busy people who need to keep track of the amount of
+ time they spend on various tasks.
+ .
+ This package is part of the official KDE pim module.
+
+Package: aspell
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 64
+Maintainer: Brian Nelson <pyro@debian.org>
+Architecture: all
+Version: 0.50.5-3
+Depends: aspell-bin, aspell-en | aspell-dictionary
+Description: GNU Aspell spell-checker
+ GNU Aspell is a spell-checker which can be used either as a standalone
+ application or embedded in other programs. Its main feature is that it
+ does a much better job of suggesting possible spellings than just about
+ any other spell-checker available for the English language, including
+ Ispell and Microsoft Word. It also has many other technical
+ enhancements over Ispell such as using shared memory for dictionaries
+ and intelligently handling personal dictionaries when more than one
+ Aspell process is open at once.
+ .
+ Aspell is designed to be a drop-in replacement for Ispell.
+ .
+ This is a meta-package for installing the GNU Aspell standalone
+ utilities along with an Aspell dictionary.
+ .
+ Homepage: http://aspell.net/
+
+Package: dict
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 208
+Maintainer: Kirk Hilliard <kirk@debian.org>
+Architecture: i386
+Source: dictd
+Version: 1.9.14-2
+Provides: dict-client
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1), netbase, recode
+Suggests: dictd | dict-server
+Conffiles:
+ /etc/dictd/dict.conf 34b8488d33c4a3bd437962e096370e30
+Description: Dictionary Client
+ dict is the client that queries the dictd server. Since it is TCP
+ based, it can access servers on the local host, on a local network,
+ or on the Internet.
+ .
+ The DICT Development Group maintains several public servers which can
+ be accessed from any machine connected to the Internet. The default
+ configuration is to query one of these servers first, but this may be
+ changed in the configuration file /etc/dict.conf.
+ .
+ Queries may be customized by numerous command line options, including
+ specifying the database(s) to be queried and the search strategy to
+ be used.
+ .
+ dict includes dictl, which simplifies using utf-8 encoded dictionaries
+ with terminals that do not support utf-8.
+
+Package: freeciv-data
+Status: purge ok not-installed
+Priority: optional
+Section: games
+Architecture: all
+
+Package: librpm4
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 768
+Maintainer: Anibal Monsalve Salazar <A.Monsalve.Salazar@IEEE.org>
+Architecture: i386
+Source: rpm
+Version: 4.0.4-29
+Replaces: rpm (<< 2.5), librpm1 (<< 4.0), librpm0
+Depends: libbz2-1.0, libc6 (>= 2.3.2.ds1-4), libdb3 (>= 3.2.9-20), zlib1g (>= 1:1.2.1)
+Conflicts: rpm (<< 4.0.2), librpm1 (<< 4.0), librpm0, kpackage (<< 4:2.2.2-8), rpm2html (<< 1.7-3), kleandisk (<< 2.1-beta2-2)
+Description: RPM shared library
+ This library allows programs to make use of a rpm database or rpm packages
+ without going through the rpm program.
+
+Package: mozilla-firefox
+Status: deinstall ok config-files
+Priority: optional
+Section: web
+Installed-Size: 29460
+Maintainer: Eric Dorland <eric@debian.org>
+Architecture: i386
+Version: 0.8-12
+Config-Version: 0.8-12
+Provides: www-browser
+Depends: fontconfig, psmisc, libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.3.3-1), libglib2.0-0 (>= 2.4.1), libgtk2.0-0 (>= 2.4.1), libidl0, libjpeg62, libpango1.0-0 (>= 1.4.0), libpng12-0 (>= 1.2.5.0-4), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxp6 | xlibs (>> 4.1.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Recommends: xprt-xprintorg
+Suggests: latex-xft-fonts
+Conffiles:
+ /etc/mozilla-firefox/profile/US/bookmarks.html b836c2f8098bc481f93d11ce0b9c81a3
+ /etc/mozilla-firefox/profile/bookmarks.html b836c2f8098bc481f93d11ce0b9c81a3
+ /etc/mozilla-firefox/mozilla-firefoxrc e73223ae3bec3211d128c60b15b57f9f
+ /etc/mozilla-firefox/pref/security-prefs.js e448ef9c907ed4218cec2714b70c10c5
+ /etc/mozilla-firefox/pref/all.js 7afdc096281bf3ae456147b4961cd157
+ /etc/mozilla-firefox/pref/unix.js 2052eca34a0745089101dabb582cddef
+ /etc/mozilla-firefox/pref/non-shared.txt 23feefdaee13883ed6265a700a023895
+ /etc/mozilla-firefox/pref/xpinstall.js 770d4cd963f574cb160a242f91fe0c30
+Description: lightweight web browser based on Mozilla
+ Firefox is a redesign of the Mozilla browser component, similar to
+ Galeon, K-Meleon and Camino, but written using the XUL user interface
+ language and designed to be lightweight and cross-platform.
+ .
+ This browser was previously known as Firebird and Phoenix.
+
+Package: libieee1284-3-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 176
+Maintainer: Julien BLACHE <jblache@debian.org>
+Source: libieee1284
+Version: 0.2.8-2
+Depends: libieee1284-3 (= 0.2.8-2)
+Description: Cross-platform library for parallel port access [development files]
+ This library was designed to ease the use of the parallel port. It will
+ automatically figure out which access method is available, depending on the
+ running kernel and the permissions of the process.
+ .
+ It handles particular queries to the devices, like fetching the Device ID of
+ a device.
+ .
+ This package contains the development files needed to build your applications
+ using the libieee1284.
+
+Package: udftools
+Status: install ok installed
+Priority: extra
+Section: otherosfs
+Installed-Size: 188
+Maintainer: Richard Atterer <atterer@debian.org>
+Architecture: i386
+Version: 1.0.0b3-5
+Depends: libc6 (>= 2.3.2.ds1-4), libreadline4 (>= 4.3-1), debconf (>= 0.9.41), makedev (>= 2.3.1-56)
+Conffiles:
+ /etc/default/udftools 0e5e1f9772302b3f9b0d6cb09b71bfa5
+ /etc/modutils/udftools 2ab268f37945cb9d8b3919f3b4a530cf
+ /etc/init.d/udftools e0ce2919f7971655cd9f04132460ab17
+Description: Tools for UDF filesystems and DVD/CD-R(W) drives
+ This package contains a number of user-space tools related to
+ creating filesystems in the UDF (Universal Disk Format), which is
+ primarily used for DVDs, but sometimes also CD-ROMs:
+ .
+ mkudffs - Format a device, creating an empty UDF filesystem
+ cdrwtool - Low-level drive management (e.g. set writing speed, format)
+ pktsetup - Set up a packet writing device (/dev/pktcdvd0) for a drive
+ wrudf - Maintains a UDF filesystem
+ .
+ Homepage: http://sourceforge.net/projects/linux-udf/
+
+Package: fuse-utils
+Status: purge ok not-installed
+Priority: optional
+Section: utils
+Architecture: i386
+
+Package: libconfig-inifiles-perl
+Status: purge ok not-installed
+Priority: extra
+Section: interpreters
+
+Package: cppunit
+Status: purge ok not-installed
+Priority: optional
+Section: devel
+Architecture: i386
+
+Package: kdeartwork-style
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 312
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeartwork
+Version: 4:3.2.3-2
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: widget styles released with KDE
+ This package contains additional widget styles that come with the official
+ KDE release. Widget styles can be used to customise the look and feel of
+ interface components such as buttons, scrollbars and so on. They can be
+ applied using the style manager in the KDE Control Centre.
+ .
+ This package is part of the KDE artwork module.
+
+Package: libgnutls11-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 1064
+Maintainer: Matthias Urlichs <smurf@debian.org>
+Architecture: i386
+Source: gnutls11
+Version: 1.0.16-7
+Replaces: gnutls-dev (<< 0.4.0-0), gnutls0.4-dev
+Provides: gnutls-dev, libgnutls-dev
+Depends: libgnutls11 (= 1.0.16-7), libgcrypt11-dev (>= 1.2.0), libc6-dev | libc-dev, zlib1g-dev, libtasn1-2-dev, libopencdk8-dev
+Suggests: libgnutls-doc, gnutls-bin
+Conflicts: gnutls-dev (<< 0.4.0-0), gnutls0.4-dev, libgnutls-dev
+Description: GNU TLS library - development files
+ gnutls is a portable library which implements the Transport Layer
+ Security (TLS) 1.0 and Secure Sockets Layer (SSL) 3.0 protocols.
+ .
+ Currently gnutls implements:
+ - the TLS 1.0 and SSL 3.0 protocols, without any US-export
+ controlled algorithms
+ - X509 Public Key Infrastructure (with several limitations).
+ - SRP for TLS authentication.
+ - TLS Extension mechanism
+ .
+ This package contains the gnutls development files.
+
+Package: alsa-headers
+Status: install ok installed
+Priority: extra
+Section: sound
+Installed-Size: 180
+Maintainer: Debian ALSA Maintainers <pkg-alsa-devel@lists.alioth.debian.org>
+Architecture: all
+Source: alsa-driver
+Version: 1.0.5a-3
+Replaces: alsa-headers-0.4, alsa-headers-0.5, alsa-headers-unstable
+Conflicts: alsa-headers-0.4, alsa-headers-0.5, alsa-headers-unstable
+Description: ALSA sound driver header files
+ ALSA is an effort to create a modular sound system for Linux,
+ while maintaining full compatibility with OSS/Lite.
+ .
+ These are the necessary header files to develop interface libraries
+ between the kernel and user space.
+
+Package: localeconf
+Status: deinstall ok config-files
+Priority: optional
+Section: misc
+Installed-Size: 112
+Maintainer: Progeny Debian Packaging Team <debian-packages@progeny.com>
+Version: 0.9.4
+Config-Version: 0.9.4
+Depends: locales, debconf (>= 0.5)
+Suggests: configlet-frontends
+Description: debconf interface to locale configuration
+ This package provides a debconf-based interface to configuring the
+ system-wide locale settings on your system.
+
+Package: libgnomeprintui2.2-common
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+Architecture: all
+
+Package: kicker-applets
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 652
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeaddons
+Version: 4:3.2.3-2
+Replaces: ktimemon (<< 4:2.2-alpha1-0)
+Provides: ktimemon
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.3-1), libglib1.2 (>= 1.2.0), libgtk1.2 (>= 1.2.10-4), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxi6 | xlibs (>> 4.1.0), libxrender1, xmms, zlib1g (>= 1:1.2.1)
+Recommends: kicker
+Suggests: khelpcenter, kdeaddons-doc-html
+Conflicts: ktimemon (<< 4:2.2-alpha1-0)
+Enhances: kicker
+Description: applets for Kicker, the KDE panel
+ This package contains a variety of applets for Kicker, the KDE panel.
+ These applets will appear in the panel's Add--Applet menu.
+ .
+ Included are a system monitor, a colour picker, a media player controller
+ and a binary clock.
+ .
+ This package is part of the KDE add-ons module.
+
+Package: libice6
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 388
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: xlibs (<< 4.3.0)
+Description: Inter-Client Exchange library
+ libICE provides an interface to ICE, the Inter-Client Exchange protocol.
+ Motivated by issues arising from the need for X Window System clients to
+ share data with each other, the ICE protocol provides a generic framework for
+ building protocols on top of reliable, byte-stream transport connections. It
+ provides basic mechanisms for setting up and shutting down connections, for
+ performing authentication, for negotiating versions, and for reporting
+ errors.
+
+Package: libesd0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 84
+Maintainer: Ryan Murray <rmurray@debian.org>
+Architecture: i386
+Source: esound
+Version: 0.2.34-1
+Depends: libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), esound-common (>= 0.2.34-1)
+Recommends: esound-clients
+Suggests: esound
+Conflicts: esound (<< 0.2.23-1)
+Description: Enlightened Sound Daemon - Shared libraries
+ This program is designed to mix together several digitized
+ audio streams for playback by a single device.
+ .
+ This package is for use with OSS sound drivers.
+
+Package: liblualib40
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 68
+Maintainer: Daniel Silverstone <dsilvers@debian.org>
+Architecture: i386
+Source: lua40
+Version: 4.0-13
+Config-Version: 4.0-13
+Depends: libc6 (>= 2.3.2.ds1-4), liblua40 (>= 4.0-13)
+Description: Extension library for the Lua 4.0 programming language
+ This package provides string, maths and IO functions to liblua40.
+ Generally this package will only be installed if needed by another
+ application such as lua40.
+
+Package: pppoeconf
+Status: deinstall ok config-files
+Priority: optional
+Section: net
+Installed-Size: 196
+Maintainer: Eduard Bloch <blade@debian.org>
+Version: 0.9.10.6
+Config-Version: 0.9.10.6
+Depends: whiptail-provider | whiptail, pppoe (>= 3.0), ppp (>= 2.4.1)
+Recommends: locales
+Conffiles:
+ /etc/ppp/ip-up.d/000usepeerdns dca85124803e711d13c5a49a1070d21e
+Description: configures PPPoE/ADSL
+ Userfriendly tool for initial configuration of a DSL (PPPoE) connection.
+
+Package: python-apt
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 168
+Maintainer: APT Development Team <deity@lists.debian.org>
+Version: 0.5.10
+Depends: python (>= 2.3), python (<< 2.4), libapt-inst-libc6.3-5-1.0, libapt-pkg-libc6.3-5-3.3, libc6 (>= 2.3.2.ds1-4)
+Description: Python interface to libapt-pkg
+ The apt-pkg Python interface will provide full access to the internal
+ libapt-pkg structures allowing Python programs to easily perform a
+ variety of functions, such as:
+ .
+ - Access to the APT configuration system
+ - Access to the APT package information database
+ - Parsing of Debian package control files, and other files with a
+ similar structure
+
+Package: libbit-vector-perl
+Status: install ok installed
+Priority: optional
+Section: perl
+Installed-Size: 468
+Maintainer: Christian Hammers <ch@debian.org>
+Architecture: i386
+Version: 6.3-3
+Replaces: libdate-calc-perl
+Depends: perl (>= 5.8.4-2), perlapi-5.8.4
+Description: Perl and C library for bit vectors and more
+ Bit::Vector is an efficient C library which allows you to handle
+ bit vectors, sets (of integers), "big integer arithmetic" and
+ boolean matrices, all of arbitrary sizes.
+ .
+ The library is efficient (in terms of algorithmical complexity)
+ and therefore fast (in terms of execution speed) for instance
+ through the widespread use of divide-and-conquer algorithms.
+ .
+ The package also includes an object-oriented Perl module for
+ accessing the C library from Perl, and optionally features
+ overloaded operators for maximum ease of use.
+ .
+ The C library can nevertheless be used stand-alone, without Perl.
+
+Package: ktip
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 136
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: Kandalf's Useful Tips
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ ktip provides many useful tips on using KDE when you log in.
+ .
+ This package is part of the official KDE base module.
+
+Package: crimson
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 1740
+Maintainer: Uwe Hermann <uwe@debian.org>
+Architecture: i386
+Version: 0.4.3-1
+Config-Version: 0.4.3-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libsdl-mixer1.2 (>= 1.2.5), libsdl-ttf1.2, libsdl1.2debian (>> 1.2.7-0), libstdc++5 (>= 1:3.3.4-1), zlib1g (>= 1:1.2.1)
+Description: A hex-based tactical game
+ Crimson Fields is a hex-based tactical war game in the tradition of
+ Battle Isle (tm). Two players command their units on a map of hexagons,
+ trying to accomplish mission objectives ranging from defending important
+ locations to simply destroying all enemy forces.
+ The game can either be played in 'hot seat' mode, via email, or against
+ the computer. Tools are available to create custom maps and campaigns.
+ You can also play the original Battle Isle maps if you have a copy of
+ the game.
+
+Package: kdebase-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 404
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kate (<< 4:3.0.0), kdebase (<< 4:3.0.0), konqueror (<< 4:3.0.0)
+Depends: kate (= 4:3.3.0-1), kdesktop (= 4:3.3.0-1), kicker (= 4:3.3.0-1), konqueror-nsplugins (= 4:3.3.0-1), konqueror (= 4:3.3.0-1), ksysguard (= 4:3.3.0-1), kdelibs4-dev (>> 4:3.3.0)
+Description: KDE Base (development files)
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This package contains all the header files needed to develop KDE
+ applications.
+ .
+ This package is part of the official KDE base module.
+
+Package: valgrind
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 4944
+Maintainer: Andrés Roldán <aroldan@debian.org>
+Architecture: i386
+Version: 1:2.2.0-2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Recommends: gdb
+Suggests: libc6-dbg, kcachegrind, valgrind-calltree
+Conffiles:
+ /etc/default/valgrind c8c6af78a444ea0417f375f254a43ba2
+Description: A memory debugger for x86-linux
+ Valgrind is a GPL'd tool to help you find memory-management problems in your
+ programs. When a program is run under Valgrind's supervision, all reads and
+ writes of memory are checked, and calls to malloc/new/free/delete are
+ intercepted.
+ .
+ Valgrind can debug more or less any dynamically-linked ELF Linux x86
+ executable, without modification, recompilation, or anything, as long as it
+ contains only classic x86 code (MMX/SSE/SSE2/3DNow! largely unsupported for
+ the moment). There is experimental support for programs using libpthread.
+ .
+ Valgrind provides a generic infrastructure for supervising the execution of
+ programs called "tools". This is done by providing a way to instrument
+ programs in very precise ways, making it relatively easy to support
+ activities such as dynamic error detection and profiling. Available tools
+ include Memcheck (a heavyweight memory checker), Cachegrind (a cache-miss
+ profiler), Addrcheck (a lightweight memory checker) and Helgrind (a
+ data-race detector), among others.
+
+Package: ksvg
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 4312
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegraphics
+Version: 4:3.3.0-1.1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libfribidi0, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libjpeg62, liblcms1 (>= 1.08-1), libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: SVG viewer for KDE
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KSVG allows you view SVG (scalable vector graphics) files. This package
+ includes kpart so you can embed it in konqueror and a standalone
+ application.
+ .
+ This package is part of the official KDE graphics module.
+
+Package: irssi-scripts
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 3220
+Maintainer: Florian Ernst <florian_ernst@gmx.net>
+Architecture: all
+Version: 20040728
+Depends: irssi-text (>= 0.8.9-1)
+Recommends: libwww-perl
+Suggests: figlet, libcrypt-cbc-perl, libdbi-perl, libtext-iconv-perl, libxmms-perl, lsof, mldonkey-server, net-tools, perl, perl-modules, xmms, w3m | www-browser
+Description: collection of scripts for irssi
+ This is a collection of useful scripts for the irssi IRC-client.
+ Thus, installing this package only makes sense if you intend to use
+ irssi.
+ .
+ Some individual scripts need other packages in order to work
+ properly. Please see the list of Suggests as well as the contained
+ README.Debian for additional information.
+ .
+ Almost all scripts can also be downloaded from http://scripts.irssi.org/
+
+Package: libgsmme1
+Status: deinstall ok config-files
+Priority: extra
+Section: libs
+Installed-Size: 1056
+Maintainer: Mikael Hedin <micce@debian.org>
+Source: gsmlib
+Version: 1.8-2
+Config-Version: 1.8-2
+Depends: libc6 (>= 2.2.4-4)
+Description: Library to access GSM mobile phones via modem or IrDA
+ This distribution contains a library to access GSM mobile phones
+ through GSM modems or IrDA devices. Features include:
+ .
+ * modification of phone books stored in the mobile phone or on the
+ SIM card
+ * reading and writing of SMS messages stored in the mobile phone
+ * sending and reception of SMS messages
+ .
+ gsmlib uses standard ETSI GSM 07.07, ETSI GSM 07.05, and others.
+
+Package: libfinance-quote-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 376
+Maintainer: Ross Peachey <rcp@debian.org>
+Version: 1.08-1
+Depends: perl (>= 5.6.0-16), libhtml-tableextract-perl, libwww-perl
+Description: Perl module for retrieving stock quotes from a variety of sources
+ This is a Perl module that retrieves stock quotes and other securities
+ information from various locations
+
+Package: konquest
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 616
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Description: KDE based GNU-Lactic Konquest game
+ This the KDE version of Gnu-Lactic Konquest, a multi-player strategy
+ game. The goal of the game is to expand your interstellar empire
+ across the galaxy and, of course, crush your rivals in the process.
+
+Package: libtasn1-2-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 292
+Maintainer: Matthias Urlichs <smurf@debian.org>
+Architecture: i386
+Source: libtasn1-2
+Version: 0.2.10-4
+Provides: libtasn1-dev
+Depends: libtasn1-2 (= 0.2.10-4)
+Conflicts: libgnutls-dev (<< 0.5.1-4), libtasn1-dev
+Description: Manage ASN.1 structures (development)
+ Manage ASN1 (Abstract Syntax Notation One) structures.
+ The main features of this library are:
+ * on-line ASN1 structure management that doesn't require any C code
+ file generation.
+ * off-line ASN1 structure management with C code file generation
+ containing an array.
+ * DER (Distinguish Encoding Rules) encoding
+ * no limits for INTEGER and ENUMERATED values
+ .
+ This package contains header files and libraries for static linking.
+
+Package: libgtk2.0-bin
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 56
+Maintainer: Akira TAGOH <tagoh@debian.org>
+Architecture: i386
+Source: gtk+2.0
+Version: 2.4.9-1
+Replaces: libgtk2.0-common (<= 2.4.0-3), libgtk2.0-dev (<= 2.4.3-1)
+Depends: libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libglib2.0-0 (>= 2.4.6), libgtk2.0-0 (>= 2.4.3), libpango1.0-0 (>= 1.4.1), libx11-6 | xlibs (>> 4.1.0), libxcursor1 (>> 1.1.2), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxi6 | xlibs (>> 4.1.0), libxrandr2 | xlibs (>> 4.3.0), libxrender1, zlib1g (>= 1:1.2.1)
+Conflicts: libgtk2.0-dev (<= 2.4.3-1)
+Description: The programs for the GTK+ graphical user interface library
+ The GTK+ is a multi-platform toolkit for creating graphical user
+ interfaces. Offering a complete set of widgets, the GTK+ is suitable
+ for projects ranging from small one-off tools to complete application
+ suites.
+ .
+ This package contains the program files which is used for the libraries
+ and others.
+
+Package: klettres
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 1012
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeedu
+Version: 4:3.2.3-2
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.4-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), klettres-data (= 4:3.2.3-2)
+Recommends: kdeedu-data (>= 4:3.2.3-2)
+Suggests: khelpcenter, kdeedu-doc-html
+Description: foreign alphabet tutor for KDE
+ KLettres is an application specially designed to help the user to
+ learn the alphabet in a new language and then to learn to read simple
+ syllables. The user can be a young child aged from two and a half or an
+ adult that wants to learn the basics of a foreign language.
+ .
+ The user does not need to know how to use the mouse; the keyboard only is
+ needed.
+ .
+ Five languages are currently available: Czech, Danish, Dutch, French
+ and Slovak.
+ .
+ This package is part of the official KDE edutainment module.
+
+Package: cvs2cl
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 172
+Maintainer: Peter Palfrader <weasel@debian.org>
+Architecture: all
+Version: 2.57-1
+Depends: cvs, perl
+Description: CVS-log-message-to-ChangeLog conversion script
+ This perl script produces a GNU-style ChangeLog for CVS-controlled sources,
+ by running "cvs log" and parsing the output. Duplicate log messages get
+ unified in the Right Way.
+
+Package: kernel-source-2.6.4
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 33436
+Maintainer: Herbert Xu <herbert@debian.org>
+Architecture: all
+Version: 2.6.4-1
+Provides: kernel-source, kernel-source-2.6
+Depends: binutils, bzip2, coreutils | fileutils (>= 4.0)
+Recommends: libc-dev, gcc, make
+Suggests: libncurses-dev | ncurses-dev, kernel-package
+Description: Linux kernel source for version 2.6.4 with Debian patches
+ This package provides the source code for the Linux kernel version 2.6.4.
+ .
+ You may configure the kernel to your setup by typing "make config"
+ and following instructions, but you could get ncursesX.X-dev and try
+ "make menuconfig" for a jazzier, and easier to use interface. There
+ are options to use QT or GNOME based configuration interfaces, but they
+ need additional packages to be installed. Also, please read the detailed
+ documentation in the file
+ /usr/share/doc/kernel-source-2.6.4/README.headers.gz.
+ .
+ If you wish to use this package to create a custom Linux kernel, then
+ it is suggested that you investigate the package kernel-package,
+ which has been designed to ease the task of creating kernel image
+ packages.
+
+Package: libcupsys2
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 208
+Maintainer: Kenshi Muto <kmuto@debian.org>
+Architecture: i386
+Source: cupsys
+Version: 1.1.20final+cvs20040330-3
+Config-Version: 1.1.20final+cvs20040330-3
+Replaces: cupsys-client (<= 1.1.10-2)
+Depends: libc6 (>= 2.3.2.ds1-4), libgnutls7 (>= 0.8.12-2)
+Conflicts: gs-esp (<< 7.05.6-2), cupsys-driver-gimpprint (<< 4.2.5-3)
+Conffiles:
+ /etc/cups/client.conf e39203745a37ad9cc7a539c8f2f802bf
+Description: Common UNIX Printing System(tm) - libs
+ The Common UNIX Printing System (or CUPS(tm)) is a printing system and
+ general replacement for lpd and the like. It supports the Internet
+ Printing Protocol (IPP), and has its own filtering driver model for
+ handling various document types.
+ .
+ This package provides the base shared libraries for CUPS.
+ .
+ The terms "Common UNIX Printing System" and "CUPS" are trademarks of
+ Easy Software Products (www.easysw.com), and refer to the original
+ source packages from which these packages are made.
+
+Package: libalogg
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 68
+Maintainer: Alexandre Pineau <alexandre.pineau@free.fr>
+Architecture: i386
+Source: alogg
+Version: 1.3.3-4
+Config-Version: 1.3.3-4
+Depends: liballegro4.1, libc6 (>= 2.3.2.ds1-4), libogg0 (>= 1.1.0), libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0)
+Description: an Ogg/Vorbis Library for Allegro - shared libraries
+ alogg is a library which makes it easier to use Ogg/Vorbis
+ streams with Allegro. It offers facilities to decode, stream,
+ and encode Ogg/Vorbis streams with URL and thread support,
+ and integrates those facilities with Allegro's datafile
+ and sample loading routines.
+
+Package: libatk1.0-data
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 535
+Maintainer: Akira TAGOH <tagoh@debian.org>
+Architecture: all
+Source: atk1.0
+Version: 1.6.1-3
+Depends: libatk1.0-0 (>= 1.6.1-3)
+Description: Common files for the ATK accessibility toolkit
+ ATK is a toolkit providing accessibility interfaces for applications or
+ other toolkits. By implementing these interfaces, those other toolkits or
+ applications can be used with tools such as screen readers, magnifiers, and
+ other alternative input devices.
+ .
+ This contains the common files which the runtime libraries need.
+
+Package: kernel-image-2.4.26-1-686
+Status: install ok installed
+Priority: optional
+Section: base
+Installed-Size: 32076
+Maintainer: Debian Kernel Team <debian-kernel@lists.debian.org>
+Architecture: i386
+Source: kernel-image-2.4.26-i386
+Version: 2.4.26-6
+Provides: kernel-image, kernel-image-2.4
+Depends: initrd-tools (>= 0.1.48), coreutils | fileutils (>= 4.0), modutils (>= 2.4.19)
+Suggests: lilo (>= 19.1) | grub, fdutils, kernel-doc-2.4.26 | kernel-source-2.4.26, kernel-pcmcia-modules-2.4.26-1-686 | pcmcia-modules-2.4.26-1-686
+Description: Linux kernel image for version 2.4.26 on PPro/Celeron/PII/PIII/PIV.
+ This package contains the Linux kernel image for version 2.4.26 on
+ Pentium Pro/Celeron/Pentium II/Pentium III/Pentium IV,
+ the corresponding System.map file, and the modules built by the packager.
+ It also contains scripts that try to ensure that the system is not left in
+ a unbootable state after an update.
+ .
+ If you wish to update a bootdisk, or to use a bootloader to make
+ installing and using the image easier, we suggest you install the latest
+ fdutils (for formatting a floppy to be used as boot disk), and LILO, for a
+ powerful bootloader. Of course, both these are optional.
+ .
+ Kernel image packages are generally produced using kernel-package,
+ and it is suggested that you install that package if you wish to
+ create a custom kernel from the sources.
+
+Package: libesd0-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 140
+Maintainer: Ryan Murray <rmurray@debian.org>
+Architecture: i386
+Source: esound
+Version: 0.2.34-1
+Replaces: libesd-dev, libesd-alsa0-dev
+Depends: libesd0 (= 0.2.34-1) | libesd-alsa0 (= 0.2.34-1), libaudiofile-dev, esound-common (>= 0.2.34-1)
+Conflicts: libesd-dev
+Description: Enlightened Sound Daemon - Development files
+ This program is designed to mix together several digitized
+ audio streams for playback by a single device.
+ .
+ This package contains the header files needed to compile applications that
+ use libesd0.
+
+Package: libopenh323-1.12.2
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 9649
+Maintainer: Tim Johann <t1m@phrogstar.de>
+Architecture: i386
+Source: openh323
+Version: 1.12.2-4
+Config-Version: 1.12.2-4
+Depends: libc6 (>= 2.3.2.ds1-4), libexpat1 (>= 1.95.6), libgcc1 (>= 1:3.3.3-1), libgsm1 (>= 1.0.10-11.2), libldap2 (>= 2.1.17-1), libpt-1.5.2, libsdl1.2debian (>> 1.2.7-0), libspeex1, libssl0.9.7, libstdc++5 (>= 1:3.3.3-1)
+Suggests: libopenh323-dev
+Description: H.323 aka VoIP library
+ This package contains the shared version of the OpenH323 library.
+ .
+ The OpenH323 project aims to create a full featured, interoperable,
+ Open Source implementation of the ITU H.323 teleconferencing protocol
+ that can be used freely by everybody. This protocol is most used for
+ Voice over IP (VoIP) conferencing.
+ .
+ For more information on the OpenH323 project visit them at
+ http://www.openh323.org/
+
+Package: libproc-daemon-perl
+Status: install ok installed
+Priority: optional
+Section: perl
+Installed-Size: 76
+Maintainer: Marc Haber <mh+debian-packages@zugschlus.de>
+Architecture: all
+Version: 0.03-2
+Depends: perl (>= 5.6.0-16)
+Description: Run Perl program as a daemon process
+ This module allows a perl program to run as a daemon. The Init
+ function does all necessary things a daemon needs to do.
+
+Package: time
+Status: install ok installed
+Priority: standard
+Section: utils
+Installed-Size: 144
+Maintainer: Dirk Eddelbuettel <edd@debian.org>
+Architecture: i386
+Version: 1.7-19
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: The GNU time program for measuring cpu resource usage
+ The `time' command runs another program, then displays information
+ about the resources used by that program, collected by the system while
+ the program was running. You can select which information is reported
+ and the format in which it is shown, or have `time' save the information
+ in a file instead of display it on the screen.
+ .
+ The resources that `time' can report on fall into the general
+ categories of time, memory, I/O, and IPC calls.
+ .
+ The GNU version can format the output in arbitrary ways by using a
+ printf-style format string to include various resource measurements.
+
+Package: cupsys
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 10548
+Maintainer: Kenshi Muto <kmuto@debian.org>
+Architecture: i386
+Version: 1.1.20final+rc1-5
+Replaces: cupsys-pstoraster
+Depends: libc6 (>= 2.3.2.ds1-4), libcupsimage2 (>= 1.1.19final-1), libcupsys2-gnutls10 (>= 1.1.20final-1), libgnutls11 (>= 1.0.16), libpam0g (>= 0.76), libpaper1, libslp1, zlib1g (>= 1:1.2.1), gs-esp, adduser (>= 3.12), debconf (>= 1.2.9), patch
+Recommends: cupsys-client, smbclient, xpdf-common
+Suggests: cupsys-bsd, cupsys-driver-gimpprint, foomatic-bin | cupsomatic-ppd, xpdf-korean | xpdf-japanese | xpdf-chinese-traditional | xpdf-chinese-simplified
+Conflicts: cupsys-pstoraster (<< 2), lprng (>= 3.8.25)
+Conffiles:
+ /etc/cups/classes.conf 5a3c7882a1e0b3115b12ea56e939d44a
+ /etc/cups/cupsd.conf f9374faf3ae8e40238f637ef2b7c9757
+ /etc/cups/printers.conf b172fbb9455ac42e6c103b838e003056
+ /etc/cups/mime.convs d9b3068227c4014d9b548bc68c31a464
+ /etc/cups/mime.types 63f021611e62db04cea2609a4eb868e7
+ /etc/init.d/cupsys 9efdc715cb05cecb3ac0f9d3f4c8f252
+ /etc/pam.d/cupsys 4891238da3341df3a6562e0add88f42e
+ /etc/logrotate.d/cupsys f2187dd5207cc695422fdd8ed15b7b8c
+Description: Common UNIX Printing System(tm) - server
+ The Common UNIX Printing System (or CUPS(tm)) is a printing system and
+ general replacement for lpd and the like. It supports the Internet
+ Printing Protocol (IPP), and has its own filtering driver model for
+ handling various document types.
+ .
+ This package provides the CUPS scheduler/daemon and related files.
+ .
+ The terms "Common UNIX Printing System" and "CUPS" are trademarks of
+ Easy Software Products (www.easysw.com), and refer to the original
+ source packages from which these packages are made.
+
+Package: libselinux1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 180
+Maintainer: Russell Coker <russell@coker.com.au>
+Architecture: i386
+Source: libselinux
+Version: 1.16-2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: SELinux shared libraries
+ This package provides the shared libraries for Security-enhanced
+ Linux.
+
+Package: qt3-doc
+Status: install ok installed
+Priority: extra
+Section: doc
+Installed-Size: 25968
+Maintainer: Martin Loschwitz <madkiss@debian.org>
+Architecture: all
+Source: qt-x11-free
+Version: 3:3.3.3-4
+Replaces: qt-doc
+Suggests: libqt3-headers, qt3-assistant | www-browser
+Description: Qt3 API documentation
+ This package contains the complete Qt3 API documentation.
+ Examples to coding are in qt3-examples. The documentation is provided
+ in HTML and manpage format; the HTML version can be viewed in conjunction
+ with the Qt Assistant.
+
+Package: nmm
+Status: install ok installed
+Priority: optional
+Installed-Size: 46712
+Maintainer: Peter Rockai (mornfall) <mornfall@danill.sk>
+Architecture: i386
+Version: 0.6.0-1
+Depends: libaudio2, libc6 (>= 2.3.2.ds1-4), libdivxdecore0 (>= 1:5.0.1), libdivxencore0 (>= 1:5.0.1), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libjpeg62, libltdl3 (>= 1.5.2-2), libmad0 (>= 0.15.1b), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxcursor1 (>> 1.1.2), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxml2 (>= 2.6.11), libxrandr2 | xlibs (>> 4.3.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Description: network multimedia middleware
+ An object-oriented, network-transparent, distributed multimedia framework written in C++.
+ .
+ Homepage: http://www.networkmultimedia.org
+
+Package: libfam0
+Status: install ok config-files
+Priority: optional
+Section: admin
+Installed-Size: 128
+Maintainer: Joerg Wendland <joergland@debian.org>
+Source: fam
+Version: 2.6.6.1-4
+Config-Version: 2.6.6.1-4
+Depends: libc6 (>= 2.2.4-4)
+Description: client library to control the FAM daemon
+ FAM monitors files and directories, notifying interested applications
+ of changes.
+ .
+ This package provides a shared library to allow programs to connect to
+ the FAM daemon and ask for files to be monitored.
+
+Package: mpack
+Status: install ok installed
+Priority: standard
+Section: mail
+Installed-Size: 108
+Maintainer: Richard Braakman <dark@xs4all.nl>
+Version: 1.6-1
+Depends: libc6 (>= 2.3.1-1)
+Suggests: mail-transport-agent, inewsinn | inews
+Description: tools for encoding/decoding MIME messages
+ Mpack and munpack are utilities for encoding and decoding
+ (respectively) binary files in MIME (Multipurpose Internet
+ Mail Extensions) format mail messages. For compatibility
+ with older forms of transferring binary files, the munpack
+ program can also decode messages in split-uuencoded format.
+ .
+ Instead of munpack, the package maintainer recommends the
+ more versatile package uudeview.
+
+Package: configlet-frontends
+Status: purge ok not-installed
+Priority: optional
+Section: admin
+Architecture: all
+
+Package: fluxbox
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 2172
+Maintainer: Matt Hope <dopey@debian.org>
+Architecture: i386
+Version: 0.9.9-1
+Replaces: fluxbox-kde
+Provides: x-window-manager
+Depends: menu (>= 1.5), libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.3.4-1), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxpm4 | xlibs (>> 4.1.0), libxrandr2 | xlibs (>> 4.3.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: fluxconf
+Conflicts: fluxbox-kde (<< 0.9.9-1)
+Conffiles:
+ /etc/menu-methods/fluxbox 4303a65f55b565968227a68e3914ee62
+ /etc/X11/fluxbox/init 9d57349fc5ee79c701c353f0891a6bd0
+ /etc/X11/fluxbox/keys 20a7e524a019b8c56dc411efa78ea2fa
+ /etc/X11/fluxbox/system.fluxbox-menu 3bb0dce2602827720d6f0ca9a469b4d3
+ /etc/gdm/Sessions/fluxbox 011dd977c766db1d956235632d3cca55
+Description: Highly configurable and low resource X11 Window manager
+ Fairly similar to blackbox, from which it is derived, but has been
+ extended with features such as pwm-style window tabs, configurable
+ key bindings, toolbar, and an iconbar. It also includes some cosmetic
+ fixes over blackbox.
+ .
+ This package contains support for Gnome and KDE.
+
+Package: libsasl2-gssapi-mit
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 132
+Maintainer: Sam Hartman <hartmans@debian.org>
+Architecture: i386
+Source: cyrus-sasl2-mit
+Version: 2.1.19-1
+Depends: libsasl2 (>= 2.1.19), libc6 (>= 2.3.2.ds1-4), libcomerr2 (>= 1.33-3), libkrb53 (>= 1.3.2)
+Conflicts: libsasl2-modules-gssapi-heimdal
+Description: GSSAPI module for SASL using MIT Kerberos
+ This is the Cyrus SASL API implentation, version 2. See package
+ libsasl2 and RFC 2222 for more information.
+ .
+ This package provides the GSSAPI module compiled against the MIT
+ implementation of Kerberos.
+
+Package: kleopatra
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 672
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Replaces: kgpgcertmanager
+Provides: kgpgcertmanager
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkleopatra0 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Suggests: gnupg
+Conflicts: kgpgcertmanager
+Description: KDE Certificate Manager
+ Kleopatra is the KDE tool for managing X.509 certificates in the gpgsm
+ keybox and for retrieving certificates from LDAP servers.
+ .
+ This package is part of the official KDE pim module.
+
+Package: libk3btools1
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 288
+Maintainer: Jean-Michel Kelbert <kelbert@debian.org>
+Source: k3b
+Version: 0.10.3-5
+Config-Version: 0.10.3-5
+Provides: libk3btools
+Depends: kdelibs4 (>= 4:3.1.5), libart-2.0-2 (>= 2.3.8), libaudio2, libc6 (>= 2.3.2.ds1-4), libfam0c102, libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.3.2-1), libk3bcore2 (>= 0.10.3), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libstdc++5 (>= 1:3.3.2-1), libxcursor1, libxft2 (>> 2.1.1), libxrender1, xlibmesa3-gl | libgl1, xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Description: The KDE cd burning application library - tools runtime files
+ The library libk3btools, handles the tools of k3b.
+ K3b is a GUI frontend to the cd recording programs cdrdao and cdrecord.
+ It's aim is to provide a very user friendly interface to all the tasks
+ that come with cd recording and a lot more.
+
+Package: libc6
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 15592
+Maintainer: GNU Libc Maintainers <debian-glibc@lists.debian.org>
+Architecture: i386
+Source: glibc
+Version: 2.3.2.ds1-16
+Replaces: ldso (<= 1.9.11-9), timezone, timezones, gconv-modules, libtricks, libc6-bin, netkit-rpc, netbase (<< 4.0), libc6-dev (<< 2.3.2.ds1-14)
+Provides: glibc-2.3.2.ds1-16
+Depends: libdb1-compat
+Suggests: locales, glibc-doc
+Conflicts: strace (<< 4.0-0), libnss-db (<= 2.2-6.1.1), timezone, timezones, gconv-modules, libtricks, libc6-doc, libc5 (<< 5.4.33-7), libpthread0 (<< 0.7-10), libc6-bin, libwcsmbs, apt (<< 0.3.0), libglib1.2 (<< 1.2.1-2), netkit-rpc, wine (<< 0.0.20031118-1), cyrus-imapd (<< 1.5.19-15)
+Description: GNU C Library: Shared libraries and Timezone data
+ Contains the standard libraries that are used by nearly all programs on
+ the system. This package includes shared versions of the standard C library
+ and the standard math library, as well as many others.
+ Timezone data is also included.
+
+Package: libc5
+Status: install ok not-installed
+Priority: optional
+Section: oldlibs
+
+Package: talk
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 88
+Maintainer: Robert Millan <rmh@debian.org>
+Architecture: i386
+Source: netkit-ntalk
+Version: 0.17-9
+Replaces: netstd
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1)
+Suggests: talkd
+Description: Talk to another user.
+ Talk is a visual communication program which copies lines from your terminal
+ to that of another user.
+ .
+ In order to talk locally, you will need to install the talkd package.
+
+Package: kwalletmanager
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 412
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeutils
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE Wallet Manager
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ This program keeps various wallets for any kind of data that the user can
+ store encrypted with passwords and can also serve as a password manager that
+ keeps a master password to all wallets.
+ .
+ This package is part of the official KDE utils module.
+
+Package: fam
+Status: install ok installed
+Priority: extra
+Section: admin
+Installed-Size: 256
+Maintainer: Joerg Wendland <joergland@debian.org>
+Architecture: i386
+Version: 2.7.0-5
+Depends: portmap, libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.2-1), libstdc++5 (>= 1:3.3.2-1)
+Conffiles:
+ /etc/init.d/fam c8c57784d48f88fd376f1eb31014917c
+ /etc/fam.conf f5348bbcb4fb4ed5d304327c2f02ef6e
+Description: File Alteration Monitor
+ FAM monitors files and directories, notifying interested applications
+ of changes.
+ .
+ This package provides a server that can monitor a given list of files
+ and notify applications through a socket. If the kernel supports dnotify
+ (kernels >= 2.4.x) FAM is notified directly by the kernel. Otherwise it has
+ to poll the files' status. FAM can also provide a RPC service for monitoring
+ remote files (such as on a mounted NFS filesystem).
+
+Package: libtag1-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 832
+Maintainer: Christopher L Cheney <ccheney@debian.org>
+Architecture: i386
+Source: taglib
+Version: 1.2-1
+Depends: libtag1 (= 1.2-1)
+Description: TagLib Audio Meta-Data Library [development]
+ TagLib is a library for reading and editing the meta-data of several popular
+ audio formats. Currently it supports both ID3v1 and ID3v2 for MP3 files, Ogg
+ Vorbis comments and ID3 tags and Vorbis comments in FLAC files.
+ .
+ This is the development package which contains headers and static libraries
+ for the TagLib Audio Meta-Data Library.
+
+Package: gsm-utils
+Status: install ok installed
+Priority: extra
+Section: comm
+Installed-Size: 336
+Maintainer: Mark Purcell <msp@debian.org>
+Source: gsmlib
+Version: 1.10-5
+Depends: libc6 (>= 2.3.1-1), libgcc1 (>= 1:3.3-1), libgsmme1c102 (>= 1.10-5), libstdc++5 (>= 1:3.3-1)
+Description: GSM mobile phone access applications
+ Some simple command line programs to access a GSM mobile phone via
+ GSM modem or IrDA. Functions include: modification of phone books and
+ reading, writing, sending and receiving SMS messages. Uses the GSM
+ standards ETSI GSM 07.07, ETSI GSM 07.05, and others.
+ .
+ Website: http://www.pxh.de/fs/gsmlib/
+
+Package: libsmbclient-dev
+Status: install ok installed
+Priority: extra
+Section: devel
+Installed-Size: 2132
+Maintainer: Eloy A. Paris <peloy@debian.org>
+Architecture: i386
+Source: samba
+Version: 3.0.7-1
+Depends: libsmbclient (= 3.0.7-1)
+Description: libsmbclient static libraries and headers
+ libsmbclient allows to write applications that use the SMB protocol.
+ This gives applications the ability to talk to Microsoft Windows servers
+ and Unix servers running Samba.
+ .
+ This package contains the libsmbclient static libraries and headers
+ needed to build applications that use SMB services.
+
+Package: libsm6
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 332
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0)
+Conflicts: xlibs (<< 4.3.0)
+Description: X Window System Session Management library
+ libSM provides an interface to XSMP, the X Session Management Protocol.
+ XSMP is a protocol that facilitates the management of groups of client
+ applications by a session manager. The session manager can cause clients to
+ save their state, to shut down, and to be restarted into a previously saved
+ state. This protocol is layered on top of the X Consortium's ICE protocol
+ (see the libice6 package).
+
+Package: klaptopdaemon
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 676
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeutils
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxtst6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: KDE battery monitoring and management for laptops
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ battery monitoring and management for laptops.
+ .
+ This package is part of the official KDE utils module.
+
+Package: imlib-base
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 328
+Maintainer: Steve M. Robbins <smr@debian.org>
+Architecture: all
+Source: imlib+png2
+Version: 1.9.14-16
+Replaces: gdkimlib0, gdkimlib1, imlib-progs (<< 1.9.10-4), imlib1-dev (<< 1.9.14-12), gdk-imlib1-dev (<< 1.9.14-12), imlib-dev (<< 1.9.14-12), gdk-imlib-dev (<< 1.9.14-12)
+Pre-Depends: dpkg (>= 1.6.8)
+Recommends: imlib1 | imlib2 | gdk-imlib1
+Conflicts: gdkimlib0, gdkimlib1, imlib-progs (<< 1.9.10-4), imlib1-dev (<< 1.9.14-12), gdk-imlib1-dev (<< 1.9.14-12), imlib-dev (<< 1.9.14-12), gdk-imlib-dev (<< 1.9.14-12)
+Conffiles:
+ /etc/imlib/im_palette-small.pal ffeb48e9dec7b50b54afd9d8727b8635
+ /etc/imlib/im_palette-tiny.pal e34ed0f60b451978fb0984e9ba80b235
+ /etc/imlib/im_palette.pal f965cac09d33b2d4c53c6b15d4772730
+ /etc/imlib/imrc d4e9318da2da00c392fd6057d34d3fcf
+Description: Common files needed by the Imlib/Gdk-Imlib packages
+ Configuration files used by all Imlib and Gdk-imlib packages. It also
+ contains the Imlib programmer's guide.
+
+Package: w3m
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 1824
+Maintainer: Fumitoshi UKAI <ukai@debian.or.jp>
+Architecture: i386
+Version: 0.5.1-3
+Replaces: w3m-ssl, w3mmee
+Provides: www-browser
+Depends: libc6 (>= 2.3.2.ds1-4), libgc1, libgpmg1 (>= 1.19.6-1), libncurses5 (>= 5.4-1), libssl0.9.7, zlib1g (>= 1:1.2.1)
+Recommends: ca-certificates
+Suggests: w3m-img, mime-support, menu (>> 1.5), w3m-el, migemo, man-db
+Conflicts: w3m-ssl
+Conffiles:
+ /etc/w3m/config 30ea9b0588223f290ffc73cbe0df02e4
+ /etc/w3m/mailcap fe00c489702ba1bd12a5b40d580600fa
+Description: WWW browsable pager with excellent tables/frames support
+ w3m is a text-based World Wide Web browser with IPv6 support.
+ It features excellent support for tables and frames. It can be used
+ as a standalone file pager, too.
+ .
+ * You can follow links and/or view images in HTML.
+ * Internet message preview mode, you can browse HTML mail.
+ * You can follow links in plain text if it includes URL forms.
+ * With w3m-img, you can view image inline.
+ .
+ For more information,
+ see http://sourceforge.net/projects/w3m
+
+Package: gcc-3.3-base
+Status: install ok installed
+Priority: important
+Section: devel
+Installed-Size: 172
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-3.3
+Version: 1:3.3.4-11
+Description: The GNU Compiler Collection (base package)
+ This package contains files common to all languages and libraries
+ contained in the GNU Compiler Collection (GCC).
+
+Package: klogd
+Status: install ok installed
+Priority: important
+Section: base
+Installed-Size: 132
+Maintainer: Martin Schulze <joey@debian.org>
+Architecture: i386
+Source: sysklogd
+Version: 1.4.1-15
+Replaces: sysklogd
+Provides: linux-kernel-log-daemon
+Depends: libc6 (>= 2.3.2.ds1-4), sysklogd | system-log-daemon
+Conflicts: sysklogd (<= 1.3-33)
+Conffiles:
+ /etc/init.d/klogd 4c2595d4db7fd73ca6f211055ce21c6d
+Description: Kernel Logging Daemon
+ The klogd daemon listens to kernel message sources and is responsible
+ for prioritizing and processing operating system messages. The klogd
+ daemon can run as a client of syslogd or optionally as a standalone
+ program. Klogd can now be used to decode EIP addresses if it can
+ determine a System.map file.
+
+Package: attal
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 2336
+Maintainer: Raphael Goulais (Rafou) <raphael@nicedays.net>
+Architecture: i386
+Version: 0.8-1
+Config-Version: 0.8-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libqt3c102-mt (>= 3:3.2.3), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), attal-themes-medieval (= 0.8-1)
+Description: turn-based strategy game
+ Attal is an turn-based strategy game that can be played alone (against
+ AI) or against other through a network.
+ .
+ Homepage: http://www.attal-thegame.org/
+
+Package: mldonkey-server
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 6028
+Maintainer: Sylvain Le Gall <sylvain.le-gall@polytechnique.org>
+Architecture: i386
+Source: mldonkey
+Version: 2.5.28-2
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1), debconf (>= 0.5) | debconf-2.0, adduser, mime-support, debconf (>= 0.2.26), ucf
+Conffiles:
+ /etc/default/mldonkey-server a765c299a24d7fb4188702bc7dfd4083
+ /etc/init.d/mldonkey-server e9b7c22aef139aca43382634810b6c78
+Description: Door to the 'donkey' network
+ MLDonkey is a door to the 'donkey' network, a decentralized network used to
+ exchange big files on the Internet. It is written in a wonderful language,
+ called Objective-Caml, and present most features of the basic Windows donkey
+ client, plus some more:
+ - works on UNIX-compatible platforms.
+ - remote control by telnet, WEB browser or GTK interface.
+ - access to EDonkey ( edonkey2000, overnet, emule )
+ - access to Gnutella1/2
+ - access to Soulseek
+ - access to Directconnect
+ - access to Bittorrent
+ - access to Overnet
+ - access to Opennap
+
+Package: tightvncserver
+Status: purge ok not-installed
+Priority: optional
+Section: x11
+
+Package: dictd
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 396
+Maintainer: Kirk Hilliard <kirk@debian.org>
+Architecture: i386
+Version: 1.9.14-2
+Provides: dict-server
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1), netbase, adduser, dictzip
+Recommends: dict | dict-client
+Suggests: dict-gcide | dict-web1913, dict-wn, dict-jargon, dict-foldoc
+Conffiles:
+ /etc/init.d/dictd b1d8e1a1875876e2bc19d05ed0ab648b
+ /etc/dictd/dictd.conf 88b9de21820cd59b529294e7c9d6d1b5
+ /etc/dictd/dictd.order 9c038bc30a58b5ff2a23a85523ef4369
+ /etc/dictd/dictdconfig.alias ee64b45170dd79fe8e8ed40e2f6621e6
+ /etc/default/dictd b4cb2729584edf31a4f9ea8a5b57c188
+Description: Dictionary Server
+ dictd is a TCP based server that allows a client to access dictionary
+ definitions from a set of natural language dictionary databases.
+ .
+ Many dictionary databases have been packaged for debian. They are
+ discussed in more detail in the file
+ /usr/doc/dictd/README.Debian.gz
+ .
+ Either dict-gcide or dict-wn is essential for a useful English
+ language dictionary server. It is strongly recommended that both be
+ installed. If you are interested in computer terminology, it is
+ recommended that one or more of dict-jargon, dict-foldoc, and
+ dict-vera also be installed.
+ .
+ The client program, dict, is packaged in dict*.deb If you are
+ running a server, you will want the client for all machines in your
+ network, and for testing server operations.
+
+Package: libraw1394-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 248
+Maintainer: Ben Collins <bcollins@debian.org>
+Source: libraw1394
+Version: 0.10.1-1
+Depends: libc6-dev, libc6 (>= 2.3.2-1), libraw1394-5
+Description: library for direct access to IEEE 1394 bus - development files
+ libraw1394 is the only supported interface to the kernel side raw1394
+ of the Linux IEEE-1394 subsystem, which provides direct access to the
+ connected 1394 buses to user space. Through libraw1394/raw1394,
+ applications can directly send to and receive from other nodes without
+ requiring a kernel driver for the protocol in question.
+ .
+ This package contains the include files and static library for
+ libraw1394, as well as the testlibraw program and programmer's
+ documentation.
+
+Package: libdm0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 60
+Maintainer: Nathan Scott <nathans@debian.org>
+Architecture: i386
+Source: dmapi
+Version: 2.2.0-1
+Replaces: dmapi
+Provides: dmapi
+Depends: libc6 (>= 2.3.2.ds1-4)
+Recommends: xfsdump (>= 2.0.0)
+Description: Data Management API runtime environment
+ Files required by system software using the Data Management API
+ (DMAPI). This is used to implement the interface defined in the
+ X/Open document: Systems Management: Data Storage Management
+ (XDSM) API dated February 1997. This interface is implemented
+ by the libdm library.
+
+Package: libmm13
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 72
+Maintainer: Mark Brown <broonie@debian.org>
+Source: mm
+Version: 1.3.0-1
+Config-Version: 1.3.0-1
+Depends: libc6 (>= 2.3.1-1)
+Description: Shared memory library - runtime
+ OSSP mm is a two layer abstraction library which simplifies the use of
+ shared memory between forked (and therefore closely related) processes.
+ It hides all platform-dependent aspects of the process from the user
+ and provides a malloc(3)-style API.
+ .
+ This package contains the runtime libraries required to run programs
+ dynamically linked against mm.
+
+Package: gs-gpl
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 7832
+Maintainer: Masayuki Hatta (mhatta) <mhatta@debian.org>
+Architecture: i386
+Version: 8.01-5
+Replaces: gs (<< 8.01), gs-pdfencrypt (<< 7.00)
+Provides: gs, gs-pdfencrypt, postscript-viewer
+Depends: libc6 (>= 2.3.2.ds1-4), libgimpprint1 (>= 4.2.7), libice6 | xlibs (>> 4.1.0), libjpeg62, libpaper1, libpng12-0 (>= 1.2.5.0-4), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), gs-common (>= 0.2)
+Recommends: gsfonts (>= 6.0-1), psfontmgr
+Suggests: hpijs
+Conflicts: gs (<< 8.01), gs-aladdin (<< 7.00), gs-cjk-resource (<< 1.20010910-1), gs-pdfencrypt (<< 7.00)
+Conffiles:
+ /etc/gs-gpl/FAPIfontmap 8cebddae5dcade437eef859f46fdc31b
+ /etc/gs-gpl/FAPIcidfmap bc416703e7471b71abb5be5d9f5aafb4
+ /etc/gs-gpl/Fontmap d977b6e319a658e0eb7073ccac617784
+ /etc/gs-gpl/cidfmap 9fa2801968383478b8b79ea5c3f84704
+Description: The GPL Ghostscript PostScript interpreter
+ This is the free, basic and standard flavour among several
+ Ghostscripts available for Debian. If you are not sure which version
+ you should install, choose this.
+ .
+ Ghostscript is used for PostScript preview and printing. Usually as
+ a back-end to a program such as ghostview, it can display PostScript
+ documents in an X11 environment.
+ .
+ Furthermore, it can render PostScript files as graphics to be printed
+ on non-PostScript printers. Supported printers include common
+ dot-matrix, inkjet and laser models.
+ .
+ Package gsfonts contains a set of standard fonts for Ghostscript.
+ .
+ The Ghostscript World Wide Web home page is at http://www.ghostscript.com/
+
+Package: guile-1.6-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 1656
+Maintainer: Rob Browning <rlb@defaultvalue.org>
+Source: guile-1.6
+Version: 1.6.4-4
+Provides: libguile-dev
+Depends: guile-1.6, libc6-dev, libncurses5-dev, libreadline4-dev
+Conflicts: libguile-dev
+Description: Development files for Guile 1.6
+ This package contains files needed for development using Guile 1.6.
+ .
+ Guile is a Scheme implementation designed for real world programming,
+ providing a rich Unix interface, a module system, an interpreter, and
+ many extension languages. Guile can be used as a standard #! style
+ interpreter, via #!/usr/bin/guile, or as an extension language for
+ other applications via libguile.
+
+Package: netkit-inetd
+Status: install ok installed
+Priority: important
+Section: net
+Installed-Size: 136
+Maintainer: Anthony Towns <ajt@debian.org>
+Source: netkit-base
+Version: 0.10-9
+Replaces: netbase (<< 4.00)
+Depends: libc6 (>= 2.2.4-4)
+Suggests: debconf
+Conffiles:
+ /etc/init.d/inetd 85fffe0f5486475d8a92d456e905c0be
+ /etc/cron.daily/netkit-inetd d68e035869ede8add7dedcc90fe3116a
+Description: The Internet Superserver
+ The inetd server is a network daemon program that specializes in managing
+ incoming network connections. It's configuration file tells it what
+ program needs to be run when an incoming connection is received. Any
+ service port may be configured for either of the tcp or udp protcols.
+
+Package: wvdial
+Status: install ok installed
+Priority: optional
+Section: comm
+Installed-Size: 284
+Maintainer: Patrick Patterson <ppatters@debian.org>
+Architecture: i386
+Version: 1.54.0-1
+Depends: ppp (>= 2.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.2-1), libstdc++5 (>= 1:3.3.2-1), libwvstreams3-base (>= 3.75+20040221-1)
+Conffiles:
+ /etc/ppp/peers/wvdial 48f98a3f7a5a949b9470036693683eba
+ /etc/ppp/peers/wvdial-pipe fc2af7efa7a974b4012e58dfc024822d
+Description: PPP dialer with built-in intelligence
+ WvDial sacrifices some of the flexibility of programs like "chat" in order
+ to make your dialup configuration easier. When you install this package,
+ your modem will be detected automatically and you need to specify just
+ three parameters: the phone number, username, and password. WvDial knows
+ enough to dial with most modems and log in to most servers without any
+ other help.
+ .
+ In particular, you no longer need a "chat script" to handle the most common
+ situations.
+
+Package: kde-themes-thinkeramik
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 844
+Maintainer: JimmyMallmann <jimmymallmann@omega-red.cjb.net>
+Version: 3.0.0-1
+Replaces: kde-themes-thinkeramik (<< 1.1.1), kde-themes-thinkeramik (<< 1.0), kde-themes-thinkeramik (<< 1.2), kde-themes-thinkeramik (<< 1.3), kde-themes-thinkeramik (<< 1.4), kde-themes-thinkeramik (<< 1.5), kde-themes-thinkeramik (<< 1.6), kde-themes-thinkeramik (<< 1.7), kde-themes-thinkeramik (<< 1.8), kde-themes-thinkeramik (<< 1.9), kde-themes-thinkeramik (<< 1.10), kde-themes-thinkeramik (<< 1.11), kde-themes-thinkeramik (<< 1.12), kde-themes-thinkeramik (<< 1.12a), kde-themes-thinkeramik (<< 2.0), kde-themes-thinkeramik (<< 2.1), kde-themes-thinkeramik (<< 2.2), kde-themes-thinkeramik (<< 2.3), kde-themes-thinkeramik (<< 2.4), kde-themes-thinkeramik (<< 2.5), kde-themes-thinkeramik (<< 2.6), kde-themes-thinkeramik (<< 2.7), kde-themes-thinkeramik (= 2.8), kde-themes-thinkeramik (<< 2.9.0)
+Depends: kdelibs4, kwin
+Description: Description: Thin Keramik, powered by Keramik style engine
+
+Package: junkbuster
+Status: install ok installed
+Priority: optional
+Section: web
+Installed-Size: 324
+Maintainer: Paul Haggart <phaggart@debian.org>
+Version: 2.0.2-0.2
+Depends: libc6 (>= 2.2.4-4), dpkg (>= 1.4.1.17), logrotate
+Suggests: www-browser
+Conffiles:
+ /etc/junkbuster/config 88115e103125f21a9991ccf7c5ed6321
+ /etc/junkbuster/blockfile 0af231a9f7379fd66f335e2673349556
+ /etc/junkbuster/cookiefile 2be535e85948271637d46fd637193657
+ /etc/junkbuster/forwardfile 35a53ab70323a6e084674ec1b9bdc1d8
+ /etc/junkbuster/acl 0a61d7758dbb9073b865cd87efff6229
+ /etc/junkbuster/trust ddbb22f69f46d7354b4340be07c58de7
+ /etc/junkbuster/imagefile ded36ce26a194cfc156bc68e53335266
+ /etc/junkbuster/blockpage c05ed94da0a3881f34b008961250a904
+ /etc/init.d/junkbuster 8da01e5855199ff66ca3db815a056d3b
+ /etc/logrotate.d/junkbuster aa847a6a3d52ac06c539251fcc5e1c9f
+Description: The Internet Junkbuster!
+ Junkbuster is an instrumentable proxy that filters the HTTP stream between
+ web servers and browsers. It can prevent ads and other unwanted junk from
+ appearing in your web browser.
+
+Package: php4
+Status: deinstall ok config-files
+Priority: optional
+Section: web
+Installed-Size: 3196
+Maintainer: Adam Conrad <adconrad@0c3.net>
+Architecture: i386
+Version: 4:4.3.4-4
+Config-Version: 4:4.3.4-4
+Replaces: php4-dev (<< 4.0.2-6), php4-xml
+Provides: php4-xml, phpapi-20020918
+Depends: libbz2-1.0, libc6 (>= 2.3.2.ds1-4), libdb4.2, libexpat1 (>= 1.95.6), libmm13, libpam0g (>= 0.76), libpcre3 (>= 4.5), libssl0.9.7, zlib1g (>= 1:1.2.1), debconf (>= 0.5) | debconf-2.0, mime-support (>= 2.03-1), apache-common (>= 1.3.29.0.2)
+Suggests: phpdoc, php4-pear
+Conflicts: php3, php4-dev (<< 4.0.4-1), php4-cgi (<< 4.0.4-1), php4-cgi-curl, php4-cgi-domxml, php4-cgi-gd, php4-cgi-imap, php4-cgi-ldap, php4-cgi-mhash, php4-cgi-mysql, php4-cgi-pgsql, php4-cgi-snmp, php4-cgi-xml, php4-xml, php4-sablot
+Description: A server-side, HTML-embedded scripting language
+ This package provides the loadable module for the apache webserver. Compiled
+ in modules are: bcmath, calendar, curl, dba, exif, filepro, ftp, mm, sockets,
+ wddx, xml, yp and zlib.
+ .
+ PHP4 is an HTML-embedded scripting language. Much of its syntax is borrowed
+ from C, Java and Perl with a couple of unique PHP-specific features thrown
+ in. The goal of the language is to allow web developers to write
+ dynamically generated pages quickly.
+ .
+ The most significant change between php3 and php4 is the new parser engine
+ called Zend, which boosts performance quite impressively.
+
+Package: dput
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 196
+Maintainer: Christian Kurz <shorty@debian.org>
+Architecture: all
+Version: 0.9.2.14
+Depends: python (>= 2.3), python (<< 2.4), debconf, gnupg
+Suggests: ssh, lintian, rsync
+Conffiles:
+ /etc/dput.cf f8c85ba05c138a9612cfd8b115f626f6
+ /etc/bash_completion.d/dput d3ce062ce2b500c168afaa64d3c2ecc0
+Description: Debian package upload tool
+ This script will allow you to put one or more Debian packages into the
+ archive.
+ .
+ It includes some tests to verify that the package is policy-compliant.
+ It offers the possibility to run lintian before the upload. It can also
+ run dinstall in dry-run-mode, when having used an appropriate upload method.
+ This is very useful to see if the the upload will pass dinstall sanity
+ checks in the next run.
+ .
+ It's intended mainly for Debian maintainers only, although it can
+ also be useful for people maintaining local apt repositories.
+
+Package: foomatic-db
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 9804
+Maintainer: Chris Lawrence <lawrencc@debian.org>
+Architecture: all
+Version: 20040705-1
+Depends: foomatic-filters
+Recommends: foomatic-db-engine
+Suggests: foomatic-db-hpijs, foomatic-db-gimp-print, foo2zjs
+Conflicts: foomatic-bin (<< 2.9)
+Description: linuxprinting.org printer support - database
+ Foomatic is a printing system designed to make it easier to set up
+ common printers for use with Debian (and other operating systems).
+ It provides the "glue" between a print spooler (like CUPS or lpr) and
+ your actual printer, by telling your computer how to process files
+ sent to the printer.
+ .
+ This package contains the printer database distributed by
+ linuxprinting.org for most common drivers. You will probably need
+ the foomatic-db-engine package for this package to be useful.
+ .
+ The foomatic-db-hpijs package adds additional printers supported by
+ the HPIJS printer driver backend, particularly consumer inkjet
+ printers from Hewlett-Packard.
+ .
+ The foomatic-db-gimp-print package adds additional printers supported
+ by the GIMP-Print printer driver backend, most commonly used for
+ color photo printing on consumer inkjets.
+ .
+ The foo2zjs package adds backend support for a number of printers
+ from HP and Minolta/QMS that use the Zenographics ZjStream protocol.
+ .
+ Home Page: http://www.linuxprinting.org/
+
+Package: ytalk
+Status: deinstall ok config-files
+Priority: optional
+Section: net
+Installed-Size: 140
+Maintainer: Steve McIntyre <93sam@debian.org>
+Version: 3.1.1-5
+Config-Version: 3.1.1-5
+Depends: libc6 (>= 2.2.4-4), libncurses5 (>= 5.2.20010310-1), xlibs (>> 4.1.0), talkd | netstd (<= 3.07-3)
+Conffiles:
+ /etc/ytalkrc af9290c7abef3b055a63d2c3bdb8d34f
+Description: Enhanced talk program with X support.
+ Ytalk is a multi-user chat program. It works exactly like the UNIX talk
+ program and even communicates with the same talk daemons. Ytalk's advantages
+ come in it's ability to allow multiple connections.
+
+Package: libpcap0
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 140
+Maintainer: Torsten Landschoff <torsten@debian.org>
+Source: libpcap
+Version: 0.6.2-2
+Config-Version: 0.6.2-2
+Depends: libc6 (>= 2.2.3-7)
+Conflicts: tcpdump (<< 3.5)
+Description: System interface for user-level packet capture.
+ libpcap (Packet CAPture) provides a portable framework for low-level
+ network monitoring. Applications include network statistics collection,
+ security monitoring, network debugging, etc.
+ .
+ Since almost every system vendor provides a different interface for
+ packet capture, and since there are several tools that require this
+ functionality, we've created this system-independent API to ease in
+ porting and to alleviate the need for several system-dependent packet
+ capture modules in each application.
+ .
+ Further information is available at <URL: http://www.tcpdump.org/>
+
+Package: libpng12-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 252
+Maintainer: Josselin Mouette <joss@debian.org>
+Architecture: i386
+Source: libpng3
+Version: 1.2.5.0-7
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1)
+Description: PNG library - runtime
+ libpng is a library implementing an interface for reading and writing
+ PNG (Portable Network Graphics) format files.
+ .
+ This package contains the runtime library files needed to run software
+ using libpng.
+ .
+ URL: http://www.libpng.org/pub/png/libpng.html
+
+Package: kpoker
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 424
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdegames1 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1), kdegames-card-data
+Description: KDE based Poker clone
+ KPoker is a KDE compliant clone of those highly addictive pocket
+ video poker games which are sometimes called "Videopoker" as well.
+
+Package: kchart
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 1924
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: koffice
+Version: 1:1.3.2-2
+Replaces: koffice-libs (<< 1:1.1-20010404-0)
+Depends: kdelibs4 (>= 4:3.2.3), koffice-libs (>= 1:1.3.0-0), libart-2.0-2 (>= 2.3.16), libaspell15 (>= 0.50.5), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter, koffice-doc-html
+Description: a chart drawing program for the KDE Office Suite
+ KChart is a chart drawing application. It can be used to embed charts
+ into KOffice documents. KChart is easy to use and highly configurable.
+ .
+ This package is part of the KDE Office Suite.
+
+Package: gtk2-engines-qtpixmap
+Status: purge ok not-installed
+Priority: optional
+Section: graphics
+Architecture: i386
+
+Package: libxmu-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 496
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs-dev (<< 4.3.0)
+Depends: libxmu6 (= 4.3.0.dfsg.1-7), x-dev, libxt-dev, libsm-dev, libice-dev, libxext-dev, libx11-dev, libc6-dev | libc-dev
+Conflicts: xlibs-dev (<< 4.3.0)
+Description: X Window System miscellaneous utility library development files
+ Header files and a static version of the Xmu library are provided by this
+ package.
+ .
+ See the libxmu6 package for further information.
+
+Package: luma
+Status: install ok installed
+Priority: extra
+Section: checkinstall
+Installed-Size: 2672
+Maintainer: Bjorn Ove Grotan (bgrotan) <bog@grotan.com>
+Architecture: i386
+Version: 1.4.0-1
+Depends: python (>= 2.3), python-ldap (>> 1.9), python-qt3 (>= 3.11)
+Description: GUI utility for accessing and managing LDAP database
+ Luma is a graphical utility for accessing and managing data stored on
+ LDAP servers. It is written in Python, using PyQt and python-ldap.
+ Plugin-support is included and useful widgets with LDAP-functionality
+ for easy creation of plugins are delivered.
+ .
+ Following plugins are available:
+ - Browser
+ - Search
+ - Addressbook
+ - Template
+ - Massive User Creation
+ - Admin Utilities
+
+Package: libconsole
+Status: install ok installed
+Priority: important
+Section: libs
+Installed-Size: 452
+Maintainer: Alastair McKinstry <mckinstry@debian.org>
+Architecture: i386
+Source: console-tools
+Version: 1:0.2.3dbs-55
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: console-tools-libs
+Description: Shared libraries for Linux console and font manipulation
+ This package includes the libconsole and libcfont libraries, which
+ are intended to provide a high-level programming interface to the
+ Linux console, and console-font files.
+
+Package: libxdelta2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 144
+Maintainer: LaMont Jones <lamont@debian.org>
+Source: xdelta
+Version: 1.1.3-6
+Depends: libc6 (>= 2.3.1-1), libglib1.2 (>= 1.2.0)
+Description: Xdelta runtime library
+ Xdelta is an application program designed to compute changes between
+ files. These changes (deltas) are similar to the output of the
+ "diff" program in that they may be used to store and transmit only the
+ changes between files. However, unlike diff, the output of Xdelta is
+ not expressed in a human-readable format--Xdelta can also apply
+ these deltas to a copy of the original file. Xdelta uses a fast,
+ linear algorithm and performs well on both binary and text files.
+ .
+ This is the runtime library.
+
+Package: dict-web1913
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 6
+Maintainer: Bob Hilliard <hilliard@debian.org>
+Source: dict-gcide (0.48-4)
+Version: 1.4-0.47pd-9
+Depends: dict-gcide, debconf
+Description: Empty package to assist the transition to dict-gcide
+ .
+ This package may be removed after dict-gcide is installed.
+
+Package: wwwoffle
+Status: deinstall ok config-files
+Priority: optional
+Section: web
+Installed-Size: 5784
+Maintainer: Paul Slootman <paul@debian.org>
+Version: 2.7a-1
+Config-Version: 2.7a-1
+Depends: libc6 (>= 2.2.4-4), zlib1g (>= 1:1.1.4), debconf (>= 0.5.00), fileutils (>= 4.0), debianutils (>= 1.13.1)
+Suggests: htdig (>= 3.1.0b4), logrotate, pdnsd
+Conffiles:
+ /etc/cron.daily/wwwoffle 207195736ae6725c4117a8fa42334e32
+ /etc/init.d/wwwoffle f55484265bc3f6f3330f5fb46c841591
+ /etc/logrotate.d/wwwoffle e8713f908c56353860b44fc3776f9934
+ /etc/ppp/ip-down.d/99wwwoffle 46fda867996f6c37137fc33ccb874e48
+ /etc/ppp/ip-up.d/1wwwoffle 1006213bf88abb61c4730cabfb416857
+ /etc/wwwoffle/htdig/htdig-full.conf 8d2423ff3255870fa956ded8ba182583
+ /etc/wwwoffle/htdig/htdig-incr.conf c0e966b0874dff5edf1e2717efe68987
+ /etc/wwwoffle/htdig/htdig-lasttime.conf d75d917bb7ccae0fd5ce91645826c3ea
+ /etc/wwwoffle/htdig/htfuzzy.conf cc352dd4aa7e25f4de7d76b349f008ae
+ /etc/wwwoffle/htdig/htmerge.conf 6539ef7d2e7da5634608d8dccf7fec33
+ /etc/wwwoffle/htdig/htsearch.conf 7546f9f9285e9344846764dde4145e9e
+ /etc/wwwoffle/mnogosearch/indexer-full.conf ee2db965a2bdd1859b17538077f0aedc
+ /etc/wwwoffle/mnogosearch/indexer-full.old.conf 1c7d7c406b5e7c9a7ba75d56841d8106
+ /etc/wwwoffle/mnogosearch/indexer-incr.conf ee2db965a2bdd1859b17538077f0aedc
+ /etc/wwwoffle/mnogosearch/indexer-incr.old.conf 1c7d7c406b5e7c9a7ba75d56841d8106
+ /etc/wwwoffle/mnogosearch/result.html f9f90f266e7014b9c8ab8a673fa4f894
+ /etc/wwwoffle/namazu/NMZ.body 288e58000b8d5c2ea3b842c34bd0a98f
+ /etc/wwwoffle/namazu/NMZ.foot bccf2bfa33e454dffc7a07e3191da929
+ /etc/wwwoffle/namazu/NMZ.head 580c3a4b782c4b33a5a9996aa90bfdaa
+ /etc/wwwoffle/namazu/NMZ.result.normal 7af003334a41e04db6ffed067aa89b88
+ /etc/wwwoffle/namazu/NMZ.result.short 344cdd28eb6cf33d70d22c176dfaf2bd
+ /etc/wwwoffle/namazu/NMZ.tips cae8b7f487fed45a530ec0b1ec8fadfd
+ /etc/wwwoffle/namazu/mknmzrc 3da09ff7c9e808febfc70b6bd6b64ad4
+ /etc/wwwoffle/namazu/namazurc 818d1947ecb6633160c1aeed3bb75d2d
+ /etc/wwwoffle/robots.txt 16830e4ce942aa2b07066611a0b7e221
+ /etc/wwwoffle/wwwoffle.pac 042d9b615f11b85d817bd49c949001d1
+Description: World Wide Web OFFline Explorer
+ The wwwoffled program is a simple proxy server with special features
+ for use with dial-up internet links. This means that it is possible
+ to browse web pages and read them without having to remain connected.
+ .
+ While Online
+ - Caching of pages that are viewed for review later.
+ - Conditional fetching to only get pages that have changed.
+ - Modification of pages e.g. to remove the BLINK tag or popup windows.
+ .
+ While Offline
+ - The ability to follow links and mark other pages for download.
+ - Browser or command line interface to select pages for downloading.
+ - Optional info on bottom of pages showing cached date and allowing refresh.
+ - Works with password protected pages and pages containing forms.
+ - Cached pages can be searched with the ht://dig search engine.
+
+Package: apt-utils
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 488
+Maintainer: APT Development Team <deity@lists.debian.org>
+Architecture: i386
+Source: apt
+Version: 0.5.27
+Replaces: apt (<< 0.5.9)
+Provides: libapt-inst-libc6.3-5-1.0
+Depends: libapt-pkg-libc6.3-5-3.3, libc6 (>= 2.3.2.ds1-4), libdb4.2, libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1)
+Description: APT utility programs
+ This package contains some APT utility programs such as apt-ftparchive,
+ apt-sortpkgs and apt-extracttemplates.
+ .
+ apt-extracttemplates is used by debconf to prompt for configuration
+ questions before installation. apt-ftparchive is used to create Package
+ and other index files. apt-sortpkgs is a Package/Source file normalizer.
+
+Package: python2.3-iconvcodec
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 65
+Maintainer: Changwoo Ryu <cwryu@debian.org>
+Source: python-iconvcodec
+Version: 1.1.2-1
+Depends: libc6 (>= 2.3.2.ds1-4), python2.3
+Description: Python universal Unicode codec, using iconv()
+ This is Python Unicode codec using iconv(). It supports all
+ the encodings which are provided by iconv().
+ .
+ This package is for Python 2.3.
+
+Package: lisa
+Status: deinstall ok config-files
+Priority: optional
+Section: net
+Installed-Size: 456
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Source: kdenetwork
+Version: 4:3.1.5-1
+Config-Version: 4:3.1.5-1
+Replaces: klisa (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.1.5), libart-2.0-2 (>= 2.3.8), libaudio2, libc6 (>= 2.3.2.ds1-4), libfam0c102, libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.3.2-1), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libstdc++5 (>= 1:3.3.2-1), libxcursor1, libxft2 (>> 2.1.1), libxrender1, xlibmesa3-gl | libgl1, xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), debconf
+Suggests: samba-common
+Conflicts: klisa (<< 4:3.0.0)
+Conffiles:
+ /etc/lisarc c49d5d90eeaff390dd6b271e118d785f
+ /etc/init.d/lisa 87c255fb68baacfec409eaed1088e252
+Description: LAN Information Server
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ LISa is intended to provide a kind of "network neighborhood" but only
+ relying on the TCP/IP protocol stack, no smb or whatever.
+ .
+ This package is part of the official KDE network module.
+
+Package: ash
+Status: install ok installed
+Priority: optional
+Section: shells
+Installed-Size: 68
+Maintainer: Gerrit Pape <pape@smarden.org>
+Architecture: all
+Source: dash
+Version: 0.5.1-3
+Pre-Depends: dash
+Description: Compatibility package for the Debian Almquist Shell
+ This package exists so that users of the "ash" package can upgrade to the
+ "dash" package which replaces the former. It includes the /bin/ash symlink.
+ You can remove this package if you do not use /bin/ash explicitly.
+
+Package: kodo
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 244
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdetoys
+Version: 4:3.2.3-3
+Replaces: kdetoys (<< 4:3.0.1-0), task-kdetoys
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter, kdetoys-doc-html
+Conflicts: task-kdetoys
+Description: mouse odometer for KDE
+ KOdometer measures your desktop mileage. It tracks the movement of your mouse
+ pointer across your desktop and renders it in inches/feet/miles! It can
+ do cm/metres/km too. Its most exciting feature is the tripometer, and its
+ utter uselessness.
+ .
+ This package is part of the official KDE toys module.
+
+Package: libk3bcore1
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 320
+Maintainer: Jean-Michel Kelbert <kelbert@debian.org>
+Source: k3b
+Version: 0.9-4
+Config-Version: 0.9-4
+Depends: kdelibs4 (>= 4:3.1.4), libart-2.0-2 (>= 2.3.8), libaudio2, libc6 (>= 2.3.2-1), libfam0c102, libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.3.1-1), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.1), libstdc++5 (>= 1:3.3.1-1), libxcursor1 (>= 1.0.2), libxft2 (>> 2.1.1), libxrender1 (>= 0.8.1), xlibmesa3-gl | libgl1, xlibs (>> 4.1.0), zlib1g (>= 1:1.1.4)
+Description: The KDE cd burning application library - runtime files
+ The library libk3bcore, handles the managers of k3b.
+ K3b is a GUI frontend to the cd recording programs cdrdao and cdrecord.
+ It's aim is to provide a very user friendly interface to all the tasks
+ that come with cd recording.
+
+Package: libk3bproject1
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 1596
+Maintainer: Jean-Michel Kelbert <kelbert@debian.org>
+Source: k3b
+Version: 0.10.3-5
+Config-Version: 0.10.3-5
+Provides: libk3bproject
+Depends: kdelibs4 (>= 4:3.1.5), libart-2.0-2 (>= 2.3.8), libaudio2, libc6 (>= 2.3.2.ds1-4), libfam0c102, libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.3.2-1), libk3bcore2 (>= 0.10.3), libk3bplugin1 (>= 0.10.3), libk3btools1 (>= 0.10.3), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libstdc++5 (>= 1:3.3.2-1), libxcursor1, libxft2 (>> 2.1.1), libxrender1, xlibmesa3-gl | libgl1, xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Description: The KDE cd burning application library - project runtime files
+ The library libk3bproject, handles the projects of k3b.
+ K3b is a GUI frontend to the cd recording programs cdrdao and cdrecord.
+ It's aim is to provide a very user friendly interface to all the tasks
+ that come with cd recording and a lot more.
+
+Package: libk3bcore2
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 684
+Maintainer: Jean-Michel Kelbert <kelbert@debian.org>
+Source: k3b
+Version: 0.10.3-5
+Config-Version: 0.10.3-5
+Provides: libk3bcore
+Depends: kdelibs4 (>= 4:3.1.5), libart-2.0-2 (>= 2.3.8), libaudio2, libc6 (>= 2.3.2.ds1-4), libfam0c102, libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.3.2-1), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libstdc++5 (>= 1:3.3.2-1), libxcursor1, libxft2 (>> 2.1.1), libxrender1, xlibmesa3-gl | libgl1, xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Description: The KDE cd burning application library - core runtime files
+ The library libk3bcore, handles the managers of k3b.
+ K3b is a GUI frontend to the cd recording programs cdrdao and cdrecord.
+ It's aim is to provide a very user friendly interface to all the tasks
+ that come with cd recording and a lot more.
+
+Package: g++-3.3
+Status: install ok installed
+Priority: standard
+Section: devel
+Installed-Size: 3788
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-3.3
+Version: 1:3.3.4-11
+Replaces: gcc (<= 2.7.2.3-3)
+Provides: c++-compiler
+Depends: gcc-3.3-base, libc6 (>= 2.3.2.ds1-4), gcc-3.3 (>= 1:3.3.4-11), gcc-3.3 (<< 1:3.3.5), libstdc++5-3.3-dev (>= 1:3.3.4-11)
+Suggests: gcc-3.3-doc (>= 1:3.3.4-11)
+Description: The GNU C++ compiler
+ This is the GNU C++ compiler, a fairly portable optimizing compiler for C++.
+
+Package: kicker
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 6052
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0), kdebase-doc (<< 4:3.0.0), kdebase-libs (<< 4:3.0.0), konqueror (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libkonq4 (>= 4:3.3.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxtst6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), kdebase-data
+Suggests: khelpcenter, kicker-applets, menu
+Conflicts: kdebase-libs (<< 4:3.0.0)
+Description: KDE Desktop Panel
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ Kicker provides the KDE panel on you desktop. It can be used as a
+ program launcher and can load plugins to provide additional
+ functionality.
+ .
+ This package is part of the official KDE base module.
+
+Package: g++-3.4
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 4152
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-3.4
+Version: 3.4.2-2
+Replaces: gcc (<= 2.7.2.3-3)
+Provides: c++-compiler
+Depends: gcc-3.4-base, libc6 (>= 2.3.2.ds1-4), gcc-3.4 (>= 3.4.2-2), gcc-3.4 (<< 3.4.3), libstdc++6-dev (>= 3.4.2-2)
+Suggests: gcc-3.4-doc (>= 3.4.2-2)
+Description: The GNU C++ compiler
+ This is the GNU C++ compiler, a fairly portable optimizing compiler for C++.
+ .
+ ABIs changed between gcc-3.3 and gcc-3.4 on some architectures (hppa, m68k,
+ mips, mipsel, sparc). Please read /usr/share/doc/gcc-3.4/README.Debian
+ for more details. Do not mix code compiled with g++-3.3 and g++-3.4.
+
+Package: udev
+Status: install ok installed
+Priority: extra
+Section: admin
+Installed-Size: 724
+Maintainer: Marco d'Itri <md@linux.it>
+Architecture: i386
+Version: 0.031-2
+Depends: libc6 (>= 2.3.2.ds1-4), libnewt0.51, debconf (>= 0.5) | debconf-2.0, hotplug, initscripts (>= 2.85-16), makedev (>= 2.3.1-70)
+Conflicts: lvm-common (<< 1.5.13)
+Conffiles:
+ /etc/init.d/udev eb7780697e1461efe78e9a69e9753a59
+ /etc/udev/cdsymlinks.conf 93c501f84aa4a96b6f12bdf96f428ea1
+ /etc/udev/udev.conf af4a473b33d15a1ec82c7e68b4011d11
+ /etc/udev/links.conf 7d73bd860133109480167d34f03b17bd
+ /etc/udev/compat-full.rules b7bd9fa186b0735d0a899f6b2249387f
+ /etc/udev/compat.rules 0c49b86a19ae75010a9a319a67bed92a
+ /etc/udev/udev.rules a12e6c5a63355f9619e09a6995aa0c6d
+ /etc/udev/cdsymlinks.sh cfd825ef7b1765babbd060c9e0c4ec49
+ /etc/udev/scsi-devfs.sh 8481a587883888cf375057fb71e53d71
+ /etc/udev/ide-devfs.sh 5d8d8e7a15e5b94a7ce8c61a9ac47124
+ /etc/udev/simple-cd-aliases.rules 93bfebabc58076a8edb000fdbdca9aeb
+ /etc/udev/permissions.d/udev.permissions 7a15944dd085a92f2b865907c08a4326
+ /etc/udev/devfs.rules 4d486457c93afe8b2808ce67e93c84e3
+ /etc/udev/inputdev.sh 80500cb88b6e5709a68c7b35b6b85d0e
+ /etc/dev.d/net/hotplug.dev d7769ce799418447660e512e5d001d18
+ /etc/dev.d/default/selinux.dev c8c3c2458d2227719bc48e4f05b8bc4b
+Description: /dev/ management daemon
+ udev is a program which dynamically creates and removes device nodes from
+ /dev/. It responds to /sbin/hotplug device events and requires a 2.6 kernel.
+
+Package: gs-esp
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 12008
+Maintainer: Masayuki Hatta (mhatta) <mhatta@debian.org>
+Architecture: i386
+Version: 7.07.1-9
+Replaces: gs-afpl (<< 8.14-3), gs-aladdin (<< 8.14-3), gs-gpl (<< 8.01-3), gs (<< 8.01-3), gs-pdfencrypt (<< 7.00), cupsys-pstoraster
+Provides: gs, gs-pdfencrypt, postscript-viewer
+Depends: libc6 (>= 2.3.2.ds1-4), libcupsimage2 (>= 1.1.19final-1), libcupsys2-gnutls10 (>= 1.1.20final-1), libgimpprint1 (>= 4.2.6), libglib2.0-0 (>= 2.4.1), libjpeg62, libpaper1, libpng12-0 (>= 1.2.5.0-4), libstdc++5 (>= 1:3.3.4-1), libtiff4, libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), gs-common (>= 0.2)
+Recommends: gsfonts (>= 6.0-1), psfontmgr
+Conflicts: gs-afpl (<< 8.14-3), gs-aladdin (<< 8.14-3), gs-gpl (<< 8.01-3), gs (<< 8.01-3), gs-pdfencrypt (<< 7.00), cupsys-pstoraster
+Conffiles:
+ /etc/cups/pstoraster.convs c41458b956fbb1a51c873ac995d7d336
+Description: The Ghostscript PostScript interpreter - ESP version
+ Ghostscript is used for PostScript preview and printing. Usually as
+ a back-end to a program such as ghostview, it can display postscript
+ documents in an X11 environment.
+ .
+ Furthermore, it can render PostScript files as graphics to be printed
+ on non-PostScript printers. Supported printers include common
+ dot-matrix, inkjet and laser models.
+ .
+ Package gsfonts contains a set of standard fonts for Ghostscript.
+ .
+ This version of gs is a fork of GNU Ghostscript with updated drivers
+ and patches, intended mostly for use with the Common UNIX Printing
+ System (CUPS) from Easy Software Products (www.easysw.com). The
+ ESP Ghostscript homepage is available at:
+ .
+ http://www.cups.org/ghostscript.php
+
+Package: setcd
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 26
+Maintainer: David A. van Leeuwen <vleeuwen@debian.org>
+Architecture: i386
+Version: 1.5-3
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Control the behaviour of your cdrom device
+ This program allows you to control the behaviour of your Linux cdrom
+ player.
+ .
+ You can control: auto close, auto eject, medium type checking and
+ tray/caddy locking. You can get information on the volume name of CD-ROMs
+ and other data, and you can set the speed of your drive and choose a
+ disc from a jukebox.
+ .
+ The source of this package may be an example for cdrom player program
+ developers that wish to exploit the features of the linux cdrom
+ interface.
+
+Package: kbugbuster
+Status: deinstall ok config-files
+Priority: optional
+Section: devel
+Installed-Size: 816
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdesdk
+Version: 4:3.2.1-1
+Config-Version: 4:3.2.1-1
+Depends: kdelibs4 (>= 4:3.2.1), libart-2.0-2 (>= 2.3.8), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libjpeg62, libpcre3 (>= 4.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: a front end for the KDE bug tracking system
+ KBugBuster is a GUI front end for the KDE bug tracking system.
+ It allows the user to view and manipulate bug reports and provides a
+ variety of options for searching through reports.
+ .
+ This package is part of the KDE Software Development Kit.
+
+Package: kig
+Status: install ok installed
+Priority: optional
+Section: math
+Installed-Size: 3048
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeedu
+Version: 4:3.2.3-2
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libboost-python1.31.0, libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.4-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, python2.3 (>= 2.3), zlib1g (>= 1:1.2.1)
+Recommends: kdeedu-data (>= 4:3.2.3-2)
+Suggests: khelpcenter, kdeedu-doc-html
+Description: interactive geometry program for KDE
+ Kig is an application for interactive geometry. It is intended to serve
+ two purposes:
+ .
+ - to allow students to interactively explore mathematical figures and
+ concepts using the computer;
+ - to serve as a WYSIWYG tool for drawing mathematical figures and
+ including them in other documents.
+ .
+ With this program you can do geometry on a computer just like you would
+ on a blackboard in a classroom. However, the program allows you to move
+ and change parts of a geometrical drawing so that you can see how the other
+ parts change as a result.
+ .
+ Kig supports loci and user-defined macros. It also supports imports
+ and exports to/from foreign file formats including KGeo, KSeg and XFig.
+ .
+ This package is part of the official KDE edutainment module.
+
+Package: irda-tools
+Status: purge ok not-installed
+Priority: optional
+Section: utils
+
+Package: libghttp1
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 108
+Maintainer: Ardo van Rangelrooij <ardo@debian.org>
+Source: libghttp
+Version: 1.0.9-12
+Config-Version: 1.0.9-12
+Depends: libc6 (>= 2.3.2-1)
+Description: GNOME HTTP client library - run-time kit
+ The HTTP protocol is the protocol that is the underlying transport
+ mechanism for the modern world wide web. The protocol is well
+ documented and widely implemented. While the use of the protocol is
+ generally associated with the web, its uses can be extended to many
+ other areas where a stateless, transactional protocol may be
+ appropriate.
+ .
+ The GNOME HTTP library is designed to be simple and easy to use while
+ still allowing one to get one's feet wet at the protocol layer if
+ needed. It is also designed with graphical, non-threaded
+ applications in mind. One should be able to use the library in an
+ application and never block waiting to send or receive data to a
+ remote server. The main thread of execution should always be
+ available to refresh its display.
+ .
+ This library is fully compliant with HTTP 1.1 as defined in the draft
+ 5 update of RFC 2068.
+ .
+ This package contains the run-time kit consisting of the shared
+ version of the library.
+
+Package: altgcc
+Status: install ok installed
+Priority: extra
+Section: oldlibs
+Installed-Size: 3248
+Maintainer: Debian GCC maintainers <gcc@packages.debian.org>
+Version: 1:2.7.2.3-2
+Provides: c-compiler
+Depends: libc6 (>= 2.2.2-2), binutils (>= 2.7-1)
+Recommends: libc5-altdev
+Suggests: gcc272-docs
+Description: Alternate gcc package for the libc5 environment.
+ This special gcc package works with the libc5-altdev package to build
+ binaries for the old libc5/ld-linux.so.1 environment. It can coexist with
+ the standard libc6 development packages.
+
+Package: defoma
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 500
+Maintainer: Angus Lees <gus@debian.org>
+Architecture: all
+Version: 0.11.8-0.1
+Depends: whiptail | dialog, file, perl (>= 5.6.0-16)
+Recommends: libft-perl
+Suggests: defoma-doc, psfontmgr, x-ttcidfont-conf, dfontmgr
+Conflicts: defoma-x, defoma-ps, defoma-gs, psfontmgr (<< 0.5.0), x-ttcidfont-conf (<< 5), dfontmgr (<< 0.10.0)
+Enhances: debhelper
+Conffiles:
+ /etc/defoma/ps-cset-enc.data 6157a371f8dc61293908446ab5fee6b9
+ /etc/defoma/loc-cset.data 3317c166157b6f4088661defdbc4d25e
+ /etc/defoma/xenc-cset.data 5b5154fc63167fbd244a0157320eb49b
+ /etc/defoma/csetenc-xenc.data2 9c531837b77b5aa1eccda5908b3e52c0
+Description: Debian Font Manager -- automatic font configuration framework
+ Defoma, which stands for DEbian FOnt MAnager, provides a framework
+ for automatic font configuration. An application whose configuration
+ of fonts usually requires manual intervention can automate the
+ process through Defoma, by installing a Defoma-configuration
+ script. The script gets called whenever a font is installed and
+ removed, so that the script may update the application configuration.
+ .
+ Font packages should register their fonts to Defoma in order to have them
+ configured automatically for applications.
+
+Package: kit
+Status: deinstall ok config-files
+Priority: optional
+Section: net
+Installed-Size: 456
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Source: kdenetwork
+Version: 4:3.1.5-1
+Config-Version: 4:3.1.5-1
+Depends: kdelibs4 (>= 4:3.1.5), libart-2.0-2 (>= 2.3.8), libaudio2, libc6 (>= 2.3.2.ds1-4), libfam0c102, libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.3.2-1), libjpeg62, libpcre3 (>= 4.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libstdc++5 (>= 1:3.3.2-1), libxcursor1, libxft2 (>> 2.1.1), libxrender1, xlibmesa3-gl | libgl1, xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Description: KDE AOL Instant Messenger Client
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ AOL Instant messanger frontend for KDE.
+ .
+ This package is part of the official KDE network module.
+
+Package: discover
+Status: deinstall ok config-files
+Priority: optional
+Section: admin
+Installed-Size: 232
+Maintainer: Debian Install System Team <debian-boot@lists.debian.org>
+Architecture: i386
+Version: 1.5-3
+Config-Version: 1.5-3
+Depends: libc6 (>= 2.3.2.ds1-4), libdiscover1, debconf (>> 0.5), dash | ash
+Conffiles:
+ /etc/discover.conf 0c58f9225b38c08673f10ee466b64952
+ /etc/init.d/discover fd3a582bcc780cfa5b67be9603fd713d
+Description: hardware identification system
+ Discover is a hardware identification system based on the libdiscover1
+ library. Discover provides a flexible interface that programs can use to
+ report a wide range of information about the hardware that is installed on a
+ Linux system. In addition to reporting information, discover includes
+ support for doing hardware detection at boot time. Detection occurs in two
+ stages: The first stage, which runs from an initial ramdisk (initrd), loads
+ just the drivers needed to mount the root file system, and the second stage
+ loads the rest (ethernet cards, sound cards, etc.).
+
+Package: libmpeg2-4
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 204
+Maintainer: David I. Lehn <dlehn@debian.org>
+Architecture: i386
+Source: mpeg2dec
+Version: 0.4.0b-2
+Config-Version: 0.4.0b-2
+Replaces: libmpeg2-0, libmpeg2-1, libmpeg2-2, libmpeg2-3
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libmpeg2-0, libmpeg2-1, libmpeg2-2, libmpeg2-4
+Description: MPEG1 and MPEG2 video decoder library
+ libmpeg2 is a library which can decode MPEG1 and MPEG2 video streams.
+ .
+ The main features in libmpeg2 are:
+ .
+ * Conformance - libmpeg2 is able to decode all mpeg streams that conform to
+ certain restrictions. For streams that follow these restrictions, libmpeg2
+ is probably 100% conformant to the mpeg standards - and there's a pretty
+ extensive test suite to check this.
+ .
+ * Speed - there has been huge efforts there, and libmpeg2 is probably the
+ fastest library around for what it does.
+ .
+ * Portability - most of the code is written in C, and when platform-specific
+ optimizations are used, there always is a generic C routine to fall back
+ on. This should be portable to all architectures - at least we have heard
+ reports from people running this code on x86, ppc, sparc, arm and sh4.
+ .
+ * Reuseability - libmpeg2 is not intended to include any project-specific
+ code, but it should still include enough features to be used by very
+ diverse projects.
+ .
+ This package contains the libmpeg2 shared libraries.
+ .
+ http://libmpeg2.sourceforge.net/
+
+Package: kdeartwork-theme-window
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 1660
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdeartwork
+Version: 4:3.2.3-2
+Replaces: kwin (<< 4:3.1.93)
+Depends: kdelibs4 (>= 4:3.2.3), kwin (>= 4:3.2.2), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: window decoration themes released with KDE
+ This package contains additional window decoration themes that come with
+ the official KDE release. Window decoration themes can be used to customise
+ the look of window borders and buttons, and can be applied using the
+ window decoration manager in the KDE Control Centre.
+ .
+ This package is part of the KDE artwork module.
+
+Package: slocate
+Status: install ok installed
+Priority: extra
+Section: utils
+Installed-Size: 144
+Maintainer: Kevin Lindsay <klindsay@debian.org>
+Architecture: i386
+Version: 2.7-3
+Depends: libc6 (>= 2.3.2.ds1-4), adduser, dpkg (>= 1.8.1)
+Suggests: anacron
+Conflicts: dlocate (<< 0.5-0.1)
+Conffiles:
+ /etc/cron.daily/slocate 212a828fc81cfe1c2ae50f4d7e9b6593
+Description: A secure replacment of findutil's locate
+ This locate can index all files on your system, but only files and
+ directories which the invoking user has access to will be displayed.
+ .
+ Note: If your computer is not up 24/7 you should consider installing anacron
+ since the database is only updated once a night.
+
+Package: libkadm5srv7-heimdal
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 124
+Maintainer: Brian May <bam@debian.org>
+Architecture: i386
+Source: heimdal
+Version: 0.6.1-1
+Config-Version: 0.6.1-1
+Replaces: heimdal-lib (<< 0.3e-5)
+Depends: libc6 (>= 2.3.2.ds1-4), libhdb7-heimdal (>= 0.6.1), libkrb5-17-heimdal (>= 0.6.1), libroken16-kerberos4kth (>= 1.2.2-10)
+Conflicts: heimdal-libs (<< 0.3e-5)
+Description: Libraries for Heimdal Kerberos
+ Heimdal is a free implementation of Kerberos 5, that aims to be
+ compatible with MIT Kerberos.
+ .
+ This package contains the server library for kadmin.
+
+Package: bison
+Status: install ok installed
+Priority: standard
+Section: devel
+Installed-Size: 1300
+Maintainer: Vincent Renardias <vincent@debian.org>
+Architecture: i386
+Version: 1:1.875a-1.1
+Depends: m4, libc6 (>= 2.3.2.ds1-4)
+Description: A parser generator that is compatible with YACC.
+ Bison is a general-purpose parser generator that converts a
+ grammar description for an LALR(1) context-free grammar into a C
+ program to parse that grammar. Once you are proficient with Bison, you
+ may use it to develop a wide range of language parsers, from those used
+ in simple desk calculators to complex programming languages.
+ .
+ Bison is upward compatible with Yacc: all properly-written Yacc
+ grammars ought to work with Bison with no change. Anyone familiar with
+ Yacc should be able to use Bison with little trouble.
+
+Package: freeciv-client-gtk
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 672
+Maintainer: Debian Freeciv Maintainers <pkg-freeciv-devel@lists.alioth.debian.org>
+Architecture: i386
+Source: freeciv
+Version: 1.14.2-1
+Config-Version: 1.14.2-1
+Replaces: freeciv-gtk
+Provides: freeciv-client, freeciv-xaw3d
+Depends: libatk1.0-0 (>= 1.6.0), libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libglib2.0-0 (>= 2.4.6), libgtk2.0-0 (>= 2.4.4), libpango1.0-0 (>= 1.4.1), libsdl-mixer1.2 (>= 1.2.5), libsdl1.2debian (>> 1.2.7-0), freeciv-data (>= 1.14.2)
+Suggests: freeciv-server, freeciv-sound
+Description: Civilization turn based strategy game (GTK+ client)
+ Freeciv is a free clone of the turn based strategy game Civilization.
+ In this game, each player becomes leader of a civilization, fighting to
+ obtain the ultimate goal: the extinction of all other civilizations.
+ .
+ This is the GTK+ version of the Freeciv client.
+
+Package: libpth14
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 180
+Maintainer: Domenico Andreoli <cavok@debian.org>
+Source: pth
+Version: 1.4.1-2
+Config-Version: 1.4.1-2
+Replaces: libpth-dbg (<< 1.4.1-2), libpth-prof (<< 1.4.1-2), libpth-dev (<< 1.4.1-2)
+Depends: libc6 (>= 2.2.4-4)
+Conflicts: libpth-dbg (<< 1.4.1-2), libpth-prof (<< 1.4.1-2), libpth-dev (<< 1.4.1-2)
+Description: The GNU Portable Threads
+ Pth is a very portable POSIX/ANSI-C based library for Unix
+ platforms which provides non-preemptive priority-based
+ scheduling for multiple threads of execution ("multithreading")
+ inside server applications. All threads run in the same address
+ space of the server application, but each thread has its own
+ individual program-counter, run-time stack, signal mask and
+ errno variable.
+ .
+ More informations can be found at the libpth web site
+ http://www.gnu.org/software/pth/ .
+
+Package: pingus
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 1800
+Maintainer: Raphael Goulais <rafou@debian.org>
+Architecture: i386
+Version: 0.6.0-8
+Config-Version: 0.6.0-8
+Depends: hermes1 (>= 1.3.2-5), libc6 (>= 2.3.2.ds1-4), libclan2-gui (>= 0.6.5-1), libclan2-jpeg (>= 0.6.5-1), libclan2-mikmod (>= 0.6.5-1), libclan2-png (>= 0.6.5-1), libclan2-sound (>= 0.6.5-1), libclan2-vorbis (>= 0.6.5-1), libclanlib2 (>= 0.6.5-1), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1), pingus-data (>= 0.6.0-8)
+Description: Free Lemmings(TM) clone
+ Pingus is a free clone of the popular Lemmings game.
+ .
+ Your goal is to guide a horde of penguins through a world full of obstacles
+ and penguin traps to safety. Although penguins (unlike lemmings) are rather
+ smart, they sometimes lack the necessary overview and now rely on you to
+ save them.
+ .
+ Pingus' website can be found at http://pingus.seul.org/
+ .
+ This package contains the main program.
+
+Package: libdvdnav-dev
+Status: purge ok not-installed
+Priority: optional
+Section: libdevel
+Architecture: i386
+
+Package: kdelibs4-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 6920
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdelibs
+Version: 4:3.3.0-1.1
+Replaces: kate (<< 4:3.0.0), kdebase-dev (<< 4:3.0.0), kdelibs-dev (<< 4:3.0.0), kdelibs3 (<< 4:3.0.0), kdelibs3-bin (<< 4:3.0.0), kdelibs4 (<< 4:3.2.0), kdepim-dev (<< 4:3.3.0), kdepim-libs (<< 4:3.0.0), libarts (<< 4:3.0.0), libarts-alsa (<< 4:3.0.0), libarts-dev (<< 4:3.0.0), libkmid (<< 4:3.0.0), libkmid-alsa (<< 4:3.0.0), libkmid-dev (<< 4:3.0.0), libkonq-dev (<< 4:3.0.0), libkonq4-dev (<< 4:3.2.0)
+Provides: kdelibs-dev
+Depends: kdelibs4 (= 4:3.3.0-1.1), kdelibs-bin (= 4:3.3.0-1.1), libart-2.0-dev, libarts1-dev (>> 1.3.0), libcupsys2-dev, libfam-dev, libidn11-dev, libpcre3-dev, libssl-dev, libxml2-utils, libxrender-dev
+Conflicts: kdelibs-dev (<< 4:3.0.0), kdelibs3 (<< 4:3.0.0), kdelibs3-bin (<< 4:3.0.0), kdepim-libs (<< 4:3.0.0), libarts (<< 4:3.0.0), libarts-alsa (<< 4:3.0.0), libarts-dev (<< 4:3.0.0), libkmid (<< 4:3.0.0), libkmid-alsa (<< 4:3.0.0), libkmid-dev (<< 4:3.0.0), libkonq-dev (<< 4:3.0.0)
+Description: KDE core libraries (development files)
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This package contains all the header files needed to develop with the
+ core KDE libraries.
+ .
+ You need these include files to compile kde applications.
+
+Package: iptables
+Status: install ok installed
+Priority: standard
+Section: net
+Installed-Size: 1240
+Maintainer: Laurence J. Lane <ljlane@debian.org>
+Architecture: i386
+Version: 1.2.11-2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: ipmasq, iproute
+Description: Linux kernel 2.4+ iptables administration tools
+ netfilter and iptables provide a Linux kernel framework for
+ stateful and stateless packet filtering, network and port addresss
+ translation, and other IP packet manipulation. The framework is the
+ successor to ipchains.
+ .
+ netfilter and iptables are used in applications such as Internet
+ connection sharing, firewalls, IP accounting, transparent proxying,
+ advanced routing and traffic control.
+ .
+ iptables web site: http://www.iptables.org/
+
+Package: libxml-twig-perl
+Status: purge ok not-installed
+Priority: optional
+Section: interpreters
+
+Package: libsvga1-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 1508
+Maintainer: Guillem Jover <guillem@debian.org>
+Architecture: i386
+Source: svgalib
+Version: 1:1.4.3-17
+Replaces: svgalibg1-dev, svgalib-dummyg1, svgalib-bin (<< 1:1.4.3-11), svgalibg1 (<< 1:1.4.3-11)
+Provides: svgalibg1-dev
+Depends: libsvga1 (= 1:1.4.3-17)
+Conflicts: svgalib1-dev, svgalib-dev, svgalib-dummyg1, svgalib1 (<< 1.2.13-3.2)
+Description: console SVGA display development libraries and headers
+ svgalib provides graphics capabilities to programs running on the
+ system console, without going through the X Window System. It uses
+ direct access to the video hardware to provide low-level access to
+ the standard VGA and SVGA graphics modes. Only works with some
+ video hardware; use with caution.
+ .
+ This package contains the static libraries, header files and documentation.
+
+Package: libtagcoll-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 3864
+Maintainer: Enrico Zini <enrico@debian.org>
+Architecture: i386
+Source: libtagcoll
+Version: 0.99.1-1
+Depends: libtagcoll0 (= 0.99.1-1)
+Recommends: pkg-config
+Description: Functions used to manipulate tagged collections (development version)
+ Tagged collections are collections of items tagged with multiple categories.
+ libtagcoll provides general infrastructure to handle tagged collection data,
+ plus various kind of tagged collection manipulation functions:
+ .
+ * apply various kinds of transformations to the collection;
+ * generate and apply tag patches;
+ * discover and show implicit hierarchical relationships between
+ tags;
+ * organize the collection in an intuitively navigable hierarchy.
+
+Package: kde-i18n-sk
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 11232
+Maintainer: Noèl Köthe <noel@debian.org>
+Architecture: all
+Source: kde-i18n
+Version: 4:3.3.0-1
+Replaces: kdebase-i18n, kde-i18n
+Provides: kde-i18n
+Depends: kdelibs4 (>= 4:3.3.0-1)
+Suggests: kde
+Conflicts: kdebase-i18n, koffice (<< 1.3.0-2), juk (<< 4:3.2.1-1), kcachegrind (<< 4:3.2.1-1)
+Description: Slovak (sk) internationalized (i18n) files for KDE
+ This package contains the Slovak internationalized (i18n) files for
+ all KDE core applications.
+
+Package: libqthreads-12
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 28
+Maintainer: Rob Browning <rlb@defaultvalue.org>
+Source: guile-1.6
+Version: 1.6.4-4
+Depends: libc6 (>= 2.3.2-1)
+Description: QuickThreads library for Guile
+ Guile is a Scheme implementation designed for real world programming,
+ providing a rich Unix interface, a module system, an interpreter, and
+ many extension languages. Guile can be used as a standard #! style
+ interpreter, via #!/usr/bin/guile, or as an extension language for
+ other applications via libguile.
+
+Package: rpm
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 1976
+Maintainer: Anibal Monsalve Salazar <A.Monsalve.Salazar@IEEE.org>
+Architecture: i386
+Version: 4.0.4-29
+Depends: libbz2-1.0, libc6 (>= 2.3.2.ds1-4), libdb3 (>= 3.2.9-20), libpopt0 (>= 1.7), librpm4 (<< 4.0.5), librpm4 (>= 4.0.4), zlib1g (>= 1:1.2.1), perl
+Suggests: alien
+Description: Red Hat package manager
+ If you want to install Red Hat Packages then please use the alien
+ package. Using rpm directly will bypass the Debian packaging system!
+
+Package: kcoloredit
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 380
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegraphics
+Version: 4:3.3.0-1.1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: An editor for palette files
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This is a color palette editor for KDE.
+ .
+ This package is part of the official KDE graphics module.
+
+Package: libsasl2-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 592
+Maintainer: Dima Barsky <dima@debian.org>
+Architecture: i386
+Source: cyrus-sasl2
+Version: 2.1.19-1.1
+Depends: libsasl2 (= 2.1.19-1.1), libc6-dev
+Conflicts: libsasl-dev
+Description: Development files for authentication abstraction library
+ This is the Cyrus SASL API implementation, version 2. See package
+ libsasl2 and RFC 2222 for more information.
+ .
+ You need this package if you want to compile programs with SASL support.
+
+Package: rosegarden4
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 16408
+Maintainer: Enrique Robledo Arnuncio <era@debian.org>
+Architecture: i386
+Version: 0.9.9-1
+Depends: kdelibs4 (>= 4:3.2.3), libasound2 (>> 1.0.5), libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libjack0.80.0-0 (>= 0.98.1), liblrdf0, libmad0 (>= 0.15.1b), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxrender1, zlib1g (>= 1:1.2.1), jackd, khelpcenter
+Description: Music Editor and MIDI/Audio Sequencer
+ Rosegarden4 is a KDE application which provides a mixed Audio/MIDI
+ sequencer (for playback and recording), a multi-track editor, music
+ editing using both piano-roll and score notation, MIDI file IO,
+ lilypond and Csound files export, etc.
+ .
+ Rosegarden4 is a complete rewrite of the old rosegarden application,
+ available in the "rosegarden" debian package.
+ .
+ This package contains a beta release of Rosegarden4. For news
+ about more recent developments see the Rosegarden web page:
+ http://www.rosegardenmusic.com/
+
+Package: bash
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 1552
+Maintainer: Matthias Klose <doko@debian.org>
+Architecture: i386
+Version: 3.0-6
+Replaces: bash-doc (<= 2.05-1), bash-completion
+Depends: base-files (>= 2.1.12), passwd (>= 1:4.0.3-10)
+Pre-Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1)
+Suggests: bash-doc
+Conflicts: bash-completion
+Conffiles:
+ /etc/skel/.bashrc 914d3bb4d80f787f100a5f298343d7e0
+ /etc/skel/.bash_profile 4f1b2088f8e15011ee1e0306c2d64cee
+ /etc/bash.bashrc c6c932c8fb8902a3417639e3ca7268ff
+ /etc/bash_completion 7431647b43eb9e43e04145ff94585256
+Description: The GNU Bourne Again SHell
+ Bash is an sh-compatible command language interpreter that executes
+ commands read from the standard input or from a file. Bash also
+ incorporates useful features from the Korn and C shells (ksh and csh).
+ .
+ Bash is ultimately intended to be a conformant implementation of the
+ IEEE POSIX Shell and Tools specification (IEEE Working Group 1003.2).
+ .
+ Included in the bash package is the Programmable Completion Code, by
+ Ian Macdonald.
+
+Package: libclan2-sound
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 184
+Origin: debian
+Maintainer: Filip Van Raemdonck <mechanix@debian.org>
+Bugs: debbugs://bugs.debian.org/
+Architecture: i386
+Source: clanlib
+Version: 0.6.5-1-2.2
+Config-Version: 0.6.5-1-2.2
+Depends: libc6 (>= 2.3.2.ds1-4), libclanlib2 (>= 0.6.5-1), libgcc1 (>= 1:3.3.3-1), libstdc++5 (>= 1:3.3.3-1)
+Conflicts: clanlib-sound, clanlib2-sound
+Description: Sound module for ClanLib game SDK
+ ClanLib delivers a platform independent interface to write games with.
+ If a game is written with ClanLib, it should be possible to compile the
+ game under any platform (supported by ClanLib, that is) without changing
+ the application source code.
+ .
+ But ClanLib is not just a wrapper library, providing a common interface
+ to low-level libraries such as DirectFB, DirectX, OpenGL, X11, etc. While
+ platform independence is ClanLib's primary goal, it also tries to be a
+ service-minded game SDK. In other words, we have put great effort into
+ designing the API, to ensure ClanLib's ease of use - while maintaining its
+ power.
+ .
+ This package contains the Sound module (clanSound).
+
+Package: bomberclone
+Status: deinstall ok config-files
+Priority: extra
+Section: games
+Installed-Size: 248
+Maintainer: Eduard Bloch <blade@debian.org>
+Architecture: i386
+Version: 0.11.3-1
+Config-Version: 0.11.3-1
+Depends: bomberclone-data (>= 0.10.1), libc6 (>= 2.3.2.ds1-4), libsdl-image1.2 (>= 1.2.3), libsdl-mixer1.2 (>= 1.2.5), libsdl1.2debian (>> 1.2.7-0)
+Description: free Bomberman-like game
+ BomberClone is a free Bomberman-like game for Linux and Windows. The rules of
+ the game are simple: run though a level and bomb other players. It features
+ powerups that give you more strength, make you walk faster through the level,
+ or let you drop more bombs.
+ .
+ BomberClone can be played in multi-player mode via IPv4 or IPv6 networks or in
+ single-player mode against the local AI.
+
+Package: libpcre3-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 292
+Maintainer: Mark Baker <mbaker@iee.org>
+Architecture: i386
+Source: pcre3
+Version: 4.5-1.1
+Depends: libc6-dev, libpcre3 (= 4.5-1.1)
+Conflicts: libpcre1-dev, libpcre2-dev
+Description: Perl 5 Compatible Regular Expression Library - development files
+ This is a library of functions to support regular expressions whose syntax
+ and semantics are as close as possible to those of the Perl 5 language.
+ .
+ This package contains the development files, including headers, static
+ libraries, and documentation.
+
+Package: make
+Status: install ok installed
+Priority: standard
+Section: devel
+Installed-Size: 1004
+Maintainer: Manoj Srivastava <srivasta@debian.org>
+Architecture: i386
+Version: 3.80-9
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: The GNU version of the "make" utility.
+ GNU Make is a program that determines which pieces of a large
+ program need to be recompiled and issues the commands to recompile
+ them, when necessary. More information about GNU Make can be
+ found in the `make' Info page. The upstream sources for this package
+ are available at the location ftp://ftp.gnu.org/gnu/make/
+
+Package: util-linux
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 972
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Version: 2.12-7
+Replaces: miscutils, setterm, fdisk
+Pre-Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.3.20030510-1), slang1a-utf8 (>> 1.4.4-7.1), zlib1g (>= 1:1.2.1)
+Suggests: util-linux-locales, kbd | console-tools, dosfstools
+Conflicts: setterm, fdisk, kbd (<< 1.05-3), console-tools (<< 1:0.2.3-21)
+Conffiles:
+ /etc/init.d/hwclock.sh ebcb6575f37b5fce9813688f6ec5b71b
+ /etc/init.d/hwclockfirst.sh a9360ce70f851b775531be7774731451
+Description: Miscellaneous system utilities
+ This package contains a number of important utilities, most of which
+ are oriented towards maintenance of your system. Some of the more
+ important utilities included in this package allow you to partition
+ your hard disk, view kernel messages, and create new filesystems.
+
+Package: libclan2-jpeg
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 80
+Origin: debian
+Maintainer: Filip Van Raemdonck <mechanix@debian.org>
+Bugs: debbugs://bugs.debian.org/
+Architecture: i386
+Source: clanlib
+Version: 0.6.5-1-2.2
+Config-Version: 0.6.5-1-2.2
+Depends: libc6 (>= 2.3.2.ds1-4), libclanlib2 (>= 0.6.5-1), libgcc1 (>= 1:3.3.3-1), libjpeg62, libstdc++5 (>= 1:3.3.3-1)
+Conflicts: clanlib-jpeg, clanlib2-jpeg
+Description: JPEG module for ClanLib game SDK
+ ClanLib delivers a platform independent interface to write games with.
+ If a game is written with ClanLib, it should be possible to compile the
+ game under any platform (supported by ClanLib, that is) without changing
+ the application source code.
+ .
+ But ClanLib is not just a wrapper library, providing a common interface
+ to low-level libraries such as DirectFB, DirectX, OpenGL, X11, etc. While
+ platform independence is ClanLib's primary goal, it also tries to be a
+ service-minded game SDK. In other words, we have put great effort into
+ designing the API, to ensure ClanLib's ease of use - while maintaining its
+ power.
+ .
+ This package contains the JPEG module (clanJPEG).
+
+Package: ldso
+Status: purge ok not-installed
+Priority: optional
+Section: oldlibs
+
+Package: patchutils
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 264
+Maintainer: Michael Fedrowitz <michaelf@debian.org>
+Architecture: i386
+Version: 0.2.30-1
+Replaces: interdiff, extractdiff
+Provides: interdiff, extractdiff
+Depends: libc6 (>= 2.3.2.ds1-4), perl, patch, debianutils (>= 1.16)
+Conflicts: interdiff, extractdiff
+Description: Utilities to work with patches
+ This package includes the following utilities:
+ - combinediff creates a cumulative patch from two incremental patches
+ - dehtmldiff extracts a diff from an HTML page
+ - filterdiff extracts or excludes diffs from a diff file
+ - fixcvsdiff fixes diff files created by CVS that "patch" mis-interprets
+ - flipdiff exchanges the order of two patches
+ - grepdiff shows which files are modified by a patch matching a regex
+ - interdiff shows differences between two unified diff files
+ - lsdiff shows which files are modified by a patch
+ - recountdiff recomputes counts and offsets in unified context diffs
+ - rediff fixes offsets and counts of a hand-edited diff
+ - splitdiff separates out incremental patches
+ - unwrapdiff demangles patches that have been word-wrapped
+
+Package: libkrb53
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 844
+Maintainer: Sam Hartman <hartmans@debian.org>
+Architecture: i386
+Source: krb5
+Version: 1.3.4-4
+Depends: libc6 (>= 2.3.2.ds1-4), libcomerr2 (>= 1.33-3)
+Suggests: krb5-doc, krb5-user
+Conflicts: openafs-krb5 (<< 1.3-10)
+Description: MIT Kerberos runtime libraries
+ Kerberos is a system for authenticating users and services on a network.
+ Kerberos is a trusted third-party service. That means that there is a
+ third party (the kerberos server) that is trusted by all the entities on
+ the network (users and services, usually called "principals").
+ .
+ This is the MIT reference implementation of Kerberos5.
+
+Package: libpt-1.5.2
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 4541
+Maintainer: Tim Johann <t1m@phrogstar.de>
+Architecture: i386
+Source: pwlib
+Version: 1.5.2-4
+Config-Version: 1.5.2-4
+Depends: libc6 (>= 2.3.2.ds1-4), libexpat1 (>= 1.95.6), libgcc1 (>= 1:3.3.3-1), libldap2 (>= 2.1.17-1), libsdl1.2debian (>> 1.2.7-0), libssl0.9.7, libstdc++5 (>= 1:3.3.3-1)
+Description: Portable Windows Library
+ This package contains the shared version of the library PWLib, which is
+ a moderately large class library that has its genesis many years ago as
+ a method to produce applications to run on both Microsoft Windows and
+ Unix X-Window systems.
+ .
+ For more information on PWLib visit the development homepage
+ http://www.openh323.org/
+
+Package: libiso9660-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 100
+Maintainer: Nicolas Boullis <nboullis@debian.org>
+Architecture: i386
+Source: libcdio
+Version: 0.68-2
+Depends: libc6 (>= 2.3.2.ds1-4), libcdio0
+Description: library to work with ISO9660 filesystems
+ This library is made to read and write ISO9660 filesystems; those
+ filesystems are mainly used on CDROMs.
+
+Package: bind9
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 704
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Version: 1:9.2.3+9.2.4-rc7-1
+Replaces: bind, dnsutils (<< 1:9.1.0-3)
+Depends: libc6 (>= 2.3.2.ds1-4), libdns11, libisc7, libisccc0, libisccfg0, liblwres1, libssl0.9.7, netbase, adduser, libdns11 (= 1:9.2.3+9.2.4-rc7-1), libisccfg0 (= 1:9.2.3+9.2.4-rc7-1), libisc7 (= 1:9.2.3+9.2.4-rc7-1), libisccc0 (= 1:9.2.3+9.2.4-rc7-1)
+Suggests: dnsutils, bind9-doc
+Conflicts: bind
+Conffiles:
+ /etc/init.d/bind9 837eec9967bc7210ec0b25f912ae94a3
+ /etc/bind/named.conf b7e4374f0ef11182c641b6f438babe55
+ /etc/bind/named.conf.local fb15a27656eafd86ff870effabc72f1e
+ /etc/bind/named.conf.options 013560cec51756b93fe4a98c6aebd4a4
+ /etc/bind/db.0 8aba258068c8c60a7ade3952a285f57d
+ /etc/bind/db.127 64f5cf50e8d8192109dad43b779e5e36
+ /etc/bind/db.255 8aba258068c8c60a7ade3952a285f57d
+ /etc/bind/db.local 4d038e5af0aa465bdfce60a0d2a7c816
+ /etc/bind/db.root 2f197c1c990b8c4624993384c2305169
+ /etc/bind/db.empty 4e7a0ebff9a8936e5a72ec18c0c49214
+ /etc/bind/zones.rfc1918 d04252b4368b66e28376f92613842888
+Description: Internet Domain Name Server
+ The Berkeley Internet Name Domain (BIND) implements an Internet domain
+ name server. BIND is the most widely-used name server software on the
+ Internet, and is supported by the Internet Software Consortium, www.isc.org.
+ .
+ This package provides the server and related configuration files.
+
+Package: kpresenter
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 5860
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: koffice
+Version: 1:1.3.2-2
+Replaces: koffice-libs (<< 1:1.1-20010404-0)
+Depends: kdelibs4 (>= 4:3.2.3), koffice-libs (>= 1:1.3.0-0), libart-2.0-2 (>= 2.3.16), libarts1 (>= 1.2.3), libasound2 (>> 1.0.5), libaspell15 (>= 0.50.5), libaudio2, libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libfam0c102, libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), libmad0 (>= 0.15.1b), libogg0 (>= 1.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3-3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libvorbis0a (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), perl
+Recommends: libkscan1
+Suggests: khelpcenter, koffice-doc-html
+Description: a presentation program for the KDE Office Suite
+ KPresenter is a fully-featured presentation program. Presentations can
+ be edited directly within KPresenter, and many advanced features for
+ screen presentations are available.
+ .
+ This package is part of the KDE Office Suite.
+
+Package: netpbm
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 4048
+Maintainer: Andreas Barth <aba@not.so.argh.org>
+Architecture: i386
+Source: netpbm-free
+Version: 2:10.0-7
+Replaces: pnmtopng, pbmwbmp, netpbm-dev, netpbm-nonfree
+Provides: pnmtopng, pbmwbmp
+Depends: bc, libnetpbm10 (>= 2:10.0-7), libc6 (>= 2.3.2.ds1-4), libjpeg62, libpng12-0 (>= 1.2.5.0-4), libtiff4, zlib1g (>= 1:1.2.1)
+Recommends: gs | gs-aladdin
+Conflicts: netpbm-nonfree (<= 1:19940301.1-3), pnmtopng, pbmwbmp, netpbm-dev (<= 2:9.10), ucbmpeg (<= 1r2-6)
+Description: Graphics conversion tools
+ Netpbm is a toolkit for manipulation of graphic images, including
+ conversion of images between a variety of different formats. There
+ are over 220 separate tools in the package including converters for
+ more than 80 graphics formats.
+ .
+ Website is http://netpbm.alioth.debian.org/
+
+Package: libmyspell3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 124
+Maintainer: Debian OpenOffice Team <debian-openoffice@lists.debian.org>
+Architecture: i386
+Source: myspell (1:3.0+pre3.1-8)
+Version: 1:3.1-8
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1)
+Description: MySpell spellchecking library
+ MySpell is a Spellchecker as (and derived from) ispell.
+ .
+ This package contains the runtime library for programs using the myspell
+ library.
+
+Package: libxcursor1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 92
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xcursor
+Version: 1.1.3-1
+Depends: libc6 (>= 2.3.2.ds1-4), libx11-6 | xlibs (>> 4.1.0), libxrender1
+Description: X cursor management library
+ Xcursor is a simple library designed to help locate and load cursors for the
+ X Window System. Cursors can be loaded from files or memory and can exist in
+ several sizes; the library automatically picks the best size. When using
+ images loaded from files, Xcursor prefers to use the Render extension's
+ CreateCursor request for rendering cursors. Where the Render extension is
+ not supported, Xcursor maps the cursor image to a standard X cursor and uses
+ the core X protocol CreateCursor request.
+
+Package: links-ssl
+Status: install ok installed
+Priority: optional
+Section: non-US
+Installed-Size: 36
+Maintainer: Peter Gervai <grin@tolna.net>
+Architecture: all
+Source: links
+Version: 0.99-1.2
+Depends: elinks
+Description: Dummy package for transition to elinks
+ Links-ssl is not distributable due to license incompabilities. This package
+ will upgrade existing installations of links-ssl to elinks, a browser similar
+ to links that supports SSL. This dummy package can be safely removed
+ afterwards.
+
+Package: libjack0.80.0-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 248
+Maintainer: Junichi Uekawa <dancer@debian.org>
+Architecture: i386
+Source: jack-audio-connection-kit
+Version: 0.98.1-5
+Depends: libasound2 (>> 1.0.5), libc6 (>= 2.3.2.ds1-11), libc6 (>= 2.3.2.ds1-4), libraw1394-5, jackd (= 0.98.1-5)
+Description: JACK Audio Connection Kit (libraries)
+ Low-latency sound server. JACK allows the connection of multiple applications
+ to an audio device, as well as allowing them to share audio between
+ themselves.
+ .
+ See <http://jackit.sourceforge.net/> for more info.
+ .
+ This package contains the shared libraries.
+
+Package: libqt3-compat-headers
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 328
+Maintainer: Martin Loschwitz <madkiss@debian.org>
+Architecture: i386
+Source: qt-x11-free
+Version: 3:3.3.3-4
+Replaces: libqt3-mt-dev (<= 3:3.1.1-2), libqt3-dev (<= 3:3.1.1-2), libqt3-headers (<= 3:3.1.1-2)
+Depends: libqt3-headers (= 3:3.3.3-4)
+Recommends: libqt3-mt-dev
+Description: Qt 1.x and 2.x compatibility includes
+ This package contains header files that are intended for build
+ compatibility for applications that build with Qt3 but still use
+ deprecated includes. It is meant as an intermediate solution and
+ these header files are not part of the official Qt3 API.
+ All sourcecode that is still using the headers of this package is
+ subject to be changed to use the new header files which are in
+ libqt3-headers.
+
+Package: debmake
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 296
+Maintainer: Raul Miller <moth@debian.org>
+Architecture: all
+Version: 3.7.4
+Depends: dpkg-dev, file, fileutils (>= 3.16-4) | coreutils, patch, ed, debianutils (>= 1.6)
+Suggests: devscripts, debsums
+Description: Debianizing Tool and automated binary generation
+ Eases the development and maintenance of Debian source packages.
+ .
+ - deb-make: Generate a debian style source package from a regular source code
+ archive. Customizes control files. Provides example setup for debstd that is
+ usually usable with minimal editing.
+ - "debstd" which has the following abilities:
+ - Automates compression of documentation, localizes manpages
+ compresses and installs them.
+ - Supports multiple binaries generated from a single source package
+ - Generates maintainer scripts for you and installs all scripts
+ for you in the proper locations with the proper permissions.
+ - Can perform modifications on a variety of important debian config files
+ through generation of proper maintainer scripts.
+ - Runs dpkg-shlibdeps on all ELF binaries for you and generates correct
+ shlibs file for provided libraries automatically.
+ - Checks symlinks to manpages /documentation and redirects
+ them if a file was compressed.
+
+Package: libksieve0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 96
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: KDE mail/news message filtering library
+ This is the runtime package for programs that use the libksieve library.
+ .
+ This package is part of the official KDE pim module.
+
+Package: libgii0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 436
+Maintainer: Martin Albert <ma@debian.org>
+Architecture: i386
+Source: libgii
+Version: 1:0.8.5-2
+Replaces: libgg0, libggi1 (<< 981030)
+Provides: libgg0
+Depends: libc6 (>= 2.3.2.ds1-4), libgii0-target-x (= 1:0.8.5-2)
+Conflicts: libgg0, libggi1
+Conffiles:
+ /etc/ggi/filter/mouse da11a749567f5adb5885b699bdae0a51
+ /etc/ggi/filter/keytrans 671f63059043fa88888c769cdb11dd3b
+ /etc/ggi/libgii.conf 99f48d7a290b2081ecfd1670be20c3bf
+Description: General Input Interface runtime libraries
+ "General Graphics Interface" - a fast, portable graphics environment.
+ .
+ This package contains the shared libraries for LibGII, the input
+ library developed by the GGI project. Also included is LibGG, the
+ library containing GGI's configuration and target option parsing code.
+ .
+ Install libgii-target packages for specific input modules!
+ .
+ This package contains input modules for these devices:
+ .
+ null Dummy input device which never generates any input
+ stdin Characters from standard input
+ file Input saved by the "save" input filter
+ tcp Input from a socket
+ linux_kbd Raw Linux keyboard devices
+ linux_mouse Linux mouse devices
+ linux_joy Linux joystick devices
+ linux_evdev New style HIDs
+ mouse Mice of all sorts: Microsoft, MouseSystems, Logitech, Sun,
+ MouseMan, MMSeries, BusMouse and PS2
+ spaceorb SpaceOrb 3D input device
+ .
+ Usually, it is not necessary to specify which of these input devices
+ you want to use; LibGGI normally finds an appropriate input device.
+ .
+ These input filter modules are also included:
+ .
+ mouse Generic mouse event generator
+ save Save away an event stream for later playback
+ keytrans Generic key event translator
+ tcp Send input to a tcp socket
+
+Package: ksirtet
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 620
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegames
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libkdegames1 (>= 4:3.3.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: Tetris and Puyo-Puyo games for KDE
+ This program is a clone of the well known game Tetris. You must fit
+ the falling pieces to form full lines. You can rotate and translate
+ the falling piece. The game ends when no more piece can fall ie when
+ your incomplete lines reach the top of the board.
+ .
+ Every time you have destroyed 10 lines, you gain a level and the
+ pieces fall quicker (exactly the piece falls from a line each
+ 1/(1+level) second).
+
+Package: kpilot
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 3904
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Replaces: korganizer (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkcal2 (>= 4:3.3.0), libmal1, libpisock8, libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1), debconf (>= 0.5) | debconf-2.0
+Suggests: knotes, korganizer
+Description: KDE Palm Pilot hot-sync tool
+ KPilot is an application that synchronizes your Palm Pilot or similar device
+ (like the Handspring Visor) with your KDE desktop, much like the Palm HotSync
+ software does for Windows. KPilot can back-up and restore your Palm Pilot
+ and synchronize the built-in applications with their KDE counterparts.
+ .
+ This package is part of the official KDE pim module.
+
+Package: adonthell
+Status: purge ok not-installed
+Priority: optional
+Section: games
+Architecture: i386
+
+Package: po-debconf
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 196
+Maintainer: Denis Barbier <barbier@debian.org>
+Architecture: all
+Version: 0.8.13
+Depends: perl, gettext, intltool-debian (>= 0.30+20040211)
+Description: Manage translated Debconf templates files with gettext
+ This package is an alternative to debconf-utils and provide tools
+ to manage translated Debconf templates files with common gettext
+ utilities.
+
+Package: libneon23
+Status: install ok installed
+Priority: optional
+Section: oldlibs
+Installed-Size: 188
+Maintainer: Debian OpenOffice Team <debian-openoffice@lists.debian.org>
+Architecture: i386
+Source: neon0.23
+Version: 0.23.9.dfsg.3-2
+Depends: libc6 (>= 2.3.2.ds1-4), libssl0.9.7, libxml2 (>= 2.6.10), zlib1g (>= 1:1.2.1)
+Description: An HTTP and WebDAV client library [old version]
+ neon is an HTTP and WebDAV client library, with a C language API.
+ .
+ WARNING: THE NEON API IS NOT YET STABLE.
+ .
+ Provides lower-level interfaces to directly implement new HTTP
+ methods, and higher-level interfaces so that you don't have to
+ worry about the lower-level stuff.
+ .
+ Current features:
+ * High-level interface to HTTP and WebDAV methods (PUT, GET, HEAD etc)
+ * Low-level interface to HTTP request handling, to allow implementing
+ new methods easily.
+ * persistent connections
+ * RFC2617 basic and digest authentication (including auth-int, md5-sess)
+ * Proxy support (including basic/digest authentication)
+ * SSL/TLS support using OpenSSL (including client certificate support)
+ * Generic WebDAV 207 XML response handling mechanism
+ * XML parsing using the expat or libxml parsers
+ * Easy generation of error messages from 207 error responses
+ * WebDAV resource manipulation: MOVE, COPY, DELETE, MKCOL.
+ * WebDAV metadata support: set and remove properties, query any set ofi
+ properties (PROPPATCH/PROPFIND).
+ * autoconf macros supplied for easily embedding neon directly inside an
+ application source tree.
+ .
+ This package is for an superseded version of the neon library.
+
+Package: libneon24
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 204
+Maintainer: Siggy Brentrup <bsb@debian.org>
+Architecture: i386
+Source: neon
+Version: 0.24.7.dfsg-0.2
+Depends: libc6 (>= 2.3.2.ds1-4), libssl0.9.7, libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1)
+Description: An HTTP and WebDAV client library
+ neon is an HTTP and WebDAV client library, with a C language API.
+ .
+ WARNING: THE NEON API IS NOT YET STABLE.
+ .
+ Provides lower-level interfaces to directly implement new HTTP
+ methods, and higher-level interfaces so that you don't have to
+ worry about the lower-level stuff.
+ .
+ Current features:
+ * High-level interface to HTTP and WebDAV methods (PUT, GET, HEAD etc)
+ * Low-level interface to HTTP request handling, to allow implementing
+ new methods easily.
+ * persistent connections
+ * RFC2617 basic and digest authentication (including auth-int, md5-sess)
+ * Proxy support (including basic/digest authentication)
+ * SSL/TLS support using OpenSSL (including client certificate support)
+ * Generic WebDAV 207 XML response handling mechanism
+ * XML parsing using the expat or libxml parsers
+ * Easy generation of error messages from 207 error responses
+ * WebDAV resource manipulation: MOVE, COPY, DELETE, MKCOL.
+ * WebDAV metadata support: set and remove properties, query any set ofi
+ properties (PROPPATCH/PROPFIND).
+ * autoconf macros supplied for easily embedding neon directly inside an
+ application source tree.
+
+Package: libio-multiplex-perl
+Status: install ok installed
+Priority: optional
+Section: perl
+Installed-Size: 116
+Maintainer: Debian Perl Group <pkg-perl-maintainers@lists.alioth.debian.org>
+Architecture: all
+Version: 1.08-1
+Depends: perl (>= 5.6.0-16)
+Description: object-oriented interface to select() for perl
+ IO::Multiplex is designed to take the effort out of managing
+ multiple file handles. It is essentially a really fancy front end to
+ the select() system call. In addition to maintaining the select()
+ loop, it buffers all input and output to/from the file handles. It
+ can also accept incoming connections on one or more listen sockets.
+
+Package: popularity-contest
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 176
+Maintainer: Popularity Contest Developers <popcon-developers@lists.alioth.debian.org>
+Architecture: all
+Version: 1.25
+Provides: popcon
+Depends: dpkg (>= 1.10), exim4 | mail-transport-agent, debconf
+Recommends: cron
+Conffiles:
+ /etc/cron.weekly/popularity-contest 9211d8b2378bb97c4f4acc2e79158eb0
+Description: Vote for your favourite packages automatically
+ When you install this package, it sets up a cron job that will anonymously
+ e-mail the Debian developers periodically with statistics about your
+ most used Debian packages.
+ .
+ This information helps us make decisions such as which packages should go
+ on the first Debian CD. Also, we can improve future versions of Debian
+ so that the most popular packages are the ones which are installed
+ automatically for new users.
+ .
+ Homepage: http://popcon.debian.org
+
+Package: libunicode-map8-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 908
+Maintainer: Jaldhar H. Vyas <jaldhar@debian.org>
+Version: 0.11-4
+Depends: libunicode-string-perl, libc6 (>= 2.2.5-13), perlapi-5.8.0, perl (>= 5.8.0-10)
+Description: Perl module to map 8bit character sets to Unicode
+ The Unicode::Map8 class implements efficient mapping tables between
+ 8-bit character sets and 16 bit character sets like Unicode. About
+ 170 different mapping tables between various known character sets and
+ Unicode is distributed with this package. The source of these tables
+ is the vendor mapping tables provided by Unicode, Inc. and the code
+ tables in RFC 1345. New maps can easily be installed.
+
+Package: zsh
+Status: install ok installed
+Priority: optional
+Section: shells
+Installed-Size: 5804
+Maintainer: Clint Adams <schizo@debian.org>
+Architecture: i386
+Version: 4.2.1-3
+Depends: debconf, passwd (>= 1:4.0.3-10), libc6 (>= 2.3.2.ds1-4), libcap1, libncurses5 (>= 5.4-1)
+Suggests: zsh-doc
+Conffiles:
+ /etc/zsh/zlogin 936fe20fd7fadf2cc0935f400fc0ef38
+ /etc/zsh/zlogout d466a6b6947043008d171d33614ba259
+ /etc/zsh/zprofile 9f192e65a60d7db5870e30ad1c49299c
+ /etc/zsh/zshenv 9bd6102791ae447d07b25296fbfa2f4d
+ /etc/zsh/zshrc 3c1c606070fcd0d1ac740ae3f68ba66b
+Description: A shell with lots of features
+ Zsh is a UNIX command interpreter (shell) usable as an
+ interactive login shell and as a shell script command
+ processor. Of the standard shells, zsh most closely resembles
+ ksh but includes many enhancements. Zsh has command-line editing,
+ built-in spelling correction, programmable command completion,
+ shell functions (with autoloading), a history mechanism, and a
+ host of other features.
+
+Package: kmilo
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 372
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeutils
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxtst6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Description: KDE kded hardware support module
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ KDE kded hardware support module.
+ .
+ This package is part of the official KDE utils module.
+
+Package: m4
+Status: install ok installed
+Priority: standard
+Section: interpreters
+Installed-Size: 328
+Maintainer: Santiago Vila <sanvila@debian.org>
+Architecture: i386
+Version: 1.4.1-1
+Depends: libc6 (>= 2.2.4-4)
+Description: a macro processing language
+ GNU `m4' is an implementation of the traditional UNIX macro
+ processor. It is mostly SVR4 compatible, although it has some
+ extensions (for example, handling more than 9 positional parameters to
+ macros). `m4' also has builtin functions for including files, running
+ shell commands, doing arithmetic, etc. Autoconf needs GNU `m4' for
+ generating `configure' scripts, but not for running them.
+
+Package: libmad0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 148
+Maintainer: Kyle McMartin <kyle@debian.org>
+Architecture: i386
+Source: libmad
+Version: 0.15.1b-1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: MPEG audio decoder library
+ MAD is an MPEG audio decoder. It currently only supports the MPEG 1
+ standard, but fully implements all three audio layers (Layer I, Layer II,
+ and Layer III, the latter often colloquially known as MP3.)
+ .
+ MAD has the following special features:
+ - 100% fixed-point (integer) computation
+ - completely new implementation based on the ISO/IEC 11172-3 standard
+ - distributed under the terms of the GNU General Public License (GPL)
+
+Package: kmrml
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 672
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegraphics
+Version: 4:3.3.0-1.1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: A Konqueror plugin for searching pictures
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ MRML is short for Multimedia Retrieval Markup Language, which defines a
+ protocol for querying a server for images based on their content. See
+ http://www.mrml.net about MRML and the GNU Image Finding Tool (GIFT), an
+ MRML server.
+ .
+ This package is part of the official KDE graphics module.
+
+Package: kdeaddons
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 40
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: all
+Version: 4:3.2.3-2
+Depends: atlantikdesigner (>= 4:3.2.3-2), kaddressbook-plugins (>= 4:3.2.3-2), kate-plugins (>= 4:3.2.3-2), kdeaddons-kfile-plugins (>= 4:3.2.3-2), kicker-applets (>= 4:3.2.3-2), knewsticker-scripts (>= 4:3.2.3-2), konq-plugins (>= 4:3.2.3-2), kontact-plugins (>= 4:3.2.3-2), ksig (>= 4:3.2.3-2), noatun-plugins (>= 4:3.2.3-2), vimpart (>= 4:3.2.3-2)
+Suggests: kdeaddons-doc-html
+Description: add-on plugins and applets provided with KDE
+ This is a collection of add-on plugins and applets provided with the official
+ release of KDE (the K Desktop Environment).
+
+Package: fuse-module-2.4.22-1-686
+Status: purge ok not-installed
+Priority: optional
+Section: misc
+Architecture: i386
+
+Package: konqueror
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 4772
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0), kdebase-audiolibs (<< 4:3.0.0), kdebase-doc (<< 4:3.0.0), kdebase-libs (<< 4:3.0.0)
+Provides: info-browser, www-browser
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libjpeg62, libkonq4 (>= 4:3.3.0), libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), kcontrol, kdebase-kio-plugins, kdesktop, kfind
+Suggests: khelpcenter, konq-plugins, konq-speaker
+Conflicts: kdebase-audiolibs (<< 4:3.0.0), kdebase-libs (<< 4:3.0.0)
+Conffiles:
+ /etc/kde3/konqsidebartng.rc b325d1d8a6b0dc3f09418630cda288e6
+Description: KDE's advanced File Manager, Web Browser and Document Viewer
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ Konqueror is a standards-compliant web browser, file manager and
+ document viewer.
+ .
+ This package is part of the official KDE base module.
+
+Package: cpio
+Status: install ok installed
+Priority: important
+Section: utils
+Installed-Size: 168
+Maintainer: Brian Mays <brian@debian.org>
+Version: 2.5-1.1
+Replaces: cpio-mt
+Depends: libc6 (>= 2.3.2-1)
+Conflicts: mt-st (<< 0.6), cpio-mt
+Description: GNU cpio -- a program to manage archives of files.
+ GNU cpio is a tool for creating and extracting archives, or copying
+ files from one place to another. It handles a number of cpio formats
+ as well as reading and writing tar files.
+
+Package: powermgmt-base
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 116
+Maintainer: Chris Hanson <cph@debian.org>
+Architecture: i386
+Version: 1.21
+Replaces: apmd (<= 3.0.2-1.17)
+Depends: makedev, libc6 (>= 2.3.2.ds1-4)
+Conffiles:
+ /etc/devfs/conf.d/apm fb78aee95bea37e2f231e043233e1ac3
+ /etc/modutils/apm e5193bd2f195c00fcfaf10d67c64f495
+Description: Common utils and configs for power management
+ This package contains utilities and configuration files
+ for power management that are common to APM and ACPI.
+
+Package: mozilla-firebird
+Status: purge ok not-installed
+Priority: optional
+Section: web
+Architecture: all
+
+Package: libstdc++6
+Status: install ok installed
+Priority: optional
+Section: base
+Installed-Size: 900
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-3.4
+Version: 3.4.2-2
+Depends: gcc-3.4-base, libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3)
+Description: The GNU Standard C++ Library v3
+ This package contains an additional runtime library for C++ programs
+ built with the GNU compiler.
+ .
+ libstdc++-v3 is a complete rewrite from the previous libstdc++-v2, which
+ was included up to g++-2.95. The first version of libstdc++-v3 appeared
+ in g++-3.0.
+
+Package: libstdc++5
+Status: install ok installed
+Priority: important
+Section: base
+Installed-Size: 812
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-3.3
+Version: 1:3.3.4-11
+Depends: gcc-3.3-base, libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.4-3)
+Description: The GNU Standard C++ Library v3
+ This package contains an additional runtime library for C++ programs
+ built with the GNU compiler.
+ .
+ libstdc++-v3 is a complete rewrite from the previous libstdc++-v2, which
+ was included up to g++-2.95. The first version of libstdc++-v3 appeared
+ in g++-3.0.
+
+Package: libpcsclite1
+Status: install ok installed
+Priority: extra
+Section: libs
+Installed-Size: 136
+Maintainer: Ludovic Rousseau <rousseau@debian.org>
+Architecture: i386
+Source: pcsc-lite
+Version: 1.2.9-beta6-1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Recommends: pcscd
+Conflicts: libpcsclite-dev (<< 1.2.9-beta6-1), pcscd (<< 1.2.9-beta6-1)
+Description: Middleware to access a smart card using PC/SC (library)
+ The purpose of PC/SC Lite is to provide a Windows(R) SCard interface
+ in a very small form factor for communicating to smartcards and
+ readers.
+ .
+ The PC/SC Lite library is used to connect to the PC/SC daemon from
+ a client application and provide access to the desired reader.
+ .
+ pcsc-lite is part of the MUSCLE project http://musclecard.com/
+ .
+ Homepage: http://pcsclite.alioth.debian.org/
+
+Package: libpcsclite0
+Status: deinstall ok config-files
+Priority: extra
+Section: libs
+Installed-Size: 152
+Maintainer: Ludovic Rousseau <rousseau@debian.org>
+Source: pcsc-lite
+Version: 1.2.0-stable-2
+Config-Version: 1.2.0-stable-2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Recommends: pcscd
+Conflicts: libpcsclite-dev (<< 1.2.0-rc2-1), pcscd (<< 1.2.0-rc2-1)
+Description: Middleware to access a smart card using PC/SC (library)
+ The purpose of PC/SC Lite is to provide a Windows(R) SCard interface
+ in a very small form factor for communicating to smartcards and
+ readers.
+ .
+ The PC/SC Lite library is used to connect to the PC/SC daemon from
+ a client application and provide access to the desired reader.
+ .
+ pcsc-lite is part of the MUSCLE project http://musclecard.com/
+ .
+ Homepage: http://musclecard.com/middle.html
+
+Package: clanbomber-data
+Status: purge ok not-installed
+Priority: optional
+Section: games
+Architecture: all
+
+Package: zip
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 224
+Maintainer: Santiago Vila <sanvila@debian.org>
+Version: 2.30-6
+Replaces: zip-crypt (<= 2.30-2)
+Depends: libc6 (>= 2.2.4-4)
+Recommends: unzip
+Conflicts: zip-crypt (<= 2.30-2)
+Description: Archiver for .zip files
+ This is InfoZIP's zip program. It produces files that are fully
+ compatible with the popular PKZIP program; however, the command line
+ options are not identical. In other words, the end result is the same,
+ but the methods differ. :-)
+ .
+ This version supports encryption.
+
+Package: busybox
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 252
+Maintainer: Erik Andersen <andersee@debian.org>
+Architecture: i386
+Version: 1:0.60.5-2.1
+Replaces: busybox-static
+Depends: libc6 (>= 2.3.2-1)
+Conflicts: busybox-static
+Description: Tiny utilities for small and embedded systems.
+ BusyBox combines tiny versions of many common UNIX utilities into a single
+ small executable. It provides minimalist replacements for the most common
+ utilities you would usually find on your desktop system (i.e., ls, cp, mv,
+ mount, tar, etc.). The utilities in BusyBox generally have fewer options than
+ their full-featured GNU cousins; however, the options that are included
+ provide the expected functionality and behave very much like their GNU
+ counterparts.
+ .
+ This package installs the BusyBox binary but does not install symlinks
+ for any of the supported utilities. You can use /bin/busybox --install
+ to install BusyBox to the root directory (you do not want to do this
+ to your your Debian system, except in dire emergencies!).
+
+Package: klipper
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 568
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0), kdebase-doc (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Conffiles:
+ /etc/kde3/klipperrc 4cb75585b6352207e679d3c4273a024b
+Description: KDE Clipboard
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ klipper provides several additional featues of the traditional clipboard
+ functionality like the ability to offer actions to take dependent on
+ the clipboard contents. For example, it can launch a web browser if the
+ clipboard contains a url.
+ .
+ This package is part of the official KDE base module.
+
+Package: wine-utils
+Status: install ok installed
+Priority: optional
+Section: otherosfs
+Installed-Size: 3228
+Maintainer: Ove Kaaven <ovek@arcticnet.no>
+Architecture: i386
+Source: wine
+Version: 0.0.20040716-1.2
+Replaces: libwine-dev (<< 0.0.20010216)
+Depends: libwine (= 0.0.20040716-1.2), wine
+Description: Windows Emulator (Utilities)
+ This is an ALPHA release of Wine, the MS-Windows emulator. This is
+ still a developers release and many applications may still not work.
+ .
+ This package consists many of the utilities provided by wine, both
+ for compiling source using winelib and for running wine. This
+ package is not strictly necessary.
+ .
+ Wine is often updated.
+
+Package: libscrollkeeper0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 544
+Maintainer: Gustavo Noronha Silva <kov@debian.org>
+Architecture: i386
+Source: scrollkeeper
+Version: 0.3.14-9
+Replaces: scrollkeeper (<= 0.1.4-4)
+Depends: libc6 (>= 2.3.2.ds1-4), libxml2 (>= 2.6.11), libxslt1.1 (>= 1.1.8), zlib1g (>= 1:1.2.1)
+Description: Library to load .omf files (runtime files)
+ It stores metadata specified by the http://www.ibiblio.org/osrt/omf/ (Open
+ Source Metadata Framework) as well as certain metadata extracted directly
+ from documents (such as the table of contents).
+ .
+ It provides various functionality pertaining to this metadata to help
+ browsers, such as sorting the registered documents or searching the
+ metadata for documents which satisfy a set of criteria.
+
+Package: flashplayer-mozilla
+Status: install ok installed
+Priority: optional
+Section: web
+Installed-Size: 2144
+Maintainer: Christian Marillat <marillat@debian.org>
+Architecture: i386
+Source: flash-player
+Version: 7.0.25-woody0.0
+Depends: libc6 (>= 2.2.4-4), xlibs (>> 4.1.0), zlib1g (>= 1:1.1.4), mozilla-browser | www-browser
+Conflicts: flashplugin
+Description: Macromedia Flash Player
+ The Flash Player lets you experience animation and entertainment in your
+ Mozilla web browser.
+
+Package: libhtml-tagset-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 80
+Maintainer: Kenneth J. Pronovici <pronovic@debian.org>
+Version: 3.03-2
+Depends: perl (>= 5.6.0-16)
+Description: Data tables pertaining to HTML
+ This module contains data tables useful in dealing with HTML. For instance,
+ it provides %HTML::Tagset::emptyElement, which lists all of the HTML elements
+ which cannot have content. It provides no functions or methods.
+
+Package: k3b
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 4736
+Maintainer: Jean-Michel Kelbert <kelbert@debian.org>
+Architecture: i386
+Version: 0.11.14-2
+Depends: k3blibs (>= 0.11.14), kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libarts1 (>= 1.3.0), libasound2 (>> 1.0.5), libaudio2, libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libfam0c102, libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.6), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libjack0.80.0-0 (>= 0.98.1), libmad0 (>= 0.15.1b), libogg0 (>= 1.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), cdrecord (>= 4:2.0+a18-1), cdparanoia (>= 3a9.8), mkisofs (>= 1.10), kdelibs-data (>= 4:3.1.4-2), kdebase-bin, kcontrol
+Recommends: vcdimager (>= 0.7), cdrdao (>= 1.1.7-5), dvd+rw-tools
+Suggests: k3b-i18n (>= 0.11), normalize, toolame
+Description: A sophisticated KDE cd burning application
+ K3b is a GUI frontend to the cd recording programs cdrdao and cdrecord.
+ Its aim is to provide a very user friendly interface to all the tasks
+ that come with cd recording.
+ .
+ It has the following features:
+ * an userfriendly interface
+ * writing audio-cds
+ * from mp3, ogg vorbis, and wav files (on-the-fly or with images)
+ * cd-text support
+ * ID3-tag support
+ * little gimmick: hide the first track (so that you have to search back
+ from the beginning of the cd to find it)
+ * volume level normalization (only when writing with an image)
+ * writing ISO-cds
+ * Joliet/Rockridge support
+ * Udf filestructures (no pure Udf so far)
+ * create image/write image
+ * writing on-the-fly
+ * creating of file-tree via drag'n'drop (as easy as it could be)
+ * removing files and directories from data tree
+ * moving files within the project
+ * adding new empty directories to data tree
+ * renaming of files (manually or automatically for mp3-files)
+ (for joliet and rockrigde)
+ * support for most of the mkisofs-options
+ * multisession support (including importing old sessions)
+ * El Torito bootable cd support
+ * writing Video CDs
+ * VCD 1.1, 2.0, SVCD
+ * CD-i support (Version 4)
+ * writing mixed-mode cds
+ * CD-Extra (CD-Plus, Enhanced Audio CD) support
+ * writing eMovix cds
+ * writing data DVDs
+ * formatting DVD-RWs and DVD+RWs
+ * writing existing iso-images and cue/bin images to cd
+ * cd copy (data, audio, mixed mode)
+ * cd cloning with cdrecord
+ * blanking of cdrws
+ * cd ripping to wav
+ * cddb support
+ * sophisticated pattern system to automatically organize the ripped tracks
+ * dvd ripping with the transcode tools
+ * DivX/XviD encoding
+ * K3b checks if the user inserted an empty disk
+ * Retrieving cd info and toc
+ * Support for ATAPI drives without SCSI-emulation
+ writing in in alpha-state when supported by the kernel and cdrecord
+ full support for audio-ripping and dvd-ripping
+ * integrated full featured audio player
+
+Package: wcatalan
+Status: deinstall ok config-files
+Priority: extra
+Section: text
+Installed-Size: 7488
+Maintainer: Jordi Mallach <jordi@debian.org>
+Source: ispellcat
+Version: 0.2-2
+Config-Version: 0.2-2
+Provides: wordlist
+Depends: dictionaries-common, debconf
+Description: The Catalan dictionary words for /usr/share/dict
+ This package contains an alphabetic list of Catalan words
+ as put together by Joan Moratinos <jmo@softcatala.org> with data from
+ different sources.
+
+Package: ca-certificates
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 436
+Maintainer: Fumitoshi UKAI <ukai@debian.or.jp>
+Architecture: all
+Version: 20040809
+Depends: openssl, debconf (>= 0.5.00)
+Enhances: libssl0.9.7, openssl
+Description: Common CA Certificates PEM files
+ It includes the followings PEM files of CA certificates
+ .
+ * spi-inc.org certificate
+ * db.debian.org certificate
+ * Mozilla builtin CA certificates
+ .
+ This is useful for any openssl applications to verify
+ SSL connection.
+
+Package: strace
+Status: install ok installed
+Priority: standard
+Section: utils
+Installed-Size: 224
+Maintainer: Roland McGrath <frob@debian.org>
+Architecture: i386
+Version: 4.5.7-1
+Depends: libc6 (>= 2.2.4-4)
+Description: A system call tracer
+ strace is a system call tracer, i.e. a debugging tool which prints out
+ a trace of all the system calls made by a another process/program.
+ The program to be traced need not be recompiled for this, so you can
+ use it on binaries for which you don't have source.
+ .
+ System calls and signals are events that happen at the user/kernel
+ interface. A close examination of this boundary is very useful for bug
+ isolation, sanity checking and attempting to capture race conditions.
+
+Package: x-window-system
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 232
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: all
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Depends: x-window-system-core, lbxproxy, proxymngr, twm, xdm, xfs, xfwp, xnest, xprt-xprintorg, xterm, xvfb
+Description: X Window System
+ This metapackage provides substantially all the components of the X Window
+ System as developed by the XFree86 Project, as well as a set of historically
+ popular accessory programs.
+ .
+ Development and debugging versions of the X protocol client libraries and
+ other libraries provided with XFree86 are not provided by this metapackage.
+ .
+ Note that Xprint.org's implementation of an XPRINT server is depended upon
+ by this package until XFree86's XPRINT server is operational.
+
+Package: python2.3-dev
+Status: purge ok not-installed
+Priority: optional
+Section: python
+
+Package: cruft
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 636
+Maintainer: Anthony Towns <ajt@debian.org>
+Version: 0.9.6-0.4
+Depends: libc6 (>= 2.3.1-1), file
+Description: Find any cruft built up on your system
+ cruft is a program to look over your system for anything that shouldn't
+ be there, but is; or for anything that should be there, but isn't.
+ .
+ It bases most of its results on dpkg's database, as well as a list of
+ `extra files' that can appear during the lifetime of various packages.
+ .
+ cruft is still in pre-release; your assistance in improving its accuracy
+ and performance is appreciated.
+
+Package: kdepim-kfile-plugins
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 112
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libpisock8, libstdc++5 (>= 1:3.3.4-1)
+Description: KDE File dialog plugins for palm and vcf files
+ File dialog plugins for palm and vcf files.
+ .
+ This package is part of the official KDE pim module.
+
+Package: libsqlite0-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 540
+Maintainer: Andreas Rottmann <rotty@debian.org>
+Architecture: i386
+Source: sqlite
+Version: 2.8.15-2
+Replaces: libsqlite-dev (<< 2.7.0)
+Provides: libsqlite-dev
+Depends: libsqlite0 (= 2.8.15-2), libc6-dev
+Suggests: sqlite-doc
+Conflicts: libsqlite-dev
+Description: SQLite development files
+ SQLite is a C library that implements an SQL database engine.
+ Programs that link with the SQLite library can have SQL database
+ access without running a separate RDBMS process.
+ .
+ This package contains the development files (headers, static libraries)
+
+Package: kernel-image-2.6.0-test7-mm1
+Status: deinstall ok config-files
+Priority: optional
+Section: base
+Installed-Size: 8672
+Maintainer: Yenar Calentaure <yenar@host.sk>
+Source: kernel-source-2.6.0-test7-mm1
+Version: 1.0-lorien-1
+Config-Version: 1.0-lorien-1
+Provides: kernel-image, kernel-image-2.6
+Depends: initrd-tools (>= 0.1.48), coreutils | fileutils (>= 4.0)
+Suggests: lilo (>= 19.1) | grub, fdutils, kernel-doc-2.6.0-test7-mm1 | kernel-source-2.6.0-test7-mm1
+Description: Linux kernel binary image for version 2.6.0-test7-mm1.
+ This package contains the Linux kernel image for version 2.6.0-test7-mm1,
+ the corresponding System.map file, and the modules built by the
+ packager. It also contains scripts that try to ensure that the
+ system is not left in a unbootable state after an update.
+ .
+ If you wish to update a bootdisk, or to use a bootloader to make
+ installing and using the image easier, we suggest you install the latest
+ fdutils (for formatting a floppy to be used as boot disk), and LILO, for a
+ powerful bootloader. Of course, both these are optional.
+ .
+ Kernel image packages are generally produced using kernel-package,
+ and it is suggested that you install that package if you wish to
+ create a custom kernel from the sources. Please look at kernel-img.conf(5),
+ and /usr/share/doc/kernel-package/README.gz from the package kernel-package
+ for details on how to tailor the installation of this or any other kernel
+ image package
+
+Package: libcdio0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 136
+Maintainer: Nicolas Boullis <nboullis@debian.org>
+Architecture: i386
+Source: libcdio
+Version: 0.68-2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: library to read and control CD-ROM
+ This library is to encapsulate CD-ROM reading and
+ control. Applications wishing to be oblivious of the OS- and
+ device-dependant properties of a CD-ROM can use this library.
+ .
+ Some support for disk image types like BIN/CUE and NRG is available,
+ so applications that use this library also have the ability to read
+ disc images as though they were CD's.
+
+Package: kdessh
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 48
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeutils
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Description: KDE ssh frontend
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ KDE ssh frontend.
+ .
+ This package is part of the official KDE utils module.
+
+Package: libcupsys2-gnutls10
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 212
+Maintainer: Kenshi Muto <kmuto@debian.org>
+Architecture: i386
+Source: cupsys
+Version: 1.1.20final+rc1-5
+Replaces: cupsys-client (<= 1.1.10-2), libcupsys2
+Depends: libc6 (>= 2.3.2.ds1-4), libgnutls11 (>= 1.0.16)
+Conflicts: gs-esp (<< 7.05.6-2), cupsys-driver-gimpprint (<< 4.2.5-3), libcupsys2 (<< 1.1.20final+rc1-2)
+Conffiles:
+ /etc/cups/client.conf e39203745a37ad9cc7a539c8f2f802bf
+Description: Common UNIX Printing System(tm) - libs
+ The Common UNIX Printing System (or CUPS(tm)) is a printing system and
+ general replacement for lpd and the like. It supports the Internet
+ Printing Protocol (IPP), and has its own filtering driver model for
+ handling various document types.
+ .
+ This package provides the base shared libraries for CUPS.
+ .
+ The terms "Common UNIX Printing System" and "CUPS" are trademarks of
+ Easy Software Products (www.easysw.com), and refer to the original
+ source packages from which these packages are made.
+
+Package: fortunes-min
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 168
+Maintainer: Pascal Hakim <pasc@debian.org>
+Architecture: all
+Source: fortune-mod
+Version: 1:1.99.1-1
+Replaces: fortunes (<= 9708-6)
+Provides: fortune-cookie-db
+Depends: fortune-mod (>= 9708-12)
+Description: Data files containing fortune cookies
+ This package contains a small number of 'fortune cookies' for the
+ bandwidth conscious. There are over 15000 different 'fortune cookies'
+ in the fortunes package. You'll need the fortune-mod package to display
+ the cookies.
+
+Package: octave2.1
+Status: install ok installed
+Priority: optional
+Section: math
+Installed-Size: 16504
+Maintainer: Dirk Eddelbuettel <edd@debian.org>
+Architecture: i386
+Version: 2.1.58-1
+Replaces: octave (<= 2.0.16-2)
+Provides: octave
+Depends: atlas3-base | lapack3 | liblapack.so.3, atlas3-base | refblas3 | libblas.so.3, fftw3, libc6 (>= 2.3.2.ds1-4), libg2c0 (>= 1:3.3.4-1), libgcc1 (>= 1:3.4.1-3), libhdf5-serial-1.6.2-0 | libhdf5-1.6.2-0, libncurses5 (>= 5.4-1), libreadline4 (>= 4.3-1), libstdc++5 (>= 1:3.3.4-1), zlib1g (>= 1:1.2.1), texinfo
+Suggests: gnuplot, octave2.1-info, octave2.1-doc, octave2.1-htmldoc, octave2.1-headers (= 2.1.58-1), octave2.1-emacsen
+Conflicts: octave (<= 2.0.16-2)
+Conffiles:
+ /etc/octave2.1.conf b20482b9ffb207ba5448cedee746c690
+Description: The GNU Octave language for numerical computations (2.1 branch)
+ Octave is a (mostly Matlab (R) compatible) high-level language, primarily
+ intended for numerical computations. It provides a convenient command-line
+ interface for solving linear and nonlinear problems numerically.
+ .
+ Octave uses some of the best and most respected numerical libraries as
+ balgen, dassl, eispack, fftpack, lapack, linpack, minpack, odepack,
+ ranlib, slatec-fn and villad. Octave can be dynamically extended with
+ user-supplied C++ files.
+
+Package: binutils
+Status: install ok installed
+Priority: standard
+Section: devel
+Installed-Size: 5972
+Maintainer: James Troup <james@nocrew.org>
+Architecture: i386
+Version: 2.15-3
+Provides: elf-binutils
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: binutils-doc (= 2.15-3)
+Conflicts: gas, elf-binutils, modutils (<< 2.4.19-1)
+Description: The GNU assembler, linker and binary utilities
+ The programs in this package are used to assemble, link and manipulate
+ binary and object files. They may be used in conjunction with a compiler
+ and various libraries to build programs.
+
+Package: cdparanoia
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 72
+Maintainer: Aaron Lehmann <aaronl@vitelus.com>
+Version: 3a9.8-11
+Replaces: cdparanoia-bin
+Depends: libcdparanoia0 (= 3a9.8-11)
+Conflicts: cdparanoia-bin
+Description: An audio extraction tool for sampling CDs.
+ Unlike similar programs such as cdda2wav, cdparanoia goes to great lengths
+ to try to extract the audio information without any artifacts such as
+ jitter.
+
+Package: openoffice.org-l10n-en
+Status: install ok installed
+Priority: optional
+Section: contrib/editors
+Installed-Size: 18788
+Maintainer: Debian OpenOffice Team <debian-openoffice@lists.debian.org>
+Architecture: all
+Source: openoffice.org
+Version: 1.1.2-3
+Replaces: openoffice.org1.1-l10n-en
+Provides: openoffice.org-l10n-1.1.2, openoffice.org1.1-l10n-en
+Depends: openoffice.org (>> 1.0.99+1.1)
+Suggests: myspell-dictionary-en, openoffice.org-hyphenation-en, openoffice.org-thesaurus-en, openoffice.org-help-en
+Conflicts: openoffice.org1.1-l10n-en
+Description: English (US) language package for OpenOffice.org
+ OpenOffice.org is a full-featured office productivity suite that provides
+ a near drop-in replacement for Microsoft(R) Office.
+ .
+ This package contains the localization of openoffice.org in
+ English (US).
+ It contains the user interface, the templates and the autotext features.
+ (please note that not all this is available for all possible languages).
+ You can switch user interface language using the locales system.
+ .
+ Spelling dictionaries, hyphenation patterns, thesauri and help are not
+ included in this package. There are some available in separate packages
+ (myspell-*, openoffice.org-hyphenation-*, openoffice.org-thesaurus-*,
+ openoffice.org-help-*)
+ .
+ If you just want to be able to spellcheck etc. in other languages, you can
+ install extra dictionaries/hyphenation patterns/thesauri independently of
+ the language packs.
+ .
+ For latest news on OpenOffice.org in Debian, see
+ http://openoffice.debian.net
+
+Package: libart-2.0-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 356
+Maintainer: Ondřej Surý <ondrej@debian.org>
+Architecture: i386
+Source: libart-lgpl
+Version: 2.3.16-6
+Depends: libart-2.0-2 (= 2.3.16-6), pkg-config, libc6-dev | libc-dev
+Description: Library of functions for 2D graphics - development files
+ A library of functions for 2D graphics supporting a superset of the
+ PostScript imaging model, designed to be integrated with graphics, artwork,
+ and illustration programs. It is written in optimized C, and is fully
+ compatible with C++. With a small footprint of 10,000 lines of code, it is
+ especially suitable for embedded applications.
+
+Package: foomatic-db-hpijs
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 4460
+Maintainer: Chris Lawrence <lawrencc@debian.org>
+Architecture: all
+Version: 1.5-20040621-1
+Depends: foomatic-filters, foomatic-db, hpijs (>> 1.3)
+Conflicts: foomatic-bin (<< 2.9), foomatic-db (<< 2.9)
+Description: linuxprinting.org printer support - database for HPIJS printers
+ Foomatic is a printing system designed to make it easier to set up
+ common printers for use with Debian (and other operating systems).
+ It provides the "glue" between a print spooler (like CUPS or lpr) and
+ your actual printer, by telling your computer how to process files
+ sent to the printer.
+ .
+ This package includes support for printers using the HPIJS printer
+ driver backend, particularly consumer inkjet printers from
+ Hewlett-Packard.
+ .
+ Home Page: http://www.linuxprinting.org/
+
+Package: fifteenapplet
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 148
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdetoys
+Version: 4:3.2.3-3
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: kicker
+Description: fifteen pieces puzzle for KDE
+ An applet for the KDE panel that lets you play the Fifteen Pieces
+ sliding block puzzle. You have to order 15 pieces in a 4x4 square by
+ moving them around.
+ .
+ This package is part of the official KDE toys module.
+
+Package: nvi
+Status: install ok installed
+Priority: important
+Section: editors
+Installed-Size: 544
+Maintainer: Steve Greenland <stevegr@debian.org>
+Version: 1.79-21
+Depends: libc6 (>= 2.3.1-1), libncurses5 (>= 5.3.20021109-1)
+Conffiles:
+ /etc/init.d/nviboot a4f8cdc68b7ed67ee215f1e3d2c98142
+Description: 4.4BSD re-implementation of vi
+ Vi is the original screen based text editor for Unix systems.
+ It is considered the standard text editor, and is available on
+ almost all Unix systems.
+ .
+ Nvi is intended as a "bug-for-bug compatible" clone of the original
+ BSD vi editor. As such, it doesn't have a lot of snazzy features as do
+ some of the other vi clones such as elvis and vim. However, if all
+ you want is vi, this is the one to get.
+
+Package: libisc7
+Status: install ok installed
+Priority: standard
+Section: libs
+Installed-Size: 332
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Source: bind9
+Version: 1:9.2.3+9.2.4-rc7-1
+Replaces: libbind0
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libbind0
+Description: ISC Shared Library used by BIND
+ The Berkeley Internet Name Domain (BIND) implements an Internet domain
+ name server. BIND is the most widely-used name server software on the
+ Internet, and is supported by the Internet Software Consortium, www.isc.org.
+ .
+ This package delivers the libisc shared library used by BIND's daemons and
+ clients.
+
+Package: zlib-bin
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 104
+Maintainer: Mark Brown <broonie@debian.org>
+Architecture: i386
+Source: zlib
+Version: 1:1.2.1.2-1
+Depends: libz1
+Description: compression library - sample programs
+ Some generally useful sample programs from the contrib directory.
+ Includes a "mini" implementation of `zip' and `unzip' called
+ `minizip' and `miniunzip' respectively.
+
+Package: kgpg
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 1208
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeutils
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), gnupg
+Suggests: khelpcenter
+Description: GnuPG frontend for KDE
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ Kgpg is a frontend for GNU Privacy Guard (GnuPG). It provides file encryption,
+ file decryption and key management.
+ .
+ Features:
+ * an editor mode for easily and quickly encrypting or decrypting a file or
+ message which is typed, copied, pasted or dragged into the editor, or
+ which is double-clicked in the file manager;
+ * Konqueror integration for encrypting or decrypting files;
+ * a panel applet for encrypting / decrypting files or the clipboard
+ contents, etc.;
+ * key management functions (generation, import, export, deletion and
+ signing); and
+ * decrypting clipboard contents, including integration with Klipper.
+ .
+ This package is part of the official KDE utils module.
+
+Package: libglib2.0-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 1615
+Maintainer: Akira TAGOH <tagoh@debian.org>
+Architecture: i386
+Source: glib2.0
+Version: 2.4.6-2
+Replaces: libglib1.3-dev
+Depends: libglib2.0-0 (= 2.4.6-2), libc6-dev | libc-dev, pkg-config (>= 0.14.0)
+Suggests: libglib2.0-doc
+Conflicts: libglib1.3-dev
+Description: Development files for the GLib library
+ GLib is a library containing many useful C routines for things such
+ as trees, hashes, lists, and strings. It is a useful general-purpose
+ C library used by projects such as GTK+, GIMP, and GNOME.
+ .
+ This package is needed to compile programs against libglib2.0-0,
+ as only it includes the header files and static libraries (optionally)
+ needed for compiling.
+
+Package: kmoon
+Status: install ok installed
+Priority: optional
+Section: games
+Installed-Size: 384
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdetoys
+Version: 4:3.2.3-3
+Replaces: kdetoys (<< 4:3.0.1-0), task-kdetoys
+Depends: kdelibs4 (>= 4:3.2.3), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: kicker
+Suggests: khelpcenter, kdetoys-doc-html
+Conflicts: task-kdetoys
+Description: moon phase indicator for KDE
+ Displays the current phase of the moon in the KDE system tray.
+ .
+ This package is part of the official KDE toys module.
+
+Package: libaldmb0
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 152
+Maintainer: Sam Hocevar (Debian packages) <sam+deb@zoy.org>
+Architecture: i386
+Source: libdumb
+Version: 1:0.9.2-5
+Config-Version: 1:0.9.2-5
+Depends: liballegro4.1, libc6 (>= 2.3.2.ds1-4), libdumb0, libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0)
+Description: dynamic universal music bibliotheque, allegro version
+ DUMB is a tracker library with support for IT, XM, S3M and MOD files. It
+ targets maximum accuracy to the original formats, with low-pass resonant
+ filters for the IT files, accurate timing and pitching, and three resampling
+ quality settings (aliasing, linear interpolation and cubic interpolation).
+ .
+ This package contains the libaldmb0 runtime library, a library for module
+ playback that uses the Allegro library. If you do not plan to use Allegro
+ with your project, please consider the libdumb0 library.
+
+Package: liblua40
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 92
+Maintainer: Daniel Silverstone <dsilvers@debian.org>
+Architecture: i386
+Source: lua40
+Version: 4.0-13
+Config-Version: 4.0-13
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: Main interpreter library for the Lua 4.0 programming language
+ Lua is a powerful language which can be included in your C/C++ projects
+ using this library.
+ .
+ See the lua40 package for more information
+
+Package: cpp-2.95
+Status: install ok installed
+Priority: standard
+Section: interpreters
+Installed-Size: 224
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-2.95 (2.95.4.ds15-22)
+Version: 1:2.95.4-22
+Replaces: g++ (<< 2.91.63-1.1)
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: The GNU C preprocessor
+ NOTE: This is not a final release, but taken from the CVS gcc-2_95-branch
+ (dated 2001-10-02).
+ .
+ The GNU C preprocessor is required by some utilities that use it for
+ macro substitutions. This package has been separated from gcc for
+ the benefit of those who require the preprocessor but not the
+ compiler.
+
+Package: libggi2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 596
+Maintainer: Martin Albert <ma@debian.org>
+Architecture: i386
+Source: libggi
+Version: 1:2.0.4-3
+Replaces: libggi1, libggi-target-fbdev (<< 1:2.0.1+)
+Depends: libc6 (>= 2.3.2.ds1-4), libgii0 (>= 1:0.8.4+cvs.stable.20040218-2)
+Recommends: libggi-target-x | libggi-target
+Suggests: libggi-target-emu, libggi-target-monotext, libggimisc2
+Conflicts: libggi1, libggi-target-emu (<< 1:2.0.4), libggi-target-monotext (<< 1:2.0.4), libggi-target-terminfo (<< 1:2.0.4), libggi-target-vcsa (<< 1:2.0.4), libggi-target-fbdev (<< 1:2.0.4), libggi-target-kgi (<< 1:2.0.4), libggi-target-glide (<< 1:2.0.4), libggi-target-aa (<< 1:2.0.4), libggi-target-x (<< 1:2.0.4), libggi-target-svgalib (<< 1:2.0.4), libggi-target-lcd823 (<< 1:2.0.4)
+Conffiles:
+ /etc/ggi/libggi.conf 1bd7a1c0a3cb6ed51b7ee349cf08b98e
+Description: General Graphics Interface runtime libraries
+ "General Graphics Interface" - a fast, portable graphics environment.
+ .
+ This package contains the shared libraries for libGGI, the lowest-level
+ drawing library provided by GGI.
+ .
+ Since none of the targets included here are, alone, capable of real,
+ physical graphics output, you'll probably need to install at least one
+ of the libggi-target packages to make any kind of sensible use of libGGI.
+ .
+ Included are libGGI drivers for these targets:
+ .
+ "memory" draws into hidden in-memory framebuffers
+ "ipc" draws into attached shared memory framebuffers
+ "multi" draws output onto multiple displays simultaneously
+ "tile" combines several displays into a single logical display
+ "sub" draws output into a sub-window on another target
+ "file" draws into a specially formatted file
+ "tele" draws on a remote teleserver
+
+Package: db4.2-util
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 208
+Maintainer: Debian Berkeley DB Maintainers <pkg-db-devel@lists.alioth.debian.org>
+Architecture: i386
+Source: db4.2
+Version: 4.2.52-17
+Depends: libc6 (>= 2.3.2.ds1-4), libdb4.2
+Description: Berkeley v4.2 Database Utilities
+ This package provides different tools for manipulating databases
+ in the Berkeley v4.2 database format, and includes:
+ - db4.2_archive: write the pathnames of the log files no longer in use.
+ - db4.2_checkpoint: daemon process to monitor the database log and
+ checkpoint it periodically.
+ - db4.2_deadlock: traverse the database environment lock region and
+ abort lock requests when a deadlock is detected.
+ - db4.2_load: loads (and creates) a database from standard input.
+ - db4.2_dump: read a database file and write it in a format understood by
+ - db4.2_printlog: dump log files in human readable format.
+ - db4.2_stat: display statistics for Berkeley DB environments.
+ - db4.2_upgrade: upgrades the version of files and the databases they
+ contain.
+ - db4.2_verify: check the structure of files and their databases.
+
+Package: libxmltok1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 172
+Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs@lists.alioth.debian.org>
+Architecture: i386
+Source: libxmltok
+Version: 1.2-1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: XML Parser Toolkit, runtime libraries
+ Libraries for XML parsing in C. It aims to be fully conforming. It
+ is currently not a validating XML processor.
+ .
+ The library libxmltok contains a low-level library for tokenizing
+ XML. The library libxmlparse contains an XML parser library which is
+ built on top of the xmltok library.
+ .
+ Author: James Clark <jjc@jclark.com>
+ Homepage: http://www.jclark.com/xml/expat.html
+
+Package: libpt-plugins-alsa
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+Architecture: i386
+
+Package: dict-devil
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 193
+Maintainer: Bob Hilliard <hilliard@debian.org>
+Architecture: all
+Version: 1.0-8
+Depends: dictd | dict-server
+Description: The Devil's Dictionary by Ambrose Bierce
+ This package contains The Devil's Dictionary, a cynical and irreverent
+ dictionary of common words, formatted for use by the dictionary server
+ in the dictd package.
+ .
+ This dictionary is encoded in 7-bit ASCII.
+
+Package: python2.3-xml
+Status: install ok installed
+Priority: optional
+Section: python
+Installed-Size: 3456
+Maintainer: Alexandre Fayolle <alexandre.fayolle@logilab.fr>
+Source: python-xml
+Version: 0.8.3-5
+Depends: python2.3, libc6 (>= 2.3.2.ds1-4)
+Description: XML tools for Python (2.3.x)
+ The Python/XML distribution contains the basic tools required for
+ processing XML data using the Python programming language, assembled
+ into one easy-to-install package. The distribution includes parsers
+ and standard interfaces such as SAX and DOM, along with various other
+ useful modules.
+ .
+ The package currently contains:
+ .
+ * XML parsers: Pyexpat (Jack Jansen), xmlproc (Lars Marius
+ Garshol), sgmlop (Fredrik Lundh).
+ * SAX interface (Lars Marius Garshol)
+ * minidom DOM implementation (Paul Prescod, others)
+ * 4DOM and 4XPath from Fourthought (Uche Ogbuji, Mike Olson)
+ * Schema implementations: TREX (James Tauber)
+ * Various utility modules and functions (various people)
+ * Documentation and example programs (various people)
+ .
+ This package is built for Python 2.3.x.
+
+Package: kbabel
+Status: deinstall ok config-files
+Priority: optional
+Section: devel
+Installed-Size: 4484
+Maintainer: Ben Burton <bab@debian.org>
+Architecture: i386
+Source: kdesdk
+Version: 4:3.2.1-1
+Config-Version: 4:3.2.1-1
+Depends: kdelibs4 (>= 4:3.2.1), libart-2.0-2 (>= 2.3.8), libc6 (>= 2.3.2.ds1-4), libdb4.0, libfam0c102, libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.2.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter, kdesdk-doc-html
+Description: PO-file editing suite for KDE
+ This is a suite of programs for editing gettext message files (PO-files).
+ It is designed to help you translate fast and consistently.
+ .
+ This suite includes KBabel, CatalogManager and KBabelDict. KBabel is an
+ advanced and easy to use PO-file editor with full navigational and editing
+ capabilities, syntax checking and statistics. CatalogManager is a multi
+ functional catalog manager which allows you to keep track of many
+ PO-files at once. KBabelDict is a dictionary for translators.
+ .
+ This package is part of the KDE Software Development Kit.
+
+Package: libraptor1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 236
+Maintainer: Dave Beckett <Dave.Beckett@bristol.ac.uk>
+Architecture: i386
+Source: raptor
+Version: 1.3.2-1
+Depends: libc6 (>= 2.3.2.ds1-4), libcurl3, libidn11, libssl0.9.7, libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1)
+Recommends: raptor-utils
+Description: Raptor RDF Parser library
+ Raptor is a C library for parsing RDF syntaxes into RDF triples. It
+ supports the latest revision of RDF/XML (including collections and
+ datatypes), N-Triples, and some XML RSS via a tag soup parser.
+ Raptor can handle the RDF/XML used by RDF applications such as RSS
+ 1.0, FOAF, Dublin Core, and OWL.
+ .
+ Raptor is designed for performance, flexibility and embedding (no
+ memory leaks) and to closely match the revised RDF/XML
+ specification.
+
+Package: libdevmapper1.00
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 77
+Maintainer: Patrick Caulfield <patrick@debian.org>
+Architecture: i386
+Source: devmapper
+Version: 2:1.00.19-2
+Provides: libdevmapper
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conffiles:
+ /etc/init.d/libdevmapper1.00 2cfded9b098aac4fc815850490aa52f2
+Description: The Linux Kernel Device Mapper userspace library
+ The Linux Kernel Device Mapper is the LVM (Linux Logical Volume Management)
+ Team's implementation of a minimalistic kernel-space driver that handles
+ volume management, while keeping knowledge of the underlying device layout
+ in user-space. This makes it useful for not only LVM, but EVMS, software
+ raid, and other drivers that create "virtual" block devices.
+ .
+ This package contains the (user-space) shared library for accessing the
+ device-mapper; it allows usage of the device-mapper through a clean,
+ consistent interface (as opposed to through kernel ioctls).
+
+Package: libfreetype6-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 3376
+Maintainer: Anthony Fok <foka@debian.org>
+Architecture: i386
+Source: freetype
+Version: 2.1.7-2.2
+Replaces: freetype0-dev, freetype1-dev
+Depends: libfreetype6 (= 2.1.7-2.2), libc6-dev | libc-dev, zlib1g-dev | libz-dev
+Conflicts: freetype0-dev, freetype1 (<= 1.0.0.1998-03-22-1), freetype1-dev
+Description: FreeType 2 font engine, development files
+ The FreeType project is a team of volunteers who develop free,
+ portable and high-quality software solutions for digital typography.
+ They specifically target embedded systems and focus on bringing small,
+ efficient and ubiquitous products.
+ .
+ This package contains all supplementary files (static library, headers
+ and documentation) you need to develop your own programs using the
+ FreeType 2 library.
+
+Package: less
+Status: install ok installed
+Priority: standard
+Section: text
+Installed-Size: 256
+Maintainer: Thomas Schoepf <schoepf@debian.org>
+Architecture: i386
+Version: 382-1
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), debianutils (>= 1.8)
+Description: Pager program similar to more
+ Less is a program similar to more(1), but which allows backward
+ movement in the file as well as forward movement. Also, less does not
+ have to read the entire input file before starting, so with large input
+ files it starts up faster than text editors like vi(1). Less uses
+ termcap (or terminfo on some systems), so it can run on a variety of
+ terminals. There is even limited support for hardcopy terminals.
+ .
+ Homepage: http://www.greenwoodsoftware.com/less/
+
+Package: libgphoto2-port0
+Status: install ok installed
+Priority: extra
+Section: libs
+Installed-Size: 360
+Maintainer: christophe barbe <christophe@debian.org>
+Architecture: i386
+Source: libgphoto2
+Version: 2.1.4-6
+Replaces: libgphoto2port
+Provides: libgphoto2port
+Depends: libgphoto2-2, libc6 (>= 2.3.2.ds1-4), libusb-0.1-4 (>= 1:0.1.8)
+Suggests: gphoto2 (>> 2.1.0), hotplug (>= 0.0.20020401-4), gtkam
+Conflicts: libgphoto2port, gphoto2 (<= 2.1.1)
+Description: The gphoto2 digital camera port library
+ The gphoto2 port library is used by libgphoto2 to access serial
+ and usb devices.
+
+Package: libglib2.0-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 954
+Maintainer: Akira TAGOH <tagoh@debian.org>
+Architecture: i386
+Source: glib2.0
+Version: 2.4.6-2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Recommends: libglib2.0-data
+Description: The GLib library of C routines
+ GLib is a library containing many useful C routines for things such
+ as trees, hashes, lists, and strings. It is a useful general-purpose
+ C library used by projects such as GTK+, GIMP, and GNOME.
+ .
+ This package contains the shared libraries.
+
+Package: xfs
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 1044
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xbase (<< 3.3.2.3a-2)
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1)
+Suggests: xfonts-100dpi | xfonts-75dpi, xfonts-base, xfonts-scalable
+Conffiles:
+ /etc/X11/fs/config bde6c776bcd0cfcf78f3b5fb712148e5
+ /etc/X11/fs/xfs.options 79dec3d9687e890394c7c73f74129db7
+ /etc/init.d/xfs 1615445105ac3ed2a6bb380fbc71fb0a
+Description: X font server
+ xfs is a daemon that listens on a network port and serves X fonts to X
+ servers (and thus to X clients). All X servers have the ability to serve
+ locally installed fonts for themselves, but xfs makes it possible to offload
+ that job from the X server, and/or have a central repository of fonts on a
+ networked machine running xfs so that all the machines running X servers on a
+ network do not require their own set of fonts. xfs may also be invoked by
+ users to, for instance, make available X fonts in user accounts that are not
+ available to the X server or to an already running system xfs.
+
+Package: libxml-libxml-common-perl
+Status: purge ok not-installed
+Priority: optional
+Section: perl
+
+Package: proxymngr
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 388
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xproxy, xbase (<< 3.3.2.3a-2)
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0)
+Conflicts: xproxy
+Conffiles:
+ /etc/X11/proxymngr/pmconfig 05a8b12bc0d5d574c2773f3a96eb5892
+Description: X proxy services manager
+ proxymngr is responsible for resolving requests from xfindproxy (in the
+ xbase-clients package) and other similar clients, starting new proxies when
+ appropriate, and keeping track of all the available proxy services.
+
+Package: synaptic-debtags
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 3416
+Maintainer: Michael Vogt <mvo@debian.org>
+Architecture: i386
+Source: synaptic
+Version: 0.48.2-4
+Replaces: synaptic
+Provides: synaptic
+Depends: libapt-pkg-libc6.3-5-3.3, libart-2.0-2, libatk1.0-0 (>= 1.4.1), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libglade2-0, libglib2.0-0 (>= 2.2.3), libgtk2.0-0 (>= 2.2.1), libpango1.0-0 (>= 1.2.1), libstdc++5 (>= 1:3.3.3-1), libtagcoll0, libx11-6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.8), libzvt2.0-0 (>= 2.0.1cvs20021009-1), zlib1g (>= 1:1.2.1), gksu, debtags, scrollkeeper
+Recommends: deborphan
+Suggests: libgnome2-perl, apt-watch
+Conflicts: synaptic
+Conffiles:
+ /etc/X11/sysconfig/synaptic.desktop e54296954722122aab14a6ea675056b0
+Description: Gtk GUI-frontend for APT with debtags support
+ Synaptic (previously known as raptor) is a graphical package management
+ program for Debian.
+ .
+ It provides the same features as the apt-get command line utility
+ with a GUI front-end based on GTK.
+ .
+ This version of synaptic is build with experimental support for the
+ new debtags system.
+
+Package: dosbox
+Status: install ok installed
+Priority: optional
+Section: otherosfs
+Installed-Size: 728
+Maintainer: Peter Veenstra <H.P.Veenstra@student.rug.nl>
+Architecture: i386
+Version: 0.61-4
+Depends: libasound2 (>> 1.0.5), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libpng12-0 (>= 1.2.5.0-4), libsdl-net1.2, libsdl1.2debian (>> 1.2.7-0), libstdc++5 (>= 1:3.3.4-1), xlibmesa-gl | libgl1, zlib1g (>= 1:1.2.1)
+Description: A x86 emulator with Tandy/Herc/CGA/EGA/VGA graphics, sound and DOS
+ Dosbox is a x86 emulator with Tandy/Hercules/CGA/EGA/VGA graphics,
+ sound and DOS. It's been designed to run old DOS-games under platforms that
+ don't support it. (Win2k/XP/FreeBSD/Linux)
+ See http://dosbox.sourceforge.net for more information.
+ .
+ The folowing legacy sound devices are emulated: PC Speaker, Creative
+ CMS/Gameblaster, Tandy 3 voice, Adlib, Sound Blaster Pro, Disney Soundsource
+ and a Gravis Ultrasound. MPU-401 is forwarded to the host.
+
+Package: cmt
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 232
+Maintainer: Anand Kumria <wildfire@progsoc.org>
+Architecture: i386
+Version: 1.15-1
+Provides: ladspa-plugin
+Depends: libc6 (>= 2.3.1-1), libgcc1 (>= 1:3.2.3-0pre6), libstdc++5 (>= 1:3.2.3-0pre6)
+Description: Computer Music Toolkit (cmt) a collection of LADSPA plugins
+ cmt -- Computer Music Toolkit -- is a collection of LADSPA compatible
+ plugins that any conforming program may take advantage of.
+ .
+ Plugins available are: low/high pass filters, echo/feedback delay filters
+ with configurable delays from 0.01 to 60 seconds, amplifies, white and
+ ping noise generators, compressors, expanders, limiters, b/fmh encoders,
+ drum synthesizers, lofi (low fidelity), phase modulator (phasemod) and
+ many more
+ .
+ These plugins are only usable in host applications, of which glame,
+ sweep and others can be found in Debian.
+ .
+ For further information on cmt see <URL: http://www.ladspa.org/cmt/>
+
+Package: ksnapshot
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 288
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegraphics
+Version: 4:3.3.0-1.1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Description: Screenshot application for KDE
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KSnapshot is a simple applet for taking screenshots. It is capable of
+ capturing images of either the whole desktop or just a single window.
+ The images can then be saved in a variety of formats.
+ .
+ This package is part of the official KDE graphics module.
+
+Package: aalib1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 168
+Maintainer: Joey Hess <joeyh@debian.org>
+Architecture: i386
+Source: aalib
+Version: 1.4p5-22
+Depends: libc6 (>= 2.3.2.ds1-4), libgpmg1 (>= 1.19.6-1), libncurses5 (>= 5.4-1), libx11-6 | xlibs (>> 4.1.0), slang1 (>> 1.4.9dbs-4)
+Description: ascii art library
+ AAlib is a portable ascii art graphics library. Internally, it works like
+ a graphics display, but the output is rendered into gorgeous platform
+ independent ascii graphics.
+
+Package: x-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 556
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: all
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs-dev (<< 4.3.0)
+Conflicts: xlibs-dev (<< 4.3.0)
+Description: X protocol development files
+ Header files for the X protocol are provided by this package.
+ .
+ Note that headers specific to Xlib, a popular client-side implementation of
+ the X protocol, are provided by the libx11-dev package.
+
+Package: deborphan
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 176
+Maintainer: Peter Palfrader <weasel@debian.org>
+Architecture: i386
+Version: 1.7.11
+Depends: libc6 (>= 2.2.4-4), dialog (>= 0.9b-20040316-1), bash (>= 2.05b-14), gettext-base
+Recommends: apt
+Description: Find orphaned libraries
+ deborphan finds "orphaned" packages on your system.
+ It determines which packages have no other packages
+ depending on their installation, and shows you a list of
+ these packages. It is most useful when finding libraries,
+ but it can be used on packages in all sections.
+
+Package: libtext-charwidth-perl
+Status: install ok installed
+Priority: important
+Section: perl
+Installed-Size: 96
+Maintainer: Tomohiro KUBOTA <kubota@debian.org>
+Version: 0.04-1
+Depends: libc6 (>= 2.3.1-1), perlapi-5.8.0, perl-base (>= 5.8.0-18)
+Description: get display widths of characters on the terminal
+ This module permits perl software to get the display widths of characters
+ and strings on the terminal, using wcwidth() and wcswidth() from libc.
+ .
+ It provides mbwidth(), mbswidth(), and mblen().
+
+Package: kaboodle
+Status: install ok installed
+Priority: optional
+Section: sound
+Installed-Size: 336
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdemultimedia
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libarts1 (>= 1.3.0), libasound2 (>> 1.0.5), libaudio2, libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libfam0c102, libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), libidn11, libjack0.80.0-0 (>= 0.98.1), libmad0 (>= 0.15.1b), libogg0 (>= 1.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Recommends: libarts1-xine
+Suggests: khelpcenter
+Description: Embedded media player for KDE
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ Embedded media player (for video and audio) for KDE.
+ .
+ Uses the aRts framework for playing media files.
+ .
+ This package is part of the official KDE multimedia module.
+
+Package: libxt6
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 704
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), debconf (>= 0.5) | debconf-2.0
+Conflicts: xlibs (<< 4.3.0)
+Description: X Toolkit Intrinsics
+ libXt, the X Toolkit Intrinsics, is an abstract widget library upon which
+ graphical widget libraries for the X Window System (such as Athena and
+ LessTif) may be developed; the Intrinsics provide a number of useful
+ interfaces to X conventions and protocols, in many cases reducing a long
+ series of Xlib calls to just a couple of Xt calls.
+
+Package: libgksuui1.0-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 164
+Maintainer: Gustavo Noronha Silva <kov@debian.org>
+Architecture: i386
+Source: libgksuui1.0
+Version: 1.0.2-1
+Replaces: gksu (<< 1.0.0)
+Depends: libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.4.6), libgtk2.0-0 (>= 2.4.4), libpango1.0-0 (>= 1.4.1), xbase-clients
+Conflicts: gksu (<< 1.0.0)
+Description: a graphical fronted to su library
+ This library comes from the gksu program. It provides a Gtk+
+ dialog and X authentication facilities for running programs
+ as root or another user in a X session.
+
+Package: libzvt2
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 184
+Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Source: gnome-libs
+Version: 1.4.2-19
+Config-Version: 1.4.2-19
+Replaces: gnome-bin (<= 1.2.12-1)
+Depends: gdk-imlib1, libc6 (>= 2.3.2.ds1-4), libglib1.2 (>= 1.2.0), libgtk1.2 (>= 1.2.10-4), libx11-6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Description: The GNOME zvt (zterm) widget
+ GNOME is a project to build a complete, user-friendly desktop based
+ entirely on free software.
+ .
+ This package contains the shared library for the zterm widget, which
+ is used by zterm (an xterm type program).
+
+Package: libopencdk8-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 384
+Maintainer: Matthias Urlichs <smurf@debian.org>
+Architecture: i386
+Source: opencdk8
+Version: 0.5.5-10
+Provides: libopencdk-dev
+Depends: libopencdk8 (= 0.5.5-10)
+Conflicts: libopencdk-dev
+Description: Open Crypto Development Kit (OpenCDK) (development files)
+ This library provides functions to handle basic parts of the OpenPGP
+ message format.
+ .
+ The aim of the library is *not* to replace any available PGP version.
+ There will be no real support for key management (sign, revoke, alter
+ preferences, ...) and some other parts are only rudimentarily
+ available. The main purpose is to handle and understand OpenPGP
+ packets and to execute basic operations on them. For example to
+ encrypt/decrypt or to sign/verify keys and some packet routines.
+ .
+ Because of the fact that sensitive data is being handled, the
+ library doesn't contain any real cryptographic code. The libgcrypt
+ package is used for all crypto routines.
+ .
+ This package contains the development files: headers and static
+ library.
+
+Package: libvorbis0
+Status: install ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 664
+Maintainer: Christopher L Cheney <ccheney@debian.org>
+Source: libvorbis
+Version: 1.0rc3-1
+Config-Version: 1.0rc3-1
+Depends: libc6 (>= 2.2.4-4), libogg0 (>= 1.0rc3-1)
+Description: The Vorbis General Audio Compression Codec
+ Ogg Vorbis is a fully open, non-proprietary, patent-and-royalty-free,
+ general-purpose compressed audio format for audio and music at fixed
+ and variable bitrates from 16 to 128 kbps/channel.
+
+Package: libglade0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 141
+Maintainer: Debian QA Group <packages@qa.debian.org>
+Source: libglade
+Version: 1:0.17-3
+Depends: libc6 (>= 2.3.2-1), libglib1.2 (>= 1.2.0), libgtk1.2 (>= 1.2.10-4), libxml1 (>= 1:1.8.14-3), xlibs (>> 4.1.0), zlib1g (>= 1:1.1.4)
+Description: Library to load .glade files at runtime
+ This library allows you to load user interfaces in your program, which are
+ stored externally. This allows alteration of the interface without
+ recompilation of the program.
+ .
+ The interfaces can also be edited with GLADE.
+
+Package: libclan2-vorbis
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 56
+Origin: debian
+Maintainer: Filip Van Raemdonck <mechanix@debian.org>
+Bugs: debbugs://bugs.debian.org/
+Architecture: i386
+Source: clanlib
+Version: 0.6.5-1-2.2
+Config-Version: 0.6.5-1-2.2
+Depends: libc6 (>= 2.3.2.ds1-4), libclanlib2 (>= 0.6.5-1), libgcc1 (>= 1:3.3.3-1), libstdc++5 (>= 1:3.3.3-1), libvorbis0a (>= 1.0.1)
+Conflicts: clanlib-vorbis, clanlib2-vorbis
+Description: Vorbis module for ClanLib game SDK
+ ClanLib delivers a platform independent interface to write games with.
+ If a game is written with ClanLib, it should be possible to compile the
+ game under any platform (supported by ClanLib, that is) without changing
+ the application source code.
+ .
+ But ClanLib is not just a wrapper library, providing a common interface
+ to low-level libraries such as DirectFB, DirectX, OpenGL, X11, etc. While
+ platform independence is ClanLib's primary goal, it also tries to be a
+ service-minded game SDK. In other words, we have put great effort into
+ designing the API, to ensure ClanLib's ease of use - while maintaining its
+ power.
+ .
+ This package contains the Vorbis module (clanVorbis).
+
+Package: ttf-opensymbol
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 288
+Maintainer: Debian OpenOffice Team <debian-openoffice@lists.debian.org>
+Architecture: all
+Source: openoffice.org
+Version: 1.1.2-3
+Replaces: openoffice.org (<< 1.1.1+1.1.2rc3)
+Recommends: fontconfig
+Description: The OpenSymbol TrueType font
+ This package contains the OpenSymbol font originally included in
+ OpenOffice.org. This font contains symbols (like fonts as Wingdings(tm)),
+ bullets (needed for bullets in OOo) and non-latin characters.
+
+Package: libcap1
+Status: install ok installed
+Priority: required
+Section: libs
+Installed-Size: 60
+Maintainer: Michael Vogt <mvo@debian.org>
+Architecture: i386
+Source: libcap
+Version: 1:1.10-14
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: support for getting/setting POSIX.1e capabilities
+ This library implements the user-space interfaces to the POSIX
+ 1003.1e capabilities available in Linux kernels. These capabilities are
+ a partitioning of the all powerful root privilege into a set of distinct
+ privileges. Note that it will not provide any functionality with kernels
+ below 2.2
+
+Package: libapr0
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 316
+Maintainer: Debian Apache Maintainers <debian-apache@lists.debian.org>
+Architecture: i386
+Source: apache2
+Version: 2.0.50-12
+Replaces: libapr
+Provides: libapr
+Depends: libc6 (>= 2.3.2.ds1-4), libdb4.2, libexpat1 (>= 1.95.6), libpcre3, libdb4.2, libexpat1
+Conflicts: libapr
+Description: The Apache Portable Runtime
+ APR is Apache's Portable Runtime Library, designed to be a support library to
+ enable programmers to easily write platform independent programs and know that
+ they'll work.
+ .
+ It is currently used by Apache2, Subversion, and Samba-TNG, among others.
+
+Package: libstlport4.6
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 840
+Maintainer: Torsten Werner <twerner@debian.org>
+Architecture: i386
+Source: stlport4.6
+Version: 4.6.2-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libstdc++5 (>= 1:3.3.3-1)
+Description: STLport C++ class library
+ STLport is a open-source, volunteer-driven project. Its goal is to
+ build complete, multiplatform ANSI C++ Standard Library with SGI STL
+ code base. From this base, it inherits the following advantages :
+ + Advanced technology for maximum efficiency
+ + Exception safety and thread safety
+ + Standard compliance and reliability
+ + Important extensions - hash tables, singly-linked list, rope
+ .
+ For more information on STLport visit the web page
+ http://www.stlport.org/ .
+
+Package: libxcursor-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 140
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xcursor
+Version: 1.1.3-1
+Depends: libxcursor1 (= 1.1.3-1), libc6-dev | libc-dev, x-dev, libx11-dev, libxrender-dev
+Description: X cursor management library (development files)
+ Header files and a static version of the X cursor management library are
+ provided by this package.
+ .
+ See the libxcursor1 package for further information.
+
+Package: weblint
+Status: install ok installed
+Priority: optional
+Section: web
+Installed-Size: 192
+Maintainer: Debian QA Group <packages@qa.debian.org>
+Version: 1.93-3
+Depends: perl5
+Description: a syntax and minimal style checker for HTML
+ This is perl script which picks fluff off html pages, much in the same
+ way traditional lint picks fluff off C programs.
+ .
+ The script is pretty much a a wrapper around the Weblint module. It
+ currently supports HTML 4.0 (and only HTML 4.0). It allows the various
+ syntax and stylistic checks to be enabled or disabled by the user or in
+ a system-wide configuration file.
+ .
+ NOTE: This is a beta release of Weblint 2.0 that provides a subset of
+ of the final functionality. There are one or two features from 1.020
+ that aren't currently available. But this implements just about all
+ the warnings from 1.020 and uses current HTML standards.
+
+Package: libgtk-perl
+Status: purge ok not-installed
+Priority: optional
+Section: interpreters
+Architecture: i386
+
+Package: libid3tag0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 124
+Maintainer: Kyle McMartin <kyle@debian.org>
+Architecture: i386
+Source: libid3tag
+Version: 0.15.1b-3
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1)
+Description: ID3 tag reading library from the MAD project
+ ID3 tag manipulation library with full support for reading ID3v1, ID3v1.1,
+ ID3v2.2, ID3v2.3, and ID3v2.4 tags, as well as support for writing ID3v1,
+ ID3v1.1, and ID3v2.4 tags.
+
+Package: kapptemplate
+Status: purge ok not-installed
+Priority: optional
+Section: devel
+Architecture: all
+
+Package: libguile9
+Status: purge ok not-installed
+Priority: optional
+Section: libs
+
+Package: xscreensaver-nognome
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 28
+Maintainer: Karl Ramm <kcr@debian.org>
+Architecture: all
+Source: xscreensaver
+Version: 4.16-1
+Depends: xscreensaver (>> 4.09-3)
+Description: transition package for xscreensaver
+ This is an empty package to pull in xscreensaver.
+ .
+ The purpose of xscreensaver is to display pretty pictures on your screen
+ when it is not in use, in keeping with the philosophy that unattended
+ monitors should always be doing something interesting, just like they do
+ in the movies.
+
+Package: kde-icons-noia
+Status: install ok installed
+Priority: optional
+Section: kde
+Installed-Size: 18392
+Maintainer: Morten Hustveit <morten@debian.org>
+Architecture: all
+Version: 1.0-2
+Recommends: kdebase (>= 4:3.0)
+Description: Noia icon theme for KDE 3
+ The Noia icon theme is a complete icon set with only original icons.
+ It can be used as individual icons for X desktops, or as a complete
+ icon set for KDE 3.
+
+Package: libcupsimage2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 116
+Maintainer: Kenshi Muto <kmuto@debian.org>
+Architecture: i386
+Source: cupsys
+Version: 1.1.20final+rc1-5
+Replaces: libcupsys2 (<= 1.1.18-2)
+Depends: libc6 (>= 2.3.2.ds1-4), libcupsys2-gnutls10 (>= 1.1.20final-1), libjpeg62, libpng12-0 (>= 1.2.5.0-4), libtiff4, zlib1g (>= 1:1.2.1)
+Description: Common UNIX Printing System(tm) - image libs
+ The Common UNIX Printing System (or CUPS(tm)) is a printing system and
+ general replacement for lpd and the like. It supports the Internet
+ Printing Protocol (IPP), and has its own filtering driver model for
+ handling various document types.
+ .
+ This package provides the image libraries for handling the CUPS
+ raster format.
+ .
+ The terms "Common UNIX Printing System" and "CUPS" are trademarks of
+ Easy Software Products (www.easysw.com), and refer to the original
+ source packages from which these packages are made.
+
+Package: libgnutls10
+Status: install ok installed
+Priority: important
+Section: libs
+Installed-Size: 640
+Maintainer: Matthias Urlichs <smurf@debian.org>
+Architecture: i386
+Source: gnutls10
+Version: 1.0.4-7
+Replaces: gnutls0, gnutls3, gnutls0.4
+Depends: libc6 (>= 2.3.2.ds1-4), libgcrypt7 (>= 1.1.90-2), libgpg-error0 (>= 0.7), liblzo1, libopencdk8 (>= 0.5.5), libtasn1-2 (>= 0.2.7), zlib1g (>= 1:1.2.1)
+Suggests: gnutls-bin
+Conflicts: gnutls0, gnutls0.4
+Description: GNU TLS library - runtime library
+ gnutls is a portable library which implements the Transport Layer
+ Security (TLS) 1.0 and Secure Sockets Layer (SSL) 3.0 protocols.
+ .
+ Currently gnutls implements:
+ - the TLS 1.0 and SSL 3.0 protocols, without any US-export
+ controlled algorithms
+ - X509 Public Key Infrastructure (with several limitations).
+ - SRP for TLS authentication.
+ - TLS Extension mechanism
+ .
+ This package is provided for backward compatibility.
+ .
+ This package contains the runtime libraries.
+
+Package: libgnutls11
+Status: install ok installed
+Priority: important
+Section: libs
+Installed-Size: 672
+Maintainer: Matthias Urlichs <smurf@debian.org>
+Architecture: i386
+Source: gnutls11
+Version: 1.0.16-7
+Replaces: gnutls0, gnutls3, gnutls0.4
+Depends: libc6 (>= 2.3.2.ds1-4), libgcrypt11, libgpg-error0 (>= 1.0), liblzo1, libopencdk8 (>= 0.5.5), libtasn1-2 (>= 0.2.8), zlib1g (>= 1:1.2.1), libtasn1-2 (>= 0.2.10)
+Suggests: gnutls-bin
+Conflicts: gnutls0, gnutls0.4
+Description: GNU TLS library - runtime library
+ gnutls is a portable library which implements the Transport Layer
+ Security (TLS) 1.0 and Secure Sockets Layer (SSL) 3.0 protocols.
+ .
+ Currently gnutls implements:
+ - the TLS 1.0 and SSL 3.0 protocols, without any US-export
+ controlled algorithms
+ - X509 Public Key Infrastructure (with several limitations).
+ - SRP for TLS authentication.
+ - TLS Extension mechanism
+ .
+ This package contains the runtime libraries.
+
+Package: abuse-frabs
+Status: purge ok not-installed
+Priority: optional
+Section: games
+Architecture: all
+
+Package: libwrap0
+Status: install ok installed
+Priority: important
+Section: base
+Installed-Size: 88
+Maintainer: Anthony Towns <ajt@debian.org>
+Architecture: i386
+Source: tcp-wrappers
+Version: 7.6.dbs-6
+Depends: libc6 (>= 2.3.2.ds1-4)
+Recommends: tcpd
+Conflicts: netbase (<< 3.16-1)
+Description: Wietse Venema's TCP wrappers library
+ Wietse Venema's network logger, also known as TCPD or LOG_TCP.
+ .
+ These programs log the client host name of incoming telnet,
+ ftp, rsh, rlogin, finger etc. requests. Security options are:
+ access control per host, domain and/or service; detection of
+ host name spoofing or host address spoofing; booby traps to
+ implement an early-warning system.
+
+Package: libarts1-xine
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 332
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdemultimedia
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libarts1 (>= 1.3.0), libc6 (>= 2.3.2.ds1-4), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxine1 (>= 1-rc3a), libxrender1, libxv1, zlib1g (>= 1:1.2.1)
+Description: xine plugin for arts
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ xine plugin for arts.
+ .
+ This package is part of the official KDE multimedia module.
+
+Package: t1lib1
+Status: deinstall ok config-files
+Priority: optional
+Section: libs
+Installed-Size: 332
+Maintainer: Artur R. Czechowski <arturcz@hell.pl>
+Source: t1lib-old
+Version: 1.3.1-9
+Config-Version: 1.3.1-9
+Depends: libc6 (>= 2.3.2.ds1-4), xlibs (>> 4.1.0)
+Description: Type 1 font rasterizer library - runtime
+ T1lib is an enhanced rasterizer for Type 1 fonts.
+ .
+ T1lib is based on the X11R5 font rasterizer code, but operates independently
+ of X11. It includes many enhancements, including underlining, antialiasing,
+ user-defined slant and extension factors, and rotation.
+ .
+ This package contains the shared libraries needed to run programs using T1lib.
+
+Package: xpilot-server
+Status: deinstall ok config-files
+Priority: optional
+Section: games
+Installed-Size: 1252
+Maintainer: Ben Armstrong <synrg@sanctuary.nslug.ns.ca>
+Source: xpilot
+Version: 4.5.5beta.20031222-1
+Config-Version: 4.5.5beta.20031222-1
+Depends: libc6 (>= 2.3.2.ds1-4), xlibs (>> 4.1.0), debconf, adduser (>= 3.34)
+Suggests: xpilot-client-nosound, xpilot-client-nas, xpilot-client-rplay, xpilot-extra
+Conflicts: xpilot (<< 4.1.0-4.U.4alpha2.1)
+Conffiles:
+ /etc/xpilots/defaults 66c72757079e8ab9224b9fd3c894f7d8
+ /etc/xpilots/password 489e7eeaeaba6ccfc9b5a515ef338e20
+ /etc/init.d/xpilots 0a8a0958cedb335fb8e8eea904ae8ce8
+Description: Server for hosting XPilot games
+ XPilot is a multi-player tactical manoeuvring game for X. Each
+ player controls their own fighter equipped with a variety of weapons
+ and power-ups. Players compete as teams or as individuals; the
+ object of the game is to score points by blasting the opposition,
+ stealing their treasure or by racing round a circuit.
+ WARNING: This game is very addictive.
+ .
+ This package contains the server daemon you need in order to host
+ your own game of XPilot.
+
+Package: netcat
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 179
+Maintainer: Decklin Foster <decklin@red-bean.com>
+Version: 1.10-23
+Depends: libc6 (>= 2.3.2-1)
+Description: TCP/IP swiss army knife
+ A simple Unix utility which reads and writes data across network
+ connections using TCP or UDP protocol. It is designed to be a reliable
+ "back-end" tool that can be used directly or easily driven by other
+ programs and scripts. At the same time it is a feature-rich network
+ debugging and exploration tool, since it can create almost any kind of
+ connection you would need and has several interesting built-in
+ capabilities.
+
+Package: libstdc++5-3.3-dev
+Status: install ok installed
+Priority: standard
+Section: libdevel
+Installed-Size: 4420
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-3.3
+Version: 1:3.3.4-11
+Provides: libstdc++-dev
+Depends: gcc-3.3-base, libstdc++5 (>= 1:3.3.4-11), libc6-dev (>= 2.3.2.ds1-16), g++-3.3 (>= 1:3.3.4-11)
+Suggests: libstdc++5-3.3-doc, stl-manual
+Conflicts: libg++27-dev, libg++272-dev (<< 2.7.2.8-1), libstdc++2.8-dev, libg++2.8-dev, libstdc++2.9-dev, libstdc++2.9-glibc2.1-dev, libstdc++2.10-dev (<< 1:2.95.3-2), libstdc++3.0-dev, libstdc++5-dev (<= 1:3.2.3-0pre3)
+Description: The GNU Standard C++ Library v3 (development files)
+ This package contains the headers and static library files necessary for
+ building C++ programs which use libstdc++. Be advised that this only works
+ with the GNU C++ compiler (version 3.0), and no earlier library will work it.
+ .
+ libstdc++-v3 is a complete rewrite from the previous libstdc++-v2, which
+ was included up to g++-2.95. The first version of libstdc++-v3 appeared
+ in g++-3.0.
+
+Package: gtk-engines-qtpixmap
+Status: purge ok not-installed
+Priority: optional
+Section: graphics
+Architecture: i386
+
+Package: lsof
+Status: install ok installed
+Priority: standard
+Section: utils
+Installed-Size: 520
+Maintainer: Jim Mintha <jmintha@debian.org>
+Architecture: i386
+Version: 4.72-1
+Replaces: lsof-2.2, lsof-2.0.35, lsof-2.0.36, lsof-2.0.38
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: suidmanager (<< 0.50)
+Description: List open files.
+ Lsof is a Unix-specific diagnostic tool. Its name stands
+ for LiSt Open Files, and it does just that. It lists
+ information about any files that are open, by processes
+ currently running on the system.
+ The binary should work on any kernel in 2.2 or 2.4
+
+Package: liblockfile1
+Status: install ok installed
+Priority: important
+Section: libs
+Installed-Size: 92
+Maintainer: Miquel van Smoorenburg <miquels@cistron.nl>
+Architecture: i386
+Source: liblockfile
+Version: 1.06
+Depends: libc6 (>= 2.3.2.ds1-4)
+Description: NFS-safe locking library, includes dotlockfile program
+ Liblockfile is a shared library with NFS-safe locking functions. It
+ includes the command-line utility ``dotlockfile''.
+
+Package: libdb4.1++-dev
+Status: install ok installed
+Priority: extra
+Section: libdevel
+Installed-Size: 1236
+Maintainer: Debian Berkeley DB Maintainers <pkg-db-devel@lists.alioth.debian.org>
+Architecture: i386
+Source: db4.1
+Version: 4.1.25-17
+Provides: libdb++-dev
+Depends: libdb4.1++ (= 4.1.25-17), libdb4.1-dev (= 4.1.25-17)
+Conflicts: libdb2++-dev, libdb++-dev, libdb3++-dev
+Description: Berkeley v4.1 Database Libraries for C++ [development]
+ This is the development package which contains headers and static
+ libraries for the Berkeley v4.1 database library. This is only for
+ programs which will use the C++ interface.
+
+Package: wwwconfig-common
+Status: purge ok not-installed
+Priority: optional
+Section: web
+
+Package: apt-src
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 128
+Maintainer: Laszlo Boszormenyi (GCS) <gcs@lsc.hu>
+Architecture: all
+Version: 0.25.1
+Depends: libapt-pkg-perl (>= 0.1.6), dpkg-dev, apt, perl (>= 5.6.0-16)
+Recommends: sudo, fakeroot, build-essential
+Description: manage Debian source packages
+ apt-src is a command line interface for downloading, installing, upgrading,
+ and tracking Debian source packages. It makes source package management
+ feel a lot like using apt to manage binary packages, and is being used as
+ a testbed to work on adding source dependencies to Debian.
+ .
+ It can be run as a normal user, or as root. If you want a convenient way to
+ track updates to packages while preserving your local modifications, this is
+ a way to do that.
+
+Package: libio-string-perl
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 72
+Maintainer: Matt Hope <dopey@debian.org>
+Architecture: all
+Version: 1.05-1
+Depends: perl (>= 5.6.0-16)
+Description: Emulate IO::File interface for in-core strings
+ The IO::String module provide the IO::File interface for in-core
+ strings. An IO::String object can be attached to a string, and
+ will make it possible to use the normal file operations for reading or
+ writing data, as well as seeking to various locations of the string.
+ The main reason you might want to do this, is if you have some other
+ library module that only provide an interface to file handles, and you
+ want to keep all the stuff in memory.
+ .
+ The IO::String module provide an interface compatible with
+ IO::File as distributed with IO-1.20, but the following methods
+ are not available; new_from_fd, fdopen, format_write,
+ format_page_number, format_lines_per_page, format_lines_left,
+ format_name, format_top_name.
+
diff --git a/ept/test-data/etc/sources.list b/ept/test-data/etc/sources.list
new file mode 100644
index 0000000..1af2295
--- /dev/null
+++ b/ept/test-data/etc/sources.list
@@ -0,0 +1,5 @@
+deb http://wherever/debian ./
+# deb ftp://ftp.sk.debian.org/debian unstable main
+#deb ftp://ftp.sk.debian.org/debian unstable main
+# a fancy comment, actually :-)
+ # and another, but smarter
diff --git a/ept/test-data/packagelist b/ept/test-data/packagelist
new file mode 100644
index 0000000..596cc50
--- /dev/null
+++ b/ept/test-data/packagelist
@@ -0,0 +1,9907 @@
+Package: sp
+Priority: optional
+Section: text
+Installed-Size: 600
+Maintainer: Neil Roeth <neil@debian.org>
+Architecture: i386
+Source: jade (1.2.1-42)
+Version: 1.3.4-1.2.1-42
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libsp1 (>= 1.3.4-1.2.1-30), libstdc++5 (>= 1:3.3.3-1)
+Suggests: doc-base, sgml-data
+Filename: pool/main/j/jade/sp_1.3.4-1.2.1-42_i386.deb
+Size: 175422
+MD5sum: 01a30c6acb51a2f2e39af09591c9fe71
+Description: James Clark's SGML parsing tools
+ This package is a collection of SGML/XML tools called SP.
+ .
+ These tools are used to parse, validate, and normalize SGML and XML
+ files. The central programs included in this package are 'nsgmls',
+ which replaces sgmls, 'spam', 'spent', 'sgmlnorm', and 'sgml2xml'.
+ .
+ Author: James Clark <jjc@jclark.com>
+ Homepage: http://www.jclark.com/sp/
+
+Package: m4
+Priority: standard
+Section: interpreters
+Installed-Size: 328
+Maintainer: Santiago Vila <sanvila@debian.org>
+Architecture: i386
+Version: 1.4.1-1
+Depends: libc6 (>= 2.2.4-4)
+Filename: pool/main/m/m4/m4_1.4.1-1_i386.deb
+Size: 103878
+MD5sum: 820d420962fcb245b8ccff12e974226f
+Description: a macro processing language
+ GNU `m4' is an implementation of the traditional UNIX macro
+ processor. It is mostly SVR4 compatible, although it has some
+ extensions (for example, handling more than 9 positional parameters to
+ macros). `m4' also has builtin functions for including files, running
+ shell commands, doing arithmetic, etc. Autoconf needs GNU `m4' for
+ generating `configure' scripts, but not for running them.
+
+Package: autobook
+Priority: optional
+Section: doc
+Installed-Size: 5236
+Maintainer: Tomas Guemes <tomas@enosig.org>
+Architecture: all
+Version: 1.4.2-1
+Suggests: automake, autoconf, libtool, libtool-doc
+Filename: pool/main/a/autobook/autobook_1.4.2-1_all.deb
+Size: 2377894
+MD5sum: c3a4f882bab51966c04ec646f7ca8001
+Description: GNU Autoconf, Automake and Libtool Book
+ This is the digital version of the book titled "GNU Autoconf, Automake, and
+ Libtool", aka The Autobook, published by New Riders Publishing
+ .
+ It's a tutorial for the GNU Autotools writen by Gary V. Vaughan, Ben Elliston,
+ Tom Tromey and Ian Lance Taylor, some of the principal Autotools developers.
+ .
+ The Autotools (Autoconf, Automake and Libtool) are packages for making your
+ software more portable and to simplify building it, usually on someone else's
+ system. This book describes how these tools work together.
+ .
+ Homepage: http://mdcc.cx/autobook
+
+Package: libxaw7
+Priority: optional
+Section: libs
+Installed-Size: 664
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0)
+Filename: pool/main/x/xfree86/libxaw7_4.3.0.dfsg.1-7_i386.deb
+Size: 322364
+MD5sum: 961588ff9f1f6a2406a600689181c9d4
+Description: X Athena widget set library
+ Xaw is a widget set based on the the Xt (X Toolkit Intrinsics) library. It
+ provides a set of graphical user-interface elements ("widgets") such as
+ menus, scrollbars, dialog boxes, text-input areas, and so forth. The X
+ clients distributed with the X Window System itself, as well as many others,
+ use the Athena widget set.
+ .
+ XFree86 has made a number of major improvements to the Athena widget set,
+ resulting in version 7 -- this version features widgets customizable in
+ appearance and event handling (a.k.a. "themes"); an extensible image loader
+ (currently supports bitmaps, gradients, and pixmaps); numerous enhancements
+ to the Text widget, text source and text sink objects; and multiple-column
+ support in the SimpleMenu widget.
+ .
+ The older Athena widget library corresponding to version X11R6.4 of the X
+ Window System can be found in the libxaw6 package.
+
+Package: aalib1
+Priority: optional
+Section: libs
+Installed-Size: 168
+Maintainer: Joey Hess <joeyh@debian.org>
+Architecture: i386
+Source: aalib
+Version: 1.4p5-22
+Depends: libc6 (>= 2.3.2.ds1-4), libgpmg1 (>= 1.19.6-1), libncurses5 (>= 5.4-1), libx11-6 | xlibs (>> 4.1.0), slang1 (>> 1.4.9dbs-4)
+Filename: pool/main/a/aalib/aalib1_1.4p5-22_i386.deb
+Size: 56442
+MD5sum: eeddc4dc6ffe9ebeb64d08ad0138c7f0
+Description: ascii art library
+ AAlib is a portable ascii art graphics library. Internally, it works like
+ a graphics display, but the output is rendered into gorgeous platform
+ independent ascii graphics.
+
+Package: libslp1
+Priority: optional
+Section: libs
+Installed-Size: 132
+Maintainer: Ganesan Rajagopal <rganesan@debian.org>
+Architecture: i386
+Source: openslp
+Version: 1.0.11-7
+Depends: libc6 (>= 2.3.2.ds1-4), debconf, net-tools
+Suggests: slpd (= 1.0.11-7), openslp-doc (= 1.0.11-7)
+Filename: pool/main/o/openslp/libslp1_1.0.11-7_i386.deb
+Size: 45596
+MD5sum: 0805b5900ac6e16607cb6363965f38ee
+Description: OpenSLP libraries
+ Service Location Protocol is a IETF standard protocol that is used to
+ discover/advertise services on the network. You can use SLP for anything
+ from locating a suitable printer on your floor to discovering what LDAP
+ directories are available in your organization. This package provides
+ the OpenSLP run-time library package that is linked to SLP aware
+ applications. This library implements RFC 2614 - An API for Service
+ Location. Unless there is a SLP DA in the network, you must install the
+ slpd package to be able to advertise the services.
+
+Package: gwremote
+Priority: optional
+Section: net
+Installed-Size: 848
+Maintainer: Eric Heintzmann <eric@gnustep.fr.st>
+Architecture: i386
+Source: gworkspace
+Version: 0.6.3-4
+Depends: gnustep-back (>= 0.9.3), libc6 (>= 2.3.2.ds1-4), libgnustep-base1 (>= 1.9.2), libgnustep-gui0 (>= 0.9.3), libobjc1 (>= 1:3.3.4-4)
+Suggests: gworkspace
+Filename: pool/main/g/gworkspace/gwremote_0.6.3-4_i386.deb
+Size: 218346
+MD5sum: 81efa8564557e66e08ac560ba87d3eb1
+Description: GNUstep Remote Workspace Manager
+ GWRemote is a Distributed Objects based application that let you
+ browse the file system of a remote host where the gwsd tool is
+ running. You can also copy, move, delete, link, duplicate files,
+ on the remote host and edit little text files, too.
+
+Package: libnss3
+Priority: optional
+Section: libs
+Installed-Size: 1428
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Source: mozilla
+Version: 2:1.7.2-4
+Replaces: mozilla-psm (<< 2:0.9.9)
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/m/mozilla/libnss3_1.7.2-4_i386.deb
+Size: 632780
+MD5sum: 204fcfdd444b6f3526cc8667d226e09e
+Description: Network Security Service Libraries - runtime
+ This package provides the runtime libraries needed to use the Netscape
+ SSL/TLS layer, including S/MIME and key management.
+
+Package: gcj
+Priority: optional
+Section: devel
+Installed-Size: 0
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-defaults (1.17)
+Version: 4:3.3.4-2
+Provides: java-compiler
+Depends: cpp (>= 4:3.3.4-2), gcc (>= 4:3.3.4-2), g++ (>= 4:3.3.4-2), gcj-3.3 (>= 1:3.3.4-1)
+Recommends: gij (>= 4:3.3.4-2)
+Filename: pool/main/g/gcc-defaults/gcj_3.3.4-2_i386.deb
+Size: 1228
+MD5sum: 596f3535bc31d3376427bf85372251ec
+Description: The GNU Java compiler
+ GCJ is a front end to the GCC compiler which can natively compile both
+ Java(tm) source and bytecode files. The compiler can also generate class
+ files.
+ .
+ This is a dependency package providing the default GNU Java compiler.
+
+Package: libvorbis0a
+Priority: optional
+Section: libs
+Installed-Size: 184
+Maintainer: Christopher L Cheney <ccheney@debian.org>
+Architecture: i386
+Source: libvorbis
+Version: 1.0.1-1
+Replaces: libvorbis0
+Depends: libc6 (>= 2.3.2.ds1-4), libogg0 (>= 1.1.0)
+Conflicts: libvorbis0
+Filename: pool/main/libv/libvorbis/libvorbis0a_1.0.1-1_i386.deb
+Size: 96752
+MD5sum: 56bcf83a9246224c3c845e483e433892
+Description: The Vorbis General Audio Compression Codec
+ Ogg Vorbis is a fully open, non-proprietary, patent-and-royalty-free,
+ general-purpose compressed audio format for audio and music at fixed
+ and variable bitrates from 16 to 128 kbps/channel.
+ .
+ The Vorbis library is the primary Ogg Vorbis library.
+
+Package: libident
+Priority: important
+Section: libs
+Installed-Size: 80
+Maintainer: Paul Slootman <paul@debian.org>
+Architecture: i386
+Version: 0.22-2.2
+Depends: libc6 (>= 2.3.2-1)
+Suggests: libident-dev
+Filename: pool/main/libi/libident/libident_0.22-2.2_i386.deb
+Size: 13952
+MD5sum: 5467333e7c976963f3a6c951727aa0b5
+Description: simple RFC1413 client library - runtime
+ This is a small library to interface to the Ident protocol server;
+ "ident" enables a remote host to find out who's the owner of a
+ network connection.
+ .
+ /usr/sbin/in.identtestd is a small daemon (to be started from inetd)
+ that does an ident lookup on you if you telnet into it. Can be used
+ to verify that your Ident server is working correctly.
+
+Package: libdb3
+Priority: required
+Section: libs
+Installed-Size: 732
+Maintainer: Debian Berkeley DB Maintainers <pkg-db-devel@lists.alioth.debian.org>
+Architecture: i386
+Source: db3
+Version: 3.2.9-20
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libdb2 (<< 2:2.7.7-3)
+Filename: pool/main/d/db3/libdb3_3.2.9-20_i386.deb
+Size: 237772
+MD5sum: d6e7ac89cb8c5dd838614c20458fb005
+Description: Berkeley v3 Database Libraries [runtime]
+ This is the runtime package for programs that use the Berkeley v3
+ database library.
+ .
+ Many programs use the Berkeley Database to store their data. Other
+ versions of the database can be found in the db2, db4.0, db4.1 and
+ db4.2 packages.
+
+Package: libvorbisenc2
+Priority: optional
+Section: libs
+Installed-Size: 936
+Maintainer: Christopher L Cheney <ccheney@debian.org>
+Architecture: i386
+Source: libvorbis
+Version: 1.0.1-1
+Replaces: libvorbis0 (<< 1.0.0)
+Depends: libc6 (>= 2.3.2.ds1-4), libogg0 (>= 1.1.0), libvorbis0a (>= 1.0.1)
+Conflicts: libvorbis0 (<< 1.0.0)
+Filename: pool/main/libv/libvorbis/libvorbisenc2_1.0.1-1_i386.deb
+Size: 78448
+MD5sum: 5a56a019cd8df228f0766a9fd15280f9
+Description: The Vorbis General Audio Compression Codec
+ Ogg Vorbis is a fully open, non-proprietary, patent-and-royalty-free,
+ general-purpose compressed audio format for audio and music at fixed
+ and variable bitrates from 16 to 128 kbps/channel.
+ .
+ The Vorbisenc library provides a convenient API for setting up an encoding
+ environment using libvorbis.
+
+Package: libobjc1
+Priority: optional
+Section: libs
+Installed-Size: 260
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-3.3
+Version: 1:3.3.4-11
+Depends: gcc-3.3-base, libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/g/gcc-3.3/libobjc1_3.3.4-11_i386.deb
+Size: 136444
+MD5sum: c69b8d9de33d1f304a8baa3165d22da5
+Description: Runtime library for GNU Objective-C applications
+ Library needed for GNU ObjC applications linked against the shared library.
+
+Package: binutils
+Priority: standard
+Section: devel
+Installed-Size: 5972
+Maintainer: James Troup <james@nocrew.org>
+Architecture: i386
+Version: 2.15-3
+Provides: elf-binutils
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: binutils-doc (= 2.15-3)
+Conflicts: gas, elf-binutils, modutils (<< 2.4.19-1)
+Filename: pool/main/b/binutils/binutils_2.15-3_i386.deb
+Size: 2222770
+MD5sum: f7aa22ac0199a88e83fa17a78a63744e
+Description: The GNU assembler, linker and binary utilities
+ The programs in this package are used to assemble, link and manipulate
+ binary and object files. They may be used in conjunction with a compiler
+ and various libraries to build programs.
+
+Package: samba
+Priority: optional
+Section: net
+Installed-Size: 6032
+Maintainer: Eloy A. Paris <peloy@debian.org>
+Architecture: i386
+Version: 3.0.6-4
+Replaces: samba-common (<= 2.0.5a-2)
+Depends: samba-common (= 3.0.6-4), netbase, logrotate, libacl1 (>= 2.2.11-1), libc6 (>= 2.3.2.ds1-4), libcomerr2 (>= 1.33-3), libcupsys2-gnutls10 (>= 1.1.20final-1), libkrb53 (>= 1.3.2), libldap2 (>= 2.1.17-1), libpam0g (>= 0.76), libpopt0 (>= 1.7), debconf (>= 0.5) | debconf-2.0, libpam-runtime (>= 0.76-13.1), libpam-modules
+Suggests: samba-doc
+Filename: pool/main/s/samba/samba_3.0.6-4_i386.deb
+Size: 2409932
+MD5sum: cf1f73de73b69b4329e8d95279565a71
+Description: a LanManager-like file and printer server for Unix
+ The Samba software suite is a collection of programs that
+ implements the SMB protocol for unix systems, allowing you to serve
+ files and printers to Windows, NT, OS/2 and DOS clients. This protocol
+ is sometimes also referred to as the LanManager or NetBIOS protocol.
+ .
+ This package contains all the components necessary to turn your
+ Debian GNU/Linux box into a powerful file and printer server.
+ .
+ Currently, the Samba Debian packages consist of the following:
+ .
+ samba - LanManager-like file and printer server for Unix.
+ samba-common - Samba common files used by both the server and the client.
+ smbclient - LanManager-like simple client for Unix.
+ swat - Samba Web Administration Tool
+ samba-doc - Samba documentation.
+ smbfs - Mount and umount commands for the smbfs (kernels 2.2.x and above).
+ libpam-smbpass - pluggable authentication module for SMB password database
+ libsmbclient - Shared library that allows applications to talk to SMB servers
+ libsmbclient-dev - libsmbclient shared libraries
+ winbind: Service to resolve user and group information from Windows NT servers
+ python2.3-samba: Python bindings that allow access to various aspects of Samba
+ .
+ It is possible to install a subset of these packages depending on
+ your particular needs. For example, to access other SMB servers you
+ should only need the smbclient and samba-common packages.
+Task: file-server, print-server
+
+Package: libxcursor1
+Priority: optional
+Section: libs
+Installed-Size: 92
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xcursor
+Version: 1.1.3-1
+Depends: libc6 (>= 2.3.2.ds1-4), libx11-6 | xlibs (>> 4.1.0), libxrender1
+Filename: pool/main/x/xcursor/libxcursor1_1.1.3-1_i386.deb
+Size: 23676
+MD5sum: 96d81a2acc07e213ea85eb32fdc32694
+Description: X cursor management library
+ Xcursor is a simple library designed to help locate and load cursors for the
+ X Window System. Cursors can be loaded from files or memory and can exist in
+ several sizes; the library automatically picks the best size. When using
+ images loaded from files, Xcursor prefers to use the Render extension's
+ CreateCursor request for rendering cursors. Where the Render extension is
+ not supported, Xcursor maps the cursor image to a standard X cursor and uses
+ the core X protocol CreateCursor request.
+
+Package: pnm2ppa
+Priority: optional
+Section: text
+Installed-Size: 860
+Maintainer: Chad Walstrom <chewie@debian.org>
+Architecture: i386
+Version: 1.12-12
+Depends: libc6 (>= 2.3.2.ds1-4), debconf (>= 0.5), gs
+Suggests: magicfilter | apsfilter
+Conflicts: pbm2ppa
+Filename: pool/main/p/pnm2ppa/pnm2ppa_1.12-12_i386.deb
+Size: 204662
+MD5sum: cedd75315c4c76a0bc1c08e3d210352b
+Description: PPM to PPA converter
+ Using pnm2ppa it's possible to run HP-GDI printers on Linux. These printers
+ are normally "Windows-only" and use the PPA protocol which is proprietary.
+ pnm2ppa supports color and is supposed to work faster than pbm2ppa.
+ .
+ pnm2ppa supports the following printers: HP Deskjet 7XX Series, HP Deskjet
+ 820 Series and HP Deskjet 1000 Series.
+
+Package: libwrap0
+Priority: important
+Section: base
+Installed-Size: 88
+Maintainer: Anthony Towns <ajt@debian.org>
+Architecture: i386
+Source: tcp-wrappers
+Version: 7.6.dbs-6
+Depends: libc6 (>= 2.3.2.ds1-4)
+Recommends: tcpd
+Conflicts: netbase (<< 3.16-1)
+Filename: pool/main/t/tcp-wrappers/libwrap0_7.6.dbs-6_i386.deb
+Size: 27892
+MD5sum: 5ff3785454304fc32b7bf5e57c1d3e5a
+Description: Wietse Venema's TCP wrappers library
+ Wietse Venema's network logger, also known as TCPD or LOG_TCP.
+ .
+ These programs log the client host name of incoming telnet,
+ ftp, rsh, rlogin, finger etc. requests. Security options are:
+ access control per host, domain and/or service; detection of
+ host name spoofing or host address spoofing; booby traps to
+ implement an early-warning system.
+
+Package: scantv
+Priority: extra
+Section: graphics
+Installed-Size: 160
+Maintainer: Gerd Knorr <kraxel@debian.org>
+Architecture: i386
+Source: xawtv
+Version: 3.94-1
+Replaces: xawtv (<< 3.53)
+Depends: libc6 (>= 2.3.2.ds1-4), libjpeg62, libpng12-0 (>= 1.2.5.0-4), libzvbi0 (>= 0.2.2), zlib1g (>= 1:1.2.1), xawtv-plugins (= 3.94-1)
+Filename: pool/main/x/xawtv/scantv_3.94-1_i386.deb
+Size: 50902
+MD5sum: 89a056069c1f73c7193706b590a26605
+Description: scan TV channels for stations
+ This utility can scan a channel set for TV stations
+ and write the ones found into a xawtv config file
+ (which is also read by some other utilities like fbtv).
+ It also tries to extract the station names from vbi data.
+
+Package: dbs
+Priority: optional
+Section: devel
+Installed-Size: 160
+Maintainer: Warren Turkal <wt@midsouth.rr.com>
+Architecture: all
+Version: 0.34
+Depends: make, bzip2, perl
+Filename: pool/main/d/dbs/dbs_0.34_all.deb
+Size: 22250
+MD5sum: bbeb8c6b161db4d1b801600189224eb4
+Description: Allows Debian source packages with multiple patches
+ DBS stands for Debian Build System and is an alternative approach for
+ source packages which want to ship a pristine source and then apply
+ patches to it. This allows the distribution of multiple patches inside
+ one package that are applied during the build process.
+ .
+ Please see http://snoopy.apana.org.au/~bam/debian/faq/#dbs for further
+ information on DBS.
+
+Package: libcupsimage2
+Priority: optional
+Section: libs
+Installed-Size: 116
+Maintainer: Kenshi Muto <kmuto@debian.org>
+Architecture: i386
+Source: cupsys
+Version: 1.1.20final+rc1-5
+Replaces: libcupsys2 (<= 1.1.18-2)
+Depends: libc6 (>= 2.3.2.ds1-4), libcupsys2-gnutls10 (>= 1.1.20final-1), libjpeg62, libpng12-0 (>= 1.2.5.0-4), libtiff4, zlib1g (>= 1:1.2.1)
+Filename: pool/main/c/cupsys/libcupsimage2_1.1.20final+rc1-5_i386.deb
+Size: 35382
+MD5sum: 6d49ccd5f9a83f0c28aa71565e16090d
+Description: Common UNIX Printing System(tm) - image libs
+ The Common UNIX Printing System (or CUPS(tm)) is a printing system and
+ general replacement for lpd and the like. It supports the Internet
+ Printing Protocol (IPP), and has its own filtering driver model for
+ handling various document types.
+ .
+ This package provides the image libraries for handling the CUPS
+ raster format.
+ .
+ The terms "Common UNIX Printing System" and "CUPS" are trademarks of
+ Easy Software Products (www.easysw.com), and refer to the original
+ source packages from which these packages are made.
+
+Package: libcomerr2
+Priority: required
+Section: libs
+Installed-Size: 72
+Maintainer: Theodore Y. Ts'o <tytso@mit.edu>
+Architecture: i386
+Source: e2fsprogs
+Version: 1.35-6
+Replaces: e2fsprogs (<< 1.34-1)
+Provides: libcomerr-kth-compat
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/e/e2fsprogs/libcomerr2_1.35-6_i386.deb
+Size: 23456
+MD5sum: 447911f66b7fad1d83e43a1070a45a1f
+Description: The Common Error Description library
+ libcomerr is an attempt to present a common error-handling mechanism to
+ manipulate the most common form of error code in a fashion that does not
+ have the problems identified with mechanisms commonly in use.
+
+Package: liblzo1
+Priority: important
+Section: libs
+Installed-Size: 168
+Maintainer: Paolo Molaro <lupus@debian.org>
+Architecture: i386
+Source: lzo
+Version: 1.08-1.2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: lzop (<= 1.00)
+Filename: pool/main/l/lzo/liblzo1_1.08-1.2_i386.deb
+Size: 44506
+MD5sum: 47d2d8de5327a36aadd73464b2951ef8
+Description: A real-time data compression library
+ LZO is a portable lossless data compression library written in
+ ANSI C. It offers pretty fast compression and *very* fast
+ decompression. Decompression requires no memory.
+ In addition there are slower compression levels achieving a
+ quite competitive compression ratio while still decompressing
+ at this very high speed.
+
+Package: libxt6
+Priority: optional
+Section: libs
+Installed-Size: 704
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), debconf (>= 0.5) | debconf-2.0
+Conflicts: xlibs (<< 4.3.0)
+Filename: pool/main/x/xfree86/libxt6_4.3.0.dfsg.1-7_i386.deb
+Size: 304198
+MD5sum: 2ae75c426efa40f44be1cb3b4c125557
+Description: X Toolkit Intrinsics
+ libXt, the X Toolkit Intrinsics, is an abstract widget library upon which
+ graphical widget libraries for the X Window System (such as Athena and
+ LessTif) may be developed; the Intrinsics provide a number of useful
+ interfaces to X conventions and protocols, in many cases reducing a long
+ series of Xlib calls to just a couple of Xt calls.
+
+Package: libarts1
+Priority: optional
+Section: libs
+Installed-Size: 4392
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: arts
+Version: 1.3.0-1
+Replaces: libarts (<< 4:3.0.0), libarts-alsa (<< 4:3.0.0)
+Depends: libartsc0 (>= 1.3.0), libasound2 (>> 1.0.5), libaudio2, libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), libjack0.80.0-0 (>= 0.98.1), libmad0 (>= 0.15.1b), libogg0 (>= 1.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Conflicts: libarts (<< 4:3.0.0), libarts-alsa (<< 4:3.0.0)
+Filename: pool/main/a/arts/libarts1_1.3.0-1_i386.deb
+Size: 1144898
+MD5sum: ecfb67c891e6c4532000360727daf360
+Description: aRts Sound system
+ aRts is a short form for "analog realtime synthesizer". The idea of the whole
+ thing is to create/process sound using small modules which do certain tasks.
+ These may be create a waveform (oscillators), play samples, filter data, add
+ signals, perform effects like delay/flanger/chorus, or output the data to
+ the soundcard.
+ .
+ aRts is the core sound system for KDE (and other systems)
+ .
+ This package is part of the official KDE aRts module.
+
+Package: svgalibg1
+Priority: optional
+Section: libs
+Installed-Size: 24
+Maintainer: Guillem Jover <guillem@debian.org>
+Architecture: all
+Source: svgalib
+Version: 1:1.4.3-17
+Depends: libsvga1
+Filename: pool/main/s/svgalib/svgalibg1_1.4.3-17_all.deb
+Size: 772
+MD5sum: ebd017610cb2f07ee7486906ccc15a07
+Description: transitional dummy package which can be safely removed
+ This package is only useful to ensure clean upgrades from old Debian
+ releases and can be safely removed.
+
+Package: bison
+Priority: standard
+Section: devel
+Installed-Size: 1300
+Maintainer: Vincent Renardias <vincent@debian.org>
+Architecture: i386
+Version: 1:1.875a-1.1
+Depends: m4, libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/b/bison/bison_1.875a-1.1_i386.deb
+Size: 626712
+MD5sum: a13be5670bb80ce45276d064f9ad45de
+Description: A parser generator that is compatible with YACC.
+ Bison is a general-purpose parser generator that converts a
+ grammar description for an LALR(1) context-free grammar into a C
+ program to parse that grammar. Once you are proficient with Bison, you
+ may use it to develop a wide range of language parsers, from those used
+ in simple desk calculators to complex programming languages.
+ .
+ Bison is upward compatible with Yacc: all properly-written Yacc
+ grammars ought to work with Bison with no change. Anyone familiar with
+ Yacc should be able to use Bison with little trouble.
+
+Package: libopenexr2
+Priority: optional
+Section: libs
+Installed-Size: 1016
+Maintainer: Andrew Lau <netsnipe@users.sourceforge.net>
+Architecture: i386
+Source: openexr
+Version: 1.2.1-2
+Replaces: libopenexr0
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1)
+Conflicts: libopenexr0
+Filename: pool/main/o/openexr/libopenexr2_1.2.1-2_i386.deb
+Size: 308228
+MD5sum: c732307eec6527ea009f27e18cdd5a97
+Description: Runtime files for the OpenEXR image library
+ OpenEXR is a high dynamic-range (HDR) image file format developed by
+ Industrial Light & Magic for use in computer imaging applications.
+ .
+ OpenEXR's features include:
+ * Higher dynamic range and colour precision than existing 8- and
+ 10-bit image file formats.
+ * Support for the "half" 16-bit floating-point pixel format.
+ * Multiple lossless image compression algorithms. Some of the
+ included codecs can achieve 2:1 lossless compression ratios on
+ images with film grain.
+ * Extensibility. New compression codecs and image types can easily
+ be added by extending the C++ classes included in the OpenEXR
+ software distribution. New image attributes (strings, vectors,
+ integers, etc.) can be added to OpenEXR image headers without
+ affecting backward compatibility with existing OpenEXR
+ applications.
+ This package contains the following shared libraries:
+ * IlmImf - a library that reads and writes OpenEXR images.
+ * Imath - a math library with support for matrices, 2D and
+ 3D transformations, solvers for linear/quadratic/cubic
+ equations, and more.
+ .
+ Homepage: http://www.openexr.net/
+
+Package: mgetty
+Priority: extra
+Section: comm
+Installed-Size: 388
+Maintainer: Andreas Barth <aba@not.so.argh.org>
+Architecture: i386
+Version: 1.1.31-1
+Replaces: mgetty-docs
+Depends: libc6 (>= 2.3.2.ds1-4), logrotate (>= 3.5.4-1)
+Suggests: mgetty-fax
+Conflicts: mgetty-docs (<= 1.1.30-6)
+Filename: pool/main/m/mgetty/mgetty_1.1.31-1_i386.deb
+Size: 168520
+MD5sum: 2b8a58f4350581613b60c73d82e129cd
+Description: Smart Modem getty replacement
+ Mgetty is a versatile program to handle all aspects of a modem under Unix.
+ .
+ The program 'mgetty' allows you to use a modem for handling external
+ logins, receiving faxes and using the modem as a answering machine without
+ interfering with outgoing calls.
+ .
+ This package includes basic modem data capabilities. Install mgetty-fax to
+ get the additional functionality for fax. Install mgetty-voice to get the
+ functionality to operate voice modems.
+ .
+ Mgetty is also configurable to select programs other than login for special
+ connections (eg: uucico, fido or other programs) depending on the login
+ userid. It also supports caller-id if the modem and phone line supply it,
+ and can deny connections based on originating telephone number.
+ .
+ Upstream is http://alpha.greenie.net/mgetty/
+
+Package: zip
+Priority: optional
+Section: utils
+Installed-Size: 224
+Maintainer: Santiago Vila <sanvila@debian.org>
+Architecture: i386
+Version: 2.30-6
+Replaces: zip-crypt (<= 2.30-2)
+Depends: libc6 (>= 2.2.4-4)
+Recommends: unzip
+Conflicts: zip-crypt (<= 2.30-2)
+Filename: pool/main/z/zip/zip_2.30-6_i386.deb
+Size: 88512
+MD5sum: a486d7c7d9fdcb68f5d4b9bdf1eff9d0
+Description: Archiver for .zip files
+ This is InfoZIP's zip program. It produces files that are fully
+ compatible with the popular PKZIP program; however, the command line
+ options are not identical. In other words, the end result is the same,
+ but the methods differ. :-)
+ .
+ This version supports encryption.
+
+Package: psfontmgr
+Priority: optional
+Section: admin
+Installed-Size: 172
+Maintainer: Angus Lees <gus@debian.org>
+Architecture: all
+Source: defoma
+Version: 0.11.8-0.1
+Depends: defoma (>= 0.9.1), whiptail | dialog, perl
+Conflicts: defoma-ps, scigraphica-common (<= 0.7.1-3)
+Filename: pool/main/d/defoma/psfontmgr_0.11.8-0.1_all.deb
+Size: 21220
+MD5sum: 82d87f3940cc0270fdff58568ca3c5ee
+Description: PostScript font manager -- part of Defoma, Debian Font Manager
+ psfontmgr manages PostScript fonts through the Defoma framework. It
+ registers the name of available PostScript fonts to Defoma in
+ postscript category, so applications which output a postscript file
+ have all the available PostScript fonts in their font-choosing menus.
+ .
+ It also provides a tool named defoma-psfont-installer, which registers
+ PostScript fonts installed in a PostScript printer. This tool benefits
+ those who want to print a PostScript file with the printer fonts and
+ have the printer fonts appear in a font-choosing menu.
+Task: chinese-s, chinese-t
+
+Package: gs
+Priority: optional
+Section: text
+Installed-Size: 44
+Maintainer: Masayuki Hatta (mhatta) <mhatta@debian.org>
+Architecture: all
+Source: gs-gpl
+Version: 8.01-5
+Depends: gs-gpl
+Filename: pool/main/g/gs-gpl/gs_8.01-5_all.deb
+Size: 12452
+MD5sum: 3c0289835cafbf80e69838e7457bb3d1
+Description: Transitional package
+ This dummy package is provided for a smooth transition from the
+ previous gs package (the package name has been changed to gs-gpl).
+ It may safely be removed after installation.
+
+Package: libtool
+Priority: optional
+Section: devel
+Installed-Size: 2324
+Maintainer: Scott James Remnant <scott@netsplit.com>
+Architecture: i386
+Version: 1.5.6-2
+Depends: gcc | c-compiler, cpp, libc6-dev | libc-dev, file, autotools-dev
+Recommends: libltdl3-dev
+Suggests: libtool-doc, autoconf (>> 2.50), automaken, g77 | fortran77-compiler, gcj
+Conflicts: autoconf (<= 2.12), automake (<= 1.3), libtool1.4
+Filename: pool/main/libt/libtool/libtool_1.5.6-2_i386.deb
+Size: 606600
+MD5sum: e722c5e044fd9ffe221a1f8852a4f571
+Description: Generic library support script
+ This is GNU libtool, a generic library support script. Libtool hides
+ the complexity of generating special library types (such as shared
+ libraries) behind a consistent interface. To use libtool, add the
+ new generic library building commands to your Makefile, Makefile.in,
+ or Makefile.am. See the documentation for details. Libtool supports
+ building static libraries on all platforms.
+ .
+ Libtool supports generation of C, C++, Fortran and Java libraries.
+
+Package: gnupg
+Priority: standard
+Section: utils
+Installed-Size: 4524
+Maintainer: James Troup <james@nocrew.org>
+Architecture: i386
+Version: 1.2.5-3
+Replaces: gpg-rsa, gpg-rsaref
+Provides: gpg-rsa, gpg-rsaref
+Depends: libbz2-1.0, libc6 (>= 2.3.2.ds1-4), libldap2 (>= 2.1.17-1), zlib1g (>= 1:1.2.1), makedev (>= 2.3.1-13) | devfsd | hurd
+Suggests: gnupg-doc, xloadimage
+Conflicts: gpg-rsa, gpg-rsaref, suidmanager (<< 0.50), gpg-idea (<= 2.2)
+Filename: pool/main/g/gnupg/gnupg_1.2.5-3_i386.deb
+Size: 1755950
+MD5sum: c3cc027e4f4b545b17d6bde60d4cad41
+Description: GNU privacy guard - a free PGP replacement
+ GnuPG is GNU's tool for secure communication and data storage.
+ It can be used to encrypt data and to create digital signatures.
+ It includes an advanced key management facility and is compliant
+ with the proposed OpenPGP Internet standard as described in RFC2440.
+ .
+ GnuPG does not use any patented algorithms so it cannot be compatible
+ with PGP2 because it uses IDEA (which is patented worldwide).
+
+Package: libkdenetwork2
+Priority: optional
+Section: libs
+Installed-Size: 876
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Replaces: kgpgcertmanager (<< 4:3.2.0), kmail (<< 4:3.2.0), knode (<< 4:3.2.0)
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1), perl
+Filename: pool/main/k/kdepim/libkdenetwork2_3.3.0-2_i386.deb
+Size: 302092
+MD5sum: aafff75e05bcd9e0ec865e6ae3bf4903
+Description: KDE Network library
+ This is the runtime package for programs that use the libkdenetwork library.
+ .
+ This package is part of the official KDE pim module.
+
+Package: terminal
+Priority: optional
+Section: x11
+Installed-Size: 320
+Maintainer: Evan Prodromou <evan@debian.org>
+Architecture: i386
+Version: 0.9.4-2.2
+Provides: x-terminal-emulator
+Depends: gnustep-back (>= 0.9.3), libc6 (>= 2.3.2.ds1-4), libgnustep-base1 (>= 1.9.2), libgnustep-gui0 (>= 0.9.3), libobjc1 (>= 1:3.3.4-4)
+Filename: pool/main/t/terminal/terminal_0.9.4-2.2_i386.deb
+Size: 96778
+MD5sum: a7bb85feb8334ff854b799c91a6c1d24
+Description: Terminal Emulator for GNUstep
+ Terminal.app provides terminal emulation in a GNUstep environment.
+ It gives colorized terminals with configurable fonts, and also allows
+ users to configure shell utilities as GNUstep services.
+
+Package: wmakerconf
+Priority: optional
+Section: x11
+Installed-Size: 1168
+Maintainer: Kevin B. McCarty <nboullis-sponsoring-kmccarty@debian.org>
+Architecture: i386
+Version: 2.9.2-1
+Depends: libc6 (>= 2.3.2.ds1-4), libglib1.2 (>= 1.2.0), libgtk1.2 (>= 1.2.10-4), libwraster2 (>= 0.80.1-5), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxi6 | xlibs (>> 4.1.0), wmakerconf-data (>= 0.80.0), lynx | wget | libwww-perl, lynx | wget | libhtml-parser-perl, bzip2
+Recommends: wmaker
+Suggests: www-browser
+Filename: pool/main/w/wmakerconf/wmakerconf_2.9.2-1_i386.deb
+Size: 319482
+MD5sum: 1e8e37a613d2ef7a8a54d1c4faea53a0
+Description: GTK+ based configuration tool for Window Maker
+ Interactive graphical configuration utility for Window Maker. It
+ permits configuration of Window Maker using a mouse driven point and
+ click interface, avoiding direct manual editing of its configuration
+ files.
+ .
+ There is not much point in installing this program without
+ Window Maker on the system, but this package doesn't depend on the
+ wmaker package so it may be used with, for example, self-compiled
+ installations of Window Maker.
+
+Package: xfig
+Priority: optional
+Section: graphics
+Installed-Size: 1644
+Maintainer: Roland Rosenfeld <roland@debian.org>
+Architecture: i386
+Version: 1:3.2.5-alpha5-3
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libjpeg62, libpng12-0 (>= 1.2.5.0-4), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxi6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0), xaw3dg (>= 1.5+E-1), zlib1g (>= 1:1.2.1)
+Recommends: transfig (>= 1:3.2.5-alpha4-1), xfig-libs
+Suggests: gimp, xfig-doc (>= 1:3.2.5-alpha4-1), gs, gsfonts-x11 (>= 0.7), netpbm, spell
+Conflicts: xfig-doc (<< 1:3.2.5-alpha4-1), transfig (<< 1:3.2.5-alpha4-1)
+Filename: pool/main/x/xfig/xfig_3.2.5-alpha5-3_i386.deb
+Size: 656908
+MD5sum: 9f8589e1dbd7cab9260ee4c732b7c983
+Description: Facility for Interactive Generation of figures under X11
+ XFig is a menu-driven tool that allows the user to draw and manipulate objects
+ interactively in an X window. The resulting pictures can be saved, printed
+ on postscript printers, or converted to a variety of other formats (e.g. to
+ allow inclusion in LaTeX documents or web pages) using the transfig program.
+ .
+ This package contains the xfig program itself.
+ .
+ You should think about installing the transfig package to export the graphics
+ to several common formats. You should also think about installing xfig-doc,
+ which contains the documentation and xfig-libs, which contains several clip
+ art libraries.
+ .
+ Homepage: http://www-epb.lbl.gov/xfig/
+
+Package: libtagcoll-dev
+Priority: optional
+Section: libdevel
+Installed-Size: 3864
+Maintainer: Enrico Zini <enrico@debian.org>
+Architecture: i386
+Source: libtagcoll
+Version: 0.99.1-1
+Depends: libtagcoll0 (= 0.99.1-1)
+Recommends: pkg-config
+Filename: pool/main/libt/libtagcoll/libtagcoll-dev_0.99.1-1_i386.deb
+Size: 435142
+MD5sum: 03f8fa7c15b9b25a24cae57f23393eb5
+Description: Functions used to manipulate tagged collections (development version)
+ Tagged collections are collections of items tagged with multiple categories.
+ libtagcoll provides general infrastructure to handle tagged collection data,
+ plus various kind of tagged collection manipulation functions:
+ .
+ * apply various kinds of transformations to the collection;
+ * generate and apply tag patches;
+ * discover and show implicit hierarchical relationships between
+ tags;
+ * organize the collection in an intuitively navigable hierarchy.
+
+Package: libxft2
+Priority: optional
+Section: libs
+Installed-Size: 144
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xft
+Version: 2.1.2-6
+Depends: libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libx11-6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Filename: pool/main/x/xft/libxft2_2.1.2-6_i386.deb
+Size: 50110
+MD5sum: 81bd89bcf71b7a3c1eb26258f1c6a876
+Description: FreeType-based font drawing library for X
+ Xft provides a client-side font API for X applications, making the FreeType
+ font rasterizer available to X clients. Fontconfig is used for font
+ specification resolution. Where available, the RENDER extension handles
+ glyph drawing; otherwise, the core X protocol is used.
+
+Package: libsensors3
+Priority: optional
+Section: libs
+Installed-Size: 212
+Maintainer: Aurelien Jarno <aurel32@debian.org>
+Architecture: i386
+Source: lm-sensors
+Version: 2.8.7-7
+Depends: libc6 (>= 2.3.2.ds1-4), debconf (>= 0.5) | debconf-2.0
+Suggests: lm-sensors, lm-sensors-mod-2.7 | kernel-image-2.6
+Filename: pool/main/l/lm-sensors/libsensors3_2.8.7-7_i386.deb
+Size: 69456
+MD5sum: 80935e5856c5e1e0f6469df5caaddff4
+Description: Library to read temperature/voltage/fan sensors
+ Lm-sensors is a hardware health monitoring package for Linux. It allows you
+ to access information from temperature, voltage, and fan speed sensors. It
+ works with most newer systems.
+ .
+ This package contains a shared library for querying lm-sensors.
+ .
+ Homepage: http://www.lm-sensors.nu
+
+Package: libasound2
+Priority: optional
+Section: libs
+Installed-Size: 940
+Maintainer: Debian ALSA Maintainers <pkg-alsa-devel@lists.alioth.debian.org>
+Architecture: i386
+Source: alsa-lib
+Version: 1.0.5-1
+Replaces: alsalib0.3.0, alsalib0.3.2, alsalib
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: alsa-base
+Conflicts: alsalib0.1.3, alsalib0.3.0, alsalib0.3.2, alsalib
+Filename: pool/main/a/alsa-lib/libasound2_1.0.5-1_i386.deb
+Size: 298130
+MD5sum: b879c534dd64c77d5de914557dbaf10c
+Description: Advanced Linux Sound Architecture (libraries)
+ ALSA is an effort to create a modular sound system for Linux,
+ while maintaining full compatibility with OSS/Lite.
+ .
+ These are the the shared library files.
+
+Package: lintian
+Priority: optional
+Section: devel
+Installed-Size: 1004
+Maintainer: Debian Lintian Maintainers <lintian-maint@debian.org>
+Architecture: all
+Version: 1.23.2
+Depends: perl, libdigest-md5-perl | perl (>> 5.8), file, binutils, diffstat (>= 1.27-1), man-db (>= 2.3.20-1), gettext
+Suggests: binutils-multiarch
+Filename: pool/main/l/lintian/lintian_1.23.2_all.deb
+Size: 216022
+MD5sum: 5c8fc7807c6e763fed13ab0a7155c266
+Description: Debian package checker
+ Lintian dissects Debian packages and reports bugs and policy
+ violations. It contains automated checks for many aspects of Debian
+ policy as well as some checks for common errors.
+ .
+ It uses an archive directory, called laboratory, in which it stores
+ information about the packages it examines. It can keep this
+ information between multiple invocations in order to avoid repeating
+ expensive data-collection operations. This also possible to check the
+ complete Debian archive for bugs, in a reasonable time.
+ .
+ This package is useful for all people who want to check Debian
+ packages for compliance with Debian policy. Every Debian maintainer
+ should check packages with this tool before uploading them to the
+ archive.
+ .
+ This version of Lintian is calibrated for policy version 3.6.1.
+
+Package: host
+Priority: extra
+Section: net
+Installed-Size: 160
+Maintainer: Thomas Seyrat <tomasera@debian.org>
+Architecture: i386
+Version: 20000331-9
+Replaces: dnsutils (<< 1:9.0.0)
+Depends: libc6 (>= 2.3.1-1)
+Conflicts: dnsutils (<< 1:9.0.0)
+Filename: pool/main/h/host/host_20000331-9_i386.deb
+Size: 69994
+MD5sum: 47564d59c3b47cc2c13e707a2889d813
+Description: utility for querying DNS servers
+ 'host' is a utility, similar to 'nslookup' (deprecated) or 'dig',
+ used to query DNS servers for domain names and zones.
+ .
+ This package provides the original version of 'host', originally
+ in the package 'dnsutils'. BIND9 provides a similar utility, in
+ 'bind9-host'.
+
+Package: kghostview
+Priority: optional
+Section: graphics
+Installed-Size: 708
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdegraphics
+Version: 4:3.3.0-1.1
+Provides: postscript-viewer, pdf-viewer
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), gs
+Suggests: khelpcenter
+Filename: pool/main/k/kdegraphics/kghostview_3.3.0-1.1_i386.deb
+Size: 217942
+MD5sum: cdd8abd0b507fa36f7e32cf151ef712c
+Description: PostScript viewer for KDE
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KGhostview is the PostScript viewer for the K Desktop Environment. It is a
+ port of Tim Theisen's Ghostview program which is used to view documents
+ prepared in Adobe's PostScript page description language. PostScript is the
+ major page description language for printing on UNIX systems and this
+ application is used to preview material intended for printing or for reading
+ documents online.
+ .
+ This package is part of the official KDE graphics module.
+
+Package: libncursesw5
+Priority: standard
+Section: libs
+Installed-Size: 532
+Maintainer: Daniel Jacobowitz <ncurses-maint@debian.org>
+Architecture: i386
+Source: ncurses
+Version: 5.4-4
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/n/ncurses/libncursesw5_5.4-4_i386.deb
+Size: 287474
+MD5sum: 2b240c897ee0c885400d2bd44c068fa2
+Description: Shared libraries for terminal handling (wide character support)
+ This package contains the shared libraries necessary to run programs
+ compiled with ncursesw, which includes support for wide characters.
+
+Package: lprng
+Priority: extra
+Section: net
+Installed-Size: 4136
+Maintainer: Craig Small <csmall@debian.org>
+Architecture: i386
+Version: 3.8.27-1
+Replaces: lpr
+Provides: lpr
+Depends: debconf, libc6 (>= 2.3.2.ds1-4), libcomerr2 (>= 1.33-3), libkrb53 (>= 1.3.2), libssl0.9.7
+Suggests: magicfilter, lprng-doc
+Conflicts: lpr, apsfilter (<< 4.9.1-10), suidmanager (<< 0.50), cupsys-bsd
+Filename: pool/main/l/lprng/lprng_3.8.27-1_i386.deb
+Size: 1791440
+MD5sum: c6ccd4253a2c2ba97cb4f71d6ac81325
+Description: lpr/lpd printer spooling system
+ The LPRng software is an enhanced, extended, and portable version
+ of the Berkeley LPR software (the standards UNIX printer spooler)
+ You can use this for local and remote printers.
+
+Package: libxmu6
+Priority: optional
+Section: libs
+Installed-Size: 392
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0)
+Conflicts: xlibs (<< 4.3.0)
+Filename: pool/main/x/xfree86/libxmu6_4.3.0.dfsg.1-7_i386.deb
+Size: 193742
+MD5sum: 41dedee9ddfca77214a4fbe9ac9080d0
+Description: X Window System miscellaneous utility library
+ libXmu contains a set of miscellaneous utility functions useful to X Window
+ System client programmers.
+
+Package: efax
+Priority: optional
+Section: comm
+Installed-Size: 304
+Maintainer: Filippo Panessa <fpanessa@aliceposta.it>
+Architecture: i386
+Version: 1:0.9a-14
+Depends: libc6 (>= 2.3.2.ds1-4), libpaperg | libpaper-utils, debconf (>= 0.2.0), make
+Suggests: gs, xloadimage | imagemagick | mgetty-viewfax
+Filename: pool/main/e/efax/efax_0.9a-14_i386.deb
+Size: 113446
+MD5sum: 8613fa65c556a75eb0f27b0f6299f309
+Description: Programs to send and receive fax messages
+ efax is a small ANSI C/POSIX program that provides the data transport
+ function for fax applications using any Class 1 or Class 2 fax modem.
+ Another program, efix, converts between fax, text, bit-map and gray-scale
+ formats. fax, a shell script, provides a simple user interface to the efax
+ and efix programs. It allows you to send text or Postscript files as faxes
+ and receive, print or preview received faxes.
+ .
+ The ghostscript package is needed to fax Postscript files, and a image
+ viewing program as xloadimage is need to view incoming faxes.
+ .
+ Note that you probably have to adapt /etc/efax.rc to your needs.
+
+Package: ksysguard
+Priority: optional
+Section: utils
+Installed-Size: 1368
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0), kdebase-doc (<< 4:3.0.0), kpm (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), ksysguardd (= 4:3.3.0-1)
+Suggests: khelpcenter
+Conflicts: kpm (<< 4:3.0.0)
+Filename: pool/main/k/kdebase/ksysguard_3.3.0-1_i386.deb
+Size: 477574
+MD5sum: 1b0065f5281bb625d5adfa2b3c364b50
+Description: KDE System Guard
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KDE System Guard allows you to monitor various statistics about your
+ computer.
+ .
+ This package is part of the official KDE base module.
+
+Package: magicfilter
+Priority: optional
+Section: text
+Installed-Size: 724
+Maintainer: David Frey <dfrey@debian.org>
+Architecture: i386
+Version: 1.2-58
+Depends: libc6 (>= 2.3.2.ds1-4), libpaperg, enscript
+Recommends: lpr | lprng, gs, bzip2, gzip (>= 1.2.4-33), xpdf-utils
+Suggests: dvips, netpbm, libjpeg-progs | libjpeg-gif, libtiff-tools, groff, tetex-bin, transfig, recode, djtools
+Conflicts: apsfilter, printfilters-ppd
+Filename: pool/main/m/magicfilter/magicfilter_1.2-58_i386.deb
+Size: 44040
+MD5sum: 7516aa3a0d0527070b468945e0deb49b
+Description: automatic printer filter
+ Magicfilter is a customizable, extensible automatic printer filter.
+ It uses its own magic database (a la file(1)) to decide how to print
+ out a given print job.
+
+Package: exim4-base
+Priority: important
+Section: mail
+Installed-Size: 1264
+Maintainer: Exim4 Maintainers <pkg-exim4-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Source: exim4
+Version: 4.34-5
+Replaces: exim, exim-tls
+Depends: libc6 (>= 2.3.2.ds1-4), libdb3 (>= 3.2.9-20), cron (>= 3.0pl1-42), debconf (>= 0.5) | debconf-2.0, exim4-config (>= 4.30) | exim4-config-2, adduser, passwd (>= 1:4.0.3-9) | passwd (<< 1:4.0.3-1), netbase
+Suggests: mail-reader, eximon4, exim4-doc-html | exim4-doc-info
+Conflicts: exim, exim-tls, exim4-daemon-light (<< 4.34), exim4-daemon-heavy (<< 4.34), exim4-daemon-custom (<< 4.34)
+Filename: pool/main/e/exim4/exim4-base_4.34-5_i386.deb
+Size: 784228
+MD5sum: d804eb3d91cf95597414370cb1fcd46b
+Description: EXperimental Internal Mailer -- a Mail Transport Agent
+ This MTA is rather easier to configure than smail or sendmail.
+ It is a drop-in replacement for sendmail/mailq/rsmtp.
+ Advanced features include the ability to reject connections from
+ known spam sites, and an extremely efficient queue processing
+ algorithm.
+ .
+ This package provides the support files, you need an additional package
+ containing the main executable to make Exim work. The available packages
+ are:
+ .
+ exim4-daemon-light
+ exim4-daemon-heavy
+ exim4-daemon-custom
+ .
+ Exim comes with very extensive documentation in
+ /usr/share/doc/exim4-base/spec.txt.gz.
+
+Package: libmikmod2
+Priority: optional
+Section: libs
+Installed-Size: 316
+Maintainer: Ingo Saitz <ingo@debian.org>
+Architecture: i386
+Source: libmikmod (3.1.11-5)
+Version: 3.1.11-a-5
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/libm/libmikmod/libmikmod2_3.1.11-a-5_i386.deb
+Size: 123358
+MD5sum: 9f5789836e35dd06e13004e13b1ec455
+Description: A portable sound library
+ This library is capable of playing samples as well as module
+ files and was originally written by Jean-Paul Mikkers (MikMak) for DOS. It has
+ subsequently been hacked by many hands and now runs on many Unix flavours.
+ It uses the OSS /dev/dsp driver including in all recent kernels for output,
+ as well as ALSA and EsounD, and will also write wav files.
+ .
+ Supported file formats include mod, stm, s3m, mtm, xm, and it.
+
+Package: libcupsys2
+Priority: optional
+Section: libs
+Installed-Size: 20
+Maintainer: Kenshi Muto <kmuto@debian.org>
+Architecture: all
+Source: cupsys
+Version: 1.1.20final+rc1-5
+Depends: libcupsys2-gnutls10
+Filename: pool/main/c/cupsys/libcupsys2_1.1.20final+rc1-5_all.deb
+Size: 970
+MD5sum: 166bb7ce7a0e21291fb59ad32926d408
+Description: Common UNIX Printing System(tm) - dummy libs for transition
+ The Common UNIX Printing System (or CUPS(tm)) is a printing system and
+ general replacement for lpd and the like. It supports the Internet
+ Printing Protocol (IPP), and has its own filtering driver model for
+ handling various document types.
+ .
+ This package is for transition to libcupsys2-gnutls10.
+ .
+ The terms "Common UNIX Printing System" and "CUPS" are trademarks of
+ Easy Software Products (www.easysw.com), and refer to the original
+ source packages from which these packages are made.
+
+Package: fontconfig
+Priority: optional
+Section: utils
+Installed-Size: 160
+Maintainer: Josselin Mouette <joss@debian.org>
+Architecture: i386
+Version: 2.2.3-1
+Depends: libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), debconf (>= 0.5) | debconf-2.0, defoma (>= 0.7.0), ucf (>= 0.29), ttf-bitstream-vera | ttf-freefont | gsfonts-x11 | msttcorefonts
+Conflicts: libfontconfig1-dev (<< 2.2.2-1)
+Filename: pool/main/f/fontconfig/fontconfig_2.2.3-1_i386.deb
+Size: 59912
+MD5sum: 0cf15b55a71a87bc1168a6c1970e65fc
+Description: generic font configuration library
+ Fontconfig is a font configuration and customization library, which
+ does not depend on the X Window System. It is designed to locate
+ fonts within the system and select them according to requirements
+ specified by applications.
+ .
+ Fontconfig is not a rasterization library, nor does it impose a
+ particular rasterization library on the application. The X-specific
+ library 'Xft' uses fontconfig along with freetype to specify and
+ rasterize fonts.
+ .
+ This package contains a program to maintain the fontconfig cache
+ (fc-cache), and a sample program to list installed fonts (fc-list).
+
+Package: asclock
+Priority: optional
+Section: x11
+Installed-Size: 88
+Maintainer: Marcelo E. Magallon <mmagallo@debian.org>
+Architecture: i386
+Version: 2.0.12-7
+Replaces: gnome-panel-data
+Depends: libc6 (>= 2.3.1-1), xlibs (>> 4.1.0), base-files (>= 2.0.3), asclock-themes
+Suggests: wmaker | afterstep
+Conflicts: wmaker (<< 0.15.0), afterstep (<= 1.4.5.3-1)
+Filename: pool/main/a/asclock/asclock_2.0.12-7_i386.deb
+Size: 24452
+MD5sum: c5571bf475359630f60df5d26db4408a
+Description: A clock designed with the NeXTStep look
+ This little application displays the time of the day (digital, either
+ 12 or 24 hour format), and the date. It provides three alternatives:
+ one suitable for low color systems, one with "real" NeXTStep colors,
+ and the third one is somewhat in between.
+
+Package: vera
+Priority: optional
+Section: text
+Installed-Size: 224
+Maintainer: Robert D. Hilliard <hilliard@debian.org>
+Architecture: all
+Version: 1.12-1
+Depends: info | info-browser
+Filename: pool/main/v/vera/vera_1.12-1_all.deb
+Size: 203142
+MD5sum: 22fd2450bbefab60212f1e48c499117d
+Description: List of computer acronyms
+ This is GNU version 1.12 of V.E.R.A., a list dealing with
+ computational acronyms. It comes as one info file.
+
+Package: balsa
+Priority: optional
+Section: gnome
+Installed-Size: 5496
+Maintainer: Andrew Lau <netsnipe@users.sourceforge.net>
+Architecture: i386
+Version: 2.2.4-1
+Provides: mail-reader
+Depends: libart-2.0-2 (>= 2.3.16), libaspell15 (>= 0.50.5), libatk1.0-0 (>= 1.6.0), libaudiofile0 (>= 0.2.3-4), libbonobo2-0 (>= 2.6.2), libbonoboui2-0 (>= 2.5.4), libc6 (>= 2.3.2.ds1-4), libcomerr2 (>= 1.33-3), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libesmtp5 (>= 0.8.8), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgail-common (>= 1.4.1), libgail17 (>= 1.4.1), libgconf2-4 (>= 2.6.3), libgcrypt11, libglade2-0 (>= 1:2.3.6), libglib2.0-0 (>= 2.4.6), libgmime2.1, libgnome-keyring0 (>= 0.2.1), libgnome2-0 (>= 2.6.1.1), libgnomecanvas2-0 (>= 2.6.0), libgnomeprint2.2-0 (>= 2.6.1-6), libgnomeprintui2.2-0 (>= 2.6.0), libgnomeui-0 (>= 2.6.0), libgnomevfs2-0 (>= 2.6.0), libgnutls11 (>= 1.0.16), libgpg-error0 (>= 1.0), libgpgme11 (>= 0.4.5), libgtk2.0-0 (>= 2.4.4), libgtkhtml3.1-11 (>= 3.1.20), libice6 | xlibs (>> 4.1.0), libjpeg62, libkrb53 (>= 1.3.2), libldap2 (>= 2.1.17-1), libltdl3 (>= 1.5.2-2), liborbit2 (>= 1:2.10.0), libpango1.0-0 (>= 1.4.1), libpcre3 (>= 4.5), libpopt0 (>= 1.7), libsm6 | xlibs (>> 4.1.0), libsqlite0 (>= 2.8.15), libssl0.9.7, libtasn1-2 (>= 0.2.8), libx11-6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1)
+Suggests: aspell | ispell, ca-certificates
+Filename: pool/main/b/balsa/balsa_2.2.4-1_i386.deb
+Size: 2118890
+MD5sum: 8de72d254dce99359c6e083e3d1cef51
+Description: An e-mail client for GNOME
+ Balsa is a highly configurable and robust mail client for the GNOME desktop.
+ It supports both POP3 and IMAP servers as well as the mbox, maildir and mh
+ local mailbox formats. Balsa also supports SMTP and/or the use of a local MTA
+ such as Sendmail.
+ .
+ Some of Balsa's other features include:
+ * Allowing nested mailboxes
+ * Printing
+ * Spell Checking
+ * Multi-threaded mail retrieval (optional)
+ * MIME support (view images inline, save parts)
+ * GPE address book support
+ * Multiple character sets for composing and reading messages
+ .
+ Support for GnuPG/PGP encryption, LDAP, Kerberos (GSS) and SSL has been
+ enabled in this package.
+ .
+ Homepage: http://balsa.gnome.org/
+
+Package: tagcoll
+Priority: optional
+Section: misc
+Installed-Size: 404
+Maintainer: Enrico Zini <enrico@debian.org>
+Architecture: i386
+Version: 0.99-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1), libtagcoll0 (>= 0.99)
+Filename: pool/main/t/tagcoll/tagcoll_0.99-1_i386.deb
+Size: 146896
+MD5sum: 5696ed8c50322f7b32643bd9e198191b
+Description: Commandline tool to perform operations on tagged collections
+ tagcoll takes a collection of items categorized with multiple tags and
+ performs various kinds of operations on them:
+ .
+ * organize the collection in an intuitively navigable hierarchy;
+ * discover and show implicit hierarchical relationships between
+ tags;
+ * apply various transformations to the collection
+ * produce a special patch file with the differencies between two collections.
+ Such patch files are specific to tagged collections, and can be applied and
+ merged more freely than normal diff output;
+ * apply a previously generated patch file to a collection.
+ .
+ tagcoll has been written with the purpose of studying tagged collections and
+ experiment with tagged collection algorithms.
+
+Package: smbclient
+Priority: optional
+Section: net
+Installed-Size: 5988
+Maintainer: Eloy A. Paris <peloy@debian.org>
+Architecture: i386
+Source: samba
+Version: 3.0.6-4
+Replaces: samba (<< 2.999+3.0.alpha21-4)
+Provides: samba-client
+Depends: samba-common (= 3.0.6-4), libc6 (>= 2.3.2.ds1-4), libcomerr2 (>= 1.33-3), libkrb53 (>= 1.3.2), libldap2 (>= 2.1.17-1), libncurses5 (>= 5.4-1), libpopt0 (>= 1.7), libreadline4 (>= 4.3-1)
+Suggests: smbfs
+Filename: pool/main/s/samba/smbclient_3.0.6-4_i386.deb
+Size: 2410304
+MD5sum: fa66e6b95d08fd47779523b0db00e08f
+Description: a LanManager-like simple client for Unix
+ The Samba software suite is a collection of programs that
+ implements the SMB protocol for unix systems, allowing you to serve
+ files and printers to Windows, NT, OS/2 and DOS clients. This protocol
+ is sometimes also referred to as the LanManager or NetBIOS protocol.
+ .
+ This package contains some client components of the Samba suite. In
+ particular it includes the command line utilities smbclient, smbtar,
+ and smbspool. If you want to mount shares exported from Microsoft
+ Windows machines or a Samba server you must install the smbfs package.
+Task: file-server, print-server
+
+Package: gpart
+Priority: optional
+Section: admin
+Installed-Size: 69
+Maintainer: David Coe <davidc@debian.org>
+Architecture: i386
+Version: 0.1h-4
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/g/gpart/gpart_0.1h-4_i386.deb
+Size: 36722
+MD5sum: 3810d6648266ef3b58e97b99e9b89dd8
+Description: Guess PC disk partition table, find lost partitions
+ Gpart is a tool which tries to guess the primary partition table of a
+ PC-type disk in case the primary partition table in sector 0 is
+ damaged, incorrect or deleted.
+ .
+ It is also good at finding and listing the types, locations, and
+ sizes of inadvertently-deleted partitions, both primary and logical.
+ It gives you the information you need to manually re-create them
+ (using fdisk, cfdisk, sfdisk, etc.).
+ .
+ The guessed table can also be written to a file or (if you firmly
+ believe the guessed table is entirely correct) directly to a disk
+ device.
+ .
+ Supported (guessable) filesystem or partition types:
+ .
+ * BeOS filesystem type.
+ * FreeBSD/NetBSD/386BSD disklabel sub-partitioning
+ scheme used on Intel platforms.
+ * Linux second extended filesystem.
+ * MS-DOS FAT12/16/32 "filesystems".
+ * IBM OS/2 High Performance filesystem.
+ * Linux LVM physical volumes (LVM by Heinz Mauelshagen).
+ * Linux swap partitions (versions 0 and 1).
+ * The Minix operating system filesystem type.
+ * MS Windows NT/2000 filesystem.
+ * QNX 4.x filesystem.
+ * The Reiser filesystem (version 3.5.X, X > 11).
+ * Sun Solaris on Intel platforms uses a sub-partitioning
+ scheme on PC hard disks similar to the BSD disklabels.
+ * Silicon Graphics' journalling filesystem for Linux.
+ .
+ Other types may be added relatively easily, as separately compiled modules.
+
+Package: libfreetype6
+Priority: optional
+Section: libs
+Installed-Size: 692
+Maintainer: Anthony Fok <foka@debian.org>
+Architecture: i386
+Source: freetype
+Version: 2.1.7-2.2
+Replaces: freetype0, freetype1
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1)
+Suggests: libfreetype6-dev
+Conflicts: freetype, xpdf-reader (<< 1.00-4)
+Filename: pool/main/f/freetype/libfreetype6_2.1.7-2.2_i386.deb
+Size: 363384
+MD5sum: a9572bc441226397bf06f7a7037af1d9
+Description: FreeType 2 font engine, shared library files
+ The FreeType project is a team of volunteers who develop free,
+ portable and high-quality software solutions for digital typography.
+ They specifically target embedded systems and focus on bringing small,
+ efficient and ubiquitous products.
+ .
+ The FreeType 2 library is their new software font engine. It has been
+ designed to provide the following important features:
+ * A universal and simple API to manage font files
+ * Support for several font formats through loadable modules
+ * High-quality anti-aliasing
+ * High portability & performance
+ .
+ Supported font formats include:
+ * TrueType files (.ttf) and collections (.ttc)
+ * Type 1 font files both in ASCII (.pfa) or binary (.pfb) format
+ * Type 1 Multiple Master fonts. The FreeType 2 API also provides
+ routines to manage design instances easily
+ * Type 1 CID-keyed fonts
+ * OpenType/CFF (.otf) fonts
+ * CFF/Type 2 fonts
+ * Adobe CEF fonts (.cef), used to embed fonts in SVG documents with
+ the Adobe SVG viewer plugin.
+ * Windows FNT/FON bitmap fonts
+ .
+ This package contains the files needed to run programs that use the
+ FreeType 2 library.
+ .
+ Home Page: http://www.freetype.org/
+ Authors: David Turner <david.turner@freetype.org>
+ Robert Wilhelm <robert.wilhelm@freetype.org>
+ Werner Lemberg <werner.lemberg@freetype.org>
+
+Package: sudo
+Priority: optional
+Section: admin
+Installed-Size: 360
+Maintainer: Bdale Garbee <bdale@gag.com>
+Architecture: i386
+Version: 1.6.7p5-2
+Depends: libc6 (>= 2.3.2.ds1-4), libpam0g (>= 0.76), libpam-modules
+Filename: pool/main/s/sudo/sudo_1.6.7p5-2_i386.deb
+Size: 146528
+MD5sum: 9b8473bb86e3242c3369c4af5f4a5dc5
+Description: Provide limited super user privileges to specific users
+ Sudo is a program designed to allow a sysadmin to give limited root
+ privileges to users and log root activity. The basic philosophy is to give
+ as few privileges as possible but still allow people to get their work done.
+
+Package: vrms
+Priority: optional
+Section: admin
+Installed-Size: 96
+Maintainer: Stephen M Moraco <stephen@debian.org>
+Architecture: all
+Version: 1.9
+Filename: pool/main/v/vrms/vrms_1.9_all.deb
+Size: 8712
+MD5sum: baaf02bb1643a3484bf0c12a80a4c543
+Description: Virtual Richard M. Stallman
+ The vrms program will analyze the set of currently-installed packages on a
+ Debian GNU/Linux system, and report all of the packages from the non-free
+ tree which are currently installed.
+ .
+ Future versions of vrms will include an option to also display text from the
+ public writings of RMS and others that explain why use of each of the
+ installed non-free packages might cause moral issues for some in the Free
+ Software community. This functionality is not yet included.
+
+Package: xscreensaver
+Priority: optional
+Section: x11
+Installed-Size: 9148
+Maintainer: Karl Ramm <kcr@debian.org>
+Architecture: i386
+Version: 4.16-1
+Replaces: xscreensaver-gnome (<< 4.09-2), xscreensaver-nognome (<< 4.09-2)
+Provides: xscreensaver-gnome, xscreensaver-nognome
+Depends: libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libglade2-0 (>= 1:2.3.6), libglib2.0-0 (>= 2.4.1), libgtk2.0-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), libjpeg62, libpam0g (>= 0.76), libpango1.0-0 (>= 1.4.0), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.10), libxmu6 | xlibs (>> 4.1.0), libxrandr2 | xlibs (>> 4.3.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Recommends: xli | xloadimage, netpbm, libjpeg-progs, perl5, wordlist
+Suggests: xdaliclock, xscreensaver-gl, fortune, www-browser, qcam | streamer
+Conflicts: xscreensaver-gnome (<< 4.09-2), xscreensaver-nognome (<< 4.09-2), gnome-control-center (<< 1:2)
+Filename: pool/main/x/xscreensaver/xscreensaver_4.16-1_i386.deb
+Size: 3479606
+MD5sum: 57309289b902fa024503952421da1eeb
+Description: Automatic screensaver for X
+ The purpose of xscreensaver is to display pretty pictures on your screen
+ when it is not in use, in keeping with the philosophy that unattended
+ monitors should always be doing something interesting, just like they do
+ in the movies.
+ .
+ The benefit that this program has over the combination of the xlock and
+ xautolock programs is the ease with which new graphics hacks can be
+ installed: you don't need to recompile this program to add a new display
+ mode, you just change some resource settings. Any program which can be
+ invoked in such a way that it draws on the root window of the screen can
+ now be used as a screensaver without modification. The programs that
+ are being run as screensavers don't need to have any special knowledge
+ about what it means to be a screensaver.
+Task: desktop
+
+Package: hermes1
+Priority: optional
+Section: libs
+Installed-Size: 184
+Maintainer: David Schleef <ds@schleef.org>
+Architecture: i386
+Version: 1.3.3+really1.3.2-2
+Replaces: hermes1-dev (<= 1.3.1)
+Depends: libc6 (>= 2.3.2-1)
+Conflicts: hermes1-dev (<= 1.3.1)
+Filename: pool/main/h/hermes1/hermes1_1.3.3+really1.3.2-2_i386.deb
+Size: 47590
+MD5sum: e6ac5980d04599be1874fdc5de98ee28
+Description: The Hermes pixel-format library
+ Hermes is a library that does the dirty work of a graphics library
+ or application that nobody else wants to do, and it does it fast
+ because the effort is concentrated on just that. The thing nobody
+ wants to do is conversion between pixel formats - between all pixel
+ formats that is, not between any two. There are handwritten assembler
+ routines in Hermes that should make anything look fast.
+ .
+ An application or library that uses Hermes will for example be able to
+ render into one buffer and convert it to whatever pixel format is available
+ on the target platform at the time.
+ .
+ Other services provided by Hermes include palette handling including
+ caching of lookup tables, and surface clearing to a specific colour value.
+ .
+ See http://www.clanlib.org/ for more info
+
+Package: libxv1
+Priority: optional
+Section: libs
+Installed-Size: 316
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Depends: libc6 (>= 2.3.2.ds1-4), libxext6 | xlibs (>> 4.1.0)
+Filename: pool/main/x/xfree86/libxv1_4.3.0.dfsg.1-7_i386.deb
+Size: 156418
+MD5sum: b6f74b04377aca16a11293e8a5b22a14
+Description: X Window System video extension library
+ libXv provides an X Window System client interface to XVideo, the real-time
+ video extension to the X protocol.
+
+Package: libgcrypt11
+Priority: optional
+Section: libs
+Installed-Size: 396
+Maintainer: Matthias Urlichs <smurf@debian.org>
+Architecture: i386
+Version: 1.2.0-6
+Depends: libc6 (>= 2.3.2.ds1-4), libgpg-error0 (>= 0.7)
+Filename: pool/main/libg/libgcrypt11/libgcrypt11_1.2.0-6_i386.deb
+Size: 179032
+MD5sum: 05c21ed41ed2def855532a0d7b614acf
+Description: LGPL Crypto library - runtime library
+ libgcrypt contains cryptographic functions. Most important free
+ ciphers have been implemented: arcfour, blowfish, cast5, des,
+ 3DES, elgamal, rijndael, RSA, twofish; as well as hash algorithms:
+ DSA, MD5, RMD160, SHA1, tiger.
+
+Package: info
+Priority: important
+Section: doc
+Installed-Size: 344
+Maintainer: Josip Rodin <joy-packages@debian.org>
+Architecture: i386
+Source: texinfo
+Version: 4.7-2.1
+Provides: info-browser
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1)
+Conflicts: xemacs-support
+Filename: pool/main/t/texinfo/info_4.7-2.1_i386.deb
+Size: 179450
+MD5sum: a578f9387ce119c1a42a40720bff270b
+Description: Standalone GNU Info documentation browser
+ The Info file format is an easily-parsable representation for online
+ documents. This program allows you to view Info documents, like the
+ ones stored in /usr/share/info.
+ .
+ Much of the software in Debian comes with its online documentation in
+ the form of Info files, so it is most likely you will want to install it.
+
+Package: python
+Priority: standard
+Section: python
+Installed-Size: 452
+Maintainer: Matthias Klose <doko@debian.org>
+Architecture: all
+Source: python-defaults
+Version: 2.3.4-4
+Replaces: python2.3 (<= 2.3.2-6), python-xmlbase
+Provides: python-email, python-xmlbase
+Depends: python2.3 (>= 2.3.4-8)
+Suggests: python-doc, python-tk
+Conflicts: python2.3 (<= 2.3.2-6), python2.1 (<= 2.1.2), python-xmlbase, python-csv, python-bz2
+Filename: pool/main/p/python-defaults/python_2.3.4-4_all.deb
+Size: 125364
+MD5sum: da4d81eec3cb0c622064c2104608ed2c
+Description: An interactive high-level object-oriented language (default version)
+ Python, the high-level, interactive object oriented language,
+ includes an extensive class library with lots of goodies for
+ network programming, system administration, sounds and graphics.
+ .
+ This package is a dependency package, which depends on Debian's default
+ Python version (currently v2.3).
+
+Package: libexpat1
+Priority: optional
+Section: libs
+Installed-Size: 180
+Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs@lists.alioth.debian.org>
+Architecture: i386
+Source: expat
+Version: 1.95.6-8
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/e/expat/libexpat1_1.95.6-8_i386.deb
+Size: 57046
+MD5sum: de4cac966d3bb13b38e1e587246986b9
+Description: XML parsing C library - runtime library
+ This package contains the runtime, shared library of expat, the C
+ library for parsing XML.
+
+Package: transfig
+Priority: optional
+Section: graphics
+Installed-Size: 944
+Maintainer: Roland Rosenfeld <roland@debian.org>
+Architecture: i386
+Version: 1:3.2.5-alpha5-1
+Depends: libc6 (>= 2.3.2.ds1-4), libpng12-0 (>= 1.2.5.0-4), libx11-6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Recommends: netpbm (>= 2:9.10), gs
+Suggests: xfig, netpbm-nonfree (>= 2:9.10)
+Filename: pool/main/t/transfig/transfig_3.2.5-alpha5-1_i386.deb
+Size: 334098
+MD5sum: f61479daebc9f7bf3753be7f963c3b9b
+Description: Utilities for converting XFig figure files
+ This packages contains utilities (mainly fig2dev) to handle XFig
+ (Facility for Interactive Generation of figures) files.
+ .
+ It can convert them to box, cgm, epic, eepic, eepicemu, emf, eps,
+ gif, ibmgl, jpeg, latex, map (HTML image map), mf (MetaFont), mp
+ (MetaPost), mmp (Multi-Meta- Post), pcx, pdf, pdftex, pdftex_t, pic,
+ pictex, png, ppm, ps, pstex, pstex_t, ptk (Perl/tk), sld (AutoCad
+ slide format), textyl, tiff, tk (tcl/tk), tpic, xbm and xpm.
+ .
+ Note: transfig requires netpbm-nonfree be installed for gif support.
+
+Package: wmaker
+Priority: optional
+Section: x11
+Installed-Size: 5592
+Maintainer: Marcelo E. Magallon <mmagallo@debian.org>
+Architecture: i386
+Version: 0.80.2-0.4
+Replaces: wmaker-superfluous, wmaker-traditional, wmaker-sound, wmaker-gnome, wmaker-kde, wmaker-plain
+Provides: x-window-manager, wmaker-plain, wmaker-kde, wmaker-gnome
+Depends: libc6 (>= 2.3.2.ds1-4), libwraster2 (>= 0.80.1-5), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), cpp, debianutils (>= 1.13.1)
+Suggests: wmaker-data (>= 0.7), menu (>= 1.5), wmakerconf-data (>= 0.62.0), wmaker-usersguide, asclock
+Conflicts: wmaker-superfluous, wmaker-traditional, wmaker-sound, wmsound (<= 0.9.3-1), wmaker-gnome, wmaker-kde, wmaker-plain, menu (<= 2.1.9)
+Filename: pool/main/w/wmaker/wmaker_0.80.2-0.4_i386.deb
+Size: 2127106
+MD5sum: 9540885d3dd9794cb8b6da1cf0428f14
+Description: NeXTSTEP-like window manager for X
+ Written by Alfredo Kojima almost from scratch, resembles the NeXTStep look
+ very closely, and it's now an official GNU project. Window Maker is not
+ overloaded with features, and it's easier to configure than most other window
+ managers. Its final goal is to produce a window manager that doesn't require
+ editing of configuration files. Window Maker is fast and doesn't require tons
+ of memory to run.
+ .
+ Homepage: <http://www.windowmaker.org/>
+
+Package: imlib1
+Priority: optional
+Section: oldlibs
+Installed-Size: 240
+Maintainer: Steve M. Robbins <smr@debian.org>
+Architecture: i386
+Source: imlib+png2
+Version: 1.9.14-16
+Replaces: imlib-nonfree1, libimlib1, libimlib-nonfree1
+Provides: imlib, libimlib1
+Depends: imlib-base (>= 1.9.14-1), libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libjpeg62, libpng10-0 (>= 1.0.15-4), libsm6 | xlibs (>> 4.1.0), libtiff4, libungif4g (>= 4.1.3), libxext6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Suggests: imlib-progs
+Conflicts: imlib-nonfree1, libimlib1, libimlib-nonfree1
+Filename: pool/main/i/imlib+png2/imlib1_1.9.14-16_i386.deb
+Size: 76814
+MD5sum: 29700603ea4f966cda86755df9513ee7
+Description: imaging library for X and X11 (using libpng2)
+ Imlib is a low-level Xlib interface for X programmers. It allows easier
+ access to many graphics formats and can write to them as well.
+ .
+ This version is linked to libpng2.
+
+Package: buffy
+Priority: optional
+Section: misc
+Installed-Size: 284
+Maintainer: Enrico Zini <enrico@debian.org>
+Architecture: i386
+Version: 0.3-1
+Depends: libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.1), libglibmm-2.4-1, libgtk2.0-0 (>= 2.4.4), libgtkmm-2.4-1, libpango1.0-0 (>= 1.4.1), libsigc++-2.0-0 (>= 2.0.2), libstdc++5 (>= 1:3.3.4-1), libxml++1.0, libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1)
+Filename: pool/main/b/buffy/buffy_0.3-1_i386.deb
+Size: 101130
+MD5sum: 1b3704a1399bf1057aac3f24eadad332
+Description: Heavy duty browser for mail folders
+ Buffy is a program that displays a compact summary of your mail folders, and
+ allows to invoke a command (usually a mail reader) on them. It is written
+ with the intent of being a handy everyday tool for people handling large
+ volumes of mail. For mutt users, this can be a nice front-end to supplement
+ the simple built-in folder browser when one has many folders to keep track of.
+ .
+ Buffy tries hard to work out of the box: it looks for mail folders in sensible
+ places and comes with reasonable defaults.
+ .
+ The program is functional but still very young, and only Maildir folders are
+ supported at the moment.
+
+Package: whois
+Priority: standard
+Section: net
+Installed-Size: 216
+Maintainer: Marco d'Itri <md@linux.it>
+Architecture: i386
+Version: 4.6.22
+Replaces: bsdmainutils (<= 4.5.1), bsdutils (<< 3.0-0)
+Depends: libc6 (>= 2.3.2.ds1-4), libidn11
+Filename: pool/main/w/whois/whois_4.6.22_i386.deb
+Size: 40528
+MD5sum: 81bc3e25230d28f54b6890527aeffe87
+Description: The GNU whois client
+ This is a new whois (RFC 954) client rewritten from scratch.
+ It is inspired from and compatible with the usual BSD and RIPE whois(1)
+ programs.
+ It is intelligent and can automatically select the appropriate whois
+ server for most queries.
+ .
+ The package also contains mkpasswd, a simple front end to crypt(3).
+
+Package: adduser
+Priority: important
+Section: base
+Installed-Size: 588
+Maintainer: Debian Adduser Developers <adduser-devel@lists.alioth.debian.org>
+Architecture: all
+Version: 3.59
+Depends: perl-base (>= 5.6.0), passwd (>= 961025), debconf
+Suggests: liblocale-gettext-perl, perl-modules
+Filename: pool/main/a/adduser/adduser_3.59_all.deb
+Size: 93882
+MD5sum: 2b7230646509945eeaeac0afeedf0f7c
+Description: Add and remove users and groups
+ This package includes the adduser and deluser commands for creating
+ and removing users.
+ .
+ o Adduser can create new users and groups and add existing users to
+ existing groups.
+ o Deluser can remove users and groups and remove users from a given
+ group.
+ .
+ Adding users with adduser is much easier than adding them by hand.
+ Adduser will choose appropriate UID and GID values, create a home
+ directory, copy skeletal user configuration, allow you to set an
+ initial password and the GECOS field.
+ .
+ Deluser can optionally remove and backup the user's home directory
+ and mail spool or all files on the system owned by him.
+ .
+ Optionally a custom script can be executed after each of the commands.
+ .
+ Adduser is maintained on http://alioth.debian.org/projects/adduser/.
+ There is also a development mailing list on
+ http://lists.alioth.debian.org/mailman/listinfo/adduser-devel/.
+
+Package: enscript
+Priority: optional
+Section: text
+Installed-Size: 2304
+Maintainer: Michael Fedrowitz <michaelf@debian.org>
+Architecture: i386
+Version: 1.6.4-4
+Replaces: genscript
+Depends: libc6 (>= 2.3.2.ds1-4), libpaper1
+Suggests: gv | ghostview | postscript-viewer
+Conflicts: genscript
+Filename: pool/main/e/enscript/enscript_1.6.4-4_i386.deb
+Size: 472822
+MD5sum: 05382eaa2c96d27a2721d2025013c7e1
+Description: Converts ASCII text to Postscript, HTML, RTF or Pretty-Print
+ Enscript converts ASCII files to PostScript, HTML, RTF or Pretty-Print
+ and stores generated output to a file or sends it directly to the printer.
+
+Package: ispell
+Priority: standard
+Section: text
+Installed-Size: 326
+Maintainer: David Coe <davidc@debian.org>
+Architecture: i386
+Version: 3.1.20.0-4
+Depends: dictionaries-common (>= 0.20), iamerican | ispell-dictionary, libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.3.20030510-1)
+Recommends: wordlist
+Suggests: spell
+Filename: pool/main/i/ispell/ispell_3.1.20.0-4_i386.deb
+Size: 160540
+MD5sum: 37e16fde4a645aa63b9abdd7abb0191e
+Description: International Ispell (an interactive spelling corrector)
+ Ispell corrects spelling in plain text, LaTeX, sgml/html/xml,
+ and nroff files. [x]Emacs and jed have nice interfaces to
+ ispell, and ispell works from many other tools and from the
+ command line as well.
+ .
+ No ispell dictionaries are included in this package; you must install
+ at least one of them ("iamerican" is the default dependency for no
+ good reason); install the "ispell-dictionary" package(s) for the
+ lanuguage(s) you and your users will want to spell-check.
+ .
+ It's a good idea to install "wordlist" package(s) for the same
+ language(s), because they'll be used by ispell's (L)ookup command.
+
+Package: rblcheck
+Priority: extra
+Section: net
+Installed-Size: 128
+Maintainer: Marco d'Itri <md@linux.it>
+Architecture: i386
+Version: 20020316-5
+Replaces: dnsutils (<< 1:9.0.0)
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: dnsutils (<< 1:9.0.0)
+Filename: pool/main/r/rblcheck/rblcheck_20020316-5_i386.deb
+Size: 35558
+MD5sum: 58e76172d423fe37f938290855d99c19
+Description: Tool to Query RBL Servers
+ This program is a very basic interface to DNS Blackhole Lists.
+ The basic idea of the filter is that when someone is blacklisted for
+ email abuse of some sort, a new domain name is resolved of the form
+ "2.0.0.127.domain.name.com", where 2.0.0.127 is the abusive IP address
+ in reverse (for example, 2.0.0.127 would be the IP address 127.0.0.2),
+ and "domain.name.com" is the base domain name of the filtering service.
+
+Package: ifupdown
+Priority: important
+Section: base
+Installed-Size: 244
+Maintainer: Anthony Towns <ajt@debian.org>
+Architecture: i386
+Version: 0.6.4-4.10
+Replaces: netbase (<< 4.00)
+Depends: net-tools, libc6 (>= 2.3.2.ds1-4), debconf (>= 0.5) | debconf-2.0
+Suggests: iproute, dhcp3-client | dhcp-client, ppp
+Conflicts: dhcp-client (= 3.0.1betaRC4-1)
+Filename: pool/main/i/ifupdown/ifupdown_0.6.4-4.10_i386.deb
+Size: 46434
+MD5sum: 5468ed165d0503953af343a0335c9404
+Description: High level tools to configure network interfaces
+ This package provides the tools ifup and ifdown which may be used to
+ configure (or, respectively, deconfigure) network interfaces based on
+ interface definitions in the file /etc/network/interfaces.
+
+Package: g77
+Priority: optional
+Section: devel
+Installed-Size: 8
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-defaults (1.17)
+Version: 4:3.3.4-2
+Provides: fortran-compiler
+Depends: cpp (>= 4:3.3.4-2), gcc (>= 4:3.3.4-2), g77-3.3 (>= 1:3.3.4-1), gcc-3.3 (>= 1:3.3.4-1)
+Suggests: g77-doc
+Filename: pool/main/g/gcc-defaults/g77_3.3.4-2_i386.deb
+Size: 1248
+MD5sum: f6913bc8d13216709da2517aaaa0c23d
+Description: The GNU Fortran 77 compiler
+ This is the GNU g77 Fortran compiler, which compiles Fortran 77 on platforms
+ supported by the gcc compiler. It uses the gcc backend to generate optimized
+ code.
+ .
+ This is a dependency package providing the default GNU Fortran 77 compiler.
+
+Package: g77
+Priority: optional
+Section: devel
+Installed-Size: 8
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-defaults (1.17)
+Version: 4:3.3.4-2+testdata
+Provides: fortran-compiler
+Depends: cpp (>= 4:3.3.4-2), gcc (>= 4:3.3.4-2), g77-3.3 (>= 1:3.3.4-1), gcc-3.3 (>= 1:3.3.4-1)
+Suggests: g77-doc
+Filename: pool/main/g/gcc-defaults/g77_3.3.4-2_i386.deb
+Size: 1248
+MD5sum: f6913bc8d13216709da2517aaaa0c23d
+Description: The GNU Fortran 77 compiler
+ This is the GNU g77 Fortran compiler, which compiles Fortran 77 on platforms
+ supported by the gcc compiler. It uses the gcc backend to generate optimized
+ code.
+ .
+ This is a dependency package providing the default GNU Fortran 77 compiler.
+
+Package: liblcms1
+Priority: optional
+Section: libs
+Installed-Size: 260
+Maintainer: Shiju p. Nair <shiju@infovillage.net>
+Architecture: i386
+Source: lcms
+Version: 1.12-2.1
+Replaces: liblcms
+Provides: liblcms
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: liblcms-utils
+Conflicts: liblcms
+Filename: pool/main/l/lcms/liblcms1_1.12-2.1_i386.deb
+Size: 108656
+MD5sum: a3adba633ea7406857136843a0e87bcb
+Description: Color management library
+ lcms is a standalone CMM engine, which deals with the color management.
+ It implements a fast transformation between ICC profiles. The intention
+ of it is to be portable across several platforms.
+
+Package: libgnome32
+Priority: optional
+Section: oldlibs
+Installed-Size: 156
+Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Source: gnome-libs
+Version: 1.4.2-19
+Depends: gnome-libs-data (= 1.4.2-19), libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libdb3 (>= 3.2.9-20), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libglib1.2 (>= 1.2.0), libpopt0 (>= 1.7), zlib1g (>= 1:1.2.1)
+Conflicts: libgnome0, libgnome31
+Filename: pool/main/g/gnome-libs/libgnome32_1.4.2-19_i386.deb
+Size: 80782
+MD5sum: 3d4f4901da3d45f55286e287fe55f38d
+Description: The GNOME libraries
+ GNOME is a project to build a complete, user-friendly desktop based
+ entirely on free software.
+ .
+ This package contains the shared library for the base GNOME
+ library functions.
+
+Package: libxp6
+Priority: optional
+Section: libs
+Installed-Size: 328
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4), libxext6 | xlibs (>> 4.1.0)
+Conflicts: xlibs (<< 4.3.0)
+Filename: pool/main/x/xfree86/libxp6_4.3.0.dfsg.1-7_i386.deb
+Size: 162636
+MD5sum: 9836f0e9eaeb3bdcb12505370082e9a0
+Description: X Window System printing extension library
+ libXp provides an X Window System client interface to XPRINT, a printing
+ extension to the X protocol.
+
+Package: libgnutls11
+Priority: important
+Section: libs
+Installed-Size: 672
+Maintainer: Matthias Urlichs <smurf@debian.org>
+Architecture: i386
+Source: gnutls11
+Version: 1.0.16-7
+Replaces: gnutls0, gnutls3, gnutls0.4
+Depends: libc6 (>= 2.3.2.ds1-4), libgcrypt11, libgpg-error0 (>= 1.0), liblzo1, libopencdk8 (>= 0.5.5), libtasn1-2 (>= 0.2.8), zlib1g (>= 1:1.2.1), libtasn1-2 (>= 0.2.10)
+Suggests: gnutls-bin
+Conflicts: gnutls0, gnutls0.4
+Filename: pool/main/g/gnutls11/libgnutls11_1.0.16-7_i386.deb
+Size: 299188
+MD5sum: 2316c85745a85f044d8d6723c614070b
+Description: GNU TLS library - runtime library
+ gnutls is a portable library which implements the Transport Layer
+ Security (TLS) 1.0 and Secure Sockets Layer (SSL) 3.0 protocols.
+ .
+ Currently gnutls implements:
+ - the TLS 1.0 and SSL 3.0 protocols, without any US-export
+ controlled algorithms
+ - X509 Public Key Infrastructure (with several limitations).
+ - SRP for TLS authentication.
+ - TLS Extension mechanism
+ .
+ This package contains the runtime libraries.
+
+Package: streamer
+Priority: extra
+Section: graphics
+Installed-Size: 152
+Maintainer: Gerd Knorr <kraxel@debian.org>
+Architecture: i386
+Source: xawtv
+Version: 3.94-1
+Depends: libc6 (>= 2.3.2.ds1-4), libjpeg62, xawtv-plugins (= 3.94-1)
+Suggests: xawtv
+Filename: pool/main/x/xawtv/streamer_3.94-1_i386.deb
+Size: 47504
+MD5sum: 2d476548850a67a5c7f83080c32223fe
+Description: capture tool (images / movies)
+ A tool to capture single/multiple images or
+ record movies from a video4linux device.
+
+Package: libdebtags-dev
+Priority: optional
+Section: libdevel
+Installed-Size: 1560
+Maintainer: Enrico Zini <enrico@debian.org>
+Architecture: i386
+Source: libdebtags
+Version: 0.9.5
+Depends: libdebtags0 (= 0.9.5), libtagcoll-dev (>= 0.99), libapt-pkg-dev
+Recommends: pkg-config
+Filename: pool/main/libd/libdebtags/libdebtags-dev_0.9.5_i386.deb
+Size: 208032
+MD5sum: 7e006f92badb6a05a70205e6092b64ce
+Description: Unified access to Debtags and APT databases (development version)
+ libdebtags provides functionality to search and categorize debian packages
+ using the Debtags and APT databases. Functions provided:
+ .
+ * search packages by normal debian/control fields and package tags
+ * find packages related to a given one
+ * edit debtags package categorization, with undo support
+ * save and submit tag patches to the central tag archive
+ .
+ libdebtags is written with the intent to make it easy and efficient for
+ applications to include debtags support.
+ .
+ Warning: the API has not yet been stabilized and is subject to change in
+ future versions.
+
+Package: emacs21
+Priority: optional
+Section: editors
+Installed-Size: 5844
+Maintainer: Rob Browning <rlb@defaultvalue.org>
+Architecture: i386
+Version: 21.3+1-7
+Replaces: emacs21-nox
+Provides: emacsen, editor, info-browser, mail-reader, news-reader
+Depends: emacs21-bin-common (= 21.3+1-7), libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libjpeg62, libncurses5 (>= 5.4-1), libpng12-0 (>= 1.2.5.0-4), libsm6 | xlibs (>> 4.1.0), libtiff4, libungif4g (>= 4.1.0b1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0), xaw3dg (>= 1.5+E-1), zlib1g (>= 1:1.2.1)
+Conflicts: emacs21-nox, w3-el
+Filename: pool/main/e/emacs21/emacs21_21.3+1-7_i386.deb
+Size: 1999972
+MD5sum: acacfa1c4b3091f3f6dc4fef18d8a700
+Description: The GNU Emacs editor
+ GNU Emacs is the extensible self-documenting text editor.
+
+Package: libkpimidentities1
+Priority: optional
+Section: libs
+Installed-Size: 148
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdepim1 (>= 4:3.3.0), libkleopatra0 (>= 4:3.3.0), libstdc++5 (>= 1:3.3.4-1)
+Filename: pool/main/k/kdepim/libkpimidentities1_3.3.0-2_i386.deb
+Size: 44030
+MD5sum: 2efe0ce46e682a916e183aef0a9ec7e5
+Description: KDE PIM user identity information library
+ This library provides information to KDE programs about user identity,
+ such as email address, organization, etc.
+ .
+ This is the runtime package for programs that use the libkpimidentities
+ library.
+ .
+ This package is part of the official KDE pim module.
+
+Package: dictd
+Priority: optional
+Section: text
+Installed-Size: 396
+Maintainer: Kirk Hilliard <kirk@debian.org>
+Architecture: i386
+Version: 1.9.14-2
+Provides: dict-server
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1), netbase, adduser, dictzip
+Recommends: dict | dict-client
+Suggests: dict-gcide | dict-web1913, dict-wn, dict-jargon, dict-foldoc
+Filename: pool/main/d/dictd/dictd_1.9.14-2_i386.deb
+Size: 119888
+MD5sum: af97cf2539eddbcc46b193c961ab599b
+Description: Dictionary Server
+ dictd is a TCP based server that allows a client to access dictionary
+ definitions from a set of natural language dictionary databases.
+ .
+ Many dictionary databases have been packaged for debian. They are
+ discussed in more detail in the file
+ /usr/doc/dictd/README.Debian.gz
+ .
+ Either dict-gcide or dict-wn is essential for a useful English
+ language dictionary server. It is strongly recommended that both be
+ installed. If you are interested in computer terminology, it is
+ recommended that one or more of dict-jargon, dict-foldoc, and
+ dict-vera also be installed.
+ .
+ The client program, dict, is packaged in dict*.deb If you are
+ running a server, you will want the client for all machines in your
+ network, and for testing server operations.
+
+Package: daemon
+Priority: optional
+Section: utils
+Installed-Size: 300
+Maintainer: Marc Haber <mh+debian-packages@zugschlus.de>
+Architecture: i386
+Version: 0.6.3-1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/d/daemon/daemon_0.6.3-1_i386.deb
+Size: 99726
+MD5sum: 8076beea9ae80f3ec4f4e0b58fe6d5c8
+Description: turns other processes into daemons
+ There are many tasks that need to be performed to correctly set up a
+ daemon process. This can be tedious. Daemon performs these tasks for
+ other processes. This is useful for writing daemons in languages other
+ than C, C++ or Perl (e.g. /bin/sh, Java).
+ .
+ If you want to write daemons in languages that can link against C functions
+ (e.g. C, C++), see libslack which contains the core functionality of daemon.
+ .
+ Upstream URL: http://www.libslack.org/daemon/
+
+Package: libc6
+Priority: required
+Section: base
+Installed-Size: 15592
+Maintainer: GNU Libc Maintainers <debian-glibc@lists.debian.org>
+Architecture: i386
+Source: glibc
+Version: 2.3.2.ds1-16
+Replaces: ldso (<= 1.9.11-9), timezone, timezones, gconv-modules, libtricks, libc6-bin, netkit-rpc, netbase (<< 4.0), libc6-dev (<< 2.3.2.ds1-14)
+Provides: glibc-2.3.2.ds1-16
+Depends: libdb1-compat
+Suggests: locales, glibc-doc
+Conflicts: strace (<< 4.0-0), libnss-db (<= 2.2-6.1.1), timezone, timezones, gconv-modules, libtricks, libc6-doc, libc5 (<< 5.4.33-7), libpthread0 (<< 0.7-10), libc6-bin, libwcsmbs, apt (<< 0.3.0), libglib1.2 (<< 1.2.1-2), netkit-rpc, wine (<< 0.0.20031118-1), cyrus-imapd (<< 1.5.19-15)
+Filename: pool/main/g/glibc/libc6_2.3.2.ds1-16_i386.deb
+Size: 4918900
+MD5sum: 8e131b1f4333049252f15142210fbcc4
+Description: GNU C Library: Shared libraries and Timezone data
+ Contains the standard libraries that are used by nearly all programs on
+ the system. This package includes shared versions of the standard C library
+ and the standard math library, as well as many others.
+ Timezone data is also included.
+
+Package: libxft1
+Priority: optional
+Section: libs
+Installed-Size: 356
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4), libexpat1 (>= 1.95.6), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libxext6 | xlibs (>> 4.1.0), libxrender1
+Conflicts: xlibs (<< 4.3.0)
+Filename: pool/main/x/xfree86/libxft1_4.3.0.dfsg.1-7_i386.deb
+Size: 174628
+MD5sum: f62ece12aac44dddfd746cb96c9b1abf
+Description: FreeType-based font drawing library for X (version 1)
+ Xft provides a client-side font API for X applications, making the FreeType
+ font rasterizer available to X clients. Fontconfig is used for font
+ specification resolution. Where available, the RENDER extension handles
+ glyph drawing; otherwise, the core X protocol is used.
+ .
+ This is an older, deprecated version of the Xft library, provided only for
+ applications that have not yet been updated to use version 2 of the Xft
+ library.
+
+Package: fakeroot
+Priority: optional
+Section: utils
+Installed-Size: 248
+Maintainer: Clint Adams <schizo@debian.org>
+Architecture: i386
+Version: 1.0.7
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/f/fakeroot/fakeroot_1.0.7_i386.deb
+Size: 66376
+MD5sum: 939f54b1e93141420595a511cccf10b6
+Description: Gives a fake root environment
+ This package is intended to enable something like:
+ dpkg-buildpackage -rfakeroot
+ i.e. to remove the need to become root for a package build.
+ This is done by setting LD_PRELOAD to libfakeroot.so,
+ which provides wrappers around getuid, chown, chmod, mknod,
+ stat, and so on, thereby creating a fake root environment.
+ .
+ fakeroot requires SYSV IPC to operate.
+
+Package: gpm
+Priority: optional
+Section: misc
+Installed-Size: 432
+Maintainer: Debian GPM Team <pkg-gpm-devel@lists.alioth.debian.org>
+Architecture: i386
+Version: 1.19.6-17
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), debconf (>= 0.5) | debconf-2.0, debianutils (>= 1.7), ucf (>= 0.28)
+Filename: pool/main/g/gpm/gpm_1.19.6-17_i386.deb
+Size: 189696
+MD5sum: bb7fd38883455484e42317fc2e960a6b
+Description: General Purpose Mouse Interface
+ This package provides a daemon that captures mouse events when the system
+ console is active, and delivers events to applications through a library.
+ .
+ The default when no application is running is to emulate "selection", that
+ is, to allow cut-and-paste with the mouse on the console the same way as
+ it is done under X.
+
+Package: addressmanager
+Priority: optional
+Section: mail
+Installed-Size: 356
+Maintainer: Eric Heintzmann <eric@gnustep.fr.st>
+Architecture: i386
+Source: addresses
+Version: 0.4.6-1
+Depends: addresses-framework (>= 0.4.6), addressview-framework (>= 0.4.6), gnustep-back (>= 0.9.3), libc6 (>= 2.3.2.ds1-4), libgnustep-base1 (>= 1.9.2), libgnustep-gui0 (>= 0.9.3), libobjc1 (>= 1:3.3.4-4)
+Suggests: gnumail
+Filename: pool/main/a/addresses/addressmanager_0.4.6-1_i386.deb
+Size: 86906
+MD5sum: 42ab94f4bd5210df2b66a9fde7b3ccf1
+Description: Personal Address Manager for GNUstep
+ This package constitutes a personal address manager for the GNUstep
+ software system. It allows archiving complete personal contact
+ information, organizing contacts in groups, integration with other
+ software such as mail clients and sharing address information with
+ other users over the network.
+
+Package: cdtool
+Priority: optional
+Section: sound
+Installed-Size: 180
+Maintainer: Max Vozeler <max@hinterhof.net>
+Architecture: i386
+Version: 2.1.5-10
+Depends: libc6 (>= 2.3.2.ds1-4), debconf (>= 1.2.0)
+Filename: pool/main/c/cdtool/cdtool_2.1.5-10_i386.deb
+Size: 45400
+MD5sum: fd214bda2eefce6f6e522d834b70e2a7
+Description: text-based audio CD player and CD-ROM control commands
+ cdtool contains cdplay, cdeject, cdstop, cdpause, and several other
+ utilities that let you play audio CDs and control your CD-ROM drive
+ from a command line.
+ .
+ cdown reads track info and queries a CDDB database for info on
+ the current CD. cdctrl is a command line utility for controlling a
+ CD-ROM drive interactively and from scripts. cdir keeps track of the
+ contents of different CDs using a workman-compatible database.
+
+Package: iproute
+Priority: optional
+Section: net
+Installed-Size: 808
+Maintainer: Juan Cespedes <cespedes@debian.org>
+Architecture: i386
+Version: 20010824-13.1
+Depends: libatm1, libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/i/iproute/iproute_20010824-13.1_i386.deb
+Size: 523194
+MD5sum: 97f4559da672f5dc253e515dd5377194
+Description: Professional tools to control the networking in Linux kernels
+ This is `iproute', the professional set of tools to control the
+ networking behavior in kernels 2.2.x and later.
+ .
+ At least, the options CONFIG_NETLINK and CONFIG_RTNETLINK must
+ be compiled in the running kernel
+ .
+ This package is also known as iproute2 upstream and in some
+ documentation.
+
+Package: file
+Priority: standard
+Section: utils
+Installed-Size: 48
+Maintainer: Michael Piefel <piefel@debian.org>
+Architecture: i386
+Version: 4.10-3
+Depends: libmagic1 (= 4.10-3), libc6 (>= 2.3.2.ds1-4), libmagic1, zlib1g (>= 1:1.2.1)
+Filename: pool/main/f/file/file_4.10-3_i386.deb
+Size: 28394
+MD5sum: 46aad5767497a24526d7c1165f4b1c98
+Description: Determines file type using "magic" numbers
+ File tests each argument in an attempt to classify it. There are three
+ sets of tests, performed in this order: filesystem tests, magic number
+ tests, and language tests. The first test that succeeds causes the
+ file type to be printed.
+ .
+ Starting with version 4, the file command is not much more than a wrapper
+ around the "magic" library.
+
+Package: gettext
+Priority: optional
+Section: devel
+Installed-Size: 4704
+Maintainer: Santiago Vila <sanvila@debian.org>
+Architecture: i386
+Version: 0.14.1-5
+Provides: libasprintf-dev, libgettextpo-dev
+Depends: libc6 (>= 2.3.2.ds1-4), gettext-base
+Suggests: cvs
+Filename: pool/main/g/gettext/gettext_0.14.1-5_i386.deb
+Size: 1556612
+MD5sum: d41e61df715d9e5a56de9e3b51f1c48c
+Description: GNU Internationalization utilities
+ Interesting for authors or maintainers of other packages or programs
+ which they want to see internationalized.
+
+Package: rpm
+Priority: optional
+Section: admin
+Installed-Size: 1976
+Maintainer: Anibal Monsalve Salazar <A.Monsalve.Salazar@IEEE.org>
+Architecture: i386
+Version: 4.0.4-29
+Depends: libbz2-1.0, libc6 (>= 2.3.2.ds1-4), libdb3 (>= 3.2.9-20), libpopt0 (>= 1.7), librpm4 (<< 4.0.5), librpm4 (>= 4.0.4), zlib1g (>= 1:1.2.1), perl
+Suggests: alien
+Filename: pool/main/r/rpm/rpm_4.0.4-29_i386.deb
+Size: 516400
+MD5sum: c8fa7e95577c781e57e5040f393ec547
+Description: Red Hat package manager
+ If you want to install Red Hat Packages then please use the alien
+ package. Using rpm directly will bypass the Debian packaging system!
+
+Package: less
+Priority: standard
+Section: text
+Installed-Size: 256
+Maintainer: Thomas Schoepf <schoepf@debian.org>
+Architecture: i386
+Version: 382-1
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), debianutils (>= 1.8)
+Filename: pool/main/l/less/less_382-1_i386.deb
+Size: 101816
+MD5sum: 49c50edc45a6ba8faf231873fbfef6e0
+Description: Pager program similar to more
+ Less is a program similar to more(1), but which allows backward
+ movement in the file as well as forward movement. Also, less does not
+ have to read the entire input file before starting, so with large input
+ files it starts up faster than text editors like vi(1). Less uses
+ termcap (or terminfo on some systems), so it can run on a variety of
+ terminals. There is even limited support for hardcopy terminals.
+ .
+ Homepage: http://www.greenwoodsoftware.com/less/
+
+Package: lynx
+Priority: optional
+Section: web
+Installed-Size: 4584
+Maintainer: James Troup <james@nocrew.org>
+Architecture: i386
+Version: 2.8.5-1
+Replaces: lynx-ssl
+Provides: www-browser, news-reader, lynx-ssl
+Depends: libbz2-1.0, libc6 (>= 2.3.2.ds1-4), libgnutls7 (>= 0.8.12-1), libgnutls7 (>= 0.8.12-2), libncursesw5 (>= 5.3.20030510-1), zlib1g (>= 1:1.2.1)
+Recommends: mime-support
+Conflicts: lynx-ssl
+Filename: pool/main/l/lynx/lynx_2.8.5-1_i386.deb
+Size: 1855448
+MD5sum: 1f913331fbd98d4a11df264cdeab4dff
+Description: Text-mode WWW Browser
+ Lynx is a fully-featured World Wide Web (WWW) client for users
+ running cursor-addressable, character-cell display devices (e.g.,
+ vt100 terminals, vt100 emulators running on PCs or Macs, or any other
+ "curses-oriented" display). It will display hypertext markup language
+ (HTML) documents containing links to files residing on the local
+ system, as well as files residing on remote systems running Gopher,
+ HTTP, FTP, WAIS, and NNTP servers.
+
+Package: wmnd
+Priority: optional
+Section: net
+Installed-Size: 160
+Maintainer: Arthur Korn <arthur@debian.org>
+Architecture: i386
+Version: 0.4.9-1
+Replaces: wmnd-snmp
+Depends: libc6 (>= 2.3.2.ds1-4), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0)
+Conflicts: wmnd-snmp
+Filename: pool/main/w/wmnd/wmnd_0.4.9-1_i386.deb
+Size: 43174
+MD5sum: bd944e08994d22bb2bde9dc3716e7989
+Description: Dockapp monitoring network interfaces
+ Shows a graph of incoming/outgoing traffic, activity indicators for rx/tx and
+ current/maximum rate for rx/tx in bytes or packets.
+ .
+ Tailored for use with WindowMaker, it will as well work with any other window
+ manager though.
+
+Package: kmenuedit
+Priority: optional
+Section: kde
+Installed-Size: 552
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0), kdebase-doc (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Filename: pool/main/k/kdebase/kmenuedit_3.3.0-1_i386.deb
+Size: 197590
+MD5sum: b77218b7e787022ac258fd98f801e7ff
+Description: KDE Menu Editor
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ The KDE menu editor allows you to make customisations to the KDE menu
+ structure.
+ .
+ This package is part of the official KDE base module.
+
+Package: libwraster2
+Priority: optional
+Section: libs
+Installed-Size: 188
+Maintainer: Marcelo E. Magallon <mmagallo@debian.org>
+Architecture: i386
+Source: wmaker
+Version: 0.80.2-0.4
+Depends: hermes1 (>= 1.3.2-5), libc6 (>= 2.3.2.ds1-4), libjpeg62, libpng12-0 (>= 1.2.5.0-4), libtiff4, libungif4g (>= 4.1.3), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Conflicts: fsviewer (<= 0.2.4-1), gnustep-back (<= 0.8.1-1), wdm (<= 1.20-17), wmakerconf (<= 2.7-2.1), wsoundprefs (<= 1.1.1-5), wsoundserver (<= 0.4.0-13), libwsound-dev (<= 0.4.0-13), wterm (<= 6.2.9-5), wterm-ml (<= 6.2.9-5)
+Filename: pool/main/w/wmaker/libwraster2_0.80.2-0.4_i386.deb
+Size: 101446
+MD5sum: a6718844448d7fb6a7519736d89806ae
+Description: Shared libraries of Window Maker rasterizer
+ Contains libwraster, for manipulating and rasterizing images.
+
+Package: coreutils
+Essential: yes
+Priority: required
+Section: base
+Installed-Size: 7096
+Maintainer: Michael Stone <mstone@debian.org>
+Architecture: i386
+Version: 5.2.1-2
+Replaces: textutils, shellutils, fileutils, stat, debianutils (<= 2.3.1)
+Provides: textutils, shellutils, fileutils
+Pre-Depends: libacl1 (>= 2.2.11-1), libc6 (>= 2.3.2.ds1-4)
+Conflicts: stat
+Filename: pool/main/c/coreutils/coreutils_5.2.1-2_i386.deb
+Size: 2580586
+MD5sum: 3f03887392dd97b02a72959d4082324a
+Description: The GNU core utilities
+ This package contains the essential basic system utilities.
+ .
+ Specifically, this package includes:
+ basename cat chgrp chmod chown chroot cksum comm cp csplit cut date dd df dir
+ dircolors dirname du echo env expand expr factor false fmt fold groups head
+ hostid id install join link ln logname ls md5sum mkdir mkfifo mknod mv nice nl
+ nohup od paste pathchk pinky pr printenv printf ptx pwd readlink rm rmdir
+ sha1sum seq shred sleep sort split stat stty sum sync tac tail tee test touch
+ tr true tsort tty uname unexpand uniq unlink users vdir wc who whoami yes
+
+Package: libkleopatra0
+Priority: optional
+Section: libs
+Installed-Size: 1028
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libgpg-error0 (>= 1.0), libgpgme11 (>= 0.4.5), libice6 | xlibs (>> 4.1.0), libkdenetwork2 (>= 4:3.3.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), gnupg
+Filename: pool/main/k/kdepim/libkleopatra0_3.3.0-2_i386.deb
+Size: 297386
+MD5sum: 872ffc500fcdbbad513d202264fac944
+Description: KDE GnuPG interface libraries
+ This library is used by several KDE applications to interface to the
+ GnuPG program.
+ .
+ This is the runtime package for programs that use the libkleopatra library.
+ .
+ This package is part of the official KDE pim module.
+
+Package: kpersonalizer
+Priority: optional
+Section: kde
+Installed-Size: 624
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Filename: pool/main/k/kdebase/kpersonalizer_3.3.0-1_i386.deb
+Size: 466848
+MD5sum: ca73a964d880031b6777b46e8a88c717
+Description: KDE Personalizer
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KDE Personalizer is a wizard to configure the KDE gui.
+ .
+ This package is part of the official KDE base module.
+
+Package: oaf
+Priority: optional
+Section: gnome
+Installed-Size: 740
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Version: 0.6.10-3
+Replaces: liboaf0 (<< 0.6.4)
+Depends: libc6 (>= 2.3.1-1), libglib1.2 (>= 1.2.0), liboaf0 (>= 0.6.10), liborbit0 (>= 0.5.17), libpopt0 (>= 1.6.4), libwrap0, libxml1 (>= 1:1.8.14-3), zlib1g (>= 1:1.1.4)
+Conflicts: liboaf0 (<< 0.6.4)
+Filename: pool/main/o/oaf/oaf_0.6.10-3_i386.deb
+Size: 119142
+MD5sum: 4f78a62988e495ee1cff4f93d46facba
+Description: The GNOME Object Activation Framework.
+ OAF is the new Object Activation Framework for GNOME. OAF has a
+ similar purpose to gnorba, the GNOME 1.x CORBA activation library, and
+ will replace it for GNOME 2.0.
+ .
+ It allows you to do much more powerful activation queries than gnorba.
+ Each server is described by an XML file that defines its
+ attributes. When querying or activating, one may specify complex
+ requirements using the OAF query language.
+
+Package: wmpinboard
+Priority: optional
+Section: x11
+Installed-Size: 228
+Maintainer: Marc 'HE' Brockschmidt <he@debian.org>
+Architecture: i386
+Version: 1.0-10
+Depends: libc6 (>= 2.3.2.ds1-4), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0)
+Filename: pool/main/w/wmpinboard/wmpinboard_1.0-10_i386.deb
+Size: 70514
+MD5sum: 6b4d1aaacbfa2305c97757215cb85b9e
+Description: Window Maker dock applet resembling a miniature pinboard
+ Themable Window Maker dock applet resembling a miniature pinboard.
+ Icon is titled TODO. Includes alarm functions. Think of it as very
+ high-tech post-its for your dockbar.
+
+Package: libgdbm3
+Priority: important
+Section: base
+Installed-Size: 72
+Maintainer: James Troup <james@nocrew.org>
+Architecture: i386
+Source: gdbm
+Version: 1.8.3-2
+Depends: libc6 (>= 2.3.2-1)
+Filename: pool/main/g/gdbm/libgdbm3_1.8.3-2_i386.deb
+Size: 21316
+MD5sum: 0bf2cb00e6561e5bee8c6efc6de3542e
+Description: GNU dbm database routines (runtime version)
+ GNU dbm ('gdbm') is a library of database functions that use extendible
+ hashing and works similarly to the standard UNIX 'dbm' functions.
+ .
+ The basic use of 'gdbm' is to store key/data pairs in a data file, thus
+ providing a persistent version of the 'dictionary' Abstract Data Type
+ ('hash' to perl programmers).
+
+Package: perl
+Priority: standard
+Section: perl
+Installed-Size: 11468
+Maintainer: Brendan O'Dea <bod@debian.org>
+Architecture: i386
+Version: 5.8.4-2.2
+Replaces: perl-5.005 (<< 6), perl-5.6 (<< 6), perl-doc (<< 5.8.0-1), perl-modules (<< 5.8.1-1), libdigest-md5-perl, libmime-base64-perl, libtime-hires-perl, libstorable-perl
+Provides: perl5, libdigest-md5-perl, libmime-base64-perl, libtime-hires-perl, libstorable-perl
+Depends: perl-base (= 5.8.4-2.2), perl-modules (>= 5.8.4-2.2), libc6 (>= 2.3.2.ds1-4), libdb4.2, libgdbm3
+Suggests: perl-doc, libterm-readline-perl-perl
+Conflicts: perl-5.004 (<< 6), perl-5.005 (<< 6), perl-5.6 (<< 6), perl-doc (<< 5.8.4-1), libdigest-md5-perl (<< 2.33-1), libmime-base64-perl (<< 3.01-1), libtime-hires-perl (<< 1.59-1), libstorable-perl (<< 2.12-1)
+Filename: pool/main/p/perl/perl_5.8.4-2.2_i386.deb
+Size: 3237444
+MD5sum: fcccafa18246e42d7439237c7175735c
+Description: Larry Wall's Practical Extraction and Report Language.
+ An interpreted scripting language, known among some as "Unix's Swiss
+ Army Chainsaw".
+ .
+ Perl is optimised for scanning arbitrary text files and system
+ administration. It has built-in extended regular expression matching
+ and replacement, a data-flow mechanism to improve security with
+ setuid scripts and is extensible via modules that can interface to C
+ libraries.
+
+Package: wdiff
+Priority: optional
+Section: text
+Installed-Size: 116
+Maintainer: Santiago Vila <sanvila@debian.org>
+Architecture: i386
+Version: 0.5-14
+Depends: libc6 (>= 2.2.4-4), libncurses5 (>= 5.2.20020112a-1)
+Filename: pool/main/w/wdiff/wdiff_0.5-14_i386.deb
+Size: 32720
+MD5sum: bef9aea63dcb6f42e33b87a8719959c2
+Description: Compares two files word by word
+ `wdiff' is a front-end to GNU `diff'. It compares two files, finding
+ which words have been deleted or added to the first in order to create
+ the second. It has many output formats and interacts well with
+ terminals and pagers (notably with `less'). `wdiff' is particularly
+ useful when two texts differ only by a few words and paragraphs have
+ been refilled.
+
+Package: libldap2
+Priority: important
+Section: libs
+Installed-Size: 692
+Maintainer: Torsten Landschoff <torsten@debian.org>
+Architecture: i386
+Source: openldap2
+Version: 2.1.30-3
+Replaces: libopenldap-runtime, libldap2-tls
+Provides: libldap2-tls
+Depends: libc6 (>= 2.3.2.ds1-4), libgnutls11 (>= 1.0.16), libsasl2 (>= 2.1.18)
+Conflicts: libldap2-tls, ldap-utils (<= 2.1.23-1)
+Filename: pool/main/o/openldap2/libldap2_2.1.30-3_i386.deb
+Size: 289878
+MD5sum: 9c68cfd009275e21532cd17368dc7705
+Description: OpenLDAP libraries
+ These are the run-time libraries for the OpenLDAP (Lightweight Directory
+ Access Protocol) servers and clients.
+
+Package: vacation
+Priority: standard
+Section: mail
+Installed-Size: 68
+Maintainer: Marco d'Itri <md@linux.it>
+Architecture: i386
+Version: 3.3.0
+Replaces: bsdmainutils (<= 4.8)
+Depends: libc6 (>= 2.3.1-1), libdb4.1
+Conflicts: bsdmainutils (<= 4.8)
+Filename: pool/main/v/vacation/vacation_3.3.0_i386.deb
+Size: 12632
+MD5sum: 94ad37212fc5204c74c46a0eb1016513
+Description: email autoresponder
+ Vacation returns a message to the sender of a message telling them that
+ you are currently not reading your mail.
+ .
+ This program is derived from the NetBSD version and has most of the
+ features present in the Linux, Solaris, AIX and *BSD versions.
+
+Package: initscripts
+Priority: required
+Section: base
+Installed-Size: 240
+Maintainer: Miquel van Smoorenburg <miquels@cistron.nl>
+Architecture: i386
+Source: sysvinit
+Version: 2.86-5
+Replaces: sysvinit (<< 2.85-12), libc6, libc6.1, libc0.1, libc0.3
+Depends: libc6 (>= 2.3.2.ds1-4), libc6 (>= 2.3.2.ds1-12), dpkg (>= 1.9.0), mount (>= 2.11l-1), util-linux (>= 2.9t-2), e2fsprogs (>= 1.19-1), coreutils (>= 5.0.91-2)
+Conflicts: kbd (<< 0.95-2), mdutils (<< 0.35-9)
+Filename: pool/main/s/sysvinit/initscripts_2.86-5_i386.deb
+Size: 30292
+MD5sum: 5e820c0d24788389da5da0c901515861
+Description: Standard scripts needed for booting and shutting down
+ These scripts are meant for standard Debian/GNU/Linux installations.
+
+Package: log2mail
+Priority: optional
+Section: admin
+Installed-Size: 132
+Maintainer: Enrico Zini <enrico@debian.org>
+Architecture: i386
+Version: 0.2.8-3
+Depends: exim4 | mail-transport-agent, libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1)
+Filename: pool/main/l/log2mail/log2mail_0.2.8-3_i386.deb
+Size: 32930
+MD5sum: fbbdead3b36f312e9f37699804c1cb75
+Description: Daemon watching logfiles and mailing lines matching patterns
+ log2mail is a small daemon watching logfiles and sending mail
+ to a specified address if a regular expression is matched.
+ log2mail uses a configuration file. It has some options to reduce
+ the amount of messages send to the user.
+
+Package: libvte4
+Priority: optional
+Section: libs
+Installed-Size: 1420
+Maintainer: Arnaud Patard <arnaud.patard@rtp-net.org>
+Architecture: i386
+Source: vte
+Version: 1:0.11.11-5
+Depends: libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libglib2.0-0 (>= 2.4.1), libgtk2.0-0 (>= 2.4.4), libncurses5 (>= 5.4-1), libpango1.0-0 (>= 1.4.1), libx11-6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxrender1, zlib1g (>= 1:1.2.1), libvte-common (= 1:0.11.11-5)
+Filename: pool/main/v/vte/libvte4_0.11.11-5_i386.deb
+Size: 668050
+MD5sum: e9f878b265d5f17baab474d95f441242
+Description: Terminal emulator widget for GTK+ 2.0 - runtime files
+ The VTE library inserts terminal capability strings into a trie, and then
+ uses it to determine if data received from a pseudo-terminal is a control
+ sequence or just random data. The sample program "interpret" illustrates
+ more or less what the widget sees after it filters incoming data.
+
+Package: libgnomesupport0
+Priority: optional
+Section: oldlibs
+Installed-Size: 56
+Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Source: gnome-libs
+Version: 1.4.2-19
+Depends: gnome-libs-data (= 1.4.2-19), libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1)
+Conflicts: libgnome0, libgnome31
+Filename: pool/main/g/gnome-libs/libgnomesupport0_1.4.2-19_i386.deb
+Size: 25554
+MD5sum: d2e90437257cb667c614f22bce5dd4da
+Description: The GNOME libraries (Support libraries)
+ GNOME is a project to build a complete, user-friendly desktop based
+ entirely on free software.
+ .
+ This package contains additional support libraries for
+ GNOME.
+
+Package: xlibmesa3
+Priority: optional
+Section: oldlibs
+Installed-Size: 232
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Depends: xlibmesa-dri, xlibmesa-gl, xlibmesa-glu
+Filename: pool/main/x/xfree86/xlibmesa3_4.3.0.dfsg.1-7_i386.deb
+Size: 142628
+MD5sum: 4875d87562b227dd52f486709b8cee55
+Description: XFree86 Mesa libraries pseudopackage
+ This package smooths upgrades from Debian 3.0 by depending on xlibmesa-gl and
+ xlibmesa-glu. This pseudopackage is only depended upon by packages that
+ haven't yet been compiled against the newer Mesa libraries provided by
+ XFree86.
+ .
+ This package also depends on xlibmesa-dri, if that package is available for
+ your machine architecture.
+
+Package: libgpgme11
+Priority: optional
+Section: libs
+Installed-Size: 272
+Maintainer: Jose Carlos Garcia Sogo <jsogo@debian.org>
+Architecture: i386
+Source: gpgme0.4
+Version: 0.9.0-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgpg-error0 (>= 0.7), gnupg (>= 1.2.2)
+Filename: pool/main/g/gpgme0.4/libgpgme11_0.9.0-1_i386.deb
+Size: 122144
+MD5sum: b99847bdd282ae51f8c2d8c7ceae9eaf
+Description: GPGME - GnuPG Made Easy
+ GPGME is a wrapper library which provides a C API to access some of the
+ GnuPG functions, such as encrypt, decrypt, sign, verify, ...
+
+Package: libmng1
+Priority: optional
+Section: libs
+Installed-Size: 416
+Maintainer: Shiju p. Nair <shiju@infovillage.net>
+Architecture: i386
+Source: libmng
+Version: 1.0.5-1
+Replaces: libmng-dev (<< 1.0.0-3), libmng
+Depends: libc6 (>= 2.3.1-1), libjpeg62, liblcms1 (>= 1.08-1), zlib1g (>= 1:1.1.4)
+Filename: pool/main/libm/libmng/libmng1_1.0.5-1_i386.deb
+Size: 148756
+MD5sum: 4473f42cefd78c06da5b74cc1b7fb356
+Description: Multiple-image Network Graphics library
+ The libmng library supports decoding, displaying, encoding, and various
+ other manipulations of the Multiple-image Network Graphics (MNG) format
+ image files. It uses the zlib compression library, and optionally the
+ JPEG library by the Independent JPEG Group (IJG) and/or
+ lcms (little cms), a color-management library by Marti Maria Saguar.
+
+Package: wmmixer
+Priority: optional
+Section: x11
+Installed-Size: 84
+Maintainer: Gordon Fraser <gordon@debian.org>
+Architecture: i386
+Version: 1.5-4
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.4-1), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0)
+Suggests: wmaker | afterstep
+Filename: pool/main/w/wmmixer/wmmixer_1.5-4_i386.deb
+Size: 25564
+MD5sum: b5f9ac30e604460850ae9438fad3923e
+Description: A mixer application designed for WindowMaker
+ There's nothing in the program that makes it require WindowMaker, except
+ maybe the NeXTStep look and the fact that it properly docks. It can
+ be used with other window managers without problems.
+
+Package: liblwres1
+Priority: standard
+Section: libs
+Installed-Size: 172
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Source: bind9
+Version: 1:9.2.3+9.2.4-rc7-1
+Replaces: libbind0
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libbind0
+Filename: pool/main/b/bind9/liblwres1_9.2.3+9.2.4-rc7-1_i386.deb
+Size: 89238
+MD5sum: 8e004658e6d223bc6f13c1258f8c9e2d
+Description: Lightweight Resolver Library used by BIND
+ The Berkeley Internet Name Domain (BIND) implements an Internet domain
+ name server. BIND is the most widely-used name server software on the
+ Internet, and is supported by the Internet Software Consortium, www.isc.org.
+ .
+ This package delivers the liblwres shared library used by BIND's daemons
+ and clients.
+
+Package: html2ps
+Priority: optional
+Section: text
+Installed-Size: 436
+Maintainer: Stephen Zander <gibreel@debian.org>
+Architecture: all
+Version: 1.0b3-3.1
+Depends: perl, perlmagick, libwww-perl, weblint, libhtml-parser-perl, wish, libpaper-utils
+Recommends: gs
+Suggests: tetex-base
+Filename: pool/main/h/html2ps/html2ps_1.0b3-3.1_all.deb
+Size: 146310
+MD5sum: 524028299d9a1e83e95e100dd33e36c9
+Description: HTML to PostScript converter
+ This program converts HTML directly to PostScript. The HTML code can
+ be retrieved from one or more URLs or local files, specified as
+ parameters on the command line. A comprehensive level of HTML is
+ supported, including inline images, CSS1, and some features of HTML
+ 4.0.
+
+Package: gconf2
+Priority: optional
+Section: libs
+Installed-Size: 4620
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Version: 2.6.4-2
+Replaces: libgconf2-4 (<< 1.1.10-2)
+Depends: libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libgconf2-4 (>= 2.6.4), libglib2.0-0 (>= 2.4.6), libgtk2.0-0 (>= 2.4.4), liborbit2 (>= 1:2.10.0), libpango1.0-0 (>= 1.4.1), libpopt0 (>= 1.7), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1)
+Conflicts: gconf (<< 1.0.6-4), libgconf11 (<< 1.0.9-2.1)
+Filename: pool/main/g/gconf2/gconf2_2.6.4-2_i386.deb
+Size: 1089202
+MD5sum: 3892111a9041a91e1c49e85933d5caf7
+Description: GNOME configuration database system. (daemon and tools, for GNOME2)
+ GConf is a configuration database system, functionally similar to the
+ Windows registry but lots better. :-) It's being written for the GNOME
+ desktop but does not require GNOME.
+ .
+ This package contains gconfd daemon and gconf tools binaries for GNOME2
+
+Package: libpaper1
+Priority: optional
+Section: libs
+Installed-Size: 92
+Maintainer: Stephen Zander <gibreel@debian.org>
+Architecture: i386
+Source: libpaper
+Version: 1.1.14-0.4
+Replaces: libpaperg (<< 1.1.9)
+Provides: libpaperg
+Depends: libc6 (>= 2.3.2.ds1-4), debconf (>= 1.3.22), ucf (>= 0.28)
+Recommends: libpaper-utils
+Filename: pool/main/libp/libpaper/libpaper1_1.1.14-0.4_i386.deb
+Size: 16968
+MD5sum: 0a7caeecc64551e193e2e300daaeb81a
+Description: Library for handling paper characteristics
+ This package contains a simple library for use by programs needing
+ to handle papers. It lets program automatically recognize a lot of
+ different papers with their properties (actually their size).
+
+Package: xloadimage
+Priority: optional
+Section: graphics
+Installed-Size: 288
+Maintainer: James Troup <james@nocrew.org>
+Architecture: i386
+Version: 4.1-14
+Depends: libc6 (>= 2.3.2.ds1-4), libjpeg62, libpng12-0 (>= 1.2.5.0-4), libtiff4, libx11-6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Filename: pool/main/x/xloadimage/xloadimage_4.1-14_i386.deb
+Size: 112476
+MD5sum: c24fadf0d5281b22263ad580dd08cd1c
+Description: Graphics file viewer under X11
+ Can view png, jpeg, gif, tiff, niff, sunraster, fbm, cmuraster, pbm, faces,
+ rle, xwd, vff, mcidas, vicar, pcx, gem, macpaint, xpm and xbm files. Can
+ view images, put them on the root window, or dump them. Does a variety of
+ processing, including: clipping, dithering, depth reduction, zoom,
+ brightening/darkening and merging.
+ .
+ Includes xsetbg, xview and uufilter.
+
+Package: rhythmbox
+Priority: optional
+Section: gnome
+Installed-Size: 3480
+Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Version: 0.8.5-3
+Depends: libart-2.0-2 (>= 2.3.16), libatk1.0-0 (>= 1.6.0), libaudiofile0 (>= 0.2.3-4), libbonobo2-0 (>= 2.6.2), libbonoboui2-0 (>= 2.5.4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libgconf2-4 (>= 2.6.2), libgcrypt11, libglade2-0 (>= 1:2.3.6), libglib2.0-0 (>= 2.4.1), libgnome-keyring0 (>= 0.2.1), libgnome2-0 (>= 2.6.1.1), libgnomecanvas2-0 (>= 2.6.0), libgnomeui-0 (>= 2.6.0), libgnomevfs2-0 (>= 2.6.0), libgnutls11 (>= 1.0.16), libgpg-error0 (>= 1.0), libgstreamer-gconf0.8-0 (>= 0.8.0), libgstreamer0.8-0 (>= 0.8.4-1), libgtk2.0-0 (>= 2.4.4), libice6 | xlibs (>> 4.1.0), libjpeg62, liborbit2 (>= 1:2.10.0), libpango1.0-0 (>= 1.4.0), libpopt0 (>= 1.7), libsm6 | xlibs (>> 4.1.0), libtasn1-2 (>= 0.2.7), libx11-6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1), vorbis-tools, scrollkeeper, gconf2, gstreamer0.8-gnomevfs, gstreamer0.8-misc, gstreamer0.8-flac, gstreamer0.8-mad, gstreamer0.8-vorbis, gstreamer0.8-oss | gstreamer0.8-audiosink
+Recommends: esound
+Suggests: yelp
+Filename: pool/main/r/rhythmbox/rhythmbox_0.8.5-3_i386.deb
+Size: 1254412
+MD5sum: 944187e0fb1ab8c5681f2cc88ca2a24f
+Description: music player and organizer for GNOME
+ Rhythmbox is a very easy to use music playing and management program
+ which supports a wide range of audio formats (including mp3 and ogg).
+ The current version also supports Internet Radio.
+ .
+ Development at the moment is quite rapid, and future versions will
+ have even more features, including:
+ - Metadata (tag) editing and automatic assignment
+ - Audio CD burning
+ - Visualization
+
+Package: liboggflac1
+Priority: optional
+Section: libs
+Installed-Size: 68
+Maintainer: Matt Zimmerman <mdz@debian.org>
+Architecture: i386
+Source: flac
+Version: 1.1.0-11
+Replaces: libflac3 (= 1.0.4-1)
+Depends: debconf, libc6 (>= 2.3.2.ds1-4), libflac4, libogg0 (>= 1.1.0)
+Conflicts: libflac3 (= 1.0.4-1), liboggflac0
+Filename: pool/main/f/flac/liboggflac1_1.1.0-11_i386.deb
+Size: 14028
+MD5sum: 760ff15a2f7c47e171ce713f57f5a9f1
+Description: Free Lossless Audio Codec - runtime C library (ogg)
+ FLAC stands for Free Lossless Audio Codec. Grossly oversimplified, FLAC is
+ similar to MP3, but lossless. The FLAC project consists of:
+ .
+ * The stream format
+ * libFLAC, which implements a reference encoder, stream decoder, and file
+ decoder
+ * flac, which is a command-line wrapper around libFLAC to encode and decode
+ .flac files
+ * Input plugins for various music players (Winamp, XMMS, and more in the
+ works)
+ .
+ This package contains the runtime library libOggFLAC.
+
+Package: libxml2
+Priority: optional
+Section: libs
+Installed-Size: 1260
+Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs@lists.alioth.debian.org>
+Architecture: i386
+Version: 2.6.11-3
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1)
+Recommends: xml-core
+Filename: pool/main/libx/libxml2/libxml2_2.6.11-3_i386.deb
+Size: 645850
+MD5sum: d618ffb446c2d7971618a1892223298a
+Description: GNOME XML library
+ XML is a metalanguage to let you design your own markup language.
+ A regular markup language defines a way to describe information in
+ a certain class of documents (eg HTML). XML lets you define your
+ own customized markup languages for many classes of document. It
+ can do this because it's written in SGML, the international standard
+ metalanguage for markup languages.
+ .
+ This package provides a library providing an extensive API to handle
+ such XML data files.
+
+Package: xutils
+Priority: optional
+Section: x11
+Installed-Size: 3116
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: rstart, rstartd, xbase-clients (<= 4.0.1-8), xserver-common (<< 4.0), xfonts-base (<< 4.3.0.dfsg.1-7), xbase (<< 3.3.2.3a-2), xlibs-dev (<< 4.1.0-12), xlib6g-dev (<< 4.0), dpsclient, xcontrib
+Depends: xfree86-common (>> 4.3), cpp, libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), zlib1g (>= 1:1.2.1)
+Suggests: ssh | rsh-server, ssh | rsh-client, xlibs-data
+Conflicts: rstart, rstartd, xbase-clients (<< 4.0), xserver-common (<< 4.0), xbase (<< 3.3.2.3a-2), cpp-3.3 (<< 1:3.3.3-0pre1)
+Filename: pool/main/x/xfree86/xutils_4.3.0.dfsg.1-7_i386.deb
+Size: 892508
+MD5sum: de664d323afaf01dea069cf0ca890765
+Description: X Window System utility programs
+ xutils provides a set of utility programs shipped with the X Window System
+ that do not require the X libraries; many of these programs are useful
+ even on a system that does not have any X clients or X servers installed.
+ .
+ The programs in this package include:
+ - bdftopcf, which converts BDF fonts to PCF fonts;
+ - bdftruncate and ucs2any, tools to generate fonts with various encodings
+ from ISO 10646-encoded fonts
+ - ccmakedep, a version of makedepend which "does it right"
+ - cleanlinks, a program to remove dangling symlinks and empty directories
+ from a shadow link tree (created with lndir)
+ - fslsfonts, a tool that lists fonts served by an X font server;
+ - imake, a C preprocessor interface to the make utility;
+ - lndir, a tool that creates a shadow directory of symbolic links to
+ another directory tree;
+ - luit, a filter that can be run between an arbitrary application and a
+ UTF-8 terminal emulator;
+ - makedepend, a tool to create dependencies in makefiles;
+ - makeg, a tool for making debuggable executables;
+ - makepsres, a tool that creates PostScript language resource database
+ files;
+ - makestrs, a tool that makes string table C source and header(s);
+ - mkcfm, a tool that create summaries of font metric files in CID font
+ directories;
+ - mkdirhier, a tool that creates a directory hierarchy;
+ - mkfontdir, a program to generate fonts.dir files;
+ - scanpci, a utility for retrieving information about the PCI bus and
+ devices on it (not available on all architectures);
+ - pcitweak, a utility that can be used to examine or change registers in
+ the PCI configuration space (not available on all architectures);
+ - pswrap, a tool that creates C procedures from segments of PostScript
+ language code;
+ - resize, which prints a shell command for setting the TERM and TERMCAP
+ environment variables to indicate the current size of the xterm (or
+ compatible program) window from which the command is run;
+ - revpath, which generates a relative path that can be used to undo a
+ change-directory;
+ - rstart, a remote start client;
+ - rstartd, a remote start daemon activated by rstart connections;
+ - sessreg, a simple program for managing utmp/wtmp entries;
+ - showfont, a font dumper for use with an X font server;
+ - showrgb, a decompiler for RGB color-name databases;
+ - xfsinfo, an X font server information utility;
+ - xmkmf, a tool that creates a Makefile from an Imakefile; and
+ - xon, a tool that starts an X program on a remote machine.
+ .
+ Installation of an rsh or ssh daemon (server) is necessary if rstartd is
+ to be used, and installation of an rsh or ssh client is necessary if
+ rstart is to be used. The luit program requires locale information from
+ the xlibs-data package.
+ .
+ imake uses the C preprocessor (cpp) as a macro processor. The GNU C
+ preprocessor's "-traditional" support misbehaves in early releases of the GCC
+ 3.3 series; therefore, this package conflicts with those versions.
+
+Package: preferences
+Priority: optional
+Section: x11
+Installed-Size: 968
+Maintainer: Debian QA Group <packages@qa.debian.org>
+Architecture: i386
+Version: 1.2.100-2
+Depends: gnustep-back (>= 0.9.3), libc6 (>= 2.3.2.ds1-4), libgnustep-base1 (>= 1.9.2), libgnustep-gui0 (>= 0.9.3), libobjc1 (>= 1:3.3.4-4)
+Filename: pool/main/p/preferences/preferences_1.2.100-2_i386.deb
+Size: 220036
+MD5sum: f0bb342f59a38d240d6b4160bc05220b
+Description: GNUstep Preferences application
+ Preferences.app is, functionally, a clone of NeXTstep/OPENSTEP tool of
+ the same name. Just like the original program, it's a simple
+ application for setting preferences for the GNUstep system, with a
+ friendly interface.
+ .
+ The program is simple, but powerful -- people can create new modules,
+ called "bundles", that add new things to the program that its original
+ developers did not think of or even intend -- that don't require
+ recompiling the main program.
+
+Package: libnspr4
+Priority: optional
+Section: libs
+Installed-Size: 292
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Source: mozilla
+Version: 2:1.7.2-4
+Replaces: libnspr3
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libnspr3
+Filename: pool/main/m/mozilla/libnspr4_1.7.2-4_i386.deb
+Size: 128312
+MD5sum: e9e51561b327ba44c6f7384b8f7a6ff0
+Description: Netscape Portable Runtime Library
+ This library provides platform independent non-GUI operating system
+ facilities including:
+ * threads,
+ * thread synchronisation,
+ * normal file I/O and network I/O,
+ * interval timing and calendar time,
+ * basic memory management (malloc and free),
+ * shared library linking.
+ .
+ See http://www.mozilla.org/docs/refList/refNSPR/ for more information.
+
+Package: wbritish
+Priority: optional
+Section: text
+Installed-Size: 928
+Maintainer: David Coe <davidc@debian.org>
+Architecture: all
+Source: scowl
+Version: 5-4
+Provides: wordlist
+Depends: debconf, dictionaries-common (>= 0.20), debconf (>= 0.5) | debconf-2.0
+Filename: pool/main/s/scowl/wbritish_5-4_all.deb
+Size: 258940
+MD5sum: b5339e1e03af5864ad85ac7aa7e337e2
+Description: British English dictionary words for /usr/share/dict
+ This package provides the file /usr/share/dict/british-english
+ containing a list of English words with British spellings.
+ This list can be used by spelling checkers, and by programs such
+ as look(1).
+ .
+ There are also -small and -large versions of this wordlist,
+ and there are wamerican* and wcanadian* packages as well.
+
+Package: libice6
+Priority: optional
+Section: libs
+Installed-Size: 388
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: xlibs (<< 4.3.0)
+Filename: pool/main/x/xfree86/libice6_4.3.0.dfsg.1-7_i386.deb
+Size: 187428
+MD5sum: d7ccb4d37e676be58f0e7cf5b01dabcd
+Description: Inter-Client Exchange library
+ libICE provides an interface to ICE, the Inter-Client Exchange protocol.
+ Motivated by issues arising from the need for X Window System clients to
+ share data with each other, the ICE protocol provides a generic framework for
+ building protocols on top of reliable, byte-stream transport connections. It
+ provides basic mechanisms for setting up and shutting down connections, for
+ performing authentication, for negotiating versions, and for reporting
+ errors.
+
+Package: libattr1
+Priority: required
+Section: libs
+Installed-Size: 36
+Maintainer: Nathan Scott <nathans@debian.org>
+Architecture: i386
+Source: attr
+Version: 2.4.16-1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: attr (<< 2.0.0)
+Filename: pool/main/a/attr/libattr1_2.4.16-1_i386.deb
+Size: 7484
+MD5sum: 13737d452290e97cf7134fa4957fb05e
+Description: Extended attribute shared library
+ Contains the runtime environment required by programs that make use
+ of extended attributes.
+
+Package: libltdl3
+Priority: optional
+Section: libs
+Installed-Size: 220
+Maintainer: Scott James Remnant <scott@netsplit.com>
+Architecture: i386
+Source: libtool
+Version: 1.5.6-2
+Replaces: libltdl0.1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libltdl0.1
+Filename: pool/main/libt/libtool/libltdl3_1.5.6-2_i386.deb
+Size: 151682
+MD5sum: 50670e20b0ba4c6215f76baaa65bfc23
+Description: A system independent dlopen wrapper for GNU libtool
+ This package contains the run-time libltdl library.
+ .
+ A small library that aims at hiding the various difficulties of
+ dlopening libraries from programmers. It is a system independent
+ dlopen wrapper for GNU libtool.
+ .
+ It supports the following dlopen interfaces:
+ * dlopen (Solaris, Linux and various BSD flavors)
+ * shl_load (HP-UX)
+ * LoadLibrary (Win16 and Win32)
+ * load_add_on (BeOS)
+ * GNU DLD (emulates dynamic linking for static libraries)
+ * libtool's dlpreopen
+
+Package: bonobo
+Priority: optional
+Section: gnome
+Installed-Size: 1300
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Version: 1.0.22-2.2
+Replaces: libbonobo1 (<< 0.26-1), libbonobo2 (<< 0.14)
+Depends: gdk-imlib1, libart2 (>= 1.2.13-5), libaudiofile0 (>= 0.2.3-4), libbonobo2 (>= 1.0.22), libc6 (>= 2.3.2-1), libdb3 (>= 3.2.9-19), libefs1, libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libfreetype6 (>= 2.1.4-1), libgdk-pixbuf2 (>= 0.22.0-2.0.1), libglib1.2 (>= 1.2.0), libgnome32 (>= 1.2.13-5), libgnomeprint15 (>= 0.29-1), libgnomesupport0 (>= 1.2.13-5), libgnomeui32 (>= 1.4.2-3), libgtk1.2 (>= 1.2.10-4), liboaf0 (>= 0.6.10), liborbit0 (>= 0.5.17), libpopt0 (>= 1.7), libwrap0, libxml1 (>= 1:1.8.14-3), oaf (>= 0.6.10), xlibs (>> 4.1.0), zlib1g (>= 1:1.1.4)
+Filename: pool/main/b/bonobo/bonobo_1.0.22-2.2_i386.deb
+Size: 239150
+MD5sum: 6f1d614688f9d91faa6d0639ff47a4cd
+Description: The GNOME Bonobo System.
+ Bonobo is a set of language and system independent CORBA interfaces
+ for creating reusable components (controls) and creating compound
+ documents.
+ .
+ The Bonobo distribution includes a Gtk+ based implementation of the
+ Bonobo interfaces, enabling developers to create reusable
+ components and applications that can be used to form more complex
+ documents.
+
+Package: dnsmasq
+Priority: optional
+Section: net
+Installed-Size: 272
+Maintainer: Simon Kelley <simon@thekelleys.org.uk>
+Architecture: i386
+Version: 2.13-1
+Depends: netbase, libc6 (>= 2.3.2.ds1-4)
+Suggests: resolvconf
+Conflicts: pdnsd, resolvconf (<< 1.15)
+Filename: pool/main/d/dnsmasq/dnsmasq_2.13-1_i386.deb
+Size: 95884
+MD5sum: 82da1c945f92a059f4d76ba70a64ea79
+Description: A small caching DNS proxy and DHCP server.
+ Dnsmasq is lightweight, easy to configure DNS forwarder and DHCP
+ server. It is designed to provide DNS and, optionally, DHCP, to a
+ small network. It can serve the names of local machines which are
+ not in the global DNS. The DHCP server integrates with the DNS
+ server and allows machines with DHCP-allocated addresses
+ to appear in the DNS with names configured either in each host or
+ in a central configuration file. Dnsmasq supports static and dynamic
+ DHCP leases and BOOTP for network booting of diskless machines.
+
+Package: libmal1
+Priority: optional
+Section: libs
+Installed-Size: 176
+Maintainer: Ludovic Rousseau <rousseau@debian.org>
+Architecture: i386
+Source: libmal
+Version: 0.40-3
+Depends: libc6 (>= 2.3.2.ds1-4), libpisock8
+Filename: pool/main/libm/libmal/libmal1_0.40-3_i386.deb
+Size: 58492
+MD5sum: a2bc08f27a2a793c10f2751e72c61448
+Description: A library of the functions in malsync (devel files)
+ libmal is simply a convenience library of the object files contained in
+ Tom Whittaker's malsync distribution, along with a few wrapper
+ functions.
+ .
+ Homepage: http://jasonday.home.att.net/code/libmal/libmal.html
+
+Package: sketch
+Priority: optional
+Section: graphics
+Installed-Size: 6844
+Maintainer: Gregor Hoffleit <flight@debian.org>
+Architecture: i386
+Version: 0.6.15-1
+Depends: python (>= 2.3), python (<< 2.4), python-tk, python-imaging, libc6 (>= 2.3.2-1), tcl8.4 (>= 8.4.2), tk8.4 (>= 8.4.2), xlibs (>> 4.1.0)
+Suggests: gsfonts-x11 (>= 0.12), python-xml, python-reportlab
+Filename: pool/main/s/sketch/sketch_0.6.15-1_i386.deb
+Size: 1402522
+MD5sum: 0547ad000b3de2eda6389596fea78711
+Description: Interactive vector drawing program for X11
+ Sketch is an interactive vector drawing program, comparable to CorelDraw.
+ It currently support drawing primitives like rectangles, ellipses, Bezier
+ curves, bitmap and EPS images and text. All objects can be rotated, scaled
+ and sheared. Primitives can have fill and line properties. A number of
+ special effects like blend groups, text to Bezier and text along a path
+ are provided. Sketch supports an unlimited undo history.
+ Import of XFig, AI, WMF, CMX and SVG files. Exports to EPS, AI and SVG.
+ Sketch is written in Python with an Tkinter GUI. User scripts can be
+ written in Python.
+
+Package: bc
+Priority: standard
+Section: math
+Installed-Size: 184
+Maintainer: Dirk Eddelbuettel <edd@debian.org>
+Architecture: i386
+Version: 1.06-15
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), libreadline4 (>= 4.3-1)
+Filename: pool/main/b/bc/bc_1.06-15_i386.deb
+Size: 64784
+MD5sum: e050dba00be2a6c1a9ca0f128c53d55d
+Description: The GNU bc arbitrary precision calculator language
+ GNU bc is an interactive algebraic language with arbitrary precision which
+ follows the POSIX 1003.2 draft standard, with several extensions including
+ multi-character variable names, an `else' statement and full Boolean
+ expressions. GNU bc does not require the separate GNU dc program.
+
+Package: make
+Priority: standard
+Section: devel
+Installed-Size: 1004
+Maintainer: Manoj Srivastava <srivasta@debian.org>
+Architecture: i386
+Version: 3.80-9
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/m/make/make_3.80-9_i386.deb
+Size: 366138
+MD5sum: 69c42f9b92157f2f0ed5ec4aa61840aa
+Description: The GNU version of the "make" utility.
+ GNU Make is a program that determines which pieces of a large
+ program need to be recompiled and issues the commands to recompile
+ them, when necessary. More information about GNU Make can be
+ found in the `make' Info page. The upstream sources for this package
+ are available at the location ftp://ftp.gnu.org/gnu/make/
+
+Package: ksplash
+Priority: optional
+Section: kde
+Installed-Size: 1188
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxcursor1 (>> 1.1.2), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Filename: pool/main/k/kdebase/ksplash_3.3.0-1_i386.deb
+Size: 800286
+MD5sum: 4ec41aff90784bc4ad7c1b2dea840aee
+Description: KDE Splash Screen
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This package includes the KDE Splash screen seen when starting KDE.
+ .
+ This package is part of the official KDE base module.
+
+Package: libexif10
+Priority: optional
+Section: libs
+Installed-Size: 300
+Maintainer: christophe barbe <christophe@debian.org>
+Architecture: i386
+Source: libexif
+Version: 0.6.9-1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/libe/libexif/libexif10_0.6.9-1_i386.deb
+Size: 80068
+MD5sum: 0f94489adafc7274e2bc69c6803d4fab
+Description: The EXIF library allows you to parse an EXIF file
+ Most digital cameras produce EXIF files, which are JPEG files with
+ extra tags that contain information about the image. The EXIF library
+ allows you to parse an EXIF file and read the data from those tags.
+
+Package: libxtst6
+Priority: optional
+Section: libs
+Installed-Size: 320
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4), libxext6 | xlibs (>> 4.1.0)
+Conflicts: xlibs (<< 4.3.0)
+Filename: pool/main/x/xfree86/libxtst6_4.3.0.dfsg.1-7_i386.deb
+Size: 158332
+MD5sum: 9a1f95976ea7662d2f4e6095bdb44968
+Description: X Window System event recording and testing extension library
+ libXTrap provides an X Window System client interface to the RECORD and XTEST
+ extensions to the X protocol. Note that an alternative interface to the
+ XTEST protocol extension is provided by libXext, in the libext6 package.
+
+Package: evolution
+Priority: optional
+Section: gnome
+Installed-Size: 28208
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Version: 1.4.6-5
+Replaces: evolution1.3
+Provides: mail-reader, imap-client
+Depends: gtkhtml3.0 (>= 3.0.10), libart-2.0-2 (>= 2.3.16), libasn1-6-heimdal (>= 0.6.2), libatk1.0-0 (>= 1.6.0), libaudiofile0 (>= 0.2.3-4), libbonobo2-0 (>= 2.6.2), libbonoboui2-0 (>= 2.5.4), libc6 (>= 2.3.2.ds1-4), libcomerr2 (>= 1.33-3), libdb4.2, libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgal2.0-6 (>= 1.99.11), libgconf2-4 (>= 2.6.3), libgcrypt11, libglade2-0 (>= 1:2.3.6), libglib2.0-0 (>= 2.4.1), libgnome-keyring0 (>= 0.2.1), libgnome-pilot2 (>= 2.0.2), libgnome2-0 (>= 2.6.1.1), libgnomecanvas2-0 (>= 2.6.0), libgnomeprint2.2-0 (>= 2.6.1-6), libgnomeprintui2.2-0 (>= 2.6.0), libgnomeui-0 (>= 2.6.0), libgnomevfs2-0 (>= 2.6.0), libgnutls11 (>= 1.0.16), libgpg-error0 (>= 1.0), libgssapi1-heimdal (>= 0.6.2), libgtk2.0-0 (>= 2.4.4), libgtkhtml3.0-4 (>= 3.0.10), libice6 | xlibs (>> 4.1.0), libjpeg62, libkrb-1-kerberos4kth (>= 1.2.2-11), libkrb5-17-heimdal (>= 0.6.2), libldap2 (>= 2.1.17-1), liborbit2 (>= 1:2.10.0), libpango1.0-0 (>= 1.4.1), libpisock8, libpisync0, libpopt0 (>= 1.7), libroken16-kerberos4kth (>= 1.2.2-11), libsm6 | xlibs (>> 4.1.0), libsoup2.0-0 (>= 1.99.28), libssl0.9.7, libtasn1-2 (>= 0.2.8), libx11-6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1), libnss3 (>= 2:1.3.1), libnspr4 (>= 2:1.3), libgal2.0-common (>= 1.99.11), gnome-icon-theme, gconf2 (>= 2.6.2-1)
+Recommends: mozilla-psm (>= 2:1.3.1), gnome-pilot-conduits (>= 2.0.9), gnome-desktop-data
+Suggests: gnupg, gnome-spell (>= 1.0.4), ca-certificates
+Conflicts: evolution1.3
+Filename: pool/main/e/evolution/evolution_1.4.6-5_i386.deb
+Size: 10341480
+MD5sum: 804a4be5498666ef07f2e0f6b3427bda
+Description: The groupware suite
+ Evolution is the integrated mail, calendar, task and address book
+ distributed suite from Ximian, Inc.
+ .
+ See http://www.ximian.com/products/ximian_evolution/index.html for more
+ information.
+
+Package: libgnomeprint15
+Priority: optional
+Section: libs
+Installed-Size: 624
+Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Source: gnome-print
+Version: 0.37-5
+Replaces: libgnomeprint3, gnome-print
+Depends: gdk-imlib1, libart2 (>= 1.2.13-5), libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libdb3 (>= 3.2.9-19), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libfreetype6 (>= 2.1.5-1), libgdk-pixbuf2 (>= 0.22.0-3), libglib1.2 (>= 1.2.0), libgnome32 (>= 1.2.13-5), libgnomesupport0 (>= 1.2.13-5), libgnomeui32 (>= 1.4.2-3), libgtk1.2 (>= 1.2.10-4), libxml1 (>= 1:1.8.14-3), xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), libgnomeprint-data (= 0.37-5)
+Conflicts: gnome-print
+Filename: pool/main/g/gnome-print/libgnomeprint15_0.37-5_i386.deb
+Size: 232426
+MD5sum: ae7e01c50f200e991a5dc6364984c6e4
+Description: The GNOME Print architecture - runtime library
+ This is a prototype implementation of the Gnome Printing
+ Architecture, as described in:
+ .
+ http://www.levien.com/gnome/print-arch.html
+
+Package: gcc
+Priority: standard
+Section: devel
+Installed-Size: 28
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-defaults (1.17)
+Version: 4:3.3.4-2
+Provides: c-compiler
+Depends: cpp (>= 4:3.3.4-2), gcc-3.3 (>= 1:3.3.4-1), cpp-3.3 (>= 1:3.3.4-1)
+Recommends: libc-dev
+Suggests: make, manpages-dev, autoconf, automake, libtool, flex, bison, gdb, gcc-doc
+Conflicts: gcc-doc (<< 1:2.95.3)
+Filename: pool/main/g/gcc-defaults/gcc_3.3.4-2_i386.deb
+Size: 4904
+MD5sum: 8137bb3b2add83c858090a125e071124
+Description: The GNU C compiler
+ This is the GNU C compiler, a fairly portable optimizing compiler for C.
+ .
+ This is a dependency package providing the default GNU C compiler.
+
+Package: mailx
+Priority: important
+Section: mail
+Installed-Size: 292
+Maintainer: Robert Luberda <robert@debian.org>
+Architecture: i386
+Version: 1:8.1.2-0.20040524cvs-1
+Provides: mail-reader
+Depends: libc6 (>= 2.3.2.ds1-4), liblockfile1 (>= 1.0), exim4 | mail-transport-agent, base-files (>= 2.2.0)
+Conflicts: suidmanager (<< 0.52)
+Filename: pool/main/m/mailx/mailx_8.1.2-0.20040524cvs-1_i386.deb
+Size: 151302
+MD5sum: e47e3cb8eb74c4652931e9d8c2462948
+Description: A simple mail user agent
+ mailx is the traditional command-line-mode mail user agent.
+ Even if you don't use it it may be required by other programs.
+Task: mail-server
+
+Package: kicker
+Priority: optional
+Section: kde
+Installed-Size: 6052
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0), kdebase-doc (<< 4:3.0.0), kdebase-libs (<< 4:3.0.0), konqueror (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libkonq4 (>= 4:3.3.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxtst6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), kdebase-data
+Suggests: khelpcenter, kicker-applets, menu
+Conflicts: kdebase-libs (<< 4:3.0.0)
+Filename: pool/main/k/kdebase/kicker_3.3.0-1_i386.deb
+Size: 2170540
+MD5sum: 33bc4e5452b088073aa555a05a280d28
+Description: KDE Desktop Panel
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ Kicker provides the KDE panel on you desktop. It can be used as a
+ program launcher and can load plugins to provide additional
+ functionality.
+ .
+ This package is part of the official KDE base module.
+
+Package: dpkg
+Essential: yes
+Priority: required
+Section: base
+Installed-Size: 3868
+Maintainer: Dpkg Development <debian-dpkg@lists.debian.org>
+Architecture: i386
+Version: 1.10.23
+Replaces: dpkg-doc-ja, dpkg-static, manpages-de (<= 0.4-3)
+Pre-Depends: dselect, libc6 (>= 2.3.2.ds1-4)
+Conflicts: sysvinit (<< 2.82-1), dpkg-iasearch (<< 0.11), dpkg-static, dpkg-dev (<< 1.10)
+Filename: pool/main/d/dpkg/dpkg_1.10.23_i386.deb
+Size: 1341122
+MD5sum: d6498369a2404180e10950ff1162ccec
+Description: Package maintenance system for Debian
+ This package contains the programs which handle the installation and
+ removal of packages on your system.
+ .
+ The primary interface for the dpkg suite is the `dselect' program;
+ a more low-level and less user-friendly interface is available in
+ the form of the `dpkg' command.
+ .
+ In order to unpack and build Debian source packages you will need to
+ install the developers' package `dpkg-dev' as well as this one.
+Origin: debian
+Bugs: debbugs://bugs.debian.org
+
+Package: bsdutils
+Essential: yes
+Priority: required
+Section: base
+Installed-Size: 156
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Source: util-linux (2.12-7)
+Version: 1:2.12-7
+Pre-Depends: libc6 (>= 2.3.2.ds1-4)
+Recommends: bsdmainutils
+Filename: pool/main/u/util-linux/bsdutils_2.12-7_i386.deb
+Size: 62392
+MD5sum: f442cfc7f8d3d42cae254ab4269b030d
+Description: Basic utilities from 4.4BSD-Lite
+ This package contains the bare minimum number of BSD utilities needed
+ to boot a Debian system. You should probably also install
+ bsdmainutils to get the remaining standard BSD utilities.
+ .
+ Included are: logger, renice, replay, script, wall
+
+Package: libxslt1
+Priority: optional
+Section: libs
+Installed-Size: 120
+Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs@lists.alioth.debian.org>
+Architecture: i386
+Source: libxslt
+Version: 1.1.8-4
+Depends: libc6 (>= 2.3.2.ds1-4), libxslt1.1 (= 1.1.8-4)
+Filename: pool/main/libx/libxslt/libxslt1_1.1.8-4_i386.deb
+Size: 65152
+MD5sum: 7d45026ed20cfea8a1ff344a8c3b89e7
+Description: XSLT processing library - runtime library
+ XSLT is an XML language for defining transformations of XML files from
+ XML to some other arbitrary format, such as XML, HTML, plain text, etc.
+ using standard XSLT stylesheets. libxslt is a C library which
+ implements XSLT.
+ .
+ This package contains the deprecated libxsltbreakpoint library, and
+ exists only to transition to the new libxslt1.1 package.
+
+Package: libscrollkeeper0
+Priority: optional
+Section: libs
+Installed-Size: 544
+Maintainer: Gustavo Noronha Silva <kov@debian.org>
+Architecture: i386
+Source: scrollkeeper
+Version: 0.3.14-9
+Replaces: scrollkeeper (<= 0.1.4-4)
+Depends: libc6 (>= 2.3.2.ds1-4), libxml2 (>= 2.6.11), libxslt1.1 (>= 1.1.8), zlib1g (>= 1:1.2.1)
+Filename: pool/main/s/scrollkeeper/libscrollkeeper0_0.3.14-9_i386.deb
+Size: 148582
+MD5sum: bfa7bc2b170cd9f71fff53869327d424
+Description: Library to load .omf files (runtime files)
+ It stores metadata specified by the http://www.ibiblio.org/osrt/omf/ (Open
+ Source Metadata Framework) as well as certain metadata extracted directly
+ from documents (such as the table of contents).
+ .
+ It provides various functionality pertaining to this metadata to help
+ browsers, such as sorting the registered documents or searching the
+ metadata for documents which satisfy a set of criteria.
+
+Package: libesd0
+Priority: optional
+Section: libs
+Installed-Size: 84
+Maintainer: Ryan Murray <rmurray@debian.org>
+Architecture: i386
+Source: esound
+Version: 0.2.34-1
+Depends: libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), esound-common (>= 0.2.34-1)
+Recommends: esound-clients
+Suggests: esound
+Conflicts: esound (<< 0.2.23-1)
+Filename: pool/main/e/esound/libesd0_0.2.34-1_i386.deb
+Size: 17320
+MD5sum: f6fb72db2ff0790a76507cfe0eb15c3d
+Description: Enlightened Sound Daemon - Shared libraries
+ This program is designed to mix together several digitized
+ audio streams for playback by a single device.
+ .
+ This package is for use with OSS sound drivers.
+
+Package: kdepasswd
+Priority: optional
+Section: utils
+Installed-Size: 428
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libkonq4 (>= 4:3.3.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Filename: pool/main/k/kdebase/kdepasswd_3.3.0-1_i386.deb
+Size: 218708
+MD5sum: 1fb64b3e3c61bd9bf18d02588241d90f
+Description: KDE password changer
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ This is a simple app for users to change their system passwords with.
+ .
+ This package is part of the official KDE base module.
+
+Package: deborphan
+Priority: optional
+Section: admin
+Installed-Size: 176
+Maintainer: Peter Palfrader <weasel@debian.org>
+Architecture: i386
+Version: 1.7.11
+Depends: libc6 (>= 2.2.4-4), dialog (>= 0.9b-20040316-1), bash (>= 2.05b-14), gettext-base
+Recommends: apt
+Filename: pool/main/d/deborphan/deborphan_1.7.11_i386.deb
+Size: 54226
+MD5sum: a68b724b55ac992ebde2ec1ea5766d9c
+Description: Find orphaned libraries
+ deborphan finds "orphaned" packages on your system.
+ It determines which packages have no other packages
+ depending on their installation, and shows you a list of
+ these packages. It is most useful when finding libraries,
+ but it can be used on packages in all sections.
+
+Package: gksu
+Priority: optional
+Section: admin
+Installed-Size: 256
+Maintainer: Gustavo Noronha Silva <kov@debian.org>
+Architecture: i386
+Version: 1.2.1-1
+Replaces: gnome-sudo, libgksu0
+Provides: gnome-sudo
+Depends: libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libgksu1.2-0, libgksuui1.0-0, libglib2.0-0 (>= 2.4.1), libgtk2.0-0 (>= 2.4.4), libpango1.0-0 (>= 1.4.0), libx11-6 | xlibs (>> 4.1.0)
+Conflicts: gnome-sudo (<= 0.3-1.1)
+Filename: pool/main/g/gksu/gksu_1.2.1-1_i386.deb
+Size: 44166
+MD5sum: 34c4bcca6606636110a0e79c1e414abd
+Description: graphical frontend to su
+ gksu is a Gtk+ frontend to /bin/su. It supports login shells
+ and preserving environment when acting as a su frontend. It
+ is useful to menu items or other graphical programs that need
+ to ask a user's password to run another program as another user.
+
+Package: locales
+Priority: standard
+Section: base
+Installed-Size: 10360
+Maintainer: GNU Libc Maintainers <debian-glibc@lists.debian.org>
+Architecture: all
+Source: glibc
+Version: 2.3.2.ds1-16
+Replaces: localebin, wg15-locale, libc6-bin, i18ndata, glibc2, locale-ja, locale-ko, locale-vi, locale-zh
+Provides: i18ndata
+Depends: glibc-2.3.2.ds1-16, debconf (>= 0.2.26)
+Conflicts: localebin, wg15-locale, i18ndata, locale-ja, locale-ko, locale-vi, locale-zh
+Filename: pool/main/g/glibc/locales_2.3.2.ds1-16_all.deb
+Size: 3980754
+MD5sum: 1683e1bcb12dd7670442625746c5b18f
+Description: GNU C Library: National Language (locale) data [support]
+ Machine-readable data files, shared objects and programs used by the
+ C library for localization (l10n) and internationalization (i18n) support.
+ .
+ This package contains the libc.mo i18n files, plus tools to generate
+ locale definitions from source files (included in this package). It allows
+ you to customize which definitions actually get generated. This is a
+ savings over how this package used to be, where all locales were generated
+ by default. This created a package that unpacked to an excess of 30 megs.
+Task: norwegian, swedish, turkish
+
+Package: mount
+Essential: yes
+Priority: required
+Section: base
+Installed-Size: 304
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Source: util-linux
+Version: 2.12-7
+Pre-Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/u/util-linux/mount_2.12-7_i386.deb
+Size: 134536
+MD5sum: b75a691b3b1ac9c35555b735d6307f8e
+Description: Tools for mounting and manipulating filesystems
+ This package provides the mount(8), umount(8), swapon(8),
+ swapoff(8), and losetup(8) commands.
+
+Package: libpopt0
+Priority: important
+Section: base
+Installed-Size: 436
+Maintainer: Paul Martin <pm@debian.org>
+Architecture: i386
+Source: popt
+Version: 1.7-5
+Replaces: popt
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: popt, libpopt-dev (<= 1.4-1), rpm (<= 4.0.2-3)
+Filename: pool/main/p/popt/libpopt0_1.7-5_i386.deb
+Size: 30192
+MD5sum: d48e383868129e5e2c86e4c7c7d9f64b
+Description: lib for parsing cmdline parameters
+ Popt was heavily influenced by the getopt() and getopt_long() functions,
+ but it allows more powerful argument expansion. It can parse arbitrary
+ argv[] style arrays and automatically set variables based on command
+ line arguments. It also allows command line arguments to be aliased via
+ configuration files and includes utility functions for parsing arbitrary
+ strings into argv[] arrays using shell-like rules.
+ .
+ This package contains the runtime library and locale data.
+
+Package: wget
+Priority: optional
+Section: web
+Installed-Size: 1456
+Maintainer: Noèl Köthe <noel@debian.org>
+Architecture: i386
+Version: 1.9.1-4
+Depends: libc6 (>= 2.3.2.ds1-4), libssl0.9.7
+Conflicts: wget-ssl
+Filename: pool/main/w/wget/wget_1.9.1-4_i386.deb
+Size: 424164
+MD5sum: d9403e02437536a9835dbdee9eab77b3
+Description: retrieves files from the web
+ Wget is a network utility to retrieve files from the Web
+ using http and ftp, the two most widely used Internet
+ protocols. It works non-interactively, so it will work in
+ the background, after having logged off. The program supports
+ recursive retrieval of web-authoring pages as well as ftp
+ sites -- you can use wget to make mirrors of archives and
+ home pages or to travel the Web like a WWW robot.
+ .
+ Wget works particularly well with slow or unstable connections
+ by continuing to retrieve a document until the document is fully
+ downloaded. Re-getting files from where it left off works on
+ servers (both http and ftp) that support it. Both http and ftp
+ retrievals can be time stamped, so wget can see if the remote
+ file has changed since the last retrieval and automatically
+ retrieve the new version if it has.
+ .
+ Wget supports proxy servers; this can lighten the network load,
+ speed up retrieval, and provide access behind firewalls.
+ .
+ http://www.gnu.org/software/wget/
+
+Package: wmload
+Priority: optional
+Section: x11
+Installed-Size: 52
+Maintainer: Marcelo Magallon <mmagallo@debian.org>
+Architecture: i386
+Version: 0.9.2-9
+Depends: libc6 (>= 2.2.4-4), xlibs (>> 4.1.0)
+Suggests: wmaker
+Filename: pool/main/w/wmload/wmload_0.9.2-9_i386.deb
+Size: 13962
+MD5sum: ae8f8004dd14e4d110b2de5ad7542d27
+Description: system load monitor designed for Window Maker
+ wmload displays a graphical representation of the kernel/system
+ statistics on a 64x64 miniwindow. There are three shades in the
+ window: the light one, which corresponds to user statistics, second
+ is the nice time statistics, and the darkest one is system statistics.
+ .
+ It works with other window managers, there isn't anything in the program to
+ make it require Window Maker, except maybe the look.
+
+Package: dfontmgr
+Priority: optional
+Section: admin
+Installed-Size: 296
+Maintainer: Angus Lees <gus@debian.org>
+Architecture: all
+Source: defoma
+Version: 0.11.8-0.1
+Depends: defoma (>= 0.10.0), libft-perl, perl (>= 5.6.0-16), libglade-perl, libgtk-perl
+Filename: pool/main/d/defoma/dfontmgr_0.11.8-0.1_all.deb
+Size: 41180
+MD5sum: 15d1426217e3e5cffa60248b65471b4b
+Description: GUI frontend for Defoma, DEbian FOnt MAnager
+ dfontmgr is a GUI frontend for Defoma. You can see the fonts registered
+ to Defoma, their hints, their status (which applications they have succeeded
+ or failed to register), the applications using Defoma framework and
+ information about the applications and the contents of their id-caches.
+ You can also register a font by drag-and-drop a font file, unregister a
+ registered font, change the hints of and re-register a registered font.
+ If a defoma-aware application uses an id-cache and if there's an identifier
+ conflict (which means some fonts provides the same identifier) in the
+ id-cache, you can indicate which font should provide the identifier.
+ .
+ GUI versions of some utilities in Defoma and psfontmgr are also installed.
+
+Package: libvorbisfile3
+Priority: optional
+Section: libs
+Installed-Size: 48
+Maintainer: Christopher L Cheney <ccheney@debian.org>
+Architecture: i386
+Source: libvorbis
+Version: 1.0.1-1
+Replaces: libvorbis0 (<< 1.0.0)
+Depends: libc6 (>= 2.3.2.ds1-4), libogg0 (>= 1.1.0), libvorbis0a (>= 1.0.1)
+Conflicts: libvorbis0 (<< 1.0.0)
+Filename: pool/main/libv/libvorbis/libvorbisfile3_1.0.1-1_i386.deb
+Size: 18758
+MD5sum: d73bf451c3387788f169f70fd4a3fc2c
+Description: The Vorbis General Audio Compression Codec
+ Ogg Vorbis is a fully open, non-proprietary, patent-and-royalty-free,
+ general-purpose compressed audio format for audio and music at fixed
+ and variable bitrates from 16 to 128 kbps/channel.
+ .
+ The Vorbisfile library provides a convenient high-level API for decoding
+ and basic manipulation of all Vorbis I audio streams.
+
+Package: recode
+Priority: optional
+Section: text
+Installed-Size: 644
+Maintainer: Santiago Vila <sanvila@debian.org>
+Architecture: i386
+Version: 3.6-10
+Depends: libc6 (>= 2.2.4-4), librecode0 (>= 3.6)
+Filename: pool/main/r/recode/recode_3.6-10_i386.deb
+Size: 178394
+MD5sum: c050005a97ae82dd2a322a54fc0be4a9
+Description: Character set conversion utility
+ Free `recode' converts files between character sets and usages. When
+ exact transliterations are not possible, it may get rid of the
+ offending characters or fall back on approximations. This program
+ recognizes or produces nearly 300 different character sets and is able
+ to transliterate files between almost any pair. Most RFC 1345
+ character sets, and all `libiconv' character sets, are supported.
+
+Package: reportbug
+Priority: standard
+Section: utils
+Installed-Size: 344
+Maintainer: Chris Lawrence <lawrencc@debian.org>
+Architecture: all
+Version: 2.64
+Depends: python2.3
+Recommends: python2.3-cjkcodecs | python2.3-iconvcodec
+Suggests: postfix | exim4 | mail-transport-agent, gnupg | pgp, debconf-utils (>> 1.1.0), debsums, file (>> 1.30)
+Filename: pool/main/r/reportbug/reportbug_2.64_all.deb
+Size: 104904
+MD5sum: 0dddfc0329cd965993f26e75ce8a3f63
+Description: Reports bugs in the Debian distribution
+ reportbug is a tool designed to make the reporting of bugs in Debian
+ and derived distributions relatively painless. Its features include:
+ .
+ * Integration with the mutt, af, and mh/nmh mail readers.
+ * Access to outstanding bug reports to make it easier to identify
+ whether problems have already been reported.
+ * Automatic checking for newer versions of packages.
+ * Optional automatic verification of integrity of packages via debsums.
+ * Support for following-up on outstanding reports.
+ * Optional PGP/GnuPG integration.
+ .
+ reportbug is designed to be used on systems with an installed mail
+ transport agent, like exim or sendmail; however, you can edit the
+ configuration file and send reports using any available mail server.
+ .
+ If your system's users use locales with character sets other than
+ UTF-8 and ISO-8859-*, one of either python2.3-cjkcodecs or
+ python2.3-iconvcodec is required for proper operation. For Asian
+ locales, the use of python2.3-cjkcodecs is preferred over the more
+ limited python2.3-iconvcodec.
+
+Package: ibritish
+Priority: standard
+Section: text
+Installed-Size: 1169
+Maintainer: David Coe <davidc@debian.org>
+Architecture: i386
+Source: ispell
+Version: 3.1.20.0-4
+Provides: ispell-dictionary
+Depends: ispell, debconf, dictionaries-common (>= 0.20), debconf (>= 0.5) | debconf-2.0
+Recommends: wbritish
+Conflicts: ispell (<< 3.1.18-2)
+Filename: pool/main/i/ispell/ibritish_3.1.20.0-4_i386.deb
+Size: 417488
+MD5sum: e2cbe5eea08a4e61452c2b702f0633fc
+Description: A British English dictionary for ispell
+ This is the britishmed+ dictionary, as supplied with
+ the source for ispell, with additional words added from
+ the more comprehensive wbritish wordlist package.
+ .
+ This package also recommends wbritish because ispell's
+ (L)ookup command needs a wordlist.
+
+Package: khelpcenter
+Priority: optional
+Section: kde
+Installed-Size: 1572
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase-doc (<< 4:3.0.0), konqueror (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libjpeg62, libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Filename: pool/main/k/kdebase/khelpcenter_3.3.0-1_i386.deb
+Size: 708128
+MD5sum: 77aa395669a48685b5135d7ef7bfc848
+Description: KDE Help Center
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ The KDE Help center provides help on how to use the KDE desktop.
+ .
+ This package is part of the official KDE base module.
+
+Package: flac
+Priority: optional
+Section: sound
+Installed-Size: 4116
+Maintainer: Matt Zimmerman <mdz@debian.org>
+Architecture: i386
+Version: 1.1.0-11
+Depends: libc6 (>= 2.3.2.ds1-4), libflac4, libogg0 (>= 1.1.0), liboggflac1
+Filename: pool/main/f/flac/flac_1.1.0-11_i386.deb
+Size: 514810
+MD5sum: efd3c9b06d56996da57bc7c38ed461ae
+Description: Free Lossless Audio Codec - command line tools
+ FLAC stands for Free Lossless Audio Codec. Grossly oversimplified, FLAC is
+ similar to MP3, but lossless. The FLAC project consists of:
+ .
+ * The stream format
+ * libFLAC, which implements a reference encoder, stream decoder, and file
+ decoder
+ * flac, which is a command-line wrapper around libFLAC to encode and decode
+ .flac files
+ * Input plugins for various music players (Winamp, XMMS, and more in the
+ works)
+ .
+ This package contains the command-line tool, flac
+
+Package: diffstat
+Priority: optional
+Section: devel
+Installed-Size: 80
+Maintainer: Greg Norris <adric@debian.org>
+Architecture: i386
+Version: 1.34-1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/d/diffstat/diffstat_1.34-1_i386.deb
+Size: 15248
+MD5sum: 71b0c05884719fd0492fada212ca19d9
+Description: produces graph of changes introduced by a diff file
+ This program is a simple that reads the output of the 'diff' program,
+ and produces a histogram of the total number of lines that were changed.
+ It is useful for scanning a patch file to see which files were changed.
+
+Package: flex
+Priority: standard
+Section: devel
+Installed-Size: 764
+Maintainer: Manoj Srivastava <srivasta@debian.org>
+Architecture: i386
+Version: 2.5.31-27
+Depends: libc6 (>= 2.3.2.ds1-4), m4
+Recommends: gcc | c-compiler
+Suggests: bison
+Filename: pool/main/f/flex/flex_2.5.31-27_i386.deb
+Size: 257098
+MD5sum: 11265df6f0e8fdd5242ca326d68b132e
+Description: A fast lexical analyzer generator.
+ flex is a tool for generating scanners: programs which recognized lexical
+ patterns in text. flex reads the given input files for a description of a
+ scanner to generate. The description is in the form of pairs of regular
+ expressions and C code, called rules. flex generates as output a C source
+ file, lex.yy.c, which defines a routine yylex(). This file is compiled
+ and linked with the -lfl library to produce an executable. When the
+ executable is run, it analyzes its input for occurrences of the regular
+ expressions. Whenever it finds one, it executes the corresponding C code.
+ .
+ The behaviour of Flex has undergone a major change since version
+ 2.5.4a; Flex scanners are now reenterant, you may have multiple
+ scanners in the same program with differing sets of defaults, and
+ they play nicer with modern C and C++ compilers. The Flip side is
+ that Flex no longer conforms to the POSIX lex behaviour, and the
+ scanners require conforming implementations when flex is used in ANSI
+ C mode. The package flex-old provides the older behaviour.
+ .
+ This product includes software developed by the University of California,
+ Berkeley and its contributors. The upstream source code can be found at
+ http://prdownloads.sourceforge.net/lex/flex-2.5.31.tar.bz2?download
+ The project web page is at http://lex.sf.net/
+
+Package: libfam0c102
+Priority: optional
+Section: libs
+Installed-Size: 104
+Maintainer: Joerg Wendland <joergland@debian.org>
+Architecture: i386
+Source: fam
+Version: 2.7.0-5
+Replaces: libfam0
+Provides: libfam0
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.2-1), libstdc++5 (>= 1:3.3.2-1)
+Recommends: fam
+Conflicts: libfam0
+Filename: pool/main/f/fam/libfam0c102_2.7.0-5_i386.deb
+Size: 25188
+MD5sum: 6aa610add06ce4c5c6dffbd885549270
+Description: client library to control the FAM daemon
+ FAM monitors files and directories, notifying interested applications
+ of changes.
+ .
+ This package provides a shared library to allow programs to connect to
+ the FAM daemon and ask for files to be monitored.
+
+Package: mozilla
+Priority: optional
+Section: web
+Installed-Size: 24
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Version: 2:1.7.2-4
+Replaces: mozilla-dmotif, mozilla-smotif
+Depends: mozilla-browser (= 2:1.7.2-4), mozilla-mailnews (= 2:1.7.2-4), mozilla-psm (= 2:1.7.2-4), dpkg (>= 1.10.9)
+Suggests: mozilla-chatzilla (= 2:1.7.2-4)
+Conflicts: galeon (<< 1.2.8-3), skipstone (<< 0.8.3-4)
+Filename: pool/main/m/mozilla/mozilla_1.7.2-4_i386.deb
+Size: 1030
+MD5sum: 74c1ce315e39b8718a0253d4a439fe8b
+Description: The Mozilla Internet application suite - meta package
+ This is a meta package that depends on the main components of the
+ mozilla web browser. It is here to ease upgrades, installations, and
+ provide a consistent upgrade path from previous versions.
+ .
+ It can safely be removed with no ill effects.
+
+Package: fping
+Priority: optional
+Section: net
+Installed-Size: 108
+Maintainer: Anibal Monsalve Salazar <A.Monsalve.Salazar@IEEE.org>
+Architecture: i386
+Version: 2.4b2-to-ipv6-8
+Replaces: netstd
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: suidmanager (<< 0.50)
+Filename: pool/main/f/fping/fping_2.4b2-to-ipv6-8_i386.deb
+Size: 29070
+MD5sum: b22796dbc26cc8b7b3b59e05557c153e
+Description: sends ICMP ECHO_REQUEST packets to network hosts
+ fping is a ping like program which uses the Internet Control Message Protocol
+ (ICMP) echo request to determine if a target host is responding. fping
+ differs from ping in that you can specify any number of targets on the command
+ line, or specify a file containing the lists of targets to ping. Instead of
+ sending to one target until it times out or replies, fping will send out a
+ ping packet and move on to the next target in a round-robin fashion.
+
+Package: pantomime1
+Priority: optional
+Section: libs
+Installed-Size: 600
+Maintainer: Matthias Klose <doko@debian.org>
+Architecture: i386
+Source: pantomime
+Version: 1.1.2-2
+Depends: libgnustep-base1 (>= 1.9.2), libc6 (>= 2.3.2.ds1-4), libssl0.9.7
+Filename: pool/main/p/pantomime/pantomime1_1.1.2-2_i386.deb
+Size: 215890
+MD5sum: 948dc268d801fe0bc0ca2ab709a86c76
+Description: Objective-C library for mail handling (development files)
+ Pantomime provides a set of Objective-C classes that model a mail
+ system. Pantomime can be seen as a JavaMail 1.2 clone written in
+ Objective-C.
+
+Package: passwd
+Priority: required
+Section: base
+Installed-Size: 1161
+Maintainer: Karl Ramm <kcr@debian.org>
+Architecture: i386
+Source: shadow
+Version: 1:4.0.3-30.1
+Replaces: manpages (<= 1.15-2), manpages-de (<= 0.4-4), manpages-fr, manpages-hu, manpages-ja, manpages-ko, manpages-it
+Depends: libc6 (>= 2.3.2.ds1-4), libpam0g (>= 0.76), login (>= 970502-1), libpam-modules (>= 0.72-5)
+Conflicts: shadow-passwd, pam-apps, suidregister (<< 0.50), debconf (<< 0.5)
+Filename: pool/main/s/shadow/passwd_4.0.3-30.1_i386.deb
+Size: 506436
+MD5sum: 4b6e21dc1b8d60c1715e5fa981d12449
+Description: Change and administer password and group data
+ This package includes passwd, chsh, chfn, and many other programs to
+ maintain password and group data.
+ .
+ Shadow passwords are supported. See /usr/share/doc/passwd/README.Debian
+
+Package: cron
+Priority: important
+Section: admin
+Installed-Size: 272
+Maintainer: Steve Greenland <stevegr@debian.org>
+Architecture: i386
+Version: 3.0pl1-86
+Depends: libc6 (>= 2.3.2.ds1-4), libpam0g (>= 0.76), debianutils (>= 1.7), adduser
+Recommends: exim4 | postfix | mail-transport-agent
+Suggests: anacron (>= 2.0-1), logrotate, lockfile-progs, checksecurity
+Conflicts: suidmanager (<< 0.50), lockfile-progs (<< 0.1.7)
+Filename: pool/main/c/cron/cron_3.0pl1-86_i386.deb
+Size: 59036
+MD5sum: 0f71c493a4212355ce4e242e36cd19d0
+Description: management of regular background processing
+ cron is a background process (`daemon') that runs programs at regular
+ intervals (for example, every minute, day, week or month); which
+ processes are run and at what times are specified in the `crontab'.
+ .
+ Users may also install crontabs so that processes are run on
+ their behalf, though this feature can be disabled or restricted to
+ particular users.
+ .
+ Output from the commands is usually mailed to the system administrator
+ (or to the user in question); you should probably install a mail system
+ as well so that you can receive these messages.
+ .
+ This cron package is configured by default to do various standard
+ system maintenance tasks, such as ensuring that logfiles do not
+ grow endlessly and overflow the disk.
+ .
+ The lockfile-progs package is only a "Suggests" because of the poor
+ way that dselect handles "Recommends", but I do strongly suggest that
+ you install it; it prevents /etc/cron.daily/standard from running multiple
+ times if something gets jammed.
+
+Package: malsync
+Priority: optional
+Section: otherosfs
+Installed-Size: 204
+Maintainer: Ludovic Rousseau <rousseau@debian.org>
+Architecture: i386
+Version: 2.2.0-1
+Depends: libc6 (>= 2.3.2-1), libpisock8
+Recommends: pilot-link, wget
+Suggests: jpilot-syncmal, jpilot
+Filename: pool/main/m/malsync/malsync_2.2.0-1_i386.deb
+Size: 57428
+MD5sum: d2d5ad36a70417d5efff55e9123dc811
+Description: Allows a PalmOS PDA to synchronize to a MAL server
+ MalSync is a command line tool that allows Palm Pilots to synchronize
+ to the AvantGo (http://www.avantgo.com/) or Puma Technologies
+ (http://www.pumatech.com/is_desktop_main.html) servers or any other
+ Mobile Application Link (MAL) server.
+ .
+ Homepage: http://www.tomw.org/malsync/
+
+Package: xmms
+Priority: optional
+Section: sound
+Installed-Size: 6108
+Maintainer: Josip Rodin <joy-packages@debian.org>
+Architecture: i386
+Version: 1.2.10-1
+Replaces: x11ampg, x11amp, xmms-vorbis, alsa-xmms
+Provides: mp3-decoder, x11ampg, x11amp, xmms-vorbis, alsa-xmms
+Depends: libc6 (>= 2.3.2.ds1-4), libglib1.2 (>= 1.2.0), libgtk1.2 (>= 1.2.10-4), xlibs (>> 4.1.0) | libice6, xlibs (>> 4.1.0) | libsm6, xlibs (>> 4.1.0) | libx11-6, xlibs (>> 4.1.0) | libxext6, xlibs (>> 4.1.0) | libxi6
+Recommends: libasound2 (>> 1.0.0), libaudiofile0 (>= 0.2.3-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libmikmod2 (>= 3.1.10), libogg0 (>= 1.1.0), libvorbis0a (>= 1.0.1), libvorbisfile3 (>= 1.0.1), xlibmesa3-gl | libgl1, zlib1g (>= 1:1.2.1)
+Suggests: unzip
+Conflicts: x11ampg, x11amp, xmms-vorbis, alsa-xmms
+Filename: pool/main/x/xmms/xmms_1.2.10-1_i386.deb
+Size: 2012904
+MD5sum: 7c5ea11508e1e232eba0679987dc0543
+Description: Versatile X audio player that looks like Winamp
+ X MultiMedia System is a player for various audio formats,
+ with a customizable interface based on X/GTK+.
+ .
+ It's able to read and play:
+ * Audio MPEG layer 1, 2, and 3 (with mpg123 plug-in),
+ * Ogg Vorbis files (with the Ogg Vorbis plug-in),
+ * CD Audio (with CDAudio plug-in), with CDDB support,
+ * WAV, RAW, AU (with internal wav plug-in and MikMod plug-in),
+ * MOD, XM, S3M, and other module formats (with MikMod plug-in),
+ * .cin files, id Software.
+ It has eSound, OSS, and disk writer support for outputting sound.
+ .
+ It looks almost the same as famous Winamp, and includes those neat
+ features like general purpose, visualization and effect plug-ins,
+ several of which come bundled, then spectrum analyzer, oscilloscope,
+ skins support, and of course, a playlist window.
+
+Package: libesmtp5
+Priority: optional
+Section: libs
+Installed-Size: 612
+Maintainer: Jeremy T. Bouse <jbouse@debian.org>
+Architecture: i386
+Source: libesmtp
+Version: 1.0.3-1
+Replaces: libesmtp1
+Depends: libc6 (>= 2.3.2.ds1-4), libssl0.9.7
+Conflicts: libesmtp1 (<= 0.8.0-1)
+Filename: pool/main/libe/libesmtp/libesmtp5_1.0.3-1_i386.deb
+Size: 53152
+MD5sum: 006c945d94676104d161ae96acb277b3
+Description: LibESMTP SMTP client library
+ LibESMTP is a library to manage posting (or submission of) electronic
+ mail using SMTP to a preconfigured Mail Transport Agent (MTA) such as
+ Exim. It may be used as part of a Mail User Agent (MUA) or another
+ program that must be able to post electronic mail but where mail
+ functionality is not the program's primary purpose.
+
+Package: gdb
+Priority: standard
+Section: devel
+Installed-Size: 5036
+Maintainer: Daniel Jacobowitz <dan@debian.org>
+Architecture: i386
+Version: 6.1-3
+Replaces: gdb-arm, insight (<< 6.1+cvs.2004.04.07-1)
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), libreadline4 (>= 4.3-1)
+Conflicts: gdb-arm
+Filename: pool/main/g/gdb/gdb_6.1-3_i386.deb
+Size: 2530612
+MD5sum: d9da27629f67eb0e8d461065fed67630
+Description: The GNU Debugger
+ GDB is a source-level debugger, capable of breaking programs at
+ any specific line, displaying variable values, and determining
+ where errors occurred. Currently, it works for C, C++, Fortran
+ Modula 2 and Java programs. A must-have for any serious
+ programmer.
+
+Package: libartsc0
+Priority: optional
+Section: libs
+Installed-Size: 44
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: arts
+Version: 1.3.0-1
+Replaces: libarts (<< 4:3.0.0), libarts-alsa (<< 4:3.0.0)
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libarts (<< 4:3.0.0), libarts-alsa (<< 4:3.0.0)
+Filename: pool/main/a/arts/libartsc0_1.3.0-1_i386.deb
+Size: 12634
+MD5sum: bf6bcccc458a7199acbcd2c9c844537b
+Description: aRts Sound system C support library
+ aRts is a short form for "analog realtime synthesizer". The idea of the whole
+ thing is to create/process sound using small modules which do certain tasks.
+ These may be create a waveform (oscillators), play samples, filter data, add
+ signals, perform effects like delay/flanger/chorus, or output the data to
+ the soundcard.
+ .
+ This package contains the C binding to the aRts sound daemon.
+ .
+ This package is part of the official KDE aRts module.
+
+Package: libmagick6
+Priority: optional
+Section: libs
+Installed-Size: 3754
+Maintainer: Ryuichi Arafune <arafune@debian.org>
+Architecture: i386
+Source: imagemagick
+Version: 5:6.0.7.1-1
+Replaces: libmagick, libmagick-lzw, libmagick5g, imagemagick (<= 5:6.0.1.2-1), libmagick5 (>= 4:5.5.1)
+Depends: libbz2-1.0, libc6 (>= 2.3.2.ds1-4), libdps1 (>> 4.1.0), libfreetype6 (>= 2.1.5-1), libice6 | xlibs (>> 4.1.0), libjasper-1.701-1 (>= 1.701.0), libjpeg62, liblcms1 (>= 1.08-1), libpng12-0 (>= 1.2.5.0-4), libsm6 | xlibs (>> 4.1.0), libtiff4, libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.11), libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Pre-Depends: dpkg (>= 1.6.8)
+Conflicts: libmagick, libmagick-lzw, libmagick5g, imagemagick (<= 5:6.0.1.2-1), libmagick5 (>= 4:5.5.1-1 ), libmagick6.0.1
+Filename: pool/main/i/imagemagick/libmagick6_6.0.7.1-1_i386.deb
+Size: 1174616
+MD5sum: cf7a51925b2459fb646e6856c43f23b9
+Description: Image manipulation library
+ LibMagick supports loading and saving a very large set of image formats.
+ It allows a lot of image manipulation as well.
+
+Package: libid3tag0
+Priority: optional
+Section: libs
+Installed-Size: 124
+Maintainer: Kyle McMartin <kyle@debian.org>
+Architecture: i386
+Source: libid3tag
+Version: 0.15.1b-3
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1)
+Filename: pool/main/libi/libid3tag/libid3tag0_0.15.1b-3_i386.deb
+Size: 34230
+MD5sum: 75099f6b56c9523c8d22fb4c797d23f4
+Description: ID3 tag reading library from the MAD project
+ ID3 tag manipulation library with full support for reading ID3v1, ID3v1.1,
+ ID3v2.2, ID3v2.3, and ID3v2.4 tags, as well as support for writing ID3v1,
+ ID3v1.1, and ID3v2.4 tags.
+
+Package: whiptail
+Priority: standard
+Section: base
+Installed-Size: 96
+Maintainer: Alastair McKinstry <mckinstry@debian.org>
+Architecture: i386
+Source: newt
+Version: 0.51.6-15
+Replaces: newt0.10, newt0.21 (<< 0.21-4), whiptail-utf8
+Provides: whiptail-provider, whiptail-utf8
+Depends: libc6 (>= 2.3.2.ds1-4), libnewt0.51, libpopt0 (>= 1.7), slang1a-utf8 (>> 1.4.9dbs-4), libnewt0.51 (= 0.51.6-15)
+Conflicts: whiptail-provider
+Filename: pool/main/n/newt/whiptail_0.51.6-15_i386.deb
+Size: 31698
+MD5sum: 516de954735615fe8308004d51e88dc1
+Description: Displays user-friendly dialog boxes from shell scripts
+ Whiptail is a "dialog" replacement using newt instead of ncurses. It
+ provides a method of displaying several different types of dialog boxes
+ from shell scripts. This allows a developer of a script to interact with
+ the user in a much friendlier manner.
+
+Package: libogg0
+Priority: optional
+Section: libs
+Installed-Size: 44
+Maintainer: Christopher L Cheney <ccheney@debian.org>
+Architecture: i386
+Source: libogg
+Version: 1.1.0-1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/libo/libogg/libogg0_1.1.0-1_i386.deb
+Size: 11928
+MD5sum: 8a19c33b4bee35b9afd6c94ad32fc129
+Description: Ogg Bitstream Library
+ Libogg is a library for manipulating ogg bitstreams. It handles
+ both making ogg bitstreams and getting packets from ogg bitstreams.
+
+Package: bind9
+Priority: optional
+Section: net
+Installed-Size: 704
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Version: 1:9.2.3+9.2.4-rc7-1
+Replaces: bind, dnsutils (<< 1:9.1.0-3)
+Depends: libc6 (>= 2.3.2.ds1-4), libdns11, libisc7, libisccc0, libisccfg0, liblwres1, libssl0.9.7, netbase, adduser, libdns11 (= 1:9.2.3+9.2.4-rc7-1), libisccfg0 (= 1:9.2.3+9.2.4-rc7-1), libisc7 (= 1:9.2.3+9.2.4-rc7-1), libisccc0 (= 1:9.2.3+9.2.4-rc7-1)
+Suggests: dnsutils, bind9-doc
+Conflicts: bind
+Filename: pool/main/b/bind9/bind9_9.2.3+9.2.4-rc7-1_i386.deb
+Size: 273144
+MD5sum: ba548e805d61eb1a85984b40b0128e00
+Description: Internet Domain Name Server
+ The Berkeley Internet Name Domain (BIND) implements an Internet domain
+ name server. BIND is the most widely-used name server software on the
+ Internet, and is supported by the Internet Software Consortium, www.isc.org.
+ .
+ This package provides the server and related configuration files.
+Task: dns-server
+
+Package: libisc7
+Priority: standard
+Section: libs
+Installed-Size: 332
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Source: bind9
+Version: 1:9.2.3+9.2.4-rc7-1
+Replaces: libbind0
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libbind0
+Filename: pool/main/b/bind9/libisc7_9.2.3+9.2.4-rc7-1_i386.deb
+Size: 153436
+MD5sum: 47976d8bd5a24ede905956f082a9dffc
+Description: ISC Shared Library used by BIND
+ The Berkeley Internet Name Domain (BIND) implements an Internet domain
+ name server. BIND is the most widely-used name server software on the
+ Internet, and is supported by the Internet Software Consortium, www.isc.org.
+ .
+ This package delivers the libisc shared library used by BIND's daemons and
+ clients.
+
+Package: kdeprint
+Priority: optional
+Section: utils
+Installed-Size: 1824
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0), kdebase-doc (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), enscript, gv, poster, psutils
+Suggests: khelpcenter, efax | hylafax-client | mgetty-fax
+Filename: pool/main/k/kdebase/kdeprint_3.3.0-1_i386.deb
+Size: 1061072
+MD5sum: 40295cc7397d716f2f9a588a2ff70caa
+Description: KDE Print
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This package contains the KDE printing subsystem. It can use Cups,
+ lpd-ng or the traditional lpd. It also includes support for fax and pdf
+ printing.
+ .
+ This package is part of the official KDE base module.
+
+Package: libmetacity0
+Priority: optional
+Section: libs
+Installed-Size: 284
+Maintainer: Akira TAGOH <tagoh@debian.org>
+Architecture: i386
+Source: metacity
+Version: 1:2.8.1-4
+Depends: libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libgconf2-4 (>= 2.6.2), libglib2.0-0 (>= 2.4.1), libgtk2.0-0 (>= 2.4.4), libice6 | xlibs (>> 4.1.0), liborbit2 (>= 1:2.10.0), libpango1.0-0 (>= 1.4.0), libsm6 | xlibs (>> 4.1.0), libstartup-notification0 (>= 0.0.5), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrandr2 | xlibs (>> 4.3.0)
+Filename: pool/main/m/metacity/libmetacity0_2.8.1-4_i386.deb
+Size: 137800
+MD5sum: 0c31ffc346c625d6dff03e76f18f430c
+Description: Common library of lightweight GTK2 based Window Manager
+ Metacity is a small window manager, using gtk2 to do everything.
+ .
+ As the author says, metacity is a "Boring window manager for the adult in
+ you. Many window managers are like Marshmallow Froot Loops; Metacity is
+ like Cheerios."
+ .
+ This package contains the common library.
+
+Package: pia
+Priority: extra
+Section: x11
+Installed-Size: 112
+Maintainer: Gerd Knorr <kraxel@debian.org>
+Architecture: i386
+Source: xawtv
+Version: 3.94-1
+Depends: libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libice6 | xlibs (>> 4.1.0), libjpeg62, libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxaw7 (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxmu6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), libxrandr2 | xlibs (>> 4.3.0), libxrender1, libxt6 | xlibs (>> 4.1.0), libxv1, xlibmesa-gl | libgl1, zlib1g (>= 1:1.2.1), xawtv-plugins (= 3.94-1)
+Filename: pool/main/x/xawtv/pia_3.94-1_i386.deb
+Size: 33944
+MD5sum: 384e58fe7025dbe13f1fd8b6b66f3644
+Description: movie player
+ This is a simple movie player. It is used by xawtv and motv to
+ playback movie files which are recorded from TV.
+
+Package: debconf
+Priority: important
+Section: admin
+Installed-Size: 1336
+Maintainer: Joey Hess <joeyh@debian.org>
+Architecture: all
+Version: 1.4.34
+Replaces: debconf-tiny
+Provides: debconf-2.0
+Depends: debconf-i18n | debconf-english
+Pre-Depends: perl-base (>= 5.6.1-4)
+Recommends: apt-utils (>= 0.5.1)
+Suggests: debconf-doc, debconf-utils, whiptail | dialog | gnome-utils, libterm-readline-gnu-perl, libgnome2-perl, libqt-perl, libnet-ldap-perl, perl
+Conflicts: cdebconf, debconf-tiny, apt (<< 0.3.12.1), menu (<= 2.1.3-1), dialog (<< 0.9b-20020814-1), whiptail (<< 0.51.4-11), whiptail-utf8 (<= 0.50.17-13), debconf-utils (<< 1.3.22)
+Filename: pool/main/d/debconf/debconf_1.4.34_all.deb
+Size: 99626
+MD5sum: 8f58d8270045919d4f708f8fce46a95c
+Description: Debian configuration management system
+ Debconf is a configuration management system for debian packages. Packages
+ use Debconf to ask questions when they are installed.
+
+Package: eog
+Priority: optional
+Section: gnome
+Installed-Size: 3060
+Maintainer: Davide Puricelli (evo) <evo@debian.org>
+Architecture: i386
+Version: 2.6.1-2
+Depends: libart-2.0-2 (>= 2.3.16), libatk1.0-0 (>= 1.6.0), libbonobo2-0 (>= 2.6.2), libbonoboui2-0 (>= 2.5.4), libc6 (>= 2.3.2.ds1-4), libeel2-2 (>= 2.6.2), libgail-common (>= 1.4.1), libgail17 (>= 1.4.1), libgconf2-4 (>= 2.6.4), libglade2-0 (>= 1:2.3.6), libglib2.0-0 (>= 2.4.6), libgnome2-0 (>= 2.6.1.1), libgnomecanvas2-0 (>= 2.6.0), libgnomeprint2.2-0 (>= 2.6.1-6), libgnomeprintui2.2-0 (>= 2.6.0), libgnomeui-0 (>= 2.6.0), libgnomevfs2-0 (>= 2.6.0), libgtk2.0-0 (>= 2.4.4), libice6 | xlibs (>> 4.1.0), libjpeg62, liborbit2 (>= 1:2.10.0), libpango1.0-0 (>= 1.4.1), libpopt0 (>= 1.7), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1)
+Conflicts: eog2
+Filename: pool/main/e/eog/eog_2.6.1-2_i386.deb
+Size: 709948
+MD5sum: 5f1961ed56985af63df9a599a83dc95e
+Description: Eye of Gnome graphics viewer program
+ eog or the Eye of Gnome is a graphics viewer for GNOME which uses the
+ gdk-pixbuf library. It can deal with large images, and zoom and
+ scroll with constant memory usage. The goal is a standard graphics
+ viewer for future releases of Gnome.
+
+Package: libxml1
+Priority: optional
+Section: libs
+Installed-Size: 568
+Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs@lists.alioth.debian.org>
+Architecture: i386
+Source: libxml
+Version: 1:1.8.17-8
+Replaces: libxml0
+Provides: libxml0
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1)
+Conflicts: libxml0
+Filename: pool/main/libx/libxml/libxml1_1.8.17-8_i386.deb
+Size: 219786
+MD5sum: 8278e354ed917c0bbdf0a4b3ebc7ade3
+Description: GNOME XML library
+ XML is a metalanguage to let you design your own markup language.
+ A regular markup language defines a way to describe information in
+ a certain class of documents (eg HTML). XML lets you define your
+ own customized markup languages for many classes of document. It
+ can do this because it's written in SGML, the international standard
+ metalanguage for markup languages.
+
+Package: liboaf0
+Priority: optional
+Section: libs
+Installed-Size: 176
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Source: oaf
+Version: 0.6.10-3
+Depends: libc6 (>= 2.3.1-1), libglib1.2 (>= 1.2.0), liborbit0 (>= 0.5.17), libpopt0 (>= 1.6.4)
+Filename: pool/main/o/oaf/liboaf0_0.6.10-3_i386.deb
+Size: 66128
+MD5sum: 94b023da31aed631b8246e7b1146c7ce
+Description: The GNOME Object Activation Framework.
+ OAF is the new Object Activation Framework for GNOME. OAF has a
+ similar purpose to gnorba, the GNOME 1.x CORBA activation library, and
+ will replace it for GNOME 2.0.
+ .
+ It allows you to do much more powerful activation queries than gnorba.
+ Each server is described by an XML file that defines its
+ attributes. When querying or activating, one may specify complex
+ requirements using the OAF query language.
+
+Package: libdb1
+Priority: optional
+Section: oldlibs
+Installed-Size: 128
+Maintainer: Francesco Paolo Lovergine <frankie@debian.org>
+Architecture: i386
+Source: libdb
+Version: 1.85.4-10
+Depends: libc5 (>= 5.4.46)
+Filename: pool/main/libd/libdb/libdb1_1.85.4-10_i386.deb
+Size: 36836
+MD5sum: 850d223a331983bb74277a16ce5cc6de
+Description: The Berkeley database routines (runtime version) [libc5 package]
+ libdb is a library for manipulating database files, developed at Berkeley.
+ .
+ It supports three kinds of file formats:
+ * btree. A representation of a sorted, balanced tree structure.
+ * hashed. An extensible, dynamic hashing scheme.
+ * UNIX file oriented. A byte stream file with fixed or variable length
+ records.
+
+Package: scrollkeeper
+Priority: optional
+Section: doc
+Installed-Size: 1248
+Maintainer: Gustavo Noronha Silva <kov@debian.org>
+Architecture: i386
+Version: 0.3.14-9
+Replaces: libscrollkeeper0 (<= 0.3.14-5), gnumeric (= 1.0.5-1)
+Depends: libc6 (>= 2.3.2.ds1-4), libscrollkeeper0 (>= 0.3.8), libxml2 (>= 2.6.11), libxslt1.1 (>= 1.1.8), zlib1g (>= 1:1.2.1), docbook-xml (>= 4.2-11)
+Suggests: logrotate
+Filename: pool/main/s/scrollkeeper/scrollkeeper_0.3.14-9_i386.deb
+Size: 144582
+MD5sum: c40290f313183e9cfad48fca86d54879
+Description: A free electronic cataloging system for documentation
+ It stores metadata specified by the http://www.ibiblio.org/osrt/omf/ (Open
+ Source Metadata Framework) as well as certain metadata extracted directly
+ from documents (such as the table of contents).
+ .
+ It provides various functionality pertaining to this metadata to help
+ browsers, such as sorting the registered documents or searching the
+ metadata for documents which satisfy a set of criteria.
+
+Package: librplay3
+Priority: optional
+Section: sound
+Installed-Size: 124
+Maintainer: lantz moore <lmoore@debian.org>
+Architecture: i386
+Source: rplay
+Version: 3.3.2-8
+Replaces: rplay (<< 3.3.2-2)
+Depends: libc6 (>= 2.2.4-4)
+Conflicts: rplay (<< 3.3.2-2)
+Filename: pool/main/r/rplay/librplay3_3.3.2-8_i386.deb
+Size: 42630
+MD5sum: 655b0ae3b2d4807c8f88b013380c61cf
+Description: Shared libraries for the rplay network audio system.
+ Contains shared libraries for the rplay network audio system.
+ .
+ RPlay allows sounds to be played to and from local and remote Unix
+ systems. Sounds can be played with or without sending audio data over
+ the network using either UDP or TCP/IP. RPlay audio servers can be
+ configured to share sound files with each other.
+ .
+ Support for RPlay is included in several applications. These include
+ xpilot, xlockmore, xboing, fvwm, and ctwm.
+
+Package: libpaperg
+Priority: optional
+Section: libs
+Installed-Size: 20
+Maintainer: Stephen Zander <gibreel@debian.org>
+Architecture: all
+Source: libpaper
+Version: 1.1.14-0.4
+Depends: libpaper1 (= 1.1.14-0.4), libpaper-utils (= 1.1.14-0.4)
+Filename: pool/main/libp/libpaper/libpaperg_1.1.14-0.4_all.deb
+Size: 774
+MD5sum: e2782765351aa243654115f7d4c0b75f
+Description: Library for handling paper characteristics (dummy package)
+ This is a dummy package to force the transition to the new naming
+ scheme. It can be safely deleted.
+
+Package: ucf
+Priority: optional
+Section: utils
+Installed-Size: 188
+Maintainer: Manoj Srivastava <srivasta@debian.org>
+Architecture: all
+Version: 1.08
+Filename: pool/main/u/ucf/ucf_1.08_all.deb
+Size: 34260
+MD5sum: eca62fbff1c5df323570d6134d8d9d3b
+Description: Update Configuration File: preserves user changes to config files.
+ Debian policy states that configuration files must preserve user
+ changes during package upgrade. The easy way to achieve this behavior
+ is to make the configuration file a `conffile', in which case dpkg
+ handles the file specially during upgrades, prompting the user as
+ needed.
+ .
+ This is appropriate only if it is possible to distribute a default
+ version that will work for most installations, although some system
+ administrators may choose to modify it. This implies that the
+ default version will be part of the package distribution, and must
+ not be modified by the maintainer scripts during installation (or at
+ any other time).
+ .
+ This script attempts to provide conffile like handling for files that
+ can not be labelled conffiles, are not shipped in a Debian package,
+ but handled by the postinst instead. This script allows one to
+ maintain files in /etc, preserving user changes and in general
+ offering the same facilities while upgrading that dpkg normally
+ provides for "conffiles".
+ .
+ Additionally, this script provides facilities for transitioning a
+ file that had not been provided conffile like protection to come
+ under this schema, and attempts to minimize questions asked at
+ install time. Indeed, the transitioning facility is better than the
+ one offered by dpkg while transitioning a file from a non-conffile to
+ conffile status.
+
+Package: debtags
+Priority: optional
+Section: admin
+Installed-Size: 344
+Maintainer: Enrico Zini <enrico@debian.org>
+Architecture: i386
+Version: 0.99.2
+Depends: apt, libapt-pkg-libc6.3-5-3.3, libc6 (>= 2.3.2.ds1-4), libdebtags0 (>= 0.9.1), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1), libtagcoll0 (>= 0.99)
+Filename: pool/main/d/debtags/debtags_0.99.2_i386.deb
+Size: 190480
+MD5sum: 4a65487a6993f77d1e6fecd5af1c22b3
+Description: Enables support for package tags
+ debtags provides a system to download a database of package tags and keep
+ it up to date. A package tag is a small label that gets attached to a
+ Debian package to represent one of his qualities.
+ .
+ A package tag database in the system can enable advanced package search
+ techniques, and advanced package browsing functions in programs that
+ support it.
+ .
+ This package has been made as a way to deploy and test package tags
+ support until it gets integrated in the normal Debian workflow.
+
+Package: xterm
+Priority: optional
+Section: x11
+Installed-Size: 1108
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xbase (<< 3.3.2.3a-2)
+Provides: x-terminal-emulator
+Depends: xlibs-data, libc6 (>= 2.3.2.ds1-4), libexpat1 (>= 1.95.6), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libice6 | xlibs (>> 4.1.0), libncurses5 (>= 5.4-1), libsm6 | xlibs (>> 4.1.0), libxaw7 (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxmu6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), libxrender1, libxt6 | xlibs (>> 4.1.0)
+Recommends: xutils
+Conflicts: xbase (<< 3.3.2.3a-2), suidmanager (<< 0.50)
+Filename: pool/main/x/xfree86/xterm_4.3.0.dfsg.1-7_i386.deb
+Size: 481828
+MD5sum: 3e5c99abdb23b754388c5fbe762be800
+Description: X terminal emulator
+ xterm is a terminal emulator for the X Window System. It provides DEC VT102
+ and Tektronix 4014 compatible terminals for programs that cannot use the
+ window system directly. This version implements ISO/ANSI colors and most of
+ the control sequences used by DEC VT220 terminals.
+ .
+ This package provides two commands: xterm, which is the traditional
+ terminal emulator, and uxterm, which is a wrapper around xterm that is
+ intelligent about locale settings (especially those which use the UTF-8
+ character encoding), but which requires the luit program from the xutils
+ package.
+ .
+ A complete list of control sequences supported by the X terminal emulator
+ is provided in /usr/share/doc/xterm.
+ .
+ The xterm program uses bitmap images provided by the xlibs-data package.
+
+Package: libdps1
+Priority: optional
+Section: libs
+Installed-Size: 628
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0)
+Filename: pool/main/x/xfree86/libdps1_4.3.0.dfsg.1-7_i386.deb
+Size: 270028
+MD5sum: b758502ff6dec9b6aa7bf635cd584d33
+Description: Display PostScript (DPS) client library
+ libdps provides client-side libraries for use with the Display Postscript
+ (DPS) system.
+ .
+ This package only provides the client-side interfaces to DPS. In order to
+ fully take advantage of it, DPS extension support is required in the X
+ server, for which there is currently no freely-licensed implementation.
+
+Package: libsm6
+Priority: optional
+Section: libs
+Installed-Size: 332
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0)
+Conflicts: xlibs (<< 4.3.0)
+Filename: pool/main/x/xfree86/libsm6_4.3.0.dfsg.1-7_i386.deb
+Size: 165176
+MD5sum: 63e04d0b1ace7e0fe6bd6ad0619ee68a
+Description: X Window System Session Management library
+ libSM provides an interface to XSMP, the X Session Management Protocol.
+ XSMP is a protocol that facilitates the management of groups of client
+ applications by a session manager. The session manager can cause clients to
+ save their state, to shut down, and to be restarted into a previously saved
+ state. This protocol is layered on top of the X Consortium's ICE protocol
+ (see the libice6 package).
+
+Package: pax
+Priority: optional
+Section: utils
+Installed-Size: 148
+Maintainer: Bdale Garbee <bdale@gag.com>
+Architecture: i386
+Version: 1:1.5-15
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/p/pax/pax_1.5-15_i386.deb
+Size: 53560
+MD5sum: 892fd0c90f9066de0cce86a590ea023a
+Description: Portable Archive Interchange
+ Pax is an archiving utility that reads and writes tar and cpio formats,
+ both the traditional ones and the extended formats specified in IEEE 1003.1.
+ It handles multi-volume archives and automatically determines the format
+ of an archive while reading it. Three user interfaces are
+ supported: tar, cpio, and pax. The pax interface was designed by IEEE
+ 1003.2 as a compromise in the chronic controversy over which of tar or
+ cpio is best.
+ .
+ This is the free OpenBSD's version written by Keith Muller.
+
+Package: fam
+Priority: optional
+Section: admin
+Installed-Size: 256
+Maintainer: Joerg Wendland <joergland@debian.org>
+Architecture: i386
+Version: 2.7.0-5
+Depends: portmap, libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.2-1), libstdc++5 (>= 1:3.3.2-1)
+Filename: pool/main/f/fam/fam_2.7.0-5_i386.deb
+Size: 68524
+MD5sum: 1bf44ea6f931176429198938b1a02bd8
+Description: File Alteration Monitor
+ FAM monitors files and directories, notifying interested applications
+ of changes.
+ .
+ This package provides a server that can monitor a given list of files
+ and notify applications through a socket. If the kernel supports dnotify
+ (kernels >= 2.4.x) FAM is notified directly by the kernel. Otherwise it has
+ to poll the files' status. FAM can also provide a RPC service for monitoring
+ remote files (such as on a mounted NFS filesystem).
+
+Package: eximon4
+Priority: optional
+Section: mail
+Installed-Size: 184
+Maintainer: Exim4 Maintainers <pkg-exim4-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Source: exim4
+Version: 4.34-5
+Replaces: eximon
+Depends: libc6 (>= 2.3.2.ds1-4), libpcre3 (>= 4.5), libx11-6 | xlibs (>> 4.1.0), libxaw7 (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0), exim4-base (>= 4.10)
+Conflicts: eximon
+Filename: pool/main/e/exim4/eximon4_4.34-5_i386.deb
+Size: 69544
+MD5sum: e8a93620b3d41acaa5fc2bd510cd95bc
+Description: X monitor for the Exim (v4) mail transport agent
+ This allows administrators to view the Exim agent's mail queue
+ and logs, and perform a variety of actions on queued messages,
+ such as freezing, bouncing and thawing messages.
+
+Package: dictzip
+Priority: optional
+Section: text
+Installed-Size: 124
+Maintainer: Kirk Hilliard <kirk@debian.org>
+Architecture: i386
+Source: dictd
+Version: 1.9.14-2
+Replaces: dictd (<< 1.7.1-1)
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1)
+Filename: pool/main/d/dictd/dictzip_1.9.14-2_i386.deb
+Size: 48740
+MD5sum: 331fe89ea7279f9e7e4e4048b84fbc92
+Description: Compression utility for dictionary databases
+ dictzip compresses files using the gzip(1) algorithm (LZ77) in a
+ manner which is completely compatible with the gzip file format. An
+ extension to the gzip file format allows for random access to chunks
+ of about 57kb without the overhead of decompressing the entire file.
+ This package also includes dictunzip to decompress dictzipped files
+ and dictzcat for viewing dictzipped files.
+
+Package: aspell
+Priority: optional
+Section: text
+Installed-Size: 64
+Maintainer: Brian Nelson <pyro@debian.org>
+Architecture: all
+Version: 0.50.5-3
+Depends: aspell-bin, aspell-en | aspell-dictionary
+Filename: pool/main/a/aspell/aspell_0.50.5-3_all.deb
+Size: 16180
+MD5sum: 91167083dddac454f595b39540bacf06
+Description: GNU Aspell spell-checker
+ GNU Aspell is a spell-checker which can be used either as a standalone
+ application or embedded in other programs. Its main feature is that it
+ does a much better job of suggesting possible spellings than just about
+ any other spell-checker available for the English language, including
+ Ispell and Microsoft Word. It also has many other technical
+ enhancements over Ispell such as using shared memory for dictionaries
+ and intelligently handling personal dictionaries when more than one
+ Aspell process is open at once.
+ .
+ Aspell is designed to be a drop-in replacement for Ispell.
+ .
+ This is a meta-package for installing the GNU Aspell standalone
+ utilities along with an Aspell dictionary.
+ .
+ Homepage: http://aspell.net/
+
+Package: liblircclient0
+Priority: extra
+Section: libs
+Installed-Size: 92
+Maintainer: Amaya Rodrigo Sastre <amaya@debian.org>
+Architecture: i386
+Source: lirc
+Version: 0.6.6-12
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: lirc
+Filename: pool/main/l/lirc/liblircclient0_0.6.6-12_i386.deb
+Size: 35444
+MD5sum: df9631d5ac0584e544e9ea8ded82e4ce
+Description: LIRC client library
+ This library provides functions so that other programs (eg xawtv)
+ can support remote controls via LIRC.
+
+Package: dialog
+Priority: optional
+Section: misc
+Installed-Size: 892
+Maintainer: Santiago Vila <sanvila@debian.org>
+Architecture: i386
+Version: 1.0-20040731-1
+Depends: libc6 (>= 2.3.2.ds1-4), libncursesw5 (>= 5.4-1), debianutils (>= 1.6)
+Filename: pool/main/d/dialog/dialog_1.0-20040731-1_i386.deb
+Size: 174092
+MD5sum: e9b07c481315980d198fc1bd594019e1
+Description: Displays user-friendly dialog boxes from shell scripts
+ This application provides a method of displaying several different types
+ of dialog boxes from shell scripts. This allows a developer of a script
+ to interact with the user in a much friendlier manner.
+ .
+ The following types of boxes are at your disposal:
+ yes/no Typical query style box with "Yes" and "No" answer buttons
+ menu A scrolling list of menu choices with single entry selection
+ input Query style box with text entry field
+ message Similar to the yes/no box, but with only an "Ok" button
+ text A scrollable text box that works like a simple file viewer
+ info A message display that allows asynchronous script execution
+ checklist Similar to the menu box, but allowing multiple selections
+ radiolist Checklist style box allowing single selections
+ gauge Typical "progress report" style box
+ tail Allows viewing the end of files (tail) that auto updates
+ background tail Similar to tail but runs in the background.
+
+Package: libxklavier8
+Priority: optional
+Section: libs
+Installed-Size: 504
+Maintainer: Filip Van Raemdonck <mechanix@debian.org>
+Architecture: i386
+Source: libxklavier
+Version: 1.03-1
+Replaces: libxklavier7
+Depends: libc6 (>= 2.3.2.ds1-4), libx11-6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1)
+Filename: pool/main/libx/libxklavier/libxklavier8_1.03-1_i386.deb
+Size: 99714
+MD5sum: 6089cbad029e307c29e866470bebe4e7
+Description: X Keyboard Extension high-level API
+ Libxklavier provides programmers an API for high(er) level access to the
+ X Keyboard Extension, to ease creating XKB related applications.
+
+Package: libkcal2
+Priority: optional
+Section: libs
+Installed-Size: 1596
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Replaces: kdepim-libs (<< 4:3.2.0)
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkdepim1 (>= 4:3.3.0), libstdc++5 (>= 1:3.3.4-1)
+Conflicts: kdepim-libs (<< 4:3.2.0)
+Filename: pool/main/k/kdepim/libkcal2_3.3.0-2_i386.deb
+Size: 531952
+MD5sum: 086a5329c029d9019c69870f34c3c5dc
+Description: KDE calendaring library
+ This library provides a C++ API for handling the vCalendar and iCalendar
+ formats.
+ .
+ This is the runtime package for programs that use the libkcal library.
+ .
+ This package is part of the official KDE pim module.
+
+Package: libreadline4
+Priority: standard
+Section: libs
+Installed-Size: 280
+Maintainer: Matthias Klose <doko@debian.org>
+Architecture: i386
+Source: readline4
+Version: 4.3-11
+Replaces: libreadline4-dev (<< 2.5a)
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1)
+Conflicts: libreadline4-dev (<< 2.5a)
+Filename: pool/main/r/readline4/libreadline4_4.3-11_i386.deb
+Size: 139842
+MD5sum: 8b4f0fc633bfcb953d59eaf974f209a3
+Description: GNU readline and history libraries, run-time libraries
+ The GNU readline library aids in the consistency of user interface
+ across discrete programs that need to provide a command line
+ interface.
+ .
+ The GNU history library provides a consistent user interface for
+ recalling lines of previously typed input.
+
+Package: login
+Essential: yes
+Priority: required
+Section: base
+Installed-Size: 1493
+Maintainer: Karl Ramm <kcr@debian.org>
+Architecture: i386
+Source: shadow
+Version: 1:4.0.3-30.1
+Replaces: shadow-login, shadow-passwd, shellutils (<< 2.0-2), manpages-de (<= 0.4-4), manpages-fr, manpages-hu, manpages-ja
+Depends: libpam-modules (>= 0.72-5)
+Pre-Depends: libc6 (>= 2.3.2.ds1-4), libpam0g (>= 0.76), libpam-runtime (>= 0.76-14)
+Conflicts: shadow-login, pam-apps, secure-su, suidregister (<< 0.50)
+Filename: pool/main/s/shadow/login_4.0.3-30.1_i386.deb
+Size: 522298
+MD5sum: 8b21d32fcd24214059f0e584dcc676c0
+Description: System login tools
+ These tools are required to be able to login and use your system. The
+ login program invokes your user shell and enables command execution. The
+ newgrp program is used to change your effective group ID (useful for
+ workgroup type situations). The su program allows changing your effective
+ user ID (useful being able to execute commands as another user).
+
+Package: libxi6
+Priority: optional
+Section: libs
+Installed-Size: 328
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4), libxext6 | xlibs (>> 4.1.0)
+Conflicts: xlibs (<< 4.3.0)
+Filename: pool/main/x/xfree86/libxi6_4.3.0.dfsg.1-7_i386.deb
+Size: 163538
+MD5sum: 42bf97398ad1b8890fa3da6a83e63835
+Description: X Window System Input extension library
+ libXi provides an X Window System client interface to the X Input Extension,
+ an extension to the X protocol.
+
+Package: kate
+Priority: optional
+Section: editors
+Installed-Size: 1556
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase-doc (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Recommends: kregexpeditor
+Suggests: aspell | ispell, kate-plugins, khelpcenter, konq-speaker
+Filename: pool/main/k/kdebase/kate_3.3.0-1_i386.deb
+Size: 577508
+MD5sum: 8ce0629cfe58f8c13cd64d02ced8b9d7
+Description: KDE Advanced Text Editor
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This package contains the advanced text editor for KDE. It includes
+ many features including:
+ .
+ * Syntax Highlighting
+ * Folding
+ .
+ This package is part of the official KDE base module.
+
+Package: fetchmail
+Priority: optional
+Section: mail
+Installed-Size: 1596
+Maintainer: Graham Wilson <graham@debian.org>
+Architecture: i386
+Version: 6.2.5-10
+Replaces: popclient, fetchmail-ssl, fetchmail-common
+Provides: popclient, fetchmail-ssl, fetchmail-common
+Depends: libc6 (>= 2.3.2.ds1-4), libssl0.9.7, debconf (>= 0.5), debianutils (>= 1.7), adduser (>= 3.34), base-files (>= 2.2.0)
+Recommends: ca-certificates
+Suggests: fetchmailconf, exim4 | mail-transport-agent, resolvconf
+Conflicts: popclient, fetchmail-ssl, fetchmail-common, logcheck (<< 1.1.1-9)
+Filename: pool/main/f/fetchmail/fetchmail_6.2.5-10_i386.deb
+Size: 547946
+MD5sum: a9c47d2bacf4142204fad6bc4678b7a5
+Description: SSL enabled POP3, APOP, IMAP mail gatherer/forwarder
+ fetchmail is a free, full-featured, robust, and well-documented remote mail
+ retrieval and forwarding utility intended to be used over on-demand TCP/IP
+ links (such as SLIP or PPP connections). It retrieves mail from remote mail
+ servers and forwards it to your local (client) machine's delivery system, so
+ it can then be read by normal mail user agents such as mutt, elm, pine,
+ (x)emacs/gnus, or mailx. The fetchmailconf package includes an interactive
+ GUI configurator suitable for end-users. Kerberos IV & V, RPA, OPIE and
+ GSSAPI support are available if the package is recompiled.
+
+Package: bluefish
+Priority: optional
+Section: web
+Installed-Size: 6232
+Maintainer: Davide Puricelli (evo) <evo@debian.org>
+Architecture: i386
+Version: 0.13-1
+Depends: libaspell15 (>= 0.50.5), libatk1.0-0 (>= 1.6.0), libbonobo2-0 (>= 2.6.2), libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.4.1), libgnomevfs2-0 (>= 2.6.0), libgtk2.0-0 (>= 2.4.4), liborbit2 (>= 1:2.10.0), libpango1.0-0 (>= 1.4.1), libpcre3 (>= 4.5)
+Suggests: www-browser, weblint
+Filename: pool/main/b/bluefish/bluefish_0.13-1_i386.deb
+Size: 1463276
+MD5sum: 74a7855bd88ac1bfeb2db0fd12390f27
+Description: A Gtk+ HTML editor
+ Bluefish is a GTK HTML editor for the experienced web designer.
+ Its features include nice wizards for startup, tables and frame; a
+ fully featured image insert dialog; thumbnail creation and automatically
+ linking of the thumbnail with the original image; and configurable HTML
+ syntax highlighting.
+ .
+ For validation to work you need weblint. For preview to work,
+ you need a web browser that can view local files given to it
+ on the command line.
+
+Package: xlibs
+Priority: optional
+Section: libs
+Installed-Size: 2604
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: all
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xbase, xlib, xpm4g, fvwm-common, qcad (<< 1.4.6-1), xbase-clients (<< 4.0), xcontrib (<< 4.0), xlib6g (<< 4.0), xlib6g-dev (<< 4.0), xsm (<< 4.0)
+Depends: libice6, libsm6, libx11-6, libxext6, libxft1, libxi6, libxmu6, libxmuu1, libxp6, libxpm4, libxrandr2, libxt6, libxtrap6, libxtst6, xlibs-data
+Conflicts: xbase, xlib, xpm4g, fvwm-common, qcad (<< 1.4.6-1), xbase-clients (<< 4.0), xcontrib (<< 4.0), xlib6g (<< 4.0), xlib6g-dev (<< 4.0), xsm (<< 4.0)
+Filename: pool/main/x/xfree86/xlibs_4.3.0.dfsg.1-7_all.deb
+Size: 401748
+MD5sum: 79988f228dae689d60c4b59cfa154ae7
+Description: X Window System client libraries metapackage and XKB data
+ This package smooths upgrades from Debian 3.0 by depending on the individual
+ library packages into which each shared object formerly contained in this
+ package has been split.
+ .
+ This package is only depended upon by packages that haven't yet been compiled
+ against the new shared library packages.
+ .
+ This package also contains configuration data used by the X Keyboard
+ Extension (XKB). Other architecture-independent data used by X libraries can
+ be found in the xlibs-data package.
+
+Package: patch
+Priority: standard
+Section: utils
+Installed-Size: 188
+Maintainer: Michael Fedrowitz <michaelf@debian.org>
+Architecture: i386
+Version: 2.5.9-2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: ed
+Filename: pool/main/p/patch/patch_2.5.9-2_i386.deb
+Size: 96436
+MD5sum: e2c38aa15a362a691a1d7b0a70e82798
+Description: Apply a diff file to an original
+ Patch will take a patch file containing any of the four forms
+ of difference listing produced by the diff program and apply
+ those differences to an original file, producing a patched
+ version.
+
+Package: smbfs
+Priority: optional
+Section: otherosfs
+Installed-Size: 720
+Maintainer: Eloy A. Paris <peloy@debian.org>
+Architecture: i386
+Source: samba
+Version: 3.0.6-4
+Replaces: smbfsx
+Depends: netbase (>= 2.02), samba-common (= 3.0.6-4), libc6 (>= 2.3.2.ds1-4), libcomerr2 (>= 1.33-3), libkrb53 (>= 1.3.2), libldap2 (>= 2.1.17-1)
+Suggests: smbclient
+Conflicts: smbfsx, suidmanager (<< 0.50)
+Filename: pool/main/s/samba/smbfs_3.0.6-4_i386.deb
+Size: 311480
+MD5sum: 4ff011e30b9712085eba723ead898a2f
+Description: mount and umount commands for the smbfs (for kernels >= than 2.2.x)
+ Smbfs is a filesystem which understands the SMB protocol.
+ This is the protocol Windows for Workgroups, Windows NT or
+ LAN Manager use to talk to each other. It was inspired by
+ samba, the program by Andrew Tridgell that turns any unix
+ site into a file server for DOS or Windows clients.
+ .
+ If you want to use command-line utilities like smbclient, smbtar
+ and/or smbspool you just need to install the smbclient package.
+ .
+ Starting with the Debian Samba packages version 2.2.0-1, the old smbfs
+ utilities for 2.0.x have been removed. There are no wrapper scripts
+ that call a specific smbmount/smbumount depending on the kernel
+ version. If you are using a 2.0.x kernel please upgrade or use the
+ latest Samba 2.0.7 Debian package.
+Task: file-server, print-server
+
+Package: apsfilter
+Priority: extra
+Section: text
+Installed-Size: 2496
+Maintainer: Pawel Wiecek <coven@debian.org>
+Architecture: all
+Version: 7.2.5-5
+Depends: lpr, file, debconf, a2ps
+Suggests: gs, pnm2ppa, dvips, bzip2, groff, html2ps, imagemagick, libjpeg-progs, netpbm, psutils, sketch, transfig
+Conflicts: magicfilter
+Filename: pool/main/a/apsfilter/apsfilter_7.2.5-5_all.deb
+Size: 434782
+MD5sum: 4367a5ba83a380491a482080362a54d7
+Description: Magic print filter with automatic file type recognition
+ apsfilter makes printing many file formats much easier. It features
+ on-the-fly decompression and conversion, and works on both PostScript
+ and non-PostScript (via Ghostscript) graphical printers.
+ .
+ Among the supported formats are: gzip, bzip2, compress, freeze, pack,
+ ASCII, BMP, data (PCL, etc.), DVI, FBM, FIG, FITS, GIF, Group 3 fax,
+ HTML, IFF ILBM, JPEG, Kodak Photo CD, MGR, MIFF, PBM/PGM/PNM/PPM, PDF,
+ PNG, PostScript, RLE, SGI, Sketch, Sun raster, Targa, TIFF, troff, WPG,
+ X pixmap, XCF. Note that actual support depends on the installed
+ filter programs.
+
+Package: cupsys
+Priority: optional
+Section: net
+Installed-Size: 10548
+Maintainer: Kenshi Muto <kmuto@debian.org>
+Architecture: i386
+Version: 1.1.20final+rc1-5
+Replaces: cupsys-pstoraster
+Depends: libc6 (>= 2.3.2.ds1-4), libcupsimage2 (>= 1.1.19final-1), libcupsys2-gnutls10 (>= 1.1.20final-1), libgnutls11 (>= 1.0.16), libpam0g (>= 0.76), libpaper1, libslp1, zlib1g (>= 1:1.2.1), gs-esp, adduser (>= 3.12), debconf (>= 1.2.9), patch
+Recommends: cupsys-client, smbclient, xpdf-common
+Suggests: cupsys-bsd, cupsys-driver-gimpprint, foomatic-bin | cupsomatic-ppd, xpdf-korean | xpdf-japanese | xpdf-chinese-traditional | xpdf-chinese-simplified
+Conflicts: cupsys-pstoraster (<< 2), lprng (>= 3.8.25)
+Filename: pool/main/c/cupsys/cupsys_1.1.20final+rc1-5_i386.deb
+Size: 3618880
+MD5sum: 4be5ebda556c77f455e81f614ea3b47e
+Description: Common UNIX Printing System(tm) - server
+ The Common UNIX Printing System (or CUPS(tm)) is a printing system and
+ general replacement for lpd and the like. It supports the Internet
+ Printing Protocol (IPP), and has its own filtering driver model for
+ handling various document types.
+ .
+ This package provides the CUPS scheduler/daemon and related files.
+ .
+ The terms "Common UNIX Printing System" and "CUPS" are trademarks of
+ Easy Software Products (www.easysw.com), and refer to the original
+ source packages from which these packages are made.
+Task: print-server
+
+Package: libpam0g
+Priority: required
+Section: base
+Installed-Size: 168
+Maintainer: Sam Hartman <hartmans@debian.org>
+Architecture: i386
+Source: pam
+Version: 0.76-22
+Replaces: libpam0g-util
+Depends: libc6 (>= 2.3.2.ds1-4), libpam-runtime
+Suggests: libpam-doc
+Conflicts: libpam0 (<= 0.56-2), libpam
+Filename: pool/main/p/pam/libpam0g_0.76-22_i386.deb
+Size: 74154
+MD5sum: 0980c28f636131671dda807c259bec36
+Description: Pluggable Authentication Modules library
+ Contains the C shared library for Linux-PAM, a suite of shared
+ libraries that enable the local system administrator to choose how
+ applications authenticate users. In other words, without rewriting
+ or recompiling a PAM-aware application, it is possible to switch
+ between the authentication mechanism(s) it uses. One may entirely
+ upgrade the local authentication system without touching the
+ applications themselves.
+
+Package: libisccfg0
+Priority: optional
+Section: libs
+Installed-Size: 172
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Source: bind9
+Version: 1:9.2.3+9.2.4-rc7-1
+Replaces: libbind0
+Depends: libc6 (>= 2.3.2.ds1-4), libdns11, libisc7, libisccc0
+Conflicts: libbind0
+Filename: pool/main/b/bind9/libisccfg0_9.2.3+9.2.4-rc7-1_i386.deb
+Size: 87924
+MD5sum: a8e4672a3321088e8dcbf2b4ca6c1890
+Description: Config File Handling Library used by BIND
+ The Berkeley Internet Name Domain (BIND) implements an Internet domain
+ name server. BIND is the most widely-used name server software on the
+ Internet, and is supported by the Internet Software Consortium, www.isc.org.
+ .
+ This package delivers the libisccfg shared library used by BIND's daemons
+ and clients to read and write ISC-style configuration files like named.conf
+ and rndc.conf.
+
+Package: libzvbi0
+Priority: optional
+Section: libs
+Installed-Size: 308
+Maintainer: Christian Marillat <marillat@debian.org>
+Architecture: i386
+Source: zvbi
+Version: 0.2.8-1
+Replaces: libzvbi-0.1 (<= 0.2.1-3)
+Depends: libc6 (>= 2.3.2.ds1-4), libpng12-0 (>= 1.2.5.0-4), zlib1g (>= 1:1.2.1), libzvbi-common (= 0.2.8-1)
+Filename: pool/main/z/zvbi/libzvbi0_0.2.8-1_i386.deb
+Size: 126948
+MD5sum: 9c4ede0e555676bc50e07fc4c916fae3
+Description: Video Blank Interval decoder - runtime files
+ The VBI devices capture the hidden lines on a television picture that carry
+ further information like closed-caption data, Teletext (primarily in
+ Europe), and now Intercast and the ATVEC Internet television encodings.
+
+Package: kpager
+Priority: optional
+Section: kde
+Installed-Size: 196
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0), kdebase-doc (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Filename: pool/main/k/kdebase/kpager_3.3.0-1_i386.deb
+Size: 92082
+MD5sum: a6d7b1367f169ccebfae748526b0e435
+Description: KDE Desktop Pager
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KDE Desktop Pager
+ .
+ This package is part of the official KDE base module.
+
+Package: ksysguardd
+Priority: optional
+Section: utils
+Installed-Size: 96
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0)
+Depends: libc6 (>= 2.3.2.ds1-4), libsensors3 (>= 2.8.7)
+Filename: pool/main/k/kdebase/ksysguardd_3.3.0-1_i386.deb
+Size: 47314
+MD5sum: bf9433b545e3f1f75ead5627f2165816
+Description: KDE System Guard Daemon
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KDE System Guard Daemon is the daemon part of ksysguard. The daemon can
+ be installed on a remote machine to enable ksysguard on another machine
+ to monitor it through the daemon running there.
+ .
+ This package is part of the official KDE base module.
+
+Package: libkrb53
+Priority: optional
+Section: libs
+Installed-Size: 844
+Maintainer: Sam Hartman <hartmans@debian.org>
+Architecture: i386
+Source: krb5
+Version: 1.3.4-3
+Depends: libc6 (>= 2.3.2.ds1-4), libcomerr2 (>= 1.33-3)
+Suggests: krb5-doc, krb5-user
+Conflicts: openafs-krb5 (<< 1.3-10)
+Filename: pool/main/k/krb5/libkrb53_1.3.4-3_i386.deb
+Size: 347250
+MD5sum: 45ace476af5ec96b69f69593b315e8ca
+Description: MIT Kerberos runtime libraries
+ Kerberos is a system for authenticating users and services on a network.
+ Kerberos is a trusted third-party service. That means that there is a
+ third party (the kerberos server) that is trusted by all the entities on
+ the network (users and services, usually called "principals").
+ .
+ This is the MIT reference implementation of Kerberos5.
+
+Package: libdebtags0
+Priority: optional
+Section: libs
+Installed-Size: 356
+Maintainer: Enrico Zini <enrico@debian.org>
+Architecture: i386
+Source: libdebtags
+Version: 0.9.5
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1), libtagcoll0 (>= 0.99), zlib1g (>= 1:1.2.1)
+Filename: pool/main/libd/libdebtags/libdebtags0_0.9.5_i386.deb
+Size: 117516
+MD5sum: ea33927142757b6349d74f7ebc656c7e
+Description: Unified access to Debtags and APT databases
+ libdebtags provides functionality to search and categorize debian packages
+ using the Debtags and APT databases. Functions provided:
+ .
+ * search packages by normal debian/control fields and package tags
+ * find packages related to a given one
+ * edit debtags package categorization, with undo support
+ * save and submit tag patches to the central tag archive
+ .
+ libdebtags is written with the intent to make it easy and efficient for
+ applications to include debtags support.
+ .
+ Warning: the API has not yet been stabilized and is subject to change in
+ future versions.
+
+Package: spell
+Priority: optional
+Section: text
+Installed-Size: 80
+Maintainer: David Frey <dfrey@debian.org>
+Architecture: i386
+Version: 1.0-12
+Depends: libc6 (>= 2.2.5-13), ispell, ibritish, iamerican|ispell-dictionary
+Conflicts: spellprogs (<=1.11-1)
+Filename: pool/main/s/spell/spell_1.0-12_i386.deb
+Size: 12118
+MD5sum: 130e63e3d5d039e7cea8476be66a6d3c
+Description: GNU Spell, a clone of Unix `spell'
+ GNU Spell is a spell checking program which prints each misspelled
+ word on a line of its own. It is designed as a clone of the standard
+ Unix `spell' program, and implemented as a wrapper for Ispell. Spell
+ accepts as its arguments a list of files to read from. Within that
+ list, the magical file name `-' causes Spell to read from standard
+ input. In addition, when called with no file name arguments, Spell
+ assumes that it should process standard input.
+
+Package: libkgantt0
+Priority: optional
+Section: libs
+Installed-Size: 276
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Replaces: kdepim-libs (<< 4:3.2.0)
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Conflicts: kdepim-libs (<< 4:3.2.0)
+Filename: pool/main/k/kdepim/libkgantt0_3.3.0-2_i386.deb
+Size: 63212
+MD5sum: 5e0b6a2515ad4fef67590e9b0ac83b04
+Description: KDE gantt charting library
+ This is the runtime package for programs that use the libkgantt library.
+ .
+ This package is part of the official KDE pim module.
+
+Package: libaudiofile0
+Priority: optional
+Section: libs
+Installed-Size: 228
+Maintainer: Daniel Kobras <kobras@debian.org>
+Architecture: i386
+Source: audiofile
+Version: 0.2.6-4
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/a/audiofile/libaudiofile0_0.2.6-4_i386.deb
+Size: 76334
+MD5sum: 55ac7724b23e62bcc250973187c95e48
+Description: Open-source version of SGI's audiofile library
+ The audiofile library allows the processing of audio data to and from audio
+ files of many common formats (currently AIFF, AIFF-C, WAVE, NeXT/Sun, BICS,
+ and raw data).
+ .
+ This package contains the library needed to run executables using
+ libaudiofile.
+
+Package: postfix
+Priority: extra
+Section: mail
+Installed-Size: 1908
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Version: 2.1.4-5
+Replaces: postfix-doc (<< 1.1.7-0), postfix-tls
+Provides: mail-transport-agent
+Depends: libc6 (>= 2.3.2.ds1-4), libdb4.2, libgdbm3, debconf (>= 0.5) | debconf-2.0, netbase, adduser (>= 3.48), dpkg (>= 1.8.3), debconf
+Recommends: mail-reader, resolvconf
+Suggests: procmail, postfix-mysql, postfix-pgsql, postfix-ldap, postfix-pcre
+Conflicts: mail-transport-agent, smail, libnss-db (<< 2.2-3), postfix-tls (<< 2.0-0)
+Filename: pool/main/p/postfix/postfix_2.1.4-5_i386.deb
+Size: 796706
+MD5sum: ddbdb8508c3d97b3575da3196ba316f3
+Description: A high-performance mail transport agent
+ Postfix is Wietse Venema's mail transport agent that started life as an
+ alternative to the widely-used Sendmail program. Postfix attempts to
+ be fast, easy to administer, and secure, while at the same time being
+ sendmail compatible enough to not upset existing users. Thus, the outside
+ has a sendmail-ish flavor, but the inside is completely different.
+ .
+ This package does not have SASL or TLS support. For SASL and TLS support,
+ install postfix-tls.
+
+Package: debtags-edit
+Priority: optional
+Section: misc
+Installed-Size: 368
+Maintainer: Enrico Zini <enrico@debian.org>
+Architecture: i386
+Version: 0.9.2
+Depends: debtags, libapt-pkg-libc6.3-5-3.3, libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libdebtags0 (>= 0.9.1), libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.1), libglibmm-2.4-1, libgtk2.0-0 (>= 2.4.4), libgtkmm-2.4-1, libpango1.0-0 (>= 1.4.1), libsigc++-2.0-0 (>= 2.0.2), libstdc++5 (>= 1:3.3.4-1), libtagcoll0 (>= 0.99)
+Filename: pool/main/d/debtags-edit/debtags-edit_0.9.2_i386.deb
+Size: 116042
+MD5sum: aca1431cb812119c6995bbff32d3e390
+Description: GUI browser and editor for Debian Package Tags
+ debtags-edit is an experimental GUI program for browsing the Debian package
+ archive and tagging packages. Its purpose is to make it easy and fast for
+ everyone to update tag data.
+ .
+ Even if the program is still in the state of a prototype, it can already offer
+ new and interesting package search functions, perform local customizations of
+ the tag database and send local modifications for inclusion in the central tag
+ archive.
+
+Package: imagemagick
+Priority: optional
+Section: graphics
+Installed-Size: 4681
+Maintainer: Ryuichi Arafune <arafune@debian.org>
+Architecture: i386
+Version: 5:6.0.7.1-1
+Replaces: imagemagick-doc, geomview (<= 1.8.0)
+Depends: libmagick6 (= 5:6.0.7.1-1)
+Suggests: gs, html2ps, lpr
+Conflicts: imagemagick-doc
+Filename: pool/main/i/imagemagick/imagemagick_6.0.7.1-1_i386.deb
+Size: 1467940
+MD5sum: d3e1d91c3ca3ad3f338fe66424b9a25b
+Description: Image manipulation programs
+ Imagemagick is a set of programs to manipulate various image formats
+ (JPEG, TIFF, PhotoCD, PBM, XPM, etc...). All manipulations can
+ be achieved through shell commands as well as through a X11 graphical
+ interface (display).
+ .
+ Possible effects: colormap manipulation, channel operations, thumbnail
+ creation, image annotation, limited drawing, image distortion, etc...
+ .
+ This package suggests a postscript interpreter (gs) to read postscript
+ files. It will however function happily without it (as long as you don't
+ want to read postscript).
+
+Package: wmavgload
+Priority: optional
+Section: x11
+Installed-Size: 100
+Maintainer: Gordon Fraser <gordon@debian.org>
+Architecture: i386
+Version: 0.7.0-6.1
+Depends: libc6 (>= 2.3.2.ds1-4), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0)
+Suggests: wmaker, wmload
+Filename: pool/main/w/wmavgload/wmavgload_0.7.0-6.1_i386.deb
+Size: 15970
+MD5sum: 063c13df298d2bfe41fb41c781cae3d9
+Description: small NeXTStep-like system load average monitor
+ wmavgload provides CPU load averages integrated over 5 (main window),
+ 30 and 60 seconds. Also, it takes very little space (64x64 square).
+ .
+ There's nothing in the program that makes it *require* WindowMaker,
+ i.e. it works great with other window managers. But if you are looking
+ for seamless integration on your desktop, wmavgload may suit your needs.
+
+Package: libkonq4
+Priority: optional
+Section: libs
+Installed-Size: 664
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase-libs (<< 4:3.0.0), konqueror (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libarts1 (>= 1.3.0), libasound2 (>> 1.0.5), libaudio2, libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libfam0c102, libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), libidn11, libjack0.80.0-0 (>= 0.98.1), libmad0 (>= 0.15.1b), libogg0 (>= 1.1.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Conflicts: kdebase-libs (<< 4:3.0.0)
+Filename: pool/main/k/kdebase/libkonq4_3.3.0-1_i386.deb
+Size: 246064
+MD5sum: 71e9738c7fcc7dcd962ed5fc0146091b
+Description: Core libraries for KDE's file manager
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This library is used by several KDE 3 apps include konqueror and kdesktop.
+ .
+ This package is part of the official KDE base module.
+
+Package: libxrender1
+Priority: optional
+Section: libs
+Installed-Size: 88
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xrender
+Version: 0.8.3-7
+Depends: libc6 (>= 2.3.2.ds1-4), libx11-6 | xlibs (>> 4.1.0)
+Conflicts: xlibs (<< 4.3.0)
+Filename: pool/main/x/xrender/libxrender1_0.8.3-7_i386.deb
+Size: 25144
+MD5sum: 22c45d6263594dfb4254fbca50582f4e
+Description: X Rendering Extension client library
+ The X Rendering Extension (Render) introduces digital image composition as
+ the foundation of a new rendering model within the X Window System.
+ Rendering geometric figures is accomplished by client-side tesselation into
+ either triangles or trapezoids. Text is drawn by loading glyphs into the
+ server and rendering sets of them. The Xrender library exposes this
+ extension to X clients.
+
+Package: gv
+Priority: optional
+Section: text
+Installed-Size: 672
+Maintainer: Martin A. Godisch <godisch@debian.org>
+Architecture: i386
+Version: 1:3.5.8-36
+Replaces: gv-2d, gv-3d, fvwm-common (<< 2.0.46-BETA-2)
+Provides: postscript-viewer, pdf-viewer
+Depends: gs, libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0), xaw3dg (>= 1.5+E-1)
+Conflicts: gv-2d, gv-3d
+Filename: pool/main/g/gv/gv_3.5.8-36_i386.deb
+Size: 239848
+MD5sum: 5a2c3f910d70a1087b7c48b2260b986f
+Description: PostScript and PDF viewer for X
+ gv is a comfortable viewer of PostScript and PDF files for the X
+ Window System. It uses the ghostscript PostScript(tm) interpreter
+ and is based on the classic X front-end for gs, ghostview. It is
+ more comfortable and more powerful than ghostview. gv's upstream
+ homepage can be found at http://wwwthep.physik.uni-mainz.de/~plass/gv/.
+
+Package: groff
+Priority: optional
+Section: text
+Installed-Size: 5432
+Maintainer: Colin Watson <cjwatson@debian.org>
+Architecture: i386
+Version: 1.18.1.1-1
+Replaces: jgroff (<< 1.17-1), groff-base (<< 1.17.2-9), groff-x11 (<< 1.18-1)
+Provides: jgroff, groff-x11
+Depends: groff-base (= 1.18.1.1-1), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.3-1), libx11-6 | xlibs (>> 4.1.0), libxaw7 (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0)
+Recommends: gs, imagemagick, libpaper1, netpbm, psutils
+Conflicts: jgroff (<< 1.17-1), groff-x11 (<< 1.18-1)
+Filename: pool/main/g/groff/groff_1.18.1.1-1_i386.deb
+Size: 1858884
+MD5sum: d7da80c1e8c7243bcd66b89196790b61
+Description: GNU troff text-formatting system
+ This package contains optional components of the GNU troff text-formatting
+ system. The core package, groff-base, contains the traditional tools like
+ troff, nroff, tbl, eqn, and pic. This package contains additional devices
+ and drivers for output to DVI, HTML (when the recommended packages gs,
+ netpbm, and psutils are installed), HP LaserJet printers, and Canon CAPSL
+ LBP-4 and LBP-8 printers.
+ .
+ The X75, X75-12, X100, and X100-12 devices, which allow groff output to be
+ conveniently viewed on an X display using the standard X11 fonts, are now
+ included here. They were previously in a separate package, groff-x11.
+ .
+ Besides these, the groff package contains man pages describing the language
+ and its macro sets, info documentation, and a number of supplementary
+ programs:
+ .
+ - gxditview, which is used to display the output of the X* devices, and
+ can also be used to view PostScript output from groff;
+ - grn, a preprocessor for pictures in the 'gremlin' format;
+ - tfmtodit, which creates font files for use with 'groff -Tdvi';
+ - hpftodit, which creates font files for use with 'groff -Tlj4';
+ - afmtodit, which creates font files for use with 'groff -Tps';
+ - refer, which preprocesses bibliographic references for use with groff;
+ - indxbib, which creates inverted indices for bibliographic databases used
+ by 'refer';
+ - lkbib and lookbib, which search bibliographic databases;
+ - addftinfo, which adds metric information to troff font files for use
+ with groff;
+ - pfbtops, which translates a PostScript font in .pfb format to ASCII for
+ use with groff;
+ - mmroff, a simple groff preprocessor which expands references in mm;
+ - pic2graph, which converts PIC diagrams into cropped image files;
+ - eqn2graph, which converts EQN equations into cropped image files.
+ .
+ All the standard macro packages are supported.
+
+Package: par
+Priority: optional
+Section: text
+Installed-Size: 82
+Maintainer: Craig Sanders <cas@taz.net.au>
+Architecture: i386
+Version: 1.51-1
+Depends: libc6 (>= 2.2.2-2)
+Filename: pool/main/p/par/par_1.51-1_i386.deb
+Size: 41058
+MD5sum: 9c3413fd7d458828a2b8e9e862ec74c4
+Description: Paragraph reformatter
+ Greatly enhanced fmt type program by Adam M. Costello.
+ .
+ Can be used within vi or other editor to automatically reformat text
+ in a variety of ways.
+ .
+ Perfect for use with email & usenet messages as it correctly handles
+ multiple levels of quoting characters.
+
+Package: nautilus
+Priority: optional
+Section: gnome
+Installed-Size: 2596
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Version: 2.6.3b-3
+Replaces: nautilus1.1, nautilus2
+Depends: libart-2.0-2 (>= 2.3.16), libatk1.0-0 (>= 1.6.0), libaudiofile0 (>= 0.2.3-4), libbonobo2-0 (>= 2.6.2), libbonoboui2-0 (>= 2.5.4), libc6 (>= 2.3.2.ds1-4), libeel2-2 (>= 2.6.2), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libexif10, libgail-common (>= 1.4.1), libgail17 (>= 1.4.1), libgconf2-4 (>= 2.6.2), libglade2-0 (>= 1:2.3.6), libglib2.0-0 (>= 2.4.1), libgnome-desktop-2, libgnome2-0 (>= 2.6.1.1), libgnomecanvas2-0 (>= 2.6.0), libgnomeui-0 (>= 2.6.0), libgnomevfs2-0 (>= 2.6.0), libgtk2.0-0 (>= 2.4.4), libice6 | xlibs (>> 4.1.0), libjpeg62, libnautilus2-2 (>= 2.6.3), liborbit2 (>= 1:2.10.0), libpango1.0-0 (>= 1.4.0), libpopt0 (>= 1.7), librsvg2-2 (>= 2.7.2), libsm6 | xlibs (>> 4.1.0), libstartup-notification0 (>= 0.0.5), libx11-6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.11), zlib1g (>= 1:1.2.1), nautilus-data (>= 2.6.3b-3), shared-mime-info, capplets (>= 2.6)
+Recommends: desktop-base (>= 0.2), gnome-icon-theme (>= 1.2), eject, nautilus-cd-burner (>= 2.6)
+Suggests: eog, pdf-viewer, sox, mpg321 | mpg123, xmms
+Conflicts: nautilus2
+Filename: pool/main/n/nautilus/nautilus_2.6.3b-3_i386.deb
+Size: 830234
+MD5sum: 60b0afe147142f4fef7f910a15b6c924
+Description: file manager and graphical shell for GNOME
+ Nautilus is the official file manager for the GNOME desktop. It allows
+ to browse directories, preview files and launch applications associated
+ with them. It is also responsible for handling the icons on the GNOME
+ desktop. It works on local and remote filesystems.
+ .
+ Several icon themes and components for viewing different kinds of files
+ are available in separate packages.
+ .
+ URL: http://www.gnome.org/projects/nautilus/
+
+Package: fileutils
+Priority: extra
+Section: utils
+Installed-Size: 16
+Maintainer: Michael Stone <mstone@debian.org>
+Architecture: all
+Source: coreutils
+Version: 5.2.1-2
+Pre-Depends: coreutils
+Filename: pool/main/c/coreutils/fileutils_5.2.1-2_all.deb
+Size: 9042
+MD5sum: c846ba12a55f69a4b147d1fbc67a33a5
+Description: The GNU file management utilities (transitional package)
+ Empty package to facilitate upgrades, can be safely removed.
+
+Package: libaspell15
+Priority: optional
+Section: libs
+Installed-Size: 920
+Maintainer: Brian Nelson <pyro@debian.org>
+Architecture: i386
+Source: aspell
+Version: 0.50.5-3
+Replaces: libaspell0, libaspell1, libaspell2, libaspell3, libaspell4, libaspell5, libaspell6, libaspell8, libaspell10, libaspell11, libpspell2, libpspell4, libpspell15, aspell-bin (<< 0.50.3-4), aspell-bg (<= 3.0-1)
+Provides: libaspell11
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libstdc++5 (>= 1:3.3.3-1)
+Recommends: aspell-en | aspell-dictionary
+Suggests: aspell-bin
+Conflicts: libaspell0, libaspell1, libaspell2, libaspell3, libaspell4, libaspell5, libaspell6, libaspell8, libaspell10, libaspell11, libpspell2, libpspell4, libpspell4c102, aspell-en (<< 0.50), aspell-da (<= 1.4.22-2.3), aspell-de (<= 0.1-3-3), aspell-es (<= 0.0-3-3), aspell-fo (<= 0.1.16-2.3), aspell-fr (<= 0.1-3-4), aspell-nl (<= 1:0.1e-26), aspell-no (<= 2.0-9), aspell-pt (<= 0.0-3-4), aspell-bg (<= 2.0-2.2)
+Filename: pool/main/a/aspell/libaspell15_0.50.5-3_i386.deb
+Size: 263480
+MD5sum: b9dcce4d6c868167a6b59b7884538cde
+Description: The GNU Aspell spell-checker runtime toolkits
+ These are the runtime parts of the Aspell and pspell spell-checking
+ toolkits, needed by applications that use the toolkits at runtime.
+ .
+ For a standalone spell-checker, install aspell-bin as well.
+
+Package: logrotate
+Priority: important
+Section: admin
+Installed-Size: 152
+Maintainer: Paul Martin <pm@debian.org>
+Architecture: i386
+Version: 3.7-2
+Depends: libc6 (>= 2.3.2.ds1-4), libpopt0 (>= 1.7), cron (>= 3.0pl1-53) | anacron, base-passwd (>= 2.0.3.4)
+Recommends: mailx
+Filename: pool/main/l/logrotate/logrotate_3.7-2_i386.deb
+Size: 31996
+MD5sum: 2c661209da8e7096d9d426ba3a9ed65e
+Description: Log rotation utility
+ The logrotate utility is designed to simplify the administration of
+ log files on a system which generates a lot of log files. Logrotate
+ allows for the automatic rotation compression, removal and mailing of
+ log files. Logrotate can be set to handle a log file daily, weekly,
+ monthly or when the log file gets to a certain size. Normally, logrotate
+ runs as a daily cron job.
+
+Package: libxext6
+Priority: optional
+Section: libs
+Installed-Size: 360
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: xlibs (<< 4.3.0)
+Filename: pool/main/x/xfree86/libxext6_4.3.0.dfsg.1-7_i386.deb
+Size: 172332
+MD5sum: 48feda7b1ab129830e36ab16b5287893
+Description: X Window System miscellaneous extension library
+ libXext provides an X Window System client interface to several extensions to
+ the X protocol.
+ .
+ The supported protocol extensions are:
+ - DOUBLE-BUFFER (DBE), the Double Buffer extension;
+ - DPMS, the VESA Display Power Management System extension;
+ - Extended-Visual-Information (EVI), an extension for gathering extra
+ information about the X server's visuals;
+ - LBX, the Low Bandwith X extension;
+ - MIT-SHM, the MIT X client/server shared memory extension;
+ - MIT-SUNDRY-NONSTANDARD, a miscellaneous extension by MIT;
+ - Multi-Buffering, the multi-buffering and stereo display extension;
+ - SECURITY, the X security extension;
+ - SHAPE, the non-rectangular shaped window extension;
+ - SYNC, the X synchronization extension;
+ - TOG-CUP, the Open Group's Colormap Utilization extension;
+ - XC-APPGROUP, the X Consortium's Application Group extension;
+ - XC-MISC, the X Consortium's resource ID querying extension;
+ - XTEST, the X test extension (this is one of two client-side
+ implementations; the other is in the libXtst library, provided by the
+ libxtst6 package);
+ .
+ libXext also provides a small set of utility functions to aid authors of
+ client APIs for X protocol extensions.
+
+Package: libxtrap6
+Priority: optional
+Section: libs
+Installed-Size: 332
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0)
+Conflicts: xlibs (<< 4.3.0)
+Filename: pool/main/x/xfree86/libxtrap6_4.3.0.dfsg.1-7_i386.deb
+Size: 164474
+MD5sum: 2d375bbf3df1a4412ee12a400bc4e807
+Description: X Window System protocol-trapping extension library
+ libXTrap provides an X Window System client interface to the protocol-capture
+ extension to the X protocol. This library also allows core protocol input
+ events to be synthesized.
+
+Package: bzip2
+Priority: optional
+Section: utils
+Installed-Size: 405
+Maintainer: Philippe Troin <phil@fifi.org>
+Architecture: i386
+Version: 1.0.2-1
+Replaces: libbz2(<<0.9.5d-3)
+Depends: libbz2-1.0, libc6 (>= 2.2.4-4)
+Filename: pool/main/b/bzip2/bzip2_1.0.2-1_i386.deb
+Size: 228524
+MD5sum: d970e954a55fe7d6785a999ca5cdbd45
+Description: A high-quality block-sorting file compressor - utilities
+ bzip2 is a freely available, patent free, high-quality data compressor.
+ It typically compresses files to within 10% to 15% of the best available
+ techniques, whilst being around twice as fast at compression and six
+ times faster at decompression.
+ .
+ bzip2 compresses files using the Burrows-Wheeler block-sorting text
+ compression algorithm, and Huffman coding. Compression is generally
+ considerably better than that achieved by more conventional
+ LZ77/LZ78-based compressors, and approaches the performance of the PPM
+ family of statistical compressors.
+ .
+ The archive file format of bzip2 (.bz2) is incompatible with that of its
+ predecessor, bzip (.bz).
+
+Package: tagcolledit
+Priority: optional
+Section: misc
+Installed-Size: 444
+Maintainer: Enrico Zini <enrico@debian.org>
+Architecture: i386
+Version: 0.9.2-1
+Depends: libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.1), libglibmm-2.4-1, libgtk2.0-0 (>= 2.4.4), libgtkmm-2.4-1, libpango1.0-0 (>= 1.4.1), libsigc++-2.0-0 (>= 2.0.2), libstdc++5 (>= 1:3.3.4-1), libtagcoll0 (>= 0.99)
+Filename: pool/main/t/tagcolledit/tagcolledit_0.9.2-1_i386.deb
+Size: 136150
+MD5sum: f421282f4d4457a4c8b272a3564a1e61
+Description: GUI editor for tagged collections
+ tagcolledit is an experimental GUI program to perform mass-editing of tagged
+ collections. It has been written to be the basis for implementing editors for
+ any kind of tagged collections, like package tags and web browser bookmarks.
+ .
+ Although still on its infancy, it can already be used to navigate and perform
+ heavy-duty editing of the Debian Package Tags database.
+ .
+ Together with debtags, it can be used to produce tag patches that can be
+ submitted for inclusion in the main tag database or installed in
+ /etc/debtags/tagpatch.d to customize the database locally.
+
+Package: libpcre3
+Priority: important
+Section: libs
+Installed-Size: 240
+Maintainer: Mark Baker <mbaker@iee.org>
+Architecture: i386
+Source: pcre3
+Version: 4.5-1.1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libpcre3-dev (<= 4.3-3)
+Filename: pool/main/p/pcre3/libpcre3_4.5-1.1_i386.deb
+Size: 107504
+MD5sum: cca0792f964eff6502297573beec9519
+Description: Perl 5 Compatible Regular Expression Library - runtime files
+ This is a library of functions to support regular expressions whose syntax
+ and semantics are as close as possible to those of the Perl 5 language.
+ .
+ This package contains the runtime libraries.
+
+Package: gkdebconf
+Priority: optional
+Section: admin
+Installed-Size: 580
+Maintainer: Agney Lopes Roth Ferraz <agney@users.sourceforge.net>
+Architecture: i386
+Version: 1.2.50
+Depends: libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libgconf2-4 (>= 2.6.2), libglib2.0-0 (>= 2.4.1), libgtk2.0-0 (>= 2.4.4), liborbit2 (>= 1:2.10.0), libpango1.0-0 (>= 1.4.0), xterm | x-terminal-emulator, debconf (>= 1.4.3), gettext-base, gksu (>= 0.9.10)
+Suggests: whiptail | dialog | gnome-utils, liblocale-gettext-perl, libterm-readline-gnu-perl, libgnome2-perl, libqt-perl
+Filename: pool/main/g/gkdebconf/gkdebconf_1.2.50_i386.deb
+Size: 186396
+MD5sum: 41ff71978643bf80797f2a19df1dfe6a
+Description: Helper to reconfigure packages with Debconf
+ This is a program that helps one using the "dpkg-reconfigure" tool.
+ It is basically a graphical frontend. It makes life easier showing
+ a simple menu of packages which can be reconfigured with Debconf and
+ the Debconf frontends that can be used for the reconfiguration.
+
+Package: libaudio2
+Priority: optional
+Section: libs
+Installed-Size: 148
+Maintainer: Steve McIntyre <93sam@debian.org>
+Architecture: i386
+Source: nas
+Version: 1.6d-2
+Replaces: nas-lib
+Provides: nas-lib
+Depends: libc6 (>= 2.3.2.ds1-4), libxt6 | xlibs (>> 4.1.0)
+Suggests: nas
+Conflicts: nas-lib
+Filename: pool/main/n/nas/libaudio2_1.6d-2_i386.deb
+Size: 70886
+MD5sum: a91130a0184668f9488b899b26469028
+Description: The Network Audio System (NAS). (shared libraries)
+ The Network Audio System was developed by NCD for playing, recording, and
+ manipulating audio data over a network. Like the X Window System, it uses
+ the client/server model to separate applications from the specific drivers
+ that control audio input and output devices.
+ .
+ This package contains the nas library (libaudio), needed for both remote
+ and local output.
+
+Package: unzip
+Priority: optional
+Section: utils
+Installed-Size: 296
+Maintainer: Santiago Vila <sanvila@debian.org>
+Architecture: i386
+Version: 5.51-2
+Replaces: unzip-crypt (<< 5.41)
+Depends: libc6 (>= 2.2.4-4)
+Suggests: zip
+Conflicts: unzip-crypt (<< 5.41)
+Filename: pool/main/u/unzip/unzip_5.51-2_i386.deb
+Size: 128740
+MD5sum: 9566c111e09b64a4e32841b7693f0555
+Description: De-archiver for .zip files
+ InfoZIP's unzip program. With the exception of multi-volume archives
+ (ie, .ZIP files that are split across several disks using PKZIP's /& option),
+ this can handle any file produced either by PKZIP, or the corresponding
+ InfoZIP zip program.
+ .
+ This version supports encryption.
+
+Package: defoma
+Priority: optional
+Section: admin
+Installed-Size: 500
+Maintainer: Angus Lees <gus@debian.org>
+Architecture: all
+Version: 0.11.8-0.1
+Depends: whiptail | dialog, file, perl (>= 5.6.0-16)
+Recommends: libft-perl
+Suggests: defoma-doc, psfontmgr, x-ttcidfont-conf, dfontmgr
+Conflicts: defoma-x, defoma-ps, defoma-gs, psfontmgr (<< 0.5.0), x-ttcidfont-conf (<< 5), dfontmgr (<< 0.10.0)
+Filename: pool/main/d/defoma/defoma_0.11.8-0.1_all.deb
+Size: 77922
+MD5sum: d11d7b51189fd81e48d6ef9f317d7b1d
+Description: Debian Font Manager -- automatic font configuration framework
+ Defoma, which stands for DEbian FOnt MAnager, provides a framework
+ for automatic font configuration. An application whose configuration
+ of fonts usually requires manual intervention can automate the
+ process through Defoma, by installing a Defoma-configuration
+ script. The script gets called whenever a font is installed and
+ removed, so that the script may update the application configuration.
+ .
+ Font packages should register their fonts to Defoma in order to have them
+ configured automatically for applications.
+Enhances: debhelper
+
+Package: kappfinder
+Priority: optional
+Section: kde
+Installed-Size: 1064
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Filename: pool/main/k/kdebase/kappfinder_3.3.0-1_i386.deb
+Size: 231296
+MD5sum: a4b4fbb262f7e55edc36794bce729743
+Description: KDE Application Finder
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ kappfinder searches your workstation for many common applications and
+ creates menu entries for them.
+ .
+ This package is part of the official KDE base module.
+
+Package: librecode0
+Priority: optional
+Section: libs
+Installed-Size: 1304
+Maintainer: Santiago Vila <sanvila@debian.org>
+Architecture: i386
+Source: recode
+Version: 3.6-10
+Depends: libc6 (>= 2.2.4-4)
+Filename: pool/main/r/recode/librecode0_3.6-10_i386.deb
+Size: 685616
+MD5sum: f17c73202769ba918ee2e5eca06bcf0f
+Description: Shared library on which recode is based
+ This recoding library converts files between various coded character
+ sets and surface encodings. The library recognizes or produces more
+ than 300 different character sets and is able to convert files between
+ almost any pair. Most RFC 1345 character sets, and all `libiconv'
+ character sets, are supported.
+
+Package: aptitude
+Priority: optional
+Section: admin
+Installed-Size: 4748
+Maintainer: Daniel Burrows <dburrows@debian.org>
+Architecture: i386
+Version: 0.2.15.6-1
+Depends: libapt-pkg-libc6.3-5-3.3, libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libncurses5 (>= 5.4-1), libsigc++-1.2-5c102, libstdc++5 (>= 1:3.3.4-1)
+Recommends: aptitude-doc-en | aptitude-doc
+Filename: pool/main/a/aptitude/aptitude_0.2.15.6-1_i386.deb
+Size: 1586702
+MD5sum: e54c86a7470b0bc66cfe7b1f6e4f53c4
+Description: terminal-based apt frontend
+ aptitude is a terminal-based apt frontend with a number of useful
+ features, including: a mutt-like syntax for matching packages in a
+ flexible manner, dselect-like persistence of user actions, the
+ ability to retrieve and display the Debian changelog of most
+ packages, and extreme flexibility and customization.
+ .
+ aptitude is also Y2K-compliant, non-fattening, naturally cleansing,
+ and housebroken.
+
+Package: apt
+Priority: important
+Section: base
+Installed-Size: 3340
+Maintainer: APT Development Team <deity@lists.debian.org>
+Architecture: i386
+Version: 0.5.27
+Replaces: libapt-pkg-doc (<< 0.3.7), libapt-pkg-dev (<< 0.3.7)
+Provides: libapt-pkg-libc6.3-5-3.3
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1)
+Suggests: aptitude | synaptic | gnome-apt | wajig, dpkg-dev, apt-doc
+Filename: pool/main/a/apt/apt_0.5.27_i386.deb
+Size: 1093590
+MD5sum: 04de5f87b508bd7503c48eacfbc06d57
+Description: Advanced front-end for dpkg
+ This is Debian's next generation front-end for the dpkg package manager.
+ It provides the apt-get utility and APT dselect method that provides a
+ simpler, safer way to install and upgrade packages.
+ .
+ APT features complete installation ordering, multiple source capability
+ and several other unique features, see the Users Guide in apt-doc.
+
+Package: mpg321
+Priority: optional
+Section: sound
+Installed-Size: 128
+Maintainer: Joe Drew <drew@debian.org>
+Architecture: i386
+Version: 0.2.10.3
+Provides: mpg123, mp3-decoder
+Depends: libao2 (>= 0.8.4), libc6 (>= 2.3.2.ds1-4), libid3tag0 (>= 0.15.0b), libmad0 (>= 0.15.0b), zlib1g (>= 1:1.2.1)
+Filename: pool/main/m/mpg321/mpg321_0.2.10.3_i386.deb
+Size: 35016
+MD5sum: 0548a56a9e7076f0bf62f1d921f8d793
+Description: A Free command-line mp3 player, compatible with mpg123
+ mpg321 is a clone of the popular mpg123 command-line mp3 player. It should
+ function as a drop-in replacement for mpg123 in many cases. While some of
+ the functionality of mpg123 is not yet implemented, mpg321 should function
+ properly in most cases for most people, such as for frontends such as
+ gqmpeg.
+ .
+ mpg321 is based on the mad MPEG audio decoding library. It therefore is
+ highly accurate, and also uses only fixed-point calculation, making it
+ more efficient on machines without a floating-point unit.
+ .
+ While mpg321 is not as fast as the non-free mpg123 on systems which have a
+ floating point unit, it comes under a fully Free license, which allows greater
+ freedom to its users. For most people who want mpg123, mpg321 is a better
+ alternative.
+
+Package: libgcrypt1
+Priority: important
+Section: libs
+Installed-Size: 300
+Maintainer: Matthias Urlichs <smurf@debian.org>
+Architecture: i386
+Source: libgcrypt
+Version: 1.1.12-8
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/libg/libgcrypt/libgcrypt1_1.1.12-8_i386.deb
+Size: 127150
+MD5sum: 6a328a6794543299743085f8c12ecb96
+Description: LGPL Crypto library - runtime library
+ libgcrypt contains cryptographic functions. Most important free
+ ciphers have been implemented: arcfour, blowfish, cast5, des,
+ 3DES, elgamal, rijndael, RSA, twofish; as well as hash algorithms:
+ DSA, MD5, RMD160, SHA1, tiger.
+ .
+ This is an old version. It is provided in Debian for compatibility reasons.
+
+Package: knotes
+Priority: optional
+Section: kde
+Installed-Size: 1740
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Replaces: kontact (<< 4:3.2.92)
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkcal2 (>= 4:3.3.0), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0)
+Filename: pool/main/k/kdepim/knotes_3.3.0-2_i386.deb
+Size: 549380
+MD5sum: 8165fa7ab3c794b53dc9355a0e33e1c3
+Description: KDE sticky notes
+ KNotes is a program that lets you write sticky notes. The notes are saved
+ automatically when you exit the program, and they display when you open the
+ program. The program supports printing and mailing your notes.
+ .
+ This package is part of the official KDE pim module.
+
+Package: dnsutils
+Priority: standard
+Section: net
+Installed-Size: 332
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Source: bind9
+Version: 1:9.2.3+9.2.4-rc7-1
+Replaces: bind, bind9 (<< 1:9.1.0-3)
+Depends: libc6 (>= 2.3.2.ds1-4), libdns11, libisc7, liblwres1, libssl0.9.7, bind9-host | host
+Suggests: rblcheck
+Conflicts: netstd (<< 2.00)
+Filename: pool/main/b/bind9/dnsutils_9.2.3+9.2.4-rc7-1_i386.deb
+Size: 161446
+MD5sum: 45b468e04d45968863104413dbae3619
+Description: Clients provided with BIND
+ The Berkeley Internet Name Domain (BIND) implements an Internet domain
+ name server. BIND is the most widely-used name server software on the
+ Internet, and is supported by the Internet Software Consortium, www.isc.org.
+ .
+ This package delivers various client programs related to DNS that are
+ derived from the BIND source tree.
+Task: dns-server
+
+Package: libxpm4
+Priority: optional
+Section: libs
+Installed-Size: 360
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: xlibs (<< 4.3.0)
+Filename: pool/main/x/xfree86/libxpm4_4.3.0.dfsg.1-7_i386.deb
+Size: 178348
+MD5sum: b904a48748d11f26aeea0868c297a53a
+Description: X pixmap library
+ libXpm, the X pixmap library, is a set of routines used to store and retrieve
+ X pixmaps (an X Window System data structure comprising a rectangular array
+ of pixels) from files; the xpm file format is an extension of the monochrome
+ bitmap file format in the X11 specification. (Traditionally, libXpm was
+ maintained and distributed separately from the X Window System, but XFree86
+ has absorbed this library).
+
+Package: libxmuu1
+Priority: optional
+Section: libs
+Installed-Size: 312
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Replaces: xlibs (<< 4.3.0)
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: xlibs (<< 4.3.0)
+Filename: pool/main/x/xfree86/libxmuu1_4.3.0.dfsg.1-7_i386.deb
+Size: 155572
+MD5sum: 15f1c8e3eb88c3f32d9c7723121fd4e7
+Description: lightweight X Window System miscellaneous utility library
+ libXmuu is a very small set of miscellaneous utility functions extracted
+ from Xmu, Xt, and Xaw. This library is intended for X clients that need the
+ occasional useful function from these libraries but do not require the
+ toolkit overhead. To use libXmuu, simply include the headers for the other
+ libraries in the client and link against Xmuu instead of Xmu, Xt, and Xaw.
+ Needless to say, if the client uses functions from Xmu, Xt, or Xaw that are
+ not present in Xmuu, it will fail to link.
+
+Package: ktnef
+Priority: optional
+Section: kde
+Installed-Size: 468
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1)
+Filename: pool/main/k/kdepim/ktnef_3.3.0-2_i386.deb
+Size: 112444
+MD5sum: 4bc71d1360f8b69974f3fbb3b90853b6
+Description: KDE TNEF viewer
+ The TNEF File Viewer allows you to handle mail attachments using the TNEF
+ format. These attachments are usually found in mails coming from Microsoft
+ mail servers and embed the mail properties as well as the actual attachments.
+ .
+ This package is part of the official KDE pim module.
+
+Package: bubblefishymon
+Priority: optional
+Section: x11
+Installed-Size: 136
+Maintainer: Peter Palfrader <weasel@debian.org>
+Architecture: i386
+Source: bfm
+Version: 0.6.3-2
+Depends: libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.4.1), libgtk2.0-0 (>= 2.4.3), libpango1.0-0 (>= 1.4.0), libx11-6 | xlibs (>> 4.1.0)
+Filename: pool/main/b/bfm/bubblefishymon_0.6.3-2_i386.deb
+Size: 29318
+MD5sum: 70ce343c54d1d6b611b3dd772a378e03
+Description: system load dockapp with a duck
+ A load monitor dockapp, descended from wmfishtime and bubblemon.
+ Features include fish representing network traffic, bubbles representing
+ CPU usage, and a duck representing a duck.
+
+Package: liborbit0
+Priority: optional
+Section: libs
+Installed-Size: 504
+Maintainer: Sebastian Rittau <srittau@debian.org>
+Architecture: i386
+Source: orbit
+Version: 0.5.17-9
+Depends: cpp, libc6 (>= 2.3.1-1), libglib1.2 (>= 1.2.0), libwrap0
+Conflicts: libbonobo2 (<< 1.0.14)
+Filename: pool/main/o/orbit/liborbit0_0.5.17-9_i386.deb
+Size: 173760
+MD5sum: 8aff1d164e8233a537ed0d74d6109906
+Description: Libraries for ORBit - a CORBA ORB
+ ORBit is a lightweight CORBA ORB designed for use with the Gnome project.
+ (Nothing about it requires Gnome, though.)
+ .
+ This package contains the run-time libraries used by ORBit-based apps.
+
+Package: kfind
+Priority: optional
+Section: utils
+Installed-Size: 468
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0), kdebase-libs (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libkonq4 (>= 4:3.3.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Conflicts: kdebase-libs (<< 4:3.0.0)
+Filename: pool/main/k/kdebase/kfind_3.3.0-1_i386.deb
+Size: 176126
+MD5sum: c39448619160ff5140d84063c65209a4
+Description: KDE File Find Utility
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ kfind can be used to find files and directories on your
+ workstations.
+ .
+ This package is part of the official KDE base module.
+
+Package: libgnutls7
+Priority: important
+Section: libs
+Installed-Size: 396
+Maintainer: Matthias Urlichs <smurf@debian.org>
+Architecture: i386
+Source: gnutls7
+Version: 0.8.12-7
+Replaces: gnutls0, gnutls3, gnutls0.4
+Depends: libc6 (>= 2.3.2.ds1-4), libgcrypt1 (>> 1.1.11-0), liblzo1, libtasn1-0 (>= 0.1.1-2), zlib1g (>= 1:1.2.1)
+Suggests: gnutls-bin
+Conflicts: gnutls0, gnutls0.4
+Filename: pool/main/g/gnutls7/libgnutls7_0.8.12-7_i386.deb
+Size: 182014
+MD5sum: b37889575ac57d2ea1bd3015d0de36f1
+Description: GNU TLS library - runtime library
+ gnutls is a portable library which implements the Transport Layer
+ Security (TLS) 1.0 and Secure Sockets Layer (SSL) 3.0 protocols.
+ .
+ Currently gnutls implements:
+ - the TLS 1.0 and SSL 3.0 protocols, without any US-export
+ controlled algorithms
+ - X509 Public Key Infrastructure (with several limitations).
+ - SRP for TLS authentication.
+ - TLS Extension mechanism
+ .
+ This package contains the runtime libraries.
+
+Package: psutils
+Priority: optional
+Section: text
+Installed-Size: 331
+Maintainer: Rob Browning <rlb@defaultvalue.org>
+Architecture: i386
+Version: 1.17-17
+Provides: postscript-preview
+Depends: libc6 (>= 2.3.1-1), libpaper1
+Suggests: gs, gv
+Filename: pool/main/p/psutils/psutils_1.17-17_i386.deb
+Size: 86780
+MD5sum: 24b5bac47a2589560fb8436e81b91d11
+Description: A collection of PostScript document handling utilities
+ This collection of utilities is for manipulating PostScript
+ documents. Page selection and rearrangement are supported, including
+ arrangement into signatures for booklet printing, and page merging
+ for n-up printing.
+ .
+ Programs included: showchar psnup fixscribeps epsffit fixfmps fixtpps
+ fixwpps fixwwps fixpsditps extractres getafm fixmacps fixpspps
+ fixwfwps psbook pstops fixdlsrps includeres psresize psmerge psselect
+
+Package: libidl0
+Priority: optional
+Section: libs
+Installed-Size: 216
+Maintainer: Sebastian Rittau <srittau@debian.org>
+Architecture: i386
+Source: libidl
+Version: 0.8.3-1
+Depends: cpp, libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.2.3)
+Filename: pool/main/libi/libidl/libidl0_0.8.3-1_i386.deb
+Size: 85542
+MD5sum: 02434b0bd49d5879739e6a1a1a9a8504
+Description: library for parsing CORBA IDL files
+ libIDL is a small library for creating parse trees of CORBA v2.2 compliant
+ Interface Definition Language (IDL) files, which is a specification for
+ defining interfaces which can be used between different CORBA
+ implementations. libIDL is used in the ORBit2 IDL compiler, as well
+ as various language bindings (perl, python, etc.) for ORBit2.
+
+Package: ppp
+Priority: optional
+Section: base
+Installed-Size: 892
+Maintainer: Marco d'Itri <md@linux.it>
+Architecture: i386
+Version: 2.4.2+20040428-2
+Replaces: ppp-pam, ppp-udeb
+Depends: libc6 (>= 2.3.2.ds1-4), libpam0g (>= 0.76), libpcap0.7, libssl0.9.7, libpam-modules, libpam-runtime (>= 0.76-13.1), netbase, procps, makedev (>= 2.3.1-56)
+Suggests: libatm1
+Conflicts: ppp-pam, ppp-udeb, pppdcapiplugin (<= 1:3.2pre3-4)
+Filename: pool/main/p/ppp/ppp_2.4.2+20040428-2_i386.deb
+Size: 289120
+MD5sum: 555a57fb6ad42bfa0c9a6261e8af7fbd
+Description: Point-to-Point Protocol (PPP) daemon
+ The Point-to-Point Protocol (PPP) provides a standard way to transmit
+ datagrams over a serial link, as well as a standard way for the machines
+ at either end of the link (the "peers") to negotiate various optional
+ characteristics of the link. Using PPP, a serial link can be used to
+ transmit Internet Protocol (IP) datagrams, allowing TCP/IP connections
+ between the peers.
+
+Package: clipbook
+Priority: optional
+Section: x11
+Installed-Size: 328
+Maintainer: Eric Heintzmann <eric@gnustep.fr.st>
+Architecture: i386
+Source: gworkspace
+Version: 0.6.3-4
+Depends: gnustep-back (>= 0.9.3), libc6 (>= 2.3.2.ds1-4), libgnustep-base1 (>= 1.9.2), libgnustep-gui0 (>= 0.9.3), libobjc1 (>= 1:3.3.4-4)
+Filename: pool/main/g/gworkspace/clipbook_0.6.3-4_i386.deb
+Size: 75496
+MD5sum: 956561c1ec59b599b7ce21a0c97b607f
+Description: GNUstep Pasteboard Viewer
+ ClipBook is an utility that stores, displays and dispenses pasteboard
+ contents that can be copied and pasted or drag-and-dropped.
+
+Package: exim4
+Priority: important
+Section: mail
+Installed-Size: 32
+Maintainer: Exim4 Maintainers <pkg-exim4-maintainers@lists.alioth.debian.org>
+Architecture: all
+Version: 4.34-5
+Depends: exim4-base (>= 4.34), exim4-daemon-light | exim4-daemon-heavy | exim4-daemon-custom
+Filename: pool/main/e/exim4/exim4_4.34-5_all.deb
+Size: 1196
+MD5sum: 2d34984aff22458f8083f7fe21e391cc
+Description: An MTA (Mail Transport Agent)
+ Exim (v4) is a fully featured MTA (Mail Transport Agent) that is rather
+ easier to configure than smail or sendmail. It is a drop-in
+ replacement for sendmail/mailq/rsmtp.
+ .
+ This metapackage provides the essential components for running
+ an Exim (v4) MTA.
+Task: mail-server
+
+Package: libnet1
+Priority: optional
+Section: libs
+Installed-Size: 128
+Maintainer: Domenico Andreoli <cavok@debian.org>
+Architecture: i386
+Source: libnet
+Version: 1.1.2.1-1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/libn/libnet/libnet1_1.1.2.1-1_i386.deb
+Size: 50440
+MD5sum: 1d7426599a99d222addf71c05749aa69
+Description: Library for the construction and handling of network packets
+ libnet provides a portable framework for low-level network packet
+ writing and handling.
+ .
+ libnet features portable packet creation interfaces at the IP layer
+ and link layer, as well as a host of supplementary functionality.
+ .
+ Using libnet, quick and simple packet assembly applications can be
+ whipped up with little effort. With a bit more time, more complex
+ programs can be written (Traceroute and ping were easily rewritten
+ using libnet and libpcap).
+ .
+ This package contains the shared library.
+ .
+ Homepage: http://www.packetfactory.net/libnet
+
+Package: lirc
+Priority: extra
+Section: utils
+Installed-Size: 1084
+Maintainer: Amaya Rodrigo Sastre <amaya@debian.org>
+Architecture: i386
+Version: 0.6.6-12
+Depends: libc6 (>= 2.3.2.ds1-4), liblircclient0 (>= 0.6.4), debconf (>= 0.5) | debconf-2.0
+Pre-Depends: dialog
+Suggests: lirc-modules-source, lirc-x, lirc-svga
+Filename: pool/main/l/lirc/lirc_0.6.6-12_i386.deb
+Size: 210424
+MD5sum: 29ef2433429586ab3eaafe77e7e666b0
+Description: Linux Infra-red Remote Control support
+ This package provides the daemons and some utilities to support infra-red
+ remote controls under Linux.
+
+Package: html2text
+Priority: optional
+Section: web
+Installed-Size: 272
+Maintainer: Adrian Bridgett <bridgett@debian.org>
+Architecture: i386
+Version: 1.3.2a-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.2-1), libstdc++5 (>= 1:3.3.2-1)
+Filename: pool/main/h/html2text/html2text_1.3.2a-1_i386.deb
+Size: 89300
+MD5sum: 5c5b492057037c1be3ee3ded67376204
+Description: An advanced HTML to text converter
+ html2text was written because the author wasn't happy with the
+ output of "lynx -dump" and so he wrote something better.
+
+Package: wamerican
+Priority: standard
+Section: text
+Installed-Size: 930
+Maintainer: David Coe <davidc@debian.org>
+Architecture: all
+Source: scowl
+Version: 5-4
+Provides: wordlist
+Depends: debconf, dictionaries-common (>= 0.20), debconf (>= 0.5) | debconf-2.0
+Conflicts: wenglish (<< 5)
+Filename: pool/main/s/scowl/wamerican_5-4_all.deb
+Size: 259438
+MD5sum: 1f01473c7ec026ad4a77b4e49933aaf8
+Description: American English dictionary words for /usr/share/dict
+ This package provides the file /usr/share/dict/american-english
+ containing a list of English words with American spellings.
+ This list can be used by spelling checkers, and by programs such
+ as look(1).
+ .
+ There are also -small and -large versions of this wordlist,
+ and there are wbritish* and wcanadian* packages as well.
+
+Package: launchtool
+Priority: optional
+Section: admin
+Installed-Size: 253
+Maintainer: Enrico Zini <enrico@debian.org>
+Architecture: i386
+Version: 0.7-1
+Depends: libc6 (>= 2.3.1-1), libgcc1 (>= 1:3.2.2-1), libpopt0 (>= 1.6.4), libstdc++5 (>= 1:3.2.2-1)
+Filename: pool/main/l/launchtool/launchtool_0.7-1_i386.deb
+Size: 101584
+MD5sum: be3dec2af758830b378d4d19e87030cc
+Description: Runs a command supervising its execution
+ Runs a user-supplied command supervising its execution in
+ many ways:
+ .
+ * controlling the environment
+ * blocking signals
+ * logging the output
+ * changing user and group permissions
+ * limiting resource usage
+ * running it chrooted
+ * restarting it if it fails
+ * logging execution statistics
+ * running it continuously
+ * turning it into a daemon
+ .
+ Homepage: http://people.debian.org/~enrico/launchtool.html
+
+Package: libxrandr2
+Priority: optional
+Section: libs
+Installed-Size: 312
+Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
+Architecture: i386
+Source: xfree86
+Version: 4.3.0.dfsg.1-7
+Depends: libc6 (>= 2.3.2.ds1-4), libxext6 | xlibs (>> 4.1.0), libxrender1
+Filename: pool/main/x/xfree86/libxrandr2_4.3.0.dfsg.1-7_i386.deb
+Size: 155320
+MD5sum: dc352dc51bc68bde5bf66953d542ed35
+Description: X Window System Resize, Rotate and Reflection extension library
+ libXrandr provides an X Window System client interface to the root window
+ resizing, rotation, and reflection ("R and R") extension to the X protocol.
+ .
+ As with all X protocol extensions, support for the extension is required in
+ the X server for client programs using its functionality to work as expected.
+ The XFree86 X server does not yet support the resizing aspects of this
+ extension.
+
+Package: debhelper
+Priority: optional
+Section: devel
+Installed-Size: 956
+Maintainer: Joey Hess <joeyh@debian.org>
+Architecture: all
+Version: 4.2.20
+Depends: perl (>= 5.6.0-16), coreutils | fileutils (>= 4.0-2.1), file (>= 3.23-1), dpkg-dev (>= 1.7.0), html2text, debconf-utils (>= 1.1.1), binutils, po-debconf
+Suggests: dh-make
+Conflicts: dpkg-cross (<< 1.18)
+Filename: pool/main/d/debhelper/debhelper_4.2.20_all.deb
+Size: 355152
+MD5sum: 1db071e02da3988cf71b0edaee8949c6
+Description: helper programs for debian/rules
+ A collection of programs that can be used in a debian/rules file to
+ automate common tasks related to building debian packages. Programs
+ are included to install various files into your package, compress
+ files, fix file permissions, integrate your package with the debian
+ menu system, debconf, doc-base, etc. Most debian packages use debhelper
+ as part of their build process.
+
+Package: jpilot
+Priority: extra
+Section: otherosfs
+Installed-Size: 1756
+Maintainer: Ludovic Rousseau <rousseau@debian.org>
+Architecture: i386
+Version: 0.99.7-10
+Depends: libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.4.6), libgtk2.0-0 (>= 2.4.4), libncurses5 (>= 5.4-1), libpango1.0-0 (>= 1.4.1), libpisock8, libreadline4 (>= 4.3-1), debconf
+Recommends: jpilot-plugins
+Suggests: jpilot-syncmal, jpilot-mail, jpilot-backup
+Conflicts: jpilot-plugins (<< 0.99.7-6), jpilot-mail (<= 0.1.5-1), jpilot-syncmal (<= 0.72.1-2), jpilot-backup (<= 0.50-2)
+Filename: pool/main/j/jpilot/jpilot_0.99.7-10_i386.deb
+Size: 649824
+MD5sum: 923c0a8b31883c8649dd34be7d05bab7
+Description: Graphical app. to modify the contents of your Palm Pilot's DBs
+ J-Pilot is a desktop organizer application for PalmOS devices. It is
+ meant to be an alternative to the Palm Desktop provided by Palm.
+ .
+ You have access to the following applications:
+ o Datebook
+ o Address book
+ o ToDo list
+ o Memos
+ .
+ Plug-ins are available in the jpilot-plugins package.
+ .
+ Homepage: http://jpilot.org/
+
+Package: gimp
+Priority: optional
+Section: graphics
+Installed-Size: 7604
+Maintainer: Ari Pollak <ari@debian.org>
+Architecture: i386
+Version: 2.0.4-1
+Replaces: gimp1.3, gimp-nonfree
+Provides: gimp2.0, gimp-nonfree
+Depends: wget, gimp-data (= 2.0.4-1), aalib1 (>= 1.2), libart-2.0-2 (>= 2.3.16), libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libexif10, libexpat1 (>= 1.95.6), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgimp2.0 (>= 2.0.0), libgimpprint1 (>= 4.2.7), libglib2.0-0 (>= 2.4.1), libgtk2.0-0 (>= 2.4.4), libice6 | xlibs (>> 4.1.0), libjpeg62, liblcms1 (>= 1.08-1), libmng1 (>= 1.0.3-1), libpango1.0-0 (>= 1.4.1), libpng12-0 (>= 1.2.5.0-4), libsm6 | xlibs (>> 4.1.0), libtiff4, libwmf0.2-7 (>= 0.2.8), libx11-6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Recommends: gimp-svg
+Suggests: gimp-help-en | gimp-help, gimp-python
+Conflicts: gimp1.3, gimp-nonfree
+Filename: pool/main/g/gimp/gimp_2.0.4-1_i386.deb
+Size: 2981216
+MD5sum: 160dac3996544be0fa65cc5856c4f948
+Description: The GNU Image Manipulation Program, stable version 2.0
+ The GIMP lets you draw, paint, edit images, and much more! GIMP
+ includes the functionality and plug-ins of other famous image
+ editing and processing programs.
+ .
+ This is the stable version of GIMP.
+Task: desktop
+
+Package: libmagic1
+Priority: standard
+Section: libs
+Installed-Size: 1255
+Maintainer: Michael Piefel <piefel@debian.org>
+Architecture: i386
+Source: file
+Version: 4.10-3
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1)
+Suggests: file
+Conflicts: file (<= 4)
+Filename: pool/main/f/file/libmagic1_4.10-3_i386.deb
+Size: 223432
+MD5sum: d6d34763114b87ddc59b0a10545ccf69
+Description: File type determination library using "magic" numbers
+ This library can be used to classify files according to magic number
+ tests. It implements the core functionality of the file command.
+
+Package: libtiff4
+Priority: optional
+Section: libs
+Installed-Size: 328
+Maintainer: Josip Rodin <joy-packages@debian.org>
+Architecture: i386
+Source: tiff
+Version: 3.6.1-1.1
+Depends: libc6 (>= 2.3.2.ds1-4), libjpeg62, zlib1g (>= 1:1.2.1)
+Filename: pool/main/t/tiff/libtiff4_3.6.1-1.1_i386.deb
+Size: 102942
+MD5sum: ed59dc2ddc37109d8b1773933de636d1
+Description: Tag Image File Format library
+ libtiff is a library providing support for the Tag Image File Format
+ (TIFF), a widely used format for storing image data. Included is the
+ shared library.
+
+Package: libtagcoll0
+Priority: optional
+Section: libs
+Installed-Size: 568
+Maintainer: Enrico Zini <enrico@debian.org>
+Architecture: i386
+Source: libtagcoll
+Version: 0.99.1-1
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1)
+Filename: pool/main/libt/libtagcoll/libtagcoll0_0.99.1-1_i386.deb
+Size: 164932
+MD5sum: 826e3713b0a0a0b72249910004e2a119
+Description: Functions used to manipulate tagged collections
+ Tagged collections are collections of items tagged with multiple categories.
+ libtagcoll provides general infrastructure to handle tagged collection data,
+ plus various kind of tagged collection manipulation functions:
+ .
+ * apply various kinds of transformations to the collection;
+ * generate and apply tag patches;
+ * discover and show implicit hierarchical relationships between
+ tags;
+ * organize the collection in an intuitively navigable hierarchy.
+
+Package: debsums
+Priority: optional
+Section: admin
+Installed-Size: 64
+Maintainer: Brendan O'Dea <bod@debian.org>
+Architecture: all
+Version: 2.0.11
+Depends: perl (>= 5.8.0-3), debconf (>= 0.5) | debconf-2.0
+Filename: pool/main/d/debsums/debsums_2.0.11_all.deb
+Size: 19256
+MD5sum: 5eab4880019c4f3c46c6ed301aa0e74b
+Description: Verify installed package files against MD5 checksums.
+ debsums can verify the integrity of installed package files against
+ MD5 checksums installed by the package, or generated from a .deb
+ archive.
+
+Package: psgml
+Priority: optional
+Section: text
+Installed-Size: 1212
+Maintainer: Manoj Srivastava <srivasta@debian.org>
+Architecture: all
+Version: 1.3.1-10
+Depends: ucf (>= 0.08), emacs21, sgml-base, sgml-data
+Recommends: sp (>= 1.3) | opensp
+Suggests: debiandoc-sgml, linuxdoc-sgml, make, w3c-dtd-xhtml, w3-dtd-mathml
+Filename: pool/main/p/psgml/psgml_1.3.1-10_all.deb
+Size: 300760
+MD5sum: 65f098315e71795300b77013eb886398
+Description: An Emacs major mode for editing SGML documents.
+ PSGML is a major mode for the editor Emacs used for editing SGML
+ documents. It contains a simple SGML parser and can work with any
+ DTD. (The most popular nowadays are the HTML DTDs. This package
+ turns your emacs into the one of most powerful HTML editors and will
+ be ultimately flexible as well, since you could upgrade your editor
+ by just installing new DTDs). Functions provided includes menus and
+ commands for inserting tags with only the contextually valid tags,
+ identification of structural errors, editing of attribute values in a
+ separate window with information about types and defaults, and
+ structure based editing.
+ .
+ Since psgml parses the DTD to allow you to edit SGML documents, you do
+ need to have the DTDs installed in order to use psgml. Since psgml
+ installs itself as an HTML mode in Emacs, it depends on sgml-data. Some
+ other packages which also provide SGML DTDs are suggested, like
+ debiandoc-sgml and linuxdoc-sgml.
+ .
+ SGML, a language for encoding the structure of a document, is an ISO
+ standard: ISO 8879:1986 "Information processing - Text and office
+ systems - Standard Generalized Markup Language (SGML)".
+ .
+ Psgml is a standard package for XEmacs, and thus this package does not
+ install itself for XEmacsen.
+ .
+ Please visit the package's home page at
+ <URL:http://www.lysator.liu.se/projects/about_psgml.html>
+
+Package: synaptic
+Priority: optional
+Section: admin
+Installed-Size: 4016
+Maintainer: Michael Vogt <mvo@debian.org>
+Architecture: i386
+Version: 0.53.3-2
+Replaces: gsynaptic
+Provides: gsynaptic
+Depends: libapt-pkg-libc6.3-5-3.3, libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libglade2-0 (>= 1:2.3.6), libglib2.0-0 (>= 2.4.6), libgtk2.0-0 (>= 2.4.4), libice6 | xlibs (>> 4.1.0), libncurses5 (>= 5.4-1), libpango1.0-0 (>= 1.4.1), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libvte4 (>= 1:0.11.11), libx11-6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxml2 (>= 2.6.11), libxrender1, zlib1g (>= 1:1.2.1), gksu, scrollkeeper
+Recommends: deborphan
+Suggests: libgnome2-perl, apt-watch
+Conflicts: gsynaptic, menu (<< 2.1.11)
+Filename: pool/main/s/synaptic/synaptic_0.53.3-2_i386.deb
+Size: 1418804
+MD5sum: 95c9ca163e7e53ffe41cb40dec097527
+Description: Graphical package manager
+ Synaptic is a graphical package management tool based on GTK+ and APT.
+ Synaptic enables you to install, upgrade and remove software packages in
+ a user friendly way.
+ .
+ Besides these basic functions the following features are provided:
+ * Search and filter the list of available packages
+ * Perform smart system upgrades
+ * Fix broken package dependencies
+ * Edit the list of used repositories (sources.list)
+ * Download the latest changelog of a package
+ * Configure packages through the debconf system
+ * Browse all available documentation related to a package (dwww is required)
+
+Package: esound
+Priority: optional
+Section: sound
+Installed-Size: 88
+Maintainer: Ryan Murray <rmurray@debian.org>
+Architecture: i386
+Version: 0.2.34-1
+Replaces: esound-alsa
+Depends: libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libwrap0, esound-common (>= 0.2.34-1)
+Conflicts: esound-alsa, esound-common (<< 0.2.23-1)
+Filename: pool/main/e/esound/esound_0.2.34-1_i386.deb
+Size: 21732
+MD5sum: cafe1559f7905405a1691229db46a041
+Description: Enlightened Sound Daemon - Support binaries
+ This program is designed to mix together several digitized
+ audio streams for playback by a single device.
+
+Package: xli
+Priority: optional
+Section: graphics
+Installed-Size: 348
+Maintainer: James R. Van Zandt <jrv@debian.org>
+Architecture: i386
+Version: 1.17.0-14
+Depends: libc6 (>= 2.3.1-1), libjpeg62, libpng2(>=1.0.12), xlibs (>> 4.1.0), zlib1g (>= 1:1.1.4)
+Filename: pool/main/x/xli/xli_1.17.0-14_i386.deb
+Size: 136958
+MD5sum: 037ccb3205bcd89242c31b7194da213d
+Description: view images under X11
+ Can view the following image types under X11: FBM Image, Sun
+ Rasterfile, CMU WM Raster, Portable Bit Map (PBM, PGM, PPM), Portable
+ Network Graphics (PNG), Faces Project, GIF Image, JFIF style jpeg
+ Image, Utah RLE Image, Windows, OS/2 RLE Image, Photograph on CD
+ Image, X Window Dump, Targa Image, McIDAS areafile, G3 FAX Image, PC
+ Paintbrush Image, GEM Bit Image, MacPaint Image, X Pixmap, X Bitmap.
+
+Package: klogd
+Priority: important
+Section: base
+Installed-Size: 132
+Maintainer: Martin Schulze <joey@debian.org>
+Architecture: i386
+Source: sysklogd
+Version: 1.4.1-15
+Replaces: sysklogd
+Provides: linux-kernel-log-daemon
+Depends: libc6 (>= 2.3.2.ds1-4), sysklogd | system-log-daemon
+Conflicts: sysklogd (<= 1.3-33)
+Filename: pool/main/s/sysklogd/klogd_1.4.1-15_i386.deb
+Size: 38130
+MD5sum: 8bb0bdcc61be46b9d9dcfe32cf9f5ea6
+Description: Kernel Logging Daemon
+ The klogd daemon listens to kernel message sources and is responsible
+ for prioritizing and processing operating system messages. The klogd
+ daemon can run as a client of syslogd or optionally as a standalone
+ program. Klogd can now be used to decode EIP addresses if it can
+ determine a System.map file.
+
+Package: libqt3c102
+Priority: optional
+Section: libs
+Installed-Size: 7132
+Maintainer: Martin Loschwitz <madkiss@debian.org>
+Architecture: i386
+Source: qt-x11-free
+Version: 3:3.3.3-4
+Replaces: libqt3-gl, qt3-tools (<< 2:3.0.2-20020306-1), libqt3, libqt3-mt
+Depends: libaudio2, libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libjpeg62, libmng1 (>= 1.0.3-1), libpng12-0 (>= 1.2.5.0-4), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxcursor1 (>> 1.1.2), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxrandr2 | xlibs (>> 4.3.0), libxrender1, libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), fontconfig
+Suggests: libqt3c102-psql, libqt3c102-mysql, libqt3c102-odbc
+Conflicts: libqt3-gl, libqt3, libqt3c
+Filename: pool/main/q/qt-x11-free/libqt3c102_3.3.3-4_i386.deb
+Size: 2923246
+MD5sum: 72f17d691075cf0a2c048d85da70c6ec
+Description: Qt GUI Library, Version 3
+ This is the Trolltech Qt library, version 3. It's necessary for
+ applications that link against the libqt.so.3.
+ .
+ WARNING: The nonthreaded version of Qt3 is considered deprecated and
+ may disappear anytime in the future. Please use libqt3c102-mt instead
+ (Read README.Debian for instructions).
+
+Package: libgpmg1
+Priority: standard
+Section: libs
+Installed-Size: 104
+Maintainer: Debian GPM Team <pkg-gpm-devel@lists.alioth.debian.org>
+Architecture: i386
+Source: gpm
+Version: 1.19.6-17
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1)
+Suggests: gpm
+Conflicts: libgpm1 (<< 1.12-3)
+Filename: pool/main/g/gpm/libgpmg1_1.19.6-17_i386.deb
+Size: 48640
+MD5sum: c2d1397b866dff46666232a3cdb88429
+Description: General Purpose Mouse - shared library
+ This package provides a library that handles mouse requests
+ and delivers them to applications. See the description for the 'gpm'
+ package for more information.
+
+Package: gzip
+Essential: yes
+Priority: required
+Section: base
+Installed-Size: 232
+Maintainer: Bdale Garbee <bdale@gag.com>
+Architecture: i386
+Version: 1.3.5-9
+Depends: debianutils (>= 1.6)
+Pre-Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: less
+Filename: pool/main/g/gzip/gzip_1.3.5-9_i386.deb
+Size: 70632
+MD5sum: 8e17af6f0a98ece32202c8c3962a7be8
+Description: The GNU compression utility
+ This is the standard GNU file compression utility, which is also the default
+ compression tool for Debian. It typically operates on files with names
+ ending in '.gz'.
+ .
+ This package can also decompress '.Z' files created with 'compress'.
+
+Package: pump
+Priority: optional
+Section: base
+Installed-Size: 112
+Maintainer: Anibal Monsalve Salazar <A.Monsalve.Salazar@IEEE.org>
+Architecture: i386
+Version: 0.8.19-5
+Provides: dhcp-client
+Depends: libc6 (>= 2.3.2.ds1-4), libpopt0 (>= 1.7)
+Suggests: resolvconf
+Conflicts: dhcpcd
+Filename: pool/main/p/pump/pump_0.8.19-5_i386.deb
+Size: 31372
+MD5sum: 39f4a40bb89d03f87a049a73fd1fb032
+Description: simple DHCP/BOOTP client
+ This is the DHCP/BOOTP client written by RedHat.
+
+Package: procmail
+Priority: standard
+Section: mail
+Installed-Size: 328
+Maintainer: Santiago Vila <sanvila@debian.org>
+Architecture: i386
+Version: 3.22-9
+Depends: libc6 (>= 2.2.4-4)
+Recommends: exim4 | mail-transport-agent | fetchmail
+Conflicts: suidmanager (<< 0.50)
+Filename: pool/main/p/procmail/procmail_3.22-9_i386.deb
+Size: 135890
+MD5sum: 3b361fd5d1778cb927de1dc56128e3e0
+Description: Versatile e-mail processor
+ Can be used to create mail-servers, mailing lists, sort your incoming
+ mail into separate folders/files (real convenient when subscribing to one
+ or more mailing lists or for prioritising your mail), preprocess your
+ mail, start any programs upon mail arrival (e.g. to generate different
+ chimes on your workstation for different types of mail) or selectively
+ forward certain incoming mail automatically to someone.
+Task: mail-server
+
+Package: libgail17
+Priority: optional
+Section: libs
+Installed-Size: 912
+Maintainer: Akira TAGOH <tagoh@debian.org>
+Architecture: i386
+Source: gail
+Version: 1.6.6b-1
+Replaces: libgail0 (<< 0.6-1), libgailutil9 (<< 0.9-2)
+Depends: libart-2.0-2 (>= 2.3.16), libatk1.0-0 (>= 1.6.0), libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.4.6), libgnomecanvas2-0 (>= 2.6.0), libgtk2.0-0 (>= 2.4.4), libpango1.0-0 (>= 1.4.1)
+Conflicts: libgailutil9 (<< 0.9-2)
+Filename: pool/main/g/gail/libgail17_1.6.6b-1_i386.deb
+Size: 141346
+MD5sum: 695532139d3a9634918cfbdef2a39780
+Description: GNOME Accessibility Implementation Library -- the shared libraries
+ Gail implements ATK interfaces for GTK+ widgets. which is dynamically
+ loadable at runtime by a GTK+ application. Once loaded, those parts of
+ your application that use standard GTK+ widgets will have a basic level
+ of accessibility, without you having to modify your application at all.
+ .
+ This package contains the shared library.
+
+Package: lpr
+Priority: standard
+Section: net
+Installed-Size: 388
+Maintainer: Adam Majer <adamm@galacticasoftware.com>
+Architecture: i386
+Version: 1:2003.09.23-7
+Depends: libc6 (>= 2.3.2.ds1-4), netbase
+Suggests: magicfilter | apsfilter, gs
+Conflicts: suidmanager (<< 0.50)
+Filename: pool/main/l/lpr/lpr_2003.09.23-7_i386.deb
+Size: 116522
+MD5sum: 41602523c94995b395a7326bb03c4a40
+Description: BSD lpr/lpd line printer spooling system
+ This is the BSD printer spooler and associated utilities.
+ You can use this for local and remote printers.
+ .
+ If you install magicfilter or apsfilter (along with ghostscript),
+ lpr will be able to automatically handle special file types
+ (such as Postscript and PDF files).
+
+Package: libflac4
+Priority: optional
+Section: libs
+Installed-Size: 268
+Maintainer: Matt Zimmerman <mdz@debian.org>
+Architecture: i386
+Source: flac
+Version: 1.1.0-11
+Replaces: libflac3 (= 1.0.4-1)
+Depends: debconf, libc6 (>= 2.3.2.ds1-4)
+Conflicts: libflac3 (= 1.0.4-1)
+Filename: pool/main/f/flac/libflac4_1.1.0-11_i386.deb
+Size: 98344
+MD5sum: d947780f510675324b1eb58081c1e8e8
+Description: Free Lossless Audio Codec - runtime C library
+ FLAC stands for Free Lossless Audio Codec. Grossly oversimplified, FLAC is
+ similar to MP3, but lossless. The FLAC project consists of:
+ .
+ * The stream format
+ * libFLAC, which implements a reference encoder, stream decoder, and file
+ decoder
+ * flac, which is a command-line wrapper around libFLAC to encode and decode
+ .flac files
+ * Input plugins for various music players (Winamp, XMMS, and more in the
+ works)
+ .
+ This package contains the runtime library libFLAC.
+
+Package: gnome
+Priority: optional
+Section: gnome
+Installed-Size: 16
+Maintainer: Jordi Mallach <jordi@debian.org>
+Architecture: all
+Source: meta-gnome2
+Version: 58
+Depends: gnome-desktop-environment (= 58), gnome-office (= 58), bluefish, evolution | balsa, gnome-cups-manager, gnome-system-tools (>= 0.90.0), gnome-themes-extras, magicdev | gnome-volume-manager, rhythmbox, synaptic | gnome-apt, totem, xscreensaver
+Filename: pool/main/m/meta-gnome2/gnome_58_all.deb
+Size: 9338
+MD5sum: bd79126188495e46d56091feae14c96a
+Description: The GNOME Desktop Environment, with extra components
+ This the GNOME Desktop environment, a graphical interface to use on your
+ Debian system. It includes a wide range of applications, including programs
+ for email, messaging, word processing, financial accounting and more.
+Task: desktop
+
+Package: netbase
+Priority: important
+Section: base
+Installed-Size: 176
+Maintainer: Anthony Towns <ajt@debian.org>
+Architecture: all
+Version: 4.18
+Depends: ifupdown, netkit-inetd, tcpd, iputils-ping | ping, debconf
+Conflicts: xinetd (<= 2.2.1-8), netstd (<< 3.00), nfs-common (<< 1:0.3.2-1), nfs-user-server (<< 2.2beta47-9), nis (<= 3.6-2), rstatd (<= 3.03-3), rwalld (<= 0.16-1), rusersd (<= 0.17-1), ugidd (<< 2.2beta47-9)
+Filename: pool/main/n/netbase/netbase_4.18_all.deb
+Size: 39976
+MD5sum: e8bcbf9799dbfec38f5edb0326d896da
+Description: Basic TCP/IP networking system
+ This package provides the necessary infrastructure for basic TCP/IP based
+ networking.
+
+Package: lsb
+Priority: extra
+Section: misc
+Installed-Size: 124
+Maintainer: Chris Lawrence <lawrencc@debian.org>
+Architecture: all
+Version: 1.3-9
+Depends: lsb-release, xlibmesa3-gl | libgl1, xlibs, libz1, exim4 | mail-transport-agent, at, bc, binutils, bsdmainutils, cpio, cron, file, libc6-dev | libc-dev, locales, lpr, m4, make, man-db, mawk | gawk, ncurses-term, passwd, patch, pax, procps, psmisc, rsync, alien (>= 8.36), python (>> 2.2.2), debconf (>= 0.5) | debconf-2.0
+Conflicts: python (>> 2.5), libutahglx1
+Filename: pool/main/l/lsb/lsb_1.3-9_all.deb
+Size: 27214
+MD5sum: abcca3a59de463499ec5efa23f6bde92
+Description: Linux Standard Base 1.3 core support package
+ The Linux Standard Base (http://www.linuxbase.org/) is a standard
+ core system that third-party applications written for Linux can
+ depend upon.
+ .
+ This package provides an implementation of version 1.3 of the Linux
+ Standard Base for Debian on the Intel x86, Intel ia64 (Itanium), IBM
+ S390, and PowerPC 32-bit architectures with the Linux kernel. Future
+ revisions of the specification and this package may support the LSB
+ on additional architectures and kernels.
+ .
+ The intent of this package is to provide a best current practice way
+ of installing and running LSB packages on Debian GNU/Linux. Its
+ presence does not imply that we believe that Debian fully complies
+ with the Linux Standard Base, and should not be construed as a
+ statement that Debian is LSB-compliant.
+
+Package: ed
+Priority: important
+Section: editors
+Installed-Size: 144
+Maintainer: James Troup <james@nocrew.org>
+Architecture: i386
+Version: 0.2-20
+Depends: libc6 (>= 2.3.1-1)
+Filename: pool/main/e/ed/ed_0.2-20_i386.deb
+Size: 44718
+MD5sum: 0c466ce6a160c62fa558fbbb46a4ea45
+Description: The classic unix line editor
+ ed is a line-oriented text editor. It is used to
+ create, display, modify and otherwise manipulate text
+ files.
+ .
+ red is a restricted ed: it can only edit files in the
+ current directory and cannot execute shell commands.
+
+Package: exim4-config
+Priority: important
+Section: mail
+Installed-Size: 692
+Maintainer: Exim4 Maintainers <pkg-exim4-maintainers@lists.alioth.debian.org>
+Architecture: all
+Source: exim4
+Version: 4.34-5
+Provides: exim4-config-2
+Depends: debconf (>= 0.5) | debconf-2.0, adduser, passwd (>= 1:4.0.3-9) | passwd (<< 1:4.0.3-1)
+Conflicts: exim, exim-tls, exim4-config, exim4-config-2, bash (<< 2.05), exim4-daemon-light (<< 4.33), exim4-daemon-heavy (<< 4.33), courier-mta, masqmail, nullmailer, postfix, postfix-snap, sendmail, smail, ssmtp, zmailer, zmailer-ssl
+Filename: pool/main/e/exim4/exim4-config_4.34-5_all.deb
+Size: 171940
+MD5sum: eb54d310e83a1fa50ce8e8077d258291
+Description: Debian configuration for exim4
+ This package provides the configuration for the exim4 daemon
+ packages. The configuration framework has been split off the main
+ package to allow sites to replace the configuration scheme with their
+ own without having to change the actual exim packages.
+ .
+ Sites with special configuration needs (having a lot of identically
+ configured machines for example) can use this to distribute their own
+ custom configuration via the packaging system, using the magic
+ available with dpkg's conffile handling, without having to do local
+ changes on all of these machines.
+Task: mail-server
+
+Package: libpisync0
+Priority: optional
+Section: libs
+Installed-Size: 64
+Maintainer: Ludovic Rousseau <rousseau@debian.org>
+Architecture: i386
+Source: pilot-link
+Version: 0.11.8-10
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), libpisock8, libreadline4 (>= 4.3-1)
+Suggests: gnome-pilot, evolution
+Filename: pool/main/p/pilot-link/libpisync0_0.11.8-10_i386.deb
+Size: 13720
+MD5sum: 41477b722c214a9d36f43c25789e143f
+Description: Synchronization library for PalmOS devices
+ libpisync is a library for applications to synchronize data with PalmOS
+ devices.
+ .
+ See packages gnome-pilot and evolution if you are looking to user
+ programs for your PDA.
+ .
+ Homepage: http://www.pilot-link.org/
+
+Package: korganizer
+Priority: optional
+Section: kde
+Installed-Size: 4952
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Replaces: kalarm (<< 4:3.2.0)
+Depends: kdelibs4 (>= 4:3.3.0), ktnef (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libkcal2 (>= 4:3.3.0), libkdepim1 (>= 4:3.3.0), libkgantt0 (>= 4:3.3.0), libkpimexchange1 (>= 4:3.3.0), libkpimidentities1 (>= 4:3.3.0), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), perl
+Recommends: kghostview
+Filename: pool/main/k/kdepim/korganizer_3.3.0-2_i386.deb
+Size: 1822088
+MD5sum: dd6b679c50f1dae775fe211b11b2afef
+Description: KDE personal organizer
+ A complete calendar and scheduling program. KOrganizer supports information
+ interchange with other calendar applications through the industry standard
+ vCalendar file format.
+ .
+ KOrganizer aims to be a complete program for organizing your appointments,
+ contacts, projects, etc. It is in the same spirit as similar programs like
+ the now ubiquitous Microsoft Outlook, Starfish Internet Sidekick,
+ Time & Chaos, etc. (all for the Microsoft Windows platform, of course.) Best
+ of all, It reads and writes the vCalendar file format NATIVELY (please see
+ http://www.imc.org/pdi for more information), which is now an industry-wide
+ personal data interchange format. Because of this, you should be able to move
+ from other modern PIMs to KOrganizer with relative ease. Current users of the
+ popular program ical should definitely take a look at KOrganizer and compare
+ features.
+ .
+ KOrganizer also offers full synchronization with your Palm Pilot, if you have
+ kpilot installed.
+ .
+ This package is part of the official KDE pim module.
+
+Package: eximon
+Priority: optional
+Section: mail
+Installed-Size: 136
+Maintainer: Mark Baker <mbaker@iee.org>
+Architecture: i386
+Source: exim
+Version: 3.36-11
+Depends: libc6 (>= 2.3.2.ds1-4), libpam0g (>= 0.76), libpcre3 (>= 4.0), libxaw7 (>> 4.1.0), xlibs (>> 4.1.0), exim
+Filename: pool/main/e/exim/eximon_3.36-11_i386.deb
+Size: 39544
+MD5sum: 0bbf0c2a37ba2b7c0b678a0a52d23d51
+Description: X monitor for the exim mail transport agent.
+ This allows administrators to view the exim agent's mail queue
+ and logs, and perform a variety of actions on queued messages,
+ such as freezing, bouncing and thawing messages.
+
+Package: magicdev
+Priority: optional
+Section: gnome
+Installed-Size: 692
+Maintainer: Sean Harshbarger <harshy@dersoldat.org>
+Architecture: i386
+Version: 1.1.6-2
+Depends: libart-2.0-2, libatk1.0-0 (>= 1.4.1), libbonobo2-0 (>= 2.4.3), libbonoboui2-0 (>= 2.4.3), libc6 (>= 2.3.2.ds1-4), libgconf2-4 (>= 2.4.0.1), libglade2-0, libglib2.0-0 (>= 2.2.3), libgnome2-0, libgnomecanvas2-0, libgnomeui-0, libgnomevfs2-0 (>= 2.4.1), libgnomevfs2-common (>= 2.4.1), libgtk2.0-0 (>= 2.2.1), libice6 | xlibs (>> 4.1.0), liborbit2 (>= 1:2.8.0), libpango1.0-0 (>= 1.2.1), libpopt0 (>= 1.7), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.8), zlib1g (>= 1:1.2.1), gnome-mime-data
+Recommends: gnome-media, nautilus, nautilus-cd-burner, totem
+Filename: pool/main/m/magicdev/magicdev_1.1.6-2_i386.deb
+Size: 47396
+MD5sum: e059fd48441cf78e882c3f5ca5ebc096
+Description: A GNOME daemon for automatically mounting/playing CDs
+ Magicdev is a daemon that runs within the GNOME environment and
+ detects when a CD is removed or inserted. Magicdev handles running
+ autorun programs on the CD, updating the File Manager, and playing
+ audio CDs.
+
+Package: audiooss
+Priority: optional
+Section: sound
+Installed-Size: 128
+Maintainer: Lex Spoon <lex@debian.org>
+Architecture: i386
+Version: 1.0.0-2
+Depends: libc6 (>= 2.3.1-1), xlibs (>> 4.1.0)
+Filename: pool/main/a/audiooss/audiooss_1.0.0-2_i386.deb
+Size: 33186
+MD5sum: bd91b4897d3cd6a10af8af842096ff57
+Description: transparent OSS emulation over NAS
+ This is a compatibility utility that allows programs written
+ for the popular Open Sound System (OSS) interface to run using
+ the Network Audio System (NAS) instead. It works by preloading a
+ library to intercept and manipulate critical system calls such as
+ open(), read(), and write(). The emulation is not yet complete,
+ but it already works for many programs.
+
+Package: poster
+Priority: optional
+Section: text
+Installed-Size: 84
+Maintainer: Peter S Galbraith <psg@debian.org>
+Architecture: i386
+Version: 20020830-2
+Depends: libc6 (>= 2.3.1-1), libpaper1
+Filename: pool/main/p/poster/poster_20020830-2_i386.deb
+Size: 20712
+MD5sum: 11e2c381146b6225f83515aaaba6a2b5
+Description: Create large posters out of PostScript pages
+ Poster takes a one-page PostScript file and scales it to a specified
+ size. It can tile the resulting image into multiple smaller pages
+ that can be pasted together to form the big poster. Poster prefers
+ EPS as its input although freer forms of PostScript are also
+ understood.
+
+Package: libkpimexchange1
+Priority: optional
+Section: libs
+Installed-Size: 316
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Replaces: kdepim-libs (<< 4:3.2.0)
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkcal2 (>= 4:3.3.0), libstdc++5 (>= 1:3.3.4-1)
+Conflicts: kdepim-libs (<< 4:3.2.0)
+Filename: pool/main/k/kdepim/libkpimexchange1_3.3.0-2_i386.deb
+Size: 97056
+MD5sum: 3e550a209975153ce5559213e78cf62f
+Description: KDE PIM Exchange library
+ This is the runtime package for programs that use the libkpimexchange
+ library.
+ .
+ This package is part of the official KDE pim module.
+
+Package: menu
+Priority: optional
+Section: admin
+Installed-Size: 1428
+Maintainer: Bill Allombert <ballombe@debian.org>
+Architecture: i386
+Version: 2.1.17
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libstdc++5 (>= 1:3.3.4-1), dpkg (>= 1.10)
+Suggests: gksu | kdebase-bin
+Filename: pool/main/m/menu/menu_2.1.17_i386.deb
+Size: 386990
+MD5sum: dc35ba47bb434bb7293db4aea0df5427
+Description: Provides update-menus functions for some applications
+ The intent of this package is to streamline the menus (like the
+ fvwm2 ones) in Debian. For this purpose, menu provides an "update-menus"
+ command, that will read all installed menu files (as provided by
+ other packages in /usr/lib/menu), and run the frontends for various
+ window-managers in /etc/menu-methods to create startup files for
+ the window managers (or pdmenu).
+ The user and system admin can easily override the menu files
+ on a by-user or by-system bases.
+Task: desktop
+
+Package: totem
+Priority: optional
+Section: gnome
+Installed-Size: 32
+Maintainer: Sebastien Bacher <seb128@debian.org>
+Architecture: all
+Version: 0.99.15.1-2
+Depends: totem-xine (= 0.99.15.1-2)
+Filename: pool/main/t/totem/totem_0.99.15.1-2_all.deb
+Size: 4834
+MD5sum: cdef16cbccb9310554bdb36563517a40
+Description: A simple media player for the Gnome desktop (dummy package)
+ Its features :
+ .
+ * Play any xine supported file
+ * LIRC support
+ * Shoutcast, m3u, asx, SMIL and ra playlists support
+ * DVD (with menus), VCD and Digital CD (with CDDB) playback
+ * TV-Out configuration with optional resolution switching
+ * 4.0, 5.0, 5.1 and stereo audio output
+ * Gnome-vfs input plugin (this was moved to xine-lib)
+ * Full-screen mode (move your mouse and you get nice controls) with
+ Xinerama, dual-head and RandR support
+ * Remote operation mode to control a running Totem
+ * Seek and Volume controls
+ * Aspect ratio toggling, Scaling based on the video's original size
+ * Full keyboard control
+ * Simple playlist with Repeat mode, with saving feature
+ * Gnome and Nautilus integration (Totem registers the file-types,
+ adds a menu item, and uses the proxy configuration)
+ * Nice default logo
+ * Properties window (information about the current movie)
+ * Drag'n'drop and mousewheel actions
+ * Screenshot feature
+ * Brightness and Contrast control
+ * Visualisation plugin when playing audio-only files
+ * Video thumbnailer (Requires nautilus from the GNOME 2.2 release)
+ * Nautilus properties page
+ * Works on remote displays
+ * External subtitle support (only on the command-line,
+ use like: totem file:///file.avi#subtitle:file.sub)
+ * DVD, VCD and OGG/OGM subtitles and languages support
+ * Automatic download of the Windows DLL plugins
+ * Dialog for more accurate seeking
+ * Authentication dialogs when location requires it
+ .
+ Author: Bastien Nocera <hadess@hadess.net>
+ Homepage: http://www.hadess.net/totem.php3
+ .
+ This package is a dummy package depending on totem-xine for the moment.
+
+Package: iamerican
+Priority: standard
+Section: text
+Installed-Size: 1168
+Maintainer: David Coe <davidc@debian.org>
+Architecture: i386
+Source: ispell
+Version: 3.1.20.0-4
+Provides: ispell-dictionary
+Depends: ispell, debconf, dictionaries-common (>= 0.20), debconf (>= 0.5) | debconf-2.0
+Recommends: wamerican
+Conflicts: ispell (<< 3.1.18-2)
+Filename: pool/main/i/ispell/iamerican_3.1.20.0-4_i386.deb
+Size: 417630
+MD5sum: 6d5597e615835758696512a02b4443e2
+Description: An American English dictionary for ispell
+ This is the americanmed+ dictionary, as supplied with
+ the source for ispell, with additional words added from
+ the more comprehensive wamerican wordlist package.
+ .
+ This package also recommends wamerican because ispell's
+ (L)ookup command needs a wordlist.
+
+Package: libisccc0
+Priority: optional
+Section: libs
+Installed-Size: 136
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Source: bind9
+Version: 1:9.2.3+9.2.4-rc7-1
+Replaces: libbind0
+Depends: libc6 (>= 2.3.2.ds1-4), libisc7
+Conflicts: libbind0
+Filename: pool/main/b/bind9/libisccc0_9.2.3+9.2.4-rc7-1_i386.deb
+Size: 75742
+MD5sum: 4d5e4b91b5b73748bf2b5f07e9be7c05
+Description: Command Channel Library used by BIND
+ The Berkeley Internet Name Domain (BIND) implements an Internet domain
+ name server. BIND is the most widely-used name server software on the
+ Internet, and is supported by the Internet Software Consortium, www.isc.org.
+ .
+ This package delivers the libisccc shared library used by BIND's daemons
+ and clients, particularly rndc.
+
+Package: exim
+Priority: extra
+Section: mail
+Installed-Size: 1400
+Maintainer: Mark Baker <mbaker@iee.org>
+Architecture: i386
+Version: 3.36-11
+Replaces: mail-transport-agent
+Provides: mail-transport-agent
+Depends: libc6 (>= 2.3.2.ds1-4), libdb3 (>= 3.2.9-19), libident (>= 0.22-1), libldap2 (>= 2.1.17-1), libpam0g (>= 0.76), libpcre3 (>= 4.0), cron (>= 3.0pl1-42)
+Recommends: netbase
+Suggests: mail-reader, eximon
+Conflicts: mail-transport-agent, exim-doc-html (<= 3.00-2), suidregister (<< 0.50)
+Filename: pool/main/e/exim/exim_3.36-11_i386.deb
+Size: 758074
+MD5sum: 1a439cd60d7753e1632aaee4b5485abc
+Description: An MTA (Mail Transport Agent)
+ This MTA is rather easier to configure than smail or sendmail.
+ It is a drop-in replacement for sendmail/mailq/rsmtp.
+ Advanced features include the ability to reject connections from
+ known spam sites, and an extremely efficient queue processing
+ algorithm.
+
+Package: dhcpcd
+Priority: optional
+Section: net
+Installed-Size: 212
+Maintainer: Simon Kelley <simon@thekelleys.org.uk>
+Architecture: i386
+Version: 1:1.3.22pl4-17
+Replaces: dhcpcd-sv
+Provides: dhcp-client
+Depends: libc6 (>= 2.3.2.ds1-4), bsdutils (>= 2.11n), procps
+Recommends: pcmcia-cs
+Conflicts: dhcpcd-sv, dhcp-client, ifupdown (<< 0.6.4-4)
+Filename: pool/main/d/dhcpcd/dhcpcd_1.3.22pl4-17_i386.deb
+Size: 56510
+MD5sum: 738c06a31e972830e5f97a7119e74c60
+Description: DHCP client for automatically configuring IPv4 networking.
+ Simple configuration: supports executions of a script when the
+ IP address changes.
+
+Package: xaw3dg
+Priority: optional
+Section: x11
+Installed-Size: 488
+Maintainer: Francesco Paolo Lovergine <frankie@debian.org>
+Architecture: i386
+Source: xaw3d
+Version: 1.5+E-7
+Depends: libc6 (>= 2.3.2.ds1-4), libice6 | xlibs (>> 4.1.0), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxmu6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), libxt6 | xlibs (>> 4.1.0)
+Conflicts: axe (<< 6.1.2-2), xaw3d (<= 1.3-6), xfig (<< 1:3.2.4-rel-9), gv (<< 1:3.5.8-30.1)
+Filename: pool/main/x/xaw3d/xaw3dg_1.5+E-7_i386.deb
+Size: 155674
+MD5sum: c05bb0f17efb91a97e041a696dc08563
+Description: Xaw3d widget set
+ Xaw3d is a set of 3-D widgets based on the Athena Widget set, which
+ adds a three dimensional appearance on some of the widgets of X11
+ applications linked with this library.
+ .
+ Please note that this package no longer adds a three dimensional
+ appearance on applications dynamically linked against libXaw.
+
+Package: libgimpprint1
+Priority: optional
+Section: libs
+Installed-Size: 840
+Maintainer: Roger Leigh <rleigh@debian.org>
+Architecture: i386
+Source: gimp-print
+Version: 4.2.7-2
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1)
+Suggests: gimpprint-locales (>= 4.2.7-2)
+Filename: pool/main/g/gimp-print/libgimpprint1_4.2.7-2_i386.deb
+Size: 552150
+MD5sum: e1dfcf7cb3155d90f70901af66a13680
+Description: The Gimp-Print printer driver library
+ This package includes the Gimp-Print shared library, needed to
+ run programs using Gimp-Print drivers.
+ .
+ This is Gimp-Print version 4.2.7, a stable release in
+ the 4.2 line.
+ .
+ Gimp-Print is the print facility for the Gimp, and in addition a
+ suite of drivers that may be used with common UNIX spooling systems
+ using GhostScript or CUPS. These drivers provide printing quality
+ for UNIX/Linux on a par with proprietary vendor-supplied drivers in
+ many cases, and can be used for many of the most demanding printing
+ tasks.
+
+Package: portmap
+Priority: standard
+Section: net
+Installed-Size: 116
+Maintainer: Anibal Monsalve Salazar <A.Monsalve.Salazar@IEEE.org>
+Architecture: i386
+Version: 5-4
+Replaces: netbase (<< 4.00)
+Depends: libc6 (>= 2.3.2.ds1-4), libwrap0
+Filename: pool/main/p/portmap/portmap_5-4_i386.deb
+Size: 21904
+MD5sum: 38a316ca472062ed9cbc8dde0b94a62c
+Description: The RPC portmapper
+ Portmap is a server that converts RPC (Remote Procedure Call) program
+ numbers into DARPA protocol port numbers. It must be running in order
+ to make RPC calls.
+ .
+ Services that use RPC include NFS and NIS.
+
+Package: qcam
+Priority: extra
+Section: graphics
+Installed-Size: 228
+Maintainer: Paul Slootman <paul@debian.org>
+Architecture: i386
+Version: 0.91-11.1
+Depends: libc6 (>= 2.3.1-1), libjpeg62, svgalibg1 | svgalib-dummyg1, xlibs (>> 4.1.0)
+Filename: pool/main/q/qcam/qcam_0.91-11.1_i386.deb
+Size: 52130
+MD5sum: 38b861baeeaa0e075700b6ce7ba9068d
+Description: QuickCam image grabber
+ Tools for grabbing single frames and videos from black and white
+ Connectix QuickCam digital cameras. Includes X11 and svgalib versions.
+ .
+ Note that nowadays there is support in the 2.2 kernels for this camera in
+ the video4linux project, which is probably better than this.
+
+Package: zlib1g
+Priority: required
+Section: libs
+Installed-Size: 152
+Maintainer: Mark Brown <broonie@debian.org>
+Architecture: i386
+Source: zlib
+Version: 1:1.2.1.1-7
+Replaces: zlib1g-udeb
+Provides: libz1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: zlib1 (<= 1:1.0.4-7), zlib1g-udeb
+Filename: pool/main/z/zlib/zlib1g_1.2.1.1-7_i386.deb
+Size: 62086
+MD5sum: fdf4861ea3a0916385799d9945514844
+Description: compression library - runtime
+ zlib is a library implementing the deflate compression method found
+ in gzip and PKZIP. This package includes the shared library.
+
+Package: libungif4g
+Priority: optional
+Section: libs
+Installed-Size: 120
+Maintainer: Michael Fedrowitz <michaelf@debian.org>
+Architecture: i386
+Source: libungif4
+Version: 4.1.3-1
+Replaces: giflib4g, libungif-bin (<< 4.1.0b1-1)
+Provides: giflib4g
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: giflib4g
+Filename: pool/main/libu/libungif4/libungif4g_4.1.3-1_i386.deb
+Size: 56270
+MD5sum: 625f1701873beeec6f86ec06a6f2fda1
+Description: shared library for GIF images (runtime lib)
+ This is a shared library for working with GIF images.
+ .
+ The libungif library is a specially modified version of giflib which
+ is free of the Unisys LZW patent. It can read all GIFs, but only
+ write uncompressed GIFs. If you need to be able to write compressed
+ GIFs, you can install the non-free giflib packages instead (which may
+ not be available on CD).
+
+Package: libc5
+Priority: optional
+Section: oldlibs
+Installed-Size: 716
+Maintainer: Francesco Paolo Lovergine <frankie@debian.org>
+Architecture: i386
+Source: libc
+Version: 5.4.46-15
+Pre-Depends: ldso (>= 1.7.14-2)
+Filename: pool/main/libc/libc/libc5_5.4.46-15_i386.deb
+Size: 290828
+MD5sum: 60724d9e327e7aaae92822ed65c75f2a
+Description: The Linux C library version 5 (run-time libraries).
+ Includes shared libraries needed to run programs built with libc 5.
+ These libraries are modified to make them work better in a libc6
+ environment.
+ .
+ In conjunction with the altgcc package, binaries can be built which
+ depend on libc5.
+ .
+ Please note that libc5 is obsolete and only needed for commercial
+ applications. Bugs won't get fixed.
+
+Package: libjpeg62
+Priority: optional
+Section: libs
+Installed-Size: 192
+Maintainer: Bill Allombert <ballombe@debian.org>
+Architecture: i386
+Source: libjpeg6b
+Version: 6b-9
+Replaces: libjpeg6b
+Provides: libjpeg6b
+Depends: libc6 (>= 2.3.2-1)
+Conflicts: libjpeg6b
+Filename: pool/main/libj/libjpeg6b/libjpeg62_6b-9_i386.deb
+Size: 80570
+MD5sum: c6197df1cb4cfc012969486087f4e73a
+Description: The Independent JPEG Group's JPEG runtime library
+ The Independent JPEG Group's JPEG library is a library for handling
+ JPEG files.
+ .
+ This package contains the shared library.
+
+Package: pdnsd
+Priority: optional
+Section: net
+Installed-Size: 532
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Version: 1.1.11par-1
+Depends: libc6 (>= 2.3.2.ds1-4), adduser
+Suggests: resolvconf
+Conflicts: dnrd
+Filename: pool/main/p/pdnsd/pdnsd_1.1.11par-1_i386.deb
+Size: 197388
+MD5sum: 1fa1148d21f3379ac46de3362803b1f7
+Description: Proxy DNS Server
+ pdnsd is a proxy dns server with permanent caching (the cache contents are
+ written to hard disk on exit) that is designed to cope with unreachable or
+ down dns servers (for example in dial-in networking).
+ pdnsd can be used with applications that do dns lookups, eg on startup, and
+ can't be configured to change that behaviour, to prevent the often minute-long
+ hangs (or even crashes) that result from stalled dns queries.
+ Some Netscape Navigator versions for Unix, for example, expose this behaviour.
+ .
+ And it's IPv6 capable.
+
+Package: libmad0
+Priority: optional
+Section: libs
+Installed-Size: 148
+Maintainer: Kyle McMartin <kyle@debian.org>
+Architecture: i386
+Source: libmad
+Version: 0.15.1b-1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/libm/libmad/libmad0_0.15.1b-1_i386.deb
+Size: 71786
+MD5sum: c20ca6fe75c17b07b62666e245bda47c
+Description: MPEG audio decoder library
+ MAD is an MPEG audio decoder. It currently only supports the MPEG 1
+ standard, but fully implements all three audio layers (Layer I, Layer II,
+ and Layer III, the latter often colloquially known as MP3.)
+ .
+ MAD has the following special features:
+ - 100% fixed-point (integer) computation
+ - completely new implementation based on the ISO/IEC 11172-3 standard
+ - distributed under the terms of the GNU General Public License (GPL)
+
+Package: libsvga1
+Priority: optional
+Section: libs
+Installed-Size: 676
+Maintainer: Guillem Jover <guillem@debian.org>
+Architecture: i386
+Source: svgalib
+Version: 1:1.4.3-17
+Replaces: svgalibg1, svgalib-dummyg1
+Provides: svgalibg1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: svgalib, svgalib1 (<< 1:1.2.11-1), svgalib-dummyg1, svgalib-dummy1 (<< 1.2.11-1)
+Filename: pool/main/s/svgalib/libsvga1_1.4.3-17_i386.deb
+Size: 313458
+MD5sum: 7ba9ac07acf48615a8c8ed07e7dd2980
+Description: console SVGA display libraries
+ svgalib provides graphics capabilities to programs running on the
+ system console, without going through the X Window System. It uses
+ direct access to the video hardware to provide low-level access to
+ the standard VGA and SVGA graphics modes. Only works with some
+ video hardware; use with caution.
+ .
+ This package contains the shared libraries and config files.
+
+Package: tasksel
+Priority: optional
+Section: base
+Installed-Size: 1056
+Maintainer: Debian Install System Team <debian-boot@lists.debian.org>
+Architecture: all
+Version: 2.11
+Depends: debconf (>= 0.5) | debconf-2.0, liblocale-gettext-perl, aptitude (>= 0.2.15-1)
+Conflicts: debconf (<< 1.4.27), base-config (<< 2.32)
+Filename: pool/main/t/tasksel/tasksel_2.11_all.deb
+Size: 113082
+MD5sum: 2ad05b26fd060c6b395a6896b32188d2
+Description: Tool for selecting tasks for installation on Debian system
+ This package provides 'tasksel', a simple interface for users who
+ want to pick general tasks for installation on their Debian GNU/Linux
+ system. This program is used during the installation process, but
+ users can also use tasksel at any point.
+
+Package: djtools
+Priority: optional
+Section: text
+Installed-Size: 252
+Maintainer: Joe Drew <drew@debian.org>
+Architecture: i386
+Version: 1.2.5
+Depends: libc6 (>= 2.3.1-1), libgcc1 (>= 1:3.2.1-1), libpaper1, libstdc++5 (>= 1:3.2.1-1)
+Filename: pool/main/d/djtools/djtools_1.2.5_i386.deb
+Size: 152652
+MD5sum: 53c0e6a999af7941722ca25d326e25b1
+Description: Tools for HP DeskJet printer
+ These tools allow the user to make better use of HP's DeskJet line of
+ printers. They permit the user to send commands to the printer as well as
+ make better use of the HP DeskJet's text modes.
+ .
+ These programs were written for the HP DeskJet 500 series but should work
+ with all printers that understand HP PCL.
+
+Package: netpbm
+Priority: optional
+Section: graphics
+Installed-Size: 4048
+Maintainer: Andreas Barth <aba@not.so.argh.org>
+Architecture: i386
+Source: netpbm-free
+Version: 2:10.0-7
+Replaces: pnmtopng, pbmwbmp, netpbm-dev, netpbm-nonfree
+Provides: pnmtopng, pbmwbmp
+Depends: bc, libnetpbm10 (>= 2:10.0-7), libc6 (>= 2.3.2.ds1-4), libjpeg62, libpng12-0 (>= 1.2.5.0-4), libtiff4, zlib1g (>= 1:1.2.1)
+Recommends: gs | gs-aladdin
+Conflicts: netpbm-nonfree (<= 1:19940301.1-3), pnmtopng, pbmwbmp, netpbm-dev (<= 2:9.10), ucbmpeg (<= 1r2-6)
+Filename: pool/main/n/netpbm-free/netpbm_10.0-7_i386.deb
+Size: 1199294
+MD5sum: 0f26792d90edc586734e02b08bb1dc08
+Description: Graphics conversion tools
+ Netpbm is a toolkit for manipulation of graphic images, including
+ conversion of images between a variety of different formats. There
+ are over 220 separate tools in the package including converters for
+ more than 80 graphics formats.
+ .
+ Website is http://netpbm.alioth.debian.org/
+
+Package: alien
+Priority: optional
+Section: admin
+Installed-Size: 480
+Maintainer: Joey Hess <joeyh@debian.org>
+Architecture: all
+Version: 8.46
+Depends: debhelper (>= 3), perl (>= 5.6.0-16), rpm (>= 2.4.4-2), dpkg-dev, make, cpio
+Suggests: patch, bzip2, lsb-rpm, lintian
+Filename: pool/main/a/alien/alien_8.46_all.deb
+Size: 119866
+MD5sum: 2b11115a7e243052f155539cf77b0a8d
+Description: install non-native packages with dpkg
+ Alien allows you to convert LSB, Red Hat, Stampede and Slackware Packages
+ into Debian packages, which can be installed with dpkg.
+ .
+ It can also generate packages of any of the other formats.
+ .
+ This is a tool only suitable for binary packages.
+
+Package: libncurses5
+Priority: required
+Section: base
+Installed-Size: 512
+Maintainer: Daniel Jacobowitz <ncurses-maint@debian.org>
+Architecture: i386
+Source: ncurses
+Version: 5.4-4
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/n/ncurses/libncurses5_5.4-4_i386.deb
+Size: 275566
+MD5sum: cf0a53179f1bb60564453d2a60464ec8
+Description: Shared libraries for terminal handling
+ This package contains the shared libraries necessary to run programs
+ compiled with ncurses.
+
+Package: libefs1
+Priority: optional
+Section: libs
+Installed-Size: 148
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Source: bonobo
+Version: 1.0.22-2.2
+Replaces: bonobo (<< 0.26-1), libbonobo-dev (<< 0.26-1), libbonobo1 (<< 0.26-1)
+Depends: libc6 (>= 2.3.2-1), libglib1.2 (>= 1.2.0), zlib1g (>= 1:1.1.4)
+Filename: pool/main/b/bonobo/libefs1_1.0.22-2.2_i386.deb
+Size: 68798
+MD5sum: 21a6cf4ba75971a2bb6f3f6520bb15df
+Description: Embedded File System library.
+ This is a first approach to implement a file-system-inside-a-file. The
+ library is called libefs (EFS = Embedded File System).
+ .
+ This package is part of Bonobo.
+
+Package: libfontconfig1
+Priority: optional
+Section: libs
+Installed-Size: 192
+Maintainer: Josselin Mouette <joss@debian.org>
+Architecture: i386
+Source: fontconfig
+Version: 2.2.3-1
+Depends: libc6 (>= 2.3.2.ds1-4), libexpat1 (>= 1.95.6), libfreetype6 (>= 2.1.5-1), zlib1g (>= 1:1.2.1), fontconfig
+Filename: pool/main/f/fontconfig/libfontconfig1_2.2.3-1_i386.deb
+Size: 89298
+MD5sum: 97c19ffb90d4c5a41cf0bafe3cf1944f
+Description: generic font configuration library (shared library)
+ Fontconfig is a font configuration and customization library, which
+ does not depend on the X Window System. It is designed to locate
+ fonts within the system and select them according to requirements
+ specified by applications.
+ .
+ See the "fontconfig" package description for more information.
+
+Package: anacron
+Priority: optional
+Section: admin
+Installed-Size: 196
+Maintainer: Pascal Hakim <pasc@debian.org>
+Architecture: i386
+Version: 2.3-10
+Replaces: pe
+Depends: libc6 (>= 2.3.2.ds1-4), debianutils (>= 1.7), sysklogd | system-log-daemon, exim4 | mail-transport-agent, debconf
+Recommends: cron (>= 3.0pl1-43)
+Suggests: powermgmt-base
+Filename: pool/main/a/anacron/anacron_2.3-10_i386.deb
+Size: 30262
+MD5sum: b52f61cda7a9b75c362e2f1b8ff404b6
+Description: a cron-like program that doesn't go by time
+ Anacron (like `anac(h)ronistic') is a periodic command scheduler. It
+ executes commands at intervals specified in days. Unlike cron, it
+ does not assume that the system is running continuously. It can
+ therefore be used to control the execution of daily, weekly and
+ monthly jobs (or anything with a period of n days), on systems that
+ don't run 24 hours a day. When installed and configured properly,
+ Anacron will make sure that the commands are run at the specified
+ intervals as closely as machine-uptime permits.
+ .
+ This package is pre-configured to execute the daily jobs of the Debian
+ system. You should install this program if your system isn't powered on
+ 24 hours a day to make sure the maintenance jobs of other Debian packages
+ are executed each day.
+
+Package: kwin
+Priority: optional
+Section: kde
+Installed-Size: 2484
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: kdebase-bin (= 4:3.3.0-1), kdebase-data (= 4:3.3.0-1), kdesktop (= 4:3.3.0-1), kicker (= 4:3.3.0-1), kpager (= 4:3.3.0-1), kpersonalizer (= 4:3.3.0-1), ksmserver (= 4:3.3.0-1), ksplash (= 4:3.3.0-1)
+Filename: pool/main/k/kdebase/kwin_3.3.0-1_i386.deb
+Size: 846864
+MD5sum: b51c33ee6cfea0bd45350d092dc5a276
+Description: KDE Window Manager
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This package contains the default KDE window manager
+ .
+ This package is part of the official KDE base module.
+
+Package: kdelibs4
+Priority: optional
+Section: libs
+Installed-Size: 23244
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdelibs
+Version: 4:3.3.0-1.1
+Replaces: kdelibs3 (<< 4:3.0.0), kdepim-libs (<< 4:3.0.0), kdetrayproxy (>= 0.2-1), korganizer (<< 4:3.3.0), libkmid (<< 4:3.0.0), libkmid-alsa (<< 4:3.0.0)
+Depends: libart-2.0-2 (>= 2.3.16), libarts1 (>= 1.3.0), libasound2 (>> 1.0.5), libaspell15 (>= 0.50.5), libaudio2, libaudiofile0 (>= 0.2.3-4), libbz2-1.0, libc6 (>= 2.3.2.ds1-4), libcupsys2-gnutls10 (>= 1.1.20final-1), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libfam0c102, libgcc1 (>= 1:3.4.1-3), libglib2.0-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), libidn11 (>= 0.5.2), libjack0.80.0-0 (>= 0.98.1), libjasper-1.701-1 (>= 1.701.0), libjpeg62, libmad0 (>= 0.15.1b), libogg0 (>= 1.1.0), libopenexr2 (>= 1.2.1), libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.3), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libtiff4, libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.11), libxrender1, libxslt1.1 (>= 1.1.8), libxt6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), kdelibs-bin (= 4:3.3.0-1.1), kdelibs-data (>= 4:3.3.0), xbase-clients
+Conflicts: kdelibs3 (<< 4:3.0.0), kdepim-libs (<< 4:3.0.0), kdetrayproxy (>= 0.2-1), libkmid (<< 4:3.0.0), libkmid-alsa (<< 4:3.0.0)
+Filename: pool/main/k/kdelibs/kdelibs4_3.3.0-1.1_i386.deb
+Size: 8120298
+MD5sum: 7f3c596842b7b2a565376d8cd34a2c88
+Description: KDE core libraries
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This package contains all the libraries needed to run a KDE
+ application.
+ .
+ You need these libraries to run kde applications.
+
+Package: libidn11
+Priority: standard
+Section: libs
+Installed-Size: 292
+Maintainer: Ryan M. Golbeck <rmgolbeck@debian.org>
+Architecture: i386
+Source: libidn
+Version: 0.5.2-3
+Replaces: libidn11-dev
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: libidn9-dev
+Filename: pool/main/libi/libidn/libidn11_0.5.2-3_i386.deb
+Size: 98548
+MD5sum: 28a2d1dbfeff4a2a418c2f294b8302fd
+Description: GNU libidn library, implementation of IETF IDN specifications
+ GNU Libidn is an implementation of the Stringprep, Punycode and IDNA
+ specifications defined by the IETF Internationalized Domain Names
+ (IDN) working group, used for internationalized domain names.
+ Currently the Nameprep, Kerberos 5 and XMPP Stringprep profiles are
+ supported.
+
+Package: libpng2
+Priority: optional
+Section: libs
+Installed-Size: 28
+Maintainer: Josselin Mouette <joss@debian.org>
+Architecture: all
+Source: libpng
+Version: 1.0.15-6
+Depends: libpng10-0 (>= 1.0.15-2)
+Filename: pool/main/libp/libpng/libpng2_1.0.15-6_all.deb
+Size: 934
+MD5sum: 57369c51cd688e845e832a469c9a1253
+Description: PNG library, older version - runtime
+ libpng is a library implementing an interface for reading and writing
+ PNG (Portable Network Graphics) format files.
+ .
+ This is a dummy package; it is superseded by libpng10-0.
+
+Package: kpilot
+Priority: optional
+Section: utils
+Installed-Size: 3904
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Replaces: korganizer (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkcal2 (>= 4:3.3.0), libmal1, libpisock8, libqt3c102-mt (>= 3:3.3.3), libstdc++5 (>= 1:3.3.4-1), debconf (>= 0.5) | debconf-2.0
+Suggests: knotes, korganizer
+Filename: pool/main/k/kdepim/kpilot_3.3.0-2_i386.deb
+Size: 1661922
+MD5sum: 4742edb60c0ada9e05201a75b6fc798c
+Description: KDE Palm Pilot hot-sync tool
+ KPilot is an application that synchronizes your Palm Pilot or similar device
+ (like the Handspring Visor) with your KDE desktop, much like the Palm HotSync
+ software does for Windows. KPilot can back-up and restore your Palm Pilot
+ and synchronize the built-in applications with their KDE counterparts.
+ .
+ This package is part of the official KDE pim module.
+
+Package: ksmserver
+Priority: optional
+Section: kde
+Installed-Size: 248
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0)
+Provides: x-session-manager
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Filename: pool/main/k/kdebase/ksmserver_3.3.0-1_i386.deb
+Size: 119600
+MD5sum: 82fa7c1b22819bd556b103ebd95d8318
+Description: KDE Session Manager
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ The KDE Session Manager. It is responsible for restoring your KDE
+ session on login.
+ .
+ This package is part of the official KDE base module.
+
+Package: capplets
+Priority: optional
+Section: gnome
+Installed-Size: 1584
+Maintainer: Arnaud Patard <arnaud.patard@rtp-net.org>
+Architecture: i386
+Source: control-center
+Version: 1:2.6.1-12
+Replaces: gnome-desktop-data (<= 2.2.2-1), gnome-control-center (<= 1:2.4.0-6)
+Depends: libart-2.0-2 (>= 2.3.16), libasound2 (>> 1.0.5), libatk1.0-0 (>= 1.6.0), libaudiofile0 (>= 0.2.3-4), libbonobo2-0 (>= 2.6.2), libbonoboui2-0 (>= 2.5.4), libc6 (>= 2.3.2.ds1-4), libeel2-2 (>= 2.6.2), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgail-common (>= 1.4.1), libgail17 (>= 1.4.1), libgconf2-4 (>= 2.6.3), libgcrypt11, libglade2-0 (>= 1:2.3.6), libglib2.0-0 (>= 2.4.1), libgnome-desktop-2, libgnome-keyring0 (>= 0.2.1), libgnome2-0 (>= 2.6.1.1), libgnomecanvas2-0 (>= 2.6.0), libgnomeui-0 (>= 2.6.0), libgnomevfs2-0 (>= 2.6.0), libgnutls11 (>= 1.0.16), libgpg-error0 (>= 1.0), libgstreamer-plugins0.8-0 (>= 0.8.0), libgstreamer0.8-0 (>= 0.8.4-1), libgtk2.0-0 (>= 2.4.4), libice6 | xlibs (>> 4.1.0), libjpeg62, libmetacity0 (>= 1:2.8.1), libnautilus2-2 (>= 2.6.3), liborbit2 (>= 1:2.10.0), libpango1.0-0 (>= 1.4.1), libpopt0 (>= 1.7), libsm6 | xlibs (>> 4.1.0), libstartup-notification0 (>= 0.0.5), libtasn1-2 (>= 0.2.7), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxklavier8, libxml2 (>= 2.6.11), libxrandr2 | xlibs (>> 4.3.0), libxrender1, zlib1g (>= 1:1.2.1), gnome-session (>= 2.0.0), gnome-desktop-data, gnome-control-center (>= 2.5.4) | nautilus (>= 2.4.0) | gnome-panel (>= 2.4.0), gnome-icon-theme (>= 1.2.0-2), capplets-data (= 1:2.6.1-12), xlibs
+Suggests: xscreensaver (>= 4.0), xbase-clients, gstreamer0.8-alsa, gstreamer0.8-oss, gstreamer0.8-esd
+Conflicts: gnome-control-center2, metacity-properties, drwright, fontilus, acme
+Filename: pool/main/c/control-center/capplets_2.6.1-12_i386.deb
+Size: 622512
+MD5sum: 260f1c84b7f289370548bfbff5b48b6c
+Description: configuration applets for GNOME 2 - binaries files
+ This package contains utilities to configure your GNOME desktop.
+ .
+ This package contains these capplets: Assistive technology support,
+ background, file management, file types and programs, font, keyboard,
+ keyboard accessibility, keyboard shortcuts, menus
+ & toolbars, mouse, network proxy, panel, preferred applications, screen
+ & resolution, sessions, sound, theme, windows
+ .
+ This package can only configure the GNOME 2 desktop.
+
+Package: procps
+Priority: required
+Section: base
+Installed-Size: 552
+Maintainer: Craig Small <csmall@debian.org>
+Architecture: i386
+Version: 1:3.2.3-1
+Replaces: watch, bsdutils (<< 2.9x-1)
+Provides: watch
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1)
+Recommends: psmisc
+Conflicts: watch, libproc-dev (<< 1:1.2.6-2), w-bassman (<< 1.0-3), procps-nonfree, pgrep (<< 3.3-5)
+Filename: pool/main/p/procps/procps_3.2.3-1_i386.deb
+Size: 208104
+MD5sum: 30a586f7b4d28977fcdf66ff048fc159
+Description: The /proc file system utilities
+ These are utilities to browse the /proc filesystem, which is not a real file
+ system but a way for the kernel to provide information about the status of
+ entries in its process table. (e.g. running, stopped or "zombie")
+ Both command line and full screen utilities are provided. Ncurses is needed
+ for the full screen utilities. More information can be found at procps
+ website http://procps.sf.net/
+
+Package: dhcp
+Priority: optional
+Section: net
+Installed-Size: 304
+Maintainer: Eloy A. Paris <peloy@debian.org>
+Architecture: i386
+Version: 2.0pl5-19
+Replaces: dhcpd, dhcp-beta
+Provides: dhcpd, dhcp
+Depends: libc6 (>= 2.3.2.ds1-4), netbase
+Conflicts: dhcpd, dhcp-beta, dhcp-relay, dhcp-relay-beta
+Filename: pool/main/d/dhcp/dhcp_2.0pl5-19_i386.deb
+Size: 109684
+MD5sum: 0eaeb9256311c2ff8a1f79592106394c
+Description: DHCP server for automatic IP address assignment
+ DHCP is a protocol like BOOTP (actually dhcpd includes much of
+ the functionality of BOOTPD!). It assigns IP addresses to clients
+ based on lease times. DHCP is used extensively by Microsoft and more
+ recently also by Apple. It is probably essential in any multi-platform
+ environment.
+ .
+ Multiple Ethernet Interfaces are supported by this DHCP package.
+ .
+ Note: This package _requires_ a 2.2.x or later Linux kernel. 2.0.x
+ kernels are _not_ supported.
+ .
+ This is the DHCP server from version 2 of the Internet Software
+ Consortium DHCP package. For more information visit the ISC web site
+ at http://www.isc.org.
+
+Package: gawk
+Priority: optional
+Section: interpreters
+Installed-Size: 2136
+Maintainer: James Troup <james@nocrew.org>
+Architecture: i386
+Version: 1:3.1.4-1
+Provides: awk
+Pre-Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/g/gawk/gawk_3.1.4-1_i386.deb
+Size: 993374
+MD5sum: 2c1dadf4d0262a241fb5e5b03450c035
+Description: GNU awk, a pattern scanning and processing language
+ `awk', a program that you can use to select particular records in a
+ file and perform operations upon them.
+ .
+ Gawk is the GNU Project's implementation of the AWK programming language.
+ It conforms to the definition of the language in the POSIX 1003.2 Command
+ Language And Utilities Standard. This version in turn is based on the
+ description in The AWK Programming Language, by Aho, Kernighan, and
+ Weinberger, with the additional features defined in the System V Release
+ 4 version of UNIX awk. Gawk also provides more recent Bell Labs awk
+ extensions, and some GNU-specific extensions.
+
+Package: psmisc
+Priority: optional
+Section: admin
+Installed-Size: 256
+Maintainer: Craig Small <csmall@debian.org>
+Architecture: i386
+Version: 21.5-1
+Replaces: procps (<< 1:1.2)
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1)
+Filename: pool/main/p/psmisc/psmisc_21.5-1_i386.deb
+Size: 44162
+MD5sum: 7f862e456e8283201114d88781e15cb3
+Description: Utilities that use the proc filesystem
+ This package contains three little utilities that use the proc FS:
+ .
+ `fuser' identifies processes using files (similar to Sun's or SGI's fuser).
+ `killall' kills processes by name, e.g. killall -HUP named. `pstree' shows
+ the currently running processes as a tree
+
+Package: manpages
+Priority: important
+Section: doc
+Installed-Size: 696
+Maintainer: Martin Schulze <joey@debian.org>
+Architecture: all
+Version: 1.67-2
+Replaces: rsh-server (<< 0.10-7)
+Suggests: man-browser
+Filename: pool/main/m/manpages/manpages_1.67-2_all.deb
+Size: 386402
+MD5sum: 37cdcd31291a8d0501f373412610ab51
+Description: Manual pages about using a GNU/Linux system
+ This package contains GNU/Linux manual pages for these sections:
+ 4 = Devices (e.g. hd, sd).
+ 5 = File formats and protocols, syntaxes of several system
+ files (e.g. wtmp, /etc/passwd, nfs).
+ 7 = Conventions and standards, macro packages, etc.
+ (e.g. nroff, ascii).
+ .
+ Sections 1, 6 and 8 are provided by the respective applications. This
+ package only includes the intro man page describing the section.
+ .
+ The man pages describe syntaxes of several system files.
+
+Package: libao2
+Priority: optional
+Section: libs
+Installed-Size: 100
+Maintainer: Christopher L Cheney <ccheney@debian.org>
+Architecture: i386
+Source: libao
+Version: 0.8.5-1
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: libartsc0, libasound2, libaudio2, libesd0 | libesd-alsa0
+Filename: pool/main/liba/libao/libao2_0.8.5-1_i386.deb
+Size: 23102
+MD5sum: d09cfac4451f37fc1b03f4cf0248d561
+Description: Cross Platform Audio Output Library
+ Libao is a cross platform audio output library. It currently supports
+ ESD, OSS, Solaris, and IRIX.
+
+Package: bash
+Essential: yes
+Priority: required
+Section: base
+Installed-Size: 1552
+Maintainer: Matthias Klose <doko@debian.org>
+Architecture: i386
+Version: 3.0-6
+Replaces: bash-doc (<= 2.05-1), bash-completion
+Depends: base-files (>= 2.1.12), passwd (>= 1:4.0.3-10)
+Pre-Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1)
+Suggests: bash-doc
+Conflicts: bash-completion
+Filename: pool/main/b/bash/bash_3.0-6_i386.deb
+Size: 782020
+MD5sum: 74b051f137b7d3f8288258ce4437c9d0
+Description: The GNU Bourne Again SHell
+ Bash is an sh-compatible command language interpreter that executes
+ commands read from the standard input or from a file. Bash also
+ incorporates useful features from the Korn and C shells (ksh and csh).
+ .
+ Bash is ultimately intended to be a conformant implementation of the
+ IEEE POSIX Shell and Tools specification (IEEE Working Group 1003.2).
+ .
+ Included in the bash package is the Programmable Completion Code, by
+ Ian Macdonald.
+
+Package: libacl1
+Priority: required
+Section: libs
+Installed-Size: 48
+Maintainer: Nathan Scott <nathans@debian.org>
+Architecture: i386
+Source: acl
+Version: 2.2.23-1
+Depends: libattr1 (>= 2.4.4-1), libc6 (>= 2.3.2-1)
+Conflicts: acl (<< 2.0.0), libacl1-kerberos4kth
+Filename: pool/main/a/acl/libacl1_2.2.23-1_i386.deb
+Size: 13482
+MD5sum: 65ddf2ec7f8643bdefb78fcfe9c2172d
+Description: Access control list shared library
+ This package contains the libacl.so dynamic library containing
+ the POSIX 1003.1e draft standard 17 functions for manipulating
+ access control lists.
+
+Package: gij
+Priority: optional
+Section: devel
+Installed-Size: 4
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-defaults (1.17)
+Version: 4:3.3.4-2
+Depends: cpp (>= 4:3.3.4-2), gij-3.3 (>= 1:3.3.4-1)
+Suggests: gcj (>= 4:3.3.4-2)
+Conflicts: libgcj2 (<= 3.0.2-4)
+Filename: pool/main/g/gcc-defaults/gij_3.3.4-2_i386.deb
+Size: 1182
+MD5sum: 7996f56c6b0cd2c3a37e9eeaf377cac9
+Description: The GNU Java bytecode interpreter
+ GIJ is not limited to interpreting bytecode. It includes a class loader which
+ can dynamically load shared objects, so it is possible to give it the name
+ of a class which has been compiled and put into a shared library on the
+ class path.
+ .
+ This is a dependency package providing the default GNU Java bytecode
+ interpreter.
+
+Package: gnumail
+Priority: optional
+Section: mail
+Installed-Size: 3940
+Maintainer: Eric Heintzmann <eric@gnustep.fr.st>
+Architecture: i386
+Version: 1.1.2-3
+Depends: addressmanager, addresses-framework (>= 0.4.6), addressview-framework (>= 0.4.6), gnustep-back (>= 0.9.3), libc6 (>= 2.3.2.ds1-4), libgnustep-base1 (>= 1.9.2), libgnustep-gui0 (>= 0.9.3), libobjc1 (>= 1:3.3.4-4), pantomime1 (>= 1.1.2)
+Suggests: gnupg | pgp5i | pgp
+Filename: pool/main/g/gnumail/gnumail_1.1.2-3_i386.deb
+Size: 1074768
+MD5sum: 0f98ddcc4ac94c998befa4cdc5c3d5b8
+Description: A GNUstep Mail User Agent (clone of the NeXT/Apple's Mail.app)
+ GNUMail.app is a clone of NeXT/Apple's excellent Mail.app
+ application. It uses the GNUstep development framework (or Apple
+ Cocoa, which is based on the OpenStep specification provided by NeXT,
+ Inc.).
+
+Package: mawk
+Priority: required
+Section: base
+Installed-Size: 220
+Maintainer: James Troup <james@nocrew.org>
+Architecture: i386
+Version: 1.3.3-11
+Provides: awk
+Pre-Depends: libc6 (>= 2.3.1-1)
+Filename: pool/main/m/mawk/mawk_1.3.3-11_i386.deb
+Size: 78630
+MD5sum: 270f008c05e667e31e7fde2ed9fee85f
+Description: a pattern scanning and text processing language
+ Mawk is an interpreter for the AWK Programming Language. The AWK
+ language is useful for manipulation of data files, text retrieval and
+ processing, and for prototyping and experimenting with algorithms. Mawk
+ is a new awk meaning it implements the AWK language as defined in Aho,
+ Kernighan and Weinberger, The AWK Programming Language, Addison-Wesley
+ Publishing, 1988. (Hereafter referred to as the AWK book.) Mawk conforms
+ to the POSIX 1003.2 (draft 11.3) definition of the AWK language
+ which contains a few features not described in the AWK book, and mawk
+ provides a small number of extensions.
+ .
+ Mawk is smaller and much faster than gawk. It has some compile-time
+ limits such as NF = 32767 and sprintf buffer = 1020.
+
+Package: libnetpbm10
+Priority: optional
+Section: libs
+Installed-Size: 188
+Maintainer: Andreas Barth <aba@not.so.argh.org>
+Architecture: i386
+Source: netpbm-free
+Version: 2:10.0-7
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/n/netpbm-free/libnetpbm10_10.0-7_i386.deb
+Size: 64948
+MD5sum: 38b2bccd12fe212a902551d8051bd276
+Description: Shared libraries for netpbm
+ This package contains the shared libraries used by netpbm.
+
+Package: debianutils
+Essential: yes
+Priority: required
+Section: base
+Installed-Size: 228
+Maintainer: Clint Adams <schizo@debian.org>
+Architecture: i386
+Version: 2.8.4
+Replaces: miscutils, cron (<= 3.0pl1-31), tetex-bin (<< 1.0.6-1.1), manpages-fr (<= 0.9.3-1)
+Pre-Depends: libc6 (>= 2.3.2.ds1-4), coreutils (>= 4.5.8-1)
+Conflicts: manpages-fr (<= 0.9.3-1)
+Filename: pool/main/d/debianutils/debianutils_2.8.4_i386.deb
+Size: 42262
+MD5sum: 3eb3683dd261c955d8f4789860eb8373
+Description: Miscellaneous utilities specific to Debian
+ This package provides a number of small utilities which are used
+ primarily by the installation scripts of Debian packages, although
+ you may use them directly.
+ .
+ The specific utilities included are: installkernel mkboot mktemp
+ run-parts savelog sensible-browser sensible-editor sensible-pager
+ tempfile which.
+
+Package: gworkspace
+Priority: optional
+Section: x11
+Installed-Size: 5136
+Maintainer: Eric Heintzmann <eric@gnustep.fr.st>
+Architecture: i386
+Version: 0.6.3-4
+Depends: gnustep-back (>= 0.9.3), libc6 (>= 2.3.2.ds1-4), libgnustep-base1 (>= 1.9.2), libgnustep-gui0 (>= 0.9.3), libobjc1 (>= 1:3.3.4-4)
+Recommends: apps-wrappers
+Filename: pool/main/g/gworkspace/gworkspace_0.6.3-4_i386.deb
+Size: 1252080
+MD5sum: 2798fe2b67f601ba6361f218f17502e5
+Description: GNUstep Workspace Manager
+ GWorkspace is the official GNUstep workspace manager. It is a clone
+ of NeXT's workspace manager. GWorkspace is probably one of the most
+ useful and usable workspace managers available on any platform,
+ owing to its well-designed interface and the natural, consistent
+ design that it inherits from the GNUstep framework.
+
+Package: dict-gcide
+Priority: optional
+Section: text
+Installed-Size: 17164
+Maintainer: Bob Hilliard <hilliard@debian.org>
+Architecture: all
+Version: 0.48-4
+Replaces: dict-web1913
+Provides: dict-web1913
+Depends: dictd | dict-server
+Suggests: dict-wn
+Conflicts: dict-web1913 (<= 1.4-0.47pd-3)
+Filename: pool/main/d/dict-gcide/dict-gcide_0.48-4_all.deb
+Size: 15124092
+MD5sum: 3f21cc6cffa361b2ced3ab0f38a04ac4
+Description: A Comprehensive English Dictionary
+ .
+ This package contains the GNU version of the Collaborative
+ International Dictionary of English, formatted for use by the
+ dictionary server in the dictd package. The GCIDE contains the
+ full text of the 1913 Webster's Unabridged Dictionary, supplemented by
+ many definitions from WordNet, the Century Dictionary, 1906, and many
+ additional definitions contributed by volunteers.
+ .
+ The definitions in the core of this dictionary are at least 85 years
+ old, so they can not be expected to be politically correct by
+ contemporary standards, and no attempt has been, or will be, made to
+ make them so.
+ .
+ This package will be of limited use without the server found in the
+ dictd package, or another RFC 2229 compliant sever.
+
+Package: xawtv
+Priority: extra
+Section: x11
+Installed-Size: 736
+Maintainer: Gerd Knorr <kraxel@debian.org>
+Architecture: i386
+Version: 3.94-1
+Depends: libasound2 (>> 1.0.5), libc6 (>= 2.3.2.ds1-4), libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libice6 | xlibs (>> 4.1.0), libjpeg62, liblircclient0, libncurses5 (>= 5.4-1), libpng12-0 (>= 1.2.5.0-4), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxaw7 (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxmu6 | xlibs (>> 4.1.0), libxpm4 | xlibs (>> 4.1.0), libxrandr2 | xlibs (>> 4.3.0), libxrender1, libxt6 | xlibs (>> 4.1.0), libxv1, libzvbi0 (>= 0.2.2), xlibmesa-gl | libgl1, zlib1g (>= 1:1.2.1), v4l-conf, xutils, debconf, scantv, xawtv-plugins (= 3.94-1), pia
+Suggests: xawtv-plugin-qt (= 3.94-1), tv-fonts
+Filename: pool/main/x/xawtv/xawtv_3.94-1_i386.deb
+Size: 240998
+MD5sum: 265332051ec2b17db4a4a9e3a511a66f
+Description: X11 TV application
+ TV application for X11. Supports video4linux
+ devices and the Xvideo extension.
+
+Package: tcpd
+Priority: important
+Section: base
+Installed-Size: 196
+Maintainer: Anthony Towns <ajt@debian.org>
+Architecture: i386
+Source: tcp-wrappers
+Version: 7.6.dbs-6
+Replaces: libwrap0 (<< 7.6-8)
+Depends: libc6 (>= 2.3.2.ds1-4), libwrap0 (>= 7.6-1.1), debconf (>= 0.5) | debconf-2.0
+Conflicts: netbase (<< 3.16-1)
+Filename: pool/main/t/tcp-wrappers/tcpd_7.6.dbs-6_i386.deb
+Size: 72614
+MD5sum: 08523a7ed8671461cd35c5e02ea14fc9
+Description: Wietse Venema's TCP wrapper utilities
+ Wietse Venema's network logger, also known as TCPD or LOG_TCP.
+ .
+ These programs log the client host name of incoming telnet,
+ ftp, rsh, rlogin, finger etc. requests. Security options are:
+ access control per host, domain and/or service; detection of
+ host name spoofing or host address spoofing; booby traps to
+ implement an early-warning system.
+
+Package: kregexpeditor
+Priority: optional
+Section: kde
+Installed-Size: 908
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdeutils
+Version: 4:3.3.0-1
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Filename: pool/main/k/kdeutils/kregexpeditor_3.3.0-1_i386.deb
+Size: 275628
+MD5sum: f1db0b77f6e558bce8f9f194b0d7d115
+Description: graphical regular expression editor plugin
+ KDE is a powerful Open Source graphical desktop environment for Unix
+ workstations. It combines ease of use, contemporary functionality, and
+ outstanding graphical design with the technological superiority of the Unix
+ operating system.
+ .
+ KDE graphical regular expression editor plugin.
+ .
+ This package is part of the official KDE utils module.
+
+Package: parted
+Priority: optional
+Section: admin
+Installed-Size: 156
+Maintainer: Parted Maintainer Team <parted-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Version: 1.6.11-3
+Replaces: fsresize, parted1.6
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), libparted1.6-0 (>= 1.6.0), libreadline4 (>= 4.3-1)
+Suggests: parted-doc
+Conflicts: fsresize, parted1.6
+Filename: pool/main/p/parted/parted_1.6.11-3_i386.deb
+Size: 67514
+MD5sum: 863b2692ca2fb20018d1cac0fbf9291c
+Description: The GNU Parted disk partition resizing program
+ GNU Parted is a program that allows you to create, destroy,
+ resize, move and copy hard disk partitions. This is useful
+ for creating space for new operating systems, reorganising
+ disk usage, and copying data to new hard disks. This package
+ contains the Parted binary and manual page.
+ .
+ Parted currently supports DOS, Mac, Sun, BSD, GPT, MIPS and
+ PC98 disklabels/partition tables, as well as a 'loop' (raw
+ disk) type which allows use on RAID/LVM. Filesystems which
+ are currently fully supported are ext2, ext3, fat (FAT16
+ and FAT32) ReiserFS (with libreiserfs) and linux-swap.
+ Parted can also detect and remove HFS (Mac OS), JFS, NTFS,
+ UFS (Sun and HP) and XFS filesystems, but cannot create,
+ resize or check these filesystems yet.
+ .
+ Note that ReiserFS support is only enabled if you install
+ the libreiserfs0.3-0 package.
+ .
+ The nature of this software means that any bugs could cause
+ massive data loss. While there are no known bugs at the moment,
+ they could exist, so please back up all important files before
+ running it, and do so at your own risk.
+
+Package: a2ps
+Priority: optional
+Section: text
+Installed-Size: 3076
+Maintainer: Masayuki Hatta (mhatta) <mhatta@debian.org>
+Architecture: i386
+Version: 1:4.13b-4
+Depends: libc6 (>= 2.3.2.ds1-4), libpaper1
+Pre-Depends: emacsen-common
+Recommends: bzip2, lpr | cupsys-client, psutils, wdiff
+Suggests: emacs21-nox | emacsen, groff, gs-common, gv, html2ps, imagemagick, tetex-bin, t1-cyrillic
+Filename: pool/main/a/a2ps/a2ps_4.13b-4_i386.deb
+Size: 715384
+MD5sum: a8b051a999195d6056517a0cde0c7dff
+Description: GNU a2ps - 'Anything to PostScript' converter and pretty-printer
+ GNU a2ps converts files into PostScript for printing or viewing. It uses a
+ nice default format, usually two pages on each physical page, borders
+ surrounding pages, headers with useful information (page number, printing
+ date, file name or supplied header), line numbering, symbol substitution
+ as well as pretty printing for a wide range of programming languages.
+ .
+ Historically, a2ps started as a text to PostScript converter, but thanks
+ to powerful delegations it is able to let you use it for any kind of files,
+ ie it can also digest manual pages, dvi files, texinfo, ....
+ .
+ Among the other most noticeable features of a2ps are:
+ - various encodings (all the Latins and others),
+ - various fonts (automatic font down loading),
+ - various medias,
+ - various printer interfaces,
+ - various output styles,
+ - various programming languages,
+ - various helping applications,
+ - and various spoken languages.
+
+Package: afterstep
+Priority: optional
+Section: x11
+Installed-Size: 4916
+Maintainer: Robert Luberda <robert@debian.org>
+Architecture: i386
+Version: 1.8.11-12
+Provides: x-window-manager
+Depends: menu (>= 2.1.8-1), imagemagick, debianutils (>= 2.1), perl, libc6 (>= 2.3.2-1), libjpeg62, libpng12-0 (>= 1.2.5.0-4), librplay3 (>= 3.3.2-2), xlibs (>> 4.1.0), zlib1g (>= 1:1.1.4)
+Recommends: wmavgload
+Filename: pool/main/a/afterstep/afterstep_1.8.11-12_i386.deb
+Size: 1265460
+MD5sum: f50a21f56f0319d6da42c6d6065c176d
+Description: A window manager with the NEXTSTEP look and feel
+ AfterStep is a window manager based on FVWM which attempts to emulate
+ the NEXTSTEP look and feel, while retaining the configurability of its
+ predecessor. Note that this window manager makes extensive use of the
+ color palette. If you have only an 8-bit color display, it will run
+ as packaged, but you may want to modify the configuration to use fewer
+ colors.
+ .
+ AfterStep is a continuation of the BowMan window manager project, but
+ the name was changed to reflect the desire that it do more than
+ simply emulate and become a valuable window manager in its own right.
+ .
+ Homepage: http://www.afterstep.org/
+
+Package: cvs
+Priority: optional
+Section: devel
+Installed-Size: 2916
+Maintainer: Steve McIntyre <93sam@debian.org>
+Architecture: i386
+Version: 1:1.12.9-4
+Replaces: cvs-doc (<< 1.11-2)
+Provides: cvs-doc
+Depends: libc6 (>= 2.3.2.ds1-4), libpam0g (>= 0.76), zlib1g (>= 1:1.2.1), debconf (>= 0.5.00), libpam-runtime (>= 0.76-14)
+Recommends: netbase (>= 2.08-1), info | info-browser
+Conflicts: cvs-doc, cvs2cl (<< 2.55-1)
+Filename: pool/main/c/cvs/cvs_1.12.9-4_i386.deb
+Size: 1437266
+MD5sum: da525cd6696d9c40385763dc4c25be0d
+Description: Concurrent Versions System
+ CVS is a version control system, which allows you to keep old versions
+ of files (usually source code), keep a log of who, when, and why
+ changes occurred, etc., like RCS or SCCS. Unlike the simpler systems,
+ CVS does not just operate on one file at a time or one directory at
+ a time, but operates on hierarchical collections of directories
+ consisting of version controlled files.
+ .
+ CVS helps to manage releases and to control the concurrent editing of
+ source files among multiple authors. CVS allows triggers to
+ enable/log/control various operations and works well over a wide area
+ network.
+
+Package: opensp
+Priority: optional
+Section: text
+Installed-Size: 792
+Maintainer: Neil Roeth <neil@debian.org>
+Architecture: i386
+Version: 1.5.1.0-2
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.2-1), libosp4, libstdc++5 (>= 1:3.3.2-1), sgml-base
+Suggests: doc-base, sgml-data
+Filename: pool/main/o/opensp/opensp_1.5.1.0-2_i386.deb
+Size: 243966
+MD5sum: 04ab94d0947246d9bd14b28ef890320d
+Description: OpenJade group's SGML parsing tools
+ This package is a collection of SGML/XML tools called OpenSP.
+ It is a fork from James Clark's SP suite.
+ .
+ These tools are used to parse, validate, and normalize SGML and XML
+ files. The central programs included in this package are 'onsgmls',
+ which replaces sgmls, 'ospam', 'ospent', 'osgmlnorm', and 'osx'.
+
+Package: cpp
+Priority: standard
+Section: interpreters
+Installed-Size: 40
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-defaults (1.17)
+Version: 4:3.3.4-2
+Depends: cpp-3.3 (>= 1:3.3.4-1)
+Suggests: cpp-doc
+Conflicts: cpp-doc (<< 1:2.95.3)
+Filename: pool/main/g/gcc-defaults/cpp_3.3.4-2_i386.deb
+Size: 29420
+MD5sum: 3b6110fc272f62d3caa7be3d3537272f
+Description: The GNU C preprocessor (cpp)
+ The GNU C preprocessor is a macro processor that is used automatically
+ by the GNU C compiler to transform programs before actual compilation.
+ .
+ This package has been separated from gcc for the benefit of those who
+ require the preprocessor but not the compiler.
+ .
+ This is a dependency package providing the default GNU C preprocessor.
+
+Package: kdm
+Priority: optional
+Section: kde
+Installed-Size: 1112
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Provides: x-display-manager
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpam0g (>= 0.76), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxtst6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), debconf (>= 1.2.9), kdebase-bin, libpam-runtime (>= 0.76-14), xbase-clients
+Recommends: logrotate
+Suggests: khelpcenter, menu
+Filename: pool/main/k/kdebase/kdm_3.3.0-1_i386.deb
+Size: 406782
+MD5sum: b91a650666783e26f05b350490bf602b
+Description: KDE Display Manager
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ kdm manages a collection of X servers, which may be on the local host or
+ remote machines. It provides services similar to those provided by init,
+ getty, and login on character-based terminals: prompting for login name and
+ password, authenticating the user, and running a session. kdm supports XDMCP
+ (X Display Manager Control Protocol) and can also be used to run a chooser
+ process which presents the user with a menu of possible hosts that offer
+ XDMCP display management.
+ .
+ This package is part of the official KDE base module.
+
+Package: jargon
+Priority: optional
+Section: doc
+Installed-Size: 664
+Maintainer: Steve Greenland <stevegr@debian.org>
+Architecture: all
+Version: 4.0.0-4
+Filename: pool/main/j/jargon/jargon_4.0.0-4_all.deb
+Size: 604342
+MD5sum: d03afc83c5487c9cf4024575b20e7b35
+Description: The definitive compendium of hacker slang.
+ This is the Jargon File, a comprehensive compendium of hacker slang
+ illuminating many aspects of hackish tradition, folklore, and humor.
+ The file is in info format, but includes an HTML page with links
+ to the home site.
+ .
+ Note that this package is now out-of-date, because the upstream author
+ is no longer maintaining an info version of the file.
+
+Package: libbonobo2
+Priority: optional
+Section: libs
+Installed-Size: 840
+Maintainer: Takuo KITAME <kitame@debian.org>
+Architecture: i386
+Source: bonobo
+Version: 1.0.22-2.2
+Replaces: libbonobo-dev (<< 0.37-4), bonobo (<< 0.37-4)
+Depends: libart2 (>= 1.2.13-5), libbonobo2 (>= 1.0.22), libc6 (>= 2.3.2-1), libgdk-pixbuf2 (>= 0.22.0-2.0.1), libglib1.2 (>= 1.2.0), libgnome32 (>= 1.2.13-5), libgnomeprint15 (>= 0.29-1), libgnomeui32 (>= 1.4.2-3), libgtk1.2 (>= 1.2.10-4), liboaf0 (>= 0.6.10), liborbit0 (>= 0.5.17), libxml1 (>= 1:1.8.14-3), oaf (>= 0.6.10)
+Recommends: bonobo
+Filename: pool/main/b/bonobo/libbonobo2_1.0.22-2.2_i386.deb
+Size: 313212
+MD5sum: 777413795f6e191251aed6e152535e11
+Description: The GNOME Bonobo library.
+ Bonobo is a set of language and system independent CORBA interfaces
+ for creating reusable components (controls) and creating compound
+ documents.
+ .
+ The Bonobo distribution includes a Gtk+ based implementation of the
+ Bonobo interfaces, enabling developers to create reusable
+ components and applications that can be used to form more complex
+ documents.
+
+Package: liblockfile1
+Priority: important
+Section: libs
+Installed-Size: 92
+Maintainer: Miquel van Smoorenburg <miquels@cistron.nl>
+Architecture: i386
+Source: liblockfile
+Version: 1.06
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/libl/liblockfile/liblockfile1_1.06_i386.deb
+Size: 14606
+MD5sum: a9b3d8dce3dd0302454e8b9c5d08281d
+Description: NFS-safe locking library, includes dotlockfile program
+ Liblockfile is a shared library with NFS-safe locking functions. It
+ includes the command-line utility ``dotlockfile''.
+
+Package: gsfonts
+Priority: optional
+Section: text
+Installed-Size: 6396
+Maintainer: Masayuki Hatta (mhatta) <mhatta@debian.org>
+Architecture: all
+Version: 8.14+urwcyr1.0.7pre35-1
+Depends: defoma
+Conflicts: gs (<< 5.50-5), gs-aladdin (<< 6.50-4), gsfonts-x11 (<< 0.13)
+Filename: pool/main/g/gsfonts/gsfonts_8.14+urwcyr1.0.7pre35-1_all.deb
+Size: 4818088
+MD5sum: 945a99ae1465293f74aa0d75609da065
+Description: Fonts for the Ghostscript interpreter(s)
+ These are free look-alike fonts of the Adobe PostScript fonts.
+ Recommended for all flavors of Ghostscript (gs-gpl, gs-afpl and gs-esp).
+
+Package: kcontrol
+Priority: optional
+Section: kde
+Installed-Size: 15616
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0), kdebase-doc (<< 4:3.0.0), kdebase-libs (<< 4:3.0.0), konqueror (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libasound2 (>> 1.0.5), libaudio2, libc6 (>= 2.3.2.ds1-4), libfam0c102, libfontconfig1 (>= 2.2.1), libfreetype6 (>= 2.1.5-1), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libjpeg62, libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libraw1394-5, libsm6 | xlibs (>> 4.1.0), libssl0.9.7, libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxcursor1 (>> 1.1.2), libxext6 | xlibs (>> 4.1.0), libxft2 (>> 2.1.1), libxrandr2 | xlibs (>> 4.3.0), libxrender1, libxt6 | xlibs (>> 4.1.0), libxtst6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1), kdebase-data
+Suggests: khelpcenter
+Conflicts: kdebase-libs (<< 4:3.0.0)
+Filename: pool/main/k/kdebase/kcontrol_3.3.0-1_i386.deb
+Size: 7633372
+MD5sum: f198eb4667a5901b7f128f45495453b4
+Description: KDE Control Center
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ The KDE control center allows you to configure all aspects of your KDE
+ desktop.
+ .
+ This package is part of the official KDE base module.
+
+Package: makedev
+Priority: required
+Section: base
+Installed-Size: 160
+Maintainer: Bdale Garbee <bdale@gag.com>
+Architecture: all
+Version: 2.3.1-75
+Depends: base-passwd (>= 3.0.4)
+Conflicts: udev (<= 0.024-7)
+Filename: pool/main/m/makedev/makedev_2.3.1-75_all.deb
+Size: 40492
+MD5sum: b3b14f744fe7232112d0ae135830194b
+Description: Creates device files in /dev
+ The MAKEDEV executable is used to create device files, often in /dev.
+ .
+ Device files are special files through which applications can interact
+ with hardware.
+
+Package: libdns11
+Priority: standard
+Section: libs
+Installed-Size: 1128
+Maintainer: LaMont Jones <lamont@debian.org>
+Architecture: i386
+Source: bind9
+Version: 1:9.2.3+9.2.4-rc7-1
+Replaces: libbind0
+Depends: libc6 (>= 2.3.2.ds1-4), libisc7, libssl0.9.7
+Conflicts: libbind0
+Filename: pool/main/b/bind9/libdns11_9.2.3+9.2.4-rc7-1_i386.deb
+Size: 455176
+MD5sum: bdb6049b13bb343624dafacfc125c95c
+Description: DNS Shared Library used by BIND
+ The Berkeley Internet Name Domain (BIND) implements an Internet domain
+ name server. BIND is the most widely-used name server software on the
+ Internet, and is supported by the Internet Software Consortium, www.isc.org.
+ .
+ This package delivers the libdns shared library used by BIND's daemons and
+ clients.
+
+Package: kdesktop
+Priority: optional
+Section: kde
+Installed-Size: 1292
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0), konqueror (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libjpeg62, libkonq4 (>= 4:3.3.0), libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), kdebase-bin
+Recommends: eject
+Filename: pool/main/k/kdebase/kdesktop_3.3.0-1_i386.deb
+Size: 676938
+MD5sum: e9841a328c357e18d4317211450def0a
+Description: KDE Desktop
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ KDE Desktop
+ .
+ This package is part of the official KDE base module.
+
+Package: wajig
+Priority: optional
+Section: admin
+Installed-Size: 488
+Maintainer: Dirk Eddelbuettel <edd@debian.org>
+Architecture: i386
+Version: 2.0.11-1
+Depends: python (>= 2.3), python (<< 2.4), apt, python-apt
+Suggests: wget, fping, debconf, reportbug, apt-move, dpkg-repack, alien, fakeroot, gkdebconf, lynx, python-gtk2, python-glade2, python-gnome2, gnome-terminal, base-config, gnome-tasksel, deborphan, vrms, sudo
+Filename: pool/main/w/wajig/wajig_2.0.11-1_i386.deb
+Size: 110382
+MD5sum: 8a6646e853664d487053088b1d8dc07d
+Description: Simplified Debian package management front end
+ Wajig is a single commandline wrapper around apt, apt-cache, dpkg,
+ /etc/init.d scripts and more, intended to be easy to use and providing
+ extensive documentation for all of its functions.
+ .
+ With a suitable sudo(1) configuration, most (if not all) package installation
+ as well as creation tasks can be done from a user shell. Wajig is also
+ suitable for general system administration.
+ .
+ Since release 2.0.0, a GUI command 'gjig' is also included in the package.
+
+Package: libart2
+Priority: optional
+Section: oldlibs
+Installed-Size: 96
+Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Source: gnome-libs
+Version: 1.4.2-19
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/g/gnome-libs/libart2_1.4.2-19_i386.deb
+Size: 49378
+MD5sum: bf66cb5a6e8581132e9d353ef50131ba
+Description: The GNOME canvas widget - runtime files
+ GNOME is a project to build a complete, user-friendly desktop based
+ entirely on free software.
+ .
+ A canvas appears as a normal GTK+ widget with its own GDK window (or X
+ window).
+ .
+ The programmer can insert graphical items into the canvas. The canvas
+ provides several predefined item types, including lines, rectangles,
+ ellipses, polygons, and text. Canvas items can be manipulated after they
+ are created and inserted into the canvas. Common operations include
+ changing the color of an item or moving it to a different position.
+ .
+ The canvas takes care of all drawing operations so that it never flickers,
+ and so that the user does not have to worry about repainting the items he
+ or she wants to display.
+
+Package: libatm1
+Priority: optional
+Section: libs
+Installed-Size: 132
+Maintainer: Peter De Schrijver (p2) <p2@mind.be>
+Architecture: i386
+Source: linux-atm
+Version: 2.4.1-16
+Depends: libc6 (>= 2.3.2.ds1-4)
+Conflicts: atm-tools (<< 2.4.1-6)
+Filename: pool/main/l/linux-atm/libatm1_2.4.1-16_i386.deb
+Size: 68982
+MD5sum: eacff0a43f74a31415c7576496669b3f
+Description: shared library for ATM (Asynchronous Transfer Mode)
+ Shared libraries needed by ATM (Asynchronous Transfer Mode) related programs
+ .
+ Homepage: http://linux-atm.sourceforge.net/
+
+Package: docbook
+Priority: optional
+Section: text
+Installed-Size: 1962
+Maintainer: Adam Di Carlo <aph@debian.org>
+Architecture: all
+Version: 4.3-1
+Depends: sgml-data (>= 1.5.0), sgml-base (>= 1.17)
+Suggests: psgml, docbook-xml, docbook-dsssl
+Filename: pool/main/d/docbook/docbook_4.3-1_all.deb
+Size: 334404
+MD5sum: 9e5fdca176868a7e0ebc5111dff14c1c
+Description: standard SGML representation system for technical documents
+ DocBook is an SGML document type definition (DTD) that is well-suited
+ to books, articles, or reference documentation about technical
+ matters, systems, or software (although it is by no means limited to
+ these applications). It has emerged as an open and standard DTD in the
+ software industry, and is used as the documentation system of choice
+ for many free software projects.
+ .
+ This package contains the SGML DTD for DocBook, which describes
+ the formal structure for documents following this format. If you
+ wish to author DocBook documents using XML rather than SGML, use the
+ 'docbook-xml' package. You will need other packages in order to edit
+ (psgml), validate (opensp) or format (docbook-xsl, docbook-dsssl)
+ DocBook documents.
+ .
+ This package includes the 2.4.1, 3.0, 3.1, 4.0, 4.1, 4.2 and 4.3 versions
+ of the DocBook SGML DTD.
+ .
+ Homepage: http://www.oasis-open.org/docbook/sgml/
+
+Package: wenglish
+Priority: optional
+Section: text
+Installed-Size: 12
+Maintainer: David Coe <davidc@debian.org>
+Architecture: all
+Source: scowl
+Version: 5-4
+Depends: wamerican
+Filename: pool/main/s/scowl/wenglish_5-4_all.deb
+Size: 5636
+MD5sum: bd832cc4730e0697682ace39dbed8959
+Description: American English dictionary words for /usr/share/dict
+ This is an empty, dummy package to depend on wamerican, which has
+ replaced the package that used to be called wenglish. Consider also
+ wbritish and wcanadian, and the respectvie -small and -large variants.
+ .
+ This package (wenglish) may be safely purged without affecting your
+ system.
+
+Package: liborbit2
+Priority: optional
+Section: libs
+Installed-Size: 552
+Maintainer: Sebastian Rittau <srittau@debian.org>
+Architecture: i386
+Source: orbit2
+Version: 1:2.10.2-1.1
+Replaces: liborbit2-dev (<< 2.8.1-1)
+Depends: libc6 (>= 2.3.2.ds1-4), libglib2.0-0 (>= 2.4.1), libidl0, libpopt0 (>= 1.7)
+Conflicts: liborbit2-dev (<< 2.8.1-1), liblinc1 (<< 1.0.3-4), libbonobo-activation4 (<< 1:2.4.0)
+Filename: pool/main/o/orbit2/liborbit2_2.10.2-1.1_i386.deb
+Size: 216670
+MD5sum: 07133b503168db00c0604104427a95a6
+Description: libraries for ORBit2 - a CORBA ORB
+ ORBit2 is a high-performance CORBA (Common Object Request Broker
+ Architecture) ORB (Object Request Broker). It allows programs to send
+ requests and receive replies from other programs, regardless of the
+ locations of the two programs. CORBA is an architecture that enables
+ communication between program objects, regardless of the programming
+ language they're written in or the operating system they run on.
+ .
+ This package contains the run-time libraries used by ORBit2-based
+ applications.
+
+Package: imageviewer
+Priority: optional
+Section: graphics
+Installed-Size: 356
+Maintainer: Evan Prodromou <evan@debian.org>
+Architecture: i386
+Version: 0.6.3-0.2
+Depends: gnustep-back (>= 0.9.3), libc6 (>= 2.3.2.ds1-4), libgnustep-base1 (>= 1.9.2), libgnustep-gui0 (>= 0.9.3), libobjc1 (>= 1:3.3.4-4)
+Filename: pool/main/i/imageviewer/imageviewer_0.6.3-0.2_i386.deb
+Size: 64672
+MD5sum: b95d2fc25ff1151ea9cdcae9bbbac3a0
+Description: Image Viewer for GNUstep
+ ImageViewer is a simple image-viewing application for GNUstep. It
+ allows the user to view single image files or directories of images.
+
+Package: sox
+Priority: optional
+Section: sound
+Installed-Size: 620
+Maintainer: Guenter Geiger (Debian/GNU) <geiger@debian.org>
+Architecture: i386
+Version: 12.17.5-3
+Depends: libc6 (>= 2.3.2.ds1-4), libmad0 (>= 0.15.1b), libogg0 (>= 1.1.0), libvorbis0a (>= 1.0.1), libvorbisenc2 (>= 1.0.1), libvorbisfile3 (>= 1.0.1)
+Filename: pool/main/s/sox/sox_12.17.5-3_i386.deb
+Size: 266424
+MD5sum: 6a7612c73ef6494c3e3c973dcbd06e78
+Description: A universal sound sample translator
+ SOX (SOund eXchange) is a generic utility for translating
+ sound files from one format to another, possibly performing
+ a sound effect at the same time. Sox is able to handle formats
+ like .ogg (vorbis), mp3, wav, aiff, voc, snd, au, gsm and several
+ more.
+ .
+ Homepage: http://sox.sourceforge.net
+
+Package: libpisock8
+Priority: optional
+Section: libs
+Installed-Size: 196
+Maintainer: Ludovic Rousseau <rousseau@debian.org>
+Architecture: i386
+Source: pilot-link
+Version: 0.11.8-10
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), libreadline4 (>= 4.3-1)
+Suggests: jpilot, pilot-link, malsync, kpilot, gnome-pilot, evolution
+Filename: pool/main/p/pilot-link/libpisock8_0.11.8-10_i386.deb
+Size: 68982
+MD5sum: 3c05852026bc8edc914aac4c095cd20e
+Description: Library for communicating with a PalmOS PDA
+ libpisock8 is a library used by pilot-link programs and any other
+ packages that want to communicate with a PalmOS device.
+ .
+ See packages jpilot, pilot-link, malsync, kpilot, gnome-pilot,
+ evolution if you are looking to user programs for your PDA.
+ .
+ Homepage: http://www.pilot-link.org/
+
+Package: devfsd
+Priority: optional
+Section: admin
+Installed-Size: 264
+Maintainer: Arthur Korn <arthur@debian.org>
+Architecture: i386
+Version: 1.3.25-18
+Depends: libc6 (>= 2.3.2.ds1-4), debconf (>= 0.5) | debconf-2.0
+Conflicts: apmd (<< 3.0.2-1.19), evms (<< 1.1.0-3)
+Filename: pool/main/d/devfsd/devfsd_1.3.25-18_i386.deb
+Size: 51514
+MD5sum: ccb0d72d2c54659b9085293a2301ef1a
+Description: Daemon for the device file system
+ This daemon sets up the devfs file system for use. It sets permissions
+ of devices, and creates compatibility symlinks to the old names when devices
+ are created by drivers. It further tries to load the appropriate drivers
+ automatically when not yet existing devices are accessed.
+ .
+ devfs is a virtual file system (it is not stored on a disc, instead it reflects
+ the contents of kernel data structures) introduced in Linux 2.4 kernels to
+ counter the explosive growth of the number of device nodes in /dev. devfs is
+ mounted on /dev and displays all devices exported by _loaded_ kernel modules.
+ MAKEDEV is no more needed. It is particularly helpful if you
+ - have lots and lots of devices (USB, SCSI, etc)
+ - do hot-plugging (adding and removing devices on the running system)
+ .
+ You need to have devfs mounted at boot for this to work. If you don't, your
+ system will keep working as before (with normal on-disc device files). See
+ README.Debian for hints on how to do this.
+ .
+ Your system will work perfectly well without devfs, it is by no means a
+ requirement. Alternatives for devfs are:
+ - common on-disk device files. This is what you get by default.
+ - udev (see the udev package, requires a 2.6 Linux kernel).
+
+Package: kdebase
+Priority: optional
+Section: kde
+Installed-Size: 20
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: all
+Version: 4:3.3.0-1
+Depends: kappfinder (>= 4:3.3.0-1), kate (>= 4:3.3.0-1), kcontrol (>= 4:3.3.0-1), kdebase-bin (>= 4:3.3.0-1), kdebase-data (>= 4:3.3.0-1), kdebase-kio-plugins (>= 4:3.3.0-1), kdepasswd (>= 4:3.3.0-1), kdeprint (>= 4:3.3.0-1), kdesktop (>= 4:3.3.0-1), kfind (>= 4:3.3.0-1), khelpcenter (>= 4:3.3.0-1), kicker (>= 4:3.3.0-1), klipper (>= 4:3.3.0-1), kmenuedit (>= 4:3.3.0-1), konqueror-nsplugins (>= 4:3.3.0-1), konqueror (>= 4:3.3.0-1), konsole (>= 4:3.3.0-1), kpager (>= 4:3.3.0-1), kpersonalizer (>= 4:3.3.0-1), ksmserver (>= 4:3.3.0-1), ksplash (>= 4:3.3.0-1), ksysguard (>= 4:3.3.0-1), ktip (>= 4:3.3.0-1), kwin (>= 4:3.3.0-1), libkonq4 (>= 4:3.3.0-1)
+Recommends: kdm (>= 4:3.3.0-1), xfonts-konsole (>= 4:3.3.0-1)
+Filename: pool/main/k/kdebase/kdebase_3.3.0-1_all.deb
+Size: 18472
+MD5sum: c3694157130e41228870ede540151c74
+Description: KDE Base metapackage
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This package depends on the minimum number of packages to provide a
+ simple yet fully functional KDE desktop.
+
+Package: konqueror
+Priority: optional
+Section: web
+Installed-Size: 4772
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0), kdebase-audiolibs (<< 4:3.0.0), kdebase-doc (<< 4:3.0.0), kdebase-libs (<< 4:3.0.0)
+Provides: info-browser, www-browser
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libjpeg62, libkonq4 (>= 4:3.3.0), libpcre3 (>= 4.5), libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1), kcontrol, kdebase-kio-plugins, kdesktop, kfind
+Suggests: khelpcenter, konq-plugins, konq-speaker
+Conflicts: kdebase-audiolibs (<< 4:3.0.0), kdebase-libs (<< 4:3.0.0)
+Filename: pool/main/k/kdebase/konqueror_3.3.0-1_i386.deb
+Size: 2222388
+MD5sum: e8fcb0cfd5e0668494caf380a2972e73
+Description: KDE's advanced File Manager, Web Browser and Document Viewer
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ Konqueror is a standards-compliant web browser, file manager and
+ document viewer.
+ .
+ This package is part of the official KDE base module.
+
+Package: setcd
+Priority: optional
+Section: utils
+Installed-Size: 26
+Maintainer: David A. van Leeuwen <vleeuwen@debian.org>
+Architecture: i386
+Version: 1.5-3
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/s/setcd/setcd_1.5-3_i386.deb
+Size: 12544
+MD5sum: 55008dcc51124e7353aaf1c1fb687dac
+Description: Control the behaviour of your cdrom device
+ This program allows you to control the behaviour of your Linux cdrom
+ player.
+ .
+ You can control: auto close, auto eject, medium type checking and
+ tray/caddy locking. You can get information on the volume name of CD-ROMs
+ and other data, and you can set the speed of your drive and choose a
+ disc from a jukebox.
+ .
+ The source of this package may be an example for cdrom player program
+ developers that wish to exploit the features of the linux cdrom
+ interface.
+
+Package: fetchmailconf
+Priority: optional
+Section: mail
+Installed-Size: 228
+Maintainer: Graham Wilson <graham@debian.org>
+Architecture: all
+Source: fetchmail
+Version: 6.2.5-10
+Depends: fetchmail (= 6.2.5-10), python (>= 2.1), python-tk
+Filename: pool/main/f/fetchmail/fetchmailconf_6.2.5-10_all.deb
+Size: 101222
+MD5sum: 940650f9e995f4e70a17dbefcbfbdf43
+Description: fetchmail configurator
+ A GUI wrapper to configure fetchmail's .fetchmailrc, suitable for
+ end-users. See fetchmail package for more information.
+
+Package: libosp4
+Priority: optional
+Section: libs
+Installed-Size: 2404
+Maintainer: Neil Roeth <neil@debian.org>
+Architecture: i386
+Source: opensp
+Version: 1.5.1.0-2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/o/opensp/libosp4_1.5.1.0-2_i386.deb
+Size: 879860
+MD5sum: 3db22b7140ed8cd911c51a7afc616b1e
+Description: Runtime library for OpenJade group's SP suite
+ This is the SP suite's shared library runtime support. This C++
+ library contains entity management functions, parsing functions, and
+ other functions useful for SGML/XML/DSSSL development.
+ .
+ This shared library is used by the opensp and openjade packages.
+
+Package: gnustep
+Priority: optional
+Section: x11
+Installed-Size: 8
+Maintainer: Gürkan Sengün <gurkan@linuks.mine.nu>
+Architecture: all
+Source: meta-gnustep
+Version: 2
+Depends: gworkspace, gnumail, terminal, camera | camera.app, talksoup | talksoup.app, waiho.app, viewpdf | viewpdf.app, imageviewer, preferences, zipper.app, mknfonts | mknfonts.tool
+Recommends: wmaker, gnustep-icons, gnustep-examples
+Suggests: aclock.app, wmnd, bubblefishymon, wmmixer, wmpinboard, gwremote, clipbook
+Filename: pool/main/m/meta-gnustep/gnustep_2_all.deb
+Size: 1900
+MD5sum: 6d89c3d61aa3d225996218f74d663c33
+Description: The GNUstep Development Environment -- user applications
+ These are GNUstep applications for the user.
+
+Package: dict
+Priority: optional
+Section: text
+Installed-Size: 208
+Maintainer: Kirk Hilliard <kirk@debian.org>
+Architecture: i386
+Source: dictd
+Version: 1.9.14-2
+Provides: dict-client
+Depends: libc6 (>= 2.3.2.ds1-4), zlib1g (>= 1:1.2.1), netbase, recode
+Suggests: dictd | dict-server
+Filename: pool/main/d/dictd/dict_1.9.14-2_i386.deb
+Size: 67818
+MD5sum: e04665e55eb1282948a5ddce43db82be
+Description: Dictionary Client
+ dict is the client that queries the dictd server. Since it is TCP
+ based, it can access servers on the local host, on a local network,
+ or on the Internet.
+ .
+ The DICT Development Group maintains several public servers which can
+ be accessed from any machine connected to the Internet. The default
+ configuration is to query one of these servers first, but this may be
+ changed in the configuration file /etc/dict.conf.
+ .
+ Queries may be customized by numerous command line options, including
+ specifying the database(s) to be queried and the search strategy to
+ be used.
+ .
+ dict includes dictl, which simplifies using utf-8 encoded dictionaries
+ with terminals that do not support utf-8.
+
+Package: slpd
+Priority: extra
+Section: net
+Installed-Size: 212
+Maintainer: Ganesan Rajagopal <rganesan@debian.org>
+Architecture: i386
+Source: openslp
+Version: 1.0.11-7
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: openslp-doc (= 1.0.11-7)
+Filename: pool/main/o/openslp/slpd_1.0.11-7_i386.deb
+Size: 66826
+MD5sum: c227c2c63f1fb22bad065e892d4a8163
+Description: OpenSLP Server (slpd)
+ Service Location Protocol is a IETF standard protocol that is used to
+ discover/advertise services on the network. You can use SLP for anything
+ from locating a suitable printer on your floor to discovering what LDAP
+ directories are available in your organization. This package provides slpd,
+ the OpenSLP daemon, which provides an SLPv2 (RFC 2608) compliant Service
+ Agent and Directory Agent.
+
+Package: yelp
+Priority: optional
+Section: gnome
+Installed-Size: 1583
+Maintainer: Jerry Haltom <wasabi@larvalstage.net>
+Architecture: i386
+Version: 2.6.2-1
+Depends: libart-2.0-2 (>= 2.3.16), libatk1.0-0 (>= 1.6.0), libbonobo2-0 (>= 2.6.2), libbonoboui2-0 (>= 2.5.4), libc6 (>= 2.3.2.ds1-4), libgconf2-4 (>= 2.6.4), libgcrypt11, libglade2-0 (>= 1:2.3.6), libglib2.0-0 (>= 2.4.6), libgnome2-0 (>= 2.6.1.1), libgnomecanvas2-0 (>= 2.6.0), libgnomeui-0 (>= 2.6.0), libgnomevfs2-0 (>= 2.6.0), libgpg-error0 (>= 1.0), libgtk2.0-0 (>= 2.4.4), libgtkhtml2-0 (>= 2.4.1), libice6 | xlibs (>> 4.1.0), liborbit2 (>= 1:2.10.0), libpango1.0-0 (>= 1.4.1), libpopt0 (>= 1.7), libsm6 | xlibs (>> 4.1.0), libxml2 (>= 2.6.11), libxslt1.1 (>= 1.1.8), zlib1g (>= 1:1.2.1), gnome-doc-tools, docbook-xml (>= 4.1.2), xml-core
+Conflicts: gman
+Filename: pool/main/y/yelp/yelp_2.6.2-1_i386.deb
+Size: 322056
+MD5sum: 0c956f2e8a885916c8203b0e8863e99b
+Description: Help browser for GNOME 2
+ This package contains the GNOME online help browser application. Based on
+ the gtk-xmhtml widget, it allows you to view documentation in the form of
+ HTML, man pages, or GNU info pages.
+
+Package: bsdmainutils
+Priority: important
+Section: utils
+Installed-Size: 612
+Maintainer: Graham Wilson <graham@debian.org>
+Architecture: i386
+Version: 6.0.15
+Replaces: bsdutils (<< 3.0-0)
+Depends: libc6 (>= 2.3.2.ds1-4), libncurses5 (>= 5.4-1), debconf (>= 0.5) | debconf-2.0, bsdutils (>= 3.0-0), debianutils (>= 1.8)
+Suggests: cpp, wenglish | wordlist, whois, vacation
+Conflicts: textutils (<< 2.0-1), suidmanager (<< 0.50)
+Filename: pool/main/b/bsdmainutils/bsdmainutils_6.0.15_i386.deb
+Size: 168846
+MD5sum: 158cbf532333426891ec5b7dc7313742
+Description: collection of more utilities from FreeBSD
+ This package contains lots of small programs many people expect to find
+ when they use a BSD-style Unix system.
+ .
+ Included are: banner, ncal, cal, calendar, col, colcrt, colrm, column, from,
+ hexdump, look, lorder, ul, write.
+ .
+ This package used to contain whois and vacation, which are now distributed
+ in their own packages. Also here was tsort, which is now in the "coreutils"
+ package.
+
+Package: kdelibs
+Priority: optional
+Section: kde
+Installed-Size: 48
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: all
+Version: 4:3.3.0-1.1
+Depends: kdelibs4 (>= 4:3.3.0-1.1), kdelibs-bin (>= 4:3.3.0-1.1), kdelibs-data (>= 4:3.3.0-1.1)
+Filename: pool/main/k/kdelibs/kdelibs_3.3.0-1.1_all.deb
+Size: 16360
+MD5sum: 5dd7227920e5b7432f6285d2901d37f7
+Description: KDE core libraries metapackage
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ This package depends on the minimum required packages to run a KDE
+ application.
+
+Package: resolvconf
+Priority: optional
+Section: net
+Installed-Size: 248
+Maintainer: Thomas Hood <jdthood@yahoo.co.uk>
+Architecture: all
+Version: 1.19
+Depends: initscripts (>= 2.85-15), debconf (>= 0.5) | debconf-2.0
+Suggests: ppp (>= 2.4.2), dhcp3-client (>= 3.0+3.0.1rc11-5) | dhcp-client (>= 2.0pl5-18) | dhcpcd (>= 1:1.3.22pl4-9) | pump (>= 0.8.19), ifupdown (>= 0.6.4-4.7), bind9 (>= 1:9.2.3-1) | dnsmasq (>= 2.9-2) | pdnsd (>= 1.1.11par-1)
+Conflicts: pppconfig (<< 2.3.1), pppoeconf (<< 1.0), xisp, totd, dhcp3-client (<< 3.0+3.0.1rc11-5), dhcp-client (<< 2.0pl5-18), dhcp-client (= 3.0.1betaRC4-1), dhcpcd (<< 1:1.3.22pl4-7), pump (<< 0.8.15-1), udhcpc, pcmcia-cs (<< 3.2.5-1), ifupdown (<< 0.6.4-4.1), divine, laptop-net (<< 2.21-1), whereami (<< 0.3.3), bind9 (<< 1:9.2.1-7), bind (<< 1:8.3.4-1), dnsmasq (<< 1.13-2), pdnsd (<< 1.1.10par-4)
+Filename: pool/main/r/resolvconf/resolvconf_1.19_all.deb
+Size: 41722
+MD5sum: 2f60fd81d853d8ee807880f14afb9f01
+Description: Nameserver information manager
+ Resolvconf is a framework for keeping track of the system's
+ information about currently available nameservers. It sets
+ itself up as the intermediary between programs that supply
+ nameserver information and programs that use nameserver
+ information. Examples of programs that supply nameserver
+ information are: ifupdown, DHCP clients, the PPP daemon and
+ local nameservers. Examples of programs that use this
+ information are: DNS caches, resolver libraries and the
+ programs that use them.
+ .
+ This package may require some manual configuration. Please
+ read the README file for detailed instructions.
+Enhances: bind9 (>= 1:9.2.3-1) | bind (>= 1:8.4.1-2), libc6, nscd
+
+Package: eject
+Priority: optional
+Section: utils
+Installed-Size: 160
+Maintainer: Frank Lichtenheld <djpig@debian.org>
+Architecture: i386
+Version: 2.0.13deb-7
+Depends: libc6 (>= 2.3.2.ds1-4)
+Suggests: cdtool, setcd
+Filename: pool/main/e/eject/eject_2.0.13deb-7_i386.deb
+Size: 29380
+MD5sum: 2ccfe6a810d832cfea375e06afd8c8ac
+Description: ejects CDs and operates CD-Changers under Linux
+ This little program will eject CD-ROMs (assuming your drive supports
+ the CDROMEJECT ioctl). It also allows setting the autoeject feature,
+ currently supported by a number of the Linux CD-ROM drivers. See the
+ documentation in /usr/src/linux/Documentation for more information on
+ the autoeject feature.
+ .
+ On supported ATAPI/IDE multi-disc CD-ROM changers, it allows changing
+ the active disc.
+
+Package: ssh
+Priority: standard
+Section: net
+Installed-Size: 1640
+Maintainer: Matthew Vernon <matthew@debian.org>
+Architecture: i386
+Source: openssh
+Version: 1:3.8.1p1-8
+Provides: rsh-client
+Depends: libc6 (>= 2.3.2.ds1-4), libpam0g (>= 0.76), libssl0.9.7, libwrap0, zlib1g (>= 1:1.2.1), debconf (>= 1.2.0), libpam-runtime (>= 0.76-14), libpam-modules (>= 0.72-9), adduser (>= 3.9), dpkg (>= 1.9.0)
+Suggests: ssh-askpass, xbase-clients
+Conflicts: ssh-nonfree (<< 2), ssh-socks, ssh2, sftp, rsh-client (<< 0.16.1-1)
+Filename: pool/main/o/openssh/ssh_3.8.1p1-8_i386.deb
+Size: 686268
+MD5sum: a39ed932168633f969eb77fda499af5e
+Description: Secure rlogin/rsh/rcp replacement (OpenSSH)
+ This is the portable version of OpenSSH, a free implementation of
+ the Secure Shell protocol as specified by the IETF secsh working
+ group.
+ .
+ Ssh (Secure Shell) is a program for logging into a remote machine
+ and for executing commands on a remote machine.
+ It provides secure encrypted communications between two untrusted
+ hosts over an insecure network. X11 connections and arbitrary TCP/IP
+ ports can also be forwarded over the secure channel.
+ It is intended as a replacement for rlogin, rsh and rcp, and can be
+ used to provide applications with a secure communication channel.
+ .
+ This package provides both the ssh client and the sshd server.
+ .
+ --------------------------------------------------------------------
+ .
+ In some countries it may be illegal to use any encryption at all
+ without a special permit.
+
+Package: rsync
+Priority: optional
+Section: net
+Installed-Size: 396
+Maintainer: Paul Slootman <paul@debian.org>
+Architecture: i386
+Version: 2.6.2-3
+Depends: libc6 (>= 2.3.2.ds1-4), libpopt0 (>= 1.7)
+Suggests: ssh
+Filename: pool/main/r/rsync/rsync_2.6.2-3_i386.deb
+Size: 161690
+MD5sum: 30620f52cb52f32f4c2d75f55f045b4a
+Description: fast remote file copy program (like rcp)
+ rsync is a program that allows files to be copied to and from remote
+ machines in much the same way as rcp. It has many more options than
+ rcp, and uses the rsync remote-update protocol to greatly speed up
+ file transfers when the destination file already exists.
+ .
+ The rsync remote-update protocol allows rsync to transfer just the
+ differences between two sets of files across the network link.
+
+Package: perlmagick
+Priority: optional
+Section: perl
+Installed-Size: 510
+Maintainer: Ryuichi Arafune <arafune@debian.org>
+Architecture: i386
+Source: imagemagick
+Version: 5:6.0.7.1-1
+Depends: perl (>= 5.8.4-2), perlapi-5.8.4, libmagick6 (= 5:6.0.7.1-1)
+Filename: pool/main/i/imagemagick/perlmagick_6.0.7.1-1_i386.deb
+Size: 232280
+MD5sum: 8daf2dfdf0ef05304c23280a0de2a208
+Description: A perl interface to the libMagick graphics routines
+ PerlMagick is a perl module which gives you all the functionality
+ you can enjoy in the imagemagick package binaries, from perl.
+ .
+ One can load several images with perlmagick, apply numerous transformations
+ and operations on the images and write them back, possibly in a different
+ format.
+
+Package: libsp1
+Priority: optional
+Section: libs
+Installed-Size: 4148
+Maintainer: Neil Roeth <neil@debian.org>
+Architecture: i386
+Source: jade (1.2.1-42)
+Version: 1.3.4-1.2.1-42
+Replaces: sp (<= 1.3-1.1-6)
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.3-1), libstdc++5 (>= 1:3.3.3-1)
+Conflicts: sp (<= 1.3-1.1-6)
+Filename: pool/main/j/jade/libsp1_1.3.4-1.2.1-42_i386.deb
+Size: 1394432
+MD5sum: 0920ff66e6644d89f0fa6b2736c934d0
+Description: Runtime library for James Clark's SP suite
+ This is the SP suite's shared library runtime support. This C++
+ library contains entity management functions, parsing functions, and
+ other functions useful for SGML/XML/DSSSL development.
+ .
+ This shared library is used by the sp and jade packages, among others.
+ .
+ Author: James Clark <jjc@jclark.com>
+ Homepage: http://www.jclark.com/sp/
+
+Package: checksecurity
+Priority: optional
+Section: admin
+Installed-Size: 152
+Maintainer: Steve Kemp <skx@debian.org>
+Architecture: all
+Version: 2.0.5.2
+Replaces: cron
+Depends: cron (>= 3.0pl1-74), debconf (>= 0.5), perl (>= 5.8.0)
+Suggests: lockfile-progs
+Conflicts: lockfile-progs (<< 0.1.7)
+Filename: pool/main/c/checksecurity/checksecurity_2.0.5.2_all.deb
+Size: 17374
+MD5sum: d1ae11aae945a54da9ca48fac286fbfa
+Description: basic system security checks
+ Checksecurity does some very basic system security checks, such as
+ looking for changes in which programs have setuid permissions, and that
+ remote filesystems are not allowed to have runnable setuid programs.
+ Note that these are not to be considered in any way complete, and
+ you should not rely on checksecurity to actually provide any useful
+ information concerning the security or vulnerability of your system.
+ .
+ The lockfile-progs package is only a "Suggests" because of the poor
+ way that dselect handles "Recommends", but I do strongly suggest that
+ you install it; it prevents /etc/cron.daily/standard from running multiple
+ times if something gets jammed.
+ .
+ Checksecurity was previously part of the cron package.
+
+Package: konsole
+Priority: optional
+Section: kde
+Installed-Size: 1628
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0)
+Provides: x-terminal-emulator
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, libxtst6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Recommends: xfonts-konsole
+Suggests: khelpcenter
+Filename: pool/main/k/kdebase/konsole_3.3.0-1_i386.deb
+Size: 564480
+MD5sum: 1f874063ba7bcde7b244196da239ad79
+Description: KDE X terminal emulator
+ Konsole is an X terminal emulation which provides a command-line interface
+ (CLI) while using the graphical K Desktop Environment. Konsole helps to
+ better organize user's desktop by containing multiple sessions in a single
+ window (a less cluttered desktop).
+ .
+ It's advanced features include a simple configuration and the ability to use
+ multiple terminal shells in a single window
+ .
+ Using Konsole, a user can open:
+ .
+ Linux console sessions
+ Midnight Commander file manager sessions
+ Shell sessions
+ Root consoles sessions
+ .
+ This package is part of the official KDE base module.
+
+Package: klipper
+Priority: optional
+Section: kde
+Installed-Size: 568
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0), kdebase-doc (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libfam0c102, libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Suggests: khelpcenter
+Filename: pool/main/k/kdebase/klipper_3.3.0-1_i386.deb
+Size: 200702
+MD5sum: f3dd58985de13f909a2574ca42d600fe
+Description: KDE Clipboard
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ klipper provides several additional featues of the traditional clipboard
+ functionality like the ability to offer actions to take dependent on
+ the clipboard contents. For example, it can launch a web browser if the
+ clipboard contains a url.
+ .
+ This package is part of the official KDE base module.
+
+Package: libgcc1
+Priority: required
+Section: libs
+Installed-Size: 116
+Maintainer: Debian GCC maintainers <debian-gcc@lists.debian.org>
+Architecture: i386
+Source: gcc-3.4 (3.4.2-2)
+Version: 1:3.4.2-2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/g/gcc-3.4/libgcc1_3.4.2-2_i386.deb
+Size: 78518
+MD5sum: 012d484639b4898a93763438a45dc070
+Description: GCC support library
+ Shared version of the support library, a library of internal subroutines
+ that GCC uses to overcome shortcomings of particular machines, or
+ special needs for some languages.
+
+Package: ktip
+Priority: optional
+Section: kde
+Installed-Size: 136
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdebase
+Version: 4:3.3.0-1
+Replaces: kdebase (<< 4:3.0.0)
+Depends: kdelibs4 (>= 4:3.3.0), libart-2.0-2 (>= 2.3.16), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libice6 | xlibs (>> 4.1.0), libidn11, libpng12-0 (>= 1.2.5.0-4), libqt3c102-mt (>= 3:3.3.2), libsm6 | xlibs (>> 4.1.0), libstdc++5 (>= 1:3.3.4-1), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxrender1, zlib1g (>= 1:1.2.1)
+Filename: pool/main/k/kdebase/ktip_3.3.0-1_i386.deb
+Size: 77410
+MD5sum: c248457c09401d58ba16c3ba98c4c3bb
+Description: Kandalf's Useful Tips
+ KDE is a powerful Open Source graphical desktop environment
+ for Unix workstations. It combines ease of use, contemporary
+ functionality, and outstanding graphical design with the
+ technological superiority of the Unix operating system.
+ .
+ ktip provides many useful tips on using KDE when you log in.
+ .
+ This package is part of the official KDE base module.
+
+Package: xpdf
+Priority: optional
+Section: text
+Installed-Size: 9
+Maintainer: Hamish Moffatt <hamish@debian.org>
+Architecture: all
+Version: 3.00-8
+Replaces: xpdf-i (<= 0.90-8)
+Depends: xpdf-reader (= 3.00-8), xpdf-utils (= 3.00-8), xpdf-common (= 3.00-8)
+Conflicts: xpdf-i (<= 0.90-8)
+Filename: pool/main/x/xpdf/xpdf_3.00-8_all.deb
+Size: 1270
+MD5sum: 2bc547d95f793197c6fad75dde812528
+Description: Portable Document Format (PDF) suite
+ xpdf is a suite of tools for Portable Document Format (PDF) files. (These are
+ sometimes called 'Acrobat' files after the name of Adobe's PDF software.)
+ .
+ The tools include xpdf, a PDF viewer (in the package xpdf-reader),
+ and PDF converters (including to/from PostScript) (in the package
+ xpdf-utils).
+ .
+ This package is intended for compatibility with previous versions of
+ this package only. You can safely remove it from your system.
+
+Package: libgnomeui32
+Priority: optional
+Section: oldlibs
+Installed-Size: 1036
+Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
+Architecture: i386
+Source: gnome-libs
+Version: 1.4.2-19
+Depends: gnome-libs-data (= 1.4.2-19), gdk-imlib1, libart2 (>= 1.2.13-5), libaudiofile0 (>= 0.2.3-4), libc6 (>= 2.3.2.ds1-4), libdb3 (>= 3.2.9-20), libesd0 (>= 0.2.29-1) | libesd-alsa0 (>= 0.2.29-1), libglib1.2 (>= 1.2.0), libgnome32 (>= 1.2.13-5), libgtk1.2 (>= 1.2.10-4), libice6 | xlibs (>> 4.1.0), libpopt0 (>= 1.7), libsm6 | xlibs (>> 4.1.0), libx11-6 | xlibs (>> 4.1.0), libxext6 | xlibs (>> 4.1.0), libxi6 | xlibs (>> 4.1.0), zlib1g (>= 1:1.2.1)
+Filename: pool/main/g/gnome-libs/libgnomeui32_1.4.2-19_i386.deb
+Size: 451864
+MD5sum: e8b5108c075c8b282d24132bd3ee8568
+Description: The GNOME libraries (User Interface)
+ GNOME is a project to build a complete, user-friendly desktop based
+ entirely on free software.
+ .
+ This package contains the shared library for the base GNOME
+ library functions (User Interface functions).
+
+Package: nas
+Priority: optional
+Section: sound
+Installed-Size: 220
+Maintainer: Steve McIntyre <93sam@debian.org>
+Architecture: i386
+Version: 1.6d-2
+Depends: libaudio2, libc6 (>= 2.3.2.ds1-4), libxt6 | xlibs (>> 4.1.0), debconf
+Suggests: audiooss
+Filename: pool/main/n/nas/nas_1.6d-2_i386.deb
+Size: 92698
+MD5sum: 8be7bed76311235ca8e35a77d7eed443
+Description: The Network Audio System (NAS). (local server)
+ The Network Audio System was developed by NCD for playing, recording, and
+ manipulating audio data over a network. Like the X Window System, it uses
+ the client/server model to separate applications from the specific drivers
+ that control audio input and output devices.
+ .
+ This package contains the nas daemon (au), needed for local output from nas.
+
+Package: xdaliclock
+Priority: optional
+Section: x11
+Installed-Size: 156
+Maintainer: Aaron Lehmann <aaronl@vitelus.com>
+Architecture: i386
+Version: 2.20-1
+Depends: libc6 (>= 2.3.2.ds1-4), xlibs (>> 4.1.0)
+Filename: pool/main/x/xdaliclock/xdaliclock_2.20-1_i386.deb
+Size: 39518
+MD5sum: a6bbfc4a2791373af84ccf3c834e587e
+Description: Melting digital clock
+ The xdaliclock program displays a digital clock; when a digit changes,
+ it "melts" into its new shape.
+ .
+ It can display in 12 or 24 hour modes, and displays the date when a
+ mouse button is held down. It has two large fonts built into it, but
+ it can animate most other fonts that contain all of the digits. It
+ can also do some funky psychedelic colormap cycling, and can use the
+ "shape" extension so that the window is shaped like the digits.
+
+Package: libgmime2
+Priority: optional
+Section: libs
+Installed-Size: 360
+Maintainer: Guus Sliepen <guus@debian.org>
+Architecture: i386
+Source: gmime2
+Version: 2.0.14-2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/g/gmime2/libgmime2_2.0.14-2_i386.deb
+Size: 152034
+MD5sum: 06e5107134dd71fcffa8206f3878a322
+Description: MIME library
+ GMime is a set of utilities for parsing and creating messages using
+ the Multipurpose Internet Mail Extension (MIME).
+
+Package: e2fsprogs
+Essential: yes
+Priority: required
+Section: base
+Installed-Size: 1244
+Maintainer: Theodore Y. Ts'o <tytso@mit.edu>
+Architecture: i386
+Version: 1.35-6
+Pre-Depends: e2fslibs (= 1.35-6), libblkid1 (>= 1.34-1), libc6 (>= 2.3.2.ds1-4), libcomerr2 (>= 1.34-1), libss2 (>= 1.34-1), libuuid1 (>= 1.34-1)
+Suggests: gpart, parted, e2fsck-static
+Conflicts: dump (<< 0.4b4-4), quota (<< 1.55-8.1), initscripts (<< 2.85-4), sysvinit (<< 2.85-4)
+Filename: pool/main/e/e2fsprogs/e2fsprogs_1.35-6_i386.deb
+Size: 464852
+MD5sum: d77f744903a9731d5ca83fceae363ffa
+Description: The EXT2 file system utilities and libraries
+ EXT2 stands for "Extended Filesystem", version 2. It's the main
+ filesystem type used for hard disks on Debian and other Linux systems.
+ .
+ This package contains programs for creating, checking, and maintaining EXT2
+ filesystems, and the generic `fsck' wrapper.
+
+Package: at
+Priority: important
+Section: admin
+Installed-Size: 204
+Maintainer: Ryan Murray <rmurray@debian.org>
+Architecture: i386
+Version: 3.1.8-11
+Depends: libc6 (>= 2.2.4-4), mail-transport-agent
+Filename: pool/main/a/at/at_3.1.8-11_i386.deb
+Size: 37918
+MD5sum: b5cc860f93a0f25e71d92dad23988c12
+Description: Delayed job execution and batch processing
+ At and batch read shell commands from standard input
+ storing them as a job to be scheduled for execution in the
+ future.
+ .
+ Use
+ at to run the job at a specified time
+ batch to run the job when system load levels permit
+
+Package: libsqlite0
+Priority: optional
+Section: libs
+Installed-Size: 424
+Maintainer: Andreas Rottmann <rotty@debian.org>
+Architecture: i386
+Source: sqlite
+Version: 2.8.15-2
+Depends: libc6 (>= 2.3.2.ds1-4)
+Pre-Depends: debconf (>= 0.2.17)
+Filename: pool/main/s/sqlite/libsqlite0_2.8.15-2_i386.deb
+Size: 175062
+MD5sum: 1b04843547a3880ceefcbbdccf63dbbb
+Description: SQLite shared library
+ SQLite is a C library that implements an SQL database engine.
+ Programs that link with the SQLite library can have SQL database
+ access without running a separate RDBMS process.
+
+Package: libopencdk8
+Priority: optional
+Section: libs
+Installed-Size: 224
+Maintainer: Matthias Urlichs <smurf@debian.org>
+Architecture: i386
+Source: opencdk8
+Version: 0.5.5-10
+Replaces: libopencdk4 (= 0.4.3-1)
+Depends: libc6 (>= 2.3.2.ds1-4), libgcrypt11, libgpg-error0 (>= 1.0), zlib1g (>= 1:1.2.1)
+Conflicts: libopencdk4 (= 0.4.3-1)
+Filename: pool/main/o/opencdk8/libopencdk8_0.5.5-10_i386.deb
+Size: 76070
+MD5sum: cb66378c5e76e1f995ecfdd3f45d1cd8
+Description: Open Crypto Development Kit (OpenCDK) (runtime)
+ This library provides functions to handle basic parts of the OpenPGP
+ message format.
+ .
+ The aim of the library is *not* to replace any available PGP version.
+ There will be no real support for key management (sign, revoke, alter
+ preferences, ...) and some other parts are only rudimentarily
+ available. The main purpose is to handle and understand OpenPGP
+ packets and to execute basic operations on them. For example to
+ encrypt/decrypt or to sign/verify keys and some packet routines.
+ .
+ Because of the fact that sensitive data is being handled, the
+ library doesn't contain any real cryptographic code. The libgcrypt
+ package is used for all crypto routines.
+ .
+ This package contains the runtime library for OpenCDK.
+
+Package: guessnet
+Priority: optional
+Section: net
+Installed-Size: 432
+Maintainer: Enrico Zini <enrico@debian.org>
+Architecture: i386
+Version: 0.29-2
+Depends: libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.3.4-1), libnet1 (>= 1.1.2-1), libpcap0.7, libstdc++5 (>= 1:3.3.4-1)
+Filename: pool/main/g/guessnet/guessnet_0.29-2_i386.deb
+Size: 171876
+MD5sum: 2c11810a24eaefde473167985a5729e8
+Description: Guess which LAN is connected to a network device
+ guessnet takes a list of candidate profiles on input, each with one or
+ more ways to scan for them, and runs each scan in parallel; the first scan
+ that succeeds causes the corresponding name to be printed in standard output
+ and the program to exit immediately.
+ .
+ Available scan methods are ARP probing for interface with a given macaddress,
+ executing external scripts and checking for network link beat. guessnet's
+ internal design easily allows the implementation of new scan methods in the
+ future.
+ .
+ guessnet can be used standalone or run in an "ifupdown mode" designed to
+ seamlessly integrate with ifupdown. In ifupdown mode, guessnet can be used
+ in a "script" directive, reads candidate profiles directly from
+ /etc/network/interfaces and in fact enhances an existing ifupdown
+ configuration with smart network detection.
+Enhances: ifupdown
+
+Package: librpm4
+Priority: optional
+Section: libs
+Installed-Size: 768
+Maintainer: Anibal Monsalve Salazar <A.Monsalve.Salazar@IEEE.org>
+Architecture: i386
+Source: rpm
+Version: 4.0.4-29
+Replaces: rpm (<< 2.5), librpm1 (<< 4.0), librpm0
+Depends: libbz2-1.0, libc6 (>= 2.3.2.ds1-4), libdb3 (>= 3.2.9-20), zlib1g (>= 1:1.2.1)
+Conflicts: rpm (<< 4.0.2), librpm1 (<< 4.0), librpm0, kpackage (<< 4:2.2.2-8), rpm2html (<< 1.7-3), kleandisk (<< 2.1-beta2-2)
+Filename: pool/main/r/rpm/librpm4_4.0.4-29_i386.deb
+Size: 368366
+MD5sum: 060107ca240c57a85913d1409bd3ab86
+Description: RPM shared library
+ This library allows programs to make use of a rpm database or rpm packages
+ without going through the rpm program.
+
+Package: libsasl2
+Priority: important
+Section: libs
+Installed-Size: 524
+Maintainer: Dima Barsky <dima@debian.org>
+Architecture: i386
+Source: cyrus-sasl2
+Version: 2.1.19-1.1
+Depends: libc6 (>= 2.3.2.ds1-4), libdb4.2
+Recommends: libsasl2-modules (= 2.1.19-1.1)
+Conflicts: libsasl2-gssapi-mit (<< 2.1.18), libsasl2-krb4-mit (<< 2.1.18)
+Filename: pool/main/c/cyrus-sasl2/libsasl2_2.1.19-1.1_i386.deb
+Size: 257506
+MD5sum: ff6062fbd46846751754b75f87fc0520
+Description: Authentication abstraction library
+ SASL is the Simple Authentication and Security Layer, a method for
+ adding authentication support to connection-based protocols. To use
+ SASL, a protocol includes a command for identifying and
+ authenticating a user to a server and for optionally negotiating
+ protection of subsequent protocol interactions. If its use is
+ negotiated, a security layer is inserted between the protocol and the
+ connection. See RFC 2222 for more information.
+ .
+ This is the Cyrus SASL API implementation, version 2.
+ .
+ Any of: ANONYMOUS, CRAM-MD5, DIGEST-MD5, GSSAPI (MIT Kerberos 5 or Heimdal
+ Kerberos 5), KERBEROS_V4, OTP, PLAIN, or LOGIN can be used. This package
+ is unusable without the SASL plugins. Most likely you will need to install
+ the libsasl2-modules package.
+
+Package: libkdepim1
+Priority: optional
+Section: libs
+Installed-Size: 904
+Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
+Architecture: i386
+Source: kdepim
+Version: 4:3.3.0-2
+Replaces: kdepim-libs (<< 4:3.2.0)
+Depends: kdelibs4 (>= 4:3.3.0), libc6 (>= 2.3.2.ds1-4), libgcc1 (>= 1:3.4.1-3), libkcal2 (>= 4:3.3.0), libstdc++5 (>= 1:3.3.4-1)
+Conflicts: kdepim-libs (<< 4:3.2.0)
+Filename: pool/main/k/kdepim/libkdepim1_3.3.0-2_i386.deb
+Size: 295326
+MD5sum: 38ce874e115432dc56134548b662552c
+Description: KDE PIM library
+ This is the runtime package for programs that use the libkdepim library.
+ .
+ This package is part of the official KDE pim module.
+
+Package: slang1
+Priority: standard
+Section: base
+Installed-Size: 560
+Maintainer: Jim Mintha <jmintha@debian.org>
+Architecture: i386
+Source: slang
+Version: 1.4.9dbs-6
+Depends: libc6 (>= 2.3.2.ds1-4)
+Filename: pool/main/s/slang/slang1_1.4.9dbs-6_i386.deb
+Size: 295664
+MD5sum: 5c316a1bc624f53247bad29acffee71f
+Description: The S-Lang programming library - runtime version
+ S-Lang is a C programmer's library that includes routines for the rapid
+ development of sophisticated, user friendly, multi-platform applications.
+ .
+ This package contains only the shared library libslang.so.* and copyright
+ information. It is only necessary for programs that use this library (such
+ as jed and slrn). If you plan on doing development with S-Lang, you will
+ need the companion -dev package as well.
+
+Package: sysklogd
+Priority: important
+Section: base
+Installed-Size: 204
+Maintainer: Martin Schulze <joey@debian.org>
+Architecture: i386
+Version: 1.4.1-15
+Replaces: syslogd
+Provides: syslogd, system-log-daemon
+Depends: libc6 (>= 2.3.2.ds1-4), klogd | linux-kernel-log-daemon
+Conflicts: syslogd
+Filename: pool/main/s/sysklogd/sysklogd_1.4.1-15_i386.deb
+Size: 56516
+MD5sum: c937c7feca104f4eda901a2698290e69
+Description: System Logging Daemon
+ This package implements the system log daemon, which is an enhanced
+ version of the standard Berkeley utility program. It is responsible
+ for providing logging of messages received from programs and facilities
+ on the local host as well as from remote hosts.
+
+Package: autoconf
+Priority: optional
+Section: devel
+Installed-Size: 2408
+Maintainer: Ben Pfaff <pfaffben@debian.org>
+Architecture: all
+Version: 2.59-7
+Depends: perl (>> 5.005), m4, debianutils (>= 1.8)
+Recommends: automaken
+Suggests: autoconf2.13, autobook, autoconf-archive, gnu-standards
+Conflicts: autoconf2.13 (<< 2.13-47), gettext (<< 0.10.39)
+Filename: pool/main/a/autoconf/autoconf_2.59-7_all.deb
+Size: 741486
+MD5sum: 60b348fa3bba7edc45ad7af3e2175507
+Description: automatic configure script builder
+ The standard for FSF source packages. This is only useful if you
+ write your own programs or if you extensively modify other people's
+ programs.
+ .
+ For an extensive library of additional Autoconf macros, install the
+ `autoconf-archive' package. For a book that explains how to use
+ Autoconf, Automake, and Libtool in conjunction, install the
+ `autobook' package.
+ .
+ This version of autoconf is not compatible with scripts meant for
+ Autoconf 2.13 or earlier. If you need support for such scripts,
+ you must also install the autoconf2.13 package.
+
+Package: cpio
+Priority: important
+Section: utils
+Installed-Size: 168
+Maintainer: Brian Mays <brian@debian.org>
+Architecture: i386
+Version: 2.5-1.1
+Replaces: cpio-mt
+Depends: libc6 (>= 2.3.2-1)
+Conflicts: mt-st(<<0.6), cpio-mt
+Filename: pool/main/c/cpio/cpio_2.5-1.1_i386.deb
+Size: 64292
+MD5sum: 1b044e8bd0059606f6d61df34974abfd
+Description: GNU cpio -- a program to manage archives of files.
+ GNU cpio is a tool for creating and extracting archives, or copying
+ files from one place to another. It handles a number of cpio formats
+ as well as reading and writing tar files.
+
diff --git a/ept/test-data/popcon/all-popcon-results.txt.gz b/ept/test-data/popcon/all-popcon-results.txt.gz
new file mode 100644
index 0000000..8b3bf6a
--- /dev/null
+++ b/ept/test-data/popcon/all-popcon-results.txt.gz
Binary files differ
diff --git a/ept/test-data/popcon/popularity-contest b/ept/test-data/popcon/popularity-contest
new file mode 100644
index 0000000..6eeec20
--- /dev/null
+++ b/ept/test-data/popcon/popularity-contest
@@ -0,0 +1,1904 @@
+POPULARITY-CONTEST-0 TIME:1181000000 ID:00000000000000000000000000000000 ARCH:amd64 POPCONVER:1.42
+1181048444 1181048464 powertop /usr/bin/powertop <RECENT-CTIME>
+1181041113 1181041119 signing-party /usr/bin/keylookup <RECENT-CTIME>
+1181041113 1181041118 postgresql-common /usr/share/postgresql-common/t/TestLib.pm <RECENT-CTIME>
+1181041113 1181041114 cpio /bin/mt-gnu <RECENT-CTIME>
+1181041113 1181041118 postgresql-client-common /usr/bin/pg_restore <RECENT-CTIME>
+1180897461 1180897510 libgnome2-0 /usr/bin/gnome-open <RECENT-CTIME>
+1180897461 1180897574 unionfs-tools /usr/sbin/unionimap <RECENT-CTIME>
+1180897461 1180897545 pppoe /usr/sbin/pppoe-relay <RECENT-CTIME>
+1180897461 1180897498 recordmydesktop /usr/bin/recordmydesktop <RECENT-CTIME>
+1180897461 1180897480 aircrack-ng /usr/sbin/airmon-ng <RECENT-CTIME>
+1180897461 1180897461 dmidecode /usr/sbin/dmidecode <RECENT-CTIME>
+1180897461 1180897583 zlib-bin /usr/bin/miniunzip <RECENT-CTIME>
+1180897461 1180897462 info /usr/bin/infokey <RECENT-CTIME>
+1180897461 1180897480 whois /usr/bin/mkpasswd <RECENT-CTIME>
+1180897461 1180897572 tofrodos /usr/bin/dos2unix <RECENT-CTIME>
+1180897461 1180897479 texinfo /usr/bin/ginstall-info <RECENT-CTIME>
+1180897461 1180897510 libgnome2-dev /usr/lib/libgnome-2.a <RECENT-CTIME>
+1180897461 1180897484 fakeroot /usr/bin/faked-sysv <RECENT-CTIME>
+1180897461 1180897479 python-central /usr/bin/dh_pycentral <RECENT-CTIME>
+1180897461 1180897474 file /usr/bin/file <RECENT-CTIME>
+1180897461 1180897575 wdiff /usr/bin/wdiff <RECENT-CTIME>
+1180897461 1180897584 915resolution /usr/sbin/915resolution <RECENT-CTIME>
+1180897461 1180897544 openvpn /usr/include/openvpn/openvpn-plugin.h <RECENT-CTIME>
+1180897461 1180897486 gconf2 /usr/sbin/update-gconf-defaults <RECENT-CTIME>
+1180897461 1180897505 libaudio-dev /usr/lib/libaudio.a <RECENT-CTIME>
+1180897461 1180897555 python2.4 /usr/bin/pdb2.4 <RECENT-CTIME>
+1180897461 1180897469 module-init-tools /sbin/lsmod <RECENT-CTIME>
+1180897461 1180897539 noiz2sa-data /usr/share/games/noiz2sa/ogg/ogg.h <RECENT-CTIME>
+1180897461 1180897462 iputils-ping /bin/ping6 <RECENT-CTIME>
+1180897461 1180897498 gv /usr/bin/gv <RECENT-CTIME>
+1180897461 1180897497 gtk-recordmydesktop /usr/bin/gtk-recordMyDesktop <RECENT-CTIME>
+1180897461 1180897493 mkisofs /usr/bin/mkhybrid <RECENT-CTIME>
+1180897461 1180897586 reprepro /usr/bin/changestool <RECENT-CTIME>
+1180897461 1180897493 genisoimage /usr/bin/isovfy <RECENT-CTIME>
+1180897461 1180897560 qemu /usr/sbin/qemu-make-debian-root <RECENT-CTIME>
+1180897461 1180897575 vde2 /usr/bin/vdeqemu <RECENT-CTIME>
+1180897461 1180897540 ntp /usr/bin/ntpq <RECENT-CTIME>
+1180897461 1180897508 libexif-dev /usr/include/libexif/exif-content.h <RECENT-CTIME>
+1180897461 1180897538 netpbm /usr/bin/bmptoppm <RECENT-CTIME>
+1180897461 1180897586 simple-cdd /usr/bin/build-simple-cdd <RECENT-CTIME>
+1180897461 1180897492 psmisc /usr/bin/pstree.x11 <RECENT-CTIME>
+1180897461 1180897471 dictionaries-common /usr/sbin/update-default-aspell <RECENT-CTIME>
+1180897461 1180897534 libungif4-dev /usr/lib/libgif.a <RECENT-CTIME>
+1180897461 1180897582 xpdf-common /usr/sbin/update-xpdfrc <RECENT-CTIME>
+1180897461 1180897571 testdisk /usr/sbin/photorec <RECENT-CTIME>
+1180897461 1180897470 bind9-host /usr/bin/host <RECENT-CTIME>
+1180897461 1180897484 eject /usr/bin/volname <RECENT-CTIME>
+1180897461 1180897478 pidentd /usr/sbin/ikeygen <RECENT-CTIME>
+1180897461 1180897556 python-minimal /usr/bin/python <RECENT-CTIME>
+1180897461 1180897586 xgsmlib /usr/bin/xgsm <RECENT-CTIME>
+1180897461 1180897585 libccid /usr/bin/RSA_SecurID_getpasswd <RECENT-CTIME>
+1180897461 1180897500 hal /usr/sbin/hald <RECENT-CTIME>
+1180897461 1180897570 samba-common /usr/bin/testparm <RECENT-CTIME>
+1180897461 1180897499 usbutils /usr/bin/lsusb <RECENT-CTIME>
+1180897461 1180897566 smbclient /usr/bin/smbcquotas <RECENT-CTIME>
+1180897461 1180897555 python /usr/bin/pdb <RECENT-CTIME>
+1180897461 1180897581 xpdf-reader /usr/bin/xpdf.bin <RECENT-CTIME>
+1180897461 1180897475 ispell /usr/sbin/ispellconfig <RECENT-CTIME>
+1180897461 1180897575 webcpp /usr/bin/scs2scs2 <RECENT-CTIME>
+1180897461 1180897482 daemon /usr/bin/daemon <RECENT-CTIME>
+1180897461 1180897482 cdparanoia /usr/bin/cdparanoia <RECENT-CTIME>
+1180897461 1180897485 libgconf2-dev /usr/lib/libgconf-2.a <RECENT-CTIME>
+1180897461 1180897549 python-xml /usr/bin/xmlproc_val.python-xml <RECENT-CTIME>
+1180897461 1180897481 blktrace /usr/sbin/blktrace <RECENT-CTIME>
+1180897461 1180897584 hfsutils /usr/bin/humount <RECENT-CTIME>
+1180897461 1180897541 openssl /usr/bin/openssl <RECENT-CTIME>
+1180897461 1180897503 libart-2.0-dev /usr/bin/libart2-config <RECENT-CTIME>
+1180897461 1180897579 xmms /usr/bin/wmxmms <RECENT-CTIME>
+1180897461 1180897560 ruby /usr/bin/ruby <RECENT-CTIME>
+1180897461 1180897570 sdparm /usr/bin/sdparm <RECENT-CTIME>
+1180897461 1180897585 ogdi-bin /usr/bin/ogdi_info <RECENT-CTIME>
+1180897461 1180897569 smbfs /sbin/mount.smb <RECENT-CTIME>
+1180897461 1180897483 libglib2.0-dev /usr/bin/glib-mkenums <RECENT-CTIME>
+1180897461 1180897581 xpdf-utils /usr/bin/pdfimages <RECENT-CTIME>
+1180897461 1180897472 dnsutils /usr/bin/nsupdate <RECENT-CTIME>
+1180897461 1180897545 ppp /usr/sbin/pppdump <RECENT-CTIME>
+1180897461 1180897509 libglib-perl /usr/lib/perl5/Glib.pm <RECENT-CTIME>
+1180897461 1180897576 wodim /usr/bin/wodim <RECENT-CTIME>
+1180897461 1180897556 python2.4-minimal /usr/bin/python2.4 <RECENT-CTIME>
+1180897461 1180897483 desktop-file-utils /usr/bin/update-desktop-database <RECENT-CTIME>
+1180897461 1180897571 syslinux /usr/bin/mkdiskimage <RECENT-CTIME>
+1180897461 1180897550 python2.4-dev /usr/include/python2.4/weakrefobject.h <RECENT-CTIME>
+1180897461 1180897538 noiz2sa /usr/bin/noiz2sa <RECENT-CTIME>
+1180897461 1180897574 unpaper /usr/bin/unpaper <RECENT-CTIME>
+1180897461 1180897463 libssl-dev /usr/include/openssl/pqueue.h <RECENT-CTIME>
+1180897461 1180897560 ruby1.8 /usr/bin/testrb1.8 <RECENT-CTIME>
+1180897461 1180897504 libatk1.0-dev /usr/include/atk-1.0/atk/atk-enum-types.h <RECENT-CTIME>
+1180897461 1180897465 man-db /usr/sbin/accessdb <RECENT-CTIME>
+1180897449 1180897459 xutils-dev /usr/bin/gccmakedep <RECENT-CTIME>
+1180897449 1180897454 libxmu-dev /usr/lib/libXmu.a <RECENT-CTIME>
+1180897449 1180897452 libpng12-dev /usr/bin/libpng-config <RECENT-CTIME>
+1180897449 1180897451 libfreetype6-dev /usr/include/ft2build.h <RECENT-CTIME>
+1180897449 1180897458 xbase-clients /usr/bin/xwud <RECENT-CTIME>
+1180897441 1180897447 libxrandr-dev /usr/lib/libXrandr.a <RECENT-CTIME>
+1180897441 1180897443 libxau-dev /usr/lib/libXau.a <RECENT-CTIME>
+1180897441 1180897446 libxinerama-dev /usr/lib/libXinerama.a <RECENT-CTIME>
+1180897441 1180897446 libxmu-headers /usr/include/X11/Xmu/Xct.h <RECENT-CTIME>
+1180897441 1180897443 libsm-dev /usr/lib/libSM.a <RECENT-CTIME>
+1180897441 1180897447 libxt-dev /usr/include/X11/Shell.h <RECENT-CTIME>
+1180897441 1180897442 flex /usr/lib/libl.a <RECENT-CTIME>
+1180897441 1180897445 libxcursor-dev /usr/lib/libXcursor.a <RECENT-CTIME>
+1180897441 1180897445 libxext-dev /usr/lib/libXext.a <RECENT-CTIME>
+1180897441 1180897444 libxrender-dev /usr/include/X11/extensions/Xrender.h <RECENT-CTIME>
+1180897441 1180897444 libxfixes-dev /usr/lib/libXfixes.a <RECENT-CTIME>
+1180897441 1180897448 zlib1g-dev /usr/include/zconf.h <RECENT-CTIME>
+1180897435 1180897435 libncurses5-dev /usr/lib/libcurses.a <RECENT-CTIME>
+1180897433 1180897434 sed /bin/sed <RECENT-CTIME>
+1180897431 1180897432 ncurses-bin /usr/bin/reset <RECENT-CTIME>
+1180897430 1180897431 mktemp /bin/mktemp <RECENT-CTIME>
+1180897427 1180897429 findutils /usr/bin/updatedb <RECENT-CTIME>
+1180897426 1180897427 diff /usr/bin/sdiff <RECENT-CTIME>
+1180897423 1180897423 debianutils /usr/bin/which <RECENT-CTIME>
+1180787194 1180787195 libept-dev /usr/lib/libept.a <RECENT-CTIME>
+1180774498 1180774499 tagcoll /usr/bin/tagcoll <RECENT-CTIME>
+1180774498 1180774498 libtagcoll2-dev /usr/include/tagcoll-2.0.6/tagcoll/utils/set.h <RECENT-CTIME>
+1180627127 1180627144 libgtkmm-2.4-doc /usr/share/doc/libgtkmm-2.4-doc/examples/treemodelcustom/exampletreemodel.h <RECENT-CTIME>
+1180627127 1180627142 libgtkmm-2.4-dev /usr/include/atkmm-1.6/atkmm.h <RECENT-CTIME>
+1180614103 1180614123 reportbug-ng /usr/bin/rng <RECENT-CTIME>
+1180608501 1180608507 rkhunter /usr/bin/rkhunter <RECENT-CTIME>
+1180608501 1180608504 cdbs /usr/bin/cdbs-edit-patch <RECENT-CTIME>
+1180608501 1180608505 python-nose /usr/bin/nosetests <RECENT-CTIME>
+1180608501 1180608504 libimage-info-perl /usr/share/perl5/Image/Info/SVG.pm <RECENT-CTIME>
+1180526809 1180526811 vim-scripts /usr/bin/vimplate <RECENT-CTIME>
+1180460243 1180460244 hg-load-dirs /usr/bin/hg_load_dirs <RECENT-CTIME>
+1180460243 1180460245 hg-buildpackage /usr/bin/hg-markdeb <RECENT-CTIME>
+1180460221 1180460242 dpkg /sbin/start-stop-daemon <RECENT-CTIME>
+1180460221 1180460240 dpkg-dev /usr/bin/dpkg-source <RECENT-CTIME>
+1180460161 1180460188 binutils /usr/bin/ld <RECENT-CTIME>
+1180460161 1180460196 libc6 /sbin/ldconfig <RECENT-CTIME>
+1180460161 1180460190 libc6-dev /usr/include/syscall.h <RECENT-CTIME>
+1180460161 1180460193 locales /usr/sbin/locale-gen <RECENT-CTIME>
+1180459910 1180459953 linux-image-2.6.21-1-amd64 /boot/System.map-2.6.21-1-amd64 <RECENT-CTIME>
+1180459910 1180459965 python-setuptools /usr/bin/easy_install-2.4 <RECENT-CTIME>
+1180459910 1180459939 linux-headers-2.6.21-1 /usr/src/linux-headers-2.6.21-1/include/asm-generic/audit_change_attr.h <RECENT-CTIME>
+1180254024 1180254033 eric /usr/bin/eric <RECENT-CTIME>
+1180254024 1180254030 bzr-builddeb /usr/bin/bzr-buildpackage <RECENT-CTIME>
+1180081502 1180081530 python-turbogears /usr/bin/tg-admin <RECENT-CTIME>
+1180000910 1180000928 libwibble-dev /usr/lib/libwibble.a <RECENT-CTIME>
+1179997203 1179997209 libdballef-dev /usr/lib/libdballef.a <RECENT-CTIME>
+1179997203 1179997209 dballe /usr/bin/dbamsg <RECENT-CTIME>
+1179997203 1179997210 python-dballe /usr/share/pycentral/python-dballe/site-packages/_dballe.a <RECENT-CTIME>
+1179930200 1179930229 provami /usr/bin/provami <RECENT-CTIME>
+1179908628 1179908651 doc-base /usr/share/perl5/Debian/DocBase/Common.pm <RECENT-CTIME>
+1179908628 1179908651 apt-listchanges /usr/bin/apt-listchanges <RECENT-CTIME>
+1179908628 1179909194 privoxy /usr/sbin/privoxy <RECENT-CTIME>
+1179908628 1179908648 reportbug /usr/bin/querybts <RECENT-CTIME>
+1179692174 1179692199 xclip /usr/bin/xclip <RECENT-CTIME>
+1179657476 1179657496 openbox /usr/include/openbox/3.3/openbox/parse.h <RECENT-CTIME>
+1179657476 1179657496 obconf /usr/bin/obconf <RECENT-CTIME>
+1179655030 1179655048 python2.5-minimal /usr/bin/python2.5 <RECENT-CTIME>
+1179655030 1179655034 bzr /usr/bin/bzr <RECENT-CTIME>
+1179655030 1179655052 uswsusp /usr/sbin/s2ram <RECENT-CTIME>
+1179655030 1179655048 pm-utils /usr/sbin/pm-hibernate <RECENT-CTIME>
+1179655030 1179655050 python2.5 /usr/bin/pdb2.5 <RECENT-CTIME>
+1179655030 1179655037 gs-common /usr/bin/ps2txt <RECENT-CTIME>
+1179655030 1179655035 dpatch /usr/bin/dpatch-get-origtargz <RECENT-CTIME>
+1179655030 1179655031 python-support /usr/sbin/update-python-modules <RECENT-CTIME>
+1179655026 1179655028 libhsqldb-java /usr/bin/hsqldb-databasemanagerswing <RECENT-CTIME>
+1179428033 1179428056 rake /usr/bin/rake <RECENT-CTIME>
+1179428033 1179428055 c++-annotations /usr/share/doc/c++-annotations/examples/yo/overloading/examples/binary3.h <RECENT-CTIME>
+1179428033 1179428060 ucf /usr/bin/ucfq <RECENT-CTIME>
+1179256205 1179256236 kernel-package /usr/sbin/kernel-packageconfig <RECENT-CTIME>
+1179256170 1179256192 linux-image-2.6.18-4-amd64 /boot/System.map-2.6.18-4-amd64 <RECENT-CTIME>
+1178982037 1178982070 pydb /usr/bin/pydb <RECENT-CTIME>
+1178982037 1178982071 python-pastescript /usr/bin/paster <RECENT-CTIME>
+1178982037 1178982057 x11proto-input-dev /usr/include/X11/extensions/XIproto.h <RECENT-CTIME>
+1178982037 1178982058 clive /usr/bin/clive <RECENT-CTIME>
+1178783830 1178783848 meld /usr/bin/meld <RECENT-CTIME>
+1178783830 1178783847 libtimedate-perl /usr/share/perl5/Date/Language.pm <RECENT-CTIME>
+1178783830 1178783838 dvipdfmx /usr/bin/dvipdfmx <RECENT-CTIME>
+1178783830 1178783882 texlive-latex-extra /usr/share/doc/texlive-doc/latex/register/Reg_macro.pm.gz <RECENT-CTIME>
+1178783830 1178783847 lintian /usr/share/lintian/lib/Dep.pm <RECENT-CTIME>
+1178783830 1178783846 ipython /usr/bin/pycolor <RECENT-CTIME>
+1178783824 1178783826 texlive-base-bin /usr/bin/oxdvi <RECENT-CTIME>
+1178783824 1178783826 texlive-latex-base /usr/bin/latex <RECENT-CTIME>
+1178783824 1178783827 texlive-pdfetex /usr/bin/pdfopen <RECENT-CTIME>
+1178633976 1178634000 xvfb /usr/bin/xvfb-run <RECENT-CTIME>
+1178633976 1178634001 python-dogtail /usr/bin/dogtail-recorder <RECENT-CTIME>
+1178142411 1178142444 liblocale-maketext-simple-perl /usr/share/perl5/Locale/Maketext/Simple.pm <OLD>
+1178142411 1178142442 debhelper /usr/share/perl5/Debian/Debhelper/Dh_Version.pm <OLD>
+1178128394 1178128416 python-imaging /usr/include/python2.3/Imaging.h <OLD>
+1178128394 1178128416 keyjnote /usr/bin/keyjnote <OLD>
+1178015044 1178015050 python-docutils /usr/bin/rst2newlatex <OLD>
+1178015044 1178015066 qt4-dev-tools /usr/bin/linguist-qt4 <OLD>
+1178015044 1178015066 wormux /usr/games/wormux <OLD>
+1178015044 1178015055 python-numpy /usr/bin/f2py <OLD>
+1178015044 1178015054 python-numpy-dev /usr/lib/python2.4/site-packages/numpy/f2py/src/fortranobject.h <OLD>
+1178014144 1178014225 xml-core /usr/sbin/update-xmlcatalog <OLD>
+1178014144 1178014226 zenity /usr/bin/gdialog <OLD>
+1178014144 1178014146 r-base-core /usr/lib/R/bin/R <OLD>
+1178014144 1178014228 svn-buildpackage /usr/share/svn-buildpackage/SDCommon.pm <OLD>
+1178014144 1178014184 rdoc1.8 /usr/bin/rdoc1.8 <OLD>
+1178014144 1178014185 recode /usr/bin/recode <OLD>
+1178014144 1178014203 tex-common /usr/bin/update-updmap <OLD>
+1178014144 1178014190 scribus-ng /usr/bin/scribus-ng <OLD>
+1178014144 1178014213 unrar /usr/bin/unrar <OLD>
+1178014144 1178014221 xfsprogs /sbin/xfs_repair <OLD>
+1178014144 1178014222 xine-ui /usr/bin/xine-bugreport <OLD>
+1178014144 1178014201 sudo /usr/sbin/visudo <OLD>
+1178014144 1178014225 xplanet /usr/bin/xplanet <OLD>
+1178014144 1178014212 unp /usr/bin/unp <OLD>
+1178014144 1178014186 rpm /usr/bin/rpmquery <OLD>
+1178014144 1178014202 tcptraceroute /usr/bin/tcptraceroute <OLD>
+1178014144 1178014220 wpasupplicant /sbin/wpa_cli <OLD>
+1178014144 1178014167 ri /usr/bin/ri <OLD>
+1178014144 1178014199 smartmontools /usr/sbin/smartctl <OLD>
+1178014144 1178014206 tsocks /usr/bin/validateconf <OLD>
+1178014144 1178014187 rsync /usr/bin/rsync <OLD>
+1178014144 1178014167 ri1.8 /usr/bin/ri1.8 <OLD>
+1178014144 1178014216 valgrind /usr/include/valgrind/pub_tool_libcassert.h <OLD>
+1178014140 1178014141 x11proto-randr-dev /usr/include/X11/extensions/randrproto.h <OLD>
+1178014140 1178014140 x11proto-core-dev /usr/include/X11/Xwinsock.h <OLD>
+1178014119 1178014125 sun-java5-jdk /usr/lib/jvm/java-1.5.0-sun-1.5.0.11/include/jdwpTransport.h <OLD>
+1178014119 1178014137 x11-common /usr/bin/X <OLD>
+1178014119 1178014121 sun-java5-demo /usr/lib/jvm/java-1.5.0-sun-1.5.0.11/demo/jvmti/heapTracker/src/heapTracker.h <OLD>
+1178014119 1178014130 sun-java5-bin /usr/lib/jvm/java-1.5.0-sun-1.5.0.11/bin/java <OLD>
+1178014098 1178014117 tar /bin/tar <OLD>
+1178012580 1178012681 libqt4-core /usr/bin/qdbus <OLD>
+1178012580 1178012663 liblocale-maketext-lexicon-perl /usr/share/perl5/Locale/Maketext/Lexicon/Auto.pm <OLD>
+1178012580 1178012672 pcscd /usr/sbin/update-reader.conf <OLD>
+1178012580 1178012694 libwmf-bin /usr/bin/wmf2eps <OLD>
+1178012580 1178012731 proj /usr/bin/invgeod <OLD>
+1178012580 1178012713 module-assistant /usr/bin/m-a <OLD>
+1178012580 1178012597 libavahi-common-dev /usr/include/avahi-common/rlist.h <OLD>
+1178012580 1178012661 libhtml-parser-perl /usr/lib/perl5/HTML/Filter.pm <OLD>
+1178012580 1178012592 libbonobo2-dev /usr/include/bonobo-activation-2.0/bonobo-activation/bonobo-activation-version.h <OLD>
+1178012580 1178012612 file-roller /usr/bin/file-roller <OLD>
+1178012580 1178012640 libflash-swfplayer /usr/bin/swfplayer <OLD>
+1178012580 1178012580 libgpg-error-dev /usr/bin/gpg-error-config <OLD>
+1178012580 1178012590 nfs-common /sbin/rpc.lockd <OLD>
+1178012580 1178012582 libgcrypt11-dev /usr/bin/libgcrypt-config <OLD>
+1178012580 1178012740 pstoedit /usr/bin/pstoedit <OLD>
+1178012580 1178012621 intltool /usr/bin/intltool-prepare <OLD>
+1178012580 1178012633 libcaca0 /usr/lib/caca/libgl_plugin.a <OLD>
+1178012580 1178012656 libhdf4g-dev /usr/include/hdf/hfile.h <OLD>
+1178012580 1178012591 libidl-dev /usr/bin/libIDL-config-2 <OLD>
+1178012580 1178012598 libavahi-glib-dev /usr/include/avahi-glib/glib-malloc.h <OLD>
+1178012580 1178012583 libopencdk8-dev /usr/bin/opencdk-config <OLD>
+1178012580 1178012585 libkrb5-dev /usr/include/profile.h <OLD>
+1178012580 1178012690 libsvn-mirror-perl /usr/bin/svn-mirror <OLD>
+1178012580 1178012635 libconvert-binhex-perl /usr/share/perl5/Convert/BinHex.pm <OLD>
+1178012580 1178012636 xdg-utils /usr/bin/xdg-desktop-menu <OLD>
+1178012580 1178012595 libbonoboui2-dev /usr/lib/libglade/2.0/libbonobo.a <OLD>
+1178012580 1178012626 irb /usr/bin/irb <OLD>
+1178012580 1178012729 orbit2 /usr/bin/typelib-dump <OLD>
+1178012580 1178012594 libbonobo2-common /usr/sbin/bonobo-activation-sysconf <OLD>
+1178012580 1178012714 mplayer /usr/bin/gmplayer <OLD>
+1178012580 1178012620 imageindex /usr/bin/imageindex <OLD>
+1178012580 1178012599 libgnomeui-dev /usr/lib/libgnomeui-2.a <OLD>
+1178012580 1178012635 libclone-perl /usr/lib/perl5/Clone.pm <OLD>
+1178012580 1178012678 libqt4-dev /usr/share/qt4/bin/lupdate <OLD>
+1178012580 1178012592 liborbit2-dev /usr/include/orbit-2.0/ORBitservices/CosNaming.h <OLD>
+1178012580 1178012649 libgksu2-0 /usr/bin/gksu-properties <OLD>
+1178012580 1178012732 popularity-contest /usr/sbin/popcon-largest-unused <OLD>
+1178012580 1178012729 p7zip-full /usr/bin/7za <OLD>
+1178012580 1178012695 libxml-simple-perl /usr/share/perl5/XML/Simple.pm <OLD>
+1178012580 1178012635 libdata-hierarchy-perl /usr/share/perl5/Data/Hierarchy.pm <OLD>
+1178012580 1178012636 libdigest-sha1-perl /usr/lib/perl5/Digest/SHA1.pm <OLD>
+1178012580 1178012733 postgresql-autodoc /usr/bin/postgresql_autodoc <OLD>
+1178012580 1178012621 initramfs-tools /usr/sbin/mkinitramfs <OLD>
+1178012580 1178012597 libavahi-client-dev /usr/include/avahi-client/publish.h <OLD>
+1178012580 1178012640 libfile-chdir-perl /usr/share/perl5/File/chdir.pm <OLD>
+1178012580 1178012712 mercurial /usr/bin/hg <OLD>
+1178012580 1178012626 irb1.8 /usr/bin/irb1.8 <OLD>
+1178012580 1178012665 libmysqlclient15-dev /usr/bin/mysql_config <OLD>
+1178012580 1178012662 libhtml-tree-perl /usr/share/perl5/HTML/Element/traverse.pm <OLD>
+1178012580 1178012584 libtasn1-3-dev /usr/bin/libtasn1-config <OLD>
+1178012580 1178012634 libcfitsio-dev /usr/lib/libcfitsio.a <OLD>
+1178012580 1178012661 libhtml-template-perl /usr/share/perl5/HTML/Template.pm <OLD>
+1178012580 1178012691 libwmf-dev /usr/include/libwmf/defs.h <OLD>
+1178012580 1178012689 libsdl-perl /usr/lib/perl5/SDL_perl.pm <OLD>
+1178012580 1178012713 moreutils /usr/bin/zrun <OLD>
+1178012580 1178012664 libmime-perl /usr/share/perl5/MIME/Parser/Reader.pm <OLD>
+1178012580 1178012628 kdiff3 /usr/bin/kdiff3 <OLD>
+1178012580 1178012587 mutt /usr/bin/mutt_dotlock <OLD>
+1178012580 1178012650 libglibmm-2.4-dev /usr/include/glibmm-2.4/glibmm_generate_extra_defs/generate_extra_defs.h <OLD>
+1178012525 1178012530 mysql-server-5.0 /usr/sbin/ndb_mgmd <OLD>
+1178012511 1178012522 libdbd-mysql-perl /usr/lib/perl5/Bundle/DBD/mysql.pm <OLD>
+1178012511 1178012524 mysql-client-5.0 /usr/sbin/mysqlmanager <OLD>
+1178012511 1178012513 libxdmcp-dev /usr/include/X11/Xdmcp.h <OLD>
+1178012511 1178012512 imlib-base /usr/bin/imlib-config <OLD>
+1178012511 1178012512 libice-dev /usr/include/X11/ICE/ICEconn.h <OLD>
+1178012511 1178012514 libxft-dev /usr/bin/xft-config <OLD>
+1178011412 1178011420 m4 /usr/bin/m4 <OLD>
+1178011412 1178011535 gnome-volume-manager /usr/bin/gnome-volume-manager-gthumb <OLD>
+1178011412 1178011442 dvipng /usr/bin/dvigif <OLD>
+1178011412 1178011516 gnome-common /usr/bin/gnome-doc-common <OLD>
+1178011412 1178011470 gdm /usr/bin/gdmXnest <OLD>
+1178011412 1178011540 gpsdrive /usr/lib/libfly.a <OLD>
+1178011412 1178011440 dvbstream /usr/bin/dvbstream <OLD>
+1178011412 1178011495 ggobi /usr/include/ggobi/GGobiEvents.h <OLD>
+1178011412 1178011541 make /usr/bin/make <OLD>
+1178011412 1178011468 gksu /usr/bin/gksudo <OLD>
+1178011412 1178011442 exiftags /usr/bin/exiftime <OLD>
+1178011412 1178011440 dput /usr/bin/dcut <OLD>
+1178011412 1178011539 gpsd-clients /usr/bin/xgpsspeed <OLD>
+1178011412 1178011536 gnupg-agent /usr/bin/gpgkey2ssh <OLD>
+1178011412 1178011443 gaim /usr/bin/gaim-remote <OLD>
+1178011412 1178011515 gnome-bin /usr/bin/new-object <OLD>
+1178011412 1178011426 darcs-load-dirs /usr/bin/darcs_load_dirs <OLD>
+1178011412 1178011415 klogd /sbin/klogd <OLD>
+1178011412 1178011415 laptop-detect /usr/sbin/laptop-detect <OLD>
+1178011412 1178011549 mc /usr/bin/mcedit <OLD>
+1178011412 1178011542 lftp /usr/bin/lftp <OLD>
+1178011412 1178011674 gnome-applets /usr/bin/cpufreq-selector <OLD>
+1178011412 1178011546 mapserver-bin /usr/bin/scalebar <OLD>
+1178011412 1178011552 debootstrap /usr/sbin/debootstrap <OLD>
+1178011412 1178011494 germinate /usr/bin/germinate <OLD>
+1178011412 1178011426 cowdancer /usr/sbin/cowbuilder <OLD>
+1178011412 1178011547 markdown /usr/share/perl5/Text/Markdown.pm <OLD>
+1178011412 1178011415 dhcp3-common /usr/bin/omshell <OLD>
+1178011412 1178011536 gpgsm /usr/bin/gpgsm-gencert.sh <OLD>
+1178011412 1178011460 gnome-session /usr/bin/gnome-wm <OLD>
+1178011412 1178011538 gpsd /usr/include/libgpsmm.h <OLD>
+1178011412 1178011425 cogito /usr/bin/cg-version <OLD>
+1178011412 1178011424 cdrdao /usr/bin/cdrdao <OLD>
+1178011412 1178011493 gedit /usr/bin/gedit <OLD>
+1178011412 1178011414 debconf /usr/bin/debconf-show <OLD>
+1178011412 1178011441 dvd+rw-tools /usr/bin/btcflash <OLD>
+1178011412 1178011461 gnome-terminal /usr/bin/gnome-terminal.wrapper <OLD>
+1178011412 1178011553 gnupg2 /usr/sbin/addgnupghome <OLD>
+1178011412 1178011516 gnome-doc-utils /usr/bin/xml2po <OLD>
+1178011412 1178011428 devscripts /usr/bin/cvs-debc <OLD>
+1178011412 1178011427 debsums /usr/sbin/debsums_gen <OLD>
+1178011412 1178011415 dhcp3-client /sbin/dhclient <OLD>
+1178011412 1178011420 finger /usr/bin/finger <OLD>
+1178011412 1178011426 svk-load-dirs /usr/bin/svk_load_dirs <OLD>
+1178011412 1178011433 docbook-to-man /usr/bin/docbook-to-man <OLD>
+1178011412 1178011441 dvbtune /usr/bin/dvbtune <OLD>
+1178011412 1178011428 discover1 /sbin/discover <OLD>
+1178011412 1178011552 aumix /usr/bin/aumix <OLD>
+1178011401 1178011402 audacity /usr/bin/audacity <OLD>
+1178011380 1178011381 dsniff /usr/sbin/dsniff <OLD>
+1178010287 1178010316 swig /usr/bin/swig-1.3 <OLD>
+1178010287 1178010294 vim-full /usr/bin/vim.full <OLD>
+1178010287 1178010318 swig-examples /usr/share/doc/swig-examples/xml/example_xml.h <OLD>
+1178010287 1178010323 wireshark /usr/bin/wireshark <OLD>
+1178010287 1178010324 wireshark-common /usr/bin/editcap <OLD>
+1178010287 1178010308 acpitool /usr/bin/acpitool <OLD>
+1178010287 1178010304 telnet /usr/bin/telnet.netkit <OLD>
+1178010287 1178010309 graphviz /usr/bin/neato <OLD>
+1178010287 1178010300 vim-common /usr/bin/helpztags <OLD>
+1178010287 1178010304 acpi /usr/bin/acpi <OLD>
+1178010287 1178010313 postfix /usr/bin/mailq <OLD>
+1178010287 1178010321 unison /usr/bin/unison-latest-stable <OLD>
+1178010287 1178010326 xsltproc /usr/bin/xsltproc <OLD>
+1178010287 1178010289 xtrans-dev /usr/include/X11/Xtrans/Xtransint.h <OLD>
+1178010287 1178010327 nmap /usr/bin/nmap <OLD>
+1178010287 1178010322 unison2.9.1 /usr/bin/unison-2.9.1 <OLD>
+1178010287 1178010321 timidity /usr/bin/timidity <OLD>
+1178010287 1178010293 vim-tiny /usr/bin/vim.tiny <OLD>
+1178010287 1178010326 xterm /usr/bin/resize <OLD>
+1178010287 1178010297 vim /usr/bin/vim.basic <OLD>
+1178010287 1178010315 sqlite3 /usr/bin/sqlite3 <OLD>
+1178010287 1178010299 vim-runtime /usr/bin/vimtutor <OLD>
+1178010287 1178010310 offlineimap /usr/bin/offlineimap <OLD>
+1178010287 1178010307 acpid /usr/sbin/acpid <OLD>
+1178010287 1178010291 netcat /bin/netcat <OLD>
+1178010287 1178010323 wammu /usr/bin/wammu <OLD>
+1178010287 1178010292 sysklogd /sbin/syslogd <OLD>
+1178010285 1178010286 gzip /bin/uncompress <OLD>
+1177924535 1177924564 openoffice.org-calc /usr/bin/oocalc <OLD>
+1177924535 1177924564 openoffice.org-math /usr/bin/oomath <OLD>
+1177924535 1177924564 openoffice.org-writer /usr/bin/oowriter <OLD>
+1177924535 1177924564 openoffice.org-base /usr/bin/oobase <OLD>
+1177924535 1177924564 openoffice.org-impress /usr/bin/ooimpress <OLD>
+1177924535 1177924564 openoffice.org-common /usr/bin/soffice <OLD>
+1177924535 1177924564 openoffice.org-draw /usr/bin/oodraw <OLD>
+1177884980 1177885000 scalpel /usr/bin/scalpel <OLD>
+1177884980 1177885000 magicrescue /usr/bin/magicsort <OLD>
+1177884980 1177884998 dosfstools /sbin/mkfs.vfat <OLD>
+1177689577 1177689592 kismet /usr/bin/kismet_drone <OLD>
+1177689577 1177689594 tomatoes /usr/games/tomatoes <OLD>
+1177689577 1177689593 patchutils /usr/bin/lsdiff <OLD>
+1177689577 1177689596 youtube-dl /usr/bin/youtube-dl <OLD>
+1177537338 1166190405 mawk /usr/bin/mawk <OLD>
+1177537338 1172691910 coreutils /usr/bin/sort <OLD>
+1177537187 1166527002 dlocate /usr/bin/dlocate <OLD>
+1177537187 1166980508 perl-base /usr/share/perl/5.8.8/bytes.pm <OLD>
+1177537187 1166980507 perl /usr/lib/perl/5.8.8/Encode/Config.pm <OLD>
+1177537187 1166190366 liblocale-gettext-perl /usr/lib/perl5/Locale/gettext.pm <OLD>
+1177537186 1166980508 perl-suid /usr/bin/suidperl <OLD>
+1177537170 1166190402 less /usr/bin/lessfile <OLD>
+1177537088 1173474006 openssh-client /usr/bin/slogin <OLD>
+1177536554 1173000156 epiphany-browser /usr/bin/epiphany-browser <OLD>
+1177536440 1177159756 metacafe-dl /usr/bin/metacafe-dl <OLD>
+1177536393 1171977084 liferea /usr/bin/liferea-bin <OLD>
+1177526970 1173697161 acpi-support /usr/bin/acpi_fakekey <OLD>
+1177525862 1175633735 xscreensaver /usr/bin/xscreensaver-command <OLD>
+1177525861 1173000087 bsdutils /usr/bin/logger <OLD>
+1177525860 1170084281 alsa-utils /usr/sbin/alsactl <OLD>
+1177525860 1166190402 console-tools /usr/bin/chvt <OLD>
+1177525860 1170794023 sysv-rc /usr/sbin/invoke-rc.d <OLD>
+1177525860 1174317435 guessnet /usr/sbin/guessnet-ifupdown <OLD>
+1177503973 1166980505 perl-modules /usr/share/perl/5.8.8/File/Copy.pm <OLD>
+1177503973 1166372777 svk /usr/share/perl5/SVK/Editor/Delay.pm <OLD>
+1177503971 1166372774 libsvn-perl /usr/lib/perl5/SVN/Core.pm <OLD>
+1177503971 1166372773 libclass-autouse-perl /usr/share/perl5/Class/Autouse.pm <OLD>
+1177503971 1166372775 liburi-perl /usr/share/perl5/URI/Escape.pm <OLD>
+1177503971 1166372773 libperlio-via-dynamic-perl /usr/share/perl5/PerlIO/via/dynamic.pm <OLD>
+1177503971 1166372774 libperlio-via-symlink-perl /usr/share/perl5/PerlIO/via/symlink.pm <OLD>
+1177503971 1166372774 libperlio-eol-perl /usr/lib/perl5/PerlIO/eol.pm <OLD>
+1177503971 1166372774 libsvn-simple-perl /usr/share/perl5/SVN/Simple/Edit.pm <OLD>
+1177503971 1166372775 libyaml-perl /usr/share/perl5/YAML/Loader/Base.pm <OLD>
+1177503969 1166372774 libregexp-shellish-perl /usr/share/perl5/Regexp/Shellish.pm <OLD>
+1177503824 1166372775 libterm-readkey-perl /usr/lib/perl5/Term/ReadKey.pm <OLD>
+1177503775 1166372773 libfile-type-perl /usr/share/perl5/File/Type.pm <OLD>
+1177502279 1174946957 gnupg /usr/bin/gpg <OLD>
+1177502119 1174946957 gpgv /usr/bin/gpgv <OLD>
+1177502117 1174946955 aptitude /usr/bin/aptitude <OLD>
+1177502114 1172691934 apt /usr/bin/apt-key <OLD>
+1177502023 1166190401 groff-base /usr/bin/nroff <OLD>
+1177501942 1166190405 wget /usr/bin/wget <OLD>
+1177498403 1166190613 laptop-mode-tools /usr/sbin/laptop_mode <OLD>
+1177497857 1170084280 w3m /usr/bin/w3m <OLD>
+1177493293 1166190401 mime-support /usr/bin/print <OLD>
+1177489700 1175126570 udev /usr/bin/udevinfo <OLD>
+1177454644 1177159754 tasks /usr/bin/tasks <OLD>
+1177454361 1171415966 imagemagick /usr/bin/display <OLD>
+1177436167 1166190401 procps /usr/bin/top <OLD>
+1177409235 1167739438 lbdb /usr/bin/lbdbq <OLD>
+1177408907 1169982592 evince /usr/bin/evince <OLD>
+1177408326 1166190407 traceroute /usr/bin/traceroute.lbl <OLD>
+1177407856 1166190408 unzip /usr/bin/zipinfo <OLD>
+1177354768 1175443118 azureus /usr/bin/azureus <OLD>
+1177349852 1169982582 dict /usr/bin/dict <OLD>
+1177346933 1166372777 subversion /usr/bin/svn <OLD>
+1177345009 1166190409 grep /usr/bin/rgrep <OLD>
+1177343013 1166190413 libtext-wrapi18n-perl /usr/share/perl5/Text/WrapI18N.pm <OLD>
+1177343013 1166190366 libtext-charwidth-perl /usr/lib/perl5/Text/CharWidth.pm <OLD>
+1177343013 1166190366 libtext-iconv-perl /usr/lib/perl5/Text/Iconv.pm <OLD>
+1177343010 1172691933 apt-utils /usr/bin/apt-extracttemplates <OLD>
+1177338778 1167557339 menu /usr/sbin/install-menu <OLD>
+1177338739 1177338759 k3b /usr/bin/k3b <OLD>
+1177338733 1166190399 xfonts-utils /usr/bin/mkfontscale <OLD>
+1177338731 1171541599 defoma /usr/bin/defoma-font <OLD>
+1177338731 1173127622 fontconfig /usr/bin/fc-cache <OLD>
+1177338697 1174593895 update-inetd /usr/sbin/update-inetd <OLD>
+1177338601 1173553214 passwd /usr/sbin/groupdel <OLD>
+1177338601 1170084279 adduser /usr/sbin/delgroup <OLD>
+1177338597 1169982630 cron /usr/bin/crontab <OLD>
+1177337194 1166544993 qalculate-gtk /usr/bin/qalculate-gtk <OLD>
+1177324149 1175768481 ekiga /usr/bin/ekiga <OLD>
+1177323796 1166190406 lsof /usr/bin/lsof <OLD>
+1177323316 1166190401 pciutils /bin/lspci <OLD>
+1177317323 1166190407 gs-esp /usr/bin/gs-esp <OLD>
+1177278694 1166493256 buffy /usr/bin/buffy <OLD>
+1177264323 1177171053 dosbox /usr/bin/dosbox <OLD>
+1177262780 1174946965 iceweasel /usr/bin/iceweasel <OLD>
+1177261570 1166492130 pv /usr/bin/pv <OLD>
+1177258837 1166527580 gqview /usr/bin/gqview <OLD>
+1177258552 1175633862 xscreensaver-gl /usr/bin/xscreensaver-gl-helper <OLD>
+1177258530 1166526991 compiz-core /usr/bin/compiz.real <OLD>
+1177258530 1166526991 compiz-gtk /usr/bin/gtk-window-decorator <OLD>
+1177258529 1166190406 xserver-xorg-input-synaptics /usr/bin/synclient <OLD>
+1177258528 1166980531 gsynaptics /usr/bin/gsynaptics-init <OLD>
+1177258527 1169039173 cpp-4.1 /usr/bin/x86_64-linux-gnu-cpp-4.1 <OLD>
+1177258527 1166526991 mesa-utils /usr/bin/glxinfo <OLD>
+1177258527 1169039173 cpp /usr/bin/cpp <OLD>
+1177258527 1166493252 bluez-gnome /usr/bin/bluetooth-applet <OLD>
+1177258526 1173000162 gnome-panel /usr/bin/gnome-panel <OLD>
+1177258526 1173805976 nautilus /usr/bin/nautilus <OLD>
+1177258525 1170084317 vino /usr/bin/vino-session <OLD>
+1177258523 1173000161 gnome-control-center /usr/bin/gnome-settings-daemon <OLD>
+1177258523 1166980517 gnome-keyring /usr/bin/gnome-keyring-daemon <OLD>
+1177258518 1166190401 dbus /usr/bin/dbus-launch <OLD>
+1177258518 1168076532 scim /usr/bin/scim <OLD>
+1177258517 1166190402 xutils /usr/bin/sessreg <OLD>
+1177258490 1175426296 apache2.2-common /usr/sbin/apache2ctl <OLD>
+1177258488 1166190613 anacron /usr/sbin/anacron <OLD>
+1177258488 1166190615 at /usr/sbin/atd <OLD>
+1177258488 1175866318 apache2-mpm-prefork /usr/sbin/apache2 <OLD>
+1177258487 1166493249 bluez-utils /usr/sbin/sdpd <OLD>
+1177258485 1175768456 xserver-xorg-core /usr/bin/Xorg <OLD>
+1177258482 1174946960 openbsd-inetd /usr/sbin/inetd <OLD>
+1177258482 1166190615 lpr /usr/sbin/lpd <OLD>
+1177258480 1169982583 dictd /usr/sbin/dictd <OLD>
+1177258471 1170794026 cupsys /usr/sbin/cupsd <OLD>
+1177258471 1166190411 cpufrequtils /usr/bin/cpufreq-set <OLD>
+1177258470 1174389114 postgresql-client-7.4 /usr/lib/postgresql/7.4/bin/psql <OLD>
+1177258464 1174389115 postgresql-7.4 /usr/lib/postgresql/7.4/bin/postmaster <OLD>
+1177258460 1166190613 vbetool /usr/sbin/vbetool <OLD>
+1177258458 1170877544 schroot /usr/bin/schroot <OLD>
+1177258458 1173000091 util-linux /usr/bin/setterm <OLD>
+1177256339 1177256363 gcom /usr/bin/sigmon <OLD>
+1177220593 1166190404 procmail /usr/bin/procmail <OLD>
+1177220578 1173473991 e2fsprogs /usr/bin/lsattr <OLD>
+1177220515 1173000123 tcpd /usr/sbin/tcpd <OLD>
+1177220474 1166190615 logrotate /usr/sbin/logrotate <OLD>
+1177220149 1176889700 faubackup /usr/sbin/faubackup <OLD>
+1177220121 1166190366 libapt-pkg-perl /usr/lib/perl5/AptPkg.pm <OLD>
+1177220121 1166493229 apt-show-versions /usr/bin/apt-show-versions <OLD>
+1177174821 1175720153 kdelibs4c2a /usr/bin/dcopserver_shutdown <OLD>
+1177172601 1175633687 konqueror /usr/bin/konqueror <OLD>
+1177171031 1177171053 libsdl-sound1.2 /usr/bin/playsound <OLD>
+1177168342 1177159756 pangzero /usr/games/pangzero <OLD>
+1177168314 1177159750 gt5 /usr/bin/gt5 <OLD>
+1177168292 1172787014 lynx /usr/bin/lynx.stable <OLD>
+1177168077 1177159749 gaia /usr/bin/gaia <OLD>
+1177166731 1177159749 freedroidrpg /usr/games/freedroidRPG <OLD>
+1177166619 1177159719 balder2d /usr/games/balder2d <OLD>
+1177159695 1177159754 screenkast /usr/lib/libisdvncauth.a <OLD>
+1177159695 1177159755 wfo /usr/bin/wfo <OLD>
+1177159695 1177159751 isdexport /usr/bin/isdexport <OLD>
+1177159695 1177159719 cryopid /usr/bin/freeze <OLD>
+1177149141 1166190411 xdiskusage /usr/bin/xdiskusage <OLD>
+1177068294 1166541760 driftnet /usr/bin/driftnet <OLD>
+1177067033 1173697184 tcpdump /usr/sbin/tcpdump <OLD>
+1177063016 1173553213 whiptail /usr/bin/whiptail <OLD>
+1177060535 1170084291 gnome-system-tools /usr/bin/network-admin <OLD>
+1177060268 1168942055 gnome-cups-manager /usr/bin/gnome-cups-manager <OLD>
+1177057911 1169039178 g++-4.1 /usr/bin/x86_64-linux-gnu-g++-4.1 <OLD>
+1177057911 1169039178 gcc-4.1 /usr/bin/x86_64-linux-gnu-gcc-4.1 <OLD>
+1177057911 1169039178 gcc /usr/bin/gcc <OLD>
+1177057911 1169039178 g++ /usr/bin/g++ <OLD>
+1177057909 1169039179 libstdc++6-4.1-dev /usr/include/c++/4.1.2/x86_64-linux-gnu/bits/gthr-default.h <OLD>
+1177057909 1167557354 libtut-dev /usr/include/tut_reporter.h <OLD>
+1177057908 1171541560 linux-kernel-headers /usr/include/linux/limits.h <OLD>
+1177057891 1166527570 doxygen /usr/bin/doxygen <OLD>
+1177057884 1177057756 libxml++2.6-dev /usr/include/libxml++-2.6/libxml++/noncopyable.h <OLD>
+1177057830 1166526982 pkg-config /usr/bin/pkg-config <OLD>
+1177057829 1169039177 gfortran-4.1 /usr/bin/x86_64-linux-gnu-gfortran-4.1 <OLD>
+1177057829 1169039177 gfortran /usr/bin/gfortran <OLD>
+1177057829 1169039177 libgfortran1-dev /usr/lib/libgfortranbegin.a <OLD>
+1177056234 1177056236 adept-installer /usr/bin/adept_installer <OLD>
+1177056234 1177056235 adept-manager /usr/bin/adept_manager <OLD>
+1177056234 1177056236 adept-notifier /usr/bin/adept_notifier <OLD>
+1177056234 1177056236 adept-updater /usr/bin/adept_updater <OLD>
+1177055863 1177055753 synaptic /usr/sbin/synaptic <OLD>
+1177055757 1171977196 scrollkeeper /usr/bin/scrollkeeper-config <OLD>
+1177053904 1166190407 gimp /usr/bin/gimp <OLD>
+1177053791 1166542134 an /usr/games/an <OLD>
+1177053745 1166545003 sl /usr/bin/sl <OLD>
+1177053465 1177053414 xjokes /usr/games/yasiti <OLD>
+1177048429 1166542775 pwgen /usr/bin/pwgen <OLD>
+1177009159 1166491974 bash /usr/bin/clear_console <OLD>
+1176987113 1168510531 ocaml-base-nox /usr/bin/ocamlrun <OLD>
+1176987113 1166493270 polygen /usr/bin/polygen <OLD>
+1176987113 1166493278 polygen-data /usr/bin/polyfind <OLD>
+1176986681 1172076603 byzanz /usr/bin/byzanz-record <OLD>
+1176986340 1173870371 gnome-utils /usr/bin/gnome-panel-screenshot <OLD>
+1176985997 1166541760 vcdimager /usr/bin/vcdxrip <OLD>
+1176985121 1172822391 metacity /usr/bin/metacity <OLD>
+1176978320 1166544993 qalc /usr/bin/qalc <OLD>
+1176969527 1166190405 pmount /usr/bin/pumount <OLD>
+1176969171 1170794019 sysvinit-utils /usr/bin/mesg <OLD>
+1176928025 1166372773 libio-digest-perl /usr/share/perl5/IO/Digest.pm <OLD>
+1176893896 1166190401 vlock /usr/bin/vlock <OLD>
+1176893459 1166190404 zip /usr/bin/zip <OLD>
+1176886834 1166190403 gdb /usr/bin/gdb <OLD>
+1176886361 1166190409 gnome-system-monitor /usr/bin/gnome-system-monitor <OLD>
+1176879727 1174236295 cvs /usr/bin/cvs <OLD>
+1176838154 1166526994 dctrl-tools /usr/bin/grep-aptavail <OLD>
+1176833972 1173474025 yelp /usr/bin/gnome-help <OLD>
+1176814275 1166493281 bogosort /usr/bin/bogosort <OLD>
+1176813444 1176208146 filters /usr/games/chef <OLD>
+1176813444 1166526993 cowsay /usr/bin/cowthink <OLD>
+1176810639 1169026305 qgis /usr/bin/qgis <OLD>
+1176804771 1176804745 vigor /usr/bin/vigor <OLD>
+1176793976 1168364125 bsdmainutils /usr/bin/col <OLD>
+1176726238 1173553208 login /usr/bin/sg <OLD>
+1176669692 1166190411 gucharmap /usr/bin/charmap <OLD>
+1176564336 1174236322 libgnomevfs2-bin /usr/bin/gnomevfs-copy <OLD>
+1176563873 1174389116 postgresql-contrib-7.4 /usr/lib/postgresql/7.4/bin/pg_autovacuum <OLD>
+1176468989 1175699053 msat /usr/bin/msat <OLD>
+1176468157 1166526994 debtags-edit /usr/bin/debtags-edit <OLD>
+1176462129 1176462102 qtparted /usr/sbin/qtparted <OLD>
+1176455120 1174312930 arping /usr/sbin/arping <OLD>
+1176452788 1167120719 dvb-utils /usr/bin/scan <OLD>
+1176452788 1170892774 ruby-prof /usr/bin/ruby-prof <OLD>
+1176452788 1166545116 libglade2-ruby /usr/bin/ruby-glade-create-template <OLD>
+1176452781 1166527235 libjpeg-progs /usr/bin/rdjpgcom <OLD>
+1176452781 1166372529 gettext /usr/bin/recode-sr-latin <OLD>
+1176452781 1168365726 libgcj-common /usr/bin/rebuild-gcj-db <OLD>
+1176452781 1173647376 rar /usr/bin/rar <OLD>
+1176452781 1166190407 sharutils /usr/bin/remsync <OLD>
+1176452781 1167285834 rcs /usr/bin/rcsmerge <OLD>
+1176452781 1173000171 installation-report /usr/bin/report-hw <OLD>
+1176452780 1166542752 xapian-tools /usr/bin/quest <OLD>
+1176452779 1170011132 pychecker /usr/bin/pychecker <OLD>
+1176452779 1166544994 qemuctl /usr/bin/qemuctl <OLD>
+1176452779 1168429414 qemu-launcher /usr/bin/qemu-launcher <OLD>
+1176452778 1167406185 debian-goodies /usr/bin/popbugs <OLD>
+1176452778 1166527249 psutils /usr/bin/psnup <OLD>
+1176452778 1166527247 perl-tk /usr/bin/ptked <OLD>
+1176452778 1175633785 pinentry-qt /usr/bin/pinentry-qt <OLD>
+1176452778 1167289228 po-debconf /usr/bin/podebconf-display-po <OLD>
+1176452778 1166190410 pinentry-curses /usr/bin/pinentry-curses <OLD>
+1176452778 1166542133 a2ps /usr/bin/psmandup <OLD>
+1176452777 1169039187 pcmanfm /usr/bin/pcmanfm <OLD>
+1176452777 1166370937 pbuilder /usr/bin/pdebuild <OLD>
+1176452777 1166527235 libparse-debianchangelog-perl /usr/bin/parsechangelog <OLD>
+1176452777 1169582960 packagesearch /usr/bin/packagesearch <OLD>
+1176452777 1166190412 patch /usr/bin/patch <OLD>
+1176452777 1166980537 perl-doc /usr/bin/perldoc <OLD>
+1176452777 1166190405 libpcre3 /usr/bin/pcretest <OLD>
+1176452777 1171977060 libpango1.0-dev /usr/bin/pango-view <OLD>
+1176452777 1166544984 libpaper-utils /usr/bin/paperconf <OLD>
+1176452776 1166527004 sp /usr/bin/nsgmls <OLD>
+1176452776 1173452014 unixodbc-bin /usr/bin/ODBCConfig <OLD>
+1176452776 1171415994 gdal-bin /usr/bin/ogrtindex <OLD>
+1176452776 1166527245 octave2.1 /usr/bin/octave2.1 <OLD>
+1176452776 1166372906 odbcinst1debian1 /usr/bin/odbcinst <OLD>
+1176452776 1172692921 liboil0.3 /usr/bin/oil-bugreport <OLD>
+1176452776 1166190411 bin86 /usr/bin/objdump86 <OLD>
+1176452775 1166190411 ftp /usr/bin/pftp <OLD>
+1176452775 1166190402 gettext-base /usr/bin/ngettext <OLD>
+1176452775 1173553215 policycoreutils /usr/bin/newrole <OLD>
+1176452774 1166527253 mtr /usr/bin/mtr <OLD>
+1176452774 1168601034 netcdf-bin /usr/bin/ncdump <OLD>
+1176452774 1166190412 mpack /usr/bin/munpack <OLD>
+1176452774 1173805996 nautilus-cd-burner /usr/bin/nautilus-cd-burner <OLD>
+1176452774 1166190411 mtools /usr/bin/mxtar <OLD>
+1176452773 1175768483 grub /usr/bin/mkbimage <OLD>
+1176452773 1166493277 mixxx /usr/bin/mixxx <OLD>
+1176452773 1166190407 mcrypt /usr/bin/mdecrypt <OLD>
+1176452773 1166492130 mmv /usr/bin/mad <OLD>
+1176452772 1176450674 lwatch /usr/bin/lwatch <OLD>
+1176452772 1166853121 m17n-db /usr/bin/m17n-db <OLD>
+1176452772 1166190412 mailx /usr/bin/mailx <OLD>
+1176452772 1166190402 libnss-db /usr/bin/makedb <OLD>
+1176452772 1171415965 libmagick9-dev /usr/bin/Magick-config <OLD>
+1176452772 1170794026 cupsys-client /usr/bin/lpstat <OLD>
+1176452772 1166527580 libwww-perl /usr/bin/GET <OLD>
+1176452772 1166527244 memtest86+ /usr/bin/make-memtest86+-boot-floppy <OLD>
+1176452772 1171415964 libmagick++9-dev /usr/bin/Magick++-config <OLD>
+1176452771 1166372775 libtool /usr/bin/libtool <OLD>
+1176452771 1166527230 libgnutls-dev /usr/bin/libgnutls-config <OLD>
+1176452771 1168444996 link-grammar /usr/bin/link-grammar <OLD>
+1176452771 1166527242 linda /usr/bin/linda <OLD>
+1176452771 1167557338 libnet1-dev /usr/bin/libnet-config <OLD>
+1176452771 1171415976 kdebase-bin /usr/bin/kxkb <OLD>
+1176452771 1167896485 libglade2-dev /usr/bin/libglade-convert <OLD>
+1176452771 1173870377 ldap-utils /usr/bin/ldapadd <OLD>
+1176452770 1175633689 kwin /usr/bin/kwin <OLD>
+1176452770 1171415975 kcontrol /usr/bin/krdb <OLD>
+1176452770 1171415980 kdebase-kio-plugins /usr/bin/ktrash <OLD>
+1176452770 1171415976 kdesktop /usr/bin/kwebdesktop <OLD>
+1176452769 1175633742 kpdf /usr/bin/kpdf <OLD>
+1176452769 1175633688 konsole /usr/bin/konsole <OLD>
+1176452768 1175633741 kghostview /usr/bin/kghostview <OLD>
+1176452768 1174603739 python-kid /usr/bin/kid <OLD>
+1176452768 1175633686 kfind /usr/bin/kfind <OLD>
+1176452768 1172692925 kino /usr/bin/kino <OLD>
+1176452768 1171415974 kicker /usr/bin/kicker <OLD>
+1176452768 1175633762 kdict /usr/bin/kdict <OLD>
+1176452767 1169371501 console-common /usr/bin/kbd-config <OLD>
+1176452767 1167188509 kaffeine /usr/bin/kaffeine <OLD>
+1176452767 1169667653 kcachegrind /usr/bin/kcachegrind <OLD>
+1176452766 1166527203 inkscape /usr/bin/inkview <OLD>
+1176452766 1173553668 irssi /usr/bin/irssi <OLD>
+1176452766 1166493272 jackd /usr/bin/jack_connect <OLD>
+1176452766 1168510530 im-switch /usr/bin/im-switch <OLD>
+1176452766 1166372906 unixodbc /usr/bin/iusql <OLD>
+1176452766 1169982581 autoconf /usr/bin/ifnames <OLD>
+1176452765 1166544983 libgstreamer0.8-0 /usr/bin/gst-register-0.8 <OLD>
+1176452765 1169039183 gij /usr/bin/grmiregistry <OLD>
+1176452765 1169026304 grass /usr/bin/grass <OLD>
+1176452765 1175426291 apache2-utils /usr/bin/htpasswd <OLD>
+1176452765 1168522526 help2man /usr/bin/help2man <OLD>
+1176452765 1166541751 hanzim /usr/bin/hanzim <OLD>
+1176452765 1169039183 gij-4.1 /usr/bin/grmiregistry-4.1 <OLD>
+1176452765 1167557334 hdf5-tools /usr/bin/h5debug <OLD>
+1176452765 1166372529 html2text /usr/bin/html2text <OLD>
+1176452765 1166527581 gromit /usr/bin/gromit <OLD>
+1176452765 1167896567 gnome-media /usr/bin/gstreamer-properties <OLD>
+1176452764 1174287091 gobby /usr/bin/gobby <OLD>
+1176452764 1166545029 gnuplot-nox /usr/bin/gnuplot <OLD>
+1176452764 1166372952 gperf /usr/bin/gperf <OLD>
+1176452763 1166527580 glademm /usr/bin/glademm-embed <OLD>
+1176452763 1166190406 gnome-nettool /usr/bin/gnome-nettool <OLD>
+1176452763 1173697180 git-core /usr/bin/git-pack-refs <OLD>
+1176452763 1167557320 glade-gnome /usr/bin/glade-2 <OLD>
+1176452763 1170283746 gmt /usr/bin/GMT <OLD>
+1176452763 1172692908 gnome-about /usr/bin/gnome-about <OLD>
+1176452763 1166190408 gnome-keyring-manager /usr/bin/gnome-keyring-manager <OLD>
+1176452763 1172692910 gnome-menus /usr/bin/gnome-menu-spec-test <OLD>
+1176452762 1173474008 libgtk2.0-dev /usr/bin/gdk-pixbuf-csource <OLD>
+1176452762 1169252735 libgeos-dev /usr/bin/geos-config <OLD>
+1176452761 1166853121 libfribidi0 /usr/bin/fribidi <OLD>
+1176452761 1166190410 gcalctool /usr/bin/gnome-calculator <OLD>
+1176452761 1175126572 ffmpeg /usr/bin/ffplay <OLD>
+1176452761 1171415993 libgdal1-1.3.2-dev /usr/bin/gdal-config <OLD>
+1176452761 1166190407 gconf-editor /usr/bin/gconf-editor <OLD>
+1176452761 1171977059 libgda2-bin /usr/bin/gda-test <OLD>
+1176452760 1167197446 ffmpeg2theora /usr/bin/ffmpeg2theora <OLD>
+1176452760 1168883513 exiftran /usr/bin/exiftran <OLD>
+1176452760 1174638054 evolution /usr/bin/evolution <OLD>
+1176452760 1173697172 eog /usr/bin/eog <OLD>
+1176452760 1169987090 libenchant1c2a /usr/bin/enchant <OLD>
+1176452760 1166527569 festival /usr/bin/festival_client <OLD>
+1176452760 1166527229 libesd0-dev /usr/bin/esd-config <OLD>
+1176452760 1168883513 exif /usr/bin/exif <OLD>
+1176452760 1166190411 esound /usr/bin/esd <OLD>
+1176452759 1167185763 dvbsnoop /usr/bin/dvbsnoop <OLD>
+1176452759 1166527023 emma /usr/bin/Emma <OLD>
+1176452758 1166527001 diffstat /usr/bin/diffstat <OLD>
+1176452758 1169982582 dictzip /usr/bin/dictzcat <OLD>
+1176452758 1170968117 dialog /usr/bin/dialog <OLD>
+1176452758 1166541750 dh-buildinfo /usr/bin/dh_buildinfo <OLD>
+1176452758 1166526998 dia-gnome /usr/bin/dia-gnome <OLD>
+1176452758 1168364125 dselect /usr/bin/dselect <OLD>
+1176452758 1166526998 dia /usr/bin/dia-normal <OLD>
+1176452758 1166190405 liblockfile1 /usr/bin/dotlockfile <OLD>
+1176452757 1166526993 dadadodo /usr/bin/dadadodo <OLD>
+1176452757 1166190408 dc /usr/bin/dc <OLD>
+1176452757 1166526994 dbus-1-utils /usr/bin/dbus-monitor <OLD>
+1176452757 1166526994 debtags /usr/bin/debtags <OLD>
+1176452757 1166526993 darcs /usr/bin/darcs <OLD>
+1176452757 1166541745 libdbi-perl /usr/bin/dbiproxy <OLD>
+1176452757 1166526993 darcs-buildpackage /usr/bin/dbp-markdeb <OLD>
+1176452756 1166526993 curl /usr/bin/curl <OLD>
+1176452756 1166190406 libcroco3 /usr/bin/csslint-0.6 <OLD>
+1176452756 1173474001 comerr-dev /usr/bin/compile_et <OLD>
+1176452756 1174593896 cmake /usr/bin/ctest <OLD>
+1176452756 1166526992 conglomerate /usr/bin/conglomerate <OLD>
+1176452756 1166526992 connect-proxy /usr/bin/connect <OLD>
+1176452755 1166370937 cdebootstrap /usr/bin/cdebootstrap <OLD>
+1176452755 1166493253 btscanner /usr/bin/btscanner <OLD>
+1176452755 1166493268 cadaver /usr/bin/cadaver <OLD>
+1176452755 1166194139 bsh /usr/bin/bsh <OLD>
+1176452755 1173647366 python-cheetah /usr/bin/cheetah <OLD>
+1176452755 1168682724 bug-buddy /usr/bin/bug-buddy <OLD>
+1176452755 1166493270 cappuccino /usr/bin/cappuccino <OLD>
+1176452754 1166541750 automake /usr/bin/automake-1.10 <OLD>
+1176452754 1166527227 libaudiofile-dev /usr/bin/audiofile-config <OLD>
+1176452754 1166190410 bc /usr/bin/bc <OLD>
+1176452754 1166493247 autotrace /usr/bin/autotrace <OLD>
+1176452754 1166190402 bison /usr/bin/bison <OLD>
+1176452754 1166527209 libarts1c2a /usr/bin/artswrapper <OLD>
+1176452754 1171620539 boa-constructor /usr/bin/boa-constructor <OLD>
+1176452753 1166492351 libadns1-bin /usr/bin/adnsresfilter <OLD>
+1176452753 1166493228 apt-rdepends /usr/bin/apt-rdepends <OLD>
+1176452753 1166527226 libakode2 /usr/bin/akodeplay <OLD>
+1176452753 1166493217 apt-file /usr/bin/apt-file <OLD>
+1176381709 1167557335 libhdf5-serial-dev /usr/include/H5Ppublic.h <OLD>
+1176381708 1168601033 netcdfg-dev /usr/include/ncvalues.h <OLD>
+1176240161 1172331617 linux-image-2.6.20.1enrico /boot/System.map-2.6.20.1enrico <OLD>
+1176187919 1173870388 totem-xine /usr/bin/totem-video-thumbnailer <OLD>
+1176107897 1175877396 toilet /usr/bin/figlet-toilet <OLD>
+1175968220 1169991072 tftp /usr/bin/tftp <OLD>
+1175939042 1166372774 libpod-simple-perl /usr/share/perl5/Pod/Simple/BlackBox.pm <OLD>
+1175939042 1166372774 libpod-escapes-perl /usr/share/perl5/Pod/Escapes.pm <OLD>
+1175936595 1171977056 klibc-utils /usr/lib/klibc/bin/kill <OLD>
+1175768425 1175768448 libx11-dev /usr/lib/libX11.a <OLD>
+1175720113 1175720149 kdelibs-data /usr/share/apps/dcopidlng/kalyptusCxxToDcopIDL.pm <OLD>
+1175701618 1175699053 libmsat-dev /usr/include/msat/Image.h <OLD>
+1175701618 1166373018 libpopt-dev /usr/include/popt.h <OLD>
+1175699060 1175699053 libhrit-dev /usr/include/hrit/MSG_machine.h <OLD>
+1175699052 1175699052 libgrib-dev /usr/lib/libgrib.a <OLD>
+1175633925 1166527580 libxml-parser-perl /usr/lib/perl5/XML/Parser/Expat.pm <OLD>
+1175633925 1175633668 libxml-sax-expat-perl /usr/share/perl5/XML/SAX/Expat.pm <OLD>
+1175633925 1166527241 libxml-sax-perl /usr/bin/update-perl-sax-parsers <OLD>
+1175633925 1166527241 libxml-namespacesupport-perl /usr/share/perl5/XML/NamespaceSupport.pm <OLD>
+1175633632 1175633862 xli /usr/bin/xli <OLD>
+1175593578 1166603946 libcnf-dev /usr/lib/libcnf.a <OLD>
+1175353646 1175353594 libsdl1.2-dev /usr/include/SDL/close_code.h <OLD>
+1175353646 1172692918 libglu1-mesa-dev /usr/include/GL/glu.h <OLD>
+1175353646 1175353597 libsdl-mixer1.2-dev /usr/include/SDL/SDL_mixer.h <OLD>
+1175353646 1175353594 libsdl-image1.2-dev /usr/include/SDL/SDL_image.h <OLD>
+1175353646 1172692916 mesa-common-dev /usr/include/GL/glext.h <OLD>
+1175353574 1175353595 libvorbis-dev /usr/lib/libvorbisfile.a <OLD>
+1175353574 1175353592 libogg-dev /usr/include/ogg/os_types.h <OLD>
+1175353574 1175353597 libsmpeg-dev /usr/lib/libsmpeg.a <OLD>
+1175212670 1171415989 shared-mime-info /usr/bin/update-mime-database <OLD>
+1175163877 1173202538 xchm /usr/bin/xchm <OLD>
+1175005453 1166372906 unixodbc-dev /usr/include/sqlucode.h <OLD>
+1174947050 1167109785 liblogfile-rotate-perl /usr/share/perl5/Logfile/Rotate.pm <OLD>
+1174947050 1167109785 libconfhelper-perl /usr/share/perl5/ConfHelper.pm <OLD>
+1174639562 1166372530 libcompress-zlib-perl /usr/lib/perl5/Compress/Zlib.pm <OLD>
+1174637980 1166372773 libclass-accessor-perl /usr/share/perl5/Class/Accessor.pm <OLD>
+1174488555 1166190411 strace /usr/bin/strace <OLD>
+1174387948 1174388018 sound-juicer /usr/bin/sound-juicer <OLD>
+1174316026 1167557339 libpcap0.7-dev /usr/include/net/bpf.h <OLD>
+1174314249 1171415962 libsqlite0-dev /usr/include/sqlite.h <OLD>
+1174314249 1173127613 libfontconfig1-dev /usr/include/fontconfig/fcfreetype.h <OLD>
+1174314249 1166190620 python-numeric /usr/include/python2.4/Numeric/ufuncobject.h <OLD>
+1174314249 1166527233 libsigc++-2.0-dev /usr/include/sigc++-2.0/sigc++/sigc++.h <OLD>
+1174314249 1174236298 libgnomevfs2-dev /usr/include/gnome-vfs-module-2.0/libgnomevfs/gnome-vfs-pty.h <OLD>
+1174314249 1168804322 python-numeric-ext /usr/include/python2.4/Numeric/ranlib.h <OLD>
+1174314249 1167557336 liblcms1-dev /usr/include/icc34.h <OLD>
+1174314249 1171977032 libexpat1-dev /usr/include/expat_config.h <OLD>
+1174314249 1167557336 libjasper-1.701-dev /usr/include/jasper/jas_malloc.h <OLD>
+1174314249 1170794018 sysvinit /usr/include/initreq.h <OLD>
+1174314249 1166372774 libltdl3-dev /usr/include/ltdl.h <OLD>
+1174314249 1166526982 x11proto-xinerama-dev /usr/include/X11/extensions/panoramiXext.h <OLD>
+1174314249 1166527229 libxml2-dev /usr/include/libxml2/libxml/globals.h <OLD>
+1174314249 1169582337 libmng-dev /usr/include/libmng.h <OLD>
+1174314249 1166980514 libgnome-keyring-dev /usr/include/gnome-keyring-1/gnome-keyring.h <OLD>
+1174314249 1166542751 libxapian-dev /usr/include/xapian/valueiterator.h <OLD>
+1174314249 1168076530 libtiff4-dev /usr/include/tiffvers.h <OLD>
+1174314249 1166527234 libjpeg62-dev /usr/include/jpegint.h <OLD>
+1174314249 1166526980 x11proto-xext-dev /usr/include/X11/extensions/dpms.h <OLD>
+1174314249 1172691933 libapt-pkg-dev /usr/include/apt-pkg/extracttar.h <OLD>
+1174314249 1166526980 x11proto-kb-dev /usr/include/X11/extensions/XKBstr.h <OLD>
+1174314249 1166493207 python-pygame /usr/include/python2.4/pygame/font.h <OLD>
+1174314249 1166527228 libgnomecanvas2-dev /usr/include/libgnomecanvas-2.0/libgnomecanvas/gnome-canvas-polygon.h <OLD>
+1174314249 1166527229 liblzo-dev /usr/include/lzo2a.h <OLD>
+1174314249 1166527227 libdbus-1-dev /usr/include/dbus-1.0/dbus/dbus-pending-call.h <OLD>
+1174314249 1168445049 liblink-grammar4-dev /usr/include/link-grammar/link-features.h <OLD>
+1174314249 1166527228 libcairo2-dev /usr/include/cairo/cairo.h <OLD>
+1174314249 1167557334 libbz2-dev /usr/include/bzlib.h <OLD>
+1174314249 1169371528 cryptsetup /usr/include/libcryptsetup.h <OLD>
+1174314249 1166526981 x11proto-render-dev /usr/include/X11/extensions/render.h <OLD>
+1174314249 1172692915 libgl1-mesa-dev /usr/include/GL/glx.h <OLD>
+1174314249 1166526981 x11proto-fixes-dev /usr/include/X11/extensions/xfixeswire.h <OLD>
+1174314249 1171415983 libpq-dev /usr/include/postgresql/mb/pg_wchar.h <OLD>
+1174296996 1170426154 python-scipy /usr/share/pycentral/python-scipy/site-packages/scipy/weave/blitz/blitz/bench.h <OLD>
+1173870868 1166527235 libmailtools-perl /usr/share/perl5/Mail/Mailer/sendmail.pm <OLD>
+1173870819 1166544982 libclass-methodmaker-perl /usr/lib/perl5/Class/MethodMaker.pm <OLD>
+1173870819 1172192955 libio-stringy-perl /usr/share/perl5/IO/WrapTie.pm <OLD>
+1173870819 1166544983 libgnupg-interface-perl /usr/share/perl5/GnuPG/Options.pm <OLD>
+1173870818 1166545119 libtext-template-perl /usr/share/perl5/Text/Template.pm <OLD>
+1173870395 1173870361 ca-certificates /usr/sbin/update-ca-certificates <OLD>
+1173866940 1166493253 bsdgames /usr/games/morse <OLD>
+1173697155 1173697160 radeontool /usr/sbin/radeontool <OLD>
+1173553227 1166190615 lvm-common /usr/sbin/lvm-bin-scan <OLD>
+1173481316 1173474010 libgtk2.0-bin /usr/sbin/update-gdkpixbuf-loaders <OLD>
+1173474004 1173474045 xvnc4viewer /usr/bin/xvnc4viewer <OLD>
+1173374741 1173374759 libpg-perl /usr/share/perl5/Pg.pm <OLD>
+1173374741 1173374759 libdbd-pg-perl /usr/lib/perl5/DBD/Pg.pm <OLD>
+1173215667 1173044869 rrootage /usr/games/rrootage <OLD>
+1173032743 1171415983 perlmagick /usr/lib/perl5/Image/Magick.pm <OLD>
+1173000088 1173000089 mount /sbin/swapoff <OLD>
+1172968089 1172967534 bygfoot /usr/games/bygfoot <OLD>
+1172822444 1166190613 sgml-base /usr/sbin/install-sgmlcatalog <OLD>
+1172692896 1172692912 hdparm /sbin/hdparm <OLD>
+1172326759 1168621101 source-highlight /usr/bin/source-highlight <OLD>
+1172326712 1172327116 ant /usr/bin/ant <OLD>
+1172326712 1172326731 java-common /usr/sbin/update-java-alternatives <OLD>
+1172192928 1172192954 portmap /sbin/pmap_set <OLD>
+1171977263 1171977062 libpango1.0-common /usr/sbin/update-pangox-aliases <OLD>
+1171977005 1171977213 ipw3945d /sbin/ipw3945d <OLD>
+1171977005 1171977051 busybox /bin/busybox <OLD>
+1171416038 1171415990 ssl-cert /usr/sbin/make-ssl-cert <OLD>
+1170967425 1170084318 xsane /usr/bin/xsane <OLD>
+1170892768 1170892769 dash /bin/dash <OLD>
+1170877521 1170877544 ceferino /usr/games/ceferinoeditor <OLD>
+1170794020 1170794021 initscripts /sbin/fsck.nfs <OLD>
+1170637598 1170637641 xdelta /usr/bin/xdelta <OLD>
+1170637598 1170637623 gnome-games /usr/games/iagno <OLD>
+1169759887 1169667651 angrydd /usr/games/angrydd <OLD>
+1169252753 1166527581 tk8.4 /usr/bin/wish8.4 <OLD>
+1168896609 1168896624 libimage-base-bundle-perl /usr/share/perl5/Image/Xpm.pm <OLD>
+1168608457 1168608460 xmms-shell /usr/bin/xmms-shell <OLD>
+1168607980 1168607993 xmms-midi /usr/lib/xmms/Input/libmid.a <OLD>
+1168377698 1168377699 libnet-ldap-perl /usr/share/perl5/LWP/Protocol/ldap.pm <OLD>
+1168377698 1168377699 libconvert-asn1-perl /usr/share/perl5/Convert/ASN1/_encode.pm <OLD>
+1168201952 1166190366 libgtk2-perl /usr/lib/perl5/Gtk2/SimpleMenu.pm <OLD>
+1168201952 1168199689 tinyca /usr/bin/tinyca2 <OLD>
+1168201951 1166190366 libcairo-perl /usr/lib/perl5/Cairo.pm <OLD>
+1167557302 1167557318 glade-common /usr/share/doc/glade-common/examples/editor/acconfig.h <OLD>
+1167291089 1167289232 frozen-bubble /usr/share/perl5/fb_stuff.pm <OLD>
+1167285834 1167285834 liberror-perl /usr/share/perl5/Error.pm <OLD>
+1166980509 1166980543 tesseract-ocr /usr/bin/tesseract <OLD>
+1166545113 1166545116 libpango1-ruby /usr/lib/ruby/1.8/x86_64-linux/rbpangoversion.h <OLD>
+1166545113 1166545116 libatk1-ruby /usr/lib/ruby/1.8/x86_64-linux/rbatk.h <OLD>
+1166545113 1166545115 libglib2-ruby /usr/lib/ruby/1.8/x86_64-linux/rbgobject.h <OLD>
+1166545113 1166545116 libgtk2-ruby /usr/lib/ruby/1.8/x86_64-linux/rbgtk.h <OLD>
+1166545113 1166545115 libart2-ruby /usr/lib/ruby/1.8/x86_64-linux/rbart.h <OLD>
+1166545113 1166545116 libcairo-ruby1.8 /usr/lib/ruby/1.8/x86_64-linux/rb_cairo.h <OLD>
+1166544981 1166544990 python-wxglade /usr/bin/wxglade <OLD>
+1166544981 1166545007 stow /usr/bin/stow <OLD>
+1166544981 1166545008 tzwatch /usr/bin/tzwatch <OLD>
+1166544981 1166545008 trickle /usr/bin/trickle <OLD>
+1166544981 1166545008 units /usr/bin/units <OLD>
+1166544981 1166545007 swaks /usr/bin/swaks <OLD>
+1166544981 1166544984 libmd5-perl /usr/share/perl5/MD5.pm <OLD>
+1166544981 1166544983 libgtk2-gladexml-perl /usr/lib/perl5/Gtk2/GladeXML.pm <OLD>
+1166541744 1166541750 tcl8.3 /usr/bin/tclsh8.3 <OLD>
+1166541744 1166541744 libnet-daemon-perl /usr/share/perl5/Net/Daemon.pm <OLD>
+1166541744 1166541760 dopewars /usr/games/dopewars <OLD>
+1166541744 1166541745 libplrpc-perl /usr/share/perl5/Bundle/PlRPC.pm <OLD>
+1166541744 1166541751 tk8.3 /usr/bin/wish8.3 <OLD>
+1166527567 1166527570 doxygen-doc /usr/share/doc/doxygen/examples/structcmd.h <OLD>
+1166527354 1166527241 libxml-libxml-common-perl /usr/lib/perl5/XML/LibXML/Common.pm <OLD>
+1166527354 1166527241 libxml-libxml-perl /usr/lib/perl5/XML/LibXML/Number.pm <OLD>
+1166526979 1166526982 libxi-dev /usr/lib/libXi.a <OLD>
+1166526979 1166527249 stl-manual /usr/share/doc/stl-manual/html/vector.h <OLD>
+1166526979 1166527235 libhtml-format-perl /usr/share/perl5/HTML/FormatPS.pm <OLD>
+1166526979 1166527032 libhtml-tagset-perl /usr/share/perl5/HTML/Tagset.pm <OLD>
+1166526979 1166527234 libfont-afm-perl /usr/share/perl5/Font/Metrics/Courier.pm <OLD>
+1166526979 1166527250 tagcolledit /usr/bin/tagcolledit <OLD>
+1166493179 1166493216 libconfig-file-perl /usr/share/perl5/Config/File.pm <OLD>
+1166491978 1166491979 libsasl2-2 /usr/lib/sasl2/libsasldb.a <OLD>
+1166491978 1166491979 libsasl2-modules /usr/lib/sasl2/liblogin.a <OLD>
+1166372771 1166372772 libalgorithm-annotate-perl /usr/share/perl5/Algorithm/Annotate.pm <OLD>
+1166372771 1166372773 libio-string-perl /usr/share/perl5/IO/String.pm <OLD>
+1166372771 1166372777 subversion-tools /usr/bin/svn_apply_autoprops <OLD>
+1166372771 1166372773 libfreezethaw-perl /usr/share/perl5/FreezeThaw.pm <OLD>
+1166372771 1166372775 libtext-diff-perl /usr/share/perl5/Text/Diff/Table.pm <OLD>
+1166372771 1166372772 libalgorithm-diff-perl /usr/share/perl5/Algorithm/Diff.pm <OLD>
+1166372771 1166372777 python-subversion /usr/bin/svnshell <OLD>
+1166372771 1166372773 libextutils-autoinstall-perl /usr/share/perl5/ExtUtils/AutoInstall.pm <OLD>
+1166372522 1166372530 libmail-sendmail-perl /usr/share/perl5/Mail/Sendmail.pm <OLD>
+1166370841 1166370849 resolvconf /sbin/resolvconf <OLD>
+1166195126 1166195126 xfsdump /usr/sbin/xfsrestore <OLD>
+1166191394 1166191399 dmsetup /sbin/dmsetup <OLD>
+1166191159 1166190413 libconfig-inifiles-perl /usr/share/perl5/Config/IniFiles.pm <OLD>
+1166190917 1166190542 libgnome2-canvas-perl /usr/share/doc/libgnome2-canvas-perl/examples/canvas-primitives.pm.gz <OLD>
+1166190887 1166190615 libpam-runtime /usr/sbin/pam_getenv <OLD>
+1166190887 1166190615 libpam-modules /usr/sbin/pam_tally <OLD>
+1166190887 1166190615 base-passwd /usr/sbin/update-passwd <OLD>
+1166190886 1166190615 libident /usr/sbin/in.identtestd <OLD>
+1166190885 1166190615 net-tools /usr/sbin/arp <OLD>
+1166190884 1166190366 libgnome2-perl /usr/lib/perl5/Gnome2.pm <OLD>
+1166190884 1166190366 libgnome2-vfs-perl /usr/lib/perl5/Gnome2/VFS.pm <OLD>
+1166190775 1166190411 type-handling /usr/bin/type-handling <OLD>
+1166190775 1166190404 tcl8.4 /usr/bin/tclsh8.4 <OLD>
+1166190775 1166190407 language-env /usr/bin/tklanguage <OLD>
+1166190775 1166190406 libxml2-utils /usr/bin/xmllint <OLD>
+1166190775 1166190399 tcsh /bin/tcsh <OLD>
+1166190775 1166190401 time /usr/bin/time <OLD>
+1166190775 1166190410 twm /usr/bin/twm <OLD>
+1166111683 1166111796 pcmciautils /sbin/lspcmcia <OLD>
+1166111683 1166111684 iptables /sbin/iptables-restore <OLD>
+1166111669 1166111669 hostname /bin/dnsdomainname <OLD>
+1166088950 1166088395 makedev /sbin/MAKEDEV <OLD>
+1166088684 1166088872 wireless-tools /sbin/iwconfig <OLD>
+1166088684 1166088719 bzip2 /bin/bzcmp <OLD>
+1166088684 1166088703 powermgmt-base /usr/bin/on_ac_power <OLD>
+1166088409 1166088411 ed /usr/bin/red <OLD>
+1166088409 1166088411 ifupdown /sbin/ifup <OLD>
+0 0 notification-daemon <NOFILES>
+0 0 libslp1 <NOFILES>
+0 0 python-rpy <NOFILES>
+0 0 libgtksourceview-common <NOFILES>
+0 0 compiz-gnome <NOFILES>
+0 0 libvte-ruby <NOFILES>
+0 0 libgphoto2-2 <NOFILES>
+0 0 xserver-xorg-input-kbd <NOFILES>
+0 0 libvorbis0a <NOFILES>
+0 0 python-gnome2 <NOFILES>
+0 0 python-dateutil <NOFILES>
+0 0 libvorbisenc2 <NOFILES>
+0 0 libgstreamer-plugins0.8-0 <NOFILES>
+0 0 libgnome-media0 <NOFILES>
+0 0 libxcursor1 <NOFILES>
+0 0 libcln4 <NOFILES>
+0 0 libsdl1.2debian <NOFILES>
+0 0 libscim8c2a <NOFILES>
+0 0 xserver-xorg-video-s3 <NOFILES>
+0 0 python-sqlite <NOFILES>
+0 0 gedit-common <NOFILES>
+0 0 libdbus-glib-1-2 <NOFILES>
+0 0 python-rpy-doc <NOFILES>
+0 0 proj-ps-doc <NOFILES>
+0 0 xsane-common <NOFILES>
+0 0 libgl1-mesa-dri <NOFILES>
+0 0 libx11-6 <NOFILES>
+0 0 libwnck18 <NOFILES>
+0 0 libxklavier10 <NOFILES>
+0 0 sun-java5-jre <NOFILES>
+0 0 libtasn1-3 <NOFILES>
+0 0 bochsbios <NOFILES>
+0 0 xmms-speex <NOFILES>
+0 0 svgalibg1 <NOFILES>
+0 0 sgml-data <NOFILES>
+0 0 libgtkmm-2.4-1c2a <NOFILES>
+0 0 libboost-regex1.33.1 <NOFILES>
+0 0 texlive-doc-base <NOFILES>
+0 0 libedataserverui1.2-6 <NOFILES>
+0 0 gcj-4.1-base <NOFILES>
+0 0 r-cran-kernsmooth <NOFILES>
+0 0 libdballe-bufrex-doc <NOFILES>
+0 0 python-gtk2-doc <NOFILES>
+0 0 libwmf0.2-7 <NOFILES>
+0 0 librsvg2-ruby <NOFILES>
+0 0 libgnomecupsui1.0-1c2a <NOFILES>
+0 0 proll <NOFILES>
+0 0 libgcj7-0 <NOFILES>
+0 0 libcfitsio2 <NOFILES>
+0 0 xfonts-scalable <NOFILES>
+0 0 xserver-xorg <NOFILES>
+0 0 libxft2 <NOFILES>
+0 0 libmagick++9c2a <NOFILES>
+0 0 gnome-media-common <NOFILES>
+0 0 libasound2 <NOFILES>
+0 0 libnotify1 <NOFILES>
+0 0 libcdio6 <NOFILES>
+0 0 python-cherrypy <NOFILES>
+0 0 libwpd8c2a <NOFILES>
+0 0 libdb4.3 <NOFILES>
+0 0 libgsf-1-common <NOFILES>
+0 0 libxmu6 <NOFILES>
+0 0 libnss3-0d <NOFILES>
+0 0 libcupsys2 <NOFILES>
+0 0 swig-doc <NOFILES>
+0 0 debconf-i18n <NOFILES>
+0 0 openoffice.org-l10n-en-gb <NOFILES>
+0 0 libdballe-msg3 <NOFILES>
+0 0 scim-chewing <NOFILES>
+0 0 libdevmapper1.02 <NOFILES>
+0 0 libfreetype6 <NOFILES>
+0 0 texlive-pictures <NOFILES>
+0 0 openbox-themes <NOFILES>
+0 0 discover1-data <NOFILES>
+0 0 libopal-2.2.0 <NOFILES>
+0 0 libmagick9 <NOFILES>
+0 0 gtk2-engines <NOFILES>
+0 0 console-data <NOFILES>
+0 0 libxv1 <NOFILES>
+0 0 libufsparse <NOFILES>
+0 0 libaprutil1 <NOFILES>
+0 0 libfltk1.1 <NOFILES>
+0 0 libmdbtools <NOFILES>
+0 0 libjline-java <NOFILES>
+0 0 libchewing3 <NOFILES>
+0 0 python-ooolib <NOFILES>
+0 0 cups-pdf <NOFILES>
+0 0 libmcrypt4 <NOFILES>
+0 0 openoffice.org-l10n-it <NOFILES>
+0 0 openoffice.org-java-common <NOFILES>
+0 0 gstreamer0.10-esd <NOFILES>
+0 0 libslang2 <NOFILES>
+0 0 docbook-xsl <NOFILES>
+0 0 iceweasel-webdeveloper <NOFILES>
+0 0 libportaudio0 <NOFILES>
+0 0 libpci2 <NOFILES>
+0 0 libgdal-doc <NOFILES>
+0 0 libreadline-ruby1.8 <NOFILES>
+0 0 gnome-applets-data <NOFILES>
+0 0 python-syck <NOFILES>
+0 0 python-gmenu <NOFILES>
+0 0 libgnome32 <NOFILES>
+0 0 fftw2 <NOFILES>
+0 0 libgnome-window-settings1 <NOFILES>
+0 0 libgnomecanvas2-ruby <NOFILES>
+0 0 libpango1.0-0 <NOFILES>
+0 0 libgeos-c1 <NOFILES>
+0 0 libsdl-pango1 <NOFILES>
+0 0 tesseract-ocr-data <NOFILES>
+0 0 openhackware <NOFILES>
+0 0 libnetcdf3 <NOFILES>
+0 0 libtotem-plparser1 <NOFILES>
+0 0 c++-annotations-txt <NOFILES>
+0 0 python-paste <NOFILES>
+0 0 xserver-xorg-video-voodoo <NOFILES>
+0 0 gcc-3.3-base <NOFILES>
+0 0 gimp-resynthesizer <NOFILES>
+0 0 gstreamer0.10-ffmpeg <NOFILES>
+0 0 tipa <NOFILES>
+0 0 python-celementtree <NOFILES>
+0 0 xserver-xorg-video-vga <NOFILES>
+0 0 libdballepp3 <NOFILES>
+0 0 myspell-en-us <NOFILES>
+0 0 xserver-xorg-video-cirrus <NOFILES>
+0 0 guile-1.6-libs <NOFILES>
+0 0 developers-reference <NOFILES>
+0 0 libkadm55 <NOFILES>
+0 0 metacity-common <NOFILES>
+0 0 libxul-common <NOFILES>
+0 0 grass-doc <NOFILES>
+0 0 python-gtk2 <NOFILES>
+0 0 libtool-doc <NOFILES>
+0 0 libapache2-mod-php5 <NOFILES>
+0 0 libgda2-3 <NOFILES>
+0 0 libdb4.4 <NOFILES>
+0 0 libflac7 <NOFILES>
+0 0 libldap2 <NOFILES>
+0 0 libgnomemm1.2-9c2 <NOFILES>
+0 0 libsexy2 <NOFILES>
+0 0 libvisual-0.4-0 <NOFILES>
+0 0 libglib2.0-0 <NOFILES>
+0 0 libglu1-mesa <NOFILES>
+0 0 libvte4 <NOFILES>
+0 0 c++-annotations-latex <NOFILES>
+0 0 libgnomesupport0 <NOFILES>
+0 0 tomatoes-data <NOFILES>
+0 0 compiz-plugins <NOFILES>
+0 0 libgpgme11 <NOFILES>
+0 0 libmng1 <NOFILES>
+0 0 ttf-arphic-ukai <NOFILES>
+0 0 libxosd2 <NOFILES>
+0 0 python-uno <NOFILES>
+0 0 libpaper1 <NOFILES>
+0 0 ncurses-base <NOFILES>
+0 0 libxul0d <NOFILES>
+0 0 python-debian <NOFILES>
+0 0 gstreamer0.10-plugins-good <NOFILES>
+0 0 libgtksourceview1.0-0 <NOFILES>
+0 0 libice6 <NOFILES>
+0 0 glibc-doc-reference <NOFILES>
+0 0 tzdata <NOFILES>
+0 0 libattr1 <NOFILES>
+0 0 freepats <NOFILES>
+0 0 libgtkspell0 <NOFILES>
+0 0 libgdal1-1.3.2 <NOFILES>
+0 0 libgail-common <NOFILES>
+0 0 gimp-python <NOFILES>
+0 0 libgutenprint2 <NOFILES>
+0 0 libntfs9 <NOFILES>
+0 0 libexchange-storage1.2-1 <NOFILES>
+0 0 libnetcdf++3 <NOFILES>
+0 0 libdirectfb-0.9-25 <NOFILES>
+0 0 libiso9660-4 <NOFILES>
+0 0 iceweasel-l10n-it <NOFILES>
+0 0 libxtst6 <NOFILES>
+0 0 r-cran-sandwich <NOFILES>
+0 0 postgresql-contrib <NOFILES>
+0 0 libgnutls13 <NOFILES>
+0 0 gimp-gap <NOFILES>
+0 0 xserver-xorg-video-mga <NOFILES>
+0 0 dia-common <NOFILES>
+0 0 libxkbfile1 <NOFILES>
+0 0 libogdi3.2 <NOFILES>
+0 0 gimp-print <NOFILES>
+0 0 autoconf-doc <NOFILES>
+0 0 libgnomevfs2-common <NOFILES>
+0 0 readline-common <NOFILES>
+0 0 librsvg2-2 <NOFILES>
+0 0 libscrollkeeper0 <NOFILES>
+0 0 libotf0 <NOFILES>
+0 0 libjasper-1.701-1 <NOFILES>
+0 0 libdballe-msg-doc <NOFILES>
+0 0 libvorbisfile3 <NOFILES>
+0 0 libpoppler0c2-glib <NOFILES>
+0 0 ibritish <NOFILES>
+0 0 linux-doc-2.6.21 <NOFILES>
+0 0 python-ctypes <NOFILES>
+0 0 liba52-0.7.4 <NOFILES>
+0 0 festvox-suopuhe-common <NOFILES>
+0 0 python-webpy <NOFILES>
+0 0 python-sip4 <NOFILES>
+0 0 libgnomecanvas2-common <NOFILES>
+0 0 python-vobject <NOFILES>
+0 0 xserver-xorg-video-tseng <NOFILES>
+0 0 gnome-mime-data <NOFILES>
+0 0 festvox-italp16k <NOFILES>
+0 0 libgnomeprint2.2-data <NOFILES>
+0 0 toilet-fonts <NOFILES>
+0 0 python-numpy-ext <NOFILES>
+0 0 librsvg2-common <NOFILES>
+0 0 libdm0 <NOFILES>
+0 0 libmetacity0 <NOFILES>
+0 0 libgnome2-common <NOFILES>
+0 0 libdv4 <NOFILES>
+0 0 libsmpeg0 <NOFILES>
+0 0 libsane <NOFILES>
+0 0 xapian-examples <NOFILES>
+0 0 libsemanage1 <NOFILES>
+0 0 libgnomecups1.0-1 <NOFILES>
+0 0 xserver-xorg-video-ati <NOFILES>
+0 0 gnome-core <NOFILES>
+0 0 libsqliteodbc <NOFILES>
+0 0 ant-optional <NOFILES>
+0 0 python-flup <NOFILES>
+0 0 lvm2 <NOFILES>
+0 0 lapack3 <NOFILES>
+0 0 libpostproc0d <NOFILES>
+0 0 qalculate <NOFILES>
+0 0 xserver-xorg-video-rendition <NOFILES>
+0 0 freeglut3 <NOFILES>
+0 0 libklibc <NOFILES>
+0 0 manpages-it <NOFILES>
+0 0 libsm6 <NOFILES>
+0 0 cpp-4.1-doc <NOFILES>
+0 0 libapm1 <NOFILES>
+0 0 postfix-doc <NOFILES>
+0 0 adept-common <NOFILES>
+0 0 libpisock9 <NOFILES>
+0 0 libshout3 <NOFILES>
+0 0 libsdl1.2debian-alsa <NOFILES>
+0 0 python-extractor <NOFILES>
+0 0 libsdl-gfx1.2-4 <NOFILES>
+0 0 libstdc++5 <NOFILES>
+0 0 r-cran-abind <NOFILES>
+0 0 libgnomeprintui2.2-common <NOFILES>
+0 0 r-cran-rcmdr <NOFILES>
+0 0 libt1-5 <NOFILES>
+0 0 libglitz-glx1 <NOFILES>
+0 0 festvox-itapc16k <NOFILES>
+0 0 xorg <NOFILES>
+0 0 libbeecrypt6 <NOFILES>
+0 0 link-grammar-dictionaries-en <NOFILES>
+0 0 libraw1394-8 <NOFILES>
+0 0 lesstif2 <NOFILES>
+0 0 libtiffxx0c2 <NOFILES>
+0 0 libvformat1 <NOFILES>
+0 0 python-crypto <NOFILES>
+0 0 libchewing3-data <NOFILES>
+0 0 gcc-3.4-base <NOFILES>
+0 0 libgstreamer-plugins-base0.10-0 <NOFILES>
+0 0 python-bluez <NOFILES>
+0 0 evolution-data-server <NOFILES>
+0 0 python-cairo <NOFILES>
+0 0 base-files <NOFILES>
+0 0 sqlite3-doc <NOFILES>
+0 0 gnome-user-guide <NOFILES>
+0 0 libkrb53 <NOFILES>
+0 0 gnome-panel-data <NOFILES>
+0 0 libhal1 <NOFILES>
+0 0 libaudiofile0 <NOFILES>
+0 0 libexif-ruby1.8 <NOFILES>
+0 0 texlive-base <NOFILES>
+0 0 r-cran-mvtnorm <NOFILES>
+0 0 festvox-kallpc16k <NOFILES>
+0 0 r-cran-strucchange <NOFILES>
+0 0 libdebian-installer-extra4 <NOFILES>
+0 0 libdc1394-13 <NOFILES>
+0 0 libpq4 <NOFILES>
+0 0 xserver-xorg-input-evdev <NOFILES>
+0 0 r-cran-foreign <NOFILES>
+0 0 libkonq4 <NOFILES>
+0 0 vgabios <NOFILES>
+0 0 python-all <NOFILES>
+0 0 qgis-plugin-grass <NOFILES>
+0 0 libmpfr1 <NOFILES>
+0 0 lmodern <NOFILES>
+0 0 python-at-spi <NOFILES>
+0 0 gmt-tutorial <NOFILES>
+0 0 libgnomevfs2-ruby <NOFILES>
+0 0 libkcddb1 <NOFILES>
+0 0 libaspell15 <NOFILES>
+0 0 libmsat0 <NOFILES>
+0 0 libxtrap6 <NOFILES>
+0 0 libextractor-plugins <NOFILES>
+0 0 libgtkhtml2-ruby <NOFILES>
+0 0 python-mysqldb <NOFILES>
+0 0 libaudio2 <NOFILES>
+0 0 xmms-mad <NOFILES>
+0 0 openoffice.org-evolution <NOFILES>
+0 0 libevent1 <NOFILES>
+0 0 postgresql-client <NOFILES>
+0 0 librecode0 <NOFILES>
+0 0 gcc-4.1-base <NOFILES>
+0 0 libstartup-notification0 <NOFILES>
+0 0 libxpm4 <NOFILES>
+0 0 doc-linux-text <NOFILES>
+0 0 gnome-desktop-data <NOFILES>
+0 0 libpanel-applet2-0 <NOFILES>
+0 0 libobby-0.4-0 <NOFILES>
+0 0 libgnomeui-0 <NOFILES>
+0 0 festvox-suopuhe-lj <NOFILES>
+0 0 libnautilus-extension1 <NOFILES>
+0 0 texlive-generic-recommended <NOFILES>
+0 0 texlive-latex-recommended <NOFILES>
+0 0 libcurl3 <NOFILES>
+0 0 libnet1 <NOFILES>
+0 0 libgtop2-7 <NOFILES>
+0 0 wamerican <NOFILES>
+0 0 r-cran-relimp <NOFILES>
+0 0 xmms-xf86audio <NOFILES>
+0 0 openoffice.org-core <NOFILES>
+0 0 libbind9-30 <NOFILES>
+0 0 libdmx1 <NOFILES>
+0 0 gnome-netstatus-applet <NOFILES>
+0 0 python-roman <NOFILES>
+0 0 texpower <NOFILES>
+0 0 libmagic1 <NOFILES>
+0 0 libsvn1 <NOFILES>
+0 0 libtiff4 <NOFILES>
+0 0 python-profiler <NOFILES>
+0 0 linux-image-2.6-amd64 <NOFILES>
+0 0 ncurses-term <NOFILES>
+0 0 libxau6 <NOFILES>
+0 0 dict-bouvier <NOFILES>
+0 0 libxcomposite1 <NOFILES>
+0 0 libieee1284-3 <NOFILES>
+0 0 python-semanage <NOFILES>
+0 0 libqalculate3 <NOFILES>
+0 0 libgconf2-4 <NOFILES>
+0 0 libmpeg2-4 <NOFILES>
+0 0 xserver-xorg-video-fbdev <NOFILES>
+0 0 php5-common <NOFILES>
+0 0 libgmp3c2 <NOFILES>
+0 0 iceweasel-gnome-support <NOFILES>
+0 0 prosper <NOFILES>
+0 0 libsdl-console <NOFILES>
+0 0 scim-modules-socket <NOFILES>
+0 0 libgpmg1 <NOFILES>
+0 0 libxfont1 <NOFILES>
+0 0 netbase <NOFILES>
+0 0 libdjvulibre15 <NOFILES>
+0 0 xfonts-base <NOFILES>
+0 0 autoconf-archive <NOFILES>
+0 0 python-dev <NOFILES>
+0 0 libebook1.2-5 <NOFILES>
+0 0 festvox-suopuhe-mv <NOFILES>
+0 0 libgnomevfs2-extra <NOFILES>
+0 0 gnome-terminal-data <NOFILES>
+0 0 xserver-xorg-input-all <NOFILES>
+0 0 iceweasel-dom-inspector <NOFILES>
+0 0 alsa-base <NOFILES>
+0 0 libpth20 <NOFILES>
+0 0 python-matplotlib-data <NOFILES>
+0 0 libpcap0.7 <NOFILES>
+0 0 postgresql-doc <NOFILES>
+0 0 dia-libs <NOFILES>
+0 0 libgnomevfs2-0 <NOFILES>
+0 0 libcucul0 <NOFILES>
+0 0 libstdc++6-4.1-doc <NOFILES>
+0 0 libgphoto2-port0 <NOFILES>
+0 0 debian-policy <NOFILES>
+0 0 python-numpy-doc <NOFILES>
+0 0 lsb-base <NOFILES>
+0 0 libisccc0 <NOFILES>
+0 0 gmt-coast-low <NOFILES>
+0 0 python-apt <NOFILES>
+0 0 xaw3dg <NOFILES>
+0 0 c++-annotations-pdf <NOFILES>
+0 0 docbook-xsl-doc <NOFILES>
+0 0 libjaxp1.3-java <NOFILES>
+0 0 gnome-cards-data <NOFILES>
+0 0 libmpcdec3 <NOFILES>
+0 0 gimp-data-extras <NOFILES>
+0 0 ttf-dejavu <NOFILES>
+0 0 evolution-data-server-common <NOFILES>
+0 0 libbluetooth2 <NOFILES>
+0 0 texlive-common <NOFILES>
+0 0 libdballe-db3 <NOFILES>
+0 0 libconsole <NOFILES>
+0 0 libodbcinstq1c2 <NOFILES>
+0 0 libavformat0d <NOFILES>
+0 0 libgnome-menu2 <NOFILES>
+0 0 xlibmesa-gl-dev <NOFILES>
+0 0 libspeex1 <NOFILES>
+0 0 libqt3-i18n <NOFILES>
+0 0 libxalan2-java <NOFILES>
+0 0 automake1.10-doc <NOFILES>
+0 0 libgtkglext1-ruby <NOFILES>
+0 0 libbonoboui2-common <NOFILES>
+0 0 libvte-common <NOFILES>
+0 0 libgsl0 <NOFILES>
+0 0 libisc11 <NOFILES>
+0 0 python-sqlalchemy <NOFILES>
+0 0 libss2 <NOFILES>
+0 0 libmad0 <NOFILES>
+0 0 libsvga1 <NOFILES>
+0 0 libncurses5 <NOFILES>
+0 0 libept0 <NOFILES>
+0 0 libsepol1 <NOFILES>
+0 0 python-selinux <NOFILES>
+0 0 libart-2.0-2 <NOFILES>
+0 0 libplot2c2 <NOFILES>
+0 0 iceweasel-greasemonkey <NOFILES>
+0 0 libosp5 <NOFILES>
+0 0 texlive-fonts-recommended <NOFILES>
+0 0 odbc-postgresql <NOFILES>
+0 0 libtheora0 <NOFILES>
+0 0 libnfsidmap2 <NOFILES>
+0 0 python-qtext <NOFILES>
+0 0 xfonts-100dpi <NOFILES>
+0 0 manpages <NOFILES>
+0 0 libvolume-id0 <NOFILES>
+0 0 libdballe-db-doc <NOFILES>
+0 0 gcc-doc <NOFILES>
+0 0 libqt4-gui <NOFILES>
+0 0 libblkid1 <NOFILES>
+0 0 libxss1 <NOFILES>
+0 0 libruby1.8 <NOFILES>
+0 0 libxine1 <NOFILES>
+0 0 xserver-xorg-video-cyrix <NOFILES>
+0 0 fast-user-switch-applet <NOFILES>
+0 0 libmpich1.0c2 <NOFILES>
+0 0 libgtop2-common <NOFILES>
+0 0 mapserver-doc <NOFILES>
+0 0 gnome-themes <NOFILES>
+0 0 frozen-bubble-data <NOFILES>
+0 0 intltool-debian <NOFILES>
+0 0 libsdl-mixer1.2 <NOFILES>
+0 0 libextractor1c2a <NOFILES>
+0 0 python-pysqlite2 <NOFILES>
+0 0 libgpg-error0 <NOFILES>
+0 0 libgksuui1.0-1 <NOFILES>
+0 0 libopengl-ruby <NOFILES>
+0 0 python-gammu <NOFILES>
+0 0 postgresql <NOFILES>
+0 0 libarchive1 <NOFILES>
+0 0 libflac++5 <NOFILES>
+0 0 libxinerama1 <NOFILES>
+0 0 libedataserver1.2-7 <NOFILES>
+0 0 c++-annotations-ps <NOFILES>
+0 0 eric-api-files <NOFILES>
+0 0 python-gnome2-desktop <NOFILES>
+0 0 graphviz-doc <NOFILES>
+0 0 r-cran-lattice <NOFILES>
+0 0 gconf2-common <NOFILES>
+0 0 manpages-dev <NOFILES>
+0 0 libgdk-pixbuf2-ruby <NOFILES>
+0 0 libgnomecanvas2-0 <NOFILES>
+0 0 xserver-xorg-video-sis <NOFILES>
+0 0 r-doc-info <NOFILES>
+0 0 libsmbclient <NOFILES>
+0 0 gmt-examples <NOFILES>
+0 0 libdrm2 <NOFILES>
+0 0 libmusicbrainz4c2a <NOFILES>
+0 0 python-pycurl <NOFILES>
+0 0 libpcsclite1 <NOFILES>
+0 0 libxaw6 <NOFILES>
+0 0 bzr-svn <NOFILES>
+0 0 gcc-doc-base <NOFILES>
+0 0 libgtk1.2 <NOFILES>
+0 0 python2.4-doc <NOFILES>
+0 0 liferea-xulrunner <NOFILES>
+0 0 liblwres30 <NOFILES>
+0 0 libdvdread3 <NOFILES>
+0 0 liblualib50 <NOFILES>
+0 0 libldap-2.3-0 <NOFILES>
+0 0 xmms-oggre <NOFILES>
+0 0 libestools1.2 <NOFILES>
+0 0 libavcodec0d <NOFILES>
+0 0 python-qt3 <NOFILES>
+0 0 fb-music-high <NOFILES>
+0 0 bicyclerepair <NOFILES>
+0 0 libgnome2-ruby <NOFILES>
+0 0 industrial-cursor-theme <NOFILES>
+0 0 python-pyorbit <NOFILES>
+0 0 libgtk2.0-0 <NOFILES>
+0 0 timidity-interfaces-extra <NOFILES>
+0 0 e2fslibs <NOFILES>
+0 0 octave <NOFILES>
+0 0 xserver-xorg-video-glint <NOFILES>
+0 0 libsndfile1 <NOFILES>
+0 0 xbitmaps <NOFILES>
+0 0 librexml-ruby <NOFILES>
+0 0 libdballef3 <NOFILES>
+0 0 grep-dctrl <NOFILES>
+0 0 gcc-4.1-doc <NOFILES>
+0 0 libpanel-applet2-ruby <NOFILES>
+0 0 vim-gui-common <NOFILES>
+0 0 liboggflac3 <NOFILES>
+0 0 w3c-dtd-xhtml <NOFILES>
+0 0 gnuplot-x11 <NOFILES>
+0 0 ruby-gnome2 <NOFILES>
+0 0 gimp-data <NOFILES>
+0 0 libqgis0 <NOFILES>
+0 0 xserver-xorg-video-all <NOFILES>
+0 0 libgdl-1-0 <NOFILES>
+0 0 python-sqlobject <NOFILES>
+0 0 openoffice.org-thesaurus-en-us <NOFILES>
+0 0 xserver-xorg-video-dummy <NOFILES>
+0 0 libapr1 <NOFILES>
+0 0 libxvmc1 <NOFILES>
+0 0 libcurl3-gnutls <NOFILES>
+0 0 libgcc1 <NOFILES>
+0 0 kdebase-data <NOFILES>
+0 0 xpdf <NOFILES>
+0 0 libpng12-0 <NOFILES>
+0 0 libgammu1 <NOFILES>
+0 0 xkb-data <NOFILES>
+0 0 libgnomeui32 <NOFILES>
+0 0 r-cran-effects <NOFILES>
+0 0 libbonoboui2-0 <NOFILES>
+0 0 libcommons-cli-java <NOFILES>
+0 0 python-protocols <NOFILES>
+0 0 libxevie1 <NOFILES>
+0 0 xapian-doc <NOFILES>
+0 0 libxt-java <NOFILES>
+0 0 libsasl2 <NOFILES>
+0 0 gimp-svg <NOFILES>
+0 0 python-tk <NOFILES>
+0 0 xserver-xorg-video-trident <NOFILES>
+0 0 x-ttcidfont-conf <NOFILES>
+0 0 r-cran-vr <NOFILES>
+0 0 python-magic <NOFILES>
+0 0 libgnomeprint2.2-0 <NOFILES>
+0 0 r-cran-cluster <NOFILES>
+0 0 libavahi-common3 <NOFILES>
+0 0 esound-common <NOFILES>
+0 0 libgeos2c2a <NOFILES>
+0 0 libkpathsea4 <NOFILES>
+0 0 libxaw7 <NOFILES>
+0 0 xplanet-images <NOFILES>
+0 0 libmysqlclient15off <NOFILES>
+0 0 libdb3 <NOFILES>
+0 0 libfontenc1 <NOFILES>
+0 0 xserver-xorg-video-savage <NOFILES>
+0 0 libgssapi2 <NOFILES>
+0 0 libpstoedit0c2a <NOFILES>
+0 0 libgimp2.0 <NOFILES>
+0 0 libwrap0 <NOFILES>
+0 0 libpt-plugins-v4l <NOFILES>
+0 0 glade-doc <NOFILES>
+0 0 libxerces2-java <NOFILES>
+0 0 libcupsimage2 <NOFILES>
+0 0 docbook-xml <NOFILES>
+0 0 dict-elements <NOFILES>
+0 0 festlex-poslex <NOFILES>
+0 0 python-glade2 <NOFILES>
+0 0 libcomerr2 <NOFILES>
+0 0 liblzo1 <NOFILES>
+0 0 liblua50 <NOFILES>
+0 0 selinux-policy-refpolicy-targeted <NOFILES>
+0 0 libxt6 <NOFILES>
+0 0 libboost-program-options1.33.1 <NOFILES>
+0 0 libgksu1.2-0 <NOFILES>
+0 0 openoffice.org-hyphenation-it <NOFILES>
+0 0 python-markdown <NOFILES>
+0 0 pgf <NOFILES>
+0 0 python-libxml2 <NOFILES>
+0 0 libguichan0 <NOFILES>
+0 0 libhrit0 <NOFILES>
+0 0 libdebian-installer4 <NOFILES>
+0 0 libgtkhtml3.8-15 <NOFILES>
+0 0 libgnorba27 <NOFILES>
+0 0 xserver-xorg-video-v4l <NOFILES>
+0 0 linux-sound-base <NOFILES>
+0 0 libsoup2.2-8 <NOFILES>
+0 0 libreadline5 <NOFILES>
+0 0 libsysfs2 <NOFILES>
+0 0 libgucharmap4 <NOFILES>
+0 0 libsqlite3-0 <NOFILES>
+0 0 libbonobo2-0 <NOFILES>
+0 0 python-matplotlib-doc <NOFILES>
+0 0 libncursesw5 <NOFILES>
+0 0 python-gtk2-tutorial <NOFILES>
+0 0 python-xapian <NOFILES>
+0 0 nautilus-data <NOFILES>
+0 0 xserver-xorg-video-neomagic <NOFILES>
+0 0 libmikmod2 <NOFILES>
+0 0 libmyodbc <NOFILES>
+0 0 libxerces27 <NOFILES>
+0 0 libecal1.2-6 <NOFILES>
+0 0 libopenssl-ruby1.8 <NOFILES>
+0 0 libgamin0 <NOFILES>
+0 0 python-gnome2-extras <NOFILES>
+0 0 python-doc <NOFILES>
+0 0 xserver-xorg-input-wacom <NOFILES>
+0 0 libgstreamer0.8-ruby <NOFILES>
+0 0 bluetooth <NOFILES>
+0 0 r-cran-nlme <NOFILES>
+0 0 dict-vera <NOFILES>
+0 0 libmozjs0d <NOFILES>
+0 0 desktop-base <NOFILES>
+0 0 libgcrypt11 <NOFILES>
+0 0 libgsf-1-114 <NOFILES>
+0 0 liblockdev1 <NOFILES>
+0 0 libexpat1 <NOFILES>
+0 0 mysql-common <NOFILES>
+0 0 xserver-xorg-video-sisusb <NOFILES>
+0 0 libcap1 <NOFILES>
+0 0 libgda2-ruby <NOFILES>
+0 0 scim-gtk2-immodule <NOFILES>
+0 0 xserver-xorg-video-vesa <NOFILES>
+0 0 libxfixes3 <NOFILES>
+0 0 libneon26 <NOFILES>
+0 0 python-dns <NOFILES>
+0 0 mysql-server <NOFILES>
+0 0 libg2c0 <NOFILES>
+0 0 witalian <NOFILES>
+0 0 libavahi-glib1 <NOFILES>
+0 0 gtk2-engines-pixbuf <NOFILES>
+0 0 libm17n-0 <NOFILES>
+0 0 libstlport4.6c2 <NOFILES>
+0 0 liblcms1 <NOFILES>
+0 0 libedit2 <NOFILES>
+0 0 liblog4j1.2-java <NOFILES>
+0 0 gnome-icon-theme <NOFILES>
+0 0 libxp6 <NOFILES>
+0 0 libsamplerate0 <NOFILES>
+0 0 libsdl-image1.2 <NOFILES>
+0 0 mixxx-data <NOFILES>
+0 0 gstreamer0.10-plugins-base <NOFILES>
+0 0 libseda-java <NOFILES>
+0 0 libxres1 <NOFILES>
+0 0 kdemultimedia-kio-plugins <NOFILES>
+0 0 libadns1 <NOFILES>
+0 0 libgnorbagtk0 <NOFILES>
+0 0 fontconfig-config <NOFILES>
+0 0 xserver-xorg-video-nv <NOFILES>
+0 0 libjack0.100.0-0 <NOFILES>
+0 0 firmware-ipw3945 <NOFILES>
+0 0 libdns22 <NOFILES>
+0 0 gaim-data <NOFILES>
+0 0 scim-m17n <NOFILES>
+0 0 netcdf-doc <NOFILES>
+0 0 libgconf2-ruby <NOFILES>
+0 0 libhtree-ruby1.8 <NOFILES>
+0 0 libusb-0.1-4 <NOFILES>
+0 0 r-cran-sm <NOFILES>
+0 0 libmhash2 <NOFILES>
+0 0 libaa1 <NOFILES>
+0 0 libnspr4-0d <NOFILES>
+0 0 libgdbm3 <NOFILES>
+0 0 python-configobj <NOFILES>
+0 0 libwxbase2.6-0 <NOFILES>
+0 0 python-dispatch <NOFILES>
+0 0 libautotrace3 <NOFILES>
+0 0 libiw28 <NOFILES>
+0 0 libpt-plugins-alsa <NOFILES>
+0 0 libnautilus-burn3 <NOFILES>
+0 0 latex-xcolor <NOFILES>
+0 0 xserver-xorg-video-s3virge <NOFILES>
+0 0 python-elementtree <NOFILES>
+0 0 postgresql-doc-7.4 <NOFILES>
+0 0 conglomerate-common <NOFILES>
+0 0 libhdf5-doc <NOFILES>
+0 0 c++-annotations-contrib <NOFILES>
+0 0 libtag1c2a <NOFILES>
+0 0 libgtk-mozembed-ruby <NOFILES>
+0 0 libxml2 <NOFILES>
+0 0 gnome-libs-data <NOFILES>
+0 0 paste-common <NOFILES>
+0 0 freedroidrpg-data <NOFILES>
+0 0 iitalian <NOFILES>
+0 0 libltdl3 <NOFILES>
+0 0 libavahi-client3 <NOFILES>
+0 0 fftw3 <NOFILES>
+0 0 libgfortran1 <NOFILES>
+0 0 libmyspell3c2 <NOFILES>
+0 0 xserver-xorg-video-tga <NOFILES>
+0 0 r-cran-car <NOFILES>
+0 0 python-newt <NOFILES>
+0 0 xserver-xorg-video-ark <NOFILES>
+0 0 libesd0 <NOFILES>
+0 0 openoffice.org <NOFILES>
+0 0 libsdl-net1.2 <NOFILES>
+0 0 libsigc++-2.0-0c2a <NOFILES>
+0 0 python-simplejson <NOFILES>
+0 0 libcdparanoia0 <NOFILES>
+0 0 libglib1.2 <NOFILES>
+0 0 libpopt0 <NOFILES>
+0 0 scribus-ng-doc <NOFILES>
+0 0 libwnck-common <NOFILES>
+0 0 mplayer-skin-blue <NOFILES>
+0 0 libgail-gnome-module <NOFILES>
+0 0 libopenexr2c2a <NOFILES>
+0 0 libsp1c2 <NOFILES>
+0 0 libvdeplug2 <NOFILES>
+0 0 libmodplug0c2 <NOFILES>
+0 0 ttf-opensymbol <NOFILES>
+0 0 libwxgtk2.6-0 <NOFILES>
+0 0 libqscintilla6 <NOFILES>
+0 0 epiphany-extensions <NOFILES>
+0 0 festlex-ifd <NOFILES>
+0 0 libgle3 <NOFILES>
+0 0 libartsc0 <NOFILES>
+0 0 gmt-doc <NOFILES>
+0 0 libdb4.2 <NOFILES>
+0 0 libcairo-ruby <NOFILES>
+0 0 libid3tag0 <NOFILES>
+0 0 libogg0 <NOFILES>
+0 0 libxdmcp6 <NOFILES>
+0 0 python-turbojson <NOFILES>
+0 0 gdb-doc <NOFILES>
+0 0 python-opengl <NOFILES>
+0 0 r-cran-rgl <NOFILES>
+0 0 load-dirs-common <NOFILES>
+0 0 rrootage-data <NOFILES>
+0 0 latex-beamer <NOFILES>
+0 0 r-cran-mgcv <NOFILES>
+0 0 libfs6 <NOFILES>
+0 0 libgtk2.0-common <NOFILES>
+0 0 libxapian13 <NOFILES>
+0 0 libgnome-pilot2 <NOFILES>
+0 0 libx11-data <NOFILES>
+0 0 libdballe-bufrex3 <NOFILES>
+0 0 liblircclient0 <NOFILES>
+0 0 libeel2-2.14 <NOFILES>
+0 0 libxxf86dga1 <NOFILES>
+0 0 linux-patch-gcov <NOFILES>
+0 0 c++-annotations-html <NOFILES>
+0 0 libqt4-qt3support <NOFILES>
+0 0 libanthy0 <NOFILES>
+0 0 python-matplotlib <NOFILES>
+0 0 libxi6 <NOFILES>
+0 0 docbook-doc <NOFILES>
+0 0 liblzo2-2 <NOFILES>
+0 0 r-cran-boot <NOFILES>
+0 0 libiec61883-0 <NOFILES>
+0 0 libisccc30 <NOFILES>
+0 0 libtextwrap1 <NOFILES>
+0 0 libssp0 <NOFILES>
+0 0 libgstreamer0.10-0 <NOFILES>
+0 0 gdm-themes <NOFILES>
+0 0 balder2d-data <NOFILES>
+0 0 libpam0g <NOFILES>
+0 0 debian-archive-keyring <NOFILES>
+0 0 libgdal1-1.3.2-grass <NOFILES>
+0 0 linux-doc-2.6.18 <NOFILES>
+0 0 libgnomeprint2-ruby <NOFILES>
+0 0 hal-info <NOFILES>
+0 0 python-paramiko <NOFILES>
+0 0 linux-manual-2.6.21 <NOFILES>
+0 0 evolution-common <NOFILES>
+0 0 gnome-games-data <NOFILES>
+0 0 xserver-xorg-video-i128 <NOFILES>
+0 0 libqt3-mt <NOFILES>
+0 0 libnids1.21 <NOFILES>
+0 0 festlex-cmu <NOFILES>
+0 0 gdk-imlib11 <NOFILES>
+0 0 python-formencode <NOFILES>
+0 0 at-spi <NOFILES>
+0 0 libpcap0.8 <NOFILES>
+0 0 imlib11 <NOFILES>
+0 0 xserver-xorg-input-mouse <NOFILES>
+0 0 libxdamage1 <NOFILES>
+0 0 bison-doc <NOFILES>
+0 0 libgsm1 <NOFILES>
+0 0 xmms-osd-plugin <NOFILES>
+0 0 compiz <NOFILES>
+0 0 debian-cd <NOFILES>
+0 0 gimp-texturize <NOFILES>
+0 0 ttf-bitstream-vera <NOFILES>
+0 0 libxdelta2 <NOFILES>
+0 0 libgda2-common <NOFILES>
+0 0 libinstrudeo0 <NOFILES>
+0 0 xserver-xorg-video-via <NOFILES>
+0 0 libxrender1 <NOFILES>
+0 0 libavahi-qt3-1 <NOFILES>
+0 0 libloudmouth1-0 <NOFILES>
+0 0 ttf-freefont <NOFILES>
+0 0 c++-annotations-dvi <NOFILES>
+0 0 gstreamer0.10-gnomevfs <NOFILES>
+0 0 libisccfg1 <NOFILES>
+0 0 libuuid1 <NOFILES>
+0 0 libcpufreq0 <NOFILES>
+0 0 libgcj7-jar <NOFILES>
+0 0 xserver-xorg-video-tdfx <NOFILES>
+0 0 iceweasel-l10n-en-gb <NOFILES>
+0 0 libxext6 <NOFILES>
+0 0 libselinux1 <NOFILES>
+0 0 libvcdinfo0 <NOFILES>
+0 0 ipw3945-source <NOFILES>
+0 0 libparted1.7-1 <NOFILES>
+0 0 recode-doc <NOFILES>
+0 0 libcamel1.2-8 <NOFILES>
+0 0 preview-latex-style <NOFILES>
+0 0 iso-codes <NOFILES>
+0 0 apache2 <NOFILES>
+0 0 xfonts-encodings <NOFILES>
+0 0 menu-xdg <NOFILES>
+0 0 cpp-doc <NOFILES>
+0 0 libeel2-data <NOFILES>
+0 0 libgtkmm1.2-0c2a <NOFILES>
+0 0 libgcj-bc <NOFILES>
+0 0 libexif12 <NOFILES>
+0 0 libgsmme1c2a <NOFILES>
+0 0 gnuplot <NOFILES>
+0 0 libglitz1 <NOFILES>
+0 0 liblink-grammar4 <NOFILES>
+0 0 libxmuu1 <NOFILES>
+0 0 libflash0c2 <NOFILES>
+0 0 python-pastedeploy <NOFILES>
+0 0 libgtk1.2-common <NOFILES>
+0 0 libpt-1.10.0 <NOFILES>
+0 0 libneon25 <NOFILES>
+0 0 gfortran-doc <NOFILES>
+0 0 python-tz <NOFILES>
+0 0 libatk1.0-0 <NOFILES>
+0 0 liborbit0 <NOFILES>
+0 0 kamera <NOFILES>
+0 0 libxml++2.6-2 <NOFILES>
+0 0 libidl0 <NOFILES>
+0 0 build-essential <NOFILES>
+0 0 libxrandr2 <NOFILES>
+0 0 libxslt1.1 <NOFILES>
+0 0 libdns32 <NOFILES>
+0 0 libgnome-keyring0 <NOFILES>
+0 0 libsigc++-1.2-5c2 <NOFILES>
+0 0 libguile-ltdl-1 <NOFILES>
+0 0 gamin <NOFILES>
+0 0 bzrtools <NOFILES>
+0 0 python-wxgtk2.6 <NOFILES>
+0 0 apache2-doc <NOFILES>
+0 0 libnm-glib0 <NOFILES>
+0 0 xserver-xorg-video-apm <NOFILES>
+0 0 texlive-pstricks <NOFILES>
+0 0 libgail17 <NOFILES>
+0 0 libk3b2 <NOFILES>
+0 0 python-all-dev <NOFILES>
+0 0 libksba8 <NOFILES>
+0 0 libsdl-ttf2.0-0 <NOFILES>
+0 0 libboost-filesystem1.33.1 <NOFILES>
+0 0 libpisync0 <NOFILES>
+0 0 python2.4-examples <NOFILES>
+0 0 libgnomeui-common <NOFILES>
+0 0 libexif-ruby <NOFILES>
+0 0 libgnomeprintui2.2-0 <NOFILES>
+0 0 libstdc++6 <NOFILES>
+0 0 gnome-backgrounds <NOFILES>
+0 0 libxxf86misc1 <NOFILES>
+0 0 libedata-cal1.2-5 <NOFILES>
+0 0 libdiscover1 <NOFILES>
+0 0 libbind9-0 <NOFILES>
+0 0 libquicktime0 <NOFILES>
+0 0 totem <NOFILES>
+0 0 iceweasel-torbutton <NOFILES>
+0 0 r-cran-zoo <NOFILES>
+0 0 iamerican <NOFILES>
+0 0 libisc32 <NOFILES>
+0 0 dict-jargon <NOFILES>
+0 0 python-turbokid <NOFILES>
+0 0 libpoppler0c2 <NOFILES>
+0 0 app-install-data <NOFILES>
+0 0 r-cran-survival <NOFILES>
+0 0 libhdf5-serial-1.6.5-0 <NOFILES>
+0 0 libqt4-sql <NOFILES>
+0 0 gstreamer0.10-alsa <NOFILES>
+0 0 zlib1g <NOFILES>
+0 0 python-mapscript <NOFILES>
+0 0 libatspi1.0-0 <NOFILES>
+0 0 libcairo2 <NOFILES>
+0 0 libungif4g <NOFILES>
+0 0 gnome-desktop-environment <NOFILES>
+0 0 libgtkhtml2-0 <NOFILES>
+0 0 libglibmm-2.4-1c2a <NOFILES>
+0 0 libswt-gtk-3.2-jni <NOFILES>
+0 0 libgtkglext1 <NOFILES>
+0 0 libjpeg62 <NOFILES>
+0 0 gtkhtml3.8 <NOFILES>
+0 0 xfonts-75dpi <NOFILES>
+0 0 python-pyrss2gen <NOFILES>
+0 0 r-cran-multcomp <NOFILES>
+0 0 php5-mapscript <NOFILES>
+0 0 libdballe-core-doc <NOFILES>
+0 0 libfontconfig1 <NOFILES>
+0 0 php5-gd <NOFILES>
+0 0 libidn11 <NOFILES>
+0 0 libgdl-1-common <NOFILES>
+0 0 libavahi-compat-howl0 <NOFILES>
+0 0 xulrunner-gnome-support <NOFILES>
+0 0 libgnomeprintui2-ruby <NOFILES>
+0 0 cupsys-common <NOFILES>
+0 0 libgdk-pixbuf2 <NOFILES>
+0 0 libhal-storage1 <NOFILES>
+0 0 libisccfg30 <NOFILES>
+0 0 libnewt0.52 <NOFILES>
+0 0 libchm1 <NOFILES>
+0 0 libao2 <NOFILES>
+0 0 libacl1 <NOFILES>
+0 0 libhdf4g <NOFILES>
+0 0 doc-debian <NOFILES>
+0 0 libedata-book1.2-2 <NOFILES>
+0 0 blt <NOFILES>
+0 0 emacsen-common <NOFILES>
+0 0 libdbus-qt-1-1c2 <NOFILES>
+0 0 libnetpbm10 <NOFILES>
+0 0 python-deb822 <NOFILES>
+0 0 hicolor-icon-theme <NOFILES>
+0 0 libboost-dev <NOFILES>
+0 0 libc6-i386 <NOFILES>
+0 0 wormux-data <NOFILES>
+0 0 libservlet2.4-java <NOFILES>
+0 0 libgc1c2 <NOFILES>
+0 0 libswt-gtk-3.2-java <NOFILES>
+0 0 dict-gcide <NOFILES>
+0 0 libdballe-core3 <NOFILES>
+0 0 dict-moby-thesaurus <NOFILES>
+0 0 libxerces27-dev <NOFILES>
+0 0 libavahi-common-data <NOFILES>
+0 0 libgtksourceview1-ruby <NOFILES>
+0 0 libbz2-1.0 <NOFILES>
+0 0 grub-doc <NOFILES>
+0 0 xserver-xorg-video-i810 <NOFILES>
+0 0 gsfonts <NOFILES>
+0 0 libgd2-xpm <NOFILES>
+0 0 libgutenprintui2-1 <NOFILES>
+0 0 libegroupwise1.2-10 <NOFILES>
+0 0 refblas3 <NOFILES>
+0 0 autotools-dev <NOFILES>
+0 0 libart2 <NOFILES>
+0 0 docbook <NOFILES>
+0 0 r-cran-rpart <NOFILES>
+0 0 texpower-manual <NOFILES>
+0 0 python-pexpect <NOFILES>
+0 0 liborbit2 <NOFILES>
+0 0 librpcsecgss3 <NOFILES>
+0 0 libnet6-1.3-0 <NOFILES>
+0 0 rubybook <NOFILES>
+0 0 python-soappy <NOFILES>
+0 0 make-doc <NOFILES>
+0 0 libssl0.9.8 <NOFILES>
+0 0 libdbus-1-3 <NOFILES>
+0 0 adept <NOFILES>
+0 0 libgl1-mesa-glx <NOFILES>
+0 0 ttf-arphic-uming <NOFILES>
+0 0 ceferino-data <NOFILES>
+0 0 libglade2-0 <NOFILES>
+0 0 texlive-generic-extra <NOFILES>
+0 0 libicu36 <NOFILES>
+0 0 myspell-it <NOFILES>
+0 0 vim-doc <NOFILES>
+0 0 libglu1-xorg-dev <NOFILES>
+0 0 libtdb1 <NOFILES>
+0 0 libarts1-akode <NOFILES>
+0 0 xserver-xorg-video-siliconmotion <NOFILES>
+0 0 openoffice.org-thesaurus-it <NOFILES>
+0 0 capplets-data <NOFILES>
+0 0 gsfonts-x11 <NOFILES>
+0 0 python-wxversion <NOFILES>
+0 0 dballe-common <NOFILES>
+0 0 ipw3945-modules-2.6.20.1enrico <NOFILES>
+0 0 r-recommended <NOFILES>
+0 0 libgrib0 <NOFILES>
+0 0 libxxf86vm1 <NOFILES>
+0 0 libavc1394-0 <NOFILES>
+0 0 gfortran-4.1-doc <NOFILES>
+0 0 libgnome-desktop-2 <NOFILES>
+0 0 system-tools-backends <NOFILES>
+0 0 libpcap-dev <NOFILES>
+0 0 mplayer-doc <NOFILES>
+0 0 libsqlite0 <NOFILES>
+0 0 gutenprint-locales <NOFILES>
+0 0 r-cran-lmtest <NOFILES>
+0 0 librpm4 <NOFILES>
+0 0 libopencdk8 <NOFILES>
+0 0 xserver-xorg-video-chips <NOFILES>
+0 0 dict-foldoc <NOFILES>
+0 0 cgi-mapserver <NOFILES>
+0 0 libperl5.8 <NOFILES>
+END-POPULARITY-CONTEST-0 TIME:1181000000
diff --git a/ept/test-main.h b/ept/test-main.h
new file mode 100644
index 0000000..7b2afbc
--- /dev/null
+++ b/ept/test-main.h
@@ -0,0 +1,186 @@
+// -*- C++ -*-
+#include <unistd.h>
+#include <sys/wait.h>
+
+struct Main {
+
+ int suite, test;
+ int status[2];
+ int confirm[2];
+ FILE *f_confirm, *f_status;
+ pid_t pid;
+ int argc;
+ char **argv;
+ pid_t finished;
+ int status_code;
+ int test_ok;
+
+ int suite_ok, suite_failed;
+ int total_ok, total_failed;
+
+ int announced_suite;
+ std::string current;
+
+ RunAll all;
+
+ Main() : suite(0), test(0) {
+ suite_ok = suite_failed = 0;
+ total_ok = total_failed = 0;
+ test_ok = 0;
+ announced_suite = -1;
+ }
+
+ void child() {
+ close( status[0] );
+ close( confirm[1] );
+ all.status = fdopen( status[1], "w" );
+ all.confirm = fdopen( confirm[0], "r" );
+ if ( argc > 1 ) {
+ RunSuite *s = all.findSuite( argv[1] );
+ if (!s) {
+ std::cerr << "No such suite " << argv[1] << std::endl;
+ // todo dump possible suites?
+ exit(250);
+ }
+ all.runSuite( *s, test, 0, 1 );
+ }
+ if ( argc == 1 ) {
+ all.runFrom( suite, test );
+ }
+ fprintf( all.status, "done\n" );
+ exit( 0 );
+ }
+
+ void testDied()
+ {
+ /* std::cerr << "test died: " << test << "/"
+ << suites[suite].testCount << std::endl; */
+ if ( WIFEXITED( status_code ) ) {
+ if ( WEXITSTATUS( status_code ) == 250 )
+ exit( 3 );
+ if ( WEXITSTATUS( status_code ) == 0 )
+ return;
+ }
+ std::cout << "failed test: "<< current;
+ if ( WIFEXITED( status_code ) )
+ std::cout << " (exit status " << WEXITSTATUS( status_code ) << ")";
+ if ( WIFSIGNALED( status_code ) )
+ std::cout << " (caught signal " << WTERMSIG( status_code ) << ")";
+ std::cout << std::endl;
+ // re-announce the suite
+ announced_suite --;
+ ++ test; // continue with next test
+ test_ok = 0;
+ suite_failed ++;
+ }
+
+ void processStatus( const char *line ) {
+ if ( std::string("done") == line ) { // finished
+ finished = waitpid( pid, &status_code, 0 );
+ assert_eq( pid, finished );
+ assert( WIFEXITED( status_code ) );
+ assert_eq( WEXITSTATUS( status_code ), 0 );
+ std::cout << "overall " << total_ok << "/"
+ << total_ok + total_failed
+ << " ok" << std::endl;
+ exit( total_failed == 0 ? 0 : 1 );
+ }
+
+ if ( test_ok ) {
+ /* std::cerr << "test ok: " << test << "/"
+ << suites[suite].testCount << std::endl; */
+ std::cout << "." << std::flush;
+ suite_ok ++;
+ ++ test;
+ test_ok = 0;
+ }
+
+ if ( line[0] == 's' ) {
+ if ( line[2] == 'd' ) {
+ std::cout << " " << suite_ok << "/" << suite_ok + suite_failed
+ << " ok" << std::endl;
+ ++ suite; test = 0;
+ assert( !test_ok );
+ total_ok += suite_ok;
+ total_failed += suite_failed;
+ suite_ok = suite_failed = 0;
+ }
+ if ( line[2] == 's' ) {
+ if ( announced_suite < suite ) {
+ std::cout << line + 5 << ": " << std::flush;
+ announced_suite = suite;
+ }
+ }
+ }
+ if ( line[0] == 't' ) {
+ if ( line[2] == 'd' ) {
+ fprintf( f_confirm, "ack\n" );
+ fflush( f_confirm );
+ test_ok = 1;
+ }
+ if ( line[2] == 's' ) {
+ fprintf( f_confirm, "ack\n" );
+ fflush( f_confirm );
+ current = line + 5;
+ }
+ }
+ }
+
+ void parent() {
+ close( status[1] );
+ close( confirm[0] );
+ f_status = fdopen( status[0], "r" );
+ f_confirm = fdopen( confirm[1], "w" );
+ char *line = 0;
+ size_t n;
+
+ while ( true ) {
+ if ( getline( &line, &n, f_status ) < 0 ) {
+ finished = waitpid( pid, &status_code, 0 );
+ if ( finished < 0 ) {
+ perror( "waitpid failed" );
+ exit( 5 );
+ }
+ assert_eq( pid, finished );
+ testDied();
+ /* std::cerr << "child will be reforked at: "
+ << suite << " " << test << std::endl; */
+ return;
+ } else {
+ // std::cerr << "reading pipe: " << line;
+ line[ strlen( line ) - 1 ] = 0;
+ processStatus( line );
+ free( line );
+ }
+ line = 0;
+ }
+ }
+
+ int main( int _argc, char **_argv )
+ {
+ argc = _argc;
+ argv = _argv;
+
+ all.suiteCount = sizeof(suites)/sizeof(RunSuite);
+ all.suites = suites;
+
+ while (true) {
+ if ( pipe( status ) )
+ return 1;
+ if ( pipe( confirm ) )
+ return 1;
+ pid = fork();
+ if ( pid < 0 )
+ return 2;
+ if ( pid == 0 ) { // child
+ child();
+ } else {
+ parent();
+ }
+ }
+ }
+};
+
+int main( int argc, char **argv ) {
+ return Main().main( argc, argv );
+}
diff --git a/ept/test-runner.h b/ept/test-runner.h
new file mode 100644
index 0000000..8fe4d12
--- /dev/null
+++ b/ept/test-runner.h
@@ -0,0 +1,63 @@
+#include <unistd.h>
+
+#define RUN(x, y) x().y()
+
+struct RunTest {
+ const char *name;
+ void (*run)();
+};
+
+struct RunSuite {
+ const char *name;
+ RunTest *tests;
+ int testCount;
+};
+
+struct RunAll {
+ RunSuite *suites;
+ int suiteCount;
+ FILE *status, *confirm;
+
+ RunSuite *findSuite( std::string name ) {
+ for ( int i = 0; i < suiteCount; ++i )
+ if ( suites[i].name == name )
+ return suites + i;
+ return 0;
+ }
+
+ void waitForAck() {
+ size_t n = 0; char *line = 0;
+ size_t read = getline( &line, &n, confirm );
+ assert_eq( read, 4 );
+ assert_eq( std::string( "ack\n" ), line );
+ free( line );
+ }
+
+ void runSuite( RunSuite &s, int fromTest, int suite, int suiteCount )
+ {
+ fprintf( status, "s/s: (%d/%d) %s\n", suite + 1, suiteCount, s.name );
+ for ( int i = fromTest; i < s.testCount; ++i ) {
+ fprintf( status, "t/s: (%d/%d) %s\n", i, s.testCount,
+ s.tests[i].name );
+ fflush( status );
+ waitForAck();
+ s.tests[i].run();
+ fprintf( status, "t/d: %s\n", s.tests[i].name );
+ fflush( status );
+ waitForAck();
+ // exit( 0 ); // TODO make this optional; safety vs
+ // performance tradeoff
+ }
+ fprintf( status, "s/d: %s\n", s.name );
+ }
+
+ void runFrom( int suite, int test )
+ {
+ for ( int i = suite; i < suiteCount; ++i ) {
+ assert( suite <= suiteCount );
+ runSuite( suites[i], test, i, suiteCount );
+ test = 0;
+ }
+ }
+};
+
diff --git a/ept/test.cpp b/ept/test.cpp
new file mode 100644
index 0000000..e201590
--- /dev/null
+++ b/ept/test.cpp
@@ -0,0 +1 @@
+int assertFailure = 0;
diff --git a/ept/test.h b/ept/test.h
new file mode 100644
index 0000000..b9bb131
--- /dev/null
+++ b/ept/test.h
@@ -0,0 +1,48 @@
+//#include <ept/core/apt.h>
+#include <ept/config.h>
+#include <ept/debtags/maint/path.h>
+
+#include <wibble/test.h>
+
+#include <apt-pkg/pkgcache.h>
+#include <apt-pkg/sourcelist.h>
+#include <apt-pkg/error.h>
+#include <apt-pkg/policy.h>
+#include <apt-pkg/cachefile.h>
+#include <apt-pkg/progress.h>
+#include <apt-pkg/pkgcachegen.h>
+#include <apt-pkg/init.h>
+
+
+#ifndef EPT_TEST_H
+#define EPT_TEST_H
+
+struct AptTestEnvironment {
+ //ept::core::AptDatabase db;
+ AptTestEnvironment() {
+ pkgInitConfig (*_config);
+ _config->Set("Initialized", 1);
+ _config->Set("Dir", TEST_ENV_DIR);
+ _config->Set("Dir::Cache", "cache");
+ _config->Set("Dir::State", "state");
+ _config->Set("Dir::Etc", "etc");
+ _config->Set("Dir::State::status", TEST_ENV_DIR "dpkg-status");
+ pkgInitSystem (*_config, _system);
+ }
+};
+
+struct DebtagsTestEnvironment : AptTestEnvironment {
+ ept::debtags::Path::OverrideDebtagsSourceDir odsd;
+ ept::debtags::Path::OverrideDebtagsIndexDir odid;
+ ept::debtags::Path::OverrideDebtagsUserSourceDir odusd;
+ ept::debtags::Path::OverrideDebtagsUserIndexDir oduid;
+
+ DebtagsTestEnvironment()
+ : odsd( TEST_ENV_DIR "debtags/"),
+ odid( TEST_ENV_DIR "debtags/"),
+ odusd( TEST_ENV_DIR "debtags/"),
+ oduid( TEST_ENV_DIR "debtags/")
+ {}
+};
+
+#endif
diff --git a/ept/textsearch/extraindexers.cc b/ept/textsearch/extraindexers.cc
new file mode 100644
index 0000000..4fdfdd4
--- /dev/null
+++ b/ept/textsearch/extraindexers.cc
@@ -0,0 +1,58 @@
+
+/** @file
+ * @author Enrico Zini <enrico@enricozini.org>
+ * Fast full-text search
+ */
+
+/*
+ * Copyright (C) 2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/textsearch/extraindexers.h>
+#include <ept/apt/packagerecord.h>
+#include <ept/debtags/debtags.h>
+
+using namespace std;
+using namespace ept::debtags;
+
+namespace ept {
+namespace textsearch {
+
+void AptTagsExtraIndexer::operator()(Xapian::Document& doc, const apt::PackageRecord& rec) const
+{
+ // Index tags as well
+ set<string> tags = rec.tag();
+ for (set<string>::const_iterator ti = tags.begin();
+ ti != tags.end(); ++ti)
+ doc.add_term("XT"+*ti);
+}
+
+void DebtagsExtraIndexer::operator()(Xapian::Document& doc, const apt::PackageRecord& rec) const
+{
+ // Index tags as well
+ set<Tag> tags = debtags.getTagsOfItem(doc.get_data());
+ for (set<Tag>::const_iterator ti = tags.begin();
+ ti != tags.end(); ++ti)
+ doc.add_term("XT"+ti->fullname());
+}
+
+}
+}
+
+#include <ept/debtags/debtags.tcc>
+
+// vim:set ts=4 sw=4:
diff --git a/ept/textsearch/extraindexers.h b/ept/textsearch/extraindexers.h
new file mode 100644
index 0000000..ce1d042
--- /dev/null
+++ b/ept/textsearch/extraindexers.h
@@ -0,0 +1,51 @@
+#ifndef EPT_TEXTSEARCH_EXTRAINDEXERS_H
+#define EPT_TEXTSEARCH_EXTRAINDEXERS_H
+
+/** @file
+ * @author Enrico Zini <enrico@enricozini.org>
+ * Fast full-text search
+ */
+
+/*
+ * Copyright (C) 2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/textsearch/textsearch.h>
+
+namespace ept {
+namespace debtags {
+class Debtags;
+}
+namespace textsearch {
+
+struct AptTagsExtraIndexer : public TextSearch::ExtraIndexer
+{
+ virtual void operator()(Xapian::Document& doc, const apt::PackageRecord& rec) const;
+};
+
+struct DebtagsExtraIndexer : public TextSearch::ExtraIndexer
+{
+ const debtags::Debtags& debtags;
+ DebtagsExtraIndexer(const debtags::Debtags& debtags) : debtags(debtags) {}
+ virtual void operator()(Xapian::Document& doc, const apt::PackageRecord& rec) const;
+};
+
+}
+}
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/ept/textsearch/maint/path.cc b/ept/textsearch/maint/path.cc
new file mode 100644
index 0000000..4b82ba1
--- /dev/null
+++ b/ept/textsearch/maint/path.cc
@@ -0,0 +1,93 @@
+// -*- mode: c++; indent-tabs-mode: t -*-
+
+/** \file
+ * popcon paths
+ */
+
+/*
+ * Copyright (C) 2005,2006,2007 Enrico Zini <enrico@debian.org>, Peter Rockai <me@mornfall.net>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/config.h>
+#include <ept/textsearch/maint/path.h>
+
+#include <wibble/exception.h>
+#include <wibble/sys/fs.h>
+#include <wibble/string.h>
+
+#include <cstdio>
+#include <cerrno>
+
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <unistd.h>
+
+using namespace std;
+using namespace wibble;
+
+namespace ept {
+namespace textsearch {
+
+Path &Path::instance() {
+ if (!s_instance) {
+ s_instance = new Path;
+ instance().m_indexDir = TEXTSEARCH_DB_DIR;
+ }
+ return *s_instance;
+}
+
+int Path::access( const std::string &s, int m )
+{
+ return ::access( s.c_str(), m );
+}
+
+time_t Path::indexTimestamp()
+{
+ string tsfile = str::joinpath(instance().indexDir(), "update-timestamp");
+ std::auto_ptr<struct stat> st = wibble::sys::fs::stat(tsfile);
+ if (st.get())
+ return st->st_mtime;
+ else
+ return 0;
+}
+
+void Path::setTimestamp(time_t ts)
+{
+ string tsfile = str::joinpath(instance().indexDir(), "/update-timestamp");
+ FILE* out = fopen(tsfile.c_str(), "wt");
+ if (!out)
+ throw wibble::exception::File(tsfile, "opening file for truncate/writing");
+ if (fprintf(out, "%ld\n", ts) < 0)
+ throw wibble::exception::File(tsfile, "writing the modification time");
+ if (fclose(out) < 0)
+ throw wibble::exception::File(tsfile, "closing the file");
+}
+
+void Path::setIndexDir( const std::string &s )
+{
+ instance().m_indexDir = s;
+}
+
+std::string Path::indexDir() { return instance().m_indexDir; }
+std::string Path::index() { return str::joinpath(instance().m_indexDir, "/index"); }
+
+Path *Path::s_instance = 0;
+
+}
+}
+
+// vim:set ts=4 sw=4:
diff --git a/ept/textsearch/maint/path.h b/ept/textsearch/maint/path.h
new file mode 100644
index 0000000..468d271
--- /dev/null
+++ b/ept/textsearch/maint/path.h
@@ -0,0 +1,74 @@
+// -*- mode: c++; indent-tabs-mode: t -*-
+/** \file
+ * popcon paths
+ */
+
+/*
+ * Copyright (C) 2005,2006,2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#ifndef EPT_TEXTSEARCH_PATH_H
+#define EPT_TEXTSEARCH_PATH_H
+
+#include <string>
+
+struct stat;
+
+namespace ept {
+namespace textsearch {
+
+/**
+ * Singleton class to configure and access the various Popcon paths
+ */
+class Path
+{
+public:
+ static std::string indexDir();
+ static std::string index();
+
+ // Directory where Popcon source data is found
+ static void setIndexDir( const std::string &s );
+
+ static int access( const std::string &, int );
+ static time_t indexTimestamp();
+ static void setTimestamp(time_t ts);
+
+ // RAII-style classes to temporarily override directories
+ class OverrideIndexDir
+ {
+ std::string old;
+ public:
+ OverrideIndexDir(const std::string& path) : old(Path::indexDir())
+ {
+ Path::setIndexDir(path);
+ }
+ ~OverrideIndexDir() { Path::setIndexDir(old); }
+ };
+
+protected:
+ static Path *s_instance;
+ static Path &instance();
+
+ // Directory where Popcon source data is found
+ std::string m_indexDir;
+};
+
+}
+}
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/ept/textsearch/textsearch.cc b/ept/textsearch/textsearch.cc
new file mode 100644
index 0000000..adbe235
--- /dev/null
+++ b/ept/textsearch/textsearch.cc
@@ -0,0 +1,256 @@
+
+/** @file
+ * @author Enrico Zini <enrico@enricozini.org>
+ * Fast full-text search
+ */
+
+/*
+ * Copyright (C) 2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/textsearch/textsearch.h>
+#include <ept/textsearch/maint/path.h>
+#include <ept/apt/apt.h>
+#include <ept/apt/packagerecord.h>
+//#include <ept/debtags/debtags.h>
+
+#include <wibble/regexp.h>
+#include <cctype>
+#include <cmath>
+
+#include <xapian/queryparser.h>
+
+#include <algorithm>
+
+#include <iostream>
+
+using namespace std;
+using namespace ept::apt;
+using namespace ept::debtags;
+
+namespace ept {
+namespace textsearch {
+
+size_t max_index = 0;
+
+TextSearch::TextSearch()
+ : m_timestamp(0), m_stem("en")
+{
+ m_timestamp = Path::indexTimestamp();
+ if (m_timestamp)
+ m_db.add_database(Xapian::Database(Path::index()));
+}
+
+std::string TextSearch::toLower(const std::string& str)
+{
+ std::string res;
+ res.reserve(str.size());
+ for (std::string::const_iterator i = str.begin(); i != str.end(); ++i)
+ res += tolower(*i);
+ return res;
+}
+
+bool TextSearch::needsRebuild(apt::Apt& apt)
+{
+ return apt.timestamp() > m_timestamp;
+}
+
+void TextSearch::normalize_and_add(Xapian::Document& doc, const std::string& term, int& pos) const
+{
+ string t = TextSearch::toLower(term);
+ string s = m_stem(t);
+ doc.add_term(t);
+ if (s != t)
+ doc.add_term(s);
+}
+
+bool TextSearch::rebuildIfNeeded(apt::Apt& apt, const std::vector<const TextSearch::ExtraIndexer*>& extraIndexers)
+{
+ // Check if a rebuild is needed, and keep a copy of the APT timestamp for
+ // saving later
+ time_t aptts = apt.timestamp();
+ if (aptts <= m_timestamp)
+ return false;
+
+ // Reindex
+ Xapian::WritableDatabase database(Xapian::Flint::open(Path::index(), Xapian::DB_CREATE_OR_OPEN));
+ Xapian::TermGenerator termgen;
+ termgen.set_stemmer(m_stem);
+ //database.begin_transaction();
+ PackageRecord rec;
+ size_t count = 0;
+ for (Apt::record_iterator i = apt.recordBegin();
+ i != apt.recordEnd(); ++i, ++count)
+ {
+ // If we are testing, we can set a limit to how many packages we index,
+ // to avoid it taking too much time
+ if (max_index != 0 && count > max_index)
+ break;
+
+ rec.scan(*i);
+
+ Xapian::Document doc;
+ doc.set_data(rec.package());
+
+ string pkgid = "XP" + rec.package();
+ //std::cerr << "Add " << pkgid << ": " << idx << std::endl;
+ doc.add_term(pkgid);
+
+ // Index tags as well
+ set<string> tags = rec.tag();
+ for (set<string>::const_iterator ti = tags.begin();
+ ti != tags.end(); ++ti)
+ doc.add_term("XT"+*ti);
+
+ termgen.set_document(doc);
+ termgen.index_text_without_positions(rec.package());
+ termgen.index_text_without_positions(rec.description());
+
+ // Add the values
+ doc.add_value(VAL_APT_INSTALLED_SIZE, Xapian::sortable_serialise(rec.installedSize()));
+ doc.add_value(VAL_APT_PACKAGE_SIZE, Xapian::sortable_serialise(rec.packageSize()));
+
+ if (m_timestamp)
+ database.replace_document(pkgid, doc);
+ else
+ database.add_document(doc);
+ }
+
+ //database.commit_transaction();
+
+ if (!m_timestamp)
+ m_db.add_database(Xapian::Database(Path::index()));
+ else
+ m_db.reopen();
+
+ m_timestamp = aptts;
+
+ Path::setTimestamp(aptts);
+
+ return true;
+}
+
+Xapian::Query TextSearch::makeORQuery(const std::string& keywords) const
+{
+ wibble::Tokenizer tok(keywords, "[A-Za-z0-9_-]+", REG_EXTENDED);
+ return makeORQuery(tok.begin(), tok.end());
+}
+
+Xapian::Query TextSearch::makePartialORQuery(const std::string& keywords) const
+{
+ wibble::Tokenizer tok(keywords, "[A-Za-z0-9_-]+", REG_EXTENDED);
+ vector<string> tokens;
+ // FIXME: make the Tokenizer iterators properly iterable
+ for (wibble::Tokenizer::const_iterator i = tok.begin();
+ i != tok.end(); ++i)
+ tokens.push_back(*i);
+ // Add all the terms starting with 'last'
+ if (!tokens.empty())
+ {
+ string& last = *tokens.rbegin();
+ if (last.size() == 1)
+ // Ignore one-letter partial terms: they make the query uselessly
+ // large and slow, and it's worth just to wait for more characters
+ // to come
+ tokens.resize(tokens.size() - 1);
+ else
+ copy(m_db.allterms_begin(last), m_db.allterms_end(last), back_inserter(tokens));
+ /*
+ for (Xapian::TermIterator t = m_db.allterms_begin(last);
+ t != m_db.allterms_end(last); ++t)
+ tokens.push_back(*t);
+ */
+ }
+ return makeORQuery(tokens.begin(), tokens.end());
+}
+
+Xapian::docid TextSearch::docidByName(const std::string& pkgname) const
+{
+ Xapian::PostingIterator i = m_db.postlist_begin("XP"+pkgname);
+ if (i == m_db.postlist_end("XP"+pkgname))
+ return 0;
+ else
+ return *i;
+}
+
+struct TagFilter : public Xapian::ExpandDecider
+{
+ virtual bool operator()(const std::string &term) const { return term[0] == 'T'; }
+};
+
+static TagFilter tagFilter;
+
+vector<string> TextSearch::expand(Xapian::Enquire& enq) const
+{
+ Xapian::RSet rset;
+ // Get the top 5 results as 'good ones' to compute the search expansion
+ Xapian::MSet mset = enq.get_mset(0, 5);
+ for (Xapian::MSet::iterator i = mset.begin(); i != mset.end(); ++i)
+ rset.add_document(i);
+ // Get the expanded set, only expanding the query with tag names
+ Xapian::ESet eset = enq.get_eset(5, rset, &tagFilter);
+ vector<string> res;
+ for (Xapian::ESetIterator i = eset.begin(); i != eset.end(); ++i)
+ res.push_back(*i);
+ return res;
+}
+
+Xapian::Query TextSearch::makeRelatedQuery(const std::string& pkgname) const
+{
+ Xapian::Enquire enquire(db());
+
+ // Retrieve the document for the given package
+ enquire.set_query(Xapian::Query("XP"+pkgname));
+ Xapian::MSet matches = enquire.get_mset(0, 1);
+ Xapian::MSetIterator mi = matches.begin();
+ if (mi == matches.end()) return Xapian::Query();
+ Xapian::Document doc = mi.get_document();
+
+ // Return the query to get the list of similar documents
+ return Xapian::Query(Xapian::Query::OP_OR, doc.termlist_begin(), doc.termlist_end());
+}
+
+double TextSearch::getDoubleValue(const std::string& pkgname, Xapian::valueno val_id) const
+{
+ Xapian::docid id = docidByName(pkgname);
+ if (id == 0)
+ return 0.0;
+ Xapian::Document doc = db().get_document(id);
+ string val = doc.get_value(val_id);
+ if (val.empty())
+ return 0.0;
+ else
+ return Xapian::sortable_unserialise(val);
+}
+
+int TextSearch::getIntValue(const std::string& pkgname, Xapian::valueno val_id) const
+{
+ Xapian::docid id = docidByName(pkgname);
+ if (id == 0)
+ return 0;
+ Xapian::Document doc = db().get_document(id);
+ string val = doc.get_value(val_id);
+ if (val.empty())
+ return 0;
+ else
+ return (int)nearbyint(Xapian::sortable_unserialise(val));
+}
+
+}
+}
+
+// vim:set ts=4 sw=4:
diff --git a/ept/textsearch/textsearch.h b/ept/textsearch/textsearch.h
new file mode 100644
index 0000000..6f61e02
--- /dev/null
+++ b/ept/textsearch/textsearch.h
@@ -0,0 +1,219 @@
+#ifndef EPT_TEXTSEARCH_TEXTSEARCH_H
+#define EPT_TEXTSEARCH_TEXTSEARCH_H
+
+/** @file
+ * @author Enrico Zini <enrico@enricozini.org>
+ * Fast full-text search
+ */
+
+/*
+ * Copyright (C) 2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <xapian.h>
+#include <vector>
+#include <string>
+
+namespace ept {
+namespace apt {
+class Apt;
+class PackageRecord;
+}
+namespace debtags {
+class Debtags;
+}
+namespace textsearch {
+
+// Allocate value indexes for known values
+const Xapian::valueno VAL_APT_INSTALLED_SIZE = 1;
+const Xapian::valueno VAL_APT_PACKAGE_SIZE = 2;
+const Xapian::valueno VAL_POPCON = 10;
+const Xapian::valueno VAL_ITERATING_RATING = 20;
+const Xapian::valueno VAL_ITERATING_FUNCTIONALITY = 21;
+const Xapian::valueno VAL_ITERATING_USABILITY = 22;
+const Xapian::valueno VAL_ITERATING_SECURITY = 23;
+const Xapian::valueno VAL_ITERATING_PERFORMANCE = 24;
+const Xapian::valueno VAL_ITERATING_QUALITY = 25;
+const Xapian::valueno VAL_ITERATING_SUPPORT = 26;
+const Xapian::valueno VAL_ITERATING_ADOPTION = 27;
+// If you need to index a value and cannot edit this file, feel free to use any
+// value starting from 1000000
+
+
+/*
+Fallback on apt scan searches when index is not present
+
+Explicitly decide at instantiation (or at any other time) if a rebuild should
+be performed. Just adding a 'rebuildIfNeeded' method would be enough.
+
+17:14 #xapian < enrico> Hello. I'm finally in a position of writing a library to maintain
+ a xapian index with Debian package descriptions in a Debian system
+17:14 #xapian < enrico> I have a question, though
+17:14 #xapian < enrico> The descriptions change regularly as people run 'apt-get update'
+17:15 #xapian < enrico> I'd need to have a way to update the description index after
+ apt-get update, without rebuilding it from scratch
+17:15 #xapian < enrico> Is there some documentation on how to do that? I can't exactly
+ tell Xapian "the new description for package foo is this" because
+ I'd need the xapian id
+19:11 #xapian < omega> you can add a unique term with a boolean prefix?
+19:11 #xapian < omega> like Qpackage-name
+19:11 #xapian < omega> then you search for it and replace_document
+19:24 #xapian < richardb> Or indeed, you use the "replace_document()" form which takes a
+ unique_id term.
+19:25 #xapian < richardb> Xapian::docid replace_document(const std::string &
+ unique_term,
+19:25 #xapian < richardb> const Xapian::Document &
+ document);
+19:43 #xapian < enrico> unique term
+19:43 #xapian < enrico> nice!
+19:44 #xapian < enrico> can I use a non-alpha prefix, like :package-name ?
+19:45 #xapian < enrico> or pkg:package-name
+19:45 #xapian < enrico> I suppose I can
+*/
+
+/**
+ * Maintains and accesses a Xapian index of package descriptions.
+ *
+ * Contrarily to Debtags and Popcon, TextSearch does not attempt to create the
+ * index in the home directory if no system index is found and it is not
+ * running as root: this is to avoid secretly building large indexes (>50Mb)
+ * in the home directory of users.
+ *
+ * The idea then is to have root keep the index up to date, possibly running a
+ * reindexing tool once a day, or after an apt-get update.
+ *
+ * This works because the full text search index is useful even if it is
+ * slightly out of date.
+ */
+class TextSearch
+{
+protected:
+ time_t m_timestamp;
+ Xapian::Database m_db;
+ Xapian::Stem m_stem;
+
+ /// Return a lowercased copy of the string
+ static std::string toLower(const std::string& str);
+
+ /**
+ * Add normalised tokens computed from the string to the document doc.
+ *
+ * pos is used as a sequence generator for entering the token position in
+ * the document.
+ */
+ void normalize_and_add(Xapian::Document& doc, const std::string& term, int& pos) const;
+
+public:
+ struct ExtraIndexer
+ {
+ virtual ~ExtraIndexer() {}
+ virtual void operator()(Xapian::Document& doc, const apt::PackageRecord& rec) const = 0;
+ };
+
+ TextSearch();
+
+ /// Access the Xapian database
+ Xapian::Database& db() { return m_db; }
+
+ /// Access the Xapian database
+ const Xapian::Database& db() const { return m_db; }
+
+ /// Timestamp of when the Xapian database was last updated
+ time_t timestamp() const { return m_timestamp; }
+
+ /// Returns true if the index has data
+ bool hasData() const { return m_timestamp > 0; }
+
+ /// Returns true if the index is older than the Apt database information
+ bool needsRebuild(apt::Apt& apt);
+
+ /**
+ * Rebuild the index if needed.
+ *
+ * Allow to specify functors that contribute to the indexing.
+ *
+ * @note This requires write access to the index directory.
+ * @note This is not the main way to update the index: it is provided here
+ * only as a way to build a draft index for the library tests
+ */
+ bool rebuildIfNeeded(
+ apt::Apt& apt,
+ const std::vector<const ExtraIndexer*>& extraIndexers = std::vector<const ExtraIndexer*>());
+
+ /**
+ * Retrieve a Xapian docid by package name
+ */
+ Xapian::docid docidByName(const std::string& pkgname) const;
+
+ /**
+ * Tokenize the string and build an OR query with the resulting keywords
+ */
+ Xapian::Query makeORQuery(const std::string& keywords) const;
+
+ /**
+ * Tokenize the string and build an OR query with the resulting keywords.
+ *
+ * The last token in keywords is considered to be typed only partially, to
+ * implement proper search-as-you-type.
+ */
+ Xapian::Query makePartialORQuery(const std::string& keywords) const;
+
+ /**
+ * Build a query with the given keywords, specified as iterators of strings
+ */
+ template<typename ITER>
+ Xapian::Query makeORQuery(const ITER& begin, const ITER& end) const
+ {
+ std::vector<std::string> terms;
+ // Insert both the lowercased and the stemmed lowercased query terms
+ for (ITER i = begin; i != end; ++i)
+ {
+ std::string t = toLower(*i);
+ std::string s = m_stem(t);
+ terms.push_back(t);
+ if (s != t)
+ terms.push_back("Z" + s);
+ }
+ return Xapian::Query(Xapian::Query::OP_OR, terms.begin(), terms.end());
+ }
+
+ /// Return a list of tag-based terms that can be used to expand an OR query
+ std::vector<std::string> expand(Xapian::Enquire& enq) const;
+
+// std::vector<std::string> similar(const std::string& pkg);
+
+ /**
+ * Create a query to look for packages similar to the given one
+ */
+ Xapian::Query makeRelatedQuery(const std::string& pkgname) const;
+
+ /**
+ * Get the integer value for
+ */
+ double getDoubleValue(const std::string& pkgname, Xapian::valueno val_id) const;
+
+ /**
+ * Get the integer value for
+ */
+ int getIntValue(const std::string& pkgname, Xapian::valueno val_id) const;
+};
+
+}
+}
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/ept/textsearch/textsearch.test.h b/ept/textsearch/textsearch.test.h
new file mode 100644
index 0000000..39516c3
--- /dev/null
+++ b/ept/textsearch/textsearch.test.h
@@ -0,0 +1,166 @@
+// -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+/*
+ * popcon test
+ *
+ * Copyright (C) 2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/test.h>
+#include <ept/textsearch/textsearch.h>
+#include <ept/textsearch/maint/path.h>
+#include <ept/apt/apt.h>
+#include <wibble/sys/fs.h>
+#include <set>
+
+namespace ept {
+namespace textsearch {
+extern size_t max_index;
+}
+}
+
+using namespace std;
+using namespace ept;
+using namespace ept::textsearch;
+using namespace ept::apt;
+
+struct DirMaker
+{
+ DirMaker(const std::string& name)
+ {
+ wibble::sys::fs::mkdirIfMissing(name, 0755);
+ }
+};
+
+struct TestTextsearch : AptTestEnvironment
+{
+ DirMaker md;
+ Path::OverrideIndexDir oid;
+ Apt apt;
+ TextSearch textsearch;
+
+ TestTextsearch()
+ : md( TEST_ENV_DIR "xapian"), oid( TEST_ENV_DIR "xapian")
+ {
+ try {
+ ept::textsearch::max_index = 1000;
+ textsearch.rebuildIfNeeded(apt);
+ } catch (Xapian::Error& e) {
+ cerr << e.get_type() << " " << e.get_msg() << " " << e.get_context() << endl;
+ throw;
+ }
+ }
+
+// Access an empty index
+ Test empty()
+ {
+ Path::OverrideIndexDir oid("./empty");
+ TextSearch empty;
+ assert_eq(empty.timestamp(), 0);
+ assert(!empty.hasData());
+ assert(empty.needsRebuild(apt));
+ /*
+ Xapian::Enquire enq(empty.db());
+ empty.search(enq, "apt");
+ Xapian::MSet matches = enq.get_mset(0, 100);
+ assert_eq(matches.size(), 0u);
+ */
+ }
+
+// Very basic access
+ Test basicAccess()
+ {
+ assert(textsearch.hasData());
+ assert(textsearch.timestamp() > 0);
+ assert(!textsearch.needsRebuild(apt));
+
+ Xapian::Enquire enq(textsearch.db());
+ enq.set_query(textsearch.makeORQuery("sgml"));
+ Xapian::MSet matches = enq.get_mset(0, 100);
+ assert(matches.size() > 0);
+
+ // See if the apt package is among the results
+ set<string> results;
+ for (Xapian::MSetIterator i = matches.begin(); i != matches.end(); ++i)
+ results.insert(i.get_document().get_data());
+ assert(results.find("sp") != results.end());
+ }
+
+// Alternate access using intermediate Xapian::Query objects
+ Test queryAccess()
+ {
+ Xapian::Enquire enq(textsearch.db());
+ enq.set_query(textsearch.makeORQuery("sgml"));
+ Xapian::MSet matches = enq.get_mset(0, 100);
+ assert(matches.size() > 0);
+
+ // See if the apt package is among the results
+ set<string> results;
+ for (Xapian::MSetIterator i = matches.begin(); i != matches.end(); ++i)
+ results.insert(i.get_document().get_data());
+ assert(results.find("sp") != results.end());
+ }
+
+// Try makePartialORQuery
+ Test partialOrQuery()
+ {
+ Xapian::Enquire enq(textsearch.db());
+ enq.set_query(textsearch.makePartialORQuery("sgml"));
+ Xapian::MSet matches = enq.get_mset(0, 100);
+ assert(matches.size() > 0);
+
+ // See if the apt package is among the results
+ set<string> results;
+ for (Xapian::MSetIterator i = matches.begin(); i != matches.end(); ++i)
+ results.insert(i.get_document().get_data());
+ assert(results.find("sp") != results.end());
+ }
+
+// Try docidByName
+ Test docidByName()
+ {
+ assert(textsearch.docidByName("sp") != 0);
+ assert_eq(textsearch.docidByName("thereisnopackagewiththisname"), 0u);
+ }
+
+// Access values
+ Test values()
+ {
+ assert(textsearch.hasData());
+ assert(textsearch.timestamp() > 0);
+ assert(!textsearch.needsRebuild(apt));
+
+ double dval;
+ dval = textsearch.getDoubleValue("autoconf", VAL_APT_INSTALLED_SIZE);
+ assert(dval == 2408);
+ dval = textsearch.getDoubleValue("autoconf", VAL_APT_PACKAGE_SIZE);
+ assert(dval == 741486);
+ assert_eq(textsearch.getDoubleValue("thereisnopackagewiththisname", VAL_APT_INSTALLED_SIZE), 0.0);
+ assert_eq(textsearch.getDoubleValue("thereisnopackagewiththisname", VAL_APT_PACKAGE_SIZE), 0.0);
+
+ int val;
+ val = textsearch.getIntValue("autoconf", VAL_APT_INSTALLED_SIZE);
+ assert(val == 2408);
+ val = textsearch.getIntValue("autoconf", VAL_APT_PACKAGE_SIZE);
+ assert(val == 741486);
+ cout << val;
+ assert_eq(textsearch.getIntValue("thereisnopackagewiththisname", VAL_APT_INSTALLED_SIZE), 0);
+ assert_eq(textsearch.getIntValue("thereisnopackagewiththisname", VAL_APT_PACKAGE_SIZE), 0);
+ }
+
+};
+
+// vim:set ts=4 sw=4:
diff --git a/ept/token.h b/ept/token.h
new file mode 100644
index 0000000..ecacc16
--- /dev/null
+++ b/ept/token.h
@@ -0,0 +1,55 @@
+// -*- C++ -*-
+#include <wibble/mixin.h>
+#include <string>
+
+#ifndef EPT_TOKEN_H
+#define EPT_TOKEN_H
+
+namespace ept {
+
+struct Token : wibble::mixin::Comparable< Token > {
+ std::string _id; // formatted as package[_version]
+ std::string id() const { return _id; }
+
+ Token() : _id( "" ) {}
+ Token( std::string s ) : _id( s ) {}
+
+ std::string version() const {
+ return _id.find( '_' ) == std::string::npos ? "" :
+ std::string( _id, _id.find( '_' ) + 1, _id.size() );
+ }
+
+ std::string package() const {
+ return std::string( _id, 0,
+ _id.find( '_' ) == std::string::npos ?
+ _id.size() : _id.find( '_' ) );
+ }
+
+ bool isDesktop() const {
+ return std::string( _id, 0, 8 ) == "desktop:";
+ }
+
+ std::string desktop() const {
+ return isDesktop() ? std::string( _id, 8, _id.size() ) : "";
+ }
+
+ bool hasVersion() const {
+ return version() != "";
+ }
+
+ bool valid() const {
+ return _id != "";
+ }
+
+ bool operator<=( const Token &o ) const {
+ return _id <= o._id;
+ }
+};
+
+}
+
+inline std::ostream &operator<<( std::ostream &o, const ept::Token &t ) {
+ return o << t.id();
+}
+
+#endif
diff --git a/rep/amber.png b/rep/amber.png
new file mode 100644
index 0000000..2cab170
--- /dev/null
+++ b/rep/amber.png
Binary files differ
diff --git a/rep/emerald.png b/rep/emerald.png
new file mode 100644
index 0000000..38ad4f4
--- /dev/null
+++ b/rep/emerald.png
Binary files differ
diff --git a/rep/ept/apt/apt.cc.gcov.html b/rep/ept/apt/apt.cc.gcov.html
new file mode 100644
index 0000000..ee60a5c
--- /dev/null
+++ b/rep/ept/apt/apt.cc.gcov.html
@@ -0,0 +1,707 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/apt/apt.cc</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/apt</a> - apt.cc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">323</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">76.8 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">248</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /** \file
+<span class="lineNum"> 2 </span> : * High-level front-end to libapt-pkg, as a data provider for the ept framework.
+<span class="lineNum"> 3 </span> : */
+<span class="lineNum"> 4 </span> :
+<span class="lineNum"> 5 </span> : /*
+<span class="lineNum"> 6 </span> : * Copyright (C) 2007,2008 Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 7 </span> : *
+<span class="lineNum"> 8 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 9 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 10 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 11 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 12 </span> : *
+<span class="lineNum"> 13 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 14 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 15 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 16 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 17 </span> : *
+<span class="lineNum"> 18 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 19 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 20 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 21 </span> : */
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : #include &lt;ept/apt/apt.h&gt;
+<span class="lineNum"> 24 </span> :
+<span class="lineNum"> 25 </span> : #include &lt;apt-pkg/error.h&gt;
+<span class="lineNum"> 26 </span> : #include &lt;apt-pkg/init.h&gt;
+<span class="lineNum"> 27 </span> : #include &lt;apt-pkg/progress.h&gt;
+<span class="lineNum"> 28 </span> : #include &lt;apt-pkg/sourcelist.h&gt;
+<span class="lineNum"> 29 </span> : #include &lt;apt-pkg/pkgcachegen.h&gt;
+<span class="lineNum"> 30 </span> : #include &lt;apt-pkg/policy.h&gt;
+<span class="lineNum"> 31 </span> : #include &lt;apt-pkg/cachefile.h&gt;
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : #include &lt;wibble/sys/fs.h&gt;
+<span class="lineNum"> 34 </span> : #include &lt;sys/stat.h&gt;
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : #include &lt;vector&gt;
+<span class="lineNum"> 37 </span> : #include &lt;algorithm&gt;
+<span class="lineNum"> 38 </span> :
+<span class="lineNum"> 39 </span> : #include &lt;iostream&gt;
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : using namespace std;
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : namespace ept {
+<span class="lineNum"> 44 </span> : namespace apt {
+<span class="lineNum"> 45 </span> : using core::aptTimestamp;
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span><span class="lineNoCov"> 0 : Exception::Exception(const std::string&amp; context) throw ()</span>
+<span class="lineNum"> 48 </span><span class="lineNoCov"> 0 : : Generic(context)</span>
+<span class="lineNum"> 49 </span> : {
+<span class="lineNum"> 50 </span> : // Concatenate all errors and warnings found
+<span class="lineNum"> 51 </span><span class="lineNoCov"> 0 : string err;</span>
+<span class="lineNum"> 52 </span><span class="lineNoCov"> 0 : while (!_error-&gt;empty())</span>
+<span class="lineNum"> 53 </span> : {
+<span class="lineNum"> 54 </span><span class="lineNoCov"> 0 : bool type = _error-&gt;PopMessage(err);</span>
+<span class="lineNum"> 55 </span><span class="lineNoCov"> 0 : if (type)</span>
+<span class="lineNum"> 56 </span><span class="lineNoCov"> 0 : m_message += &quot;E: &quot; + err + &quot;\n&quot;;</span>
+<span class="lineNum"> 57 </span> : else
+<span class="lineNum"> 58 </span><span class="lineNoCov"> 0 : m_message += &quot;W: &quot; + err + &quot;\n&quot;;</span>
+<span class="lineNum"> 59 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 60 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span><span class="lineCov"> 29 : static void aptInit ()</span>
+<span class="lineNum"> 63 </span> : {
+<span class="lineNum"> 64 </span><span class="lineCov"> 29 : if (_config-&gt;FindB(&quot;Initialized&quot;))</span>
+<span class="lineNum"> 65 </span><span class="lineCov"> 29 : return;</span>
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span><span class="lineNoCov"> 0 : if (!pkgInitConfig (*_config))</span>
+<span class="lineNum"> 68 </span><span class="lineNoCov"> 0 : throw Exception(&quot;initialising apt configuration&quot;);</span>
+<span class="lineNum"> 69 </span> :
+<span class="lineNum"> 70 </span><span class="lineNoCov"> 0 : _config-&gt;Set(&quot;Initialized&quot;, 1);</span>
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span> : /*
+<span class="lineNum"> 73 </span> : _config-&gt;Set(&quot;Dir&quot;, CACHE_DIR);
+<span class="lineNum"> 74 </span> : _config-&gt;Set(&quot;Dir::Cache&quot;, &quot;cache&quot;);
+<span class="lineNum"> 75 </span> : _config-&gt;Set(&quot;Dir::State&quot;, &quot;state&quot;);
+<span class="lineNum"> 76 </span> : _config-&gt;Set(&quot;Dir::Etc&quot;, &quot;etc&quot;);
+<span class="lineNum"> 77 </span> : _config-&gt;Set(&quot;Dir::State::status&quot;, CACHE_DIR &quot;dpkg-status&quot;);
+<span class="lineNum"> 78 </span> : */
+<span class="lineNum"> 79 </span><span class="lineNoCov"> 0 : if (!pkgInitSystem (*_config, _system))</span>
+<span class="lineNum"> 80 </span><span class="lineNoCov"> 0 : throw Exception(&quot;initialising apt system&quot;);</span>
+<span class="lineNum"> 81 </span> : }
+<span class="lineNum"> 82 </span> :
+<span class="lineNum"> 83 </span> : struct AptImplementation
+<span class="lineNum"> 84 </span> : {
+<span class="lineNum"> 85 </span> : pkgSourceList* m_list;
+<span class="lineNum"> 86 </span> : MMap *m;
+<span class="lineNum"> 87 </span> : OpProgress progress;
+<span class="lineNum"> 88 </span> : pkgCache* m_cache;
+<span class="lineNum"> 89 </span> : pkgPolicy* m_policy;
+<span class="lineNum"> 90 </span> : pkgCacheFile* m_depcache;
+<span class="lineNum"> 91 </span> : time_t m_open_timestamp;
+<span class="lineNum"> 92 </span> :
+<span class="lineNum"> 93 </span><span class="lineCov"> 29 : AptImplementation() : m_list(0), m(0), m_cache(0), m_policy(0), m_depcache(0), m_open_timestamp(0)</span>
+<span class="lineNum"> 94 </span> : {
+<span class="lineNum"> 95 </span> : // Init the apt library if needed
+<span class="lineNum"> 96 </span><span class="lineCov"> 29 : aptInit();</span>
+<span class="lineNum"> 97 </span> :
+<span class="lineNum"> 98 </span><span class="lineCov"> 29 : m_open_timestamp = aptTimestamp();</span>
+<span class="lineNum"> 99 </span> :
+<span class="lineNum"> 100 </span><span class="lineCov"> 29 : m_list = new pkgSourceList;</span>
+<span class="lineNum"> 101 </span><span class="lineCov"> 58 : if (!m_list-&gt;ReadMainList())</span>
+<span class="lineNum"> 102 </span><span class="lineNoCov"> 0 : throw Exception(&quot;reading list of sources&quot;);</span>
+<span class="lineNum"> 103 </span> :
+<span class="lineNum"> 104 </span><span class="lineCov"> 29 : bool res = pkgMakeStatusCache(*m_list, progress, &amp;m, true);</span>
+<span class="lineNum"> 105 </span><span class="lineCov"> 29 : progress.Done();</span>
+<span class="lineNum"> 106 </span><span class="lineCov"> 29 : if (!res)</span>
+<span class="lineNum"> 107 </span><span class="lineNoCov"> 0 : throw Exception(&quot;Reading the package lists or status file&quot;);</span>
+<span class="lineNum"> 108 </span> :
+<span class="lineNum"> 109 </span><span class="lineCov"> 29 : m_cache = new pkgCache(m);</span>
+<span class="lineNum"> 110 </span><span class="lineCov"> 58 : m_policy = new pkgPolicy(m_cache);</span>
+<span class="lineNum"> 111 </span><span class="lineCov"> 58 : if (!ReadPinFile(*m_policy))</span>
+<span class="lineNum"> 112 </span><span class="lineNoCov"> 0 : throw Exception(&quot;Reading the policy pin file&quot;);</span>
+<span class="lineNum"> 113 </span><span class="lineCov"> 29 : }</span>
+<span class="lineNum"> 114 </span> :
+<span class="lineNum"> 115 </span><span class="lineCov"> 29 : ~AptImplementation()</span>
+<span class="lineNum"> 116 </span> : {
+<span class="lineNum"> 117 </span><span class="lineCov"> 29 : if (m_depcache) delete m_depcache;</span>
+<span class="lineNum"> 118 </span><span class="lineCov"> 29 : if (m_policy) delete m_policy;</span>
+<span class="lineNum"> 119 </span><span class="lineCov"> 29 : if (m_cache) delete m_cache;</span>
+<span class="lineNum"> 120 </span><span class="lineCov"> 29 : if (m) delete m;</span>
+<span class="lineNum"> 121 </span><span class="lineCov"> 29 : if (m_list) delete m_list;</span>
+<span class="lineNum"> 122 </span><span class="lineCov"> 29 : }</span>
+<span class="lineNum"> 123 </span> :
+<span class="lineNum"> 124 </span><span class="lineCov"> 3980 : pkgCache&amp; cache()</span>
+<span class="lineNum"> 125 </span> : {
+<span class="lineNum"> 126 </span><span class="lineCov"> 3980 : return *m_cache;</span>
+<span class="lineNum"> 127 </span> : }
+<span class="lineNum"> 128 </span> :
+<span class="lineNum"> 129 </span><span class="lineCov"> 16099 : pkgPolicy&amp; policy()</span>
+<span class="lineNum"> 130 </span> : {
+<span class="lineNum"> 131 </span><span class="lineCov"> 16099 : return *m_policy;</span>
+<span class="lineNum"> 132 </span> : }
+<span class="lineNum"> 133 </span> :
+<span class="lineNum"> 134 </span><span class="lineCov"> 1 : pkgCacheFile&amp; depcache()</span>
+<span class="lineNum"> 135 </span> : {
+<span class="lineNum"> 136 </span><span class="lineCov"> 1 : if (!m_depcache)</span>
+<span class="lineNum"> 137 </span> : {
+<span class="lineNum"> 138 </span><span class="lineCov"> 1 : m_depcache = new pkgCacheFile;</span>
+<span class="lineNum"> 139 </span><span class="lineCov"> 1 : if (!m_depcache-&gt;Open(progress, false))</span>
+<span class="lineNum"> 140 </span><span class="lineNoCov"> 0 : throw Exception(&quot;Opening the cache file&quot;);</span>
+<span class="lineNum"> 141 </span> : }
+<span class="lineNum"> 142 </span><span class="lineCov"> 1 : return *m_depcache;</span>
+<span class="lineNum"> 143 </span> : }
+<span class="lineNum"> 144 </span> : };
+<span class="lineNum"> 145 </span> :
+<span class="lineNum"> 146 </span> : // Sort a version list by package file locality
+<span class="lineNum"> 147 </span><span class="lineCov"> 39519 : bool localityCompare(const pkgCache::VerFile* a, const pkgCache::VerFile* b)</span>
+<span class="lineNum"> 148 </span> : {
+<span class="lineNum"> 149 </span><span class="lineCov"> 39519 : if (a == 0 &amp;&amp; b == 0)</span>
+<span class="lineNum"> 150 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 151 </span><span class="lineCov"> 39519 : if (a == 0)</span>
+<span class="lineNum"> 152 </span><span class="lineNoCov"> 0 : return true;</span>
+<span class="lineNum"> 153 </span><span class="lineCov"> 39519 : if (b == 0)</span>
+<span class="lineNum"> 154 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 155 </span> :
+<span class="lineNum"> 156 </span><span class="lineCov"> 39519 : if (a-&gt;File == b-&gt;File)</span>
+<span class="lineNum"> 157 </span><span class="lineCov"> 39060 : return a-&gt;Offset &lt; b-&gt;Offset;</span>
+<span class="lineNum"> 158 </span><span class="lineCov"> 459 : return a-&gt;File &lt; b-&gt;File;</span>
+<span class="lineNum"> 159 </span> : }
+<span class="lineNum"> 160 </span> :
+<span class="lineNum"> 161 </span> : // Iterate records using the algorithm used by apt-cache dumpavail
+<span class="lineNum"> 162 </span> : struct RecordIteratorImpl
+<span class="lineNum"> 163 </span> : {
+<span class="lineNum"> 164 </span> : mutable int _ref;
+<span class="lineNum"> 165 </span> : AptImplementation&amp; apt;
+<span class="lineNum"> 166 </span> : vector&lt;pkgCache::VerFile*&gt; vflist;
+<span class="lineNum"> 167 </span> : pkgCache::PkgFileIterator lastFile;
+<span class="lineNum"> 168 </span> : FileFd file;
+<span class="lineNum"> 169 </span> : size_t lastOffset;
+<span class="lineNum"> 170 </span> :
+<span class="lineNum"> 171 </span><span class="lineCov"> 9 : RecordIteratorImpl(AptImplementation&amp; apt) : _ref(0), apt(apt), vflist(0)</span>
+<span class="lineNum"> 172 </span> : {
+<span class="lineNum"> 173 </span> : // We already have an estimate of how many versions we're about to find
+<span class="lineNum"> 174 </span><span class="lineCov"> 9 : vflist.reserve(apt.cache().HeaderP-&gt;PackageCount + 1);</span>
+<span class="lineNum"> 175 </span> :
+<span class="lineNum"> 176 </span> : // Populate the vector of versions to print
+<span class="lineNum"> 177 </span><span class="lineCov"> 34002 : for (pkgCache::PkgIterator pi = apt.cache().PkgBegin(); !pi.end(); ++pi)</span>
+<span class="lineNum"> 178 </span> : {
+<span class="lineNum"> 179 </span><span class="lineCov"> 33993 : if (pi-&gt;VersionList == 0)</span>
+<span class="lineNum"> 180 </span><span class="lineCov"> 17901 : continue;</span>
+<span class="lineNum"> 181 </span> :
+<span class="lineNum"> 182 </span> : /* Get the candidate version or fallback on the installed version,
+<span class="lineNum"> 183 </span> : * as usual */
+<span class="lineNum"> 184 </span><span class="lineCov"> 16092 : pkgCache::VerIterator vi = apt.policy().GetCandidateVer(pi);</span>
+<span class="lineNum"> 185 </span><span class="lineCov"> 16092 : if (vi.end() == true)</span>
+<span class="lineNum"> 186 </span> : {
+<span class="lineNum"> 187 </span><span class="lineCov"> 1926 : if (pi-&gt;CurrentVer == 0)</span>
+<span class="lineNum"> 188 </span><span class="lineCov"> 1926 : continue;</span>
+<span class="lineNum"> 189 </span><span class="lineNoCov"> 0 : vi = pi.CurrentVer();</span>
+<span class="lineNum"> 190 </span> : }
+<span class="lineNum"> 191 </span> :
+<span class="lineNum"> 192 </span> : // Choose a valid file that contains the record for this version
+<span class="lineNum"> 193 </span><span class="lineCov"> 14166 : pkgCache::VerFileIterator vfi = vi.FileList();</span>
+<span class="lineNum"> 194 </span><span class="lineCov"> 24507 : for ( ; !vfi.end(); ++vfi)</span>
+<span class="lineNum"> 195 </span><span class="lineCov"> 14166 : if ((vfi.File()-&gt;Flags &amp; pkgCache::Flag::NotSource) == 0)</span>
+<span class="lineNum"> 196 </span><span class="lineCov"> 3825 : break;</span>
+<span class="lineNum"> 197 </span> :
+<span class="lineNum"> 198 </span> : // Handle packages whose candidate version is currently installed
+<span class="lineNum"> 199 </span> : // from outside the archives (like from a locally built .deb
+<span class="lineNum"> 200 </span><span class="lineCov"> 14166 : if (vfi.end() == true)</span>
+<span class="lineNum"> 201 </span> : {
+<span class="lineNum"> 202 </span><span class="lineCov"> 20682 : for (pkgCache::VerIterator cur = pi.VersionList(); cur.end() != true; cur++)</span>
+<span class="lineNum"> 203 </span> : {
+<span class="lineNum"> 204 </span><span class="lineCov"> 20763 : for (vfi = cur.FileList(); vfi.end() == false; vfi++)</span>
+<span class="lineNum"> 205 </span> : {
+<span class="lineNum"> 206 </span><span class="lineCov"> 10422 : if ((vfi.File()-&gt;Flags &amp; pkgCache::Flag::NotSource) == 0)</span>
+<span class="lineNum"> 207 </span> : {
+<span class="lineNum"> 208 </span><span class="lineCov"> 81 : vfi = vi.FileList();</span>
+<span class="lineNum"> 209 </span><span class="lineCov"> 81 : break;</span>
+<span class="lineNum"> 210 </span> : }
+<span class="lineNum"> 211 </span> : }
+<span class="lineNum"> 212 </span> :
+<span class="lineNum"> 213 </span><span class="lineCov"> 10422 : if (vfi.end() == false)</span>
+<span class="lineNum"> 214 </span><span class="lineCov"> 81 : break;</span>
+<span class="lineNum"> 215 </span> : }
+<span class="lineNum"> 216 </span> : }
+<span class="lineNum"> 217 </span><span class="lineCov"> 14166 : if (!vfi.end())</span>
+<span class="lineNum"> 218 </span><span class="lineCov"> 3906 : vflist.push_back(vfi);</span>
+<span class="lineNum"> 219 </span> : }
+<span class="lineNum"> 220 </span> :
+<span class="lineNum"> 221 </span> : //cerr &lt;&lt; vflist.size() &lt;&lt; &quot; versions found&quot; &lt;&lt; endl;
+<span class="lineNum"> 222 </span> :
+<span class="lineNum"> 223 </span><span class="lineCov"> 9 : sort(vflist.begin(), vflist.end(), localityCompare);</span>
+<span class="lineNum"> 224 </span> :
+<span class="lineNum"> 225 </span> : //for (size_t i = 0; i &lt; vflist.size(); ++i)
+<span class="lineNum"> 226 </span> : //{
+<span class="lineNum"> 227 </span> : // pkgCache::PkgFileIterator fi(apt.cache(), vflist[i]-&gt;File + apt.cache().PkgFileP);
+<span class="lineNum"> 228 </span> : // cerr &lt;&lt; i &lt;&lt; &quot;: &quot; &lt;&lt; fi.FileName() &lt;&lt; &quot;:&quot; &lt;&lt; vflist[i]-&gt;Offset &lt;&lt; &quot;-&quot; &lt;&lt; vflist[i]-&gt;Size &lt;&lt; endl;
+<span class="lineNum"> 229 </span> : //}
+<span class="lineNum"> 230 </span> : //cerr &lt;&lt; &quot;Done indexing.&quot; &lt;&lt; endl;
+<span class="lineNum"> 231 </span><span class="lineCov"> 9 : }</span>
+<span class="lineNum"> 232 </span> :
+<span class="lineNum"> 233 </span><span class="lineCov"> 9 : ~RecordIteratorImpl()</span>
+<span class="lineNum"> 234 </span> : {
+<span class="lineNum"> 235 </span><span class="lineCov"> 9 : if (file.IsOpen())</span>
+<span class="lineNum"> 236 </span><span class="lineCov"> 9 : file.Close();</span>
+<span class="lineNum"> 237 </span><span class="lineCov"> 9 : }</span>
+<span class="lineNum"> 238 </span> :
+<span class="lineNum"> 239 </span><span class="lineCov"> 14 : void ref() { ++_ref; }</span>
+<span class="lineNum"> 240 </span><span class="lineCov"> 14 : bool unref() { return --_ref == 0; }</span>
+<span class="lineNum"> 241 </span> :
+<span class="lineNum"> 242 </span><span class="lineCov"> 3906 : size_t size() { return vflist.size(); }</span>
+<span class="lineNum"> 243 </span> :
+<span class="lineNum"> 244 </span><span class="lineCov"> 3906 : string record(size_t idx)</span>
+<span class="lineNum"> 245 </span> : {
+<span class="lineNum"> 246 </span> : //cerr &lt;&lt; &quot;Access record &quot; &lt;&lt; idx &lt;&lt; endl;
+<span class="lineNum"> 247 </span> : //cerr &lt;&lt; &quot;lastfile: &quot; &lt;&lt; (lastFile.Cache() != 0) &lt;&lt; endl;
+<span class="lineNum"> 248 </span> : // We can't reuse the file that was already open: open the new one
+<span class="lineNum"> 249 </span><span class="lineCov"> 3906 : if ((lastFile.Cache() == 0) || vflist[idx]-&gt;File + apt.cache().PkgFileP != lastFile)</span>
+<span class="lineNum"> 250 </span> : {
+<span class="lineNum"> 251 </span> : //cerr &lt;&lt; &quot;Needs open/reopen&quot; &lt;&lt; endl;
+<span class="lineNum"> 252 </span><span class="lineCov"> 18 : lastFile = pkgCache::PkgFileIterator(apt.cache(), vflist[idx]-&gt;File + apt.cache().PkgFileP);</span>
+<span class="lineNum"> 253 </span><span class="lineCov"> 18 : if (!lastFile.IsOk())</span>
+<span class="lineNum"> 254 </span><span class="lineNoCov"> 0 : throw Exception(string(&quot;Reading the data record for a package from file &quot;) + lastFile.FileName());</span>
+<span class="lineNum"> 255 </span> : //cerr &lt;&lt; &quot;Ok for &quot; &lt;&lt; lastFile.FileName() &lt;&lt; endl;
+<span class="lineNum"> 256 </span><span class="lineCov"> 18 : if (file.IsOpen())</span>
+<span class="lineNum"> 257 </span><span class="lineCov"> 9 : file.Close();</span>
+<span class="lineNum"> 258 </span><span class="lineCov"> 18 : if (!file.Open(lastFile.FileName(), FileFd::ReadOnly))</span>
+<span class="lineNum"> 259 </span><span class="lineNoCov"> 0 : throw Exception(string(&quot;Opening file &quot;) + lastFile.FileName());</span>
+<span class="lineNum"> 260 </span> : //cerr &lt;&lt; &quot;Opened &quot; &lt;&lt; lastFile.FileName() &lt;&lt; endl;
+<span class="lineNum"> 261 </span><span class="lineCov"> 18 : lastOffset = 0;</span>
+<span class="lineNum"> 262 </span> : }
+<span class="lineNum"> 263 </span> :
+<span class="lineNum"> 264 </span> : //cerr &lt;&lt; &quot;Reading from &quot; &lt;&lt; lastFile.FileName() &lt;&lt; &quot;:&quot; &lt;&lt; vflist[idx]-&gt;Offset &lt;&lt; &quot;-&quot; &lt;&lt; vflist[idx]-&gt;Size &lt;&lt; &quot; (lastOffset: &quot; &lt;&lt; lastOffset &lt;&lt; &quot;)&quot; &lt;&lt; endl;
+<span class="lineNum"> 265 </span> :
+<span class="lineNum"> 266 </span> : // If we start near were we ended, avoid a seek and enlarge the read a bit
+<span class="lineNum"> 267 </span><span class="lineCov"> 3906 : size_t slack = vflist[idx]-&gt;Offset - lastOffset;</span>
+<span class="lineNum"> 268 </span> : //cerr &lt;&lt; &quot;Slack: &quot; &lt;&lt; slack &lt;&lt; endl;
+<span class="lineNum"> 269 </span><span class="lineCov"> 3906 : if (slack &gt; 8)</span>
+<span class="lineNum"> 270 </span> : {
+<span class="lineNum"> 271 </span> : //cerr &lt;&lt; &quot;Slack too big: seek to &quot; &lt;&lt; vflist[idx]-&gt;Offset &lt;&lt; endl;
+<span class="lineNum"> 272 </span><span class="lineCov"> 171 : slack = 0;</span>
+<span class="lineNum"> 273 </span><span class="lineCov"> 171 : if (!file.Seek(vflist[idx]-&gt;Offset))</span>
+<span class="lineNum"> 274 </span><span class="lineNoCov"> 0 : throw Exception(string(&quot;Cannot seek to package record in file &quot;) + lastFile.FileName());</span>
+<span class="lineNum"> 275 </span> : }
+<span class="lineNum"> 276 </span> :
+<span class="lineNum"> 277 </span><span class="lineCov"> 3906 : char buffer[vflist[idx]-&gt;Size + slack + 1];</span>
+<span class="lineNum"> 278 </span><span class="lineCov"> 3906 : if (!file.Read(buffer, vflist[idx]-&gt;Size + slack))</span>
+<span class="lineNum"> 279 </span><span class="lineNoCov"> 0 : throw Exception(string(&quot;Cannot read package record in file &quot;) + lastFile.FileName());</span>
+<span class="lineNum"> 280 </span><span class="lineCov"> 3906 : buffer[vflist[idx]-&gt;Size + slack] = '\n';</span>
+<span class="lineNum"> 281 </span> : //cerr &lt;&lt; &quot;Data read (slack: &quot; &lt;&lt; slack &lt;&lt; &quot;)&quot; &lt;&lt; endl;
+<span class="lineNum"> 282 </span> :
+<span class="lineNum"> 283 </span><span class="lineCov"> 3906 : lastOffset = vflist[idx]-&gt;Offset + vflist[idx]-&gt;Size;</span>
+<span class="lineNum"> 284 </span> :
+<span class="lineNum"> 285 </span><span class="lineCov"> 3906 : return string(buffer+slack);</span>
+<span class="lineNum"> 286 </span> : }
+<span class="lineNum"> 287 </span> : };
+<span class="lineNum"> 288 </span> :
+<span class="lineNum"> 289 </span><span class="lineCov"> 20 : Apt::Iterator::Iterator(const Iterator&amp; i)</span>
+<span class="lineNum"> 290 </span> : {
+<span class="lineNum"> 291 </span><span class="lineCov"> 20 : if (i.cur)</span>
+<span class="lineNum"> 292 </span> : {
+<span class="lineNum"> 293 </span><span class="lineCov"> 10 : pkgCache::PkgIterator* p = new pkgCache::PkgIterator;</span>
+<span class="lineNum"> 294 </span><span class="lineCov"> 10 : *p = *static_cast&lt;pkgCache::PkgIterator*&gt;(i.cur);</span>
+<span class="lineNum"> 295 </span><span class="lineCov"> 10 : cur = p;</span>
+<span class="lineNum"> 296 </span> : } else
+<span class="lineNum"> 297 </span><span class="lineCov"> 10 : cur = 0;</span>
+<span class="lineNum"> 298 </span><span class="lineCov"> 20 : }</span>
+<span class="lineNum"> 299 </span> :
+<span class="lineNum"> 300 </span><span class="lineNoCov"> 0 : Apt::Iterator&amp; Apt::Iterator::operator=(const Iterator&amp; i)</span>
+<span class="lineNum"> 301 </span> : {
+<span class="lineNum"> 302 </span><span class="lineNoCov"> 0 : if (cur != i.cur)</span>
+<span class="lineNum"> 303 </span> : {
+<span class="lineNum"> 304 </span><span class="lineNoCov"> 0 : if (cur) delete static_cast&lt;pkgCache::PkgIterator*&gt;(cur);</span>
+<span class="lineNum"> 305 </span><span class="lineNoCov"> 0 : if (i.cur)</span>
+<span class="lineNum"> 306 </span> : {
+<span class="lineNum"> 307 </span><span class="lineNoCov"> 0 : pkgCache::PkgIterator* p = new pkgCache::PkgIterator;</span>
+<span class="lineNum"> 308 </span><span class="lineNoCov"> 0 : *p = *static_cast&lt;pkgCache::PkgIterator*&gt;(i.cur);</span>
+<span class="lineNum"> 309 </span><span class="lineNoCov"> 0 : cur = p;</span>
+<span class="lineNum"> 310 </span> : } else
+<span class="lineNum"> 311 </span><span class="lineNoCov"> 0 : cur = 0;</span>
+<span class="lineNum"> 312 </span> : }
+<span class="lineNum"> 313 </span><span class="lineNoCov"> 0 : return *this;</span>
+<span class="lineNum"> 314 </span> : }
+<span class="lineNum"> 315 </span> :
+<span class="lineNum"> 316 </span><span class="lineCov"> 3605 : Apt::Iterator::~Iterator()</span>
+<span class="lineNum"> 317 </span> : {
+<span class="lineNum"> 318 </span><span class="lineCov"> 3605 : if (cur) delete static_cast&lt;pkgCache::PkgIterator*&gt;(cur);</span>
+<span class="lineNum"> 319 </span><span class="lineCov"> 3605 : }</span>
+<span class="lineNum"> 320 </span><span class="lineCov"> 5364 : std::string Apt::Iterator::operator*()</span>
+<span class="lineNum"> 321 </span> : {
+<span class="lineNum"> 322 </span><span class="lineCov"> 5364 : return static_cast&lt;pkgCache::PkgIterator*&gt;(cur)-&gt;Name();</span>
+<span class="lineNum"> 323 </span> : }
+<span class="lineNum"> 324 </span><span class="lineCov"> 7152 : Apt::Iterator&amp; Apt::Iterator::operator++()</span>
+<span class="lineNum"> 325 </span> : {
+<span class="lineNum"> 326 </span><span class="lineCov"> 7152 : pkgCache::PkgIterator* iter = static_cast&lt;pkgCache::PkgIterator*&gt;(cur);</span>
+<span class="lineNum"> 327 </span><span class="lineCov"> 7152 : ++*iter;</span>
+<span class="lineNum"> 328 </span><span class="lineCov"> 22260 : while (!iter-&gt;end() &amp;&amp; (*iter)-&gt;VersionList == 0)</span>
+<span class="lineNum"> 329 </span><span class="lineCov"> 7956 : ++*iter;</span>
+<span class="lineNum"> 330 </span><span class="lineCov"> 7152 : if (iter-&gt;end())</span>
+<span class="lineNum"> 331 </span> : {
+<span class="lineNum"> 332 </span><span class="lineCov"> 4 : delete iter;</span>
+<span class="lineNum"> 333 </span><span class="lineCov"> 4 : cur = 0;</span>
+<span class="lineNum"> 334 </span> : }
+<span class="lineNum"> 335 </span><span class="lineCov"> 7152 : return *this;</span>
+<span class="lineNum"> 336 </span> : }
+<span class="lineNum"> 337 </span><span class="lineNoCov"> 0 : bool Apt::Iterator::operator==(const Iterator&amp; i) const</span>
+<span class="lineNum"> 338 </span> : {
+<span class="lineNum"> 339 </span><span class="lineNoCov"> 0 : if (cur == 0 &amp;&amp; i.cur == 0)</span>
+<span class="lineNum"> 340 </span><span class="lineNoCov"> 0 : return true;</span>
+<span class="lineNum"> 341 </span><span class="lineNoCov"> 0 : if (cur == 0 || i.cur == 0)</span>
+<span class="lineNum"> 342 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 343 </span><span class="lineNoCov"> 0 : pkgCache::PkgIterator* iter1 = static_cast&lt;pkgCache::PkgIterator*&gt;(cur);</span>
+<span class="lineNum"> 344 </span><span class="lineNoCov"> 0 : pkgCache::PkgIterator* iter2 = static_cast&lt;pkgCache::PkgIterator*&gt;(i.cur);</span>
+<span class="lineNum"> 345 </span><span class="lineNoCov"> 0 : return *iter1 == *iter2;</span>
+<span class="lineNum"> 346 </span> : }
+<span class="lineNum"> 347 </span><span class="lineCov"> 7157 : bool Apt::Iterator::operator!=(const Iterator&amp; i) const</span>
+<span class="lineNum"> 348 </span> : {
+<span class="lineNum"> 349 </span><span class="lineCov"> 7157 : if (cur == 0 &amp;&amp; i.cur == 0)</span>
+<span class="lineNum"> 350 </span><span class="lineCov"> 4 : return false;</span>
+<span class="lineNum"> 351 </span><span class="lineCov"> 7153 : if (cur == 0 || i.cur == 0)</span>
+<span class="lineNum"> 352 </span><span class="lineCov"> 7153 : return true;</span>
+<span class="lineNum"> 353 </span><span class="lineNoCov"> 0 : pkgCache::PkgIterator* iter1 = static_cast&lt;pkgCache::PkgIterator*&gt;(cur);</span>
+<span class="lineNum"> 354 </span><span class="lineNoCov"> 0 : pkgCache::PkgIterator* iter2 = static_cast&lt;pkgCache::PkgIterator*&gt;(i.cur);</span>
+<span class="lineNum"> 355 </span><span class="lineNoCov"> 0 : return *iter1 != *iter2;</span>
+<span class="lineNum"> 356 </span> : }
+<span class="lineNum"> 357 </span> :
+<span class="lineNum"> 358 </span> :
+<span class="lineNum"> 359 </span><span class="lineCov"> 9 : Apt::RecordIterator::RecordIterator(RecordIteratorImpl* impl, size_t pos)</span>
+<span class="lineNum"> 360 </span><span class="lineCov"> 9 : : impl(impl), pos(pos), cur_pos(pos)</span>
+<span class="lineNum"> 361 </span> : {
+<span class="lineNum"> 362 </span><span class="lineCov"> 9 : if (impl)</span>
+<span class="lineNum"> 363 </span> : {
+<span class="lineNum"> 364 </span><span class="lineCov"> 9 : impl-&gt;ref();</span>
+<span class="lineNum"> 365 </span><span class="lineCov"> 9 : cur = impl-&gt;record(pos);</span>
+<span class="lineNum"> 366 </span><span class="lineCov"> 9 : cur_pos = pos;</span>
+<span class="lineNum"> 367 </span> : }
+<span class="lineNum"> 368 </span><span class="lineCov"> 9 : }</span>
+<span class="lineNum"> 369 </span><span class="lineCov"> 10 : Apt::RecordIterator::RecordIterator(const RecordIterator&amp; r)</span>
+<span class="lineNum"> 370 </span><span class="lineCov"> 10 : : impl(r.impl), pos(r.pos), cur(r.cur), cur_pos(r.cur_pos)</span>
+<span class="lineNum"> 371 </span> : {
+<span class="lineNum"> 372 </span><span class="lineCov"> 10 : if (impl)</span>
+<span class="lineNum"> 373 </span><span class="lineCov"> 5 : impl-&gt;ref();</span>
+<span class="lineNum"> 374 </span><span class="lineCov"> 10 : }</span>
+<span class="lineNum"> 375 </span><span class="lineCov"> 3500 : Apt::RecordIterator::~RecordIterator()</span>
+<span class="lineNum"> 376 </span> : {
+<span class="lineNum"> 377 </span><span class="lineCov"> 3500 : if (impl &amp;&amp; impl-&gt;unref())</span>
+<span class="lineNum"> 378 </span><span class="lineCov"> 1 : delete impl;</span>
+<span class="lineNum"> 379 </span><span class="lineCov"> 3500 : }</span>
+<span class="lineNum"> 380 </span><span class="lineCov"> 3906 : std::string Apt::RecordIterator::operator*()</span>
+<span class="lineNum"> 381 </span> : {
+<span class="lineNum"> 382 </span><span class="lineCov"> 3906 : if (cur_pos != pos)</span>
+<span class="lineNum"> 383 </span> : {
+<span class="lineNum"> 384 </span><span class="lineCov"> 3464 : cur = impl-&gt;record(pos);</span>
+<span class="lineNum"> 385 </span><span class="lineCov"> 3464 : cur_pos = pos;</span>
+<span class="lineNum"> 386 </span> : }
+<span class="lineNum"> 387 </span><span class="lineCov"> 3906 : return cur;</span>
+<span class="lineNum"> 388 </span> : }
+<span class="lineNum"> 389 </span><span class="lineCov"> 868 : std::string* Apt::RecordIterator::operator-&gt;()</span>
+<span class="lineNum"> 390 </span> : {
+<span class="lineNum"> 391 </span><span class="lineCov"> 868 : if (cur_pos != pos)</span>
+<span class="lineNum"> 392 </span> : {
+<span class="lineNum"> 393 </span><span class="lineCov"> 433 : cur = impl-&gt;record(pos);</span>
+<span class="lineNum"> 394 </span><span class="lineCov"> 433 : cur_pos = pos;</span>
+<span class="lineNum"> 395 </span> : }
+<span class="lineNum"> 396 </span><span class="lineCov"> 868 : return &amp;cur;</span>
+<span class="lineNum"> 397 </span> : }
+<span class="lineNum"> 398 </span><span class="lineCov"> 3906 : Apt::RecordIterator&amp; Apt::RecordIterator::operator++()</span>
+<span class="lineNum"> 399 </span> : {
+<span class="lineNum"> 400 </span><span class="lineCov"> 3906 : ++pos;</span>
+<span class="lineNum"> 401 </span><span class="lineCov"> 3906 : if (pos &gt;= impl-&gt;size())</span>
+<span class="lineNum"> 402 </span> : {
+<span class="lineNum"> 403 </span> : // If we reach the end, we become an end iterator
+<span class="lineNum"> 404 </span><span class="lineCov"> 9 : if (impl &amp;&amp; impl-&gt;unref())</span>
+<span class="lineNum"> 405 </span><span class="lineCov"> 8 : delete impl;</span>
+<span class="lineNum"> 406 </span><span class="lineCov"> 9 : impl = 0;</span>
+<span class="lineNum"> 407 </span><span class="lineCov"> 9 : pos = 0;</span>
+<span class="lineNum"> 408 </span> : }
+<span class="lineNum"> 409 </span><span class="lineCov"> 3906 : return *this;</span>
+<span class="lineNum"> 410 </span> : }
+<span class="lineNum"> 411 </span><span class="lineNoCov"> 0 : Apt::RecordIterator&amp; Apt::RecordIterator::operator=(const RecordIterator&amp; r)</span>
+<span class="lineNum"> 412 </span> : {
+<span class="lineNum"> 413 </span> : // Increment first, to avoid it reaching zero on assignment to self
+<span class="lineNum"> 414 </span><span class="lineNoCov"> 0 : if (r.impl) r.impl-&gt;ref();</span>
+<span class="lineNum"> 415 </span><span class="lineNoCov"> 0 : if (impl &amp;&amp; impl-&gt;unref())</span>
+<span class="lineNum"> 416 </span><span class="lineNoCov"> 0 : delete impl;</span>
+<span class="lineNum"> 417 </span><span class="lineNoCov"> 0 : impl = r.impl;</span>
+<span class="lineNum"> 418 </span><span class="lineNoCov"> 0 : pos = r.pos;</span>
+<span class="lineNum"> 419 </span><span class="lineNoCov"> 0 : cur = r.cur;</span>
+<span class="lineNum"> 420 </span><span class="lineNoCov"> 0 : cur_pos = r.cur_pos;</span>
+<span class="lineNum"> 421 </span><span class="lineNoCov"> 0 : return *this;</span>
+<span class="lineNum"> 422 </span> : }
+<span class="lineNum"> 423 </span><span class="lineNoCov"> 0 : bool Apt::RecordIterator::operator==(const RecordIterator&amp; ri) const</span>
+<span class="lineNum"> 424 </span> : {
+<span class="lineNum"> 425 </span><span class="lineNoCov"> 0 : return impl == ri.impl &amp;&amp; pos == ri.pos;</span>
+<span class="lineNum"> 426 </span> : }
+<span class="lineNum"> 427 </span><span class="lineCov"> 3915 : bool Apt::RecordIterator::operator!=(const RecordIterator&amp; ri) const</span>
+<span class="lineNum"> 428 </span> : {
+<span class="lineNum"> 429 </span><span class="lineCov"> 3915 : return impl != ri.impl || pos != ri.pos;</span>
+<span class="lineNum"> 430 </span> : }
+<span class="lineNum"> 431 </span> :
+<span class="lineNum"> 432 </span> :
+<span class="lineNum"> 433 </span><span class="lineCov"> 28 : Apt::Apt() : impl(new AptImplementation()) {}</span>
+<span class="lineNum"> 434 </span><span class="lineCov"> 28 : Apt::~Apt() { delete impl; }</span>
+<span class="lineNum"> 435 </span> :
+<span class="lineNum"> 436 </span><span class="lineCov"> 4 : Apt::iterator Apt::begin() const</span>
+<span class="lineNum"> 437 </span> : {
+<span class="lineNum"> 438 </span><span class="lineCov"> 4 : pkgCache::PkgIterator* p = new pkgCache::PkgIterator;</span>
+<span class="lineNum"> 439 </span><span class="lineCov"> 4 : *p = impl-&gt;cache().PkgBegin();</span>
+<span class="lineNum"> 440 </span><span class="lineCov"> 4 : return Apt::Iterator(p);</span>
+<span class="lineNum"> 441 </span> : }
+<span class="lineNum"> 442 </span> :
+<span class="lineNum"> 443 </span><span class="lineCov"> 3581 : Apt::iterator Apt::end() const</span>
+<span class="lineNum"> 444 </span> : {
+<span class="lineNum"> 445 </span><span class="lineCov"> 3581 : return Apt::Iterator();</span>
+<span class="lineNum"> 446 </span> : }
+<span class="lineNum"> 447 </span> :
+<span class="lineNum"> 448 </span><span class="lineCov"> 9 : Apt::record_iterator Apt::recordBegin() const</span>
+<span class="lineNum"> 449 </span> : {
+<span class="lineNum"> 450 </span><span class="lineCov"> 9 : return Apt::RecordIterator(new RecordIteratorImpl(*impl));</span>
+<span class="lineNum"> 451 </span> : }
+<span class="lineNum"> 452 </span> :
+<span class="lineNum"> 453 </span><span class="lineCov"> 3481 : Apt::record_iterator Apt::recordEnd() const</span>
+<span class="lineNum"> 454 </span> : {
+<span class="lineNum"> 455 </span><span class="lineCov"> 3481 : return Apt::RecordIterator();</span>
+<span class="lineNum"> 456 </span> : }
+<span class="lineNum"> 457 </span> :
+<span class="lineNum"> 458 </span><span class="lineNoCov"> 0 : size_t Apt::size() const</span>
+<span class="lineNum"> 459 </span> : {
+<span class="lineNum"> 460 </span><span class="lineNoCov"> 0 : return impl-&gt;cache().HeaderP-&gt;PackageCount;</span>
+<span class="lineNum"> 461 </span> : }
+<span class="lineNum"> 462 </span> :
+<span class="lineNum"> 463 </span><span class="lineCov"> 16 : time_t Apt::timestamp()</span>
+<span class="lineNum"> 464 </span> : {
+<span class="lineNum"> 465 </span><span class="lineCov"> 16 : return aptTimestamp();</span>
+<span class="lineNum"> 466 </span> : }
+<span class="lineNum"> 467 </span> :
+<span class="lineNum"> 468 </span><span class="lineCov"> 5 : bool Apt::isValid(const std::string&amp; pkg) const</span>
+<span class="lineNum"> 469 </span> : {
+<span class="lineNum"> 470 </span><span class="lineCov"> 5 : pkgCache::PkgIterator pi = impl-&gt;cache().FindPkg(pkg);</span>
+<span class="lineNum"> 471 </span><span class="lineCov"> 5 : return !pi.end();</span>
+<span class="lineNum"> 472 </span> : }
+<span class="lineNum"> 473 </span> :
+<span class="lineNum"> 474 </span><span class="lineCov"> 4 : Version Apt::validate(const Version&amp; ver) const</span>
+<span class="lineNum"> 475 </span> : {
+<span class="lineNum"> 476 </span><span class="lineCov"> 4 : pkgCache::PkgIterator pi = impl-&gt;cache().FindPkg(ver.name());</span>
+<span class="lineNum"> 477 </span><span class="lineCov"> 5 : if (pi.end()) return Version();</span>
+<span class="lineNum"> 478 </span><span class="lineCov"> 4 : for (pkgCache::VerIterator vi = pi.VersionList(); !vi.end(); vi++)</span>
+<span class="lineNum"> 479 </span> : {
+<span class="lineNum"> 480 </span><span class="lineCov"> 3 : const char* v = vi.VerStr();</span>
+<span class="lineNum"> 481 </span><span class="lineCov"> 3 : if (v == 0) continue;</span>
+<span class="lineNum"> 482 </span><span class="lineCov"> 3 : if (ver.version() == v)</span>
+<span class="lineNum"> 483 </span><span class="lineCov"> 2 : return ver;</span>
+<span class="lineNum"> 484 </span> : }
+<span class="lineNum"> 485 </span><span class="lineCov"> 1 : return Version();</span>
+<span class="lineNum"> 486 </span> : }
+<span class="lineNum"> 487 </span> :
+<span class="lineNum"> 488 </span><span class="lineCov"> 4 : Version Apt::candidateVersion(const std::string&amp; pkg) const</span>
+<span class="lineNum"> 489 </span> : {
+<span class="lineNum"> 490 </span><span class="lineCov"> 4 : pkgCache::PkgIterator pi = impl-&gt;cache().FindPkg(pkg);</span>
+<span class="lineNum"> 491 </span><span class="lineCov"> 4 : if (pi.end()) return Version();</span>
+<span class="lineNum"> 492 </span><span class="lineCov"> 3 : pkgCache::VerIterator vi = impl-&gt;policy().GetCandidateVer(pi);</span>
+<span class="lineNum"> 493 </span><span class="lineCov"> 3 : if (vi.end()) return Version();</span>
+<span class="lineNum"> 494 </span><span class="lineCov"> 3 : return Version(pkg, vi.VerStr());</span>
+<span class="lineNum"> 495 </span> : }
+<span class="lineNum"> 496 </span> :
+<span class="lineNum"> 497 </span><span class="lineCov"> 2 : Version Apt::installedVersion(const std::string&amp; pkg) const</span>
+<span class="lineNum"> 498 </span> : {
+<span class="lineNum"> 499 </span><span class="lineCov"> 2 : pkgCache::PkgIterator pi = impl-&gt;cache().FindPkg(pkg);</span>
+<span class="lineNum"> 500 </span><span class="lineCov"> 2 : if (pi.end()) return Version();</span>
+<span class="lineNum"> 501 </span><span class="lineCov"> 1 : if (pi-&gt;CurrentVer == 0) return Version();</span>
+<span class="lineNum"> 502 </span><span class="lineCov"> 1 : pkgCache::VerIterator vi = pi.CurrentVer();</span>
+<span class="lineNum"> 503 </span><span class="lineCov"> 1 : if (vi.end()) return Version();</span>
+<span class="lineNum"> 504 </span><span class="lineCov"> 1 : return Version(pkg, vi.VerStr());</span>
+<span class="lineNum"> 505 </span> : }
+<span class="lineNum"> 506 </span> :
+<span class="lineNum"> 507 </span><span class="lineCov"> 4 : Version Apt::anyVersion(const std::string&amp; pkg) const</span>
+<span class="lineNum"> 508 </span> : {
+<span class="lineNum"> 509 </span><span class="lineCov"> 4 : pkgCache::PkgIterator pi = impl-&gt;cache().FindPkg(pkg);</span>
+<span class="lineNum"> 510 </span><span class="lineCov"> 4 : if (pi.end()) return Version();</span>
+<span class="lineNum"> 511 </span> :
+<span class="lineNum"> 512 </span><span class="lineCov"> 3 : pkgCache::VerIterator vi = impl-&gt;policy().GetCandidateVer(pi);</span>
+<span class="lineNum"> 513 </span><span class="lineCov"> 3 : if (vi.end())</span>
+<span class="lineNum"> 514 </span> : {
+<span class="lineNum"> 515 </span><span class="lineNoCov"> 0 : if (pi-&gt;CurrentVer == 0) return Version();</span>
+<span class="lineNum"> 516 </span><span class="lineNoCov"> 0 : vi = pi.CurrentVer();</span>
+<span class="lineNum"> 517 </span><span class="lineNoCov"> 0 : if (vi.end()) return Version();</span>
+<span class="lineNum"> 518 </span> : }
+<span class="lineNum"> 519 </span><span class="lineCov"> 3 : return Version(pkg, vi.VerStr());</span>
+<span class="lineNum"> 520 </span> : }
+<span class="lineNum"> 521 </span> :
+<span class="lineNum"> 522 </span><span class="lineCov"> 2 : PackageState Apt::state(const std::string&amp; pkg) const</span>
+<span class="lineNum"> 523 </span> : {
+<span class="lineNum"> 524 </span><span class="lineCov"> 2 : pkgCache::PkgIterator pi = impl-&gt;cache().FindPkg(pkg);</span>
+<span class="lineNum"> 525 </span><span class="lineCov"> 2 : if (pi.end()) return PackageState();</span>
+<span class="lineNum"> 526 </span><span class="lineCov"> 1 : pkgDepCache::StateCache sc = impl-&gt;depcache()[pi];</span>
+<span class="lineNum"> 527 </span> :
+<span class="lineNum"> 528 </span><span class="lineCov"> 1 : unsigned int flags = PackageState::Valid;</span>
+<span class="lineNum"> 529 </span> :
+<span class="lineNum"> 530 </span> : // Check if the package is installed
+<span class="lineNum"> 531 </span><span class="lineCov"> 1 : if (pi-&gt;CurrentState != pkgCache::State::ConfigFiles &amp;&amp;</span>
+<span class="lineNum"> 532 </span> : pi-&gt;CurrentState != pkgCache::State::NotInstalled &amp;&amp;
+<span class="lineNum"> 533 </span> : pi-&gt;CurrentVer != 0)
+<span class="lineNum"> 534 </span> : {
+<span class="lineNum"> 535 </span> : // Try to get a VerIterator to the installed version
+<span class="lineNum"> 536 </span><span class="lineCov"> 1 : pkgCache::VerIterator inst = pi.CurrentVer();</span>
+<span class="lineNum"> 537 </span><span class="lineCov"> 1 : if (!inst.end())</span>
+<span class="lineNum"> 538 </span> : {
+<span class="lineNum"> 539 </span> : // If we made it so far, it is installed
+<span class="lineNum"> 540 </span><span class="lineCov"> 1 : flags |= PackageState::Installed;</span>
+<span class="lineNum"> 541 </span> :
+<span class="lineNum"> 542 </span> : // Now check if it is upgradable
+<span class="lineNum"> 543 </span><span class="lineCov"> 1 : pkgCache::VerIterator cand = impl-&gt;policy().GetCandidateVer(pi);</span>
+<span class="lineNum"> 544 </span> :
+<span class="lineNum"> 545 </span> : // If the candidate version is different than the installed one, then
+<span class="lineNum"> 546 </span> : // it is installable
+<span class="lineNum"> 547 </span><span class="lineCov"> 1 : if (!cand.end() &amp;&amp; inst != cand)</span>
+<span class="lineNum"> 548 </span><span class="lineNoCov"> 0 : flags |= PackageState::Upgradable;</span>
+<span class="lineNum"> 549 </span> : }
+<span class="lineNum"> 550 </span> : }
+<span class="lineNum"> 551 </span><span class="lineCov"> 1 : if (sc.Install())</span>
+<span class="lineNum"> 552 </span><span class="lineNoCov"> 0 : flags |= PackageState::Install;</span>
+<span class="lineNum"> 553 </span><span class="lineCov"> 1 : if ((sc.iFlags &amp; pkgDepCache::ReInstall) == pkgDepCache::ReInstall)</span>
+<span class="lineNum"> 554 </span><span class="lineNoCov"> 0 : flags |= PackageState::ReInstall;</span>
+<span class="lineNum"> 555 </span><span class="lineCov"> 1 : if (sc.Keep())</span>
+<span class="lineNum"> 556 </span><span class="lineCov"> 1 : flags |= PackageState::Keep;</span>
+<span class="lineNum"> 557 </span><span class="lineCov"> 1 : if (sc.Delete())</span>
+<span class="lineNum"> 558 </span><span class="lineNoCov"> 0 : flags |= PackageState::Remove;</span>
+<span class="lineNum"> 559 </span><span class="lineCov"> 1 : if ((sc.iFlags &amp; pkgDepCache::Purge) == pkgDepCache::Purge)</span>
+<span class="lineNum"> 560 </span><span class="lineNoCov"> 0 : flags |= PackageState::Purge;</span>
+<span class="lineNum"> 561 </span><span class="lineCov"> 1 : if (sc.NowBroken())</span>
+<span class="lineNum"> 562 </span><span class="lineNoCov"> 0 : flags |= PackageState::NowBroken;</span>
+<span class="lineNum"> 563 </span><span class="lineCov"> 1 : if (sc.InstBroken())</span>
+<span class="lineNum"> 564 </span><span class="lineNoCov"> 0 : flags |= PackageState::WillBreak;</span>
+<span class="lineNum"> 565 </span> :
+<span class="lineNum"> 566 </span><span class="lineCov"> 1 : return PackageState(flags);</span>
+<span class="lineNum"> 567 </span> : }
+<span class="lineNum"> 568 </span> :
+<span class="lineNum"> 569 </span><span class="lineCov"> 1 : std::string Apt::rawRecord(const std::string&amp; ver) const</span>
+<span class="lineNum"> 570 </span> : {
+<span class="lineNum"> 571 </span> : // TODO: possibly reimplement using a single lump of apt code, to avoid
+<span class="lineNum"> 572 </span> : // repeating lookups
+<span class="lineNum"> 573 </span><span class="lineCov"> 1 : return rawRecord(anyVersion(ver));</span>
+<span class="lineNum"> 574 </span> : }
+<span class="lineNum"> 575 </span> :
+<span class="lineNum"> 576 </span><span class="lineCov"> 4 : std::string Apt::rawRecord(const Version&amp; ver) const</span>
+<span class="lineNum"> 577 </span> : {
+<span class="lineNum"> 578 </span><span class="lineCov"> 4 : pkgCache::PkgIterator pi = impl-&gt;cache().FindPkg(ver.name());</span>
+<span class="lineNum"> 579 </span><span class="lineCov"> 4 : if (pi.end()) return std::string();</span>
+<span class="lineNum"> 580 </span><span class="lineCov"> 5 : for (pkgCache::VerIterator vi = pi.VersionList(); !vi.end(); vi++)</span>
+<span class="lineNum"> 581 </span> : {
+<span class="lineNum"> 582 </span><span class="lineCov"> 4 : const char* v = vi.VerStr();</span>
+<span class="lineNum"> 583 </span><span class="lineCov"> 4 : if (v == 0) continue;</span>
+<span class="lineNum"> 584 </span><span class="lineCov"> 4 : if (ver.version() == v)</span>
+<span class="lineNum"> 585 </span> : {
+<span class="lineNum"> 586 </span> : // Code taken and adapted from apt-cache's DisplayRecord
+<span class="lineNum"> 587 </span> :
+<span class="lineNum"> 588 </span> : // Find an appropriate file
+<span class="lineNum"> 589 </span><span class="lineCov"> 3 : pkgCache::VerFileIterator vfi = vi.FileList();</span>
+<span class="lineNum"> 590 </span><span class="lineCov"> 3 : for (; !vfi.end(); vfi++)</span>
+<span class="lineNum"> 591 </span><span class="lineCov"> 3 : if ((vfi.File()-&gt;Flags &amp; pkgCache::Flag::NotSource) == 0)</span>
+<span class="lineNum"> 592 </span><span class="lineCov"> 3 : break;</span>
+<span class="lineNum"> 593 </span><span class="lineCov"> 3 : if (vfi.end())</span>
+<span class="lineNum"> 594 </span><span class="lineNoCov"> 0 : vfi = vi.FileList();</span>
+<span class="lineNum"> 595 </span> :
+<span class="lineNum"> 596 </span> : // Check and load the package list file
+<span class="lineNum"> 597 </span><span class="lineCov"> 3 : pkgCache::PkgFileIterator pfi = vfi.File();</span>
+<span class="lineNum"> 598 </span><span class="lineCov"> 3 : if (!pfi.IsOk())</span>
+<span class="lineNum"> 599 </span><span class="lineNoCov"> 0 : throw Exception(string(&quot;Reading the data record for a package version from file &quot;) + pfi.FileName());</span>
+<span class="lineNum"> 600 </span> :
+<span class="lineNum"> 601 </span><span class="lineCov"> 3 : FileFd pkgf(pfi.FileName(), FileFd::ReadOnly);</span>
+<span class="lineNum"> 602 </span><span class="lineCov"> 6 : if (_error-&gt;PendingError() == true)</span>
+<span class="lineNum"> 603 </span><span class="lineNoCov"> 0 : return std::string();</span>
+<span class="lineNum"> 604 </span> :
+<span class="lineNum"> 605 </span> : // Read the record and then write it out again.
+<span class="lineNum"> 606 </span><span class="lineCov"> 3 : char* buffer = new char[vfi-&gt;Size+1];</span>
+<span class="lineNum"> 607 </span><span class="lineCov"> 3 : buffer[vfi-&gt;Size] = '\n';</span>
+<span class="lineNum"> 608 </span><span class="lineCov"> 3 : if (!pkgf.Seek(vfi-&gt;Offset) || !pkgf.Read(buffer, vfi-&gt;Size))</span>
+<span class="lineNum"> 609 </span> : {
+<span class="lineNum"> 610 </span><span class="lineNoCov"> 0 : delete[] buffer;</span>
+<span class="lineNum"> 611 </span><span class="lineNoCov"> 0 : return std::string();</span>
+<span class="lineNum"> 612 </span> : }
+<span class="lineNum"> 613 </span> :
+<span class="lineNum"> 614 </span><span class="lineCov"> 3 : std::string res(buffer, vfi-&gt;Size);</span>
+<span class="lineNum"> 615 </span><span class="lineCov"> 6 : delete[] buffer;</span>
+<span class="lineNum"> 616 </span><span class="lineCov"> 3 : return res;</span>
+<span class="lineNum"> 617 </span> : }
+<span class="lineNum"> 618 </span> : }
+<span class="lineNum"> 619 </span><span class="lineCov"> 1 : return std::string();</span>
+<span class="lineNum"> 620 </span> : }
+<span class="lineNum"> 621 </span> :
+<span class="lineNum"> 622 </span><span class="lineCov"> 2 : void Apt::checkCacheUpdates()</span>
+<span class="lineNum"> 623 </span> : {
+<span class="lineNum"> 624 </span><span class="lineCov"> 2 : if (impl-&gt;m_open_timestamp &lt; timestamp())</span>
+<span class="lineNum"> 625 </span> : {
+<span class="lineNum"> 626 </span> : // Crudely reopen everything
+<span class="lineNum"> 627 </span><span class="lineCov"> 1 : delete impl;</span>
+<span class="lineNum"> 628 </span><span class="lineCov"> 1 : impl = new AptImplementation;</span>
+<span class="lineNum"> 629 </span> : }
+<span class="lineNum"> 630 </span><span class="lineCov"> 2 : }</span>
+<span class="lineNum"> 631 </span> :
+<span class="lineNum"> 632 </span><span class="lineCov"> 1 : void Apt::invalidateTimestamp()</span>
+<span class="lineNum"> 633 </span> : {
+<span class="lineNum"> 634 </span><span class="lineCov"> 1 : impl-&gt;m_open_timestamp = 0;</span>
+<span class="lineNum"> 635 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 636 </span> :
+<span class="lineNum"> 637 </span> : }
+<span class="lineNum"> 638 </span><span class="lineCov"> 6 : }</span>
+<span class="lineNum"> 639 </span> :
+<span class="lineNum"> 640 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/apt/apt.h.gcov.html b/rep/ept/apt/apt.h.gcov.html
new file mode 100644
index 0000000..7bde4c7
--- /dev/null
+++ b/rep/ept/apt/apt.h.gcov.html
@@ -0,0 +1,286 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/apt/apt.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/apt</a> - apt.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">6</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">50.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">3</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- C++ -*-
+<span class="lineNum"> 2 </span> : #ifndef EPT_APT_APT_H
+<span class="lineNum"> 3 </span> : #define EPT_APT_APT_H
+<span class="lineNum"> 4 </span> :
+<span class="lineNum"> 5 </span> : /** \file
+<span class="lineNum"> 6 </span> : * High-level front-end to libapt-pkg, as a data provider for the ept framework.
+<span class="lineNum"> 7 </span> : */
+<span class="lineNum"> 8 </span> :
+<span class="lineNum"> 9 </span> : /*
+<span class="lineNum"> 10 </span> : * Copyright (C) 2007,2008 Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 11 </span> : *
+<span class="lineNum"> 12 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 13 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 14 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 15 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 16 </span> : *
+<span class="lineNum"> 17 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 18 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 19 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 20 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 21 </span> : *
+<span class="lineNum"> 22 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 23 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 24 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 25 </span> : */
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #include &lt;wibble/exception.h&gt;
+<span class="lineNum"> 28 </span> : #include &lt;ept/apt/version.h&gt;
+<span class="lineNum"> 29 </span> : #include &lt;ept/core/apt.h&gt;
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : #include &lt;iterator&gt;
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : namespace ept {
+<span class="lineNum"> 34 </span> : namespace apt {
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : class Exception : public wibble::exception::Generic
+<span class="lineNum"> 37 </span> : {
+<span class="lineNum"> 38 </span> : protected:
+<span class="lineNum"> 39 </span> : std::string m_message;
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : public:
+<span class="lineNum"> 42 </span> : Exception(const std::string&amp; context) throw ();
+<span class="lineNum"> 43 </span><span class="lineNoCov"> 0 : ~Exception() throw () {}</span>
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span><span class="lineNoCov"> 0 : virtual const char* type() const throw () { return &quot;Apt&quot;; }</span>
+<span class="lineNum"> 46 </span><span class="lineNoCov"> 0 : virtual std::string desc() const throw () { return m_message; }</span>
+<span class="lineNum"> 47 </span> : };
+<span class="lineNum"> 48 </span> :
+<span class="lineNum"> 49 </span> : class Apt;
+<span class="lineNum"> 50 </span> : class AptImplementation;
+<span class="lineNum"> 51 </span> : class RecordIteratorImpl;
+<span class="lineNum"> 52 </span> : using core::PackageState;
+<span class="lineNum"> 53 </span> :
+<span class="lineNum"> 54 </span> : /**
+<span class="lineNum"> 55 </span> : * High-level access to the Apt cache, as a data provider for the ept
+<span class="lineNum"> 56 </span> : * framework.
+<span class="lineNum"> 57 </span> : *
+<span class="lineNum"> 58 </span> : * This class wraps the Apt cache and allows to query it in various ways.
+<span class="lineNum"> 59 </span> : */
+<span class="lineNum"> 60 </span> : class Apt
+<span class="lineNum"> 61 </span> : {
+<span class="lineNum"> 62 </span> : protected:
+<span class="lineNum"> 63 </span> : AptImplementation* impl;
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : public:
+<span class="lineNum"> 66 </span> : // Iterate Packages in the Apt cache
+<span class="lineNum"> 67 </span> : class Iterator : public std::iterator&lt;std::input_iterator_tag, std::string, void, void, void&gt;
+<span class="lineNum"> 68 </span> : {
+<span class="lineNum"> 69 </span> : void* cur;
+<span class="lineNum"> 70 </span> :
+<span class="lineNum"> 71 </span> : protected:
+<span class="lineNum"> 72 </span> : // Construct a valid iterator
+<span class="lineNum"> 73 </span><span class="lineCov"> 4 : Iterator(void* cur) : cur(cur) {}</span>
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span> : // Construct and end iterator
+<span class="lineNum"> 76 </span><span class="lineCov"> 3581 : Iterator() : cur(0) {}</span>
+<span class="lineNum"> 77 </span> :
+<span class="lineNum"> 78 </span> : public:
+<span class="lineNum"> 79 </span> : // Copy constructor
+<span class="lineNum"> 80 </span> : Iterator(const Iterator&amp;);
+<span class="lineNum"> 81 </span> : ~Iterator();
+<span class="lineNum"> 82 </span> : std::string operator*();
+<span class="lineNum"> 83 </span> : Iterator&amp; operator++();
+<span class="lineNum"> 84 </span> : Iterator&amp; operator=(const Iterator&amp;);
+<span class="lineNum"> 85 </span> : bool operator==(const Iterator&amp;) const;
+<span class="lineNum"> 86 </span> : bool operator!=(const Iterator&amp;) const;
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span> : // FIXME: Iterator operator++(int); cannot be easily implemented
+<span class="lineNum"> 89 </span> : // because of how Apt's pkgIterator works
+<span class="lineNum"> 90 </span> :
+<span class="lineNum"> 91 </span> : friend class Apt;
+<span class="lineNum"> 92 </span> : };
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span> : // Iterate Package records in the Apt cache
+<span class="lineNum"> 95 </span> : class RecordIterator : public std::iterator&lt;std::input_iterator_tag, std::string, void, void, void&gt;
+<span class="lineNum"> 96 </span> : {
+<span class="lineNum"> 97 </span> : RecordIteratorImpl* impl;
+<span class="lineNum"> 98 </span> : size_t pos;
+<span class="lineNum"> 99 </span> : std::string cur;
+<span class="lineNum"> 100 </span> : size_t cur_pos;
+<span class="lineNum"> 101 </span> :
+<span class="lineNum"> 102 </span> : protected:
+<span class="lineNum"> 103 </span> : // Construct a valid iterator
+<span class="lineNum"> 104 </span> : RecordIterator(RecordIteratorImpl* cur, size_t pos = 0);
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span> : // Construct and end iterator
+<span class="lineNum"> 107 </span><span class="lineCov"> 3481 : RecordIterator() : impl(0), pos(0), cur_pos(0) {}</span>
+<span class="lineNum"> 108 </span> :
+<span class="lineNum"> 109 </span> : public:
+<span class="lineNum"> 110 </span> : // Copy constructor
+<span class="lineNum"> 111 </span> : RecordIterator(const RecordIterator&amp; r);
+<span class="lineNum"> 112 </span> :
+<span class="lineNum"> 113 </span> : ~RecordIterator();
+<span class="lineNum"> 114 </span> : std::string operator*();
+<span class="lineNum"> 115 </span> : std::string* operator-&gt;();
+<span class="lineNum"> 116 </span> : RecordIterator&amp; operator++();
+<span class="lineNum"> 117 </span> : RecordIterator&amp; operator=(const RecordIterator&amp; r);
+<span class="lineNum"> 118 </span> : bool operator==(const RecordIterator&amp;) const;
+<span class="lineNum"> 119 </span> : bool operator!=(const RecordIterator&amp;) const;
+<span class="lineNum"> 120 </span> :
+<span class="lineNum"> 121 </span> : // FIXME: Iterator operator++(int); cannot be easily implemented
+<span class="lineNum"> 122 </span> : // because of how Apt's pkgIterator works
+<span class="lineNum"> 123 </span> :
+<span class="lineNum"> 124 </span> : friend class Apt;
+<span class="lineNum"> 125 </span> : };
+<span class="lineNum"> 126 </span> :
+<span class="lineNum"> 127 </span> : typedef Iterator iterator;
+<span class="lineNum"> 128 </span> : typedef RecordIterator record_iterator;
+<span class="lineNum"> 129 </span> :
+<span class="lineNum"> 130 </span> : /**
+<span class="lineNum"> 131 </span> : * Create the Apt data provider
+<span class="lineNum"> 132 </span> : */
+<span class="lineNum"> 133 </span> : Apt();
+<span class="lineNum"> 134 </span> : ~Apt();
+<span class="lineNum"> 135 </span> :
+<span class="lineNum"> 136 </span> : iterator begin() const;
+<span class="lineNum"> 137 </span> : iterator end() const;
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> : record_iterator recordBegin() const;
+<span class="lineNum"> 140 </span> : record_iterator recordEnd() const;
+<span class="lineNum"> 141 </span> :
+<span class="lineNum"> 142 </span> :
+<span class="lineNum"> 143 </span> : /// Return the number of packages in the archive
+<span class="lineNum"> 144 </span> : size_t size() const;
+<span class="lineNum"> 145 </span> :
+<span class="lineNum"> 146 </span> : /**
+<span class="lineNum"> 147 </span> : * Validate a package name, returning trye if it exists in the APT database,
+<span class="lineNum"> 148 </span> : * or false if it does not.
+<span class="lineNum"> 149 </span> : */
+<span class="lineNum"> 150 </span> : bool isValid(const std::string&amp; pkg) const;
+<span class="lineNum"> 151 </span> :
+<span class="lineNum"> 152 </span> : /// Validate a package name, returning it if it exists in the APT database,
+<span class="lineNum"> 153 </span> : /// or returning the empty string if it does not.
+<span class="lineNum"> 154 </span> : std::string validate(const std::string&amp; pkg) const
+<span class="lineNum"> 155 </span> : {
+<span class="lineNum"> 156 </span> : if (isValid(pkg))
+<span class="lineNum"> 157 </span> : return pkg;
+<span class="lineNum"> 158 </span> : return std::string();
+<span class="lineNum"> 159 </span> : }
+<span class="lineNum"> 160 </span> :
+<span class="lineNum"> 161 </span> : /// Validate a Version, returning it if it exists in the APT database, or
+<span class="lineNum"> 162 </span> : /// returning the invalid version if it does not.
+<span class="lineNum"> 163 </span> : Version validate(const Version&amp; ver) const;
+<span class="lineNum"> 164 </span> :
+<span class="lineNum"> 165 </span> : /// Return the installed version for a package
+<span class="lineNum"> 166 </span> : Version installedVersion(const std::string&amp; pkg) const;
+<span class="lineNum"> 167 </span> :
+<span class="lineNum"> 168 </span> : /// Return the candidate version for a package
+<span class="lineNum"> 169 </span> : Version candidateVersion(const std::string&amp; pkg) const;
+<span class="lineNum"> 170 </span> :
+<span class="lineNum"> 171 </span> : /**
+<span class="lineNum"> 172 </span> : * Return the candidate version for a package, if available, or the
+<span class="lineNum"> 173 </span> : * installed version otherwise
+<span class="lineNum"> 174 </span> : */
+<span class="lineNum"> 175 </span> : Version anyVersion(const std::string&amp; pkg) const;
+<span class="lineNum"> 176 </span> :
+<span class="lineNum"> 177 </span> : /// Return state information on a package
+<span class="lineNum"> 178 </span> : PackageState state(const std::string&amp; pkg) const;
+<span class="lineNum"> 179 </span> :
+<span class="lineNum"> 180 </span> : /**
+<span class="lineNum"> 181 </span> : * Perform a package search.
+<span class="lineNum"> 182 </span> : *
+<span class="lineNum"> 183 </span> : * All packages for which the functor filter returns true, are passed to
+<span class="lineNum"> 184 </span> : * the functor out.
+<span class="lineNum"> 185 </span> : */
+<span class="lineNum"> 186 </span> : //template&lt;typename FILTER, typename OUT&gt;
+<span class="lineNum"> 187 </span> : //void search(const FILTER&amp; filter, OUT&amp; out);
+<span class="lineNum"> 188 </span> :
+<span class="lineNum"> 189 </span> : /// Get the raw package record for the given Version
+<span class="lineNum"> 190 </span> : std::string rawRecord(const std::string&amp; pkg) const;
+<span class="lineNum"> 191 </span> :
+<span class="lineNum"> 192 </span> : /// Get the raw package record for the given Version
+<span class="lineNum"> 193 </span> : std::string rawRecord(const Version&amp; ver) const;
+<span class="lineNum"> 194 </span> :
+<span class="lineNum"> 195 </span> : /// Timestamp of when the apt index was last modified
+<span class="lineNum"> 196 </span> : time_t timestamp();
+<span class="lineNum"> 197 </span> :
+<span class="lineNum"> 198 </span> : /**
+<span class="lineNum"> 199 </span> : * Check if the cache has been changed by another process, and reopen it if
+<span class="lineNum"> 200 </span> : * that is the case.
+<span class="lineNum"> 201 </span> : *
+<span class="lineNum"> 202 </span> : * Note that this method can invalidate all existing iterators.
+<span class="lineNum"> 203 </span> : */
+<span class="lineNum"> 204 </span> : void checkCacheUpdates();
+<span class="lineNum"> 205 </span> :
+<span class="lineNum"> 206 </span> : /**
+<span class="lineNum"> 207 </span> : * Invalidate the cache timestamp used to track cache updates.
+<span class="lineNum"> 208 </span> : *
+<span class="lineNum"> 209 </span> : * @warning Do not use this method: it is here only to support the test
+<span class="lineNum"> 210 </span> : * cases, and may disappear in any future version.
+<span class="lineNum"> 211 </span> : */
+<span class="lineNum"> 212 </span> : void invalidateTimestamp();
+<span class="lineNum"> 213 </span> : };
+<span class="lineNum"> 214 </span> :
+<span class="lineNum"> 215 </span> : }
+<span class="lineNum"> 216 </span> : }
+<span class="lineNum"> 217 </span> :
+<span class="lineNum"> 218 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 219 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/apt/apt.test.h.gcov.html b/rep/ept/apt/apt.test.h.gcov.html
new file mode 100644
index 0000000..cd79123
--- /dev/null
+++ b/rep/ept/apt/apt.test.h.gcov.html
@@ -0,0 +1,259 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/apt/apt.test.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/apt</a> - apt.test.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">99</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">99</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /*
+<span class="lineNum"> 2 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 3 </span> : *
+<span class="lineNum"> 4 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 5 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 6 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 7 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 8 </span> : *
+<span class="lineNum"> 9 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 10 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 11 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 12 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 13 </span> : *
+<span class="lineNum"> 14 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 15 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 16 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 17 </span> : */
+<span class="lineNum"> 18 </span> :
+<span class="lineNum"> 19 </span> : #include &lt;ept/test.h&gt;
+<span class="lineNum"> 20 </span> : #include &lt;ept/apt/apt.h&gt;
+<span class="lineNum"> 21 </span> : #include &lt;set&gt;
+<span class="lineNum"> 22 </span> : #include &lt;algorithm&gt;
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : using namespace std;
+<span class="lineNum"> 25 </span> : using namespace ept;
+<span class="lineNum"> 26 </span> : using namespace ept::apt;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span><span class="lineCov"> 26 : struct TestApt : AptTestEnvironment {</span>
+<span class="lineNum"> 29 </span> : Apt apt;
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : // Check that iterations iterates among some packages
+<span class="lineNum"> 32 </span><span class="lineCov"> 1 : Test iterators()</span>
+<span class="lineNum"> 33 </span> : {
+<span class="lineNum"> 34 </span><span class="lineCov"> 1 : Apt::iterator i = apt.begin();</span>
+<span class="lineNum"> 35 </span><span class="lineCov"> 1 : assert(i != apt.end());</span>
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span><span class="lineCov"> 1 : size_t count = 0;</span>
+<span class="lineNum"> 38 </span><span class="lineCov"> 1789 : for (; i != apt.end(); ++i)</span>
+<span class="lineNum"> 39 </span><span class="lineCov"> 1788 : ++count;</span>
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span><span class="lineCov"> 1 : assert(count &gt; 100);</span>
+<span class="lineNum"> 42 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span> : // Check that iteration gives some well-known packages
+<span class="lineNum"> 45 </span><span class="lineCov"> 1 : Test aptExists()</span>
+<span class="lineNum"> 46 </span> : {
+<span class="lineNum"> 47 </span><span class="lineCov"> 1 : set&lt;string&gt; packages;</span>
+<span class="lineNum"> 48 </span> :
+<span class="lineNum"> 49 </span><span class="lineCov"> 1 : std::copy(apt.begin(), apt.end(), inserter(packages, packages.begin()));</span>
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span><span class="lineCov"> 1 : assert(packages.find(&quot;libsp1&quot;) != packages.end());</span>
+<span class="lineNum"> 52 </span> : // TODO this exposes a bug somewhere... sp definitely is among
+<span class="lineNum"> 53 </span> : // the packages
+<span class="lineNum"> 54 </span> : // assert(packages.find(&quot;sp&quot;) != packages.end());
+<span class="lineNum"> 55 </span><span class="lineCov"> 2 : assert(packages.find(&quot;&quot;) == packages.end());</span>
+<span class="lineNum"> 56 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 57 </span> :
+<span class="lineNum"> 58 </span> : // Check that timestamp gives some meaningful timestamp
+<span class="lineNum"> 59 </span><span class="lineCov"> 1 : Test timestamp()</span>
+<span class="lineNum"> 60 </span> : {
+<span class="lineNum"> 61 </span><span class="lineCov"> 1 : time_t ts = apt.timestamp();</span>
+<span class="lineNum"> 62 </span><span class="lineCov"> 1 : assert(ts &gt; 1000000);</span>
+<span class="lineNum"> 63 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : // Check the package validator
+<span class="lineNum"> 66 </span><span class="lineCov"> 1 : Test validity()</span>
+<span class="lineNum"> 67 </span> : {
+<span class="lineNum"> 68 </span><span class="lineCov"> 1 : assert(apt.isValid(&quot;apt&quot;));</span>
+<span class="lineNum"> 69 </span><span class="lineCov"> 2 : assert(!apt.isValid(&quot;this-package-does-not-really-exists&quot;));</span>
+<span class="lineNum"> 70 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span> : // Check the version instantiators
+<span class="lineNum"> 73 </span><span class="lineCov"> 1 : Test versions()</span>
+<span class="lineNum"> 74 </span> : {
+<span class="lineNum"> 75 </span><span class="lineCov"> 1 : std::string pkg(&quot;apt&quot;);</span>
+<span class="lineNum"> 76 </span><span class="lineCov"> 1 : Version ver = apt.candidateVersion(pkg);</span>
+<span class="lineNum"> 77 </span><span class="lineCov"> 1 : assert(ver.isValid());</span>
+<span class="lineNum"> 78 </span> :
+<span class="lineNum"> 79 </span><span class="lineCov"> 2 : ver = apt.installedVersion(pkg);</span>
+<span class="lineNum"> 80 </span><span class="lineCov"> 1 : assert(ver.isValid());</span>
+<span class="lineNum"> 81 </span> :
+<span class="lineNum"> 82 </span><span class="lineCov"> 2 : ver = apt.anyVersion(pkg);</span>
+<span class="lineNum"> 83 </span><span class="lineCov"> 1 : assert(ver.isValid());</span>
+<span class="lineNum"> 84 </span> :
+<span class="lineNum"> 85 </span><span class="lineCov"> 2 : std::string pkg1(&quot;this-package-does-not-really-exists&quot;);</span>
+<span class="lineNum"> 86 </span><span class="lineCov"> 2 : ver = apt.candidateVersion(pkg1);</span>
+<span class="lineNum"> 87 </span><span class="lineCov"> 1 : assert(!ver.isValid());</span>
+<span class="lineNum"> 88 </span> :
+<span class="lineNum"> 89 </span><span class="lineCov"> 2 : ver = apt.installedVersion(pkg1);</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 1 : assert(!ver.isValid());</span>
+<span class="lineNum"> 91 </span> :
+<span class="lineNum"> 92 </span><span class="lineCov"> 2 : ver = apt.anyVersion(pkg1);</span>
+<span class="lineNum"> 93 </span><span class="lineCov"> 1 : assert(!ver.isValid());</span>
+<span class="lineNum"> 94 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 95 </span> :
+<span class="lineNum"> 96 </span> : // Check the version validator
+<span class="lineNum"> 97 </span><span class="lineCov"> 1 : Test versionValidity()</span>
+<span class="lineNum"> 98 </span> : {
+<span class="lineNum"> 99 </span><span class="lineCov"> 1 : Version ver = apt.candidateVersion(&quot;apt&quot;);</span>
+<span class="lineNum"> 100 </span><span class="lineCov"> 2 : assert(apt.validate(ver) == ver);</span>
+<span class="lineNum"> 101 </span> :
+<span class="lineNum"> 102 </span><span class="lineCov"> 1 : ver = Version(&quot;this-package-does-not-really-exists&quot;, &quot;0.1&quot;);</span>
+<span class="lineNum"> 103 </span><span class="lineCov"> 2 : assert(!apt.validate(ver).isValid());</span>
+<span class="lineNum"> 104 </span> :
+<span class="lineNum"> 105 </span><span class="lineCov"> 1 : ver = Version(&quot;apt&quot;, &quot;0.31415&quot;);</span>
+<span class="lineNum"> 106 </span><span class="lineCov"> 2 : assert(!apt.validate(ver).isValid());</span>
+<span class="lineNum"> 107 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 108 </span> :
+<span class="lineNum"> 109 </span> : // Check the raw record accessor
+<span class="lineNum"> 110 </span><span class="lineCov"> 1 : Test rawRecord()</span>
+<span class="lineNum"> 111 </span> : {
+<span class="lineNum"> 112 </span><span class="lineCov"> 1 : string pkg(&quot;sp&quot;);</span>
+<span class="lineNum"> 113 </span><span class="lineCov"> 1 : Version ver = apt.candidateVersion(pkg);</span>
+<span class="lineNum"> 114 </span><span class="lineCov"> 1 : assert(apt.validate(ver) == ver);</span>
+<span class="lineNum"> 115 </span> :
+<span class="lineNum"> 116 </span><span class="lineCov"> 1 : string record = apt.rawRecord(ver);</span>
+<span class="lineNum"> 117 </span><span class="lineCov"> 1 : assert(record.find(&quot;Package: sp&quot;) != string::npos);</span>
+<span class="lineNum"> 118 </span><span class="lineCov"> 2 : assert(record.find(&quot;Section: text&quot;) != string::npos);</span>
+<span class="lineNum"> 119 </span> :
+<span class="lineNum"> 120 </span><span class="lineCov"> 2 : record = apt.rawRecord(Version(&quot;sp&quot;, &quot;0.31415&quot;));</span>
+<span class="lineNum"> 121 </span><span class="lineCov"> 2 : assert_eq(record, string());</span>
+<span class="lineNum"> 122 </span> :
+<span class="lineNum"> 123 </span><span class="lineCov"> 1 : assert_eq(apt.rawRecord(pkg), apt.rawRecord(apt.anyVersion(pkg)));</span>
+<span class="lineNum"> 124 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 125 </span> :
+<span class="lineNum"> 126 </span> : // Check the package state accessor
+<span class="lineNum"> 127 </span><span class="lineCov"> 1 : Test state()</span>
+<span class="lineNum"> 128 </span> : {
+<span class="lineNum"> 129 </span><span class="lineCov"> 1 : PackageState s = apt.state(&quot;kdenetwork&quot;);</span>
+<span class="lineNum"> 130 </span><span class="lineCov"> 2 : assert(s.isValid());</span>
+<span class="lineNum"> 131 </span><span class="lineCov"> 2 : assert(s.isInstalled());</span>
+<span class="lineNum"> 132 </span> :
+<span class="lineNum"> 133 </span><span class="lineCov"> 2 : s = apt.state(&quot;this-package-does-not-really-exists&quot;);</span>
+<span class="lineNum"> 134 </span><span class="lineCov"> 2 : assert(!s.isValid());</span>
+<span class="lineNum"> 135 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 136 </span> :
+<span class="lineNum"> 137 </span> : // Check the record iterator (accessing with *)
+<span class="lineNum"> 138 </span><span class="lineCov"> 1 : Test recordIteration()</span>
+<span class="lineNum"> 139 </span> : {
+<span class="lineNum"> 140 </span><span class="lineCov"> 1 : size_t count = 0;</span>
+<span class="lineNum"> 141 </span><span class="lineCov"> 435 : for (Apt::record_iterator i = apt.recordBegin();</span>
+<span class="lineNum"> 142 </span> : i != apt.recordEnd(); ++i)
+<span class="lineNum"> 143 </span> : {
+<span class="lineNum"> 144 </span><span class="lineCov"> 434 : assert((*i).size() &gt; 8);</span>
+<span class="lineNum"> 145 </span><span class="lineCov"> 434 : assert_eq((*i).substr(0, 8), &quot;Package:&quot;);</span>
+<span class="lineNum"> 146 </span><span class="lineCov"> 434 : ++count;</span>
+<span class="lineNum"> 147 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 148 </span><span class="lineCov"> 2 : assert(count &gt; 200);</span>
+<span class="lineNum"> 149 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 150 </span> :
+<span class="lineNum"> 151 </span> : // Check the record iterator (accessing with -&gt;)
+<span class="lineNum"> 152 </span><span class="lineCov"> 1 : Test recordIteration2()</span>
+<span class="lineNum"> 153 </span> : {
+<span class="lineNum"> 154 </span><span class="lineCov"> 1 : size_t count = 0;</span>
+<span class="lineNum"> 155 </span><span class="lineCov"> 435 : for (Apt::record_iterator i = apt.recordBegin();</span>
+<span class="lineNum"> 156 </span> : i != apt.recordEnd(); ++i)
+<span class="lineNum"> 157 </span> : {
+<span class="lineNum"> 158 </span><span class="lineCov"> 434 : assert(i-&gt;size() &gt; 8);</span>
+<span class="lineNum"> 159 </span><span class="lineCov"> 868 : assert_eq(i-&gt;substr(0, 8), &quot;Package:&quot;);</span>
+<span class="lineNum"> 160 </span><span class="lineCov"> 434 : ++count;</span>
+<span class="lineNum"> 161 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 162 </span><span class="lineCov"> 2 : assert(count &gt; 200);</span>
+<span class="lineNum"> 163 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 164 </span> :
+<span class="lineNum"> 165 </span> : // Check that the iterators can be used with the algorithms
+<span class="lineNum"> 166 </span><span class="lineCov"> 1 : Test stlIteration()</span>
+<span class="lineNum"> 167 </span> : {
+<span class="lineNum"> 168 </span><span class="lineCov"> 1 : vector&lt;string&gt; out;</span>
+<span class="lineNum"> 169 </span><span class="lineCov"> 1 : std::copy(apt.begin(), apt.end(), back_inserter(out));</span>
+<span class="lineNum"> 170 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 171 </span> :
+<span class="lineNum"> 172 </span> : // Check that the iterators can be used with the algorithms
+<span class="lineNum"> 173 </span><span class="lineCov"> 1 : Test stlRecordIteration()</span>
+<span class="lineNum"> 174 </span> : {
+<span class="lineNum"> 175 </span><span class="lineCov"> 1 : vector&lt;string&gt; out;</span>
+<span class="lineNum"> 176 </span><span class="lineCov"> 1 : std::copy(apt.recordBegin(), apt.recordEnd(), back_inserter(out));</span>
+<span class="lineNum"> 177 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 178 </span> :
+<span class="lineNum"> 179 </span> : // Check that checkUpdates will keep a working Apt object
+<span class="lineNum"> 180 </span><span class="lineCov"> 1 : Test checkUpdates()</span>
+<span class="lineNum"> 181 </span> : {
+<span class="lineNum"> 182 </span><span class="lineCov"> 1 : assert(apt.isValid(&quot;apt&quot;));</span>
+<span class="lineNum"> 183 </span><span class="lineCov"> 1 : apt.checkCacheUpdates();</span>
+<span class="lineNum"> 184 </span><span class="lineCov"> 2 : assert(apt.isValid(&quot;apt&quot;));</span>
+<span class="lineNum"> 185 </span><span class="lineCov"> 1 : apt.invalidateTimestamp(); </span>
+<span class="lineNum"> 186 </span><span class="lineCov"> 1 : apt.checkCacheUpdates();</span>
+<span class="lineNum"> 187 </span><span class="lineCov"> 2 : assert(apt.isValid(&quot;apt&quot;));</span>
+<span class="lineNum"> 188 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 189 </span> :
+<span class="lineNum"> 190 </span> : };
+<span class="lineNum"> 191 </span> :
+<span class="lineNum"> 192 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/apt/index.html b/rep/ept/apt/index.html
new file mode 100644
index 0000000..9a94d3e
--- /dev/null
+++ b/rep/ept/apt/index.html
@@ -0,0 +1,182 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/apt</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - ept/apt</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">880</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">89.2 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">785</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="apt.cc.gcov.html">apt.cc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=77 height=10 alt="76.8%"><img src="../../snow.png" width=23 height=10 alt="76.8%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">76.8&nbsp;%</td>
+ <td class="coverNumHi">248&nbsp;/&nbsp;323&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="apt.h.gcov.html">apt.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=50 height=10 alt="50.0%"><img src="../../snow.png" width=50 height=10 alt="50.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">50.0&nbsp;%</td>
+ <td class="coverNumHi">3&nbsp;/&nbsp;6&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="apt.test.h.gcov.html">apt.test.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">99&nbsp;/&nbsp;99&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="packagerecord.cc.gcov.html">packagerecord.cc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=91 height=10 alt="90.9%"><img src="../../snow.png" width=9 height=10 alt="90.9%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">90.9&nbsp;%</td>
+ <td class="coverNumHi">40&nbsp;/&nbsp;44&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="packagerecord.h.gcov.html">packagerecord.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=95 height=10 alt="95.4%"><img src="../../snow.png" width=5 height=10 alt="95.4%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">95.4&nbsp;%</td>
+ <td class="coverNumHi">62&nbsp;/&nbsp;65&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="packagerecord.test.h.gcov.html">packagerecord.test.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=88 height=10 alt="88.5%"><img src="../../snow.png" width=12 height=10 alt="88.5%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">88.5&nbsp;%</td>
+ <td class="coverNumHi">46&nbsp;/&nbsp;52&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="recordparser.cc.gcov.html">recordparser.cc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">62&nbsp;/&nbsp;62&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="recordparser.h.gcov.html">recordparser.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">8&nbsp;/&nbsp;8&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="recordparser.test.h.gcov.html">recordparser.test.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">107&nbsp;/&nbsp;107&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="version.cc.gcov.html">version.cc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=88 height=10 alt="88.2%"><img src="../../snow.png" width=12 height=10 alt="88.2%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">88.2&nbsp;%</td>
+ <td class="coverNumHi">30&nbsp;/&nbsp;34&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="version.h.gcov.html">version.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">9&nbsp;/&nbsp;9&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="version.test.h.gcov.html">version.test.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">71&nbsp;/&nbsp;71&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/apt/packagerecord.cc.gcov.html b/rep/ept/apt/packagerecord.cc.gcov.html
new file mode 100644
index 0000000..bf04344
--- /dev/null
+++ b/rep/ept/apt/packagerecord.cc.gcov.html
@@ -0,0 +1,185 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/apt/packagerecord.cc</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/apt</a> - packagerecord.cc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">44</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">90.9 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">40</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /** \file
+<span class="lineNum"> 2 </span> : * Parser for APT records, with specialised accessors for package records
+<span class="lineNum"> 3 </span> : */
+<span class="lineNum"> 4 </span> :
+<span class="lineNum"> 5 </span> : /*
+<span class="lineNum"> 6 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 7 </span> : *
+<span class="lineNum"> 8 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 9 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 10 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 11 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 12 </span> : *
+<span class="lineNum"> 13 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 14 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 15 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 16 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 17 </span> : *
+<span class="lineNum"> 18 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 19 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 20 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 21 </span> : */
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : #include &lt;ept/apt/packagerecord.h&gt;
+<span class="lineNum"> 24 </span> :
+<span class="lineNum"> 25 </span> : #include &lt;cctype&gt;
+<span class="lineNum"> 26 </span> : #include &lt;cstdlib&gt;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : //#include &lt;iostream&gt;
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : using namespace std;
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : namespace ept {
+<span class="lineNum"> 33 </span> : namespace apt {
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span><span class="lineCov"> 5210 : size_t PackageRecord::parseSize(size_t def, const std::string&amp; str) const</span>
+<span class="lineNum"> 36 </span> : {
+<span class="lineNum"> 37 </span><span class="lineCov"> 5210 : if (str == string())</span>
+<span class="lineNum"> 38 </span><span class="lineCov"> 54 : return def;</span>
+<span class="lineNum"> 39 </span><span class="lineCov"> 5156 : return (size_t)strtoul(str.c_str(), NULL, 10);</span>
+<span class="lineNum"> 40 </span> : }
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span><span class="lineCov"> 1 : std::string PackageRecord::parseShortDescription(const std::string&amp; def, const std::string&amp; str) const</span>
+<span class="lineNum"> 43 </span> : {
+<span class="lineNum"> 44 </span><span class="lineCov"> 1 : if (str == std::string())</span>
+<span class="lineNum"> 45 </span><span class="lineNoCov"> 0 : return def;</span>
+<span class="lineNum"> 46 </span><span class="lineCov"> 1 : size_t pos = str.find(&quot;\n&quot;);</span>
+<span class="lineNum"> 47 </span><span class="lineCov"> 1 : if (pos == std::string::npos)</span>
+<span class="lineNum"> 48 </span><span class="lineNoCov"> 0 : return str;</span>
+<span class="lineNum"> 49 </span> : else
+<span class="lineNum"> 50 </span><span class="lineCov"> 1 : return str.substr(0, pos);</span>
+<span class="lineNum"> 51 </span> : }
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span><span class="lineCov"> 1 : std::string PackageRecord::parseLongDescription(const std::string&amp; def, const std::string&amp; str) const</span>
+<span class="lineNum"> 54 </span> : {
+<span class="lineNum"> 55 </span><span class="lineCov"> 1 : if (str == std::string())</span>
+<span class="lineNum"> 56 </span><span class="lineNoCov"> 0 : return def;</span>
+<span class="lineNum"> 57 </span><span class="lineCov"> 1 : size_t pos = str.find(&quot;\n&quot;);</span>
+<span class="lineNum"> 58 </span><span class="lineCov"> 1 : if (pos == std::string::npos)</span>
+<span class="lineNum"> 59 </span><span class="lineNoCov"> 0 : return str;</span>
+<span class="lineNum"> 60 </span> : else
+<span class="lineNum"> 61 </span> : {
+<span class="lineNum"> 62 </span> : // Trim trailing spaces
+<span class="lineNum"> 63 </span><span class="lineCov"> 1 : for (++pos; pos &lt; str.size() &amp;&amp; isspace(str[pos]); ++pos)</span>
+<span class="lineNum"> 64 </span> : ;
+<span class="lineNum"> 65 </span><span class="lineCov"> 1 : return str.substr(pos);</span>
+<span class="lineNum"> 66 </span> : }
+<span class="lineNum"> 67 </span> : }
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span><span class="lineCov"> 2605 : std::set&lt;std::string&gt; PackageRecord::parseTags(const std::set&lt;std::string&gt;&amp; def, const std::string&amp; str) const</span>
+<span class="lineNum"> 70 </span> : {
+<span class="lineNum"> 71 </span><span class="lineCov"> 2605 : if (str == string())</span>
+<span class="lineNum"> 72 </span><span class="lineCov"> 2604 : return def;</span>
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span><span class="lineCov"> 1 : set&lt;string&gt; res;</span>
+<span class="lineNum"> 75 </span> :
+<span class="lineNum"> 76 </span><span class="lineCov"> 1 : size_t pos = 0;</span>
+<span class="lineNum"> 77 </span><span class="lineCov"> 13 : while (pos &lt; str.size())</span>
+<span class="lineNum"> 78 </span> : {
+<span class="lineNum"> 79 </span><span class="lineCov"> 12 : string tag;</span>
+<span class="lineNum"> 80 </span><span class="lineCov"> 12 : size_t i = str.find(&quot;, &quot;, pos);</span>
+<span class="lineNum"> 81 </span><span class="lineCov"> 12 : if (i == string::npos)</span>
+<span class="lineNum"> 82 </span><span class="lineCov"> 1 : tag = str.substr(pos);</span>
+<span class="lineNum"> 83 </span> : else
+<span class="lineNum"> 84 </span><span class="lineCov"> 11 : tag = str.substr(pos, i-pos);</span>
+<span class="lineNum"> 85 </span> :
+<span class="lineNum"> 86 </span> : // Check if we need curly brace expansion
+<span class="lineNum"> 87 </span><span class="lineCov"> 12 : if (tag[tag.size() - 1] == '}')</span>
+<span class="lineNum"> 88 </span> : {
+<span class="lineNum"> 89 </span><span class="lineCov"> 1 : size_t begin = tag.find('{');</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 1 : if (begin != string::npos)</span>
+<span class="lineNum"> 91 </span> : {
+<span class="lineNum"> 92 </span><span class="lineCov"> 1 : string prefix(tag, 0, begin);</span>
+<span class="lineNum"> 93 </span><span class="lineCov"> 1 : ++begin;</span>
+<span class="lineNum"> 94 </span> : size_t end;
+<span class="lineNum"> 95 </span><span class="lineCov"> 4 : while ((end = tag.find(',', begin)) != string::npos)</span>
+<span class="lineNum"> 96 </span> : {
+<span class="lineNum"> 97 </span><span class="lineCov"> 2 : res.insert(prefix + tag.substr(begin, end-begin));</span>
+<span class="lineNum"> 98 </span><span class="lineCov"> 2 : begin = end + 1;</span>
+<span class="lineNum"> 99 </span> : }
+<span class="lineNum"> 100 </span><span class="lineCov"> 1 : res.insert(prefix + tag.substr(begin, tag.size() - 1 - begin));</span>
+<span class="lineNum"> 101 </span> : }
+<span class="lineNum"> 102 </span> : } else {
+<span class="lineNum"> 103 </span><span class="lineCov"> 11 : res.insert(tag);</span>
+<span class="lineNum"> 104 </span> : }
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span><span class="lineCov"> 12 : if (i == string::npos)</span>
+<span class="lineNum"> 107 </span><span class="lineCov"> 1 : break;</span>
+<span class="lineNum"> 108 </span> : else
+<span class="lineNum"> 109 </span><span class="lineCov"> 11 : pos = i + 2;</span>
+<span class="lineNum"> 110 </span> : }
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span><span class="lineCov"> 1 : return res;</span>
+<span class="lineNum"> 113 </span> : }
+<span class="lineNum"> 114 </span> :
+<span class="lineNum"> 115 </span> : }
+<span class="lineNum"> 116 </span> : }
+<span class="lineNum"> 117 </span> :
+<span class="lineNum"> 118 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/apt/packagerecord.h.gcov.html b/rep/ept/apt/packagerecord.h.gcov.html
new file mode 100644
index 0000000..afd295c
--- /dev/null
+++ b/rep/ept/apt/packagerecord.h.gcov.html
@@ -0,0 +1,243 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/apt/packagerecord.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/apt</a> - packagerecord.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">65</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">95.4 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">62</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef EPT_APT_PACKAGERECORD_H
+<span class="lineNum"> 2 </span> : #define EPT_APT_PACKAGERECORD_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** \file
+<span class="lineNum"> 5 </span> : * Parser for APT records, with specialised accessors for package records
+<span class="lineNum"> 6 </span> : */
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : /*
+<span class="lineNum"> 9 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 12 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 13 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 14 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 19 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 20 </span> : *
+<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 22 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 24 </span> : */
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;ept/apt/recordparser.h&gt;
+<span class="lineNum"> 27 </span> : #include &lt;set&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : namespace ept {
+<span class="lineNum"> 30 </span> : namespace apt {
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : /**
+<span class="lineNum"> 33 </span> : * RecordParser specialised with access methods for common Debian package
+<span class="lineNum"> 34 </span> : * information.
+<span class="lineNum"> 35 </span> : */
+<span class="lineNum"> 36 </span> : class PackageRecord : public RecordParser
+<span class="lineNum"> 37 </span><span class="lineCov"> 7 : {</span>
+<span class="lineNum"> 38 </span><span class="lineCov"> 1 : bool parseBool(bool&amp; def, const std::string&amp; str) const</span>
+<span class="lineNum"> 39 </span> : {
+<span class="lineNum"> 40 </span> : // Believe it or not, this is what apt does to interpret bool fields
+<span class="lineNum"> 41 </span><span class="lineCov"> 1 : if (str == &quot;no&quot; || str == &quot;false&quot; || str == &quot;without&quot; ||</span>
+<span class="lineNum"> 42 </span> : str == &quot;off&quot; || str == &quot;disable&quot;)
+<span class="lineNum"> 43 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span><span class="lineCov"> 1 : if (str == &quot;yes&quot; || str == &quot;true&quot; || str == &quot;with&quot; ||</span>
+<span class="lineNum"> 46 </span> : str == &quot;on&quot; || str == &quot;enable&quot;)
+<span class="lineNum"> 47 </span><span class="lineCov"> 1 : return true;</span>
+<span class="lineNum"> 48 </span> :
+<span class="lineNum"> 49 </span><span class="lineNoCov"> 0 : return def;</span>
+<span class="lineNum"> 50 </span> : }
+<span class="lineNum"> 51 </span><span class="lineCov"> 10436 : std::string parseString(const std::string&amp; def, const std::string&amp; str) const</span>
+<span class="lineNum"> 52 </span> : {
+<span class="lineNum"> 53 </span><span class="lineCov"> 10436 : if (str == std::string())</span>
+<span class="lineNum"> 54 </span><span class="lineNoCov"> 0 : return def;</span>
+<span class="lineNum"> 55 </span><span class="lineCov"> 10436 : return str;</span>
+<span class="lineNum"> 56 </span> : }
+<span class="lineNum"> 57 </span> : std::string parseShortDescription(const std::string&amp; def, const std::string&amp; str) const;
+<span class="lineNum"> 58 </span> : std::string parseLongDescription(const std::string&amp; def, const std::string&amp; str) const;
+<span class="lineNum"> 59 </span> : size_t parseSize(size_t def, const std::string&amp; str) const;
+<span class="lineNum"> 60 </span> : std::set&lt;std::string&gt; parseTags(const std::set&lt;std::string&gt;&amp; def, const std::string&amp; str) const;
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : public:
+<span class="lineNum"> 63 </span><span class="lineCov"> 6 : PackageRecord() : RecordParser() {}</span>
+<span class="lineNum"> 64 </span><span class="lineCov"> 1 : PackageRecord(const std::string&amp; str) : RecordParser(str) {}</span>
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span><span class="lineCov"> 7813 : std::string package(const std::string&amp; def = std::string()) const</span>
+<span class="lineNum"> 67 </span> : {
+<span class="lineNum"> 68 </span><span class="lineCov"> 7813 : return parseString(def, lookup(&quot;Package&quot;));</span>
+<span class="lineNum"> 69 </span> : }
+<span class="lineNum"> 70 </span><span class="lineCov"> 1 : std::string priority(const std::string&amp; def = std::string()) const</span>
+<span class="lineNum"> 71 </span> : {
+<span class="lineNum"> 72 </span><span class="lineCov"> 1 : return parseString(def, lookup(&quot;Priority&quot;));</span>
+<span class="lineNum"> 73 </span> : }
+<span class="lineNum"> 74 </span><span class="lineCov"> 1 : std::string section(const std::string&amp; def = std::string()) const</span>
+<span class="lineNum"> 75 </span> : {
+<span class="lineNum"> 76 </span><span class="lineCov"> 1 : return parseString(def, lookup(&quot;Section&quot;));</span>
+<span class="lineNum"> 77 </span> : }
+<span class="lineNum"> 78 </span><span class="lineCov"> 2605 : size_t installedSize(size_t def = 0) const</span>
+<span class="lineNum"> 79 </span> : {
+<span class="lineNum"> 80 </span><span class="lineCov"> 2605 : return parseSize(def, lookup(&quot;Installed-Size&quot;));</span>
+<span class="lineNum"> 81 </span> : }
+<span class="lineNum"> 82 </span><span class="lineCov"> 1 : std::string maintainer(const std::string&amp; def = std::string()) const</span>
+<span class="lineNum"> 83 </span> : {
+<span class="lineNum"> 84 </span><span class="lineCov"> 1 : return parseString(def, lookup(&quot;Maintainer&quot;));</span>
+<span class="lineNum"> 85 </span> : }
+<span class="lineNum"> 86 </span><span class="lineCov"> 1 : std::string architecture(const std::string&amp; def = std::string()) const</span>
+<span class="lineNum"> 87 </span> : {
+<span class="lineNum"> 88 </span><span class="lineCov"> 1 : return parseString(def, lookup(&quot;Architecture&quot;));</span>
+<span class="lineNum"> 89 </span> : }
+<span class="lineNum"> 90 </span><span class="lineCov"> 1 : std::string source(const std::string&amp; def = std::string()) const</span>
+<span class="lineNum"> 91 </span> : {
+<span class="lineNum"> 92 </span><span class="lineCov"> 1 : return parseString(def, lookup(&quot;Source&quot;));</span>
+<span class="lineNum"> 93 </span> : }
+<span class="lineNum"> 94 </span><span class="lineCov"> 1 : std::string version(const std::string&amp; def = std::string()) const</span>
+<span class="lineNum"> 95 </span> : {
+<span class="lineNum"> 96 </span><span class="lineCov"> 1 : return parseString(def, lookup(&quot;Version&quot;));</span>
+<span class="lineNum"> 97 </span> : }
+<span class="lineNum"> 98 </span><span class="lineCov"> 1 : std::string replaces(const std::string&amp; def = std::string()) const</span>
+<span class="lineNum"> 99 </span> : {
+<span class="lineNum"> 100 </span><span class="lineCov"> 1 : return parseString(def, lookup(&quot;Replaces&quot;));</span>
+<span class="lineNum"> 101 </span> : }
+<span class="lineNum"> 102 </span><span class="lineCov"> 1 : std::string depends(const std::string&amp; def = std::string()) const</span>
+<span class="lineNum"> 103 </span> : {
+<span class="lineNum"> 104 </span><span class="lineCov"> 1 : return parseString(def, lookup(&quot;Depends&quot;));</span>
+<span class="lineNum"> 105 </span> : }
+<span class="lineNum"> 106 </span><span class="lineCov"> 1 : std::string preDepends(const std::string&amp; def = std::string()) const</span>
+<span class="lineNum"> 107 </span> : {
+<span class="lineNum"> 108 </span><span class="lineCov"> 1 : return parseString(def, lookup(&quot;Pre-Depends&quot;));</span>
+<span class="lineNum"> 109 </span> : }
+<span class="lineNum"> 110 </span><span class="lineCov"> 1 : std::string recommends(const std::string&amp; def = std::string()) const</span>
+<span class="lineNum"> 111 </span> : {
+<span class="lineNum"> 112 </span><span class="lineCov"> 1 : return parseString(def, lookup(&quot;Recommends&quot;));</span>
+<span class="lineNum"> 113 </span> : }
+<span class="lineNum"> 114 </span><span class="lineCov"> 1 : std::string suggests(const std::string&amp; def = std::string()) const</span>
+<span class="lineNum"> 115 </span> : {
+<span class="lineNum"> 116 </span><span class="lineCov"> 1 : return parseString(def, lookup(&quot;Suggests&quot;));</span>
+<span class="lineNum"> 117 </span> : }
+<span class="lineNum"> 118 </span><span class="lineCov"> 1 : std::string enhances(const std::string&amp; def = std::string()) const</span>
+<span class="lineNum"> 119 </span> : {
+<span class="lineNum"> 120 </span><span class="lineCov"> 1 : return parseString(def, lookup(&quot;Enhances&quot;));</span>
+<span class="lineNum"> 121 </span> : }
+<span class="lineNum"> 122 </span><span class="lineCov"> 1 : std::string provides(const std::string&amp; def = std::string()) const</span>
+<span class="lineNum"> 123 </span> : {
+<span class="lineNum"> 124 </span><span class="lineCov"> 1 : return parseString(def, lookup(&quot;Provides&quot;));</span>
+<span class="lineNum"> 125 </span> : }
+<span class="lineNum"> 126 </span><span class="lineCov"> 1 : std::string conflicts(const std::string&amp; def = std::string()) const</span>
+<span class="lineNum"> 127 </span> : {
+<span class="lineNum"> 128 </span><span class="lineCov"> 1 : return parseString(def, lookup(&quot;Conflicts&quot;));</span>
+<span class="lineNum"> 129 </span> : }
+<span class="lineNum"> 130 </span><span class="lineCov"> 1 : std::string filename(const std::string&amp; def = std::string()) const</span>
+<span class="lineNum"> 131 </span> : {
+<span class="lineNum"> 132 </span><span class="lineCov"> 1 : return parseString(def, lookup(&quot;Filename&quot;));</span>
+<span class="lineNum"> 133 </span> : }
+<span class="lineNum"> 134 </span><span class="lineCov"> 2605 : size_t packageSize(size_t def = 0) const</span>
+<span class="lineNum"> 135 </span> : {
+<span class="lineNum"> 136 </span><span class="lineCov"> 2605 : return parseSize(def, lookup(&quot;Size&quot;));</span>
+<span class="lineNum"> 137 </span> : }
+<span class="lineNum"> 138 </span><span class="lineCov"> 1 : std::string md5sum(const std::string&amp; def = std::string()) const</span>
+<span class="lineNum"> 139 </span> : {
+<span class="lineNum"> 140 </span><span class="lineCov"> 1 : return parseString(def, lookup(&quot;MD5sum&quot;));</span>
+<span class="lineNum"> 141 </span> : }
+<span class="lineNum"> 142 </span><span class="lineCov"> 1 : std::string sha1(const std::string&amp; def = std::string()) const</span>
+<span class="lineNum"> 143 </span> : {
+<span class="lineNum"> 144 </span><span class="lineCov"> 1 : return parseString(def, lookup(&quot;SHA1&quot;));</span>
+<span class="lineNum"> 145 </span> : }
+<span class="lineNum"> 146 </span><span class="lineCov"> 1 : std::string sha256(const std::string&amp; def = std::string()) const</span>
+<span class="lineNum"> 147 </span> : {
+<span class="lineNum"> 148 </span><span class="lineCov"> 1 : return parseString(def, lookup(&quot;SHA256&quot;));</span>
+<span class="lineNum"> 149 </span> : }
+<span class="lineNum"> 150 </span><span class="lineCov"> 2605 : std::string description(const std::string&amp; def = std::string()) const</span>
+<span class="lineNum"> 151 </span> : {
+<span class="lineNum"> 152 </span><span class="lineCov"> 2605 : return parseString(def, lookup(&quot;Description&quot;));</span>
+<span class="lineNum"> 153 </span> : }
+<span class="lineNum"> 154 </span><span class="lineCov"> 1 : std::string shortDescription(const std::string&amp; def = std::string()) const</span>
+<span class="lineNum"> 155 </span> : {
+<span class="lineNum"> 156 </span><span class="lineCov"> 1 : return parseShortDescription(def, lookup(&quot;Description&quot;));</span>
+<span class="lineNum"> 157 </span> : }
+<span class="lineNum"> 158 </span><span class="lineCov"> 1 : std::string longDescription(const std::string&amp; def = std::string()) const</span>
+<span class="lineNum"> 159 </span> : {
+<span class="lineNum"> 160 </span><span class="lineCov"> 1 : return parseLongDescription(def, lookup(&quot;Description&quot;));</span>
+<span class="lineNum"> 161 </span> : }
+<span class="lineNum"> 162 </span><span class="lineCov"> 1 : bool buildEssential(bool def = false) const</span>
+<span class="lineNum"> 163 </span> : {
+<span class="lineNum"> 164 </span><span class="lineCov"> 1 : return parseBool(def, lookup(&quot;Build-Essential&quot;));</span>
+<span class="lineNum"> 165 </span> : }
+<span class="lineNum"> 166 </span><span class="lineCov"> 2605 : std::set&lt;std::string&gt; tag(const std::set&lt;std::string&gt;&amp; def = std::set&lt;std::string&gt;()) const</span>
+<span class="lineNum"> 167 </span> : {
+<span class="lineNum"> 168 </span><span class="lineCov"> 2605 : return parseTags(def, lookup(&quot;Tag&quot;));</span>
+<span class="lineNum"> 169 </span> : }
+<span class="lineNum"> 170 </span> : };
+<span class="lineNum"> 171 </span> :
+<span class="lineNum"> 172 </span> : }
+<span class="lineNum"> 173 </span> : }
+<span class="lineNum"> 174 </span> :
+<span class="lineNum"> 175 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 176 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/apt/packagerecord.test.h.gcov.html b/rep/ept/apt/packagerecord.test.h.gcov.html
new file mode 100644
index 0000000..c2c2709
--- /dev/null
+++ b/rep/ept/apt/packagerecord.test.h.gcov.html
@@ -0,0 +1,205 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/apt/packagerecord.test.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/apt</a> - packagerecord.test.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">52</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">88.5 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">46</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /*
+<span class="lineNum"> 2 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 3 </span> : *
+<span class="lineNum"> 4 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 5 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 6 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 7 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 8 </span> : *
+<span class="lineNum"> 9 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 10 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 11 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 12 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 13 </span> : *
+<span class="lineNum"> 14 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 15 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 16 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 17 </span> : */
+<span class="lineNum"> 18 </span> :
+<span class="lineNum"> 19 </span> : #include &lt;ept/test.h&gt;
+<span class="lineNum"> 20 </span> : #include &lt;ept/apt/packagerecord.h&gt;
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : namespace std {
+<span class="lineNum"> 23 </span><span class="lineNoCov"> 0 : ostream&amp; operator&lt;&lt;(ostream&amp; out, const set&lt;string&gt;&amp; s)</span>
+<span class="lineNum"> 24 </span> : {
+<span class="lineNum"> 25 </span><span class="lineNoCov"> 0 : for (set&lt;string&gt;::const_iterator i = s.begin();</span>
+<span class="lineNum"> 26 </span> : i != s.end(); ++i)
+<span class="lineNum"> 27 </span><span class="lineNoCov"> 0 : if (i == s.begin())</span>
+<span class="lineNum"> 28 </span><span class="lineNoCov"> 0 : out &lt;&lt; *i;</span>
+<span class="lineNum"> 29 </span> : else
+<span class="lineNum"> 30 </span><span class="lineNoCov"> 0 : out &lt;&lt; &quot;, &quot; &lt;&lt; *i;</span>
+<span class="lineNum"> 31 </span><span class="lineNoCov"> 0 : return out;</span>
+<span class="lineNum"> 32 </span> : }
+<span class="lineNum"> 33 </span> : }
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : using namespace std;
+<span class="lineNum"> 36 </span> : using namespace ept;
+<span class="lineNum"> 37 </span> : using namespace ept::apt;
+<span class="lineNum"> 38 </span> :
+<span class="lineNum"> 39 </span> : struct TestAptPackagerecord {
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : // Check that the supported fields are understood
+<span class="lineNum"> 42 </span><span class="lineCov"> 1 : Test supportedFields()</span>
+<span class="lineNum"> 43 </span> : {
+<span class="lineNum"> 44 </span> : string record =
+<span class="lineNum"> 45 </span> : &quot;Package: apt\n&quot;
+<span class="lineNum"> 46 </span> : &quot;Priority: important\n&quot;
+<span class="lineNum"> 47 </span> : &quot;Section: admin\n&quot;
+<span class="lineNum"> 48 </span> : &quot;Installed-Size: 4368\n&quot;
+<span class="lineNum"> 49 </span> : &quot;Maintainer: APT Development Team &lt;deity@lists.debian.org&gt;\n&quot;
+<span class="lineNum"> 50 </span> : &quot;Architecture: amd64\n&quot;
+<span class="lineNum"> 51 </span> : &quot;Source: apt\n&quot;
+<span class="lineNum"> 52 </span> : &quot;Version: 0.6.46.4-0.1\n&quot;
+<span class="lineNum"> 53 </span> : &quot;Replaces: libapt-pkg-doc (&lt;&lt; 0.3.7), libapt-pkg-dev (&lt;&lt; 0.3.7)\n&quot;
+<span class="lineNum"> 54 </span> : &quot;Provides: libapt-pkg-libc6.3-6-3.11\n&quot;
+<span class="lineNum"> 55 </span> : &quot;Depends: libc6 (&gt;= 2.3.5-1), libgcc1 (&gt;= 1:4.1.1-12), libstdc++6 (&gt;= 4.1.1-12), debian-archive-keyring\n&quot;
+<span class="lineNum"> 56 </span> : &quot;Pre-Depends: debtags (maybe)\n&quot;
+<span class="lineNum"> 57 </span> : &quot;Suggests: aptitude | synaptic | gnome-apt | wajig, dpkg-dev, apt-doc, bzip2\n&quot;
+<span class="lineNum"> 58 </span> : &quot;Recommends: debtags (maybe)\n&quot;
+<span class="lineNum"> 59 </span> : &quot;Enhances: debian\n&quot;
+<span class="lineNum"> 60 </span> : &quot;Conflicts: marameo\n&quot;
+<span class="lineNum"> 61 </span> : &quot;Filename: pool/main/a/apt/apt_0.6.46.4-0.1_amd64.deb\n&quot;
+<span class="lineNum"> 62 </span> : &quot;Size: 1436478\n&quot;
+<span class="lineNum"> 63 </span> : &quot;MD5sum: 1776421f80d6300c77a608e77a9f4a15\n&quot;
+<span class="lineNum"> 64 </span> : &quot;SHA1: 1bd7337d2df56d267632cf72ac930c0a4895898f\n&quot;
+<span class="lineNum"> 65 </span> : &quot;SHA256: b92442ab60046b4d0728245f39cc932f26e17db9f7933a5ec9aaa63172f51fda\n&quot;
+<span class="lineNum"> 66 </span> : &quot;Description: Advanced front-end for dpkg\n&quot;
+<span class="lineNum"> 67 </span> : &quot; This is Debian's next generation front-end for the dpkg package manager.\n&quot;
+<span class="lineNum"> 68 </span> : &quot; It provides the apt-get utility and APT dselect method that provides a\n&quot;
+<span class="lineNum"> 69 </span> : &quot; simpler, safer way to install and upgrade packages.\n&quot;
+<span class="lineNum"> 70 </span> : &quot; .\n&quot;
+<span class="lineNum"> 71 </span> : &quot; APT features complete installation ordering, multiple source capability\n&quot;
+<span class="lineNum"> 72 </span> : &quot; and several other unique features, see the Users Guide in apt-doc.\n&quot;
+<span class="lineNum"> 73 </span> : &quot;Build-Essential: yes\n&quot;
+<span class="lineNum"> 74 </span><span class="lineCov"> 1 : &quot;Tag: admin::package-management, filetransfer::ftp, filetransfer::http, hardware::storage:cd, interface::commandline, network::client, protocol::{ftp,http,ipv6}, role::program, suite::debian, use::downloading, use::searching, works-with::software:package\n&quot;;</span>
+<span class="lineNum"> 75 </span> :
+<span class="lineNum"> 76 </span><span class="lineCov"> 1 : PackageRecord p(record);</span>
+<span class="lineNum"> 77 </span> :
+<span class="lineNum"> 78 </span><span class="lineCov"> 1 : assert_eq(p.size(), 24u);</span>
+<span class="lineNum"> 79 </span> :
+<span class="lineNum"> 80 </span><span class="lineCov"> 2 : assert_eq(p.package(), &quot;apt&quot;);</span>
+<span class="lineNum"> 81 </span><span class="lineCov"> 1 : assert_eq(p.priority(), &quot;important&quot;);</span>
+<span class="lineNum"> 82 </span><span class="lineCov"> 1 : assert_eq(p.section(), &quot;admin&quot;);</span>
+<span class="lineNum"> 83 </span><span class="lineCov"> 1 : assert_eq(p.installedSize(), 4368u);</span>
+<span class="lineNum"> 84 </span><span class="lineCov"> 2 : assert_eq(p.maintainer(), &quot;APT Development Team &lt;deity@lists.debian.org&gt;&quot;);</span>
+<span class="lineNum"> 85 </span><span class="lineCov"> 1 : assert_eq(p.architecture(), &quot;amd64&quot;);</span>
+<span class="lineNum"> 86 </span><span class="lineCov"> 1 : assert_eq(p.source(), &quot;apt&quot;);</span>
+<span class="lineNum"> 87 </span><span class="lineCov"> 1 : assert_eq(p.version(), &quot;0.6.46.4-0.1&quot;);</span>
+<span class="lineNum"> 88 </span><span class="lineCov"> 1 : assert_eq(p.replaces(), &quot;libapt-pkg-doc (&lt;&lt; 0.3.7), libapt-pkg-dev (&lt;&lt; 0.3.7)&quot;);</span>
+<span class="lineNum"> 89 </span><span class="lineCov"> 1 : assert_eq(p.provides(), &quot;libapt-pkg-libc6.3-6-3.11&quot;);</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 1 : assert_eq(p.depends(), &quot;libc6 (&gt;= 2.3.5-1), libgcc1 (&gt;= 1:4.1.1-12), libstdc++6 (&gt;= 4.1.1-12), debian-archive-keyring&quot;);</span>
+<span class="lineNum"> 91 </span><span class="lineCov"> 1 : assert_eq(p.preDepends(), &quot;debtags (maybe)&quot;);</span>
+<span class="lineNum"> 92 </span><span class="lineCov"> 1 : assert_eq(p.recommends(), &quot;debtags (maybe)&quot;);</span>
+<span class="lineNum"> 93 </span><span class="lineCov"> 1 : assert_eq(p.suggests(), &quot;aptitude | synaptic | gnome-apt | wajig, dpkg-dev, apt-doc, bzip2&quot;);</span>
+<span class="lineNum"> 94 </span><span class="lineCov"> 1 : assert_eq(p.enhances(), &quot;debian&quot;);</span>
+<span class="lineNum"> 95 </span><span class="lineCov"> 1 : assert_eq(p.conflicts(), &quot;marameo&quot;);</span>
+<span class="lineNum"> 96 </span><span class="lineCov"> 1 : assert_eq(p.filename(), &quot;pool/main/a/apt/apt_0.6.46.4-0.1_amd64.deb&quot;);</span>
+<span class="lineNum"> 97 </span><span class="lineCov"> 1 : assert_eq(p.packageSize(), 1436478u);</span>
+<span class="lineNum"> 98 </span><span class="lineCov"> 2 : assert_eq(p.md5sum(), &quot;1776421f80d6300c77a608e77a9f4a15&quot;);</span>
+<span class="lineNum"> 99 </span><span class="lineCov"> 1 : assert_eq(p.sha1(), &quot;1bd7337d2df56d267632cf72ac930c0a4895898f&quot;);</span>
+<span class="lineNum"> 100 </span><span class="lineCov"> 1 : assert_eq(p.sha256(), &quot;b92442ab60046b4d0728245f39cc932f26e17db9f7933a5ec9aaa63172f51fda&quot;);</span>
+<span class="lineNum"> 101 </span> : assert_eq(p.description(), &quot;Advanced front-end for dpkg\n&quot;
+<span class="lineNum"> 102 </span> : &quot; This is Debian's next generation front-end for the dpkg package manager.\n&quot;
+<span class="lineNum"> 103 </span> : &quot; It provides the apt-get utility and APT dselect method that provides a\n&quot;
+<span class="lineNum"> 104 </span> : &quot; simpler, safer way to install and upgrade packages.\n&quot;
+<span class="lineNum"> 105 </span> : &quot; .\n&quot;
+<span class="lineNum"> 106 </span> : &quot; APT features complete installation ordering, multiple source capability\n&quot;
+<span class="lineNum"> 107 </span><span class="lineCov"> 1 : &quot; and several other unique features, see the Users Guide in apt-doc.&quot;);</span>
+<span class="lineNum"> 108 </span><span class="lineCov"> 1 : assert_eq(p.shortDescription(), &quot;Advanced front-end for dpkg&quot;);</span>
+<span class="lineNum"> 109 </span> : assert_eq(p.longDescription(),
+<span class="lineNum"> 110 </span> : &quot;This is Debian's next generation front-end for the dpkg package manager.\n&quot;
+<span class="lineNum"> 111 </span> : &quot; It provides the apt-get utility and APT dselect method that provides a\n&quot;
+<span class="lineNum"> 112 </span> : &quot; simpler, safer way to install and upgrade packages.\n&quot;
+<span class="lineNum"> 113 </span> : &quot; .\n&quot;
+<span class="lineNum"> 114 </span> : &quot; APT features complete installation ordering, multiple source capability\n&quot;
+<span class="lineNum"> 115 </span><span class="lineCov"> 1 : &quot; and several other unique features, see the Users Guide in apt-doc.&quot;);</span>
+<span class="lineNum"> 116 </span><span class="lineCov"> 1 : assert_eq(p.buildEssential(), true);</span>
+<span class="lineNum"> 117 </span> :
+<span class="lineNum"> 118 </span><span class="lineCov"> 1 : std::set&lt;std::string&gt; tags;</span>
+<span class="lineNum"> 119 </span><span class="lineCov"> 1 : tags.insert(&quot;admin::package-management&quot;);</span>
+<span class="lineNum"> 120 </span><span class="lineCov"> 2 : tags.insert(&quot;filetransfer::ftp&quot;);</span>
+<span class="lineNum"> 121 </span><span class="lineCov"> 2 : tags.insert(&quot;filetransfer::http&quot;);</span>
+<span class="lineNum"> 122 </span><span class="lineCov"> 2 : tags.insert(&quot;hardware::storage:cd&quot;);</span>
+<span class="lineNum"> 123 </span><span class="lineCov"> 2 : tags.insert(&quot;interface::commandline&quot;);</span>
+<span class="lineNum"> 124 </span><span class="lineCov"> 2 : tags.insert(&quot;network::client&quot;);</span>
+<span class="lineNum"> 125 </span><span class="lineCov"> 2 : tags.insert(&quot;protocol::ftp&quot;);</span>
+<span class="lineNum"> 126 </span><span class="lineCov"> 2 : tags.insert(&quot;protocol::http&quot;);</span>
+<span class="lineNum"> 127 </span><span class="lineCov"> 2 : tags.insert(&quot;protocol::ipv6&quot;);</span>
+<span class="lineNum"> 128 </span><span class="lineCov"> 2 : tags.insert(&quot;role::program&quot;);</span>
+<span class="lineNum"> 129 </span><span class="lineCov"> 2 : tags.insert(&quot;suite::debian&quot;);</span>
+<span class="lineNum"> 130 </span><span class="lineCov"> 2 : tags.insert(&quot;use::downloading&quot;);</span>
+<span class="lineNum"> 131 </span><span class="lineCov"> 2 : tags.insert(&quot;use::searching&quot;);</span>
+<span class="lineNum"> 132 </span><span class="lineCov"> 2 : tags.insert(&quot;works-with::software:package&quot;);</span>
+<span class="lineNum"> 133 </span><span class="lineCov"> 2 : assert_eq(p.tag(), tags);</span>
+<span class="lineNum"> 134 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 135 </span> :
+<span class="lineNum"> 136 </span> : };
+<span class="lineNum"> 137 </span> :
+<span class="lineNum"> 138 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/apt/recordparser.cc.gcov.html b/rep/ept/apt/recordparser.cc.gcov.html
new file mode 100644
index 0000000..f1f46c3
--- /dev/null
+++ b/rep/ept/apt/recordparser.cc.gcov.html
@@ -0,0 +1,237 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/apt/recordparser.cc</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/apt</a> - recordparser.cc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">62</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">62</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /** \file
+<span class="lineNum"> 2 </span> : * Parser for APT records
+<span class="lineNum"> 3 </span> : */
+<span class="lineNum"> 4 </span> :
+<span class="lineNum"> 5 </span> : /*
+<span class="lineNum"> 6 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 7 </span> : *
+<span class="lineNum"> 8 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 9 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 10 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 11 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 12 </span> : *
+<span class="lineNum"> 13 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 14 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 15 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 16 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 17 </span> : *
+<span class="lineNum"> 18 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 19 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 20 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 21 </span> : */
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : #include &lt;ept/apt/recordparser.h&gt;
+<span class="lineNum"> 24 </span> :
+<span class="lineNum"> 25 </span> : #include &lt;algorithm&gt;
+<span class="lineNum"> 26 </span> : #include &lt;cctype&gt;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : //#include &lt;iostream&gt;
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : using namespace std;
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : namespace ept {
+<span class="lineNum"> 33 </span> : namespace apt {
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : struct rpcompare
+<span class="lineNum"> 36 </span> : {
+<span class="lineNum"> 37 </span> : const RecordParser&amp; rp;
+<span class="lineNum"> 38 </span><span class="lineCov"> 2618 : rpcompare(const RecordParser&amp; rp) : rp(rp) {}</span>
+<span class="lineNum"> 39 </span><span class="lineCov"> 177724 : bool operator()(size_t a, size_t b)</span>
+<span class="lineNum"> 40 </span> : {
+<span class="lineNum"> 41 </span><span class="lineCov"> 177724 : return rp.name(a) &lt; rp.name(b);</span>
+<span class="lineNum"> 42 </span> : }
+<span class="lineNum"> 43 </span> : };
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span><span class="lineCov"> 2618 : void RecordParser::scan(const std::string&amp; str)</span>
+<span class="lineNum"> 46 </span> : {
+<span class="lineNum"> 47 </span><span class="lineCov"> 2618 : buffer = str;</span>
+<span class="lineNum"> 48 </span><span class="lineCov"> 2618 : ends.clear();</span>
+<span class="lineNum"> 49 </span><span class="lineCov"> 2618 : sorted.clear();</span>
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> : //cerr &lt;&lt; &quot;PARSE &quot; &lt;&lt; endl &lt;&lt; buffer &lt;&lt; &quot;*****&quot; &lt;&lt; endl;
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span> : // Scan the buffer, taking note of all ending offsets of the various fields
+<span class="lineNum"> 54 </span><span class="lineCov"> 2618 : size_t pos = 0;</span>
+<span class="lineNum"> 55 </span><span class="lineCov"> 2618 : size_t idx = 0;</span>
+<span class="lineNum"> 56 </span><span class="lineCov"> 59427 : while (pos &lt; buffer.size() - 1)</span>
+<span class="lineNum"> 57 </span> : {
+<span class="lineNum"> 58 </span> : //cerr &lt;&lt; &quot;PREPOS &quot; &lt;&lt; pos &lt;&lt; &quot; left: &quot; &lt;&lt; buffer.substr(pos, 10) &lt;&lt; endl;
+<span class="lineNum"> 59 </span><span class="lineCov"> 56809 : pos = buffer.find(&quot;\n&quot;, pos);</span>
+<span class="lineNum"> 60 </span> : //cerr &lt;&lt; &quot;POSTPOS &quot; &lt;&lt; pos &lt;&lt; &quot; left: &quot; &lt;&lt; (pos == string::npos ? &quot;NONE&quot; : buffer.substr(pos, 10)) &lt;&lt; endl;
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : // The buffer does not end with a newline
+<span class="lineNum"> 63 </span><span class="lineCov"> 56809 : if (pos == string::npos)</span>
+<span class="lineNum"> 64 </span> : {
+<span class="lineNum"> 65 </span> : //cerr &lt;&lt; &quot;ENDNOTEOL&quot; &lt;&lt; endl;
+<span class="lineNum"> 66 </span><span class="lineCov"> 1 : pos = buffer.size();</span>
+<span class="lineNum"> 67 </span><span class="lineCov"> 1 : ends.push_back(pos);</span>
+<span class="lineNum"> 68 </span><span class="lineCov"> 1 : sorted.push_back(idx++);</span>
+<span class="lineNum"> 69 </span><span class="lineCov"> 1 : break;</span>
+<span class="lineNum"> 70 </span> : }
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span><span class="lineCov"> 56808 : ++pos;</span>
+<span class="lineNum"> 73 </span> : //cerr &lt;&lt; &quot;POSTPOSINC &quot; &lt;&lt; pos &lt;&lt; &quot; left: &quot; &lt;&lt; buffer.substr(pos, 10) &lt;&lt; endl;
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span> : // The buffer ends with a newline
+<span class="lineNum"> 76 </span><span class="lineCov"> 56808 : if (pos == buffer.size())</span>
+<span class="lineNum"> 77 </span> : {
+<span class="lineNum"> 78 </span> : //cerr &lt;&lt; &quot;ENDEOL&quot; &lt;&lt; endl;
+<span class="lineNum"> 79 </span><span class="lineCov"> 11 : ends.push_back(pos);</span>
+<span class="lineNum"> 80 </span><span class="lineCov"> 11 : sorted.push_back(idx++);</span>
+<span class="lineNum"> 81 </span><span class="lineCov"> 11 : break;</span>
+<span class="lineNum"> 82 </span> : }
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span> : // Terminate parsing on double newlines
+<span class="lineNum"> 85 </span><span class="lineCov"> 56797 : if (buffer[pos] == '\n')</span>
+<span class="lineNum"> 86 </span> : {
+<span class="lineNum"> 87 </span> : //cerr &lt;&lt; &quot;ENDDOUBLENL&quot; &lt;&lt; endl;
+<span class="lineNum"> 88 </span><span class="lineCov"> 2606 : ends.push_back(pos);</span>
+<span class="lineNum"> 89 </span><span class="lineCov"> 2606 : sorted.push_back(idx++);</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 2606 : break;</span>
+<span class="lineNum"> 91 </span> : }
+<span class="lineNum"> 92 </span> :
+<span class="lineNum"> 93 </span> : // Mark the end of the field if it's not a continuation line
+<span class="lineNum"> 94 </span><span class="lineCov"> 54191 : if (!isspace(buffer[pos]))</span>
+<span class="lineNum"> 95 </span> : {
+<span class="lineNum"> 96 </span> : //cerr &lt;&lt; &quot;INNERFIELD&quot; &lt;&lt; endl;
+<span class="lineNum"> 97 </span><span class="lineCov"> 34233 : ends.push_back(pos);</span>
+<span class="lineNum"> 98 </span><span class="lineCov"> 34233 : sorted.push_back(idx++);</span>
+<span class="lineNum"> 99 </span> : } //else
+<span class="lineNum"> 100 </span> : //cerr &lt;&lt; &quot;CONTLINE&quot; &lt;&lt; endl;
+<span class="lineNum"> 101 </span> : }
+<span class="lineNum"> 102 </span> :
+<span class="lineNum"> 103 </span> : // Sort the sorted array
+<span class="lineNum"> 104 </span><span class="lineCov"> 2618 : sort(sorted.begin(), sorted.end(), rpcompare(*this));</span>
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span> : //for (size_t i = 0; i &lt; ends.size(); ++i)
+<span class="lineNum"> 107 </span> : // cerr &lt;&lt; ends[i] &lt;&lt; &quot;\t&quot; &lt;&lt; name(i) &lt;&lt; &quot;\t&quot; &lt;&lt; sorted[i] &lt;&lt; &quot;\t&quot; &lt;&lt; name(sorted[i]) &lt;&lt; endl;
+<span class="lineNum"> 108 </span><span class="lineCov"> 2618 : }</span>
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span><span class="lineCov"> 465183 : std::string RecordParser::field(size_t idx) const</span>
+<span class="lineNum"> 111 </span> : {
+<span class="lineNum"> 112 </span><span class="lineCov"> 465183 : if (idx &gt;= ends.size())</span>
+<span class="lineNum"> 113 </span><span class="lineCov"> 2664 : return string();</span>
+<span class="lineNum"> 114 </span><span class="lineCov"> 462519 : if (idx == 0)</span>
+<span class="lineNum"> 115 </span><span class="lineCov"> 52771 : return buffer.substr(0, ends[0]);</span>
+<span class="lineNum"> 116 </span> : else
+<span class="lineNum"> 117 </span><span class="lineCov"> 409748 : return buffer.substr(ends[idx-1], ends[idx]-ends[idx-1]);</span>
+<span class="lineNum"> 118 </span> : }
+<span class="lineNum"> 119 </span> :
+<span class="lineNum"> 120 </span><span class="lineCov"> 446879 : std::string RecordParser::name(size_t idx) const</span>
+<span class="lineNum"> 121 </span> : {
+<span class="lineNum"> 122 </span><span class="lineCov"> 446879 : string res = field(idx);</span>
+<span class="lineNum"> 123 </span><span class="lineCov"> 446879 : size_t pos = res.find(&quot;:&quot;);</span>
+<span class="lineNum"> 124 </span><span class="lineCov"> 446879 : if (pos == string::npos)</span>
+<span class="lineNum"> 125 </span><span class="lineCov"> 1 : return res;</span>
+<span class="lineNum"> 126 </span><span class="lineCov"> 446878 : return res.substr(0, pos);</span>
+<span class="lineNum"> 127 </span> : }
+<span class="lineNum"> 128 </span> :
+<span class="lineNum"> 129 </span><span class="lineCov"> 18279 : std::string RecordParser::lookup(size_t idx) const</span>
+<span class="lineNum"> 130 </span> : {
+<span class="lineNum"> 131 </span><span class="lineCov"> 18279 : string res = field(idx);</span>
+<span class="lineNum"> 132 </span><span class="lineCov"> 18279 : size_t pos = res.find(&quot;:&quot;);</span>
+<span class="lineNum"> 133 </span><span class="lineCov"> 18279 : if (pos == string::npos)</span>
+<span class="lineNum"> 134 </span><span class="lineCov"> 2662 : return res;</span>
+<span class="lineNum"> 135 </span> : // Skip initial whitespace after the :
+<span class="lineNum"> 136 </span><span class="lineCov"> 15617 : for (++pos; pos &lt; res.size() &amp;&amp; isspace(res[pos]); ++pos)</span>
+<span class="lineNum"> 137 </span> : ;
+<span class="lineNum"> 138 </span><span class="lineCov"> 15617 : res = res.substr(pos);</span>
+<span class="lineNum"> 139 </span> : // Trim spaces at the end
+<span class="lineNum"> 140 </span><span class="lineCov"> 46850 : while (!res.empty() &amp;&amp; isspace(res[res.size() - 1]))</span>
+<span class="lineNum"> 141 </span><span class="lineCov"> 15616 : res.resize(res.size() - 1);</span>
+<span class="lineNum"> 142 </span><span class="lineCov"> 15617 : return res;</span>
+<span class="lineNum"> 143 </span> : }
+<span class="lineNum"> 144 </span> :
+<span class="lineNum"> 145 </span><span class="lineCov"> 18283 : size_t RecordParser::index(const std::string&amp; str) const</span>
+<span class="lineNum"> 146 </span> : {
+<span class="lineNum"> 147 </span> : int begin, end;
+<span class="lineNum"> 148 </span> :
+<span class="lineNum"> 149 </span> : /* Binary search */
+<span class="lineNum"> 150 </span><span class="lineCov"> 18283 : begin = -1, end = size();</span>
+<span class="lineNum"> 151 </span><span class="lineCov"> 109703 : while (end - begin &gt; 1)</span>
+<span class="lineNum"> 152 </span> : {
+<span class="lineNum"> 153 </span><span class="lineCov"> 73137 : int cur = (end + begin) / 2;</span>
+<span class="lineNum"> 154 </span> : //cerr &lt;&lt; &quot;Test &quot; &lt;&lt; cur &lt;&lt; &quot; &quot; &lt;&lt; str &lt;&lt; &quot; &lt; &quot; &lt;&lt; name(cur) &lt;&lt; endl;
+<span class="lineNum"> 155 </span><span class="lineCov"> 73137 : if (name(sorted[cur]) &gt; str)</span>
+<span class="lineNum"> 156 </span><span class="lineCov"> 32507 : end = cur;</span>
+<span class="lineNum"> 157 </span> : else
+<span class="lineNum"> 158 </span><span class="lineCov"> 40630 : begin = cur;</span>
+<span class="lineNum"> 159 </span> : }
+<span class="lineNum"> 160 </span> :
+<span class="lineNum"> 161 </span><span class="lineCov"> 18283 : if (begin == -1 || name(sorted[begin]) != str)</span>
+<span class="lineNum"> 162 </span><span class="lineCov"> 2661 : return size();</span>
+<span class="lineNum"> 163 </span> : else
+<span class="lineNum"> 164 </span><span class="lineCov"> 15622 : return sorted[begin];</span>
+<span class="lineNum"> 165 </span> : }
+<span class="lineNum"> 166 </span> :
+<span class="lineNum"> 167 </span> : }
+<span class="lineNum"> 168 </span> : }
+<span class="lineNum"> 169 </span> :
+<span class="lineNum"> 170 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/apt/recordparser.h.gcov.html b/rep/ept/apt/recordparser.h.gcov.html
new file mode 100644
index 0000000..60082e3
--- /dev/null
+++ b/rep/ept/apt/recordparser.h.gcov.html
@@ -0,0 +1,162 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/apt/recordparser.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/apt</a> - recordparser.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">8</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">8</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef EPT_APT_RECORDPARSER_H
+<span class="lineNum"> 2 </span> : #define EPT_APT_RECORDPARSER_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** \file
+<span class="lineNum"> 5 </span> : * Parser for APT records
+<span class="lineNum"> 6 </span> : */
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : /*
+<span class="lineNum"> 9 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 12 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 13 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 14 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 19 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 20 </span> : *
+<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 22 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 24 </span> : */
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;vector&gt;
+<span class="lineNum"> 27 </span> : #include &lt;string&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : namespace ept {
+<span class="lineNum"> 30 </span> : namespace apt {
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : /**
+<span class="lineNum"> 33 </span> : * Access the fields of a package record contained inside a std::string.
+<span class="lineNum"> 34 </span> : *
+<span class="lineNum"> 35 </span> : * Implementation note: this implementation should take advantage of
+<span class="lineNum"> 36 </span> : * std::string sharing buffer space among them.
+<span class="lineNum"> 37 </span> : */
+<span class="lineNum"> 38 </span> : class RecordParser
+<span class="lineNum"> 39 </span><span class="lineCov"> 19 : {</span>
+<span class="lineNum"> 40 </span> : /// Buffer containing the whole record
+<span class="lineNum"> 41 </span> : std::string buffer;
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : /// End offsets of the various fields in the record
+<span class="lineNum"> 44 </span> : std::vector&lt;size_t&gt; ends;
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> : /// Indexes on the ends vector, sorted by field name
+<span class="lineNum"> 47 </span> : std::vector&lt;size_t&gt; sorted;
+<span class="lineNum"> 48 </span> :
+<span class="lineNum"> 49 </span> : public:
+<span class="lineNum"> 50 </span><span class="lineCov"> 6 : RecordParser() {}</span>
+<span class="lineNum"> 51 </span><span class="lineCov"> 13 : RecordParser(const std::string&amp; str) { scan(str); }</span>
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span> : /// Index a new record
+<span class="lineNum"> 54 </span> : void scan(const std::string&amp; str);
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span> : /**
+<span class="lineNum"> 57 </span> : * Get the index of the field with the given name.
+<span class="lineNum"> 58 </span> : *
+<span class="lineNum"> 59 </span> : * size() is returned if not found
+<span class="lineNum"> 60 </span> : */
+<span class="lineNum"> 61 </span> : size_t index(const std::string&amp; str) const;
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span> : /// Return the field by its index
+<span class="lineNum"> 64 </span> : std::string field(size_t idx) const;
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span> : /// Return the name of a field by its index
+<span class="lineNum"> 67 </span> : std::string name(size_t idx) const;
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span> : /// Return the content of a field by its index
+<span class="lineNum"> 70 </span> : std::string lookup(size_t idx) const;
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span> : /// Return the content of a field by its name
+<span class="lineNum"> 73 </span><span class="lineCov"> 18273 : std::string lookup(const std::string&amp; name) const { return lookup(index(name)); }</span>
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span> : /// Return the content of a field by its index
+<span class="lineNum"> 76 </span><span class="lineCov"> 6 : std::string operator[](size_t idx) const { return lookup(idx); }</span>
+<span class="lineNum"> 77 </span> :
+<span class="lineNum"> 78 </span> : /// Return the content of a field by its name
+<span class="lineNum"> 79 </span><span class="lineCov"> 19 : std::string operator[](const std::string&amp; name) const { return lookup(name); }</span>
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span> : /// Return the entire record
+<span class="lineNum"> 82 </span> : const std::string&amp; record() const { return buffer; }
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span> : /// Return the entire record
+<span class="lineNum"> 85 </span><span class="lineCov"> 1 : std::string record() { return buffer; }</span>
+<span class="lineNum"> 86 </span> :
+<span class="lineNum"> 87 </span> : /// Return the number of fields in the record
+<span class="lineNum"> 88 </span><span class="lineCov"> 20972 : size_t size() const { return ends.size(); }</span>
+<span class="lineNum"> 89 </span> : };
+<span class="lineNum"> 90 </span> :
+<span class="lineNum"> 91 </span> : }
+<span class="lineNum"> 92 </span> : }
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 95 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/apt/recordparser.test.h.gcov.html b/rep/ept/apt/recordparser.test.h.gcov.html
new file mode 100644
index 0000000..477be3f
--- /dev/null
+++ b/rep/ept/apt/recordparser.test.h.gcov.html
@@ -0,0 +1,295 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/apt/recordparser.test.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/apt</a> - recordparser.test.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">107</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">107</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /*
+<span class="lineNum"> 2 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 3 </span> : *
+<span class="lineNum"> 4 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 5 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 6 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 7 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 8 </span> : *
+<span class="lineNum"> 9 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 10 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 11 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 12 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 13 </span> : *
+<span class="lineNum"> 14 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 15 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 16 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 17 </span> : */
+<span class="lineNum"> 18 </span> :
+<span class="lineNum"> 19 </span> : #include &lt;ept/test.h&gt;
+<span class="lineNum"> 20 </span> : #include &lt;ept/apt/recordparser.h&gt;
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : //#include &lt;iostream&gt;
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : using namespace std;
+<span class="lineNum"> 25 </span> : using namespace ept;
+<span class="lineNum"> 26 </span> : using namespace ept::apt;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span><span class="lineCov"> 12 : struct TestAptRecordparser {</span>
+<span class="lineNum"> 29 </span> : std::string record;
+<span class="lineNum"> 30 </span><span class="lineCov"> 12 : TestAptRecordparser()</span>
+<span class="lineNum"> 31 </span><span class="lineCov"> 12 : {</span>
+<span class="lineNum"> 32 </span> : record =
+<span class="lineNum"> 33 </span> : &quot;A:\n&quot;
+<span class="lineNum"> 34 </span> : &quot;D: da de di do du\n&quot;
+<span class="lineNum"> 35 </span> : &quot;B: b\n&quot;
+<span class="lineNum"> 36 </span> : &quot;C: c \n&quot;
+<span class="lineNum"> 37 </span> : &quot;Desc: this is the beginning\n&quot;
+<span class="lineNum"> 38 </span> : &quot; this is the continuation\n&quot;
+<span class="lineNum"> 39 </span><span class="lineCov"> 12 : &quot; this is the end\n&quot;;</span>
+<span class="lineNum"> 40 </span><span class="lineCov"> 12 : }</span>
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span> : // Check that the fields are identified and broken up correctly
+<span class="lineNum"> 43 </span><span class="lineCov"> 1 : Test parsing()</span>
+<span class="lineNum"> 44 </span> : {
+<span class="lineNum"> 45 </span><span class="lineCov"> 1 : RecordParser p(record);</span>
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span><span class="lineCov"> 1 : assert_eq(p.record(), record);</span>
+<span class="lineNum"> 48 </span><span class="lineCov"> 1 : assert_eq(p.size(), 5u);</span>
+<span class="lineNum"> 49 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span><span class="lineCov"> 1 : Test fieldTuples()</span>
+<span class="lineNum"> 52 </span> : {
+<span class="lineNum"> 53 </span><span class="lineCov"> 1 : RecordParser p(record);</span>
+<span class="lineNum"> 54 </span><span class="lineCov"> 1 : assert_eq(p.field(0), &quot;A:\n&quot;);</span>
+<span class="lineNum"> 55 </span><span class="lineCov"> 1 : assert_eq(p.field(1), &quot;D: da de di do du\n&quot;);</span>
+<span class="lineNum"> 56 </span><span class="lineCov"> 1 : assert_eq(p.field(2), &quot;B: b\n&quot;);</span>
+<span class="lineNum"> 57 </span><span class="lineCov"> 1 : assert_eq(p.field(3), &quot;C: c \n&quot;);</span>
+<span class="lineNum"> 58 </span><span class="lineCov"> 1 : assert_eq(p.field(4), &quot;Desc: this is the beginning\n this is the continuation\n this is the end\n&quot;);</span>
+<span class="lineNum"> 59 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 60 </span> :
+<span class="lineNum"> 61 </span><span class="lineCov"> 1 : Test fieldKeys()</span>
+<span class="lineNum"> 62 </span> : {
+<span class="lineNum"> 63 </span><span class="lineCov"> 1 : RecordParser p(record);</span>
+<span class="lineNum"> 64 </span><span class="lineCov"> 1 : assert_eq(p.name(0), &quot;A&quot;);</span>
+<span class="lineNum"> 65 </span><span class="lineCov"> 1 : assert_eq(p.name(1), &quot;D&quot;);</span>
+<span class="lineNum"> 66 </span><span class="lineCov"> 1 : assert_eq(p.name(2), &quot;B&quot;);</span>
+<span class="lineNum"> 67 </span><span class="lineCov"> 1 : assert_eq(p.name(3), &quot;C&quot;);</span>
+<span class="lineNum"> 68 </span><span class="lineCov"> 1 : assert_eq(p.name(4), &quot;Desc&quot;);</span>
+<span class="lineNum"> 69 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 70 </span> :
+<span class="lineNum"> 71 </span><span class="lineCov"> 1 : Test fieldValues()</span>
+<span class="lineNum"> 72 </span> : {
+<span class="lineNum"> 73 </span><span class="lineCov"> 1 : RecordParser p(record);</span>
+<span class="lineNum"> 74 </span><span class="lineCov"> 1 : assert_eq(p[0], &quot;&quot;);</span>
+<span class="lineNum"> 75 </span><span class="lineCov"> 1 : assert_eq(p[1], &quot;da de di do du&quot;);</span>
+<span class="lineNum"> 76 </span><span class="lineCov"> 1 : assert_eq(p[2], &quot;b&quot;);</span>
+<span class="lineNum"> 77 </span><span class="lineCov"> 1 : assert_eq(p[3], &quot;c&quot;);</span>
+<span class="lineNum"> 78 </span><span class="lineCov"> 1 : assert_eq(p[4], &quot;this is the beginning\n this is the continuation\n this is the end&quot;);</span>
+<span class="lineNum"> 79 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span> : // Check that the field search by name finds all the fields
+<span class="lineNum"> 82 </span><span class="lineCov"> 1 : Test findByName()</span>
+<span class="lineNum"> 83 </span> : {
+<span class="lineNum"> 84 </span><span class="lineCov"> 1 : RecordParser p(record);</span>
+<span class="lineNum"> 85 </span> :
+<span class="lineNum"> 86 </span><span class="lineCov"> 1 : assert_eq(p.index(&quot;A&quot;), 0u);</span>
+<span class="lineNum"> 87 </span><span class="lineCov"> 2 : assert_eq(p.index(&quot;D&quot;), 1u);</span>
+<span class="lineNum"> 88 </span><span class="lineCov"> 2 : assert_eq(p.index(&quot;B&quot;), 2u);</span>
+<span class="lineNum"> 89 </span><span class="lineCov"> 2 : assert_eq(p.index(&quot;C&quot;), 3u);</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 2 : assert_eq(p.index(&quot;Desc&quot;), 4u);</span>
+<span class="lineNum"> 91 </span> :
+<span class="lineNum"> 92 </span><span class="lineCov"> 2 : assert_eq(p.name(p.index(&quot;A&quot;)), &quot;A&quot;);</span>
+<span class="lineNum"> 93 </span><span class="lineCov"> 2 : assert_eq(p.name(p.index(&quot;B&quot;)), &quot;B&quot;);</span>
+<span class="lineNum"> 94 </span><span class="lineCov"> 2 : assert_eq(p.name(p.index(&quot;C&quot;)), &quot;C&quot;);</span>
+<span class="lineNum"> 95 </span><span class="lineCov"> 2 : assert_eq(p.name(p.index(&quot;D&quot;)), &quot;D&quot;);</span>
+<span class="lineNum"> 96 </span><span class="lineCov"> 2 : assert_eq(p.name(p.index(&quot;Desc&quot;)), &quot;Desc&quot;);</span>
+<span class="lineNum"> 97 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 98 </span> :
+<span class="lineNum"> 99 </span><span class="lineCov"> 1 : Test indexing()</span>
+<span class="lineNum"> 100 </span> : {
+<span class="lineNum"> 101 </span><span class="lineCov"> 1 : RecordParser p(record);</span>
+<span class="lineNum"> 102 </span><span class="lineCov"> 1 : assert_eq(p[&quot;A&quot;], &quot;&quot;);</span>
+<span class="lineNum"> 103 </span><span class="lineCov"> 2 : assert_eq(p[&quot;B&quot;], &quot;b&quot;);</span>
+<span class="lineNum"> 104 </span><span class="lineCov"> 2 : assert_eq(p[&quot;C&quot;], &quot;c&quot;);</span>
+<span class="lineNum"> 105 </span><span class="lineCov"> 2 : assert_eq(p[&quot;D&quot;], &quot;da de di do du&quot;);</span>
+<span class="lineNum"> 106 </span><span class="lineCov"> 2 : assert_eq(p[&quot;Desc&quot;], &quot;this is the beginning\n this is the continuation\n this is the end&quot;);</span>
+<span class="lineNum"> 107 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 108 </span> :
+<span class="lineNum"> 109 </span><span class="lineCov"> 1 : Test missingBehaviour()</span>
+<span class="lineNum"> 110 </span> : {
+<span class="lineNum"> 111 </span><span class="lineCov"> 1 : RecordParser p(record);</span>
+<span class="lineNum"> 112 </span> : // Missing fields give empty strings
+<span class="lineNum"> 113 </span><span class="lineCov"> 1 : assert_eq(p.field(100), &quot;&quot;);</span>
+<span class="lineNum"> 114 </span><span class="lineCov"> 1 : assert_eq(p.name(100), &quot;&quot;);</span>
+<span class="lineNum"> 115 </span><span class="lineCov"> 1 : assert_eq(p[100], &quot;&quot;);</span>
+<span class="lineNum"> 116 </span><span class="lineCov"> 1 : assert_eq(p[&quot;Missing&quot;], &quot;&quot;);</span>
+<span class="lineNum"> 117 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 118 </span> :
+<span class="lineNum"> 119 </span> : // Check that scanning twice replaces the old fields
+<span class="lineNum"> 120 </span><span class="lineCov"> 1 : Test rescan()</span>
+<span class="lineNum"> 121 </span> : {
+<span class="lineNum"> 122 </span> : std::string record =
+<span class="lineNum"> 123 </span> : &quot;A: a\n&quot;
+<span class="lineNum"> 124 </span> : &quot;B: b\n&quot;
+<span class="lineNum"> 125 </span><span class="lineCov"> 1 : &quot;C: c\n&quot;;</span>
+<span class="lineNum"> 126 </span> :
+<span class="lineNum"> 127 </span><span class="lineCov"> 1 : RecordParser p(record);</span>
+<span class="lineNum"> 128 </span><span class="lineCov"> 1 : assert_eq(p.size(), 3u);</span>
+<span class="lineNum"> 129 </span><span class="lineCov"> 2 : assert_eq(p[&quot;A&quot;], &quot;a&quot;);</span>
+<span class="lineNum"> 130 </span><span class="lineCov"> 2 : assert_eq(p[&quot;B&quot;], &quot;b&quot;);</span>
+<span class="lineNum"> 131 </span><span class="lineCov"> 2 : assert_eq(p[&quot;C&quot;], &quot;c&quot;);</span>
+<span class="lineNum"> 132 </span> :
+<span class="lineNum"> 133 </span> : std::string record1 =
+<span class="lineNum"> 134 </span> : &quot;Foo: bar\n&quot;
+<span class="lineNum"> 135 </span><span class="lineCov"> 2 : &quot;A: different\n&quot;;</span>
+<span class="lineNum"> 136 </span> :
+<span class="lineNum"> 137 </span><span class="lineCov"> 1 : p.scan(record1);</span>
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> : //for (size_t i = 0; i &lt; p.size(); ++i)
+<span class="lineNum"> 140 </span> : // cerr &lt;&lt; &quot;&gt;&gt; &quot; &lt;&lt; i &lt;&lt; &quot;==&quot; &lt;&lt; p.index(p.name(i)) &lt;&lt; &quot; &quot; &lt;&lt; p.name(i) &lt;&lt; &quot; &quot; &lt;&lt; p[i] &lt;&lt; endl;
+<span class="lineNum"> 141 </span> :
+<span class="lineNum"> 142 </span><span class="lineCov"> 1 : assert_eq(p.size(), 2u);</span>
+<span class="lineNum"> 143 </span><span class="lineCov"> 2 : assert_eq(p[&quot;A&quot;], &quot;different&quot;);</span>
+<span class="lineNum"> 144 </span><span class="lineCov"> 2 : assert_eq(p[&quot;B&quot;], &quot;&quot;);</span>
+<span class="lineNum"> 145 </span><span class="lineCov"> 2 : assert_eq(p[&quot;C&quot;], &quot;&quot;);</span>
+<span class="lineNum"> 146 </span><span class="lineCov"> 2 : assert_eq(p[&quot;Foo&quot;], &quot;bar&quot;);</span>
+<span class="lineNum"> 147 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 148 </span> :
+<span class="lineNum"> 149 </span> : // Real-life example
+<span class="lineNum"> 150 </span><span class="lineCov"> 1 : Test realLife()</span>
+<span class="lineNum"> 151 </span> : {
+<span class="lineNum"> 152 </span> : string record =
+<span class="lineNum"> 153 </span> : &quot;Package: apt\n&quot;
+<span class="lineNum"> 154 </span> : &quot;Priority: important\n&quot;
+<span class="lineNum"> 155 </span> : &quot;Section: admin\n&quot;
+<span class="lineNum"> 156 </span> : &quot;Installed-Size: 4368\n&quot;
+<span class="lineNum"> 157 </span> : &quot;Maintainer: APT Development Team &lt;deity@lists.debian.org&gt;\n&quot;
+<span class="lineNum"> 158 </span> : &quot;Architecture: amd64\n&quot;
+<span class="lineNum"> 159 </span> : &quot;Version: 0.6.46.4-0.1\n&quot;
+<span class="lineNum"> 160 </span> : &quot;Replaces: libapt-pkg-doc (&lt;&lt; 0.3.7), libapt-pkg-dev (&lt;&lt; 0.3.7)\n&quot;
+<span class="lineNum"> 161 </span> : &quot;Provides: libapt-pkg-libc6.3-6-3.11\n&quot;
+<span class="lineNum"> 162 </span> : &quot;Depends: libc6 (&gt;= 2.3.5-1), libgcc1 (&gt;= 1:4.1.1-12), libstdc++6 (&gt;= 4.1.1-12), debian-archive-keyring\n&quot;
+<span class="lineNum"> 163 </span> : &quot;Suggests: aptitude | synaptic | gnome-apt | wajig, dpkg-dev, apt-doc, bzip2\n&quot;
+<span class="lineNum"> 164 </span> : &quot;Filename: pool/main/a/apt/apt_0.6.46.4-0.1_amd64.deb\n&quot;
+<span class="lineNum"> 165 </span> : &quot;Size: 1436478\n&quot;
+<span class="lineNum"> 166 </span> : &quot;MD5sum: 1776421f80d6300c77a608e77a9f4a15\n&quot;
+<span class="lineNum"> 167 </span> : &quot;SHA1: 1bd7337d2df56d267632cf72ac930c0a4895898f\n&quot;
+<span class="lineNum"> 168 </span> : &quot;SHA256: b92442ab60046b4d0728245f39cc932f26e17db9f7933a5ec9aaa63172f51fda\n&quot;
+<span class="lineNum"> 169 </span> : &quot;Description: Advanced front-end for dpkg\n&quot;
+<span class="lineNum"> 170 </span> : &quot; This is Debian's next generation front-end for the dpkg package manager.\n&quot;
+<span class="lineNum"> 171 </span> : &quot; It provides the apt-get utility and APT dselect method that provides a\n&quot;
+<span class="lineNum"> 172 </span> : &quot; simpler, safer way to install and upgrade packages.\n&quot;
+<span class="lineNum"> 173 </span> : &quot; .\n&quot;
+<span class="lineNum"> 174 </span> : &quot; APT features complete installation ordering, multiple source capability\n&quot;
+<span class="lineNum"> 175 </span> : &quot; and several other unique features, see the Users Guide in apt-doc.\n&quot;
+<span class="lineNum"> 176 </span> : &quot;Build-Essential: yes\n&quot;
+<span class="lineNum"> 177 </span><span class="lineCov"> 1 : &quot;Tag: admin::package-management, filetransfer::ftp, filetransfer::http, hardware::storage:cd, interface::commandline, network::client, protocol::{ftp,http,ipv6}, role::program, suite::debian, use::downloading, use::searching, works-with::software:package\n&quot;;</span>
+<span class="lineNum"> 178 </span><span class="lineCov"> 1 : RecordParser p(record);</span>
+<span class="lineNum"> 179 </span> :
+<span class="lineNum"> 180 </span><span class="lineCov"> 1 : assert_eq(p.size(), 19u);</span>
+<span class="lineNum"> 181 </span> :
+<span class="lineNum"> 182 </span><span class="lineCov"> 1 : string rec1;</span>
+<span class="lineNum"> 183 </span><span class="lineCov"> 20 : for (size_t i = 0; i &lt; p.size(); ++i)</span>
+<span class="lineNum"> 184 </span><span class="lineCov"> 19 : rec1 += p.field(i);</span>
+<span class="lineNum"> 185 </span><span class="lineCov"> 1 : assert_eq(record, rec1);</span>
+<span class="lineNum"> 186 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 187 </span> :
+<span class="lineNum"> 188 </span> : // Various buffer termination patterns
+<span class="lineNum"> 189 </span><span class="lineCov"> 1 : Test bufferTermination()</span>
+<span class="lineNum"> 190 </span> : {
+<span class="lineNum"> 191 </span> : std::string record =
+<span class="lineNum"> 192 </span> : &quot;A: a\n&quot;
+<span class="lineNum"> 193 </span><span class="lineCov"> 1 : &quot;B: b&quot;;</span>
+<span class="lineNum"> 194 </span> :
+<span class="lineNum"> 195 </span><span class="lineCov"> 1 : RecordParser p(record);</span>
+<span class="lineNum"> 196 </span><span class="lineCov"> 1 : assert_eq(p.size(), 2u);</span>
+<span class="lineNum"> 197 </span><span class="lineCov"> 2 : assert_eq(p[&quot;A&quot;], &quot;a&quot;);</span>
+<span class="lineNum"> 198 </span><span class="lineCov"> 2 : assert_eq(p[&quot;B&quot;], &quot;b&quot;);</span>
+<span class="lineNum"> 199 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 200 </span> :
+<span class="lineNum"> 201 </span><span class="lineCov"> 1 : Test bufferTermination2()</span>
+<span class="lineNum"> 202 </span> : {
+<span class="lineNum"> 203 </span> : std::string record =
+<span class="lineNum"> 204 </span> : &quot;A: a\n&quot;
+<span class="lineNum"> 205 </span><span class="lineCov"> 1 : &quot;B: b\n\n&quot;;</span>
+<span class="lineNum"> 206 </span> :
+<span class="lineNum"> 207 </span><span class="lineCov"> 1 : RecordParser p(record);</span>
+<span class="lineNum"> 208 </span><span class="lineCov"> 1 : assert_eq(p.size(), 2u);</span>
+<span class="lineNum"> 209 </span><span class="lineCov"> 2 : assert_eq(p[&quot;A&quot;], &quot;a&quot;);</span>
+<span class="lineNum"> 210 </span><span class="lineCov"> 2 : assert_eq(p[&quot;B&quot;], &quot;b&quot;);</span>
+<span class="lineNum"> 211 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 212 </span> :
+<span class="lineNum"> 213 </span><span class="lineCov"> 1 : Test bufferTermination3()</span>
+<span class="lineNum"> 214 </span> : {
+<span class="lineNum"> 215 </span> : std::string record =
+<span class="lineNum"> 216 </span> : &quot;A: a\n&quot;
+<span class="lineNum"> 217 </span> : &quot;B: b\n\n&quot;
+<span class="lineNum"> 218 </span><span class="lineCov"> 1 : &quot;C: c\n&quot;;</span>
+<span class="lineNum"> 219 </span> :
+<span class="lineNum"> 220 </span><span class="lineCov"> 1 : RecordParser p(record);</span>
+<span class="lineNum"> 221 </span><span class="lineCov"> 1 : assert_eq(p.size(), 2u);</span>
+<span class="lineNum"> 222 </span><span class="lineCov"> 2 : assert_eq(p[&quot;A&quot;], &quot;a&quot;);</span>
+<span class="lineNum"> 223 </span><span class="lineCov"> 2 : assert_eq(p[&quot;B&quot;], &quot;b&quot;);</span>
+<span class="lineNum"> 224 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 225 </span> :
+<span class="lineNum"> 226 </span> : };
+<span class="lineNum"> 227 </span> :
+<span class="lineNum"> 228 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/apt/version.cc.gcov.html b/rep/ept/apt/version.cc.gcov.html
new file mode 100644
index 0000000..d850ed3
--- /dev/null
+++ b/rep/ept/apt/version.cc.gcov.html
@@ -0,0 +1,154 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/apt/version.cc</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/apt</a> - version.cc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">34</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">88.2 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">30</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /** \file
+<span class="lineNum"> 2 </span> : * Provide a very lightweight Version class that represent a package with a
+<span class="lineNum"> 3 </span> : * version, with very cheap value copy operations.
+<span class="lineNum"> 4 </span> : */
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : /*
+<span class="lineNum"> 7 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 8 </span> : *
+<span class="lineNum"> 9 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 10 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 11 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 12 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 13 </span> : *
+<span class="lineNum"> 14 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 15 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 16 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 17 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 18 </span> : *
+<span class="lineNum"> 19 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 20 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 21 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 22 </span> : */
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : #include &lt;ept/apt/version.h&gt;
+<span class="lineNum"> 25 </span> : #include &lt;apt-pkg/debversion.h&gt;
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : using namespace std;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : namespace ept {
+<span class="lineNum"> 30 </span> : namespace apt {
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span><span class="lineCov"> 4 : std::string Version::upstreamVersion() const</span>
+<span class="lineNum"> 33 </span> : {
+<span class="lineNum"> 34 </span> : // Skip the epoch, if it is there
+<span class="lineNum"> 35 </span><span class="lineCov"> 4 : size_t start = m_version.find(':');</span>
+<span class="lineNum"> 36 </span><span class="lineCov"> 4 : if (start == string::npos)</span>
+<span class="lineNum"> 37 </span><span class="lineCov"> 3 : start = 0;</span>
+<span class="lineNum"> 38 </span> : else
+<span class="lineNum"> 39 </span><span class="lineCov"> 1 : ++start;</span>
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : // Skip everything after the trailing '-', if it is there
+<span class="lineNum"> 42 </span><span class="lineCov"> 4 : size_t end = m_version.rfind('-');</span>
+<span class="lineNum"> 43 </span><span class="lineCov"> 4 : if (end == string::npos)</span>
+<span class="lineNum"> 44 </span><span class="lineCov"> 1 : end = m_version.size();</span>
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span><span class="lineCov"> 4 : return m_version.substr(start, end-start);</span>
+<span class="lineNum"> 47 </span> : }
+<span class="lineNum"> 48 </span> :
+<span class="lineNum"> 49 </span> : /* Version comparison by Debian policy */
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span><span class="lineCov"> 4 : bool Version::operator&lt;=(const Version&amp; pkg) const</span>
+<span class="lineNum"> 52 </span> : {
+<span class="lineNum"> 53 </span><span class="lineCov"> 4 : if (name() &lt; pkg.name())</span>
+<span class="lineNum"> 54 </span><span class="lineCov"> 1 : return true;</span>
+<span class="lineNum"> 55 </span><span class="lineCov"> 3 : if (name() == pkg.name())</span>
+<span class="lineNum"> 56 </span><span class="lineCov"> 3 : return debVS.CmpVersion(version(), pkg.version()) &lt;= 0;</span>
+<span class="lineNum"> 57 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 58 </span> : }
+<span class="lineNum"> 59 </span><span class="lineCov"> 5 : bool Version::operator&lt;(const Version&amp; pkg) const</span>
+<span class="lineNum"> 60 </span> : {
+<span class="lineNum"> 61 </span><span class="lineCov"> 5 : if (name() &lt; pkg.name())</span>
+<span class="lineNum"> 62 </span><span class="lineCov"> 1 : return true;</span>
+<span class="lineNum"> 63 </span><span class="lineCov"> 4 : if (name() == pkg.name())</span>
+<span class="lineNum"> 64 </span><span class="lineCov"> 4 : return debVS.CmpVersion(version(), pkg.version()) &lt; 0;</span>
+<span class="lineNum"> 65 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 66 </span> : }
+<span class="lineNum"> 67 </span><span class="lineCov"> 4 : bool Version::operator&gt;=(const Version&amp; pkg) const</span>
+<span class="lineNum"> 68 </span> : {
+<span class="lineNum"> 69 </span><span class="lineCov"> 4 : if (name() &gt; pkg.name())</span>
+<span class="lineNum"> 70 </span><span class="lineNoCov"> 0 : return true;</span>
+<span class="lineNum"> 71 </span><span class="lineCov"> 4 : if (name() == pkg.name())</span>
+<span class="lineNum"> 72 </span><span class="lineCov"> 3 : return debVS.CmpVersion(version(), pkg.version()) &gt;= 0;</span>
+<span class="lineNum"> 73 </span><span class="lineCov"> 1 : return false;</span>
+<span class="lineNum"> 74 </span> : }
+<span class="lineNum"> 75 </span><span class="lineCov"> 5 : bool Version::operator&gt;(const Version&amp; pkg) const</span>
+<span class="lineNum"> 76 </span> : {
+<span class="lineNum"> 77 </span><span class="lineCov"> 5 : if (name() &gt; pkg.name())</span>
+<span class="lineNum"> 78 </span><span class="lineNoCov"> 0 : return true;</span>
+<span class="lineNum"> 79 </span><span class="lineCov"> 5 : if (name() == pkg.name())</span>
+<span class="lineNum"> 80 </span><span class="lineCov"> 4 : return debVS.CmpVersion(version(), pkg.version()) &gt; 0;</span>
+<span class="lineNum"> 81 </span><span class="lineCov"> 1 : return false;</span>
+<span class="lineNum"> 82 </span> : }
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span> : }
+<span class="lineNum"> 85 </span><span class="lineCov"> 6 : }</span>
+<span class="lineNum"> 86 </span> :
+<span class="lineNum"> 87 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/apt/version.h.gcov.html b/rep/ept/apt/version.h.gcov.html
new file mode 100644
index 0000000..0f48a29
--- /dev/null
+++ b/rep/ept/apt/version.h.gcov.html
@@ -0,0 +1,161 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/apt/version.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/apt</a> - version.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">9</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">9</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef EPT_APT_VERSION_H
+<span class="lineNum"> 2 </span> : #define EPT_APT_VERSION_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** \file
+<span class="lineNum"> 5 </span> : * Representation of a package with a version
+<span class="lineNum"> 6 </span> : */
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : /*
+<span class="lineNum"> 9 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 12 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 13 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 14 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 19 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 20 </span> : *
+<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 22 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 24 </span> : */
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;string&gt;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : namespace ept {
+<span class="lineNum"> 29 </span> : namespace apt {
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /**
+<span class="lineNum"> 32 </span> : * Lightweight Version class that represent a package with a version, with very
+<span class="lineNum"> 33 </span> : * cheap value copy operations.
+<span class="lineNum"> 34 </span> : *
+<span class="lineNum"> 35 </span> : * This class can be used to query package information from various information
+<span class="lineNum"> 36 </span> : * sources. The purpose is create a middle ground that makes sure that all
+<span class="lineNum"> 37 </span> : * sort of different information sources about packages are referring to the
+<span class="lineNum"> 38 </span> : * same package.
+<span class="lineNum"> 39 </span> : */
+<span class="lineNum"> 40 </span> : class Version
+<span class="lineNum"> 41 </span><span class="lineCov"> 55 : {</span>
+<span class="lineNum"> 42 </span> : protected:
+<span class="lineNum"> 43 </span> : std::string m_name;
+<span class="lineNum"> 44 </span> : std::string m_version;
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> : public:
+<span class="lineNum"> 47 </span> : /**
+<span class="lineNum"> 48 </span> : * Create an invalid Version
+<span class="lineNum"> 49 </span> : */
+<span class="lineNum"> 50 </span><span class="lineCov"> 7 : Version() {}</span>
+<span class="lineNum"> 51 </span> :
+<span class="lineNum"> 52 </span> : /**
+<span class="lineNum"> 53 </span> : * Create a Version from strings
+<span class="lineNum"> 54 </span> : */
+<span class="lineNum"> 55 </span><span class="lineCov"> 34 : Version(const std::string&amp; name, const std::string&amp; version)</span>
+<span class="lineNum"> 56 </span><span class="lineCov"> 34 : : m_name(name), m_version(version) {}</span>
+<span class="lineNum"> 57 </span> :
+<span class="lineNum"> 58 </span> : /**
+<span class="lineNum"> 59 </span> : * Return the package name
+<span class="lineNum"> 60 </span> : */
+<span class="lineNum"> 61 </span><span class="lineCov"> 81 : std::string name() const { return m_name; }</span>
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span> : /**
+<span class="lineNum"> 64 </span> : * Return the package version, or the empty string if this is a
+<span class="lineNum"> 65 </span> : * versionless package.
+<span class="lineNum"> 66 </span> : */
+<span class="lineNum"> 67 </span><span class="lineCov"> 38 : std::string version() const { return m_version; }</span>
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span> : /**
+<span class="lineNum"> 70 </span> : * Return the upstream part of the version
+<span class="lineNum"> 71 </span> : */
+<span class="lineNum"> 72 </span> : std::string upstreamVersion() const;
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span> : /**
+<span class="lineNum"> 75 </span> : * Return true if this package contains a valid value
+<span class="lineNum"> 76 </span> : */
+<span class="lineNum"> 77 </span><span class="lineCov"> 11 : bool isValid() const { return !m_name.empty() &amp;&amp; !m_version.empty(); }</span>
+<span class="lineNum"> 78 </span> :
+<span class="lineNum"> 79 </span> : /**
+<span class="lineNum"> 80 </span> : * Comparison operators
+<span class="lineNum"> 81 </span> : */
+<span class="lineNum"> 82 </span><span class="lineCov"> 9 : bool operator==(const Version&amp; pkg) const { return m_name == pkg.m_name &amp;&amp; m_version == pkg.m_version; }</span>
+<span class="lineNum"> 83 </span><span class="lineCov"> 5 : bool operator!=(const Version&amp; pkg) const { return m_name != pkg.m_name || m_version != pkg.m_version; }</span>
+<span class="lineNum"> 84 </span> : bool operator&lt;=(const Version&amp; pkg) const;
+<span class="lineNum"> 85 </span> : bool operator&lt;(const Version&amp; pkg) const;
+<span class="lineNum"> 86 </span> : bool operator&gt;=(const Version&amp; pkg) const;
+<span class="lineNum"> 87 </span> : bool operator&gt;(const Version&amp; pkg) const;
+<span class="lineNum"> 88 </span> : };
+<span class="lineNum"> 89 </span> :
+<span class="lineNum"> 90 </span> : }
+<span class="lineNum"> 91 </span> : }
+<span class="lineNum"> 92 </span> :
+<span class="lineNum"> 93 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 94 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/apt/version.test.h.gcov.html b/rep/ept/apt/version.test.h.gcov.html
new file mode 100644
index 0000000..0f645e7
--- /dev/null
+++ b/rep/ept/apt/version.test.h.gcov.html
@@ -0,0 +1,203 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/apt/version.test.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/apt</a> - version.test.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">71</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">71</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /*
+<span class="lineNum"> 2 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 3 </span> : *
+<span class="lineNum"> 4 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 5 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 6 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 7 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 8 </span> : *
+<span class="lineNum"> 9 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 10 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 11 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 12 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 13 </span> : *
+<span class="lineNum"> 14 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 15 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 16 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 17 </span> : */
+<span class="lineNum"> 18 </span> :
+<span class="lineNum"> 19 </span> : #include &lt;ept/test.h&gt;
+<span class="lineNum"> 20 </span> : #include &lt;ept/apt/version.h&gt;
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : using namespace std;
+<span class="lineNum"> 23 </span> : using namespace ept::apt;
+<span class="lineNum"> 24 </span> :
+<span class="lineNum"> 25 </span> : struct TestAptVersion {
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : // Basic test for invalid version
+<span class="lineNum"> 28 </span><span class="lineCov"> 1 : Test invalid()</span>
+<span class="lineNum"> 29 </span> : {
+<span class="lineNum"> 30 </span><span class="lineCov"> 1 : Version test;</span>
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span><span class="lineCov"> 1 : assert_eq(test.name(), &quot;&quot;);</span>
+<span class="lineNum"> 33 </span><span class="lineCov"> 1 : assert_eq(test.version(), &quot;&quot;);</span>
+<span class="lineNum"> 34 </span><span class="lineCov"> 1 : assert_eq(test.isValid(), false);</span>
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span><span class="lineCov"> 1 : string p = test.name();</span>
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span><span class="lineCov"> 1 : assert_eq(p, string());</span>
+<span class="lineNum"> 39 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : // Basic test for version
+<span class="lineNum"> 42 </span><span class="lineCov"> 1 : Test basic()</span>
+<span class="lineNum"> 43 </span> : {
+<span class="lineNum"> 44 </span><span class="lineCov"> 1 : Version test(&quot;test&quot;, &quot;1.0&quot;);</span>
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span><span class="lineCov"> 2 : assert_eq(test.name(), &quot;test&quot;);</span>
+<span class="lineNum"> 47 </span><span class="lineCov"> 1 : assert_eq(test.version(), &quot;1.0&quot;);</span>
+<span class="lineNum"> 48 </span><span class="lineCov"> 1 : assert_eq(test.isValid(), true);</span>
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span><span class="lineCov"> 1 : string p = test.name();</span>
+<span class="lineNum"> 51 </span> :
+<span class="lineNum"> 52 </span><span class="lineCov"> 1 : assert_eq(p, &quot;test&quot;);</span>
+<span class="lineNum"> 53 </span> :
+<span class="lineNum"> 54 </span><span class="lineCov"> 1 : Version v(p, &quot;1.1&quot;);</span>
+<span class="lineNum"> 55 </span><span class="lineCov"> 2 : assert_eq(v.name(), &quot;test&quot;);</span>
+<span class="lineNum"> 56 </span><span class="lineCov"> 1 : assert_eq(v.version(), &quot;1.1&quot;);</span>
+<span class="lineNum"> 57 </span><span class="lineCov"> 1 : assert_eq(v.isValid(), true);</span>
+<span class="lineNum"> 58 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 59 </span> :
+<span class="lineNum"> 60 </span> : // Comparison semanthics
+<span class="lineNum"> 61 </span><span class="lineCov"> 1 : Test comparison()</span>
+<span class="lineNum"> 62 </span> : {
+<span class="lineNum"> 63 </span><span class="lineCov"> 1 : Version test(&quot;test&quot;, &quot;1.0&quot;);</span>
+<span class="lineNum"> 64 </span><span class="lineCov"> 2 : Version test1(&quot;test&quot;, &quot;1.0&quot;);</span>
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span><span class="lineCov"> 2 : assert(test == test1);</span>
+<span class="lineNum"> 67 </span><span class="lineCov"> 2 : assert(! (test != test1));</span>
+<span class="lineNum"> 68 </span><span class="lineCov"> 2 : assert(! (test &lt; test1));</span>
+<span class="lineNum"> 69 </span><span class="lineCov"> 2 : assert(! (test &gt; test1));</span>
+<span class="lineNum"> 70 </span><span class="lineCov"> 2 : assert(test &lt;= test1);</span>
+<span class="lineNum"> 71 </span><span class="lineCov"> 2 : assert(test &gt;= test1);</span>
+<span class="lineNum"> 72 </span> :
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span><span class="lineCov"> 2 : Version test2(&quot;test2&quot;, &quot;1.0&quot;);</span>
+<span class="lineNum"> 75 </span> :
+<span class="lineNum"> 76 </span><span class="lineCov"> 2 : assert(test != test2);</span>
+<span class="lineNum"> 77 </span><span class="lineCov"> 2 : assert(test != test2);</span>
+<span class="lineNum"> 78 </span><span class="lineCov"> 2 : assert(test &lt; test2);</span>
+<span class="lineNum"> 79 </span><span class="lineCov"> 2 : assert(! (test &gt; test2));</span>
+<span class="lineNum"> 80 </span><span class="lineCov"> 2 : assert(test &lt;= test2);</span>
+<span class="lineNum"> 81 </span><span class="lineCov"> 2 : assert(! (test &gt;= test2));</span>
+<span class="lineNum"> 82 </span> :
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span><span class="lineCov"> 2 : Version test3(&quot;test&quot;, &quot;2.0&quot;);</span>
+<span class="lineNum"> 85 </span> :
+<span class="lineNum"> 86 </span><span class="lineCov"> 2 : assert(test != test3);</span>
+<span class="lineNum"> 87 </span><span class="lineCov"> 2 : assert(test != test3);</span>
+<span class="lineNum"> 88 </span><span class="lineCov"> 2 : assert(test &lt; test3);</span>
+<span class="lineNum"> 89 </span><span class="lineCov"> 2 : assert(! (test &gt; test3));</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 2 : assert(test &lt;= test3);</span>
+<span class="lineNum"> 91 </span><span class="lineCov"> 2 : assert(! (test &gt;= test3));</span>
+<span class="lineNum"> 92 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span> : // Value-copy semanthics
+<span class="lineNum"> 95 </span><span class="lineCov"> 1 : Test valueCopy()</span>
+<span class="lineNum"> 96 </span> : {
+<span class="lineNum"> 97 </span><span class="lineCov"> 1 : Version test(&quot;test&quot;, &quot;1.0&quot;);</span>
+<span class="lineNum"> 98 </span><span class="lineCov"> 1 : Version test1 = test;</span>
+<span class="lineNum"> 99 </span> :
+<span class="lineNum"> 100 </span><span class="lineCov"> 1 : assert(test == test1);</span>
+<span class="lineNum"> 101 </span> :
+<span class="lineNum"> 102 </span><span class="lineCov"> 1 : Version test2;</span>
+<span class="lineNum"> 103 </span><span class="lineCov"> 1 : test2 = test;</span>
+<span class="lineNum"> 104 </span><span class="lineCov"> 1 : assert(test == test2);</span>
+<span class="lineNum"> 105 </span><span class="lineCov"> 2 : assert(test1 == test2);</span>
+<span class="lineNum"> 106 </span> :
+<span class="lineNum"> 107 </span><span class="lineCov"> 2 : Version test3(&quot;test&quot;, &quot;1.0&quot;);</span>
+<span class="lineNum"> 108 </span><span class="lineCov"> 2 : assert(test == test3);</span>
+<span class="lineNum"> 109 </span><span class="lineCov"> 2 : assert(test1 == test3);</span>
+<span class="lineNum"> 110 </span><span class="lineCov"> 2 : assert(test2 == test3);</span>
+<span class="lineNum"> 111 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 112 </span> :
+<span class="lineNum"> 113 </span> : // Extraction of upstream version
+<span class="lineNum"> 114 </span><span class="lineCov"> 1 : Test upstreamVersion()</span>
+<span class="lineNum"> 115 </span> : {
+<span class="lineNum"> 116 </span><span class="lineCov"> 1 : assert_eq(Version(&quot;a&quot;, &quot;10.0&quot;).upstreamVersion(), &quot;10.0&quot;);</span>
+<span class="lineNum"> 117 </span><span class="lineCov"> 2 : assert_eq(Version(&quot;a&quot;, &quot;10.0-1&quot;).upstreamVersion(), &quot;10.0&quot;);</span>
+<span class="lineNum"> 118 </span><span class="lineCov"> 2 : assert_eq(Version(&quot;a&quot;, &quot;10.0~foo.1-1.0&quot;).upstreamVersion(), &quot;10.0~foo.1&quot;);</span>
+<span class="lineNum"> 119 </span><span class="lineCov"> 2 : assert_eq(Version(&quot;a&quot;, &quot;1.0:10.0~foo.1-1.0&quot;).upstreamVersion(), &quot;10.0~foo.1&quot;);</span>
+<span class="lineNum"> 120 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 121 </span> :
+<span class="lineNum"> 122 </span> : // Debian policy comparison semanthics
+<span class="lineNum"> 123 </span><span class="lineCov"> 1 : Test policyComparison()</span>
+<span class="lineNum"> 124 </span> : {
+<span class="lineNum"> 125 </span><span class="lineCov"> 1 : assert(Version(&quot;a&quot;, &quot;10.0&quot;) &gt; Version(&quot;a&quot;, &quot;2.1&quot;));</span>
+<span class="lineNum"> 126 </span><span class="lineCov"> 2 : assert(Version(&quot;a&quot;, &quot;1:10.0&quot;) &lt; Version(&quot;a&quot;, &quot;2:2.1&quot;));</span>
+<span class="lineNum"> 127 </span><span class="lineCov"> 2 : assert(Version(&quot;a&quot;, &quot;10.0-1&quot;) &lt; Version(&quot;a&quot;, &quot;10.0-2&quot;));</span>
+<span class="lineNum"> 128 </span><span class="lineCov"> 2 : assert(Version(&quot;a&quot;, &quot;10.0-2&quot;) &gt; Version(&quot;a&quot;, &quot;10.0-1&quot;));</span>
+<span class="lineNum"> 129 </span><span class="lineCov"> 2 : assert(Version(&quot;a&quot;, &quot;1:10.0-1&quot;) &lt;= Version(&quot;a&quot;, &quot;1:10.0-1&quot;));</span>
+<span class="lineNum"> 130 </span><span class="lineCov"> 2 : assert(Version(&quot;a&quot;, &quot;1:10.0-1&quot;) &gt;= Version(&quot;a&quot;, &quot;1:10.0-1&quot;));</span>
+<span class="lineNum"> 131 </span> : // TODO: add more
+<span class="lineNum"> 132 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 133 </span> :
+<span class="lineNum"> 134 </span> : };
+<span class="lineNum"> 135 </span> :
+<span class="lineNum"> 136 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/core/apt.cpp.gcov.html b/rep/ept/core/apt.cpp.gcov.html
new file mode 100644
index 0000000..159b490
--- /dev/null
+++ b/rep/ept/core/apt.cpp.gcov.html
@@ -0,0 +1,90 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/core/apt.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/core</a> - apt.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">7</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">7</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- C++ -*-
+<span class="lineNum"> 2 </span> : #include &lt;ept/core/apt.h&gt;
+<span class="lineNum"> 3 </span> : #include &lt;wibble/sys/fs.h&gt;
+<span class="lineNum"> 4 </span> :
+<span class="lineNum"> 5 </span> : namespace wfs = wibble::sys::fs;
+<span class="lineNum"> 6 </span> :
+<span class="lineNum"> 7 </span> : namespace ept {
+<span class="lineNum"> 8 </span> : namespace core {
+<span class="lineNum"> 9 </span><span class="lineCov"> 45 : time_t aptTimestamp()</span>
+<span class="lineNum"> 10 </span> : {
+<span class="lineNum"> 11 </span> : std::auto_ptr&lt;struct stat&gt; st = wfs::stat(
+<span class="lineNum"> 12 </span><span class="lineCov"> 45 : _config-&gt;FindFile( &quot;Dir::Cache::pkgcache&quot; ) );</span>
+<span class="lineNum"> 13 </span><span class="lineCov"> 45 : time_t t1 = st.get() == NULL ? 0 : st-&gt;st_mtime;</span>
+<span class="lineNum"> 14 </span> :
+<span class="lineNum"> 15 </span> : std::auto_ptr&lt;struct stat&gt; st1 = wfs::stat(
+<span class="lineNum"> 16 </span><span class="lineCov"> 45 : _config-&gt;FindFile( &quot;Dir::State::status&quot; ) );</span>
+<span class="lineNum"> 17 </span><span class="lineCov"> 45 : time_t t2 = st1.get() == NULL ? 0 : st1-&gt;st_mtime;</span>
+<span class="lineNum"> 18 </span> :
+<span class="lineNum"> 19 </span><span class="lineCov"> 45 : return t1 &gt; t2 ? t1 : t2;</span>
+<span class="lineNum"> 20 </span> : }
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : }
+<span class="lineNum"> 23 </span><span class="lineCov"> 6 : }</span>
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/core/apt.h.gcov.html b/rep/ept/core/apt.h.gcov.html
new file mode 100644
index 0000000..b8d3ec9
--- /dev/null
+++ b/rep/ept/core/apt.h.gcov.html
@@ -0,0 +1,474 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/core/apt.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/core</a> - apt.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">173</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">79.8 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">138</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : #include &lt;string&gt;
+<span class="lineNum"> 4 </span> : #include &lt;wibble/test.h&gt;
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : #include &lt;ept/token.h&gt;
+<span class="lineNum"> 7 </span> : #include &lt;ept/core/source.h&gt;
+<span class="lineNum"> 8 </span> :
+<span class="lineNum"> 9 </span> : #include &lt;iostream&gt;
+<span class="lineNum"> 10 </span> : #include &lt;wibble/exception.h&gt;
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : #include &lt;apt-pkg/pkgcache.h&gt;
+<span class="lineNum"> 13 </span> : #include &lt;apt-pkg/sourcelist.h&gt;
+<span class="lineNum"> 14 </span> : #include &lt;apt-pkg/error.h&gt;
+<span class="lineNum"> 15 </span> : #include &lt;apt-pkg/policy.h&gt;
+<span class="lineNum"> 16 </span> : #include &lt;apt-pkg/cachefile.h&gt;
+<span class="lineNum"> 17 </span> : #include &lt;apt-pkg/progress.h&gt;
+<span class="lineNum"> 18 </span> : #include &lt;apt-pkg/pkgcachegen.h&gt;
+<span class="lineNum"> 19 </span> : #include &lt;apt-pkg/init.h&gt;
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : #ifndef EPT_APT_H
+<span class="lineNum"> 22 </span> : #define EPT_APT_H
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : namespace ept {
+<span class="lineNum"> 25 </span> : namespace core {
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span><span class="lineNoCov"> 0 : struct AptException : wibble::exception::Generic {</span>
+<span class="lineNum"> 28 </span><span class="lineNoCov"> 0 : std::string desc() const throw () {</span>
+<span class="lineNum"> 29 </span><span class="lineNoCov"> 0 : return &quot;APT Error&quot;;</span>
+<span class="lineNum"> 30 </span> : }
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span><span class="lineNoCov"> 0 : AptException( const std::string &amp;ctx ) : Generic( ctx ) {</span>
+<span class="lineNum"> 33 </span><span class="lineNoCov"> 0 : while ( !_error-&gt;empty() ) {</span>
+<span class="lineNum"> 34 </span><span class="lineNoCov"> 0 : std::string err;</span>
+<span class="lineNum"> 35 </span><span class="lineNoCov"> 0 : _error-&gt;PopMessage( err );</span>
+<span class="lineNum"> 36 </span><span class="lineNoCov"> 0 : std::cerr &lt;&lt; err &lt;&lt; std::endl;</span>
+<span class="lineNum"> 37 </span><span class="lineNoCov"> 0 : addContext( err );</span>
+<span class="lineNum"> 38 </span> : }
+<span class="lineNum"> 39 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 40 </span> : };
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span> : struct PackageState {
+<span class="lineNum"> 43 </span> : enum Query {
+<span class="lineNum"> 44 </span> : Install = 1 &lt;&lt; 0,
+<span class="lineNum"> 45 </span> : Upgrade = 1 &lt;&lt; 1,
+<span class="lineNum"> 46 </span> : Keep = 1 &lt;&lt; 2,
+<span class="lineNum"> 47 </span> : Remove = 1 &lt;&lt; 3,
+<span class="lineNum"> 48 </span> : Installed = 1 &lt;&lt; 4,
+<span class="lineNum"> 49 </span> : Upgradable = 1 &lt;&lt; 5,
+<span class="lineNum"> 50 </span> : NowBroken = 1 &lt;&lt; 6,
+<span class="lineNum"> 51 </span> : WillBreak = 1 &lt;&lt; 7,
+<span class="lineNum"> 52 </span> : ReInstall = 1 &lt;&lt; 8,
+<span class="lineNum"> 53 </span> : Purge = 1 &lt;&lt; 9,
+<span class="lineNum"> 54 </span> : Hold = 1 &lt;&lt; 10,
+<span class="lineNum"> 55 </span> : Valid = 1 &lt;&lt; 11
+<span class="lineNum"> 56 </span> : };
+<span class="lineNum"> 57 </span> :
+<span class="lineNum"> 58 </span> : typedef unsigned state;
+<span class="lineNum"> 59 </span> :
+<span class="lineNum"> 60 </span><span class="lineCov"> 3786 : operator unsigned() { return m_state; };</span>
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : PackageState &amp;operator=( unsigned i ) {
+<span class="lineNum"> 63 </span> : m_state = i;
+<span class="lineNum"> 64 </span> : return *this;
+<span class="lineNum"> 65 </span> : }
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span><span class="lineCov"> 5218 : PackageState &amp;operator|=( const PackageState &amp;s ) {</span>
+<span class="lineNum"> 68 </span><span class="lineCov"> 5218 : m_state |= s.m_state;</span>
+<span class="lineNum"> 69 </span><span class="lineCov"> 5218 : return *this;</span>
+<span class="lineNum"> 70 </span> : }
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span><span class="lineCov"> 9003 : PackageState( unsigned a ) {</span>
+<span class="lineNum"> 73 </span><span class="lineCov"> 9003 : m_state = a;</span>
+<span class="lineNum"> 74 </span><span class="lineCov"> 9003 : }</span>
+<span class="lineNum"> 75 </span> :
+<span class="lineNum"> 76 </span><span class="lineCov"> 1 : PackageState() : m_state( 0 ) {}</span>
+<span class="lineNum"> 77 </span> :
+<span class="lineNum"> 78 </span> : // FIXME this probably needs to be used consistently in core and out of core
+<span class="lineNum"> 79 </span><span class="lineCov"> 2 : bool isValid() const { return m_state &amp; Valid; }</span>
+<span class="lineNum"> 80 </span> : // FIXME compatibility API for non-core apt
+<span class="lineNum"> 81 </span><span class="lineCov"> 1 : bool isInstalled() const { return installed(); }</span>
+<span class="lineNum"> 82 </span> :
+<span class="lineNum"> 83 </span><span class="lineCov"> 2 : bool install() const { return m_state &amp; Install; }</span>
+<span class="lineNum"> 84 </span> : // reinstall() implies install()
+<span class="lineNum"> 85 </span> : bool reinstall() const { return m_state &amp; ReInstall; }
+<span class="lineNum"> 86 </span> : bool remove() const { return m_state &amp; Remove; }
+<span class="lineNum"> 87 </span> : // purge() implies remove()
+<span class="lineNum"> 88 </span><span class="lineCov"> 3775 : bool purge() const { return m_state &amp; Purge; }</span>
+<span class="lineNum"> 89 </span><span class="lineCov"> 3780 : bool keep() const { return m_state &amp; Keep; }</span>
+<span class="lineNum"> 90 </span> : bool willBreak() const { return m_state &amp; WillBreak; }
+<span class="lineNum"> 91 </span> : // upgrade() implies install()
+<span class="lineNum"> 92 </span> : bool upgrade() const { return hasNewVersion() &amp;&amp; install(); }
+<span class="lineNum"> 93 </span> : // newInsstal() implies install()
+<span class="lineNum"> 94 </span> : bool newInstall() const { return !installed() &amp;&amp; install(); }
+<span class="lineNum"> 95 </span> : bool hold() const { return m_state &amp; Hold; }
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span><span class="lineCov"> 1 : bool installed() const { return m_state &amp; Installed; }</span>
+<span class="lineNum"> 98 </span> : bool hasNewVersion() const { return m_state &amp; Upgradable; }
+<span class="lineNum"> 99 </span> : bool upgradable() const { return hasNewVersion() &amp;&amp; !hold(); }
+<span class="lineNum"> 100 </span> : bool held() const { return hasNewVersion() &amp;&amp; hold(); }
+<span class="lineNum"> 101 </span> : bool nowBroken() const { return m_state &amp; NowBroken; }
+<span class="lineNum"> 102 </span> :
+<span class="lineNum"> 103 </span> : bool modify() const { return install() || remove(); }
+<span class="lineNum"> 104 </span> :
+<span class="lineNum"> 105 </span> : protected:
+<span class="lineNum"> 106 </span> : unsigned m_state;
+<span class="lineNum"> 107 </span> : };
+<span class="lineNum"> 108 </span> :
+<span class="lineNum"> 109 </span> : time_t aptTimestamp();
+<span class="lineNum"> 110 </span> :
+<span class="lineNum"> 111 </span> : // wrap the apt's database
+<span class="lineNum"> 112 </span> : struct AptDatabase {
+<span class="lineNum"> 113 </span><span class="lineCov"> 5093 : pkgCache &amp;cache() {</span>
+<span class="lineNum"> 114 </span><span class="lineCov"> 5093 : if ( !m_cache )</span>
+<span class="lineNum"> 115 </span><span class="lineCov"> 20 : openCache();</span>
+<span class="lineNum"> 116 </span><span class="lineCov"> 5093 : return *m_cache;</span>
+<span class="lineNum"> 117 </span> : }
+<span class="lineNum"> 118 </span> :
+<span class="lineNum"> 119 </span><span class="lineCov"> 3793 : pkgDepCache &amp;state() {</span>
+<span class="lineNum"> 120 </span><span class="lineCov"> 3793 : if ( !m_state )</span>
+<span class="lineNum"> 121 </span><span class="lineCov"> 5 : openState();</span>
+<span class="lineNum"> 122 </span><span class="lineCov"> 3793 : return *m_state;</span>
+<span class="lineNum"> 123 </span> : }
+<span class="lineNum"> 124 </span> :
+<span class="lineNum"> 125 </span><span class="lineCov"> 1436 : pkgPolicy &amp;policy() {</span>
+<span class="lineNum"> 126 </span><span class="lineCov"> 1436 : if ( !m_policy )</span>
+<span class="lineNum"> 127 </span><span class="lineNoCov"> 0 : openCache();</span>
+<span class="lineNum"> 128 </span><span class="lineCov"> 1436 : return *m_policy;</span>
+<span class="lineNum"> 129 </span> : }
+<span class="lineNum"> 130 </span> :
+<span class="lineNum"> 131 </span> : OpProgress *m_progress;
+<span class="lineNum"> 132 </span> : bool m_tryWriteable;
+<span class="lineNum"> 133 </span> : bool m_writeable;
+<span class="lineNum"> 134 </span> :
+<span class="lineNum"> 135 </span> : time_t timestamp() {
+<span class="lineNum"> 136 </span> : return aptTimestamp();
+<span class="lineNum"> 137 </span> : }
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span><span class="lineCov"> 73 : AptDatabase() {</span>
+<span class="lineNum"> 140 </span><span class="lineCov"> 73 : m_cache = 0;</span>
+<span class="lineNum"> 141 </span><span class="lineCov"> 73 : m_state = 0;</span>
+<span class="lineNum"> 142 </span><span class="lineCov"> 73 : m_policy = 0;</span>
+<span class="lineNum"> 143 </span><span class="lineCov"> 73 : m_progress = new OpProgress();</span>
+<span class="lineNum"> 144 </span><span class="lineCov"> 73 : m_tryWriteable = true;</span>
+<span class="lineNum"> 145 </span><span class="lineCov"> 73 : m_writeable = false;</span>
+<span class="lineNum"> 146 </span><span class="lineCov"> 73 : }</span>
+<span class="lineNum"> 147 </span> :
+<span class="lineNum"> 148 </span> : void setProgress( OpProgress *p ) {
+<span class="lineNum"> 149 </span> : m_progress = p;
+<span class="lineNum"> 150 </span> : }
+<span class="lineNum"> 151 </span> :
+<span class="lineNum"> 152 </span> : bool writeable() {
+<span class="lineNum"> 153 </span> : if ( !m_cache )
+<span class="lineNum"> 154 </span> : openCache();
+<span class="lineNum"> 155 </span> : return m_writeable;
+<span class="lineNum"> 156 </span> : }
+<span class="lineNum"> 157 </span> :
+<span class="lineNum"> 158 </span><span class="lineCov"> 5 : void openState() {</span>
+<span class="lineNum"> 159 </span><span class="lineCov"> 5 : m_state = new pkgDepCache( &amp;cache(), m_policy );</span>
+<span class="lineNum"> 160 </span><span class="lineCov"> 5 : m_state-&gt;Init( m_progress );</span>
+<span class="lineNum"> 161 </span><span class="lineCov"> 5 : m_progress-&gt;Done();</span>
+<span class="lineNum"> 162 </span><span class="lineCov"> 5 : }</span>
+<span class="lineNum"> 163 </span> :
+<span class="lineNum"> 164 </span><span class="lineCov"> 20 : void openCache() {</span>
+<span class="lineNum"> 165 </span><span class="lineCov"> 20 : if ( !_config-&gt;FindB(&quot;Initialized&quot;) ) {</span>
+<span class="lineNum"> 166 </span><span class="lineNoCov"> 0 : pkgInitConfig(*_config);</span>
+<span class="lineNum"> 167 </span><span class="lineNoCov"> 0 : _config-&gt;Set(&quot;Initialized&quot;, 1);</span>
+<span class="lineNum"> 168 </span><span class="lineNoCov"> 0 : pkgInitSystem(*_config, _system);</span>
+<span class="lineNum"> 169 </span> : }
+<span class="lineNum"> 170 </span> :
+<span class="lineNum"> 171 </span><span class="lineCov"> 20 : m_writeable = m_tryWriteable;</span>
+<span class="lineNum"> 172 </span> :
+<span class="lineNum"> 173 </span><span class="lineCov"> 20 : if ( m_tryWriteable ) {</span>
+<span class="lineNum"> 174 </span> : try {
+<span class="lineNum"> 175 </span><span class="lineCov"> 20 : _system-&gt;Lock();</span>
+<span class="lineNum"> 176 </span><span class="lineNoCov"> 0 : } catch ( std::exception e ) {</span>
+<span class="lineNum"> 177 </span><span class="lineNoCov"> 0 : m_tryWriteable = false;</span>
+<span class="lineNum"> 178 </span><span class="lineNoCov"> 0 : openCache();</span>
+<span class="lineNum"> 179 </span><span class="lineNoCov"> 0 : m_tryWriteable = true;</span>
+<span class="lineNum"> 180 </span><span class="lineNoCov"> 0 : throw;</span>
+<span class="lineNum"> 181 </span> : }
+<span class="lineNum"> 182 </span> : }
+<span class="lineNum"> 183 </span> :
+<span class="lineNum"> 184 </span><span class="lineCov"> 20 : pkgSourceList list;</span>
+<span class="lineNum"> 185 </span><span class="lineCov"> 20 : if ( list.ReadMainList() == false ) {</span>
+<span class="lineNum"> 186 </span><span class="lineNoCov"> 0 : _error-&gt;DumpErrors();</span>
+<span class="lineNum"> 187 </span> : throw wibble::exception::System(
+<span class="lineNum"> 188 </span><span class="lineNoCov"> 0 : &quot;The list of sources could not be read.&quot; );</span>
+<span class="lineNum"> 189 </span> : }
+<span class="lineNum"> 190 </span> :
+<span class="lineNum"> 191 </span><span class="lineCov"> 20 : MMap *m = 0;</span>
+<span class="lineNum"> 192 </span><span class="lineCov"> 20 : bool Res = pkgMakeStatusCache( list, *m_progress, &amp;m, !m_writeable );</span>
+<span class="lineNum"> 193 </span> :
+<span class="lineNum"> 194 </span><span class="lineCov"> 20 : if ( !Res ) {</span>
+<span class="lineNum"> 195 </span> : std::cerr &lt;&lt; &quot;The package lists or status file &quot;
+<span class="lineNum"> 196 </span><span class="lineNoCov"> 0 : &quot;could not be parsed or opened.&quot; &lt;&lt; std::endl;</span>
+<span class="lineNum"> 197 </span> : throw AptException(
+<span class="lineNum"> 198 </span> : &quot;The package lists or status file &quot;
+<span class="lineNum"> 199 </span><span class="lineNoCov"> 0 : &quot;could not be parsed or opened.&quot; );</span>
+<span class="lineNum"> 200 </span> : }
+<span class="lineNum"> 201 </span> :
+<span class="lineNum"> 202 </span><span class="lineCov"> 20 : m_cache = new pkgCache( m, true );</span>
+<span class="lineNum"> 203 </span><span class="lineCov"> 40 : m_policy = new pkgPolicy( m_cache );</span>
+<span class="lineNum"> 204 </span><span class="lineCov"> 40 : if ( ReadPinFile( *m_policy ) == false )</span>
+<span class="lineNum"> 205 </span><span class="lineNoCov"> 0 : throw wibble::exception::System( &quot;error reading pin file&quot; );</span>
+<span class="lineNum"> 206 </span><span class="lineCov"> 20 : m_progress-&gt;Done();</span>
+<span class="lineNum"> 207 </span><span class="lineCov"> 20 : }</span>
+<span class="lineNum"> 208 </span> :
+<span class="lineNum"> 209 </span><span class="lineCov"> 74 : void invalidate() {</span>
+<span class="lineNum"> 210 </span><span class="lineCov"> 74 : if ( _config-&gt;FindB(&quot;Initialized&quot;) ) {</span>
+<span class="lineNum"> 211 </span><span class="lineCov"> 74 : _system-&gt;UnLock();</span>
+<span class="lineNum"> 212 </span> : }
+<span class="lineNum"> 213 </span> :
+<span class="lineNum"> 214 </span><span class="lineCov"> 74 : delete m_state;</span>
+<span class="lineNum"> 215 </span><span class="lineCov"> 74 : m_state = 0;</span>
+<span class="lineNum"> 216 </span><span class="lineCov"> 74 : delete m_policy;</span>
+<span class="lineNum"> 217 </span><span class="lineCov"> 74 : m_policy = 0;</span>
+<span class="lineNum"> 218 </span><span class="lineCov"> 74 : delete m_cache;</span>
+<span class="lineNum"> 219 </span><span class="lineCov"> 74 : m_cache = 0;</span>
+<span class="lineNum"> 220 </span><span class="lineCov"> 74 : }</span>
+<span class="lineNum"> 221 </span> :
+<span class="lineNum"> 222 </span> : pkgCache::VerIterator anyVersion( pkgCache::PkgIterator pi ) {
+<span class="lineNum"> 223 </span> : if ( pi.end() ) return pkgCache::VerIterator();
+<span class="lineNum"> 224 </span> : return pi.VersionList();
+<span class="lineNum"> 225 </span> : }
+<span class="lineNum"> 226 </span> :
+<span class="lineNum"> 227 </span><span class="lineCov"> 5 : Token candidateVersion( Token p ) {</span>
+<span class="lineNum"> 228 </span><span class="lineCov"> 5 : pkgCache::PkgIterator pi = cache().FindPkg( p.package() );</span>
+<span class="lineNum"> 229 </span><span class="lineCov"> 6 : if ( pi.end() ) return Token();</span>
+<span class="lineNum"> 230 </span><span class="lineCov"> 4 : pkgCache::VerIterator vi = policy().GetCandidateVer( pi );</span>
+<span class="lineNum"> 231 </span><span class="lineCov"> 4 : if ( vi.end() ) return Token();</span>
+<span class="lineNum"> 232 </span> :
+<span class="lineNum"> 233 </span><span class="lineCov"> 4 : Token t; t._id = p.package() + &quot;_&quot; + vi.VerStr();</span>
+<span class="lineNum"> 234 </span><span class="lineCov"> 4 : return t;</span>
+<span class="lineNum"> 235 </span> : }
+<span class="lineNum"> 236 </span> :
+<span class="lineNum"> 237 </span><span class="lineCov"> 1432 : pkgCache::VerIterator candidateVersion( pkgCache::PkgIterator pi ) {</span>
+<span class="lineNum"> 238 </span><span class="lineCov"> 1432 : if ( pi.end() ) return pkgCache::VerIterator();</span>
+<span class="lineNum"> 239 </span><span class="lineCov"> 1432 : pkgCache::VerIterator vi = policy().GetCandidateVer( pi );</span>
+<span class="lineNum"> 240 </span><span class="lineCov"> 1432 : if ( vi.end() ) return pkgCache::VerIterator();</span>
+<span class="lineNum"> 241 </span><span class="lineCov"> 1432 : return vi;</span>
+<span class="lineNum"> 242 </span> : }
+<span class="lineNum"> 243 </span> :
+<span class="lineNum"> 244 </span><span class="lineCov"> 1432 : pkgCache::VerIterator installedVersion( pkgCache::PkgIterator pi ) {</span>
+<span class="lineNum"> 245 </span><span class="lineCov"> 1432 : if ( pi.end() ) return pkgCache::VerIterator();</span>
+<span class="lineNum"> 246 </span> : pkgCache::VerIterator vi = pkgCache::VerIterator( cache(),
+<span class="lineNum"> 247 </span><span class="lineCov"> 1432 : cache().VerP + pi-&gt;CurrentVer );</span>
+<span class="lineNum"> 248 </span><span class="lineCov"> 1432 : if ( vi.end() ) return pkgCache::VerIterator();</span>
+<span class="lineNum"> 249 </span><span class="lineCov"> 1432 : return vi;</span>
+<span class="lineNum"> 250 </span> : }
+<span class="lineNum"> 251 </span> :
+<span class="lineNum"> 252 </span><span class="lineCov"> 27 : pkgCache::PkgIterator lookupPackage( Token t ) {</span>
+<span class="lineNum"> 253 </span><span class="lineCov"> 27 : return cache().FindPkg( t.package() );</span>
+<span class="lineNum"> 254 </span> : }
+<span class="lineNum"> 255 </span> :
+<span class="lineNum"> 256 </span><span class="lineCov"> 5 : pkgCache::VerIterator lookupVersion( Token t ) {</span>
+<span class="lineNum"> 257 </span><span class="lineCov"> 5 : if ( !t.hasVersion() )</span>
+<span class="lineNum"> 258 </span><span class="lineCov"> 5 : t = candidateVersion( t );</span>
+<span class="lineNum"> 259 </span><span class="lineCov"> 5 : pkgCache::PkgIterator pi = lookupPackage( t );</span>
+<span class="lineNum"> 260 </span><span class="lineCov"> 5 : if ( pi.end() )</span>
+<span class="lineNum"> 261 </span><span class="lineCov"> 1 : return pkgCache::VerIterator();</span>
+<span class="lineNum"> 262 </span><span class="lineCov"> 4 : for (pkgCache::VerIterator vi = pi.VersionList(); !vi.end(); ++vi)</span>
+<span class="lineNum"> 263 </span><span class="lineCov"> 4 : if ( t.version() == vi.VerStr() )</span>
+<span class="lineNum"> 264 </span><span class="lineCov"> 4 : return vi;</span>
+<span class="lineNum"> 265 </span><span class="lineNoCov"> 0 : return pkgCache::VerIterator();</span>
+<span class="lineNum"> 266 </span> : }
+<span class="lineNum"> 267 </span> :
+<span class="lineNum"> 268 </span> : static pkgCache::VerFileIterator lookupVersionFile(
+<span class="lineNum"> 269 </span><span class="lineCov"> 5 : pkgCache::VerIterator vi )</span>
+<span class="lineNum"> 270 </span> : {
+<span class="lineNum"> 271 </span><span class="lineCov"> 5 : if ( vi.end() )</span>
+<span class="lineNum"> 272 </span><span class="lineCov"> 1 : return pkgCache::VerFileIterator();</span>
+<span class="lineNum"> 273 </span><span class="lineCov"> 4 : pkgCache::VerFileIterator vfi = vi.FileList();</span>
+<span class="lineNum"> 274 </span><span class="lineCov"> 4 : for ( ; !vfi.end(); vfi++ )</span>
+<span class="lineNum"> 275 </span><span class="lineCov"> 4 : if ( ( vfi.File()-&gt;Flags &amp; pkgCache::Flag::NotSource ) == 0)</span>
+<span class="lineNum"> 276 </span><span class="lineCov"> 4 : break;</span>
+<span class="lineNum"> 277 </span><span class="lineCov"> 4 : if ( vfi.end() )</span>
+<span class="lineNum"> 278 </span><span class="lineNoCov"> 0 : vfi = vi.FileList();</span>
+<span class="lineNum"> 279 </span><span class="lineCov"> 4 : return vfi;</span>
+<span class="lineNum"> 280 </span> : }
+<span class="lineNum"> 281 </span> :
+<span class="lineNum"> 282 </span><span class="lineNoCov"> 0 : PackageState invalidState() {</span>
+<span class="lineNum"> 283 </span><span class="lineNoCov"> 0 : return PackageState( PackageState::NowBroken | PackageState::Keep );</span>
+<span class="lineNum"> 284 </span> : }
+<span class="lineNum"> 285 </span> :
+<span class="lineNum"> 286 </span><span class="lineCov"> 3784 : PackageState packageState( pkgCache::PkgIterator P )</span>
+<span class="lineNum"> 287 </span> : {
+<span class="lineNum"> 288 </span><span class="lineCov"> 3784 : PackageState s = 0;</span>
+<span class="lineNum"> 289 </span><span class="lineCov"> 3784 : if ( P.end() )</span>
+<span class="lineNum"> 290 </span><span class="lineNoCov"> 0 : return invalidState();</span>
+<span class="lineNum"> 291 </span><span class="lineCov"> 3784 : if ( ! ( P-&gt;CurrentState == pkgCache::State::ConfigFiles</span>
+<span class="lineNum"> 292 </span> : || P-&gt;CurrentState == pkgCache::State::NotInstalled ) )
+<span class="lineNum"> 293 </span><span class="lineCov"> 1432 : s |= PackageState::Installed;</span>
+<span class="lineNum"> 294 </span><span class="lineCov"> 3784 : if ( s &amp; PackageState::Installed &amp;&amp;</span>
+<span class="lineNum"> 295 </span> : candidateVersion( P ) != installedVersion( P ) )
+<span class="lineNum"> 296 </span><span class="lineCov"> 1 : s |= PackageState::Upgradable;</span>
+<span class="lineNum"> 297 </span><span class="lineCov"> 3784 : pkgDepCache::StateCache S = state()[ P ];</span>
+<span class="lineNum"> 298 </span><span class="lineCov"> 3784 : if ( S.Install() )</span>
+<span class="lineNum"> 299 </span><span class="lineCov"> 3 : s |= PackageState::Install;</span>
+<span class="lineNum"> 300 </span><span class="lineCov"> 3784 : if ( ( S.iFlags &amp; pkgDepCache::ReInstall )</span>
+<span class="lineNum"> 301 </span> : == pkgDepCache::ReInstall )
+<span class="lineNum"> 302 </span><span class="lineNoCov"> 0 : s |= PackageState::ReInstall;</span>
+<span class="lineNum"> 303 </span><span class="lineCov"> 3784 : if ( S.Keep() )</span>
+<span class="lineNum"> 304 </span><span class="lineCov"> 3780 : s |= PackageState::Keep;</span>
+<span class="lineNum"> 305 </span><span class="lineCov"> 3784 : if ( S.Delete() )</span>
+<span class="lineNum"> 306 </span><span class="lineCov"> 1 : s |= PackageState::Remove;</span>
+<span class="lineNum"> 307 </span><span class="lineCov"> 3784 : if ( ( S.iFlags &amp; pkgDepCache::Purge ) == pkgDepCache::Purge )</span>
+<span class="lineNum"> 308 </span><span class="lineNoCov"> 0 : s |= PackageState::Purge;</span>
+<span class="lineNum"> 309 </span><span class="lineCov"> 3784 : if ( S.NowBroken() )</span>
+<span class="lineNum"> 310 </span><span class="lineCov"> 1 : s |= PackageState::NowBroken;</span>
+<span class="lineNum"> 311 </span><span class="lineCov"> 3784 : if ( S.InstBroken() )</span>
+<span class="lineNum"> 312 </span><span class="lineNoCov"> 0 : s |= PackageState::WillBreak;</span>
+<span class="lineNum"> 313 </span><span class="lineCov"> 3784 : if ( P-&gt;SelectedState == pkgCache::State::Hold )</span>
+<span class="lineNum"> 314 </span><span class="lineNoCov"> 0 : s |= PackageState::Hold;</span>
+<span class="lineNum"> 315 </span><span class="lineCov"> 3784 : return s;</span>
+<span class="lineNum"> 316 </span> : }
+<span class="lineNum"> 317 </span> :
+<span class="lineNum"> 318 </span><span class="lineCov"> 1 : PackageState packageState( Token t ) {</span>
+<span class="lineNum"> 319 </span><span class="lineCov"> 1 : t = validate( t );</span>
+<span class="lineNum"> 320 </span><span class="lineCov"> 1 : if ( t.valid() )</span>
+<span class="lineNum"> 321 </span><span class="lineCov"> 1 : return packageState( lookupPackage( t ) );</span>
+<span class="lineNum"> 322 </span><span class="lineNoCov"> 0 : return invalidState();</span>
+<span class="lineNum"> 323 </span> : }
+<span class="lineNum"> 324 </span> :
+<span class="lineNum"> 325 </span><span class="lineCov"> 4 : Token validate( Token t ) {</span>
+<span class="lineNum"> 326 </span><span class="lineCov"> 4 : if ( t.hasVersion() )</span>
+<span class="lineNum"> 327 </span><span class="lineNoCov"> 0 : return lookupVersion( t ).end() ? Token() : t;</span>
+<span class="lineNum"> 328 </span><span class="lineCov"> 4 : return lookupPackage( t ).end() ? Token() : t;</span>
+<span class="lineNum"> 329 </span> : }
+<span class="lineNum"> 330 </span> :
+<span class="lineNum"> 331 </span><span class="lineCov"> 73 : ~AptDatabase() {</span>
+<span class="lineNum"> 332 </span><span class="lineCov"> 73 : invalidate();</span>
+<span class="lineNum"> 333 </span><span class="lineCov"> 73 : }</span>
+<span class="lineNum"> 334 </span> :
+<span class="lineNum"> 335 </span> : protected:
+<span class="lineNum"> 336 </span> : pkgCache *m_cache;
+<span class="lineNum"> 337 </span> : pkgDepCache *m_state;
+<span class="lineNum"> 338 </span> : pkgPolicy *m_policy;
+<span class="lineNum"> 339 </span> : };
+<span class="lineNum"> 340 </span> :
+<span class="lineNum"> 341 </span> : template&lt; typename Internal &gt;
+<span class="lineNum"> 342 </span> : struct AptInternalList {
+<span class="lineNum"> 343 </span> : Internal m_head;
+<span class="lineNum"> 344 </span> : typedef Internal Type;
+<span class="lineNum"> 345 </span><span class="lineCov"> 11331 : AptInternalList tail() const {</span>
+<span class="lineNum"> 346 </span><span class="lineCov"> 11331 : AptInternalList t = *this;</span>
+<span class="lineNum"> 347 </span><span class="lineCov"> 11331 : t.m_head++;</span>
+<span class="lineNum"> 348 </span> : return t;
+<span class="lineNum"> 349 </span> : }
+<span class="lineNum"> 350 </span><span class="lineCov"> 7554 : const Internal &amp;head() const { return m_head; }</span>
+<span class="lineNum"> 351 </span><span class="lineCov"> 3781 : Internal &amp;head() { return m_head; }</span>
+<span class="lineNum"> 352 </span><span class="lineCov"> 11334 : bool empty() const { return m_head.end(); }</span>
+<span class="lineNum"> 353 </span><span class="lineCov"> 3 : AptInternalList( Internal head ) : m_head( head ) {}</span>
+<span class="lineNum"> 354 </span> : AptInternalList() {}
+<span class="lineNum"> 355 </span> : };
+<span class="lineNum"> 356 </span> :
+<span class="lineNum"> 357 </span> : namespace version {
+<span class="lineNum"> 358 </span> :
+<span class="lineNum"> 359 </span> : typedef enum { Package, VersionString, Section, Architecture,
+<span class="lineNum"> 360 </span> : Depends, Recommends, Record } PropertyId;
+<span class="lineNum"> 361 </span> :
+<span class="lineNum"> 362 </span> : typedef pkgCache::VerIterator Internal;
+<span class="lineNum"> 363 </span> : template&lt; PropertyId &gt; struct PropertyType {};
+<span class="lineNum"> 364 </span> :
+<span class="lineNum"> 365 </span> : }
+<span class="lineNum"> 366 </span> :
+<span class="lineNum"> 367 </span> : namespace package {
+<span class="lineNum"> 368 </span> :
+<span class="lineNum"> 369 </span> : typedef enum { Name, Versions, AnyVersion, State, CandidateVersion,
+<span class="lineNum"> 370 </span> : InstalledVersion } PropertyId;
+<span class="lineNum"> 371 </span> : typedef pkgCache::PkgIterator Internal;
+<span class="lineNum"> 372 </span> : template&lt; PropertyId &gt; struct PropertyType {};
+<span class="lineNum"> 373 </span> :
+<span class="lineNum"> 374 </span> : struct VersionList {
+<span class="lineNum"> 375 </span> : version::Internal m_head;
+<span class="lineNum"> 376 </span> : VersionList tail() const;
+<span class="lineNum"> 377 </span> : const version::Internal &amp;head() const { return m_head; }
+<span class="lineNum"> 378 </span> : version::Internal &amp;head() { return m_head; }
+<span class="lineNum"> 379 </span> : };
+<span class="lineNum"> 380 </span> :
+<span class="lineNum"> 381 </span> : typedef AptInternalList&lt; Internal &gt; InternalList;
+<span class="lineNum"> 382 </span> :
+<span class="lineNum"> 383 </span> : }
+<span class="lineNum"> 384 </span> :
+<span class="lineNum"> 385 </span> : namespace record {
+<span class="lineNum"> 386 </span> :
+<span class="lineNum"> 387 </span> : typedef enum { Record, Name, Priority, Section, InstalledSize, Maintainer,
+<span class="lineNum"> 388 </span> : Architecture, SourcePackage, Version, Description,
+<span class="lineNum"> 389 </span> : ShortDescription, LongDescription, PackageSize } PropertyId;
+<span class="lineNum"> 390 </span> :
+<span class="lineNum"> 391 </span> : extern const char *fields[];
+<span class="lineNum"> 392 </span> :
+<span class="lineNum"> 393 </span> : typedef pkgCache::VerFileIterator Internal;
+<span class="lineNum"> 394 </span> :
+<span class="lineNum"> 395 </span> : template&lt; PropertyId &gt; struct PropertyType {
+<span class="lineNum"> 396 </span> : typedef std::string T;
+<span class="lineNum"> 397 </span> : };
+<span class="lineNum"> 398 </span> :
+<span class="lineNum"> 399 </span> : }
+<span class="lineNum"> 400 </span> : }
+<span class="lineNum"> 401 </span> : }
+<span class="lineNum"> 402 </span> :
+<span class="lineNum"> 403 </span> : #include &lt;ept/core/apt/package.h&gt;
+<span class="lineNum"> 404 </span> : #include &lt;ept/core/apt/version.h&gt;
+<span class="lineNum"> 405 </span> : #include &lt;ept/core/apt/record.h&gt;
+<span class="lineNum"> 406 </span> :
+<span class="lineNum"> 407 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/core/apt.test.h.gcov.html b/rep/ept/core/apt.test.h.gcov.html
new file mode 100644
index 0000000..8586911
--- /dev/null
+++ b/rep/ept/core/apt.test.h.gcov.html
@@ -0,0 +1,162 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/core/apt.test.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/core</a> - apt.test.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">60</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">60</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- C++ -*-
+<span class="lineNum"> 2 </span> : #include &lt;ept/config.h&gt;
+<span class="lineNum"> 3 </span> : #include &lt;ept/core/apt.h&gt;
+<span class="lineNum"> 4 </span> : #include &lt;ept/core/list.h&gt;
+<span class="lineNum"> 5 </span> : #include &lt;ept/test.h&gt;
+<span class="lineNum"> 6 </span> :
+<span class="lineNum"> 7 </span> : using namespace ept::core;
+<span class="lineNum"> 8 </span> :
+<span class="lineNum"> 9 </span> : struct TestCoreApt : AptTestEnvironment
+<span class="lineNum"> 10 </span><span class="lineCov"> 12 : {</span>
+<span class="lineNum"> 11 </span> : package::Source pkgs;
+<span class="lineNum"> 12 </span> : version::Source vers;
+<span class="lineNum"> 13 </span> : ept::Token t;
+<span class="lineNum"> 14 </span> :
+<span class="lineNum"> 15 </span><span class="lineCov"> 12 : TestCoreApt() : pkgs( db ), vers( db ) {</span>
+<span class="lineNum"> 16 </span><span class="lineCov"> 12 : t._id = &quot;sp&quot;;</span>
+<span class="lineNum"> 17 </span><span class="lineCov"> 12 : }</span>
+<span class="lineNum"> 18 </span> :
+<span class="lineNum"> 19 </span><span class="lineCov"> 1 : Test token() {</span>
+<span class="lineNum"> 20 </span><span class="lineCov"> 1 : assert_eq( t.package(), &quot;sp&quot; );</span>
+<span class="lineNum"> 21 </span><span class="lineCov"> 2 : assert_eq( t.version(), &quot;&quot; );</span>
+<span class="lineNum"> 22 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span><span class="lineCov"> 1 : Test tokenVersion() {</span>
+<span class="lineNum"> 25 </span><span class="lineCov"> 1 : ept::Token t2;</span>
+<span class="lineNum"> 26 </span><span class="lineCov"> 1 : t2._id = &quot;libwibble-dev_0.1.10&quot;;</span>
+<span class="lineNum"> 27 </span><span class="lineCov"> 1 : assert_eq( t2.package(), &quot;libwibble-dev&quot; );</span>
+<span class="lineNum"> 28 </span><span class="lineCov"> 1 : assert_eq( t2.version(), &quot;0.1.10&quot; );</span>
+<span class="lineNum"> 29 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span><span class="lineCov"> 1 : Test packageName() {</span>
+<span class="lineNum"> 32 </span><span class="lineCov"> 1 : assert_eq( t.package(), pkgs.get&lt; package::Name &gt;( t ) );</span>
+<span class="lineNum"> 33 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : template&lt; typename List &gt;
+<span class="lineNum"> 36 </span><span class="lineCov"> 1 : void checkPackageNameList( List l ) {</span>
+<span class="lineNum"> 37 </span><span class="lineCov"> 3779 : while ( !l.empty() ) {</span>
+<span class="lineNum"> 38 </span><span class="lineCov"> 3777 : assert_eq( l.token().package(), l.property() );</span>
+<span class="lineNum"> 39 </span><span class="lineCov"> 3777 : l = l.tail();</span>
+<span class="lineNum"> 40 </span> : }
+<span class="lineNum"> 41 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : template&lt; typename List &gt;
+<span class="lineNum"> 44 </span><span class="lineCov"> 1 : void checkVersionPackageList( List l ) {</span>
+<span class="lineNum"> 45 </span><span class="lineCov"> 1810 : while ( !l.empty() ) {</span>
+<span class="lineNum"> 46 </span><span class="lineCov"> 1808 : assert_eq( l.property().package(), l.token().package() );</span>
+<span class="lineNum"> 47 </span><span class="lineCov"> 3616 : assert_eq( l.property().version(), &quot;&quot; );</span>
+<span class="lineNum"> 48 </span><span class="lineCov"> 1808 : l = l.tail();</span>
+<span class="lineNum"> 49 </span> : }
+<span class="lineNum"> 50 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 51 </span> :
+<span class="lineNum"> 52 </span><span class="lineCov"> 1 : Test packageCount() {</span>
+<span class="lineNum"> 53 </span> : assert_eq( list::count( pkgs.list&lt; package::Name &gt;() ),
+<span class="lineNum"> 54 </span><span class="lineCov"> 1 : 3777 );</span>
+<span class="lineNum"> 55 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span><span class="lineCov"> 1 : Test packageNameList() {</span>
+<span class="lineNum"> 58 </span><span class="lineCov"> 1 : checkPackageNameList( pkgs.list&lt; package::Name &gt;() );</span>
+<span class="lineNum"> 59 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 60 </span> :
+<span class="lineNum"> 61 </span><span class="lineCov"> 1 : Test versionCount() {</span>
+<span class="lineNum"> 62 </span> : assert_eq( list::count( vers.list&lt; version::Package &gt;() ),
+<span class="lineNum"> 63 </span><span class="lineCov"> 1 : 1808 );</span>
+<span class="lineNum"> 64 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span><span class="lineCov"> 1 : Test versionPackage() {</span>
+<span class="lineNum"> 67 </span><span class="lineCov"> 1 : checkVersionPackageList( vers.list&lt; version::Package &gt;() );</span>
+<span class="lineNum"> 68 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 69 </span> :
+<span class="lineNum"> 70 </span><span class="lineCov"> 1 : Test validate() {</span>
+<span class="lineNum"> 71 </span><span class="lineCov"> 1 : assert_eq( t, db.validate( t ) );</span>
+<span class="lineNum"> 72 </span> : assert_neq( ept::Token( &quot;libfoobar&quot; ),
+<span class="lineNum"> 73 </span><span class="lineCov"> 2 : db.validate( ept::Token( &quot;libfooar&quot; ) ) );</span>
+<span class="lineNum"> 74 </span><span class="lineCov"> 2 : assert_eq( ept::Token(), db.validate( ept::Token( &quot;libfoobar&quot; ) ) );</span>
+<span class="lineNum"> 75 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 76 </span> :
+<span class="lineNum"> 77 </span><span class="lineCov"> 1 : Test packageState() {</span>
+<span class="lineNum"> 78 </span><span class="lineCov"> 1 : assert( db.packageState( t ) &amp; PackageState::Keep );</span>
+<span class="lineNum"> 79 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span><span class="lineCov"> 1 : Test packageState2() {</span>
+<span class="lineNum"> 82 </span><span class="lineCov"> 1 : assert( pkgs.get&lt; package::State &gt;( t ) &amp; PackageState::Keep );</span>
+<span class="lineNum"> 83 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 84 </span> :
+<span class="lineNum"> 85 </span><span class="lineCov"> 1 : Test exists() {</span>
+<span class="lineNum"> 86 </span><span class="lineCov"> 1 : assert( pkgs.exists( t ) );</span>
+<span class="lineNum"> 87 </span><span class="lineCov"> 2 : assert( !pkgs.exists( ept::Token( &quot;nonexistent-package&quot; ) ) );</span>
+<span class="lineNum"> 88 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 89 </span> :
+<span class="lineNum"> 90 </span><span class="lineCov"> 1 : Test invalidate() {</span>
+<span class="lineNum"> 91 </span><span class="lineCov"> 1 : assert( pkgs.exists( t ) );</span>
+<span class="lineNum"> 92 </span><span class="lineCov"> 1 : db.invalidate();</span>
+<span class="lineNum"> 93 </span><span class="lineCov"> 2 : assert( pkgs.exists( t ) );</span>
+<span class="lineNum"> 94 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 95 </span> : };
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/core/apt/action.h.gcov.html b/rep/ept/core/apt/action.h.gcov.html
new file mode 100644
index 0000000..08b2810
--- /dev/null
+++ b/rep/ept/core/apt/action.h.gcov.html
@@ -0,0 +1,202 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/core/apt/action.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/core/apt</a> - action.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">48</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">85.4 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">41</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : #include &lt;string&gt;
+<span class="lineNum"> 4 </span> : #include &lt;ept/token.h&gt;
+<span class="lineNum"> 5 </span> : #include &lt;ept/core/apt.h&gt;
+<span class="lineNum"> 6 </span> : #include &lt;apt-pkg/algorithms.h&gt;
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : #ifndef EPT_APT_ACTION_H
+<span class="lineNum"> 9 </span> : #define EPT_APT_ACTION_H
+<span class="lineNum"> 10 </span> :
+<span class="lineNum"> 11 </span> : namespace ept {
+<span class="lineNum"> 12 </span> : namespace core {
+<span class="lineNum"> 13 </span> : namespace package {
+<span class="lineNum"> 14 </span> :
+<span class="lineNum"> 15 </span><span class="lineCov"> 13 : struct Action {</span>
+<span class="lineNum"> 16 </span> : enum Type { Install, ReInstall, Remove, Keep, Purge, SystemUpgrade };
+<span class="lineNum"> 17 </span> : Token m_token;
+<span class="lineNum"> 18 </span> : Type m_type;
+<span class="lineNum"> 19 </span> :
+<span class="lineNum"> 20 </span><span class="lineCov"> 4 : Token token() { return m_token; }</span>
+<span class="lineNum"> 21 </span> : Type type() { return m_type; }
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span><span class="lineCov"> 4 : void apply( package::Source &amp;pkgs )</span>
+<span class="lineNum"> 24 </span> : {
+<span class="lineNum"> 25 </span><span class="lineCov"> 4 : Type a = m_type;</span>
+<span class="lineNum"> 26 </span><span class="lineCov"> 4 : pkgDepCache &amp;dc = pkgs.db().state();</span>
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span><span class="lineCov"> 4 : if ( a == SystemUpgrade ) {</span>
+<span class="lineNum"> 29 </span><span class="lineNoCov"> 0 : pkgDistUpgrade( dc );</span>
+<span class="lineNum"> 30 </span> : } else {
+<span class="lineNum"> 31 </span><span class="lineCov"> 4 : if ( !pkgs.exists( m_token ) )</span>
+<span class="lineNum"> 32 </span><span class="lineNoCov"> 0 : return;</span>
+<span class="lineNum"> 33 </span><span class="lineCov"> 4 : pkgCache::PkgIterator p = pkgs.lookupToken( m_token );</span>
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span><span class="lineCov"> 4 : pkgProblemResolver fix( &amp;dc );</span>
+<span class="lineNum"> 36 </span><span class="lineCov"> 8 : if ( a == Install || a == ReInstall ) {</span>
+<span class="lineNum"> 37 </span><span class="lineCov"> 2 : fix.Clear( p );</span>
+<span class="lineNum"> 38 </span><span class="lineCov"> 2 : fix.Protect( p );</span>
+<span class="lineNum"> 39 </span><span class="lineCov"> 2 : dc.MarkInstall( p, true );</span>
+<span class="lineNum"> 40 </span><span class="lineCov"> 2 : fix.InstallProtect();</span>
+<span class="lineNum"> 41 </span><span class="lineCov"> 2 : if ( a == ReInstall )</span>
+<span class="lineNum"> 42 </span><span class="lineNoCov"> 0 : dc.SetReInstall( p, true );</span>
+<span class="lineNum"> 43 </span><span class="lineCov"> 2 : } else if ( a == Remove || a == Purge ) {</span>
+<span class="lineNum"> 44 </span><span class="lineNoCov"> 0 : fix.Clear( p );</span>
+<span class="lineNum"> 45 </span><span class="lineNoCov"> 0 : fix.Protect( p );</span>
+<span class="lineNum"> 46 </span><span class="lineNoCov"> 0 : fix.Remove( p );</span>
+<span class="lineNum"> 47 </span><span class="lineNoCov"> 0 : dc.MarkDelete( p, a == Purge ? true : false );</span>
+<span class="lineNum"> 48 </span><span class="lineCov"> 2 : } else if ( a == Keep ) {</span>
+<span class="lineNum"> 49 </span><span class="lineCov"> 2 : fix.Clear( p );</span>
+<span class="lineNum"> 50 </span><span class="lineCov"> 2 : fix.Protect( p );</span>
+<span class="lineNum"> 51 </span><span class="lineCov"> 2 : dc.MarkKeep( p, true );</span>
+<span class="lineNum"> 52 </span> : }
+<span class="lineNum"> 53 </span><span class="lineCov"> 4 : fix.Resolve( true );</span>
+<span class="lineNum"> 54 </span> : }
+<span class="lineNum"> 55 </span> : }
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : bool redundant( package::Source &amp;pkgs ) {
+<span class="lineNum"> 58 </span> : if ( m_type == SystemUpgrade ) {
+<span class="lineNum"> 59 </span> : // check whether we have any upgradable packages
+<span class="lineNum"> 60 </span> : return false;
+<span class="lineNum"> 61 </span> : }
+<span class="lineNum"> 62 </span> : if ( !pkgs.exists( m_token ) )
+<span class="lineNum"> 63 </span> : return true;
+<span class="lineNum"> 64 </span> : PackageState s = pkgs.db().packageState( m_token );
+<span class="lineNum"> 65 </span> : Type a = m_type;
+<span class="lineNum"> 66 </span> : // if ( a == Keep &amp;&amp; !s.upgradable() )
+<span class="lineNum"> 67 </span> : // return true;
+<span class="lineNum"> 68 </span> : if ( ( a == Install || a == ReInstall )
+<span class="lineNum"> 69 </span> : &amp;&amp; ( !s.upgradable() &amp;&amp; s.installed() ) )
+<span class="lineNum"> 70 </span> : return true;
+<span class="lineNum"> 71 </span> : if ( ( a == Remove || a == Purge ) &amp;&amp; !s.installed() )
+<span class="lineNum"> 72 </span> : return true;
+<span class="lineNum"> 73 </span> : return false;
+<span class="lineNum"> 74 </span> : }
+<span class="lineNum"> 75 </span> :
+<span class="lineNum"> 76 </span><span class="lineCov"> 6 : Action( Token t, Type a )</span>
+<span class="lineNum"> 77 </span><span class="lineCov"> 6 : : m_token( t ), m_type( a )</span>
+<span class="lineNum"> 78 </span><span class="lineCov"> 6 : {}</span>
+<span class="lineNum"> 79 </span> : };
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span><span class="lineCov"> 2 : struct ActionList {</span>
+<span class="lineNum"> 82 </span> : typedef std::vector&lt; Action &gt; List;
+<span class="lineNum"> 83 </span> : List m_list;
+<span class="lineNum"> 84 </span> :
+<span class="lineNum"> 85 </span> : void clear() {
+<span class="lineNum"> 86 </span> : m_list.clear();
+<span class="lineNum"> 87 </span> : }
+<span class="lineNum"> 88 </span> :
+<span class="lineNum"> 89 </span><span class="lineCov"> 1 : bool empty() {</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 1 : return m_list.empty();</span>
+<span class="lineNum"> 91 </span> : }
+<span class="lineNum"> 92 </span> :
+<span class="lineNum"> 93 </span><span class="lineCov"> 3 : void add( Action a ) {</span>
+<span class="lineNum"> 94 </span><span class="lineCov"> 3 : List::iterator rm = m_list.end(), i;</span>
+<span class="lineNum"> 95 </span><span class="lineCov"> 3 : for ( i = m_list.begin(); i != m_list.end(); ++i ) {</span>
+<span class="lineNum"> 96 </span><span class="lineCov"> 2 : if ( i-&gt;token() == a.token() ) {</span>
+<span class="lineNum"> 97 </span><span class="lineCov"> 2 : rm = i;</span>
+<span class="lineNum"> 98 </span><span class="lineCov"> 2 : break;</span>
+<span class="lineNum"> 99 </span> : }
+<span class="lineNum"> 100 </span> : }
+<span class="lineNum"> 101 </span><span class="lineCov"> 3 : if ( rm != m_list.end() )</span>
+<span class="lineNum"> 102 </span><span class="lineCov"> 2 : m_list.erase( rm );</span>
+<span class="lineNum"> 103 </span> : // if ( a.type() != Action::Keep )
+<span class="lineNum"> 104 </span><span class="lineCov"> 3 : m_list.push_back( a );</span>
+<span class="lineNum"> 105 </span><span class="lineCov"> 3 : }</span>
+<span class="lineNum"> 106 </span> :
+<span class="lineNum"> 107 </span> : Action latest() {
+<span class="lineNum"> 108 </span> : return m_list.back();
+<span class="lineNum"> 109 </span> : }
+<span class="lineNum"> 110 </span> :
+<span class="lineNum"> 111 </span><span class="lineCov"> 1 : void replay( package::Source &amp;pkgs ) {</span>
+<span class="lineNum"> 112 </span><span class="lineCov"> 2 : for ( List::iterator i = m_list.begin(); i != m_list.end(); ++i ) {</span>
+<span class="lineNum"> 113 </span><span class="lineCov"> 1 : i-&gt;apply( pkgs );</span>
+<span class="lineNum"> 114 </span> : }
+<span class="lineNum"> 115 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 116 </span> :
+<span class="lineNum"> 117 </span> : void prune( package::Source &amp;pkgs ) {
+<span class="lineNum"> 118 </span> : List l;
+<span class="lineNum"> 119 </span> : std::swap( l, m_list );
+<span class="lineNum"> 120 </span> : for ( List::iterator i = m_list.begin(); i != m_list.end(); ++i ) {
+<span class="lineNum"> 121 </span> : if ( !i-&gt;redundant( pkgs ) )
+<span class="lineNum"> 122 </span> : m_list.push_back( *i );
+<span class="lineNum"> 123 </span> : }
+<span class="lineNum"> 124 </span> : /* We want to do but can't bind reference parameters.... (or
+<span class="lineNum"> 125 </span> : maybe use remove_copy_if or whatever ... ugly
+<span class="lineNum"> 126 </span> : std::remove_if( m_list.begin(), m_list.end(), std::bind2nd(
+<span class="lineNum"> 127 </span> : std::mem_fun_ref( &amp;Action::redundant ), pkgs ) ); */
+<span class="lineNum"> 128 </span> : }
+<span class="lineNum"> 129 </span> : };
+<span class="lineNum"> 130 </span> :
+<span class="lineNum"> 131 </span> : }
+<span class="lineNum"> 132 </span> : }
+<span class="lineNum"> 133 </span> : }
+<span class="lineNum"> 134 </span> :
+<span class="lineNum"> 135 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/core/apt/action.test.h.gcov.html b/rep/ept/core/apt/action.test.h.gcov.html
new file mode 100644
index 0000000..86e5fcc
--- /dev/null
+++ b/rep/ept/core/apt/action.test.h.gcov.html
@@ -0,0 +1,108 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/core/apt/action.test.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/core/apt</a> - action.test.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">29</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">29</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- C++ -*-
+<span class="lineNum"> 2 </span> : #include &lt;ept/core/apt/action.h&gt;
+<span class="lineNum"> 3 </span> : #include &lt;ept/test.h&gt;
+<span class="lineNum"> 4 </span> :
+<span class="lineNum"> 5 </span> : using namespace ept::core;
+<span class="lineNum"> 6 </span> :
+<span class="lineNum"> 7 </span> : struct TestAptAction : AptTestEnvironment
+<span class="lineNum"> 8 </span><span class="lineCov"> 3 : {</span>
+<span class="lineNum"> 9 </span> : package::Source pkgs;
+<span class="lineNum"> 10 </span><span class="lineCov"> 3 : TestAptAction() : pkgs( db ) {}</span>
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span><span class="lineCov"> 1 : Test basic() {</span>
+<span class="lineNum"> 13 </span><span class="lineCov"> 1 : ept::Token t( &quot;sp&quot; );</span>
+<span class="lineNum"> 14 </span><span class="lineCov"> 2 : package::Action a( t, package::Action::Install );</span>
+<span class="lineNum"> 15 </span><span class="lineCov"> 1 : a.apply( pkgs );</span>
+<span class="lineNum"> 16 </span><span class="lineCov"> 1 : assert( pkgs.get&lt; package::State &gt;( t ).install() );</span>
+<span class="lineNum"> 17 </span><span class="lineCov"> 1 : a = package::Action( t, package::Action::Keep );</span>
+<span class="lineNum"> 18 </span><span class="lineCov"> 1 : a.apply( pkgs );</span>
+<span class="lineNum"> 19 </span><span class="lineCov"> 1 : assert( pkgs.get&lt; package::State &gt;( t ).keep() );</span>
+<span class="lineNum"> 20 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span><span class="lineCov"> 1 : Test revert() {</span>
+<span class="lineNum"> 23 </span><span class="lineCov"> 1 : ept::Token t( &quot;sp&quot; );</span>
+<span class="lineNum"> 24 </span><span class="lineCov"> 2 : package::Action a( t, package::Action::Install );</span>
+<span class="lineNum"> 25 </span><span class="lineCov"> 1 : a.apply( pkgs );</span>
+<span class="lineNum"> 26 </span><span class="lineCov"> 1 : assert( pkgs.get&lt; package::State &gt;( t ).install() );</span>
+<span class="lineNum"> 27 </span><span class="lineCov"> 1 : pkgs.revertStates();</span>
+<span class="lineNum"> 28 </span><span class="lineCov"> 1 : assert( pkgs.get&lt; package::State &gt;( t ).keep() );</span>
+<span class="lineNum"> 29 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span><span class="lineCov"> 1 : Test keep() {</span>
+<span class="lineNum"> 32 </span><span class="lineCov"> 1 : package::ActionList al;</span>
+<span class="lineNum"> 33 </span><span class="lineCov"> 1 : ept::Token t( &quot;sp&quot; );</span>
+<span class="lineNum"> 34 </span><span class="lineCov"> 2 : al.add( package::Action( t, package::Action::Install ) );</span>
+<span class="lineNum"> 35 </span><span class="lineCov"> 1 : assert( !al.empty() );</span>
+<span class="lineNum"> 36 </span><span class="lineCov"> 2 : al.add( package::Action( t, package::Action::Remove ) );</span>
+<span class="lineNum"> 37 </span><span class="lineCov"> 1 : al.add( package::Action( t, package::Action::Keep ) );</span>
+<span class="lineNum"> 38 </span><span class="lineCov"> 1 : al.replay( pkgs );</span>
+<span class="lineNum"> 39 </span><span class="lineCov"> 1 : assert( pkgs.get&lt; package::State &gt;( t ).keep() );</span>
+<span class="lineNum"> 40 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 41 </span> : };
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/core/apt/index.html b/rep/ept/core/apt/index.html
new file mode 100644
index 0000000..ebae680
--- /dev/null
+++ b/rep/ept/core/apt/index.html
@@ -0,0 +1,155 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/core/apt</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - ept/core/apt</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">334</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">91.9 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">307</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="action.h.gcov.html">action.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=85 height=10 alt="85.4%"><img src="../../../snow.png" width=15 height=10 alt="85.4%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">85.4&nbsp;%</td>
+ <td class="coverNumHi">41&nbsp;/&nbsp;48&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="action.test.h.gcov.html">action.test.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">29&nbsp;/&nbsp;29&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="package.h.gcov.html">package.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=94 height=10 alt="93.9%"><img src="../../../snow.png" width=6 height=10 alt="93.9%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">93.9&nbsp;%</td>
+ <td class="coverNumHi">31&nbsp;/&nbsp;33&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="record.cpp.gcov.html">record.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">1&nbsp;/&nbsp;1&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="record.h.gcov.html">record.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=86 height=10 alt="86.5%"><img src="../../../snow.png" width=14 height=10 alt="86.5%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">86.5&nbsp;%</td>
+ <td class="coverNumHi">83&nbsp;/&nbsp;96&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="record.test.h.gcov.html">record.test.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">29&nbsp;/&nbsp;29&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="recordparser.cpp.gcov.html">recordparser.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=95 height=10 alt="95.2%"><img src="../../../snow.png" width=5 height=10 alt="95.2%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">95.2&nbsp;%</td>
+ <td class="coverNumHi">59&nbsp;/&nbsp;62&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="recordparser.h.gcov.html">recordparser.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">4&nbsp;/&nbsp;4&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="version.h.gcov.html">version.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=94 height=10 alt="93.8%"><img src="../../../snow.png" width=6 height=10 alt="93.8%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">93.8&nbsp;%</td>
+ <td class="coverNumHi">30&nbsp;/&nbsp;32&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/core/apt/package.h.gcov.html b/rep/ept/core/apt/package.h.gcov.html
new file mode 100644
index 0000000..deea250
--- /dev/null
+++ b/rep/ept/core/apt/package.h.gcov.html
@@ -0,0 +1,194 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/core/apt/package.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/core/apt</a> - package.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">33</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">93.9 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">31</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : #ifndef EPT_APT_PACKAGE_H
+<span class="lineNum"> 4 </span> : #define EPT_APT_PACKAGE_H
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : namespace ept {
+<span class="lineNum"> 7 </span> : namespace core {
+<span class="lineNum"> 8 </span> : namespace package {
+<span class="lineNum"> 9 </span> :
+<span class="lineNum"> 10 </span> : struct Setup {
+<span class="lineNum"> 11 </span> : typedef ept::Token Token;
+<span class="lineNum"> 12 </span> : typedef package::Internal Internal;
+<span class="lineNum"> 13 </span> : typedef package::PropertyId PropertyId;
+<span class="lineNum"> 14 </span> : typedef package::InternalList InternalList;
+<span class="lineNum"> 15 </span> : };
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : template&lt;&gt; struct PropertyType&lt; Name &gt; { typedef std::string T; };
+<span class="lineNum"> 18 </span> : template&lt;&gt; struct PropertyType&lt; Versions &gt; { typedef VersionList T; };
+<span class="lineNum"> 19 </span> : template&lt;&gt; struct PropertyType&lt; AnyVersion &gt; { typedef Token T; };
+<span class="lineNum"> 20 </span> : template&lt;&gt; struct PropertyType&lt; State &gt; { typedef PackageState T; };
+<span class="lineNum"> 21 </span> : template&lt;&gt; struct PropertyType&lt; CandidateVersion &gt; { typedef Token T; };
+<span class="lineNum"> 22 </span> : template&lt;&gt; struct PropertyType&lt; InstalledVersion &gt; { typedef Token T; };
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : struct Source : core::Source&lt; Source, Setup, PropertyType &gt;
+<span class="lineNum"> 25 </span><span class="lineCov"> 15 : {</span>
+<span class="lineNum"> 26 </span> : AptDatabase &amp;m_db;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span><span class="lineCov"> 15 : Source( AptDatabase &amp;db ) : m_db( db ) {}</span>
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span><span class="lineCov"> 3 : InternalList listInternal() {</span>
+<span class="lineNum"> 31 </span><span class="lineCov"> 3 : return InternalList( m_db.cache().PkgBegin() );</span>
+<span class="lineNum"> 32 </span> : }
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span><span class="lineCov"> 17 : Internal lookupToken( Token t ) {</span>
+<span class="lineNum"> 35 </span><span class="lineCov"> 17 : return m_db.lookupPackage( t );</span>
+<span class="lineNum"> 36 </span> : }
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span><span class="lineCov"> 3777 : Token getToken( Internal i ) {</span>
+<span class="lineNum"> 39 </span><span class="lineCov"> 3777 : Token t;</span>
+<span class="lineNum"> 40 </span><span class="lineCov"> 3777 : t._id = i.Name();</span>
+<span class="lineNum"> 41 </span><span class="lineNoCov"> 0 : return t;</span>
+<span class="lineNum"> 42 </span> : }
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span><span class="lineCov"> 8 : bool exists( Token t ) {</span>
+<span class="lineNum"> 45 </span><span class="lineCov"> 8 : if ( t.hasVersion() )</span>
+<span class="lineNum"> 46 </span><span class="lineNoCov"> 0 : return !m_db.lookupVersion( t ).end();</span>
+<span class="lineNum"> 47 </span> : else
+<span class="lineNum"> 48 </span><span class="lineCov"> 8 : return !lookupToken( t ).end();</span>
+<span class="lineNum"> 49 </span> : }
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> : Token versionToken( pkgCache::VerIterator vi ) {
+<span class="lineNum"> 52 </span> : if ( vi.end() )
+<span class="lineNum"> 53 </span> : return Token();
+<span class="lineNum"> 54 </span> : return Token( std::string( vi.ParentPkg().Name() ) + &quot;_&quot; + vi.VerStr() );
+<span class="lineNum"> 55 </span> : }
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : template&lt; PropertyId p &gt;
+<span class="lineNum"> 58 </span> : typename PropertyType&lt; p &gt;::T getInternal( Internal );
+<span class="lineNum"> 59 </span> :
+<span class="lineNum"> 60 </span> : template&lt; typename List &gt;
+<span class="lineNum"> 61 </span><span class="lineCov"> 1 : void revertState( List l ) {</span>
+<span class="lineNum"> 62 </span><span class="lineCov"> 3779 : while ( !l.empty() ) {</span>
+<span class="lineNum"> 63 </span><span class="lineCov"> 3777 : PackageState s = getInternal&lt; State &gt;( l.head() );</span>
+<span class="lineNum"> 64 </span><span class="lineCov"> 3777 : if ( !s.keep() || s.purge() ) {</span>
+<span class="lineNum"> 65 </span><span class="lineCov"> 2 : pkgDepCache::StateCache &amp;S = db().state()[ l.head() ];</span>
+<span class="lineNum"> 66 </span><span class="lineCov"> 2 : db().state().MarkKeep( l.head(), false, false );</span>
+<span class="lineNum"> 67 </span><span class="lineCov"> 2 : S.iFlags &amp;= ~pkgDepCache::Purge;</span>
+<span class="lineNum"> 68 </span><span class="lineCov"> 2 : S.iFlags &amp;= ~pkgDepCache::ReInstall;</span>
+<span class="lineNum"> 69 </span> : }
+<span class="lineNum"> 70 </span><span class="lineCov"> 3777 : l = l.tail();</span>
+<span class="lineNum"> 71 </span> : }
+<span class="lineNum"> 72 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span><span class="lineCov"> 1 : void revertStates() {</span>
+<span class="lineNum"> 75 </span><span class="lineCov"> 1 : pkgDepCache::ActionGroup group( db().state() );</span>
+<span class="lineNum"> 76 </span><span class="lineCov"> 1 : revertState( listInternal() );</span>
+<span class="lineNum"> 77 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 78 </span> :
+<span class="lineNum"> 79 </span> : typedef ComposedList&lt; State &gt; ChangeList;
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span> : static bool isChanged( Token t, PackageState s );
+<span class="lineNum"> 82 </span> : static bool isUpgradable( Token t, PackageState s );
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span> : PropertyFilter&lt; State, __typeof( &amp;isChanged ) &gt;::T changedList() {
+<span class="lineNum"> 85 </span> : return propertyFilter&lt; State &gt;( isChanged );
+<span class="lineNum"> 86 </span> : }
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span> : PropertyFilter&lt; State, __typeof( &amp;isUpgradable ) &gt;::T upgradableList() {
+<span class="lineNum"> 89 </span> : return propertyFilter&lt; State &gt;( isUpgradable );
+<span class="lineNum"> 90 </span> : }
+<span class="lineNum"> 91 </span> :
+<span class="lineNum"> 92 </span><span class="lineCov"> 9 : AptDatabase &amp;db() { return m_db; }</span>
+<span class="lineNum"> 93 </span> : };
+<span class="lineNum"> 94 </span> :
+<span class="lineNum"> 95 </span><span class="lineCov"> 3778 : template&lt;&gt; inline std::string Source::getInternal&lt; Name &gt;( Internal i ) {</span>
+<span class="lineNum"> 96 </span><span class="lineCov"> 3778 : return i.Name();</span>
+<span class="lineNum"> 97 </span> : }
+<span class="lineNum"> 98 </span> :
+<span class="lineNum"> 99 </span><span class="lineCov"> 3783 : template&lt;&gt; inline PackageState Source::getInternal&lt; State &gt;( Internal i ) {</span>
+<span class="lineNum"> 100 </span><span class="lineCov"> 3783 : return m_db.packageState( i );</span>
+<span class="lineNum"> 101 </span> : }
+<span class="lineNum"> 102 </span> :
+<span class="lineNum"> 103 </span> : template&lt;&gt; inline Token Source::getInternal&lt; CandidateVersion &gt;( Internal i ) {
+<span class="lineNum"> 104 </span> : return versionToken( m_db.candidateVersion( i ) );
+<span class="lineNum"> 105 </span> : }
+<span class="lineNum"> 106 </span> :
+<span class="lineNum"> 107 </span> : template&lt;&gt; inline Token Source::getInternal&lt; AnyVersion &gt;( Internal i ) {
+<span class="lineNum"> 108 </span> : return versionToken( m_db.candidateVersion( i ) );
+<span class="lineNum"> 109 </span> : }
+<span class="lineNum"> 110 </span> :
+<span class="lineNum"> 111 </span> : template&lt;&gt; inline Token Source::getInternal&lt; InstalledVersion &gt;( Internal i ) {
+<span class="lineNum"> 112 </span> : return versionToken( m_db.installedVersion( i ) );
+<span class="lineNum"> 113 </span> : }
+<span class="lineNum"> 114 </span> :
+<span class="lineNum"> 115 </span> : inline bool Source::isChanged( Token, PackageState s ) {
+<span class="lineNum"> 116 </span> : return s.modify();
+<span class="lineNum"> 117 </span> : }
+<span class="lineNum"> 118 </span> :
+<span class="lineNum"> 119 </span> : inline bool Source::isUpgradable( Token, PackageState s ) {
+<span class="lineNum"> 120 </span> : return s.upgradable();
+<span class="lineNum"> 121 </span> : }
+<span class="lineNum"> 122 </span> :
+<span class="lineNum"> 123 </span> : }
+<span class="lineNum"> 124 </span> : }
+<span class="lineNum"> 125 </span> : }
+<span class="lineNum"> 126 </span> :
+<span class="lineNum"> 127 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/core/apt/record.cpp.gcov.html b/rep/ept/core/apt/record.cpp.gcov.html
new file mode 100644
index 0000000..453b7a7
--- /dev/null
+++ b/rep/ept/core/apt/record.cpp.gcov.html
@@ -0,0 +1,83 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/core/apt/record.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/core/apt</a> - record.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &lt;ept/core/apt.h&gt;
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : namespace ept {
+<span class="lineNum"> 4 </span> : namespace core {
+<span class="lineNum"> 5 </span> : namespace record {
+<span class="lineNum"> 6 </span> :
+<span class="lineNum"> 7 </span> : // needs to be kept in sync with record::PropertyId, see apt.h
+<span class="lineNum"> 8 </span> : const char *fields[] = {
+<span class="lineNum"> 9 </span> : &quot;&quot;, &quot;Package&quot;, &quot;Priority&quot;, &quot;Section&quot;, &quot;Installed-Size&quot;,
+<span class="lineNum"> 10 </span> : &quot;Maintainer&quot;, &quot;Architecture&quot;, &quot;Source&quot;, &quot;Version&quot;,
+<span class="lineNum"> 11 </span> : &quot;Description&quot;, &quot;&quot;, &quot;&quot;, &quot;Size&quot;
+<span class="lineNum"> 12 </span> : };
+<span class="lineNum"> 13 </span> :
+<span class="lineNum"> 14 </span> : }
+<span class="lineNum"> 15 </span> : }
+<span class="lineNum"> 16 </span><span class="lineCov"> 3 : }</span>
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/core/apt/record.h.gcov.html b/rep/ept/core/apt/record.h.gcov.html
new file mode 100644
index 0000000..4e0e3a4
--- /dev/null
+++ b/rep/ept/core/apt/record.h.gcov.html
@@ -0,0 +1,355 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/core/apt/record.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/core/apt</a> - record.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">96</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">86.5 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">83</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : #include &lt;ept/core/apt/recordparser.h&gt;
+<span class="lineNum"> 4 </span> :
+<span class="lineNum"> 5 </span> : #ifndef EPT_APT_RECORD_H
+<span class="lineNum"> 6 </span> : #define EPT_APT_RECORD_H
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : namespace ept {
+<span class="lineNum"> 9 </span> : namespace core {
+<span class="lineNum"> 10 </span> : namespace record {
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : struct Source;
+<span class="lineNum"> 13 </span> :
+<span class="lineNum"> 14 </span> : struct InternalList {
+<span class="lineNum"> 15 </span> : Source *m_source;
+<span class="lineNum"> 16 </span> : size_t m_idx;
+<span class="lineNum"> 17 </span> :
+<span class="lineNum"> 18 </span> : Internal head();
+<span class="lineNum"> 19 </span> : const Internal head() const;
+<span class="lineNum"> 20 </span> : bool empty() const;
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span><span class="lineCov"> 870 : InternalList tail() const {</span>
+<span class="lineNum"> 23 </span><span class="lineCov"> 870 : InternalList t = *this;</span>
+<span class="lineNum"> 24 </span><span class="lineCov"> 870 : ++ t.m_idx;</span>
+<span class="lineNum"> 25 </span> : return t;
+<span class="lineNum"> 26 </span> : }
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span><span class="lineCov"> 2 : InternalList( Source &amp;s )</span>
+<span class="lineNum"> 29 </span><span class="lineCov"> 2 : : m_source( &amp;s ), m_idx( 0 )</span>
+<span class="lineNum"> 30 </span><span class="lineCov"> 2 : {}</span>
+<span class="lineNum"> 31 </span> : };
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : struct Setup {
+<span class="lineNum"> 34 </span> : typedef ept::Token Token;
+<span class="lineNum"> 35 </span> : typedef record::Internal Internal;
+<span class="lineNum"> 36 </span> : typedef record::PropertyId PropertyId;
+<span class="lineNum"> 37 </span> : typedef record::InternalList InternalList;
+<span class="lineNum"> 38 </span> : };
+<span class="lineNum"> 39 </span> :
+<span class="lineNum"> 40 </span> : template&lt;&gt; struct PropertyType&lt; InstalledSize &gt; { typedef int T; };
+<span class="lineNum"> 41 </span> : template&lt;&gt; struct PropertyType&lt; PackageSize &gt; { typedef int T; };
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : struct Parser: RecordParser
+<span class="lineNum"> 44 </span><span class="lineCov"> 1310 : {</span>
+<span class="lineNum"> 45 </span> : bool parseBool(bool&amp; def, const std::string&amp; str) const
+<span class="lineNum"> 46 </span> : {
+<span class="lineNum"> 47 </span> : // Believe it or not, this is what apt does to interpret bool fields
+<span class="lineNum"> 48 </span> : if (str == &quot;no&quot; || str == &quot;false&quot; || str == &quot;without&quot; ||
+<span class="lineNum"> 49 </span> : str == &quot;off&quot; || str == &quot;disable&quot;)
+<span class="lineNum"> 50 </span> : return false;
+<span class="lineNum"> 51 </span> :
+<span class="lineNum"> 52 </span> : if (str == &quot;yes&quot; || str == &quot;true&quot; || str == &quot;with&quot; ||
+<span class="lineNum"> 53 </span> : str == &quot;on&quot; || str == &quot;enable&quot;)
+<span class="lineNum"> 54 </span> : return true;
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span> : return def;
+<span class="lineNum"> 57 </span> : }
+<span class="lineNum"> 58 </span> :
+<span class="lineNum"> 59 </span> : public:
+<span class="lineNum"> 60 </span> : Parser() : RecordParser() {}
+<span class="lineNum"> 61 </span><span class="lineCov"> 1310 : Parser(const std::string&amp; str) : RecordParser(str) {}</span>
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span> : template&lt; PropertyId p &gt;
+<span class="lineNum"> 64 </span> : typename PropertyType&lt; p &gt;::T parse( typename PropertyType&lt; p &gt;::T def,
+<span class="lineNum"> 65 </span> : std::string data );
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : template&lt; typename T &gt;
+<span class="lineNum"> 68 </span> : struct Default {
+<span class="lineNum"> 69 </span> : static T def;
+<span class="lineNum"> 70 </span> : };
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span> : template&lt; typename T &gt; T parse( const T &amp;def,
+<span class="lineNum"> 73 </span> : const std::string &amp;field ) const;
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span> : template&lt; PropertyId p &gt;
+<span class="lineNum"> 76 </span> : typename PropertyType&lt; p &gt;::T get(
+<span class="lineNum"> 77 </span> : const typename PropertyType&lt; p &gt;::T &amp;def
+<span class="lineNum"> 78 </span><span class="lineCov"> 1308 : = Default&lt; typename PropertyType&lt; p &gt;::T &gt;::def ) const</span>
+<span class="lineNum"> 79 </span> : {
+<span class="lineNum"> 80 </span> : return parse&lt; typename PropertyType&lt; p &gt;::T &gt;( def,
+<span class="lineNum"> 81 </span><span class="lineCov"> 1308 : lookup( fields[ p ] ) );</span>
+<span class="lineNum"> 82 </span> : }
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span> : };
+<span class="lineNum"> 85 </span> :
+<span class="lineNum"> 86 </span><span class="lineCov"> 25 : template&lt; typename T &gt; T Parser::Default&lt; T &gt;::def = T();</span>
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span> : template&lt;&gt; inline std::string Parser::get&lt; ShortDescription &gt;(
+<span class="lineNum"> 89 </span><span class="lineCov"> 2 : const std::string&amp; def ) const</span>
+<span class="lineNum"> 90 </span> : {
+<span class="lineNum"> 91 </span><span class="lineCov"> 2 : std::string str = lookup( fields[ Description ] );</span>
+<span class="lineNum"> 92 </span><span class="lineCov"> 4 : if (str == std::string())</span>
+<span class="lineNum"> 93 </span><span class="lineCov"> 1 : return def;</span>
+<span class="lineNum"> 94 </span><span class="lineCov"> 1 : size_t pos = str.find(&quot;\n&quot;);</span>
+<span class="lineNum"> 95 </span><span class="lineCov"> 1 : if (pos == std::string::npos)</span>
+<span class="lineNum"> 96 </span><span class="lineNoCov"> 0 : return str;</span>
+<span class="lineNum"> 97 </span> : else
+<span class="lineNum"> 98 </span><span class="lineCov"> 1 : return str.substr(0, pos);</span>
+<span class="lineNum"> 99 </span> : }
+<span class="lineNum"> 100 </span> :
+<span class="lineNum"> 101 </span> : template&lt;&gt; inline std::string Parser::get&lt; LongDescription &gt;(
+<span class="lineNum"> 102 </span> : const std::string&amp; def ) const
+<span class="lineNum"> 103 </span> : {
+<span class="lineNum"> 104 </span> : std::string str = lookup( fields[ Description ] );
+<span class="lineNum"> 105 </span> : if (str == std::string())
+<span class="lineNum"> 106 </span> : return def;
+<span class="lineNum"> 107 </span> : size_t pos = str.find(&quot;\n&quot;);
+<span class="lineNum"> 108 </span> : if (pos == std::string::npos)
+<span class="lineNum"> 109 </span> : return str;
+<span class="lineNum"> 110 </span> : else
+<span class="lineNum"> 111 </span> : {
+<span class="lineNum"> 112 </span> : // Trim trailing spaces
+<span class="lineNum"> 113 </span> : for (++pos; pos &lt; str.size() &amp;&amp; isspace(str[pos]); ++pos)
+<span class="lineNum"> 114 </span> : ;
+<span class="lineNum"> 115 </span> : return str.substr(pos);
+<span class="lineNum"> 116 </span> : }
+<span class="lineNum"> 117 </span> : }
+<span class="lineNum"> 118 </span> :
+<span class="lineNum"> 119 </span> : template&lt;&gt; inline std::string Parser::parse&lt; std::string &gt;(
+<span class="lineNum"> 120 </span><span class="lineCov"> 1307 : const std::string&amp; def, const std::string&amp; str) const</span>
+<span class="lineNum"> 121 </span> : {
+<span class="lineNum"> 122 </span><span class="lineCov"> 1307 : if (str == std::string())</span>
+<span class="lineNum"> 123 </span><span class="lineNoCov"> 0 : return def;</span>
+<span class="lineNum"> 124 </span><span class="lineCov"> 1307 : return str;</span>
+<span class="lineNum"> 125 </span> : }
+<span class="lineNum"> 126 </span> :
+<span class="lineNum"> 127 </span> : template&lt;&gt; inline int Parser::parse&lt; int &gt;(
+<span class="lineNum"> 128 </span><span class="lineCov"> 1 : const int&amp; def, const std::string&amp; str) const</span>
+<span class="lineNum"> 129 </span> : {
+<span class="lineNum"> 130 </span><span class="lineCov"> 1 : if (str == string())</span>
+<span class="lineNum"> 131 </span><span class="lineNoCov"> 0 : return def;</span>
+<span class="lineNum"> 132 </span><span class="lineCov"> 1 : return (size_t)strtoul(str.c_str(), NULL, 10);</span>
+<span class="lineNum"> 133 </span> : }
+<span class="lineNum"> 134 </span> :
+<span class="lineNum"> 135 </span> : struct Source : core::Source&lt; Source, Setup, PropertyType &gt;
+<span class="lineNum"> 136 </span><span class="lineCov"> 6 : {</span>
+<span class="lineNum"> 137 </span> : AptDatabase &amp;m_db;
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> : /* caching */
+<span class="lineNum"> 140 </span> : pkgCache::PkgFileIterator lastFile;
+<span class="lineNum"> 141 </span> : FileFd file;
+<span class="lineNum"> 142 </span> : size_t lastOffset;
+<span class="lineNum"> 143 </span> :
+<span class="lineNum"> 144 </span> : /* in-order retrieval of records, for InternalList */
+<span class="lineNum"> 145 </span> : typedef vector&lt; pkgCache::VerFile * &gt; VfList;
+<span class="lineNum"> 146 </span> : VfList m_vflist;
+<span class="lineNum"> 147 </span> :
+<span class="lineNum"> 148 </span><span class="lineCov"> 1742 : VfList &amp;vfList() {</span>
+<span class="lineNum"> 149 </span><span class="lineCov"> 1742 : if ( m_vflist.size() &gt; 0 )</span>
+<span class="lineNum"> 150 </span><span class="lineCov"> 1741 : return m_vflist;</span>
+<span class="lineNum"> 151 </span> :
+<span class="lineNum"> 152 </span><span class="lineCov"> 1 : m_vflist.reserve(m_db.cache().HeaderP-&gt;PackageCount + 1);</span>
+<span class="lineNum"> 153 </span> :
+<span class="lineNum"> 154 </span> : // Populate the vector of versions to print
+<span class="lineNum"> 155 </span><span class="lineCov"> 3778 : for (pkgCache::PkgIterator pi = m_db.cache().PkgBegin(); !pi.end(); ++pi)</span>
+<span class="lineNum"> 156 </span> : {
+<span class="lineNum"> 157 </span><span class="lineCov"> 3777 : if (pi-&gt;VersionList == 0)</span>
+<span class="lineNum"> 158 </span><span class="lineCov"> 1989 : continue;</span>
+<span class="lineNum"> 159 </span> :
+<span class="lineNum"> 160 </span><span class="lineCov"> 3596 : for( pkgCache::VerIterator vi = pi.VersionList(); !vi.end(); ++vi ) {</span>
+<span class="lineNum"> 161 </span> :
+<span class="lineNum"> 162 </span> : // Choose a valid file that contains the record for this version
+<span class="lineNum"> 163 </span><span class="lineCov"> 1808 : pkgCache::VerFileIterator vfi = vi.FileList();</span>
+<span class="lineNum"> 164 </span><span class="lineCov"> 3181 : for ( ; !vfi.end(); ++vfi )</span>
+<span class="lineNum"> 165 </span><span class="lineCov"> 1808 : if ((vfi.File()-&gt;Flags &amp; pkgCache::Flag::NotSource) == 0)</span>
+<span class="lineNum"> 166 </span><span class="lineCov"> 435 : break;</span>
+<span class="lineNum"> 167 </span> :
+<span class="lineNum"> 168 </span><span class="lineCov"> 1808 : if ( !vfi.end() )</span>
+<span class="lineNum"> 169 </span><span class="lineCov"> 435 : m_vflist.push_back( vfi );</span>
+<span class="lineNum"> 170 </span> : }
+<span class="lineNum"> 171 </span> : }
+<span class="lineNum"> 172 </span> :
+<span class="lineNum"> 173 </span><span class="lineCov"> 1 : sort(m_vflist.begin(), m_vflist.end(), localityCompare);</span>
+<span class="lineNum"> 174 </span><span class="lineCov"> 1 : return m_vflist;</span>
+<span class="lineNum"> 175 </span> : }
+<span class="lineNum"> 176 </span> :
+<span class="lineNum"> 177 </span><span class="lineCov"> 6 : Source( AptDatabase &amp;db ) : m_db( db ) {}</span>
+<span class="lineNum"> 178 </span> :
+<span class="lineNum"> 179 </span><span class="lineCov"> 2 : InternalList listInternal() {</span>
+<span class="lineNum"> 180 </span><span class="lineCov"> 2 : return InternalList( *this );</span>
+<span class="lineNum"> 181 </span> : }
+<span class="lineNum"> 182 </span> :
+<span class="lineNum"> 183 </span><span class="lineCov"> 5 : Internal lookupToken( Token t ) {</span>
+<span class="lineNum"> 184 </span><span class="lineCov"> 5 : return m_db.lookupVersionFile( m_db.lookupVersion( t ) );</span>
+<span class="lineNum"> 185 </span> : }
+<span class="lineNum"> 186 </span> :
+<span class="lineNum"> 187 </span> : // Sort a version list by package file locality
+<span class="lineNum"> 188 </span> : static bool localityCompare(const pkgCache::VerFile* a,
+<span class="lineNum"> 189 </span><span class="lineCov"> 4371 : const pkgCache::VerFile* b)</span>
+<span class="lineNum"> 190 </span> : {
+<span class="lineNum"> 191 </span><span class="lineCov"> 4371 : if (a == 0 &amp;&amp; b == 0)</span>
+<span class="lineNum"> 192 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 193 </span><span class="lineCov"> 4371 : if (a == 0)</span>
+<span class="lineNum"> 194 </span><span class="lineNoCov"> 0 : return true;</span>
+<span class="lineNum"> 195 </span><span class="lineCov"> 4371 : if (b == 0)</span>
+<span class="lineNum"> 196 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 197 </span> :
+<span class="lineNum"> 198 </span><span class="lineCov"> 4371 : if (a-&gt;File == b-&gt;File)</span>
+<span class="lineNum"> 199 </span><span class="lineCov"> 4371 : return a-&gt;Offset &lt; b-&gt;Offset;</span>
+<span class="lineNum"> 200 </span><span class="lineNoCov"> 0 : return a-&gt;File &lt; b-&gt;File;</span>
+<span class="lineNum"> 201 </span> : }
+<span class="lineNum"> 202 </span> :
+<span class="lineNum"> 203 </span> : void invalidate() {
+<span class="lineNum"> 204 </span> : core::Source&lt; Source, Setup, PropertyType &gt;::invalidate();
+<span class="lineNum"> 205 </span> : lastFile = pkgCache::PkgFileIterator();
+<span class="lineNum"> 206 </span> : }
+<span class="lineNum"> 207 </span> :
+<span class="lineNum"> 208 </span><span class="lineCov"> 1311 : std::string getRecord( Internal vfi ) {</span>
+<span class="lineNum"> 209 </span><span class="lineCov"> 1311 : if ( vfi.Cache() == 0 || vfi.end() )</span>
+<span class="lineNum"> 210 </span><span class="lineCov"> 1 : return &quot;&quot;;</span>
+<span class="lineNum"> 211 </span> :
+<span class="lineNum"> 212 </span><span class="lineCov"> 1310 : if ((lastFile.Cache() == 0)</span>
+<span class="lineNum"> 213 </span> : || vfi-&gt;File + m_db.cache().PkgFileP != lastFile)
+<span class="lineNum"> 214 </span> : {
+<span class="lineNum"> 215 </span> : lastFile = pkgCache::PkgFileIterator(
+<span class="lineNum"> 216 </span><span class="lineCov"> 5 : m_db.cache(), vfi-&gt;File + m_db.cache().PkgFileP);</span>
+<span class="lineNum"> 217 </span><span class="lineCov"> 5 : if (!lastFile.IsOk())</span>
+<span class="lineNum"> 218 </span> : throw wibble::exception::System(
+<span class="lineNum"> 219 </span> : std::string(&quot;Reading the&quot;
+<span class="lineNum"> 220 </span> : &quot; data record for a package from file &quot;)
+<span class="lineNum"> 221 </span><span class="lineNoCov"> 0 : + lastFile.FileName() );</span>
+<span class="lineNum"> 222 </span><span class="lineCov"> 5 : if (file.IsOpen())</span>
+<span class="lineNum"> 223 </span><span class="lineNoCov"> 0 : file.Close();</span>
+<span class="lineNum"> 224 </span><span class="lineCov"> 5 : if (!file.Open(lastFile.FileName(), FileFd::ReadOnly))</span>
+<span class="lineNum"> 225 </span> : throw wibble::exception::System( std::string(&quot;Opening file &quot;)
+<span class="lineNum"> 226 </span><span class="lineNoCov"> 0 : + lastFile.FileName() );</span>
+<span class="lineNum"> 227 </span><span class="lineCov"> 5 : lastOffset = 0;</span>
+<span class="lineNum"> 228 </span> : }
+<span class="lineNum"> 229 </span> :
+<span class="lineNum"> 230 </span> : // If we start near were we ended, avoid a seek
+<span class="lineNum"> 231 </span> : // and enlarge the read a bit
+<span class="lineNum"> 232 </span><span class="lineCov"> 1310 : size_t slack = vfi-&gt;Offset - lastOffset;</span>
+<span class="lineNum"> 233 </span><span class="lineCov"> 1310 : if ( slack &gt; 128 ) // mornfall: was 8, making it 128</span>
+<span class="lineNum"> 234 </span> : {
+<span class="lineNum"> 235 </span><span class="lineCov"> 871 : slack = 0;</span>
+<span class="lineNum"> 236 </span><span class="lineCov"> 871 : if ( !file.Seek( vfi-&gt;Offset ) )</span>
+<span class="lineNum"> 237 </span> : throw wibble::exception::System(
+<span class="lineNum"> 238 </span> : std::string(&quot;Cannot seek to package record in file &quot;)
+<span class="lineNum"> 239 </span><span class="lineNoCov"> 0 : + lastFile.FileName() );</span>
+<span class="lineNum"> 240 </span> : }
+<span class="lineNum"> 241 </span> :
+<span class="lineNum"> 242 </span><span class="lineCov"> 1310 : char buffer[vfi-&gt;Size + slack + 1];</span>
+<span class="lineNum"> 243 </span><span class="lineCov"> 1310 : if (!file.Read(buffer, vfi-&gt;Size + slack))</span>
+<span class="lineNum"> 244 </span> : throw wibble::exception::System(
+<span class="lineNum"> 245 </span> : std::string(&quot;Cannot read package &quot;
+<span class="lineNum"> 246 </span><span class="lineNoCov"> 0 : &quot;record in file &quot;) + lastFile.FileName() );</span>
+<span class="lineNum"> 247 </span> :
+<span class="lineNum"> 248 </span><span class="lineCov"> 1310 : buffer[vfi-&gt;Size + slack] = '\0';</span>
+<span class="lineNum"> 249 </span> : //cerr &lt;&lt; &quot;Data read (slack: &quot; &lt;&lt; slack &lt;&lt; &quot;)&quot; &lt;&lt; endl;
+<span class="lineNum"> 250 </span> :
+<span class="lineNum"> 251 </span><span class="lineCov"> 1310 : lastOffset = vfi-&gt;Offset + vfi-&gt;Size;</span>
+<span class="lineNum"> 252 </span> :
+<span class="lineNum"> 253 </span><span class="lineCov"> 1310 : return string(buffer+slack);</span>
+<span class="lineNum"> 254 </span> : }
+<span class="lineNum"> 255 </span> :
+<span class="lineNum"> 256 </span><span class="lineCov"> 435 : Token getToken( Internal i ) {</span>
+<span class="lineNum"> 257 </span><span class="lineCov"> 435 : Token t;</span>
+<span class="lineNum"> 258 </span><span class="lineCov"> 435 : t._id = getInternal&lt; Name &gt;( i ) + &quot;_&quot; + getInternal&lt; Version &gt;( i );</span>
+<span class="lineNum"> 259 </span><span class="lineNoCov"> 0 : return t;</span>
+<span class="lineNum"> 260 </span> : }
+<span class="lineNum"> 261 </span> :
+<span class="lineNum"> 262 </span> : template&lt; PropertyId p &gt;
+<span class="lineNum"> 263 </span><span class="lineCov"> 1310 : typename PropertyType&lt; p &gt;::T getInternal( Internal i ) {</span>
+<span class="lineNum"> 264 </span><span class="lineCov"> 1310 : Parser rec( getRecord( i ) );</span>
+<span class="lineNum"> 265 </span><span class="lineCov"> 1310 : return rec.get&lt; p &gt;();</span>
+<span class="lineNum"> 266 </span> : }
+<span class="lineNum"> 267 </span> : };
+<span class="lineNum"> 268 </span> :
+<span class="lineNum"> 269 </span><span class="lineCov"> 1 : template&lt;&gt; inline std::string Source::getInternal&lt; Record &gt;( Internal i ) {</span>
+<span class="lineNum"> 270 </span><span class="lineCov"> 1 : assert( !i.end() );</span>
+<span class="lineNum"> 271 </span><span class="lineCov"> 1 : return getRecord( i );</span>
+<span class="lineNum"> 272 </span> : }
+<span class="lineNum"> 273 </span> :
+<span class="lineNum"> 274 </span><span class="lineCov"> 870 : inline const Internal InternalList::head() const {</span>
+<span class="lineNum"> 275 </span> : return pkgCache::VerFileIterator( m_source-&gt;m_db.cache(),
+<span class="lineNum"> 276 </span><span class="lineCov"> 870 : m_source-&gt;vfList()[ m_idx ] );</span>
+<span class="lineNum"> 277 </span> : }
+<span class="lineNum"> 278 </span> :
+<span class="lineNum"> 279 </span><span class="lineCov"> 872 : inline bool InternalList::empty() const {</span>
+<span class="lineNum"> 280 </span><span class="lineCov"> 872 : return m_idx == m_source-&gt;vfList().size();</span>
+<span class="lineNum"> 281 </span> : }
+<span class="lineNum"> 282 </span> :
+<span class="lineNum"> 283 </span> :
+<span class="lineNum"> 284 </span> : }
+<span class="lineNum"> 285 </span> : }
+<span class="lineNum"> 286 </span> : }
+<span class="lineNum"> 287 </span> :
+<span class="lineNum"> 288 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/core/apt/record.test.h.gcov.html b/rep/ept/core/apt/record.test.h.gcov.html
new file mode 100644
index 0000000..afee746
--- /dev/null
+++ b/rep/ept/core/apt/record.test.h.gcov.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/core/apt/record.test.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/core/apt</a> - record.test.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">29</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">29</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- C++ -*-
+<span class="lineNum"> 2 </span> : #include &lt;ept/core/apt.h&gt;
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : #include &lt;ept/test.h&gt;
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : using namespace ept::core;
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : struct TestAptRecord : AptTestEnvironment
+<span class="lineNum"> 9 </span><span class="lineCov"> 6 : {</span>
+<span class="lineNum"> 10 </span> : record::Source recs;
+<span class="lineNum"> 11 </span> : ept::Token t;
+<span class="lineNum"> 12 </span> :
+<span class="lineNum"> 13 </span><span class="lineCov"> 6 : TestAptRecord() : recs( db ) {</span>
+<span class="lineNum"> 14 </span><span class="lineCov"> 6 : t._id = &quot;sp&quot;;</span>
+<span class="lineNum"> 15 </span><span class="lineCov"> 6 : }</span>
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span><span class="lineCov"> 1 : Test checkLookup() {</span>
+<span class="lineNum"> 18 </span><span class="lineCov"> 1 : recs.get&lt; record::Record &gt;( t );</span>
+<span class="lineNum"> 19 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span><span class="lineCov"> 1 : Test checkLookupValue() {</span>
+<span class="lineNum"> 22 </span><span class="lineCov"> 1 : assert_eq( recs.get&lt; record::Name &gt;( t ), t.package() );</span>
+<span class="lineNum"> 23 </span> : assert_eq( recs.get&lt; record::Maintainer &gt;( t ),
+<span class="lineNum"> 24 </span><span class="lineCov"> 2 : &quot;Neil Roeth &lt;neil@debian.org&gt;&quot; );</span>
+<span class="lineNum"> 25 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span><span class="lineCov"> 1 : Test checkLookupNumeric() {</span>
+<span class="lineNum"> 28 </span> : assert_eq( recs.get&lt; record::InstalledSize &gt;( t ),
+<span class="lineNum"> 29 </span><span class="lineCov"> 1 : 600 );</span>
+<span class="lineNum"> 30 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span><span class="lineCov"> 1 : Test checkShortDescription() {</span>
+<span class="lineNum"> 33 </span> : assert_eq( recs.get&lt; record::ShortDescription &gt;( t ),
+<span class="lineNum"> 34 </span><span class="lineCov"> 1 : &quot;James Clark's SGML parsing tools&quot; );</span>
+<span class="lineNum"> 35 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : template&lt; typename List &gt;
+<span class="lineNum"> 38 </span><span class="lineCov"> 1 : void checkRecordNameList( List l ) {</span>
+<span class="lineNum"> 39 </span><span class="lineCov"> 437 : while ( !l.empty() ) {</span>
+<span class="lineNum"> 40 </span><span class="lineCov"> 435 : assert_eq( l.property(), l.token().package() );</span>
+<span class="lineNum"> 41 </span><span class="lineCov"> 435 : l = l.tail();</span>
+<span class="lineNum"> 42 </span> : }
+<span class="lineNum"> 43 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span><span class="lineCov"> 1 : Test checkList() {</span>
+<span class="lineNum"> 46 </span> : // there are 435 valid records in the list file
+<span class="lineNum"> 47 </span> : assert_eq( list::count( recs.list&lt;
+<span class="lineNum"> 48 </span><span class="lineCov"> 1 : record::Name &gt;() ), 435 );</span>
+<span class="lineNum"> 49 </span><span class="lineCov"> 1 : checkRecordNameList( recs.list&lt; record::Name &gt;() );</span>
+<span class="lineNum"> 50 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 51 </span> :
+<span class="lineNum"> 52 </span><span class="lineCov"> 1 : Test nonexistent() {</span>
+<span class="lineNum"> 53 </span> : assert_eq( recs.get&lt; record::ShortDescription &gt;(
+<span class="lineNum"> 54 </span><span class="lineCov"> 1 : ept::Token( &quot;nonexistent-package&quot; ) ), &quot;&quot; );</span>
+<span class="lineNum"> 55 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 56 </span> : };
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/core/apt/recordparser.cpp.gcov.html b/rep/ept/core/apt/recordparser.cpp.gcov.html
new file mode 100644
index 0000000..de47e25
--- /dev/null
+++ b/rep/ept/core/apt/recordparser.cpp.gcov.html
@@ -0,0 +1,239 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/core/apt/recordparser.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/core/apt</a> - recordparser.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">62</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">95.2 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">59</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /** \file
+<span class="lineNum"> 2 </span> : * Parser for APT records
+<span class="lineNum"> 3 </span> : */
+<span class="lineNum"> 4 </span> :
+<span class="lineNum"> 5 </span> : /*
+<span class="lineNum"> 6 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 7 </span> : *
+<span class="lineNum"> 8 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 9 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 10 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 11 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 12 </span> : *
+<span class="lineNum"> 13 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 14 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 15 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 16 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 17 </span> : *
+<span class="lineNum"> 18 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 19 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 20 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 21 </span> : */
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : #include &lt;ept/core/apt/recordparser.h&gt;
+<span class="lineNum"> 24 </span> :
+<span class="lineNum"> 25 </span> : #include &lt;algorithm&gt;
+<span class="lineNum"> 26 </span> : #include &lt;cctype&gt;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : //#include &lt;iostream&gt;
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : using namespace std;
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : namespace ept {
+<span class="lineNum"> 33 </span> : namespace core {
+<span class="lineNum"> 34 </span> : namespace record {
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : struct rpcompare
+<span class="lineNum"> 37 </span> : {
+<span class="lineNum"> 38 </span> : const RecordParser&amp; rp;
+<span class="lineNum"> 39 </span><span class="lineCov"> 1310 : rpcompare(const RecordParser&amp; rp) : rp(rp) {}</span>
+<span class="lineNum"> 40 </span><span class="lineCov"> 89600 : bool operator()(size_t a, size_t b)</span>
+<span class="lineNum"> 41 </span> : {
+<span class="lineNum"> 42 </span><span class="lineCov"> 89600 : return rp.name(a) &lt; rp.name(b);</span>
+<span class="lineNum"> 43 </span> : }
+<span class="lineNum"> 44 </span> : };
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span><span class="lineCov"> 1310 : void RecordParser::scan(const std::string&amp; str)</span>
+<span class="lineNum"> 47 </span> : {
+<span class="lineNum"> 48 </span><span class="lineCov"> 1310 : buffer = str;</span>
+<span class="lineNum"> 49 </span><span class="lineCov"> 1310 : ends.clear();</span>
+<span class="lineNum"> 50 </span><span class="lineCov"> 1310 : sorted.clear();</span>
+<span class="lineNum"> 51 </span> :
+<span class="lineNum"> 52 </span> : //cerr &lt;&lt; &quot;PARSE &quot; &lt;&lt; endl &lt;&lt; buffer &lt;&lt; &quot;*****&quot; &lt;&lt; endl;
+<span class="lineNum"> 53 </span> :
+<span class="lineNum"> 54 </span> : // Scan the buffer, taking note of all ending offsets of the various fields
+<span class="lineNum"> 55 </span><span class="lineCov"> 1310 : size_t pos = 0;</span>
+<span class="lineNum"> 56 </span><span class="lineCov"> 1310 : size_t idx = 0;</span>
+<span class="lineNum"> 57 </span><span class="lineCov"> 29815 : while (pos &lt; buffer.size() - 1)</span>
+<span class="lineNum"> 58 </span> : {
+<span class="lineNum"> 59 </span> : //cerr &lt;&lt; &quot;PREPOS &quot; &lt;&lt; pos &lt;&lt; &quot; left: &quot; &lt;&lt; buffer.substr(pos, 10) &lt;&lt; endl;
+<span class="lineNum"> 60 </span><span class="lineCov"> 28505 : pos = buffer.find(&quot;\n&quot;, pos);</span>
+<span class="lineNum"> 61 </span> : //cerr &lt;&lt; &quot;POSTPOS &quot; &lt;&lt; pos &lt;&lt; &quot; left: &quot; &lt;&lt; (pos == string::npos ? &quot;NONE&quot; : buffer.substr(pos, 10)) &lt;&lt; endl;
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span> : // The buffer does not end with a newline
+<span class="lineNum"> 64 </span><span class="lineCov"> 28505 : if (pos == string::npos)</span>
+<span class="lineNum"> 65 </span> : {
+<span class="lineNum"> 66 </span> : //cerr &lt;&lt; &quot;ENDNOTEOL&quot; &lt;&lt; endl;
+<span class="lineNum"> 67 </span><span class="lineCov"> 1 : pos = buffer.size();</span>
+<span class="lineNum"> 68 </span><span class="lineCov"> 1 : ends.push_back(pos);</span>
+<span class="lineNum"> 69 </span><span class="lineCov"> 1 : sorted.push_back(idx++);</span>
+<span class="lineNum"> 70 </span><span class="lineCov"> 1 : break;</span>
+<span class="lineNum"> 71 </span> : }
+<span class="lineNum"> 72 </span> :
+<span class="lineNum"> 73 </span><span class="lineCov"> 28504 : ++pos;</span>
+<span class="lineNum"> 74 </span> : //cerr &lt;&lt; &quot;POSTPOSINC &quot; &lt;&lt; pos &lt;&lt; &quot; left: &quot; &lt;&lt; buffer.substr(pos, 10) &lt;&lt; endl;
+<span class="lineNum"> 75 </span> :
+<span class="lineNum"> 76 </span> : // The buffer ends with a newline
+<span class="lineNum"> 77 </span><span class="lineCov"> 28504 : if (pos == buffer.size())</span>
+<span class="lineNum"> 78 </span> : {
+<span class="lineNum"> 79 </span> : //cerr &lt;&lt; &quot;ENDEOL&quot; &lt;&lt; endl;
+<span class="lineNum"> 80 </span><span class="lineCov"> 1309 : ends.push_back(pos);</span>
+<span class="lineNum"> 81 </span><span class="lineCov"> 1309 : sorted.push_back(idx++);</span>
+<span class="lineNum"> 82 </span><span class="lineCov"> 1309 : break;</span>
+<span class="lineNum"> 83 </span> : }
+<span class="lineNum"> 84 </span> :
+<span class="lineNum"> 85 </span> : // Terminate parsing on double newlines
+<span class="lineNum"> 86 </span><span class="lineCov"> 27195 : if (buffer[pos] == '\n')</span>
+<span class="lineNum"> 87 </span> : {
+<span class="lineNum"> 88 </span> : //cerr &lt;&lt; &quot;ENDDOUBLENL&quot; &lt;&lt; endl;
+<span class="lineNum"> 89 </span><span class="lineNoCov"> 0 : ends.push_back(pos);</span>
+<span class="lineNum"> 90 </span><span class="lineNoCov"> 0 : sorted.push_back(idx++);</span>
+<span class="lineNum"> 91 </span><span class="lineNoCov"> 0 : break;</span>
+<span class="lineNum"> 92 </span> : }
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span> : // Mark the end of the field if it's not a continuation line
+<span class="lineNum"> 95 </span><span class="lineCov"> 27195 : if (!isspace(buffer[pos]))</span>
+<span class="lineNum"> 96 </span> : {
+<span class="lineNum"> 97 </span> : //cerr &lt;&lt; &quot;INNERFIELD&quot; &lt;&lt; endl;
+<span class="lineNum"> 98 </span><span class="lineCov"> 17224 : ends.push_back(pos);</span>
+<span class="lineNum"> 99 </span><span class="lineCov"> 17224 : sorted.push_back(idx++);</span>
+<span class="lineNum"> 100 </span> : } //else
+<span class="lineNum"> 101 </span> : //cerr &lt;&lt; &quot;CONTLINE&quot; &lt;&lt; endl;
+<span class="lineNum"> 102 </span> : }
+<span class="lineNum"> 103 </span> :
+<span class="lineNum"> 104 </span> : // Sort the sorted array
+<span class="lineNum"> 105 </span><span class="lineCov"> 1310 : sort(sorted.begin(), sorted.end(), rpcompare(*this));</span>
+<span class="lineNum"> 106 </span> :
+<span class="lineNum"> 107 </span> : //for (size_t i = 0; i &lt; ends.size(); ++i)
+<span class="lineNum"> 108 </span> : // cerr &lt;&lt; ends[i] &lt;&lt; &quot;\t&quot; &lt;&lt; name(i) &lt;&lt; &quot;\t&quot; &lt;&lt; sorted[i] &lt;&lt; &quot;\t&quot; &lt;&lt; name(sorted[i]) &lt;&lt; endl;
+<span class="lineNum"> 109 </span><span class="lineCov"> 1310 : }</span>
+<span class="lineNum"> 110 </span> :
+<span class="lineNum"> 111 </span><span class="lineCov"> 187124 : std::string RecordParser::field(size_t idx) const</span>
+<span class="lineNum"> 112 </span> : {
+<span class="lineNum"> 113 </span><span class="lineCov"> 187124 : if (idx &gt;= ends.size())</span>
+<span class="lineNum"> 114 </span><span class="lineCov"> 1 : return string();</span>
+<span class="lineNum"> 115 </span><span class="lineCov"> 187123 : if (idx == 0)</span>
+<span class="lineNum"> 116 </span><span class="lineCov"> 16577 : return buffer.substr(0, ends[0]);</span>
+<span class="lineNum"> 117 </span> : else
+<span class="lineNum"> 118 </span><span class="lineCov"> 170546 : return buffer.substr(ends[idx-1], ends[idx]-ends[idx-1]);</span>
+<span class="lineNum"> 119 </span> : }
+<span class="lineNum"> 120 </span> :
+<span class="lineNum"> 121 </span><span class="lineCov"> 185814 : std::string RecordParser::name(size_t idx) const</span>
+<span class="lineNum"> 122 </span> : {
+<span class="lineNum"> 123 </span><span class="lineCov"> 185814 : string res = field(idx);</span>
+<span class="lineNum"> 124 </span><span class="lineCov"> 185814 : size_t pos = res.find(&quot;:&quot;);</span>
+<span class="lineNum"> 125 </span><span class="lineCov"> 185814 : if (pos == string::npos)</span>
+<span class="lineNum"> 126 </span><span class="lineCov"> 2 : return res;</span>
+<span class="lineNum"> 127 </span><span class="lineCov"> 185812 : return res.substr(0, pos);</span>
+<span class="lineNum"> 128 </span> : }
+<span class="lineNum"> 129 </span> :
+<span class="lineNum"> 130 </span><span class="lineCov"> 1310 : std::string RecordParser::lookup(size_t idx) const</span>
+<span class="lineNum"> 131 </span> : {
+<span class="lineNum"> 132 </span><span class="lineCov"> 1310 : string res = field(idx);</span>
+<span class="lineNum"> 133 </span><span class="lineCov"> 1310 : size_t pos = res.find(&quot;:&quot;);</span>
+<span class="lineNum"> 134 </span><span class="lineCov"> 1310 : if (pos == string::npos)</span>
+<span class="lineNum"> 135 </span><span class="lineCov"> 1 : return res;</span>
+<span class="lineNum"> 136 </span> : // Skip initial whitespace after the :
+<span class="lineNum"> 137 </span><span class="lineCov"> 1309 : for (++pos; pos &lt; res.size() &amp;&amp; isspace(res[pos]); ++pos)</span>
+<span class="lineNum"> 138 </span> : ;
+<span class="lineNum"> 139 </span><span class="lineCov"> 1309 : res = res.substr(pos);</span>
+<span class="lineNum"> 140 </span> : // Trim spaces at the end
+<span class="lineNum"> 141 </span><span class="lineCov"> 3927 : while (!res.empty() &amp;&amp; isspace(res[res.size() - 1]))</span>
+<span class="lineNum"> 142 </span><span class="lineCov"> 1309 : res.resize(res.size() - 1);</span>
+<span class="lineNum"> 143 </span><span class="lineCov"> 1309 : return res;</span>
+<span class="lineNum"> 144 </span> : }
+<span class="lineNum"> 145 </span> :
+<span class="lineNum"> 146 </span><span class="lineCov"> 1310 : size_t RecordParser::index(const std::string&amp; str) const</span>
+<span class="lineNum"> 147 </span> : {
+<span class="lineNum"> 148 </span> : int begin, end;
+<span class="lineNum"> 149 </span> :
+<span class="lineNum"> 150 </span> : /* Binary search */
+<span class="lineNum"> 151 </span><span class="lineCov"> 1310 : begin = -1, end = size();</span>
+<span class="lineNum"> 152 </span><span class="lineCov"> 7924 : while (end - begin &gt; 1)</span>
+<span class="lineNum"> 153 </span> : {
+<span class="lineNum"> 154 </span><span class="lineCov"> 5304 : int cur = (end + begin) / 2;</span>
+<span class="lineNum"> 155 </span> : //cerr &lt;&lt; &quot;Test &quot; &lt;&lt; cur &lt;&lt; &quot; &quot; &lt;&lt; str &lt;&lt; &quot; &lt; &quot; &lt;&lt; name(cur) &lt;&lt; endl;
+<span class="lineNum"> 156 </span><span class="lineCov"> 5304 : if (name(sorted[cur]) &gt; str)</span>
+<span class="lineNum"> 157 </span><span class="lineCov"> 1724 : end = cur;</span>
+<span class="lineNum"> 158 </span> : else
+<span class="lineNum"> 159 </span><span class="lineCov"> 3580 : begin = cur;</span>
+<span class="lineNum"> 160 </span> : }
+<span class="lineNum"> 161 </span> :
+<span class="lineNum"> 162 </span><span class="lineCov"> 1310 : if (begin == -1 || name(sorted[begin]) != str)</span>
+<span class="lineNum"> 163 </span><span class="lineCov"> 1 : return size();</span>
+<span class="lineNum"> 164 </span> : else
+<span class="lineNum"> 165 </span><span class="lineCov"> 1309 : return sorted[begin];</span>
+<span class="lineNum"> 166 </span> : }
+<span class="lineNum"> 167 </span> :
+<span class="lineNum"> 168 </span> : }
+<span class="lineNum"> 169 </span> : }
+<span class="lineNum"> 170 </span> : }
+<span class="lineNum"> 171 </span> :
+<span class="lineNum"> 172 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/core/apt/recordparser.h.gcov.html b/rep/ept/core/apt/recordparser.h.gcov.html
new file mode 100644
index 0000000..13eb803
--- /dev/null
+++ b/rep/ept/core/apt/recordparser.h.gcov.html
@@ -0,0 +1,165 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/core/apt/recordparser.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/core/apt</a> - recordparser.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">4</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">4</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- C++ -*-
+<span class="lineNum"> 2 </span> : #ifndef EPT_CORE_APT_RECORDPARSER_H
+<span class="lineNum"> 3 </span> : #define EPT_CORE_APT_RECORDPARSER_H
+<span class="lineNum"> 4 </span> :
+<span class="lineNum"> 5 </span> : /** \file
+<span class="lineNum"> 6 </span> : * Parser for APT records
+<span class="lineNum"> 7 </span> : */
+<span class="lineNum"> 8 </span> :
+<span class="lineNum"> 9 </span> : /*
+<span class="lineNum"> 10 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 11 </span> : *
+<span class="lineNum"> 12 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 13 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 14 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 15 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 16 </span> : *
+<span class="lineNum"> 17 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 18 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 19 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 20 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 21 </span> : *
+<span class="lineNum"> 22 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 23 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 24 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 25 </span> : */
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #include &lt;vector&gt;
+<span class="lineNum"> 28 </span> : #include &lt;string&gt;
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : namespace ept {
+<span class="lineNum"> 31 </span> : namespace core {
+<span class="lineNum"> 32 </span> : namespace record {
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span> : /**
+<span class="lineNum"> 35 </span> : * Access the fields of a package record contained inside a std::string.
+<span class="lineNum"> 36 </span> : *
+<span class="lineNum"> 37 </span> : * Implementation note: this implementation should take advantage of
+<span class="lineNum"> 38 </span> : * std::string sharing buffer space among them.
+<span class="lineNum"> 39 </span> : */
+<span class="lineNum"> 40 </span> : class RecordParser
+<span class="lineNum"> 41 </span><span class="lineCov"> 1310 : {</span>
+<span class="lineNum"> 42 </span> : /// Buffer containing the whole record
+<span class="lineNum"> 43 </span> : std::string buffer;
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : /// End offsets of the various fields in the record
+<span class="lineNum"> 46 </span> : std::vector&lt;size_t&gt; ends;
+<span class="lineNum"> 47 </span> :
+<span class="lineNum"> 48 </span> : /// Indexes on the ends vector, sorted by field name
+<span class="lineNum"> 49 </span> : std::vector&lt;size_t&gt; sorted;
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> : public:
+<span class="lineNum"> 52 </span> : RecordParser() {}
+<span class="lineNum"> 53 </span><span class="lineCov"> 1310 : RecordParser(const std::string&amp; str) { scan(str); }</span>
+<span class="lineNum"> 54 </span> :
+<span class="lineNum"> 55 </span> : /// Index a new record
+<span class="lineNum"> 56 </span> : void scan(const std::string&amp; str);
+<span class="lineNum"> 57 </span> :
+<span class="lineNum"> 58 </span> : /**
+<span class="lineNum"> 59 </span> : * Get the index of the field with the given name.
+<span class="lineNum"> 60 </span> : *
+<span class="lineNum"> 61 </span> : * size() is returned if not found
+<span class="lineNum"> 62 </span> : */
+<span class="lineNum"> 63 </span> : size_t index(const std::string&amp; str) const;
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : /// Return the field by its index
+<span class="lineNum"> 66 </span> : std::string field(size_t idx) const;
+<span class="lineNum"> 67 </span> :
+<span class="lineNum"> 68 </span> : /// Return the name of a field by its index
+<span class="lineNum"> 69 </span> : std::string name(size_t idx) const;
+<span class="lineNum"> 70 </span> :
+<span class="lineNum"> 71 </span> : /// Return the content of a field by its index
+<span class="lineNum"> 72 </span> : std::string lookup(size_t idx) const;
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span> : /// Return the content of a field by its name
+<span class="lineNum"> 75 </span><span class="lineCov"> 1310 : std::string lookup(const std::string&amp; name) const { return lookup(index(name)); }</span>
+<span class="lineNum"> 76 </span> :
+<span class="lineNum"> 77 </span> : /// Return the content of a field by its index
+<span class="lineNum"> 78 </span> : std::string operator[](size_t idx) const { return lookup(idx); }
+<span class="lineNum"> 79 </span> :
+<span class="lineNum"> 80 </span> : /// Return the content of a field by its name
+<span class="lineNum"> 81 </span> : std::string operator[](const std::string&amp; name) const { return lookup(name); }
+<span class="lineNum"> 82 </span> :
+<span class="lineNum"> 83 </span> : /// Return the entire record
+<span class="lineNum"> 84 </span> : const std::string&amp; record() const { return buffer; }
+<span class="lineNum"> 85 </span> :
+<span class="lineNum"> 86 </span> : /// Return the entire record
+<span class="lineNum"> 87 </span> : std::string record() { return buffer; }
+<span class="lineNum"> 88 </span> :
+<span class="lineNum"> 89 </span> : /// Return the number of fields in the record
+<span class="lineNum"> 90 </span><span class="lineCov"> 1311 : size_t size() const { return ends.size(); }</span>
+<span class="lineNum"> 91 </span> : };
+<span class="lineNum"> 92 </span> :
+<span class="lineNum"> 93 </span> : }
+<span class="lineNum"> 94 </span> : }
+<span class="lineNum"> 95 </span> : }
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 98 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/core/apt/version.h.gcov.html b/rep/ept/core/apt/version.h.gcov.html
new file mode 100644
index 0000000..b17fdfb
--- /dev/null
+++ b/rep/ept/core/apt/version.h.gcov.html
@@ -0,0 +1,160 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/core/apt/version.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/core/apt</a> - version.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">32</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">93.8 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">30</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- C++ -*-
+<span class="lineNum"> 2 </span> : #ifndef EPT_CORE_APT_VERSION_H
+<span class="lineNum"> 3 </span> : #define EPT_CORE_APT_VERSION_H
+<span class="lineNum"> 4 </span> :
+<span class="lineNum"> 5 </span> : namespace ept {
+<span class="lineNum"> 6 </span> : namespace core {
+<span class="lineNum"> 7 </span> : namespace version {
+<span class="lineNum"> 8 </span> :
+<span class="lineNum"> 9 </span><span class="lineCov"> 3616 : struct InternalList {</span>
+<span class="lineNum"> 10 </span> : package::Internal m_pkg;
+<span class="lineNum"> 11 </span> : Internal m_ver;
+<span class="lineNum"> 12 </span> :
+<span class="lineNum"> 13 </span> : typedef Internal Type;
+<span class="lineNum"> 14 </span> :
+<span class="lineNum"> 15 </span><span class="lineCov"> 3616 : InternalList tail() const {</span>
+<span class="lineNum"> 16 </span><span class="lineCov"> 3616 : InternalList t = *this;</span>
+<span class="lineNum"> 17 </span><span class="lineCov"> 3616 : t.m_ver ++;</span>
+<span class="lineNum"> 18 </span><span class="lineCov"> 3616 : t.seek();</span>
+<span class="lineNum"> 19 </span> : return t;
+<span class="lineNum"> 20 </span> : }
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span><span class="lineCov"> 5424 : const Internal head() const {</span>
+<span class="lineNum"> 23 </span><span class="lineCov"> 5424 : return m_ver;</span>
+<span class="lineNum"> 24 </span> : }
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : Internal head() {
+<span class="lineNum"> 27 </span> : return m_ver;
+<span class="lineNum"> 28 </span> : }
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span><span class="lineCov"> 3618 : bool empty() const {</span>
+<span class="lineNum"> 31 </span><span class="lineCov"> 3618 : return m_pkg.end();</span>
+<span class="lineNum"> 32 </span> : }
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span><span class="lineCov"> 3618 : void seek()</span>
+<span class="lineNum"> 35 </span> : {
+<span class="lineNum"> 36 </span><span class="lineCov"> 14790 : while ( m_ver.end() &amp;&amp; !m_pkg.end() ) {</span>
+<span class="lineNum"> 37 </span><span class="lineCov"> 7554 : m_pkg ++;</span>
+<span class="lineNum"> 38 </span><span class="lineCov"> 7554 : m_ver = m_pkg.VersionList();</span>
+<span class="lineNum"> 39 </span> : }
+<span class="lineNum"> 40 </span><span class="lineCov"> 3618 : }</span>
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span><span class="lineCov"> 2 : InternalList( package::Internal i )</span>
+<span class="lineNum"> 43 </span><span class="lineCov"> 2 : : m_pkg( i )</span>
+<span class="lineNum"> 44 </span> : {
+<span class="lineNum"> 45 </span><span class="lineCov"> 2 : m_ver = m_pkg.VersionList();</span>
+<span class="lineNum"> 46 </span><span class="lineCov"> 2 : seek();</span>
+<span class="lineNum"> 47 </span><span class="lineCov"> 2 : }</span>
+<span class="lineNum"> 48 </span> : };
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span> : struct Setup {
+<span class="lineNum"> 51 </span> : typedef ept::Token Token;
+<span class="lineNum"> 52 </span> : typedef version::Internal Internal;
+<span class="lineNum"> 53 </span> : typedef version::PropertyId PropertyId;
+<span class="lineNum"> 54 </span> : typedef version::InternalList InternalList;
+<span class="lineNum"> 55 </span> : };
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : struct Source : core::Source&lt; Source, Setup, PropertyType &gt;
+<span class="lineNum"> 58 </span><span class="lineCov"> 12 : {</span>
+<span class="lineNum"> 59 </span> : AptDatabase &amp;m_db;
+<span class="lineNum"> 60 </span><span class="lineCov"> 12 : Source( AptDatabase &amp;db ) : m_db( db ) {}</span>
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span><span class="lineCov"> 2 : InternalList listInternal() {</span>
+<span class="lineNum"> 63 </span><span class="lineCov"> 2 : return InternalList( m_db.cache().PkgBegin() );</span>
+<span class="lineNum"> 64 </span> : }
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span><span class="lineCov"> 1808 : Token getToken( Internal i ) {</span>
+<span class="lineNum"> 67 </span><span class="lineCov"> 1808 : Token t;</span>
+<span class="lineNum"> 68 </span><span class="lineCov"> 1808 : t._id = std::string( i.ParentPkg().Name() ) + &quot;_&quot; + i.VerStr();</span>
+<span class="lineNum"> 69 </span><span class="lineNoCov"> 0 : return t;</span>
+<span class="lineNum"> 70 </span> : }
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span> : Internal lookupToken( Token t ) {
+<span class="lineNum"> 73 </span> : return m_db.lookupVersion( t );
+<span class="lineNum"> 74 </span> : }
+<span class="lineNum"> 75 </span> :
+<span class="lineNum"> 76 </span> : template&lt; PropertyId p &gt;
+<span class="lineNum"> 77 </span> : typename PropertyType&lt; p &gt;::T getInternal( Internal );
+<span class="lineNum"> 78 </span> : };
+<span class="lineNum"> 79 </span> :
+<span class="lineNum"> 80 </span> : template&lt;&gt; struct PropertyType&lt; Package &gt; { typedef Token T; };
+<span class="lineNum"> 81 </span> :
+<span class="lineNum"> 82 </span><span class="lineCov"> 3616 : template&lt;&gt; inline Token Source::getInternal&lt; Package &gt;( Internal i ) {</span>
+<span class="lineNum"> 83 </span><span class="lineCov"> 3616 : assert( !i.end() );</span>
+<span class="lineNum"> 84 </span><span class="lineCov"> 3616 : Token t;</span>
+<span class="lineNum"> 85 </span><span class="lineCov"> 7232 : t._id = i.ParentPkg().Name();</span>
+<span class="lineNum"> 86 </span><span class="lineNoCov"> 0 : return t;</span>
+<span class="lineNum"> 87 </span> : }
+<span class="lineNum"> 88 </span> :
+<span class="lineNum"> 89 </span> : }
+<span class="lineNum"> 90 </span> : }
+<span class="lineNum"> 91 </span> : }
+<span class="lineNum"> 92 </span> :
+<span class="lineNum"> 93 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/core/desktop.h.gcov.html b/rep/ept/core/desktop.h.gcov.html
new file mode 100644
index 0000000..27d0be3
--- /dev/null
+++ b/rep/ept/core/desktop.h.gcov.html
@@ -0,0 +1,344 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/core/desktop.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/core</a> - desktop.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">103</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">94.2 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">97</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /// -*- C++ -*- (c) 2006, 2007 Petr Rockai &lt;me@mornfall.net&gt;
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : #include &lt;wibble/string.h&gt;
+<span class="lineNum"> 4 </span> :
+<span class="lineNum"> 5 </span> : #include &lt;ept/token.h&gt;
+<span class="lineNum"> 6 </span> : #include &lt;ept/core/desktopfile.h&gt;
+<span class="lineNum"> 7 </span> : #include &lt;ept/core/source.h&gt;
+<span class="lineNum"> 8 </span> :
+<span class="lineNum"> 9 </span> : #include &lt;set&gt;
+<span class="lineNum"> 10 </span> : #include &lt;vector&gt;
+<span class="lineNum"> 11 </span> : #include &lt;fstream&gt;
+<span class="lineNum"> 12 </span> : #include &lt;sstream&gt;
+<span class="lineNum"> 13 </span> : #include &lt;iterator&gt;
+<span class="lineNum"> 14 </span> : #include &lt;functional&gt;
+<span class="lineNum"> 15 </span> :
+<span class="lineNum"> 16 </span> : #include &lt;dirent.h&gt;
+<span class="lineNum"> 17 </span> :
+<span class="lineNum"> 18 </span> : #ifndef EPT_CORE_DESKTOP_H
+<span class="lineNum"> 19 </span> : #define EPT_CORE_DESKTOP_H
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : namespace ept {
+<span class="lineNum"> 22 </span> : namespace core {
+<span class="lineNum"> 23 </span> : namespace desktop {
+<span class="lineNum"> 24 </span> :
+<span class="lineNum"> 25 </span> : typedef enum { Name, Group, ShortDescription, Package, Icon } PropertyId;
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : template&lt; PropertyId &gt; struct PropertyType {};
+<span class="lineNum"> 28 </span> : template&lt;&gt; struct PropertyType&lt; Name &gt; { typedef std::string T; };
+<span class="lineNum"> 29 </span> : template&lt;&gt; struct PropertyType&lt; Group &gt; { typedef std::string T; };
+<span class="lineNum"> 30 </span> : template&lt;&gt; struct PropertyType&lt; ShortDescription &gt; { typedef std::string T; };
+<span class="lineNum"> 31 </span> : template&lt;&gt; struct PropertyType&lt; Package &gt; { typedef ept::Token T; };
+<span class="lineNum"> 32 </span> : template&lt;&gt; struct PropertyType&lt; Icon &gt; { typedef std::string T; };
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span> : typedef std::set&lt; std::string &gt; Categories;
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span><span class="lineCov"> 64 : struct Category {</span>
+<span class="lineNum"> 37 </span> : std::string name;
+<span class="lineNum"> 38 </span><span class="lineCov"> 112 : operator std::string() const { return name; }</span>
+<span class="lineNum"> 39 </span> : };
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span><span class="lineCov"> 80 : inline std::istream &amp;operator &gt;&gt;( std::istream &amp;i, Category &amp;cat ) {</span>
+<span class="lineNum"> 42 </span> : char c;
+<span class="lineNum"> 43 </span><span class="lineCov"> 80 : cat.name = &quot;&quot;;</span>
+<span class="lineNum"> 44 </span><span class="lineCov"> 468 : while ( i.peek() != EOF ) {</span>
+<span class="lineNum"> 45 </span><span class="lineCov"> 356 : c = i.get();</span>
+<span class="lineNum"> 46 </span><span class="lineCov"> 356 : if ( c == ';' ) return i;</span>
+<span class="lineNum"> 47 </span><span class="lineCov"> 308 : cat.name += c;</span>
+<span class="lineNum"> 48 </span> : }
+<span class="lineNum"> 49 </span><span class="lineCov"> 32 : return i;</span>
+<span class="lineNum"> 50 </span> : }
+<span class="lineNum"> 51 </span> :
+<span class="lineNum"> 52 </span><span class="lineCov"> 567 : struct Entry : wibble::mixin::Comparable&lt; Entry &gt; {</span>
+<span class="lineNum"> 53 </span><span class="lineCov"> 18 : Entry() {}</span>
+<span class="lineNum"> 54 </span> : Entry( std::string n, std::string g,
+<span class="lineNum"> 55 </span> : std::string p, std::string d , std::string i )
+<span class="lineNum"> 56 </span> : : m_name( n ),
+<span class="lineNum"> 57 </span> : m_package( p ),
+<span class="lineNum"> 58 </span> : m_description( d ),
+<span class="lineNum"> 59 </span> : m_icon( i )
+<span class="lineNum"> 60 </span> : { setCategories( g ); }
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span><span class="lineCov"> 16 : void load( std::string file ) {</span>
+<span class="lineNum"> 63 </span><span class="lineCov"> 16 : m_id = file;</span>
+<span class="lineNum"> 64 </span><span class="lineCov"> 16 : std::ifstream i( file.c_str() );</span>
+<span class="lineNum"> 65 </span><span class="lineCov"> 16 : if ( !i.is_open() )</span>
+<span class="lineNum"> 66 </span><span class="lineNoCov"> 0 : return; // throw?</span>
+<span class="lineNum"> 67 </span><span class="lineCov"> 16 : desktop::File e;</span>
+<span class="lineNum"> 68 </span><span class="lineCov"> 16 : i &gt;&gt; e;</span>
+<span class="lineNum"> 69 </span><span class="lineCov"> 16 : i.close();</span>
+<span class="lineNum"> 70 </span><span class="lineCov"> 16 : desktop::File::Group &amp;g = e.group( &quot;Desktop Entry&quot; );</span>
+<span class="lineNum"> 71 </span><span class="lineCov"> 32 : m_name = g.entry( &quot;Name&quot; ).value;</span>
+<span class="lineNum"> 72 </span><span class="lineCov"> 32 : m_description = g.entry( &quot;Comment&quot; ).value;</span>
+<span class="lineNum"> 73 </span><span class="lineCov"> 32 : if ( m_description == &quot;&quot; )</span>
+<span class="lineNum"> 74 </span><span class="lineCov"> 8 : m_description = g.entry( &quot;GenericName&quot; ).value;</span>
+<span class="lineNum"> 75 </span><span class="lineCov"> 16 : m_package = g.entry( &quot;X-AppInstall-Package&quot; ).value;</span>
+<span class="lineNum"> 76 </span> : // m_group = g.entry( &quot;Categories&quot; ).value;
+<span class="lineNum"> 77 </span><span class="lineCov"> 32 : m_icon = g.entry( &quot;Icon&quot; ).value;</span>
+<span class="lineNum"> 78 </span><span class="lineCov"> 32 : setCategories( g.entry( &quot;Categories&quot; ).value );</span>
+<span class="lineNum"> 79 </span> : }
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span><span class="lineCov"> 16 : void setCategories( std::string s ) {</span>
+<span class="lineNum"> 82 </span><span class="lineCov"> 16 : std::istringstream i( s );</span>
+<span class="lineNum"> 83 </span><span class="lineCov"> 16 : m_categories.clear();</span>
+<span class="lineNum"> 84 </span> : std::remove_copy_if(
+<span class="lineNum"> 85 </span> : std::istream_iterator&lt; Category &gt;( i ),
+<span class="lineNum"> 86 </span> : std::istream_iterator&lt; Category &gt;(),
+<span class="lineNum"> 87 </span> : std::inserter( m_categories, m_categories.begin() ),
+<span class="lineNum"> 88 </span><span class="lineCov"> 16 : std::bind1st( std::equal_to&lt; std::string &gt;(), &quot;&quot; ) );</span>
+<span class="lineNum"> 89 </span><span class="lineCov"> 16 : }</span>
+<span class="lineNum"> 90 </span> :
+<span class="lineNum"> 91 </span><span class="lineCov"> 16 : Categories categories() const { return m_categories; }</span>
+<span class="lineNum"> 92 </span> : bool inCategory( std::string c ) const {
+<span class="lineNum"> 93 </span> : return m_categories.find( c ) != m_categories.end();
+<span class="lineNum"> 94 </span> : }
+<span class="lineNum"> 95 </span><span class="lineCov"> 34 : std::string id() const { return m_id; }</span>
+<span class="lineNum"> 96 </span><span class="lineCov"> 6 : std::string name() const { return m_name; }</span>
+<span class="lineNum"> 97 </span> : std::string package() const { return m_package; }
+<span class="lineNum"> 98 </span> : std::string description() const { return m_description; }
+<span class="lineNum"> 99 </span> : std::string icon() const { return m_icon; }
+<span class="lineNum"> 100 </span> : bool operator&lt; ( const Entry &amp;o ) const {
+<span class="lineNum"> 101 </span> : if ( m_name &lt; o.m_name ) return true;
+<span class="lineNum"> 102 </span> : if ( m_name == o.m_name )
+<span class="lineNum"> 103 </span> : if ( m_package &lt; o.m_package ) return true;
+<span class="lineNum"> 104 </span> : return false;
+<span class="lineNum"> 105 </span> : }
+<span class="lineNum"> 106 </span> : protected:
+<span class="lineNum"> 107 </span> : std::string m_name, m_package, m_description, m_icon, m_id;
+<span class="lineNum"> 108 </span> : bool m_supported, m_free;
+<span class="lineNum"> 109 </span> : Categories m_categories;
+<span class="lineNum"> 110 </span> : };
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span><span class="lineCov"> 450 : struct InternalList {</span>
+<span class="lineNum"> 113 </span> : std::string dir;
+<span class="lineNum"> 114 </span> : std::string current;
+<span class="lineNum"> 115 </span> : mutable Entry entry;
+<span class="lineNum"> 116 </span> : off_t offset;
+<span class="lineNum"> 117 </span> : mutable bool loaded;
+<span class="lineNum"> 118 </span> :
+<span class="lineNum"> 119 </span><span class="lineCov"> 9 : InternalList() : dir( &quot;&quot; ), offset( -2 ), loaded( false ) {}</span>
+<span class="lineNum"> 120 </span><span class="lineCov"> 4 : InternalList( std::string d ) : dir( d ), offset( -1 ), loaded( false )</span>
+<span class="lineNum"> 121 </span> : {
+<span class="lineNum"> 122 </span><span class="lineCov"> 4 : firstFile();</span>
+<span class="lineNum"> 123 </span><span class="lineCov"> 4 : }</span>
+<span class="lineNum"> 124 </span> :
+<span class="lineNum"> 125 </span><span class="lineCov"> 56 : Entry head() const {</span>
+<span class="lineNum"> 126 </span><span class="lineCov"> 56 : if (!loaded)</span>
+<span class="lineNum"> 127 </span><span class="lineCov"> 16 : entry.load( current );</span>
+<span class="lineNum"> 128 </span><span class="lineCov"> 56 : loaded = true;</span>
+<span class="lineNum"> 129 </span><span class="lineCov"> 56 : return entry;</span>
+<span class="lineNum"> 130 </span> : }
+<span class="lineNum"> 131 </span> :
+<span class="lineNum"> 132 </span><span class="lineCov"> 33 : bool empty() const {</span>
+<span class="lineNum"> 133 </span><span class="lineCov"> 33 : return (offset == -2);</span>
+<span class="lineNum"> 134 </span> : }
+<span class="lineNum"> 135 </span> :
+<span class="lineNum"> 136 </span><span class="lineCov"> 4 : void firstFile() {</span>
+<span class="lineNum"> 137 </span><span class="lineCov"> 4 : offset = -1;</span>
+<span class="lineNum"> 138 </span><span class="lineCov"> 4 : nextFile();</span>
+<span class="lineNum"> 139 </span><span class="lineCov"> 4 : }</span>
+<span class="lineNum"> 140 </span> :
+<span class="lineNum"> 141 </span><span class="lineCov"> 16 : InternalList tail() const {</span>
+<span class="lineNum"> 142 </span><span class="lineCov"> 16 : InternalList r = *this;</span>
+<span class="lineNum"> 143 </span><span class="lineCov"> 16 : r.nextFile();</span>
+<span class="lineNum"> 144 </span><span class="lineNoCov"> 0 : return r;</span>
+<span class="lineNum"> 145 </span> : }
+<span class="lineNum"> 146 </span> :
+<span class="lineNum"> 147 </span><span class="lineCov"> 20 : void nextFile() {</span>
+<span class="lineNum"> 148 </span><span class="lineCov"> 20 : loaded = false;</span>
+<span class="lineNum"> 149 </span><span class="lineCov"> 20 : DIR *d = opendir( dir.c_str() );</span>
+<span class="lineNum"> 150 </span><span class="lineCov"> 20 : if ( !d ) {</span>
+<span class="lineNum"> 151 </span><span class="lineNoCov"> 0 : offset = -2;</span>
+<span class="lineNum"> 152 </span><span class="lineNoCov"> 0 : closedir( d );</span>
+<span class="lineNum"> 153 </span><span class="lineNoCov"> 0 : return;</span>
+<span class="lineNum"> 154 </span> : }
+<span class="lineNum"> 155 </span> :
+<span class="lineNum"> 156 </span><span class="lineCov"> 20 : if ( offset != -1 )</span>
+<span class="lineNum"> 157 </span><span class="lineCov"> 16 : seekdir( d, offset );</span>
+<span class="lineNum"> 158 </span> :
+<span class="lineNum"> 159 </span><span class="lineCov"> 20 : dirent *ent = 0;</span>
+<span class="lineNum"> 160 </span><span class="lineCov"> 48 : while ( ( ent = readdir( d ) ) != 0 ) {</span>
+<span class="lineNum"> 161 </span><span class="lineCov"> 24 : std::string name( ent-&gt;d_name );</span>
+<span class="lineNum"> 162 </span><span class="lineCov"> 48 : if ( name == &quot;.&quot; || name == &quot;..&quot; )</span>
+<span class="lineNum"> 163 </span><span class="lineCov"> 8 : continue;</span>
+<span class="lineNum"> 164 </span><span class="lineCov"> 16 : if ( !wibble::str::endsWith( name, &quot;.desktop&quot; ) )</span>
+<span class="lineNum"> 165 </span> : continue;
+<span class="lineNum"> 166 </span><span class="lineCov"> 16 : current = dir + &quot;/&quot; + name;</span>
+<span class="lineNum"> 167 </span><span class="lineCov"> 16 : offset = telldir( d );</span>
+<span class="lineNum"> 168 </span><span class="lineCov"> 16 : closedir( d );</span>
+<span class="lineNum"> 169 </span><span class="lineCov"> 16 : return;</span>
+<span class="lineNum"> 170 </span> : }
+<span class="lineNum"> 171 </span><span class="lineCov"> 4 : closedir( d );</span>
+<span class="lineNum"> 172 </span><span class="lineCov"> 4 : offset = -2;</span>
+<span class="lineNum"> 173 </span> : }
+<span class="lineNum"> 174 </span> : };
+<span class="lineNum"> 175 </span> :
+<span class="lineNum"> 176 </span> : struct Setup {
+<span class="lineNum"> 177 </span> : typedef ept::Token Token;
+<span class="lineNum"> 178 </span> : typedef Entry Internal;
+<span class="lineNum"> 179 </span> : typedef desktop::PropertyId PropertyId;
+<span class="lineNum"> 180 </span> : typedef desktop::InternalList InternalList;
+<span class="lineNum"> 181 </span> : };
+<span class="lineNum"> 182 </span> :
+<span class="lineNum"> 183 </span><span class="lineCov"> 5 : struct GroupPolicy {</span>
+<span class="lineNum"> 184 </span><span class="lineCov"> 16 : virtual std::string group( const Entry &amp;e )</span>
+<span class="lineNum"> 185 </span> : {
+<span class="lineNum"> 186 </span><span class="lineCov"> 16 : return wibble::str::fmt( e.categories() );</span>
+<span class="lineNum"> 187 </span> : }
+<span class="lineNum"> 188 </span><span class="lineCov"> 5 : virtual ~GroupPolicy() {}</span>
+<span class="lineNum"> 189 </span> : };
+<span class="lineNum"> 190 </span> :
+<span class="lineNum"> 191 </span> : struct Source : core::Source&lt; Source, Setup, PropertyType &gt;
+<span class="lineNum"> 192 </span><span class="lineCov"> 5 : {</span>
+<span class="lineNum"> 193 </span> : std::string m_dir;
+<span class="lineNum"> 194 </span> :
+<span class="lineNum"> 195 </span> : GroupPolicy m_defaultPolicy;
+<span class="lineNum"> 196 </span> : GroupPolicy *m_policy;
+<span class="lineNum"> 197 </span> :
+<span class="lineNum"> 198 </span><span class="lineCov"> 5 : Source( std::string dir ) : m_dir( dir ),</span>
+<span class="lineNum"> 199 </span><span class="lineCov"> 5 : m_policy( &amp;m_defaultPolicy ) {}</span>
+<span class="lineNum"> 200 </span> :
+<span class="lineNum"> 201 </span><span class="lineCov"> 4 : InternalList listInternal() {</span>
+<span class="lineNum"> 202 </span><span class="lineCov"> 4 : return InternalList( m_dir );</span>
+<span class="lineNum"> 203 </span> : }
+<span class="lineNum"> 204 </span> :
+<span class="lineNum"> 205 </span><span class="lineCov"> 34 : Token getToken( Entry i ) {</span>
+<span class="lineNum"> 206 </span><span class="lineCov"> 34 : Token t;</span>
+<span class="lineNum"> 207 </span><span class="lineCov"> 34 : t._id = std::string( &quot;desktop:&quot; ) + i.id();</span>
+<span class="lineNum"> 208 </span><span class="lineNoCov"> 0 : return t;</span>
+<span class="lineNum"> 209 </span> : }
+<span class="lineNum"> 210 </span> :
+<span class="lineNum"> 211 </span> : Entry lookupToken( Token t ) {
+<span class="lineNum"> 212 </span> : Entry e;
+<span class="lineNum"> 213 </span> : e.load( t.desktop() );
+<span class="lineNum"> 214 </span> : return e;
+<span class="lineNum"> 215 </span> : }
+<span class="lineNum"> 216 </span> :
+<span class="lineNum"> 217 </span> : void setGroupPolicy( GroupPolicy *p ) {
+<span class="lineNum"> 218 </span> : m_policy = p;
+<span class="lineNum"> 219 </span> : }
+<span class="lineNum"> 220 </span> :
+<span class="lineNum"> 221 </span> : template&lt; PropertyId p &gt;
+<span class="lineNum"> 222 </span> : typename PropertyType&lt; p &gt;::T getInternal( Entry );
+<span class="lineNum"> 223 </span> :
+<span class="lineNum"> 224 </span><span class="lineCov"> 56 : struct IsInGroup {</span>
+<span class="lineNum"> 225 </span> : std::string g;
+<span class="lineNum"> 226 </span><span class="lineCov"> 2 : IsInGroup( std::string _g = &quot;&quot; ) : g( _g ) {}</span>
+<span class="lineNum"> 227 </span><span class="lineCov"> 8 : bool operator()( Token, std::string gr ) const {</span>
+<span class="lineNum"> 228 </span><span class="lineCov"> 8 : return gr == g;</span>
+<span class="lineNum"> 229 </span> : }
+<span class="lineNum"> 230 </span> : };
+<span class="lineNum"> 231 </span> :
+<span class="lineNum"> 232 </span><span class="lineCov"> 1 : PropertyFilter&lt; Group, IsInGroup &gt;::T group( std::string id )</span>
+<span class="lineNum"> 233 </span> : {
+<span class="lineNum"> 234 </span><span class="lineCov"> 1 : return propertyFilter&lt; Group &gt;( IsInGroup( id ) );</span>
+<span class="lineNum"> 235 </span> : }
+<span class="lineNum"> 236 </span> :
+<span class="lineNum"> 237 </span><span class="lineCov"> 4 : static std::string projectGroup( ComposedList&lt; Name &gt; t ) {</span>
+<span class="lineNum"> 238 </span><span class="lineCov"> 4 : return t.get&lt; Group &gt;();</span>
+<span class="lineNum"> 239 </span> : }
+<span class="lineNum"> 240 </span> :
+<span class="lineNum"> 241 </span> : list::Unique&lt; list::Sorted&lt;
+<span class="lineNum"> 242 </span> : list::Map&lt; ComposedList&lt; Name &gt;,
+<span class="lineNum"> 243 </span> : __typeof( std::ptr_fun( &amp;projectGroup ) ) &gt; &gt; &gt;
+<span class="lineNum"> 244 </span><span class="lineCov"> 1 : groupList() {</span>
+<span class="lineNum"> 245 </span> : return list::unique(
+<span class="lineNum"> 246 </span> : list::sort( list::map( list&lt; Name &gt;(),
+<span class="lineNum"> 247 </span><span class="lineCov"> 1 : std::ptr_fun( &amp;projectGroup ) ) ) );</span>
+<span class="lineNum"> 248 </span> : }
+<span class="lineNum"> 249 </span> : };
+<span class="lineNum"> 250 </span> :
+<span class="lineNum"> 251 </span><span class="lineCov"> 6 : template&lt;&gt; inline std::string Source::getInternal&lt; Name &gt;( Entry e ) {</span>
+<span class="lineNum"> 252 </span><span class="lineCov"> 6 : return e.name();</span>
+<span class="lineNum"> 253 </span> : }
+<span class="lineNum"> 254 </span> :
+<span class="lineNum"> 255 </span> : template&lt;&gt; inline std::string Source::getInternal&lt; Icon &gt;( Entry e ) {
+<span class="lineNum"> 256 </span> : return e.icon();
+<span class="lineNum"> 257 </span> : }
+<span class="lineNum"> 258 </span> :
+<span class="lineNum"> 259 </span> : template&lt;&gt; inline ept::Token Source::getInternal&lt; Package &gt;( Entry e ) {
+<span class="lineNum"> 260 </span> : ept::Token t;
+<span class="lineNum"> 261 </span> : t._id = e.package();
+<span class="lineNum"> 262 </span> : return t;
+<span class="lineNum"> 263 </span> : }
+<span class="lineNum"> 264 </span> :
+<span class="lineNum"> 265 </span><span class="lineCov"> 16 : template&lt;&gt; inline std::string Source::getInternal&lt; Group &gt;( Entry e ) {</span>
+<span class="lineNum"> 266 </span><span class="lineCov"> 16 : return m_policy-&gt;group( e );</span>
+<span class="lineNum"> 267 </span> : }
+<span class="lineNum"> 268 </span> :
+<span class="lineNum"> 269 </span> : template&lt;&gt; inline std::string Source::getInternal&lt; ShortDescription &gt;( Entry e ) {
+<span class="lineNum"> 270 </span> : return e.description();
+<span class="lineNum"> 271 </span> : }
+<span class="lineNum"> 272 </span> :
+<span class="lineNum"> 273 </span> : }
+<span class="lineNum"> 274 </span> : }
+<span class="lineNum"> 275 </span> : }
+<span class="lineNum"> 276 </span> :
+<span class="lineNum"> 277 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/core/desktop.test.h.gcov.html b/rep/ept/core/desktop.test.h.gcov.html
new file mode 100644
index 0000000..0d08106
--- /dev/null
+++ b/rep/ept/core/desktop.test.h.gcov.html
@@ -0,0 +1,135 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/core/desktop.test.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/core</a> - desktop.test.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">33</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">33</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- C++ -*-
+<span class="lineNum"> 2 </span> : #include &lt;ept/config.h&gt;
+<span class="lineNum"> 3 </span> : #include &lt;ept/core/desktop.h&gt;
+<span class="lineNum"> 4 </span> : #include &lt;ept/core/list.h&gt;
+<span class="lineNum"> 5 </span> : #include &lt;ept/test.h&gt;
+<span class="lineNum"> 6 </span> :
+<span class="lineNum"> 7 </span> : using namespace ept::core;
+<span class="lineNum"> 8 </span> :
+<span class="lineNum"> 9 </span><span class="lineCov"> 5 : struct TestDesktop {</span>
+<span class="lineNum"> 10 </span> : desktop::Source desk;
+<span class="lineNum"> 11 </span> : ept::Token t;
+<span class="lineNum"> 12 </span> :
+<span class="lineNum"> 13 </span><span class="lineCov"> 5 : TestDesktop() : desk( TEST_ENV_DIR &quot;desktop&quot; ) {}</span>
+<span class="lineNum"> 14 </span> :
+<span class="lineNum"> 15 </span> : template&lt; desktop::PropertyId P, typename L &gt;
+<span class="lineNum"> 16 </span><span class="lineCov"> 3 : void checkIteration2( int c, const char **check, L l ) {</span>
+<span class="lineNum"> 17 </span><span class="lineCov"> 3 : int i = 0;</span>
+<span class="lineNum"> 18 </span><span class="lineCov"> 16 : while ( !l.empty() ) {</span>
+<span class="lineNum"> 19 </span><span class="lineCov"> 10 : assert_eq( l.head().template get&lt; P &gt;(), check[ i ] );</span>
+<span class="lineNum"> 20 </span><span class="lineCov"> 20 : l = l.tail();</span>
+<span class="lineNum"> 21 </span><span class="lineCov"> 10 : ++ i;</span>
+<span class="lineNum"> 22 </span> : }
+<span class="lineNum"> 23 </span><span class="lineCov"> 3 : assert_eq( i, c );</span>
+<span class="lineNum"> 24 </span><span class="lineCov"> 3 : }</span>
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : template&lt; desktop::PropertyId P, typename L &gt;
+<span class="lineNum"> 27 </span><span class="lineCov"> 3 : void checkIteration( int c, const char **check, L l ) {</span>
+<span class="lineNum"> 28 </span><span class="lineCov"> 3 : checkIteration2&lt; P &gt;( c, check, list::sort( l ) );</span>
+<span class="lineNum"> 29 </span><span class="lineCov"> 3 : }</span>
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span><span class="lineCov"> 1 : Test iteration() {</span>
+<span class="lineNum"> 32 </span><span class="lineCov"> 1 : const char *check[] = { &quot;Kdict&quot;, &quot;foo&quot;, &quot;XQF&quot;, &quot;X-Server&quot; };</span>
+<span class="lineNum"> 33 </span> : checkIteration&lt; desktop::Name &gt;(
+<span class="lineNum"> 34 </span><span class="lineCov"> 1 : 4, check, desk.list&lt; desktop::Name &gt;() );</span>
+<span class="lineNum"> 35 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span><span class="lineCov"> 1 : Test groupProperty() {</span>
+<span class="lineNum"> 38 </span> : const char *check[] = {
+<span class="lineNum"> 39 </span> : &quot;{ KDE, Qt, Utility }&quot;,
+<span class="lineNum"> 40 </span> : &quot;{ KDE, Qt, Utility }&quot;,
+<span class="lineNum"> 41 </span> : &quot;{ Application, Game, X-SuSE-Core-Game }&quot;,
+<span class="lineNum"> 42 </span> : &quot;{ KDE, Qt, X-KDE-information }&quot;,
+<span class="lineNum"> 43 </span><span class="lineCov"> 1 : };</span>
+<span class="lineNum"> 44 </span> : checkIteration&lt; desktop::Group &gt;(
+<span class="lineNum"> 45 </span><span class="lineCov"> 1 : 4, check, desk.list&lt; desktop::Name &gt;() );</span>
+<span class="lineNum"> 46 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 47 </span> :
+<span class="lineNum"> 48 </span><span class="lineCov"> 1 : Test groups() {</span>
+<span class="lineNum"> 49 </span><span class="lineCov"> 1 : const char *check[] = { &quot;Kdict&quot;, &quot;foo&quot; };</span>
+<span class="lineNum"> 50 </span> : checkIteration&lt; desktop::Name &gt;(
+<span class="lineNum"> 51 </span><span class="lineCov"> 1 : 2, check, desk.group( &quot;{ KDE, Qt, Utility }&quot; ) );</span>
+<span class="lineNum"> 52 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 53 </span> :
+<span class="lineNum"> 54 </span><span class="lineCov"> 1 : Test groupList() {</span>
+<span class="lineNum"> 55 </span> : std::string check[] = {
+<span class="lineNum"> 56 </span> : &quot;{ Application, Game, X-SuSE-Core-Game }&quot;,
+<span class="lineNum"> 57 </span> : &quot;{ KDE, Qt, Utility }&quot;,
+<span class="lineNum"> 58 </span> : &quot;{ KDE, Qt, X-KDE-information }&quot;,
+<span class="lineNum"> 59 </span><span class="lineCov"> 1 : };</span>
+<span class="lineNum"> 60 </span> :
+<span class="lineNum"> 61 </span><span class="lineCov"> 2 : assert_list_eq( desk.groupList(), check );</span>
+<span class="lineNum"> 62 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 63 </span> :
+<span class="lineNum"> 64 </span><span class="lineCov"> 1 : Test emptyGroupList() {</span>
+<span class="lineNum"> 65 </span><span class="lineCov"> 1 : desktop::InternalList l;</span>
+<span class="lineNum"> 66 </span><span class="lineCov"> 1 : assert( l.empty() );</span>
+<span class="lineNum"> 67 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 68 </span> : };
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/core/desktopfile.h.gcov.html b/rep/ept/core/desktopfile.h.gcov.html
new file mode 100644
index 0000000..9ed8552
--- /dev/null
+++ b/rep/ept/core/desktopfile.h.gcov.html
@@ -0,0 +1,205 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/core/desktopfile.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/core</a> - desktopfile.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">77</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">75.3 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">58</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /// -*- C++ -*- (c) 2006, 2007 Petr Rockai &lt;me@mornfall.net&gt;
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : #include &lt;iostream&gt;
+<span class="lineNum"> 4 </span> : #include &lt;string&gt;
+<span class="lineNum"> 5 </span> : #include &lt;map&gt;
+<span class="lineNum"> 6 </span> :
+<span class="lineNum"> 7 </span> : #ifndef EPT_CORE_DESKTOPFILE_H
+<span class="lineNum"> 8 </span> : #define EPT_CORE_DESKTOPFILE_H
+<span class="lineNum"> 9 </span> :
+<span class="lineNum"> 10 </span> : namespace ept {
+<span class="lineNum"> 11 </span> : namespace core {
+<span class="lineNum"> 12 </span> : namespace desktop {
+<span class="lineNum"> 13 </span> :
+<span class="lineNum"> 14 </span><span class="lineCov"> 32 : struct File {</span>
+<span class="lineNum"> 15 </span><span class="lineCov"> 13540 : struct Entry {</span>
+<span class="lineNum"> 16 </span> : std::string key;
+<span class="lineNum"> 17 </span> : std::string value;
+<span class="lineNum"> 18 </span> : };
+<span class="lineNum"> 19 </span> : typedef std::map&lt; std::string, Entry &gt; EntryMap;
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span><span class="lineCov"> 144 : struct Group {</span>
+<span class="lineNum"> 22 </span> : std::string name;
+<span class="lineNum"> 23 </span> : EntryMap entries;
+<span class="lineNum"> 24 </span><span class="lineCov"> 88 : Entry &amp;entry( std::string k ) { return entries[ k ]; }</span>
+<span class="lineNum"> 25 </span> : };
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : typedef std::map&lt; std::string, Group &gt; GroupMap;
+<span class="lineNum"> 28 </span> : GroupMap groups;
+<span class="lineNum"> 29 </span><span class="lineCov"> 16 : Group &amp;group( std::string k ) { return groups[ k ]; }</span>
+<span class="lineNum"> 30 </span> : };
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span><span class="lineCov"> 1228 : inline std::istream &amp;operator &gt;&gt;( std::istream &amp;i, File::Entry &amp;e )</span>
+<span class="lineNum"> 33 </span> : {
+<span class="lineNum"> 34 </span><span class="lineCov"> 1228 : std::string spaces = &quot;&quot;; char c; bool started = false;</span>
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span><span class="lineCov"> 1228 : e.key = &quot;&quot;;</span>
+<span class="lineNum"> 37 </span> : // read key
+<span class="lineNum"> 38 </span><span class="lineCov"> 16056 : while ( i.peek() != EOF ) {</span>
+<span class="lineNum"> 39 </span><span class="lineCov"> 14820 : c = i.get();</span>
+<span class="lineNum"> 40 </span><span class="lineCov"> 14820 : if ( !started &amp;&amp; c == '\n' )</span>
+<span class="lineNum"> 41 </span><span class="lineCov"> 8 : return i &gt;&gt; e;</span>
+<span class="lineNum"> 42 </span><span class="lineCov"> 14812 : if ( isspace( c ) ) {</span>
+<span class="lineNum"> 43 </span><span class="lineNoCov"> 0 : spaces += c;</span>
+<span class="lineNum"> 44 </span><span class="lineNoCov"> 0 : continue;</span>
+<span class="lineNum"> 45 </span> : }
+<span class="lineNum"> 46 </span><span class="lineCov"> 14812 : if ( !started &amp;&amp; c == '#' ) {</span>
+<span class="lineNum"> 47 </span><span class="lineNoCov"> 0 : while ( i.peek() != EOF &amp;&amp; i.get() != '\n' )</span>
+<span class="lineNum"> 48 </span> : ; // read till eol
+<span class="lineNum"> 49 </span><span class="lineNoCov"> 0 : return i &gt;&gt; e; // restart reading</span>
+<span class="lineNum"> 50 </span> : }
+<span class="lineNum"> 51 </span><span class="lineCov"> 14812 : started = true;</span>
+<span class="lineNum"> 52 </span><span class="lineCov"> 14812 : if ( c == '=' )</span>
+<span class="lineNum"> 53 </span><span class="lineCov"> 1212 : break;</span>
+<span class="lineNum"> 54 </span><span class="lineCov"> 13600 : e.key += spaces;</span>
+<span class="lineNum"> 55 </span><span class="lineCov"> 13600 : e.key += c;</span>
+<span class="lineNum"> 56 </span><span class="lineCov"> 13600 : spaces = &quot;&quot;;</span>
+<span class="lineNum"> 57 </span> : }
+<span class="lineNum"> 58 </span> : // std::cerr &lt;&lt; &quot;read key: &quot; &lt;&lt; e.key &lt;&lt; std::endl;
+<span class="lineNum"> 59 </span> :
+<span class="lineNum"> 60 </span><span class="lineCov"> 1220 : started = false;</span>
+<span class="lineNum"> 61 </span><span class="lineCov"> 1220 : bool backslash = false;</span>
+<span class="lineNum"> 62 </span> : // read value
+<span class="lineNum"> 63 </span><span class="lineCov"> 37496 : while ( i.peek() != EOF ) {</span>
+<span class="lineNum"> 64 </span><span class="lineCov"> 36268 : c = i.get();</span>
+<span class="lineNum"> 65 </span><span class="lineCov"> 36268 : if ( c == '\n' ) {</span>
+<span class="lineNum"> 66 </span><span class="lineCov"> 1212 : if ( backslash )</span>
+<span class="lineNum"> 67 </span><span class="lineNoCov"> 0 : e.value += '\\';</span>
+<span class="lineNum"> 68 </span><span class="lineCov"> 1212 : return i;</span>
+<span class="lineNum"> 69 </span> : }
+<span class="lineNum"> 70 </span><span class="lineCov"> 35056 : if ( !started &amp;&amp; isspace( c ) )</span>
+<span class="lineNum"> 71 </span><span class="lineNoCov"> 0 : continue;</span>
+<span class="lineNum"> 72 </span><span class="lineCov"> 35056 : started = true;</span>
+<span class="lineNum"> 73 </span><span class="lineCov"> 35056 : if ( backslash ) { // interpret escape sequences</span>
+<span class="lineNum"> 74 </span><span class="lineNoCov"> 0 : if ( c == '\\' ) e.value += '\\';</span>
+<span class="lineNum"> 75 </span><span class="lineNoCov"> 0 : else if ( c == 'n' ) e.value += '\n';</span>
+<span class="lineNum"> 76 </span><span class="lineNoCov"> 0 : else if ( c == 't' ) e.value += '\t';</span>
+<span class="lineNum"> 77 </span><span class="lineNoCov"> 0 : else if ( c == 'r' ) e.value += '\r';</span>
+<span class="lineNum"> 78 </span><span class="lineNoCov"> 0 : else if ( c == 's' ) e.value += ' ';</span>
+<span class="lineNum"> 79 </span><span class="lineNoCov"> 0 : else { e.value += '\\'; e.value += c; }</span>
+<span class="lineNum"> 80 </span><span class="lineNoCov"> 0 : backslash = false;</span>
+<span class="lineNum"> 81 </span><span class="lineNoCov"> 0 : continue;</span>
+<span class="lineNum"> 82 </span> : }
+<span class="lineNum"> 83 </span><span class="lineCov"> 35056 : if ( c == '\\' ) {</span>
+<span class="lineNum"> 84 </span><span class="lineNoCov"> 0 : backslash = true;</span>
+<span class="lineNum"> 85 </span><span class="lineNoCov"> 0 : continue;</span>
+<span class="lineNum"> 86 </span> : }
+<span class="lineNum"> 87 </span><span class="lineCov"> 35056 : e.value += c;</span>
+<span class="lineNum"> 88 </span> : }
+<span class="lineNum"> 89 </span><span class="lineCov"> 8 : return i;</span>
+<span class="lineNum"> 90 </span> : }
+<span class="lineNum"> 91 </span> :
+<span class="lineNum"> 92 </span><span class="lineCov"> 16 : inline std::istream &amp;operator &gt;&gt;( std::istream &amp;i, File::Group &amp;g )</span>
+<span class="lineNum"> 93 </span> : {
+<span class="lineNum"> 94 </span><span class="lineCov"> 16 : bool started = false; char c;</span>
+<span class="lineNum"> 95 </span><span class="lineCov"> 16 : g.name = &quot;&quot;;</span>
+<span class="lineNum"> 96 </span><span class="lineCov"> 256 : while ( i.peek() != EOF ) {</span>
+<span class="lineNum"> 97 </span><span class="lineCov"> 240 : c = i.get();</span>
+<span class="lineNum"> 98 </span><span class="lineCov"> 240 : if ( !started &amp;&amp; isspace( c ) )</span>
+<span class="lineNum"> 99 </span><span class="lineNoCov"> 0 : continue;</span>
+<span class="lineNum"> 100 </span><span class="lineCov"> 240 : if ( !started &amp;&amp; c == '#' ) {</span>
+<span class="lineNum"> 101 </span><span class="lineNoCov"> 0 : while( i.peek() != EOF &amp;&amp; i.get() != '\n' )</span>
+<span class="lineNum"> 102 </span> : ; // read till eol
+<span class="lineNum"> 103 </span><span class="lineNoCov"> 0 : return i &gt;&gt; g; // restart reading</span>
+<span class="lineNum"> 104 </span> : }
+<span class="lineNum"> 105 </span><span class="lineCov"> 240 : if ( !started &amp;&amp; c == '[' ) {</span>
+<span class="lineNum"> 106 </span><span class="lineCov"> 16 : started = true;</span>
+<span class="lineNum"> 107 </span><span class="lineCov"> 16 : continue;</span>
+<span class="lineNum"> 108 </span> : }
+<span class="lineNum"> 109 </span><span class="lineCov"> 224 : if ( started &amp;&amp; c == ']' ) {</span>
+<span class="lineNum"> 110 </span><span class="lineCov"> 16 : while( i.peek() != EOF &amp;&amp; i.get() != '\n' )</span>
+<span class="lineNum"> 111 </span> : ; // read till eol
+<span class="lineNum"> 112 </span><span class="lineCov"> 16 : break;</span>
+<span class="lineNum"> 113 </span> : }
+<span class="lineNum"> 114 </span><span class="lineCov"> 208 : g.name += c;</span>
+<span class="lineNum"> 115 </span> : }
+<span class="lineNum"> 116 </span><span class="lineCov"> 1236 : while ( i.peek() != EOF ) {</span>
+<span class="lineNum"> 117 </span><span class="lineCov"> 1220 : File::Entry e;</span>
+<span class="lineNum"> 118 </span><span class="lineCov"> 1220 : i &gt;&gt; e;</span>
+<span class="lineNum"> 119 </span><span class="lineCov"> 1220 : g.entries[ e.key ] = e;</span>
+<span class="lineNum"> 120 </span> : }
+<span class="lineNum"> 121 </span><span class="lineCov"> 16 : return i;</span>
+<span class="lineNum"> 122 </span> : }
+<span class="lineNum"> 123 </span> :
+<span class="lineNum"> 124 </span><span class="lineCov"> 16 : inline std::istream &amp;operator &gt;&gt;( std::istream &amp;i, File &amp;f )</span>
+<span class="lineNum"> 125 </span> : {
+<span class="lineNum"> 126 </span><span class="lineCov"> 32 : while ( i.peek() != EOF ) {</span>
+<span class="lineNum"> 127 </span><span class="lineCov"> 16 : File::Group g;</span>
+<span class="lineNum"> 128 </span><span class="lineCov"> 16 : i &gt;&gt; g;</span>
+<span class="lineNum"> 129 </span><span class="lineCov"> 16 : f.groups[ g.name ] = g;</span>
+<span class="lineNum"> 130 </span> : }
+<span class="lineNum"> 131 </span><span class="lineCov"> 16 : return i;</span>
+<span class="lineNum"> 132 </span> : }
+<span class="lineNum"> 133 </span> :
+<span class="lineNum"> 134 </span> : }
+<span class="lineNum"> 135 </span> : }
+<span class="lineNum"> 136 </span> : }
+<span class="lineNum"> 137 </span> :
+<span class="lineNum"> 138 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/core/index.html b/rep/ept/core/index.html
new file mode 100644
index 0000000..bec608b
--- /dev/null
+++ b/rep/ept/core/index.html
@@ -0,0 +1,164 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/core</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - ept/core</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">688</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">82.8 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">570</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="apt.cpp.gcov.html">apt.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">7&nbsp;/&nbsp;7&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="apt.h.gcov.html">apt.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=80 height=10 alt="79.8%"><img src="../../snow.png" width=20 height=10 alt="79.8%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">79.8&nbsp;%</td>
+ <td class="coverNumHi">138&nbsp;/&nbsp;173&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="apt.test.h.gcov.html">apt.test.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">60&nbsp;/&nbsp;60&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="desktop.h.gcov.html">desktop.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=94 height=10 alt="94.2%"><img src="../../snow.png" width=6 height=10 alt="94.2%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">94.2&nbsp;%</td>
+ <td class="coverNumHi">97&nbsp;/&nbsp;103&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="desktop.test.h.gcov.html">desktop.test.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">33&nbsp;/&nbsp;33&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="desktopfile.h.gcov.html">desktopfile.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=75 height=10 alt="75.3%"><img src="../../snow.png" width=25 height=10 alt="75.3%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">75.3&nbsp;%</td>
+ <td class="coverNumHi">58&nbsp;/&nbsp;77&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="source.h.gcov.html">source.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">34&nbsp;/&nbsp;34&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="xapian.cpp.gcov.html">xapian.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../amber.png" width=21 height=10 alt="21.4%"><img src="../../snow.png" width=79 height=10 alt="21.4%"></td></tr></table>
+ </td>
+ <td class="coverPerMed">21.4&nbsp;%</td>
+ <td class="coverNumMed">12&nbsp;/&nbsp;56&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="xapian.h.gcov.html">xapian.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=87 height=10 alt="87.2%"><img src="../../snow.png" width=13 height=10 alt="87.2%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">87.2&nbsp;%</td>
+ <td class="coverNumHi">95&nbsp;/&nbsp;109&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="xapian.test.h.gcov.html">xapian.test.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">36&nbsp;/&nbsp;36&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/core/source.h.gcov.html b/rep/ept/core/source.h.gcov.html
new file mode 100644
index 0000000..2c2d8e5
--- /dev/null
+++ b/rep/ept/core/source.h.gcov.html
@@ -0,0 +1,181 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/core/source.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/core</a> - source.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">34</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">34</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : #include &lt;ept/core/list.h&gt;
+<span class="lineNum"> 4 </span> :
+<span class="lineNum"> 5 </span> : #ifndef EPT_CORE_SOURCE_H
+<span class="lineNum"> 6 </span> : #define EPT_CORE_SOURCE_H
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : namespace ept {
+<span class="lineNum"> 9 </span> : namespace core {
+<span class="lineNum"> 10 </span> :
+<span class="lineNum"> 11 </span> : template&lt; typename Self, typename Setup,
+<span class="lineNum"> 12 </span> : template&lt; typename Setup::PropertyId &gt; class PType &gt;
+<span class="lineNum"> 13 </span><span class="lineCov"> 38 : struct Source {</span>
+<span class="lineNum"> 14 </span> : typedef typename Setup::PropertyId PropertyId;
+<span class="lineNum"> 15 </span> : typedef typename Setup::Token Token;
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : Token m_cachedToken;
+<span class="lineNum"> 18 </span> : typename Setup::Internal m_cached;
+<span class="lineNum"> 19 </span> :
+<span class="lineNum"> 20 </span><span class="lineCov"> 43 : Self &amp;self() { return *static_cast&lt; Self * &gt;( this ); }</span>
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : template&lt; PropertyId property &gt;
+<span class="lineNum"> 23 </span><span class="lineCov"> 13 : typename PType&lt; property &gt;::T get( Token t ) {</span>
+<span class="lineNum"> 24 </span><span class="lineCov"> 13 : if ( m_cachedToken != t ) {</span>
+<span class="lineNum"> 25 </span><span class="lineCov"> 10 : m_cachedToken = t;</span>
+<span class="lineNum"> 26 </span><span class="lineCov"> 10 : m_cached = self().lookupToken( t );</span>
+<span class="lineNum"> 27 </span> : }
+<span class="lineNum"> 28 </span><span class="lineCov"> 13 : return self().template getInternal&lt; property &gt;( m_cached );</span>
+<span class="lineNum"> 29 </span> : }
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : void invalidate() {
+<span class="lineNum"> 32 </span> : m_cachedToken = ept::Token();
+<span class="lineNum"> 33 </span> : m_cached = typename Setup::Internal();
+<span class="lineNum"> 34 </span> : }
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : template&lt; PropertyId _property &gt;
+<span class="lineNum"> 37 </span> : struct ComposedList : wibble::mixin::Comparable&lt; ComposedList&lt; _property &gt; &gt;
+<span class="lineNum"> 38 </span><span class="lineCov"> 4009 : {</span>
+<span class="lineNum"> 39 </span> : typedef Self Origin;
+<span class="lineNum"> 40 </span> : typedef typename Setup::Token Token;
+<span class="lineNum"> 41 </span> : typedef typename PType&lt; _property &gt;::T Property;
+<span class="lineNum"> 42 </span> : typedef ComposedList Type;
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span> : Origin *origin;
+<span class="lineNum"> 45 </span> : typename Setup::InternalList internal;
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span><span class="lineCov"> 12056 : ComposedList tail() const {</span>
+<span class="lineNum"> 48 </span><span class="lineCov"> 12056 : return ComposedList&lt; _property &gt;( *origin, internal.tail() );</span>
+<span class="lineNum"> 49 </span> : }
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span><span class="lineCov"> 12078 : bool empty() const { return internal.empty(); }</span>
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span><span class="lineCov"> 13 : bool operator&lt;( const ComposedList &amp;o ) const {</span>
+<span class="lineNum"> 54 </span><span class="lineCov"> 13 : return token() &lt; o.token();</span>
+<span class="lineNum"> 55 </span> : }
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span><span class="lineCov"> 18 : ComposedList &amp;head() { return *this; }</span>
+<span class="lineNum"> 58 </span><span class="lineCov"> 4 : const ComposedList &amp;head() const { return *this; }</span>
+<span class="lineNum"> 59 </span> :
+<span class="lineNum"> 60 </span><span class="lineCov"> 6054 : Token token() const { return origin-&gt;getToken( internal.head() ); }</span>
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span><span class="lineCov"> 7836 : Property property() const {</span>
+<span class="lineNum"> 63 </span> : return origin-&gt;template getInternal&lt; _property &gt;(
+<span class="lineNum"> 64 </span><span class="lineCov"> 7836 : internal.head() );</span>
+<span class="lineNum"> 65 </span> : }
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : template&lt; PropertyId P &gt;
+<span class="lineNum"> 68 </span> : typename PType&lt; P &gt;::T
+<span class="lineNum"> 69 </span><span class="lineCov"> 14 : get() const {</span>
+<span class="lineNum"> 70 </span><span class="lineCov"> 14 : return origin-&gt;template getInternal&lt; P &gt;( internal.head() );</span>
+<span class="lineNum"> 71 </span> : }
+<span class="lineNum"> 72 </span> :
+<span class="lineNum"> 73 </span><span class="lineCov"> 8 : ComposedList() : origin( 0 ) {}</span>
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span><span class="lineCov"> 12066 : ComposedList( Origin &amp;o, typename Setup::InternalList i )</span>
+<span class="lineNum"> 76 </span><span class="lineCov"> 12066 : : origin( &amp;o ), internal( i ) {}</span>
+<span class="lineNum"> 77 </span> : };
+<span class="lineNum"> 78 </span> :
+<span class="lineNum"> 79 </span> : template&lt; PropertyId property &gt;
+<span class="lineNum"> 80 </span><span class="lineCov"> 10 : ComposedList&lt; property &gt; list()</span>
+<span class="lineNum"> 81 </span> : {
+<span class="lineNum"> 82 </span><span class="lineCov"> 10 : return ComposedList&lt; property &gt;( self(), self().listInternal() );</span>
+<span class="lineNum"> 83 </span> : }
+<span class="lineNum"> 84 </span> :
+<span class="lineNum"> 85 </span> : template&lt; PropertyId P, typename F &gt;
+<span class="lineNum"> 86 </span><span class="lineCov"> 50 : struct Propertify {</span>
+<span class="lineNum"> 87 </span> : F f;
+<span class="lineNum"> 88 </span><span class="lineCov"> 2 : Propertify( F _f = F() ) : f( _f ) {}</span>
+<span class="lineNum"> 89 </span><span class="lineCov"> 8 : bool operator()( const ComposedList&lt; P &gt; &amp;x ) const {</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 8 : return f( x.token(), x.property() );</span>
+<span class="lineNum"> 91 </span> : }
+<span class="lineNum"> 92 </span> : };
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span> : template&lt; PropertyId P, typename F &gt;
+<span class="lineNum"> 95 </span> : struct PropertyFilter {
+<span class="lineNum"> 96 </span> : typedef typename list::Filtered&lt;
+<span class="lineNum"> 97 </span> : ComposedList&lt; P &gt;, Propertify&lt; P, F &gt; &gt; T;
+<span class="lineNum"> 98 </span> : };
+<span class="lineNum"> 99 </span> :
+<span class="lineNum"> 100 </span> : template&lt; PropertyId P, typename F &gt;
+<span class="lineNum"> 101 </span> : typename PropertyFilter&lt; P, F &gt;::T
+<span class="lineNum"> 102 </span><span class="lineCov"> 1 : propertyFilter( F f ) {</span>
+<span class="lineNum"> 103 </span><span class="lineCov"> 1 : return list::filter( list&lt; P &gt;(), Propertify&lt; P, F &gt;( f ) );</span>
+<span class="lineNum"> 104 </span> : }
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span><span class="lineCov"> 38 : Source()</span>
+<span class="lineNum"> 107 </span><span class="lineCov"> 38 : {</span>
+<span class="lineNum"> 108 </span><span class="lineCov"> 38 : }</span>
+<span class="lineNum"> 109 </span> : };
+<span class="lineNum"> 110 </span> :
+<span class="lineNum"> 111 </span> : }
+<span class="lineNum"> 112 </span> : }
+<span class="lineNum"> 113 </span> :
+<span class="lineNum"> 114 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/core/xapian.cpp.gcov.html b/rep/ept/core/xapian.cpp.gcov.html
new file mode 100644
index 0000000..fdd7a16
--- /dev/null
+++ b/rep/ept/core/xapian.cpp.gcov.html
@@ -0,0 +1,208 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/core/xapian.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/core</a> - xapian.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">56</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">21.4 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">12</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- C++ -*- (c) 2007 Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 2 </span> : // Petr Rockai &lt;me@mornfall.net&gt;
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /*
+<span class="lineNum"> 5 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 6 </span> : *
+<span class="lineNum"> 7 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 8 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 9 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 10 </span> : * (at your option) any later version.
+<span class="lineNum"> 11 </span> : *
+<span class="lineNum"> 12 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 16 </span> : *
+<span class="lineNum"> 17 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 18 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 19 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 20 </span> : */
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : #include &lt;ept/core/xapian.h&gt;
+<span class="lineNum"> 23 </span> : #include &lt;ept/core/apt.h&gt;
+<span class="lineNum"> 24 </span> : #include &lt;ept/core/apt/record.h&gt;
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;ept/textsearch/maint/path.h&gt;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : #include &lt;wibble/regexp.h&gt;
+<span class="lineNum"> 29 </span> : #include &lt;cctype&gt;
+<span class="lineNum"> 30 </span> : #include &lt;cmath&gt;
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : #include &lt;xapian/queryparser.h&gt;
+<span class="lineNum"> 33 </span> : #include &lt;xapian/base.h&gt;
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : #include &lt;algorithm&gt;
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : #include &lt;iostream&gt;
+<span class="lineNum"> 38 </span> :
+<span class="lineNum"> 39 </span> : using namespace std;
+<span class="lineNum"> 40 </span> : using namespace ept;
+<span class="lineNum"> 41 </span> : // using namespace ept::debtags;
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : namespace ept {
+<span class="lineNum"> 44 </span> : namespace core {
+<span class="lineNum"> 45 </span> : namespace xapian {
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span> : size_t max_index = 0;
+<span class="lineNum"> 48 </span> :
+<span class="lineNum"> 49 </span><span class="lineCov"> 4 : Source::Source()</span>
+<span class="lineNum"> 50 </span><span class="lineCov"> 4 : : m_stem(&quot;en&quot;), m_opened( false )</span>
+<span class="lineNum"> 51 </span> : {
+<span class="lineNum"> 52 </span><span class="lineCov"> 4 : }</span>
+<span class="lineNum"> 53 </span> :
+<span class="lineNum"> 54 </span><span class="lineCov"> 9 : time_t Source::timestamp() const {</span>
+<span class="lineNum"> 55 </span><span class="lineCov"> 9 : return textsearch::Path::indexTimestamp();</span>
+<span class="lineNum"> 56 </span> : }
+<span class="lineNum"> 57 </span> :
+<span class="lineNum"> 58 </span><span class="lineCov"> 9 : void Source::open() const {</span>
+<span class="lineNum"> 59 </span><span class="lineCov"> 9 : if (timestamp()) {</span>
+<span class="lineNum"> 60 </span><span class="lineCov"> 9 : std::string path = textsearch::Path::index();</span>
+<span class="lineNum"> 61 </span><span class="lineCov"> 9 : m_db = Xapian::Database( path );</span>
+<span class="lineNum"> 62 </span><span class="lineCov"> 9 : m_opened = true;</span>
+<span class="lineNum"> 63 </span> : }
+<span class="lineNum"> 64 </span><span class="lineCov"> 9 : }</span>
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span><span class="lineNoCov"> 0 : std::string Source::toLower(const std::string&amp; str)</span>
+<span class="lineNum"> 67 </span> : {
+<span class="lineNum"> 68 </span><span class="lineNoCov"> 0 : std::string res;</span>
+<span class="lineNum"> 69 </span><span class="lineNoCov"> 0 : res.reserve(str.size());</span>
+<span class="lineNum"> 70 </span><span class="lineNoCov"> 0 : for (std::string::const_iterator i = str.begin(); i != str.end(); ++i)</span>
+<span class="lineNum"> 71 </span><span class="lineNoCov"> 0 : res += tolower(*i);</span>
+<span class="lineNum"> 72 </span><span class="lineNoCov"> 0 : return res;</span>
+<span class="lineNum"> 73 </span> : }
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span> : void Source::normalize_and_add(Xapian::Document&amp; doc, const std::string&amp; term,
+<span class="lineNum"> 76 </span><span class="lineNoCov"> 0 : int&amp; /* pos */) const</span>
+<span class="lineNum"> 77 </span> : {
+<span class="lineNum"> 78 </span><span class="lineNoCov"> 0 : string t = Source::toLower(term);</span>
+<span class="lineNum"> 79 </span><span class="lineNoCov"> 0 : string s = m_stem(t);</span>
+<span class="lineNum"> 80 </span><span class="lineNoCov"> 0 : doc.add_term(t);</span>
+<span class="lineNum"> 81 </span><span class="lineNoCov"> 0 : if (s != t)</span>
+<span class="lineNum"> 82 </span><span class="lineNoCov"> 0 : doc.add_term(s);</span>
+<span class="lineNum"> 83 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 84 </span> :
+<span class="lineNum"> 85 </span><span class="lineNoCov"> 0 : Xapian::docid Source::docidByName(const std::string&amp; pkgname) const</span>
+<span class="lineNum"> 86 </span> : {
+<span class="lineNum"> 87 </span><span class="lineNoCov"> 0 : Xapian::PostingIterator i = m_db.postlist_begin(&quot;pkg:&quot;+pkgname);</span>
+<span class="lineNum"> 88 </span><span class="lineNoCov"> 0 : if (i == m_db.postlist_end(&quot;pkg:&quot;+pkgname))</span>
+<span class="lineNum"> 89 </span><span class="lineNoCov"> 0 : return 0;</span>
+<span class="lineNum"> 90 </span> : else
+<span class="lineNum"> 91 </span><span class="lineNoCov"> 0 : return *i;</span>
+<span class="lineNum"> 92 </span> : }
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span><span class="lineNoCov"> 0 : Xapian::Query Source::makeRelatedQuery(const std::string&amp; pkgname) const</span>
+<span class="lineNum"> 95 </span> : {
+<span class="lineNum"> 96 </span><span class="lineNoCov"> 0 : Xapian::Enquire enquire(db());</span>
+<span class="lineNum"> 97 </span> :
+<span class="lineNum"> 98 </span> : // Retrieve the document for the given package
+<span class="lineNum"> 99 </span><span class="lineNoCov"> 0 : enquire.set_query(Xapian::Query(&quot;pkg:&quot;+pkgname));</span>
+<span class="lineNum"> 100 </span><span class="lineNoCov"> 0 : Xapian::MSet matches = enquire.get_mset(0, 1);</span>
+<span class="lineNum"> 101 </span><span class="lineNoCov"> 0 : Xapian::MSetIterator mi = matches.begin();</span>
+<span class="lineNum"> 102 </span><span class="lineNoCov"> 0 : if (mi == matches.end()) return Xapian::Query();</span>
+<span class="lineNum"> 103 </span><span class="lineNoCov"> 0 : Xapian::Document doc = mi.get_document();</span>
+<span class="lineNum"> 104 </span> :
+<span class="lineNum"> 105 </span> : // Return the query to get the list of similar documents
+<span class="lineNum"> 106 </span><span class="lineNoCov"> 0 : return Xapian::Query(Xapian::Query::OP_OR, doc.termlist_begin(), doc.termlist_end());</span>
+<span class="lineNum"> 107 </span> : }
+<span class="lineNum"> 108 </span> :
+<span class="lineNum"> 109 </span> : double Source::getDoubleValue(const std::string&amp; pkgname,
+<span class="lineNum"> 110 </span><span class="lineNoCov"> 0 : Xapian::valueno val_id) const</span>
+<span class="lineNum"> 111 </span> : {
+<span class="lineNum"> 112 </span><span class="lineNoCov"> 0 : Xapian::docid id = docidByName(pkgname);</span>
+<span class="lineNum"> 113 </span><span class="lineNoCov"> 0 : if (id == 0)</span>
+<span class="lineNum"> 114 </span><span class="lineNoCov"> 0 : return 0.0;</span>
+<span class="lineNum"> 115 </span><span class="lineNoCov"> 0 : Xapian::Document doc = db().get_document(id);</span>
+<span class="lineNum"> 116 </span><span class="lineNoCov"> 0 : string val = doc.get_value(val_id);</span>
+<span class="lineNum"> 117 </span><span class="lineNoCov"> 0 : if (val.empty())</span>
+<span class="lineNum"> 118 </span><span class="lineNoCov"> 0 : return 0.0;</span>
+<span class="lineNum"> 119 </span> : else
+<span class="lineNum"> 120 </span><span class="lineNoCov"> 0 : return Xapian::sortable_unserialise(val);</span>
+<span class="lineNum"> 121 </span> : }
+<span class="lineNum"> 122 </span> :
+<span class="lineNum"> 123 </span> : int Source::getIntValue(const std::string&amp; pkgname,
+<span class="lineNum"> 124 </span><span class="lineNoCov"> 0 : Xapian::valueno val_id) const</span>
+<span class="lineNum"> 125 </span> : {
+<span class="lineNum"> 126 </span><span class="lineNoCov"> 0 : Xapian::docid id = docidByName(pkgname);</span>
+<span class="lineNum"> 127 </span><span class="lineNoCov"> 0 : if (id == 0)</span>
+<span class="lineNum"> 128 </span><span class="lineNoCov"> 0 : return 0;</span>
+<span class="lineNum"> 129 </span><span class="lineNoCov"> 0 : Xapian::Document doc = db().get_document(id);</span>
+<span class="lineNum"> 130 </span><span class="lineNoCov"> 0 : string val = doc.get_value(val_id);</span>
+<span class="lineNum"> 131 </span><span class="lineNoCov"> 0 : if (val.empty())</span>
+<span class="lineNum"> 132 </span><span class="lineNoCov"> 0 : return 0;</span>
+<span class="lineNum"> 133 </span> : else
+<span class="lineNum"> 134 </span><span class="lineNoCov"> 0 : return (int)nearbyint(Xapian::sortable_unserialise(val));</span>
+<span class="lineNum"> 135 </span> : }
+<span class="lineNum"> 136 </span> :
+<span class="lineNum"> 137 </span> : }
+<span class="lineNum"> 138 </span> : }
+<span class="lineNum"> 139 </span><span class="lineCov"> 3 : }</span>
+<span class="lineNum"> 140 </span> :
+<span class="lineNum"> 141 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/core/xapian.h.gcov.html b/rep/ept/core/xapian.h.gcov.html
new file mode 100644
index 0000000..d38457e
--- /dev/null
+++ b/rep/ept/core/xapian.h.gcov.html
@@ -0,0 +1,456 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/core/xapian.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/core</a> - xapian.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">109</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">87.2 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">95</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- C++ -*-
+<span class="lineNum"> 2 </span> : #include &lt;xapian.h&gt;
+<span class="lineNum"> 3 </span> : #include &lt;ept/core/apt.h&gt;
+<span class="lineNum"> 4 </span> : #include &lt;wibble/regexp.h&gt;
+<span class="lineNum"> 5 </span> : #include &lt;wibble/sys/pipe.h&gt;
+<span class="lineNum"> 6 </span> : #include &lt;wibble/sys/exec.h&gt;
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : #ifndef EPT_XAPIAN_H
+<span class="lineNum"> 9 </span> : #define EPT_XAPIAN_H
+<span class="lineNum"> 10 </span> :
+<span class="lineNum"> 11 </span> : namespace ept {
+<span class="lineNum"> 12 </span> : namespace core {
+<span class="lineNum"> 13 </span> : namespace xapian {
+<span class="lineNum"> 14 </span> :
+<span class="lineNum"> 15 </span> : // Allocate value indexes for known values
+<span class="lineNum"> 16 </span> : const Xapian::valueno VAL_APT_INSTALLED_SIZE = 1;
+<span class="lineNum"> 17 </span> : const Xapian::valueno VAL_APT_PACKAGE_SIZE = 2;
+<span class="lineNum"> 18 </span> : const Xapian::valueno VAL_POPCON = 10;
+<span class="lineNum"> 19 </span> : const Xapian::valueno VAL_ITERATING_RATING = 20;
+<span class="lineNum"> 20 </span> : const Xapian::valueno VAL_ITERATING_FUNCTIONALITY = 21;
+<span class="lineNum"> 21 </span> : const Xapian::valueno VAL_ITERATING_USABILITY = 22;
+<span class="lineNum"> 22 </span> : const Xapian::valueno VAL_ITERATING_SECURITY = 23;
+<span class="lineNum"> 23 </span> : const Xapian::valueno VAL_ITERATING_PERFORMANCE = 24;
+<span class="lineNum"> 24 </span> : const Xapian::valueno VAL_ITERATING_QUALITY = 25;
+<span class="lineNum"> 25 </span> : const Xapian::valueno VAL_ITERATING_SUPPORT = 26;
+<span class="lineNum"> 26 </span> : const Xapian::valueno VAL_ITERATING_ADOPTION = 27;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : struct TagFilter : public Xapian::ExpandDecider
+<span class="lineNum"> 29 </span><span class="lineCov"> 8 : {</span>
+<span class="lineNum"> 30 </span><span class="lineCov"> 1760 : virtual bool operator()(const std::string &amp;term) const {</span>
+<span class="lineNum"> 31 </span><span class="lineCov"> 1760 : return term[0] == 'X' &amp;&amp; term[1] == 'T';</span>
+<span class="lineNum"> 32 </span> : }
+<span class="lineNum"> 33 </span> : };
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span><span class="lineCov"> 91 : struct List {</span>
+<span class="lineNum"> 36 </span> : char m_enqPlace[sizeof(Xapian::Enquire)];
+<span class="lineNum"> 37 </span> : mutable Xapian::MSet m_matches;
+<span class="lineNum"> 38 </span> : mutable Xapian::MSet::const_iterator m_iter;
+<span class="lineNum"> 39 </span> : mutable int m_pos;
+<span class="lineNum"> 40 </span> : typedef List Type;
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span> : static const size_t chunkSize = 20;
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span> : List head() const {
+<span class="lineNum"> 45 </span> : seek();
+<span class="lineNum"> 46 </span> : return *this;
+<span class="lineNum"> 47 </span> : }
+<span class="lineNum"> 48 </span> :
+<span class="lineNum"> 49 </span><span class="lineCov"> 15 : Token token() const {</span>
+<span class="lineNum"> 50 </span><span class="lineCov"> 15 : Token t;</span>
+<span class="lineNum"> 51 </span><span class="lineCov"> 15 : t._id = m_iter.get_document().get_data();</span>
+<span class="lineNum"> 52 </span><span class="lineNoCov"> 0 : return t;</span>
+<span class="lineNum"> 53 </span> : }
+<span class="lineNum"> 54 </span> :
+<span class="lineNum"> 55 </span> : bool operator&lt;( const List &amp;o ) const {
+<span class="lineNum"> 56 </span> : return token() &lt; o.token();
+<span class="lineNum"> 57 </span> : }
+<span class="lineNum"> 58 </span> :
+<span class="lineNum"> 59 </span><span class="lineCov"> 58 : void seek() const {</span>
+<span class="lineNum"> 60 </span><span class="lineCov"> 58 : if ( m_matches.size() == chunkSize &amp;&amp; m_iter == m_matches.end() ) {</span>
+<span class="lineNum"> 61 </span><span class="lineNoCov"> 0 : m_matches = enq().get_mset( m_pos, chunkSize );</span>
+<span class="lineNum"> 62 </span><span class="lineNoCov"> 0 : m_iter = m_matches.begin();</span>
+<span class="lineNum"> 63 </span><span class="lineNoCov"> 0 : m_pos += chunkSize;</span>
+<span class="lineNum"> 64 </span> : }
+<span class="lineNum"> 65 </span><span class="lineCov"> 58 : }</span>
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span><span class="lineCov"> 30 : bool empty() const {</span>
+<span class="lineNum"> 68 </span><span class="lineCov"> 30 : if ( m_pos == -1 )</span>
+<span class="lineNum"> 69 </span><span class="lineNoCov"> 0 : return true;</span>
+<span class="lineNum"> 70 </span><span class="lineCov"> 30 : seek();</span>
+<span class="lineNum"> 71 </span><span class="lineCov"> 30 : return m_matches.size() &lt; 30 &amp;&amp; m_iter == m_matches.end();</span>
+<span class="lineNum"> 72 </span> : }
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span><span class="lineCov"> 28 : List tail() const {</span>
+<span class="lineNum"> 75 </span><span class="lineCov"> 28 : List t = *this;</span>
+<span class="lineNum"> 76 </span><span class="lineCov"> 28 : t.seek();</span>
+<span class="lineNum"> 77 </span><span class="lineCov"> 28 : t.m_iter ++;</span>
+<span class="lineNum"> 78 </span><span class="lineNoCov"> 0 : return t;</span>
+<span class="lineNum"> 79 </span> : }
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span><span class="lineCov"> 6 : Xapian::Enquire const &amp;enq() const {</span>
+<span class="lineNum"> 82 </span><span class="lineCov"> 6 : return *reinterpret_cast&lt; Xapian::Enquire const * &gt;( m_enqPlace );</span>
+<span class="lineNum"> 83 </span> : }
+<span class="lineNum"> 84 </span> :
+<span class="lineNum"> 85 </span><span class="lineCov"> 3 : List( Xapian::Enquire _enq )</span>
+<span class="lineNum"> 86 </span><span class="lineCov"> 3 : {</span>
+<span class="lineNum"> 87 </span><span class="lineCov"> 3 : Xapian::Enquire *e = new (m_enqPlace) Xapian::Enquire( _enq );</span>
+<span class="lineNum"> 88 </span><span class="lineCov"> 3 : assert_eq( e, &amp;enq() );</span>
+<span class="lineNum"> 89 </span><span class="lineCov"> 6 : m_matches = enq().get_mset( 0, chunkSize );</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 3 : m_iter = m_matches.begin();</span>
+<span class="lineNum"> 91 </span><span class="lineCov"> 3 : m_pos = chunkSize;</span>
+<span class="lineNum"> 92 </span><span class="lineCov"> 3 : }</span>
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span> : List() {}
+<span class="lineNum"> 95 </span> : };
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span><span class="lineCov"> 13 : struct Query {</span>
+<span class="lineNum"> 98 </span> : Xapian::Database *m_db;
+<span class="lineNum"> 99 </span> : Xapian::Enquire m_enq;
+<span class="lineNum"> 100 </span> : Xapian::Stem m_stem;
+<span class="lineNum"> 101 </span> : typedef std::set&lt; std::string &gt; Terms;
+<span class="lineNum"> 102 </span> : Terms m_include, m_exclude;
+<span class="lineNum"> 103 </span> : int m_cutoff;
+<span class="lineNum"> 104 </span> : bool m_expand;
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span><span class="lineCov"> 5 : void setQualityCutoff( int c ) {</span>
+<span class="lineNum"> 107 </span><span class="lineCov"> 5 : m_cutoff = c;</span>
+<span class="lineNum"> 108 </span><span class="lineCov"> 5 : }</span>
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span><span class="lineCov"> 5 : void setExpand( bool e ) { m_expand = e; }</span>
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span><span class="lineCov"> 9 : Query( Xapian::Database &amp;e ) : m_db( &amp;e ), m_enq( e ) {</span>
+<span class="lineNum"> 113 </span><span class="lineCov"> 9 : m_cutoff = 50;</span>
+<span class="lineNum"> 114 </span><span class="lineCov"> 9 : m_expand = true;</span>
+<span class="lineNum"> 115 </span><span class="lineCov"> 9 : }</span>
+<span class="lineNum"> 116 </span> :
+<span class="lineNum"> 117 </span><span class="lineCov"> 5 : wibble::Tokenizer queryTokenizer( std::string q ) const {</span>
+<span class="lineNum"> 118 </span><span class="lineCov"> 5 : return wibble::Tokenizer( q, &quot;[A-Za-z0-9_+:-]+&quot;, REG_EXTENDED );</span>
+<span class="lineNum"> 119 </span> : }
+<span class="lineNum"> 120 </span> :
+<span class="lineNum"> 121 </span> : template&lt; typename Out &gt;
+<span class="lineNum"> 122 </span><span class="lineCov"> 5 : void tokenizeQuery( std::string q, Out o ) const</span>
+<span class="lineNum"> 123 </span> : {
+<span class="lineNum"> 124 </span><span class="lineCov"> 5 : wibble::Tokenizer tok = queryTokenizer( q );</span>
+<span class="lineNum"> 125 </span><span class="lineCov"> 15 : for (wibble::Tokenizer::const_iterator i = tok.begin(); i != tok.end(); ++i )</span>
+<span class="lineNum"> 126 </span> : {
+<span class="lineNum"> 127 </span><span class="lineCov"> 10 : if ( (*i).find( &quot;::&quot; ) != std::string::npos ) { // assume tag</span>
+<span class="lineNum"> 128 </span><span class="lineNoCov"> 0 : *o++ = (&quot;XT&quot; + *i);</span>
+<span class="lineNum"> 129 </span> : } else {
+<span class="lineNum"> 130 </span><span class="lineCov"> 10 : std::string t = wibble::str::tolower(*i);</span>
+<span class="lineNum"> 131 </span><span class="lineCov"> 10 : std::string s = m_stem(t);</span>
+<span class="lineNum"> 132 </span><span class="lineCov"> 10 : *o++ = t;</span>
+<span class="lineNum"> 133 </span><span class="lineCov"> 10 : if (s != t)</span>
+<span class="lineNum"> 134 </span><span class="lineCov"> 5 : *o++ = (&quot;Z&quot; + s);</span>
+<span class="lineNum"> 135 </span> : }
+<span class="lineNum"> 136 </span> : }
+<span class="lineNum"> 137 </span><span class="lineCov"> 5 : }</span>
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> : template&lt; typename Out &gt;
+<span class="lineNum"> 140 </span><span class="lineCov"> 4 : void expand( Out o ) const</span>
+<span class="lineNum"> 141 </span> : {
+<span class="lineNum"> 142 </span><span class="lineCov"> 4 : Xapian::RSet rset;</span>
+<span class="lineNum"> 143 </span> : // Get the top 5 results as 'good ones' to compute the search expansion
+<span class="lineNum"> 144 </span><span class="lineCov"> 4 : Xapian::MSet mset = m_enq.get_mset(0, 5);</span>
+<span class="lineNum"> 145 </span><span class="lineCov"> 24 : for ( Xapian::MSet::iterator i = mset.begin(); i != mset.end(); ++i )</span>
+<span class="lineNum"> 146 </span><span class="lineCov"> 24 : rset.add_document(i);</span>
+<span class="lineNum"> 147 </span> : // Get the expanded set, only expanding the query with tag names
+<span class="lineNum"> 148 </span><span class="lineCov"> 4 : TagFilter tagf;</span>
+<span class="lineNum"> 149 </span><span class="lineCov"> 4 : Xapian::ESet eset = m_enq.get_eset(5, rset, &amp;tagf);</span>
+<span class="lineNum"> 150 </span><span class="lineCov"> 4 : for ( Xapian::ESetIterator i = eset.begin(); i != eset.end(); ++i )</span>
+<span class="lineNum"> 151 </span><span class="lineCov"> 4 : *o++ = *i;</span>
+<span class="lineNum"> 152 </span><span class="lineCov"> 4 : }</span>
+<span class="lineNum"> 153 </span> :
+<span class="lineNum"> 154 </span><span class="lineCov"> 8 : void updateEnquire() {</span>
+<span class="lineNum"> 155 </span> : // set up query now
+<span class="lineNum"> 156 </span> : Xapian::Query inc( Xapian::Query::OP_OR,
+<span class="lineNum"> 157 </span> : m_include.begin(),
+<span class="lineNum"> 158 </span><span class="lineCov"> 8 : m_include.end() ),</span>
+<span class="lineNum"> 159 </span> : exc( Xapian::Query::OP_OR,
+<span class="lineNum"> 160 </span> : m_exclude.begin(),
+<span class="lineNum"> 161 </span><span class="lineCov"> 8 : m_exclude.end() ),</span>
+<span class="lineNum"> 162 </span><span class="lineCov"> 8 : query( Xapian::Query::OP_AND_NOT, inc, exc );</span>
+<span class="lineNum"> 163 </span> :
+<span class="lineNum"> 164 </span><span class="lineCov"> 8 : m_enq.set_query( query );</span>
+<span class="lineNum"> 165 </span> :
+<span class="lineNum"> 166 </span><span class="lineCov"> 8 : if ( m_expand ) {</span>
+<span class="lineNum"> 167 </span><span class="lineCov"> 4 : m_expand = false;</span>
+<span class="lineNum"> 168 </span><span class="lineCov"> 4 : expand( std::inserter( m_include, m_include.begin() ) );</span>
+<span class="lineNum"> 169 </span><span class="lineCov"> 4 : updateEnquire();</span>
+<span class="lineNum"> 170 </span><span class="lineCov"> 4 : m_expand = true;</span>
+<span class="lineNum"> 171 </span><span class="lineCov"> 4 : return;</span>
+<span class="lineNum"> 172 </span> : }
+<span class="lineNum"> 173 </span> :
+<span class="lineNum"> 174 </span><span class="lineCov"> 4 : Xapian::MSet first = m_enq.get_mset(0, 1, 0, 0, 0);</span>
+<span class="lineNum"> 175 </span><span class="lineCov"> 4 : Xapian::MSetIterator ifirst = first.begin();</span>
+<span class="lineNum"> 176 </span><span class="lineCov"> 4 : if ( ifirst != first.end() ) {</span>
+<span class="lineNum"> 177 </span><span class="lineCov"> 4 : Xapian::percent cutoff = ifirst.get_percent() * m_cutoff / 100;</span>
+<span class="lineNum"> 178 </span><span class="lineCov"> 4 : m_enq.set_cutoff(cutoff);</span>
+<span class="lineNum"> 179 </span><span class="lineCov"> 4 : }</span>
+<span class="lineNum"> 180 </span> : }
+<span class="lineNum"> 181 </span> :
+<span class="lineNum"> 182 </span><span class="lineCov"> 3 : List results() {</span>
+<span class="lineNum"> 183 </span><span class="lineCov"> 3 : updateEnquire();</span>
+<span class="lineNum"> 184 </span><span class="lineCov"> 3 : return List( m_enq );</span>
+<span class="lineNum"> 185 </span> : }
+<span class="lineNum"> 186 </span> :
+<span class="lineNum"> 187 </span> : std::map&lt; std::string, int &gt; relevantTags( int n = 30 ) {
+<span class="lineNum"> 188 </span> : updateEnquire();
+<span class="lineNum"> 189 </span> : std::map&lt; std::string, int &gt; relev;
+<span class="lineNum"> 190 </span> : Xapian::RSet rset;
+<span class="lineNum"> 191 </span> : Xapian::MSet mset = m_enq.get_mset(0, 100);
+<span class="lineNum"> 192 </span> : for ( Xapian::MSet::iterator i = mset.begin(); i != mset.end(); ++i )
+<span class="lineNum"> 193 </span> : rset.add_document(i);
+<span class="lineNum"> 194 </span> : // Get the expanded set, only expanding the query with tag names
+<span class="lineNum"> 195 </span> : TagFilter tagf;
+<span class="lineNum"> 196 </span> : Xapian::ESet eset = m_enq.get_eset(n, rset, &amp;tagf);
+<span class="lineNum"> 197 </span> : for ( Xapian::ESetIterator i = eset.begin(); i != eset.end(); ++i )
+<span class="lineNum"> 198 </span> : relev.insert( relev.begin(),
+<span class="lineNum"> 199 </span> : std::make_pair(
+<span class="lineNum"> 200 </span> : std::string( *i, 2, std::string::npos ),
+<span class="lineNum"> 201 </span> : i.get_weight() ) );
+<span class="lineNum"> 202 </span> : return relev;
+<span class="lineNum"> 203 </span> : }
+<span class="lineNum"> 204 </span> :
+<span class="lineNum"> 205 </span><span class="lineCov"> 5 : void addTerms( std::string t, bool partial = false, bool exclude = false ) {</span>
+<span class="lineNum"> 206 </span><span class="lineCov"> 5 : Terms &amp;to = exclude ? m_exclude : m_include;</span>
+<span class="lineNum"> 207 </span><span class="lineCov"> 5 : std::vector&lt; std::string &gt; tok;</span>
+<span class="lineNum"> 208 </span><span class="lineCov"> 5 : tokenizeQuery( t, std::back_inserter( tok ) );</span>
+<span class="lineNum"> 209 </span><span class="lineCov"> 5 : if ( partial ) {</span>
+<span class="lineNum"> 210 </span><span class="lineNoCov"> 0 : if ( tok.back().size() == 1 ) {</span>
+<span class="lineNum"> 211 </span><span class="lineNoCov"> 0 : tok.pop_back();</span>
+<span class="lineNum"> 212 </span> : } else {
+<span class="lineNum"> 213 </span> : std::copy(
+<span class="lineNum"> 214 </span> : m_db-&gt;allterms_begin( tok.back() ),
+<span class="lineNum"> 215 </span> : m_db-&gt;allterms_end( tok.back() ),
+<span class="lineNum"> 216 </span><span class="lineNoCov"> 0 : std::back_inserter( tok ) );</span>
+<span class="lineNum"> 217 </span> : }
+<span class="lineNum"> 218 </span> : }
+<span class="lineNum"> 219 </span><span class="lineCov"> 5 : std::copy( tok.begin(), tok.end(), std::inserter( to, to.begin() ) );</span>
+<span class="lineNum"> 220 </span><span class="lineCov"> 5 : }</span>
+<span class="lineNum"> 221 </span> :
+<span class="lineNum"> 222 </span> : void addTerms( const Terms &amp;t, bool exclude = false ) {
+<span class="lineNum"> 223 </span> : Terms &amp;to = exclude ? m_exclude : m_include;
+<span class="lineNum"> 224 </span> : std::copy( t.begin(), t.end(), std::inserter( to, to.begin() ) );
+<span class="lineNum"> 225 </span> : }
+<span class="lineNum"> 226 </span> :
+<span class="lineNum"> 227 </span> : };
+<span class="lineNum"> 228 </span> :
+<span class="lineNum"> 229 </span> : struct Source
+<span class="lineNum"> 230 </span><span class="lineCov"> 4 : {</span>
+<span class="lineNum"> 231 </span> : protected:
+<span class="lineNum"> 232 </span> : mutable Xapian::Database m_db;
+<span class="lineNum"> 233 </span> : Xapian::Stem m_stem;
+<span class="lineNum"> 234 </span> : mutable bool m_opened;
+<span class="lineNum"> 235 </span> :
+<span class="lineNum"> 236 </span> : /// Return a lowercased copy of the string
+<span class="lineNum"> 237 </span> : static std::string toLower(const std::string&amp; str);
+<span class="lineNum"> 238 </span> :
+<span class="lineNum"> 239 </span> : /**
+<span class="lineNum"> 240 </span> : * Add normalised tokens computed from the string to the document doc.
+<span class="lineNum"> 241 </span> : *
+<span class="lineNum"> 242 </span> : * pos is used as a sequence generator for entering the token position in
+<span class="lineNum"> 243 </span> : * the document.
+<span class="lineNum"> 244 </span> : */
+<span class="lineNum"> 245 </span> : void normalize_and_add(Xapian::Document&amp; doc, const std::string&amp; term,
+<span class="lineNum"> 246 </span> : int&amp; pos) const;
+<span class="lineNum"> 247 </span> :
+<span class="lineNum"> 248 </span> : public:
+<span class="lineNum"> 249 </span> : Source();
+<span class="lineNum"> 250 </span> :
+<span class="lineNum"> 251 </span> : /// Access the Xapian database
+<span class="lineNum"> 252 </span><span class="lineCov"> 9 : Xapian::Database&amp; db() {</span>
+<span class="lineNum"> 253 </span><span class="lineCov"> 9 : open();</span>
+<span class="lineNum"> 254 </span><span class="lineCov"> 9 : return m_db;</span>
+<span class="lineNum"> 255 </span> : }
+<span class="lineNum"> 256 </span> :
+<span class="lineNum"> 257 </span> : /// Access the Xapian database
+<span class="lineNum"> 258 </span><span class="lineNoCov"> 0 : const Xapian::Database&amp; db() const {</span>
+<span class="lineNum"> 259 </span><span class="lineNoCov"> 0 : open();</span>
+<span class="lineNum"> 260 </span><span class="lineNoCov"> 0 : return m_db;</span>
+<span class="lineNum"> 261 </span> : }
+<span class="lineNum"> 262 </span> :
+<span class="lineNum"> 263 </span> : void open() const;
+<span class="lineNum"> 264 </span> : void invalidate() {
+<span class="lineNum"> 265 </span> : m_db = Xapian::Database();
+<span class="lineNum"> 266 </span> : m_opened = false;
+<span class="lineNum"> 267 </span> : }
+<span class="lineNum"> 268 </span> :
+<span class="lineNum"> 269 </span> : /// Timestamp of when the Xapian database was last updated
+<span class="lineNum"> 270 </span> : time_t timestamp() const;
+<span class="lineNum"> 271 </span> :
+<span class="lineNum"> 272 </span> : void updateLeniently( AptDatabase &amp;apt, OpProgress *op = 0 ) {
+<span class="lineNum"> 273 </span> : if (apt.timestamp() - timestamp() &gt; 86400 * 8) // a little over a week
+<span class="lineNum"> 274 </span> : update( op );
+<span class="lineNum"> 275 </span> : }
+<span class="lineNum"> 276 </span> :
+<span class="lineNum"> 277 </span> : void update( OpProgress *op = 0 ) {
+<span class="lineNum"> 278 </span> : if ( !op )
+<span class="lineNum"> 279 </span> : op = new OpProgress();
+<span class="lineNum"> 280 </span> :
+<span class="lineNum"> 281 </span> : wibble::exception::AddContext _ctx( &quot;Rebuilding Xapian database.&quot; );
+<span class="lineNum"> 282 </span> : int outfd;
+<span class="lineNum"> 283 </span> : std::string op_str;
+<span class="lineNum"> 284 </span> :
+<span class="lineNum"> 285 </span> : wibble::sys::Exec ex( &quot;update-apt-xapian-index&quot; );
+<span class="lineNum"> 286 </span> : ex.args.push_back( &quot;--batch-mode&quot; );
+<span class="lineNum"> 287 </span> : ex.searchInPath = true;
+<span class="lineNum"> 288 </span> : ex.forkAndRedirect( 0, &amp;outfd, 0 );
+<span class="lineNum"> 289 </span> :
+<span class="lineNum"> 290 </span> : wibble::sys::Pipe monit( outfd );
+<span class="lineNum"> 291 </span> : while ( !monit.eof() ) {
+<span class="lineNum"> 292 </span> : std::string line = monit.nextLine();
+<span class="lineNum"> 293 </span> : if ( line.empty() ) {
+<span class="lineNum"> 294 </span> : usleep( 100000 );
+<span class="lineNum"> 295 </span> : continue;
+<span class="lineNum"> 296 </span> : }
+<span class="lineNum"> 297 </span> : std::cerr &lt;&lt; &quot;got : &quot; &lt;&lt; line &lt;&lt; std::endl;
+<span class="lineNum"> 298 </span> : if ( wibble::str::startsWith( line, &quot;begin: &quot; ) ) {
+<span class="lineNum"> 299 </span> : op_str = std::string( line, 7, std::string::npos );
+<span class="lineNum"> 300 </span> : op-&gt;OverallProgress( 0, 100, 100, op_str );
+<span class="lineNum"> 301 </span> :
+<span class="lineNum"> 302 </span> : } else if ( wibble::str::startsWith( line, &quot;done: &quot; ) ) {
+<span class="lineNum"> 303 </span> : op-&gt;Done();
+<span class="lineNum"> 304 </span> : } else if ( wibble::str::startsWith( line, &quot;progress: &quot; ) ) {
+<span class="lineNum"> 305 </span> : wibble::ERegexp re( &quot;progress: ([0-9]+)/([0-9]+)&quot;, 3 );
+<span class="lineNum"> 306 </span> : if ( re.match( line ) ) {
+<span class="lineNum"> 307 </span> : assert_eq( re[2], &quot;100&quot; );
+<span class="lineNum"> 308 </span> : op-&gt;OverallProgress( atoi( re[1].c_str() ), 100, 100, op_str );
+<span class="lineNum"> 309 </span> : }
+<span class="lineNum"> 310 </span> : }
+<span class="lineNum"> 311 </span> : }
+<span class="lineNum"> 312 </span> : ex.waitForSuccess();
+<span class="lineNum"> 313 </span> : invalidate();
+<span class="lineNum"> 314 </span> : }
+<span class="lineNum"> 315 </span> :
+<span class="lineNum"> 316 </span> : /// Returns true if the index has data
+<span class="lineNum"> 317 </span> : bool hasData() const { return timestamp() &gt; 0; }
+<span class="lineNum"> 318 </span> :
+<span class="lineNum"> 319 </span> : Query query( const std::string &amp;s,
+<span class="lineNum"> 320 </span> : bool expand = true,
+<span class="lineNum"> 321 </span><span class="lineCov"> 5 : int qualityCutoff = 50 )</span>
+<span class="lineNum"> 322 </span> : {
+<span class="lineNum"> 323 </span><span class="lineCov"> 5 : Query q( db() );</span>
+<span class="lineNum"> 324 </span><span class="lineCov"> 5 : q.setQualityCutoff( qualityCutoff );</span>
+<span class="lineNum"> 325 </span><span class="lineCov"> 5 : q.setExpand( expand );</span>
+<span class="lineNum"> 326 </span><span class="lineCov"> 5 : q.addTerms( s );</span>
+<span class="lineNum"> 327 </span><span class="lineNoCov"> 0 : return q;</span>
+<span class="lineNum"> 328 </span> : }
+<span class="lineNum"> 329 </span> :
+<span class="lineNum"> 330 </span> : Query partialQuery( const std::string &amp;s ) {
+<span class="lineNum"> 331 </span> : Query q( db() );
+<span class="lineNum"> 332 </span> : q.addTerms( s, true ); // partial
+<span class="lineNum"> 333 </span> : return q;
+<span class="lineNum"> 334 </span> : }
+<span class="lineNum"> 335 </span> :
+<span class="lineNum"> 336 </span> : /// Returns true if the index is older than the Apt database information
+<span class="lineNum"> 337 </span> : // bool needsRebuild(apt::Apt&amp; apt);
+<span class="lineNum"> 338 </span> :
+<span class="lineNum"> 339 </span> : Xapian::docid docidByName(const std::string&amp; pkgname) const;
+<span class="lineNum"> 340 </span> :
+<span class="lineNum"> 341 </span> : /**
+<span class="lineNum"> 342 </span> : * Tokenize the string and build an OR query with the resulting keywords
+<span class="lineNum"> 343 </span> : */
+<span class="lineNum"> 344 </span> : Xapian::Query makeORQuery(const std::string&amp; keywords) const;
+<span class="lineNum"> 345 </span> :
+<span class="lineNum"> 346 </span> : /**
+<span class="lineNum"> 347 </span> : * Tokenize the string and build an OR query with the resulting keywords.
+<span class="lineNum"> 348 </span> : *
+<span class="lineNum"> 349 </span> : * The last token in keywords is considered to be typed only partially, to
+<span class="lineNum"> 350 </span> : * implement proper search-as-you-type.
+<span class="lineNum"> 351 </span> : */
+<span class="lineNum"> 352 </span> : Xapian::Query makePartialORQuery(const std::string&amp; keywords) const;
+<span class="lineNum"> 353 </span> :
+<span class="lineNum"> 354 </span> : /**
+<span class="lineNum"> 355 </span> : * Build a query with the given keywords, specified as iterators of strings
+<span class="lineNum"> 356 </span> : */
+<span class="lineNum"> 357 </span> : template&lt;typename ITER&gt;
+<span class="lineNum"> 358 </span> : Xapian::Query makeORQuery(const ITER&amp; begin, const ITER&amp; end) const
+<span class="lineNum"> 359 </span> : {
+<span class="lineNum"> 360 </span> : return Xapian::Query(Xapian::Query::OP_OR, begin, end);
+<span class="lineNum"> 361 </span> : }
+<span class="lineNum"> 362 </span> :
+<span class="lineNum"> 363 </span> : /// Return a list of tag-based terms that can be used to expand an OR query
+<span class="lineNum"> 364 </span> : std::vector&lt;std::string&gt; expand(Xapian::Enquire&amp; enq) const;
+<span class="lineNum"> 365 </span> :
+<span class="lineNum"> 366 </span> : // std::vector&lt;std::string&gt; similar(const std::string&amp; pkg);
+<span class="lineNum"> 367 </span> :
+<span class="lineNum"> 368 </span> : /**
+<span class="lineNum"> 369 </span> : * Create a query to look for packages similar to the given one
+<span class="lineNum"> 370 </span> : */
+<span class="lineNum"> 371 </span> : Xapian::Query makeRelatedQuery(const std::string&amp; pkgname) const;
+<span class="lineNum"> 372 </span> :
+<span class="lineNum"> 373 </span> : /**
+<span class="lineNum"> 374 </span> : * Get the integer value for
+<span class="lineNum"> 375 </span> : */
+<span class="lineNum"> 376 </span> : double getDoubleValue(const std::string&amp; pkgname,
+<span class="lineNum"> 377 </span> : Xapian::valueno val_id) const;
+<span class="lineNum"> 378 </span> :
+<span class="lineNum"> 379 </span> : /**
+<span class="lineNum"> 380 </span> : * Get the integer value for
+<span class="lineNum"> 381 </span> : */
+<span class="lineNum"> 382 </span> : int getIntValue(const std::string&amp; pkgname, Xapian::valueno val_id) const;
+<span class="lineNum"> 383 </span> : };
+<span class="lineNum"> 384 </span> :
+<span class="lineNum"> 385 </span> : }
+<span class="lineNum"> 386 </span> : }
+<span class="lineNum"> 387 </span> : }
+<span class="lineNum"> 388 </span> :
+<span class="lineNum"> 389 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/core/xapian.test.h.gcov.html b/rep/ept/core/xapian.test.h.gcov.html
new file mode 100644
index 0000000..17fc9dd
--- /dev/null
+++ b/rep/ept/core/xapian.test.h.gcov.html
@@ -0,0 +1,141 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/core/xapian.test.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/core</a> - xapian.test.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">36</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">36</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- C++ -*-
+<span class="lineNum"> 2 </span> : #include &lt;ept/test.h&gt;
+<span class="lineNum"> 3 </span> : #include &lt;ept/core/list.h&gt;
+<span class="lineNum"> 4 </span> : #include &lt;ept/core/xapian.h&gt;
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : // TODO temporary, for building test database
+<span class="lineNum"> 7 </span> : #include &lt;ept/apt/apt.h&gt;
+<span class="lineNum"> 8 </span> : #include &lt;ept/textsearch/textsearch.h&gt;
+<span class="lineNum"> 9 </span> : #include &lt;ept/textsearch/maint/path.h&gt;
+<span class="lineNum"> 10 </span> :
+<span class="lineNum"> 11 </span> : using namespace ept;
+<span class="lineNum"> 12 </span> : using namespace core;
+<span class="lineNum"> 13 </span> :
+<span class="lineNum"> 14 </span> : namespace ept {
+<span class="lineNum"> 15 </span> : namespace textsearch {
+<span class="lineNum"> 16 </span> : extern size_t max_index;
+<span class="lineNum"> 17 </span> : }
+<span class="lineNum"> 18 </span> : }
+<span class="lineNum"> 19 </span> :
+<span class="lineNum"> 20 </span><span class="lineCov"> 4 : struct XapianTestEnvironment : AptTestEnvironment {</span>
+<span class="lineNum"> 21 </span> : textsearch::Path::OverrideIndexDir oid;
+<span class="lineNum"> 22 </span> : textsearch::TextSearch textsearch;
+<span class="lineNum"> 23 </span> : apt::Apt apt;
+<span class="lineNum"> 24 </span><span class="lineCov"> 4 : XapianTestEnvironment()</span>
+<span class="lineNum"> 25 </span><span class="lineCov"> 4 : : oid( TEST_ENV_DIR &quot;xapian&quot; )</span>
+<span class="lineNum"> 26 </span> : {
+<span class="lineNum"> 27 </span><span class="lineCov"> 4 : ept::textsearch::max_index = 1000;</span>
+<span class="lineNum"> 28 </span><span class="lineCov"> 4 : textsearch.rebuildIfNeeded(apt);</span>
+<span class="lineNum"> 29 </span><span class="lineCov"> 4 : }</span>
+<span class="lineNum"> 30 </span> : };
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span><span class="lineCov"> 4 : struct TestXapian : XapianTestEnvironment {</span>
+<span class="lineNum"> 33 </span> : xapian::Source xap;
+<span class="lineNum"> 34 </span> : xapian::Query query;
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span><span class="lineCov"> 4 : TestXapian() : query( xap.db() )</span>
+<span class="lineNum"> 37 </span> : {
+<span class="lineNum"> 38 </span><span class="lineCov"> 4 : query = xap.query( &quot;sgml tool&quot; );</span>
+<span class="lineNum"> 39 </span><span class="lineCov"> 4 : }</span>
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span><span class="lineCov"> 1 : Test enquire() {</span>
+<span class="lineNum"> 42 </span><span class="lineCov"> 1 : query.updateEnquire();</span>
+<span class="lineNum"> 43 </span><span class="lineCov"> 1 : Xapian::MSet matches = query.m_enq.get_mset(0, 100);</span>
+<span class="lineNum"> 44 </span><span class="lineCov"> 1 : assert( matches.size() &gt; 0 );</span>
+<span class="lineNum"> 45 </span><span class="lineCov"> 2 : assert_eq( matches.begin().get_document().get_data(), &quot;psgml&quot; );</span>
+<span class="lineNum"> 46 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 47 </span> :
+<span class="lineNum"> 48 </span><span class="lineCov"> 1 : Test listCount() {</span>
+<span class="lineNum"> 49 </span><span class="lineCov"> 1 : xapian::List l( query.results() );</span>
+<span class="lineNum"> 50 </span><span class="lineCov"> 1 : Xapian::MSet matches = query.m_enq.get_mset(0, 6000);</span>
+<span class="lineNum"> 51 </span><span class="lineCov"> 1 : assert_eq( list::count( l ), matches.size() );</span>
+<span class="lineNum"> 52 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 53 </span> :
+<span class="lineNum"> 54 </span> : template&lt; typename List &gt;
+<span class="lineNum"> 55 </span><span class="lineCov"> 1 : void checkXapianList( List l, Xapian::MSet m ) {</span>
+<span class="lineNum"> 56 </span><span class="lineCov"> 1 : Xapian::MSet::const_iterator i = m.begin();</span>
+<span class="lineNum"> 57 </span><span class="lineCov"> 16 : while (! l.empty() ) {</span>
+<span class="lineNum"> 58 </span><span class="lineCov"> 14 : assert_eq( l.token().package(), i.get_document().get_data() );</span>
+<span class="lineNum"> 59 </span><span class="lineCov"> 14 : l = l.tail();</span>
+<span class="lineNum"> 60 </span><span class="lineCov"> 15 : ++ i;</span>
+<span class="lineNum"> 61 </span> : }
+<span class="lineNum"> 62 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 63 </span> :
+<span class="lineNum"> 64 </span><span class="lineCov"> 1 : Test list() {</span>
+<span class="lineNum"> 65 </span><span class="lineCov"> 1 : xapian::List l( query.results() );</span>
+<span class="lineNum"> 66 </span><span class="lineCov"> 1 : Xapian::MSet matches = query.m_enq.get_mset(0, 6000);</span>
+<span class="lineNum"> 67 </span><span class="lineCov"> 1 : checkXapianList( l, matches );</span>
+<span class="lineNum"> 68 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 69 </span> :
+<span class="lineNum"> 70 </span><span class="lineCov"> 1 : Test checkQuery() {</span>
+<span class="lineNum"> 71 </span><span class="lineCov"> 1 : assert_eq( xap.query( &quot;sgml tool&quot; ).results().token().package(), &quot;psgml&quot; );</span>
+<span class="lineNum"> 72 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span> : };
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/debtags.cc.gcov.html b/rep/ept/debtags/debtags.cc.gcov.html
new file mode 100644
index 0000000..a924a43
--- /dev/null
+++ b/rep/ept/debtags/debtags.cc.gcov.html
@@ -0,0 +1,317 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/debtags.cc</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/debtags</a> - debtags.cc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">81</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">48.1 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">39</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /** -*- C++ -*-
+<span class="lineNum"> 2 </span> : * @file
+<span class="lineNum"> 3 </span> : * @author Enrico Zini (enrico) &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 4 </span> : */
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : /*
+<span class="lineNum"> 7 </span> : * System tag database
+<span class="lineNum"> 8 </span> : *
+<span class="lineNum"> 9 </span> : * Copyright (C) 2003-2008 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 12 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 13 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 14 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 19 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 20 </span> : *
+<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 22 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 24 </span> : */
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;ept/debtags/debtags.h&gt;
+<span class="lineNum"> 27 </span> : #include &lt;ept/debtags/maint/path.h&gt;
+<span class="lineNum"> 28 </span> : #include &lt;ept/debtags/maint/serializer.h&gt;
+<span class="lineNum"> 29 </span> : #include &lt;ept/debtags/maint/debtagsindexer.h&gt;
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : #include &lt;tagcoll/input/stdio.h&gt;
+<span class="lineNum"> 32 </span> : #include &lt;tagcoll/TextFormat.h&gt;
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span> : #include &lt;wibble/sys/fs.h&gt;
+<span class="lineNum"> 35 </span> : #include &lt;wibble/string.h&gt;
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : #include &lt;iostream&gt;
+<span class="lineNum"> 38 </span> : #include &lt;sstream&gt;
+<span class="lineNum"> 39 </span> :
+<span class="lineNum"> 40 </span> : #include &lt;sys/wait.h&gt; // WIFEXITED WEXITSTATUS
+<span class="lineNum"> 41 </span> : #include &lt;sys/types.h&gt; // getpwuid, stat, mkdir, getuid
+<span class="lineNum"> 42 </span> : #include &lt;sys/stat.h&gt; // stat, mkdir
+<span class="lineNum"> 43 </span> : #include &lt;pwd.h&gt; // getpwuid
+<span class="lineNum"> 44 </span> : #include &lt;unistd.h&gt; // stat, getuid
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span> : using namespace std;
+<span class="lineNum"> 48 </span> : using namespace tagcoll;
+<span class="lineNum"> 49 </span> : using namespace wibble;
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> : namespace ept {
+<span class="lineNum"> 52 </span> : namespace debtags {
+<span class="lineNum"> 53 </span> :
+<span class="lineNum"> 54 </span><span class="lineCov"> 10 : Debtags::Debtags(bool editable)</span>
+<span class="lineNum"> 55 </span><span class="lineCov"> 10 : : m_coll(m_rocoll)</span>
+<span class="lineNum"> 56 </span> : {
+<span class="lineNum"> 57 </span><span class="lineCov"> 10 : std::string tagfname;</span>
+<span class="lineNum"> 58 </span><span class="lineCov"> 10 : std::string idxfname;</span>
+<span class="lineNum"> 59 </span> :
+<span class="lineNum"> 60 </span><span class="lineCov"> 10 : if (!DebtagsIndexer::obtainWorkingDebtags(vocabulary(), tagfname, idxfname))</span>
+<span class="lineNum"> 61 </span> : {
+<span class="lineNum"> 62 </span><span class="lineCov"> 1 : m_timestamp = 0;</span>
+<span class="lineNum"> 63 </span><span class="lineCov"> 1 : return;</span>
+<span class="lineNum"> 64 </span> : } else {
+<span class="lineNum"> 65 </span><span class="lineCov"> 9 : m_timestamp = Path::timestamp(idxfname);</span>
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span><span class="lineCov"> 9 : mastermmap.init(idxfname);</span>
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span> : // Initialize the readonly index
+<span class="lineNum"> 70 </span><span class="lineCov"> 9 : m_pkgid.init(mastermmap, 0);</span>
+<span class="lineNum"> 71 </span><span class="lineCov"> 9 : m_rocoll.init(mastermmap, 1, 2);</span>
+<span class="lineNum"> 72 </span> : }
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span> : // Initialize the patch collection layer
+<span class="lineNum"> 75 </span><span class="lineCov"> 9 : rcdir = Path::debtagsUserSourceDir();</span>
+<span class="lineNum"> 76 </span> :
+<span class="lineNum"> 77 </span><span class="lineCov"> 9 : string patchFile = str::joinpath(rcdir, &quot;patch&quot;);</span>
+<span class="lineNum"> 78 </span><span class="lineCov"> 18 : if (Path::access(patchFile, F_OK) == 0)</span>
+<span class="lineNum"> 79 </span> : {
+<span class="lineNum"> 80 </span><span class="lineNoCov"> 0 : input::Stdio in(patchFile);</span>
+<span class="lineNum"> 81 </span><span class="lineNoCov"> 0 : PatchList&lt;int, int&gt; patch;</span>
+<span class="lineNum"> 82 </span><span class="lineNoCov"> 0 : textformat::parsePatch(in, patchStringToInt(m_pkgid, vocabulary(), inserter(patch)));</span>
+<span class="lineNum"> 83 </span><span class="lineNoCov"> 0 : m_coll.setChanges(patch);</span>
+<span class="lineNum"> 84 </span><span class="lineCov"> 9 : }</span>
+<span class="lineNum"> 85 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 86 </span> :
+<span class="lineNum"> 87 </span><span class="lineCov"> 3 : tagcoll::PatchList&lt;std::string, Tag&gt; Debtags::changes() const</span>
+<span class="lineNum"> 88 </span> : {
+<span class="lineNum"> 89 </span><span class="lineCov"> 3 : tagcoll::PatchList&lt;int, int&gt; patches = m_coll.changes();</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 3 : tagcoll::PatchList&lt;std::string, Tag&gt; res;</span>
+<span class="lineNum"> 91 </span> :
+<span class="lineNum"> 92 </span><span class="lineCov"> 5 : for (tagcoll::PatchList&lt;int, int&gt;::const_iterator i = patches.begin();</span>
+<span class="lineNum"> 93 </span> : i != patches.end(); ++i)
+<span class="lineNum"> 94 </span> : {
+<span class="lineNum"> 95 </span><span class="lineCov"> 2 : std::string pkg = packageByID(i-&gt;second.item);</span>
+<span class="lineNum"> 96 </span><span class="lineCov"> 2 : if (pkg.empty())</span>
+<span class="lineNum"> 97 </span><span class="lineNoCov"> 0 : continue;</span>
+<span class="lineNum"> 98 </span> :
+<span class="lineNum"> 99 </span> : res.addPatch(tagcoll::Patch&lt;std::string, Tag&gt;(pkg,
+<span class="lineNum"> 100 </span> : vocabulary().tagsByID(i-&gt;second.added),
+<span class="lineNum"> 101 </span><span class="lineCov"> 2 : vocabulary().tagsByID(i-&gt;second.removed)));</span>
+<span class="lineNum"> 102 </span> : }
+<span class="lineNum"> 103 </span> :
+<span class="lineNum"> 104 </span><span class="lineCov"> 3 : return res;</span>
+<span class="lineNum"> 105 </span> : }
+<span class="lineNum"> 106 </span> :
+<span class="lineNum"> 107 </span> :
+<span class="lineNum"> 108 </span> : #if 0
+<span class="lineNum"> 109 </span> : bool Debtags::hasTagDatabase()
+<span class="lineNum"> 110 </span> : {
+<span class="lineNum"> 111 </span> : if (Path::access(Path::tagdb(), R_OK) == -1)
+<span class="lineNum"> 112 </span> : {
+<span class="lineNum"> 113 </span> : std::cerr &lt;&lt; &quot;Missing tag database &quot; &lt;&lt; Path::tagdb() &lt;&lt; std::endl;
+<span class="lineNum"> 114 </span> : return false;
+<span class="lineNum"> 115 </span> : }
+<span class="lineNum"> 116 </span> : if (Path::access(Path::tagdbIndex(), R_OK) == -1)
+<span class="lineNum"> 117 </span> : {
+<span class="lineNum"> 118 </span> : std::cerr &lt;&lt; &quot;Missing tag database index &quot; &lt;&lt; Path::tagdbIndex() &lt;&lt; std::endl;
+<span class="lineNum"> 119 </span> : return false;
+<span class="lineNum"> 120 </span> : }
+<span class="lineNum"> 121 </span> : if (Path::access(Path::vocabulary(), R_OK) == -1)
+<span class="lineNum"> 122 </span> : {
+<span class="lineNum"> 123 </span> : std::cerr &lt;&lt; &quot;Missing tag vocabulary &quot; &lt;&lt; Path::vocabulary() &lt;&lt; std::endl;
+<span class="lineNum"> 124 </span> : return false;
+<span class="lineNum"> 125 </span> : }
+<span class="lineNum"> 126 </span> : if (Path::access(Path::vocabularyIndex(), R_OK) == -1)
+<span class="lineNum"> 127 </span> : {
+<span class="lineNum"> 128 </span> : std::cerr &lt;&lt; &quot;Missing index for tag vocabulary &quot; &lt;&lt; Path::vocabularyIndex() &lt;&lt; std::endl;
+<span class="lineNum"> 129 </span> : return false;
+<span class="lineNum"> 130 </span> : }
+<span class="lineNum"> 131 </span> : return true;
+<span class="lineNum"> 132 </span> : }
+<span class="lineNum"> 133 </span> : #endif
+<span class="lineNum"> 134 </span> :
+<span class="lineNum"> 135 </span> :
+<span class="lineNum"> 136 </span><span class="lineCov"> 1 : void Debtags::savePatch()</span>
+<span class="lineNum"> 137 </span> : {
+<span class="lineNum"> 138 </span><span class="lineCov"> 1 : PatchList&lt;std::string, std::string&gt; spatch;</span>
+<span class="lineNum"> 139 </span><span class="lineCov"> 1 : m_coll.changes().output(patchIntToString(m_pkgid, vocabulary(), tagcoll::inserter(spatch)));</span>
+<span class="lineNum"> 140 </span><span class="lineCov"> 1 : savePatch(spatch);</span>
+<span class="lineNum"> 141 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 142 </span> :
+<span class="lineNum"> 143 </span><span class="lineCov"> 1 : void Debtags::savePatch(const PatchList&lt;std::string, std::string&gt;&amp; patch)</span>
+<span class="lineNum"> 144 </span> : {
+<span class="lineNum"> 145 </span><span class="lineCov"> 1 : std::string patchFile = str::joinpath(rcdir, &quot;patch&quot;);</span>
+<span class="lineNum"> 146 </span><span class="lineCov"> 1 : std::string backup = patchFile + &quot;~&quot;;</span>
+<span class="lineNum"> 147 </span> :
+<span class="lineNum"> 148 </span><span class="lineCov"> 1 : wibble::sys::fs::mkFilePath(patchFile);</span>
+<span class="lineNum"> 149 </span> :
+<span class="lineNum"> 150 </span><span class="lineCov"> 1 : if (access(patchFile.c_str(), F_OK) == 0)</span>
+<span class="lineNum"> 151 </span><span class="lineNoCov"> 0 : if (rename(patchFile.c_str(), backup.c_str()) == -1)</span>
+<span class="lineNum"> 152 </span><span class="lineNoCov"> 0 : throw wibble::exception::System(&quot;Can't rename &quot; + patchFile + &quot; to &quot; + backup);</span>
+<span class="lineNum"> 153 </span> :
+<span class="lineNum"> 154 </span> : try {
+<span class="lineNum"> 155 </span><span class="lineCov"> 1 : FILE* out = fopen(patchFile.c_str(), &quot;w&quot;);</span>
+<span class="lineNum"> 156 </span><span class="lineCov"> 1 : if (out == 0)</span>
+<span class="lineNum"> 157 </span><span class="lineNoCov"> 0 : throw wibble::exception::System(&quot;Can't write to &quot; + patchFile);</span>
+<span class="lineNum"> 158 </span> :
+<span class="lineNum"> 159 </span><span class="lineCov"> 1 : textformat::outputPatch(patch, out);</span>
+<span class="lineNum"> 160 </span> :
+<span class="lineNum"> 161 </span><span class="lineCov"> 1 : fclose(out);</span>
+<span class="lineNum"> 162 </span><span class="lineNoCov"> 0 : } catch (std::exception&amp; e) {</span>
+<span class="lineNum"> 163 </span><span class="lineNoCov"> 0 : if (rename(backup.c_str(), patchFile.c_str()) == -1)</span>
+<span class="lineNum"> 164 </span><span class="lineNoCov"> 0 : std::cerr &lt;&lt; &quot;Warning: Cannot restore previous backup copy: &quot; &lt;&lt; e.what() &lt;&lt; std::endl;</span>
+<span class="lineNum"> 165 </span><span class="lineNoCov"> 0 : throw;</span>
+<span class="lineNum"> 166 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 167 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 168 </span> :
+<span class="lineNum"> 169 </span><span class="lineNoCov"> 0 : void Debtags::savePatch(const PatchList&lt;std::string, Tag&gt;&amp; patch)</span>
+<span class="lineNum"> 170 </span> : {
+<span class="lineNum"> 171 </span><span class="lineNoCov"> 0 : PatchList&lt;std::string, std::string&gt; spatch;</span>
+<span class="lineNum"> 172 </span> : // patch.output(patchToString&lt;C&gt;(m_pkgs, m_pkgidx, m_tags, tagcoll::inserter(spatch)));
+<span class="lineNum"> 173 </span><span class="lineNoCov"> 0 : savePatch(spatch);</span>
+<span class="lineNum"> 174 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 175 </span> :
+<span class="lineNum"> 176 </span><span class="lineNoCov"> 0 : void Debtags::sendPatch()</span>
+<span class="lineNum"> 177 </span> : {
+<span class="lineNum"> 178 </span><span class="lineNoCov"> 0 : PatchList&lt;std::string, std::string&gt; spatch;</span>
+<span class="lineNum"> 179 </span><span class="lineNoCov"> 0 : m_coll.changes().output(patchIntToString(m_pkgid, vocabulary(), tagcoll::inserter(spatch)));</span>
+<span class="lineNum"> 180 </span><span class="lineNoCov"> 0 : if (!spatch.empty())</span>
+<span class="lineNum"> 181 </span> : {
+<span class="lineNum"> 182 </span><span class="lineNoCov"> 0 : sendPatch(spatch);</span>
+<span class="lineNum"> 183 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 184 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 185 </span> :
+<span class="lineNum"> 186 </span><span class="lineNoCov"> 0 : void Debtags::sendPatch(const PatchList&lt;std::string, Tag&gt;&amp; patch)</span>
+<span class="lineNum"> 187 </span> : {
+<span class="lineNum"> 188 </span><span class="lineNoCov"> 0 : PatchList&lt;std::string, std::string&gt; spatch;</span>
+<span class="lineNum"> 189 </span> : // patch.output(patchToString&lt;C&gt;(m_pkgs, m_pkgidx, m_tags, tagcoll::inserter(spatch)));
+<span class="lineNum"> 190 </span><span class="lineNoCov"> 0 : sendPatch(spatch);</span>
+<span class="lineNum"> 191 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 192 </span> :
+<span class="lineNum"> 193 </span><span class="lineNoCov"> 0 : void Debtags::sendPatch(const PatchList&lt;std::string, std::string&gt;&amp; patch)</span>
+<span class="lineNum"> 194 </span> : {
+<span class="lineNum"> 195 </span> : static const char* cmd = &quot;/usr/sbin/sendmail -t&quot;;
+<span class="lineNum"> 196 </span><span class="lineNoCov"> 0 : FILE* out = popen(cmd, &quot;w&quot;);</span>
+<span class="lineNum"> 197 </span><span class="lineNoCov"> 0 : if (out == 0)</span>
+<span class="lineNum"> 198 </span><span class="lineNoCov"> 0 : throw wibble::exception::System(std::string(&quot;trying to run `&quot;) + cmd + &quot;'&quot;);</span>
+<span class="lineNum"> 199 </span> :
+<span class="lineNum"> 200 </span><span class="lineNoCov"> 0 : struct passwd* udata = getpwuid(getuid());</span>
+<span class="lineNum"> 201 </span> :
+<span class="lineNum"> 202 </span> : fprintf(out,
+<span class="lineNum"> 203 </span> : &quot;To: enrico-debtags@debian.org\n&quot;
+<span class="lineNum"> 204 </span> : &quot;Bcc: %s\n&quot;
+<span class="lineNum"> 205 </span> : &quot;Subject: Tag patch\n&quot;
+<span class="lineNum"> 206 </span> : &quot;Mime-Version: 1.0\n&quot;
+<span class="lineNum"> 207 </span> : &quot;Content-Type: multipart/mixed; boundary=\&quot;9amGYk9869ThD9tj\&quot;\n&quot;
+<span class="lineNum"> 208 </span> : &quot;Content-Disposition: inline\n&quot;
+<span class="lineNum"> 209 </span> : &quot;X-Mailer: debtags-edit\n\n&quot;
+<span class="lineNum"> 210 </span> : &quot;This mail contains a Debtags patch for the central archive\n\n&quot;
+<span class="lineNum"> 211 </span> : &quot;--9amGYk9869ThD9tj\n&quot;
+<span class="lineNum"> 212 </span> : &quot;Content-Type: text/plain; charset=utf-8\n&quot;
+<span class="lineNum"> 213 </span> : &quot;Content-Disposition: inline\n\n&quot;
+<span class="lineNum"> 214 </span><span class="lineNoCov"> 0 : &quot;-- DEBTAGS DIFF V0.1 --\n&quot;, udata-&gt;pw_name);</span>
+<span class="lineNum"> 215 </span> :
+<span class="lineNum"> 216 </span><span class="lineNoCov"> 0 : textformat::outputPatch(patch, out);</span>
+<span class="lineNum"> 217 </span> :
+<span class="lineNum"> 218 </span><span class="lineNoCov"> 0 : fprintf(out, &quot;\n--9amGYk9869ThD9tj\n&quot;);</span>
+<span class="lineNum"> 219 </span> :
+<span class="lineNum"> 220 </span><span class="lineNoCov"> 0 : int res = pclose(out);</span>
+<span class="lineNum"> 221 </span><span class="lineNoCov"> 0 : if (!WIFEXITED(res) || WEXITSTATUS(res) != 0)</span>
+<span class="lineNum"> 222 </span> : {
+<span class="lineNum"> 223 </span><span class="lineNoCov"> 0 : std::stringstream str;</span>
+<span class="lineNum"> 224 </span><span class="lineNoCov"> 0 : str &lt;&lt; res;</span>
+<span class="lineNum"> 225 </span><span class="lineNoCov"> 0 : throw wibble::exception::Consistency(&quot;checking mailer exit status&quot;, &quot;sendmail returned nonzero (&quot; + str.str() + &quot;): the mail may have not been sent&quot;);</span>
+<span class="lineNum"> 226 </span> : }
+<span class="lineNum"> 227 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 228 </span> :
+<span class="lineNum"> 229 </span> :
+<span class="lineNum"> 230 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 231 </span> : void Debtags::outputSystem(const OUT&amp; cons)
+<span class="lineNum"> 232 </span> : {
+<span class="lineNum"> 233 </span> : m_rocoll.output(intToPkg(m_pkgid, vocabulary(), cons));
+<span class="lineNum"> 234 </span> : }
+<span class="lineNum"> 235 </span> :
+<span class="lineNum"> 236 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 237 </span> : void Debtags::outputPatched(const OUT&amp; cons)
+<span class="lineNum"> 238 </span> : {
+<span class="lineNum"> 239 </span> : m_coll.output(intToPkg(m_pkgid, vocabulary(), cons));
+<span class="lineNum"> 240 </span> : }
+<span class="lineNum"> 241 </span> :
+<span class="lineNum"> 242 </span> : }
+<span class="lineNum"> 243 </span> : }
+<span class="lineNum"> 244 </span> :
+<span class="lineNum"> 245 </span> : #include &lt;tagcoll/patch.tcc&gt;
+<span class="lineNum"> 246 </span> : #include &lt;tagcoll/coll/patched.tcc&gt;
+<span class="lineNum"> 247 </span> : #include &lt;tagcoll/TextFormat.tcc&gt;
+<span class="lineNum"> 248 </span> : //#include &lt;tagcoll/stream/filters.tcc&gt;
+<span class="lineNum"> 249 </span> :
+<span class="lineNum"> 250 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/debtags.h.gcov.html b/rep/ept/debtags/debtags.h.gcov.html
new file mode 100644
index 0000000..a115a32
--- /dev/null
+++ b/rep/ept/debtags/debtags.h.gcov.html
@@ -0,0 +1,484 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/debtags.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/debtags</a> - debtags.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">72</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">93.1 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">67</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+<span class="lineNum"> 2 </span> : /* @file
+<span class="lineNum"> 3 </span> : * @author Enrico Zini (enrico) &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 4 </span> : */
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : /*
+<span class="lineNum"> 7 </span> : * libpkg Debtags data provider
+<span class="lineNum"> 8 </span> : *
+<span class="lineNum"> 9 </span> : * Copyright (C) 2003-2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 12 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 13 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 14 </span> : * (at your option) any later version.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 19 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 20 </span> : *
+<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 22 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 24 </span> : */
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #ifndef EPT_DEBTAGS_DEBTAGS_H
+<span class="lineNum"> 27 </span> : #define EPT_DEBTAGS_DEBTAGS_H
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : #include &lt;ept/debtags/tag.h&gt;
+<span class="lineNum"> 30 </span> : #include &lt;ept/debtags/vocabulary.h&gt;
+<span class="lineNum"> 31 </span> : #include &lt;ept/debtags/maint/pkgid.h&gt;
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : #include &lt;tagcoll/coll/base.h&gt;
+<span class="lineNum"> 34 </span> : #include &lt;tagcoll/coll/intdiskindex.h&gt;
+<span class="lineNum"> 35 </span> : #include &lt;tagcoll/coll/patched.h&gt;
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : namespace ept {
+<span class="lineNum"> 38 </span> : namespace debtags {
+<span class="lineNum"> 39 </span> : class Debtags;
+<span class="lineNum"> 40 </span> : }
+<span class="lineNum"> 41 </span> : }
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : namespace tagcoll {
+<span class="lineNum"> 44 </span> : template&lt; typename _, typename _1 &gt; class PatchList;
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> : namespace coll {
+<span class="lineNum"> 47 </span> :
+<span class="lineNum"> 48 </span> : template&lt;&gt;
+<span class="lineNum"> 49 </span> : struct coll_traits&lt; ept::debtags::Debtags &gt;
+<span class="lineNum"> 50 </span> : {
+<span class="lineNum"> 51 </span> : typedef std::string item_type;
+<span class="lineNum"> 52 </span> : typedef ept::debtags::Tag tag_type;
+<span class="lineNum"> 53 </span> : typedef std::set&lt; ept::debtags::Tag &gt; tagset_type;
+<span class="lineNum"> 54 </span> : typedef std::set&lt; std::string &gt; itemset_type;
+<span class="lineNum"> 55 </span> : };
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : }
+<span class="lineNum"> 58 </span> : }
+<span class="lineNum"> 59 </span> :
+<span class="lineNum"> 60 </span> : namespace ept {
+<span class="lineNum"> 61 </span> : namespace debtags {
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span> : /**
+<span class="lineNum"> 64 </span> : * Access the on-disk Debtags tag database.
+<span class="lineNum"> 65 </span> : *
+<span class="lineNum"> 66 </span> : * The database is normally found in /var/lib/debtags.
+<span class="lineNum"> 67 </span> : *
+<span class="lineNum"> 68 </span> : * Tags and Facets are returned as Tag and Facet objects. The objects follow
+<span class="lineNum"> 69 </span> : * the flyweight pattern and access the data contained in the Vocabulary
+<span class="lineNum"> 70 </span> : * instantiated inside Debtags.
+<span class="lineNum"> 71 </span> : *
+<span class="lineNum"> 72 </span> : * It is possible to get a reference to the Vocabulary object using the
+<span class="lineNum"> 73 </span> : * vocabulary() method.
+<span class="lineNum"> 74 </span> : */
+<span class="lineNum"> 75 </span> : class Debtags : public tagcoll::coll::Collection&lt;Debtags&gt;
+<span class="lineNum"> 76 </span> : {
+<span class="lineNum"> 77 </span> : protected:
+<span class="lineNum"> 78 </span> : // Master mmap index container
+<span class="lineNum"> 79 </span> : tagcoll::diskindex::MasterMMap mastermmap;
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span> : // Debtags database
+<span class="lineNum"> 82 </span> : tagcoll::coll::IntDiskIndex m_rocoll;
+<span class="lineNum"> 83 </span> : tagcoll::coll::Patched&lt; tagcoll::coll::IntDiskIndex &gt; m_coll;
+<span class="lineNum"> 84 </span> :
+<span class="lineNum"> 85 </span> : // Package name to ID mapping
+<span class="lineNum"> 86 </span> : PkgId m_pkgid;
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span> : // Tag vocabulary
+<span class="lineNum"> 89 </span> : Vocabulary m_voc;
+<span class="lineNum"> 90 </span> :
+<span class="lineNum"> 91 </span> : // User rc directory to store patches
+<span class="lineNum"> 92 </span> : std::string rcdir;
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span> : // Last modification timestamp of the index
+<span class="lineNum"> 95 </span> : time_t m_timestamp;
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span><span class="lineCov"> 84710 : std::string packageByID(int id) const</span>
+<span class="lineNum"> 98 </span> : {
+<span class="lineNum"> 99 </span><span class="lineCov"> 84710 : return m_pkgid.byID(id);</span>
+<span class="lineNum"> 100 </span> : }
+<span class="lineNum"> 101 </span> :
+<span class="lineNum"> 102 </span> : template&lt;typename IDS&gt;
+<span class="lineNum"> 103 </span><span class="lineCov"> 2 : std::set&lt;std::string&gt; packagesById(const IDS&amp; ids) const</span>
+<span class="lineNum"> 104 </span> : {
+<span class="lineNum"> 105 </span><span class="lineCov"> 2 : std::set&lt;std::string&gt; pkgs;</span>
+<span class="lineNum"> 106 </span><span class="lineCov"> 130 : for (typename IDS::const_iterator i = ids.begin();</span>
+<span class="lineNum"> 107 </span> : i != ids.end(); ++i)
+<span class="lineNum"> 108 </span><span class="lineCov"> 128 : pkgs.insert(packageByID(*i));</span>
+<span class="lineNum"> 109 </span><span class="lineNoCov"> 0 : return pkgs;</span>
+<span class="lineNum"> 110 </span> : }
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span><span class="lineCov"> 8 : int idByPackage(const std::string&amp; pkg) const</span>
+<span class="lineNum"> 113 </span> : {
+<span class="lineNum"> 114 </span><span class="lineCov"> 8 : return m_pkgid.byName(pkg);</span>
+<span class="lineNum"> 115 </span> : }
+<span class="lineNum"> 116 </span> :
+<span class="lineNum"> 117 </span> : template&lt;typename PKGS&gt;
+<span class="lineNum"> 118 </span><span class="lineCov"> 1 : std::set&lt;int&gt; idsByPackages(const PKGS&amp; pkgs) const</span>
+<span class="lineNum"> 119 </span> : {
+<span class="lineNum"> 120 </span><span class="lineCov"> 1 : std::set&lt;int&gt; ids;</span>
+<span class="lineNum"> 121 </span><span class="lineCov"> 2 : for (typename PKGS::const_iterator i = pkgs.begin();</span>
+<span class="lineNum"> 122 </span> : i != pkgs.end(); ++i)
+<span class="lineNum"> 123 </span><span class="lineCov"> 1 : ids.insert(idByPackage(*i));</span>
+<span class="lineNum"> 124 </span><span class="lineNoCov"> 0 : return ids;</span>
+<span class="lineNum"> 125 </span> : }
+<span class="lineNum"> 126 </span> :
+<span class="lineNum"> 127 </span> : public:
+<span class="lineNum"> 128 </span> : typedef tagcoll::coll::Patched&lt; tagcoll::coll::IntDiskIndex &gt; coll_type;
+<span class="lineNum"> 129 </span> : typedef std::pair&lt; std::string, std::set&lt;Tag&gt; &gt; value_type;
+<span class="lineNum"> 130 </span> :
+<span class="lineNum"> 131 </span> : class const_iterator
+<span class="lineNum"> 132 </span> : {
+<span class="lineNum"> 133 </span> : const Debtags&amp; coll;
+<span class="lineNum"> 134 </span> : Debtags::coll_type::const_iterator ci;
+<span class="lineNum"> 135 </span> : mutable const Debtags::value_type* cached_val;
+<span class="lineNum"> 136 </span> :
+<span class="lineNum"> 137 </span> : protected:
+<span class="lineNum"> 138 </span> : const_iterator(const Debtags&amp; coll,
+<span class="lineNum"> 139 </span><span class="lineCov"> 63443 : const Debtags::coll_type::const_iterator&amp; ci)</span>
+<span class="lineNum"> 140 </span><span class="lineCov"> 63443 : : coll(coll), ci(ci), cached_val(0) {}</span>
+<span class="lineNum"> 141 </span> :
+<span class="lineNum"> 142 </span> : public:
+<span class="lineNum"> 143 </span><span class="lineCov"> 63443 : ~const_iterator()</span>
+<span class="lineNum"> 144 </span> : {
+<span class="lineNum"> 145 </span><span class="lineCov"> 63443 : if (cached_val)</span>
+<span class="lineNum"> 146 </span><span class="lineNoCov"> 0 : delete cached_val;</span>
+<span class="lineNum"> 147 </span><span class="lineCov"> 63443 : }</span>
+<span class="lineNum"> 148 </span><span class="lineCov"> 84580 : const Debtags::value_type operator*() const</span>
+<span class="lineNum"> 149 </span> : {
+<span class="lineNum"> 150 </span><span class="lineCov"> 84580 : if (cached_val)</span>
+<span class="lineNum"> 151 </span><span class="lineNoCov"> 0 : return *cached_val;</span>
+<span class="lineNum"> 152 </span> :
+<span class="lineNum"> 153 </span><span class="lineCov"> 84580 : return make_pair(coll.packageByID(ci-&gt;first), coll.vocabulary().tagsByID(ci-&gt;second));</span>
+<span class="lineNum"> 154 </span> : }
+<span class="lineNum"> 155 </span><span class="lineCov"> 105725 : const Debtags::value_type* operator-&gt;() const</span>
+<span class="lineNum"> 156 </span> : {
+<span class="lineNum"> 157 </span><span class="lineCov"> 105725 : if (cached_val)</span>
+<span class="lineNum"> 158 </span><span class="lineCov"> 42290 : return cached_val;</span>
+<span class="lineNum"> 159 </span><span class="lineCov"> 63435 : return cached_val = new Debtags::value_type(*(*this));</span>
+<span class="lineNum"> 160 </span> : }
+<span class="lineNum"> 161 </span><span class="lineCov"> 63435 : const_iterator&amp; operator++()</span>
+<span class="lineNum"> 162 </span> : {
+<span class="lineNum"> 163 </span><span class="lineCov"> 63435 : ++ci;</span>
+<span class="lineNum"> 164 </span><span class="lineCov"> 63435 : if (cached_val)</span>
+<span class="lineNum"> 165 </span> : {
+<span class="lineNum"> 166 </span><span class="lineCov"> 63435 : delete cached_val;</span>
+<span class="lineNum"> 167 </span><span class="lineCov"> 63435 : cached_val = 0;</span>
+<span class="lineNum"> 168 </span> : }
+<span class="lineNum"> 169 </span><span class="lineCov"> 63435 : return *this;</span>
+<span class="lineNum"> 170 </span> : }
+<span class="lineNum"> 171 </span><span class="lineCov"> 1 : bool operator==(const const_iterator&amp; iter) const</span>
+<span class="lineNum"> 172 </span> : {
+<span class="lineNum"> 173 </span><span class="lineCov"> 1 : return ci == iter.ci;</span>
+<span class="lineNum"> 174 </span> : }
+<span class="lineNum"> 175 </span><span class="lineCov"> 63438 : bool operator!=(const const_iterator&amp; iter) const</span>
+<span class="lineNum"> 176 </span> : {
+<span class="lineNum"> 177 </span><span class="lineCov"> 63438 : return ci != iter.ci;</span>
+<span class="lineNum"> 178 </span> : }
+<span class="lineNum"> 179 </span> :
+<span class="lineNum"> 180 </span> : friend class Debtags;
+<span class="lineNum"> 181 </span> : };
+<span class="lineNum"> 182 </span><span class="lineCov"> 4 : const_iterator begin() const { return const_iterator(*this, m_coll.begin()); }</span>
+<span class="lineNum"> 183 </span><span class="lineCov"> 63439 : const_iterator end() const { return const_iterator(*this, m_coll.end()); }</span>
+<span class="lineNum"> 184 </span> :
+<span class="lineNum"> 185 </span> : /**
+<span class="lineNum"> 186 </span> : * Create a new accessor for the on-disk Debtags database
+<span class="lineNum"> 187 </span> : *
+<span class="lineNum"> 188 </span> : * \param editable
+<span class="lineNum"> 189 </span> : * Specifies if recording of modifications should be enabled. If editable
+<span class="lineNum"> 190 </span> : * is true, then the local state directory will be created when the object
+<span class="lineNum"> 191 </span> : * is instantiated.
+<span class="lineNum"> 192 </span> : */
+<span class="lineNum"> 193 </span> : Debtags(bool editable = false);
+<span class="lineNum"> 194 </span><span class="lineCov"> 10 : ~Debtags() {}</span>
+<span class="lineNum"> 195 </span> :
+<span class="lineNum"> 196 </span> : /// Get the timestamp of when the index was last updated
+<span class="lineNum"> 197 </span><span class="lineCov"> 1 : time_t timestamp() const { return m_timestamp; }</span>
+<span class="lineNum"> 198 </span> :
+<span class="lineNum"> 199 </span> : /// Return true if this data source has data, false if it's empty
+<span class="lineNum"> 200 </span><span class="lineCov"> 1 : bool hasData() const { return m_timestamp != 0; }</span>
+<span class="lineNum"> 201 </span> :
+<span class="lineNum"> 202 </span> : coll_type&amp; tagdb() { return m_coll; }
+<span class="lineNum"> 203 </span> : const coll_type&amp; tagdb() const { return m_coll; }
+<span class="lineNum"> 204 </span> : tagcoll::PatchList&lt;std::string, Tag&gt; changes() const;
+<span class="lineNum"> 205 </span> :
+<span class="lineNum"> 206 </span> : #if 0
+<span class="lineNum"> 207 </span> : template&lt;typename ITEMS, typename TAGS&gt;
+<span class="lineNum"> 208 </span> : void insert(const ITEMS&amp; items, const TAGS&amp; tags)
+<span class="lineNum"> 209 </span> : {
+<span class="lineNum"> 210 </span> : for (typename ITEMS::const_iterator i = items.begin();
+<span class="lineNum"> 211 </span> : i != items.end(); ++i)
+<span class="lineNum"> 212 </span> : m_changes.addPatch(Patch(*i, tags, TagSet()));
+<span class="lineNum"> 213 </span> : }
+<span class="lineNum"> 214 </span> :
+<span class="lineNum"> 215 </span> : template&lt;typename ITEMS&gt;
+<span class="lineNum"> 216 </span> : void insert(const ITEMS&amp; items, const wibble::Empty&lt;Tag&gt;&amp; tags)
+<span class="lineNum"> 217 </span> : {
+<span class="lineNum"> 218 </span> : // Nothing to do in this case
+<span class="lineNum"> 219 </span> : }
+<span class="lineNum"> 220 </span> :
+<span class="lineNum"> 221 </span> : /**
+<span class="lineNum"> 222 </span> : * Get the changes that have been applied to this collection
+<span class="lineNum"> 223 </span> : */
+<span class="lineNum"> 224 </span> : const Patches&amp; changes() const { return m_changes; }
+<span class="lineNum"> 225 </span> :
+<span class="lineNum"> 226 </span> : /**
+<span class="lineNum"> 227 </span> : * Throw away all changes previously applied to this collection
+<span class="lineNum"> 228 </span> : */
+<span class="lineNum"> 229 </span> : void resetChanges() { m_changes.clear(); }
+<span class="lineNum"> 230 </span> :
+<span class="lineNum"> 231 </span> : /**
+<span class="lineNum"> 232 </span> : * Set the changes list to a specific patch list
+<span class="lineNum"> 233 </span> : */
+<span class="lineNum"> 234 </span> : void setChanges(const Patches&amp; changes);
+<span class="lineNum"> 235 </span> :
+<span class="lineNum"> 236 </span> : /**
+<span class="lineNum"> 237 </span> : * Add a specific patch list to the changes list
+<span class="lineNum"> 238 </span> : */
+<span class="lineNum"> 239 </span> : void addChanges(const Patches&amp; changes);
+<span class="lineNum"> 240 </span> : #endif
+<span class="lineNum"> 241 </span> :
+<span class="lineNum"> 242 </span> : bool hasTag(const Tag&amp; tag) const { return m_coll.hasTag(tag.id()); }
+<span class="lineNum"> 243 </span> :
+<span class="lineNum"> 244 </span><span class="lineCov"> 5 : std::set&lt;Tag&gt; getTagsOfItem(const std::string&amp; item) const</span>
+<span class="lineNum"> 245 </span> : {
+<span class="lineNum"> 246 </span><span class="lineCov"> 5 : int id = idByPackage(item);</span>
+<span class="lineNum"> 247 </span><span class="lineCov"> 5 : if (id == -1) return std::set&lt;Tag&gt;();</span>
+<span class="lineNum"> 248 </span><span class="lineCov"> 4 : return vocabulary().tagsByID(m_coll.getTagsOfItem(id));</span>
+<span class="lineNum"> 249 </span> : }
+<span class="lineNum"> 250 </span> :
+<span class="lineNum"> 251 </span> : template&lt;typename ITEMS&gt;
+<span class="lineNum"> 252 </span><span class="lineCov"> 1 : std::set&lt;Tag&gt; getTagsOfItems(const ITEMS&amp; items) const</span>
+<span class="lineNum"> 253 </span> : {
+<span class="lineNum"> 254 </span><span class="lineCov"> 1 : return vocabulary().tagsByID(m_coll.getTagsOfItems(idsByPackages(items)));</span>
+<span class="lineNum"> 255 </span> : }
+<span class="lineNum"> 256 </span> :
+<span class="lineNum"> 257 </span> : std::set&lt;std::string&gt; getItemsHavingTag(const Tag&amp; tag) const
+<span class="lineNum"> 258 </span> : {
+<span class="lineNum"> 259 </span> : return packagesById(m_coll.getItemsHavingTag(tag.id()));
+<span class="lineNum"> 260 </span> : }
+<span class="lineNum"> 261 </span> : template&lt;typename TAGS&gt;
+<span class="lineNum"> 262 </span><span class="lineCov"> 2 : std::set&lt;std::string&gt; getItemsHavingTags(const TAGS&amp; tags) const</span>
+<span class="lineNum"> 263 </span> : {
+<span class="lineNum"> 264 </span><span class="lineCov"> 2 : std::set&lt;int&gt; itags;</span>
+<span class="lineNum"> 265 </span><span class="lineCov"> 11 : for (typename TAGS::const_iterator i = tags.begin();</span>
+<span class="lineNum"> 266 </span> : i != tags.end(); ++i)
+<span class="lineNum"> 267 </span><span class="lineCov"> 9 : itags.insert(i-&gt;id());</span>
+<span class="lineNum"> 268 </span><span class="lineCov"> 2 : return packagesById(m_coll.getItemsHavingTags(itags));</span>
+<span class="lineNum"> 269 </span> : }
+<span class="lineNum"> 270 </span> :
+<span class="lineNum"> 271 </span> : #if 0
+<span class="lineNum"> 272 </span> : ItemSet getTaggedItems() const;
+<span class="lineNum"> 273 </span> : #endif
+<span class="lineNum"> 274 </span><span class="lineCov"> 1 : std::set&lt;Tag&gt; getAllTags() const</span>
+<span class="lineNum"> 275 </span> : {
+<span class="lineNum"> 276 </span><span class="lineCov"> 1 : return vocabulary().tagsByID(m_coll.getAllTags());</span>
+<span class="lineNum"> 277 </span> : }
+<span class="lineNum"> 278 </span> :
+<span class="lineNum"> 279 </span> : /// Access the vocabulary in use
+<span class="lineNum"> 280 </span><span class="lineCov"> 27 : Vocabulary&amp; vocabulary() { return m_voc; }</span>
+<span class="lineNum"> 281 </span> : /// Access the vocabulary in use
+<span class="lineNum"> 282 </span><span class="lineCov"> 84590 : const Vocabulary&amp; vocabulary() const { return m_voc; }</span>
+<span class="lineNum"> 283 </span> :
+<span class="lineNum"> 284 </span> : /**
+<span class="lineNum"> 285 </span> : * Access the PkgId in use.
+<span class="lineNum"> 286 </span> : *
+<span class="lineNum"> 287 </span> : * \note Future implementations may not rely on a PkgId
+<span class="lineNum"> 288 </span> : */
+<span class="lineNum"> 289 </span><span class="lineCov"> 4 : PkgId&amp; pkgid() { return m_pkgid; }</span>
+<span class="lineNum"> 290 </span> : /**
+<span class="lineNum"> 291 </span> : * Access the PkgId in use.
+<span class="lineNum"> 292 </span> : *
+<span class="lineNum"> 293 </span> : * \note Future implementations may not rely on a PkgId
+<span class="lineNum"> 294 </span> : */
+<span class="lineNum"> 295 </span> : const PkgId&amp; pkgid() const { return m_pkgid; }
+<span class="lineNum"> 296 </span> :
+<span class="lineNum"> 297 </span> : int getCardinality(const Tag&amp; tag) const
+<span class="lineNum"> 298 </span> : {
+<span class="lineNum"> 299 </span> : return m_coll.getCardinality(tag.id());
+<span class="lineNum"> 300 </span> : }
+<span class="lineNum"> 301 </span> :
+<span class="lineNum"> 302 </span><span class="lineCov"> 2 : void applyChange(const tagcoll::PatchList&lt;std::string, Tag&gt;&amp; change)</span>
+<span class="lineNum"> 303 </span> : {
+<span class="lineNum"> 304 </span> : using namespace tagcoll;
+<span class="lineNum"> 305 </span><span class="lineCov"> 2 : PatchList&lt;int, int&gt; intp;</span>
+<span class="lineNum"> 306 </span><span class="lineCov"> 4 : for (PatchList&lt;std::string, Tag&gt;::const_iterator i = change.begin();</span>
+<span class="lineNum"> 307 </span> : i != change.end(); ++i)
+<span class="lineNum"> 308 </span> : {
+<span class="lineNum"> 309 </span><span class="lineCov"> 2 : Patch&lt;int, int&gt; p(idByPackage(i-&gt;first));</span>
+<span class="lineNum"> 310 </span><span class="lineCov"> 4 : for (std::set&lt;Tag&gt;::const_iterator j = i-&gt;second.added.begin();</span>
+<span class="lineNum"> 311 </span> : j != i-&gt;second.added.end(); ++j)
+<span class="lineNum"> 312 </span><span class="lineCov"> 2 : p.add(j-&gt;id());</span>
+<span class="lineNum"> 313 </span><span class="lineCov"> 2 : for (std::set&lt;Tag&gt;::const_iterator j = i-&gt;second.removed.begin();</span>
+<span class="lineNum"> 314 </span> : j != i-&gt;second.removed.end(); ++j)
+<span class="lineNum"> 315 </span><span class="lineNoCov"> 0 : p.remove(j-&gt;id());</span>
+<span class="lineNum"> 316 </span><span class="lineCov"> 2 : intp.addPatch(p);</span>
+<span class="lineNum"> 317 </span> : }
+<span class="lineNum"> 318 </span><span class="lineCov"> 2 : m_coll.applyChange(intp);</span>
+<span class="lineNum"> 319 </span><span class="lineCov"> 2 : }</span>
+<span class="lineNum"> 320 </span> :
+<span class="lineNum"> 321 </span> : #if 0
+<span class="lineNum"> 322 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 323 </span> : void output(OUT out) const
+<span class="lineNum"> 324 </span> : {
+<span class="lineNum"> 325 </span> : for (const_iterator i = begin(); i != end(); ++i)
+<span class="lineNum"> 326 </span> : {
+<span class="lineNum"> 327 </span> : *out = *i;
+<span class="lineNum"> 328 </span> : ++out;
+<span class="lineNum"> 329 </span> : }
+<span class="lineNum"> 330 </span> : }
+<span class="lineNum"> 331 </span> : #endif
+<span class="lineNum"> 332 </span> :
+<span class="lineNum"> 333 </span> :
+<span class="lineNum"> 334 </span> :
+<span class="lineNum"> 335 </span> : /**
+<span class="lineNum"> 336 </span> : * Check if the tag database has been created (i.e. if something
+<span class="lineNum"> 337 </span> : * equivalend to debtags update has been run)
+<span class="lineNum"> 338 </span> : */
+<span class="lineNum"> 339 </span> : //static bool hasTagDatabase();
+<span class="lineNum"> 340 </span> :
+<span class="lineNum"> 341 </span> :
+<span class="lineNum"> 342 </span> : /**
+<span class="lineNum"> 343 </span> : * Save in the state storage directory a patch that can be used to turn
+<span class="lineNum"> 344 </span> : * the system database into the collection given
+<span class="lineNum"> 345 </span> : */
+<span class="lineNum"> 346 </span> : void savePatch();
+<span class="lineNum"> 347 </span> :
+<span class="lineNum"> 348 </span> : /**
+<span class="lineNum"> 349 </span> : * Save in the state storage directory a patch to turn the system database
+<span class="lineNum"> 350 </span> : * into the collection given
+<span class="lineNum"> 351 </span> : */
+<span class="lineNum"> 352 </span> : void savePatch(const tagcoll::PatchList&lt;std::string, std::string&gt;&amp; patch);
+<span class="lineNum"> 353 </span> :
+<span class="lineNum"> 354 </span> : /**
+<span class="lineNum"> 355 </span> : * Save in the state storage directory a patch to turn the system database
+<span class="lineNum"> 356 </span> : * into the collection given
+<span class="lineNum"> 357 </span> : */
+<span class="lineNum"> 358 </span> : void savePatch(const tagcoll::PatchList&lt;std::string, Tag&gt;&amp; patch);
+<span class="lineNum"> 359 </span> :
+<span class="lineNum"> 360 </span> : /**
+<span class="lineNum"> 361 </span> : * Send to the central archive a patch that can be used to turn
+<span class="lineNum"> 362 </span> : * the system database into the collection given
+<span class="lineNum"> 363 </span> : */
+<span class="lineNum"> 364 </span> : void sendPatch();
+<span class="lineNum"> 365 </span> :
+<span class="lineNum"> 366 </span> : /**
+<span class="lineNum"> 367 </span> : * Send the given patch to the central archive
+<span class="lineNum"> 368 </span> : */
+<span class="lineNum"> 369 </span> : void sendPatch(const tagcoll::PatchList&lt;std::string, std::string&gt;&amp; patch);
+<span class="lineNum"> 370 </span> :
+<span class="lineNum"> 371 </span> : /**
+<span class="lineNum"> 372 </span> : * Send the given patch to the central archive
+<span class="lineNum"> 373 </span> : */
+<span class="lineNum"> 374 </span> : void sendPatch(const tagcoll::PatchList&lt;std::string, Tag&gt;&amp; patch);
+<span class="lineNum"> 375 </span> :
+<span class="lineNum"> 376 </span> :
+<span class="lineNum"> 377 </span> : /**
+<span class="lineNum"> 378 </span> : * Output the current Debian tags database to a consumer of &lt;std::string, Tag&gt;
+<span class="lineNum"> 379 </span> : *
+<span class="lineNum"> 380 </span> : * \note The collection is sent to 'cons' without merging repeated items
+<span class="lineNum"> 381 </span> : */
+<span class="lineNum"> 382 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 383 </span><span class="lineCov"> 2 : void outputSystem(const OUT&amp; cons);</span>
+<span class="lineNum"> 384 </span> :
+<span class="lineNum"> 385 </span> : /**
+<span class="lineNum"> 386 </span> : * Output the given tag file to a consumer of &lt;std::string, Tag&gt;
+<span class="lineNum"> 387 </span> : *
+<span class="lineNum"> 388 </span> : * \note The collection is sent to 'cons' without merging repeated items
+<span class="lineNum"> 389 </span> : */
+<span class="lineNum"> 390 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 391 </span> : void outputSystem(const std::string&amp; filename, const OUT&amp; out);
+<span class="lineNum"> 392 </span> :
+<span class="lineNum"> 393 </span> : /**
+<span class="lineNum"> 394 </span> : * Output the current Debian tags database, patched with local patch,
+<span class="lineNum"> 395 </span> : * to a Consumer of &lt;std::string, Tag&gt;
+<span class="lineNum"> 396 </span> : *
+<span class="lineNum"> 397 </span> : * \note The collection is sent to 'cons' without merging repeated items
+<span class="lineNum"> 398 </span> : */
+<span class="lineNum"> 399 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 400 </span><span class="lineCov"> 2 : void outputPatched(const OUT&amp; cons);</span>
+<span class="lineNum"> 401 </span> :
+<span class="lineNum"> 402 </span> : /**
+<span class="lineNum"> 403 </span> : * Output the given tag file, patched with local patch,
+<span class="lineNum"> 404 </span> : * to a Consumer of &lt;std::string, Tag&gt;
+<span class="lineNum"> 405 </span> : *
+<span class="lineNum"> 406 </span> : * \note The collection is sent to 'cons' without merging repeated items
+<span class="lineNum"> 407 </span> : */
+<span class="lineNum"> 408 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 409 </span> : void outputPatched(const std::string&amp; filename, const OUT&amp; out);
+<span class="lineNum"> 410 </span> : };
+<span class="lineNum"> 411 </span> :
+<span class="lineNum"> 412 </span> :
+<span class="lineNum"> 413 </span> : }
+<span class="lineNum"> 414 </span> : }
+<span class="lineNum"> 415 </span> :
+<span class="lineNum"> 416 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 417 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/debtags.tcc.gcov.html b/rep/ept/debtags/debtags.tcc.gcov.html
new file mode 100644
index 0000000..3d2907f
--- /dev/null
+++ b/rep/ept/debtags/debtags.tcc.gcov.html
@@ -0,0 +1,156 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/debtags.tcc</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/debtags</a> - debtags.tcc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">4</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">4</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /** -*- C++ -*-
+<span class="lineNum"> 2 </span> : * @file
+<span class="lineNum"> 3 </span> : * @author Enrico Zini (enrico) &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 4 </span> : */
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : /*
+<span class="lineNum"> 7 </span> : * libpkg Debtags data provider
+<span class="lineNum"> 8 </span> : *
+<span class="lineNum"> 9 </span> : * Copyright (C) 2003-2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 12 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 13 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 14 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 19 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 20 </span> : *
+<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 22 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 24 </span> : */
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #ifndef EPT_DEBTAGS_DEBTAGS_TCC
+<span class="lineNum"> 27 </span> : #define EPT_DEBTAGS_DEBTAGS_TCC
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : #include &lt;ept/debtags/debtags.h&gt;
+<span class="lineNum"> 30 </span> : #include &lt;ept/debtags/maint/serializer.h&gt;
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : #include &lt;tagcoll/input/stdio.h&gt;
+<span class="lineNum"> 33 </span> : #include &lt;tagcoll/stream/patcher.h&gt;
+<span class="lineNum"> 34 </span> : #include &lt;tagcoll/TextFormat.h&gt;
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : namespace ept {
+<span class="lineNum"> 37 </span> : namespace debtags {
+<span class="lineNum"> 38 </span> :
+<span class="lineNum"> 39 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 40 </span> : void Debtags::outputSystem(const OUT&amp; cons)
+<span class="lineNum"> 41 </span> : {
+<span class="lineNum"> 42 </span><span class="lineCov"> 2 : m_rocoll.output(intToPkg(m_pkgid, vocabulary(), cons));</span>
+<span class="lineNum"> 43 </span><span class="lineCov"> 2 : }</span>
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 46 </span> : void Debtags::outputSystem(const std::string&amp; filename, const OUT&amp; out)
+<span class="lineNum"> 47 </span> : {
+<span class="lineNum"> 48 </span> : if (filename == &quot;-&quot;)
+<span class="lineNum"> 49 </span> : {
+<span class="lineNum"> 50 </span> : tagcoll::input::Stdio input(stdin, &quot;&lt;stdin&gt;&quot;);
+<span class="lineNum"> 51 </span> : tagcoll::textformat::parse(input, ept::debtags::stringToPkg(m_pkgid, m_voc, out));
+<span class="lineNum"> 52 </span> : }
+<span class="lineNum"> 53 </span> : else
+<span class="lineNum"> 54 </span> : {
+<span class="lineNum"> 55 </span> : tagcoll::input::Stdio input(filename);
+<span class="lineNum"> 56 </span> : tagcoll::textformat::parse(input, ept::debtags::stringToPkg(m_pkgid, m_voc, out));
+<span class="lineNum"> 57 </span> : }
+<span class="lineNum"> 58 </span> : }
+<span class="lineNum"> 59 </span> :
+<span class="lineNum"> 60 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 61 </span> : void Debtags::outputPatched(const OUT&amp; cons)
+<span class="lineNum"> 62 </span> : {
+<span class="lineNum"> 63 </span><span class="lineCov"> 2 : m_coll.output(intToPkg(m_pkgid, vocabulary(), cons));</span>
+<span class="lineNum"> 64 </span><span class="lineCov"> 2 : }</span>
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 67 </span> : void Debtags::outputPatched(const std::string&amp; filename, const OUT&amp; out)
+<span class="lineNum"> 68 </span> : {
+<span class="lineNum"> 69 </span> : const tagcoll::PatchList&lt;string, Tag&gt;&amp; patch = m_coll.changes();
+<span class="lineNum"> 70 </span> : if (filename == &quot;-&quot;)
+<span class="lineNum"> 71 </span> : {
+<span class="lineNum"> 72 </span> : tagcoll::input::Stdio input(stdin, &quot;&lt;stdin&gt;&quot;);
+<span class="lineNum"> 73 </span> : tagcoll::textformat::parse(input, ept::debtags::stringToPkg(m_pkgid, m_voc, patcher(patch, out)));
+<span class="lineNum"> 74 </span> : }
+<span class="lineNum"> 75 </span> : else
+<span class="lineNum"> 76 </span> : {
+<span class="lineNum"> 77 </span> : tagcoll::input::Stdio input(filename);
+<span class="lineNum"> 78 </span> : tagcoll::textformat::parse(input, ept::debtags::stringToPkg(m_pkgid, m_voc, patcher(patch, out)));
+<span class="lineNum"> 79 </span> : }
+<span class="lineNum"> 80 </span> : }
+<span class="lineNum"> 81 </span> :
+<span class="lineNum"> 82 </span> : }
+<span class="lineNum"> 83 </span> : }
+<span class="lineNum"> 84 </span> :
+<span class="lineNum"> 85 </span> : #include &lt;tagcoll/coll/patched.tcc&gt;
+<span class="lineNum"> 86 </span> :
+<span class="lineNum"> 87 </span> : #endif
+<span class="lineNum"> 88 </span> :
+<span class="lineNum"> 89 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/debtags.test.h.gcov.html b/rep/ept/debtags/debtags.test.h.gcov.html
new file mode 100644
index 0000000..e78c69b
--- /dev/null
+++ b/rep/ept/debtags/debtags.test.h.gcov.html
@@ -0,0 +1,350 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/debtags.test.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/debtags</a> - debtags.test.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">103</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">103</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+<span class="lineNum"> 2 </span> : /**
+<span class="lineNum"> 3 </span> : * @file
+<span class="lineNum"> 4 </span> : * @author Enrico Zini (enrico) &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 5 </span> : */
+<span class="lineNum"> 6 </span> :
+<span class="lineNum"> 7 </span> : /*
+<span class="lineNum"> 8 </span> : * Test for the Debtags data provider
+<span class="lineNum"> 9 </span> : *
+<span class="lineNum"> 10 </span> : * Copyright (C) 2003-2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 11 </span> : *
+<span class="lineNum"> 12 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 13 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 14 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 15 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 16 </span> : *
+<span class="lineNum"> 17 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 18 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 19 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 20 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 21 </span> : *
+<span class="lineNum"> 22 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 23 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 24 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 25 </span> : */
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : #include &lt;ept/debtags/debtags.h&gt;
+<span class="lineNum"> 29 </span> : #include &lt;ept/core/apt.h&gt;
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : #include &lt;tagcoll/coll/simple.h&gt;
+<span class="lineNum"> 32 </span> : #include &lt;tagcoll/stream/sink.h&gt;
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span> : #include &lt;wibble/operators.h&gt;
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : #include &lt;ept/test.h&gt;
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : #ifndef EPT_DEBTAGS_TESTH
+<span class="lineNum"> 39 </span> : #define EPT_DEBTAGS_TESTH
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : using namespace tagcoll;
+<span class="lineNum"> 42 </span> : using namespace std;
+<span class="lineNum"> 43 </span> : using namespace ept;
+<span class="lineNum"> 44 </span> : using namespace ept::debtags;
+<span class="lineNum"> 45 </span> : using namespace wibble::operators;
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span> : struct TestDebtags : DebtagsTestEnvironment
+<span class="lineNum"> 48 </span><span class="lineCov"> 5 : {</span>
+<span class="lineNum"> 49 </span> : Debtags debtags;
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span><span class="lineCov"> 5 : TestDebtags() {}</span>
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span><span class="lineCov"> 10 : Vocabulary&amp; voc() { return debtags.vocabulary(); }</span>
+<span class="lineNum"> 54 </span> :
+<span class="lineNum"> 55 </span><span class="lineCov"> 1 : Test _1() {</span>
+<span class="lineNum"> 56 </span><span class="lineCov"> 21146 : for (Debtags::const_iterator i = debtags.begin(); i != debtags.end(); ++i)</span>
+<span class="lineNum"> 57 </span> : {
+<span class="lineNum"> 58 </span><span class="lineCov"> 21145 : *i;</span>
+<span class="lineNum"> 59 </span><span class="lineCov"> 21145 : i-&gt;first;</span>
+<span class="lineNum"> 60 </span><span class="lineCov"> 21145 : i-&gt;second;</span>
+<span class="lineNum"> 61 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 62 </span><span class="lineCov"> 1 : int items = 0, tags = 0;</span>
+<span class="lineNum"> 63 </span><span class="lineCov"> 1 : debtags.outputSystem(stream::countingSink(items, tags));</span>
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span><span class="lineCov"> 1 : int pitems = 0, ptags = 0;</span>
+<span class="lineNum"> 66 </span><span class="lineCov"> 1 : debtags.outputPatched(stream::countingSink(pitems, ptags));</span>
+<span class="lineNum"> 67 </span> :
+<span class="lineNum"> 68 </span><span class="lineCov"> 2 : assert(items &gt; 10);</span>
+<span class="lineNum"> 69 </span><span class="lineCov"> 2 : assert(tags &gt; 10);</span>
+<span class="lineNum"> 70 </span><span class="lineCov"> 2 : assert(items &lt;= pitems);</span>
+<span class="lineNum"> 71 </span><span class="lineCov"> 2 : assert(tags &lt;= ptags);</span>
+<span class="lineNum"> 72 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span><span class="lineCov"> 1 : Test _2()</span>
+<span class="lineNum"> 75 </span> : {
+<span class="lineNum"> 76 </span><span class="lineCov"> 1 : string p(&quot;debtags&quot;);</span>
+<span class="lineNum"> 77 </span><span class="lineCov"> 1 : std::set&lt;Tag&gt; tags = debtags.getTagsOfItem(p);</span>
+<span class="lineNum"> 78 </span><span class="lineCov"> 1 : assert( !tags.empty() );</span>
+<span class="lineNum"> 79 </span> :
+<span class="lineNum"> 80 </span> : #if 0
+<span class="lineNum"> 81 </span> : for ( std::set&lt; Tag &gt;::iterator i = tags.begin(); i != tags.end(); ++ i ) {
+<span class="lineNum"> 82 </span> : std::cerr &lt;&lt; i-&gt;id() &lt;&lt; &quot;: &quot; &lt;&lt; i-&gt;fullname() &lt;&lt; std::endl;
+<span class="lineNum"> 83 </span> : }
+<span class="lineNum"> 84 </span> : std::cerr &lt;&lt; &quot;---&quot; &lt;&lt; std::endl;
+<span class="lineNum"> 85 </span> : Tag t = voc().tagByName( &quot;interface::commandline&quot; );
+<span class="lineNum"> 86 </span> : std::cerr &lt;&lt; t.id() &lt;&lt; &quot;: &quot; &lt;&lt; t.fullname() &lt;&lt; std::endl;
+<span class="lineNum"> 87 </span> : #endif
+<span class="lineNum"> 88 </span> :
+<span class="lineNum"> 89 </span><span class="lineCov"> 2 : assert_eq( tags.size(), 8u );</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 2 : assert( voc().tagByName( &quot;devel::buildtools&quot; ) &lt;= tags );</span>
+<span class="lineNum"> 91 </span><span class="lineCov"> 2 : assert( voc().tagByName( &quot;implemented-in::c++&quot; ) &lt;= tags );</span>
+<span class="lineNum"> 92 </span><span class="lineCov"> 2 : assert( voc().tagByName( &quot;interface::commandline&quot; ) &lt;= tags );</span>
+<span class="lineNum"> 93 </span><span class="lineCov"> 2 : assert( voc().tagByName( &quot;role::program&quot; ) &lt;= tags );</span>
+<span class="lineNum"> 94 </span><span class="lineCov"> 2 : assert( voc().tagByName( &quot;scope::application&quot; ) &lt;= tags );</span>
+<span class="lineNum"> 95 </span><span class="lineCov"> 2 : assert( voc().tagByName( &quot;suite::debian&quot; ) &lt;= tags );</span>
+<span class="lineNum"> 96 </span><span class="lineCov"> 2 : assert( voc().tagByName( &quot;use::searching&quot; ) &lt;= tags );</span>
+<span class="lineNum"> 97 </span><span class="lineCov"> 2 : assert( voc().tagByName( &quot;works-with::software:package&quot; ) &lt;= tags );</span>
+<span class="lineNum"> 98 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 99 </span> :
+<span class="lineNum"> 100 </span><span class="lineCov"> 1 : Test _3()</span>
+<span class="lineNum"> 101 </span> : {
+<span class="lineNum"> 102 </span> : using namespace std;
+<span class="lineNum"> 103 </span> :
+<span class="lineNum"> 104 </span> : /* Get the 'debtags' package */
+<span class="lineNum"> 105 </span><span class="lineCov"> 1 : string p(&quot;debtags&quot;);</span>
+<span class="lineNum"> 106 </span> :
+<span class="lineNum"> 107 </span> : /* Get its tags */
+<span class="lineNum"> 108 </span><span class="lineCov"> 1 : std::set&lt;Tag&gt; tags = debtags.getTagsOfItem(p);</span>
+<span class="lineNum"> 109 </span><span class="lineCov"> 1 : assert(!tags.empty());</span>
+<span class="lineNum"> 110 </span> :
+<span class="lineNum"> 111 </span> : /*
+<span class="lineNum"> 112 </span> : cerr &lt;&lt; &quot;Intersection size: &quot; &lt;&lt; endl;
+<span class="lineNum"> 113 </span> : using namespace wibble::operators;
+<span class="lineNum"> 114 </span> : std::set&lt;Tag&gt;::const_iterator dbgi = tags.begin();
+<span class="lineNum"> 115 </span> : cerr &lt;&lt; &quot;* &quot; &lt;&lt; dbgi-&gt;fullname() &lt;&lt; &quot;: &quot; &lt;&lt; dbgi-&gt;id() &lt;&lt; endl;
+<span class="lineNum"> 116 </span> : std::set&lt;int&gt; dbgres = debtags.tagdb().getItemsHavingTag(dbgi-&gt;id());
+<span class="lineNum"> 117 </span> : std::set&lt;Package&gt; dbgpres = debtags.getItemsHavingTag(*dbgi);
+<span class="lineNum"> 118 </span> : cerr &lt;&lt; &quot; #pkgs &quot; &lt;&lt; dbgres.size() &lt;&lt; &quot; == &quot; &lt;&lt; dbgpres.size() &lt;&lt; endl;
+<span class="lineNum"> 119 </span> : cerr &lt;&lt; &quot; #isec &quot; &lt;&lt; dbgres.size() &lt;&lt; &quot; == &quot; &lt;&lt; dbgpres.size() &lt;&lt; endl;
+<span class="lineNum"> 120 </span> : cerr &lt;&lt; &quot; &quot;; ppset(dbgpres); cerr &lt;&lt; endl;
+<span class="lineNum"> 121 </span> : cerr &lt;&lt; &quot; &quot;; piset(dbgres); cerr &lt;&lt; endl;
+<span class="lineNum"> 122 </span> : for (++dbgi ; dbgi != tags.end(); ++dbgi)
+<span class="lineNum"> 123 </span> : {
+<span class="lineNum"> 124 </span> : cerr &lt;&lt; &quot;* &quot; &lt;&lt; dbgi-&gt;fullname() &lt;&lt; &quot;: &quot; &lt;&lt; dbgi-&gt;id() &lt;&lt; endl;
+<span class="lineNum"> 125 </span> : std::set&lt;Package&gt; dbgpkgs = debtags.getItemsHavingTag(*dbgi);
+<span class="lineNum"> 126 </span> : std::set&lt;int&gt; dbgids = debtags.tagdb().getItemsHavingTag(dbgi-&gt;id());
+<span class="lineNum"> 127 </span> : cerr &lt;&lt; &quot; &quot;; ppset(dbgpkgs); cerr &lt;&lt; endl;
+<span class="lineNum"> 128 </span> : cerr &lt;&lt; &quot; &quot;; piset(dbgids); cerr &lt;&lt; endl;
+<span class="lineNum"> 129 </span> : cerr &lt;&lt; &quot; #pkgs &quot; &lt;&lt; dbgpkgs.size() &lt;&lt; &quot; == &quot; &lt;&lt; dbgids.size() &lt;&lt; endl;
+<span class="lineNum"> 130 </span> : dbgres &amp;= dbgids;
+<span class="lineNum"> 131 </span> : dbgpres &amp;= dbgpkgs;
+<span class="lineNum"> 132 </span> : cerr &lt;&lt; &quot; #isec &quot; &lt;&lt; dbgres.size() &lt;&lt; &quot; == &quot; &lt;&lt; dbgpres.size() &lt;&lt; endl;
+<span class="lineNum"> 133 </span> : }
+<span class="lineNum"> 134 </span> : cerr &lt;&lt; &quot; &quot; &lt;&lt; dbgres.size() &lt;&lt; endl &lt;&lt; &quot;Results: &quot; &lt;&lt; endl;
+<span class="lineNum"> 135 </span> : for (std::set&lt;int&gt;::const_iterator i = dbgres.begin(); i != dbgres.end(); ++i)
+<span class="lineNum"> 136 </span> : cerr &lt;&lt; &quot; &quot; &lt;&lt; *i &lt;&lt; endl;
+<span class="lineNum"> 137 </span> : */
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> :
+<span class="lineNum"> 140 </span> : // cerr &lt;&lt; &quot;Tags of debtags: &quot;;
+<span class="lineNum"> 141 </span> : // for (std::set&lt;Tag&gt;::const_iterator i = tags.begin(); i != tags.end(); ++i)
+<span class="lineNum"> 142 </span> : // {
+<span class="lineNum"> 143 </span> : // cerr &lt;&lt; &quot; &quot; + i-&gt;fullname() &lt;&lt; endl;
+<span class="lineNum"> 144 </span> : // std::set&lt;Package&gt; packages = debtags.getItemsHavingTag(*i);
+<span class="lineNum"> 145 </span> : // for (std::set&lt;Package&gt;::const_iterator p = packages.begin();
+<span class="lineNum"> 146 </span> : // p != packages.end(); ++p)
+<span class="lineNum"> 147 </span> : // cerr &lt;&lt; &quot; PKG &quot; &lt;&lt; p-&gt;name() &lt;&lt; endl;
+<span class="lineNum"> 148 </span> : // }
+<span class="lineNum"> 149 </span> : // cerr &lt;&lt; endl;
+<span class="lineNum"> 150 </span> :
+<span class="lineNum"> 151 </span> : /* Get the items for the tagset of 'debtags' */
+<span class="lineNum"> 152 </span><span class="lineCov"> 1 : std::set&lt;string&gt; packages = debtags.getItemsHavingTags(tags);</span>
+<span class="lineNum"> 153 </span> : //cerr &lt;&lt; packages.size() &lt;&lt; endl;
+<span class="lineNum"> 154 </span><span class="lineCov"> 1 : assert(!packages.empty());</span>
+<span class="lineNum"> 155 </span> : /*
+<span class="lineNum"> 156 </span> : for ( std::set&lt; Package &gt;::iterator i = packages.begin(); i != packages.end(); ++ i )
+<span class="lineNum"> 157 </span> : std::cerr &lt;&lt; i-&gt;name() &lt;&lt; std::endl;
+<span class="lineNum"> 158 </span> : std::cerr &lt;&lt; &quot;---&quot; &lt;&lt; std::endl;
+<span class="lineNum"> 159 </span> : std::cerr &lt;&lt; p.name() &lt;&lt; std::endl;
+<span class="lineNum"> 160 </span> : */
+<span class="lineNum"> 161 </span> : /* They should at least contain 'debtags' */
+<span class="lineNum"> 162 </span><span class="lineCov"> 2 : assert( p &lt;= packages );</span>
+<span class="lineNum"> 163 </span> :
+<span class="lineNum"> 164 </span> : /* Get one of the tags of 'debtags' */
+<span class="lineNum"> 165 </span><span class="lineCov"> 2 : Tag tag = *tags.begin();</span>
+<span class="lineNum"> 166 </span><span class="lineCov"> 1 : assert(tag);</span>
+<span class="lineNum"> 167 </span> :
+<span class="lineNum"> 168 </span> : /* Get its items */
+<span class="lineNum"> 169 </span> : {
+<span class="lineNum"> 170 </span> : /* Need this workaround until I figure out how to tell the new GCC
+<span class="lineNum"> 171 </span> : * that TagDB is a TDBReadonlyDiskIndex and should behave as such
+<span class="lineNum"> 172 </span> : */
+<span class="lineNum"> 173 </span><span class="lineCov"> 1 : std::set&lt;Tag&gt; ts;</span>
+<span class="lineNum"> 174 </span><span class="lineCov"> 1 : ts.insert(tag);</span>
+<span class="lineNum"> 175 </span><span class="lineCov"> 1 : packages = debtags.getItemsHavingTags(ts);</span>
+<span class="lineNum"> 176 </span> : }
+<span class="lineNum"> 177 </span> : //packages = c.debtags().tagdb().getItems(tag);
+<span class="lineNum"> 178 </span><span class="lineCov"> 1 : assert(!packages.empty());</span>
+<span class="lineNum"> 179 </span> : /* They should at least contain 'debtags' */
+<span class="lineNum"> 180 </span><span class="lineCov"> 2 : assert( p &lt;= packages );</span>
+<span class="lineNum"> 181 </span> :
+<span class="lineNum"> 182 </span> : //c.debtags().getTags(&quot;&quot;); // XXX HACK AWW!
+<span class="lineNum"> 183 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 184 </span> :
+<span class="lineNum"> 185 </span><span class="lineCov"> 1 : Test _4()</span>
+<span class="lineNum"> 186 </span> : {
+<span class="lineNum"> 187 </span><span class="lineCov"> 1 : std::string patchfile = Path::debtagsUserSourceDir() + &quot;patch&quot;;</span>
+<span class="lineNum"> 188 </span><span class="lineCov"> 1 : unlink(patchfile.c_str());</span>
+<span class="lineNum"> 189 </span> :
+<span class="lineNum"> 190 </span><span class="lineCov"> 1 : string p(&quot;debtags&quot;);</span>
+<span class="lineNum"> 191 </span> :
+<span class="lineNum"> 192 </span> : /* Get its tags */
+<span class="lineNum"> 193 </span><span class="lineCov"> 1 : std::set&lt;Tag&gt; tags = debtags.getTagsOfItem(p);</span>
+<span class="lineNum"> 194 </span><span class="lineCov"> 1 : assert(!tags.empty());</span>
+<span class="lineNum"> 195 </span> :
+<span class="lineNum"> 196 </span> : // Ensure that it's not tagged with gameplaying
+<span class="lineNum"> 197 </span><span class="lineCov"> 2 : Tag t = voc().tagByName(&quot;use::gameplaying&quot;);</span>
+<span class="lineNum"> 198 </span><span class="lineCov"> 2 : assert(! (t &lt;= tags) );</span>
+<span class="lineNum"> 199 </span> :
+<span class="lineNum"> 200 </span> : // Add the gameplaying tag
+<span class="lineNum"> 201 </span><span class="lineCov"> 1 : PatchList&lt;string, Tag&gt; change;</span>
+<span class="lineNum"> 202 </span><span class="lineCov"> 1 : change.addPatch(Patch&lt;string, Tag&gt;(p, wibble::singleton(t), wibble::Empty&lt;Tag&gt;()));</span>
+<span class="lineNum"> 203 </span><span class="lineCov"> 1 : debtags.applyChange(change);</span>
+<span class="lineNum"> 204 </span> :
+<span class="lineNum"> 205 </span> : // See that the patch is non empty
+<span class="lineNum"> 206 </span><span class="lineCov"> 1 : PatchList&lt;string, Tag&gt; tmp = debtags.changes();</span>
+<span class="lineNum"> 207 </span><span class="lineCov"> 1 : assert(tmp.size() &gt; 0);</span>
+<span class="lineNum"> 208 </span><span class="lineCov"> 2 : assert_eq(tmp.size(), 1u);</span>
+<span class="lineNum"> 209 </span> :
+<span class="lineNum"> 210 </span> : // Ensure that the tag has been added
+<span class="lineNum"> 211 </span><span class="lineCov"> 2 : tags = debtags.getTagsOfItem(p);</span>
+<span class="lineNum"> 212 </span><span class="lineCov"> 1 : assert(!tags.empty());</span>
+<span class="lineNum"> 213 </span> :
+<span class="lineNum"> 214 </span><span class="lineCov"> 2 : t = voc().tagByName(&quot;use::gameplaying&quot;);</span>
+<span class="lineNum"> 215 </span><span class="lineCov"> 2 : assert( t &lt;= tags );</span>
+<span class="lineNum"> 216 </span> :
+<span class="lineNum"> 217 </span> : // Save the patch
+<span class="lineNum"> 218 </span><span class="lineCov"> 1 : debtags.savePatch();</span>
+<span class="lineNum"> 219 </span> :
+<span class="lineNum"> 220 </span> : // Check that the saved patch is correct
+<span class="lineNum"> 221 </span><span class="lineCov"> 1 : FILE* in = fopen(patchfile.c_str(), &quot;r&quot;);</span>
+<span class="lineNum"> 222 </span><span class="lineCov"> 1 : string writtenPatch;</span>
+<span class="lineNum"> 223 </span> : int c;
+<span class="lineNum"> 224 </span><span class="lineCov"> 29 : while ((c = getc(in)) != EOF)</span>
+<span class="lineNum"> 225 </span><span class="lineCov"> 27 : writtenPatch += c;</span>
+<span class="lineNum"> 226 </span><span class="lineCov"> 1 : fclose(in);</span>
+<span class="lineNum"> 227 </span> :
+<span class="lineNum"> 228 </span><span class="lineCov"> 1 : assert_eq(writtenPatch, string(&quot;debtags: +use::gameplaying\n&quot;));</span>
+<span class="lineNum"> 229 </span> :
+<span class="lineNum"> 230 </span><span class="lineCov"> 2 : unlink(patchfile.c_str());</span>
+<span class="lineNum"> 231 </span> :
+<span class="lineNum"> 232 </span> : // Reapply the patch and see that it doesn't disrept things
+<span class="lineNum"> 233 </span><span class="lineCov"> 1 : debtags.applyChange(change);</span>
+<span class="lineNum"> 234 </span> :
+<span class="lineNum"> 235 </span> : // The patch should not have changed
+<span class="lineNum"> 236 </span><span class="lineCov"> 1 : tmp = debtags.changes();</span>
+<span class="lineNum"> 237 </span><span class="lineCov"> 1 : assert_eq(tmp.size(), 1u);</span>
+<span class="lineNum"> 238 </span><span class="lineCov"> 2 : assert_eq(tmp.begin()-&gt;first, p);</span>
+<span class="lineNum"> 239 </span><span class="lineCov"> 1 : assert_eq(tmp.begin()-&gt;second.item, p);</span>
+<span class="lineNum"> 240 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 241 </span> :
+<span class="lineNum"> 242 </span> : // If there is no data, Debtags should work as an empty collection
+<span class="lineNum"> 243 </span><span class="lineCov"> 1 : Test _5()</span>
+<span class="lineNum"> 244 </span> : {
+<span class="lineNum"> 245 </span><span class="lineCov"> 1 : Path::OverrideDebtagsSourceDir odsd(&quot;./empty&quot;);</span>
+<span class="lineNum"> 246 </span><span class="lineCov"> 2 : Path::OverrideDebtagsIndexDir odid(&quot;./empty&quot;);</span>
+<span class="lineNum"> 247 </span><span class="lineCov"> 2 : Path::OverrideDebtagsUserSourceDir odusd(&quot;./empty&quot;);</span>
+<span class="lineNum"> 248 </span><span class="lineCov"> 2 : Path::OverrideDebtagsUserIndexDir oduid(&quot;./empty&quot;);</span>
+<span class="lineNum"> 249 </span><span class="lineCov"> 1 : Debtags empty;</span>
+<span class="lineNum"> 250 </span> :
+<span class="lineNum"> 251 </span><span class="lineCov"> 1 : assert(empty.begin() == empty.end());</span>
+<span class="lineNum"> 252 </span><span class="lineCov"> 1 : assert_eq(empty.timestamp(), 0);</span>
+<span class="lineNum"> 253 </span><span class="lineCov"> 2 : assert(!empty.hasData());</span>
+<span class="lineNum"> 254 </span> :
+<span class="lineNum"> 255 </span><span class="lineCov"> 1 : tagcoll::PatchList&lt;std::string, Tag&gt; patches = empty.changes();</span>
+<span class="lineNum"> 256 </span><span class="lineCov"> 1 : assert(patches.empty());</span>
+<span class="lineNum"> 257 </span> :
+<span class="lineNum"> 258 </span><span class="lineCov"> 2 : set&lt;Tag&gt; res = empty.getTagsOfItem(&quot;apt&quot;);</span>
+<span class="lineNum"> 259 </span><span class="lineCov"> 2 : assert(res.empty());</span>
+<span class="lineNum"> 260 </span><span class="lineCov"> 2 : res = empty.getTagsOfItems(wibble::singleton(string(&quot;apt&quot;)));</span>
+<span class="lineNum"> 261 </span><span class="lineCov"> 2 : assert(res.empty());</span>
+<span class="lineNum"> 262 </span> :
+<span class="lineNum"> 263 </span><span class="lineCov"> 2 : res = empty.getAllTags();</span>
+<span class="lineNum"> 264 </span><span class="lineCov"> 1 : assert(res.empty());</span>
+<span class="lineNum"> 265 </span> :
+<span class="lineNum"> 266 </span><span class="lineCov"> 1 : tagcoll::coll::Simple&lt;string, Tag&gt; coll;</span>
+<span class="lineNum"> 267 </span><span class="lineCov"> 1 : empty.outputSystem(tagcoll::coll::inserter(coll));</span>
+<span class="lineNum"> 268 </span><span class="lineCov"> 1 : assert_eq(coll.itemCount(), 0u);</span>
+<span class="lineNum"> 269 </span> :
+<span class="lineNum"> 270 </span><span class="lineCov"> 1 : coll.clear();</span>
+<span class="lineNum"> 271 </span> :
+<span class="lineNum"> 272 </span><span class="lineCov"> 1 : empty.outputPatched(tagcoll::coll::inserter(coll));</span>
+<span class="lineNum"> 273 </span><span class="lineCov"> 1 : assert_eq(coll.itemCount(), 0u);</span>
+<span class="lineNum"> 274 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 275 </span> :
+<span class="lineNum"> 276 </span> : };
+<span class="lineNum"> 277 </span> :
+<span class="lineNum"> 278 </span> : #include &lt;ept/debtags/debtags.tcc&gt;
+<span class="lineNum"> 279 </span> : #include &lt;tagcoll/coll/simple.tcc&gt;
+<span class="lineNum"> 280 </span> :
+<span class="lineNum"> 281 </span> : #endif
+<span class="lineNum"> 282 </span> :
+<span class="lineNum"> 283 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/expression.cc.gcov.html b/rep/ept/debtags/expression.cc.gcov.html
new file mode 100644
index 0000000..08ed2aa
--- /dev/null
+++ b/rep/ept/debtags/expression.cc.gcov.html
@@ -0,0 +1,118 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/expression.cc</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/debtags</a> - expression.cc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">5</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">5</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /** \file
+<span class="lineNum"> 2 </span> : * Match tag expressions against sets of Debtags Tags
+<span class="lineNum"> 3 </span> : */
+<span class="lineNum"> 4 </span> :
+<span class="lineNum"> 5 </span> : /*
+<span class="lineNum"> 6 </span> : * Copyright (C) 2003,2004,2005,2006,2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 7 </span> : *
+<span class="lineNum"> 8 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 9 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 10 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 11 </span> : * (at your option) any later version.
+<span class="lineNum"> 12 </span> : *
+<span class="lineNum"> 13 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 14 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 15 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 16 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 17 </span> : *
+<span class="lineNum"> 18 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 19 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 20 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 21 </span> : */
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : #include &lt;ept/debtags/expression.h&gt;
+<span class="lineNum"> 24 </span> : #include &lt;string&gt;
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : namespace tagcoll
+<span class="lineNum"> 27 </span> : {
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : template&lt;&gt;
+<span class="lineNum"> 30 </span><span class="lineCov"> 12 : bool Expression::operator()(const std::set&lt;ept::debtags::Tag&gt;&amp; tags) const</span>
+<span class="lineNum"> 31 </span> : {
+<span class="lineNum"> 32 </span><span class="lineCov"> 12 : std::set&lt;std::string&gt; names;</span>
+<span class="lineNum"> 33 </span><span class="lineCov"> 48 : for (std::set&lt;ept::debtags::Tag&gt;::const_iterator i = tags.begin();</span>
+<span class="lineNum"> 34 </span> : i != tags.end(); ++i)
+<span class="lineNum"> 35 </span><span class="lineCov"> 36 : names.insert(i-&gt;fullname());</span>
+<span class="lineNum"> 36 </span><span class="lineCov"> 12 : return this-&gt;m_impl-&gt;eval(names);</span>
+<span class="lineNum"> 37 </span> : }
+<span class="lineNum"> 38 </span> :
+<span class="lineNum"> 39 </span> : template&lt;&gt;
+<span class="lineNum"> 40 </span> : bool Expression::operator()(const std::set&lt;ept::debtags::Facet&gt;&amp; tags) const
+<span class="lineNum"> 41 </span> : {
+<span class="lineNum"> 42 </span> : std::set&lt;std::string&gt; names;
+<span class="lineNum"> 43 </span> : for (std::set&lt;ept::debtags::Facet&gt;::const_iterator i = tags.begin();
+<span class="lineNum"> 44 </span> : i != tags.end(); ++i)
+<span class="lineNum"> 45 </span> : names.insert(i-&gt;name());
+<span class="lineNum"> 46 </span> : return this-&gt;m_impl-&gt;eval(names);
+<span class="lineNum"> 47 </span> : }
+<span class="lineNum"> 48 </span> :
+<span class="lineNum"> 49 </span> : };
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/expression.test.h.gcov.html b/rep/ept/debtags/expression.test.h.gcov.html
new file mode 100644
index 0000000..3a099a8
--- /dev/null
+++ b/rep/ept/debtags/expression.test.h.gcov.html
@@ -0,0 +1,150 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/expression.test.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/debtags</a> - expression.test.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">32</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">32</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /*
+<span class="lineNum"> 2 </span> : * Match tag expressions against sets of Debtags Tags
+<span class="lineNum"> 3 </span> : *
+<span class="lineNum"> 4 </span> : * Copyright (C) 2005,2006,2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 5 </span> : *
+<span class="lineNum"> 6 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 7 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 8 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 9 </span> : * (at your option) any later version.
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 12 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 13 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 14 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 17 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 18 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 19 </span> : */
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : #include &lt;wibble/test.h&gt;
+<span class="lineNum"> 22 </span> : #include &lt;ept/debtags/maint/path.h&gt;
+<span class="lineNum"> 23 </span> : #include &lt;ept/debtags/expression.h&gt;
+<span class="lineNum"> 24 </span> : #include &lt;ept/debtags/vocabulary.h&gt;
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &quot;debtags.test.h&quot;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : using namespace tagcoll;
+<span class="lineNum"> 29 </span> : using namespace std;
+<span class="lineNum"> 30 </span> : using namespace ept::debtags;
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span><span class="lineCov"> 2 : struct TestExpression : DebtagsTestEnvironment {</span>
+<span class="lineNum"> 33 </span> : Vocabulary voc;
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span><span class="lineCov"> 1 : Test _1()</span>
+<span class="lineNum"> 36 </span> : {
+<span class="lineNum"> 37 </span><span class="lineCov"> 1 : set&lt;Tag&gt; test;</span>
+<span class="lineNum"> 38 </span><span class="lineCov"> 1 : test.insert(voc.tagByName(&quot;use::editing&quot;));</span>
+<span class="lineNum"> 39 </span><span class="lineCov"> 2 : test.insert(voc.tagByName(&quot;use::viewing&quot;));</span>
+<span class="lineNum"> 40 </span><span class="lineCov"> 2 : test.insert(voc.tagByName(&quot;works-with::text&quot;));</span>
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span><span class="lineCov"> 2 : assert_eq(test.size(), 3u);</span>
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span><span class="lineCov"> 2 : Expression e1(&quot;use::editing&quot;);</span>
+<span class="lineNum"> 45 </span><span class="lineCov"> 2 : assert(e1(test));</span>
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span><span class="lineCov"> 2 : Expression e2(&quot;use::editing &amp;&amp; use::viewing&quot;);</span>
+<span class="lineNum"> 48 </span><span class="lineCov"> 2 : assert(e2(test));</span>
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span><span class="lineCov"> 2 : e1 = Expression(&quot;!use::editing&quot;);</span>
+<span class="lineNum"> 51 </span><span class="lineCov"> 2 : assert(!e1(test));</span>
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span><span class="lineCov"> 2 : e1 = Expression(&quot;use::editing || sugo&quot;);</span>
+<span class="lineNum"> 54 </span><span class="lineCov"> 2 : assert(e1(test));</span>
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span><span class="lineCov"> 2 : e1 = Expression(&quot;use::editing &amp;&amp; !sugo&quot;);</span>
+<span class="lineNum"> 57 </span><span class="lineCov"> 2 : assert(e1(test));</span>
+<span class="lineNum"> 58 </span> :
+<span class="lineNum"> 59 </span><span class="lineCov"> 2 : e1 = Expression(&quot;use::editing &amp;&amp; !use::viewing&quot;);</span>
+<span class="lineNum"> 60 </span><span class="lineCov"> 2 : assert(!e1(test));</span>
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span><span class="lineCov"> 2 : e1 = Expression(&quot;(use::editing || sugo) &amp;&amp; (use::viewing &amp;&amp; works-with::text)&quot;);</span>
+<span class="lineNum"> 63 </span><span class="lineCov"> 2 : assert(e1(test));</span>
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span><span class="lineCov"> 2 : e1 = Expression(&quot;!(use::editinuse::editingra &amp;&amp; works-with::text)&quot;);</span>
+<span class="lineNum"> 66 </span><span class="lineCov"> 2 : assert(e1(test));</span>
+<span class="lineNum"> 67 </span> :
+<span class="lineNum"> 68 </span><span class="lineCov"> 2 : e1 = Expression(&quot;works-with::*&quot;);</span>
+<span class="lineNum"> 69 </span><span class="lineCov"> 2 : assert(e1(test));</span>
+<span class="lineNum"> 70 </span> :
+<span class="lineNum"> 71 </span><span class="lineCov"> 2 : e1 = Expression(&quot;*::text&quot;);</span>
+<span class="lineNum"> 72 </span><span class="lineCov"> 2 : assert(e1(test));</span>
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span><span class="lineCov"> 2 : e1 = Expression(&quot;!*::antani&quot;);</span>
+<span class="lineNum"> 75 </span><span class="lineCov"> 2 : assert(e1(test));</span>
+<span class="lineNum"> 76 </span> :
+<span class="lineNum"> 77 </span><span class="lineCov"> 2 : e1 = Expression(&quot;*::antani&quot;);</span>
+<span class="lineNum"> 78 </span><span class="lineCov"> 2 : assert(!e1(test));</span>
+<span class="lineNum"> 79 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span> : };
+<span class="lineNum"> 82 </span> :
+<span class="lineNum"> 83 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/index.html b/rep/ept/debtags/index.html
new file mode 100644
index 0000000..1f5c5bd
--- /dev/null
+++ b/rep/ept/debtags/index.html
@@ -0,0 +1,173 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - ept/debtags</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">702</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">89.2 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">626</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="debtags.cc.gcov.html">debtags.cc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../amber.png" width=48 height=10 alt="48.1%"><img src="../../snow.png" width=52 height=10 alt="48.1%"></td></tr></table>
+ </td>
+ <td class="coverPerMed">48.1&nbsp;%</td>
+ <td class="coverNumMed">39&nbsp;/&nbsp;81&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="debtags.h.gcov.html">debtags.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=93 height=10 alt="93.1%"><img src="../../snow.png" width=7 height=10 alt="93.1%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">93.1&nbsp;%</td>
+ <td class="coverNumHi">67&nbsp;/&nbsp;72&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="debtags.tcc.gcov.html">debtags.tcc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">4&nbsp;/&nbsp;4&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="debtags.test.h.gcov.html">debtags.test.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">103&nbsp;/&nbsp;103&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="expression.cc.gcov.html">expression.cc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">5&nbsp;/&nbsp;5&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="expression.test.h.gcov.html">expression.test.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">32&nbsp;/&nbsp;32&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="tag.cc.gcov.html">tag.cc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=75 height=10 alt="74.6%"><img src="../../snow.png" width=25 height=10 alt="74.6%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">74.6&nbsp;%</td>
+ <td class="coverNumHi">44&nbsp;/&nbsp;59&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="tag.h.gcov.html">tag.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=94 height=10 alt="93.8%"><img src="../../snow.png" width=6 height=10 alt="93.8%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">93.8&nbsp;%</td>
+ <td class="coverNumHi">15&nbsp;/&nbsp;16&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="vocabulary.cc.gcov.html">vocabulary.cc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=95 height=10 alt="95.1%"><img src="../../snow.png" width=5 height=10 alt="95.1%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">95.1&nbsp;%</td>
+ <td class="coverNumHi">97&nbsp;/&nbsp;102&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="vocabulary.h.gcov.html">vocabulary.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=87 height=10 alt="87.3%"><img src="../../snow.png" width=13 height=10 alt="87.3%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">87.3&nbsp;%</td>
+ <td class="coverNumHi">48&nbsp;/&nbsp;55&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="vocabulary.test.h.gcov.html">vocabulary.test.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=99 height=10 alt="99.4%"><img src="../../snow.png" width=1 height=10 alt="99.4%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">99.4&nbsp;%</td>
+ <td class="coverNumHi">172&nbsp;/&nbsp;173&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/maint/debdbparser.cc.gcov.html b/rep/ept/debtags/maint/debdbparser.cc.gcov.html
new file mode 100644
index 0000000..df9b37c
--- /dev/null
+++ b/rep/ept/debtags/maint/debdbparser.cc.gcov.html
@@ -0,0 +1,255 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/maint/debdbparser.cc</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/debtags/maint</a> - debdbparser.cc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">64</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">84.4 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">54</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /*
+<span class="lineNum"> 2 </span> : * Parser for debian database files
+<span class="lineNum"> 3 </span> : *
+<span class="lineNum"> 4 </span> : * Copyright (C) 2003--2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 5 </span> : *
+<span class="lineNum"> 6 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 7 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 8 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 9 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 12 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 13 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 14 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 17 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 18 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 19 </span> : */
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : #include &lt;ept/debtags/maint/debdbparser.h&gt;
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : #include &lt;tagcoll/input/base.h&gt;
+<span class="lineNum"> 24 </span> :
+<span class="lineNum"> 25 </span> : #include &lt;map&gt;
+<span class="lineNum"> 26 </span> : #include &lt;ctype.h&gt;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : // using namespace std;
+<span class="lineNum"> 29 </span> : using namespace tagcoll;
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : namespace ept {
+<span class="lineNum"> 32 </span> : namespace debtags {
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span> : // Eat spaces and empty lines
+<span class="lineNum"> 35 </span> : // Returns the number of '\n' encountered
+<span class="lineNum"> 36 </span><span class="lineCov"> 12089 : int DebDBParser::eatSpacesAndEmptyLines()</span>
+<span class="lineNum"> 37 </span> : {
+<span class="lineNum"> 38 </span><span class="lineCov"> 12089 : int res = 0;</span>
+<span class="lineNum"> 39 </span> : int c;
+<span class="lineNum"> 40 </span><span class="lineCov"> 31183 : while ((c = in.nextChar()) != input::Input::Eof &amp;&amp; (isblank(c) || c == '\n'))</span>
+<span class="lineNum"> 41 </span><span class="lineCov"> 7005 : if (c == '\n')</span>
+<span class="lineNum"> 42 </span> : {
+<span class="lineNum"> 43 </span><span class="lineCov"> 3314 : isBOL = true;</span>
+<span class="lineNum"> 44 </span> : //line++;
+<span class="lineNum"> 45 </span><span class="lineCov"> 3314 : res++;</span>
+<span class="lineNum"> 46 </span> : } else
+<span class="lineNum"> 47 </span><span class="lineCov"> 3691 : isBOL = false;</span>
+<span class="lineNum"> 48 </span> :
+<span class="lineNum"> 49 </span><span class="lineCov"> 12089 : if (c == input::Input::Eof)</span>
+<span class="lineNum"> 50 </span><span class="lineCov"> 1308 : isEOF = true;</span>
+<span class="lineNum"> 51 </span> : else
+<span class="lineNum"> 52 </span><span class="lineCov"> 10781 : in.pushChar(c);</span>
+<span class="lineNum"> 53 </span> :
+<span class="lineNum"> 54 </span><span class="lineCov"> 12089 : return res;</span>
+<span class="lineNum"> 55 </span> : }
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : // Get the ^([A-Za-z0-9]+) field name
+<span class="lineNum"> 58 </span><span class="lineCov"> 7094 : std::string DebDBParser::getFieldName()</span>
+<span class="lineNum"> 59 </span> : {
+<span class="lineNum"> 60 </span><span class="lineCov"> 7094 : if (! isBOL)</span>
+<span class="lineNum"> 61 </span><span class="lineNoCov"> 0 : throw exception::Parser(in, &quot;field must start at the beginning of the line&quot;);</span>
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span><span class="lineCov"> 7094 : std::string res;</span>
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : int c;
+<span class="lineNum"> 66 </span><span class="lineCov"> 63954 : while ((c = in.nextChar()) != input::Input::Eof &amp;&amp; (isalnum(c) || c == '-'))</span>
+<span class="lineNum"> 67 </span><span class="lineCov"> 49766 : res += c;</span>
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span><span class="lineCov"> 7094 : if (c == input::Input::Eof)</span>
+<span class="lineNum"> 70 </span> : {
+<span class="lineNum"> 71 </span><span class="lineNoCov"> 0 : isEOF = true;</span>
+<span class="lineNum"> 72 </span><span class="lineNoCov"> 0 : if (!res.empty())</span>
+<span class="lineNum"> 73 </span><span class="lineNoCov"> 0 : throw exception::Parser(in, &quot;field is truncated at end of file. Last line begins with: \&quot;&quot; + res + &quot;\n&quot;);</span>
+<span class="lineNum"> 74 </span> : } else
+<span class="lineNum"> 75 </span><span class="lineCov"> 7094 : in.pushChar(c);</span>
+<span class="lineNum"> 76 </span> :
+<span class="lineNum"> 77 </span><span class="lineNoCov"> 0 : return res;</span>
+<span class="lineNum"> 78 </span> : }
+<span class="lineNum"> 79 </span> :
+<span class="lineNum"> 80 </span> : // Eat the \s*: characters that divide the field name and the field
+<span class="lineNum"> 81 </span> : // data
+<span class="lineNum"> 82 </span><span class="lineCov"> 7094 : void DebDBParser::eatFieldSep()</span>
+<span class="lineNum"> 83 </span> : {
+<span class="lineNum"> 84 </span> : int c;
+<span class="lineNum"> 85 </span> :
+<span class="lineNum"> 86 </span><span class="lineCov"> 7094 : while ((c = in.nextChar()) != input::Input::Eof &amp;&amp; isblank(c))</span>
+<span class="lineNum"> 87 </span> : ;
+<span class="lineNum"> 88 </span> :
+<span class="lineNum"> 89 </span><span class="lineCov"> 7094 : if (c != ':')</span>
+<span class="lineNum"> 90 </span> : {
+<span class="lineNum"> 91 </span><span class="lineNoCov"> 0 : if (c == input::Input::Eof)</span>
+<span class="lineNum"> 92 </span> : {
+<span class="lineNum"> 93 </span><span class="lineNoCov"> 0 : isEOF = true;</span>
+<span class="lineNum"> 94 </span><span class="lineNoCov"> 0 : throw exception::Parser(in, &quot;field is truncated at end of file&quot;);</span>
+<span class="lineNum"> 95 </span> : } else {
+<span class="lineNum"> 96 </span><span class="lineNoCov"> 0 : throw exception::Parser(in, std::string(&quot;invalid character `&quot;) + (char)c + &quot;' expecting `:'&quot;);</span>
+<span class="lineNum"> 97 </span> : }
+<span class="lineNum"> 98 </span> : }
+<span class="lineNum"> 99 </span><span class="lineCov"> 7094 : }</span>
+<span class="lineNum"> 100 </span> :
+<span class="lineNum"> 101 </span> : // Get the \s*(.+?)\s*\n of a body line
+<span class="lineNum"> 102 </span><span class="lineCov"> 17875 : void DebDBParser::appendFieldBody(std::string&amp; body)</span>
+<span class="lineNum"> 103 </span> : {
+<span class="lineNum"> 104 </span> : int c;
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span> : // Skip leading spaces
+<span class="lineNum"> 107 </span><span class="lineCov"> 17875 : while ((c = in.nextChar()) != input::Input::Eof &amp;&amp; isblank(c))</span>
+<span class="lineNum"> 108 </span> : ;
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span> : // Get the body part
+<span class="lineNum"> 111 </span><span class="lineCov"> 280757 : for ( ; c != input::Input::Eof &amp;&amp; c != '\n'; c = in.nextChar())</span>
+<span class="lineNum"> 112 </span><span class="lineCov"> 269976 : body += c;</span>
+<span class="lineNum"> 113 </span> :
+<span class="lineNum"> 114 </span> : // Delete trailing spaces
+<span class="lineNum"> 115 </span><span class="lineCov"> 10781 : size_t end = body.find_last_not_of(&quot; \t&quot;);</span>
+<span class="lineNum"> 116 </span><span class="lineCov"> 10781 : if (end != std::string::npos)</span>
+<span class="lineNum"> 117 </span><span class="lineCov"> 10781 : body.resize(end + 1);</span>
+<span class="lineNum"> 118 </span> :
+<span class="lineNum"> 119 </span><span class="lineCov"> 10781 : if (c == input::Input::Eof)</span>
+<span class="lineNum"> 120 </span><span class="lineNoCov"> 0 : isEOF = true;</span>
+<span class="lineNum"> 121 </span> : else
+<span class="lineNum"> 122 </span> : {
+<span class="lineNum"> 123 </span> : //line++;
+<span class="lineNum"> 124 </span><span class="lineCov"> 10781 : isBOL = true;</span>
+<span class="lineNum"> 125 </span> : }
+<span class="lineNum"> 126 </span><span class="lineCov"> 10781 : }</span>
+<span class="lineNum"> 127 </span> :
+<span class="lineNum"> 128 </span> :
+<span class="lineNum"> 129 </span><span class="lineCov"> 1308 : DebDBParser::DebDBParser(input::Input&amp; input) :</span>
+<span class="lineNum"> 130 </span><span class="lineCov"> 1308 : in(input), isBOL(true), isEOF(false)</span>
+<span class="lineNum"> 131 </span> : {
+<span class="lineNum"> 132 </span> : // Go at the start of the next record
+<span class="lineNum"> 133 </span><span class="lineCov"> 1308 : eatSpacesAndEmptyLines();</span>
+<span class="lineNum"> 134 </span><span class="lineCov"> 1308 : }</span>
+<span class="lineNum"> 135 </span> :
+<span class="lineNum"> 136 </span> :
+<span class="lineNum"> 137 </span> : // Read a record and positions itself at the start of the next one
+<span class="lineNum"> 138 </span> : // Returns false when there are no more records available
+<span class="lineNum"> 139 </span><span class="lineCov"> 3261 : bool DebDBParser::nextRecord(Record&amp; rec)</span>
+<span class="lineNum"> 140 </span> : {
+<span class="lineNum"> 141 </span><span class="lineCov"> 3261 : if (isEOF)</span>
+<span class="lineNum"> 142 </span><span class="lineCov"> 7 : return false;</span>
+<span class="lineNum"> 143 </span> :
+<span class="lineNum"> 144 </span><span class="lineCov"> 3254 : rec.clear();</span>
+<span class="lineNum"> 145 </span> :
+<span class="lineNum"> 146 </span> : int n;
+<span class="lineNum"> 147 </span><span class="lineCov"> 12880 : do {</span>
+<span class="lineNum"> 148 </span> : // Read the field name
+<span class="lineNum"> 149 </span><span class="lineCov"> 7094 : std::string field = getFieldName();</span>
+<span class="lineNum"> 150 </span><span class="lineCov"> 7094 : std::string body;</span>
+<span class="lineNum"> 151 </span> :
+<span class="lineNum"> 152 </span> : //fprintf(stderr, &quot;Got field: %.*s\n&quot;, field.size(), field.data());
+<span class="lineNum"> 153 </span> :
+<span class="lineNum"> 154 </span> : // Read the colon
+<span class="lineNum"> 155 </span><span class="lineCov"> 7094 : eatFieldSep();</span>
+<span class="lineNum"> 156 </span> :
+<span class="lineNum"> 157 </span> : // Read the first line of the field body
+<span class="lineNum"> 158 </span><span class="lineCov"> 7094 : appendFieldBody(body);</span>
+<span class="lineNum"> 159 </span> : //fprintf(stderr, &quot;Got body: %.*s\n&quot;, body.size(), body.data());
+<span class="lineNum"> 160 </span> :
+<span class="lineNum"> 161 </span> : // Read the continuation lines of field body
+<span class="lineNum"> 162 </span><span class="lineCov"> 17875 : while ((n = eatSpacesAndEmptyLines()) == 0 &amp;&amp; ! isBOL)</span>
+<span class="lineNum"> 163 </span> : {
+<span class="lineNum"> 164 </span><span class="lineCov"> 3687 : body += '\n';</span>
+<span class="lineNum"> 165 </span> :
+<span class="lineNum"> 166 </span><span class="lineCov"> 3687 : size_t start_size = body.size();</span>
+<span class="lineNum"> 167 </span> :
+<span class="lineNum"> 168 </span><span class="lineCov"> 3687 : appendFieldBody(body);</span>
+<span class="lineNum"> 169 </span> :
+<span class="lineNum"> 170 </span> : // Check for dot-only lines to be changed to empty lines
+<span class="lineNum"> 171 </span><span class="lineCov"> 3687 : if (body.size() - start_size == 1 &amp;&amp; body[body.size() - 1] == '.')</span>
+<span class="lineNum"> 172 </span><span class="lineCov"> 601 : body.resize(body.size() - 1);</span>
+<span class="lineNum"> 173 </span> :
+<span class="lineNum"> 174 </span> : //fprintf(stderr, &quot;Appended body: %.*s\n&quot;, body.size(), body.data());
+<span class="lineNum"> 175 </span> : }
+<span class="lineNum"> 176 </span> : //fprintf(stderr, &quot;Trailing newlines: %d\n&quot;, n);
+<span class="lineNum"> 177 </span> :
+<span class="lineNum"> 178 </span> :
+<span class="lineNum"> 179 </span><span class="lineCov"> 7094 : rec.insert(std::pair&lt;std::string,std::string&gt;(field, body));</span>
+<span class="lineNum"> 180 </span> : } while (!isEOF &amp;&amp; !n);
+<span class="lineNum"> 181 </span> :
+<span class="lineNum"> 182 </span><span class="lineCov"> 3254 : return true;</span>
+<span class="lineNum"> 183 </span> : }
+<span class="lineNum"> 184 </span> :
+<span class="lineNum"> 185 </span> : }
+<span class="lineNum"> 186 </span><span class="lineCov"> 6 : }</span>
+<span class="lineNum"> 187 </span> :
+<span class="lineNum"> 188 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/maint/debtagsindexer.cc.gcov.html b/rep/ept/debtags/maint/debtagsindexer.cc.gcov.html
new file mode 100644
index 0000000..143e907
--- /dev/null
+++ b/rep/ept/debtags/maint/debtagsindexer.cc.gcov.html
@@ -0,0 +1,332 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/maint/debtagsindexer.cc</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/debtags/maint</a> - debtagsindexer.cc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">119</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">74.8 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">89</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &lt;ept/debtags/maint/debtagsindexer.h&gt;
+<span class="lineNum"> 2 </span> : #include &lt;ept/debtags/maint/path.h&gt;
+<span class="lineNum"> 3 </span> : #include &lt;ept/debtags/maint/pkgid.h&gt;
+<span class="lineNum"> 4 </span> : #include &lt;ept/debtags/maint/serializer.h&gt;
+<span class="lineNum"> 5 </span> : #include &lt;ept/debtags/vocabulary.h&gt;
+<span class="lineNum"> 6 </span> :
+<span class="lineNum"> 7 </span> : #include &lt;tagcoll/coll/intdiskindex.h&gt;
+<span class="lineNum"> 8 </span> : #include &lt;tagcoll/coll/simple.h&gt;
+<span class="lineNum"> 9 </span> : #include &lt;tagcoll/TextFormat.h&gt;
+<span class="lineNum"> 10 </span> : #include &lt;tagcoll/stream/filters.h&gt;
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : #include &lt;wibble/exception.h&gt;
+<span class="lineNum"> 13 </span> :
+<span class="lineNum"> 14 </span> : #include &lt;cstring&gt;
+<span class="lineNum"> 15 </span> :
+<span class="lineNum"> 16 </span> : using namespace std;
+<span class="lineNum"> 17 </span> :
+<span class="lineNum"> 18 </span> : namespace ept {
+<span class="lineNum"> 19 </span> : namespace debtags {
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : /// MMapIndexer that indexes the package names
+<span class="lineNum"> 22 </span> : struct PkgIdGenerator : public tagcoll::diskindex::MMapIndexer
+<span class="lineNum"> 23 </span><span class="lineCov"> 2 : {</span>
+<span class="lineNum"> 24 </span> : // Sorted set of all available package names
+<span class="lineNum"> 25 </span> : std::set&lt;std::string&gt; pkgs;
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span><span class="lineCov"> 3 : int encodedSize() const</span>
+<span class="lineNum"> 28 </span> : {
+<span class="lineNum"> 29 </span><span class="lineCov"> 3 : int size = pkgs.size() * sizeof(int);</span>
+<span class="lineNum"> 30 </span><span class="lineCov"> 63438 : for (std::set&lt;std::string&gt;::const_iterator i = pkgs.begin();</span>
+<span class="lineNum"> 31 </span> : i != pkgs.end(); ++i)
+<span class="lineNum"> 32 </span><span class="lineCov"> 63435 : size += i-&gt;size() + 1;</span>
+<span class="lineNum"> 33 </span><span class="lineCov"> 3 : return tagcoll::diskindex::MMap::align(size);</span>
+<span class="lineNum"> 34 </span> : }
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span><span class="lineCov"> 2 : void encode(char* buf) const</span>
+<span class="lineNum"> 37 </span> : {
+<span class="lineNum"> 38 </span><span class="lineCov"> 2 : int pos = pkgs.size() * sizeof(int);</span>
+<span class="lineNum"> 39 </span><span class="lineCov"> 2 : int idx = 0;</span>
+<span class="lineNum"> 40 </span><span class="lineCov"> 42292 : for (std::set&lt;std::string&gt;::const_iterator i = pkgs.begin();</span>
+<span class="lineNum"> 41 </span> : i != pkgs.end(); ++i)
+<span class="lineNum"> 42 </span> : {
+<span class="lineNum"> 43 </span><span class="lineCov"> 42290 : ((int*)buf)[idx++] = pos;</span>
+<span class="lineNum"> 44 </span><span class="lineCov"> 42290 : memcpy(buf + pos, i-&gt;c_str(), i-&gt;size() + 1);</span>
+<span class="lineNum"> 45 </span><span class="lineCov"> 42290 : pos += i-&gt;size() + 1;</span>
+<span class="lineNum"> 46 </span> : }
+<span class="lineNum"> 47 </span><span class="lineCov"> 2 : }</span>
+<span class="lineNum"> 48 </span> : };
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span><span class="lineCov"> 10 : DebtagsIndexer::DebtagsIndexer(Vocabulary&amp; voc)</span>
+<span class="lineNum"> 52 </span> : : voc(voc),
+<span class="lineNum"> 53 </span> : mainSource(Path::debtagsSourceDir()),
+<span class="lineNum"> 54 </span><span class="lineCov"> 10 : userSource(Path::debtagsUserSourceDir())</span>
+<span class="lineNum"> 55 </span> : {
+<span class="lineNum"> 56 </span><span class="lineCov"> 10 : rescan();</span>
+<span class="lineNum"> 57 </span><span class="lineCov"> 10 : }</span>
+<span class="lineNum"> 58 </span> :
+<span class="lineNum"> 59 </span><span class="lineCov"> 10 : void DebtagsIndexer::rescan()</span>
+<span class="lineNum"> 60 </span> : {
+<span class="lineNum"> 61 </span><span class="lineCov"> 10 : ts_main_src = mainSource.timestamp();</span>
+<span class="lineNum"> 62 </span><span class="lineCov"> 10 : ts_user_src = userSource.timestamp();</span>
+<span class="lineNum"> 63 </span><span class="lineCov"> 10 : ts_main_tag = Path::timestamp(Path::tagdb());</span>
+<span class="lineNum"> 64 </span><span class="lineCov"> 20 : ts_main_idx = Path::timestamp(Path::tagdbIndex());</span>
+<span class="lineNum"> 65 </span><span class="lineCov"> 20 : ts_user_tag = Path::timestamp(Path::userTagdb());</span>
+<span class="lineNum"> 66 </span><span class="lineCov"> 20 : ts_user_idx = Path::timestamp(Path::userTagdbIndex());</span>
+<span class="lineNum"> 67 </span><span class="lineCov"> 10 : }</span>
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span><span class="lineCov"> 10 : bool DebtagsIndexer::needsRebuild() const</span>
+<span class="lineNum"> 70 </span> : {
+<span class="lineNum"> 71 </span> : // If there are no indexes of any kind, then we need rebuilding
+<span class="lineNum"> 72 </span><span class="lineCov"> 10 : if (ts_user_tag == 0 &amp;&amp; ts_user_idx == 0 &amp;&amp; ts_main_tag == 0 &amp;&amp; ts_main_idx == 0)</span>
+<span class="lineNum"> 73 </span><span class="lineCov"> 2 : return true;</span>
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span> : // If the user index is ok, then we are fine
+<span class="lineNum"> 76 </span><span class="lineCov"> 8 : if (ts_user_tag &gt;= sourceTimestamp() &amp;&amp; ts_user_idx &gt;= sourceTimestamp())</span>
+<span class="lineNum"> 77 </span><span class="lineCov"> 8 : return false;</span>
+<span class="lineNum"> 78 </span> :
+<span class="lineNum"> 79 </span> : // If there are user sources, then we cannot use the system index
+<span class="lineNum"> 80 </span><span class="lineNoCov"> 0 : if (ts_user_src &gt; 0)</span>
+<span class="lineNum"> 81 </span><span class="lineNoCov"> 0 : return true;</span>
+<span class="lineNum"> 82 </span> :
+<span class="lineNum"> 83 </span> : // If there are no user sources, then we can fallback on the system
+<span class="lineNum"> 84 </span> : // indexes in case the user indexes are not up to date
+<span class="lineNum"> 85 </span><span class="lineNoCov"> 0 : if (ts_main_tag &gt;= sourceTimestamp() &amp;&amp; ts_main_idx &gt;= sourceTimestamp())</span>
+<span class="lineNum"> 86 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span><span class="lineNoCov"> 0 : return true;</span>
+<span class="lineNum"> 89 </span> : }
+<span class="lineNum"> 90 </span> :
+<span class="lineNum"> 91 </span><span class="lineCov"> 10 : bool DebtagsIndexer::userIndexIsRedundant() const</span>
+<span class="lineNum"> 92 </span> : {
+<span class="lineNum"> 93 </span> : // If there is no user index, then it is not redundant
+<span class="lineNum"> 94 </span><span class="lineCov"> 10 : if (ts_user_tag == 0 &amp;&amp; ts_user_idx == 0)</span>
+<span class="lineNum"> 95 </span><span class="lineCov"> 1 : return false;</span>
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span> : // If we have user sources, then the user index is never redundant
+<span class="lineNum"> 98 </span><span class="lineCov"> 9 : if (ts_user_src &gt; 0)</span>
+<span class="lineNum"> 99 </span><span class="lineCov"> 9 : return false;</span>
+<span class="lineNum"> 100 </span> :
+<span class="lineNum"> 101 </span> : // If the system index is not up to date, then the user index is not
+<span class="lineNum"> 102 </span> : // redundant
+<span class="lineNum"> 103 </span><span class="lineNoCov"> 0 : if (ts_main_tag &lt; sourceTimestamp() || ts_main_idx &lt; sourceTimestamp())</span>
+<span class="lineNum"> 104 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span><span class="lineNoCov"> 0 : return true;</span>
+<span class="lineNum"> 107 </span> : }
+<span class="lineNum"> 108 </span> :
+<span class="lineNum"> 109 </span><span class="lineCov"> 2 : bool DebtagsIndexer::rebuild(const std::string&amp; tagfname, const std::string&amp; idxfname)</span>
+<span class="lineNum"> 110 </span> : {
+<span class="lineNum"> 111 </span> : using namespace tagcoll;
+<span class="lineNum"> 112 </span> :
+<span class="lineNum"> 113 </span><span class="lineCov"> 2 : diskindex::MasterMMapIndexer master(idxfname);</span>
+<span class="lineNum"> 114 </span> :
+<span class="lineNum"> 115 </span> : // Read and merge tag data
+<span class="lineNum"> 116 </span><span class="lineCov"> 2 : coll::Simple&lt;string, string&gt; merged;</span>
+<span class="lineNum"> 117 </span><span class="lineCov"> 2 : mainSource.readTags(inserter(merged));</span>
+<span class="lineNum"> 118 </span><span class="lineCov"> 2 : userSource.readTags(inserter(merged));</span>
+<span class="lineNum"> 119 </span> :
+<span class="lineNum"> 120 </span><span class="lineCov"> 2 : if (merged.empty())</span>
+<span class="lineNum"> 121 </span> : //throw wibble::exception::Consistency(&quot;Reading debtags sources from &quot; + Path::debtagsSourceDir() + &quot; and &quot; + Path::debtagsUserSourceDir(), &quot;Unable to find any tag data&quot;);
+<span class="lineNum"> 122 </span><span class="lineCov"> 1 : return false;</span>
+<span class="lineNum"> 123 </span> :
+<span class="lineNum"> 124 </span> : // Create the pkgid index
+<span class="lineNum"> 125 </span><span class="lineCov"> 1 : PkgIdGenerator pkgidGen;</span>
+<span class="lineNum"> 126 </span><span class="lineCov"> 21146 : for (coll::Simple&lt;string, string&gt;::const_iterator i = merged.begin();</span>
+<span class="lineNum"> 127 </span> : i != merged.end(); ++i)
+<span class="lineNum"> 128 </span><span class="lineCov"> 21145 : pkgidGen.pkgs.insert(i-&gt;first);</span>
+<span class="lineNum"> 129 </span> :
+<span class="lineNum"> 130 </span> : // Temporary in-memory index to use for converting packages to ints while
+<span class="lineNum"> 131 </span> : // creating the debtags index
+<span class="lineNum"> 132 </span><span class="lineCov"> 1 : char buf[pkgidGen.encodedSize()];</span>
+<span class="lineNum"> 133 </span><span class="lineCov"> 1 : pkgidGen.encode(buf);</span>
+<span class="lineNum"> 134 </span><span class="lineCov"> 1 : PkgId pkgid(buf, pkgidGen.encodedSize());</span>
+<span class="lineNum"> 135 </span> :
+<span class="lineNum"> 136 </span> : // Create the Debtags index
+<span class="lineNum"> 137 </span><span class="lineCov"> 1 : coll::IntDiskIndexer tagindexer;</span>
+<span class="lineNum"> 138 </span><span class="lineCov"> 1 : merged.output(stringToInt(pkgid, voc, inserter(tagindexer)));</span>
+<span class="lineNum"> 139 </span> :
+<span class="lineNum"> 140 </span> : // MMap 0: pkgid
+<span class="lineNum"> 141 </span><span class="lineCov"> 1 : master.append(pkgidGen);</span>
+<span class="lineNum"> 142 </span> : // MMap 1: pkg-&gt;tag
+<span class="lineNum"> 143 </span><span class="lineCov"> 1 : master.append(tagindexer.pkgIndexer());</span>
+<span class="lineNum"> 144 </span> : // MMap 2: tag-&gt;pkg
+<span class="lineNum"> 145 </span><span class="lineCov"> 1 : master.append(tagindexer.tagIndexer());</span>
+<span class="lineNum"> 146 </span> :
+<span class="lineNum"> 147 </span> : // Write the tag database in text format
+<span class="lineNum"> 148 </span><span class="lineCov"> 1 : std::string tmpdb = tagfname + &quot;.tmp&quot;;</span>
+<span class="lineNum"> 149 </span><span class="lineCov"> 1 : FILE* out = fopen(tmpdb.c_str(), &quot;wt&quot;);</span>
+<span class="lineNum"> 150 </span><span class="lineCov"> 1 : if (!out) throw wibble::exception::File(tmpdb, &quot;creating temporary copy of tag index&quot;);</span>
+<span class="lineNum"> 151 </span><span class="lineCov"> 1 : merged.output(textformat::StdioWriter(out));</span>
+<span class="lineNum"> 152 </span><span class="lineCov"> 1 : fclose(out);</span>
+<span class="lineNum"> 153 </span> :
+<span class="lineNum"> 154 </span> : // Perform &quot;atomic&quot; update of the tag database
+<span class="lineNum"> 155 </span> : // FIXME: cannot be atomic because race conditions happening between file
+<span class="lineNum"> 156 </span> : // renames
+<span class="lineNum"> 157 </span><span class="lineCov"> 1 : if (rename(tmpdb.c_str(), tagfname.c_str()) == -1)</span>
+<span class="lineNum"> 158 </span><span class="lineNoCov"> 0 : throw wibble::exception::System(&quot;Renaming &quot; + tmpdb + &quot; to &quot; + tagfname);</span>
+<span class="lineNum"> 159 </span> :
+<span class="lineNum"> 160 </span><span class="lineCov"> 1 : master.commit();</span>
+<span class="lineNum"> 161 </span><span class="lineCov"> 1 : return true;</span>
+<span class="lineNum"> 162 </span> : }
+<span class="lineNum"> 163 </span> :
+<span class="lineNum"> 164 </span><span class="lineCov"> 10 : bool DebtagsIndexer::rebuildIfNeeded()</span>
+<span class="lineNum"> 165 </span> : {
+<span class="lineNum"> 166 </span><span class="lineCov"> 10 : if (needsRebuild())</span>
+<span class="lineNum"> 167 </span> : {
+<span class="lineNum"> 168 </span> : // Decide if we rebuild the user index or the system index
+<span class="lineNum"> 169 </span> :
+<span class="lineNum"> 170 </span><span class="lineCov"> 2 : if (ts_user_src == 0 &amp;&amp; Path::access(Path::debtagsIndexDir(), W_OK) == 0)</span>
+<span class="lineNum"> 171 </span> : {
+<span class="lineNum"> 172 </span> : // There are no user sources and we can write to the system index
+<span class="lineNum"> 173 </span> : // directory: rebuild the system index
+<span class="lineNum"> 174 </span><span class="lineCov"> 1 : if (!rebuild(Path::tagdb(), Path::tagdbIndex()))</span>
+<span class="lineNum"> 175 </span><span class="lineCov"> 1 : return false;</span>
+<span class="lineNum"> 176 </span><span class="lineNoCov"> 0 : ts_main_tag = Path::timestamp(Path::tagdb());</span>
+<span class="lineNum"> 177 </span><span class="lineNoCov"> 0 : ts_main_idx = Path::timestamp(Path::tagdbIndex());</span>
+<span class="lineNum"> 178 </span><span class="lineNoCov"> 0 : if (Path::tagdb() == Path::userTagdb())</span>
+<span class="lineNum"> 179 </span><span class="lineNoCov"> 0 : ts_user_tag = ts_main_tag;</span>
+<span class="lineNum"> 180 </span><span class="lineNoCov"> 0 : if (Path::tagdbIndex() == Path::userTagdbIndex())</span>
+<span class="lineNum"> 181 </span><span class="lineNoCov"> 0 : ts_user_idx = ts_main_idx;</span>
+<span class="lineNum"> 182 </span> : } else {
+<span class="lineNum"> 183 </span><span class="lineCov"> 1 : wibble::sys::fs::mkFilePath(Path::userTagdb());</span>
+<span class="lineNum"> 184 </span><span class="lineCov"> 2 : wibble::sys::fs::mkFilePath(Path::userTagdbIndex());</span>
+<span class="lineNum"> 185 </span><span class="lineCov"> 2 : if (!rebuild(Path::userTagdb(), Path::userTagdbIndex()))</span>
+<span class="lineNum"> 186 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 187 </span><span class="lineCov"> 1 : ts_user_tag = Path::timestamp(Path::userTagdb());</span>
+<span class="lineNum"> 188 </span><span class="lineCov"> 2 : ts_user_idx = Path::timestamp(Path::userTagdbIndex());</span>
+<span class="lineNum"> 189 </span> : }
+<span class="lineNum"> 190 </span><span class="lineCov"> 1 : return true;</span>
+<span class="lineNum"> 191 </span> : }
+<span class="lineNum"> 192 </span><span class="lineCov"> 8 : return false;</span>
+<span class="lineNum"> 193 </span> : }
+<span class="lineNum"> 194 </span> :
+<span class="lineNum"> 195 </span><span class="lineCov"> 10 : bool DebtagsIndexer::deleteRedundantUserIndex()</span>
+<span class="lineNum"> 196 </span> : {
+<span class="lineNum"> 197 </span><span class="lineCov"> 10 : if (userIndexIsRedundant())</span>
+<span class="lineNum"> 198 </span> : {
+<span class="lineNum"> 199 </span> : // Delete the user indexes if they exist
+<span class="lineNum"> 200 </span><span class="lineNoCov"> 0 : if (Path::tagdb() != Path::userTagdb())</span>
+<span class="lineNum"> 201 </span> : {
+<span class="lineNum"> 202 </span><span class="lineNoCov"> 0 : unlink(Path::userTagdb().c_str());</span>
+<span class="lineNum"> 203 </span><span class="lineNoCov"> 0 : ts_user_tag = 0;</span>
+<span class="lineNum"> 204 </span> : }
+<span class="lineNum"> 205 </span><span class="lineNoCov"> 0 : if (Path::tagdbIndex() != Path::userTagdbIndex())</span>
+<span class="lineNum"> 206 </span> : {
+<span class="lineNum"> 207 </span><span class="lineNoCov"> 0 : unlink(Path::userTagdbIndex().c_str());</span>
+<span class="lineNum"> 208 </span><span class="lineNoCov"> 0 : ts_user_idx = 0;</span>
+<span class="lineNum"> 209 </span> : }
+<span class="lineNum"> 210 </span><span class="lineNoCov"> 0 : return true;</span>
+<span class="lineNum"> 211 </span> : }
+<span class="lineNum"> 212 </span><span class="lineCov"> 10 : return false;</span>
+<span class="lineNum"> 213 </span> : }
+<span class="lineNum"> 214 </span> :
+<span class="lineNum"> 215 </span><span class="lineCov"> 10 : bool DebtagsIndexer::getUpToDateTagdb(std::string&amp; tagfname, std::string&amp; idxfname)</span>
+<span class="lineNum"> 216 </span> : {
+<span class="lineNum"> 217 </span> : // If there are no indexes of any kind, then we have nothing to return
+<span class="lineNum"> 218 </span><span class="lineCov"> 10 : if (ts_user_tag == 0 &amp;&amp; ts_user_idx == 0 &amp;&amp; ts_main_tag == 0 &amp;&amp; ts_main_idx == 0)</span>
+<span class="lineNum"> 219 </span><span class="lineCov"> 1 : return false;</span>
+<span class="lineNum"> 220 </span> :
+<span class="lineNum"> 221 </span> : // If the user index is up to date, use it
+<span class="lineNum"> 222 </span><span class="lineCov"> 9 : if (ts_user_tag &gt;= sourceTimestamp() &amp;&amp;</span>
+<span class="lineNum"> 223 </span> : ts_user_idx &gt;= sourceTimestamp())
+<span class="lineNum"> 224 </span> : {
+<span class="lineNum"> 225 </span><span class="lineCov"> 9 : tagfname = Path::userTagdb();</span>
+<span class="lineNum"> 226 </span><span class="lineCov"> 18 : idxfname = Path::userTagdbIndex();</span>
+<span class="lineNum"> 227 </span><span class="lineCov"> 9 : return true;</span>
+<span class="lineNum"> 228 </span> : }
+<span class="lineNum"> 229 </span> :
+<span class="lineNum"> 230 </span> : // If the user index is not up to date and we have user sources, we cannot
+<span class="lineNum"> 231 </span> : // fall back to the system index
+<span class="lineNum"> 232 </span><span class="lineNoCov"> 0 : if (ts_user_src != 0)</span>
+<span class="lineNum"> 233 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 234 </span> :
+<span class="lineNum"> 235 </span> : // Fallback to the system index
+<span class="lineNum"> 236 </span><span class="lineNoCov"> 0 : if (ts_main_tag &gt;= sourceTimestamp() &amp;&amp;</span>
+<span class="lineNum"> 237 </span> : ts_main_idx &gt;= sourceTimestamp())
+<span class="lineNum"> 238 </span> : {
+<span class="lineNum"> 239 </span><span class="lineNoCov"> 0 : tagfname = Path::tagdb();</span>
+<span class="lineNum"> 240 </span><span class="lineNoCov"> 0 : idxfname = Path::tagdbIndex();</span>
+<span class="lineNum"> 241 </span><span class="lineNoCov"> 0 : return true;</span>
+<span class="lineNum"> 242 </span> : }
+<span class="lineNum"> 243 </span> :
+<span class="lineNum"> 244 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 245 </span> : }
+<span class="lineNum"> 246 </span> :
+<span class="lineNum"> 247 </span> :
+<span class="lineNum"> 248 </span> :
+<span class="lineNum"> 249 </span><span class="lineCov"> 10 : bool DebtagsIndexer::obtainWorkingDebtags(Vocabulary&amp; voc, std::string&amp; tagfname, std::string&amp; idxfname)</span>
+<span class="lineNum"> 250 </span> : {
+<span class="lineNum"> 251 </span><span class="lineCov"> 10 : DebtagsIndexer t(voc);</span>
+<span class="lineNum"> 252 </span> :
+<span class="lineNum"> 253 </span><span class="lineCov"> 10 : t.rebuildIfNeeded();</span>
+<span class="lineNum"> 254 </span><span class="lineCov"> 10 : t.deleteRedundantUserIndex();</span>
+<span class="lineNum"> 255 </span><span class="lineCov"> 10 : return t.getUpToDateTagdb(tagfname, idxfname);</span>
+<span class="lineNum"> 256 </span> : }
+<span class="lineNum"> 257 </span> :
+<span class="lineNum"> 258 </span> : }
+<span class="lineNum"> 259 </span> : }
+<span class="lineNum"> 260 </span> :
+<span class="lineNum"> 261 </span> : #include &lt;ept/debtags/maint/sourcedir.tcc&gt;
+<span class="lineNum"> 262 </span> : #include &lt;tagcoll/coll/simple.tcc&gt;
+<span class="lineNum"> 263 </span> :
+<span class="lineNum"> 264 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 265 </span> : // -*- C++ -*-
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/maint/debtagsindexer.h.gcov.html b/rep/ept/debtags/maint/debtagsindexer.h.gcov.html
new file mode 100644
index 0000000..a67cc3a
--- /dev/null
+++ b/rep/ept/debtags/maint/debtagsindexer.h.gcov.html
@@ -0,0 +1,118 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/maint/debtagsindexer.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/debtags/maint</a> - debtagsindexer.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">5</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">5</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef EPT_DEBTAGS_DEBTAGSINDEXER_H
+<span class="lineNum"> 2 </span> : #define EPT_DEBTAGS_DEBTAGSINDEXER_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : #include &lt;ept/debtags/maint/sourcedir.h&gt;
+<span class="lineNum"> 5 </span> : #include &lt;string&gt;
+<span class="lineNum"> 6 </span> :
+<span class="lineNum"> 7 </span> : namespace ept {
+<span class="lineNum"> 8 </span> : namespace debtags {
+<span class="lineNum"> 9 </span> :
+<span class="lineNum"> 10 </span> : class Vocabulary;
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : struct DebtagsIndexer
+<span class="lineNum"> 13 </span><span class="lineCov"> 10 : {</span>
+<span class="lineNum"> 14 </span> : Vocabulary&amp; voc;
+<span class="lineNum"> 15 </span> :
+<span class="lineNum"> 16 </span> : SourceDir mainSource;
+<span class="lineNum"> 17 </span> : SourceDir userSource;
+<span class="lineNum"> 18 </span> : time_t ts_main_src;
+<span class="lineNum"> 19 </span> : time_t ts_user_src;
+<span class="lineNum"> 20 </span> : time_t ts_main_tag;
+<span class="lineNum"> 21 </span> : time_t ts_main_idx;
+<span class="lineNum"> 22 </span> : time_t ts_user_tag;
+<span class="lineNum"> 23 </span> : time_t ts_user_idx;
+<span class="lineNum"> 24 </span> :
+<span class="lineNum"> 25 </span><span class="lineCov"> 34 : time_t sourceTimestamp() const</span>
+<span class="lineNum"> 26 </span> : {
+<span class="lineNum"> 27 </span><span class="lineCov"> 34 : time_t res = ts_main_src;</span>
+<span class="lineNum"> 28 </span><span class="lineCov"> 34 : if (ts_user_src &gt; res) res = ts_user_src;</span>
+<span class="lineNum"> 29 </span><span class="lineCov"> 34 : return res;</span>
+<span class="lineNum"> 30 </span> : }
+<span class="lineNum"> 31 </span> : bool needsRebuild() const;
+<span class="lineNum"> 32 </span> : bool rebuild(const std::string&amp; tagfname, const std::string&amp; idxfname);
+<span class="lineNum"> 33 </span> : bool rebuildIfNeeded();
+<span class="lineNum"> 34 </span> : bool getUpToDateTagdb(std::string&amp; tagfname, std::string&amp; idxfname);
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : bool userIndexIsRedundant() const;
+<span class="lineNum"> 37 </span> : bool deleteRedundantUserIndex();
+<span class="lineNum"> 38 </span> :
+<span class="lineNum"> 39 </span> : void rescan();
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : DebtagsIndexer(Vocabulary&amp; voc);
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : static bool obtainWorkingDebtags(Vocabulary&amp; voc, std::string&amp; tagfname, std::string&amp; idxfname);
+<span class="lineNum"> 44 </span> : };
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span> : }
+<span class="lineNum"> 48 </span> : }
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 51 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/maint/index.html b/rep/ept/debtags/maint/index.html
new file mode 100644
index 0000000..ca8f250
--- /dev/null
+++ b/rep/ept/debtags/maint/index.html
@@ -0,0 +1,236 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/maint</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - ept/debtags/maint</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">846</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">84.9 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">718</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="debdbparser.cc.gcov.html">debdbparser.cc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=84 height=10 alt="84.4%"><img src="../../../snow.png" width=16 height=10 alt="84.4%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">84.4&nbsp;%</td>
+ <td class="coverNumHi">54&nbsp;/&nbsp;64&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="debtagsindexer.cc.gcov.html">debtagsindexer.cc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=75 height=10 alt="74.8%"><img src="../../../snow.png" width=25 height=10 alt="74.8%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">74.8&nbsp;%</td>
+ <td class="coverNumHi">89&nbsp;/&nbsp;119&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="debtagsindexer.h.gcov.html">debtagsindexer.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">5&nbsp;/&nbsp;5&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="path.cc.gcov.html">path.cc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=91 height=10 alt="90.7%"><img src="../../../snow.png" width=9 height=10 alt="90.7%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">90.7&nbsp;%</td>
+ <td class="coverNumHi">49&nbsp;/&nbsp;54&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="path.h.gcov.html">path.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">17&nbsp;/&nbsp;17&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="pkgid.cc.gcov.html">pkgid.cc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=87 height=10 alt="86.7%"><img src="../../../snow.png" width=13 height=10 alt="86.7%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">86.7&nbsp;%</td>
+ <td class="coverNumHi">13&nbsp;/&nbsp;15&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="pkgid.h.gcov.html">pkgid.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=83 height=10 alt="83.3%"><img src="../../../snow.png" width=17 height=10 alt="83.3%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">83.3&nbsp;%</td>
+ <td class="coverNumHi">5&nbsp;/&nbsp;6&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="pkgid.test.h.gcov.html">pkgid.test.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">18&nbsp;/&nbsp;18&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="serializer.h.gcov.html">serializer.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=98 height=10 alt="97.8%"><img src="../../../snow.png" width=2 height=10 alt="97.8%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">97.8&nbsp;%</td>
+ <td class="coverNumHi">87&nbsp;/&nbsp;89&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="serializer.test.h.gcov.html">serializer.test.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">48&nbsp;/&nbsp;48&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="sourcedir.cc.gcov.html">sourcedir.cc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=75 height=10 alt="75.4%"><img src="../../../snow.png" width=25 height=10 alt="75.4%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">75.4&nbsp;%</td>
+ <td class="coverNumHi">43&nbsp;/&nbsp;57&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="sourcedir.h.gcov.html">sourcedir.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">3&nbsp;/&nbsp;3&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="sourcedir.tcc.gcov.html">sourcedir.tcc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=89 height=10 alt="88.9%"><img src="../../../snow.png" width=11 height=10 alt="88.9%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">88.9&nbsp;%</td>
+ <td class="coverNumHi">8&nbsp;/&nbsp;9&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="vocabularyindexer.cc.gcov.html">vocabularyindexer.cc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=69 height=10 alt="69.1%"><img src="../../../snow.png" width=31 height=10 alt="69.1%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">69.1&nbsp;%</td>
+ <td class="coverNumHi">65&nbsp;/&nbsp;94&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="vocabularyindexer.h.gcov.html">vocabularyindexer.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">2&nbsp;/&nbsp;2&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="vocabularymerger.cc.gcov.html">vocabularymerger.cc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=81 height=10 alt="81.2%"><img src="../../../snow.png" width=19 height=10 alt="81.2%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">81.2&nbsp;%</td>
+ <td class="coverNumHi">147&nbsp;/&nbsp;181&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="vocabularymerger.h.gcov.html">vocabularymerger.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">13&nbsp;/&nbsp;13&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="vocabularymerger.test.h.gcov.html">vocabularymerger.test.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">52&nbsp;/&nbsp;52&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/maint/path.cc.gcov.html b/rep/ept/debtags/maint/path.cc.gcov.html
new file mode 100644
index 0000000..c9af780
--- /dev/null
+++ b/rep/ept/debtags/maint/path.cc.gcov.html
@@ -0,0 +1,207 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/maint/path.cc</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/debtags/maint</a> - path.cc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">54</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">90.7 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">49</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: c++; indent-tabs-mode: t -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : /** \file
+<span class="lineNum"> 4 </span> : * debtags paths
+<span class="lineNum"> 5 </span> : */
+<span class="lineNum"> 6 </span> :
+<span class="lineNum"> 7 </span> : /*
+<span class="lineNum"> 8 </span> : * Copyright (C) 2005,2006,2007 Enrico Zini &lt;enrico@debian.org&gt;, Peter Rockai &lt;me@mornfall.net&gt;
+<span class="lineNum"> 9 </span> : *
+<span class="lineNum"> 10 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 11 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 12 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 13 </span> : * (at your option) any later version.
+<span class="lineNum"> 14 </span> : *
+<span class="lineNum"> 15 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 16 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 17 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 18 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 19 </span> : *
+<span class="lineNum"> 20 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 21 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 22 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 23 </span> : */
+<span class="lineNum"> 24 </span> :
+<span class="lineNum"> 25 </span> : #include &lt;ept/debtags/maint/path.h&gt;
+<span class="lineNum"> 26 </span> : #include &lt;ept/config.h&gt;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : #include &lt;wibble/sys/fs.h&gt;
+<span class="lineNum"> 29 </span> : #include &lt;wibble/string.h&gt;
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : #include &lt;sys/types.h&gt; // getpwuid, stat, mkdir, getuid
+<span class="lineNum"> 32 </span> : #include &lt;sys/stat.h&gt; // stat, mkdir
+<span class="lineNum"> 33 </span> : #include &lt;pwd.h&gt; // getpwuid
+<span class="lineNum"> 34 </span> : #include &lt;unistd.h&gt; // stat, getuid
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : using namespace wibble;
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : namespace ept {
+<span class="lineNum"> 39 </span> : namespace debtags {
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span><span class="lineCov"> 2 : static std::string userdir()</span>
+<span class="lineNum"> 42 </span> : {
+<span class="lineNum"> 43 </span><span class="lineCov"> 2 : std::string rcdir;</span>
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span><span class="lineCov"> 2 : struct passwd* udata = getpwuid(getuid());</span>
+<span class="lineNum"> 46 </span><span class="lineCov"> 2 : rcdir = str::joinpath(udata-&gt;pw_dir, &quot;.debtags&quot;);</span>
+<span class="lineNum"> 47 </span> :
+<span class="lineNum"> 48 </span><span class="lineNoCov"> 0 : return rcdir;</span>
+<span class="lineNum"> 49 </span> : }
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> :
+<span class="lineNum"> 52 </span><span class="lineCov"> 732 : Path &amp;Path::instance() {</span>
+<span class="lineNum"> 53 </span><span class="lineCov"> 732 : if (!s_instance) {</span>
+<span class="lineNum"> 54 </span><span class="lineCov"> 1 : s_instance = new Path;</span>
+<span class="lineNum"> 55 </span><span class="lineCov"> 1 : instance().m_debtagsSourceDir = DEBTAGS_DB_DIR;</span>
+<span class="lineNum"> 56 </span><span class="lineCov"> 1 : instance().m_debtagsIndexDir = DEBTAGS_DB_DIR;</span>
+<span class="lineNum"> 57 </span><span class="lineCov"> 2 : instance().m_debtagsUserSourceDir = userdir();</span>
+<span class="lineNum"> 58 </span><span class="lineCov"> 2 : instance().m_debtagsUserIndexDir = userdir();</span>
+<span class="lineNum"> 59 </span> : }
+<span class="lineNum"> 60 </span><span class="lineCov"> 732 : return *s_instance;</span>
+<span class="lineNum"> 61 </span> : }
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span><span class="lineCov"> 12 : int Path::access( const std::string &amp;s, int m ) {</span>
+<span class="lineNum"> 64 </span><span class="lineCov"> 12 : return ::access( s.c_str(), m );</span>
+<span class="lineNum"> 65 </span> : }
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span><span class="lineCov"> 300 : time_t Path::timestamp( const std::string&amp; file ) {</span>
+<span class="lineNum"> 68 </span><span class="lineCov"> 300 : std::auto_ptr&lt;struct stat&gt; st = wibble::sys::fs::stat(file);</span>
+<span class="lineNum"> 69 </span><span class="lineCov"> 580 : return st.get() == NULL ? 0 : st-&gt;st_mtime;</span>
+<span class="lineNum"> 70 </span> : }
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span><span class="lineCov"> 62 : void Path::setDebtagsSourceDir( const std::string &amp;s )</span>
+<span class="lineNum"> 73 </span> : {
+<span class="lineNum"> 74 </span><span class="lineCov"> 62 : instance().m_debtagsSourceDir = s;</span>
+<span class="lineNum"> 75 </span><span class="lineCov"> 62 : }</span>
+<span class="lineNum"> 76 </span><span class="lineCov"> 62 : void Path::setDebtagsIndexDir( const std::string &amp;s )</span>
+<span class="lineNum"> 77 </span> : {
+<span class="lineNum"> 78 </span><span class="lineCov"> 62 : instance().m_debtagsIndexDir = s;</span>
+<span class="lineNum"> 79 </span><span class="lineCov"> 62 : }</span>
+<span class="lineNum"> 80 </span><span class="lineCov"> 62 : void Path::setDebtagsUserSourceDir( const std::string &amp;s )</span>
+<span class="lineNum"> 81 </span> : {
+<span class="lineNum"> 82 </span><span class="lineCov"> 62 : instance().m_debtagsUserSourceDir = s;</span>
+<span class="lineNum"> 83 </span><span class="lineCov"> 62 : }</span>
+<span class="lineNum"> 84 </span><span class="lineCov"> 62 : void Path::setDebtagsUserIndexDir( const std::string &amp;s )</span>
+<span class="lineNum"> 85 </span> : {
+<span class="lineNum"> 86 </span><span class="lineCov"> 62 : instance().m_debtagsUserIndexDir = s;</span>
+<span class="lineNum"> 87 </span><span class="lineCov"> 62 : }</span>
+<span class="lineNum"> 88 </span> :
+<span class="lineNum"> 89 </span><span class="lineCov"> 72 : std::string Path::debtagsSourceDir() { return instance().m_debtagsSourceDir; }</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 121 : std::string Path::debtagsIndexDir() { return instance().m_debtagsIndexDir; }</span>
+<span class="lineNum"> 91 </span><span class="lineCov"> 82 : std::string Path::debtagsUserSourceDir() { return instance().m_debtagsUserSourceDir; }</span>
+<span class="lineNum"> 92 </span><span class="lineCov"> 205 : std::string Path::debtagsUserIndexDir() { return instance().m_debtagsUserIndexDir; }</span>
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span><span class="lineCov"> 33 : std::string Path::vocabulary() {</span>
+<span class="lineNum"> 95 </span><span class="lineCov"> 33 : return str::joinpath(debtagsIndexDir(), &quot;vocabulary&quot;);</span>
+<span class="lineNum"> 96 </span> : }
+<span class="lineNum"> 97 </span> :
+<span class="lineNum"> 98 </span><span class="lineCov"> 32 : std::string Path::vocabularyIndex() {</span>
+<span class="lineNum"> 99 </span><span class="lineCov"> 32 : return str::joinpath(debtagsIndexDir(), &quot;vocabulary.idx&quot;);</span>
+<span class="lineNum"> 100 </span> : }
+<span class="lineNum"> 101 </span> :
+<span class="lineNum"> 102 </span><span class="lineCov"> 65 : std::string Path::userVocabulary() {</span>
+<span class="lineNum"> 103 </span><span class="lineCov"> 65 : return str::joinpath(debtagsUserIndexDir(), &quot;vocabulary&quot;);</span>
+<span class="lineNum"> 104 </span> : }
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span><span class="lineCov"> 65 : std::string Path::userVocabularyIndex() {</span>
+<span class="lineNum"> 107 </span><span class="lineCov"> 65 : return str::joinpath(debtagsUserIndexDir(), &quot;vocabulary.idx&quot;);</span>
+<span class="lineNum"> 108 </span> : }
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span><span class="lineCov"> 11 : std::string Path::tagdb() {</span>
+<span class="lineNum"> 111 </span><span class="lineCov"> 11 : return str::joinpath(debtagsIndexDir(), &quot;package-tags&quot;);</span>
+<span class="lineNum"> 112 </span> : }
+<span class="lineNum"> 113 </span> :
+<span class="lineNum"> 114 </span><span class="lineCov"> 11 : std::string Path::tagdbIndex() {</span>
+<span class="lineNum"> 115 </span><span class="lineCov"> 11 : return str::joinpath(debtagsIndexDir(), &quot;package-tags.idx&quot;);</span>
+<span class="lineNum"> 116 </span> : }
+<span class="lineNum"> 117 </span> :
+<span class="lineNum"> 118 </span><span class="lineCov"> 22 : std::string Path::userTagdb() {</span>
+<span class="lineNum"> 119 </span><span class="lineCov"> 22 : return str::joinpath(debtagsUserIndexDir(), &quot;package-tags&quot;);</span>
+<span class="lineNum"> 120 </span> : }
+<span class="lineNum"> 121 </span> :
+<span class="lineNum"> 122 </span><span class="lineCov"> 22 : std::string Path::userTagdbIndex() {</span>
+<span class="lineNum"> 123 </span><span class="lineCov"> 22 : return str::joinpath(debtagsUserIndexDir(), &quot;package-tags.idx&quot;);</span>
+<span class="lineNum"> 124 </span> : }
+<span class="lineNum"> 125 </span> :
+<span class="lineNum"> 126 </span><span class="lineNoCov"> 0 : std::string Path::pkgidx() {</span>
+<span class="lineNum"> 127 </span><span class="lineNoCov"> 0 : return str::joinpath(debtagsIndexDir(), &quot;pkgidx.idx&quot;);</span>
+<span class="lineNum"> 128 </span> : }
+<span class="lineNum"> 129 </span> :
+<span class="lineNum"> 130 </span><span class="lineNoCov"> 0 : std::string Path::userPkgidx() {</span>
+<span class="lineNum"> 131 </span><span class="lineNoCov"> 0 : return str::joinpath(debtagsUserIndexDir(), &quot;pkgidx.idx&quot;);</span>
+<span class="lineNum"> 132 </span> : }
+<span class="lineNum"> 133 </span> :
+<span class="lineNum"> 134 </span> :
+<span class="lineNum"> 135 </span> : Path *Path::s_instance = 0;
+<span class="lineNum"> 136 </span> :
+<span class="lineNum"> 137 </span> : }
+<span class="lineNum"> 138 </span> : }
+<span class="lineNum"> 139 </span> :
+<span class="lineNum"> 140 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/maint/path.h.gcov.html b/rep/ept/debtags/maint/path.h.gcov.html
new file mode 100644
index 0000000..35e7710
--- /dev/null
+++ b/rep/ept/debtags/maint/path.h.gcov.html
@@ -0,0 +1,200 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/maint/path.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/debtags/maint</a> - path.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">17</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">17</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: c++; indent-tabs-mode: t -*-
+<span class="lineNum"> 2 </span> : /** \file
+<span class="lineNum"> 3 </span> : * debtags paths
+<span class="lineNum"> 4 </span> : */
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : /*
+<span class="lineNum"> 7 </span> : * Copyright (C) 2005,2006,2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 8 </span> : *
+<span class="lineNum"> 9 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 10 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 11 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 12 </span> : * (at your option) any later version.
+<span class="lineNum"> 13 </span> : *
+<span class="lineNum"> 14 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 15 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 16 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 17 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 18 </span> : *
+<span class="lineNum"> 19 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 20 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 21 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 22 </span> : */
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : #include &lt;string&gt;
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : struct stat;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : #ifndef EPT_DEBTAGS_PATH_H
+<span class="lineNum"> 29 </span> : #define EPT_DEBTAGS_PATH_H
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : namespace ept {
+<span class="lineNum"> 32 </span> : namespace debtags {
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span> : /**
+<span class="lineNum"> 35 </span> : * Singleton class to configure and access the various Debtags paths
+<span class="lineNum"> 36 </span> : */
+<span class="lineNum"> 37 </span> : class Path
+<span class="lineNum"> 38 </span><span class="lineCov"> 1 : {</span>
+<span class="lineNum"> 39 </span> : public:
+<span class="lineNum"> 40 </span> : static std::string vocabulary();
+<span class="lineNum"> 41 </span> : static std::string vocabularyIndex();
+<span class="lineNum"> 42 </span> : static std::string userVocabulary();
+<span class="lineNum"> 43 </span> : static std::string userVocabularyIndex();
+<span class="lineNum"> 44 </span> : static std::string tagdb();
+<span class="lineNum"> 45 </span> : static std::string tagdbIndex();
+<span class="lineNum"> 46 </span> : static std::string userTagdb();
+<span class="lineNum"> 47 </span> : static std::string userTagdbIndex();
+<span class="lineNum"> 48 </span> : static std::string pkgidx();
+<span class="lineNum"> 49 </span> : static std::string userPkgidx();
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> : static std::string debtagsSourceDir();
+<span class="lineNum"> 52 </span> : static std::string debtagsIndexDir();
+<span class="lineNum"> 53 </span> : static std::string debtagsUserSourceDir();
+<span class="lineNum"> 54 </span> : static std::string debtagsUserIndexDir();
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span> : // Directory where Debtags source data is found
+<span class="lineNum"> 57 </span> : static void setDebtagsSourceDir( const std::string &amp;s );
+<span class="lineNum"> 58 </span> :
+<span class="lineNum"> 59 </span> : // Directory where Debtags indexes are kept
+<span class="lineNum"> 60 </span> : static void setDebtagsIndexDir( const std::string &amp;s );
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : // User-specific directory for Debtags source data
+<span class="lineNum"> 63 </span> : static void setDebtagsUserSourceDir( const std::string &amp;s );
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : // User-specific directory for Debtags index data
+<span class="lineNum"> 66 </span> : static void setDebtagsUserIndexDir( const std::string &amp;s );
+<span class="lineNum"> 67 </span> :
+<span class="lineNum"> 68 </span> : static int access( const std::string &amp;, int );
+<span class="lineNum"> 69 </span> : static time_t timestamp( const std::string&amp; );
+<span class="lineNum"> 70 </span> :
+<span class="lineNum"> 71 </span> : // RAII-style classes to temporarily override directories
+<span class="lineNum"> 72 </span> : class OverrideDebtagsSourceDir
+<span class="lineNum"> 73 </span> : {
+<span class="lineNum"> 74 </span> : std::string old;
+<span class="lineNum"> 75 </span> : public:
+<span class="lineNum"> 76 </span><span class="lineCov"> 31 : OverrideDebtagsSourceDir(const std::string&amp; path) : old(Path::debtagsSourceDir())</span>
+<span class="lineNum"> 77 </span> : {
+<span class="lineNum"> 78 </span><span class="lineCov"> 31 : Path::setDebtagsSourceDir(path);</span>
+<span class="lineNum"> 79 </span><span class="lineCov"> 31 : }</span>
+<span class="lineNum"> 80 </span><span class="lineCov"> 31 : ~OverrideDebtagsSourceDir() { Path::setDebtagsSourceDir(old); }</span>
+<span class="lineNum"> 81 </span> : };
+<span class="lineNum"> 82 </span> : class OverrideDebtagsIndexDir
+<span class="lineNum"> 83 </span> : {
+<span class="lineNum"> 84 </span> : std::string old;
+<span class="lineNum"> 85 </span> : public:
+<span class="lineNum"> 86 </span><span class="lineCov"> 31 : OverrideDebtagsIndexDir(const std::string&amp; path) : old(Path::debtagsIndexDir())</span>
+<span class="lineNum"> 87 </span> : {
+<span class="lineNum"> 88 </span><span class="lineCov"> 31 : Path::setDebtagsIndexDir(path);</span>
+<span class="lineNum"> 89 </span><span class="lineCov"> 31 : }</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 31 : ~OverrideDebtagsIndexDir() { Path::setDebtagsIndexDir(old); }</span>
+<span class="lineNum"> 91 </span> : };
+<span class="lineNum"> 92 </span> : class OverrideDebtagsUserSourceDir
+<span class="lineNum"> 93 </span> : {
+<span class="lineNum"> 94 </span> : std::string old;
+<span class="lineNum"> 95 </span> : public:
+<span class="lineNum"> 96 </span><span class="lineCov"> 31 : OverrideDebtagsUserSourceDir(const std::string&amp; path) : old(Path::debtagsUserSourceDir())</span>
+<span class="lineNum"> 97 </span> : {
+<span class="lineNum"> 98 </span><span class="lineCov"> 31 : Path::setDebtagsUserSourceDir(path);</span>
+<span class="lineNum"> 99 </span><span class="lineCov"> 31 : }</span>
+<span class="lineNum"> 100 </span><span class="lineCov"> 31 : ~OverrideDebtagsUserSourceDir() { Path::setDebtagsUserSourceDir(old); }</span>
+<span class="lineNum"> 101 </span> : };
+<span class="lineNum"> 102 </span> : class OverrideDebtagsUserIndexDir
+<span class="lineNum"> 103 </span> : {
+<span class="lineNum"> 104 </span> : std::string old;
+<span class="lineNum"> 105 </span> : public:
+<span class="lineNum"> 106 </span><span class="lineCov"> 31 : OverrideDebtagsUserIndexDir(const std::string&amp; path) : old(Path::debtagsUserIndexDir())</span>
+<span class="lineNum"> 107 </span> : {
+<span class="lineNum"> 108 </span><span class="lineCov"> 31 : Path::setDebtagsUserIndexDir(path);</span>
+<span class="lineNum"> 109 </span><span class="lineCov"> 31 : }</span>
+<span class="lineNum"> 110 </span><span class="lineCov"> 31 : ~OverrideDebtagsUserIndexDir() { Path::setDebtagsUserIndexDir(old); }</span>
+<span class="lineNum"> 111 </span> : };
+<span class="lineNum"> 112 </span> : protected:
+<span class="lineNum"> 113 </span> : static Path *s_instance;
+<span class="lineNum"> 114 </span> : static Path &amp;instance();
+<span class="lineNum"> 115 </span> :
+<span class="lineNum"> 116 </span> : // Directory where Debtags source data is found
+<span class="lineNum"> 117 </span> : std::string m_debtagsSourceDir;
+<span class="lineNum"> 118 </span> :
+<span class="lineNum"> 119 </span> : // Directory where Debtags indexes are kept
+<span class="lineNum"> 120 </span> : std::string m_debtagsIndexDir;
+<span class="lineNum"> 121 </span> :
+<span class="lineNum"> 122 </span> : // User-specific directory for Debtags source data
+<span class="lineNum"> 123 </span> : std::string m_debtagsUserSourceDir;
+<span class="lineNum"> 124 </span> :
+<span class="lineNum"> 125 </span> : // User-specific directory for Debtags index data
+<span class="lineNum"> 126 </span> : std::string m_debtagsUserIndexDir;
+<span class="lineNum"> 127 </span> : };
+<span class="lineNum"> 128 </span> :
+<span class="lineNum"> 129 </span> : }
+<span class="lineNum"> 130 </span> : }
+<span class="lineNum"> 131 </span> :
+<span class="lineNum"> 132 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 133 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/maint/pkgid.cc.gcov.html b/rep/ept/debtags/maint/pkgid.cc.gcov.html
new file mode 100644
index 0000000..62de1a1
--- /dev/null
+++ b/rep/ept/debtags/maint/pkgid.cc.gcov.html
@@ -0,0 +1,133 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/maint/pkgid.cc</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/debtags/maint</a> - pkgid.cc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">15</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">86.7 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">13</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : /** @file
+<span class="lineNum"> 4 </span> : * @author Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 5 </span> : * Quick map from package IDs to package names
+<span class="lineNum"> 6 </span> : */
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : /*
+<span class="lineNum"> 9 </span> : * Copyright (C) 2003-2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 12 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 13 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 14 </span> : * (at your option) any later version.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 19 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 20 </span> : *
+<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 22 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 24 </span> : */
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;ept/debtags/maint/pkgid.h&gt;
+<span class="lineNum"> 27 </span> : #include &lt;ept/debtags/maint/path.h&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : namespace ept {
+<span class="lineNum"> 30 </span> : namespace debtags {
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span><span class="lineCov"> 10 : PkgId::PkgId() {}</span>
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span><span class="lineCov"> 1 : PkgId::PkgId(const char* buf, int size)</span>
+<span class="lineNum"> 35 </span><span class="lineCov"> 1 : : MMap(buf, size) {}</span>
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span><span class="lineNoCov"> 0 : PkgId::PkgId(const tagcoll::diskindex::MasterMMap&amp; master, size_t idx)</span>
+<span class="lineNum"> 38 </span><span class="lineNoCov"> 0 : : MMap(master, idx) {}</span>
+<span class="lineNum"> 39 </span> :
+<span class="lineNum"> 40 </span><span class="lineCov"> 63445 : int PkgId::byName(const std::string&amp; name) const</span>
+<span class="lineNum"> 41 </span> : {
+<span class="lineNum"> 42 </span> : // Binary search the index to find the package ID
+<span class="lineNum"> 43 </span> : int begin, end;
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : /* Binary search */
+<span class="lineNum"> 46 </span><span class="lineCov"> 63445 : begin = -1, end = size();</span>
+<span class="lineNum"> 47 </span><span class="lineCov"> 1043664 : while (end - begin &gt; 1)</span>
+<span class="lineNum"> 48 </span> : {
+<span class="lineNum"> 49 </span><span class="lineCov"> 916774 : int cur = (end + begin) / 2;</span>
+<span class="lineNum"> 50 </span><span class="lineCov"> 916774 : if (byID(cur) &gt; name)</span>
+<span class="lineNum"> 51 </span><span class="lineCov"> 443057 : end = cur;</span>
+<span class="lineNum"> 52 </span> : else
+<span class="lineNum"> 53 </span><span class="lineCov"> 473717 : begin = cur;</span>
+<span class="lineNum"> 54 </span> : }
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span><span class="lineCov"> 63445 : if (begin == -1 || byID(begin) != name)</span>
+<span class="lineNum"> 57 </span> : //throw NotFoundException(string(&quot;looking for the ID of string &quot;) + str);
+<span class="lineNum"> 58 </span><span class="lineCov"> 2 : return -1;</span>
+<span class="lineNum"> 59 </span> : else
+<span class="lineNum"> 60 </span><span class="lineCov"> 63443 : return begin;</span>
+<span class="lineNum"> 61 </span> : }
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span> : }
+<span class="lineNum"> 64 </span> : }
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/maint/pkgid.h.gcov.html b/rep/ept/debtags/maint/pkgid.h.gcov.html
new file mode 100644
index 0000000..05beeb3
--- /dev/null
+++ b/rep/ept/debtags/maint/pkgid.h.gcov.html
@@ -0,0 +1,158 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/maint/pkgid.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/debtags/maint</a> - pkgid.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">6</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">83.3 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">5</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+<span class="lineNum"> 2 </span> : #ifndef EPT_DEBTAGS_PKGID_H
+<span class="lineNum"> 3 </span> : #define EPT_DEBTAGS_PKGID_H
+<span class="lineNum"> 4 </span> :
+<span class="lineNum"> 5 </span> : /** @file
+<span class="lineNum"> 6 </span> : * @author Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 7 </span> : * Quick map from package IDs to package names
+<span class="lineNum"> 8 </span> : */
+<span class="lineNum"> 9 </span> :
+<span class="lineNum"> 10 </span> : /*
+<span class="lineNum"> 11 </span> : * Copyright (C) 2003-2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 12 </span> : *
+<span class="lineNum"> 13 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 14 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 15 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 16 </span> : * (at your option) any later version.
+<span class="lineNum"> 17 </span> : *
+<span class="lineNum"> 18 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 19 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 20 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 21 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 22 </span> : *
+<span class="lineNum"> 23 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 24 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 25 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 26 </span> : */
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : #include &lt;tagcoll/diskindex/mmap.h&gt;
+<span class="lineNum"> 29 </span> : #include &lt;string&gt;
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : namespace ept {
+<span class="lineNum"> 32 </span> : namespace debtags {
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span> : /**
+<span class="lineNum"> 35 </span> : * Maps Packages to IDs and vice-versa.
+<span class="lineNum"> 36 </span> : *
+<span class="lineNum"> 37 </span> : * This is used in building the Debtags fast index, which works representing
+<span class="lineNum"> 38 </span> : * tags and packages as int IDs
+<span class="lineNum"> 39 </span> : */
+<span class="lineNum"> 40 </span> : class PkgId : public tagcoll::diskindex::MMap
+<span class="lineNum"> 41 </span><span class="lineCov"> 11 : {</span>
+<span class="lineNum"> 42 </span> : tagcoll::diskindex::MasterMMap mastermmap;
+<span class="lineNum"> 43 </span> : time_t m_timestamp;
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : public:
+<span class="lineNum"> 46 </span> : PkgId();
+<span class="lineNum"> 47 </span> : PkgId(const tagcoll::diskindex::MasterMMap&amp; master, size_t idx);
+<span class="lineNum"> 48 </span> : PkgId(const char* buf, int size);
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span> : /// Get the timestamp of when the index was last updated
+<span class="lineNum"> 51 </span> : time_t timestamp() const { return m_timestamp; }
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span> : /// Get the number of packages in the index
+<span class="lineNum"> 54 </span><span class="lineCov"> 63445 : size_t size() const { return m_buf ? *(int*)m_buf / sizeof(int) : 0; }</span>
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span> : /**
+<span class="lineNum"> 57 </span> : * Get the ID of a package given its name.
+<span class="lineNum"> 58 </span> : *
+<span class="lineNum"> 59 </span> : * If not found, returns -1.
+<span class="lineNum"> 60 </span> : */
+<span class="lineNum"> 61 </span> : int byName(const std::string&amp; name) const;
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span> : /**
+<span class="lineNum"> 64 </span> : * Get a package name given its ID.
+<span class="lineNum"> 65 </span> : *
+<span class="lineNum"> 66 </span> : * If not found, returns the empty string.
+<span class="lineNum"> 67 </span> : */
+<span class="lineNum"> 68 </span><span class="lineCov"> 1128365 : std::string byID(int id) const</span>
+<span class="lineNum"> 69 </span> : {
+<span class="lineNum"> 70 </span><span class="lineCov"> 1128365 : if (id &gt;= 0 || static_cast&lt;unsigned&gt;(id) &lt; size())</span>
+<span class="lineNum"> 71 </span><span class="lineCov"> 1128365 : return std::string(m_buf + ((int*)m_buf)[id]);</span>
+<span class="lineNum"> 72 </span><span class="lineNoCov"> 0 : return std::string();</span>
+<span class="lineNum"> 73 </span> : }
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span> : /// Get the number of packages in the index
+<span class="lineNum"> 76 </span> : int size(int id) const
+<span class="lineNum"> 77 </span> : {
+<span class="lineNum"> 78 </span> : if (id &lt; 0 || (unsigned)id &gt;= size())
+<span class="lineNum"> 79 </span> : return 0;
+<span class="lineNum"> 80 </span> : if ((unsigned)id == size() - 1)
+<span class="lineNum"> 81 </span> : return m_size - ((int*)m_buf)[id] - 1;
+<span class="lineNum"> 82 </span> : else
+<span class="lineNum"> 83 </span> : return ((int*)m_buf)[id + 1] - ((int*)m_buf)[id] - 1;
+<span class="lineNum"> 84 </span> : }
+<span class="lineNum"> 85 </span> : };
+<span class="lineNum"> 86 </span> :
+<span class="lineNum"> 87 </span> : }
+<span class="lineNum"> 88 </span> : }
+<span class="lineNum"> 89 </span> :
+<span class="lineNum"> 90 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 91 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/maint/pkgid.test.h.gcov.html b/rep/ept/debtags/maint/pkgid.test.h.gcov.html
new file mode 100644
index 0000000..11f3ea5
--- /dev/null
+++ b/rep/ept/debtags/maint/pkgid.test.h.gcov.html
@@ -0,0 +1,142 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/maint/pkgid.test.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/debtags/maint</a> - pkgid.test.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">18</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">18</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+<span class="lineNum"> 2 </span> : /*
+<span class="lineNum"> 3 </span> : * id-&gt;package mapping
+<span class="lineNum"> 4 </span> : *
+<span class="lineNum"> 5 </span> : * Copyright (C) 2006 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 6 </span> : *
+<span class="lineNum"> 7 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 8 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 9 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 10 </span> : * (at your option) any later version.
+<span class="lineNum"> 11 </span> : *
+<span class="lineNum"> 12 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 16 </span> : *
+<span class="lineNum"> 17 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 18 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 19 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 20 </span> : */
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : #include &lt;ept/debtags/maint/pkgid.h&gt;
+<span class="lineNum"> 23 </span> : #include &lt;ept/debtags/maint/path.h&gt;
+<span class="lineNum"> 24 </span> : #include &lt;ept/debtags/debtags.h&gt;
+<span class="lineNum"> 25 </span> : #include &lt;set&gt;
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #include &lt;ept/test.h&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : using namespace std;
+<span class="lineNum"> 30 </span> : using namespace ept;
+<span class="lineNum"> 31 </span> : using namespace ept::debtags;
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : struct TestPkgid : DebtagsTestEnvironment
+<span class="lineNum"> 34 </span><span class="lineCov"> 2 : {</span>
+<span class="lineNum"> 35 </span> : Debtags debtags;
+<span class="lineNum"> 36 </span> : PkgId&amp; pkgid;
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span><span class="lineCov"> 2 : TestPkgid()</span>
+<span class="lineNum"> 39 </span><span class="lineCov"> 2 : : pkgid(debtags.pkgid())</span>
+<span class="lineNum"> 40 </span> : {
+<span class="lineNum"> 41 </span><span class="lineCov"> 2 : }</span>
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : // Check that we can go from name to ID and back
+<span class="lineNum"> 44 </span><span class="lineCov"> 1 : Test _1()</span>
+<span class="lineNum"> 45 </span> : {
+<span class="lineNum"> 46 </span> : //int x = 0;
+<span class="lineNum"> 47 </span><span class="lineCov"> 21146 : for (Debtags::const_iterator i = debtags.begin();</span>
+<span class="lineNum"> 48 </span> : i != debtags.end(); ++i)
+<span class="lineNum"> 49 </span> : {
+<span class="lineNum"> 50 </span><span class="lineCov"> 21145 : int id = pkgid.byName(i-&gt;first);</span>
+<span class="lineNum"> 51 </span><span class="lineCov"> 21145 : std::string pkg = pkgid.byID(id);</span>
+<span class="lineNum"> 52 </span><span class="lineCov"> 21145 : assert(i-&gt;first == pkg);</span>
+<span class="lineNum"> 53 </span> :
+<span class="lineNum"> 54 </span> : /* std::cerr &lt;&lt; x &lt;&lt; &quot;: &quot; &lt;&lt; i-&gt;id() &lt;&lt; &quot;: &quot;
+<span class="lineNum"> 55 </span> : &lt;&lt; i-&gt;name() &lt;&lt; &quot;, &quot; &lt;&lt; pkgidx().name( i-&gt;id() ) &lt;&lt;
+<span class="lineNum"> 56 </span> : std::endl; */
+<span class="lineNum"> 57 </span> : //++ x;
+<span class="lineNum"> 58 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 59 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 60 </span> :
+<span class="lineNum"> 61 </span> : // Check that IDs are distinct
+<span class="lineNum"> 62 </span><span class="lineCov"> 1 : Test _2()</span>
+<span class="lineNum"> 63 </span> : {
+<span class="lineNum"> 64 </span> : using namespace std;
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span><span class="lineCov"> 1 : size_t count = 0;</span>
+<span class="lineNum"> 67 </span><span class="lineCov"> 1 : set&lt;int&gt; ids;</span>
+<span class="lineNum"> 68 </span><span class="lineCov"> 21146 : for (Debtags::const_iterator i = debtags.begin(); i != debtags.end(); ++i, ++count)</span>
+<span class="lineNum"> 69 </span><span class="lineCov"> 21146 : ids.insert(pkgid.byName(i-&gt;first));</span>
+<span class="lineNum"> 70 </span><span class="lineCov"> 1 : assert_eq(ids.size(), count);</span>
+<span class="lineNum"> 71 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 72 </span> :
+<span class="lineNum"> 73 </span> : };
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/maint/serializer.h.gcov.html b/rep/ept/debtags/maint/serializer.h.gcov.html
new file mode 100644
index 0000000..2945ccd
--- /dev/null
+++ b/rep/ept/debtags/maint/serializer.h.gcov.html
@@ -0,0 +1,1016 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/maint/serializer.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/debtags/maint</a> - serializer.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">89</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">97.8 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">87</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+<span class="lineNum"> 2 </span> : /**
+<span class="lineNum"> 3 </span> : * @file cache/component/debtags/serializer.h
+<span class="lineNum"> 4 </span> : * @author Enrico Zini (enrico) &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 5 </span> : */
+<span class="lineNum"> 6 </span> :
+<span class="lineNum"> 7 </span> : #ifndef EPT_DEBTAGS_SERIALIZER_H
+<span class="lineNum"> 8 </span> : #define EPT_DEBTAGS_SERIALIZER_H
+<span class="lineNum"> 9 </span> :
+<span class="lineNum"> 10 </span> : #include &lt;ept/debtags/vocabulary.h&gt;
+<span class="lineNum"> 11 </span> : #include &lt;ept/debtags/maint/pkgid.h&gt;
+<span class="lineNum"> 12 </span> : #include &lt;tagcoll/patch.h&gt;
+<span class="lineNum"> 13 </span> : #include &lt;wibble/mixin.h&gt;
+<span class="lineNum"> 14 </span> : #include &lt;string&gt;
+<span class="lineNum"> 15 </span> :
+<span class="lineNum"> 16 </span> : namespace ept {
+<span class="lineNum"> 17 </span> : namespace debtags {
+<span class="lineNum"> 18 </span> :
+<span class="lineNum"> 19 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 20 </span> : class IntToPkg : public wibble::mixin::OutputIterator&lt; IntToPkg&lt;OUT&gt; &gt;
+<span class="lineNum"> 21 </span> : {
+<span class="lineNum"> 22 </span> : PkgId&amp; pkgid;
+<span class="lineNum"> 23 </span> : Vocabulary&amp; voc;
+<span class="lineNum"> 24 </span> : OUT out;
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : public:
+<span class="lineNum"> 27 </span><span class="lineCov"> 5 : IntToPkg(PkgId&amp; pkgid, Vocabulary&amp; voc, const OUT&amp; out)</span>
+<span class="lineNum"> 28 </span><span class="lineCov"> 5 : : pkgid(pkgid), voc(voc), out(out) {}</span>
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : template&lt;typename ITEMS, typename TAGS&gt;
+<span class="lineNum"> 31 </span><span class="lineCov"> 42291 : IntToPkg&lt;OUT&gt;&amp; operator=(const std::pair&lt;ITEMS, TAGS&gt;&amp; data)</span>
+<span class="lineNum"> 32 </span> : {
+<span class="lineNum"> 33 </span><span class="lineCov"> 42291 : std::set&lt;std::string&gt; ritems;</span>
+<span class="lineNum"> 34 </span><span class="lineCov"> 42291 : std::set&lt;Tag&gt; rtags;</span>
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span><span class="lineCov"> 84582 : for (typename ITEMS::const_iterator i = data.first.begin();</span>
+<span class="lineNum"> 37 </span> : i != data.first.end(); ++i)
+<span class="lineNum"> 38 </span> : {
+<span class="lineNum"> 39 </span><span class="lineCov"> 42291 : std::string pkg = pkgid.byID(*i);</span>
+<span class="lineNum"> 40 </span><span class="lineCov"> 42291 : if (!pkg.empty())</span>
+<span class="lineNum"> 41 </span><span class="lineCov"> 42291 : ritems.insert(pkg);</span>
+<span class="lineNum"> 42 </span> : }
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span><span class="lineCov"> 253489 : for (typename TAGS::const_iterator i = data.second.begin();</span>
+<span class="lineNum"> 45 </span> : i != data.second.end(); ++i)
+<span class="lineNum"> 46 </span> : {
+<span class="lineNum"> 47 </span><span class="lineCov"> 211198 : Tag t = voc.tagByID(*i);</span>
+<span class="lineNum"> 48 </span><span class="lineCov"> 211198 : if (t.valid())</span>
+<span class="lineNum"> 49 </span><span class="lineCov"> 211198 : rtags.insert(t);</span>
+<span class="lineNum"> 50 </span> : }
+<span class="lineNum"> 51 </span> :
+<span class="lineNum"> 52 </span><span class="lineCov"> 42291 : if (!ritems.empty() &amp;&amp; !rtags.empty())</span>
+<span class="lineNum"> 53 </span> : {
+<span class="lineNum"> 54 </span><span class="lineCov"> 42267 : *out = make_pair(ritems, rtags);</span>
+<span class="lineNum"> 55 </span><span class="lineCov"> 42267 : ++out;</span>
+<span class="lineNum"> 56 </span> : }
+<span class="lineNum"> 57 </span><span class="lineCov"> 42291 : return *this;</span>
+<span class="lineNum"> 58 </span> : }
+<span class="lineNum"> 59 </span> : };
+<span class="lineNum"> 60 </span> :
+<span class="lineNum"> 61 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 62 </span><span class="lineCov"> 5 : IntToPkg&lt;OUT&gt; intToPkg(PkgId&amp; pkgid, Vocabulary&amp; voc, const OUT&amp; out)</span>
+<span class="lineNum"> 63 </span> : {
+<span class="lineNum"> 64 </span><span class="lineCov"> 5 : return IntToPkg&lt;OUT&gt;(pkgid, voc, out);</span>
+<span class="lineNum"> 65 </span> : }
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 68 </span> : class StringToInt : public wibble::mixin::OutputIterator&lt; StringToInt&lt;OUT&gt; &gt;
+<span class="lineNum"> 69 </span> : {
+<span class="lineNum"> 70 </span> : PkgId&amp; pkgid;
+<span class="lineNum"> 71 </span> : Vocabulary&amp; voc;
+<span class="lineNum"> 72 </span> : OUT out;
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span> : public:
+<span class="lineNum"> 75 </span><span class="lineCov"> 2 : StringToInt(PkgId&amp; pkgid, Vocabulary&amp; voc, const OUT&amp; out)</span>
+<span class="lineNum"> 76 </span><span class="lineCov"> 2 : : pkgid(pkgid), voc(voc), out(out) {}</span>
+<span class="lineNum"> 77 </span> :
+<span class="lineNum"> 78 </span> : template&lt;typename ITEMS, typename TAGS&gt;
+<span class="lineNum"> 79 </span><span class="lineCov"> 21146 : StringToInt&lt;OUT&gt;&amp; operator=(const std::pair&lt;ITEMS, TAGS&gt;&amp; data)</span>
+<span class="lineNum"> 80 </span> : {
+<span class="lineNum"> 81 </span><span class="lineCov"> 21146 : std::set&lt;int&gt; ritems;</span>
+<span class="lineNum"> 82 </span><span class="lineCov"> 21146 : std::set&lt;int&gt; rtags;</span>
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span><span class="lineCov"> 42292 : for (typename ITEMS::const_iterator i = data.first.begin();</span>
+<span class="lineNum"> 85 </span> : i != data.first.end(); ++i)
+<span class="lineNum"> 86 </span> : {
+<span class="lineNum"> 87 </span><span class="lineCov"> 21146 : int id = pkgid.byName(*i);</span>
+<span class="lineNum"> 88 </span><span class="lineCov"> 21146 : if (id != -1)</span>
+<span class="lineNum"> 89 </span><span class="lineCov"> 21146 : ritems.insert(id);</span>
+<span class="lineNum"> 90 </span> : }
+<span class="lineNum"> 91 </span> :
+<span class="lineNum"> 92 </span><span class="lineCov"> 126874 : for (typename TAGS::const_iterator i = data.second.begin();</span>
+<span class="lineNum"> 93 </span> : i != data.second.end(); ++i)
+<span class="lineNum"> 94 </span> : {
+<span class="lineNum"> 95 </span><span class="lineCov"> 105728 : Tag t = voc.tagByName(*i);</span>
+<span class="lineNum"> 96 </span><span class="lineCov"> 105728 : if (t.valid())</span>
+<span class="lineNum"> 97 </span><span class="lineCov"> 105600 : rtags.insert(t.id());</span>
+<span class="lineNum"> 98 </span> : }
+<span class="lineNum"> 99 </span> :
+<span class="lineNum"> 100 </span><span class="lineCov"> 21146 : if (!ritems.empty() &amp;&amp; !rtags.empty())</span>
+<span class="lineNum"> 101 </span> : {
+<span class="lineNum"> 102 </span><span class="lineCov"> 21134 : *out = make_pair(ritems, rtags);</span>
+<span class="lineNum"> 103 </span><span class="lineCov"> 21134 : ++out;</span>
+<span class="lineNum"> 104 </span> : }
+<span class="lineNum"> 105 </span><span class="lineCov"> 21146 : return *this;</span>
+<span class="lineNum"> 106 </span> : }
+<span class="lineNum"> 107 </span> :
+<span class="lineNum"> 108 </span> : };
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 111 </span><span class="lineCov"> 2 : StringToInt&lt;OUT&gt; stringToInt(PkgId&amp; pkgid, Vocabulary&amp; voc, const OUT&amp; out)</span>
+<span class="lineNum"> 112 </span> : {
+<span class="lineNum"> 113 </span><span class="lineCov"> 2 : return StringToInt&lt;OUT&gt;(pkgid, voc, out);</span>
+<span class="lineNum"> 114 </span> : }
+<span class="lineNum"> 115 </span> :
+<span class="lineNum"> 116 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 117 </span> : class StringToPkg : public wibble::mixin::OutputIterator&lt; StringToPkg&lt;OUT&gt; &gt;
+<span class="lineNum"> 118 </span> : {
+<span class="lineNum"> 119 </span> : PkgId&amp; pkgid;
+<span class="lineNum"> 120 </span> : Vocabulary&amp; voc;
+<span class="lineNum"> 121 </span> : OUT out;
+<span class="lineNum"> 122 </span> :
+<span class="lineNum"> 123 </span> : public:
+<span class="lineNum"> 124 </span> : StringToPkg(PkgId&amp; pkgid, Vocabulary&amp; voc, const OUT&amp; out)
+<span class="lineNum"> 125 </span> : : pkgid(pkgid), voc(voc), out(out) {}
+<span class="lineNum"> 126 </span> :
+<span class="lineNum"> 127 </span> : template&lt;typename ITEMS, typename TAGS&gt;
+<span class="lineNum"> 128 </span> : StringToPkg&lt;OUT&gt;&amp; operator=(const std::pair&lt;ITEMS, TAGS&gt;&amp; data)
+<span class="lineNum"> 129 </span> : {
+<span class="lineNum"> 130 </span> : std::set&lt;std::string&gt; ritems;
+<span class="lineNum"> 131 </span> : std::set&lt;Tag&gt; rtags;
+<span class="lineNum"> 132 </span> :
+<span class="lineNum"> 133 </span> : for (typename ITEMS::const_iterator i = data.first.begin();
+<span class="lineNum"> 134 </span> : i != data.first.end(); ++i)
+<span class="lineNum"> 135 </span> : {
+<span class="lineNum"> 136 </span> : // Ensure that the package exists in the pkgid database
+<span class="lineNum"> 137 </span> : if (pkgid.byName(*i) == -1)
+<span class="lineNum"> 138 </span> : continue;
+<span class="lineNum"> 139 </span> : ritems.insert(*i);
+<span class="lineNum"> 140 </span> : }
+<span class="lineNum"> 141 </span> :
+<span class="lineNum"> 142 </span> : for (typename TAGS::const_iterator i = data.second.begin();
+<span class="lineNum"> 143 </span> : i != data.second.end(); ++i)
+<span class="lineNum"> 144 </span> : {
+<span class="lineNum"> 145 </span> : Tag t = voc.tagByName(*i);
+<span class="lineNum"> 146 </span> : if (t.valid())
+<span class="lineNum"> 147 </span> : rtags.insert(t);
+<span class="lineNum"> 148 </span> : }
+<span class="lineNum"> 149 </span> :
+<span class="lineNum"> 150 </span> : if (!ritems.empty() &amp;&amp; !rtags.empty())
+<span class="lineNum"> 151 </span> : {
+<span class="lineNum"> 152 </span> : *out = make_pair(ritems, rtags);
+<span class="lineNum"> 153 </span> : ++out;
+<span class="lineNum"> 154 </span> : }
+<span class="lineNum"> 155 </span> : return *this;
+<span class="lineNum"> 156 </span> : }
+<span class="lineNum"> 157 </span> :
+<span class="lineNum"> 158 </span> : };
+<span class="lineNum"> 159 </span> :
+<span class="lineNum"> 160 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 161 </span> : StringToPkg&lt;OUT&gt; stringToPkg(PkgId&amp; pkgid, Vocabulary&amp; voc, const OUT&amp; out)
+<span class="lineNum"> 162 </span> : {
+<span class="lineNum"> 163 </span> : return StringToPkg&lt;OUT&gt;(pkgid, voc, out);
+<span class="lineNum"> 164 </span> : }
+<span class="lineNum"> 165 </span> :
+<span class="lineNum"> 166 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 167 </span> : class PkgToString : public wibble::mixin::OutputIterator&lt; PkgToString&lt;OUT&gt; &gt;
+<span class="lineNum"> 168 </span> : {
+<span class="lineNum"> 169 </span> : OUT out;
+<span class="lineNum"> 170 </span> : public:
+<span class="lineNum"> 171 </span><span class="lineCov"> 1 : PkgToString(const OUT&amp; out) : out(out) {}</span>
+<span class="lineNum"> 172 </span> :
+<span class="lineNum"> 173 </span> : template&lt;typename ITEMS, typename TAGS&gt;
+<span class="lineNum"> 174 </span><span class="lineCov"> 1 : PkgToString&lt;OUT&gt;&amp; operator=(const std::pair&lt;ITEMS, TAGS&gt;&amp; data)</span>
+<span class="lineNum"> 175 </span> : {
+<span class="lineNum"> 176 </span><span class="lineCov"> 1 : std::set&lt;std::string&gt; stags;</span>
+<span class="lineNum"> 177 </span><span class="lineCov"> 3 : for (typename TAGS::const_iterator i = data.second.begin();</span>
+<span class="lineNum"> 178 </span> : i != data.second.end(); ++i)
+<span class="lineNum"> 179 </span><span class="lineCov"> 2 : if (i-&gt;valid())</span>
+<span class="lineNum"> 180 </span><span class="lineCov"> 2 : stags.insert(i-&gt;fullname());</span>
+<span class="lineNum"> 181 </span><span class="lineCov"> 1 : *out = make_pair(data.first, stags);</span>
+<span class="lineNum"> 182 </span><span class="lineCov"> 1 : ++out;</span>
+<span class="lineNum"> 183 </span><span class="lineCov"> 1 : return *this;</span>
+<span class="lineNum"> 184 </span> : }
+<span class="lineNum"> 185 </span> : };
+<span class="lineNum"> 186 </span> :
+<span class="lineNum"> 187 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 188 </span><span class="lineCov"> 1 : PkgToString&lt;OUT&gt; pkgToString(const OUT&amp; out)</span>
+<span class="lineNum"> 189 </span> : {
+<span class="lineNum"> 190 </span><span class="lineCov"> 1 : return PkgToString&lt;OUT&gt;(out);</span>
+<span class="lineNum"> 191 </span> : }
+<span class="lineNum"> 192 </span> :
+<span class="lineNum"> 193 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 194 </span> : class PatchStringToInt : public wibble::mixin::OutputIterator&lt; PatchStringToInt&lt;OUT&gt; &gt;
+<span class="lineNum"> 195 </span> : {
+<span class="lineNum"> 196 </span> : PkgId&amp; pkgid;
+<span class="lineNum"> 197 </span> : Vocabulary&amp; voc;
+<span class="lineNum"> 198 </span> : OUT out;
+<span class="lineNum"> 199 </span> :
+<span class="lineNum"> 200 </span> : public:
+<span class="lineNum"> 201 </span><span class="lineCov"> 1 : PatchStringToInt(PkgId&amp; pkgid, Vocabulary&amp; voc, const OUT&amp; out)</span>
+<span class="lineNum"> 202 </span><span class="lineCov"> 1 : : pkgid(pkgid), voc(voc), out(out) {}</span>
+<span class="lineNum"> 203 </span> :
+<span class="lineNum"> 204 </span><span class="lineCov"> 1 : PatchStringToInt&lt;OUT&gt;&amp; operator=(const tagcoll::Patch&lt;std::string, std::string&gt;&amp; patch)</span>
+<span class="lineNum"> 205 </span> : {
+<span class="lineNum"> 206 </span><span class="lineCov"> 1 : int id = pkgid.byName(patch.item);</span>
+<span class="lineNum"> 207 </span><span class="lineCov"> 1 : if (id == -1)</span>
+<span class="lineNum"> 208 </span><span class="lineNoCov"> 0 : return *this;</span>
+<span class="lineNum"> 209 </span> :
+<span class="lineNum"> 210 </span><span class="lineCov"> 1 : tagcoll::Patch&lt;int, int&gt; res(id);</span>
+<span class="lineNum"> 211 </span><span class="lineCov"> 2 : for (std::set&lt;std::string&gt;::const_iterator i = patch.added.begin();</span>
+<span class="lineNum"> 212 </span> : i != patch.added.end(); ++i)
+<span class="lineNum"> 213 </span> : {
+<span class="lineNum"> 214 </span><span class="lineCov"> 1 : Tag tag = voc.tagByName(*i);</span>
+<span class="lineNum"> 215 </span><span class="lineCov"> 1 : if (tag.valid())</span>
+<span class="lineNum"> 216 </span><span class="lineCov"> 1 : res.add(tag.id());</span>
+<span class="lineNum"> 217 </span> : }
+<span class="lineNum"> 218 </span><span class="lineCov"> 2 : for (std::set&lt;std::string&gt;::const_iterator i = patch.removed.begin();</span>
+<span class="lineNum"> 219 </span> : i != patch.removed.end(); ++i)
+<span class="lineNum"> 220 </span> : {
+<span class="lineNum"> 221 </span><span class="lineCov"> 1 : Tag tag = voc.tagByName(*i);</span>
+<span class="lineNum"> 222 </span><span class="lineCov"> 1 : if (tag.valid())</span>
+<span class="lineNum"> 223 </span><span class="lineCov"> 1 : res.remove(tag.id());</span>
+<span class="lineNum"> 224 </span> : }
+<span class="lineNum"> 225 </span><span class="lineCov"> 1 : *out = res;</span>
+<span class="lineNum"> 226 </span><span class="lineCov"> 1 : ++out;</span>
+<span class="lineNum"> 227 </span><span class="lineCov"> 1 : return *this;</span>
+<span class="lineNum"> 228 </span> : }
+<span class="lineNum"> 229 </span> : };
+<span class="lineNum"> 230 </span> :
+<span class="lineNum"> 231 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 232 </span><span class="lineCov"> 1 : PatchStringToInt&lt;OUT&gt; patchStringToInt(PkgId&amp; pkgid, Vocabulary&amp; voc, const OUT&amp; out)</span>
+<span class="lineNum"> 233 </span> : {
+<span class="lineNum"> 234 </span><span class="lineCov"> 1 : return PatchStringToInt&lt;OUT&gt;(pkgid, voc, out);</span>
+<span class="lineNum"> 235 </span> : }
+<span class="lineNum"> 236 </span> :
+<span class="lineNum"> 237 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 238 </span> : class PatchIntToString : public wibble::mixin::OutputIterator&lt; PatchIntToString&lt;OUT&gt; &gt;
+<span class="lineNum"> 239 </span> : {
+<span class="lineNum"> 240 </span> : PkgId&amp; pkgid;
+<span class="lineNum"> 241 </span> : Vocabulary&amp; voc;
+<span class="lineNum"> 242 </span> : OUT out;
+<span class="lineNum"> 243 </span> :
+<span class="lineNum"> 244 </span> : public:
+<span class="lineNum"> 245 </span><span class="lineCov"> 2 : PatchIntToString(PkgId&amp; pkgid, Vocabulary&amp; voc, const OUT&amp; out)</span>
+<span class="lineNum"> 246 </span><span class="lineCov"> 2 : : pkgid(pkgid), voc(voc), out(out) {}</span>
+<span class="lineNum"> 247 </span> :
+<span class="lineNum"> 248 </span><span class="lineCov"> 2 : PatchIntToString&lt;OUT&gt;&amp; operator=(const tagcoll::Patch&lt;int, int&gt;&amp; patch)</span>
+<span class="lineNum"> 249 </span> : {
+<span class="lineNum"> 250 </span><span class="lineCov"> 2 : std::string name = pkgid.byID(patch.item);</span>
+<span class="lineNum"> 251 </span><span class="lineCov"> 2 : if (name.empty())</span>
+<span class="lineNum"> 252 </span><span class="lineNoCov"> 0 : return *this;</span>
+<span class="lineNum"> 253 </span> :
+<span class="lineNum"> 254 </span><span class="lineCov"> 2 : tagcoll::Patch&lt;std::string, std::string&gt; res(name);</span>
+<span class="lineNum"> 255 </span><span class="lineCov"> 4 : for (std::set&lt;int&gt;::const_iterator i = patch.added.begin();</span>
+<span class="lineNum"> 256 </span> : i != patch.added.end(); ++i)
+<span class="lineNum"> 257 </span> : {
+<span class="lineNum"> 258 </span><span class="lineCov"> 2 : Tag tag = voc.tagByID(*i);</span>
+<span class="lineNum"> 259 </span><span class="lineCov"> 2 : if (tag.valid())</span>
+<span class="lineNum"> 260 </span><span class="lineCov"> 2 : res.add(tag.fullname());</span>
+<span class="lineNum"> 261 </span> : }
+<span class="lineNum"> 262 </span><span class="lineCov"> 3 : for (std::set&lt;int&gt;::const_iterator i = patch.removed.begin();</span>
+<span class="lineNum"> 263 </span> : i != patch.removed.end(); ++i)
+<span class="lineNum"> 264 </span> : {
+<span class="lineNum"> 265 </span><span class="lineCov"> 1 : Tag tag = voc.tagByID(*i);</span>
+<span class="lineNum"> 266 </span><span class="lineCov"> 1 : if (tag.valid())</span>
+<span class="lineNum"> 267 </span><span class="lineCov"> 1 : res.remove(tag.fullname());</span>
+<span class="lineNum"> 268 </span> : }
+<span class="lineNum"> 269 </span><span class="lineCov"> 2 : *out = res;</span>
+<span class="lineNum"> 270 </span><span class="lineCov"> 2 : ++out;</span>
+<span class="lineNum"> 271 </span><span class="lineCov"> 2 : return *this;</span>
+<span class="lineNum"> 272 </span> : }
+<span class="lineNum"> 273 </span> : };
+<span class="lineNum"> 274 </span> :
+<span class="lineNum"> 275 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 276 </span><span class="lineCov"> 2 : PatchIntToString&lt;OUT&gt; patchIntToString(PkgId&amp; pkgid, Vocabulary&amp; voc, const OUT&amp; out)</span>
+<span class="lineNum"> 277 </span> : {
+<span class="lineNum"> 278 </span><span class="lineCov"> 2 : return PatchIntToString&lt;OUT&gt;(pkgid, voc, out);</span>
+<span class="lineNum"> 279 </span> : }
+<span class="lineNum"> 280 </span> :
+<span class="lineNum"> 281 </span> : #if 0
+<span class="lineNum"> 282 </span> : GOOD STUFF
+<span class="lineNum"> 283 </span> :
+<span class="lineNum"> 284 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 285 </span> : class ToInt : public wibble::mixin::OutputIterator&lt; ToInt&lt;OUT&gt; &gt;
+<span class="lineNum"> 286 </span> : {
+<span class="lineNum"> 287 </span> : OUT out;
+<span class="lineNum"> 288 </span> : public:
+<span class="lineNum"> 289 </span> : ToInt(const OUT&amp; out) : out(out) {}
+<span class="lineNum"> 290 </span> :
+<span class="lineNum"> 291 </span> : template&lt;typename ITEMS, typename TAGS&gt;
+<span class="lineNum"> 292 </span> : ToInt&lt;OUT&gt;&amp; operator=(const std::pair&lt;ITEMS, TAGS&gt;&amp; data)
+<span class="lineNum"> 293 </span> : {
+<span class="lineNum"> 294 </span> : std::set&lt;int&gt; iitems;
+<span class="lineNum"> 295 </span> : std::set&lt;int&gt; itags;
+<span class="lineNum"> 296 </span> : for (typename ITEMS::const_iterator i = data.first.begin();
+<span class="lineNum"> 297 </span> : i != data.first.end(); ++i)
+<span class="lineNum"> 298 </span> : if (i-&gt;valid())
+<span class="lineNum"> 299 </span> : iitems.insert(i-&gt;ondiskId());
+<span class="lineNum"> 300 </span> : for (typename TAGS::const_iterator i = data.second.begin();
+<span class="lineNum"> 301 </span> : i != data.second.end(); ++i)
+<span class="lineNum"> 302 </span> : if (i-&gt;valid())
+<span class="lineNum"> 303 </span> : itags.insert(i-&gt;id());
+<span class="lineNum"> 304 </span> : *out = make_pair(iitems, itags);
+<span class="lineNum"> 305 </span> : ++out;
+<span class="lineNum"> 306 </span> : return *this;
+<span class="lineNum"> 307 </span> : }
+<span class="lineNum"> 308 </span> : };
+<span class="lineNum"> 309 </span> :
+<span class="lineNum"> 310 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 311 </span> : ToInt&lt;OUT&gt; toInt(const OUT&amp; out)
+<span class="lineNum"> 312 </span> : {
+<span class="lineNum"> 313 </span> : return ToInt&lt;OUT&gt;(out);
+<span class="lineNum"> 314 </span> : }
+<span class="lineNum"> 315 </span> :
+<span class="lineNum"> 316 </span> : template&lt;typename ITEMCONV, typename TAGCONV, typename OUT&gt;
+<span class="lineNum"> 317 </span> : class Converter : public wibble::mixin::OutputIterator&lt; Converter&lt;ITEMCONV, TAGCONV, OUT&gt; &gt;
+<span class="lineNum"> 318 </span> : {
+<span class="lineNum"> 319 </span> : ITEMCONV itemconv;
+<span class="lineNum"> 320 </span> : TAGCONV tagconv;
+<span class="lineNum"> 321 </span> : OUT out;
+<span class="lineNum"> 322 </span> :
+<span class="lineNum"> 323 </span> : public:
+<span class="lineNum"> 324 </span> : Converter(const ITEMCONV&amp; itemconv, const TAGCONV&amp; tagconv, const OUT&amp; out)
+<span class="lineNum"> 325 </span> : : itemconv(itemconv), tagconv(tagconv), out(out) {}
+<span class="lineNum"> 326 </span> :
+<span class="lineNum"> 327 </span> : template&lt;typename ITEMS, typename TAGS&gt;
+<span class="lineNum"> 328 </span> : Converter&lt;ITEMCONV, TAGCONV, OUT&gt;&amp; operator=(const std::pair&lt;ITEMS, TAGS&gt;&amp; data)
+<span class="lineNum"> 329 </span> : {
+<span class="lineNum"> 330 </span> : *out = make_pair(itemconv(data.first), tagconv(data.second));
+<span class="lineNum"> 331 </span> : ++out;
+<span class="lineNum"> 332 </span> : return *this;
+<span class="lineNum"> 333 </span> : }
+<span class="lineNum"> 334 </span> : };
+<span class="lineNum"> 335 </span> :
+<span class="lineNum"> 336 </span> : template&lt;typename ITEMCONV, typename TAGCONV, typename OUT&gt;
+<span class="lineNum"> 337 </span> : Converter&lt;ITEMCONV, TAGCONV, OUT&gt; converter(const ITEMCONV&amp; itemconv, const TAGCONV&amp; tagconv, const OUT&amp; out)
+<span class="lineNum"> 338 </span> : {
+<span class="lineNum"> 339 </span> : return Converter&lt;ITEMCONV, TAGCONV, OUT&gt;(itemconv, tagconv, out);
+<span class="lineNum"> 340 </span> : }
+<span class="lineNum"> 341 </span> :
+<span class="lineNum"> 342 </span> :
+<span class="lineNum"> 343 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 344 </span> : class PatchToString : public wibble::mixin::OutputIterator&lt; PatchToString&lt;OUT&gt; &gt;
+<span class="lineNum"> 345 </span> : {
+<span class="lineNum"> 346 </span> : OUT out;
+<span class="lineNum"> 347 </span> :
+<span class="lineNum"> 348 </span> : public:
+<span class="lineNum"> 349 </span> : PatchToString(const OUT&amp; out) : out(out) {}
+<span class="lineNum"> 350 </span> :
+<span class="lineNum"> 351 </span> : template&lt;typename PKG, typename TAG&gt;
+<span class="lineNum"> 352 </span> : PatchToString&lt;OUT&gt;&amp; operator=(const tagcoll::Patch&lt;PKG, TAG&gt;&amp; patch)
+<span class="lineNum"> 353 </span> : {
+<span class="lineNum"> 354 </span> : if (!patch.item.valid())
+<span class="lineNum"> 355 </span> : return *this;
+<span class="lineNum"> 356 </span> :
+<span class="lineNum"> 357 </span> : tagcoll::Patch&lt;std::string, std::string&gt; res(patch.item.name());
+<span class="lineNum"> 358 </span> : for (typename std::set&lt;TAG&gt;::const_iterator i = patch.added.begin();
+<span class="lineNum"> 359 </span> : i != patch.added.end(); ++i)
+<span class="lineNum"> 360 </span> : if (i-&gt;valid())
+<span class="lineNum"> 361 </span> : res.add(i-&gt;fullname());
+<span class="lineNum"> 362 </span> : for (typename std::set&lt;TAG&gt;::const_iterator i = patch.removed.begin();
+<span class="lineNum"> 363 </span> : i != patch.removed.end(); ++i)
+<span class="lineNum"> 364 </span> : if (i-&gt;valid())
+<span class="lineNum"> 365 </span> : res.remove(i-&gt;fullname());
+<span class="lineNum"> 366 </span> : *out = res;
+<span class="lineNum"> 367 </span> : ++out;
+<span class="lineNum"> 368 </span> : return *this;
+<span class="lineNum"> 369 </span> : }
+<span class="lineNum"> 370 </span> : };
+<span class="lineNum"> 371 </span> :
+<span class="lineNum"> 372 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 373 </span> : PatchToString&lt;OUT&gt; patchToString(const OUT&amp; out)
+<span class="lineNum"> 374 </span> : {
+<span class="lineNum"> 375 </span> : return PatchToString&lt;OUT&gt;(out);
+<span class="lineNum"> 376 </span> : }
+<span class="lineNum"> 377 </span> :
+<span class="lineNum"> 378 </span> : #endif
+<span class="lineNum"> 379 </span> :
+<span class="lineNum"> 380 </span> : }
+<span class="lineNum"> 381 </span> : }
+<span class="lineNum"> 382 </span> :
+<span class="lineNum"> 383 </span> : #if 0
+<span class="lineNum"> 384 </span> :
+<span class="lineNum"> 385 </span> : namespace tagcoll {
+<span class="lineNum"> 386 </span> : namespace coll {
+<span class="lineNum"> 387 </span> :
+<span class="lineNum"> 388 </span> : template&lt;&gt;
+<span class="lineNum"> 389 </span> : struct coll_traits&lt; ept::cache::debtags::DebtagsIndex &gt;
+<span class="lineNum"> 390 </span> : {
+<span class="lineNum"> 391 </span> : typedef ept::cache::Package&lt;&gt; item_type;
+<span class="lineNum"> 392 </span> : typedef ept::cache::debtags::Tag tag_type;
+<span class="lineNum"> 393 </span> : typedef std::set&lt; ept::cache::Package&lt;&gt; &gt; itemset_type;
+<span class="lineNum"> 394 </span> : typedef std::set&lt;ept::cache::debtags::Tag&gt; tagset_type;
+<span class="lineNum"> 395 </span> : };
+<span class="lineNum"> 396 </span> :
+<span class="lineNum"> 397 </span> : }
+<span class="lineNum"> 398 </span> : }
+<span class="lineNum"> 399 </span> :
+<span class="lineNum"> 400 </span> : namespace ept {
+<span class="lineNum"> 401 </span> : namespace cache {
+<span class="lineNum"> 402 </span> : namespace debtags {
+<span class="lineNum"> 403 </span> :
+<span class="lineNum"> 404 </span> : #if 0
+<span class="lineNum"> 405 </span> : /**
+<span class="lineNum"> 406 </span> : * Convert Facets to ints
+<span class="lineNum"> 407 </span> : */
+<span class="lineNum"> 408 </span> : class FacetIntConverter : public Implementation&lt;FacetIntConverter&gt;,
+<span class="lineNum"> 409 </span> : public Tagcoll::Converter&lt;aptFront::cache::entity::Facet, int&gt;,
+<span class="lineNum"> 410 </span> : public Tagcoll::Converter&lt;int, aptFront::cache::entity::Facet&gt;
+<span class="lineNum"> 411 </span> : {
+<span class="lineNum"> 412 </span> : typedef aptFront::cache::entity::Facet Facet;
+<span class="lineNum"> 413 </span> : typedef Tagcoll::OpSet&lt;aptFront::cache::entity::Facet&gt; FacetSet;
+<span class="lineNum"> 414 </span> : typedef Tagcoll::OpSet&lt;int&gt; IntSet;
+<span class="lineNum"> 415 </span> : public:
+<span class="lineNum"> 416 </span> : virtual int operator()(const aptFront::cache::entity::Facet&amp; item) const;
+<span class="lineNum"> 417 </span> : virtual aptFront::cache::entity::Facet operator()(const int&amp; item) const;
+<span class="lineNum"> 418 </span> :
+<span class="lineNum"> 419 </span> : virtual IntSet operator()(const FacetSet&amp; item) const
+<span class="lineNum"> 420 </span> : { return Tagcoll::Converter&lt;Facet, int&gt;::operator()(item); }
+<span class="lineNum"> 421 </span> : virtual FacetSet operator()(const IntSet&amp; item) const
+<span class="lineNum"> 422 </span> : { return Tagcoll::Converter&lt;int, Facet&gt;::operator()(item); }
+<span class="lineNum"> 423 </span> :
+<span class="lineNum"> 424 </span> : static std::string componentName();
+<span class="lineNum"> 425 </span> : };
+<span class="lineNum"> 426 </span> :
+<span class="lineNum"> 427 </span> : /**
+<span class="lineNum"> 428 </span> : * Convert Facets to strings
+<span class="lineNum"> 429 </span> : */
+<span class="lineNum"> 430 </span> : class FacetStringConverter : public Implementation&lt;FacetStringConverter&gt;,
+<span class="lineNum"> 431 </span> : public Tagcoll::Converter&lt;aptFront::cache::entity::Facet, std::string&gt;,
+<span class="lineNum"> 432 </span> : public Tagcoll::Converter&lt;std::string, aptFront::cache::entity::Facet&gt;
+<span class="lineNum"> 433 </span> : {
+<span class="lineNum"> 434 </span> : typedef aptFront::cache::entity::Facet Facet;
+<span class="lineNum"> 435 </span> : typedef Tagcoll::OpSet&lt;aptFront::cache::entity::Facet&gt; FacetSet;
+<span class="lineNum"> 436 </span> : typedef Tagcoll::OpSet&lt;std::string&gt; StringSet;
+<span class="lineNum"> 437 </span> : public:
+<span class="lineNum"> 438 </span> : virtual std::string operator()(const aptFront::cache::entity::Facet&amp; item) const;
+<span class="lineNum"> 439 </span> : virtual aptFront::cache::entity::Facet operator()(const std::string&amp; item) const;
+<span class="lineNum"> 440 </span> :
+<span class="lineNum"> 441 </span> : virtual StringSet operator()(const FacetSet&amp; item) const
+<span class="lineNum"> 442 </span> : { return Tagcoll::Converter&lt;Facet, std::string&gt;::operator()(item); }
+<span class="lineNum"> 443 </span> : virtual FacetSet operator()(const StringSet&amp; item) const
+<span class="lineNum"> 444 </span> : { return Tagcoll::Converter&lt;std::string, Facet&gt;::operator()(item); }
+<span class="lineNum"> 445 </span> :
+<span class="lineNum"> 446 </span> : static std::string componentName();
+<span class="lineNum"> 447 </span> : };
+<span class="lineNum"> 448 </span> :
+<span class="lineNum"> 449 </span> : /**
+<span class="lineNum"> 450 </span> : * Convert Vocabulary to ints
+<span class="lineNum"> 451 </span> : */
+<span class="lineNum"> 452 </span> : class TagIntConverter : public Implementation&lt;TagIntConverter&gt;,
+<span class="lineNum"> 453 </span> : public Tagcoll::Converter&lt;aptFront::cache::entity::Tag, int&gt;,
+<span class="lineNum"> 454 </span> : public Tagcoll::Converter&lt;int, aptFront::cache::entity::Tag&gt;
+<span class="lineNum"> 455 </span> : {
+<span class="lineNum"> 456 </span> : typedef aptFront::cache::entity::Tag Tag;
+<span class="lineNum"> 457 </span> : typedef Tagcoll::OpSet&lt;aptFront::cache::entity::Tag&gt; TagSet;
+<span class="lineNum"> 458 </span> : typedef Tagcoll::OpSet&lt;int&gt; IntSet;
+<span class="lineNum"> 459 </span> : public:
+<span class="lineNum"> 460 </span> : virtual int operator()(const aptFront::cache::entity::Tag&amp; item) const;
+<span class="lineNum"> 461 </span> : virtual aptFront::cache::entity::Tag operator()(const int&amp; item) const;
+<span class="lineNum"> 462 </span> :
+<span class="lineNum"> 463 </span> : virtual IntSet operator()(const TagSet&amp; item) const
+<span class="lineNum"> 464 </span> : { return Tagcoll::Converter&lt;Tag, int&gt;::operator()(item); }
+<span class="lineNum"> 465 </span> : virtual TagSet operator()(const IntSet&amp; item) const
+<span class="lineNum"> 466 </span> : { return Tagcoll::Converter&lt;int, Tag&gt;::operator()(item); }
+<span class="lineNum"> 467 </span> :
+<span class="lineNum"> 468 </span> : static std::string componentName();
+<span class="lineNum"> 469 </span> : };
+<span class="lineNum"> 470 </span> :
+<span class="lineNum"> 471 </span> : /**
+<span class="lineNum"> 472 </span> : * Convert Vocabulary to strings
+<span class="lineNum"> 473 </span> : */
+<span class="lineNum"> 474 </span> : class TagStringConverter : public Implementation&lt;TagStringConverter&gt;,
+<span class="lineNum"> 475 </span> : public Tagcoll::Converter&lt;aptFront::cache::entity::Tag, std::string&gt;,
+<span class="lineNum"> 476 </span> : public Tagcoll::Converter&lt;std::string, aptFront::cache::entity::Tag&gt;
+<span class="lineNum"> 477 </span> : {
+<span class="lineNum"> 478 </span> : typedef aptFront::cache::entity::Tag Tag;
+<span class="lineNum"> 479 </span> : typedef Tagcoll::OpSet&lt;aptFront::cache::entity::Tag&gt; TagSet;
+<span class="lineNum"> 480 </span> : typedef Tagcoll::OpSet&lt;std::string&gt; StringSet;
+<span class="lineNum"> 481 </span> : public:
+<span class="lineNum"> 482 </span> : virtual std::string operator()(const Tag&amp; item) const;
+<span class="lineNum"> 483 </span> : virtual Tag operator()(const std::string&amp; item) const;
+<span class="lineNum"> 484 </span> :
+<span class="lineNum"> 485 </span> : virtual StringSet operator()(const TagSet&amp; item) const
+<span class="lineNum"> 486 </span> : { return Tagcoll::Converter&lt;Tag, std::string&gt;::operator()(item); }
+<span class="lineNum"> 487 </span> : virtual TagSet operator()(const StringSet&amp; item) const
+<span class="lineNum"> 488 </span> : { return Tagcoll::Converter&lt;std::string, Tag&gt;::operator()(item); }
+<span class="lineNum"> 489 </span> :
+<span class="lineNum"> 490 </span> : TagSet parseTagList(const std::string&amp; str) const;
+<span class="lineNum"> 491 </span> :
+<span class="lineNum"> 492 </span> : static std::string componentName();
+<span class="lineNum"> 493 </span> : };
+<span class="lineNum"> 494 </span> :
+<span class="lineNum"> 495 </span> : /**
+<span class="lineNum"> 496 </span> : * Convert Aggregator to ints
+<span class="lineNum"> 497 </span> : */
+<span class="lineNum"> 498 </span> : class PackageIntConverter : public Implementation&lt;PackageIntConverter&gt;,
+<span class="lineNum"> 499 </span> : public Tagcoll::Converter&lt;aptFront::cache::entity::Package, int&gt;,
+<span class="lineNum"> 500 </span> : public Tagcoll::Converter&lt;int, aptFront::cache::entity::Package&gt;
+<span class="lineNum"> 501 </span> : {
+<span class="lineNum"> 502 </span> : typedef aptFront::cache::entity::Package Package;
+<span class="lineNum"> 503 </span> : typedef Tagcoll::OpSet&lt;aptFront::cache::entity::Package&gt; PackageSet;
+<span class="lineNum"> 504 </span> : typedef Tagcoll::OpSet&lt;int&gt; IntSet;
+<span class="lineNum"> 505 </span> : public:
+<span class="lineNum"> 506 </span> : virtual int operator()(const Package&amp; item) const;
+<span class="lineNum"> 507 </span> : virtual Package operator()(const int&amp; item) const;
+<span class="lineNum"> 508 </span> :
+<span class="lineNum"> 509 </span> : virtual IntSet operator()(const PackageSet&amp; item) const
+<span class="lineNum"> 510 </span> : { return Tagcoll::Converter&lt;Package, int&gt;::operator()(item); }
+<span class="lineNum"> 511 </span> : virtual PackageSet operator()(const IntSet&amp; item) const
+<span class="lineNum"> 512 </span> : { return Tagcoll::Converter&lt;int, Package&gt;::operator()(item); }
+<span class="lineNum"> 513 </span> :
+<span class="lineNum"> 514 </span> : static std::string componentName();
+<span class="lineNum"> 515 </span> : };
+<span class="lineNum"> 516 </span> :
+<span class="lineNum"> 517 </span> : /**
+<span class="lineNum"> 518 </span> : * Convert Aggregator to strings
+<span class="lineNum"> 519 </span> : */
+<span class="lineNum"> 520 </span> : class PackageStringConverter : public Implementation&lt;PackageStringConverter&gt;,
+<span class="lineNum"> 521 </span> : public Tagcoll::Converter&lt;aptFront::cache::entity::Package, std::string&gt;,
+<span class="lineNum"> 522 </span> : public Tagcoll::Converter&lt;std::string, aptFront::cache::entity::Package&gt;
+<span class="lineNum"> 523 </span> : {
+<span class="lineNum"> 524 </span> : typedef aptFront::cache::entity::Package Package;
+<span class="lineNum"> 525 </span> : typedef Tagcoll::OpSet&lt;aptFront::cache::entity::Package&gt; PackageSet;
+<span class="lineNum"> 526 </span> : typedef Tagcoll::OpSet&lt;std::string&gt; StringSet;
+<span class="lineNum"> 527 </span> : public:
+<span class="lineNum"> 528 </span> : virtual std::string operator()(const Package&amp; item) const;
+<span class="lineNum"> 529 </span> : virtual Package operator()(const std::string&amp; item) const;
+<span class="lineNum"> 530 </span> :
+<span class="lineNum"> 531 </span> : virtual StringSet operator()(const PackageSet&amp; item) const
+<span class="lineNum"> 532 </span> : { return Tagcoll::Converter&lt;Package, std::string&gt;::operator()(item); }
+<span class="lineNum"> 533 </span> : virtual PackageSet operator()(const StringSet&amp; item) const
+<span class="lineNum"> 534 </span> : { return Tagcoll::Converter&lt;std::string, Package&gt;::operator()(item); }
+<span class="lineNum"> 535 </span> :
+<span class="lineNum"> 536 </span> : static std::string componentName();
+<span class="lineNum"> 537 </span> : };
+<span class="lineNum"> 538 </span> :
+<span class="lineNum"> 539 </span> : #endif
+<span class="lineNum"> 540 </span> :
+<span class="lineNum"> 541 </span> : }
+<span class="lineNum"> 542 </span> : }
+<span class="lineNum"> 543 </span> : }
+<span class="lineNum"> 544 </span> :
+<span class="lineNum"> 545 </span> : #endif
+<span class="lineNum"> 546 </span> :
+<span class="lineNum"> 547 </span> : #endif
+<span class="lineNum"> 548 </span> : // -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+<span class="lineNum"> 549 </span> :
+<span class="lineNum"> 550 </span> : #if 0
+<span class="lineNum"> 551 </span> : /**
+<span class="lineNum"> 552 </span> : * @file cache/debtags/serializer.h
+<span class="lineNum"> 553 </span> : * @author Enrico Zini (enrico) &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 554 </span> : */
+<span class="lineNum"> 555 </span> :
+<span class="lineNum"> 556 </span> : #ifndef EPT_CACHE_DEBTAGS_SERIALIZER_TCC
+<span class="lineNum"> 557 </span> : #define EPT_CACHE_DEBTAGS_SERIALIZER_TCC
+<span class="lineNum"> 558 </span> :
+<span class="lineNum"> 559 </span> : #include &lt;ept/cache/debtags/serializer.h&gt;
+<span class="lineNum"> 560 </span> : #if 0
+<span class="lineNum"> 561 </span> : #include &lt;ept/cache/debtags/pkgidx.h&gt;
+<span class="lineNum"> 562 </span> : #include &lt;ept/cache/debtags/vocabulary.h&gt;
+<span class="lineNum"> 563 </span> : #include &lt;ept/cache/package.h&gt;
+<span class="lineNum"> 564 </span> : //#include &lt;ept/cache/cache.h&gt;
+<span class="lineNum"> 565 </span> : #endif
+<span class="lineNum"> 566 </span> :
+<span class="lineNum"> 567 </span> : namespace ept {
+<span class="lineNum"> 568 </span> : namespace t {
+<span class="lineNum"> 569 </span> : namespace cache {
+<span class="lineNum"> 570 </span> : namespace debtags {
+<span class="lineNum"> 571 </span> :
+<span class="lineNum"> 572 </span> :
+<span class="lineNum"> 573 </span> :
+<span class="lineNum"> 574 </span> : #if 0
+<span class="lineNum"> 575 </span> : string FacetIntConverter::componentName() { return &quot;FacetIntConverter&quot;; }
+<span class="lineNum"> 576 </span> :
+<span class="lineNum"> 577 </span> : int FacetIntConverter::operator()(const aptFront::cache::entity::Facet&amp; item) const
+<span class="lineNum"> 578 </span> : {
+<span class="lineNum"> 579 </span> : if (!item.valid()) return -1;
+<span class="lineNum"> 580 </span> : return item.id();
+<span class="lineNum"> 581 </span> : }
+<span class="lineNum"> 582 </span> : aptFront::cache::entity::Facet FacetIntConverter::operator()(const int&amp; item) const
+<span class="lineNum"> 583 </span> : {
+<span class="lineNum"> 584 </span> : return cache().tags().facetByID(item);
+<span class="lineNum"> 585 </span> : }
+<span class="lineNum"> 586 </span> :
+<span class="lineNum"> 587 </span> : string FacetStringConverter::componentName() { return &quot;FacetStringConverter&quot;; }
+<span class="lineNum"> 588 </span> :
+<span class="lineNum"> 589 </span> : std::string FacetStringConverter::operator()(const aptFront::cache::entity::Facet&amp; item) const
+<span class="lineNum"> 590 </span> : {
+<span class="lineNum"> 591 </span> : if (!item.valid()) return string();
+<span class="lineNum"> 592 </span> : return item.name();
+<span class="lineNum"> 593 </span> : }
+<span class="lineNum"> 594 </span> : aptFront::cache::entity::Facet FacetStringConverter::operator()(const std::string&amp; item) const
+<span class="lineNum"> 595 </span> : {
+<span class="lineNum"> 596 </span> : return cache().tags().facetByName(item);
+<span class="lineNum"> 597 </span> : }
+<span class="lineNum"> 598 </span> :
+<span class="lineNum"> 599 </span> : string TagIntConverter::componentName() { return &quot;TagIntConverter&quot;; }
+<span class="lineNum"> 600 </span> :
+<span class="lineNum"> 601 </span> : int TagIntConverter::operator()(const aptFront::cache::entity::Tag&amp; item) const
+<span class="lineNum"> 602 </span> : {
+<span class="lineNum"> 603 </span> : if (!item.valid()) return -1;
+<span class="lineNum"> 604 </span> : return item.id();
+<span class="lineNum"> 605 </span> : }
+<span class="lineNum"> 606 </span> : aptFront::cache::entity::Tag TagIntConverter::operator()(const int&amp; item) const
+<span class="lineNum"> 607 </span> : {
+<span class="lineNum"> 608 </span> : return cache().tags().tagByID(item);
+<span class="lineNum"> 609 </span> : }
+<span class="lineNum"> 610 </span> :
+<span class="lineNum"> 611 </span> : string TagStringConverter::componentName() { return &quot;TagStringConverter&quot;; }
+<span class="lineNum"> 612 </span> :
+<span class="lineNum"> 613 </span> : std::string TagStringConverter::operator()(const aptFront::cache::entity::Tag&amp; item) const
+<span class="lineNum"> 614 </span> : {
+<span class="lineNum"> 615 </span> : if (!item.valid()) return string();
+<span class="lineNum"> 616 </span> : return item.fullname();
+<span class="lineNum"> 617 </span> : }
+<span class="lineNum"> 618 </span> : aptFront::cache::entity::Tag TagStringConverter::operator()(const std::string&amp; item) const
+<span class="lineNum"> 619 </span> : {
+<span class="lineNum"> 620 </span> : return cache().tags().tagByName(item);
+<span class="lineNum"> 621 </span> : }
+<span class="lineNum"> 622 </span> :
+<span class="lineNum"> 623 </span> : Tagcoll::OpSet&lt;entity::Tag&gt; TagStringConverter::parseTagList(const std::string&amp; str) const
+<span class="lineNum"> 624 </span> : {
+<span class="lineNum"> 625 </span> : if (str.empty())
+<span class="lineNum"> 626 </span> : return Tagcoll::OpSet&lt;entity::Tag&gt;();
+<span class="lineNum"> 627 </span> :
+<span class="lineNum"> 628 </span> : size_t i = str.find(&quot;, &quot;);
+<span class="lineNum"> 629 </span> : if (i == string::npos)
+<span class="lineNum"> 630 </span> : {
+<span class="lineNum"> 631 </span> : // Check if we need curly brace expansion
+<span class="lineNum"> 632 </span> : if (str[str.size() - 1] == '}')
+<span class="lineNum"> 633 </span> : {
+<span class="lineNum"> 634 </span> : using namespace std;
+<span class="lineNum"> 635 </span> : Tagcoll::OpSet&lt;entity::Tag&gt; res;
+<span class="lineNum"> 636 </span> : size_t begin = str.find('{');
+<span class="lineNum"> 637 </span> : if (begin == string::npos)
+<span class="lineNum"> 638 </span> : return res;
+<span class="lineNum"> 639 </span> : string prefix(str, 0, begin);
+<span class="lineNum"> 640 </span> : ++begin;
+<span class="lineNum"> 641 </span> : size_t end;
+<span class="lineNum"> 642 </span> : while ((end = str.find(',', begin)) != string::npos)
+<span class="lineNum"> 643 </span> : {
+<span class="lineNum"> 644 </span> : res += (*this)(prefix + str.substr(begin, end-begin));
+<span class="lineNum"> 645 </span> : begin = end + 1;
+<span class="lineNum"> 646 </span> : }
+<span class="lineNum"> 647 </span> : res += (*this)(prefix + str.substr(begin, str.size() - 1 - begin));
+<span class="lineNum"> 648 </span> : return res;
+<span class="lineNum"> 649 </span> : } else {
+<span class="lineNum"> 650 </span> : entity::Tag t = (*this)(str);
+<span class="lineNum"> 651 </span> : if (t.valid())
+<span class="lineNum"> 652 </span> : return Tagcoll::OpSet&lt;entity::Tag&gt;() + t;
+<span class="lineNum"> 653 </span> : else
+<span class="lineNum"> 654 </span> : return Tagcoll::OpSet&lt;entity::Tag&gt;();
+<span class="lineNum"> 655 </span> : }
+<span class="lineNum"> 656 </span> : } else {
+<span class="lineNum"> 657 </span> : return parseTagList(string(str, 0, i)) + parseTagList(string(str, i+2));
+<span class="lineNum"> 658 </span> : }
+<span class="lineNum"> 659 </span> : }
+<span class="lineNum"> 660 </span> :
+<span class="lineNum"> 661 </span> : string PackageIntConverter::componentName() { return &quot;PackageIntConverter&quot;; }
+<span class="lineNum"> 662 </span> :
+<span class="lineNum"> 663 </span> : int PackageIntConverter::operator()(const aptFront::cache::entity::Package&amp; item) const
+<span class="lineNum"> 664 </span> : {
+<span class="lineNum"> 665 </span> : if (!item.valid()) return -1;
+<span class="lineNum"> 666 </span> : return item.id();
+<span class="lineNum"> 667 </span> : }
+<span class="lineNum"> 668 </span> : aptFront::cache::entity::Package PackageIntConverter::operator()(const int&amp; item) const
+<span class="lineNum"> 669 </span> : {
+<span class="lineNum"> 670 </span> : PkgIdx&amp; p = cache().pkgidx();
+<span class="lineNum"> 671 </span> : return cache().packages().packageByName(string(p.name(item), p.size(item)));
+<span class="lineNum"> 672 </span> : }
+<span class="lineNum"> 673 </span> :
+<span class="lineNum"> 674 </span> : string PackageStringConverter::componentName() { return &quot;PackageStringConverter&quot;; }
+<span class="lineNum"> 675 </span> :
+<span class="lineNum"> 676 </span> : std::string PackageStringConverter::operator()(const aptFront::cache::entity::Package&amp; item) const
+<span class="lineNum"> 677 </span> : {
+<span class="lineNum"> 678 </span> : if (!item.valid()) return string();
+<span class="lineNum"> 679 </span> : return item.name();
+<span class="lineNum"> 680 </span> : }
+<span class="lineNum"> 681 </span> : aptFront::cache::entity::Package PackageStringConverter::operator()(const std::string&amp; item) const
+<span class="lineNum"> 682 </span> : {
+<span class="lineNum"> 683 </span> : return cache().packages().packageByName(item);
+<span class="lineNum"> 684 </span> : }
+<span class="lineNum"> 685 </span> : #endif
+<span class="lineNum"> 686 </span> :
+<span class="lineNum"> 687 </span> : }
+<span class="lineNum"> 688 </span> : }
+<span class="lineNum"> 689 </span> :
+<span class="lineNum"> 690 </span> : #endif
+<span class="lineNum"> 691 </span> :
+<span class="lineNum"> 692 </span> : #if 0
+<span class="lineNum"> 693 </span> : #ifdef COMPILE_TESTSUITE
+<span class="lineNum"> 694 </span> : //#include &lt;apt-front/cache/component/debtags/update.h&gt;
+<span class="lineNum"> 695 </span> : #include &lt;iostream&gt;
+<span class="lineNum"> 696 </span> : #include &quot;test-utils.h&quot;
+<span class="lineNum"> 697 </span> :
+<span class="lineNum"> 698 </span> : namespace tut {
+<span class="lineNum"> 699 </span> : using namespace aptFront::cache;
+<span class="lineNum"> 700 </span> : using namespace component;
+<span class="lineNum"> 701 </span> : using namespace debtags;
+<span class="lineNum"> 702 </span> : using namespace std;
+<span class="lineNum"> 703 </span> :
+<span class="lineNum"> 704 </span> : struct cache_component_debtags_serializer_shar {
+<span class="lineNum"> 705 </span> : cache_component_debtags_serializer_shar () {
+<span class="lineNum"> 706 </span> : aptInit ();
+<span class="lineNum"> 707 </span> : ok = true;
+<span class="lineNum"> 708 </span> : debtags::fetchNewData();
+<span class="lineNum"> 709 </span> : c.open( Cache::OpenDefault |
+<span class="lineNum"> 710 </span> : Cache::OpenReadOnly | Cache::OpenDebtags );
+<span class="lineNum"> 711 </span> : }
+<span class="lineNum"> 712 </span> : void check() {
+<span class="lineNum"> 713 </span> : if (ok) return;
+<span class="lineNum"> 714 </span> : ok = true;
+<span class="lineNum"> 715 </span> : throw warning( &quot;debtags init failed, cancelling&quot; );
+<span class="lineNum"> 716 </span> : }
+<span class="lineNum"> 717 </span> : ~cache_component_debtags_serializer_shar() {
+<span class="lineNum"> 718 </span> : check();
+<span class="lineNum"> 719 </span> : }
+<span class="lineNum"> 720 </span> : Cache c;
+<span class="lineNum"> 721 </span> : bool ok;
+<span class="lineNum"> 722 </span> : };
+<span class="lineNum"> 723 </span> :
+<span class="lineNum"> 724 </span> : TESTGRP( cache_component_debtags_serializer );
+<span class="lineNum"> 725 </span> :
+<span class="lineNum"> 726 </span> : using namespace Tagcoll;
+<span class="lineNum"> 727 </span> :
+<span class="lineNum"> 728 </span> : template&lt;&gt; template&lt;&gt;
+<span class="lineNum"> 729 </span> : void to::test&lt;1&gt; ()
+<span class="lineNum"> 730 </span> : {
+<span class="lineNum"> 731 </span> : check();
+<span class="lineNum"> 732 </span> :
+<span class="lineNum"> 733 </span> : PackageStringConverter&amp; psc = c.packagestringconverter();
+<span class="lineNum"> 734 </span> :
+<span class="lineNum"> 735 </span> : ensure(psc(&quot;Slartibartsfart&quot;) == entity::Package());
+<span class="lineNum"> 736 </span> :
+<span class="lineNum"> 737 </span> : /* Get the 'debtags' package */
+<span class="lineNum"> 738 </span> : entity::Package p = c.packages().packageByName( &quot;debtags&quot; );
+<span class="lineNum"> 739 </span> : ensure(p.valid());
+<span class="lineNum"> 740 </span> :
+<span class="lineNum"> 741 </span> : /* Get the 'debtags' package using the serializer */
+<span class="lineNum"> 742 </span> : entity::Package p1 = psc(&quot;debtags&quot;);
+<span class="lineNum"> 743 </span> : ensure(p1.valid());
+<span class="lineNum"> 744 </span> :
+<span class="lineNum"> 745 </span> : /* They must be the same */
+<span class="lineNum"> 746 </span> : ensure(p == p1);
+<span class="lineNum"> 747 </span> :
+<span class="lineNum"> 748 </span> : ensure_equals(psc(p), &quot;debtags&quot;);
+<span class="lineNum"> 749 </span> : ensure_equals(psc(p1), &quot;debtags&quot;);
+<span class="lineNum"> 750 </span> : ensure_equals(psc(p), psc(p1));
+<span class="lineNum"> 751 </span> :
+<span class="lineNum"> 752 </span> : /* If there is an invalid package to serialize, it should be discarded */
+<span class="lineNum"> 753 </span> : {
+<span class="lineNum"> 754 </span> : Tagcoll::OpSet&lt;entity::Package&gt; pkgs;
+<span class="lineNum"> 755 </span> : pkgs += c.packages().packageByName( &quot;debtags&quot; );
+<span class="lineNum"> 756 </span> : pkgs += c.packages().packageByName( &quot;tagcoll&quot; );
+<span class="lineNum"> 757 </span> : pkgs += entity::Package();
+<span class="lineNum"> 758 </span> :
+<span class="lineNum"> 759 </span> : ensure_equals (pkgs.size(), 3u);
+<span class="lineNum"> 760 </span> : ensure_equals (psc(pkgs).size(), 2u);
+<span class="lineNum"> 761 </span> : ensure (psc(pkgs).contains(&quot;debtags&quot;));
+<span class="lineNum"> 762 </span> : ensure (psc(pkgs).contains(&quot;tagcoll&quot;));
+<span class="lineNum"> 763 </span> : }
+<span class="lineNum"> 764 </span> :
+<span class="lineNum"> 765 </span> : /* If there is an invalid package to serialize, it should be discarded */
+<span class="lineNum"> 766 </span> : {
+<span class="lineNum"> 767 </span> : Tagcoll::OpSet&lt;std::string&gt; pkgs;
+<span class="lineNum"> 768 </span> : pkgs += &quot;debtags&quot;;
+<span class="lineNum"> 769 </span> : pkgs += &quot;tagcoll&quot;;
+<span class="lineNum"> 770 </span> : pkgs += &quot;Slartibartsfart&quot;;
+<span class="lineNum"> 771 </span> :
+<span class="lineNum"> 772 </span> : ensure_equals (pkgs.size(), 3u);
+<span class="lineNum"> 773 </span> : ensure_equals (psc(pkgs).size(), 2u);
+<span class="lineNum"> 774 </span> : ensure (psc(pkgs).contains(psc(&quot;debtags&quot;)));
+<span class="lineNum"> 775 </span> : ensure (psc(pkgs).contains(psc(&quot;tagcoll&quot;)));
+<span class="lineNum"> 776 </span> : ensure (!psc(pkgs).contains(entity::Package()));
+<span class="lineNum"> 777 </span> : }
+<span class="lineNum"> 778 </span> : }
+<span class="lineNum"> 779 </span> :
+<span class="lineNum"> 780 </span> : ostream&amp; operator&lt;&lt;(ostream&amp; out, const entity::Package&amp; pkg)
+<span class="lineNum"> 781 </span> : {
+<span class="lineNum"> 782 </span> : if (pkg.valid())
+<span class="lineNum"> 783 </span> : return out &lt;&lt; pkg.name();
+<span class="lineNum"> 784 </span> : else
+<span class="lineNum"> 785 </span> : return out &lt;&lt; &quot;(invalid package)&quot;;
+<span class="lineNum"> 786 </span> : }
+<span class="lineNum"> 787 </span> :
+<span class="lineNum"> 788 </span> : // Check that package conversions work two-way
+<span class="lineNum"> 789 </span> : template&lt;&gt; template&lt;&gt;
+<span class="lineNum"> 790 </span> : void to::test&lt;2&gt; ()
+<span class="lineNum"> 791 </span> : {
+<span class="lineNum"> 792 </span> : PackageStringConverter&amp; psc = c.packagestringconverter();
+<span class="lineNum"> 793 </span> : for (component::Aggregator::iterator i = c.packages().packagesBegin();
+<span class="lineNum"> 794 </span> : i != c.packages().packagesEnd(); ++i)
+<span class="lineNum"> 795 </span> : {
+<span class="lineNum"> 796 </span> : try {
+<span class="lineNum"> 797 </span> : ensure_equals(*i, psc(psc(*i)));
+<span class="lineNum"> 798 </span> : } catch (...) {
+<span class="lineNum"> 799 </span> : cerr &lt;&lt; &quot;Note: exception thrown during processing[string] of package &quot; &lt;&lt; i-&gt;name(string(&quot;(invalid package)&quot;)) &lt;&lt; endl;
+<span class="lineNum"> 800 </span> : throw;
+<span class="lineNum"> 801 </span> : }
+<span class="lineNum"> 802 </span> : }
+<span class="lineNum"> 803 </span> :
+<span class="lineNum"> 804 </span> : PackageIntConverter&amp; pic = c.packageintconverter();
+<span class="lineNum"> 805 </span> : for (component::Aggregator::iterator i = c.packages().packagesBegin();
+<span class="lineNum"> 806 </span> : i != c.packages().packagesEnd(); ++i)
+<span class="lineNum"> 807 </span> : {
+<span class="lineNum"> 808 </span> : try {
+<span class="lineNum"> 809 </span> : ensure_equals(*i, pic(pic(*i)));
+<span class="lineNum"> 810 </span> : } catch (...) {
+<span class="lineNum"> 811 </span> : cerr &lt;&lt; &quot;Note: exception thrown during processing[int] of package &quot; &lt;&lt; i-&gt;name(string(&quot;(invalid package)&quot;)) &lt;&lt; endl;
+<span class="lineNum"> 812 </span> : throw;
+<span class="lineNum"> 813 </span> : }
+<span class="lineNum"> 814 </span> : }
+<span class="lineNum"> 815 </span> : }
+<span class="lineNum"> 816 </span> :
+<span class="lineNum"> 817 </span> : // Check that facet conversions work two-way
+<span class="lineNum"> 818 </span> : template&lt;&gt; template&lt;&gt;
+<span class="lineNum"> 819 </span> : void to::test&lt;3&gt; ()
+<span class="lineNum"> 820 </span> : {
+<span class="lineNum"> 821 </span> : typedef Tagcoll::OpSet&lt;entity::Facet&gt; FacetSet;
+<span class="lineNum"> 822 </span> :
+<span class="lineNum"> 823 </span> : FacetStringConverter&amp; fsc = c.facetstringconverter();
+<span class="lineNum"> 824 </span> : FacetSet allFacets(c.tags().facets());
+<span class="lineNum"> 825 </span> : for (FacetSet::const_iterator i = allFacets.begin(); i != allFacets.end(); i++)
+<span class="lineNum"> 826 </span> : {
+<span class="lineNum"> 827 </span> : try {
+<span class="lineNum"> 828 </span> : ensure_equals(*i, fsc(fsc(*i)));
+<span class="lineNum"> 829 </span> : } catch (...) {
+<span class="lineNum"> 830 </span> : cerr &lt;&lt; &quot;Note: exception thrown during processing[string] of facet &quot; &lt;&lt; i-&gt;name() &lt;&lt; endl;
+<span class="lineNum"> 831 </span> : throw;
+<span class="lineNum"> 832 </span> : }
+<span class="lineNum"> 833 </span> : }
+<span class="lineNum"> 834 </span> :
+<span class="lineNum"> 835 </span> : FacetIntConverter&amp; fic = c.facetintconverter();
+<span class="lineNum"> 836 </span> : for (FacetSet::const_iterator i = allFacets.begin(); i != allFacets.end(); i++)
+<span class="lineNum"> 837 </span> : {
+<span class="lineNum"> 838 </span> : try {
+<span class="lineNum"> 839 </span> : ensure_equals(*i, fic(fic(*i)));
+<span class="lineNum"> 840 </span> : } catch (...) {
+<span class="lineNum"> 841 </span> : cerr &lt;&lt; &quot;Note: exception thrown during processing[int] of facet &quot; &lt;&lt; i-&gt;name() &lt;&lt; endl;
+<span class="lineNum"> 842 </span> : throw;
+<span class="lineNum"> 843 </span> : }
+<span class="lineNum"> 844 </span> : }
+<span class="lineNum"> 845 </span> : }
+<span class="lineNum"> 846 </span> :
+<span class="lineNum"> 847 </span> : // Check that tag conversions work two-way
+<span class="lineNum"> 848 </span> : template&lt;&gt; template&lt;&gt;
+<span class="lineNum"> 849 </span> : void to::test&lt;4&gt; ()
+<span class="lineNum"> 850 </span> : {
+<span class="lineNum"> 851 </span> : typedef Tagcoll::OpSet&lt;entity::Tag&gt; TagSet;
+<span class="lineNum"> 852 </span> :
+<span class="lineNum"> 853 </span> : TagStringConverter&amp; tsc = c.tagstringconverter();
+<span class="lineNum"> 854 </span> : TagSet allTags(c.tags().tags());
+<span class="lineNum"> 855 </span> : for (TagSet::const_iterator i = allTags.begin(); i != allTags.end(); i++)
+<span class="lineNum"> 856 </span> : {
+<span class="lineNum"> 857 </span> : try {
+<span class="lineNum"> 858 </span> : ensure_equals(*i, tsc(tsc(*i)));
+<span class="lineNum"> 859 </span> : } catch (...) {
+<span class="lineNum"> 860 </span> : cerr &lt;&lt; &quot;Note: exception thrown during processing[string] of tag &quot; &lt;&lt; i-&gt;fullname() &lt;&lt; endl;
+<span class="lineNum"> 861 </span> : throw;
+<span class="lineNum"> 862 </span> : }
+<span class="lineNum"> 863 </span> : }
+<span class="lineNum"> 864 </span> :
+<span class="lineNum"> 865 </span> : TagIntConverter&amp; tic = c.tagintconverter();
+<span class="lineNum"> 866 </span> : for (TagSet::const_iterator i = allTags.begin(); i != allTags.end(); i++)
+<span class="lineNum"> 867 </span> : {
+<span class="lineNum"> 868 </span> : try {
+<span class="lineNum"> 869 </span> : ensure_equals(*i, tic(tic(*i)));
+<span class="lineNum"> 870 </span> : } catch (...) {
+<span class="lineNum"> 871 </span> : cerr &lt;&lt; &quot;Note: exception thrown during processing[int] of tag &quot; &lt;&lt; i-&gt;fullname() &lt;&lt; endl;
+<span class="lineNum"> 872 </span> : throw;
+<span class="lineNum"> 873 </span> : }
+<span class="lineNum"> 874 </span> : }
+<span class="lineNum"> 875 </span> : }
+<span class="lineNum"> 876 </span> :
+<span class="lineNum"> 877 </span> : // Check TagStringConverter::parseTagList
+<span class="lineNum"> 878 </span> : template&lt;&gt; template&lt;&gt;
+<span class="lineNum"> 879 </span> : void to::test&lt;5&gt; ()
+<span class="lineNum"> 880 </span> : {
+<span class="lineNum"> 881 </span> : TagStringConverter&amp; tsc = c.tagstringconverter();
+<span class="lineNum"> 882 </span> : OpSet&lt;entity::Tag&gt; ts;
+<span class="lineNum"> 883 </span> :
+<span class="lineNum"> 884 </span> : // First ensure that we're using existing tags as samples
+<span class="lineNum"> 885 </span> : ensure(tsc(&quot;accessibility::TODO&quot;) != entity::Tag());
+<span class="lineNum"> 886 </span> : ensure(tsc(&quot;role::sw:devel-lib&quot;) != entity::Tag());
+<span class="lineNum"> 887 </span> : ensure(tsc(&quot;x11::xserver&quot;) != entity::Tag());
+<span class="lineNum"> 888 </span> : ensure(tsc(&quot;antani&quot;) == entity::Tag());
+<span class="lineNum"> 889 </span> : ensure(tsc(&quot;blinda&quot;) == entity::Tag());
+<span class="lineNum"> 890 </span> : ensure(tsc(&quot;supercazzola&quot;) == entity::Tag());
+<span class="lineNum"> 891 </span> :
+<span class="lineNum"> 892 </span> : ts = tsc.parseTagList(&quot;role::sw:devel-lib&quot;);
+<span class="lineNum"> 893 </span> : ensure_equals(ts.size(), 1u);
+<span class="lineNum"> 894 </span> : ensure(ts.contains(tsc(&quot;role::sw:devel-lib&quot;)));
+<span class="lineNum"> 895 </span> :
+<span class="lineNum"> 896 </span> : ts = tsc.parseTagList(&quot;accessibility::TODO, x11::xserver, role::sw:devel-lib&quot;);
+<span class="lineNum"> 897 </span> : ensure_equals(ts.size(), 3u);
+<span class="lineNum"> 898 </span> : ensure(ts.contains(tsc(&quot;accessibility::TODO&quot;)));
+<span class="lineNum"> 899 </span> : ensure(ts.contains(tsc(&quot;role::sw:devel-lib&quot;)));
+<span class="lineNum"> 900 </span> : ensure(ts.contains(tsc(&quot;x11::xserver&quot;)));
+<span class="lineNum"> 901 </span> :
+<span class="lineNum"> 902 </span> : ts = tsc.parseTagList(&quot;antani&quot;);
+<span class="lineNum"> 903 </span> : ensure_equals(ts.size(), 0u);
+<span class="lineNum"> 904 </span> :
+<span class="lineNum"> 905 </span> : ts = tsc.parseTagList(&quot;antani, blinda, supercazzola&quot;);
+<span class="lineNum"> 906 </span> : ensure_equals(ts.size(), 0u);
+<span class="lineNum"> 907 </span> :
+<span class="lineNum"> 908 </span> : ts = tsc.parseTagList(&quot;antani, x11::xserver, blinda&quot;);
+<span class="lineNum"> 909 </span> : ensure_equals(ts.size(), 1u);
+<span class="lineNum"> 910 </span> : ensure(ts.contains(tsc(&quot;x11::xserver&quot;)));
+<span class="lineNum"> 911 </span> : }
+<span class="lineNum"> 912 </span> :
+<span class="lineNum"> 913 </span> : // Check TagStringConverter::parseTagList's handling of curly brace expansion
+<span class="lineNum"> 914 </span> : template&lt;&gt; template&lt;&gt;
+<span class="lineNum"> 915 </span> : void to::test&lt;6&gt; ()
+<span class="lineNum"> 916 </span> : {
+<span class="lineNum"> 917 </span> : TagStringConverter&amp; tsc = c.tagstringconverter();
+<span class="lineNum"> 918 </span> : OpSet&lt;entity::Tag&gt; ts;
+<span class="lineNum"> 919 </span> :
+<span class="lineNum"> 920 </span> : // First ensure that we're using existing tags as samples
+<span class="lineNum"> 921 </span> : ensure(tsc(&quot;role::TODO&quot;) != entity::Tag());
+<span class="lineNum"> 922 </span> : ensure(tsc(&quot;role::sw:server&quot;) != entity::Tag());
+<span class="lineNum"> 923 </span> : ensure(tsc(&quot;role::aux:dummy&quot;) != entity::Tag());
+<span class="lineNum"> 924 </span> : ensure(tsc(&quot;role::sw:amusement&quot;) != entity::Tag());
+<span class="lineNum"> 925 </span> : ensure(tsc(&quot;role::sw:server{}&quot;) == entity::Tag());
+<span class="lineNum"> 926 </span> : ensure(tsc(&quot;role::{}&quot;) == entity::Tag());
+<span class="lineNum"> 927 </span> : ensure(tsc(&quot;role::{&quot;) == entity::Tag());
+<span class="lineNum"> 928 </span> : ensure(tsc(&quot;role::}&quot;) == entity::Tag());
+<span class="lineNum"> 929 </span> :
+<span class="lineNum"> 930 </span> : ts = tsc.parseTagList(&quot;role::{TODO,sw:server,aux:dummy,sw:amusement}&quot;);
+<span class="lineNum"> 931 </span> : ensure_equals(ts.size(), 4u);
+<span class="lineNum"> 932 </span> : ensure(ts.contains(tsc(&quot;role::TODO&quot;)));
+<span class="lineNum"> 933 </span> : ensure(ts.contains(tsc(&quot;role::sw:server&quot;)));
+<span class="lineNum"> 934 </span> : ensure(ts.contains(tsc(&quot;role::aux:dummy&quot;)));
+<span class="lineNum"> 935 </span> : ensure(ts.contains(tsc(&quot;role::sw:amusement&quot;)));
+<span class="lineNum"> 936 </span> :
+<span class="lineNum"> 937 </span> : ts = tsc.parseTagList(&quot;role::{TODO,aux:dummy}, role::sw:{server,amusement}&quot;);
+<span class="lineNum"> 938 </span> : ensure_equals(ts.size(), 4u);
+<span class="lineNum"> 939 </span> : ensure(ts.contains(tsc(&quot;role::TODO&quot;)));
+<span class="lineNum"> 940 </span> : ensure(ts.contains(tsc(&quot;role::sw:server&quot;)));
+<span class="lineNum"> 941 </span> : ensure(ts.contains(tsc(&quot;role::aux:dummy&quot;)));
+<span class="lineNum"> 942 </span> : ensure(ts.contains(tsc(&quot;role::sw:amusement&quot;)));
+<span class="lineNum"> 943 </span> : }
+<span class="lineNum"> 944 </span> :
+<span class="lineNum"> 945 </span> : }
+<span class="lineNum"> 946 </span> : #endif
+<span class="lineNum"> 947 </span> : #endif
+<span class="lineNum"> 948 </span> : #endif
+<span class="lineNum"> 949 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/maint/serializer.test.h.gcov.html b/rep/ept/debtags/maint/serializer.test.h.gcov.html
new file mode 100644
index 0000000..4980e32
--- /dev/null
+++ b/rep/ept/debtags/maint/serializer.test.h.gcov.html
@@ -0,0 +1,200 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/maint/serializer.test.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/debtags/maint</a> - serializer.test.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">48</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">48</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+<span class="lineNum"> 2 </span> : /**
+<span class="lineNum"> 3 </span> : * @file
+<span class="lineNum"> 4 </span> : * @author Enrico Zini (enrico) &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 5 </span> : */
+<span class="lineNum"> 6 </span> :
+<span class="lineNum"> 7 </span> : /*
+<span class="lineNum"> 8 </span> : * Tests for Debtags serialization filters
+<span class="lineNum"> 9 </span> : *
+<span class="lineNum"> 10 </span> : * Copyright (C) 2003-2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 11 </span> : *
+<span class="lineNum"> 12 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 13 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 14 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 15 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 16 </span> : *
+<span class="lineNum"> 17 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 18 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 19 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 20 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 21 </span> : *
+<span class="lineNum"> 22 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 23 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 24 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 25 </span> : */
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #include &lt;ept/debtags/maint/serializer.h&gt;
+<span class="lineNum"> 28 </span> : #include &lt;ept/debtags/maint/pkgid.h&gt;
+<span class="lineNum"> 29 </span> : #include &lt;ept/debtags/maint/path.h&gt;
+<span class="lineNum"> 30 </span> : #include &lt;ept/debtags/vocabulary.h&gt;
+<span class="lineNum"> 31 </span> : #include &lt;ept/debtags/debtags.h&gt;
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : #include &lt;tagcoll/coll/simple.h&gt;
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : #include &lt;wibble/singleton.h&gt;
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : #include &lt;ept/test.h&gt;
+<span class="lineNum"> 38 </span> :
+<span class="lineNum"> 39 </span> : using namespace std;
+<span class="lineNum"> 40 </span> : using namespace tagcoll;
+<span class="lineNum"> 41 </span> : using namespace ept;
+<span class="lineNum"> 42 </span> : using namespace ept::debtags;
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span> : struct TestSerializer : DebtagsTestEnvironment
+<span class="lineNum"> 45 </span><span class="lineCov"> 2 : {</span>
+<span class="lineNum"> 46 </span> : Debtags debtags;
+<span class="lineNum"> 47 </span> : Vocabulary&amp; voc;
+<span class="lineNum"> 48 </span> : PkgId&amp; pkgid;
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span><span class="lineCov"> 2 : TestSerializer()</span>
+<span class="lineNum"> 51 </span><span class="lineCov"> 2 : : voc(debtags.vocabulary()), pkgid(debtags.pkgid()) {}</span>
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span> : /* Test going from a stream of tag data &lt;string, string&gt; to a stream of tag
+<span class="lineNum"> 54 </span> : * data &lt;int, int&gt; to a stream of tag data &lt;Package, Tag&gt; and finally back to a
+<span class="lineNum"> 55 </span> : * stream of tag data &lt;string, string&gt;
+<span class="lineNum"> 56 </span> : */
+<span class="lineNum"> 57 </span><span class="lineCov"> 1 : Test _1()</span>
+<span class="lineNum"> 58 </span> : {
+<span class="lineNum"> 59 </span> : // Source data &lt;string, string&gt;
+<span class="lineNum"> 60 </span><span class="lineCov"> 1 : coll::Simple&lt;string, string&gt; source;</span>
+<span class="lineNum"> 61 </span><span class="lineCov"> 1 : source.insert(wibble::singleton(string(&quot;debtags&quot;)), wibble::singleton(string(&quot;use::editing&quot;)));</span>
+<span class="lineNum"> 62 </span><span class="lineCov"> 2 : source.insert(wibble::singleton(string(&quot;debtags&quot;)), wibble::singleton(string(&quot;role::program&quot;)));</span>
+<span class="lineNum"> 63 </span> :
+<span class="lineNum"> 64 </span> : // &lt;string, string&gt; -&gt; &lt;int, int&gt;
+<span class="lineNum"> 65 </span><span class="lineCov"> 1 : coll::Simple&lt;int, int&gt; dest;</span>
+<span class="lineNum"> 66 </span><span class="lineCov"> 1 : source.output(stringToInt(pkgid, voc, inserter(dest)));</span>
+<span class="lineNum"> 67 </span> :
+<span class="lineNum"> 68 </span><span class="lineCov"> 1 : assert_eq(dest.itemCount(), 1u);</span>
+<span class="lineNum"> 69 </span><span class="lineCov"> 2 : assert_eq(dest.tagCount(), 2u);</span>
+<span class="lineNum"> 70 </span> :
+<span class="lineNum"> 71 </span> : // &lt;int, int&gt; -&gt; &lt;Package, Tag&gt;
+<span class="lineNum"> 72 </span><span class="lineCov"> 1 : coll::Simple&lt;string, Tag&gt; dest1;</span>
+<span class="lineNum"> 73 </span><span class="lineCov"> 1 : dest.output(intToPkg(pkgid, voc, inserter(dest1)));</span>
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span><span class="lineCov"> 1 : assert_eq(dest1.itemCount(), 1u);</span>
+<span class="lineNum"> 76 </span><span class="lineCov"> 2 : assert_eq(dest1.tagCount(), 2u);</span>
+<span class="lineNum"> 77 </span> :
+<span class="lineNum"> 78 </span><span class="lineCov"> 2 : std::set&lt;Tag&gt; tags = dest1.getTagsOfItem(&quot;debtags&quot;);</span>
+<span class="lineNum"> 79 </span><span class="lineCov"> 2 : assert_eq(tags.size(), 2u);</span>
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span><span class="lineCov"> 2 : Tag useEditing = voc.tagByName(&quot;use::editing&quot;);</span>
+<span class="lineNum"> 82 </span><span class="lineCov"> 2 : Tag roleProgram = voc.tagByName(&quot;role::program&quot;);</span>
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span><span class="lineCov"> 2 : assert(tags.find(useEditing) != tags.end());</span>
+<span class="lineNum"> 85 </span><span class="lineCov"> 2 : assert(tags.find(roleProgram) != tags.end());</span>
+<span class="lineNum"> 86 </span> :
+<span class="lineNum"> 87 </span> : // &lt;Package, Tag&gt; -&gt; &lt;string, string&gt;
+<span class="lineNum"> 88 </span><span class="lineCov"> 1 : coll::Simple&lt;string, string&gt; dest2;</span>
+<span class="lineNum"> 89 </span><span class="lineCov"> 1 : dest1.output(pkgToString(inserter(dest2)));</span>
+<span class="lineNum"> 90 </span> :
+<span class="lineNum"> 91 </span><span class="lineCov"> 1 : assert_eq(dest2.itemCount(), 1u);</span>
+<span class="lineNum"> 92 </span><span class="lineCov"> 2 : assert_eq(dest2.tagCount(), 2u);</span>
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span><span class="lineCov"> 2 : std::set&lt;std::string&gt; tags1 = dest2.getTagsOfItem(&quot;debtags&quot;);</span>
+<span class="lineNum"> 95 </span><span class="lineCov"> 2 : assert_eq(tags1.size(), 2u);</span>
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span><span class="lineCov"> 2 : assert(tags1.find(&quot;use::editing&quot;) != tags1.end());</span>
+<span class="lineNum"> 98 </span><span class="lineCov"> 2 : assert(tags1.find(&quot;role::program&quot;) != tags1.end());</span>
+<span class="lineNum"> 99 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 100 </span> :
+<span class="lineNum"> 101 </span> : /* Test going from patch with strings to patch with ints and vice versa */
+<span class="lineNum"> 102 </span><span class="lineCov"> 1 : Test _2()</span>
+<span class="lineNum"> 103 </span> : {
+<span class="lineNum"> 104 </span><span class="lineCov"> 1 : PatchList&lt;string, string&gt; change;</span>
+<span class="lineNum"> 105 </span> : change.addPatch(Patch&lt;string, string&gt;(&quot;debtags&quot;,
+<span class="lineNum"> 106 </span> : wibble::singleton(string(&quot;use::gameplaying&quot;)),
+<span class="lineNum"> 107 </span><span class="lineCov"> 1 : wibble::singleton(string(&quot;use::editing&quot;))));</span>
+<span class="lineNum"> 108 </span> :
+<span class="lineNum"> 109 </span> : // Deserialise to ints
+<span class="lineNum"> 110 </span><span class="lineCov"> 1 : PatchList&lt;int, int&gt; intChange;</span>
+<span class="lineNum"> 111 </span><span class="lineCov"> 1 : change.output(patchStringToInt(pkgid, voc, tagcoll::inserter(intChange)));</span>
+<span class="lineNum"> 112 </span><span class="lineCov"> 1 : assert_eq(intChange.size(), 1u);</span>
+<span class="lineNum"> 113 </span><span class="lineCov"> 2 : assert_eq(intChange.begin()-&gt;second.added.size(), 1u);</span>
+<span class="lineNum"> 114 </span><span class="lineCov"> 2 : assert_eq(intChange.begin()-&gt;second.removed.size(), 1u);</span>
+<span class="lineNum"> 115 </span> :
+<span class="lineNum"> 116 </span> : // Serialise back to strings
+<span class="lineNum"> 117 </span><span class="lineCov"> 1 : PatchList&lt;string, string&gt; change1;</span>
+<span class="lineNum"> 118 </span><span class="lineCov"> 1 : intChange.output(patchIntToString(pkgid, voc, tagcoll::inserter(change1)));</span>
+<span class="lineNum"> 119 </span><span class="lineCov"> 1 : assert_eq(change1.size(), 1u);</span>
+<span class="lineNum"> 120 </span><span class="lineCov"> 2 : assert_eq(change1.begin()-&gt;first, string(&quot;debtags&quot;));</span>
+<span class="lineNum"> 121 </span><span class="lineCov"> 2 : assert_eq(change1.begin()-&gt;second.item, string(&quot;debtags&quot;));</span>
+<span class="lineNum"> 122 </span><span class="lineCov"> 2 : assert_eq(change1.begin()-&gt;second.added.size(), 1u);</span>
+<span class="lineNum"> 123 </span><span class="lineCov"> 2 : assert_eq(*change1.begin()-&gt;second.added.begin(), string(&quot;use::gameplaying&quot;));</span>
+<span class="lineNum"> 124 </span><span class="lineCov"> 2 : assert_eq(change1.begin()-&gt;second.removed.size(), 1u);</span>
+<span class="lineNum"> 125 </span><span class="lineCov"> 2 : assert_eq(*change1.begin()-&gt;second.removed.begin(), string(&quot;use::editing&quot;));</span>
+<span class="lineNum"> 126 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 127 </span> :
+<span class="lineNum"> 128 </span> : };
+<span class="lineNum"> 129 </span> :
+<span class="lineNum"> 130 </span> : #include &lt;tagcoll/coll/simple.tcc&gt;
+<span class="lineNum"> 131 </span> : #include &lt;tagcoll/patch.tcc&gt;
+<span class="lineNum"> 132 </span> :
+<span class="lineNum"> 133 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/maint/sourcedir.cc.gcov.html b/rep/ept/debtags/maint/sourcedir.cc.gcov.html
new file mode 100644
index 0000000..8f0db9e
--- /dev/null
+++ b/rep/ept/debtags/maint/sourcedir.cc.gcov.html
@@ -0,0 +1,190 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/maint/sourcedir.cc</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/debtags/maint</a> - sourcedir.cc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">57</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">75.4 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">43</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &lt;ept/debtags/maint/sourcedir.h&gt;
+<span class="lineNum"> 2 </span> : #include &lt;ept/debtags/maint/vocabularymerger.h&gt;
+<span class="lineNum"> 3 </span> : #include &lt;ept/debtags/maint/path.h&gt;
+<span class="lineNum"> 4 </span> :
+<span class="lineNum"> 5 </span> : #include &lt;wibble/string.h&gt;
+<span class="lineNum"> 6 </span> :
+<span class="lineNum"> 7 </span> : #include &lt;tagcoll/input/zlib.h&gt;
+<span class="lineNum"> 8 </span> : #include &lt;tagcoll/input/stdio.h&gt;
+<span class="lineNum"> 9 </span> :
+<span class="lineNum"> 10 </span> : using namespace wibble;
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : namespace ept {
+<span class="lineNum"> 13 </span> : namespace debtags {
+<span class="lineNum"> 14 </span> :
+<span class="lineNum"> 15 </span><span class="lineCov"> 802 : SourceDir::FileType SourceDir::fileType(const std::string&amp; name)</span>
+<span class="lineNum"> 16 </span> : {
+<span class="lineNum"> 17 </span><span class="lineCov"> 802 : if (name[0] == '.') return SKIP;</span>
+<span class="lineNum"> 18 </span> :
+<span class="lineNum"> 19 </span> : // Filenames need to be at least 5 characters long (one char plus
+<span class="lineNum"> 20 </span> : // extension)
+<span class="lineNum"> 21 </span><span class="lineCov"> 622 : if (name.size() &lt;= 4) return SKIP;</span>
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : // Only look at .voc and .tag files
+<span class="lineNum"> 24 </span><span class="lineCov"> 542 : std::string ext(name, name.size() - 4);</span>
+<span class="lineNum"> 25 </span><span class="lineCov"> 542 : if (ext == &quot;.voc&quot;)</span>
+<span class="lineNum"> 26 </span><span class="lineCov"> 80 : return VOC;</span>
+<span class="lineNum"> 27 </span><span class="lineCov"> 462 : if (ext == &quot;.tag&quot;)</span>
+<span class="lineNum"> 28 </span><span class="lineCov"> 80 : return TAG;</span>
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : // Now look for compressed files, which must have the 4 character extension
+<span class="lineNum"> 31 </span> : // plus the 3 chars of '.gz'
+<span class="lineNum"> 32 </span><span class="lineCov"> 382 : if (name.size() &lt;= 7) return SKIP;</span>
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span><span class="lineCov"> 302 : ext = name.substr(name.size() - 7);</span>
+<span class="lineNum"> 35 </span><span class="lineCov"> 302 : if (ext == &quot;.voc.gz&quot;)</span>
+<span class="lineNum"> 36 </span><span class="lineNoCov"> 0 : return VOCGZ;</span>
+<span class="lineNum"> 37 </span><span class="lineCov"> 302 : if (ext == &quot;.tag.gz&quot;)</span>
+<span class="lineNum"> 38 </span><span class="lineNoCov"> 0 : return TAGGZ;</span>
+<span class="lineNum"> 39 </span> :
+<span class="lineNum"> 40 </span><span class="lineCov"> 302 : return SKIP;</span>
+<span class="lineNum"> 41 </span> : }
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span><span class="lineCov"> 20 : time_t SourceDir::timestamp()</span>
+<span class="lineNum"> 44 </span> : {
+<span class="lineNum"> 45 </span><span class="lineCov"> 20 : if (!valid()) return 0;</span>
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span><span class="lineCov"> 20 : time_t max = 0;</span>
+<span class="lineNum"> 48 </span><span class="lineCov"> 200 : for (const_iterator d = begin(); d != end(); ++d)</span>
+<span class="lineNum"> 49 </span> : {
+<span class="lineNum"> 50 </span><span class="lineCov"> 180 : FileType type = fileType(d-&gt;d_name);</span>
+<span class="lineNum"> 51 </span><span class="lineCov"> 180 : if (type == SKIP) continue;</span>
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span><span class="lineCov"> 36 : time_t ts = Path::timestamp(str::joinpath(path(), d-&gt;d_name));</span>
+<span class="lineNum"> 54 </span><span class="lineCov"> 54 : if (ts &gt; max) max = ts;</span>
+<span class="lineNum"> 55 </span><span class="lineCov"> 20 : }</span>
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span><span class="lineCov"> 20 : return max;</span>
+<span class="lineNum"> 58 </span> : }
+<span class="lineNum"> 59 </span> :
+<span class="lineNum"> 60 </span><span class="lineCov"> 62 : time_t SourceDir::vocTimestamp()</span>
+<span class="lineNum"> 61 </span> : {
+<span class="lineNum"> 62 </span><span class="lineCov"> 62 : if (!valid()) return 0;</span>
+<span class="lineNum"> 63 </span> :
+<span class="lineNum"> 64 </span><span class="lineCov"> 60 : time_t max = 0;</span>
+<span class="lineNum"> 65 </span><span class="lineCov"> 632 : for (const_iterator d = begin(); d != end(); ++d)</span>
+<span class="lineNum"> 66 </span> : {
+<span class="lineNum"> 67 </span><span class="lineCov"> 572 : FileType type = fileType(d-&gt;d_name);</span>
+<span class="lineNum"> 68 </span><span class="lineCov"> 1086 : if (type != VOC and type != VOCGZ) continue;</span>
+<span class="lineNum"> 69 </span> :
+<span class="lineNum"> 70 </span><span class="lineCov"> 58 : time_t ts = Path::timestamp(str::joinpath(path(), d-&gt;d_name));</span>
+<span class="lineNum"> 71 </span><span class="lineCov"> 116 : if (ts &gt; max) max = ts;</span>
+<span class="lineNum"> 72 </span><span class="lineCov"> 60 : }</span>
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span><span class="lineCov"> 60 : return max;</span>
+<span class="lineNum"> 75 </span> : }
+<span class="lineNum"> 76 </span> :
+<span class="lineNum"> 77 </span><span class="lineNoCov"> 0 : time_t SourceDir::tagTimestamp()</span>
+<span class="lineNum"> 78 </span> : {
+<span class="lineNum"> 79 </span><span class="lineNoCov"> 0 : if (!valid()) return 0;</span>
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span><span class="lineNoCov"> 0 : time_t max = 0;</span>
+<span class="lineNum"> 82 </span><span class="lineNoCov"> 0 : for (const_iterator d = begin(); d != end(); ++d)</span>
+<span class="lineNum"> 83 </span> : {
+<span class="lineNum"> 84 </span><span class="lineNoCov"> 0 : FileType type = fileType(d-&gt;d_name);</span>
+<span class="lineNum"> 85 </span><span class="lineNoCov"> 0 : if (type != TAG and type != TAGGZ) continue;</span>
+<span class="lineNum"> 86 </span> :
+<span class="lineNum"> 87 </span><span class="lineNoCov"> 0 : time_t ts = Path::timestamp(str::joinpath(path(), d-&gt;d_name));</span>
+<span class="lineNum"> 88 </span><span class="lineNoCov"> 0 : if (ts &gt; max) max = ts;</span>
+<span class="lineNum"> 89 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 90 </span> :
+<span class="lineNum"> 91 </span><span class="lineNoCov"> 0 : return max;</span>
+<span class="lineNum"> 92 </span> : }
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span><span class="lineCov"> 6 : void SourceDir::readVocabularies(VocabularyMerger&amp; out)</span>
+<span class="lineNum"> 95 </span> : {
+<span class="lineNum"> 96 </span><span class="lineCov"> 6 : if (!valid()) return;</span>
+<span class="lineNum"> 97 </span> :
+<span class="lineNum"> 98 </span><span class="lineCov"> 32 : for (const_iterator d = begin(); d != end(); ++d)</span>
+<span class="lineNum"> 99 </span> : {
+<span class="lineNum"> 100 </span><span class="lineCov"> 26 : FileType type = fileType(d-&gt;d_name);</span>
+<span class="lineNum"> 101 </span><span class="lineCov"> 26 : if (type == VOC)</span>
+<span class="lineNum"> 102 </span> : {
+<span class="lineNum"> 103 </span> : // Read uncompressed data
+<span class="lineNum"> 104 </span><span class="lineCov"> 2 : tagcoll::input::Stdio in(str::joinpath(path(), d-&gt;d_name));</span>
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span> : // Read the vocabulary
+<span class="lineNum"> 107 </span><span class="lineCov"> 4 : out.read(in);</span>
+<span class="lineNum"> 108 </span> : }
+<span class="lineNum"> 109 </span><span class="lineCov"> 24 : else if (type == VOCGZ)</span>
+<span class="lineNum"> 110 </span> : {
+<span class="lineNum"> 111 </span> : // Read compressed data
+<span class="lineNum"> 112 </span><span class="lineNoCov"> 0 : tagcoll::input::Zlib in(str::joinpath(path(), d-&gt;d_name));</span>
+<span class="lineNum"> 113 </span> :
+<span class="lineNum"> 114 </span> : // Read the vocabulary
+<span class="lineNum"> 115 </span><span class="lineNoCov"> 0 : out.read(in);</span>
+<span class="lineNum"> 116 </span> : }
+<span class="lineNum"> 117 </span><span class="lineCov"> 6 : }</span>
+<span class="lineNum"> 118 </span> : }
+<span class="lineNum"> 119 </span> :
+<span class="lineNum"> 120 </span> : }
+<span class="lineNum"> 121 </span><span class="lineCov"> 6 : }</span>
+<span class="lineNum"> 122 </span> :
+<span class="lineNum"> 123 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/maint/sourcedir.h.gcov.html b/rep/ept/debtags/maint/sourcedir.h.gcov.html
new file mode 100644
index 0000000..64aa522
--- /dev/null
+++ b/rep/ept/debtags/maint/sourcedir.h.gcov.html
@@ -0,0 +1,141 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/maint/sourcedir.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/debtags/maint</a> - sourcedir.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">3</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">3</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef EPT_DEBTAGS_SOURCEDIR_H
+<span class="lineNum"> 2 </span> : #define EPT_DEBTAGS_SOURCEDIR_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** @file
+<span class="lineNum"> 5 </span> : * @author Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 6 </span> : * Debtags data source directory access
+<span class="lineNum"> 7 </span> : */
+<span class="lineNum"> 8 </span> :
+<span class="lineNum"> 9 </span> : /*
+<span class="lineNum"> 10 </span> : * Copyright (C) 2003,2004,2005,2006,2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 11 </span> : *
+<span class="lineNum"> 12 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 13 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 14 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 15 </span> : * (at your option) any later version.
+<span class="lineNum"> 16 </span> : *
+<span class="lineNum"> 17 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 18 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 19 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 20 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 21 </span> : *
+<span class="lineNum"> 22 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 23 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 24 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 25 </span> : */
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #include &lt;wibble/sys/fs.h&gt;
+<span class="lineNum"> 28 </span> : #include &lt;string&gt;
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : namespace ept {
+<span class="lineNum"> 31 </span> : namespace debtags {
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : class VocabularyMerger;
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : /**
+<span class="lineNum"> 36 </span> : * Access a directory containing Debtags data files
+<span class="lineNum"> 37 </span> : */
+<span class="lineNum"> 38 </span> : class SourceDir : public wibble::sys::fs::Directory
+<span class="lineNum"> 39 </span><span class="lineCov"> 82 : {</span>
+<span class="lineNum"> 40 </span> : protected:
+<span class="lineNum"> 41 </span> : enum FileType { SKIP, TAG, VOC, TAGGZ, VOCGZ };
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : // Check if a file name is a tag file, a vocabulary file or a file to skip.
+<span class="lineNum"> 44 </span> : // Please notice that it works on file names, not paths.
+<span class="lineNum"> 45 </span> : FileType fileType(const std::string&amp; name);
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span> : public:
+<span class="lineNum"> 48 </span><span class="lineCov"> 82 : SourceDir(const std::string&amp; path) : Directory(path) {}</span>
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span> : /// Return the time of the newest file in the source directory
+<span class="lineNum"> 51 </span> : time_t timestamp();
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span> : /// Return the time of the newest vocabulary file in the source directory
+<span class="lineNum"> 54 </span> : time_t vocTimestamp();
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span> : /// Return the time of the newest tag file in the source directory
+<span class="lineNum"> 57 </span> : time_t tagTimestamp();
+<span class="lineNum"> 58 </span> :
+<span class="lineNum"> 59 </span> : /// Read the tag files in the directory and output their content to out
+<span class="lineNum"> 60 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 61 </span><span class="lineCov"> 4 : void readTags(OUT out);</span>
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span> : /**
+<span class="lineNum"> 64 </span> : * Read the vocabulary files in the directory and output their content to
+<span class="lineNum"> 65 </span> : * out
+<span class="lineNum"> 66 </span> : */
+<span class="lineNum"> 67 </span> : void readVocabularies(VocabularyMerger&amp; out);
+<span class="lineNum"> 68 </span> : };
+<span class="lineNum"> 69 </span> :
+<span class="lineNum"> 70 </span> : }
+<span class="lineNum"> 71 </span> : }
+<span class="lineNum"> 72 </span> :
+<span class="lineNum"> 73 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 74 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/maint/sourcedir.tcc.gcov.html b/rep/ept/debtags/maint/sourcedir.tcc.gcov.html
new file mode 100644
index 0000000..429ec73
--- /dev/null
+++ b/rep/ept/debtags/maint/sourcedir.tcc.gcov.html
@@ -0,0 +1,118 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/maint/sourcedir.tcc</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/debtags/maint</a> - sourcedir.tcc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">9</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">88.9 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">8</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef EPT_DEBTAGS_SOURCEDIR_TCC
+<span class="lineNum"> 2 </span> : #define EPT_DEBTAGS_SOURCEDIR_TCC
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** @file
+<span class="lineNum"> 5 </span> : * @author Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 6 </span> : * Debtags data source directory access
+<span class="lineNum"> 7 </span> : */
+<span class="lineNum"> 8 </span> : #include &lt;ept/debtags/maint/sourcedir.h&gt;
+<span class="lineNum"> 9 </span> :
+<span class="lineNum"> 10 </span> : #include &lt;tagcoll/input/zlib.h&gt;
+<span class="lineNum"> 11 </span> : #include &lt;tagcoll/input/stdio.h&gt;
+<span class="lineNum"> 12 </span> :
+<span class="lineNum"> 13 </span> : namespace ept {
+<span class="lineNum"> 14 </span> : namespace debtags {
+<span class="lineNum"> 15 </span> :
+<span class="lineNum"> 16 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 17 </span> : void SourceDir::readTags(OUT out)
+<span class="lineNum"> 18 </span> : {
+<span class="lineNum"> 19 </span><span class="lineCov"> 4 : if (!valid()) return;</span>
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span><span class="lineCov"> 28 : for (const_iterator d = begin(); d != end(); ++d)</span>
+<span class="lineNum"> 22 </span> : {
+<span class="lineNum"> 23 </span><span class="lineCov"> 24 : FileType type = fileType(d-&gt;d_name);</span>
+<span class="lineNum"> 24 </span><span class="lineCov"> 24 : if (type == TAG)</span>
+<span class="lineNum"> 25 </span> : {
+<span class="lineNum"> 26 </span> : // Read uncompressed data
+<span class="lineNum"> 27 </span><span class="lineCov"> 2 : tagcoll::input::Stdio in(path() + &quot;/&quot; + d-&gt;d_name);</span>
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : // Read the collection
+<span class="lineNum"> 30 </span><span class="lineCov"> 2 : tagcoll::textformat::parse(in, out);</span>
+<span class="lineNum"> 31 </span> : }
+<span class="lineNum"> 32 </span><span class="lineCov"> 22 : else if (type == TAGGZ)</span>
+<span class="lineNum"> 33 </span> : {
+<span class="lineNum"> 34 </span> : // Read compressed data
+<span class="lineNum"> 35 </span><span class="lineNoCov"> 0 : tagcoll::input::Zlib in(path() + &quot;/&quot; + d-&gt;d_name);</span>
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : // Read the collection
+<span class="lineNum"> 38 </span><span class="lineCov"> 4 : tagcoll::textformat::parse(in, out);</span>
+<span class="lineNum"> 39 </span> : }
+<span class="lineNum"> 40 </span> : }
+<span class="lineNum"> 41 </span> : }
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : }
+<span class="lineNum"> 44 </span> : }
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> : #include &lt;tagcoll/TextFormat.tcc&gt;
+<span class="lineNum"> 47 </span> :
+<span class="lineNum"> 48 </span> : #endif
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span> : // -*- C++ -*-
+<span class="lineNum"> 51 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/maint/vocabularyindexer.cc.gcov.html b/rep/ept/debtags/maint/vocabularyindexer.cc.gcov.html
new file mode 100644
index 0000000..bf21509
--- /dev/null
+++ b/rep/ept/debtags/maint/vocabularyindexer.cc.gcov.html
@@ -0,0 +1,262 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/maint/vocabularyindexer.cc</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/debtags/maint</a> - vocabularyindexer.cc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">94</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">69.1 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">65</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &lt;ept/debtags/maint/vocabularyindexer.h&gt;
+<span class="lineNum"> 2 </span> : #include &lt;ept/debtags/vocabulary.h&gt;
+<span class="lineNum"> 3 </span> : #include &lt;ept/debtags/maint/vocabularymerger.h&gt;
+<span class="lineNum"> 4 </span> : #include &lt;ept/debtags/maint/path.h&gt;
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : namespace ept {
+<span class="lineNum"> 7 </span> : namespace debtags {
+<span class="lineNum"> 8 </span> :
+<span class="lineNum"> 9 </span><span class="lineCov"> 31 : VocabularyIndexer::VocabularyIndexer()</span>
+<span class="lineNum"> 10 </span><span class="lineCov"> 31 : : mainSource(Path::debtagsSourceDir()), userSource(Path::debtagsUserSourceDir())</span>
+<span class="lineNum"> 11 </span> : {
+<span class="lineNum"> 12 </span><span class="lineCov"> 31 : rescan();</span>
+<span class="lineNum"> 13 </span><span class="lineCov"> 31 : }</span>
+<span class="lineNum"> 14 </span> :
+<span class="lineNum"> 15 </span><span class="lineCov"> 31 : void VocabularyIndexer::rescan()</span>
+<span class="lineNum"> 16 </span> : {
+<span class="lineNum"> 17 </span><span class="lineCov"> 31 : ts_main_src = mainSource.vocTimestamp();</span>
+<span class="lineNum"> 18 </span><span class="lineCov"> 31 : ts_user_src = userSource.vocTimestamp();</span>
+<span class="lineNum"> 19 </span><span class="lineCov"> 31 : ts_main_voc = Path::timestamp(Path::vocabulary());</span>
+<span class="lineNum"> 20 </span><span class="lineCov"> 62 : ts_main_idx = Path::timestamp(Path::vocabularyIndex());</span>
+<span class="lineNum"> 21 </span><span class="lineCov"> 62 : ts_user_voc = Path::timestamp(Path::userVocabulary());</span>
+<span class="lineNum"> 22 </span><span class="lineCov"> 62 : ts_user_idx = Path::timestamp(Path::userVocabularyIndex());</span>
+<span class="lineNum"> 23 </span><span class="lineCov"> 31 : }</span>
+<span class="lineNum"> 24 </span> :
+<span class="lineNum"> 25 </span><span class="lineCov"> 31 : bool VocabularyIndexer::needsRebuild() const</span>
+<span class="lineNum"> 26 </span> : {
+<span class="lineNum"> 27 </span> : // If there are no indexes of any kind, then we need rebuilding
+<span class="lineNum"> 28 </span><span class="lineCov"> 31 : if (ts_user_voc == 0 &amp;&amp; ts_user_idx == 0 &amp;&amp; ts_main_voc == 0 &amp;&amp; ts_main_idx == 0)</span>
+<span class="lineNum"> 29 </span><span class="lineCov"> 3 : return true;</span>
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : // If the user index is ok, then we are fine
+<span class="lineNum"> 32 </span><span class="lineCov"> 28 : if (ts_user_voc &gt;= sourceTimestamp() &amp;&amp; ts_user_idx &gt;= sourceTimestamp())</span>
+<span class="lineNum"> 33 </span><span class="lineCov"> 28 : return false;</span>
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : // If there are user sources, then we cannot use the system index
+<span class="lineNum"> 36 </span><span class="lineNoCov"> 0 : if (ts_user_src &gt; 0)</span>
+<span class="lineNum"> 37 </span><span class="lineNoCov"> 0 : return true;</span>
+<span class="lineNum"> 38 </span> :
+<span class="lineNum"> 39 </span> : // If there are no user sources, then we can fallback on the system
+<span class="lineNum"> 40 </span> : // indexes in case the user indexes are not up to date
+<span class="lineNum"> 41 </span><span class="lineNoCov"> 0 : if (ts_main_voc &gt;= sourceTimestamp() &amp;&amp; ts_main_idx &gt;= sourceTimestamp())</span>
+<span class="lineNum"> 42 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span><span class="lineNoCov"> 0 : return true;</span>
+<span class="lineNum"> 45 </span> : }
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span><span class="lineCov"> 31 : bool VocabularyIndexer::userIndexIsRedundant() const</span>
+<span class="lineNum"> 48 </span> : {
+<span class="lineNum"> 49 </span> : // If there is no user index, then it is not redundant
+<span class="lineNum"> 50 </span><span class="lineCov"> 31 : if (ts_user_voc == 0 &amp;&amp; ts_user_idx == 0)</span>
+<span class="lineNum"> 51 </span><span class="lineCov"> 2 : return false;</span>
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span> : // If we have user sources, then the user index is never redundant
+<span class="lineNum"> 54 </span><span class="lineCov"> 29 : if (ts_user_src &gt; 0)</span>
+<span class="lineNum"> 55 </span><span class="lineCov"> 29 : return false;</span>
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : // If the system index is not up to date, then the user index is not
+<span class="lineNum"> 58 </span> : // redundant
+<span class="lineNum"> 59 </span><span class="lineNoCov"> 0 : if (ts_main_voc &lt; sourceTimestamp() || ts_main_idx &lt; sourceTimestamp())</span>
+<span class="lineNum"> 60 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span><span class="lineNoCov"> 0 : return true;</span>
+<span class="lineNum"> 63 </span> : }
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span><span class="lineCov"> 3 : bool VocabularyIndexer::rebuild(const std::string&amp; vocfname, const std::string&amp; idxfname)</span>
+<span class="lineNum"> 66 </span> : {
+<span class="lineNum"> 67 </span> : using namespace tagcoll;
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span> : // Create the master MMap index
+<span class="lineNum"> 70 </span><span class="lineCov"> 3 : diskindex::MasterMMapIndexer master(idxfname);</span>
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span> : // Read and merge vocabulary data
+<span class="lineNum"> 73 </span><span class="lineCov"> 3 : VocabularyMerger voc;</span>
+<span class="lineNum"> 74 </span><span class="lineCov"> 3 : mainSource.readVocabularies(voc);</span>
+<span class="lineNum"> 75 </span><span class="lineCov"> 3 : userSource.readVocabularies(voc);</span>
+<span class="lineNum"> 76 </span> :
+<span class="lineNum"> 77 </span><span class="lineCov"> 3 : if (voc.empty())</span>
+<span class="lineNum"> 78 </span><span class="lineCov"> 2 : return false;</span>
+<span class="lineNum"> 79 </span> : //throw wibble::exception::Consistency(&quot;Reading debtags sources from &quot; + mainSource.path() + &quot; and &quot; + userSource.path(), &quot;Unable to find any vocabulary data&quot;);
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span> : // Write the merged vocabulary, and generate tag and facet IDs as a side
+<span class="lineNum"> 82 </span> : // effect
+<span class="lineNum"> 83 </span><span class="lineCov"> 1 : std::string tmpvocfname = vocfname + &quot;.tmp&quot;;</span>
+<span class="lineNum"> 84 </span><span class="lineCov"> 1 : voc.write(tmpvocfname);</span>
+<span class="lineNum"> 85 </span> :
+<span class="lineNum"> 86 </span> : // Add the indexed vocabulary data to the master index
+<span class="lineNum"> 87 </span> : // 0: facets
+<span class="lineNum"> 88 </span><span class="lineCov"> 1 : master.append(voc.facetIndexer());</span>
+<span class="lineNum"> 89 </span> : // 1: tags
+<span class="lineNum"> 90 </span><span class="lineCov"> 1 : master.append(voc.tagIndexer());</span>
+<span class="lineNum"> 91 </span> :
+<span class="lineNum"> 92 </span><span class="lineCov"> 1 : if (rename(tmpvocfname.c_str(), vocfname.c_str()) == -1)</span>
+<span class="lineNum"> 93 </span><span class="lineNoCov"> 0 : throw wibble::exception::System(&quot;renaming &quot; + tmpvocfname + &quot; to &quot; + vocfname);</span>
+<span class="lineNum"> 94 </span> :
+<span class="lineNum"> 95 </span><span class="lineCov"> 1 : master.commit();</span>
+<span class="lineNum"> 96 </span><span class="lineCov"> 1 : return true;</span>
+<span class="lineNum"> 97 </span> : }
+<span class="lineNum"> 98 </span> :
+<span class="lineNum"> 99 </span><span class="lineCov"> 31 : bool VocabularyIndexer::rebuildIfNeeded()</span>
+<span class="lineNum"> 100 </span> : {
+<span class="lineNum"> 101 </span><span class="lineCov"> 31 : if (needsRebuild())</span>
+<span class="lineNum"> 102 </span> : {
+<span class="lineNum"> 103 </span> : // Decide if we rebuild the user index or the system index
+<span class="lineNum"> 104 </span> :
+<span class="lineNum"> 105 </span><span class="lineCov"> 3 : if (ts_user_src == 0 &amp;&amp; Path::access(Path::debtagsIndexDir(), W_OK) == 0)</span>
+<span class="lineNum"> 106 </span> : {
+<span class="lineNum"> 107 </span> : // There are no user sources and we can write to the system index
+<span class="lineNum"> 108 </span> : // directory: rebuild the system index
+<span class="lineNum"> 109 </span><span class="lineCov"> 1 : if (!rebuild(Path::vocabulary(), Path::vocabularyIndex()))</span>
+<span class="lineNum"> 110 </span><span class="lineCov"> 1 : return false;</span>
+<span class="lineNum"> 111 </span><span class="lineNoCov"> 0 : ts_main_voc = Path::timestamp(Path::vocabulary());</span>
+<span class="lineNum"> 112 </span><span class="lineNoCov"> 0 : ts_main_idx = Path::timestamp(Path::vocabularyIndex());</span>
+<span class="lineNum"> 113 </span><span class="lineNoCov"> 0 : if (Path::vocabulary() == Path::userVocabulary())</span>
+<span class="lineNum"> 114 </span><span class="lineNoCov"> 0 : ts_user_voc = ts_main_voc;</span>
+<span class="lineNum"> 115 </span><span class="lineNoCov"> 0 : if (Path::vocabularyIndex() == Path::userVocabularyIndex())</span>
+<span class="lineNum"> 116 </span><span class="lineNoCov"> 0 : ts_user_idx = ts_main_idx;</span>
+<span class="lineNum"> 117 </span> : } else {
+<span class="lineNum"> 118 </span><span class="lineCov"> 2 : wibble::sys::fs::mkFilePath(Path::userVocabulary());</span>
+<span class="lineNum"> 119 </span><span class="lineCov"> 4 : wibble::sys::fs::mkFilePath(Path::userVocabularyIndex());</span>
+<span class="lineNum"> 120 </span><span class="lineCov"> 4 : if (!rebuild(Path::userVocabulary(), Path::userVocabularyIndex()))</span>
+<span class="lineNum"> 121 </span><span class="lineCov"> 1 : return false;</span>
+<span class="lineNum"> 122 </span><span class="lineCov"> 1 : ts_user_voc = Path::timestamp(Path::userVocabulary());</span>
+<span class="lineNum"> 123 </span><span class="lineCov"> 2 : ts_user_idx = Path::timestamp(Path::userVocabularyIndex());</span>
+<span class="lineNum"> 124 </span> : }
+<span class="lineNum"> 125 </span><span class="lineCov"> 1 : return true;</span>
+<span class="lineNum"> 126 </span> : }
+<span class="lineNum"> 127 </span><span class="lineCov"> 28 : return false;</span>
+<span class="lineNum"> 128 </span> : }
+<span class="lineNum"> 129 </span> :
+<span class="lineNum"> 130 </span><span class="lineCov"> 31 : bool VocabularyIndexer::deleteRedundantUserIndex()</span>
+<span class="lineNum"> 131 </span> : {
+<span class="lineNum"> 132 </span><span class="lineCov"> 31 : if (userIndexIsRedundant())</span>
+<span class="lineNum"> 133 </span> : {
+<span class="lineNum"> 134 </span> : // Delete the user indexes if they exist
+<span class="lineNum"> 135 </span><span class="lineNoCov"> 0 : if (Path::vocabulary() != Path::userVocabulary())</span>
+<span class="lineNum"> 136 </span> : {
+<span class="lineNum"> 137 </span><span class="lineNoCov"> 0 : unlink(Path::userVocabulary().c_str());</span>
+<span class="lineNum"> 138 </span><span class="lineNoCov"> 0 : ts_user_voc = 0;</span>
+<span class="lineNum"> 139 </span> : }
+<span class="lineNum"> 140 </span><span class="lineNoCov"> 0 : if (Path::vocabularyIndex() != Path::userVocabularyIndex())</span>
+<span class="lineNum"> 141 </span> : {
+<span class="lineNum"> 142 </span><span class="lineNoCov"> 0 : unlink(Path::userVocabularyIndex().c_str());</span>
+<span class="lineNum"> 143 </span><span class="lineNoCov"> 0 : ts_user_idx = 0;</span>
+<span class="lineNum"> 144 </span> : }
+<span class="lineNum"> 145 </span><span class="lineNoCov"> 0 : return true;</span>
+<span class="lineNum"> 146 </span> : }
+<span class="lineNum"> 147 </span><span class="lineCov"> 31 : return false;</span>
+<span class="lineNum"> 148 </span> : }
+<span class="lineNum"> 149 </span> :
+<span class="lineNum"> 150 </span><span class="lineCov"> 31 : bool VocabularyIndexer::getUpToDateVocabulary(std::string&amp; vocfname, std::string&amp; idxfname)</span>
+<span class="lineNum"> 151 </span> : {
+<span class="lineNum"> 152 </span> : // If there are no indexes of any kind, then we have nothing to return
+<span class="lineNum"> 153 </span><span class="lineCov"> 31 : if (ts_user_voc == 0 &amp;&amp; ts_user_idx == 0 &amp;&amp; ts_main_voc == 0 &amp;&amp; ts_main_idx == 0)</span>
+<span class="lineNum"> 154 </span><span class="lineCov"> 2 : return false;</span>
+<span class="lineNum"> 155 </span> :
+<span class="lineNum"> 156 </span> : // If the user index is up to date, use it
+<span class="lineNum"> 157 </span><span class="lineCov"> 29 : if (ts_user_voc &gt;= sourceTimestamp() &amp;&amp;</span>
+<span class="lineNum"> 158 </span> : ts_user_idx &gt;= sourceTimestamp())
+<span class="lineNum"> 159 </span> : {
+<span class="lineNum"> 160 </span><span class="lineCov"> 29 : vocfname = Path::userVocabulary();</span>
+<span class="lineNum"> 161 </span><span class="lineCov"> 58 : idxfname = Path::userVocabularyIndex();</span>
+<span class="lineNum"> 162 </span><span class="lineCov"> 29 : return true;</span>
+<span class="lineNum"> 163 </span> : }
+<span class="lineNum"> 164 </span> :
+<span class="lineNum"> 165 </span> : // If the user index is not up to date and we have user sources, we cannot
+<span class="lineNum"> 166 </span> : // fall back to the system index
+<span class="lineNum"> 167 </span><span class="lineNoCov"> 0 : if (ts_user_src != 0)</span>
+<span class="lineNum"> 168 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 169 </span> :
+<span class="lineNum"> 170 </span> : // Fallback to the system index
+<span class="lineNum"> 171 </span><span class="lineNoCov"> 0 : if (ts_main_voc &gt;= sourceTimestamp() &amp;&amp;</span>
+<span class="lineNum"> 172 </span> : ts_main_idx &gt;= sourceTimestamp())
+<span class="lineNum"> 173 </span> : {
+<span class="lineNum"> 174 </span><span class="lineNoCov"> 0 : vocfname = Path::vocabulary();</span>
+<span class="lineNum"> 175 </span><span class="lineNoCov"> 0 : idxfname = Path::vocabularyIndex();</span>
+<span class="lineNum"> 176 </span><span class="lineNoCov"> 0 : return true;</span>
+<span class="lineNum"> 177 </span> : }
+<span class="lineNum"> 178 </span> :
+<span class="lineNum"> 179 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 180 </span> : }
+<span class="lineNum"> 181 </span> :
+<span class="lineNum"> 182 </span> :
+<span class="lineNum"> 183 </span><span class="lineCov"> 31 : bool VocabularyIndexer::obtainWorkingVocabulary(std::string&amp; vocfname, std::string&amp; idxfname)</span>
+<span class="lineNum"> 184 </span> : {
+<span class="lineNum"> 185 </span><span class="lineCov"> 31 : VocabularyIndexer v;</span>
+<span class="lineNum"> 186 </span> :
+<span class="lineNum"> 187 </span><span class="lineCov"> 31 : v.rebuildIfNeeded();</span>
+<span class="lineNum"> 188 </span><span class="lineCov"> 31 : v.deleteRedundantUserIndex();</span>
+<span class="lineNum"> 189 </span><span class="lineCov"> 31 : return v.getUpToDateVocabulary(vocfname, idxfname);</span>
+<span class="lineNum"> 190 </span> : }
+<span class="lineNum"> 191 </span> :
+<span class="lineNum"> 192 </span> : }
+<span class="lineNum"> 193 </span><span class="lineCov"> 6 : }</span>
+<span class="lineNum"> 194 </span> :
+<span class="lineNum"> 195 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/maint/vocabularyindexer.h.gcov.html b/rep/ept/debtags/maint/vocabularyindexer.h.gcov.html
new file mode 100644
index 0000000..5e8b99f
--- /dev/null
+++ b/rep/ept/debtags/maint/vocabularyindexer.h.gcov.html
@@ -0,0 +1,183 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/maint/vocabularyindexer.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/debtags/maint</a> - vocabularyindexer.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef EPT_DEBTAGS_VOCABULARYINDEXER_H
+<span class="lineNum"> 2 </span> : #define EPT_DEBTAGS_VOCABULARYINDEXER_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** @file
+<span class="lineNum"> 5 </span> : * @author Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 6 </span> : * Debtags vocabulary indexer
+<span class="lineNum"> 7 </span> : */
+<span class="lineNum"> 8 </span> :
+<span class="lineNum"> 9 </span> : /*
+<span class="lineNum"> 10 </span> : * Copyright (C) 2003,2004,2005,2006,2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 11 </span> : *
+<span class="lineNum"> 12 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 13 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 14 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 15 </span> : * (at your option) any later version.
+<span class="lineNum"> 16 </span> : *
+<span class="lineNum"> 17 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 18 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 19 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 20 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 21 </span> : *
+<span class="lineNum"> 22 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 23 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 24 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 25 </span> : */
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #include &lt;ept/debtags/maint/sourcedir.h&gt;
+<span class="lineNum"> 28 </span> : #include &lt;string&gt;
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : namespace ept {
+<span class="lineNum"> 31 </span> : namespace debtags {
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : /**
+<span class="lineNum"> 34 </span> : * Infrastructure used to rebuild the vocabulary index when needed
+<span class="lineNum"> 35 </span> : */
+<span class="lineNum"> 36 </span> : struct VocabularyIndexer
+<span class="lineNum"> 37 </span><span class="lineCov"> 31 : {</span>
+<span class="lineNum"> 38 </span> : SourceDir mainSource;
+<span class="lineNum"> 39 </span> : SourceDir userSource;
+<span class="lineNum"> 40 </span> : time_t ts_main_src;
+<span class="lineNum"> 41 </span> : time_t ts_user_src;
+<span class="lineNum"> 42 </span> : time_t ts_main_voc;
+<span class="lineNum"> 43 </span> : time_t ts_main_idx;
+<span class="lineNum"> 44 </span> : time_t ts_user_voc;
+<span class="lineNum"> 45 </span> : time_t ts_user_idx;
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span> : /**
+<span class="lineNum"> 48 </span> : * Get the timestamp of the newest vocabulary data source
+<span class="lineNum"> 49 </span> : */
+<span class="lineNum"> 50 </span><span class="lineCov"> 114 : time_t sourceTimestamp() const { return ts_main_src &lt; ts_user_src ? ts_user_src : ts_main_src; }</span>
+<span class="lineNum"> 51 </span> : /**
+<span class="lineNum"> 52 </span> : * Return true if the vocabulary index needs rebuilding
+<span class="lineNum"> 53 </span> : */
+<span class="lineNum"> 54 </span> : bool needsRebuild() const;
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span> : /**
+<span class="lineNum"> 57 </span> : * Rebuild the vocabulary index
+<span class="lineNum"> 58 </span> : * @param vocfname
+<span class="lineNum"> 59 </span> : * Full pathname of the merged vocabulary to create
+<span class="lineNum"> 60 </span> : * @param idxfname
+<span class="lineNum"> 61 </span> : * Full pathname of the vocabulary index to create
+<span class="lineNum"> 62 </span> : */
+<span class="lineNum"> 63 </span> : bool rebuild(const std::string&amp; vocfname, const std::string&amp; idxfname);
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : /**
+<span class="lineNum"> 66 </span> : * Rebuild the vocabulary if needed
+<span class="lineNum"> 67 </span> : */
+<span class="lineNum"> 68 </span> : bool rebuildIfNeeded();
+<span class="lineNum"> 69 </span> :
+<span class="lineNum"> 70 </span> : /**
+<span class="lineNum"> 71 </span> : * Get the names of the merged vocabulary and vocabulary index that can be
+<span class="lineNum"> 72 </span> : * used to access Debtags vocabulary data.
+<span class="lineNum"> 73 </span> : *
+<span class="lineNum"> 74 </span> : * The system or the user index will be returned according to which one is
+<span class="lineNum"> 75 </span> : * up to date.
+<span class="lineNum"> 76 </span> : */
+<span class="lineNum"> 77 </span> : bool getUpToDateVocabulary(std::string&amp; vocfname, std::string&amp; idxfname);
+<span class="lineNum"> 78 </span> :
+<span class="lineNum"> 79 </span> : /**
+<span class="lineNum"> 80 </span> : * Returns true if the index in the user home directory is redundant and
+<span class="lineNum"> 81 </span> : * can be deleted.
+<span class="lineNum"> 82 </span> : *
+<span class="lineNum"> 83 </span> : * The user index is redundant if the system index is up to date.
+<span class="lineNum"> 84 </span> : */
+<span class="lineNum"> 85 </span> : bool userIndexIsRedundant() const;
+<span class="lineNum"> 86 </span> :
+<span class="lineNum"> 87 </span> : /**
+<span class="lineNum"> 88 </span> : * Deletes the user index if it is redundant
+<span class="lineNum"> 89 </span> : */
+<span class="lineNum"> 90 </span> : bool deleteRedundantUserIndex();
+<span class="lineNum"> 91 </span> :
+<span class="lineNum"> 92 </span> : /**
+<span class="lineNum"> 93 </span> : * Rescan the various timestamps
+<span class="lineNum"> 94 </span> : */
+<span class="lineNum"> 95 </span> : void rescan();
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span> : VocabularyIndexer();
+<span class="lineNum"> 98 </span> :
+<span class="lineNum"> 99 </span> : /**
+<span class="lineNum"> 100 </span> : * Get the names of the merged vocabulary and vocabulary index that can be
+<span class="lineNum"> 101 </span> : * used to access Debtags vocabulary data.
+<span class="lineNum"> 102 </span> : *
+<span class="lineNum"> 103 </span> : * The system or the user index will be returned according to which one is
+<span class="lineNum"> 104 </span> : * up to date.
+<span class="lineNum"> 105 </span> : *
+<span class="lineNum"> 106 </span> : * The files will be built or rebuilt if they are missing or outdated.
+<span class="lineNum"> 107 </span> : */
+<span class="lineNum"> 108 </span> : static bool obtainWorkingVocabulary(std::string&amp; vocfname, std::string&amp; idxfname);
+<span class="lineNum"> 109 </span> : };
+<span class="lineNum"> 110 </span> :
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span> : }
+<span class="lineNum"> 113 </span> : }
+<span class="lineNum"> 114 </span> :
+<span class="lineNum"> 115 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 116 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/maint/vocabularymerger.cc.gcov.html b/rep/ept/debtags/maint/vocabularymerger.cc.gcov.html
new file mode 100644
index 0000000..71763e0
--- /dev/null
+++ b/rep/ept/debtags/maint/vocabularymerger.cc.gcov.html
@@ -0,0 +1,453 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/maint/vocabularymerger.cc</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/debtags/maint</a> - vocabularymerger.cc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">181</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">81.2 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">147</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /*
+<span class="lineNum"> 2 </span> : * Merge different vocabularies together and create the tag and facet indexes
+<span class="lineNum"> 3 </span> : *
+<span class="lineNum"> 4 </span> : * Copyright (C) 2003-2006 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 5 </span> : *
+<span class="lineNum"> 6 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 7 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 8 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 9 </span> : * (at your option) any later version.
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 12 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 13 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 14 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 17 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 18 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 19 </span> : */
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : #include &lt;ept/debtags/maint/vocabularymerger.h&gt;
+<span class="lineNum"> 23 </span> : #include &lt;ept/debtags/maint/debdbparser.h&gt;
+<span class="lineNum"> 24 </span> :
+<span class="lineNum"> 25 </span> : #include &lt;cassert&gt;
+<span class="lineNum"> 26 </span> : #include &lt;cstring&gt;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : using namespace std;
+<span class="lineNum"> 29 </span> : using namespace tagcoll;
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : namespace ept {
+<span class="lineNum"> 32 </span> : namespace debtags {
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span><span class="lineCov"> 1432 : static void writeDebStyleField(FILE* out, const string&amp; name, const string&amp; val) throw ()</span>
+<span class="lineNum"> 35 </span> : {
+<span class="lineNum"> 36 </span><span class="lineCov"> 1432 : fprintf(out, &quot;%s: &quot;, name.c_str());</span>
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : // Properly escape newlines
+<span class="lineNum"> 39 </span><span class="lineCov"> 1432 : bool was_nl = false;</span>
+<span class="lineNum"> 40 </span><span class="lineCov"> 56225 : for (string::const_iterator s = val.begin(); s != val.end(); s++)</span>
+<span class="lineNum"> 41 </span><span class="lineCov"> 54793 : if (was_nl)</span>
+<span class="lineNum"> 42 </span> : // \n\n -&gt; \n .\n
+<span class="lineNum"> 43 </span><span class="lineCov"> 738 : if (*s == '\n')</span>
+<span class="lineNum"> 44 </span> : {
+<span class="lineNum"> 45 </span><span class="lineCov"> 120 : fputc(' ', out);</span>
+<span class="lineNum"> 46 </span><span class="lineCov"> 120 : fputc('.', out);</span>
+<span class="lineNum"> 47 </span><span class="lineCov"> 120 : fputc(*s, out);</span>
+<span class="lineNum"> 48 </span> : }
+<span class="lineNum"> 49 </span> : // \n([^ \t]) -&gt; \n \1
+<span class="lineNum"> 50 </span><span class="lineCov"> 618 : else if (*s != ' ' &amp;&amp; *s != '\t')</span>
+<span class="lineNum"> 51 </span> : {
+<span class="lineNum"> 52 </span><span class="lineCov"> 618 : fputc(' ', out);</span>
+<span class="lineNum"> 53 </span><span class="lineCov"> 618 : fputc(*s, out);</span>
+<span class="lineNum"> 54 </span><span class="lineCov"> 618 : was_nl = false;</span>
+<span class="lineNum"> 55 </span> : }
+<span class="lineNum"> 56 </span> : // \n[ \t] goes unchanged
+<span class="lineNum"> 57 </span> : else
+<span class="lineNum"> 58 </span> : {
+<span class="lineNum"> 59 </span><span class="lineNoCov"> 0 : fputc(*s, out);</span>
+<span class="lineNum"> 60 </span><span class="lineNoCov"> 0 : was_nl = false;</span>
+<span class="lineNum"> 61 </span> : }
+<span class="lineNum"> 62 </span> : else
+<span class="lineNum"> 63 </span><span class="lineCov"> 54055 : if (*s == '\n')</span>
+<span class="lineNum"> 64 </span> : {
+<span class="lineNum"> 65 </span><span class="lineCov"> 618 : fputc(*s, out);</span>
+<span class="lineNum"> 66 </span><span class="lineCov"> 618 : was_nl = true;</span>
+<span class="lineNum"> 67 </span> : }
+<span class="lineNum"> 68 </span> : else
+<span class="lineNum"> 69 </span><span class="lineCov"> 53437 : fputc(*s, out);</span>
+<span class="lineNum"> 70 </span> :
+<span class="lineNum"> 71 </span><span class="lineCov"> 1432 : fputc('\n', out);</span>
+<span class="lineNum"> 72 </span><span class="lineCov"> 1432 : }</span>
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span><span class="lineCov"> 1865 : VocabularyMerger::TagData&amp; VocabularyMerger::FacetData::obtainTag(const std::string&amp; name)</span>
+<span class="lineNum"> 75 </span> : {
+<span class="lineNum"> 76 </span><span class="lineCov"> 1865 : std::map&lt;std::string, TagData&gt;::iterator i = tags.find(name);</span>
+<span class="lineNum"> 77 </span><span class="lineCov"> 1865 : if (i == tags.end())</span>
+<span class="lineNum"> 78 </span> : {
+<span class="lineNum"> 79 </span> : // Create the tag if it's missing
+<span class="lineNum"> 80 </span><span class="lineCov"> 1245 : pair&lt;std::map&lt;std::string, TagData&gt;::iterator, bool&gt; res = tags.insert(make_pair&lt;std::string, TagData&gt;(name, TagData()));</span>
+<span class="lineNum"> 81 </span><span class="lineCov"> 1245 : i = res.first;</span>
+<span class="lineNum"> 82 </span><span class="lineCov"> 1245 : i-&gt;second.name = name;</span>
+<span class="lineNum"> 83 </span> : }
+<span class="lineNum"> 84 </span><span class="lineCov"> 1865 : return i-&gt;second;</span>
+<span class="lineNum"> 85 </span> : }
+<span class="lineNum"> 86 </span> :
+<span class="lineNum"> 87 </span><span class="lineCov"> 1953 : VocabularyMerger::FacetData&amp; VocabularyMerger::obtainFacet(const std::string&amp; name)</span>
+<span class="lineNum"> 88 </span> : {
+<span class="lineNum"> 89 </span><span class="lineCov"> 1953 : std::map&lt;std::string, FacetData&gt;::iterator i = facets.find(name);</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 1953 : if (i == facets.end())</span>
+<span class="lineNum"> 91 </span> : {
+<span class="lineNum"> 92 </span> : // Create the facet if it's missing
+<span class="lineNum"> 93 </span><span class="lineCov"> 62 : pair&lt;std::map&lt;std::string, FacetData&gt;::iterator, bool&gt; res = facets.insert(make_pair&lt;std::string, FacetData&gt;(name, FacetData()));</span>
+<span class="lineNum"> 94 </span><span class="lineCov"> 62 : i = res.first;</span>
+<span class="lineNum"> 95 </span><span class="lineCov"> 62 : i-&gt;second.name = name;</span>
+<span class="lineNum"> 96 </span> : }
+<span class="lineNum"> 97 </span><span class="lineCov"> 1953 : return i-&gt;second;</span>
+<span class="lineNum"> 98 </span> : }
+<span class="lineNum"> 99 </span> :
+<span class="lineNum"> 100 </span><span class="lineCov"> 1865 : VocabularyMerger::TagData&amp; VocabularyMerger::obtainTag(const std::string&amp; fullname)</span>
+<span class="lineNum"> 101 </span> : {
+<span class="lineNum"> 102 </span><span class="lineCov"> 1865 : size_t p = fullname.find(&quot;::&quot;);</span>
+<span class="lineNum"> 103 </span><span class="lineCov"> 1865 : if (p == string::npos)</span>
+<span class="lineNum"> 104 </span> : {
+<span class="lineNum"> 105 </span><span class="lineCov"> 28 : FacetData&amp; facet = obtainFacet(&quot;legacy&quot;);</span>
+<span class="lineNum"> 106 </span><span class="lineCov"> 28 : return facet.obtainTag(fullname);</span>
+<span class="lineNum"> 107 </span> : } else {
+<span class="lineNum"> 108 </span><span class="lineCov"> 1837 : FacetData&amp; facet = obtainFacet(fullname.substr(0, p));</span>
+<span class="lineNum"> 109 </span><span class="lineCov"> 3674 : return facet.obtainTag(fullname.substr(p + 2));</span>
+<span class="lineNum"> 110 </span> : }
+<span class="lineNum"> 111 </span> : }
+<span class="lineNum"> 112 </span> :
+<span class="lineNum"> 113 </span> :
+<span class="lineNum"> 114 </span><span class="lineCov"> 7 : void VocabularyMerger::read(tagcoll::input::Input&amp; input)</span>
+<span class="lineNum"> 115 </span> : {
+<span class="lineNum"> 116 </span><span class="lineCov"> 7 : DebDBParser parser(input);</span>
+<span class="lineNum"> 117 </span><span class="lineCov"> 7 : DebDBParser::Record record;</span>
+<span class="lineNum"> 118 </span> :
+<span class="lineNum"> 119 </span><span class="lineCov"> 1967 : while (parser.nextRecord(record))</span>
+<span class="lineNum"> 120 </span> : {
+<span class="lineNum"> 121 </span><span class="lineCov"> 1953 : DebDBParser::Record::const_iterator fi = record.find(&quot;Facet&quot;);</span>
+<span class="lineNum"> 122 </span><span class="lineCov"> 3906 : DebDBParser::Record::const_iterator ti = record.find(&quot;Tag&quot;);</span>
+<span class="lineNum"> 123 </span><span class="lineCov"> 3906 : if (fi != record.end())</span>
+<span class="lineNum"> 124 </span> : {
+<span class="lineNum"> 125 </span> : // Get the facet record
+<span class="lineNum"> 126 </span><span class="lineCov"> 88 : FacetData&amp; facet = obtainFacet(fi-&gt;second);</span>
+<span class="lineNum"> 127 </span> : //fprintf(stderr, &quot;Read facet@%d %.*s\n&quot;, parser.lineNumber(), PFSTR(facet.name));
+<span class="lineNum"> 128 </span><span class="lineCov"> 88 : assert(facet.name == fi-&gt;second);</span>
+<span class="lineNum"> 129 </span> :
+<span class="lineNum"> 130 </span> : // Merge the data
+<span class="lineNum"> 131 </span><span class="lineCov"> 416 : for (DebDBParser::Record::const_iterator i = record.begin();</span>
+<span class="lineNum"> 132 </span> : i != record.end(); i++)
+<span class="lineNum"> 133 </span><span class="lineCov"> 328 : if (i-&gt;first != &quot;Facet&quot;)</span>
+<span class="lineNum"> 134 </span><span class="lineCov"> 240 : facet[i-&gt;first] = i-&gt;second;</span>
+<span class="lineNum"> 135 </span> : }
+<span class="lineNum"> 136 </span><span class="lineCov"> 1865 : else if (ti != record.end())</span>
+<span class="lineNum"> 137 </span> : {
+<span class="lineNum"> 138 </span> : // Get the tag record
+<span class="lineNum"> 139 </span><span class="lineCov"> 1865 : TagData&amp; tag = obtainTag(ti-&gt;second);</span>
+<span class="lineNum"> 140 </span> : //fprintf(stderr, &quot;Read tag@%d %.*s\n&quot;, parser.lineNumber(), PFSTR(tag.name));
+<span class="lineNum"> 141 </span> : //assert(tag.name == ti-&gt;second);
+<span class="lineNum"> 142 </span> :
+<span class="lineNum"> 143 </span> : // Merge the data
+<span class="lineNum"> 144 </span><span class="lineCov"> 5796 : for (DebDBParser::Record::const_iterator i = record.begin();</span>
+<span class="lineNum"> 145 </span> : i != record.end(); i++)
+<span class="lineNum"> 146 </span><span class="lineCov"> 3931 : if (i-&gt;first != &quot;Tag&quot;)</span>
+<span class="lineNum"> 147 </span><span class="lineCov"> 2066 : tag[i-&gt;first] = i-&gt;second;</span>
+<span class="lineNum"> 148 </span> : }
+<span class="lineNum"> 149 </span> : else
+<span class="lineNum"> 150 </span> : {
+<span class="lineNum"> 151 </span> : fprintf(stderr, &quot;%s:%d: Skipping record without Tag or Facet field\n&quot;,
+<span class="lineNum"> 152 </span><span class="lineNoCov"> 0 : input.fileName().c_str(), input.lineNumber());</span>
+<span class="lineNum"> 153 </span> : }
+<span class="lineNum"> 154 </span><span class="lineCov"> 7 : }</span>
+<span class="lineNum"> 155 </span><span class="lineCov"> 7 : }</span>
+<span class="lineNum"> 156 </span> :
+<span class="lineNum"> 157 </span><span class="lineNoCov"> 0 : bool VocabularyMerger::hasTag(const std::string&amp; fullname) const</span>
+<span class="lineNum"> 158 </span> : {
+<span class="lineNum"> 159 </span><span class="lineNoCov"> 0 : size_t p = fullname.find(&quot;::&quot;);</span>
+<span class="lineNum"> 160 </span><span class="lineNoCov"> 0 : std::string facetName;</span>
+<span class="lineNum"> 161 </span><span class="lineNoCov"> 0 : std::string tagName;</span>
+<span class="lineNum"> 162 </span><span class="lineNoCov"> 0 : if (p == string::npos)</span>
+<span class="lineNum"> 163 </span> : {
+<span class="lineNum"> 164 </span><span class="lineNoCov"> 0 : facetName = &quot;legacy&quot;;</span>
+<span class="lineNum"> 165 </span><span class="lineNoCov"> 0 : tagName = fullname;</span>
+<span class="lineNum"> 166 </span> : } else {
+<span class="lineNum"> 167 </span><span class="lineNoCov"> 0 : facetName = fullname.substr(0, p);</span>
+<span class="lineNum"> 168 </span><span class="lineNoCov"> 0 : tagName = fullname.substr(p + 2);</span>
+<span class="lineNum"> 169 </span> : }
+<span class="lineNum"> 170 </span> :
+<span class="lineNum"> 171 </span><span class="lineNoCov"> 0 : std::map&lt;std::string, FacetData&gt;::const_iterator i = facets.find(facetName);</span>
+<span class="lineNum"> 172 </span><span class="lineNoCov"> 0 : if (i == facets.end())</span>
+<span class="lineNum"> 173 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 174 </span><span class="lineNoCov"> 0 : return i-&gt;second.tags.find(tagName) != i-&gt;second.tags.end();</span>
+<span class="lineNum"> 175 </span> : }
+<span class="lineNum"> 176 </span> :
+<span class="lineNum"> 177 </span><span class="lineNoCov"> 0 : int VocabularyMerger::tagID(const std::string&amp; fullname) const</span>
+<span class="lineNum"> 178 </span> : {
+<span class="lineNum"> 179 </span><span class="lineNoCov"> 0 : size_t p = fullname.find(&quot;::&quot;);</span>
+<span class="lineNum"> 180 </span><span class="lineNoCov"> 0 : std::string facetName;</span>
+<span class="lineNum"> 181 </span><span class="lineNoCov"> 0 : std::string tagName;</span>
+<span class="lineNum"> 182 </span><span class="lineNoCov"> 0 : if (p == string::npos)</span>
+<span class="lineNum"> 183 </span> : {
+<span class="lineNum"> 184 </span><span class="lineNoCov"> 0 : facetName = &quot;legacy&quot;;</span>
+<span class="lineNum"> 185 </span><span class="lineNoCov"> 0 : tagName = fullname;</span>
+<span class="lineNum"> 186 </span> : } else {
+<span class="lineNum"> 187 </span><span class="lineNoCov"> 0 : facetName = fullname.substr(0, p);</span>
+<span class="lineNum"> 188 </span><span class="lineNoCov"> 0 : tagName = fullname.substr(p + 2);</span>
+<span class="lineNum"> 189 </span> : }
+<span class="lineNum"> 190 </span> :
+<span class="lineNum"> 191 </span><span class="lineNoCov"> 0 : std::map&lt;std::string, FacetData&gt;::const_iterator i = facets.find(facetName);</span>
+<span class="lineNum"> 192 </span><span class="lineNoCov"> 0 : if (i == facets.end())</span>
+<span class="lineNum"> 193 </span><span class="lineNoCov"> 0 : return -1;</span>
+<span class="lineNum"> 194 </span><span class="lineNoCov"> 0 : std::map&lt;std::string, TagData&gt;::const_iterator j = i-&gt;second.tags.find(tagName);</span>
+<span class="lineNum"> 195 </span><span class="lineNoCov"> 0 : if (j == i-&gt;second.tags.end())</span>
+<span class="lineNum"> 196 </span><span class="lineNoCov"> 0 : return -1;</span>
+<span class="lineNum"> 197 </span><span class="lineNoCov"> 0 : return j-&gt;second.id;</span>
+<span class="lineNum"> 198 </span> : }
+<span class="lineNum"> 199 </span> :
+<span class="lineNum"> 200 </span><span class="lineCov"> 1 : std::set&lt;std::string&gt; VocabularyMerger::tagNames() const</span>
+<span class="lineNum"> 201 </span> : {
+<span class="lineNum"> 202 </span><span class="lineCov"> 1 : set&lt;string&gt; res;</span>
+<span class="lineNum"> 203 </span><span class="lineCov"> 30 : for (std::map&lt;std::string, FacetData&gt;::const_iterator f = facets.begin(); f != facets.end(); f++)</span>
+<span class="lineNum"> 204 </span><span class="lineCov"> 649 : for (std::map&lt;std::string, TagData&gt;::const_iterator t = f-&gt;second.tags.begin();</span>
+<span class="lineNum"> 205 </span> : t != f-&gt;second.tags.end(); t++)
+<span class="lineNum"> 206 </span><span class="lineCov"> 620 : res.insert(f-&gt;first + &quot;::&quot; + t-&gt;first);</span>
+<span class="lineNum"> 207 </span><span class="lineNoCov"> 0 : return res;</span>
+<span class="lineNum"> 208 </span> : }
+<span class="lineNum"> 209 </span> :
+<span class="lineNum"> 210 </span><span class="lineCov"> 4 : void VocabularyMerger::write(const std::string&amp; fname)</span>
+<span class="lineNum"> 211 </span> : {
+<span class="lineNum"> 212 </span><span class="lineCov"> 4 : FILE* out = fopen(fname.c_str(), &quot;wt&quot;);</span>
+<span class="lineNum"> 213 </span><span class="lineCov"> 4 : if (!out)</span>
+<span class="lineNum"> 214 </span><span class="lineNoCov"> 0 : throw wibble::exception::File(fname, &quot;cept_debtags_vocabularymerger:reating file &quot;);</span>
+<span class="lineNum"> 215 </span><span class="lineCov"> 4 : write(out);</span>
+<span class="lineNum"> 216 </span><span class="lineCov"> 4 : fclose(out);</span>
+<span class="lineNum"> 217 </span><span class="lineCov"> 4 : }</span>
+<span class="lineNum"> 218 </span> :
+<span class="lineNum"> 219 </span><span class="lineCov"> 4 : void VocabularyMerger::write(FILE* out)</span>
+<span class="lineNum"> 220 </span> : {
+<span class="lineNum"> 221 </span><span class="lineCov"> 4 : long start_ofs = ftell(out);</span>
+<span class="lineNum"> 222 </span><span class="lineCov"> 4 : int facetid = 0;</span>
+<span class="lineNum"> 223 </span><span class="lineCov"> 4 : int tagid = 0;</span>
+<span class="lineNum"> 224 </span> :
+<span class="lineNum"> 225 </span> : //fprintf(stderr, &quot;Write\n&quot;);
+<span class="lineNum"> 226 </span><span class="lineCov"> 37 : for (std::map&lt;std::string, FacetData&gt;::iterator f = facets.begin(); f != facets.end(); f++)</span>
+<span class="lineNum"> 227 </span> : {
+<span class="lineNum"> 228 </span><span class="lineCov"> 33 : f-&gt;second.id = facetid++;</span>
+<span class="lineNum"> 229 </span> : //fprintf(stderr, &quot;Writing facet %.*s\n&quot;, PFSTR(f-&gt;first));
+<span class="lineNum"> 230 </span><span class="lineCov"> 33 : f-&gt;second.ofs = ftell(out) - start_ofs;</span>
+<span class="lineNum"> 231 </span><span class="lineCov"> 33 : writeDebStyleField(out, &quot;Facet&quot;, f-&gt;first);</span>
+<span class="lineNum"> 232 </span><span class="lineCov"> 115 : for (std::map&lt;std::string, std::string&gt;::const_iterator j = f-&gt;second.begin();</span>
+<span class="lineNum"> 233 </span> : j != f-&gt;second.end(); j++)
+<span class="lineNum"> 234 </span><span class="lineCov"> 82 : writeDebStyleField(out, j-&gt;first, j-&gt;second);</span>
+<span class="lineNum"> 235 </span><span class="lineCov"> 33 : fputc('\n', out);</span>
+<span class="lineNum"> 236 </span><span class="lineCov"> 33 : f-&gt;second.len = ftell(out) - f-&gt;second.ofs;</span>
+<span class="lineNum"> 237 </span> :
+<span class="lineNum"> 238 </span><span class="lineCov"> 658 : for (std::map&lt;std::string, TagData&gt;::iterator t = f-&gt;second.tags.begin();</span>
+<span class="lineNum"> 239 </span> : t != f-&gt;second.tags.end(); t++)
+<span class="lineNum"> 240 </span> : {
+<span class="lineNum"> 241 </span><span class="lineCov"> 625 : t-&gt;second.id = tagid++;</span>
+<span class="lineNum"> 242 </span> : //fprintf(stderr, &quot;Writing tag %.*s\n&quot;, PFSTR(t-&gt;first));
+<span class="lineNum"> 243 </span><span class="lineCov"> 625 : t-&gt;second.ofs = ftell(out) - start_ofs;</span>
+<span class="lineNum"> 244 </span><span class="lineCov"> 625 : writeDebStyleField(out, &quot;Tag&quot;, f-&gt;first + &quot;::&quot; + t-&gt;first);</span>
+<span class="lineNum"> 245 </span><span class="lineCov"> 1317 : for (std::map&lt;std::string, std::string&gt;::const_iterator j = t-&gt;second.begin();</span>
+<span class="lineNum"> 246 </span> : j != t-&gt;second.end(); j++)
+<span class="lineNum"> 247 </span><span class="lineCov"> 692 : writeDebStyleField(out, j-&gt;first, j-&gt;second);</span>
+<span class="lineNum"> 248 </span><span class="lineCov"> 625 : fputc('\n', out);</span>
+<span class="lineNum"> 249 </span><span class="lineCov"> 625 : t-&gt;second.len = ftell(out) - t-&gt;second.ofs;</span>
+<span class="lineNum"> 250 </span> : }
+<span class="lineNum"> 251 </span> : }
+<span class="lineNum"> 252 </span> :
+<span class="lineNum"> 253 </span><span class="lineCov"> 4 : tagCount = tagid;</span>
+<span class="lineNum"> 254 </span><span class="lineCov"> 4 : }</span>
+<span class="lineNum"> 255 </span> :
+<span class="lineNum"> 256 </span> :
+<span class="lineNum"> 257 </span><span class="lineCov"> 4 : int VocabularyMerger::FacetIndexer::encodedSize() const </span>
+<span class="lineNum"> 258 </span> : {
+<span class="lineNum"> 259 </span> : // First the main offset table
+<span class="lineNum"> 260 </span><span class="lineCov"> 4 : int size = vm.facets.size() * sizeof(int);</span>
+<span class="lineNum"> 261 </span> :
+<span class="lineNum"> 262 </span><span class="lineCov"> 37 : for (std::map&lt;std::string, FacetData&gt;::const_iterator f = vm.facets.begin(); f != vm.facets.end(); f++)</span>
+<span class="lineNum"> 263 </span> : {
+<span class="lineNum"> 264 </span> : // offset of record in vocabulary
+<span class="lineNum"> 265 </span> : // size of record in vocabulary
+<span class="lineNum"> 266 </span> : // id of first tag
+<span class="lineNum"> 267 </span> : // id of last tag
+<span class="lineNum"> 268 </span> : // name (0-terminated)
+<span class="lineNum"> 269 </span><span class="lineCov"> 33 : size += 4 * sizeof(int) + f-&gt;first.size() + 1;</span>
+<span class="lineNum"> 270 </span> :
+<span class="lineNum"> 271 </span> : // Align to int boundaries
+<span class="lineNum"> 272 </span><span class="lineCov"> 33 : if ((size % sizeof(int)) != 0)</span>
+<span class="lineNum"> 273 </span><span class="lineCov"> 25 : size = (size + sizeof(int)) / sizeof(int) * sizeof(int);</span>
+<span class="lineNum"> 274 </span> : }
+<span class="lineNum"> 275 </span> :
+<span class="lineNum"> 276 </span><span class="lineCov"> 4 : return tagcoll::diskindex::MMap::align(size);</span>
+<span class="lineNum"> 277 </span> : }
+<span class="lineNum"> 278 </span> :
+<span class="lineNum"> 279 </span><span class="lineCov"> 4 : void VocabularyMerger::FacetIndexer::encode(char* buf) const </span>
+<span class="lineNum"> 280 </span> : {
+<span class="lineNum"> 281 </span><span class="lineCov"> 4 : int pos = vm.facets.size() * sizeof(int);</span>
+<span class="lineNum"> 282 </span> :
+<span class="lineNum"> 283 </span><span class="lineCov"> 37 : for (std::map&lt;std::string, FacetData&gt;::const_iterator f = vm.facets.begin(); f != vm.facets.end(); f++)</span>
+<span class="lineNum"> 284 </span> : {
+<span class="lineNum"> 285 </span><span class="lineCov"> 33 : ((int*)buf)[f-&gt;second.id] = pos;</span>
+<span class="lineNum"> 286 </span> :
+<span class="lineNum"> 287 </span> : // offset of record in vocabulary
+<span class="lineNum"> 288 </span><span class="lineCov"> 33 : *(int*)(buf+pos) = f-&gt;second.ofs;</span>
+<span class="lineNum"> 289 </span><span class="lineCov"> 33 : pos += sizeof(int);</span>
+<span class="lineNum"> 290 </span> :
+<span class="lineNum"> 291 </span> : // size of record in vocabulary
+<span class="lineNum"> 292 </span><span class="lineCov"> 33 : *(int*)(buf+pos) = f-&gt;second.len;</span>
+<span class="lineNum"> 293 </span><span class="lineCov"> 33 : pos += sizeof(int);</span>
+<span class="lineNum"> 294 </span> :
+<span class="lineNum"> 295 </span><span class="lineCov"> 33 : if (f-&gt;second.tags.empty())</span>
+<span class="lineNum"> 296 </span> : {
+<span class="lineNum"> 297 </span> : // id of first tag
+<span class="lineNum"> 298 </span><span class="lineCov"> 1 : *(int*)(buf+pos) = -1;</span>
+<span class="lineNum"> 299 </span><span class="lineCov"> 1 : pos += sizeof(int);</span>
+<span class="lineNum"> 300 </span> :
+<span class="lineNum"> 301 </span> : // id of last tag
+<span class="lineNum"> 302 </span><span class="lineCov"> 1 : *(int*)(buf+pos) = -1;</span>
+<span class="lineNum"> 303 </span><span class="lineCov"> 1 : pos += sizeof(int);</span>
+<span class="lineNum"> 304 </span> : } else {
+<span class="lineNum"> 305 </span> : // id of first tag
+<span class="lineNum"> 306 </span><span class="lineCov"> 32 : *(int*)(buf+pos) = f-&gt;second.tags.begin()-&gt;second.id;</span>
+<span class="lineNum"> 307 </span><span class="lineCov"> 32 : pos += sizeof(int);</span>
+<span class="lineNum"> 308 </span> :
+<span class="lineNum"> 309 </span> : // id of last tag
+<span class="lineNum"> 310 </span><span class="lineCov"> 32 : *(int*)(buf+pos) = f-&gt;second.tags.rbegin()-&gt;second.id;</span>
+<span class="lineNum"> 311 </span><span class="lineCov"> 32 : pos += sizeof(int);</span>
+<span class="lineNum"> 312 </span> : }
+<span class="lineNum"> 313 </span> :
+<span class="lineNum"> 314 </span> : // name (0-terminated)
+<span class="lineNum"> 315 </span><span class="lineCov"> 33 : memcpy(buf + pos, f-&gt;first.c_str(), f-&gt;first.size() + 1);</span>
+<span class="lineNum"> 316 </span><span class="lineCov"> 33 : pos += f-&gt;first.size() + 1;</span>
+<span class="lineNum"> 317 </span> :
+<span class="lineNum"> 318 </span> : // Align to int boundaries
+<span class="lineNum"> 319 </span><span class="lineCov"> 33 : if ((pos % sizeof(int)) != 0)</span>
+<span class="lineNum"> 320 </span><span class="lineCov"> 25 : pos = (pos + sizeof(int)) / sizeof(int) * sizeof(int);</span>
+<span class="lineNum"> 321 </span> : }
+<span class="lineNum"> 322 </span><span class="lineCov"> 4 : }</span>
+<span class="lineNum"> 323 </span> :
+<span class="lineNum"> 324 </span><span class="lineCov"> 4 : int VocabularyMerger::TagIndexer::encodedSize() const </span>
+<span class="lineNum"> 325 </span> : {
+<span class="lineNum"> 326 </span> : // First the main offset table
+<span class="lineNum"> 327 </span><span class="lineCov"> 4 : int size = vm.tagCount * sizeof(int);</span>
+<span class="lineNum"> 328 </span> :
+<span class="lineNum"> 329 </span><span class="lineCov"> 37 : for (std::map&lt;std::string, FacetData&gt;::const_iterator f = vm.facets.begin(); f != vm.facets.end(); f++)</span>
+<span class="lineNum"> 330 </span> : {
+<span class="lineNum"> 331 </span><span class="lineCov"> 658 : for (std::map&lt;std::string, TagData&gt;::const_iterator t = f-&gt;second.tags.begin();</span>
+<span class="lineNum"> 332 </span> : t != f-&gt;second.tags.end(); t++)
+<span class="lineNum"> 333 </span> : {
+<span class="lineNum"> 334 </span> : // offset of record in vocabulary
+<span class="lineNum"> 335 </span> : // size of record in vocabulary
+<span class="lineNum"> 336 </span> : // id of facet
+<span class="lineNum"> 337 </span> : // name (0-terminated)
+<span class="lineNum"> 338 </span><span class="lineCov"> 625 : size += 3 * sizeof(int) + f-&gt;first.size() + t-&gt;first.size() + 3;</span>
+<span class="lineNum"> 339 </span> :
+<span class="lineNum"> 340 </span> : // Align to int boundaries
+<span class="lineNum"> 341 </span><span class="lineCov"> 625 : if ((size % sizeof(int)) != 0)</span>
+<span class="lineNum"> 342 </span><span class="lineCov"> 479 : size = (size + sizeof(int)) / sizeof(int) * sizeof(int);</span>
+<span class="lineNum"> 343 </span> : }
+<span class="lineNum"> 344 </span> : }
+<span class="lineNum"> 345 </span><span class="lineCov"> 4 : return tagcoll::diskindex::MMap::align(size);</span>
+<span class="lineNum"> 346 </span> : }
+<span class="lineNum"> 347 </span> :
+<span class="lineNum"> 348 </span><span class="lineCov"> 4 : void VocabularyMerger::TagIndexer::encode(char* buf) const </span>
+<span class="lineNum"> 349 </span> : {
+<span class="lineNum"> 350 </span><span class="lineCov"> 4 : int pos = vm.tagCount * sizeof(int);</span>
+<span class="lineNum"> 351 </span> :
+<span class="lineNum"> 352 </span><span class="lineCov"> 37 : for (std::map&lt;std::string, FacetData&gt;::const_iterator f = vm.facets.begin(); f != vm.facets.end(); f++)</span>
+<span class="lineNum"> 353 </span> : {
+<span class="lineNum"> 354 </span><span class="lineCov"> 658 : for (std::map&lt;std::string, TagData&gt;::const_iterator t = f-&gt;second.tags.begin();</span>
+<span class="lineNum"> 355 </span> : t != f-&gt;second.tags.end(); t++)
+<span class="lineNum"> 356 </span> : {
+<span class="lineNum"> 357 </span><span class="lineCov"> 625 : ((int*)buf)[t-&gt;second.id] = pos;</span>
+<span class="lineNum"> 358 </span> :
+<span class="lineNum"> 359 </span> : // offset of record in vocabulary
+<span class="lineNum"> 360 </span><span class="lineCov"> 625 : *(int*)(buf+pos) = t-&gt;second.ofs;</span>
+<span class="lineNum"> 361 </span><span class="lineCov"> 625 : pos += sizeof(int);</span>
+<span class="lineNum"> 362 </span> :
+<span class="lineNum"> 363 </span> : // size of record in vocabulary
+<span class="lineNum"> 364 </span><span class="lineCov"> 625 : *(int*)(buf+pos) = t-&gt;second.len;</span>
+<span class="lineNum"> 365 </span><span class="lineCov"> 625 : pos += sizeof(int);</span>
+<span class="lineNum"> 366 </span> :
+<span class="lineNum"> 367 </span> : // id of facet
+<span class="lineNum"> 368 </span><span class="lineCov"> 625 : *(int*)(buf+pos) = f-&gt;second.id;</span>
+<span class="lineNum"> 369 </span><span class="lineCov"> 625 : pos += sizeof(int);</span>
+<span class="lineNum"> 370 </span> :
+<span class="lineNum"> 371 </span> : // name (0-terminated)
+<span class="lineNum"> 372 </span><span class="lineCov"> 625 : string name = f-&gt;first + &quot;::&quot; + t-&gt;first;</span>
+<span class="lineNum"> 373 </span><span class="lineCov"> 625 : memcpy(buf + pos, name.c_str(), name.size() + 1);</span>
+<span class="lineNum"> 374 </span><span class="lineCov"> 625 : pos += name.size() + 1;</span>
+<span class="lineNum"> 375 </span> :
+<span class="lineNum"> 376 </span> : // Align to int boundaries
+<span class="lineNum"> 377 </span><span class="lineCov"> 625 : if ((pos % sizeof(int)) != 0)</span>
+<span class="lineNum"> 378 </span><span class="lineCov"> 479 : pos = (pos + sizeof(int)) / sizeof(int) * sizeof(int);</span>
+<span class="lineNum"> 379 </span> : }
+<span class="lineNum"> 380 </span> : }
+<span class="lineNum"> 381 </span><span class="lineCov"> 4 : }</span>
+<span class="lineNum"> 382 </span> :
+<span class="lineNum"> 383 </span> : }
+<span class="lineNum"> 384 </span><span class="lineCov"> 6 : }</span>
+<span class="lineNum"> 385 </span> :
+<span class="lineNum"> 386 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/maint/vocabularymerger.h.gcov.html b/rep/ept/debtags/maint/vocabularymerger.h.gcov.html
new file mode 100644
index 0000000..da02c28
--- /dev/null
+++ b/rep/ept/debtags/maint/vocabularymerger.h.gcov.html
@@ -0,0 +1,224 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/maint/vocabularymerger.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/debtags/maint</a> - vocabularymerger.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">13</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">13</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /*
+<span class="lineNum"> 2 </span> : * Merge different vocabularies together and create the tag and facet indexes
+<span class="lineNum"> 3 </span> : *
+<span class="lineNum"> 4 </span> : * Copyright (C) 2003-2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 5 </span> : *
+<span class="lineNum"> 6 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 7 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 8 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 9 </span> : * (at your option) any later version.
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 12 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 13 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 14 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 17 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 18 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 19 </span> : */
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : #include &lt;tagcoll/diskindex/mmap.h&gt;
+<span class="lineNum"> 22 </span> : #include &lt;tagcoll/input/base.h&gt;
+<span class="lineNum"> 23 </span> : #include &lt;string&gt;
+<span class="lineNum"> 24 </span> : #include &lt;map&gt;
+<span class="lineNum"> 25 </span> : #include &lt;set&gt;
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #ifndef EPT_DEBTAGS_VOCABULARYMERGER_H
+<span class="lineNum"> 28 </span> : #define EPT_DEBTAGS_VOCABULARYMERGER_H
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : namespace ept {
+<span class="lineNum"> 31 </span> : namespace debtags {
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : class VocabularyMerger
+<span class="lineNum"> 34 </span><span class="lineCov"> 7 : {</span>
+<span class="lineNum"> 35 </span> : protected:
+<span class="lineNum"> 36 </span> : class FacetIndexer : public tagcoll::diskindex::MMapIndexer
+<span class="lineNum"> 37 </span> : {
+<span class="lineNum"> 38 </span> : protected:
+<span class="lineNum"> 39 </span> : VocabularyMerger&amp; vm;
+<span class="lineNum"> 40 </span> : public:
+<span class="lineNum"> 41 </span><span class="lineCov"> 7 : FacetIndexer(VocabularyMerger&amp; vm) : vm(vm) {}</span>
+<span class="lineNum"> 42 </span><span class="lineCov"> 7 : virtual ~FacetIndexer() {}</span>
+<span class="lineNum"> 43 </span> : virtual int encodedSize() const;
+<span class="lineNum"> 44 </span> : virtual void encode(char* buf) const;
+<span class="lineNum"> 45 </span> : };
+<span class="lineNum"> 46 </span> : class TagIndexer : public tagcoll::diskindex::MMapIndexer
+<span class="lineNum"> 47 </span> : {
+<span class="lineNum"> 48 </span> : protected:
+<span class="lineNum"> 49 </span> : VocabularyMerger&amp; vm;
+<span class="lineNum"> 50 </span> : public:
+<span class="lineNum"> 51 </span><span class="lineCov"> 7 : TagIndexer(VocabularyMerger&amp; vm) : vm(vm) {}</span>
+<span class="lineNum"> 52 </span><span class="lineCov"> 7 : virtual ~TagIndexer() {}</span>
+<span class="lineNum"> 53 </span> : virtual int encodedSize() const;
+<span class="lineNum"> 54 </span> : virtual void encode(char* buf) const;
+<span class="lineNum"> 55 </span> : };
+<span class="lineNum"> 56 </span> : class TagData : public std::map&lt;std::string, std::string&gt;
+<span class="lineNum"> 57 </span><span class="lineCov"> 8715 : {</span>
+<span class="lineNum"> 58 </span> : public:
+<span class="lineNum"> 59 </span> : std::string name;
+<span class="lineNum"> 60 </span> : // Offset in the last written file (used for indexing)
+<span class="lineNum"> 61 </span> : long ofs;
+<span class="lineNum"> 62 </span> : int len;
+<span class="lineNum"> 63 </span> : int id;
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span><span class="lineCov"> 1245 : TagData() : ofs(0), len(0) {}</span>
+<span class="lineNum"> 66 </span> : };
+<span class="lineNum"> 67 </span> : class FacetData : public std::map&lt;std::string, std::string&gt;
+<span class="lineNum"> 68 </span><span class="lineCov"> 434 : {</span>
+<span class="lineNum"> 69 </span> : public:
+<span class="lineNum"> 70 </span> : std::string name;
+<span class="lineNum"> 71 </span> : std::map&lt;std::string, TagData&gt; tags;
+<span class="lineNum"> 72 </span> : // Offset in the last written file (used for indexing)
+<span class="lineNum"> 73 </span> : long ofs;
+<span class="lineNum"> 74 </span> : int len;
+<span class="lineNum"> 75 </span> : int id;
+<span class="lineNum"> 76 </span> :
+<span class="lineNum"> 77 </span><span class="lineCov"> 62 : FacetData() : ofs(0), len(0) {}</span>
+<span class="lineNum"> 78 </span> :
+<span class="lineNum"> 79 </span> : TagData&amp; obtainTag(const std::string&amp; fullname);
+<span class="lineNum"> 80 </span> : };
+<span class="lineNum"> 81 </span> : std::map&lt;std::string, FacetData&gt; facets;
+<span class="lineNum"> 82 </span> : int tagCount;
+<span class="lineNum"> 83 </span> : FacetIndexer findexer;
+<span class="lineNum"> 84 </span> : TagIndexer tindexer;
+<span class="lineNum"> 85 </span> :
+<span class="lineNum"> 86 </span> : FacetData&amp; obtainFacet(const std::string&amp; name);
+<span class="lineNum"> 87 </span> : TagData&amp; obtainTag(const std::string&amp; fullname);
+<span class="lineNum"> 88 </span> :
+<span class="lineNum"> 89 </span> : public:
+<span class="lineNum"> 90 </span><span class="lineCov"> 7 : VocabularyMerger() : tagCount(0), findexer(*this), tindexer(*this) {}</span>
+<span class="lineNum"> 91 </span> :
+<span class="lineNum"> 92 </span> : /**
+<span class="lineNum"> 93 </span> : * Check if there is any data in the merged vocabulary
+<span class="lineNum"> 94 </span> : */
+<span class="lineNum"> 95 </span><span class="lineCov"> 3 : bool empty() const { return facets.empty(); }</span>
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span> : /**
+<span class="lineNum"> 98 </span> : * Parse and import the vocabulary from `input', merging the data with the
+<span class="lineNum"> 99 </span> : * previously imported ones
+<span class="lineNum"> 100 </span> : */
+<span class="lineNum"> 101 </span> : void read(tagcoll::input::Input&amp; input);
+<span class="lineNum"> 102 </span> :
+<span class="lineNum"> 103 </span> : /**
+<span class="lineNum"> 104 </span> : * Write the vocabulary data to the given file
+<span class="lineNum"> 105 </span> : */
+<span class="lineNum"> 106 </span> : void write(const std::string&amp; fname);
+<span class="lineNum"> 107 </span> :
+<span class="lineNum"> 108 </span> : /**
+<span class="lineNum"> 109 </span> : * Write the vocabulary data to the given output stream
+<span class="lineNum"> 110 </span> : */
+<span class="lineNum"> 111 </span> : void write(FILE* out);
+<span class="lineNum"> 112 </span> :
+<span class="lineNum"> 113 </span> : /**
+<span class="lineNum"> 114 </span> : * Get the facet indexer.
+<span class="lineNum"> 115 </span> : *
+<span class="lineNum"> 116 </span> : * Note: the indexers will only be functional after one of the write
+<span class="lineNum"> 117 </span> : * methods have been invoked
+<span class="lineNum"> 118 </span> : */
+<span class="lineNum"> 119 </span><span class="lineCov"> 7 : const tagcoll::diskindex::MMapIndexer&amp; facetIndexer() const { return findexer; }</span>
+<span class="lineNum"> 120 </span> :
+<span class="lineNum"> 121 </span> : /**
+<span class="lineNum"> 122 </span> : * Get the tag indexer.
+<span class="lineNum"> 123 </span> : *
+<span class="lineNum"> 124 </span> : * Note: the indexers will only be functional after one of the write
+<span class="lineNum"> 125 </span> : * methods have been invoked
+<span class="lineNum"> 126 </span> : */
+<span class="lineNum"> 127 </span><span class="lineCov"> 7 : const tagcoll::diskindex::MMapIndexer&amp; tagIndexer() const { return tindexer; }</span>
+<span class="lineNum"> 128 </span> :
+<span class="lineNum"> 129 </span> : /**
+<span class="lineNum"> 130 </span> : * Check if the vocabulary contains the facet `name'
+<span class="lineNum"> 131 </span> : */
+<span class="lineNum"> 132 </span> : bool hasFacet(const std::string&amp; name) const
+<span class="lineNum"> 133 </span> : {
+<span class="lineNum"> 134 </span> : return facets.find(name) != facets.end();
+<span class="lineNum"> 135 </span> : }
+<span class="lineNum"> 136 </span> :
+<span class="lineNum"> 137 </span> : /**
+<span class="lineNum"> 138 </span> : * Check if the vocabulary contains the tag `fullname'
+<span class="lineNum"> 139 </span> : */
+<span class="lineNum"> 140 </span> : bool hasTag(const std::string&amp; fullname) const;
+<span class="lineNum"> 141 </span> :
+<span class="lineNum"> 142 </span> : /**
+<span class="lineNum"> 143 </span> : * Return the ID for the given tag (or -1 if not found)
+<span class="lineNum"> 144 </span> : */
+<span class="lineNum"> 145 </span> : int tagID(const std::string&amp; fullname) const;
+<span class="lineNum"> 146 </span> :
+<span class="lineNum"> 147 </span> : /**
+<span class="lineNum"> 148 </span> : * Return a set with all tag names
+<span class="lineNum"> 149 </span> : */
+<span class="lineNum"> 150 </span> : std::set&lt;std::string&gt; tagNames() const;
+<span class="lineNum"> 151 </span> : };
+<span class="lineNum"> 152 </span> :
+<span class="lineNum"> 153 </span> : }
+<span class="lineNum"> 154 </span> : }
+<span class="lineNum"> 155 </span> :
+<span class="lineNum"> 156 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 157 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/maint/vocabularymerger.test.h.gcov.html b/rep/ept/debtags/maint/vocabularymerger.test.h.gcov.html
new file mode 100644
index 0000000..c9315e6
--- /dev/null
+++ b/rep/ept/debtags/maint/vocabularymerger.test.h.gcov.html
@@ -0,0 +1,211 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/maint/vocabularymerger.test.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/debtags/maint</a> - vocabularymerger.test.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">52</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">52</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /*
+<span class="lineNum"> 2 </span> : * Merge different vocabularies together and create the tag and facet indexes
+<span class="lineNum"> 3 </span> : *
+<span class="lineNum"> 4 </span> : * Copyright (C) 2003-2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 5 </span> : *
+<span class="lineNum"> 6 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 7 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 8 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 9 </span> : * (at your option) any later version.
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 12 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 13 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 14 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 17 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 18 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 19 </span> : */
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : #include &lt;wibble/test.h&gt;
+<span class="lineNum"> 22 </span> : #include &lt;ept/debtags/maint/vocabularymerger.h&gt;
+<span class="lineNum"> 23 </span> : #include &lt;tagcoll/input/string.h&gt;
+<span class="lineNum"> 24 </span> :
+<span class="lineNum"> 25 </span> : using namespace std;
+<span class="lineNum"> 26 </span> : using namespace tagcoll;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : struct TestVocabularyMerger {
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span><span class="lineCov"> 14 : inline static const char* indexref(const char* index, int id)</span>
+<span class="lineNum"> 31 </span> : {
+<span class="lineNum"> 32 </span><span class="lineCov"> 14 : return index + ((int*)index)[id];</span>
+<span class="lineNum"> 33 </span> : }
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span><span class="lineCov"> 1 : Test _1()</span>
+<span class="lineNum"> 37 </span> : {
+<span class="lineNum"> 38 </span> : string voc1 =
+<span class="lineNum"> 39 </span> : &quot;Facet: taste\n&quot;
+<span class="lineNum"> 40 </span> : &quot;Description: Taste\n\n&quot;
+<span class="lineNum"> 41 </span> : &quot;Tag: taste::sweet\n&quot;
+<span class="lineNum"> 42 </span> : &quot;Description: Sweet\n\n&quot;
+<span class="lineNum"> 43 </span> : &quot;Tag: taste::salty\n&quot;
+<span class="lineNum"> 44 </span><span class="lineCov"> 1 : &quot;Description: Salty\n\n&quot;;</span>
+<span class="lineNum"> 45 </span> : string voc2 =
+<span class="lineNum"> 46 </span> : &quot;Facet: smell\n&quot;
+<span class="lineNum"> 47 </span> : &quot;Description: Smell\n\n&quot;
+<span class="lineNum"> 48 </span> : &quot;Tag: smell::fresh\n&quot;
+<span class="lineNum"> 49 </span> : &quot;Description: Fresh\n\n&quot;
+<span class="lineNum"> 50 </span> : &quot;Tag: smell::mold\n&quot;
+<span class="lineNum"> 51 </span><span class="lineCov"> 2 : &quot;Description: Mold\n\n&quot;;</span>
+<span class="lineNum"> 52 </span><span class="lineCov"> 1 : tagcoll::input::String in1(voc1);</span>
+<span class="lineNum"> 53 </span><span class="lineCov"> 1 : tagcoll::input::String in2(voc2);</span>
+<span class="lineNum"> 54 </span> :
+<span class="lineNum"> 55 </span><span class="lineCov"> 1 : ept::debtags::VocabularyMerger vm;</span>
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : // Read and merge the two vocabulary samples
+<span class="lineNum"> 58 </span><span class="lineCov"> 1 : vm.read(in1);</span>
+<span class="lineNum"> 59 </span><span class="lineCov"> 1 : vm.read(in2);</span>
+<span class="lineNum"> 60 </span> :
+<span class="lineNum"> 61 </span> : // Write the merged vocabulary to /dev/null (but generate offsets and indexes in the meantime)
+<span class="lineNum"> 62 </span><span class="lineCov"> 1 : vm.write(&quot;/dev/null&quot;);</span>
+<span class="lineNum"> 63 </span> :
+<span class="lineNum"> 64 </span> : // Create the facet index
+<span class="lineNum"> 65 </span><span class="lineCov"> 2 : char facetIndex[vm.facetIndexer().encodedSize()];</span>
+<span class="lineNum"> 66 </span><span class="lineCov"> 1 : vm.facetIndexer().encode(facetIndex);</span>
+<span class="lineNum"> 67 </span> :
+<span class="lineNum"> 68 </span> : // Create the tag index
+<span class="lineNum"> 69 </span><span class="lineCov"> 1 : char tagIndex[vm.tagIndexer().encodedSize()];</span>
+<span class="lineNum"> 70 </span><span class="lineCov"> 1 : vm.tagIndexer().encode(tagIndex);</span>
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span> : // Check that the facet names have been encoded correctly and in order
+<span class="lineNum"> 73 </span><span class="lineCov"> 1 : assert_eq(string(indexref(facetIndex, 0) + 4*sizeof(int)), &quot;smell&quot;);</span>
+<span class="lineNum"> 74 </span><span class="lineCov"> 2 : assert_eq(string(indexref(facetIndex, 1) + 4*sizeof(int)), &quot;taste&quot;);</span>
+<span class="lineNum"> 75 </span> :
+<span class="lineNum"> 76 </span> : // Check the first and last tag indexes for the facets
+<span class="lineNum"> 77 </span><span class="lineCov"> 2 : assert_eq(((int*)indexref(facetIndex, 0))[2], 0);</span>
+<span class="lineNum"> 78 </span><span class="lineCov"> 2 : assert_eq(((int*)indexref(facetIndex, 0))[3], 1);</span>
+<span class="lineNum"> 79 </span><span class="lineCov"> 2 : assert_eq(((int*)indexref(facetIndex, 1))[2], 2);</span>
+<span class="lineNum"> 80 </span><span class="lineCov"> 2 : assert_eq(((int*)indexref(facetIndex, 1))[3], 3);</span>
+<span class="lineNum"> 81 </span> :
+<span class="lineNum"> 82 </span> : // Check that the tag names have been encoded correctly and in order
+<span class="lineNum"> 83 </span><span class="lineCov"> 2 : assert_eq(string(indexref(tagIndex, 0) + 3*sizeof(int)), &quot;smell::fresh&quot;);</span>
+<span class="lineNum"> 84 </span><span class="lineCov"> 2 : assert_eq(string(indexref(tagIndex, 1) + 3*sizeof(int)), &quot;smell::mold&quot;);</span>
+<span class="lineNum"> 85 </span><span class="lineCov"> 2 : assert_eq(string(indexref(tagIndex, 2) + 3*sizeof(int)), &quot;taste::salty&quot;);</span>
+<span class="lineNum"> 86 </span><span class="lineCov"> 2 : assert_eq(string(indexref(tagIndex, 3) + 3*sizeof(int)), &quot;taste::sweet&quot;);</span>
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span> : // Check the facet indexes for the tags
+<span class="lineNum"> 89 </span><span class="lineCov"> 2 : assert_eq(((int*)indexref(tagIndex, 0))[2], 0);</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 2 : assert_eq(((int*)indexref(tagIndex, 1))[2], 0);</span>
+<span class="lineNum"> 91 </span><span class="lineCov"> 2 : assert_eq(((int*)indexref(tagIndex, 2))[2], 1);</span>
+<span class="lineNum"> 92 </span><span class="lineCov"> 2 : assert_eq(((int*)indexref(tagIndex, 3))[2], 1);</span>
+<span class="lineNum"> 93 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 94 </span> :
+<span class="lineNum"> 95 </span> : // Test parsing a vocabulary with a tag without a defined facet
+<span class="lineNum"> 96 </span><span class="lineCov"> 1 : Test _2()</span>
+<span class="lineNum"> 97 </span> : {
+<span class="lineNum"> 98 </span> : string voc =
+<span class="lineNum"> 99 </span> : &quot;Tag: foo::bar\n&quot;
+<span class="lineNum"> 100 </span> : &quot;Description: Tag without facet\n&quot;
+<span class="lineNum"> 101 </span><span class="lineCov"> 1 : &quot; VocabularyMerged should behave fine in this case.\n\n&quot;;</span>
+<span class="lineNum"> 102 </span><span class="lineCov"> 1 : tagcoll::input::String in(voc);</span>
+<span class="lineNum"> 103 </span> :
+<span class="lineNum"> 104 </span><span class="lineCov"> 1 : ept::debtags::VocabularyMerger vm;</span>
+<span class="lineNum"> 105 </span><span class="lineCov"> 1 : vm.read(in);</span>
+<span class="lineNum"> 106 </span> :
+<span class="lineNum"> 107 </span> : // Write the merged vocabulary to /dev/null (but generate offsets and indexes in the meantime)
+<span class="lineNum"> 108 </span><span class="lineCov"> 1 : vm.write(&quot;/dev/null&quot;);</span>
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span> : // Create the facet index
+<span class="lineNum"> 111 </span><span class="lineCov"> 2 : char facetIndex[vm.facetIndexer().encodedSize()];</span>
+<span class="lineNum"> 112 </span><span class="lineCov"> 1 : vm.facetIndexer().encode(facetIndex);</span>
+<span class="lineNum"> 113 </span> :
+<span class="lineNum"> 114 </span> : // Create the tag index
+<span class="lineNum"> 115 </span><span class="lineCov"> 1 : char tagIndex[vm.tagIndexer().encodedSize()];</span>
+<span class="lineNum"> 116 </span><span class="lineCov"> 1 : vm.tagIndexer().encode(tagIndex);</span>
+<span class="lineNum"> 117 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 118 </span> :
+<span class="lineNum"> 119 </span> : // Test parsing a vocabulary with a facet without tags
+<span class="lineNum"> 120 </span><span class="lineCov"> 1 : Test _3()</span>
+<span class="lineNum"> 121 </span> : {
+<span class="lineNum"> 122 </span> : string voc =
+<span class="lineNum"> 123 </span> : &quot;Facet: empty\n&quot;
+<span class="lineNum"> 124 </span> : &quot;Description: Facet without tags\n&quot;
+<span class="lineNum"> 125 </span><span class="lineCov"> 1 : &quot; VocabularyMerged used to segfault in this case.\n\n&quot;;</span>
+<span class="lineNum"> 126 </span><span class="lineCov"> 1 : tagcoll::input::String in(voc);</span>
+<span class="lineNum"> 127 </span> :
+<span class="lineNum"> 128 </span><span class="lineCov"> 1 : ept::debtags::VocabularyMerger vm;</span>
+<span class="lineNum"> 129 </span><span class="lineCov"> 1 : vm.read(in);</span>
+<span class="lineNum"> 130 </span> :
+<span class="lineNum"> 131 </span> : // Write the merged vocabulary to /dev/null (but generate offsets and indexes in the meantime)
+<span class="lineNum"> 132 </span><span class="lineCov"> 1 : vm.write(&quot;/dev/null&quot;);</span>
+<span class="lineNum"> 133 </span> :
+<span class="lineNum"> 134 </span> : // Create the facet index
+<span class="lineNum"> 135 </span><span class="lineCov"> 2 : char facetIndex[vm.facetIndexer().encodedSize()];</span>
+<span class="lineNum"> 136 </span><span class="lineCov"> 1 : vm.facetIndexer().encode(facetIndex);</span>
+<span class="lineNum"> 137 </span> :
+<span class="lineNum"> 138 </span> : // Create the tag index
+<span class="lineNum"> 139 </span><span class="lineCov"> 1 : char tagIndex[vm.tagIndexer().encodedSize()];</span>
+<span class="lineNum"> 140 </span><span class="lineCov"> 1 : vm.tagIndexer().encode(tagIndex);</span>
+<span class="lineNum"> 141 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 142 </span> :
+<span class="lineNum"> 143 </span> : };
+<span class="lineNum"> 144 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/tag.cc.gcov.html b/rep/ept/debtags/tag.cc.gcov.html
new file mode 100644
index 0000000..180196e
--- /dev/null
+++ b/rep/ept/debtags/tag.cc.gcov.html
@@ -0,0 +1,205 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/tag.cc</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/debtags</a> - tag.cc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">59</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">74.6 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">44</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /* -*- C++ -*-
+<span class="lineNum"> 2 </span> : * Copyright (C) 2005,2006 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 3 </span> : *
+<span class="lineNum"> 4 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 5 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 6 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 7 </span> : * (at your option) any later version.
+<span class="lineNum"> 8 </span> : *
+<span class="lineNum"> 9 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 10 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 11 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 12 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 13 </span> : *
+<span class="lineNum"> 14 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 15 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 16 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 17 </span> : */
+<span class="lineNum"> 18 </span> :
+<span class="lineNum"> 19 </span> : #include &lt;ept/debtags/tag.h&gt;
+<span class="lineNum"> 20 </span> : #include &lt;ept/debtags/vocabulary.h&gt;
+<span class="lineNum"> 21 </span> : #include &lt;stdexcept&gt;
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : namespace ept {
+<span class="lineNum"> 24 </span> : namespace debtags {
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : static inline std::string constget(const std::map&lt;std::string, std::string&gt;&amp; m,
+<span class="lineNum"> 27 </span><span class="lineCov"> 3898 : const std::string&amp; key)</span>
+<span class="lineNum"> 28 </span> : {
+<span class="lineNum"> 29 </span><span class="lineCov"> 3898 : std::map&lt;std::string, std::string&gt;::const_iterator i = m.find(key);</span>
+<span class="lineNum"> 30 </span><span class="lineCov"> 3898 : if (i == m.end())</span>
+<span class="lineNum"> 31 </span><span class="lineCov"> 4 : return std::string();</span>
+<span class="lineNum"> 32 </span> : else
+<span class="lineNum"> 33 </span><span class="lineCov"> 3894 : return i-&gt;second;</span>
+<span class="lineNum"> 34 </span> : }
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span><span class="lineCov"> 59 : std::string Facet::name() const</span>
+<span class="lineNum"> 37 </span> : {
+<span class="lineNum"> 38 </span><span class="lineCov"> 59 : if (valid())</span>
+<span class="lineNum"> 39 </span><span class="lineCov"> 59 : return m_tags-&gt;facetName(m_id);</span>
+<span class="lineNum"> 40 </span><span class="lineNoCov"> 0 : throw std::out_of_range( &quot;No name for this facet&quot; );</span>
+<span class="lineNum"> 41 </span> : }
+<span class="lineNum"> 42 </span><span class="lineCov"> 29 : std::string Facet::name(const std::string&amp; d) const</span>
+<span class="lineNum"> 43 </span> : {
+<span class="lineNum"> 44 </span><span class="lineCov"> 29 : return valid() ? m_tags-&gt;facetName(m_id) : d;</span>
+<span class="lineNum"> 45 </span> : }
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span><span class="lineCov"> 59 : std::string Facet::shortDescription() const</span>
+<span class="lineNum"> 48 </span> : {
+<span class="lineNum"> 49 </span><span class="lineCov"> 59 : if (valid())</span>
+<span class="lineNum"> 50 </span><span class="lineCov"> 59 : return constget(m_tags-&gt;facetData(m_id), &quot;_SD_&quot;);</span>
+<span class="lineNum"> 51 </span><span class="lineNoCov"> 0 : throw std::out_of_range( &quot;No short description for this facet&quot; );</span>
+<span class="lineNum"> 52 </span> : }
+<span class="lineNum"> 53 </span><span class="lineCov"> 29 : std::string Facet::shortDescription(const std::string&amp; d) const</span>
+<span class="lineNum"> 54 </span> : {
+<span class="lineNum"> 55 </span><span class="lineCov"> 29 : return valid() ? constget(m_tags-&gt;facetData(m_id), &quot;_SD_&quot;) : d;</span>
+<span class="lineNum"> 56 </span> : }
+<span class="lineNum"> 57 </span> :
+<span class="lineNum"> 58 </span><span class="lineCov"> 59 : std::string Facet::longDescription() const</span>
+<span class="lineNum"> 59 </span> : {
+<span class="lineNum"> 60 </span><span class="lineCov"> 59 : if (valid())</span>
+<span class="lineNum"> 61 </span><span class="lineCov"> 59 : return constget(m_tags-&gt;facetData(m_id), &quot;Description&quot;);</span>
+<span class="lineNum"> 62 </span><span class="lineNoCov"> 0 : throw std::out_of_range( &quot;No long description for this facet&quot; );</span>
+<span class="lineNum"> 63 </span> : }
+<span class="lineNum"> 64 </span><span class="lineCov"> 29 : std::string Facet::longDescription(const std::string&amp; d) const</span>
+<span class="lineNum"> 65 </span> : {
+<span class="lineNum"> 66 </span><span class="lineCov"> 29 : return valid() ? constget(m_tags-&gt;facetData(m_id), &quot;Description&quot;) : d;</span>
+<span class="lineNum"> 67 </span> : }
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span><span class="lineNoCov"> 0 : bool Facet::hasTag(const std::string&amp; name) const</span>
+<span class="lineNum"> 70 </span> : {
+<span class="lineNum"> 71 </span><span class="lineNoCov"> 0 : if (!valid())</span>
+<span class="lineNum"> 72 </span><span class="lineNoCov"> 0 : throw std::out_of_range( &quot;hasTag() called on an invalid facet&quot; );</span>
+<span class="lineNum"> 73 </span><span class="lineNoCov"> 0 : return m_tags-&gt;hasTag(this-&gt;name() + &quot;::&quot; + name);</span>
+<span class="lineNum"> 74 </span> : }
+<span class="lineNum"> 75 </span> :
+<span class="lineNum"> 76 </span><span class="lineCov"> 89 : std::set&lt; Tag &gt; Facet::tags() const</span>
+<span class="lineNum"> 77 </span> : {
+<span class="lineNum"> 78 </span><span class="lineCov"> 89 : if (!valid())</span>
+<span class="lineNum"> 79 </span><span class="lineCov"> 1 : throw std::out_of_range( &quot;tags() called on an invalid facet&quot; );</span>
+<span class="lineNum"> 80 </span><span class="lineCov"> 88 : return m_tags-&gt;tags(m_id);</span>
+<span class="lineNum"> 81 </span> : }
+<span class="lineNum"> 82 </span> :
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span><span class="lineNoCov"> 0 : Facet Tag::facet() const</span>
+<span class="lineNum"> 85 </span> : {
+<span class="lineNum"> 86 </span><span class="lineNoCov"> 0 : if (valid())</span>
+<span class="lineNum"> 87 </span><span class="lineNoCov"> 0 : return m_tags-&gt;facetByTag(m_id);</span>
+<span class="lineNum"> 88 </span><span class="lineNoCov"> 0 : throw std::out_of_range( &quot;No facet for this tag&quot; );</span>
+<span class="lineNum"> 89 </span> : }
+<span class="lineNum"> 90 </span> :
+<span class="lineNum"> 91 </span><span class="lineCov"> 1243 : std::string Tag::name() const</span>
+<span class="lineNum"> 92 </span> : {
+<span class="lineNum"> 93 </span><span class="lineCov"> 1243 : if (valid())</span>
+<span class="lineNum"> 94 </span><span class="lineCov"> 1243 : return m_tags-&gt;tagShortName(m_id);</span>
+<span class="lineNum"> 95 </span><span class="lineNoCov"> 0 : throw std::out_of_range( &quot;No name for this tag&quot; );</span>
+<span class="lineNum"> 96 </span> : }
+<span class="lineNum"> 97 </span><span class="lineCov"> 620 : std::string Tag::name(const std::string&amp; d) const</span>
+<span class="lineNum"> 98 </span> : {
+<span class="lineNum"> 99 </span><span class="lineCov"> 620 : return valid() ? m_tags-&gt;tagShortName(m_id) : d;</span>
+<span class="lineNum"> 100 </span> : }
+<span class="lineNum"> 101 </span> :
+<span class="lineNum"> 102 </span><span class="lineCov"> 1284 : std::string Tag::fullname() const</span>
+<span class="lineNum"> 103 </span> : {
+<span class="lineNum"> 104 </span><span class="lineCov"> 1284 : if (valid())</span>
+<span class="lineNum"> 105 </span><span class="lineCov"> 1284 : return m_tags-&gt;tagName(m_id);</span>
+<span class="lineNum"> 106 </span><span class="lineNoCov"> 0 : throw std::out_of_range( &quot;No full name for this tag&quot; );</span>
+<span class="lineNum"> 107 </span> : }
+<span class="lineNum"> 108 </span><span class="lineCov"> 620 : std::string Tag::fullname(const std::string&amp; d) const</span>
+<span class="lineNum"> 109 </span> : {
+<span class="lineNum"> 110 </span><span class="lineCov"> 620 : return valid() ? m_tags-&gt;tagName(m_id) : d;</span>
+<span class="lineNum"> 111 </span> : }
+<span class="lineNum"> 112 </span> :
+<span class="lineNum"> 113 </span><span class="lineCov"> 1242 : std::string Tag::shortDescription() const</span>
+<span class="lineNum"> 114 </span> : {
+<span class="lineNum"> 115 </span><span class="lineCov"> 1242 : if (valid())</span>
+<span class="lineNum"> 116 </span><span class="lineCov"> 1242 : return constget(m_tags-&gt;tagData(m_id), &quot;_SD_&quot;);</span>
+<span class="lineNum"> 117 </span><span class="lineNoCov"> 0 : throw std::out_of_range( &quot;No short description for this tag&quot; );</span>
+<span class="lineNum"> 118 </span> : }
+<span class="lineNum"> 119 </span><span class="lineCov"> 620 : std::string Tag::shortDescription(const std::string&amp; d) const</span>
+<span class="lineNum"> 120 </span> : {
+<span class="lineNum"> 121 </span><span class="lineCov"> 620 : return valid() ? constget(m_tags-&gt;tagData(m_id), &quot;_SD_&quot;) : d;</span>
+<span class="lineNum"> 122 </span> : }
+<span class="lineNum"> 123 </span> :
+<span class="lineNum"> 124 </span><span class="lineCov"> 1240 : std::string Tag::longDescription() const</span>
+<span class="lineNum"> 125 </span> : {
+<span class="lineNum"> 126 </span><span class="lineCov"> 1240 : if (valid())</span>
+<span class="lineNum"> 127 </span><span class="lineCov"> 1240 : return constget(m_tags-&gt;tagData(m_id), &quot;Description&quot;);</span>
+<span class="lineNum"> 128 </span><span class="lineNoCov"> 0 : throw std::out_of_range( &quot;No long description for this tag&quot; );</span>
+<span class="lineNum"> 129 </span> : }
+<span class="lineNum"> 130 </span><span class="lineCov"> 620 : std::string Tag::longDescription(const std::string&amp; d) const</span>
+<span class="lineNum"> 131 </span> : {
+<span class="lineNum"> 132 </span><span class="lineCov"> 620 : return valid() ? constget(m_tags-&gt;tagData(m_id), &quot;Description&quot;) : d;</span>
+<span class="lineNum"> 133 </span> : }
+<span class="lineNum"> 134 </span> :
+<span class="lineNum"> 135 </span> : }
+<span class="lineNum"> 136 </span> : }
+<span class="lineNum"> 137 </span> :
+<span class="lineNum"> 138 </span> : // vim:set ts=3 sw=3:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/tag.h.gcov.html b/rep/ept/debtags/tag.h.gcov.html
new file mode 100644
index 0000000..0695c3c
--- /dev/null
+++ b/rep/ept/debtags/tag.h.gcov.html
@@ -0,0 +1,318 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/tag.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/debtags</a> - tag.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">16</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">93.8 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">15</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- C++ -*-
+<span class="lineNum"> 2 </span> : #ifndef EPT_DEBTAGS_TAG_H
+<span class="lineNum"> 3 </span> : #define EPT_DEBTAGS_TAG_H
+<span class="lineNum"> 4 </span> :
+<span class="lineNum"> 5 </span> : /** \file
+<span class="lineNum"> 6 </span> : * Debtags facets and tags
+<span class="lineNum"> 7 </span> : */
+<span class="lineNum"> 8 </span> :
+<span class="lineNum"> 9 </span> : /*
+<span class="lineNum"> 10 </span> : * Copyright (C) 2005,2006,2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 11 </span> : *
+<span class="lineNum"> 12 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 13 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 14 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 15 </span> : * (at your option) any later version.
+<span class="lineNum"> 16 </span> : *
+<span class="lineNum"> 17 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 18 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 19 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 20 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 21 </span> : *
+<span class="lineNum"> 22 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 23 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 24 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 25 </span> : */
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #include &lt;set&gt;
+<span class="lineNum"> 28 </span> : #include &lt;string&gt;
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : namespace ept {
+<span class="lineNum"> 31 </span> : namespace debtags {
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : class Vocabulary;
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : class Tag;
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : /**
+<span class="lineNum"> 38 </span> : * Representation of a facet.
+<span class="lineNum"> 39 </span> : *
+<span class="lineNum"> 40 </span> : * ept::debtags::Facet represents a Facet with all its informations.
+<span class="lineNum"> 41 </span> : * It is guaranteed to have fast value-copy semantics, so it can be passed
+<span class="lineNum"> 42 </span> : * around freely and efficiently without worrying about memory management
+<span class="lineNum"> 43 </span> : * issues.
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * The class is normally instantiated using a Vocabulary:
+<span class="lineNum"> 46 </span> : * \code
+<span class="lineNum"> 47 </span> : * Facet facet = vocabulary.faceByName(&quot;made-of&quot;);
+<span class="lineNum"> 48 </span> : * \endcode
+<span class="lineNum"> 49 </span> : *
+<span class="lineNum"> 50 </span> : * Facets can contain an &quot;invalid&quot; value, in which case using any of their
+<span class="lineNum"> 51 </span> : * methods will likely produce segfault. The &quot;invalid&quot; facets are useful as
+<span class="lineNum"> 52 </span> : * &quot;none&quot; return values:
+<span class="lineNum"> 53 </span> : *
+<span class="lineNum"> 54 </span> : * \code
+<span class="lineNum"> 55 </span> : * Facet facet = vocabulary.facetByName(&quot;made-of&quot;);
+<span class="lineNum"> 56 </span> : * if (!facet)
+<span class="lineNum"> 57 </span> : * throw SomeException(&quot;facet \&quot;made-of\&quot; has not been defined&quot;);
+<span class="lineNum"> 58 </span> : * \endcode
+<span class="lineNum"> 59 </span> : */
+<span class="lineNum"> 60 </span> : class Facet
+<span class="lineNum"> 61 </span> : {
+<span class="lineNum"> 62 </span> : protected:
+<span class="lineNum"> 63 </span> : const Vocabulary* m_tags;
+<span class="lineNum"> 64 </span> : int m_id;
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span><span class="lineCov"> 120 : Facet(const Vocabulary* tags, int id) : m_tags(tags), m_id(id) {}</span>
+<span class="lineNum"> 67 </span> :
+<span class="lineNum"> 68 </span> : public:
+<span class="lineNum"> 69 </span> : Facet() : m_tags(0), m_id(-1) {}
+<span class="lineNum"> 70 </span><span class="lineCov"> 265 : ~Facet() {}</span>
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span><span class="lineCov"> 29 : bool operator==(const Facet&amp; f) const { return m_id == f.m_id; }</span>
+<span class="lineNum"> 73 </span> : bool operator!=(const Facet&amp; f) const { return m_id != f.m_id; }
+<span class="lineNum"> 74 </span><span class="lineCov"> 600 : bool operator&lt;(const Facet&amp; f) const { return m_id &lt; f.m_id; }</span>
+<span class="lineNum"> 75 </span> :
+<span class="lineNum"> 76 </span> : /**
+<span class="lineNum"> 77 </span> : * Return true if the facet is valid
+<span class="lineNum"> 78 </span> : */
+<span class="lineNum"> 79 </span><span class="lineNoCov"> 0 : operator bool() const { return m_id != -1; }</span>
+<span class="lineNum"> 80 </span><span class="lineCov"> 353 : bool valid() const { return m_id != -1; }</span>
+<span class="lineNum"> 81 </span> :
+<span class="lineNum"> 82 </span> : /**
+<span class="lineNum"> 83 </span> : * Return the name of the facet
+<span class="lineNum"> 84 </span> : * @throws std::out_of_range if the facet is not valid
+<span class="lineNum"> 85 </span> : */
+<span class="lineNum"> 86 </span> : std::string name() const;
+<span class="lineNum"> 87 </span> : /**
+<span class="lineNum"> 88 </span> : * Return the name of the facet
+<span class="lineNum"> 89 </span> : *
+<span class="lineNum"> 90 </span> : * Returns d if the facet is not valid.
+<span class="lineNum"> 91 </span> : */
+<span class="lineNum"> 92 </span> : std::string name(const std::string&amp; d) const;
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span> : /**
+<span class="lineNum"> 95 </span> : * Return the short description of the facet
+<span class="lineNum"> 96 </span> : * @throws std::out_of_range if the facet is not valid
+<span class="lineNum"> 97 </span> : */
+<span class="lineNum"> 98 </span> : std::string shortDescription() const;
+<span class="lineNum"> 99 </span> : /**
+<span class="lineNum"> 100 </span> : * Return the short description of the facet
+<span class="lineNum"> 101 </span> : *
+<span class="lineNum"> 102 </span> : * Returns d if the facet is not valid.
+<span class="lineNum"> 103 </span> : */
+<span class="lineNum"> 104 </span> : std::string shortDescription(const std::string&amp; d) const;
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span> : /**
+<span class="lineNum"> 107 </span> : * Return the long description of the facet
+<span class="lineNum"> 108 </span> : * @throws std::out_of_range if the facet is not valid
+<span class="lineNum"> 109 </span> : */
+<span class="lineNum"> 110 </span> : std::string longDescription() const;
+<span class="lineNum"> 111 </span> : /**
+<span class="lineNum"> 112 </span> : * Return the long description of the facet
+<span class="lineNum"> 113 </span> : *
+<span class="lineNum"> 114 </span> : * Returns d if the facet is not valid.
+<span class="lineNum"> 115 </span> : */
+<span class="lineNum"> 116 </span> : std::string longDescription(const std::string&amp; d) const;
+<span class="lineNum"> 117 </span> :
+<span class="lineNum"> 118 </span> : /**
+<span class="lineNum"> 119 </span> : * Return true if the facet has a tag with the given name (name, not fullname)
+<span class="lineNum"> 120 </span> : */
+<span class="lineNum"> 121 </span> : bool hasTag(const std::string&amp; name) const;
+<span class="lineNum"> 122 </span> :
+<span class="lineNum"> 123 </span> : /**
+<span class="lineNum"> 124 </span> : * Return the list of tags in this facet
+<span class="lineNum"> 125 </span> : */
+<span class="lineNum"> 126 </span> : std::set&lt;Tag&gt; tags() const;
+<span class="lineNum"> 127 </span> :
+<span class="lineNum"> 128 </span> : /**
+<span class="lineNum"> 129 </span> : * Return the ID of this facet
+<span class="lineNum"> 130 </span> : *
+<span class="lineNum"> 131 </span> : * @warning This method is exported to help in writing tests, but it is not
+<span class="lineNum"> 132 </span> : * part of the normal API: do not use it, because future implementations may
+<span class="lineNum"> 133 </span> : * not be based on IDs and therefore not have this method.
+<span class="lineNum"> 134 </span> : */
+<span class="lineNum"> 135 </span><span class="lineCov"> 58 : int id() const { return m_id; }</span>
+<span class="lineNum"> 136 </span> :
+<span class="lineNum"> 137 </span> : friend class Vocabulary;
+<span class="lineNum"> 138 </span> : };
+<span class="lineNum"> 139 </span> :
+<span class="lineNum"> 140 </span> : /**
+<span class="lineNum"> 141 </span> : * Representation of a tag.
+<span class="lineNum"> 142 </span> : *
+<span class="lineNum"> 143 </span> : * ept::debtags::Tag represents a Tag with all its informations.
+<span class="lineNum"> 144 </span> : * It is guaranteed to have fast value-copy semantics, so it can be passed
+<span class="lineNum"> 145 </span> : * around freely and efficiently without worrying about memory management
+<span class="lineNum"> 146 </span> : * issues.
+<span class="lineNum"> 147 </span> : *
+<span class="lineNum"> 148 </span> : * The class is normally instantiated using a Vocabulary:
+<span class="lineNum"> 149 </span> : * \code
+<span class="lineNum"> 150 </span> : * Tag tag = vocabulary.tagByName(&quot;made-of::lang:c++&quot;);
+<span class="lineNum"> 151 </span> : * \endcode
+<span class="lineNum"> 152 </span> : *
+<span class="lineNum"> 153 </span> : * Tags can contain an &quot;invalid&quot; value, in which case using any of their
+<span class="lineNum"> 154 </span> : * methods will likely produce segfault. The &quot;invalid&quot; facets are useful as
+<span class="lineNum"> 155 </span> : * &quot;none&quot; return values:
+<span class="lineNum"> 156 </span> : *
+<span class="lineNum"> 157 </span> : * \code
+<span class="lineNum"> 158 </span> : * Tag tag = vocabulary.tagByName(&quot;made-of&quot;);
+<span class="lineNum"> 159 </span> : * if (!tag)
+<span class="lineNum"> 160 </span> : * throw SomeException(&quot;tag \&quot;mytag\&quot; has not been defined&quot;);
+<span class="lineNum"> 161 </span> : * \endcode
+<span class="lineNum"> 162 </span> : */
+<span class="lineNum"> 163 </span> : class Tag
+<span class="lineNum"> 164 </span> : {
+<span class="lineNum"> 165 </span> : protected:
+<span class="lineNum"> 166 </span> : const Vocabulary* m_tags;
+<span class="lineNum"> 167 </span> : int m_id;
+<span class="lineNum"> 168 </span> :
+<span class="lineNum"> 169 </span><span class="lineCov"> 745056 : Tag(const Vocabulary* tags, int id) : m_tags(tags), m_id(id) {}</span>
+<span class="lineNum"> 170 </span> :
+<span class="lineNum"> 171 </span> : public:
+<span class="lineNum"> 172 </span> : typedef std::set&lt; Tag &gt; Set;
+<span class="lineNum"> 173 </span> :
+<span class="lineNum"> 174 </span><span class="lineCov"> 2 : Tag() : m_tags(0), m_id(-1) {}</span>
+<span class="lineNum"> 175 </span><span class="lineCov"> 2229812 : ~Tag() {}</span>
+<span class="lineNum"> 176 </span> :
+<span class="lineNum"> 177 </span><span class="lineCov"> 1228 : bool operator==(const Tag&amp; f) const { return m_id == f.m_id; }</span>
+<span class="lineNum"> 178 </span><span class="lineCov"> 5 : bool operator!=(const Tag&amp; f) const { return m_id != f.m_id; }</span>
+<span class="lineNum"> 179 </span><span class="lineCov"> 2300524 : bool operator&lt;(const Tag&amp; f) const { return m_id &lt; f.m_id; }</span>
+<span class="lineNum"> 180 </span> :
+<span class="lineNum"> 181 </span><span class="lineCov"> 1 : operator bool() const { return m_id != -1; }</span>
+<span class="lineNum"> 182 </span><span class="lineCov"> 324422 : bool valid() const { return m_id != -1; }</span>
+<span class="lineNum"> 183 </span> :
+<span class="lineNum"> 184 </span> : Facet facet() const;
+<span class="lineNum"> 185 </span> :
+<span class="lineNum"> 186 </span> : /**
+<span class="lineNum"> 187 </span> : * Return the name of the tag, without the facet:: prefix
+<span class="lineNum"> 188 </span> : * @throws std::out_of_range if the tag is not valid
+<span class="lineNum"> 189 </span> : */
+<span class="lineNum"> 190 </span> : std::string name() const;
+<span class="lineNum"> 191 </span> : /**
+<span class="lineNum"> 192 </span> : * Return the short description of the tag
+<span class="lineNum"> 193 </span> : *
+<span class="lineNum"> 194 </span> : * Returns d if the tag is not valid.
+<span class="lineNum"> 195 </span> : */
+<span class="lineNum"> 196 </span> : std::string name(const std::string&amp; d) const;
+<span class="lineNum"> 197 </span> :
+<span class="lineNum"> 198 </span> : /**
+<span class="lineNum"> 199 </span> : * Return the name of the tag, with the facet:: prefix
+<span class="lineNum"> 200 </span> : * @throws std::out_of_range if the tag is not valid
+<span class="lineNum"> 201 </span> : */
+<span class="lineNum"> 202 </span> : std::string fullname() const;
+<span class="lineNum"> 203 </span> : /**
+<span class="lineNum"> 204 </span> : * Return the short description of the tag
+<span class="lineNum"> 205 </span> : *
+<span class="lineNum"> 206 </span> : * Returns d if the tag is not valid.
+<span class="lineNum"> 207 </span> : */
+<span class="lineNum"> 208 </span> : std::string fullname(const std::string&amp; d) const;
+<span class="lineNum"> 209 </span> :
+<span class="lineNum"> 210 </span> : /**
+<span class="lineNum"> 211 </span> : * Return the short description of the tag
+<span class="lineNum"> 212 </span> : * @throws std::out_of_range if the tag is not valid
+<span class="lineNum"> 213 </span> : */
+<span class="lineNum"> 214 </span> : std::string shortDescription() const;
+<span class="lineNum"> 215 </span> : /**
+<span class="lineNum"> 216 </span> : * Return the short description of the tag
+<span class="lineNum"> 217 </span> : *
+<span class="lineNum"> 218 </span> : * Returns d if the tag is not valid.
+<span class="lineNum"> 219 </span> : */
+<span class="lineNum"> 220 </span> : std::string shortDescription(const std::string&amp; d) const;
+<span class="lineNum"> 221 </span> :
+<span class="lineNum"> 222 </span> : /**
+<span class="lineNum"> 223 </span> : * Return the long description of the tag
+<span class="lineNum"> 224 </span> : *
+<span class="lineNum"> 225 </span> : * @throws std::out_of_range if the tag is not valid
+<span class="lineNum"> 226 </span> : */
+<span class="lineNum"> 227 </span> : std::string longDescription() const;
+<span class="lineNum"> 228 </span> : /**
+<span class="lineNum"> 229 </span> : * Return the long description of the tag
+<span class="lineNum"> 230 </span> : *
+<span class="lineNum"> 231 </span> : * Returns d if the tag is not valid.
+<span class="lineNum"> 232 </span> : */
+<span class="lineNum"> 233 </span> : std::string longDescription(const std::string&amp; d) const;
+<span class="lineNum"> 234 </span> :
+<span class="lineNum"> 235 </span> : /**
+<span class="lineNum"> 236 </span> : * Return the ID of this tag
+<span class="lineNum"> 237 </span> : *
+<span class="lineNum"> 238 </span> : * @warning This method is exported to help in writing tests, but it is not
+<span class="lineNum"> 239 </span> : * part of the normal API: do not use it, because future implementations may
+<span class="lineNum"> 240 </span> : * not be based on IDs and therefore not have this method.
+<span class="lineNum"> 241 </span> : */
+<span class="lineNum"> 242 </span><span class="lineCov"> 106853 : int id() const { return m_id; }</span>
+<span class="lineNum"> 243 </span> :
+<span class="lineNum"> 244 </span> : friend class Vocabulary;
+<span class="lineNum"> 245 </span> : };
+<span class="lineNum"> 246 </span> :
+<span class="lineNum"> 247 </span> : }
+<span class="lineNum"> 248 </span> : }
+<span class="lineNum"> 249 </span> :
+<span class="lineNum"> 250 </span> : // vim:set ts=3 sw=3:
+<span class="lineNum"> 251 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/vocabulary.cc.gcov.html b/rep/ept/debtags/vocabulary.cc.gcov.html
new file mode 100644
index 0000000..9ebdb82
--- /dev/null
+++ b/rep/ept/debtags/vocabulary.cc.gcov.html
@@ -0,0 +1,297 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/vocabulary.cc</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/debtags</a> - vocabulary.cc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">102</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">95.1 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">97</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /* -*- C++ -*-
+<span class="lineNum"> 2 </span> : * Tag vocabulary access
+<span class="lineNum"> 3 </span> : *
+<span class="lineNum"> 4 </span> : * Copyright (C) 2003--2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 5 </span> : *
+<span class="lineNum"> 6 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 7 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 8 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 9 </span> : * (at your option) any later version.
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 12 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 13 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 14 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 17 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 18 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 19 </span> : */
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : #include &lt;ept/debtags/vocabulary.h&gt;
+<span class="lineNum"> 22 </span> : #include &lt;ept/debtags/maint/vocabularyindexer.h&gt;
+<span class="lineNum"> 23 </span> : #include &lt;ept/debtags/maint/debdbparser.h&gt;
+<span class="lineNum"> 24 </span> : #include &lt;ept/debtags/maint/path.h&gt;
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;tagcoll/input/memory.h&gt;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : #include &lt;cstring&gt;
+<span class="lineNum"> 29 </span> : #include &lt;sstream&gt;
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : #include &lt;sys/types.h&gt;
+<span class="lineNum"> 32 </span> : #include &lt;sys/stat.h&gt;
+<span class="lineNum"> 33 </span> : #include &lt;fcntl.h&gt;
+<span class="lineNum"> 34 </span> : #include &lt;sys/mman.h&gt;
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : using namespace tagcoll;
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : namespace ept {
+<span class="lineNum"> 39 </span> : namespace debtags {
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span><span class="lineCov"> 9 : int Vocabulary::FacetIndex::id(const char* name) const</span>
+<span class="lineNum"> 42 </span> : {
+<span class="lineNum"> 43 </span><span class="lineCov"> 9 : if (size() == 0) return -1;</span>
+<span class="lineNum"> 44 </span> : int begin, end;
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> : /* Binary search */
+<span class="lineNum"> 47 </span><span class="lineCov"> 9 : begin = -1, end = size();</span>
+<span class="lineNum"> 48 </span><span class="lineCov"> 62 : while (end - begin &gt; 1)</span>
+<span class="lineNum"> 49 </span> : {
+<span class="lineNum"> 50 </span><span class="lineCov"> 44 : int cur = (end + begin) / 2;</span>
+<span class="lineNum"> 51 </span><span class="lineCov"> 44 : if (strcmp(item(cur)-&gt;name, name) &gt; 0)</span>
+<span class="lineNum"> 52 </span><span class="lineCov"> 16 : end = cur;</span>
+<span class="lineNum"> 53 </span> : else
+<span class="lineNum"> 54 </span><span class="lineCov"> 28 : begin = cur;</span>
+<span class="lineNum"> 55 </span> : }
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span><span class="lineCov"> 9 : if (begin == -1 || strcmp(item(begin)-&gt;name, name) != 0)</span>
+<span class="lineNum"> 58 </span> : //throw NotFoundException(string(&quot;looking for the ID of string &quot;) + str);
+<span class="lineNum"> 59 </span><span class="lineCov"> 3 : return -1;</span>
+<span class="lineNum"> 60 </span> : else
+<span class="lineNum"> 61 </span><span class="lineCov"> 6 : return begin;</span>
+<span class="lineNum"> 62 </span> : }
+<span class="lineNum"> 63 </span> :
+<span class="lineNum"> 64 </span><span class="lineCov"> 1105769 : int tagcmp(const char* tag1, const char* tag2)</span>
+<span class="lineNum"> 65 </span> : {
+<span class="lineNum"> 66 </span><span class="lineCov"> 1105769 : const char* tsep1 = strstr(tag1, &quot;::&quot;);</span>
+<span class="lineNum"> 67 </span><span class="lineCov"> 1105769 : if (tsep1 == NULL) return strcmp(tag1, tag2);</span>
+<span class="lineNum"> 68 </span><span class="lineCov"> 1105766 : const char* tsep2 = strstr(tag2, &quot;::&quot;);</span>
+<span class="lineNum"> 69 </span><span class="lineCov"> 1105766 : if (tsep2 == NULL) return strcmp(tag1, tag2);</span>
+<span class="lineNum"> 70 </span> :
+<span class="lineNum"> 71 </span> : // See what is the length of the shortest facet
+<span class="lineNum"> 72 </span><span class="lineCov"> 1105766 : int len1 = tsep1 - tag1;</span>
+<span class="lineNum"> 73 </span><span class="lineCov"> 1105766 : int len2 = tsep2 - tag2;</span>
+<span class="lineNum"> 74 </span><span class="lineCov"> 1105766 : int minlen = len1 &lt; len2 ? len1 : len2;</span>
+<span class="lineNum"> 75 </span> :
+<span class="lineNum"> 76 </span><span class="lineCov"> 1105766 : int res = strncmp(tag1, tag2, minlen);</span>
+<span class="lineNum"> 77 </span><span class="lineCov"> 1105766 : if (res != 0)</span>
+<span class="lineNum"> 78 </span> : // Different facets
+<span class="lineNum"> 79 </span><span class="lineCov"> 454813 : return res;</span>
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span><span class="lineCov"> 650953 : if (len1 == len2)</span>
+<span class="lineNum"> 82 </span> : // If the facet is the same, compare the tags
+<span class="lineNum"> 83 </span><span class="lineCov"> 639402 : return strcmp(tsep1 + 2, tsep2 + 2);</span>
+<span class="lineNum"> 84 </span> : else
+<span class="lineNum"> 85 </span> : // Two facets with similar prefixes
+<span class="lineNum"> 86 </span><span class="lineCov"> 11551 : return len1 &lt; len2 ? -1 : 1;</span>
+<span class="lineNum"> 87 </span> : }
+<span class="lineNum"> 88 </span> :
+<span class="lineNum"> 89 </span><span class="lineCov"> 106377 : int Vocabulary::TagIndex::id(const char* name) const</span>
+<span class="lineNum"> 90 </span> : {
+<span class="lineNum"> 91 </span><span class="lineCov"> 106377 : if (size() == 0) return -1;</span>
+<span class="lineNum"> 92 </span> : int begin, end;
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span> : /* Binary search */
+<span class="lineNum"> 95 </span><span class="lineCov"> 106377 : begin = -1, end = size();</span>
+<span class="lineNum"> 96 </span><span class="lineCov"> 1212130 : while (end - begin &gt; 1)</span>
+<span class="lineNum"> 97 </span> : {
+<span class="lineNum"> 98 </span><span class="lineCov"> 999376 : int cur = (end + begin) / 2;</span>
+<span class="lineNum"> 99 </span><span class="lineCov"> 999376 : if (tagcmp(item(cur)-&gt;name, name) &gt; 0)</span>
+<span class="lineNum"> 100 </span><span class="lineCov"> 432389 : end = cur;</span>
+<span class="lineNum"> 101 </span> : else
+<span class="lineNum"> 102 </span><span class="lineCov"> 566987 : begin = cur;</span>
+<span class="lineNum"> 103 </span> : }
+<span class="lineNum"> 104 </span> :
+<span class="lineNum"> 105 </span><span class="lineCov"> 106377 : if (begin == -1 || tagcmp(item(begin)-&gt;name, name) != 0)</span>
+<span class="lineNum"> 106 </span> : //throw NotFoundException(string(&quot;looking for the ID of string &quot;) + str);
+<span class="lineNum"> 107 </span><span class="lineCov"> 132 : return -1;</span>
+<span class="lineNum"> 108 </span> : else
+<span class="lineNum"> 109 </span><span class="lineCov"> 106245 : return begin;</span>
+<span class="lineNum"> 110 </span> : }
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span><span class="lineCov"> 31 : Vocabulary::Vocabulary()</span>
+<span class="lineNum"> 113 </span><span class="lineCov"> 31 : : voc_fd(-1), voc_size(0), voc_buf(0)</span>
+<span class="lineNum"> 114 </span> : {
+<span class="lineNum"> 115 </span><span class="lineCov"> 31 : std::string vocfname;</span>
+<span class="lineNum"> 116 </span><span class="lineCov"> 31 : std::string idxfname;</span>
+<span class="lineNum"> 117 </span> :
+<span class="lineNum"> 118 </span><span class="lineCov"> 31 : if (!VocabularyIndexer::obtainWorkingVocabulary(vocfname, idxfname))</span>
+<span class="lineNum"> 119 </span> : {
+<span class="lineNum"> 120 </span><span class="lineCov"> 2 : m_timestamp = 0;</span>
+<span class="lineNum"> 121 </span><span class="lineCov"> 2 : return;</span>
+<span class="lineNum"> 122 </span> : }
+<span class="lineNum"> 123 </span> :
+<span class="lineNum"> 124 </span><span class="lineCov"> 29 : m_timestamp = Path::timestamp(idxfname);</span>
+<span class="lineNum"> 125 </span> :
+<span class="lineNum"> 126 </span><span class="lineCov"> 29 : mastermmap.init(idxfname);</span>
+<span class="lineNum"> 127 </span> :
+<span class="lineNum"> 128 </span> : // Initialize the facet and tag indexes
+<span class="lineNum"> 129 </span><span class="lineCov"> 29 : findex.init(mastermmap, 0);</span>
+<span class="lineNum"> 130 </span><span class="lineCov"> 29 : tindex.init(mastermmap, 1);</span>
+<span class="lineNum"> 131 </span> :
+<span class="lineNum"> 132 </span> : // MMap the vocabulary
+<span class="lineNum"> 133 </span> :
+<span class="lineNum"> 134 </span> : // Open the file
+<span class="lineNum"> 135 </span><span class="lineCov"> 29 : voc_fname = vocfname;</span>
+<span class="lineNum"> 136 </span><span class="lineCov"> 29 : if ((voc_fd = open(voc_fname.c_str(), O_RDONLY)) == -1)</span>
+<span class="lineNum"> 137 </span><span class="lineNoCov"> 0 : throw wibble::exception::File(voc_fname, &quot;opening vocabulary file&quot;);</span>
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span><span class="lineCov"> 29 : off_t size = lseek(voc_fd, 0, SEEK_END);</span>
+<span class="lineNum"> 140 </span><span class="lineCov"> 29 : if (size == (off_t)-1)</span>
+<span class="lineNum"> 141 </span><span class="lineNoCov"> 0 : throw wibble::exception::File(voc_fname, &quot;reading the size of vocabulary file&quot;);</span>
+<span class="lineNum"> 142 </span><span class="lineCov"> 29 : voc_size = size;</span>
+<span class="lineNum"> 143 </span> :
+<span class="lineNum"> 144 </span> : // Map the file into memory
+<span class="lineNum"> 145 </span><span class="lineCov"> 29 : if ((voc_buf = (const char*)mmap(0, voc_size, PROT_READ, MAP_PRIVATE, voc_fd, 0)) == MAP_FAILED)</span>
+<span class="lineNum"> 146 </span><span class="lineNoCov"> 0 : throw wibble::exception::File(voc_fname, &quot;mmapping vocabulary file&quot;);</span>
+<span class="lineNum"> 147 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 148 </span> :
+<span class="lineNum"> 149 </span><span class="lineCov"> 31 : Vocabulary::~Vocabulary()</span>
+<span class="lineNum"> 150 </span> : {
+<span class="lineNum"> 151 </span> : // Unmap and close the file
+<span class="lineNum"> 152 </span><span class="lineCov"> 31 : if (voc_buf)</span>
+<span class="lineNum"> 153 </span><span class="lineCov"> 29 : munmap((void*)voc_buf, voc_size);</span>
+<span class="lineNum"> 154 </span><span class="lineCov"> 31 : if (voc_fd != -1)</span>
+<span class="lineNum"> 155 </span><span class="lineCov"> 29 : close(voc_fd);</span>
+<span class="lineNum"> 156 </span><span class="lineCov"> 31 : }</span>
+<span class="lineNum"> 157 </span> :
+<span class="lineNum"> 158 </span><span class="lineCov"> 120 : Facet Vocabulary::facetByID(int id) const</span>
+<span class="lineNum"> 159 </span> : {
+<span class="lineNum"> 160 </span><span class="lineCov"> 120 : return Facet(this, id);</span>
+<span class="lineNum"> 161 </span> : }
+<span class="lineNum"> 162 </span> :
+<span class="lineNum"> 163 </span><span class="lineCov"> 745056 : Tag Vocabulary::tagByID(int id) const</span>
+<span class="lineNum"> 164 </span> : {
+<span class="lineNum"> 165 </span><span class="lineCov"> 745056 : return Tag(this, id);</span>
+<span class="lineNum"> 166 </span> : }
+<span class="lineNum"> 167 </span> :
+<span class="lineNum"> 168 </span><span class="lineCov"> 1301 : void Vocabulary::parseVocBuf(std::map&lt;std::string, std::string&gt;&amp; res, size_t ofs, size_t len) const</span>
+<span class="lineNum"> 169 </span> : {
+<span class="lineNum"> 170 </span> : // Access the right part of the mmapped buffer
+<span class="lineNum"> 171 </span><span class="lineCov"> 1301 : std::stringstream name;</span>
+<span class="lineNum"> 172 </span><span class="lineCov"> 1301 : name &lt;&lt; voc_fname &lt;&lt; '+' &lt;&lt; ofs &lt;&lt; '-' &lt;&lt; len;</span>
+<span class="lineNum"> 173 </span><span class="lineCov"> 1301 : input::Memory in(name.str(), voc_buf + ofs, len);</span>
+<span class="lineNum"> 174 </span><span class="lineCov"> 1301 : DebDBParser parser(in);</span>
+<span class="lineNum"> 175 </span> : // Parse the raw string data and store it in the cache vector
+<span class="lineNum"> 176 </span><span class="lineCov"> 1301 : parser.nextRecord(res);</span>
+<span class="lineNum"> 177 </span> :
+<span class="lineNum"> 178 </span><span class="lineCov"> 1301 : std::string desc = res[&quot;Description&quot;];</span>
+<span class="lineNum"> 179 </span><span class="lineCov"> 2602 : if (!desc.empty())</span>
+<span class="lineNum"> 180 </span> : {
+<span class="lineNum"> 181 </span><span class="lineCov"> 1298 : size_t pos = desc.find('\n');</span>
+<span class="lineNum"> 182 </span><span class="lineCov"> 1298 : if (pos == std::string::npos)</span>
+<span class="lineNum"> 183 </span><span class="lineCov"> 849 : res[&quot;_SD_&quot;] = desc;</span>
+<span class="lineNum"> 184 </span> : else
+<span class="lineNum"> 185 </span><span class="lineCov"> 449 : res[&quot;_SD_&quot;] = desc.substr(0, pos);</span>
+<span class="lineNum"> 186 </span><span class="lineCov"> 1301 : }</span>
+<span class="lineNum"> 187 </span><span class="lineCov"> 1301 : }</span>
+<span class="lineNum"> 188 </span> :
+<span class="lineNum"> 189 </span><span class="lineCov"> 1863 : std::string Vocabulary::tagShortName(int id) const</span>
+<span class="lineNum"> 190 </span> : {
+<span class="lineNum"> 191 </span><span class="lineCov"> 1863 : const char* fullname = tindex.name(id);</span>
+<span class="lineNum"> 192 </span><span class="lineCov"> 1863 : char* sub = strstr(fullname, &quot;::&quot;);</span>
+<span class="lineNum"> 193 </span><span class="lineCov"> 1863 : if (sub != NULL)</span>
+<span class="lineNum"> 194 </span><span class="lineCov"> 1863 : return sub + 2;</span>
+<span class="lineNum"> 195 </span> : else
+<span class="lineNum"> 196 </span><span class="lineNoCov"> 0 : return fullname;</span>
+<span class="lineNum"> 197 </span> : }
+<span class="lineNum"> 198 </span> :
+<span class="lineNum"> 199 </span><span class="lineCov"> 176 : const std::map&lt;std::string, std::string&gt;&amp; Vocabulary::facetData(int id) const</span>
+<span class="lineNum"> 200 </span> : {
+<span class="lineNum"> 201 </span><span class="lineCov"> 176 : if (id &lt; 0) return emptyData;</span>
+<span class="lineNum"> 202 </span> :
+<span class="lineNum"> 203 </span> : // Enlarge the cache vector if needed
+<span class="lineNum"> 204 </span><span class="lineCov"> 176 : if ((unsigned)id &gt;= m_facetData.size())</span>
+<span class="lineNum"> 205 </span><span class="lineCov"> 59 : m_facetData.resize(id + 1);</span>
+<span class="lineNum"> 206 </span> :
+<span class="lineNum"> 207 </span><span class="lineCov"> 176 : if (m_facetData[id].empty())</span>
+<span class="lineNum"> 208 </span><span class="lineCov"> 59 : parseVocBuf(m_facetData[id], findex.offset(id), findex.size(id));</span>
+<span class="lineNum"> 209 </span> :
+<span class="lineNum"> 210 </span><span class="lineCov"> 176 : return m_facetData[id];</span>
+<span class="lineNum"> 211 </span> : }
+<span class="lineNum"> 212 </span> :
+<span class="lineNum"> 213 </span><span class="lineCov"> 3722 : const std::map&lt;std::string, std::string&gt;&amp; Vocabulary::tagData(int id) const</span>
+<span class="lineNum"> 214 </span> : {
+<span class="lineNum"> 215 </span><span class="lineCov"> 3722 : if (id &lt; 0) return emptyData;</span>
+<span class="lineNum"> 216 </span> :
+<span class="lineNum"> 217 </span> : // Enlarge the cache vector if needed
+<span class="lineNum"> 218 </span><span class="lineCov"> 3722 : if ((unsigned)id &gt;= m_tagData.size())</span>
+<span class="lineNum"> 219 </span><span class="lineCov"> 1242 : m_tagData.resize(id + 1);</span>
+<span class="lineNum"> 220 </span> :
+<span class="lineNum"> 221 </span><span class="lineCov"> 3722 : if (m_tagData[id].empty())</span>
+<span class="lineNum"> 222 </span><span class="lineCov"> 1242 : parseVocBuf(m_tagData[id], tindex.offset(id), tindex.size(id));</span>
+<span class="lineNum"> 223 </span> :
+<span class="lineNum"> 224 </span><span class="lineCov"> 3722 : return m_tagData[id];</span>
+<span class="lineNum"> 225 </span> : }
+<span class="lineNum"> 226 </span> :
+<span class="lineNum"> 227 </span> : }
+<span class="lineNum"> 228 </span><span class="lineCov"> 6 : }</span>
+<span class="lineNum"> 229 </span> :
+<span class="lineNum"> 230 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/vocabulary.h.gcov.html b/rep/ept/debtags/vocabulary.h.gcov.html
new file mode 100644
index 0000000..b110f8c
--- /dev/null
+++ b/rep/ept/debtags/vocabulary.h.gcov.html
@@ -0,0 +1,349 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/vocabulary.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/debtags</a> - vocabulary.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">55</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">87.3 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">48</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef EPT_DEBTAGS_VOCABULARY_H
+<span class="lineNum"> 2 </span> : #define EPT_DEBTAGS_VOCABULARY_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** @file
+<span class="lineNum"> 5 </span> : * @author Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 6 </span> : * Debtags vocabulary access
+<span class="lineNum"> 7 </span> : */
+<span class="lineNum"> 8 </span> :
+<span class="lineNum"> 9 </span> : /*
+<span class="lineNum"> 10 </span> : * Copyright (C) 2003,2004,2005,2006,2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 11 </span> : *
+<span class="lineNum"> 12 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 13 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 14 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 15 </span> : * (at your option) any later version.
+<span class="lineNum"> 16 </span> : *
+<span class="lineNum"> 17 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 18 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 19 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 20 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 21 </span> : *
+<span class="lineNum"> 22 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 23 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 24 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 25 </span> : */
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #include &lt;ept/debtags/tag.h&gt;
+<span class="lineNum"> 28 </span> : #include &lt;tagcoll/diskindex/mmap.h&gt;
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : #include &lt;string&gt;
+<span class="lineNum"> 31 </span> : #include &lt;vector&gt;
+<span class="lineNum"> 32 </span> : #include &lt;map&gt;
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span> : namespace ept {
+<span class="lineNum"> 35 </span> : namespace debtags {
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : class Vocabulary
+<span class="lineNum"> 38 </span> : {
+<span class="lineNum"> 39 </span> : public:
+<span class="lineNum"> 40 </span> : class FacetIndex : public tagcoll::diskindex::MMap
+<span class="lineNum"> 41 </span> : {
+<span class="lineNum"> 42 </span> : protected:
+<span class="lineNum"> 43 </span> : // Layout of the data in the index
+<span class="lineNum"> 44 </span> : struct Item {
+<span class="lineNum"> 45 </span> : int offset;
+<span class="lineNum"> 46 </span> : int size;
+<span class="lineNum"> 47 </span> : int firsttag;
+<span class="lineNum"> 48 </span> : int lasttag;
+<span class="lineNum"> 49 </span> : const char name[];
+<span class="lineNum"> 50 </span> : };
+<span class="lineNum"> 51 </span><span class="lineCov"> 2393 : inline Item* item(int id) const</span>
+<span class="lineNum"> 52 </span> : {
+<span class="lineNum"> 53 </span><span class="lineCov"> 2393 : if (id &gt;= 0 &amp;&amp; (unsigned)id &lt; size())</span>
+<span class="lineNum"> 54 </span><span class="lineCov"> 2392 : return (Item*)(m_buf + ((int*)m_buf)[id]);</span>
+<span class="lineNum"> 55 </span><span class="lineCov"> 1 : return NULL;</span>
+<span class="lineNum"> 56 </span> : }
+<span class="lineNum"> 57 </span> :
+<span class="lineNum"> 58 </span> : public:
+<span class="lineNum"> 59 </span><span class="lineCov"> 31 : FacetIndex() : tagcoll::diskindex::MMap() {}</span>
+<span class="lineNum"> 60 </span> : FacetIndex(const tagcoll::diskindex::MasterMMap&amp; master, size_t idx)
+<span class="lineNum"> 61 </span> : : tagcoll::diskindex::MMap(master, idx) {}
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span> : /// Get the number of facets in the index
+<span class="lineNum"> 64 </span><span class="lineCov"> 2501 : size_t size() const { return m_size == 0 ? 0 : *(int*)m_buf / sizeof(int); }</span>
+<span class="lineNum"> 65 </span> : /// Get the offset of the facet data in the vocabulary for this facet
+<span class="lineNum"> 66 </span><span class="lineCov"> 59 : size_t offset(int id) const { Item* i = item(id); return i == NULL ? 0 : i-&gt;offset; }</span>
+<span class="lineNum"> 67 </span> : /// Get the size of the facet data in the vocabulary for this facet
+<span class="lineNum"> 68 </span><span class="lineCov"> 59 : size_t size(int id) const { Item* i = item(id); return i == NULL ? 0 : i-&gt;size; }</span>
+<span class="lineNum"> 69 </span> : /// Get the id of the first tag for this facet
+<span class="lineNum"> 70 </span><span class="lineCov"> 91 : int firsttag(int id) const { Item* i = item(id); return i == NULL ? -1 : i-&gt;firsttag; }</span>
+<span class="lineNum"> 71 </span> : /// Get the id of the last tag for this facet
+<span class="lineNum"> 72 </span><span class="lineCov"> 2043 : int lasttag(int id) const { Item* i = item(id); return i == NULL ? -1 : i-&gt;lasttag; }</span>
+<span class="lineNum"> 73 </span> : /// Get the name of this facet
+<span class="lineNum"> 74 </span><span class="lineCov"> 88 : const char* name(int id) const { Item* i = item(id); return i == NULL ? &quot;&quot; : i-&gt;name; }</span>
+<span class="lineNum"> 75 </span> : /// Get the ID of the facet with this name
+<span class="lineNum"> 76 </span> : int id(const char* name) const;
+<span class="lineNum"> 77 </span><span class="lineCov"> 7 : int id(const std::string&amp; name) const { return id(name.c_str()); }</span>
+<span class="lineNum"> 78 </span> : };
+<span class="lineNum"> 79 </span> :
+<span class="lineNum"> 80 </span> : class TagIndex : public tagcoll::diskindex::MMap
+<span class="lineNum"> 81 </span> : {
+<span class="lineNum"> 82 </span> : protected:
+<span class="lineNum"> 83 </span> : // Layout of the data in the index
+<span class="lineNum"> 84 </span> : struct Item {
+<span class="lineNum"> 85 </span> : int offset;
+<span class="lineNum"> 86 </span> : int size;
+<span class="lineNum"> 87 </span> : int facet;
+<span class="lineNum"> 88 </span> : const char name[];
+<span class="lineNum"> 89 </span> : };
+<span class="lineNum"> 90 </span><span class="lineCov"> 1112004 : inline Item* item(int id) const</span>
+<span class="lineNum"> 91 </span> : {
+<span class="lineNum"> 92 </span><span class="lineCov"> 1112004 : if (id &gt;= 0 &amp;&amp; (unsigned)id &lt; size())</span>
+<span class="lineNum"> 93 </span><span class="lineCov"> 1112004 : return (Item*)(m_buf + ((int*)m_buf)[id]);</span>
+<span class="lineNum"> 94 </span><span class="lineNoCov"> 0 : return NULL;</span>
+<span class="lineNum"> 95 </span> : }
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span> : public:
+<span class="lineNum"> 98 </span><span class="lineCov"> 31 : TagIndex() : tagcoll::diskindex::MMap() {}</span>
+<span class="lineNum"> 99 </span> : TagIndex(const tagcoll::diskindex::MasterMMap&amp; master, size_t idx)
+<span class="lineNum"> 100 </span> : : tagcoll::diskindex::MMap(master, idx) {}
+<span class="lineNum"> 101 </span> :
+<span class="lineNum"> 102 </span> : /// Get the number of tags in the index
+<span class="lineNum"> 103 </span><span class="lineCov"> 1327864 : size_t size() const { return m_size == 0 ? 0 : *(int*)m_buf / sizeof(int); }</span>
+<span class="lineNum"> 104 </span> : /// Get the offset of the facet data in the vocabulary for this tag
+<span class="lineNum"> 105 </span><span class="lineCov"> 1242 : size_t offset(int id) const { Item* i = item(id); return i == NULL ? 0 : i-&gt;offset; }</span>
+<span class="lineNum"> 106 </span> : /// Get the size of the facet data in the vocabulary for this tag
+<span class="lineNum"> 107 </span><span class="lineCov"> 1242 : size_t size(int id) const { Item* i = item(id); return i == NULL ? 0 : i-&gt;size; }</span>
+<span class="lineNum"> 108 </span> : /// Get the id of the facet for this tag
+<span class="lineNum"> 109 </span><span class="lineNoCov"> 0 : int facet(int id) const { Item* i = item(id); return i == NULL ? -1 : i-&gt;facet; }</span>
+<span class="lineNum"> 110 </span> : /// Get the name of this tag
+<span class="lineNum"> 111 </span><span class="lineCov"> 3767 : const char* name(int id) const { Item* i = item(id); return i == NULL ? &quot;&quot; : i-&gt;name; }</span>
+<span class="lineNum"> 112 </span> : /// Get the ID of the tag with this name
+<span class="lineNum"> 113 </span> : int id(const char* name) const;
+<span class="lineNum"> 114 </span><span class="lineCov"> 105755 : int id(const std::string&amp; name) const { return id(name.c_str()); }</span>
+<span class="lineNum"> 115 </span> : };
+<span class="lineNum"> 116 </span> :
+<span class="lineNum"> 117 </span> : protected:
+<span class="lineNum"> 118 </span> : // Master MMap index container
+<span class="lineNum"> 119 </span> : tagcoll::diskindex::MasterMMap mastermmap;
+<span class="lineNum"> 120 </span> :
+<span class="lineNum"> 121 </span> : time_t m_timestamp;
+<span class="lineNum"> 122 </span> :
+<span class="lineNum"> 123 </span> : // Mmapped vocabulary file
+<span class="lineNum"> 124 </span> : std::string voc_fname;
+<span class="lineNum"> 125 </span> : int voc_fd;
+<span class="lineNum"> 126 </span> : size_t voc_size;
+<span class="lineNum"> 127 </span> : const char* voc_buf;
+<span class="lineNum"> 128 </span> :
+<span class="lineNum"> 129 </span> : // Facet and tag indexes
+<span class="lineNum"> 130 </span> : FacetIndex findex;
+<span class="lineNum"> 131 </span> : TagIndex tindex;
+<span class="lineNum"> 132 </span> :
+<span class="lineNum"> 133 </span> : // Cached parsed facet and tag records
+<span class="lineNum"> 134 </span> : mutable std::vector&lt; std::map&lt;std::string, std::string&gt; &gt; m_facetData;
+<span class="lineNum"> 135 </span> : mutable std::vector&lt; std::map&lt;std::string, std::string&gt; &gt; m_tagData;
+<span class="lineNum"> 136 </span> : // Empty parsed data to return when data is asked for IDs == -1
+<span class="lineNum"> 137 </span> : std::map&lt;std::string, std::string&gt; emptyData;
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> : void parseVocBuf(std::map&lt;std::string, std::string&gt;&amp; res, size_t ofs, size_t len) const;
+<span class="lineNum"> 140 </span> :
+<span class="lineNum"> 141 </span> : public:
+<span class="lineNum"> 142 </span> : Vocabulary();
+<span class="lineNum"> 143 </span> : ~Vocabulary();
+<span class="lineNum"> 144 </span> :
+<span class="lineNum"> 145 </span> : /// Get the timestamp of when the index was last updated
+<span class="lineNum"> 146 </span> : time_t timestamp() const { return m_timestamp; }
+<span class="lineNum"> 147 </span> :
+<span class="lineNum"> 148 </span> : /// Return true if this data source has data, false if it's empty
+<span class="lineNum"> 149 </span><span class="lineCov"> 1 : bool hasData() const { return m_timestamp != 0; }</span>
+<span class="lineNum"> 150 </span> :
+<span class="lineNum"> 151 </span> : const FacetIndex&amp; facetIndex() const { return findex; }
+<span class="lineNum"> 152 </span> : const TagIndex&amp; tagIndex() const { return tindex; }
+<span class="lineNum"> 153 </span> :
+<span class="lineNum"> 154 </span> : /**
+<span class="lineNum"> 155 </span> : * Check if the vocabulary contains the facet `name'
+<span class="lineNum"> 156 </span> : */
+<span class="lineNum"> 157 </span><span class="lineCov"> 2 : bool hasFacet(const std::string&amp; name) const</span>
+<span class="lineNum"> 158 </span> : {
+<span class="lineNum"> 159 </span><span class="lineCov"> 2 : return findex.id(name.c_str()) != -1;</span>
+<span class="lineNum"> 160 </span> : }
+<span class="lineNum"> 161 </span> :
+<span class="lineNum"> 162 </span> : /**
+<span class="lineNum"> 163 </span> : * Check if the vocabulary contains the tag `fullname'
+<span class="lineNum"> 164 </span> : */
+<span class="lineNum"> 165 </span><span class="lineCov"> 622 : bool hasTag(const std::string&amp; fullname) const</span>
+<span class="lineNum"> 166 </span> : {
+<span class="lineNum"> 167 </span><span class="lineCov"> 622 : return tindex.id(fullname.c_str()) != -1;</span>
+<span class="lineNum"> 168 </span> : }
+<span class="lineNum"> 169 </span> :
+<span class="lineNum"> 170 </span> : /**
+<span class="lineNum"> 171 </span> : * Return the facet with the given name
+<span class="lineNum"> 172 </span> : */
+<span class="lineNum"> 173 </span> : Facet facetByID(int id) const;
+<span class="lineNum"> 174 </span> :
+<span class="lineNum"> 175 </span> : /**
+<span class="lineNum"> 176 </span> : * Return the tag with the given full name
+<span class="lineNum"> 177 </span> : */
+<span class="lineNum"> 178 </span> : Tag tagByID(int id) const;
+<span class="lineNum"> 179 </span> :
+<span class="lineNum"> 180 </span> : template&lt;typename IDS&gt;
+<span class="lineNum"> 181 </span><span class="lineCov"> 84590 : std::set&lt;Tag&gt; tagsByID(const IDS&amp; ids) const</span>
+<span class="lineNum"> 182 </span> : {
+<span class="lineNum"> 183 </span><span class="lineCov"> 84590 : std::set&lt;Tag&gt; res;</span>
+<span class="lineNum"> 184 </span><span class="lineCov"> 507017 : for (typename IDS::const_iterator i = ids.begin();</span>
+<span class="lineNum"> 185 </span> : i != ids.end(); ++i)
+<span class="lineNum"> 186 </span><span class="lineCov"> 422427 : res.insert(tagByID(*i));</span>
+<span class="lineNum"> 187 </span><span class="lineNoCov"> 0 : return res;</span>
+<span class="lineNum"> 188 </span> : }
+<span class="lineNum"> 189 </span> :
+<span class="lineNum"> 190 </span> : /**
+<span class="lineNum"> 191 </span> : * Return the facet for the tag with the given ID
+<span class="lineNum"> 192 </span> : */
+<span class="lineNum"> 193 </span><span class="lineNoCov"> 0 : Facet facetByTag(int id) const { return facetByID(tindex.facet(id)); }</span>
+<span class="lineNum"> 194 </span> :
+<span class="lineNum"> 195 </span> : /**
+<span class="lineNum"> 196 </span> : * Return the facet with the given name
+<span class="lineNum"> 197 </span> : */
+<span class="lineNum"> 198 </span><span class="lineCov"> 4 : Facet facetByName(const std::string&amp; name) const { return facetByID(findex.id(name)); }</span>
+<span class="lineNum"> 199 </span> :
+<span class="lineNum"> 200 </span> : /**
+<span class="lineNum"> 201 </span> : * Return the tag with the given full name
+<span class="lineNum"> 202 </span> : */
+<span class="lineNum"> 203 </span><span class="lineCov"> 105755 : Tag tagByName(const std::string&amp; fullname) const { return tagByID(tindex.id(fullname)); }</span>
+<span class="lineNum"> 204 </span> :
+<span class="lineNum"> 205 </span> : /**
+<span class="lineNum"> 206 </span> : * Return all the facets in the vocabulary
+<span class="lineNum"> 207 </span> : */
+<span class="lineNum"> 208 </span><span class="lineCov"> 4 : std::set&lt; Facet &gt; facets() const</span>
+<span class="lineNum"> 209 </span> : {
+<span class="lineNum"> 210 </span><span class="lineCov"> 4 : std::set&lt; Facet &gt; res;</span>
+<span class="lineNum"> 211 </span><span class="lineCov"> 91 : for (size_t i = 0; i &lt; findex.size(); i++)</span>
+<span class="lineNum"> 212 </span><span class="lineCov"> 87 : res.insert(facetByID(i));</span>
+<span class="lineNum"> 213 </span><span class="lineNoCov"> 0 : return res;</span>
+<span class="lineNum"> 214 </span> : }
+<span class="lineNum"> 215 </span> :
+<span class="lineNum"> 216 </span> : /**
+<span class="lineNum"> 217 </span> : * Return all the tags in the vocabulary
+<span class="lineNum"> 218 </span> : */
+<span class="lineNum"> 219 </span><span class="lineCov"> 6 : std::set&lt; Tag &gt; tags() const</span>
+<span class="lineNum"> 220 </span> : {
+<span class="lineNum"> 221 </span><span class="lineCov"> 6 : std::set&lt; Tag &gt; res;</span>
+<span class="lineNum"> 222 </span><span class="lineCov"> 3106 : for (size_t i = 0; i &lt; tindex.size(); i++)</span>
+<span class="lineNum"> 223 </span><span class="lineCov"> 3100 : res.insert(tagByID(i));</span>
+<span class="lineNum"> 224 </span><span class="lineNoCov"> 0 : return res;</span>
+<span class="lineNum"> 225 </span> : }
+<span class="lineNum"> 226 </span> :
+<span class="lineNum"> 227 </span> : /**
+<span class="lineNum"> 228 </span> : * Return the tags in the given facet
+<span class="lineNum"> 229 </span> : */
+<span class="lineNum"> 230 </span><span class="lineCov"> 91 : std::set&lt; Tag &gt; tags(int facet) const</span>
+<span class="lineNum"> 231 </span> : {
+<span class="lineNum"> 232 </span><span class="lineCov"> 91 : std::set&lt; Tag &gt; res;</span>
+<span class="lineNum"> 233 </span><span class="lineCov"> 2044 : for (int i = findex.firsttag(facet); i != -1 &amp;&amp; i &lt;= findex.lasttag(facet); i++)</span>
+<span class="lineNum"> 234 </span><span class="lineCov"> 1953 : res.insert(tagByID(i));</span>
+<span class="lineNum"> 235 </span><span class="lineNoCov"> 0 : return res;</span>
+<span class="lineNum"> 236 </span> : }
+<span class="lineNum"> 237 </span> :
+<span class="lineNum"> 238 </span><span class="lineCov"> 3 : std::set&lt; Tag &gt; tags(const std::string&amp; facetName) const</span>
+<span class="lineNum"> 239 </span> : {
+<span class="lineNum"> 240 </span><span class="lineCov"> 3 : return tags(findex.id(facetName));</span>
+<span class="lineNum"> 241 </span> : }
+<span class="lineNum"> 242 </span> :
+<span class="lineNum"> 243 </span> : std::set&lt; Tag &gt; tags(const Facet&amp; facet) const
+<span class="lineNum"> 244 </span> : {
+<span class="lineNum"> 245 </span> : return tags(facet.id());
+<span class="lineNum"> 246 </span> : }
+<span class="lineNum"> 247 </span> :
+<span class="lineNum"> 248 </span> : #if 0
+<span class="lineNum"> 249 </span> : /// Get the DerivedTagList with the Equates: expressions read from the vocabulary
+<span class="lineNum"> 250 </span> : const DerivedTagList&amp; getEquations() const throw () { return equations; }
+<span class="lineNum"> 251 </span> :
+<span class="lineNum"> 252 </span> : /// Get a set with all the facets present in the vocabulary that are matched by `filter'
+<span class="lineNum"> 253 </span> : FacetSet facets(const FacetMatcher&amp; filter) const throw () { return getFiltered(filter); }
+<span class="lineNum"> 254 </span> : #endif
+<span class="lineNum"> 255 </span> :
+<span class="lineNum"> 256 </span> : #if 0
+<span class="lineNum"> 257 </span> : // These functions are here just to be used by Facet and Tag. I'm not
+<span class="lineNum"> 258 </span> : // making them private because I don't want Facet and Tag to access other
+<span class="lineNum"> 259 </span> : // Vocabulary member, and other classes can't use these anyway as Facet::Data and
+<span class="lineNum"> 260 </span> : // Tag::Data are protected
+<span class="lineNum"> 261 </span> : const Facet::Data&amp; facetData(int idx) { return m_facets[idx]; }
+<span class="lineNum"> 262 </span> : const Tag::Data&amp; tagData(int idx) { return m_tags[idx]; }
+<span class="lineNum"> 263 </span> : #endif
+<span class="lineNum"> 264 </span> :
+<span class="lineNum"> 265 </span> : /// Get the facet name given the facet id
+<span class="lineNum"> 266 </span><span class="lineCov"> 88 : std::string facetName(int id) const { return findex.name(id); }</span>
+<span class="lineNum"> 267 </span> :
+<span class="lineNum"> 268 </span> : /// Get the tag name given the tag id
+<span class="lineNum"> 269 </span><span class="lineCov"> 1904 : std::string tagName(int id) const { return tindex.name(id); }</span>
+<span class="lineNum"> 270 </span> :
+<span class="lineNum"> 271 </span> : /// Get the tag name given the tag id
+<span class="lineNum"> 272 </span> : std::string tagShortName(int id) const;
+<span class="lineNum"> 273 </span> :
+<span class="lineNum"> 274 </span> : const std::map&lt;std::string, std::string&gt;&amp; facetData(int id) const;
+<span class="lineNum"> 275 </span> : const std::map&lt;std::string, std::string&gt;&amp; tagData(int id) const;
+<span class="lineNum"> 276 </span> : };
+<span class="lineNum"> 277 </span> :
+<span class="lineNum"> 278 </span> : }
+<span class="lineNum"> 279 </span> : }
+<span class="lineNum"> 280 </span> :
+<span class="lineNum"> 281 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 282 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/debtags/vocabulary.test.h.gcov.html b/rep/ept/debtags/vocabulary.test.h.gcov.html
new file mode 100644
index 0000000..b5b697a
--- /dev/null
+++ b/rep/ept/debtags/vocabulary.test.h.gcov.html
@@ -0,0 +1,385 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/debtags/vocabulary.test.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/debtags</a> - vocabulary.test.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">173</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">99.4 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">172</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /*
+<span class="lineNum"> 2 </span> : * Tag vocabulary access
+<span class="lineNum"> 3 </span> : *
+<span class="lineNum"> 4 </span> : * Copyright (C) 2003--2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 5 </span> : *
+<span class="lineNum"> 6 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 7 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 8 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 9 </span> : * (at your option) any later version.
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 12 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 13 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 14 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 17 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 18 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 19 </span> : */
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : #include &lt;wibble/test.h&gt;
+<span class="lineNum"> 22 </span> : #include &lt;ept/debtags/vocabulary.h&gt;
+<span class="lineNum"> 23 </span> : #include &lt;ept/debtags/maint/vocabularymerger.h&gt;
+<span class="lineNum"> 24 </span> : #include &lt;ept/debtags/maint/path.h&gt;
+<span class="lineNum"> 25 </span> : #include &lt;tagcoll/utils/set.h&gt;
+<span class="lineNum"> 26 </span> : #include &lt;tagcoll/input/stdio.h&gt;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : #include &quot;debtags.test.h&quot;
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : // This is not exported by default
+<span class="lineNum"> 31 </span> : namespace ept {
+<span class="lineNum"> 32 </span> : namespace debtags {
+<span class="lineNum"> 33 </span> : int tagcmp(const char* tag1, const char* tag2);
+<span class="lineNum"> 34 </span> : }
+<span class="lineNum"> 35 </span> : }
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : using namespace std;
+<span class="lineNum"> 38 </span> : using namespace tagcoll::utils;
+<span class="lineNum"> 39 </span> : using namespace ept::debtags;
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : struct TestVocabulary : DebtagsTestEnvironment
+<span class="lineNum"> 42 </span><span class="lineCov"> 38 : {</span>
+<span class="lineNum"> 43 </span> : Vocabulary m_tags;
+<span class="lineNum"> 44 </span><span class="lineCov"> 1298 : Vocabulary&amp; tags() { return m_tags; }</span>
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span><span class="lineCov"> 1 : Test _1()</span>
+<span class="lineNum"> 47 </span> : {
+<span class="lineNum"> 48 </span><span class="lineCov"> 1 : tags(); // this will throw if the open above didn't work</span>
+<span class="lineNum"> 49 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span><span class="lineCov"> 1 : Test _2()</span>
+<span class="lineNum"> 52 </span> : {
+<span class="lineNum"> 53 </span><span class="lineCov"> 1 : assert( tags().hasFacet( &quot;works-with&quot; ) );</span>
+<span class="lineNum"> 54 </span><span class="lineCov"> 2 : assert( !tags().hasFacet( &quot;blah&quot; ) );</span>
+<span class="lineNum"> 55 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span><span class="lineCov"> 1 : Test _3()</span>
+<span class="lineNum"> 58 </span> : {
+<span class="lineNum"> 59 </span><span class="lineCov"> 1 : assert( tags().hasTag( &quot;works-with::people&quot; ) );</span>
+<span class="lineNum"> 60 </span><span class="lineCov"> 2 : assert( !tags().hasTag( &quot;works-with::midgets&quot; ) );</span>
+<span class="lineNum"> 61 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span><span class="lineCov"> 1 : Test _4()</span>
+<span class="lineNum"> 64 </span> : {
+<span class="lineNum"> 65 </span><span class="lineCov"> 1 : Tag people = tags().tagByName( &quot;works-with::people&quot; ),</span>
+<span class="lineNum"> 66 </span><span class="lineCov"> 2 : midgets = tags().tagByName( &quot;works-with::midgets&quot; ),</span>
+<span class="lineNum"> 67 </span><span class="lineCov"> 2 : blahg = tags().tagByName( &quot;works-with::blahg&quot; ),</span>
+<span class="lineNum"> 68 </span><span class="lineCov"> 2 : text = tags().tagByName( &quot;works-with::text&quot; ),</span>
+<span class="lineNum"> 69 </span><span class="lineCov"> 2 : people2 = tags().tagByName( &quot;works-with::people&quot; );</span>
+<span class="lineNum"> 70 </span><span class="lineCov"> 2 : assert( people != midgets );</span>
+<span class="lineNum"> 71 </span><span class="lineCov"> 2 : assert( people != text );</span>
+<span class="lineNum"> 72 </span><span class="lineCov"> 2 : assert( people != blahg );</span>
+<span class="lineNum"> 73 </span><span class="lineCov"> 2 : assert( midgets == blahg );</span>
+<span class="lineNum"> 74 </span><span class="lineCov"> 2 : assert( midgets == midgets );</span>
+<span class="lineNum"> 75 </span><span class="lineCov"> 2 : assert( people == people2 );</span>
+<span class="lineNum"> 76 </span><span class="lineCov"> 2 : assert( people == people );</span>
+<span class="lineNum"> 77 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 78 </span> :
+<span class="lineNum"> 79 </span><span class="lineCov"> 1 : Test _5()</span>
+<span class="lineNum"> 80 </span> : {
+<span class="lineNum"> 81 </span><span class="lineCov"> 1 : Tag a = tags().tagByName( &quot;works-with::people&quot; ),</span>
+<span class="lineNum"> 82 </span><span class="lineCov"> 2 : b = tags().tagByName( &quot;works-with::midgets&quot; );</span>
+<span class="lineNum"> 83 </span><span class="lineCov"> 2 : std::set&lt; Tag &gt; s = tags().tags(),</span>
+<span class="lineNum"> 84 </span><span class="lineCov"> 1 : f = tags().tags( &quot;works-with&quot; ),</span>
+<span class="lineNum"> 85 </span><span class="lineCov"> 2 : n = tags().tags( &quot;nonsense&quot; );</span>
+<span class="lineNum"> 86 </span><span class="lineCov"> 2 : assert( set_contains(s, a) );</span>
+<span class="lineNum"> 87 </span><span class="lineCov"> 2 : assert( set_contains(f, a) );</span>
+<span class="lineNum"> 88 </span><span class="lineCov"> 2 : assert( set_contains(s, f) );</span>
+<span class="lineNum"> 89 </span><span class="lineCov"> 2 : assert( !set_contains(s, b) );</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 2 : assert( !set_contains(f, b) );</span>
+<span class="lineNum"> 91 </span><span class="lineCov"> 2 : assert( n.empty() );</span>
+<span class="lineNum"> 92 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span><span class="lineCov"> 1 : Test _6()</span>
+<span class="lineNum"> 95 </span> : {
+<span class="lineNum"> 96 </span><span class="lineCov"> 1 : Facet f = tags().facetByName( &quot;works-with&quot; );</span>
+<span class="lineNum"> 97 </span><span class="lineCov"> 2 : Tag t = tags().tagByName( &quot;works-with::people&quot; );</span>
+<span class="lineNum"> 98 </span><span class="lineCov"> 2 : assert_eq(f.name(), &quot;works-with&quot;);</span>
+<span class="lineNum"> 99 </span><span class="lineCov"> 1 : assert_eq(t.name(), &quot;people&quot;);</span>
+<span class="lineNum"> 100 </span><span class="lineCov"> 1 : assert_eq(t.fullname(), &quot;works-with::people&quot;);</span>
+<span class="lineNum"> 101 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 102 </span> :
+<span class="lineNum"> 103 </span><span class="lineCov"> 1 : Test _7()</span>
+<span class="lineNum"> 104 </span> : {
+<span class="lineNum"> 105 </span><span class="lineCov"> 1 : Facet f = tags().facetByName( &quot;works-with&quot; );</span>
+<span class="lineNum"> 106 </span><span class="lineCov"> 2 : std::set&lt; Tag &gt; x = tags().tags( &quot;works-with&quot; );</span>
+<span class="lineNum"> 107 </span><span class="lineCov"> 2 : assert( x == f.tags() );</span>
+<span class="lineNum"> 108 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span><span class="lineCov"> 1 : Test _8()</span>
+<span class="lineNum"> 111 </span> : {
+<span class="lineNum"> 112 </span><span class="lineCov"> 1 : Facet f = tags().facetByName( &quot;does-not-work-with&quot; );</span>
+<span class="lineNum"> 113 </span><span class="lineCov"> 1 : int x = 1;</span>
+<span class="lineNum"> 114 </span> : try {
+<span class="lineNum"> 115 </span><span class="lineCov"> 1 : f.tags();</span>
+<span class="lineNum"> 116 </span><span class="lineNoCov"> 0 : x = 2;</span>
+<span class="lineNum"> 117 </span><span class="lineCov"> 2 : } catch (...) {</span>
+<span class="lineNum"> 118 </span><span class="lineCov"> 1 : x = 3;</span>
+<span class="lineNum"> 119 </span> : }
+<span class="lineNum"> 120 </span><span class="lineCov"> 1 : assert_eq( x, 3 );</span>
+<span class="lineNum"> 121 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 122 </span> :
+<span class="lineNum"> 123 </span><span class="lineCov"> 1 : Test _9()</span>
+<span class="lineNum"> 124 </span> : {
+<span class="lineNum"> 125 </span><span class="lineCov"> 1 : Facet f = tags().facetByName( &quot;legacy&quot; );</span>
+<span class="lineNum"> 126 </span><span class="lineCov"> 2 : assert_eq(f.shortDescription(), &quot;&quot;);</span>
+<span class="lineNum"> 127 </span><span class="lineCov"> 1 : assert_eq(f.longDescription(), &quot;&quot;);</span>
+<span class="lineNum"> 128 </span> : //assert_eq(f.shortDescription( &quot;weehee&quot; ), &quot;weehee&quot;);
+<span class="lineNum"> 129 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 130 </span> :
+<span class="lineNum"> 131 </span> : Test _10()
+<span class="lineNum"> 132 </span> : {
+<span class="lineNum"> 133 </span> : // assert that one-character tag names are parsed correctly
+<span class="lineNum"> 134 </span> : assert( tags().hasTag( &quot;implemented-in::c&quot; ) );
+<span class="lineNum"> 135 </span> : }
+<span class="lineNum"> 136 </span> :
+<span class="lineNum"> 137 </span><span class="lineCov"> 1 : Test _11()</span>
+<span class="lineNum"> 138 </span> : {
+<span class="lineNum"> 139 </span> : // assert that all tags are somehow working
+<span class="lineNum"> 140 </span><span class="lineCov"> 1 : std::set&lt;Facet&gt; facets = tags().facets();</span>
+<span class="lineNum"> 141 </span> :
+<span class="lineNum"> 142 </span><span class="lineCov"> 30 : for (std::set&lt;Facet&gt;::const_iterator i = facets.begin();</span>
+<span class="lineNum"> 143 </span> : i != facets.end(); i++)
+<span class="lineNum"> 144 </span> : {
+<span class="lineNum"> 145 </span><span class="lineCov"> 29 : i-&gt;name(string(&quot;foo&quot;));</span>
+<span class="lineNum"> 146 </span><span class="lineCov"> 58 : i-&gt;shortDescription(string(&quot;foo&quot;));</span>
+<span class="lineNum"> 147 </span><span class="lineCov"> 58 : i-&gt;longDescription(string(&quot;foo&quot;));</span>
+<span class="lineNum"> 148 </span><span class="lineCov"> 58 : i-&gt;tags();</span>
+<span class="lineNum"> 149 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 150 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 151 </span> :
+<span class="lineNum"> 152 </span><span class="lineCov"> 1 : Test _12()</span>
+<span class="lineNum"> 153 </span> : {
+<span class="lineNum"> 154 </span> : // assert that all tags are somehow working
+<span class="lineNum"> 155 </span><span class="lineCov"> 1 : std::set&lt;Tag&gt; tags = this-&gt;tags().tags();</span>
+<span class="lineNum"> 156 </span> :
+<span class="lineNum"> 157 </span><span class="lineCov"> 1242 : for (std::set&lt;Tag&gt;::const_iterator i = tags.begin();</span>
+<span class="lineNum"> 158 </span> : i != tags.end(); i++)
+<span class="lineNum"> 159 </span> : {
+<span class="lineNum"> 160 </span><span class="lineCov"> 620 : i-&gt;name(string(&quot;foo&quot;));</span>
+<span class="lineNum"> 161 </span><span class="lineCov"> 1240 : i-&gt;fullname(string(&quot;foo&quot;));</span>
+<span class="lineNum"> 162 </span><span class="lineCov"> 1240 : i-&gt;shortDescription(string(&quot;foo&quot;));</span>
+<span class="lineNum"> 163 </span><span class="lineCov"> 1240 : i-&gt;longDescription(string(&quot;foo&quot;));</span>
+<span class="lineNum"> 164 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 165 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 166 </span> :
+<span class="lineNum"> 167 </span> : // Check for correctness of the first and last tag in the vocabulary
+<span class="lineNum"> 168 </span><span class="lineCov"> 1 : Test _13()</span>
+<span class="lineNum"> 169 </span> : {
+<span class="lineNum"> 170 </span><span class="lineCov"> 1 : Vocabulary&amp; tags = this-&gt;tags();</span>
+<span class="lineNum"> 171 </span> :
+<span class="lineNum"> 172 </span><span class="lineCov"> 1 : Tag first = tags.tagByName(&quot;accessibility::TODO&quot;);</span>
+<span class="lineNum"> 173 </span><span class="lineCov"> 2 : assert(first != Tag());</span>
+<span class="lineNum"> 174 </span><span class="lineCov"> 1 : assert_eq(first.fullname(), string(&quot;accessibility::TODO&quot;));</span>
+<span class="lineNum"> 175 </span><span class="lineCov"> 2 : assert_eq(first.name(), string(&quot;TODO&quot;));</span>
+<span class="lineNum"> 176 </span><span class="lineCov"> 2 : assert_eq(first.shortDescription(), string(&quot;Need an extra tag&quot;));</span>
+<span class="lineNum"> 177 </span> :
+<span class="lineNum"> 178 </span><span class="lineCov"> 2 : Tag last = tags.tagByName(&quot;x11::xserver&quot;);</span>
+<span class="lineNum"> 179 </span><span class="lineCov"> 2 : assert(last != Tag());</span>
+<span class="lineNum"> 180 </span><span class="lineCov"> 1 : assert_eq(last.fullname(), string(&quot;x11::xserver&quot;));</span>
+<span class="lineNum"> 181 </span><span class="lineCov"> 2 : assert_eq(last.name(), string(&quot;xserver&quot;));</span>
+<span class="lineNum"> 182 </span><span class="lineCov"> 2 : assert_eq(last.shortDescription(), string(&quot;X Server&quot;));</span>
+<span class="lineNum"> 183 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 184 </span> :
+<span class="lineNum"> 185 </span><span class="lineCov"> 1 : Test _14()</span>
+<span class="lineNum"> 186 </span> : {
+<span class="lineNum"> 187 </span> : // assert that it's possible to go from facet to ID and back
+<span class="lineNum"> 188 </span><span class="lineCov"> 1 : std::set&lt;Facet&gt; facets = tags().facets();</span>
+<span class="lineNum"> 189 </span> :
+<span class="lineNum"> 190 </span><span class="lineCov"> 30 : for (std::set&lt;Facet&gt;::const_iterator i = facets.begin();</span>
+<span class="lineNum"> 191 </span> : i != facets.end(); i++)
+<span class="lineNum"> 192 </span> : {
+<span class="lineNum"> 193 </span><span class="lineCov"> 29 : Facet f = tags().facetByID(i-&gt;id());</span>
+<span class="lineNum"> 194 </span><span class="lineCov"> 29 : assert_eq(*i, f);</span>
+<span class="lineNum"> 195 </span><span class="lineCov"> 29 : assert_eq(i-&gt;name(), f.name());</span>
+<span class="lineNum"> 196 </span><span class="lineCov"> 29 : assert_eq(i-&gt;shortDescription(), f.shortDescription());</span>
+<span class="lineNum"> 197 </span><span class="lineCov"> 29 : assert_eq(i-&gt;longDescription(), f.longDescription());</span>
+<span class="lineNum"> 198 </span><span class="lineCov"> 29 : assert_eq(i-&gt;tags().size(), f.tags().size());</span>
+<span class="lineNum"> 199 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 200 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 201 </span> :
+<span class="lineNum"> 202 </span><span class="lineCov"> 1 : Test _15()</span>
+<span class="lineNum"> 203 </span> : {
+<span class="lineNum"> 204 </span> : // assert that it's possible to go from tag to ID and back
+<span class="lineNum"> 205 </span><span class="lineCov"> 1 : std::set&lt;Tag&gt; tags = this-&gt;tags().tags();</span>
+<span class="lineNum"> 206 </span> :
+<span class="lineNum"> 207 </span><span class="lineCov"> 621 : for (std::set&lt;Tag&gt;::const_iterator i = tags.begin();</span>
+<span class="lineNum"> 208 </span> : i != tags.end(); i++)
+<span class="lineNum"> 209 </span> : {
+<span class="lineNum"> 210 </span><span class="lineCov"> 620 : Tag t = this-&gt;tags().tagByID(i-&gt;id());</span>
+<span class="lineNum"> 211 </span><span class="lineCov"> 620 : assert_eq(*i, t);</span>
+<span class="lineNum"> 212 </span><span class="lineCov"> 620 : assert_eq(i-&gt;name(), t.name());</span>
+<span class="lineNum"> 213 </span><span class="lineCov"> 620 : assert_eq(i-&gt;fullname(), t.fullname());</span>
+<span class="lineNum"> 214 </span><span class="lineCov"> 620 : assert_eq(i-&gt;shortDescription(), t.shortDescription());</span>
+<span class="lineNum"> 215 </span><span class="lineCov"> 620 : assert_eq(i-&gt;longDescription(), t.longDescription());</span>
+<span class="lineNum"> 216 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 217 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 218 </span> :
+<span class="lineNum"> 219 </span><span class="lineCov"> 1 : Test _16()</span>
+<span class="lineNum"> 220 </span> : {
+<span class="lineNum"> 221 </span> : // assert that facet IDs are distinct
+<span class="lineNum"> 222 </span><span class="lineCov"> 1 : std::set&lt;Facet&gt; facets = tags().facets();</span>
+<span class="lineNum"> 223 </span><span class="lineCov"> 1 : std::set&lt;int&gt; ids;</span>
+<span class="lineNum"> 224 </span><span class="lineCov"> 30 : for (std::set&lt;Facet&gt;::const_iterator i = facets.begin();</span>
+<span class="lineNum"> 225 </span> : i != facets.end(); i++)
+<span class="lineNum"> 226 </span><span class="lineCov"> 29 : ids.insert(i-&gt;id());</span>
+<span class="lineNum"> 227 </span> :
+<span class="lineNum"> 228 </span><span class="lineCov"> 1 : assert_eq(facets.size(), ids.size());</span>
+<span class="lineNum"> 229 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 230 </span> :
+<span class="lineNum"> 231 </span><span class="lineCov"> 1 : Test _17()</span>
+<span class="lineNum"> 232 </span> : {
+<span class="lineNum"> 233 </span> : // assert that tag IDs are distinct
+<span class="lineNum"> 234 </span><span class="lineCov"> 1 : std::set&lt;Tag&gt; tags = this-&gt;tags().tags();</span>
+<span class="lineNum"> 235 </span><span class="lineCov"> 1 : std::set&lt;int&gt; ids;</span>
+<span class="lineNum"> 236 </span><span class="lineCov"> 621 : for (std::set&lt;Tag&gt;::const_iterator i = tags.begin();</span>
+<span class="lineNum"> 237 </span> : i != tags.end(); i++)
+<span class="lineNum"> 238 </span><span class="lineCov"> 620 : ids.insert(i-&gt;id());</span>
+<span class="lineNum"> 239 </span> :
+<span class="lineNum"> 240 </span><span class="lineCov"> 1 : assert_eq(tags.size(), ids.size());</span>
+<span class="lineNum"> 241 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 242 </span> :
+<span class="lineNum"> 243 </span><span class="lineCov"> 1 : Test _18()</span>
+<span class="lineNum"> 244 </span> : {
+<span class="lineNum"> 245 </span> : // assert that all the tags are indexed
+<span class="lineNum"> 246 </span><span class="lineCov"> 1 : ept::debtags::VocabularyMerger voc;</span>
+<span class="lineNum"> 247 </span><span class="lineCov"> 1 : tagcoll::input::Stdio in(ept::debtags::Path::vocabulary());</span>
+<span class="lineNum"> 248 </span><span class="lineCov"> 1 : voc.read(in);</span>
+<span class="lineNum"> 249 </span><span class="lineCov"> 1 : std::set&lt;std::string&gt; all = voc.tagNames();</span>
+<span class="lineNum"> 250 </span><span class="lineCov"> 1242 : for (std::set&lt;std::string&gt;::const_iterator i = all.begin();</span>
+<span class="lineNum"> 251 </span> : i != all.end(); ++i)
+<span class="lineNum"> 252 </span><span class="lineCov"> 620 : assert(this-&gt;tags().hasTag(*i));</span>
+<span class="lineNum"> 253 </span> :
+<span class="lineNum"> 254 </span> : // There should be the same amount of tags in both
+<span class="lineNum"> 255 </span><span class="lineCov"> 1 : std::set&lt;Tag&gt; allTags = this-&gt;tags().tags();</span>
+<span class="lineNum"> 256 </span><span class="lineCov"> 1 : assert_eq(all.size(), allTags.size());</span>
+<span class="lineNum"> 257 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 258 </span> :
+<span class="lineNum"> 259 </span><span class="lineCov"> 1 : Test _19()</span>
+<span class="lineNum"> 260 </span> : {
+<span class="lineNum"> 261 </span> : // test the tagcmp function
+<span class="lineNum"> 262 </span> :
+<span class="lineNum"> 263 </span> : // If unfaceted, same as strcmp
+<span class="lineNum"> 264 </span><span class="lineCov"> 1 : assert(ept::debtags::tagcmp(&quot;antani&quot;, &quot;blinda&quot;) &lt; 0);</span>
+<span class="lineNum"> 265 </span><span class="lineCov"> 2 : assert(ept::debtags::tagcmp(&quot;blinda&quot;, &quot;antani&quot;) &gt; 0);</span>
+<span class="lineNum"> 266 </span><span class="lineCov"> 2 : assert_eq(ept::debtags::tagcmp(&quot;antani&quot;, &quot;antani&quot;), 0);</span>
+<span class="lineNum"> 267 </span> :
+<span class="lineNum"> 268 </span> : // If the same and faceted, should work
+<span class="lineNum"> 269 </span><span class="lineCov"> 2 : assert_eq(ept::debtags::tagcmp(&quot;antani::blinda&quot;, &quot;antani::blinda&quot;), 0);</span>
+<span class="lineNum"> 270 </span> :
+<span class="lineNum"> 271 </span> : // With different facet names, work just as strcmp
+<span class="lineNum"> 272 </span><span class="lineCov"> 2 : assert(ept::debtags::tagcmp(&quot;antani::blinda&quot;, &quot;blinda::blinda&quot;) &lt; 0);</span>
+<span class="lineNum"> 273 </span><span class="lineCov"> 2 : assert(ept::debtags::tagcmp(&quot;blinda::blinda&quot;, &quot;antani::blinda&quot;) &gt; 0);</span>
+<span class="lineNum"> 274 </span><span class="lineCov"> 2 : assert(ept::debtags::tagcmp(&quot;anta::blinda&quot;, &quot;antani::blinda&quot;) &lt; 0);</span>
+<span class="lineNum"> 275 </span><span class="lineCov"> 2 : assert(ept::debtags::tagcmp(&quot;antani::blinda&quot;, &quot;anta::blinda&quot;) &gt; 0);</span>
+<span class="lineNum"> 276 </span><span class="lineCov"> 2 : assert(ept::debtags::tagcmp(&quot;anta::blinda&quot;, &quot;anta-ni::blinda&quot;) &lt; 0);</span>
+<span class="lineNum"> 277 </span><span class="lineCov"> 2 : assert(ept::debtags::tagcmp(&quot;anta-ni::blinda&quot;, &quot;anta::blinda&quot;) &gt; 0);</span>
+<span class="lineNum"> 278 </span> :
+<span class="lineNum"> 279 </span> : // With same facet names, work just as strcmp on the tags
+<span class="lineNum"> 280 </span><span class="lineCov"> 2 : assert(ept::debtags::tagcmp(&quot;a::antani&quot;, &quot;a::blinda&quot;) &lt; 0);</span>
+<span class="lineNum"> 281 </span><span class="lineCov"> 2 : assert(ept::debtags::tagcmp(&quot;a::blinda&quot;, &quot;a::antani&quot;) &gt; 0);</span>
+<span class="lineNum"> 282 </span><span class="lineCov"> 2 : assert(ept::debtags::tagcmp(&quot;a::anta&quot;, &quot;a::antani&quot;) &lt; 0);</span>
+<span class="lineNum"> 283 </span><span class="lineCov"> 2 : assert(ept::debtags::tagcmp(&quot;a::antani&quot;, &quot;a::anta&quot;) &gt; 0);</span>
+<span class="lineNum"> 284 </span><span class="lineCov"> 2 : assert(ept::debtags::tagcmp(&quot;a::anta&quot;, &quot;a::anta-ni&quot;) &lt; 0);</span>
+<span class="lineNum"> 285 </span><span class="lineCov"> 2 : assert(ept::debtags::tagcmp(&quot;a::anta-ni&quot;, &quot;a::anta&quot;) &gt; 0);</span>
+<span class="lineNum"> 286 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 287 </span> :
+<span class="lineNum"> 288 </span> : Test _20()
+<span class="lineNum"> 289 </span> : {
+<span class="lineNum"> 290 </span> : // check that we're seeing all the tags for a facet
+<span class="lineNum"> 291 </span> : std::set&lt;Tag&gt; t = tags().tags(&quot;accessibility&quot;);
+<span class="lineNum"> 292 </span> : assert_eq(t.size(), 10u);
+<span class="lineNum"> 293 </span> :
+<span class="lineNum"> 294 </span> : t = tags().tags(&quot;works-with-format&quot;);
+<span class="lineNum"> 295 </span> : assert_eq(t.size(), 33u);
+<span class="lineNum"> 296 </span> : }
+<span class="lineNum"> 297 </span> :
+<span class="lineNum"> 298 </span> : // If there is no data, Vocabulary should work as an empty vocabulary
+<span class="lineNum"> 299 </span><span class="lineCov"> 1 : Test _21()</span>
+<span class="lineNum"> 300 </span> : {
+<span class="lineNum"> 301 </span><span class="lineCov"> 1 : Path::OverrideDebtagsSourceDir odsd(&quot;./empty&quot;);</span>
+<span class="lineNum"> 302 </span><span class="lineCov"> 2 : Path::OverrideDebtagsIndexDir odid(&quot;./empty&quot;);</span>
+<span class="lineNum"> 303 </span><span class="lineCov"> 2 : Path::OverrideDebtagsUserSourceDir odusd(&quot;./empty&quot;);</span>
+<span class="lineNum"> 304 </span><span class="lineCov"> 2 : Path::OverrideDebtagsUserIndexDir oduid(&quot;./empty&quot;);</span>
+<span class="lineNum"> 305 </span><span class="lineCov"> 1 : Vocabulary empty;</span>
+<span class="lineNum"> 306 </span> :
+<span class="lineNum"> 307 </span><span class="lineCov"> 1 : assert(!empty.hasData());</span>
+<span class="lineNum"> 308 </span> :
+<span class="lineNum"> 309 </span><span class="lineCov"> 1 : set&lt;Facet&gt; facets = empty.facets();</span>
+<span class="lineNum"> 310 </span><span class="lineCov"> 1 : assert_eq(facets.size(), 0u);</span>
+<span class="lineNum"> 311 </span> :
+<span class="lineNum"> 312 </span><span class="lineCov"> 1 : set&lt;Tag&gt; tags = empty.tags();</span>
+<span class="lineNum"> 313 </span><span class="lineCov"> 1 : assert_eq(tags.size(), 0u);</span>
+<span class="lineNum"> 314 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 315 </span> :
+<span class="lineNum"> 316 </span> : };
+<span class="lineNum"> 317 </span> :
+<span class="lineNum"> 318 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/index.html b/rep/ept/index.html
new file mode 100644
index 0000000..bbf0716
--- /dev/null
+++ b/rep/ept/index.html
@@ -0,0 +1,110 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept</title>
+ <link rel="stylesheet" type="text/css" href="../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../index.html">directory</a> - ept</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">38</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">73.7 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">28</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="progresscallback.cpp.gcov.html">progresscallback.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../snow.png" width=100 height=10 alt="0.0%"></td></tr></table>
+ </td>
+ <td class="coverPerLo">0.0&nbsp;%</td>
+ <td class="coverNumLo">0&nbsp;/&nbsp;4&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="progresscallback.h.gcov.html">progresscallback.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../snow.png" width=100 height=10 alt="0.0%"></td></tr></table>
+ </td>
+ <td class="coverPerLo">0.0&nbsp;%</td>
+ <td class="coverNumLo">0&nbsp;/&nbsp;3&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="test.h.gcov.html">test.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">15&nbsp;/&nbsp;15&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="token.h.gcov.html">token.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../emerald.png" width=81 height=10 alt="81.2%"><img src="../snow.png" width=19 height=10 alt="81.2%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">81.2&nbsp;%</td>
+ <td class="coverNumHi">13&nbsp;/&nbsp;16&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/popcon/index.html b/rep/ept/popcon/index.html
new file mode 100644
index 0000000..d87cf3d
--- /dev/null
+++ b/rep/ept/popcon/index.html
@@ -0,0 +1,128 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/popcon</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - ept/popcon</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">161</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">83.2 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">134</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="local.cc.gcov.html">local.cc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=62 height=10 alt="62.1%"><img src="../../snow.png" width=38 height=10 alt="62.1%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">62.1&nbsp;%</td>
+ <td class="coverNumHi">41&nbsp;/&nbsp;66&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="local.h.gcov.html">local.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">1&nbsp;/&nbsp;1&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="local.test.h.gcov.html">local.test.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">8&nbsp;/&nbsp;8&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="popcon.cc.gcov.html">popcon.cc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=96 height=10 alt="95.7%"><img src="../../snow.png" width=4 height=10 alt="95.7%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">95.7&nbsp;%</td>
+ <td class="coverNumHi">22&nbsp;/&nbsp;23&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="popcon.h.gcov.html">popcon.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=96 height=10 alt="96.0%"><img src="../../snow.png" width=4 height=10 alt="96.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">96.0&nbsp;%</td>
+ <td class="coverNumHi">24&nbsp;/&nbsp;25&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="popcon.test.h.gcov.html">popcon.test.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">38&nbsp;/&nbsp;38&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/popcon/local.cc.gcov.html b/rep/ept/popcon/local.cc.gcov.html
new file mode 100644
index 0000000..e6b44b8
--- /dev/null
+++ b/rep/ept/popcon/local.cc.gcov.html
@@ -0,0 +1,235 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/popcon/local.cc</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/popcon</a> - local.cc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">66</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">62.1 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">41</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /** @file
+<span class="lineNum"> 2 </span> : * @author Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 3 </span> : * Correlate popcon data with local popcon information
+<span class="lineNum"> 4 </span> : */
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : /*
+<span class="lineNum"> 7 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 8 </span> : *
+<span class="lineNum"> 9 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 10 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 11 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 12 </span> : * (at your option) any later version.
+<span class="lineNum"> 13 </span> : *
+<span class="lineNum"> 14 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 15 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 16 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 17 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 18 </span> : *
+<span class="lineNum"> 19 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 20 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 21 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 22 </span> : */
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : #include &lt;ept/popcon/local.h&gt;
+<span class="lineNum"> 25 </span> : #include &lt;ept/popcon/popcon.h&gt;
+<span class="lineNum"> 26 </span> : #include &lt;ept/popcon/maint/path.h&gt;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : #include &lt;wibble/exception.h&gt;
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : #include &lt;algorithm&gt;
+<span class="lineNum"> 31 </span> : #include &lt;fstream&gt;
+<span class="lineNum"> 32 </span> : #include &lt;cmath&gt;
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span> : //#include &lt;iostream&gt;
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : using namespace std;
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : namespace ept {
+<span class="lineNum"> 39 </span> : namespace popcon {
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : // Split a string where there are separators
+<span class="lineNum"> 42 </span><span class="lineCov"> 1903 : static vector&lt;string&gt; split(const std::string&amp; str, char sep = ' ')</span>
+<span class="lineNum"> 43 </span> : {
+<span class="lineNum"> 44 </span><span class="lineCov"> 1903 : vector&lt;string&gt; res;</span>
+<span class="lineNum"> 45 </span><span class="lineCov"> 1903 : size_t start = 0;</span>
+<span class="lineNum"> 46 </span><span class="lineCov"> 10435 : while (start &lt; str.size())</span>
+<span class="lineNum"> 47 </span> : {
+<span class="lineNum"> 48 </span><span class="lineCov"> 8531 : size_t end = str.find(sep, start);</span>
+<span class="lineNum"> 49 </span><span class="lineCov"> 8531 : if (end == string::npos)</span>
+<span class="lineNum"> 50 </span> : {
+<span class="lineNum"> 51 </span><span class="lineCov"> 1902 : res.push_back(str.substr(start));</span>
+<span class="lineNum"> 52 </span><span class="lineCov"> 1902 : break;</span>
+<span class="lineNum"> 53 </span> : }
+<span class="lineNum"> 54 </span> : else
+<span class="lineNum"> 55 </span> : {
+<span class="lineNum"> 56 </span><span class="lineCov"> 6629 : res.push_back(str.substr(start, end-start));</span>
+<span class="lineNum"> 57 </span><span class="lineCov"> 6629 : start = end + 1;</span>
+<span class="lineNum"> 58 </span> : }
+<span class="lineNum"> 59 </span> : }
+<span class="lineNum"> 60 </span><span class="lineNoCov"> 0 : return res;</span>
+<span class="lineNum"> 61 </span> : }
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span> : // Reverse sort pairs by comparing their second element
+<span class="lineNum"> 64 </span> : struct secondsort
+<span class="lineNum"> 65 </span> : {
+<span class="lineNum"> 66 </span><span class="lineNoCov"> 0 : bool operator()(const pair&lt;string, float&gt;&amp; a, const pair&lt;string, float&gt;&amp; b) const</span>
+<span class="lineNum"> 67 </span> : {
+<span class="lineNum"> 68 </span><span class="lineNoCov"> 0 : if (a.second == b.second)</span>
+<span class="lineNum"> 69 </span><span class="lineNoCov"> 0 : return a.first &gt; b.first;</span>
+<span class="lineNum"> 70 </span> : else
+<span class="lineNum"> 71 </span><span class="lineNoCov"> 0 : return a.second &gt; b.second;</span>
+<span class="lineNum"> 72 </span> : }
+<span class="lineNum"> 73 </span> : };
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span><span class="lineCov"> 1 : Local::Local(const std::string&amp; file)</span>
+<span class="lineNum"> 76 </span> : {
+<span class="lineNum"> 77 </span><span class="lineCov"> 1 : m_timestamp = Path::timestamp(file);</span>
+<span class="lineNum"> 78 </span><span class="lineCov"> 1 : if (m_timestamp == 0)</span>
+<span class="lineNum"> 79 </span><span class="lineNoCov"> 0 : return;</span>
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span><span class="lineCov"> 1 : ifstream in;</span>
+<span class="lineNum"> 82 </span><span class="lineCov"> 1 : in.open(file.c_str());</span>
+<span class="lineNum"> 83 </span><span class="lineCov"> 1 : if (!in.good())</span>
+<span class="lineNum"> 84 </span><span class="lineNoCov"> 0 : throw wibble::exception::File(file, &quot;opening file for reading&quot;);</span>
+<span class="lineNum"> 85 </span> :
+<span class="lineNum"> 86 </span><span class="lineCov"> 1907 : while (!in.eof())</span>
+<span class="lineNum"> 87 </span> : {
+<span class="lineNum"> 88 </span><span class="lineCov"> 1905 : std::string line;</span>
+<span class="lineNum"> 89 </span><span class="lineCov"> 1905 : getline(in, line);</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 1905 : if (line.substr(0, 10) == &quot;POPULARITY&quot;)</span>
+<span class="lineNum"> 91 </span><span class="lineCov"> 3 : continue;</span>
+<span class="lineNum"> 92 </span><span class="lineCov"> 1904 : if (line.substr(0, 14) == &quot;END-POPULARITY&quot;)</span>
+<span class="lineNum"> 93 </span> : continue;
+<span class="lineNum"> 94 </span><span class="lineCov"> 1903 : vector&lt;string&gt; data = split(line);</span>
+<span class="lineNum"> 95 </span><span class="lineCov"> 1903 : if (data.size() &lt; 4)</span>
+<span class="lineNum"> 96 </span> : continue;
+<span class="lineNum"> 97 </span><span class="lineCov"> 1902 : if (data[3] == &quot;&lt;NOFILES&gt;&quot;)</span>
+<span class="lineNum"> 98 </span> : // This is an empty / virtual package
+<span class="lineNum"> 99 </span><span class="lineCov"> 979 : m_scores.insert(make_pair(data[2], 0.1));</span>
+<span class="lineNum"> 100 </span><span class="lineCov"> 923 : else if (data.size() == 4)</span>
+<span class="lineNum"> 101 </span> : // Package normally in use
+<span class="lineNum"> 102 </span><span class="lineNoCov"> 0 : m_scores.insert(make_pair(data[2], 1.0));</span>
+<span class="lineNum"> 103 </span><span class="lineCov"> 923 : else if (data[4] == &quot;&lt;OLD&gt;&quot;)</span>
+<span class="lineNum"> 104 </span> : // Unused packages
+<span class="lineNum"> 105 </span><span class="lineCov"> 745 : m_scores.insert(make_pair(data[2], 0.3));</span>
+<span class="lineNum"> 106 </span><span class="lineCov"> 178 : else if (data[4] == &quot;&lt;RECENT-CTIME&gt;&quot;)</span>
+<span class="lineNum"> 107 </span> : // Recently installed packages
+<span class="lineNum"> 108 </span><span class="lineCov"> 178 : m_scores.insert(make_pair(data[2], 0.5));</span>
+<span class="lineNum"> 109 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 110 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span><span class="lineCov"> 2 : float Local::score(const std::string&amp; pkg) const</span>
+<span class="lineNum"> 113 </span> : {
+<span class="lineNum"> 114 </span><span class="lineCov"> 2 : std::map&lt;std::string, float&gt;::const_iterator i = m_scores.find(pkg);</span>
+<span class="lineNum"> 115 </span><span class="lineCov"> 2 : if (i == m_scores.end())</span>
+<span class="lineNum"> 116 </span><span class="lineNoCov"> 0 : return 0;</span>
+<span class="lineNum"> 117 </span> : else
+<span class="lineNum"> 118 </span><span class="lineCov"> 2 : return i-&gt;second;</span>
+<span class="lineNum"> 119 </span> : }
+<span class="lineNum"> 120 </span> :
+<span class="lineNum"> 121 </span> : /**
+<span class="lineNum"> 122 </span> : * Return the TFIDF score of the package computed against the popcon
+<span class="lineNum"> 123 </span> : * information.
+<span class="lineNum"> 124 </span> : */
+<span class="lineNum"> 125 </span><span class="lineCov"> 1 : float Local::tfidf(const Popcon&amp; popcon, const std::string&amp; pkg) const</span>
+<span class="lineNum"> 126 </span> : {
+<span class="lineNum"> 127 </span><span class="lineCov"> 1 : float popconScore = popcon.score(pkg);</span>
+<span class="lineNum"> 128 </span> : //cerr &lt;&lt; pkg &lt;&lt; &quot;: &quot; &lt;&lt; score(pkg) &lt;&lt; &quot; * log(&quot; &lt;&lt; (float)popcon.submissions() &lt;&lt; &quot; / &quot; &lt;&lt; popconScore &lt;&lt; &quot;) = &quot; &lt;&lt; score(pkg) * log((float)popcon.submissions() / popconScore) &lt;&lt; endl;
+<span class="lineNum"> 129 </span><span class="lineCov"> 1 : if (popconScore == 0)</span>
+<span class="lineNum"> 130 </span><span class="lineNoCov"> 0 : return 0;</span>
+<span class="lineNum"> 131 </span> : else
+<span class="lineNum"> 132 </span><span class="lineCov"> 1 : return score(pkg) * log((float)popcon.submissions() / popconScore);</span>
+<span class="lineNum"> 133 </span> :
+<span class="lineNum"> 134 </span> : }
+<span class="lineNum"> 135 </span> :
+<span class="lineNum"> 136 </span><span class="lineNoCov"> 0 : std::vector&lt; std::pair&lt;std::string, float&gt; &gt; Local::scores() const</span>
+<span class="lineNum"> 137 </span> : {
+<span class="lineNum"> 138 </span><span class="lineNoCov"> 0 : vector&lt; pair&lt;string, float&gt; &gt; res;</span>
+<span class="lineNum"> 139 </span> : // Copy the scores in res
+<span class="lineNum"> 140 </span><span class="lineNoCov"> 0 : copy(m_scores.begin(), m_scores.end(), back_inserter(res));</span>
+<span class="lineNum"> 141 </span> : // Sort res by score
+<span class="lineNum"> 142 </span><span class="lineNoCov"> 0 : sort(res.begin(), res.end(), secondsort());</span>
+<span class="lineNum"> 143 </span><span class="lineNoCov"> 0 : return res;</span>
+<span class="lineNum"> 144 </span> : }
+<span class="lineNum"> 145 </span> :
+<span class="lineNum"> 146 </span><span class="lineNoCov"> 0 : std::vector&lt; std::pair&lt;std::string, float&gt; &gt; Local::tfidf(const Popcon&amp; popcon) const</span>
+<span class="lineNum"> 147 </span> : {
+<span class="lineNum"> 148 </span><span class="lineNoCov"> 0 : vector&lt; pair&lt;string, float&gt; &gt; res;</span>
+<span class="lineNum"> 149 </span> : // Compute the tfidf scores and store them into res
+<span class="lineNum"> 150 </span><span class="lineNoCov"> 0 : for (std::map&lt;std::string, float&gt;::const_iterator i = m_scores.begin();</span>
+<span class="lineNum"> 151 </span> : i != m_scores.end(); ++i)
+<span class="lineNum"> 152 </span> : {
+<span class="lineNum"> 153 </span><span class="lineNoCov"> 0 : float popconScore = popcon.score(i-&gt;first);</span>
+<span class="lineNum"> 154 </span><span class="lineNoCov"> 0 : if (popconScore == 0)</span>
+<span class="lineNum"> 155 </span><span class="lineNoCov"> 0 : res.push_back(make_pair(i-&gt;first, 0.0f));</span>
+<span class="lineNum"> 156 </span> : else
+<span class="lineNum"> 157 </span> : res.push_back(make_pair(i-&gt;first,
+<span class="lineNum"> 158 </span><span class="lineNoCov"> 0 : i-&gt;second * log((float)popcon.submissions() / popconScore)));</span>
+<span class="lineNum"> 159 </span> : }
+<span class="lineNum"> 160 </span> : // Sort res by score
+<span class="lineNum"> 161 </span><span class="lineNoCov"> 0 : sort(res.begin(), res.end(), secondsort());</span>
+<span class="lineNum"> 162 </span><span class="lineNoCov"> 0 : return res;</span>
+<span class="lineNum"> 163 </span> : }
+<span class="lineNum"> 164 </span> :
+<span class="lineNum"> 165 </span> : }
+<span class="lineNum"> 166 </span><span class="lineCov"> 6 : }</span>
+<span class="lineNum"> 167 </span> :
+<span class="lineNum"> 168 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/popcon/local.h.gcov.html b/rep/ept/popcon/local.h.gcov.html
new file mode 100644
index 0000000..a8cb45d
--- /dev/null
+++ b/rep/ept/popcon/local.h.gcov.html
@@ -0,0 +1,154 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/popcon/local.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/popcon</a> - local.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef EPT_POPCON_LOCAL_H
+<span class="lineNum"> 2 </span> : #define EPT_POPCON_LOCAL_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** @file
+<span class="lineNum"> 5 </span> : * @author Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 6 </span> : * Correlate popcon data with local popcon information
+<span class="lineNum"> 7 </span> : */
+<span class="lineNum"> 8 </span> :
+<span class="lineNum"> 9 </span> : /*
+<span class="lineNum"> 10 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 11 </span> : *
+<span class="lineNum"> 12 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 13 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 14 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 15 </span> : * (at your option) any later version.
+<span class="lineNum"> 16 </span> : *
+<span class="lineNum"> 17 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 18 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 19 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 20 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 21 </span> : *
+<span class="lineNum"> 22 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 23 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 24 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 25 </span> : */
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #include &lt;string&gt;
+<span class="lineNum"> 28 </span> : #include &lt;vector&gt;
+<span class="lineNum"> 29 </span> : #include &lt;map&gt;
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : namespace ept {
+<span class="lineNum"> 32 </span> : namespace popcon {
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span> : class Popcon;
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : /**
+<span class="lineNum"> 37 </span> : * Access the results of the local daily popcon scan.
+<span class="lineNum"> 38 </span> : */
+<span class="lineNum"> 39 </span> : class Local
+<span class="lineNum"> 40 </span><span class="lineCov"> 1 : {</span>
+<span class="lineNum"> 41 </span> : protected:
+<span class="lineNum"> 42 </span> : std::map&lt;std::string, float&gt; m_scores;
+<span class="lineNum"> 43 </span> : time_t m_timestamp;
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : public:
+<span class="lineNum"> 46 </span> : Local(const std::string&amp; file = std::string(&quot;/var/log/popularity-contest&quot;));
+<span class="lineNum"> 47 </span> :
+<span class="lineNum"> 48 </span> : /// Get the timestamp of the local popcon information
+<span class="lineNum"> 49 </span> : time_t timestamp() const { return m_timestamp; }
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> : /// Return true if this data source has data, false if it's empty
+<span class="lineNum"> 52 </span> : bool hasData() const { return m_timestamp != 0; }
+<span class="lineNum"> 53 </span> :
+<span class="lineNum"> 54 </span> : /**
+<span class="lineNum"> 55 </span> : * Return the local score of the package
+<span class="lineNum"> 56 </span> : */
+<span class="lineNum"> 57 </span> : float score(const std::string&amp; pkg) const;
+<span class="lineNum"> 58 </span> :
+<span class="lineNum"> 59 </span> : /**
+<span class="lineNum"> 60 </span> : * Return the TFIDF score of the package computed against the popcon
+<span class="lineNum"> 61 </span> : * information.
+<span class="lineNum"> 62 </span> : *
+<span class="lineNum"> 63 </span> : * The TFIDF score is high when a package is representative of this system,
+<span class="lineNum"> 64 </span> : * that is, it is used in this system and not much used in other systems.
+<span class="lineNum"> 65 </span> : */
+<span class="lineNum"> 66 </span> : float tfidf(const Popcon&amp; popcon, const std::string&amp; pkg) const;
+<span class="lineNum"> 67 </span> :
+<span class="lineNum"> 68 </span> : /**
+<span class="lineNum"> 69 </span> : * Read the local popcon vote and return the list of packages and their
+<span class="lineNum"> 70 </span> : * local scores, sorted by ascending score.
+<span class="lineNum"> 71 </span> : */
+<span class="lineNum"> 72 </span> : std::vector&lt; std::pair&lt;std::string, float&gt; &gt; scores() const;
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span> : /**
+<span class="lineNum"> 75 </span> : * Read the local popcon vote and return the list of packages and their
+<span class="lineNum"> 76 </span> : * TFIDF scores computed against the popcon information.
+<span class="lineNum"> 77 </span> : *
+<span class="lineNum"> 78 </span> : * The packages will be sorted by ascending score.
+<span class="lineNum"> 79 </span> : */
+<span class="lineNum"> 80 </span> : std::vector&lt; std::pair&lt;std::string, float&gt; &gt; tfidf(const Popcon&amp; popcon) const;
+<span class="lineNum"> 81 </span> : };
+<span class="lineNum"> 82 </span> :
+<span class="lineNum"> 83 </span> : }
+<span class="lineNum"> 84 </span> : }
+<span class="lineNum"> 85 </span> :
+<span class="lineNum"> 86 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 87 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/popcon/local.test.h.gcov.html b/rep/ept/popcon/local.test.h.gcov.html
new file mode 100644
index 0000000..05ce32e
--- /dev/null
+++ b/rep/ept/popcon/local.test.h.gcov.html
@@ -0,0 +1,178 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/popcon/local.test.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/popcon</a> - local.test.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">8</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">8</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+<span class="lineNum"> 2 </span> : /*
+<span class="lineNum"> 3 </span> : * popcon/local test
+<span class="lineNum"> 4 </span> : *
+<span class="lineNum"> 5 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 6 </span> : *
+<span class="lineNum"> 7 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 8 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 9 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 10 </span> : * (at your option) any later version.
+<span class="lineNum"> 11 </span> : *
+<span class="lineNum"> 12 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 16 </span> : *
+<span class="lineNum"> 17 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 18 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 19 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 20 </span> : */
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : #include &lt;ept/popcon/local.h&gt;
+<span class="lineNum"> 23 </span> : #include &lt;ept/popcon/popcon.h&gt;
+<span class="lineNum"> 24 </span> : #include &lt;ept/popcon/maint/path.h&gt;
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;ept/test.h&gt;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : using namespace std;
+<span class="lineNum"> 29 </span> : using namespace ept;
+<span class="lineNum"> 30 </span> : using namespace ept::popcon;
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : struct TestPopconLocal
+<span class="lineNum"> 33 </span><span class="lineCov"> 1 : {</span>
+<span class="lineNum"> 34 </span> : Path::OverridePopconSourceDir odsd;
+<span class="lineNum"> 35 </span> : Path::OverridePopconIndexDir odid;
+<span class="lineNum"> 36 </span> : Path::OverridePopconUserSourceDir odusd;
+<span class="lineNum"> 37 </span> : Path::OverridePopconUserIndexDir oduid;
+<span class="lineNum"> 38 </span> :
+<span class="lineNum"> 39 </span> : Popcon popcon;
+<span class="lineNum"> 40 </span> : Local local;
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span><span class="lineCov"> 1 : TestPopconLocal()</span>
+<span class="lineNum"> 43 </span> : : odsd( TEST_ENV_DIR &quot;popcon&quot; ),
+<span class="lineNum"> 44 </span> : odid( TEST_ENV_DIR &quot;popcon&quot; ),
+<span class="lineNum"> 45 </span> : odusd( TEST_ENV_DIR &quot;popcon&quot; ),
+<span class="lineNum"> 46 </span> : oduid( TEST_ENV_DIR &quot;popcon&quot; ),
+<span class="lineNum"> 47 </span><span class="lineCov"> 1 : local( TEST_ENV_DIR &quot;popcon/popularity-contest&quot; )</span>
+<span class="lineNum"> 48 </span><span class="lineCov"> 1 : {}</span>
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span> : // Very basic access
+<span class="lineNum"> 51 </span><span class="lineCov"> 1 : Test basicAccess()</span>
+<span class="lineNum"> 52 </span> : {
+<span class="lineNum"> 53 </span><span class="lineCov"> 1 : assert(local.score(&quot;apt&quot;) &gt; 0);</span>
+<span class="lineNum"> 54 </span><span class="lineCov"> 2 : assert(local.tfidf(popcon, &quot;apt&quot;) &gt; 0);</span>
+<span class="lineNum"> 55 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : #if 0 // mornfall: apparently left out by enrico, leaving as it is
+<span class="lineNum"> 58 </span> : // Check that every valid index is accessible
+<span class="lineNum"> 59 </span> : template&lt;&gt; template&lt;&gt;
+<span class="lineNum"> 60 </span> : void to::test&lt; 2 &gt;()
+<span class="lineNum"> 61 </span> : {
+<span class="lineNum"> 62 </span> : for (size_t i = 0; i &lt; popcon.size(); ++i)
+<span class="lineNum"> 63 </span> : {
+<span class="lineNum"> 64 </span> : //cerr &lt;&lt; popcon.name(i) &lt;&lt; &quot; &quot; &lt;&lt; popcon.score(i) &lt;&lt; endl;
+<span class="lineNum"> 65 </span> : assert(popcon.score(i) &gt; 0);
+<span class="lineNum"> 66 </span> : }
+<span class="lineNum"> 67 </span> : }
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span> : // Check that we can get a score for every package
+<span class="lineNum"> 70 </span> : template&lt;&gt; template&lt;&gt;
+<span class="lineNum"> 71 </span> : void to::test&lt; 3 &gt;()
+<span class="lineNum"> 72 </span> : {
+<span class="lineNum"> 73 </span> : int has = 0;
+<span class="lineNum"> 74 </span> : for (Apt::iterator i = apt.begin(); i != apt.end(); ++i)
+<span class="lineNum"> 75 </span> : {
+<span class="lineNum"> 76 </span> : float score = popcon.score(*i);
+<span class="lineNum"> 77 </span> : if (score &gt; 0)
+<span class="lineNum"> 78 </span> : ++has;
+<span class="lineNum"> 79 </span> : }
+<span class="lineNum"> 80 </span> : // At least 1000 packages should have a score
+<span class="lineNum"> 81 </span> : assert(has &gt; 1000);
+<span class="lineNum"> 82 </span> : }
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span> : // Check that scores are meaningful
+<span class="lineNum"> 85 </span> : template&lt;&gt; template&lt;&gt;
+<span class="lineNum"> 86 </span> : void to::test&lt; 4 &gt;()
+<span class="lineNum"> 87 </span> : {
+<span class="lineNum"> 88 </span> : assert(popcon[&quot;apt&quot;] &gt; popcon[&quot;libapt-pkg-dev&quot;]);
+<span class="lineNum"> 89 </span> : }
+<span class="lineNum"> 90 </span> :
+<span class="lineNum"> 91 </span> : // If there is no data, Popcon should work as if all scores were 0
+<span class="lineNum"> 92 </span> : template&lt;&gt; template&lt;&gt;
+<span class="lineNum"> 93 </span> : void to::test&lt;5&gt;()
+<span class="lineNum"> 94 </span> : {
+<span class="lineNum"> 95 </span> : Path::OverridePopconSourceDir odsd(&quot;./empty&quot;);
+<span class="lineNum"> 96 </span> : Path::OverridePopconIndexDir odid(&quot;./empty&quot;);
+<span class="lineNum"> 97 </span> : Path::OverridePopconUserSourceDir odusd(&quot;./empty&quot;);
+<span class="lineNum"> 98 </span> : Path::OverridePopconUserIndexDir oduid(&quot;./empty&quot;);
+<span class="lineNum"> 99 </span> : Popcon empty;
+<span class="lineNum"> 100 </span> :
+<span class="lineNum"> 101 </span> : assert_eq(empty.timestamp(), 0);
+<span class="lineNum"> 102 </span> : assert(!empty.hasData());
+<span class="lineNum"> 103 </span> :
+<span class="lineNum"> 104 </span> : assert(empty.size() == 0);
+<span class="lineNum"> 105 </span> : assert(empty.score(&quot;apt&quot;) == 0.0);
+<span class="lineNum"> 106 </span> : }
+<span class="lineNum"> 107 </span> : #endif
+<span class="lineNum"> 108 </span> :
+<span class="lineNum"> 109 </span> : };
+<span class="lineNum"> 110 </span> :
+<span class="lineNum"> 111 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/popcon/maint/index.html b/rep/ept/popcon/maint/index.html
new file mode 100644
index 0000000..f507903
--- /dev/null
+++ b/rep/ept/popcon/maint/index.html
@@ -0,0 +1,128 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/popcon/maint</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - ept/popcon/maint</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">258</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">88.4 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">228</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="path.cc.gcov.html">path.cc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=98 height=10 alt="97.6%"><img src="../../../snow.png" width=2 height=10 alt="97.6%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">97.6&nbsp;%</td>
+ <td class="coverNumHi">41&nbsp;/&nbsp;42&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="path.h.gcov.html">path.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">17&nbsp;/&nbsp;17&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="popconindexer.cc.gcov.html">popconindexer.cc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=79 height=10 alt="79.3%"><img src="../../../snow.png" width=21 height=10 alt="79.3%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">79.3&nbsp;%</td>
+ <td class="coverNumHi">92&nbsp;/&nbsp;116&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="popconindexer.h.gcov.html">popconindexer.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">5&nbsp;/&nbsp;5&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="sourcedir.cc.gcov.html">sourcedir.cc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=93 height=10 alt="93.4%"><img src="../../../snow.png" width=7 height=10 alt="93.4%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">93.4&nbsp;%</td>
+ <td class="coverNumHi">71&nbsp;/&nbsp;76&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="sourcedir.h.gcov.html">sourcedir.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">2&nbsp;/&nbsp;2&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/popcon/maint/path.cc.gcov.html b/rep/ept/popcon/maint/path.cc.gcov.html
new file mode 100644
index 0000000..b332e8d
--- /dev/null
+++ b/rep/ept/popcon/maint/path.cc.gcov.html
@@ -0,0 +1,182 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/popcon/maint/path.cc</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/popcon/maint</a> - path.cc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">42</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">97.6 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">41</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: c++; indent-tabs-mode: t -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : /** \file
+<span class="lineNum"> 4 </span> : * popcon paths
+<span class="lineNum"> 5 </span> : */
+<span class="lineNum"> 6 </span> :
+<span class="lineNum"> 7 </span> : /*
+<span class="lineNum"> 8 </span> : * Copyright (C) 2005,2006,2007 Enrico Zini &lt;enrico@debian.org&gt;, Peter Rockai &lt;me@mornfall.net&gt;
+<span class="lineNum"> 9 </span> : *
+<span class="lineNum"> 10 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 11 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 12 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 13 </span> : * (at your option) any later version.
+<span class="lineNum"> 14 </span> : *
+<span class="lineNum"> 15 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 16 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 17 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 18 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 19 </span> : *
+<span class="lineNum"> 20 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 21 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 22 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 23 </span> : */
+<span class="lineNum"> 24 </span> :
+<span class="lineNum"> 25 </span> : #include &lt;ept/config.h&gt;
+<span class="lineNum"> 26 </span> : #include &lt;ept/popcon/maint/path.h&gt;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : #include &lt;wibble/sys/fs.h&gt;
+<span class="lineNum"> 29 </span> : #include &lt;wibble/string.h&gt;
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : #include &lt;sys/types.h&gt; // getpwuid, stat, mkdir, getuid
+<span class="lineNum"> 32 </span> : #include &lt;sys/stat.h&gt; // stat, mkdir
+<span class="lineNum"> 33 </span> : #include &lt;pwd.h&gt; // getpwuid
+<span class="lineNum"> 34 </span> : #include &lt;unistd.h&gt; // stat, getuid
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : using namespace wibble;
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : namespace ept {
+<span class="lineNum"> 39 </span> : namespace popcon {
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span><span class="lineCov"> 2 : static std::string userdir()</span>
+<span class="lineNum"> 42 </span> : {
+<span class="lineNum"> 43 </span><span class="lineCov"> 2 : std::string rcdir;</span>
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span><span class="lineCov"> 2 : struct passwd* udata = getpwuid(getuid());</span>
+<span class="lineNum"> 46 </span><span class="lineCov"> 2 : rcdir = str::joinpath(udata-&gt;pw_dir, &quot;.popcon&quot;);</span>
+<span class="lineNum"> 47 </span> :
+<span class="lineNum"> 48 </span><span class="lineNoCov"> 0 : return rcdir;</span>
+<span class="lineNum"> 49 </span> : }
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> :
+<span class="lineNum"> 52 </span><span class="lineCov"> 178 : Path &amp;Path::instance() {</span>
+<span class="lineNum"> 53 </span><span class="lineCov"> 178 : if (!s_instance) {</span>
+<span class="lineNum"> 54 </span><span class="lineCov"> 1 : s_instance = new Path;</span>
+<span class="lineNum"> 55 </span><span class="lineCov"> 1 : instance().m_popconSourceDir = POPCON_DB_DIR;</span>
+<span class="lineNum"> 56 </span><span class="lineCov"> 1 : instance().m_popconIndexDir = POPCON_DB_DIR;</span>
+<span class="lineNum"> 57 </span><span class="lineCov"> 2 : instance().m_popconUserSourceDir = userdir();</span>
+<span class="lineNum"> 58 </span><span class="lineCov"> 2 : instance().m_popconUserIndexDir = userdir();</span>
+<span class="lineNum"> 59 </span> : }
+<span class="lineNum"> 60 </span><span class="lineCov"> 178 : return *s_instance;</span>
+<span class="lineNum"> 61 </span> : }
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span><span class="lineCov"> 2 : int Path::access( const std::string &amp;s, int m ) {</span>
+<span class="lineNum"> 64 </span><span class="lineCov"> 2 : return ::access( s.c_str(), m );</span>
+<span class="lineNum"> 65 </span> : }
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span><span class="lineCov"> 49 : time_t Path::timestamp( const std::string&amp; file ) {</span>
+<span class="lineNum"> 68 </span><span class="lineCov"> 49 : std::auto_ptr&lt;struct stat&gt; st = wibble::sys::fs::stat(file);</span>
+<span class="lineNum"> 69 </span><span class="lineCov"> 90 : return st.get() == NULL ? 0 : st-&gt;st_mtime;</span>
+<span class="lineNum"> 70 </span> : }
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span><span class="lineCov"> 14 : void Path::setPopconSourceDir( const std::string &amp;s )</span>
+<span class="lineNum"> 73 </span> : {
+<span class="lineNum"> 74 </span><span class="lineCov"> 14 : instance().m_popconSourceDir = s;</span>
+<span class="lineNum"> 75 </span><span class="lineCov"> 14 : }</span>
+<span class="lineNum"> 76 </span><span class="lineCov"> 14 : void Path::setPopconIndexDir( const std::string &amp;s )</span>
+<span class="lineNum"> 77 </span> : {
+<span class="lineNum"> 78 </span><span class="lineCov"> 14 : instance().m_popconIndexDir = s;</span>
+<span class="lineNum"> 79 </span><span class="lineCov"> 14 : }</span>
+<span class="lineNum"> 80 </span><span class="lineCov"> 14 : void Path::setPopconUserSourceDir( const std::string &amp;s )</span>
+<span class="lineNum"> 81 </span> : {
+<span class="lineNum"> 82 </span><span class="lineCov"> 14 : instance().m_popconUserSourceDir = s;</span>
+<span class="lineNum"> 83 </span><span class="lineCov"> 14 : }</span>
+<span class="lineNum"> 84 </span><span class="lineCov"> 14 : void Path::setPopconUserIndexDir( const std::string &amp;s )</span>
+<span class="lineNum"> 85 </span> : {
+<span class="lineNum"> 86 </span><span class="lineCov"> 14 : instance().m_popconUserIndexDir = s;</span>
+<span class="lineNum"> 87 </span><span class="lineCov"> 14 : }</span>
+<span class="lineNum"> 88 </span> :
+<span class="lineNum"> 89 </span><span class="lineCov"> 14 : std::string Path::popconSourceDir() { return instance().m_popconSourceDir; }</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 43 : std::string Path::popconIndexDir() { return instance().m_popconIndexDir; }</span>
+<span class="lineNum"> 91 </span><span class="lineCov"> 14 : std::string Path::popconUserSourceDir() { return instance().m_popconUserSourceDir; }</span>
+<span class="lineNum"> 92 </span><span class="lineCov"> 47 : std::string Path::popconUserIndexDir() { return instance().m_popconUserIndexDir; }</span>
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span><span class="lineCov"> 17 : std::string Path::scores() {</span>
+<span class="lineNum"> 95 </span><span class="lineCov"> 17 : return str::joinpath(popconIndexDir(), &quot;scores&quot;);</span>
+<span class="lineNum"> 96 </span> : }
+<span class="lineNum"> 97 </span> :
+<span class="lineNum"> 98 </span><span class="lineCov"> 17 : std::string Path::scoresIndex() {</span>
+<span class="lineNum"> 99 </span><span class="lineCov"> 17 : return str::joinpath(popconIndexDir(), &quot;scores.idx&quot;);</span>
+<span class="lineNum"> 100 </span> : }
+<span class="lineNum"> 101 </span> :
+<span class="lineNum"> 102 </span><span class="lineCov"> 20 : std::string Path::userScores() {</span>
+<span class="lineNum"> 103 </span><span class="lineCov"> 20 : return str::joinpath(popconUserIndexDir(), &quot;scores&quot;);</span>
+<span class="lineNum"> 104 </span> : }
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span><span class="lineCov"> 20 : std::string Path::userScoresIndex() {</span>
+<span class="lineNum"> 107 </span><span class="lineCov"> 20 : return str::joinpath(popconUserIndexDir(), &quot;scores.idx&quot;);</span>
+<span class="lineNum"> 108 </span> : }
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span> : Path *Path::s_instance = 0;
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span> : }
+<span class="lineNum"> 113 </span> : }
+<span class="lineNum"> 114 </span> :
+<span class="lineNum"> 115 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/popcon/maint/path.h.gcov.html b/rep/ept/popcon/maint/path.h.gcov.html
new file mode 100644
index 0000000..557613c
--- /dev/null
+++ b/rep/ept/popcon/maint/path.h.gcov.html
@@ -0,0 +1,194 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/popcon/maint/path.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/popcon/maint</a> - path.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">17</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">17</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: c++; indent-tabs-mode: t -*-
+<span class="lineNum"> 2 </span> : /** \file
+<span class="lineNum"> 3 </span> : * popcon paths
+<span class="lineNum"> 4 </span> : */
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : /*
+<span class="lineNum"> 7 </span> : * Copyright (C) 2005,2006,2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 8 </span> : *
+<span class="lineNum"> 9 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 10 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 11 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 12 </span> : * (at your option) any later version.
+<span class="lineNum"> 13 </span> : *
+<span class="lineNum"> 14 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 15 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 16 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 17 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 18 </span> : *
+<span class="lineNum"> 19 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 20 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 21 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 22 </span> : */
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : #ifndef EPT_POPCON_PATH_H
+<span class="lineNum"> 25 </span> : #define EPT_POPCON_PATH_H
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #include &lt;string&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : struct stat;
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : namespace ept {
+<span class="lineNum"> 32 </span> : namespace popcon {
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span> : /**
+<span class="lineNum"> 35 </span> : * Singleton class to configure and access the various Popcon paths
+<span class="lineNum"> 36 </span> : */
+<span class="lineNum"> 37 </span> : class Path
+<span class="lineNum"> 38 </span><span class="lineCov"> 1 : {</span>
+<span class="lineNum"> 39 </span> : public:
+<span class="lineNum"> 40 </span> : static std::string scores();
+<span class="lineNum"> 41 </span> : static std::string scoresIndex();
+<span class="lineNum"> 42 </span> : static std::string userScores();
+<span class="lineNum"> 43 </span> : static std::string userScoresIndex();
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : static std::string popconSourceDir();
+<span class="lineNum"> 46 </span> : static std::string popconIndexDir();
+<span class="lineNum"> 47 </span> : static std::string popconUserSourceDir();
+<span class="lineNum"> 48 </span> : static std::string popconUserIndexDir();
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span> : // Directory where Popcon source data is found
+<span class="lineNum"> 51 </span> : static void setPopconSourceDir( const std::string &amp;s );
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span> : // Directory where Popcon indexes are kept
+<span class="lineNum"> 54 </span> : static void setPopconIndexDir( const std::string &amp;s );
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span> : // User-specific directory for Popcon source data
+<span class="lineNum"> 57 </span> : static void setPopconUserSourceDir( const std::string &amp;s );
+<span class="lineNum"> 58 </span> :
+<span class="lineNum"> 59 </span> : // User-specific directory for Popcon index data
+<span class="lineNum"> 60 </span> : static void setPopconUserIndexDir( const std::string &amp;s );
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : static int access( const std::string &amp;, int );
+<span class="lineNum"> 63 </span> : static time_t timestamp( const std::string&amp; );
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : // RAII-style classes to temporarily override directories
+<span class="lineNum"> 66 </span> : class OverridePopconSourceDir
+<span class="lineNum"> 67 </span> : {
+<span class="lineNum"> 68 </span> : std::string old;
+<span class="lineNum"> 69 </span> : public:
+<span class="lineNum"> 70 </span><span class="lineCov"> 7 : OverridePopconSourceDir(const std::string&amp; path) : old(Path::popconSourceDir())</span>
+<span class="lineNum"> 71 </span> : {
+<span class="lineNum"> 72 </span><span class="lineCov"> 7 : Path::setPopconSourceDir(path);</span>
+<span class="lineNum"> 73 </span><span class="lineCov"> 7 : }</span>
+<span class="lineNum"> 74 </span><span class="lineCov"> 7 : ~OverridePopconSourceDir() { Path::setPopconSourceDir(old); }</span>
+<span class="lineNum"> 75 </span> : };
+<span class="lineNum"> 76 </span> : class OverridePopconIndexDir
+<span class="lineNum"> 77 </span> : {
+<span class="lineNum"> 78 </span> : std::string old;
+<span class="lineNum"> 79 </span> : public:
+<span class="lineNum"> 80 </span><span class="lineCov"> 7 : OverridePopconIndexDir(const std::string&amp; path) : old(Path::popconIndexDir())</span>
+<span class="lineNum"> 81 </span> : {
+<span class="lineNum"> 82 </span><span class="lineCov"> 7 : Path::setPopconIndexDir(path);</span>
+<span class="lineNum"> 83 </span><span class="lineCov"> 7 : }</span>
+<span class="lineNum"> 84 </span><span class="lineCov"> 7 : ~OverridePopconIndexDir() { Path::setPopconIndexDir(old); }</span>
+<span class="lineNum"> 85 </span> : };
+<span class="lineNum"> 86 </span> : class OverridePopconUserSourceDir
+<span class="lineNum"> 87 </span> : {
+<span class="lineNum"> 88 </span> : std::string old;
+<span class="lineNum"> 89 </span> : public:
+<span class="lineNum"> 90 </span><span class="lineCov"> 7 : OverridePopconUserSourceDir(const std::string&amp; path) : old(Path::popconUserSourceDir())</span>
+<span class="lineNum"> 91 </span> : {
+<span class="lineNum"> 92 </span><span class="lineCov"> 7 : Path::setPopconUserSourceDir(path);</span>
+<span class="lineNum"> 93 </span><span class="lineCov"> 7 : }</span>
+<span class="lineNum"> 94 </span><span class="lineCov"> 7 : ~OverridePopconUserSourceDir() { Path::setPopconUserSourceDir(old); }</span>
+<span class="lineNum"> 95 </span> : };
+<span class="lineNum"> 96 </span> : class OverridePopconUserIndexDir
+<span class="lineNum"> 97 </span> : {
+<span class="lineNum"> 98 </span> : std::string old;
+<span class="lineNum"> 99 </span> : public:
+<span class="lineNum"> 100 </span><span class="lineCov"> 7 : OverridePopconUserIndexDir(const std::string&amp; path) : old(Path::popconUserIndexDir())</span>
+<span class="lineNum"> 101 </span> : {
+<span class="lineNum"> 102 </span><span class="lineCov"> 7 : Path::setPopconUserIndexDir(path);</span>
+<span class="lineNum"> 103 </span><span class="lineCov"> 7 : }</span>
+<span class="lineNum"> 104 </span><span class="lineCov"> 7 : ~OverridePopconUserIndexDir() { Path::setPopconUserIndexDir(old); }</span>
+<span class="lineNum"> 105 </span> : };
+<span class="lineNum"> 106 </span> : protected:
+<span class="lineNum"> 107 </span> : static Path *s_instance;
+<span class="lineNum"> 108 </span> : static Path &amp;instance();
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span> : // Directory where Popcon source data is found
+<span class="lineNum"> 111 </span> : std::string m_popconSourceDir;
+<span class="lineNum"> 112 </span> :
+<span class="lineNum"> 113 </span> : // Directory where Popcon indexes are kept
+<span class="lineNum"> 114 </span> : std::string m_popconIndexDir;
+<span class="lineNum"> 115 </span> :
+<span class="lineNum"> 116 </span> : // User-specific directory for Popcon source data
+<span class="lineNum"> 117 </span> : std::string m_popconUserSourceDir;
+<span class="lineNum"> 118 </span> :
+<span class="lineNum"> 119 </span> : // User-specific directory for Popcon index data
+<span class="lineNum"> 120 </span> : std::string m_popconUserIndexDir;
+<span class="lineNum"> 121 </span> : };
+<span class="lineNum"> 122 </span> :
+<span class="lineNum"> 123 </span> : }
+<span class="lineNum"> 124 </span> : }
+<span class="lineNum"> 125 </span> :
+<span class="lineNum"> 126 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 127 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/popcon/maint/popconindexer.cc.gcov.html b/rep/ept/popcon/maint/popconindexer.cc.gcov.html
new file mode 100644
index 0000000..28d6298
--- /dev/null
+++ b/rep/ept/popcon/maint/popconindexer.cc.gcov.html
@@ -0,0 +1,314 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/popcon/maint/popconindexer.cc</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/popcon/maint</a> - popconindexer.cc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">116</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">79.3 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">92</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &lt;ept/popcon/popcon.h&gt;
+<span class="lineNum"> 2 </span> : #include &lt;ept/popcon/maint/popconindexer.h&gt;
+<span class="lineNum"> 3 </span> : #include &lt;ept/popcon/maint/path.h&gt;
+<span class="lineNum"> 4 </span> :
+<span class="lineNum"> 5 </span> : #include &lt;wibble/exception.h&gt;
+<span class="lineNum"> 6 </span> : #include &lt;wibble/sys/fs.h&gt;
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : #include &lt;tagcoll/diskindex/mmap.h&gt;
+<span class="lineNum"> 9 </span> :
+<span class="lineNum"> 10 </span> : #include &lt;set&gt;
+<span class="lineNum"> 11 </span> : #include &lt;string&gt;
+<span class="lineNum"> 12 </span> : #include &lt;cstdio&gt;
+<span class="lineNum"> 13 </span> : #include &lt;cstring&gt;
+<span class="lineNum"> 14 </span> :
+<span class="lineNum"> 15 </span> : using namespace std;
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : namespace ept {
+<span class="lineNum"> 18 </span> : namespace popcon {
+<span class="lineNum"> 19 </span> :
+<span class="lineNum"> 20 </span> : template&lt;typename STRUCT&gt;
+<span class="lineNum"> 21 </span> : struct StructIndexer : public tagcoll::diskindex::MMapIndexer
+<span class="lineNum"> 22 </span><span class="lineCov"> 1 : {</span>
+<span class="lineNum"> 23 </span> : const STRUCT&amp; data;
+<span class="lineNum"> 24 </span><span class="lineCov"> 1 : StructIndexer(const STRUCT&amp; data) : data(data) {}</span>
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span><span class="lineCov"> 1 : int encodedSize() const { return sizeof(STRUCT); }</span>
+<span class="lineNum"> 27 </span><span class="lineCov"> 1 : void encode(char* buf) const { *(STRUCT*)buf = data; }</span>
+<span class="lineNum"> 28 </span> : };
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : /// MMapIndexer that indexes the package names
+<span class="lineNum"> 31 </span> : struct PopconGenerator : public tagcoll::diskindex::MMapIndexer
+<span class="lineNum"> 32 </span><span class="lineCov"> 4 : {</span>
+<span class="lineNum"> 33 </span> : // Sorted set of all available package names and data
+<span class="lineNum"> 34 </span> : std::map&lt;std::string, Score&gt; data;
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span><span class="lineCov"> 1 : int encodedSize() const</span>
+<span class="lineNum"> 37 </span> : {
+<span class="lineNum"> 38 </span><span class="lineCov"> 1 : int size = data.size() * sizeof(Score);</span>
+<span class="lineNum"> 39 </span><span class="lineCov"> 69911 : for (std::map&lt;std::string, Score&gt;::const_iterator i = data.begin();</span>
+<span class="lineNum"> 40 </span> : i != data.end(); ++i)
+<span class="lineNum"> 41 </span><span class="lineCov"> 69910 : size += i-&gt;first.size() + 1;</span>
+<span class="lineNum"> 42 </span><span class="lineCov"> 1 : return tagcoll::diskindex::MMap::align(size);</span>
+<span class="lineNum"> 43 </span> : }
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span><span class="lineCov"> 1 : void encode(char* buf) const</span>
+<span class="lineNum"> 46 </span> : {
+<span class="lineNum"> 47 </span><span class="lineCov"> 1 : int pos = data.size() * sizeof(Score);</span>
+<span class="lineNum"> 48 </span><span class="lineCov"> 1 : int idx = 0;</span>
+<span class="lineNum"> 49 </span><span class="lineCov"> 69911 : for (std::map&lt;std::string, Score&gt;::const_iterator i = data.begin();</span>
+<span class="lineNum"> 50 </span> : i != data.end(); ++i)
+<span class="lineNum"> 51 </span> : {
+<span class="lineNum"> 52 </span><span class="lineCov"> 69910 : ((Score*)buf)[idx] = i-&gt;second;</span>
+<span class="lineNum"> 53 </span><span class="lineCov"> 69910 : ((Score*)buf)[idx].offset = pos;</span>
+<span class="lineNum"> 54 </span><span class="lineCov"> 69910 : memcpy(buf + pos, i-&gt;first.c_str(), i-&gt;first.size() + 1);</span>
+<span class="lineNum"> 55 </span><span class="lineCov"> 69910 : pos += i-&gt;first.size() + 1;</span>
+<span class="lineNum"> 56 </span><span class="lineCov"> 69910 : ++idx;</span>
+<span class="lineNum"> 57 </span> : }
+<span class="lineNum"> 58 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 59 </span> : };
+<span class="lineNum"> 60 </span> :
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span><span class="lineCov"> 7 : PopconIndexer::PopconIndexer()</span>
+<span class="lineNum"> 63 </span> : : mainSource(Path::popconSourceDir()),
+<span class="lineNum"> 64 </span><span class="lineCov"> 7 : userSource(Path::popconUserSourceDir())</span>
+<span class="lineNum"> 65 </span> : {
+<span class="lineNum"> 66 </span><span class="lineCov"> 7 : rescan();</span>
+<span class="lineNum"> 67 </span><span class="lineCov"> 7 : }</span>
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span><span class="lineCov"> 7 : void PopconIndexer::rescan()</span>
+<span class="lineNum"> 70 </span> : {
+<span class="lineNum"> 71 </span><span class="lineCov"> 7 : ts_main_src = mainSource.timestamp();</span>
+<span class="lineNum"> 72 </span><span class="lineCov"> 7 : ts_user_src = userSource.timestamp();</span>
+<span class="lineNum"> 73 </span><span class="lineCov"> 7 : ts_main_sco = Path::timestamp(Path::scores());</span>
+<span class="lineNum"> 74 </span><span class="lineCov"> 14 : ts_user_sco = Path::timestamp(Path::userScores());</span>
+<span class="lineNum"> 75 </span><span class="lineCov"> 14 : ts_main_idx = Path::timestamp(Path::scoresIndex());</span>
+<span class="lineNum"> 76 </span><span class="lineCov"> 14 : ts_user_idx = Path::timestamp(Path::userScoresIndex());</span>
+<span class="lineNum"> 77 </span><span class="lineCov"> 7 : }</span>
+<span class="lineNum"> 78 </span> :
+<span class="lineNum"> 79 </span><span class="lineCov"> 7 : bool PopconIndexer::needsRebuild() const</span>
+<span class="lineNum"> 80 </span> : {
+<span class="lineNum"> 81 </span> : // If there are no indexes of any kind, then we need rebuilding
+<span class="lineNum"> 82 </span><span class="lineCov"> 7 : if (ts_user_sco == 0 || ts_main_sco == 0 || ts_user_idx == 0 &amp;&amp; ts_main_idx == 0)</span>
+<span class="lineNum"> 83 </span><span class="lineCov"> 2 : return true;</span>
+<span class="lineNum"> 84 </span> :
+<span class="lineNum"> 85 </span> : // If the user index is ok, then we are fine
+<span class="lineNum"> 86 </span><span class="lineCov"> 5 : if (ts_user_sco &gt;= sourceTimestamp() &amp;&amp; ts_user_idx &gt;= sourceTimestamp())</span>
+<span class="lineNum"> 87 </span><span class="lineCov"> 5 : return false;</span>
+<span class="lineNum"> 88 </span> :
+<span class="lineNum"> 89 </span> : // If there are user sources, then we cannot use the system index
+<span class="lineNum"> 90 </span><span class="lineNoCov"> 0 : if (ts_user_src &gt; 0)</span>
+<span class="lineNum"> 91 </span><span class="lineNoCov"> 0 : return true;</span>
+<span class="lineNum"> 92 </span> :
+<span class="lineNum"> 93 </span> : // If there are no user sources, then we can fallback on the system
+<span class="lineNum"> 94 </span> : // indexes in case the user indexes are not up to date
+<span class="lineNum"> 95 </span><span class="lineNoCov"> 0 : if (ts_main_sco &gt;= sourceTimestamp() &amp;&amp; ts_main_idx &gt;= sourceTimestamp())</span>
+<span class="lineNum"> 96 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 97 </span> :
+<span class="lineNum"> 98 </span><span class="lineNoCov"> 0 : return true;</span>
+<span class="lineNum"> 99 </span> : }
+<span class="lineNum"> 100 </span> :
+<span class="lineNum"> 101 </span><span class="lineCov"> 7 : bool PopconIndexer::userIndexIsRedundant() const</span>
+<span class="lineNum"> 102 </span> : {
+<span class="lineNum"> 103 </span> : // If there is no user index, then it is not redundant
+<span class="lineNum"> 104 </span><span class="lineCov"> 7 : if (ts_user_idx == 0)</span>
+<span class="lineNum"> 105 </span><span class="lineCov"> 1 : return false;</span>
+<span class="lineNum"> 106 </span> :
+<span class="lineNum"> 107 </span> : // If the system index is not up to date, then the user index is not
+<span class="lineNum"> 108 </span> : // redundant
+<span class="lineNum"> 109 </span><span class="lineCov"> 6 : if (ts_main_idx &lt; sourceTimestamp())</span>
+<span class="lineNum"> 110 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span><span class="lineCov"> 6 : return true;</span>
+<span class="lineNum"> 113 </span> : }
+<span class="lineNum"> 114 </span> :
+<span class="lineNum"> 115 </span><span class="lineCov"> 2 : bool PopconIndexer::rebuild(const std::string&amp; scofname, const std::string&amp; idxfname)</span>
+<span class="lineNum"> 116 </span> : {
+<span class="lineNum"> 117 </span><span class="lineCov"> 2 : PopconGenerator gen;</span>
+<span class="lineNum"> 118 </span> : InfoStruct is;
+<span class="lineNum"> 119 </span><span class="lineCov"> 2 : is.submissions = 0;</span>
+<span class="lineNum"> 120 </span><span class="lineCov"> 2 : if (!mainSource.readScores(gen.data, is.submissions))</span>
+<span class="lineNum"> 121 </span><span class="lineCov"> 1 : userSource.readScores(gen.data, is.submissions);</span>
+<span class="lineNum"> 122 </span><span class="lineCov"> 2 : if (gen.data.empty())</span>
+<span class="lineNum"> 123 </span><span class="lineCov"> 1 : return false;</span>
+<span class="lineNum"> 124 </span> :
+<span class="lineNum"> 125 </span><span class="lineCov"> 1 : StructIndexer&lt;InfoStruct&gt; infoStruct(is);</span>
+<span class="lineNum"> 126 </span> :
+<span class="lineNum"> 127 </span> : // Create the index
+<span class="lineNum"> 128 </span><span class="lineCov"> 1 : tagcoll::diskindex::MasterMMapIndexer master(idxfname);</span>
+<span class="lineNum"> 129 </span><span class="lineCov"> 1 : master.append(gen);</span>
+<span class="lineNum"> 130 </span><span class="lineCov"> 1 : master.append(infoStruct);</span>
+<span class="lineNum"> 131 </span><span class="lineCov"> 1 : master.commit();</span>
+<span class="lineNum"> 132 </span> :
+<span class="lineNum"> 133 </span> : // for (map&lt;string, Score&gt;::const_iterator i = gen.data.begin(); i != gen.data.end(); ++i)
+<span class="lineNum"> 134 </span> : // {
+<span class="lineNum"> 135 </span> : // fprintf(stderr, &quot;%s %d %f\n&quot;, i-&gt;first.c_str(), i-&gt;second.offset, i-&gt;second.score);
+<span class="lineNum"> 136 </span> : // }
+<span class="lineNum"> 137 </span> :
+<span class="lineNum"> 138 </span> : // Create the score file
+<span class="lineNum"> 139 </span><span class="lineCov"> 1 : FILE* out = fopen(scofname.c_str(), &quot;wt&quot;);</span>
+<span class="lineNum"> 140 </span><span class="lineCov"> 1 : if (out == NULL)</span>
+<span class="lineNum"> 141 </span><span class="lineNoCov"> 0 : throw wibble::exception::File(scofname, &quot;opening and truncating file for writing&quot;);</span>
+<span class="lineNum"> 142 </span><span class="lineCov"> 69911 : for (map&lt;string, Score&gt;::const_iterator i = gen.data.begin();</span>
+<span class="lineNum"> 143 </span> : i != gen.data.end(); ++i)
+<span class="lineNum"> 144 </span> : {
+<span class="lineNum"> 145 </span><span class="lineCov"> 69910 : fprintf(out, &quot;%s %f\n&quot;, i-&gt;first.c_str(), i-&gt;second.score);</span>
+<span class="lineNum"> 146 </span> : }
+<span class="lineNum"> 147 </span><span class="lineCov"> 1 : fclose(out);</span>
+<span class="lineNum"> 148 </span><span class="lineCov"> 1 : return true;</span>
+<span class="lineNum"> 149 </span> : }
+<span class="lineNum"> 150 </span> :
+<span class="lineNum"> 151 </span><span class="lineCov"> 7 : bool PopconIndexer::rebuildIfNeeded()</span>
+<span class="lineNum"> 152 </span> : {
+<span class="lineNum"> 153 </span><span class="lineCov"> 7 : if (needsRebuild())</span>
+<span class="lineNum"> 154 </span> : {
+<span class="lineNum"> 155 </span> : // Decide if we rebuild the user index or the system index
+<span class="lineNum"> 156 </span><span class="lineCov"> 2 : if (Path::access(Path::popconIndexDir(), W_OK) == 0)</span>
+<span class="lineNum"> 157 </span> : {
+<span class="lineNum"> 158 </span> : // Since we can write on the system index directory, we rebuild
+<span class="lineNum"> 159 </span> : // the system index
+<span class="lineNum"> 160 </span><span class="lineCov"> 2 : if (!rebuild(Path::scores(), Path::scoresIndex()))</span>
+<span class="lineNum"> 161 </span><span class="lineCov"> 1 : return false;</span>
+<span class="lineNum"> 162 </span><span class="lineCov"> 1 : ts_main_sco = Path::timestamp(Path::scores());</span>
+<span class="lineNum"> 163 </span><span class="lineCov"> 2 : ts_main_idx = Path::timestamp(Path::scoresIndex());</span>
+<span class="lineNum"> 164 </span><span class="lineCov"> 2 : if (Path::scores() == Path::userScores())</span>
+<span class="lineNum"> 165 </span><span class="lineCov"> 1 : ts_user_sco = ts_main_sco;</span>
+<span class="lineNum"> 166 </span><span class="lineCov"> 1 : if (Path::scoresIndex() == Path::userScoresIndex())</span>
+<span class="lineNum"> 167 </span><span class="lineCov"> 1 : ts_user_idx = ts_main_idx;</span>
+<span class="lineNum"> 168 </span> : } else {
+<span class="lineNum"> 169 </span><span class="lineNoCov"> 0 : wibble::sys::fs::mkFilePath(Path::userScores());</span>
+<span class="lineNum"> 170 </span><span class="lineNoCov"> 0 : wibble::sys::fs::mkFilePath(Path::userScoresIndex());</span>
+<span class="lineNum"> 171 </span><span class="lineNoCov"> 0 : if (!rebuild(Path::userScores(), Path::userScoresIndex()))</span>
+<span class="lineNum"> 172 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 173 </span><span class="lineNoCov"> 0 : ts_user_sco = Path::timestamp(Path::userScores());</span>
+<span class="lineNum"> 174 </span><span class="lineNoCov"> 0 : ts_user_idx = Path::timestamp(Path::userScoresIndex());</span>
+<span class="lineNum"> 175 </span> : }
+<span class="lineNum"> 176 </span><span class="lineCov"> 1 : return true;</span>
+<span class="lineNum"> 177 </span> : }
+<span class="lineNum"> 178 </span><span class="lineCov"> 5 : return false;</span>
+<span class="lineNum"> 179 </span> : }
+<span class="lineNum"> 180 </span> :
+<span class="lineNum"> 181 </span><span class="lineCov"> 7 : bool PopconIndexer::deleteRedundantUserIndex()</span>
+<span class="lineNum"> 182 </span> : {
+<span class="lineNum"> 183 </span><span class="lineCov"> 7 : if (userIndexIsRedundant())</span>
+<span class="lineNum"> 184 </span> : {
+<span class="lineNum"> 185 </span> : // Delete the user indexes if they exist
+<span class="lineNum"> 186 </span><span class="lineCov"> 6 : if (Path::scores() != Path::userScores())</span>
+<span class="lineNum"> 187 </span> : {
+<span class="lineNum"> 188 </span><span class="lineNoCov"> 0 : unlink(Path::userScores().c_str());</span>
+<span class="lineNum"> 189 </span><span class="lineNoCov"> 0 : ts_user_sco = 0;</span>
+<span class="lineNum"> 190 </span> : }
+<span class="lineNum"> 191 </span><span class="lineCov"> 6 : if (Path::scoresIndex() != Path::userScoresIndex())</span>
+<span class="lineNum"> 192 </span> : {
+<span class="lineNum"> 193 </span><span class="lineNoCov"> 0 : unlink(Path::userScoresIndex().c_str());</span>
+<span class="lineNum"> 194 </span><span class="lineNoCov"> 0 : ts_user_idx = 0;</span>
+<span class="lineNum"> 195 </span> : }
+<span class="lineNum"> 196 </span><span class="lineCov"> 6 : return true;</span>
+<span class="lineNum"> 197 </span> : }
+<span class="lineNum"> 198 </span><span class="lineCov"> 1 : return false;</span>
+<span class="lineNum"> 199 </span> : }
+<span class="lineNum"> 200 </span> :
+<span class="lineNum"> 201 </span><span class="lineCov"> 7 : bool PopconIndexer::getUpToDatePopcon(std::string&amp; scofname, std::string&amp; idxfname)</span>
+<span class="lineNum"> 202 </span> : {
+<span class="lineNum"> 203 </span> : // If there are no indexes of any kind, then we have nothing to return
+<span class="lineNum"> 204 </span><span class="lineCov"> 7 : if (ts_user_sco == 0 &amp;&amp; ts_main_sco == 0 &amp;&amp; ts_user_idx == 0 &amp;&amp; ts_main_idx == 0)</span>
+<span class="lineNum"> 205 </span><span class="lineCov"> 1 : return false;</span>
+<span class="lineNum"> 206 </span> :
+<span class="lineNum"> 207 </span> : // If the user index is up to date, use it
+<span class="lineNum"> 208 </span><span class="lineCov"> 6 : if (ts_user_sco &gt;= sourceTimestamp() &amp;&amp;</span>
+<span class="lineNum"> 209 </span> : ts_user_idx &gt;= sourceTimestamp())
+<span class="lineNum"> 210 </span> : {
+<span class="lineNum"> 211 </span><span class="lineCov"> 6 : scofname = Path::userScores();</span>
+<span class="lineNum"> 212 </span><span class="lineCov"> 12 : idxfname = Path::userScoresIndex();</span>
+<span class="lineNum"> 213 </span><span class="lineCov"> 6 : return true;</span>
+<span class="lineNum"> 214 </span> : }
+<span class="lineNum"> 215 </span> :
+<span class="lineNum"> 216 </span> : // If the user index is not up to date and we have user sources, we cannot
+<span class="lineNum"> 217 </span> : // fall back to the system index
+<span class="lineNum"> 218 </span><span class="lineNoCov"> 0 : if (ts_user_src != 0)</span>
+<span class="lineNum"> 219 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 220 </span> :
+<span class="lineNum"> 221 </span> : // Fallback to the system index
+<span class="lineNum"> 222 </span><span class="lineNoCov"> 0 : if (ts_main_sco &gt;= sourceTimestamp() &amp;&amp;</span>
+<span class="lineNum"> 223 </span> : ts_main_idx &gt;= sourceTimestamp())
+<span class="lineNum"> 224 </span> : {
+<span class="lineNum"> 225 </span><span class="lineNoCov"> 0 : scofname = Path::scores();</span>
+<span class="lineNum"> 226 </span><span class="lineNoCov"> 0 : idxfname = Path::scoresIndex();</span>
+<span class="lineNum"> 227 </span><span class="lineNoCov"> 0 : return true;</span>
+<span class="lineNum"> 228 </span> : }
+<span class="lineNum"> 229 </span> :
+<span class="lineNum"> 230 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 231 </span> : }
+<span class="lineNum"> 232 </span> :
+<span class="lineNum"> 233 </span> :
+<span class="lineNum"> 234 </span><span class="lineCov"> 7 : bool PopconIndexer::obtainWorkingPopcon(std::string&amp; scofname, std::string&amp; idxfname)</span>
+<span class="lineNum"> 235 </span> : {
+<span class="lineNum"> 236 </span><span class="lineCov"> 7 : PopconIndexer indexer;</span>
+<span class="lineNum"> 237 </span> :
+<span class="lineNum"> 238 </span><span class="lineCov"> 7 : indexer.rebuildIfNeeded();</span>
+<span class="lineNum"> 239 </span><span class="lineCov"> 7 : indexer.deleteRedundantUserIndex();</span>
+<span class="lineNum"> 240 </span><span class="lineCov"> 7 : return indexer.getUpToDatePopcon(scofname, idxfname);</span>
+<span class="lineNum"> 241 </span> : }
+<span class="lineNum"> 242 </span> :
+<span class="lineNum"> 243 </span> :
+<span class="lineNum"> 244 </span> : }
+<span class="lineNum"> 245 </span><span class="lineCov"> 6 : }</span>
+<span class="lineNum"> 246 </span> :
+<span class="lineNum"> 247 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/popcon/maint/popconindexer.h.gcov.html b/rep/ept/popcon/maint/popconindexer.h.gcov.html
new file mode 100644
index 0000000..fe36a9d
--- /dev/null
+++ b/rep/ept/popcon/maint/popconindexer.h.gcov.html
@@ -0,0 +1,142 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/popcon/maint/popconindexer.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/popcon/maint</a> - popconindexer.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">5</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">5</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef EPT_DEBTAGS_PKGIDINDEXER_H
+<span class="lineNum"> 2 </span> : #define EPT_DEBTAGS_PKGIDINDEXER_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** @file
+<span class="lineNum"> 5 </span> : * @author Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 6 </span> : * Rebuild and maintain the map from package IDs to package names
+<span class="lineNum"> 7 </span> : */
+<span class="lineNum"> 8 </span> :
+<span class="lineNum"> 9 </span> : /*
+<span class="lineNum"> 10 </span> : * Copyright (C) 2003-2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 11 </span> : *
+<span class="lineNum"> 12 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 13 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 14 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 15 </span> : * (at your option) any later version.
+<span class="lineNum"> 16 </span> : *
+<span class="lineNum"> 17 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 18 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 19 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 20 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 21 </span> : *
+<span class="lineNum"> 22 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 23 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 24 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 25 </span> : */
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #include &lt;ept/popcon/maint/sourcedir.h&gt;
+<span class="lineNum"> 28 </span> : #include &lt;string&gt;
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : namespace ept {
+<span class="lineNum"> 31 </span> : namespace popcon {
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : struct InfoStruct
+<span class="lineNum"> 34 </span> : {
+<span class="lineNum"> 35 </span> : size_t submissions;
+<span class="lineNum"> 36 </span> : };
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : struct PopconIndexer
+<span class="lineNum"> 39 </span><span class="lineCov"> 7 : {</span>
+<span class="lineNum"> 40 </span> : SourceDir mainSource;
+<span class="lineNum"> 41 </span> : SourceDir userSource;
+<span class="lineNum"> 42 </span> : time_t ts_main_src;
+<span class="lineNum"> 43 </span> : time_t ts_user_src;
+<span class="lineNum"> 44 </span> : time_t ts_main_sco;
+<span class="lineNum"> 45 </span> : time_t ts_user_sco;
+<span class="lineNum"> 46 </span> : time_t ts_main_idx;
+<span class="lineNum"> 47 </span> : time_t ts_user_idx;
+<span class="lineNum"> 48 </span> :
+<span class="lineNum"> 49 </span><span class="lineCov"> 28 : time_t sourceTimestamp() const</span>
+<span class="lineNum"> 50 </span> : {
+<span class="lineNum"> 51 </span><span class="lineCov"> 28 : time_t res = ts_main_src;</span>
+<span class="lineNum"> 52 </span><span class="lineCov"> 28 : if (ts_user_src &gt; res) res = ts_user_src;</span>
+<span class="lineNum"> 53 </span><span class="lineCov"> 28 : return res;</span>
+<span class="lineNum"> 54 </span> :
+<span class="lineNum"> 55 </span> : }
+<span class="lineNum"> 56 </span> : bool needsRebuild() const;
+<span class="lineNum"> 57 </span> : bool rebuild(const std::string&amp; scofname, const std::string&amp; idxfname);
+<span class="lineNum"> 58 </span> : bool rebuildIfNeeded();
+<span class="lineNum"> 59 </span> : bool getUpToDatePopcon(std::string&amp; scofname, std::string&amp; idxfname);
+<span class="lineNum"> 60 </span> :
+<span class="lineNum"> 61 </span> : bool userIndexIsRedundant() const;
+<span class="lineNum"> 62 </span> : bool deleteRedundantUserIndex();
+<span class="lineNum"> 63 </span> :
+<span class="lineNum"> 64 </span> : void rescan();
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span> : PopconIndexer();
+<span class="lineNum"> 67 </span> :
+<span class="lineNum"> 68 </span> : static bool obtainWorkingPopcon(std::string&amp; scofname, std::string&amp; idxfname);
+<span class="lineNum"> 69 </span> : };
+<span class="lineNum"> 70 </span> :
+<span class="lineNum"> 71 </span> : }
+<span class="lineNum"> 72 </span> : }
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 75 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/popcon/maint/sourcedir.cc.gcov.html b/rep/ept/popcon/maint/sourcedir.cc.gcov.html
new file mode 100644
index 0000000..80a1a4e
--- /dev/null
+++ b/rep/ept/popcon/maint/sourcedir.cc.gcov.html
@@ -0,0 +1,210 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/popcon/maint/sourcedir.cc</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/popcon/maint</a> - sourcedir.cc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">76</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">93.4 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">71</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &lt;ept/popcon/maint/sourcedir.h&gt;
+<span class="lineNum"> 2 </span> : #include &lt;ept/popcon/maint/path.h&gt;
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : #include &lt;wibble/string.h&gt;
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : #include &lt;tagcoll/input/zlib.h&gt;
+<span class="lineNum"> 7 </span> : #include &lt;tagcoll/input/stdio.h&gt;
+<span class="lineNum"> 8 </span> :
+<span class="lineNum"> 9 </span> : #include &lt;cstdlib&gt;
+<span class="lineNum"> 10 </span> :
+<span class="lineNum"> 11 </span> : using namespace std;
+<span class="lineNum"> 12 </span> : using namespace wibble;
+<span class="lineNum"> 13 </span> :
+<span class="lineNum"> 14 </span> : namespace ept {
+<span class="lineNum"> 15 </span> : namespace popcon {
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span><span class="lineCov"> 93 : SourceDir::FileType SourceDir::fileType(const std::string&amp; name)</span>
+<span class="lineNum"> 18 </span> : {
+<span class="lineNum"> 19 </span><span class="lineCov"> 93 : if (name[0] == '.') return SKIP;</span>
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span><span class="lineCov"> 59 : if (name == &quot;all-popcon-results.txt&quot;) return RAW;</span>
+<span class="lineNum"> 22 </span><span class="lineCov"> 59 : if (name == &quot;all-popcon-results.txt.gz&quot;) return RAWGZ;</span>
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span><span class="lineCov"> 46 : return SKIP;</span>
+<span class="lineNum"> 25 </span> : }
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span><span class="lineCov"> 14 : time_t SourceDir::timestamp()</span>
+<span class="lineNum"> 28 </span> : {
+<span class="lineNum"> 29 </span><span class="lineCov"> 14 : if (!valid()) return 0;</span>
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span><span class="lineCov"> 14 : time_t max = 0;</span>
+<span class="lineNum"> 32 </span><span class="lineCov"> 98 : for (const_iterator d = begin(); d != end(); ++d)</span>
+<span class="lineNum"> 33 </span> : {
+<span class="lineNum"> 34 </span><span class="lineCov"> 84 : FileType type = fileType(d-&gt;d_name);</span>
+<span class="lineNum"> 35 </span><span class="lineCov"> 84 : if (type == SKIP) continue;</span>
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span><span class="lineCov"> 12 : time_t ts = Path::timestamp(str::joinpath(path(), d-&gt;d_name));</span>
+<span class="lineNum"> 38 </span><span class="lineCov"> 24 : if (ts &gt; max) max = ts;</span>
+<span class="lineNum"> 39 </span><span class="lineCov"> 14 : }</span>
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span><span class="lineCov"> 14 : return max;</span>
+<span class="lineNum"> 42 </span> : }
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span><span class="lineCov"> 70200 : bool readLine(tagcoll::input::Input&amp; in, string&amp; str)</span>
+<span class="lineNum"> 45 </span> : {
+<span class="lineNum"> 46 </span><span class="lineCov"> 70200 : str.clear();</span>
+<span class="lineNum"> 47 </span> : int c;
+<span class="lineNum"> 48 </span><span class="lineCov"> 4594913 : while ((c = in.nextChar()) != tagcoll::input::Input::Eof &amp;&amp; c != '\n')</span>
+<span class="lineNum"> 49 </span><span class="lineCov"> 4454513 : str += c;</span>
+<span class="lineNum"> 50 </span><span class="lineCov"> 70200 : return c != tagcoll::input::Input::Eof;</span>
+<span class="lineNum"> 51 </span> : }
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span><span class="lineCov"> 1 : static void parseScores(tagcoll::input::Input&amp; in, map&lt;std::string, Score&gt;&amp; out, size_t&amp; submissions)</span>
+<span class="lineNum"> 54 </span> : {
+<span class="lineNum"> 55 </span><span class="lineCov"> 1 : string line;</span>
+<span class="lineNum"> 56 </span><span class="lineCov"> 140349 : while (readLine(in, line))</span>
+<span class="lineNum"> 57 </span> : {
+<span class="lineNum"> 58 </span><span class="lineCov"> 70199 : if (line.size() &lt; 10)</span>
+<span class="lineNum"> 59 </span><span class="lineNoCov"> 0 : continue;</span>
+<span class="lineNum"> 60 </span><span class="lineCov"> 70199 : if (line.substr(0, 13) == &quot;Submissions: &quot;)</span>
+<span class="lineNum"> 61 </span> : {
+<span class="lineNum"> 62 </span><span class="lineCov"> 1 : submissions = strtoul(line.substr(13).c_str(), 0, 10);</span>
+<span class="lineNum"> 63 </span><span class="lineCov"> 1 : continue;</span>
+<span class="lineNum"> 64 </span> : }
+<span class="lineNum"> 65 </span><span class="lineCov"> 70198 : if (line.substr(0, 9) != &quot;Package: &quot;)</span>
+<span class="lineNum"> 66 </span><span class="lineCov"> 50 : continue;</span>
+<span class="lineNum"> 67 </span><span class="lineCov"> 70148 : size_t start = 9;</span>
+<span class="lineNum"> 68 </span><span class="lineCov"> 70148 : size_t end = line.find(' ', start);</span>
+<span class="lineNum"> 69 </span><span class="lineCov"> 70148 : if (end == string::npos)</span>
+<span class="lineNum"> 70 </span><span class="lineNoCov"> 0 : continue;</span>
+<span class="lineNum"> 71 </span><span class="lineCov"> 70148 : string name = line.substr(start, end-start);</span>
+<span class="lineNum"> 72 </span> : // Skip packages not in the apt index
+<span class="lineNum"> 73 </span> : //if (!apt.isValid(name))
+<span class="lineNum"> 74 </span> : //continue;
+<span class="lineNum"> 75 </span> :
+<span class="lineNum"> 76 </span><span class="lineCov"> 70148 : start = line.find_first_not_of(' ', end);</span>
+<span class="lineNum"> 77 </span><span class="lineCov"> 70148 : if (start == string::npos) continue;</span>
+<span class="lineNum"> 78 </span><span class="lineCov"> 70148 : end = line.find(' ', start);</span>
+<span class="lineNum"> 79 </span><span class="lineCov"> 70148 : if (end == string::npos) continue;</span>
+<span class="lineNum"> 80 </span><span class="lineCov"> 70148 : string vote = line.substr(start, end-start);</span>
+<span class="lineNum"> 81 </span> :
+<span class="lineNum"> 82 </span><span class="lineCov"> 70148 : start = line.find_first_not_of(' ', end);</span>
+<span class="lineNum"> 83 </span><span class="lineCov"> 70148 : if (start == string::npos) continue;</span>
+<span class="lineNum"> 84 </span><span class="lineCov"> 70148 : end = line.find(' ', start);</span>
+<span class="lineNum"> 85 </span><span class="lineCov"> 70148 : if (end == string::npos) continue;</span>
+<span class="lineNum"> 86 </span><span class="lineCov"> 70148 : string old = line.substr(start, end-start);</span>
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span><span class="lineCov"> 70148 : start = line.find_first_not_of(' ', end);</span>
+<span class="lineNum"> 89 </span><span class="lineCov"> 70148 : if (start == string::npos) continue;</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 70148 : end = line.find(' ', start);</span>
+<span class="lineNum"> 91 </span><span class="lineCov"> 70148 : if (end == string::npos) continue;</span>
+<span class="lineNum"> 92 </span><span class="lineCov"> 70148 : string recent = line.substr(start, end-start);</span>
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span><span class="lineCov"> 70148 : start = line.find_first_not_of(' ', end);</span>
+<span class="lineNum"> 95 </span><span class="lineCov"> 70148 : if (start == string::npos) continue;</span>
+<span class="lineNum"> 96 </span><span class="lineCov"> 70148 : end = line.find(' ', start);</span>
+<span class="lineNum"> 97 </span><span class="lineCov"> 70148 : if (end == string::npos) end = line.size();</span>
+<span class="lineNum"> 98 </span><span class="lineCov"> 70148 : string nofiles = line.substr(start, end-start);</span>
+<span class="lineNum"> 99 </span> :
+<span class="lineNum"> 100 </span> : float score = (float)strtoul(vote.c_str(), NULL, 10)
+<span class="lineNum"> 101 </span> : + (float)strtoul(recent.c_str(), NULL, 10) * 0.5f
+<span class="lineNum"> 102 </span> : + (float)strtoul(old.c_str(), NULL, 10) * 0.3f
+<span class="lineNum"> 103 </span><span class="lineCov"> 70148 : + (float)strtoul(nofiles.c_str(), NULL, 10) * 0.8f;</span>
+<span class="lineNum"> 104 </span> :
+<span class="lineNum"> 105 </span><span class="lineCov"> 70148 : if (score &gt; 0)</span>
+<span class="lineNum"> 106 </span><span class="lineCov"> 69910 : out.insert(make_pair(name, Score(score)));</span>
+<span class="lineNum"> 107 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 108 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span><span class="lineCov"> 3 : bool SourceDir::readScores(map&lt;std::string, Score&gt;&amp; out, size_t&amp; submissions)</span>
+<span class="lineNum"> 111 </span> : {
+<span class="lineNum"> 112 </span><span class="lineCov"> 3 : if (!valid()) return false;</span>
+<span class="lineNum"> 113 </span><span class="lineCov"> 3 : bool done = false;</span>
+<span class="lineNum"> 114 </span> :
+<span class="lineNum"> 115 </span><span class="lineCov"> 12 : for (const_iterator d = begin(); d != end(); ++d)</span>
+<span class="lineNum"> 116 </span> : {
+<span class="lineNum"> 117 </span><span class="lineCov"> 9 : FileType type = fileType(d-&gt;d_name);</span>
+<span class="lineNum"> 118 </span><span class="lineCov"> 9 : if (type == RAW)</span>
+<span class="lineNum"> 119 </span> : {
+<span class="lineNum"> 120 </span> : // Read uncompressed data
+<span class="lineNum"> 121 </span><span class="lineNoCov"> 0 : tagcoll::input::Stdio in(str::joinpath(path(), d-&gt;d_name));</span>
+<span class="lineNum"> 122 </span> :
+<span class="lineNum"> 123 </span> : // Read the scores
+<span class="lineNum"> 124 </span><span class="lineNoCov"> 0 : parseScores(in, out, submissions);</span>
+<span class="lineNum"> 125 </span><span class="lineNoCov"> 0 : done = true;</span>
+<span class="lineNum"> 126 </span> : }
+<span class="lineNum"> 127 </span><span class="lineCov"> 9 : else if (type == RAWGZ)</span>
+<span class="lineNum"> 128 </span> : {
+<span class="lineNum"> 129 </span> : // Read compressed data
+<span class="lineNum"> 130 </span><span class="lineCov"> 1 : tagcoll::input::Zlib in(str::joinpath(path(), d-&gt;d_name));</span>
+<span class="lineNum"> 131 </span> :
+<span class="lineNum"> 132 </span> : // Read the scores
+<span class="lineNum"> 133 </span><span class="lineCov"> 1 : parseScores(in, out, submissions);</span>
+<span class="lineNum"> 134 </span><span class="lineCov"> 1 : done = true;</span>
+<span class="lineNum"> 135 </span> : }
+<span class="lineNum"> 136 </span><span class="lineCov"> 3 : }</span>
+<span class="lineNum"> 137 </span><span class="lineCov"> 3 : return done;</span>
+<span class="lineNum"> 138 </span> : }
+<span class="lineNum"> 139 </span> :
+<span class="lineNum"> 140 </span> : }
+<span class="lineNum"> 141 </span><span class="lineCov"> 6 : }</span>
+<span class="lineNum"> 142 </span> :
+<span class="lineNum"> 143 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/popcon/maint/sourcedir.h.gcov.html b/rep/ept/popcon/maint/sourcedir.h.gcov.html
new file mode 100644
index 0000000..56c0640
--- /dev/null
+++ b/rep/ept/popcon/maint/sourcedir.h.gcov.html
@@ -0,0 +1,130 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/popcon/maint/sourcedir.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/popcon/maint</a> - sourcedir.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef EPT_POPCON_SOURCEDIR_H
+<span class="lineNum"> 2 </span> : #define EPT_POPCON_SOURCEDIR_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** @file
+<span class="lineNum"> 5 </span> : * @author Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 6 </span> : * Popcon data source directory access
+<span class="lineNum"> 7 </span> : */
+<span class="lineNum"> 8 </span> :
+<span class="lineNum"> 9 </span> : /*
+<span class="lineNum"> 10 </span> : * Copyright (C) 2003,2004,2005,2006,2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 11 </span> : *
+<span class="lineNum"> 12 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 13 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 14 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 15 </span> : * (at your option) any later version.
+<span class="lineNum"> 16 </span> : *
+<span class="lineNum"> 17 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 18 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 19 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 20 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 21 </span> : *
+<span class="lineNum"> 22 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 23 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 24 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 25 </span> : */
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #include &lt;ept/popcon/popcon.h&gt;
+<span class="lineNum"> 28 </span> : #include &lt;wibble/sys/fs.h&gt;
+<span class="lineNum"> 29 </span> : #include &lt;string&gt;
+<span class="lineNum"> 30 </span> : #include &lt;map&gt;
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : namespace ept {
+<span class="lineNum"> 33 </span> : namespace popcon {
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : /**
+<span class="lineNum"> 36 </span> : * Access a directory containing Debtags data files
+<span class="lineNum"> 37 </span> : */
+<span class="lineNum"> 38 </span> : class SourceDir : public wibble::sys::fs::Directory
+<span class="lineNum"> 39 </span><span class="lineCov"> 14 : {</span>
+<span class="lineNum"> 40 </span> : protected:
+<span class="lineNum"> 41 </span> : enum FileType { SKIP, RAW, RAWGZ };
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : // Check if a file name is a tag file, a vocabulary file or a file to skip.
+<span class="lineNum"> 44 </span> : // Please notice that it works on file names, not paths.
+<span class="lineNum"> 45 </span> : FileType fileType(const std::string&amp; name);
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span> : public:
+<span class="lineNum"> 48 </span><span class="lineCov"> 14 : SourceDir(const std::string&amp; path) : Directory(path) {}</span>
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span> : /// Return the time of the newest file in the source directory
+<span class="lineNum"> 51 </span> : time_t timestamp();
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span> : /**
+<span class="lineNum"> 54 </span> : * Read the tag files in the directory and output their content to the map
+<span class="lineNum"> 55 </span> : */
+<span class="lineNum"> 56 </span> : bool readScores(std::map&lt;std::string, Score&gt;&amp; out, size_t&amp; submissions);
+<span class="lineNum"> 57 </span> : };
+<span class="lineNum"> 58 </span> :
+<span class="lineNum"> 59 </span> : }
+<span class="lineNum"> 60 </span> : }
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 63 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/popcon/popcon.cc.gcov.html b/rep/ept/popcon/popcon.cc.gcov.html
new file mode 100644
index 0000000..f38fb61
--- /dev/null
+++ b/rep/ept/popcon/popcon.cc.gcov.html
@@ -0,0 +1,162 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/popcon/popcon.cc</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/popcon</a> - popcon.cc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">23</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">95.7 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">22</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : /** @file
+<span class="lineNum"> 4 </span> : * @author Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 5 </span> : * Quick map from package IDs to package names
+<span class="lineNum"> 6 </span> : */
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : /*
+<span class="lineNum"> 9 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 12 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 13 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 14 </span> : * (at your option) any later version.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 19 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 20 </span> : *
+<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 22 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 24 </span> : */
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;ept/popcon/popcon.h&gt;
+<span class="lineNum"> 27 </span> : #include &lt;ept/popcon/maint/popconindexer.h&gt;
+<span class="lineNum"> 28 </span> : #include &lt;ept/popcon/maint/path.h&gt;
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : //#include &lt;iostream&gt;
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : using namespace std;
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span> : namespace ept {
+<span class="lineNum"> 35 </span> : namespace popcon {
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span><span class="lineCov"> 3 : size_t Popcon::GeneralInfo::submissions() const</span>
+<span class="lineNum"> 38 </span> : {
+<span class="lineNum"> 39 </span><span class="lineCov"> 3 : if (!m_buf) return 0;</span>
+<span class="lineNum"> 40 </span><span class="lineCov"> 2 : return ((InfoStruct*)m_buf)-&gt;submissions;</span>
+<span class="lineNum"> 41 </span> : }
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span><span class="lineCov"> 7 : Popcon::Popcon()</span>
+<span class="lineNum"> 44 </span> : {
+<span class="lineNum"> 45 </span><span class="lineCov"> 7 : std::string scofname, idxfname;</span>
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span><span class="lineCov"> 7 : if (!PopconIndexer::obtainWorkingPopcon(scofname, idxfname))</span>
+<span class="lineNum"> 48 </span> : {
+<span class="lineNum"> 49 </span><span class="lineCov"> 1 : m_timestamp = 0;</span>
+<span class="lineNum"> 50 </span><span class="lineCov"> 1 : return;</span>
+<span class="lineNum"> 51 </span> : }
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span> : //cerr &lt;&lt; &quot;GOT &quot; &lt;&lt; scofname &lt;&lt; &quot; &quot; &lt;&lt; idxfname &lt;&lt; endl;
+<span class="lineNum"> 54 </span> :
+<span class="lineNum"> 55 </span><span class="lineCov"> 6 : m_timestamp = Path::timestamp(idxfname);</span>
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span><span class="lineCov"> 6 : mastermmap.init(idxfname);</span>
+<span class="lineNum"> 58 </span><span class="lineCov"> 6 : tagcoll::diskindex::MMap::init(mastermmap, 0);</span>
+<span class="lineNum"> 59 </span> :
+<span class="lineNum"> 60 </span><span class="lineCov"> 6 : m_info.init(mastermmap, 1);</span>
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : //cerr &lt;&lt; &quot;SIZE &quot; &lt;&lt; size() &lt;&lt; endl;
+<span class="lineNum"> 63 </span> : //for (size_t i = 0; i &lt; size(); ++i)
+<span class="lineNum"> 64 </span> : //{
+<span class="lineNum"> 65 </span> : // cerr &lt;&lt; &quot;EL &quot; &lt;&lt; i &lt;&lt; &quot;: &quot; &lt;&lt; ((Score*)m_buf)[i].offset &lt;&lt; &quot; &quot; &lt;&lt; ((Score*)m_buf)[i].score &lt;&lt; endl;
+<span class="lineNum"> 66 </span> : //}
+<span class="lineNum"> 67 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span><span class="lineCov"> 1792 : float Popcon::scoreByName(const std::string&amp; name) const</span>
+<span class="lineNum"> 70 </span> : {
+<span class="lineNum"> 71 </span> : // Binary search the index to find the package ID
+<span class="lineNum"> 72 </span> : int begin, end;
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span> : /* Binary search */
+<span class="lineNum"> 75 </span><span class="lineCov"> 1792 : begin = -1, end = size();</span>
+<span class="lineNum"> 76 </span><span class="lineCov"> 32470 : while (end - begin &gt; 1)</span>
+<span class="lineNum"> 77 </span> : {
+<span class="lineNum"> 78 </span><span class="lineCov"> 28886 : int cur = (end + begin) / 2;</span>
+<span class="lineNum"> 79 </span><span class="lineCov"> 28886 : if (this-&gt;name(cur) &gt; name)</span>
+<span class="lineNum"> 80 </span><span class="lineCov"> 14367 : end = cur;</span>
+<span class="lineNum"> 81 </span> : else
+<span class="lineNum"> 82 </span><span class="lineCov"> 14519 : begin = cur;</span>
+<span class="lineNum"> 83 </span> : }
+<span class="lineNum"> 84 </span> :
+<span class="lineNum"> 85 </span><span class="lineCov"> 1792 : if (begin == -1 || this-&gt;name(begin) != name)</span>
+<span class="lineNum"> 86 </span> : //throw NotFoundException(string(&quot;looking for the ID of string &quot;) + str);
+<span class="lineNum"> 87 </span><span class="lineCov"> 31 : return 0;</span>
+<span class="lineNum"> 88 </span> : else
+<span class="lineNum"> 89 </span><span class="lineCov"> 1761 : return score(begin);</span>
+<span class="lineNum"> 90 </span> : }
+<span class="lineNum"> 91 </span> :
+<span class="lineNum"> 92 </span> : }
+<span class="lineNum"> 93 </span> : }
+<span class="lineNum"> 94 </span> :
+<span class="lineNum"> 95 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/popcon/popcon.h.gcov.html b/rep/ept/popcon/popcon.h.gcov.html
new file mode 100644
index 0000000..270736f
--- /dev/null
+++ b/rep/ept/popcon/popcon.h.gcov.html
@@ -0,0 +1,220 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/popcon/popcon.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/popcon</a> - popcon.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">25</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">96.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">24</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+<span class="lineNum"> 2 </span> : #ifndef EPT_POPCON_POPCON_H
+<span class="lineNum"> 3 </span> : #define EPT_POPCON_POPCON_H
+<span class="lineNum"> 4 </span> :
+<span class="lineNum"> 5 </span> : /** @file
+<span class="lineNum"> 6 </span> : * @author Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 7 </span> : * Access popcon data
+<span class="lineNum"> 8 </span> : */
+<span class="lineNum"> 9 </span> :
+<span class="lineNum"> 10 </span> : /*
+<span class="lineNum"> 11 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 12 </span> : *
+<span class="lineNum"> 13 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 14 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 15 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 16 </span> : * (at your option) any later version.
+<span class="lineNum"> 17 </span> : *
+<span class="lineNum"> 18 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 19 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 20 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 21 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 22 </span> : *
+<span class="lineNum"> 23 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 24 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 25 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 26 </span> : */
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : #include &lt;tagcoll/diskindex/mmap.h&gt;
+<span class="lineNum"> 29 </span> : #include &lt;string&gt;
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : namespace ept {
+<span class="lineNum"> 32 </span> : namespace apt {
+<span class="lineNum"> 33 </span> : class Apt;
+<span class="lineNum"> 34 </span> : }
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : namespace popcon {
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : /**
+<span class="lineNum"> 39 </span> : * Store the score information in the popcon cache.
+<span class="lineNum"> 40 </span> : *
+<span class="lineNum"> 41 </span> : * Currently, this is only one float; more can be added in the future.
+<span class="lineNum"> 42 </span> : */
+<span class="lineNum"> 43 </span> : class Score
+<span class="lineNum"> 44 </span> : {
+<span class="lineNum"> 45 </span> : protected:
+<span class="lineNum"> 46 </span> : unsigned offset;
+<span class="lineNum"> 47 </span> :
+<span class="lineNum"> 48 </span> : public:
+<span class="lineNum"> 49 </span> : float score;
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span><span class="lineCov"> 69910 : Score(float score) : offset(offset), score(score) {}</span>
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span> : friend class Popcon;
+<span class="lineNum"> 54 </span> : friend class PopconIndexer;
+<span class="lineNum"> 55 </span> : friend class PopconGenerator;
+<span class="lineNum"> 56 </span> : };
+<span class="lineNum"> 57 </span> :
+<span class="lineNum"> 58 </span> : /**
+<span class="lineNum"> 59 </span> : * Maps Packages to IDs and vice-versa.
+<span class="lineNum"> 60 </span> : *
+<span class="lineNum"> 61 </span> : * This is used in building the Debtags fast index, which works representing
+<span class="lineNum"> 62 </span> : * tags and packages as int IDs.
+<span class="lineNum"> 63 </span> : *
+<span class="lineNum"> 64 </span> : * Index building works like this:
+<span class="lineNum"> 65 </span> : * 1. The file all-popcon-results.txt.gz is downloaded from
+<span class="lineNum"> 66 </span> : * http://popcon.debian.org/all-popcon-results.txt.gz
+<span class="lineNum"> 67 </span> : * 2. The file is put in either ~/.popcon/all-popcon-results.txt.gz
+<span class="lineNum"> 68 </span> : * or in /var/lib/popcon/all-popcon-results.txt.gz
+<span class="lineNum"> 69 </span> : * 3. If the file is newer than the index, it will be automatically used to
+<span class="lineNum"> 70 </span> : * recompute the scores and rebuild the index.
+<span class="lineNum"> 71 </span> : */
+<span class="lineNum"> 72 </span> : class Popcon : public tagcoll::diskindex::MMap
+<span class="lineNum"> 73 </span><span class="lineCov"> 7 : {</span>
+<span class="lineNum"> 74 </span> : struct GeneralInfo : public tagcoll::diskindex::MMap
+<span class="lineNum"> 75 </span><span class="lineCov"> 7 : {</span>
+<span class="lineNum"> 76 </span> : size_t submissions() const;
+<span class="lineNum"> 77 </span> : };
+<span class="lineNum"> 78 </span> :
+<span class="lineNum"> 79 </span> : tagcoll::diskindex::MasterMMap mastermmap;
+<span class="lineNum"> 80 </span> : time_t m_timestamp;
+<span class="lineNum"> 81 </span> :
+<span class="lineNum"> 82 </span> : GeneralInfo m_info;
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span> : /// Get the score structure by index
+<span class="lineNum"> 85 </span><span class="lineCov"> 102350 : const Score* structByIndex(size_t idx) const</span>
+<span class="lineNum"> 86 </span> : {
+<span class="lineNum"> 87 </span><span class="lineCov"> 102350 : if (idx &gt;= 0 &amp;&amp; idx &lt; size())</span>
+<span class="lineNum"> 88 </span><span class="lineCov"> 102350 : return (Score*)m_buf + idx;</span>
+<span class="lineNum"> 89 </span><span class="lineNoCov"> 0 : return 0;</span>
+<span class="lineNum"> 90 </span> : }
+<span class="lineNum"> 91 </span> :
+<span class="lineNum"> 92 </span> : public:
+<span class="lineNum"> 93 </span> : Popcon();
+<span class="lineNum"> 94 </span> :
+<span class="lineNum"> 95 </span> : /// Get the timestamp of when the index was last updated
+<span class="lineNum"> 96 </span><span class="lineCov"> 1 : time_t timestamp() const { return m_timestamp; }</span>
+<span class="lineNum"> 97 </span> :
+<span class="lineNum"> 98 </span> : /// Return true if this data source has data, false if it's empty
+<span class="lineNum"> 99 </span><span class="lineCov"> 1 : bool hasData() const { return m_timestamp != 0; }</span>
+<span class="lineNum"> 100 </span> :
+<span class="lineNum"> 101 </span> : /// Return the total number of popcon submissions
+<span class="lineNum"> 102 </span><span class="lineCov"> 3 : size_t submissions() const { return m_info.submissions(); }</span>
+<span class="lineNum"> 103 </span> :
+<span class="lineNum"> 104 </span> : /// Get the number of packages in the index
+<span class="lineNum"> 105 </span><span class="lineCov"> 174055 : size_t size() const</span>
+<span class="lineNum"> 106 </span> : {
+<span class="lineNum"> 107 </span><span class="lineCov"> 174055 : if (m_buf)</span>
+<span class="lineNum"> 108 </span><span class="lineCov"> 174053 : return ((Score*)m_buf)-&gt;offset / sizeof(Score);</span>
+<span class="lineNum"> 109 </span> : else
+<span class="lineNum"> 110 </span><span class="lineCov"> 2 : return 0;</span>
+<span class="lineNum"> 111 </span> : }
+<span class="lineNum"> 112 </span> :
+<span class="lineNum"> 113 </span> : /**
+<span class="lineNum"> 114 </span> : * Get a package name by index
+<span class="lineNum"> 115 </span> : *
+<span class="lineNum"> 116 </span> : * If the index is not valid, returns the empty string.
+<span class="lineNum"> 117 </span> : */
+<span class="lineNum"> 118 </span><span class="lineCov"> 30678 : std::string name(size_t idx) const</span>
+<span class="lineNum"> 119 </span> : {
+<span class="lineNum"> 120 </span><span class="lineCov"> 30678 : const Score* s = structByIndex(idx);</span>
+<span class="lineNum"> 121 </span><span class="lineCov"> 30678 : if (s == 0) return std::string();</span>
+<span class="lineNum"> 122 </span><span class="lineCov"> 30678 : return std::string(m_buf + s-&gt;offset);</span>
+<span class="lineNum"> 123 </span> : }
+<span class="lineNum"> 124 </span> :
+<span class="lineNum"> 125 </span> : /// Get the score by index
+<span class="lineNum"> 126 </span><span class="lineCov"> 71672 : float scoreByIndex(size_t idx) const</span>
+<span class="lineNum"> 127 </span> : {
+<span class="lineNum"> 128 </span><span class="lineCov"> 71672 : const Score* s = structByIndex(idx);</span>
+<span class="lineNum"> 129 </span><span class="lineCov"> 71672 : if (!s) return 0;</span>
+<span class="lineNum"> 130 </span><span class="lineCov"> 71672 : return s-&gt;score;</span>
+<span class="lineNum"> 131 </span> : }
+<span class="lineNum"> 132 </span> :
+<span class="lineNum"> 133 </span> : /// Get the score structure by package name
+<span class="lineNum"> 134 </span> : float scoreByName(const std::string&amp; name) const;
+<span class="lineNum"> 135 </span> :
+<span class="lineNum"> 136 </span> : /// Get the score by index
+<span class="lineNum"> 137 </span><span class="lineCov"> 71672 : float score(size_t idx) const { return scoreByIndex(idx); }</span>
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> : /// Get the score by index
+<span class="lineNum"> 140 </span> : float operator[](int idx) const { return scoreByIndex(idx); }
+<span class="lineNum"> 141 </span> :
+<span class="lineNum"> 142 </span> : /// Get the score by name
+<span class="lineNum"> 143 </span><span class="lineCov"> 1790 : float score(const std::string&amp; name) const { return scoreByName(name); }</span>
+<span class="lineNum"> 144 </span> :
+<span class="lineNum"> 145 </span> : /// Get the score structure by package name
+<span class="lineNum"> 146 </span><span class="lineCov"> 2 : float operator[](const std::string&amp; name) const { return scoreByName(name); }</span>
+<span class="lineNum"> 147 </span> : };
+<span class="lineNum"> 148 </span> :
+<span class="lineNum"> 149 </span> : }
+<span class="lineNum"> 150 </span> : }
+<span class="lineNum"> 151 </span> :
+<span class="lineNum"> 152 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 153 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/popcon/popcon.test.h.gcov.html b/rep/ept/popcon/popcon.test.h.gcov.html
new file mode 100644
index 0000000..65387fc
--- /dev/null
+++ b/rep/ept/popcon/popcon.test.h.gcov.html
@@ -0,0 +1,175 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/popcon/popcon.test.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/popcon</a> - popcon.test.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">38</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">38</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+<span class="lineNum"> 2 </span> : /*
+<span class="lineNum"> 3 </span> : * popcon test
+<span class="lineNum"> 4 </span> : *
+<span class="lineNum"> 5 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 6 </span> : *
+<span class="lineNum"> 7 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 8 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 9 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 10 </span> : * (at your option) any later version.
+<span class="lineNum"> 11 </span> : *
+<span class="lineNum"> 12 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 16 </span> : *
+<span class="lineNum"> 17 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 18 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 19 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 20 </span> : */
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : #include &lt;ept/popcon/popcon.h&gt;
+<span class="lineNum"> 23 </span> : #include &lt;ept/popcon/maint/path.h&gt;
+<span class="lineNum"> 24 </span> : #include &lt;ept/apt/apt.h&gt;
+<span class="lineNum"> 25 </span> : #include &lt;set&gt;
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #include &lt;ept/test.h&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : using namespace std;
+<span class="lineNum"> 30 </span> : using namespace ept;
+<span class="lineNum"> 31 </span> : using namespace ept::popcon;
+<span class="lineNum"> 32 </span> : using namespace ept::apt;
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span> : struct TestPopcon
+<span class="lineNum"> 35 </span><span class="lineCov"> 5 : {</span>
+<span class="lineNum"> 36 </span> : popcon::Path::OverridePopconSourceDir odsd;
+<span class="lineNum"> 37 </span> : popcon::Path::OverridePopconIndexDir odid;
+<span class="lineNum"> 38 </span> : popcon::Path::OverridePopconUserSourceDir odusd;
+<span class="lineNum"> 39 </span> : popcon::Path::OverridePopconUserIndexDir oduid;
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : Apt apt;
+<span class="lineNum"> 42 </span> : Popcon popcon;
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span><span class="lineCov"> 5 : TestPopcon()</span>
+<span class="lineNum"> 45 </span> : : odsd( TEST_ENV_DIR &quot;popcon&quot; ),
+<span class="lineNum"> 46 </span> : odid( TEST_ENV_DIR &quot;popcon&quot; ),
+<span class="lineNum"> 47 </span> : odusd( TEST_ENV_DIR &quot;popcon&quot; ),
+<span class="lineNum"> 48 </span><span class="lineCov"> 5 : oduid( TEST_ENV_DIR &quot;popcon&quot; )</span>
+<span class="lineNum"> 49 </span><span class="lineCov"> 5 : {}</span>
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span><span class="lineCov"> 1 : Test basicAccess()</span>
+<span class="lineNum"> 52 </span> : {
+<span class="lineNum"> 53 </span><span class="lineCov"> 1 : assert_eq(popcon.submissions(), 52024);</span>
+<span class="lineNum"> 54 </span><span class="lineCov"> 2 : assert(popcon.size() &gt; 0);</span>
+<span class="lineNum"> 55 </span><span class="lineCov"> 2 : assert(popcon.score(0) &gt; 0);</span>
+<span class="lineNum"> 56 </span><span class="lineCov"> 2 : assert(!popcon.name(0).empty());</span>
+<span class="lineNum"> 57 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 58 </span> :
+<span class="lineNum"> 59 </span> : // Check that every valid index is accessible
+<span class="lineNum"> 60 </span><span class="lineCov"> 1 : Test accessibility()</span>
+<span class="lineNum"> 61 </span> : {
+<span class="lineNum"> 62 </span><span class="lineCov"> 139822 : for (size_t i = 0; i &lt; popcon.size(); ++i)</span>
+<span class="lineNum"> 63 </span> : {
+<span class="lineNum"> 64 </span> : //cerr &lt;&lt; popcon.name(i) &lt;&lt; &quot; &quot; &lt;&lt; popcon.score(i) &lt;&lt; endl;
+<span class="lineNum"> 65 </span><span class="lineCov"> 69910 : assert(popcon.score(i) &gt; 0);</span>
+<span class="lineNum"> 66 </span> : }
+<span class="lineNum"> 67 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span> : // Check that we can get a score for every package
+<span class="lineNum"> 70 </span><span class="lineCov"> 1 : Test haveScores()</span>
+<span class="lineNum"> 71 </span> : {
+<span class="lineNum"> 72 </span><span class="lineCov"> 1 : int has = 0;</span>
+<span class="lineNum"> 73 </span><span class="lineCov"> 1789 : for (Apt::iterator i = apt.begin(); i != apt.end(); ++i)</span>
+<span class="lineNum"> 74 </span> : {
+<span class="lineNum"> 75 </span><span class="lineCov"> 1788 : float score = popcon.score(*i);</span>
+<span class="lineNum"> 76 </span><span class="lineCov"> 1788 : if (score &gt; 0)</span>
+<span class="lineNum"> 77 </span><span class="lineCov"> 1758 : ++has;</span>
+<span class="lineNum"> 78 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 79 </span> : // At least 1000 packages should have a score
+<span class="lineNum"> 80 </span><span class="lineCov"> 2 : assert(has &gt; 1000);</span>
+<span class="lineNum"> 81 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 82 </span> :
+<span class="lineNum"> 83 </span> : // Check that scores are meaningful
+<span class="lineNum"> 84 </span><span class="lineCov"> 1 : Test validScores()</span>
+<span class="lineNum"> 85 </span> : {
+<span class="lineNum"> 86 </span><span class="lineCov"> 1 : assert(popcon[&quot;apt&quot;] &gt; popcon[&quot;libapt-pkg-dev&quot;]);</span>
+<span class="lineNum"> 87 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 88 </span> :
+<span class="lineNum"> 89 </span> : // If there is no data, Popcon should work as if all scores were 0
+<span class="lineNum"> 90 </span><span class="lineCov"> 1 : Test fallbackValues()</span>
+<span class="lineNum"> 91 </span> : {
+<span class="lineNum"> 92 </span><span class="lineCov"> 1 : popcon::Path::OverridePopconSourceDir odsd(&quot;./empty&quot;);</span>
+<span class="lineNum"> 93 </span><span class="lineCov"> 2 : popcon::Path::OverridePopconIndexDir odid(&quot;./empty&quot;);</span>
+<span class="lineNum"> 94 </span><span class="lineCov"> 2 : popcon::Path::OverridePopconUserSourceDir odusd(&quot;./empty&quot;);</span>
+<span class="lineNum"> 95 </span><span class="lineCov"> 2 : popcon::Path::OverridePopconUserIndexDir oduid(&quot;./empty&quot;);</span>
+<span class="lineNum"> 96 </span><span class="lineCov"> 1 : Popcon empty;</span>
+<span class="lineNum"> 97 </span> :
+<span class="lineNum"> 98 </span><span class="lineCov"> 1 : assert_eq(empty.timestamp(), 0);</span>
+<span class="lineNum"> 99 </span><span class="lineCov"> 2 : assert(!empty.hasData());</span>
+<span class="lineNum"> 100 </span> :
+<span class="lineNum"> 101 </span><span class="lineCov"> 2 : assert_eq(empty.submissions(), 0);</span>
+<span class="lineNum"> 102 </span><span class="lineCov"> 2 : assert(empty.size() == 0);</span>
+<span class="lineNum"> 103 </span><span class="lineCov"> 2 : assert(empty.score(&quot;apt&quot;) == 0.0);</span>
+<span class="lineNum"> 104 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span> : };
+<span class="lineNum"> 107 </span> :
+<span class="lineNum"> 108 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/progresscallback.cpp.gcov.html b/rep/ept/progresscallback.cpp.gcov.html
new file mode 100644
index 0000000..1a46d4e
--- /dev/null
+++ b/rep/ept/progresscallback.cpp.gcov.html
@@ -0,0 +1,79 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/progresscallback.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../index.html">directory</a> - <a href="index.html">ept</a> - progresscallback.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">4</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">0.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">0</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &lt;ept/progresscallback.h&gt;
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : namespace ept {
+<span class="lineNum"> 4 </span> :
+<span class="lineNum"> 5 </span><span class="lineNoCov"> 0 : bool ProgressCallback::Pulse(pkgAcquire *Owner)</span>
+<span class="lineNum"> 6 </span> : {
+<span class="lineNum"> 7 </span><span class="lineNoCov"> 0 : pkgAcquireStatus::Pulse(Owner);</span>
+<span class="lineNum"> 8 </span><span class="lineNoCov"> 0 : UpdatePulse(FetchedBytes, CurrentCPS, CurrentItems);</span>
+<span class="lineNum"> 9 </span><span class="lineNoCov"> 0 : return true;</span>
+<span class="lineNum"> 10 </span> : }
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : }
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/progresscallback.h.gcov.html b/rep/ept/progresscallback.h.gcov.html
new file mode 100644
index 0000000..9dbb029
--- /dev/null
+++ b/rep/ept/progresscallback.h.gcov.html
@@ -0,0 +1,95 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/progresscallback.h</title>
+ <link rel="stylesheet" type="text/css" href="../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../index.html">directory</a> - <a href="index.html">ept</a> - progresscallback.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">3</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">0.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">0</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /** -*- C++ -*-
+<span class="lineNum"> 2 </span> : @file progresscallback.h
+<span class="lineNum"> 3 </span> : @author Michael Vogt &lt;mvo@debian.org&gt;
+<span class="lineNum"> 4 </span> : */
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : #ifndef EPT_PROGRESSCALLBACK_H
+<span class="lineNum"> 7 </span> : #define EPT_PROGRESSCALLBACK_H
+<span class="lineNum"> 8 </span> :
+<span class="lineNum"> 9 </span> : #include &lt;apt-pkg/acquire.h&gt;
+<span class="lineNum"> 10 </span> :
+<span class="lineNum"> 11 </span> : namespace ept {
+<span class="lineNum"> 12 </span> :
+<span class="lineNum"> 13 </span> : class ProgressCallback : public pkgAcquireStatus
+<span class="lineNum"> 14 </span> : {
+<span class="lineNum"> 15 </span> : protected:
+<span class="lineNum"> 16 </span> : virtual bool Pulse(pkgAcquire *Owner);
+<span class="lineNum"> 17 </span> : public:
+<span class="lineNum"> 18 </span> : ProgressCallback() {};
+<span class="lineNum"> 19 </span><span class="lineNoCov"> 0 : virtual ~ProgressCallback() {};</span>
+<span class="lineNum"> 20 </span><span class="lineNoCov"> 0 : virtual bool MediaChange( string, string ) { return false; } // bah</span>
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // override this to get periodic updates
+<span class="lineNum"> 23 </span><span class="lineNoCov"> 0 : virtual void UpdatePulse( double, double, unsigned long ) {}</span>
+<span class="lineNum"> 24 </span> : };
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : }
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/test.h.gcov.html b/rep/ept/test.h.gcov.html
new file mode 100644
index 0000000..4004bd7
--- /dev/null
+++ b/rep/ept/test.h.gcov.html
@@ -0,0 +1,105 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/test.h</title>
+ <link rel="stylesheet" type="text/css" href="../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../index.html">directory</a> - <a href="index.html">ept</a> - test.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">15</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">15</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &lt;ept/core/apt.h&gt;
+<span class="lineNum"> 2 </span> : #include &lt;ept/config.h&gt;
+<span class="lineNum"> 3 </span> : #include &lt;ept/debtags/maint/path.h&gt;
+<span class="lineNum"> 4 </span> :
+<span class="lineNum"> 5 </span> : #include &lt;wibble/test.h&gt;
+<span class="lineNum"> 6 </span> :
+<span class="lineNum"> 7 </span> : #ifndef EPT_TEST_H
+<span class="lineNum"> 8 </span> : #define EPT_TEST_H
+<span class="lineNum"> 9 </span> :
+<span class="lineNum"> 10 </span><span class="lineCov"> 73 : struct AptTestEnvironment {</span>
+<span class="lineNum"> 11 </span> : ept::core::AptDatabase db;
+<span class="lineNum"> 12 </span><span class="lineCov"> 73 : AptTestEnvironment() {</span>
+<span class="lineNum"> 13 </span><span class="lineCov"> 73 : pkgInitConfig (*_config);</span>
+<span class="lineNum"> 14 </span><span class="lineCov"> 73 : _config-&gt;Set(&quot;Initialized&quot;, 1);</span>
+<span class="lineNum"> 15 </span><span class="lineCov"> 73 : _config-&gt;Set(&quot;Dir&quot;, TEST_ENV_DIR);</span>
+<span class="lineNum"> 16 </span><span class="lineCov"> 146 : _config-&gt;Set(&quot;Dir::Cache&quot;, &quot;cache&quot;);</span>
+<span class="lineNum"> 17 </span><span class="lineCov"> 146 : _config-&gt;Set(&quot;Dir::State&quot;, &quot;state&quot;);</span>
+<span class="lineNum"> 18 </span><span class="lineCov"> 146 : _config-&gt;Set(&quot;Dir::Etc&quot;, &quot;etc&quot;);</span>
+<span class="lineNum"> 19 </span><span class="lineCov"> 146 : _config-&gt;Set(&quot;Dir::State::status&quot;, TEST_ENV_DIR &quot;dpkg-status&quot;);</span>
+<span class="lineNum"> 20 </span><span class="lineCov"> 73 : pkgInitSystem (*_config, _system);</span>
+<span class="lineNum"> 21 </span><span class="lineCov"> 73 : }</span>
+<span class="lineNum"> 22 </span> : };
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span><span class="lineCov"> 29 : struct DebtagsTestEnvironment : AptTestEnvironment {</span>
+<span class="lineNum"> 25 </span> : ept::debtags::Path::OverrideDebtagsSourceDir odsd;
+<span class="lineNum"> 26 </span> : ept::debtags::Path::OverrideDebtagsIndexDir odid;
+<span class="lineNum"> 27 </span> : ept::debtags::Path::OverrideDebtagsUserSourceDir odusd;
+<span class="lineNum"> 28 </span> : ept::debtags::Path::OverrideDebtagsUserIndexDir oduid;
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span><span class="lineCov"> 29 : DebtagsTestEnvironment()</span>
+<span class="lineNum"> 31 </span> : : odsd( TEST_ENV_DIR &quot;debtags/&quot;),
+<span class="lineNum"> 32 </span> : odid( TEST_ENV_DIR &quot;debtags/&quot;),
+<span class="lineNum"> 33 </span> : odusd( TEST_ENV_DIR &quot;debtags/&quot;),
+<span class="lineNum"> 34 </span><span class="lineCov"> 29 : oduid( TEST_ENV_DIR &quot;debtags/&quot;)</span>
+<span class="lineNum"> 35 </span><span class="lineCov"> 29 : {}</span>
+<span class="lineNum"> 36 </span> : };
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/textsearch/extraindexers.cc.gcov.html b/rep/ept/textsearch/extraindexers.cc.gcov.html
new file mode 100644
index 0000000..9072fde
--- /dev/null
+++ b/rep/ept/textsearch/extraindexers.cc.gcov.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/textsearch/extraindexers.cc</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/textsearch</a> - extraindexers.cc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">10</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">0.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">0</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> :
+<span class="lineNum"> 2 </span> : /** @file
+<span class="lineNum"> 3 </span> : * @author Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 4 </span> : * Fast full-text search
+<span class="lineNum"> 5 </span> : */
+<span class="lineNum"> 6 </span> :
+<span class="lineNum"> 7 </span> : /*
+<span class="lineNum"> 8 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 9 </span> : *
+<span class="lineNum"> 10 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 11 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 12 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 13 </span> : * (at your option) any later version.
+<span class="lineNum"> 14 </span> : *
+<span class="lineNum"> 15 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 16 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 17 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 18 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 19 </span> : *
+<span class="lineNum"> 20 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 21 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 22 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 23 </span> : */
+<span class="lineNum"> 24 </span> :
+<span class="lineNum"> 25 </span> : #include &lt;ept/textsearch/extraindexers.h&gt;
+<span class="lineNum"> 26 </span> : #include &lt;ept/apt/packagerecord.h&gt;
+<span class="lineNum"> 27 </span> : #include &lt;ept/debtags/debtags.h&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : using namespace std;
+<span class="lineNum"> 30 </span> : using namespace ept::debtags;
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : namespace ept {
+<span class="lineNum"> 33 </span> : namespace textsearch {
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span><span class="lineNoCov"> 0 : void AptTagsExtraIndexer::operator()(Xapian::Document&amp; doc, const apt::PackageRecord&amp; rec) const</span>
+<span class="lineNum"> 36 </span> : {
+<span class="lineNum"> 37 </span> : // Index tags as well
+<span class="lineNum"> 38 </span><span class="lineNoCov"> 0 : set&lt;string&gt; tags = rec.tag();</span>
+<span class="lineNum"> 39 </span><span class="lineNoCov"> 0 : for (set&lt;string&gt;::const_iterator ti = tags.begin();</span>
+<span class="lineNum"> 40 </span> : ti != tags.end(); ++ti)
+<span class="lineNum"> 41 </span><span class="lineNoCov"> 0 : doc.add_term(&quot;XT&quot;+*ti);</span>
+<span class="lineNum"> 42 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span><span class="lineNoCov"> 0 : void DebtagsExtraIndexer::operator()(Xapian::Document&amp; doc, const apt::PackageRecord&amp; rec) const</span>
+<span class="lineNum"> 45 </span> : {
+<span class="lineNum"> 46 </span> : // Index tags as well
+<span class="lineNum"> 47 </span><span class="lineNoCov"> 0 : set&lt;Tag&gt; tags = debtags.getTagsOfItem(doc.get_data());</span>
+<span class="lineNum"> 48 </span><span class="lineNoCov"> 0 : for (set&lt;Tag&gt;::const_iterator ti = tags.begin();</span>
+<span class="lineNum"> 49 </span> : ti != tags.end(); ++ti)
+<span class="lineNum"> 50 </span><span class="lineNoCov"> 0 : doc.add_term(&quot;XT&quot;+ti-&gt;fullname());</span>
+<span class="lineNum"> 51 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span> : }
+<span class="lineNum"> 54 </span> : }
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span> : #include &lt;ept/debtags/debtags.tcc&gt;
+<span class="lineNum"> 57 </span> :
+<span class="lineNum"> 58 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/textsearch/extraindexers.h.gcov.html b/rep/ept/textsearch/extraindexers.h.gcov.html
new file mode 100644
index 0000000..bb7734f
--- /dev/null
+++ b/rep/ept/textsearch/extraindexers.h.gcov.html
@@ -0,0 +1,118 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/textsearch/extraindexers.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/textsearch</a> - extraindexers.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">0.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">0</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef EPT_TEXTSEARCH_EXTRAINDEXERS_H
+<span class="lineNum"> 2 </span> : #define EPT_TEXTSEARCH_EXTRAINDEXERS_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** @file
+<span class="lineNum"> 5 </span> : * @author Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 6 </span> : * Fast full-text search
+<span class="lineNum"> 7 </span> : */
+<span class="lineNum"> 8 </span> :
+<span class="lineNum"> 9 </span> : /*
+<span class="lineNum"> 10 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 11 </span> : *
+<span class="lineNum"> 12 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 13 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 14 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 15 </span> : * (at your option) any later version.
+<span class="lineNum"> 16 </span> : *
+<span class="lineNum"> 17 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 18 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 19 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 20 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 21 </span> : *
+<span class="lineNum"> 22 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 23 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 24 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 25 </span> : */
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #include &lt;ept/textsearch/textsearch.h&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : namespace ept {
+<span class="lineNum"> 30 </span> : namespace debtags {
+<span class="lineNum"> 31 </span> : class Debtags;
+<span class="lineNum"> 32 </span> : }
+<span class="lineNum"> 33 </span> : namespace textsearch {
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : struct AptTagsExtraIndexer : public TextSearch::ExtraIndexer
+<span class="lineNum"> 36 </span><span class="lineNoCov"> 0 : {</span>
+<span class="lineNum"> 37 </span> : virtual void operator()(Xapian::Document&amp; doc, const apt::PackageRecord&amp; rec) const;
+<span class="lineNum"> 38 </span> : };
+<span class="lineNum"> 39 </span> :
+<span class="lineNum"> 40 </span> : struct DebtagsExtraIndexer : public TextSearch::ExtraIndexer
+<span class="lineNum"> 41 </span><span class="lineNoCov"> 0 : {</span>
+<span class="lineNum"> 42 </span> : const debtags::Debtags&amp; debtags;
+<span class="lineNum"> 43 </span> : DebtagsExtraIndexer(const debtags::Debtags&amp; debtags) : debtags(debtags) {}
+<span class="lineNum"> 44 </span> : virtual void operator()(Xapian::Document&amp; doc, const apt::PackageRecord&amp; rec) const;
+<span class="lineNum"> 45 </span> : };
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span> : }
+<span class="lineNum"> 48 </span> : }
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 51 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/textsearch/index.html b/rep/ept/textsearch/index.html
new file mode 100644
index 0000000..331b9e7
--- /dev/null
+++ b/rep/ept/textsearch/index.html
@@ -0,0 +1,119 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/textsearch</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - ept/textsearch</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">216</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">77.3 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">167</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="extraindexers.cc.gcov.html">extraindexers.cc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../snow.png" width=100 height=10 alt="0.0%"></td></tr></table>
+ </td>
+ <td class="coverPerLo">0.0&nbsp;%</td>
+ <td class="coverNumLo">0&nbsp;/&nbsp;10&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="extraindexers.h.gcov.html">extraindexers.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../snow.png" width=100 height=10 alt="0.0%"></td></tr></table>
+ </td>
+ <td class="coverPerLo">0.0&nbsp;%</td>
+ <td class="coverNumLo">0&nbsp;/&nbsp;2&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="textsearch.cc.gcov.html">textsearch.cc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=72 height=10 alt="72.2%"><img src="../../snow.png" width=28 height=10 alt="72.2%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">72.2&nbsp;%</td>
+ <td class="coverNumHi">83&nbsp;/&nbsp;115&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="textsearch.h.gcov.html">textsearch.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=87 height=10 alt="86.7%"><img src="../../snow.png" width=13 height=10 alt="86.7%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">86.7&nbsp;%</td>
+ <td class="coverNumHi">13&nbsp;/&nbsp;15&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="textsearch.test.h.gcov.html">textsearch.test.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../emerald.png" width=96 height=10 alt="95.9%"><img src="../../snow.png" width=4 height=10 alt="95.9%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">95.9&nbsp;%</td>
+ <td class="coverNumHi">71&nbsp;/&nbsp;74&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/textsearch/maint/index.html b/rep/ept/textsearch/maint/index.html
new file mode 100644
index 0000000..45b6542
--- /dev/null
+++ b/rep/ept/textsearch/maint/index.html
@@ -0,0 +1,92 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/textsearch/maint</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - ept/textsearch/maint</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">34</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">85.3 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">29</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="path.cc.gcov.html">path.cc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=83 height=10 alt="82.8%"><img src="../../../snow.png" width=17 height=10 alt="82.8%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">82.8&nbsp;%</td>
+ <td class="coverNumHi">24&nbsp;/&nbsp;29&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="path.h.gcov.html">path.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">5&nbsp;/&nbsp;5&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/textsearch/maint/path.cc.gcov.html b/rep/ept/textsearch/maint/path.cc.gcov.html
new file mode 100644
index 0000000..6363c97
--- /dev/null
+++ b/rep/ept/textsearch/maint/path.cc.gcov.html
@@ -0,0 +1,160 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/textsearch/maint/path.cc</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/textsearch/maint</a> - path.cc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">29</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">82.8 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">24</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: c++; indent-tabs-mode: t -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : /** \file
+<span class="lineNum"> 4 </span> : * popcon paths
+<span class="lineNum"> 5 </span> : */
+<span class="lineNum"> 6 </span> :
+<span class="lineNum"> 7 </span> : /*
+<span class="lineNum"> 8 </span> : * Copyright (C) 2005,2006,2007 Enrico Zini &lt;enrico@debian.org&gt;, Peter Rockai &lt;me@mornfall.net&gt;
+<span class="lineNum"> 9 </span> : *
+<span class="lineNum"> 10 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 11 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 12 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 13 </span> : * (at your option) any later version.
+<span class="lineNum"> 14 </span> : *
+<span class="lineNum"> 15 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 16 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 17 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 18 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 19 </span> : *
+<span class="lineNum"> 20 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 21 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 22 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 23 </span> : */
+<span class="lineNum"> 24 </span> :
+<span class="lineNum"> 25 </span> : #include &lt;ept/config.h&gt;
+<span class="lineNum"> 26 </span> : #include &lt;ept/textsearch/maint/path.h&gt;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : #include &lt;wibble/exception.h&gt;
+<span class="lineNum"> 29 </span> : #include &lt;wibble/sys/fs.h&gt;
+<span class="lineNum"> 30 </span> : #include &lt;wibble/string.h&gt;
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : #include &lt;cstdio&gt;
+<span class="lineNum"> 33 </span> : #include &lt;cerrno&gt;
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : #include &lt;sys/types.h&gt;
+<span class="lineNum"> 36 </span> : #include &lt;sys/stat.h&gt;
+<span class="lineNum"> 37 </span> : #include &lt;unistd.h&gt;
+<span class="lineNum"> 38 </span> :
+<span class="lineNum"> 39 </span> : using namespace std;
+<span class="lineNum"> 40 </span> : using namespace wibble;
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span> : namespace ept {
+<span class="lineNum"> 43 </span> : namespace textsearch {
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span><span class="lineCov"> 111 : Path &amp;Path::instance() {</span>
+<span class="lineNum"> 46 </span><span class="lineCov"> 111 : if (!s_instance) {</span>
+<span class="lineNum"> 47 </span><span class="lineCov"> 1 : s_instance = new Path;</span>
+<span class="lineNum"> 48 </span><span class="lineCov"> 1 : instance().m_indexDir = TEXTSEARCH_DB_DIR;</span>
+<span class="lineNum"> 49 </span> : }
+<span class="lineNum"> 50 </span><span class="lineCov"> 111 : return *s_instance;</span>
+<span class="lineNum"> 51 </span> : }
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span><span class="lineNoCov"> 0 : int Path::access( const std::string &amp;s, int m )</span>
+<span class="lineNum"> 54 </span> : {
+<span class="lineNum"> 55 </span><span class="lineNoCov"> 0 : return ::access( s.c_str(), m );</span>
+<span class="lineNum"> 56 </span> : }
+<span class="lineNum"> 57 </span> :
+<span class="lineNum"> 58 </span><span class="lineCov"> 20 : time_t Path::indexTimestamp()</span>
+<span class="lineNum"> 59 </span> : {
+<span class="lineNum"> 60 </span><span class="lineCov"> 20 : string tsfile = str::joinpath(instance().indexDir(), &quot;update-timestamp&quot;);</span>
+<span class="lineNum"> 61 </span><span class="lineCov"> 40 : std::auto_ptr&lt;struct stat&gt; st = wibble::sys::fs::stat(tsfile);</span>
+<span class="lineNum"> 62 </span><span class="lineCov"> 20 : if (st.get())</span>
+<span class="lineNum"> 63 </span><span class="lineCov"> 18 : return st-&gt;st_mtime;</span>
+<span class="lineNum"> 64 </span> : else
+<span class="lineNum"> 65 </span><span class="lineCov"> 2 : return 0;</span>
+<span class="lineNum"> 66 </span> : }
+<span class="lineNum"> 67 </span> :
+<span class="lineNum"> 68 </span><span class="lineCov"> 6 : void Path::setTimestamp(time_t ts)</span>
+<span class="lineNum"> 69 </span> : {
+<span class="lineNum"> 70 </span><span class="lineCov"> 6 : string tsfile = str::joinpath(instance().indexDir(), &quot;/update-timestamp&quot;);</span>
+<span class="lineNum"> 71 </span><span class="lineCov"> 12 : FILE* out = fopen(tsfile.c_str(), &quot;wt&quot;);</span>
+<span class="lineNum"> 72 </span><span class="lineCov"> 6 : if (!out)</span>
+<span class="lineNum"> 73 </span><span class="lineNoCov"> 0 : throw wibble::exception::File(tsfile, &quot;opening file for truncate/writing&quot;);</span>
+<span class="lineNum"> 74 </span><span class="lineCov"> 6 : if (fprintf(out, &quot;%ld\n&quot;, ts) &lt; 0)</span>
+<span class="lineNum"> 75 </span><span class="lineNoCov"> 0 : throw wibble::exception::File(tsfile, &quot;writing the modification time&quot;);</span>
+<span class="lineNum"> 76 </span><span class="lineCov"> 6 : if (fclose(out) &lt; 0)</span>
+<span class="lineNum"> 77 </span><span class="lineNoCov"> 0 : throw wibble::exception::File(tsfile, &quot;closing the file&quot;);</span>
+<span class="lineNum"> 78 </span><span class="lineCov"> 6 : }</span>
+<span class="lineNum"> 79 </span> :
+<span class="lineNum"> 80 </span><span class="lineCov"> 22 : void Path::setIndexDir( const std::string &amp;s )</span>
+<span class="lineNum"> 81 </span> : {
+<span class="lineNum"> 82 </span><span class="lineCov"> 22 : instance().m_indexDir = s;</span>
+<span class="lineNum"> 83 </span><span class="lineCov"> 22 : }</span>
+<span class="lineNum"> 84 </span> :
+<span class="lineNum"> 85 </span><span class="lineCov"> 37 : std::string Path::indexDir() { return instance().m_indexDir; }</span>
+<span class="lineNum"> 86 </span><span class="lineCov"> 25 : std::string Path::index() { return str::joinpath(instance().m_indexDir, &quot;/index&quot;); }</span>
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span> : Path *Path::s_instance = 0;
+<span class="lineNum"> 89 </span> :
+<span class="lineNum"> 90 </span> : }
+<span class="lineNum"> 91 </span><span class="lineCov"> 6 : }</span>
+<span class="lineNum"> 92 </span> :
+<span class="lineNum"> 93 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/textsearch/maint/path.h.gcov.html b/rep/ept/textsearch/maint/path.h.gcov.html
new file mode 100644
index 0000000..5505d7b
--- /dev/null
+++ b/rep/ept/textsearch/maint/path.h.gcov.html
@@ -0,0 +1,141 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/textsearch/maint/path.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">ept/textsearch/maint</a> - path.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">5</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">5</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: c++; indent-tabs-mode: t -*-
+<span class="lineNum"> 2 </span> : /** \file
+<span class="lineNum"> 3 </span> : * popcon paths
+<span class="lineNum"> 4 </span> : */
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : /*
+<span class="lineNum"> 7 </span> : * Copyright (C) 2005,2006,2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 8 </span> : *
+<span class="lineNum"> 9 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 10 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 11 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 12 </span> : * (at your option) any later version.
+<span class="lineNum"> 13 </span> : *
+<span class="lineNum"> 14 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 15 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 16 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 17 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 18 </span> : *
+<span class="lineNum"> 19 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 20 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 21 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 22 </span> : */
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : #ifndef EPT_TEXTSEARCH_PATH_H
+<span class="lineNum"> 25 </span> : #define EPT_TEXTSEARCH_PATH_H
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #include &lt;string&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : struct stat;
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : namespace ept {
+<span class="lineNum"> 32 </span> : namespace textsearch {
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span> : /**
+<span class="lineNum"> 35 </span> : * Singleton class to configure and access the various Popcon paths
+<span class="lineNum"> 36 </span> : */
+<span class="lineNum"> 37 </span> : class Path
+<span class="lineNum"> 38 </span><span class="lineCov"> 1 : {</span>
+<span class="lineNum"> 39 </span> : public:
+<span class="lineNum"> 40 </span> : static std::string indexDir();
+<span class="lineNum"> 41 </span> : static std::string index();
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : // Directory where Popcon source data is found
+<span class="lineNum"> 44 </span> : static void setIndexDir( const std::string &amp;s );
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> : static int access( const std::string &amp;, int );
+<span class="lineNum"> 47 </span> : static time_t indexTimestamp();
+<span class="lineNum"> 48 </span> : static void setTimestamp(time_t ts);
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span> : // RAII-style classes to temporarily override directories
+<span class="lineNum"> 51 </span> : class OverrideIndexDir
+<span class="lineNum"> 52 </span> : {
+<span class="lineNum"> 53 </span> : std::string old;
+<span class="lineNum"> 54 </span> : public:
+<span class="lineNum"> 55 </span><span class="lineCov"> 11 : OverrideIndexDir(const std::string&amp; path) : old(Path::indexDir())</span>
+<span class="lineNum"> 56 </span> : {
+<span class="lineNum"> 57 </span><span class="lineCov"> 11 : Path::setIndexDir(path);</span>
+<span class="lineNum"> 58 </span><span class="lineCov"> 11 : }</span>
+<span class="lineNum"> 59 </span><span class="lineCov"> 11 : ~OverrideIndexDir() { Path::setIndexDir(old); }</span>
+<span class="lineNum"> 60 </span> : };
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : protected:
+<span class="lineNum"> 63 </span> : static Path *s_instance;
+<span class="lineNum"> 64 </span> : static Path &amp;instance();
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span> : // Directory where Popcon source data is found
+<span class="lineNum"> 67 </span> : std::string m_indexDir;
+<span class="lineNum"> 68 </span> : };
+<span class="lineNum"> 69 </span> :
+<span class="lineNum"> 70 </span> : }
+<span class="lineNum"> 71 </span> : }
+<span class="lineNum"> 72 </span> :
+<span class="lineNum"> 73 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 74 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/textsearch/textsearch.cc.gcov.html b/rep/ept/textsearch/textsearch.cc.gcov.html
new file mode 100644
index 0000000..b1cdfba
--- /dev/null
+++ b/rep/ept/textsearch/textsearch.cc.gcov.html
@@ -0,0 +1,323 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/textsearch/textsearch.cc</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/textsearch</a> - textsearch.cc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">115</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">72.2 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">83</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> :
+<span class="lineNum"> 2 </span> : /** @file
+<span class="lineNum"> 3 </span> : * @author Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 4 </span> : * Fast full-text search
+<span class="lineNum"> 5 </span> : */
+<span class="lineNum"> 6 </span> :
+<span class="lineNum"> 7 </span> : /*
+<span class="lineNum"> 8 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 9 </span> : *
+<span class="lineNum"> 10 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 11 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 12 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 13 </span> : * (at your option) any later version.
+<span class="lineNum"> 14 </span> : *
+<span class="lineNum"> 15 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 16 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 17 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 18 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 19 </span> : *
+<span class="lineNum"> 20 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 21 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 22 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 23 </span> : */
+<span class="lineNum"> 24 </span> :
+<span class="lineNum"> 25 </span> : #include &lt;ept/textsearch/textsearch.h&gt;
+<span class="lineNum"> 26 </span> : #include &lt;ept/textsearch/maint/path.h&gt;
+<span class="lineNum"> 27 </span> : #include &lt;ept/apt/apt.h&gt;
+<span class="lineNum"> 28 </span> : #include &lt;ept/apt/packagerecord.h&gt;
+<span class="lineNum"> 29 </span> : //#include &lt;ept/debtags/debtags.h&gt;
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : #include &lt;wibble/regexp.h&gt;
+<span class="lineNum"> 32 </span> : #include &lt;cctype&gt;
+<span class="lineNum"> 33 </span> : #include &lt;cmath&gt;
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : #include &lt;xapian/queryparser.h&gt;
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : #include &lt;algorithm&gt;
+<span class="lineNum"> 38 </span> :
+<span class="lineNum"> 39 </span> : #include &lt;iostream&gt;
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : using namespace std;
+<span class="lineNum"> 42 </span> : using namespace ept::apt;
+<span class="lineNum"> 43 </span> : using namespace ept::debtags;
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : namespace ept {
+<span class="lineNum"> 46 </span> : namespace textsearch {
+<span class="lineNum"> 47 </span> :
+<span class="lineNum"> 48 </span> : size_t max_index = 0;
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span><span class="lineCov"> 11 : TextSearch::TextSearch()</span>
+<span class="lineNum"> 51 </span><span class="lineCov"> 11 : : m_timestamp(0), m_stem(&quot;en&quot;)</span>
+<span class="lineNum"> 52 </span> : {
+<span class="lineNum"> 53 </span><span class="lineCov"> 22 : m_timestamp = Path::indexTimestamp();</span>
+<span class="lineNum"> 54 </span><span class="lineCov"> 11 : if (m_timestamp)</span>
+<span class="lineNum"> 55 </span><span class="lineCov"> 9 : m_db.add_database(Xapian::Database(Path::index()));</span>
+<span class="lineNum"> 56 </span><span class="lineCov"> 11 : }</span>
+<span class="lineNum"> 57 </span> :
+<span class="lineNum"> 58 </span><span class="lineCov"> 7 : std::string TextSearch::toLower(const std::string&amp; str)</span>
+<span class="lineNum"> 59 </span> : {
+<span class="lineNum"> 60 </span><span class="lineCov"> 7 : std::string res;</span>
+<span class="lineNum"> 61 </span><span class="lineCov"> 7 : res.reserve(str.size());</span>
+<span class="lineNum"> 62 </span><span class="lineCov"> 44 : for (std::string::const_iterator i = str.begin(); i != str.end(); ++i)</span>
+<span class="lineNum"> 63 </span><span class="lineCov"> 37 : res += tolower(*i);</span>
+<span class="lineNum"> 64 </span><span class="lineNoCov"> 0 : return res;</span>
+<span class="lineNum"> 65 </span> : }
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span><span class="lineCov"> 3 : bool TextSearch::needsRebuild(apt::Apt&amp; apt)</span>
+<span class="lineNum"> 68 </span> : {
+<span class="lineNum"> 69 </span><span class="lineCov"> 3 : return apt.timestamp() &gt; m_timestamp;</span>
+<span class="lineNum"> 70 </span> : }
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span><span class="lineNoCov"> 0 : void TextSearch::normalize_and_add(Xapian::Document&amp; doc, const std::string&amp; term, int&amp; pos) const</span>
+<span class="lineNum"> 73 </span> : {
+<span class="lineNum"> 74 </span><span class="lineNoCov"> 0 : string t = TextSearch::toLower(term);</span>
+<span class="lineNum"> 75 </span><span class="lineNoCov"> 0 : string s = m_stem(t);</span>
+<span class="lineNum"> 76 </span><span class="lineNoCov"> 0 : doc.add_term(t);</span>
+<span class="lineNum"> 77 </span><span class="lineNoCov"> 0 : if (s != t)</span>
+<span class="lineNum"> 78 </span><span class="lineNoCov"> 0 : doc.add_term(s);</span>
+<span class="lineNum"> 79 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span><span class="lineCov"> 10 : bool TextSearch::rebuildIfNeeded(apt::Apt&amp; apt, const std::vector&lt;const TextSearch::ExtraIndexer*&gt;&amp; extraIndexers)</span>
+<span class="lineNum"> 82 </span> : {
+<span class="lineNum"> 83 </span> : // Check if a rebuild is needed, and keep a copy of the APT timestamp for
+<span class="lineNum"> 84 </span> : // saving later
+<span class="lineNum"> 85 </span><span class="lineCov"> 10 : time_t aptts = apt.timestamp();</span>
+<span class="lineNum"> 86 </span><span class="lineCov"> 10 : if (aptts &lt;= m_timestamp)</span>
+<span class="lineNum"> 87 </span><span class="lineCov"> 4 : return false;</span>
+<span class="lineNum"> 88 </span> :
+<span class="lineNum"> 89 </span> : // Reindex
+<span class="lineNum"> 90 </span><span class="lineCov"> 6 : Xapian::WritableDatabase database(Xapian::Flint::open(Path::index(), Xapian::DB_CREATE_OR_OPEN));</span>
+<span class="lineNum"> 91 </span><span class="lineCov"> 6 : Xapian::TermGenerator termgen;</span>
+<span class="lineNum"> 92 </span><span class="lineCov"> 6 : termgen.set_stemmer(m_stem);</span>
+<span class="lineNum"> 93 </span> : //database.begin_transaction();
+<span class="lineNum"> 94 </span><span class="lineCov"> 6 : PackageRecord rec;</span>
+<span class="lineNum"> 95 </span><span class="lineCov"> 6 : size_t count = 0;</span>
+<span class="lineNum"> 96 </span><span class="lineCov"> 2610 : for (Apt::record_iterator i = apt.recordBegin();</span>
+<span class="lineNum"> 97 </span> : i != apt.recordEnd(); ++i, ++count)
+<span class="lineNum"> 98 </span> : {
+<span class="lineNum"> 99 </span> : // If we are testing, we can set a limit to how many packages we index,
+<span class="lineNum"> 100 </span> : // to avoid it taking too much time
+<span class="lineNum"> 101 </span><span class="lineCov"> 2604 : if (max_index != 0 &amp;&amp; count &gt; max_index)</span>
+<span class="lineNum"> 102 </span><span class="lineNoCov"> 0 : break;</span>
+<span class="lineNum"> 103 </span> :
+<span class="lineNum"> 104 </span><span class="lineCov"> 2604 : rec.scan(*i);</span>
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span><span class="lineCov"> 2604 : Xapian::Document doc;</span>
+<span class="lineNum"> 107 </span><span class="lineCov"> 2604 : doc.set_data(rec.package());</span>
+<span class="lineNum"> 108 </span> :
+<span class="lineNum"> 109 </span><span class="lineCov"> 2604 : string pkgid = &quot;XP&quot; + rec.package();</span>
+<span class="lineNum"> 110 </span> : //std::cerr &lt;&lt; &quot;Add &quot; &lt;&lt; pkgid &lt;&lt; &quot;: &quot; &lt;&lt; idx &lt;&lt; std::endl;
+<span class="lineNum"> 111 </span><span class="lineCov"> 2604 : doc.add_term(pkgid);</span>
+<span class="lineNum"> 112 </span> :
+<span class="lineNum"> 113 </span> : // Index tags as well
+<span class="lineNum"> 114 </span><span class="lineCov"> 2604 : set&lt;string&gt; tags = rec.tag();</span>
+<span class="lineNum"> 115 </span><span class="lineCov"> 2604 : for (set&lt;string&gt;::const_iterator ti = tags.begin();</span>
+<span class="lineNum"> 116 </span> : ti != tags.end(); ++ti)
+<span class="lineNum"> 117 </span><span class="lineNoCov"> 0 : doc.add_term(&quot;XT&quot;+*ti);</span>
+<span class="lineNum"> 118 </span> :
+<span class="lineNum"> 119 </span><span class="lineCov"> 2604 : termgen.set_document(doc);</span>
+<span class="lineNum"> 120 </span><span class="lineCov"> 2604 : termgen.index_text_without_positions(rec.package());</span>
+<span class="lineNum"> 121 </span><span class="lineCov"> 5208 : termgen.index_text_without_positions(rec.description());</span>
+<span class="lineNum"> 122 </span> :
+<span class="lineNum"> 123 </span> : // Add the values
+<span class="lineNum"> 124 </span><span class="lineCov"> 5208 : doc.add_value(VAL_APT_INSTALLED_SIZE, Xapian::sortable_serialise(rec.installedSize()));</span>
+<span class="lineNum"> 125 </span><span class="lineCov"> 2604 : doc.add_value(VAL_APT_PACKAGE_SIZE, Xapian::sortable_serialise(rec.packageSize()));</span>
+<span class="lineNum"> 126 </span> :
+<span class="lineNum"> 127 </span><span class="lineCov"> 2604 : if (m_timestamp)</span>
+<span class="lineNum"> 128 </span><span class="lineCov"> 2170 : database.replace_document(pkgid, doc);</span>
+<span class="lineNum"> 129 </span> : else
+<span class="lineNum"> 130 </span><span class="lineCov"> 434 : database.add_document(doc);</span>
+<span class="lineNum"> 131 </span><span class="lineCov"> 6 : }</span>
+<span class="lineNum"> 132 </span> :
+<span class="lineNum"> 133 </span> : //database.commit_transaction();
+<span class="lineNum"> 134 </span> :
+<span class="lineNum"> 135 </span><span class="lineCov"> 6 : if (!m_timestamp)</span>
+<span class="lineNum"> 136 </span><span class="lineCov"> 1 : m_db.add_database(Xapian::Database(Path::index()));</span>
+<span class="lineNum"> 137 </span> : else
+<span class="lineNum"> 138 </span><span class="lineCov"> 5 : m_db.reopen();</span>
+<span class="lineNum"> 139 </span> :
+<span class="lineNum"> 140 </span><span class="lineCov"> 6 : m_timestamp = aptts;</span>
+<span class="lineNum"> 141 </span> :
+<span class="lineNum"> 142 </span><span class="lineCov"> 6 : Path::setTimestamp(aptts);</span>
+<span class="lineNum"> 143 </span> :
+<span class="lineNum"> 144 </span><span class="lineCov"> 6 : return true;</span>
+<span class="lineNum"> 145 </span> : }
+<span class="lineNum"> 146 </span> :
+<span class="lineNum"> 147 </span><span class="lineCov"> 2 : Xapian::Query TextSearch::makeORQuery(const std::string&amp; keywords) const</span>
+<span class="lineNum"> 148 </span> : {
+<span class="lineNum"> 149 </span><span class="lineCov"> 2 : wibble::Tokenizer tok(keywords, &quot;[A-Za-z0-9_-]+&quot;, REG_EXTENDED);</span>
+<span class="lineNum"> 150 </span><span class="lineCov"> 4 : return makeORQuery(tok.begin(), tok.end());</span>
+<span class="lineNum"> 151 </span> : }
+<span class="lineNum"> 152 </span> :
+<span class="lineNum"> 153 </span><span class="lineCov"> 1 : Xapian::Query TextSearch::makePartialORQuery(const std::string&amp; keywords) const</span>
+<span class="lineNum"> 154 </span> : {
+<span class="lineNum"> 155 </span><span class="lineCov"> 1 : wibble::Tokenizer tok(keywords, &quot;[A-Za-z0-9_-]+&quot;, REG_EXTENDED);</span>
+<span class="lineNum"> 156 </span><span class="lineCov"> 1 : vector&lt;string&gt; tokens;</span>
+<span class="lineNum"> 157 </span> : // FIXME: make the Tokenizer iterators properly iterable
+<span class="lineNum"> 158 </span><span class="lineCov"> 2 : for (wibble::Tokenizer::const_iterator i = tok.begin();</span>
+<span class="lineNum"> 159 </span> : i != tok.end(); ++i)
+<span class="lineNum"> 160 </span><span class="lineCov"> 1 : tokens.push_back(*i);</span>
+<span class="lineNum"> 161 </span> : // Add all the terms starting with 'last'
+<span class="lineNum"> 162 </span><span class="lineCov"> 1 : if (!tokens.empty())</span>
+<span class="lineNum"> 163 </span> : {
+<span class="lineNum"> 164 </span><span class="lineCov"> 1 : string&amp; last = *tokens.rbegin();</span>
+<span class="lineNum"> 165 </span><span class="lineCov"> 1 : if (last.size() == 1)</span>
+<span class="lineNum"> 166 </span> : // Ignore one-letter partial terms: they make the query uselessly
+<span class="lineNum"> 167 </span> : // large and slow, and it's worth just to wait for more characters
+<span class="lineNum"> 168 </span> : // to come
+<span class="lineNum"> 169 </span><span class="lineNoCov"> 0 : tokens.resize(tokens.size() - 1);</span>
+<span class="lineNum"> 170 </span> : else
+<span class="lineNum"> 171 </span><span class="lineCov"> 1 : copy(m_db.allterms_begin(last), m_db.allterms_end(last), back_inserter(tokens));</span>
+<span class="lineNum"> 172 </span> : /*
+<span class="lineNum"> 173 </span> : for (Xapian::TermIterator t = m_db.allterms_begin(last);
+<span class="lineNum"> 174 </span> : t != m_db.allterms_end(last); ++t)
+<span class="lineNum"> 175 </span> : tokens.push_back(*t);
+<span class="lineNum"> 176 </span> : */
+<span class="lineNum"> 177 </span> : }
+<span class="lineNum"> 178 </span><span class="lineCov"> 1 : return makeORQuery(tokens.begin(), tokens.end());</span>
+<span class="lineNum"> 179 </span> : }
+<span class="lineNum"> 180 </span> :
+<span class="lineNum"> 181 </span><span class="lineCov"> 10 : Xapian::docid TextSearch::docidByName(const std::string&amp; pkgname) const</span>
+<span class="lineNum"> 182 </span> : {
+<span class="lineNum"> 183 </span><span class="lineCov"> 10 : Xapian::PostingIterator i = m_db.postlist_begin(&quot;XP&quot;+pkgname);</span>
+<span class="lineNum"> 184 </span><span class="lineCov"> 10 : if (i == m_db.postlist_end(&quot;XP&quot;+pkgname))</span>
+<span class="lineNum"> 185 </span><span class="lineCov"> 5 : return 0;</span>
+<span class="lineNum"> 186 </span> : else
+<span class="lineNum"> 187 </span><span class="lineCov"> 5 : return *i;</span>
+<span class="lineNum"> 188 </span> : }
+<span class="lineNum"> 189 </span> :
+<span class="lineNum"> 190 </span> : struct TagFilter : public Xapian::ExpandDecider
+<span class="lineNum"> 191 </span><span class="lineCov"> 4 : {</span>
+<span class="lineNum"> 192 </span><span class="lineNoCov"> 0 : virtual bool operator()(const std::string &amp;term) const { return term[0] == 'T'; }</span>
+<span class="lineNum"> 193 </span> : };
+<span class="lineNum"> 194 </span> :
+<span class="lineNum"> 195 </span><span class="lineCov"> 2 : static TagFilter tagFilter;</span>
+<span class="lineNum"> 196 </span> :
+<span class="lineNum"> 197 </span><span class="lineNoCov"> 0 : vector&lt;string&gt; TextSearch::expand(Xapian::Enquire&amp; enq) const</span>
+<span class="lineNum"> 198 </span> : {
+<span class="lineNum"> 199 </span><span class="lineNoCov"> 0 : Xapian::RSet rset;</span>
+<span class="lineNum"> 200 </span> : // Get the top 5 results as 'good ones' to compute the search expansion
+<span class="lineNum"> 201 </span><span class="lineNoCov"> 0 : Xapian::MSet mset = enq.get_mset(0, 5);</span>
+<span class="lineNum"> 202 </span><span class="lineNoCov"> 0 : for (Xapian::MSet::iterator i = mset.begin(); i != mset.end(); ++i)</span>
+<span class="lineNum"> 203 </span><span class="lineNoCov"> 0 : rset.add_document(i);</span>
+<span class="lineNum"> 204 </span> : // Get the expanded set, only expanding the query with tag names
+<span class="lineNum"> 205 </span><span class="lineNoCov"> 0 : Xapian::ESet eset = enq.get_eset(5, rset, &amp;tagFilter);</span>
+<span class="lineNum"> 206 </span><span class="lineNoCov"> 0 : vector&lt;string&gt; res;</span>
+<span class="lineNum"> 207 </span><span class="lineNoCov"> 0 : for (Xapian::ESetIterator i = eset.begin(); i != eset.end(); ++i)</span>
+<span class="lineNum"> 208 </span><span class="lineNoCov"> 0 : res.push_back(*i);</span>
+<span class="lineNum"> 209 </span><span class="lineNoCov"> 0 : return res;</span>
+<span class="lineNum"> 210 </span> : }
+<span class="lineNum"> 211 </span> :
+<span class="lineNum"> 212 </span><span class="lineNoCov"> 0 : Xapian::Query TextSearch::makeRelatedQuery(const std::string&amp; pkgname) const</span>
+<span class="lineNum"> 213 </span> : {
+<span class="lineNum"> 214 </span><span class="lineNoCov"> 0 : Xapian::Enquire enquire(db());</span>
+<span class="lineNum"> 215 </span> :
+<span class="lineNum"> 216 </span> : // Retrieve the document for the given package
+<span class="lineNum"> 217 </span><span class="lineNoCov"> 0 : enquire.set_query(Xapian::Query(&quot;XP&quot;+pkgname));</span>
+<span class="lineNum"> 218 </span><span class="lineNoCov"> 0 : Xapian::MSet matches = enquire.get_mset(0, 1);</span>
+<span class="lineNum"> 219 </span><span class="lineNoCov"> 0 : Xapian::MSetIterator mi = matches.begin();</span>
+<span class="lineNum"> 220 </span><span class="lineNoCov"> 0 : if (mi == matches.end()) return Xapian::Query();</span>
+<span class="lineNum"> 221 </span><span class="lineNoCov"> 0 : Xapian::Document doc = mi.get_document();</span>
+<span class="lineNum"> 222 </span> :
+<span class="lineNum"> 223 </span> : // Return the query to get the list of similar documents
+<span class="lineNum"> 224 </span><span class="lineNoCov"> 0 : return Xapian::Query(Xapian::Query::OP_OR, doc.termlist_begin(), doc.termlist_end());</span>
+<span class="lineNum"> 225 </span> : }
+<span class="lineNum"> 226 </span> :
+<span class="lineNum"> 227 </span><span class="lineCov"> 4 : double TextSearch::getDoubleValue(const std::string&amp; pkgname, Xapian::valueno val_id) const</span>
+<span class="lineNum"> 228 </span> : {
+<span class="lineNum"> 229 </span><span class="lineCov"> 4 : Xapian::docid id = docidByName(pkgname);</span>
+<span class="lineNum"> 230 </span><span class="lineCov"> 4 : if (id == 0)</span>
+<span class="lineNum"> 231 </span><span class="lineCov"> 2 : return 0.0;</span>
+<span class="lineNum"> 232 </span><span class="lineCov"> 2 : Xapian::Document doc = db().get_document(id);</span>
+<span class="lineNum"> 233 </span><span class="lineCov"> 2 : string val = doc.get_value(val_id);</span>
+<span class="lineNum"> 234 </span><span class="lineCov"> 2 : if (val.empty())</span>
+<span class="lineNum"> 235 </span><span class="lineNoCov"> 0 : return 0.0;</span>
+<span class="lineNum"> 236 </span> : else
+<span class="lineNum"> 237 </span><span class="lineCov"> 2 : return Xapian::sortable_unserialise(val);</span>
+<span class="lineNum"> 238 </span> : }
+<span class="lineNum"> 239 </span> :
+<span class="lineNum"> 240 </span><span class="lineCov"> 4 : int TextSearch::getIntValue(const std::string&amp; pkgname, Xapian::valueno val_id) const</span>
+<span class="lineNum"> 241 </span> : {
+<span class="lineNum"> 242 </span><span class="lineCov"> 4 : Xapian::docid id = docidByName(pkgname);</span>
+<span class="lineNum"> 243 </span><span class="lineCov"> 4 : if (id == 0)</span>
+<span class="lineNum"> 244 </span><span class="lineCov"> 2 : return 0;</span>
+<span class="lineNum"> 245 </span><span class="lineCov"> 2 : Xapian::Document doc = db().get_document(id);</span>
+<span class="lineNum"> 246 </span><span class="lineCov"> 2 : string val = doc.get_value(val_id);</span>
+<span class="lineNum"> 247 </span><span class="lineCov"> 2 : if (val.empty())</span>
+<span class="lineNum"> 248 </span><span class="lineNoCov"> 0 : return 0;</span>
+<span class="lineNum"> 249 </span> : else
+<span class="lineNum"> 250 </span><span class="lineCov"> 2 : return (int)nearbyint(Xapian::sortable_unserialise(val));</span>
+<span class="lineNum"> 251 </span> : }
+<span class="lineNum"> 252 </span> :
+<span class="lineNum"> 253 </span> : }
+<span class="lineNum"> 254 </span><span class="lineCov"> 6 : }</span>
+<span class="lineNum"> 255 </span> :
+<span class="lineNum"> 256 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/textsearch/textsearch.h.gcov.html b/rep/ept/textsearch/textsearch.h.gcov.html
new file mode 100644
index 0000000..d46dca8
--- /dev/null
+++ b/rep/ept/textsearch/textsearch.h.gcov.html
@@ -0,0 +1,286 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/textsearch/textsearch.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/textsearch</a> - textsearch.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">15</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">86.7 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">13</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef EPT_TEXTSEARCH_TEXTSEARCH_H
+<span class="lineNum"> 2 </span> : #define EPT_TEXTSEARCH_TEXTSEARCH_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** @file
+<span class="lineNum"> 5 </span> : * @author Enrico Zini &lt;enrico@enricozini.org&gt;
+<span class="lineNum"> 6 </span> : * Fast full-text search
+<span class="lineNum"> 7 </span> : */
+<span class="lineNum"> 8 </span> :
+<span class="lineNum"> 9 </span> : /*
+<span class="lineNum"> 10 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 11 </span> : *
+<span class="lineNum"> 12 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 13 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 14 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 15 </span> : * (at your option) any later version.
+<span class="lineNum"> 16 </span> : *
+<span class="lineNum"> 17 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 18 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 19 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 20 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 21 </span> : *
+<span class="lineNum"> 22 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 23 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 24 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 25 </span> : */
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #include &lt;xapian.h&gt;
+<span class="lineNum"> 28 </span> : #include &lt;vector&gt;
+<span class="lineNum"> 29 </span> : #include &lt;string&gt;
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : namespace ept {
+<span class="lineNum"> 32 </span> : namespace apt {
+<span class="lineNum"> 33 </span> : class Apt;
+<span class="lineNum"> 34 </span> : class PackageRecord;
+<span class="lineNum"> 35 </span> : }
+<span class="lineNum"> 36 </span> : namespace debtags {
+<span class="lineNum"> 37 </span> : class Debtags;
+<span class="lineNum"> 38 </span> : }
+<span class="lineNum"> 39 </span> : namespace textsearch {
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : // Allocate value indexes for known values
+<span class="lineNum"> 42 </span> : const Xapian::valueno VAL_APT_INSTALLED_SIZE = 1;
+<span class="lineNum"> 43 </span> : const Xapian::valueno VAL_APT_PACKAGE_SIZE = 2;
+<span class="lineNum"> 44 </span> : const Xapian::valueno VAL_POPCON = 10;
+<span class="lineNum"> 45 </span> : const Xapian::valueno VAL_ITERATING_RATING = 20;
+<span class="lineNum"> 46 </span> : const Xapian::valueno VAL_ITERATING_FUNCTIONALITY = 21;
+<span class="lineNum"> 47 </span> : const Xapian::valueno VAL_ITERATING_USABILITY = 22;
+<span class="lineNum"> 48 </span> : const Xapian::valueno VAL_ITERATING_SECURITY = 23;
+<span class="lineNum"> 49 </span> : const Xapian::valueno VAL_ITERATING_PERFORMANCE = 24;
+<span class="lineNum"> 50 </span> : const Xapian::valueno VAL_ITERATING_QUALITY = 25;
+<span class="lineNum"> 51 </span> : const Xapian::valueno VAL_ITERATING_SUPPORT = 26;
+<span class="lineNum"> 52 </span> : const Xapian::valueno VAL_ITERATING_ADOPTION = 27;
+<span class="lineNum"> 53 </span> : // If you need to index a value and cannot edit this file, feel free to use any
+<span class="lineNum"> 54 </span> : // value starting from 1000000
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /*
+<span class="lineNum"> 58 </span> : Fallback on apt scan searches when index is not present
+<span class="lineNum"> 59 </span> :
+<span class="lineNum"> 60 </span> : Explicitly decide at instantiation (or at any other time) if a rebuild should
+<span class="lineNum"> 61 </span> : be performed. Just adding a 'rebuildIfNeeded' method would be enough.
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span> : 17:14 #xapian &lt; enrico&gt; Hello. I'm finally in a position of writing a library to maintain
+<span class="lineNum"> 64 </span> : a xapian index with Debian package descriptions in a Debian system
+<span class="lineNum"> 65 </span> : 17:14 #xapian &lt; enrico&gt; I have a question, though
+<span class="lineNum"> 66 </span> : 17:14 #xapian &lt; enrico&gt; The descriptions change regularly as people run 'apt-get update'
+<span class="lineNum"> 67 </span> : 17:15 #xapian &lt; enrico&gt; I'd need to have a way to update the description index after
+<span class="lineNum"> 68 </span> : apt-get update, without rebuilding it from scratch
+<span class="lineNum"> 69 </span> : 17:15 #xapian &lt; enrico&gt; Is there some documentation on how to do that? I can't exactly
+<span class="lineNum"> 70 </span> : tell Xapian &quot;the new description for package foo is this&quot; because
+<span class="lineNum"> 71 </span> : I'd need the xapian id
+<span class="lineNum"> 72 </span> : 19:11 #xapian &lt; omega&gt; you can add a unique term with a boolean prefix?
+<span class="lineNum"> 73 </span> : 19:11 #xapian &lt; omega&gt; like Qpackage-name
+<span class="lineNum"> 74 </span> : 19:11 #xapian &lt; omega&gt; then you search for it and replace_document
+<span class="lineNum"> 75 </span> : 19:24 #xapian &lt; richardb&gt; Or indeed, you use the &quot;replace_document()&quot; form which takes a
+<span class="lineNum"> 76 </span> : unique_id term.
+<span class="lineNum"> 77 </span> : 19:25 #xapian &lt; richardb&gt; Xapian::docid replace_document(const std::string &amp;
+<span class="lineNum"> 78 </span> : unique_term,
+<span class="lineNum"> 79 </span> : 19:25 #xapian &lt; richardb&gt; const Xapian::Document &amp;
+<span class="lineNum"> 80 </span> : document);
+<span class="lineNum"> 81 </span> : 19:43 #xapian &lt; enrico&gt; unique term
+<span class="lineNum"> 82 </span> : 19:43 #xapian &lt; enrico&gt; nice!
+<span class="lineNum"> 83 </span> : 19:44 #xapian &lt; enrico&gt; can I use a non-alpha prefix, like :package-name ?
+<span class="lineNum"> 84 </span> : 19:45 #xapian &lt; enrico&gt; or pkg:package-name
+<span class="lineNum"> 85 </span> : 19:45 #xapian &lt; enrico&gt; I suppose I can
+<span class="lineNum"> 86 </span> : */
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span> : /**
+<span class="lineNum"> 89 </span> : * Maintains and accesses a Xapian index of package descriptions.
+<span class="lineNum"> 90 </span> : *
+<span class="lineNum"> 91 </span> : * Contrarily to Debtags and Popcon, TextSearch does not attempt to create the
+<span class="lineNum"> 92 </span> : * index in the home directory if no system index is found and it is not
+<span class="lineNum"> 93 </span> : * running as root: this is to avoid secretly building large indexes (&gt;50Mb)
+<span class="lineNum"> 94 </span> : * in the home directory of users.
+<span class="lineNum"> 95 </span> : *
+<span class="lineNum"> 96 </span> : * The idea then is to have root keep the index up to date, possibly running a
+<span class="lineNum"> 97 </span> : * reindexing tool once a day, or after an apt-get update.
+<span class="lineNum"> 98 </span> : *
+<span class="lineNum"> 99 </span> : * This works because the full text search index is useful even if it is
+<span class="lineNum"> 100 </span> : * slightly out of date.
+<span class="lineNum"> 101 </span> : */
+<span class="lineNum"> 102 </span> : class TextSearch
+<span class="lineNum"> 103 </span><span class="lineCov"> 11 : {</span>
+<span class="lineNum"> 104 </span> : protected:
+<span class="lineNum"> 105 </span> : time_t m_timestamp;
+<span class="lineNum"> 106 </span> : Xapian::Database m_db;
+<span class="lineNum"> 107 </span> : Xapian::Stem m_stem;
+<span class="lineNum"> 108 </span> :
+<span class="lineNum"> 109 </span> : /// Return a lowercased copy of the string
+<span class="lineNum"> 110 </span> : static std::string toLower(const std::string&amp; str);
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span> : /**
+<span class="lineNum"> 113 </span> : * Add normalised tokens computed from the string to the document doc.
+<span class="lineNum"> 114 </span> : *
+<span class="lineNum"> 115 </span> : * pos is used as a sequence generator for entering the token position in
+<span class="lineNum"> 116 </span> : * the document.
+<span class="lineNum"> 117 </span> : */
+<span class="lineNum"> 118 </span> : void normalize_and_add(Xapian::Document&amp; doc, const std::string&amp; term, int&amp; pos) const;
+<span class="lineNum"> 119 </span> :
+<span class="lineNum"> 120 </span> : public:
+<span class="lineNum"> 121 </span> : struct ExtraIndexer
+<span class="lineNum"> 122 </span> : {
+<span class="lineNum"> 123 </span><span class="lineNoCov"> 0 : virtual ~ExtraIndexer() {}</span>
+<span class="lineNum"> 124 </span> : virtual void operator()(Xapian::Document&amp; doc, const apt::PackageRecord&amp; rec) const = 0;
+<span class="lineNum"> 125 </span> : };
+<span class="lineNum"> 126 </span> :
+<span class="lineNum"> 127 </span> : TextSearch();
+<span class="lineNum"> 128 </span> :
+<span class="lineNum"> 129 </span> : /// Access the Xapian database
+<span class="lineNum"> 130 </span><span class="lineCov"> 3 : Xapian::Database&amp; db() { return m_db; }</span>
+<span class="lineNum"> 131 </span> :
+<span class="lineNum"> 132 </span> : /// Access the Xapian database
+<span class="lineNum"> 133 </span><span class="lineCov"> 4 : const Xapian::Database&amp; db() const { return m_db; }</span>
+<span class="lineNum"> 134 </span> :
+<span class="lineNum"> 135 </span> : /// Timestamp of when the Xapian database was last updated
+<span class="lineNum"> 136 </span><span class="lineCov"> 3 : time_t timestamp() const { return m_timestamp; }</span>
+<span class="lineNum"> 137 </span> :
+<span class="lineNum"> 138 </span> : /// Returns true if the index has data
+<span class="lineNum"> 139 </span><span class="lineCov"> 3 : bool hasData() const { return m_timestamp &gt; 0; }</span>
+<span class="lineNum"> 140 </span> :
+<span class="lineNum"> 141 </span> : /// Returns true if the index is older than the Apt database information
+<span class="lineNum"> 142 </span> : bool needsRebuild(apt::Apt&amp; apt);
+<span class="lineNum"> 143 </span> :
+<span class="lineNum"> 144 </span> : /**
+<span class="lineNum"> 145 </span> : * Rebuild the index if needed.
+<span class="lineNum"> 146 </span> : *
+<span class="lineNum"> 147 </span> : * Allow to specify functors that contribute to the indexing.
+<span class="lineNum"> 148 </span> : *
+<span class="lineNum"> 149 </span> : * @note This requires write access to the index directory.
+<span class="lineNum"> 150 </span> : * @note This is not the main way to update the index: it is provided here
+<span class="lineNum"> 151 </span> : * only as a way to build a draft index for the library tests
+<span class="lineNum"> 152 </span> : */
+<span class="lineNum"> 153 </span> : bool rebuildIfNeeded(
+<span class="lineNum"> 154 </span> : apt::Apt&amp; apt,
+<span class="lineNum"> 155 </span> : const std::vector&lt;const ExtraIndexer*&gt;&amp; extraIndexers = std::vector&lt;const ExtraIndexer*&gt;());
+<span class="lineNum"> 156 </span> :
+<span class="lineNum"> 157 </span> : /**
+<span class="lineNum"> 158 </span> : * Retrieve a Xapian docid by package name
+<span class="lineNum"> 159 </span> : */
+<span class="lineNum"> 160 </span> : Xapian::docid docidByName(const std::string&amp; pkgname) const;
+<span class="lineNum"> 161 </span> :
+<span class="lineNum"> 162 </span> : /**
+<span class="lineNum"> 163 </span> : * Tokenize the string and build an OR query with the resulting keywords
+<span class="lineNum"> 164 </span> : */
+<span class="lineNum"> 165 </span> : Xapian::Query makeORQuery(const std::string&amp; keywords) const;
+<span class="lineNum"> 166 </span> :
+<span class="lineNum"> 167 </span> : /**
+<span class="lineNum"> 168 </span> : * Tokenize the string and build an OR query with the resulting keywords.
+<span class="lineNum"> 169 </span> : *
+<span class="lineNum"> 170 </span> : * The last token in keywords is considered to be typed only partially, to
+<span class="lineNum"> 171 </span> : * implement proper search-as-you-type.
+<span class="lineNum"> 172 </span> : */
+<span class="lineNum"> 173 </span> : Xapian::Query makePartialORQuery(const std::string&amp; keywords) const;
+<span class="lineNum"> 174 </span> :
+<span class="lineNum"> 175 </span> : /**
+<span class="lineNum"> 176 </span> : * Build a query with the given keywords, specified as iterators of strings
+<span class="lineNum"> 177 </span> : */
+<span class="lineNum"> 178 </span> : template&lt;typename ITER&gt;
+<span class="lineNum"> 179 </span><span class="lineCov"> 3 : Xapian::Query makeORQuery(const ITER&amp; begin, const ITER&amp; end) const</span>
+<span class="lineNum"> 180 </span> : {
+<span class="lineNum"> 181 </span><span class="lineCov"> 3 : std::vector&lt;std::string&gt; terms;</span>
+<span class="lineNum"> 182 </span> : // Insert both the lowercased and the stemmed lowercased query terms
+<span class="lineNum"> 183 </span><span class="lineCov"> 10 : for (ITER i = begin; i != end; ++i)</span>
+<span class="lineNum"> 184 </span> : {
+<span class="lineNum"> 185 </span><span class="lineCov"> 7 : std::string t = toLower(*i);</span>
+<span class="lineNum"> 186 </span><span class="lineCov"> 7 : std::string s = m_stem(t);</span>
+<span class="lineNum"> 187 </span><span class="lineCov"> 7 : terms.push_back(t);</span>
+<span class="lineNum"> 188 </span><span class="lineCov"> 7 : if (s != t)</span>
+<span class="lineNum"> 189 </span><span class="lineNoCov"> 0 : terms.push_back(&quot;Z&quot; + s);</span>
+<span class="lineNum"> 190 </span> : }
+<span class="lineNum"> 191 </span><span class="lineCov"> 3 : return Xapian::Query(Xapian::Query::OP_OR, terms.begin(), terms.end());</span>
+<span class="lineNum"> 192 </span> : }
+<span class="lineNum"> 193 </span> :
+<span class="lineNum"> 194 </span> : /// Return a list of tag-based terms that can be used to expand an OR query
+<span class="lineNum"> 195 </span> : std::vector&lt;std::string&gt; expand(Xapian::Enquire&amp; enq) const;
+<span class="lineNum"> 196 </span> :
+<span class="lineNum"> 197 </span> : // std::vector&lt;std::string&gt; similar(const std::string&amp; pkg);
+<span class="lineNum"> 198 </span> :
+<span class="lineNum"> 199 </span> : /**
+<span class="lineNum"> 200 </span> : * Create a query to look for packages similar to the given one
+<span class="lineNum"> 201 </span> : */
+<span class="lineNum"> 202 </span> : Xapian::Query makeRelatedQuery(const std::string&amp; pkgname) const;
+<span class="lineNum"> 203 </span> :
+<span class="lineNum"> 204 </span> : /**
+<span class="lineNum"> 205 </span> : * Get the integer value for
+<span class="lineNum"> 206 </span> : */
+<span class="lineNum"> 207 </span> : double getDoubleValue(const std::string&amp; pkgname, Xapian::valueno val_id) const;
+<span class="lineNum"> 208 </span> :
+<span class="lineNum"> 209 </span> : /**
+<span class="lineNum"> 210 </span> : * Get the integer value for
+<span class="lineNum"> 211 </span> : */
+<span class="lineNum"> 212 </span> : int getIntValue(const std::string&amp; pkgname, Xapian::valueno val_id) const;
+<span class="lineNum"> 213 </span> : };
+<span class="lineNum"> 214 </span> :
+<span class="lineNum"> 215 </span> : }
+<span class="lineNum"> 216 </span> : }
+<span class="lineNum"> 217 </span> :
+<span class="lineNum"> 218 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 219 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/textsearch/textsearch.test.h.gcov.html b/rep/ept/textsearch/textsearch.test.h.gcov.html
new file mode 100644
index 0000000..230103d
--- /dev/null
+++ b/rep/ept/textsearch/textsearch.test.h.gcov.html
@@ -0,0 +1,233 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/textsearch/textsearch.test.h</title>
+ <link rel="stylesheet" type="text/css" href="../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/textsearch</a> - textsearch.test.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">74</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">95.9 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">71</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: c++; tab-width: 4; indent-tabs-mode: t -*-
+<span class="lineNum"> 2 </span> : /*
+<span class="lineNum"> 3 </span> : * popcon test
+<span class="lineNum"> 4 </span> : *
+<span class="lineNum"> 5 </span> : * Copyright (C) 2007 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 6 </span> : *
+<span class="lineNum"> 7 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 8 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 9 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 10 </span> : * (at your option) any later version.
+<span class="lineNum"> 11 </span> : *
+<span class="lineNum"> 12 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 16 </span> : *
+<span class="lineNum"> 17 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 18 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 19 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 20 </span> : */
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : #include &lt;ept/test.h&gt;
+<span class="lineNum"> 23 </span> : #include &lt;ept/textsearch/textsearch.h&gt;
+<span class="lineNum"> 24 </span> : #include &lt;ept/textsearch/maint/path.h&gt;
+<span class="lineNum"> 25 </span> : #include &lt;ept/apt/apt.h&gt;
+<span class="lineNum"> 26 </span> : #include &lt;wibble/sys/fs.h&gt;
+<span class="lineNum"> 27 </span> : #include &lt;set&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : namespace ept {
+<span class="lineNum"> 30 </span> : namespace textsearch {
+<span class="lineNum"> 31 </span> : extern size_t max_index;
+<span class="lineNum"> 32 </span> : }
+<span class="lineNum"> 33 </span> : }
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : using namespace std;
+<span class="lineNum"> 36 </span> : using namespace ept;
+<span class="lineNum"> 37 </span> : using namespace ept::textsearch;
+<span class="lineNum"> 38 </span> : using namespace ept::apt;
+<span class="lineNum"> 39 </span> :
+<span class="lineNum"> 40 </span> : struct DirMaker
+<span class="lineNum"> 41 </span> : {
+<span class="lineNum"> 42 </span><span class="lineCov"> 6 : DirMaker(const std::string&amp; name)</span>
+<span class="lineNum"> 43 </span> : {
+<span class="lineNum"> 44 </span><span class="lineCov"> 6 : wibble::sys::fs::mkdirIfMissing(name, 0755);</span>
+<span class="lineNum"> 45 </span><span class="lineCov"> 6 : }</span>
+<span class="lineNum"> 46 </span> : };
+<span class="lineNum"> 47 </span> :
+<span class="lineNum"> 48 </span> : struct TestTextsearch : AptTestEnvironment
+<span class="lineNum"> 49 </span><span class="lineCov"> 6 : {</span>
+<span class="lineNum"> 50 </span> : DirMaker md;
+<span class="lineNum"> 51 </span> : Path::OverrideIndexDir oid;
+<span class="lineNum"> 52 </span> : Apt apt;
+<span class="lineNum"> 53 </span> : TextSearch textsearch;
+<span class="lineNum"> 54 </span> :
+<span class="lineNum"> 55 </span><span class="lineCov"> 6 : TestTextsearch()</span>
+<span class="lineNum"> 56 </span><span class="lineCov"> 6 : : md( TEST_ENV_DIR &quot;xapian&quot;), oid( TEST_ENV_DIR &quot;xapian&quot;)</span>
+<span class="lineNum"> 57 </span> : {
+<span class="lineNum"> 58 </span> : try {
+<span class="lineNum"> 59 </span><span class="lineCov"> 6 : ept::textsearch::max_index = 1000;</span>
+<span class="lineNum"> 60 </span><span class="lineCov"> 6 : textsearch.rebuildIfNeeded(apt);</span>
+<span class="lineNum"> 61 </span><span class="lineNoCov"> 0 : } catch (Xapian::Error&amp; e) {</span>
+<span class="lineNum"> 62 </span><span class="lineNoCov"> 0 : cerr &lt;&lt; e.get_type() &lt;&lt; &quot; &quot; &lt;&lt; e.get_msg() &lt;&lt; &quot; &quot; &lt;&lt; e.get_context() &lt;&lt; endl;</span>
+<span class="lineNum"> 63 </span><span class="lineNoCov"> 0 : throw;</span>
+<span class="lineNum"> 64 </span> : }
+<span class="lineNum"> 65 </span><span class="lineCov"> 6 : }</span>
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : // Access an empty index
+<span class="lineNum"> 68 </span><span class="lineCov"> 1 : Test empty()</span>
+<span class="lineNum"> 69 </span> : {
+<span class="lineNum"> 70 </span><span class="lineCov"> 1 : Path::OverrideIndexDir oid(&quot;./empty&quot;);</span>
+<span class="lineNum"> 71 </span><span class="lineCov"> 1 : TextSearch empty;</span>
+<span class="lineNum"> 72 </span><span class="lineCov"> 1 : assert_eq(empty.timestamp(), 0);</span>
+<span class="lineNum"> 73 </span><span class="lineCov"> 2 : assert(!empty.hasData());</span>
+<span class="lineNum"> 74 </span><span class="lineCov"> 2 : assert(empty.needsRebuild(apt));</span>
+<span class="lineNum"> 75 </span> : /*
+<span class="lineNum"> 76 </span> : Xapian::Enquire enq(empty.db());
+<span class="lineNum"> 77 </span> : empty.search(enq, &quot;apt&quot;);
+<span class="lineNum"> 78 </span> : Xapian::MSet matches = enq.get_mset(0, 100);
+<span class="lineNum"> 79 </span> : assert_eq(matches.size(), 0u);
+<span class="lineNum"> 80 </span> : */
+<span class="lineNum"> 81 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 82 </span> :
+<span class="lineNum"> 83 </span> : // Very basic access
+<span class="lineNum"> 84 </span><span class="lineCov"> 1 : Test basicAccess()</span>
+<span class="lineNum"> 85 </span> : {
+<span class="lineNum"> 86 </span><span class="lineCov"> 1 : assert(textsearch.hasData());</span>
+<span class="lineNum"> 87 </span><span class="lineCov"> 2 : assert(textsearch.timestamp() &gt; 0);</span>
+<span class="lineNum"> 88 </span><span class="lineCov"> 2 : assert(!textsearch.needsRebuild(apt));</span>
+<span class="lineNum"> 89 </span> :
+<span class="lineNum"> 90 </span><span class="lineCov"> 1 : Xapian::Enquire enq(textsearch.db());</span>
+<span class="lineNum"> 91 </span><span class="lineCov"> 2 : enq.set_query(textsearch.makeORQuery(&quot;sgml&quot;));</span>
+<span class="lineNum"> 92 </span><span class="lineCov"> 1 : Xapian::MSet matches = enq.get_mset(0, 100);</span>
+<span class="lineNum"> 93 </span><span class="lineCov"> 1 : assert(matches.size() &gt; 0);</span>
+<span class="lineNum"> 94 </span> :
+<span class="lineNum"> 95 </span> : // See if the apt package is among the results
+<span class="lineNum"> 96 </span><span class="lineCov"> 1 : set&lt;string&gt; results;</span>
+<span class="lineNum"> 97 </span><span class="lineCov"> 10 : for (Xapian::MSetIterator i = matches.begin(); i != matches.end(); ++i)</span>
+<span class="lineNum"> 98 </span><span class="lineCov"> 10 : results.insert(i.get_document().get_data());</span>
+<span class="lineNum"> 99 </span><span class="lineCov"> 1 : assert(results.find(&quot;sp&quot;) != results.end());</span>
+<span class="lineNum"> 100 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 101 </span> :
+<span class="lineNum"> 102 </span> : // Alternate access using intermediate Xapian::Query objects
+<span class="lineNum"> 103 </span><span class="lineCov"> 1 : Test queryAccess()</span>
+<span class="lineNum"> 104 </span> : {
+<span class="lineNum"> 105 </span><span class="lineCov"> 1 : Xapian::Enquire enq(textsearch.db());</span>
+<span class="lineNum"> 106 </span><span class="lineCov"> 1 : enq.set_query(textsearch.makeORQuery(&quot;sgml&quot;));</span>
+<span class="lineNum"> 107 </span><span class="lineCov"> 1 : Xapian::MSet matches = enq.get_mset(0, 100);</span>
+<span class="lineNum"> 108 </span><span class="lineCov"> 1 : assert(matches.size() &gt; 0);</span>
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span> : // See if the apt package is among the results
+<span class="lineNum"> 111 </span><span class="lineCov"> 1 : set&lt;string&gt; results;</span>
+<span class="lineNum"> 112 </span><span class="lineCov"> 10 : for (Xapian::MSetIterator i = matches.begin(); i != matches.end(); ++i)</span>
+<span class="lineNum"> 113 </span><span class="lineCov"> 10 : results.insert(i.get_document().get_data());</span>
+<span class="lineNum"> 114 </span><span class="lineCov"> 1 : assert(results.find(&quot;sp&quot;) != results.end());</span>
+<span class="lineNum"> 115 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 116 </span> :
+<span class="lineNum"> 117 </span> : // Try makePartialORQuery
+<span class="lineNum"> 118 </span><span class="lineCov"> 1 : Test partialOrQuery()</span>
+<span class="lineNum"> 119 </span> : {
+<span class="lineNum"> 120 </span><span class="lineCov"> 1 : Xapian::Enquire enq(textsearch.db());</span>
+<span class="lineNum"> 121 </span><span class="lineCov"> 1 : enq.set_query(textsearch.makePartialORQuery(&quot;sgml&quot;));</span>
+<span class="lineNum"> 122 </span><span class="lineCov"> 1 : Xapian::MSet matches = enq.get_mset(0, 100);</span>
+<span class="lineNum"> 123 </span><span class="lineCov"> 1 : assert(matches.size() &gt; 0);</span>
+<span class="lineNum"> 124 </span> :
+<span class="lineNum"> 125 </span> : // See if the apt package is among the results
+<span class="lineNum"> 126 </span><span class="lineCov"> 1 : set&lt;string&gt; results;</span>
+<span class="lineNum"> 127 </span><span class="lineCov"> 10 : for (Xapian::MSetIterator i = matches.begin(); i != matches.end(); ++i)</span>
+<span class="lineNum"> 128 </span><span class="lineCov"> 10 : results.insert(i.get_document().get_data());</span>
+<span class="lineNum"> 129 </span><span class="lineCov"> 1 : assert(results.find(&quot;sp&quot;) != results.end());</span>
+<span class="lineNum"> 130 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 131 </span> :
+<span class="lineNum"> 132 </span> : // Try docidByName
+<span class="lineNum"> 133 </span><span class="lineCov"> 1 : Test docidByName()</span>
+<span class="lineNum"> 134 </span> : {
+<span class="lineNum"> 135 </span><span class="lineCov"> 1 : assert(textsearch.docidByName(&quot;sp&quot;) != 0);</span>
+<span class="lineNum"> 136 </span><span class="lineCov"> 2 : assert_eq(textsearch.docidByName(&quot;thereisnopackagewiththisname&quot;), 0u);</span>
+<span class="lineNum"> 137 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> : // Access values
+<span class="lineNum"> 140 </span><span class="lineCov"> 1 : Test values()</span>
+<span class="lineNum"> 141 </span> : {
+<span class="lineNum"> 142 </span><span class="lineCov"> 1 : assert(textsearch.hasData());</span>
+<span class="lineNum"> 143 </span><span class="lineCov"> 2 : assert(textsearch.timestamp() &gt; 0);</span>
+<span class="lineNum"> 144 </span><span class="lineCov"> 2 : assert(!textsearch.needsRebuild(apt));</span>
+<span class="lineNum"> 145 </span> :
+<span class="lineNum"> 146 </span> : double dval;
+<span class="lineNum"> 147 </span><span class="lineCov"> 2 : dval = textsearch.getDoubleValue(&quot;autoconf&quot;, VAL_APT_INSTALLED_SIZE);</span>
+<span class="lineNum"> 148 </span><span class="lineCov"> 2 : assert(dval == 2408);</span>
+<span class="lineNum"> 149 </span><span class="lineCov"> 2 : dval = textsearch.getDoubleValue(&quot;autoconf&quot;, VAL_APT_PACKAGE_SIZE);</span>
+<span class="lineNum"> 150 </span><span class="lineCov"> 2 : assert(dval == 741486);</span>
+<span class="lineNum"> 151 </span><span class="lineCov"> 2 : assert_eq(textsearch.getDoubleValue(&quot;thereisnopackagewiththisname&quot;, VAL_APT_INSTALLED_SIZE), 0.0);</span>
+<span class="lineNum"> 152 </span><span class="lineCov"> 2 : assert_eq(textsearch.getDoubleValue(&quot;thereisnopackagewiththisname&quot;, VAL_APT_PACKAGE_SIZE), 0.0);</span>
+<span class="lineNum"> 153 </span> :
+<span class="lineNum"> 154 </span> : int val;
+<span class="lineNum"> 155 </span><span class="lineCov"> 2 : val = textsearch.getIntValue(&quot;autoconf&quot;, VAL_APT_INSTALLED_SIZE);</span>
+<span class="lineNum"> 156 </span><span class="lineCov"> 2 : assert(val == 2408);</span>
+<span class="lineNum"> 157 </span><span class="lineCov"> 2 : val = textsearch.getIntValue(&quot;autoconf&quot;, VAL_APT_PACKAGE_SIZE);</span>
+<span class="lineNum"> 158 </span><span class="lineCov"> 2 : assert(val == 741486);</span>
+<span class="lineNum"> 159 </span><span class="lineCov"> 1 : cout &lt;&lt; val;</span>
+<span class="lineNum"> 160 </span><span class="lineCov"> 2 : assert_eq(textsearch.getIntValue(&quot;thereisnopackagewiththisname&quot;, VAL_APT_INSTALLED_SIZE), 0);</span>
+<span class="lineNum"> 161 </span><span class="lineCov"> 2 : assert_eq(textsearch.getIntValue(&quot;thereisnopackagewiththisname&quot;, VAL_APT_PACKAGE_SIZE), 0);</span>
+<span class="lineNum"> 162 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 163 </span> :
+<span class="lineNum"> 164 </span> : };
+<span class="lineNum"> 165 </span> :
+<span class="lineNum"> 166 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/ept/token.h.gcov.html b/rep/ept/token.h.gcov.html
new file mode 100644
index 0000000..8a750ee
--- /dev/null
+++ b/rep/ept/token.h.gcov.html
@@ -0,0 +1,122 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - ept/token.h</title>
+ <link rel="stylesheet" type="text/css" href="../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../index.html">directory</a> - <a href="index.html">ept</a> - token.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">16</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">81.2 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">13</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- C++ -*-
+<span class="lineNum"> 2 </span> : #include &lt;wibble/mixin.h&gt;
+<span class="lineNum"> 3 </span> : #include &lt;string&gt;
+<span class="lineNum"> 4 </span> :
+<span class="lineNum"> 5 </span> : #ifndef EPT_TOKEN_H
+<span class="lineNum"> 6 </span> : #define EPT_TOKEN_H
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : namespace ept {
+<span class="lineNum"> 9 </span> :
+<span class="lineNum"> 10 </span><span class="lineCov"> 9994 : struct Token : wibble::mixin::Comparable&lt; Token &gt; {</span>
+<span class="lineNum"> 11 </span> : std::string _id; // formatted as package[_version]
+<span class="lineNum"> 12 </span><span class="lineNoCov"> 0 : std::string id() const { return _id; }</span>
+<span class="lineNum"> 13 </span> :
+<span class="lineNum"> 14 </span><span class="lineCov"> 9755 : Token() : _id( &quot;&quot; ) {}</span>
+<span class="lineNum"> 15 </span><span class="lineCov"> 8 : Token( std::string s ) : _id( s ) {}</span>
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span><span class="lineCov"> 1831 : std::string version() const {</span>
+<span class="lineNum"> 18 </span> : return _id.find( '_' ) == std::string::npos ? &quot;&quot; :
+<span class="lineNum"> 19 </span><span class="lineCov"> 1831 : std::string( _id, _id.find( '_' ) + 1, _id.size() );</span>
+<span class="lineNum"> 20 </span> : }
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span><span class="lineCov"> 7883 : std::string package() const {</span>
+<span class="lineNum"> 23 </span> : return std::string( _id, 0,
+<span class="lineNum"> 24 </span> : _id.find( '_' ) == std::string::npos ?
+<span class="lineNum"> 25 </span><span class="lineCov"> 7883 : _id.size() : _id.find( '_' ) );</span>
+<span class="lineNum"> 26 </span> : }
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : bool isDesktop() const {
+<span class="lineNum"> 29 </span> : return std::string( _id, 0, 8 ) == &quot;desktop:&quot;;
+<span class="lineNum"> 30 </span> : }
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : std::string desktop() const {
+<span class="lineNum"> 33 </span> : return isDesktop() ? std::string( _id, 8, _id.size() ) : &quot;&quot;;
+<span class="lineNum"> 34 </span> : }
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span><span class="lineCov"> 17 : bool hasVersion() const {</span>
+<span class="lineNum"> 37 </span><span class="lineCov"> 17 : return version() != &quot;&quot;;</span>
+<span class="lineNum"> 38 </span> : }
+<span class="lineNum"> 39 </span> :
+<span class="lineNum"> 40 </span><span class="lineCov"> 1 : bool valid() const {</span>
+<span class="lineNum"> 41 </span><span class="lineCov"> 1 : return _id != &quot;&quot;;</span>
+<span class="lineNum"> 42 </span> : }
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span><span class="lineCov"> 58 : bool operator&lt;=( const Token &amp;o ) const {</span>
+<span class="lineNum"> 45 </span><span class="lineCov"> 58 : return _id &lt;= o._id;</span>
+<span class="lineNum"> 46 </span> : }
+<span class="lineNum"> 47 </span> : };
+<span class="lineNum"> 48 </span> :
+<span class="lineNum"> 49 </span> : }
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span><span class="lineNoCov"> 0 : inline std::ostream &amp;operator&lt;&lt;( std::ostream &amp;o, const ept::Token &amp;t ) {</span>
+<span class="lineNum"> 52 </span><span class="lineNoCov"> 0 : return o &lt;&lt; t.id();</span>
+<span class="lineNum"> 53 </span> : }
+<span class="lineNum"> 54 </span> :
+<span class="lineNum"> 55 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/gcov.css b/rep/gcov.css
new file mode 100644
index 0000000..12ad0ca
--- /dev/null
+++ b/rep/gcov.css
@@ -0,0 +1,408 @@
+/* All views: initial background and text color */
+body
+{
+ color: #000000;
+ background-color: #FFFFFF;
+}
+
+
+/* All views: standard link format*/
+a:link
+{
+ color: #284FA8;
+ text-decoration: underline;
+}
+
+
+/* All views: standard link - visited format */
+a:visited
+{
+ color: #00CB40;
+ text-decoration: underline;
+}
+
+
+/* All views: standard link - activated format */
+a:active
+{
+ color: #FF0040;
+ text-decoration: underline;
+}
+
+
+/* All views: main title format */
+td.title
+{
+ text-align: center;
+ padding-bottom: 10px;
+ font-family: sans-serif;
+ font-size: 20pt;
+ font-style: italic;
+ font-weight: bold;
+}
+
+
+/* All views: header item format */
+td.headerItem
+{
+ text-align: right;
+ padding-right: 6px;
+ font-family: sans-serif;
+ font-weight: bold;
+}
+
+
+/* All views: header item value format */
+td.headerValue
+{
+ text-align: left;
+ color: #284FA8;
+ font-family: sans-serif;
+ font-weight: bold;
+}
+
+
+/* All views: header legend item format */
+td.legendItem
+{
+ text-align: right;
+ padding-right: 6px;
+ padding-top: 10px;
+ padding-bottom: 2px;
+ font-family: sans-serif;
+ font-weight: bold;
+}
+
+
+/* All views: header legend item value format */
+td.legendValue
+{
+ text-align: left;
+ padding-top: 10px;
+ padding-bottom: 2px;
+ color: #000000;
+ font-family: sans-serif;
+ font-weight: bold;
+}
+
+
+/* All views: color of horizontal ruler */
+td.ruler
+{
+ background-color: #6688D4;
+}
+
+
+/* All views: version string format */
+td.versionInfo
+{
+ text-align: center;
+ padding-top: 2px;
+ font-family: sans-serif;
+ font-style: italic;
+}
+
+
+/* Directory view/File view (all)/Test case descriptions:
+ table headline format */
+td.tableHead
+{
+ text-align: center;
+ color: #FFFFFF;
+ background-color: #6688D4;
+ font-family: sans-serif;
+ font-size: 120%;
+ font-weight: bold;
+}
+
+
+/* Directory view/File view (all): filename entry format */
+td.coverFile
+{
+ text-align: left;
+ padding-left: 10px;
+ padding-right: 20px;
+ color: #284FA8;
+ background-color: #DAE7FE;
+ font-family: monospace;
+}
+
+
+/* Directory view/File view (all): bar-graph entry format*/
+td.coverBar
+{
+ padding-left: 10px;
+ padding-right: 10px;
+ background-color: #DAE7FE;
+}
+
+
+/* Directory view/File view (all): bar-graph outline color */
+td.coverBarOutline
+{
+ background-color: #000000;
+}
+
+
+/* Directory view/File view (all): percentage entry for files with
+ high coverage rate */
+td.coverPerHi
+{
+ text-align: right;
+ padding-left: 10px;
+ padding-right: 10px;
+ background-color: #A7FC9D;
+ font-weight: bold;
+}
+
+
+/* Directory view/File view (all): line count entry for files with
+ high coverage rate */
+td.coverNumHi
+{
+ text-align: right;
+ padding-left: 10px;
+ padding-right: 10px;
+ background-color: #A7FC9D;
+}
+
+
+/* Directory view/File view (all): legend entry for high coverage
+ rate */
+span.coverLegendHi
+{
+ text-align: center;
+ padding-left: 10px;
+ padding-right: 10px;
+ background-color: #A7FC9D;
+}
+
+
+/* Directory view/File view (all): percentage entry for files with
+ medium coverage rate */
+td.coverPerMed
+{
+ text-align: right;
+ padding-left: 10px;
+ padding-right: 10px;
+ background-color: #FFEA20;
+ font-weight: bold;
+}
+
+
+/* Directory view/File view (all): line count entry for files with
+ medium coverage rate */
+td.coverNumMed
+{
+ text-align: right;
+ padding-left: 10px;
+ padding-right: 10px;
+ background-color: #FFEA20;
+}
+
+
+/* Directory view/File view (all): legend entry for medium coverage
+ rate */
+span.coverLegendMed
+{
+ text-align: center;
+ padding-left: 10px;
+ padding-right: 10px;
+ margin-top: 5px;
+ margin-bottom: 5px;
+ margin-right: 2px;
+ background-color: #FFEA20;
+}
+
+
+/* Directory view/File view (all): percentage entry for files with
+ low coverage rate */
+td.coverPerLo
+{
+ text-align: right;
+ padding-left: 10px;
+ padding-right: 10px;
+ background-color: #FF0000;
+ font-weight: bold;
+}
+
+
+/* Directory view/File view (all): line count entry for files with
+ low coverage rate */
+td.coverNumLo
+{
+ text-align: right;
+ padding-left: 10px;
+ padding-right: 10px;
+ background-color: #FF0000;
+}
+
+
+/* Directory view/File view (all): legend entry for low coverage
+ rate */
+span.coverLegendLo
+{
+ text-align: center;
+ padding-left: 10px;
+ padding-right: 10px;
+ margin-right: 2px;
+ background-color: #FF0000;
+}
+
+
+/* File view (all): "show/hide details" link format */
+a.detail:link
+{
+ color: #B8D0FF;
+}
+
+
+/* File view (all): "show/hide details" link - visited format */
+a.detail:visited
+{
+ color: #B8D0FF;
+}
+
+
+/* File view (all): "show/hide details" link - activated format */
+a.detail:active
+{
+ color: #FFFFFF;
+}
+
+
+/* File view (detail): test name table headline format */
+td.testNameHead
+{
+ text-align: right;
+ padding-right: 10px;
+ background-color: #DAE7FE;
+ font-family: sans-serif;
+ font-weight: bold;
+}
+
+
+/* File view (detail): test lines table headline format */
+td.testLinesHead
+{
+ text-align: center;
+ background-color: #DAE7FE;
+ font-family: sans-serif;
+ font-weight: bold;
+}
+
+
+/* File view (detail): test name entry */
+td.testName
+{
+ text-align: right;
+ padding-right: 10px;
+ background-color: #DAE7FE;
+}
+
+
+/* File view (detail): test percentage entry */
+td.testPer
+{
+ text-align: right;
+ padding-left: 10px;
+ padding-right: 10px;
+ background-color: #DAE7FE;
+}
+
+
+/* File view (detail): test lines count entry */
+td.testNum
+{
+ text-align: right;
+ padding-left: 10px;
+ padding-right: 10px;
+ background-color: #DAE7FE;
+}
+
+
+/* Test case descriptions: test name format*/
+dt
+{
+ font-family: sans-serif;
+ font-weight: bold;
+}
+
+
+/* Test case descriptions: description table body */
+td.testDescription
+{
+ padding-top: 10px;
+ padding-left: 30px;
+ padding-bottom: 10px;
+ padding-right: 30px;
+ background-color: #DAE7FE;
+}
+
+
+/* Source code view: source code format */
+pre.source
+{
+ font-family: monospace;
+ white-space: pre;
+}
+
+/* Source code view: line number format */
+span.lineNum
+{
+ background-color: #EFE383;
+}
+
+
+/* Source code view: format for lines which were executed */
+span.lineCov
+{
+ background-color: #CAD7FE;
+}
+
+
+/* Source code view: format for Cov legend */
+span.LegendCov
+{
+ text-align: center;
+ padding-left: 10px;
+ padding-right: 10px;
+ margin-right: 2px;
+ background-color: #CAD7FE;
+}
+
+
+/* Source code view: format for lines which were not executed */
+span.lineNoCov
+{
+ background-color: #FF6230;
+}
+
+
+/* Source code view: format for NoCov legend */
+span.LegendNoCov
+{
+ text-align: center;
+ padding-left: 10px;
+ padding-right: 10px;
+ margin-right: 2px;
+ background-color: #FF6230;
+}
+
+
+/* Source code view: format for lines which were executed only in a
+ previous version */
+span.lineDiffCov
+{
+ background-color: #B5F7AF;
+}
+
+
+/* Source code view: format for DiffCov legend */
+span.LegendDiffCov
+{
+ text-align: center;
+ padding-left: 10px;
+ padding-right: 10px;
+ background-color: #B5F7AF;
+}
diff --git a/rep/glass.png b/rep/glass.png
new file mode 100644
index 0000000..e1abc00
--- /dev/null
+++ b/rep/glass.png
Binary files differ
diff --git a/rep/index.html b/rep/index.html
new file mode 100644
index 0000000..a31df91
--- /dev/null
+++ b/rep/index.html
@@ -0,0 +1,353 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info</title>
+ <link rel="stylesheet" type="text/css" href="gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4>directory</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">11539</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">80.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">9227</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Directory&nbsp;name</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="srv/build/pkg/ept-work/default/ept/index.html">/srv/build/pkg/ept-work/default/ept</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">107&nbsp;/&nbsp;107&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="srv/build/pkg/ept-work/default/wibble/index.html">/srv/build/pkg/ept-work/default/wibble</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">125&nbsp;/&nbsp;125&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="usr/include/apt-pkg/index.html">/usr/include/apt-pkg</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=86 height=10 alt="86.2%"><img src="snow.png" width=14 height=10 alt="86.2%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">86.2&nbsp;%</td>
+ <td class="coverNumHi">69&nbsp;/&nbsp;80&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="usr/include/c++/4.3/index.html">/usr/include/c++/4.3</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="ruby.png" width=7 height=10 alt="6.6%"><img src="snow.png" width=93 height=10 alt="6.6%"></td></tr></table>
+ </td>
+ <td class="coverPerLo">6.6&nbsp;%</td>
+ <td class="coverNumLo">12&nbsp;/&nbsp;181&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="usr/include/c++/4.3/backward/index.html">/usr/include/c++/4.3/backward</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">22&nbsp;/&nbsp;22&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="usr/include/c++/4.3/bits/index.html">/usr/include/c++/4.3/bits</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=69 height=10 alt="69.1%"><img src="snow.png" width=31 height=10 alt="69.1%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">69.1&nbsp;%</td>
+ <td class="coverNumHi">1418&nbsp;/&nbsp;2051&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="usr/include/c++/4.3/ext/index.html">/usr/include/c++/4.3/ext</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=54 height=10 alt="53.6%"><img src="snow.png" width=46 height=10 alt="53.6%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">53.6&nbsp;%</td>
+ <td class="coverNumHi">15&nbsp;/&nbsp;28&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="usr/include/c++/4.3/i486-linux-gnu/bits/index.html">/usr/include/c++/4.3/i486-linux-gnu/bits</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="snow.png" width=100 height=10 alt="0.0%"></td></tr></table>
+ </td>
+ <td class="coverPerLo">0.0&nbsp;%</td>
+ <td class="coverNumLo">0&nbsp;/&nbsp;2&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="usr/include/tagcoll-2.0.11/tagcoll/index.html">/usr/include/tagcoll-2.0.11/tagcoll</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=73 height=10 alt="73.4%"><img src="snow.png" width=27 height=10 alt="73.4%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">73.4&nbsp;%</td>
+ <td class="coverNumHi">127&nbsp;/&nbsp;173&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="usr/include/tagcoll-2.0.11/tagcoll/coll/index.html">/usr/include/tagcoll-2.0.11/tagcoll/coll</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=80 height=10 alt="79.7%"><img src="snow.png" width=20 height=10 alt="79.7%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">79.7&nbsp;%</td>
+ <td class="coverNumHi">141&nbsp;/&nbsp;177&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="usr/include/tagcoll-2.0.11/tagcoll/diskindex/index.html">/usr/include/tagcoll-2.0.11/tagcoll/diskindex</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=93 height=10 alt="93.3%"><img src="snow.png" width=7 height=10 alt="93.3%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">93.3&nbsp;%</td>
+ <td class="coverNumHi">14&nbsp;/&nbsp;15&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="usr/include/tagcoll-2.0.11/tagcoll/input/index.html">/usr/include/tagcoll-2.0.11/tagcoll/input</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="amber.png" width=19 height=10 alt="18.8%"><img src="snow.png" width=81 height=10 alt="18.8%"></td></tr></table>
+ </td>
+ <td class="coverPerMed">18.8&nbsp;%</td>
+ <td class="coverNumMed">3&nbsp;/&nbsp;16&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="usr/include/tagcoll-2.0.11/tagcoll/stream/index.html">/usr/include/tagcoll-2.0.11/tagcoll/stream</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">8&nbsp;/&nbsp;8&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="usr/include/tagcoll-2.0.11/tagcoll/utils/index.html">/usr/include/tagcoll-2.0.11/tagcoll/utils</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=83 height=10 alt="83.3%"><img src="snow.png" width=17 height=10 alt="83.3%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">83.3&nbsp;%</td>
+ <td class="coverNumHi">10&nbsp;/&nbsp;12&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="usr/include/xapian/index.html">/usr/include/xapian</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=77 height=10 alt="76.6%"><img src="snow.png" width=23 height=10 alt="76.6%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">76.6&nbsp;%</td>
+ <td class="coverNumHi">59&nbsp;/&nbsp;77&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept/index.html">ept</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=74 height=10 alt="73.7%"><img src="snow.png" width=26 height=10 alt="73.7%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">73.7&nbsp;%</td>
+ <td class="coverNumHi">28&nbsp;/&nbsp;38&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept/apt/index.html">ept/apt</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=89 height=10 alt="89.2%"><img src="snow.png" width=11 height=10 alt="89.2%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">89.2&nbsp;%</td>
+ <td class="coverNumHi">785&nbsp;/&nbsp;880&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept/core/index.html">ept/core</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=83 height=10 alt="82.8%"><img src="snow.png" width=17 height=10 alt="82.8%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">82.8&nbsp;%</td>
+ <td class="coverNumHi">570&nbsp;/&nbsp;688&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept/core/apt/index.html">ept/core/apt</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=92 height=10 alt="91.9%"><img src="snow.png" width=8 height=10 alt="91.9%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">91.9&nbsp;%</td>
+ <td class="coverNumHi">307&nbsp;/&nbsp;334&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept/debtags/index.html">ept/debtags</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=89 height=10 alt="89.2%"><img src="snow.png" width=11 height=10 alt="89.2%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">89.2&nbsp;%</td>
+ <td class="coverNumHi">626&nbsp;/&nbsp;702&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept/debtags/maint/index.html">ept/debtags/maint</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=85 height=10 alt="84.9%"><img src="snow.png" width=15 height=10 alt="84.9%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">84.9&nbsp;%</td>
+ <td class="coverNumHi">718&nbsp;/&nbsp;846&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept/popcon/index.html">ept/popcon</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=83 height=10 alt="83.2%"><img src="snow.png" width=17 height=10 alt="83.2%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">83.2&nbsp;%</td>
+ <td class="coverNumHi">134&nbsp;/&nbsp;161&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept/popcon/maint/index.html">ept/popcon/maint</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=88 height=10 alt="88.4%"><img src="snow.png" width=12 height=10 alt="88.4%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">88.4&nbsp;%</td>
+ <td class="coverNumHi">228&nbsp;/&nbsp;258&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept/textsearch/index.html">ept/textsearch</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=77 height=10 alt="77.3%"><img src="snow.png" width=23 height=10 alt="77.3%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">77.3&nbsp;%</td>
+ <td class="coverNumHi">167&nbsp;/&nbsp;216&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept/textsearch/maint/index.html">ept/textsearch/maint</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=85 height=10 alt="85.3%"><img src="snow.png" width=15 height=10 alt="85.3%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">85.3&nbsp;%</td>
+ <td class="coverNumHi">29&nbsp;/&nbsp;34&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="wibble/index.html">wibble</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=90 height=10 alt="89.9%"><img src="snow.png" width=10 height=10 alt="89.9%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">89.9&nbsp;%</td>
+ <td class="coverNumHi">1954&nbsp;/&nbsp;2173&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="wibble/commandline/index.html">wibble/commandline</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=84 height=10 alt="83.9%"><img src="snow.png" width=16 height=10 alt="83.9%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">83.9&nbsp;%</td>
+ <td class="coverNumHi">559&nbsp;/&nbsp;666&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="wibble/grcal/index.html">wibble/grcal</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=82 height=10 alt="81.9%"><img src="snow.png" width=18 height=10 alt="81.9%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">81.9&nbsp;%</td>
+ <td class="coverNumHi">308&nbsp;/&nbsp;376&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="wibble/log/index.html">wibble/log</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=93 height=10 alt="93.0%"><img src="snow.png" width=7 height=10 alt="93.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">93.0&nbsp;%</td>
+ <td class="coverNumHi">53&nbsp;/&nbsp;57&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="wibble/stream/index.html">wibble/stream</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=81 height=10 alt="81.0%"><img src="snow.png" width=19 height=10 alt="81.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">81.0&nbsp;%</td>
+ <td class="coverNumHi">34&nbsp;/&nbsp;42&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="wibble/sys/index.html">wibble/sys</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="emerald.png" width=60 height=10 alt="60.1%"><img src="snow.png" width=40 height=10 alt="60.1%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">60.1&nbsp;%</td>
+ <td class="coverNumHi">597&nbsp;/&nbsp;994&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/lcov.info b/rep/lcov.info
new file mode 100644
index 0000000..fa184b9
--- /dev/null
+++ b/rep/lcov.info
@@ -0,0 +1,96554 @@
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/log/null.h
+FN:13,_ZN6wibble3log10NullSender4sendENS0_5LevelERKSs
+FN:11,_ZN6wibble3log10NullSenderC1Ev
+FN:12,_ZN6wibble3log10NullSenderD0Ev
+FN:12,_ZN6wibble3log10NullSenderD1Ev
+DA:11,1
+DA:12,1
+DA:13,4
+BA:12,0
+BA:12,0
+BA:12,1
+BA:12,2
+LF:3
+LH:3
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/log/ostream.h
+FN:18,_ZN6wibble3log13OstreamSenderD1Ev
+DA:18,1
+BA:18,1
+BA:18,2
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/log/stream.h
+FN:23,_ZN6wibble3log6SenderC2Ev
+FN:24,_ZN6wibble3log6SenderD2Ev
+FN:24,_ZN6wibble3log6SenderD0Ev
+FN:24,_ZN6wibble3log6SenderD1Ev
+DA:23,4
+DA:24,4
+BA:24,1
+BA:24,2
+BA:24,0
+BA:24,0
+BA:24,0
+BA:24,0
+LF:2
+LH:2
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:52,_ZlsIN6wibble3log5LevelEER12AssertFailedS4_T_
+FN:17,_ZN8LocationC1EPKciSs
+FN:13,_ZN8LocationC1ERKS_
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:67,_Z12assert_eq_fnIN6wibble3log5LevelES2_Ev8LocationT_T0_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:67,_Z12assert_eq_fnIjjEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsPKcEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,3
+DA:69,3
+DA:70,0
+DA:71,0
+DA:75,3
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,1
+BA:69,2
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+LF:26
+LH:3
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/log.test.h
+FN:27,_ZN12_GLOBAL__N_17TestLog7Sender1C1Ev
+FN:31,_ZN12_GLOBAL__N_17TestLog7Sender1D0Ev
+FN:31,_ZN12_GLOBAL__N_17TestLog7Sender1D1Ev
+FN:124,_ZN12_GLOBAL__N_17TestLog13ostreamSenderEv
+FN:81,_ZN12_GLOBAL__N_17TestLog10nullSenderEv
+FN:102,_ZN12_GLOBAL__N_17TestLog10fileSenderEv
+FN:34,_ZN12_GLOBAL__N_17TestLog7Sender14sendEN6wibble3log5LevelERKSs
+FN:47,_ZN12_GLOBAL__N_17TestLog9streambufEv
+DA:27,1
+DA:31,1
+DA:34,3
+DA:36,3
+DA:37,3
+DA:47,1
+DA:50,1
+DA:52,1
+DA:53,1
+DA:56,1
+DA:57,1
+DA:58,2
+DA:59,2
+DA:63,1
+DA:64,1
+DA:65,2
+DA:66,2
+DA:69,1
+DA:70,1
+DA:73,1
+DA:74,2
+DA:75,2
+DA:78,1
+DA:81,1
+DA:84,1
+DA:85,1
+DA:87,1
+DA:88,1
+DA:91,1
+DA:95,1
+DA:98,1
+DA:99,1
+DA:102,1
+DA:106,1
+DA:107,2
+DA:109,1
+DA:110,1
+DA:113,1
+DA:117,1
+DA:120,1
+DA:121,1
+DA:124,1
+DA:127,1
+DA:128,1
+DA:130,1
+DA:131,1
+DA:133,1
+DA:134,1
+DA:137,1
+DA:141,1
+DA:144,1
+DA:145,1
+BA:31,0
+BA:31,0
+BA:31,1
+BA:31,2
+LF:52
+LH:52
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_log.cpp
+FN:6,_Z41__static_initialization_and_destruction_0ii
+FN:6,_GLOBAL__I__Z17run_Log_streambufv
+FN:6,_Z21run_Log_ostreamSenderv
+FN:4,_Z18run_Log_nullSenderv
+FN:5,_Z18run_Log_fileSenderv
+FN:3,_Z17run_Log_streambufv
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,4
+BA:6,2
+BA:6,1
+BA:6,2
+BA:6,1
+LF:4
+LH:4
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISt4pairIN6wibble3log5LevelESsEED2Ev
+FN:98,_ZNSaISt4pairIN6wibble3log5LevelESsEEC2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,1
+DA:100,0
+DA:101,0
+DA:106,1
+DA:118,0
+DA:119,0
+LF:6
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:195,_ZNKSt9basic_iosIcSt11char_traitsIcEE4failEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:195,0
+DA:196,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2188,0
+DA:2189,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:53
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:159,_ZStanSt12_Ios_IostateS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:159,0
+DA:160,0
+DA:163,0
+DA:164,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIPSt4pairIN6wibble3log5LevelESsELb0EE3__bES5_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:268,_ZNSt12__niter_baseIPSt4pairIN6wibble3log5LevelESsELb0EE3__bES5_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSt4pairIN6wibble3log5LevelESsES8_EET0_T_SA_S9_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSt4pairIN6wibble3log5LevelESsES5_ET1_T0_S7_S6_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSt4pairIN6wibble3log5LevelESsES5_ET1_T0_S7_S6_
+FN:624,_ZSt13copy_backwardIPSt4pairIN6wibble3log5LevelESsES5_ET0_T_S7_S6_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,0
+DA:269,0
+DA:286,0
+DA:287,0
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+BA:542,0
+BA:542,0
+LF:19
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISt4pairIN6wibble3log5LevelESsEEvPT_
+FN:97,_ZSt8_DestroyIPSt4pairIN6wibble3log5LevelESsEEvT_S6_
+FN:126,_ZSt8_DestroyIPSt4pairIN6wibble3log5LevelESsES4_EvT_S6_RSaIT0_E
+DA:87,6
+DA:88,6
+DA:97,4
+DA:101,10
+DA:103,6
+DA:104,4
+DA:126,4
+DA:128,4
+DA:129,4
+BA:101,2
+BA:101,2
+LF:9
+LH:9
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSt4pairIN6wibble3log5LevelESsESt6vectorIS5_SaIS5_EEE4baseEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSt4pairIN6wibble3log5LevelESsESt6vectorIS5_SaIS5_EEEdeEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSt4pairIN6wibble3log5LevelESsESt6vectorIS5_SaIS5_EEEC1ERKS6_
+DA:683,3
+DA:695,0
+DA:696,0
+DA:747,6
+DA:748,6
+LF:5
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:166,0
+DA:167,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairIN6wibble3log5LevelESsEC1ERKS2_RKSs
+FN:218,_ZSt9make_pairIN6wibble3log5LevelESsESt4pairIT_T0_ES4_S5_
+FN:73,_ZNSt4pairIN6wibble3log5LevelESsEC1ERKS3_
+FN:73,_ZNSt4pairIN6wibble3log5LevelESsEaSERKS3_
+FN:73,_ZNSt4pairIN6wibble3log5LevelESsED1Ev
+DA:73,15
+DA:88,3
+DA:89,3
+DA:218,3
+DA:219,3
+LF:5
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSt4pairIN6wibble3log5LevelESsES7_EET0_T_S9_S8_
+FN:113,_ZSt18uninitialized_copyIPSt4pairIN6wibble3log5LevelESsES5_ET0_T_S7_S6_
+FN:261,_ZSt22__uninitialized_copy_aIPSt4pairIN6wibble3log5LevelESsES5_S4_ET0_T_S7_S6_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSt4pairIN6wibble3log5LevelESsES5_SaIS4_EET0_T_S8_S7_RT1_
+DA:73,6
+DA:75,6
+DA:78,9
+DA:79,3
+DA:81,6
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,6
+DA:122,6
+DA:261,6
+DA:262,6
+DA:268,6
+DA:272,6
+BA:78,2
+BA:78,2
+BA:79,2
+BA:79,1
+LF:14
+LH:11
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:484,_ZNKSt6vectorISt4pairIN6wibble3log5LevelESsESaIS4_EE4sizeEv
+FN:562,_ZNSt6vectorISt4pairIN6wibble3log5LevelESsESaIS4_EEixEj
+FN:97,_ZNSt12_Vector_baseISt4pairIN6wibble3log5LevelESsESaIS4_EE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISt4pairIN6wibble3log5LevelESsESaIS4_EE3endEv
+FN:79,_ZNSt12_Vector_baseISt4pairIN6wibble3log5LevelESsESaIS4_EE12_Vector_implD1Ev
+FN:101,_ZNKSt12_Vector_baseISt4pairIN6wibble3log5LevelESsESaIS4_EE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorISt4pairIN6wibble3log5LevelESsESaIS4_EE8max_sizeEv
+FN:84,_ZNSt12_Vector_baseISt4pairIN6wibble3log5LevelESsESaIS4_EE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISt4pairIN6wibble3log5LevelESsESaIS4_EEC2Ev
+FN:213,_ZNSt6vectorISt4pairIN6wibble3log5LevelESsESaIS4_EEC1Ev
+FN:147,_ZNSt12_Vector_baseISt4pairIN6wibble3log5LevelESsESaIS4_EE13_M_deallocateEPS4_j
+FN:135,_ZNSt12_Vector_baseISt4pairIN6wibble3log5LevelESsESaIS4_EED2Ev
+FN:299,_ZNSt6vectorISt4pairIN6wibble3log5LevelESsESaIS4_EED1Ev
+FN:1075,_ZNKSt6vectorISt4pairIN6wibble3log5LevelESsESaIS4_EE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISt4pairIN6wibble3log5LevelESsESaIS4_EE11_M_allocateEj
+FN:686,_ZNSt6vectorISt4pairIN6wibble3log5LevelESsESaIS4_EE9push_backERKS4_
+DA:79,1
+DA:84,1
+DA:85,1
+DA:86,1
+DA:97,10
+DA:98,10
+DA:101,6
+DA:102,6
+DA:108,1
+DA:109,1
+DA:135,1
+DA:136,1
+DA:137,1
+DA:143,3
+DA:144,3
+DA:147,4
+DA:149,4
+DA:150,3
+DA:151,4
+DA:213,1
+DA:214,1
+DA:299,1
+DA:300,1
+DA:301,1
+DA:395,3
+DA:396,3
+DA:484,16
+DA:485,16
+DA:489,6
+DA:490,6
+DA:562,6
+DA:563,6
+DA:686,3
+DA:688,3
+DA:690,0
+DA:691,0
+DA:694,3
+DA:695,3
+DA:1075,3
+DA:1077,3
+DA:1078,0
+DA:1080,3
+DA:1081,3
+BA:144,2
+BA:144,1
+BA:149,2
+BA:149,2
+BA:688,1
+BA:688,2
+BA:1077,1
+BA:1077,2
+BA:1081,2
+BA:1081,1
+BA:1081,1
+BA:1081,2
+LF:43
+LH:40
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISt4pairIN6wibble3log5LevelESsESaIS4_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS4_S6_EERKS4_
+DA:283,3
+DA:286,3
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,3
+DA:308,3
+DA:309,3
+DA:316,3
+DA:321,3
+DA:323,3
+DA:324,3
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,3
+DA:338,3
+DA:341,3
+DA:342,3
+DA:343,3
+DA:345,3
+BA:286,1
+BA:286,2
+LF:24
+LH:15
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIN6wibble3log5LevelESsEED2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt4pairIN6wibble3log5LevelESsEE8max_sizeEv
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIN6wibble3log5LevelESsEEC2Ev
+FN:97,_ZN9__gnu_cxx13new_allocatorISt4pairIN6wibble3log5LevelESsEE10deallocateEPS5_j
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIN6wibble3log5LevelESsEE9constructEPS5_RKS5_
+FN:87,_ZN9__gnu_cxx13new_allocatorISt4pairIN6wibble3log5LevelESsEE8allocateEjPKv
+DA:69,1
+DA:71,0
+DA:76,1
+DA:87,3
+DA:89,3
+DA:90,0
+DA:92,3
+DA:97,3
+DA:98,3
+DA:101,9
+DA:102,9
+DA:107,3
+DA:108,3
+BA:89,1
+BA:89,2
+BA:108,2
+BA:108,1
+LF:13
+LH:11
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/fstream
+FN:626,_ZNSt14basic_ofstreamIcSt11char_traitsIcEE4openEPKcSt13_Ios_Openmode
+FN:215,_ZNSt13basic_filebufIcSt11char_traitsIcEED1Ev
+FN:572,_ZNSt14basic_ofstreamIcSt11char_traitsIcEEC1EPKcSt13_Ios_Openmode
+FN:585,_ZNSt14basic_ofstreamIcSt11char_traitsIcEED1Ev
+DA:215,0
+DA:216,0
+DA:572,0
+DA:573,0
+DA:575,0
+DA:576,0
+DA:577,0
+DA:585,0
+DA:586,0
+DA:626,0
+DA:628,0
+DA:629,0
+DA:633,0
+DA:634,0
+BA:216,0
+BA:216,0
+BA:586,0
+BA:586,0
+BA:586,0
+BA:586,0
+BA:586,0
+BA:586,0
+BA:628,0
+BA:628,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:86,_ZNSoC1EPSt15basic_streambufIcSt11char_traitsIcEE
+FN:95,_ZNSoD1Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:195,_ZNSolsEj
+DA:86,0
+DA:87,0
+DA:95,0
+DA:112,0
+DA:117,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:395,_ZN6wibble9exception6SystemD1Ev
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+DA:137,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:395,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:395,0
+BA:395,0
+LF:21
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/childprocess.h
+FN:52,_ZN6wibble3sys12ChildProcessC2Ev
+FN:53,_ZN6wibble3sys12ChildProcessD0Ev
+FN:53,_ZN6wibble3sys12ChildProcessD1Ev
+FN:53,_ZN6wibble3sys12ChildProcessD2Ev
+DA:52,4
+DA:53,4
+BA:53,0
+BA:53,0
+BA:53,0
+BA:53,0
+BA:53,1
+BA:53,2
+LF:2
+LH:2
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/exec.h
+FN:80,_ZN6wibble3sys4ExecC2ERKSs
+FN:43,_ZN6wibble3sys4ExecD2Ev
+FN:97,_ZN6wibble3sys12ShellCommandD0Ev
+FN:97,_ZN6wibble3sys12ShellCommandD1Ev
+FN:99,_ZN6wibble3sys12ShellCommandC1ERKSs
+FN:80,_ZN6wibble3sys4ExecC1ERKSs
+FN:43,_ZN6wibble3sys4ExecD1Ev
+DA:43,2
+DA:80,2
+DA:81,2
+DA:83,2
+DA:84,2
+DA:97,1
+DA:99,1
+DA:101,2
+DA:102,1
+DA:103,1
+DA:104,1
+DA:105,1
+BA:43,1
+BA:43,2
+BA:43,1
+BA:43,2
+BA:97,0
+BA:97,0
+BA:97,1
+BA:97,2
+LF:12
+LH:12
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:52,_ZlsIiER12AssertFailedS1_T_
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:67,_Z12assert_eq_fnIiiEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsPKcEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:75,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+LF:26
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/childprocess.test.h
+FN:16,_ZN12EndlessChildC1Ev
+FN:27,_ZN9TestChildC1Ev
+FN:27,_ZN9TestChildD0Ev
+FN:27,_ZN9TestChildD1Ev
+FN:16,_ZN12EndlessChildD0Ev
+FN:16,_ZN12EndlessChildD1Ev
+FN:29,_ZN9TestChild4mainEv
+FN:55,_ZN16TestChildprocess4killEv
+FN:36,_Z6suckFdi
+FN:107,_ZN16TestChildprocess12shellCommandEv
+FN:91,_ZN16TestChildprocess8redirectEv
+FN:76,_ZN16TestChildprocess6outputEv
+FN:18,_ZN12EndlessChild4mainEv
+DA:16,2
+DA:18,0
+DA:20,0
+DA:21,0
+DA:27,2
+DA:29,0
+DA:31,0
+DA:32,0
+DA:36,3
+DA:38,3
+DA:40,21
+DA:42,24
+DA:43,24
+DA:44,3
+DA:45,21
+DA:46,0
+DA:47,21
+DA:49,0
+DA:55,1
+DA:56,1
+DA:59,1
+DA:62,1
+DA:65,1
+DA:68,1
+DA:71,1
+DA:72,2
+DA:73,1
+DA:76,1
+DA:77,1
+DA:81,1
+DA:82,1
+DA:85,2
+DA:88,1
+DA:89,1
+DA:91,1
+DA:92,1
+DA:93,2
+DA:97,2
+DA:98,1
+DA:101,2
+DA:104,1
+DA:105,1
+DA:107,1
+DA:108,1
+DA:112,2
+DA:113,1
+DA:116,2
+DA:119,1
+DA:120,1
+BA:16,0
+BA:16,0
+BA:16,1
+BA:16,2
+BA:27,0
+BA:27,0
+BA:27,1
+BA:27,2
+BA:43,2
+BA:43,2
+BA:45,1
+BA:45,2
+LF:49
+LH:41
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_sys_childprocess.cpp
+FN:6,_Z41__static_initialization_and_destruction_0ii
+FN:6,_GLOBAL__I__Z6suckFdi
+FN:3,_Z21run_Childprocess_killv
+FN:6,_Z29run_Childprocess_shellCommandv
+FN:5,_Z25run_Childprocess_redirectv
+FN:4,_Z23run_Childprocess_outputv
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,4
+BA:6,2
+BA:6,1
+BA:6,2
+BA:6,1
+LF:4
+LH:4
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:192,_ZNKSs4_Rep12_M_is_sharedEv
+FN:652,_ZNKSs8capacityEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:501,_ZNSsaSERKSs
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:870,_ZNSs9push_backEc
+FN:791,_ZNSspLEc
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:192,0
+DA:193,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:652,0
+DA:653,0
+DA:686,0
+DA:687,0
+DA:791,0
+DA:793,0
+DA:794,0
+DA:835,0
+DA:838,0
+DA:870,0
+DA:872,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:877,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2188,0
+DA:2189,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+LF:83
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+LF:34
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+DA:683,0
+DA:695,0
+DA:696,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+LF:7
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:386,0
+DA:387,0
+DA:395,0
+DA:396,0
+DA:404,0
+DA:405,0
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:526,0
+DA:527,0
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:47
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:286,0
+BA:286,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:25
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:17,_ZN8LocationC1EPKciSs
+FN:13,_ZN8LocationC1ERKS_
+FN:52,_ZlsIiER12AssertFailedS1_T_
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:67,_Z12assert_eq_fnIiiEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsPKcEv8LocationT_T0_
+FN:52,_ZlsIxER12AssertFailedS1_T_
+FN:67,_Z12assert_eq_fnIxiEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:67,5
+DA:69,5
+DA:70,0
+DA:71,0
+DA:75,5
+BA:42,0
+BA:42,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,1
+BA:69,2
+LF:22
+LH:3
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/grcal/grcal.test.h
+FN:31,_ZN12_GLOBAL__N_1L7normalNERiS0_i
+FN:63,_ZN12_GLOBAL__N_113TestGrcalDate4fillEPiiiiiii
+FN:230,_ZN12_GLOBAL__N_113TestGrcalTime4fillEPiiii
+FN:46,_ZN12_GLOBAL__N_115assert_nn_eq_fnE8Locationiiiii
+FN:249,_ZN12_GLOBAL__N_113TestGrcalTime12tostring_secEv
+FN:73,_ZN12_GLOBAL__N_113TestGrcalDate7normalnEv
+FN:237,_ZN12_GLOBAL__N_113TestGrcalTime8tostringEv
+FN:204,_ZN12_GLOBAL__N_113TestGrcalDate8durationEv
+FN:124,_ZN12_GLOBAL__N_113TestGrcalDate8tostringEv
+FN:14,_ZN12_GLOBAL__N_115assert_dt_eq_fnE8LocationPKiiiiiii
+FN:188,_ZN12_GLOBAL__N_113TestGrcalDate10upperboundEv
+FN:153,_ZN12_GLOBAL__N_113TestGrcalDate9normaliseEv
+FN:141,_ZN12_GLOBAL__N_113TestGrcalDate10lowerboundEv
+FN:116,_ZN12_GLOBAL__N_113TestGrcalDate6easterEv
+FN:108,_ZN12_GLOBAL__N_113TestGrcalDate10daysinyearEv
+FN:85,_ZN12_GLOBAL__N_113TestGrcalDate11daysinmonthEv
+DA:14,11
+DA:16,11
+DA:17,11
+DA:18,11
+DA:20,11
+DA:21,0
+DA:24,0
+DA:25,11
+DA:26,11
+DA:31,8
+DA:33,8
+DA:35,3
+DA:36,3
+DA:37,3
+DA:38,3
+DA:40,5
+DA:41,5
+DA:43,8
+DA:46,8
+DA:48,8
+DA:49,8
+DA:50,8
+DA:52,8
+DA:53,8
+DA:55,0
+DA:58,0
+DA:63,22
+DA:65,22
+DA:66,22
+DA:67,22
+DA:68,22
+DA:69,22
+DA:70,22
+DA:71,22
+DA:73,1
+DA:75,1
+DA:76,2
+DA:77,2
+DA:78,2
+DA:79,2
+DA:80,2
+DA:81,2
+DA:82,2
+DA:83,1
+DA:85,1
+DA:88,1
+DA:90,2
+DA:91,2
+DA:92,2
+DA:94,2
+DA:95,2
+DA:96,2
+DA:97,2
+DA:99,2
+DA:100,2
+DA:101,2
+DA:102,2
+DA:103,2
+DA:104,2
+DA:105,2
+DA:106,1
+DA:108,1
+DA:110,1
+DA:111,2
+DA:112,2
+DA:113,2
+DA:114,1
+DA:116,1
+DA:119,1
+DA:120,1
+DA:121,2
+DA:122,1
+DA:124,1
+DA:127,1
+DA:128,1
+DA:129,1
+DA:130,2
+DA:131,1
+DA:132,2
+DA:133,1
+DA:134,2
+DA:135,1
+DA:136,2
+DA:137,1
+DA:138,2
+DA:139,1
+DA:141,1
+DA:145,1
+DA:146,1
+DA:147,1
+DA:149,1
+DA:150,2
+DA:151,1
+DA:153,1
+DA:156,1
+DA:157,1
+DA:158,1
+DA:160,1
+DA:161,1
+DA:162,1
+DA:163,2
+DA:165,1
+DA:166,1
+DA:167,1
+DA:168,2
+DA:170,1
+DA:171,1
+DA:172,1
+DA:173,2
+DA:175,1
+DA:176,1
+DA:177,1
+DA:178,1
+DA:179,2
+DA:181,1
+DA:182,1
+DA:183,1
+DA:184,1
+DA:185,2
+DA:186,1
+DA:188,1
+DA:192,1
+DA:193,1
+DA:194,1
+DA:196,1
+DA:197,2
+DA:199,1
+DA:200,1
+DA:201,2
+DA:202,1
+DA:204,1
+DA:209,1
+DA:210,1
+DA:211,1
+DA:214,1
+DA:215,2
+DA:217,1
+DA:218,2
+DA:220,1
+DA:221,2
+DA:223,1
+DA:224,1
+DA:225,2
+DA:226,1
+DA:230,4
+DA:232,4
+DA:233,4
+DA:234,4
+DA:235,4
+DA:237,1
+DA:240,1
+DA:241,1
+DA:242,1
+DA:243,2
+DA:244,1
+DA:245,2
+DA:246,1
+DA:247,2
+DA:248,1
+DA:249,1
+DA:251,1
+DA:252,2
+DA:253,1
+BA:20,1
+BA:20,2
+BA:33,2
+BA:33,2
+BA:36,2
+BA:36,2
+BA:52,2
+BA:52,1
+BA:52,1
+BA:52,2
+LF:163
+LH:159
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_grcal_grcal.cpp
+FN:13,_Z41__static_initialization_and_destruction_0ii
+FN:13,_GLOBAL__I__Z21run_GrcalDate_normalnv
+FN:13,_Z26run_GrcalTime_tostring_secv
+FN:3,_Z21run_GrcalDate_normalnv
+FN:12,_Z22run_GrcalTime_tostringv
+FN:11,_Z22run_GrcalDate_durationv
+FN:7,_Z22run_GrcalDate_tostringv
+FN:10,_Z24run_GrcalDate_upperboundv
+FN:9,_Z23run_GrcalDate_normalisev
+FN:8,_Z24run_GrcalDate_lowerboundv
+FN:6,_Z20run_GrcalDate_easterv
+FN:5,_Z24run_GrcalDate_daysinyearv
+FN:4,_Z25run_GrcalDate_daysinmonthv
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,1
+DA:7,1
+DA:8,1
+DA:9,1
+DA:10,1
+DA:11,1
+DA:12,1
+DA:13,4
+BA:13,2
+BA:13,1
+BA:13,2
+BA:13,1
+LF:11
+LH:11
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2162,0
+DA:2165,0
+DA:2188,0
+DA:2189,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:55
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:166,0
+DA:167,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+DA:69,0
+DA:71,0
+DA:76,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:204,_ZNSolsEx
+DA:95,0
+DA:112,0
+DA:117,0
+DA:204,0
+DA:205,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/singleton.h
+FN:83,_ZNK6wibble9SingletonIiE4sizeEv
+FN:74,_ZNK6wibble9SingletonIiE8iteratoreqERKS2_
+FN:75,_ZNK6wibble9SingletonIiE8iteratorneERKS2_
+FN:71,_ZN6wibble9SingletonIiE8iteratordeEv
+FN:73,_ZN6wibble9SingletonIiE8iteratorppEv
+FN:80,_ZN6wibble9SingletonIiEC1ERKi
+FN:92,_ZN6wibble9singletonIiEENS_9SingletonIT_EERKS2_
+FN:66,_ZN6wibble9SingletonIiE8iteratorC1EPi
+FN:85,_ZN6wibble9SingletonIiE5beginEv
+FN:69,_ZN6wibble9SingletonIiE8iteratorC1Ev
+FN:86,_ZN6wibble9SingletonIiE3endEv
+DA:66,1
+DA:69,4
+DA:71,1
+DA:73,1
+DA:74,2
+DA:75,2
+DA:80,5
+DA:83,1
+DA:85,1
+DA:86,4
+DA:92,1
+DA:94,1
+LF:12
+LH:12
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:52,_ZlsIiER12AssertFailedS1_T_
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:67,_Z12assert_eq_fnIjjEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnIiiEv8LocationT_T0_
+FN:59,_Z9assert_fnIbEv8LocationT_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:75,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+LF:26
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/singleton.test.h
+FN:14,_ZN12_GLOBAL__N_113TestSingleton6simpleEv
+DA:14,1
+DA:15,1
+DA:17,1
+DA:19,1
+DA:20,2
+DA:21,2
+DA:22,2
+DA:24,1
+DA:25,2
+DA:26,2
+DA:27,1
+LF:11
+LH:11
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_singleton.cpp
+FN:3,_Z41__static_initialization_and_destruction_0ii
+FN:3,_GLOBAL__I__Z20run_Singleton_simplev
+FN:3,_Z20run_Singleton_simplev
+DA:3,4
+BA:3,2
+BA:3,1
+BA:3,2
+BA:3,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:51
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt20forward_iterator_tagivPiRiEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,5
+DA:166,0
+DA:167,0
+LF:3
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+DA:69,0
+DA:71,0
+DA:76,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:195,_ZNSolsEj
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:395,_ZN6wibble9exception6SystemD1Ev
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+DA:137,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:395,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:395,0
+BA:395,0
+LF:21
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/pipe.h
+FN:42,_ZN6wibble3sys4Pipe3eofEv
+FN:32,_ZN6wibble3sys4PipeC1Ev
+FN:19,_ZN6wibble3sys4PipeD1Ev
+FN:25,_ZN6wibble3sys4PipeC1Ei
+FN:19,_ZN6wibble3sys4PipeaSERKS1_
+FN:46,_ZN6wibble3sys4Pipe8readMoreEv
+FN:60,_ZN6wibble3sys4Pipe8nextLineEv
+FN:75,_ZN6wibble3sys4Pipe16nextLineBlockingEv
+DA:19,4
+DA:25,2
+DA:27,2
+DA:28,0
+DA:29,2
+DA:30,0
+DA:31,0
+DA:32,2
+DA:42,1310
+DA:43,1310
+DA:46,953
+DA:48,953
+DA:49,953
+DA:50,0
+DA:51,953
+DA:52,456
+DA:53,497
+DA:54,0
+DA:56,497
+DA:57,497
+DA:60,1007
+DA:62,1007
+DA:63,1504
+DA:65,1007
+DA:66,1007
+DA:67,456
+DA:69,551
+DA:70,551
+DA:71,551
+DA:72,551
+DA:75,551
+DA:77,551
+DA:78,551
+DA:79,1558
+DA:80,1007
+DA:81,1007
+DA:82,551
+DA:83,456
+DA:84,456
+DA:86,0
+BA:27,2
+BA:27,1
+BA:29,1
+BA:29,2
+BA:49,2
+BA:49,2
+BA:49,1
+BA:49,2
+BA:51,2
+BA:51,2
+BA:53,1
+BA:53,2
+BA:63,2
+BA:63,2
+BA:63,2
+BA:63,2
+BA:63,2
+BA:63,2
+BA:66,2
+BA:66,2
+BA:77,2
+BA:77,2
+BA:79,2
+BA:79,1
+BA:81,2
+BA:81,2
+LF:40
+LH:34
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test-main.h
+FN:31,_ZN4MainC1Ev
+FN:9,_ZN4MainD1Ev
+FN:63,_ZN4Main8testDiedEv
+FN:38,_ZN4Main5childEv
+FN:86,_ZN4Main13processStatusESs
+FN:139,_ZN4Main6parentEv
+FN:163,_ZN4Main4mainEiPPc
+FN:188,main
+DA:9,0
+DA:31,1
+DA:32,1
+DA:33,1
+DA:34,1
+DA:35,1
+DA:36,1
+DA:38,1
+DA:39,1
+DA:40,1
+DA:41,1
+DA:42,1
+DA:43,1
+DA:44,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:50,0
+DA:51,0
+DA:52,0
+DA:54,0
+DA:56,1
+DA:57,1
+DA:59,1
+DA:60,1
+DA:63,0
+DA:67,0
+DA:68,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:73,0
+DA:74,0
+DA:75,0
+DA:76,0
+DA:77,0
+DA:78,0
+DA:80,0
+DA:81,0
+DA:82,0
+DA:83,0
+DA:86,303
+DA:87,303
+DA:88,1
+DA:89,1
+DA:90,2
+DA:91,2
+DA:94,1
+DA:95,1
+DA:98,302
+DA:101,124
+DA:102,124
+DA:103,124
+DA:104,124
+DA:107,302
+DA:108,54
+DA:110,27
+DA:111,27
+DA:112,27
+DA:113,27
+DA:114,27
+DA:115,27
+DA:117,54
+DA:118,27
+DA:120,27
+DA:121,27
+DA:125,302
+DA:126,248
+DA:127,124
+DA:128,124
+DA:129,124
+DA:131,248
+DA:132,124
+DA:133,124
+DA:134,124
+DA:137,302
+DA:139,1
+DA:140,1
+DA:141,1
+DA:142,1
+DA:143,1
+DA:144,1
+DA:146,302
+DA:147,303
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:158,303
+DA:159,303
+DA:160,0
+DA:163,1
+DA:165,1
+DA:166,1
+DA:168,1
+DA:169,1
+DA:171,0
+DA:172,1
+DA:173,0
+DA:174,1
+DA:175,0
+DA:176,1
+DA:177,2
+DA:178,0
+DA:179,2
+DA:180,1
+DA:182,1
+DA:188,1
+DA:189,1
+BA:43,1
+BA:43,2
+BA:45,0
+BA:45,0
+BA:50,0
+BA:50,0
+BA:51,0
+BA:51,0
+BA:56,2
+BA:56,1
+BA:67,0
+BA:67,0
+BA:68,0
+BA:68,0
+BA:70,0
+BA:70,0
+BA:74,0
+BA:74,0
+BA:76,0
+BA:76,0
+BA:87,2
+BA:87,2
+BA:98,2
+BA:98,2
+BA:107,2
+BA:107,2
+BA:108,2
+BA:108,2
+BA:117,2
+BA:117,2
+BA:118,2
+BA:118,1
+BA:125,2
+BA:125,2
+BA:126,2
+BA:126,2
+BA:131,2
+BA:131,2
+BA:147,1
+BA:147,2
+BA:149,0
+BA:149,0
+BA:172,1
+BA:172,2
+BA:174,1
+BA:174,2
+BA:177,1
+BA:177,2
+BA:179,2
+BA:179,2
+LF:111
+LH:75
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test-runner.h
+FN:17,_ZN6RunAllC1Ev
+FN:17,_ZN6RunAllD1Ev
+FN:23,_ZN6RunAll9findSuiteESs
+FN:30,_ZN6RunAll10waitForAckEv
+FN:53,_ZN6RunAll7runTestER8RunSuitei
+FN:35,_ZN6RunAll8runSuiteER8RunSuiteiii
+FN:66,_ZN6RunAll7runFromEii
+DA:17,1
+DA:23,0
+DA:24,0
+DA:25,0
+DA:26,0
+DA:27,0
+DA:30,248
+DA:31,248
+DA:32,248
+DA:33,248
+DA:35,27
+DA:37,27
+DA:38,151
+DA:40,124
+DA:41,124
+DA:42,124
+DA:43,124
+DA:44,124
+DA:45,124
+DA:46,124
+DA:50,27
+DA:51,27
+DA:53,0
+DA:55,0
+DA:56,0
+DA:57,0
+DA:58,0
+DA:59,0
+DA:60,0
+DA:61,0
+DA:62,0
+DA:63,0
+DA:64,0
+DA:66,1
+DA:68,56
+DA:69,27
+DA:70,27
+DA:71,27
+DA:73,1
+BA:24,0
+BA:24,0
+BA:25,0
+BA:25,0
+BA:38,2
+BA:38,2
+BA:68,2
+BA:68,2
+LF:39
+LH:23
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationD1Ev
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:17,_ZN8LocationC1EPKciSs
+FN:13,_ZN8LocationC1ERKS_
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:52,_ZlsIiER12AssertFailedS1_T_
+FN:41,_ZN12AssertFailedD1Ev
+FN:67,_Z12assert_eq_fnISsSsEv8LocationT_T0_
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:67,_Z12assert_eq_fnIiiEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:75,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+LF:26
+LH:0
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-main.cpp
+FN:336,_Z41__static_initialization_and_destruction_0ii
+FN:336,_GLOBAL__I_run_Tests
+DA:336,3
+BA:336,2
+BA:336,1
+BA:336,2
+BA:336,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC2Ev
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:106,_ZNSaIPcED1Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+FN:104,_ZNSaIPcEC1IcEERKSaIT_E
+DA:98,0
+DA:100,0
+DA:101,0
+DA:104,6
+DA:106,6
+DA:118,0
+DA:119,0
+LF:7
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:188,_ZNKSs4_Rep12_M_is_leakedEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:369,_ZNSs13_S_copy_charsISt15_Deque_iteratorIcRcPcEEEvS2_T_S4_
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:1462,_ZNSs16_S_construct_auxISt15_Deque_iteratorIcRcPcEEES2_T_S4_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructISt15_Deque_iteratorIcRcPcEEES2_T_S4_RKSaIcE
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:376,_ZNSs13_S_copy_charsEPcN9__gnu_cxx17__normal_iteratorIS_SsEES2_
+FN:1462,_ZNSs16_S_construct_auxIN9__gnu_cxx17__normal_iteratorIPcSsEEEES2_T_S4_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIN9__gnu_cxx17__normal_iteratorIPcSsEEEES2_T_S4_RKSaIcE
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:501,_ZNSsaSERKSs
+FN:2176,_ZSteqIcSt11char_traitsIcESaIcEEbPKT_RKSbIS3_T0_T1_E
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:299,_ZNSs7_M_leakEv
+FN:718,_ZNSsixEj
+FN:551,_ZNSs3endEv
+FN:532,_ZNSs5beginEv
+DA:178,0
+DA:183,0
+DA:184,0
+DA:188,0
+DA:189,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:299,0
+DA:301,0
+DA:302,0
+DA:303,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:369,551
+DA:371,6720
+DA:372,6169
+DA:373,551
+DA:376,0
+DA:377,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:532,0
+DA:534,0
+DA:535,0
+DA:551,0
+DA:553,0
+DA:554,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:718,0
+DA:724,0
+DA:725,0
+DA:835,0
+DA:838,0
+DA:1462,702
+DA:1465,702
+DA:1478,702
+DA:1481,702
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2162,0
+DA:2165,0
+DA:2176,0
+DA:2177,0
+DA:2188,0
+DA:2189,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:301,0
+BA:301,0
+BA:341,0
+BA:341,0
+BA:371,2
+BA:371,2
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:94
+LH:8
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructISt15_Deque_iteratorIcRcPcEEES2_T_S4_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1ISt15_Deque_iteratorIcRcPcEEET_S4_RKSaIcE
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+FN:130,_ZNSs12_S_constructIN9__gnu_cxx17__normal_iteratorIPcSsEEEES2_T_S4_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IN9__gnu_cxx17__normal_iteratorIPcSsEEEET_S4_RKSaIcE
+DA:130,702
+DA:133,702
+DA:134,0
+DA:137,702
+DA:139,0
+DA:142,702
+DA:144,702
+DA:146,702
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,702
+DA:153,702
+DA:234,702
+DA:235,702
+DA:236,702
+BA:133,1
+BA:133,2
+BA:133,0
+BA:133,0
+BA:133,1
+BA:133,2
+BA:133,1
+BA:133,2
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,1
+BA:133,2
+BA:133,0
+BA:133,0
+BA:133,1
+BA:133,2
+BA:133,0
+BA:133,0
+BA:133,1
+BA:133,2
+BA:137,1
+BA:137,2
+BA:137,0
+BA:137,0
+BA:137,1
+BA:137,2
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,1
+BA:137,2
+BA:137,0
+BA:137,0
+BA:137,1
+BA:137,2
+LF:16
+LH:11
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,6169
+DA:246,6169
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/deque.tcc
+FN:159,_ZNSt5dequeIcSaIcEE5eraseESt15_Deque_iteratorIcRcPcES5_
+FN:766,_ZNSt5dequeIcSaIcEE17_M_reallocate_mapEjb
+FN:716,_ZNSt5dequeIcSaIcEE24_M_new_elements_at_frontEj
+FN:741,_ZNSt5dequeIcSaIcEE23_M_new_elements_at_backEj
+FN:608,_ZNSt5dequeIcSaIcEE13_M_insert_auxISt15_Deque_iteratorIcRKcPS4_EEEvS3_IcRcPcET_SB_j
+FN:435,_ZNSt5dequeIcSaIcEE19_M_range_insert_auxISt15_Deque_iteratorIcRKcPS4_EEEvS3_IcRcPcET_SB_St20forward_iterator_tag
+FN:70,_ZNSt5dequeIcSaIcEEaSERKS1_
+FN:335,_ZNSt5dequeIcSaIcEE16_M_push_back_auxERKc
+DA:70,2
+DA:72,2
+DA:73,2
+DA:75,2
+DA:76,2
+DA:80,0
+DA:81,0
+DA:82,0
+DA:85,2
+DA:159,551
+DA:161,551
+DA:163,497
+DA:164,497
+DA:168,54
+DA:169,54
+DA:170,54
+DA:172,54
+DA:173,0
+DA:174,54
+DA:178,0
+DA:179,0
+DA:180,0
+DA:182,54
+DA:335,2
+DA:338,2
+DA:339,2
+DA:346,2
+DA:348,2
+DA:350,2
+DA:352,0
+DA:354,0
+DA:355,0
+DA:357,2
+DA:435,0
+DA:437,0
+DA:438,0
+DA:440,0
+DA:443,0
+DA:445,0
+DA:447,0
+DA:449,0
+DA:451,0
+DA:454,0
+DA:456,0
+DA:459,0
+DA:462,0
+DA:464,0
+DA:466,0
+DA:468,0
+DA:472,0
+DA:473,0
+DA:608,0
+DA:610,0
+DA:611,0
+DA:612,0
+DA:614,0
+DA:615,0
+DA:616,0
+DA:619,0
+DA:622,0
+DA:623,0
+DA:626,0
+DA:627,0
+DA:628,0
+DA:632,0
+DA:633,0
+DA:634,0
+DA:638,0
+DA:639,0
+DA:642,0
+DA:644,0
+DA:646,0
+DA:651,0
+DA:652,0
+DA:654,0
+DA:655,0
+DA:658,0
+DA:661,0
+DA:662,0
+DA:666,0
+DA:667,0
+DA:668,0
+DA:672,0
+DA:673,0
+DA:674,0
+DA:678,0
+DA:679,0
+DA:682,0
+DA:684,0
+DA:686,0
+DA:689,0
+DA:716,0
+DA:718,0
+DA:719,0
+DA:722,0
+DA:723,0
+DA:727,0
+DA:728,0
+DA:730,0
+DA:732,0
+DA:733,0
+DA:734,0
+DA:736,0
+DA:741,0
+DA:743,0
+DA:744,0
+DA:747,0
+DA:748,0
+DA:752,0
+DA:753,0
+DA:755,0
+DA:757,0
+DA:758,0
+DA:759,0
+DA:761,0
+DA:766,0
+DA:769,0
+DA:770,0
+DA:773,0
+DA:775,0
+DA:778,0
+DA:779,0
+DA:783,0
+DA:791,0
+DA:793,0
+DA:794,0
+DA:796,0
+DA:799,0
+DA:801,0
+DA:802,0
+DA:805,0
+DA:806,0
+DA:807,0
+BA:73,2
+BA:73,1
+BA:75,2
+BA:75,1
+BA:161,2
+BA:161,1
+BA:161,2
+BA:161,2
+BA:161,2
+BA:161,2
+BA:170,2
+BA:170,1
+BA:172,1
+BA:172,2
+BA:178,0
+BA:178,0
+BA:438,0
+BA:438,0
+BA:454,0
+BA:454,0
+BA:612,0
+BA:612,0
+BA:619,0
+BA:619,0
+BA:658,0
+BA:658,0
+BA:718,0
+BA:718,0
+BA:727,0
+BA:727,0
+BA:732,0
+BA:732,0
+BA:743,0
+BA:743,0
+BA:752,0
+BA:752,0
+BA:757,0
+BA:757,0
+BA:773,0
+BA:773,0
+BA:775,0
+BA:775,0
+BA:778,0
+BA:778,0
+BA:794,0
+BA:794,0
+LF:133
+LH:23
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algo.h
+FN:171,_ZSt6__findISt15_Deque_iteratorIcRcPcEcET_S4_S4_RKT0_St26random_access_iterator_tag
+FN:3806,_ZSt4findISt15_Deque_iteratorIcRcPcEcET_S4_S4_RKT0_
+DA:171,2014
+DA:174,2014
+DA:176,3504
+DA:178,1899
+DA:179,20
+DA:180,1879
+DA:182,1879
+DA:183,9
+DA:184,1870
+DA:186,1870
+DA:187,31
+DA:188,1839
+DA:190,1839
+DA:191,349
+DA:192,1490
+DA:195,1605
+DA:198,56
+DA:199,0
+DA:200,56
+DA:202,134
+DA:203,0
+DA:204,134
+DA:206,196
+DA:207,196
+DA:208,0
+DA:211,1409
+DA:3806,2014
+DA:3814,2014
+BA:176,2
+BA:176,2
+BA:178,2
+BA:178,2
+BA:182,2
+BA:182,2
+BA:186,2
+BA:186,2
+BA:190,2
+BA:190,2
+BA:195,2
+BA:195,2
+BA:195,2
+BA:195,2
+BA:198,1
+BA:198,2
+BA:202,1
+BA:202,2
+BA:206,2
+BA:206,1
+LF:28
+LH:25
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:286,_ZNSt12__miter_baseIPcLb0EE3__bES0_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:268,_ZNSt12__niter_baseIPcLb0EE3__bES0_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt5dequeIcSaIcEEELb0EE3__bES4_
+FN:286,_ZNSt12__miter_baseISt15_Deque_iteratorIcRcPcELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseISt15_Deque_iteratorIcRKcPS1_ELb0EE3__bES4_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:268,_ZNSt12__niter_baseISt15_Deque_iteratorIcRcPcELb0EE3__bES3_
+FN:268,_ZNSt12__niter_baseISt15_Deque_iteratorIcRKcPS1_ELb0EE3__bES4_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mISt15_Deque_iteratorIcRcPcES6_EET0_T_S8_S7_
+FN:385,_ZSt13__copy_move_aILb0ESt15_Deque_iteratorIcRcPcES3_ET1_T0_S5_S4_
+FN:430,_ZSt14__copy_move_a2ILb0ESt15_Deque_iteratorIcRcPcES3_ET1_T0_S5_S4_
+FN:456,_ZSt4copyISt15_Deque_iteratorIcRcPcES3_ET0_T_S5_S4_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bISt15_Deque_iteratorIcRcPcES6_EET0_T_S8_S7_
+FN:579,_ZSt22__copy_move_backward_aILb0ESt15_Deque_iteratorIcRcPcES3_ET1_T0_S5_S4_
+FN:597,_ZSt23__copy_move_backward_a2ILb0ESt15_Deque_iteratorIcRcPcES3_ET1_T0_S5_S4_
+FN:624,_ZSt13copy_backwardISt15_Deque_iteratorIcRcPcES3_ET0_T_S5_S4_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mISt15_Deque_iteratorIcRKcPS4_ES3_IcRcPcEEET0_T_SC_SB_
+FN:385,_ZSt13__copy_move_aILb0ESt15_Deque_iteratorIcRKcPS1_ES0_IcRcPcEET1_T0_S9_S8_
+FN:430,_ZSt14__copy_move_a2ILb0ESt15_Deque_iteratorIcRKcPS1_ES0_IcRcPcEET1_T0_S9_S8_
+FN:456,_ZSt4copyISt15_Deque_iteratorIcRKcPS1_ES0_IcRcPcEET0_T_S9_S8_
+FN:286,_ZNSt12__miter_baseIPPcLb0EE3__bES1_
+FN:268,_ZNSt12__niter_baseIPPcLb0EE3__bES1_
+FN:569,_ZNSt20__copy_move_backwardILb0ELb1ESt26random_access_iterator_tagE13__copy_move_bIPcEEPT_PKS4_S7_S5_
+FN:579,_ZSt22__copy_move_backward_aILb0EPPcS1_ET1_T0_S3_S2_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPPcS1_ET1_T0_S3_S2_
+FN:624,_ZSt13copy_backwardIPPcS1_ET0_T_S3_S2_
+FN:375,_ZNSt11__copy_moveILb0ELb1ESt26random_access_iterator_tagE8__copy_mIPcEEPT_PKS4_S7_S5_
+FN:385,_ZSt13__copy_move_aILb0EPPcS1_ET1_T0_S3_S2_
+FN:430,_ZSt14__copy_move_a2ILb0EPPcS1_ET1_T0_S3_S2_
+FN:456,_ZSt4copyIPPcS1_ET0_T_S3_S2_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPcSt20back_insert_iteratorISt5dequeIcSaIcEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPcSt20back_insert_iteratorISt5dequeIcSaIcEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EPcSt20back_insert_iteratorISt5dequeIcSaIcEEEET1_T0_S7_S6_
+FN:456,_ZSt4copyIPcSt20back_insert_iteratorISt5dequeIcSaIcEEEET0_T_S7_S6_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,503
+DA:269,503
+DA:276,0
+DA:277,0
+DA:286,4
+DA:287,4
+DA:337,499
+DA:340,7219
+DA:342,6720
+DA:343,6720
+DA:344,6720
+DA:346,499
+DA:375,0
+DA:377,0
+DA:379,0
+DA:385,499
+DA:393,499
+DA:396,499
+DA:430,499
+DA:435,499
+DA:456,499
+DA:466,499
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:569,0
+DA:571,0
+DA:572,0
+DA:573,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+BA:340,0
+BA:340,0
+BA:340,1
+BA:340,2
+BA:340,2
+BA:340,2
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+LF:41
+LH:17
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:97,_ZSt8_DestroyISt15_Deque_iteratorIcRcPcEEvT_S4_
+FN:126,_ZSt8_DestroyISt15_Deque_iteratorIcRcPcEcEvT_S4_RSaIT0_E
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_deque.h
+FN:82,_ZSt16__deque_buf_sizej
+FN:127,_ZNSt15_Deque_iteratorIcRcPcEC1ERKS2_
+FN:868,_ZNSt5dequeIcSaIcEE3endEv
+FN:851,_ZNSt5dequeIcSaIcEE5beginEv
+FN:240,_ZSteqIcRcPcEbRKSt15_Deque_iteratorIT_T0_T1_ES8_
+FN:416,_ZNSt11_Deque_baseIcSaIcEE11_Deque_implD1Ev
+FN:434,_ZNSt11_Deque_baseIcSaIcEE19_M_get_Tp_allocatorEv
+FN:1601,_ZNSt5dequeIcSaIcEE15_M_destroy_dataESt15_Deque_iteratorIcRcPcES5_RKS0_
+FN:253,_ZStneIcRcPcEbRKSt15_Deque_iteratorIT_T0_T1_ES8_
+FN:132,_ZNKSt15_Deque_iteratorIcRcPcEdeEv
+FN:103,_ZNSt15_Deque_iteratorIcRcPcE14_S_buffer_sizeEv
+FN:226,_ZNSt15_Deque_iteratorIcRcPcE11_M_set_nodeEPS1_
+FN:140,_ZNSt15_Deque_iteratorIcRcPcEppEv
+FN:324,_ZStmiIcRcPcENSt15_Deque_iteratorIT_T0_T1_E15difference_typeERKS6_S9_
+FN:956,_ZNKSt5dequeIcSaIcEE4sizeEv
+FN:180,_ZNSt15_Deque_iteratorIcRcPcEpLEi
+FN:199,_ZNKSt15_Deque_iteratorIcRcPcEplEi
+FN:206,_ZNSt15_Deque_iteratorIcRcPcEmIEi
+FN:210,_ZNKSt15_Deque_iteratorIcRcPcEmiEi
+FN:127,_ZNSt15_Deque_iteratorIcRKcPS0_EC1ERKS_IcRcPcE
+FN:859,_ZNKSt5dequeIcSaIcEE5beginEv
+FN:877,_ZNKSt5dequeIcSaIcEE3endEv
+FN:124,_ZNSt15_Deque_iteratorIcRcPcEC1Ev
+FN:422,_ZNSt11_Deque_baseIcSaIcEE11_Deque_implC1Ev
+FN:670,_ZNSt5dequeIcSaIcEE14_S_buffer_sizeEv
+FN:103,_ZNSt15_Deque_iteratorIcRKcPS0_E14_S_buffer_sizeEv
+FN:226,_ZNSt15_Deque_iteratorIcRKcPS0_E11_M_set_nodeEPPc
+FN:180,_ZNSt15_Deque_iteratorIcRKcPS0_EpLEi
+FN:199,_ZNKSt15_Deque_iteratorIcRKcPS0_EplEi
+FN:438,_ZNKSt11_Deque_baseIcSaIcEE19_M_get_Tp_allocatorEv
+FN:442,_ZNKSt11_Deque_baseIcSaIcEE20_M_get_map_allocatorEv
+FN:160,_ZNSt15_Deque_iteratorIcRcPcEmmEv
+FN:324,_ZStmiIcRKcPS0_ENSt15_Deque_iteratorIT_T0_T1_E15difference_typeERKS7_SA_
+FN:132,_ZNKSt15_Deque_iteratorIcRKcPS0_EdeEv
+FN:140,_ZNSt15_Deque_iteratorIcRKcPS0_EppEv
+FN:961,_ZNKSt5dequeIcSaIcEE8max_sizeEv
+FN:458,_ZNSt11_Deque_baseIcSaIcEE15_M_allocate_mapEj
+FN:446,_ZNSt11_Deque_baseIcSaIcEE16_M_allocate_nodeEv
+FN:452,_ZNSt11_Deque_baseIcSaIcEE18_M_deallocate_nodeEPc
+FN:554,_ZNSt11_Deque_baseIcSaIcEE16_M_destroy_nodesEPPcS3_
+FN:536,_ZNSt11_Deque_baseIcSaIcEE15_M_create_nodesEPPcS3_
+FN:1619,_ZNSt5dequeIcSaIcEE15_M_erase_at_endESt15_Deque_iteratorIcRcPcE
+FN:1373,_ZNSt5dequeIcSaIcEE5clearEv
+FN:1609,_ZNSt5dequeIcSaIcEE17_M_erase_at_beginESt15_Deque_iteratorIcRcPcE
+FN:462,_ZNSt11_Deque_baseIcSaIcEE17_M_deallocate_mapEPPcj
+FN:497,_ZNSt11_Deque_baseIcSaIcEE17_M_initialize_mapEj
+FN:377,_ZNSt11_Deque_baseIcSaIcEEC2Ev
+FN:695,_ZNSt5dequeIcSaIcEEC1Ev
+FN:476,_ZNSt11_Deque_baseIcSaIcEED2Ev
+FN:775,_ZNSt5dequeIcSaIcEED1Ev
+FN:1674,_ZNSt5dequeIcSaIcEE23_M_reserve_map_at_frontEj
+FN:1630,_ZNSt5dequeIcSaIcEE28_M_reserve_elements_at_frontEj
+FN:1666,_ZNSt5dequeIcSaIcEE22_M_reserve_map_at_backEj
+FN:1640,_ZNSt5dequeIcSaIcEE27_M_reserve_elements_at_backEj
+FN:1540,_ZNSt5dequeIcSaIcEE18_M_insert_dispatchISt15_Deque_iteratorIcRKcPS4_EEEvS3_IcRcPcET_SB_St12__false_type
+FN:1297,_ZNSt5dequeIcSaIcEE6insertISt15_Deque_iteratorIcRKcPS4_EEEvS3_IcRcPcET_SB_
+FN:1159,_ZNSt5dequeIcSaIcEE9push_backERKc
+DA:82,4652
+DA:83,4652
+DA:103,4465
+DA:104,4465
+DA:124,8
+DA:125,8
+DA:127,25602
+DA:129,25602
+DA:132,14042
+DA:133,14042
+DA:140,13988
+DA:142,13988
+DA:143,13988
+DA:145,6
+DA:146,6
+DA:148,13988
+DA:160,0
+DA:162,0
+DA:164,0
+DA:165,0
+DA:167,0
+DA:168,0
+DA:180,108
+DA:182,108
+DA:183,108
+DA:184,107
+DA:190,1
+DA:191,1
+DA:192,1
+DA:195,108
+DA:199,108
+DA:201,108
+DA:202,108
+DA:206,0
+DA:207,0
+DA:210,0
+DA:212,0
+DA:213,0
+DA:226,17
+DA:228,17
+DA:229,17
+DA:230,17
+DA:231,17
+DA:240,10938
+DA:241,10938
+DA:253,6774
+DA:254,6774
+DA:324,4338
+DA:329,4338
+DA:377,4
+DA:378,4
+DA:379,4
+DA:416,2
+DA:422,4
+DA:424,4
+DA:425,4
+DA:434,555
+DA:435,555
+DA:438,6
+DA:439,6
+DA:442,6
+DA:443,6
+DA:446,6
+DA:448,6
+DA:452,4
+DA:454,4
+DA:455,4
+DA:458,4
+DA:459,4
+DA:462,2
+DA:463,2
+DA:476,2
+DA:478,2
+DA:480,2
+DA:482,2
+DA:484,2
+DA:497,4
+DA:500,4
+DA:502,4
+DA:504,4
+DA:512,4
+DA:513,4
+DA:516,4
+DA:517,0
+DA:519,0
+DA:520,0
+DA:521,0
+DA:522,0
+DA:525,4
+DA:526,4
+DA:527,4
+DA:528,4
+DA:531,4
+DA:536,4
+DA:541,8
+DA:542,4
+DA:544,0
+DA:546,0
+DA:547,0
+DA:549,4
+DA:554,555
+DA:556,559
+DA:557,4
+DA:558,555
+DA:670,0
+DA:671,0
+DA:695,4
+DA:696,4
+DA:775,2
+DA:776,2
+DA:851,4436
+DA:852,4436
+DA:859,2
+DA:860,2
+DA:868,6074
+DA:869,6074
+DA:877,2
+DA:878,2
+DA:956,58
+DA:957,58
+DA:961,0
+DA:962,0
+DA:1159,6720
+DA:1161,6720
+DA:1164,6718
+DA:1165,6718
+DA:1168,2
+DA:1169,6720
+DA:1297,0
+DA:1301,0
+DA:1302,0
+DA:1373,497
+DA:1374,497
+DA:1540,0
+DA:1544,0
+DA:1545,0
+DA:1601,555
+DA:1605,555
+DA:1609,54
+DA:1611,54
+DA:1612,54
+DA:1613,54
+DA:1614,54
+DA:1619,499
+DA:1621,499
+DA:1622,499
+DA:1624,499
+DA:1625,499
+DA:1630,0
+DA:1633,0
+DA:1634,0
+DA:1635,0
+DA:1636,0
+DA:1640,0
+DA:1643,0
+DA:1644,0
+DA:1645,0
+DA:1646,0
+DA:1666,2
+DA:1668,2
+DA:1670,0
+DA:1671,2
+DA:1674,0
+DA:1676,0
+DA:1678,0
+DA:1679,0
+BA:83,2
+BA:83,1
+BA:143,2
+BA:143,2
+BA:143,0
+BA:143,0
+BA:162,0
+BA:162,0
+BA:183,2
+BA:183,1
+BA:183,2
+BA:183,2
+BA:183,2
+BA:183,2
+BA:183,0
+BA:183,0
+BA:183,0
+BA:183,0
+BA:183,0
+BA:183,0
+BA:190,2
+BA:190,1
+BA:190,0
+BA:190,0
+BA:478,2
+BA:478,1
+BA:541,2
+BA:541,2
+BA:556,2
+BA:556,2
+BA:1161,2
+BA:1161,2
+BA:1634,0
+BA:1634,0
+BA:1644,0
+BA:1644,0
+BA:1668,1
+BA:1668,2
+BA:1676,0
+BA:1676,0
+LF:166
+LH:122
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:398,_ZNSt20back_insert_iteratorISt5dequeIcSaIcEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt5dequeIcSaIcEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPcSsEC1ERKS1_
+FN:735,_ZNK9__gnu_cxx17__normal_iteratorIPcSsEplERKi
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:429,_ZNSt20back_insert_iteratorISt5dequeIcSaIcEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt5dequeIcSaIcEEEppEv
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPcSsE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPcSsEEbRKNS_17__normal_iteratorIT_T0_EES7_
+FN:781,_ZN9__gnu_cxxneIPcSsEEbRKNS_17__normal_iteratorIT_T0_EES7_
+FN:846,_ZN9__gnu_cxxmiIPcSsEENS_17__normal_iteratorIT_T0_E15difference_typeERKS5_S8_
+FN:412,_ZNSt20back_insert_iteratorISt5dequeIcSaIcEEEaSERKc
+DA:398,497
+DA:412,6720
+DA:414,6720
+DA:415,6720
+DA:429,6720
+DA:430,6720
+DA:434,6720
+DA:435,6720
+DA:456,497
+DA:457,497
+DA:683,152
+DA:735,152
+DA:736,152
+DA:747,604
+DA:748,604
+DA:769,151
+DA:770,151
+DA:781,0
+DA:782,0
+DA:846,151
+DA:847,151
+LF:21
+LH:19
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceISt15_Deque_iteratorIcRcPcEENSt15iterator_traitsIT_E15difference_typeES5_S5_St26random_access_iterator_tag
+FN:115,_ZSt8distanceISt15_Deque_iteratorIcRcPcEENSt15iterator_traitsIT_E15difference_typeES5_S5_
+FN:93,_ZSt10__distanceISt15_Deque_iteratorIcRKcPS1_EENSt15iterator_traitsIT_E15difference_typeES6_S6_St26random_access_iterator_tag
+FN:115,_ZSt8distanceISt15_Deque_iteratorIcRKcPS1_EENSt15iterator_traitsIT_E15difference_typeES6_S6_
+FN:151,_ZSt9__advanceISt15_Deque_iteratorIcRKcPS1_EiEvRT_T0_St26random_access_iterator_tag
+FN:173,_ZSt7advanceISt15_Deque_iteratorIcRKcPS1_EiEvRT_T0_
+FN:93,_ZSt10__distanceIN9__gnu_cxx17__normal_iteratorIPcSsEEENSt15iterator_traitsIT_E15difference_typeES5_S5_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIN9__gnu_cxx17__normal_iteratorIPcSsEEENSt15iterator_traitsIT_E15difference_typeES5_S5_
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,702
+DA:98,702
+DA:115,702
+DA:119,702
+DA:151,0
+DA:156,0
+DA:157,0
+DA:173,0
+DA:176,0
+DA:177,0
+DA:178,0
+LF:11
+LH:4
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryISt15_Deque_iteratorIcRcPcEENSt15iterator_traitsIT_E17iterator_categoryERKS5_
+FN:166,_ZSt19__iterator_categoryISt15_Deque_iteratorIcRKcPS1_EENSt15iterator_traitsIT_E17iterator_categoryERKS6_
+FN:166,_ZSt19__iterator_categoryIN9__gnu_cxx17__normal_iteratorIPcSsEEENSt15iterator_traitsIT_E17iterator_categoryERKS5_
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,2716
+DA:167,2716
+LF:3
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:97,_ZNSt20__uninitialized_copyILb1EE18uninitialized_copyISt15_Deque_iteratorIcRKcPS3_ES2_IcRcPcEEET0_T_SB_SA_
+FN:113,_ZSt18uninitialized_copyISt15_Deque_iteratorIcRKcPS1_ES0_IcRcPcEET0_T_S9_S8_
+FN:261,_ZSt22__uninitialized_copy_aISt15_Deque_iteratorIcRKcPS1_ES0_IcRcPcEcET0_T_S9_S8_RSaIT1_E
+FN:97,_ZNSt20__uninitialized_copyILb1EE18uninitialized_copyISt15_Deque_iteratorIcRcPcES5_EET0_T_S7_S6_
+FN:113,_ZSt18uninitialized_copyISt15_Deque_iteratorIcRcPcES3_ET0_T_S5_S4_
+FN:261,_ZSt22__uninitialized_copy_aISt15_Deque_iteratorIcRcPcES3_cET0_T_S5_S4_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aISt15_Deque_iteratorIcRcPcES3_SaIcEET0_T_S6_S5_RT1_
+FN:371,_ZSt25__uninitialized_move_copyISt15_Deque_iteratorIcRcPcES0_IcRKcPS4_ES3_SaIcEET1_T_SA_T0_SB_S9_RT2_
+FN:343,_ZSt25__uninitialized_copy_moveISt15_Deque_iteratorIcRKcPS1_ES0_IcRcPcES7_SaIcEET1_T_SA_T0_SB_S9_RT2_
+DA:97,0
+DA:98,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+DA:343,0
+DA:347,0
+DA:350,0
+DA:352,0
+DA:354,0
+DA:355,0
+DA:371,0
+DA:375,0
+DA:378,0
+DA:380,0
+DA:382,0
+DA:383,0
+LF:20
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+DA:79,0
+DA:97,0
+DA:98,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:386,0
+DA:387,0
+DA:404,0
+DA:405,0
+DA:526,0
+DA:527,0
+BA:149,0
+BA:149,0
+LF:19
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIPcED2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorIPcE8max_sizeEv
+FN:69,_ZN9__gnu_cxx13new_allocatorIPcEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorIcE8max_sizeEv
+FN:107,_ZN9__gnu_cxx13new_allocatorIcE9constructEPcRKc
+FN:87,_ZN9__gnu_cxx13new_allocatorIPcE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorIcE8allocateEjPKv
+FN:97,_ZN9__gnu_cxx13new_allocatorIcE10deallocateEPcj
+FN:97,_ZN9__gnu_cxx13new_allocatorIPcE10deallocateEPS1_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+DA:69,6
+DA:71,0
+DA:76,6
+DA:87,4
+DA:89,4
+DA:90,0
+DA:92,4
+DA:97,2
+DA:98,2
+DA:101,4
+DA:102,4
+DA:107,0
+DA:108,0
+BA:89,1
+BA:89,2
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:13
+LH:9
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:159,_ZN9__gnu_cxx17__is_null_pointerISt15_Deque_iteratorIcRcPcEEEbT_
+FN:159,_ZN9__gnu_cxx17__is_null_pointerINS_17__normal_iteratorIPcSsEEEEbT_
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+DA:159,702
+DA:160,702
+LF:4
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+DA:105,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:25
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:17,_ZN8LocationC1EPKciSs
+FN:13,_ZN8LocationC1ERKS_
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:67,_Z12assert_eq_fnIjjEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsSsEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:75,0
+BA:42,0
+BA:42,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+LF:22
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/process.test.h
+FN:20,_ZN11TestProcess5umaskEv
+FN:12,_ZN11TestProcess14getcwdAndChdirEv
+DA:12,1
+DA:13,1
+DA:14,1
+DA:15,2
+DA:16,1
+DA:17,1
+DA:18,1
+DA:20,1
+DA:21,1
+DA:22,1
+DA:23,1
+LF:11
+LH:11
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_sys_process.cpp
+FN:4,_Z41__static_initialization_and_destruction_0ii
+FN:4,_GLOBAL__I__Z26run_Process_getcwdAndChdirv
+FN:4,_Z17run_Process_umaskv
+FN:3,_Z26run_Process_getcwdAndChdirv
+DA:3,1
+DA:4,4
+BA:4,2
+BA:4,1
+BA:4,2
+BA:4,1
+LF:2
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2162,0
+DA:2165,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:53
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:166,0
+DA:167,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+DA:69,0
+DA:71,0
+DA:76,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:195,_ZNSolsEj
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:263,_ZNK6wibble9exception11Consistency4typeEv
+FN:109,_ZN6wibble9exception10AddContext7contextEv
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:265,_ZNK6wibble9exception11Consistency4descEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:117,_ZN6wibble9exception10AddContext11copyContextISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvT_
+FN:153,_ZN6wibble9exception7Context10addContextERKSs
+FN:147,_ZN6wibble9exception7ContextC2ERKSs
+FN:186,_ZN6wibble9exception7GenericC2ERKSs
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:259,_ZN6wibble9exception11ConsistencyC1ERKSsS3_
+FN:261,_ZN6wibble9exception11ConsistencyD0Ev
+FN:261,_ZN6wibble9exception11ConsistencyD1Ev
+DA:109,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:113,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:137,0
+DA:147,0
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:186,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:259,0
+DA:260,0
+DA:261,0
+DA:263,0
+DA:265,0
+DA:266,0
+DA:267,0
+DA:268,0
+DA:269,0
+BA:110,0
+BA:110,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:267,0
+BA:267,0
+LF:44
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/buffer.h
+FN:51,_ZNK6wibble3sys6Buffer4Data3refEv
+FN:55,_ZNK6wibble3sys6Buffer4Data5unrefEv
+FN:118,_ZN6wibble3sys6BufferC2ERKS1_
+FN:140,_ZN6wibble3sys6Buffer4dataEv
+FN:143,_ZNK6wibble3sys6Buffer4dataEv
+FN:146,_ZNK6wibble3sys6Buffer4sizeEv
+FN:109,_ZN6wibble3sys6BufferC2EPKvj
+FN:129,_ZN6wibble3sys6BufferaSERKS1_
+FN:124,_ZN6wibble3sys6BufferD2Ev
+DA:51,16
+DA:55,16
+DA:109,2
+DA:111,2
+DA:113,2
+DA:114,2
+DA:116,2
+DA:118,4
+DA:120,4
+DA:121,4
+DA:122,4
+DA:123,4
+DA:124,6
+DA:126,6
+DA:127,2
+DA:128,6
+DA:129,5
+DA:131,5
+DA:132,5
+DA:133,5
+DA:134,0
+DA:135,5
+DA:136,5
+DA:140,17
+DA:143,7
+DA:146,30
+BA:111,2
+BA:111,1
+BA:120,2
+BA:120,1
+BA:126,2
+BA:126,1
+BA:126,2
+BA:126,2
+BA:126,2
+BA:126,2
+BA:127,2
+BA:127,1
+BA:131,2
+BA:131,1
+BA:133,2
+BA:133,1
+BA:133,1
+BA:133,2
+BA:133,1
+BA:133,2
+BA:134,0
+BA:134,0
+BA:140,2
+BA:140,2
+BA:143,2
+BA:143,1
+BA:146,2
+BA:146,2
+LF:26
+LH:25
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/netbuffer.h
+FN:53,_ZN6wibble3sys9NetBufferC1ERKS1_
+FN:71,_ZNK6wibble3sys9NetBuffer4dataEj
+FN:74,_ZN6wibble3sys9NetBuffer4dataEj
+FN:77,_ZNK6wibble3sys9NetBuffer4sizeEv
+FN:84,_ZNK6wibble3sys9NetBuffer4fitsIsEEbj
+FN:84,_ZNK6wibble3sys9NetBuffer4fitsIxEEbj
+FN:49,_ZN6wibble3sys9NetBufferC1EPKvj
+FN:63,_ZN6wibble3sys9NetBufferaSERKS1_
+FN:36,_ZN6wibble3sys9NetBufferD1Ev
+FN:152,_ZN6wibble3sys9NetBuffer4skipEj
+FN:133,_ZN6wibble3sys9NetBufferpLEj
+FN:111,_ZNK6wibble3sys9NetBuffer5afterEj
+FN:103,_ZN6wibble3sys9NetBufferplEj
+FN:144,_ZN6wibble3sys9NetBuffer4skipIsEEvv
+FN:123,_ZNK6wibble3sys9NetBuffer5afterIsEEKS1_v
+FN:93,_ZNK6wibble3sys9NetBuffer4castIcEEPKT_j
+DA:36,6
+DA:49,2
+DA:50,2
+DA:53,4
+DA:54,4
+DA:63,5
+DA:65,5
+DA:66,5
+DA:67,5
+DA:71,7
+DA:74,8
+DA:77,23
+DA:84,2
+DA:86,2
+DA:93,7
+DA:95,7
+DA:96,0
+DA:97,7
+DA:103,1
+DA:104,0
+DA:105,1
+DA:111,2
+DA:112,0
+DA:113,2
+DA:114,2
+DA:115,0
+DA:123,1
+DA:125,1
+DA:126,1
+DA:127,0
+DA:133,1
+DA:134,0
+DA:135,1
+DA:136,1
+DA:144,1
+DA:146,1
+DA:147,1
+DA:152,6
+DA:153,0
+DA:154,6
+DA:155,0
+DA:156,6
+DA:157,6
+BA:95,1
+BA:95,2
+BA:154,1
+BA:154,2
+LF:43
+LH:35
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:52,_ZlsIcER12AssertFailedS1_T_
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:67,_Z12assert_eq_fnIjjEv8LocationT_T0_
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:67,_Z12assert_eq_fnIccEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,13
+DA:69,13
+DA:70,0
+DA:71,0
+DA:75,13
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+BA:69,1
+BA:69,2
+LF:26
+LH:3
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/netbuffer.test.h
+FN:27,_ZN13TestNetBuffer9skipBytesEv
+FN:15,_ZN13TestNetBuffer16startAtBeginningEv
+DA:15,1
+DA:16,1
+DA:18,1
+DA:19,2
+DA:21,2
+DA:22,2
+DA:23,2
+DA:24,1
+DA:27,1
+DA:28,1
+DA:30,1
+DA:32,1
+DA:33,2
+DA:35,1
+DA:36,1
+DA:37,2
+DA:38,2
+DA:40,2
+DA:41,1
+DA:42,2
+DA:43,2
+DA:45,1
+DA:46,1
+DA:47,1
+DA:48,2
+DA:49,2
+DA:51,2
+DA:52,1
+DA:53,2
+DA:54,2
+DA:56,1
+DA:57,1
+DA:58,1
+DA:59,2
+DA:60,2
+DA:62,2
+DA:63,1
+DA:64,2
+DA:65,2
+DA:66,1
+LF:40
+LH:40
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_sys_netbuffer.cpp
+FN:4,_Z41__static_initialization_and_destruction_0ii
+FN:4,_GLOBAL__I__Z30run_NetBuffer_startAtBeginningv
+FN:4,_Z23run_NetBuffer_skipBytesv
+FN:3,_Z30run_NetBuffer_startAtBeginningv
+DA:3,1
+DA:4,4
+BA:4,2
+BA:4,1
+BA:4,2
+BA:4,1
+LF:2
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:835,_ZNSs6appendEPKc
+FN:501,_ZNSsaSERKSs
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:67
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET0_T_SA_S9_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+LF:34
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:683,0
+DA:695,0
+DA:696,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+LF:17
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:377,0
+DA:378,0
+DA:386,0
+DA:387,0
+DA:395,0
+DA:396,0
+DA:404,0
+DA:405,0
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:526,0
+DA:527,0
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:49
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:286,0
+BA:286,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/exception
+FN:59,_ZNSt9exceptionC2Ev
+DA:59,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:464,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:195,_ZNSolsEj
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:464,0
+DA:465,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:25
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:263,_ZNK6wibble9exception11Consistency4typeEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:395,_ZN6wibble9exception6SystemD1Ev
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:265,_ZNK6wibble9exception11Consistency4descEv
+FN:261,_ZN6wibble9exception11ConsistencyD0Ev
+FN:261,_ZN6wibble9exception11ConsistencyD1Ev
+FN:109,_ZN6wibble9exception10AddContext7contextEv
+FN:117,_ZN6wibble9exception10AddContext11copyContextISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvT_
+FN:153,_ZN6wibble9exception7Context10addContextERKSs
+FN:147,_ZN6wibble9exception7ContextC2ERKSs
+FN:186,_ZN6wibble9exception7GenericC2ERKSs
+FN:259,_ZN6wibble9exception11ConsistencyC1ERKSsS3_
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+DA:109,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:113,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:137,0
+DA:147,0
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:186,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:259,0
+DA:260,0
+DA:261,0
+DA:263,0
+DA:265,0
+DA:266,0
+DA:267,0
+DA:268,0
+DA:269,0
+DA:395,0
+BA:110,0
+BA:110,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:267,0
+BA:267,0
+BA:395,0
+BA:395,0
+LF:45
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/stream/posix.h
+FN:90,_ZN6wibble6stream8PosixBuf8overflowEi
+FN:100,_ZN6wibble6stream8PosixBuf4syncEv
+FN:34,_ZN6wibble6stream8PosixBufD0Ev
+FN:34,_ZN6wibble6stream8PosixBufD1Ev
+FN:53,_ZN6wibble6stream8PosixBuf6attachEij
+FN:30,_ZN6wibble6stream8PosixBufC1Eij
+DA:30,1
+DA:32,1
+DA:33,1
+DA:34,1
+DA:35,1
+DA:36,1
+DA:38,1
+DA:39,1
+DA:41,1
+DA:43,1
+DA:45,1
+DA:53,1
+DA:55,1
+DA:56,1
+DA:57,0
+DA:58,1
+DA:59,1
+DA:60,1
+DA:61,1
+DA:90,0
+DA:92,0
+DA:93,0
+DA:95,0
+DA:96,0
+DA:98,0
+DA:100,2
+DA:102,2
+DA:104,1
+DA:105,1
+DA:106,1
+DA:107,0
+DA:108,1
+DA:110,2
+BA:36,0
+BA:36,0
+BA:36,2
+BA:36,1
+BA:39,0
+BA:39,0
+BA:39,2
+BA:39,1
+BA:41,0
+BA:41,0
+BA:41,2
+BA:41,1
+BA:45,0
+BA:45,0
+BA:45,1
+BA:45,2
+BA:56,1
+BA:56,2
+BA:93,0
+BA:93,0
+BA:102,2
+BA:102,2
+BA:106,1
+BA:106,2
+LF:33
+LH:25
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:17,_ZN8LocationC1EPKciSs
+FN:13,_ZN8LocationC1ERKS_
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:59,_Z9assert_fnIbEv8LocationT_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+LF:18
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/stream/posix.test.h
+FN:18,_ZN12_GLOBAL__N_115TestStreamPosix10basicMatchEv
+DA:18,1
+DA:19,1
+DA:20,1
+DA:22,1
+DA:23,1
+DA:25,1
+DA:26,1
+DA:27,1
+DA:28,1
+LF:9
+LH:9
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_stream_posix.cpp
+FN:3,_Z41__static_initialization_and_destruction_0ii
+FN:3,_GLOBAL__I__Z26run_StreamPosix_basicMatchv
+FN:3,_Z26run_StreamPosix_basicMatchv
+DA:3,4
+BA:3,2
+BA:3,1
+BA:3,2
+BA:3,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:67
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:287,_ZNSt11char_traitsIcE11to_int_typeERKc
+FN:291,_ZNSt11char_traitsIcE11eq_int_typeERKiS2_
+FN:295,_ZNSt11char_traitsIcE3eofEv
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+DA:287,0
+DA:288,0
+DA:291,0
+DA:292,0
+DA:295,0
+LF:11
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/postypes.h
+FN:112,_ZNSt4fposI11__mbstate_tEC1Ex
+DA:112,0
+DA:113,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET0_T_SA_S9_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+LF:34
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:683,0
+DA:695,0
+DA:696,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+LF:17
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:377,0
+DA:378,0
+DA:386,0
+DA:387,0
+DA:395,0
+DA:396,0
+DA:404,0
+DA:405,0
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:526,0
+DA:527,0
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:49
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:286,0
+BA:286,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/exception
+FN:59,_ZNSt9exceptionC2Ev
+DA:59,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:86,_ZNSoC1EPSt15basic_streambufIcSt11char_traitsIcEE
+FN:95,_ZNSoD1Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:86,0
+DA:87,0
+DA:95,0
+DA:112,0
+DA:117,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:25
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:536,_ZNSt15basic_streambufIcSt11char_traitsIcEE4setpEPcS3_
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:526,_ZNSt15basic_streambufIcSt11char_traitsIcEE5pbumpEi
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:557,_ZNSt15basic_streambufIcSt11char_traitsIcEE5imbueERKSt6locale
+FN:572,_ZNSt15basic_streambufIcSt11char_traitsIcEE6setbufEPci
+FN:630,_ZNSt15basic_streambufIcSt11char_traitsIcEE9showmanycEv
+FN:668,_ZNSt15basic_streambufIcSt11char_traitsIcEE9underflowEv
+FN:705,_ZNSt15basic_streambufIcSt11char_traitsIcEE9pbackfailEi
+FN:596,_ZNSt15basic_streambufIcSt11char_traitsIcEE7seekposESt4fposI11__mbstate_tESt13_Ios_Openmode
+FN:584,_ZNSt15basic_streambufIcSt11char_traitsIcEE7seekoffExSt12_Ios_SeekdirSt13_Ios_Openmode
+FN:466,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4gptrEv
+FN:479,_ZNSt15basic_streambufIcSt11char_traitsIcEE5gbumpEi
+FN:681,_ZNSt15basic_streambufIcSt11char_traitsIcEE5uflowEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:466,0
+DA:469,0
+DA:479,0
+DA:510,0
+DA:513,0
+DA:526,0
+DA:536,0
+DA:538,0
+DA:539,0
+DA:540,0
+DA:557,0
+DA:558,0
+DA:572,0
+DA:573,0
+DA:584,0
+DA:585,0
+DA:596,0
+DA:597,0
+DA:630,0
+DA:668,0
+DA:669,0
+DA:681,0
+DA:683,0
+DA:685,0
+DA:686,0
+DA:688,0
+DA:689,0
+DA:691,0
+DA:705,0
+DA:706,0
+BA:198,0
+BA:198,0
+BA:686,0
+BA:686,0
+LF:35
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/list.h
+FN:297,_ZN6wibble4list8SingularIiEC1Ei
+FN:330,_ZN6wibble4list8singularIiEENS0_8SingularIT_EERKS3_
+FN:310,_ZN6wibble4list6AppendINS0_8SingularIiEES3_EC1ES3_S3_
+FN:335,_ZN6wibble4list6appendINS0_8SingularIiEES3_EENS0_6AppendIT_T0_EERKS5_RKS6_
+FN:286,_ZNK6wibble4list5EmptyIiE5emptyEv
+FN:285,_ZNK6wibble4list5EmptyIiE4headEv
+FN:287,_ZNK6wibble4list5EmptyIiE4tailEv
+FN:299,_ZNK6wibble4list8SingularIiE5emptyEv
+FN:298,_ZNK6wibble4list8SingularIiE4headEv
+FN:317,_ZNK6wibble4list6AppendINS0_8SingularIiEES3_E5emptyEv
+FN:311,_ZNK6wibble4list6AppendINS0_8SingularIiEES3_E4headEv
+FN:296,_ZN6wibble4list8SingularIiEC1Ev
+FN:300,_ZNK6wibble4list8SingularIiE4tailEv
+FN:318,_ZNK6wibble4list6AppendINS0_8SingularIiEES3_E4tailEv
+DA:285,0
+DA:286,0
+DA:287,0
+DA:296,0
+DA:297,0
+DA:298,0
+DA:299,0
+DA:300,0
+DA:310,0
+DA:311,0
+DA:312,0
+DA:313,0
+DA:314,0
+DA:317,0
+DA:318,0
+DA:319,0
+DA:320,0
+DA:321,0
+DA:323,0
+DA:330,0
+DA:331,0
+DA:335,0
+DA:336,0
+BA:312,0
+BA:312,0
+BA:317,0
+BA:317,0
+BA:317,0
+BA:317,0
+BA:320,0
+BA:320,0
+LF:23
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/operators.h
+FN:29,_ZN6wibble9operatorsplISt23_Rb_tree_const_iteratorIiEEET_RKS4_NS4_15difference_typeE
+DA:29,0
+DA:30,0
+DA:31,0
+LF:3
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/string.h
+FN:336,_ZNK6wibble3str5Split14const_iteratordeEv
+FN:344,_ZNK6wibble3str5Split14const_iteratoreqERKS2_
+FN:350,_ZNK6wibble3str5Split14const_iteratorneERKS2_
+FN:420,_ZNK6wibble3str10YamlStream14const_iteratorptEv
+FN:424,_ZNK6wibble3str10YamlStream14const_iteratoreqERKS2_
+FN:428,_ZNK6wibble3str10YamlStream14const_iteratorneERKS2_
+FN:298,_ZN6wibble3str5Split14const_iteratorC1ERKSsS4_b
+FN:367,_ZNK6wibble3str5Split3endEv
+FN:287,_ZN6wibble3str5Split14const_iteratorC1ERKS2_
+FN:405,_ZN6wibble3str10YamlStream14const_iteratoraSERKS2_
+FN:434,_ZN6wibble3str10YamlStream5beginERSi
+FN:71,_ZN6wibble3str3fmtIiEESsRKT_
+FN:71,_ZN6wibble3str3fmtIA5_cEESsRKT_
+FN:412,_ZN6wibble3str10YamlStream14const_iteratorC1Ev
+FN:435,_ZN6wibble3str10YamlStream3endEv
+FN:405,_ZN6wibble3str10YamlStream14const_iteratorD1Ev
+FN:361,_ZN6wibble3str5SplitC1ERKSsS3_
+FN:287,_ZN6wibble3str5Split14const_iteratorD1Ev
+FN:280,_ZN6wibble3str5SplitD1Ev
+FN:44,_ZN6wibble3strlsINS_4list5EmptyIiEEEERNS_5TPairISoNT_4TypeEE5FirstERSoS6_
+FN:71,_ZN6wibble3str3fmtINS_4list5EmptyIiEEEESsRKT_
+FN:44,_ZN6wibble3strlsINS_4list8SingularIiEEEERNS_5TPairISoNT_4TypeEE5FirstERSoS6_
+FN:71,_ZN6wibble3str3fmtINS_4list8SingularIiEEEESsRKT_
+FN:44,_ZN6wibble3strlsINS_4list6AppendINS2_8SingularIiEES5_EEEERNS_5TPairISoNT_4TypeEE5FirstERSoS8_
+FN:71,_ZN6wibble3str3fmtINS_4list6AppendINS2_8SingularIiEES5_EEEESsRKT_
+FN:300,_ZN6wibble3str5Split14const_iteratorppEv
+FN:294,_ZN6wibble3str5Split14const_iteratorC1ERKSsS4_
+FN:366,_ZNK6wibble3str5Split5beginEv
+FN:371,_ZN6wibble3str4joinINS0_5Split14const_iteratorEEESsRKT_S6_RKSs
+FN:328,_ZNK6wibble3str5Split14const_iterator9remainderEv
+FN:153,_ZN6wibble3str8endsWithERKSsS2_
+FN:145,_ZN6wibble3str10startsWithERKSsS2_
+FN:166,_ZN6wibble3str4trimIFiiEEESsRKSsRKT_
+FN:184,_ZN6wibble3str4trimERKSs
+FN:236,_ZN6wibble3str8joinpathERKSsS2_
+FN:207,_ZN6wibble3str7toupperERKSs
+FN:217,_ZN6wibble3str7tolowerERKSs
+FN:227,_ZN6wibble3str7ucfirstERKSs
+FN:125,_ZN6wibble3str7dirnameERKSs
+FN:115,_ZN6wibble3str8basenameERKSs
+FN:84,_ZN6wibble3str13fmt_containerISt6vectorIiSaIiEEEESsRKT_cc
+FN:110,_ZN6wibble3str3fmtIiEESsRKSt6vectorIT_SaIS3_EE
+FN:84,_ZN6wibble3str13fmt_containerISt3setIiSt4lessIiESaIiEEEESsRKT_cc
+FN:104,_ZN6wibble3str3fmtIiEESsRKSt3setIT_St4lessIS3_ESaIS3_EE
+FN:71,_ZN6wibble3str3fmtIdEESsRKT_
+DA:44,3
+DA:46,3
+DA:47,1
+DA:49,2
+DA:50,7
+DA:51,3
+DA:52,3
+DA:53,1
+DA:54,3
+DA:56,2
+DA:71,23
+DA:73,23
+DA:74,23
+DA:75,23
+DA:84,8
+DA:86,8
+DA:87,8
+DA:88,8
+DA:89,2
+DA:91,6
+DA:92,18
+DA:93,12
+DA:94,12
+DA:95,6
+DA:97,6
+DA:98,6
+DA:99,6
+DA:104,4
+DA:105,4
+DA:110,4
+DA:111,4
+DA:115,4
+DA:117,4
+DA:118,4
+DA:119,1
+DA:121,3
+DA:125,5
+DA:127,5
+DA:128,5
+DA:129,1
+DA:130,4
+DA:132,1
+DA:134,3
+DA:145,5
+DA:147,5
+DA:148,1
+DA:149,4
+DA:153,5
+DA:155,5
+DA:156,1
+DA:157,4
+DA:166,11
+DA:168,11
+DA:169,0
+DA:171,11
+DA:172,11
+DA:173,40
+DA:174,18
+DA:175,36
+DA:176,14
+DA:178,11
+DA:184,9
+DA:186,9
+DA:207,4
+DA:209,4
+DA:210,4
+DA:211,20
+DA:212,16
+DA:213,0
+DA:217,8
+DA:219,8
+DA:220,8
+DA:221,36
+DA:222,28
+DA:223,0
+DA:227,4
+DA:229,4
+DA:230,4
+DA:231,4
+DA:232,4
+DA:236,12
+DA:238,12
+DA:239,0
+DA:240,12
+DA:241,0
+DA:243,12
+DA:244,4
+DA:245,1
+DA:247,3
+DA:249,8
+DA:250,1
+DA:252,7
+DA:280,18
+DA:287,92
+DA:294,18
+DA:296,18
+DA:297,18
+DA:298,72
+DA:300,78
+DA:302,78
+DA:303,18
+DA:307,60
+DA:308,3
+DA:309,1
+DA:311,2
+DA:313,57
+DA:314,60
+DA:316,10
+DA:317,10
+DA:321,50
+DA:322,50
+DA:325,78
+DA:328,8
+DA:330,8
+DA:331,0
+DA:333,8
+DA:336,112
+DA:338,112
+DA:344,4
+DA:348,4
+DA:350,72
+DA:354,72
+DA:361,18
+DA:366,18
+DA:367,72
+DA:371,1
+DA:373,1
+DA:374,1
+DA:375,5
+DA:377,4
+DA:378,1
+DA:380,3
+DA:381,5
+DA:383,1
+DA:405,23
+DA:412,13
+DA:420,14
+DA:422,14
+DA:424,6
+DA:426,6
+DA:428,7
+DA:430,7
+DA:434,6
+DA:435,13
+BA:46,2
+BA:46,1
+BA:46,1
+BA:46,2
+BA:46,1
+BA:46,2
+BA:50,0
+BA:50,0
+BA:50,2
+BA:50,2
+BA:50,2
+BA:50,2
+BA:52,0
+BA:52,0
+BA:52,1
+BA:52,2
+BA:52,2
+BA:52,2
+BA:88,2
+BA:88,2
+BA:88,2
+BA:88,2
+BA:92,2
+BA:92,2
+BA:92,2
+BA:92,2
+BA:94,2
+BA:94,1
+BA:94,2
+BA:94,2
+BA:94,2
+BA:94,2
+BA:94,2
+BA:94,1
+BA:94,2
+BA:94,2
+BA:94,2
+BA:94,2
+BA:118,2
+BA:118,2
+BA:128,2
+BA:128,2
+BA:130,2
+BA:130,2
+BA:147,2
+BA:147,2
+BA:155,2
+BA:155,2
+BA:168,1
+BA:168,2
+BA:173,2
+BA:173,2
+BA:173,2
+BA:173,2
+BA:173,2
+BA:173,2
+BA:175,2
+BA:175,2
+BA:175,2
+BA:175,2
+BA:175,2
+BA:175,2
+BA:211,2
+BA:211,2
+BA:221,2
+BA:221,2
+BA:229,1
+BA:229,2
+BA:238,1
+BA:238,2
+BA:240,1
+BA:240,2
+BA:243,2
+BA:243,2
+BA:244,2
+BA:244,2
+BA:249,2
+BA:249,2
+BA:302,2
+BA:302,2
+BA:307,2
+BA:307,2
+BA:308,2
+BA:308,2
+BA:314,2
+BA:314,2
+BA:330,1
+BA:330,2
+BA:375,2
+BA:375,2
+BA:377,2
+BA:377,2
+LF:144
+LH:138
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:67,_Z12assert_eq_fnISsPKcEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:75,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+LF:26
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/string.test.h
+FN:324,_ZN12_GLOBAL__N_110TestString12yamlCommentsEv
+FN:273,_ZN12_GLOBAL__N_110TestString4yamlEv
+FN:46,_ZN12_GLOBAL__N_110TestString7fmtListEv
+FN:247,_ZN12_GLOBAL__N_110TestString6base64Ev
+FN:230,_ZN12_GLOBAL__N_110TestString8normpathEv
+FN:160,_ZN12_GLOBAL__N_110TestString6split1Ev
+FN:222,_ZN12_GLOBAL__N_110TestString4joinEv
+FN:198,_ZN12_GLOBAL__N_110TestString6split4Ev
+FN:180,_ZN12_GLOBAL__N_110TestString6split3Ev
+FN:168,_ZN12_GLOBAL__N_110TestString6split2Ev
+FN:125,_ZN12_GLOBAL__N_110TestString8endsWithEv
+FN:116,_ZN12_GLOBAL__N_110TestString10startsWithEv
+FN:85,_ZN12_GLOBAL__N_110TestString5trim2Ev
+FN:72,_ZN12_GLOBAL__N_110TestString4trimEv
+FN:142,_ZN12_GLOBAL__N_110TestString9urlencodeEv
+FN:134,_ZN12_GLOBAL__N_110TestString8joinpathEv
+FN:99,_ZN12_GLOBAL__N_110TestString7toupperEv
+FN:107,_ZN12_GLOBAL__N_110TestString7ucfirstEv
+FN:91,_ZN12_GLOBAL__N_110TestString7tolowerEv
+FN:63,_ZN12_GLOBAL__N_110TestString7dirnameEv
+FN:55,_ZN12_GLOBAL__N_110TestString8basenameEv
+FN:34,_ZN12_GLOBAL__N_110TestString6fmtVecEv
+FN:22,_ZN12_GLOBAL__N_110TestString6fmtSetEv
+FN:15,_ZN12_GLOBAL__N_110TestString3fmtEv
+DA:15,1
+DA:17,1
+DA:18,2
+DA:19,2
+DA:20,1
+DA:22,1
+DA:24,1
+DA:25,1
+DA:26,1
+DA:27,1
+DA:28,1
+DA:29,1
+DA:30,1
+DA:31,1
+DA:32,1
+DA:34,1
+DA:36,1
+DA:37,1
+DA:38,1
+DA:39,1
+DA:40,1
+DA:41,1
+DA:42,1
+DA:43,1
+DA:44,1
+DA:46,1
+DA:48,1
+DA:49,2
+DA:52,2
+DA:53,1
+DA:55,1
+DA:57,1
+DA:58,2
+DA:59,2
+DA:60,2
+DA:61,1
+DA:63,1
+DA:65,1
+DA:66,2
+DA:67,2
+DA:68,2
+DA:69,2
+DA:70,1
+DA:72,1
+DA:74,1
+DA:75,2
+DA:76,2
+DA:77,2
+DA:78,2
+DA:79,2
+DA:80,2
+DA:81,2
+DA:82,2
+DA:83,1
+DA:85,1
+DA:87,1
+DA:88,2
+DA:89,1
+DA:91,1
+DA:93,1
+DA:94,2
+DA:95,2
+DA:96,2
+DA:97,1
+DA:99,1
+DA:101,1
+DA:102,2
+DA:103,2
+DA:104,2
+DA:105,1
+DA:107,1
+DA:109,1
+DA:110,2
+DA:111,2
+DA:112,2
+DA:113,1
+DA:116,1
+DA:118,1
+DA:119,2
+DA:120,2
+DA:121,2
+DA:122,2
+DA:123,1
+DA:125,1
+DA:127,1
+DA:128,2
+DA:129,2
+DA:130,2
+DA:131,2
+DA:132,1
+DA:134,1
+DA:136,1
+DA:137,2
+DA:138,2
+DA:139,2
+DA:140,1
+DA:142,1
+DA:144,1
+DA:145,2
+DA:146,2
+DA:147,2
+DA:149,2
+DA:150,2
+DA:151,2
+DA:152,2
+DA:153,2
+DA:154,2
+DA:156,2
+DA:157,2
+DA:158,1
+DA:160,1
+DA:162,1
+DA:163,2
+DA:164,1
+DA:165,1
+DA:166,1
+DA:168,1
+DA:170,1
+DA:171,2
+DA:172,1
+DA:173,1
+DA:174,1
+DA:175,1
+DA:176,1
+DA:177,1
+DA:178,1
+DA:180,1
+DA:182,1
+DA:183,2
+DA:184,1
+DA:185,1
+DA:186,1
+DA:187,1
+DA:188,1
+DA:189,1
+DA:190,1
+DA:191,1
+DA:192,1
+DA:193,1
+DA:194,1
+DA:195,1
+DA:196,1
+DA:198,1
+DA:200,1
+DA:201,2
+DA:202,1
+DA:203,1
+DA:204,1
+DA:205,1
+DA:206,1
+DA:207,1
+DA:208,1
+DA:209,1
+DA:210,1
+DA:211,1
+DA:212,1
+DA:213,1
+DA:214,1
+DA:215,1
+DA:216,1
+DA:217,1
+DA:218,1
+DA:219,1
+DA:220,1
+DA:222,1
+DA:224,1
+DA:225,2
+DA:226,2
+DA:227,2
+DA:228,1
+DA:230,1
+DA:232,1
+DA:233,2
+DA:234,2
+DA:235,2
+DA:236,2
+DA:237,2
+DA:238,2
+DA:239,2
+DA:240,2
+DA:241,2
+DA:242,2
+DA:243,2
+DA:244,2
+DA:245,1
+DA:247,1
+DA:250,1
+DA:251,2
+DA:252,2
+DA:253,2
+DA:254,2
+DA:255,2
+DA:256,2
+DA:257,2
+DA:258,2
+DA:259,2
+DA:261,2
+DA:262,2
+DA:263,2
+DA:264,2
+DA:265,2
+DA:266,2
+DA:267,2
+DA:268,2
+DA:269,2
+DA:270,2
+DA:271,1
+DA:273,1
+DA:285,1
+DA:286,1
+DA:288,1
+DA:289,1
+DA:290,1
+DA:291,1
+DA:293,1
+DA:294,1
+DA:295,1
+DA:299,1
+DA:301,1
+DA:302,1
+DA:303,1
+DA:307,1
+DA:309,1
+DA:310,1
+DA:312,1
+DA:313,1
+DA:314,1
+DA:315,1
+DA:317,1
+DA:318,1
+DA:320,1
+DA:321,1
+DA:322,1
+DA:324,1
+DA:336,1
+DA:337,1
+DA:339,1
+DA:340,1
+DA:341,1
+DA:342,1
+DA:344,1
+DA:345,1
+DA:346,1
+DA:350,1
+DA:352,1
+DA:353,1
+DA:355,1
+DA:356,1
+DA:357,1
+DA:358,1
+DA:360,1
+DA:361,1
+DA:363,1
+DA:364,1
+DA:365,1
+LF:255
+LH:255
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_string.cpp
+FN:26,_Z41__static_initialization_and_destruction_0ii
+FN:26,_GLOBAL__I__Z14run_String_fmtv
+FN:26,_Z23run_String_yamlCommentsv
+FN:25,_Z15run_String_yamlv
+FN:6,_Z18run_String_fmtListv
+FN:24,_Z17run_String_base64v
+FN:23,_Z19run_String_normpathv
+FN:18,_Z17run_String_split1v
+FN:22,_Z15run_String_joinv
+FN:21,_Z17run_String_split4v
+FN:20,_Z17run_String_split3v
+FN:19,_Z17run_String_split2v
+FN:15,_Z19run_String_endsWithv
+FN:14,_Z21run_String_startsWithv
+FN:10,_Z16run_String_trim2v
+FN:9,_Z15run_String_trimv
+FN:17,_Z20run_String_urlencodev
+FN:16,_Z19run_String_joinpathv
+FN:12,_Z18run_String_toupperv
+FN:13,_Z18run_String_ucfirstv
+FN:11,_Z18run_String_tolowerv
+FN:8,_Z18run_String_dirnamev
+FN:7,_Z19run_String_basenamev
+FN:5,_Z17run_String_fmtVecv
+FN:4,_Z17run_String_fmtSetv
+FN:3,_Z14run_String_fmtv
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,1
+DA:7,1
+DA:8,1
+DA:9,1
+DA:10,1
+DA:11,1
+DA:12,1
+DA:13,1
+DA:14,1
+DA:15,1
+DA:16,1
+DA:17,1
+DA:18,1
+DA:19,1
+DA:20,1
+DA:21,1
+DA:22,1
+DA:23,1
+DA:24,1
+DA:25,1
+DA:26,4
+BA:26,2
+BA:26,1
+BA:26,2
+BA:26,1
+LF:24
+LH:24
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeIiEED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaIiED2Ev
+FN:106,_ZNSaIiED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeIiEEC2Ev
+FN:98,_ZNSaIiEC2Ev
+FN:104,_ZNSaIiEC1ISt13_Rb_tree_nodeIiEEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:104,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:7
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:701,_ZNKSsixEj
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:543,_ZNKSs5beginEv
+FN:562,_ZNKSs3endEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:192,_ZNKSs4_Rep12_M_is_sharedEv
+FN:652,_ZNKSs8capacityEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:1579,_ZNKSs4findERKSsj
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+FN:2136,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:773,_ZNSspLERKSs
+FN:870,_ZNSs9push_backEc
+FN:791,_ZNSspLEc
+FN:1651,_ZNKSs5rfindEPKcj
+FN:835,_ZNSs6appendEPKc
+FN:782,_ZNSspLEPKc
+DA:178,0
+DA:183,0
+DA:184,0
+DA:192,0
+DA:193,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:543,0
+DA:544,0
+DA:562,0
+DA:563,0
+DA:606,0
+DA:607,0
+DA:652,0
+DA:653,0
+DA:686,0
+DA:687,0
+DA:701,0
+DA:704,0
+DA:773,0
+DA:774,0
+DA:782,0
+DA:783,0
+DA:791,0
+DA:793,0
+DA:794,0
+DA:835,0
+DA:838,0
+DA:870,0
+DA:872,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:877,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1579,0
+DA:1580,0
+DA:1651,0
+DA:1654,0
+DA:1923,0
+DA:1925,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2136,9
+DA:2140,9
+DA:2141,9
+DA:2142,0
+DA:2162,0
+DA:2165,0
+DA:2188,0
+DA:2189,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:308,0
+BA:308,0
+BA:341,0
+BA:341,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:101
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:121,_ZStanSt13_Ios_OpenmodeS_
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:121,0
+DA:122,0
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIPiLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:268,_ZNSt12__niter_baseIPiLb0EE3__bES0_
+FN:569,_ZNSt20__copy_move_backwardILb0ELb1ESt26random_access_iterator_tagE13__copy_move_bIiEEPT_PKS3_S6_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPiS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPiS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPiS0_ET0_T_S2_S1_
+FN:375,_ZNSt11__copy_moveILb0ELb1ESt26random_access_iterator_tagE8__copy_mIiEEPT_PKS3_S6_S4_
+FN:385,_ZSt13__copy_move_aILb0EPiS0_ET1_T0_S2_S1_
+FN:430,_ZSt14__copy_move_a2ILb0EPiS0_ET1_T0_S2_S1_
+FN:456,_ZSt4copyIPiS0_ET0_T_S2_S1_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,0
+DA:269,0
+DA:286,0
+DA:287,0
+DA:375,0
+DA:377,0
+DA:379,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:569,0
+DA:571,0
+DA:572,0
+DA:573,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+LF:29
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:97,_ZSt8_DestroyIPiEvT_S1_
+FN:126,_ZSt8_DestroyIPiiEvT_S1_RSaIT0_E
+DA:97,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:469,_ZNKSt9_IdentityIiEclERKi
+FN:229,_ZNKSt4lessIiEclERKiS2_
+DA:229,0
+DA:230,0
+DA:469,0
+DA:470,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPKcSsEppEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPKcSsEdeEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKcSsEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKcSsE4baseEv
+FN:781,_ZN9__gnu_cxxneIPKcSsEEbRKNS_17__normal_iteratorIT_T0_EES8_
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPKiSt6vectorIiSaIiEEEppEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPKiSt6vectorIiSaIiEEEdeEv
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEE4baseEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEdeEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEC1ERKS1_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKiSt6vectorIiSaIiEEEC1ERKS2_
+FN:735,_ZNK9__gnu_cxx17__normal_iteratorIPKiSt6vectorIiSaIiEEEplERS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKiSt6vectorIiSaIiEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKiSt6vectorIiSaIiEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:781,_ZN9__gnu_cxxneIPKiSt6vectorIiSaIiEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+DA:683,38
+DA:695,918
+DA:696,918
+DA:703,238
+DA:705,238
+DA:706,238
+DA:735,6
+DA:736,6
+DA:747,576
+DA:748,576
+DA:769,4
+DA:770,4
+DA:781,284
+DA:782,284
+LF:14
+LH:14
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+FN:135,_ZSt9__advanceISt23_Rb_tree_const_iteratorIiEiEvRT_T0_St26bidirectional_iterator_tag
+FN:173,_ZSt7advanceISt23_Rb_tree_const_iteratorIiEiEvRT_T0_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+DA:135,0
+DA:140,0
+DA:141,0
+DA:142,0
+DA:144,0
+DA:145,0
+DA:146,0
+DA:173,0
+DA:176,0
+DA:177,0
+DA:178,0
+BA:140,0
+BA:140,0
+BA:141,0
+BA:141,0
+BA:144,0
+BA:144,0
+LF:15
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:166,_ZSt19__iterator_categoryISt23_Rb_tree_const_iteratorIiEENSt15iterator_traitsIT_E17iterator_categoryERKS3_
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:166,0
+DA:167,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIiEbEC1ERKS1_RKb
+FN:73,_ZNSt4pairISsSsEaSERKS0_
+FN:84,_ZNSt4pairISsSsEC1Ev
+FN:73,_ZNSt4pairISsSsED1Ev
+DA:73,23
+DA:84,19
+DA:85,19
+DA:88,0
+DA:89,0
+LF:5
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:261,_ZNKSt3setIiSt4lessIiESaIiEE5beginEv
+FN:331,_ZNKSt3setIiSt4lessIiESaIiEE5emptyEv
+FN:270,_ZNKSt3setIiSt4lessIiESaIiEE3endEv
+FN:141,_ZNSt3setIiSt4lessIiESaIiEEC1Ev
+FN:93,_ZNSt3setIiSt4lessIiESaIiEED1Ev
+FN:405,_ZNSt3setIiSt4lessIiESaIiEE6insertESt23_Rb_tree_const_iteratorIiERKi
+DA:93,0
+DA:141,0
+DA:142,0
+DA:261,0
+DA:262,0
+DA:270,0
+DA:271,0
+DA:331,7
+DA:332,7
+DA:405,0
+DA:406,0
+LF:11
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:452,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorIiEC1ERKSt17_Rb_tree_iteratorIiE
+FN:398,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_S_leftEPSt18_Rb_tree_node_base
+FN:289,_ZNKSt23_Rb_tree_const_iteratorIiEneERKS0_
+FN:247,_ZNKSt23_Rb_tree_const_iteratorIiEdeEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorIiEC1EPKSt13_Rb_tree_nodeIiE
+FN:603,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5beginEv
+FN:463,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_M_endEv
+FN:444,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE12_M_rightmostEv
+FN:641,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE4sizeEv
+FN:436,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_leftmostEv
+FN:491,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_rightEPKSt18_Rb_tree_node_base
+FN:168,_ZNSt17_Rb_tree_iteratorIiEC1EPSt13_Rb_tree_nodeIiE
+FN:415,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:637,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5emptyEv
+FN:614,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE3endEv
+FN:495,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_S_keyEPKSt18_Rb_tree_node_base
+FN:596,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorIiEeqERKS0_
+FN:403,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEEC1Ev
+FN:347,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE21_M_get_Node_allocatorEv
+FN:471,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_valueEPKSt13_Rb_tree_nodeIiE
+FN:475,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_S_keyEPKSt13_Rb_tree_nodeIiE
+FN:351,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13get_allocatorEv
+FN:360,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_put_nodeEPSt13_Rb_tree_nodeIiE
+FN:388,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE15_M_destroy_nodeEPSt13_Rb_tree_nodeIiE
+FN:936,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_eraseEPSt13_Rb_tree_nodeIiE
+FN:584,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEED1Ev
+FN:356,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE14_M_create_nodeERKi
+FN:270,_ZNSt23_Rb_tree_const_iteratorIiEmmEv
+FN:255,_ZNSt23_Rb_tree_const_iteratorIiEppEv
+FN:846,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_M_insert_EPKSt18_Rb_tree_node_baseS8_RKi
+FN:195,_ZNSt17_Rb_tree_iteratorIiEmmEv
+FN:1133,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE16_M_insert_uniqueERKi
+FN:1178,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE17_M_insert_unique_ESt23_Rb_tree_const_iteratorIiERKi
+DA:168,0
+DA:169,0
+DA:195,0
+DA:197,0
+DA:198,0
+DA:210,0
+DA:211,0
+DA:240,0
+DA:241,0
+DA:243,0
+DA:244,0
+DA:247,0
+DA:248,0
+DA:255,0
+DA:257,0
+DA:258,0
+DA:270,0
+DA:272,0
+DA:273,0
+DA:289,88
+DA:290,88
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:356,0
+DA:357,0
+DA:360,0
+DA:361,0
+DA:364,0
+DA:366,0
+DA:368,0
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,0
+DA:388,0
+DA:390,0
+DA:391,0
+DA:392,0
+DA:398,0
+DA:403,0
+DA:405,0
+DA:406,0
+DA:415,0
+DA:417,0
+DA:418,0
+DA:419,0
+DA:420,0
+DA:421,0
+DA:436,0
+DA:437,0
+DA:444,0
+DA:445,0
+DA:452,0
+DA:453,0
+DA:463,0
+DA:464,0
+DA:471,0
+DA:472,0
+DA:475,0
+DA:476,0
+DA:479,0
+DA:480,0
+DA:487,0
+DA:488,0
+DA:491,0
+DA:492,0
+DA:495,0
+DA:496,0
+DA:499,0
+DA:500,0
+DA:562,0
+DA:584,0
+DA:585,0
+DA:596,0
+DA:599,0
+DA:603,0
+DA:606,0
+DA:614,0
+DA:617,0
+DA:637,7
+DA:638,7
+DA:641,0
+DA:642,0
+DA:846,0
+DA:850,0
+DA:852,0
+DA:854,0
+DA:857,0
+DA:858,0
+DA:936,0
+DA:939,0
+DA:941,0
+DA:942,0
+DA:943,0
+DA:944,0
+DA:946,0
+DA:1133,0
+DA:1135,0
+DA:1136,0
+DA:1137,0
+DA:1138,0
+DA:1140,0
+DA:1141,0
+DA:1142,0
+DA:1144,0
+DA:1145,0
+DA:1147,0
+DA:1148,0
+DA:1150,0
+DA:1152,0
+DA:1153,0
+DA:1154,0
+DA:1178,0
+DA:1181,0
+DA:1183,0
+DA:1186,0
+DA:1188,0
+DA:1190,0
+DA:1194,0
+DA:1195,0
+DA:1196,0
+DA:1197,0
+DA:1200,0
+DA:1201,0
+DA:1204,0
+DA:1207,0
+DA:1209,0
+DA:1213,0
+DA:1214,0
+DA:1215,0
+DA:1216,0
+DA:1219,0
+DA:1220,0
+DA:1222,0
+DA:1225,0
+DA:1230,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:939,0
+BA:939,0
+BA:1138,0
+BA:1138,0
+BA:1142,0
+BA:1142,0
+BA:1145,0
+BA:1145,0
+BA:1147,0
+BA:1147,0
+BA:1152,0
+BA:1152,0
+BA:1181,0
+BA:1181,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1190,0
+BA:1190,0
+BA:1195,0
+BA:1195,0
+BA:1197,0
+BA:1197,0
+BA:1200,0
+BA:1200,0
+BA:1209,0
+BA:1209,0
+BA:1214,0
+BA:1214,0
+BA:1216,0
+BA:1216,0
+BA:1219,0
+BA:1219,0
+LF:138
+LH:4
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:97,_ZNSt20__uninitialized_copyILb1EE18uninitialized_copyIPiS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPiS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPiS0_iET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPiS0_SaIiEET0_T_S3_S2_RT1_
+DA:97,0
+DA:98,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseIiSaIiEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorIiSaIiEE3endEv
+FN:79,_ZNSt12_Vector_baseIiSaIiEE12_Vector_implD1Ev
+FN:386,_ZNKSt6vectorIiSaIiEE5beginEv
+FN:404,_ZNKSt6vectorIiSaIiEE3endEv
+FN:526,_ZNKSt6vectorIiSaIiEE5emptyEv
+FN:484,_ZNKSt6vectorIiSaIiEE4sizeEv
+FN:84,_ZNSt12_Vector_baseIiSaIiEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIiSaIiEEC2Ev
+FN:213,_ZNSt6vectorIiSaIiEEC1Ev
+FN:101,_ZNKSt12_Vector_baseIiSaIiEE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorIiSaIiEE8max_sizeEv
+FN:147,_ZNSt12_Vector_baseIiSaIiEE13_M_deallocateEPij
+FN:135,_ZNSt12_Vector_baseIiSaIiEED2Ev
+FN:299,_ZNSt6vectorIiSaIiEED1Ev
+FN:1075,_ZNKSt6vectorIiSaIiEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseIiSaIiEE11_M_allocateEj
+FN:686,_ZNSt6vectorIiSaIiEE9push_backERKi
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:386,7
+DA:387,7
+DA:395,0
+DA:396,0
+DA:404,25
+DA:405,25
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:526,4
+DA:527,4
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:47
+LH:6
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorIiSaIiEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPiS1_EERKi
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:286,0
+BA:286,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorIiE9constructEPiRKi
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:118,_ZN9__gnu_cxx13new_allocatorIiE7destroyEPi
+FN:76,_ZN9__gnu_cxx13new_allocatorIiED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIiEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorIiE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE8max_sizeEv
+FN:97,_ZN9__gnu_cxx13new_allocatorIiE10deallocateEPij
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE10deallocateEPS2_j
+FN:87,_ZN9__gnu_cxx13new_allocatorIiE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE8allocateEjPKv
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+DA:118,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+DA:105,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:213,_ZNSolsEd
+DA:95,0
+DA:112,0
+DA:117,0
+DA:213,0
+DA:214,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:158,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE17_M_stringbuf_initESt13_Ios_Openmode
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:110,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ERKSsSt13_Ios_Openmode
+FN:526,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ERKSsSt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:158,0
+DA:160,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:164,0
+DA:165,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:526,0
+DA:527,0
+DA:528,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:162,0
+BA:162,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:38
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/amorph.h
+FN:371,_ZNK6wibble6AmorphINS_5RangeIiEENS_14RangeInterfaceIiEELi0EE14morphInterfaceEv
+FN:345,_ZN6wibble6AmorphINS_5RangeIiEENS_14RangeInterfaceIiEELi0EED2Ev
+FN:332,_ZN6wibble6AmorphINS_5RangeIiEENS_14RangeInterfaceIiEELi0EE24setMorphInterfacePointerEPKNS_14MorphInterfaceIS4_EE
+FN:288,_ZN6wibble6AmorphINS_5RangeIiEENS_14RangeInterfaceIiEELi0EEC2ERKS5_
+FN:371,_ZNK6wibble6AmorphINS_8ConsumerIiEENS_17ConsumerInterfaceIiEELi0EE14morphInterfaceEv
+FN:345,_ZN6wibble6AmorphINS_8ConsumerIiEENS_17ConsumerInterfaceIiEELi0EED2Ev
+FN:332,_ZN6wibble6AmorphINS_8ConsumerIiEENS_17ConsumerInterfaceIiEELi0EE24setMorphInterfacePointerEPKNS_14MorphInterfaceIS4_EE
+FN:288,_ZN6wibble6AmorphINS_8ConsumerIiEENS_17ConsumerInterfaceIiEELi0EEC2ERKS5_
+FN:361,_ZNK6wibble6AmorphINS_5RangeIiEENS_14RangeInterfaceIiEELi0EE14implementationEv
+FN:284,_ZN6wibble6AmorphINS_5RangeIiEENS_14RangeInterfaceIiEELi0EEC2ERKNS_14MorphInterfaceIS4_EE
+FN:293,_ZN6wibble6AmorphINS_5RangeIiEENS_14RangeInterfaceIiEELi0EEC2Ev
+FN:366,_ZN6wibble6AmorphINS_8ConsumerIiEENS_17ConsumerInterfaceIiEELi0EE14implementationEv
+FN:366,_ZN6wibble6AmorphINS_5RangeIiEENS_14RangeInterfaceIiEELi0EE14implementationEv
+FN:371,_ZNK6wibble6AmorphINS_8ConsumerIjEENS_17ConsumerInterfaceIjEELi0EE14morphInterfaceEv
+FN:345,_ZN6wibble6AmorphINS_8ConsumerIjEENS_17ConsumerInterfaceIjEELi0EED2Ev
+FN:332,_ZN6wibble6AmorphINS_8ConsumerIjEENS_17ConsumerInterfaceIjEELi0EE24setMorphInterfacePointerEPKNS_14MorphInterfaceIS4_EE
+FN:366,_ZN6wibble6AmorphINS_8ConsumerIjEENS_17ConsumerInterfaceIjEELi0EE14implementationEv
+FN:371,_ZNK6wibble6AmorphINS_5RangeIjEENS_14RangeInterfaceIjEELi0EE14morphInterfaceEv
+FN:345,_ZN6wibble6AmorphINS_5RangeIjEENS_14RangeInterfaceIjEELi0EED2Ev
+FN:332,_ZN6wibble6AmorphINS_5RangeIjEENS_14RangeInterfaceIjEELi0EE24setMorphInterfacePointerEPKNS_14MorphInterfaceIS4_EE
+FN:288,_ZN6wibble6AmorphINS_5RangeIjEENS_14RangeInterfaceIjEELi0EEC2ERKS5_
+FN:361,_ZNK6wibble6AmorphINS_5RangeIjEENS_14RangeInterfaceIjEELi0EE14implementationEv
+FN:100,_ZN6wibble14MorphAllocatorC2Ev
+FN:284,_ZN6wibble6AmorphINS_5RangeIjEENS_14RangeInterfaceIjEELi0EEC2ERKNS_14MorphInterfaceIS4_EE
+FN:366,_ZN6wibble6AmorphINS_5RangeIjEENS_14RangeInterfaceIjEELi0EE14implementationEv
+FN:303,_ZNK6wibble6AmorphINS_5RangeIiEENS_14RangeInterfaceIiEELi0EE3leqERKS2_
+FN:314,_ZNK6wibble6AmorphINS_5RangeIiEENS_14RangeInterfaceIiEELi0EEleERKS2_
+FN:91,_ZN6wibble14MorphInterfaceINS_14RangeInterfaceIiEEEC2Ev
+FN:115,_ZN6wibble9MorphBaseINS_14GeneratedRangeIiPFvRiEPFbRKiEEENS_14RangeInterfaceIiEEEC2ERKS9_
+FN:147,_ZN6wibble5MorphINS_10RangeMorphIiNS_14GeneratedRangeIiPFvRiEPFbRKiEEEEESA_NS_14RangeInterfaceIiEEEC2ERKSA_
+FN:115,_ZN6wibble9MorphBaseINS_13IteratorRangeISt14_List_iteratorIiEEENS_14RangeInterfaceIiEEEC2ERKS4_
+FN:147,_ZN6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES5_NS_14RangeInterfaceIiEEEC2ERKS5_
+FN:284,_ZN6wibble6AmorphINS_8ConsumerIiEENS_17ConsumerInterfaceIiEELi0EEC2ERKNS_14MorphInterfaceIS4_EE
+FN:284,_ZN6wibble6AmorphINS_8ConsumerIjEENS_17ConsumerInterfaceIjEELi0EEC2ERKNS_14MorphInterfaceIS4_EE
+FN:115,_ZN6wibble9MorphBaseINS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEENS_14RangeInterfaceIiEEEC2ERKS9_
+FN:147,_ZN6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEEEESA_NS_14RangeInterfaceIiEEEC2ERKSA_
+FN:91,_ZN6wibble14MorphInterfaceINS_14RangeInterfaceIjEEEC2Ev
+FN:303,_ZNK6wibble6AmorphINS_5RangeIjEENS_14RangeInterfaceIjEELi0EE3leqERKS2_
+FN:314,_ZNK6wibble6AmorphINS_5RangeIjEENS_14RangeInterfaceIjEELi0EEleERKS2_
+FN:91,_ZN6wibble14MorphInterfaceINS_17ConsumerInterfaceIiEEEC2Ev
+FN:115,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEENS_17ConsumerInterfaceIiEEEC2ERKS7_
+FN:147,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEEC2ERKS8_
+FN:91,_ZN6wibble14MorphInterfaceINS_17ConsumerInterfaceIjEEEC2Ev
+FN:115,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEENS_17ConsumerInterfaceIjEEEC2ERKS7_
+FN:147,_ZN6wibble5MorphINS_13ConsumerMorphIjNS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEEEES8_NS_17ConsumerInterfaceIjEEEC2ERKS8_
+FN:115,_ZN6wibble9MorphBaseINS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEENS_14RangeInterfaceIjEEEC2ERKS9_
+FN:147,_ZN6wibble5MorphINS_10RangeMorphIjNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEEEESA_NS_14RangeInterfaceIjEEEC2ERKSA_
+FN:91,_ZN6wibble14MorphInterfaceINS_14RangeInterfaceIiEEEC2ERKS3_
+FN:173,_ZN6wibble5MorphINS_10RangeMorphIiNS_11CastedRangeIijEEEES3_NS_14RangeInterfaceIiEEE7destroyEj
+FN:91,_ZN6wibble14MorphInterfaceINS_14RangeInterfaceIjEEEC2ERKS3_
+FN:114,_ZN6wibble9MorphBaseINS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEENS_14RangeInterfaceIjEEEC2ERKSC_
+FN:144,_ZN6wibble5MorphINS_10RangeMorphIjNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEEEESA_NS_14RangeInterfaceIjEEEC2ERKSE_
+FN:173,_ZN6wibble5MorphINS_10RangeMorphIjNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEEEESA_NS_14RangeInterfaceIjEEE7destroyEj
+FN:91,_ZN6wibble14MorphInterfaceINS_17ConsumerInterfaceIjEEEC2ERKS3_
+FN:114,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEENS_17ConsumerInterfaceIjEEEC2ERKSA_
+FN:144,_ZN6wibble5MorphINS_13ConsumerMorphIjNS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEEEES8_NS_17ConsumerInterfaceIjEEEC2ERKSC_
+FN:173,_ZN6wibble5MorphINS_13ConsumerMorphIjNS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEEEES8_NS_17ConsumerInterfaceIjEEE7destroyEj
+FN:91,_ZN6wibble14MorphInterfaceINS_17ConsumerInterfaceIiEEEC2ERKS3_
+FN:114,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEENS_17ConsumerInterfaceIiEEEC2ERKSA_
+FN:144,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEEC2ERKSC_
+FN:173,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEE7destroyEj
+FN:173,_ZN6wibble5MorphINS_10RangeMorphIjNS_11CastedRangeIjiEEEES3_NS_14RangeInterfaceIjEEE7destroyEj
+FN:114,_ZN6wibble9MorphBaseINS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEENS_14RangeInterfaceIiEEEC2ERKSC_
+FN:144,_ZN6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEEEESA_NS_14RangeInterfaceIiEEEC2ERKSE_
+FN:173,_ZN6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEEEESA_NS_14RangeInterfaceIiEEE7destroyEj
+FN:114,_ZN6wibble9MorphBaseINS_13IteratorRangeISt14_List_iteratorIiEEENS_14RangeInterfaceIiEEEC2ERKS7_
+FN:144,_ZN6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES5_NS_14RangeInterfaceIiEEEC2ERKS9_
+FN:173,_ZN6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES5_NS_14RangeInterfaceIiEEE7destroyEj
+FN:114,_ZN6wibble9MorphBaseINS_14GeneratedRangeIiPFvRiEPFbRKiEEENS_14RangeInterfaceIiEEEC2ERKSC_
+FN:144,_ZN6wibble5MorphINS_10RangeMorphIiNS_14GeneratedRangeIiPFvRiEPFbRKiEEEEESA_NS_14RangeInterfaceIiEEEC2ERKSE_
+FN:173,_ZN6wibble5MorphINS_10RangeMorphIiNS_14GeneratedRangeIiPFvRiEPFbRKiEEEEESA_NS_14RangeInterfaceIiEEE7destroyEj
+FN:173,_ZN6wibble5MorphINS_10RangeMorphIiNS_16TransformedRangeISt9binder1stISt4plusIiEEEEEES7_NS_14RangeInterfaceIiEEE7destroyEj
+FN:173,_ZN6wibble5MorphINS_10RangeMorphIiNS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEEEES9_NS_14RangeInterfaceIiEEE7destroyEj
+FN:92,_ZN6wibble14MorphInterfaceINS_14RangeInterfaceIjEEE11virtualBaseEv
+FN:92,_ZN6wibble14MorphInterfaceINS_17ConsumerInterfaceIjEEE11virtualBaseEv
+FN:92,_ZN6wibble14MorphInterfaceINS_17ConsumerInterfaceIiEEE11virtualBaseEv
+FN:92,_ZN6wibble14MorphInterfaceINS_14RangeInterfaceIiEEE11virtualBaseEv
+FN:181,_ZNK6wibble5MorphINS_10RangeMorphIiNS_11CastedRangeIijEEEES3_NS_14RangeInterfaceIiEEE7wrappedEv
+FN:185,_ZN6wibble5MorphINS_10RangeMorphIiNS_11CastedRangeIijEEEES3_NS_14RangeInterfaceIiEEE7wrappedEv
+FN:124,_ZN6wibble9MorphBaseINS_11CastedRangeIijEENS_14RangeInterfaceIiEEE11virtualBaseIS2_EENS_8EnableIfINS_4TNotINS_13IsPolymorphicIT_EEEEPNS_11VirtualBaseEE1TEv
+FN:128,_ZN6wibble9MorphBaseINS_11CastedRangeIijEENS_14RangeInterfaceIiEEE11virtualBaseEv
+FN:149,_ZNK6wibble5MorphINS_10RangeMorphIiNS_11CastedRangeIijEEEES3_NS_14RangeInterfaceIiEEE4selfEv
+FN:181,_ZNK6wibble5MorphINS_10RangeMorphIjNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEEEESA_NS_14RangeInterfaceIjEEE7wrappedEv
+FN:185,_ZN6wibble5MorphINS_10RangeMorphIjNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEEEESA_NS_14RangeInterfaceIjEEE7wrappedEv
+FN:124,_ZN6wibble9MorphBaseINS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEENS_14RangeInterfaceIjEEE11virtualBaseIS9_EENS_8EnableIfINS_4TNotINS_13IsPolymorphicIT_EEEEPNS_11VirtualBaseEE1TEv
+FN:128,_ZN6wibble9MorphBaseINS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEENS_14RangeInterfaceIjEEE11virtualBaseEv
+FN:149,_ZNK6wibble5MorphINS_10RangeMorphIjNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEEEESA_NS_14RangeInterfaceIjEEE4selfEv
+FN:185,_ZN6wibble5MorphINS_13ConsumerMorphIjNS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEEEES8_NS_17ConsumerInterfaceIjEEE7wrappedEv
+FN:124,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEENS_17ConsumerInterfaceIjEEE11virtualBaseIS7_EENS_8EnableIfINS_4TNotINS_13IsPolymorphicIT_EEEEPNS_11VirtualBaseEE1TEv
+FN:128,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEENS_17ConsumerInterfaceIjEEE11virtualBaseEv
+FN:149,_ZNK6wibble5MorphINS_13ConsumerMorphIjNS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEEEES8_NS_17ConsumerInterfaceIjEEE4selfEv
+FN:181,_ZNK6wibble5MorphINS_13ConsumerMorphIjNS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEEEES8_NS_17ConsumerInterfaceIjEEE7wrappedEv
+FN:185,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEE7wrappedEv
+FN:124,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEENS_17ConsumerInterfaceIiEEE11virtualBaseIS7_EENS_8EnableIfINS_4TNotINS_13IsPolymorphicIT_EEEEPNS_11VirtualBaseEE1TEv
+FN:128,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEENS_17ConsumerInterfaceIiEEE11virtualBaseEv
+FN:149,_ZNK6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEE4selfEv
+FN:181,_ZNK6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEE7wrappedEv
+FN:181,_ZNK6wibble5MorphINS_10RangeMorphIjNS_11CastedRangeIjiEEEES3_NS_14RangeInterfaceIjEEE7wrappedEv
+FN:185,_ZN6wibble5MorphINS_10RangeMorphIjNS_11CastedRangeIjiEEEES3_NS_14RangeInterfaceIjEEE7wrappedEv
+FN:124,_ZN6wibble9MorphBaseINS_11CastedRangeIjiEENS_14RangeInterfaceIjEEE11virtualBaseIS2_EENS_8EnableIfINS_4TNotINS_13IsPolymorphicIT_EEEEPNS_11VirtualBaseEE1TEv
+FN:128,_ZN6wibble9MorphBaseINS_11CastedRangeIjiEENS_14RangeInterfaceIjEEE11virtualBaseEv
+FN:149,_ZNK6wibble5MorphINS_10RangeMorphIjNS_11CastedRangeIjiEEEES3_NS_14RangeInterfaceIjEEE4selfEv
+FN:181,_ZNK6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEEEESA_NS_14RangeInterfaceIiEEE7wrappedEv
+FN:185,_ZN6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEEEESA_NS_14RangeInterfaceIiEEE7wrappedEv
+FN:124,_ZN6wibble9MorphBaseINS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEENS_14RangeInterfaceIiEEE11virtualBaseIS9_EENS_8EnableIfINS_4TNotINS_13IsPolymorphicIT_EEEEPNS_11VirtualBaseEE1TEv
+FN:128,_ZN6wibble9MorphBaseINS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEENS_14RangeInterfaceIiEEE11virtualBaseEv
+FN:149,_ZNK6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEEEESA_NS_14RangeInterfaceIiEEE4selfEv
+FN:181,_ZNK6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES5_NS_14RangeInterfaceIiEEE7wrappedEv
+FN:185,_ZN6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES5_NS_14RangeInterfaceIiEEE7wrappedEv
+FN:124,_ZN6wibble9MorphBaseINS_13IteratorRangeISt14_List_iteratorIiEEENS_14RangeInterfaceIiEEE11virtualBaseIS4_EENS_8EnableIfINS_4TNotINS_13IsPolymorphicIT_EEEEPNS_11VirtualBaseEE1TEv
+FN:128,_ZN6wibble9MorphBaseINS_13IteratorRangeISt14_List_iteratorIiEEENS_14RangeInterfaceIiEEE11virtualBaseEv
+FN:149,_ZNK6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES5_NS_14RangeInterfaceIiEEE4selfEv
+FN:181,_ZNK6wibble5MorphINS_10RangeMorphIiNS_14GeneratedRangeIiPFvRiEPFbRKiEEEEESA_NS_14RangeInterfaceIiEEE7wrappedEv
+FN:185,_ZN6wibble5MorphINS_10RangeMorphIiNS_14GeneratedRangeIiPFvRiEPFbRKiEEEEESA_NS_14RangeInterfaceIiEEE7wrappedEv
+FN:124,_ZN6wibble9MorphBaseINS_14GeneratedRangeIiPFvRiEPFbRKiEEENS_14RangeInterfaceIiEEE11virtualBaseIS9_EENS_8EnableIfINS_4TNotINS_13IsPolymorphicIT_EEEEPNS_11VirtualBaseEE1TEv
+FN:128,_ZN6wibble9MorphBaseINS_14GeneratedRangeIiPFvRiEPFbRKiEEENS_14RangeInterfaceIiEEE11virtualBaseEv
+FN:149,_ZNK6wibble5MorphINS_10RangeMorphIiNS_14GeneratedRangeIiPFvRiEPFbRKiEEEEESA_NS_14RangeInterfaceIiEEE4selfEv
+FN:181,_ZNK6wibble5MorphINS_10RangeMorphIiNS_16TransformedRangeISt9binder1stISt4plusIiEEEEEES7_NS_14RangeInterfaceIiEEE7wrappedEv
+FN:185,_ZN6wibble5MorphINS_10RangeMorphIiNS_16TransformedRangeISt9binder1stISt4plusIiEEEEEES7_NS_14RangeInterfaceIiEEE7wrappedEv
+FN:124,_ZN6wibble9MorphBaseINS_16TransformedRangeISt9binder1stISt4plusIiEEEENS_14RangeInterfaceIiEEE11virtualBaseIS6_EENS_8EnableIfINS_4TNotINS_13IsPolymorphicIT_EEEEPNS_11VirtualBaseEE1TEv
+FN:128,_ZN6wibble9MorphBaseINS_16TransformedRangeISt9binder1stISt4plusIiEEEENS_14RangeInterfaceIiEEE11virtualBaseEv
+FN:149,_ZNK6wibble5MorphINS_10RangeMorphIiNS_16TransformedRangeISt9binder1stISt4plusIiEEEEEES7_NS_14RangeInterfaceIiEEE4selfEv
+FN:181,_ZNK6wibble5MorphINS_10RangeMorphIiNS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEEEES9_NS_14RangeInterfaceIiEEE7wrappedEv
+FN:185,_ZN6wibble5MorphINS_10RangeMorphIiNS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEEEES9_NS_14RangeInterfaceIiEEE7wrappedEv
+FN:124,_ZN6wibble9MorphBaseINS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEENS_14RangeInterfaceIiEEE11virtualBaseIS8_EENS_8EnableIfINS_4TNotINS_13IsPolymorphicIT_EEEEPNS_11VirtualBaseEE1TEv
+FN:128,_ZN6wibble9MorphBaseINS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEENS_14RangeInterfaceIiEEE11virtualBaseEv
+FN:149,_ZNK6wibble5MorphINS_10RangeMorphIiNS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEEEES9_NS_14RangeInterfaceIiEEE4selfEv
+FN:156,_ZNK6wibble5MorphINS_10RangeMorphIiNS_14GeneratedRangeIiPFvRiEPFbRKiEEEEESA_NS_14RangeInterfaceIiEEE3leqEPKNS_14MorphInterfaceISD_EE
+FN:156,_ZNK6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEEEESA_NS_14RangeInterfaceIiEEE3leqEPKNS_14MorphInterfaceISD_EE
+FN:156,_ZNK6wibble5MorphINS_10RangeMorphIjNS_11CastedRangeIjiEEEES3_NS_14RangeInterfaceIjEEE3leqEPKNS_14MorphInterfaceIS6_EE
+FN:316,_ZN6wibble6AmorphINS_5RangeIjEENS_14RangeInterfaceIjEELi0EE19setInterfacePointerEPKS4_
+FN:340,_ZN6wibble6AmorphINS_5RangeIjEENS_14RangeInterfaceIjEELi0EEaSERKS5_
+FN:316,_ZN6wibble6AmorphINS_5RangeIiEENS_14RangeInterfaceIiEELi0EE19setInterfacePointerEPKS4_
+FN:340,_ZN6wibble6AmorphINS_5RangeIiEENS_14RangeInterfaceIiEELi0EEaSERKS5_
+FN:156,_ZNK6wibble5MorphINS_13ConsumerMorphIjNS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEEEES8_NS_17ConsumerInterfaceIjEEE3leqEPKNS_14MorphInterfaceISB_EE
+FN:156,_ZNK6wibble5MorphINS_10RangeMorphIjNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEEEESA_NS_14RangeInterfaceIjEEE3leqEPKNS_14MorphInterfaceISD_EE
+FN:156,_ZNK6wibble5MorphINS_10RangeMorphIiNS_11CastedRangeIijEEEES3_NS_14RangeInterfaceIiEEE3leqEPKNS_14MorphInterfaceIS6_EE
+FN:156,_ZNK6wibble5MorphINS_10RangeMorphIiNS_16TransformedRangeISt9binder1stISt4plusIiEEEEEES7_NS_14RangeInterfaceIiEEE3leqEPKNS_14MorphInterfaceISA_EE
+FN:156,_ZNK6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEE3leqEPKNS_14MorphInterfaceISB_EE
+FN:156,_ZNK6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES5_NS_14RangeInterfaceIiEEE3leqEPKNS_14MorphInterfaceIS8_EE
+FN:156,_ZNK6wibble5MorphINS_10RangeMorphIiNS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEEEES9_NS_14RangeInterfaceIiEEE3leqEPKNS_14MorphInterfaceISC_EE
+FN:101,_ZN6wibble14MorphAllocatornwEjPvj
+FN:168,_ZNK6wibble5MorphINS_10RangeMorphIiNS_14GeneratedRangeIiPFvRiEPFbRKiEEEEESA_NS_14RangeInterfaceIiEEE13constructCopyEPvj
+FN:168,_ZNK6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEEEESA_NS_14RangeInterfaceIiEEE13constructCopyEPvj
+FN:168,_ZNK6wibble5MorphINS_13ConsumerMorphIjNS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEEEES8_NS_17ConsumerInterfaceIjEEE13constructCopyEPvj
+FN:168,_ZNK6wibble5MorphINS_10RangeMorphIjNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEEEESA_NS_14RangeInterfaceIjEEE13constructCopyEPvj
+FN:168,_ZNK6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEE13constructCopyEPvj
+FN:168,_ZNK6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES5_NS_14RangeInterfaceIiEEE13constructCopyEPvj
+FN:95,_ZN6wibble14MorphInterfaceINS_14RangeInterfaceIiEEED2Ev
+FN:114,_ZN6wibble9MorphBaseINS_11CastedRangeIijEENS_14RangeInterfaceIiEEEC2ERKS5_
+FN:144,_ZN6wibble5MorphINS_10RangeMorphIiNS_11CastedRangeIijEEEES3_NS_14RangeInterfaceIiEEEC2ERKS7_
+FN:168,_ZNK6wibble5MorphINS_10RangeMorphIiNS_11CastedRangeIijEEEES3_NS_14RangeInterfaceIiEEE13constructCopyEPvj
+FN:115,_ZN6wibble9MorphBaseINS_11CastedRangeIijEENS_14RangeInterfaceIiEEEC2ERKS2_
+FN:147,_ZN6wibble5MorphINS_10RangeMorphIiNS_11CastedRangeIijEEEES3_NS_14RangeInterfaceIiEEEC2ERKS3_
+FN:114,_ZN6wibble9MorphBaseINS_16TransformedRangeISt9binder1stISt4plusIiEEEENS_14RangeInterfaceIiEEEC2ERKS9_
+FN:144,_ZN6wibble5MorphINS_10RangeMorphIiNS_16TransformedRangeISt9binder1stISt4plusIiEEEEEES7_NS_14RangeInterfaceIiEEEC2ERKSB_
+FN:168,_ZNK6wibble5MorphINS_10RangeMorphIiNS_16TransformedRangeISt9binder1stISt4plusIiEEEEEES7_NS_14RangeInterfaceIiEEE13constructCopyEPvj
+FN:115,_ZN6wibble9MorphBaseINS_16TransformedRangeISt9binder1stISt4plusIiEEEENS_14RangeInterfaceIiEEEC2ERKS6_
+FN:147,_ZN6wibble5MorphINS_10RangeMorphIiNS_16TransformedRangeISt9binder1stISt4plusIiEEEEEES7_NS_14RangeInterfaceIiEEEC2ERKS7_
+FN:114,_ZN6wibble9MorphBaseINS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEENS_14RangeInterfaceIiEEEC2ERKSB_
+FN:144,_ZN6wibble5MorphINS_10RangeMorphIiNS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEEEES9_NS_14RangeInterfaceIiEEEC2ERKSD_
+FN:168,_ZNK6wibble5MorphINS_10RangeMorphIiNS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEEEES9_NS_14RangeInterfaceIiEEE13constructCopyEPvj
+FN:115,_ZN6wibble9MorphBaseINS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEENS_14RangeInterfaceIiEEEC2ERKS8_
+FN:147,_ZN6wibble5MorphINS_10RangeMorphIiNS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEEEES9_NS_14RangeInterfaceIiEEEC2ERKS9_
+FN:114,_ZN6wibble9MorphBaseINS_14GeneratedRangeIiPFvRiEPFbRKiEEENS_14RangeInterfaceIiEEED2Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIiNS_14GeneratedRangeIiPFvRiEPFbRKiEEEEESA_NS_14RangeInterfaceIiEEED0Ev
+FN:95,_ZN6wibble14MorphInterfaceINS_14RangeInterfaceIiEEED0Ev
+FN:95,_ZN6wibble14MorphInterfaceINS_14RangeInterfaceIiEEED1Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIiNS_14GeneratedRangeIiPFvRiEPFbRKiEEEEESA_NS_14RangeInterfaceIiEEED1Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIiNS_14GeneratedRangeIiPFvRiEPFbRKiEEEEESA_NS_14RangeInterfaceIiEEED2Ev
+FN:114,_ZN6wibble9MorphBaseINS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEENS_14RangeInterfaceIiEEED2Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEEEESA_NS_14RangeInterfaceIiEEED0Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEEEESA_NS_14RangeInterfaceIiEEED1Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEEEESA_NS_14RangeInterfaceIiEEED2Ev
+FN:95,_ZN6wibble14MorphInterfaceINS_14RangeInterfaceIjEEED2Ev
+FN:114,_ZN6wibble9MorphBaseINS_11CastedRangeIjiEENS_14RangeInterfaceIjEEEC2ERKS5_
+FN:144,_ZN6wibble5MorphINS_10RangeMorphIjNS_11CastedRangeIjiEEEES3_NS_14RangeInterfaceIjEEEC2ERKS7_
+FN:168,_ZNK6wibble5MorphINS_10RangeMorphIjNS_11CastedRangeIjiEEEES3_NS_14RangeInterfaceIjEEE13constructCopyEPvj
+FN:115,_ZN6wibble9MorphBaseINS_11CastedRangeIjiEENS_14RangeInterfaceIjEEEC2ERKS2_
+FN:147,_ZN6wibble5MorphINS_10RangeMorphIjNS_11CastedRangeIjiEEEES3_NS_14RangeInterfaceIjEEEC2ERKS3_
+FN:114,_ZN6wibble9MorphBaseINS_11CastedRangeIjiEENS_14RangeInterfaceIjEEED2Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIjNS_11CastedRangeIjiEEEES3_NS_14RangeInterfaceIjEEED0Ev
+FN:95,_ZN6wibble14MorphInterfaceINS_14RangeInterfaceIjEEED0Ev
+FN:95,_ZN6wibble14MorphInterfaceINS_14RangeInterfaceIjEEED1Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIjNS_11CastedRangeIjiEEEES3_NS_14RangeInterfaceIjEEED1Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIjNS_11CastedRangeIjiEEEES3_NS_14RangeInterfaceIjEEED2Ev
+FN:95,_ZN6wibble14MorphInterfaceINS_17ConsumerInterfaceIjEEED2Ev
+FN:114,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEENS_17ConsumerInterfaceIjEEED2Ev
+FN:189,_ZN6wibble5MorphINS_13ConsumerMorphIjNS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEEEES8_NS_17ConsumerInterfaceIjEEED0Ev
+FN:95,_ZN6wibble14MorphInterfaceINS_17ConsumerInterfaceIjEEED0Ev
+FN:95,_ZN6wibble14MorphInterfaceINS_17ConsumerInterfaceIjEEED1Ev
+FN:189,_ZN6wibble5MorphINS_13ConsumerMorphIjNS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEEEES8_NS_17ConsumerInterfaceIjEEED1Ev
+FN:189,_ZN6wibble5MorphINS_13ConsumerMorphIjNS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEEEES8_NS_17ConsumerInterfaceIjEEED2Ev
+FN:114,_ZN6wibble9MorphBaseINS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEENS_14RangeInterfaceIjEEED2Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIjNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEEEESA_NS_14RangeInterfaceIjEEED0Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIjNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEEEESA_NS_14RangeInterfaceIjEEED1Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIjNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEEEESA_NS_14RangeInterfaceIjEEED2Ev
+FN:114,_ZN6wibble9MorphBaseINS_11CastedRangeIijEENS_14RangeInterfaceIiEEED2Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIiNS_11CastedRangeIijEEEES3_NS_14RangeInterfaceIiEEED0Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIiNS_11CastedRangeIijEEEES3_NS_14RangeInterfaceIiEEED1Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIiNS_11CastedRangeIijEEEES3_NS_14RangeInterfaceIiEEED2Ev
+FN:114,_ZN6wibble9MorphBaseINS_16TransformedRangeISt9binder1stISt4plusIiEEEENS_14RangeInterfaceIiEEED2Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIiNS_16TransformedRangeISt9binder1stISt4plusIiEEEEEES7_NS_14RangeInterfaceIiEEED0Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIiNS_16TransformedRangeISt9binder1stISt4plusIiEEEEEES7_NS_14RangeInterfaceIiEEED1Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIiNS_16TransformedRangeISt9binder1stISt4plusIiEEEEEES7_NS_14RangeInterfaceIiEEED2Ev
+FN:95,_ZN6wibble14MorphInterfaceINS_17ConsumerInterfaceIiEEED2Ev
+FN:114,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEENS_17ConsumerInterfaceIiEEED2Ev
+FN:189,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEED0Ev
+FN:95,_ZN6wibble14MorphInterfaceINS_17ConsumerInterfaceIiEEED0Ev
+FN:95,_ZN6wibble14MorphInterfaceINS_17ConsumerInterfaceIiEEED1Ev
+FN:189,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEED1Ev
+FN:189,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEED2Ev
+FN:114,_ZN6wibble9MorphBaseINS_13IteratorRangeISt14_List_iteratorIiEEENS_14RangeInterfaceIiEEED2Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES5_NS_14RangeInterfaceIiEEED0Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES5_NS_14RangeInterfaceIiEEED1Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES5_NS_14RangeInterfaceIiEEED2Ev
+FN:114,_ZN6wibble9MorphBaseINS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEENS_14RangeInterfaceIiEEED2Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIiNS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEEEES9_NS_14RangeInterfaceIiEEED0Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIiNS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEEEES9_NS_14RangeInterfaceIiEEED1Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIiNS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEEEES9_NS_14RangeInterfaceIiEEED2Ev
+DA:91,28
+DA:92,0
+DA:95,25
+DA:100,0
+DA:101,0
+DA:102,0
+DA:103,0
+DA:104,0
+DA:106,0
+DA:114,330
+DA:115,15
+DA:124,0
+DA:125,0
+DA:128,0
+DA:129,0
+DA:144,167
+DA:147,15
+DA:149,167
+DA:156,39
+DA:157,39
+DA:158,39
+DA:159,0
+DA:160,0
+DA:162,0
+DA:164,39
+DA:168,167
+DA:170,167
+DA:173,148
+DA:174,148
+DA:175,0
+DA:177,148
+DA:179,148
+DA:181,112
+DA:182,112
+DA:185,63
+DA:186,63
+DA:189,163
+DA:284,3
+DA:285,3
+DA:286,3
+DA:288,19
+DA:289,19
+DA:291,19
+DA:293,3
+DA:303,4
+DA:304,4
+DA:305,4
+DA:306,4
+DA:308,0
+DA:310,0
+DA:314,4
+DA:316,3
+DA:317,3
+DA:318,0
+DA:319,0
+DA:326,3
+DA:332,22
+DA:333,22
+DA:334,0
+DA:335,0
+DA:337,22
+DA:340,3
+DA:341,3
+DA:342,3
+DA:345,22
+DA:346,22
+DA:347,22
+DA:348,22
+DA:361,8
+DA:363,8
+DA:366,9
+DA:368,9
+DA:371,79
+DA:372,79
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,1
+BA:95,2
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,1
+BA:95,2
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:102,0
+BA:102,0
+BA:102,0
+BA:102,0
+BA:114,1
+BA:114,2
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,1
+BA:114,2
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,1
+BA:114,2
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,1
+BA:114,2
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,1
+BA:114,2
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,1
+BA:114,2
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,1
+BA:114,2
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,1
+BA:114,2
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:157,1
+BA:157,2
+BA:157,1
+BA:157,2
+BA:157,1
+BA:157,2
+BA:157,0
+BA:157,0
+BA:157,1
+BA:157,2
+BA:157,1
+BA:157,2
+BA:157,1
+BA:157,2
+BA:157,0
+BA:157,0
+BA:157,0
+BA:157,0
+BA:157,1
+BA:157,2
+BA:158,1
+BA:158,2
+BA:158,1
+BA:158,2
+BA:158,1
+BA:158,2
+BA:158,0
+BA:158,0
+BA:158,1
+BA:158,2
+BA:158,1
+BA:158,2
+BA:158,1
+BA:158,2
+BA:158,0
+BA:158,0
+BA:158,0
+BA:158,0
+BA:158,1
+BA:158,2
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:174,1
+BA:174,2
+BA:174,1
+BA:174,2
+BA:174,1
+BA:174,2
+BA:174,0
+BA:174,0
+BA:174,1
+BA:174,2
+BA:174,1
+BA:174,2
+BA:174,0
+BA:174,0
+BA:174,1
+BA:174,2
+BA:174,1
+BA:174,2
+BA:174,1
+BA:174,2
+BA:177,2
+BA:177,1
+BA:177,2
+BA:177,1
+BA:177,2
+BA:177,1
+BA:177,0
+BA:177,0
+BA:177,2
+BA:177,1
+BA:177,2
+BA:177,1
+BA:177,0
+BA:177,0
+BA:177,2
+BA:177,1
+BA:177,2
+BA:177,1
+BA:177,2
+BA:177,1
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,1
+BA:189,2
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,1
+BA:189,2
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,1
+BA:189,2
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,1
+BA:189,2
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,1
+BA:189,2
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,1
+BA:189,2
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,1
+BA:189,2
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,1
+BA:189,2
+BA:304,0
+BA:304,0
+BA:304,2
+BA:304,1
+BA:305,0
+BA:305,0
+BA:305,2
+BA:305,1
+BA:317,1
+BA:317,2
+BA:317,0
+BA:317,0
+BA:326,2
+BA:326,1
+BA:326,0
+BA:326,0
+BA:333,0
+BA:333,0
+BA:333,0
+BA:333,0
+BA:333,1
+BA:333,2
+BA:333,1
+BA:333,2
+BA:346,0
+BA:346,0
+BA:346,0
+BA:346,0
+BA:346,2
+BA:346,1
+BA:346,2
+BA:346,1
+LF:74
+LH:53
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/consumer.h
+FN:66,_ZN6wibble8ConsumerIiED1Ev
+FN:66,_ZN6wibble8ConsumerIiEC1ERKS1_
+FN:77,_ZN6wibble8ConsumerIiE7consumeERKi
+FN:66,_ZN6wibble8ConsumerIjED1Ev
+FN:77,_ZN6wibble8ConsumerIjE7consumeERKj
+FN:48,_ZN6wibble13ConsumerMixinIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEC2Ev
+FN:91,_ZN6wibble20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEC1ES5_
+FN:48,_ZN6wibble13ConsumerMixinIjNS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEEEC2Ev
+FN:91,_ZN6wibble20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEC1ES5_
+FN:48,_ZN6wibble13ConsumerMixinIiNS_8ConsumerIiEEEC2Ev
+FN:48,_ZN6wibble13ConsumerMixinIjNS_8ConsumerIjEEEC2Ev
+FN:74,_ZN6wibble8ConsumerIiEC1ERKNS_14MorphInterfaceINS_17ConsumerInterfaceIiEEEE
+FN:81,_ZN6wibble8ConsumerIiEaSERKi
+FN:74,_ZN6wibble8ConsumerIjEC1ERKNS_14MorphInterfaceINS_17ConsumerInterfaceIjEEEE
+FN:21,_ZN6wibble17ConsumerInterfaceIiEC2Ev
+FN:32,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEC1ERKS7_
+FN:49,_ZN6wibble13ConsumerMixinIiNS_8ConsumerIiEEE4selfEv
+FN:56,_ZN6wibble13ConsumerMixinIiNS_8ConsumerIiEEEdeEv
+FN:54,_ZN6wibble13ConsumerMixinIiNS_8ConsumerIiEEEppEv
+FN:21,_ZN6wibble17ConsumerInterfaceIjEC2Ev
+FN:32,_ZN6wibble13ConsumerMorphIjNS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEEEC1ERKS7_
+FN:21,_ZN6wibble17ConsumerInterfaceIjEC2ERKS1_
+FN:30,_ZN6wibble13ConsumerMorphIjNS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEEEC1ERKS8_
+FN:21,_ZN6wibble17ConsumerInterfaceIiEC2ERKS1_
+FN:30,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEC1ERKS8_
+FN:53,_ZNK6wibble13ConsumerMixinIjNS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEEEleERKS7_
+FN:53,_ZNK6wibble13ConsumerMixinIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEleERKS7_
+FN:38,_ZN6wibble13ConsumerMorphIjNS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEEE7consumeENS_5RangeIjEE
+FN:38,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEE7consumeENS_5RangeIiEE
+FN:25,_ZN6wibble17ConsumerInterfaceIjED2Ev
+FN:25,_ZN6wibble17ConsumerInterfaceIjED0Ev
+FN:25,_ZN6wibble17ConsumerInterfaceIjED1Ev
+FN:30,_ZN6wibble13ConsumerMorphIjNS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEEED1Ev
+FN:101,_ZN6wibble13consumerMorphINS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEEEENS_8ConsumerINT_12ConsumedTypeEEES9_
+FN:107,_ZN6wibble8consumerISt15insert_iteratorISt6vectorIjSaIjEEEEENS_8ConsumerINT_14container_type10value_typeEEES7_
+FN:114,_ZN6wibble8consumerISt6vectorIjSaIjEEEENS_6IsTypeINS_8ConsumerINT_10value_typeEEENS6_8iteratorEE1TERS6_
+FN:25,_ZN6wibble17ConsumerInterfaceIiED2Ev
+FN:25,_ZN6wibble17ConsumerInterfaceIiED0Ev
+FN:25,_ZN6wibble17ConsumerInterfaceIiED1Ev
+FN:30,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEED1Ev
+FN:101,_ZN6wibble13consumerMorphINS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEENS_8ConsumerINT_12ConsumedTypeEEES9_
+FN:107,_ZN6wibble8consumerISt15insert_iteratorISt6vectorIiSaIiEEEEENS_8ConsumerINT_14container_type10value_typeEEES7_
+FN:114,_ZN6wibble8consumerISt6vectorIiSaIiEEEENS_6IsTypeINS_8ConsumerINT_10value_typeEEENS6_8iteratorEE1TERS6_
+FN:92,_ZN6wibble20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEE7consumeERKi
+FN:34,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEE7consumeERKi
+FN:92,_ZN6wibble20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEE7consumeERKj
+FN:34,_ZN6wibble13ConsumerMorphIjNS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEEE7consumeERKj
+DA:21,2
+DA:25,2
+DA:30,3
+DA:32,1
+DA:34,2
+DA:35,2
+DA:38,0
+DA:39,0
+DA:40,0
+DA:41,0
+DA:43,0
+DA:48,2
+DA:49,0
+DA:53,0
+DA:54,0
+DA:56,0
+DA:66,1
+DA:74,1
+DA:77,2
+DA:78,2
+DA:81,0
+DA:82,0
+DA:83,0
+DA:91,1
+DA:92,2
+DA:93,2
+DA:94,2
+DA:95,2
+DA:101,1
+DA:102,1
+DA:107,1
+DA:109,1
+DA:114,1
+DA:115,1
+BA:25,1
+BA:25,2
+BA:25,0
+BA:25,0
+BA:25,0
+BA:25,0
+BA:25,0
+BA:25,0
+BA:25,0
+BA:25,0
+BA:25,0
+BA:25,0
+BA:30,2
+BA:30,1
+BA:30,1
+BA:30,2
+BA:30,0
+BA:30,0
+BA:30,0
+BA:30,0
+BA:39,0
+BA:39,0
+BA:39,0
+BA:39,0
+LF:34
+LH:22
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/mixin.h
+FN:13,_ZN6wibble5mixin10ComparableINS_5RangeIiEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_13IteratorRangeISt14_List_iteratorIiEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_13RangeIteratorINS_5RangeIiEEEEEC2Ev
+FN:15,_ZNK6wibble5mixin10ComparableINS_13RangeIteratorINS_5RangeIiEEEEE7cmpSelfEv
+FN:13,_ZN6wibble5mixin10ComparableINS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_16TransformedRangeISt9binder1stISt4plusIiEEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_11CastedRangeIjiEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_5RangeIjEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_14GeneratedRangeIiPFvRiEPFbRKiEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_5MorphINS_10RangeMorphIiNS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEEEESB_NS_14RangeInterfaceIiEEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_5MorphINS_10RangeMorphIiNS_16TransformedRangeISt9binder1stISt4plusIiEEEEEES9_NS_14RangeInterfaceIiEEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_11CastedRangeIijEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_13RangeIteratorINS_5RangeIjEEEEEC2Ev
+FN:15,_ZNK6wibble5mixin10ComparableINS_13RangeIteratorINS_5RangeIjEEEEE7cmpSelfEv
+FN:13,_ZN6wibble5mixin10ComparableINS_5MorphINS_10RangeMorphIiNS_14GeneratedRangeIiPFvRiEPFbRKiEEEEESC_NS_14RangeInterfaceIiEEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES7_NS_14RangeInterfaceIiEEEEEC2Ev
+FN:23,_ZNK6wibble5mixin10ComparableINS_13RangeIteratorINS_5RangeIiEEEEEeqERKS5_
+FN:13,_ZN6wibble5mixin10ComparableINS_8ConsumerIiEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_8ConsumerIjEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_5MorphINS_10RangeMorphIiNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEEEESC_NS_14RangeInterfaceIiEEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_5MorphINS_10RangeMorphIjNS_11CastedRangeIjiEEEES5_NS_14RangeInterfaceIjEEEEEC2Ev
+FN:19,_ZNK6wibble5mixin10ComparableINS_13RangeIteratorINS_5RangeIiEEEEEneERKS5_
+FN:13,_ZN6wibble5mixin10ComparableINS_5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEESA_NS_17ConsumerInterfaceIiEEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_5MorphINS_13ConsumerMorphIjNS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEEEESA_NS_17ConsumerInterfaceIjEEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_5MorphINS_10RangeMorphIjNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEEEESC_NS_14RangeInterfaceIjEEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_5MorphINS_10RangeMorphIiNS_11CastedRangeIijEEEES5_NS_14RangeInterfaceIiEEEEEC2Ev
+FN:23,_ZNK6wibble5mixin10ComparableINS_13RangeIteratorINS_5RangeIjEEEEEeqERKS5_
+DA:13,35
+DA:15,2
+DA:16,2
+DA:19,0
+DA:20,0
+DA:23,1
+DA:24,1
+BA:24,0
+BA:24,0
+BA:24,0
+BA:24,0
+BA:24,2
+BA:24,1
+BA:24,2
+BA:24,1
+LF:7
+LH:5
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/operators.h
+FN:29,_ZN6wibble9operatorsplINS_13RangeIteratorINS_5RangeIiEEEEEET_RKS6_NS6_15difference_typeE
+DA:29,10
+DA:30,10
+DA:31,10
+DA:32,0
+LF:4
+LH:3
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/range.h
+FN:87,_ZN6wibble10RangeMixinIiNS_5RangeIiEEED2Ev
+FN:87,_ZN6wibble10RangeMixinIiNS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEEED2Ev
+FN:63,_ZN6wibble10RangeMixinIiNS_5RangeIiEEEC2Ev
+FN:87,_ZN6wibble10RangeMixinIiNS_16TransformedRangeISt9binder1stISt4plusIiEEEEED2Ev
+FN:87,_ZN6wibble10RangeMixinIjNS_5RangeIjEEED2Ev
+FN:87,_ZN6wibble10RangeMixinIiNS_14GeneratedRangeIiPFvRiEPFbRKiEEEED2Ev
+FN:459,_ZN6wibble14GeneratedRangeIiPFvRiEPFbRKiEED1Ev
+FN:63,_ZN6wibble10RangeMixinIiNS_13IteratorRangeISt14_List_iteratorIiEEEEC2Ev
+FN:197,_ZN6wibble13IteratorRangeISt14_List_iteratorIiEEC1ES2_S2_
+FN:87,_ZN6wibble10RangeMixinIiNS_13IteratorRangeISt14_List_iteratorIiEEEED2Ev
+FN:193,_ZN6wibble13IteratorRangeISt14_List_iteratorIiEED1Ev
+FN:156,_ZN6wibble5RangeIiED1Ev
+FN:27,_ZN6wibble13RangeIteratorINS_5RangeIiEEED1Ev
+FN:432,_ZN6wibble16TransformedRangeISt9binder1stISt4plusIiEEED1Ev
+FN:156,_ZN6wibble5RangeIiEC1ERKS1_
+FN:27,_ZN6wibble13RangeIteratorINS_5RangeIiEEEC1ERKS3_
+FN:432,_ZN6wibble16TransformedRangeISt9binder1stISt4plusIiEEEC1ERKS5_
+FN:66,_ZNK6wibble10RangeMixinIiNS_5RangeIiEEE4selfEv
+FN:37,_ZN6wibble13RangeIteratorINS_5RangeIiEEEC1ERKS2_
+FN:71,_ZNK6wibble10RangeMixinIiNS_5RangeIiEEE5beginEv
+FN:164,_ZNK6wibble5RangeIiE4headEv
+FN:49,_ZNK6wibble13RangeIteratorINS_5RangeIiEEEdeEv
+FN:63,_ZN6wibble10RangeMixinIiNS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEEEC2Ev
+FN:162,_ZN6wibble5RangeIiEC1Ev
+FN:63,_ZN6wibble10RangeMixinIiNS_16TransformedRangeISt9binder1stISt4plusIiEEEEEC2Ev
+FN:435,_ZN6wibble16TransformedRangeISt9binder1stISt4plusIiEEEC1ENS_5RangeIiEES4_
+FN:166,_ZN6wibble5RangeIiE10setToEmptyEv
+FN:165,_ZN6wibble5RangeIiE11removeFirstEv
+FN:156,_ZN6wibble5RangeIjED1Ev
+FN:27,_ZN6wibble13RangeIteratorINS_5RangeIjEEED1Ev
+FN:63,_ZN6wibble10RangeMixinIiNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEEEC2Ev
+FN:197,_ZN6wibble13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEC1ES7_S7_
+FN:87,_ZN6wibble10RangeMixinIiNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEEED2Ev
+FN:193,_ZN6wibble13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEED1Ev
+FN:63,_ZN6wibble10RangeMixinIjNS_11CastedRangeIjiEEEC2Ev
+FN:87,_ZN6wibble10RangeMixinIjNS_11CastedRangeIjiEEED2Ev
+FN:226,_ZN6wibble11CastedRangeIjiEC1ENS_5RangeIiEE
+FN:224,_ZN6wibble11CastedRangeIjiED1Ev
+FN:63,_ZN6wibble10RangeMixinIjNS_5RangeIjEEEC2Ev
+FN:156,_ZN6wibble5RangeIjEC1ERKS1_
+FN:164,_ZNK6wibble5RangeIjE4headEv
+FN:66,_ZNK6wibble10RangeMixinIjNS_5RangeIjEEE4selfEv
+FN:63,_ZN6wibble10RangeMixinIiNS_14GeneratedRangeIiPFvRiEPFbRKiEEEEC2Ev
+FN:464,_ZN6wibble14GeneratedRangeIiPFvRiEPFbRKiEEC1ES5_RKS3_RKS7_
+FN:495,_ZN6wibble14generatedRangeIiPFvRiEPFbRKiEEENS_14GeneratedRangeIT_T0_T1_EES9_SA_SB_
+FN:63,_ZN6wibble10RangeMixinIjNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEEEC2Ev
+FN:197,_ZN6wibble13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEC1ES7_S7_
+FN:87,_ZN6wibble10RangeMixinIjNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEEED2Ev
+FN:193,_ZN6wibble13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEED1Ev
+FN:63,_ZN6wibble10RangeMixinIiNS_11CastedRangeIijEEEC2Ev
+FN:87,_ZN6wibble10RangeMixinIiNS_11CastedRangeIijEEED2Ev
+FN:226,_ZN6wibble11CastedRangeIijEC1ENS_5RangeIjEE
+FN:224,_ZN6wibble11CastedRangeIijED1Ev
+FN:165,_ZN6wibble5RangeIjE11removeFirstEv
+FN:166,_ZN6wibble5RangeIjE10setToEmptyEv
+FN:37,_ZN6wibble13RangeIteratorINS_5RangeIjEEEC1ERKS2_
+FN:71,_ZNK6wibble10RangeMixinIjNS_5RangeIjEEE5beginEv
+FN:51,_ZN6wibble13RangeIteratorINS_5RangeIiEEEppEv
+FN:53,_ZNK6wibble13RangeIteratorINS_5RangeIiEEEleERKS3_
+FN:94,_ZN6wibble14RangeInterfaceIiEC2Ev
+FN:105,_ZN6wibble10RangeMorphIiNS_14GeneratedRangeIiPFvRiEPFbRKiEEEEC1ERKS9_
+FN:105,_ZN6wibble10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEC1ERKS4_
+FN:105,_ZN6wibble10RangeMorphIiNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEEEC1ERKS9_
+FN:94,_ZN6wibble14RangeInterfaceIjEC2Ev
+FN:224,_ZN6wibble11CastedRangeIjiEC1ERKS1_
+FN:53,_ZNK6wibble13RangeIteratorINS_5RangeIjEEEleERKS3_
+FN:105,_ZN6wibble10RangeMorphIjNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEEEC1ERKS9_
+FN:224,_ZN6wibble11CastedRangeIijEC1ERKS1_
+FN:94,_ZN6wibble14RangeInterfaceIiEC2ERKS1_
+FN:94,_ZN6wibble14RangeInterfaceIjEC2ERKS1_
+FN:103,_ZN6wibble10RangeMorphIjNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEEEC1ERKSA_
+FN:103,_ZN6wibble10RangeMorphIiNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEEEC1ERKSA_
+FN:103,_ZN6wibble10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEC1ERKS5_
+FN:103,_ZN6wibble10RangeMorphIiNS_14GeneratedRangeIiPFvRiEPFbRKiEEEEC1ERKSA_
+FN:227,_ZNK6wibble11CastedRangeIijE4headEv
+FN:108,_ZNK6wibble10RangeMorphIiNS_11CastedRangeIijEEE4headEv
+FN:230,_ZN6wibble11CastedRangeIijE11removeFirstEv
+FN:107,_ZN6wibble10RangeMorphIiNS_11CastedRangeIijEEE11removeFirstEv
+FN:236,_ZN6wibble11CastedRangeIijE10setToEmptyEv
+FN:106,_ZN6wibble10RangeMorphIiNS_11CastedRangeIijEEE10setToEmptyEv
+FN:232,_ZNK6wibble11CastedRangeIijEleERKS1_
+FN:207,_ZN6wibble13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEE10setToEmptyEv
+FN:106,_ZN6wibble10RangeMorphIjNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEEE10setToEmptyEv
+FN:227,_ZNK6wibble11CastedRangeIjiE4headEv
+FN:108,_ZNK6wibble10RangeMorphIjNS_11CastedRangeIjiEEE4headEv
+FN:230,_ZN6wibble11CastedRangeIjiE11removeFirstEv
+FN:107,_ZN6wibble10RangeMorphIjNS_11CastedRangeIjiEEE11removeFirstEv
+FN:236,_ZN6wibble11CastedRangeIjiE10setToEmptyEv
+FN:106,_ZN6wibble10RangeMorphIjNS_11CastedRangeIjiEEE10setToEmptyEv
+FN:232,_ZNK6wibble11CastedRangeIjiEleERKS1_
+FN:200,_ZNK6wibble13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEE4headEv
+FN:108,_ZNK6wibble10RangeMorphIiNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEEE4headEv
+FN:201,_ZN6wibble13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEE11removeFirstEv
+FN:107,_ZN6wibble10RangeMorphIiNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEEE11removeFirstEv
+FN:207,_ZN6wibble13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEE10setToEmptyEv
+FN:106,_ZN6wibble10RangeMorphIiNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEEE10setToEmptyEv
+FN:203,_ZNK6wibble13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEleERKS8_
+FN:207,_ZN6wibble13IteratorRangeISt14_List_iteratorIiEE10setToEmptyEv
+FN:106,_ZN6wibble10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEE10setToEmptyEv
+FN:477,_ZNK6wibble14GeneratedRangeIiPFvRiEPFbRKiEE4headEv
+FN:108,_ZNK6wibble10RangeMorphIiNS_14GeneratedRangeIiPFvRiEPFbRKiEEEE4headEv
+FN:469,_ZN6wibble14GeneratedRangeIiPFvRiEPFbRKiEE11removeFirstEv
+FN:107,_ZN6wibble10RangeMorphIiNS_14GeneratedRangeIiPFvRiEPFbRKiEEEE11removeFirstEv
+FN:473,_ZN6wibble14GeneratedRangeIiPFvRiEPFbRKiEE10setToEmptyEv
+FN:106,_ZN6wibble10RangeMorphIiNS_14GeneratedRangeIiPFvRiEPFbRKiEEEE10setToEmptyEv
+FN:443,_ZN6wibble16TransformedRangeISt9binder1stISt4plusIiEEE11removeFirstEv
+FN:107,_ZN6wibble10RangeMorphIiNS_16TransformedRangeISt9binder1stISt4plusIiEEEEE11removeFirstEv
+FN:444,_ZN6wibble16TransformedRangeISt9binder1stISt4plusIiEEE10setToEmptyEv
+FN:106,_ZN6wibble10RangeMorphIiNS_16TransformedRangeISt9binder1stISt4plusIiEEEEE10setToEmptyEv
+FN:438,_ZNK6wibble16TransformedRangeISt9binder1stISt4plusIiEEEleERKS5_
+FN:200,_ZNK6wibble13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEE4headEv
+FN:108,_ZNK6wibble10RangeMorphIjNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEEE4headEv
+FN:201,_ZN6wibble13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEE11removeFirstEv
+FN:107,_ZN6wibble10RangeMorphIjNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEEE11removeFirstEv
+FN:200,_ZNK6wibble13IteratorRangeISt14_List_iteratorIiEE4headEv
+FN:108,_ZNK6wibble10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEE4headEv
+FN:201,_ZN6wibble13IteratorRangeISt14_List_iteratorIiEE11removeFirstEv
+FN:107,_ZN6wibble10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEE11removeFirstEv
+FN:203,_ZNK6wibble13IteratorRangeISt14_List_iteratorIiEEleERKS3_
+FN:479,_ZNK6wibble14GeneratedRangeIiPFvRiEPFbRKiEE5isEndEv
+FN:481,_ZNK6wibble14GeneratedRangeIiPFvRiEPFbRKiEEleERKS8_
+FN:203,_ZNK6wibble13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEleERKS8_
+FN:442,_ZNK6wibble16TransformedRangeISt9binder1stISt4plusIiEEE4headEv
+FN:108,_ZNK6wibble10RangeMorphIiNS_16TransformedRangeISt9binder1stISt4plusIiEEEEE4headEv
+FN:370,_ZNK6wibble13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEE4predEv
+FN:72,_ZNK6wibble10RangeMixinIiNS_5RangeIiEEE3endEv
+FN:83,_ZNK6wibble10RangeMixinIiNS_5RangeIiEEE5emptyEv
+FN:76,_ZNK6wibble10RangeMixinIjNS_5RangeIjEEE4tailEv
+FN:72,_ZNK6wibble10RangeMixinIjNS_5RangeIjEEE3endEv
+FN:83,_ZNK6wibble10RangeMixinIjNS_5RangeIjEEE5emptyEv
+FN:76,_ZNK6wibble10RangeMixinIiNS_5RangeIiEEE4tailEv
+FN:453,_ZN6wibble16transformedRangeISt9binder1stISt4plusIiEEEENS_16TransformedRangeIT_EENS_5RangeINS6_13argument_typeEEES6_
+FN:79,_ZNK6wibble10RangeMixinIiNS_5RangeIiEEE6outputENS_8ConsumerIiEE
+FN:338,_ZN6wibble13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEC1ERKS2_S6_
+FN:379,_ZN6wibble13filteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEENS_13FilteredRangeIT_T0_EES8_S9_
+FN:335,_ZN6wibble13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEC1ERKS7_
+FN:335,_ZN6wibble13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEED1Ev
+FN:156,_ZN6wibble5RangeIjEaSERKS1_
+FN:156,_ZN6wibble5RangeIiEaSERKS1_
+FN:27,_ZN6wibble13RangeIteratorINS_5RangeIiEEEaSERKS3_
+FN:341,_ZNK6wibble13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEE4findEv
+FN:362,_ZNK6wibble13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEleERKS7_
+FN:347,_ZN6wibble13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEE11removeFirstEv
+FN:107,_ZN6wibble10RangeMorphIiNS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEEE11removeFirstEv
+FN:353,_ZNK6wibble13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEE4headEv
+FN:108,_ZNK6wibble10RangeMorphIiNS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEEE4headEv
+FN:358,_ZN6wibble13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEE10setToEmptyEv
+FN:106,_ZN6wibble10RangeMorphIiNS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEEE10setToEmptyEv
+FN:98,_ZN6wibble14RangeInterfaceIiED2Ev
+FN:103,_ZN6wibble10RangeMorphIiNS_11CastedRangeIijEEEC1ERKS3_
+FN:105,_ZN6wibble10RangeMorphIiNS_11CastedRangeIijEEEC1ERKS2_
+FN:103,_ZN6wibble10RangeMorphIiNS_16TransformedRangeISt9binder1stISt4plusIiEEEEEC1ERKS7_
+FN:105,_ZN6wibble10RangeMorphIiNS_16TransformedRangeISt9binder1stISt4plusIiEEEEEC1ERKS6_
+FN:103,_ZN6wibble10RangeMorphIiNS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEEEC1ERKS9_
+FN:105,_ZN6wibble10RangeMorphIiNS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEEEC1ERKS8_
+FN:98,_ZN6wibble14RangeInterfaceIiED0Ev
+FN:98,_ZN6wibble14RangeInterfaceIiED1Ev
+FN:103,_ZN6wibble10RangeMorphIiNS_14GeneratedRangeIiPFvRiEPFbRKiEEEED1Ev
+FN:160,_ZN6wibble5RangeIiEC1INS_14GeneratedRangeIiPFvRiEPFbRKiEEEEERKT_NS_6IsTypeIiNSC_19RangeImplementationEE1TE
+FN:103,_ZN6wibble10RangeMorphIiNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEEED1Ev
+FN:160,_ZN6wibble5RangeIiEC1INS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEEEERKT_NS_6IsTypeIiNSC_19RangeImplementationEE1TE
+FN:265,_ZN6wibble5rangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEENS_5RangeINT_10value_typeEEES9_S9_
+FN:270,_ZN6wibble5rangeISt6vectorIiSaIiEEEENS_5RangeINT_8iterator10value_typeEEERS5_
+FN:98,_ZN6wibble14RangeInterfaceIjED2Ev
+FN:103,_ZN6wibble10RangeMorphIjNS_11CastedRangeIjiEEEC1ERKS3_
+FN:105,_ZN6wibble10RangeMorphIjNS_11CastedRangeIjiEEEC1ERKS2_
+FN:98,_ZN6wibble14RangeInterfaceIjED0Ev
+FN:98,_ZN6wibble14RangeInterfaceIjED1Ev
+FN:103,_ZN6wibble10RangeMorphIjNS_11CastedRangeIjiEEED1Ev
+FN:160,_ZN6wibble5RangeIjEC1INS_11CastedRangeIjiEEEERKT_NS_6IsTypeIiNS5_19RangeImplementationEE1TE
+FN:247,_ZN6wibble11castedRangeIjNS_5RangeIiEEEENS1_IT_EET0_
+FN:103,_ZN6wibble10RangeMorphIjNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEEED1Ev
+FN:160,_ZN6wibble5RangeIjEC1INS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEEEERKT_NS_6IsTypeIiNSC_19RangeImplementationEE1TE
+FN:265,_ZN6wibble5rangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEENS_5RangeINT_10value_typeEEES9_S9_
+FN:270,_ZN6wibble5rangeISt6vectorIjSaIjEEEENS_5RangeINT_8iterator10value_typeEEERS5_
+FN:103,_ZN6wibble10RangeMorphIiNS_11CastedRangeIijEEED1Ev
+FN:160,_ZN6wibble5RangeIiEC1INS_11CastedRangeIijEEEERKT_NS_6IsTypeIiNS5_19RangeImplementationEE1TE
+FN:247,_ZN6wibble11castedRangeIiNS_5RangeIjEEEENS1_IT_EET0_
+FN:259,_ZN6wibble5RangeIjEcvNS0_IT_EEIiEEv
+FN:103,_ZN6wibble10RangeMorphIiNS_16TransformedRangeISt9binder1stISt4plusIiEEEEED1Ev
+FN:160,_ZN6wibble5RangeIiEC1INS_16TransformedRangeISt9binder1stISt4plusIiEEEEEERKT_NS_6IsTypeIiNS9_19RangeImplementationEE1TE
+FN:103,_ZN6wibble10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEED1Ev
+FN:160,_ZN6wibble5RangeIiEC1INS_13IteratorRangeISt14_List_iteratorIiEEEEERKT_NS_6IsTypeIiNS7_19RangeImplementationEE1TE
+FN:265,_ZN6wibble5rangeISt14_List_iteratorIiEEENS_5RangeINT_10value_typeEEES4_S4_
+FN:103,_ZN6wibble10RangeMorphIiNS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEEED1Ev
+FN:160,_ZN6wibble5RangeIiEC1INS_13FilteredRangeIS1_St9binder1stISt8equal_toIiEEEEEERKT_NS_6IsTypeIiNS9_19RangeImplementationEE1TE
+DA:27,6
+DA:37,2
+DA:49,0
+DA:51,0
+DA:53,2
+DA:54,2
+DA:63,16
+DA:66,5
+DA:71,1
+DA:72,1
+DA:76,3
+DA:79,2
+DA:80,2
+DA:81,2
+DA:83,1
+DA:84,1
+DA:87,196
+DA:94,26
+DA:98,23
+DA:103,327
+DA:105,14
+DA:106,19
+DA:107,42
+DA:108,34
+DA:156,43
+DA:160,14
+DA:161,14
+DA:162,3
+DA:164,5
+DA:165,5
+DA:166,2
+DA:193,114
+DA:197,8
+DA:198,8
+DA:200,19
+DA:201,17
+DA:203,25
+DA:204,25
+DA:207,12
+DA:208,12
+DA:209,12
+DA:224,41
+DA:226,2
+DA:227,5
+DA:228,5
+DA:230,5
+DA:232,4
+DA:233,4
+DA:236,2
+DA:237,2
+DA:238,2
+DA:247,2
+DA:248,2
+DA:259,1
+DA:260,1
+DA:265,8
+DA:266,8
+DA:270,6
+DA:271,6
+DA:335,14
+DA:338,1
+DA:339,1
+DA:341,6
+DA:342,6
+DA:343,3
+DA:344,6
+DA:345,6
+DA:347,1
+DA:348,1
+DA:349,1
+DA:350,1
+DA:351,1
+DA:353,1
+DA:354,1
+DA:355,1
+DA:358,1
+DA:359,1
+DA:360,1
+DA:362,2
+DA:363,2
+DA:364,2
+DA:365,2
+DA:370,3
+DA:379,1
+DA:380,1
+DA:432,26
+DA:435,2
+DA:436,2
+DA:438,4
+DA:439,4
+DA:442,4
+DA:443,4
+DA:444,2
+DA:453,2
+DA:454,2
+DA:459,20
+DA:464,1
+DA:465,1
+DA:467,1
+DA:469,15
+DA:470,15
+DA:471,15
+DA:473,2
+DA:474,2
+DA:475,2
+DA:477,5
+DA:479,18
+DA:481,4
+DA:482,4
+DA:483,0
+DA:484,4
+DA:495,1
+DA:497,1
+BA:98,0
+BA:98,0
+BA:98,0
+BA:98,0
+BA:98,0
+BA:98,0
+BA:98,1
+BA:98,2
+BA:98,0
+BA:98,0
+BA:98,0
+BA:98,0
+BA:103,2
+BA:103,1
+BA:103,1
+BA:103,2
+BA:103,2
+BA:103,1
+BA:103,1
+BA:103,2
+BA:103,2
+BA:103,1
+BA:103,1
+BA:103,2
+BA:103,2
+BA:103,1
+BA:103,1
+BA:103,2
+BA:103,2
+BA:103,1
+BA:103,1
+BA:103,2
+BA:103,2
+BA:103,1
+BA:103,1
+BA:103,2
+BA:103,0
+BA:103,0
+BA:103,0
+BA:103,0
+BA:103,2
+BA:103,1
+BA:103,1
+BA:103,2
+BA:204,2
+BA:204,2
+BA:204,2
+BA:204,1
+BA:204,0
+BA:204,0
+BA:204,0
+BA:204,0
+BA:204,2
+BA:204,1
+BA:204,2
+BA:204,1
+BA:342,2
+BA:342,2
+BA:479,2
+BA:479,2
+BA:479,2
+BA:479,2
+BA:482,2
+BA:482,2
+BA:482,1
+BA:482,2
+BA:482,1
+BA:482,2
+LF:113
+LH:110
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:52,_ZlsIiER12AssertFailedS1_T_
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:67,_Z12assert_eq_fnIiiEv8LocationT_T0_
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:67,_Z12assert_eq_fnIjjEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:75,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+LF:26
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/range.test.h
+FN:163,_ZN12_GLOBAL__N_19TestRange11removeFirstERi
+FN:167,_ZN12_GLOBAL__N_19TestRange5isEndERKi
+FN:171,_ZN12_GLOBAL__N_19TestRange15_generatedRangeEv
+FN:116,_ZN12_GLOBAL__N_19TestRange18_transformedRange2Ev
+FN:101,_ZN12_GLOBAL__N_19TestRange17_transformedRangeEv
+FN:131,_ZN12_GLOBAL__N_19TestRange19tailOfIteratorRangeEv
+FN:88,_ZN12_GLOBAL__N_19TestRange10assignmentEv
+FN:146,_ZN12_GLOBAL__N_19TestRange12_castedRangeEv
+FN:57,_ZN12_GLOBAL__N_19TestRange14_filteredRangeEv
+FN:37,_ZN12_GLOBAL__N_19TestRange14copyToConsumerEv
+FN:26,_ZN12_GLOBAL__N_19TestRange4copyEv
+FN:15,_ZN12_GLOBAL__N_19TestRange13iteratorRangeEv
+FN:73,_ZN12_GLOBAL__N_19TestRange4sortEv
+DA:15,1
+DA:16,1
+DA:17,1
+DA:18,1
+DA:19,1
+DA:20,1
+DA:21,1
+DA:22,2
+DA:23,1
+DA:24,1
+DA:26,1
+DA:27,1
+DA:28,1
+DA:29,1
+DA:30,1
+DA:31,1
+DA:32,1
+DA:33,2
+DA:34,1
+DA:35,1
+DA:37,1
+DA:39,1
+DA:40,1
+DA:41,1
+DA:42,1
+DA:43,1
+DA:44,1
+DA:45,1
+DA:46,1
+DA:47,1
+DA:48,1
+DA:49,4
+DA:50,2
+DA:51,4
+DA:52,2
+DA:54,1
+DA:55,1
+DA:57,1
+DA:58,1
+DA:59,1
+DA:60,1
+DA:61,1
+DA:62,1
+DA:63,1
+DA:67,1
+DA:68,1
+DA:69,2
+DA:70,1
+DA:71,1
+DA:73,1
+DA:74,1
+DA:75,1
+DA:76,1
+DA:77,1
+DA:78,1
+DA:79,1
+DA:80,1
+DA:81,1
+DA:82,1
+DA:83,2
+DA:84,2
+DA:85,2
+DA:86,1
+DA:88,1
+DA:89,1
+DA:90,1
+DA:91,1
+DA:92,1
+DA:93,1
+DA:94,1
+DA:95,1
+DA:96,1
+DA:97,1
+DA:98,2
+DA:99,1
+DA:101,1
+DA:102,1
+DA:103,1
+DA:104,1
+DA:105,1
+DA:106,1
+DA:108,1
+DA:109,1
+DA:110,1
+DA:111,1
+DA:112,1
+DA:113,1
+DA:114,1
+DA:116,1
+DA:117,1
+DA:118,1
+DA:119,1
+DA:120,1
+DA:121,1
+DA:123,1
+DA:124,1
+DA:125,1
+DA:126,1
+DA:127,1
+DA:128,1
+DA:129,1
+DA:131,1
+DA:132,1
+DA:133,1
+DA:134,1
+DA:135,1
+DA:136,1
+DA:137,1
+DA:138,2
+DA:139,1
+DA:140,2
+DA:141,1
+DA:142,2
+DA:143,1
+DA:144,1
+DA:146,1
+DA:148,1
+DA:149,1
+DA:150,1
+DA:151,1
+DA:153,1
+DA:154,1
+DA:155,2
+DA:156,1
+DA:157,2
+DA:158,1
+DA:159,2
+DA:160,1
+DA:161,1
+DA:163,15
+DA:164,15
+DA:165,15
+DA:167,9
+DA:168,9
+DA:171,1
+DA:172,1
+DA:173,1
+DA:174,2
+DA:175,1
+DA:176,1
+DA:177,1
+DA:178,1
+DA:179,1
+DA:180,1
+BA:49,2
+BA:49,2
+LF:144
+LH:144
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_range.cpp
+FN:13,_Z41__static_initialization_and_destruction_0ii
+FN:13,_GLOBAL__I__Z23run_Range_iteratorRangev
+FN:13,_ZN6wibble9MorphBaseINS_14GeneratedRangeIiPFvRiEPFbRKiEEENS_14RangeInterfaceIiEEED0Ev
+FN:13,_ZN6wibble9MorphBaseINS_14GeneratedRangeIiPFvRiEPFbRKiEEENS_14RangeInterfaceIiEEED1Ev
+FN:13,_ZN6wibble10RangeMorphIiNS_14GeneratedRangeIiPFvRiEPFbRKiEEEED0Ev
+FN:13,_ZN6wibble9MorphBaseINS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEENS_14RangeInterfaceIiEEED0Ev
+FN:13,_ZN6wibble9MorphBaseINS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEENS_14RangeInterfaceIiEEED1Ev
+FN:13,_ZN6wibble10RangeMorphIiNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEEED0Ev
+FN:13,_ZN6wibble9MorphBaseINS_11CastedRangeIjiEENS_14RangeInterfaceIjEEED0Ev
+FN:13,_ZN6wibble9MorphBaseINS_11CastedRangeIjiEENS_14RangeInterfaceIjEEED1Ev
+FN:13,_ZN6wibble10RangeMorphIjNS_11CastedRangeIjiEEED0Ev
+FN:13,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEENS_17ConsumerInterfaceIjEEED0Ev
+FN:13,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEENS_17ConsumerInterfaceIjEEED1Ev
+FN:13,_ZN6wibble13ConsumerMorphIjNS_20ConsumerFromIteratorIjSt15insert_iteratorISt6vectorIjSaIjEEEEEED0Ev
+FN:13,_ZN6wibble9MorphBaseINS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEENS_14RangeInterfaceIjEEED0Ev
+FN:13,_ZN6wibble9MorphBaseINS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEENS_14RangeInterfaceIjEEED1Ev
+FN:13,_ZN6wibble10RangeMorphIjNS_13IteratorRangeIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEEEED0Ev
+FN:13,_ZN6wibble9MorphBaseINS_11CastedRangeIijEENS_14RangeInterfaceIiEEED0Ev
+FN:13,_ZN6wibble9MorphBaseINS_11CastedRangeIijEENS_14RangeInterfaceIiEEED1Ev
+FN:13,_ZN6wibble10RangeMorphIiNS_11CastedRangeIijEEED0Ev
+FN:13,_ZN6wibble9MorphBaseINS_16TransformedRangeISt9binder1stISt4plusIiEEEENS_14RangeInterfaceIiEEED0Ev
+FN:13,_ZN6wibble9MorphBaseINS_16TransformedRangeISt9binder1stISt4plusIiEEEENS_14RangeInterfaceIiEEED1Ev
+FN:13,_ZN6wibble10RangeMorphIiNS_16TransformedRangeISt9binder1stISt4plusIiEEEEED0Ev
+FN:13,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEENS_17ConsumerInterfaceIiEEED0Ev
+FN:13,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEENS_17ConsumerInterfaceIiEEED1Ev
+FN:13,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEED0Ev
+FN:13,_ZN6wibble9MorphBaseINS_13IteratorRangeISt14_List_iteratorIiEEENS_14RangeInterfaceIiEEED0Ev
+FN:13,_ZN6wibble9MorphBaseINS_13IteratorRangeISt14_List_iteratorIiEEENS_14RangeInterfaceIiEEED1Ev
+FN:13,_ZN6wibble10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEED0Ev
+FN:13,_ZN6wibble9MorphBaseINS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEENS_14RangeInterfaceIiEEED0Ev
+FN:13,_ZN6wibble9MorphBaseINS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEENS_14RangeInterfaceIiEEED1Ev
+FN:13,_ZN6wibble10RangeMorphIiNS_13FilteredRangeINS_5RangeIiEESt9binder1stISt8equal_toIiEEEEED0Ev
+FN:13,_Z25run_Range__generatedRangev
+FN:10,_Z28run_Range__transformedRange2v
+FN:9,_Z27run_Range__transformedRangev
+FN:11,_Z29run_Range_tailOfIteratorRangev
+FN:8,_Z20run_Range_assignmentv
+FN:12,_Z22run_Range__castedRangev
+FN:6,_Z24run_Range__filteredRangev
+FN:5,_Z24run_Range_copyToConsumerv
+FN:4,_Z14run_Range_copyv
+FN:3,_Z23run_Range_iteratorRangev
+FN:7,_Z14run_Range_sortv
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,1
+DA:7,1
+DA:8,1
+DA:9,1
+DA:10,1
+DA:11,1
+DA:12,1
+DA:13,152
+BA:13,2
+BA:13,1
+BA:13,2
+BA:13,1
+LF:11
+LH:11
+end_of_record
+SF:/usr/include/c++/4.3/backward/binders.h
+FN:110,_ZNSt9binder1stISt8equal_toIiEEC1ERKS1_RKi
+FN:127,_ZSt7bind1stISt8equal_toIiEiESt9binder1stIT_ERKS3_RKT0_
+FN:110,_ZNSt9binder1stISt4plusIiEEC1ERKS1_RKi
+FN:127,_ZSt7bind1stISt4plusIiEiESt9binder1stIT_ERKS3_RKT0_
+FN:114,_ZNKSt9binder1stISt4plusIiEEclERKi
+FN:114,_ZNKSt9binder1stISt8equal_toIiEEclERKi
+DA:110,3
+DA:111,3
+DA:114,6
+DA:115,6
+DA:127,3
+DA:130,3
+LF:6
+LH:6
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaISt10_List_nodeIiEED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaIiED2Ev
+FN:106,_ZNSaIiED1Ev
+FN:106,_ZNSaIjED2Ev
+FN:98,_ZNSaISt10_List_nodeIiEEC2Ev
+FN:98,_ZNSaIiEC2Ev
+FN:104,_ZNSaIiEC1ISt10_List_nodeIiEEERKSaIT_E
+FN:98,_ZNSaIjEC2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,1
+DA:100,0
+DA:101,0
+DA:104,0
+DA:106,1
+DA:118,0
+DA:119,0
+LF:7
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:51
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/list.tcc
+FN:70,_ZNSt10_List_baseIiSaIiEE8_M_clearEv
+DA:70,0
+DA:73,0
+DA:74,0
+DA:76,0
+DA:77,0
+DA:78,0
+DA:79,0
+DA:81,0
+BA:74,0
+BA:74,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algo.h
+FN:89,_ZSt8__medianIiERKT_S2_S2_S2_
+FN:1714,_ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEiEvT_T0_
+FN:1793,_ZSt26__unguarded_insertion_sortIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEvT_S7_
+FN:1856,_ZSt21__unguarded_partitionIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEiET_S7_S7_T0_
+FN:1555,_ZSt13__heap_selectIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEvT_S7_S7_
+FN:4622,_ZSt12partial_sortIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEvT_S7_S7_
+FN:1898,_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEiEvT_S7_T0_
+FN:160,_ZSt9__find_ifIN6wibble13RangeIteratorINS0_5RangeIiEEEESt9binder1stISt8equal_toIiEEET_S9_S9_T0_St18input_iterator_tag
+FN:3829,_ZSt7find_ifIN6wibble13RangeIteratorINS0_5RangeIiEEEESt9binder1stISt8equal_toIiEEET_S9_S9_T0_
+FN:1748,_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEvT_S7_
+FN:1825,_ZSt22__final_insertion_sortIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEvT_S7_
+FN:1970,_ZSt4__lgi
+FN:4770,_ZSt4sortIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEvT_S7_
+DA:89,0
+DA:93,0
+DA:94,0
+DA:95,0
+DA:96,0
+DA:97,0
+DA:99,0
+DA:100,0
+DA:101,0
+DA:102,0
+DA:103,0
+DA:105,0
+DA:160,3
+DA:162,7
+DA:163,1
+DA:164,3
+DA:1555,0
+DA:1557,0
+DA:1558,0
+DA:1559,0
+DA:1560,0
+DA:1561,0
+DA:1714,0
+DA:1716,0
+DA:1717,0
+DA:1718,0
+DA:1720,0
+DA:1721,0
+DA:1722,0
+DA:1724,0
+DA:1725,0
+DA:1748,0
+DA:1750,0
+DA:1751,0
+DA:1753,0
+DA:1756,0
+DA:1757,0
+DA:1759,0
+DA:1760,0
+DA:1763,0
+DA:1793,0
+DA:1798,0
+DA:1799,0
+DA:1800,0
+DA:1825,0
+DA:1827,0
+DA:1829,0
+DA:1830,0
+DA:1833,0
+DA:1834,0
+DA:1856,0
+DA:1858,0
+DA:1860,0
+DA:1861,0
+DA:1862,0
+DA:1863,0
+DA:1864,0
+DA:1865,0
+DA:1866,0
+DA:1867,0
+DA:1868,0
+DA:1898,0
+DA:1903,0
+DA:1905,0
+DA:1907,0
+DA:1908,0
+DA:1910,0
+DA:1919,0
+DA:1920,0
+DA:1921,0
+DA:1970,0
+DA:1971,0
+DA:3829,3
+DA:3837,3
+DA:4622,0
+DA:4634,0
+DA:4635,0
+DA:4636,0
+DA:4770,0
+DA:4781,0
+DA:4783,0
+DA:4785,0
+DA:4787,0
+BA:93,0
+BA:93,0
+BA:94,0
+BA:94,0
+BA:96,0
+BA:96,0
+BA:100,0
+BA:100,0
+BA:102,0
+BA:102,0
+BA:162,2
+BA:162,2
+BA:162,2
+BA:162,2
+BA:162,2
+BA:162,2
+BA:1558,0
+BA:1558,0
+BA:1559,0
+BA:1559,0
+BA:1718,0
+BA:1718,0
+BA:1750,0
+BA:1750,0
+BA:1753,0
+BA:1753,0
+BA:1757,0
+BA:1757,0
+BA:1798,0
+BA:1798,0
+BA:1827,0
+BA:1827,0
+BA:1860,0
+BA:1860,0
+BA:1863,0
+BA:1863,0
+BA:1865,0
+BA:1865,0
+BA:1903,0
+BA:1903,0
+BA:1905,0
+BA:1905,0
+BA:4781,0
+BA:4781,0
+LF:83
+LH:6
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN6wibble13RangeIteratorINS0_5RangeIiEEEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIN6wibble13RangeIteratorINS0_5RangeIiEEEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt4listIiSaIiEEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIN6wibble8ConsumerIiEELb0EE3__bES2_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:286,_ZNSt12__miter_baseIPiLb0EE3__bES0_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEELb0EE3__bES6_
+FN:268,_ZNSt12__niter_baseIPiLb0EE3__bES0_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt20forward_iterator_tagE8__copy_mIN6wibble13RangeIteratorINS3_5RangeIiEEEENS3_8ConsumerIiEEEET0_T_SB_SA_
+FN:104,_ZNSt11__iter_swapILb1EE9iter_swapIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEES8_EEvT_T0_
+FN:121,_ZSt9iter_swapIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEES6_EvT_T0_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEELb1EE3__bES6_
+FN:286,_ZNSt12__miter_baseIPjLb0EE3__bES0_
+FN:268,_ZNSt12__niter_baseIPjLb0EE3__bES0_
+FN:385,_ZSt13__copy_move_aILb0EN6wibble13RangeIteratorINS0_5RangeIiEEEENS0_8ConsumerIiEEET1_T0_S8_S7_
+FN:430,_ZSt14__copy_move_a2ILb0EN6wibble13RangeIteratorINS0_5RangeIiEEEENS0_8ConsumerIiEEET1_T0_S8_S7_
+FN:456,_ZSt4copyIN6wibble13RangeIteratorINS0_5RangeIiEEEENS0_8ConsumerIiEEET0_T_S8_S7_
+FN:569,_ZNSt20__copy_move_backwardILb0ELb1ESt26random_access_iterator_tagE13__copy_move_bIiEEPT_PKS3_S6_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPiS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPiS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPiS0_ET0_T_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEES6_ET1_T0_S8_S7_
+FN:624,_ZSt13copy_backwardIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEES6_ET0_T_S8_S7_
+FN:375,_ZNSt11__copy_moveILb0ELb1ESt26random_access_iterator_tagE8__copy_mIiEEPT_PKS3_S6_S4_
+FN:385,_ZSt13__copy_move_aILb0EPiS0_ET1_T0_S2_S1_
+FN:430,_ZSt14__copy_move_a2ILb0EPiS0_ET1_T0_S2_S1_
+FN:456,_ZSt4copyIPiS0_ET0_T_S2_S1_
+FN:569,_ZNSt20__copy_move_backwardILb0ELb1ESt26random_access_iterator_tagE13__copy_move_bIjEEPT_PKS3_S6_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPjS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPjS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPjS0_ET0_T_S2_S1_
+FN:375,_ZNSt11__copy_moveILb0ELb1ESt26random_access_iterator_tagE8__copy_mIjEEPT_PKS3_S6_S4_
+FN:385,_ZSt13__copy_move_aILb0EPjS0_ET1_T0_S2_S1_
+FN:430,_ZSt14__copy_move_a2ILb0EPjS0_ET1_T0_S2_S1_
+FN:456,_ZSt4copyIPjS0_ET0_T_S2_S1_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt20forward_iterator_tagE8__copy_mIN6wibble13RangeIteratorINS3_5RangeIiEEEESt20back_insert_iteratorISt4listIiSaIiEEEEET0_T_SE_SD_
+FN:385,_ZSt13__copy_move_aILb0EN6wibble13RangeIteratorINS0_5RangeIiEEEESt20back_insert_iteratorISt4listIiSaIiEEEET1_T0_SB_SA_
+FN:430,_ZSt14__copy_move_a2ILb0EN6wibble13RangeIteratorINS0_5RangeIiEEEESt20back_insert_iteratorISt4listIiSaIiEEEET1_T0_SB_SA_
+FN:456,_ZSt4copyIN6wibble13RangeIteratorINS0_5RangeIiEEEESt20back_insert_iteratorISt4listIiSaIiEEEET0_T_SB_SA_
+DA:104,0
+DA:106,0
+DA:107,0
+DA:121,0
+DA:142,0
+DA:146,0
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,13
+DA:269,13
+DA:276,0
+DA:277,0
+DA:286,8
+DA:287,8
+DA:309,1
+DA:311,3
+DA:312,2
+DA:313,1
+DA:375,4
+DA:377,4
+DA:379,4
+DA:385,5
+DA:393,5
+DA:396,5
+DA:430,5
+DA:435,5
+DA:456,5
+DA:466,5
+DA:569,0
+DA:571,0
+DA:572,0
+DA:573,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+BA:311,0
+BA:311,0
+BA:311,2
+BA:311,2
+LF:41
+LH:18
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:97,_ZSt8_DestroyIPiEvT_S1_
+FN:126,_ZSt8_DestroyIPiiEvT_S1_RSaIT0_E
+FN:97,_ZSt8_DestroyIPjEvT_S1_
+FN:126,_ZSt8_DestroyIPjjEvT_S1_RSaIT0_E
+DA:97,3
+DA:104,3
+DA:126,3
+DA:128,3
+DA:129,3
+LF:5
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:104,_ZNSt14unary_functionIibEC2Ev
+FN:104,_ZNSt14unary_functionIiiEC2Ev
+FN:140,_ZNKSt4plusIiEclERKiS2_
+FN:202,_ZNKSt8equal_toIiEclERKiS2_
+DA:104,1
+DA:140,4
+DA:141,4
+DA:202,2
+DA:203,2
+LF:5
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_heap.h
+FN:131,_ZSt11__push_heapIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEiiEvT_T0_S8_T1_
+FN:225,_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEiiEvT_T0_S8_T1_
+FN:371,_ZSt9make_heapIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEvT_S7_
+FN:251,_ZSt10__pop_heapIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEvT_S7_S7_
+FN:276,_ZSt8pop_heapIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEvT_S7_
+FN:450,_ZSt9sort_heapIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEvT_S7_
+DA:131,0
+DA:133,0
+DA:134,0
+DA:136,0
+DA:137,0
+DA:138,0
+DA:140,0
+DA:141,0
+DA:225,0
+DA:227,0
+DA:228,0
+DA:229,0
+DA:231,0
+DA:232,0
+DA:233,0
+DA:234,0
+DA:235,0
+DA:237,0
+DA:239,0
+DA:240,0
+DA:242,0
+DA:244,0
+DA:246,0
+DA:251,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:263,0
+DA:276,0
+DA:288,0
+DA:289,0
+DA:371,0
+DA:384,0
+DA:385,0
+DA:387,0
+DA:388,0
+DA:389,0
+DA:391,0
+DA:392,0
+DA:393,0
+DA:394,0
+DA:395,0
+DA:450,0
+DA:460,0
+DA:461,0
+DA:462,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:229,0
+BA:229,0
+BA:232,0
+BA:232,0
+BA:237,0
+BA:237,0
+BA:237,0
+BA:237,0
+BA:384,0
+BA:384,0
+BA:393,0
+BA:393,0
+BA:460,0
+BA:460,0
+LF:46
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt4listIiSaIiEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt4listIiSaIiEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEC1ERKS1_
+FN:735,_ZNK9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEplERKi
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEE4baseEv
+FN:846,_ZN9__gnu_cxxmiIPiSt6vectorIiSaIiEEEENS_17__normal_iteratorIT_T0_E15difference_typeERKS8_SB_
+FN:769,_ZN9__gnu_cxxeqIPiSt6vectorIiSaIiEEEEbRKNS_17__normal_iteratorIT_T0_EESA_
+FN:781,_ZN9__gnu_cxxneIPiSt6vectorIiSaIiEEEEbRKNS_17__normal_iteratorIT_T0_EESA_
+FN:572,_ZNSt15insert_iteratorISt6vectorIiSaIiEEEC1ERS2_N9__gnu_cxx17__normal_iteratorIPiS2_EE
+FN:645,_ZSt8inserterISt6vectorIiSaIiEEN9__gnu_cxx17__normal_iteratorIPiS2_EEESt15insert_iteratorIT_ERS8_T0_
+FN:743,_ZNK9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEmiERKi
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEC1ERKS1_
+FN:572,_ZNSt15insert_iteratorISt6vectorIjSaIjEEEC1ERS2_N9__gnu_cxx17__normal_iteratorIPjS2_EE
+FN:645,_ZSt8inserterISt6vectorIjSaIjEEN9__gnu_cxx17__normal_iteratorIPjS2_EEESt15insert_iteratorIT_ERS8_T0_
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEppEv
+FN:715,_ZN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEmmEv
+FN:794,_ZN9__gnu_cxxltIPiSt6vectorIiSaIiEEEEbRKNS_17__normal_iteratorIT_T0_EESA_
+FN:434,_ZNSt20back_insert_iteratorISt4listIiSaIiEEEppEv
+FN:429,_ZNSt20back_insert_iteratorISt4listIiSaIiEEEdeEv
+FN:722,_ZN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEmmEi
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEdeEv
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEppEv
+FN:618,_ZNSt15insert_iteratorISt6vectorIjSaIjEEEdeEv
+FN:623,_ZNSt15insert_iteratorISt6vectorIjSaIjEEEppEv
+FN:618,_ZNSt15insert_iteratorISt6vectorIiSaIiEEEdeEv
+FN:623,_ZNSt15insert_iteratorISt6vectorIiSaIiEEEppEv
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPjSt6vectorIjSaIjEEEEbRKNS_17__normal_iteratorIT_T0_EESA_
+FN:846,_ZN9__gnu_cxxmiIPjSt6vectorIjSaIjEEEENS_17__normal_iteratorIT_T0_E15difference_typeERKS8_SB_
+FN:599,_ZNSt15insert_iteratorISt6vectorIiSaIiEEEaSERKi
+FN:599,_ZNSt15insert_iteratorISt6vectorIjSaIjEEEaSERKj
+FN:412,_ZNSt20back_insert_iteratorISt4listIiSaIiEEEaSERKi
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:572,1
+DA:573,1
+DA:599,2
+DA:601,2
+DA:602,2
+DA:603,2
+DA:618,6
+DA:619,6
+DA:623,2
+DA:624,2
+DA:645,1
+DA:648,1
+DA:683,7
+DA:695,2
+DA:696,2
+DA:703,4
+DA:705,4
+DA:706,4
+DA:715,0
+DA:717,0
+DA:718,0
+DA:722,0
+DA:723,0
+DA:735,0
+DA:736,0
+DA:743,0
+DA:744,0
+DA:747,16
+DA:748,16
+DA:769,4
+DA:770,4
+DA:781,0
+DA:782,0
+DA:794,0
+DA:795,0
+DA:846,2
+DA:847,2
+LF:47
+LH:24
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:124,_ZSt9__advanceIN6wibble13RangeIteratorINS0_5RangeIiEEEEiEvRT_T0_St18input_iterator_tag
+FN:173,_ZSt7advanceIN6wibble13RangeIteratorINS0_5RangeIiEEEEiEvRT_T0_
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+DA:124,10
+DA:128,41
+DA:129,21
+DA:130,10
+DA:173,10
+DA:176,10
+DA:177,10
+DA:178,10
+BA:128,2
+BA:128,2
+LF:12
+LH:8
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIN6wibble13RangeIteratorINS0_5RangeIiEEEEENSt15iterator_traitsIT_E17iterator_categoryERKS6_
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,13
+DA:167,13
+LF:3
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_list.h
+FN:126,_ZNSt14_List_iteratorIiEC1EPSt15_List_node_base
+FN:666,_ZNSt4listIiSaIiEE3endEv
+FN:648,_ZNSt4listIiSaIiEE5beginEv
+FN:211,_ZNKSt20_List_const_iteratorIiEdeEv
+FN:253,_ZNKSt20_List_const_iteratorIiEneERKS0_
+FN:219,_ZNSt20_List_const_iteratorIiEppEv
+FN:249,_ZNKSt20_List_const_iteratorIiEeqERKS0_
+FN:364,_ZNSt10_List_baseIiSaIiEE7_M_initEv
+FN:298,_ZNSt10_List_baseIiSaIiEE10_List_implD1Ev
+FN:202,_ZNSt20_List_const_iteratorIiEC1EPKSt15_List_node_base
+FN:675,_ZNKSt4listIiSaIiEE3endEv
+FN:657,_ZNKSt4listIiSaIiEE5beginEv
+FN:1386,_ZSteqIiSaIiEEbRKSt4listIT_T0_ES6_
+FN:1422,_ZStneIiSaIiEEbRKSt4listIT_T0_ES6_
+FN:328,_ZNKSt10_List_baseIiSaIiEE21_M_get_Node_allocatorEv
+FN:301,_ZNSt10_List_baseIiSaIiEE10_List_implC1Ev
+FN:339,_ZNSt10_List_baseIiSaIiEEC2Ev
+FN:498,_ZNSt4listIiSaIiEEC1Ev
+FN:332,_ZNKSt10_List_baseIiSaIiEE19_M_get_Tp_allocatorEv
+FN:131,_ZNKSt14_List_iteratorIiEdeEv
+FN:139,_ZNSt14_List_iteratorIiEppEv
+FN:169,_ZNKSt14_List_iteratorIiEeqERKS0_
+FN:317,_ZNSt10_List_baseIiSaIiEE11_M_put_nodeEPSt10_List_nodeIiE
+FN:357,_ZNSt10_List_baseIiSaIiEED2Ev
+FN:417,_ZNSt4listIiSaIiEED1Ev
+FN:313,_ZNSt10_List_baseIiSaIiEE11_M_get_nodeEv
+FN:458,_ZNSt4listIiSaIiEE14_M_create_nodeERKi
+FN:1339,_ZNSt4listIiSaIiEE9_M_insertESt14_List_iteratorIiERKi
+FN:875,_ZNSt4listIiSaIiEE9push_backERKi
+DA:126,0
+DA:127,0
+DA:131,0
+DA:132,0
+DA:139,0
+DA:141,0
+DA:142,0
+DA:169,0
+DA:170,0
+DA:202,0
+DA:203,0
+DA:211,0
+DA:212,0
+DA:219,0
+DA:221,0
+DA:222,0
+DA:249,0
+DA:250,0
+DA:253,0
+DA:254,0
+DA:298,0
+DA:301,0
+DA:302,0
+DA:303,0
+DA:313,0
+DA:314,0
+DA:317,0
+DA:318,0
+DA:328,0
+DA:329,0
+DA:332,0
+DA:333,0
+DA:339,0
+DA:340,0
+DA:341,0
+DA:357,0
+DA:358,0
+DA:364,0
+DA:366,0
+DA:367,0
+DA:368,0
+DA:417,0
+DA:458,0
+DA:460,0
+DA:463,0
+DA:465,0
+DA:467,0
+DA:468,0
+DA:470,0
+DA:498,0
+DA:499,0
+DA:648,0
+DA:649,0
+DA:657,0
+DA:658,0
+DA:666,0
+DA:667,0
+DA:675,0
+DA:676,0
+DA:875,0
+DA:876,0
+DA:1339,0
+DA:1341,0
+DA:1342,0
+DA:1343,0
+DA:1386,0
+DA:1389,0
+DA:1390,0
+DA:1392,0
+DA:1393,0
+DA:1394,0
+DA:1396,0
+DA:1397,0
+DA:1399,0
+DA:1422,0
+DA:1423,0
+BA:1394,0
+BA:1394,0
+BA:1394,0
+BA:1394,0
+BA:1394,0
+BA:1394,0
+BA:1394,0
+BA:1394,0
+BA:1399,0
+BA:1399,0
+BA:1399,0
+BA:1399,0
+LF:76
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_move.h
+FN:80,_ZSt4swapIiEvRT_S1_
+DA:80,0
+DA:85,0
+DA:86,0
+DA:87,0
+DA:88,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:97,_ZNSt20__uninitialized_copyILb1EE18uninitialized_copyIPiS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPiS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPiS0_iET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPiS0_SaIiEET0_T_S3_S2_RT1_
+FN:97,_ZNSt20__uninitialized_copyILb1EE18uninitialized_copyIPjS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPjS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPjS0_jET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPjS0_SaIjEET0_T_S3_S2_RT1_
+DA:97,4
+DA:98,4
+DA:113,4
+DA:122,4
+DA:261,4
+DA:262,4
+DA:268,4
+DA:272,4
+LF:8
+LH:8
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseIiSaIiEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorIiSaIiEE3endEv
+FN:377,_ZNSt6vectorIiSaIiEE5beginEv
+FN:97,_ZNSt12_Vector_baseIjSaIjEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorIjSaIjEE3endEv
+FN:377,_ZNSt6vectorIjSaIjEE5beginEv
+FN:79,_ZNSt12_Vector_baseIiSaIiEE12_Vector_implD1Ev
+FN:484,_ZNKSt6vectorIiSaIiEE4sizeEv
+FN:79,_ZNSt12_Vector_baseIjSaIjEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseIiSaIiEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIiSaIiEEC2Ev
+FN:213,_ZNSt6vectorIiSaIiEEC1Ev
+FN:101,_ZNKSt12_Vector_baseIiSaIiEE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorIiSaIiEE8max_sizeEv
+FN:84,_ZNSt12_Vector_baseIjSaIjEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIjSaIjEEC2Ev
+FN:213,_ZNSt6vectorIjSaIjEEC1Ev
+FN:484,_ZNKSt6vectorIjSaIjEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseIjSaIjEE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorIjSaIjEE8max_sizeEv
+FN:147,_ZNSt12_Vector_baseIiSaIiEE13_M_deallocateEPij
+FN:135,_ZNSt12_Vector_baseIiSaIiEED2Ev
+FN:299,_ZNSt6vectorIiSaIiEED1Ev
+FN:147,_ZNSt12_Vector_baseIjSaIjEE13_M_deallocateEPjj
+FN:135,_ZNSt12_Vector_baseIjSaIjEED2Ev
+FN:299,_ZNSt6vectorIjSaIjEED1Ev
+FN:1075,_ZNKSt6vectorIiSaIiEE12_M_check_lenEjPKc
+FN:1075,_ZNKSt6vectorIjSaIjEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseIiSaIiEE11_M_allocateEj
+FN:686,_ZNSt6vectorIiSaIiEE9push_backERKi
+FN:143,_ZNSt12_Vector_baseIjSaIjEE11_M_allocateEj
+DA:79,1
+DA:84,1
+DA:85,1
+DA:86,1
+DA:97,7
+DA:98,7
+DA:101,4
+DA:102,4
+DA:108,1
+DA:109,1
+DA:135,1
+DA:136,1
+DA:137,1
+DA:143,2
+DA:144,2
+DA:147,3
+DA:149,3
+DA:150,2
+DA:151,3
+DA:213,1
+DA:214,1
+DA:299,1
+DA:300,1
+DA:301,1
+DA:377,3
+DA:378,3
+DA:395,2
+DA:396,2
+DA:484,8
+DA:485,8
+DA:489,4
+DA:490,4
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:1075,2
+DA:1077,2
+DA:1078,0
+DA:1080,2
+DA:1081,2
+BA:144,0
+BA:144,0
+BA:144,2
+BA:144,1
+BA:149,0
+BA:149,0
+BA:149,2
+BA:149,2
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1077,1
+BA:1077,2
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,2
+BA:1081,1
+BA:1081,1
+BA:1081,2
+LF:43
+LH:36
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorIiSaIiEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPiS1_EERKi
+FN:94,_ZNSt6vectorIiSaIiEE6insertEN9__gnu_cxx17__normal_iteratorIPiS1_EERKi
+FN:283,_ZNSt6vectorIjSaIjEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPjS1_EERKj
+FN:94,_ZNSt6vectorIjSaIjEE6insertEN9__gnu_cxx17__normal_iteratorIPjS1_EERKj
+DA:94,2
+DA:96,2
+DA:97,2
+DA:100,0
+DA:101,0
+DA:113,2
+DA:115,2
+DA:283,2
+DA:286,2
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,2
+DA:308,2
+DA:309,2
+DA:316,2
+DA:321,2
+DA:323,2
+DA:324,2
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,2
+DA:338,2
+DA:341,2
+DA:342,2
+DA:343,2
+DA:345,2
+BA:97,0
+BA:97,0
+BA:97,0
+BA:97,0
+BA:97,0
+BA:97,0
+BA:97,1
+BA:97,2
+BA:97,0
+BA:97,0
+BA:97,1
+BA:97,2
+BA:286,0
+BA:286,0
+BA:286,1
+BA:286,2
+LF:31
+LH:20
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorIiE9constructEPiRKi
+FN:76,_ZN9__gnu_cxx13new_allocatorISt10_List_nodeIiEED2Ev
+FN:118,_ZN9__gnu_cxx13new_allocatorIiE7destroyEPi
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorIiED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIjED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt10_List_nodeIiEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIiEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorIiE8max_sizeEv
+FN:69,_ZN9__gnu_cxx13new_allocatorIjEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt10_List_nodeIiEE8max_sizeEv
+FN:107,_ZN9__gnu_cxx13new_allocatorIjE9constructEPjRKj
+FN:101,_ZNK9__gnu_cxx13new_allocatorIjE8max_sizeEv
+FN:97,_ZN9__gnu_cxx13new_allocatorIiE10deallocateEPij
+FN:97,_ZN9__gnu_cxx13new_allocatorIjE10deallocateEPjj
+FN:97,_ZN9__gnu_cxx13new_allocatorISt10_List_nodeIiEE10deallocateEPS2_j
+FN:87,_ZN9__gnu_cxx13new_allocatorIiE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorIjE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt10_List_nodeIiEE8allocateEjPKv
+DA:69,1
+DA:71,0
+DA:76,1
+DA:87,2
+DA:89,2
+DA:90,0
+DA:92,2
+DA:97,2
+DA:98,2
+DA:101,6
+DA:102,6
+DA:107,2
+DA:108,2
+DA:118,0
+BA:89,0
+BA:89,0
+BA:89,1
+BA:89,2
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+BA:108,2
+BA:108,1
+LF:14
+LH:11
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+DA:105,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:195,_ZNSolsEj
+DA:95,0
+DA:112,0
+DA:117,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/typeinfo
+FN:122,_ZNKSt9type_info6beforeERKS_
+DA:122,0
+DA:123,0
+LF:2
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/commandline/core.h
+FN:21,_ZNK6wibble9exception9BadOption4typeEv
+FN:52,_ZN6wibble11commandline7ManagedC2Ev
+FN:22,_ZNK6wibble9exception9BadOption4descEv
+FN:54,_ZN6wibble11commandline7ManagedD2Ev
+FN:54,_ZN6wibble11commandline7ManagedD0Ev
+FN:54,_ZN6wibble11commandline7ManagedD1Ev
+FN:19,_ZN6wibble9exception9BadOptionD0Ev
+FN:17,_ZN6wibble9exception9BadOptionC1ERKSsS3_
+FN:34,_ZN6wibble11commandline7ArgList15eraseAndAdvanceERSt14_List_iteratorISsE
+FN:19,_ZN6wibble9exception9BadOptionD1Ev
+DA:17,0
+DA:18,0
+DA:19,0
+DA:21,0
+DA:22,0
+DA:34,0
+DA:36,0
+DA:37,0
+DA:38,0
+DA:39,0
+DA:40,0
+DA:41,0
+DA:42,0
+DA:52,0
+DA:54,0
+BA:19,0
+BA:19,0
+BA:19,0
+BA:19,0
+BA:36,0
+BA:36,0
+BA:54,0
+BA:54,0
+BA:54,0
+BA:54,0
+BA:54,0
+BA:54,0
+LF:15
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/commandline/options.h
+FN:97,_ZNK6wibble11commandline6Option5isSetEv
+FN:98,_ZNK6wibble11commandline6Option4nameEv
+FN:135,_ZN6wibble11commandline10BoolOption5parseERNS0_7ArgListESt14_List_iteratorISsE
+FN:136,_ZN6wibble11commandline10BoolOption5parseERKSs
+FN:139,_ZNK6wibble11commandline10BoolOption9boolValueEv
+FN:272,_ZNK6wibble11commandline12VectorOptionINS0_4BoolEE6valuesEv
+FN:272,_ZNK6wibble11commandline12VectorOptionINS0_6StringEE6valuesEv
+FN:271,_ZNK6wibble11commandline12VectorOptionINS0_4BoolEE9boolValueEv
+FN:271,_ZNK6wibble11commandline12VectorOptionINS0_6StringEE9boolValueEv
+FN:140,_ZNK6wibble11commandline10BoolOption11stringValueEv
+FN:254,_ZN6wibble11commandline12VectorOptionINS0_6StringEE5parseERNS0_7ArgListESt14_List_iteratorISsE
+FN:263,_ZN6wibble11commandline12VectorOptionINS0_6StringEE5parseERKSs
+FN:95,_ZN6wibble11commandline6OptionD2Ev
+FN:234,_ZN6wibble11commandline12VectorOptionINS0_6StringEED2Ev
+FN:234,_ZN6wibble11commandline12VectorOptionINS0_6StringEED0Ev
+FN:234,_ZN6wibble11commandline12VectorOptionINS0_6StringEED1Ev
+FN:234,_ZN6wibble11commandline12VectorOptionINS0_4BoolEED2Ev
+FN:234,_ZN6wibble11commandline12VectorOptionINS0_4BoolEED0Ev
+FN:234,_ZN6wibble11commandline12VectorOptionINS0_4BoolEED1Ev
+FN:148,_ZN6wibble11commandline12SingleOptionINS0_3IntEED2Ev
+FN:205,_ZN6wibble11commandline9IntOptionD2Ev
+FN:205,_ZN6wibble11commandline9IntOptionD0Ev
+FN:205,_ZN6wibble11commandline9IntOptionD1Ev
+FN:148,_ZN6wibble11commandline12SingleOptionINS0_3IntEED0Ev
+FN:148,_ZN6wibble11commandline12SingleOptionINS0_3IntEED1Ev
+FN:122,_ZN6wibble11commandline10BoolOptionD2Ev
+FN:122,_ZN6wibble11commandline10BoolOptionD0Ev
+FN:122,_ZN6wibble11commandline10BoolOptionD1Ev
+FN:95,_ZN6wibble11commandline6OptionD0Ev
+FN:95,_ZN6wibble11commandline6OptionD1Ev
+FN:59,_ZN6wibble11commandline6OptionC2ERKSs
+FN:238,_ZN6wibble11commandline12VectorOptionINS0_6StringEEC2ERKSs
+FN:238,_ZN6wibble11commandline12VectorOptionINS0_4BoolEEC2ERKSs
+FN:152,_ZN6wibble11commandline12SingleOptionINS0_3IntEEC2ERKSs
+FN:207,_ZN6wibble11commandline9IntOptionC2ERKSs
+FN:126,_ZN6wibble11commandline10BoolOptionC2ERKSs
+FN:168,_ZN6wibble11commandline12SingleOptionINS0_6StringEE5parseERNS0_7ArgListESt14_List_iteratorISsE
+FN:148,_ZN6wibble11commandline12SingleOptionINS0_6StringEED2Ev
+FN:177,_ZN6wibble11commandline12SingleOptionINS0_6StringEE5parseERKSs
+FN:148,_ZN6wibble11commandline12SingleOptionINS0_6StringEED0Ev
+FN:148,_ZN6wibble11commandline12SingleOptionINS0_6StringEED1Ev
+FN:152,_ZN6wibble11commandline12SingleOptionINS0_6StringEEC2ERKSs
+FN:254,_ZN6wibble11commandline12VectorOptionINS0_4BoolEE5parseERNS0_7ArgListESt14_List_iteratorISsE
+FN:263,_ZN6wibble11commandline12VectorOptionINS0_4BoolEE5parseERKSs
+FN:192,_ZNK6wibble11commandline12SingleOptionINS0_6StringEE9boolValueEv
+FN:194,_ZNK6wibble11commandline12SingleOptionINS0_6StringEE11stringValueEv
+FN:168,_ZN6wibble11commandline12SingleOptionINS0_3IntEE5parseERNS0_7ArgListESt14_List_iteratorISsE
+FN:177,_ZN6wibble11commandline12SingleOptionINS0_3IntEE5parseERKSs
+FN:192,_ZNK6wibble11commandline12SingleOptionINS0_3IntEE9boolValueEv
+FN:193,_ZNK6wibble11commandline12SingleOptionINS0_3IntEE8intValueEv
+FN:194,_ZNK6wibble11commandline12SingleOptionINS0_3IntEE11stringValueEv
+DA:59,5
+DA:95,0
+DA:97,12
+DA:98,5
+DA:122,1
+DA:126,1
+DA:127,1
+DA:135,0
+DA:136,0
+DA:139,0
+DA:140,2
+DA:148,1
+DA:152,2
+DA:153,2
+DA:155,2
+DA:156,2
+DA:168,0
+DA:170,0
+DA:171,0
+DA:172,0
+DA:173,0
+DA:175,0
+DA:177,0
+DA:179,0
+DA:180,0
+DA:181,0
+DA:192,2
+DA:193,0
+DA:194,2
+DA:205,1
+DA:207,1
+DA:209,1
+DA:210,1
+DA:234,2
+DA:238,2
+DA:239,2
+DA:241,2
+DA:242,2
+DA:254,0
+DA:256,0
+DA:257,0
+DA:258,0
+DA:259,0
+DA:261,0
+DA:263,4
+DA:265,4
+DA:266,4
+DA:267,4
+DA:271,6
+DA:272,12
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:122,1
+BA:122,2
+BA:122,0
+BA:122,0
+BA:122,0
+BA:122,0
+BA:140,2
+BA:140,2
+BA:148,0
+BA:148,0
+BA:148,0
+BA:148,0
+BA:148,0
+BA:148,0
+BA:148,1
+BA:148,2
+BA:148,0
+BA:148,0
+BA:148,0
+BA:148,0
+BA:170,0
+BA:170,0
+BA:170,0
+BA:170,0
+BA:205,1
+BA:205,2
+BA:205,0
+BA:205,0
+BA:205,0
+BA:205,0
+BA:234,1
+BA:234,2
+BA:234,0
+BA:234,0
+BA:234,0
+BA:234,0
+BA:234,1
+BA:234,2
+BA:234,0
+BA:234,0
+BA:234,0
+BA:234,0
+BA:256,0
+BA:256,0
+BA:256,0
+BA:256,0
+LF:50
+LH:29
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:263,_ZNK6wibble9exception11Consistency4typeEv
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:265,_ZNK6wibble9exception11Consistency4descEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:109,_ZN6wibble9exception10AddContext7contextEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:261,_ZN6wibble9exception11ConsistencyD0Ev
+FN:261,_ZN6wibble9exception11ConsistencyD1Ev
+FN:261,_ZN6wibble9exception11ConsistencyD2Ev
+FN:117,_ZN6wibble9exception10AddContext11copyContextISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvT_
+FN:153,_ZN6wibble9exception7Context10addContextERKSs
+FN:147,_ZN6wibble9exception7ContextC2ERKSs
+FN:186,_ZN6wibble9exception7GenericC2ERKSs
+FN:259,_ZN6wibble9exception11ConsistencyC2ERKSsS3_
+DA:109,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:113,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:137,0
+DA:147,0
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:186,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:259,0
+DA:260,0
+DA:261,0
+DA:263,0
+DA:265,0
+DA:266,0
+DA:267,0
+DA:268,0
+DA:269,0
+BA:110,0
+BA:110,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:267,0
+BA:267,0
+LF:44
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:52,_ZlsIiER12AssertFailedS1_T_
+FN:52,_ZlsIbER12AssertFailedS1_T_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:67,_Z12assert_eq_fnIbbEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnIjjEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnIiiEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsSsEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsPKcEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:75,0
+BA:42,0
+BA:42,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+LF:22
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/commandline/options.test.h
+FN:30,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline10BoolOptionEE5parseERKSs
+FN:27,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline10BoolOptionEE5parseERNS2_7ArgListESt14_List_iteratorISsE
+FN:27,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline12VectorOptionINS2_6StringEEEE5parseERNS2_7ArgListESt14_List_iteratorISsE
+FN:30,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline12VectorOptionINS2_6StringEEEE5parseERKSs
+FN:16,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline12VectorOptionINS2_6StringEEEED0Ev
+FN:16,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline12VectorOptionINS2_6StringEEEED1Ev
+FN:16,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline12VectorOptionINS2_4BoolEEEED0Ev
+FN:16,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline12VectorOptionINS2_4BoolEEEED1Ev
+FN:16,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline9IntOptionEED0Ev
+FN:16,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline9IntOptionEED1Ev
+FN:16,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline10BoolOptionEED0Ev
+FN:16,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline10BoolOptionEED1Ev
+FN:18,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline12VectorOptionINS2_6StringEEEEC1ERKSs
+FN:18,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline12VectorOptionINS2_4BoolEEEEC1ERKSs
+FN:18,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline9IntOptionEEC1ERKSs
+FN:18,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline10BoolOptionEEC1ERKSs
+FN:100,_ZN22TestCommandlineOptions15vectorStringOptEv
+FN:27,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline12SingleOptionINS2_6StringEEEE5parseERNS2_7ArgListESt14_List_iteratorISsE
+FN:16,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline12SingleOptionINS2_6StringEEEED0Ev
+FN:16,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline12SingleOptionINS2_6StringEEEED1Ev
+FN:30,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline12SingleOptionINS2_6StringEEEE5parseERKSs
+FN:18,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline12SingleOptionINS2_6StringEEEEC1ERKSs
+FN:35,_ZN22TestCommandlineOptions7boolOptEv
+FN:27,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline12VectorOptionINS2_4BoolEEEE5parseERNS2_7ArgListESt14_List_iteratorISsE
+FN:30,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline12VectorOptionINS2_4BoolEEEE5parseERKSs
+FN:79,_ZN22TestCommandlineOptions13vectorBoolOptEv
+FN:65,_ZN22TestCommandlineOptions9stringOptEv
+FN:27,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline9IntOptionEE5parseERNS2_7ArgListESt14_List_iteratorISsE
+FN:30,_ZN22TestCommandlineOptions6PublicIN6wibble11commandline9IntOptionEE5parseERKSs
+FN:49,_ZN22TestCommandlineOptions6intOptEv
+DA:16,5
+DA:18,5
+DA:19,5
+DA:27,0
+DA:28,0
+DA:30,7
+DA:31,7
+DA:35,1
+DA:36,1
+DA:38,2
+DA:39,2
+DA:40,2
+DA:41,2
+DA:43,2
+DA:44,1
+DA:45,2
+DA:46,2
+DA:47,1
+DA:49,1
+DA:50,1
+DA:52,2
+DA:53,2
+DA:54,2
+DA:55,2
+DA:56,2
+DA:58,2
+DA:59,2
+DA:60,2
+DA:61,2
+DA:62,2
+DA:63,1
+DA:65,1
+DA:66,1
+DA:68,2
+DA:69,2
+DA:70,2
+DA:71,2
+DA:73,1
+DA:74,2
+DA:75,2
+DA:76,2
+DA:77,1
+DA:79,1
+DA:80,1
+DA:81,2
+DA:82,2
+DA:83,2
+DA:84,2
+DA:86,2
+DA:87,2
+DA:88,2
+DA:89,2
+DA:90,2
+DA:92,2
+DA:93,2
+DA:94,2
+DA:95,2
+DA:96,2
+DA:97,2
+DA:98,1
+DA:100,1
+DA:101,1
+DA:102,2
+DA:103,2
+DA:104,2
+DA:105,2
+DA:107,2
+DA:108,2
+DA:109,2
+DA:110,2
+DA:111,2
+DA:113,1
+DA:114,2
+DA:115,2
+DA:116,2
+DA:117,2
+DA:118,1
+DA:119,1
+BA:16,0
+BA:16,0
+BA:16,1
+BA:16,2
+BA:16,0
+BA:16,0
+BA:16,1
+BA:16,2
+BA:16,0
+BA:16,0
+BA:16,1
+BA:16,2
+BA:16,0
+BA:16,0
+BA:16,1
+BA:16,2
+BA:16,0
+BA:16,0
+BA:16,1
+BA:16,2
+LF:78
+LH:76
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_commandline_options.cpp
+FN:7,_Z41__static_initialization_and_destruction_0ii
+FN:7,_GLOBAL__I__Z30run_CommandlineOptions_boolOptv
+FN:7,_Z38run_CommandlineOptions_vectorStringOptv
+FN:3,_Z30run_CommandlineOptions_boolOptv
+FN:6,_Z36run_CommandlineOptions_vectorBoolOptv
+FN:5,_Z32run_CommandlineOptions_stringOptv
+FN:4,_Z29run_CommandlineOptions_intOptv
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,1
+DA:7,4
+BA:7,2
+BA:7,1
+BA:7,2
+BA:7,1
+LF:5
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC2Ev
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:106,_ZNSaISsED1Ev
+FN:106,_ZNSaImED2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:104,_ZNSaISsEC1ISt10_List_nodeISsEEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+FN:98,_ZNSaImEC2Ev
+DA:98,1
+DA:100,0
+DA:101,0
+DA:104,0
+DA:106,1
+DA:118,0
+DA:119,0
+LF:7
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:835,_ZNSs6appendEPKc
+FN:501,_ZNSsaSERKSs
+FN:928,_ZNSs6assignEPKc
+FN:509,_ZNSsaSEPKc
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:509,0
+DA:510,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:928,0
+DA:931,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2162,0
+DA:2165,0
+DA:2188,0
+DA:2189,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:75
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/list.tcc
+FN:109,_ZNSt4listISsSaISsEE5eraseESt14_List_iteratorISsE
+DA:109,0
+DA:111,0
+DA:112,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:268,_ZNSt12__niter_baseIPmLb0EE3__bES0_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:286,_ZNSt12__miter_baseISt13_Bit_iteratorLb0EE3__bES0_
+FN:268,_ZNSt12__niter_baseISt13_Bit_iteratorLb0EE3__bES0_
+FN:286,_ZNSt12__miter_baseIPmLb0EE3__bES0_
+FN:286,_ZNSt12__miter_baseISt19_Bit_const_iteratorLb0EE3__bES0_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bISt13_Bit_iteratorS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0ESt13_Bit_iteratorS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0ESt13_Bit_iteratorS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardISt13_Bit_iteratorS0_ET0_T_S2_S1_
+FN:268,_ZNSt12__niter_baseISt19_Bit_const_iteratorLb0EE3__bES0_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mISt13_Bit_iteratorS3_EET0_T_S5_S4_
+FN:385,_ZSt13__copy_move_aILb0ESt13_Bit_iteratorS0_ET1_T0_S2_S1_
+FN:430,_ZSt14__copy_move_a2ILb0ESt13_Bit_iteratorS0_ET1_T0_S2_S1_
+FN:456,_ZSt4copyISt13_Bit_iteratorS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mISt19_Bit_const_iteratorSt13_Bit_iteratorEET0_T_S6_S5_
+FN:385,_ZSt13__copy_move_aILb0ESt19_Bit_const_iteratorSt13_Bit_iteratorET1_T0_S3_S2_
+FN:430,_ZSt14__copy_move_a2ILb0ESt19_Bit_const_iteratorSt13_Bit_iteratorET1_T0_S3_S2_
+FN:456,_ZSt4copyISt19_Bit_const_iteratorSt13_Bit_iteratorET0_T_S3_S2_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET0_T_SA_S9_
+FN:375,_ZNSt11__copy_moveILb0ELb1ESt26random_access_iterator_tagE8__copy_mImEEPT_PKS3_S6_S4_
+FN:385,_ZSt13__copy_move_aILb0EPmS0_ET1_T0_S2_S1_
+FN:430,_ZSt14__copy_move_a2ILb0EPmS0_ET1_T0_S2_S1_
+FN:456,_ZSt4copyIPmS0_ET0_T_S2_S1_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,9
+DA:269,9
+DA:276,0
+DA:277,0
+DA:286,6
+DA:287,6
+DA:337,2
+DA:340,2
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,2
+DA:375,1
+DA:377,1
+DA:379,1
+DA:385,3
+DA:393,3
+DA:396,3
+DA:430,3
+DA:435,3
+DA:456,3
+DA:466,3
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+BA:340,1
+BA:340,2
+BA:340,1
+BA:340,2
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+BA:542,0
+BA:542,0
+LF:37
+LH:17
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_bvector.h
+FN:75,_ZNSt14_Bit_referenceC1EPmm
+FN:80,_ZNKSt14_Bit_referencecvbEv
+FN:84,_ZNSt14_Bit_referenceaSEb
+FN:94,_ZNSt14_Bit_referenceaSERKS_
+FN:116,_ZNSt18_Bit_iterator_baseC2EPmj
+FN:120,_ZNSt18_Bit_iterator_base10_M_bump_upEv
+FN:130,_ZNSt18_Bit_iterator_base12_M_bump_downEv
+FN:140,_ZNSt18_Bit_iterator_base7_M_incrEi
+FN:154,_ZNKSt18_Bit_iterator_baseeqERKS_
+FN:182,_ZStmiRKSt18_Bit_iterator_baseS1_
+FN:194,_ZNSt13_Bit_iteratorC1Ev
+FN:196,_ZNSt13_Bit_iteratorC1EPmj
+FN:200,_ZNKSt13_Bit_iteratordeEv
+FN:204,_ZNSt13_Bit_iteratorppEv
+FN:211,_ZNSt13_Bit_iteratorppEi
+FN:219,_ZNSt13_Bit_iteratormmEv
+FN:234,_ZNSt13_Bit_iteratorpLEi
+FN:248,_ZNKSt13_Bit_iteratorplEi
+FN:279,_ZNSt19_Bit_const_iteratorC1EPmj
+FN:282,_ZNSt19_Bit_const_iteratorC1ERKSt13_Bit_iterator
+FN:286,_ZNKSt19_Bit_const_iteratordeEv
+FN:290,_ZNSt19_Bit_const_iteratorppEv
+FN:669,_ZNKSt6vectorIbSaIbEEixEj
+FN:592,_ZNKSt6vectorIbSaIbEE5beginEv
+FN:600,_ZNKSt6vectorIbSaIbEE3endEv
+FN:658,_ZNKSt6vectorIbSaIbEE5emptyEv
+FN:638,_ZNKSt6vectorIbSaIbEE4sizeEv
+FN:384,_ZNSt13_Bvector_baseISaIbEE13_Bvector_implD1Ev
+FN:596,_ZNSt6vectorIbSaIbEE3endEv
+FN:588,_ZNSt6vectorIbSaIbEE5beginEv
+FN:389,_ZNSt13_Bvector_baseISaIbEE13_Bvector_implC1Ev
+FN:413,_ZNSt13_Bvector_baseISaIbEEC2Ev
+FN:505,_ZNSt6vectorIbSaIbEEC1Ev
+FN:406,_ZNKSt13_Bvector_baseISaIbEE20_M_get_Bit_allocatorEv
+FN:642,_ZNKSt6vectorIbSaIbEE8max_sizeEv
+FN:444,_ZNSt13_Bvector_baseISaIbEE13_M_deallocateEv
+FN:432,_ZNSt13_Bvector_baseISaIbEED2Ev
+FN:543,_ZNSt6vectorIbSaIbEED1Ev
+FN:986,_ZNKSt6vectorIbSaIbEE12_M_check_lenEjPKc
+FN:439,_ZNSt13_Bvector_baseISaIbEE11_M_allocateEj
+FN:826,_ZNSt6vectorIbSaIbEE15_M_copy_alignedESt19_Bit_const_iteratorS2_St13_Bit_iterator
+FN:720,_ZNSt6vectorIbSaIbEE9push_backEb
+DA:75,5
+DA:76,5
+DA:80,3
+DA:81,3
+DA:84,2
+DA:86,2
+DA:87,1
+DA:89,1
+DA:90,2
+DA:94,0
+DA:95,0
+DA:116,31
+DA:117,31
+DA:120,2
+DA:122,2
+DA:124,0
+DA:125,0
+DA:127,2
+DA:130,0
+DA:132,0
+DA:134,0
+DA:135,0
+DA:137,0
+DA:140,0
+DA:142,0
+DA:143,0
+DA:144,0
+DA:145,0
+DA:147,0
+DA:148,0
+DA:150,0
+DA:151,0
+DA:154,3
+DA:155,3
+DA:182,9
+DA:185,9
+DA:194,2
+DA:196,3
+DA:197,3
+DA:200,2
+DA:201,2
+DA:204,0
+DA:206,0
+DA:207,0
+DA:211,2
+DA:213,2
+DA:214,2
+DA:219,0
+DA:221,0
+DA:222,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:248,0
+DA:250,0
+DA:251,0
+DA:279,4
+DA:280,4
+DA:282,22
+DA:283,22
+DA:286,3
+DA:287,3
+DA:290,0
+DA:292,0
+DA:293,0
+DA:384,1
+DA:389,1
+DA:390,1
+DA:391,1
+DA:406,2
+DA:407,2
+DA:413,1
+DA:414,1
+DA:432,1
+DA:433,1
+DA:439,1
+DA:441,1
+DA:444,2
+DA:446,2
+DA:447,1
+DA:449,2
+DA:505,1
+DA:506,1
+DA:543,1
+DA:588,1
+DA:589,1
+DA:592,10
+DA:593,10
+DA:596,2
+DA:597,2
+DA:600,10
+DA:601,10
+DA:638,7
+DA:639,7
+DA:642,2
+DA:646,2
+DA:647,2
+DA:649,2
+DA:658,3
+DA:659,3
+DA:669,3
+DA:672,3
+DA:720,2
+DA:722,2
+DA:723,1
+DA:725,1
+DA:726,2
+DA:826,1
+DA:828,1
+DA:830,1
+DA:986,1
+DA:988,1
+DA:989,0
+DA:991,1
+DA:992,1
+BA:86,2
+BA:86,2
+BA:122,1
+BA:122,2
+BA:132,0
+BA:132,0
+BA:145,0
+BA:145,0
+BA:155,2
+BA:155,1
+BA:155,2
+BA:155,2
+BA:446,2
+BA:446,2
+BA:649,1
+BA:649,2
+BA:722,2
+BA:722,2
+BA:988,1
+BA:988,2
+BA:992,2
+BA:992,1
+BA:992,1
+BA:992,2
+LF:115
+LH:81
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:97,_ZSt8_DestroyIPcEvT_S1_
+FN:126,_ZSt8_DestroyIPccEvT_S1_RSaIT0_E
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:683,0
+DA:695,0
+DA:696,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+LF:17
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt26random_access_iterator_tagbiPbRbEC2Ev
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,31
+DA:166,0
+DA:167,0
+LF:3
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_list.h
+FN:169,_ZNKSt14_List_iteratorISsEeqERKS0_
+FN:139,_ZNSt14_List_iteratorISsEppEv
+FN:126,_ZNSt14_List_iteratorISsEC1EPSt15_List_node_base
+FN:666,_ZNSt4listISsSaISsEE3endEv
+FN:328,_ZNKSt10_List_baseISsSaISsEE21_M_get_Node_allocatorEv
+FN:332,_ZNKSt10_List_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:131,_ZNKSt14_List_iteratorISsEdeEv
+FN:317,_ZNSt10_List_baseISsSaISsEE11_M_put_nodeEPSt10_List_nodeISsE
+FN:1356,_ZNSt4listISsSaISsEE8_M_eraseESt14_List_iteratorISsE
+DA:126,0
+DA:127,0
+DA:131,0
+DA:132,0
+DA:139,0
+DA:141,0
+DA:142,0
+DA:169,0
+DA:170,0
+DA:317,0
+DA:318,0
+DA:328,0
+DA:329,0
+DA:332,0
+DA:333,0
+DA:666,0
+DA:667,0
+DA:1356,0
+DA:1358,0
+DA:1359,0
+DA:1360,0
+DA:1361,0
+DA:1362,0
+LF:23
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:577,_ZNKSt6vectorISsSaISsEEixEj
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:79,_ZNSt12_Vector_baseIcSaIcEE12_Vector_implD1Ev
+FN:97,_ZNSt12_Vector_baseIcSaIcEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:84,_ZNSt12_Vector_baseIcSaIcEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIcSaIcEEC2Ev
+FN:213,_ZNSt6vectorIcSaIcEEC1Ev
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:147,_ZNSt12_Vector_baseIcSaIcEE13_M_deallocateEPcj
+FN:135,_ZNSt12_Vector_baseIcSaIcEED2Ev
+FN:299,_ZNSt6vectorIcSaIcEED1Ev
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:377,0
+DA:378,0
+DA:386,0
+DA:387,0
+DA:395,0
+DA:396,0
+DA:404,0
+DA:405,0
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:526,0
+DA:527,0
+DA:577,3
+DA:578,3
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:51
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+FN:628,_ZNSt6vectorIbSaIbEE13_M_insert_auxESt13_Bit_iteratorb
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+DA:628,1
+DA:630,1
+DA:632,0
+DA:634,0
+DA:635,0
+DA:640,1
+DA:641,1
+DA:643,1
+DA:644,1
+DA:645,1
+DA:646,1
+DA:647,1
+DA:650,1
+DA:652,1
+BA:286,0
+BA:286,0
+BA:630,1
+BA:630,2
+LF:38
+LH:11
+end_of_record
+SF:/usr/include/c++/4.3/exception
+FN:59,_ZNSt9exceptionC2Ev
+DA:59,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorImED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:69,_ZN9__gnu_cxx13new_allocatorImEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorImE8max_sizeEv
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:97,_ZN9__gnu_cxx13new_allocatorISt10_List_nodeISsEE10deallocateEPS2_j
+FN:97,_ZN9__gnu_cxx13new_allocatorIcE10deallocateEPcj
+FN:97,_ZN9__gnu_cxx13new_allocatorImE10deallocateEPmj
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorImE8allocateEjPKv
+FN:118,_ZN9__gnu_cxx13new_allocatorISsE7destroyEPSs
+DA:69,1
+DA:71,0
+DA:76,1
+DA:87,1
+DA:89,1
+DA:90,0
+DA:92,1
+DA:97,1
+DA:98,1
+DA:101,3
+DA:102,3
+DA:107,0
+DA:108,0
+DA:118,0
+BA:89,0
+BA:89,0
+BA:89,1
+BA:89,2
+BA:108,0
+BA:108,0
+LF:14
+LH:9
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:177,_ZNSolsEb
+FN:195,_ZNSolsEj
+DA:95,0
+DA:112,0
+DA:117,0
+DA:177,0
+DA:178,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:25
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/regexp.h
+FN:115,_ZNK6wibble9Tokenizer14const_iteratoreqERKS1_
+FN:119,_ZNK6wibble9Tokenizer14const_iteratorneERKS1_
+FN:173,_ZNK6wibble8Splitter14const_iteratordeEv
+FN:177,_ZNK6wibble8Splitter14const_iteratorptEv
+FN:107,_ZN6wibble9Tokenizer14const_iteratorC1ERS0_b
+FN:129,_ZN6wibble9Tokenizer3endEv
+FN:194,_ZN6wibble8SplitterC1ERKSsi
+FN:125,_ZN6wibble9TokenizerC1ERKSsS2_i
+FN:181,_ZNK6wibble8Splitter14const_iteratoreqERKS1_
+FN:168,_ZN6wibble8Splitter14const_iteratorC1ERNS_6RegexpERKSs
+FN:200,_ZN6wibble8Splitter5beginERKSs
+FN:169,_ZN6wibble8Splitter14const_iteratorC1ERNS_6RegexpE
+FN:201,_ZN6wibble8Splitter3endEv
+FN:156,_ZN6wibble8Splitter14const_iteratorD1Ev
+FN:146,_ZN6wibble8SplitterD1Ev
+FN:90,_ZN6wibble9TokenizerD1Ev
+FN:106,_ZN6wibble9Tokenizer14const_iteratorC1ERS0_
+FN:128,_ZN6wibble9Tokenizer5beginEv
+FN:111,_ZNK6wibble9Tokenizer14const_iteratordeEv
+FN:85,_ZN6wibble7ERegexpC1ERKSsii
+FN:83,_ZN6wibble7ERegexpD1Ev
+DA:83,2
+DA:85,2
+DA:86,2
+DA:90,1
+DA:106,1
+DA:107,5
+DA:111,4
+DA:113,4
+DA:115,1
+DA:117,1
+DA:119,4
+DA:121,4
+DA:125,1
+DA:126,1
+DA:128,1
+DA:129,5
+DA:146,2
+DA:156,4
+DA:168,2
+DA:169,2
+DA:173,8
+DA:175,8
+DA:177,8
+DA:179,8
+DA:181,2
+DA:183,2
+DA:194,2
+DA:195,2
+DA:200,2
+DA:201,2
+BA:117,2
+BA:117,1
+BA:117,2
+BA:117,1
+BA:121,1
+BA:121,2
+BA:121,0
+BA:121,0
+BA:183,2
+BA:183,1
+BA:183,2
+BA:183,1
+LF:30
+LH:30
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:67,_Z12assert_eq_fnIjjEv8LocationT_T0_
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:67,_Z12assert_eq_fnISsPKcEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsSsEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,452
+DA:69,452
+DA:70,0
+DA:71,0
+DA:75,452
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+BA:69,1
+BA:69,2
+BA:69,1
+BA:69,2
+LF:26
+LH:3
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/regexp.test.h
+FN:92,_ZN12_GLOBAL__N_110TestRegexp13emptySplitterEv
+FN:73,_ZN12_GLOBAL__N_110TestRegexp8splitterEv
+FN:53,_ZN12_GLOBAL__N_110TestRegexp8tokenizeEv
+FN:14,_ZN12_GLOBAL__N_110TestRegexp10basicMatchEv
+FN:34,_ZN12_GLOBAL__N_110TestRegexp7captureEv
+FN:24,_ZN12_GLOBAL__N_110TestRegexp13extendedMatchEv
+DA:14,1
+DA:15,1
+DA:16,2
+DA:17,2
+DA:18,2
+DA:19,2
+DA:20,2
+DA:21,2
+DA:22,1
+DA:24,1
+DA:25,1
+DA:26,2
+DA:27,2
+DA:28,2
+DA:29,2
+DA:30,2
+DA:31,2
+DA:32,1
+DA:34,1
+DA:35,1
+DA:36,2
+DA:37,2
+DA:38,2
+DA:39,2
+DA:40,2
+DA:41,2
+DA:42,2
+DA:43,2
+DA:44,2
+DA:45,2
+DA:47,2
+DA:48,2
+DA:49,2
+DA:50,2
+DA:51,1
+DA:53,1
+DA:54,1
+DA:55,2
+DA:56,1
+DA:58,1
+DA:59,2
+DA:60,1
+DA:61,1
+DA:62,2
+DA:63,1
+DA:64,1
+DA:65,2
+DA:66,1
+DA:67,1
+DA:68,2
+DA:69,1
+DA:70,1
+DA:71,1
+DA:73,1
+DA:75,1
+DA:76,2
+DA:77,2
+DA:78,1
+DA:79,1
+DA:80,1
+DA:81,1
+DA:82,1
+DA:83,1
+DA:84,1
+DA:85,1
+DA:86,1
+DA:87,1
+DA:88,1
+DA:89,1
+DA:90,1
+DA:92,1
+DA:94,1
+DA:95,2
+DA:96,2
+DA:97,1
+DA:98,1
+DA:99,1
+DA:100,1
+DA:101,1
+DA:102,1
+DA:103,1
+DA:104,1
+DA:105,1
+DA:106,1
+DA:107,1
+DA:108,1
+DA:109,1
+LF:87
+LH:87
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_regexp.cpp
+FN:8,_Z41__static_initialization_and_destruction_0ii
+FN:8,_GLOBAL__I__Z21run_Regexp_basicMatchv
+FN:8,_Z24run_Regexp_emptySplitterv
+FN:7,_Z19run_Regexp_splitterv
+FN:6,_Z19run_Regexp_tokenizev
+FN:3,_Z21run_Regexp_basicMatchv
+FN:5,_Z18run_Regexp_capturev
+FN:4,_Z24run_Regexp_extendedMatchv
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,1
+DA:7,1
+DA:8,4
+BA:8,2
+BA:8,1
+BA:8,2
+BA:8,1
+LF:6
+LH:6
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1923,0
+DA:1925,0
+DA:2067,0
+DA:2069,0
+DA:2162,304
+DA:2165,304
+DA:2188,618
+DA:2189,618
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:308,0
+BA:308,0
+BA:341,0
+BA:341,0
+BA:2165,2
+BA:2165,1
+BA:2165,2
+BA:2165,2
+LF:61
+LH:4
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,0
+DA:246,0
+DA:257,304
+DA:258,304
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:166,0
+DA:167,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+DA:69,0
+DA:71,0
+DA:76,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:195,_ZNSolsEj
+DA:95,0
+DA:112,0
+DA:117,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/amorph.h
+FN:371,_ZNK6wibble6AmorphINS_5RangeIiEENS_14RangeInterfaceIiEELi0EE14morphInterfaceEv
+FN:345,_ZN6wibble6AmorphINS_5RangeIiEENS_14RangeInterfaceIiEELi0EED2Ev
+FN:332,_ZN6wibble6AmorphINS_5RangeIiEENS_14RangeInterfaceIiEELi0EE24setMorphInterfacePointerEPKNS_14MorphInterfaceIS4_EE
+FN:288,_ZN6wibble6AmorphINS_5RangeIiEENS_14RangeInterfaceIiEELi0EEC2ERKS5_
+FN:371,_ZNK6wibble6AmorphINS_8ConsumerIiEENS_17ConsumerInterfaceIiEELi0EE14morphInterfaceEv
+FN:345,_ZN6wibble6AmorphINS_8ConsumerIiEENS_17ConsumerInterfaceIiEELi0EED2Ev
+FN:332,_ZN6wibble6AmorphINS_8ConsumerIiEENS_17ConsumerInterfaceIiEELi0EE24setMorphInterfacePointerEPKNS_14MorphInterfaceIS4_EE
+FN:288,_ZN6wibble6AmorphINS_8ConsumerIiEENS_17ConsumerInterfaceIiEELi0EEC2ERKS5_
+FN:366,_ZN6wibble6AmorphINS_8ConsumerIiEENS_17ConsumerInterfaceIiEELi0EE14implementationEv
+FN:284,_ZN6wibble6AmorphINS_5RangeIiEENS_14RangeInterfaceIiEELi0EEC2ERKNS_14MorphInterfaceIS4_EE
+FN:366,_ZN6wibble6AmorphINS_5RangeIiEENS_14RangeInterfaceIiEELi0EE14implementationEv
+FN:100,_ZN6wibble14MorphAllocatorC2Ev
+FN:284,_ZN6wibble6AmorphINS_8ConsumerIiEENS_17ConsumerInterfaceIiEELi0EEC2ERKNS_14MorphInterfaceIS4_EE
+FN:91,_ZN6wibble14MorphInterfaceINS_14RangeInterfaceIiEEEC2Ev
+FN:115,_ZN6wibble9MorphBaseINS_13IteratorRangeISt14_List_iteratorIiEEENS_14RangeInterfaceIiEEEC2ERKS4_
+FN:147,_ZN6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES5_NS_14RangeInterfaceIiEEEC2ERKS5_
+FN:91,_ZN6wibble14MorphInterfaceINS_17ConsumerInterfaceIiEEEC2Ev
+FN:115,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEENS_17ConsumerInterfaceIiEEEC2ERKS7_
+FN:147,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEEC2ERKS8_
+FN:115,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEENS_17ConsumerInterfaceIiEEEC2ERKS9_
+FN:147,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEEEESA_NS_17ConsumerInterfaceIiEEEC2ERKSA_
+FN:115,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEENS_17ConsumerInterfaceIiEEEC2ERKS7_
+FN:147,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEEC2ERKS8_
+FN:361,_ZNK6wibble6AmorphINS_5RangeIiEENS_14RangeInterfaceIiEELi0EE14implementationEv
+FN:303,_ZNK6wibble6AmorphINS_5RangeIiEENS_14RangeInterfaceIiEELi0EE3leqERKS2_
+FN:314,_ZNK6wibble6AmorphINS_5RangeIiEENS_14RangeInterfaceIiEELi0EEleERKS2_
+FN:91,_ZN6wibble14MorphInterfaceINS_17ConsumerInterfaceIiEEEC2ERKS3_
+FN:114,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEENS_17ConsumerInterfaceIiEEEC2ERKSA_
+FN:144,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEEC2ERKSC_
+FN:173,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEE7destroyEj
+FN:114,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEENS_17ConsumerInterfaceIiEEEC2ERKSC_
+FN:144,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEEEESA_NS_17ConsumerInterfaceIiEEEC2ERKSE_
+FN:173,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEEEESA_NS_17ConsumerInterfaceIiEEE7destroyEj
+FN:114,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEENS_17ConsumerInterfaceIiEEEC2ERKSA_
+FN:144,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEEC2ERKSC_
+FN:173,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEE7destroyEj
+FN:91,_ZN6wibble14MorphInterfaceINS_14RangeInterfaceIiEEEC2ERKS3_
+FN:114,_ZN6wibble9MorphBaseINS_13IteratorRangeISt14_List_iteratorIiEEENS_14RangeInterfaceIiEEEC2ERKS7_
+FN:144,_ZN6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES5_NS_14RangeInterfaceIiEEEC2ERKS9_
+FN:173,_ZN6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES5_NS_14RangeInterfaceIiEEE7destroyEj
+FN:92,_ZN6wibble14MorphInterfaceINS_17ConsumerInterfaceIiEEE11virtualBaseEv
+FN:92,_ZN6wibble14MorphInterfaceINS_14RangeInterfaceIiEEE11virtualBaseEv
+FN:185,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEE7wrappedEv
+FN:124,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEENS_17ConsumerInterfaceIiEEE11virtualBaseIS7_EENS_8EnableIfINS_4TNotINS_13IsPolymorphicIT_EEEEPNS_11VirtualBaseEE1TEv
+FN:128,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEENS_17ConsumerInterfaceIiEEE11virtualBaseEv
+FN:149,_ZNK6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEE4selfEv
+FN:181,_ZNK6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEE7wrappedEv
+FN:185,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEEEESA_NS_17ConsumerInterfaceIiEEE7wrappedEv
+FN:124,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEENS_17ConsumerInterfaceIiEEE11virtualBaseIS9_EENS_8EnableIfINS_4TNotINS_13IsPolymorphicIT_EEEEPNS_11VirtualBaseEE1TEv
+FN:128,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEENS_17ConsumerInterfaceIiEEE11virtualBaseEv
+FN:149,_ZNK6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEEEESA_NS_17ConsumerInterfaceIiEEE4selfEv
+FN:181,_ZNK6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEEEESA_NS_17ConsumerInterfaceIiEEE7wrappedEv
+FN:185,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEE7wrappedEv
+FN:124,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEENS_17ConsumerInterfaceIiEEE11virtualBaseIS7_EENS_8EnableIfINS_4TNotINS_13IsPolymorphicIT_EEEEPNS_11VirtualBaseEE1TEv
+FN:128,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEENS_17ConsumerInterfaceIiEEE11virtualBaseEv
+FN:149,_ZNK6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEE4selfEv
+FN:181,_ZNK6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEE7wrappedEv
+FN:181,_ZNK6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES5_NS_14RangeInterfaceIiEEE7wrappedEv
+FN:185,_ZN6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES5_NS_14RangeInterfaceIiEEE7wrappedEv
+FN:124,_ZN6wibble9MorphBaseINS_13IteratorRangeISt14_List_iteratorIiEEENS_14RangeInterfaceIiEEE11virtualBaseIS4_EENS_8EnableIfINS_4TNotINS_13IsPolymorphicIT_EEEEPNS_11VirtualBaseEE1TEv
+FN:128,_ZN6wibble9MorphBaseINS_13IteratorRangeISt14_List_iteratorIiEEENS_14RangeInterfaceIiEEE11virtualBaseEv
+FN:149,_ZNK6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES5_NS_14RangeInterfaceIiEEE4selfEv
+FN:156,_ZNK6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEE3leqEPKNS_14MorphInterfaceISB_EE
+FN:316,_ZN6wibble6AmorphINS_5RangeIiEENS_14RangeInterfaceIiEELi0EE19setInterfacePointerEPKS4_
+FN:340,_ZN6wibble6AmorphINS_5RangeIiEENS_14RangeInterfaceIiEELi0EEaSERKS5_
+FN:156,_ZNK6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEEEESA_NS_17ConsumerInterfaceIiEEE3leqEPKNS_14MorphInterfaceISD_EE
+FN:156,_ZNK6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES5_NS_14RangeInterfaceIiEEE3leqEPKNS_14MorphInterfaceIS8_EE
+FN:156,_ZNK6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEE3leqEPKNS_14MorphInterfaceISB_EE
+FN:101,_ZN6wibble14MorphAllocatornwEjPvj
+FN:168,_ZNK6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEE13constructCopyEPvj
+FN:168,_ZNK6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEEEESA_NS_17ConsumerInterfaceIiEEE13constructCopyEPvj
+FN:168,_ZNK6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES5_NS_14RangeInterfaceIiEEE13constructCopyEPvj
+FN:168,_ZNK6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEE13constructCopyEPvj
+FN:95,_ZN6wibble14MorphInterfaceINS_17ConsumerInterfaceIiEEED2Ev
+FN:114,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEENS_17ConsumerInterfaceIiEEED2Ev
+FN:189,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEED0Ev
+FN:95,_ZN6wibble14MorphInterfaceINS_17ConsumerInterfaceIiEEED0Ev
+FN:95,_ZN6wibble14MorphInterfaceINS_17ConsumerInterfaceIiEEED1Ev
+FN:189,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEED1Ev
+FN:189,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEED2Ev
+FN:114,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEENS_17ConsumerInterfaceIiEEED2Ev
+FN:189,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEEEESA_NS_17ConsumerInterfaceIiEEED0Ev
+FN:189,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEEEESA_NS_17ConsumerInterfaceIiEEED1Ev
+FN:189,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEEEESA_NS_17ConsumerInterfaceIiEEED2Ev
+FN:95,_ZN6wibble14MorphInterfaceINS_14RangeInterfaceIiEEED2Ev
+FN:114,_ZN6wibble9MorphBaseINS_13IteratorRangeISt14_List_iteratorIiEEENS_14RangeInterfaceIiEEED2Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES5_NS_14RangeInterfaceIiEEED0Ev
+FN:95,_ZN6wibble14MorphInterfaceINS_14RangeInterfaceIiEEED0Ev
+FN:95,_ZN6wibble14MorphInterfaceINS_14RangeInterfaceIiEEED1Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES5_NS_14RangeInterfaceIiEEED1Ev
+FN:189,_ZN6wibble5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES5_NS_14RangeInterfaceIiEEED2Ev
+FN:114,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEENS_17ConsumerInterfaceIiEEED2Ev
+FN:189,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEED0Ev
+FN:189,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEED1Ev
+FN:189,_ZN6wibble5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEEEES8_NS_17ConsumerInterfaceIiEEED2Ev
+DA:91,286
+DA:92,0
+DA:95,268
+DA:100,31
+DA:101,291
+DA:102,291
+DA:103,291
+DA:104,291
+DA:106,0
+DA:114,249
+DA:115,13
+DA:124,0
+DA:125,0
+DA:128,0
+DA:129,0
+DA:144,119
+DA:147,13
+DA:149,119
+DA:156,27
+DA:157,27
+DA:158,27
+DA:159,0
+DA:160,0
+DA:162,0
+DA:164,27
+DA:168,119
+DA:170,119
+DA:173,117
+DA:174,117
+DA:175,0
+DA:177,117
+DA:179,117
+DA:181,69
+DA:182,69
+DA:185,39
+DA:186,39
+DA:189,130
+DA:284,25
+DA:285,25
+DA:286,25
+DA:288,220
+DA:289,220
+DA:291,220
+DA:303,62
+DA:304,62
+DA:305,62
+DA:306,62
+DA:308,0
+DA:310,0
+DA:314,62
+DA:316,16
+DA:317,16
+DA:318,0
+DA:319,0
+DA:326,16
+DA:332,245
+DA:333,245
+DA:334,0
+DA:335,0
+DA:337,245
+DA:340,16
+DA:341,16
+DA:342,16
+DA:345,243
+DA:346,243
+DA:347,243
+DA:348,243
+DA:361,60
+DA:363,60
+DA:366,93
+DA:368,93
+DA:371,954
+DA:372,954
+BA:95,1
+BA:95,2
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,1
+BA:95,2
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:102,1
+BA:102,2
+BA:102,0
+BA:102,0
+BA:114,1
+BA:114,2
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,1
+BA:114,2
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,1
+BA:114,2
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,1
+BA:114,2
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:157,0
+BA:157,0
+BA:157,0
+BA:157,0
+BA:157,1
+BA:157,2
+BA:157,0
+BA:157,0
+BA:158,0
+BA:158,0
+BA:158,0
+BA:158,0
+BA:158,1
+BA:158,2
+BA:158,0
+BA:158,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:174,1
+BA:174,2
+BA:174,1
+BA:174,2
+BA:174,1
+BA:174,2
+BA:174,1
+BA:174,2
+BA:177,2
+BA:177,1
+BA:177,2
+BA:177,1
+BA:177,2
+BA:177,1
+BA:177,2
+BA:177,1
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,1
+BA:189,2
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,1
+BA:189,2
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,1
+BA:189,2
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,1
+BA:189,2
+BA:304,2
+BA:304,1
+BA:305,2
+BA:305,1
+BA:317,1
+BA:317,2
+BA:326,2
+BA:326,1
+BA:333,1
+BA:333,2
+BA:333,1
+BA:333,2
+BA:346,2
+BA:346,1
+BA:346,2
+BA:346,1
+LF:73
+LH:57
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/consumer.h
+FN:48,_ZN6wibble13ConsumerMixinIiNS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEEEC2Ev
+FN:91,_ZN6wibble20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEC1ES5_
+FN:66,_ZN6wibble8ConsumerIiED1Ev
+FN:66,_ZN6wibble8ConsumerIiEC1ERKS1_
+FN:77,_ZN6wibble8ConsumerIiE7consumeERKi
+FN:48,_ZN6wibble13ConsumerMixinIiNS_8ConsumerIiEEEC2Ev
+FN:48,_ZN6wibble13ConsumerMixinIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEEEC2Ev
+FN:91,_ZN6wibble20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEC1ES7_
+FN:48,_ZN6wibble13ConsumerMixinIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEC2Ev
+FN:91,_ZN6wibble20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEC1ES5_
+FN:74,_ZN6wibble8ConsumerIiEC1ERKNS_14MorphInterfaceINS_17ConsumerInterfaceIiEEEE
+FN:21,_ZN6wibble17ConsumerInterfaceIiEC2Ev
+FN:32,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEEEC1ERKS7_
+FN:81,_ZN6wibble8ConsumerIiEaSERKi
+FN:49,_ZN6wibble13ConsumerMixinIiNS_8ConsumerIiEEE4selfEv
+FN:56,_ZN6wibble13ConsumerMixinIiNS_8ConsumerIiEEEdeEv
+FN:54,_ZN6wibble13ConsumerMixinIiNS_8ConsumerIiEEEppEv
+FN:32,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEEEC1ERKS9_
+FN:32,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEC1ERKS7_
+FN:21,_ZN6wibble17ConsumerInterfaceIiEC2ERKS1_
+FN:30,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEC1ERKS8_
+FN:30,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEEEC1ERKSA_
+FN:30,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEEEC1ERKS8_
+FN:53,_ZNK6wibble13ConsumerMixinIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEleERKS7_
+FN:53,_ZNK6wibble13ConsumerMixinIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEEEleERKS9_
+FN:53,_ZNK6wibble13ConsumerMixinIiNS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEEEleERKS7_
+FN:38,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEE7consumeENS_5RangeIiEE
+FN:38,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEEE7consumeENS_5RangeIiEE
+FN:38,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEEE7consumeENS_5RangeIiEE
+FN:25,_ZN6wibble17ConsumerInterfaceIiED2Ev
+FN:25,_ZN6wibble17ConsumerInterfaceIiED0Ev
+FN:25,_ZN6wibble17ConsumerInterfaceIiED1Ev
+FN:30,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEED1Ev
+FN:101,_ZN6wibble13consumerMorphINS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEENS_8ConsumerINT_12ConsumedTypeEEES9_
+FN:107,_ZN6wibble8consumerISt15insert_iteratorISt6vectorIiSaIiEEEEENS_8ConsumerINT_14container_type10value_typeEEES7_
+FN:114,_ZN6wibble8consumerISt6vectorIiSaIiEEEENS_6IsTypeINS_8ConsumerINT_10value_typeEEENS6_8iteratorEE1TERS6_
+FN:30,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEEED1Ev
+FN:101,_ZN6wibble13consumerMorphINS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEEEENS_8ConsumerINT_12ConsumedTypeEEESB_
+FN:107,_ZN6wibble8consumerISt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEENS_8ConsumerINT_14container_type10value_typeEEES9_
+FN:114,_ZN6wibble8consumerISt3setIiSt4lessIiESaIiEEEENS_6IsTypeINS_8ConsumerINT_10value_typeEEENS8_8iteratorEE1TERS8_
+FN:30,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEEED1Ev
+FN:101,_ZN6wibble13consumerMorphINS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEEEENS_8ConsumerINT_12ConsumedTypeEEES9_
+FN:107,_ZN6wibble8consumerISt20back_insert_iteratorISt4listIiSaIiEEEEENS_8ConsumerINT_14container_type10value_typeEEES7_
+FN:92,_ZN6wibble20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEE7consumeERKi
+FN:34,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEE7consumeERKi
+FN:92,_ZN6wibble20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEE7consumeERKi
+FN:34,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEEE7consumeERKi
+FN:92,_ZN6wibble20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEE7consumeERKi
+FN:34,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEEE7consumeERKi
+DA:21,37
+DA:25,37
+DA:30,67
+DA:32,7
+DA:34,14
+DA:35,14
+DA:38,0
+DA:39,0
+DA:40,0
+DA:41,0
+DA:43,0
+DA:48,14
+DA:49,18
+DA:53,0
+DA:54,9
+DA:56,9
+DA:66,53
+DA:74,7
+DA:77,14
+DA:78,14
+DA:81,9
+DA:82,9
+DA:83,9
+DA:91,7
+DA:92,14
+DA:93,14
+DA:94,14
+DA:95,14
+DA:101,7
+DA:102,7
+DA:107,7
+DA:109,7
+DA:114,6
+DA:115,6
+BA:25,1
+BA:25,2
+BA:25,0
+BA:25,0
+BA:25,0
+BA:25,0
+BA:30,2
+BA:30,1
+BA:30,1
+BA:30,2
+BA:30,2
+BA:30,1
+BA:30,1
+BA:30,2
+BA:30,2
+BA:30,1
+BA:30,1
+BA:30,2
+BA:39,0
+BA:39,0
+BA:39,0
+BA:39,0
+BA:39,0
+BA:39,0
+LF:34
+LH:28
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/mixin.h
+FN:13,_ZN6wibble5mixin10ComparableINS_13IteratorRangeISt14_List_iteratorIiEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_5RangeIiEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_13RangeIteratorINS_5RangeIiEEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_8ConsumerIiEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_5MorphINS_10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEES7_NS_14RangeInterfaceIiEEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEEEESA_NS_17ConsumerInterfaceIiEEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEEEESC_NS_17ConsumerInterfaceIiEEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_5MorphINS_13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEEESA_NS_17ConsumerInterfaceIiEEEEEC2Ev
+FN:15,_ZNK6wibble5mixin10ComparableINS_13RangeIteratorINS_5RangeIiEEEEE7cmpSelfEv
+FN:23,_ZNK6wibble5mixin10ComparableINS_13RangeIteratorINS_5RangeIiEEEEEeqERKS5_
+FN:19,_ZNK6wibble5mixin10ComparableINS_13RangeIteratorINS_5RangeIiEEEEEneERKS5_
+DA:13,104
+DA:15,76
+DA:16,76
+DA:19,20
+DA:20,20
+DA:23,36
+DA:24,36
+BA:24,2
+BA:24,2
+BA:24,2
+BA:24,2
+LF:7
+LH:7
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/operators.h
+FN:29,_ZN6wibble9operatorsplISt23_Rb_tree_const_iteratorIiEEET_RKS4_NS4_15difference_typeE
+DA:29,7
+DA:30,7
+DA:31,7
+LF:3
+LH:3
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/range.h
+FN:87,_ZN6wibble10RangeMixinIiNS_5RangeIiEEED2Ev
+FN:63,_ZN6wibble10RangeMixinIiNS_13IteratorRangeISt14_List_iteratorIiEEEEC2Ev
+FN:197,_ZN6wibble13IteratorRangeISt14_List_iteratorIiEEC1ES2_S2_
+FN:87,_ZN6wibble10RangeMixinIiNS_13IteratorRangeISt14_List_iteratorIiEEEED2Ev
+FN:193,_ZN6wibble13IteratorRangeISt14_List_iteratorIiEED1Ev
+FN:63,_ZN6wibble10RangeMixinIiNS_5RangeIiEEEC2Ev
+FN:156,_ZN6wibble5RangeIiED1Ev
+FN:27,_ZN6wibble13RangeIteratorINS_5RangeIiEEED1Ev
+FN:156,_ZN6wibble5RangeIiEC1ERKS1_
+FN:27,_ZN6wibble13RangeIteratorINS_5RangeIiEEEC1ERKS3_
+FN:66,_ZNK6wibble10RangeMixinIiNS_5RangeIiEEE4selfEv
+FN:37,_ZN6wibble13RangeIteratorINS_5RangeIiEEEC1ERKS2_
+FN:71,_ZNK6wibble10RangeMixinIiNS_5RangeIiEEE5beginEv
+FN:166,_ZN6wibble5RangeIiE10setToEmptyEv
+FN:94,_ZN6wibble14RangeInterfaceIiEC2Ev
+FN:105,_ZN6wibble10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEC1ERKS4_
+FN:165,_ZN6wibble5RangeIiE11removeFirstEv
+FN:51,_ZN6wibble13RangeIteratorINS_5RangeIiEEEppEv
+FN:164,_ZNK6wibble5RangeIiE4headEv
+FN:49,_ZNK6wibble13RangeIteratorINS_5RangeIiEEEdeEv
+FN:53,_ZNK6wibble13RangeIteratorINS_5RangeIiEEEleERKS3_
+FN:94,_ZN6wibble14RangeInterfaceIiEC2ERKS1_
+FN:103,_ZN6wibble10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEEC1ERKS5_
+FN:207,_ZN6wibble13IteratorRangeISt14_List_iteratorIiEE10setToEmptyEv
+FN:106,_ZN6wibble10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEE10setToEmptyEv
+FN:200,_ZNK6wibble13IteratorRangeISt14_List_iteratorIiEE4headEv
+FN:108,_ZNK6wibble10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEE4headEv
+FN:201,_ZN6wibble13IteratorRangeISt14_List_iteratorIiEE11removeFirstEv
+FN:107,_ZN6wibble10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEE11removeFirstEv
+FN:203,_ZNK6wibble13IteratorRangeISt14_List_iteratorIiEEleERKS3_
+FN:76,_ZNK6wibble10RangeMixinIiNS_5RangeIiEEE4tailEv
+FN:72,_ZNK6wibble10RangeMixinIiNS_5RangeIiEEE3endEv
+FN:83,_ZNK6wibble10RangeMixinIiNS_5RangeIiEEE5emptyEv
+FN:156,_ZN6wibble5RangeIiEaSERKS1_
+FN:98,_ZN6wibble14RangeInterfaceIiED2Ev
+FN:98,_ZN6wibble14RangeInterfaceIiED0Ev
+FN:98,_ZN6wibble14RangeInterfaceIiED1Ev
+FN:103,_ZN6wibble10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEED1Ev
+FN:160,_ZN6wibble5RangeIiEC1INS_13IteratorRangeISt14_List_iteratorIiEEEEERKT_NS_6IsTypeIiNS7_19RangeImplementationEE1TE
+FN:265,_ZN6wibble5rangeISt14_List_iteratorIiEEENS_5RangeINT_10value_typeEEES4_S4_
+DA:27,207
+DA:37,50
+DA:49,23
+DA:51,34
+DA:53,56
+DA:54,56
+DA:63,27
+DA:66,58
+DA:71,27
+DA:72,23
+DA:76,8
+DA:83,11
+DA:84,11
+DA:87,312
+DA:94,249
+DA:98,231
+DA:103,182
+DA:105,6
+DA:106,9
+DA:107,16
+DA:108,15
+DA:156,426
+DA:160,6
+DA:161,6
+DA:164,44
+DA:165,53
+DA:166,26
+DA:193,99
+DA:197,6
+DA:198,6
+DA:200,15
+DA:201,16
+DA:203,27
+DA:204,27
+DA:207,9
+DA:208,9
+DA:209,9
+DA:265,6
+DA:266,6
+BA:98,1
+BA:98,2
+BA:98,0
+BA:98,0
+BA:98,0
+BA:98,0
+BA:103,2
+BA:103,1
+BA:103,1
+BA:103,2
+BA:204,2
+BA:204,2
+BA:204,2
+BA:204,1
+LF:39
+LH:39
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:17,_ZN8LocationC1EPKciSs
+FN:13,_ZN8LocationC1ERKS_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:59,_Z9assert_fnIbEv8LocationT_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+LF:18
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/consumer.test.h
+FN:33,_ZN12_GLOBAL__N_112TestConsumer17stlVectorConsumerEv
+FN:25,_ZN12_GLOBAL__N_112TestConsumer14stlSetConsumerEv
+FN:13,_ZN12_GLOBAL__N_112TestConsumer19stlInserterConsumerEv
+DA:13,1
+DA:14,1
+DA:15,1
+DA:16,1
+DA:17,1
+DA:18,1
+DA:19,1
+DA:20,2
+DA:21,1
+DA:22,1
+DA:23,1
+DA:25,1
+DA:26,1
+DA:27,1
+DA:28,1
+DA:29,1
+DA:30,2
+DA:31,1
+DA:33,1
+DA:34,1
+DA:35,1
+DA:36,1
+DA:37,1
+DA:38,1
+DA:39,2
+DA:40,2
+DA:41,1
+LF:27
+LH:27
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_consumer.cpp
+FN:5,_Z41__static_initialization_and_destruction_0ii
+FN:5,_GLOBAL__I__Z32run_Consumer_stlInserterConsumerv
+FN:5,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEENS_17ConsumerInterfaceIiEEED0Ev
+FN:5,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEENS_17ConsumerInterfaceIiEEED1Ev
+FN:5,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt6vectorIiSaIiEEEEEED0Ev
+FN:5,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEENS_17ConsumerInterfaceIiEEED0Ev
+FN:5,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEENS_17ConsumerInterfaceIiEEED1Ev
+FN:5,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEEED0Ev
+FN:5,_ZN6wibble9MorphBaseINS_13IteratorRangeISt14_List_iteratorIiEEENS_14RangeInterfaceIiEEED0Ev
+FN:5,_ZN6wibble9MorphBaseINS_13IteratorRangeISt14_List_iteratorIiEEENS_14RangeInterfaceIiEEED1Ev
+FN:5,_ZN6wibble10RangeMorphIiNS_13IteratorRangeISt14_List_iteratorIiEEEED0Ev
+FN:5,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEENS_17ConsumerInterfaceIiEEED0Ev
+FN:5,_ZN6wibble9MorphBaseINS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEENS_17ConsumerInterfaceIiEEED1Ev
+FN:5,_ZN6wibble13ConsumerMorphIiNS_20ConsumerFromIteratorIiSt20back_insert_iteratorISt4listIiSaIiEEEEEED0Ev
+FN:5,_Z30run_Consumer_stlVectorConsumerv
+FN:4,_Z27run_Consumer_stlSetConsumerv
+FN:3,_Z32run_Consumer_stlInserterConsumerv
+DA:3,1
+DA:4,1
+DA:5,121
+BA:5,2
+BA:5,1
+BA:5,2
+BA:5,1
+LF:3
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaISt10_List_nodeIiEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeIiEED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaIiED2Ev
+FN:106,_ZNSaIiED1Ev
+FN:98,_ZNSaISt10_List_nodeIiEEC2Ev
+FN:98,_ZNSaIiEC2Ev
+FN:104,_ZNSaIiEC1ISt10_List_nodeIiEEERKSaIT_E
+FN:98,_ZNSaISt13_Rb_tree_nodeIiEEC2Ev
+FN:104,_ZNSaIiEC1ISt13_Rb_tree_nodeIiEEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,24
+DA:100,0
+DA:101,0
+DA:104,98
+DA:106,126
+DA:118,0
+DA:119,0
+LF:7
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:51
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/list.tcc
+FN:70,_ZNSt10_List_baseIiSaIiEE8_M_clearEv
+DA:70,8
+DA:73,8
+DA:74,33
+DA:76,17
+DA:77,17
+DA:78,17
+DA:79,17
+DA:81,8
+BA:74,2
+BA:74,2
+LF:8
+LH:8
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN6wibble13RangeIteratorINS0_5RangeIiEEEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIN6wibble13RangeIteratorINS0_5RangeIiEEEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIN6wibble8ConsumerIiEELb0EE3__bES2_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt20forward_iterator_tagE8__copy_mIN6wibble13RangeIteratorINS3_5RangeIiEEEENS3_8ConsumerIiEEEET0_T_SB_SA_
+FN:286,_ZNSt12__miter_baseIPiLb0EE3__bES0_
+FN:268,_ZNSt12__niter_baseIPiLb0EE3__bES0_
+FN:385,_ZSt13__copy_move_aILb0EN6wibble13RangeIteratorINS0_5RangeIiEEEENS0_8ConsumerIiEEET1_T0_S8_S7_
+FN:430,_ZSt14__copy_move_a2ILb0EN6wibble13RangeIteratorINS0_5RangeIiEEEENS0_8ConsumerIiEEET1_T0_S8_S7_
+FN:456,_ZSt4copyIN6wibble13RangeIteratorINS0_5RangeIiEEEENS0_8ConsumerIiEEET0_T_S8_S7_
+FN:569,_ZNSt20__copy_move_backwardILb0ELb1ESt26random_access_iterator_tagE13__copy_move_bIiEEPT_PKS3_S6_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPiS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPiS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPiS0_ET0_T_S2_S1_
+FN:375,_ZNSt11__copy_moveILb0ELb1ESt26random_access_iterator_tagE8__copy_mIiEEPT_PKS3_S6_S4_
+FN:385,_ZSt13__copy_move_aILb0EPiS0_ET1_T0_S2_S1_
+FN:430,_ZSt14__copy_move_a2ILb0EPiS0_ET1_T0_S2_S1_
+FN:456,_ZSt4copyIPiS0_ET0_T_S2_S1_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,14
+DA:269,14
+DA:286,10
+DA:287,10
+DA:309,4
+DA:311,13
+DA:312,9
+DA:313,4
+DA:375,0
+DA:377,0
+DA:379,0
+DA:385,4
+DA:393,4
+DA:396,4
+DA:430,4
+DA:435,4
+DA:456,4
+DA:466,4
+DA:569,0
+DA:571,0
+DA:572,0
+DA:573,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+BA:311,2
+BA:311,2
+LF:33
+LH:15
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:97,_ZSt8_DestroyIPiEvT_S1_
+FN:126,_ZSt8_DestroyIPiiEvT_S1_RSaIT0_E
+DA:97,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:469,_ZNKSt9_IdentityIiEclERKi
+FN:229,_ZNKSt4lessIiEclERKiS2_
+DA:229,80
+DA:230,80
+DA:469,104
+DA:470,104
+LF:4
+LH:4
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt4listIiSaIiEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt4listIiSaIiEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEC1ERKS1_
+FN:735,_ZNK9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEplERKi
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPiSt6vectorIiSaIiEEEEbRKNS_17__normal_iteratorIT_T0_EESA_
+FN:572,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEC1ERS4_St23_Rb_tree_const_iteratorIiE
+FN:645,_ZSt8inserterISt3setIiSt4lessIiESaIiEESt23_Rb_tree_const_iteratorIiEESt15insert_iteratorIT_ERS8_T0_
+FN:572,_ZNSt15insert_iteratorISt6vectorIiSaIiEEEC1ERS2_N9__gnu_cxx17__normal_iteratorIPiS2_EE
+FN:645,_ZSt8inserterISt6vectorIiSaIiEEN9__gnu_cxx17__normal_iteratorIPiS2_EEESt15insert_iteratorIT_ERS8_T0_
+FN:618,_ZNSt15insert_iteratorISt6vectorIiSaIiEEEdeEv
+FN:623,_ZNSt15insert_iteratorISt6vectorIiSaIiEEEppEv
+FN:618,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEdeEv
+FN:623,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEppEv
+FN:429,_ZNSt20back_insert_iteratorISt4listIiSaIiEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt4listIiSaIiEEEppEv
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEppEv
+FN:846,_ZN9__gnu_cxxmiIPiSt6vectorIiSaIiEEEENS_17__normal_iteratorIT_T0_E15difference_typeERKS8_SB_
+FN:599,_ZNSt15insert_iteratorISt6vectorIiSaIiEEEaSERKi
+FN:599,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEaSERKi
+FN:412,_ZNSt20back_insert_iteratorISt4listIiSaIiEEEaSERKi
+DA:398,2
+DA:412,4
+DA:414,4
+DA:415,4
+DA:429,8
+DA:430,8
+DA:434,4
+DA:435,4
+DA:456,2
+DA:457,2
+DA:572,10
+DA:573,10
+DA:599,17
+DA:601,17
+DA:602,17
+DA:603,17
+DA:618,41
+DA:619,41
+DA:623,17
+DA:624,17
+DA:645,10
+DA:648,10
+DA:683,0
+DA:695,0
+DA:696,0
+DA:703,0
+DA:705,0
+DA:706,0
+DA:735,0
+DA:736,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+DA:846,0
+DA:847,0
+LF:36
+LH:22
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+FN:135,_ZSt9__advanceISt23_Rb_tree_const_iteratorIiEiEvRT_T0_St26bidirectional_iterator_tag
+FN:173,_ZSt7advanceISt23_Rb_tree_const_iteratorIiEiEvRT_T0_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+DA:135,7
+DA:140,7
+DA:141,21
+DA:142,7
+DA:144,0
+DA:145,0
+DA:146,7
+DA:173,7
+DA:176,7
+DA:177,7
+DA:178,7
+BA:140,2
+BA:140,1
+BA:141,2
+BA:141,2
+BA:144,0
+BA:144,0
+LF:15
+LH:9
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryISt23_Rb_tree_const_iteratorIiEENSt15iterator_traitsIT_E17iterator_categoryERKS3_
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,7
+DA:167,7
+LF:3
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_list.h
+FN:126,_ZNSt14_List_iteratorIiEC1EPSt15_List_node_base
+FN:666,_ZNSt4listIiSaIiEE3endEv
+FN:648,_ZNSt4listIiSaIiEE5beginEv
+FN:211,_ZNKSt20_List_const_iteratorIiEdeEv
+FN:253,_ZNKSt20_List_const_iteratorIiEneERKS0_
+FN:219,_ZNSt20_List_const_iteratorIiEppEv
+FN:249,_ZNKSt20_List_const_iteratorIiEeqERKS0_
+FN:364,_ZNSt10_List_baseIiSaIiEE7_M_initEv
+FN:298,_ZNSt10_List_baseIiSaIiEE10_List_implD1Ev
+FN:202,_ZNSt20_List_const_iteratorIiEC1EPKSt15_List_node_base
+FN:675,_ZNKSt4listIiSaIiEE3endEv
+FN:657,_ZNKSt4listIiSaIiEE5beginEv
+FN:1386,_ZSteqIiSaIiEEbRKSt4listIT_T0_ES6_
+FN:1422,_ZStneIiSaIiEEbRKSt4listIT_T0_ES6_
+FN:328,_ZNKSt10_List_baseIiSaIiEE21_M_get_Node_allocatorEv
+FN:301,_ZNSt10_List_baseIiSaIiEE10_List_implC1Ev
+FN:339,_ZNSt10_List_baseIiSaIiEEC2Ev
+FN:498,_ZNSt4listIiSaIiEEC1Ev
+FN:332,_ZNKSt10_List_baseIiSaIiEE19_M_get_Tp_allocatorEv
+FN:131,_ZNKSt14_List_iteratorIiEdeEv
+FN:139,_ZNSt14_List_iteratorIiEppEv
+FN:169,_ZNKSt14_List_iteratorIiEeqERKS0_
+FN:317,_ZNSt10_List_baseIiSaIiEE11_M_put_nodeEPSt10_List_nodeIiE
+FN:357,_ZNSt10_List_baseIiSaIiEED2Ev
+FN:417,_ZNSt4listIiSaIiEED1Ev
+FN:313,_ZNSt10_List_baseIiSaIiEE11_M_get_nodeEv
+FN:458,_ZNSt4listIiSaIiEE14_M_create_nodeERKi
+FN:1339,_ZNSt4listIiSaIiEE9_M_insertESt14_List_iteratorIiERKi
+FN:875,_ZNSt4listIiSaIiEE9push_backERKi
+DA:126,29
+DA:127,29
+DA:131,15
+DA:132,15
+DA:139,16
+DA:141,16
+DA:142,16
+DA:169,41
+DA:170,41
+DA:202,16
+DA:203,16
+DA:211,8
+DA:212,8
+DA:219,8
+DA:221,8
+DA:222,8
+DA:249,6
+DA:250,6
+DA:253,14
+DA:254,14
+DA:298,8
+DA:301,8
+DA:302,8
+DA:303,8
+DA:313,17
+DA:314,17
+DA:317,17
+DA:318,17
+DA:328,34
+DA:329,34
+DA:332,34
+DA:333,34
+DA:339,8
+DA:340,8
+DA:341,8
+DA:357,8
+DA:358,8
+DA:364,8
+DA:366,8
+DA:367,8
+DA:368,8
+DA:417,8
+DA:458,17
+DA:460,17
+DA:463,17
+DA:465,0
+DA:467,0
+DA:468,0
+DA:470,17
+DA:498,8
+DA:499,8
+DA:648,6
+DA:649,6
+DA:657,8
+DA:658,8
+DA:666,23
+DA:667,23
+DA:675,8
+DA:676,8
+DA:875,17
+DA:876,17
+DA:1339,17
+DA:1341,17
+DA:1342,17
+DA:1343,17
+DA:1386,4
+DA:1389,4
+DA:1390,4
+DA:1392,4
+DA:1393,4
+DA:1394,12
+DA:1396,4
+DA:1397,4
+DA:1399,4
+DA:1422,2
+DA:1423,2
+BA:1394,2
+BA:1394,2
+BA:1394,2
+BA:1394,2
+BA:1394,2
+BA:1394,1
+BA:1394,2
+BA:1394,2
+BA:1399,2
+BA:1399,2
+BA:1399,2
+BA:1399,1
+LF:76
+LH:73
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIiEbEC1ERKS1_RKb
+DA:88,21
+DA:89,21
+LF:2
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:270,_ZNKSt3setIiSt4lessIiESaIiEE3endEv
+FN:261,_ZNKSt3setIiSt4lessIiESaIiEE5beginEv
+FN:141,_ZNSt3setIiSt4lessIiESaIiEEC1Ev
+FN:93,_ZNSt3setIiSt4lessIiESaIiEED1Ev
+FN:405,_ZNSt3setIiSt4lessIiESaIiEE6insertESt23_Rb_tree_const_iteratorIiERKi
+DA:93,20
+DA:141,16
+DA:142,16
+DA:261,32
+DA:262,32
+DA:270,86
+DA:271,86
+DA:405,10
+DA:406,10
+LF:9
+LH:9
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:247,_ZNKSt23_Rb_tree_const_iteratorIiEdeEv
+FN:285,_ZNKSt23_Rb_tree_const_iteratorIiEeqERKS0_
+FN:452,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_beginEv
+FN:398,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_S_leftEPSt18_Rb_tree_node_base
+FN:240,_ZNSt23_Rb_tree_const_iteratorIiEC1EPKSt13_Rb_tree_nodeIiE
+FN:614,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE3endEv
+FN:603,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5beginEv
+FN:415,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:403,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEEC1Ev
+FN:347,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE21_M_get_Node_allocatorEv
+FN:351,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13get_allocatorEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorIiEC1ERKSt17_Rb_tree_iteratorIiE
+FN:463,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_M_endEv
+FN:444,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE12_M_rightmostEv
+FN:641,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE4sizeEv
+FN:436,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_leftmostEv
+FN:491,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_rightEPKSt18_Rb_tree_node_base
+FN:168,_ZNSt17_Rb_tree_iteratorIiEC1EPSt13_Rb_tree_nodeIiE
+FN:495,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_S_keyEPKSt18_Rb_tree_node_base
+FN:596,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorIiEeqERKS0_
+FN:471,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_valueEPKSt13_Rb_tree_nodeIiE
+FN:475,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_S_keyEPKSt13_Rb_tree_nodeIiE
+FN:360,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_put_nodeEPSt13_Rb_tree_nodeIiE
+FN:388,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE15_M_destroy_nodeEPSt13_Rb_tree_nodeIiE
+FN:936,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_eraseEPSt13_Rb_tree_nodeIiE
+FN:584,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEED1Ev
+FN:356,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE14_M_create_nodeERKi
+FN:270,_ZNSt23_Rb_tree_const_iteratorIiEmmEv
+FN:846,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_M_insert_EPKSt18_Rb_tree_node_baseS8_RKi
+FN:195,_ZNSt17_Rb_tree_iteratorIiEmmEv
+FN:1133,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE16_M_insert_uniqueERKi
+FN:255,_ZNSt23_Rb_tree_const_iteratorIiEppEv
+FN:1178,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE17_M_insert_unique_ESt23_Rb_tree_const_iteratorIiERKi
+DA:168,129
+DA:169,129
+DA:195,0
+DA:197,0
+DA:198,0
+DA:210,46
+DA:211,46
+DA:240,124
+DA:241,124
+DA:243,50
+DA:244,50
+DA:247,66
+DA:248,66
+DA:255,50
+DA:257,50
+DA:258,50
+DA:270,0
+DA:272,0
+DA:273,0
+DA:285,16
+DA:286,16
+DA:347,68
+DA:348,68
+DA:351,64
+DA:352,64
+DA:356,32
+DA:357,32
+DA:360,32
+DA:361,32
+DA:364,32
+DA:366,32
+DA:368,32
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,32
+DA:388,32
+DA:390,32
+DA:391,32
+DA:392,32
+DA:398,20
+DA:403,16
+DA:405,16
+DA:406,16
+DA:415,20
+DA:417,20
+DA:418,20
+DA:419,20
+DA:420,20
+DA:421,20
+DA:436,22
+DA:437,22
+DA:444,20
+DA:445,20
+DA:452,77
+DA:453,77
+DA:463,105
+DA:464,105
+DA:471,45
+DA:472,45
+DA:475,45
+DA:476,45
+DA:479,58
+DA:480,58
+DA:487,45
+DA:488,45
+DA:491,1
+DA:492,1
+DA:495,35
+DA:496,35
+DA:499,35
+DA:500,35
+DA:562,16
+DA:584,20
+DA:585,20
+DA:596,19
+DA:599,19
+DA:603,36
+DA:606,36
+DA:614,88
+DA:617,88
+DA:641,30
+DA:642,30
+DA:846,24
+DA:850,24
+DA:852,24
+DA:854,24
+DA:857,24
+DA:858,24
+DA:936,58
+DA:939,145
+DA:941,29
+DA:942,29
+DA:943,29
+DA:944,29
+DA:946,58
+DA:1133,21
+DA:1135,21
+DA:1136,21
+DA:1137,21
+DA:1138,50
+DA:1140,8
+DA:1141,8
+DA:1142,8
+DA:1144,21
+DA:1145,21
+DA:1147,17
+DA:1148,17
+DA:1150,0
+DA:1152,4
+DA:1153,3
+DA:1154,1
+DA:1178,10
+DA:1181,10
+DA:1183,7
+DA:1186,1
+DA:1188,6
+DA:1190,3
+DA:1194,2
+DA:1195,2
+DA:1196,2
+DA:1197,0
+DA:1200,0
+DA:1201,0
+DA:1204,0
+DA:1207,0
+DA:1209,1
+DA:1213,1
+DA:1214,1
+DA:1215,1
+DA:1216,0
+DA:1219,0
+DA:1220,0
+DA:1222,0
+DA:1225,0
+DA:1230,0
+BA:850,2
+BA:850,2
+BA:850,2
+BA:850,2
+BA:850,2
+BA:850,2
+BA:939,2
+BA:939,2
+BA:1138,2
+BA:1138,2
+BA:1142,2
+BA:1142,2
+BA:1145,2
+BA:1145,2
+BA:1147,2
+BA:1147,1
+BA:1152,2
+BA:1152,2
+BA:1181,2
+BA:1181,2
+BA:1183,2
+BA:1183,2
+BA:1183,2
+BA:1183,1
+BA:1183,2
+BA:1183,2
+BA:1190,2
+BA:1190,2
+BA:1195,2
+BA:1195,1
+BA:1197,0
+BA:1197,0
+BA:1200,0
+BA:1200,0
+BA:1209,2
+BA:1209,1
+BA:1214,2
+BA:1214,1
+BA:1216,0
+BA:1216,0
+BA:1219,0
+BA:1219,0
+LF:136
+LH:115
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:97,_ZNSt20__uninitialized_copyILb1EE18uninitialized_copyIPiS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPiS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPiS0_iET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPiS0_SaIiEET0_T_S3_S2_RT1_
+DA:97,0
+DA:98,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseIiSaIiEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorIiSaIiEE3endEv
+FN:377,_ZNSt6vectorIiSaIiEE5beginEv
+FN:79,_ZNSt12_Vector_baseIiSaIiEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseIiSaIiEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIiSaIiEEC2Ev
+FN:213,_ZNSt6vectorIiSaIiEEC1Ev
+FN:484,_ZNKSt6vectorIiSaIiEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseIiSaIiEE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorIiSaIiEE8max_sizeEv
+FN:147,_ZNSt12_Vector_baseIiSaIiEE13_M_deallocateEPij
+FN:135,_ZNSt12_Vector_baseIiSaIiEED2Ev
+FN:299,_ZNSt6vectorIiSaIiEED1Ev
+FN:1075,_ZNKSt6vectorIiSaIiEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseIiSaIiEE11_M_allocateEj
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:377,0
+DA:378,0
+DA:395,0
+DA:396,0
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:37
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorIiSaIiEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPiS1_EERKi
+FN:94,_ZNSt6vectorIiSaIiEE6insertEN9__gnu_cxx17__normal_iteratorIPiS1_EERKi
+DA:94,17
+DA:96,17
+DA:97,17
+DA:100,0
+DA:101,0
+DA:113,17
+DA:115,17
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:97,1
+BA:97,2
+BA:97,0
+BA:97,0
+BA:97,1
+BA:97,2
+BA:286,0
+BA:286,0
+LF:31
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt10_List_nodeIiEED2Ev
+FN:118,_ZN9__gnu_cxx13new_allocatorIiE7destroyEPi
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorIiED2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorIiE9constructEPiRKi
+FN:69,_ZN9__gnu_cxx13new_allocatorISt10_List_nodeIiEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIiEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt10_List_nodeIiEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorIiE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE8max_sizeEv
+FN:97,_ZN9__gnu_cxx13new_allocatorIiE10deallocateEPij
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE10deallocateEPS2_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt10_List_nodeIiEE10deallocateEPS2_j
+FN:87,_ZN9__gnu_cxx13new_allocatorIiE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt10_List_nodeIiEE8allocateEjPKv
+DA:69,24
+DA:71,0
+DA:76,28
+DA:87,49
+DA:89,49
+DA:90,0
+DA:92,49
+DA:97,49
+DA:98,49
+DA:101,49
+DA:102,49
+DA:107,0
+DA:108,0
+DA:118,49
+BA:89,0
+BA:89,0
+BA:89,1
+BA:89,2
+BA:89,1
+BA:89,2
+BA:108,0
+BA:108,0
+LF:14
+LH:10
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+DA:105,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/typeinfo
+FN:122,_ZNKSt9type_info6beforeERKS_
+DA:122,0
+DA:123,0
+LF:2
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:52,_ZlsIiER12AssertFailedS1_T_
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:52,_ZlsIcER12AssertFailedS1_T_
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:67,_Z12assert_eq_fnIccEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnIiiEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnIjjEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnIPKcS1_Ev8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsPKcEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsSsEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,3
+DA:69,3
+DA:70,0
+DA:71,0
+DA:75,3
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,1
+BA:69,2
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+LF:26
+LH:3
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/mmap.test.h
+FN:29,_ZN8TestMMap6simpleEv
+DA:29,1
+DA:30,1
+DA:31,1
+DA:32,1
+DA:33,2
+DA:34,2
+DA:36,2
+DA:37,2
+DA:38,1
+DA:39,2
+DA:40,2
+DA:41,2
+DA:42,2
+DA:43,2
+DA:45,1
+DA:46,1
+DA:47,1
+DA:48,2
+DA:49,2
+DA:51,2
+DA:52,1
+DA:53,2
+DA:54,2
+DA:55,2
+DA:56,2
+DA:57,2
+DA:59,1
+DA:60,1
+DA:61,1
+DA:62,2
+DA:63,2
+DA:64,1
+LF:32
+LH:32
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_sys_mmap.cpp
+FN:3,_Z41__static_initialization_and_destruction_0ii
+FN:3,_GLOBAL__I__Z15run_MMap_simplev
+FN:3,_Z15run_MMap_simplev
+DA:3,4
+BA:3,2
+BA:3,1
+BA:3,2
+BA:3,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2162,0
+DA:2165,0
+DA:2188,0
+DA:2189,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:55
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:166,0
+DA:167,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+DA:69,0
+DA:71,0
+DA:76,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:464,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:195,_ZNSolsEj
+DA:95,0
+DA:112,0
+DA:117,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:464,0
+DA:465,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/list.h
+FN:340,_ZN6wibble4list5countIN8TestList2MyEEEjT_
+FN:340,_ZN6wibble4list5countIN8TestList3My2EEEjT_
+FN:286,_ZNK6wibble4list5EmptyIiE5emptyEv
+FN:298,_ZNK6wibble4list8SingularIiE4headEv
+FN:299,_ZNK6wibble4list8SingularIiE5emptyEv
+FN:311,_ZNK6wibble4list6AppendINS0_8SingularIiEES3_E4headEv
+FN:317,_ZNK6wibble4list6AppendINS0_8SingularIiEES3_E5emptyEv
+FN:169,_ZN6wibble4list8FilteredIN8TestList2MyEPFbiEEC1ES3_S5_
+FN:370,_ZN6wibble4list6filterIN8TestList2MyEPFbiEEENS0_8FilteredIT_T0_EES7_S8_
+FN:61,_ZN6wibble4list6SortedIN8TestList2MyEE9SharedVec6_derefEv
+FN:241,_ZN6wibble4list4TakeIN8TestList2MyEEC1ES3_i
+FN:400,_ZN6wibble4list4takeIN8TestList2MyEEENS0_4TakeIT_EEiS5_
+FN:230,_ZNK6wibble4list4TakeIN8TestList2MyEE5emptyEv
+FN:213,_ZN6wibble4list6UniqueIN8TestList3My2EEC1ES3_
+FN:394,_ZN6wibble4list6uniqueIN8TestList3My2EEENS0_6UniqueIT_EES5_
+FN:193,_ZNK6wibble4list6UniqueIN8TestList3My2EE4seekEv
+FN:183,_ZNK6wibble4list6UniqueIN8TestList3My2EE5emptyEv
+FN:205,_ZNK6wibble4list6UniqueIN8TestList3My2EE4tailEv
+FN:340,_ZN6wibble4list5countINS0_6UniqueIN8TestList3My2EEEEEjT_
+FN:188,_ZNK6wibble4list6UniqueIN8TestList3My2EE4headEv
+FN:47,_ZN6wibble4list12ListIteratorIN8TestList2MyEEC1ES3_
+FN:416,_ZN6wibble4list3endIN8TestList2MyEEENS0_12ListIteratorIT_EES5_
+FN:411,_ZN6wibble4list5beginIN8TestList2MyEEENS0_12ListIteratorIT_EES5_
+FN:270,_ZNK6wibble4list3MapIN8TestList2MyESt25pointer_to_unary_functionIiiEE5emptyEv
+FN:297,_ZN6wibble4list8SingularIiEC1Ei
+FN:330,_ZN6wibble4list8singularIiEENS0_8SingularIT_EERKS3_
+FN:296,_ZN6wibble4list8SingularIiEC1Ev
+FN:300,_ZNK6wibble4list8SingularIiE4tailEv
+FN:310,_ZN6wibble4list6AppendINS0_8SingularIiEES3_EC1ES3_S3_
+FN:335,_ZN6wibble4list6appendINS0_8SingularIiEES3_EENS0_6AppendIT_T0_EERKS5_RKS6_
+FN:310,_ZN6wibble4list6AppendIN8TestList2MyENS2_3My2EEC1ES3_S4_
+FN:335,_ZN6wibble4list6appendIN8TestList2MyENS2_3My2EEENS0_6AppendIT_T0_EERKS6_RKS7_
+FN:317,_ZNK6wibble4list6AppendIN8TestList2MyENS2_3My2EE5emptyEv
+FN:318,_ZNK6wibble4list6AppendIN8TestList2MyENS2_3My2EE4tailEv
+FN:340,_ZN6wibble4list5countINS0_6AppendIN8TestList2MyENS3_3My2EEEEEjT_
+FN:155,_ZNK6wibble4list8FilteredIN8TestList2MyEPFbiEE4seekEv
+FN:150,_ZNK6wibble4list8FilteredIN8TestList2MyEPFbiEE4headEv
+FN:161,_ZNK6wibble4list8FilteredIN8TestList2MyEPFbiEE4tailEv
+FN:145,_ZNK6wibble4list8FilteredIN8TestList2MyEPFbiEE5emptyEv
+FN:340,_ZN6wibble4list5countINS0_8FilteredIN8TestList2MyEPFbiEEEEEjT_
+FN:60,_ZN6wibble4list6SortedIN8TestList2MyEE9SharedVec4_refEv
+FN:68,_ZN6wibble4list6SortedIN8TestList2MyEE9SharedPtrC1ERKS5_
+FN:125,_ZN6wibble4list6SortedIN8TestList2MyEEC1ERKS4_
+FN:83,_ZN6wibble4list6SortedIN8TestList2MyEE9SharedPtrptEv
+FN:74,_ZN6wibble4list6SortedIN8TestList2MyEE9SharedPtraSERKS5_
+FN:128,_ZN6wibble4list6SortedIN8TestList2MyEEaSERKS4_
+FN:82,_ZN6wibble4list6SortedIN8TestList2MyEE9SharedPtrdeEv
+FN:242,_ZN6wibble4list4TakeIN8TestList2MyEEC1Ev
+FN:234,_ZNK6wibble4list4TakeIN8TestList2MyEE4tailEv
+FN:340,_ZN6wibble4list5countINS0_4TakeIN8TestList2MyEEEEEjT_
+FN:250,_ZN6wibble4list3MapIN8TestList2MyESt25pointer_to_unary_functionIiiEE1fEv
+FN:275,_ZN6wibble4list3MapIN8TestList2MyESt25pointer_to_unary_functionIiiEEC1ERKS3_RKS5_
+FN:382,_ZN6wibble4list3mapIN8TestList2MyESt25pointer_to_unary_functionIiiEEENS0_3MapIT_T0_EERKS7_RKS8_
+FN:253,_ZNK6wibble4list3MapIN8TestList2MyESt25pointer_to_unary_functionIiiEE1fEv
+FN:259,_ZNK6wibble4list3MapIN8TestList2MyESt25pointer_to_unary_functionIiiEE4headEv
+FN:274,_ZN6wibble4list3MapIN8TestList2MyESt25pointer_to_unary_functionIiiEEC1Ev
+FN:263,_ZNK6wibble4list3MapIN8TestList2MyESt25pointer_to_unary_functionIiiEE4tailEv
+FN:81,_ZN6wibble4list6SortedIN8TestList2MyEE9SharedPtrcvbEv
+FN:59,_ZN6wibble4list6SortedIN8TestList2MyEE9SharedVecC1Ev
+FN:43,_ZNK6wibble4list12ListIteratorIN8TestList2MyEEneERKS4_
+FN:24,_ZN6wibble4list12ListIteratorIN8TestList2MyEEppEv
+FN:35,_ZN6wibble4list12ListIteratorIN8TestList2MyEEdeEv
+FN:56,_ZN6wibble4list6SortedIN8TestList2MyEE9SharedVecD1Ev
+FN:85,_ZN6wibble4list6SortedIN8TestList2MyEE9SharedPtrD1Ev
+FN:54,_ZN6wibble4list6SortedIN8TestList2MyEED1Ev
+FN:318,_ZNK6wibble4list6AppendINS0_8SingularIiEES3_E4tailEv
+FN:66,_ZN6wibble4list6SortedIN8TestList2MyEE9SharedPtrC1Eb
+FN:135,_ZN6wibble4list6SortedIN8TestList2MyEEC1ES3_
+FN:388,_ZN6wibble4list4sortIN8TestList2MyEEENS0_6SortedIT_EES5_
+FN:99,_ZNK6wibble4list6SortedIN8TestList2MyEE4sortEv
+FN:113,_ZNK6wibble4list6SortedIN8TestList2MyEE4tailEv
+FN:120,_ZNK6wibble4list6SortedIN8TestList2MyEE5emptyEv
+FN:340,_ZN6wibble4list5countINS0_6SortedIN8TestList2MyEEEEEjT_
+FN:108,_ZNK6wibble4list6SortedIN8TestList2MyEE4headEv
+DA:24,3170
+DA:25,3170
+DA:26,3170
+DA:35,3170
+DA:36,3170
+DA:43,3174
+DA:44,3174
+DA:47,8
+DA:48,8
+DA:54,2149
+DA:56,0
+DA:59,3
+DA:60,4295
+DA:61,2152
+DA:66,6
+DA:68,2146
+DA:69,2146
+DA:70,2146
+DA:71,2146
+DA:72,2146
+DA:74,2149
+DA:75,2149
+DA:76,2149
+DA:77,2149
+DA:78,2149
+DA:81,6545
+DA:82,2251
+DA:83,2157
+DA:85,2152
+DA:86,2152
+DA:87,2152
+DA:88,2152
+DA:89,0
+DA:91,2152
+DA:99,6545
+DA:100,6545
+DA:101,6542
+DA:102,3
+DA:103,3
+DA:105,3
+DA:108,2248
+DA:109,2248
+DA:110,2248
+DA:113,2146
+DA:114,2146
+DA:115,2146
+DA:116,2146
+DA:120,2151
+DA:121,2151
+DA:122,2151
+DA:125,2146
+DA:126,2146
+DA:128,2146
+DA:129,2146
+DA:130,2146
+DA:131,2146
+DA:132,2146
+DA:135,3
+DA:145,1026
+DA:146,1026
+DA:147,1026
+DA:150,512
+DA:151,512
+DA:152,512
+DA:155,2562
+DA:157,6146
+DA:158,1022
+DA:159,2562
+DA:161,1024
+DA:163,1024
+DA:164,1024
+DA:165,1024
+DA:169,2
+DA:170,2
+DA:172,2
+DA:183,21
+DA:184,21
+DA:185,21
+DA:188,2
+DA:189,2
+DA:190,2
+DA:193,113
+DA:195,113
+DA:196,1
+DA:197,112
+DA:198,2
+DA:199,110
+DA:200,69
+DA:201,69
+DA:205,21
+DA:207,21
+DA:208,21
+DA:209,21
+DA:213,3
+DA:214,3
+DA:216,3
+DA:230,51
+DA:231,51
+DA:234,50
+DA:235,50
+DA:236,50
+DA:237,50
+DA:241,1
+DA:242,50
+DA:250,513
+DA:251,513
+DA:253,1024
+DA:254,1024
+DA:259,512
+DA:260,512
+DA:263,512
+DA:264,512
+DA:265,512
+DA:266,512
+DA:270,513
+DA:271,513
+DA:274,512
+DA:275,1
+DA:276,1
+DA:278,1
+DA:279,1
+DA:286,2
+DA:296,10
+DA:297,11
+DA:298,6
+DA:299,28
+DA:300,10
+DA:310,5
+DA:311,4
+DA:312,4
+DA:313,2
+DA:314,2
+DA:317,28
+DA:318,27
+DA:319,27
+DA:320,27
+DA:321,14
+DA:323,13
+DA:330,11
+DA:331,11
+DA:335,5
+DA:336,5
+DA:340,10
+DA:341,10
+DA:342,5308
+DA:343,5288
+DA:344,5288
+DA:346,10
+DA:370,2
+DA:372,2
+DA:382,1
+DA:384,1
+DA:388,3
+DA:390,3
+DA:394,3
+DA:396,3
+DA:400,1
+DA:402,1
+DA:411,1
+DA:412,1
+DA:416,1
+DA:417,1
+BA:44,2
+BA:44,2
+BA:44,1
+BA:44,2
+BA:66,2
+BA:66,2
+BA:70,2
+BA:70,1
+BA:76,2
+BA:76,1
+BA:86,2
+BA:86,1
+BA:88,1
+BA:88,2
+BA:89,0
+BA:89,0
+BA:100,2
+BA:100,2
+BA:157,2
+BA:157,2
+BA:157,2
+BA:157,2
+BA:157,2
+BA:157,2
+BA:195,2
+BA:195,2
+BA:197,2
+BA:197,2
+BA:199,2
+BA:199,2
+BA:231,2
+BA:231,1
+BA:231,2
+BA:231,2
+BA:312,2
+BA:312,2
+BA:317,2
+BA:317,2
+BA:317,2
+BA:317,2
+BA:317,2
+BA:317,2
+BA:317,2
+BA:317,2
+BA:320,2
+BA:320,2
+BA:320,2
+BA:320,2
+BA:342,2
+BA:342,2
+BA:342,2
+BA:342,2
+BA:342,2
+BA:342,2
+BA:342,2
+BA:342,2
+BA:342,2
+BA:342,2
+BA:342,2
+BA:342,2
+BA:342,2
+BA:342,2
+LF:162
+LH:160
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:110,_Z18beginAssertFailurev
+FN:121,_ZN13ExpectFailureC1Ev
+FN:17,_ZN8LocationC1EPKciSs
+FN:13,_ZN8LocationC1ERKS_
+FN:52,_ZlsIiER12AssertFailedS1_T_
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:67,_Z12assert_eq_fnIjiEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnIiiEv8LocationT_T0_
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:67,_Z12assert_eq_fnIjjEv8LocationT_T0_
+FN:114,_Z16endAssertFailurev
+FN:122,_ZN13ExpectFailureD1Ev
+DA:13,5482
+DA:17,5284
+DA:18,5284
+DA:33,99
+DA:34,99
+DA:36,99
+DA:38,99
+DA:39,99
+DA:41,99
+DA:42,99
+DA:43,99
+DA:45,0
+DA:46,0
+DA:48,99
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,3533
+DA:61,3533
+DA:62,99
+DA:64,3533
+DA:67,1185
+DA:69,1185
+DA:70,0
+DA:71,0
+DA:75,1185
+DA:110,1
+DA:111,1
+DA:112,1
+DA:114,1
+DA:115,1
+DA:116,1
+DA:117,1
+DA:118,1
+DA:121,1
+DA:122,1
+BA:42,2
+BA:42,1
+BA:61,2
+BA:61,2
+BA:69,1
+BA:69,2
+BA:69,1
+BA:69,2
+BA:69,1
+BA:69,2
+LF:36
+LH:29
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/list.test.h
+FN:12,_ZNK8TestList2My4headEv
+FN:14,_ZNK8TestList2My4tailEv
+FN:23,_ZNK8TestList2My5emptyEv
+FN:25,_ZN8TestList2MyC1Eii
+FN:31,_ZNK8TestList3My24headEv
+FN:33,_ZNK8TestList3My24tailEv
+FN:47,_ZNK8TestList3My25emptyEv
+FN:49,_ZN8TestList3My2C1Eiii
+FN:53,_ZN8TestList3oddEi
+FN:129,_ZN8TestList8mul2add1Ei
+FN:157,_ZN8TestList11appendCountEv
+FN:148,_ZN8TestList6appendEv
+FN:143,_ZN8TestList6singleEv
+FN:139,_ZN8TestList5emptyEv
+FN:58,_ZN8TestList12checkOddListIN6wibble4list3MapINS_2MyESt25pointer_to_unary_functionIiiEEEEEvT_
+FN:133,_ZN8TestList3mapEv
+FN:112,_ZN8TestList6uniqueEv
+FN:106,_ZN8TestList4takeEv
+FN:69,_ZN8TestList15checkListSortedINS_2MyEEEvT_
+FN:58,_ZN8TestList12checkOddListIN6wibble4list8FilteredINS_2MyEPFbiEEEEEvT_
+FN:88,_ZN8TestList8filteredEv
+FN:81,_ZN8TestList5countEv
+FN:120,_ZN8TestList3stlEv
+FN:69,_ZN8TestList15checkListSortedIN6wibble4list6SortedINS_2MyEEEEEvT_
+FN:94,_ZN8TestList6sortedEv
+DA:12,10024
+DA:14,10494
+DA:15,10494
+DA:16,10494
+DA:17,10294
+DA:18,10494
+DA:19,200
+DA:23,13107
+DA:25,576
+DA:31,222
+DA:33,402
+DA:34,402
+DA:35,402
+DA:36,272
+DA:38,130
+DA:39,130
+DA:40,130
+DA:41,130
+DA:42,0
+DA:47,338
+DA:49,2
+DA:50,2
+DA:53,4606
+DA:54,4606
+DA:58,2
+DA:59,2
+DA:60,1028
+DA:61,1024
+DA:62,1024
+DA:63,1024
+DA:65,2
+DA:66,2
+DA:69,4
+DA:71,4
+DA:72,0
+DA:73,4
+DA:74,2254
+DA:75,2246
+DA:76,2246
+DA:77,3369
+DA:81,1
+DA:82,1
+DA:83,1
+DA:84,1
+DA:85,2
+DA:86,1
+DA:88,1
+DA:89,1
+DA:90,1
+DA:91,1
+DA:92,1
+DA:94,1
+DA:95,1
+DA:96,1
+DA:97,1
+DA:98,2
+DA:100,1
+DA:101,2
+DA:103,2
+DA:104,1
+DA:106,1
+DA:107,1
+DA:108,1
+DA:109,2
+DA:110,1
+DA:112,1
+DA:113,1
+DA:114,1
+DA:115,2
+DA:116,2
+DA:117,2
+DA:118,1
+DA:120,1
+DA:121,1
+DA:122,1
+DA:124,1
+DA:125,2050
+DA:126,1025
+DA:127,1
+DA:129,512
+DA:130,512
+DA:133,1
+DA:134,1
+DA:136,1
+DA:137,1
+DA:139,1
+DA:140,1
+DA:141,1
+DA:143,1
+DA:144,1
+DA:145,2
+DA:146,1
+DA:148,1
+DA:150,1
+DA:152,2
+DA:154,2
+DA:155,1
+DA:157,1
+DA:159,1
+DA:160,1
+BA:16,2
+BA:16,2
+BA:18,2
+BA:18,2
+BA:35,2
+BA:35,2
+BA:39,2
+BA:39,1
+BA:41,1
+BA:41,2
+BA:60,2
+BA:60,2
+BA:60,2
+BA:60,2
+BA:71,1
+BA:71,2
+BA:71,1
+BA:71,2
+BA:74,2
+BA:74,2
+BA:74,2
+BA:74,2
+BA:125,2
+BA:125,2
+LF:100
+LH:98
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_list.cpp
+FN:13,_Z41__static_initialization_and_destruction_0ii
+FN:13,_GLOBAL__I__Z14run_List_countv
+FN:13,_Z20run_List_appendCountv
+FN:12,_Z15run_List_appendv
+FN:11,_Z15run_List_singlev
+FN:10,_Z14run_List_emptyv
+FN:9,_Z12run_List_mapv
+FN:7,_Z15run_List_uniquev
+FN:6,_Z13run_List_takev
+FN:4,_Z17run_List_filteredv
+FN:3,_Z14run_List_countv
+FN:8,_Z12run_List_stlv
+FN:5,_Z15run_List_sortedv
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,1
+DA:7,1
+DA:8,1
+DA:9,1
+DA:10,1
+DA:11,1
+DA:12,1
+DA:13,4
+BA:13,2
+BA:13,1
+BA:13,2
+BA:13,1
+LF:11
+LH:11
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaIiED2Ev
+FN:98,_ZNSaIiEC2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,14
+DA:100,0
+DA:101,0
+DA:106,11
+DA:118,0
+DA:119,0
+LF:6
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:51
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algo.h
+FN:89,_ZSt8__medianIiERKT_S2_S2_S2_
+FN:1714,_ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEiEvT_T0_
+FN:1793,_ZSt26__unguarded_insertion_sortIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEvT_S7_
+FN:1856,_ZSt21__unguarded_partitionIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEiET_S7_S7_T0_
+FN:1555,_ZSt13__heap_selectIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEvT_S7_S7_
+FN:4622,_ZSt12partial_sortIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEvT_S7_S7_
+FN:1898,_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEiEvT_S7_T0_
+FN:1748,_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEvT_S7_
+FN:1825,_ZSt22__final_insertion_sortIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEvT_S7_
+FN:1970,_ZSt4__lgi
+FN:4770,_ZSt4sortIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEvT_S7_
+DA:89,133
+DA:93,133
+DA:94,132
+DA:95,132
+DA:96,0
+DA:97,0
+DA:99,0
+DA:100,1
+DA:101,0
+DA:102,1
+DA:103,0
+DA:105,1
+DA:1555,0
+DA:1557,0
+DA:1558,0
+DA:1559,0
+DA:1560,0
+DA:1561,0
+DA:1714,2144
+DA:1716,2144
+DA:1717,2144
+DA:1718,4288
+DA:1720,0
+DA:1721,0
+DA:1722,0
+DA:1724,2144
+DA:1725,2144
+DA:1748,4
+DA:1750,4
+DA:1751,0
+DA:1753,51
+DA:1756,47
+DA:1757,47
+DA:1759,1
+DA:1760,1
+DA:1763,46
+DA:1793,3
+DA:1798,2101
+DA:1799,2098
+DA:1800,3
+DA:1825,4
+DA:1827,4
+DA:1829,3
+DA:1830,3
+DA:1833,1
+DA:1834,4
+DA:1856,183
+DA:1858,50
+DA:1860,6596
+DA:1861,6230
+DA:1862,183
+DA:1863,6480
+DA:1864,6114
+DA:1865,183
+DA:1866,133
+DA:1867,50
+DA:1868,50
+DA:1898,137
+DA:1903,407
+DA:1905,133
+DA:1907,0
+DA:1908,0
+DA:1910,133
+DA:1919,133
+DA:1920,133
+DA:1921,133
+DA:1970,4
+DA:1971,4
+DA:4622,0
+DA:4634,0
+DA:4635,0
+DA:4636,0
+DA:4770,4
+DA:4781,4
+DA:4783,4
+DA:4785,4
+DA:4787,4
+BA:93,2
+BA:93,2
+BA:94,2
+BA:94,1
+BA:96,0
+BA:96,0
+BA:100,1
+BA:100,2
+BA:102,1
+BA:102,2
+BA:1558,0
+BA:1558,0
+BA:1559,0
+BA:1559,0
+BA:1718,1
+BA:1718,2
+BA:1750,1
+BA:1750,2
+BA:1753,2
+BA:1753,2
+BA:1757,2
+BA:1757,2
+BA:1798,2
+BA:1798,2
+BA:1827,2
+BA:1827,2
+BA:1860,2
+BA:1860,2
+BA:1863,2
+BA:1863,2
+BA:1865,2
+BA:1865,2
+BA:1903,2
+BA:1903,2
+BA:1905,1
+BA:1905,2
+BA:4781,2
+BA:4781,1
+LF:77
+LH:56
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN6wibble4list12ListIteratorIN8TestList2MyEEELb0EE3__bES5_
+FN:268,_ZNSt12__niter_baseIN6wibble4list12ListIteratorIN8TestList2MyEEELb0EE3__bES5_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorIiSaIiEEELb0EE3__bES4_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEELb0EE3__bES6_
+FN:104,_ZNSt11__iter_swapILb1EE9iter_swapIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEES8_EEvT_T0_
+FN:121,_ZSt9iter_swapIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEES6_EvT_T0_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEELb1EE3__bES6_
+FN:286,_ZNSt12__miter_baseIPiLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:268,_ZNSt12__niter_baseIPiLb0EE3__bES0_
+FN:569,_ZNSt20__copy_move_backwardILb0ELb1ESt26random_access_iterator_tagE13__copy_move_bIiEEPT_PKS3_S6_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPiS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPiS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPiS0_ET0_T_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEES6_ET1_T0_S8_S7_
+FN:624,_ZSt13copy_backwardIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEES6_ET0_T_S8_S7_
+FN:375,_ZNSt11__copy_moveILb0ELb1ESt26random_access_iterator_tagE8__copy_mIiEEPT_PKS3_S6_S4_
+FN:385,_ZSt13__copy_move_aILb0EPiS0_ET1_T0_S2_S1_
+FN:430,_ZSt14__copy_move_a2ILb0EPiS0_ET1_T0_S2_S1_
+FN:456,_ZSt4copyIPiS0_ET0_T_S2_S1_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt20forward_iterator_tagE8__copy_mIN6wibble4list12ListIteratorIN8TestList2MyEEESt20back_insert_iteratorISt6vectorIiSaIiEEEEET0_T_SF_SE_
+FN:385,_ZSt13__copy_move_aILb0EN6wibble4list12ListIteratorIN8TestList2MyEEESt20back_insert_iteratorISt6vectorIiSaIiEEEET1_T0_SC_SB_
+FN:430,_ZSt14__copy_move_a2ILb0EN6wibble4list12ListIteratorIN8TestList2MyEEESt20back_insert_iteratorISt6vectorIiSaIiEEEET1_T0_SC_SB_
+FN:456,_ZSt4copyIN6wibble4list12ListIteratorIN8TestList2MyEEESt20back_insert_iteratorISt6vectorIiSaIiEEEET0_T_SC_SB_
+DA:104,50
+DA:106,50
+DA:107,50
+DA:121,50
+DA:142,50
+DA:146,50
+DA:210,230
+DA:215,230
+DA:216,111
+DA:217,119
+DA:268,402
+DA:269,402
+DA:276,5
+DA:277,5
+DA:286,272
+DA:287,272
+DA:309,4
+DA:311,3174
+DA:312,3170
+DA:313,4
+DA:375,130
+DA:377,130
+DA:379,130
+DA:385,134
+DA:393,134
+DA:396,134
+DA:430,134
+DA:435,134
+DA:456,134
+DA:466,134
+DA:569,1
+DA:571,1
+DA:572,1
+DA:573,1
+DA:579,1
+DA:587,1
+DA:592,1
+DA:597,1
+DA:602,1
+DA:624,1
+DA:636,1
+BA:215,2
+BA:215,2
+BA:311,2
+BA:311,2
+LF:41
+LH:41
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:97,_ZSt8_DestroyIPiEvT_S1_
+FN:126,_ZSt8_DestroyIPiiEvT_S1_RSaIT0_E
+DA:97,76
+DA:104,76
+DA:126,76
+DA:128,76
+DA:129,76
+LF:5
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:104,_ZNSt14unary_functionIiiEC2Ev
+FN:420,_ZNSt25pointer_to_unary_functionIiiEC1EPFiiE
+FN:431,_ZSt7ptr_funIiiESt25pointer_to_unary_functionIT_T0_EPFS2_S1_E
+FN:424,_ZNKSt25pointer_to_unary_functionIiiEclEi
+DA:104,3
+DA:420,1
+DA:421,1
+DA:424,512
+DA:425,512
+DA:431,1
+DA:432,1
+LF:7
+LH:7
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_heap.h
+FN:131,_ZSt11__push_heapIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEiiEvT_T0_S8_T1_
+FN:225,_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEiiEvT_T0_S8_T1_
+FN:371,_ZSt9make_heapIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEvT_S7_
+FN:251,_ZSt10__pop_heapIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEvT_S7_S7_
+FN:276,_ZSt8pop_heapIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEvT_S7_
+FN:450,_ZSt9sort_heapIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEEvT_S7_
+DA:131,0
+DA:133,0
+DA:134,0
+DA:136,0
+DA:137,0
+DA:138,0
+DA:140,0
+DA:141,0
+DA:225,0
+DA:227,0
+DA:228,0
+DA:229,0
+DA:231,0
+DA:232,0
+DA:233,0
+DA:234,0
+DA:235,0
+DA:237,0
+DA:239,0
+DA:240,0
+DA:242,0
+DA:244,0
+DA:246,0
+DA:251,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:263,0
+DA:276,0
+DA:288,0
+DA:289,0
+DA:371,0
+DA:384,0
+DA:385,0
+DA:387,0
+DA:388,0
+DA:389,0
+DA:391,0
+DA:392,0
+DA:393,0
+DA:394,0
+DA:395,0
+DA:450,0
+DA:460,0
+DA:461,0
+DA:462,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:229,0
+BA:229,0
+BA:232,0
+BA:232,0
+BA:237,0
+BA:237,0
+BA:237,0
+BA:237,0
+BA:384,0
+BA:384,0
+BA:393,0
+BA:393,0
+BA:460,0
+BA:460,0
+LF:46
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:398,_ZNSt20back_insert_iteratorISt6vectorIiSaIiEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorIiSaIiEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEC1ERKS1_
+FN:434,_ZNSt20back_insert_iteratorISt6vectorIiSaIiEEEppEv
+FN:429,_ZNSt20back_insert_iteratorISt6vectorIiSaIiEEEdeEv
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEE4baseEv
+FN:781,_ZN9__gnu_cxxneIPiSt6vectorIiSaIiEEEEbRKNS_17__normal_iteratorIT_T0_EESA_
+FN:846,_ZN9__gnu_cxxmiIPiSt6vectorIiSaIiEEEENS_17__normal_iteratorIT_T0_E15difference_typeERKS8_SB_
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEdeEv
+FN:735,_ZNK9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEplERKi
+FN:743,_ZNK9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEmiERKi
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEppEv
+FN:715,_ZN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEmmEv
+FN:794,_ZN9__gnu_cxxltIPiSt6vectorIiSaIiEEEEbRKNS_17__normal_iteratorIT_T0_EESA_
+FN:769,_ZN9__gnu_cxxeqIPiSt6vectorIiSaIiEEEEbRKNS_17__normal_iteratorIT_T0_EESA_
+FN:722,_ZN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEmmEi
+FN:412,_ZNSt20back_insert_iteratorISt6vectorIiSaIiEEEaSERKi
+DA:398,4
+DA:412,3170
+DA:414,3170
+DA:415,3170
+DA:429,3170
+DA:430,3170
+DA:434,3170
+DA:435,3170
+DA:456,4
+DA:457,4
+DA:683,409
+DA:695,19712
+DA:696,19712
+DA:703,8451
+DA:705,8451
+DA:706,8451
+DA:715,8441
+DA:717,8441
+DA:718,8441
+DA:722,0
+DA:723,0
+DA:735,149
+DA:736,149
+DA:743,133
+DA:744,133
+DA:747,5767
+DA:748,5767
+DA:769,49
+DA:770,49
+DA:781,2156
+DA:782,2156
+DA:794,183
+DA:795,183
+DA:846,428
+DA:847,428
+LF:35
+LH:33
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,550
+DA:166,0
+DA:167,0
+LF:3
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_move.h
+FN:80,_ZSt4swapIiEvRT_S1_
+DA:80,50
+DA:85,50
+DA:86,50
+DA:87,50
+DA:88,50
+LF:5
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:97,_ZNSt20__uninitialized_copyILb1EE18uninitialized_copyIPiS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPiS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPiS0_iET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPiS0_SaIiEET0_T_S3_S2_RT1_
+DA:97,130
+DA:98,130
+DA:113,130
+DA:122,130
+DA:261,130
+DA:262,130
+DA:268,130
+DA:272,130
+LF:8
+LH:8
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:562,_ZNSt6vectorIiSaIiEEixEj
+FN:97,_ZNSt12_Vector_baseIiSaIiEE19_M_get_Tp_allocatorEv
+FN:484,_ZNKSt6vectorIiSaIiEE4sizeEv
+FN:79,_ZNSt12_Vector_baseIiSaIiEE12_Vector_implD1Ev
+FN:395,_ZNSt6vectorIiSaIiEE3endEv
+FN:377,_ZNSt6vectorIiSaIiEE5beginEv
+FN:84,_ZNSt12_Vector_baseIiSaIiEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIiSaIiEEC2Ev
+FN:213,_ZNSt6vectorIiSaIiEEC1Ev
+FN:101,_ZNKSt12_Vector_baseIiSaIiEE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorIiSaIiEE8max_sizeEv
+FN:147,_ZNSt12_Vector_baseIiSaIiEE13_M_deallocateEPij
+FN:135,_ZNSt12_Vector_baseIiSaIiEED2Ev
+FN:299,_ZNSt6vectorIiSaIiEED1Ev
+FN:1075,_ZNKSt6vectorIiSaIiEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseIiSaIiEE11_M_allocateEj
+FN:686,_ZNSt6vectorIiSaIiEE9push_backERKi
+DA:79,11
+DA:84,14
+DA:85,14
+DA:86,14
+DA:97,206
+DA:98,206
+DA:101,130
+DA:102,130
+DA:108,14
+DA:109,14
+DA:135,11
+DA:136,11
+DA:137,11
+DA:143,65
+DA:144,65
+DA:147,76
+DA:149,76
+DA:150,62
+DA:151,76
+DA:213,14
+DA:214,14
+DA:299,11
+DA:300,11
+DA:301,11
+DA:377,42
+DA:378,42
+DA:395,67
+DA:396,67
+DA:484,2411
+DA:485,2411
+DA:489,130
+DA:490,130
+DA:562,3272
+DA:563,3272
+DA:686,3177
+DA:688,3177
+DA:690,3129
+DA:691,3129
+DA:694,48
+DA:695,3177
+DA:1075,65
+DA:1077,65
+DA:1078,0
+DA:1080,65
+DA:1081,65
+BA:144,2
+BA:144,1
+BA:149,2
+BA:149,2
+BA:688,2
+BA:688,2
+BA:1077,1
+BA:1077,2
+BA:1081,2
+BA:1081,1
+BA:1081,1
+BA:1081,2
+LF:45
+LH:44
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorIiSaIiEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPiS1_EERKi
+DA:283,65
+DA:286,65
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,65
+DA:308,65
+DA:309,65
+DA:316,65
+DA:321,65
+DA:323,65
+DA:324,65
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,65
+DA:338,65
+DA:341,65
+DA:342,65
+DA:343,65
+DA:345,65
+BA:286,1
+BA:286,2
+LF:24
+LH:15
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorIiED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIiEC2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorIiE9constructEPiRKi
+FN:101,_ZNK9__gnu_cxx13new_allocatorIiE8max_sizeEv
+FN:97,_ZN9__gnu_cxx13new_allocatorIiE10deallocateEPij
+FN:87,_ZN9__gnu_cxx13new_allocatorIiE8allocateEjPKv
+DA:69,112
+DA:71,0
+DA:76,109
+DA:87,65
+DA:89,65
+DA:90,0
+DA:92,65
+DA:97,62
+DA:98,62
+DA:101,195
+DA:102,195
+DA:107,3243
+DA:108,3243
+BA:89,1
+BA:89,2
+BA:108,2
+BA:108,1
+LF:13
+LH:11
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+DA:105,10297
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:195,_ZNSolsEj
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:263,_ZNK6wibble9exception11Consistency4typeEv
+FN:406,_ZNK6wibble9exception6System4codeEv
+FN:428,_ZNK6wibble9exception4File4typeEv
+FN:109,_ZN6wibble9exception10AddContext7contextEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:279,_ZNK6wibble9exception7BadCast8typeinfoEv
+FN:265,_ZNK6wibble9exception11Consistency4descEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:117,_ZN6wibble9exception10AddContext11copyContextISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvT_
+FN:153,_ZN6wibble9exception7Context10addContextERKSs
+FN:147,_ZN6wibble9exception7ContextC2ERKSs
+FN:186,_ZN6wibble9exception7GenericC1ERKSs
+FN:186,_ZN6wibble9exception7GenericC2ERKSs
+FN:123,_ZN6wibble9exception10AddContextC1ESs
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:129,_ZN6wibble9exception10AddContextD1Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:292,_ZNK6wibble9exception10BadCastExtIiPKcE8typeinfoEv
+FN:280,_ZNK6wibble9exception7BadCast4descEv
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:259,_ZN6wibble9exception11ConsistencyC2ERKSsS3_
+FN:395,_ZN6wibble9exception6SystemD2Ev
+FN:395,_ZN6wibble9exception6SystemD1Ev
+FN:261,_ZN6wibble9exception11ConsistencyD2Ev
+FN:278,_ZN6wibble9exception7BadCastD2Ev
+FN:291,_ZN6wibble9exception10BadCastExtIiPKcED0Ev
+FN:291,_ZN6wibble9exception10BadCastExtIiPKcED1Ev
+FN:278,_ZN6wibble9exception7BadCastD0Ev
+FN:278,_ZN6wibble9exception7BadCastD1Ev
+FN:261,_ZN6wibble9exception11ConsistencyD0Ev
+FN:261,_ZN6wibble9exception11ConsistencyD1Ev
+FN:275,_ZN6wibble9exception7BadCastC2ERKSs
+FN:288,_ZN6wibble9exception10BadCastExtIiPKcEC1ERKSs
+FN:426,_ZN6wibble9exception4FileD0Ev
+FN:426,_ZN6wibble9exception4FileD1Ev
+FN:424,_ZN6wibble9exception4FileC1ERKSsS3_
+FN:430,_ZNK6wibble9exception4File4descEv
+DA:109,21
+DA:110,21
+DA:111,20
+DA:112,1
+DA:113,1
+DA:117,6
+DA:118,6
+DA:119,6
+DA:123,3
+DA:124,3
+DA:126,3
+DA:127,3
+DA:129,3
+DA:130,3
+DA:131,3
+DA:132,3
+DA:137,6
+DA:147,6
+DA:148,6
+DA:149,6
+DA:150,6
+DA:151,6
+DA:153,6
+DA:154,5
+DA:155,0
+DA:156,5
+DA:157,0
+DA:159,5
+DA:161,5
+DA:162,5
+DA:163,5
+DA:186,6
+DA:187,6
+DA:190,0
+DA:193,2
+DA:194,0
+DA:195,2
+DA:205,4
+DA:206,0
+DA:207,4
+DA:209,4
+DA:210,4
+DA:213,1
+DA:259,1
+DA:260,1
+DA:261,1
+DA:263,0
+DA:265,0
+DA:266,0
+DA:267,0
+DA:268,0
+DA:269,0
+DA:275,1
+DA:276,1
+DA:277,1
+DA:278,1
+DA:279,0
+DA:280,1
+DA:281,1
+DA:288,1
+DA:289,1
+DA:290,1
+DA:291,1
+DA:292,1
+DA:295,1
+DA:395,2
+DA:406,2
+DA:424,1
+DA:425,1
+DA:426,1
+DA:428,0
+DA:430,1
+BA:110,2
+BA:110,2
+BA:156,1
+BA:156,2
+BA:187,0
+BA:187,0
+BA:187,1
+BA:187,2
+BA:187,1
+BA:187,2
+BA:207,2
+BA:207,1
+BA:261,1
+BA:261,2
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:267,0
+BA:267,0
+BA:278,1
+BA:278,2
+BA:278,0
+BA:278,0
+BA:278,0
+BA:278,0
+BA:291,0
+BA:291,0
+BA:291,1
+BA:291,2
+BA:395,1
+BA:395,2
+BA:395,1
+BA:395,2
+BA:426,0
+BA:426,0
+BA:426,1
+BA:426,2
+LF:72
+LH:59
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:52,_ZlsIiER12AssertFailedS1_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:67,_Z12assert_eq_fnIiiEv8LocationT_T0_
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:67,_Z12assert_eq_fnISsPKcEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsSsEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:75,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+LF:26
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.test.h
+FN:79,_ZN13TestException10addContextEv
+FN:64,_ZN13TestException7badCastEv
+FN:44,_ZN13TestException6systemEv
+FN:29,_ZN13TestException7genericEv
+DA:29,1
+DA:32,1
+DA:33,2
+DA:34,1
+DA:38,2
+DA:39,2
+DA:40,1
+DA:42,1
+DA:44,1
+DA:47,1
+DA:48,2
+DA:49,2
+DA:51,1
+DA:55,2
+DA:56,2
+DA:57,2
+DA:59,1
+DA:60,2
+DA:62,1
+DA:64,1
+DA:66,1
+DA:68,1
+DA:69,1
+DA:71,2
+DA:73,1
+DA:74,1
+DA:76,2
+DA:77,1
+DA:79,1
+DA:80,1
+DA:81,1
+DA:83,2
+DA:84,1
+DA:86,2
+DA:87,2
+DA:88,1
+DA:89,2
+DA:93,1
+DA:94,1
+DA:96,1
+DA:97,1
+LF:41
+LH:41
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_exception.cpp
+FN:6,_Z41__static_initialization_and_destruction_0ii
+FN:6,_GLOBAL__I__Z21run_Exception_genericv
+FN:6,_Z24run_Exception_addContextv
+FN:5,_Z21run_Exception_badCastv
+FN:4,_Z20run_Exception_systemv
+FN:3,_Z21run_Exception_genericv
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,4
+BA:6,2
+BA:6,1
+BA:6,2
+BA:6,1
+LF:4
+LH:4
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,83
+DA:100,0
+DA:101,0
+DA:106,95
+DA:118,0
+DA:119,0
+LF:6
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:501,_ZNSsaSERKSs
+FN:835,_ZNSs6appendEPKc
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:1593,_ZNKSs4findEPKcj
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1593,0
+DA:1596,0
+DA:2067,0
+DA:2069,0
+DA:2084,22
+DA:2086,22
+DA:2087,22
+DA:2088,0
+DA:2121,9
+DA:2123,9
+DA:2124,9
+DA:2125,0
+DA:2162,0
+DA:2165,0
+DA:2188,0
+DA:2189,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:73
+LH:6
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,63
+DA:126,63
+DA:163,0
+DA:164,0
+LF:4
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET0_T_SA_S9_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,11
+DA:269,11
+DA:276,22
+DA:277,22
+DA:286,22
+DA:287,22
+DA:337,11
+DA:340,22
+DA:342,11
+DA:343,11
+DA:344,11
+DA:346,11
+DA:385,11
+DA:393,11
+DA:396,11
+DA:430,11
+DA:435,11
+DA:456,11
+DA:466,11
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+BA:340,2
+BA:340,2
+BA:340,2
+BA:340,2
+BA:542,0
+BA:542,0
+LF:34
+LH:19
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,75
+DA:88,75
+DA:97,156
+DA:101,231
+DA:103,75
+DA:104,156
+DA:126,156
+DA:128,156
+DA:129,156
+BA:101,2
+BA:101,2
+LF:9
+LH:9
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:743,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEmiERKi
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+DA:398,6
+DA:412,3
+DA:414,3
+DA:415,3
+DA:429,3
+DA:430,3
+DA:434,3
+DA:435,3
+DA:456,6
+DA:457,6
+DA:683,222
+DA:695,3
+DA:696,3
+DA:743,3
+DA:744,3
+DA:747,286
+DA:748,286
+DA:769,8
+DA:770,8
+LF:19
+LH:19
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+DA:73,122
+DA:75,122
+DA:78,138
+DA:79,16
+DA:81,122
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,122
+DA:122,122
+DA:261,122
+DA:262,122
+DA:268,122
+DA:272,122
+BA:78,2
+BA:78,2
+BA:79,2
+BA:79,1
+LF:14
+LH:11
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:647,_ZNSt6vectorISsSaISsEE4backEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+FN:722,_ZNSt6vectorISsSaISsEE8pop_backEv
+DA:79,69
+DA:84,70
+DA:85,70
+DA:86,70
+DA:97,252
+DA:98,252
+DA:101,122
+DA:102,122
+DA:108,70
+DA:109,70
+DA:135,69
+DA:136,69
+DA:137,69
+DA:143,61
+DA:144,61
+DA:147,130
+DA:149,130
+DA:150,60
+DA:151,130
+DA:213,70
+DA:214,70
+DA:299,69
+DA:300,69
+DA:301,69
+DA:377,12
+DA:378,12
+DA:386,36
+DA:387,36
+DA:395,79
+DA:396,79
+DA:404,64
+DA:405,64
+DA:484,247
+DA:485,247
+DA:489,122
+DA:490,122
+DA:526,8
+DA:527,8
+DA:647,3
+DA:648,3
+DA:686,62
+DA:688,62
+DA:690,1
+DA:691,1
+DA:694,61
+DA:695,62
+DA:722,3
+DA:724,3
+DA:725,3
+DA:726,3
+DA:1075,61
+DA:1077,61
+DA:1078,0
+DA:1080,61
+DA:1081,61
+BA:144,2
+BA:144,1
+BA:149,2
+BA:149,2
+BA:688,2
+BA:688,2
+BA:1077,1
+BA:1077,2
+BA:1081,2
+BA:1081,1
+BA:1081,1
+BA:1081,2
+LF:55
+LH:54
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,5
+DA:182,5
+DA:185,25
+DA:186,25
+DA:191,8
+DA:196,8
+DA:197,8
+DA:198,8
+DA:202,8
+DA:203,8
+DA:206,8
+DA:207,8
+BA:197,2
+BA:197,1
+LF:12
+LH:12
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+DA:283,61
+DA:286,61
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,61
+DA:308,61
+DA:309,61
+DA:316,61
+DA:321,61
+DA:323,61
+DA:324,61
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,61
+DA:338,61
+DA:341,61
+DA:342,61
+DA:343,61
+DA:345,61
+BA:286,1
+BA:286,2
+LF:24
+LH:15
+end_of_record
+SF:/usr/include/c++/4.3/exception
+FN:59,_ZNSt9exceptionC2Ev
+DA:59,6
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+FN:118,_ZN9__gnu_cxx13new_allocatorISsE7destroyEPSs
+DA:69,199
+DA:71,0
+DA:76,211
+DA:87,87
+DA:89,87
+DA:90,0
+DA:92,87
+DA:97,86
+DA:98,86
+DA:101,209
+DA:102,209
+DA:107,144
+DA:108,144
+DA:118,85
+BA:89,1
+BA:89,2
+BA:108,2
+BA:108,1
+LF:14
+LH:12
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:25
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/typeinfo
+FN:104,_ZNKSt9type_info4nameEv
+DA:104,2
+DA:105,2
+LF:2
+LH:2
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/mixin.h
+FN:13,_ZN6wibble5mixin10ComparableIN12_GLOBAL__N_17IntegerEEC2Ev
+FN:15,_ZNK6wibble5mixin10ComparableIN12_GLOBAL__N_17IntegerEE7cmpSelfEv
+FN:23,_ZNK6wibble5mixin10ComparableIN12_GLOBAL__N_17IntegerEEeqERKS3_
+FN:19,_ZNK6wibble5mixin10ComparableIN12_GLOBAL__N_17IntegerEEneERKS3_
+FN:27,_ZNK6wibble5mixin10ComparableIN12_GLOBAL__N_17IntegerEEltERKS3_
+FN:31,_ZNK6wibble5mixin10ComparableIN12_GLOBAL__N_17IntegerEEgtERKS3_
+FN:35,_ZNK6wibble5mixin10ComparableIN12_GLOBAL__N_17IntegerEEgeERKS3_
+FN:64,_ZN6wibble5mixin14OutputIteratorIN12_GLOBAL__N_17DiscardEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN12_GLOBAL__N_17DiscardEEppEv
+DA:13,3
+DA:15,35
+DA:16,35
+DA:19,6
+DA:20,6
+DA:23,8
+DA:24,8
+DA:27,3
+DA:28,3
+DA:31,3
+DA:32,3
+DA:35,4
+DA:36,4
+DA:53,3
+DA:54,3
+DA:64,3
+DA:65,3
+BA:24,2
+BA:24,2
+BA:24,2
+BA:24,2
+BA:28,2
+BA:28,2
+BA:28,2
+BA:28,2
+BA:32,2
+BA:32,2
+BA:32,2
+BA:32,2
+LF:17
+LH:17
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:17,_ZN8LocationC1EPKciSs
+FN:13,_ZN8LocationC1ERKS_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:59,_Z9assert_fnIbEv8LocationT_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+LF:18
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/mixin.test.h
+FN:15,_ZN12_GLOBAL__N_17IntegerC1Ei
+FN:16,_ZNK12_GLOBAL__N_17IntegerleERKS0_
+FN:22,_ZN12_GLOBAL__N_17DiscardaSERKi
+FN:63,_ZN12_GLOBAL__N_19TestMixin6outputEv
+FN:31,_ZN12_GLOBAL__N_19TestMixin10comparableEv
+DA:15,3
+DA:16,29
+DA:22,3
+DA:24,3
+DA:31,1
+DA:32,1
+DA:33,1
+DA:34,1
+DA:37,1
+DA:38,2
+DA:39,2
+DA:40,2
+DA:43,2
+DA:44,2
+DA:46,2
+DA:47,2
+DA:49,2
+DA:50,2
+DA:51,2
+DA:53,2
+DA:54,2
+DA:55,2
+DA:57,2
+DA:58,2
+DA:59,2
+DA:60,2
+DA:61,1
+DA:63,1
+DA:64,1
+DA:65,1
+DA:66,1
+DA:67,1
+DA:69,1
+DA:70,1
+LF:34
+LH:34
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_mixin.cpp
+FN:4,_Z41__static_initialization_and_destruction_0ii
+FN:4,_GLOBAL__I__Z20run_Mixin_comparablev
+FN:4,_Z16run_Mixin_outputv
+FN:3,_Z20run_Mixin_comparablev
+DA:3,1
+DA:4,4
+BA:4,2
+BA:4,1
+BA:4,2
+BA:4,1
+LF:2
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaIiED2Ev
+FN:98,_ZNSaIiEC2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:51
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseIN12_GLOBAL__N_17DiscardELb0EE3__bES1_
+FN:286,_ZNSt12__miter_baseIPiLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:268,_ZNSt12__niter_baseIPiLb0EE3__bES0_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPiN12_GLOBAL__N_17DiscardEEET0_T_S7_S6_
+FN:385,_ZSt13__copy_move_aILb0EPiN12_GLOBAL__N_17DiscardEET1_T0_S4_S3_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEN12_GLOBAL__N_17DiscardEET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEN12_GLOBAL__N_17DiscardEET0_T_SA_S9_
+FN:569,_ZNSt20__copy_move_backwardILb0ELb1ESt26random_access_iterator_tagE13__copy_move_bIiEEPT_PKS3_S6_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPiS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPiS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPiS0_ET0_T_S2_S1_
+FN:375,_ZNSt11__copy_moveILb0ELb1ESt26random_access_iterator_tagE8__copy_mIiEEPT_PKS3_S6_S4_
+FN:385,_ZSt13__copy_move_aILb0EPiS0_ET1_T0_S2_S1_
+FN:430,_ZSt14__copy_move_a2ILb0EPiS0_ET1_T0_S2_S1_
+FN:456,_ZSt4copyIPiS0_ET0_T_S2_S1_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,1
+DA:269,1
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,1
+DA:340,4
+DA:342,3
+DA:343,3
+DA:344,3
+DA:346,1
+DA:375,0
+DA:377,0
+DA:379,0
+DA:385,1
+DA:393,1
+DA:396,1
+DA:430,1
+DA:435,1
+DA:456,1
+DA:466,1
+DA:569,0
+DA:571,0
+DA:572,0
+DA:573,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+BA:340,2
+BA:340,2
+LF:37
+LH:15
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:97,_ZSt8_DestroyIPiEvT_S1_
+FN:126,_ZSt8_DestroyIPiiEvT_S1_RSaIT0_E
+DA:97,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEE4baseEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEdeEv
+DA:683,0
+DA:695,0
+DA:696,0
+DA:747,0
+DA:748,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:166,0
+DA:167,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:97,_ZNSt20__uninitialized_copyILb1EE18uninitialized_copyIPiS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPiS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPiS0_iET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPiS0_SaIiEET0_T_S3_S2_RT1_
+DA:97,0
+DA:98,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseIiSaIiEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorIiSaIiEE3endEv
+FN:377,_ZNSt6vectorIiSaIiEE5beginEv
+FN:79,_ZNSt12_Vector_baseIiSaIiEE12_Vector_implD1Ev
+FN:484,_ZNKSt6vectorIiSaIiEE4sizeEv
+FN:84,_ZNSt12_Vector_baseIiSaIiEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIiSaIiEEC2Ev
+FN:213,_ZNSt6vectorIiSaIiEEC1Ev
+FN:101,_ZNKSt12_Vector_baseIiSaIiEE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorIiSaIiEE8max_sizeEv
+FN:1075,_ZNKSt6vectorIiSaIiEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseIiSaIiEE11_M_allocateEj
+FN:147,_ZNSt12_Vector_baseIiSaIiEE13_M_deallocateEPij
+FN:686,_ZNSt6vectorIiSaIiEE9push_backERKi
+FN:135,_ZNSt12_Vector_baseIiSaIiEED2Ev
+FN:299,_ZNSt6vectorIiSaIiEED1Ev
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:377,0
+DA:378,0
+DA:395,0
+DA:396,0
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:43
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorIiSaIiEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPiS1_EERKi
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:286,0
+BA:286,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorIiE9constructEPiRKi
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorIiED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIiEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorIiE8max_sizeEv
+FN:87,_ZN9__gnu_cxx13new_allocatorIiE8allocateEjPKv
+FN:97,_ZN9__gnu_cxx13new_allocatorIiE10deallocateEPij
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+DA:105,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/buffer.h
+FN:51,_ZNK6wibble3sys6Buffer4Data3refEv
+FN:55,_ZNK6wibble3sys6Buffer4Data5unrefEv
+FN:73,_ZN6wibble3sys6BufferC1Ev
+FN:140,_ZN6wibble3sys6Buffer4dataEv
+FN:146,_ZNK6wibble3sys6Buffer4sizeEv
+FN:95,_ZN6wibble3sys6BufferC1EPvjb
+FN:124,_ZN6wibble3sys6BufferD1Ev
+FN:109,_ZN6wibble3sys6BufferC1EPKvj
+FN:149,_ZN6wibble3sys6Buffer6resizeEj
+FN:76,_ZN6wibble3sys6BufferC1Ej
+FN:167,_ZNK6wibble3sys6BuffereqERKS1_
+FN:176,_ZNK6wibble3sys6BufferneERKS1_
+FN:182,_ZNK6wibble3sys6BufferltERKS1_
+DA:51,0
+DA:55,0
+DA:73,3
+DA:76,2
+DA:78,2
+DA:80,2
+DA:81,2
+DA:83,2
+DA:95,1
+DA:97,1
+DA:99,1
+DA:100,1
+DA:102,1
+DA:109,2
+DA:111,2
+DA:113,2
+DA:114,2
+DA:116,2
+DA:124,8
+DA:126,8
+DA:127,5
+DA:128,8
+DA:140,0
+DA:146,0
+DA:149,1
+DA:151,1
+DA:152,0
+DA:153,1
+DA:155,0
+DA:156,0
+DA:157,0
+DA:158,1
+DA:159,1
+DA:161,0
+DA:162,0
+DA:167,10
+DA:169,10
+DA:170,2
+DA:171,8
+DA:172,2
+DA:173,6
+DA:176,3
+DA:178,3
+DA:182,8
+DA:184,8
+DA:185,2
+DA:186,6
+DA:187,1
+DA:188,5
+DA:189,1
+DA:190,4
+BA:78,2
+BA:78,1
+BA:97,2
+BA:97,1
+BA:111,2
+BA:111,1
+BA:126,2
+BA:126,2
+BA:126,2
+BA:126,1
+BA:126,2
+BA:126,2
+BA:127,2
+BA:127,1
+BA:140,0
+BA:140,0
+BA:146,0
+BA:146,0
+BA:151,2
+BA:151,1
+BA:153,1
+BA:153,2
+BA:155,0
+BA:155,0
+BA:155,0
+BA:155,0
+BA:155,0
+BA:155,0
+BA:156,0
+BA:156,0
+BA:158,2
+BA:158,1
+BA:169,2
+BA:169,2
+BA:169,2
+BA:169,1
+BA:171,2
+BA:171,1
+BA:171,2
+BA:171,2
+BA:184,2
+BA:184,2
+BA:184,2
+BA:184,2
+BA:186,2
+BA:186,2
+BA:188,2
+BA:188,2
+LF:51
+LH:41
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:52,_ZlsIPvER12AssertFailedS2_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:67,_Z12assert_eq_fnIjjEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnIPvS0_Ev8LocationT_T0_
+FN:59,_Z9assert_fnIbEv8LocationT_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:75,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+LF:26
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/buffer.test.h
+FN:80,_ZN10TestBuffer8takeoverEv
+FN:58,_ZN10TestBuffer4copyEv
+FN:67,_ZN10TestBuffer6resizeEv
+FN:26,_ZN10TestBuffer12nonemptinessEv
+FN:13,_ZN10TestBuffer9emptinessEv
+DA:13,1
+DA:14,1
+DA:15,1
+DA:16,2
+DA:19,1
+DA:20,2
+DA:21,2
+DA:22,2
+DA:23,2
+DA:24,1
+DA:26,1
+DA:28,1
+DA:29,1
+DA:30,1
+DA:31,2
+DA:34,1
+DA:35,1
+DA:36,1
+DA:37,2
+DA:38,2
+DA:39,2
+DA:40,2
+DA:41,2
+DA:43,1
+DA:44,2
+DA:45,2
+DA:46,2
+DA:47,2
+DA:50,1
+DA:51,2
+DA:52,2
+DA:53,2
+DA:54,2
+DA:55,1
+DA:58,1
+DA:59,1
+DA:60,1
+DA:62,1
+DA:63,2
+DA:64,1
+DA:67,1
+DA:68,1
+DA:69,1
+DA:71,1
+DA:72,2
+DA:74,1
+DA:75,1
+DA:76,2
+DA:77,1
+DA:80,1
+DA:81,1
+DA:82,1
+DA:83,1
+DA:85,1
+DA:86,2
+DA:87,1
+LF:56
+LH:56
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_sys_buffer.cpp
+FN:7,_Z41__static_initialization_and_destruction_0ii
+FN:7,_GLOBAL__I__Z20run_Buffer_emptinessv
+FN:7,_Z19run_Buffer_takeoverv
+FN:5,_Z15run_Buffer_copyv
+FN:6,_Z17run_Buffer_resizev
+FN:4,_Z23run_Buffer_nonemptinessv
+FN:3,_Z20run_Buffer_emptinessv
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,1
+DA:7,4
+BA:7,2
+BA:7,1
+BA:7,2
+BA:7,1
+LF:5
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:51
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:166,0
+DA:167,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+DA:69,0
+DA:71,0
+DA:76,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:195,_ZNSolsEj
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:229,_ZNSolsEPKv
+DA:95,0
+DA:112,0
+DA:117,0
+DA:195,0
+DA:199,0
+DA:229,0
+DA:230,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/empty.h
+FN:60,_ZNK6wibble5EmptyIiE4sizeEv
+FN:62,_ZN6wibble5EmptyIiE5beginEv
+FN:63,_ZN6wibble5EmptyIiE3endEv
+FN:55,_ZNK6wibble5EmptyIiE8iteratoreqERKS2_
+FN:56,_ZNK6wibble5EmptyIiE8iteratorneERKS2_
+DA:55,1
+DA:56,1
+DA:60,1
+DA:62,1
+DA:63,2
+LF:5
+LH:5
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:67,_Z12assert_eq_fnIjjEv8LocationT_T0_
+FN:59,_Z9assert_fnIbEv8LocationT_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:75,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+LF:26
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/empty.test.h
+FN:10,_ZN9TestEmpty5basicEv
+DA:10,1
+DA:13,1
+DA:15,1
+DA:16,2
+DA:17,2
+DA:18,1
+LF:6
+LH:6
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_empty.cpp
+FN:3,_Z41__static_initialization_and_destruction_0ii
+FN:3,_GLOBAL__I__Z15run_Empty_basicv
+FN:3,_Z15run_Empty_basicv
+DA:3,4
+BA:3,2
+BA:3,1
+BA:3,2
+BA:3,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:51
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:166,0
+DA:167,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+DA:69,0
+DA:71,0
+DA:76,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:195,_ZNSolsEj
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/commandline/core.h
+FN:21,_ZNK6wibble9exception9BadOption4typeEv
+FN:52,_ZN6wibble11commandline7ManagedC2Ev
+FN:30,_ZN6wibble11commandline7ArgListC1Ev
+FN:63,_ZN6wibble11commandline13MemoryManagerC1Ev
+FN:54,_ZN6wibble11commandline7ManagedD0Ev
+FN:54,_ZN6wibble11commandline7ManagedD1Ev
+FN:54,_ZN6wibble11commandline7ManagedD2Ev
+FN:68,_ZN6wibble11commandline13MemoryManagerD1Ev
+FN:22,_ZNK6wibble9exception9BadOption4descEv
+FN:66,_ZN6wibble11commandline13MemoryManager10addManagedEPNS0_7ManagedE
+FN:76,_ZN6wibble11commandline13MemoryManager3addINS0_12SingleOptionINS0_6StringEEEEEPT_S7_
+FN:76,_ZN6wibble11commandline13MemoryManager3addINS0_6EngineEEEPT_S5_
+FN:76,_ZN6wibble11commandline13MemoryManager3addINS0_11OptionGroupEEEPT_S5_
+FN:76,_ZN6wibble11commandline13MemoryManager3addINS0_10BoolOptionEEEPT_S5_
+FN:30,_ZN6wibble11commandline7ArgListD1Ev
+FN:34,_ZN6wibble11commandline7ArgList15eraseAndAdvanceERSt14_List_iteratorISsE
+FN:17,_ZN6wibble9exception9BadOptionC1ERKSsS3_
+FN:19,_ZN6wibble9exception9BadOptionD0Ev
+FN:19,_ZN6wibble9exception9BadOptionD1Ev
+DA:17,0
+DA:18,0
+DA:19,0
+DA:21,0
+DA:22,0
+DA:30,0
+DA:34,0
+DA:36,0
+DA:37,0
+DA:38,0
+DA:39,0
+DA:40,0
+DA:41,0
+DA:42,0
+DA:52,0
+DA:54,0
+DA:63,0
+DA:66,0
+DA:68,0
+DA:70,0
+DA:72,0
+DA:73,0
+DA:76,0
+BA:19,0
+BA:19,0
+BA:19,0
+BA:19,0
+BA:36,0
+BA:36,0
+BA:54,0
+BA:54,0
+BA:54,0
+BA:54,0
+BA:54,0
+BA:54,0
+BA:70,0
+BA:70,0
+BA:72,0
+BA:72,0
+LF:23
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/commandline/doc.h
+FN:21,_ZN6wibble11commandline8DocMakerC2ERKSsS3_
+FN:31,_ZN6wibble11commandline4HelpC1ERKSsS3_
+FN:15,_ZN6wibble11commandline8DocMakerD2Ev
+FN:26,_ZN6wibble11commandline4HelpD1Ev
+DA:15,1
+DA:21,1
+DA:22,1
+DA:26,1
+DA:31,1
+DA:32,1
+LF:6
+LH:6
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/commandline/engine.h
+FN:106,_ZNK6wibble11commandline6Engine4nameEv
+FN:150,_ZN6wibble11commandline6Engine11createGroupERKSs
+FN:160,_ZN6wibble11commandline6Engine8addGroupERKSs
+FN:101,_ZN6wibble11commandline6EngineC2EPNS0_13MemoryManagerERKSsS5_S5_S5_
+FN:39,_ZN6wibble11commandline6EngineD0Ev
+FN:39,_ZN6wibble11commandline6EngineD1Ev
+FN:39,_ZN6wibble11commandline6EngineD2Ev
+FN:101,_ZN6wibble11commandline6EngineC1EPNS0_13MemoryManagerERKSsS5_S5_S5_
+FN:171,_ZN6wibble11commandline6Engine12createEngineERKSsS3_S3_S3_
+FN:184,_ZN6wibble11commandline6Engine9addEngineERKSsS3_S3_S3_
+DA:39,0
+DA:101,0
+DA:103,0
+DA:106,1
+DA:150,0
+DA:152,0
+DA:153,0
+DA:154,0
+DA:160,0
+DA:162,0
+DA:171,0
+DA:173,0
+DA:174,0
+DA:175,0
+DA:184,0
+DA:186,0
+BA:39,0
+BA:39,0
+BA:39,0
+BA:39,0
+BA:39,0
+BA:39,0
+BA:153,0
+BA:153,0
+BA:174,0
+BA:174,0
+LF:16
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/commandline/options.h
+FN:135,_ZN6wibble11commandline10BoolOption5parseERNS0_7ArgListESt14_List_iteratorISsE
+FN:136,_ZN6wibble11commandline10BoolOption5parseERKSs
+FN:287,_ZN6wibble11commandline11OptionGroupC1EPNS0_13MemoryManagerERKSs
+FN:100,_ZN6wibble11commandline6Option8addAliasEc
+FN:291,_ZN6wibble11commandline11OptionGroup3addEPNS0_6OptionE
+FN:177,_ZN6wibble11commandline12SingleOptionINS0_6StringEE5parseERKSs
+FN:168,_ZN6wibble11commandline12SingleOptionINS0_6StringEE5parseERNS0_7ArgListESt14_List_iteratorISsE
+FN:64,_ZN6wibble11commandline6OptionC2ERKSscS3_S3_S3_
+FN:132,_ZN6wibble11commandline10BoolOptionC1ERKSscS3_S3_S3_
+FN:308,_ZN6wibble11commandline11OptionGroup6createINS0_10BoolOptionEEEPT_RKSscS7_S7_S7_
+FN:323,_ZN6wibble11commandline11OptionGroup3addINS0_10BoolOptionEEEPT_RKSscS7_S7_S7_
+FN:95,_ZN6wibble11commandline6OptionD0Ev
+FN:95,_ZN6wibble11commandline6OptionD1Ev
+FN:95,_ZN6wibble11commandline6OptionD2Ev
+FN:122,_ZN6wibble11commandline10BoolOptionD0Ev
+FN:122,_ZN6wibble11commandline10BoolOptionD1Ev
+FN:161,_ZN6wibble11commandline12SingleOptionINS0_6StringEEC1ERKSscS5_S5_S5_
+FN:308,_ZN6wibble11commandline11OptionGroup6createINS0_12SingleOptionINS0_6StringEEEEEPT_RKSscS9_S9_S9_
+FN:323,_ZN6wibble11commandline11OptionGroup3addINS0_12SingleOptionINS0_6StringEEEEEPT_RKSscS9_S9_S9_
+FN:148,_ZN6wibble11commandline12SingleOptionINS0_6StringEED0Ev
+FN:148,_ZN6wibble11commandline12SingleOptionINS0_6StringEED1Ev
+FN:283,_ZN6wibble11commandline11OptionGroupD0Ev
+FN:283,_ZN6wibble11commandline11OptionGroupD1Ev
+DA:64,0
+DA:65,0
+DA:67,0
+DA:68,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:95,0
+DA:100,1
+DA:122,0
+DA:132,0
+DA:133,0
+DA:135,0
+DA:136,0
+DA:148,0
+DA:161,0
+DA:162,0
+DA:164,0
+DA:165,0
+DA:166,0
+DA:168,0
+DA:170,0
+DA:171,0
+DA:172,0
+DA:173,0
+DA:175,0
+DA:177,0
+DA:179,0
+DA:180,0
+DA:181,0
+DA:283,0
+DA:287,0
+DA:288,0
+DA:291,0
+DA:308,0
+DA:310,0
+DA:311,0
+DA:312,0
+DA:323,0
+DA:325,0
+DA:326,0
+DA:327,0
+BA:67,0
+BA:67,0
+BA:69,0
+BA:69,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:122,0
+BA:122,0
+BA:122,0
+BA:122,0
+BA:148,0
+BA:148,0
+BA:148,0
+BA:148,0
+BA:164,0
+BA:164,0
+BA:170,0
+BA:170,0
+BA:283,0
+BA:283,0
+BA:283,0
+BA:283,0
+BA:311,0
+BA:311,0
+BA:311,0
+BA:311,0
+LF:42
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/commandline/parser.h
+FN:24,_ZN6wibble11commandline6ParserC2ERKSsS3_S3_S3_
+FN:14,_ZN6wibble11commandline6ParserD0Ev
+FN:14,_ZN6wibble11commandline6ParserD1Ev
+FN:14,_ZN6wibble11commandline6ParserD2Ev
+FN:58,_ZN6wibble11commandline14StandardParserD0Ev
+FN:58,_ZN6wibble11commandline14StandardParserD1Ev
+FN:63,_ZN6wibble11commandline14StandardParserC2ERKSsS3_
+FN:58,_ZN6wibble11commandline14StandardParserD2Ev
+FN:98,_ZN6wibble11commandline25StandardParserWithManpageC2ERKSsS3_iS3_
+FN:88,_ZN6wibble11commandline25StandardParserWithManpageD0Ev
+FN:88,_ZN6wibble11commandline25StandardParserWithManpageD1Ev
+FN:88,_ZN6wibble11commandline25StandardParserWithManpageD2Ev
+FN:116,_ZN6wibble11commandline34StandardParserWithMandatoryCommandD0Ev
+FN:116,_ZN6wibble11commandline34StandardParserWithMandatoryCommandD1Ev
+FN:122,_ZN6wibble11commandline34StandardParserWithMandatoryCommandC1ERKSsS3_iS3_
+DA:14,1
+DA:24,1
+DA:25,1
+DA:58,1
+DA:63,1
+DA:64,1
+DA:66,1
+DA:68,2
+DA:69,1
+DA:71,1
+DA:72,1
+DA:88,1
+DA:98,1
+DA:100,1
+DA:103,1
+DA:104,1
+DA:116,1
+DA:122,1
+DA:123,1
+DA:128,1
+DA:129,1
+BA:14,0
+BA:14,0
+BA:14,0
+BA:14,0
+BA:14,1
+BA:14,2
+BA:58,0
+BA:58,0
+BA:58,0
+BA:58,0
+BA:58,1
+BA:58,2
+BA:88,0
+BA:88,0
+BA:88,0
+BA:88,0
+BA:88,1
+BA:88,2
+BA:116,0
+BA:116,0
+BA:116,1
+BA:116,2
+LF:21
+LH:21
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:263,_ZNK6wibble9exception11Consistency4typeEv
+FN:109,_ZN6wibble9exception10AddContext7contextEv
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:265,_ZNK6wibble9exception11Consistency4descEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:117,_ZN6wibble9exception10AddContext11copyContextISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvT_
+FN:153,_ZN6wibble9exception7Context10addContextERKSs
+FN:147,_ZN6wibble9exception7ContextC2ERKSs
+FN:186,_ZN6wibble9exception7GenericC2ERKSs
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:259,_ZN6wibble9exception11ConsistencyC2ERKSsS3_
+FN:261,_ZN6wibble9exception11ConsistencyD0Ev
+FN:261,_ZN6wibble9exception11ConsistencyD1Ev
+FN:261,_ZN6wibble9exception11ConsistencyD2Ev
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+DA:109,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:113,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:137,0
+DA:147,0
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:186,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:259,0
+DA:260,0
+DA:261,0
+DA:263,0
+DA:265,0
+DA:266,0
+DA:267,0
+DA:268,0
+DA:269,0
+BA:110,0
+BA:110,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:267,0
+BA:267,0
+LF:44
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/commandline/doc.test.h
+FN:14,_ZN18TestCommandlineDoc5basicEv
+DA:14,1
+DA:15,1
+DA:21,2
+DA:22,1
+DA:23,2
+DA:25,2
+DA:27,2
+DA:32,1
+LF:8
+LH:8
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_commandline_doc.cpp
+FN:3,_Z41__static_initialization_and_destruction_0ii
+FN:3,_GLOBAL__I__Z24run_CommandlineDoc_basicv
+FN:3,_Z24run_CommandlineDoc_basicv
+DA:3,4
+BA:3,2
+BA:3,1
+BA:3,2
+BA:3,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC2Ev
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeIPN6wibble11commandline7ManagedEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKcPN6wibble11commandline6OptionEEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6OptionEEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6EngineEEEED2Ev
+FN:106,_ZNSaISt10_List_nodeISsEED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:106,_ZNSaISsED1Ev
+FN:106,_ZNSaIPN6wibble11commandline6OptionEED2Ev
+FN:106,_ZNSaIPN6wibble11commandline11OptionGroupEED2Ev
+FN:106,_ZNSaIPN6wibble11commandline6EngineEED2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:104,_ZNSaISsEC1ISt10_List_nodeISsEEERKSaIT_E
+FN:106,_ZNSaIPN6wibble11commandline7ManagedEED1Ev
+FN:98,_ZNSaIPN6wibble11commandline6OptionEEC2Ev
+FN:98,_ZNSaIPN6wibble11commandline11OptionGroupEEC2Ev
+FN:98,_ZNSaIPN6wibble11commandline6EngineEEC2Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKcPN6wibble11commandline6OptionEEEEC2Ev
+FN:106,_ZNSaISt4pairIKcPN6wibble11commandline6OptionEEED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6OptionEEEEC2Ev
+FN:106,_ZNSaISt4pairIKSsPN6wibble11commandline6OptionEEED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6EngineEEEEC2Ev
+FN:106,_ZNSaISt4pairIKSsPN6wibble11commandline6EngineEEED1Ev
+FN:98,_ZNSaISt10_List_nodeISsEEC2Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeIPN6wibble11commandline7ManagedEEEC2Ev
+FN:104,_ZNSaIPN6wibble11commandline7ManagedEEC1ISt13_Rb_tree_nodeIS2_EEERKSaIT_E
+FN:104,_ZNSaISt4pairIKcPN6wibble11commandline6OptionEEEC1ISt13_Rb_tree_nodeIS5_EEERKSaIT_E
+FN:104,_ZNSaISt4pairIKSsPN6wibble11commandline6OptionEEEC1ISt13_Rb_tree_nodeIS5_EEERKSaIT_E
+FN:104,_ZNSaISt4pairIKSsPN6wibble11commandline6EngineEEEC1ISt13_Rb_tree_nodeIS5_EEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:104,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:7
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:276,0
+BA:276,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:835,_ZNSs6appendEPKc
+FN:501,_ZNSsaSERKSs
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:928,_ZNSs6assignEPKc
+FN:509,_ZNSsaSEPKc
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:509,0
+DA:510,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:928,0
+DA:931,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:71
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+FN:668,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+DA:668,1
+DA:673,1
+DA:674,1
+DA:675,1
+DA:676,1
+DA:677,1
+DA:678,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:23
+LH:6
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,1
+DA:262,1
+DA:273,0
+DA:274,0
+LF:6
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/list.tcc
+FN:70,_ZNSt10_List_baseISsSaISsEE8_M_clearEv
+FN:109,_ZNSt4listISsSaISsEE5eraseESt14_List_iteratorISsE
+DA:70,0
+DA:73,0
+DA:74,0
+DA:76,0
+DA:77,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:109,0
+DA:111,0
+DA:112,0
+BA:74,0
+BA:74,0
+LF:11
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:286,_ZNSt12__miter_baseIPcLb0EE3__bES0_
+FN:286,_ZNSt12__miter_baseIPPN6wibble11commandline6OptionELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:268,_ZNSt12__niter_baseIPcLb0EE3__bES0_
+FN:268,_ZNSt12__niter_baseIPPN6wibble11commandline6OptionELb0EE3__bES4_
+FN:569,_ZNSt20__copy_move_backwardILb0ELb1ESt26random_access_iterator_tagE13__copy_move_bIcEEPT_PKS3_S6_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPcS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPcS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPcS0_ET0_T_S2_S1_
+FN:375,_ZNSt11__copy_moveILb0ELb1ESt26random_access_iterator_tagE8__copy_mIcEEPT_PKS3_S6_S4_
+FN:385,_ZSt13__copy_move_aILb0EPcS0_ET1_T0_S2_S1_
+FN:430,_ZSt14__copy_move_a2ILb0EPcS0_ET1_T0_S2_S1_
+FN:456,_ZSt4copyIPcS0_ET0_T_S2_S1_
+FN:569,_ZNSt20__copy_move_backwardILb0ELb1ESt26random_access_iterator_tagE13__copy_move_bIPN6wibble11commandline6OptionEEEPT_PKS7_SA_S8_
+FN:579,_ZSt22__copy_move_backward_aILb0EPPN6wibble11commandline6OptionES4_ET1_T0_S6_S5_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPPN6wibble11commandline6OptionES4_ET1_T0_S6_S5_
+FN:624,_ZSt13copy_backwardIPPN6wibble11commandline6OptionES4_ET0_T_S6_S5_
+FN:375,_ZNSt11__copy_moveILb0ELb1ESt26random_access_iterator_tagE8__copy_mIPN6wibble11commandline6OptionEEEPT_PKS7_SA_S8_
+FN:385,_ZSt13__copy_move_aILb0EPPN6wibble11commandline6OptionES4_ET1_T0_S6_S5_
+FN:430,_ZSt14__copy_move_a2ILb0EPPN6wibble11commandline6OptionES4_ET1_T0_S6_S5_
+FN:456,_ZSt4copyIPPN6wibble11commandline6OptionES4_ET0_T_S6_S5_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET0_T_SA_S9_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:375,0
+DA:377,0
+DA:379,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:569,0
+DA:571,0
+DA:572,0
+DA:573,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+LF:41
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:97,_ZSt8_DestroyIPcEvT_S1_
+FN:126,_ZSt8_DestroyIPccEvT_S1_RSaIT0_E
+FN:97,_ZSt8_DestroyIPPN6wibble11commandline6OptionEEvT_S5_
+FN:126,_ZSt8_DestroyIPPN6wibble11commandline6OptionES3_EvT_S5_RSaIT0_E
+FN:97,_ZSt8_DestroyIPPN6wibble11commandline11OptionGroupEEvT_S5_
+FN:126,_ZSt8_DestroyIPPN6wibble11commandline11OptionGroupES3_EvT_S5_RSaIT0_E
+FN:97,_ZSt8_DestroyIPPN6wibble11commandline6EngineEEvT_S5_
+FN:126,_ZSt8_DestroyIPPN6wibble11commandline6EngineES3_EvT_S5_RSaIT0_E
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:469,_ZNKSt9_IdentityIPN6wibble11commandline7ManagedEEclERKS3_
+FN:229,_ZNKSt4lessIPN6wibble11commandline7ManagedEEclERKS3_S6_
+DA:229,0
+DA:230,0
+DA:469,0
+DA:470,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPcSt6vectorIcSaIcEEE4baseEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPcSt6vectorIcSaIcEEEdeEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPcSt6vectorIcSaIcEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPPN6wibble11commandline6OptionESt6vectorIS4_SaIS4_EEE4baseEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPPN6wibble11commandline6OptionESt6vectorIS4_SaIS4_EEEdeEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPPN6wibble11commandline6OptionESt6vectorIS4_SaIS4_EEEC1ERKS5_
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:683,0
+DA:695,0
+DA:696,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+LF:17
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_list.h
+FN:169,_ZNKSt14_List_iteratorISsEeqERKS0_
+FN:139,_ZNSt14_List_iteratorISsEppEv
+FN:131,_ZNKSt14_List_iteratorISsEdeEv
+FN:126,_ZNSt14_List_iteratorISsEC1EPSt15_List_node_base
+FN:666,_ZNSt4listISsSaISsEE3endEv
+FN:364,_ZNSt10_List_baseISsSaISsEE7_M_initEv
+FN:298,_ZNSt10_List_baseISsSaISsEE10_List_implD1Ev
+FN:328,_ZNKSt10_List_baseISsSaISsEE21_M_get_Node_allocatorEv
+FN:332,_ZNKSt10_List_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:301,_ZNSt10_List_baseISsSaISsEE10_List_implC1Ev
+FN:339,_ZNSt10_List_baseISsSaISsEEC2Ev
+FN:498,_ZNSt4listISsSaISsEEC2Ev
+FN:317,_ZNSt10_List_baseISsSaISsEE11_M_put_nodeEPSt10_List_nodeISsE
+FN:357,_ZNSt10_List_baseISsSaISsEED2Ev
+FN:417,_ZNSt4listISsSaISsEED2Ev
+FN:1356,_ZNSt4listISsSaISsEE8_M_eraseESt14_List_iteratorISsE
+DA:126,0
+DA:127,0
+DA:131,0
+DA:132,0
+DA:139,0
+DA:141,0
+DA:142,0
+DA:169,0
+DA:170,0
+DA:298,0
+DA:301,0
+DA:302,0
+DA:303,0
+DA:317,0
+DA:318,0
+DA:328,0
+DA:329,0
+DA:332,0
+DA:333,0
+DA:339,0
+DA:340,0
+DA:341,0
+DA:357,0
+DA:358,0
+DA:364,0
+DA:366,0
+DA:367,0
+DA:368,0
+DA:417,0
+DA:498,0
+DA:499,0
+DA:666,0
+DA:667,0
+DA:1356,0
+DA:1358,0
+DA:1359,0
+DA:1360,0
+DA:1361,0
+DA:1362,0
+LF:39
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_map.h
+FN:155,_ZNSt3mapIcPN6wibble11commandline6OptionESt4lessIcESaISt4pairIKcS3_EEEC1Ev
+FN:155,_ZNSt3mapISsPN6wibble11commandline6OptionESt4lessISsESaISt4pairIKSsS3_EEEC1Ev
+FN:155,_ZNSt3mapISsPN6wibble11commandline6EngineESt4lessISsESaISt4pairIKSsS3_EEEC1Ev
+FN:92,_ZNSt3mapIcPN6wibble11commandline6OptionESt4lessIcESaISt4pairIKcS3_EEED1Ev
+FN:92,_ZNSt3mapISsPN6wibble11commandline6EngineESt4lessISsESaISt4pairIKSsS3_EEED1Ev
+FN:92,_ZNSt3mapISsPN6wibble11commandline6OptionESt4lessISsESaISt4pairIKSsS3_EEED1Ev
+DA:92,0
+DA:155,0
+DA:156,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorIPN6wibble11commandline7ManagedEEbEC1ERKS5_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIPN6wibble11commandline7ManagedEEbEC1ERKS5_RKb
+FN:73,_ZNSt4pairIKcPN6wibble11commandline6OptionEED1Ev
+FN:73,_ZNSt4pairIKSsPN6wibble11commandline6EngineEED1Ev
+FN:73,_ZNSt4pairIKSsPN6wibble11commandline6OptionEED1Ev
+DA:73,0
+DA:88,0
+DA:89,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:261,_ZNKSt3setIPN6wibble11commandline7ManagedESt4lessIS3_ESaIS3_EE5beginEv
+FN:270,_ZNKSt3setIPN6wibble11commandline7ManagedESt4lessIS3_ESaIS3_EE3endEv
+FN:141,_ZNSt3setIPN6wibble11commandline7ManagedESt4lessIS3_ESaIS3_EEC1Ev
+FN:93,_ZNSt3setIPN6wibble11commandline7ManagedESt4lessIS3_ESaIS3_EED1Ev
+FN:378,_ZNSt3setIPN6wibble11commandline7ManagedESt4lessIS3_ESaIS3_EE6insertERKS3_
+DA:93,0
+DA:141,0
+DA:142,0
+DA:261,0
+DA:262,0
+DA:270,0
+DA:271,0
+DA:378,0
+DA:381,0
+DA:382,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:289,_ZNKSt23_Rb_tree_const_iteratorIPN6wibble11commandline7ManagedEEneERKS4_
+FN:247,_ZNKSt23_Rb_tree_const_iteratorIPN6wibble11commandline7ManagedEEdeEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorIPN6wibble11commandline7ManagedEEC1ERKSt17_Rb_tree_iteratorIS3_E
+FN:452,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_beginEv
+FN:463,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE6_M_endEv
+FN:487,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:168,_ZNSt17_Rb_tree_iteratorIPN6wibble11commandline7ManagedEEC1EPSt13_Rb_tree_nodeIS3_E
+FN:596,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorIPN6wibble11commandline7ManagedEEeqERKS4_
+FN:398,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE13_Rb_tree_implIS7_Lb0EED1Ev
+FN:240,_ZNSt23_Rb_tree_const_iteratorIPN6wibble11commandline7ManagedEEC1EPKSt13_Rb_tree_nodeIS3_E
+FN:603,_ZNKSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE5beginEv
+FN:614,_ZNKSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE3endEv
+FN:398,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE13_Rb_tree_implISA_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE8_S_valueEPKSt13_Rb_tree_nodeIS3_E
+FN:475,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE6_S_keyEPKSt13_Rb_tree_nodeIS3_E
+FN:495,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:415,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE13_Rb_tree_implISA_Lb0EE13_M_initializeEv
+FN:415,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EE13_M_initializeEv
+FN:415,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EE13_M_initializeEv
+FN:415,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE13_Rb_tree_implIS7_Lb0EE13_M_initializeEv
+FN:347,_ZNKSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE21_M_get_Node_allocatorEv
+FN:403,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE13_Rb_tree_implISA_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EEC1Ev
+FN:347,_ZNKSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE21_M_get_Node_allocatorEv
+FN:403,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EEC1Ev
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE21_M_get_Node_allocatorEv
+FN:403,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EEC1Ev
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE21_M_get_Node_allocatorEv
+FN:403,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE13_Rb_tree_implIS7_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EEC1Ev
+FN:351,_ZNKSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13get_allocatorEv
+FN:360,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS3_E
+FN:388,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS3_E
+FN:936,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE8_M_eraseEPSt13_Rb_tree_nodeIS3_E
+FN:584,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EED1Ev
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:360,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:388,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:936,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE8_M_eraseEPSt13_Rb_tree_nodeIS6_E
+FN:584,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EED1Ev
+FN:255,_ZNSt23_Rb_tree_const_iteratorIPN6wibble11commandline7ManagedEEppEv
+FN:356,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE14_M_create_nodeERKS3_
+FN:195,_ZNSt17_Rb_tree_iteratorIPN6wibble11commandline7ManagedEEmmEv
+FN:846,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE10_M_insert_EPKSt18_Rb_tree_node_baseSC_RKS3_
+FN:1133,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE16_M_insert_uniqueERKS3_
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_eraseEPSt13_Rb_tree_nodeIS6_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EED1Ev
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_eraseEPSt13_Rb_tree_nodeIS6_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EED1Ev
+DA:168,0
+DA:169,0
+DA:195,0
+DA:197,0
+DA:198,0
+DA:210,0
+DA:211,0
+DA:240,0
+DA:241,0
+DA:243,0
+DA:244,0
+DA:247,0
+DA:248,0
+DA:255,0
+DA:257,0
+DA:258,0
+DA:289,0
+DA:290,0
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:356,0
+DA:357,0
+DA:360,0
+DA:361,0
+DA:364,0
+DA:366,0
+DA:368,0
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,0
+DA:388,0
+DA:390,0
+DA:391,0
+DA:392,0
+DA:398,0
+DA:403,0
+DA:405,0
+DA:406,0
+DA:415,0
+DA:417,0
+DA:418,0
+DA:419,0
+DA:420,0
+DA:421,0
+DA:452,0
+DA:453,0
+DA:463,0
+DA:464,0
+DA:471,0
+DA:472,0
+DA:475,0
+DA:476,0
+DA:479,0
+DA:480,0
+DA:487,0
+DA:488,0
+DA:495,0
+DA:496,0
+DA:499,0
+DA:500,0
+DA:562,0
+DA:584,0
+DA:585,0
+DA:596,0
+DA:599,0
+DA:603,0
+DA:606,0
+DA:614,0
+DA:617,0
+DA:846,0
+DA:850,0
+DA:852,0
+DA:854,0
+DA:857,0
+DA:858,0
+DA:936,0
+DA:939,0
+DA:941,0
+DA:942,0
+DA:943,0
+DA:944,0
+DA:946,0
+DA:1133,0
+DA:1135,0
+DA:1136,0
+DA:1137,0
+DA:1138,0
+DA:1140,0
+DA:1141,0
+DA:1142,0
+DA:1144,0
+DA:1145,0
+DA:1147,0
+DA:1148,0
+DA:1150,0
+DA:1152,0
+DA:1153,0
+DA:1154,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:1138,0
+BA:1138,0
+BA:1142,0
+BA:1142,0
+BA:1145,0
+BA:1145,0
+BA:1147,0
+BA:1147,0
+BA:1152,0
+BA:1152,0
+LF:101
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:97,_ZNSt20__uninitialized_copyILb1EE18uninitialized_copyIPcS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPcS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPcS0_cET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPcS0_SaIcEET0_T_S3_S2_RT1_
+FN:97,_ZNSt20__uninitialized_copyILb1EE18uninitialized_copyIPPN6wibble11commandline6OptionES6_EET0_T_S8_S7_
+FN:113,_ZSt18uninitialized_copyIPPN6wibble11commandline6OptionES4_ET0_T_S6_S5_
+FN:261,_ZSt22__uninitialized_copy_aIPPN6wibble11commandline6OptionES4_S3_ET0_T_S6_S5_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPPN6wibble11commandline6OptionES4_SaIS3_EET0_T_S7_S6_RT1_
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:79,_ZNSt12_Vector_baseIcSaIcEE12_Vector_implD1Ev
+FN:97,_ZNSt12_Vector_baseIcSaIcEE19_M_get_Tp_allocatorEv
+FN:97,_ZNSt12_Vector_baseIPN6wibble11commandline6OptionESaIS3_EE19_M_get_Tp_allocatorEv
+FN:97,_ZNSt12_Vector_baseIPN6wibble11commandline11OptionGroupESaIS3_EE19_M_get_Tp_allocatorEv
+FN:97,_ZNSt12_Vector_baseIPN6wibble11commandline6EngineESaIS3_EE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:84,_ZNSt12_Vector_baseIcSaIcEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIcSaIcEEC2Ev
+FN:213,_ZNSt6vectorIcSaIcEEC1Ev
+FN:395,_ZNSt6vectorIcSaIcEE3endEv
+FN:395,_ZNSt6vectorIPN6wibble11commandline6OptionESaIS3_EE3endEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:484,_ZNKSt6vectorIcSaIcEE4sizeEv
+FN:79,_ZNSt12_Vector_baseIPN6wibble11commandline6OptionESaIS3_EE12_Vector_implD1Ev
+FN:484,_ZNKSt6vectorIPN6wibble11commandline6OptionESaIS3_EE4sizeEv
+FN:79,_ZNSt12_Vector_baseIPN6wibble11commandline11OptionGroupESaIS3_EE12_Vector_implD1Ev
+FN:79,_ZNSt12_Vector_baseIPN6wibble11commandline6EngineESaIS3_EE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:101,_ZNKSt12_Vector_baseIcSaIcEE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorIcSaIcEE8max_sizeEv
+FN:84,_ZNSt12_Vector_baseIPN6wibble11commandline6OptionESaIS3_EE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIPN6wibble11commandline6OptionESaIS3_EEC2Ev
+FN:213,_ZNSt6vectorIPN6wibble11commandline6OptionESaIS3_EEC1Ev
+FN:101,_ZNKSt12_Vector_baseIPN6wibble11commandline6OptionESaIS3_EE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorIPN6wibble11commandline6OptionESaIS3_EE8max_sizeEv
+FN:84,_ZNSt12_Vector_baseIPN6wibble11commandline11OptionGroupESaIS3_EE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIPN6wibble11commandline11OptionGroupESaIS3_EEC2Ev
+FN:213,_ZNSt6vectorIPN6wibble11commandline11OptionGroupESaIS3_EEC1Ev
+FN:84,_ZNSt12_Vector_baseIPN6wibble11commandline6EngineESaIS3_EE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIPN6wibble11commandline6EngineESaIS3_EEC2Ev
+FN:213,_ZNSt6vectorIPN6wibble11commandline6EngineESaIS3_EEC1Ev
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:147,_ZNSt12_Vector_baseIPN6wibble11commandline6EngineESaIS3_EE13_M_deallocateEPS3_j
+FN:135,_ZNSt12_Vector_baseIPN6wibble11commandline6EngineESaIS3_EED2Ev
+FN:299,_ZNSt6vectorIPN6wibble11commandline6EngineESaIS3_EED1Ev
+FN:147,_ZNSt12_Vector_baseIPN6wibble11commandline6OptionESaIS3_EE13_M_deallocateEPS3_j
+FN:135,_ZNSt12_Vector_baseIPN6wibble11commandline6OptionESaIS3_EED2Ev
+FN:299,_ZNSt6vectorIPN6wibble11commandline6OptionESaIS3_EED1Ev
+FN:147,_ZNSt12_Vector_baseIPN6wibble11commandline11OptionGroupESaIS3_EE13_M_deallocateEPS3_j
+FN:135,_ZNSt12_Vector_baseIPN6wibble11commandline11OptionGroupESaIS3_EED2Ev
+FN:299,_ZNSt6vectorIPN6wibble11commandline11OptionGroupESaIS3_EED1Ev
+FN:147,_ZNSt12_Vector_baseIcSaIcEE13_M_deallocateEPcj
+FN:135,_ZNSt12_Vector_baseIcSaIcEED2Ev
+FN:299,_ZNSt6vectorIcSaIcEED1Ev
+FN:1075,_ZNKSt6vectorIcSaIcEE12_M_check_lenEjPKc
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:1075,_ZNKSt6vectorIPN6wibble11commandline6OptionESaIS3_EE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseIcSaIcEE11_M_allocateEj
+FN:686,_ZNSt6vectorIcSaIcEE9push_backERKc
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:143,_ZNSt12_Vector_baseIPN6wibble11commandline6OptionESaIS3_EE11_M_allocateEj
+FN:686,_ZNSt6vectorIPN6wibble11commandline6OptionESaIS3_EE9push_backERKS3_
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:377,0
+DA:378,0
+DA:386,0
+DA:387,0
+DA:395,0
+DA:396,0
+DA:404,0
+DA:405,0
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:526,0
+DA:527,0
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:144,0
+BA:144,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:688,0
+BA:688,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1077,0
+BA:1077,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:49
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorIcSaIcEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPcS1_EERKc
+FN:283,_ZNSt6vectorIPN6wibble11commandline6OptionESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:286,0
+BA:286,0
+BA:286,0
+BA:286,0
+BA:286,0
+BA:286,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/exception
+FN:59,_ZNSt9exceptionC2Ev
+DA:59,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorIcE9constructEPcRKc
+FN:107,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline6OptionEE9constructEPS4_RKS4_
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIPN6wibble11commandline7ManagedEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKcPN6wibble11commandline6OptionEEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6OptionEEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6EngineEEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt10_List_nodeISsEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:118,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline7ManagedEE7destroyEPS4_
+FN:76,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline6OptionEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline11OptionGroupEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline6EngineEED2Ev
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKcPN6wibble11commandline6OptionEEE7destroyEPS7_
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:107,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline7ManagedEE9constructEPS4_RKS4_
+FN:76,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline7ManagedEED2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorIcE8max_sizeEv
+FN:69,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline6OptionEEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorIPN6wibble11commandline6OptionEE8max_sizeEv
+FN:69,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline11OptionGroupEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline6EngineEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKcPN6wibble11commandline6OptionEEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKcPN6wibble11commandline6OptionEEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6OptionEEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsPN6wibble11commandline6OptionEEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6EngineEEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsPN6wibble11commandline6EngineEEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt10_List_nodeISsEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIPN6wibble11commandline7ManagedEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline7ManagedEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKcPN6wibble11commandline6OptionEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsPN6wibble11commandline6OptionEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsPN6wibble11commandline6EngineEEEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIPN6wibble11commandline7ManagedEEE8max_sizeEv
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIPN6wibble11commandline7ManagedEEE10deallocateEPS6_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6EngineEEEE10deallocateEPS9_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6OptionEEEE10deallocateEPS9_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKcPN6wibble11commandline6OptionEEEE10deallocateEPS9_j
+FN:97,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline6EngineEE10deallocateEPS4_j
+FN:97,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline6OptionEE10deallocateEPS4_j
+FN:97,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline11OptionGroupEE10deallocateEPS4_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt10_List_nodeISsEE10deallocateEPS2_j
+FN:97,_ZN9__gnu_cxx13new_allocatorIcE10deallocateEPcj
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorIcE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIPN6wibble11commandline7ManagedEEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline6OptionEE8allocateEjPKv
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsPN6wibble11commandline6EngineEEE7destroyEPS7_
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsPN6wibble11commandline6OptionEEE7destroyEPS7_
+FN:118,_ZN9__gnu_cxx13new_allocatorISsE7destroyEPSs
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+DA:118,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+DA:95,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/operators.h
+FN:109,_ZN6wibble9operatorsoRIiEERSt3setIT_St4lessIS3_ESaIS3_EES8_RKNS_5EmptyIS3_EE
+FN:177,_ZN6wibble9operatorsmIIiEERSt3setIT_St4lessIS3_ESaIS3_EES8_RKNS_5EmptyIS3_EE
+FN:123,_ZN6wibble9operatorsoRIiNS_9SingletonIiEEEERSt3setIT_St4lessIS5_ESaIS5_EESA_RKT0_
+FN:115,_ZN6wibble9operatorsoRIiEERSt3setIT_St4lessIS3_ESaIS3_EES8_RKS3_
+FN:225,_ZN6wibble9operatorsleIiEEbRKSt3setIT_St4lessIS3_ESaIS3_EES9_
+FN:36,_ZN6wibble9operatorsanIiEESt3setIT_St4lessIS3_ESaIS3_EERKS7_S9_
+FN:74,_ZN6wibble9operatorsorIiEESt3setIT_St4lessIS3_ESaIS3_EERKS7_S9_
+FN:82,_ZN6wibble9operatorsmiIiEESt3setIT_St4lessIS3_ESaIS3_EERKS7_S9_
+FN:133,_ZN6wibble9operatorsoRIiEERSt3setIT_St4lessIS3_ESaIS3_EES8_RKS7_
+FN:62,_ZN6wibble9operatorsorIiEESt3setIT_St4lessIS3_ESaIS3_EERKS7_RKNS_5EmptyIS3_EE
+FN:67,_ZN6wibble9operatorsorIiEESt3setIT_St4lessIS3_ESaIS3_EERKS7_RKNS_9SingletonIS3_EE
+FN:104,_ZN6wibble9operatorsmiIiEESt3setIT_St4lessIS3_ESaIS3_EERKS7_RKNS_5EmptyIS3_EE
+FN:145,_ZN6wibble9operatorsaNIiSt3setIiSt4lessIiESaIiEEEERS2_IT_S3_IS7_ESaIS7_EESB_RKT0_
+FN:198,_ZN6wibble9operatorsmIIiSt3setIiSt4lessIiESaIiEEEERS2_IT_S3_IS7_ESaIS7_EESB_RKT0_
+FN:97,_ZN6wibble9operatorsmiIiEESt3setIT_St4lessIS3_ESaIS3_EERKS7_RKNS_9SingletonIS3_EE
+FN:190,_ZN6wibble9operatorsmIIiEERSt3setIT_St4lessIS3_ESaIS3_EES8_RKNS_9SingletonIS3_EE
+DA:36,2
+DA:37,2
+DA:38,2
+DA:40,0
+DA:62,1
+DA:63,1
+DA:67,1
+DA:68,1
+DA:69,1
+DA:70,0
+DA:74,1
+DA:75,1
+DA:76,1
+DA:78,0
+DA:82,1
+DA:83,1
+DA:84,1
+DA:86,0
+DA:97,1
+DA:98,1
+DA:99,1
+DA:100,0
+DA:104,1
+DA:105,1
+DA:109,1
+DA:111,1
+DA:115,1
+DA:117,1
+DA:118,1
+DA:123,1
+DA:125,2
+DA:127,1
+DA:128,1
+DA:133,1
+DA:134,1
+DA:135,0
+DA:137,3
+DA:139,2
+DA:140,1
+DA:145,2
+DA:147,2
+DA:149,0
+DA:150,0
+DA:153,2
+DA:154,2
+DA:155,9
+DA:157,5
+DA:159,1
+DA:161,4
+DA:163,1
+DA:164,1
+DA:165,1
+DA:169,3
+DA:170,3
+DA:173,2
+DA:177,1
+DA:179,1
+DA:190,1
+DA:192,1
+DA:193,1
+DA:198,1
+DA:200,1
+DA:201,1
+DA:202,5
+DA:204,3
+DA:206,2
+DA:207,2
+DA:208,2
+DA:209,2
+DA:211,1
+DA:212,1
+DA:214,0
+DA:216,1
+DA:225,2
+DA:226,2
+DA:228,2
+DA:229,0
+DA:230,0
+DA:231,0
+DA:232,0
+DA:233,0
+DA:234,0
+DA:236,2
+BA:125,2
+BA:125,2
+BA:134,1
+BA:134,2
+BA:137,2
+BA:137,2
+BA:147,1
+BA:147,2
+BA:155,2
+BA:155,2
+BA:157,2
+BA:157,2
+BA:157,2
+BA:157,2
+BA:157,2
+BA:157,2
+BA:161,2
+BA:161,2
+BA:161,1
+BA:161,2
+BA:161,2
+BA:161,2
+BA:202,2
+BA:202,2
+BA:202,2
+BA:202,1
+BA:202,2
+BA:202,2
+BA:204,2
+BA:204,2
+BA:211,2
+BA:211,1
+BA:228,1
+BA:228,2
+BA:229,0
+BA:229,0
+BA:231,0
+BA:231,0
+BA:233,0
+BA:233,0
+LF:83
+LH:68
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/singleton.h
+FN:80,_ZN6wibble9SingletonIiEC1ERKi
+FN:52,_ZNK6wibble9SingletonIiE14const_iteratordeEv
+FN:56,_ZNK6wibble9SingletonIiE14const_iteratorneERKS2_
+FN:54,_ZN6wibble9SingletonIiE14const_iteratorppEv
+FN:47,_ZN6wibble9SingletonIiE14const_iteratorC1EPKi
+FN:87,_ZNK6wibble9SingletonIiE5beginEv
+FN:50,_ZN6wibble9SingletonIiE14const_iteratorC1Ev
+FN:88,_ZNK6wibble9SingletonIiE3endEv
+DA:47,4
+DA:50,2
+DA:52,4
+DA:54,1
+DA:56,2
+DA:80,0
+DA:87,4
+DA:88,2
+LF:8
+LH:7
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:17,_ZN8LocationC1EPKciSs
+FN:13,_ZN8LocationC1ERKS_
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:67,_Z12assert_eq_fnIjjEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:75,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+LF:26
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/operators.test.h
+FN:16,_ZN12_GLOBAL__N_1L5mksetEii
+FN:12,_ZN12_GLOBAL__N_1L5mksetEi
+FN:117,_ZN12_GLOBAL__N_113TestOperators23mutatingIntersectionBugEv
+FN:111,_ZN12_GLOBAL__N_113TestOperators17emptySetInclusionEv
+FN:77,_ZN12_GLOBAL__N_113TestOperators26specialContainerOperationsEv
+FN:50,_ZN12_GLOBAL__N_113TestOperators21mutatingSetOperationsEv
+FN:33,_ZN12_GLOBAL__N_113TestOperators19binarySetOperationsEv
+DA:12,4
+DA:14,4
+DA:16,3
+DA:18,3
+DA:33,1
+DA:34,1
+DA:35,1
+DA:36,1
+DA:37,1
+DA:38,2
+DA:39,2
+DA:40,2
+DA:41,1
+DA:42,2
+DA:43,2
+DA:44,2
+DA:45,1
+DA:46,2
+DA:47,2
+DA:48,1
+DA:50,1
+DA:51,1
+DA:52,1
+DA:53,1
+DA:54,1
+DA:55,2
+DA:56,2
+DA:57,2
+DA:58,2
+DA:59,1
+DA:60,1
+DA:61,2
+DA:62,2
+DA:63,2
+DA:64,1
+DA:65,1
+DA:66,2
+DA:67,2
+DA:68,2
+DA:69,2
+DA:70,1
+DA:71,1
+DA:72,2
+DA:73,2
+DA:74,2
+DA:75,1
+DA:77,1
+DA:78,1
+DA:80,1
+DA:81,1
+DA:83,2
+DA:84,1
+DA:85,2
+DA:87,2
+DA:88,1
+DA:89,2
+DA:91,2
+DA:92,1
+DA:93,2
+DA:95,1
+DA:96,2
+DA:98,1
+DA:99,1
+DA:100,2
+DA:102,1
+DA:103,2
+DA:104,2
+DA:106,1
+DA:107,1
+DA:108,2
+DA:109,1
+DA:111,1
+DA:112,1
+DA:113,1
+DA:114,2
+DA:115,1
+DA:117,1
+DA:120,1
+DA:121,1
+DA:122,1
+DA:124,1
+DA:125,1
+DA:127,1
+DA:128,1
+DA:129,1
+DA:130,1
+LF:86
+LH:86
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_operators.cpp
+FN:7,_Z41__static_initialization_and_destruction_0ii
+FN:7,_GLOBAL__I__Z33run_Operators_binarySetOperationsv
+FN:7,_Z37run_Operators_mutatingIntersectionBugv
+FN:6,_Z31run_Operators_emptySetInclusionv
+FN:5,_Z40run_Operators_specialContainerOperationsv
+FN:4,_Z35run_Operators_mutatingSetOperationsv
+FN:3,_Z33run_Operators_binarySetOperationsv
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,1
+DA:7,4
+BA:7,2
+BA:7,1
+BA:7,2
+BA:7,1
+LF:5
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeIiEED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:98,_ZNSaISt13_Rb_tree_nodeIiEEC2Ev
+FN:106,_ZNSaIiED1Ev
+FN:100,_ZNSaISt13_Rb_tree_nodeIiEEC2ERKS1_
+FN:104,_ZNSaIiEC1ISt13_Rb_tree_nodeIiEEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,4
+DA:101,4
+DA:104,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:7
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:51
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algo.h
+FN:5187,_ZSt16set_intersectionISt23_Rb_tree_const_iteratorIiES1_St15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T_SA_T0_SB_S9_
+FN:5055,_ZSt9set_unionISt23_Rb_tree_const_iteratorIiES1_St15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T_SA_T0_SB_S9_
+FN:5300,_ZSt14set_differenceISt23_Rb_tree_const_iteratorIiES1_St15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T_SA_T0_SB_S9_
+DA:5055,1
+DA:5074,4
+DA:5076,2
+DA:5078,1
+DA:5079,1
+DA:5081,1
+DA:5083,0
+DA:5084,0
+DA:5088,1
+DA:5089,1
+DA:5090,1
+DA:5092,2
+DA:5095,1
+DA:5187,2
+DA:5204,8
+DA:5205,4
+DA:5206,1
+DA:5207,3
+DA:5208,1
+DA:5211,2
+DA:5212,2
+DA:5213,2
+DA:5214,2
+DA:5216,2
+DA:5300,1
+DA:5317,4
+DA:5318,2
+DA:5320,1
+DA:5321,1
+DA:5322,1
+DA:5324,1
+DA:5325,0
+DA:5328,1
+DA:5329,1
+DA:5331,1
+BA:5074,2
+BA:5074,2
+BA:5074,2
+BA:5074,1
+BA:5074,2
+BA:5074,2
+BA:5076,2
+BA:5076,2
+BA:5081,1
+BA:5081,2
+BA:5204,2
+BA:5204,2
+BA:5204,2
+BA:5204,1
+BA:5204,2
+BA:5204,2
+BA:5205,2
+BA:5205,2
+BA:5207,2
+BA:5207,2
+BA:5317,2
+BA:5317,2
+BA:5317,2
+BA:5317,1
+BA:5317,2
+BA:5317,2
+BA:5318,2
+BA:5318,2
+BA:5324,1
+BA:5324,2
+LF:35
+LH:32
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseISt23_Rb_tree_const_iteratorIiELb0EE3__bES1_
+FN:268,_ZNSt12__niter_baseISt23_Rb_tree_const_iteratorIiELb0EE3__bES1_
+FN:268,_ZNSt12__niter_baseISt15insert_iteratorISt3setIiSt4lessIiESaIiEEELb0EE3__bES6_
+FN:792,_ZNSt7__equalILb0EE5equalISt23_Rb_tree_const_iteratorIiES3_EEbT_S4_T0_
+FN:815,_ZSt11__equal_auxISt23_Rb_tree_const_iteratorIiES1_EbT_S2_T0_
+FN:944,_ZSt5equalISt23_Rb_tree_const_iteratorIiES1_EbT_S2_T0_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt26bidirectional_iterator_tagE8__copy_mISt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEET0_T_SD_SC_
+FN:385,_ZSt13__copy_move_aILb0ESt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T0_SA_S9_
+FN:430,_ZSt14__copy_move_a2ILb0ESt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T0_SA_S9_
+FN:456,_ZSt4copyISt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET0_T_SA_S9_
+DA:268,15
+DA:269,15
+DA:286,6
+DA:287,6
+DA:309,3
+DA:311,3
+DA:312,0
+DA:313,3
+DA:385,3
+DA:393,3
+DA:396,3
+DA:430,3
+DA:435,3
+DA:456,3
+DA:466,3
+DA:792,2
+DA:794,4
+DA:795,2
+DA:796,0
+DA:797,2
+DA:815,2
+DA:822,2
+DA:824,2
+DA:944,2
+DA:956,2
+BA:311,1
+BA:311,2
+BA:794,2
+BA:794,2
+BA:795,1
+BA:795,2
+LF:25
+LH:23
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:469,_ZNKSt9_IdentityIiEclERKi
+FN:229,_ZNKSt4lessIiEclERKiS2_
+DA:229,0
+DA:230,0
+DA:469,0
+DA:470,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:572,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEC1ERS4_St23_Rb_tree_const_iteratorIiE
+FN:645,_ZSt8inserterISt3setIiSt4lessIiESaIiEESt23_Rb_tree_const_iteratorIiEESt15insert_iteratorIT_ERS8_T0_
+FN:618,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEdeEv
+FN:623,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEppEv
+FN:599,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEaSERKi
+DA:572,0
+DA:573,0
+DA:599,0
+DA:601,0
+DA:602,0
+DA:603,0
+DA:618,0
+DA:619,0
+DA:623,0
+DA:624,0
+DA:645,0
+DA:648,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:111,_ZNSt8iteratorISt20forward_iterator_tagKivPS1_RS1_EC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,6
+DA:166,0
+DA:167,0
+LF:3
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorIiEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIiEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIiES1_EC1ERKS1_S4_
+DA:88,17
+DA:89,17
+LF:2
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:336,_ZNKSt3setIiSt4lessIiESaIiEE4sizeEv
+FN:270,_ZNKSt3setIiSt4lessIiESaIiEE3endEv
+FN:261,_ZNKSt3setIiSt4lessIiESaIiEE5beginEv
+FN:331,_ZNKSt3setIiSt4lessIiESaIiEE5emptyEv
+FN:503,_ZNSt3setIiSt4lessIiESaIiEE4findERKi
+FN:141,_ZNSt3setIiSt4lessIiESaIiEEC1Ev
+FN:378,_ZNSt3setIiSt4lessIiESaIiEE6insertERKi
+FN:405,_ZNSt3setIiSt4lessIiESaIiEE6insertESt23_Rb_tree_const_iteratorIiERKi
+FN:596,_ZSteqIiSt4lessIiESaIiEEbRKSt3setIT_T0_T1_ES9_
+FN:471,_ZNSt3setIiSt4lessIiESaIiEE5clearEv
+FN:93,_ZNSt3setIiSt4lessIiESaIiEED1Ev
+FN:216,_ZNSt3setIiSt4lessIiESaIiEEaSERKS3_
+FN:193,_ZNSt3setIiSt4lessIiESaIiEEC1ERKS3_
+FN:431,_ZNSt3setIiSt4lessIiESaIiEE5eraseESt23_Rb_tree_const_iteratorIiE
+FN:446,_ZNSt3setIiSt4lessIiESaIiEE5eraseERKi
+DA:93,0
+DA:141,0
+DA:142,0
+DA:193,4
+DA:194,4
+DA:216,7
+DA:218,7
+DA:219,7
+DA:261,0
+DA:262,0
+DA:270,0
+DA:271,0
+DA:331,0
+DA:332,0
+DA:336,15
+DA:337,15
+DA:378,15
+DA:381,15
+DA:382,15
+DA:405,0
+DA:406,0
+DA:431,3
+DA:432,3
+DA:446,2
+DA:447,2
+DA:471,0
+DA:472,0
+DA:503,25
+DA:504,25
+DA:596,2
+DA:597,2
+LF:31
+LH:18
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:103,_ZNSt18_Rb_tree_node_base10_S_minimumEPS_
+FN:117,_ZNSt18_Rb_tree_node_base10_S_maximumEPS_
+FN:285,_ZNKSt23_Rb_tree_const_iteratorIiEeqERKS0_
+FN:289,_ZNKSt23_Rb_tree_const_iteratorIiEneERKS0_
+FN:452,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorIiEC1ERKSt17_Rb_tree_iteratorIiE
+FN:641,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE4sizeEv
+FN:247,_ZNKSt23_Rb_tree_const_iteratorIiEdeEv
+FN:398,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_S_leftEPSt18_Rb_tree_node_base
+FN:463,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorIiEC1EPSt13_Rb_tree_nodeIiE
+FN:596,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorIiEeqERKS0_
+FN:347,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE21_M_get_Node_allocatorEv
+FN:432,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_M_rootEv
+FN:456,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_beginEv
+FN:428,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_S_minimumEPSt18_Rb_tree_node_base
+FN:436,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_leftmostEv
+FN:511,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_S_maximumEPSt18_Rb_tree_node_base
+FN:444,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE12_M_rightmostEv
+FN:610,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE3endEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorIiEC1EPKSt13_Rb_tree_nodeIiE
+FN:614,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE3endEv
+FN:603,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5beginEv
+FN:637,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5emptyEv
+FN:491,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_rightEPKSt18_Rb_tree_node_base
+FN:415,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:471,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_valueEPKSt13_Rb_tree_nodeIiE
+FN:475,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_S_keyEPKSt13_Rb_tree_nodeIiE
+FN:954,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE14_M_lower_boundEPSt13_Rb_tree_nodeIiES8_RKi
+FN:495,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_S_keyEPKSt18_Rb_tree_node_base
+FN:1390,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE4findERKi
+FN:483,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_S_leftEPKSt18_Rb_tree_node_base
+FN:403,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEEC1Ev
+FN:408,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EEC1ERKS3_RKSaISt13_Rb_tree_nodeIiEE
+FN:986,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE14_M_upper_boundEPSt13_Rb_tree_nodeIiES8_RKi
+FN:1019,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11equal_rangeERKi
+FN:214,_ZNKSt17_Rb_tree_iteratorIiEneERKS0_
+FN:351,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13get_allocatorEv
+FN:270,_ZNSt23_Rb_tree_const_iteratorIiEmmEv
+FN:356,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE14_M_create_nodeERKi
+FN:846,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_M_insert_EPKSt18_Rb_tree_node_baseS8_RKi
+FN:378,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_M_clone_nodeEPKSt13_Rb_tree_nodeIiE
+FN:195,_ZNSt17_Rb_tree_iteratorIiEmmEv
+FN:1133,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE16_M_insert_uniqueERKi
+FN:255,_ZNSt23_Rb_tree_const_iteratorIiEppEv
+FN:1178,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE17_M_insert_unique_ESt23_Rb_tree_const_iteratorIiERKi
+FN:745,_ZSteqIiiSt9_IdentityIiESt4lessIiESaIiEEbRKSt8_Rb_treeIT_T0_T1_T2_T3_ESD_
+FN:360,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_put_nodeEPSt13_Rb_tree_nodeIiE
+FN:388,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE15_M_destroy_nodeEPSt13_Rb_tree_nodeIiE
+FN:936,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_eraseEPSt13_Rb_tree_nodeIiE
+FN:695,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5clearEv
+FN:584,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEED1Ev
+FN:900,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_M_copyEPKSt13_Rb_tree_nodeIiEPS7_
+FN:824,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEEaSERKS5_
+FN:568,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEEC1ERKS5_
+FN:1327,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5eraseESt23_Rb_tree_const_iteratorIiE
+FN:1313,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5eraseESt17_Rb_tree_iteratorIiE
+FN:187,_ZNSt17_Rb_tree_iteratorIiEppEi
+FN:1353,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5eraseESt17_Rb_tree_iteratorIiES7_
+FN:1341,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5eraseERKi
+DA:103,7
+DA:105,7
+DA:106,7
+DA:117,7
+DA:119,7
+DA:120,7
+DA:168,0
+DA:169,0
+DA:187,0
+DA:189,0
+DA:190,0
+DA:195,0
+DA:197,0
+DA:198,0
+DA:210,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:240,0
+DA:241,0
+DA:243,0
+DA:244,0
+DA:247,0
+DA:248,0
+DA:255,0
+DA:257,0
+DA:258,0
+DA:270,0
+DA:272,0
+DA:273,0
+DA:285,0
+DA:286,0
+DA:289,0
+DA:290,0
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:356,0
+DA:357,0
+DA:360,0
+DA:361,0
+DA:364,0
+DA:366,0
+DA:368,0
+DA:374,0
+DA:378,8
+DA:380,8
+DA:381,8
+DA:382,8
+DA:383,8
+DA:384,8
+DA:388,0
+DA:390,0
+DA:391,0
+DA:392,0
+DA:398,0
+DA:403,0
+DA:405,0
+DA:406,0
+DA:408,4
+DA:410,4
+DA:411,4
+DA:415,0
+DA:417,0
+DA:418,0
+DA:419,0
+DA:420,0
+DA:421,0
+DA:428,30
+DA:429,30
+DA:432,11
+DA:433,11
+DA:436,0
+DA:437,0
+DA:444,0
+DA:445,0
+DA:452,0
+DA:453,0
+DA:456,7
+DA:459,7
+DA:463,0
+DA:464,0
+DA:471,0
+DA:472,0
+DA:475,0
+DA:476,0
+DA:479,0
+DA:480,0
+DA:483,8
+DA:484,8
+DA:487,0
+DA:488,0
+DA:491,0
+DA:492,0
+DA:495,0
+DA:496,0
+DA:499,0
+DA:500,0
+DA:503,7
+DA:504,7
+DA:511,7
+DA:512,7
+DA:562,0
+DA:568,4
+DA:569,4
+DA:571,4
+DA:573,2
+DA:574,2
+DA:575,2
+DA:576,2
+DA:578,4
+DA:584,0
+DA:585,0
+DA:596,0
+DA:599,0
+DA:603,0
+DA:606,0
+DA:610,36
+DA:611,36
+DA:614,0
+DA:617,0
+DA:637,0
+DA:638,0
+DA:641,0
+DA:642,0
+DA:695,9
+DA:697,9
+DA:698,9
+DA:699,9
+DA:700,9
+DA:701,9
+DA:702,9
+DA:745,2
+DA:748,2
+DA:824,7
+DA:826,7
+DA:829,7
+DA:830,7
+DA:831,7
+DA:833,5
+DA:834,5
+DA:835,5
+DA:836,5
+DA:839,7
+DA:846,0
+DA:850,0
+DA:852,0
+DA:854,0
+DA:857,0
+DA:858,0
+DA:900,8
+DA:903,8
+DA:904,8
+DA:908,8
+DA:909,1
+DA:910,8
+DA:911,8
+DA:913,16
+DA:915,0
+DA:916,0
+DA:917,0
+DA:918,0
+DA:919,0
+DA:920,0
+DA:921,0
+DA:924,0
+DA:926,0
+DA:927,0
+DA:929,8
+DA:936,0
+DA:939,0
+DA:941,0
+DA:942,0
+DA:943,0
+DA:944,0
+DA:946,0
+DA:954,27
+DA:956,87
+DA:957,33
+DA:958,23
+DA:960,10
+DA:961,27
+DA:986,2
+DA:988,4
+DA:989,0
+DA:990,0
+DA:992,0
+DA:993,2
+DA:1019,2
+DA:1021,2
+DA:1022,2
+DA:1023,4
+DA:1025,2
+DA:1026,0
+DA:1027,2
+DA:1028,0
+DA:1031,2
+DA:1032,2
+DA:1033,2
+DA:1036,2
+DA:1040,0
+DA:1133,0
+DA:1135,0
+DA:1136,0
+DA:1137,0
+DA:1138,0
+DA:1140,0
+DA:1141,0
+DA:1142,0
+DA:1144,0
+DA:1145,0
+DA:1147,0
+DA:1148,0
+DA:1150,0
+DA:1152,0
+DA:1153,0
+DA:1154,0
+DA:1178,0
+DA:1181,0
+DA:1183,0
+DA:1186,0
+DA:1188,0
+DA:1190,0
+DA:1194,0
+DA:1195,0
+DA:1196,0
+DA:1197,0
+DA:1200,0
+DA:1201,0
+DA:1204,0
+DA:1207,0
+DA:1209,0
+DA:1213,0
+DA:1214,0
+DA:1215,0
+DA:1216,0
+DA:1219,0
+DA:1220,0
+DA:1222,0
+DA:1225,0
+DA:1230,0
+DA:1313,0
+DA:1318,0
+DA:1319,0
+DA:1320,0
+DA:1321,0
+DA:1327,3
+DA:1332,3
+DA:1333,3
+DA:1334,3
+DA:1335,3
+DA:1341,2
+DA:1343,2
+DA:1344,2
+DA:1345,2
+DA:1346,2
+DA:1353,2
+DA:1355,2
+DA:1356,2
+DA:1358,0
+DA:1359,0
+DA:1360,2
+DA:1390,25
+DA:1392,25
+DA:1395,25
+BA:105,1
+BA:105,2
+BA:119,2
+BA:119,2
+BA:571,2
+BA:571,2
+BA:748,2
+BA:748,1
+BA:748,2
+BA:748,1
+BA:826,2
+BA:826,1
+BA:831,2
+BA:831,2
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:908,2
+BA:908,2
+BA:913,1
+BA:913,2
+BA:918,0
+BA:918,0
+BA:939,0
+BA:939,0
+BA:956,2
+BA:956,2
+BA:957,2
+BA:957,2
+BA:988,1
+BA:988,2
+BA:989,0
+BA:989,0
+BA:1023,2
+BA:1023,1
+BA:1025,1
+BA:1025,2
+BA:1027,1
+BA:1027,2
+BA:1138,0
+BA:1138,0
+BA:1142,0
+BA:1142,0
+BA:1145,0
+BA:1145,0
+BA:1147,0
+BA:1147,0
+BA:1152,0
+BA:1152,0
+BA:1181,0
+BA:1181,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1190,0
+BA:1190,0
+BA:1195,0
+BA:1195,0
+BA:1197,0
+BA:1197,0
+BA:1200,0
+BA:1200,0
+BA:1209,0
+BA:1209,0
+BA:1214,0
+BA:1214,0
+BA:1216,0
+BA:1216,0
+BA:1219,0
+BA:1219,0
+BA:1355,2
+BA:1355,1
+BA:1355,2
+BA:1355,1
+BA:1355,2
+BA:1355,1
+BA:1358,0
+BA:1358,0
+BA:1395,2
+BA:1395,2
+BA:1395,2
+BA:1395,2
+LF:266
+LH:101
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:118,_ZN9__gnu_cxx13new_allocatorIiE7destroyEPi
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIiED2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorIiE9constructEPiRKi
+FN:71,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEEC2ERKS3_
+FN:69,_ZN9__gnu_cxx13new_allocatorIiEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE8max_sizeEv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE8allocateEjPKv
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE10deallocateEPS2_j
+DA:69,0
+DA:71,4
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+DA:118,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:14
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+DA:105,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:195,_ZNSolsEj
+DA:95,0
+DA:112,0
+DA:117,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:395,_ZN6wibble9exception6SystemD1Ev
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+DA:137,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:395,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:395,0
+BA:395,0
+LF:21
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/mutex.h
+FN:40,_ZN6wibble3sys5MutexC1Eb
+FN:72,_ZN6wibble3sys5Mutex4lockEv
+FN:105,_ZN6wibble3sys9MutexLockC1ERNS0_5MutexE
+FN:80,_ZN6wibble3sys5Mutex6unlockEv
+FN:106,_ZN6wibble3sys9MutexLockD1Ev
+FN:54,_ZN6wibble3sys5MutexD1Ev
+DA:40,1
+DA:43,1
+DA:44,1
+DA:48,0
+DA:51,1
+DA:52,0
+DA:53,1
+DA:54,1
+DA:56,1
+DA:57,0
+DA:58,1
+DA:72,214954
+DA:74,214954
+DA:75,0
+DA:76,214954
+DA:80,214954
+DA:82,214954
+DA:83,0
+DA:84,214954
+DA:105,214954
+DA:106,214954
+BA:44,1
+BA:44,2
+BA:51,1
+BA:51,2
+BA:56,1
+BA:56,2
+BA:74,1
+BA:74,2
+BA:82,1
+BA:82,2
+LF:21
+LH:16
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/thread.h
+FN:77,_ZN6wibble3sys6Thread9threadTagEv
+FN:69,_ZN6wibble3sys6ThreadC2Ev
+FN:91,_ZN6wibble3sys6ThreadD2Ev
+FN:91,_ZN6wibble3sys6ThreadD0Ev
+FN:91,_ZN6wibble3sys6ThreadD1Ev
+DA:69,2
+DA:77,0
+DA:91,2
+BA:91,1
+BA:91,2
+BA:91,0
+BA:91,0
+BA:91,0
+BA:91,0
+LF:3
+LH:2
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:17,_ZN8LocationC1EPKciSs
+FN:13,_ZN8LocationC1ERKS_
+FN:52,_ZlsIiER12AssertFailedS1_T_
+FN:52,_ZlsIPvER12AssertFailedS2_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:67,_Z12assert_eq_fnIPvS0_Ev8LocationT_T0_
+FN:67,_Z12assert_eq_fnIiiEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:67,4
+DA:69,4
+DA:70,0
+DA:71,0
+DA:75,4
+BA:42,0
+BA:42,0
+BA:69,1
+BA:69,2
+BA:69,0
+BA:69,0
+LF:22
+LH:3
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/thread.test.h
+FN:21,_ZN10TestThread7Thread14mainEv
+FN:27,_ZN10TestThread7Thread1C1ERii
+FN:49,_ZN10TestThread7Thread2C1ERiRN6wibble3sys5MutexE
+FN:51,_ZN10TestThread7Thread24quitEv
+FN:32,_ZN10TestThread7Thread2D0Ev
+FN:32,_ZN10TestThread7Thread2D1Ev
+FN:16,_ZN10TestThread7Thread1D0Ev
+FN:16,_ZN10TestThread7Thread1D1Ev
+FN:38,_ZN10TestThread7Thread24mainEv
+FN:55,_ZN10TestThread9executionEv
+FN:65,_ZN10TestThread12sharedMemoryEv
+DA:16,1
+DA:21,1
+DA:23,1
+DA:24,1
+DA:27,1
+DA:32,1
+DA:38,1
+DA:40,214954
+DA:42,214953
+DA:43,214953
+DA:45,1
+DA:49,1
+DA:50,1
+DA:51,1
+DA:55,1
+DA:56,1
+DA:58,1
+DA:59,1
+DA:60,1
+DA:61,2
+DA:62,1
+DA:65,1
+DA:66,1
+DA:67,1
+DA:69,1
+DA:70,1
+DA:72,1
+DA:73,2
+DA:75,1
+DA:76,1
+DA:77,1
+DA:79,1
+DA:80,1
+DA:81,1
+BA:16,0
+BA:16,0
+BA:16,1
+BA:16,2
+BA:32,0
+BA:32,0
+BA:32,1
+BA:32,2
+BA:40,2
+BA:40,2
+BA:73,2
+BA:73,2
+BA:76,2
+BA:76,1
+LF:34
+LH:34
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_sys_thread.cpp
+FN:4,_Z41__static_initialization_and_destruction_0ii
+FN:4,_GLOBAL__I__Z20run_Thread_executionv
+FN:3,_Z20run_Thread_executionv
+FN:4,_Z23run_Thread_sharedMemoryv
+DA:3,1
+DA:4,4
+BA:4,2
+BA:4,1
+BA:4,2
+BA:4,1
+LF:2
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:835,_ZNSs6appendEPKc
+FN:501,_ZNSsaSERKSs
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:67
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+BA:340,0
+BA:340,0
+LF:19
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+DA:683,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+DA:79,0
+DA:97,0
+DA:98,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:386,0
+DA:387,0
+DA:404,0
+DA:405,0
+DA:526,0
+DA:527,0
+BA:149,0
+BA:149,0
+LF:19
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+DA:69,0
+DA:71,0
+DA:76,0
+DA:97,0
+DA:98,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:229,_ZNSolsEPKv
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:229,0
+DA:230,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:25
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/commandline/core.h
+FN:30,_ZN6wibble11commandline7ArgListC1Ev
+FN:34,_ZN6wibble11commandline7ArgList15eraseAndAdvanceERSt14_List_iteratorISsE
+FN:30,_ZN6wibble11commandline7ArgListD1Ev
+DA:30,0
+DA:34,0
+DA:36,0
+DA:37,0
+DA:38,0
+DA:39,0
+DA:40,0
+DA:41,0
+DA:42,0
+BA:36,0
+BA:36,0
+LF:9
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:67,_Z12assert_eq_fnIjjEv8LocationT_T0_
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:52,_ZlsIbER12AssertFailedS1_T_
+FN:67,_Z12assert_eq_fnIbbEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:75,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+LF:26
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/commandline/core.test.h
+FN:24,_ZN19TestCommandlineCore15eraseAndAdvanceEv
+FN:12,_ZN19TestCommandlineCore8isSwitchEv
+DA:12,1
+DA:13,1
+DA:14,2
+DA:15,2
+DA:16,2
+DA:17,2
+DA:18,2
+DA:19,2
+DA:20,2
+DA:21,2
+DA:22,1
+DA:24,1
+DA:26,1
+DA:27,1
+DA:28,2
+DA:29,2
+DA:31,1
+DA:32,1
+DA:34,1
+DA:35,1
+DA:36,2
+DA:38,1
+DA:39,1
+DA:40,2
+DA:42,1
+DA:43,1
+DA:44,2
+DA:45,2
+DA:46,1
+LF:29
+LH:29
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_commandline_core.cpp
+FN:4,_Z41__static_initialization_and_destruction_0ii
+FN:4,_GLOBAL__I__Z28run_CommandlineCore_isSwitchv
+FN:4,_Z35run_CommandlineCore_eraseAndAdvancev
+FN:3,_Z28run_CommandlineCore_isSwitchv
+DA:3,1
+DA:4,4
+BA:4,2
+BA:4,1
+BA:4,2
+BA:4,1
+LF:2
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaISt10_List_nodeISsEED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED1Ev
+FN:104,_ZNSaISsEC1ISt10_List_nodeISsEEERKSaIT_E
+FN:98,_ZNSaISt10_List_nodeISsEEC2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:104,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:7
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:51
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/list.tcc
+FN:109,_ZNSt4listISsSaISsEE5eraseESt14_List_iteratorISsE
+FN:70,_ZNSt10_List_baseISsSaISsEE8_M_clearEv
+DA:70,0
+DA:73,0
+DA:74,0
+DA:76,0
+DA:77,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:109,0
+DA:111,0
+DA:112,0
+BA:74,0
+BA:74,0
+LF:11
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:76,_ZSt10__distanceISt20_List_const_iteratorISsEENSt15iterator_traitsIT_E15difference_typeES3_S3_St18input_iterator_tag
+FN:115,_ZSt8distanceISt20_List_const_iteratorISsEENSt15iterator_traitsIT_E15difference_typeES3_S3_
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:76,0
+DA:81,0
+DA:82,0
+DA:84,0
+DA:85,0
+DA:87,0
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+BA:82,0
+BA:82,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:166,_ZSt19__iterator_categoryISt20_List_const_iteratorISsEENSt15iterator_traitsIT_E17iterator_categoryERKS3_
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:166,0
+DA:167,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_list.h
+FN:169,_ZNKSt14_List_iteratorISsEeqERKS0_
+FN:139,_ZNSt14_List_iteratorISsEppEv
+FN:126,_ZNSt14_List_iteratorISsEC1EPSt15_List_node_base
+FN:648,_ZNSt4listISsSaISsEE5beginEv
+FN:666,_ZNSt4listISsSaISsEE3endEv
+FN:364,_ZNSt10_List_baseISsSaISsEE7_M_initEv
+FN:298,_ZNSt10_List_baseISsSaISsEE10_List_implD1Ev
+FN:202,_ZNSt20_List_const_iteratorISsEC1EPKSt15_List_node_base
+FN:675,_ZNKSt4listISsSaISsEE3endEv
+FN:657,_ZNKSt4listISsSaISsEE5beginEv
+FN:328,_ZNKSt10_List_baseISsSaISsEE21_M_get_Node_allocatorEv
+FN:253,_ZNKSt20_List_const_iteratorISsEneERKS0_
+FN:219,_ZNSt20_List_const_iteratorISsEppEv
+FN:763,_ZNKSt4listISsSaISsEE4sizeEv
+FN:332,_ZNKSt10_List_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:301,_ZNSt10_List_baseISsSaISsEE10_List_implC1Ev
+FN:339,_ZNSt10_List_baseISsSaISsEEC2Ev
+FN:498,_ZNSt4listISsSaISsEEC2Ev
+FN:313,_ZNSt10_List_baseISsSaISsEE11_M_get_nodeEv
+FN:317,_ZNSt10_List_baseISsSaISsEE11_M_put_nodeEPSt10_List_nodeISsE
+FN:458,_ZNSt4listISsSaISsEE14_M_create_nodeERKSs
+FN:1339,_ZNSt4listISsSaISsEE9_M_insertESt14_List_iteratorISsERKSs
+FN:875,_ZNSt4listISsSaISsEE9push_backERKSs
+FN:1356,_ZNSt4listISsSaISsEE8_M_eraseESt14_List_iteratorISsE
+FN:357,_ZNSt10_List_baseISsSaISsEED2Ev
+FN:417,_ZNSt4listISsSaISsEED2Ev
+DA:126,0
+DA:127,0
+DA:139,0
+DA:141,0
+DA:142,0
+DA:169,0
+DA:170,0
+DA:202,0
+DA:203,0
+DA:219,0
+DA:221,0
+DA:222,0
+DA:253,0
+DA:254,0
+DA:298,0
+DA:301,0
+DA:302,0
+DA:303,0
+DA:313,0
+DA:314,0
+DA:317,0
+DA:318,0
+DA:328,0
+DA:329,0
+DA:332,0
+DA:333,0
+DA:339,0
+DA:340,0
+DA:341,0
+DA:357,0
+DA:358,0
+DA:364,0
+DA:366,0
+DA:367,0
+DA:368,0
+DA:417,0
+DA:458,0
+DA:460,0
+DA:463,0
+DA:465,0
+DA:467,0
+DA:468,0
+DA:470,0
+DA:498,0
+DA:499,0
+DA:648,0
+DA:649,0
+DA:657,0
+DA:658,0
+DA:666,0
+DA:667,0
+DA:675,0
+DA:676,0
+DA:763,0
+DA:764,0
+DA:875,0
+DA:876,0
+DA:1339,0
+DA:1341,0
+DA:1342,0
+DA:1343,0
+DA:1356,0
+DA:1358,0
+DA:1359,0
+DA:1360,0
+DA:1361,0
+DA:1362,0
+LF:67
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt10_List_nodeISsEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt10_List_nodeISsEEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt10_List_nodeISsEE8max_sizeEv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt10_List_nodeISsEE8allocateEjPKv
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:97,_ZN9__gnu_cxx13new_allocatorISt10_List_nodeISsEE10deallocateEPS2_j
+FN:118,_ZN9__gnu_cxx13new_allocatorISsE7destroyEPSs
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+DA:118,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:195,_ZNSolsEj
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:177,_ZNSolsEb
+DA:95,0
+DA:112,0
+DA:117,0
+DA:177,0
+DA:178,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/fs.h
+FN:105,_ZNK6wibble3sys2fs9Directory14const_iteratorneERKS3_
+FN:98,_ZN6wibble3sys2fs9Directory14const_iteratordeEv
+FN:111,_ZN6wibble3sys2fs9DirectoryC1ERKSs
+FN:50,_ZN6wibble3sys2fs9DirectoryD1Ev
+FN:88,_ZN6wibble3sys2fs9Directory14const_iteratorppEv
+FN:65,_ZN6wibble3sys2fs9Directory14const_iteratorD1Ev
+DA:50,3
+DA:65,30
+DA:88,29
+DA:90,29
+DA:92,1
+DA:93,1
+DA:95,29
+DA:98,28
+DA:105,29
+DA:107,29
+DA:111,3
+BA:65,1
+BA:65,2
+BA:90,2
+BA:90,2
+BA:107,2
+BA:107,2
+BA:107,1
+BA:107,2
+LF:11
+LH:11
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:17,_ZN8LocationC1EPKciSs
+FN:13,_ZN8LocationC1ERKS_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:59,_Z9assert_fnIbEv8LocationT_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+LF:18
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/fs.test.h
+FN:60,_ZN6TestFs11_mkFilePathEv
+FN:51,_ZN6TestFs8_mkPath2Ev
+FN:40,_ZN6TestFs7_mkPathEv
+FN:32,_ZN6TestFs18invalidDirectoriesEv
+FN:16,_ZN6TestFs16directoryIterateEv
+DA:16,1
+DA:17,1
+DA:19,1
+DA:20,29
+DA:21,29
+DA:23,1
+DA:24,2
+DA:25,2
+DA:26,2
+DA:27,2
+DA:28,2
+DA:29,1
+DA:32,1
+DA:33,1
+DA:34,2
+DA:36,2
+DA:37,2
+DA:38,1
+DA:40,1
+DA:42,1
+DA:45,2
+DA:48,2
+DA:49,1
+DA:51,1
+DA:53,1
+DA:54,1
+DA:55,2
+DA:56,2
+DA:57,1
+DA:58,1
+DA:60,1
+DA:62,1
+DA:63,1
+DA:64,2
+DA:65,2
+DA:66,2
+DA:67,1
+DA:68,1
+BA:20,2
+BA:20,2
+LF:38
+LH:38
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_sys_fs.cpp
+FN:7,_Z41__static_initialization_and_destruction_0ii
+FN:7,_GLOBAL__I__Z23run_Fs_directoryIteratev
+FN:7,_Z18run_Fs__mkFilePathv
+FN:6,_Z15run_Fs__mkPath2v
+FN:5,_Z14run_Fs__mkPathv
+FN:4,_Z25run_Fs_invalidDirectoriesv
+FN:3,_Z23run_Fs_directoryIteratev
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,1
+DA:7,4
+BA:7,2
+BA:7,1
+BA:7,2
+BA:7,1
+LF:5
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISsEED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:98,_ZNSaISt13_Rb_tree_nodeISsEEC2Ev
+FN:106,_ZNSaISsED1Ev
+FN:104,_ZNSaISsEC1ISt13_Rb_tree_nodeISsEEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,1
+DA:100,0
+DA:101,0
+DA:104,56
+DA:106,1
+DA:118,0
+DA:119,0
+LF:7
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:277,_ZNKSs7_M_dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:392,_ZNSs10_S_compareEjj
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:1941,_ZNKSs7compareERKSs
+FN:2238,_ZStltIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2238,365
+DA:2239,365
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+BA:1948,0
+BA:1948,0
+LF:64
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:188,_ZSt3minIjERKT_S2_S2_
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+BA:193,0
+BA:193,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:469,_ZNKSt9_IdentityISsEclERKSs
+FN:229,_ZNKSt4lessISsEclERKSsS2_
+DA:229,365
+DA:230,365
+DA:469,355
+DA:470,355
+LF:4
+LH:4
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:166,0
+DA:167,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorISsEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorISsEbEC1ERKS1_RKb
+DA:88,56
+DA:89,56
+LF:2
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:336,_ZNKSt3setISsSt4lessISsESaISsEE4sizeEv
+FN:270,_ZNKSt3setISsSt4lessISsESaISsEE3endEv
+FN:141,_ZNSt3setISsSt4lessISsESaISsEEC1Ev
+FN:503,_ZNSt3setISsSt4lessISsESaISsEE4findERKSs
+FN:93,_ZNSt3setISsSt4lessISsESaISsEED1Ev
+FN:378,_ZNSt3setISsSt4lessISsESaISsEE6insertERKSs
+DA:93,1
+DA:141,1
+DA:142,1
+DA:270,5
+DA:271,5
+DA:336,1
+DA:337,1
+DA:378,28
+DA:381,28
+DA:382,28
+DA:503,5
+DA:504,5
+LF:12
+LH:12
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISsEneERKS0_
+FN:452,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorISsEC1ERKSt17_Rb_tree_iteratorISsE
+FN:641,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE4sizeEv
+FN:398,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPSt18_Rb_tree_node_base
+FN:463,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorISsEC1EPSt13_Rb_tree_nodeISsE
+FN:596,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISsEeqERKS0_
+FN:610,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE3endEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorISsEC1EPKSt13_Rb_tree_nodeISsE
+FN:614,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE3endEv
+FN:415,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:471,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt13_Rb_tree_nodeISsE
+FN:475,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt13_Rb_tree_nodeISsE
+FN:495,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt18_Rb_tree_node_base
+FN:403,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEC1Ev
+FN:347,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE21_M_get_Node_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13get_allocatorEv
+FN:360,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_put_nodeEPSt13_Rb_tree_nodeISsE
+FN:954,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE14_M_lower_boundEPSt13_Rb_tree_nodeISsES8_RKSs
+FN:1390,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE4findERKSs
+FN:388,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE15_M_destroy_nodeEPSt13_Rb_tree_nodeISsE
+FN:936,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_eraseEPSt13_Rb_tree_nodeISsE
+FN:584,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEED1Ev
+FN:195,_ZNSt17_Rb_tree_iteratorISsEmmEv
+FN:356,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE14_M_create_nodeERKSs
+FN:846,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_M_insert_EPKSt18_Rb_tree_node_baseS8_RKSs
+FN:1133,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE16_M_insert_uniqueERKSs
+DA:168,78
+DA:169,78
+DA:195,11
+DA:197,11
+DA:198,11
+DA:210,17
+DA:211,17
+DA:240,5
+DA:241,5
+DA:243,33
+DA:244,33
+DA:289,5
+DA:290,5
+DA:347,56
+DA:348,56
+DA:351,56
+DA:352,56
+DA:356,28
+DA:357,28
+DA:360,28
+DA:361,28
+DA:364,28
+DA:366,28
+DA:368,28
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,28
+DA:388,28
+DA:390,28
+DA:391,28
+DA:392,28
+DA:398,1
+DA:403,1
+DA:405,1
+DA:406,1
+DA:415,1
+DA:417,1
+DA:418,1
+DA:419,1
+DA:420,1
+DA:421,1
+DA:452,34
+DA:453,34
+DA:463,61
+DA:464,61
+DA:471,132
+DA:472,132
+DA:475,132
+DA:476,132
+DA:479,77
+DA:480,77
+DA:487,111
+DA:488,111
+DA:495,59
+DA:496,59
+DA:499,59
+DA:500,59
+DA:562,1
+DA:584,1
+DA:585,1
+DA:596,12
+DA:599,12
+DA:610,5
+DA:611,5
+DA:614,5
+DA:617,5
+DA:641,1
+DA:642,1
+DA:846,28
+DA:850,28
+DA:852,28
+DA:854,28
+DA:857,28
+DA:858,28
+DA:936,29
+DA:939,86
+DA:941,28
+DA:942,28
+DA:943,28
+DA:944,28
+DA:946,29
+DA:954,5
+DA:956,32
+DA:957,22
+DA:958,10
+DA:960,12
+DA:961,5
+DA:1133,28
+DA:1135,28
+DA:1136,28
+DA:1137,28
+DA:1138,166
+DA:1140,110
+DA:1141,110
+DA:1142,110
+DA:1144,28
+DA:1145,28
+DA:1147,12
+DA:1148,1
+DA:1150,11
+DA:1152,27
+DA:1153,27
+DA:1154,0
+DA:1390,5
+DA:1392,5
+DA:1395,5
+BA:850,2
+BA:850,1
+BA:850,2
+BA:850,2
+BA:850,2
+BA:850,2
+BA:939,2
+BA:939,2
+BA:956,2
+BA:956,2
+BA:957,2
+BA:957,2
+BA:1138,2
+BA:1138,2
+BA:1142,2
+BA:1142,2
+BA:1145,2
+BA:1145,2
+BA:1147,2
+BA:1147,2
+BA:1152,2
+BA:1152,1
+BA:1395,2
+BA:1395,1
+BA:1395,1
+BA:1395,2
+LF:107
+LH:103
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8max_sizeEv
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE10deallocateEPS2_j
+FN:118,_ZN9__gnu_cxx13new_allocatorISsE7destroyEPSs
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8allocateEjPKv
+DA:69,1
+DA:71,0
+DA:76,1
+DA:87,28
+DA:89,28
+DA:90,0
+DA:92,28
+DA:97,28
+DA:98,28
+DA:101,28
+DA:102,28
+DA:107,0
+DA:108,0
+DA:118,0
+BA:89,1
+BA:89,2
+BA:108,0
+BA:108,0
+LF:14
+LH:9
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/amorph.h
+FN:83,_ZN6wibble11VirtualBaseC2Ev
+FN:83,_ZN6wibble11VirtualBaseC2ERKS0_
+FN:366,_ZN6wibble6AmorphIN12_GLOBAL__N_11TENS1_10TInterfaceELi0EE14implementationEv
+FN:91,_ZN6wibble14MorphInterfaceIN12_GLOBAL__N_110TInterfaceEEC2ERKS3_
+FN:114,_ZN6wibble9MorphBaseIN12_GLOBAL__N_12T1ENS1_10TInterfaceEEC2ERKS4_
+FN:144,_ZN6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T1EEES3_NS1_10TInterfaceEEC2ERKS6_
+FN:114,_ZN6wibble9MorphBaseIN12_GLOBAL__N_12T2ENS1_10TInterfaceEEC2ERKS4_
+FN:144,_ZN6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T2EEES3_NS1_10TInterfaceEEC2ERKS6_
+FN:114,_ZN6wibble9MorphBaseIN12_GLOBAL__N_12T3ENS1_10TInterfaceEEC2ERKS4_
+FN:144,_ZN6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T3EEES3_NS1_10TInterfaceEEC2ERKS6_
+FN:332,_ZN6wibble6AmorphIN12_GLOBAL__N_11TENS1_10TInterfaceELi0EE24setMorphInterfacePointerEPKNS_14MorphInterfaceIS3_EE
+FN:284,_ZN6wibble6AmorphIN12_GLOBAL__N_11TENS1_10TInterfaceELi0EEC2ERKNS_14MorphInterfaceIS3_EE
+FN:371,_ZNK6wibble6AmorphIN12_GLOBAL__N_11TENS1_10TInterfaceELi0EE14morphInterfaceEv
+FN:345,_ZN6wibble6AmorphIN12_GLOBAL__N_11TENS1_10TInterfaceELi0EED2Ev
+FN:361,_ZNK6wibble6AmorphIN12_GLOBAL__N_11TENS1_10TInterfaceELi0EE14implementationEv
+FN:100,_ZN6wibble14MorphAllocatorC2Ev
+FN:132,_ZN6wibble9MorphBaseIN12_GLOBAL__N_12T1ENS1_10TInterfaceEE7wrappedEv
+FN:92,_ZN6wibble14MorphInterfaceIN12_GLOBAL__N_110TInterfaceEE11virtualBaseEv
+FN:91,_ZN6wibble14MorphInterfaceIN12_GLOBAL__N_110TInterfaceEEC2Ev
+FN:115,_ZN6wibble9MorphBaseIN12_GLOBAL__N_12T1ENS1_10TInterfaceEEC2ERKS2_
+FN:147,_ZN6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T1EEES3_NS1_10TInterfaceEEC2ERKS3_
+FN:115,_ZN6wibble9MorphBaseIN12_GLOBAL__N_12T2ENS1_10TInterfaceEEC2ERKS2_
+FN:147,_ZN6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T2EEES3_NS1_10TInterfaceEEC2ERKS3_
+FN:115,_ZN6wibble9MorphBaseIN12_GLOBAL__N_12T3ENS1_10TInterfaceEEC2ERKS2_
+FN:147,_ZN6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T3EEES3_NS1_10TInterfaceEEC2ERKS3_
+FN:173,_ZN6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T3EEES3_NS1_10TInterfaceEE7destroyEj
+FN:173,_ZN6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T2EEES3_NS1_10TInterfaceEE7destroyEj
+FN:173,_ZN6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T1EEES3_NS1_10TInterfaceEE7destroyEj
+FN:185,_ZN6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T3EEES3_NS1_10TInterfaceEE7wrappedEv
+FN:118,_ZN6wibble9MorphBaseIN12_GLOBAL__N_12T3ENS1_10TInterfaceEE11virtualBaseIS2_EENS_8EnableIfINS_13IsPolymorphicIT_EEPNS_11VirtualBaseEE1TEv
+FN:128,_ZN6wibble9MorphBaseIN12_GLOBAL__N_12T3ENS1_10TInterfaceEE11virtualBaseEv
+FN:149,_ZNK6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T3EEES3_NS1_10TInterfaceEE4selfEv
+FN:181,_ZNK6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T3EEES3_NS1_10TInterfaceEE7wrappedEv
+FN:185,_ZN6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T2EEES3_NS1_10TInterfaceEE7wrappedEv
+FN:118,_ZN6wibble9MorphBaseIN12_GLOBAL__N_12T2ENS1_10TInterfaceEE11virtualBaseIS2_EENS_8EnableIfINS_13IsPolymorphicIT_EEPNS_11VirtualBaseEE1TEv
+FN:128,_ZN6wibble9MorphBaseIN12_GLOBAL__N_12T2ENS1_10TInterfaceEE11virtualBaseEv
+FN:149,_ZNK6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T2EEES3_NS1_10TInterfaceEE4selfEv
+FN:181,_ZNK6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T2EEES3_NS1_10TInterfaceEE7wrappedEv
+FN:185,_ZN6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T1EEES3_NS1_10TInterfaceEE7wrappedEv
+FN:118,_ZN6wibble9MorphBaseIN12_GLOBAL__N_12T1ENS1_10TInterfaceEE11virtualBaseIS2_EENS_8EnableIfINS_13IsPolymorphicIT_EEPNS_11VirtualBaseEE1TEv
+FN:128,_ZN6wibble9MorphBaseIN12_GLOBAL__N_12T1ENS1_10TInterfaceEE11virtualBaseEv
+FN:149,_ZNK6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T1EEES3_NS1_10TInterfaceEE4selfEv
+FN:181,_ZNK6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T1EEES3_NS1_10TInterfaceEE7wrappedEv
+FN:156,_ZNK6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T3EEES3_NS1_10TInterfaceEE3leqEPKNS_14MorphInterfaceIS5_EE
+FN:156,_ZNK6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T2EEES3_NS1_10TInterfaceEE3leqEPKNS_14MorphInterfaceIS5_EE
+FN:156,_ZNK6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T1EEES3_NS1_10TInterfaceEE3leqEPKNS_14MorphInterfaceIS5_EE
+FN:316,_ZN6wibble6AmorphIN12_GLOBAL__N_11TENS1_10TInterfaceELi0EE19setInterfacePointerEPKS3_
+FN:340,_ZN6wibble6AmorphIN12_GLOBAL__N_11TENS1_10TInterfaceELi0EEaSERKS4_
+FN:392,_ZNK6wibble6AmorphIN12_GLOBAL__N_11TENS1_10TInterfaceELi0EE4implINS1_2T1EEEPT_v
+FN:351,_ZN6wibble6AmorphIN12_GLOBAL__N_11TENS1_10TInterfaceELi0EE6ifTypeINS1_14ExtractT1ValueEEENS_5MaybeINT_11result_typeEEES8_
+FN:84,_ZN6wibble11VirtualBaseD2Ev
+FN:84,_ZN6wibble11VirtualBaseD0Ev
+FN:84,_ZN6wibble11VirtualBaseD1Ev
+FN:95,_ZN6wibble14MorphInterfaceIN12_GLOBAL__N_110TInterfaceEED2Ev
+FN:114,_ZN6wibble9MorphBaseIN12_GLOBAL__N_12T3ENS1_10TInterfaceEED2Ev
+FN:189,_ZN6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T3EEES3_NS1_10TInterfaceEED2Ev
+FN:189,_ZN6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T3EEES3_NS1_10TInterfaceEED0Ev
+FN:189,_ZN6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T3EEES3_NS1_10TInterfaceEED1Ev
+FN:95,_ZN6wibble14MorphInterfaceIN12_GLOBAL__N_110TInterfaceEED0Ev
+FN:95,_ZN6wibble14MorphInterfaceIN12_GLOBAL__N_110TInterfaceEED1Ev
+FN:114,_ZN6wibble9MorphBaseIN12_GLOBAL__N_12T2ENS1_10TInterfaceEED2Ev
+FN:189,_ZN6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T2EEES3_NS1_10TInterfaceEED2Ev
+FN:189,_ZN6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T2EEES3_NS1_10TInterfaceEED0Ev
+FN:189,_ZN6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T2EEES3_NS1_10TInterfaceEED1Ev
+FN:114,_ZN6wibble9MorphBaseIN12_GLOBAL__N_12T1ENS1_10TInterfaceEED2Ev
+FN:189,_ZN6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T1EEES3_NS1_10TInterfaceEED2Ev
+FN:189,_ZN6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T1EEES3_NS1_10TInterfaceEED0Ev
+FN:189,_ZN6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T1EEES3_NS1_10TInterfaceEED1Ev
+FN:101,_ZN6wibble14MorphAllocatornwEjPvj
+FN:168,_ZNK6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T3EEES3_NS1_10TInterfaceEE13constructCopyEPvj
+FN:168,_ZNK6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T2EEES3_NS1_10TInterfaceEE13constructCopyEPvj
+FN:168,_ZNK6wibble5MorphIN12_GLOBAL__N_16TMorphINS1_2T1EEES3_NS1_10TInterfaceEE13constructCopyEPvj
+DA:83,14
+DA:84,12
+DA:91,8
+DA:92,0
+DA:95,6
+DA:100,0
+DA:101,0
+DA:102,0
+DA:103,0
+DA:104,0
+DA:106,0
+DA:114,11
+DA:115,3
+DA:118,2
+DA:119,2
+DA:128,2
+DA:129,2
+DA:132,1
+DA:133,1
+DA:144,5
+DA:147,3
+DA:149,5
+DA:156,0
+DA:157,0
+DA:158,0
+DA:159,0
+DA:160,0
+DA:162,0
+DA:164,0
+DA:168,5
+DA:170,5
+DA:173,3
+DA:174,3
+DA:175,0
+DA:177,3
+DA:179,3
+DA:181,0
+DA:182,0
+DA:185,3
+DA:186,3
+DA:189,6
+DA:284,3
+DA:285,3
+DA:286,3
+DA:316,2
+DA:317,2
+DA:318,0
+DA:319,0
+DA:326,2
+DA:332,3
+DA:333,3
+DA:334,0
+DA:335,0
+DA:337,3
+DA:340,2
+DA:341,2
+DA:342,2
+DA:345,3
+DA:346,3
+DA:347,3
+DA:348,3
+DA:351,3
+DA:354,3
+DA:355,3
+DA:356,2
+DA:358,1
+DA:361,2
+DA:363,2
+DA:366,3
+DA:368,3
+DA:371,8
+DA:372,8
+DA:392,3
+DA:393,3
+DA:394,3
+DA:395,3
+DA:396,3
+DA:398,3
+DA:399,2
+DA:401,3
+BA:84,1
+BA:84,2
+BA:84,0
+BA:84,0
+BA:84,0
+BA:84,0
+BA:95,1
+BA:95,2
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:102,0
+BA:102,0
+BA:102,0
+BA:102,0
+BA:114,1
+BA:114,2
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,1
+BA:114,2
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,1
+BA:114,2
+BA:114,0
+BA:114,0
+BA:114,0
+BA:114,0
+BA:157,0
+BA:157,0
+BA:157,0
+BA:157,0
+BA:157,0
+BA:157,0
+BA:158,0
+BA:158,0
+BA:158,0
+BA:158,0
+BA:158,0
+BA:158,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:174,1
+BA:174,2
+BA:174,1
+BA:174,2
+BA:174,0
+BA:174,0
+BA:177,2
+BA:177,1
+BA:177,2
+BA:177,1
+BA:177,0
+BA:177,0
+BA:189,1
+BA:189,2
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,1
+BA:189,2
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,1
+BA:189,2
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:317,1
+BA:317,2
+BA:326,2
+BA:326,1
+BA:333,1
+BA:333,2
+BA:346,2
+BA:346,1
+BA:355,2
+BA:355,2
+BA:393,1
+BA:393,2
+BA:394,2
+BA:394,1
+BA:395,1
+BA:395,2
+BA:396,2
+BA:396,2
+BA:398,2
+BA:398,2
+BA:399,1
+BA:399,2
+LF:80
+LH:59
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/maybe.h
+FN:30,_ZN6wibble5MaybeIiEC1EbRKi
+FN:34,_ZN6wibble5MaybeIiE7NothingERKi
+FN:33,_ZN6wibble5MaybeIiE4JustERKi
+FN:27,_ZNK6wibble5MaybeIiE7nothingEv
+FN:29,_ZNK6wibble5MaybeIiE5valueEv
+FN:38,_ZNK6wibble5MaybeIiEleERKS1_
+FN:36,_ZNK6wibble5MaybeIiEcviEv
+DA:27,10
+DA:29,8
+DA:30,6
+DA:33,4
+DA:34,2
+DA:35,2
+DA:36,0
+DA:38,6
+DA:39,6
+DA:40,2
+DA:41,4
+DA:42,0
+DA:43,4
+BA:39,2
+BA:39,2
+BA:41,1
+BA:41,2
+LF:13
+LH:11
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/mixin.h
+FN:13,_ZN6wibble5mixin10ComparableINS_5MaybeIiEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_5MorphIN12_GLOBAL__N_16TMorphINS3_2T1EEES5_NS3_10TInterfaceEEEEC2Ev
+FN:15,_ZNK6wibble5mixin10ComparableINS_5MaybeIiEEE7cmpSelfEv
+FN:13,_ZN6wibble5mixin10ComparableINS_5MorphIN12_GLOBAL__N_16TMorphINS3_2T2EEES5_NS3_10TInterfaceEEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableINS_5MorphIN12_GLOBAL__N_16TMorphINS3_2T3EEES5_NS3_10TInterfaceEEEEC2Ev
+FN:23,_ZNK6wibble5mixin10ComparableINS_5MaybeIiEEEeqERKS3_
+DA:13,9
+DA:15,6
+DA:16,6
+DA:23,3
+DA:24,3
+BA:24,2
+BA:24,1
+BA:24,2
+BA:24,1
+LF:5
+LH:5
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:52,_ZlsIiER12AssertFailedS1_T_
+FN:52,_ZlsIN6wibble5MaybeIiEEER12AssertFailedS4_T_
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:67,_Z12assert_eq_fnIiiEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnIN6wibble5MaybeIiEES2_Ev8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:67,3
+DA:69,3
+DA:70,0
+DA:71,0
+DA:75,3
+BA:42,0
+BA:42,0
+BA:69,0
+BA:69,0
+BA:69,1
+BA:69,2
+LF:22
+LH:3
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/amorph.test.h
+FN:34,_ZNK12_GLOBAL__N_12T15valueEv
+FN:35,_ZNK12_GLOBAL__N_12T1leERKS0_
+FN:42,_ZNK12_GLOBAL__N_12T35valueEv
+FN:46,_ZNK12_GLOBAL__N_12T25valueEv
+FN:47,_ZNK12_GLOBAL__N_12T2leERKS0_
+FN:55,_ZN12_GLOBAL__N_114ExtractT1ValueclERKNS_2T1E
+FN:41,_ZN12_GLOBAL__N_12T1C2Ev
+FN:33,_ZN12_GLOBAL__N_12T1C1Ev
+FN:45,_ZN12_GLOBAL__N_12T2C1Ev
+FN:41,_ZN12_GLOBAL__N_12T3C1Ev
+FN:41,_ZN12_GLOBAL__N_12T1C2ERKS0_
+FN:33,_ZN12_GLOBAL__N_12T1C1ERKS0_
+FN:45,_ZN12_GLOBAL__N_12T2C1ERKS0_
+FN:41,_ZN12_GLOBAL__N_12T3C1ERKS0_
+FN:28,_ZN12_GLOBAL__N_11T5valueEv
+FN:9,_ZN12_GLOBAL__N_110TInterfaceC2ERKS0_
+FN:15,_ZN12_GLOBAL__N_16TMorphINS_2T1EEC1ERKS2_
+FN:15,_ZN12_GLOBAL__N_16TMorphINS_2T2EEC1ERKS2_
+FN:15,_ZN12_GLOBAL__N_16TMorphINS_2T3EEC1ERKS2_
+FN:24,_ZN12_GLOBAL__N_11TC1ERKN6wibble14MorphInterfaceINS_10TInterfaceEEE
+FN:23,_ZN12_GLOBAL__N_11TD1Ev
+FN:9,_ZN12_GLOBAL__N_110TInterfaceC2Ev
+FN:17,_ZN12_GLOBAL__N_16TMorphINS_2T1EEC1ERKS1_
+FN:61,_ZN12_GLOBAL__N_19testMorphINS_2T1EEENS_6TMorphIT_EES3_
+FN:17,_ZN12_GLOBAL__N_16TMorphINS_2T2EEC1ERKS1_
+FN:61,_ZN12_GLOBAL__N_19testMorphINS_2T2EEENS_6TMorphIT_EES3_
+FN:17,_ZN12_GLOBAL__N_16TMorphINS_2T3EEC1ERKS1_
+FN:61,_ZN12_GLOBAL__N_19testMorphINS_2T3EEENS_6TMorphIT_EES3_
+FN:19,_ZN12_GLOBAL__N_16TMorphINS_2T3EE5valueEv
+FN:19,_ZN12_GLOBAL__N_16TMorphINS_2T2EE5valueEv
+FN:19,_ZN12_GLOBAL__N_16TMorphINS_2T1EE5valueEv
+FN:23,_ZN12_GLOBAL__N_11TaSERKS0_
+FN:41,_ZN12_GLOBAL__N_12T1D2Ev
+FN:41,_ZN12_GLOBAL__N_12T3D1Ev
+FN:33,_ZN12_GLOBAL__N_12T1D1Ev
+FN:15,_ZN12_GLOBAL__N_16TMorphINS_2T3EED1Ev
+FN:45,_ZN12_GLOBAL__N_12T2D1Ev
+FN:15,_ZN12_GLOBAL__N_16TMorphINS_2T2EED1Ev
+FN:15,_ZN12_GLOBAL__N_16TMorphINS_2T1EED1Ev
+FN:66,_ZN12_GLOBAL__N_110TestAmorph5basicEv
+DA:9,8
+DA:15,11
+DA:17,3
+DA:19,3
+DA:23,5
+DA:24,3
+DA:25,3
+DA:28,3
+DA:29,3
+DA:33,17
+DA:34,2
+DA:35,0
+DA:36,0
+DA:41,20
+DA:42,2
+DA:45,9
+DA:46,1
+DA:47,0
+DA:48,0
+DA:55,2
+DA:56,2
+DA:61,3
+DA:62,3
+DA:66,1
+DA:68,1
+DA:69,1
+DA:70,1
+DA:71,1
+DA:72,2
+DA:73,2
+DA:74,2
+DA:75,2
+DA:76,2
+DA:77,2
+DA:78,2
+DA:79,2
+DA:80,1
+BA:15,2
+BA:15,1
+BA:15,1
+BA:15,2
+BA:15,2
+BA:15,1
+BA:15,1
+BA:15,2
+BA:15,0
+BA:15,0
+BA:15,1
+BA:15,2
+BA:33,1
+BA:33,2
+BA:33,0
+BA:33,0
+BA:33,1
+BA:33,2
+BA:41,1
+BA:41,2
+BA:41,0
+BA:41,0
+BA:45,1
+BA:45,2
+BA:45,0
+BA:45,0
+LF:37
+LH:33
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_amorph.cpp
+FN:3,_Z41__static_initialization_and_destruction_0ii
+FN:3,_GLOBAL__I__Z16run_Amorph_basicv
+FN:3,_ZN12_GLOBAL__N_12T3D0Ev
+FN:3,_ZN12_GLOBAL__N_12T1D0Ev
+FN:3,_ZN12_GLOBAL__N_16TMorphINS_2T3EED0Ev
+FN:3,_ZN6wibble9MorphBaseIN12_GLOBAL__N_12T3ENS1_10TInterfaceEED0Ev
+FN:3,_ZN6wibble9MorphBaseIN12_GLOBAL__N_12T3ENS1_10TInterfaceEED1Ev
+FN:3,_ZN12_GLOBAL__N_16TMorphINS_2T2EED0Ev
+FN:3,_ZN6wibble9MorphBaseIN12_GLOBAL__N_12T2ENS1_10TInterfaceEED0Ev
+FN:3,_ZN6wibble9MorphBaseIN12_GLOBAL__N_12T2ENS1_10TInterfaceEED1Ev
+FN:3,_ZN12_GLOBAL__N_12T2D0Ev
+FN:3,_ZN12_GLOBAL__N_16TMorphINS_2T1EED0Ev
+FN:3,_ZN6wibble9MorphBaseIN12_GLOBAL__N_12T1ENS1_10TInterfaceEED0Ev
+FN:3,_ZN6wibble9MorphBaseIN12_GLOBAL__N_12T1ENS1_10TInterfaceEED1Ev
+FN:3,_Z16run_Amorph_basicv
+DA:3,7
+BA:3,2
+BA:3,1
+BA:3,2
+BA:3,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:51
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:166,0
+DA:167,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+DA:69,0
+DA:71,0
+DA:76,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/typeinfo
+FN:122,_ZNKSt9type_info6beforeERKS_
+DA:122,0
+DA:123,0
+LF:2
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:52,_ZlsIiER12AssertFailedS1_T_
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:67,_Z12assert_eq_fnIiiEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:75,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+LF:26
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.test.h
+FN:27,_ZN12_GLOBAL__N_19TestTests10assertionsEv
+DA:27,1
+DA:28,1
+DA:29,2
+DA:30,1
+LF:4
+LH:4
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_test.cpp
+FN:3,_Z41__static_initialization_and_destruction_0ii
+FN:3,_GLOBAL__I__Z20run_Tests_assertionsv
+FN:3,_Z20run_Tests_assertionsv
+DA:3,4
+BA:3,2
+BA:3,1
+BA:3,2
+BA:3,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:51
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:166,0
+DA:167,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+DA:69,0
+DA:71,0
+DA:76,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/commandline/core.h
+FN:21,_ZNK6wibble9exception9BadOption4typeEv
+FN:52,_ZN6wibble11commandline7ManagedC2Ev
+FN:63,_ZN6wibble11commandline13MemoryManagerC1Ev
+FN:30,_ZN6wibble11commandline7ArgListC1Ev
+FN:54,_ZN6wibble11commandline7ManagedD2Ev
+FN:54,_ZN6wibble11commandline7ManagedD0Ev
+FN:54,_ZN6wibble11commandline7ManagedD1Ev
+FN:66,_ZN6wibble11commandline13MemoryManager10addManagedEPNS0_7ManagedE
+FN:76,_ZN6wibble11commandline13MemoryManager3addINS0_11OptionGroupEEEPT_S5_
+FN:76,_ZN6wibble11commandline13MemoryManager3addINS0_10BoolOptionEEEPT_S5_
+FN:76,_ZN6wibble11commandline13MemoryManager3addINS0_9IntOptionEEEPT_S5_
+FN:76,_ZN6wibble11commandline13MemoryManager3addINS0_12SingleOptionINS0_6StringEEEEEPT_S7_
+FN:76,_ZN6wibble11commandline13MemoryManager3addINS0_6EngineEEEPT_S5_
+FN:22,_ZNK6wibble9exception9BadOption4descEv
+FN:17,_ZN6wibble9exception9BadOptionC1ERKSsS3_
+FN:19,_ZN6wibble9exception9BadOptionD0Ev
+FN:34,_ZN6wibble11commandline7ArgList15eraseAndAdvanceERSt14_List_iteratorISsE
+FN:30,_ZN6wibble11commandline7ArgListD1Ev
+FN:19,_ZN6wibble9exception9BadOptionD1Ev
+FN:68,_ZN6wibble11commandline13MemoryManagerD1Ev
+DA:17,0
+DA:18,0
+DA:19,0
+DA:21,0
+DA:22,0
+DA:30,22
+DA:34,23
+DA:36,23
+DA:37,0
+DA:38,23
+DA:39,23
+DA:40,23
+DA:41,23
+DA:42,23
+DA:52,61
+DA:54,61
+DA:63,10
+DA:66,46
+DA:68,10
+DA:70,56
+DA:72,46
+DA:73,10
+DA:76,46
+BA:19,0
+BA:19,0
+BA:19,0
+BA:19,0
+BA:36,1
+BA:36,2
+BA:54,1
+BA:54,2
+BA:54,0
+BA:54,0
+BA:54,0
+BA:54,0
+BA:70,2
+BA:70,2
+BA:72,2
+BA:72,1
+LF:23
+LH:17
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/commandline/engine.h
+FN:214,_ZNK6wibble11commandline6Engine12foundCommandEv
+FN:150,_ZN6wibble11commandline6Engine11createGroupERKSs
+FN:160,_ZN6wibble11commandline6Engine8addGroupERKSs
+FN:89,_ZN6wibble11commandline6Engine9parseListERNS0_7ArgListE
+FN:39,_ZN6wibble11commandline6EngineD2Ev
+FN:39,_ZN6wibble11commandline6EngineD0Ev
+FN:39,_ZN6wibble11commandline6EngineD1Ev
+FN:101,_ZN6wibble11commandline6EngineC2EPNS0_13MemoryManagerERKSsS5_S5_S5_
+FN:125,_ZN6wibble11commandline6Engine6createINS0_10BoolOptionEEEPT_RKSscS7_S7_S7_
+FN:140,_ZN6wibble11commandline6Engine3addINS0_10BoolOptionEEEPT_RKSscS7_S7_S7_
+FN:125,_ZN6wibble11commandline6Engine6createINS0_9IntOptionEEEPT_RKSscS7_S7_S7_
+FN:140,_ZN6wibble11commandline6Engine3addINS0_9IntOptionEEEPT_RKSscS7_S7_S7_
+FN:125,_ZN6wibble11commandline6Engine6createINS0_12SingleOptionINS0_6StringEEEEEPT_RKSscS9_S9_S9_
+FN:140,_ZN6wibble11commandline6Engine3addINS0_12SingleOptionINS0_6StringEEEEEPT_RKSscS9_S9_S9_
+FN:101,_ZN6wibble11commandline6EngineC1EPNS0_13MemoryManagerERKSsS5_S5_S5_
+FN:171,_ZN6wibble11commandline6Engine12createEngineERKSsS3_S3_S3_
+FN:184,_ZN6wibble11commandline6Engine9addEngineERKSsS3_S3_S3_
+DA:39,18
+DA:89,9
+DA:101,18
+DA:103,18
+DA:125,28
+DA:127,28
+DA:128,56
+DA:129,28
+DA:140,28
+DA:142,28
+DA:143,28
+DA:144,28
+DA:150,3
+DA:152,3
+DA:153,6
+DA:154,3
+DA:160,3
+DA:162,3
+DA:171,8
+DA:173,8
+DA:174,16
+DA:175,8
+DA:184,8
+DA:186,8
+DA:214,3
+BA:39,1
+BA:39,2
+BA:39,2
+BA:39,1
+BA:39,0
+BA:39,0
+BA:128,2
+BA:128,1
+BA:128,2
+BA:128,1
+BA:128,2
+BA:128,1
+BA:153,2
+BA:153,1
+BA:174,2
+BA:174,1
+LF:25
+LH:25
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/commandline/options.h
+FN:135,_ZN6wibble11commandline10BoolOption5parseERNS0_7ArgListESt14_List_iteratorISsE
+FN:136,_ZN6wibble11commandline10BoolOption5parseERKSs
+FN:139,_ZNK6wibble11commandline10BoolOption9boolValueEv
+FN:287,_ZN6wibble11commandline11OptionGroupC1EPNS0_13MemoryManagerERKSs
+FN:291,_ZN6wibble11commandline11OptionGroup3addEPNS0_6OptionE
+FN:177,_ZN6wibble11commandline12SingleOptionINS0_3IntEE5parseERKSs
+FN:193,_ZNK6wibble11commandline12SingleOptionINS0_3IntEE8intValueEv
+FN:194,_ZNK6wibble11commandline12SingleOptionINS0_6StringEE11stringValueEv
+FN:283,_ZN6wibble11commandline11OptionGroupD0Ev
+FN:283,_ZN6wibble11commandline11OptionGroupD1Ev
+FN:95,_ZN6wibble11commandline6OptionD2Ev
+FN:122,_ZN6wibble11commandline10BoolOptionD0Ev
+FN:122,_ZN6wibble11commandline10BoolOptionD1Ev
+FN:148,_ZN6wibble11commandline12SingleOptionINS0_3IntEED2Ev
+FN:205,_ZN6wibble11commandline9IntOptionD0Ev
+FN:205,_ZN6wibble11commandline9IntOptionD1Ev
+FN:148,_ZN6wibble11commandline12SingleOptionINS0_3IntEED0Ev
+FN:148,_ZN6wibble11commandline12SingleOptionINS0_3IntEED1Ev
+FN:95,_ZN6wibble11commandline6OptionD0Ev
+FN:95,_ZN6wibble11commandline6OptionD1Ev
+FN:101,_ZN6wibble11commandline6Option8addAliasERKSs
+FN:64,_ZN6wibble11commandline6OptionC2ERKSscS3_S3_S3_
+FN:132,_ZN6wibble11commandline10BoolOptionC1ERKSscS3_S3_S3_
+FN:308,_ZN6wibble11commandline11OptionGroup6createINS0_10BoolOptionEEEPT_RKSscS7_S7_S7_
+FN:323,_ZN6wibble11commandline11OptionGroup3addINS0_10BoolOptionEEEPT_RKSscS7_S7_S7_
+FN:161,_ZN6wibble11commandline12SingleOptionINS0_3IntEEC2ERKSscS5_S5_S5_
+FN:215,_ZN6wibble11commandline9IntOptionC1ERKSscS3_S3_S3_
+FN:308,_ZN6wibble11commandline11OptionGroup6createINS0_9IntOptionEEEPT_RKSscS7_S7_S7_
+FN:323,_ZN6wibble11commandline11OptionGroup3addINS0_9IntOptionEEEPT_RKSscS7_S7_S7_
+FN:168,_ZN6wibble11commandline12SingleOptionINS0_3IntEE5parseERNS0_7ArgListESt14_List_iteratorISsE
+FN:161,_ZN6wibble11commandline12SingleOptionINS0_6StringEEC1ERKSscS5_S5_S5_
+FN:308,_ZN6wibble11commandline11OptionGroup6createINS0_12SingleOptionINS0_6StringEEEEEPT_RKSscS9_S9_S9_
+FN:323,_ZN6wibble11commandline11OptionGroup3addINS0_12SingleOptionINS0_6StringEEEEEPT_RKSscS9_S9_S9_
+FN:177,_ZN6wibble11commandline12SingleOptionINS0_6StringEE5parseERKSs
+FN:168,_ZN6wibble11commandline12SingleOptionINS0_6StringEE5parseERNS0_7ArgListESt14_List_iteratorISsE
+FN:148,_ZN6wibble11commandline12SingleOptionINS0_6StringEED0Ev
+FN:148,_ZN6wibble11commandline12SingleOptionINS0_6StringEED1Ev
+FN:192,_ZNK6wibble11commandline12SingleOptionINS0_6StringEE9boolValueEv
+DA:64,35
+DA:65,35
+DA:67,35
+DA:68,21
+DA:69,35
+DA:70,35
+DA:71,35
+DA:95,40
+DA:101,5
+DA:122,19
+DA:132,19
+DA:133,19
+DA:135,4
+DA:136,7
+DA:139,18
+DA:148,17
+DA:161,16
+DA:162,16
+DA:164,16
+DA:165,11
+DA:166,16
+DA:168,2
+DA:170,2
+DA:171,0
+DA:172,2
+DA:173,2
+DA:175,2
+DA:177,9
+DA:179,9
+DA:180,9
+DA:181,9
+DA:192,4
+DA:193,4
+DA:194,13
+DA:205,2
+DA:215,2
+DA:216,2
+DA:218,2
+DA:219,2
+DA:283,3
+DA:287,3
+DA:288,3
+DA:291,7
+DA:308,7
+DA:310,7
+DA:311,14
+DA:312,7
+DA:323,7
+DA:325,7
+DA:326,7
+DA:327,7
+BA:67,2
+BA:67,2
+BA:69,2
+BA:69,1
+BA:95,1
+BA:95,2
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:122,2
+BA:122,1
+BA:122,0
+BA:122,0
+BA:148,1
+BA:148,2
+BA:148,0
+BA:148,0
+BA:148,0
+BA:148,0
+BA:148,2
+BA:148,1
+BA:148,0
+BA:148,0
+BA:164,1
+BA:164,2
+BA:164,2
+BA:164,2
+BA:170,0
+BA:170,0
+BA:170,1
+BA:170,2
+BA:205,2
+BA:205,1
+BA:205,0
+BA:205,0
+BA:283,2
+BA:283,1
+BA:283,0
+BA:283,0
+BA:311,2
+BA:311,1
+BA:311,2
+BA:311,1
+BA:311,2
+BA:311,1
+LF:51
+LH:50
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:263,_ZNK6wibble9exception11Consistency4typeEv
+FN:109,_ZN6wibble9exception10AddContext7contextEv
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:265,_ZNK6wibble9exception11Consistency4descEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:117,_ZN6wibble9exception10AddContext11copyContextISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvT_
+FN:153,_ZN6wibble9exception7Context10addContextERKSs
+FN:147,_ZN6wibble9exception7ContextC2ERKSs
+FN:186,_ZN6wibble9exception7GenericC2ERKSs
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:259,_ZN6wibble9exception11ConsistencyC2ERKSsS3_
+FN:261,_ZN6wibble9exception11ConsistencyD0Ev
+FN:261,_ZN6wibble9exception11ConsistencyD1Ev
+FN:261,_ZN6wibble9exception11ConsistencyD2Ev
+DA:109,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:113,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:137,0
+DA:147,0
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:186,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:259,0
+DA:260,0
+DA:261,0
+DA:263,0
+DA:265,0
+DA:266,0
+DA:267,0
+DA:268,0
+DA:269,0
+BA:110,0
+BA:110,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:267,0
+BA:267,0
+LF:44
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:52,_ZlsIiER12AssertFailedS1_T_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:52,_ZlsIbER12AssertFailedS1_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:13,_ZN8LocationD1Ev
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:67,_Z12assert_eq_fnIjjEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnIbbEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnIiiEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsPKcEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsSsEv8LocationT_T0_
+FN:52,_ZlsIPN6wibble11commandline6EngineEER12AssertFailedS5_T_
+FN:67,_Z12assert_eq_fnIPN6wibble11commandline6EngineES3_Ev8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,64
+DA:69,64
+DA:70,0
+DA:71,0
+DA:75,64
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+BA:69,1
+BA:69,2
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,1
+BA:69,2
+LF:26
+LH:3
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/commandline/engine.test.h
+FN:22,_ZN6PublicIN6wibble11commandline6EngineEE9parseListERNS1_7ArgListE
+FN:14,_ZN6PublicIN6wibble11commandline6EngineEED0Ev
+FN:14,_ZN6PublicIN6wibble11commandline6EngineEED1Ev
+FN:14,_ZN6PublicIN6wibble11commandline6EngineEED2Ev
+FN:19,_ZN6PublicIN6wibble11commandline6EngineEEC1EPNS1_13MemoryManagerERKSsS7_S7_S7_
+FN:19,_ZN6PublicIN6wibble11commandline6EngineEEC2EPNS1_13MemoryManagerERKSsS7_S7_S7_
+FN:205,_ZN21TestCommandlineEngine17creationShortcutsEv
+FN:47,_ZN7Engine2D0Ev
+FN:47,_ZN7Engine2D1Ev
+FN:34,_ZN7Engine1C1Ev
+FN:30,_ZN7Engine1D0Ev
+FN:30,_ZN7Engine1D1Ev
+FN:134,_ZN21TestCommandlineEngine16longOptsWithArgsEv
+FN:106,_ZN21TestCommandlineEngine18clusteredShortOptsEv
+FN:75,_ZN21TestCommandlineEngine11optsAndArgsEv
+FN:51,_ZN7Engine2C1Ev
+FN:188,_ZN21TestCommandlineEngine22commandsWithoutCommandEv
+FN:168,_ZN21TestCommandlineEngine27commandsWithOverlappingArgsEv
+FN:149,_ZN21TestCommandlineEngine14commandWithArgEv
+FN:119,_ZN21TestCommandlineEngine18longOptsWithDashesEv
+FN:92,_ZN21TestCommandlineEngine8optsOnlyEv
+DA:14,9
+DA:19,9
+DA:20,9
+DA:22,9
+DA:30,5
+DA:34,5
+DA:36,5
+DA:37,5
+DA:39,5
+DA:40,5
+DA:47,3
+DA:51,3
+DA:53,3
+DA:55,3
+DA:56,3
+DA:57,3
+DA:58,3
+DA:60,6
+DA:61,3
+DA:62,3
+DA:63,3
+DA:75,1
+DA:76,1
+DA:77,1
+DA:78,2
+DA:79,2
+DA:80,2
+DA:82,1
+DA:83,1
+DA:84,1
+DA:85,2
+DA:86,2
+DA:87,2
+DA:88,2
+DA:89,2
+DA:90,1
+DA:92,1
+DA:93,1
+DA:94,1
+DA:95,2
+DA:97,1
+DA:98,1
+DA:99,1
+DA:100,2
+DA:101,2
+DA:102,2
+DA:103,2
+DA:104,1
+DA:106,1
+DA:107,1
+DA:108,1
+DA:109,2
+DA:111,1
+DA:112,1
+DA:113,1
+DA:114,2
+DA:115,2
+DA:116,2
+DA:117,1
+DA:119,1
+DA:120,1
+DA:121,1
+DA:122,2
+DA:124,1
+DA:125,1
+DA:126,1
+DA:127,2
+DA:128,2
+DA:129,2
+DA:130,2
+DA:131,1
+DA:134,1
+DA:135,1
+DA:136,1
+DA:137,2
+DA:138,2
+DA:140,1
+DA:141,1
+DA:142,1
+DA:143,2
+DA:144,2
+DA:145,2
+DA:146,2
+DA:147,1
+DA:149,1
+DA:150,1
+DA:151,1
+DA:152,2
+DA:153,2
+DA:155,1
+DA:156,1
+DA:157,1
+DA:158,2
+DA:159,2
+DA:160,2
+DA:161,1
+DA:162,2
+DA:163,1
+DA:164,2
+DA:165,1
+DA:168,1
+DA:169,1
+DA:170,1
+DA:171,2
+DA:172,2
+DA:173,2
+DA:175,1
+DA:176,1
+DA:177,1
+DA:178,2
+DA:179,2
+DA:180,2
+DA:181,1
+DA:182,2
+DA:183,1
+DA:184,2
+DA:185,1
+DA:188,1
+DA:189,1
+DA:190,1
+DA:192,1
+DA:193,1
+DA:194,1
+DA:195,2
+DA:196,2
+DA:197,2
+DA:198,1
+DA:199,2
+DA:200,1
+DA:201,2
+DA:202,1
+DA:205,1
+DA:206,1
+DA:207,1
+DA:208,2
+DA:209,2
+DA:210,2
+DA:211,2
+DA:212,2
+DA:213,2
+DA:214,2
+DA:216,1
+DA:217,1
+DA:218,2
+DA:219,2
+DA:220,2
+DA:221,2
+DA:222,2
+DA:224,1
+DA:225,1
+DA:226,2
+DA:227,2
+DA:228,2
+DA:229,2
+DA:230,1
+DA:231,2
+DA:232,2
+DA:233,1
+BA:14,0
+BA:14,0
+BA:14,1
+BA:14,2
+BA:14,1
+BA:14,2
+BA:30,0
+BA:30,0
+BA:30,1
+BA:30,2
+BA:47,0
+BA:47,0
+BA:47,1
+BA:47,2
+LF:158
+LH:158
+end_of_record
+SF:/srv/build/pkg/ept-work/default/wibble/wibble-test-generated-_home_mornfall_dev_pkg_ept-work_wibble_commandline_engine.cpp
+FN:11,_Z41__static_initialization_and_destruction_0ii
+FN:11,_GLOBAL__I__Z33run_CommandlineEngine_optsAndArgsv
+FN:11,_Z39run_CommandlineEngine_creationShortcutsv
+FN:7,_Z38run_CommandlineEngine_longOptsWithArgsv
+FN:5,_Z40run_CommandlineEngine_clusteredShortOptsv
+FN:3,_Z33run_CommandlineEngine_optsAndArgsv
+FN:10,_Z44run_CommandlineEngine_commandsWithoutCommandv
+FN:9,_Z49run_CommandlineEngine_commandsWithOverlappingArgsv
+FN:8,_Z36run_CommandlineEngine_commandWithArgv
+FN:6,_Z40run_CommandlineEngine_longOptsWithDashesv
+FN:4,_Z30run_CommandlineEngine_optsOnlyv
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,1
+DA:7,1
+DA:8,1
+DA:9,1
+DA:10,1
+DA:11,4
+BA:11,2
+BA:11,1
+BA:11,2
+BA:11,1
+LF:9
+LH:9
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC2Ev
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeIPN6wibble11commandline7ManagedEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKcPN6wibble11commandline6OptionEEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6OptionEEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6EngineEEEED2Ev
+FN:106,_ZNSaISt10_List_nodeISsEED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:106,_ZNSaISsED1Ev
+FN:106,_ZNSaIPN6wibble11commandline6OptionEED2Ev
+FN:106,_ZNSaIPN6wibble11commandline11OptionGroupEED2Ev
+FN:106,_ZNSaIPN6wibble11commandline6EngineEED2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:104,_ZNSaISsEC1ISt10_List_nodeISsEEERKSaIT_E
+FN:106,_ZNSaIPN6wibble11commandline7ManagedEED1Ev
+FN:98,_ZNSaIPN6wibble11commandline6OptionEEC2Ev
+FN:98,_ZNSaIPN6wibble11commandline11OptionGroupEEC2Ev
+FN:98,_ZNSaIPN6wibble11commandline6EngineEEC2Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKcPN6wibble11commandline6OptionEEEEC2Ev
+FN:106,_ZNSaISt4pairIKcPN6wibble11commandline6OptionEEED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6OptionEEEEC2Ev
+FN:106,_ZNSaISt4pairIKSsPN6wibble11commandline6OptionEEED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6EngineEEEEC2Ev
+FN:106,_ZNSaISt4pairIKSsPN6wibble11commandline6EngineEEED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeIPN6wibble11commandline7ManagedEEEC2Ev
+FN:98,_ZNSaISt10_List_nodeISsEEC2Ev
+FN:104,_ZNSaIPN6wibble11commandline7ManagedEEC1ISt13_Rb_tree_nodeIS2_EEERKSaIT_E
+FN:104,_ZNSaISt4pairIKcPN6wibble11commandline6OptionEEEC1ISt13_Rb_tree_nodeIS5_EEERKSaIT_E
+FN:104,_ZNSaISt4pairIKSsPN6wibble11commandline6OptionEEEC1ISt13_Rb_tree_nodeIS5_EEERKSaIT_E
+FN:104,_ZNSaISt4pairIKSsPN6wibble11commandline6EngineEEEC1ISt13_Rb_tree_nodeIS5_EEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,132
+DA:100,0
+DA:101,0
+DA:104,256
+DA:106,444
+DA:118,0
+DA:119,0
+LF:7
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:501,_ZNSsaSERKSs
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:835,_ZNSs6appendEPKc
+FN:928,_ZNSs6assignEPKc
+FN:509,_ZNSsaSEPKc
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:509,0
+DA:510,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:928,0
+DA:931,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2162,0
+DA:2165,0
+DA:2188,0
+DA:2189,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:75
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/list.tcc
+FN:109,_ZNSt4listISsSaISsEE5eraseESt14_List_iteratorISsE
+FN:70,_ZNSt10_List_baseISsSaISsEE8_M_clearEv
+DA:70,11
+DA:73,11
+DA:74,27
+DA:76,5
+DA:77,5
+DA:78,5
+DA:79,5
+DA:81,11
+DA:109,25
+DA:111,25
+DA:112,25
+BA:74,2
+BA:74,2
+LF:11
+LH:11
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:286,_ZNSt12__miter_baseIPcLb0EE3__bES0_
+FN:286,_ZNSt12__miter_baseIPPN6wibble11commandline6OptionELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:268,_ZNSt12__niter_baseIPcLb0EE3__bES0_
+FN:268,_ZNSt12__niter_baseIPPN6wibble11commandline6OptionELb0EE3__bES4_
+FN:569,_ZNSt20__copy_move_backwardILb0ELb1ESt26random_access_iterator_tagE13__copy_move_bIcEEPT_PKS3_S6_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPcS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPcS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPcS0_ET0_T_S2_S1_
+FN:375,_ZNSt11__copy_moveILb0ELb1ESt26random_access_iterator_tagE8__copy_mIcEEPT_PKS3_S6_S4_
+FN:385,_ZSt13__copy_move_aILb0EPcS0_ET1_T0_S2_S1_
+FN:430,_ZSt14__copy_move_a2ILb0EPcS0_ET1_T0_S2_S1_
+FN:456,_ZSt4copyIPcS0_ET0_T_S2_S1_
+FN:569,_ZNSt20__copy_move_backwardILb0ELb1ESt26random_access_iterator_tagE13__copy_move_bIPN6wibble11commandline6OptionEEEPT_PKS7_SA_S8_
+FN:579,_ZSt22__copy_move_backward_aILb0EPPN6wibble11commandline6OptionES4_ET1_T0_S6_S5_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPPN6wibble11commandline6OptionES4_ET1_T0_S6_S5_
+FN:624,_ZSt13copy_backwardIPPN6wibble11commandline6OptionES4_ET0_T_S6_S5_
+FN:375,_ZNSt11__copy_moveILb0ELb1ESt26random_access_iterator_tagE8__copy_mIPN6wibble11commandline6OptionEEEPT_PKS7_SA_S8_
+FN:385,_ZSt13__copy_move_aILb0EPPN6wibble11commandline6OptionES4_ET1_T0_S6_S5_
+FN:430,_ZSt14__copy_move_a2ILb0EPPN6wibble11commandline6OptionES4_ET1_T0_S6_S5_
+FN:456,_ZSt4copyIPPN6wibble11commandline6OptionES4_ET0_T_S6_S5_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET0_T_SA_S9_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,1336
+DA:269,1336
+DA:276,0
+DA:277,0
+DA:286,1222
+DA:287,1222
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:375,114
+DA:377,114
+DA:379,114
+DA:385,114
+DA:393,114
+DA:396,114
+DA:430,114
+DA:435,114
+DA:456,114
+DA:466,114
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:569,0
+DA:571,0
+DA:572,0
+DA:573,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+LF:41
+LH:14
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:97,_ZSt8_DestroyIPcEvT_S1_
+FN:126,_ZSt8_DestroyIPccEvT_S1_RSaIT0_E
+FN:97,_ZSt8_DestroyIPPN6wibble11commandline6OptionEEvT_S5_
+FN:126,_ZSt8_DestroyIPPN6wibble11commandline6OptionES3_EvT_S5_RSaIT0_E
+FN:97,_ZSt8_DestroyIPPN6wibble11commandline11OptionGroupEEvT_S5_
+FN:126,_ZSt8_DestroyIPPN6wibble11commandline11OptionGroupES3_EvT_S5_RSaIT0_E
+FN:97,_ZSt8_DestroyIPPN6wibble11commandline6EngineEEvT_S5_
+FN:126,_ZSt8_DestroyIPPN6wibble11commandline6EngineES3_EvT_S5_RSaIT0_E
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,165
+DA:101,0
+DA:103,0
+DA:104,165
+DA:126,165
+DA:128,165
+DA:129,165
+BA:101,0
+BA:101,0
+LF:9
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:469,_ZNKSt9_IdentityIPN6wibble11commandline7ManagedEEclERKS3_
+FN:229,_ZNKSt4lessIPN6wibble11commandline7ManagedEEclERKS3_S6_
+DA:229,133
+DA:230,133
+DA:469,266
+DA:470,266
+LF:4
+LH:4
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:125,_ZNSt16reverse_iteratorISt14_List_iteratorISsEEC1ES1_
+FN:154,_ZNKSt16reverse_iteratorISt14_List_iteratorISsEEdeEv
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPcSt6vectorIcSaIcEEE4baseEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPcSt6vectorIcSaIcEEEdeEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPcSt6vectorIcSaIcEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPPN6wibble11commandline6OptionESt6vectorIS4_SaIS4_EEE4baseEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPPN6wibble11commandline6OptionESt6vectorIS4_SaIS4_EEEdeEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPPN6wibble11commandline6OptionESt6vectorIS4_SaIS4_EEEC1ERKS5_
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+DA:125,1
+DA:154,1
+DA:156,1
+DA:157,1
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:683,57
+DA:695,0
+DA:696,0
+DA:747,114
+DA:748,114
+DA:769,0
+DA:770,0
+LF:21
+LH:7
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:76,_ZSt10__distanceISt20_List_const_iteratorISsEENSt15iterator_traitsIT_E15difference_typeES3_S3_St18input_iterator_tag
+FN:115,_ZSt8distanceISt20_List_const_iteratorISsEENSt15iterator_traitsIT_E15difference_typeES3_S3_
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:76,13
+DA:81,13
+DA:82,37
+DA:84,11
+DA:85,11
+DA:87,13
+DA:93,0
+DA:98,0
+DA:115,13
+DA:119,13
+BA:82,2
+BA:82,2
+LF:10
+LH:8
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:111,_ZNSt8iteratorISt26bidirectional_iterator_tagSsiPSsRSsEC2Ev
+FN:166,_ZSt19__iterator_categoryISt20_List_const_iteratorISsEENSt15iterator_traitsIT_E17iterator_categoryERKS3_
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,1
+DA:166,13
+DA:167,13
+LF:3
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_list.h
+FN:169,_ZNKSt14_List_iteratorISsEeqERKS0_
+FN:139,_ZNSt14_List_iteratorISsEppEv
+FN:131,_ZNKSt14_List_iteratorISsEdeEv
+FN:126,_ZNSt14_List_iteratorISsEC1EPSt15_List_node_base
+FN:648,_ZNSt4listISsSaISsEE5beginEv
+FN:666,_ZNSt4listISsSaISsEE3endEv
+FN:684,_ZNSt4listISsSaISsEE6rbeginEv
+FN:154,_ZNSt14_List_iteratorISsEmmEv
+FN:364,_ZNSt10_List_baseISsSaISsEE7_M_initEv
+FN:298,_ZNSt10_List_baseISsSaISsEE10_List_implD1Ev
+FN:202,_ZNSt20_List_const_iteratorISsEC1EPKSt15_List_node_base
+FN:675,_ZNKSt4listISsSaISsEE3endEv
+FN:657,_ZNKSt4listISsSaISsEE5beginEv
+FN:328,_ZNKSt10_List_baseISsSaISsEE21_M_get_Node_allocatorEv
+FN:253,_ZNKSt20_List_const_iteratorISsEneERKS0_
+FN:219,_ZNSt20_List_const_iteratorISsEppEv
+FN:763,_ZNKSt4listISsSaISsEE4sizeEv
+FN:332,_ZNKSt10_List_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:301,_ZNSt10_List_baseISsSaISsEE10_List_implC1Ev
+FN:339,_ZNSt10_List_baseISsSaISsEEC2Ev
+FN:498,_ZNSt4listISsSaISsEEC2Ev
+FN:317,_ZNSt10_List_baseISsSaISsEE11_M_put_nodeEPSt10_List_nodeISsE
+FN:313,_ZNSt10_List_baseISsSaISsEE11_M_get_nodeEv
+FN:458,_ZNSt4listISsSaISsEE14_M_create_nodeERKSs
+FN:1339,_ZNSt4listISsSaISsEE9_M_insertESt14_List_iteratorISsERKSs
+FN:875,_ZNSt4listISsSaISsEE9push_backERKSs
+FN:1356,_ZNSt4listISsSaISsEE8_M_eraseESt14_List_iteratorISsE
+FN:357,_ZNSt10_List_baseISsSaISsEED2Ev
+FN:417,_ZNSt4listISsSaISsEED2Ev
+DA:126,177
+DA:127,177
+DA:131,84
+DA:132,84
+DA:139,47
+DA:141,47
+DA:142,47
+DA:154,1
+DA:156,1
+DA:157,1
+DA:169,67
+DA:170,67
+DA:202,26
+DA:203,26
+DA:219,11
+DA:221,11
+DA:222,11
+DA:253,24
+DA:254,24
+DA:298,11
+DA:301,11
+DA:302,11
+DA:303,11
+DA:313,30
+DA:314,30
+DA:317,30
+DA:318,30
+DA:328,60
+DA:329,60
+DA:332,60
+DA:333,60
+DA:339,11
+DA:340,11
+DA:341,11
+DA:357,11
+DA:358,11
+DA:364,11
+DA:366,11
+DA:367,11
+DA:368,11
+DA:417,11
+DA:458,30
+DA:460,30
+DA:463,30
+DA:465,0
+DA:467,0
+DA:468,0
+DA:470,30
+DA:498,11
+DA:499,11
+DA:648,21
+DA:649,21
+DA:657,13
+DA:658,13
+DA:666,131
+DA:667,131
+DA:675,13
+DA:676,13
+DA:684,1
+DA:685,1
+DA:763,13
+DA:764,13
+DA:875,30
+DA:876,30
+DA:1339,30
+DA:1341,30
+DA:1342,30
+DA:1343,30
+DA:1356,25
+DA:1358,25
+DA:1359,25
+DA:1360,25
+DA:1361,25
+DA:1362,25
+LF:74
+LH:71
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_map.h
+FN:155,_ZNSt3mapIcPN6wibble11commandline6OptionESt4lessIcESaISt4pairIKcS3_EEEC1Ev
+FN:155,_ZNSt3mapISsPN6wibble11commandline6OptionESt4lessISsESaISt4pairIKSsS3_EEEC1Ev
+FN:155,_ZNSt3mapISsPN6wibble11commandline6EngineESt4lessISsESaISt4pairIKSsS3_EEEC1Ev
+FN:92,_ZNSt3mapIcPN6wibble11commandline6OptionESt4lessIcESaISt4pairIKcS3_EEED1Ev
+FN:92,_ZNSt3mapISsPN6wibble11commandline6EngineESt4lessISsESaISt4pairIKSsS3_EEED1Ev
+FN:92,_ZNSt3mapISsPN6wibble11commandline6OptionESt4lessISsESaISt4pairIKSsS3_EEED1Ev
+DA:92,54
+DA:155,54
+DA:156,54
+LF:3
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorIPN6wibble11commandline7ManagedEEbEC1ERKS5_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIPN6wibble11commandline7ManagedEEbEC1ERKS5_RKb
+FN:73,_ZNSt4pairIKcPN6wibble11commandline6OptionEED1Ev
+FN:73,_ZNSt4pairIKSsPN6wibble11commandline6EngineEED1Ev
+FN:73,_ZNSt4pairIKSsPN6wibble11commandline6OptionEED1Ev
+DA:73,89
+DA:88,92
+DA:89,92
+LF:3
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:261,_ZNKSt3setIPN6wibble11commandline7ManagedESt4lessIS3_ESaIS3_EE5beginEv
+FN:270,_ZNKSt3setIPN6wibble11commandline7ManagedESt4lessIS3_ESaIS3_EE3endEv
+FN:141,_ZNSt3setIPN6wibble11commandline7ManagedESt4lessIS3_ESaIS3_EEC1Ev
+FN:93,_ZNSt3setIPN6wibble11commandline7ManagedESt4lessIS3_ESaIS3_EED1Ev
+FN:378,_ZNSt3setIPN6wibble11commandline7ManagedESt4lessIS3_ESaIS3_EE6insertERKS3_
+DA:93,10
+DA:141,10
+DA:142,10
+DA:261,10
+DA:262,10
+DA:270,56
+DA:271,56
+DA:378,46
+DA:381,46
+DA:382,46
+LF:10
+LH:10
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:289,_ZNKSt23_Rb_tree_const_iteratorIPN6wibble11commandline7ManagedEEneERKS4_
+FN:247,_ZNKSt23_Rb_tree_const_iteratorIPN6wibble11commandline7ManagedEEdeEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorIPN6wibble11commandline7ManagedEEC1ERKSt17_Rb_tree_iteratorIS3_E
+FN:452,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_beginEv
+FN:463,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE6_M_endEv
+FN:487,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:168,_ZNSt17_Rb_tree_iteratorIPN6wibble11commandline7ManagedEEC1EPSt13_Rb_tree_nodeIS3_E
+FN:596,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorIPN6wibble11commandline7ManagedEEeqERKS4_
+FN:398,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE13_Rb_tree_implIS7_Lb0EED1Ev
+FN:240,_ZNSt23_Rb_tree_const_iteratorIPN6wibble11commandline7ManagedEEC1EPKSt13_Rb_tree_nodeIS3_E
+FN:603,_ZNKSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE5beginEv
+FN:614,_ZNKSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE3endEv
+FN:398,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE13_Rb_tree_implISA_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE8_S_valueEPKSt13_Rb_tree_nodeIS3_E
+FN:475,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE6_S_keyEPKSt13_Rb_tree_nodeIS3_E
+FN:495,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:415,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE13_Rb_tree_implISA_Lb0EE13_M_initializeEv
+FN:415,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EE13_M_initializeEv
+FN:415,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EE13_M_initializeEv
+FN:415,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE13_Rb_tree_implIS7_Lb0EE13_M_initializeEv
+FN:347,_ZNKSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE21_M_get_Node_allocatorEv
+FN:403,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE13_Rb_tree_implISA_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EEC1Ev
+FN:347,_ZNKSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE21_M_get_Node_allocatorEv
+FN:403,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EEC1Ev
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE21_M_get_Node_allocatorEv
+FN:403,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EEC1Ev
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE21_M_get_Node_allocatorEv
+FN:403,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE13_Rb_tree_implIS7_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EEC1Ev
+FN:351,_ZNKSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13get_allocatorEv
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:360,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:388,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:936,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE8_M_eraseEPSt13_Rb_tree_nodeIS6_E
+FN:584,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EED1Ev
+FN:360,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS3_E
+FN:388,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS3_E
+FN:936,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE8_M_eraseEPSt13_Rb_tree_nodeIS3_E
+FN:584,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EED1Ev
+FN:195,_ZNSt17_Rb_tree_iteratorIPN6wibble11commandline7ManagedEEmmEv
+FN:356,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE14_M_create_nodeERKS3_
+FN:846,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE10_M_insert_EPKSt18_Rb_tree_node_baseSC_RKS3_
+FN:1133,_ZNSt8_Rb_treeIPN6wibble11commandline7ManagedES3_St9_IdentityIS3_ESt4lessIS3_ESaIS3_EE16_M_insert_uniqueERKS3_
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_eraseEPSt13_Rb_tree_nodeIS6_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EED1Ev
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_eraseEPSt13_Rb_tree_nodeIS6_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EED1Ev
+FN:255,_ZNSt23_Rb_tree_const_iteratorIPN6wibble11commandline7ManagedEEppEv
+DA:168,116
+DA:169,116
+DA:195,6
+DA:197,6
+DA:198,6
+DA:210,24
+DA:211,24
+DA:240,66
+DA:241,66
+DA:243,46
+DA:244,46
+DA:247,46
+DA:248,46
+DA:255,46
+DA:257,46
+DA:258,46
+DA:289,56
+DA:290,56
+DA:347,196
+DA:348,196
+DA:351,196
+DA:352,196
+DA:356,46
+DA:357,46
+DA:360,98
+DA:361,98
+DA:364,46
+DA:366,46
+DA:368,46
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,46
+DA:388,98
+DA:390,98
+DA:391,98
+DA:392,98
+DA:398,64
+DA:403,64
+DA:405,64
+DA:406,64
+DA:415,64
+DA:417,64
+DA:418,64
+DA:419,64
+DA:420,64
+DA:421,64
+DA:452,298
+DA:453,298
+DA:463,92
+DA:464,92
+DA:471,69
+DA:472,69
+DA:475,69
+DA:476,69
+DA:479,185
+DA:480,185
+DA:487,197
+DA:488,197
+DA:495,64
+DA:496,64
+DA:499,64
+DA:500,64
+DA:562,64
+DA:584,64
+DA:585,64
+DA:596,24
+DA:599,24
+DA:603,10
+DA:606,10
+DA:614,56
+DA:617,56
+DA:846,46
+DA:850,46
+DA:852,46
+DA:854,46
+DA:857,46
+DA:858,46
+DA:936,195
+DA:939,488
+DA:941,98
+DA:942,98
+DA:943,98
+DA:944,98
+DA:946,195
+DA:1133,46
+DA:1135,46
+DA:1136,46
+DA:1137,46
+DA:1138,161
+DA:1140,69
+DA:1141,69
+DA:1142,69
+DA:1144,46
+DA:1145,46
+DA:1147,24
+DA:1148,18
+DA:1150,6
+DA:1152,28
+DA:1153,28
+DA:1154,0
+BA:850,2
+BA:850,1
+BA:850,2
+BA:850,2
+BA:850,2
+BA:850,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:1138,2
+BA:1138,2
+BA:1142,2
+BA:1142,2
+BA:1145,2
+BA:1145,2
+BA:1147,2
+BA:1147,2
+BA:1152,2
+BA:1152,1
+LF:101
+LH:97
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:97,_ZNSt20__uninitialized_copyILb1EE18uninitialized_copyIPcS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPcS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPcS0_cET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPcS0_SaIcEET0_T_S3_S2_RT1_
+FN:97,_ZNSt20__uninitialized_copyILb1EE18uninitialized_copyIPPN6wibble11commandline6OptionES6_EET0_T_S8_S7_
+FN:113,_ZSt18uninitialized_copyIPPN6wibble11commandline6OptionES4_ET0_T_S6_S5_
+FN:261,_ZSt22__uninitialized_copy_aIPPN6wibble11commandline6OptionES4_S3_ET0_T_S6_S5_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPPN6wibble11commandline6OptionES4_SaIS3_EET0_T_S7_S6_RT1_
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:97,114
+DA:98,114
+DA:113,114
+DA:122,114
+DA:261,114
+DA:262,114
+DA:268,114
+DA:272,114
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+LF:16
+LH:8
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:79,_ZNSt12_Vector_baseIcSaIcEE12_Vector_implD1Ev
+FN:97,_ZNSt12_Vector_baseIcSaIcEE19_M_get_Tp_allocatorEv
+FN:97,_ZNSt12_Vector_baseIPN6wibble11commandline6OptionESaIS3_EE19_M_get_Tp_allocatorEv
+FN:97,_ZNSt12_Vector_baseIPN6wibble11commandline11OptionGroupESaIS3_EE19_M_get_Tp_allocatorEv
+FN:97,_ZNSt12_Vector_baseIPN6wibble11commandline6EngineESaIS3_EE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:84,_ZNSt12_Vector_baseIcSaIcEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIcSaIcEEC2Ev
+FN:213,_ZNSt6vectorIcSaIcEEC1Ev
+FN:395,_ZNSt6vectorIcSaIcEE3endEv
+FN:395,_ZNSt6vectorIPN6wibble11commandline6OptionESaIS3_EE3endEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:484,_ZNKSt6vectorIcSaIcEE4sizeEv
+FN:79,_ZNSt12_Vector_baseIPN6wibble11commandline6OptionESaIS3_EE12_Vector_implD1Ev
+FN:484,_ZNKSt6vectorIPN6wibble11commandline6OptionESaIS3_EE4sizeEv
+FN:79,_ZNSt12_Vector_baseIPN6wibble11commandline11OptionGroupESaIS3_EE12_Vector_implD1Ev
+FN:79,_ZNSt12_Vector_baseIPN6wibble11commandline6EngineESaIS3_EE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:101,_ZNKSt12_Vector_baseIcSaIcEE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorIcSaIcEE8max_sizeEv
+FN:84,_ZNSt12_Vector_baseIPN6wibble11commandline6OptionESaIS3_EE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIPN6wibble11commandline6OptionESaIS3_EEC2Ev
+FN:213,_ZNSt6vectorIPN6wibble11commandline6OptionESaIS3_EEC1Ev
+FN:101,_ZNKSt12_Vector_baseIPN6wibble11commandline6OptionESaIS3_EE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorIPN6wibble11commandline6OptionESaIS3_EE8max_sizeEv
+FN:84,_ZNSt12_Vector_baseIPN6wibble11commandline11OptionGroupESaIS3_EE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIPN6wibble11commandline11OptionGroupESaIS3_EEC2Ev
+FN:213,_ZNSt6vectorIPN6wibble11commandline11OptionGroupESaIS3_EEC1Ev
+FN:84,_ZNSt12_Vector_baseIPN6wibble11commandline6EngineESaIS3_EE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIPN6wibble11commandline6EngineESaIS3_EEC2Ev
+FN:213,_ZNSt6vectorIPN6wibble11commandline6EngineESaIS3_EEC1Ev
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:147,_ZNSt12_Vector_baseIPN6wibble11commandline6EngineESaIS3_EE13_M_deallocateEPS3_j
+FN:135,_ZNSt12_Vector_baseIPN6wibble11commandline6EngineESaIS3_EED2Ev
+FN:299,_ZNSt6vectorIPN6wibble11commandline6EngineESaIS3_EED1Ev
+FN:147,_ZNSt12_Vector_baseIPN6wibble11commandline6OptionESaIS3_EE13_M_deallocateEPS3_j
+FN:135,_ZNSt12_Vector_baseIPN6wibble11commandline6OptionESaIS3_EED2Ev
+FN:299,_ZNSt6vectorIPN6wibble11commandline6OptionESaIS3_EED1Ev
+FN:147,_ZNSt12_Vector_baseIPN6wibble11commandline11OptionGroupESaIS3_EE13_M_deallocateEPS3_j
+FN:135,_ZNSt12_Vector_baseIPN6wibble11commandline11OptionGroupESaIS3_EED2Ev
+FN:299,_ZNSt6vectorIPN6wibble11commandline11OptionGroupESaIS3_EED1Ev
+FN:147,_ZNSt12_Vector_baseIcSaIcEE13_M_deallocateEPcj
+FN:135,_ZNSt12_Vector_baseIcSaIcEED2Ev
+FN:299,_ZNSt6vectorIcSaIcEED1Ev
+FN:143,_ZNSt12_Vector_baseIcSaIcEE11_M_allocateEj
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:143,_ZNSt12_Vector_baseIPN6wibble11commandline6OptionESaIS3_EE11_M_allocateEj
+FN:1075,_ZNKSt6vectorIcSaIcEE12_M_check_lenEjPKc
+FN:686,_ZNSt6vectorIcSaIcEE9push_backERKc
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:1075,_ZNKSt6vectorIPN6wibble11commandline6OptionESaIS3_EE12_M_check_lenEjPKc
+FN:686,_ZNSt6vectorIPN6wibble11commandline6OptionESaIS3_EE9push_backERKS3_
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+DA:79,97
+DA:84,97
+DA:85,97
+DA:86,97
+DA:97,301
+DA:98,301
+DA:101,114
+DA:102,114
+DA:108,97
+DA:109,97
+DA:135,97
+DA:136,97
+DA:137,97
+DA:143,57
+DA:144,57
+DA:147,165
+DA:149,165
+DA:150,68
+DA:151,165
+DA:213,97
+DA:214,97
+DA:299,97
+DA:300,97
+DA:301,97
+DA:377,0
+DA:378,0
+DA:386,0
+DA:387,0
+DA:395,57
+DA:396,57
+DA:404,0
+DA:405,0
+DA:484,228
+DA:485,228
+DA:489,114
+DA:490,114
+DA:526,0
+DA:527,0
+DA:686,57
+DA:688,57
+DA:690,0
+DA:691,0
+DA:694,57
+DA:695,57
+DA:1075,57
+DA:1077,57
+DA:1078,0
+DA:1080,57
+DA:1081,57
+BA:144,2
+BA:144,1
+BA:144,0
+BA:144,0
+BA:144,2
+BA:144,1
+BA:149,0
+BA:149,0
+BA:149,2
+BA:149,2
+BA:149,2
+BA:149,2
+BA:149,2
+BA:149,2
+BA:149,2
+BA:149,2
+BA:688,1
+BA:688,2
+BA:688,1
+BA:688,2
+BA:688,0
+BA:688,0
+BA:1077,1
+BA:1077,2
+BA:1077,0
+BA:1077,0
+BA:1077,1
+BA:1077,2
+BA:1081,2
+BA:1081,1
+BA:1081,1
+BA:1081,2
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,2
+BA:1081,1
+BA:1081,1
+BA:1081,2
+LF:49
+LH:38
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorIcSaIcEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPcS1_EERKc
+FN:283,_ZNSt6vectorIPN6wibble11commandline6OptionESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+DA:283,57
+DA:286,57
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,57
+DA:308,57
+DA:309,57
+DA:316,57
+DA:321,57
+DA:323,57
+DA:324,57
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,57
+DA:338,57
+DA:341,57
+DA:342,57
+DA:343,57
+DA:345,57
+BA:286,1
+BA:286,2
+BA:286,1
+BA:286,2
+BA:286,0
+BA:286,0
+LF:24
+LH:15
+end_of_record
+SF:/usr/include/c++/4.3/exception
+FN:59,_ZNSt9exceptionC2Ev
+DA:59,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorIcE9constructEPcRKc
+FN:107,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline6OptionEE9constructEPS4_RKS4_
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIPN6wibble11commandline7ManagedEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKcPN6wibble11commandline6OptionEEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6OptionEEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6EngineEEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt10_List_nodeISsEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:118,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline7ManagedEE7destroyEPS4_
+FN:76,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline6OptionEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline11OptionGroupEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline6EngineEED2Ev
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKcPN6wibble11commandline6OptionEEE7destroyEPS7_
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:107,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline7ManagedEE9constructEPS4_RKS4_
+FN:76,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline7ManagedEED2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorIcE8max_sizeEv
+FN:69,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline6OptionEEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorIPN6wibble11commandline6OptionEE8max_sizeEv
+FN:69,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline11OptionGroupEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline6EngineEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKcPN6wibble11commandline6OptionEEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKcPN6wibble11commandline6OptionEEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6OptionEEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsPN6wibble11commandline6OptionEEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6EngineEEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsPN6wibble11commandline6EngineEEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIPN6wibble11commandline7ManagedEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt10_List_nodeISsEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline7ManagedEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKcPN6wibble11commandline6OptionEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsPN6wibble11commandline6OptionEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsPN6wibble11commandline6EngineEEEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt10_List_nodeISsEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIPN6wibble11commandline7ManagedEEE8max_sizeEv
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6EngineEEEE10deallocateEPS9_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6OptionEEEE10deallocateEPS9_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKcPN6wibble11commandline6OptionEEEE10deallocateEPS9_j
+FN:97,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline6EngineEE10deallocateEPS4_j
+FN:97,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline6OptionEE10deallocateEPS4_j
+FN:97,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline11OptionGroupEE10deallocateEPS4_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIPN6wibble11commandline7ManagedEEE10deallocateEPS6_j
+FN:97,_ZN9__gnu_cxx13new_allocatorIcE10deallocateEPcj
+FN:97,_ZN9__gnu_cxx13new_allocatorISt10_List_nodeISsEE10deallocateEPS2_j
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIPN6wibble11commandline7ManagedEEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorIcE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline6OptionEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt10_List_nodeISsEE8allocateEjPKv
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsPN6wibble11commandline6EngineEEE7destroyEPS7_
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsPN6wibble11commandline6OptionEEE7destroyEPS7_
+FN:118,_ZN9__gnu_cxx13new_allocatorISsE7destroyEPSs
+DA:69,328
+DA:71,0
+DA:76,328
+DA:87,139
+DA:89,139
+DA:90,0
+DA:92,139
+DA:97,200
+DA:98,200
+DA:101,253
+DA:102,253
+DA:107,6823
+DA:108,6823
+DA:118,98
+BA:89,1
+BA:89,2
+BA:89,1
+BA:89,2
+BA:89,0
+BA:89,0
+BA:89,1
+BA:89,2
+BA:89,1
+BA:89,2
+BA:108,2
+BA:108,1
+BA:108,2
+BA:108,1
+BA:108,2
+BA:108,1
+BA:108,0
+BA:108,0
+LF:14
+LH:12
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:195,_ZNSolsEj
+FN:177,_ZNSolsEb
+FN:229,_ZNSolsEPKv
+DA:95,0
+DA:112,0
+DA:117,0
+DA:177,0
+DA:178,0
+DA:195,0
+DA:199,0
+DA:229,0
+DA:230,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:20
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:25
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:263,_ZNK6wibble9exception11Consistency4typeEv
+FN:265,_ZNK6wibble9exception11Consistency4descEv
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:109,_ZN6wibble9exception10AddContext7contextEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:117,_ZN6wibble9exception10AddContext11copyContextISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvT_
+FN:153,_ZN6wibble9exception7Context10addContextERKSs
+FN:147,_ZN6wibble9exception7ContextC2ERKSs
+FN:186,_ZN6wibble9exception7GenericC2ERKSs
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:259,_ZN6wibble9exception11ConsistencyC1ERKSsS3_
+FN:261,_ZN6wibble9exception11ConsistencyD0Ev
+FN:261,_ZN6wibble9exception11ConsistencyD1Ev
+DA:109,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:113,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:137,0
+DA:147,0
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:186,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:259,0
+DA:260,0
+DA:261,0
+DA:263,0
+DA:265,0
+DA:266,0
+DA:267,0
+DA:268,0
+DA:269,0
+BA:110,0
+BA:110,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:267,0
+BA:267,0
+LF:44
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/string.h
+FN:336,_ZNK6wibble3str5Split14const_iteratordeEv
+FN:340,_ZNK6wibble3str5Split14const_iteratorptEv
+FN:350,_ZNK6wibble3str5Split14const_iteratorneERKS2_
+FN:298,_ZN6wibble3str5Split14const_iteratorC1ERKSsS4_b
+FN:367,_ZNK6wibble3str5Split3endEv
+FN:361,_ZN6wibble3str5SplitC1ERKSsS3_
+FN:287,_ZN6wibble3str5Split14const_iteratorD1Ev
+FN:280,_ZN6wibble3str5SplitD1Ev
+FN:300,_ZN6wibble3str5Split14const_iteratorppEv
+FN:294,_ZN6wibble3str5Split14const_iteratorC1ERKSsS4_
+FN:366,_ZNK6wibble3str5Split5beginEv
+FN:236,_ZN6wibble3str8joinpathERKSsS2_
+DA:236,0
+DA:238,0
+DA:239,0
+DA:240,0
+DA:241,0
+DA:243,0
+DA:244,0
+DA:245,0
+DA:247,0
+DA:249,0
+DA:250,0
+DA:252,0
+DA:280,0
+DA:287,0
+DA:294,0
+DA:296,0
+DA:297,0
+DA:298,0
+DA:300,0
+DA:302,0
+DA:303,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:311,0
+DA:313,0
+DA:314,0
+DA:316,0
+DA:317,0
+DA:321,0
+DA:322,0
+DA:325,0
+DA:336,0
+DA:338,0
+DA:340,35
+DA:342,35
+DA:350,0
+DA:354,0
+DA:361,0
+DA:366,0
+DA:367,0
+BA:238,0
+BA:238,0
+BA:240,0
+BA:240,0
+BA:243,0
+BA:243,0
+BA:244,0
+BA:244,0
+BA:249,0
+BA:249,0
+BA:302,0
+BA:302,0
+BA:307,0
+BA:307,0
+BA:308,0
+BA:308,0
+BA:314,0
+BA:314,0
+LF:41
+LH:2
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/string.cpp
+FN:99,_ZN6wibble3strL9invbase64IcEEKcRKT_
+FN:295,_Z41__static_initialization_and_destruction_0ii
+FN:295,_GLOBAL__I_string.cpp
+FN:107,_ZN6wibble3str12encodeBase64ERKSs
+FN:177,_ZN6wibble3strL16stripYamlCommentERKSs
+FN:211,_ZN6wibble3str10YamlStream14const_iteratorppEv
+FN:192,_ZN6wibble3str10YamlStream14const_iteratorC1ERSi
+FN:192,_ZN6wibble3str10YamlStream14const_iteratorC2ERSi
+FN:140,_ZN6wibble3str12decodeBase64ERKSs
+FN:77,_ZN6wibble3str9urldecodeERKSs
+FN:59,_ZN6wibble3str9urlencodeERKSs
+FN:32,_ZN6wibble3str8normpathERKSs
+DA:32,13
+DA:34,13
+DA:35,13
+DA:36,3
+DA:37,13
+DA:38,74
+DA:40,48
+DA:41,31
+DA:42,10
+DA:43,0
+DA:44,10
+DA:45,5
+DA:47,5
+DA:49,21
+DA:50,13
+DA:51,13
+DA:52,2
+DA:53,11
+DA:54,19
+DA:55,8
+DA:56,11
+DA:59,6
+DA:61,6
+DA:62,74
+DA:64,68
+DA:67,32
+DA:70,36
+DA:71,36
+DA:74,0
+DA:77,8
+DA:79,8
+DA:80,76
+DA:82,70
+DA:85,37
+DA:86,2
+DA:87,35
+DA:88,35
+DA:91,33
+DA:93,6
+DA:99,72
+DA:102,72
+DA:103,72
+DA:104,72
+DA:107,20
+DA:109,20
+DA:111,56
+DA:115,36
+DA:116,18
+DA:119,18
+DA:120,18
+DA:121,12
+DA:122,18
+DA:123,6
+DA:128,180
+DA:129,144
+DA:133,20
+DA:134,30
+DA:135,18
+DA:137,0
+DA:140,10
+DA:142,10
+DA:144,28
+DA:148,18
+DA:153,9
+DA:155,9
+DA:156,9
+DA:157,9
+DA:158,9
+DA:159,9
+DA:160,9
+DA:161,9
+DA:165,18
+DA:166,18
+DA:167,18
+DA:171,19
+DA:172,9
+DA:174,0
+DA:177,10
+DA:179,10
+DA:180,126
+DA:182,120
+DA:183,4
+DA:184,116
+DA:187,31
+DA:188,11
+DA:189,0
+DA:192,6
+DA:193,6
+DA:196,15
+DA:198,7
+DA:199,7
+DA:200,4
+DA:203,6
+DA:205,2
+DA:208,4
+DA:209,6
+DA:211,11
+DA:214,11
+DA:215,11
+DA:219,11
+DA:221,4
+DA:222,4
+DA:225,7
+DA:227,0
+DA:230,7
+DA:231,7
+DA:233,0
+DA:236,7
+DA:239,13
+DA:243,7
+DA:246,7
+DA:247,8
+DA:249,15
+DA:250,15
+DA:251,15
+DA:253,13
+DA:255,11
+DA:257,10
+DA:259,3
+DA:260,3
+DA:267,7
+DA:270,7
+DA:272,3
+DA:275,3
+DA:276,2
+DA:279,7
+DA:282,3
+DA:286,4
+DA:287,7
+DA:290,7
+DA:295,9
+BA:35,2
+BA:35,2
+BA:38,2
+BA:38,2
+BA:40,2
+BA:40,2
+BA:40,2
+BA:40,2
+BA:40,2
+BA:40,2
+BA:41,2
+BA:41,2
+BA:42,1
+BA:42,2
+BA:44,2
+BA:44,2
+BA:51,2
+BA:51,2
+BA:54,2
+BA:54,2
+BA:62,2
+BA:62,2
+BA:64,2
+BA:64,2
+BA:64,2
+BA:64,2
+BA:64,2
+BA:64,2
+BA:64,2
+BA:64,2
+BA:64,2
+BA:64,2
+BA:64,1
+BA:64,2
+BA:64,2
+BA:64,1
+BA:64,2
+BA:64,1
+BA:64,2
+BA:64,2
+BA:64,2
+BA:64,2
+BA:64,2
+BA:64,1
+BA:64,2
+BA:64,2
+BA:64,2
+BA:64,2
+BA:64,2
+BA:64,2
+BA:80,2
+BA:80,2
+BA:82,2
+BA:82,2
+BA:85,2
+BA:85,2
+BA:102,1
+BA:102,2
+BA:103,1
+BA:103,2
+BA:111,2
+BA:111,2
+BA:115,2
+BA:115,2
+BA:120,2
+BA:120,2
+BA:122,2
+BA:122,2
+BA:128,2
+BA:128,2
+BA:133,2
+BA:133,2
+BA:134,2
+BA:134,2
+BA:144,2
+BA:144,2
+BA:148,2
+BA:148,2
+BA:156,2
+BA:156,1
+BA:158,2
+BA:158,1
+BA:160,2
+BA:160,1
+BA:171,2
+BA:171,2
+BA:180,2
+BA:180,2
+BA:182,2
+BA:182,2
+BA:187,2
+BA:187,2
+BA:187,2
+BA:187,2
+BA:187,2
+BA:187,2
+BA:196,2
+BA:196,2
+BA:196,0
+BA:196,0
+BA:199,2
+BA:199,2
+BA:199,0
+BA:199,0
+BA:203,2
+BA:203,2
+BA:203,2
+BA:203,1
+BA:203,2
+BA:203,2
+BA:203,0
+BA:203,0
+BA:203,0
+BA:203,0
+BA:203,0
+BA:203,0
+BA:219,2
+BA:219,2
+BA:225,1
+BA:225,2
+BA:231,1
+BA:231,2
+BA:239,2
+BA:239,2
+BA:239,2
+BA:239,2
+BA:239,2
+BA:239,2
+BA:250,2
+BA:250,1
+BA:251,2
+BA:251,2
+BA:253,2
+BA:253,2
+BA:255,2
+BA:255,2
+BA:257,2
+BA:257,2
+BA:267,2
+BA:267,1
+BA:267,2
+BA:267,2
+BA:267,2
+BA:267,2
+BA:270,2
+BA:270,2
+BA:275,2
+BA:275,2
+BA:279,2
+BA:279,2
+BA:295,2
+BA:295,1
+BA:295,2
+BA:295,1
+LF:131
+LH:124
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:106,_ZNSaIPSsED1Ev
+FN:100,_ZNSaISsEC2ERKS_
+FN:104,_ZNSaIPSsEC1ISsEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,13
+DA:101,13
+DA:104,52
+DA:106,52
+DA:118,0
+DA:119,0
+LF:7
+LH:4
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:184,_ZNKSt9basic_iosIcSt11char_traitsIcEE3eofEv
+FN:195,_ZNKSt9basic_iosIcSt11char_traitsIcEE4failEv
+FN:119,_ZNKSt9basic_iosIcSt11char_traitsIcEEntEv
+FN:115,_ZNKSt9basic_iosIcSt11char_traitsIcEEcvPvEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:115,0
+DA:116,0
+DA:119,0
+DA:120,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:184,0
+DA:185,0
+DA:195,0
+DA:196,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:116,0
+BA:116,0
+BA:276,0
+BA:276,0
+LF:22
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:701,_ZNKSsixEj
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:612,_ZNKSs6lengthEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:543,_ZNKSs5beginEv
+FN:562,_ZNKSs3endEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:192,_ZNKSs4_Rep12_M_is_sharedEv
+FN:652,_ZNKSs8capacityEv
+FN:188,_ZNKSs4_Rep12_M_is_leakedEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:870,_ZNSs9push_backEc
+FN:791,_ZNSspLEc
+FN:773,_ZNSspLERKSs
+FN:835,_ZNSs6appendEPKc
+FN:782,_ZNSspLEPKc
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:679,_ZNSs5clearEv
+FN:2461,_ZSt7getlineIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RSbIS4_S5_T1_E
+FN:501,_ZNSsaSERKSs
+FN:299,_ZNSs7_M_leakEv
+FN:718,_ZNSsixEj
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:644,_ZNSs6resizeEj
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:1579,_ZNKSs4findERKSsj
+FN:2136,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S3_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:188,0
+DA:189,0
+DA:192,0
+DA:193,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:299,0
+DA:301,0
+DA:302,0
+DA:303,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:543,0
+DA:544,0
+DA:562,0
+DA:563,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:644,0
+DA:645,0
+DA:652,0
+DA:653,0
+DA:679,0
+DA:680,0
+DA:686,0
+DA:687,0
+DA:701,0
+DA:704,0
+DA:718,0
+DA:724,0
+DA:725,0
+DA:773,0
+DA:774,0
+DA:782,0
+DA:783,0
+DA:791,0
+DA:793,0
+DA:794,0
+DA:835,0
+DA:838,0
+DA:870,0
+DA:872,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:877,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1579,0
+DA:1580,0
+DA:1923,0
+DA:1925,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2136,0
+DA:2140,0
+DA:2141,0
+DA:2142,0
+DA:2188,0
+DA:2189,0
+DA:2421,0
+DA:2425,0
+DA:2461,0
+DA:2462,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:301,0
+BA:301,0
+BA:308,0
+BA:308,0
+BA:341,0
+BA:341,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+LF:120
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+FN:668,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+DA:668,0
+DA:673,0
+DA:674,0
+DA:675,0
+DA:676,0
+DA:677,0
+DA:678,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:23
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/deque.tcc
+FN:694,_ZNSt5dequeISsSaISsEE19_M_destroy_data_auxESt15_Deque_iteratorISsRSsPSsES5_
+FN:397,_ZNSt5dequeISsSaISsEE15_M_pop_back_auxEv
+FN:766,_ZNSt5dequeISsSaISsEE17_M_reallocate_mapEjb
+FN:335,_ZNSt5dequeISsSaISsEE16_M_push_back_auxERKSs
+DA:335,0
+DA:338,0
+DA:339,0
+DA:346,0
+DA:348,0
+DA:350,0
+DA:352,0
+DA:354,0
+DA:355,0
+DA:357,0
+DA:397,0
+DA:399,0
+DA:400,0
+DA:401,0
+DA:402,0
+DA:403,0
+DA:694,26
+DA:696,26
+DA:698,0
+DA:701,26
+DA:703,0
+DA:705,0
+DA:709,26
+DA:711,26
+DA:766,0
+DA:769,0
+DA:770,0
+DA:773,0
+DA:775,0
+DA:778,0
+DA:779,0
+DA:783,0
+DA:791,0
+DA:793,0
+DA:794,0
+DA:796,0
+DA:799,0
+DA:801,0
+DA:802,0
+DA:805,0
+DA:806,0
+DA:807,0
+BA:696,1
+BA:696,2
+BA:701,1
+BA:701,2
+BA:773,0
+BA:773,0
+BA:775,0
+BA:775,0
+BA:778,0
+BA:778,0
+BA:794,0
+BA:794,0
+LF:42
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:159,_ZStanSt12_Ios_IostateS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:159,0
+DA:160,0
+DA:163,0
+DA:164,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:286,_ZNSt12__miter_baseIPPSsLb0EE3__bES1_
+FN:268,_ZNSt12__niter_baseIPPSsLb0EE3__bES1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET0_T_SA_S9_
+FN:569,_ZNSt20__copy_move_backwardILb0ELb1ESt26random_access_iterator_tagE13__copy_move_bIPSsEEPT_PKS4_S7_S5_
+FN:579,_ZSt22__copy_move_backward_aILb0EPPSsS1_ET1_T0_S3_S2_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPPSsS1_ET1_T0_S3_S2_
+FN:624,_ZSt13copy_backwardIPPSsS1_ET0_T_S3_S2_
+FN:375,_ZNSt11__copy_moveILb0ELb1ESt26random_access_iterator_tagE8__copy_mIPSsEEPT_PKS4_S7_S5_
+FN:385,_ZSt13__copy_move_aILb0EPPSsS1_ET1_T0_S3_S2_
+FN:430,_ZSt14__copy_move_a2ILb0EPPSsS1_ET1_T0_S3_S2_
+FN:456,_ZSt4copyIPPSsS1_ET0_T_S3_S2_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:375,0
+DA:377,0
+DA:379,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:569,0
+DA:571,0
+DA:572,0
+DA:573,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+LF:41
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+FN:97,_ZSt8_DestroyISt15_Deque_iteratorISsRSsPSsEEvT_S4_
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_deque.h
+FN:82,_ZSt16__deque_buf_sizej
+FN:434,_ZNSt11_Deque_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:127,_ZNSt15_Deque_iteratorISsRSsPSsEC1ERKS2_
+FN:868,_ZNSt5dequeISsSaISsEE3endEv
+FN:851,_ZNSt5dequeISsSaISsEE5beginEv
+FN:438,_ZNKSt11_Deque_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:132,_ZNKSt15_Deque_iteratorISsRSsPSsEdeEv
+FN:240,_ZSteqISsRSsPSsEbRKSt15_Deque_iteratorIT_T0_T1_ES8_
+FN:990,_ZNKSt5dequeISsSaISsEE5emptyEv
+FN:416,_ZNSt11_Deque_baseISsSaISsEE11_Deque_implD1Ev
+FN:124,_ZNSt15_Deque_iteratorISsRSsPSsEC1Ev
+FN:670,_ZNSt5dequeISsSaISsEE14_S_buffer_sizeEv
+FN:127,_ZNSt15_Deque_iteratorISsRKSsPS0_EC1ERKS_ISsRSsPSsE
+FN:877,_ZNKSt5dequeISsSaISsEE3endEv
+FN:859,_ZNKSt5dequeISsSaISsEE5beginEv
+FN:422,_ZNSt11_Deque_baseISsSaISsEE11_Deque_implC1Ev
+FN:103,_ZNSt15_Deque_iteratorISsRSsPSsE14_S_buffer_sizeEv
+FN:226,_ZNSt15_Deque_iteratorISsRSsPSsE11_M_set_nodeEPS1_
+FN:160,_ZNSt15_Deque_iteratorISsRSsPSsEmmEv
+FN:1091,_ZNSt5dequeISsSaISsEE4backEv
+FN:324,_ZStmiISsRSsPSsENSt15_Deque_iteratorIT_T0_T1_E15difference_typeERKS6_S9_
+FN:956,_ZNKSt5dequeISsSaISsEE4sizeEv
+FN:427,_ZNSt11_Deque_baseISsSaISsEE11_Deque_implC1ERKS0_
+FN:442,_ZNKSt11_Deque_baseISsSaISsEE20_M_get_map_allocatorEv
+FN:140,_ZNSt15_Deque_iteratorISsRSsPSsEppEv
+FN:132,_ZNKSt15_Deque_iteratorISsRKSsPS0_EdeEv
+FN:240,_ZSteqISsRKSsPS0_EbRKSt15_Deque_iteratorIT_T0_T1_ES9_
+FN:253,_ZStneISsRKSsPS0_EbRKSt15_Deque_iteratorIT_T0_T1_ES9_
+FN:253,_ZStneISsRSsPSsEbRKSt15_Deque_iteratorIT_T0_T1_ES8_
+FN:103,_ZNSt15_Deque_iteratorISsRKSsPS0_E14_S_buffer_sizeEv
+FN:226,_ZNSt15_Deque_iteratorISsRKSsPS0_E11_M_set_nodeEPPSs
+FN:140,_ZNSt15_Deque_iteratorISsRKSsPS0_EppEv
+FN:452,_ZNSt11_Deque_baseISsSaISsEE18_M_deallocate_nodeEPSs
+FN:554,_ZNSt11_Deque_baseISsSaISsEE16_M_destroy_nodesEPPSsS3_
+FN:462,_ZNSt11_Deque_baseISsSaISsEE17_M_deallocate_mapEPPSsj
+FN:476,_ZNSt11_Deque_baseISsSaISsEED2Ev
+FN:446,_ZNSt11_Deque_baseISsSaISsEE16_M_allocate_nodeEv
+FN:536,_ZNSt11_Deque_baseISsSaISsEE15_M_create_nodesEPPSsS3_
+FN:458,_ZNSt11_Deque_baseISsSaISsEE15_M_allocate_mapEj
+FN:497,_ZNSt11_Deque_baseISsSaISsEE17_M_initialize_mapEj
+FN:377,_ZNSt11_Deque_baseISsSaISsEEC2Ev
+FN:695,_ZNSt5dequeISsSaISsEEC1Ev
+FN:381,_ZNSt11_Deque_baseISsSaISsEEC2ERKS0_j
+FN:1601,_ZNSt5dequeISsSaISsEE15_M_destroy_dataESt15_Deque_iteratorISsRSsPSsES5_RKS0_
+FN:775,_ZNSt5dequeISsSaISsEED1Ev
+FN:727,_ZNSt5dequeISsSaISsEEC1ERKS1_
+FN:1217,_ZNSt5dequeISsSaISsEE8pop_backEv
+FN:1666,_ZNSt5dequeISsSaISsEE22_M_reserve_map_at_backEj
+FN:1159,_ZNSt5dequeISsSaISsEE9push_backERKSs
+DA:82,0
+DA:83,0
+DA:103,65
+DA:104,65
+DA:124,52
+DA:125,52
+DA:127,221
+DA:129,221
+DA:132,39
+DA:133,39
+DA:140,0
+DA:142,0
+DA:143,0
+DA:145,0
+DA:146,0
+DA:148,0
+DA:160,39
+DA:162,39
+DA:164,0
+DA:165,0
+DA:167,39
+DA:168,39
+DA:226,52
+DA:228,52
+DA:229,52
+DA:230,52
+DA:231,52
+DA:240,45
+DA:241,45
+DA:253,13
+DA:254,13
+DA:324,13
+DA:329,13
+DA:377,13
+DA:378,13
+DA:379,13
+DA:381,13
+DA:382,13
+DA:383,13
+DA:416,26
+DA:422,13
+DA:424,13
+DA:425,13
+DA:427,13
+DA:429,13
+DA:430,13
+DA:434,65
+DA:435,65
+DA:438,65
+DA:439,65
+DA:442,52
+DA:443,52
+DA:446,26
+DA:448,26
+DA:452,26
+DA:454,26
+DA:455,26
+DA:458,26
+DA:459,26
+DA:462,26
+DA:463,26
+DA:476,26
+DA:478,26
+DA:480,26
+DA:482,26
+DA:484,26
+DA:497,26
+DA:500,26
+DA:502,26
+DA:504,26
+DA:512,26
+DA:513,26
+DA:516,26
+DA:517,0
+DA:519,0
+DA:520,0
+DA:521,0
+DA:522,0
+DA:525,26
+DA:526,26
+DA:527,26
+DA:528,26
+DA:531,26
+DA:536,26
+DA:541,52
+DA:542,26
+DA:544,0
+DA:546,0
+DA:547,0
+DA:549,26
+DA:554,26
+DA:556,52
+DA:557,26
+DA:558,26
+DA:670,0
+DA:671,0
+DA:695,13
+DA:696,13
+DA:727,13
+DA:728,13
+DA:729,13
+DA:731,13
+DA:775,26
+DA:776,26
+DA:851,26
+DA:852,26
+DA:859,13
+DA:860,13
+DA:868,65
+DA:869,65
+DA:877,13
+DA:878,13
+DA:956,13
+DA:957,13
+DA:990,32
+DA:991,32
+DA:1091,39
+DA:1093,39
+DA:1094,39
+DA:1095,39
+DA:1159,24
+DA:1161,24
+DA:1164,24
+DA:1165,24
+DA:1168,0
+DA:1169,24
+DA:1217,24
+DA:1219,24
+DA:1222,24
+DA:1223,24
+DA:1226,0
+DA:1227,24
+DA:1601,26
+DA:1604,26
+DA:1605,26
+DA:1666,0
+DA:1668,0
+DA:1670,0
+DA:1671,0
+BA:83,0
+BA:83,0
+BA:143,0
+BA:143,0
+BA:143,0
+BA:143,0
+BA:162,1
+BA:162,2
+BA:478,2
+BA:478,1
+BA:541,2
+BA:541,2
+BA:556,2
+BA:556,2
+BA:1161,2
+BA:1161,1
+BA:1219,2
+BA:1219,1
+BA:1668,0
+BA:1668,0
+LF:139
+LH:113
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPKcSsEppEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPKcSsEdeEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKcSsEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKcSsE4baseEv
+FN:781,_ZN9__gnu_cxxneIPKcSsEEbRKNS_17__normal_iteratorIT_T0_EES8_
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:683,0
+DA:695,0
+DA:696,0
+DA:703,0
+DA:705,0
+DA:706,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+DA:781,0
+DA:782,0
+LF:22
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:84,_ZNSt4pairISsSsEC1Ev
+FN:73,_ZNSt4pairISsSsED1Ev
+DA:73,0
+DA:84,0
+DA:85,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_stack.h
+FN:148,_ZNKSt5stackISsSt5dequeISsSaISsEEE5emptyEv
+FN:161,_ZNSt5stackISsSt5dequeISsSaISsEEE3topEv
+FN:99,_ZNSt5stackISsSt5dequeISsSaISsEEED1Ev
+FN:132,_ZNSt5stackISsSt5dequeISsSaISsEEEC1ERKS2_
+FN:211,_ZNSt5stackISsSt5dequeISsSaISsEEE3popEv
+FN:189,_ZNSt5stackISsSt5dequeISsSaISsEEE4pushERKSs
+DA:99,13
+DA:132,13
+DA:133,13
+DA:148,32
+DA:149,32
+DA:161,39
+DA:164,39
+DA:189,24
+DA:190,24
+DA:211,24
+DA:214,24
+DA:215,24
+LF:12
+LH:12
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyISt15_Deque_iteratorISsRKSsPS3_ES2_ISsRSsPSsEEET0_T_SB_SA_
+FN:113,_ZSt18uninitialized_copyISt15_Deque_iteratorISsRKSsPS1_ES0_ISsRSsPSsEET0_T_S9_S8_
+FN:261,_ZSt22__uninitialized_copy_aISt15_Deque_iteratorISsRKSsPS1_ES0_ISsRSsPSsESsET0_T_S9_S8_RSaIT1_E
+DA:73,13
+DA:75,13
+DA:78,13
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,13
+DA:122,13
+DA:261,13
+DA:262,13
+DA:268,0
+DA:272,0
+BA:78,0
+BA:78,0
+BA:78,1
+BA:78,2
+BA:79,0
+BA:79,0
+BA:79,0
+BA:79,0
+LF:14
+LH:7
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:377,0
+DA:378,0
+DA:386,0
+DA:387,0
+DA:395,0
+DA:396,0
+DA:404,0
+DA:405,0
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:526,0
+DA:527,0
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:49
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:286,0
+BA:286,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/exception
+FN:59,_ZNSt9exceptionC2Ev
+DA:59,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:76,_ZN9__gnu_cxx13new_allocatorIPSsED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorISsEC2ERKS1_
+FN:101,_ZNK9__gnu_cxx13new_allocatorIPSsE8max_sizeEv
+FN:69,_ZN9__gnu_cxx13new_allocatorIPSsEC2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:97,_ZN9__gnu_cxx13new_allocatorIPSsE10deallocateEPS1_j
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorIPSsE8allocateEjPKv
+FN:118,_ZN9__gnu_cxx13new_allocatorISsE7destroyEPSs
+DA:69,52
+DA:71,13
+DA:76,52
+DA:87,26
+DA:89,26
+DA:90,0
+DA:92,26
+DA:97,26
+DA:98,26
+DA:101,26
+DA:102,26
+DA:107,0
+DA:108,0
+DA:118,0
+BA:89,0
+BA:89,0
+BA:89,1
+BA:89,2
+BA:108,0
+BA:108,0
+LF:14
+LH:10
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,3
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+DA:95,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/commandline/core.cpp
+FN:54,_Z41__static_initialization_and_destruction_0ii
+FN:54,_GLOBAL__I_core.cpp
+FN:36,_ZN6wibble11commandline7ArgList8isSwitchEPKc
+FN:19,_ZN6wibble11commandline7ArgList8isSwitchERKSs
+FN:13,_ZN6wibble11commandline7ArgList8isSwitchERKSt14_List_iteratorISsE
+FN:8,_ZN6wibble11commandline7ArgList8isSwitchERKSt20_List_const_iteratorISsE
+DA:8,0
+DA:10,0
+DA:13,45
+DA:15,45
+DA:19,45
+DA:22,45
+DA:23,0
+DA:25,45
+DA:26,18
+DA:28,27
+DA:29,0
+DA:31,27
+DA:32,0
+DA:33,27
+DA:36,9
+DA:39,9
+DA:40,0
+DA:42,9
+DA:43,3
+DA:45,6
+DA:46,1
+DA:48,5
+DA:49,1
+DA:50,4
+DA:54,3
+BA:22,1
+BA:22,2
+BA:25,2
+BA:25,2
+BA:28,1
+BA:28,2
+BA:31,1
+BA:31,2
+BA:39,1
+BA:39,2
+BA:42,2
+BA:42,2
+BA:45,2
+BA:45,2
+BA:48,2
+BA:48,2
+BA:54,2
+BA:54,1
+BA:54,2
+BA:54,1
+LF:25
+LH:19
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:701,_ZNKSsixEj
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+DA:277,0
+DA:278,0
+DA:701,0
+DA:704,0
+DA:2188,0
+DA:2189,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_list.h
+FN:211,_ZNKSt20_List_const_iteratorISsEdeEv
+FN:131,_ZNKSt14_List_iteratorISsEdeEv
+DA:131,0
+DA:132,0
+DA:211,0
+DA:212,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/commandline/core.h
+FN:21,_ZNK6wibble9exception9BadOption4typeEv
+FN:34,_ZN6wibble11commandline7ArgList15eraseAndAdvanceERSt14_List_iteratorISsE
+FN:22,_ZNK6wibble9exception9BadOption4descEv
+FN:19,_ZN6wibble9exception9BadOptionD0Ev
+FN:19,_ZN6wibble9exception9BadOptionD1Ev
+FN:17,_ZN6wibble9exception9BadOptionC1ERKSsS3_
+DA:17,0
+DA:18,0
+DA:19,0
+DA:21,0
+DA:22,0
+DA:34,0
+DA:36,0
+DA:37,0
+DA:38,0
+DA:39,0
+DA:40,0
+DA:41,0
+DA:42,0
+BA:19,0
+BA:19,0
+BA:19,0
+BA:19,0
+BA:36,0
+BA:36,0
+LF:13
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/commandline/engine.h
+FN:106,_ZNK6wibble11commandline6Engine4nameEv
+DA:106,0
+LF:1
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/commandline/options.h
+FN:98,_ZNK6wibble11commandline6Option4nameEv
+DA:98,0
+LF:1
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:263,_ZNK6wibble9exception11Consistency4typeEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:265,_ZNK6wibble9exception11Consistency4descEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:261,_ZN6wibble9exception11ConsistencyD0Ev
+FN:261,_ZN6wibble9exception11ConsistencyD1Ev
+FN:261,_ZN6wibble9exception11ConsistencyD2Ev
+FN:109,_ZN6wibble9exception10AddContext7contextEv
+FN:117,_ZN6wibble9exception10AddContext11copyContextISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvT_
+FN:153,_ZN6wibble9exception7Context10addContextERKSs
+FN:147,_ZN6wibble9exception7ContextC2ERKSs
+FN:186,_ZN6wibble9exception7GenericC2ERKSs
+FN:259,_ZN6wibble9exception11ConsistencyC2ERKSsS3_
+FN:259,_ZN6wibble9exception11ConsistencyC1ERKSsS3_
+DA:109,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:113,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:137,0
+DA:147,0
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:186,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:259,0
+DA:260,0
+DA:261,0
+DA:263,0
+DA:265,0
+DA:266,0
+DA:267,0
+DA:268,0
+DA:269,0
+BA:110,0
+BA:110,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:267,0
+BA:267,0
+LF:44
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/commandline/engine.cpp
+FN:352,_Z41__static_initialization_and_destruction_0ii
+FN:352,_GLOBAL__I_engine.cpp
+FN:173,_ZN6wibble11commandline6Engine3addEPS1_
+FN:167,_ZN6wibble11commandline6Engine3addEPNS0_11OptionGroupE
+FN:161,_ZN6wibble11commandline6Engine3addEPNS0_6OptionE
+FN:74,_ZN6wibble11commandline6Engine17parseFirstIfKnownERNS0_7ArgListESt14_List_iteratorISsE
+FN:124,_ZN6wibble11commandline6Engine18parseKnownSwitchesERNS0_7ArgListESt14_List_iteratorISsE
+FN:39,_ZN6wibble11commandline6Engine3addERKSsPS1_
+FN:9,_ZN6wibble11commandline6Engine13addWithoutAnaEPNS0_6OptionE
+FN:32,_ZN6wibble11commandline6Engine13addWithoutAnaERKSt6vectorIPNS0_6OptionESaIS4_EE
+FN:48,_ZN6wibble11commandline6Engine7rebuildEv
+FN:301,_ZN6wibble11commandline6Engine4dumpERSoRKSs
+FN:240,_ZN6wibble11commandline6Engine5parseERNS0_7ArgListESt14_List_iteratorISsE
+DA:9,23
+DA:11,23
+DA:12,38
+DA:14,15
+DA:15,15
+DA:17,0
+DA:18,15
+DA:21,23
+DA:22,51
+DA:24,28
+DA:25,28
+DA:27,0
+DA:28,28
+DA:30,23
+DA:32,12
+DA:34,35
+DA:36,23
+DA:37,12
+DA:39,9
+DA:41,9
+DA:42,9
+DA:43,0
+DA:44,9
+DA:45,9
+DA:48,11
+DA:51,11
+DA:52,11
+DA:55,12
+DA:57,1
+DA:60,11
+DA:63,11
+DA:64,17
+DA:67,6
+DA:68,9
+DA:70,3
+DA:72,11
+DA:74,25
+DA:76,25
+DA:78,25
+DA:81,8
+DA:83,8
+DA:84,8
+DA:85,2
+DA:87,6
+DA:88,6
+DA:90,6
+DA:93,5
+DA:96,1
+DA:102,17
+DA:103,17
+DA:104,17
+DA:107,4
+DA:109,13
+DA:110,13
+DA:113,17
+DA:114,17
+DA:115,8
+DA:116,13
+DA:119,13
+DA:121,19
+DA:124,27
+DA:127,16
+DA:129,27
+DA:130,5
+DA:131,22
+DA:132,4
+DA:133,18
+DA:134,18
+DA:135,2
+DA:136,16
+DA:140,26
+DA:143,14
+DA:145,7
+DA:146,7
+DA:149,7
+DA:150,7
+DA:152,4
+DA:154,3
+DA:157,6
+DA:161,28
+DA:163,28
+DA:164,28
+DA:167,3
+DA:169,3
+DA:170,3
+DA:173,8
+DA:175,8
+DA:176,8
+DA:240,11
+DA:242,11
+DA:245,11
+DA:247,11
+DA:250,11
+DA:253,3
+DA:254,8
+DA:255,2
+DA:257,3
+DA:260,2
+DA:261,2
+DA:262,0
+DA:265,2
+DA:266,0
+DA:267,2
+DA:270,2
+DA:274,11
+DA:278,14
+DA:280,5
+DA:283,0
+DA:285,0
+DA:286,0
+DA:288,0
+DA:290,5
+DA:291,0
+DA:293,9
+DA:294,9
+DA:297,2
+DA:301,0
+DA:303,0
+DA:305,0
+DA:307,0
+DA:309,0
+DA:310,0
+DA:312,0
+DA:314,0
+DA:316,0
+DA:317,0
+DA:319,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:326,0
+DA:328,0
+DA:330,0
+DA:331,0
+DA:333,0
+DA:335,0
+DA:337,0
+DA:338,0
+DA:340,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:347,0
+DA:349,0
+DA:352,3
+BA:12,2
+BA:12,2
+BA:15,1
+BA:15,2
+BA:22,2
+BA:22,2
+BA:25,1
+BA:25,2
+BA:34,2
+BA:34,2
+BA:42,1
+BA:42,2
+BA:55,2
+BA:55,2
+BA:64,2
+BA:64,2
+BA:68,2
+BA:68,2
+BA:78,2
+BA:78,2
+BA:84,2
+BA:84,2
+BA:90,2
+BA:90,2
+BA:104,2
+BA:104,2
+BA:114,2
+BA:114,2
+BA:119,2
+BA:119,2
+BA:119,2
+BA:119,2
+BA:129,2
+BA:129,2
+BA:131,2
+BA:131,2
+BA:134,2
+BA:134,2
+BA:140,2
+BA:140,2
+BA:143,2
+BA:143,2
+BA:150,2
+BA:150,2
+BA:250,2
+BA:250,2
+BA:254,2
+BA:254,2
+BA:254,2
+BA:254,2
+BA:254,2
+BA:254,2
+BA:257,2
+BA:257,2
+BA:261,1
+BA:261,2
+BA:265,1
+BA:265,2
+BA:274,2
+BA:274,2
+BA:278,2
+BA:278,2
+BA:280,1
+BA:280,2
+BA:283,0
+BA:283,0
+BA:290,1
+BA:290,2
+BA:307,0
+BA:307,0
+BA:310,0
+BA:310,0
+BA:314,0
+BA:314,0
+BA:317,0
+BA:317,0
+BA:321,0
+BA:321,0
+BA:324,0
+BA:324,0
+BA:328,0
+BA:328,0
+BA:331,0
+BA:331,0
+BA:335,0
+BA:335,0
+BA:338,0
+BA:338,0
+BA:342,0
+BA:342,0
+BA:345,0
+BA:345,0
+BA:352,2
+BA:352,1
+BA:352,2
+BA:352,1
+LF:145
+LH:107
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC1ERKS_
+FN:100,_ZNSaIcEC2ERKS_
+FN:106,_ZNSaISsED1Ev
+FN:106,_ZNSaISsED2Ev
+FN:104,_ZNSaISsEC1ISt10_List_nodeISsEEERKSaIT_E
+FN:98,_ZNSaISsEC2Ev
+FN:106,_ZNSaISt4pairIKcPN6wibble11commandline6OptionEEED1Ev
+FN:106,_ZNSaISt4pairIKSsPN6wibble11commandline6OptionEEED1Ev
+FN:106,_ZNSaISt4pairIKSsPN6wibble11commandline6EngineEEED1Ev
+FN:104,_ZNSaISt4pairIKcPN6wibble11commandline6OptionEEEC1ISt13_Rb_tree_nodeIS5_EEERKSaIT_E
+FN:104,_ZNSaISt4pairIKSsPN6wibble11commandline6OptionEEEC1ISt13_Rb_tree_nodeIS5_EEERKSaIT_E
+FN:104,_ZNSaISt4pairIKSsPN6wibble11commandline6EngineEEEC1ISt13_Rb_tree_nodeIS5_EEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:104,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:7
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:291,_ZNKSs9_M_ibeginEv
+FN:196,_ZNSs4_Rep13_M_set_leakedEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:188,_ZNKSs4_Rep12_M_is_leakedEv
+FN:1551,_ZNKSs13get_allocatorEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:392,_ZNSs10_S_compareEjj
+FN:835,_ZNSs6appendEPKc
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:1941,_ZNKSs7compareERKSs
+FN:2238,_ZStltIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:299,_ZNSs7_M_leakEv
+FN:718,_ZNSsixEj
+FN:532,_ZNSs5beginEv
+FN:1147,_ZNSs5eraseEN9__gnu_cxx17__normal_iteratorIPcSsEE
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+FN:2136,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S3_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:188,0
+DA:189,0
+DA:196,0
+DA:197,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:291,0
+DA:292,0
+DA:299,0
+DA:301,0
+DA:302,0
+DA:303,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:532,0
+DA:534,0
+DA:535,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:718,0
+DA:724,0
+DA:725,0
+DA:835,0
+DA:838,0
+DA:1147,0
+DA:1151,0
+DA:1152,0
+DA:1153,0
+DA:1154,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1923,0
+DA:1925,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2136,0
+DA:2140,0
+DA:2141,0
+DA:2142,0
+DA:2188,0
+DA:2189,0
+DA:2238,0
+DA:2239,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:301,0
+BA:301,0
+BA:308,0
+BA:308,0
+BA:341,0
+BA:341,0
+BA:1948,0
+BA:1948,0
+LF:113
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:668,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+DA:668,0
+DA:673,0
+DA:674,0
+DA:675,0
+DA:676,0
+DA:677,0
+DA:678,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:23
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/list.tcc
+FN:109,_ZNSt4listISsSaISsEE5eraseESt14_List_iteratorISsE
+DA:109,0
+DA:111,0
+DA:112,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:286,_ZNSt12__miter_baseIPPN6wibble11commandline6OptionELb0EE3__bES4_
+FN:286,_ZNSt12__miter_baseIPPN6wibble11commandline11OptionGroupELb0EE3__bES4_
+FN:286,_ZNSt12__miter_baseIPPN6wibble11commandline6EngineELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:268,_ZNSt12__niter_baseIPPN6wibble11commandline6OptionELb0EE3__bES4_
+FN:188,_ZSt3minIjERKT_S2_S2_
+FN:268,_ZNSt12__niter_baseIPPN6wibble11commandline11OptionGroupELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIPPN6wibble11commandline6EngineELb0EE3__bES4_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET0_T_SA_S9_
+FN:569,_ZNSt20__copy_move_backwardILb0ELb1ESt26random_access_iterator_tagE13__copy_move_bIPN6wibble11commandline6EngineEEEPT_PKS7_SA_S8_
+FN:579,_ZSt22__copy_move_backward_aILb0EPPN6wibble11commandline6EngineES4_ET1_T0_S6_S5_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPPN6wibble11commandline6EngineES4_ET1_T0_S6_S5_
+FN:624,_ZSt13copy_backwardIPPN6wibble11commandline6EngineES4_ET0_T_S6_S5_
+FN:375,_ZNSt11__copy_moveILb0ELb1ESt26random_access_iterator_tagE8__copy_mIPN6wibble11commandline6EngineEEEPT_PKS7_SA_S8_
+FN:385,_ZSt13__copy_move_aILb0EPPN6wibble11commandline6EngineES4_ET1_T0_S6_S5_
+FN:430,_ZSt14__copy_move_a2ILb0EPPN6wibble11commandline6EngineES4_ET1_T0_S6_S5_
+FN:456,_ZSt4copyIPPN6wibble11commandline6EngineES4_ET0_T_S6_S5_
+FN:569,_ZNSt20__copy_move_backwardILb0ELb1ESt26random_access_iterator_tagE13__copy_move_bIPN6wibble11commandline11OptionGroupEEEPT_PKS7_SA_S8_
+FN:579,_ZSt22__copy_move_backward_aILb0EPPN6wibble11commandline11OptionGroupES4_ET1_T0_S6_S5_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPPN6wibble11commandline11OptionGroupES4_ET1_T0_S6_S5_
+FN:624,_ZSt13copy_backwardIPPN6wibble11commandline11OptionGroupES4_ET0_T_S6_S5_
+FN:375,_ZNSt11__copy_moveILb0ELb1ESt26random_access_iterator_tagE8__copy_mIPN6wibble11commandline11OptionGroupEEEPT_PKS7_SA_S8_
+FN:385,_ZSt13__copy_move_aILb0EPPN6wibble11commandline11OptionGroupES4_ET1_T0_S6_S5_
+FN:430,_ZSt14__copy_move_a2ILb0EPPN6wibble11commandline11OptionGroupES4_ET1_T0_S6_S5_
+FN:456,_ZSt4copyIPPN6wibble11commandline11OptionGroupES4_ET0_T_S6_S5_
+FN:569,_ZNSt20__copy_move_backwardILb0ELb1ESt26random_access_iterator_tagE13__copy_move_bIPN6wibble11commandline6OptionEEEPT_PKS7_SA_S8_
+FN:579,_ZSt22__copy_move_backward_aILb0EPPN6wibble11commandline6OptionES4_ET1_T0_S6_S5_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPPN6wibble11commandline6OptionES4_ET1_T0_S6_S5_
+FN:624,_ZSt13copy_backwardIPPN6wibble11commandline6OptionES4_ET0_T_S6_S5_
+FN:375,_ZNSt11__copy_moveILb0ELb1ESt26random_access_iterator_tagE8__copy_mIPN6wibble11commandline6OptionEEEPT_PKS7_SA_S8_
+FN:385,_ZSt13__copy_move_aILb0EPPN6wibble11commandline6OptionES4_ET1_T0_S6_S5_
+FN:430,_ZSt14__copy_move_a2ILb0EPPN6wibble11commandline6OptionES4_ET1_T0_S6_S5_
+FN:456,_ZSt4copyIPPN6wibble11commandline6OptionES4_ET0_T_S6_S5_
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,66
+DA:269,66
+DA:276,0
+DA:277,0
+DA:286,44
+DA:287,44
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:375,22
+DA:377,22
+DA:379,22
+DA:385,22
+DA:393,22
+DA:396,22
+DA:430,22
+DA:435,22
+DA:456,22
+DA:466,22
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:569,0
+DA:571,0
+DA:572,0
+DA:573,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:193,0
+BA:193,0
+BA:215,0
+BA:215,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+LF:45
+LH:14
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:97,_ZSt8_DestroyIPPN6wibble11commandline6OptionEEvT_S5_
+FN:126,_ZSt8_DestroyIPPN6wibble11commandline6OptionES3_EvT_S5_RSaIT0_E
+FN:97,_ZSt8_DestroyIPPN6wibble11commandline11OptionGroupEEvT_S5_
+FN:126,_ZSt8_DestroyIPPN6wibble11commandline11OptionGroupES3_EvT_S5_RSaIT0_E
+FN:97,_ZSt8_DestroyIPPN6wibble11commandline6EngineEEvT_S5_
+FN:126,_ZSt8_DestroyIPPN6wibble11commandline6EngineES3_EvT_S5_RSaIT0_E
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:229,_ZNKSt4lessIcEclERKcS2_
+FN:482,_ZNKSt10_Select1stISt4pairIKSsPN6wibble11commandline6EngineEEEclERKS6_
+FN:482,_ZNKSt10_Select1stISt4pairIKcPN6wibble11commandline6OptionEEEclERKS6_
+FN:482,_ZNKSt10_Select1stISt4pairIKSsPN6wibble11commandline6OptionEEEclERKS6_
+FN:229,_ZNKSt4lessISsEclERKSsS2_
+DA:229,37
+DA:230,37
+DA:482,244
+DA:483,244
+LF:4
+LH:4
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPKcSt6vectorIcSaIcEEEdeEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEdeEv
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPKPN6wibble11commandline6OptionESt6vectorIS4_SaIS4_EEEppEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPKPN6wibble11commandline6OptionESt6vectorIS4_SaIS4_EEEdeEv
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPKPN6wibble11commandline11OptionGroupESt6vectorIS4_SaIS4_EEEppEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPKPN6wibble11commandline11OptionGroupESt6vectorIS4_SaIS4_EEEdeEv
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPKPN6wibble11commandline6EngineESt6vectorIS4_SaIS4_EEEppEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPKPN6wibble11commandline6EngineESt6vectorIS4_SaIS4_EEEdeEv
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEppEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:710,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEppEi
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKcSt6vectorIcSaIcEEEC1ERKS2_
+FN:710,_ZN9__gnu_cxx17__normal_iteratorIPKcSt6vectorIcSaIcEEEppEi
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKcSt6vectorIcSaIcEEE4baseEv
+FN:781,_ZN9__gnu_cxxneIPKcSt6vectorIcSaIcEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:781,_ZN9__gnu_cxxneIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKPN6wibble11commandline6OptionESt6vectorIS4_SaIS4_EEEC1ERKS6_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKPN6wibble11commandline6OptionESt6vectorIS4_SaIS4_EEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKPN6wibble11commandline6OptionESt6vectorIS4_SaIS4_EEEEbRKNS_17__normal_iteratorIT_T0_EESF_
+FN:781,_ZN9__gnu_cxxneIPKPN6wibble11commandline6OptionESt6vectorIS4_SaIS4_EEEEbRKNS_17__normal_iteratorIT_T0_EESF_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPPN6wibble11commandline11OptionGroupESt6vectorIS4_SaIS4_EEEC1ERKS5_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPPN6wibble11commandline11OptionGroupESt6vectorIS4_SaIS4_EEE4baseEv
+FN:690,_ZN9__gnu_cxx17__normal_iteratorIPKPN6wibble11commandline11OptionGroupESt6vectorIS4_SaIS4_EEEC1IPS4_EERKNS0_IT_NS_11__enable_ifIXsrSt10__are_sameISD_SC_E7__valueES9_E6__typeEEE
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKPN6wibble11commandline11OptionGroupESt6vectorIS4_SaIS4_EEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKPN6wibble11commandline11OptionGroupESt6vectorIS4_SaIS4_EEEEbRKNS_17__normal_iteratorIT_T0_EESF_
+FN:775,_ZN9__gnu_cxxneIPKPN6wibble11commandline11OptionGroupEPS4_St6vectorIS4_SaIS4_EEEEbRKNS_17__normal_iteratorIT_T1_EERKNSB_IT0_SD_EE
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPPN6wibble11commandline6EngineESt6vectorIS4_SaIS4_EEEC1ERKS5_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPPN6wibble11commandline6EngineESt6vectorIS4_SaIS4_EEE4baseEv
+FN:690,_ZN9__gnu_cxx17__normal_iteratorIPKPN6wibble11commandline6EngineESt6vectorIS4_SaIS4_EEEC1IPS4_EERKNS0_IT_NS_11__enable_ifIXsrSt10__are_sameISD_SC_E7__valueES9_E6__typeEEE
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKPN6wibble11commandline6EngineESt6vectorIS4_SaIS4_EEE4baseEv
+FN:775,_ZN9__gnu_cxxneIPKPN6wibble11commandline6EngineEPS4_St6vectorIS4_SaIS4_EEEEbRKNS_17__normal_iteratorIT_T1_EERKNSB_IT0_SD_EE
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:690,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1IPSsEERKNS0_IT_NS_11__enable_ifIXsrSt10__are_sameIS9_S8_E7__valueES5_E6__typeEEE
+FN:775,_ZN9__gnu_cxxneIPKSsPSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T1_EERKNS7_IT0_S9_EE
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPcSsEC1ERKS1_
+FN:735,_ZNK9__gnu_cxx17__normal_iteratorIPcSsEplERKi
+FN:769,_ZN9__gnu_cxxeqIPKPN6wibble11commandline6EngineESt6vectorIS4_SaIS4_EEEEbRKNS_17__normal_iteratorIT_T0_EESF_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPPN6wibble11commandline6OptionESt6vectorIS4_SaIS4_EEEC1ERKS5_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPPN6wibble11commandline6OptionESt6vectorIS4_SaIS4_EEE4baseEv
+FN:690,_ZN9__gnu_cxx17__normal_iteratorIPKPN6wibble11commandline6OptionESt6vectorIS4_SaIS4_EEEC1IPS4_EERKNS0_IT_NS_11__enable_ifIXsrSt10__are_sameISD_SC_E7__valueES9_E6__typeEEE
+FN:775,_ZN9__gnu_cxxneIPKPN6wibble11commandline6OptionEPS4_St6vectorIS4_SaIS4_EEEEbRKNS_17__normal_iteratorIT_T1_EERKNSB_IT0_SD_EE
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPPN6wibble11commandline6OptionESt6vectorIS4_SaIS4_EEEdeEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKPN6wibble11commandline11OptionGroupESt6vectorIS4_SaIS4_EEEC1ERKS6_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPcSsE4baseEv
+FN:846,_ZN9__gnu_cxxmiIPcSsEENS_17__normal_iteratorIT_T0_E15difference_typeERKS5_S8_
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPPN6wibble11commandline11OptionGroupESt6vectorIS4_SaIS4_EEEdeEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPPN6wibble11commandline6EngineESt6vectorIS4_SaIS4_EEEdeEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKPN6wibble11commandline6EngineESt6vectorIS4_SaIS4_EEEC1ERKS6_
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:683,207
+DA:690,28
+DA:691,28
+DA:695,143
+DA:696,143
+DA:703,33
+DA:705,33
+DA:706,33
+DA:710,43
+DA:711,43
+DA:735,0
+DA:736,0
+DA:747,270
+DA:748,270
+DA:769,11
+DA:770,11
+DA:775,38
+DA:776,38
+DA:781,124
+DA:782,124
+DA:846,0
+DA:847,0
+LF:32
+LH:18
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_list.h
+FN:169,_ZNKSt14_List_iteratorISsEeqERKS0_
+FN:139,_ZNSt14_List_iteratorISsEppEv
+FN:131,_ZNKSt14_List_iteratorISsEdeEv
+FN:173,_ZNKSt14_List_iteratorISsEneERKS0_
+FN:146,_ZNSt14_List_iteratorISsEppEi
+FN:126,_ZNSt14_List_iteratorISsEC1EPSt15_List_node_base
+FN:666,_ZNSt4listISsSaISsEE3endEv
+FN:328,_ZNKSt10_List_baseISsSaISsEE21_M_get_Node_allocatorEv
+FN:332,_ZNKSt10_List_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:317,_ZNSt10_List_baseISsSaISsEE11_M_put_nodeEPSt10_List_nodeISsE
+FN:1356,_ZNSt4listISsSaISsEE8_M_eraseESt14_List_iteratorISsE
+DA:126,0
+DA:127,0
+DA:131,0
+DA:132,0
+DA:139,0
+DA:141,0
+DA:142,0
+DA:146,0
+DA:148,0
+DA:149,0
+DA:169,0
+DA:170,0
+DA:173,42
+DA:174,42
+DA:317,0
+DA:318,0
+DA:328,0
+DA:329,0
+DA:332,0
+DA:333,0
+DA:666,0
+DA:667,0
+DA:1356,0
+DA:1358,0
+DA:1359,0
+DA:1360,0
+DA:1361,0
+DA:1362,0
+LF:28
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_map.h
+FN:384,_ZNKSt3mapISsPN6wibble11commandline6EngineESt4lessISsESaISt4pairIKSsS3_EEE5emptyEv
+FN:384,_ZNKSt3mapIcPN6wibble11commandline6OptionESt4lessIcESaISt4pairIKcS3_EEE5emptyEv
+FN:384,_ZNKSt3mapISsPN6wibble11commandline6OptionESt4lessISsESaISt4pairIKSsS3_EEE5emptyEv
+FN:275,_ZNSt3mapIcPN6wibble11commandline6OptionESt4lessIcESaISt4pairIKcS3_EEE5beginEv
+FN:293,_ZNSt3mapIcPN6wibble11commandline6OptionESt4lessIcESaISt4pairIKcS3_EEE3endEv
+FN:590,_ZNKSt3mapIcPN6wibble11commandline6OptionESt4lessIcESaISt4pairIKcS3_EEE8key_compEv
+FN:275,_ZNSt3mapISsPN6wibble11commandline6OptionESt4lessISsESaISt4pairIKSsS3_EEE5beginEv
+FN:293,_ZNSt3mapISsPN6wibble11commandline6OptionESt4lessISsESaISt4pairIKSsS3_EEE3endEv
+FN:590,_ZNKSt3mapISsPN6wibble11commandline6OptionESt4lessISsESaISt4pairIKSsS3_EEE8key_compEv
+FN:275,_ZNSt3mapISsPN6wibble11commandline6EngineESt4lessISsESaISt4pairIKSsS3_EEE5beginEv
+FN:293,_ZNSt3mapISsPN6wibble11commandline6EngineESt4lessISsESaISt4pairIKSsS3_EEE3endEv
+FN:590,_ZNKSt3mapISsPN6wibble11commandline6EngineESt4lessISsESaISt4pairIKSsS3_EEE8key_compEv
+FN:614,_ZNSt3mapIcPN6wibble11commandline6OptionESt4lessIcESaISt4pairIKcS3_EEE4findERS7_
+FN:656,_ZNSt3mapIcPN6wibble11commandline6OptionESt4lessIcESaISt4pairIKcS3_EEE11lower_boundERS7_
+FN:656,_ZNSt3mapISsPN6wibble11commandline6EngineESt4lessISsESaISt4pairIKSsS3_EEE11lower_boundERS7_
+FN:614,_ZNSt3mapISsPN6wibble11commandline6EngineESt4lessISsESaISt4pairIKSsS3_EEE4findERS7_
+FN:656,_ZNSt3mapISsPN6wibble11commandline6OptionESt4lessISsESaISt4pairIKSsS3_EEE11lower_boundERS7_
+FN:614,_ZNSt3mapISsPN6wibble11commandline6OptionESt4lessISsESaISt4pairIKSsS3_EEE4findERS7_
+FN:581,_ZNSt3mapIcPN6wibble11commandline6OptionESt4lessIcESaISt4pairIKcS3_EEE5clearEv
+FN:581,_ZNSt3mapISsPN6wibble11commandline6OptionESt4lessISsESaISt4pairIKSsS3_EEE5clearEv
+FN:581,_ZNSt3mapISsPN6wibble11commandline6EngineESt4lessISsESaISt4pairIKSsS3_EEE5clearEv
+FN:495,_ZNSt3mapISsPN6wibble11commandline6EngineESt4lessISsESaISt4pairIKSsS3_EEE6insertESt17_Rb_tree_iteratorIS8_ERKS8_
+FN:411,_ZNSt3mapISsPN6wibble11commandline6EngineESt4lessISsESaISt4pairIKSsS3_EEEixERS7_
+FN:495,_ZNSt3mapIcPN6wibble11commandline6OptionESt4lessIcESaISt4pairIKcS3_EEE6insertESt17_Rb_tree_iteratorIS8_ERKS8_
+FN:411,_ZNSt3mapIcPN6wibble11commandline6OptionESt4lessIcESaISt4pairIKcS3_EEEixERS7_
+FN:495,_ZNSt3mapISsPN6wibble11commandline6OptionESt4lessISsESaISt4pairIKSsS3_EEE6insertESt17_Rb_tree_iteratorIS8_ERKS8_
+FN:411,_ZNSt3mapISsPN6wibble11commandline6OptionESt4lessISsESaISt4pairIKSsS3_EEEixERS7_
+DA:275,0
+DA:276,0
+DA:293,131
+DA:294,131
+DA:384,0
+DA:385,0
+DA:411,52
+DA:416,52
+DA:418,52
+DA:419,52
+DA:420,52
+DA:495,52
+DA:496,52
+DA:581,33
+DA:582,33
+DA:590,13
+DA:591,13
+DA:614,79
+DA:615,79
+DA:656,52
+DA:657,52
+BA:418,2
+BA:418,2
+BA:418,2
+BA:418,1
+BA:418,2
+BA:418,1
+BA:418,1
+BA:418,2
+BA:418,0
+BA:418,0
+BA:418,2
+BA:418,1
+BA:418,2
+BA:418,2
+BA:418,2
+BA:418,1
+BA:418,2
+BA:418,1
+LF:21
+LH:17
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairIKcPN6wibble11commandline6OptionEEC1ERS0_RKS4_
+FN:88,_ZNSt4pairISt14_List_iteratorISsEbEC1ERKS1_RKb
+FN:218,_ZSt9make_pairISt14_List_iteratorISsEbESt4pairIT_T0_ES3_S4_
+FN:73,_ZNSt4pairIKcPN6wibble11commandline6OptionEED1Ev
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKcPN6wibble11commandline6OptionEEEbEC1ERKS7_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKSsPN6wibble11commandline6OptionEEEbEC1ERKS7_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKSsPN6wibble11commandline6EngineEEEbEC1ERKS7_RKb
+FN:88,_ZNSt4pairIKSsPN6wibble11commandline6EngineEEC1ERS0_RKS4_
+FN:73,_ZNSt4pairIKSsPN6wibble11commandline6EngineEEC1ERKS5_
+FN:88,_ZNSt4pairIKSsPN6wibble11commandline6OptionEEC1ERS0_RKS4_
+FN:73,_ZNSt4pairIKSsPN6wibble11commandline6OptionEEC1ERKS5_
+FN:73,_ZNSt4pairIKSsPN6wibble11commandline6OptionEED1Ev
+FN:73,_ZNSt4pairIKSsPN6wibble11commandline6EngineEED1Ev
+DA:73,37
+DA:88,101
+DA:89,101
+DA:218,25
+DA:219,25
+LF:5
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:251,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsPN6wibble11commandline6EngineEEEptEv
+FN:214,_ZNKSt17_Rb_tree_iteratorISt4pairIKcPN6wibble11commandline6OptionEEEneERKS7_
+FN:176,_ZNKSt17_Rb_tree_iteratorISt4pairIKcPN6wibble11commandline6OptionEEEptEv
+FN:214,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsPN6wibble11commandline6OptionEEEneERKS7_
+FN:176,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsPN6wibble11commandline6OptionEEEptEv
+FN:214,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsPN6wibble11commandline6EngineEEEneERKS7_
+FN:176,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsPN6wibble11commandline6EngineEEEptEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorISt4pairIKcPN6wibble11commandline6OptionEEEC1ERKSt17_Rb_tree_iteratorIS6_E
+FN:285,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKcPN6wibble11commandline6OptionEEEeqERKS7_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKcPN6wibble11commandline6OptionEEEptEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsPN6wibble11commandline6OptionEEEC1ERKSt17_Rb_tree_iteratorIS6_E
+FN:285,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsPN6wibble11commandline6OptionEEEeqERKS7_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsPN6wibble11commandline6OptionEEEptEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsPN6wibble11commandline6EngineEEEeqERKS7_
+FN:243,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsPN6wibble11commandline6EngineEEEC1ERKSt17_Rb_tree_iteratorIS6_E
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsPN6wibble11commandline6EngineEEEneERKS7_
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKcPN6wibble11commandline6OptionEEEneERKS7_
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsPN6wibble11commandline6OptionEEEneERKS7_
+FN:452,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_beginEv
+FN:172,_ZNKSt17_Rb_tree_iteratorISt4pairIKcPN6wibble11commandline6OptionEEEdeEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKcPN6wibble11commandline6OptionEEEeqERKS7_
+FN:172,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsPN6wibble11commandline6OptionEEEdeEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsPN6wibble11commandline6OptionEEEeqERKS7_
+FN:172,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsPN6wibble11commandline6EngineEEEdeEv
+FN:637,_ZNKSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE5emptyEv
+FN:637,_ZNKSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE5emptyEv
+FN:637,_ZNKSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE5emptyEv
+FN:487,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:463,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKcPN6wibble11commandline6OptionEEEC1EPSt13_Rb_tree_nodeIS6_E
+FN:596,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE5beginEv
+FN:610,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE3endEv
+FN:592,_ZNKSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE8key_compEv
+FN:463,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKSsPN6wibble11commandline6OptionEEEC1EPSt13_Rb_tree_nodeIS6_E
+FN:596,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE5beginEv
+FN:610,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE3endEv
+FN:592,_ZNKSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8key_compEv
+FN:463,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKSsPN6wibble11commandline6EngineEEEC1EPSt13_Rb_tree_nodeIS6_E
+FN:596,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE5beginEv
+FN:610,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE3endEv
+FN:592,_ZNKSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8key_compEv
+FN:436,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE11_M_leftmostEv
+FN:428,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE7_M_rootEv
+FN:444,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE12_M_rightmostEv
+FN:436,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11_M_leftmostEv
+FN:428,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE7_M_rootEv
+FN:444,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE12_M_rightmostEv
+FN:436,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11_M_leftmostEv
+FN:428,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE7_M_rootEv
+FN:444,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE12_M_rightmostEv
+FN:491,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_rightEPKSt18_Rb_tree_node_base
+FN:495,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:495,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:641,_ZNKSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE4sizeEv
+FN:491,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE8_S_rightEPKSt18_Rb_tree_node_base
+FN:495,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:641,_ZNKSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE4sizeEv
+FN:491,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_rightEPKSt18_Rb_tree_node_base
+FN:641,_ZNKSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE4sizeEv
+FN:347,_ZNKSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE21_M_get_Node_allocatorEv
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE21_M_get_Node_allocatorEv
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE21_M_get_Node_allocatorEv
+FN:471,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_valueEPKSt13_Rb_tree_nodeIS6_E
+FN:475,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE6_S_keyEPKSt13_Rb_tree_nodeIS6_E
+FN:471,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE8_S_valueEPKSt13_Rb_tree_nodeIS6_E
+FN:475,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE6_S_keyEPKSt13_Rb_tree_nodeIS6_E
+FN:954,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE14_M_lower_boundEPSt13_Rb_tree_nodeIS6_ESF_RS1_
+FN:1390,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE4findERS1_
+FN:715,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE11lower_boundERS1_
+FN:471,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_valueEPKSt13_Rb_tree_nodeIS6_E
+FN:475,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE6_S_keyEPKSt13_Rb_tree_nodeIS6_E
+FN:351,_ZNKSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13get_allocatorEv
+FN:255,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsPN6wibble11commandline6EngineEEEppEv
+FN:255,_ZNSt23_Rb_tree_const_iteratorISt4pairIKcPN6wibble11commandline6OptionEEEppEv
+FN:255,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsPN6wibble11commandline6OptionEEEppEv
+FN:954,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE14_M_lower_boundEPSt13_Rb_tree_nodeIS6_ESF_RS1_
+FN:715,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11lower_boundERS1_
+FN:1390,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE4findERS1_
+FN:954,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE14_M_lower_boundEPSt13_Rb_tree_nodeIS6_ESF_RS1_
+FN:715,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11lower_boundERS1_
+FN:1390,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE4findERS1_
+FN:360,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:388,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:936,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE8_M_eraseEPSt13_Rb_tree_nodeIS6_E
+FN:695,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE5clearEv
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_eraseEPSt13_Rb_tree_nodeIS6_E
+FN:695,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE5clearEv
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_eraseEPSt13_Rb_tree_nodeIS6_E
+FN:695,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE5clearEv
+FN:356,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE14_M_create_nodeERKS6_
+FN:356,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE14_M_create_nodeERKS6_
+FN:356,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE14_M_create_nodeERKS6_
+FN:270,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsPN6wibble11commandline6EngineEEEmmEv
+FN:270,_ZNSt23_Rb_tree_const_iteratorISt4pairIKcPN6wibble11commandline6OptionEEEmmEv
+FN:270,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsPN6wibble11commandline6OptionEEEmmEv
+FN:846,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE10_M_insert_EPKSt18_Rb_tree_node_baseSF_RKS6_
+FN:846,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE10_M_insert_EPKSt18_Rb_tree_node_baseSF_RKS6_
+FN:846,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE10_M_insert_EPKSt18_Rb_tree_node_baseSF_RKS6_
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKSsPN6wibble11commandline6EngineEEEmmEv
+FN:1133,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE16_M_insert_uniqueERKS6_
+FN:1178,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6EngineEESt10_Select1stIS6_ESt4lessISsESaIS6_EE17_M_insert_unique_ESt23_Rb_tree_const_iteratorIS6_ERKS6_
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKcPN6wibble11commandline6OptionEEEmmEv
+FN:1133,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE16_M_insert_uniqueERKS6_
+FN:1178,_ZNSt8_Rb_treeIcSt4pairIKcPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessIcESaIS6_EE17_M_insert_unique_ESt23_Rb_tree_const_iteratorIS6_ERKS6_
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKSsPN6wibble11commandline6OptionEEEmmEv
+FN:1133,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE16_M_insert_uniqueERKS6_
+FN:1178,_ZNSt8_Rb_treeISsSt4pairIKSsPN6wibble11commandline6OptionEESt10_Select1stIS6_ESt4lessISsESaIS6_EE17_M_insert_unique_ESt23_Rb_tree_const_iteratorIS6_ERKS6_
+DA:168,499
+DA:169,499
+DA:172,65
+DA:173,65
+DA:176,2
+DA:177,2
+DA:195,0
+DA:197,0
+DA:198,0
+DA:210,157
+DA:211,157
+DA:214,52
+DA:215,52
+DA:243,102
+DA:244,102
+DA:251,19
+DA:252,19
+DA:255,0
+DA:257,0
+DA:258,0
+DA:270,2
+DA:272,2
+DA:273,2
+DA:285,25
+DA:286,25
+DA:289,0
+DA:290,0
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:356,52
+DA:357,52
+DA:360,0
+DA:361,0
+DA:364,52
+DA:366,52
+DA:368,52
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,52
+DA:388,0
+DA:390,0
+DA:391,0
+DA:392,0
+DA:428,33
+DA:429,33
+DA:436,68
+DA:437,68
+DA:444,63
+DA:445,63
+DA:452,0
+DA:453,0
+DA:463,313
+DA:464,313
+DA:471,117
+DA:472,117
+DA:475,117
+DA:476,117
+DA:479,0
+DA:480,0
+DA:487,0
+DA:488,0
+DA:491,2
+DA:492,2
+DA:495,81
+DA:496,81
+DA:499,81
+DA:500,81
+DA:592,13
+DA:593,13
+DA:596,24
+DA:599,24
+DA:610,268
+DA:611,268
+DA:637,0
+DA:638,0
+DA:641,39
+DA:642,39
+DA:695,33
+DA:697,33
+DA:698,33
+DA:699,33
+DA:700,33
+DA:701,33
+DA:702,33
+DA:715,52
+DA:716,52
+DA:846,52
+DA:850,52
+DA:852,52
+DA:854,52
+DA:857,52
+DA:858,52
+DA:936,0
+DA:939,0
+DA:941,0
+DA:942,0
+DA:943,0
+DA:944,0
+DA:946,0
+DA:954,131
+DA:956,379
+DA:957,117
+DA:958,59
+DA:960,58
+DA:961,131
+DA:1133,24
+DA:1135,24
+DA:1136,24
+DA:1137,24
+DA:1138,48
+DA:1140,0
+DA:1141,0
+DA:1142,0
+DA:1144,24
+DA:1145,24
+DA:1147,24
+DA:1148,24
+DA:1150,0
+DA:1152,0
+DA:1153,0
+DA:1154,0
+DA:1178,52
+DA:1181,52
+DA:1183,39
+DA:1186,15
+DA:1188,24
+DA:1190,13
+DA:1194,13
+DA:1195,13
+DA:1196,11
+DA:1197,2
+DA:1200,2
+DA:1201,1
+DA:1204,1
+DA:1207,0
+DA:1209,0
+DA:1213,0
+DA:1214,0
+DA:1215,0
+DA:1216,0
+DA:1219,0
+DA:1220,0
+DA:1222,0
+DA:1225,0
+DA:1230,0
+DA:1390,79
+DA:1392,79
+DA:1395,79
+BA:850,2
+BA:850,2
+BA:850,1
+BA:850,2
+BA:850,0
+BA:850,0
+BA:850,2
+BA:850,1
+BA:850,2
+BA:850,2
+BA:850,1
+BA:850,2
+BA:850,2
+BA:850,2
+BA:850,2
+BA:850,2
+BA:850,1
+BA:850,2
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:956,2
+BA:956,2
+BA:956,2
+BA:956,2
+BA:956,2
+BA:956,2
+BA:957,2
+BA:957,2
+BA:957,2
+BA:957,2
+BA:957,2
+BA:957,2
+BA:1138,1
+BA:1138,2
+BA:1138,1
+BA:1138,2
+BA:1138,1
+BA:1138,2
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1145,2
+BA:1145,1
+BA:1145,2
+BA:1145,1
+BA:1145,2
+BA:1145,1
+BA:1147,2
+BA:1147,1
+BA:1147,2
+BA:1147,1
+BA:1147,2
+BA:1147,1
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1181,2
+BA:1181,2
+BA:1181,2
+BA:1181,1
+BA:1181,2
+BA:1181,2
+BA:1183,1
+BA:1183,2
+BA:1183,0
+BA:1183,0
+BA:1183,1
+BA:1183,2
+BA:1183,2
+BA:1183,2
+BA:1183,2
+BA:1183,1
+BA:1183,2
+BA:1183,2
+BA:1183,2
+BA:1183,2
+BA:1183,2
+BA:1183,1
+BA:1183,2
+BA:1183,2
+BA:1190,2
+BA:1190,1
+BA:1190,0
+BA:1190,0
+BA:1190,2
+BA:1190,1
+BA:1195,2
+BA:1195,1
+BA:1195,0
+BA:1195,0
+BA:1195,2
+BA:1195,2
+BA:1197,0
+BA:1197,0
+BA:1197,0
+BA:1197,0
+BA:1197,2
+BA:1197,1
+BA:1200,0
+BA:1200,0
+BA:1200,0
+BA:1200,0
+BA:1200,2
+BA:1200,2
+BA:1209,0
+BA:1209,0
+BA:1209,0
+BA:1209,0
+BA:1209,0
+BA:1209,0
+BA:1214,0
+BA:1214,0
+BA:1214,0
+BA:1214,0
+BA:1214,0
+BA:1214,0
+BA:1216,0
+BA:1216,0
+BA:1216,0
+BA:1216,0
+BA:1216,0
+BA:1216,0
+BA:1219,0
+BA:1219,0
+BA:1219,0
+BA:1219,0
+BA:1219,0
+BA:1219,0
+BA:1395,2
+BA:1395,2
+BA:1395,2
+BA:1395,2
+BA:1395,2
+BA:1395,2
+BA:1395,2
+BA:1395,2
+BA:1395,2
+BA:1395,2
+BA:1395,2
+BA:1395,2
+LF:151
+LH:97
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+FN:97,_ZNSt20__uninitialized_copyILb1EE18uninitialized_copyIPPN6wibble11commandline6EngineES6_EET0_T_S8_S7_
+FN:113,_ZSt18uninitialized_copyIPPN6wibble11commandline6EngineES4_ET0_T_S6_S5_
+FN:261,_ZSt22__uninitialized_copy_aIPPN6wibble11commandline6EngineES4_S3_ET0_T_S6_S5_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPPN6wibble11commandline6EngineES4_SaIS3_EET0_T_S7_S6_RT1_
+FN:97,_ZNSt20__uninitialized_copyILb1EE18uninitialized_copyIPPN6wibble11commandline11OptionGroupES6_EET0_T_S8_S7_
+FN:113,_ZSt18uninitialized_copyIPPN6wibble11commandline11OptionGroupES4_ET0_T_S6_S5_
+FN:261,_ZSt22__uninitialized_copy_aIPPN6wibble11commandline11OptionGroupES4_S3_ET0_T_S6_S5_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPPN6wibble11commandline11OptionGroupES4_SaIS3_EET0_T_S7_S6_RT1_
+FN:97,_ZNSt20__uninitialized_copyILb1EE18uninitialized_copyIPPN6wibble11commandline6OptionES6_EET0_T_S8_S7_
+FN:113,_ZSt18uninitialized_copyIPPN6wibble11commandline6OptionES4_ET0_T_S6_S5_
+FN:261,_ZSt22__uninitialized_copy_aIPPN6wibble11commandline6OptionES4_S3_ET0_T_S6_S5_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPPN6wibble11commandline6OptionES4_SaIS3_EET0_T_S7_S6_RT1_
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:97,22
+DA:98,22
+DA:113,22
+DA:122,22
+DA:261,22
+DA:262,22
+DA:268,22
+DA:272,22
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+LF:16
+LH:8
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:484,_ZNKSt6vectorIPN6wibble11commandline6EngineESaIS3_EE4sizeEv
+FN:484,_ZNKSt6vectorIPN6wibble11commandline11OptionGroupESaIS3_EE4sizeEv
+FN:484,_ZNKSt6vectorIPN6wibble11commandline6OptionESaIS3_EE4sizeEv
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:97,_ZNSt12_Vector_baseIPN6wibble11commandline6OptionESaIS3_EE19_M_get_Tp_allocatorEv
+FN:97,_ZNSt12_Vector_baseIPN6wibble11commandline11OptionGroupESaIS3_EE19_M_get_Tp_allocatorEv
+FN:97,_ZNSt12_Vector_baseIPN6wibble11commandline6EngineESaIS3_EE19_M_get_Tp_allocatorEv
+FN:386,_ZNKSt6vectorIcSaIcEE5beginEv
+FN:404,_ZNKSt6vectorIcSaIcEE3endEv
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:404,_ZNKSt6vectorIPN6wibble11commandline6OptionESaIS3_EE3endEv
+FN:386,_ZNKSt6vectorIPN6wibble11commandline6OptionESaIS3_EE5beginEv
+FN:526,_ZNKSt6vectorIPN6wibble11commandline6OptionESaIS3_EE5emptyEv
+FN:377,_ZNSt6vectorIPN6wibble11commandline11OptionGroupESaIS3_EE5beginEv
+FN:395,_ZNSt6vectorIPN6wibble11commandline11OptionGroupESaIS3_EE3endEv
+FN:377,_ZNSt6vectorIPN6wibble11commandline6EngineESaIS3_EE5beginEv
+FN:395,_ZNSt6vectorIPN6wibble11commandline6EngineESaIS3_EE3endEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:377,_ZNSt6vectorIPN6wibble11commandline6OptionESaIS3_EE5beginEv
+FN:395,_ZNSt6vectorIPN6wibble11commandline6OptionESaIS3_EE3endEv
+FN:404,_ZNKSt6vectorIPN6wibble11commandline11OptionGroupESaIS3_EE3endEv
+FN:386,_ZNKSt6vectorIPN6wibble11commandline11OptionGroupESaIS3_EE5beginEv
+FN:526,_ZNKSt6vectorIPN6wibble11commandline11OptionGroupESaIS3_EE5emptyEv
+FN:404,_ZNKSt6vectorIPN6wibble11commandline6EngineESaIS3_EE3endEv
+FN:386,_ZNKSt6vectorIPN6wibble11commandline6EngineESaIS3_EE5beginEv
+FN:526,_ZNKSt6vectorIPN6wibble11commandline6EngineESaIS3_EE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:101,_ZNKSt12_Vector_baseIPN6wibble11commandline6OptionESaIS3_EE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorIPN6wibble11commandline6OptionESaIS3_EE8max_sizeEv
+FN:101,_ZNKSt12_Vector_baseIPN6wibble11commandline11OptionGroupESaIS3_EE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorIPN6wibble11commandline11OptionGroupESaIS3_EE8max_sizeEv
+FN:101,_ZNKSt12_Vector_baseIPN6wibble11commandline6EngineESaIS3_EE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorIPN6wibble11commandline6EngineESaIS3_EE8max_sizeEv
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:147,_ZNSt12_Vector_baseIPN6wibble11commandline6EngineESaIS3_EE13_M_deallocateEPS3_j
+FN:147,_ZNSt12_Vector_baseIPN6wibble11commandline11OptionGroupESaIS3_EE13_M_deallocateEPS3_j
+FN:147,_ZNSt12_Vector_baseIPN6wibble11commandline6OptionESaIS3_EE13_M_deallocateEPS3_j
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:1075,_ZNKSt6vectorIPN6wibble11commandline6EngineESaIS3_EE12_M_check_lenEjPKc
+FN:1075,_ZNKSt6vectorIPN6wibble11commandline11OptionGroupESaIS3_EE12_M_check_lenEjPKc
+FN:1075,_ZNKSt6vectorIPN6wibble11commandline6OptionESaIS3_EE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+FN:143,_ZNSt12_Vector_baseIPN6wibble11commandline6EngineESaIS3_EE11_M_allocateEj
+FN:143,_ZNSt12_Vector_baseIPN6wibble11commandline11OptionGroupESaIS3_EE11_M_allocateEj
+FN:143,_ZNSt12_Vector_baseIPN6wibble11commandline6OptionESaIS3_EE11_M_allocateEj
+FN:686,_ZNSt6vectorIPN6wibble11commandline6EngineESaIS3_EE9push_backERKS3_
+FN:686,_ZNSt6vectorIPN6wibble11commandline11OptionGroupESaIS3_EE9push_backERKS3_
+FN:686,_ZNSt6vectorIPN6wibble11commandline6OptionESaIS3_EE9push_backERKS3_
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:101,22
+DA:102,22
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,11
+DA:144,11
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:377,22
+DA:378,22
+DA:386,46
+DA:387,46
+DA:395,40
+DA:396,40
+DA:404,84
+DA:405,84
+DA:484,44
+DA:485,44
+DA:489,22
+DA:490,22
+DA:526,11
+DA:527,11
+DA:686,11
+DA:688,11
+DA:690,0
+DA:691,0
+DA:694,11
+DA:695,11
+DA:1075,11
+DA:1077,11
+DA:1078,0
+DA:1080,11
+DA:1081,11
+BA:144,0
+BA:144,0
+BA:144,2
+BA:144,1
+BA:144,2
+BA:144,1
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:688,1
+BA:688,2
+BA:688,1
+BA:688,2
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1077,1
+BA:1077,2
+BA:1077,1
+BA:1077,2
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,2
+BA:1081,1
+BA:1081,1
+BA:1081,2
+BA:1081,2
+BA:1081,1
+BA:1081,1
+BA:1081,2
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:49
+LH:26
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+FN:283,_ZNSt6vectorIPN6wibble11commandline6EngineESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_
+FN:283,_ZNSt6vectorIPN6wibble11commandline11OptionGroupESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_
+FN:283,_ZNSt6vectorIPN6wibble11commandline6OptionESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_
+DA:283,11
+DA:286,11
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,11
+DA:308,11
+DA:309,11
+DA:316,11
+DA:321,11
+DA:323,11
+DA:324,11
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,11
+DA:338,11
+DA:341,11
+DA:342,11
+DA:343,11
+DA:345,11
+BA:286,0
+BA:286,0
+BA:286,1
+BA:286,2
+BA:286,1
+BA:286,2
+BA:286,0
+BA:286,0
+LF:24
+LH:15
+end_of_record
+SF:/usr/include/c++/4.3/exception
+FN:59,_ZNSt9exceptionC2Ev
+DA:59,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline6OptionEE9constructEPS4_RKS4_
+FN:107,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline11OptionGroupEE9constructEPS4_RKS4_
+FN:107,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline6EngineEE9constructEPS4_RKS4_
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKcPN6wibble11commandline6OptionEEE7destroyEPS7_
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorIPN6wibble11commandline6OptionEE8max_sizeEv
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKcPN6wibble11commandline6OptionEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsPN6wibble11commandline6OptionEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsPN6wibble11commandline6EngineEEED2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorIPN6wibble11commandline11OptionGroupEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorIPN6wibble11commandline6EngineEE8max_sizeEv
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKcPN6wibble11commandline6OptionEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsPN6wibble11commandline6OptionEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsPN6wibble11commandline6EngineEEEC2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKcPN6wibble11commandline6OptionEEE9constructEPS7_RKS7_
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKcPN6wibble11commandline6OptionEEEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6OptionEEEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6EngineEEEE8max_sizeEv
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsPN6wibble11commandline6EngineEEE9constructEPS7_RKS7_
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsPN6wibble11commandline6OptionEEE9constructEPS7_RKS7_
+FN:118,_ZN9__gnu_cxx13new_allocatorISsE7destroyEPSs
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsPN6wibble11commandline6OptionEEE7destroyEPS7_
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsPN6wibble11commandline6EngineEEE7destroyEPS7_
+FN:97,_ZN9__gnu_cxx13new_allocatorISt10_List_nodeISsEE10deallocateEPS2_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:97,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline6EngineEE10deallocateEPS4_j
+FN:97,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline11OptionGroupEE10deallocateEPS4_j
+FN:97,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline6OptionEE10deallocateEPS4_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKcPN6wibble11commandline6OptionEEEE10deallocateEPS9_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6OptionEEEE10deallocateEPS9_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6EngineEEEE10deallocateEPS9_j
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline6EngineEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline11OptionGroupEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorIPN6wibble11commandline6OptionEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6EngineEEEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKcPN6wibble11commandline6OptionEEEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsPN6wibble11commandline6OptionEEEE8allocateEjPKv
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,63
+DA:89,63
+DA:90,0
+DA:92,63
+DA:97,0
+DA:98,0
+DA:101,85
+DA:102,85
+DA:107,63
+DA:108,63
+DA:118,0
+BA:89,0
+BA:89,0
+BA:89,1
+BA:89,2
+BA:89,1
+BA:89,2
+BA:89,0
+BA:89,0
+BA:89,1
+BA:89,2
+BA:89,1
+BA:89,2
+BA:89,1
+BA:89,2
+BA:108,0
+BA:108,0
+BA:108,2
+BA:108,1
+BA:108,2
+BA:108,1
+BA:108,2
+BA:108,1
+BA:108,0
+BA:108,0
+BA:108,2
+BA:108,1
+BA:108,2
+BA:108,1
+LF:14
+LH:7
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:195,_ZNSolsEj
+FN:464,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+DA:95,0
+DA:112,0
+DA:117,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:464,0
+DA:465,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/commandline/core.h
+FN:21,_ZNK6wibble9exception9BadOption4typeEv
+FN:52,_ZN6wibble11commandline7ManagedC2Ev
+FN:54,_ZN6wibble11commandline7ManagedD0Ev
+FN:54,_ZN6wibble11commandline7ManagedD1Ev
+FN:54,_ZN6wibble11commandline7ManagedD2Ev
+FN:22,_ZNK6wibble9exception9BadOption4descEv
+FN:19,_ZN6wibble9exception9BadOptionD0Ev
+FN:19,_ZN6wibble9exception9BadOptionD1Ev
+FN:17,_ZN6wibble9exception9BadOptionC1ERKSsS3_
+DA:17,0
+DA:18,0
+DA:19,0
+DA:21,0
+DA:22,0
+DA:52,0
+DA:54,0
+BA:19,0
+BA:19,0
+BA:19,0
+BA:19,0
+BA:54,0
+BA:54,0
+BA:54,0
+BA:54,0
+BA:54,0
+BA:54,0
+LF:7
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/commandline/options.h
+FN:95,_ZN6wibble11commandline6OptionD0Ev
+FN:95,_ZN6wibble11commandline6OptionD1Ev
+DA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+LF:1
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:263,_ZNK6wibble9exception11Consistency4typeEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:265,_ZNK6wibble9exception11Consistency4descEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:261,_ZN6wibble9exception11ConsistencyD0Ev
+FN:261,_ZN6wibble9exception11ConsistencyD1Ev
+FN:261,_ZN6wibble9exception11ConsistencyD2Ev
+FN:109,_ZN6wibble9exception10AddContext7contextEv
+FN:117,_ZN6wibble9exception10AddContext11copyContextISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvT_
+FN:153,_ZN6wibble9exception7Context10addContextERKSs
+FN:147,_ZN6wibble9exception7ContextC2ERKSs
+FN:186,_ZN6wibble9exception7GenericC2ERKSs
+FN:259,_ZN6wibble9exception11ConsistencyC2ERKSsS3_
+DA:109,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:113,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:137,0
+DA:147,0
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:186,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:259,0
+DA:260,0
+DA:261,0
+DA:263,0
+DA:265,0
+DA:266,0
+DA:267,0
+DA:268,0
+DA:269,0
+BA:110,0
+BA:110,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:267,0
+BA:267,0
+LF:44
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/string.h
+FN:71,_ZN6wibble3str3fmtIiEESsRKT_
+DA:71,0
+DA:73,0
+DA:74,0
+DA:75,0
+LF:4
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/commandline/options.cpp
+FN:24,_ZN6wibble11commandline4Bool6toBoolERKb
+FN:25,_ZN6wibble11commandline4Bool5toIntERKb
+FN:36,_ZN6wibble11commandline3Int6toBoolERKi
+FN:37,_ZN6wibble11commandline3Int5toIntERKi
+FN:44,_ZN6wibble11commandline6String6toBoolERKSs
+FN:135,_Z41__static_initialization_and_destruction_0ii
+FN:135,_GLOBAL__I_options.cpp
+FN:88,_ZN6wibble11commandline6OptionC1Ev
+FN:88,_ZN6wibble11commandline6OptionC2Ev
+FN:26,_ZN6wibble11commandline4Bool8toStringERKb
+FN:80,_ZN6wibble11commandlineL10manfmtlongERKSsS2_
+FN:64,_ZN6wibble11commandlineL7fmtlongERKSsS2_
+FN:54,_ZN6wibble11commandline12ExistingFile8toStringERKSs
+FN:46,_ZN6wibble11commandline6String8toStringERKSs
+FN:40,_ZN6wibble11commandline6String5parseERKSs
+FN:72,_ZN6wibble11commandlineL11manfmtshortEcRKSs
+FN:113,_ZNK6wibble11commandline6Option15fullUsageForManEv
+FN:56,_ZN6wibble11commandlineL8fmtshortEcRKSs
+FN:90,_ZNK6wibble11commandline6Option9fullUsageEv
+FN:48,_ZN6wibble11commandline12ExistingFile5parseERKSs
+FN:45,_ZN6wibble11commandline6String5toIntERKSs
+FN:28,_ZN6wibble11commandline3Int5parseERKSs
+FN:38,_ZN6wibble11commandline3Int8toStringERKi
+FN:16,_ZN6wibble11commandline4Bool5parseERKSs
+DA:16,2
+DA:18,2
+DA:19,1
+DA:20,1
+DA:21,1
+DA:22,0
+DA:24,0
+DA:25,0
+DA:26,0
+DA:28,3
+DA:31,7
+DA:32,4
+DA:33,0
+DA:34,3
+DA:36,2
+DA:37,4
+DA:38,2
+DA:40,10
+DA:42,10
+DA:44,4
+DA:45,0
+DA:46,13
+DA:48,0
+DA:50,0
+DA:51,0
+DA:52,0
+DA:54,0
+DA:56,0
+DA:58,0
+DA:59,0
+DA:61,0
+DA:64,0
+DA:66,0
+DA:67,0
+DA:69,0
+DA:72,0
+DA:74,0
+DA:75,0
+DA:77,0
+DA:80,0
+DA:82,0
+DA:83,0
+DA:85,0
+DA:88,0
+DA:90,0
+DA:92,0
+DA:94,0
+DA:97,0
+DA:98,0
+DA:99,0
+DA:102,0
+DA:105,0
+DA:106,0
+DA:107,0
+DA:110,0
+DA:113,0
+DA:115,0
+DA:117,0
+DA:120,0
+DA:121,0
+DA:124,0
+DA:127,0
+DA:128,0
+DA:131,0
+DA:135,3
+BA:18,2
+BA:18,1
+BA:18,2
+BA:18,1
+BA:18,2
+BA:18,1
+BA:18,2
+BA:18,2
+BA:18,1
+BA:18,2
+BA:18,2
+BA:18,2
+BA:20,2
+BA:20,1
+BA:20,2
+BA:20,1
+BA:20,2
+BA:20,1
+BA:20,1
+BA:20,2
+BA:20,0
+BA:20,0
+BA:20,2
+BA:20,1
+BA:25,0
+BA:25,0
+BA:26,0
+BA:26,0
+BA:31,2
+BA:31,2
+BA:32,1
+BA:32,2
+BA:50,0
+BA:50,0
+BA:58,0
+BA:58,0
+BA:66,0
+BA:66,0
+BA:74,0
+BA:74,0
+BA:82,0
+BA:82,0
+BA:92,0
+BA:92,0
+BA:94,0
+BA:94,0
+BA:97,0
+BA:97,0
+BA:102,0
+BA:102,0
+BA:105,0
+BA:105,0
+BA:117,0
+BA:117,0
+BA:120,0
+BA:120,0
+BA:124,0
+BA:124,0
+BA:127,0
+BA:127,0
+BA:135,2
+BA:135,1
+BA:135,2
+BA:135,1
+LF:65
+LH:17
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:98,_ZNSaIcEC2Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:276,0
+BA:276,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:543,_ZNKSs5beginEv
+FN:562,_ZNKSs3endEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:835,_ZNSs6appendEPKc
+FN:782,_ZNSspLEPKc
+FN:773,_ZNSspLERKSs
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2136,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S3_
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:543,0
+DA:544,0
+DA:562,0
+DA:563,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:773,0
+DA:774,0
+DA:782,0
+DA:783,0
+DA:835,0
+DA:838,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2136,0
+DA:2140,0
+DA:2141,0
+DA:2142,0
+DA:2188,0
+DA:2189,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:81
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:668,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+DA:668,0
+DA:673,0
+DA:674,0
+DA:675,0
+DA:676,0
+DA:677,0
+DA:678,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:23
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET0_T_SA_S9_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+LF:34
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:97,_ZSt8_DestroyIPcEvT_S1_
+FN:126,_ZSt8_DestroyIPccEvT_S1_RSaIT0_E
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPKcSsEppEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPKcSsEdeEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPKcSt6vectorIcSaIcEEEdeEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEdeEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKcSsEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKcSsE4baseEv
+FN:781,_ZN9__gnu_cxxneIPKcSsEEbRKNS_17__normal_iteratorIT_T0_EES8_
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:710,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEppEi
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKcSt6vectorIcSaIcEEEC1ERKS2_
+FN:710,_ZN9__gnu_cxx17__normal_iteratorIPKcSt6vectorIcSaIcEEEppEi
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKcSt6vectorIcSaIcEEE4baseEv
+FN:781,_ZN9__gnu_cxxneIPKcSt6vectorIcSaIcEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:781,_ZN9__gnu_cxxneIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:683,0
+DA:695,0
+DA:696,0
+DA:703,0
+DA:705,0
+DA:706,0
+DA:710,0
+DA:711,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+DA:781,0
+DA:782,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:79,_ZNSt12_Vector_baseIcSaIcEE12_Vector_implD1Ev
+FN:97,_ZNSt12_Vector_baseIcSaIcEE19_M_get_Tp_allocatorEv
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:386,_ZNKSt6vectorIcSaIcEE5beginEv
+FN:404,_ZNKSt6vectorIcSaIcEE3endEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:84,_ZNSt12_Vector_baseIcSaIcEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIcSaIcEEC2Ev
+FN:213,_ZNSt6vectorIcSaIcEEC1Ev
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:147,_ZNSt12_Vector_baseIcSaIcEE13_M_deallocateEPcj
+FN:135,_ZNSt12_Vector_baseIcSaIcEED2Ev
+FN:299,_ZNSt6vectorIcSaIcEED1Ev
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:377,0
+DA:378,0
+DA:386,0
+DA:387,0
+DA:395,0
+DA:396,0
+DA:404,0
+DA:405,0
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:526,0
+DA:527,0
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:49
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:286,0
+BA:286,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/exception
+FN:59,_ZNSt9exceptionC2Ev
+DA:59,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:97,_ZN9__gnu_cxx13new_allocatorIcE10deallocateEPcj
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+DA:95,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:263,_ZNK6wibble9exception11Consistency4typeEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:265,_ZNK6wibble9exception11Consistency4descEv
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:261,_ZN6wibble9exception11ConsistencyD0Ev
+FN:261,_ZN6wibble9exception11ConsistencyD1Ev
+FN:395,_ZN6wibble9exception6SystemD1Ev
+FN:109,_ZN6wibble9exception10AddContext7contextEv
+FN:117,_ZN6wibble9exception10AddContext11copyContextISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvT_
+FN:153,_ZN6wibble9exception7Context10addContextERKSs
+FN:147,_ZN6wibble9exception7ContextC2ERKSs
+FN:186,_ZN6wibble9exception7GenericC2ERKSs
+FN:259,_ZN6wibble9exception11ConsistencyC1ERKSsS3_
+DA:109,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:113,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:137,0
+DA:147,0
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:186,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:259,0
+DA:260,0
+DA:261,0
+DA:263,0
+DA:265,0
+DA:266,0
+DA:267,0
+DA:268,0
+DA:269,0
+DA:395,0
+BA:110,0
+BA:110,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:267,0
+BA:267,0
+BA:395,0
+BA:395,0
+LF:45
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/childprocess.h
+FN:53,_ZN6wibble3sys12ChildProcessD2Ev
+FN:53,_ZN6wibble3sys12ChildProcessD0Ev
+FN:53,_ZN6wibble3sys12ChildProcessD1Ev
+DA:53,0
+BA:53,0
+BA:53,0
+BA:53,0
+BA:53,0
+BA:53,0
+BA:53,0
+LF:1
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/exec.h
+FN:43,_ZN6wibble3sys4ExecD0Ev
+FN:43,_ZN6wibble3sys4ExecD1Ev
+DA:43,0
+BA:43,0
+BA:43,0
+BA:43,0
+BA:43,0
+LF:1
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/exec.cpp
+FN:81,_Z41__static_initialization_and_destruction_0ii
+FN:81,_GLOBAL__I_exec.cpp
+FN:48,_ZN6wibble3sys4Exec4execEv
+FN:32,_ZN6wibble3sys4Exec4mainEv
+FN:42,_ZN6wibble3sys4Exec9importEnvEv
+DA:32,0
+DA:35,0
+DA:36,0
+DA:37,0
+DA:39,0
+DA:42,0
+DA:44,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:51,0
+DA:52,0
+DA:53,0
+DA:54,0
+DA:56,0
+DA:58,0
+DA:59,0
+DA:60,0
+DA:61,0
+DA:62,0
+DA:65,0
+DA:66,0
+DA:69,0
+DA:70,0
+DA:72,0
+DA:73,0
+DA:77,0
+DA:81,3
+BA:44,0
+BA:44,0
+BA:52,0
+BA:52,0
+BA:56,0
+BA:56,0
+BA:58,0
+BA:58,0
+BA:60,0
+BA:60,0
+BA:61,0
+BA:61,0
+BA:66,0
+BA:66,0
+BA:72,0
+BA:72,0
+BA:81,2
+BA:81,1
+BA:81,2
+BA:81,1
+LF:28
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC1ERKS_
+FN:100,_ZNSaIcEC2ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:1551,_ZNKSs13get_allocatorEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:67
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:668,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+DA:668,0
+DA:673,0
+DA:674,0
+DA:675,0
+DA:676,0
+DA:677,0
+DA:678,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:23
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET0_T_SA_S9_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+LF:34
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:683,0
+DA:695,0
+DA:696,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+LF:17
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:562,_ZNSt6vectorISsSaISsEEixEj
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:377,0
+DA:378,0
+DA:386,0
+DA:387,0
+DA:395,0
+DA:396,0
+DA:404,0
+DA:405,0
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:526,0
+DA:527,0
+DA:562,0
+DA:563,0
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:51
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:286,0
+BA:286,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/exception
+FN:59,_ZNSt9exceptionC2Ev
+DA:59,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/buffer.cpp
+FN:90,_ZNK6wibble3sys6Buffer4DataltERKS2_
+FN:78,_ZNK6wibble3sys6Buffer4DataeqERKS2_
+FN:53,_ZN6wibble3sys6Buffer4DataD1Ev
+FN:53,_ZN6wibble3sys6Buffer4DataD2Ev
+FN:29,_ZN6wibble3sys6Buffer4DataC1Ej
+FN:29,_ZN6wibble3sys6Buffer4DataC2Ej
+FN:60,_ZN6wibble3sys6Buffer4Data6resizeEj
+FN:46,_ZN6wibble3sys6Buffer4DataC1EPKvj
+FN:46,_ZN6wibble3sys6Buffer4DataC2EPKvj
+FN:34,_ZN6wibble3sys6Buffer4DataC1EPvjb
+FN:34,_ZN6wibble3sys6Buffer4DataC2EPvjb
+DA:29,2
+DA:31,2
+DA:32,2
+DA:34,1
+DA:35,1
+DA:37,1
+DA:38,1
+DA:41,0
+DA:42,0
+DA:44,1
+DA:46,4
+DA:47,4
+DA:49,4
+DA:50,4
+DA:51,4
+DA:53,7
+DA:55,7
+DA:56,7
+DA:57,7
+DA:60,1
+DA:62,1
+DA:64,0
+DA:66,0
+DA:67,0
+DA:69,1
+DA:70,0
+DA:72,1
+DA:74,1
+DA:75,1
+DA:78,6
+DA:80,6
+DA:81,0
+DA:82,6
+DA:83,0
+DA:84,6
+DA:85,0
+DA:86,6
+DA:90,4
+DA:92,4
+DA:93,0
+DA:94,4
+DA:95,0
+DA:96,4
+DA:97,0
+DA:98,4
+DA:99,0
+DA:100,4
+DA:101,0
+DA:102,4
+BA:37,2
+BA:37,1
+BA:37,0
+BA:37,0
+BA:55,2
+BA:55,1
+BA:55,0
+BA:55,0
+BA:62,1
+BA:62,2
+BA:64,0
+BA:64,0
+BA:69,1
+BA:69,2
+BA:80,1
+BA:80,2
+BA:82,1
+BA:82,2
+BA:82,0
+BA:82,0
+BA:84,2
+BA:84,1
+BA:84,1
+BA:84,2
+BA:92,1
+BA:92,2
+BA:94,1
+BA:94,2
+BA:96,1
+BA:96,2
+BA:96,0
+BA:96,0
+BA:98,1
+BA:98,2
+BA:100,1
+BA:100,2
+LF:49
+LH:35
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:263,_ZNK6wibble9exception11Consistency4typeEv
+FN:406,_ZNK6wibble9exception6System4codeEv
+FN:428,_ZNK6wibble9exception4File4typeEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:395,_ZN6wibble9exception6SystemD1Ev
+FN:395,_ZN6wibble9exception6SystemD2Ev
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:261,_ZN6wibble9exception11ConsistencyD0Ev
+FN:261,_ZN6wibble9exception11ConsistencyD1Ev
+FN:426,_ZN6wibble9exception4FileD0Ev
+FN:426,_ZN6wibble9exception4FileD1Ev
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:265,_ZNK6wibble9exception11Consistency4descEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:109,_ZN6wibble9exception10AddContext7contextEv
+FN:117,_ZN6wibble9exception10AddContext11copyContextISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvT_
+FN:153,_ZN6wibble9exception7Context10addContextERKSs
+FN:147,_ZN6wibble9exception7ContextC2ERKSs
+FN:186,_ZN6wibble9exception7GenericC2ERKSs
+FN:259,_ZN6wibble9exception11ConsistencyC1ERKSsS3_
+FN:424,_ZN6wibble9exception4FileC1ERKSsS3_
+FN:430,_ZNK6wibble9exception4File4descEv
+DA:109,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:113,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:137,0
+DA:147,0
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:186,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:259,0
+DA:260,0
+DA:261,0
+DA:263,0
+DA:265,0
+DA:266,0
+DA:267,0
+DA:268,0
+DA:269,0
+DA:395,0
+DA:406,0
+DA:424,0
+DA:425,0
+DA:426,0
+DA:428,0
+DA:430,0
+BA:110,0
+BA:110,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:267,0
+BA:267,0
+BA:395,0
+BA:395,0
+BA:395,0
+BA:395,0
+BA:426,0
+BA:426,0
+BA:426,0
+BA:426,0
+LF:51
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/process.cpp
+FN:310,_Z41__static_initialization_and_destruction_0ii
+FN:310,_GLOBAL__I_process.cpp
+FN:250,_ZN6wibble3sys7processL21describe_rlimit_res_tEi
+FN:284,_ZN6wibble3sys7process8getLimitEiPi
+FN:299,_ZN6wibble3sys7process17getOpenFilesLimitEPi
+FN:298,_ZN6wibble3sys7process16getChildrenLimitEPi
+FN:297,_ZN6wibble3sys7process16getCoreSizeLimitEPi
+FN:296,_ZN6wibble3sys7process18getDataMemoryLimitEPi
+FN:295,_ZN6wibble3sys7process16getFileSizeLimitEPi
+FN:294,_ZN6wibble3sys7process15getCPUTimeLimitEPi
+FN:270,_ZN6wibble3sys7process8setLimitEii
+FN:306,_ZN6wibble3sys7process17setOpenFilesLimitEi
+FN:305,_ZN6wibble3sys7process16setChildrenLimitEi
+FN:304,_ZN6wibble3sys7process16setCoreSizeLimitEi
+FN:303,_ZN6wibble3sys7process18setDataMemoryLimitEi
+FN:302,_ZN6wibble3sys7process16setFileSizeLimitEi
+FN:301,_ZN6wibble3sys7process15setCPUTimeLimitEi
+FN:56,_ZN6wibble3sys7process12formatStatusEi
+FN:122,_ZN6wibble3sys7process10initGroupsERKSsj
+FN:133,_ZN6wibble3sys7processL9set_permsERKSsjS3_j
+FN:228,_ZN6wibble3sys7process8setPermsEjj
+FN:207,_ZN6wibble3sys7process8setPermsEj
+FN:114,_ZN6wibble3sys7process12getGroupInfoERKSs
+FN:106,_ZN6wibble3sys7process11getUserInfoERKSs
+FN:187,_ZN6wibble3sys7process8setPermsERKSsS3_
+FN:166,_ZN6wibble3sys7process8setPermsERKSs
+FN:101,_ZN6wibble3sys7process5umaskEj
+FN:95,_ZN6wibble3sys7process6chrootERKSs
+FN:86,_ZN6wibble3sys7process6getcwdEv
+FN:80,_ZN6wibble3sys7process5chdirERKSs
+FN:45,_ZN6wibble3sys7process13detachFromTTYEv
+DA:45,0
+DA:47,0
+DA:48,0
+DA:49,0
+DA:50,0
+DA:51,0
+DA:52,0
+DA:53,0
+DA:54,0
+DA:56,0
+DA:58,0
+DA:60,0
+DA:61,0
+DA:62,0
+DA:63,0
+DA:64,0
+DA:66,0
+DA:67,0
+DA:68,0
+DA:70,0
+DA:73,0
+DA:74,0
+DA:77,0
+DA:80,2
+DA:82,2
+DA:83,0
+DA:84,2
+DA:86,3
+DA:88,3
+DA:89,3
+DA:90,3
+DA:91,0
+DA:92,3
+DA:95,0
+DA:97,0
+DA:98,0
+DA:99,0
+DA:101,2
+DA:103,2
+DA:106,0
+DA:108,0
+DA:109,0
+DA:111,0
+DA:114,0
+DA:116,0
+DA:117,0
+DA:119,0
+DA:122,0
+DA:124,0
+DA:126,0
+DA:128,0
+DA:129,0
+DA:131,0
+DA:133,0
+DA:135,0
+DA:137,0
+DA:139,0
+DA:140,0
+DA:141,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:148,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:158,0
+DA:160,0
+DA:161,0
+DA:162,0
+DA:164,0
+DA:166,0
+DA:168,0
+DA:169,0
+DA:171,0
+DA:172,0
+DA:173,0
+DA:175,0
+DA:176,0
+DA:178,0
+DA:180,0
+DA:181,0
+DA:184,0
+DA:185,0
+DA:187,0
+DA:189,0
+DA:190,0
+DA:192,0
+DA:193,0
+DA:194,0
+DA:196,0
+DA:197,0
+DA:199,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:205,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:212,0
+DA:213,0
+DA:214,0
+DA:216,0
+DA:217,0
+DA:219,0
+DA:221,0
+DA:222,0
+DA:225,0
+DA:226,0
+DA:228,0
+DA:231,0
+DA:232,0
+DA:234,0
+DA:235,0
+DA:236,0
+DA:238,0
+DA:239,0
+DA:241,0
+DA:242,0
+DA:243,0
+DA:246,0
+DA:247,0
+DA:250,0
+DA:252,0
+DA:254,0
+DA:255,0
+DA:256,0
+DA:257,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:261,0
+DA:262,0
+DA:266,0
+DA:270,0
+DA:273,0
+DA:274,0
+DA:275,0
+DA:276,0
+DA:278,0
+DA:279,0
+DA:280,0
+DA:282,0
+DA:284,0
+DA:287,0
+DA:288,0
+DA:289,0
+DA:290,0
+DA:291,0
+DA:294,0
+DA:295,0
+DA:296,0
+DA:297,0
+DA:298,0
+DA:299,0
+DA:301,0
+DA:302,0
+DA:303,0
+DA:304,0
+DA:305,0
+DA:306,0
+DA:310,9
+BA:48,0
+BA:48,0
+BA:49,0
+BA:49,0
+BA:50,0
+BA:50,0
+BA:51,0
+BA:51,0
+BA:52,0
+BA:52,0
+BA:61,0
+BA:61,0
+BA:64,0
+BA:64,0
+BA:66,0
+BA:66,0
+BA:67,0
+BA:67,0
+BA:74,0
+BA:74,0
+BA:82,1
+BA:82,2
+BA:90,1
+BA:90,2
+BA:97,0
+BA:97,0
+BA:108,0
+BA:108,0
+BA:116,0
+BA:116,0
+BA:124,0
+BA:124,0
+BA:137,0
+BA:137,0
+BA:144,0
+BA:144,0
+BA:151,0
+BA:151,0
+BA:158,0
+BA:158,0
+BA:169,0
+BA:169,0
+BA:176,0
+BA:176,0
+BA:190,0
+BA:190,0
+BA:197,0
+BA:197,0
+BA:210,0
+BA:210,0
+BA:217,0
+BA:217,0
+BA:232,0
+BA:232,0
+BA:239,0
+BA:239,0
+BA:252,0
+BA:252,0
+BA:252,0
+BA:252,0
+BA:252,0
+BA:252,0
+BA:252,0
+BA:252,0
+BA:252,0
+BA:252,0
+BA:273,0
+BA:273,0
+BA:276,0
+BA:276,0
+BA:287,0
+BA:287,0
+BA:289,0
+BA:289,0
+BA:310,2
+BA:310,1
+BA:310,2
+BA:310,1
+LF:164
+LH:11
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:276,0
+BA:276,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:701,_ZNKSsixEj
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:835,_ZNSs6appendEPKc
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:701,0
+DA:704,0
+DA:835,0
+DA:838,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:69
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:668,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+DA:668,0
+DA:673,0
+DA:674,0
+DA:675,0
+DA:676,0
+DA:677,0
+DA:678,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:23
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET0_T_SA_S9_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+LF:34
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:683,0
+DA:695,0
+DA:696,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+LF:17
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:377,0
+DA:378,0
+DA:386,0
+DA:387,0
+DA:395,0
+DA:396,0
+DA:404,0
+DA:405,0
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:526,0
+DA:527,0
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:49
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:286,0
+BA:286,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/exception
+FN:59,_ZNSt9exceptionC2Ev
+DA:59,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,3
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:195,_ZNSolsEj
+DA:95,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:230,_ZNK6wibble9exception11Interrupted4typeEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:395,_ZN6wibble9exception6SystemD1Ev
+FN:225,_ZN6wibble9exception11InterruptedD0Ev
+FN:225,_ZN6wibble9exception11InterruptedD1Ev
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:109,_ZN6wibble9exception10AddContext7contextEv
+FN:117,_ZN6wibble9exception10AddContext11copyContextISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvT_
+FN:153,_ZN6wibble9exception7Context10addContextERKSs
+FN:147,_ZN6wibble9exception7ContextC2ERKSs
+FN:186,_ZN6wibble9exception7GenericC1ERKSs
+FN:186,_ZN6wibble9exception7GenericC2ERKSs
+FN:228,_ZN6wibble9exception11InterruptedC1ERKSs
+FN:137,_ZN6wibble9exception7ContextC2ERKS1_
+FN:180,_ZN6wibble9exception7GenericC2ERKS1_
+FN:395,_ZN6wibble9exception6SystemC1ERKS1_
+DA:109,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:113,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:137,0
+DA:147,0
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:180,0
+DA:186,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:225,0
+DA:228,0
+DA:230,0
+DA:395,0
+BA:110,0
+BA:110,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:225,0
+BA:225,0
+BA:225,0
+BA:225,0
+BA:395,0
+BA:395,0
+LF:40
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/string.h
+FN:59,_ZN6wibble3strL3fmtESsz
+DA:59,0
+DA:62,0
+DA:63,0
+DA:64,0
+DA:65,0
+LF:5
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/childprocess.cpp
+FN:291,_Z41__static_initialization_and_destruction_0ii
+FN:291,_GLOBAL__I_childprocess.cpp
+FN:280,_ZN6wibble3sys12ChildProcess4killEi
+FN:208,_ZN6wibble3sys12ChildProcess9waitErrorEv
+FN:248,_ZN6wibble3sys12ChildProcess4waitEP6rusage
+FN:229,_ZN6wibble3sys12ChildProcess7runningEv
+FN:215,_ZN6wibble3sys12ChildProcess4waitEv
+FN:263,_ZN6wibble3sys12ChildProcess14waitForSuccessEv
+FN:82,_ZN6wibble3sys12ChildProcess15forkAndRedirectEPiS2_S2_
+FN:44,_ZN6wibble3sys12ChildProcess4forkEv
+DA:44,1
+DA:46,1
+DA:47,1
+DA:48,1
+DA:51,1
+DA:62,0
+DA:63,0
+DA:66,0
+DA:67,1
+DA:68,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:73,1
+DA:74,1
+DA:75,1
+DA:78,1
+DA:82,3
+DA:86,3
+DA:88,0
+DA:89,0
+DA:90,0
+DA:92,3
+DA:94,3
+DA:95,0
+DA:96,3
+DA:97,3
+DA:98,0
+DA:101,3
+DA:103,0
+DA:104,0
+DA:105,0
+DA:108,3
+DA:109,3
+DA:110,3
+DA:113,3
+DA:120,0
+DA:123,0
+DA:124,0
+DA:125,0
+DA:126,0
+DA:127,0
+DA:128,0
+DA:131,0
+DA:134,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:138,0
+DA:139,0
+DA:140,0
+DA:141,0
+DA:142,0
+DA:145,0
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:152,0
+DA:153,0
+DA:157,0
+DA:158,0
+DA:161,0
+DA:162,3
+DA:163,0
+DA:164,0
+DA:165,0
+DA:166,0
+DA:168,0
+DA:169,0
+DA:171,0
+DA:173,0
+DA:174,0
+DA:176,0
+DA:178,0
+DA:179,0
+DA:181,0
+DA:183,3
+DA:184,3
+DA:185,3
+DA:188,3
+DA:190,3
+DA:191,0
+DA:192,0
+DA:193,3
+DA:194,3
+DA:195,0
+DA:196,3
+DA:197,0
+DA:198,0
+DA:199,3
+DA:200,0
+DA:202,0
+DA:203,0
+DA:208,0
+DA:209,0
+DA:210,0
+DA:212,0
+DA:215,4
+DA:217,4
+DA:220,0
+DA:223,4
+DA:224,0
+DA:225,4
+DA:226,4
+DA:229,0
+DA:231,0
+DA:232,0
+DA:235,0
+DA:237,0
+DA:238,0
+DA:241,0
+DA:242,0
+DA:245,0
+DA:248,0
+DA:250,0
+DA:253,0
+DA:256,0
+DA:257,0
+DA:259,0
+DA:260,0
+DA:263,0
+DA:264,0
+DA:265,0
+DA:266,0
+DA:269,0
+DA:271,0
+DA:273,0
+DA:276,0
+DA:277,0
+DA:280,1
+DA:282,1
+DA:284,0
+DA:285,0
+DA:286,0
+DA:288,1
+DA:291,3
+BA:51,1
+BA:51,2
+BA:67,1
+BA:67,2
+BA:86,1
+BA:86,2
+BA:88,0
+BA:88,0
+BA:92,2
+BA:92,1
+BA:94,1
+BA:94,2
+BA:97,1
+BA:97,2
+BA:101,1
+BA:101,2
+BA:101,0
+BA:101,0
+BA:103,0
+BA:103,0
+BA:113,1
+BA:113,2
+BA:120,0
+BA:120,0
+BA:123,0
+BA:123,0
+BA:125,0
+BA:125,0
+BA:127,0
+BA:127,0
+BA:131,0
+BA:131,0
+BA:134,0
+BA:134,0
+BA:136,0
+BA:136,0
+BA:138,0
+BA:138,0
+BA:139,0
+BA:139,0
+BA:141,0
+BA:141,0
+BA:145,0
+BA:145,0
+BA:145,0
+BA:145,0
+BA:148,0
+BA:148,0
+BA:150,0
+BA:150,0
+BA:152,0
+BA:152,0
+BA:162,1
+BA:162,2
+BA:166,0
+BA:166,0
+BA:171,0
+BA:171,0
+BA:176,0
+BA:176,0
+BA:176,0
+BA:176,0
+BA:190,1
+BA:190,2
+BA:191,0
+BA:191,0
+BA:193,2
+BA:193,1
+BA:194,1
+BA:194,2
+BA:196,1
+BA:196,2
+BA:196,0
+BA:196,0
+BA:197,0
+BA:197,0
+BA:209,0
+BA:209,0
+BA:217,1
+BA:217,2
+BA:223,1
+BA:223,2
+BA:231,0
+BA:231,0
+BA:237,0
+BA:237,0
+BA:241,0
+BA:241,0
+BA:250,0
+BA:250,0
+BA:256,0
+BA:256,0
+BA:265,0
+BA:265,0
+BA:266,0
+BA:266,0
+BA:273,0
+BA:273,0
+BA:282,1
+BA:282,2
+BA:291,2
+BA:291,1
+BA:291,2
+BA:291,1
+LF:137
+LH:40
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:100,_ZNSaISsEC2ERKS_
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:276,0
+BA:276,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:67
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET0_T_SA_S9_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+LF:34
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:781,_ZN9__gnu_cxxneIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEppEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEdeEv
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:683,0
+DA:695,0
+DA:696,0
+DA:703,0
+DA:705,0
+DA:706,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+DA:781,0
+DA:782,0
+LF:22
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEEPSsEET0_T_SC_SB_
+FN:113,_ZSt18uninitialized_copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEEPSsET0_T_SA_S9_
+FN:261,_ZSt22__uninitialized_copy_aIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEEPSsSsET0_T_SA_S9_RSaIT1_E
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+BA:78,0
+BA:78,0
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+BA:79,0
+BA:79,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:88,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1ERKS0_
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+FN:114,_ZNSt12_Vector_baseISsSaISsEEC2EjRKS0_
+FN:247,_ZNSt6vectorISsSaISsEEC1ERKS1_
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:88,0
+DA:89,0
+DA:90,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:114,0
+DA:115,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:120,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:247,0
+DA:248,0
+DA:249,0
+DA:253,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:377,0
+DA:378,0
+DA:386,0
+DA:387,0
+DA:395,0
+DA:396,0
+DA:404,0
+DA:405,0
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:526,0
+DA:527,0
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:62
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:286,0
+BA:286,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/exception
+FN:59,_ZNSt9exceptionC2Ev
+FN:57,_ZNSt9exceptionC2ERKS_
+DA:57,0
+DA:59,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:71,_ZN9__gnu_cxx13new_allocatorISsEC2ERKS1_
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+DA:95,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:395,_ZN6wibble9exception6SystemD1Ev
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+DA:137,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:395,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:395,0
+BA:395,0
+LF:21
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/thread.cpp
+FN:29,_ZN6wibble3sys6Thread7StarterEPv
+FN:92,_Z41__static_initialization_and_destruction_0ii
+FN:92,_GLOBAL__I_thread.cpp
+FN:80,_ZN6wibble3sys6Thread4killEi
+FN:73,_ZN6wibble3sys6Thread6cancelEv
+FN:66,_ZN6wibble3sys6Thread6detachEv
+FN:57,_ZN6wibble3sys6Thread4joinEv
+FN:39,_ZN6wibble3sys6Thread5startEv
+FN:46,_ZN6wibble3sys6Thread13startDetachedEv
+FN:34,_ZN6wibble3sys6Thread10testcancelEv
+DA:29,2
+DA:31,2
+DA:34,0
+DA:36,0
+DA:37,0
+DA:39,2
+DA:41,2
+DA:42,2
+DA:43,0
+DA:44,2
+DA:46,0
+DA:49,0
+DA:50,0
+DA:51,0
+DA:52,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:57,2
+DA:59,2
+DA:60,2
+DA:61,2
+DA:62,0
+DA:63,2
+DA:66,0
+DA:68,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:73,0
+DA:75,0
+DA:76,0
+DA:77,0
+DA:78,0
+DA:80,0
+DA:82,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:87,0
+DA:89,0
+DA:92,3
+BA:42,1
+BA:42,2
+BA:53,0
+BA:53,0
+BA:61,1
+BA:61,2
+BA:69,0
+BA:69,0
+BA:76,0
+BA:76,0
+BA:83,0
+BA:83,0
+BA:92,2
+BA:92,1
+BA:92,2
+BA:92,1
+LF:42
+LH:12
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:276,0
+BA:276,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:67
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+BA:340,0
+BA:340,0
+LF:19
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+DA:683,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+DA:79,0
+DA:97,0
+DA:98,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:386,0
+DA:387,0
+DA:404,0
+DA:405,0
+DA:526,0
+DA:527,0
+BA:149,0
+BA:149,0
+LF:19
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+DA:69,0
+DA:71,0
+DA:76,0
+DA:97,0
+DA:98,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+DA:95,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:263,_ZNK6wibble9exception11Consistency4typeEv
+FN:265,_ZNK6wibble9exception11Consistency4descEv
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:109,_ZN6wibble9exception10AddContext7contextEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:117,_ZN6wibble9exception10AddContext11copyContextISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvT_
+FN:153,_ZN6wibble9exception7Context10addContextERKSs
+FN:147,_ZN6wibble9exception7ContextC2ERKSs
+FN:186,_ZN6wibble9exception7GenericC2ERKSs
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:259,_ZN6wibble9exception11ConsistencyC1ERKSsS3_
+FN:395,_ZN6wibble9exception6SystemD1Ev
+FN:261,_ZN6wibble9exception11ConsistencyD0Ev
+FN:261,_ZN6wibble9exception11ConsistencyD1Ev
+DA:109,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:113,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:137,0
+DA:147,0
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:186,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:259,0
+DA:260,0
+DA:261,0
+DA:263,0
+DA:265,0
+DA:266,0
+DA:267,0
+DA:268,0
+DA:269,0
+DA:395,0
+BA:110,0
+BA:110,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:267,0
+BA:267,0
+BA:395,0
+BA:395,0
+LF:45
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/mmap.cpp
+FN:65,_ZN6wibble3sys4MMapaSERKS1_
+FN:39,_ZN6wibble3sys4MMapC1Ev
+FN:39,_ZN6wibble3sys4MMapC2Ev
+FN:137,_Z41__static_initialization_and_destruction_0ii
+FN:137,_GLOBAL__I_mmap.cpp
+FN:118,_ZN6wibble3sys4MMap5unmapEv
+FN:91,_ZN6wibble3sys4MMap3mapERKSs
+FN:86,_ZN6wibble3sys4MMapD1Ev
+FN:86,_ZN6wibble3sys4MMapD2Ev
+FN:54,_ZN6wibble3sys4MMapC1ERKS1_
+FN:54,_ZN6wibble3sys4MMapC2ERKS1_
+FN:41,_ZN6wibble3sys4MMapC1ERKSs
+FN:41,_ZN6wibble3sys4MMapC2ERKSs
+DA:39,1
+DA:41,0
+DA:42,0
+DA:47,0
+DA:48,0
+DA:49,0
+DA:50,0
+DA:52,0
+DA:54,1
+DA:55,1
+DA:58,1
+DA:59,1
+DA:60,1
+DA:61,1
+DA:62,1
+DA:63,1
+DA:65,0
+DA:69,0
+DA:86,2
+DA:88,2
+DA:89,2
+DA:91,1
+DA:93,1
+DA:96,1
+DA:99,1
+DA:100,0
+DA:102,1
+DA:103,1
+DA:104,0
+DA:105,1
+DA:107,0
+DA:110,1
+DA:111,0
+DA:112,0
+DA:113,0
+DA:114,0
+DA:116,1
+DA:118,3
+DA:121,3
+DA:123,1
+DA:124,1
+DA:125,1
+DA:126,1
+DA:128,3
+DA:130,1
+DA:131,1
+DA:133,3
+DA:134,3
+DA:137,3
+BA:93,1
+BA:93,2
+BA:99,1
+BA:99,2
+BA:103,1
+BA:103,2
+BA:105,1
+BA:105,2
+BA:110,1
+BA:110,2
+BA:121,2
+BA:121,2
+BA:123,2
+BA:123,1
+BA:128,2
+BA:128,2
+BA:137,2
+BA:137,1
+BA:137,2
+BA:137,1
+LF:49
+LH:33
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:276,0
+BA:276,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:679,_ZNSs5clearEv
+FN:501,_ZNSsaSERKSs
+FN:835,_ZNSs6appendEPKc
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:679,0
+DA:680,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:69
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+FN:668,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+DA:668,0
+DA:673,0
+DA:674,0
+DA:675,0
+DA:676,0
+DA:677,0
+DA:678,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:23
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET0_T_SA_S9_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+LF:34
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:683,0
+DA:695,0
+DA:696,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+LF:17
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:377,0
+DA:378,0
+DA:386,0
+DA:387,0
+DA:395,0
+DA:396,0
+DA:404,0
+DA:405,0
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:526,0
+DA:527,0
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:49
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:286,0
+BA:286,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/exception
+FN:59,_ZNSt9exceptionC2Ev
+DA:59,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+DA:95,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:263,_ZNK6wibble9exception11Consistency4typeEv
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:395,_ZN6wibble9exception6SystemD1Ev
+FN:261,_ZN6wibble9exception11ConsistencyD0Ev
+FN:261,_ZN6wibble9exception11ConsistencyD1Ev
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:265,_ZNK6wibble9exception11Consistency4descEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:109,_ZN6wibble9exception10AddContext7contextEv
+FN:117,_ZN6wibble9exception10AddContext11copyContextISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvT_
+FN:153,_ZN6wibble9exception7Context10addContextERKSs
+FN:147,_ZN6wibble9exception7ContextC2ERKSs
+FN:186,_ZN6wibble9exception7GenericC2ERKSs
+FN:259,_ZN6wibble9exception11ConsistencyC1ERKSsS3_
+DA:109,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:113,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:137,0
+DA:147,0
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:186,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:259,0
+DA:260,0
+DA:261,0
+DA:263,0
+DA:265,0
+DA:266,0
+DA:267,0
+DA:268,0
+DA:269,0
+DA:395,0
+BA:110,0
+BA:110,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:267,0
+BA:267,0
+BA:395,0
+BA:395,0
+LF:45
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/string.h
+FN:236,_ZN6wibble3str8joinpathERKSsS2_
+DA:236,0
+DA:238,0
+DA:239,0
+DA:240,0
+DA:241,0
+DA:243,0
+DA:244,0
+DA:245,0
+DA:247,0
+DA:249,0
+DA:250,0
+DA:252,0
+BA:238,0
+BA:238,0
+BA:240,0
+BA:240,0
+BA:243,0
+BA:243,0
+BA:244,0
+BA:244,0
+BA:249,0
+BA:249,0
+LF:12
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/fs.h
+FN:61,_ZN6wibble3sys2fs9Directory14const_iteratorC1Ev
+FN:114,_ZNK6wibble3sys2fs9Directory4pathEv
+FN:88,_ZN6wibble3sys2fs9Directory14const_iteratorppEv
+FN:63,_ZN6wibble3sys2fs9Directory14const_iteratorC1EP11__dirstream
+DA:61,1031
+DA:63,108
+DA:88,0
+DA:90,0
+DA:92,0
+DA:93,0
+DA:95,0
+DA:114,2
+BA:90,0
+BA:90,0
+LF:8
+LH:3
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/fs.cpp
+FN:101,_ZNK6wibble3sys2fs9Directory3endEv
+FN:120,_Z41__static_initialization_and_destruction_0ii
+FN:120,_GLOBAL__I_fs.cpp
+FN:93,_ZN6wibble3sys2fs9Directory5beginEv
+FN:85,_ZN6wibble3sys2fs9writeFileERKSsS3_
+FN:68,_ZN6wibble3sys2fs8readFileERKSs
+FN:30,_ZN6wibble3sys2fs7abspathERKSs
+FN:25,_ZN6wibble3sys2fs6accessERKSsi
+FN:13,_ZN6wibble3sys2fs4statERKSs
+FN:106,_ZN6wibble3sys2fs9Directory5validEv
+FN:38,_ZN6wibble3sys2fs14mkdirIfMissingERKSsj
+FN:52,_ZN6wibble3sys2fs6mkpathERKSs
+FN:61,_ZN6wibble3sys2fs10mkFilePathERKSs
+DA:13,628
+DA:15,628
+DA:16,628
+DA:17,38
+DA:18,38
+DA:20,0
+DA:22,590
+DA:25,5
+DA:27,5
+DA:30,0
+DA:32,0
+DA:33,0
+DA:35,0
+DA:38,58
+DA:40,58
+DA:41,58
+DA:44,5
+DA:45,0
+DA:46,53
+DA:48,0
+DA:49,58
+DA:50,58
+DA:52,52
+DA:54,52
+DA:55,52
+DA:57,40
+DA:58,52
+DA:59,52
+DA:61,8
+DA:63,8
+DA:64,8
+DA:65,8
+DA:66,8
+DA:68,0
+DA:70,0
+DA:71,0
+DA:72,0
+DA:73,0
+DA:76,0
+DA:77,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:82,0
+DA:85,0
+DA:87,0
+DA:88,0
+DA:89,0
+DA:90,0
+DA:91,0
+DA:93,108
+DA:95,108
+DA:96,108
+DA:97,0
+DA:98,108
+DA:101,1031
+DA:103,1031
+DA:106,111
+DA:109,111
+DA:110,111
+DA:111,3
+DA:113,108
+DA:114,1
+DA:115,107
+DA:120,9
+BA:16,2
+BA:16,2
+BA:17,2
+BA:17,1
+BA:32,0
+BA:32,0
+BA:41,2
+BA:41,2
+BA:44,1
+BA:44,2
+BA:46,1
+BA:46,2
+BA:55,2
+BA:55,2
+BA:55,2
+BA:55,2
+BA:64,2
+BA:64,1
+BA:71,0
+BA:71,0
+BA:88,0
+BA:88,0
+BA:96,1
+BA:96,2
+BA:110,2
+BA:110,2
+BA:113,2
+BA:113,2
+BA:120,2
+BA:120,1
+BA:120,2
+BA:120,1
+LF:65
+LH:40
+end_of_record
+SF:/usr/include/c++/4.3/backward/auto_ptr.h
+FN:106,_ZNSt8auto_ptrI4statEC1EPS0_
+FN:214,_ZNKSt8auto_ptrI4statE3getEv
+FN:263,_ZNSt8auto_ptrI4statEC1ESt12auto_ptr_refIS0_E
+FN:197,_ZNKSt8auto_ptrI4statEptEv
+FN:228,_ZNSt8auto_ptrI4statE7releaseEv
+FN:115,_ZNSt8auto_ptrI4statEC1ERS1_
+FN:56,_ZNSt12auto_ptr_refI4statEC1EPS0_
+FN:278,_ZNSt8auto_ptrI4statEcvSt12auto_ptr_refIT_EIS0_EEv
+FN:173,_ZNSt8auto_ptrI4statED1Ev
+DA:56,15
+DA:106,666
+DA:115,590
+DA:173,35
+DA:197,5
+DA:200,5
+DA:214,20
+DA:228,20
+DA:230,20
+DA:231,20
+DA:232,20
+DA:263,15
+DA:264,15
+DA:278,15
+DA:279,15
+LF:15
+LH:15
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:276,0
+BA:276,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:701,_ZNKSsixEj
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:835,_ZNSs6appendEPKc
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:501,_ZNSsaSERKSs
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+FN:2136,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S3_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:701,0
+DA:704,0
+DA:835,0
+DA:838,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1923,0
+DA:1925,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2136,0
+DA:2140,0
+DA:2141,0
+DA:2142,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:308,0
+BA:308,0
+BA:341,0
+BA:341,0
+LF:79
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:668,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+DA:668,0
+DA:673,0
+DA:674,0
+DA:675,0
+DA:676,0
+DA:677,0
+DA:678,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:23
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/postypes.h
+FN:116,_ZNKSt4fposI11__mbstate_tEcvxEv
+DA:116,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET0_T_SA_S9_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+LF:34
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:683,0
+DA:695,0
+DA:696,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+LF:17
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:377,0
+DA:378,0
+DA:386,0
+DA:387,0
+DA:395,0
+DA:396,0
+DA:404,0
+DA:405,0
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:526,0
+DA:527,0
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:49
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:286,0
+BA:286,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/exception
+FN:59,_ZNSt9exceptionC2Ev
+DA:59,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/fstream
+FN:626,_ZNSt14basic_ofstreamIcSt11char_traitsIcEE4openEPKcSt13_Ios_Openmode
+FN:495,_ZNSt14basic_ifstreamIcSt11char_traitsIcEE4openEPKcSt13_Ios_Openmode
+FN:215,_ZNSt13basic_filebufIcSt11char_traitsIcEED1Ev
+FN:572,_ZNSt14basic_ofstreamIcSt11char_traitsIcEEC1EPKcSt13_Ios_Openmode
+FN:585,_ZNSt14basic_ofstreamIcSt11char_traitsIcEED1Ev
+FN:442,_ZNSt14basic_ifstreamIcSt11char_traitsIcEEC1EPKcSt13_Ios_Openmode
+FN:455,_ZNSt14basic_ifstreamIcSt11char_traitsIcEED1Ev
+FN:223,_ZNKSt13basic_filebufIcSt11char_traitsIcEE7is_openEv
+FN:604,_ZNSt14basic_ofstreamIcSt11char_traitsIcEE7is_openEv
+FN:474,_ZNSt14basic_ifstreamIcSt11char_traitsIcEE7is_openEv
+DA:215,0
+DA:216,0
+DA:223,0
+DA:224,0
+DA:442,0
+DA:443,0
+DA:445,0
+DA:446,0
+DA:447,0
+DA:455,0
+DA:456,0
+DA:474,0
+DA:475,0
+DA:495,0
+DA:497,0
+DA:498,0
+DA:502,0
+DA:503,0
+DA:572,0
+DA:573,0
+DA:575,0
+DA:576,0
+DA:577,0
+DA:585,0
+DA:586,0
+DA:604,0
+DA:605,0
+DA:626,0
+DA:628,0
+DA:629,0
+DA:633,0
+DA:634,0
+BA:216,0
+BA:216,0
+BA:456,0
+BA:456,0
+BA:456,0
+BA:456,0
+BA:456,0
+BA:456,0
+BA:497,0
+BA:497,0
+BA:586,0
+BA:586,0
+BA:586,0
+BA:586,0
+BA:586,0
+BA:586,0
+BA:628,0
+BA:628,0
+LF:32
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,3
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+DA:95,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:263,_ZNK6wibble9exception11Consistency4typeEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:265,_ZNK6wibble9exception11Consistency4descEv
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:261,_ZN6wibble9exception11ConsistencyD0Ev
+FN:261,_ZN6wibble9exception11ConsistencyD1Ev
+FN:109,_ZN6wibble9exception10AddContext7contextEv
+FN:117,_ZN6wibble9exception10AddContext11copyContextISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvT_
+FN:153,_ZN6wibble9exception7Context10addContextERKSs
+FN:147,_ZN6wibble9exception7ContextC2ERKSs
+FN:186,_ZN6wibble9exception7GenericC2ERKSs
+FN:259,_ZN6wibble9exception11ConsistencyC1ERKSsS3_
+DA:109,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:113,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:137,0
+DA:147,0
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:186,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:259,0
+DA:260,0
+DA:261,0
+DA:263,0
+DA:265,0
+DA:266,0
+DA:267,0
+DA:268,0
+DA:269,0
+BA:110,0
+BA:110,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:267,0
+BA:267,0
+LF:44
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/grcal/grcal.cpp
+FN:83,_ZN6wibble5grcal4date10daysinyearEi
+FN:90,_ZN6wibble5grcal4date6easterEiPiS2_
+FN:111,_ZN6wibble5grcal4date10lowerboundEPKiPi
+FN:121,_ZN6wibble5grcal4date10lowerboundEPi
+FN:130,_ZN6wibble5grcal4dateL7normalNERiS2_i
+FN:263,_ZN6wibble5grcal4date9mergetimeEPKiS3_Pi
+FN:272,_ZN6wibble5grcal4date9mergetimeEPiPKi
+FN:280,_ZN6wibble5grcal4date4totmEPKiP2tm
+FN:290,_ZN6wibble5grcal4date6fromtmERK2tmPii
+FN:322,_ZN6wibble5grcal5dtime10lowerboundEPKiPi
+FN:328,_ZN6wibble5grcal5dtime10lowerboundEPi
+FN:334,_ZN6wibble5grcal5dtime14lowerbound_secEPKi
+FN:344,_ZN6wibble5grcal5dtime10upperboundEPKiPi
+FN:351,_ZN6wibble5grcal5dtime10upperboundEPi
+FN:358,_ZN6wibble5grcal5dtime14upperbound_secEPKi
+FN:367,_ZN6wibble5grcal5dtime8durationEPKiS3_
+FN:398,_Z41__static_initialization_and_destruction_0ii
+FN:398,_GLOBAL__I_grcal.cpp
+FN:385,_ZN6wibble5grcal5dtime8tostringEi
+FN:372,_ZN6wibble5grcal5dtime8tostringEPKi
+FN:300,_ZN6wibble5grcal4date8tostringEPKi
+FN:56,_ZN6wibble5grcal4date11daysinmonthEii
+FN:228,_ZN6wibble5grcal4date11secondsfromEiPKi
+FN:144,_ZN6wibble5grcal4date9normaliseEPi
+FN:208,_ZN6wibble5grcal4date10upperboundEPi
+FN:190,_ZN6wibble5grcal4date10upperboundEPKiPi
+FN:244,_ZN6wibble5grcal4date8durationEPKiS3_
+DA:56,76
+DA:58,76
+DA:60,7
+DA:62,15
+DA:63,7
+DA:64,8
+DA:65,7
+DA:66,5
+DA:67,5
+DA:68,5
+DA:69,5
+DA:70,5
+DA:71,5
+DA:72,5
+DA:73,5
+DA:74,7
+DA:76,0
+DA:77,0
+DA:78,0
+DA:83,7
+DA:85,7
+DA:86,2
+DA:87,5
+DA:90,1
+DA:94,1
+DA:95,1
+DA:96,1
+DA:97,1
+DA:98,1
+DA:99,1
+DA:100,1
+DA:101,1
+DA:102,1
+DA:103,1
+DA:104,1
+DA:105,1
+DA:106,1
+DA:107,1
+DA:108,1
+DA:111,3
+DA:113,3
+DA:114,3
+DA:115,3
+DA:116,3
+DA:117,3
+DA:118,3
+DA:119,3
+DA:121,1
+DA:123,1
+DA:124,1
+DA:125,1
+DA:126,1
+DA:127,1
+DA:130,61
+DA:132,61
+DA:134,18
+DA:135,18
+DA:136,18
+DA:137,18
+DA:139,43
+DA:140,43
+DA:142,61
+DA:144,11
+DA:147,11
+DA:148,11
+DA:152,11
+DA:156,11
+DA:160,11
+DA:164,26
+DA:166,4
+DA:167,4
+DA:168,4
+DA:171,2
+DA:173,13
+DA:174,13
+DA:175,13
+DA:176,2
+DA:177,2
+DA:182,11
+DA:185,11
+DA:186,11
+DA:188,11
+DA:190,3
+DA:194,21
+DA:195,18
+DA:196,8
+DA:197,17
+DA:198,7
+DA:200,3
+DA:202,3
+DA:205,3
+DA:206,3
+DA:208,2
+DA:211,14
+DA:212,12
+DA:213,9
+DA:214,3
+DA:217,2
+DA:219,2
+DA:221,2
+DA:222,2
+DA:228,7
+DA:230,7
+DA:231,7
+DA:232,7
+DA:233,7
+DA:234,7
+DA:235,7
+DA:236,51
+DA:237,44
+DA:238,10
+DA:239,3
+DA:240,7
+DA:244,2
+DA:250,2
+DA:251,2
+DA:254,14
+DA:255,12
+DA:256,3
+DA:259,2
+DA:260,2
+DA:263,0
+DA:265,0
+DA:266,0
+DA:267,0
+DA:268,0
+DA:269,0
+DA:270,0
+DA:272,0
+DA:274,0
+DA:275,0
+DA:276,0
+DA:277,0
+DA:278,0
+DA:280,0
+DA:282,0
+DA:283,0
+DA:284,0
+DA:285,0
+DA:286,0
+DA:287,0
+DA:288,0
+DA:290,0
+DA:292,0
+DA:293,0
+DA:294,0
+DA:295,0
+DA:296,0
+DA:297,0
+DA:298,0
+DA:300,28
+DA:302,28
+DA:303,28
+DA:304,28
+DA:305,28
+DA:306,27
+DA:307,27
+DA:308,26
+DA:309,26
+DA:310,25
+DA:311,25
+DA:312,24
+DA:313,24
+DA:314,23
+DA:315,23
+DA:322,0
+DA:324,0
+DA:325,0
+DA:326,0
+DA:328,0
+DA:330,0
+DA:331,0
+DA:332,0
+DA:334,0
+DA:336,0
+DA:337,0
+DA:338,0
+DA:339,0
+DA:340,0
+DA:344,0
+DA:346,0
+DA:347,0
+DA:348,0
+DA:349,0
+DA:351,0
+DA:353,0
+DA:354,0
+DA:355,0
+DA:356,0
+DA:358,0
+DA:360,0
+DA:361,0
+DA:362,0
+DA:363,0
+DA:364,0
+DA:367,0
+DA:369,0
+DA:372,4
+DA:374,4
+DA:375,3
+DA:376,3
+DA:377,3
+DA:378,3
+DA:379,2
+DA:380,2
+DA:381,1
+DA:382,1
+DA:385,2
+DA:387,2
+DA:388,2
+DA:391,2
+DA:392,2
+DA:398,3
+BA:58,2
+BA:58,2
+BA:58,2
+BA:58,2
+BA:58,2
+BA:58,2
+BA:58,2
+BA:58,2
+BA:58,2
+BA:58,2
+BA:58,2
+BA:58,2
+BA:58,1
+BA:62,2
+BA:62,2
+BA:62,2
+BA:62,2
+BA:62,2
+BA:62,2
+BA:85,2
+BA:85,2
+BA:85,2
+BA:85,2
+BA:85,2
+BA:85,2
+BA:114,2
+BA:114,2
+BA:115,2
+BA:115,2
+BA:116,2
+BA:116,2
+BA:117,2
+BA:117,2
+BA:118,2
+BA:118,2
+BA:123,2
+BA:123,1
+BA:124,2
+BA:124,1
+BA:125,2
+BA:125,1
+BA:126,2
+BA:126,1
+BA:127,2
+BA:127,1
+BA:132,2
+BA:132,2
+BA:135,2
+BA:135,2
+BA:164,2
+BA:164,2
+BA:175,2
+BA:175,2
+BA:194,2
+BA:194,2
+BA:195,2
+BA:195,2
+BA:196,2
+BA:196,2
+BA:196,2
+BA:196,2
+BA:197,2
+BA:197,2
+BA:197,2
+BA:197,2
+BA:211,2
+BA:211,2
+BA:212,2
+BA:212,2
+BA:213,2
+BA:213,2
+BA:213,2
+BA:213,2
+BA:214,2
+BA:214,1
+BA:214,2
+BA:214,2
+BA:231,2
+BA:231,1
+BA:232,2
+BA:232,1
+BA:233,2
+BA:233,1
+BA:234,2
+BA:234,1
+BA:235,2
+BA:235,1
+BA:236,2
+BA:236,2
+BA:238,2
+BA:238,2
+BA:254,2
+BA:254,2
+BA:255,2
+BA:255,2
+BA:255,2
+BA:255,1
+BA:256,2
+BA:256,1
+BA:256,1
+BA:256,2
+BA:259,2
+BA:259,2
+BA:266,0
+BA:266,0
+BA:267,0
+BA:267,0
+BA:268,0
+BA:268,0
+BA:274,0
+BA:274,0
+BA:275,0
+BA:275,0
+BA:276,0
+BA:276,0
+BA:283,0
+BA:283,0
+BA:284,0
+BA:284,0
+BA:285,0
+BA:285,0
+BA:286,0
+BA:286,0
+BA:287,0
+BA:287,0
+BA:293,0
+BA:293,0
+BA:294,0
+BA:294,0
+BA:295,0
+BA:295,0
+BA:296,0
+BA:296,0
+BA:297,0
+BA:297,0
+BA:305,2
+BA:305,2
+BA:307,2
+BA:307,2
+BA:309,2
+BA:309,2
+BA:311,2
+BA:311,2
+BA:313,2
+BA:313,2
+BA:324,0
+BA:324,0
+BA:325,0
+BA:325,0
+BA:330,0
+BA:330,0
+BA:331,0
+BA:331,0
+BA:337,0
+BA:337,0
+BA:338,0
+BA:338,0
+BA:339,0
+BA:339,0
+BA:346,0
+BA:346,0
+BA:347,0
+BA:347,0
+BA:348,0
+BA:348,0
+BA:353,0
+BA:353,0
+BA:354,0
+BA:354,0
+BA:355,0
+BA:355,0
+BA:361,0
+BA:361,0
+BA:362,0
+BA:362,0
+BA:363,0
+BA:363,0
+BA:374,2
+BA:374,2
+BA:378,2
+BA:378,2
+BA:380,2
+BA:380,2
+BA:398,2
+BA:398,1
+BA:398,2
+BA:398,1
+LF:213
+LH:149
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+FN:364,_ZNKSt9basic_iosIcSt11char_traitsIcEE4fillEv
+FN:384,_ZNSt9basic_iosIcSt11char_traitsIcEE4fillEc
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:364,0
+DA:366,0
+DA:368,0
+DA:369,0
+DA:371,0
+DA:384,0
+DA:386,0
+DA:387,0
+DA:388,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+BA:366,0
+BA:366,0
+LF:23
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:67
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:81,_ZStanSt13_Ios_FmtflagsS_
+FN:85,_ZStorSt13_Ios_FmtflagsS_
+FN:93,_ZStoRRSt13_Ios_FmtflagsS_
+FN:97,_ZStaNRSt13_Ios_FmtflagsS_
+FN:105,_ZStcoSt13_Ios_Fmtflags
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+FN:592,_ZNSt8ios_base4setfESt13_Ios_FmtflagsS0_
+FN:650,_ZNSt8ios_base5widthEi
+FN:905,_ZSt8internalRSt8ios_base
+DA:81,66
+DA:82,66
+DA:85,33
+DA:86,33
+DA:93,33
+DA:94,33
+DA:97,33
+DA:98,33
+DA:105,33
+DA:106,33
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+DA:592,33
+DA:594,33
+DA:595,33
+DA:596,33
+DA:597,33
+DA:650,0
+DA:652,0
+DA:653,0
+DA:654,0
+DA:905,33
+DA:907,33
+DA:908,33
+LF:26
+LH:18
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET0_T_SA_S9_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+LF:34
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:683,0
+DA:695,0
+DA:696,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+LF:17
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:377,0
+DA:378,0
+DA:386,0
+DA:387,0
+DA:395,0
+DA:396,0
+DA:404,0
+DA:405,0
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:526,0
+DA:527,0
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:49
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:286,0
+BA:286,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/exception
+FN:59,_ZNSt9exceptionC2Ev
+DA:59,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iomanip
+FN:243,_ZSt4setwi
+FN:175,_ZSt7setfillIcESt8_SetfillIT_ES1_
+FN:260,_ZStlsIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_St5_Setw
+FN:192,_ZStlsIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_St8_SetfillIS3_E
+DA:175,33
+DA:178,33
+DA:192,0
+DA:194,0
+DA:195,0
+DA:243,165
+DA:246,165
+DA:260,0
+DA:262,0
+DA:263,0
+LF:10
+LH:4
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:131,_ZNSolsEPFRSt8ios_baseS0_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+DA:95,0
+DA:131,0
+DA:136,0
+DA:137,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:11
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:403,_ZNK6wibble9exception6System4typeEv
+FN:406,_ZNK6wibble9exception6System4codeEv
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:395,_ZN6wibble9exception6SystemD0Ev
+FN:395,_ZN6wibble9exception6SystemD1Ev
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:109,_ZN6wibble9exception10AddContext7contextEv
+FN:117,_ZN6wibble9exception10AddContext11copyContextISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvT_
+FN:153,_ZN6wibble9exception7Context10addContextERKSs
+FN:147,_ZN6wibble9exception7ContextC2ERKSs
+FN:186,_ZN6wibble9exception7GenericC2ERKSs
+DA:109,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:113,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:137,0
+DA:147,0
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:186,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:395,0
+DA:403,0
+DA:406,0
+BA:110,0
+BA:110,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:395,0
+BA:395,0
+BA:395,0
+BA:395,0
+LF:38
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.cpp
+FN:100,_Z41__static_initialization_and_destruction_0ii
+FN:100,_GLOBAL__I_exception.cpp
+FN:82,_ZNK6wibble9exception6System4descEv
+FN:79,_ZN6wibble9exception6SystemC1EiRKSs
+FN:79,_ZN6wibble9exception6SystemC2EiRKSs
+FN:76,_ZN6wibble9exception6SystemC1ERKSs
+FN:76,_ZN6wibble9exception6SystemC2ERKSs
+FN:69,_ZN6wibble9exception17InstallUnexpectedD1Ev
+FN:69,_ZN6wibble9exception17InstallUnexpectedD2Ev
+FN:64,_ZN6wibble9exception17InstallUnexpectedC1EPFvvE
+FN:64,_ZN6wibble9exception17InstallUnexpectedC2EPFvvE
+FN:39,_ZN6wibble9exception17DefaultUnexpectedEv
+DA:39,0
+DA:42,0
+DA:44,0
+DA:45,0
+DA:47,0
+DA:48,0
+DA:49,0
+DA:50,0
+DA:51,0
+DA:52,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:56,0
+DA:57,0
+DA:58,0
+DA:59,0
+DA:60,0
+DA:64,0
+DA:66,0
+DA:67,0
+DA:69,0
+DA:71,0
+DA:72,0
+DA:76,2
+DA:77,2
+DA:79,0
+DA:80,0
+DA:82,1
+DA:84,1
+DA:95,1
+DA:100,9
+BA:48,0
+BA:48,0
+BA:100,2
+BA:100,1
+BA:100,2
+BA:100,1
+LF:32
+LH:6
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:835,_ZNSs6appendEPKc
+FN:501,_ZNSsaSERKSs
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:67
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET0_T_SA_S9_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+LF:34
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:683,0
+DA:695,0
+DA:696,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+LF:17
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:377,0
+DA:378,0
+DA:386,0
+DA:387,0
+DA:395,0
+DA:396,0
+DA:404,0
+DA:405,0
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:526,0
+DA:527,0
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:49
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:286,0
+BA:286,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/exception
+FN:59,_ZNSt9exceptionC2Ev
+DA:59,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,3
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:195,_ZNSolsEj
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/typeinfo
+FN:104,_ZNKSt9type_info4nameEv
+DA:104,0
+DA:105,0
+LF:2
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/log/stream.cpp
+FN:17,_ZN6wibble3log9Streambuf9setSenderEPNS0_6SenderE
+FN:28,_ZN6wibble3log9Streambuf8setLevelERKNS0_5LevelE
+FN:42,_ZN6wibble3loglsERSoNS0_5LevelE
+FN:19,_ZN6wibble3log9Streambuf4sendEv
+FN:33,_ZN6wibble3log9Streambuf8overflowEi
+FN:11,_ZN6wibble3log9StreambufD0Ev
+FN:11,_ZN6wibble3log9StreambufD1Ev
+FN:11,_ZN6wibble3log9StreambufD2Ev
+FN:9,_ZN6wibble3log9StreambufC1EPNS0_6SenderE
+FN:9,_ZN6wibble3log9StreambufC2EPNS0_6SenderE
+FN:7,_ZN6wibble3log9StreambufC1Ev
+FN:7,_ZN6wibble3log9StreambufC2Ev
+DA:7,0
+DA:9,4
+DA:11,4
+DA:13,4
+DA:14,4
+DA:15,4
+DA:17,0
+DA:19,12
+DA:22,12
+DA:24,12
+DA:25,12
+DA:26,12
+DA:28,4
+DA:30,4
+DA:31,4
+DA:33,136
+DA:35,136
+DA:36,8
+DA:38,128
+DA:39,136
+DA:42,4
+DA:44,4
+DA:46,4
+DA:47,4
+DA:49,0
+BA:13,0
+BA:13,0
+BA:13,2
+BA:13,1
+BA:13,0
+BA:13,0
+BA:15,0
+BA:15,0
+BA:15,1
+BA:15,2
+BA:15,0
+BA:15,0
+BA:35,2
+BA:35,2
+BA:44,1
+BA:44,2
+BA:44,2
+BA:44,1
+LF:25
+LH:22
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC1ERKS_
+FN:100,_ZNSaIcEC2ERKS_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:315,_ZNKSt9basic_iosIcSt11char_traitsIcEE5rdbufEv
+DA:315,0
+DA:316,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:277,_ZNKSs7_M_dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:192,_ZNKSs4_Rep12_M_is_sharedEv
+FN:652,_ZNKSs8capacityEv
+FN:1551,_ZNKSs13get_allocatorEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:870,_ZNSs9push_backEc
+FN:791,_ZNSspLEc
+FN:679,_ZNSs5clearEv
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+DA:178,0
+DA:183,0
+DA:184,0
+DA:192,0
+DA:193,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:606,0
+DA:607,0
+DA:652,0
+DA:653,0
+DA:679,0
+DA:680,0
+DA:686,0
+DA:687,0
+DA:791,0
+DA:793,0
+DA:794,0
+DA:870,0
+DA:872,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:877,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+LF:52
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:287,_ZNSt11char_traitsIcE11to_int_typeERKc
+FN:291,_ZNSt11char_traitsIcE11eq_int_typeERKiS2_
+FN:295,_ZNSt11char_traitsIcE3eofEv
+DA:245,0
+DA:246,0
+DA:287,0
+DA:288,0
+DA:291,0
+DA:292,0
+DA:295,0
+LF:7
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/postypes.h
+FN:112,_ZNSt4fposI11__mbstate_tEC1Ex
+DA:112,0
+DA:113,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+DA:69,0
+DA:71,0
+DA:76,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:557,_ZNSt15basic_streambufIcSt11char_traitsIcEE5imbueERKSt6locale
+FN:572,_ZNSt15basic_streambufIcSt11char_traitsIcEE6setbufEPci
+FN:608,_ZNSt15basic_streambufIcSt11char_traitsIcEE4syncEv
+FN:630,_ZNSt15basic_streambufIcSt11char_traitsIcEE9showmanycEv
+FN:668,_ZNSt15basic_streambufIcSt11char_traitsIcEE9underflowEv
+FN:705,_ZNSt15basic_streambufIcSt11char_traitsIcEE9pbackfailEi
+FN:596,_ZNSt15basic_streambufIcSt11char_traitsIcEE7seekposESt4fposI11__mbstate_tESt13_Ios_Openmode
+FN:584,_ZNSt15basic_streambufIcSt11char_traitsIcEE7seekoffExSt12_Ios_SeekdirSt13_Ios_Openmode
+FN:466,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4gptrEv
+FN:479,_ZNSt15basic_streambufIcSt11char_traitsIcEE5gbumpEi
+FN:681,_ZNSt15basic_streambufIcSt11char_traitsIcEE5uflowEv
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:466,0
+DA:479,0
+DA:557,0
+DA:558,0
+DA:572,0
+DA:573,0
+DA:584,0
+DA:585,0
+DA:596,0
+DA:597,0
+DA:608,0
+DA:630,0
+DA:668,0
+DA:669,0
+DA:681,0
+DA:683,0
+DA:685,0
+DA:686,0
+DA:688,0
+DA:689,0
+DA:691,0
+DA:705,0
+DA:706,0
+BA:198,0
+BA:198,0
+BA:686,0
+BA:686,0
+LF:28
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:406,_ZNK6wibble9exception6System4codeEv
+FN:428,_ZNK6wibble9exception4File4typeEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:430,_ZNK6wibble9exception4File4descEv
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:395,_ZN6wibble9exception6SystemD2Ev
+FN:424,_ZN6wibble9exception4FileC1ERKSsS3_
+FN:426,_ZN6wibble9exception4FileD0Ev
+FN:426,_ZN6wibble9exception4FileD1Ev
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+DA:137,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:395,0
+DA:406,0
+DA:424,0
+DA:425,0
+DA:426,0
+DA:428,0
+DA:430,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:395,0
+BA:395,0
+BA:426,0
+BA:426,0
+BA:426,0
+BA:426,0
+LF:27
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/log/stream.h
+FN:23,_ZN6wibble3log6SenderC2Ev
+FN:24,_ZN6wibble3log6SenderD2Ev
+FN:24,_ZN6wibble3log6SenderD0Ev
+FN:24,_ZN6wibble3log6SenderD1Ev
+DA:23,0
+DA:24,0
+BA:24,0
+BA:24,0
+BA:24,0
+BA:24,0
+BA:24,0
+BA:24,0
+LF:2
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/log/file.cpp
+FN:42,_Z41__static_initialization_and_destruction_0ii
+FN:42,_GLOBAL__I_file.cpp
+FN:21,_ZN6wibble3log10FileSender4sendENS0_5LevelERKSs
+FN:16,_ZN6wibble3log10FileSenderD0Ev
+FN:16,_ZN6wibble3log10FileSenderD1Ev
+FN:16,_ZN6wibble3log10FileSenderD2Ev
+FN:9,_ZN6wibble3log10FileSenderC1ERKSs
+FN:9,_ZN6wibble3log10FileSenderC2ERKSs
+DA:9,1
+DA:11,1
+DA:12,1
+DA:13,0
+DA:14,1
+DA:16,1
+DA:18,1
+DA:19,1
+DA:21,4
+DA:23,4
+DA:25,4
+DA:35,4
+DA:36,4
+DA:37,4
+DA:38,1
+DA:39,4
+DA:42,3
+BA:12,1
+BA:12,2
+BA:12,0
+BA:12,0
+BA:18,0
+BA:18,0
+BA:18,2
+BA:18,1
+BA:18,0
+BA:18,0
+BA:19,0
+BA:19,0
+BA:19,1
+BA:19,2
+BA:19,0
+BA:19,0
+BA:37,2
+BA:37,2
+BA:42,2
+BA:42,1
+BA:42,2
+BA:42,1
+LF:17
+LH:16
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC1ERKS_
+FN:100,_ZNSaIcEC2ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:276,0
+BA:276,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:1551,_ZNKSs13get_allocatorEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:501,_ZNSsaSERKSs
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:67
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+BA:340,0
+BA:340,0
+LF:19
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+DA:683,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+DA:79,0
+DA:97,0
+DA:98,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:386,0
+DA:387,0
+DA:404,0
+DA:405,0
+DA:526,0
+DA:527,0
+BA:149,0
+BA:149,0
+LF:19
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+DA:69,0
+DA:71,0
+DA:76,0
+DA:97,0
+DA:98,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+DA:95,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/log/ostream.h
+FN:18,_ZN6wibble3log13OstreamSenderD0Ev
+FN:18,_ZN6wibble3log13OstreamSenderD1Ev
+DA:18,0
+BA:18,0
+BA:18,0
+BA:18,0
+BA:18,0
+LF:1
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/log/stream.h
+FN:23,_ZN6wibble3log6SenderC2Ev
+FN:24,_ZN6wibble3log6SenderD2Ev
+FN:24,_ZN6wibble3log6SenderD0Ev
+FN:24,_ZN6wibble3log6SenderD1Ev
+DA:23,0
+DA:24,0
+BA:24,0
+BA:24,0
+BA:24,0
+BA:24,0
+BA:24,0
+BA:24,0
+LF:2
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/log/ostream.cpp
+FN:7,_ZN6wibble3log13OstreamSenderC2ERSo
+FN:7,_ZN6wibble3log13OstreamSenderC1ERSo
+FN:9,_ZN6wibble3log13OstreamSender4sendENS0_5LevelERKSs
+DA:7,1
+DA:9,4
+DA:11,4
+DA:13,4
+DA:23,4
+DA:24,4
+DA:25,4
+DA:26,1
+DA:27,4
+BA:25,2
+BA:25,2
+LF:9
+LH:9
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:443,0
+DA:444,0
+BA:53,0
+BA:53,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1544,_ZNKSs4dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:606,0
+DA:607,0
+DA:1544,0
+DA:1545,0
+DA:2421,0
+DA:2425,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+DA:261,0
+DA:262,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:163,0
+DA:164,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:112,0
+DA:117,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:514,0
+BA:514,0
+LF:11
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:263,_ZNK6wibble9exception11Consistency4typeEv
+FN:317,_ZNK6wibble9exception10OutOfRange4typeEv
+FN:368,_ZNK6wibble9exception13ValOutOfRangeIiE4typeEv
+FN:361,_ZNK6wibble9exception13ValOutOfRangeIiE3valEv
+FN:363,_ZNK6wibble9exception13ValOutOfRangeIiE3infEv
+FN:365,_ZNK6wibble9exception13ValOutOfRangeIiE3supEv
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:320,_ZNK6wibble9exception10OutOfRange8var_descEv
+FN:265,_ZNK6wibble9exception11Consistency4descEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:322,_ZNK6wibble9exception10OutOfRange4descEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:261,_ZN6wibble9exception11ConsistencyD2Ev
+FN:315,_ZN6wibble9exception10OutOfRangeD2Ev
+FN:343,_ZN6wibble9exception13ValOutOfRangeIiED0Ev
+FN:343,_ZN6wibble9exception13ValOutOfRangeIiED1Ev
+FN:315,_ZN6wibble9exception10OutOfRangeD0Ev
+FN:315,_ZN6wibble9exception10OutOfRangeD1Ev
+FN:261,_ZN6wibble9exception11ConsistencyD0Ev
+FN:261,_ZN6wibble9exception11ConsistencyD1Ev
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:109,_ZN6wibble9exception10AddContext7contextEv
+FN:117,_ZN6wibble9exception10AddContext11copyContextISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvT_
+FN:153,_ZN6wibble9exception7Context10addContextERKSs
+FN:147,_ZN6wibble9exception7ContextC2ERKSs
+FN:186,_ZN6wibble9exception7GenericC2ERKSs
+FN:259,_ZN6wibble9exception11ConsistencyC2ERKSsS3_
+FN:313,_ZN6wibble9exception10OutOfRangeC2ERKSsS3_
+FN:354,_ZN6wibble9exception13ValOutOfRangeIiEC1ERKSsiiiS4_
+DA:109,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:113,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:137,0
+DA:147,0
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:186,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:259,0
+DA:260,0
+DA:261,0
+DA:263,0
+DA:265,0
+DA:266,0
+DA:267,0
+DA:268,0
+DA:269,0
+DA:313,0
+DA:314,0
+DA:315,0
+DA:317,0
+DA:320,0
+DA:322,0
+DA:343,0
+DA:354,0
+DA:356,0
+DA:361,0
+DA:363,0
+DA:365,0
+DA:368,0
+DA:370,0
+BA:110,0
+BA:110,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:267,0
+BA:267,0
+BA:315,0
+BA:315,0
+BA:315,0
+BA:315,0
+BA:315,0
+BA:315,0
+BA:343,0
+BA:343,0
+BA:343,0
+BA:343,0
+LF:58
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.tcc
+FN:29,_ZNK6wibble9exception13ValOutOfRangeIiE4descEv
+DA:29,0
+DA:31,0
+DA:32,0
+DA:34,0
+LF:4
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/regexp.h
+FN:45,_ZNK6wibble9exception6Regexp4codeEv
+FN:47,_ZNK6wibble9exception6Regexp4typeEv
+FN:48,_ZNK6wibble9exception6Regexp4descEv
+FN:42,_ZN6wibble9exception6RegexpD1Ev
+FN:42,_ZN6wibble9exception6RegexpD0Ev
+DA:42,0
+DA:45,0
+DA:47,0
+DA:48,0
+BA:42,0
+BA:42,0
+BA:42,0
+BA:42,0
+LF:4
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/regexp.cpp
+FN:169,_Z41__static_initialization_and_destruction_0ii
+FN:169,_GLOBAL__I_regexp.cpp
+FN:120,_ZN6wibble6Regexp11matchLengthEi
+FN:113,_ZN6wibble6Regexp8matchEndEi
+FN:106,_ZN6wibble6Regexp10matchStartEi
+FN:95,_ZN6wibble6RegexpixEi
+FN:66,_ZN6wibble6RegexpD1Ev
+FN:66,_ZN6wibble6RegexpD2Ev
+FN:32,_ZN6wibble9exception6RegexpC1ERK17re_pattern_bufferiRKSs
+FN:75,_ZN6wibble6Regexp5matchERKSsi
+FN:143,_ZN6wibble8Splitter14const_iteratorppEv
+FN:127,_ZN6wibble9Tokenizer14const_iteratorppEv
+FN:53,_ZN6wibble6RegexpC1ERKSsii
+FN:53,_ZN6wibble6RegexpC2ERKSsii
+FN:32,_ZN6wibble9exception6RegexpC2ERK17re_pattern_bufferiRKSs
+DA:32,0
+DA:33,0
+DA:35,0
+DA:36,0
+DA:37,0
+DA:38,0
+DA:40,0
+DA:41,0
+DA:42,0
+DA:44,0
+DA:45,0
+DA:46,0
+DA:53,14
+DA:55,14
+DA:56,2
+DA:58,14
+DA:59,14
+DA:60,0
+DA:62,14
+DA:63,12
+DA:64,14
+DA:66,14
+DA:68,14
+DA:69,14
+DA:70,12
+DA:71,14
+DA:75,50
+DA:79,50
+DA:81,38
+DA:82,38
+DA:85,12
+DA:87,50
+DA:89,33
+DA:90,17
+DA:91,0
+DA:95,6
+DA:97,6
+DA:98,0
+DA:100,6
+DA:101,0
+DA:103,6
+DA:106,25
+DA:108,25
+DA:109,0
+DA:110,25
+DA:113,2
+DA:115,2
+DA:116,0
+DA:117,2
+DA:120,30
+DA:122,30
+DA:123,0
+DA:124,30
+DA:127,26
+DA:130,26
+DA:132,26
+DA:134,17
+DA:135,17
+DA:138,9
+DA:140,26
+DA:143,10
+DA:145,10
+DA:147,8
+DA:149,3
+DA:150,6
+DA:154,5
+DA:156,4
+DA:157,8
+DA:159,1
+DA:163,2
+DA:164,2
+DA:166,10
+DA:169,9
+BA:38,0
+BA:38,0
+BA:38,0
+BA:38,0
+BA:40,0
+BA:40,0
+BA:40,0
+BA:40,0
+BA:45,0
+BA:45,0
+BA:45,0
+BA:45,0
+BA:55,2
+BA:55,2
+BA:55,2
+BA:55,2
+BA:59,1
+BA:59,2
+BA:59,1
+BA:59,2
+BA:62,2
+BA:62,2
+BA:62,2
+BA:62,2
+BA:69,2
+BA:69,2
+BA:69,2
+BA:69,2
+BA:70,2
+BA:70,1
+BA:70,2
+BA:70,1
+BA:79,2
+BA:79,2
+BA:87,2
+BA:87,2
+BA:87,1
+BA:97,1
+BA:97,2
+BA:100,1
+BA:100,2
+BA:108,1
+BA:108,2
+BA:115,1
+BA:115,2
+BA:122,1
+BA:122,2
+BA:132,2
+BA:132,2
+BA:145,2
+BA:145,2
+BA:147,2
+BA:147,2
+BA:154,2
+BA:154,2
+BA:169,2
+BA:169,1
+BA:169,2
+BA:169,1
+LF:73
+LH:54
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:276,0
+BA:276,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+FN:501,_ZNSsaSERKSs
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:928,_ZNSs6assignEPKc
+FN:509,_ZNSsaSEPKc
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:509,0
+DA:510,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:928,0
+DA:931,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1923,0
+DA:1925,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:308,0
+BA:308,0
+BA:341,0
+BA:341,0
+LF:77
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+FN:668,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+DA:668,0
+DA:673,0
+DA:674,0
+DA:675,0
+DA:676,0
+DA:677,0
+DA:678,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:23
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET0_T_SA_S9_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+LF:34
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:683,0
+DA:695,0
+DA:696,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+LF:17
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:377,0
+DA:378,0
+DA:386,0
+DA:387,0
+DA:395,0
+DA:396,0
+DA:404,0
+DA:405,0
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:526,0
+DA:527,0
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:49
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:286,0
+BA:286,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/exception
+FN:59,_ZNSt9exceptionC2Ev
+DA:59,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,3
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+DA:95,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/action.h
+FN:89,_ZN3ept4core7package10ActionList5emptyEv
+FN:81,_ZN3ept4core7package10ActionListC1Ev
+FN:15,_ZN3ept4core7package6ActionD1Ev
+FN:81,_ZN3ept4core7package10ActionListD1Ev
+FN:76,_ZN3ept4core7package6ActionC1ENS_5TokenENS2_4TypeE
+FN:20,_ZN3ept4core7package6Action5tokenEv
+FN:15,_ZN3ept4core7package6ActionC1ERKS2_
+FN:15,_ZN3ept4core7package6ActionaSERKS2_
+FN:93,_ZN3ept4core7package10ActionList3addENS1_6ActionE
+FN:23,_ZN3ept4core7package6Action5applyERNS1_6SourceE
+FN:111,_ZN3ept4core7package10ActionList6replayERNS1_6SourceE
+DA:15,13
+DA:20,4
+DA:23,4
+DA:25,4
+DA:26,4
+DA:28,4
+DA:29,0
+DA:31,4
+DA:32,0
+DA:33,4
+DA:35,4
+DA:36,8
+DA:37,2
+DA:38,2
+DA:39,2
+DA:40,2
+DA:41,2
+DA:42,0
+DA:43,2
+DA:44,0
+DA:45,0
+DA:46,0
+DA:47,0
+DA:48,2
+DA:49,2
+DA:50,2
+DA:51,2
+DA:53,4
+DA:76,6
+DA:77,6
+DA:78,6
+DA:81,2
+DA:89,1
+DA:90,1
+DA:93,3
+DA:94,3
+DA:95,3
+DA:96,2
+DA:97,2
+DA:98,2
+DA:101,3
+DA:102,2
+DA:104,3
+DA:105,3
+DA:111,1
+DA:112,2
+DA:113,1
+DA:115,1
+BA:28,1
+BA:28,2
+BA:31,2
+BA:31,1
+BA:36,2
+BA:36,2
+BA:36,1
+BA:36,2
+BA:41,1
+BA:41,2
+BA:43,2
+BA:43,1
+BA:43,1
+BA:43,2
+BA:48,2
+BA:48,1
+BA:95,2
+BA:95,2
+BA:96,2
+BA:96,1
+BA:101,2
+BA:101,2
+BA:112,2
+BA:112,2
+LF:48
+LH:41
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/action.test.h
+FN:10,_ZN13TestAptActionC1Ev
+FN:8,_ZN13TestAptActionD1Ev
+FN:31,_ZN13TestAptAction4keepEv
+FN:12,_ZN13TestAptAction5basicEv
+FN:22,_ZN13TestAptAction6revertEv
+DA:8,3
+DA:10,3
+DA:12,1
+DA:13,1
+DA:14,2
+DA:15,1
+DA:16,1
+DA:17,1
+DA:18,1
+DA:19,1
+DA:20,1
+DA:22,1
+DA:23,1
+DA:24,2
+DA:25,1
+DA:26,1
+DA:27,1
+DA:28,1
+DA:29,1
+DA:31,1
+DA:32,1
+DA:33,1
+DA:34,2
+DA:35,1
+DA:36,2
+DA:37,1
+DA:38,1
+DA:39,1
+DA:40,1
+LF:29
+LH:29
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/package.h
+FN:92,_ZN3ept4core7package6Source2dbEv
+FN:25,_ZN3ept4core7package6SourceD1Ev
+FN:28,_ZN3ept4core7package6SourceC1ERNS0_11AptDatabaseE
+FN:99,_ZN3ept4core7package6Source11getInternalILNS1_10PropertyIdE3EEENS1_12PropertyTypeIXT_EE1TEN8pkgCache11PkgIteratorE
+FN:34,_ZN3ept4core7package6Source11lookupTokenENS_5TokenE
+FN:44,_ZN3ept4core7package6Source6existsENS_5TokenE
+FN:30,_ZN3ept4core7package6Source12listInternalEv
+FN:61,_ZN3ept4core7package6Source11revertStateINS0_15AptInternalListIN8pkgCache11PkgIteratorEEEEEvT_
+FN:74,_ZN3ept4core7package6Source12revertStatesEv
+DA:25,0
+DA:28,0
+DA:30,0
+DA:31,0
+DA:34,0
+DA:35,0
+DA:44,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:61,1
+DA:62,3779
+DA:63,3777
+DA:64,3777
+DA:65,2
+DA:66,2
+DA:67,2
+DA:68,2
+DA:70,3777
+DA:72,1
+DA:74,1
+DA:75,1
+DA:76,1
+DA:77,1
+DA:92,9
+DA:99,0
+DA:100,0
+BA:45,0
+BA:45,0
+BA:62,2
+BA:62,2
+BA:64,2
+BA:64,2
+BA:64,1
+BA:64,2
+BA:64,2
+BA:64,2
+LF:27
+LH:15
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.h
+DA:86,1
+BA:86,1
+BA:86,2
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt.h
+FN:60,_ZN3ept4core12PackageStatecvjEv
+FN:67,_ZN3ept4core12PackageStateoRERKS1_
+FN:72,_ZN3ept4core12PackageStateC1Ej
+FN:83,_ZNK3ept4core12PackageState7installEv
+FN:88,_ZNK3ept4core12PackageState5purgeEv
+FN:89,_ZNK3ept4core12PackageState4keepEv
+FN:282,_ZN3ept4core11AptDatabase12invalidStateEv
+FN:353,_ZN3ept4core15AptInternalListIN8pkgCache11PkgIteratorEEC1ES3_
+FN:352,_ZNK3ept4core15AptInternalListIN8pkgCache11PkgIteratorEE5emptyEv
+FN:351,_ZN3ept4core15AptInternalListIN8pkgCache11PkgIteratorEE4headEv
+FN:139,_ZN3ept4core11AptDatabaseC1Ev
+FN:209,_ZN3ept4core11AptDatabase10invalidateEv
+FN:331,_ZN3ept4core11AptDatabaseD1Ev
+FN:28,_ZNK3ept4core12AptException4descEv
+FN:32,_ZN3ept4core12AptExceptionC1ERKSs
+FN:164,_ZN3ept4core11AptDatabase9openCacheEv
+FN:113,_ZN3ept4core11AptDatabase5cacheEv
+FN:158,_ZN3ept4core11AptDatabase9openStateEv
+FN:119,_ZN3ept4core11AptDatabase5stateEv
+FN:244,_ZN3ept4core11AptDatabase16installedVersionEN8pkgCache11PkgIteratorE
+FN:125,_ZN3ept4core11AptDatabase6policyEv
+FN:237,_ZN3ept4core11AptDatabase16candidateVersionEN8pkgCache11PkgIteratorE
+FN:286,_ZN3ept4core11AptDatabase12packageStateEN8pkgCache11PkgIteratorE
+FN:27,_ZN3ept4core12AptExceptionD0Ev
+FN:27,_ZN3ept4core12AptExceptionD1Ev
+FN:227,_ZN3ept4core11AptDatabase16candidateVersionENS_5TokenE
+FN:252,_ZN3ept4core11AptDatabase13lookupPackageENS_5TokenE
+FN:256,_ZN3ept4core11AptDatabase13lookupVersionENS_5TokenE
+FN:345,_ZNK3ept4core15AptInternalListIN8pkgCache11PkgIteratorEE4tailEv
+DA:27,0
+DA:28,0
+DA:29,0
+DA:32,0
+DA:33,0
+DA:34,0
+DA:35,0
+DA:36,0
+DA:37,0
+DA:39,0
+DA:60,0
+DA:67,0
+DA:68,0
+DA:69,0
+DA:72,0
+DA:73,0
+DA:74,0
+DA:83,2
+DA:88,3775
+DA:89,3780
+DA:113,0
+DA:114,0
+DA:115,0
+DA:116,0
+DA:119,0
+DA:120,0
+DA:121,0
+DA:122,0
+DA:125,0
+DA:126,0
+DA:127,0
+DA:128,0
+DA:139,0
+DA:140,0
+DA:141,0
+DA:142,0
+DA:143,0
+DA:144,0
+DA:145,0
+DA:146,0
+DA:158,0
+DA:159,0
+DA:160,0
+DA:161,0
+DA:162,0
+DA:164,0
+DA:165,0
+DA:166,0
+DA:167,0
+DA:168,0
+DA:171,0
+DA:173,0
+DA:175,0
+DA:176,0
+DA:177,0
+DA:178,0
+DA:179,0
+DA:180,0
+DA:184,0
+DA:185,0
+DA:186,0
+DA:188,0
+DA:191,0
+DA:192,0
+DA:194,0
+DA:196,0
+DA:199,0
+DA:202,0
+DA:203,0
+DA:204,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:218,0
+DA:219,0
+DA:220,0
+DA:227,0
+DA:228,0
+DA:229,0
+DA:230,0
+DA:231,0
+DA:233,0
+DA:234,0
+DA:237,0
+DA:238,0
+DA:239,0
+DA:240,0
+DA:241,0
+DA:244,0
+DA:245,0
+DA:247,0
+DA:248,0
+DA:249,0
+DA:252,0
+DA:253,0
+DA:256,0
+DA:257,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:261,0
+DA:262,0
+DA:263,0
+DA:264,0
+DA:265,0
+DA:282,0
+DA:283,0
+DA:286,0
+DA:288,0
+DA:289,0
+DA:290,0
+DA:291,0
+DA:293,0
+DA:294,0
+DA:296,0
+DA:297,0
+DA:298,0
+DA:299,0
+DA:300,0
+DA:302,0
+DA:303,0
+DA:304,0
+DA:305,0
+DA:306,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:311,0
+DA:312,0
+DA:313,0
+DA:314,0
+DA:315,0
+DA:331,0
+DA:332,0
+DA:333,0
+DA:345,0
+DA:346,0
+DA:347,0
+DA:351,3781
+DA:352,0
+DA:353,0
+BA:27,0
+BA:27,0
+BA:27,0
+BA:27,0
+BA:33,0
+BA:33,0
+BA:114,0
+BA:114,0
+BA:120,0
+BA:120,0
+BA:126,0
+BA:126,0
+BA:165,0
+BA:165,0
+BA:173,0
+BA:173,0
+BA:185,0
+BA:185,0
+BA:194,0
+BA:194,0
+BA:204,0
+BA:204,0
+BA:210,0
+BA:210,0
+BA:214,0
+BA:214,0
+BA:216,0
+BA:216,0
+BA:218,0
+BA:218,0
+BA:229,0
+BA:229,0
+BA:231,0
+BA:231,0
+BA:238,0
+BA:238,0
+BA:240,0
+BA:240,0
+BA:245,0
+BA:245,0
+BA:248,0
+BA:248,0
+BA:257,0
+BA:257,0
+BA:260,0
+BA:260,0
+BA:262,0
+BA:262,0
+BA:263,0
+BA:263,0
+BA:289,0
+BA:289,0
+BA:291,0
+BA:291,0
+BA:291,0
+BA:291,0
+BA:291,0
+BA:291,0
+BA:294,0
+BA:294,0
+BA:294,0
+BA:294,0
+BA:294,0
+BA:294,0
+BA:298,0
+BA:298,0
+BA:300,0
+BA:300,0
+BA:303,0
+BA:303,0
+BA:305,0
+BA:305,0
+BA:307,0
+BA:307,0
+BA:309,0
+BA:309,0
+BA:311,0
+BA:311,0
+BA:313,0
+BA:313,0
+LF:149
+LH:4
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/source.h
+FN:20,_ZN3ept4core6SourceINS0_7package6SourceENS2_5SetupENS2_12PropertyTypeEE4selfEv
+FN:13,_ZN3ept4core6SourceINS0_7package6SourceENS2_5SetupENS2_12PropertyTypeEED2Ev
+FN:106,_ZN3ept4core6SourceINS0_7package6SourceENS2_5SetupENS2_12PropertyTypeEEC2Ev
+FN:23,_ZN3ept4core6SourceINS0_7package6SourceENS2_5SetupENS2_12PropertyTypeEE3getILNS2_10PropertyIdE3EEENS5_IXT_EE1TENS_5TokenE
+DA:13,0
+DA:20,0
+DA:23,0
+DA:24,0
+DA:25,0
+DA:26,0
+DA:28,0
+DA:106,0
+DA:107,0
+DA:108,0
+BA:24,0
+BA:24,0
+LF:10
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/test.h
+FN:12,_ZN18AptTestEnvironmentC2Ev
+FN:10,_ZN18AptTestEnvironmentD2Ev
+DA:10,0
+DA:12,0
+DA:13,0
+DA:14,0
+DA:15,0
+DA:16,0
+DA:17,0
+DA:18,0
+DA:19,0
+DA:20,0
+DA:21,0
+LF:11
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/token.h
+FN:10,_ZN3ept5TokenD1Ev
+FN:14,_ZN3ept5TokenC1Ev
+FN:15,_ZN3ept5TokenC1ESs
+FN:10,_ZN3ept5TokenC1ERKS0_
+FN:44,_ZNK3ept5TokenleERKS0_
+FN:10,_ZN3ept5TokenaSERKS0_
+FN:17,_ZNK3ept5Token7versionEv
+FN:22,_ZNK3ept5Token7packageEv
+FN:36,_ZNK3ept5Token10hasVersionEv
+DA:10,0
+DA:14,0
+DA:15,0
+DA:17,0
+DA:19,0
+DA:22,0
+DA:25,0
+DA:36,0
+DA:37,0
+DA:44,0
+DA:45,0
+BA:19,0
+BA:19,0
+BA:19,0
+BA:19,0
+BA:19,0
+BA:19,0
+BA:25,0
+BA:25,0
+LF:11
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:109,_ZN6wibble9exception10AddContext7contextEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:117,_ZN6wibble9exception10AddContext11copyContextISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvT_
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:153,_ZN6wibble9exception7Context10addContextERKSs
+FN:147,_ZN6wibble9exception7ContextC2ERKSs
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:186,_ZN6wibble9exception7GenericC2ERKSs
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:395,_ZN6wibble9exception6SystemD1Ev
+DA:109,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:113,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:137,0
+DA:147,0
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:186,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:395,0
+BA:110,0
+BA:110,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:395,0
+BA:395,0
+LF:36
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/mixin.h
+FN:13,_ZN6wibble5mixin10ComparableIN3ept5TokenEEC2Ev
+FN:15,_ZNK6wibble5mixin10ComparableIN3ept5TokenEE7cmpSelfEv
+FN:23,_ZNK6wibble5mixin10ComparableIN3ept5TokenEEeqERKS3_
+FN:19,_ZNK6wibble5mixin10ComparableIN3ept5TokenEEneERKS3_
+DA:13,0
+DA:15,0
+DA:16,0
+DA:19,0
+DA:20,0
+DA:23,0
+DA:24,0
+BA:24,0
+BA:24,0
+BA:24,0
+BA:24,0
+LF:7
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationD1Ev
+FN:17,_ZN8LocationC1EPKciSs
+FN:13,_ZN8LocationC1ERKS_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:59,_Z9assert_fnIbEv8LocationT_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+LF:18
+LH:0
+end_of_record
+SF:/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt_action.cpp
+FN:5,_Z41__static_initialization_and_destruction_0ii
+FN:5,_GLOBAL__I_ept_test_generated__home_mornfall_dev_pkg_ept_work_ept_core_apt_action.cpp
+FN:5,_Z18run_AptAction_keepv
+FN:3,_Z19run_AptAction_basicv
+FN:4,_Z20run_AptAction_revertv
+DA:3,1
+DA:4,1
+DA:5,4
+BA:5,2
+BA:5,1
+BA:5,2
+BA:5,1
+LF:3
+LH:3
+end_of_record
+SF:/usr/include/apt-pkg/algorithms.h
+FN:110,_ZN18pkgProblemResolver7ProtectEN8pkgCache11PkgIteratorE
+FN:111,_ZN18pkgProblemResolver6RemoveEN8pkgCache11PkgIteratorE
+FN:112,_ZN18pkgProblemResolver5ClearEN8pkgCache11PkgIteratorE
+DA:110,4
+DA:111,0
+DA:112,4
+LF:3
+LH:2
+end_of_record
+SF:/usr/include/apt-pkg/cacheiterators.h
+FN:59,_ZNK8pkgCache11PkgIterator3endEv
+FN:66,_ZN8pkgCache11PkgIteratorptEv
+FN:67,_ZNK8pkgCache11PkgIteratorptEv
+FN:91,_ZN8pkgCache11PkgIteratorC1Ev
+FN:105,_ZN8pkgCache11VerIteratorppEi
+FN:106,_ZN8pkgCache11VerIteratorppEv
+FN:107,_ZNK8pkgCache11VerIterator3endEv
+FN:112,_ZNK8pkgCache11VerIteratorneERKS0_
+FN:124,_ZNK8pkgCache11VerIterator6VerStrEv
+FN:141,_ZN8pkgCache11VerIteratorC1Ev
+FN:142,_ZN8pkgCache11VerIteratorC1ERS_PNS_7VersionE
+FN:417,_ZNK8pkgCache11PkgIterator11VersionListEv
+FN:46,_ZN8pkgCache11PkgIteratorC1ERS_
+DA:46,0
+DA:48,0
+DA:49,0
+DA:50,0
+DA:59,0
+DA:66,0
+DA:67,0
+DA:91,0
+DA:105,0
+DA:106,0
+DA:107,0
+DA:112,0
+DA:124,0
+DA:141,0
+DA:142,0
+DA:143,0
+DA:145,0
+DA:146,0
+DA:147,0
+DA:417,0
+DA:418,0
+BA:59,0
+BA:59,0
+BA:59,0
+BA:59,0
+BA:105,0
+BA:105,0
+BA:107,0
+BA:107,0
+BA:107,0
+BA:107,0
+BA:124,0
+BA:124,0
+BA:145,0
+BA:145,0
+LF:21
+LH:0
+end_of_record
+SF:/usr/include/apt-pkg/depcache.h
+FN:242,_ZNK11pkgDepCache10StateCache6DeleteEv
+FN:243,_ZNK11pkgDepCache10StateCache4KeepEv
+FN:248,_ZNK11pkgDepCache10StateCache9NowBrokenEv
+FN:250,_ZNK11pkgDepCache10StateCache10InstBrokenEv
+FN:252,_ZNK11pkgDepCache10StateCache7InstallEv
+FN:342,_ZN11pkgDepCacheixERKN8pkgCache11PkgIteratorE
+DA:242,0
+DA:243,0
+DA:248,0
+DA:250,0
+DA:252,0
+DA:342,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/apt-pkg/error.h
+FN:84,_ZN11GlobalError5emptyEv
+DA:84,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/apt-pkg/pkgcache.h
+FN:326,_ZN8pkgCache8PkgBeginEv
+DA:326,0
+DA:327,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:106,_ZNSaIN3ept4core7package6ActionEED2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:98,_ZNSaIN3ept4core7package6ActionEEC2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,1
+DA:100,0
+DA:101,0
+DA:106,1
+DA:118,0
+DA:119,0
+LF:6
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:277,_ZNKSs7_M_dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:1544,_ZNKSs4dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:392,_ZNSs10_S_compareEjj
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:1941,_ZNKSs7compareERKSs
+FN:2312,_ZStleIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:501,_ZNSsaSERKSs
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:2225,_ZStneIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2188,0
+DA:2189,0
+DA:2225,0
+DA:2226,0
+DA:2312,0
+DA:2313,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+BA:1948,0
+BA:1948,0
+LF:84
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:188,_ZSt3minIjERKT_S2_S2_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPN3ept4core7package6ActionESt6vectorIS5_SaIS5_EEEELb0EE3__bESA_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPN3ept4core7package6ActionESt6vectorIS5_SaIS5_EEEELb1EE3__bESA_
+FN:286,_ZNSt12__miter_baseIPN3ept4core7package6ActionELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:268,_ZNSt12__niter_baseIPN3ept4core7package6ActionELb0EE3__bES4_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPN3ept4core7package6ActionES7_EET0_T_S9_S8_
+FN:385,_ZSt13__copy_move_aILb0EPN3ept4core7package6ActionES4_ET1_T0_S6_S5_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPN3ept4core7package6ActionESt6vectorIS5_SaIS5_EEEESA_ET1_T0_SC_SB_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPN3ept4core7package6ActionESt6vectorIS5_SaIS5_EEEESA_ET0_T_SC_SB_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPN3ept4core7package6ActionES7_EET0_T_S9_S8_
+FN:579,_ZSt22__copy_move_backward_aILb0EPN3ept4core7package6ActionES4_ET1_T0_S6_S5_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPN3ept4core7package6ActionES4_ET1_T0_S6_S5_
+FN:624,_ZSt13copy_backwardIPN3ept4core7package6ActionES4_ET0_T_S6_S5_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET0_T_SA_S9_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:193,0
+BA:193,0
+BA:215,0
+BA:215,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+BA:542,0
+BA:542,0
+LF:38
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyIN3ept4core7package6ActionEEvPT_
+FN:97,_ZSt8_DestroyIPN3ept4core7package6ActionEEvT_S5_
+FN:126,_ZSt8_DestroyIPN3ept4core7package6ActionES3_EvT_S5_RSaIT0_E
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,1
+DA:88,1
+DA:97,2
+DA:101,3
+DA:103,1
+DA:104,2
+DA:126,2
+DA:128,2
+DA:129,2
+BA:101,2
+BA:101,2
+BA:101,0
+BA:101,0
+LF:9
+LH:9
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:680,_ZN9__gnu_cxx17__normal_iteratorIPN3ept4core7package6ActionESt6vectorIS4_SaIS4_EEEC1Ev
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPN3ept4core7package6ActionESt6vectorIS4_SaIS4_EEEppEv
+FN:699,_ZNK9__gnu_cxx17__normal_iteratorIPN3ept4core7package6ActionESt6vectorIS4_SaIS4_EEEptEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPN3ept4core7package6ActionESt6vectorIS4_SaIS4_EEEdeEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPN3ept4core7package6ActionESt6vectorIS4_SaIS4_EEEC1ERKS5_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPN3ept4core7package6ActionESt6vectorIS4_SaIS4_EEE4baseEv
+FN:781,_ZN9__gnu_cxxneIPN3ept4core7package6ActionESt6vectorIS4_SaIS4_EEEEbRKNS_17__normal_iteratorIT_T0_EESE_
+FN:735,_ZNK9__gnu_cxx17__normal_iteratorIPN3ept4core7package6ActionESt6vectorIS4_SaIS4_EEEplERKi
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKN3ept4core7package6ActionESt6vectorIS4_SaIS4_EEEC1ERKS6_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKN3ept4core7package6ActionESt6vectorIS4_SaIS4_EEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKN3ept4core7package6ActionESt6vectorIS4_SaIS4_EEEEbRKNS_17__normal_iteratorIT_T0_EESF_
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:680,3
+DA:683,22
+DA:695,0
+DA:696,0
+DA:699,3
+DA:700,3
+DA:703,1
+DA:705,1
+DA:706,1
+DA:735,2
+DA:736,2
+DA:747,24
+DA:748,24
+DA:769,1
+DA:770,1
+DA:781,10
+DA:782,10
+LF:27
+LH:15
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPN3ept4core7package6ActionES6_EET0_T_S8_S7_
+FN:113,_ZSt18uninitialized_copyIPN3ept4core7package6ActionES4_ET0_T_S6_S5_
+FN:261,_ZSt22__uninitialized_copy_aIPN3ept4core7package6ActionES4_S3_ET0_T_S6_S5_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPN3ept4core7package6ActionES4_SaIS3_EET0_T_S7_S6_RT1_
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+DA:73,2
+DA:75,2
+DA:78,2
+DA:79,0
+DA:81,2
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,2
+DA:122,2
+DA:261,2
+DA:262,2
+DA:268,2
+DA:272,2
+BA:78,1
+BA:78,2
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+BA:79,0
+BA:79,0
+LF:14
+LH:10
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:377,_ZNSt6vectorIN3ept4core7package6ActionESaIS3_EE5beginEv
+FN:395,_ZNSt6vectorIN3ept4core7package6ActionESaIS3_EE3endEv
+FN:97,_ZNSt12_Vector_baseIN3ept4core7package6ActionESaIS3_EE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:404,_ZNKSt6vectorIN3ept4core7package6ActionESaIS3_EE3endEv
+FN:386,_ZNKSt6vectorIN3ept4core7package6ActionESaIS3_EE5beginEv
+FN:526,_ZNKSt6vectorIN3ept4core7package6ActionESaIS3_EE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:484,_ZNKSt6vectorIN3ept4core7package6ActionESaIS3_EE4sizeEv
+FN:79,_ZNSt12_Vector_baseIN3ept4core7package6ActionESaIS3_EE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:101,_ZNKSt12_Vector_baseIN3ept4core7package6ActionESaIS3_EE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorIN3ept4core7package6ActionESaIS3_EE8max_sizeEv
+FN:84,_ZNSt12_Vector_baseIN3ept4core7package6ActionESaIS3_EE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIN3ept4core7package6ActionESaIS3_EEC2Ev
+FN:213,_ZNSt6vectorIN3ept4core7package6ActionESaIS3_EEC1Ev
+FN:147,_ZNSt12_Vector_baseIN3ept4core7package6ActionESaIS3_EE13_M_deallocateEPS3_j
+FN:135,_ZNSt12_Vector_baseIN3ept4core7package6ActionESaIS3_EED2Ev
+FN:299,_ZNSt6vectorIN3ept4core7package6ActionESaIS3_EED1Ev
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:1075,_ZNKSt6vectorIN3ept4core7package6ActionESaIS3_EE12_M_check_lenEjPKc
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseIN3ept4core7package6ActionESaIS3_EE11_M_allocateEj
+FN:686,_ZNSt6vectorIN3ept4core7package6ActionESaIS3_EE9push_backERKS3_
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+DA:79,1
+DA:84,1
+DA:85,1
+DA:86,1
+DA:97,4
+DA:98,4
+DA:101,2
+DA:102,2
+DA:108,1
+DA:109,1
+DA:135,1
+DA:136,1
+DA:137,1
+DA:143,1
+DA:144,1
+DA:147,2
+DA:149,2
+DA:150,1
+DA:151,2
+DA:213,1
+DA:214,1
+DA:299,1
+DA:300,1
+DA:301,1
+DA:377,4
+DA:378,4
+DA:386,1
+DA:387,1
+DA:395,14
+DA:396,14
+DA:404,1
+DA:405,1
+DA:484,4
+DA:485,4
+DA:489,2
+DA:490,2
+DA:526,1
+DA:527,1
+DA:686,3
+DA:688,3
+DA:690,2
+DA:691,2
+DA:694,1
+DA:695,3
+DA:1075,1
+DA:1077,1
+DA:1078,0
+DA:1080,1
+DA:1081,1
+BA:144,2
+BA:144,1
+BA:144,0
+BA:144,0
+BA:149,2
+BA:149,2
+BA:149,0
+BA:149,0
+BA:688,2
+BA:688,2
+BA:688,0
+BA:688,0
+BA:1077,1
+BA:1077,2
+BA:1077,0
+BA:1077,0
+BA:1081,2
+BA:1081,1
+BA:1081,1
+BA:1081,2
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:49
+LH:48
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:121,_ZNSt6vectorIN3ept4core7package6ActionESaIS3_EE5eraseEN9__gnu_cxx17__normal_iteratorIPS3_S5_EE
+FN:283,_ZNSt6vectorIN3ept4core7package6ActionESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+DA:121,2
+DA:123,2
+DA:124,0
+DA:125,2
+DA:126,2
+DA:127,2
+DA:283,1
+DA:286,1
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,1
+DA:308,1
+DA:309,1
+DA:316,1
+DA:321,1
+DA:323,1
+DA:324,1
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,1
+DA:338,1
+DA:341,1
+DA:342,1
+DA:343,1
+DA:345,1
+BA:123,1
+BA:123,2
+BA:286,1
+BA:286,2
+BA:286,0
+BA:286,0
+LF:30
+LH:20
+end_of_record
+SF:/usr/include/c++/4.3/exception
+FN:59,_ZNSt9exceptionC2Ev
+FN:57,_ZNSt9exceptionC1ERKS_
+DA:57,0
+DA:59,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIN3ept4core7package6ActionEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorIN3ept4core7package6ActionEE8max_sizeEv
+FN:69,_ZN9__gnu_cxx13new_allocatorIN3ept4core7package6ActionEEC2Ev
+FN:118,_ZN9__gnu_cxx13new_allocatorIN3ept4core7package6ActionEE7destroyEPS4_
+FN:97,_ZN9__gnu_cxx13new_allocatorIN3ept4core7package6ActionEE10deallocateEPS4_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:107,_ZN9__gnu_cxx13new_allocatorIN3ept4core7package6ActionEE9constructEPS4_RKS4_
+FN:87,_ZN9__gnu_cxx13new_allocatorIN3ept4core7package6ActionEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+DA:69,1
+DA:71,0
+DA:76,1
+DA:87,1
+DA:89,1
+DA:90,0
+DA:92,1
+DA:97,1
+DA:98,1
+DA:101,3
+DA:102,3
+DA:107,3
+DA:108,3
+DA:118,2
+BA:89,1
+BA:89,2
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+BA:108,2
+BA:108,1
+LF:14
+LH:12
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:25
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.h
+DA:86,1
+BA:86,1
+BA:86,2
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt.h
+FN:139,_ZN3ept4core11AptDatabaseC1Ev
+FN:209,_ZN3ept4core11AptDatabase10invalidateEv
+FN:331,_ZN3ept4core11AptDatabaseD1Ev
+DA:139,0
+DA:140,0
+DA:141,0
+DA:142,0
+DA:143,0
+DA:144,0
+DA:145,0
+DA:146,0
+DA:209,0
+DA:210,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:218,0
+DA:219,0
+DA:220,0
+DA:331,0
+DA:332,0
+DA:333,0
+BA:210,0
+BA:210,0
+BA:214,0
+BA:214,0
+BA:216,0
+BA:216,0
+BA:218,0
+BA:218,0
+LF:21
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/expression.test.h
+FN:32,_ZN14TestExpressionC1Ev
+FN:35,_ZN14TestExpression2_1Ev
+FN:32,_ZN14TestExpressionD1Ev
+DA:32,2
+DA:35,1
+DA:37,1
+DA:38,1
+DA:39,2
+DA:40,2
+DA:42,2
+DA:44,2
+DA:45,2
+DA:47,2
+DA:48,2
+DA:50,2
+DA:51,2
+DA:53,2
+DA:54,2
+DA:56,2
+DA:57,2
+DA:59,2
+DA:60,2
+DA:62,2
+DA:63,2
+DA:65,2
+DA:66,2
+DA:68,2
+DA:69,2
+DA:71,2
+DA:72,2
+DA:74,2
+DA:75,2
+DA:77,2
+DA:78,2
+DA:79,1
+LF:32
+LH:32
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/path.h
+FN:76,_ZN3ept7debtags4Path24OverrideDebtagsSourceDirC1ERKSs
+FN:80,_ZN3ept7debtags4Path24OverrideDebtagsSourceDirD1Ev
+FN:86,_ZN3ept7debtags4Path23OverrideDebtagsIndexDirC1ERKSs
+FN:90,_ZN3ept7debtags4Path23OverrideDebtagsIndexDirD1Ev
+FN:96,_ZN3ept7debtags4Path28OverrideDebtagsUserSourceDirC1ERKSs
+FN:100,_ZN3ept7debtags4Path28OverrideDebtagsUserSourceDirD1Ev
+FN:106,_ZN3ept7debtags4Path27OverrideDebtagsUserIndexDirC1ERKSs
+FN:110,_ZN3ept7debtags4Path27OverrideDebtagsUserIndexDirD1Ev
+DA:76,0
+DA:78,0
+DA:79,0
+DA:80,0
+DA:86,0
+DA:88,0
+DA:89,0
+DA:90,0
+DA:96,0
+DA:98,0
+DA:99,0
+DA:100,0
+DA:106,0
+DA:108,0
+DA:109,0
+DA:110,0
+LF:16
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/tag.h
+FN:175,_ZN3ept7debtags3TagD1Ev
+FN:179,_ZNK3ept7debtags3TagltERKS1_
+DA:175,0
+DA:179,0
+LF:2
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/vocabulary.h
+FN:114,_ZNK3ept7debtags10Vocabulary8TagIndex2idERKSs
+FN:203,_ZNK3ept7debtags10Vocabulary9tagByNameERKSs
+DA:114,0
+DA:203,0
+LF:2
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/test.h
+FN:12,_ZN18AptTestEnvironmentC2Ev
+FN:10,_ZN18AptTestEnvironmentD2Ev
+FN:30,_ZN22DebtagsTestEnvironmentC2Ev
+FN:24,_ZN22DebtagsTestEnvironmentD2Ev
+DA:10,0
+DA:12,0
+DA:13,0
+DA:14,0
+DA:15,0
+DA:16,0
+DA:17,0
+DA:18,0
+DA:19,0
+DA:20,0
+DA:21,0
+DA:24,0
+DA:30,0
+DA:34,0
+DA:35,0
+LF:15
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationD1Ev
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:41,_ZN12AssertFailedD1Ev
+FN:67,_Z12assert_eq_fnIjjEv8LocationT_T0_
+FN:59,_Z9assert_fnIbEv8LocationT_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:75,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+LF:26
+LH:0
+end_of_record
+SF:/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_expression.cpp
+FN:3,_Z41__static_initialization_and_destruction_0ii
+FN:3,_GLOBAL__I_ept_test_generated__home_mornfall_dev_pkg_ept_work_ept_debtags_expression.cpp
+FN:3,_Z17run_Expression__1v
+DA:3,4
+BA:3,2
+BA:3,1
+BA:3,2
+BA:3,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeIN3ept7debtags3TagEEED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:98,_ZNSaISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2Ev
+FN:106,_ZNSaIN3ept7debtags3TagEED1Ev
+FN:104,_ZNSaIN3ept7debtags3TagEEC1ISt13_Rb_tree_nodeIS1_EEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:104,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:7
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:53
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:469,_ZNKSt9_IdentityIN3ept7debtags3TagEEclERKS2_
+FN:229,_ZNKSt4lessIN3ept7debtags3TagEEclERKS2_S5_
+DA:229,0
+DA:230,0
+DA:469,0
+DA:470,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:166,0
+DA:167,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEbEC1ERKS4_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIN3ept7debtags3TagEEbEC1ERKS4_RKb
+DA:88,0
+DA:89,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:336,_ZNKSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE4sizeEv
+FN:141,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EEC1Ev
+FN:93,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EED1Ev
+FN:378,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE6insertERKS2_
+DA:93,0
+DA:141,0
+DA:142,0
+DA:336,0
+DA:337,0
+DA:378,0
+DA:381,0
+DA:382,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:452,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEC1ERKSt17_Rb_tree_iteratorIS2_E
+FN:641,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE4sizeEv
+FN:398,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:463,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorIN3ept7debtags3TagEEC1EPSt13_Rb_tree_nodeIS2_E
+FN:596,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorIN3ept7debtags3TagEEeqERKS3_
+FN:347,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE21_M_get_Node_allocatorEv
+FN:415,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EE13_M_initializeEv
+FN:471,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_valueEPKSt13_Rb_tree_nodeIS2_E
+FN:475,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_S_keyEPKSt13_Rb_tree_nodeIS2_E
+FN:495,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:403,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EEC1Ev
+FN:351,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13get_allocatorEv
+FN:360,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:388,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:936,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E
+FN:584,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EED1Ev
+FN:195,_ZNSt17_Rb_tree_iteratorIN3ept7debtags3TagEEmmEv
+FN:356,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE14_M_create_nodeERKS2_
+FN:846,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE10_M_insert_EPKSt18_Rb_tree_node_baseSB_RKS2_
+FN:1133,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE16_M_insert_uniqueERKS2_
+DA:168,0
+DA:169,0
+DA:195,0
+DA:197,0
+DA:198,0
+DA:210,0
+DA:211,0
+DA:243,0
+DA:244,0
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:356,0
+DA:357,0
+DA:360,0
+DA:361,0
+DA:364,0
+DA:366,0
+DA:368,0
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,0
+DA:388,0
+DA:390,0
+DA:391,0
+DA:392,0
+DA:398,0
+DA:403,0
+DA:405,0
+DA:406,0
+DA:415,0
+DA:417,0
+DA:418,0
+DA:419,0
+DA:420,0
+DA:421,0
+DA:452,0
+DA:453,0
+DA:463,0
+DA:464,0
+DA:471,0
+DA:472,0
+DA:475,0
+DA:476,0
+DA:479,0
+DA:480,0
+DA:487,0
+DA:488,0
+DA:495,0
+DA:496,0
+DA:499,0
+DA:500,0
+DA:562,0
+DA:584,0
+DA:585,0
+DA:596,0
+DA:599,0
+DA:641,0
+DA:642,0
+DA:846,0
+DA:850,0
+DA:852,0
+DA:854,0
+DA:857,0
+DA:858,0
+DA:936,0
+DA:939,0
+DA:941,0
+DA:942,0
+DA:943,0
+DA:944,0
+DA:946,0
+DA:1133,0
+DA:1135,0
+DA:1136,0
+DA:1137,0
+DA:1138,0
+DA:1140,0
+DA:1141,0
+DA:1142,0
+DA:1144,0
+DA:1145,0
+DA:1147,0
+DA:1148,0
+DA:1150,0
+DA:1152,0
+DA:1153,0
+DA:1154,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:939,0
+BA:939,0
+BA:1138,0
+BA:1138,0
+BA:1142,0
+BA:1142,0
+BA:1145,0
+BA:1145,0
+BA:1147,0
+BA:1147,0
+BA:1152,0
+BA:1152,0
+LF:90
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:118,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEE7destroyEPS3_
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEED2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEE9constructEPS3_RKS3_
+FN:69,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE8max_sizeEv
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE10deallocateEPS5_j
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE8allocateEjPKv
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+DA:118,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+DA:105,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:195,_ZNSolsEj
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/expression.h
+FN:48,_ZN7tagcoll14ExpressionImpl3refEv
+FN:52,_ZN7tagcoll14ExpressionImpl5unrefEv
+FN:100,_ZN7tagcoll10ExpressionD1Ev
+FN:102,_ZN7tagcoll10ExpressionaSERKS0_
+DA:48,10
+DA:52,22
+DA:100,12
+DA:102,10
+DA:104,10
+DA:105,10
+DA:106,10
+DA:107,10
+DA:108,10
+DA:109,10
+BA:100,2
+BA:100,2
+BA:100,2
+BA:100,1
+BA:104,2
+BA:104,1
+BA:106,2
+BA:106,1
+BA:106,2
+BA:106,1
+BA:106,2
+BA:106,1
+BA:107,2
+BA:107,1
+LF:10
+LH:10
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.h
+DA:86,1
+BA:86,1
+BA:86,2
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt.h
+FN:139,_ZN3ept4core11AptDatabaseC1Ev
+FN:209,_ZN3ept4core11AptDatabase10invalidateEv
+FN:331,_ZN3ept4core11AptDatabaseD1Ev
+DA:139,0
+DA:140,0
+DA:141,0
+DA:142,0
+DA:143,0
+DA:144,0
+DA:145,0
+DA:146,0
+DA:209,0
+DA:210,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:218,0
+DA:219,0
+DA:220,0
+DA:331,0
+DA:332,0
+DA:333,0
+BA:210,0
+BA:210,0
+BA:214,0
+BA:214,0
+BA:216,0
+BA:216,0
+BA:218,0
+BA:218,0
+LF:21
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/path.h
+FN:76,_ZN3ept7debtags4Path24OverrideDebtagsSourceDirC1ERKSs
+FN:80,_ZN3ept7debtags4Path24OverrideDebtagsSourceDirD1Ev
+FN:86,_ZN3ept7debtags4Path23OverrideDebtagsIndexDirC1ERKSs
+FN:90,_ZN3ept7debtags4Path23OverrideDebtagsIndexDirD1Ev
+FN:96,_ZN3ept7debtags4Path28OverrideDebtagsUserSourceDirC1ERKSs
+FN:100,_ZN3ept7debtags4Path28OverrideDebtagsUserSourceDirD1Ev
+FN:106,_ZN3ept7debtags4Path27OverrideDebtagsUserIndexDirC1ERKSs
+FN:110,_ZN3ept7debtags4Path27OverrideDebtagsUserIndexDirD1Ev
+DA:76,31
+DA:78,31
+DA:79,31
+DA:80,31
+DA:86,31
+DA:88,31
+DA:89,31
+DA:90,31
+DA:96,31
+DA:98,31
+DA:99,31
+DA:100,31
+DA:106,31
+DA:108,31
+DA:109,31
+DA:110,31
+LF:16
+LH:16
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/vocabularymerger.h
+FN:41,_ZN3ept7debtags16VocabularyMerger12FacetIndexerC1ERS1_
+FN:51,_ZN3ept7debtags16VocabularyMerger10TagIndexerC1ERS1_
+FN:42,_ZN3ept7debtags16VocabularyMerger12FacetIndexerD1Ev
+FN:57,_ZN3ept7debtags16VocabularyMerger7TagDataD1Ev
+FN:68,_ZN3ept7debtags16VocabularyMerger9FacetDataD1Ev
+FN:90,_ZN3ept7debtags16VocabularyMergerC1Ev
+FN:52,_ZN3ept7debtags16VocabularyMerger10TagIndexerD1Ev
+FN:34,_ZN3ept7debtags16VocabularyMergerD1Ev
+DA:34,7
+DA:41,7
+DA:42,7
+DA:51,7
+DA:52,7
+DA:57,4980
+DA:68,248
+DA:90,7
+BA:42,1
+BA:42,2
+BA:52,1
+BA:52,2
+LF:8
+LH:8
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/tag.h
+FN:70,_ZN3ept7debtags5FacetD1Ev
+FN:72,_ZNK3ept7debtags5FaceteqERKS1_
+FN:74,_ZNK3ept7debtags5FacetltERKS1_
+FN:79,_ZNK3ept7debtags5FacetcvbEv
+FN:135,_ZNK3ept7debtags5Facet2idEv
+FN:174,_ZN3ept7debtags3TagC1Ev
+FN:175,_ZN3ept7debtags3TagD1Ev
+FN:177,_ZNK3ept7debtags3TageqERKS1_
+FN:178,_ZNK3ept7debtags3TagneERKS1_
+FN:179,_ZNK3ept7debtags3TagltERKS1_
+FN:181,_ZNK3ept7debtags3TagcvbEv
+FN:242,_ZNK3ept7debtags3Tag2idEv
+DA:70,265
+DA:72,29
+DA:74,600
+DA:79,0
+DA:135,58
+DA:174,2
+DA:175,2229812
+DA:177,1228
+DA:178,5
+DA:179,2300524
+DA:181,1
+DA:242,106853
+LF:12
+LH:11
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/vocabulary.h
+FN:64,_ZNK3ept7debtags10Vocabulary10FacetIndex4sizeEv
+FN:51,_ZNK3ept7debtags10Vocabulary10FacetIndex4itemEi
+FN:70,_ZNK3ept7debtags10Vocabulary10FacetIndex8firsttagEi
+FN:72,_ZNK3ept7debtags10Vocabulary10FacetIndex7lasttagEi
+FN:103,_ZNK3ept7debtags10Vocabulary8TagIndex4sizeEv
+FN:149,_ZNK3ept7debtags10Vocabulary7hasDataEv
+FN:208,_ZNK3ept7debtags10Vocabulary6facetsEv
+FN:219,_ZNK3ept7debtags10Vocabulary4tagsEv
+FN:230,_ZNK3ept7debtags10Vocabulary4tagsEi
+FN:165,_ZNK3ept7debtags10Vocabulary6hasTagERKSs
+FN:114,_ZNK3ept7debtags10Vocabulary8TagIndex2idERKSs
+FN:203,_ZNK3ept7debtags10Vocabulary9tagByNameERKSs
+FN:77,_ZNK3ept7debtags10Vocabulary10FacetIndex2idERKSs
+FN:198,_ZNK3ept7debtags10Vocabulary11facetByNameERKSs
+FN:238,_ZNK3ept7debtags10Vocabulary4tagsERKSs
+FN:157,_ZNK3ept7debtags10Vocabulary8hasFacetERKSs
+DA:51,2393
+DA:53,2393
+DA:54,2392
+DA:55,1
+DA:64,2501
+DA:70,91
+DA:72,2043
+DA:77,7
+DA:103,1327864
+DA:114,105755
+DA:149,1
+DA:157,2
+DA:159,2
+DA:165,622
+DA:167,622
+DA:198,4
+DA:203,105755
+DA:208,4
+DA:210,4
+DA:211,91
+DA:212,87
+DA:213,0
+DA:219,6
+DA:221,6
+DA:222,3106
+DA:223,3100
+DA:224,0
+DA:230,91
+DA:232,91
+DA:233,2044
+DA:234,1953
+DA:235,0
+DA:238,3
+DA:240,3
+BA:53,2
+BA:53,2
+BA:53,2
+BA:53,1
+BA:53,2
+BA:53,2
+BA:64,2
+BA:64,2
+BA:70,2
+BA:70,2
+BA:72,2
+BA:72,1
+BA:103,2
+BA:103,2
+BA:211,2
+BA:211,2
+BA:222,2
+BA:222,2
+BA:233,2
+BA:233,2
+BA:233,2
+BA:233,2
+BA:233,2
+BA:233,2
+LF:34
+LH:31
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/vocabulary.test.h
+FN:44,_ZN14TestVocabulary4tagsEv
+FN:46,_ZN14TestVocabulary2_1Ev
+FN:42,_ZN14TestVocabularyC1Ev
+FN:42,_ZN14TestVocabularyD1Ev
+FN:299,_ZN14TestVocabulary3_21Ev
+FN:259,_ZN14TestVocabulary3_19Ev
+FN:57,_ZN14TestVocabulary2_3Ev
+FN:63,_ZN14TestVocabulary2_4Ev
+FN:243,_ZN14TestVocabulary3_18Ev
+FN:231,_ZN14TestVocabulary3_17Ev
+FN:219,_ZN14TestVocabulary3_16Ev
+FN:168,_ZN14TestVocabulary3_13Ev
+FN:202,_ZN14TestVocabulary3_15Ev
+FN:185,_ZN14TestVocabulary3_14Ev
+FN:152,_ZN14TestVocabulary3_12Ev
+FN:137,_ZN14TestVocabulary3_11Ev
+FN:110,_ZN14TestVocabulary2_8Ev
+FN:103,_ZN14TestVocabulary2_7Ev
+FN:79,_ZN14TestVocabulary2_5Ev
+FN:51,_ZN14TestVocabulary2_2Ev
+FN:123,_ZN14TestVocabulary2_9Ev
+FN:94,_ZN14TestVocabulary2_6Ev
+DA:42,38
+DA:44,1298
+DA:46,1
+DA:48,1
+DA:49,1
+DA:51,1
+DA:53,1
+DA:54,2
+DA:55,1
+DA:57,1
+DA:59,1
+DA:60,2
+DA:61,1
+DA:63,1
+DA:65,1
+DA:66,2
+DA:67,2
+DA:68,2
+DA:69,2
+DA:70,2
+DA:71,2
+DA:72,2
+DA:73,2
+DA:74,2
+DA:75,2
+DA:76,2
+DA:77,1
+DA:79,1
+DA:81,1
+DA:82,2
+DA:83,2
+DA:84,1
+DA:85,2
+DA:86,2
+DA:87,2
+DA:88,2
+DA:89,2
+DA:90,2
+DA:91,2
+DA:92,1
+DA:94,1
+DA:96,1
+DA:97,2
+DA:98,2
+DA:99,1
+DA:100,1
+DA:101,1
+DA:103,1
+DA:105,1
+DA:106,2
+DA:107,2
+DA:108,1
+DA:110,1
+DA:112,1
+DA:113,1
+DA:115,1
+DA:116,0
+DA:117,2
+DA:118,1
+DA:120,1
+DA:121,1
+DA:123,1
+DA:125,1
+DA:126,2
+DA:127,1
+DA:129,1
+DA:137,1
+DA:140,1
+DA:142,30
+DA:145,29
+DA:146,58
+DA:147,58
+DA:148,58
+DA:149,1
+DA:150,1
+DA:152,1
+DA:155,1
+DA:157,1242
+DA:160,620
+DA:161,1240
+DA:162,1240
+DA:163,1240
+DA:164,1
+DA:165,1
+DA:168,1
+DA:170,1
+DA:172,1
+DA:173,2
+DA:174,1
+DA:175,2
+DA:176,2
+DA:178,2
+DA:179,2
+DA:180,1
+DA:181,2
+DA:182,2
+DA:183,1
+DA:185,1
+DA:188,1
+DA:190,30
+DA:193,29
+DA:194,29
+DA:195,29
+DA:196,29
+DA:197,29
+DA:198,29
+DA:199,1
+DA:200,1
+DA:202,1
+DA:205,1
+DA:207,621
+DA:210,620
+DA:211,620
+DA:212,620
+DA:213,620
+DA:214,620
+DA:215,620
+DA:216,1
+DA:217,1
+DA:219,1
+DA:222,1
+DA:223,1
+DA:224,30
+DA:226,29
+DA:228,1
+DA:229,1
+DA:231,1
+DA:234,1
+DA:235,1
+DA:236,621
+DA:238,620
+DA:240,1
+DA:241,1
+DA:243,1
+DA:246,1
+DA:247,1
+DA:248,1
+DA:249,1
+DA:250,1242
+DA:252,620
+DA:255,1
+DA:256,1
+DA:257,1
+DA:259,1
+DA:264,1
+DA:265,2
+DA:266,2
+DA:269,2
+DA:272,2
+DA:273,2
+DA:274,2
+DA:275,2
+DA:276,2
+DA:277,2
+DA:280,2
+DA:281,2
+DA:282,2
+DA:283,2
+DA:284,2
+DA:285,2
+DA:286,1
+DA:299,1
+DA:301,1
+DA:302,2
+DA:303,2
+DA:304,2
+DA:305,1
+DA:307,1
+DA:309,1
+DA:310,1
+DA:312,1
+DA:313,1
+DA:314,1
+BA:142,2
+BA:142,2
+BA:157,2
+BA:157,2
+BA:190,2
+BA:190,2
+BA:207,2
+BA:207,2
+BA:224,2
+BA:224,2
+BA:236,2
+BA:236,2
+BA:250,2
+BA:250,2
+LF:173
+LH:172
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/test.h
+FN:12,_ZN18AptTestEnvironmentC2Ev
+FN:10,_ZN18AptTestEnvironmentD2Ev
+FN:30,_ZN22DebtagsTestEnvironmentC2Ev
+FN:24,_ZN22DebtagsTestEnvironmentD2Ev
+DA:10,0
+DA:12,0
+DA:13,0
+DA:14,0
+DA:15,0
+DA:16,0
+DA:17,0
+DA:18,0
+DA:19,0
+DA:20,0
+DA:21,0
+DA:24,29
+DA:30,29
+DA:34,29
+DA:35,29
+LF:15
+LH:4
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationD1Ev
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:52,_ZlsIiER12AssertFailedS1_T_
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:41,_ZN12AssertFailedD1Ev
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:67,_Z12assert_eq_fnIiiEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsSsEv8LocationT_T0_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:67,_Z12assert_eq_fnIjjEv8LocationT_T0_
+FN:52,_ZlsIN3ept7debtags3TagEER12AssertFailedS4_T_
+FN:67,_Z12assert_eq_fnIN3ept7debtags3TagES2_Ev8LocationT_T0_
+FN:52,_ZlsIN3ept7debtags5FacetEER12AssertFailedS4_T_
+FN:67,_Z12assert_eq_fnIN3ept7debtags5FacetES2_Ev8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsPKcEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,649
+DA:69,649
+DA:70,0
+DA:71,0
+DA:75,649
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,1
+BA:69,2
+BA:69,1
+BA:69,2
+BA:69,0
+BA:69,0
+LF:26
+LH:3
+end_of_record
+SF:/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_vocabulary.cpp
+FN:21,_Z41__static_initialization_and_destruction_0ii
+FN:21,_GLOBAL__I_ept_test_generated__home_mornfall_dev_pkg_ept_work_ept_debtags_vocabulary.cpp
+FN:3,_Z17run_Vocabulary__1v
+FN:21,_Z18run_Vocabulary__21v
+FN:20,_Z18run_Vocabulary__19v
+FN:5,_Z17run_Vocabulary__3v
+FN:6,_Z17run_Vocabulary__4v
+FN:19,_Z18run_Vocabulary__18v
+FN:18,_Z18run_Vocabulary__17v
+FN:17,_Z18run_Vocabulary__16v
+FN:14,_Z18run_Vocabulary__13v
+FN:16,_Z18run_Vocabulary__15v
+FN:15,_Z18run_Vocabulary__14v
+FN:13,_Z18run_Vocabulary__12v
+FN:12,_Z18run_Vocabulary__11v
+FN:10,_Z17run_Vocabulary__8v
+FN:9,_Z17run_Vocabulary__7v
+FN:7,_Z17run_Vocabulary__5v
+FN:4,_Z17run_Vocabulary__2v
+FN:11,_Z17run_Vocabulary__9v
+FN:8,_Z17run_Vocabulary__6v
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,1
+DA:7,1
+DA:8,1
+DA:9,1
+DA:10,1
+DA:11,1
+DA:12,1
+DA:13,1
+DA:14,1
+DA:15,1
+DA:16,1
+DA:17,1
+DA:18,1
+DA:19,1
+DA:20,1
+DA:21,4
+BA:21,2
+BA:21,1
+BA:21,2
+BA:21,1
+LF:19
+LH:19
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeIN3ept7debtags5FacetEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeIN3ept7debtags3TagEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsSsEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeIiEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISsEED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeIN3ept7debtags5FacetEEEC2Ev
+FN:106,_ZNSaIN3ept7debtags5FacetEED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2Ev
+FN:106,_ZNSaIN3ept7debtags3TagEED1Ev
+FN:106,_ZNSaISt4pairIKSsSsEED1Ev
+FN:106,_ZNSaISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEEC2Ev
+FN:106,_ZNSaISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeIiEEC2Ev
+FN:106,_ZNSaIiED1Ev
+FN:104,_ZNSaISsEC1ISt13_Rb_tree_nodeISsEEERKSaIT_E
+FN:104,_ZNSaIN3ept7debtags5FacetEEC1ISt13_Rb_tree_nodeIS1_EEERKSaIT_E
+FN:104,_ZNSaIN3ept7debtags3TagEEC1ISt13_Rb_tree_nodeIS1_EEERKSaIT_E
+FN:104,_ZNSaISt4pairIKSsSsEEC1ISt13_Rb_tree_nodeIS1_EEERKSaIT_E
+FN:104,_ZNSaISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEC1ISt13_Rb_tree_nodeIS5_EEERKSaIT_E
+FN:104,_ZNSaISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEC1ISt13_Rb_tree_nodeIS5_EEERKSaIT_E
+FN:104,_ZNSaIiEC1ISt13_Rb_tree_nodeIiEEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,190461
+DA:100,0
+DA:101,0
+DA:104,7581586
+DA:106,8410437
+DA:118,0
+DA:119,0
+LF:7
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2162,0
+DA:2165,0
+DA:2188,0
+DA:2189,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:57
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:268,_ZNSt12__niter_baseISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEELb0EE3__bES4_
+FN:792,_ZNSt7__equalILb0EE5equalISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEES6_EEbT_S7_T0_
+FN:815,_ZSt11__equal_auxISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEES4_EbT_S5_T0_
+FN:944,_ZSt5equalISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEES4_EbT_S5_T0_
+DA:268,15
+DA:269,15
+DA:792,1
+DA:794,32
+DA:795,31
+DA:796,0
+DA:797,1
+DA:815,1
+DA:822,1
+DA:824,1
+DA:944,1
+DA:956,1
+BA:794,2
+BA:794,2
+BA:795,1
+BA:795,2
+LF:12
+LH:11
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:469,_ZNKSt9_IdentityIN3ept7debtags5FacetEEclERKS2_
+FN:229,_ZNKSt4lessIN3ept7debtags5FacetEEclERKS2_S5_
+FN:469,_ZNKSt9_IdentityIN3ept7debtags3TagEEclERKS2_
+FN:229,_ZNKSt4lessIN3ept7debtags3TagEEclERKS2_S5_
+FN:469,_ZNKSt9_IdentityIiEclERKi
+FN:229,_ZNKSt4lessIiEclERKiS2_
+DA:229,6110053
+DA:230,6110053
+DA:469,12219996
+DA:470,12219996
+LF:4
+LH:4
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:166,0
+DA:167,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_map.h
+FN:155,_ZNSt3mapISsN3ept7debtags16VocabularyMerger9FacetDataESt4lessISsESaISt4pairIKSsS3_EEEC1Ev
+FN:92,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEED2Ev
+FN:92,_ZNSt3mapISsN3ept7debtags16VocabularyMerger7TagDataESt4lessISsESaISt4pairIKSsS3_EEED1Ev
+FN:92,_ZNSt3mapISsN3ept7debtags16VocabularyMerger9FacetDataESt4lessISsESaISt4pairIKSsS3_EEED1Ev
+DA:92,5483
+DA:155,7
+DA:156,7
+LF:3
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorIN3ept7debtags5FacetEEbEC1ERKS4_RKb
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEbEC1ERKS4_RKb
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorIiEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIN3ept7debtags5FacetEEbEC1ERKS4_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIN3ept7debtags3TagEEbEC1ERKS4_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIiEbEC1ERKS1_RKb
+FN:73,_ZNSt4pairIKSsSsED1Ev
+FN:73,_ZNSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEED1Ev
+FN:73,_ZNSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEED1Ev
+DA:73,29075
+DA:88,2102733
+DA:89,2102733
+LF:3
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:331,_ZNKSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE5emptyEv
+FN:336,_ZNKSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE4sizeEv
+FN:336,_ZNKSt3setIN3ept7debtags5FacetESt4lessIS2_ESaIS2_EE4sizeEv
+FN:336,_ZNKSt3setIiSt4lessIiESaIiEE4sizeEv
+FN:336,_ZNKSt3setISsSt4lessISsESaISsEE4sizeEv
+FN:261,_ZNKSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE5beginEv
+FN:270,_ZNKSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE3endEv
+FN:261,_ZNKSt3setIN3ept7debtags5FacetESt4lessIS2_ESaIS2_EE5beginEv
+FN:270,_ZNKSt3setIN3ept7debtags5FacetESt4lessIS2_ESaIS2_EE3endEv
+FN:261,_ZNKSt3setISsSt4lessISsESaISsEE5beginEv
+FN:270,_ZNKSt3setISsSt4lessISsESaISsEE3endEv
+FN:507,_ZNKSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE4findERKS2_
+FN:141,_ZNSt3setIN3ept7debtags5FacetESt4lessIS2_ESaIS2_EEC1Ev
+FN:141,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EEC1Ev
+FN:141,_ZNSt3setIiSt4lessIiESaIiEEC1Ev
+FN:93,_ZNSt3setIN3ept7debtags5FacetESt4lessIS2_ESaIS2_EED1Ev
+FN:93,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EED1Ev
+FN:93,_ZNSt3setISsSt4lessISsESaISsEED1Ev
+FN:93,_ZNSt3setIiSt4lessIiESaIiEED1Ev
+FN:378,_ZNSt3setIN3ept7debtags5FacetESt4lessIS2_ESaIS2_EE6insertERKS2_
+FN:378,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE6insertERKS2_
+FN:378,_ZNSt3setIiSt4lessIiESaIiEE6insertERKi
+FN:596,_ZSteqIN3ept7debtags3TagESt4lessIS2_ESaIS2_EEbRKSt3setIT_T0_T1_ESC_
+DA:93,816726
+DA:141,190454
+DA:142,190454
+DA:261,45
+DA:262,45
+DA:270,3195
+DA:271,3195
+DA:331,42304
+DA:332,42304
+DA:336,84615
+DA:337,84615
+DA:378,998521
+DA:381,998521
+DA:382,998521
+DA:507,14
+DA:508,14
+DA:596,1
+DA:597,1
+LF:18
+LH:18
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:289,_ZNKSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEneERKS3_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEptEv
+FN:247,_ZNKSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEdeEv
+FN:289,_ZNKSt23_Rb_tree_const_iteratorIN3ept7debtags5FacetEEneERKS3_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorIN3ept7debtags5FacetEEptEv
+FN:247,_ZNKSt23_Rb_tree_const_iteratorIN3ept7debtags5FacetEEdeEv
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISsEneERKS0_
+FN:247,_ZNKSt23_Rb_tree_const_iteratorISsEdeEv
+FN:452,_ZNSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags5FacetEEC1ERKSt17_Rb_tree_iteratorIS2_E
+FN:452,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEC1ERKSt17_Rb_tree_iteratorIS2_E
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorIiEC1ERKSt17_Rb_tree_iteratorIiE
+FN:452,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:637,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5emptyEv
+FN:641,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE4sizeEv
+FN:285,_ZNKSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEeqERKS3_
+FN:641,_ZNKSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE4sizeEv
+FN:641,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE4sizeEv
+FN:641,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE4sizeEv
+FN:398,_ZNSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:463,_ZNSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorIN3ept7debtags5FacetEEC1EPSt13_Rb_tree_nodeIS2_E
+FN:596,_ZNSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorIN3ept7debtags5FacetEEeqERKS3_
+FN:347,_ZNKSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE21_M_get_Node_allocatorEv
+FN:398,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:463,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorIN3ept7debtags3TagEEC1EPSt13_Rb_tree_nodeIS2_E
+FN:596,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorIN3ept7debtags3TagEEeqERKS3_
+FN:347,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE21_M_get_Node_allocatorEv
+FN:456,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_beginEv
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE13_Rb_tree_implIS6_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:398,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_S_leftEPSt18_Rb_tree_node_base
+FN:347,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE21_M_get_Node_allocatorEv
+FN:463,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorIiEC1EPSt13_Rb_tree_nodeIiE
+FN:596,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorIiEeqERKS0_
+FN:398,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPSt18_Rb_tree_node_base
+FN:347,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE21_M_get_Node_allocatorEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEC1EPKSt13_Rb_tree_nodeIS2_E
+FN:603,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5beginEv
+FN:614,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE3endEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags5FacetEEC1EPKSt13_Rb_tree_nodeIS2_E
+FN:603,_ZNKSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5beginEv
+FN:614,_ZNKSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE3endEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorISsEC1EPKSt13_Rb_tree_nodeISsE
+FN:603,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:614,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE3endEv
+FN:415,_ZNSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EE13_M_initializeEv
+FN:471,_ZNSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_valueEPKSt13_Rb_tree_nodeIS2_E
+FN:475,_ZNSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_S_keyEPKSt13_Rb_tree_nodeIS2_E
+FN:495,_ZNSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:415,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EE13_M_initializeEv
+FN:471,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_valueEPKSt13_Rb_tree_nodeIS2_E
+FN:475,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_S_keyEPKSt13_Rb_tree_nodeIS2_E
+FN:495,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:491,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_rightEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_S_leftEPKSt18_Rb_tree_node_base
+FN:415,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EE13_M_initializeEv
+FN:415,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:471,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_valueEPKSt13_Rb_tree_nodeIiE
+FN:475,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_S_keyEPKSt13_Rb_tree_nodeIiE
+FN:495,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_S_keyEPKSt18_Rb_tree_node_base
+FN:467,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_M_endEv
+FN:970,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE14_M_lower_boundEPKSt13_Rb_tree_nodeIS2_ESC_RKS2_
+FN:1403,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE4findERKS2_
+FN:403,_ZNSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EEC1Ev
+FN:403,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EEC1Ev
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE21_M_get_Node_allocatorEv
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE21_M_get_Node_allocatorEv
+FN:403,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EEC1Ev
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE21_M_get_Node_allocatorEv
+FN:403,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEEC1Ev
+FN:351,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13get_allocatorEv
+FN:360,_ZNSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:388,_ZNSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:936,_ZNSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E
+FN:584,_ZNSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EED1Ev
+FN:360,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:388,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:936,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E
+FN:584,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EED1Ev
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EED1Ev
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_eraseEPSt13_Rb_tree_nodeIS6_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EED1Ev
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_eraseEPSt13_Rb_tree_nodeIS6_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EED1Ev
+FN:360,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_put_nodeEPSt13_Rb_tree_nodeISsE
+FN:388,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE15_M_destroy_nodeEPSt13_Rb_tree_nodeISsE
+FN:936,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_eraseEPSt13_Rb_tree_nodeISsE
+FN:584,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEED1Ev
+FN:360,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_put_nodeEPSt13_Rb_tree_nodeIiE
+FN:388,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE15_M_destroy_nodeEPSt13_Rb_tree_nodeIiE
+FN:936,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_eraseEPSt13_Rb_tree_nodeIiE
+FN:584,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEED1Ev
+FN:195,_ZNSt17_Rb_tree_iteratorIN3ept7debtags5FacetEEmmEv
+FN:195,_ZNSt17_Rb_tree_iteratorIN3ept7debtags3TagEEmmEv
+FN:195,_ZNSt17_Rb_tree_iteratorIiEmmEv
+FN:356,_ZNSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE14_M_create_nodeERKS2_
+FN:846,_ZNSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE10_M_insert_EPKSt18_Rb_tree_node_baseSB_RKS2_
+FN:1133,_ZNSt8_Rb_treeIN3ept7debtags5FacetES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE16_M_insert_uniqueERKS2_
+FN:356,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE14_M_create_nodeERKS2_
+FN:846,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE10_M_insert_EPKSt18_Rb_tree_node_baseSB_RKS2_
+FN:1133,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE16_M_insert_uniqueERKS2_
+FN:356,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE14_M_create_nodeERKi
+FN:846,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_M_insert_EPKSt18_Rb_tree_node_baseS8_RKi
+FN:1133,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE16_M_insert_uniqueERKi
+FN:255,_ZNSt23_Rb_tree_const_iteratorISsEppEv
+FN:262,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEppEi
+FN:262,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags5FacetEEppEi
+FN:255,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEppEv
+FN:745,_ZSteqIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EEbRKSt8_Rb_treeIT_T0_T1_T2_T3_ESG_
+DA:168,2941744
+DA:169,2941744
+DA:195,1434
+DA:197,1434
+DA:198,1434
+DA:210,298046
+DA:211,298046
+DA:240,3274
+DA:241,3274
+DA:243,998550
+DA:244,998550
+DA:247,2946
+DA:248,2946
+DA:251,6541
+DA:252,6541
+DA:255,693
+DA:257,693
+DA:258,693
+DA:262,1978
+DA:264,1978
+DA:265,1978
+DA:285,588
+DA:286,588
+DA:289,2660
+DA:290,2660
+DA:347,8111524
+DA:348,8111524
+DA:351,7581586
+DA:352,7581586
+DA:356,3772960
+DA:357,3772960
+DA:360,3790793
+DA:361,3790793
+DA:364,3772960
+DA:366,3772960
+DA:368,3772960
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,3772960
+DA:388,3790793
+DA:390,3790793
+DA:391,3790793
+DA:392,3790793
+DA:398,828851
+DA:403,190461
+DA:405,190461
+DA:406,190461
+DA:415,710989
+DA:417,710989
+DA:418,710989
+DA:419,710989
+DA:420,710989
+DA:421,710989
+DA:452,1958668
+DA:453,1958668
+DA:456,169101
+DA:459,169101
+DA:463,3661299
+DA:464,3661299
+DA:467,14
+DA:468,14
+DA:471,3624270
+DA:472,3624270
+DA:475,3624270
+DA:476,3624270
+DA:479,3809086
+DA:480,3809086
+DA:483,844857
+DA:484,844857
+DA:487,7438537
+DA:488,7438537
+DA:491,377041
+DA:492,377041
+DA:495,2485769
+DA:496,2485769
+DA:499,2485769
+DA:500,2485769
+DA:562,190461
+DA:584,828851
+DA:585,828851
+DA:596,298040
+DA:599,298040
+DA:603,47
+DA:606,47
+DA:614,3213
+DA:617,3213
+DA:637,42304
+DA:638,42304
+DA:641,583306
+DA:642,583306
+DA:745,1
+DA:748,1
+DA:846,1539476
+DA:850,1539476
+DA:852,1539476
+DA:854,1539476
+DA:857,1539476
+DA:858,1539476
+DA:936,4622783
+DA:939,13036233
+DA:941,3790667
+DA:942,3790667
+DA:943,3790667
+DA:944,3790667
+DA:946,4622783
+DA:970,14
+DA:972,89
+DA:973,61
+DA:974,33
+DA:976,28
+DA:977,14
+DA:1133,1104212
+DA:1135,1104212
+DA:1136,1104212
+DA:1137,1104212
+DA:1138,5832628
+DA:1140,3624204
+DA:1141,3624204
+DA:1142,3624204
+DA:1144,1104212
+DA:1145,1104212
+DA:1147,298036
+DA:1148,296602
+DA:1150,1434
+DA:1152,807610
+DA:1153,807608
+DA:1154,2
+DA:1403,14
+DA:1405,14
+DA:1408,14
+BA:748,2
+BA:748,1
+BA:748,2
+BA:748,1
+BA:850,2
+BA:850,1
+BA:850,2
+BA:850,2
+BA:850,1
+BA:850,2
+BA:850,2
+BA:850,1
+BA:850,2
+BA:850,2
+BA:850,1
+BA:850,2
+BA:850,2
+BA:850,1
+BA:850,2
+BA:850,2
+BA:850,2
+BA:850,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:939,0
+BA:939,0
+BA:939,2
+BA:939,2
+BA:972,2
+BA:972,2
+BA:973,2
+BA:973,2
+BA:1138,2
+BA:1138,2
+BA:1138,2
+BA:1138,2
+BA:1138,2
+BA:1138,2
+BA:1142,1
+BA:1142,2
+BA:1142,1
+BA:1142,2
+BA:1142,2
+BA:1142,2
+BA:1145,2
+BA:1145,2
+BA:1145,2
+BA:1145,2
+BA:1145,2
+BA:1145,2
+BA:1147,2
+BA:1147,1
+BA:1147,2
+BA:1147,1
+BA:1147,2
+BA:1147,2
+BA:1152,2
+BA:1152,1
+BA:1152,2
+BA:1152,1
+BA:1152,2
+BA:1152,2
+BA:1408,2
+BA:1408,1
+BA:1408,2
+BA:1408,2
+LF:131
+LH:128
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags5FacetEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSsEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:118,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags5FacetEE7destroyEPS3_
+FN:118,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEE7destroyEPS3_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:118,_ZN9__gnu_cxx13new_allocatorIiE7destroyEPi
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags5FacetEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags5FacetEED2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags5FacetEE9constructEPS3_RKS3_
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEED2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEE9constructEPS3_RKS3_
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSsEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIiED2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorIiE9constructEPiRKi
+FN:69,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags5FacetEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSsEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIiEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags5FacetEEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE8max_sizeEv
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSsEE7destroyEPS3_
+FN:118,_ZN9__gnu_cxx13new_allocatorISsE7destroyEPSs
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags5FacetEEE10deallocateEPS5_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE10deallocateEPS5_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEE10deallocateEPS9_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSsEEE10deallocateEPS5_j
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEE7destroyEPS7_
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEE7destroyEPS7_
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEE10deallocateEPS9_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE10deallocateEPS2_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE10deallocateEPS2_j
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags5FacetEEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE8allocateEjPKv
+DA:69,7772047
+DA:71,0
+DA:76,8410437
+DA:87,3772960
+DA:89,3772960
+DA:90,0
+DA:92,3772960
+DA:97,3790793
+DA:98,3790793
+DA:101,3772960
+DA:102,3772960
+DA:107,3772960
+DA:108,3772960
+DA:118,3790793
+BA:89,1
+BA:89,2
+BA:89,1
+BA:89,2
+BA:89,1
+BA:89,2
+BA:108,2
+BA:108,1
+BA:108,2
+BA:108,1
+BA:108,2
+BA:108,1
+LF:14
+LH:12
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+DA:105,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:195,_ZNSolsEj
+FN:177,_ZNSolsEb
+DA:95,0
+DA:112,0
+DA:117,0
+DA:177,0
+DA:178,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/diskindex/mmap.h
+FN:89,_ZN7tagcoll9diskindex11MMapIndexerC2Ev
+FN:91,_ZN7tagcoll9diskindex11MMapIndexerD0Ev
+FN:91,_ZN7tagcoll9diskindex11MMapIndexerD1Ev
+FN:91,_ZN7tagcoll9diskindex11MMapIndexerD2Ev
+DA:89,20
+DA:91,20
+BA:91,0
+BA:91,0
+BA:91,0
+BA:91,0
+BA:91,1
+BA:91,2
+LF:2
+LH:2
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/utils/set.h
+FN:79,_ZN7tagcoll5utils12set_containsIN3ept7debtags3TagEEEbRKSt3setIT_St4lessIS6_ESaIS6_EERKS6_
+FN:63,_ZN7tagcoll5utils12set_containsIN3ept7debtags3TagEEEbRKSt3setIT_St4lessIS6_ESaIS6_EESC_
+DA:63,1
+DA:65,1
+DA:67,574
+DA:68,574
+DA:69,1
+DA:70,573
+DA:71,31
+DA:72,542
+DA:73,0
+DA:75,0
+DA:79,4
+DA:81,4
+BA:67,2
+BA:67,1
+BA:68,2
+BA:68,2
+BA:70,2
+BA:70,2
+BA:72,1
+BA:72,2
+LF:12
+LH:10
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/apt/apt.test.h
+FN:28,_ZN7TestAptC1Ev
+FN:180,_ZN7TestApt12checkUpdatesEv
+FN:66,_ZN7TestApt8validityEv
+FN:28,_ZN7TestAptD1Ev
+FN:173,_ZN7TestApt18stlRecordIterationEv
+FN:166,_ZN7TestApt12stlIterationEv
+FN:32,_ZN7TestApt9iteratorsEv
+FN:152,_ZN7TestApt16recordIteration2Ev
+FN:138,_ZN7TestApt15recordIterationEv
+FN:127,_ZN7TestApt5stateEv
+FN:97,_ZN7TestApt15versionValidityEv
+FN:110,_ZN7TestApt9rawRecordEv
+FN:73,_ZN7TestApt8versionsEv
+FN:59,_ZN7TestApt9timestampEv
+FN:45,_ZN7TestApt9aptExistsEv
+DA:28,26
+DA:32,1
+DA:34,1
+DA:35,1
+DA:37,1
+DA:38,1789
+DA:39,1788
+DA:41,1
+DA:42,1
+DA:45,1
+DA:47,1
+DA:49,1
+DA:51,1
+DA:55,2
+DA:56,1
+DA:59,1
+DA:61,1
+DA:62,1
+DA:63,1
+DA:66,1
+DA:68,1
+DA:69,2
+DA:70,1
+DA:73,1
+DA:75,1
+DA:76,1
+DA:77,1
+DA:79,2
+DA:80,1
+DA:82,2
+DA:83,1
+DA:85,2
+DA:86,2
+DA:87,1
+DA:89,2
+DA:90,1
+DA:92,2
+DA:93,1
+DA:94,1
+DA:97,1
+DA:99,1
+DA:100,2
+DA:102,1
+DA:103,2
+DA:105,1
+DA:106,2
+DA:107,1
+DA:110,1
+DA:112,1
+DA:113,1
+DA:114,1
+DA:116,1
+DA:117,1
+DA:118,2
+DA:120,2
+DA:121,2
+DA:123,1
+DA:124,1
+DA:127,1
+DA:129,1
+DA:130,2
+DA:131,2
+DA:133,2
+DA:134,2
+DA:135,1
+DA:138,1
+DA:140,1
+DA:141,435
+DA:144,434
+DA:145,434
+DA:146,434
+DA:147,1
+DA:148,2
+DA:149,1
+DA:152,1
+DA:154,1
+DA:155,435
+DA:158,434
+DA:159,868
+DA:160,434
+DA:161,1
+DA:162,2
+DA:163,1
+DA:166,1
+DA:168,1
+DA:169,1
+DA:170,1
+DA:173,1
+DA:175,1
+DA:176,1
+DA:177,1
+DA:180,1
+DA:182,1
+DA:183,1
+DA:184,2
+DA:185,1
+DA:186,1
+DA:187,2
+DA:188,1
+BA:38,2
+BA:38,2
+BA:141,2
+BA:141,2
+BA:155,2
+BA:155,2
+LF:99
+LH:99
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/apt/version.h
+FN:77,_ZNK3ept3apt7Version7isValidEv
+FN:41,_ZN3ept3apt7VersionD1Ev
+FN:55,_ZN3ept3apt7VersionC1ERKSsS3_
+FN:41,_ZN3ept3apt7VersionaSERKS1_
+FN:82,_ZNK3ept3apt7VersioneqERKS1_
+DA:41,0
+DA:55,0
+DA:56,0
+DA:77,0
+DA:82,0
+BA:77,0
+BA:77,0
+BA:77,0
+BA:77,0
+BA:82,0
+BA:82,0
+BA:82,0
+BA:82,0
+LF:5
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.h
+DA:86,1
+BA:86,1
+BA:86,2
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt.h
+FN:79,_ZNK3ept4core12PackageState7isValidEv
+FN:97,_ZNK3ept4core12PackageState9installedEv
+FN:81,_ZNK3ept4core12PackageState11isInstalledEv
+FN:139,_ZN3ept4core11AptDatabaseC1Ev
+FN:209,_ZN3ept4core11AptDatabase10invalidateEv
+FN:331,_ZN3ept4core11AptDatabaseD1Ev
+DA:79,2
+DA:81,1
+DA:97,1
+DA:139,0
+DA:140,0
+DA:141,0
+DA:142,0
+DA:143,0
+DA:144,0
+DA:145,0
+DA:146,0
+DA:209,0
+DA:210,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:218,0
+DA:219,0
+DA:220,0
+DA:331,0
+DA:332,0
+DA:333,0
+BA:210,0
+BA:210,0
+BA:214,0
+BA:214,0
+BA:216,0
+BA:216,0
+BA:218,0
+BA:218,0
+LF:24
+LH:3
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/test.h
+FN:12,_ZN18AptTestEnvironmentC2Ev
+FN:10,_ZN18AptTestEnvironmentD2Ev
+DA:10,0
+DA:12,0
+DA:13,0
+DA:14,0
+DA:15,0
+DA:16,0
+DA:17,0
+DA:18,0
+DA:19,0
+DA:20,0
+DA:21,0
+LF:11
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationD1Ev
+FN:17,_ZN8LocationC1EPKciSs
+FN:13,_ZN8LocationC1ERKS_
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:41,_ZN12AssertFailedD1Ev
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:67,_Z12assert_eq_fnISsSsEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsPKcEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:75,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+LF:26
+LH:0
+end_of_record
+SF:/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_apt.cpp
+FN:15,_Z41__static_initialization_and_destruction_0ii
+FN:15,_GLOBAL__I_ept_test_generated__home_mornfall_dev_pkg_ept_work_ept_apt_apt.cpp
+FN:15,_Z20run_Apt_checkUpdatesv
+FN:6,_Z16run_Apt_validityv
+FN:14,_Z26run_Apt_stlRecordIterationv
+FN:13,_Z20run_Apt_stlIterationv
+FN:3,_Z17run_Apt_iteratorsv
+FN:12,_Z24run_Apt_recordIteration2v
+FN:11,_Z23run_Apt_recordIterationv
+FN:10,_Z13run_Apt_statev
+FN:8,_Z23run_Apt_versionValidityv
+FN:9,_Z17run_Apt_rawRecordv
+FN:7,_Z16run_Apt_versionsv
+FN:5,_Z17run_Apt_timestampv
+FN:4,_Z17run_Apt_aptExistsv
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,1
+DA:7,1
+DA:8,1
+DA:9,1
+DA:10,1
+DA:11,1
+DA:12,1
+DA:13,1
+DA:14,1
+DA:15,4
+BA:15,2
+BA:15,1
+BA:15,2
+BA:15,1
+LF:13
+LH:13
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISsEED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:106,_ZNSaISsED1Ev
+FN:98,_ZNSaISsEC2Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISsEEC2Ev
+FN:104,_ZNSaISsEC1ISt13_Rb_tree_nodeISsEEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:104,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:7
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:392,_ZNSs10_S_compareEjj
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:1941,_ZNKSs7compareERKSs
+FN:2238,_ZStltIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:1593,_ZNKSs4findEPKcj
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:686,0
+DA:687,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1593,0
+DA:1596,0
+DA:1923,0
+DA:1925,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2162,0
+DA:2165,0
+DA:2188,0
+DA:2189,0
+DA:2238,0
+DA:2239,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:308,0
+BA:308,0
+BA:341,0
+BA:341,0
+BA:1948,0
+BA:1948,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:78
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:188,_ZSt3minIjERKT_S2_S2_
+FN:268,_ZNSt12__niter_baseISt15insert_iteratorISt3setISsSt4lessISsESaISsEEELb0EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:286,_ZNSt12__miter_baseIN3ept3apt3Apt14RecordIteratorELb0EE3__bES3_
+FN:268,_ZNSt12__niter_baseIN3ept3apt3Apt14RecordIteratorELb0EE3__bES3_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt18input_iterator_tagE8__copy_mIN3ept3apt3Apt14RecordIteratorESt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SD_SC_
+FN:385,_ZSt13__copy_move_aILb0EN3ept3apt3Apt14RecordIteratorESt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_SA_S9_
+FN:430,_ZSt14__copy_move_a2ILb0EN3ept3apt3Apt14RecordIteratorESt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_SA_S9_
+FN:456,_ZSt4copyIN3ept3apt3Apt14RecordIteratorESt20back_insert_iteratorISt6vectorISsSaISsEEEET0_T_SA_S9_
+FN:286,_ZNSt12__miter_baseIN3ept3apt3Apt8IteratorELb0EE3__bES3_
+FN:268,_ZNSt12__niter_baseIN3ept3apt3Apt8IteratorELb0EE3__bES3_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt18input_iterator_tagE8__copy_mIN3ept3apt3Apt8IteratorESt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SD_SC_
+FN:385,_ZSt13__copy_move_aILb0EN3ept3apt3Apt8IteratorESt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_SA_S9_
+FN:430,_ZSt14__copy_move_a2ILb0EN3ept3apt3Apt8IteratorESt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_SA_S9_
+FN:456,_ZSt4copyIN3ept3apt3Apt8IteratorESt20back_insert_iteratorISt6vectorISsSaISsEEEET0_T_SA_S9_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt18input_iterator_tagE8__copy_mIN3ept3apt3Apt8IteratorESt15insert_iteratorISt3setISsSt4lessISsESaISsEEEEET0_T_SF_SE_
+FN:385,_ZSt13__copy_move_aILb0EN3ept3apt3Apt8IteratorESt15insert_iteratorISt3setISsSt4lessISsESaISsEEEET1_T0_SC_SB_
+FN:430,_ZSt14__copy_move_a2ILb0EN3ept3apt3Apt8IteratorESt15insert_iteratorISt3setISsSt4lessISsESaISsEEEET1_T0_SC_SB_
+FN:456,_ZSt4copyIN3ept3apt3Apt8IteratorESt15insert_iteratorISt3setISsSt4lessISsESaISsEEEET0_T_SC_SB_
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,6
+DA:269,6
+DA:286,6
+DA:287,6
+DA:309,3
+DA:311,8026
+DA:312,4010
+DA:313,3
+DA:385,3
+DA:393,3
+DA:396,3
+DA:430,3
+DA:435,3
+DA:456,3
+DA:466,3
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:193,0
+BA:193,0
+BA:215,0
+BA:215,0
+BA:311,2
+BA:311,2
+BA:311,2
+BA:311,2
+BA:311,2
+BA:311,2
+BA:542,0
+BA:542,0
+LF:34
+LH:15
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:469,_ZNKSt9_IdentityISsEclERKSs
+FN:229,_ZNKSt4lessISsEclERKSsS2_
+DA:229,0
+DA:230,0
+DA:469,0
+DA:470,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:572,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEC1ERS4_St23_Rb_tree_const_iteratorISsE
+FN:645,_ZSt8inserterISt3setISsSt4lessISsESaISsEESt23_Rb_tree_const_iteratorISsEESt15insert_iteratorIT_ERS8_T0_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:623,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEppEv
+FN:618,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+FN:599,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEaSERKSs
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:572,0
+DA:573,0
+DA:599,0
+DA:601,0
+DA:602,0
+DA:603,0
+DA:618,0
+DA:619,0
+DA:623,0
+DA:624,0
+DA:645,0
+DA:648,0
+DA:683,0
+DA:695,0
+DA:696,0
+DA:747,0
+DA:748,0
+LF:27
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorISsEbEC1ERKS1_RKb
+DA:88,0
+DA:89,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:261,_ZNKSt3setISsSt4lessISsESaISsEE5beginEv
+FN:270,_ZNKSt3setISsSt4lessISsESaISsEE3endEv
+FN:141,_ZNSt3setISsSt4lessISsESaISsEEC1Ev
+FN:93,_ZNSt3setISsSt4lessISsESaISsEED1Ev
+FN:503,_ZNSt3setISsSt4lessISsESaISsEE4findERKSs
+FN:405,_ZNSt3setISsSt4lessISsESaISsEE6insertESt23_Rb_tree_const_iteratorISsERKSs
+DA:93,0
+DA:141,0
+DA:142,0
+DA:261,0
+DA:262,0
+DA:270,0
+DA:271,0
+DA:405,0
+DA:406,0
+DA:503,0
+DA:504,0
+LF:11
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISsEneERKS0_
+FN:285,_ZNKSt23_Rb_tree_const_iteratorISsEeqERKS0_
+FN:452,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorISsEC1ERKSt17_Rb_tree_iteratorISsE
+FN:398,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPSt18_Rb_tree_node_base
+FN:240,_ZNSt23_Rb_tree_const_iteratorISsEC1EPKSt13_Rb_tree_nodeISsE
+FN:603,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:614,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE3endEv
+FN:463,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_M_endEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISsEeqERKS0_
+FN:415,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:168,_ZNSt17_Rb_tree_iteratorISsEC1EPSt13_Rb_tree_nodeISsE
+FN:610,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE3endEv
+FN:495,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt18_Rb_tree_node_base
+FN:403,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEC1Ev
+FN:347,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE21_M_get_Node_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13get_allocatorEv
+FN:471,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt13_Rb_tree_nodeISsE
+FN:475,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt13_Rb_tree_nodeISsE
+FN:444,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE12_M_rightmostEv
+FN:641,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE4sizeEv
+FN:436,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_leftmostEv
+FN:491,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPKSt18_Rb_tree_node_base
+FN:596,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:360,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_put_nodeEPSt13_Rb_tree_nodeISsE
+FN:388,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE15_M_destroy_nodeEPSt13_Rb_tree_nodeISsE
+FN:936,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_eraseEPSt13_Rb_tree_nodeISsE
+FN:584,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEED1Ev
+FN:954,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE14_M_lower_boundEPSt13_Rb_tree_nodeISsES8_RKSs
+FN:1390,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE4findERKSs
+FN:356,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE14_M_create_nodeERKSs
+FN:270,_ZNSt23_Rb_tree_const_iteratorISsEmmEv
+FN:846,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_M_insert_EPKSt18_Rb_tree_node_baseS8_RKSs
+FN:195,_ZNSt17_Rb_tree_iteratorISsEmmEv
+FN:1133,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE16_M_insert_uniqueERKSs
+FN:255,_ZNSt23_Rb_tree_const_iteratorISsEppEv
+FN:1178,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE17_M_insert_unique_ESt23_Rb_tree_const_iteratorISsERKSs
+DA:168,0
+DA:169,0
+DA:195,0
+DA:197,0
+DA:198,0
+DA:210,0
+DA:211,0
+DA:240,0
+DA:241,0
+DA:243,0
+DA:244,0
+DA:255,0
+DA:257,0
+DA:258,0
+DA:270,0
+DA:272,0
+DA:273,0
+DA:285,0
+DA:286,0
+DA:289,0
+DA:290,0
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:356,0
+DA:357,0
+DA:360,0
+DA:361,0
+DA:364,0
+DA:366,0
+DA:368,0
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,0
+DA:388,0
+DA:390,0
+DA:391,0
+DA:392,0
+DA:398,0
+DA:403,0
+DA:405,0
+DA:406,0
+DA:415,0
+DA:417,0
+DA:418,0
+DA:419,0
+DA:420,0
+DA:421,0
+DA:436,0
+DA:437,0
+DA:444,0
+DA:445,0
+DA:452,0
+DA:453,0
+DA:463,0
+DA:464,0
+DA:471,0
+DA:472,0
+DA:475,0
+DA:476,0
+DA:479,0
+DA:480,0
+DA:487,0
+DA:488,0
+DA:491,0
+DA:492,0
+DA:495,0
+DA:496,0
+DA:499,0
+DA:500,0
+DA:562,0
+DA:584,0
+DA:585,0
+DA:596,0
+DA:599,0
+DA:603,0
+DA:606,0
+DA:610,0
+DA:611,0
+DA:614,0
+DA:617,0
+DA:641,0
+DA:642,0
+DA:846,0
+DA:850,0
+DA:852,0
+DA:854,0
+DA:857,0
+DA:858,0
+DA:936,0
+DA:939,0
+DA:941,0
+DA:942,0
+DA:943,0
+DA:944,0
+DA:946,0
+DA:954,0
+DA:956,0
+DA:957,0
+DA:958,0
+DA:960,0
+DA:961,0
+DA:1133,0
+DA:1135,0
+DA:1136,0
+DA:1137,0
+DA:1138,0
+DA:1140,0
+DA:1141,0
+DA:1142,0
+DA:1144,0
+DA:1145,0
+DA:1147,0
+DA:1148,0
+DA:1150,0
+DA:1152,0
+DA:1153,0
+DA:1154,0
+DA:1178,0
+DA:1181,0
+DA:1183,0
+DA:1186,0
+DA:1188,0
+DA:1190,0
+DA:1194,0
+DA:1195,0
+DA:1196,0
+DA:1197,0
+DA:1200,0
+DA:1201,0
+DA:1204,0
+DA:1207,0
+DA:1209,0
+DA:1213,0
+DA:1214,0
+DA:1215,0
+DA:1216,0
+DA:1219,0
+DA:1220,0
+DA:1222,0
+DA:1225,0
+DA:1230,0
+DA:1390,0
+DA:1392,0
+DA:1395,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:939,0
+BA:939,0
+BA:956,0
+BA:956,0
+BA:957,0
+BA:957,0
+BA:1138,0
+BA:1138,0
+BA:1142,0
+BA:1142,0
+BA:1145,0
+BA:1145,0
+BA:1147,0
+BA:1147,0
+BA:1152,0
+BA:1152,0
+BA:1181,0
+BA:1181,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1190,0
+BA:1190,0
+BA:1195,0
+BA:1195,0
+BA:1197,0
+BA:1197,0
+BA:1200,0
+BA:1200,0
+BA:1209,0
+BA:1209,0
+BA:1214,0
+BA:1214,0
+BA:1216,0
+BA:1216,0
+BA:1219,0
+BA:1219,0
+BA:1395,0
+BA:1395,0
+BA:1395,0
+BA:1395,0
+LF:147
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:395,0
+DA:396,0
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:41
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:286,0
+BA:286,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8max_sizeEv
+FN:118,_ZN9__gnu_cxx13new_allocatorISsE7destroyEPSs
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE10deallocateEPS2_j
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8allocateEjPKv
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+DA:118,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:395,_ZN6wibble9exception6SystemD1Ev
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+DA:137,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:395,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:395,0
+BA:395,0
+LF:21
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/pipe.h
+FN:42,_ZN6wibble3sys4Pipe3eofEv
+FN:32,_ZN6wibble3sys4PipeC1Ev
+FN:19,_ZN6wibble3sys4PipeD1Ev
+FN:25,_ZN6wibble3sys4PipeC1Ei
+FN:19,_ZN6wibble3sys4PipeaSERKS1_
+FN:46,_ZN6wibble3sys4Pipe8readMoreEv
+FN:60,_ZN6wibble3sys4Pipe8nextLineEv
+FN:75,_ZN6wibble3sys4Pipe16nextLineBlockingEv
+DA:19,4
+DA:25,2
+DA:27,2
+DA:28,0
+DA:29,2
+DA:30,0
+DA:31,0
+DA:32,2
+DA:42,923
+DA:43,923
+DA:46,638
+DA:48,638
+DA:49,638
+DA:50,0
+DA:51,638
+DA:52,213
+DA:53,425
+DA:54,0
+DA:56,425
+DA:57,425
+DA:60,674
+DA:62,674
+DA:63,1099
+DA:65,674
+DA:66,674
+DA:67,213
+DA:69,461
+DA:70,461
+DA:71,461
+DA:72,461
+DA:75,461
+DA:77,461
+DA:78,461
+DA:79,1135
+DA:80,674
+DA:81,674
+DA:82,461
+DA:83,213
+DA:84,213
+DA:86,0
+BA:27,2
+BA:27,1
+BA:29,1
+BA:29,2
+BA:49,2
+BA:49,2
+BA:49,1
+BA:49,2
+BA:51,2
+BA:51,2
+BA:53,1
+BA:53,2
+BA:63,2
+BA:63,2
+BA:63,2
+BA:63,2
+BA:63,2
+BA:63,2
+BA:66,2
+BA:66,2
+BA:77,2
+BA:77,2
+BA:79,2
+BA:79,1
+BA:81,2
+BA:81,2
+LF:40
+LH:34
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test-main.h
+FN:31,_ZN4MainC1Ev
+FN:9,_ZN4MainD1Ev
+FN:63,_ZN4Main8testDiedEv
+FN:38,_ZN4Main5childEv
+FN:86,_ZN4Main13processStatusESs
+FN:139,_ZN4Main6parentEv
+FN:163,_ZN4Main4mainEiPPc
+FN:188,main
+DA:9,0
+DA:31,1
+DA:32,1
+DA:33,1
+DA:34,1
+DA:35,1
+DA:36,1
+DA:38,1
+DA:39,1
+DA:40,1
+DA:41,1
+DA:42,1
+DA:43,1
+DA:44,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:50,0
+DA:51,0
+DA:52,0
+DA:54,0
+DA:56,1
+DA:57,1
+DA:59,1
+DA:60,1
+DA:63,0
+DA:67,0
+DA:68,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:73,0
+DA:74,0
+DA:75,0
+DA:76,0
+DA:77,0
+DA:78,0
+DA:80,0
+DA:81,0
+DA:82,0
+DA:83,0
+DA:86,249
+DA:87,249
+DA:88,1
+DA:89,1
+DA:90,2
+DA:91,2
+DA:94,1
+DA:95,1
+DA:98,248
+DA:101,106
+DA:102,106
+DA:103,106
+DA:104,106
+DA:107,248
+DA:108,36
+DA:110,18
+DA:111,18
+DA:112,18
+DA:113,18
+DA:114,18
+DA:115,18
+DA:117,36
+DA:118,18
+DA:120,18
+DA:121,18
+DA:125,248
+DA:126,212
+DA:127,106
+DA:128,106
+DA:129,106
+DA:131,212
+DA:132,106
+DA:133,106
+DA:134,106
+DA:137,248
+DA:139,1
+DA:140,1
+DA:141,1
+DA:142,1
+DA:143,1
+DA:144,1
+DA:146,248
+DA:147,249
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:158,249
+DA:159,249
+DA:160,0
+DA:163,1
+DA:165,1
+DA:166,1
+DA:168,1
+DA:169,1
+DA:171,0
+DA:172,1
+DA:173,0
+DA:174,1
+DA:175,0
+DA:176,1
+DA:177,2
+DA:178,0
+DA:179,2
+DA:180,1
+DA:182,1
+DA:188,1
+DA:189,1
+BA:43,1
+BA:43,2
+BA:45,0
+BA:45,0
+BA:50,0
+BA:50,0
+BA:51,0
+BA:51,0
+BA:56,2
+BA:56,1
+BA:67,0
+BA:67,0
+BA:68,0
+BA:68,0
+BA:70,0
+BA:70,0
+BA:74,0
+BA:74,0
+BA:76,0
+BA:76,0
+BA:87,2
+BA:87,2
+BA:98,2
+BA:98,2
+BA:107,2
+BA:107,2
+BA:108,2
+BA:108,2
+BA:117,2
+BA:117,2
+BA:118,2
+BA:118,1
+BA:125,2
+BA:125,2
+BA:126,2
+BA:126,2
+BA:131,2
+BA:131,2
+BA:147,1
+BA:147,2
+BA:149,0
+BA:149,0
+BA:172,1
+BA:172,2
+BA:174,1
+BA:174,2
+BA:177,1
+BA:177,2
+BA:179,2
+BA:179,2
+LF:111
+LH:75
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test-runner.h
+FN:17,_ZN6RunAllC1Ev
+FN:17,_ZN6RunAllD1Ev
+FN:23,_ZN6RunAll9findSuiteESs
+FN:30,_ZN6RunAll10waitForAckEv
+FN:53,_ZN6RunAll7runTestER8RunSuitei
+FN:35,_ZN6RunAll8runSuiteER8RunSuiteiii
+FN:66,_ZN6RunAll7runFromEii
+DA:17,1
+DA:23,0
+DA:24,0
+DA:25,0
+DA:26,0
+DA:27,0
+DA:30,212
+DA:31,212
+DA:32,212
+DA:33,212
+DA:35,18
+DA:37,18
+DA:38,124
+DA:40,106
+DA:41,106
+DA:42,106
+DA:43,106
+DA:44,106
+DA:45,106
+DA:46,106
+DA:50,18
+DA:51,18
+DA:53,0
+DA:55,0
+DA:56,0
+DA:57,0
+DA:58,0
+DA:59,0
+DA:60,0
+DA:61,0
+DA:62,0
+DA:63,0
+DA:64,0
+DA:66,1
+DA:68,38
+DA:69,18
+DA:70,18
+DA:71,18
+DA:73,1
+BA:24,0
+BA:24,0
+BA:25,0
+BA:25,0
+BA:38,2
+BA:38,2
+BA:68,2
+BA:68,2
+LF:39
+LH:23
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationD1Ev
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:17,_ZN8LocationC1EPKciSs
+FN:13,_ZN8LocationC1ERKS_
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:52,_ZlsIiER12AssertFailedS1_T_
+FN:41,_ZN12AssertFailedD1Ev
+FN:67,_Z12assert_eq_fnISsSsEv8LocationT_T0_
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:67,_Z12assert_eq_fnIiiEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:75,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+LF:26
+LH:0
+end_of_record
+SF:/srv/build/pkg/ept-work/default/ept/ept-test-generated-main.cpp
+FN:273,_Z41__static_initialization_and_destruction_0ii
+FN:273,_GLOBAL__I_ept_test_generated_main.cpp
+DA:273,3
+BA:273,2
+BA:273,1
+BA:273,2
+BA:273,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC2Ev
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:106,_ZNSaIPcED1Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+FN:104,_ZNSaIPcEC1IcEERKSaIT_E
+DA:98,0
+DA:100,0
+DA:101,0
+DA:104,6
+DA:106,6
+DA:118,0
+DA:119,0
+LF:7
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:188,_ZNKSs4_Rep12_M_is_leakedEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:369,_ZNSs13_S_copy_charsISt15_Deque_iteratorIcRcPcEEEvS2_T_S4_
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:1462,_ZNSs16_S_construct_auxISt15_Deque_iteratorIcRcPcEEES2_T_S4_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructISt15_Deque_iteratorIcRcPcEEES2_T_S4_RKSaIcE
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:376,_ZNSs13_S_copy_charsEPcN9__gnu_cxx17__normal_iteratorIS_SsEES2_
+FN:1462,_ZNSs16_S_construct_auxIN9__gnu_cxx17__normal_iteratorIPcSsEEEES2_T_S4_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIN9__gnu_cxx17__normal_iteratorIPcSsEEEES2_T_S4_RKSaIcE
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:501,_ZNSsaSERKSs
+FN:2176,_ZSteqIcSt11char_traitsIcESaIcEEbPKT_RKSbIS3_T0_T1_E
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:299,_ZNSs7_M_leakEv
+FN:718,_ZNSsixEj
+FN:551,_ZNSs3endEv
+FN:532,_ZNSs5beginEv
+DA:178,0
+DA:183,0
+DA:184,0
+DA:188,0
+DA:189,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:299,0
+DA:301,0
+DA:302,0
+DA:303,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:369,461
+DA:371,5268
+DA:372,4807
+DA:373,461
+DA:376,0
+DA:377,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:532,0
+DA:534,0
+DA:535,0
+DA:551,0
+DA:553,0
+DA:554,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:718,0
+DA:724,0
+DA:725,0
+DA:835,0
+DA:838,0
+DA:1462,585
+DA:1465,585
+DA:1478,585
+DA:1481,585
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2162,0
+DA:2165,0
+DA:2176,0
+DA:2177,0
+DA:2188,0
+DA:2189,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:301,0
+BA:301,0
+BA:341,0
+BA:341,0
+BA:371,2
+BA:371,2
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:94
+LH:8
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructISt15_Deque_iteratorIcRcPcEEES2_T_S4_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1ISt15_Deque_iteratorIcRcPcEEET_S4_RKSaIcE
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+FN:130,_ZNSs12_S_constructIN9__gnu_cxx17__normal_iteratorIPcSsEEEES2_T_S4_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IN9__gnu_cxx17__normal_iteratorIPcSsEEEET_S4_RKSaIcE
+DA:130,585
+DA:133,585
+DA:134,0
+DA:137,585
+DA:139,0
+DA:142,585
+DA:144,585
+DA:146,585
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,585
+DA:153,585
+DA:234,585
+DA:235,585
+DA:236,585
+BA:133,1
+BA:133,2
+BA:133,0
+BA:133,0
+BA:133,1
+BA:133,2
+BA:133,0
+BA:133,0
+BA:133,1
+BA:133,2
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,1
+BA:133,2
+BA:133,0
+BA:133,0
+BA:133,1
+BA:133,2
+BA:133,0
+BA:133,0
+BA:133,1
+BA:133,2
+BA:137,1
+BA:137,2
+BA:137,0
+BA:137,0
+BA:137,1
+BA:137,2
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,1
+BA:137,2
+BA:137,0
+BA:137,0
+BA:137,1
+BA:137,2
+LF:16
+LH:11
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,4807
+DA:246,4807
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/deque.tcc
+FN:159,_ZNSt5dequeIcSaIcEE5eraseESt15_Deque_iteratorIcRcPcES5_
+FN:766,_ZNSt5dequeIcSaIcEE17_M_reallocate_mapEjb
+FN:716,_ZNSt5dequeIcSaIcEE24_M_new_elements_at_frontEj
+FN:741,_ZNSt5dequeIcSaIcEE23_M_new_elements_at_backEj
+FN:608,_ZNSt5dequeIcSaIcEE13_M_insert_auxISt15_Deque_iteratorIcRKcPS4_EEEvS3_IcRcPcET_SB_j
+FN:435,_ZNSt5dequeIcSaIcEE19_M_range_insert_auxISt15_Deque_iteratorIcRKcPS4_EEEvS3_IcRcPcET_SB_St20forward_iterator_tag
+FN:70,_ZNSt5dequeIcSaIcEEaSERKS1_
+FN:335,_ZNSt5dequeIcSaIcEE16_M_push_back_auxERKc
+DA:70,2
+DA:72,2
+DA:73,2
+DA:75,2
+DA:76,2
+DA:80,0
+DA:81,0
+DA:82,0
+DA:85,2
+DA:159,461
+DA:161,461
+DA:163,425
+DA:164,425
+DA:168,36
+DA:169,36
+DA:170,36
+DA:172,36
+DA:173,0
+DA:174,36
+DA:178,0
+DA:179,0
+DA:180,0
+DA:182,36
+DA:335,11
+DA:338,11
+DA:339,11
+DA:346,11
+DA:348,11
+DA:350,11
+DA:352,0
+DA:354,0
+DA:355,0
+DA:357,11
+DA:435,0
+DA:437,0
+DA:438,0
+DA:440,0
+DA:443,0
+DA:445,0
+DA:447,0
+DA:449,0
+DA:451,0
+DA:454,0
+DA:456,0
+DA:459,0
+DA:462,0
+DA:464,0
+DA:466,0
+DA:468,0
+DA:472,0
+DA:473,0
+DA:608,0
+DA:610,0
+DA:611,0
+DA:612,0
+DA:614,0
+DA:615,0
+DA:616,0
+DA:619,0
+DA:622,0
+DA:623,0
+DA:626,0
+DA:627,0
+DA:628,0
+DA:632,0
+DA:633,0
+DA:634,0
+DA:638,0
+DA:639,0
+DA:642,0
+DA:644,0
+DA:646,0
+DA:651,0
+DA:652,0
+DA:654,0
+DA:655,0
+DA:658,0
+DA:661,0
+DA:662,0
+DA:666,0
+DA:667,0
+DA:668,0
+DA:672,0
+DA:673,0
+DA:674,0
+DA:678,0
+DA:679,0
+DA:682,0
+DA:684,0
+DA:686,0
+DA:689,0
+DA:716,0
+DA:718,0
+DA:719,0
+DA:722,0
+DA:723,0
+DA:727,0
+DA:728,0
+DA:730,0
+DA:732,0
+DA:733,0
+DA:734,0
+DA:736,0
+DA:741,0
+DA:743,0
+DA:744,0
+DA:747,0
+DA:748,0
+DA:752,0
+DA:753,0
+DA:755,0
+DA:757,0
+DA:758,0
+DA:759,0
+DA:761,0
+DA:766,0
+DA:769,0
+DA:770,0
+DA:773,0
+DA:775,0
+DA:778,0
+DA:779,0
+DA:783,0
+DA:791,0
+DA:793,0
+DA:794,0
+DA:796,0
+DA:799,0
+DA:801,0
+DA:802,0
+DA:805,0
+DA:806,0
+DA:807,0
+BA:73,2
+BA:73,1
+BA:75,2
+BA:75,1
+BA:161,2
+BA:161,1
+BA:161,2
+BA:161,2
+BA:161,2
+BA:161,2
+BA:170,2
+BA:170,1
+BA:172,1
+BA:172,2
+BA:178,0
+BA:178,0
+BA:438,0
+BA:438,0
+BA:454,0
+BA:454,0
+BA:612,0
+BA:612,0
+BA:619,0
+BA:619,0
+BA:658,0
+BA:658,0
+BA:718,0
+BA:718,0
+BA:727,0
+BA:727,0
+BA:732,0
+BA:732,0
+BA:743,0
+BA:743,0
+BA:752,0
+BA:752,0
+BA:757,0
+BA:757,0
+BA:773,0
+BA:773,0
+BA:775,0
+BA:775,0
+BA:778,0
+BA:778,0
+BA:794,0
+BA:794,0
+LF:133
+LH:23
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algo.h
+FN:171,_ZSt6__findISt15_Deque_iteratorIcRcPcEcET_S4_S4_RKT0_St26random_access_iterator_tag
+FN:3806,_ZSt4findISt15_Deque_iteratorIcRcPcEcET_S4_S4_RKT0_
+DA:171,1348
+DA:174,1348
+DA:176,2463
+DA:178,1438
+DA:179,22
+DA:180,1416
+DA:182,1416
+DA:183,7
+DA:184,1409
+DA:186,1409
+DA:187,11
+DA:188,1398
+DA:190,1398
+DA:191,283
+DA:192,1115
+DA:195,1025
+DA:198,51
+DA:199,0
+DA:200,51
+DA:202,109
+DA:203,0
+DA:204,109
+DA:206,174
+DA:207,174
+DA:208,0
+DA:211,851
+DA:3806,1348
+DA:3814,1348
+BA:176,2
+BA:176,2
+BA:178,2
+BA:178,2
+BA:182,2
+BA:182,2
+BA:186,2
+BA:186,2
+BA:190,2
+BA:190,2
+BA:195,2
+BA:195,2
+BA:195,2
+BA:195,2
+BA:198,1
+BA:198,2
+BA:202,1
+BA:202,2
+BA:206,2
+BA:206,1
+LF:28
+LH:25
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:286,_ZNSt12__miter_baseIPcLb0EE3__bES0_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:268,_ZNSt12__niter_baseIPcLb0EE3__bES0_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt5dequeIcSaIcEEELb0EE3__bES4_
+FN:286,_ZNSt12__miter_baseISt15_Deque_iteratorIcRcPcELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseISt15_Deque_iteratorIcRKcPS1_ELb0EE3__bES4_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:268,_ZNSt12__niter_baseISt15_Deque_iteratorIcRcPcELb0EE3__bES3_
+FN:268,_ZNSt12__niter_baseISt15_Deque_iteratorIcRKcPS1_ELb0EE3__bES4_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mISt15_Deque_iteratorIcRcPcES6_EET0_T_S8_S7_
+FN:385,_ZSt13__copy_move_aILb0ESt15_Deque_iteratorIcRcPcES3_ET1_T0_S5_S4_
+FN:430,_ZSt14__copy_move_a2ILb0ESt15_Deque_iteratorIcRcPcES3_ET1_T0_S5_S4_
+FN:456,_ZSt4copyISt15_Deque_iteratorIcRcPcES3_ET0_T_S5_S4_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bISt15_Deque_iteratorIcRcPcES6_EET0_T_S8_S7_
+FN:579,_ZSt22__copy_move_backward_aILb0ESt15_Deque_iteratorIcRcPcES3_ET1_T0_S5_S4_
+FN:597,_ZSt23__copy_move_backward_a2ILb0ESt15_Deque_iteratorIcRcPcES3_ET1_T0_S5_S4_
+FN:624,_ZSt13copy_backwardISt15_Deque_iteratorIcRcPcES3_ET0_T_S5_S4_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mISt15_Deque_iteratorIcRKcPS4_ES3_IcRcPcEEET0_T_SC_SB_
+FN:385,_ZSt13__copy_move_aILb0ESt15_Deque_iteratorIcRKcPS1_ES0_IcRcPcEET1_T0_S9_S8_
+FN:430,_ZSt14__copy_move_a2ILb0ESt15_Deque_iteratorIcRKcPS1_ES0_IcRcPcEET1_T0_S9_S8_
+FN:456,_ZSt4copyISt15_Deque_iteratorIcRKcPS1_ES0_IcRcPcEET0_T_S9_S8_
+FN:286,_ZNSt12__miter_baseIPPcLb0EE3__bES1_
+FN:268,_ZNSt12__niter_baseIPPcLb0EE3__bES1_
+FN:569,_ZNSt20__copy_move_backwardILb0ELb1ESt26random_access_iterator_tagE13__copy_move_bIPcEEPT_PKS4_S7_S5_
+FN:579,_ZSt22__copy_move_backward_aILb0EPPcS1_ET1_T0_S3_S2_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPPcS1_ET1_T0_S3_S2_
+FN:624,_ZSt13copy_backwardIPPcS1_ET0_T_S3_S2_
+FN:375,_ZNSt11__copy_moveILb0ELb1ESt26random_access_iterator_tagE8__copy_mIPcEEPT_PKS4_S7_S5_
+FN:385,_ZSt13__copy_move_aILb0EPPcS1_ET1_T0_S3_S2_
+FN:430,_ZSt14__copy_move_a2ILb0EPPcS1_ET1_T0_S3_S2_
+FN:456,_ZSt4copyIPPcS1_ET0_T_S3_S2_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPcSt20back_insert_iteratorISt5dequeIcSaIcEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPcSt20back_insert_iteratorISt5dequeIcSaIcEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EPcSt20back_insert_iteratorISt5dequeIcSaIcEEEET1_T0_S7_S6_
+FN:456,_ZSt4copyIPcSt20back_insert_iteratorISt5dequeIcSaIcEEEET0_T_S7_S6_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,1281
+DA:269,1281
+DA:276,0
+DA:277,0
+DA:286,854
+DA:287,854
+DA:337,427
+DA:340,5695
+DA:342,5268
+DA:343,5268
+DA:344,5268
+DA:346,427
+DA:375,0
+DA:377,0
+DA:379,0
+DA:385,427
+DA:393,427
+DA:396,427
+DA:430,427
+DA:435,427
+DA:456,427
+DA:466,427
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:569,0
+DA:571,0
+DA:572,0
+DA:573,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:215,0
+BA:215,0
+BA:340,0
+BA:340,0
+BA:340,1
+BA:340,2
+BA:340,2
+BA:340,2
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+LF:41
+LH:17
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:97,_ZSt8_DestroyISt15_Deque_iteratorIcRcPcEEvT_S4_
+FN:126,_ZSt8_DestroyISt15_Deque_iteratorIcRcPcEcEvT_S4_RSaIT0_E
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_deque.h
+FN:82,_ZSt16__deque_buf_sizej
+FN:127,_ZNSt15_Deque_iteratorIcRcPcEC1ERKS2_
+FN:868,_ZNSt5dequeIcSaIcEE3endEv
+FN:851,_ZNSt5dequeIcSaIcEE5beginEv
+FN:240,_ZSteqIcRcPcEbRKSt15_Deque_iteratorIT_T0_T1_ES8_
+FN:416,_ZNSt11_Deque_baseIcSaIcEE11_Deque_implD1Ev
+FN:434,_ZNSt11_Deque_baseIcSaIcEE19_M_get_Tp_allocatorEv
+FN:1601,_ZNSt5dequeIcSaIcEE15_M_destroy_dataESt15_Deque_iteratorIcRcPcES5_RKS0_
+FN:253,_ZStneIcRcPcEbRKSt15_Deque_iteratorIT_T0_T1_ES8_
+FN:132,_ZNKSt15_Deque_iteratorIcRcPcEdeEv
+FN:103,_ZNSt15_Deque_iteratorIcRcPcE14_S_buffer_sizeEv
+FN:226,_ZNSt15_Deque_iteratorIcRcPcE11_M_set_nodeEPS1_
+FN:140,_ZNSt15_Deque_iteratorIcRcPcEppEv
+FN:324,_ZStmiIcRcPcENSt15_Deque_iteratorIT_T0_T1_E15difference_typeERKS6_S9_
+FN:956,_ZNKSt5dequeIcSaIcEE4sizeEv
+FN:180,_ZNSt15_Deque_iteratorIcRcPcEpLEi
+FN:199,_ZNKSt15_Deque_iteratorIcRcPcEplEi
+FN:206,_ZNSt15_Deque_iteratorIcRcPcEmIEi
+FN:210,_ZNKSt15_Deque_iteratorIcRcPcEmiEi
+FN:127,_ZNSt15_Deque_iteratorIcRKcPS0_EC1ERKS_IcRcPcE
+FN:859,_ZNKSt5dequeIcSaIcEE5beginEv
+FN:877,_ZNKSt5dequeIcSaIcEE3endEv
+FN:124,_ZNSt15_Deque_iteratorIcRcPcEC1Ev
+FN:422,_ZNSt11_Deque_baseIcSaIcEE11_Deque_implC1Ev
+FN:670,_ZNSt5dequeIcSaIcEE14_S_buffer_sizeEv
+FN:103,_ZNSt15_Deque_iteratorIcRKcPS0_E14_S_buffer_sizeEv
+FN:226,_ZNSt15_Deque_iteratorIcRKcPS0_E11_M_set_nodeEPPc
+FN:180,_ZNSt15_Deque_iteratorIcRKcPS0_EpLEi
+FN:199,_ZNKSt15_Deque_iteratorIcRKcPS0_EplEi
+FN:438,_ZNKSt11_Deque_baseIcSaIcEE19_M_get_Tp_allocatorEv
+FN:442,_ZNKSt11_Deque_baseIcSaIcEE20_M_get_map_allocatorEv
+FN:160,_ZNSt15_Deque_iteratorIcRcPcEmmEv
+FN:324,_ZStmiIcRKcPS0_ENSt15_Deque_iteratorIT_T0_T1_E15difference_typeERKS7_SA_
+FN:132,_ZNKSt15_Deque_iteratorIcRKcPS0_EdeEv
+FN:140,_ZNSt15_Deque_iteratorIcRKcPS0_EppEv
+FN:961,_ZNKSt5dequeIcSaIcEE8max_sizeEv
+FN:458,_ZNSt11_Deque_baseIcSaIcEE15_M_allocate_mapEj
+FN:446,_ZNSt11_Deque_baseIcSaIcEE16_M_allocate_nodeEv
+FN:452,_ZNSt11_Deque_baseIcSaIcEE18_M_deallocate_nodeEPc
+FN:554,_ZNSt11_Deque_baseIcSaIcEE16_M_destroy_nodesEPPcS3_
+FN:536,_ZNSt11_Deque_baseIcSaIcEE15_M_create_nodesEPPcS3_
+FN:1619,_ZNSt5dequeIcSaIcEE15_M_erase_at_endESt15_Deque_iteratorIcRcPcE
+FN:1373,_ZNSt5dequeIcSaIcEE5clearEv
+FN:1609,_ZNSt5dequeIcSaIcEE17_M_erase_at_beginESt15_Deque_iteratorIcRcPcE
+FN:462,_ZNSt11_Deque_baseIcSaIcEE17_M_deallocate_mapEPPcj
+FN:497,_ZNSt11_Deque_baseIcSaIcEE17_M_initialize_mapEj
+FN:377,_ZNSt11_Deque_baseIcSaIcEEC2Ev
+FN:695,_ZNSt5dequeIcSaIcEEC1Ev
+FN:476,_ZNSt11_Deque_baseIcSaIcEED2Ev
+FN:775,_ZNSt5dequeIcSaIcEED1Ev
+FN:1674,_ZNSt5dequeIcSaIcEE23_M_reserve_map_at_frontEj
+FN:1630,_ZNSt5dequeIcSaIcEE28_M_reserve_elements_at_frontEj
+FN:1666,_ZNSt5dequeIcSaIcEE22_M_reserve_map_at_backEj
+FN:1640,_ZNSt5dequeIcSaIcEE27_M_reserve_elements_at_backEj
+FN:1540,_ZNSt5dequeIcSaIcEE18_M_insert_dispatchISt15_Deque_iteratorIcRKcPS4_EEEvS3_IcRcPcET_SB_St12__false_type
+FN:1297,_ZNSt5dequeIcSaIcEE6insertISt15_Deque_iteratorIcRKcPS4_EEEvS3_IcRcPcET_SB_
+FN:1159,_ZNSt5dequeIcSaIcEE9push_backERKc
+DA:82,3101
+DA:83,3101
+DA:103,3065
+DA:104,3065
+DA:124,8
+DA:125,8
+DA:127,19356
+DA:129,19356
+DA:132,10802
+DA:133,10802
+DA:140,10766
+DA:142,10766
+DA:143,10766
+DA:145,23
+DA:146,23
+DA:148,10766
+DA:160,0
+DA:162,0
+DA:164,0
+DA:165,0
+DA:167,0
+DA:168,0
+DA:180,72
+DA:182,72
+DA:183,72
+DA:184,71
+DA:190,1
+DA:191,1
+DA:192,1
+DA:195,72
+DA:199,72
+DA:201,72
+DA:202,72
+DA:206,0
+DA:207,0
+DA:210,0
+DA:212,0
+DA:213,0
+DA:226,43
+DA:228,43
+DA:229,43
+DA:230,43
+DA:231,43
+DA:240,8460
+DA:241,8460
+DA:253,5304
+DA:254,5304
+DA:324,2948
+DA:329,2948
+DA:377,4
+DA:378,4
+DA:379,4
+DA:416,2
+DA:422,4
+DA:424,4
+DA:425,4
+DA:434,465
+DA:435,465
+DA:438,6
+DA:439,6
+DA:442,6
+DA:443,6
+DA:446,15
+DA:448,15
+DA:452,13
+DA:454,13
+DA:455,13
+DA:458,4
+DA:459,4
+DA:462,2
+DA:463,2
+DA:476,2
+DA:478,2
+DA:480,2
+DA:482,2
+DA:484,2
+DA:497,4
+DA:500,4
+DA:502,4
+DA:504,4
+DA:512,4
+DA:513,4
+DA:516,4
+DA:517,0
+DA:519,0
+DA:520,0
+DA:521,0
+DA:522,0
+DA:525,4
+DA:526,4
+DA:527,4
+DA:528,4
+DA:531,4
+DA:536,4
+DA:541,8
+DA:542,4
+DA:544,0
+DA:546,0
+DA:547,0
+DA:549,4
+DA:554,465
+DA:556,478
+DA:557,13
+DA:558,465
+DA:670,0
+DA:671,0
+DA:695,4
+DA:696,4
+DA:775,2
+DA:776,2
+DA:851,3338
+DA:852,3338
+DA:859,2
+DA:860,2
+DA:868,4436
+DA:869,4436
+DA:877,2
+DA:878,2
+DA:956,40
+DA:957,40
+DA:961,0
+DA:962,0
+DA:1159,5268
+DA:1161,5268
+DA:1164,5257
+DA:1165,5257
+DA:1168,11
+DA:1169,5268
+DA:1297,0
+DA:1301,0
+DA:1302,0
+DA:1373,425
+DA:1374,425
+DA:1540,0
+DA:1544,0
+DA:1545,0
+DA:1601,465
+DA:1605,465
+DA:1609,36
+DA:1611,36
+DA:1612,36
+DA:1613,36
+DA:1614,36
+DA:1619,427
+DA:1621,427
+DA:1622,427
+DA:1624,427
+DA:1625,427
+DA:1630,0
+DA:1633,0
+DA:1634,0
+DA:1635,0
+DA:1636,0
+DA:1640,0
+DA:1643,0
+DA:1644,0
+DA:1645,0
+DA:1646,0
+DA:1666,11
+DA:1668,11
+DA:1670,0
+DA:1671,11
+DA:1674,0
+DA:1676,0
+DA:1678,0
+DA:1679,0
+BA:83,2
+BA:83,1
+BA:143,2
+BA:143,2
+BA:143,0
+BA:143,0
+BA:162,0
+BA:162,0
+BA:183,2
+BA:183,1
+BA:183,2
+BA:183,2
+BA:183,2
+BA:183,2
+BA:183,0
+BA:183,0
+BA:183,0
+BA:183,0
+BA:183,0
+BA:183,0
+BA:190,2
+BA:190,1
+BA:190,0
+BA:190,0
+BA:478,2
+BA:478,1
+BA:541,2
+BA:541,2
+BA:556,2
+BA:556,2
+BA:1161,2
+BA:1161,2
+BA:1634,0
+BA:1634,0
+BA:1644,0
+BA:1644,0
+BA:1668,1
+BA:1668,2
+BA:1676,0
+BA:1676,0
+LF:166
+LH:122
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:398,_ZNSt20back_insert_iteratorISt5dequeIcSaIcEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt5dequeIcSaIcEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPcSsEC1ERKS1_
+FN:735,_ZNK9__gnu_cxx17__normal_iteratorIPcSsEplERKi
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:429,_ZNSt20back_insert_iteratorISt5dequeIcSaIcEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt5dequeIcSaIcEEEppEv
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPcSsE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPcSsEEbRKNS_17__normal_iteratorIT_T0_EES7_
+FN:781,_ZN9__gnu_cxxneIPcSsEEbRKNS_17__normal_iteratorIT_T0_EES7_
+FN:846,_ZN9__gnu_cxxmiIPcSsEENS_17__normal_iteratorIT_T0_E15difference_typeERKS5_S8_
+FN:412,_ZNSt20back_insert_iteratorISt5dequeIcSaIcEEEaSERKc
+DA:398,425
+DA:412,5268
+DA:414,5268
+DA:415,5268
+DA:429,5268
+DA:430,5268
+DA:434,5268
+DA:435,5268
+DA:456,425
+DA:457,425
+DA:683,124
+DA:735,124
+DA:736,124
+DA:747,496
+DA:748,496
+DA:769,124
+DA:770,124
+DA:781,0
+DA:782,0
+DA:846,124
+DA:847,124
+LF:21
+LH:19
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceISt15_Deque_iteratorIcRcPcEENSt15iterator_traitsIT_E15difference_typeES5_S5_St26random_access_iterator_tag
+FN:115,_ZSt8distanceISt15_Deque_iteratorIcRcPcEENSt15iterator_traitsIT_E15difference_typeES5_S5_
+FN:93,_ZSt10__distanceISt15_Deque_iteratorIcRKcPS1_EENSt15iterator_traitsIT_E15difference_typeES6_S6_St26random_access_iterator_tag
+FN:115,_ZSt8distanceISt15_Deque_iteratorIcRKcPS1_EENSt15iterator_traitsIT_E15difference_typeES6_S6_
+FN:151,_ZSt9__advanceISt15_Deque_iteratorIcRKcPS1_EiEvRT_T0_St26random_access_iterator_tag
+FN:173,_ZSt7advanceISt15_Deque_iteratorIcRKcPS1_EiEvRT_T0_
+FN:93,_ZSt10__distanceIN9__gnu_cxx17__normal_iteratorIPcSsEEENSt15iterator_traitsIT_E15difference_typeES5_S5_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIN9__gnu_cxx17__normal_iteratorIPcSsEEENSt15iterator_traitsIT_E15difference_typeES5_S5_
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,585
+DA:98,585
+DA:115,585
+DA:119,585
+DA:151,0
+DA:156,0
+DA:157,0
+DA:173,0
+DA:176,0
+DA:177,0
+DA:178,0
+LF:11
+LH:4
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryISt15_Deque_iteratorIcRcPcEENSt15iterator_traitsIT_E17iterator_categoryERKS5_
+FN:166,_ZSt19__iterator_categoryISt15_Deque_iteratorIcRKcPS1_EENSt15iterator_traitsIT_E17iterator_categoryERKS6_
+FN:166,_ZSt19__iterator_categoryIN9__gnu_cxx17__normal_iteratorIPcSsEEENSt15iterator_traitsIT_E17iterator_categoryERKS5_
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,1933
+DA:167,1933
+LF:3
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:97,_ZNSt20__uninitialized_copyILb1EE18uninitialized_copyISt15_Deque_iteratorIcRKcPS3_ES2_IcRcPcEEET0_T_SB_SA_
+FN:113,_ZSt18uninitialized_copyISt15_Deque_iteratorIcRKcPS1_ES0_IcRcPcEET0_T_S9_S8_
+FN:261,_ZSt22__uninitialized_copy_aISt15_Deque_iteratorIcRKcPS1_ES0_IcRcPcEcET0_T_S9_S8_RSaIT1_E
+FN:97,_ZNSt20__uninitialized_copyILb1EE18uninitialized_copyISt15_Deque_iteratorIcRcPcES5_EET0_T_S7_S6_
+FN:113,_ZSt18uninitialized_copyISt15_Deque_iteratorIcRcPcES3_ET0_T_S5_S4_
+FN:261,_ZSt22__uninitialized_copy_aISt15_Deque_iteratorIcRcPcES3_cET0_T_S5_S4_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aISt15_Deque_iteratorIcRcPcES3_SaIcEET0_T_S6_S5_RT1_
+FN:371,_ZSt25__uninitialized_move_copyISt15_Deque_iteratorIcRcPcES0_IcRKcPS4_ES3_SaIcEET1_T_SA_T0_SB_S9_RT2_
+FN:343,_ZSt25__uninitialized_copy_moveISt15_Deque_iteratorIcRKcPS1_ES0_IcRcPcES7_SaIcEET1_T_SA_T0_SB_S9_RT2_
+DA:97,0
+DA:98,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+DA:343,0
+DA:347,0
+DA:350,0
+DA:352,0
+DA:354,0
+DA:355,0
+DA:371,0
+DA:375,0
+DA:378,0
+DA:380,0
+DA:382,0
+DA:383,0
+LF:20
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+DA:79,0
+DA:97,0
+DA:98,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:386,0
+DA:387,0
+DA:404,0
+DA:405,0
+DA:526,0
+DA:527,0
+BA:149,0
+BA:149,0
+LF:19
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIPcED2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorIPcE8max_sizeEv
+FN:69,_ZN9__gnu_cxx13new_allocatorIPcEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorIcE8max_sizeEv
+FN:107,_ZN9__gnu_cxx13new_allocatorIcE9constructEPcRKc
+FN:87,_ZN9__gnu_cxx13new_allocatorIPcE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorIcE8allocateEjPKv
+FN:97,_ZN9__gnu_cxx13new_allocatorIcE10deallocateEPcj
+FN:97,_ZN9__gnu_cxx13new_allocatorIPcE10deallocateEPS1_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+DA:69,6
+DA:71,0
+DA:76,6
+DA:87,19
+DA:89,19
+DA:90,0
+DA:92,19
+DA:97,15
+DA:98,15
+DA:101,19
+DA:102,19
+DA:107,5268
+DA:108,5268
+BA:89,1
+BA:89,2
+BA:89,1
+BA:89,2
+BA:108,2
+BA:108,1
+LF:13
+LH:11
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:159,_ZN9__gnu_cxx17__is_null_pointerISt15_Deque_iteratorIcRcPcEEEbT_
+FN:159,_ZN9__gnu_cxx17__is_null_pointerINS_17__normal_iteratorIPcSsEEEEbT_
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+DA:159,585
+DA:160,585
+LF:4
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+DA:105,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:25
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.h
+DA:86,1
+BA:86,1
+BA:86,2
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt.h
+FN:139,_ZN3ept4core11AptDatabaseC1Ev
+FN:209,_ZN3ept4core11AptDatabase10invalidateEv
+FN:331,_ZN3ept4core11AptDatabaseD1Ev
+DA:139,0
+DA:140,0
+DA:141,0
+DA:142,0
+DA:143,0
+DA:144,0
+DA:145,0
+DA:146,0
+DA:209,0
+DA:210,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:218,0
+DA:219,0
+DA:220,0
+DA:331,0
+DA:332,0
+DA:333,0
+BA:210,0
+BA:210,0
+BA:214,0
+BA:214,0
+BA:216,0
+BA:216,0
+BA:218,0
+BA:218,0
+LF:21
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/debtags.h
+FN:139,_ZN3ept7debtags7Debtags14const_iteratorC1ERKS1_RKN7tagcoll4coll7PatchedINS6_12IntDiskIndexEE14const_iteratorE
+FN:197,_ZNK3ept7debtags7Debtags9timestampEv
+FN:200,_ZNK3ept7debtags7Debtags7hasDataEv
+FN:280,_ZN3ept7debtags7Debtags10vocabularyEv
+FN:282,_ZNK3ept7debtags7Debtags10vocabularyEv
+FN:171,_ZNK3ept7debtags7Debtags14const_iteratoreqERKS2_
+FN:175,_ZNK3ept7debtags7Debtags14const_iteratorneERKS2_
+FN:97,_ZNK3ept7debtags7Debtags11packageByIDEi
+FN:183,_ZNK3ept7debtags7Debtags3endEv
+FN:182,_ZNK3ept7debtags7Debtags5beginEv
+FN:143,_ZN3ept7debtags7Debtags14const_iteratorD1Ev
+FN:112,_ZNK3ept7debtags7Debtags11idByPackageERKSs
+FN:118,_ZNK3ept7debtags7Debtags13idsByPackagesIN6wibble9SingletonISsEEEESt3setIiSt4lessIiESaIiEERKT_
+FN:103,_ZNK3ept7debtags7Debtags12packagesByIdISt3setIiSt4lessIiESaIiEEEES3_ISsS4_ISsESaISsEERKT_
+FN:161,_ZN3ept7debtags7Debtags14const_iteratorppEv
+FN:244,_ZNK3ept7debtags7Debtags13getTagsOfItemERKSs
+FN:252,_ZNK3ept7debtags7Debtags14getTagsOfItemsIN6wibble9SingletonISsEEEESt3setINS0_3TagESt4lessIS7_ESaIS7_EERKT_
+FN:148,_ZNK3ept7debtags7Debtags14const_iteratordeEv
+FN:155,_ZNK3ept7debtags7Debtags14const_iteratorptEv
+FN:383,_ZN3ept7debtags7Debtags12outputSystemIN7tagcoll4coll8InserterINS4_6SimpleISsNS0_3TagEEEEEEEvRKT_
+FN:400,_ZN3ept7debtags7Debtags13outputPatchedIN7tagcoll4coll8InserterINS4_6SimpleISsNS0_3TagEEEEEEEvRKT_
+FN:383,_ZN3ept7debtags7Debtags12outputSystemIN7tagcoll6stream12CountingSinkIiEEEEvRKT_
+FN:400,_ZN3ept7debtags7Debtags13outputPatchedIN7tagcoll6stream12CountingSinkIiEEEEvRKT_
+FN:274,_ZNK3ept7debtags7Debtags10getAllTagsEv
+FN:194,_ZN3ept7debtags7DebtagsD1Ev
+FN:302,_ZN3ept7debtags7Debtags11applyChangeERKN7tagcoll9PatchListISsNS0_3TagEEE
+FN:262,_ZNK3ept7debtags7Debtags18getItemsHavingTagsISt3setINS0_3TagESt4lessIS4_ESaIS4_EEEES3_ISsS5_ISsESaISsEERKT_
+DA:97,84710
+DA:99,84710
+DA:103,2
+DA:105,2
+DA:106,130
+DA:108,128
+DA:109,0
+DA:112,8
+DA:114,8
+DA:118,1
+DA:120,1
+DA:121,2
+DA:123,1
+DA:124,0
+DA:139,63443
+DA:140,63443
+DA:143,63443
+DA:145,63443
+DA:146,0
+DA:147,63443
+DA:148,84580
+DA:150,84580
+DA:151,0
+DA:153,84580
+DA:155,105725
+DA:157,105725
+DA:158,42290
+DA:159,63435
+DA:161,63435
+DA:163,63435
+DA:164,63435
+DA:166,63435
+DA:167,63435
+DA:169,63435
+DA:171,1
+DA:173,1
+DA:175,63438
+DA:177,63438
+DA:182,4
+DA:183,63439
+DA:194,10
+DA:197,1
+DA:200,1
+DA:244,5
+DA:246,5
+DA:247,5
+DA:248,4
+DA:252,1
+DA:254,1
+DA:262,2
+DA:264,2
+DA:265,11
+DA:267,9
+DA:268,2
+DA:274,1
+DA:276,1
+DA:280,27
+DA:282,84590
+DA:302,2
+DA:305,2
+DA:306,4
+DA:309,2
+DA:310,4
+DA:312,2
+DA:313,2
+DA:315,0
+DA:316,2
+DA:318,2
+DA:319,2
+DA:383,2
+DA:400,2
+BA:106,2
+BA:106,2
+BA:121,2
+BA:121,2
+BA:145,1
+BA:145,2
+BA:146,0
+BA:146,0
+BA:150,1
+BA:150,2
+BA:157,2
+BA:157,2
+BA:164,2
+BA:164,1
+BA:166,2
+BA:166,1
+BA:247,2
+BA:247,2
+BA:265,2
+BA:265,2
+BA:306,2
+BA:306,2
+BA:310,2
+BA:310,2
+BA:313,1
+BA:313,2
+LF:71
+LH:66
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/debtags.tcc
+DA:42,2
+DA:43,2
+DA:63,2
+DA:64,2
+LF:4
+LH:4
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/debtags.test.h
+FN:53,_ZN11TestDebtags3vocEv
+FN:51,_ZN11TestDebtagsC1Ev
+FN:55,_ZN11TestDebtags2_1Ev
+FN:243,_ZN11TestDebtags2_5Ev
+FN:48,_ZN11TestDebtagsD1Ev
+FN:74,_ZN11TestDebtags2_2Ev
+FN:185,_ZN11TestDebtags2_4Ev
+FN:100,_ZN11TestDebtags2_3Ev
+DA:48,5
+DA:51,5
+DA:53,10
+DA:55,1
+DA:56,21146
+DA:58,21145
+DA:59,21145
+DA:60,21145
+DA:61,1
+DA:62,1
+DA:63,1
+DA:65,1
+DA:66,1
+DA:68,2
+DA:69,2
+DA:70,2
+DA:71,2
+DA:72,1
+DA:74,1
+DA:76,1
+DA:77,1
+DA:78,1
+DA:89,2
+DA:90,2
+DA:91,2
+DA:92,2
+DA:93,2
+DA:94,2
+DA:95,2
+DA:96,2
+DA:97,2
+DA:98,1
+DA:100,1
+DA:105,1
+DA:108,1
+DA:109,1
+DA:152,1
+DA:154,1
+DA:162,2
+DA:165,2
+DA:166,1
+DA:173,1
+DA:174,1
+DA:175,1
+DA:178,1
+DA:180,2
+DA:183,1
+DA:185,1
+DA:187,1
+DA:188,1
+DA:190,1
+DA:193,1
+DA:194,1
+DA:197,2
+DA:198,2
+DA:201,1
+DA:202,1
+DA:203,1
+DA:206,1
+DA:207,1
+DA:208,2
+DA:211,2
+DA:212,1
+DA:214,2
+DA:215,2
+DA:218,1
+DA:221,1
+DA:222,1
+DA:224,29
+DA:225,27
+DA:226,1
+DA:228,1
+DA:230,2
+DA:233,1
+DA:236,1
+DA:237,1
+DA:238,2
+DA:239,1
+DA:240,1
+DA:243,1
+DA:245,1
+DA:246,2
+DA:247,2
+DA:248,2
+DA:249,1
+DA:251,1
+DA:252,1
+DA:253,2
+DA:255,1
+DA:256,1
+DA:258,2
+DA:259,2
+DA:260,2
+DA:261,2
+DA:263,2
+DA:264,1
+DA:266,1
+DA:267,1
+DA:268,1
+DA:270,1
+DA:272,1
+DA:273,1
+DA:274,1
+BA:56,2
+BA:56,2
+BA:224,2
+BA:224,2
+LF:103
+LH:103
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/path.h
+FN:76,_ZN3ept7debtags4Path24OverrideDebtagsSourceDirC1ERKSs
+FN:80,_ZN3ept7debtags4Path24OverrideDebtagsSourceDirD1Ev
+FN:86,_ZN3ept7debtags4Path23OverrideDebtagsIndexDirC1ERKSs
+FN:90,_ZN3ept7debtags4Path23OverrideDebtagsIndexDirD1Ev
+FN:96,_ZN3ept7debtags4Path28OverrideDebtagsUserSourceDirC1ERKSs
+FN:100,_ZN3ept7debtags4Path28OverrideDebtagsUserSourceDirD1Ev
+FN:106,_ZN3ept7debtags4Path27OverrideDebtagsUserIndexDirC1ERKSs
+FN:110,_ZN3ept7debtags4Path27OverrideDebtagsUserIndexDirD1Ev
+DA:76,0
+DA:78,0
+DA:79,0
+DA:80,0
+DA:86,0
+DA:88,0
+DA:89,0
+DA:90,0
+DA:96,0
+DA:98,0
+DA:99,0
+DA:100,0
+DA:106,0
+DA:108,0
+DA:109,0
+DA:110,0
+LF:16
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/pkgid.h
+FN:54,_ZNK3ept7debtags5PkgId4sizeEv
+FN:68,_ZNK3ept7debtags5PkgId4byIDEi
+FN:41,_ZN3ept7debtags5PkgIdD1Ev
+DA:41,11
+DA:54,63445
+DA:68,1128365
+DA:70,1128365
+DA:71,1128365
+DA:72,0
+BA:54,2
+BA:54,2
+BA:70,1
+BA:70,2
+BA:70,0
+BA:70,0
+BA:70,2
+BA:70,1
+LF:6
+LH:5
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/serializer.h
+FN:27,_ZN3ept7debtags8IntToPkgIN7tagcoll6stream12CountingSinkIiEEEC1ERNS0_5PkgIdERNS0_10VocabularyERKS5_
+FN:62,_ZN3ept7debtags8intToPkgIN7tagcoll6stream12CountingSinkIiEEEENS0_8IntToPkgIT_EERNS0_5PkgIdERNS0_10VocabularyERKS7_
+FN:27,_ZN3ept7debtags8IntToPkgIN7tagcoll4coll8InserterINS3_6SimpleISsNS0_3TagEEEEEEC1ERNS0_5PkgIdERNS0_10VocabularyERKS8_
+FN:62,_ZN3ept7debtags8intToPkgIN7tagcoll4coll8InserterINS3_6SimpleISsNS0_3TagEEEEEEENS0_8IntToPkgIT_EERNS0_5PkgIdERNS0_10VocabularyERKSA_
+FN:31,_ZN3ept7debtags8IntToPkgIN7tagcoll4coll8InserterINS3_6SimpleISsNS0_3TagEEEEEEaSIN6wibble9SingletonIiEESt3setIiSt4lessIiESaIiEEEERS9_RKSt4pairIT_T0_E
+FN:31,_ZN3ept7debtags8IntToPkgIN7tagcoll6stream12CountingSinkIiEEEaSIN6wibble9SingletonIiEESt3setIiSt4lessIiESaIiEEEERS6_RKSt4pairIT_T0_E
+DA:27,5
+DA:28,5
+DA:31,42291
+DA:33,42291
+DA:34,42291
+DA:36,84582
+DA:39,42291
+DA:40,42291
+DA:41,42291
+DA:44,253489
+DA:47,211198
+DA:48,211198
+DA:49,211198
+DA:52,42291
+DA:54,42267
+DA:55,42267
+DA:57,42291
+DA:62,5
+DA:64,5
+BA:36,2
+BA:36,2
+BA:36,2
+BA:36,2
+BA:40,2
+BA:40,1
+BA:40,2
+BA:40,1
+BA:44,2
+BA:44,2
+BA:44,2
+BA:44,2
+BA:48,2
+BA:48,1
+BA:48,2
+BA:48,1
+BA:52,2
+BA:52,1
+BA:52,2
+BA:52,1
+BA:52,2
+BA:52,1
+BA:52,2
+BA:52,1
+BA:52,2
+BA:52,2
+BA:52,2
+BA:52,2
+LF:19
+LH:19
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/tag.h
+FN:175,_ZN3ept7debtags3TagD1Ev
+FN:177,_ZNK3ept7debtags3TageqERKS1_
+FN:179,_ZNK3ept7debtags3TagltERKS1_
+FN:181,_ZNK3ept7debtags3TagcvbEv
+FN:182,_ZNK3ept7debtags3Tag5validEv
+FN:242,_ZNK3ept7debtags3Tag2idEv
+DA:175,0
+DA:177,0
+DA:179,0
+DA:181,0
+DA:182,324422
+DA:242,0
+LF:6
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/vocabulary.h
+FN:181,_ZNK3ept7debtags10Vocabulary8tagsByIDISt3setIiSt4lessIiESaIiEEEES3_INS0_3TagES4_IS8_ESaIS8_EERKT_
+FN:114,_ZNK3ept7debtags10Vocabulary8TagIndex2idERKSs
+FN:203,_ZNK3ept7debtags10Vocabulary9tagByNameERKSs
+DA:114,0
+DA:181,84590
+DA:183,84590
+DA:184,507017
+DA:186,422427
+DA:187,0
+DA:203,0
+BA:184,2
+BA:184,2
+LF:7
+LH:4
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/test.h
+FN:12,_ZN18AptTestEnvironmentC2Ev
+FN:10,_ZN18AptTestEnvironmentD2Ev
+FN:30,_ZN22DebtagsTestEnvironmentC2Ev
+FN:24,_ZN22DebtagsTestEnvironmentD2Ev
+DA:10,0
+DA:12,0
+DA:13,0
+DA:14,0
+DA:15,0
+DA:16,0
+DA:17,0
+DA:18,0
+DA:19,0
+DA:20,0
+DA:21,0
+DA:24,0
+DA:30,0
+DA:34,0
+DA:35,0
+LF:15
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/empty.h
+FN:64,_ZNK6wibble5EmptyIN3ept7debtags3TagEE5beginEv
+FN:65,_ZNK6wibble5EmptyIN3ept7debtags3TagEE3endEv
+FN:64,_ZNK6wibble5EmptyIiE5beginEv
+FN:65,_ZNK6wibble5EmptyIiE3endEv
+FN:46,_ZNK6wibble5EmptyIN3ept7debtags3TagEE14const_iteratorneERKS5_
+FN:44,_ZN6wibble5EmptyIN3ept7debtags3TagEE14const_iteratorppEv
+FN:42,_ZNK6wibble5EmptyIN3ept7debtags3TagEE14const_iteratordeEv
+FN:46,_ZNK6wibble5EmptyIiE14const_iteratorneERKS2_
+FN:44,_ZN6wibble5EmptyIiE14const_iteratorppEv
+FN:42,_ZNK6wibble5EmptyIiE14const_iteratordeEv
+DA:42,0
+DA:44,0
+DA:46,3
+DA:64,3
+DA:65,3
+LF:5
+LH:3
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/mixin.h
+FN:52,_ZN6wibble5mixin14OutputIteratorIN7tagcoll6stream12CountingSinkIiEEEC2Ev
+FN:52,_ZN6wibble5mixin14OutputIteratorIN7tagcoll4coll8InserterINS3_6SimpleISsN3ept7debtags3TagEEEEEEC2Ev
+FN:52,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags8IntToPkgIN7tagcoll6stream12CountingSinkIiEEEEEC2Ev
+FN:64,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags8IntToPkgIN7tagcoll6stream12CountingSinkIiEEEEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags8IntToPkgIN7tagcoll6stream12CountingSinkIiEEEEEppEv
+FN:52,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags8IntToPkgIN7tagcoll4coll8InserterINS6_6SimpleISsNS3_3TagEEEEEEEEC2Ev
+FN:64,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags8IntToPkgIN7tagcoll4coll8InserterINS6_6SimpleISsNS3_3TagEEEEEEEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags8IntToPkgIN7tagcoll4coll8InserterINS6_6SimpleISsNS3_3TagEEEEEEEEppEv
+FN:64,_ZN6wibble5mixin14OutputIteratorIN7tagcoll6stream12CountingSinkIiEEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN7tagcoll6stream12CountingSinkIiEEEppEv
+FN:64,_ZN6wibble5mixin14OutputIteratorIN7tagcoll4coll8InserterINS3_6SimpleISsN3ept7debtags3TagEEEEEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN7tagcoll4coll8InserterINS3_6SimpleISsN3ept7debtags3TagEEEEEEppEv
+DA:52,10
+DA:53,84558
+DA:54,84558
+DA:64,84558
+DA:65,84558
+LF:5
+LH:5
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/operators.h
+FN:220,_ZN6wibble9operatorsleIN3ept7debtags3TagEEEbRKT_RKSt3setIS5_St4lessIS5_ESaIS5_EE
+FN:220,_ZN6wibble9operatorsleISsEEbRKT_RKSt3setIS2_St4lessIS2_ESaIS2_EE
+FN:115,_ZN6wibble9operatorsoRIiEERSt3setIT_St4lessIS3_ESaIS3_EES8_RKS3_
+FN:74,_ZN6wibble9operatorsorIiEESt3setIT_St4lessIS3_ESaIS3_EERKS7_S9_
+FN:82,_ZN6wibble9operatorsmiIiEESt3setIT_St4lessIS3_ESaIS3_EERKS7_S9_
+FN:133,_ZN6wibble9operatorsoRIiEERSt3setIT_St4lessIS3_ESaIS3_EES8_RKS7_
+FN:74,_ZN6wibble9operatorsorIN3ept7debtags3TagEEESt3setIT_St4lessIS6_ESaIS6_EERKSA_SC_
+FN:133,_ZN6wibble9operatorsoRIN3ept7debtags3TagEEERSt3setIT_St4lessIS6_ESaIS6_EESB_RKSA_
+FN:183,_ZN6wibble9operatorsmIIiEERSt3setIT_St4lessIS3_ESaIS3_EES8_RKS3_
+FN:198,_ZN6wibble9operatorsmIIN3ept7debtags3TagESt3setIS4_St4lessIS4_ESaIS4_EEEERS5_IT_S6_ISA_ESaISA_EESE_RKT0_
+FN:198,_ZN6wibble9operatorsmIIiSt3setIiSt4lessIiESaIiEEEERS2_IT_S3_IS7_ESaIS7_EESB_RKT0_
+FN:145,_ZN6wibble9operatorsaNIiSt3setIiSt4lessIiESaIiEEEERS2_IT_S3_IS7_ESaIS7_EESB_RKT0_
+DA:74,3
+DA:75,3
+DA:76,3
+DA:78,0
+DA:82,5
+DA:83,5
+DA:84,5
+DA:86,0
+DA:115,4
+DA:117,4
+DA:118,4
+DA:133,7
+DA:134,7
+DA:135,5
+DA:137,4
+DA:139,2
+DA:140,2
+DA:145,7
+DA:147,7
+DA:149,0
+DA:150,0
+DA:153,7
+DA:154,7
+DA:155,2654
+DA:157,2640
+DA:159,2507
+DA:161,133
+DA:163,126
+DA:164,126
+DA:165,126
+DA:169,7
+DA:170,7
+DA:173,7
+DA:183,4
+DA:185,4
+DA:186,4
+DA:198,12
+DA:200,12
+DA:201,12
+DA:202,306
+DA:204,282
+DA:206,0
+DA:207,0
+DA:208,0
+DA:209,0
+DA:211,282
+DA:212,4
+DA:214,278
+DA:216,12
+DA:220,12
+DA:221,12
+BA:134,2
+BA:134,2
+BA:134,2
+BA:134,1
+BA:137,2
+BA:137,2
+BA:137,0
+BA:137,0
+BA:147,1
+BA:147,2
+BA:155,2
+BA:155,2
+BA:157,2
+BA:157,1
+BA:157,2
+BA:157,2
+BA:157,2
+BA:157,2
+BA:161,2
+BA:161,1
+BA:161,2
+BA:161,2
+BA:161,2
+BA:161,2
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,2
+BA:202,2
+BA:202,2
+BA:202,2
+BA:202,2
+BA:202,2
+BA:204,0
+BA:204,0
+BA:204,1
+BA:204,2
+BA:211,0
+BA:211,0
+BA:211,2
+BA:211,2
+LF:51
+LH:43
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/singleton.h
+FN:35,_ZN6wibble9SingletonIN3ept7debtags3TagEED1Ev
+FN:80,_ZN6wibble9SingletonIN3ept7debtags3TagEEC1ERKS3_
+FN:92,_ZN6wibble9singletonIN3ept7debtags3TagEEENS_9SingletonIT_EERKS5_
+FN:47,_ZN6wibble9SingletonIN3ept7debtags3TagEE14const_iteratorC1EPKS3_
+FN:87,_ZNK6wibble9SingletonIN3ept7debtags3TagEE5beginEv
+FN:50,_ZN6wibble9SingletonIN3ept7debtags3TagEE14const_iteratorC1Ev
+FN:88,_ZNK6wibble9SingletonIN3ept7debtags3TagEE3endEv
+FN:56,_ZNK6wibble9SingletonISsE14const_iteratorneERKS2_
+FN:54,_ZN6wibble9SingletonISsE14const_iteratorppEv
+FN:52,_ZNK6wibble9SingletonISsE14const_iteratordeEv
+FN:80,_ZN6wibble9SingletonIiEC1ERKi
+FN:92,_ZN6wibble9singletonIiEENS_9SingletonIT_EERKS2_
+FN:56,_ZNK6wibble9SingletonIiE14const_iteratorneERKS2_
+FN:54,_ZN6wibble9SingletonIiE14const_iteratorppEv
+FN:52,_ZNK6wibble9SingletonIiE14const_iteratordeEv
+FN:47,_ZN6wibble9SingletonISsE14const_iteratorC1EPKSs
+FN:87,_ZNK6wibble9SingletonISsE5beginEv
+FN:50,_ZN6wibble9SingletonISsE14const_iteratorC1Ev
+FN:88,_ZNK6wibble9SingletonISsE3endEv
+FN:47,_ZN6wibble9SingletonIiE14const_iteratorC1EPKi
+FN:87,_ZNK6wibble9SingletonIiE5beginEv
+FN:50,_ZN6wibble9SingletonIiE14const_iteratorC1Ev
+FN:88,_ZNK6wibble9SingletonIiE3endEv
+FN:56,_ZNK6wibble9SingletonIN3ept7debtags3TagEE14const_iteratorneERKS5_
+FN:54,_ZN6wibble9SingletonIN3ept7debtags3TagEE14const_iteratorppEv
+FN:52,_ZNK6wibble9SingletonIN3ept7debtags3TagEE14const_iteratordeEv
+FN:35,_ZN6wibble9SingletonISsED1Ev
+FN:80,_ZN6wibble9SingletonISsEC1ERKSs
+FN:92,_ZN6wibble9singletonISsEENS_9SingletonIT_EERKS2_
+DA:35,84594
+DA:47,105738
+DA:50,169179
+DA:52,84595
+DA:54,84592
+DA:56,190329
+DA:80,84593
+DA:87,105738
+DA:88,169179
+DA:92,84593
+DA:94,84593
+LF:11
+LH:11
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationD1Ev
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:52,_ZlsIiER12AssertFailedS1_T_
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:52,_ZlsIlER12AssertFailedS1_T_
+FN:41,_ZN12AssertFailedD1Ev
+FN:67,_Z12assert_eq_fnIliEv8LocationT_T0_
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:59,_Z9assert_fnIN3ept7debtags3TagEEv8LocationT_
+FN:67,_Z12assert_eq_fnISsSsEv8LocationT_T0_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:67,_Z12assert_eq_fnIjjEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,1
+DA:61,1
+DA:62,0
+DA:64,1
+DA:67,3
+DA:69,3
+DA:70,0
+DA:71,0
+DA:75,3
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:61,1
+BA:61,2
+BA:69,1
+BA:69,2
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+LF:26
+LH:6
+end_of_record
+SF:/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_debtags.cpp
+FN:7,_Z41__static_initialization_and_destruction_0ii
+FN:7,_GLOBAL__I_ept_test_generated__home_mornfall_dev_pkg_ept_work_ept_debtags_debtags.cpp
+FN:7,_Z14run_Debtags__5v
+FN:3,_Z14run_Debtags__1v
+FN:4,_Z14run_Debtags__2v
+FN:6,_Z14run_Debtags__4v
+FN:5,_Z14run_Debtags__3v
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,1
+DA:7,4
+BA:7,2
+BA:7,1
+BA:7,2
+BA:7,1
+LF:5
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeIN3ept7debtags3TagEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeIiEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISsEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEEEED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2Ev
+FN:106,_ZNSaIN3ept7debtags3TagEED1Ev
+FN:100,_ZNSaISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2ERKS4_
+FN:98,_ZNSaISt13_Rb_tree_nodeIiEEC2Ev
+FN:106,_ZNSaIiED1Ev
+FN:100,_ZNSaISt13_Rb_tree_nodeIiEEC2ERKS1_
+FN:106,_ZNSaISt4pairIKiN7tagcoll5PatchIiiEEEED1Ev
+FN:100,_ZNSaISt13_Rb_tree_nodeISsEEC2ERKS1_
+FN:104,_ZNSaISsEC1ISt13_Rb_tree_nodeISsEEERKSaIT_E
+FN:106,_ZNSaISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEEEEC2Ev
+FN:106,_ZNSaISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS4_ESaIS4_EEEED1Ev
+FN:104,_ZNSaIN3ept7debtags3TagEEC1ISt13_Rb_tree_nodeIS1_EEERKSaIT_E
+FN:104,_ZNSaIiEC1ISt13_Rb_tree_nodeIiEEERKSaIT_E
+FN:104,_ZNSaISt4pairIKiN7tagcoll5PatchIiiEEEEC1ISt13_Rb_tree_nodeIS4_EEERKSaIT_E
+FN:98,_ZNSaISt13_Rb_tree_nodeISsEEC2Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEEC2Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEEC2Ev
+FN:104,_ZNSaISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEC1ISt13_Rb_tree_nodeIS7_EEERKSaIT_E
+FN:104,_ZNSaISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS4_ESaIS4_EEEEC1ISt13_Rb_tree_nodeIS9_EEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,31
+DA:100,520528
+DA:101,520528
+DA:104,28
+DA:106,62
+DA:118,0
+DA:119,0
+LF:7
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:192,_ZNKSs4_Rep12_M_is_sharedEv
+FN:652,_ZNKSs8capacityEv
+FN:392,_ZNSs10_S_compareEjj
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:1941,_ZNKSs7compareERKSs
+FN:2238,_ZStltIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:870,_ZNSs9push_backEc
+FN:791,_ZNSspLEc
+DA:178,0
+DA:183,0
+DA:184,0
+DA:192,0
+DA:193,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:652,0
+DA:653,0
+DA:686,0
+DA:687,0
+DA:791,0
+DA:793,0
+DA:794,0
+DA:835,0
+DA:838,0
+DA:870,0
+DA:872,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:877,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2162,0
+DA:2165,0
+DA:2238,0
+DA:2239,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:1948,0
+BA:1948,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:90
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algo.h
+FN:5055,_ZSt9set_unionISt23_Rb_tree_const_iteratorIiES1_St15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T_SA_T0_SB_S9_
+FN:5300,_ZSt14set_differenceISt23_Rb_tree_const_iteratorIiES1_St15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T_SA_T0_SB_S9_
+FN:5055,_ZSt9set_unionISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEES4_St15insert_iteratorISt3setIS3_St4lessIS3_ESaIS3_EEEET1_T_SD_T0_SE_SC_
+DA:5055,3
+DA:5074,13
+DA:5076,7
+DA:5078,6
+DA:5079,6
+DA:5081,1
+DA:5083,1
+DA:5084,1
+DA:5088,0
+DA:5089,0
+DA:5090,0
+DA:5092,7
+DA:5095,3
+DA:5300,5
+DA:5317,10
+DA:5318,0
+DA:5320,0
+DA:5321,0
+DA:5322,0
+DA:5324,0
+DA:5325,0
+DA:5328,0
+DA:5329,0
+DA:5331,5
+BA:5074,2
+BA:5074,2
+BA:5074,2
+BA:5074,2
+BA:5074,2
+BA:5074,2
+BA:5074,1
+BA:5074,2
+BA:5074,0
+BA:5074,0
+BA:5074,1
+BA:5074,2
+BA:5076,2
+BA:5076,2
+BA:5076,0
+BA:5076,0
+BA:5081,2
+BA:5081,1
+BA:5081,0
+BA:5081,0
+BA:5317,2
+BA:5317,2
+BA:5317,1
+BA:5317,2
+BA:5317,1
+BA:5317,2
+BA:5318,0
+BA:5318,0
+BA:5324,0
+BA:5324,0
+LF:24
+LH:13
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:188,_ZSt3minIjERKT_S2_S2_
+FN:286,_ZNSt12__miter_baseIN6wibble9SingletonIN3ept7debtags3TagEE14const_iteratorELb0EE3__bES6_
+FN:286,_ZNSt12__miter_baseIN6wibble5EmptyIN3ept7debtags3TagEE14const_iteratorELb0EE3__bES6_
+FN:268,_ZNSt12__niter_baseIN6wibble9SingletonIN3ept7debtags3TagEE14const_iteratorELb0EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt15insert_iteratorISt3setIN3ept7debtags3TagESt4lessIS4_ESaIS4_EEELb0EE3__bES9_
+FN:268,_ZNSt12__niter_baseIN6wibble5EmptyIN3ept7debtags3TagEE14const_iteratorELb0EE3__bES6_
+FN:286,_ZNSt12__miter_baseISt23_Rb_tree_const_iteratorIiELb0EE3__bES1_
+FN:286,_ZNSt12__miter_baseIN6wibble9SingletonIiE14const_iteratorELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIN6wibble5EmptyIiE14const_iteratorELb0EE3__bES3_
+FN:268,_ZNSt12__niter_baseISt23_Rb_tree_const_iteratorIiELb0EE3__bES1_
+FN:268,_ZNSt12__niter_baseISt15insert_iteratorISt3setIiSt4lessIiESaIiEEELb0EE3__bES6_
+FN:268,_ZNSt12__niter_baseIN6wibble9SingletonIiE14const_iteratorELb0EE3__bES3_
+FN:268,_ZNSt12__niter_baseIN6wibble5EmptyIiE14const_iteratorELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEELb0EE3__bES4_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt20forward_iterator_tagE8__copy_mIN6wibble9SingletonIiE14const_iteratorESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEET0_T_SF_SE_
+FN:385,_ZSt13__copy_move_aILb0EN6wibble9SingletonIiE14const_iteratorESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T0_SC_SB_
+FN:430,_ZSt14__copy_move_a2ILb0EN6wibble9SingletonIiE14const_iteratorESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T0_SC_SB_
+FN:456,_ZSt4copyIN6wibble9SingletonIiE14const_iteratorESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET0_T_SC_SB_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt20forward_iterator_tagE8__copy_mIN6wibble5EmptyIiE14const_iteratorESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEET0_T_SF_SE_
+FN:385,_ZSt13__copy_move_aILb0EN6wibble5EmptyIiE14const_iteratorESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T0_SC_SB_
+FN:430,_ZSt14__copy_move_a2ILb0EN6wibble5EmptyIiE14const_iteratorESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T0_SC_SB_
+FN:456,_ZSt4copyIN6wibble5EmptyIiE14const_iteratorESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET0_T_SC_SB_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt26bidirectional_iterator_tagE8__copy_mISt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEET0_T_SD_SC_
+FN:385,_ZSt13__copy_move_aILb0ESt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T0_SA_S9_
+FN:430,_ZSt14__copy_move_a2ILb0ESt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T0_SA_S9_
+FN:456,_ZSt4copyISt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET0_T_SA_S9_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt20forward_iterator_tagE8__copy_mIN6wibble9SingletonIN3ept7debtags3TagEE14const_iteratorESt15insert_iteratorISt3setIS7_St4lessIS7_ESaIS7_EEEEET0_T_SI_SH_
+FN:385,_ZSt13__copy_move_aILb0EN6wibble9SingletonIN3ept7debtags3TagEE14const_iteratorESt15insert_iteratorISt3setIS4_St4lessIS4_ESaIS4_EEEET1_T0_SF_SE_
+FN:430,_ZSt14__copy_move_a2ILb0EN6wibble9SingletonIN3ept7debtags3TagEE14const_iteratorESt15insert_iteratorISt3setIS4_St4lessIS4_ESaIS4_EEEET1_T0_SF_SE_
+FN:456,_ZSt4copyIN6wibble9SingletonIN3ept7debtags3TagEE14const_iteratorESt15insert_iteratorISt3setIS4_St4lessIS4_ESaIS4_EEEET0_T_SF_SE_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt20forward_iterator_tagE8__copy_mIN6wibble5EmptyIN3ept7debtags3TagEE14const_iteratorESt15insert_iteratorISt3setIS7_St4lessIS7_ESaIS7_EEEEET0_T_SI_SH_
+FN:385,_ZSt13__copy_move_aILb0EN6wibble5EmptyIN3ept7debtags3TagEE14const_iteratorESt15insert_iteratorISt3setIS4_St4lessIS4_ESaIS4_EEEET1_T0_SF_SE_
+FN:430,_ZSt14__copy_move_a2ILb0EN6wibble5EmptyIN3ept7debtags3TagEE14const_iteratorESt15insert_iteratorISt3setIS4_St4lessIS4_ESaIS4_EEEET1_T0_SF_SE_
+FN:456,_ZSt4copyIN6wibble5EmptyIN3ept7debtags3TagEE14const_iteratorESt15insert_iteratorISt3setIS4_St4lessIS4_ESaIS4_EEEET0_T_SF_SE_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt26bidirectional_iterator_tagE8__copy_mISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEESt15insert_iteratorISt3setIS6_St4lessIS6_ESaIS6_EEEEET0_T_SG_SF_
+FN:385,_ZSt13__copy_move_aILb0ESt23_Rb_tree_const_iteratorIN3ept7debtags3TagEESt15insert_iteratorISt3setIS3_St4lessIS3_ESaIS3_EEEET1_T0_SD_SC_
+FN:430,_ZSt14__copy_move_a2ILb0ESt23_Rb_tree_const_iteratorIN3ept7debtags3TagEESt15insert_iteratorISt3setIS3_St4lessIS3_ESaIS3_EEEET1_T0_SD_SC_
+FN:456,_ZSt4copyISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEESt15insert_iteratorISt3setIS3_St4lessIS3_ESaIS3_EEEET0_T_SD_SC_
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:268,51
+DA:269,51
+DA:286,42
+DA:287,42
+DA:309,21
+DA:311,41
+DA:312,20
+DA:313,21
+DA:385,21
+DA:393,21
+DA:396,21
+DA:430,21
+DA:435,21
+DA:456,21
+DA:466,21
+BA:193,0
+BA:193,0
+BA:311,2
+BA:311,2
+BA:311,1
+BA:311,2
+BA:311,2
+BA:311,2
+BA:311,2
+BA:311,2
+BA:311,1
+BA:311,2
+BA:311,2
+BA:311,2
+LF:19
+LH:15
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:469,_ZNKSt9_IdentityIN3ept7debtags3TagEEclERKS2_
+FN:229,_ZNKSt4lessIN3ept7debtags3TagEEclERKS2_S5_
+FN:469,_ZNKSt9_IdentityIiEclERKi
+FN:229,_ZNKSt4lessIiEclERKiS2_
+FN:469,_ZNKSt9_IdentityISsEclERKSs
+FN:482,_ZNKSt10_Select1stISt4pairIKiN7tagcoll5PatchIiiEEEEclERKS5_
+FN:482,_ZNKSt10_Select1stISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEclERKS8_
+FN:482,_ZNKSt10_Select1stISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEEEclERKSA_
+FN:229,_ZNKSt4lessISsEclERKSsS2_
+DA:229,0
+DA:230,0
+DA:469,0
+DA:470,0
+DA:482,16
+DA:483,16
+LF:6
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:572,_ZNSt15insert_iteratorISt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EEEC1ERS7_St23_Rb_tree_const_iteratorIS3_E
+FN:645,_ZSt8inserterISt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EESt23_Rb_tree_const_iteratorIS3_EESt15insert_iteratorIT_ERSB_T0_
+FN:572,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEC1ERS4_St23_Rb_tree_const_iteratorIiE
+FN:645,_ZSt8inserterISt3setIiSt4lessIiESaIiEESt23_Rb_tree_const_iteratorIiEESt15insert_iteratorIT_ERS8_T0_
+FN:618,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEdeEv
+FN:623,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEppEv
+FN:623,_ZNSt15insert_iteratorISt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EEEppEv
+FN:618,_ZNSt15insert_iteratorISt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EEEdeEv
+FN:599,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEaSERKi
+FN:599,_ZNSt15insert_iteratorISt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EEEaSERKS3_
+DA:572,18
+DA:573,18
+DA:599,27
+DA:601,27
+DA:602,27
+DA:603,27
+DA:618,27
+DA:619,27
+DA:623,27
+DA:624,27
+DA:645,18
+DA:648,18
+LF:12
+LH:12
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:111,_ZNSt8iteratorISt20forward_iterator_tagKN3ept7debtags3TagEvPS4_RS4_EC2Ev
+FN:111,_ZNSt8iteratorISt20forward_iterator_tagKSsvPS1_RS1_EC2Ev
+FN:111,_ZNSt8iteratorISt20forward_iterator_tagKivPS1_RS1_EC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,274917
+DA:166,0
+DA:167,0
+LF:3
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_map.h
+FN:389,_ZNKSt3mapISsN7tagcoll5PatchISsN3ept7debtags3TagEEESt4lessISsESaISt4pairIKSsS5_EEE4sizeEv
+FN:384,_ZNKSt3mapISsN7tagcoll5PatchISsN3ept7debtags3TagEEESt4lessISsESaISt4pairIKSsS5_EEE5emptyEv
+FN:284,_ZNKSt3mapISsN7tagcoll5PatchISsN3ept7debtags3TagEEESt4lessISsESaISt4pairIKSsS5_EEE5beginEv
+FN:302,_ZNKSt3mapISsN7tagcoll5PatchISsN3ept7debtags3TagEEESt4lessISsESaISt4pairIKSsS5_EEE3endEv
+FN:293,_ZNSt3mapISsN7tagcoll5PatchISsN3ept7debtags3TagEEESt4lessISsESaISt4pairIKSsS5_EEE3endEv
+FN:275,_ZNSt3mapISsN7tagcoll5PatchISsN3ept7debtags3TagEEESt4lessISsESaISt4pairIKSsS5_EEE5beginEv
+FN:389,_ZNKSt3mapISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EES4_ISsESaISt4pairIKSsS7_EEE4sizeEv
+FN:302,_ZNKSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE3endEv
+FN:284,_ZNKSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE5beginEv
+FN:293,_ZNSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE3endEv
+FN:275,_ZNSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE5beginEv
+FN:629,_ZNKSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE4findERS6_
+FN:614,_ZNSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE4findERS6_
+FN:155,_ZNSt3mapISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EES4_ISsESaISt4pairIKSsS7_EEEC1Ev
+FN:155,_ZNSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEEC2Ev
+FN:155,_ZNSt3mapISsN7tagcoll5PatchISsN3ept7debtags3TagEEESt4lessISsESaISt4pairIKSsS5_EEEC2Ev
+FN:293,_ZNSt3mapISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EES4_ISsESaISt4pairIKSsS7_EEE3endEv
+FN:581,_ZNSt3mapISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EES4_ISsESaISt4pairIKSsS7_EEE5clearEv
+FN:92,_ZNSt3mapISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EES4_ISsESaISt4pairIKSsS7_EEED1Ev
+FN:92,_ZNSt3mapISsN7tagcoll5PatchISsN3ept7debtags3TagEEESt4lessISsESaISt4pairIKSsS5_EEED2Ev
+FN:92,_ZNSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEED2Ev
+FN:614,_ZNSt3mapISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EES4_ISsESaISt4pairIKSsS7_EEE4findERSA_
+FN:614,_ZNSt3mapISsN7tagcoll5PatchISsN3ept7debtags3TagEEESt4lessISsESaISt4pairIKSsS5_EEE4findERS9_
+FN:239,_ZNSt3mapISsN7tagcoll5PatchISsN3ept7debtags3TagEEESt4lessISsESaISt4pairIKSsS5_EEEaSERKSC_
+FN:468,_ZNSt3mapISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EES4_ISsESaISt4pairIKSsS7_EEE6insertERKSB_
+FN:468,_ZNSt3mapISsN7tagcoll5PatchISsN3ept7debtags3TagEEESt4lessISsESaISt4pairIKSsS5_EEE6insertERKSA_
+FN:468,_ZNSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE6insertERKS7_
+DA:92,34
+DA:155,31
+DA:156,31
+DA:239,1
+DA:241,1
+DA:242,1
+DA:275,9
+DA:276,9
+DA:284,15
+DA:285,15
+DA:293,26
+DA:294,26
+DA:302,253777
+DA:303,253777
+DA:384,1
+DA:385,1
+DA:389,6
+DA:390,6
+DA:468,11
+DA:469,11
+DA:581,1
+DA:582,1
+DA:614,17
+DA:615,17
+DA:629,14
+DA:630,14
+LF:26
+LH:26
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEbEC1ERKS4_RKb
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorIiEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIN3ept7debtags3TagEEbEC1ERKS4_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIiEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorISsEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorISsEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKiN7tagcoll5PatchIiiEEEEbEC1ERKS6_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEbEC1ERKS9_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIiES1_EC1ERKS1_S4_
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEEEbEC1ERKSB_RKb
+FN:73,_ZNSt4pairIiSt3setIiSt4lessIiESaIiEEED1Ev
+FN:73,_ZNSt4pairIN6wibble9SingletonIiEESt3setIiSt4lessIiESaIiEEED1Ev
+FN:73,_ZNSt4pairIKiN7tagcoll5PatchIiiEEED1Ev
+FN:73,_ZNSt4pairIiN7tagcoll5PatchIiiEEED1Ev
+FN:73,_ZNSt4pairISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EEED1Ev
+FN:73,_ZNSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS4_ESaIS4_EEED1Ev
+FN:73,_ZNSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEED1Ev
+FN:73,_ZNSt4pairISsN7tagcoll5PatchISsN3ept7debtags3TagEEEED1Ev
+FN:73,_ZNSt4pairISt3setISsSt4lessISsESaISsEES0_IN3ept7debtags3TagES1_IS7_ESaIS7_EEED1Ev
+FN:88,_ZNSt4pairIiSt3setIiSt4lessIiESaIiEEEC1ERKiRKS4_
+FN:218,_ZSt9make_pairIiSt3setIiSt4lessIiESaIiEEESt4pairIT_T0_ES6_S7_
+FN:88,_ZNSt4pairIN6wibble9SingletonIiEESt3setIiSt4lessIiESaIiEEEC1ERKS2_RKS7_
+FN:218,_ZSt9make_pairIN6wibble9SingletonIiEESt3setIiSt4lessIiESaIiEEESt4pairIT_T0_ES9_SA_
+FN:73,_ZNSt4pairIiSt3setIiSt4lessIiESaIiEEEC1ERKS5_
+FN:88,_ZNSt4pairIiN7tagcoll5PatchIiiEEEC1ERKiRKS2_
+FN:218,_ZSt9make_pairIiN7tagcoll5PatchIiiEEESt4pairIT_T0_ES4_S5_
+FN:104,_ZNSt4pairIKiN7tagcoll5PatchIiiEEEC1IiS3_EERKS_IT_T0_E
+FN:73,_ZNSt4pairIKiN7tagcoll5PatchIiiEEEC1ERKS4_
+FN:88,_ZNSt4pairISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EEEC1ERKSsRKS7_
+FN:218,_ZSt9make_pairISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EEESt4pairIT_T0_ES9_SA_
+FN:104,_ZNSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS4_ESaIS4_EEEC1ISsS8_EERKS_IT_T0_E
+FN:73,_ZNSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS4_ESaIS4_EEEC1ERKS9_
+FN:88,_ZNSt4pairISsN7tagcoll5PatchISsN3ept7debtags3TagEEEEC1ERKSsRKS5_
+FN:218,_ZSt9make_pairISsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt4pairIT_T0_ES7_S8_
+FN:104,_ZNSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEC1ISsS6_EERKS_IT_T0_E
+FN:73,_ZNSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEC1ERKS7_
+FN:73,_ZNSt4pairISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EEEC1ERKS8_
+FN:88,_ZNSt4pairISt3setISsSt4lessISsESaISsEES0_IN3ept7debtags3TagES1_IS7_ESaIS7_EEEC1ERKS4_RKSA_
+FN:218,_ZSt9make_pairISt3setISsSt4lessISsESaISsEES0_IN3ept7debtags3TagES1_IS7_ESaIS7_EEESt4pairIT_T0_ESC_SD_
+DA:73,274914
+DA:88,698640
+DA:89,698640
+DA:104,11
+DA:106,11
+DA:218,274875
+DA:219,274875
+LF:7
+LH:7
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:331,_ZNKSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE5emptyEv
+FN:336,_ZNKSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE4sizeEv
+FN:331,_ZNKSt3setISsSt4lessISsESaISsEE5emptyEv
+FN:331,_ZNKSt3setIiSt4lessIiESaIiEE5emptyEv
+FN:336,_ZNKSt3setIiSt4lessIiESaIiEE4sizeEv
+FN:270,_ZNKSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE3endEv
+FN:261,_ZNKSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE5beginEv
+FN:270,_ZNKSt3setIiSt4lessIiESaIiEE3endEv
+FN:261,_ZNKSt3setIiSt4lessIiESaIiEE5beginEv
+FN:507,_ZNKSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE4findERKS2_
+FN:270,_ZNKSt3setISsSt4lessISsESaISsEE3endEv
+FN:141,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EEC1Ev
+FN:141,_ZNSt3setIiSt4lessIiESaIiEEC1Ev
+FN:141,_ZNSt3setISsSt4lessISsESaISsEEC1Ev
+FN:336,_ZNKSt3setISsSt4lessISsESaISsEE4sizeEv
+FN:261,_ZNKSt3setISsSt4lessISsESaISsEE5beginEv
+FN:93,_ZNSt3setIiSt4lessIiESaIiEED1Ev
+FN:471,_ZNSt3setIiSt4lessIiESaIiEE5clearEv
+FN:93,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EED1Ev
+FN:93,_ZNSt3setISsSt4lessISsESaISsEED1Ev
+FN:507,_ZNKSt3setISsSt4lessISsESaISsEE4findERKSs
+FN:193,_ZNSt3setIiSt4lessIiESaIiEEC1ERKS3_
+FN:216,_ZNSt3setIiSt4lessIiESaIiEEaSERKS3_
+FN:216,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EEaSERKS6_
+FN:193,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EEC1ERKS6_
+FN:193,_ZNSt3setISsSt4lessISsESaISsEEC1ERKS3_
+FN:216,_ZNSt3setISsSt4lessISsESaISsEEaSERKS3_
+FN:378,_ZNSt3setIiSt4lessIiESaIiEE6insertERKi
+FN:378,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE6insertERKS2_
+FN:378,_ZNSt3setISsSt4lessISsESaISsEE6insertERKSs
+FN:405,_ZNSt3setIiSt4lessIiESaIiEE6insertESt23_Rb_tree_const_iteratorIiERKi
+FN:405,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE6insertESt23_Rb_tree_const_iteratorIS2_ERKS2_
+FN:446,_ZNSt3setIiSt4lessIiESaIiEE5eraseERKi
+FN:431,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE5eraseESt23_Rb_tree_const_iteratorIS2_E
+FN:431,_ZNSt3setIiSt4lessIiESaIiEE5eraseESt23_Rb_tree_const_iteratorIiE
+DA:93,0
+DA:141,0
+DA:142,0
+DA:193,520528
+DA:194,520528
+DA:216,8
+DA:218,8
+DA:219,8
+DA:261,169226
+DA:262,169226
+DA:270,935675
+DA:271,935675
+DA:331,63452
+DA:332,63452
+DA:336,0
+DA:337,0
+DA:378,423750
+DA:381,423750
+DA:382,423750
+DA:405,27
+DA:406,27
+DA:431,126
+DA:432,126
+DA:446,4
+DA:447,4
+DA:471,0
+DA:472,0
+DA:507,2
+DA:508,2
+LF:29
+LH:22
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:103,_ZNSt18_Rb_tree_node_base10_S_minimumEPS_
+FN:117,_ZNSt18_Rb_tree_node_base10_S_maximumEPS_
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEneERKS9_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEptEv
+FN:289,_ZNKSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEneERKS3_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEptEv
+FN:247,_ZNKSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEdeEv
+FN:176,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEptEv
+FN:452,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEC1ERKSt17_Rb_tree_iteratorIS2_E
+FN:452,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorIiEC1ERKSt17_Rb_tree_iteratorIiE
+FN:289,_ZNKSt23_Rb_tree_const_iteratorIiEneERKS0_
+FN:247,_ZNKSt23_Rb_tree_const_iteratorIiEdeEv
+FN:285,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEeqERKS6_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEptEv
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEneERKS6_
+FN:452,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEeqERKS6_
+FN:176,_ZNKSt17_Rb_tree_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEptEv
+FN:637,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5emptyEv
+FN:641,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE4sizeEv
+FN:637,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5emptyEv
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISsEneERKS0_
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE8_M_beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEeqERKS9_
+FN:641,_ZNKSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE4sizeEv
+FN:637,_ZNKSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE5emptyEv
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE8_M_beginEv
+FN:398,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:463,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorIN3ept7debtags3TagEEC1EPSt13_Rb_tree_nodeIS2_E
+FN:596,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorIN3ept7debtags3TagEEeqERKS3_
+FN:347,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE21_M_get_Node_allocatorEv
+FN:432,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_M_rootEv
+FN:456,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_beginEv
+FN:428,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE10_S_minimumEPSt18_Rb_tree_node_base
+FN:436,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE11_M_leftmostEv
+FN:511,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE10_S_maximumEPSt18_Rb_tree_node_base
+FN:444,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE12_M_rightmostEv
+FN:398,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_S_leftEPSt18_Rb_tree_node_base
+FN:347,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE21_M_get_Node_allocatorEv
+FN:432,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_M_rootEv
+FN:456,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_beginEv
+FN:463,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_M_endEv
+FN:428,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_S_minimumEPSt18_Rb_tree_node_base
+FN:436,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_leftmostEv
+FN:511,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_S_maximumEPSt18_Rb_tree_node_base
+FN:444,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE12_M_rightmostEv
+FN:168,_ZNSt17_Rb_tree_iteratorIiEC1EPSt13_Rb_tree_nodeIiE
+FN:596,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorIiEeqERKS0_
+FN:398,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE13_Rb_tree_implIS9_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:637,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5emptyEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorISsEC1ERKSt17_Rb_tree_iteratorISsE
+FN:398,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPSt18_Rb_tree_node_base
+FN:347,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE21_M_get_Node_allocatorEv
+FN:432,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_rootEv
+FN:456,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:463,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_M_endEv
+FN:428,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_S_minimumEPSt18_Rb_tree_node_base
+FN:436,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_leftmostEv
+FN:511,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_S_maximumEPSt18_Rb_tree_node_base
+FN:444,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE12_M_rightmostEv
+FN:641,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE4sizeEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEC1EPKSt13_Rb_tree_nodeIS8_E
+FN:603,_ZNKSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE5beginEv
+FN:614,_ZNKSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE3endEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEC1EPKSt13_Rb_tree_nodeIS2_E
+FN:614,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE3endEv
+FN:603,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEC1ERKSt17_Rb_tree_iteratorIS5_E
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE13_Rb_tree_implISC_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:432,_ZNKSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE7_M_rootEv
+FN:456,_ZNKSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE8_M_beginEv
+FN:463,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE6_M_endEv
+FN:428,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE10_S_minimumEPSt18_Rb_tree_node_base
+FN:436,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE11_M_leftmostEv
+FN:511,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE10_S_maximumEPSt18_Rb_tree_node_base
+FN:444,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE12_M_rightmostEv
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEC1EPSt13_Rb_tree_nodeIS8_E
+FN:610,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE3endEv
+FN:596,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE5beginEv
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE13_Rb_tree_implISD_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:641,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE4sizeEv
+FN:415,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EE13_M_initializeEv
+FN:471,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_valueEPKSt13_Rb_tree_nodeIS2_E
+FN:475,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_S_keyEPKSt13_Rb_tree_nodeIS2_E
+FN:495,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:491,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_rightEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_S_leftEPKSt18_Rb_tree_node_base
+FN:415,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:491,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_rightEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_S_leftEPKSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_valueEPKSt13_Rb_tree_nodeIiE
+FN:475,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_S_keyEPKSt13_Rb_tree_nodeIiE
+FN:495,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_S_keyEPKSt18_Rb_tree_node_base
+FN:240,_ZNSt23_Rb_tree_const_iteratorIiEC1EPKSt13_Rb_tree_nodeIiE
+FN:614,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE3endEv
+FN:603,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5beginEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEC1EPKSt13_Rb_tree_nodeIS5_E
+FN:614,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE3endEv
+FN:603,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE5beginEv
+FN:456,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_M_beginEv
+FN:467,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorISsEC1EPSt13_Rb_tree_nodeISsE
+FN:596,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISsEeqERKS0_
+FN:415,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:491,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPKSt18_Rb_tree_node_base
+FN:463,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEC1EPSt13_Rb_tree_nodeIS5_E
+FN:610,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE3endEv
+FN:596,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE5beginEv
+FN:467,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_M_endEv
+FN:970,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE14_M_lower_boundEPKSt13_Rb_tree_nodeIS2_ESC_RKS2_
+FN:285,_ZNKSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEeqERKS3_
+FN:1403,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE4findERKS2_
+FN:285,_ZNKSt23_Rb_tree_const_iteratorIiEeqERKS0_
+FN:240,_ZNSt23_Rb_tree_const_iteratorISsEC1EPKSt13_Rb_tree_nodeISsE
+FN:614,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE3endEv
+FN:467,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_M_endEv
+FN:285,_ZNKSt23_Rb_tree_const_iteratorISsEeqERKS0_
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE21_M_get_Node_allocatorEv
+FN:491,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE8_S_rightEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE7_S_leftEPKSt18_Rb_tree_node_base
+FN:415,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE13_Rb_tree_implISD_Lb0EE13_M_initializeEv
+FN:463,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE6_M_endEv
+FN:436,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE11_M_leftmostEv
+FN:428,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE7_M_rootEv
+FN:444,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE12_M_rightmostEv
+FN:403,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EEC1Ev
+FN:408,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EEC1ERKS6_RKSaISt13_Rb_tree_nodeIS2_EE
+FN:403,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEEC1Ev
+FN:408,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EEC1ERKS3_RKSaISt13_Rb_tree_nodeIiEE
+FN:347,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE21_M_get_Node_allocatorEv
+FN:483,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE7_S_leftEPKSt18_Rb_tree_node_base
+FN:491,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_S_rightEPKSt18_Rb_tree_node_base
+FN:495,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt13_Rb_tree_nodeISsE
+FN:475,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt13_Rb_tree_nodeISsE
+FN:495,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt18_Rb_tree_node_base
+FN:408,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EEC1ERKS3_RKSaISt13_Rb_tree_nodeISsEE
+FN:415,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE13_Rb_tree_implIS9_Lb0EE13_M_initializeEv
+FN:471,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_S_valueEPKSt13_Rb_tree_nodeIS5_E
+FN:475,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE6_S_keyEPKSt13_Rb_tree_nodeIS5_E
+FN:970,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE14_M_lower_boundEPKSt13_Rb_tree_nodeIS5_ESF_RS1_
+FN:1403,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE4findERS1_
+FN:954,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE14_M_lower_boundEPSt13_Rb_tree_nodeIS5_ESE_RS1_
+FN:1390,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE4findERS1_
+FN:351,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13get_allocatorEv
+FN:415,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE13_Rb_tree_implISC_Lb0EE13_M_initializeEv
+FN:495,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE8_S_valueEPKSt13_Rb_tree_nodeIS8_E
+FN:475,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE6_S_keyEPKSt13_Rb_tree_nodeIS8_E
+FN:403,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE13_Rb_tree_implISD_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EEC1Ev
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE21_M_get_Node_allocatorEv
+FN:351,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE13get_allocatorEv
+FN:403,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEC1Ev
+FN:954,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE14_M_lower_boundEPSt13_Rb_tree_nodeIiES8_RKi
+FN:986,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE14_M_upper_boundEPSt13_Rb_tree_nodeIiES8_RKi
+FN:1019,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11equal_rangeERKi
+FN:610,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE3endEv
+FN:214,_ZNKSt17_Rb_tree_iteratorIiEneERKS0_
+FN:403,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE13_Rb_tree_implIS9_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EEC1Ev
+FN:641,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE4sizeEv
+FN:403,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE13_Rb_tree_implISC_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EEC1Ev
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE13get_allocatorEv
+FN:247,_ZNKSt23_Rb_tree_const_iteratorISsEdeEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEEEeqERKSB_
+FN:176,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEEEptEv
+FN:603,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEEEC1EPSt13_Rb_tree_nodeISA_E
+FN:610,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE3endEv
+FN:596,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE5beginEv
+FN:495,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE8_S_valueEPKSt13_Rb_tree_nodeISA_E
+FN:475,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE6_S_keyEPKSt13_Rb_tree_nodeISA_E
+FN:360,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_put_nodeEPSt13_Rb_tree_nodeIiE
+FN:388,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE15_M_destroy_nodeEPSt13_Rb_tree_nodeIiE
+FN:936,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_eraseEPSt13_Rb_tree_nodeIiE
+FN:584,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEED1Ev
+FN:695,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5clearEv
+FN:360,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:388,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:936,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E
+FN:695,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5clearEv
+FN:584,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EED1Ev
+FN:360,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_put_nodeEPSt13_Rb_tree_nodeISsE
+FN:388,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE15_M_destroy_nodeEPSt13_Rb_tree_nodeISsE
+FN:936,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_eraseEPSt13_Rb_tree_nodeISsE
+FN:584,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEED1Ev
+FN:695,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5clearEv
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE11_M_put_nodeEPSt13_Rb_tree_nodeISA_E
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeISA_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE8_M_eraseEPSt13_Rb_tree_nodeISA_E
+FN:695,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE5clearEv
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EED1Ev
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS8_E
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS8_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE8_M_eraseEPSt13_Rb_tree_nodeIS8_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EED1Ev
+FN:695,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE5clearEv
+FN:360,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS5_E
+FN:388,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS5_E
+FN:936,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_M_eraseEPSt13_Rb_tree_nodeIS5_E
+FN:584,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EED1Ev
+FN:954,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE14_M_lower_boundEPSt13_Rb_tree_nodeISA_ESI_RS1_
+FN:1390,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE4findERS1_
+FN:954,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE14_M_lower_boundEPSt13_Rb_tree_nodeIS8_ESH_RS1_
+FN:1390,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE4findERS1_
+FN:970,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE14_M_lower_boundEPKSt13_Rb_tree_nodeISsES9_RKSs
+FN:1403,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE4findERKSs
+FN:356,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE14_M_create_nodeERKi
+FN:378,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_M_clone_nodeEPKSt13_Rb_tree_nodeIiE
+FN:900,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_M_copyEPKSt13_Rb_tree_nodeIiEPS7_
+FN:568,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEEC1ERKS5_
+FN:824,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEEaSERKS5_
+FN:356,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE14_M_create_nodeERKS2_
+FN:378,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_M_clone_nodeEPKSt13_Rb_tree_nodeIS2_E
+FN:900,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_M_copyEPKSt13_Rb_tree_nodeIS2_EPSA_
+FN:824,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EEaSERKS8_
+FN:568,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EEC1ERKS8_
+FN:356,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE14_M_create_nodeERKSs
+FN:378,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_M_clone_nodeEPKSt13_Rb_tree_nodeISsE
+FN:900,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_copyEPKSt13_Rb_tree_nodeISsEPS7_
+FN:568,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEC1ERKS5_
+FN:824,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEaSERKS5_
+FN:356,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE14_M_create_nodeERKSA_
+FN:356,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE14_M_create_nodeERKS8_
+FN:378,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE13_M_clone_nodeEPKSt13_Rb_tree_nodeIS8_E
+FN:900,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE7_M_copyEPKSt13_Rb_tree_nodeIS8_EPSG_
+FN:824,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EEaSERKSE_
+FN:356,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE14_M_create_nodeERKS5_
+FN:270,_ZNSt23_Rb_tree_const_iteratorIiEmmEv
+FN:270,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEmmEv
+FN:846,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_M_insert_EPKSt18_Rb_tree_node_baseS8_RKi
+FN:846,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE10_M_insert_EPKSt18_Rb_tree_node_baseSB_RKS2_
+FN:846,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_M_insert_EPKSt18_Rb_tree_node_baseS8_RKSs
+FN:846,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE10_M_insert_EPKSt18_Rb_tree_node_baseSI_RKSA_
+FN:846,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE10_M_insert_EPKSt18_Rb_tree_node_baseSH_RKS8_
+FN:846,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE10_M_insert_EPKSt18_Rb_tree_node_baseSE_RKS5_
+FN:195,_ZNSt17_Rb_tree_iteratorIiEmmEv
+FN:1133,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE16_M_insert_uniqueERKi
+FN:195,_ZNSt17_Rb_tree_iteratorIN3ept7debtags3TagEEmmEv
+FN:1133,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE16_M_insert_uniqueERKS2_
+FN:195,_ZNSt17_Rb_tree_iteratorISsEmmEv
+FN:1133,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE16_M_insert_uniqueERKSs
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEEEmmEv
+FN:1133,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE16_M_insert_uniqueERKSA_
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEmmEv
+FN:1133,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE16_M_insert_uniqueERKS8_
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEmmEv
+FN:1133,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE16_M_insert_uniqueERKS5_
+FN:255,_ZNSt23_Rb_tree_const_iteratorIiEppEv
+FN:1178,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE17_M_insert_unique_ESt23_Rb_tree_const_iteratorIiERKi
+FN:262,_ZNSt23_Rb_tree_const_iteratorIiEppEi
+FN:255,_ZNSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEppEv
+FN:255,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEppEv
+FN:1178,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE17_M_insert_unique_ESt23_Rb_tree_const_iteratorIS2_ERKS2_
+FN:255,_ZNSt23_Rb_tree_const_iteratorISsEppEv
+FN:255,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEppEv
+FN:262,_ZNSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEppEi
+FN:187,_ZNSt17_Rb_tree_iteratorIiEppEi
+FN:1313,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5eraseESt17_Rb_tree_iteratorIiE
+FN:1353,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5eraseESt17_Rb_tree_iteratorIiES7_
+FN:1341,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5eraseERKi
+FN:1327,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5eraseESt23_Rb_tree_const_iteratorIS2_E
+FN:1327,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5eraseESt23_Rb_tree_const_iteratorIiE
+DA:103,0
+DA:105,0
+DA:106,0
+DA:117,0
+DA:119,0
+DA:120,0
+DA:168,113
+DA:169,113
+DA:176,10
+DA:177,10
+DA:187,0
+DA:189,0
+DA:190,0
+DA:195,0
+DA:197,0
+DA:198,0
+DA:210,45
+DA:211,45
+DA:214,1
+DA:215,1
+DA:240,1358734
+DA:241,1358734
+DA:243,14
+DA:244,14
+DA:247,1062874
+DA:248,1062874
+DA:251,39
+DA:252,39
+DA:255,763482
+DA:257,763482
+DA:258,763482
+DA:262,3
+DA:264,3
+DA:265,3
+DA:270,0
+DA:272,0
+DA:273,0
+DA:285,169325
+DA:286,169325
+DA:289,935604
+DA:290,935604
+DA:347,31
+DA:348,31
+DA:351,28
+DA:352,28
+DA:356,14
+DA:357,14
+DA:360,14
+DA:361,14
+DA:364,14
+DA:366,14
+DA:368,14
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,14
+DA:378,2233485
+DA:380,2233485
+DA:381,2233485
+DA:382,2233485
+DA:383,2233485
+DA:384,2233485
+DA:388,14
+DA:390,14
+DA:391,14
+DA:392,14
+DA:398,34
+DA:403,31
+DA:405,31
+DA:406,31
+DA:408,520528
+DA:410,520528
+DA:411,520528
+DA:415,34
+DA:417,34
+DA:418,34
+DA:419,34
+DA:420,34
+DA:421,34
+DA:428,1429894
+DA:429,1429894
+DA:432,520537
+DA:433,520537
+DA:436,476640
+DA:437,476640
+DA:444,1347172
+DA:445,1347172
+DA:452,64
+DA:453,64
+DA:456,307556
+DA:459,307556
+DA:463,46
+DA:464,46
+DA:467,16
+DA:468,16
+DA:471,8
+DA:472,8
+DA:475,8
+DA:476,8
+DA:479,20
+DA:480,20
+DA:483,1388664
+DA:484,1388664
+DA:487,14
+DA:488,14
+DA:491,601300
+DA:492,601300
+DA:495,8
+DA:496,8
+DA:499,8
+DA:500,8
+DA:503,476627
+DA:504,476627
+DA:511,476627
+DA:512,476627
+DA:562,31
+DA:568,520528
+DA:569,520528
+DA:571,520528
+DA:573,476623
+DA:574,476623
+DA:575,476623
+DA:576,476623
+DA:578,520528
+DA:584,34
+DA:585,34
+DA:596,20
+DA:599,20
+DA:603,169241
+DA:606,169241
+DA:610,58
+DA:611,58
+DA:614,1189479
+DA:617,1189479
+DA:637,63453
+DA:638,63453
+DA:641,6
+DA:642,6
+DA:695,13
+DA:697,13
+DA:698,13
+DA:699,13
+DA:700,13
+DA:701,13
+DA:702,13
+DA:824,9
+DA:826,9
+DA:829,9
+DA:830,9
+DA:831,9
+DA:833,4
+DA:834,4
+DA:835,4
+DA:836,4
+DA:839,9
+DA:846,11
+DA:850,11
+DA:852,11
+DA:854,11
+DA:857,11
+DA:858,11
+DA:900,1454940
+DA:903,1454940
+DA:904,1454940
+DA:908,1454940
+DA:909,882727
+DA:910,1454940
+DA:911,1454940
+DA:913,3688425
+DA:915,778545
+DA:916,778545
+DA:917,778545
+DA:918,778545
+DA:919,95586
+DA:920,778545
+DA:921,778545
+DA:924,0
+DA:926,0
+DA:927,0
+DA:929,1454940
+DA:936,50
+DA:939,114
+DA:941,14
+DA:942,14
+DA:943,14
+DA:944,14
+DA:946,50
+DA:954,17
+DA:956,40
+DA:957,6
+DA:958,6
+DA:960,0
+DA:961,17
+DA:970,16
+DA:972,41
+DA:973,9
+DA:974,6
+DA:976,3
+DA:977,16
+DA:986,0
+DA:988,0
+DA:989,0
+DA:990,0
+DA:992,0
+DA:993,0
+DA:1019,4
+DA:1021,4
+DA:1022,4
+DA:1023,9
+DA:1025,1
+DA:1026,0
+DA:1027,1
+DA:1028,1
+DA:1031,0
+DA:1032,0
+DA:1033,0
+DA:1036,0
+DA:1040,4
+DA:1133,11
+DA:1135,11
+DA:1136,11
+DA:1137,11
+DA:1138,22
+DA:1140,0
+DA:1141,0
+DA:1142,0
+DA:1144,11
+DA:1145,11
+DA:1147,11
+DA:1148,11
+DA:1150,0
+DA:1152,0
+DA:1153,0
+DA:1154,0
+DA:1178,540957
+DA:1181,540957
+DA:1183,540957
+DA:1186,435266
+DA:1188,105691
+DA:1190,0
+DA:1194,0
+DA:1195,0
+DA:1196,0
+DA:1197,0
+DA:1200,0
+DA:1201,0
+DA:1204,0
+DA:1207,0
+DA:1209,0
+DA:1213,0
+DA:1214,0
+DA:1215,0
+DA:1216,0
+DA:1219,0
+DA:1220,0
+DA:1222,0
+DA:1225,0
+DA:1230,0
+DA:1313,0
+DA:1318,0
+DA:1319,0
+DA:1320,0
+DA:1321,0
+DA:1327,126
+DA:1332,126
+DA:1333,126
+DA:1334,126
+DA:1335,126
+DA:1341,4
+DA:1343,4
+DA:1344,4
+DA:1345,4
+DA:1346,4
+DA:1353,4
+DA:1355,4
+DA:1356,3
+DA:1358,2
+DA:1359,0
+DA:1360,4
+DA:1390,17
+DA:1392,17
+DA:1395,17
+DA:1403,16
+DA:1405,16
+DA:1408,16
+BA:105,0
+BA:105,0
+BA:119,0
+BA:119,0
+BA:571,2
+BA:571,2
+BA:571,2
+BA:571,2
+BA:571,0
+BA:571,0
+BA:826,2
+BA:826,1
+BA:826,2
+BA:826,1
+BA:826,0
+BA:826,0
+BA:826,2
+BA:826,1
+BA:831,2
+BA:831,2
+BA:831,2
+BA:831,2
+BA:831,0
+BA:831,0
+BA:831,2
+BA:831,1
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,2
+BA:850,1
+BA:850,1
+BA:850,2
+BA:850,0
+BA:850,0
+BA:850,2
+BA:850,1
+BA:850,1
+BA:850,2
+BA:850,0
+BA:850,0
+BA:850,2
+BA:850,1
+BA:850,1
+BA:850,2
+BA:850,0
+BA:850,0
+BA:908,2
+BA:908,2
+BA:908,2
+BA:908,2
+BA:908,0
+BA:908,0
+BA:908,1
+BA:908,2
+BA:913,2
+BA:913,2
+BA:913,2
+BA:913,2
+BA:913,0
+BA:913,0
+BA:913,1
+BA:913,2
+BA:918,2
+BA:918,2
+BA:918,2
+BA:918,2
+BA:918,0
+BA:918,0
+BA:918,0
+BA:918,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:956,2
+BA:956,2
+BA:956,0
+BA:956,0
+BA:956,1
+BA:956,2
+BA:956,1
+BA:956,2
+BA:957,2
+BA:957,1
+BA:957,0
+BA:957,0
+BA:957,0
+BA:957,0
+BA:957,0
+BA:957,0
+BA:972,0
+BA:972,0
+BA:972,2
+BA:972,2
+BA:972,2
+BA:972,2
+BA:973,0
+BA:973,0
+BA:973,2
+BA:973,1
+BA:973,2
+BA:973,2
+BA:988,0
+BA:988,0
+BA:989,0
+BA:989,0
+BA:1023,2
+BA:1023,2
+BA:1025,1
+BA:1025,2
+BA:1027,2
+BA:1027,1
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1138,1
+BA:1138,2
+BA:1138,1
+BA:1138,2
+BA:1138,1
+BA:1138,2
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1145,2
+BA:1145,1
+BA:1145,2
+BA:1145,1
+BA:1145,2
+BA:1145,1
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1147,2
+BA:1147,1
+BA:1147,2
+BA:1147,1
+BA:1147,2
+BA:1147,1
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1181,2
+BA:1181,1
+BA:1181,2
+BA:1181,1
+BA:1183,2
+BA:1183,2
+BA:1183,2
+BA:1183,1
+BA:1183,2
+BA:1183,2
+BA:1183,2
+BA:1183,2
+BA:1183,2
+BA:1183,1
+BA:1183,2
+BA:1183,2
+BA:1190,0
+BA:1190,0
+BA:1190,0
+BA:1190,0
+BA:1195,0
+BA:1195,0
+BA:1195,0
+BA:1195,0
+BA:1197,0
+BA:1197,0
+BA:1197,0
+BA:1197,0
+BA:1200,0
+BA:1200,0
+BA:1200,0
+BA:1200,0
+BA:1209,0
+BA:1209,0
+BA:1209,0
+BA:1209,0
+BA:1214,0
+BA:1214,0
+BA:1214,0
+BA:1214,0
+BA:1216,0
+BA:1216,0
+BA:1216,0
+BA:1216,0
+BA:1219,0
+BA:1219,0
+BA:1219,0
+BA:1219,0
+BA:1355,2
+BA:1355,1
+BA:1355,2
+BA:1355,2
+BA:1355,2
+BA:1355,2
+BA:1358,1
+BA:1358,2
+BA:1395,2
+BA:1395,2
+BA:1395,1
+BA:1395,2
+BA:1395,1
+BA:1395,2
+BA:1395,0
+BA:1395,0
+BA:1395,1
+BA:1395,2
+BA:1395,0
+BA:1395,0
+BA:1408,0
+BA:1408,0
+BA:1408,0
+BA:1408,0
+BA:1408,2
+BA:1408,2
+BA:1408,1
+BA:1408,2
+BA:1408,2
+BA:1408,1
+BA:1408,1
+BA:1408,2
+LF:285
+LH:220
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS7_ESaIS7_EEEEED2Ev
+FN:118,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEE7destroyEPS3_
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:118,_ZN9__gnu_cxx13new_allocatorIiE7destroyEPi
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEED2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEE9constructEPS3_RKS3_
+FN:71,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2ERKS6_
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIiED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEEC2ERKS3_
+FN:107,_ZN9__gnu_cxx13new_allocatorIiE9constructEPiRKi
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKiN7tagcoll5PatchIiiEEEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEEC2ERKS3_
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS7_ESaIS7_EEEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS6_ESaIS6_EEEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIiEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKiN7tagcoll5PatchIiiEEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS6_ESaIS6_EEEEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS7_ESaIS7_EEEEE8max_sizeEv
+FN:118,_ZN9__gnu_cxx13new_allocatorISsE7destroyEPSs
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE10deallocateEPS2_j
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKiN7tagcoll5PatchIiiEEEE7destroyEPS6_
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE10deallocateEPS5_j
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS6_ESaIS6_EEEE7destroyEPSB_
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEE7destroyEPS9_
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE10deallocateEPS2_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS7_ESaIS7_EEEEE10deallocateEPSD_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEE10deallocateEPSB_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEE10deallocateEPS8_j
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE8allocateEjPKv
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKiN7tagcoll5PatchIiiEEEE9constructEPS6_RKS6_
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE8allocateEjPKv
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS6_ESaIS6_EEEE9constructEPSB_RKSB_
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEE9constructEPS9_RKS9_
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS7_ESaIS7_EEEEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEE8allocateEjPKv
+DA:69,59
+DA:71,520528
+DA:76,62
+DA:87,14
+DA:89,14
+DA:90,0
+DA:92,14
+DA:97,14
+DA:98,14
+DA:101,14
+DA:102,14
+DA:107,14
+DA:108,14
+DA:118,14
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,1
+BA:89,2
+BA:89,1
+BA:89,2
+BA:89,1
+BA:89,2
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,2
+BA:108,1
+BA:108,2
+BA:108,1
+BA:108,2
+BA:108,1
+LF:14
+LH:13
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:169,_ZNSolsEl
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:195,_ZNSolsEj
+DA:95,0
+DA:112,0
+DA:117,0
+DA:169,0
+DA:170,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/base.h
+FN:48,_ZN7tagcoll4coll18ReadonlyCollectionINS0_6SimpleISsN3ept7debtags3TagEEEEC2Ev
+FN:273,_ZN7tagcoll4coll10CollectionINS0_6SimpleISsN3ept7debtags3TagEEEEC2Ev
+FN:313,_ZN7tagcoll4coll8InserterINS0_6SimpleISsN3ept7debtags3TagEEEEC1ERS6_
+FN:324,_ZN7tagcoll4coll8inserterINS0_6SimpleISsN3ept7debtags3TagEEEEENS0_8InserterIT_EERS8_
+FN:49,_ZNK7tagcoll4coll18ReadonlyCollectionINS0_12IntDiskIndexEE4selfEv
+FN:49,_ZNK7tagcoll4coll18ReadonlyCollectionINS0_7PatchedINS0_12IntDiskIndexEEEE4selfEv
+FN:316,_ZN7tagcoll4coll8InserterINS0_6SimpleISsN3ept7debtags3TagEEEEaSISt3setISsSt4lessISsESaISsEES9_IS5_SA_IS5_ESaIS5_EEEERS7_RKSt4pairIT_T0_E
+FN:145,_ZNK7tagcoll4coll18ReadonlyCollectionINS0_7PatchedINS0_12IntDiskIndexEEEE18getItemsHavingTagsISt3setIiSt4lessIiESaIiEEEESB_RKT_
+DA:48,2
+DA:49,42308
+DA:145,2
+DA:273,2
+DA:313,3
+DA:316,1
+DA:318,1
+DA:319,1
+DA:324,3
+DA:326,3
+LF:10
+LH:10
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/base.tcc
+FN:63,_ZNK7tagcoll4coll18ReadonlyCollectionINS0_7PatchedINS0_12IntDiskIndexEEEE14getTagsOfItemsISt3setIiSt4lessIiESaIiEEEESB_RKT_
+FN:136,_ZNK7tagcoll4coll18ReadonlyCollectionINS0_12IntDiskIndexEE6outputIN3ept7debtags8IntToPkgINS0_8InserterINS0_6SimpleISsNS6_3TagEEEEEEEEEvT_
+FN:136,_ZNK7tagcoll4coll18ReadonlyCollectionINS0_7PatchedINS0_12IntDiskIndexEEEE6outputIN3ept7debtags8IntToPkgINS0_8InserterINS0_6SimpleISsNS8_3TagEEEEEEEEEvT_
+FN:136,_ZNK7tagcoll4coll18ReadonlyCollectionINS0_12IntDiskIndexEE6outputIN3ept7debtags8IntToPkgINS_6stream12CountingSinkIiEEEEEEvT_
+FN:136,_ZNK7tagcoll4coll18ReadonlyCollectionINS0_7PatchedINS0_12IntDiskIndexEEEE6outputIN3ept7debtags8IntToPkgINS_6stream12CountingSinkIiEEEEEEvT_
+DA:63,1
+DA:66,1
+DA:67,2
+DA:69,1
+DA:70,0
+DA:77,2
+DA:78,0
+DA:80,2
+DA:81,2
+DA:83,9
+DA:84,7
+DA:86,2
+DA:136,4
+DA:138,42294
+DA:141,42290
+DA:142,42294
+DA:144,4
+BA:67,2
+BA:67,2
+BA:77,1
+BA:77,2
+BA:83,2
+BA:83,2
+BA:138,1
+BA:138,2
+BA:138,1
+BA:138,2
+BA:138,2
+BA:138,2
+BA:138,2
+BA:138,2
+LF:17
+LH:15
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/intdiskindex.h
+FN:74,_ZN7tagcoll4coll12IntDiskIndex14const_iteratorC1ERKS1_i
+FN:77,_ZN7tagcoll4coll12IntDiskIndex14const_iteratorC1ERKS1_
+FN:98,_ZNK7tagcoll4coll12IntDiskIndex14const_iteratoreqERKS2_
+FN:102,_ZNK7tagcoll4coll12IntDiskIndex14const_iteratorneERKS2_
+FN:107,_ZNK7tagcoll4coll12IntDiskIndex5beginEv
+FN:108,_ZNK7tagcoll4coll12IntDiskIndex3endEv
+FN:157,_ZNK7tagcoll4coll12IntDiskIndex14getCardinalityERKi
+FN:79,_ZN7tagcoll4coll12IntDiskIndex14const_iteratorD1Ev
+FN:92,_ZN7tagcoll4coll12IntDiskIndex14const_iteratorppEv
+FN:81,_ZNK7tagcoll4coll12IntDiskIndex14const_iteratordeEv
+FN:85,_ZNK7tagcoll4coll12IntDiskIndex14const_iteratorptEv
+DA:74,8
+DA:75,8
+DA:77,274893
+DA:78,274893
+DA:79,528661
+DA:81,105725
+DA:83,105725
+DA:85,42290
+DA:87,42290
+DA:88,21145
+DA:89,42290
+DA:92,105725
+DA:94,105725
+DA:95,105725
+DA:96,105725
+DA:98,169161
+DA:100,169161
+DA:102,105732
+DA:104,105732
+DA:107,8
+DA:108,274893
+DA:157,0
+DA:159,0
+BA:79,1
+BA:79,2
+BA:79,0
+BA:79,0
+BA:87,2
+BA:87,2
+BA:95,2
+BA:95,2
+BA:95,2
+BA:95,1
+LF:23
+LH:21
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/patched.h
+FN:153,_ZNK7tagcoll4coll7PatchedINS0_12IntDiskIndexEE14const_iteratoreqERKS4_
+FN:157,_ZNK7tagcoll4coll7PatchedINS0_12IntDiskIndexEE14const_iteratorneERKS4_
+FN:96,_ZN7tagcoll4coll7PatchedINS0_12IntDiskIndexEE14const_iteratorC1ERKS3_RKNS2_14const_iteratorERKSt23_Rb_tree_const_iteratorISt4pairIKiNS_5PatchIiiEEEE
+FN:165,_ZNK7tagcoll4coll7PatchedINS0_12IntDiskIndexEE3endEv
+FN:164,_ZNK7tagcoll4coll7PatchedINS0_12IntDiskIndexEE5beginEv
+FN:100,_ZN7tagcoll4coll7PatchedINS0_12IntDiskIndexEE14const_iteratorD1Ev
+FN:51,_ZN7tagcoll4coll7PatchedINS0_12IntDiskIndexEED1Ev
+FN:205,_ZNK7tagcoll4coll7PatchedINS0_12IntDiskIndexEE13getTagsOfItemERKi
+FN:105,_ZNK7tagcoll4coll7PatchedINS0_12IntDiskIndexEE14const_iteratordeEv
+FN:123,_ZNK7tagcoll4coll7PatchedINS0_12IntDiskIndexEE14const_iteratorptEv
+FN:129,_ZN7tagcoll4coll7PatchedINS0_12IntDiskIndexEE14const_iteratorppEv
+FN:215,_ZNK7tagcoll4coll7PatchedINS0_12IntDiskIndexEE10getAllTagsEv
+FN:201,_ZN7tagcoll4coll7PatchedINS0_12IntDiskIndexEE10addChangesERKNS_9PatchListIiiEE
+FN:221,_ZN7tagcoll4coll7PatchedINS0_12IntDiskIndexEE11applyChangeERKNS_9PatchListIiiEE
+FN:209,_ZNK7tagcoll4coll7PatchedINS0_12IntDiskIndexEE17getItemsHavingTagERKi
+DA:51,10
+DA:96,84592
+DA:97,84592
+DA:100,148035
+DA:102,148035
+DA:103,0
+DA:104,148035
+DA:105,84580
+DA:107,84580
+DA:108,0
+DA:110,84580
+DA:111,0
+DA:112,84580
+DA:113,84580
+DA:114,0
+DA:115,0
+DA:116,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:121,0
+DA:123,211450
+DA:125,211450
+DA:126,126870
+DA:127,84580
+DA:129,84580
+DA:131,84580
+DA:133,84580
+DA:134,84580
+DA:135,0
+DA:136,0
+DA:137,0
+DA:138,0
+DA:139,0
+DA:140,0
+DA:143,0
+DA:144,0
+DA:146,84580
+DA:148,84580
+DA:149,84580
+DA:151,84580
+DA:153,1
+DA:155,1
+DA:157,84585
+DA:159,84585
+DA:164,6
+DA:165,84586
+DA:201,2
+DA:205,5
+DA:207,5
+DA:209,9
+DA:211,9
+DA:215,1
+DA:221,2
+BA:102,1
+BA:102,2
+BA:103,0
+BA:103,0
+BA:107,1
+BA:107,2
+BA:110,1
+BA:110,2
+BA:110,0
+BA:110,0
+BA:110,2
+BA:110,1
+BA:110,0
+BA:110,0
+BA:110,1
+BA:110,2
+BA:112,2
+BA:112,1
+BA:114,0
+BA:114,0
+BA:116,0
+BA:116,0
+BA:118,0
+BA:118,0
+BA:125,2
+BA:125,2
+BA:131,1
+BA:131,2
+BA:131,0
+BA:131,0
+BA:131,2
+BA:131,1
+BA:131,0
+BA:131,0
+BA:131,2
+BA:131,1
+BA:133,2
+BA:133,1
+BA:135,0
+BA:135,0
+BA:137,0
+BA:137,0
+BA:139,0
+BA:139,0
+BA:146,2
+BA:146,1
+BA:148,2
+BA:148,1
+BA:155,2
+BA:155,1
+BA:155,2
+BA:155,1
+BA:159,2
+BA:159,2
+BA:159,1
+BA:159,2
+LF:54
+LH:36
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/patched.tcc
+DA:78,4
+DA:80,2
+DA:83,2
+DA:85,2
+DA:88,2
+DA:89,2
+DA:90,4
+DA:92,2
+DA:95,2
+DA:97,4
+DA:99,2
+DA:130,1
+DA:131,1
+DA:133,0
+DA:135,0
+DA:136,0
+DA:138,0
+DA:139,0
+BA:78,2
+BA:78,2
+BA:80,2
+BA:80,1
+BA:90,2
+BA:90,2
+BA:92,2
+BA:92,1
+BA:131,1
+BA:131,2
+BA:133,0
+BA:133,0
+BA:136,0
+BA:136,0
+LF:18
+LH:13
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/simple.h
+FN:121,_ZNK7tagcoll4coll6SimpleISsN3ept7debtags3TagEE9itemCountEv
+FN:62,_ZN7tagcoll4coll6SimpleISsN3ept7debtags3TagEEC1Ev
+FN:128,_ZN7tagcoll4coll6SimpleISsN3ept7debtags3TagEE5clearEv
+FN:62,_ZN7tagcoll4coll6SimpleISsN3ept7debtags3TagEED1Ev
+DA:62,4
+DA:121,3
+DA:128,1
+DA:130,1
+DA:131,1
+LF:5
+LH:5
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/simple.tcc
+FN:38,_ZN7tagcoll4coll6SimpleISsN3ept7debtags3TagEE6insertISt3setISsSt4lessISsESaISsEES7_IS4_S8_IS4_ESaIS4_EEEEvRKT_RKT0_
+DA:38,1
+DA:42,1
+DA:43,0
+DA:44,2
+DA:47,1
+DA:48,1
+DA:49,1
+DA:51,0
+DA:186,3
+BA:42,1
+BA:42,2
+BA:44,2
+BA:44,2
+BA:48,2
+BA:48,1
+LF:9
+LH:7
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/diskindex/int.h
+FN:53,_ZNK7tagcoll9diskindex3Int3bufEv
+FN:54,_ZNK7tagcoll9diskindex3Int3ofsEi
+FN:62,_ZNK7tagcoll9diskindex3Int4sizeEv
+FN:61,_ZNK7tagcoll9diskindex3Int4sizeEi
+DA:53,274890
+DA:54,274890
+DA:61,0
+DA:62,274893
+BA:61,0
+BA:61,0
+BA:61,0
+BA:61,0
+BA:62,2
+BA:62,2
+LF:4
+LH:3
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/patch.h
+FN:126,_ZN7tagcoll9PatchListIiiEC1Ev
+FN:126,_ZN7tagcoll9PatchListISsN3ept7debtags3TagEEC1Ev
+FN:49,_ZN7tagcoll5PatchIiiED1Ev
+FN:45,_ZN7tagcoll5PatchIiiEC1ERKi
+FN:49,_ZN7tagcoll5PatchISsN3ept7debtags3TagEED1Ev
+FN:124,_ZN7tagcoll9PatchListISsN3ept7debtags3TagEED1Ev
+FN:124,_ZN7tagcoll9PatchListIiiED1Ev
+FN:44,_ZN7tagcoll5PatchIiiEC1ERKS1_
+FN:44,_ZN7tagcoll5PatchISsN3ept7debtags3TagEEC1ERKS4_
+FN:124,_ZN7tagcoll9PatchListISsN3ept7debtags3TagEEaSERKS4_
+FN:83,_ZNK7tagcoll5PatchIiiE5applyERKSt3setIiSt4lessIiESaIiEE
+FN:172,_ZNK7tagcoll9PatchListIiiE5patchERKiRKSt3setIiSt4lessIiESaIiEE
+FN:48,_ZN7tagcoll5PatchISsN3ept7debtags3TagEEC1IN6wibble9SingletonIS3_EENS6_5EmptyIS3_EEEERKSsRKT_RKT0_
+FN:51,_ZN7tagcoll5PatchIiiE3addERKi
+FN:61,_ZN7tagcoll5PatchIiiE6removeERKi
+FN:56,_ZN7tagcoll5PatchISsN3ept7debtags3TagEE3addERKSt3setIS3_St4lessIS3_ESaIS3_EE
+FN:66,_ZN7tagcoll5PatchISsN3ept7debtags3TagEE6removeERKSt3setIS3_St4lessIS3_ESaIS3_EE
+FN:77,_ZN7tagcoll5PatchISsN3ept7debtags3TagEE9mergeWithERKS4_
+FN:141,_ZN7tagcoll9PatchListISsN3ept7debtags3TagEE8addPatchERKNS_5PatchISsS3_EE
+FN:56,_ZN7tagcoll5PatchIiiE3addERKSt3setIiSt4lessIiESaIiEE
+FN:66,_ZN7tagcoll5PatchIiiE6removeERKSt3setIiSt4lessIiESaIiEE
+FN:77,_ZN7tagcoll5PatchIiiE9mergeWithERKS1_
+FN:141,_ZN7tagcoll9PatchListIiiE8addPatchERKNS_5PatchIiiEE
+FN:152,_ZN7tagcoll9PatchListIiiE16addPatchInvertedERKNS_5PatchIiiEE
+FN:158,_ZN7tagcoll9PatchListIiiE16addPatchInvertedERKS1_
+FN:100,_ZN7tagcoll5PatchIiiE15removeRedundantESt3setIiSt4lessIiESaIiEE
+FN:164,_ZN7tagcoll9PatchListIiiE15removeRedundantERKiRKSt3setIiSt4lessIiESaIiEE
+DA:44,43
+DA:45,3
+DA:48,1
+DA:49,51
+DA:51,3
+DA:54,3
+DA:55,3
+DA:56,2
+DA:59,2
+DA:60,2
+DA:61,1
+DA:64,1
+DA:65,1
+DA:66,2
+DA:69,2
+DA:70,2
+DA:77,2
+DA:79,2
+DA:80,2
+DA:81,2
+DA:83,1
+DA:86,1
+DA:100,4
+DA:104,4
+DA:106,4
+DA:107,4
+DA:124,33
+DA:126,29
+DA:141,12
+DA:152,2
+DA:158,2
+DA:164,4
+DA:172,14
+LF:33
+LH:33
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/patch.tcc
+FN:40,_ZN7tagcoll5PatchIiiEC1IN6wibble9SingletonIiEENS3_5EmptyIiEEEERKiRKT_RKT0_
+FN:40,_ZN7tagcoll5PatchIiiEC1IN6wibble5EmptyIiEENS3_9SingletonIiEEEERKiRKT_RKT0_
+DA:40,2
+DA:41,3
+DA:43,3
+DA:44,3
+DA:45,3
+DA:51,12
+DA:52,0
+DA:54,12
+DA:55,12
+DA:56,10
+DA:58,2
+DA:73,2
+DA:74,0
+DA:76,8
+DA:78,2
+DA:79,4
+DA:81,0
+DA:87,4
+DA:89,2
+DA:90,2
+DA:120,4
+DA:121,4
+DA:122,4
+DA:129,14
+DA:130,14
+DA:132,13
+DA:135,1
+BA:51,1
+BA:51,2
+BA:51,0
+BA:51,0
+BA:51,1
+BA:51,2
+BA:51,1
+BA:51,2
+BA:51,0
+BA:51,0
+BA:51,1
+BA:51,2
+BA:55,2
+BA:55,1
+BA:55,2
+BA:55,2
+BA:73,1
+BA:73,2
+BA:73,0
+BA:73,0
+BA:73,1
+BA:73,2
+BA:76,2
+BA:76,2
+BA:79,1
+BA:79,2
+BA:87,2
+BA:87,2
+BA:121,2
+BA:121,1
+BA:130,2
+BA:130,2
+LF:27
+LH:24
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/stream/sink.h
+FN:58,_ZN7tagcoll6stream12CountingSinkIiEC1ERiS3_
+FN:73,_ZN7tagcoll6stream12countingSinkIiEENS0_12CountingSinkIT_EERS3_S5_
+FN:64,_ZN7tagcoll6stream12CountingSinkIiEaSISt3setISsSt4lessISsESaISsEES4_IN3ept7debtags3TagES5_ISB_ESaISB_EEEERS2_RKSt4pairIT_T0_E
+DA:58,2
+DA:59,2
+DA:64,42266
+DA:66,42266
+DA:67,42266
+DA:68,42266
+DA:73,2
+DA:75,2
+LF:8
+LH:8
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/package.h
+FN:25,_ZN3ept4core7package6SourceD1Ev
+FN:28,_ZN3ept4core7package6SourceC1ERNS0_11AptDatabaseE
+FN:95,_ZN3ept4core7package6Source11getInternalILNS1_10PropertyIdE0EEENS1_12PropertyTypeIXT_EE1TEN8pkgCache11PkgIteratorE
+FN:38,_ZN3ept4core7package6Source8getTokenEN8pkgCache11PkgIteratorE
+FN:34,_ZN3ept4core7package6Source11lookupTokenENS_5TokenE
+FN:44,_ZN3ept4core7package6Source6existsENS_5TokenE
+FN:99,_ZN3ept4core7package6Source11getInternalILNS1_10PropertyIdE3EEENS1_12PropertyTypeIXT_EE1TEN8pkgCache11PkgIteratorE
+FN:30,_ZN3ept4core7package6Source12listInternalEv
+DA:25,15
+DA:28,15
+DA:30,3
+DA:31,3
+DA:34,17
+DA:35,17
+DA:38,3777
+DA:39,3777
+DA:40,3777
+DA:41,0
+DA:44,8
+DA:45,8
+DA:46,0
+DA:48,8
+DA:95,3778
+DA:96,3778
+DA:99,3783
+DA:100,3783
+BA:45,1
+BA:45,2
+LF:18
+LH:16
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.h
+DA:86,1
+BA:86,1
+BA:86,2
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/version.h
+FN:22,_ZNK3ept4core7version12InternalList4headEv
+FN:30,_ZNK3ept4core7version12InternalList5emptyEv
+FN:9,_ZN3ept4core7version12InternalListaSERKS2_
+FN:58,_ZN3ept4core7version6SourceD1Ev
+FN:60,_ZN3ept4core7version6SourceC1ERNS0_11AptDatabaseE
+FN:66,_ZN3ept4core7version6Source8getTokenEN8pkgCache11VerIteratorE
+FN:82,_ZN3ept4core7version6Source11getInternalILNS1_10PropertyIdE0EEENS1_12PropertyTypeIXT_EE1TEN8pkgCache11VerIteratorE
+FN:34,_ZN3ept4core7version12InternalList4seekEv
+FN:42,_ZN3ept4core7version12InternalListC1EN8pkgCache11PkgIteratorE
+FN:62,_ZN3ept4core7version6Source12listInternalEv
+FN:15,_ZNK3ept4core7version12InternalList4tailEv
+DA:9,3616
+DA:15,3616
+DA:16,3616
+DA:17,3616
+DA:18,3616
+DA:22,5424
+DA:23,5424
+DA:30,3618
+DA:31,3618
+DA:34,3618
+DA:36,14790
+DA:37,7554
+DA:38,7554
+DA:40,3618
+DA:42,2
+DA:43,2
+DA:45,2
+DA:46,2
+DA:47,2
+DA:58,12
+DA:60,12
+DA:62,2
+DA:63,2
+DA:66,1808
+DA:67,1808
+DA:68,1808
+DA:69,0
+DA:82,3616
+DA:83,3616
+DA:84,3616
+DA:85,7232
+DA:86,0
+BA:36,2
+BA:36,2
+BA:36,2
+BA:36,1
+BA:36,2
+BA:36,2
+LF:32
+LH:30
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt.h
+FN:60,_ZN3ept4core12PackageStatecvjEv
+FN:67,_ZN3ept4core12PackageStateoRERKS1_
+FN:72,_ZN3ept4core12PackageStateC1Ej
+FN:282,_ZN3ept4core11AptDatabase12invalidStateEv
+FN:353,_ZN3ept4core15AptInternalListIN8pkgCache11PkgIteratorEEC1ES3_
+FN:352,_ZNK3ept4core15AptInternalListIN8pkgCache11PkgIteratorEE5emptyEv
+FN:350,_ZNK3ept4core15AptInternalListIN8pkgCache11PkgIteratorEE4headEv
+FN:139,_ZN3ept4core11AptDatabaseC1Ev
+FN:209,_ZN3ept4core11AptDatabase10invalidateEv
+FN:331,_ZN3ept4core11AptDatabaseD1Ev
+FN:28,_ZNK3ept4core12AptException4descEv
+FN:27,_ZN3ept4core12AptExceptionD0Ev
+FN:27,_ZN3ept4core12AptExceptionD1Ev
+FN:32,_ZN3ept4core12AptExceptionC1ERKSs
+FN:164,_ZN3ept4core11AptDatabase9openCacheEv
+FN:113,_ZN3ept4core11AptDatabase5cacheEv
+FN:252,_ZN3ept4core11AptDatabase13lookupPackageENS_5TokenE
+FN:244,_ZN3ept4core11AptDatabase16installedVersionEN8pkgCache11PkgIteratorE
+FN:125,_ZN3ept4core11AptDatabase6policyEv
+FN:237,_ZN3ept4core11AptDatabase16candidateVersionEN8pkgCache11PkgIteratorE
+FN:227,_ZN3ept4core11AptDatabase16candidateVersionENS_5TokenE
+FN:256,_ZN3ept4core11AptDatabase13lookupVersionENS_5TokenE
+FN:325,_ZN3ept4core11AptDatabase8validateENS_5TokenE
+FN:158,_ZN3ept4core11AptDatabase9openStateEv
+FN:119,_ZN3ept4core11AptDatabase5stateEv
+FN:286,_ZN3ept4core11AptDatabase12packageStateEN8pkgCache11PkgIteratorE
+FN:318,_ZN3ept4core11AptDatabase12packageStateENS_5TokenE
+FN:345,_ZNK3ept4core15AptInternalListIN8pkgCache11PkgIteratorEE4tailEv
+DA:27,0
+DA:28,0
+DA:29,0
+DA:32,0
+DA:33,0
+DA:34,0
+DA:35,0
+DA:36,0
+DA:37,0
+DA:39,0
+DA:60,3786
+DA:67,5218
+DA:68,5218
+DA:69,5218
+DA:72,9003
+DA:73,9003
+DA:74,9003
+DA:113,5093
+DA:114,5093
+DA:115,20
+DA:116,5093
+DA:119,3793
+DA:120,3793
+DA:121,5
+DA:122,3793
+DA:125,1436
+DA:126,1436
+DA:127,0
+DA:128,1436
+DA:139,0
+DA:140,0
+DA:141,0
+DA:142,0
+DA:143,0
+DA:144,0
+DA:145,0
+DA:146,0
+DA:158,5
+DA:159,5
+DA:160,5
+DA:161,5
+DA:162,5
+DA:164,20
+DA:165,20
+DA:166,0
+DA:167,0
+DA:168,0
+DA:171,20
+DA:173,20
+DA:175,20
+DA:176,0
+DA:177,0
+DA:178,0
+DA:179,0
+DA:180,0
+DA:184,20
+DA:185,20
+DA:186,0
+DA:188,0
+DA:191,20
+DA:192,20
+DA:194,20
+DA:196,0
+DA:199,0
+DA:202,20
+DA:203,40
+DA:204,40
+DA:205,0
+DA:206,20
+DA:207,20
+DA:209,0
+DA:210,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:218,0
+DA:219,0
+DA:220,0
+DA:227,5
+DA:228,5
+DA:229,6
+DA:230,4
+DA:231,4
+DA:233,4
+DA:234,4
+DA:237,1432
+DA:238,1432
+DA:239,1432
+DA:240,1432
+DA:241,1432
+DA:244,1432
+DA:245,1432
+DA:247,1432
+DA:248,1432
+DA:249,1432
+DA:252,27
+DA:253,27
+DA:256,5
+DA:257,5
+DA:258,5
+DA:259,5
+DA:260,5
+DA:261,1
+DA:262,4
+DA:263,4
+DA:264,4
+DA:265,0
+DA:282,0
+DA:283,0
+DA:286,3784
+DA:288,3784
+DA:289,3784
+DA:290,0
+DA:291,3784
+DA:293,1432
+DA:294,3784
+DA:296,1
+DA:297,3784
+DA:298,3784
+DA:299,3
+DA:300,3784
+DA:302,0
+DA:303,3784
+DA:304,3780
+DA:305,3784
+DA:306,1
+DA:307,3784
+DA:308,0
+DA:309,3784
+DA:310,1
+DA:311,3784
+DA:312,0
+DA:313,3784
+DA:314,0
+DA:315,3784
+DA:318,1
+DA:319,1
+DA:320,1
+DA:321,1
+DA:322,0
+DA:325,4
+DA:326,4
+DA:327,0
+DA:328,4
+DA:331,0
+DA:332,0
+DA:333,0
+DA:345,11331
+DA:346,11331
+DA:347,11331
+DA:350,7554
+DA:352,11334
+DA:353,3
+BA:27,0
+BA:27,0
+BA:27,0
+BA:27,0
+BA:33,0
+BA:33,0
+BA:114,2
+BA:114,2
+BA:120,2
+BA:120,2
+BA:126,1
+BA:126,2
+BA:165,1
+BA:165,2
+BA:173,2
+BA:173,1
+BA:185,1
+BA:185,2
+BA:194,1
+BA:194,2
+BA:204,1
+BA:204,2
+BA:210,0
+BA:210,0
+BA:214,0
+BA:214,0
+BA:216,0
+BA:216,0
+BA:218,0
+BA:218,0
+BA:229,2
+BA:229,2
+BA:231,1
+BA:231,2
+BA:238,1
+BA:238,2
+BA:240,1
+BA:240,2
+BA:245,1
+BA:245,2
+BA:248,1
+BA:248,2
+BA:257,2
+BA:257,1
+BA:260,2
+BA:260,2
+BA:262,2
+BA:262,1
+BA:263,2
+BA:263,1
+BA:289,1
+BA:289,2
+BA:291,2
+BA:291,2
+BA:291,2
+BA:291,2
+BA:291,2
+BA:291,2
+BA:294,2
+BA:294,2
+BA:294,2
+BA:294,2
+BA:294,2
+BA:294,2
+BA:298,2
+BA:298,2
+BA:300,1
+BA:300,2
+BA:303,2
+BA:303,2
+BA:305,2
+BA:305,2
+BA:307,1
+BA:307,2
+BA:309,2
+BA:309,2
+BA:311,1
+BA:311,2
+BA:313,1
+BA:313,2
+BA:320,2
+BA:320,1
+BA:326,1
+BA:326,2
+BA:327,0
+BA:327,0
+BA:328,2
+BA:328,2
+LF:155
+LH:100
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt.test.h
+FN:10,_ZN11TestCoreAptD1Ev
+FN:15,_ZN11TestCoreAptC1Ev
+FN:90,_ZN11TestCoreApt10invalidateEv
+FN:85,_ZN11TestCoreApt6existsEv
+FN:70,_ZN11TestCoreApt8validateEv
+FN:31,_ZN11TestCoreApt11packageNameEv
+FN:24,_ZN11TestCoreApt12tokenVersionEv
+FN:19,_ZN11TestCoreApt5tokenEv
+FN:81,_ZN11TestCoreApt13packageState2Ev
+FN:77,_ZN11TestCoreApt12packageStateEv
+FN:44,_ZN11TestCoreApt23checkVersionPackageListIN3ept4core6SourceINS2_7version6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEEEEvT_
+FN:66,_ZN11TestCoreApt14versionPackageEv
+FN:36,_ZN11TestCoreApt20checkPackageNameListIN3ept4core6SourceINS2_7package6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEEEEvT_
+FN:57,_ZN11TestCoreApt15packageNameListEv
+FN:61,_ZN11TestCoreApt12versionCountEv
+FN:52,_ZN11TestCoreApt12packageCountEv
+DA:10,12
+DA:15,12
+DA:16,12
+DA:17,12
+DA:19,1
+DA:20,1
+DA:21,2
+DA:22,1
+DA:24,1
+DA:25,1
+DA:26,1
+DA:27,1
+DA:28,1
+DA:29,1
+DA:31,1
+DA:32,1
+DA:33,1
+DA:36,1
+DA:37,3779
+DA:38,3777
+DA:39,3777
+DA:41,1
+DA:44,1
+DA:45,1810
+DA:46,1808
+DA:47,3616
+DA:48,1808
+DA:50,1
+DA:52,1
+DA:54,1
+DA:55,1
+DA:57,1
+DA:58,1
+DA:59,1
+DA:61,1
+DA:63,1
+DA:64,1
+DA:66,1
+DA:67,1
+DA:68,1
+DA:70,1
+DA:71,1
+DA:73,2
+DA:74,2
+DA:75,1
+DA:77,1
+DA:78,1
+DA:79,1
+DA:81,1
+DA:82,1
+DA:83,1
+DA:85,1
+DA:86,1
+DA:87,2
+DA:88,1
+DA:90,1
+DA:91,1
+DA:92,1
+DA:93,2
+DA:94,1
+BA:37,2
+BA:37,2
+BA:45,2
+BA:45,2
+LF:60
+LH:60
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/source.h
+FN:38,_ZN3ept4core6SourceINS0_7version6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EEaSERKS9_
+FN:20,_ZN3ept4core6SourceINS0_7package6SourceENS2_5SetupENS2_12PropertyTypeEE4selfEv
+FN:75,_ZN3ept4core6SourceINS0_7package6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EEC1ERS3_NS0_15AptInternalListIN8pkgCache11PkgIteratorEEE
+FN:51,_ZNK3ept4core6SourceINS0_7package6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EE5emptyEv
+FN:20,_ZN3ept4core6SourceINS0_7version6SourceENS2_5SetupENS2_12PropertyTypeEE4selfEv
+FN:75,_ZN3ept4core6SourceINS0_7version6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EEC1ERS3_NS2_12InternalListE
+FN:51,_ZNK3ept4core6SourceINS0_7version6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EE5emptyEv
+FN:13,_ZN3ept4core6SourceINS0_7version6SourceENS2_5SetupENS2_12PropertyTypeEED2Ev
+FN:13,_ZN3ept4core6SourceINS0_7package6SourceENS2_5SetupENS2_12PropertyTypeEED2Ev
+FN:106,_ZN3ept4core6SourceINS0_7package6SourceENS2_5SetupENS2_12PropertyTypeEEC2Ev
+FN:106,_ZN3ept4core6SourceINS0_7version6SourceENS2_5SetupENS2_12PropertyTypeEEC2Ev
+FN:62,_ZNK3ept4core6SourceINS0_7package6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EE8propertyEv
+FN:60,_ZNK3ept4core6SourceINS0_7package6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EE5tokenEv
+FN:23,_ZN3ept4core6SourceINS0_7package6SourceENS2_5SetupENS2_12PropertyTypeEE3getILNS2_10PropertyIdE0EEENS5_IXT_EE1TENS_5TokenE
+FN:60,_ZNK3ept4core6SourceINS0_7version6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EE5tokenEv
+FN:62,_ZNK3ept4core6SourceINS0_7version6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EE8propertyEv
+FN:23,_ZN3ept4core6SourceINS0_7package6SourceENS2_5SetupENS2_12PropertyTypeEE3getILNS2_10PropertyIdE3EEENS5_IXT_EE1TENS_5TokenE
+FN:80,_ZN3ept4core6SourceINS0_7package6SourceENS2_5SetupENS2_12PropertyTypeEE4listILNS2_10PropertyIdE0EEENS6_12ComposedListIXT_EEEv
+FN:80,_ZN3ept4core6SourceINS0_7version6SourceENS2_5SetupENS2_12PropertyTypeEE4listILNS2_10PropertyIdE0EEENS6_12ComposedListIXT_EEEv
+FN:47,_ZNK3ept4core6SourceINS0_7version6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EE4tailEv
+FN:47,_ZNK3ept4core6SourceINS0_7package6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EE4tailEv
+DA:13,27
+DA:20,20
+DA:23,7
+DA:24,7
+DA:25,5
+DA:26,5
+DA:28,7
+DA:38,3616
+DA:47,11170
+DA:48,11170
+DA:51,11174
+DA:60,5585
+DA:62,7393
+DA:64,7393
+DA:75,11174
+DA:76,11174
+DA:80,4
+DA:82,4
+DA:106,27
+DA:107,27
+DA:108,27
+BA:24,2
+BA:24,1
+BA:24,2
+BA:24,2
+LF:21
+LH:21
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/test.h
+FN:12,_ZN18AptTestEnvironmentC2Ev
+FN:10,_ZN18AptTestEnvironmentD2Ev
+DA:10,0
+DA:12,0
+DA:13,0
+DA:14,0
+DA:15,0
+DA:16,0
+DA:17,0
+DA:18,0
+DA:19,0
+DA:20,0
+DA:21,0
+LF:11
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/token.h
+FN:10,_ZN3ept5TokenD1Ev
+FN:14,_ZN3ept5TokenC1Ev
+FN:10,_ZN3ept5TokenC1ERKS0_
+FN:15,_ZN3ept5TokenC1ESs
+FN:12,_ZNK3ept5Token2idEv
+FN:17,_ZNK3ept5Token7versionEv
+FN:22,_ZNK3ept5Token7packageEv
+FN:36,_ZNK3ept5Token10hasVersionEv
+FN:40,_ZNK3ept5Token5validEv
+FN:51,_ZlsRSoRKN3ept5TokenE
+FN:44,_ZNK3ept5TokenleERKS0_
+FN:10,_ZN3ept5TokenaSERKS0_
+DA:10,124
+DA:12,0
+DA:14,0
+DA:15,8
+DA:17,1831
+DA:19,1831
+DA:22,0
+DA:25,0
+DA:36,17
+DA:37,17
+DA:40,1
+DA:41,1
+DA:44,0
+DA:45,0
+DA:51,0
+DA:52,0
+BA:19,2
+BA:19,2
+BA:19,2
+BA:19,2
+BA:19,0
+BA:19,0
+BA:25,0
+BA:25,0
+LF:16
+LH:8
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:109,_ZN6wibble9exception10AddContext7contextEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:395,_ZN6wibble9exception6SystemD1Ev
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:117,_ZN6wibble9exception10AddContext11copyContextISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvT_
+FN:153,_ZN6wibble9exception7Context10addContextERKSs
+FN:147,_ZN6wibble9exception7ContextC2ERKSs
+FN:186,_ZN6wibble9exception7GenericC2ERKSs
+DA:109,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:113,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:137,0
+DA:147,0
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:186,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:395,0
+BA:110,0
+BA:110,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:395,0
+BA:395,0
+LF:36
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/list.h
+FN:340,_ZN6wibble4list5countIN3ept4core6SourceINS3_7version6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEEEjT_
+FN:340,_ZN6wibble4list5countIN3ept4core6SourceINS3_7package6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEEEjT_
+DA:340,2
+DA:341,2
+DA:342,5589
+DA:343,5585
+DA:344,5585
+DA:346,2
+BA:342,2
+BA:342,2
+BA:342,2
+BA:342,2
+LF:6
+LH:6
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/mixin.h
+FN:13,_ZN6wibble5mixin10ComparableIN3ept5TokenEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableIN3ept4core6SourceINS3_7package6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableIN3ept4core6SourceINS3_7version6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEEC2Ev
+FN:15,_ZNK6wibble5mixin10ComparableIN3ept5TokenEE7cmpSelfEv
+FN:23,_ZNK6wibble5mixin10ComparableIN3ept5TokenEEeqERKS3_
+FN:19,_ZNK6wibble5mixin10ComparableIN3ept5TokenEEneERKS3_
+DA:13,11174
+DA:15,0
+DA:16,0
+DA:19,0
+DA:20,0
+DA:23,0
+DA:24,0
+BA:24,0
+BA:24,0
+BA:24,0
+BA:24,0
+LF:7
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationD1Ev
+FN:17,_ZN8LocationC1EPKciSs
+FN:13,_ZN8LocationC1ERKS_
+FN:52,_ZlsIN3ept5TokenEER12AssertFailedS3_T_
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:52,_ZlsIiER12AssertFailedS1_T_
+FN:41,_ZN12AssertFailedD1Ev
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:59,_Z9assert_fnIjEv8LocationT_
+FN:101,_Z13assert_neq_fnIN3ept5TokenES1_Ev8LocationT_T0_
+FN:67,_Z12assert_eq_fnIN3ept5TokenES1_Ev8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsSsEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsPKcEv8LocationT_T0_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:67,_Z12assert_eq_fnIjiEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,2
+DA:61,2
+DA:62,0
+DA:64,2
+DA:67,7
+DA:69,7
+DA:70,0
+DA:71,0
+DA:75,7
+DA:101,1
+DA:103,1
+DA:104,1
+DA:105,0
+DA:106,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:61,1
+BA:61,2
+BA:69,1
+BA:69,2
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,1
+BA:69,2
+BA:103,1
+BA:103,2
+LF:31
+LH:9
+end_of_record
+SF:/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt.cpp
+FN:14,_Z41__static_initialization_and_destruction_0ii
+FN:14,_GLOBAL__I_ept_test_generated__home_mornfall_dev_pkg_ept_work_ept_core_apt.cpp
+FN:14,_Z22run_CoreApt_invalidatev
+FN:13,_Z18run_CoreApt_existsv
+FN:10,_Z20run_CoreApt_validatev
+FN:5,_Z23run_CoreApt_packageNamev
+FN:4,_Z24run_CoreApt_tokenVersionv
+FN:3,_Z17run_CoreApt_tokenv
+FN:12,_Z25run_CoreApt_packageState2v
+FN:11,_Z24run_CoreApt_packageStatev
+FN:9,_Z26run_CoreApt_versionPackagev
+FN:7,_Z27run_CoreApt_packageNameListv
+FN:8,_Z24run_CoreApt_versionCountv
+FN:6,_Z24run_CoreApt_packageCountv
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,1
+DA:7,1
+DA:8,1
+DA:9,1
+DA:10,1
+DA:11,1
+DA:12,1
+DA:13,1
+DA:14,4
+BA:14,2
+BA:14,1
+BA:14,2
+BA:14,1
+LF:12
+LH:12
+end_of_record
+SF:/usr/include/apt-pkg/cacheiterators.h
+FN:59,_ZNK8pkgCache11PkgIterator3endEv
+FN:66,_ZN8pkgCache11PkgIteratorptEv
+FN:67,_ZNK8pkgCache11PkgIteratorptEv
+FN:73,_ZNK8pkgCache11PkgIterator4NameEv
+FN:85,_ZN8pkgCache11PkgIteratorC1ERS_PNS_7PackageE
+FN:91,_ZN8pkgCache11PkgIteratorC1Ev
+FN:105,_ZN8pkgCache11VerIteratorppEi
+FN:106,_ZN8pkgCache11VerIteratorppEv
+FN:107,_ZNK8pkgCache11VerIterator3endEv
+FN:108,_ZN8pkgCache11VerIteratoraSERKS0_
+FN:112,_ZNK8pkgCache11VerIteratorneERKS0_
+FN:124,_ZNK8pkgCache11VerIterator6VerStrEv
+FN:127,_ZNK8pkgCache11VerIterator9ParentPkgEv
+FN:141,_ZN8pkgCache11VerIteratorC1Ev
+FN:142,_ZN8pkgCache11VerIteratorC1ERS_PNS_7VersionE
+FN:417,_ZNK8pkgCache11PkgIterator11VersionListEv
+FN:46,_ZN8pkgCache11PkgIteratorC1ERS_
+DA:46,19
+DA:48,19
+DA:49,19
+DA:50,19
+DA:59,89241
+DA:66,67369
+DA:67,3787
+DA:73,18343
+DA:85,5424
+DA:86,5424
+DA:88,5424
+DA:89,0
+DA:90,5424
+DA:91,29
+DA:105,15767
+DA:106,1808
+DA:107,58053
+DA:108,11172
+DA:112,1433
+DA:124,1830
+DA:127,5424
+DA:141,15
+DA:142,21130
+DA:143,21130
+DA:145,21130
+DA:146,0
+DA:147,21130
+DA:417,19696
+DA:418,19696
+BA:59,2
+BA:59,1
+BA:59,2
+BA:59,2
+BA:73,2
+BA:73,1
+BA:88,1
+BA:88,2
+BA:105,2
+BA:105,1
+BA:107,2
+BA:107,2
+BA:107,2
+BA:107,2
+BA:124,2
+BA:124,1
+BA:145,1
+BA:145,2
+LF:29
+LH:27
+end_of_record
+SF:/usr/include/apt-pkg/depcache.h
+FN:242,_ZNK11pkgDepCache10StateCache6DeleteEv
+FN:243,_ZNK11pkgDepCache10StateCache4KeepEv
+FN:248,_ZNK11pkgDepCache10StateCache9NowBrokenEv
+FN:250,_ZNK11pkgDepCache10StateCache10InstBrokenEv
+FN:252,_ZNK11pkgDepCache10StateCache7InstallEv
+FN:342,_ZN11pkgDepCacheixERKN8pkgCache11PkgIteratorE
+DA:242,3785
+DA:243,3785
+DA:248,3785
+DA:250,3785
+DA:252,3785
+DA:342,3787
+LF:6
+LH:6
+end_of_record
+SF:/usr/include/apt-pkg/error.h
+FN:84,_ZN11GlobalError5emptyEv
+DA:84,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/apt-pkg/pkgcache.h
+FN:326,_ZN8pkgCache8PkgBeginEv
+DA:326,19
+DA:327,19
+LF:2
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:392,_ZNSs10_S_compareEjj
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:928,_ZNSs6assignEPKc
+FN:509,_ZNSsaSEPKc
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:2225,_ZStneIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:1941,_ZNKSs7compareERKSs
+FN:2312,_ZStleIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:501,_ZNSsaSERKSs
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:509,0
+DA:510,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:928,0
+DA:931,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2162,0
+DA:2165,0
+DA:2188,0
+DA:2189,0
+DA:2225,74475
+DA:2226,74475
+DA:2312,0
+DA:2313,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+BA:1948,0
+BA:1948,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:90
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,1301
+DA:126,1301
+DA:163,0
+DA:164,0
+LF:4
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:188,_ZSt3minIjERKT_S2_S2_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET0_T_SA_S9_
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:193,0
+BA:193,0
+BA:215,0
+BA:215,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+LF:38
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:683,2
+DA:695,0
+DA:696,0
+DA:747,2
+DA:748,2
+DA:769,1
+DA:770,1
+LF:17
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:377,0
+DA:378,0
+DA:386,1
+DA:387,1
+DA:395,0
+DA:396,0
+DA:404,1
+DA:405,1
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:526,1
+DA:527,1
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:49
+LH:6
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:286,0
+BA:286,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/exception
+FN:59,_ZNSt9exceptionC2Ev
+FN:57,_ZNSt9exceptionC1ERKS_
+DA:57,0
+DA:59,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:195,_ZNSolsEj
+DA:95,0
+DA:112,0
+DA:117,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:25
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.h
+FN:22,_ZNK3ept4core6record12InternalList4tailEv
+FN:28,_ZN3ept4core6record12InternalListC1ERNS1_6SourceE
+FN:179,_ZN3ept4core6record6Source12listInternalEv
+FN:189,_ZN3ept4core6record6Source15localityCompareEPKN8pkgCache7VerFileES6_
+FN:44,_ZN3ept4core6record6ParserD1Ev
+FN:177,_ZN3ept4core6record6SourceC1ERNS0_11AptDatabaseE
+FN:136,_ZN3ept4core6record6SourceD1Ev
+FN:120,_ZNK3ept4core6record6Parser5parseISsEET_RKS4_RKSs
+FN:183,_ZN3ept4core6record6Source11lookupTokenENS_5TokenE
+FN:208,_ZN3ept4core6record6Source9getRecordEN8pkgCache15VerFileIteratorE
+FN:61,_ZN3ept4core6record6ParserC1ERKSs
+FN:78,_ZNK3ept4core6record6Parser3getILNS1_10PropertyIdE8EEENS1_12PropertyTypeIXT_EE1TERKS7_
+FN:263,_ZN3ept4core6record6Source11getInternalILNS1_10PropertyIdE8EEENS1_12PropertyTypeIXT_EE1TEN8pkgCache15VerFileIteratorE
+FN:78,_ZNK3ept4core6record6Parser3getILNS1_10PropertyIdE1EEENS1_12PropertyTypeIXT_EE1TERKS7_
+FN:263,_ZN3ept4core6record6Source11getInternalILNS1_10PropertyIdE1EEENS1_12PropertyTypeIXT_EE1TEN8pkgCache15VerFileIteratorE
+FN:256,_ZN3ept4core6record6Source8getTokenEN8pkgCache15VerFileIteratorE
+FN:78,_ZNK3ept4core6record6Parser3getILNS1_10PropertyIdE5EEENS1_12PropertyTypeIXT_EE1TERKS7_
+FN:263,_ZN3ept4core6record6Source11getInternalILNS1_10PropertyIdE5EEENS1_12PropertyTypeIXT_EE1TEN8pkgCache15VerFileIteratorE
+FN:89,_ZNK3ept4core6record6Parser3getILNS1_10PropertyIdE10EEENS1_12PropertyTypeIXT_EE1TERKS7_
+FN:263,_ZN3ept4core6record6Source11getInternalILNS1_10PropertyIdE10EEENS1_12PropertyTypeIXT_EE1TEN8pkgCache15VerFileIteratorE
+FN:269,_ZN3ept4core6record6Source11getInternalILNS1_10PropertyIdE0EEENS1_12PropertyTypeIXT_EE1TEN8pkgCache15VerFileIteratorE
+FN:148,_ZN3ept4core6record6Source6vfListEv
+FN:279,_ZNK3ept4core6record12InternalList5emptyEv
+FN:274,_ZNK3ept4core6record12InternalList4headEv
+FN:128,_ZNK3ept4core6record6Parser5parseIiEET_RKS4_RKSs
+FN:78,_ZNK3ept4core6record6Parser3getILNS1_10PropertyIdE4EEENS1_12PropertyTypeIXT_EE1TERKS7_
+FN:263,_ZN3ept4core6record6Source11getInternalILNS1_10PropertyIdE4EEENS1_12PropertyTypeIXT_EE1TEN8pkgCache15VerFileIteratorE
+DA:22,870
+DA:23,870
+DA:24,870
+DA:28,2
+DA:29,2
+DA:30,2
+DA:44,1310
+DA:61,1310
+DA:78,1308
+DA:81,1308
+DA:86,1
+DA:89,2
+DA:91,2
+DA:92,4
+DA:93,1
+DA:94,1
+DA:95,1
+DA:96,0
+DA:98,1
+DA:120,1307
+DA:122,1307
+DA:123,0
+DA:124,1307
+DA:128,1
+DA:130,1
+DA:131,0
+DA:132,1
+DA:136,6
+DA:148,1742
+DA:149,1742
+DA:150,1741
+DA:152,1
+DA:155,3778
+DA:157,3777
+DA:158,1989
+DA:160,3596
+DA:163,1808
+DA:164,3181
+DA:165,1808
+DA:166,435
+DA:168,1808
+DA:169,435
+DA:173,1
+DA:174,1
+DA:177,6
+DA:179,2
+DA:180,2
+DA:183,5
+DA:184,5
+DA:189,4371
+DA:191,4371
+DA:192,0
+DA:193,4371
+DA:194,0
+DA:195,4371
+DA:196,0
+DA:198,4371
+DA:199,4371
+DA:200,0
+DA:208,1311
+DA:209,1311
+DA:210,1
+DA:212,1310
+DA:216,5
+DA:217,5
+DA:221,0
+DA:222,5
+DA:223,0
+DA:224,5
+DA:226,0
+DA:227,5
+DA:232,1310
+DA:233,1310
+DA:235,871
+DA:236,871
+DA:239,0
+DA:242,1310
+DA:243,1310
+DA:246,0
+DA:248,1310
+DA:251,1310
+DA:253,1310
+DA:256,435
+DA:257,435
+DA:258,435
+DA:259,0
+DA:263,1310
+DA:264,1310
+DA:265,1310
+DA:269,1
+DA:270,1
+DA:271,1
+DA:274,870
+DA:276,870
+DA:279,872
+DA:280,872
+BA:86,1
+BA:86,2
+BA:92,2
+BA:92,2
+BA:95,1
+BA:95,2
+BA:122,1
+BA:122,2
+BA:130,1
+BA:130,2
+BA:149,2
+BA:149,2
+BA:155,2
+BA:155,2
+BA:157,2
+BA:157,2
+BA:160,2
+BA:160,2
+BA:164,2
+BA:164,2
+BA:165,2
+BA:165,2
+BA:168,2
+BA:168,2
+BA:191,1
+BA:191,2
+BA:191,0
+BA:191,0
+BA:193,1
+BA:193,2
+BA:195,1
+BA:195,2
+BA:198,2
+BA:198,1
+BA:209,2
+BA:209,2
+BA:209,1
+BA:209,2
+BA:209,2
+BA:209,2
+BA:212,2
+BA:212,2
+BA:212,1
+BA:212,2
+BA:212,2
+BA:212,2
+BA:217,1
+BA:217,2
+BA:222,1
+BA:222,2
+BA:224,1
+BA:224,2
+BA:233,2
+BA:233,2
+BA:236,1
+BA:236,2
+BA:243,1
+BA:243,2
+LF:96
+LH:83
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.test.h
+FN:9,_ZN13TestAptRecordD1Ev
+FN:13,_ZN13TestAptRecordC1Ev
+FN:52,_ZN13TestAptRecord11nonexistentEv
+FN:32,_ZN13TestAptRecord21checkShortDescriptionEv
+FN:21,_ZN13TestAptRecord16checkLookupValueEv
+FN:17,_ZN13TestAptRecord11checkLookupEv
+FN:38,_ZN13TestAptRecord19checkRecordNameListIN3ept4core6SourceINS2_6record6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEEEEvT_
+FN:45,_ZN13TestAptRecord9checkListEv
+FN:27,_ZN13TestAptRecord18checkLookupNumericEv
+DA:9,6
+DA:13,6
+DA:14,6
+DA:15,6
+DA:17,1
+DA:18,1
+DA:19,1
+DA:21,1
+DA:22,1
+DA:24,2
+DA:25,1
+DA:27,1
+DA:29,1
+DA:30,1
+DA:32,1
+DA:34,1
+DA:35,1
+DA:38,1
+DA:39,437
+DA:40,435
+DA:41,435
+DA:43,1
+DA:45,1
+DA:48,1
+DA:49,1
+DA:50,1
+DA:52,1
+DA:54,1
+DA:55,1
+BA:39,2
+BA:39,2
+LF:29
+LH:29
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/recordparser.h
+FN:41,_ZN3ept4core6record12RecordParserD2Ev
+FN:53,_ZN3ept4core6record12RecordParserC2ERKSs
+FN:75,_ZNK3ept4core6record12RecordParser6lookupERKSs
+DA:41,1310
+DA:53,1310
+DA:75,1310
+LF:3
+LH:3
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt.h
+FN:269,_ZN3ept4core11AptDatabase17lookupVersionFileEN8pkgCache11VerIteratorE
+FN:139,_ZN3ept4core11AptDatabaseC1Ev
+FN:209,_ZN3ept4core11AptDatabase10invalidateEv
+FN:331,_ZN3ept4core11AptDatabaseD1Ev
+FN:28,_ZNK3ept4core12AptException4descEv
+FN:27,_ZN3ept4core12AptExceptionD0Ev
+FN:27,_ZN3ept4core12AptExceptionD1Ev
+FN:32,_ZN3ept4core12AptExceptionC1ERKSs
+FN:164,_ZN3ept4core11AptDatabase9openCacheEv
+FN:113,_ZN3ept4core11AptDatabase5cacheEv
+FN:125,_ZN3ept4core11AptDatabase6policyEv
+FN:252,_ZN3ept4core11AptDatabase13lookupPackageENS_5TokenE
+FN:227,_ZN3ept4core11AptDatabase16candidateVersionENS_5TokenE
+FN:256,_ZN3ept4core11AptDatabase13lookupVersionENS_5TokenE
+DA:27,0
+DA:28,0
+DA:29,0
+DA:32,0
+DA:33,0
+DA:34,0
+DA:35,0
+DA:36,0
+DA:37,0
+DA:39,0
+DA:113,0
+DA:114,0
+DA:115,0
+DA:116,0
+DA:125,0
+DA:126,0
+DA:127,0
+DA:128,0
+DA:139,0
+DA:140,0
+DA:141,0
+DA:142,0
+DA:143,0
+DA:144,0
+DA:145,0
+DA:146,0
+DA:164,0
+DA:165,0
+DA:166,0
+DA:167,0
+DA:168,0
+DA:171,0
+DA:173,0
+DA:175,0
+DA:176,0
+DA:177,0
+DA:178,0
+DA:179,0
+DA:180,0
+DA:184,0
+DA:185,0
+DA:186,0
+DA:188,0
+DA:191,0
+DA:192,0
+DA:194,0
+DA:196,0
+DA:199,0
+DA:202,0
+DA:203,0
+DA:204,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:218,0
+DA:219,0
+DA:220,0
+DA:227,0
+DA:228,0
+DA:229,0
+DA:230,0
+DA:231,0
+DA:233,0
+DA:234,0
+DA:252,0
+DA:253,0
+DA:256,0
+DA:257,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:261,0
+DA:262,0
+DA:263,0
+DA:264,0
+DA:265,0
+DA:269,5
+DA:271,5
+DA:272,1
+DA:273,4
+DA:274,4
+DA:275,4
+DA:276,4
+DA:277,4
+DA:278,0
+DA:279,4
+DA:331,0
+DA:332,0
+DA:333,0
+BA:27,0
+BA:27,0
+BA:27,0
+BA:27,0
+BA:33,0
+BA:33,0
+BA:114,0
+BA:114,0
+BA:126,0
+BA:126,0
+BA:165,0
+BA:165,0
+BA:173,0
+BA:173,0
+BA:185,0
+BA:185,0
+BA:194,0
+BA:194,0
+BA:204,0
+BA:204,0
+BA:210,0
+BA:210,0
+BA:214,0
+BA:214,0
+BA:216,0
+BA:216,0
+BA:218,0
+BA:218,0
+BA:229,0
+BA:229,0
+BA:231,0
+BA:231,0
+BA:257,0
+BA:257,0
+BA:260,0
+BA:260,0
+BA:262,0
+BA:262,0
+BA:263,0
+BA:263,0
+BA:271,2
+BA:271,2
+BA:274,2
+BA:274,1
+BA:275,2
+BA:275,1
+BA:277,1
+BA:277,2
+LF:96
+LH:9
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/source.h
+FN:20,_ZN3ept4core6SourceINS0_6record6SourceENS2_5SetupENS2_12PropertyTypeEE4selfEv
+FN:75,_ZN3ept4core6SourceINS0_6record6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE1EEC1ERS3_NS2_12InternalListE
+FN:80,_ZN3ept4core6SourceINS0_6record6SourceENS2_5SetupENS2_12PropertyTypeEE4listILNS2_10PropertyIdE1EEENS6_12ComposedListIXT_EEEv
+FN:47,_ZNK3ept4core6SourceINS0_6record6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE1EE4tailEv
+FN:13,_ZN3ept4core6SourceINS0_6record6SourceENS2_5SetupENS2_12PropertyTypeEED2Ev
+FN:106,_ZN3ept4core6SourceINS0_6record6SourceENS2_5SetupENS2_12PropertyTypeEEC2Ev
+FN:23,_ZN3ept4core6SourceINS0_6record6SourceENS2_5SetupENS2_12PropertyTypeEE3getILNS2_10PropertyIdE1EEENS5_IXT_EE1TENS_5TokenE
+FN:23,_ZN3ept4core6SourceINS0_6record6SourceENS2_5SetupENS2_12PropertyTypeEE3getILNS2_10PropertyIdE5EEENS5_IXT_EE1TENS_5TokenE
+FN:23,_ZN3ept4core6SourceINS0_6record6SourceENS2_5SetupENS2_12PropertyTypeEE3getILNS2_10PropertyIdE10EEENS5_IXT_EE1TENS_5TokenE
+FN:23,_ZN3ept4core6SourceINS0_6record6SourceENS2_5SetupENS2_12PropertyTypeEE3getILNS2_10PropertyIdE0EEENS5_IXT_EE1TENS_5TokenE
+FN:51,_ZNK3ept4core6SourceINS0_6record6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE1EE5emptyEv
+FN:60,_ZNK3ept4core6SourceINS0_6record6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE1EE5tokenEv
+FN:62,_ZNK3ept4core6SourceINS0_6record6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE1EE8propertyEv
+FN:23,_ZN3ept4core6SourceINS0_6record6SourceENS2_5SetupENS2_12PropertyTypeEE3getILNS2_10PropertyIdE4EEENS5_IXT_EE1TENS_5TokenE
+DA:13,6
+DA:20,15
+DA:23,6
+DA:24,6
+DA:25,5
+DA:26,5
+DA:28,6
+DA:47,870
+DA:48,870
+DA:51,872
+DA:60,435
+DA:62,435
+DA:64,435
+DA:75,872
+DA:76,872
+DA:80,2
+DA:82,2
+DA:106,6
+DA:107,6
+DA:108,6
+BA:24,2
+BA:24,1
+BA:24,1
+BA:24,2
+BA:24,2
+BA:24,1
+BA:24,2
+BA:24,1
+BA:24,2
+BA:24,1
+LF:20
+LH:20
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/test.h
+FN:12,_ZN18AptTestEnvironmentC2Ev
+FN:10,_ZN18AptTestEnvironmentD2Ev
+DA:10,0
+DA:12,0
+DA:13,0
+DA:14,0
+DA:15,0
+DA:16,0
+DA:17,0
+DA:18,0
+DA:19,0
+DA:20,0
+DA:21,0
+LF:11
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/token.h
+FN:10,_ZN3ept5TokenD1Ev
+FN:14,_ZN3ept5TokenC1Ev
+FN:15,_ZN3ept5TokenC1ESs
+FN:10,_ZN3ept5TokenC1ERKS0_
+FN:44,_ZNK3ept5TokenleERKS0_
+FN:10,_ZN3ept5TokenaSERKS0_
+FN:22,_ZNK3ept5Token7packageEv
+FN:17,_ZNK3ept5Token7versionEv
+FN:36,_ZNK3ept5Token10hasVersionEv
+DA:10,0
+DA:14,0
+DA:15,0
+DA:17,0
+DA:19,0
+DA:22,0
+DA:25,0
+DA:36,0
+DA:37,0
+DA:44,0
+DA:45,0
+BA:19,0
+BA:19,0
+BA:19,0
+BA:19,0
+BA:19,0
+BA:19,0
+BA:25,0
+BA:25,0
+LF:11
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:109,_ZN6wibble9exception10AddContext7contextEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:395,_ZN6wibble9exception6SystemD1Ev
+FN:117,_ZN6wibble9exception10AddContext11copyContextISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvT_
+FN:153,_ZN6wibble9exception7Context10addContextERKSs
+FN:147,_ZN6wibble9exception7ContextC2ERKSs
+FN:186,_ZN6wibble9exception7GenericC2ERKSs
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+DA:109,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:113,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:137,0
+DA:147,0
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:186,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:395,0
+BA:110,0
+BA:110,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:395,0
+BA:395,0
+LF:36
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/list.h
+FN:340,_ZN6wibble4list5countIN3ept4core6SourceINS3_6record6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEEEEjT_
+DA:340,1
+DA:341,1
+DA:342,437
+DA:343,435
+DA:344,435
+DA:346,1
+BA:342,2
+BA:342,2
+LF:6
+LH:6
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/mixin.h
+FN:13,_ZN6wibble5mixin10ComparableIN3ept5TokenEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableIN3ept4core6SourceINS3_6record6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEEEC2Ev
+FN:15,_ZNK6wibble5mixin10ComparableIN3ept5TokenEE7cmpSelfEv
+FN:23,_ZNK6wibble5mixin10ComparableIN3ept5TokenEEeqERKS3_
+FN:19,_ZNK6wibble5mixin10ComparableIN3ept5TokenEEneERKS3_
+DA:13,872
+DA:15,0
+DA:16,0
+DA:19,0
+DA:20,0
+DA:23,0
+DA:24,0
+BA:24,0
+BA:24,0
+BA:24,0
+BA:24,0
+LF:7
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationD1Ev
+FN:17,_ZN8LocationC1EPKciSs
+FN:13,_ZN8LocationC1ERKS_
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:52,_ZlsIiER12AssertFailedS1_T_
+FN:41,_ZN12AssertFailedD1Ev
+FN:67,_Z12assert_eq_fnISsPKcEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsSsEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnIiiEv8LocationT_T0_
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:67,_Z12assert_eq_fnIjiEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:75,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+LF:26
+LH:0
+end_of_record
+SF:/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt_record.cpp
+FN:8,_Z41__static_initialization_and_destruction_0ii
+FN:8,_GLOBAL__I_ept_test_generated__home_mornfall_dev_pkg_ept_work_ept_core_apt_record.cpp
+FN:8,_Z25run_AptRecord_nonexistentv
+FN:6,_Z35run_AptRecord_checkShortDescriptionv
+FN:4,_Z30run_AptRecord_checkLookupValuev
+FN:3,_Z25run_AptRecord_checkLookupv
+FN:7,_Z23run_AptRecord_checkListv
+FN:5,_Z32run_AptRecord_checkLookupNumericv
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,1
+DA:7,1
+DA:8,4
+BA:8,2
+BA:8,1
+BA:8,2
+BA:8,1
+LF:6
+LH:6
+end_of_record
+SF:/usr/include/apt-pkg/cacheiterators.h
+FN:59,_ZNK8pkgCache11PkgIterator3endEv
+FN:66,_ZN8pkgCache11PkgIteratorptEv
+FN:105,_ZN8pkgCache11VerIteratorppEi
+FN:106,_ZN8pkgCache11VerIteratorppEv
+FN:107,_ZNK8pkgCache11VerIterator3endEv
+FN:124,_ZNK8pkgCache11VerIterator6VerStrEv
+FN:141,_ZN8pkgCache11VerIteratorC1Ev
+FN:142,_ZN8pkgCache11VerIteratorC1ERS_PNS_7VersionE
+FN:324,_ZN8pkgCache15PkgFileIteratorptEv
+FN:327,_ZN8pkgCache15PkgFileIteratorcvPNS_11PackageFileEEv
+FN:329,_ZN8pkgCache15PkgFileIterator5CacheEv
+FN:331,_ZNK8pkgCache15PkgFileIterator8FileNameEv
+FN:347,_ZN8pkgCache15PkgFileIteratorC1Ev
+FN:349,_ZN8pkgCache15PkgFileIteratorC1ERS_PNS_11PackageFileE
+FN:361,_ZN8pkgCache15VerFileIteratorppEi
+FN:362,_ZN8pkgCache15VerFileIteratorppEv
+FN:363,_ZNK8pkgCache15VerFileIterator3endEv
+FN:370,_ZN8pkgCache15VerFileIteratorptEv
+FN:373,_ZN8pkgCache15VerFileIteratorcvPNS_7VerFileEEv
+FN:375,_ZN8pkgCache15VerFileIterator5CacheEv
+FN:377,_ZNK8pkgCache15VerFileIterator4FileEv
+FN:380,_ZN8pkgCache15VerFileIteratorC1Ev
+FN:381,_ZN8pkgCache15VerFileIteratorC1ERS_PNS_7VerFileE
+FN:417,_ZNK8pkgCache11PkgIterator11VersionListEv
+FN:431,_ZNK8pkgCache11VerIterator8FileListEv
+FN:46,_ZN8pkgCache11PkgIteratorC1ERS_
+FN:58,_ZN8pkgCache11PkgIteratorppEv
+DA:46,0
+DA:48,0
+DA:49,0
+DA:50,0
+DA:58,52878
+DA:59,0
+DA:66,0
+DA:105,0
+DA:106,0
+DA:107,0
+DA:124,0
+DA:141,0
+DA:142,0
+DA:143,0
+DA:145,0
+DA:146,0
+DA:147,0
+DA:324,26403
+DA:327,5202
+DA:329,5216
+DA:331,26
+DA:347,15
+DA:349,26429
+DA:361,22055
+DA:362,11714
+DA:363,90338
+DA:370,10056
+DA:373,4341
+DA:375,1311
+DA:377,26406
+DA:380,7
+DA:381,27354
+DA:417,0
+DA:418,0
+DA:431,26484
+DA:432,26484
+BA:59,0
+BA:59,0
+BA:59,0
+BA:59,0
+BA:105,0
+BA:105,0
+BA:107,0
+BA:107,0
+BA:107,0
+BA:107,0
+BA:124,0
+BA:124,0
+BA:145,0
+BA:145,0
+BA:327,2
+BA:327,1
+BA:331,2
+BA:331,1
+BA:361,2
+BA:361,1
+BA:373,2
+BA:373,1
+LF:36
+LH:18
+end_of_record
+SF:/usr/include/apt-pkg/error.h
+FN:84,_ZN11GlobalError5emptyEv
+DA:84,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/apt-pkg/fileutl.h
+FN:63,_ZN6FileFd6IsOpenEv
+FN:75,_ZN6FileFdC1Ei
+DA:63,32
+DA:75,15
+LF:2
+LH:2
+end_of_record
+SF:/usr/include/apt-pkg/pkgcache.h
+FN:326,_ZN8pkgCache8PkgBeginEv
+DA:326,0
+DA:327,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:106,_ZNSaIjED2Ev
+FN:106,_ZNSaIPN8pkgCache7VerFileEED2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:98,_ZNSaIjEC2Ev
+FN:98,_ZNSaIPN8pkgCache7VerFileEEC2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,2664
+DA:100,0
+DA:101,0
+DA:106,2673
+DA:118,0
+DA:119,0
+LF:6
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:392,_ZNSs10_S_compareEjj
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:928,_ZNSs6assignEPKc
+FN:509,_ZNSsaSEPKc
+FN:1941,_ZNKSs7compareERKSs
+FN:2312,_ZStleIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:501,_ZNSsaSERKSs
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:2225,_ZStneIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:1593,_ZNKSs4findEPKcj
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:509,0
+DA:510,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:928,0
+DA:931,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1593,0
+DA:1596,0
+DA:1923,0
+DA:1925,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2162,0
+DA:2165,0
+DA:2188,0
+DA:2189,0
+DA:2225,0
+DA:2226,0
+DA:2312,0
+DA:2313,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:308,0
+BA:308,0
+BA:341,0
+BA:341,0
+BA:1948,0
+BA:1948,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:98
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algo.h
+FN:123,_ZSt8__medianIPN8pkgCache7VerFileEPFbPKS1_S4_EERKT_S9_S9_S9_T0_
+FN:1731,_ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEES4_PFbPKS3_SB_EEvT_T0_T1_
+FN:1806,_ZSt26__unguarded_insertion_sortIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEPFbPKS3_SB_EEvT_SE_T0_
+FN:1877,_ZSt21__unguarded_partitionIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEES4_PFbPKS3_SB_EET_SE_SE_T0_T1_
+FN:1568,_ZSt13__heap_selectIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEPFbPKS3_SB_EEvT_SE_SE_T0_
+FN:4661,_ZSt12partial_sortIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEPFbPKS3_SB_EEvT_SE_SE_T0_
+FN:1930,_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEiPFbPKS3_SB_EEvT_SE_T0_T1_
+FN:1771,_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEPFbPKS3_SB_EEvT_SE_T0_
+FN:1840,_ZSt22__final_insertion_sortIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEPFbPKS3_SB_EEvT_SE_T0_
+FN:1970,_ZSt4__lgi
+FN:4806,_ZSt4sortIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEPFbPKS3_SB_EEvT_SE_T0_
+DA:123,458
+DA:128,458
+DA:129,213
+DA:130,118
+DA:131,95
+DA:132,54
+DA:134,41
+DA:135,245
+DA:136,52
+DA:137,193
+DA:138,96
+DA:140,97
+DA:1568,0
+DA:1570,0
+DA:1571,0
+DA:1572,0
+DA:1573,0
+DA:1574,0
+DA:1731,4321
+DA:1733,4321
+DA:1734,4321
+DA:1735,18873
+DA:1737,10231
+DA:1738,10231
+DA:1739,10231
+DA:1741,4321
+DA:1742,4321
+DA:1771,10
+DA:1773,10
+DA:1775,160
+DA:1778,150
+DA:1779,150
+DA:1781,10
+DA:1782,10
+DA:1785,140
+DA:1806,10
+DA:1811,4191
+DA:1812,4181
+DA:1813,10
+DA:1840,10
+DA:1842,10
+DA:1844,10
+DA:1845,10
+DA:1849,0
+DA:1850,10
+DA:1877,6263
+DA:1879,5805
+DA:1881,21262
+DA:1882,8736
+DA:1883,6263
+DA:1884,19248
+DA:1885,6722
+DA:1886,6263
+DA:1887,458
+DA:1888,5805
+DA:1889,5805
+DA:1930,468
+DA:1935,1394
+DA:1937,458
+DA:1939,0
+DA:1940,0
+DA:1942,458
+DA:1952,458
+DA:1953,458
+DA:1954,458
+DA:1970,0
+DA:1971,0
+DA:4661,0
+DA:4674,0
+DA:4675,0
+DA:4676,0
+DA:4806,10
+DA:4818,10
+DA:4820,10
+DA:4822,10
+DA:4824,10
+BA:128,2
+BA:128,2
+BA:129,2
+BA:129,2
+BA:131,2
+BA:131,2
+BA:135,2
+BA:135,2
+BA:137,2
+BA:137,2
+BA:1571,0
+BA:1571,0
+BA:1572,0
+BA:1572,0
+BA:1735,2
+BA:1735,2
+BA:1773,2
+BA:1773,1
+BA:1775,2
+BA:1775,2
+BA:1779,2
+BA:1779,2
+BA:1811,2
+BA:1811,2
+BA:1842,2
+BA:1842,1
+BA:1881,2
+BA:1881,2
+BA:1884,2
+BA:1884,2
+BA:1886,2
+BA:1886,2
+BA:1935,2
+BA:1935,2
+BA:1937,1
+BA:1937,2
+BA:4818,2
+BA:4818,1
+LF:76
+LH:61
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:188,_ZSt3minIjERKT_S2_S2_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:286,_ZNSt12__miter_baseIPPN8pkgCache7VerFileELb0EE3__bES3_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:268,_ZNSt12__niter_baseIPPN8pkgCache7VerFileELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEELb0EE3__bES9_
+FN:104,_ZNSt11__iter_swapILb1EE9iter_swapIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS6_SaIS6_EEEESB_EEvT_T0_
+FN:121,_ZSt9iter_swapIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEES9_EvT_T0_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEELb1EE3__bES9_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET0_T_SA_S9_
+FN:375,_ZNSt11__copy_moveILb0ELb1ESt26random_access_iterator_tagE8__copy_mIPN8pkgCache7VerFileEEEPT_PKS6_S9_S7_
+FN:385,_ZSt13__copy_move_aILb0EPPN8pkgCache7VerFileES3_ET1_T0_S5_S4_
+FN:430,_ZSt14__copy_move_a2ILb0EPPN8pkgCache7VerFileES3_ET1_T0_S5_S4_
+FN:456,_ZSt4copyIPPN8pkgCache7VerFileES3_ET0_T_S5_S4_
+FN:569,_ZNSt20__copy_move_backwardILb0ELb1ESt26random_access_iterator_tagE13__copy_move_bIPN8pkgCache7VerFileEEEPT_PKS6_S9_S7_
+FN:579,_ZSt22__copy_move_backward_aILb0EPPN8pkgCache7VerFileES3_ET1_T0_S5_S4_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPPN8pkgCache7VerFileES3_ET1_T0_S5_S4_
+FN:624,_ZSt13copy_backwardIPPN8pkgCache7VerFileES3_ET0_T_S5_S4_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEES9_ET1_T0_SB_SA_
+FN:624,_ZSt13copy_backwardIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEES9_ET0_T_SB_SA_
+DA:104,5805
+DA:106,5805
+DA:107,5805
+DA:121,5805
+DA:142,5805
+DA:146,5805
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,39
+DA:269,39
+DA:276,30
+DA:277,30
+DA:286,40
+DA:287,40
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:375,10
+DA:377,10
+DA:379,10
+DA:385,10
+DA:393,10
+DA:396,10
+DA:430,10
+DA:435,10
+DA:456,10
+DA:466,10
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:569,10
+DA:571,10
+DA:572,10
+DA:573,10
+DA:579,10
+DA:587,10
+DA:592,10
+DA:597,10
+DA:602,10
+DA:624,10
+DA:636,10
+BA:193,0
+BA:193,0
+BA:215,0
+BA:215,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+LF:51
+LH:33
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:97,_ZSt8_DestroyIPjEvT_S1_
+FN:126,_ZSt8_DestroyIPjjEvT_S1_RSaIT0_E
+FN:97,_ZSt8_DestroyIPPN8pkgCache7VerFileEEvT_S4_
+FN:126,_ZSt8_DestroyIPPN8pkgCache7VerFileES2_EvT_S4_RSaIT0_E
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,23975
+DA:101,0
+DA:103,0
+DA:104,23975
+DA:126,23975
+DA:128,23975
+DA:129,23975
+BA:101,0
+BA:101,0
+LF:9
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_heap.h
+FN:177,_ZSt11__push_heapIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEiS4_PFbPKS3_SB_EEvT_T0_SF_T1_T2_
+FN:295,_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEiS4_PFbPKS3_SB_EEvT_T0_SF_T1_T2_
+FN:412,_ZSt9make_heapIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEPFbPKS3_SB_EEvT_SE_T0_
+FN:322,_ZSt10__pop_heapIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEPFbPKS3_SB_EEvT_SE_SE_T0_
+FN:350,_ZSt8pop_heapIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEPFbPKS3_SB_EEvT_SE_T0_
+FN:477,_ZSt9sort_heapIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEPFbPKS3_SB_EEvT_SE_T0_
+DA:177,0
+DA:179,0
+DA:180,0
+DA:183,0
+DA:184,0
+DA:185,0
+DA:187,0
+DA:188,0
+DA:295,0
+DA:297,0
+DA:298,0
+DA:299,0
+DA:301,0
+DA:302,0
+DA:304,0
+DA:305,0
+DA:306,0
+DA:308,0
+DA:310,0
+DA:311,0
+DA:313,0
+DA:315,0
+DA:317,0
+DA:322,0
+DA:329,0
+DA:330,0
+DA:331,0
+DA:334,0
+DA:350,0
+DA:358,0
+DA:359,0
+DA:412,0
+DA:424,0
+DA:425,0
+DA:427,0
+DA:428,0
+DA:429,0
+DA:431,0
+DA:432,0
+DA:434,0
+DA:435,0
+DA:436,0
+DA:477,0
+DA:485,0
+DA:486,0
+DA:487,0
+BA:180,0
+BA:180,0
+BA:180,0
+BA:180,0
+BA:180,0
+BA:180,0
+BA:299,0
+BA:299,0
+BA:302,0
+BA:302,0
+BA:308,0
+BA:308,0
+BA:308,0
+BA:308,0
+BA:424,0
+BA:424,0
+BA:434,0
+BA:434,0
+BA:485,0
+BA:485,0
+LF:46
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEEC1ERKS4_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEE4baseEv
+FN:781,_ZN9__gnu_cxxneIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_
+FN:846,_ZN9__gnu_cxxmiIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEEENS_17__normal_iteratorIT_T0_E15difference_typeERKSB_SE_
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEEdeEv
+FN:735,_ZNK9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEEplERKi
+FN:743,_ZNK9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEEmiERKi
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEEppEv
+FN:715,_ZN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEEmmEv
+FN:794,_ZN9__gnu_cxxltIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_
+FN:769,_ZN9__gnu_cxxeqIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_
+FN:722,_ZN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEEmmEi
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:683,986
+DA:695,84794
+DA:696,84794
+DA:703,18872
+DA:705,18872
+DA:706,18872
+DA:715,27537
+DA:717,27537
+DA:718,27537
+DA:722,0
+DA:723,0
+DA:735,498
+DA:736,498
+DA:743,458
+DA:744,458
+DA:747,24106
+DA:748,24106
+DA:769,10
+DA:770,10
+DA:781,4361
+DA:782,4361
+DA:794,6263
+DA:795,6263
+DA:846,1404
+DA:847,1404
+LF:35
+LH:23
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_move.h
+FN:80,_ZSt4swapIPN8pkgCache7VerFileEEvRT_S4_
+DA:80,5805
+DA:85,5805
+DA:86,5805
+DA:87,5805
+DA:88,5805
+LF:5
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+FN:97,_ZNSt20__uninitialized_copyILb1EE18uninitialized_copyIPPN8pkgCache7VerFileES5_EET0_T_S7_S6_
+FN:113,_ZSt18uninitialized_copyIPPN8pkgCache7VerFileES3_ET0_T_S5_S4_
+FN:261,_ZSt22__uninitialized_copy_aIPPN8pkgCache7VerFileES3_S2_ET0_T_S5_S4_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPPN8pkgCache7VerFileES3_SaIS2_EET0_T_S6_S5_RT1_
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:97,10
+DA:98,10
+DA:113,10
+DA:122,10
+DA:261,10
+DA:262,10
+DA:268,0
+DA:272,0
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+LF:16
+LH:6
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:484,_ZNKSt6vectorIPN8pkgCache7VerFileESaIS2_EE4sizeEv
+FN:562,_ZNSt6vectorIPN8pkgCache7VerFileESaIS2_EEixEj
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:97,_ZNSt12_Vector_baseIjSaIjEE19_M_get_Tp_allocatorEv
+FN:517,_ZNKSt6vectorIPN8pkgCache7VerFileESaIS2_EE8capacityEv
+FN:97,_ZNSt12_Vector_baseIPN8pkgCache7VerFileESaIS2_EE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorIPN8pkgCache7VerFileESaIS2_EE3endEv
+FN:377,_ZNSt6vectorIPN8pkgCache7VerFileESaIS2_EE5beginEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:101,_ZNKSt12_Vector_baseIPN8pkgCache7VerFileESaIS2_EE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorIPN8pkgCache7VerFileESaIS2_EE8max_sizeEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:79,_ZNSt12_Vector_baseIjSaIjEE12_Vector_implD1Ev
+FN:79,_ZNSt12_Vector_baseIPN8pkgCache7VerFileESaIS2_EE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:84,_ZNSt12_Vector_baseIjSaIjEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIjSaIjEEC2Ev
+FN:213,_ZNSt6vectorIjSaIjEEC1Ev
+FN:84,_ZNSt12_Vector_baseIPN8pkgCache7VerFileESaIS2_EE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIPN8pkgCache7VerFileESaIS2_EEC2Ev
+FN:213,_ZNSt6vectorIPN8pkgCache7VerFileESaIS2_EEC1Ev
+FN:147,_ZNSt12_Vector_baseIPN8pkgCache7VerFileESaIS2_EE13_M_deallocateEPS2_j
+FN:135,_ZNSt12_Vector_baseIPN8pkgCache7VerFileESaIS2_EED2Ev
+FN:299,_ZNSt6vectorIPN8pkgCache7VerFileESaIS2_EED1Ev
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:147,_ZNSt12_Vector_baseIjSaIjEE13_M_deallocateEPjj
+FN:135,_ZNSt12_Vector_baseIjSaIjEED2Ev
+FN:299,_ZNSt6vectorIjSaIjEED1Ev
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:1075,_ZNKSt6vectorIPN8pkgCache7VerFileESaIS2_EE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+FN:143,_ZNSt12_Vector_baseIPN8pkgCache7VerFileESaIS2_EE11_M_allocateEj
+FN:902,_ZNSt6vectorIPN8pkgCache7VerFileESaIS2_EE20_M_allocate_and_copyIPS2_EES6_jT_S7_
+FN:686,_ZNSt6vectorIPN8pkgCache7VerFileESaIS2_EE9push_backERKS2_
+DA:79,2673
+DA:84,2664
+DA:85,2664
+DA:86,2664
+DA:97,50866
+DA:98,50866
+DA:101,10
+DA:102,10
+DA:108,2664
+DA:109,2664
+DA:135,2673
+DA:136,2673
+DA:137,2673
+DA:143,19
+DA:144,19
+DA:147,16119
+DA:149,16119
+DA:150,13446
+DA:151,16119
+DA:213,2664
+DA:214,2664
+DA:299,2673
+DA:300,2673
+DA:301,2673
+DA:377,10
+DA:378,10
+DA:386,0
+DA:387,0
+DA:395,10
+DA:396,10
+DA:404,0
+DA:405,0
+DA:484,6530
+DA:485,6530
+DA:489,10
+DA:490,10
+DA:517,10
+DA:519,10
+DA:526,0
+DA:527,0
+DA:562,28392
+DA:563,28392
+DA:686,4341
+DA:688,4341
+DA:690,4341
+DA:691,4341
+DA:694,0
+DA:695,4341
+DA:902,10
+DA:904,10
+DA:907,10
+DA:909,10
+DA:911,0
+DA:913,0
+DA:914,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:144,2
+BA:144,2
+BA:149,2
+BA:149,2
+BA:149,0
+BA:149,0
+BA:149,2
+BA:149,2
+BA:688,0
+BA:688,0
+BA:688,2
+BA:688,1
+BA:1077,0
+BA:1077,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:60
+LH:45
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+FN:70,_ZNSt6vectorIPN8pkgCache7VerFileESaIS2_EE7reserveEj
+FN:283,_ZNSt6vectorIPN8pkgCache7VerFileESaIS2_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS2_S4_EERKS2_
+DA:70,10
+DA:72,10
+DA:73,0
+DA:74,10
+DA:76,10
+DA:79,10
+DA:80,10
+DA:82,10
+DA:85,10
+DA:86,10
+DA:87,10
+DA:89,10
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:72,1
+BA:72,2
+BA:74,2
+BA:74,1
+BA:286,0
+BA:286,0
+BA:286,0
+BA:286,0
+LF:36
+LH:11
+end_of_record
+SF:/usr/include/c++/4.3/exception
+FN:59,_ZNSt9exceptionC2Ev
+FN:57,_ZNSt9exceptionC1ERKS_
+DA:57,0
+DA:59,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorIPN8pkgCache7VerFileEE9constructEPS3_RKS3_
+FN:101,_ZNK9__gnu_cxx13new_allocatorIPN8pkgCache7VerFileEE8max_sizeEv
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIjED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIPN8pkgCache7VerFileEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:69,_ZN9__gnu_cxx13new_allocatorIjEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIPN8pkgCache7VerFileEEC2Ev
+FN:97,_ZN9__gnu_cxx13new_allocatorIPN8pkgCache7VerFileEE10deallocateEPS3_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:97,_ZN9__gnu_cxx13new_allocatorIjE10deallocateEPjj
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorIPN8pkgCache7VerFileEE8allocateEjPKv
+DA:69,2673
+DA:71,0
+DA:76,2682
+DA:87,10
+DA:89,10
+DA:90,0
+DA:92,10
+DA:97,13446
+DA:98,13446
+DA:101,20
+DA:102,20
+DA:107,4341
+DA:108,4341
+BA:89,0
+BA:89,0
+BA:89,1
+BA:89,2
+BA:108,2
+BA:108,1
+BA:108,0
+BA:108,0
+LF:13
+LH:11
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:195,_ZNSolsEj
+DA:95,0
+DA:112,0
+DA:117,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:25
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/vocabularymerger.h
+FN:41,_ZN3ept7debtags16VocabularyMerger12FacetIndexerC1ERS1_
+FN:51,_ZN3ept7debtags16VocabularyMerger10TagIndexerC1ERS1_
+FN:119,_ZNK3ept7debtags16VocabularyMerger12facetIndexerEv
+FN:127,_ZNK3ept7debtags16VocabularyMerger10tagIndexerEv
+FN:42,_ZN3ept7debtags16VocabularyMerger12FacetIndexerD1Ev
+FN:52,_ZN3ept7debtags16VocabularyMerger10TagIndexerD1Ev
+FN:57,_ZN3ept7debtags16VocabularyMerger7TagDataD1Ev
+FN:68,_ZN3ept7debtags16VocabularyMerger9FacetDataD1Ev
+FN:90,_ZN3ept7debtags16VocabularyMergerC1Ev
+FN:34,_ZN3ept7debtags16VocabularyMergerD1Ev
+DA:34,0
+DA:41,0
+DA:42,0
+DA:51,0
+DA:52,0
+DA:57,0
+DA:68,0
+DA:90,0
+DA:119,7
+DA:127,7
+BA:42,0
+BA:42,0
+BA:52,0
+BA:52,0
+LF:10
+LH:2
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/vocabularymerger.test.h
+FN:30,_ZN20TestVocabularyMerger8indexrefEPKci
+FN:120,_ZN20TestVocabularyMerger2_3Ev
+FN:96,_ZN20TestVocabularyMerger2_2Ev
+FN:36,_ZN20TestVocabularyMerger2_1Ev
+DA:30,14
+DA:32,14
+DA:36,1
+DA:44,1
+DA:51,2
+DA:52,1
+DA:53,1
+DA:55,1
+DA:58,1
+DA:59,1
+DA:62,1
+DA:65,2
+DA:66,1
+DA:69,1
+DA:70,1
+DA:73,1
+DA:74,2
+DA:77,2
+DA:78,2
+DA:79,2
+DA:80,2
+DA:83,2
+DA:84,2
+DA:85,2
+DA:86,2
+DA:89,2
+DA:90,2
+DA:91,2
+DA:92,2
+DA:93,1
+DA:96,1
+DA:101,1
+DA:102,1
+DA:104,1
+DA:105,1
+DA:108,1
+DA:111,2
+DA:112,1
+DA:115,1
+DA:116,1
+DA:117,1
+DA:120,1
+DA:125,1
+DA:126,1
+DA:128,1
+DA:129,1
+DA:132,1
+DA:135,2
+DA:136,1
+DA:139,1
+DA:140,1
+DA:141,1
+LF:52
+LH:52
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationD1Ev
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:52,_ZlsIiER12AssertFailedS1_T_
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:41,_ZN12AssertFailedD1Ev
+FN:67,_Z12assert_eq_fnISsPKcEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnIiiEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:75,0
+BA:42,0
+BA:42,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+LF:22
+LH:0
+end_of_record
+SF:/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_vocabularymerger.cpp
+FN:5,_Z41__static_initialization_and_destruction_0ii
+FN:5,_GLOBAL__I_ept_test_generated__home_mornfall_dev_pkg_ept_work_ept_debtags_maint_vocabularymerger.cpp
+FN:5,_Z23run_VocabularyMerger__3v
+FN:4,_Z23run_VocabularyMerger__2v
+FN:3,_Z23run_VocabularyMerger__1v
+DA:3,1
+DA:4,1
+DA:5,4
+BA:5,2
+BA:5,1
+BA:5,2
+BA:5,1
+LF:3
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsSsEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEED2Ev
+FN:100,_ZNSaIcEC1ERKS_
+FN:100,_ZNSaIcEC2ERKS_
+FN:106,_ZNSaISt4pairIKSsSsEED1Ev
+FN:106,_ZNSaISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEEC2Ev
+FN:106,_ZNSaISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEED1Ev
+FN:104,_ZNSaISt4pairIKSsSsEEC1ISt13_Rb_tree_nodeIS1_EEERKSaIT_E
+FN:104,_ZNSaISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEC1ISt13_Rb_tree_nodeIS5_EEERKSaIT_E
+FN:104,_ZNSaISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEC1ISt13_Rb_tree_nodeIS5_EEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:104,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:7
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:1551,_ZNKSs13get_allocatorEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2188,0
+DA:2189,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:53
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:166,0
+DA:167,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_map.h
+FN:155,_ZNSt3mapISsN3ept7debtags16VocabularyMerger9FacetDataESt4lessISsESaISt4pairIKSsS3_EEEC1Ev
+FN:92,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEED2Ev
+FN:92,_ZNSt3mapISsN3ept7debtags16VocabularyMerger7TagDataESt4lessISsESaISt4pairIKSsS3_EEED1Ev
+FN:92,_ZNSt3mapISsN3ept7debtags16VocabularyMerger9FacetDataESt4lessISsESaISt4pairIKSsS3_EEED1Ev
+DA:92,0
+DA:155,0
+DA:156,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:73,_ZNSt4pairIKSsSsED1Ev
+FN:73,_ZNSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEED1Ev
+FN:73,_ZNSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEED1Ev
+DA:73,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_beginEv
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE13_Rb_tree_implIS6_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:415,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EE13_M_initializeEv
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE21_M_get_Node_allocatorEv
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE21_M_get_Node_allocatorEv
+FN:403,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EEC1Ev
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE21_M_get_Node_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13get_allocatorEv
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EED1Ev
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_eraseEPSt13_Rb_tree_nodeIS6_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EED1Ev
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_eraseEPSt13_Rb_tree_nodeIS6_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EED1Ev
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:360,0
+DA:361,0
+DA:388,0
+DA:390,0
+DA:391,0
+DA:392,0
+DA:398,0
+DA:403,0
+DA:405,0
+DA:406,0
+DA:415,0
+DA:417,0
+DA:418,0
+DA:419,0
+DA:420,0
+DA:421,0
+DA:452,0
+DA:453,0
+DA:479,0
+DA:480,0
+DA:487,0
+DA:488,0
+DA:562,0
+DA:584,0
+DA:585,0
+DA:936,0
+DA:939,0
+DA:941,0
+DA:942,0
+DA:943,0
+DA:944,0
+DA:946,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+LF:36
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSsEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSsEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSsEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEC2Ev
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEE10deallocateEPS9_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSsEEE10deallocateEPS5_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEE10deallocateEPS9_j
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSsEE7destroyEPS3_
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEE7destroyEPS7_
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEE7destroyEPS7_
+DA:69,0
+DA:71,0
+DA:76,0
+DA:97,0
+DA:98,0
+DA:118,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/diskindex/mmap.h
+FN:89,_ZN7tagcoll9diskindex11MMapIndexerC2Ev
+FN:91,_ZN7tagcoll9diskindex11MMapIndexerD0Ev
+FN:91,_ZN7tagcoll9diskindex11MMapIndexerD1Ev
+FN:91,_ZN7tagcoll9diskindex11MMapIndexerD2Ev
+DA:89,0
+DA:91,0
+BA:91,0
+BA:91,0
+BA:91,0
+BA:91,0
+BA:91,0
+BA:91,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/input/base.h
+FN:104,_ZN7tagcoll5input5InputD2Ev
+FN:104,_ZN7tagcoll5input5InputD0Ev
+FN:104,_ZN7tagcoll5input5InputD1Ev
+DA:104,1305
+BA:104,1
+BA:104,2
+BA:104,0
+BA:104,0
+BA:104,0
+BA:104,0
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/input/string.h
+FN:45,_ZN7tagcoll5input6StringD1Ev
+DA:45,4
+BA:45,1
+BA:45,2
+LF:1
+LH:1
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.h
+DA:86,1
+BA:86,1
+BA:86,2
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt.h
+FN:139,_ZN3ept4core11AptDatabaseC1Ev
+FN:209,_ZN3ept4core11AptDatabase10invalidateEv
+FN:331,_ZN3ept4core11AptDatabaseD1Ev
+DA:139,73
+DA:140,73
+DA:141,73
+DA:142,73
+DA:143,73
+DA:144,73
+DA:145,73
+DA:146,73
+DA:209,74
+DA:210,74
+DA:211,74
+DA:214,74
+DA:215,74
+DA:216,74
+DA:217,74
+DA:218,74
+DA:219,74
+DA:220,74
+DA:331,73
+DA:332,73
+DA:333,73
+BA:210,2
+BA:210,1
+BA:214,2
+BA:214,2
+BA:216,2
+BA:216,2
+BA:218,2
+BA:218,2
+LF:21
+LH:21
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/xapian.h
+FN:81,_ZNK3ept4core6xapian4List3enqEv
+FN:106,_ZN3ept4core6xapian5Query16setQualityCutoffEi
+FN:110,_ZN3ept4core6xapian5Query9setExpandEb
+FN:29,_ZN3ept4core6xapian9TagFilterC1Ev
+FN:30,_ZNK3ept4core6xapian9TagFilterclERKSs
+FN:230,_ZN3ept4core6xapian6SourceD1Ev
+FN:252,_ZN3ept4core6xapian6Source2dbEv
+FN:112,_ZN3ept4core6xapian5QueryC1ERN6Xapian8DatabaseE
+FN:97,_ZN3ept4core6xapian5QueryD1Ev
+FN:117,_ZNK3ept4core6xapian5Query14queryTokenizerESs
+FN:122,_ZNK3ept4core6xapian5Query13tokenizeQueryISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvSsT_
+FN:205,_ZN3ept4core6xapian5Query8addTermsESsbb
+FN:321,_ZN3ept4core6xapian6Source5queryERKSsbi
+FN:97,_ZN3ept4core6xapian5QueryaSERKS2_
+FN:35,_ZN3ept4core6xapian4ListD1Ev
+FN:29,_ZN3ept4core6xapian9TagFilterD0Ev
+FN:29,_ZN3ept4core6xapian9TagFilterD1Ev
+FN:140,_ZNK3ept4core6xapian5Query6expandISt15insert_iteratorISt3setISsSt4lessISsESaISsEEEEEvT_
+FN:154,_ZN3ept4core6xapian5Query13updateEnquireEv
+FN:35,_ZN3ept4core6xapian4ListaSERKS2_
+FN:85,_ZN3ept4core6xapian4ListC1EN6Xapian7EnquireE
+FN:182,_ZN3ept4core6xapian5Query7resultsEv
+FN:49,_ZNK3ept4core6xapian4List5tokenEv
+FN:35,_ZN3ept4core6xapian4ListC1ERKS2_
+FN:59,_ZNK3ept4core6xapian4List4seekEv
+FN:74,_ZNK3ept4core6xapian4List4tailEv
+FN:67,_ZNK3ept4core6xapian4List5emptyEv
+DA:29,8
+DA:30,1760
+DA:31,1760
+DA:35,91
+DA:49,15
+DA:50,15
+DA:51,15
+DA:52,0
+DA:59,58
+DA:60,58
+DA:61,0
+DA:62,0
+DA:63,0
+DA:65,58
+DA:67,30
+DA:68,30
+DA:69,0
+DA:70,30
+DA:71,30
+DA:74,28
+DA:75,28
+DA:76,28
+DA:77,28
+DA:78,0
+DA:81,6
+DA:82,6
+DA:85,3
+DA:86,3
+DA:87,3
+DA:88,3
+DA:89,6
+DA:90,3
+DA:91,3
+DA:92,3
+DA:97,13
+DA:106,5
+DA:107,5
+DA:108,5
+DA:110,5
+DA:112,9
+DA:113,9
+DA:114,9
+DA:115,9
+DA:117,5
+DA:118,5
+DA:122,5
+DA:124,5
+DA:125,15
+DA:127,10
+DA:128,0
+DA:130,10
+DA:131,10
+DA:132,10
+DA:133,10
+DA:134,5
+DA:137,5
+DA:140,4
+DA:142,4
+DA:144,4
+DA:145,24
+DA:146,24
+DA:148,4
+DA:149,4
+DA:150,4
+DA:151,4
+DA:152,4
+DA:154,8
+DA:158,8
+DA:161,8
+DA:162,8
+DA:164,8
+DA:166,8
+DA:167,4
+DA:168,4
+DA:169,4
+DA:170,4
+DA:171,4
+DA:174,4
+DA:175,4
+DA:176,4
+DA:177,4
+DA:178,4
+DA:179,4
+DA:182,3
+DA:183,3
+DA:184,3
+DA:205,5
+DA:206,5
+DA:207,5
+DA:208,5
+DA:209,5
+DA:210,0
+DA:211,0
+DA:216,0
+DA:219,5
+DA:220,5
+DA:230,4
+DA:252,9
+DA:253,9
+DA:254,9
+DA:321,5
+DA:323,5
+DA:324,5
+DA:325,5
+DA:326,5
+DA:327,0
+BA:29,0
+BA:29,0
+BA:29,1
+BA:29,2
+BA:31,2
+BA:31,2
+BA:31,1
+BA:31,2
+BA:60,1
+BA:60,2
+BA:60,0
+BA:60,0
+BA:60,1
+BA:60,2
+BA:60,0
+BA:60,0
+BA:60,1
+BA:60,2
+BA:68,1
+BA:68,2
+BA:71,2
+BA:71,1
+BA:71,2
+BA:71,2
+BA:71,2
+BA:71,1
+BA:71,0
+BA:71,0
+BA:87,2
+BA:87,1
+BA:125,2
+BA:125,2
+BA:127,1
+BA:127,2
+BA:133,1
+BA:133,2
+BA:145,2
+BA:145,2
+BA:150,1
+BA:150,2
+BA:166,2
+BA:166,2
+BA:176,2
+BA:176,1
+BA:179,2
+BA:179,2
+BA:179,2
+BA:179,2
+BA:179,2
+BA:179,2
+BA:206,1
+BA:206,2
+BA:209,1
+BA:209,2
+BA:210,0
+BA:210,0
+LF:106
+LH:95
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/xapian.test.h
+FN:24,_ZN21XapianTestEnvironmentC2Ev
+FN:20,_ZN21XapianTestEnvironmentD2Ev
+FN:32,_ZN10TestXapianD1Ev
+FN:36,_ZN10TestXapianC1Ev
+FN:70,_ZN10TestXapian10checkQueryEv
+FN:55,_ZN10TestXapian15checkXapianListIN3ept4core6xapian4ListEEEvT_N6Xapian4MSetE
+FN:64,_ZN10TestXapian4listEv
+FN:41,_ZN10TestXapian7enquireEv
+FN:48,_ZN10TestXapian9listCountEv
+DA:20,4
+DA:24,4
+DA:25,4
+DA:27,4
+DA:28,4
+DA:29,4
+DA:32,4
+DA:36,4
+DA:38,4
+DA:39,4
+DA:41,1
+DA:42,1
+DA:43,1
+DA:44,1
+DA:45,2
+DA:46,1
+DA:48,1
+DA:49,1
+DA:50,1
+DA:51,1
+DA:52,1
+DA:55,1
+DA:56,1
+DA:57,16
+DA:58,14
+DA:59,14
+DA:60,15
+DA:62,1
+DA:64,1
+DA:65,1
+DA:66,1
+DA:67,1
+DA:68,1
+DA:70,1
+DA:71,1
+DA:72,1
+BA:57,2
+BA:57,2
+LF:36
+LH:36
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/test.h
+FN:12,_ZN18AptTestEnvironmentC2Ev
+FN:10,_ZN18AptTestEnvironmentD2Ev
+DA:10,73
+DA:12,73
+DA:13,73
+DA:14,73
+DA:15,73
+DA:16,146
+DA:17,146
+DA:18,146
+DA:19,146
+DA:20,73
+DA:21,73
+LF:11
+LH:11
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/textsearch/maint/path.h
+FN:55,_ZN3ept10textsearch4Path16OverrideIndexDirC1ERKSs
+FN:59,_ZN3ept10textsearch4Path16OverrideIndexDirD1Ev
+DA:55,11
+DA:57,11
+DA:58,11
+DA:59,11
+LF:4
+LH:4
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/textsearch/textsearch.h
+FN:103,_ZN3ept10textsearch10TextSearchD1Ev
+DA:103,11
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/token.h
+FN:10,_ZN3ept5TokenD1Ev
+FN:14,_ZN3ept5TokenC1Ev
+FN:22,_ZNK3ept5Token7packageEv
+DA:10,0
+DA:14,0
+DA:22,7883
+DA:25,7883
+BA:25,2
+BA:25,2
+LF:4
+LH:2
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/list.h
+FN:340,_ZN6wibble4list5countIN3ept4core6xapian4ListEEEjT_
+DA:340,1
+DA:341,1
+DA:342,16
+DA:343,14
+DA:344,14
+DA:346,1
+BA:342,2
+BA:342,2
+LF:6
+LH:6
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/mixin.h
+FN:13,_ZN6wibble5mixin10ComparableIN3ept5TokenEEC2Ev
+DA:13,0
+LF:1
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/regexp.h
+FN:119,_ZNK6wibble9Tokenizer14const_iteratorneERKS1_
+FN:107,_ZN6wibble9Tokenizer14const_iteratorC1ERS0_b
+FN:129,_ZN6wibble9Tokenizer3endEv
+FN:106,_ZN6wibble9Tokenizer14const_iteratorC1ERS0_
+FN:128,_ZN6wibble9Tokenizer5beginEv
+FN:125,_ZN6wibble9TokenizerC1ERKSsS2_i
+FN:111,_ZNK6wibble9Tokenizer14const_iteratordeEv
+FN:90,_ZN6wibble9TokenizerD1Ev
+DA:90,8
+DA:106,8
+DA:107,19
+DA:111,23
+DA:113,23
+DA:119,21
+DA:121,21
+DA:125,8
+DA:126,8
+DA:128,8
+DA:129,19
+BA:121,2
+BA:121,2
+BA:121,1
+BA:121,2
+LF:11
+LH:11
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/string.h
+FN:217,_ZN6wibble3str7tolowerERKSs
+DA:217,10
+DA:219,10
+DA:220,10
+DA:221,50
+DA:222,40
+DA:223,0
+BA:221,2
+BA:221,2
+LF:6
+LH:5
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationD1Ev
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:52,_ZlsIPN6Xapian7EnquireEER12AssertFailedS4_T_
+FN:52,_ZlsIPKN6Xapian7EnquireEER12AssertFailedS5_T_
+FN:41,_ZN12AssertFailedD1Ev
+FN:67,_Z12assert_eq_fnIPN6Xapian7EnquireEPKS1_Ev8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsSsEv8LocationT_T0_
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:67,_Z12assert_eq_fnISsPKcEv8LocationT_T0_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:67,_Z12assert_eq_fnIjjEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,8908
+DA:69,8908
+DA:70,0
+DA:71,0
+DA:75,8908
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,1
+BA:69,2
+BA:69,1
+BA:69,2
+BA:69,0
+BA:69,0
+BA:69,1
+BA:69,2
+LF:26
+LH:3
+end_of_record
+SF:/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_xapian.cpp
+FN:6,_Z41__static_initialization_and_destruction_0ii
+FN:6,_GLOBAL__I_ept_test_generated__home_mornfall_dev_pkg_ept_work_ept_core_xapian.cpp
+FN:6,_Z21run_Xapian_checkQueryv
+FN:5,_Z15run_Xapian_listv
+FN:3,_Z18run_Xapian_enquirev
+FN:4,_Z20run_Xapian_listCountv
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,4
+BA:6,2
+BA:6,1
+BA:6,2
+BA:6,1
+LF:4
+LH:4
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISsEED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED1Ev
+FN:106,_ZNSaISsED2Ev
+FN:106,_ZNSaIPKN3ept10textsearch10TextSearch12ExtraIndexerEED2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISsEEC2Ev
+FN:104,_ZNSaISsEC1ISt13_Rb_tree_nodeISsEEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+FN:98,_ZNSaIPKN3ept10textsearch10TextSearch12ExtraIndexerEEC2Ev
+DA:98,10
+DA:100,0
+DA:101,0
+DA:104,0
+DA:106,10
+DA:118,0
+DA:119,0
+LF:7
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1544,_ZNKSs4dataEv
+FN:701,_ZNKSsixEj
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:543,_ZNKSs5beginEv
+FN:562,_ZNKSs3endEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:192,_ZNKSs4_Rep12_M_is_sharedEv
+FN:652,_ZNKSs8capacityEv
+FN:392,_ZNSs10_S_compareEjj
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:1593,_ZNKSs4findEPKcj
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+FN:870,_ZNSs9push_backEc
+FN:791,_ZNSspLEc
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:2201,_ZStneIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:1941,_ZNKSs7compareERKSs
+FN:2238,_ZStltIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:501,_ZNSsaSERKSs
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:192,0
+DA:193,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:543,0
+DA:544,0
+DA:562,0
+DA:563,0
+DA:606,0
+DA:607,0
+DA:652,0
+DA:653,0
+DA:701,0
+DA:704,0
+DA:791,0
+DA:793,0
+DA:794,0
+DA:870,0
+DA:872,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:877,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1593,0
+DA:1596,0
+DA:1923,0
+DA:1925,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2162,0
+DA:2165,0
+DA:2188,0
+DA:2189,0
+DA:2201,0
+DA:2202,0
+DA:2238,0
+DA:2239,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:308,0
+BA:308,0
+BA:341,0
+BA:341,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:1948,0
+BA:1948,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:98
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:668,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+DA:668,2632
+DA:673,2632
+DA:674,2632
+DA:675,2632
+DA:676,2632
+DA:677,2632
+DA:678,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:23
+LH:6
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,2632
+DA:262,2632
+DA:273,0
+DA:274,0
+LF:8
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:188,_ZSt3minIjERKT_S2_S2_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt15insert_iteratorISt3setISsSt4lessISsESaISsEEELb0EE3__bES6_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:286,_ZNSt12__miter_baseIN6Xapian12TermIteratorELb0EE3__bES1_
+FN:268,_ZNSt12__niter_baseIN6Xapian12TermIteratorELb0EE3__bES1_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt18input_iterator_tagE8__copy_mIN6Xapian12TermIteratorESt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SB_SA_
+FN:385,_ZSt13__copy_move_aILb0EN6Xapian12TermIteratorESt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S8_S7_
+FN:430,_ZSt14__copy_move_a2ILb0EN6Xapian12TermIteratorESt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S8_S7_
+FN:456,_ZSt4copyIN6Xapian12TermIteratorESt20back_insert_iteratorISt6vectorISsSaISsEEEET0_T_S8_S7_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEEET0_T_SC_SB_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEET1_T0_S9_S8_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt15insert_iteratorISt3setISsSt4lessISsES4_EEET1_T0_SE_SD_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt15insert_iteratorISt3setISsSt4lessISsES4_EEET0_T_SE_SD_
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,42302
+DA:269,42302
+DA:276,0
+DA:277,0
+DA:286,2
+DA:287,2
+DA:309,1
+DA:311,10
+DA:312,4
+DA:313,1
+DA:337,5
+DA:340,15
+DA:342,10
+DA:343,10
+DA:344,10
+DA:346,5
+DA:385,6
+DA:393,6
+DA:396,6
+DA:430,6
+DA:435,6
+DA:456,6
+DA:466,6
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:193,0
+BA:193,0
+BA:215,0
+BA:215,0
+BA:311,2
+BA:311,2
+BA:340,2
+BA:340,2
+BA:542,0
+BA:542,0
+LF:42
+LH:21
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:97,_ZSt8_DestroyIPPKN3ept10textsearch10TextSearch12ExtraIndexerEEvT_S7_
+FN:126,_ZSt8_DestroyIPPKN3ept10textsearch10TextSearch12ExtraIndexerES5_EvT_S7_RSaIT0_E
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,10
+DA:101,0
+DA:103,0
+DA:104,10
+DA:126,10
+DA:128,10
+DA:129,10
+BA:101,0
+BA:101,0
+LF:9
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:469,_ZNKSt9_IdentityISsEclERKSs
+FN:229,_ZNKSt4lessISsEclERKSsS2_
+DA:229,0
+DA:230,0
+DA:469,0
+DA:470,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPKcSsEppEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPKcSsEdeEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKcSsEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKcSsE4baseEv
+FN:781,_ZN9__gnu_cxxneIPKcSsEEbRKNS_17__normal_iteratorIT_T0_EES8_
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:572,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEC1ERS4_St23_Rb_tree_const_iteratorISsE
+FN:645,_ZSt8inserterISt3setISsSt4lessISsESaISsEESt23_Rb_tree_const_iteratorISsEESt15insert_iteratorIT_ERS8_T0_
+FN:628,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEppEi
+FN:618,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEdeEv
+FN:439,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEi
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:743,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEmiERKi
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:623,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEppEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+FN:599,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEaSERKSs
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:439,10
+DA:440,10
+DA:456,0
+DA:457,0
+DA:572,0
+DA:573,0
+DA:599,0
+DA:601,0
+DA:602,0
+DA:603,0
+DA:618,0
+DA:619,0
+DA:623,0
+DA:624,0
+DA:628,0
+DA:629,0
+DA:645,0
+DA:648,0
+DA:683,0
+DA:695,110899
+DA:696,110899
+DA:703,77
+DA:705,77
+DA:706,77
+DA:743,0
+DA:744,0
+DA:747,112638
+DA:748,112638
+DA:781,56319
+DA:782,56319
+LF:38
+LH:11
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorISsEbEC1ERKS1_RKb
+DA:88,0
+DA:89,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:261,_ZNKSt3setISsSt4lessISsESaISsEE5beginEv
+FN:270,_ZNKSt3setISsSt4lessISsESaISsEE3endEv
+FN:141,_ZNSt3setISsSt4lessISsESaISsEEC1Ev
+FN:93,_ZNSt3setISsSt4lessISsESaISsEED1Ev
+FN:216,_ZNSt3setISsSt4lessISsESaISsEEaSERKS3_
+FN:405,_ZNSt3setISsSt4lessISsESaISsEE6insertESt23_Rb_tree_const_iteratorISsERKSs
+DA:93,0
+DA:141,0
+DA:142,0
+DA:216,0
+DA:218,0
+DA:219,0
+DA:261,0
+DA:262,0
+DA:270,0
+DA:271,0
+DA:405,0
+DA:406,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:103,_ZNSt18_Rb_tree_node_base10_S_minimumEPS_
+FN:117,_ZNSt18_Rb_tree_node_base10_S_maximumEPS_
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISsEneERKS0_
+FN:452,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorISsEC1ERKSt17_Rb_tree_iteratorISsE
+FN:247,_ZNKSt23_Rb_tree_const_iteratorISsEdeEv
+FN:398,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPSt18_Rb_tree_node_base
+FN:463,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorISsEC1EPSt13_Rb_tree_nodeISsE
+FN:596,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISsEeqERKS0_
+FN:456,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorISsEC1EPKSt13_Rb_tree_nodeISsE
+FN:603,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:614,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE3endEv
+FN:347,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE21_M_get_Node_allocatorEv
+FN:432,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_rootEv
+FN:428,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_S_minimumEPSt18_Rb_tree_node_base
+FN:436,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_leftmostEv
+FN:511,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_S_maximumEPSt18_Rb_tree_node_base
+FN:444,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE12_M_rightmostEv
+FN:415,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:471,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt13_Rb_tree_nodeISsE
+FN:475,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt13_Rb_tree_nodeISsE
+FN:495,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPKSt18_Rb_tree_node_base
+FN:491,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPKSt18_Rb_tree_node_base
+FN:403,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEC1Ev
+FN:351,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13get_allocatorEv
+FN:641,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE4sizeEv
+FN:360,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_put_nodeEPSt13_Rb_tree_nodeISsE
+FN:388,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE15_M_destroy_nodeEPSt13_Rb_tree_nodeISsE
+FN:936,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_eraseEPSt13_Rb_tree_nodeISsE
+FN:584,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEED1Ev
+FN:695,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5clearEv
+FN:356,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE14_M_create_nodeERKSs
+FN:378,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_M_clone_nodeEPKSt13_Rb_tree_nodeISsE
+FN:900,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_copyEPKSt13_Rb_tree_nodeISsEPS7_
+FN:824,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEaSERKS5_
+FN:270,_ZNSt23_Rb_tree_const_iteratorISsEmmEv
+FN:846,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_M_insert_EPKSt18_Rb_tree_node_baseS8_RKSs
+FN:195,_ZNSt17_Rb_tree_iteratorISsEmmEv
+FN:1133,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE16_M_insert_uniqueERKSs
+FN:255,_ZNSt23_Rb_tree_const_iteratorISsEppEv
+FN:1178,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE17_M_insert_unique_ESt23_Rb_tree_const_iteratorISsERKSs
+DA:103,0
+DA:105,0
+DA:106,0
+DA:117,0
+DA:119,0
+DA:120,0
+DA:168,0
+DA:169,0
+DA:195,0
+DA:197,0
+DA:198,0
+DA:210,0
+DA:211,0
+DA:240,0
+DA:241,0
+DA:243,0
+DA:244,0
+DA:247,0
+DA:248,0
+DA:255,0
+DA:257,0
+DA:258,0
+DA:270,0
+DA:272,0
+DA:273,0
+DA:289,0
+DA:290,0
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:356,0
+DA:357,0
+DA:360,0
+DA:361,0
+DA:364,0
+DA:366,0
+DA:368,0
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,0
+DA:378,0
+DA:380,0
+DA:381,0
+DA:382,0
+DA:383,0
+DA:384,0
+DA:388,0
+DA:390,0
+DA:391,0
+DA:392,0
+DA:398,0
+DA:403,0
+DA:405,0
+DA:406,0
+DA:415,0
+DA:417,0
+DA:418,0
+DA:419,0
+DA:420,0
+DA:421,0
+DA:428,0
+DA:429,0
+DA:432,0
+DA:433,0
+DA:436,0
+DA:437,0
+DA:444,0
+DA:445,0
+DA:452,0
+DA:453,0
+DA:456,0
+DA:459,0
+DA:463,0
+DA:464,0
+DA:471,0
+DA:472,0
+DA:475,0
+DA:476,0
+DA:479,0
+DA:480,0
+DA:483,0
+DA:484,0
+DA:487,0
+DA:488,0
+DA:491,0
+DA:492,0
+DA:495,0
+DA:496,0
+DA:499,0
+DA:500,0
+DA:503,0
+DA:504,0
+DA:511,0
+DA:512,0
+DA:562,0
+DA:584,0
+DA:585,0
+DA:596,0
+DA:599,0
+DA:603,0
+DA:606,0
+DA:614,0
+DA:617,0
+DA:641,0
+DA:642,0
+DA:695,0
+DA:697,0
+DA:698,0
+DA:699,0
+DA:700,0
+DA:701,0
+DA:702,0
+DA:824,0
+DA:826,0
+DA:829,0
+DA:830,0
+DA:831,0
+DA:833,0
+DA:834,0
+DA:835,0
+DA:836,0
+DA:839,0
+DA:846,0
+DA:850,0
+DA:852,0
+DA:854,0
+DA:857,0
+DA:858,0
+DA:900,0
+DA:903,0
+DA:904,0
+DA:908,0
+DA:909,0
+DA:910,0
+DA:911,0
+DA:913,0
+DA:915,0
+DA:916,0
+DA:917,0
+DA:918,0
+DA:919,0
+DA:920,0
+DA:921,0
+DA:924,0
+DA:926,0
+DA:927,0
+DA:929,0
+DA:936,0
+DA:939,0
+DA:941,0
+DA:942,0
+DA:943,0
+DA:944,0
+DA:946,0
+DA:1133,0
+DA:1135,0
+DA:1136,0
+DA:1137,0
+DA:1138,0
+DA:1140,0
+DA:1141,0
+DA:1142,0
+DA:1144,0
+DA:1145,0
+DA:1147,0
+DA:1148,0
+DA:1150,0
+DA:1152,0
+DA:1153,0
+DA:1154,0
+DA:1178,0
+DA:1181,0
+DA:1183,0
+DA:1186,0
+DA:1188,0
+DA:1190,0
+DA:1194,0
+DA:1195,0
+DA:1196,0
+DA:1197,0
+DA:1200,0
+DA:1201,0
+DA:1204,0
+DA:1207,0
+DA:1209,0
+DA:1213,0
+DA:1214,0
+DA:1215,0
+DA:1216,0
+DA:1219,0
+DA:1220,0
+DA:1222,0
+DA:1225,0
+DA:1230,0
+BA:105,0
+BA:105,0
+BA:119,0
+BA:119,0
+BA:826,0
+BA:826,0
+BA:831,0
+BA:831,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:908,0
+BA:908,0
+BA:913,0
+BA:913,0
+BA:918,0
+BA:918,0
+BA:939,0
+BA:939,0
+BA:1138,0
+BA:1138,0
+BA:1142,0
+BA:1142,0
+BA:1145,0
+BA:1145,0
+BA:1147,0
+BA:1147,0
+BA:1152,0
+BA:1152,0
+BA:1181,0
+BA:1181,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1190,0
+BA:1190,0
+BA:1195,0
+BA:1195,0
+BA:1197,0
+BA:1197,0
+BA:1200,0
+BA:1200,0
+BA:1209,0
+BA:1209,0
+BA:1214,0
+BA:1214,0
+BA:1216,0
+BA:1216,0
+BA:1219,0
+BA:1219,0
+LF:196
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:647,_ZNSt6vectorISsSaISsEE4backEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:97,_ZNSt12_Vector_baseIPKN3ept10textsearch10TextSearch12ExtraIndexerESaIS5_EE19_M_get_Tp_allocatorEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:79,_ZNSt12_Vector_baseIPKN3ept10textsearch10TextSearch12ExtraIndexerESaIS5_EE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:84,_ZNSt12_Vector_baseIPKN3ept10textsearch10TextSearch12ExtraIndexerESaIS5_EE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIPKN3ept10textsearch10TextSearch12ExtraIndexerESaIS5_EEC2Ev
+FN:213,_ZNSt6vectorIPKN3ept10textsearch10TextSearch12ExtraIndexerESaIS5_EEC1Ev
+FN:722,_ZNSt6vectorISsSaISsEE8pop_backEv
+FN:147,_ZNSt12_Vector_baseIPKN3ept10textsearch10TextSearch12ExtraIndexerESaIS5_EE13_M_deallocateEPS5_j
+FN:135,_ZNSt12_Vector_baseIPKN3ept10textsearch10TextSearch12ExtraIndexerESaIS5_EED2Ev
+FN:299,_ZNSt6vectorIPKN3ept10textsearch10TextSearch12ExtraIndexerESaIS5_EED1Ev
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+DA:79,10
+DA:84,10
+DA:85,10
+DA:86,10
+DA:97,10
+DA:98,10
+DA:101,0
+DA:102,0
+DA:108,10
+DA:109,10
+DA:135,10
+DA:136,10
+DA:137,10
+DA:143,0
+DA:144,0
+DA:147,10
+DA:149,10
+DA:150,0
+DA:151,10
+DA:213,10
+DA:214,10
+DA:299,10
+DA:300,10
+DA:301,10
+DA:377,0
+DA:378,0
+DA:395,0
+DA:396,0
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:647,0
+DA:648,0
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:722,0
+DA:724,0
+DA:725,0
+DA:726,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:149,1
+BA:149,2
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:49
+LH:19
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:286,0
+BA:286,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIPKN3ept10textsearch10TextSearch12ExtraIndexerEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIPKN3ept10textsearch10TextSearch12ExtraIndexerEEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8max_sizeEv
+FN:118,_ZN9__gnu_cxx13new_allocatorISsE7destroyEPSs
+FN:97,_ZN9__gnu_cxx13new_allocatorIPKN3ept10textsearch10TextSearch12ExtraIndexerEE10deallocateEPS6_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE10deallocateEPS2_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8allocateEjPKv
+DA:69,10
+DA:71,0
+DA:76,10
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+DA:118,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:14
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:229,_ZNSolsEPKv
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:195,_ZNSolsEj
+DA:95,0
+DA:112,0
+DA:117,0
+DA:195,0
+DA:199,0
+DA:229,0
+DA:230,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/xapian/base.h
+FN:164,_ZNK6Xapian8Internal9RefCntPtrINS_12TermIterator8InternalEE3getEv
+FN:94,_ZN6Xapian8Internal9RefCntPtrINS_5Query8InternalEEC1EPS3_
+FN:130,_ZN6Xapian8Internal9RefCntPtrINS_5Query8InternalEED1Ev
+DA:94,19
+DA:96,19
+DA:97,19
+DA:130,0
+DA:132,0
+DA:136,0
+DA:137,0
+DA:138,0
+DA:140,0
+DA:164,10
+DA:166,10
+BA:96,1
+BA:96,2
+BA:132,0
+BA:132,0
+BA:132,0
+BA:132,0
+BA:132,0
+BA:132,0
+BA:138,0
+BA:138,0
+LF:11
+LH:5
+end_of_record
+SF:/usr/include/xapian/database.h
+FN:178,_ZNK6Xapian8Database12allterms_endERKSs
+DA:178,1
+DA:179,1
+LF:2
+LH:2
+end_of_record
+SF:/usr/include/xapian/enquire.h
+FN:273,_ZN6Xapian12MSetIteratorppEv
+FN:374,_ZN6XapianeqERKNS_12MSetIteratorES2_
+FN:379,_ZN6XapianneERKNS_12MSetIteratorES2_
+FN:476,_ZN6Xapian12ESetIteratorppEv
+FN:525,_ZN6XapianneERKNS_12ESetIteratorES2_
+FN:258,_ZN6Xapian12MSetIteratorD1Ev
+FN:461,_ZN6Xapian12ESetIteratorD1Ev
+FN:564,_ZN6Xapian4RSet12add_documentERKNS_12MSetIteratorE
+FN:955,_ZNK6Xapian7Enquire8get_esetEjRKNS_4RSetEPKNS_13ExpandDeciderE
+FN:256,_ZN6Xapian12MSetIteratorC1Ev
+FN:267,_ZN6Xapian12MSetIteratoraSERKS0_
+FN:261,_ZN6Xapian12MSetIteratorC1ERKS0_
+FN:279,_ZN6Xapian12MSetIteratorppEi
+DA:256,3
+DA:258,165
+DA:261,58
+DA:262,58
+DA:263,58
+DA:264,58
+DA:267,31
+DA:268,31
+DA:269,31
+DA:270,31
+DA:273,61
+DA:274,61
+DA:275,61
+DA:279,28
+DA:280,28
+DA:281,28
+DA:374,30
+DA:376,30
+DA:379,58
+DA:381,58
+DA:461,8
+DA:476,0
+DA:477,0
+DA:478,0
+DA:525,4
+DA:527,4
+DA:564,20
+DA:955,4
+DA:956,4
+LF:29
+LH:26
+end_of_record
+SF:/usr/include/xapian/expanddecider.h
+FN:32,_ZN6Xapian13ExpandDeciderC2Ev
+DA:32,5
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/xapian/query.h
+FN:258,_ZN6Xapian5QueryC1ISt23_Rb_tree_const_iteratorISsEEENS0_2opET_S5_j
+DA:258,16
+DA:259,16
+DA:262,16
+DA:265,48
+DA:266,16
+DA:267,16
+DA:270,16
+DA:271,0
+DA:272,0
+DA:273,0
+DA:275,16
+BA:265,2
+BA:265,2
+LF:11
+LH:8
+end_of_record
+SF:/usr/include/xapian/termiterator.h
+FN:136,_ZN6XapianeqERKNS_12TermIteratorES2_
+FN:142,_ZN6XapianneERKNS_12TermIteratorES2_
+DA:136,5
+DA:138,5
+DA:142,5
+DA:144,5
+LF:4
+LH:4
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/apt/version.h
+FN:77,_ZNK3ept3apt7Version7isValidEv
+FN:41,_ZN3ept3apt7VersionD1Ev
+FN:50,_ZN3ept3apt7VersionC1Ev
+FN:55,_ZN3ept3apt7VersionC1ERKSsS3_
+FN:41,_ZN3ept3apt7VersionC1ERKS1_
+FN:61,_ZNK3ept3apt7Version4nameEv
+FN:67,_ZNK3ept3apt7Version7versionEv
+FN:41,_ZN3ept3apt7VersionaSERKS1_
+FN:82,_ZNK3ept3apt7VersioneqERKS1_
+FN:83,_ZNK3ept3apt7VersionneERKS1_
+DA:41,55
+DA:50,7
+DA:55,34
+DA:56,34
+DA:61,81
+DA:67,38
+DA:77,11
+DA:82,9
+DA:83,5
+BA:77,2
+BA:77,2
+BA:77,2
+BA:77,1
+BA:82,2
+BA:82,1
+BA:82,2
+BA:82,1
+BA:83,2
+BA:83,2
+BA:83,2
+BA:83,2
+LF:9
+LH:9
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/apt/version.test.h
+FN:123,_ZN14TestAptVersion16policyComparisonEv
+FN:95,_ZN14TestAptVersion9valueCopyEv
+FN:61,_ZN14TestAptVersion10comparisonEv
+FN:114,_ZN14TestAptVersion15upstreamVersionEv
+FN:42,_ZN14TestAptVersion5basicEv
+FN:28,_ZN14TestAptVersion7invalidEv
+DA:28,1
+DA:30,1
+DA:32,1
+DA:33,1
+DA:34,1
+DA:36,1
+DA:38,1
+DA:39,1
+DA:42,1
+DA:44,1
+DA:46,2
+DA:47,1
+DA:48,1
+DA:50,1
+DA:52,1
+DA:54,1
+DA:55,2
+DA:56,1
+DA:57,1
+DA:58,1
+DA:61,1
+DA:63,1
+DA:64,2
+DA:66,2
+DA:67,2
+DA:68,2
+DA:69,2
+DA:70,2
+DA:71,2
+DA:74,2
+DA:76,2
+DA:77,2
+DA:78,2
+DA:79,2
+DA:80,2
+DA:81,2
+DA:84,2
+DA:86,2
+DA:87,2
+DA:88,2
+DA:89,2
+DA:90,2
+DA:91,2
+DA:92,1
+DA:95,1
+DA:97,1
+DA:98,1
+DA:100,1
+DA:102,1
+DA:103,1
+DA:104,1
+DA:105,2
+DA:107,2
+DA:108,2
+DA:109,2
+DA:110,2
+DA:111,1
+DA:114,1
+DA:116,1
+DA:117,2
+DA:118,2
+DA:119,2
+DA:120,1
+DA:123,1
+DA:125,1
+DA:126,2
+DA:127,2
+DA:128,2
+DA:129,2
+DA:130,2
+DA:132,1
+LF:71
+LH:71
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.h
+DA:86,1
+BA:86,1
+BA:86,2
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationD1Ev
+FN:17,_ZN8LocationC1EPKciSs
+FN:13,_ZN8LocationC1ERKS_
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:41,_ZN12AssertFailedD1Ev
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:67,_Z12assert_eq_fnISsSsEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsPKcEv8LocationT_T0_
+FN:52,_ZlsIbER12AssertFailedS1_T_
+FN:67,_Z12assert_eq_fnIbbEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,4
+DA:69,4
+DA:70,0
+DA:71,0
+DA:75,4
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,1
+BA:69,2
+LF:26
+LH:3
+end_of_record
+SF:/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_version.cpp
+FN:8,_Z41__static_initialization_and_destruction_0ii
+FN:8,_GLOBAL__I_ept_test_generated__home_mornfall_dev_pkg_ept_work_ept_apt_version.cpp
+FN:8,_Z31run_AptVersion_policyComparisonv
+FN:6,_Z24run_AptVersion_valueCopyv
+FN:5,_Z25run_AptVersion_comparisonv
+FN:7,_Z30run_AptVersion_upstreamVersionv
+FN:4,_Z20run_AptVersion_basicv
+FN:3,_Z22run_AptVersion_invalidv
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,1
+DA:7,1
+DA:8,4
+BA:8,2
+BA:8,1
+BA:8,2
+BA:8,1
+LF:6
+LH:6
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:2201,_ZStneIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:686,0
+DA:687,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2162,0
+DA:2165,0
+DA:2188,0
+DA:2189,0
+DA:2201,0
+DA:2202,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:59
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:166,0
+DA:167,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+DA:69,0
+DA:71,0
+DA:76,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:177,_ZNSolsEb
+DA:95,0
+DA:112,0
+DA:117,0
+DA:177,0
+DA:178,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.h
+DA:86,1
+BA:86,1
+BA:86,2
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt.h
+FN:139,_ZN3ept4core11AptDatabaseC1Ev
+FN:209,_ZN3ept4core11AptDatabase10invalidateEv
+FN:331,_ZN3ept4core11AptDatabaseD1Ev
+DA:139,0
+DA:140,0
+DA:141,0
+DA:142,0
+DA:143,0
+DA:144,0
+DA:145,0
+DA:146,0
+DA:209,0
+DA:210,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:218,0
+DA:219,0
+DA:220,0
+DA:331,0
+DA:332,0
+DA:333,0
+BA:210,0
+BA:210,0
+BA:214,0
+BA:214,0
+BA:216,0
+BA:216,0
+BA:218,0
+BA:218,0
+LF:21
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/debtags.h
+FN:280,_ZN3ept7debtags7Debtags10vocabularyEv
+FN:289,_ZN3ept7debtags7Debtags5pkgidEv
+FN:194,_ZN3ept7debtags7DebtagsD1Ev
+DA:194,0
+DA:280,0
+DA:289,4
+LF:3
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/path.h
+FN:76,_ZN3ept7debtags4Path24OverrideDebtagsSourceDirC1ERKSs
+FN:80,_ZN3ept7debtags4Path24OverrideDebtagsSourceDirD1Ev
+FN:86,_ZN3ept7debtags4Path23OverrideDebtagsIndexDirC1ERKSs
+FN:90,_ZN3ept7debtags4Path23OverrideDebtagsIndexDirD1Ev
+FN:96,_ZN3ept7debtags4Path28OverrideDebtagsUserSourceDirC1ERKSs
+FN:100,_ZN3ept7debtags4Path28OverrideDebtagsUserSourceDirD1Ev
+FN:106,_ZN3ept7debtags4Path27OverrideDebtagsUserIndexDirC1ERKSs
+FN:110,_ZN3ept7debtags4Path27OverrideDebtagsUserIndexDirD1Ev
+DA:76,0
+DA:78,0
+DA:79,0
+DA:80,0
+DA:86,0
+DA:88,0
+DA:89,0
+DA:90,0
+DA:96,0
+DA:98,0
+DA:99,0
+DA:100,0
+DA:106,0
+DA:108,0
+DA:109,0
+DA:110,0
+LF:16
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/pkgid.h
+FN:54,_ZNK3ept7debtags5PkgId4sizeEv
+FN:68,_ZNK3ept7debtags5PkgId4byIDEi
+FN:41,_ZN3ept7debtags5PkgIdD1Ev
+DA:41,0
+DA:54,0
+DA:68,0
+DA:70,0
+DA:71,0
+DA:72,0
+BA:54,0
+BA:54,0
+BA:70,0
+BA:70,0
+BA:70,0
+BA:70,0
+BA:70,0
+BA:70,0
+LF:6
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/serializer.h
+FN:75,_ZN3ept7debtags11StringToIntIN7tagcoll4coll8InserterINS3_6SimpleIiiEEEEEC1ERNS0_5PkgIdERNS0_10VocabularyERKS7_
+FN:111,_ZN3ept7debtags11stringToIntIN7tagcoll4coll8InserterINS3_6SimpleIiiEEEEEENS0_11StringToIntIT_EERNS0_5PkgIdERNS0_10VocabularyERKS9_
+FN:27,_ZN3ept7debtags8IntToPkgIN7tagcoll4coll8InserterINS3_6SimpleISsNS0_3TagEEEEEEC1ERNS0_5PkgIdERNS0_10VocabularyERKS8_
+FN:62,_ZN3ept7debtags8intToPkgIN7tagcoll4coll8InserterINS3_6SimpleISsNS0_3TagEEEEEEENS0_8IntToPkgIT_EERNS0_5PkgIdERNS0_10VocabularyERKSA_
+FN:171,_ZN3ept7debtags11PkgToStringIN7tagcoll4coll8InserterINS3_6SimpleISsSsEEEEEC1ERKS7_
+FN:188,_ZN3ept7debtags11pkgToStringIN7tagcoll4coll8InserterINS3_6SimpleISsSsEEEEEENS0_11PkgToStringIT_EERKS9_
+FN:201,_ZN3ept7debtags16PatchStringToIntIN7tagcoll8InserterIiiEEEC1ERNS0_5PkgIdERNS0_10VocabularyERKS4_
+FN:232,_ZN3ept7debtags16patchStringToIntIN7tagcoll8InserterIiiEEEENS0_16PatchStringToIntIT_EERNS0_5PkgIdERNS0_10VocabularyERKS6_
+FN:245,_ZN3ept7debtags16PatchIntToStringIN7tagcoll8InserterISsSsEEEC1ERNS0_5PkgIdERNS0_10VocabularyERKS4_
+FN:276,_ZN3ept7debtags16patchIntToStringIN7tagcoll8InserterISsSsEEEENS0_16PatchIntToStringIT_EERNS0_5PkgIdERNS0_10VocabularyERKS6_
+FN:31,_ZN3ept7debtags8IntToPkgIN7tagcoll4coll8InserterINS3_6SimpleISsNS0_3TagEEEEEEaSIN6wibble9SingletonIiEESt3setIiSt4lessIiESaIiEEEERS9_RKSt4pairIT_T0_E
+FN:204,_ZN3ept7debtags16PatchStringToIntIN7tagcoll8InserterIiiEEEaSERKNS2_5PatchISsSsEE
+FN:79,_ZN3ept7debtags11StringToIntIN7tagcoll4coll8InserterINS3_6SimpleIiiEEEEEaSIN6wibble9SingletonISsEESt3setISsSt4lessISsESaISsEEEERS8_RKSt4pairIT_T0_E
+FN:248,_ZN3ept7debtags16PatchIntToStringIN7tagcoll8InserterISsSsEEEaSERKNS2_5PatchIiiEE
+FN:174,_ZN3ept7debtags11PkgToStringIN7tagcoll4coll8InserterINS3_6SimpleISsSsEEEEEaSIN6wibble9SingletonISsEESt3setINS0_3TagESt4lessISE_ESaISE_EEEERS8_RKSt4pairIT_T0_E
+DA:27,0
+DA:28,0
+DA:31,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:39,0
+DA:40,0
+DA:41,0
+DA:44,0
+DA:47,0
+DA:48,0
+DA:49,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:57,0
+DA:62,0
+DA:64,0
+DA:75,1
+DA:76,1
+DA:79,1
+DA:81,1
+DA:82,1
+DA:84,2
+DA:87,1
+DA:88,1
+DA:89,1
+DA:92,3
+DA:95,2
+DA:96,2
+DA:97,2
+DA:100,1
+DA:102,1
+DA:103,1
+DA:105,1
+DA:111,1
+DA:113,1
+DA:171,1
+DA:174,1
+DA:176,1
+DA:177,3
+DA:179,2
+DA:180,2
+DA:181,1
+DA:182,1
+DA:183,1
+DA:188,1
+DA:190,1
+DA:201,1
+DA:202,1
+DA:204,1
+DA:206,1
+DA:207,1
+DA:208,0
+DA:210,1
+DA:211,2
+DA:214,1
+DA:215,1
+DA:216,1
+DA:218,2
+DA:221,1
+DA:222,1
+DA:223,1
+DA:225,1
+DA:226,1
+DA:227,1
+DA:232,1
+DA:234,1
+DA:245,2
+DA:246,2
+DA:248,2
+DA:250,2
+DA:251,2
+DA:252,0
+DA:254,2
+DA:255,4
+DA:258,2
+DA:259,2
+DA:260,2
+DA:262,3
+DA:265,1
+DA:266,1
+DA:267,1
+DA:269,2
+DA:270,2
+DA:271,2
+DA:276,2
+DA:278,2
+BA:36,0
+BA:36,0
+BA:40,0
+BA:40,0
+BA:44,0
+BA:44,0
+BA:48,0
+BA:48,0
+BA:52,0
+BA:52,0
+BA:52,0
+BA:52,0
+BA:52,0
+BA:52,0
+BA:84,2
+BA:84,2
+BA:88,2
+BA:88,1
+BA:92,2
+BA:92,2
+BA:96,2
+BA:96,1
+BA:100,2
+BA:100,1
+BA:100,2
+BA:100,1
+BA:100,2
+BA:100,1
+BA:177,2
+BA:177,2
+BA:179,2
+BA:179,1
+BA:207,1
+BA:207,2
+BA:211,2
+BA:211,2
+BA:215,2
+BA:215,1
+BA:218,2
+BA:218,2
+BA:222,2
+BA:222,1
+BA:251,1
+BA:251,2
+BA:255,2
+BA:255,2
+BA:259,2
+BA:259,1
+BA:262,2
+BA:262,2
+BA:266,2
+BA:266,1
+LF:89
+LH:68
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/serializer.test.h
+FN:50,_ZN14TestSerializerC1Ev
+FN:45,_ZN14TestSerializerD1Ev
+FN:102,_ZN14TestSerializer2_2Ev
+FN:57,_ZN14TestSerializer2_1Ev
+DA:45,2
+DA:50,2
+DA:51,2
+DA:57,1
+DA:60,1
+DA:61,1
+DA:62,2
+DA:65,1
+DA:66,1
+DA:68,1
+DA:69,2
+DA:72,1
+DA:73,1
+DA:75,1
+DA:76,2
+DA:78,2
+DA:79,2
+DA:81,2
+DA:82,2
+DA:84,2
+DA:85,2
+DA:88,1
+DA:89,1
+DA:91,1
+DA:92,2
+DA:94,2
+DA:95,2
+DA:97,2
+DA:98,2
+DA:99,1
+DA:102,1
+DA:104,1
+DA:107,1
+DA:110,1
+DA:111,1
+DA:112,1
+DA:113,2
+DA:114,2
+DA:117,1
+DA:118,1
+DA:119,1
+DA:120,2
+DA:121,2
+DA:122,2
+DA:123,2
+DA:124,2
+DA:125,2
+DA:126,1
+LF:48
+LH:48
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/tag.h
+FN:175,_ZN3ept7debtags3TagD1Ev
+FN:179,_ZNK3ept7debtags3TagltERKS1_
+FN:182,_ZNK3ept7debtags3Tag5validEv
+FN:242,_ZNK3ept7debtags3Tag2idEv
+DA:175,0
+DA:179,0
+DA:182,0
+DA:242,0
+LF:4
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/vocabulary.h
+FN:114,_ZNK3ept7debtags10Vocabulary8TagIndex2idERKSs
+FN:203,_ZNK3ept7debtags10Vocabulary9tagByNameERKSs
+DA:114,0
+DA:203,0
+LF:2
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/test.h
+FN:12,_ZN18AptTestEnvironmentC2Ev
+FN:10,_ZN18AptTestEnvironmentD2Ev
+FN:30,_ZN22DebtagsTestEnvironmentC2Ev
+FN:24,_ZN22DebtagsTestEnvironmentD2Ev
+DA:10,0
+DA:12,0
+DA:13,0
+DA:14,0
+DA:15,0
+DA:16,0
+DA:17,0
+DA:18,0
+DA:19,0
+DA:20,0
+DA:21,0
+DA:24,0
+DA:30,0
+DA:34,0
+DA:35,0
+LF:15
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/mixin.h
+FN:52,_ZN6wibble5mixin14OutputIteratorIN7tagcoll4coll8InserterINS3_6SimpleIiiEEEEEC2Ev
+FN:52,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags11StringToIntIN7tagcoll4coll8InserterINS6_6SimpleIiiEEEEEEEC2Ev
+FN:64,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags11StringToIntIN7tagcoll4coll8InserterINS6_6SimpleIiiEEEEEEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags11StringToIntIN7tagcoll4coll8InserterINS6_6SimpleIiiEEEEEEEppEv
+FN:52,_ZN6wibble5mixin14OutputIteratorIN7tagcoll4coll8InserterINS3_6SimpleISsN3ept7debtags3TagEEEEEEC2Ev
+FN:52,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags8IntToPkgIN7tagcoll4coll8InserterINS6_6SimpleISsNS3_3TagEEEEEEEEC2Ev
+FN:64,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags8IntToPkgIN7tagcoll4coll8InserterINS6_6SimpleISsNS3_3TagEEEEEEEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags8IntToPkgIN7tagcoll4coll8InserterINS6_6SimpleISsNS3_3TagEEEEEEEEppEv
+FN:52,_ZN6wibble5mixin14OutputIteratorIN7tagcoll4coll8InserterINS3_6SimpleISsSsEEEEEC2Ev
+FN:52,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags11PkgToStringIN7tagcoll4coll8InserterINS6_6SimpleISsSsEEEEEEEC2Ev
+FN:64,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags11PkgToStringIN7tagcoll4coll8InserterINS6_6SimpleISsSsEEEEEEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags11PkgToStringIN7tagcoll4coll8InserterINS6_6SimpleISsSsEEEEEEEppEv
+FN:52,_ZN6wibble5mixin14OutputIteratorIN7tagcoll8InserterIiiEEEC2Ev
+FN:52,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags16PatchStringToIntIN7tagcoll8InserterIiiEEEEEC2Ev
+FN:64,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags16PatchStringToIntIN7tagcoll8InserterIiiEEEEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags16PatchStringToIntIN7tagcoll8InserterIiiEEEEEppEv
+FN:52,_ZN6wibble5mixin14OutputIteratorIN7tagcoll8InserterISsSsEEEC2Ev
+FN:52,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags16PatchIntToStringIN7tagcoll8InserterISsSsEEEEEC2Ev
+FN:64,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags16PatchIntToStringIN7tagcoll8InserterISsSsEEEEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags16PatchIntToStringIN7tagcoll8InserterISsSsEEEEEppEv
+FN:64,_ZN6wibble5mixin14OutputIteratorIN7tagcoll4coll8InserterINS3_6SimpleIiiEEEEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN7tagcoll4coll8InserterINS3_6SimpleIiiEEEEEppEv
+FN:64,_ZN6wibble5mixin14OutputIteratorIN7tagcoll4coll8InserterINS3_6SimpleISsN3ept7debtags3TagEEEEEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN7tagcoll4coll8InserterINS3_6SimpleISsN3ept7debtags3TagEEEEEEppEv
+FN:64,_ZN6wibble5mixin14OutputIteratorIN7tagcoll4coll8InserterINS3_6SimpleISsSsEEEEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN7tagcoll4coll8InserterINS3_6SimpleISsSsEEEEEppEv
+FN:64,_ZN6wibble5mixin14OutputIteratorIN7tagcoll8InserterIiiEEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN7tagcoll8InserterIiiEEEppEv
+FN:64,_ZN6wibble5mixin14OutputIteratorIN7tagcoll8InserterISsSsEEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN7tagcoll8InserterISsSsEEEppEv
+DA:52,14
+DA:53,42300
+DA:54,42300
+DA:64,42300
+DA:65,42300
+LF:5
+LH:5
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/operators.h
+FN:115,_ZN6wibble9operatorsoRISsEERSt3setIT_St4lessIS3_ESaIS3_EES8_RKS3_
+FN:67,_ZN6wibble9operatorsorISsEESt3setIT_St4lessIS3_ESaIS3_EERKS7_RKNS_9SingletonIS3_EE
+FN:123,_ZN6wibble9operatorsoRISsNS_9SingletonISsEEEERSt3setIT_St4lessIS5_ESaIS5_EESA_RKT0_
+FN:115,_ZN6wibble9operatorsoRIiEERSt3setIT_St4lessIS3_ESaIS3_EES8_RKS3_
+FN:133,_ZN6wibble9operatorsoRISsEERSt3setIT_St4lessIS3_ESaIS3_EES8_RKS7_
+FN:74,_ZN6wibble9operatorsorISsEESt3setIT_St4lessIS3_ESaIS3_EERKS7_S9_
+FN:133,_ZN6wibble9operatorsoRIiEERSt3setIT_St4lessIS3_ESaIS3_EES8_RKS7_
+FN:74,_ZN6wibble9operatorsorIiEESt3setIT_St4lessIS3_ESaIS3_EERKS7_S9_
+FN:74,_ZN6wibble9operatorsorIN3ept7debtags3TagEEESt3setIT_St4lessIS6_ESaIS6_EERKSA_SC_
+FN:133,_ZN6wibble9operatorsoRIN3ept7debtags3TagEEERSt3setIT_St4lessIS6_ESaIS6_EESB_RKSA_
+FN:198,_ZN6wibble9operatorsmIISsSt3setISsSt4lessISsESaISsEEEERS2_IT_S3_IS7_ESaIS7_EESB_RKT0_
+FN:198,_ZN6wibble9operatorsmIIiSt3setIiSt4lessIiESaIiEEEERS2_IT_S3_IS7_ESaIS7_EESB_RKT0_
+FN:183,_ZN6wibble9operatorsmIIiEERSt3setIT_St4lessIS3_ESaIS3_EES8_RKS3_
+FN:183,_ZN6wibble9operatorsmIISsEERSt3setIT_St4lessIS3_ESaIS3_EES8_RKS3_
+DA:67,1
+DA:68,1
+DA:69,1
+DA:70,0
+DA:74,21146
+DA:75,21146
+DA:76,21146
+DA:78,0
+DA:115,253745
+DA:117,253745
+DA:118,253745
+DA:123,1
+DA:125,2
+DA:127,1
+DA:128,1
+DA:133,21146
+DA:134,21146
+DA:135,1
+DA:137,126871
+DA:139,105726
+DA:140,21145
+DA:183,3
+DA:185,3
+DA:186,3
+DA:198,0
+DA:200,0
+DA:201,0
+DA:202,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:209,0
+DA:211,0
+DA:212,0
+DA:214,0
+DA:216,0
+BA:125,2
+BA:125,2
+BA:134,2
+BA:134,2
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:137,2
+BA:137,2
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:204,0
+BA:204,0
+BA:204,0
+BA:204,0
+BA:211,0
+BA:211,0
+BA:211,0
+BA:211,0
+LF:37
+LH:22
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/singleton.h
+FN:82,_ZNK6wibble9SingletonISsE5emptyEv
+FN:56,_ZNK6wibble9SingletonISsE14const_iteratorneERKS2_
+FN:54,_ZN6wibble9SingletonISsE14const_iteratorppEv
+FN:52,_ZNK6wibble9SingletonISsE14const_iteratordeEv
+FN:47,_ZN6wibble9SingletonISsE14const_iteratorC1EPKSs
+FN:87,_ZNK6wibble9SingletonISsE5beginEv
+FN:50,_ZN6wibble9SingletonISsE14const_iteratorC1Ev
+FN:88,_ZNK6wibble9SingletonISsE3endEv
+FN:80,_ZN6wibble9SingletonIiEC1ERKi
+FN:92,_ZN6wibble9singletonIiEENS_9SingletonIT_EERKS2_
+FN:56,_ZNK6wibble9SingletonIiE14const_iteratorneERKS2_
+FN:54,_ZN6wibble9SingletonIiE14const_iteratorppEv
+FN:52,_ZNK6wibble9SingletonIiE14const_iteratordeEv
+FN:47,_ZN6wibble9SingletonIiE14const_iteratorC1EPKi
+FN:87,_ZNK6wibble9SingletonIiE5beginEv
+FN:50,_ZN6wibble9SingletonIiE14const_iteratorC1Ev
+FN:88,_ZNK6wibble9SingletonIiE3endEv
+FN:35,_ZN6wibble9SingletonISsED1Ev
+FN:80,_ZN6wibble9SingletonISsEC1ERKSs
+FN:92,_ZN6wibble9singletonISsEENS_9SingletonIT_EERKS2_
+FN:35,_ZN6wibble9SingletonISsEC1ERKS1_
+DA:35,42294
+DA:47,0
+DA:50,0
+DA:52,0
+DA:54,0
+DA:56,0
+DA:80,0
+DA:82,2
+DA:87,0
+DA:88,0
+DA:92,0
+DA:94,0
+LF:12
+LH:2
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationD1Ev
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:41,_ZN12AssertFailedD1Ev
+FN:67,_Z12assert_eq_fnIjjEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsSsEv8LocationT_T0_
+FN:59,_Z9assert_fnIbEv8LocationT_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:75,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+LF:26
+LH:0
+end_of_record
+SF:/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_serializer.cpp
+FN:4,_Z41__static_initialization_and_destruction_0ii
+FN:4,_GLOBAL__I_ept_test_generated__home_mornfall_dev_pkg_ept_work_ept_debtags_maint_serializer.cpp
+FN:4,_Z17run_Serializer__2v
+FN:3,_Z17run_Serializer__1v
+DA:3,1
+DA:4,4
+BA:4,2
+BA:4,1
+BA:4,2
+BA:4,1
+LF:2
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeIN3ept7debtags3TagEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeIiEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISsEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKiSt3setIiSt4lessIiESaIiEEEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsSsEEEEED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2Ev
+FN:106,_ZNSaIN3ept7debtags3TagEED1Ev
+FN:100,_ZNSaISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2ERKS4_
+FN:98,_ZNSaISt13_Rb_tree_nodeIiEEC2Ev
+FN:106,_ZNSaIiED1Ev
+FN:100,_ZNSaISt13_Rb_tree_nodeIiEEC2ERKS1_
+FN:106,_ZNSaISt4pairIKiN7tagcoll5PatchIiiEEEED1Ev
+FN:100,_ZNSaISt13_Rb_tree_nodeISsEEC2ERKS1_
+FN:104,_ZNSaISsEC1ISt13_Rb_tree_nodeISsEEERKSaIT_E
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEEC2Ev
+FN:106,_ZNSaISt4pairIKSsSt3setISsSt4lessISsESaISsEEEED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKiSt3setIiSt4lessIiESaIiEEEEEC2Ev
+FN:106,_ZNSaISt4pairIKiSt3setIiSt4lessIiESaIiEEEED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEEEEC2Ev
+FN:106,_ZNSaISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS4_ESaIS4_EEEED1Ev
+FN:106,_ZNSaISt4pairIKSsN7tagcoll5PatchISsSsEEEED1Ev
+FN:104,_ZNSaIN3ept7debtags3TagEEC1ISt13_Rb_tree_nodeIS1_EEERKSaIT_E
+FN:104,_ZNSaIiEC1ISt13_Rb_tree_nodeIiEEERKSaIT_E
+FN:104,_ZNSaISt4pairIKiN7tagcoll5PatchIiiEEEEC1ISt13_Rb_tree_nodeIS4_EEERKSaIT_E
+FN:98,_ZNSaISt13_Rb_tree_nodeISsEEC2Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEEC2Ev
+FN:104,_ZNSaISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEC1ISt13_Rb_tree_nodeIS6_EEERKSaIT_E
+FN:104,_ZNSaISt4pairIKiSt3setIiSt4lessIiESaIiEEEEC1ISt13_Rb_tree_nodeIS6_EEERKSaIT_E
+FN:104,_ZNSaISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS4_ESaIS4_EEEEC1ISt13_Rb_tree_nodeIS9_EEERKSaIT_E
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsSsEEEEEC2Ev
+FN:104,_ZNSaISt4pairIKSsN7tagcoll5PatchISsSsEEEEC1ISt13_Rb_tree_nodeIS4_EEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,8
+DA:100,0
+DA:101,0
+DA:104,42302
+DA:106,42310
+DA:118,0
+DA:119,0
+LF:7
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:392,_ZNSs10_S_compareEjj
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:1941,_ZNKSs7compareERKSs
+FN:2238,_ZStltIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:686,0
+DA:687,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2162,0
+DA:2165,0
+DA:2238,0
+DA:2239,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+BA:1948,0
+BA:1948,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:70
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algo.h
+FN:5055,_ZSt9set_unionISt23_Rb_tree_const_iteratorISsES1_St15insert_iteratorISt3setISsSt4lessISsESaISsEEEET1_T_SA_T0_SB_S9_
+FN:5055,_ZSt9set_unionISt23_Rb_tree_const_iteratorIiES1_St15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T_SA_T0_SB_S9_
+FN:5055,_ZSt9set_unionISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEES4_St15insert_iteratorISt3setIS3_St4lessIS3_ESaIS3_EEEET1_T_SD_T0_SE_SC_
+DA:5055,21146
+DA:5074,42292
+DA:5076,0
+DA:5078,0
+DA:5079,0
+DA:5081,0
+DA:5083,0
+DA:5084,0
+DA:5088,0
+DA:5089,0
+DA:5090,0
+DA:5092,0
+DA:5095,21146
+BA:5074,1
+BA:5074,2
+BA:5074,0
+BA:5074,0
+BA:5074,1
+BA:5074,2
+BA:5074,0
+BA:5074,0
+BA:5074,0
+BA:5074,0
+BA:5074,0
+BA:5074,0
+BA:5074,0
+BA:5074,0
+BA:5074,0
+BA:5074,0
+BA:5074,0
+BA:5074,0
+BA:5076,0
+BA:5076,0
+BA:5076,0
+BA:5076,0
+BA:5076,0
+BA:5076,0
+BA:5081,0
+BA:5081,0
+BA:5081,0
+BA:5081,0
+BA:5081,0
+BA:5081,0
+LF:13
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:188,_ZSt3minIjERKT_S2_S2_
+FN:286,_ZNSt12__miter_baseIN6wibble9SingletonISsE14const_iteratorELb0EE3__bES3_
+FN:268,_ZNSt12__niter_baseIN6wibble9SingletonISsE14const_iteratorELb0EE3__bES3_
+FN:268,_ZNSt12__niter_baseISt15insert_iteratorISt3setISsSt4lessISsESaISsEEELb0EE3__bES6_
+FN:286,_ZNSt12__miter_baseISt23_Rb_tree_const_iteratorIiELb0EE3__bES1_
+FN:268,_ZNSt12__niter_baseISt23_Rb_tree_const_iteratorIiELb0EE3__bES1_
+FN:268,_ZNSt12__niter_baseISt15insert_iteratorISt3setIiSt4lessIiESaIiEEELb0EE3__bES6_
+FN:286,_ZNSt12__miter_baseISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEELb0EE3__bES4_
+FN:286,_ZNSt12__miter_baseISt23_Rb_tree_const_iteratorISsELb0EE3__bES1_
+FN:268,_ZNSt12__niter_baseISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseISt15insert_iteratorISt3setIN3ept7debtags3TagESt4lessIS4_ESaIS4_EEELb0EE3__bES9_
+FN:268,_ZNSt12__niter_baseISt23_Rb_tree_const_iteratorISsELb0EE3__bES1_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt20forward_iterator_tagE8__copy_mIN6wibble9SingletonISsE14const_iteratorESt15insert_iteratorISt3setISsSt4lessISsESaISsEEEEET0_T_SF_SE_
+FN:385,_ZSt13__copy_move_aILb0EN6wibble9SingletonISsE14const_iteratorESt15insert_iteratorISt3setISsSt4lessISsESaISsEEEET1_T0_SC_SB_
+FN:430,_ZSt14__copy_move_a2ILb0EN6wibble9SingletonISsE14const_iteratorESt15insert_iteratorISt3setISsSt4lessISsESaISsEEEET1_T0_SC_SB_
+FN:456,_ZSt4copyIN6wibble9SingletonISsE14const_iteratorESt15insert_iteratorISt3setISsSt4lessISsESaISsEEEET0_T_SC_SB_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt26bidirectional_iterator_tagE8__copy_mISt23_Rb_tree_const_iteratorISsESt15insert_iteratorISt3setISsSt4lessISsESaISsEEEEET0_T_SD_SC_
+FN:385,_ZSt13__copy_move_aILb0ESt23_Rb_tree_const_iteratorISsESt15insert_iteratorISt3setISsSt4lessISsESaISsEEEET1_T0_SA_S9_
+FN:430,_ZSt14__copy_move_a2ILb0ESt23_Rb_tree_const_iteratorISsESt15insert_iteratorISt3setISsSt4lessISsESaISsEEEET1_T0_SA_S9_
+FN:456,_ZSt4copyISt23_Rb_tree_const_iteratorISsESt15insert_iteratorISt3setISsSt4lessISsESaISsEEEET0_T_SA_S9_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt26bidirectional_iterator_tagE8__copy_mISt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEET0_T_SD_SC_
+FN:385,_ZSt13__copy_move_aILb0ESt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T0_SA_S9_
+FN:430,_ZSt14__copy_move_a2ILb0ESt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T0_SA_S9_
+FN:456,_ZSt4copyISt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET0_T_SA_S9_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt26bidirectional_iterator_tagE8__copy_mISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEESt15insert_iteratorISt3setIS6_St4lessIS6_ESaIS6_EEEEET0_T_SG_SF_
+FN:385,_ZSt13__copy_move_aILb0ESt23_Rb_tree_const_iteratorIN3ept7debtags3TagEESt15insert_iteratorISt3setIS3_St4lessIS3_ESaIS3_EEEET1_T0_SD_SC_
+FN:430,_ZSt14__copy_move_a2ILb0ESt23_Rb_tree_const_iteratorIN3ept7debtags3TagEESt15insert_iteratorISt3setIS3_St4lessIS3_ESaIS3_EEEET1_T0_SD_SC_
+FN:456,_ZSt4copyISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEESt15insert_iteratorISt3setIS3_St4lessIS3_ESaIS3_EEEET0_T_SD_SC_
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:268,84591
+DA:269,84591
+DA:286,84588
+DA:287,84588
+DA:309,42294
+DA:311,148024
+DA:312,105730
+DA:313,42294
+DA:385,42294
+DA:393,42294
+DA:396,42294
+DA:430,42294
+DA:435,42294
+DA:456,42294
+DA:466,42294
+BA:193,0
+BA:193,0
+BA:311,2
+BA:311,2
+BA:311,2
+BA:311,2
+BA:311,0
+BA:311,0
+BA:311,0
+BA:311,0
+LF:19
+LH:15
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:469,_ZNKSt9_IdentityIN3ept7debtags3TagEEclERKS2_
+FN:229,_ZNKSt4lessIN3ept7debtags3TagEEclERKS2_S5_
+FN:469,_ZNKSt9_IdentityIiEclERKi
+FN:229,_ZNKSt4lessIiEclERKiS2_
+FN:469,_ZNKSt9_IdentityISsEclERKSs
+FN:482,_ZNKSt10_Select1stISt4pairIKiN7tagcoll5PatchIiiEEEEclERKS5_
+FN:482,_ZNKSt10_Select1stISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEclERKS7_
+FN:482,_ZNKSt10_Select1stISt4pairIKSsN7tagcoll5PatchISsSsEEEEclERKS5_
+FN:482,_ZNKSt10_Select1stISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEEEclERKSA_
+FN:482,_ZNKSt10_Select1stISt4pairIKiSt3setIiSt4lessIiESaIiEEEEclERKS7_
+FN:229,_ZNKSt4lessISsEclERKSsS2_
+DA:229,0
+DA:230,0
+DA:469,0
+DA:470,0
+DA:482,1894548
+DA:483,1894548
+LF:6
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:572,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEC1ERS4_St23_Rb_tree_const_iteratorISsE
+FN:645,_ZSt8inserterISt3setISsSt4lessISsESaISsEESt23_Rb_tree_const_iteratorISsEESt15insert_iteratorIT_ERS8_T0_
+FN:572,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEC1ERS4_St23_Rb_tree_const_iteratorIiE
+FN:645,_ZSt8inserterISt3setIiSt4lessIiESaIiEESt23_Rb_tree_const_iteratorIiEESt15insert_iteratorIT_ERS8_T0_
+FN:618,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEdeEv
+FN:623,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEppEv
+FN:623,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEppEv
+FN:618,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEdeEv
+FN:572,_ZNSt15insert_iteratorISt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EEEC1ERS7_St23_Rb_tree_const_iteratorIS3_E
+FN:645,_ZSt8inserterISt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EESt23_Rb_tree_const_iteratorIS3_EESt15insert_iteratorIT_ERSB_T0_
+FN:618,_ZNSt15insert_iteratorISt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EEEdeEv
+FN:623,_ZNSt15insert_iteratorISt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EEEppEv
+FN:599,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEaSERKSs
+FN:599,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEaSERKi
+FN:599,_ZNSt15insert_iteratorISt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EEEaSERKS3_
+DA:572,0
+DA:573,0
+DA:599,0
+DA:601,0
+DA:602,0
+DA:603,0
+DA:618,0
+DA:619,0
+DA:623,0
+DA:624,0
+DA:645,0
+DA:648,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:111,_ZNSt8iteratorISt20forward_iterator_tagKSsvPS1_RS1_EC2Ev
+FN:111,_ZNSt8iteratorISt20forward_iterator_tagKivPS1_RS1_EC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_map.h
+FN:389,_ZNKSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE4sizeEv
+FN:389,_ZNKSt3mapISsN7tagcoll5PatchISsSsEESt4lessISsESaISt4pairIKSsS2_EEE4sizeEv
+FN:389,_ZNKSt3mapIiSt3setIiSt4lessIiESaIiEES2_SaISt4pairIKiS4_EEE4sizeEv
+FN:389,_ZNKSt3mapISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EES4_ISsESaISt4pairIKSsS7_EEE4sizeEv
+FN:389,_ZNKSt3mapISsSt3setISsSt4lessISsESaISsEES2_SaISt4pairIKSsS4_EEE4sizeEv
+FN:293,_ZNSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE3endEv
+FN:275,_ZNSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE5beginEv
+FN:293,_ZNSt3mapISsN7tagcoll5PatchISsSsEESt4lessISsESaISt4pairIKSsS2_EEE3endEv
+FN:275,_ZNSt3mapISsN7tagcoll5PatchISsSsEESt4lessISsESaISt4pairIKSsS2_EEE5beginEv
+FN:284,_ZNKSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE5beginEv
+FN:302,_ZNKSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE3endEv
+FN:293,_ZNSt3mapISsSt3setISsSt4lessISsESaISsEES2_SaISt4pairIKSsS4_EEE3endEv
+FN:284,_ZNKSt3mapISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EES4_ISsESaISt4pairIKSsS7_EEE5beginEv
+FN:302,_ZNKSt3mapISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EES4_ISsESaISt4pairIKSsS7_EEE3endEv
+FN:284,_ZNKSt3mapISsSt3setISsSt4lessISsESaISsEES2_SaISt4pairIKSsS4_EEE5beginEv
+FN:302,_ZNKSt3mapISsSt3setISsSt4lessISsESaISsEES2_SaISt4pairIKSsS4_EEE3endEv
+FN:284,_ZNKSt3mapISsN7tagcoll5PatchISsSsEESt4lessISsESaISt4pairIKSsS2_EEE5beginEv
+FN:302,_ZNKSt3mapISsN7tagcoll5PatchISsSsEESt4lessISsESaISt4pairIKSsS2_EEE3endEv
+FN:614,_ZNSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE4findERS6_
+FN:155,_ZNSt3mapISsSt3setISsSt4lessISsESaISsEES2_SaISt4pairIKSsS4_EEEC1Ev
+FN:155,_ZNSt3mapIiSt3setIiSt4lessIiESaIiEES2_SaISt4pairIKiS4_EEEC1Ev
+FN:284,_ZNKSt3mapIiSt3setIiSt4lessIiESaIiEES2_SaISt4pairIKiS4_EEE5beginEv
+FN:302,_ZNKSt3mapIiSt3setIiSt4lessIiESaIiEES2_SaISt4pairIKiS4_EEE3endEv
+FN:155,_ZNSt3mapISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EES4_ISsESaISt4pairIKSsS7_EEEC1Ev
+FN:155,_ZNSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEEC2Ev
+FN:155,_ZNSt3mapISsN7tagcoll5PatchISsSsEESt4lessISsESaISt4pairIKSsS2_EEEC2Ev
+FN:293,_ZNSt3mapIiSt3setIiSt4lessIiESaIiEES2_SaISt4pairIKiS4_EEE3endEv
+FN:293,_ZNSt3mapISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EES4_ISsESaISt4pairIKSsS7_EEE3endEv
+FN:614,_ZNSt3mapIiSt3setIiSt4lessIiESaIiEES2_SaISt4pairIKiS4_EEE4findERS6_
+FN:92,_ZNSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEED2Ev
+FN:92,_ZNSt3mapISsN7tagcoll5PatchISsSsEESt4lessISsESaISt4pairIKSsS2_EEED2Ev
+FN:92,_ZNSt3mapISsSt3setISsSt4lessISsESaISsEES2_SaISt4pairIKSsS4_EEED1Ev
+FN:92,_ZNSt3mapIiSt3setIiSt4lessIiESaIiEES2_SaISt4pairIKiS4_EEED1Ev
+FN:92,_ZNSt3mapISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EES4_ISsESaISt4pairIKSsS7_EEED1Ev
+FN:614,_ZNSt3mapISsN7tagcoll5PatchISsSsEESt4lessISsESaISt4pairIKSsS2_EEE4findERS6_
+FN:614,_ZNSt3mapISsSt3setISsSt4lessISsESaISsEES2_SaISt4pairIKSsS4_EEE4findERS6_
+FN:614,_ZNSt3mapISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EES4_ISsESaISt4pairIKSsS7_EEE4findERSA_
+FN:629,_ZNKSt3mapISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EES4_ISsESaISt4pairIKSsS7_EEE4findERSA_
+FN:629,_ZNKSt3mapISsSt3setISsSt4lessISsESaISsEES2_SaISt4pairIKSsS4_EEE4findERS6_
+FN:468,_ZNSt3mapISsN7tagcoll5PatchISsSsEESt4lessISsESaISt4pairIKSsS2_EEE6insertERKS7_
+FN:468,_ZNSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE6insertERKS7_
+FN:468,_ZNSt3mapISsSt3setISsSt4lessISsESaISsEES2_SaISt4pairIKSsS4_EEE6insertERKS7_
+FN:468,_ZNSt3mapIiSt3setIiSt4lessIiESaIiEES2_SaISt4pairIKiS4_EEE6insertERKS7_
+FN:468,_ZNSt3mapISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EES4_ISsESaISt4pairIKSsS7_EEE6insertERKSB_
+DA:92,8
+DA:155,8
+DA:156,8
+DA:275,6
+DA:276,6
+DA:284,9
+DA:285,9
+DA:293,63443
+DA:294,63443
+DA:302,42308
+DA:303,42308
+DA:389,4
+DA:390,4
+DA:468,21151
+DA:469,21151
+DA:614,42297
+DA:615,42297
+DA:629,2
+DA:630,2
+LF:19
+LH:19
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEbEC1ERKS4_RKb
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorIiEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIN3ept7debtags3TagEEbEC1ERKS4_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIiEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorISsEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorISsEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKiN7tagcoll5PatchIiiEEEEbEC1ERKS6_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKSsSt3setISsSt4lessISsESaISsEEEEbEC1ERKS8_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKSsN7tagcoll5PatchISsSsEEEEbEC1ERKS6_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIiES1_EC1ERKS1_S4_
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKiSt3setIiSt4lessIiESaIiEEEEbEC1ERKS8_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEEEbEC1ERKSB_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorISsES1_EC1ERKS1_S4_
+FN:73,_ZNSt4pairIKiN7tagcoll5PatchIiiEEED1Ev
+FN:73,_ZNSt4pairIiN7tagcoll5PatchIiiEEED1Ev
+FN:73,_ZNSt4pairIKiSt3setIiSt4lessIiESaIiEEED1Ev
+FN:73,_ZNSt4pairIiSt3setIiSt4lessIiESaIiEEED1Ev
+FN:73,_ZNSt4pairISt3setIiSt4lessIiESaIiEES4_ED1Ev
+FN:73,_ZNSt4pairIN6wibble9SingletonIiEESt3setIiSt4lessIiESaIiEEED1Ev
+FN:73,_ZNSt4pairIKSsN7tagcoll5PatchISsSsEEED1Ev
+FN:73,_ZNSt4pairISsN7tagcoll5PatchISsSsEEED1Ev
+FN:73,_ZNSt4pairIKSsSt3setISsSt4lessISsESaISsEEED1Ev
+FN:73,_ZNSt4pairISsSt3setISsSt4lessISsESaISsEEED1Ev
+FN:73,_ZNSt4pairIN6wibble9SingletonISsEESt3setISsSt4lessISsESaISsEEED1Ev
+FN:73,_ZNSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS4_ESaIS4_EEED1Ev
+FN:73,_ZNSt4pairISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EEED1Ev
+FN:73,_ZNSt4pairISt3setISsSt4lessISsESaISsEES0_IN3ept7debtags3TagES1_IS7_ESaIS7_EEED1Ev
+FN:73,_ZNSt4pairIN6wibble9SingletonISsEESt3setIN3ept7debtags3TagESt4lessIS6_ESaIS6_EEED1Ev
+FN:88,_ZNSt4pairISsN7tagcoll5PatchISsSsEEEC1ERKSsRKS2_
+FN:218,_ZSt9make_pairISsN7tagcoll5PatchISsSsEEESt4pairIT_T0_ES4_S5_
+FN:104,_ZNSt4pairIKSsN7tagcoll5PatchISsSsEEEC1ISsS3_EERKS_IT_T0_E
+FN:73,_ZNSt4pairIKSsN7tagcoll5PatchISsSsEEEC1ERKS4_
+FN:88,_ZNSt4pairISsSt3setISsSt4lessISsESaISsEEEC1ERKSsRKS4_
+FN:218,_ZSt9make_pairISsSt3setISsSt4lessISsESaISsEEESt4pairIT_T0_ES6_S7_
+FN:104,_ZNSt4pairIKSsSt3setISsSt4lessISsESaISsEEEC1ISsS5_EERKS_IT_T0_E
+FN:73,_ZNSt4pairIKSsSt3setISsSt4lessISsESaISsEEEC1ERKS6_
+FN:88,_ZNSt4pairIN6wibble9SingletonISsEESt3setISsSt4lessISsESaISsEEEC1ERKS2_RKS7_
+FN:218,_ZSt9make_pairIN6wibble9SingletonISsEESt3setISsSt4lessISsESaISsEEESt4pairIT_T0_ES9_SA_
+FN:88,_ZNSt4pairIiN7tagcoll5PatchIiiEEEC1ERKiRKS2_
+FN:218,_ZSt9make_pairIiN7tagcoll5PatchIiiEEESt4pairIT_T0_ES4_S5_
+FN:104,_ZNSt4pairIKiN7tagcoll5PatchIiiEEEC1IiS3_EERKS_IT_T0_E
+FN:73,_ZNSt4pairIKiN7tagcoll5PatchIiiEEEC1ERKS4_
+FN:88,_ZNSt4pairISt3setIiSt4lessIiESaIiEES4_EC1ERKS4_S7_
+FN:218,_ZSt9make_pairISt3setIiSt4lessIiESaIiEES4_ESt4pairIT_T0_ES6_S7_
+FN:88,_ZNSt4pairIiSt3setIiSt4lessIiESaIiEEEC1ERKiRKS4_
+FN:218,_ZSt9make_pairIiSt3setIiSt4lessIiESaIiEEESt4pairIT_T0_ES6_S7_
+FN:104,_ZNSt4pairIKiSt3setIiSt4lessIiESaIiEEEC1IiS5_EERKS_IT_T0_E
+FN:73,_ZNSt4pairIKiSt3setIiSt4lessIiESaIiEEEC1ERKS6_
+FN:88,_ZNSt4pairIN6wibble9SingletonIiEESt3setIiSt4lessIiESaIiEEEC1ERKS2_RKS7_
+FN:218,_ZSt9make_pairIN6wibble9SingletonIiEESt3setIiSt4lessIiESaIiEEESt4pairIT_T0_ES9_SA_
+FN:88,_ZNSt4pairISt3setISsSt4lessISsESaISsEES0_IN3ept7debtags3TagES1_IS7_ESaIS7_EEEC1ERKS4_RKSA_
+FN:218,_ZSt9make_pairISt3setISsSt4lessISsESaISsEES0_IN3ept7debtags3TagES1_IS7_ESaIS7_EEESt4pairIT_T0_ESC_SD_
+FN:88,_ZNSt4pairISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EEEC1ERKSsRKS7_
+FN:218,_ZSt9make_pairISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EEESt4pairIT_T0_ES9_SA_
+FN:104,_ZNSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS4_ESaIS4_EEEC1ISsS8_EERKS_IT_T0_E
+FN:73,_ZNSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS4_ESaIS4_EEEC1ERKS9_
+FN:88,_ZNSt4pairIN6wibble9SingletonISsEESt3setIN3ept7debtags3TagESt4lessIS6_ESaIS6_EEEC1ERKS2_RKSA_
+FN:218,_ZSt9make_pairIN6wibble9SingletonISsEESt3setIN3ept7debtags3TagESt4lessIS6_ESaIS6_EEESt4pairIT_T0_ESC_SD_
+DA:73,148030
+DA:88,105731
+DA:89,105731
+DA:104,21151
+DA:106,21151
+DA:218,84577
+DA:219,84577
+LF:7
+LH:7
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:336,_ZNKSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE4sizeEv
+FN:336,_ZNKSt3setISsSt4lessISsESaISsEE4sizeEv
+FN:336,_ZNKSt3setIiSt4lessIiESaIiEE4sizeEv
+FN:261,_ZNKSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE5beginEv
+FN:270,_ZNKSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE3endEv
+FN:331,_ZNKSt3setIiSt4lessIiESaIiEE5emptyEv
+FN:270,_ZNKSt3setISsSt4lessISsESaISsEE3endEv
+FN:261,_ZNKSt3setISsSt4lessISsESaISsEE5beginEv
+FN:331,_ZNKSt3setISsSt4lessISsESaISsEE5emptyEv
+FN:503,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE4findERKS2_
+FN:261,_ZNKSt3setIiSt4lessIiESaIiEE5beginEv
+FN:270,_ZNKSt3setIiSt4lessIiESaIiEE3endEv
+FN:331,_ZNKSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE5emptyEv
+FN:141,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EEC1Ev
+FN:141,_ZNSt3setIiSt4lessIiESaIiEEC1Ev
+FN:141,_ZNSt3setISsSt4lessISsESaISsEEC1Ev
+FN:93,_ZNSt3setIiSt4lessIiESaIiEED1Ev
+FN:93,_ZNSt3setISsSt4lessISsESaISsEED1Ev
+FN:93,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EED1Ev
+FN:503,_ZNSt3setISsSt4lessISsESaISsEE4findERKSs
+FN:193,_ZNSt3setISsSt4lessISsESaISsEEC1ERKS3_
+FN:216,_ZNSt3setISsSt4lessISsESaISsEEaSERKS3_
+FN:193,_ZNSt3setIiSt4lessIiESaIiEEC1ERKS3_
+FN:216,_ZNSt3setIiSt4lessIiESaIiEEaSERKS3_
+FN:193,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EEC1ERKS6_
+FN:216,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EEaSERKS6_
+FN:378,_ZNSt3setISsSt4lessISsESaISsEE6insertERKSs
+FN:378,_ZNSt3setIiSt4lessIiESaIiEE6insertERKi
+FN:378,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE6insertERKS2_
+FN:405,_ZNSt3setISsSt4lessISsESaISsEE6insertESt23_Rb_tree_const_iteratorISsERKSs
+FN:405,_ZNSt3setIiSt4lessIiESaIiEE6insertESt23_Rb_tree_const_iteratorIiERKi
+FN:405,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE6insertESt23_Rb_tree_const_iteratorIS2_ERKS2_
+FN:431,_ZNSt3setISsSt4lessISsESaISsEE5eraseESt23_Rb_tree_const_iteratorISsE
+FN:431,_ZNSt3setIiSt4lessIiESaIiEE5eraseESt23_Rb_tree_const_iteratorIiE
+FN:446,_ZNSt3setIiSt4lessIiESaIiEE5eraseERKi
+FN:446,_ZNSt3setISsSt4lessISsESaISsEE5eraseERKSs
+DA:93,0
+DA:141,0
+DA:142,0
+DA:193,0
+DA:194,0
+DA:216,0
+DA:218,0
+DA:219,0
+DA:261,0
+DA:262,0
+DA:270,0
+DA:271,0
+DA:331,0
+DA:332,0
+DA:336,0
+DA:337,0
+DA:378,0
+DA:381,0
+DA:382,0
+DA:405,0
+DA:406,0
+DA:431,0
+DA:432,0
+DA:446,3
+DA:447,3
+DA:503,9
+DA:504,9
+LF:27
+LH:4
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:103,_ZNSt18_Rb_tree_node_base10_S_minimumEPS_
+FN:117,_ZNSt18_Rb_tree_node_base10_S_maximumEPS_
+FN:289,_ZNKSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEneERKS3_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEptEv
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISsEneERKS0_
+FN:176,_ZNKSt17_Rb_tree_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEptEv
+FN:176,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsN7tagcoll5PatchISsSsEEEEptEv
+FN:247,_ZNKSt23_Rb_tree_const_iteratorISsEdeEv
+FN:452,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEC1ERKSt17_Rb_tree_iteratorIS2_E
+FN:452,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorIiEC1ERKSt17_Rb_tree_iteratorIiE
+FN:289,_ZNKSt23_Rb_tree_const_iteratorIiEneERKS0_
+FN:247,_ZNKSt23_Rb_tree_const_iteratorIiEdeEv
+FN:251,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEptEv
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEneERKS6_
+FN:452,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEeqERKS6_
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE8_M_beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEeqERKS8_
+FN:176,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEptEv
+FN:452,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE8_M_beginEv
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEneERKS8_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEptEv
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE8_M_beginEv
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKiSt3setIiSt4lessIiESaIiEEEEneERKS8_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKiSt3setIiSt4lessIiESaIiEEEEptEv
+FN:285,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEEEeqERKSB_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEEEptEv
+FN:641,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE4sizeEv
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEEEneERKSB_
+FN:285,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEeqERKS8_
+FN:641,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE4sizeEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorISsEC1ERKSt17_Rb_tree_iteratorISsE
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE8_M_beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsN7tagcoll5PatchISsSsEEEEeqERKS6_
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsN7tagcoll5PatchISsSsEEEEneERKS6_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsN7tagcoll5PatchISsSsEEEEptEv
+FN:641,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE4sizeEv
+FN:641,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE4sizeEv
+FN:641,_ZNKSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE4sizeEv
+FN:398,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:463,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorIN3ept7debtags3TagEEC1EPSt13_Rb_tree_nodeIS2_E
+FN:596,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorIN3ept7debtags3TagEEeqERKS3_
+FN:347,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE21_M_get_Node_allocatorEv
+FN:432,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_M_rootEv
+FN:456,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_beginEv
+FN:428,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE10_S_minimumEPSt18_Rb_tree_node_base
+FN:436,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE11_M_leftmostEv
+FN:511,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE10_S_maximumEPSt18_Rb_tree_node_base
+FN:444,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE12_M_rightmostEv
+FN:398,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_S_leftEPSt18_Rb_tree_node_base
+FN:347,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE21_M_get_Node_allocatorEv
+FN:432,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_M_rootEv
+FN:456,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_beginEv
+FN:463,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_M_endEv
+FN:428,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_S_minimumEPSt18_Rb_tree_node_base
+FN:436,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_leftmostEv
+FN:511,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_S_maximumEPSt18_Rb_tree_node_base
+FN:444,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE12_M_rightmostEv
+FN:168,_ZNSt17_Rb_tree_iteratorIiEC1EPSt13_Rb_tree_nodeIiE
+FN:596,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorIiEeqERKS0_
+FN:398,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE13_Rb_tree_implIS9_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:398,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPSt18_Rb_tree_node_base
+FN:347,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE21_M_get_Node_allocatorEv
+FN:432,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_rootEv
+FN:456,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:463,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_M_endEv
+FN:428,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_S_minimumEPSt18_Rb_tree_node_base
+FN:436,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_leftmostEv
+FN:511,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_S_maximumEPSt18_Rb_tree_node_base
+FN:444,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE12_M_rightmostEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEC1EPKSt13_Rb_tree_nodeIS2_E
+FN:603,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5beginEv
+FN:614,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE3endEv
+FN:637,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5emptyEv
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE13_Rb_tree_implIS4_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:398,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE13_Rb_tree_implIS4_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:641,_ZNKSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE4sizeEv
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE13_Rb_tree_implISD_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:641,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE4sizeEv
+FN:610,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE3endEv
+FN:641,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE4sizeEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISsEeqERKS0_
+FN:240,_ZNSt23_Rb_tree_const_iteratorISsEC1EPKSt13_Rb_tree_nodeISsE
+FN:614,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE3endEv
+FN:603,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE13_Rb_tree_implIS9_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:637,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5emptyEv
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEC1EPSt13_Rb_tree_nodeIS5_E
+FN:610,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE3endEv
+FN:596,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE5beginEv
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKSsN7tagcoll5PatchISsSsEEEEC1EPSt13_Rb_tree_nodeIS5_E
+FN:610,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE3endEv
+FN:596,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE5beginEv
+FN:415,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EE13_M_initializeEv
+FN:471,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_valueEPKSt13_Rb_tree_nodeIS2_E
+FN:475,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_S_keyEPKSt13_Rb_tree_nodeIS2_E
+FN:954,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE14_M_lower_boundEPSt13_Rb_tree_nodeIS2_ESB_RKS2_
+FN:495,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:1390,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE4findERKS2_
+FN:491,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_rightEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_S_leftEPKSt18_Rb_tree_node_base
+FN:415,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:491,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_rightEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_S_leftEPKSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_valueEPKSt13_Rb_tree_nodeIiE
+FN:475,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_S_keyEPKSt13_Rb_tree_nodeIiE
+FN:495,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_S_keyEPKSt18_Rb_tree_node_base
+FN:240,_ZNSt23_Rb_tree_const_iteratorIiEC1EPKSt13_Rb_tree_nodeIiE
+FN:603,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5beginEv
+FN:614,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE3endEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEC1EPKSt13_Rb_tree_nodeIS5_E
+FN:603,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE5beginEv
+FN:614,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE3endEv
+FN:168,_ZNSt17_Rb_tree_iteratorISsEC1EPSt13_Rb_tree_nodeISsE
+FN:610,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE3endEv
+FN:596,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:415,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:491,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPKSt18_Rb_tree_node_base
+FN:463,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE6_M_endEv
+FN:415,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE13_Rb_tree_implIS4_Lb0EE13_M_initializeEv
+FN:463,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEC1EPSt13_Rb_tree_nodeIS7_E
+FN:610,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE3endEv
+FN:596,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE5beginEv
+FN:415,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE13_Rb_tree_implIS4_Lb0EE13_M_initializeEv
+FN:415,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE13_Rb_tree_implISD_Lb0EE13_M_initializeEv
+FN:637,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5emptyEv
+FN:247,_ZNKSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEdeEv
+FN:456,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE8_M_beginEv
+FN:467,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE6_M_endEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEEEC1EPKSt13_Rb_tree_nodeISA_E
+FN:603,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE5beginEv
+FN:614,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE3endEv
+FN:456,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE8_M_beginEv
+FN:467,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE6_M_endEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEC1EPKSt13_Rb_tree_nodeIS7_E
+FN:603,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE5beginEv
+FN:614,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE3endEv
+FN:495,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt18_Rb_tree_node_base
+FN:463,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE6_M_endEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsN7tagcoll5PatchISsSsEEEEC1EPKSt13_Rb_tree_nodeIS5_E
+FN:603,_ZNKSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE5beginEv
+FN:614,_ZNKSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE3endEv
+FN:403,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EEC1Ev
+FN:408,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EEC1ERKS6_RKSaISt13_Rb_tree_nodeIS2_EE
+FN:403,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEEC1Ev
+FN:408,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EEC1ERKS3_RKSaISt13_Rb_tree_nodeIiEE
+FN:347,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE21_M_get_Node_allocatorEv
+FN:471,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt13_Rb_tree_nodeISsE
+FN:475,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt13_Rb_tree_nodeISsE
+FN:408,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EEC1ERKS3_RKSaISt13_Rb_tree_nodeISsEE
+FN:415,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE13_Rb_tree_implIS9_Lb0EE13_M_initializeEv
+FN:495,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_S_valueEPKSt13_Rb_tree_nodeIS5_E
+FN:475,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE6_S_keyEPKSt13_Rb_tree_nodeIS5_E
+FN:954,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE14_M_lower_boundEPSt13_Rb_tree_nodeIS5_ESE_RS1_
+FN:1390,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE4findERS1_
+FN:351,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13get_allocatorEv
+FN:403,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE13_Rb_tree_implIS4_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EEC1Ev
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE21_M_get_Node_allocatorEv
+FN:495,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE8_S_valueEPKSt13_Rb_tree_nodeIS7_E
+FN:475,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE6_S_keyEPKSt13_Rb_tree_nodeIS7_E
+FN:403,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE13_Rb_tree_implIS4_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EEC1Ev
+FN:347,_ZNKSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE21_M_get_Node_allocatorEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKiSt3setIiSt4lessIiESaIiEEEEeqERKS8_
+FN:176,_ZNKSt17_Rb_tree_iteratorISt4pairIKiSt3setIiSt4lessIiESaIiEEEEptEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorISt4pairIKiSt3setIiSt4lessIiESaIiEEEEC1EPKSt13_Rb_tree_nodeIS7_E
+FN:603,_ZNKSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE5beginEv
+FN:614,_ZNKSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE3endEv
+FN:403,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE13_Rb_tree_implISD_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EEC1Ev
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE21_M_get_Node_allocatorEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEEEeqERKSB_
+FN:176,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEEEptEv
+FN:483,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE7_S_leftEPKSt18_Rb_tree_node_base
+FN:491,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE8_S_rightEPKSt18_Rb_tree_node_base
+FN:495,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE7_S_leftEPKSt18_Rb_tree_node_base
+FN:491,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE8_S_rightEPKSt18_Rb_tree_node_base
+FN:415,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE13_Rb_tree_implIS9_Lb0EE13_M_initializeEv
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE21_M_get_Node_allocatorEv
+FN:495,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE8_S_valueEPKSt13_Rb_tree_nodeIS5_E
+FN:475,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE6_S_keyEPKSt13_Rb_tree_nodeIS5_E
+FN:351,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE13get_allocatorEv
+FN:403,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEC1Ev
+FN:403,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE13_Rb_tree_implIS9_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EEC1Ev
+FN:954,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE14_M_lower_boundEPSt13_Rb_tree_nodeIiES8_RKi
+FN:986,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE14_M_upper_boundEPSt13_Rb_tree_nodeIiES8_RKi
+FN:1019,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11equal_rangeERKi
+FN:610,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE3endEv
+FN:214,_ZNKSt17_Rb_tree_iteratorIiEneERKS0_
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE13get_allocatorEv
+FN:471,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE8_S_valueEPKSt13_Rb_tree_nodeISA_E
+FN:475,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE6_S_keyEPKSt13_Rb_tree_nodeISA_E
+FN:403,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE13_Rb_tree_implIS9_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EEC1Ev
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE13get_allocatorEv
+FN:463,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKiSt3setIiSt4lessIiESaIiEEEEC1EPSt13_Rb_tree_nodeIS7_E
+FN:610,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE3endEv
+FN:596,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE5beginEv
+FN:463,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEEEC1EPSt13_Rb_tree_nodeISA_E
+FN:610,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE3endEv
+FN:596,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE5beginEv
+FN:495,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE8_S_valueEPKSt13_Rb_tree_nodeIS7_E
+FN:475,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE6_S_keyEPKSt13_Rb_tree_nodeIS7_E
+FN:954,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE14_M_lower_boundEPSt13_Rb_tree_nodeIS7_ESE_RS1_
+FN:1390,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE4findERS1_
+FN:214,_ZNKSt17_Rb_tree_iteratorISsEneERKS0_
+FN:360,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_put_nodeEPSt13_Rb_tree_nodeIiE
+FN:388,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE15_M_destroy_nodeEPSt13_Rb_tree_nodeIiE
+FN:936,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_eraseEPSt13_Rb_tree_nodeIiE
+FN:584,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEED1Ev
+FN:695,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5clearEv
+FN:360,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS5_E
+FN:388,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS5_E
+FN:936,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_M_eraseEPSt13_Rb_tree_nodeIS5_E
+FN:584,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EED1Ev
+FN:360,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_put_nodeEPSt13_Rb_tree_nodeISsE
+FN:388,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE15_M_destroy_nodeEPSt13_Rb_tree_nodeISsE
+FN:936,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_eraseEPSt13_Rb_tree_nodeISsE
+FN:584,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEED1Ev
+FN:695,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5clearEv
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS5_E
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS5_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE8_M_eraseEPSt13_Rb_tree_nodeIS5_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EED1Ev
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS7_E
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS7_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE8_M_eraseEPSt13_Rb_tree_nodeIS7_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EED1Ev
+FN:360,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS7_E
+FN:388,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS7_E
+FN:936,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE8_M_eraseEPSt13_Rb_tree_nodeIS7_E
+FN:584,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EED1Ev
+FN:360,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:388,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:936,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E
+FN:695,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5clearEv
+FN:584,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EED1Ev
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE11_M_put_nodeEPSt13_Rb_tree_nodeISA_E
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeISA_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE8_M_eraseEPSt13_Rb_tree_nodeISA_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EED1Ev
+FN:270,_ZNSt23_Rb_tree_const_iteratorISsEmmEv
+FN:270,_ZNSt23_Rb_tree_const_iteratorIiEmmEv
+FN:270,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEmmEv
+FN:954,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE14_M_lower_boundEPSt13_Rb_tree_nodeIS5_ESE_RS1_
+FN:1390,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE4findERS1_
+FN:986,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE14_M_upper_boundEPSt13_Rb_tree_nodeISsES8_RKSs
+FN:954,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE14_M_lower_boundEPSt13_Rb_tree_nodeISsES8_RKSs
+FN:1019,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11equal_rangeERKSs
+FN:954,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE14_M_lower_boundEPSt13_Rb_tree_nodeIS7_ESE_RS1_
+FN:1390,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE4findERS1_
+FN:954,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE14_M_lower_boundEPSt13_Rb_tree_nodeISA_ESI_RS1_
+FN:1390,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE4findERS1_
+FN:970,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE14_M_lower_boundEPKSt13_Rb_tree_nodeISA_ESJ_RS1_
+FN:1403,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE4findERS1_
+FN:970,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE14_M_lower_boundEPKSt13_Rb_tree_nodeIS7_ESF_RS1_
+FN:1403,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE4findERS1_
+FN:1390,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE4findERKSs
+FN:356,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE14_M_create_nodeERKSs
+FN:846,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_M_insert_EPKSt18_Rb_tree_node_baseS8_RKSs
+FN:378,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_M_clone_nodeEPKSt13_Rb_tree_nodeISsE
+FN:900,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_copyEPKSt13_Rb_tree_nodeISsEPS7_
+FN:568,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEC1ERKS5_
+FN:824,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEaSERKS5_
+FN:356,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE14_M_create_nodeERKS5_
+FN:846,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE10_M_insert_EPKSt18_Rb_tree_node_baseSE_RKS5_
+FN:356,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE14_M_create_nodeERKi
+FN:846,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_M_insert_EPKSt18_Rb_tree_node_baseS8_RKi
+FN:378,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_M_clone_nodeEPKSt13_Rb_tree_nodeIiE
+FN:900,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_M_copyEPKSt13_Rb_tree_nodeIiEPS7_
+FN:568,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEEC1ERKS5_
+FN:824,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEEaSERKS5_
+FN:356,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE14_M_create_nodeERKS5_
+FN:846,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE10_M_insert_EPKSt18_Rb_tree_node_baseSE_RKS5_
+FN:356,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE14_M_create_nodeERKS7_
+FN:846,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE10_M_insert_EPKSt18_Rb_tree_node_baseSE_RKS7_
+FN:356,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE14_M_create_nodeERKS7_
+FN:846,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE10_M_insert_EPKSt18_Rb_tree_node_baseSE_RKS7_
+FN:356,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE14_M_create_nodeERKS2_
+FN:846,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE10_M_insert_EPKSt18_Rb_tree_node_baseSB_RKS2_
+FN:378,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_M_clone_nodeEPKSt13_Rb_tree_nodeIS2_E
+FN:900,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_M_copyEPKSt13_Rb_tree_nodeIS2_EPSA_
+FN:568,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EEC1ERKS8_
+FN:824,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EEaSERKS8_
+FN:356,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE14_M_create_nodeERKSA_
+FN:846,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE10_M_insert_EPKSt18_Rb_tree_node_baseSI_RKSA_
+FN:195,_ZNSt17_Rb_tree_iteratorISsEmmEv
+FN:1133,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE16_M_insert_uniqueERKSs
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKSsN7tagcoll5PatchISsSsEEEEmmEv
+FN:1133,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE16_M_insert_uniqueERKS5_
+FN:195,_ZNSt17_Rb_tree_iteratorIiEmmEv
+FN:1133,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE16_M_insert_uniqueERKi
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEmmEv
+FN:1133,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE16_M_insert_uniqueERKS5_
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEmmEv
+FN:1133,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE16_M_insert_uniqueERKS7_
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKiSt3setIiSt4lessIiESaIiEEEEmmEv
+FN:1133,_ZNSt8_Rb_treeIiSt4pairIKiSt3setIiSt4lessIiESaIiEEESt10_Select1stIS7_ES4_SaIS7_EE16_M_insert_uniqueERKS7_
+FN:195,_ZNSt17_Rb_tree_iteratorIN3ept7debtags3TagEEmmEv
+FN:1133,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE16_M_insert_uniqueERKS2_
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEEEmmEv
+FN:1133,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEESt10_Select1stISA_ES6_ISsESaISA_EE16_M_insert_uniqueERKSA_
+FN:255,_ZNSt23_Rb_tree_const_iteratorISsEppEv
+FN:1178,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE17_M_insert_unique_ESt23_Rb_tree_const_iteratorISsERKSs
+FN:255,_ZNSt23_Rb_tree_const_iteratorIiEppEv
+FN:1178,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE17_M_insert_unique_ESt23_Rb_tree_const_iteratorIiERKi
+FN:255,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsN7tagcoll5PatchISsSsEEEEppEv
+FN:255,_ZNSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEppEv
+FN:255,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEppEv
+FN:262,_ZNSt23_Rb_tree_const_iteratorISt4pairIKiSt3setIiSt4lessIiESaIiEEEEppEi
+FN:255,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEppEv
+FN:1178,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE17_M_insert_unique_ESt23_Rb_tree_const_iteratorIS2_ERKS2_
+FN:255,_ZNSt23_Rb_tree_const_iteratorISt4pairIKiSt3setIiSt4lessIiESaIiEEEEppEv
+FN:262,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEEEppEi
+FN:255,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEEEppEv
+FN:262,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEppEi
+FN:1327,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5eraseESt23_Rb_tree_const_iteratorISsE
+FN:1313,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5eraseESt17_Rb_tree_iteratorIiE
+FN:1327,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5eraseESt23_Rb_tree_const_iteratorIiE
+FN:1313,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5eraseESt17_Rb_tree_iteratorISsE
+FN:187,_ZNSt17_Rb_tree_iteratorIiEppEi
+FN:1353,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5eraseESt17_Rb_tree_iteratorIiES7_
+FN:1341,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5eraseERKi
+FN:187,_ZNSt17_Rb_tree_iteratorISsEppEi
+FN:1353,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5eraseESt17_Rb_tree_iteratorISsES7_
+FN:1341,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5eraseERKSs
+DA:103,0
+DA:105,0
+DA:106,0
+DA:117,0
+DA:119,0
+DA:120,0
+DA:168,211504
+DA:169,211504
+DA:176,21152
+DA:177,21152
+DA:187,0
+DA:189,0
+DA:190,0
+DA:195,0
+DA:197,0
+DA:198,0
+DA:210,84601
+DA:211,84601
+DA:214,1
+DA:215,1
+DA:240,42321
+DA:241,42321
+DA:243,0
+DA:244,0
+DA:247,0
+DA:248,0
+DA:251,105737
+DA:252,105737
+DA:255,63439
+DA:257,63439
+DA:258,63439
+DA:262,3
+DA:264,3
+DA:265,3
+DA:270,0
+DA:272,0
+DA:273,0
+DA:285,4
+DA:286,4
+DA:289,63452
+DA:290,63452
+DA:347,42302
+DA:348,42302
+DA:351,42302
+DA:352,42302
+DA:356,21151
+DA:357,21151
+DA:360,21151
+DA:361,21151
+DA:364,21151
+DA:366,21151
+DA:368,21151
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,21151
+DA:378,0
+DA:380,0
+DA:381,0
+DA:382,0
+DA:383,0
+DA:384,0
+DA:388,21151
+DA:390,21151
+DA:391,21151
+DA:392,21151
+DA:398,8
+DA:403,8
+DA:405,8
+DA:406,8
+DA:408,0
+DA:410,0
+DA:411,0
+DA:415,8
+DA:417,8
+DA:418,8
+DA:419,8
+DA:420,8
+DA:421,8
+DA:428,0
+DA:429,0
+DA:432,0
+DA:433,0
+DA:436,0
+DA:437,0
+DA:444,0
+DA:445,0
+DA:452,63456
+DA:453,63456
+DA:456,2
+DA:459,2
+DA:463,84599
+DA:464,84599
+DA:467,2
+DA:468,2
+DA:471,1296340
+DA:472,1296340
+DA:475,1296340
+DA:476,1296340
+DA:479,164547
+DA:480,164547
+DA:483,2
+DA:484,2
+DA:487,1174094
+DA:488,1174094
+DA:491,0
+DA:492,0
+DA:495,63435
+DA:496,63435
+DA:499,63435
+DA:500,63435
+DA:503,0
+DA:504,0
+DA:511,0
+DA:512,0
+DA:562,8
+DA:568,0
+DA:569,0
+DA:571,0
+DA:573,0
+DA:574,0
+DA:575,0
+DA:576,0
+DA:578,0
+DA:584,8
+DA:585,8
+DA:596,14
+DA:599,14
+DA:603,9
+DA:606,9
+DA:610,126904
+DA:611,126904
+DA:614,42310
+DA:617,42310
+DA:637,0
+DA:638,0
+DA:641,4
+DA:642,4
+DA:695,0
+DA:697,0
+DA:698,0
+DA:699,0
+DA:700,0
+DA:701,0
+DA:702,0
+DA:824,0
+DA:826,0
+DA:829,0
+DA:830,0
+DA:831,0
+DA:833,0
+DA:834,0
+DA:835,0
+DA:836,0
+DA:839,0
+DA:846,21151
+DA:850,21151
+DA:852,21151
+DA:854,21151
+DA:857,21151
+DA:858,21151
+DA:900,0
+DA:903,0
+DA:904,0
+DA:908,0
+DA:909,0
+DA:910,0
+DA:911,0
+DA:913,0
+DA:915,0
+DA:916,0
+DA:917,0
+DA:918,0
+DA:919,0
+DA:920,0
+DA:921,0
+DA:924,0
+DA:926,0
+DA:927,0
+DA:929,0
+DA:936,21159
+DA:939,63469
+DA:941,21151
+DA:942,21151
+DA:943,21151
+DA:944,21151
+DA:946,21159
+DA:954,42306
+DA:956,888505
+DA:957,803893
+DA:958,143422
+DA:960,660471
+DA:961,42306
+DA:970,2
+DA:972,6
+DA:973,2
+DA:974,2
+DA:976,0
+DA:977,2
+DA:986,0
+DA:988,0
+DA:989,0
+DA:990,0
+DA:992,0
+DA:993,0
+DA:1019,3
+DA:1021,3
+DA:1022,3
+DA:1023,7
+DA:1025,1
+DA:1026,0
+DA:1027,1
+DA:1028,1
+DA:1031,0
+DA:1032,0
+DA:1033,0
+DA:1036,0
+DA:1040,3
+DA:1133,21151
+DA:1135,21151
+DA:1136,21151
+DA:1137,21151
+DA:1138,534787
+DA:1140,492485
+DA:1141,492485
+DA:1142,492485
+DA:1144,21151
+DA:1145,21151
+DA:1147,7
+DA:1148,7
+DA:1150,0
+DA:1152,21144
+DA:1153,21144
+DA:1154,0
+DA:1178,0
+DA:1181,0
+DA:1183,0
+DA:1186,0
+DA:1188,0
+DA:1190,0
+DA:1194,0
+DA:1195,0
+DA:1196,0
+DA:1197,0
+DA:1200,0
+DA:1201,0
+DA:1204,0
+DA:1207,0
+DA:1209,0
+DA:1213,0
+DA:1214,0
+DA:1215,0
+DA:1216,0
+DA:1219,0
+DA:1220,0
+DA:1222,0
+DA:1225,0
+DA:1230,0
+DA:1313,0
+DA:1318,0
+DA:1319,0
+DA:1320,0
+DA:1321,0
+DA:1327,0
+DA:1332,0
+DA:1333,0
+DA:1334,0
+DA:1335,0
+DA:1341,3
+DA:1343,3
+DA:1344,3
+DA:1345,3
+DA:1346,3
+DA:1353,3
+DA:1355,3
+DA:1356,2
+DA:1358,2
+DA:1359,0
+DA:1360,3
+DA:1390,42306
+DA:1392,42306
+DA:1395,42306
+DA:1403,2
+DA:1405,2
+DA:1408,2
+BA:105,0
+BA:105,0
+BA:119,0
+BA:119,0
+BA:571,0
+BA:571,0
+BA:571,0
+BA:571,0
+BA:571,0
+BA:571,0
+BA:826,0
+BA:826,0
+BA:826,0
+BA:826,0
+BA:826,0
+BA:826,0
+BA:831,0
+BA:831,0
+BA:831,0
+BA:831,0
+BA:831,0
+BA:831,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,2
+BA:850,1
+BA:850,1
+BA:850,2
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,2
+BA:850,1
+BA:850,2
+BA:850,2
+BA:850,1
+BA:850,2
+BA:850,2
+BA:850,1
+BA:850,1
+BA:850,2
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:908,0
+BA:908,0
+BA:908,0
+BA:908,0
+BA:908,0
+BA:908,0
+BA:913,0
+BA:913,0
+BA:913,0
+BA:913,0
+BA:913,0
+BA:913,0
+BA:918,0
+BA:918,0
+BA:918,0
+BA:918,0
+BA:918,0
+BA:918,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:956,2
+BA:956,2
+BA:956,0
+BA:956,0
+BA:956,0
+BA:956,0
+BA:956,1
+BA:956,2
+BA:956,1
+BA:956,2
+BA:956,2
+BA:956,2
+BA:956,2
+BA:956,2
+BA:956,0
+BA:956,0
+BA:957,2
+BA:957,2
+BA:957,0
+BA:957,0
+BA:957,0
+BA:957,0
+BA:957,0
+BA:957,0
+BA:957,0
+BA:957,0
+BA:957,2
+BA:957,2
+BA:957,2
+BA:957,2
+BA:957,0
+BA:957,0
+BA:972,2
+BA:972,2
+BA:972,2
+BA:972,2
+BA:973,2
+BA:973,1
+BA:973,2
+BA:973,1
+BA:988,0
+BA:988,0
+BA:988,0
+BA:988,0
+BA:989,0
+BA:989,0
+BA:989,0
+BA:989,0
+BA:1023,0
+BA:1023,0
+BA:1023,2
+BA:1023,2
+BA:1025,0
+BA:1025,0
+BA:1025,1
+BA:1025,2
+BA:1027,0
+BA:1027,0
+BA:1027,2
+BA:1027,1
+BA:1138,0
+BA:1138,0
+BA:1138,1
+BA:1138,2
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1138,2
+BA:1138,2
+BA:1138,1
+BA:1138,2
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,1
+BA:1142,2
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1145,0
+BA:1145,0
+BA:1145,2
+BA:1145,1
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1145,2
+BA:1145,2
+BA:1145,2
+BA:1145,1
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1147,0
+BA:1147,0
+BA:1147,2
+BA:1147,1
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1147,2
+BA:1147,1
+BA:1147,2
+BA:1147,1
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,2
+BA:1152,1
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1181,0
+BA:1181,0
+BA:1181,0
+BA:1181,0
+BA:1181,0
+BA:1181,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1190,0
+BA:1190,0
+BA:1190,0
+BA:1190,0
+BA:1190,0
+BA:1190,0
+BA:1195,0
+BA:1195,0
+BA:1195,0
+BA:1195,0
+BA:1195,0
+BA:1195,0
+BA:1197,0
+BA:1197,0
+BA:1197,0
+BA:1197,0
+BA:1197,0
+BA:1197,0
+BA:1200,0
+BA:1200,0
+BA:1200,0
+BA:1200,0
+BA:1200,0
+BA:1200,0
+BA:1209,0
+BA:1209,0
+BA:1209,0
+BA:1209,0
+BA:1209,0
+BA:1209,0
+BA:1214,0
+BA:1214,0
+BA:1214,0
+BA:1214,0
+BA:1214,0
+BA:1214,0
+BA:1216,0
+BA:1216,0
+BA:1216,0
+BA:1216,0
+BA:1216,0
+BA:1216,0
+BA:1219,0
+BA:1219,0
+BA:1219,0
+BA:1219,0
+BA:1219,0
+BA:1219,0
+BA:1355,0
+BA:1355,0
+BA:1355,0
+BA:1355,0
+BA:1355,0
+BA:1355,0
+BA:1355,2
+BA:1355,1
+BA:1355,2
+BA:1355,2
+BA:1355,2
+BA:1355,2
+BA:1358,0
+BA:1358,0
+BA:1358,1
+BA:1358,2
+BA:1395,2
+BA:1395,1
+BA:1395,1
+BA:1395,2
+BA:1395,0
+BA:1395,0
+BA:1395,0
+BA:1395,0
+BA:1395,1
+BA:1395,2
+BA:1395,0
+BA:1395,0
+BA:1395,1
+BA:1395,2
+BA:1395,0
+BA:1395,0
+BA:1395,2
+BA:1395,2
+BA:1395,1
+BA:1395,2
+BA:1395,0
+BA:1395,0
+BA:1395,0
+BA:1395,0
+BA:1395,2
+BA:1395,1
+BA:1395,2
+BA:1395,2
+BA:1408,2
+BA:1408,1
+BA:1408,1
+BA:1408,2
+BA:1408,2
+BA:1408,1
+BA:1408,1
+BA:1408,2
+LF:285
+LH:145
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiSt3setIiSt4lessIiESaIiEEEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS7_ESaIS7_EEEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsSsEEEEED2Ev
+FN:118,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEE7destroyEPS3_
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:118,_ZN9__gnu_cxx13new_allocatorIiE7destroyEPi
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEED2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEE9constructEPS3_RKS3_
+FN:71,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2ERKS6_
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIiED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEEC2ERKS3_
+FN:107,_ZN9__gnu_cxx13new_allocatorIiE9constructEPiRKi
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKiN7tagcoll5PatchIiiEEEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEEC2ERKS3_
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiSt3setIiSt4lessIiESaIiEEEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKiSt3setIiSt4lessIiESaIiEEEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS7_ESaIS7_EEEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS6_ESaIS6_EEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN7tagcoll5PatchISsSsEEEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIiEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKiN7tagcoll5PatchIiiEEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKiSt3setIiSt4lessIiESaIiEEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS6_ESaIS6_EEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsSsEEEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN7tagcoll5PatchISsSsEEEEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsSsEEEEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiSt3setIiSt4lessIiESaIiEEEEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS7_ESaIS7_EEEEE8max_sizeEv
+FN:118,_ZN9__gnu_cxx13new_allocatorISsE7destroyEPSs
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE10deallocateEPS2_j
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKiN7tagcoll5PatchIiiEEEE7destroyEPS6_
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKiSt3setIiSt4lessIiESaIiEEEE7destroyEPS8_
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEE10deallocateEPS8_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE10deallocateEPS2_j
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN7tagcoll5PatchISsSsEEEE7destroyEPS6_
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEE7destroyEPS8_
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsSsEEEEE10deallocateEPS8_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEE10deallocateEPSA_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiSt3setIiSt4lessIiESaIiEEEEE10deallocateEPSA_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE10deallocateEPS5_j
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS6_ESaIS6_EEEE7destroyEPSB_
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS7_ESaIS7_EEEEE10deallocateEPSD_j
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8allocateEjPKv
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN7tagcoll5PatchISsSsEEEE9constructEPS6_RKS6_
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEE9constructEPS8_RKS8_
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsSsEEEEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE8allocateEjPKv
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKiN7tagcoll5PatchIiiEEEE9constructEPS6_RKS6_
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKiSt3setIiSt4lessIiESaIiEEEE9constructEPS8_RKS8_
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiSt3setIiSt4lessIiESaIiEEEEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE8allocateEjPKv
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS6_ESaIS6_EEEE9constructEPSB_RKSB_
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSt3setIN3ept7debtags3TagESt4lessIS7_ESaIS7_EEEEE8allocateEjPKv
+DA:69,42310
+DA:71,0
+DA:76,42310
+DA:87,21151
+DA:89,21151
+DA:90,0
+DA:92,21151
+DA:97,21151
+DA:98,21151
+DA:101,21151
+DA:102,21151
+DA:107,21151
+DA:108,21151
+DA:118,21151
+BA:89,0
+BA:89,0
+BA:89,1
+BA:89,2
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,1
+BA:89,2
+BA:89,1
+BA:89,2
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,2
+BA:108,1
+BA:108,2
+BA:108,1
+BA:108,0
+BA:108,0
+BA:108,2
+BA:108,1
+BA:108,0
+BA:108,0
+LF:14
+LH:12
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:195,_ZNSolsEj
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/base.h
+FN:48,_ZN7tagcoll4coll18ReadonlyCollectionINS0_6SimpleISsSsEEEC2Ev
+FN:273,_ZN7tagcoll4coll10CollectionINS0_6SimpleISsSsEEEC2Ev
+FN:48,_ZN7tagcoll4coll18ReadonlyCollectionINS0_6SimpleIiiEEEC2Ev
+FN:273,_ZN7tagcoll4coll10CollectionINS0_6SimpleIiiEEEC2Ev
+FN:48,_ZN7tagcoll4coll18ReadonlyCollectionINS0_6SimpleISsN3ept7debtags3TagEEEEC2Ev
+FN:273,_ZN7tagcoll4coll10CollectionINS0_6SimpleISsN3ept7debtags3TagEEEEC2Ev
+FN:313,_ZN7tagcoll4coll8InserterINS0_6SimpleIiiEEEC1ERS3_
+FN:324,_ZN7tagcoll4coll8inserterINS0_6SimpleIiiEEEENS0_8InserterIT_EERS5_
+FN:49,_ZNK7tagcoll4coll18ReadonlyCollectionINS0_6SimpleISsSsEEE4selfEv
+FN:313,_ZN7tagcoll4coll8InserterINS0_6SimpleISsN3ept7debtags3TagEEEEC1ERS6_
+FN:324,_ZN7tagcoll4coll8inserterINS0_6SimpleISsN3ept7debtags3TagEEEEENS0_8InserterIT_EERS8_
+FN:49,_ZNK7tagcoll4coll18ReadonlyCollectionINS0_6SimpleIiiEEE4selfEv
+FN:313,_ZN7tagcoll4coll8InserterINS0_6SimpleISsSsEEEC1ERS3_
+FN:324,_ZN7tagcoll4coll8inserterINS0_6SimpleISsSsEEEENS0_8InserterIT_EERS5_
+FN:49,_ZNK7tagcoll4coll18ReadonlyCollectionINS0_6SimpleISsN3ept7debtags3TagEEEE4selfEv
+FN:316,_ZN7tagcoll4coll8InserterINS0_6SimpleISsSsEEEaSIN6wibble9SingletonISsEESt3setISsSt4lessISsESaISsEEEERS4_RKSt4pairIT_T0_E
+FN:316,_ZN7tagcoll4coll8InserterINS0_6SimpleIiiEEEaSISt3setIiSt4lessIiESaIiEESA_EERS4_RKSt4pairIT_T0_E
+FN:316,_ZN7tagcoll4coll8InserterINS0_6SimpleISsN3ept7debtags3TagEEEEaSISt3setISsSt4lessISsESaISsEES9_IS5_SA_IS5_ESaIS5_EEEERS7_RKSt4pairIT_T0_E
+FN:233,_ZNK7tagcoll4coll18ReadonlyCollectionINS0_6SimpleIiiEEE6outputIN3ept7debtags8IntToPkgINS0_8InserterINS2_ISsNS7_3TagEEEEEEEEEvT_
+FN:233,_ZNK7tagcoll4coll18ReadonlyCollectionINS0_6SimpleISsSsEEE6outputIN3ept7debtags11StringToIntINS0_8InserterINS2_IiiEEEEEEEEvT_
+FN:233,_ZNK7tagcoll4coll18ReadonlyCollectionINS0_6SimpleISsN3ept7debtags3TagEEEE6outputINS4_11PkgToStringINS0_8InserterINS2_ISsSsEEEEEEEEvT_
+DA:48,5
+DA:49,42303
+DA:233,3
+DA:273,5
+DA:313,6
+DA:316,2
+DA:318,2
+DA:319,2
+DA:324,6
+DA:326,6
+LF:10
+LH:10
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/base.tcc
+DA:138,12
+DA:141,3
+DA:142,3
+DA:144,3
+BA:138,2
+BA:138,2
+BA:138,2
+BA:138,2
+BA:138,2
+BA:138,2
+LF:4
+LH:4
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/patched.h
+FN:51,_ZN7tagcoll4coll7PatchedINS0_12IntDiskIndexEED1Ev
+DA:51,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/simple.h
+FN:121,_ZNK7tagcoll4coll6SimpleIiiE9itemCountEv
+FN:121,_ZNK7tagcoll4coll6SimpleISsN3ept7debtags3TagEE9itemCountEv
+FN:121,_ZNK7tagcoll4coll6SimpleISsSsE9itemCountEv
+FN:77,_ZNK7tagcoll4coll6SimpleISsN3ept7debtags3TagEE5beginEv
+FN:78,_ZNK7tagcoll4coll6SimpleISsN3ept7debtags3TagEE3endEv
+FN:77,_ZNK7tagcoll4coll6SimpleISsSsE5beginEv
+FN:78,_ZNK7tagcoll4coll6SimpleISsSsE3endEv
+FN:62,_ZN7tagcoll4coll6SimpleISsSsEC1Ev
+FN:62,_ZN7tagcoll4coll6SimpleIiiEC1Ev
+FN:77,_ZNK7tagcoll4coll6SimpleIiiE5beginEv
+FN:78,_ZNK7tagcoll4coll6SimpleIiiE3endEv
+FN:62,_ZN7tagcoll4coll6SimpleISsN3ept7debtags3TagEEC1Ev
+FN:62,_ZN7tagcoll4coll6SimpleISsSsED1Ev
+FN:62,_ZN7tagcoll4coll6SimpleIiiED1Ev
+FN:62,_ZN7tagcoll4coll6SimpleISsN3ept7debtags3TagEED1Ev
+FN:89,_ZNK7tagcoll4coll6SimpleISsSsE13getTagsOfItemERKSs
+FN:89,_ZNK7tagcoll4coll6SimpleISsN3ept7debtags3TagEE13getTagsOfItemERKSs
+FN:85,_ZN7tagcoll4coll6SimpleISsSsE6insertIN6wibble9SingletonISsEES6_EEvRKT_RKT0_
+FN:112,_ZNK7tagcoll4coll6SimpleIiiE10getAllTagsEv
+FN:123,_ZNK7tagcoll4coll6SimpleIiiE8tagCountEv
+FN:112,_ZNK7tagcoll4coll6SimpleISsN3ept7debtags3TagEE10getAllTagsEv
+FN:123,_ZNK7tagcoll4coll6SimpleISsN3ept7debtags3TagEE8tagCountEv
+FN:112,_ZNK7tagcoll4coll6SimpleISsSsE10getAllTagsEv
+FN:123,_ZNK7tagcoll4coll6SimpleISsSsE8tagCountEv
+DA:62,10
+DA:77,5
+DA:78,42298
+DA:85,2
+DA:89,2
+DA:112,3
+DA:121,2
+DA:123,3
+LF:8
+LH:8
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/simple.tcc
+FN:38,_ZN7tagcoll4coll6SimpleISsSsE6insertIN6wibble9SingletonISsEESt3setISsSt4lessISsESaISsEEEEvRKT_RKT0_
+FN:38,_ZN7tagcoll4coll6SimpleIiiE6insertISt3setIiSt4lessIiESaIiEES8_EEvRKT_RKT0_
+FN:38,_ZN7tagcoll4coll6SimpleISsN3ept7debtags3TagEE6insertISt3setISsSt4lessISsESaISsEES7_IS4_S8_IS4_ESaIS4_EEEEvRKT_RKT0_
+DA:38,2
+DA:42,4
+DA:43,0
+DA:44,8
+DA:47,4
+DA:48,4
+DA:49,3
+DA:51,1
+DA:58,2
+DA:60,2
+DA:61,0
+DA:63,2
+DA:145,3
+DA:147,6
+DA:149,3
+DA:151,0
+DA:186,2
+BA:42,1
+BA:42,2
+BA:42,1
+BA:42,2
+BA:42,1
+BA:42,2
+BA:42,0
+BA:42,0
+BA:44,2
+BA:44,2
+BA:44,2
+BA:44,2
+BA:44,2
+BA:44,2
+BA:44,0
+BA:44,0
+BA:48,2
+BA:48,2
+BA:48,2
+BA:48,1
+BA:48,2
+BA:48,1
+BA:48,0
+BA:48,0
+BA:60,1
+BA:60,2
+BA:60,1
+BA:60,2
+BA:147,2
+BA:147,2
+BA:147,2
+BA:147,2
+BA:147,2
+BA:147,2
+LF:17
+LH:14
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/patch.h
+FN:186,_ZN7tagcoll8InserterIiiEC1ERNS_9PatchListIiiEE
+FN:196,_ZN7tagcoll8inserterIiiEENS_8InserterIT_T0_EERNS_9PatchListIS2_S3_EE
+FN:186,_ZN7tagcoll8InserterISsSsEC1ERNS_9PatchListISsSsEE
+FN:196,_ZN7tagcoll8inserterISsSsEENS_8InserterIT_T0_EERNS_9PatchListIS2_S3_EE
+FN:126,_ZN7tagcoll9PatchListIiiEC1Ev
+FN:126,_ZN7tagcoll9PatchListISsSsEC1Ev
+FN:49,_ZN7tagcoll5PatchIiiED1Ev
+FN:45,_ZN7tagcoll5PatchIiiEC1ERKi
+FN:124,_ZN7tagcoll9PatchListIiiED1Ev
+FN:49,_ZN7tagcoll5PatchISsSsED1Ev
+FN:124,_ZN7tagcoll9PatchListISsSsED1Ev
+FN:45,_ZN7tagcoll5PatchISsSsEC1ERKSs
+FN:44,_ZN7tagcoll5PatchISsSsEC1ERKS1_
+FN:44,_ZN7tagcoll5PatchIiiEC1ERKS1_
+FN:48,_ZN7tagcoll5PatchISsSsEC1IN6wibble9SingletonISsEES5_EERKSsRKT_RKT0_
+FN:56,_ZN7tagcoll5PatchISsSsE3addERKSt3setISsSt4lessISsESaISsEE
+FN:66,_ZN7tagcoll5PatchISsSsE6removeERKSt3setISsSt4lessISsESaISsEE
+FN:77,_ZN7tagcoll5PatchISsSsE9mergeWithERKS1_
+FN:141,_ZN7tagcoll9PatchListISsSsE8addPatchERKNS_5PatchISsSsEE
+FN:188,_ZN7tagcoll8InserterISsSsEaSERKNS_5PatchISsSsEE
+FN:56,_ZN7tagcoll5PatchIiiE3addERKSt3setIiSt4lessIiESaIiEE
+FN:66,_ZN7tagcoll5PatchIiiE6removeERKSt3setIiSt4lessIiESaIiEE
+FN:77,_ZN7tagcoll5PatchIiiE9mergeWithERKS1_
+FN:141,_ZN7tagcoll9PatchListIiiE8addPatchERKNS_5PatchIiiEE
+FN:188,_ZN7tagcoll8InserterIiiEaSERKNS_5PatchIiiEE
+FN:51,_ZN7tagcoll5PatchIiiE3addERKi
+FN:61,_ZN7tagcoll5PatchIiiE6removeERKi
+FN:51,_ZN7tagcoll5PatchISsSsE3addERKSs
+FN:61,_ZN7tagcoll5PatchISsSsE6removeERKSs
+FN:176,_ZNK7tagcoll9PatchListISsSsE6outputIN3ept7debtags16PatchStringToIntINS_8InserterIiiEEEEEEvT_
+FN:176,_ZNK7tagcoll9PatchListIiiE6outputIN3ept7debtags16PatchIntToStringINS_8InserterISsSsEEEEEEvT_
+DA:44,12
+DA:45,2
+DA:48,1
+DA:49,15
+DA:51,2
+DA:54,2
+DA:55,2
+DA:56,0
+DA:59,0
+DA:60,0
+DA:61,1
+DA:64,1
+DA:65,1
+DA:66,0
+DA:69,0
+DA:70,0
+DA:77,0
+DA:79,0
+DA:80,0
+DA:81,0
+DA:124,3
+DA:126,3
+DA:141,3
+DA:176,3
+DA:186,3
+DA:188,3
+DA:190,3
+DA:191,3
+DA:196,3
+DA:198,3
+LF:30
+LH:20
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/patch.tcc
+DA:41,1
+DA:43,1
+DA:44,1
+DA:45,1
+DA:51,3
+DA:52,0
+DA:54,3
+DA:55,3
+DA:56,3
+DA:58,0
+DA:151,6
+DA:154,3
+DA:155,3
+DA:157,3
+BA:51,1
+BA:51,2
+BA:51,0
+BA:51,0
+BA:51,1
+BA:51,2
+BA:51,0
+BA:51,0
+BA:51,0
+BA:51,0
+BA:51,0
+BA:51,0
+BA:55,2
+BA:55,1
+BA:55,0
+BA:55,0
+BA:151,2
+BA:151,2
+BA:151,2
+BA:151,2
+LF:14
+LH:12
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.h
+DA:86,1
+BA:86,1
+BA:86,2
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/popcon/local.h
+FN:40,_ZN3ept6popcon5LocalD1Ev
+DA:40,1
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/popcon/local.test.h
+FN:42,_ZN15TestPopconLocalC1Ev
+FN:33,_ZN15TestPopconLocalD1Ev
+FN:51,_ZN15TestPopconLocal11basicAccessEv
+DA:33,1
+DA:42,1
+DA:47,1
+DA:48,1
+DA:51,1
+DA:53,1
+DA:54,2
+DA:55,1
+LF:8
+LH:8
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/popcon/maint/path.h
+FN:70,_ZN3ept6popcon4Path23OverridePopconSourceDirC1ERKSs
+FN:74,_ZN3ept6popcon4Path23OverridePopconSourceDirD1Ev
+FN:80,_ZN3ept6popcon4Path22OverridePopconIndexDirC1ERKSs
+FN:84,_ZN3ept6popcon4Path22OverridePopconIndexDirD1Ev
+FN:90,_ZN3ept6popcon4Path27OverridePopconUserSourceDirC1ERKSs
+FN:94,_ZN3ept6popcon4Path27OverridePopconUserSourceDirD1Ev
+FN:100,_ZN3ept6popcon4Path26OverridePopconUserIndexDirC1ERKSs
+FN:104,_ZN3ept6popcon4Path26OverridePopconUserIndexDirD1Ev
+DA:70,0
+DA:72,0
+DA:73,0
+DA:74,0
+DA:80,0
+DA:82,0
+DA:83,0
+DA:84,0
+DA:90,0
+DA:92,0
+DA:93,0
+DA:94,0
+DA:100,0
+DA:102,0
+DA:103,0
+DA:104,0
+LF:16
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/popcon/popcon.h
+FN:73,_ZN3ept6popcon6PopconD1Ev
+DA:73,0
+LF:1
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationD1Ev
+FN:17,_ZN8LocationC1EPKciSs
+FN:13,_ZN8LocationC1ERKS_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:41,_ZN12AssertFailedD1Ev
+FN:59,_Z9assert_fnIbEv8LocationT_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+LF:18
+LH:0
+end_of_record
+SF:/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_popcon_local.cpp
+FN:3,_Z41__static_initialization_and_destruction_0ii
+FN:3,_GLOBAL__I_ept_test_generated__home_mornfall_dev_pkg_ept_work_ept_popcon_local.cpp
+FN:3,_Z27run_PopconLocal_basicAccessv
+DA:3,4
+BA:3,2
+BA:3,1
+BA:3,2
+BA:3,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsfEEED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISt4pairIKSsfEED1Ev
+FN:104,_ZNSaISt4pairIKSsfEEC1ISt13_Rb_tree_nodeIS1_EEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:104,3804
+DA:106,3805
+DA:118,0
+DA:119,0
+LF:7
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:277,_ZNKSs7_M_dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:51
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:166,0
+DA:167,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_map.h
+FN:92,_ZNSt3mapISsfSt4lessISsESaISt4pairIKSsfEEED1Ev
+DA:92,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:73,_ZNSt4pairIKSsfED1Ev
+DA:73,3804
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_beginEv
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE13_Rb_tree_implIS6_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE21_M_get_Node_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE13get_allocatorEv
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EED1Ev
+DA:347,3804
+DA:348,3804
+DA:351,3804
+DA:352,3804
+DA:360,1902
+DA:361,1902
+DA:388,1902
+DA:390,1902
+DA:391,1902
+DA:392,1902
+DA:398,1
+DA:452,1903
+DA:453,1903
+DA:479,11346
+DA:480,11346
+DA:487,11356
+DA:488,11356
+DA:584,1
+DA:585,1
+DA:936,1903
+DA:939,5708
+DA:941,1902
+DA:942,1902
+DA:943,1902
+DA:944,1902
+DA:946,1903
+BA:939,2
+BA:939,2
+LF:26
+LH:26
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsfEEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsfEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsfEEC2Ev
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsfEE7destroyEPS3_
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsfEEE10deallocateEPS5_j
+DA:69,3804
+DA:71,0
+DA:76,3805
+DA:97,1902
+DA:98,1902
+DA:118,1902
+LF:6
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/apt/recordparser.h
+FN:88,_ZNK3ept3apt12RecordParser4sizeEv
+FN:51,_ZN3ept3apt12RecordParserC1ERKSs
+FN:39,_ZN3ept3apt12RecordParserD1Ev
+FN:85,_ZN3ept3apt12RecordParser6recordEv
+FN:73,_ZNK3ept3apt12RecordParser6lookupERKSs
+FN:79,_ZNK3ept3apt12RecordParserixERKSs
+FN:76,_ZNK3ept3apt12RecordParserixEj
+DA:39,12
+DA:51,12
+DA:73,18273
+DA:76,6
+DA:79,19
+DA:85,1
+DA:88,20972
+LF:7
+LH:7
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/apt/recordparser.test.h
+FN:28,_ZN19TestAptRecordparserD1Ev
+FN:30,_ZN19TestAptRecordparserC1Ev
+FN:43,_ZN19TestAptRecordparser7parsingEv
+FN:213,_ZN19TestAptRecordparser18bufferTermination3Ev
+FN:201,_ZN19TestAptRecordparser18bufferTermination2Ev
+FN:189,_ZN19TestAptRecordparser17bufferTerminationEv
+FN:120,_ZN19TestAptRecordparser6rescanEv
+FN:99,_ZN19TestAptRecordparser8indexingEv
+FN:71,_ZN19TestAptRecordparser11fieldValuesEv
+FN:51,_ZN19TestAptRecordparser11fieldTuplesEv
+FN:150,_ZN19TestAptRecordparser8realLifeEv
+FN:109,_ZN19TestAptRecordparser16missingBehaviourEv
+FN:82,_ZN19TestAptRecordparser10findByNameEv
+FN:61,_ZN19TestAptRecordparser9fieldKeysEv
+DA:28,12
+DA:30,12
+DA:31,12
+DA:39,12
+DA:40,12
+DA:43,1
+DA:45,1
+DA:47,1
+DA:48,1
+DA:49,1
+DA:51,1
+DA:53,1
+DA:54,1
+DA:55,1
+DA:56,1
+DA:57,1
+DA:58,1
+DA:59,1
+DA:61,1
+DA:63,1
+DA:64,1
+DA:65,1
+DA:66,1
+DA:67,1
+DA:68,1
+DA:69,1
+DA:71,1
+DA:73,1
+DA:74,1
+DA:75,1
+DA:76,1
+DA:77,1
+DA:78,1
+DA:79,1
+DA:82,1
+DA:84,1
+DA:86,1
+DA:87,2
+DA:88,2
+DA:89,2
+DA:90,2
+DA:92,2
+DA:93,2
+DA:94,2
+DA:95,2
+DA:96,2
+DA:97,1
+DA:99,1
+DA:101,1
+DA:102,1
+DA:103,2
+DA:104,2
+DA:105,2
+DA:106,2
+DA:107,1
+DA:109,1
+DA:111,1
+DA:113,1
+DA:114,1
+DA:115,1
+DA:116,1
+DA:117,1
+DA:120,1
+DA:125,1
+DA:127,1
+DA:128,1
+DA:129,2
+DA:130,2
+DA:131,2
+DA:135,2
+DA:137,1
+DA:142,1
+DA:143,2
+DA:144,2
+DA:145,2
+DA:146,2
+DA:147,1
+DA:150,1
+DA:177,1
+DA:178,1
+DA:180,1
+DA:182,1
+DA:183,20
+DA:184,19
+DA:185,1
+DA:186,1
+DA:189,1
+DA:193,1
+DA:195,1
+DA:196,1
+DA:197,2
+DA:198,2
+DA:199,1
+DA:201,1
+DA:205,1
+DA:207,1
+DA:208,1
+DA:209,2
+DA:210,2
+DA:211,1
+DA:213,1
+DA:218,1
+DA:220,1
+DA:221,1
+DA:222,2
+DA:223,2
+DA:224,1
+BA:183,2
+BA:183,2
+LF:107
+LH:107
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.h
+DA:86,1
+BA:86,1
+BA:86,2
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationD1Ev
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:41,_ZN12AssertFailedD1Ev
+FN:67,_Z12assert_eq_fnIjjEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsSsEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsPKcEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:75,0
+BA:42,0
+BA:42,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+LF:22
+LH:0
+end_of_record
+SF:/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_recordparser.cpp
+FN:14,_Z41__static_initialization_and_destruction_0ii
+FN:14,_GLOBAL__I_ept_test_generated__home_mornfall_dev_pkg_ept_work_ept_apt_recordparser.cpp
+FN:3,_Z27run_AptRecordparser_parsingv
+FN:14,_Z38run_AptRecordparser_bufferTermination3v
+FN:13,_Z38run_AptRecordparser_bufferTermination2v
+FN:12,_Z37run_AptRecordparser_bufferTerminationv
+FN:10,_Z26run_AptRecordparser_rescanv
+FN:8,_Z28run_AptRecordparser_indexingv
+FN:6,_Z31run_AptRecordparser_fieldValuesv
+FN:4,_Z31run_AptRecordparser_fieldTuplesv
+FN:11,_Z28run_AptRecordparser_realLifev
+FN:9,_Z36run_AptRecordparser_missingBehaviourv
+FN:7,_Z30run_AptRecordparser_findByNamev
+FN:5,_Z29run_AptRecordparser_fieldKeysv
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,1
+DA:7,1
+DA:8,1
+DA:9,1
+DA:10,1
+DA:11,1
+DA:12,1
+DA:13,1
+DA:14,4
+BA:14,2
+BA:14,1
+BA:14,2
+BA:14,1
+LF:12
+LH:12
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaIjED2Ev
+FN:98,_ZNSaIjEC2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:928,_ZNSs6assignEPKc
+FN:509,_ZNSsaSEPKc
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:773,_ZNSspLERKSs
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:509,0
+DA:510,0
+DA:606,0
+DA:607,0
+DA:773,0
+DA:774,0
+DA:928,0
+DA:931,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2162,0
+DA:2165,0
+DA:2188,0
+DA:2189,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:61
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:97,_ZSt8_DestroyIPjEvT_S1_
+FN:126,_ZSt8_DestroyIPjjEvT_S1_RSaIT0_E
+DA:97,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:166,0
+DA:167,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:484,_ZNKSt6vectorIjSaIjEE4sizeEv
+FN:97,_ZNSt12_Vector_baseIjSaIjEE19_M_get_Tp_allocatorEv
+FN:79,_ZNSt12_Vector_baseIjSaIjEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseIjSaIjEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIjSaIjEEC2Ev
+FN:213,_ZNSt6vectorIjSaIjEEC1Ev
+FN:147,_ZNSt12_Vector_baseIjSaIjEE13_M_deallocateEPjj
+FN:135,_ZNSt12_Vector_baseIjSaIjEED2Ev
+FN:299,_ZNSt6vectorIjSaIjEED1Ev
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:484,728334
+DA:485,728334
+BA:149,0
+BA:149,0
+LF:22
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorIjED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIjEC2Ev
+FN:97,_ZN9__gnu_cxx13new_allocatorIjE10deallocateEPjj
+DA:69,0
+DA:71,0
+DA:76,0
+DA:97,0
+DA:98,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:195,_ZNSolsEj
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.h
+DA:86,1
+BA:86,1
+BA:86,2
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt.h
+FN:139,_ZN3ept4core11AptDatabaseC1Ev
+FN:209,_ZN3ept4core11AptDatabase10invalidateEv
+FN:331,_ZN3ept4core11AptDatabaseD1Ev
+DA:139,0
+DA:140,0
+DA:141,0
+DA:142,0
+DA:143,0
+DA:144,0
+DA:145,0
+DA:146,0
+DA:209,0
+DA:210,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:218,0
+DA:219,0
+DA:220,0
+DA:331,0
+DA:332,0
+DA:333,0
+BA:210,0
+BA:210,0
+BA:214,0
+BA:214,0
+BA:216,0
+BA:216,0
+BA:218,0
+BA:218,0
+LF:21
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/test.h
+FN:12,_ZN18AptTestEnvironmentC2Ev
+FN:10,_ZN18AptTestEnvironmentD2Ev
+DA:10,0
+DA:12,0
+DA:13,0
+DA:14,0
+DA:15,0
+DA:16,0
+DA:17,0
+DA:18,0
+DA:19,0
+DA:20,0
+DA:21,0
+LF:11
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/textsearch/maint/path.h
+FN:55,_ZN3ept10textsearch4Path16OverrideIndexDirC1ERKSs
+FN:59,_ZN3ept10textsearch4Path16OverrideIndexDirD1Ev
+DA:55,0
+DA:57,0
+DA:58,0
+DA:59,0
+LF:4
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/textsearch/textsearch.h
+FN:130,_ZN3ept10textsearch10TextSearch2dbEv
+FN:136,_ZNK3ept10textsearch10TextSearch9timestampEv
+FN:139,_ZNK3ept10textsearch10TextSearch7hasDataEv
+FN:103,_ZN3ept10textsearch10TextSearchD1Ev
+DA:103,0
+DA:130,3
+DA:136,3
+DA:139,3
+LF:4
+LH:3
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/textsearch/textsearch.test.h
+FN:42,_ZN8DirMakerC1ERKSs
+FN:55,_ZN14TestTextsearchC1Ev
+FN:49,_ZN14TestTextsearchD1Ev
+FN:140,_ZN14TestTextsearch6valuesEv
+FN:133,_ZN14TestTextsearch11docidByNameEv
+FN:118,_ZN14TestTextsearch14partialOrQueryEv
+FN:103,_ZN14TestTextsearch11queryAccessEv
+FN:84,_ZN14TestTextsearch11basicAccessEv
+FN:68,_ZN14TestTextsearch5emptyEv
+DA:42,6
+DA:44,6
+DA:45,6
+DA:49,6
+DA:55,6
+DA:56,6
+DA:59,6
+DA:60,6
+DA:61,0
+DA:62,0
+DA:63,0
+DA:65,6
+DA:68,1
+DA:70,1
+DA:71,1
+DA:72,1
+DA:73,2
+DA:74,2
+DA:81,1
+DA:84,1
+DA:86,1
+DA:87,2
+DA:88,2
+DA:90,1
+DA:91,2
+DA:92,1
+DA:93,1
+DA:96,1
+DA:97,10
+DA:98,10
+DA:99,1
+DA:100,1
+DA:103,1
+DA:105,1
+DA:106,1
+DA:107,1
+DA:108,1
+DA:111,1
+DA:112,10
+DA:113,10
+DA:114,1
+DA:115,1
+DA:118,1
+DA:120,1
+DA:121,1
+DA:122,1
+DA:123,1
+DA:126,1
+DA:127,10
+DA:128,10
+DA:129,1
+DA:130,1
+DA:133,1
+DA:135,1
+DA:136,2
+DA:137,1
+DA:140,1
+DA:142,1
+DA:143,2
+DA:144,2
+DA:147,2
+DA:148,2
+DA:149,2
+DA:150,2
+DA:151,2
+DA:152,2
+DA:155,2
+DA:156,2
+DA:157,2
+DA:158,2
+DA:159,1
+DA:160,2
+DA:161,2
+DA:162,1
+BA:97,2
+BA:97,2
+BA:112,2
+BA:112,2
+BA:127,2
+BA:127,2
+LF:74
+LH:71
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationD1Ev
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:52,_ZlsIiER12AssertFailedS1_T_
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:52,_ZlsIdER12AssertFailedS1_T_
+FN:41,_ZN12AssertFailedD1Ev
+FN:67,_Z12assert_eq_fnIddEv8LocationT_T0_
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:67,_Z12assert_eq_fnIiiEv8LocationT_T0_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:67,_Z12assert_eq_fnIjjEv8LocationT_T0_
+FN:52,_ZlsIlER12AssertFailedS1_T_
+FN:67,_Z12assert_eq_fnIliEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,2
+DA:69,2
+DA:70,0
+DA:71,0
+DA:75,2
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,1
+BA:69,2
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+LF:26
+LH:3
+end_of_record
+SF:/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_textsearch_textsearch.cpp
+FN:8,_Z41__static_initialization_and_destruction_0ii
+FN:8,_GLOBAL__I_ept_test_generated__home_mornfall_dev_pkg_ept_work_ept_textsearch_textsearch.cpp
+FN:8,_Z21run_Textsearch_valuesv
+FN:7,_Z26run_Textsearch_docidByNamev
+FN:6,_Z29run_Textsearch_partialOrQueryv
+FN:5,_Z26run_Textsearch_queryAccessv
+FN:4,_Z26run_Textsearch_basicAccessv
+FN:3,_Z20run_Textsearch_emptyv
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,1
+DA:7,1
+DA:8,4
+BA:8,2
+BA:8,1
+BA:8,2
+BA:8,1
+LF:6
+LH:6
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISsEED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED1Ev
+FN:106,_ZNSaIPKN3ept10textsearch10TextSearch12ExtraIndexerEED2Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISsEEC2Ev
+FN:104,_ZNSaISsEC1ISt13_Rb_tree_nodeISsEEERKSaIT_E
+FN:98,_ZNSaIPKN3ept10textsearch10TextSearch12ExtraIndexerEEC2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:104,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:7
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1544,_ZNKSs4dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:392,_ZNSs10_S_compareEjj
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:1941,_ZNKSs7compareERKSs
+FN:2238,_ZStltIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2238,0
+DA:2239,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+BA:1948,0
+BA:1948,0
+LF:64
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:188,_ZSt3minIjERKT_S2_S2_
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+BA:193,0
+BA:193,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:97,_ZSt8_DestroyIPPKN3ept10textsearch10TextSearch12ExtraIndexerEEvT_S7_
+FN:126,_ZSt8_DestroyIPPKN3ept10textsearch10TextSearch12ExtraIndexerES5_EvT_S7_RSaIT0_E
+DA:97,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:469,_ZNKSt9_IdentityISsEclERKSs
+FN:229,_ZNKSt4lessISsEclERKSsS2_
+DA:229,0
+DA:230,0
+DA:469,0
+DA:470,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:166,0
+DA:167,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorISsEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorISsEbEC1ERKS1_RKb
+DA:88,0
+DA:89,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:270,_ZNKSt3setISsSt4lessISsESaISsEE3endEv
+FN:141,_ZNSt3setISsSt4lessISsESaISsEEC1Ev
+FN:93,_ZNSt3setISsSt4lessISsESaISsEED1Ev
+FN:503,_ZNSt3setISsSt4lessISsESaISsEE4findERKSs
+FN:378,_ZNSt3setISsSt4lessISsESaISsEE6insertERKSs
+DA:93,0
+DA:141,0
+DA:142,0
+DA:270,0
+DA:271,0
+DA:378,0
+DA:381,0
+DA:382,0
+DA:503,0
+DA:504,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISsEneERKS0_
+FN:452,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorISsEC1ERKSt17_Rb_tree_iteratorISsE
+FN:398,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPSt18_Rb_tree_node_base
+FN:463,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorISsEC1EPSt13_Rb_tree_nodeISsE
+FN:596,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISsEeqERKS0_
+FN:240,_ZNSt23_Rb_tree_const_iteratorISsEC1EPKSt13_Rb_tree_nodeISsE
+FN:614,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE3endEv
+FN:610,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE3endEv
+FN:415,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:471,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt13_Rb_tree_nodeISsE
+FN:475,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt13_Rb_tree_nodeISsE
+FN:495,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt18_Rb_tree_node_base
+FN:403,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEC1Ev
+FN:347,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE21_M_get_Node_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13get_allocatorEv
+FN:360,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_put_nodeEPSt13_Rb_tree_nodeISsE
+FN:388,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE15_M_destroy_nodeEPSt13_Rb_tree_nodeISsE
+FN:936,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_eraseEPSt13_Rb_tree_nodeISsE
+FN:584,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEED1Ev
+FN:954,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE14_M_lower_boundEPSt13_Rb_tree_nodeISsES8_RKSs
+FN:1390,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE4findERKSs
+FN:195,_ZNSt17_Rb_tree_iteratorISsEmmEv
+FN:356,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE14_M_create_nodeERKSs
+FN:846,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_M_insert_EPKSt18_Rb_tree_node_baseS8_RKSs
+FN:1133,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE16_M_insert_uniqueERKSs
+DA:168,0
+DA:169,0
+DA:195,0
+DA:197,0
+DA:198,0
+DA:210,0
+DA:211,0
+DA:240,0
+DA:241,0
+DA:243,0
+DA:244,0
+DA:289,0
+DA:290,0
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:356,0
+DA:357,0
+DA:360,0
+DA:361,0
+DA:364,0
+DA:366,0
+DA:368,0
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,0
+DA:388,0
+DA:390,0
+DA:391,0
+DA:392,0
+DA:398,0
+DA:403,0
+DA:405,0
+DA:406,0
+DA:415,0
+DA:417,0
+DA:418,0
+DA:419,0
+DA:420,0
+DA:421,0
+DA:452,0
+DA:453,0
+DA:463,0
+DA:464,0
+DA:471,0
+DA:472,0
+DA:475,0
+DA:476,0
+DA:479,0
+DA:480,0
+DA:487,0
+DA:488,0
+DA:495,0
+DA:496,0
+DA:499,0
+DA:500,0
+DA:562,0
+DA:584,0
+DA:585,0
+DA:596,0
+DA:599,0
+DA:610,0
+DA:611,0
+DA:614,0
+DA:617,0
+DA:846,0
+DA:850,0
+DA:852,0
+DA:854,0
+DA:857,0
+DA:858,0
+DA:936,0
+DA:939,0
+DA:941,0
+DA:942,0
+DA:943,0
+DA:944,0
+DA:946,0
+DA:954,0
+DA:956,0
+DA:957,0
+DA:958,0
+DA:960,0
+DA:961,0
+DA:1133,0
+DA:1135,0
+DA:1136,0
+DA:1137,0
+DA:1138,0
+DA:1140,0
+DA:1141,0
+DA:1142,0
+DA:1144,0
+DA:1145,0
+DA:1147,0
+DA:1148,0
+DA:1150,0
+DA:1152,0
+DA:1153,0
+DA:1154,0
+DA:1390,0
+DA:1392,0
+DA:1395,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:939,0
+BA:939,0
+BA:956,0
+BA:956,0
+BA:957,0
+BA:957,0
+BA:1138,0
+BA:1138,0
+BA:1142,0
+BA:1142,0
+BA:1145,0
+BA:1145,0
+BA:1147,0
+BA:1147,0
+BA:1152,0
+BA:1152,0
+BA:1395,0
+BA:1395,0
+BA:1395,0
+BA:1395,0
+LF:105
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseIPKN3ept10textsearch10TextSearch12ExtraIndexerESaIS5_EE19_M_get_Tp_allocatorEv
+FN:79,_ZNSt12_Vector_baseIPKN3ept10textsearch10TextSearch12ExtraIndexerESaIS5_EE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseIPKN3ept10textsearch10TextSearch12ExtraIndexerESaIS5_EE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIPKN3ept10textsearch10TextSearch12ExtraIndexerESaIS5_EEC2Ev
+FN:213,_ZNSt6vectorIPKN3ept10textsearch10TextSearch12ExtraIndexerESaIS5_EEC1Ev
+FN:147,_ZNSt12_Vector_baseIPKN3ept10textsearch10TextSearch12ExtraIndexerESaIS5_EE13_M_deallocateEPS5_j
+FN:135,_ZNSt12_Vector_baseIPKN3ept10textsearch10TextSearch12ExtraIndexerESaIS5_EED2Ev
+FN:299,_ZNSt6vectorIPKN3ept10textsearch10TextSearch12ExtraIndexerESaIS5_EED1Ev
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+BA:149,0
+BA:149,0
+LF:20
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIPKN3ept10textsearch10TextSearch12ExtraIndexerEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIPKN3ept10textsearch10TextSearch12ExtraIndexerEEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8max_sizeEv
+FN:118,_ZN9__gnu_cxx13new_allocatorISsE7destroyEPSs
+FN:97,_ZN9__gnu_cxx13new_allocatorIPKN3ept10textsearch10TextSearch12ExtraIndexerEE10deallocateEPS6_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE10deallocateEPS2_j
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8allocateEjPKv
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+DA:118,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:213,_ZNSolsEd
+FN:195,_ZNSolsEj
+FN:169,_ZNSolsEl
+DA:95,0
+DA:112,0
+DA:117,0
+DA:169,0
+DA:170,0
+DA:195,0
+DA:199,0
+DA:213,0
+DA:214,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:20
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/xapian/enquire.h
+FN:273,_ZN6Xapian12MSetIteratorppEv
+FN:379,_ZN6XapianneERKNS_12MSetIteratorES2_
+FN:258,_ZN6Xapian12MSetIteratorD1Ev
+DA:258,0
+DA:273,0
+DA:274,0
+DA:275,0
+DA:379,0
+DA:381,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/xapian/error.h
+FN:101,_ZNK6Xapian5Error8get_typeEv
+FN:104,_ZNK6Xapian5Error7get_msgEv
+FN:113,_ZNK6Xapian5Error11get_contextEv
+DA:101,0
+DA:104,0
+DA:113,0
+LF:3
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.h
+DA:86,1
+BA:86,1
+BA:86,2
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/desktop.h
+FN:132,_ZNK3ept4core7desktop12InternalList5emptyEv
+FN:183,_ZN3ept4core7desktop11GroupPolicyC1Ev
+FN:265,_ZN3ept4core7desktop6Source11getInternalILNS1_10PropertyIdE1EEENS1_12PropertyTypeIXT_EE1TENS1_5EntryE
+FN:36,_ZN3ept4core7desktop8CategoryC1Ev
+FN:53,_ZN3ept4core7desktop5EntryC1Ev
+FN:36,_ZN3ept4core7desktop8CategoryD1Ev
+FN:224,_ZN3ept4core7desktop6Source9IsInGroupD1Ev
+FN:119,_ZN3ept4core7desktop12InternalListC1Ev
+FN:38,_ZNK3ept4core7desktop8CategorycvSsEv
+FN:226,_ZN3ept4core7desktop6Source9IsInGroupC1ESs
+FN:224,_ZN3ept4core7desktop6Source9IsInGroupC1ERKS3_
+FN:95,_ZNK3ept4core7desktop5Entry2idEv
+FN:96,_ZNK3ept4core7desktop5Entry4nameEv
+FN:251,_ZN3ept4core7desktop6Source11getInternalILNS1_10PropertyIdE0EEENS1_12PropertyTypeIXT_EE1TENS1_5EntryE
+FN:188,_ZN3ept4core7desktop11GroupPolicyD0Ev
+FN:188,_ZN3ept4core7desktop11GroupPolicyD1Ev
+FN:52,_ZN3ept4core7desktop5EntryD1Ev
+FN:198,_ZN3ept4core7desktop6SourceC1ESs
+FN:192,_ZN3ept4core7desktop6SourceD1Ev
+FN:112,_ZN3ept4core7desktop12InternalListD1Ev
+FN:91,_ZNK3ept4core7desktop5Entry10categoriesEv
+FN:52,_ZN3ept4core7desktop5EntryC1ERKS2_
+FN:112,_ZN3ept4core7desktop12InternalListC1ERKS2_
+FN:184,_ZN3ept4core7desktop11GroupPolicy5groupERKNS1_5EntryE
+FN:52,_ZN3ept4core7desktop5EntryaSERKS2_
+FN:112,_ZN3ept4core7desktop12InternalListaSERKS2_
+FN:205,_ZN3ept4core7desktop6Source8getTokenENS1_5EntryE
+FN:224,_ZN3ept4core7desktop6Source9IsInGroupaSERKS3_
+FN:227,_ZNK3ept4core7desktop6Source9IsInGroupclENS_5TokenESs
+FN:147,_ZN3ept4core7desktop12InternalList8nextFileEv
+FN:136,_ZN3ept4core7desktop12InternalList9firstFileEv
+FN:120,_ZN3ept4core7desktop12InternalListC1ESs
+FN:201,_ZN3ept4core7desktop6Source12listInternalEv
+FN:244,_ZN3ept4core7desktop6Source9groupListEv
+FN:232,_ZN3ept4core7desktop6Source5groupESs
+FN:141,_ZNK3ept4core7desktop12InternalList4tailEv
+FN:41,_ZN3ept4core7desktoprsERSiRNS1_8CategoryE
+FN:81,_ZN3ept4core7desktop5Entry13setCategoriesESs
+FN:62,_ZN3ept4core7desktop5Entry4loadESs
+FN:125,_ZNK3ept4core7desktop12InternalList4headEv
+FN:237,_ZN3ept4core7desktop6Source12projectGroupENS0_6SourceIS2_NS1_5SetupENS1_12PropertyTypeEE12ComposedListILNS1_10PropertyIdE0EEE
+DA:36,64
+DA:38,112
+DA:41,80
+DA:43,80
+DA:44,468
+DA:45,356
+DA:46,356
+DA:47,308
+DA:49,32
+DA:52,567
+DA:53,18
+DA:62,16
+DA:63,16
+DA:64,16
+DA:65,16
+DA:66,0
+DA:67,16
+DA:68,16
+DA:69,16
+DA:70,16
+DA:71,32
+DA:72,32
+DA:73,32
+DA:74,8
+DA:75,16
+DA:77,32
+DA:78,32
+DA:81,16
+DA:82,16
+DA:83,16
+DA:88,16
+DA:89,16
+DA:91,16
+DA:95,34
+DA:96,6
+DA:112,450
+DA:119,9
+DA:120,4
+DA:122,4
+DA:123,4
+DA:125,56
+DA:126,56
+DA:127,16
+DA:128,56
+DA:129,56
+DA:132,33
+DA:133,33
+DA:136,4
+DA:137,4
+DA:138,4
+DA:139,4
+DA:141,16
+DA:142,16
+DA:143,16
+DA:144,0
+DA:147,20
+DA:148,20
+DA:149,20
+DA:150,20
+DA:151,0
+DA:152,0
+DA:153,0
+DA:156,20
+DA:157,16
+DA:159,20
+DA:160,48
+DA:161,24
+DA:162,48
+DA:163,8
+DA:164,16
+DA:166,16
+DA:167,16
+DA:168,16
+DA:169,16
+DA:171,4
+DA:172,4
+DA:183,5
+DA:184,16
+DA:186,16
+DA:188,5
+DA:192,5
+DA:198,5
+DA:199,5
+DA:201,4
+DA:202,4
+DA:205,34
+DA:206,34
+DA:207,34
+DA:208,0
+DA:224,56
+DA:226,2
+DA:227,8
+DA:228,8
+DA:232,1
+DA:234,1
+DA:237,4
+DA:238,4
+DA:244,1
+DA:247,1
+DA:251,6
+DA:252,6
+DA:265,16
+DA:266,16
+BA:44,2
+BA:44,2
+BA:46,2
+BA:46,2
+BA:65,1
+BA:65,2
+BA:73,2
+BA:73,2
+BA:78,1
+BA:78,2
+BA:126,2
+BA:126,2
+BA:150,1
+BA:150,2
+BA:156,2
+BA:156,2
+BA:160,2
+BA:160,2
+BA:160,2
+BA:160,2
+BA:162,2
+BA:162,2
+BA:162,2
+BA:162,2
+BA:162,2
+BA:162,2
+BA:164,1
+BA:164,2
+BA:188,0
+BA:188,0
+BA:188,1
+BA:188,2
+LF:103
+LH:97
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/desktop.test.h
+FN:13,_ZN11TestDesktopC1Ev
+FN:9,_ZN11TestDesktopD1Ev
+FN:64,_ZN11TestDesktop14emptyGroupListEv
+FN:16,_ZN11TestDesktop15checkIteration2ILN3ept4core7desktop10PropertyIdE0EN6wibble4list6SortedINS6_8FilteredINS2_6SourceINS3_6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILS4_1EEENSD_10PropertifyILS4_1ENSA_9IsInGroupEEEEEEEEEviPPKcT0_
+FN:27,_ZN11TestDesktop14checkIterationILN3ept4core7desktop10PropertyIdE0EN6wibble4list8FilteredINS2_6SourceINS3_6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILS4_1EEENSC_10PropertifyILS4_1ENS9_9IsInGroupEEEEEEEviPPKcT0_
+FN:48,_ZN11TestDesktop6groupsEv
+FN:16,_ZN11TestDesktop15checkIteration2ILN3ept4core7desktop10PropertyIdE1EN6wibble4list6SortedINS2_6SourceINS3_6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILS4_0EEEEEEEviPPKcT0_
+FN:27,_ZN11TestDesktop14checkIterationILN3ept4core7desktop10PropertyIdE1ENS2_6SourceINS3_6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILS4_0EEEEEviPPKcT0_
+FN:37,_ZN11TestDesktop13groupPropertyEv
+FN:16,_ZN11TestDesktop15checkIteration2ILN3ept4core7desktop10PropertyIdE0EN6wibble4list6SortedINS2_6SourceINS3_6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILS4_0EEEEEEEviPPKcT0_
+FN:27,_ZN11TestDesktop14checkIterationILN3ept4core7desktop10PropertyIdE0ENS2_6SourceINS3_6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILS4_0EEEEEviPPKcT0_
+FN:31,_ZN11TestDesktop9iterationEv
+FN:54,_ZN11TestDesktop9groupListEv
+DA:9,5
+DA:13,5
+DA:16,3
+DA:17,3
+DA:18,16
+DA:19,10
+DA:20,20
+DA:21,10
+DA:23,3
+DA:24,3
+DA:27,3
+DA:28,3
+DA:29,3
+DA:31,1
+DA:32,1
+DA:34,1
+DA:35,1
+DA:37,1
+DA:43,1
+DA:45,1
+DA:46,1
+DA:48,1
+DA:49,1
+DA:51,1
+DA:52,1
+DA:54,1
+DA:59,1
+DA:61,2
+DA:62,1
+DA:64,1
+DA:65,1
+DA:66,1
+DA:67,1
+BA:18,2
+BA:18,2
+BA:18,2
+BA:18,2
+BA:18,2
+BA:18,2
+BA:59,0
+BA:59,0
+BA:59,0
+BA:59,0
+BA:61,0
+BA:61,0
+BA:61,2
+BA:61,2
+LF:33
+LH:33
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/desktopfile.h
+FN:14,_ZN3ept4core7desktop4FileC1Ev
+FN:21,_ZN3ept4core7desktop4File5GroupC1Ev
+FN:15,_ZN3ept4core7desktop4File5EntryC1Ev
+FN:15,_ZN3ept4core7desktop4File5EntryD1Ev
+FN:15,_ZN3ept4core7desktop4File5EntryC1ERKS3_
+FN:21,_ZN3ept4core7desktop4File5GroupD1Ev
+FN:14,_ZN3ept4core7desktop4FileD1Ev
+FN:21,_ZN3ept4core7desktop4File5GroupC1ERKS3_
+FN:15,_ZN3ept4core7desktop4File5EntryaSERKS3_
+FN:21,_ZN3ept4core7desktop4File5GroupaSERKS3_
+FN:32,_ZN3ept4core7desktoprsERSiRNS1_4File5EntryE
+FN:92,_ZN3ept4core7desktoprsERSiRNS1_4File5GroupE
+FN:24,_ZN3ept4core7desktop4File5Group5entryESs
+FN:124,_ZN3ept4core7desktoprsERSiRNS1_4FileE
+FN:29,_ZN3ept4core7desktop4File5groupESs
+DA:14,32
+DA:15,13540
+DA:21,144
+DA:24,88
+DA:29,16
+DA:32,1228
+DA:34,1228
+DA:36,1228
+DA:38,16056
+DA:39,14820
+DA:40,14820
+DA:41,8
+DA:42,14812
+DA:43,0
+DA:44,0
+DA:46,14812
+DA:47,0
+DA:49,0
+DA:51,14812
+DA:52,14812
+DA:53,1212
+DA:54,13600
+DA:55,13600
+DA:56,13600
+DA:60,1220
+DA:61,1220
+DA:63,37496
+DA:64,36268
+DA:65,36268
+DA:66,1212
+DA:67,0
+DA:68,1212
+DA:70,35056
+DA:71,0
+DA:72,35056
+DA:73,35056
+DA:74,0
+DA:75,0
+DA:76,0
+DA:77,0
+DA:78,0
+DA:79,0
+DA:80,0
+DA:81,0
+DA:83,35056
+DA:84,0
+DA:85,0
+DA:87,35056
+DA:89,8
+DA:92,16
+DA:94,16
+DA:95,16
+DA:96,256
+DA:97,240
+DA:98,240
+DA:99,0
+DA:100,240
+DA:101,0
+DA:103,0
+DA:105,240
+DA:106,16
+DA:107,16
+DA:109,224
+DA:110,16
+DA:112,16
+DA:114,208
+DA:116,1236
+DA:117,1220
+DA:118,1220
+DA:119,1220
+DA:121,16
+DA:124,16
+DA:126,32
+DA:127,16
+DA:128,16
+DA:129,16
+DA:131,16
+BA:38,2
+BA:38,2
+BA:40,2
+BA:40,2
+BA:40,2
+BA:40,2
+BA:42,1
+BA:42,2
+BA:46,2
+BA:46,2
+BA:46,1
+BA:46,2
+BA:47,0
+BA:47,0
+BA:47,0
+BA:47,0
+BA:47,0
+BA:47,0
+BA:52,2
+BA:52,2
+BA:63,2
+BA:63,2
+BA:65,2
+BA:65,2
+BA:66,1
+BA:66,2
+BA:70,2
+BA:70,2
+BA:70,1
+BA:70,2
+BA:73,1
+BA:73,2
+BA:74,0
+BA:74,0
+BA:75,0
+BA:75,0
+BA:76,0
+BA:76,0
+BA:77,0
+BA:77,0
+BA:78,0
+BA:78,0
+BA:83,1
+BA:83,2
+BA:96,2
+BA:96,1
+BA:98,2
+BA:98,2
+BA:98,1
+BA:98,2
+BA:100,2
+BA:100,2
+BA:100,1
+BA:100,2
+BA:101,0
+BA:101,0
+BA:101,0
+BA:101,0
+BA:101,0
+BA:101,0
+BA:105,2
+BA:105,2
+BA:105,2
+BA:105,1
+BA:109,2
+BA:109,1
+BA:109,2
+BA:109,2
+BA:110,2
+BA:110,1
+BA:110,1
+BA:110,2
+BA:110,1
+BA:110,2
+BA:116,2
+BA:116,2
+BA:126,2
+BA:126,2
+LF:77
+LH:58
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/source.h
+FN:20,_ZN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE4selfEv
+FN:51,_ZNK3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EE5emptyEv
+FN:57,_ZN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EE4headEv
+FN:51,_ZNK3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE1EE5emptyEv
+FN:57,_ZN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE1EE4headEv
+FN:58,_ZNK3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EE4headEv
+FN:86,_ZN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE10PropertifyILNS2_10PropertyIdE1ENS3_9IsInGroupEED1Ev
+FN:106,_ZN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEEC2Ev
+FN:73,_ZN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EEC1Ev
+FN:73,_ZN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE1EEC1Ev
+FN:88,_ZN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE10PropertifyILNS2_10PropertyIdE1ENS3_9IsInGroupEEC1ES9_
+FN:86,_ZN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE10PropertifyILNS2_10PropertyIdE1ENS3_9IsInGroupEEC1ERKSA_
+FN:13,_ZN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEED2Ev
+FN:38,_ZN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EED1Ev
+FN:38,_ZN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE1EED1Ev
+FN:75,_ZN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EEC1ERS3_NS2_12InternalListE
+FN:38,_ZN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EEC1ERKS9_
+FN:75,_ZN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE1EEC1ERS3_NS2_12InternalListE
+FN:38,_ZN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE1EEC1ERKS9_
+FN:38,_ZN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EEaSERKS9_
+FN:38,_ZN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE1EEaSERKS9_
+FN:86,_ZN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE10PropertifyILNS2_10PropertyIdE1ENS3_9IsInGroupEEaSERKSA_
+FN:80,_ZN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE4listILNS2_10PropertyIdE0EEENS6_12ComposedListIXT_EEEv
+FN:80,_ZN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE4listILNS2_10PropertyIdE1EEENS6_12ComposedListIXT_EEEv
+FN:102,_ZN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE14propertyFilterILNS2_10PropertyIdE1ENS3_9IsInGroupEEENS6_14PropertyFilterIXT_ET0_E1TESB_
+FN:47,_ZNK3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EE4tailEv
+FN:47,_ZNK3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE1EE4tailEv
+FN:69,_ZNK3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EE3getILS8_1EEENS5_IXT_EE1TEv
+FN:62,_ZNK3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE1EE8propertyEv
+FN:60,_ZNK3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE1EE5tokenEv
+FN:89,_ZNK3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE10PropertifyILNS2_10PropertyIdE1ENS3_9IsInGroupEEclERKNS6_12ComposedListILS8_1EEE
+FN:53,_ZNK3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE1EEltERKS9_
+FN:69,_ZNK3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE1EE3getILS8_0EEENS5_IXT_EE1TEv
+FN:60,_ZNK3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EE5tokenEv
+FN:53,_ZNK3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EEltERKS9_
+FN:69,_ZNK3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EE3getILS8_0EEENS5_IXT_EE1TEv
+DA:13,5
+DA:20,8
+DA:38,393
+DA:47,16
+DA:48,16
+DA:51,32
+DA:53,13
+DA:54,13
+DA:57,18
+DA:58,4
+DA:60,34
+DA:62,8
+DA:64,8
+DA:69,14
+DA:70,14
+DA:73,8
+DA:75,20
+DA:76,20
+DA:80,4
+DA:82,4
+DA:86,50
+DA:88,2
+DA:89,8
+DA:90,8
+DA:102,1
+DA:103,1
+DA:106,5
+DA:107,5
+DA:108,5
+LF:29
+LH:29
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/token.h
+FN:10,_ZN3ept5TokenD1Ev
+FN:14,_ZN3ept5TokenC1Ev
+FN:44,_ZNK3ept5TokenleERKS0_
+DA:10,9870
+DA:14,9755
+DA:44,58
+DA:45,58
+LF:4
+LH:4
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/list.h
+FN:61,_ZN6wibble4list6SortedINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEE9SharedVec6_derefEv
+FN:250,_ZN6wibble4list3MapIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt25pointer_to_unary_functionISC_SsEE1fEv
+FN:60,_ZN6wibble4list6SortedINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEE9SharedVec4_refEv
+FN:68,_ZN6wibble4list6SortedINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEE9SharedPtrC1ERKSI_
+FN:61,_ZN6wibble4list6SortedIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEE9SharedVec6_derefEv
+FN:61,_ZN6wibble4list6SortedINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEE9SharedVec6_derefEv
+FN:74,_ZN6wibble4list6SortedINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEE9SharedPtraSERKSI_
+FN:60,_ZN6wibble4list6SortedIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEE9SharedVec4_refEv
+FN:68,_ZN6wibble4list6SortedIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEE9SharedPtrC1ERKSE_
+FN:83,_ZN6wibble4list6SortedIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEE9SharedPtrptEv
+FN:82,_ZN6wibble4list6SortedIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEE9SharedPtrdeEv
+FN:74,_ZN6wibble4list6SortedIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEE9SharedPtraSERKSE_
+FN:60,_ZN6wibble4list6SortedINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEE9SharedVec4_refEv
+FN:68,_ZN6wibble4list6SortedINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEE9SharedPtrC1ERKSJ_
+FN:83,_ZN6wibble4list6SortedINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEE9SharedPtrptEv
+FN:82,_ZN6wibble4list6SortedINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEE9SharedPtrdeEv
+FN:74,_ZN6wibble4list6SortedINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEE9SharedPtraSERKSJ_
+FN:83,_ZN6wibble4list6SortedINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEE9SharedPtrptEv
+FN:82,_ZN6wibble4list6SortedINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEE9SharedPtrdeEv
+FN:59,_ZN6wibble4list6SortedINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEE9SharedVecC1Ev
+FN:81,_ZN6wibble4list6SortedIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEE9SharedPtrcvbEv
+FN:81,_ZN6wibble4list6SortedINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEE9SharedPtrcvbEv
+FN:81,_ZN6wibble4list6SortedINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEE9SharedPtrcvbEv
+FN:59,_ZN6wibble4list6SortedIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEE9SharedVecC1Ev
+FN:43,_ZNK6wibble4list12ListIteratorIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEEneERKSD_
+FN:59,_ZN6wibble4list6SortedINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEE9SharedVecC1Ev
+FN:270,_ZNK6wibble4list3MapIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt25pointer_to_unary_functionISC_SsEE5emptyEv
+FN:43,_ZNK6wibble4list12ListIteratorINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEEneERKSH_
+FN:253,_ZNK6wibble4list3MapIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt25pointer_to_unary_functionISC_SsEE1fEv
+FN:274,_ZN6wibble4list3MapIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt25pointer_to_unary_functionISC_SsEEC1Ev
+FN:246,_ZN6wibble4list3MapIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt25pointer_to_unary_functionISC_SsEED1Ev
+FN:15,_ZN6wibble4list12ListIteratorINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEED1Ev
+FN:15,_ZN6wibble4list12ListIteratorIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEED1Ev
+FN:174,_ZN6wibble4list8FilteredIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEENS9_10PropertifyILSB_1ENS6_9IsInGroupEEEEC1Ev
+FN:140,_ZN6wibble4list8FilteredIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEENS9_10PropertifyILSB_1ENS6_9IsInGroupEEEED1Ev
+FN:15,_ZN6wibble4list12ListIteratorINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEED1Ev
+FN:56,_ZN6wibble4list6SortedINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEE9SharedVecD1Ev
+FN:85,_ZN6wibble4list6SortedINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEE9SharedPtrD1Ev
+FN:54,_ZN6wibble4list6SortedINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEED1Ev
+FN:179,_ZN6wibble4list6UniqueINS0_6SortedINS0_3MapIN3ept4core6SourceINS5_7desktop6SourceENS7_5SetupENS7_12PropertyTypeEE12ComposedListILNS7_10PropertyIdE0EEESt25pointer_to_unary_functionISE_SsEEEEEED1Ev
+FN:56,_ZN6wibble4list6SortedINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEE9SharedVecD1Ev
+FN:85,_ZN6wibble4list6SortedINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEE9SharedPtrD1Ev
+FN:54,_ZN6wibble4list6SortedINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEED1Ev
+FN:56,_ZN6wibble4list6SortedIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEE9SharedVecD1Ev
+FN:85,_ZN6wibble4list6SortedIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEE9SharedPtrD1Ev
+FN:54,_ZN6wibble4list6SortedIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEED1Ev
+FN:275,_ZN6wibble4list3MapIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt25pointer_to_unary_functionISC_SsEEC1ERKSC_RKSE_
+FN:382,_ZN6wibble4list3mapIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt25pointer_to_unary_functionISC_SsEEENS0_3MapIT_T0_EERKSG_RKSH_
+FN:246,_ZN6wibble4list3MapIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt25pointer_to_unary_functionISC_SsEEC1ERKSF_
+FN:125,_ZN6wibble4list6SortedINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEEC1ERKSH_
+FN:213,_ZN6wibble4list6UniqueINS0_6SortedINS0_3MapIN3ept4core6SourceINS5_7desktop6SourceENS7_5SetupENS7_12PropertyTypeEE12ComposedListILNS7_10PropertyIdE0EEESt25pointer_to_unary_functionISE_SsEEEEEEC1ESI_
+FN:394,_ZN6wibble4list6uniqueINS0_6SortedINS0_3MapIN3ept4core6SourceINS5_7desktop6SourceENS7_5SetupENS7_12PropertyTypeEE12ComposedListILNS7_10PropertyIdE0EEESt25pointer_to_unary_functionISE_SsEEEEEEENS0_6UniqueIT_EESK_
+FN:179,_ZN6wibble4list6UniqueINS0_6SortedINS0_3MapIN3ept4core6SourceINS5_7desktop6SourceENS7_5SetupENS7_12PropertyTypeEE12ComposedListILNS7_10PropertyIdE0EEESt25pointer_to_unary_functionISE_SsEEEEEEC1ERKSJ_
+FN:47,_ZN6wibble4list12ListIteratorINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEEC1ESG_
+FN:15,_ZN6wibble4list12ListIteratorINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEEC1ERKSH_
+FN:259,_ZNK6wibble4list3MapIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt25pointer_to_unary_functionISC_SsEE4headEv
+FN:35,_ZN6wibble4list12ListIteratorINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEEdeEv
+FN:47,_ZN6wibble4list12ListIteratorIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEEC1ESC_
+FN:15,_ZN6wibble4list12ListIteratorIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEEC1ERKSD_
+FN:35,_ZN6wibble4list12ListIteratorIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEEdeEv
+FN:125,_ZN6wibble4list6SortedIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEEC1ERKSD_
+FN:169,_ZN6wibble4list8FilteredIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEENS9_10PropertifyILSB_1ENS6_9IsInGroupEEEEC1ESC_SF_
+FN:370,_ZN6wibble4list6filterIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEENS9_10PropertifyILSB_1ENS6_9IsInGroupEEEEENS0_8FilteredIT_T0_EESH_SI_
+FN:140,_ZN6wibble4list8FilteredIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEENS9_10PropertifyILSB_1ENS6_9IsInGroupEEEEC1ERKSG_
+FN:47,_ZN6wibble4list12ListIteratorINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEEC1ESH_
+FN:15,_ZN6wibble4list12ListIteratorINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEEC1ERKSI_
+FN:125,_ZN6wibble4list6SortedINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEEC1ERKSI_
+FN:66,_ZN6wibble4list6SortedINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEE9SharedPtrC1Eb
+FN:135,_ZN6wibble4list6SortedINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEEC1ESG_
+FN:388,_ZN6wibble4list4sortINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEEENS0_6SortedIT_EESI_
+FN:66,_ZN6wibble4list6SortedINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEE9SharedPtrC1Eb
+FN:135,_ZN6wibble4list6SortedINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEEC1ESH_
+FN:388,_ZN6wibble4list4sortINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEEENS0_6SortedIT_EESJ_
+FN:66,_ZN6wibble4list6SortedIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEE9SharedPtrC1Eb
+FN:135,_ZN6wibble4list6SortedIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEEC1ESC_
+FN:388,_ZN6wibble4list4sortIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEEENS0_6SortedIT_EESE_
+FN:246,_ZN6wibble4list3MapIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt25pointer_to_unary_functionISC_SsEEaSERKSF_
+FN:128,_ZN6wibble4list6SortedINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEEaSERKSH_
+FN:179,_ZN6wibble4list6UniqueINS0_6SortedINS0_3MapIN3ept4core6SourceINS5_7desktop6SourceENS7_5SetupENS7_12PropertyTypeEE12ComposedListILNS7_10PropertyIdE0EEESt25pointer_to_unary_functionISE_SsEEEEEEaSERKSJ_
+FN:128,_ZN6wibble4list6SortedIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEEaSERKSD_
+FN:140,_ZN6wibble4list8FilteredIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEENS9_10PropertifyILSB_1ENS6_9IsInGroupEEEEaSERKSG_
+FN:128,_ZN6wibble4list6SortedINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEEaSERKSI_
+FN:263,_ZNK6wibble4list3MapIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt25pointer_to_unary_functionISC_SsEE4tailEv
+FN:24,_ZN6wibble4list12ListIteratorINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEEppEv
+FN:24,_ZN6wibble4list12ListIteratorIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEEppEv
+FN:155,_ZNK6wibble4list8FilteredIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEENS9_10PropertifyILSB_1ENS6_9IsInGroupEEEE4seekEv
+FN:150,_ZNK6wibble4list8FilteredIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEENS9_10PropertifyILSB_1ENS6_9IsInGroupEEEE4headEv
+FN:35,_ZN6wibble4list12ListIteratorINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEEdeEv
+FN:161,_ZNK6wibble4list8FilteredIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEENS9_10PropertifyILSB_1ENS6_9IsInGroupEEEE4tailEv
+FN:24,_ZN6wibble4list12ListIteratorINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEEppEv
+FN:145,_ZNK6wibble4list8FilteredIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEENS9_10PropertifyILSB_1ENS6_9IsInGroupEEEE5emptyEv
+FN:43,_ZNK6wibble4list12ListIteratorINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEEneERKSI_
+FN:99,_ZNK6wibble4list6SortedINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEE4sortEv
+FN:108,_ZNK6wibble4list6SortedINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEE4headEv
+FN:113,_ZNK6wibble4list6SortedINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEE4tailEv
+FN:120,_ZNK6wibble4list6SortedINS0_8FilteredIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEENSA_10PropertifyILSC_1ENS7_9IsInGroupEEEEEE5emptyEv
+FN:99,_ZNK6wibble4list6SortedIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEE4sortEv
+FN:108,_ZNK6wibble4list6SortedIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEE4headEv
+FN:113,_ZNK6wibble4list6SortedIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEE4tailEv
+FN:120,_ZNK6wibble4list6SortedIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEE5emptyEv
+FN:99,_ZNK6wibble4list6SortedINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEE4sortEv
+FN:120,_ZNK6wibble4list6SortedINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEE5emptyEv
+FN:113,_ZNK6wibble4list6SortedINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEE4tailEv
+FN:108,_ZNK6wibble4list6SortedINS0_3MapIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESt25pointer_to_unary_functionISD_SsEEEE4headEv
+FN:193,_ZNK6wibble4list6UniqueINS0_6SortedINS0_3MapIN3ept4core6SourceINS5_7desktop6SourceENS7_5SetupENS7_12PropertyTypeEE12ComposedListILNS7_10PropertyIdE0EEESt25pointer_to_unary_functionISE_SsEEEEEE4seekEv
+FN:205,_ZNK6wibble4list6UniqueINS0_6SortedINS0_3MapIN3ept4core6SourceINS5_7desktop6SourceENS7_5SetupENS7_12PropertyTypeEE12ComposedListILNS7_10PropertyIdE0EEESt25pointer_to_unary_functionISE_SsEEEEEE4tailEv
+FN:183,_ZNK6wibble4list6UniqueINS0_6SortedINS0_3MapIN3ept4core6SourceINS5_7desktop6SourceENS7_5SetupENS7_12PropertyTypeEE12ComposedListILNS7_10PropertyIdE0EEESt25pointer_to_unary_functionISE_SsEEEEEE5emptyEv
+FN:188,_ZNK6wibble4list6UniqueINS0_6SortedINS0_3MapIN3ept4core6SourceINS5_7desktop6SourceENS7_5SetupENS7_12PropertyTypeEE12ComposedListILNS7_10PropertyIdE0EEESt25pointer_to_unary_functionISE_SsEEEEEE4headEv
+DA:15,88
+DA:24,14
+DA:25,14
+DA:26,14
+DA:35,14
+DA:36,14
+DA:43,18
+DA:44,18
+DA:47,8
+DA:48,8
+DA:54,40
+DA:56,0
+DA:59,4
+DA:60,55
+DA:61,42
+DA:66,8
+DA:68,36
+DA:69,36
+DA:70,36
+DA:71,34
+DA:72,36
+DA:74,21
+DA:75,21
+DA:76,21
+DA:77,21
+DA:78,21
+DA:81,96
+DA:82,31
+DA:83,46
+DA:85,44
+DA:86,44
+DA:87,42
+DA:88,42
+DA:89,0
+DA:91,44
+DA:99,96
+DA:100,96
+DA:101,92
+DA:102,4
+DA:103,8
+DA:105,4
+DA:108,27
+DA:109,27
+DA:110,27
+DA:113,31
+DA:114,31
+DA:115,31
+DA:116,31
+DA:120,38
+DA:121,38
+DA:122,38
+DA:125,36
+DA:126,36
+DA:128,17
+DA:129,17
+DA:130,17
+DA:131,17
+DA:132,17
+DA:135,4
+DA:140,46
+DA:145,4
+DA:146,4
+DA:147,4
+DA:150,2
+DA:151,2
+DA:152,2
+DA:155,8
+DA:157,18
+DA:158,2
+DA:159,8
+DA:161,2
+DA:163,2
+DA:164,2
+DA:165,2
+DA:166,0
+DA:169,1
+DA:170,1
+DA:171,0
+DA:172,1
+DA:174,1
+DA:179,10
+DA:183,4
+DA:184,4
+DA:185,4
+DA:188,3
+DA:189,3
+DA:190,3
+DA:193,11
+DA:195,11
+DA:196,1
+DA:197,10
+DA:198,3
+DA:199,7
+DA:200,1
+DA:201,1
+DA:205,3
+DA:207,3
+DA:208,3
+DA:209,3
+DA:210,0
+DA:213,1
+DA:214,1
+DA:216,1
+DA:246,99
+DA:250,5
+DA:251,5
+DA:253,8
+DA:254,8
+DA:259,4
+DA:260,4
+DA:263,4
+DA:264,4
+DA:265,4
+DA:266,4
+DA:267,0
+DA:270,6
+DA:271,6
+DA:274,5
+DA:275,1
+DA:276,1
+DA:278,1
+DA:279,1
+DA:370,1
+DA:372,1
+DA:382,1
+DA:384,1
+DA:388,4
+DA:390,4
+DA:394,1
+DA:396,1
+BA:44,2
+BA:44,2
+BA:44,1
+BA:44,2
+BA:44,2
+BA:44,2
+BA:44,1
+BA:44,2
+BA:44,2
+BA:44,2
+BA:44,1
+BA:44,2
+BA:66,2
+BA:66,2
+BA:66,2
+BA:66,2
+BA:66,2
+BA:66,2
+BA:70,2
+BA:70,2
+BA:70,2
+BA:70,1
+BA:70,2
+BA:70,1
+BA:76,2
+BA:76,1
+BA:76,2
+BA:76,1
+BA:76,2
+BA:76,1
+BA:86,2
+BA:86,2
+BA:86,2
+BA:86,1
+BA:86,2
+BA:86,1
+BA:88,1
+BA:88,2
+BA:88,1
+BA:88,2
+BA:88,1
+BA:88,2
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:100,2
+BA:100,2
+BA:100,2
+BA:100,2
+BA:100,2
+BA:100,2
+BA:157,2
+BA:157,2
+BA:157,2
+BA:157,2
+BA:157,2
+BA:157,2
+BA:195,2
+BA:195,2
+BA:197,2
+BA:197,2
+BA:199,2
+BA:199,2
+LF:130
+LH:124
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/mixin.h
+FN:13,_ZN6wibble5mixin10ComparableIN3ept5TokenEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableIN3ept4core7desktop5EntryEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEEEC2Ev
+FN:13,_ZN6wibble5mixin10ComparableIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEEEC2Ev
+FN:15,_ZNK6wibble5mixin10ComparableIN3ept5TokenEE7cmpSelfEv
+FN:23,_ZNK6wibble5mixin10ComparableIN3ept5TokenEEeqERKS3_
+FN:19,_ZNK6wibble5mixin10ComparableIN3ept5TokenEEneERKS3_
+FN:27,_ZNK6wibble5mixin10ComparableIN3ept5TokenEEltERKS3_
+DA:13,9809
+DA:15,82
+DA:16,82
+DA:19,19
+DA:20,19
+DA:23,23
+DA:24,23
+DA:27,13
+DA:28,13
+BA:24,2
+BA:24,2
+BA:24,2
+BA:24,2
+BA:28,2
+BA:28,2
+BA:28,2
+BA:28,1
+LF:9
+LH:9
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/operators.h
+FN:29,_ZN6wibble9operatorsplISt23_Rb_tree_const_iteratorISsEEET_RKS4_NS4_15difference_typeE
+DA:29,48
+DA:30,48
+DA:31,48
+LF:3
+LH:3
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/string.h
+FN:59,_ZN6wibble3strL3fmtESsz
+FN:84,_ZN6wibble3str13fmt_containerISt3setISsSt4lessISsESaISsEEEESsRKT_cc
+FN:104,_ZN6wibble3str3fmtISsEESsRKSt3setIT_St4lessIS3_ESaIS3_EE
+FN:153,_ZN6wibble3str8endsWithERKSsS2_
+DA:59,48
+DA:62,48
+DA:63,48
+DA:64,48
+DA:65,48
+DA:84,16
+DA:86,16
+DA:87,16
+DA:88,16
+DA:89,0
+DA:91,16
+DA:92,64
+DA:93,48
+DA:94,48
+DA:95,32
+DA:97,16
+DA:98,16
+DA:99,16
+DA:104,16
+DA:105,16
+DA:153,16
+DA:155,16
+DA:156,0
+DA:157,16
+BA:88,1
+BA:88,2
+BA:92,2
+BA:92,2
+BA:94,2
+BA:94,1
+BA:94,2
+BA:94,2
+BA:94,2
+BA:94,2
+BA:155,1
+BA:155,2
+LF:24
+LH:22
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationD1Ev
+FN:17,_ZN8LocationC1EPKciSs
+FN:13,_ZN8LocationC1ERKS_
+FN:52,_ZlsIiER12AssertFailedS1_T_
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:41,_ZN12AssertFailedD1Ev
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:67,_Z12assert_eq_fnIiiEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsPKcEv8LocationT_T0_
+FN:79,_Z17assert_list_eq_fnIN6wibble4list6UniqueINS1_6SortedINS1_3MapIN3ept4core6SourceINS6_7desktop6SourceENS8_5SetupENS8_12PropertyTypeEE12ComposedListILNS8_10PropertyIdE0EEESt25pointer_to_unary_functionISF_SsEEEEEEEEv8LocationiT_PKNSM_4TypeE
+DA:13,108754
+DA:17,108754
+DA:18,108754
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,96375
+DA:61,96375
+DA:62,0
+DA:64,96375
+DA:67,2800
+DA:69,2800
+DA:70,0
+DA:71,0
+DA:75,2800
+DA:79,1
+DA:81,1
+DA:82,5
+DA:83,3
+DA:84,0
+DA:85,0
+DA:90,3
+DA:91,3
+DA:93,1
+DA:94,0
+DA:95,0
+DA:98,1
+BA:42,0
+BA:42,0
+BA:61,1
+BA:61,2
+BA:69,1
+BA:69,2
+BA:69,1
+BA:69,2
+BA:82,2
+BA:82,2
+BA:83,1
+BA:83,2
+BA:93,1
+BA:93,2
+LF:38
+LH:17
+end_of_record
+SF:/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_desktop.cpp
+FN:7,_Z41__static_initialization_and_destruction_0ii
+FN:7,_GLOBAL__I_ept_test_generated__home_mornfall_dev_pkg_ept_work_ept_core_desktop.cpp
+FN:7,_Z26run_Desktop_emptyGroupListv
+FN:5,_Z18run_Desktop_groupsv
+FN:4,_Z25run_Desktop_groupPropertyv
+FN:3,_Z21run_Desktop_iterationv
+FN:6,_Z21run_Desktop_groupListv
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,1
+DA:7,4
+BA:7,2
+BA:7,1
+BA:7,2
+BA:7,1
+LF:5
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/backward/binders.h
+FN:103,_ZNSt9binder1stISt8equal_toISsEED1Ev
+FN:110,_ZNSt9binder1stISt8equal_toISsEEC1ERKS1_RKSs
+FN:127,_ZSt7bind1stISt8equal_toISsEA1_cESt9binder1stIT_ERKS4_RKT0_
+FN:114,_ZNKSt9binder1stISt8equal_toISsEEclERKSs
+DA:103,16
+DA:110,16
+DA:111,16
+DA:114,64
+DA:115,64
+DA:127,16
+DA:130,16
+LF:7
+LH:7
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN3ept4core7desktop4File5EntryEEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISsEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN3ept4core7desktop4File5GroupEEEED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED1Ev
+FN:106,_ZNSaISsED2Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN3ept4core7desktop4File5EntryEEEEC2Ev
+FN:106,_ZNSaISt4pairIKSsN3ept4core7desktop4File5EntryEEED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISsEEC2Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN3ept4core7desktop4File5GroupEEEEC2Ev
+FN:106,_ZNSaISt4pairIKSsN3ept4core7desktop4File5GroupEEED1Ev
+FN:100,_ZNSaISt13_Rb_tree_nodeISsEEC2ERKS1_
+FN:104,_ZNSaISsEC1ISt13_Rb_tree_nodeISsEEERKSaIT_E
+FN:98,_ZNSaISsEC2Ev
+FN:104,_ZNSaISt4pairIKSsN3ept4core7desktop4File5EntryEEEC1ISt13_Rb_tree_nodeIS6_EEERKSaIT_E
+FN:104,_ZNSaISt4pairIKSsN3ept4core7desktop4File5GroupEEEC1ISt13_Rb_tree_nodeIS6_EEERKSaIT_E
+FN:106,_ZNSaIN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EEEED2Ev
+FN:106,_ZNSaIN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE1EEEED2Ev
+FN:100,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN3ept4core7desktop4File5EntryEEEEC2ERKS9_
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+FN:98,_ZNSaIN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE0EEEEC2Ev
+FN:98,_ZNSaIN3ept4core6SourceINS0_7desktop6SourceENS2_5SetupENS2_12PropertyTypeEE12ComposedListILNS2_10PropertyIdE1EEEEC2Ev
+DA:98,89225
+DA:100,404651
+DA:101,404651
+DA:104,3521490
+DA:106,4015352
+DA:118,0
+DA:119,0
+LF:7
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:195,_ZNKSt9basic_iosIcSt11char_traitsIcEE4failEv
+FN:115,_ZNKSt9basic_iosIcSt11char_traitsIcEEcvPvEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:115,0
+DA:116,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:195,0
+DA:196,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:116,0
+BA:116,0
+BA:276,0
+BA:276,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:192,_ZNKSs4_Rep12_M_is_sharedEv
+FN:652,_ZNKSs8capacityEv
+FN:392,_ZNSs10_S_compareEjj
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2136,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S3_
+FN:773,_ZNSspLERKSs
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:835,_ZNSs6appendEPKc
+FN:782,_ZNSspLEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:870,_ZNSs9push_backEc
+FN:791,_ZNSspLEc
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:2201,_ZStneIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:1941,_ZNKSs7compareERKSs
+FN:2238,_ZStltIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:2312,_ZStleIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+FN:928,_ZNSs6assignEPKc
+FN:509,_ZNSsaSEPKc
+FN:2386,_ZSt4swapIcSt11char_traitsIcESaIcEEvRSbIT_T0_T1_ES7_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:192,0
+DA:193,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:509,0
+DA:510,0
+DA:606,0
+DA:607,0
+DA:652,0
+DA:653,0
+DA:773,0
+DA:774,0
+DA:782,0
+DA:783,0
+DA:791,0
+DA:793,0
+DA:794,0
+DA:835,0
+DA:838,0
+DA:870,0
+DA:872,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:877,0
+DA:928,0
+DA:931,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1923,0
+DA:1925,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2084,715348
+DA:2086,715348
+DA:2087,715348
+DA:2088,0
+DA:2121,5953
+DA:2123,5953
+DA:2124,5953
+DA:2125,0
+DA:2136,131
+DA:2140,131
+DA:2141,131
+DA:2142,0
+DA:2162,134641
+DA:2165,134641
+DA:2188,156334
+DA:2189,156334
+DA:2201,84867
+DA:2202,84867
+DA:2238,4884789
+DA:2239,4884789
+DA:2312,58
+DA:2313,58
+DA:2386,0
+DA:2387,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:308,0
+BA:308,0
+BA:341,0
+BA:341,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:1948,0
+BA:1948,0
+BA:2165,2
+BA:2165,2
+BA:2165,2
+BA:2165,2
+LF:118
+LH:19
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,0
+DA:246,0
+DA:257,114992
+DA:258,114992
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:121,_ZStanSt13_Ios_OpenmodeS_
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:159,_ZStanSt12_Ios_IostateS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:121,0
+DA:122,0
+DA:125,0
+DA:126,0
+DA:159,0
+DA:160,0
+DA:163,0
+DA:164,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algo.h
+FN:1555,_ZSt13__heap_selectIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEEEvT_S7_S7_
+FN:4622,_ZSt12partial_sortIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEEEvT_S7_S7_
+FN:89,_ZSt8__medianISsERKT_S2_S2_S2_
+FN:1714,_ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESsEvT_T0_
+FN:1793,_ZSt26__unguarded_insertion_sortIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEEEvT_S7_
+FN:1748,_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEEEvT_S7_
+FN:1825,_ZSt22__final_insertion_sortIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEEEvT_S7_
+FN:724,_ZSt14remove_copy_ifISt16istream_iteratorIN3ept4core7desktop8CategoryEcSt11char_traitsIcEiESt15insert_iteratorISt3setISsSt4lessISsESaISsEEESt9binder1stISt8equal_toISsEEET0_T_SK_SJ_T1_
+FN:1555,_ZSt13__heap_selectIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEESt6vectorISC_SaISC_EEEEEvT_SI_SI_
+FN:4622,_ZSt12partial_sortIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEESt6vectorISC_SaISC_EEEEEvT_SI_SI_
+FN:89,_ZSt8__medianIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEEERKT_SD_SD_SD_
+FN:1856,_ZSt21__unguarded_partitionIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEESt6vectorISC_SaISC_EEEESC_ET_SI_SI_T0_
+FN:1898,_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEESt6vectorISC_SaISC_EEEEiEvT_SI_T0_
+FN:1714,_ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEESt6vectorISC_SaISC_EEEESC_EvT_T0_
+FN:1793,_ZSt26__unguarded_insertion_sortIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEESt6vectorISC_SaISC_EEEEEvT_SI_
+FN:1748,_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEESt6vectorISC_SaISC_EEEEEvT_SI_
+FN:1825,_ZSt22__final_insertion_sortIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEESt6vectorISC_SaISC_EEEEEvT_SI_
+FN:1555,_ZSt13__heap_selectIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt6vectorISC_SaISC_EEEEEvT_SI_SI_
+FN:4622,_ZSt12partial_sortIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt6vectorISC_SaISC_EEEEEvT_SI_SI_
+FN:89,_ZSt8__medianIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEEERKT_SD_SD_SD_
+FN:1856,_ZSt21__unguarded_partitionIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt6vectorISC_SaISC_EEEESC_ET_SI_SI_T0_
+FN:1898,_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt6vectorISC_SaISC_EEEEiEvT_SI_T0_
+FN:1714,_ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt6vectorISC_SaISC_EEEESC_EvT_T0_
+FN:1793,_ZSt26__unguarded_insertion_sortIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt6vectorISC_SaISC_EEEEEvT_SI_
+FN:1748,_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt6vectorISC_SaISC_EEEEEvT_SI_
+FN:1825,_ZSt22__final_insertion_sortIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt6vectorISC_SaISC_EEEEEvT_SI_
+FN:1970,_ZSt4__lgi
+FN:4770,_ZSt4sortIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEESt6vectorISC_SaISC_EEEEEvT_SI_
+FN:4770,_ZSt4sortIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt6vectorISC_SaISC_EEEEEvT_SI_
+FN:1856,_ZSt21__unguarded_partitionIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESsET_S7_S7_T0_
+FN:1898,_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEEiEvT_S7_T0_
+FN:4770,_ZSt4sortIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEEEvT_S7_
+DA:89,0
+DA:93,0
+DA:94,0
+DA:95,0
+DA:96,0
+DA:97,0
+DA:99,0
+DA:100,0
+DA:101,0
+DA:102,0
+DA:103,0
+DA:105,0
+DA:724,16
+DA:734,80
+DA:735,64
+DA:737,48
+DA:738,48
+DA:740,16
+DA:1555,0
+DA:1557,0
+DA:1558,0
+DA:1559,0
+DA:1560,0
+DA:1561,0
+DA:1714,225
+DA:1716,225
+DA:1717,225
+DA:1718,745
+DA:1720,295
+DA:1721,295
+DA:1722,295
+DA:1724,225
+DA:1725,225
+DA:1748,77
+DA:1750,77
+DA:1751,0
+DA:1753,452
+DA:1756,375
+DA:1757,375
+DA:1759,150
+DA:1760,150
+DA:1763,225
+DA:1793,0
+DA:1798,0
+DA:1799,0
+DA:1800,0
+DA:1825,77
+DA:1827,77
+DA:1829,0
+DA:1830,0
+DA:1833,77
+DA:1834,77
+DA:1856,0
+DA:1858,0
+DA:1860,0
+DA:1861,0
+DA:1862,0
+DA:1863,0
+DA:1864,0
+DA:1865,0
+DA:1866,0
+DA:1867,0
+DA:1868,0
+DA:1898,77
+DA:1903,154
+DA:1905,0
+DA:1907,0
+DA:1908,0
+DA:1910,0
+DA:1919,0
+DA:1920,0
+DA:1921,0
+DA:1970,3942
+DA:1971,3942
+DA:4622,0
+DA:4634,0
+DA:4635,0
+DA:4636,0
+DA:4770,4
+DA:4781,4
+DA:4783,4
+DA:4785,4
+DA:4787,4
+BA:93,0
+BA:93,0
+BA:93,0
+BA:93,0
+BA:93,0
+BA:93,0
+BA:94,0
+BA:94,0
+BA:94,0
+BA:94,0
+BA:94,0
+BA:94,0
+BA:96,0
+BA:96,0
+BA:96,0
+BA:96,0
+BA:96,0
+BA:96,0
+BA:100,0
+BA:100,0
+BA:100,0
+BA:100,0
+BA:100,0
+BA:100,0
+BA:102,0
+BA:102,0
+BA:102,0
+BA:102,0
+BA:102,0
+BA:102,0
+BA:734,2
+BA:734,2
+BA:735,2
+BA:735,2
+BA:1558,0
+BA:1558,0
+BA:1558,0
+BA:1558,0
+BA:1558,0
+BA:1558,0
+BA:1559,0
+BA:1559,0
+BA:1559,0
+BA:1559,0
+BA:1559,0
+BA:1559,0
+BA:1718,2
+BA:1718,2
+BA:1718,0
+BA:1718,0
+BA:1718,2
+BA:1718,2
+BA:1750,1
+BA:1750,2
+BA:1750,1
+BA:1750,2
+BA:1750,1
+BA:1750,2
+BA:1753,2
+BA:1753,2
+BA:1753,2
+BA:1753,2
+BA:1753,2
+BA:1753,2
+BA:1757,2
+BA:1757,2
+BA:1757,2
+BA:1757,1
+BA:1757,2
+BA:1757,2
+BA:1798,0
+BA:1798,0
+BA:1798,0
+BA:1798,0
+BA:1798,0
+BA:1798,0
+BA:1827,1
+BA:1827,2
+BA:1827,1
+BA:1827,2
+BA:1827,1
+BA:1827,2
+BA:1860,0
+BA:1860,0
+BA:1860,0
+BA:1860,0
+BA:1860,0
+BA:1860,0
+BA:1863,0
+BA:1863,0
+BA:1863,0
+BA:1863,0
+BA:1863,0
+BA:1863,0
+BA:1865,0
+BA:1865,0
+BA:1865,0
+BA:1865,0
+BA:1865,0
+BA:1865,0
+BA:1903,1
+BA:1903,2
+BA:1903,1
+BA:1903,2
+BA:1903,1
+BA:1903,2
+BA:1905,0
+BA:1905,0
+BA:1905,0
+BA:1905,0
+BA:1905,0
+BA:1905,0
+BA:4781,2
+BA:4781,1
+BA:4781,2
+BA:4781,1
+BA:4781,2
+BA:4781,1
+LF:83
+LH:36
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:188,_ZSt3minIjERKT_S2_S2_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESaISC_EEELb0EE3__bESF_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorIN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEESaISC_EEELb0EE3__bESF_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt6vectorISC_SaISC_EEEELb0EE3__bESH_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEESt6vectorISC_SaISC_EEEELb0EE3__bESH_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt6vectorISC_SaISC_EEEELb1EE3__bESH_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEESt6vectorISC_SaISC_EEEELb1EE3__bESH_
+FN:286,_ZNSt12__miter_baseIPN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEELb0EE3__bESB_
+FN:286,_ZNSt12__miter_baseIPN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEELb0EE3__bESB_
+FN:268,_ZNSt12__niter_baseIPN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEELb0EE3__bESB_
+FN:268,_ZNSt12__niter_baseIPN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEELb0EE3__bESB_
+FN:286,_ZNSt12__miter_baseIN6wibble4list12ListIteratorINS1_3MapIN3ept4core6SourceINS5_7desktop6SourceENS7_5SetupENS7_12PropertyTypeEE12ComposedListILNS7_10PropertyIdE0EEESt25pointer_to_unary_functionISE_SsEEEEELb0EE3__bESI_
+FN:268,_ZNSt12__niter_baseIN6wibble4list12ListIteratorINS1_3MapIN3ept4core6SourceINS5_7desktop6SourceENS7_5SetupENS7_12PropertyTypeEE12ComposedListILNS7_10PropertyIdE0EEESt25pointer_to_unary_functionISE_SsEEEEELb0EE3__bESI_
+FN:286,_ZNSt12__miter_baseIN6wibble4list12ListIteratorIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEEEELb0EE3__bESE_
+FN:268,_ZNSt12__niter_baseIN6wibble4list12ListIteratorIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEEEELb0EE3__bESE_
+FN:286,_ZNSt12__miter_baseIN6wibble4list12ListIteratorINS1_8FilteredIN3ept4core6SourceINS5_7desktop6SourceENS7_5SetupENS7_12PropertyTypeEE12ComposedListILNS7_10PropertyIdE1EEENSB_10PropertifyILSD_1ENS8_9IsInGroupEEEEEEELb0EE3__bESJ_
+FN:268,_ZNSt12__niter_baseIN6wibble4list12ListIteratorINS1_8FilteredIN3ept4core6SourceINS5_7desktop6SourceENS7_5SetupENS7_12PropertyTypeEE12ComposedListILNS7_10PropertyIdE1EEENSB_10PropertifyILSD_1ENS8_9IsInGroupEEEEEEELb0EE3__bESJ_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEES6_ET1_T0_S8_S7_
+FN:624,_ZSt13copy_backwardIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEES6_ET0_T_S8_S7_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEESE_EET0_T_SG_SF_
+FN:579,_ZSt22__copy_move_backward_aILb0EPN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESB_ET1_T0_SD_SC_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESB_ET1_T0_SD_SC_
+FN:624,_ZSt13copy_backwardIPN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESB_ET0_T_SD_SC_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt6vectorISC_SaISC_EEEESH_ET1_T0_SJ_SI_
+FN:624,_ZSt13copy_backwardIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt6vectorISC_SaISC_EEEESH_ET0_T_SJ_SI_
+FN:104,_ZNSt11__iter_swapILb1EE9iter_swapIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS5_7desktop6SourceENS7_5SetupENS7_12PropertyTypeEE12ComposedListILNS7_10PropertyIdE0EEESt6vectorISE_SaISE_EEEESJ_EEvT_T0_
+FN:121,_ZSt9iter_swapIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt6vectorISC_SaISC_EEEESH_EvT_T0_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE1EEESE_EET0_T_SG_SF_
+FN:579,_ZSt22__copy_move_backward_aILb0EPN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESB_ET1_T0_SD_SC_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESB_ET1_T0_SD_SC_
+FN:624,_ZSt13copy_backwardIPN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESB_ET0_T_SD_SC_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEESt6vectorISC_SaISC_EEEESH_ET1_T0_SJ_SI_
+FN:624,_ZSt13copy_backwardIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEESt6vectorISC_SaISC_EEEESH_ET0_T_SJ_SI_
+FN:104,_ZNSt11__iter_swapILb1EE9iter_swapIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS5_7desktop6SourceENS7_5SetupENS7_12PropertyTypeEE12ComposedListILNS7_10PropertyIdE1EEESt6vectorISE_SaISE_EEEESJ_EEvT_T0_
+FN:121,_ZSt9iter_swapIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEESt6vectorISC_SaISC_EEEESH_EvT_T0_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt20forward_iterator_tagE8__copy_mIN6wibble4list12ListIteratorINS4_3MapIN3ept4core6SourceINS8_7desktop6SourceENSA_5SetupENSA_12PropertyTypeEE12ComposedListILNSA_10PropertyIdE0EEESt25pointer_to_unary_functionISH_SsEEEEESt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SS_SR_
+FN:385,_ZSt13__copy_move_aILb0EN6wibble4list12ListIteratorINS1_3MapIN3ept4core6SourceINS5_7desktop6SourceENS7_5SetupENS7_12PropertyTypeEE12ComposedListILNS7_10PropertyIdE0EEESt25pointer_to_unary_functionISE_SsEEEEESt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_SP_SO_
+FN:430,_ZSt14__copy_move_a2ILb0EN6wibble4list12ListIteratorINS1_3MapIN3ept4core6SourceINS5_7desktop6SourceENS7_5SetupENS7_12PropertyTypeEE12ComposedListILNS7_10PropertyIdE0EEESt25pointer_to_unary_functionISE_SsEEEEESt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_SP_SO_
+FN:456,_ZSt4copyIN6wibble4list12ListIteratorINS1_3MapIN3ept4core6SourceINS5_7desktop6SourceENS7_5SetupENS7_12PropertyTypeEE12ComposedListILNS7_10PropertyIdE0EEESt25pointer_to_unary_functionISE_SsEEEEESt20back_insert_iteratorISt6vectorISsSaISsEEEET0_T_SP_SO_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt20forward_iterator_tagE8__copy_mIN6wibble4list12ListIteratorINS4_8FilteredIN3ept4core6SourceINS8_7desktop6SourceENSA_5SetupENSA_12PropertyTypeEE12ComposedListILNSA_10PropertyIdE1EEENSE_10PropertifyILSG_1ENSB_9IsInGroupEEEEEEESt20back_insert_iteratorISt6vectorISH_SaISH_EEEEET0_T_ST_SS_
+FN:385,_ZSt13__copy_move_aILb0EN6wibble4list12ListIteratorINS1_8FilteredIN3ept4core6SourceINS5_7desktop6SourceENS7_5SetupENS7_12PropertyTypeEE12ComposedListILNS7_10PropertyIdE1EEENSB_10PropertifyILSD_1ENS8_9IsInGroupEEEEEEESt20back_insert_iteratorISt6vectorISE_SaISE_EEEET1_T0_SQ_SP_
+FN:430,_ZSt14__copy_move_a2ILb0EN6wibble4list12ListIteratorINS1_8FilteredIN3ept4core6SourceINS5_7desktop6SourceENS7_5SetupENS7_12PropertyTypeEE12ComposedListILNS7_10PropertyIdE1EEENSB_10PropertifyILSD_1ENS8_9IsInGroupEEEEEEESt20back_insert_iteratorISt6vectorISE_SaISE_EEEET1_T0_SQ_SP_
+FN:456,_ZSt4copyIN6wibble4list12ListIteratorINS1_8FilteredIN3ept4core6SourceINS5_7desktop6SourceENS7_5SetupENS7_12PropertyTypeEE12ComposedListILNS7_10PropertyIdE1EEENSB_10PropertifyILSD_1ENS8_9IsInGroupEEEEEEESt20back_insert_iteratorISt6vectorISE_SaISE_EEEET0_T_SQ_SP_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt20forward_iterator_tagE8__copy_mIN6wibble4list12ListIteratorIN3ept4core6SourceINS7_7desktop6SourceENS9_5SetupENS9_12PropertyTypeEE12ComposedListILNS9_10PropertyIdE0EEEEESt20back_insert_iteratorISt6vectorISG_SaISG_EEEEET0_T_SO_SN_
+FN:385,_ZSt13__copy_move_aILb0EN6wibble4list12ListIteratorIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEEEESt20back_insert_iteratorISt6vectorISD_SaISD_EEEET1_T0_SL_SK_
+FN:430,_ZSt14__copy_move_a2ILb0EN6wibble4list12ListIteratorIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEEEESt20back_insert_iteratorISt6vectorISD_SaISD_EEEET1_T0_SL_SK_
+FN:456,_ZSt4copyIN6wibble4list12ListIteratorIN3ept4core6SourceINS4_7desktop6SourceENS6_5SetupENS6_12PropertyTypeEE12ComposedListILNS6_10PropertyIdE0EEEEESt20back_insert_iteratorISt6vectorISD_SaISD_EEEET0_T_SL_SK_
+FN:104,_ZNSt11__iter_swapILb1EE9iter_swapIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEES8_EEvT_T0_
+FN:121,_ZSt9iter_swapIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEES6_EvT_T0_
+DA:104,0
+DA:106,0
+DA:107,0
+DA:121,0
+DA:142,0
+DA:146,0
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:210,20513
+DA:215,20513
+DA:216,4679
+DA:217,15834
+DA:268,15
+DA:269,15
+DA:276,460
+DA:277,460
+DA:286,318
+DA:287,318
+DA:309,4
+DA:311,36
+DA:312,14
+DA:313,4
+DA:385,4
+DA:393,4
+DA:396,4
+DA:430,4
+DA:435,4
+DA:456,4
+DA:466,4
+DA:539,150
+DA:542,524
+DA:543,374
+DA:544,150
+DA:579,150
+DA:587,150
+DA:592,150
+DA:597,150
+DA:602,150
+DA:624,150
+DA:636,150
+BA:193,0
+BA:193,0
+BA:215,2
+BA:215,2
+BA:311,2
+BA:311,2
+BA:311,2
+BA:311,2
+BA:311,2
+BA:311,2
+BA:542,2
+BA:542,2
+BA:542,2
+BA:542,2
+BA:542,2
+BA:542,2
+LF:42
+LH:32
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+FN:87,_ZSt8_DestroyIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEEEvPT_
+FN:97,_ZSt8_DestroyIPN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEEEvT_SC_
+FN:126,_ZSt8_DestroyIPN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESA_EvT_SC_RSaIT0_E
+FN:87,_ZSt8_DestroyIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEEEvPT_
+FN:97,_ZSt8_DestroyIPN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEEEvT_SC_
+FN:126,_ZSt8_DestroyIPN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESA_EvT_SC_RSaIT0_E
+DA:87,23292
+DA:88,23292
+DA:97,8929
+DA:101,32221
+DA:103,23292
+DA:104,8929
+DA:126,8929
+DA:128,8929
+DA:129,8929
+BA:101,2
+BA:101,2
+BA:101,2
+BA:101,2
+BA:101,2
+BA:101,2
+LF:9
+LH:9
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:104,_ZNSt14unary_functionISsbEC2Ev
+FN:104,_ZNSt14unary_functionIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESsEC2Ev
+FN:420,_ZNSt25pointer_to_unary_functionIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESsEC1EPFSsSA_E
+FN:431,_ZSt7ptr_funIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESsESt25pointer_to_unary_functionIT_T0_EPFSD_SC_E
+FN:482,_ZNKSt10_Select1stISt4pairIKSsN3ept4core7desktop4File5EntryEEEclERKS7_
+FN:482,_ZNKSt10_Select1stISt4pairIKSsN3ept4core7desktop4File5GroupEEEclERKS7_
+FN:469,_ZNKSt9_IdentityISsEclERKSs
+FN:424,_ZNKSt25pointer_to_unary_functionIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESsEclESA_
+FN:202,_ZNKSt8equal_toISsEclERKSsS2_
+FN:229,_ZNKSt4lessISsEclERKSsS2_
+DA:104,17
+DA:202,64
+DA:203,64
+DA:229,4616574
+DA:230,4616574
+DA:420,1
+DA:421,1
+DA:424,4
+DA:425,4
+DA:431,1
+DA:432,1
+DA:469,3834775
+DA:470,3834775
+DA:482,13436
+DA:483,13436
+LF:15
+LH:15
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_heap.h
+FN:131,_ZSt11__push_heapIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEEiSsEvT_T0_S8_T1_
+FN:225,_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEEiSsEvT_T0_S8_T1_
+FN:371,_ZSt9make_heapIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEEEvT_S7_
+FN:251,_ZSt10__pop_heapIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEEEvT_S7_S7_
+FN:276,_ZSt8pop_heapIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEEEvT_S7_
+FN:450,_ZSt9sort_heapIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEEEvT_S7_
+FN:131,_ZSt11__push_heapIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEESt6vectorISC_SaISC_EEEEiSC_EvT_T0_SJ_T1_
+FN:225,_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEESt6vectorISC_SaISC_EEEEiSC_EvT_T0_SJ_T1_
+FN:371,_ZSt9make_heapIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEESt6vectorISC_SaISC_EEEEEvT_SI_
+FN:251,_ZSt10__pop_heapIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEESt6vectorISC_SaISC_EEEEEvT_SI_SI_
+FN:276,_ZSt8pop_heapIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEESt6vectorISC_SaISC_EEEEEvT_SI_
+FN:450,_ZSt9sort_heapIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEESt6vectorISC_SaISC_EEEEEvT_SI_
+FN:131,_ZSt11__push_heapIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt6vectorISC_SaISC_EEEEiSC_EvT_T0_SJ_T1_
+FN:225,_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt6vectorISC_SaISC_EEEEiSC_EvT_T0_SJ_T1_
+FN:371,_ZSt9make_heapIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt6vectorISC_SaISC_EEEEEvT_SI_
+FN:251,_ZSt10__pop_heapIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt6vectorISC_SaISC_EEEEEvT_SI_SI_
+FN:276,_ZSt8pop_heapIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt6vectorISC_SaISC_EEEEEvT_SI_
+FN:450,_ZSt9sort_heapIN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESt6vectorISC_SaISC_EEEEEvT_SI_
+DA:131,0
+DA:133,0
+DA:134,0
+DA:136,0
+DA:137,0
+DA:138,0
+DA:140,0
+DA:141,0
+DA:225,0
+DA:227,0
+DA:228,0
+DA:229,0
+DA:231,0
+DA:232,0
+DA:233,0
+DA:234,0
+DA:235,0
+DA:237,0
+DA:239,0
+DA:240,0
+DA:242,0
+DA:244,0
+DA:246,0
+DA:251,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:263,0
+DA:276,0
+DA:288,0
+DA:289,0
+DA:371,0
+DA:384,0
+DA:385,0
+DA:387,0
+DA:388,0
+DA:389,0
+DA:391,0
+DA:392,0
+DA:393,0
+DA:394,0
+DA:395,0
+DA:450,0
+DA:460,0
+DA:461,0
+DA:462,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:229,0
+BA:229,0
+BA:229,0
+BA:229,0
+BA:229,0
+BA:229,0
+BA:232,0
+BA:232,0
+BA:232,0
+BA:232,0
+BA:232,0
+BA:232,0
+BA:237,0
+BA:237,0
+BA:237,0
+BA:237,0
+BA:237,0
+BA:237,0
+BA:237,0
+BA:237,0
+BA:237,0
+BA:237,0
+BA:237,0
+BA:237,0
+BA:384,0
+BA:384,0
+BA:384,0
+BA:384,0
+BA:384,0
+BA:384,0
+BA:389,0
+BA:389,0
+BA:389,0
+BA:389,0
+BA:389,0
+BA:389,0
+BA:393,0
+BA:393,0
+BA:393,0
+BA:393,0
+BA:393,0
+BA:393,0
+BA:460,0
+BA:460,0
+BA:460,0
+BA:460,0
+BA:460,0
+BA:460,0
+LF:46
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:572,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEC1ERS4_St23_Rb_tree_const_iteratorISsE
+FN:645,_ZSt8inserterISt3setISsSt4lessISsESaISsEESt23_Rb_tree_const_iteratorISsEESt15insert_iteratorIT_ERS8_T0_
+FN:618,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEdeEv
+FN:623,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEppEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:743,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEmiERKi
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorIN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEESaISB_EEEC1ERSD_
+FN:456,_ZSt13back_inserterISt6vectorIN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEESaISB_EEESt20back_insert_iteratorIT_ERSF_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEESt6vectorISB_SaISB_EEEC1ERKSC_
+FN:398,_ZNSt20back_insert_iteratorISt6vectorIN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEESaISB_EEEC1ERSD_
+FN:456,_ZSt13back_inserterISt6vectorIN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEESaISB_EEESt20back_insert_iteratorIT_ERSF_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEESt6vectorISB_SaISB_EEEC1ERKSC_
+FN:781,_ZN9__gnu_cxxneIPSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESA_
+FN:846,_ZN9__gnu_cxxmiIPSsSt6vectorISsSaISsEEEENS_17__normal_iteratorIT_T0_E15difference_typeERKS8_SB_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEESt6vectorISB_SaISB_EEE4baseEv
+FN:781,_ZN9__gnu_cxxneIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEESt6vectorISB_SaISB_EEEEbRKNS_17__normal_iteratorIT_T0_EESL_
+FN:846,_ZN9__gnu_cxxmiIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEESt6vectorISB_SaISB_EEEENS_17__normal_iteratorIT_T0_E15difference_typeERKSJ_SM_
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEESt6vectorISB_SaISB_EEEdeEv
+FN:735,_ZNK9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEESt6vectorISB_SaISB_EEEplERKi
+FN:743,_ZNK9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEESt6vectorISB_SaISB_EEEmiERKi
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEESt6vectorISB_SaISB_EEE4baseEv
+FN:781,_ZN9__gnu_cxxneIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEESt6vectorISB_SaISB_EEEEbRKNS_17__normal_iteratorIT_T0_EESL_
+FN:846,_ZN9__gnu_cxxmiIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEESt6vectorISB_SaISB_EEEENS_17__normal_iteratorIT_T0_E15difference_typeERKSJ_SM_
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEESt6vectorISB_SaISB_EEEdeEv
+FN:735,_ZNK9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEESt6vectorISB_SaISB_EEEplERKi
+FN:743,_ZNK9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEESt6vectorISB_SaISB_EEEmiERKi
+FN:735,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEplERKi
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEESt6vectorISB_SaISB_EEEppEv
+FN:715,_ZN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEESt6vectorISB_SaISB_EEEmmEv
+FN:794,_ZN9__gnu_cxxltIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEESt6vectorISB_SaISB_EEEEbRKNS_17__normal_iteratorIT_T0_EESL_
+FN:769,_ZN9__gnu_cxxeqIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEESt6vectorISB_SaISB_EEEEbRKNS_17__normal_iteratorIT_T0_EESL_
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEESt6vectorISB_SaISB_EEEppEv
+FN:715,_ZN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEESt6vectorISB_SaISB_EEEmmEv
+FN:794,_ZN9__gnu_cxxltIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEESt6vectorISB_SaISB_EEEEbRKNS_17__normal_iteratorIT_T0_EESL_
+FN:769,_ZN9__gnu_cxxeqIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEESt6vectorISB_SaISB_EEEEbRKNS_17__normal_iteratorIT_T0_EESL_
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEppEv
+FN:715,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEmmEv
+FN:794,_ZN9__gnu_cxxltIPSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESA_
+FN:769,_ZN9__gnu_cxxeqIPSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESA_
+FN:434,_ZNSt20back_insert_iteratorISt6vectorIN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEESaISB_EEEppEv
+FN:429,_ZNSt20back_insert_iteratorISt6vectorIN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEESaISB_EEEdeEv
+FN:722,_ZN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEESt6vectorISB_SaISB_EEEmmEi
+FN:434,_ZNSt20back_insert_iteratorISt6vectorIN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEESaISB_EEEppEv
+FN:429,_ZNSt20back_insert_iteratorISt6vectorIN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEESaISB_EEEdeEv
+FN:722,_ZN9__gnu_cxx17__normal_iteratorIPN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEESt6vectorISB_SaISB_EEEmmEi
+FN:722,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEmmEi
+FN:599,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEaSERKSs
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+FN:412,_ZNSt20back_insert_iteratorISt6vectorIN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEESaISB_EEEaSERKSB_
+FN:412,_ZNSt20back_insert_iteratorISt6vectorIN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEESaISB_EEEaSERKSB_
+DA:398,12
+DA:412,2250
+DA:414,2250
+DA:415,2250
+DA:429,2250
+DA:430,2250
+DA:434,2240
+DA:435,2240
+DA:456,12
+DA:457,12
+DA:572,21174
+DA:573,21174
+DA:599,107576
+DA:601,107576
+DA:602,107576
+DA:603,107576
+DA:618,107576
+DA:619,107576
+DA:623,107576
+DA:624,107576
+DA:645,21174
+DA:648,21174
+DA:683,7086
+DA:695,2248
+DA:696,2248
+DA:703,387
+DA:705,387
+DA:706,387
+DA:715,521
+DA:717,521
+DA:718,521
+DA:722,0
+DA:723,0
+DA:735,227
+DA:736,227
+DA:743,0
+DA:744,0
+DA:747,15904
+DA:748,15904
+DA:769,77
+DA:770,77
+DA:781,472
+DA:782,472
+DA:794,0
+DA:795,0
+DA:846,158
+DA:847,158
+LF:47
+LH:41
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+FN:135,_ZSt9__advanceISt23_Rb_tree_const_iteratorISsEiEvRT_T0_St26bidirectional_iterator_tag
+FN:173,_ZSt7advanceISt23_Rb_tree_const_iteratorISsEiEvRT_T0_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+DA:135,48
+DA:140,48
+DA:141,144
+DA:142,48
+DA:144,0
+DA:145,0
+DA:146,48
+DA:173,48
+DA:176,48
+DA:177,48
+DA:178,48
+BA:140,2
+BA:140,1
+BA:141,2
+BA:141,2
+BA:144,0
+BA:144,0
+LF:15
+LH:9
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt18input_iterator_tagN3ept4core7desktop8CategoryEiPKS4_RS5_EC2Ev
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryISt23_Rb_tree_const_iteratorISsEENSt15iterator_traitsIT_E17iterator_categoryERKS3_
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,21688
+DA:166,48
+DA:167,48
+LF:3
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_map.h
+FN:590,_ZNKSt3mapISsN3ept4core7desktop4File5EntryESt4lessISsESaISt4pairIKSsS4_EEE8key_compEv
+FN:590,_ZNKSt3mapISsN3ept4core7desktop4File5GroupESt4lessISsESaISt4pairIKSsS4_EEE8key_compEv
+FN:293,_ZNSt3mapISsN3ept4core7desktop4File5EntryESt4lessISsESaISt4pairIKSsS4_EEE3endEv
+FN:293,_ZNSt3mapISsN3ept4core7desktop4File5GroupESt4lessISsESaISt4pairIKSsS4_EEE3endEv
+FN:155,_ZNSt3mapISsN3ept4core7desktop4File5EntryESt4lessISsESaISt4pairIKSsS4_EEEC1Ev
+FN:155,_ZNSt3mapISsN3ept4core7desktop4File5GroupESt4lessISsESaISt4pairIKSsS4_EEEC1Ev
+FN:92,_ZNSt3mapISsN3ept4core7desktop4File5EntryESt4lessISsESaISt4pairIKSsS4_EEED1Ev
+FN:92,_ZNSt3mapISsN3ept4core7desktop4File5GroupESt4lessISsESaISt4pairIKSsS4_EEED1Ev
+FN:175,_ZNSt3mapISsN3ept4core7desktop4File5EntryESt4lessISsESaISt4pairIKSsS4_EEEC1ERKSB_
+FN:239,_ZNSt3mapISsN3ept4core7desktop4File5EntryESt4lessISsESaISt4pairIKSsS4_EEEaSERKSB_
+FN:656,_ZNSt3mapISsN3ept4core7desktop4File5EntryESt4lessISsESaISt4pairIKSsS4_EEE11lower_boundERS8_
+FN:656,_ZNSt3mapISsN3ept4core7desktop4File5GroupESt4lessISsESaISt4pairIKSsS4_EEE11lower_boundERS8_
+FN:495,_ZNSt3mapISsN3ept4core7desktop4File5EntryESt4lessISsESaISt4pairIKSsS4_EEE6insertESt17_Rb_tree_iteratorIS9_ERKS9_
+FN:411,_ZNSt3mapISsN3ept4core7desktop4File5EntryESt4lessISsESaISt4pairIKSsS4_EEEixERS8_
+FN:495,_ZNSt3mapISsN3ept4core7desktop4File5GroupESt4lessISsESaISt4pairIKSsS4_EEE6insertESt17_Rb_tree_iteratorIS9_ERKS9_
+FN:411,_ZNSt3mapISsN3ept4core7desktop4File5GroupESt4lessISsESaISt4pairIKSsS4_EEEixERS8_
+DA:92,80
+DA:155,48
+DA:156,48
+DA:175,32
+DA:176,32
+DA:239,16
+DA:241,16
+DA:242,16
+DA:293,1340
+DA:294,1340
+DA:411,1340
+DA:416,1340
+DA:418,1340
+DA:419,1256
+DA:420,1340
+DA:495,1256
+DA:496,1256
+DA:590,1216
+DA:591,1216
+DA:656,1340
+DA:657,1340
+BA:418,2
+BA:418,2
+BA:418,2
+BA:418,2
+BA:418,2
+BA:418,2
+BA:418,2
+BA:418,2
+BA:418,1
+BA:418,2
+BA:418,2
+BA:418,2
+LF:21
+LH:21
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_move.h
+FN:80,_ZSt4swapIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEEEvRT_SC_
+FN:80,_ZSt4swapIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEEEvRT_SC_
+DA:80,0
+DA:85,0
+DA:86,0
+DA:87,0
+DA:88,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKSsN3ept4core7desktop4File5EntryEEEbEC1ERKS8_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKSsN3ept4core7desktop4File5GroupEEEbEC1ERKS8_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorISsEbEC1ERKS1_RKb
+FN:73,_ZNSt4pairIKSsN3ept4core7desktop4File5EntryEED1Ev
+FN:88,_ZNSt4pairIKSsN3ept4core7desktop4File5EntryEEC1ERS0_RKS5_
+FN:73,_ZNSt4pairIKSsN3ept4core7desktop4File5EntryEEC1ERKS6_
+FN:73,_ZNSt4pairIKSsN3ept4core7desktop4File5GroupEED1Ev
+FN:88,_ZNSt4pairIKSsN3ept4core7desktop4File5GroupEEC1ERS0_RKS5_
+FN:73,_ZNSt4pairIKSsN3ept4core7desktop4File5GroupEEC1ERKS6_
+DA:73,6208
+DA:88,447986
+DA:89,447986
+LF:3
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:261,_ZNKSt3setISsSt4lessISsESaISsEE5beginEv
+FN:270,_ZNKSt3setISsSt4lessISsESaISsEE3endEv
+FN:331,_ZNKSt3setISsSt4lessISsESaISsEE5emptyEv
+FN:141,_ZNSt3setISsSt4lessISsESaISsEEC1Ev
+FN:93,_ZNSt3setISsSt4lessISsESaISsEED1Ev
+FN:471,_ZNSt3setISsSt4lessISsESaISsEE5clearEv
+FN:193,_ZNSt3setISsSt4lessISsESaISsEEC1ERKS3_
+FN:216,_ZNSt3setISsSt4lessISsESaISsEEaSERKS3_
+FN:405,_ZNSt3setISsSt4lessISsESaISsEE6insertESt23_Rb_tree_const_iteratorISsERKSs
+DA:93,491868
+DA:141,87259
+DA:142,87259
+DA:193,404619
+DA:194,404619
+DA:216,65
+DA:218,65
+DA:219,65
+DA:261,298710
+DA:262,298710
+DA:270,637779
+DA:271,637779
+DA:331,232623
+DA:332,232623
+DA:405,107576
+DA:406,107576
+DA:471,84600
+DA:472,84600
+LF:18
+LH:18
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:103,_ZNSt18_Rb_tree_node_base10_S_minimumEPS_
+FN:117,_ZNSt18_Rb_tree_node_base10_S_maximumEPS_
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISsEneERKS0_
+FN:172,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsN3ept4core7desktop4File5EntryEEEdeEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsN3ept4core7desktop4File5EntryEEEeqERKS8_
+FN:172,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsN3ept4core7desktop4File5GroupEEEdeEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsN3ept4core7desktop4File5GroupEEEeqERKS8_
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE8_M_beginEv
+FN:592,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE8key_compEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept4core7desktop4File5EntryEEEC1ERKSt17_Rb_tree_iteratorIS7_E
+FN:592,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE8key_compEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept4core7desktop4File5GroupEEEC1ERKSt17_Rb_tree_iteratorIS7_E
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE13_Rb_tree_implISB_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:432,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE7_M_rootEv
+FN:456,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE8_M_beginEv
+FN:463,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE6_M_endEv
+FN:428,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE10_S_minimumEPSt18_Rb_tree_node_base
+FN:436,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE11_M_leftmostEv
+FN:511,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE10_S_maximumEPSt18_Rb_tree_node_base
+FN:444,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE12_M_rightmostEv
+FN:398,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPSt18_Rb_tree_node_base
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE13_Rb_tree_implISB_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:463,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_M_endEv
+FN:436,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_leftmostEv
+FN:428,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_rootEv
+FN:444,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE12_M_rightmostEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorISsEC1EPKSt13_Rb_tree_nodeISsE
+FN:603,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:614,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE3endEv
+FN:347,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE21_M_get_Node_allocatorEv
+FN:432,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_rootEv
+FN:456,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:503,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_S_minimumEPSt18_Rb_tree_node_base
+FN:511,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_S_maximumEPSt18_Rb_tree_node_base
+FN:247,_ZNKSt23_Rb_tree_const_iteratorISsEdeEv
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKSsN3ept4core7desktop4File5EntryEEEC1EPSt13_Rb_tree_nodeIS7_E
+FN:610,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE3endEv
+FN:641,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE4sizeEv
+FN:491,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE8_S_rightEPKSt18_Rb_tree_node_base
+FN:463,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKSsN3ept4core7desktop4File5GroupEEEC1EPSt13_Rb_tree_nodeIS7_E
+FN:610,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE3endEv
+FN:444,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE12_M_rightmostEv
+FN:641,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE4sizeEv
+FN:436,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE11_M_leftmostEv
+FN:491,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE8_S_rightEPKSt18_Rb_tree_node_base
+FN:415,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE13_Rb_tree_implISB_Lb0EE13_M_initializeEv
+FN:483,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE7_S_leftEPKSt18_Rb_tree_node_base
+FN:415,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:415,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE13_Rb_tree_implISB_Lb0EE13_M_initializeEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorISsEC1ERKSt17_Rb_tree_iteratorISsE
+FN:491,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPKSt18_Rb_tree_node_base
+FN:495,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt18_Rb_tree_node_base
+FN:637,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5emptyEv
+FN:495,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:596,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE5beginEv
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE21_M_get_Node_allocatorEv
+FN:495,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:596,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE5beginEv
+FN:403,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE13_Rb_tree_implISB_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EEC1Ev
+FN:403,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEC1Ev
+FN:403,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE13_Rb_tree_implISB_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EEC1Ev
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE21_M_get_Node_allocatorEv
+FN:641,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE4sizeEv
+FN:168,_ZNSt17_Rb_tree_iteratorISsEC1EPSt13_Rb_tree_nodeISsE
+FN:408,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EEC1ERKS3_RKSaISt13_Rb_tree_nodeISsEE
+FN:471,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt13_Rb_tree_nodeISsE
+FN:475,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt13_Rb_tree_nodeISsE
+FN:351,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13get_allocatorEv
+FN:471,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE8_S_valueEPKSt13_Rb_tree_nodeIS7_E
+FN:475,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE6_S_keyEPKSt13_Rb_tree_nodeIS7_E
+FN:471,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE8_S_valueEPKSt13_Rb_tree_nodeIS7_E
+FN:475,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE6_S_keyEPKSt13_Rb_tree_nodeIS7_E
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE13get_allocatorEv
+FN:596,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISsEeqERKS0_
+FN:408,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE13_Rb_tree_implISB_Lb0EEC1ERKSB_RKSaISt13_Rb_tree_nodeIS7_EE
+FN:360,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_put_nodeEPSt13_Rb_tree_nodeISsE
+FN:388,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE15_M_destroy_nodeEPSt13_Rb_tree_nodeISsE
+FN:936,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_eraseEPSt13_Rb_tree_nodeISsE
+FN:584,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEED1Ev
+FN:695,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5clearEv
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS7_E
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS7_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE8_M_eraseEPSt13_Rb_tree_nodeIS7_E
+FN:695,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE5clearEv
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EED1Ev
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS7_E
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS7_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE8_M_eraseEPSt13_Rb_tree_nodeIS7_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EED1Ev
+FN:356,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE14_M_create_nodeERKSs
+FN:378,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_M_clone_nodeEPKSt13_Rb_tree_nodeISsE
+FN:900,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_copyEPKSt13_Rb_tree_nodeISsEPS7_
+FN:568,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEC1ERKS5_
+FN:824,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEaSERKS5_
+FN:356,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE14_M_create_nodeERKS7_
+FN:378,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE13_M_clone_nodeEPKSt13_Rb_tree_nodeIS7_E
+FN:900,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE7_M_copyEPKSt13_Rb_tree_nodeIS7_EPSF_
+FN:568,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EEC1ERKSD_
+FN:824,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EEaSERKSD_
+FN:356,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE14_M_create_nodeERKS7_
+FN:270,_ZNSt23_Rb_tree_const_iteratorISsEmmEv
+FN:270,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept4core7desktop4File5EntryEEEmmEv
+FN:270,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept4core7desktop4File5GroupEEEmmEv
+FN:255,_ZNSt23_Rb_tree_const_iteratorISsEppEv
+FN:255,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept4core7desktop4File5EntryEEEppEv
+FN:255,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept4core7desktop4File5GroupEEEppEv
+FN:954,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE14_M_lower_boundEPSt13_Rb_tree_nodeIS7_ESG_RS1_
+FN:715,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE11lower_boundERS1_
+FN:954,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE14_M_lower_boundEPSt13_Rb_tree_nodeIS7_ESG_RS1_
+FN:715,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE11lower_boundERS1_
+FN:846,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE10_M_insert_EPKSt18_Rb_tree_node_baseSG_RKS7_
+FN:846,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE10_M_insert_EPKSt18_Rb_tree_node_baseSG_RKS7_
+FN:846,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_M_insert_EPKSt18_Rb_tree_node_baseS8_RKSs
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKSsN3ept4core7desktop4File5EntryEEEmmEv
+FN:1133,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE16_M_insert_uniqueERKS7_
+FN:1178,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5EntryEESt10_Select1stIS7_ESt4lessISsESaIS7_EE17_M_insert_unique_ESt23_Rb_tree_const_iteratorIS7_ERKS7_
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKSsN3ept4core7desktop4File5GroupEEEmmEv
+FN:1133,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE16_M_insert_uniqueERKS7_
+FN:1178,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept4core7desktop4File5GroupEESt10_Select1stIS7_ESt4lessISsESaIS7_EE17_M_insert_unique_ESt23_Rb_tree_const_iteratorIS7_ERKS7_
+FN:195,_ZNSt17_Rb_tree_iteratorISsEmmEv
+FN:1133,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE16_M_insert_uniqueERKSs
+FN:1178,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE17_M_insert_unique_ESt23_Rb_tree_const_iteratorISsERKSs
+DA:103,880626
+DA:105,880626
+DA:106,880626
+DA:117,880626
+DA:119,880626
+DA:120,880626
+DA:168,1072488
+DA:169,1072488
+DA:172,2556
+DA:173,2556
+DA:195,48057
+DA:197,48057
+DA:198,48057
+DA:210,197540
+DA:211,197540
+DA:240,936496
+DA:241,936496
+DA:243,532589
+DA:244,532589
+DA:247,487061
+DA:248,487061
+DA:255,680151
+DA:257,680151
+DA:258,680151
+DA:270,1966
+DA:272,1966
+DA:273,1966
+DA:289,870409
+DA:290,870409
+DA:347,3926141
+DA:348,3926141
+DA:351,3521490
+DA:352,3521490
+DA:356,1760760
+DA:357,1760760
+DA:360,1760730
+DA:361,1760730
+DA:364,1760760
+DA:366,1760760
+DA:368,1760760
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,1760760
+DA:378,1333896
+DA:380,1333896
+DA:381,1333896
+DA:382,1333896
+DA:383,1333896
+DA:384,1333896
+DA:388,1760730
+DA:390,1760730
+DA:391,1760730
+DA:392,1760730
+DA:398,491948
+DA:403,87307
+DA:405,87307
+DA:406,87307
+DA:408,404651
+DA:410,404651
+DA:411,404651
+DA:415,491958
+DA:417,491958
+DA:418,491958
+DA:419,491958
+DA:420,491958
+DA:421,491958
+DA:428,1290347
+DA:429,1290347
+DA:432,404732
+DA:433,404732
+DA:436,488705
+DA:437,488705
+DA:444,656880
+DA:445,656880
+DA:452,1024711
+DA:453,1024711
+DA:456,401890
+DA:459,401890
+DA:463,1554440
+DA:464,1554440
+DA:471,1259753
+DA:472,1259753
+DA:475,1259753
+DA:476,1259753
+DA:479,1883703
+DA:480,1883703
+DA:483,1333901
+DA:484,1333901
+DA:487,2897501
+DA:488,2897501
+DA:491,520925
+DA:492,520925
+DA:495,668162
+DA:496,668162
+DA:499,668162
+DA:500,668162
+DA:503,401888
+DA:504,401888
+DA:511,401888
+DA:512,401888
+DA:562,87307
+DA:568,404651
+DA:569,404651
+DA:571,404651
+DA:573,401844
+DA:574,401844
+DA:575,401844
+DA:576,401844
+DA:578,404651
+DA:584,491948
+DA:585,491948
+DA:592,1216
+DA:593,1216
+DA:596,196190
+DA:599,196190
+DA:603,298712
+DA:606,298712
+DA:610,1340
+DA:611,1340
+DA:614,637782
+DA:617,637782
+DA:637,232623
+DA:638,232623
+DA:641,148201
+DA:642,148201
+DA:695,84683
+DA:697,84683
+DA:698,84683
+DA:699,84683
+DA:700,84683
+DA:701,84683
+DA:702,84683
+DA:715,1340
+DA:716,1340
+DA:824,81
+DA:826,81
+DA:829,81
+DA:830,81
+DA:831,81
+DA:833,44
+DA:834,44
+DA:835,44
+DA:836,44
+DA:839,81
+DA:846,426864
+DA:850,426864
+DA:852,426864
+DA:854,426864
+DA:857,426864
+DA:858,426864
+DA:900,921703
+DA:903,921703
+DA:904,921703
+DA:908,921703
+DA:909,470883
+DA:910,921703
+DA:911,921703
+DA:913,2255599
+DA:915,412193
+DA:916,412193
+DA:917,412193
+DA:918,412193
+DA:919,48932
+DA:920,412193
+DA:921,412193
+DA:924,0
+DA:926,0
+DA:927,0
+DA:929,921703
+DA:936,2337388
+DA:939,6435506
+DA:941,1760730
+DA:942,1760730
+DA:943,1760730
+DA:944,1760730
+DA:946,2337388
+DA:954,1340
+DA:956,10244
+DA:957,7564
+DA:958,3596
+DA:960,3968
+DA:961,1340
+DA:1133,446730
+DA:1135,446730
+DA:1136,446730
+DA:1137,446730
+DA:1138,2145603
+DA:1140,1252143
+DA:1141,1252143
+DA:1142,1252143
+DA:1144,446730
+DA:1145,446730
+DA:1147,196187
+DA:1148,148130
+DA:1150,48057
+DA:1152,298600
+DA:1153,192874
+DA:1154,105726
+DA:1178,108840
+DA:1181,108840
+DA:1183,105917
+DA:1186,84685
+DA:1188,21232
+DA:1190,2923
+DA:1194,2022
+DA:1195,2022
+DA:1196,56
+DA:1197,1966
+DA:1200,1099
+DA:1201,561
+DA:1204,538
+DA:1207,867
+DA:1209,901
+DA:1213,901
+DA:1214,901
+DA:1215,12
+DA:1216,889
+DA:1219,8
+DA:1220,4
+DA:1222,4
+DA:1225,881
+DA:1230,0
+BA:105,2
+BA:105,2
+BA:119,2
+BA:119,2
+BA:571,2
+BA:571,2
+BA:571,1
+BA:571,2
+BA:826,2
+BA:826,1
+BA:826,2
+BA:826,1
+BA:831,2
+BA:831,2
+BA:831,2
+BA:831,1
+BA:850,2
+BA:850,2
+BA:850,2
+BA:850,2
+BA:850,1
+BA:850,2
+BA:850,2
+BA:850,1
+BA:850,1
+BA:850,2
+BA:850,0
+BA:850,0
+BA:850,2
+BA:850,2
+BA:850,2
+BA:850,2
+BA:850,2
+BA:850,2
+BA:908,2
+BA:908,2
+BA:908,2
+BA:908,2
+BA:913,2
+BA:913,2
+BA:913,2
+BA:913,2
+BA:918,2
+BA:918,2
+BA:918,2
+BA:918,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:939,2
+BA:956,2
+BA:956,2
+BA:956,2
+BA:956,2
+BA:957,2
+BA:957,2
+BA:957,2
+BA:957,1
+BA:1138,1
+BA:1138,2
+BA:1138,1
+BA:1138,2
+BA:1138,2
+BA:1138,2
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,2
+BA:1142,2
+BA:1145,2
+BA:1145,1
+BA:1145,2
+BA:1145,1
+BA:1145,2
+BA:1145,2
+BA:1147,2
+BA:1147,1
+BA:1147,2
+BA:1147,1
+BA:1147,2
+BA:1147,2
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,2
+BA:1152,2
+BA:1181,2
+BA:1181,2
+BA:1181,2
+BA:1181,1
+BA:1181,2
+BA:1181,2
+BA:1183,2
+BA:1183,2
+BA:1183,2
+BA:1183,1
+BA:1183,2
+BA:1183,2
+BA:1183,1
+BA:1183,2
+BA:1183,0
+BA:1183,0
+BA:1183,1
+BA:1183,2
+BA:1183,2
+BA:1183,2
+BA:1183,2
+BA:1183,2
+BA:1183,2
+BA:1183,2
+BA:1190,2
+BA:1190,1
+BA:1190,0
+BA:1190,0
+BA:1190,2
+BA:1190,2
+BA:1195,2
+BA:1195,2
+BA:1195,0
+BA:1195,0
+BA:1195,1
+BA:1195,2
+BA:1197,2
+BA:1197,1
+BA:1197,0
+BA:1197,0
+BA:1197,2
+BA:1197,2
+BA:1200,2
+BA:1200,2
+BA:1200,0
+BA:1200,0
+BA:1200,2
+BA:1200,2
+BA:1209,0
+BA:1209,0
+BA:1209,0
+BA:1209,0
+BA:1209,2
+BA:1209,1
+BA:1214,0
+BA:1214,0
+BA:1214,0
+BA:1214,0
+BA:1214,2
+BA:1214,2
+BA:1216,0
+BA:1216,0
+BA:1216,0
+BA:1216,0
+BA:1216,2
+BA:1216,2
+BA:1219,0
+BA:1219,0
+BA:1219,0
+BA:1219,0
+BA:1219,2
+BA:1219,2
+LF:223
+LH:216
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE0EEESD_EET0_T_SF_SE_
+FN:113,_ZSt18uninitialized_copyIPN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESB_ET0_T_SD_SC_
+FN:261,_ZSt22__uninitialized_copy_aIPN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESB_SA_ET0_T_SD_SC_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESB_SaISA_EET0_T_SE_SD_RT1_
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPN3ept4core6SourceINS3_7desktop6SourceENS5_5SetupENS5_12PropertyTypeEE12ComposedListILNS5_10PropertyIdE1EEESD_EET0_T_SF_SE_
+FN:113,_ZSt18uninitialized_copyIPN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESB_ET0_T_SD_SC_
+FN:261,_ZSt22__uninitialized_copy_aIPN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESB_SA_ET0_T_SD_SC_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESB_SaISA_EET0_T_SE_SD_RT1_
+DA:73,14030
+DA:75,14030
+DA:78,26547
+DA:79,12517
+DA:81,14030
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,14030
+DA:122,14030
+DA:261,14030
+DA:262,14030
+DA:268,14030
+DA:272,14030
+BA:78,2
+BA:78,2
+BA:78,2
+BA:78,2
+BA:78,2
+BA:78,2
+BA:79,2
+BA:79,1
+BA:79,2
+BA:79,1
+BA:79,2
+BA:79,1
+LF:14
+LH:11
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:97,_ZNSt12_Vector_baseIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESaISA_EE19_M_get_Tp_allocatorEv
+FN:484,_ZNKSt6vectorIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESaISA_EE4sizeEv
+FN:562,_ZNSt6vectorIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESaISA_EEixEj
+FN:97,_ZNSt12_Vector_baseIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESaISA_EE19_M_get_Tp_allocatorEv
+FN:484,_ZNKSt6vectorIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESaISA_EE4sizeEv
+FN:562,_ZNSt6vectorIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESaISA_EEixEj
+FN:562,_ZNSt6vectorISsSaISsEEixEj
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:79,_ZNSt12_Vector_baseIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESaISA_EE12_Vector_implD1Ev
+FN:395,_ZNSt6vectorIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESaISA_EE3endEv
+FN:377,_ZNSt6vectorIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESaISA_EE5beginEv
+FN:79,_ZNSt12_Vector_baseIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESaISA_EE12_Vector_implD1Ev
+FN:395,_ZNSt6vectorIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESaISA_EE3endEv
+FN:377,_ZNSt6vectorIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESaISA_EE5beginEv
+FN:84,_ZNSt12_Vector_baseIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESaISA_EE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESaISA_EEC2Ev
+FN:213,_ZNSt6vectorIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESaISA_EEC1Ev
+FN:84,_ZNSt12_Vector_baseIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESaISA_EE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESaISA_EEC2Ev
+FN:213,_ZNSt6vectorIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESaISA_EEC1Ev
+FN:101,_ZNKSt12_Vector_baseIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESaISA_EE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESaISA_EE8max_sizeEv
+FN:101,_ZNKSt12_Vector_baseIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESaISA_EE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESaISA_EE8max_sizeEv
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:147,_ZNSt12_Vector_baseIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESaISA_EE13_M_deallocateEPSA_j
+FN:135,_ZNSt12_Vector_baseIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESaISA_EED2Ev
+FN:299,_ZNSt6vectorIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESaISA_EED1Ev
+FN:147,_ZNSt12_Vector_baseIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESaISA_EE13_M_deallocateEPSA_j
+FN:135,_ZNSt12_Vector_baseIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESaISA_EED2Ev
+FN:299,_ZNSt6vectorIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESaISA_EED1Ev
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:143,_ZNSt12_Vector_baseIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESaISA_EE11_M_allocateEj
+FN:143,_ZNSt12_Vector_baseIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESaISA_EE11_M_allocateEj
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+FN:1075,_ZNKSt6vectorIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESaISA_EE12_M_check_lenEjPKc
+FN:686,_ZNSt6vectorIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESaISA_EE9push_backERKSA_
+FN:1075,_ZNKSt6vectorIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESaISA_EE12_M_check_lenEjPKc
+FN:686,_ZNSt6vectorIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESaISA_EE9push_backERKSA_
+DA:79,1914
+DA:84,1918
+DA:85,1918
+DA:86,1918
+DA:97,22959
+DA:98,22959
+DA:101,14030
+DA:102,14030
+DA:108,1918
+DA:109,1918
+DA:135,1914
+DA:136,1914
+DA:137,1914
+DA:143,7015
+DA:144,7015
+DA:147,8929
+DA:149,8929
+DA:150,6917
+DA:151,8929
+DA:213,1918
+DA:214,1918
+DA:299,1914
+DA:300,1914
+DA:301,1914
+DA:377,13
+DA:378,13
+DA:395,6696
+DA:396,6696
+DA:484,30924
+DA:485,30924
+DA:489,14030
+DA:490,14030
+DA:562,4932
+DA:563,4932
+DA:686,10789
+DA:688,10789
+DA:690,4107
+DA:691,4107
+DA:694,6682
+DA:695,10789
+DA:1075,7015
+DA:1077,7015
+DA:1078,0
+DA:1080,7015
+DA:1081,7015
+BA:144,2
+BA:144,1
+BA:144,2
+BA:144,1
+BA:144,2
+BA:144,1
+BA:149,2
+BA:149,2
+BA:149,2
+BA:149,2
+BA:149,2
+BA:149,2
+BA:688,2
+BA:688,2
+BA:688,1
+BA:688,2
+BA:688,2
+BA:688,2
+BA:1077,1
+BA:1077,2
+BA:1077,1
+BA:1077,2
+BA:1077,1
+BA:1077,2
+BA:1081,2
+BA:1081,1
+BA:1081,1
+BA:1081,2
+BA:1081,2
+BA:1081,1
+BA:1081,1
+BA:1081,2
+BA:1081,2
+BA:1081,1
+BA:1081,1
+BA:1081,2
+LF:45
+LH:44
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:76,_ZNKSt16istream_iteratorIN3ept4core7desktop8CategoryEcSt11char_traitsIcEiEdeEv
+FN:109,_ZNKSt16istream_iteratorIN3ept4core7desktop8CategoryEcSt11char_traitsIcEiE8_M_equalERKS6_
+FN:136,_ZStneIN3ept4core7desktop8CategoryEcSt11char_traitsIcEiEbRKSt16istream_iteratorIT_T0_T1_T2_ESD_
+FN:62,_ZNSt16istream_iteratorIN3ept4core7desktop8CategoryEcSt11char_traitsIcEiEC1Ev
+FN:49,_ZNSt16istream_iteratorIN3ept4core7desktop8CategoryEcSt11char_traitsIcEiED1Ev
+FN:114,_ZNSt16istream_iteratorIN3ept4core7desktop8CategoryEcSt11char_traitsIcEiE7_M_readEv
+FN:66,_ZNSt16istream_iteratorIN3ept4core7desktop8CategoryEcSt11char_traitsIcEiEC1ERSi
+FN:88,_ZNSt16istream_iteratorIN3ept4core7desktop8CategoryEcSt11char_traitsIcEiEppEv
+DA:49,32
+DA:62,16
+DA:63,16
+DA:66,16
+DA:67,16
+DA:68,16
+DA:76,112
+DA:81,112
+DA:88,64
+DA:93,64
+DA:94,64
+DA:109,80
+DA:110,80
+DA:114,80
+DA:116,80
+DA:117,80
+DA:119,80
+DA:120,80
+DA:122,80
+DA:136,80
+DA:137,80
+BA:110,2
+BA:110,2
+BA:110,1
+BA:110,2
+BA:110,0
+BA:110,0
+BA:116,2
+BA:116,1
+BA:116,2
+BA:116,1
+BA:117,2
+BA:117,1
+LF:21
+LH:21
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+FN:283,_ZNSt6vectorIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE1EEESaISA_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSA_SC_EERKSA_
+FN:283,_ZNSt6vectorIN3ept4core6SourceINS1_7desktop6SourceENS3_5SetupENS3_12PropertyTypeEE12ComposedListILNS3_10PropertyIdE0EEESaISA_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSA_SC_EERKSA_
+DA:283,7015
+DA:286,7015
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,7015
+DA:308,7015
+DA:309,7015
+DA:316,7015
+DA:321,7015
+DA:323,7015
+DA:324,7015
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,7015
+DA:338,7015
+DA:341,7015
+DA:342,7015
+DA:343,7015
+DA:345,7015
+BA:286,1
+BA:286,2
+BA:286,1
+BA:286,2
+BA:286,1
+BA:286,2
+LF:24
+LH:15
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept4core7desktop4File5EntryEEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept4core7desktop4File5GroupEEEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept4core7desktop4File5EntryEEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept4core7desktop4File5EntryEEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept4core7desktop4File5GroupEEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept4core7desktop4File5GroupEEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEEC2ERKS3_
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept4core7desktop4File5EntryEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept4core7desktop4File5GroupEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept4core7desktop4File5EntryEEEEC2ERKSB_
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept4core7desktop4File5EntryEEEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept4core7desktop4File5GroupEEEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8max_sizeEv
+FN:69,_ZN9__gnu_cxx13new_allocatorIN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEEEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorIN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorIN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEEE8max_sizeEv
+FN:118,_ZN9__gnu_cxx13new_allocatorISsE7destroyEPSs
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept4core7desktop4File5EntryEEE7destroyEPS8_
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept4core7desktop4File5EntryEEE9constructEPS8_RKS8_
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE10deallocateEPS2_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept4core7desktop4File5EntryEEEE10deallocateEPSA_j
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept4core7desktop4File5GroupEEE7destroyEPS8_
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept4core7desktop4File5GroupEEEE10deallocateEPSA_j
+FN:97,_ZN9__gnu_cxx13new_allocatorIN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEEE10deallocateEPSB_j
+FN:97,_ZN9__gnu_cxx13new_allocatorIN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEEE10deallocateEPSB_j
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8allocateEjPKv
+FN:107,_ZN9__gnu_cxx13new_allocatorIN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEEE9constructEPSB_RKSB_
+FN:107,_ZN9__gnu_cxx13new_allocatorIN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEEE9constructEPSB_RKSB_
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept4core7desktop4File5EntryEEEE8allocateEjPKv
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept4core7desktop4File5GroupEEE9constructEPS8_RKS8_
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept4core7desktop4File5GroupEEEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorIN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE1EEEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorIN3ept4core6SourceINS2_7desktop6SourceENS4_5SetupENS4_12PropertyTypeEE12ComposedListILNS4_10PropertyIdE0EEEE8allocateEjPKv
+DA:69,3610715
+DA:71,404651
+DA:76,4015352
+DA:87,1767775
+DA:89,1767775
+DA:90,0
+DA:92,1767775
+DA:97,1767647
+DA:98,1767647
+DA:101,1781805
+DA:102,1781805
+DA:107,1771882
+DA:108,1771882
+DA:118,1760730
+BA:89,1
+BA:89,2
+BA:89,1
+BA:89,2
+BA:89,1
+BA:89,2
+BA:89,1
+BA:89,2
+BA:89,1
+BA:89,2
+BA:89,1
+BA:89,2
+BA:108,2
+BA:108,1
+BA:108,2
+BA:108,1
+BA:108,2
+BA:108,1
+BA:108,2
+BA:108,1
+BA:108,2
+BA:108,1
+LF:14
+LH:13
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/fstream
+FN:495,_ZNSt14basic_ifstreamIcSt11char_traitsIcEE4openEPKcSt13_Ios_Openmode
+FN:512,_ZNSt14basic_ifstreamIcSt11char_traitsIcEE5closeEv
+FN:215,_ZNSt13basic_filebufIcSt11char_traitsIcEED1Ev
+FN:442,_ZNSt14basic_ifstreamIcSt11char_traitsIcEEC1EPKcSt13_Ios_Openmode
+FN:455,_ZNSt14basic_ifstreamIcSt11char_traitsIcEED1Ev
+FN:223,_ZNKSt13basic_filebufIcSt11char_traitsIcEE7is_openEv
+FN:474,_ZNSt14basic_ifstreamIcSt11char_traitsIcEE7is_openEv
+DA:215,0
+DA:216,0
+DA:223,0
+DA:224,0
+DA:442,0
+DA:443,0
+DA:445,0
+DA:446,0
+DA:447,0
+DA:455,0
+DA:456,0
+DA:474,0
+DA:475,0
+DA:495,0
+DA:497,0
+DA:498,0
+DA:502,0
+DA:503,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:516,0
+BA:216,0
+BA:216,0
+BA:456,0
+BA:456,0
+BA:456,0
+BA:456,0
+BA:456,0
+BA:456,0
+BA:497,0
+BA:497,0
+BA:514,0
+BA:514,0
+LF:22
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,5847928
+DA:109,0
+LF:2
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:322,_ZNSt19basic_istringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+FN:158,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE17_M_stringbuf_initESt13_Ios_Openmode
+FN:110,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ERKSsSt13_Ios_Openmode
+FN:312,_ZNSt19basic_istringstreamIcSt11char_traitsIcESaIcEEC1ERKSsSt13_Ios_Openmode
+DA:96,0
+DA:97,0
+DA:98,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:158,0
+DA:160,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:164,0
+DA:165,0
+DA:312,0
+DA:313,0
+DA:314,0
+DA:322,0
+DA:323,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:162,0
+BA:162,0
+BA:323,0
+BA:323,0
+BA:323,0
+BA:323,0
+BA:323,0
+BA:323,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:33
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.h
+DA:86,1
+BA:86,1
+BA:86,2
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/popcon/maint/path.h
+FN:70,_ZN3ept6popcon4Path23OverridePopconSourceDirC1ERKSs
+FN:74,_ZN3ept6popcon4Path23OverridePopconSourceDirD1Ev
+FN:80,_ZN3ept6popcon4Path22OverridePopconIndexDirC1ERKSs
+FN:84,_ZN3ept6popcon4Path22OverridePopconIndexDirD1Ev
+FN:90,_ZN3ept6popcon4Path27OverridePopconUserSourceDirC1ERKSs
+FN:94,_ZN3ept6popcon4Path27OverridePopconUserSourceDirD1Ev
+FN:100,_ZN3ept6popcon4Path26OverridePopconUserIndexDirC1ERKSs
+FN:104,_ZN3ept6popcon4Path26OverridePopconUserIndexDirD1Ev
+DA:70,7
+DA:72,7
+DA:73,7
+DA:74,7
+DA:80,7
+DA:82,7
+DA:83,7
+DA:84,7
+DA:90,7
+DA:92,7
+DA:93,7
+DA:94,7
+DA:100,7
+DA:102,7
+DA:103,7
+DA:104,7
+LF:16
+LH:16
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/popcon/popcon.h
+FN:96,_ZNK3ept6popcon6Popcon9timestampEv
+FN:99,_ZNK3ept6popcon6Popcon7hasDataEv
+FN:105,_ZNK3ept6popcon6Popcon4sizeEv
+FN:85,_ZNK3ept6popcon6Popcon13structByIndexEj
+FN:126,_ZNK3ept6popcon6Popcon12scoreByIndexEj
+FN:137,_ZNK3ept6popcon6Popcon5scoreEj
+FN:118,_ZNK3ept6popcon6Popcon4nameEj
+FN:102,_ZNK3ept6popcon6Popcon11submissionsEv
+FN:143,_ZNK3ept6popcon6Popcon5scoreERKSs
+FN:146,_ZNK3ept6popcon6PopconixERKSs
+FN:73,_ZN3ept6popcon6PopconD1Ev
+DA:73,7
+DA:85,102350
+DA:87,102350
+DA:88,102350
+DA:89,0
+DA:96,1
+DA:99,1
+DA:102,3
+DA:105,174055
+DA:107,174055
+DA:108,174053
+DA:110,2
+DA:118,30678
+DA:120,30678
+DA:121,30678
+DA:122,30678
+DA:126,71672
+DA:128,71672
+DA:129,71672
+DA:130,71672
+DA:137,71672
+DA:143,1790
+DA:146,2
+BA:87,2
+BA:87,1
+BA:107,2
+BA:107,2
+BA:121,1
+BA:121,2
+BA:129,1
+BA:129,2
+LF:23
+LH:22
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/popcon/popcon.test.h
+FN:44,_ZN10TestPopconC1Ev
+FN:60,_ZN10TestPopcon13accessibilityEv
+FN:51,_ZN10TestPopcon11basicAccessEv
+FN:84,_ZN10TestPopcon11validScoresEv
+FN:90,_ZN10TestPopcon14fallbackValuesEv
+FN:35,_ZN10TestPopconD1Ev
+FN:70,_ZN10TestPopcon10haveScoresEv
+DA:35,5
+DA:44,5
+DA:48,5
+DA:49,5
+DA:51,1
+DA:53,1
+DA:54,2
+DA:55,2
+DA:56,2
+DA:57,1
+DA:60,1
+DA:62,139822
+DA:65,69910
+DA:67,1
+DA:70,1
+DA:72,1
+DA:73,1789
+DA:75,1788
+DA:76,1788
+DA:77,1758
+DA:78,1
+DA:80,2
+DA:81,1
+DA:84,1
+DA:86,1
+DA:87,1
+DA:90,1
+DA:92,1
+DA:93,2
+DA:94,2
+DA:95,2
+DA:96,1
+DA:98,1
+DA:99,2
+DA:101,2
+DA:102,2
+DA:103,2
+DA:104,1
+BA:62,2
+BA:62,2
+BA:73,2
+BA:73,2
+BA:76,2
+BA:76,2
+LF:38
+LH:38
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationD1Ev
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:52,_ZlsIiER12AssertFailedS1_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:52,_ZlsIlER12AssertFailedS1_T_
+FN:41,_ZN12AssertFailedD1Ev
+FN:67,_Z12assert_eq_fnIliEv8LocationT_T0_
+FN:59,_Z9assert_fnIbEv8LocationT_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:67,_Z12assert_eq_fnIjiEv8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:75,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+LF:26
+LH:0
+end_of_record
+SF:/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_popcon_popcon.cpp
+FN:7,_Z41__static_initialization_and_destruction_0ii
+FN:7,_GLOBAL__I_ept_test_generated__home_mornfall_dev_pkg_ept_work_ept_popcon_popcon.cpp
+FN:7,_Z25run_Popcon_fallbackValuesv
+FN:6,_Z22run_Popcon_validScoresv
+FN:4,_Z24run_Popcon_accessibilityv
+FN:3,_Z22run_Popcon_basicAccessv
+FN:5,_Z21run_Popcon_haveScoresv
+DA:3,1
+DA:4,1
+DA:5,1
+DA:6,1
+DA:7,4
+BA:7,2
+BA:7,1
+BA:7,2
+BA:7,1
+LF:5
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:277,_ZNKSs7_M_dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:686,0
+DA:687,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:53
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:166,0
+DA:167,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+DA:69,0
+DA:71,0
+DA:76,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:169,_ZNSolsEl
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:195,_ZNSolsEj
+DA:95,0
+DA:112,0
+DA:117,0
+DA:169,0
+DA:170,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.h
+DA:86,1
+BA:86,1
+BA:86,2
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt.h
+FN:139,_ZN3ept4core11AptDatabaseC1Ev
+FN:209,_ZN3ept4core11AptDatabase10invalidateEv
+FN:331,_ZN3ept4core11AptDatabaseD1Ev
+DA:139,0
+DA:140,0
+DA:141,0
+DA:142,0
+DA:143,0
+DA:144,0
+DA:145,0
+DA:146,0
+DA:209,0
+DA:210,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:218,0
+DA:219,0
+DA:220,0
+DA:331,0
+DA:332,0
+DA:333,0
+BA:210,0
+BA:210,0
+BA:214,0
+BA:214,0
+BA:216,0
+BA:216,0
+BA:218,0
+BA:218,0
+LF:21
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/debtags.h
+FN:139,_ZN3ept7debtags7Debtags14const_iteratorC1ERKS1_RKN7tagcoll4coll7PatchedINS6_12IntDiskIndexEE14const_iteratorE
+FN:282,_ZNK3ept7debtags7Debtags10vocabularyEv
+FN:289,_ZN3ept7debtags7Debtags5pkgidEv
+FN:175,_ZNK3ept7debtags7Debtags14const_iteratorneERKS2_
+FN:97,_ZNK3ept7debtags7Debtags11packageByIDEi
+FN:182,_ZNK3ept7debtags7Debtags5beginEv
+FN:183,_ZNK3ept7debtags7Debtags3endEv
+FN:143,_ZN3ept7debtags7Debtags14const_iteratorD1Ev
+FN:194,_ZN3ept7debtags7DebtagsD1Ev
+FN:161,_ZN3ept7debtags7Debtags14const_iteratorppEv
+FN:148,_ZNK3ept7debtags7Debtags14const_iteratordeEv
+FN:155,_ZNK3ept7debtags7Debtags14const_iteratorptEv
+DA:97,0
+DA:99,0
+DA:139,0
+DA:140,0
+DA:143,0
+DA:145,0
+DA:146,0
+DA:147,0
+DA:148,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:155,0
+DA:157,0
+DA:158,0
+DA:159,0
+DA:161,0
+DA:163,0
+DA:164,0
+DA:166,0
+DA:167,0
+DA:169,0
+DA:175,0
+DA:177,0
+DA:182,0
+DA:183,0
+DA:194,0
+DA:282,0
+DA:289,0
+BA:145,0
+BA:145,0
+BA:146,0
+BA:146,0
+BA:150,0
+BA:150,0
+BA:157,0
+BA:157,0
+BA:164,0
+BA:164,0
+BA:166,0
+BA:166,0
+LF:29
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/path.h
+FN:76,_ZN3ept7debtags4Path24OverrideDebtagsSourceDirC1ERKSs
+FN:80,_ZN3ept7debtags4Path24OverrideDebtagsSourceDirD1Ev
+FN:86,_ZN3ept7debtags4Path23OverrideDebtagsIndexDirC1ERKSs
+FN:90,_ZN3ept7debtags4Path23OverrideDebtagsIndexDirD1Ev
+FN:96,_ZN3ept7debtags4Path28OverrideDebtagsUserSourceDirC1ERKSs
+FN:100,_ZN3ept7debtags4Path28OverrideDebtagsUserSourceDirD1Ev
+FN:106,_ZN3ept7debtags4Path27OverrideDebtagsUserIndexDirC1ERKSs
+FN:110,_ZN3ept7debtags4Path27OverrideDebtagsUserIndexDirD1Ev
+DA:76,0
+DA:78,0
+DA:79,0
+DA:80,0
+DA:86,0
+DA:88,0
+DA:89,0
+DA:90,0
+DA:96,0
+DA:98,0
+DA:99,0
+DA:100,0
+DA:106,0
+DA:108,0
+DA:109,0
+DA:110,0
+LF:16
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/pkgid.h
+FN:54,_ZNK3ept7debtags5PkgId4sizeEv
+FN:68,_ZNK3ept7debtags5PkgId4byIDEi
+FN:41,_ZN3ept7debtags5PkgIdD1Ev
+DA:41,0
+DA:54,0
+DA:68,0
+DA:70,0
+DA:71,0
+DA:72,0
+BA:54,0
+BA:54,0
+BA:70,0
+BA:70,0
+BA:70,0
+BA:70,0
+BA:70,0
+BA:70,0
+LF:6
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/pkgid.test.h
+FN:38,_ZN9TestPkgidC1Ev
+FN:34,_ZN9TestPkgidD1Ev
+FN:62,_ZN9TestPkgid2_2Ev
+FN:44,_ZN9TestPkgid2_1Ev
+DA:34,2
+DA:38,2
+DA:39,2
+DA:41,2
+DA:44,1
+DA:47,21146
+DA:50,21145
+DA:51,21145
+DA:52,21145
+DA:58,1
+DA:59,1
+DA:62,1
+DA:66,1
+DA:67,1
+DA:68,21146
+DA:69,21146
+DA:70,1
+DA:71,1
+BA:47,2
+BA:47,2
+BA:68,2
+BA:68,2
+LF:18
+LH:18
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/tag.h
+FN:175,_ZN3ept7debtags3TagD1Ev
+FN:179,_ZNK3ept7debtags3TagltERKS1_
+DA:175,0
+DA:179,0
+LF:2
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/vocabulary.h
+FN:181,_ZNK3ept7debtags10Vocabulary8tagsByIDISt3setIiSt4lessIiESaIiEEEES3_INS0_3TagES4_IS8_ESaIS8_EERKT_
+DA:181,0
+DA:183,0
+DA:184,0
+DA:186,0
+DA:187,0
+BA:184,0
+BA:184,0
+LF:5
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/test.h
+FN:12,_ZN18AptTestEnvironmentC2Ev
+FN:10,_ZN18AptTestEnvironmentD2Ev
+FN:30,_ZN22DebtagsTestEnvironmentC2Ev
+FN:24,_ZN22DebtagsTestEnvironmentD2Ev
+DA:10,0
+DA:12,0
+DA:13,0
+DA:14,0
+DA:15,0
+DA:16,0
+DA:17,0
+DA:18,0
+DA:19,0
+DA:20,0
+DA:21,0
+DA:24,0
+DA:30,0
+DA:34,0
+DA:35,0
+LF:15
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/operators.h
+FN:74,_ZN6wibble9operatorsorIiEESt3setIT_St4lessIS3_ESaIS3_EERKS7_S9_
+FN:82,_ZN6wibble9operatorsmiIiEESt3setIT_St4lessIS3_ESaIS3_EERKS7_S9_
+DA:74,0
+DA:75,0
+DA:76,0
+DA:78,0
+DA:82,0
+DA:83,0
+DA:84,0
+DA:86,0
+LF:8
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationD1Ev
+FN:17,_ZN8LocationC1EPKciSs
+FN:13,_ZN8LocationC1ERKS_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:41,_ZN12AssertFailedD1Ev
+FN:67,_Z12assert_eq_fnIjjEv8LocationT_T0_
+FN:59,_Z9assert_fnIbEv8LocationT_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:61,0
+DA:62,0
+DA:64,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:75,0
+BA:42,0
+BA:42,0
+BA:61,0
+BA:61,0
+BA:69,0
+BA:69,0
+LF:26
+LH:0
+end_of_record
+SF:/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_pkgid.cpp
+FN:4,_Z41__static_initialization_and_destruction_0ii
+FN:4,_GLOBAL__I_ept_test_generated__home_mornfall_dev_pkg_ept_work_ept_debtags_maint_pkgid.cpp
+FN:4,_Z12run_Pkgid__2v
+FN:3,_Z12run_Pkgid__1v
+DA:3,1
+DA:4,4
+BA:4,2
+BA:4,1
+BA:4,2
+BA:4,1
+LF:2
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeIN3ept7debtags3TagEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeIiEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:98,_ZNSaISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2Ev
+FN:106,_ZNSaIN3ept7debtags3TagEED1Ev
+FN:100,_ZNSaISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2ERKS4_
+FN:98,_ZNSaISt13_Rb_tree_nodeIiEEC2Ev
+FN:106,_ZNSaIiED1Ev
+FN:100,_ZNSaISt13_Rb_tree_nodeIiEEC2ERKS1_
+FN:106,_ZNSaISt4pairIKiN7tagcoll5PatchIiiEEEED1Ev
+FN:104,_ZNSaIN3ept7debtags3TagEEC1ISt13_Rb_tree_nodeIS1_EEERKSaIT_E
+FN:104,_ZNSaIiEC1ISt13_Rb_tree_nodeIiEEERKSaIT_E
+FN:104,_ZNSaISt4pairIKiN7tagcoll5PatchIiiEEEEC1ISt13_Rb_tree_nodeIS4_EEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:104,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:7
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:277,_ZNKSs7_M_dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2162,0
+DA:2165,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:53
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algo.h
+FN:5055,_ZSt9set_unionISt23_Rb_tree_const_iteratorIiES1_St15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T_SA_T0_SB_S9_
+FN:5300,_ZSt14set_differenceISt23_Rb_tree_const_iteratorIiES1_St15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T_SA_T0_SB_S9_
+DA:5055,0
+DA:5074,0
+DA:5076,0
+DA:5078,0
+DA:5079,0
+DA:5081,0
+DA:5083,0
+DA:5084,0
+DA:5088,0
+DA:5089,0
+DA:5090,0
+DA:5092,0
+DA:5095,0
+DA:5300,0
+DA:5317,0
+DA:5318,0
+DA:5320,0
+DA:5321,0
+DA:5322,0
+DA:5324,0
+DA:5325,0
+DA:5328,0
+DA:5329,0
+DA:5331,0
+BA:5074,0
+BA:5074,0
+BA:5074,0
+BA:5074,0
+BA:5074,0
+BA:5074,0
+BA:5076,0
+BA:5076,0
+BA:5081,0
+BA:5081,0
+BA:5317,0
+BA:5317,0
+BA:5317,0
+BA:5317,0
+BA:5317,0
+BA:5317,0
+BA:5318,0
+BA:5318,0
+BA:5324,0
+BA:5324,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseISt23_Rb_tree_const_iteratorIiELb0EE3__bES1_
+FN:268,_ZNSt12__niter_baseISt23_Rb_tree_const_iteratorIiELb0EE3__bES1_
+FN:268,_ZNSt12__niter_baseISt15insert_iteratorISt3setIiSt4lessIiESaIiEEELb0EE3__bES6_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt26bidirectional_iterator_tagE8__copy_mISt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEET0_T_SD_SC_
+FN:385,_ZSt13__copy_move_aILb0ESt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T0_SA_S9_
+FN:430,_ZSt14__copy_move_a2ILb0ESt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T0_SA_S9_
+FN:456,_ZSt4copyISt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET0_T_SA_S9_
+DA:268,0
+DA:269,0
+DA:286,0
+DA:287,0
+DA:309,0
+DA:311,0
+DA:312,0
+DA:313,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+BA:311,0
+BA:311,0
+LF:15
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:469,_ZNKSt9_IdentityIN3ept7debtags3TagEEclERKS2_
+FN:229,_ZNKSt4lessIN3ept7debtags3TagEEclERKS2_S5_
+FN:469,_ZNKSt9_IdentityIiEclERKi
+FN:229,_ZNKSt4lessIiEclERKiS2_
+DA:229,0
+DA:230,0
+DA:469,0
+DA:470,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:572,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEC1ERS4_St23_Rb_tree_const_iteratorIiE
+FN:645,_ZSt8inserterISt3setIiSt4lessIiESaIiEESt23_Rb_tree_const_iteratorIiEESt15insert_iteratorIT_ERS8_T0_
+FN:618,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEdeEv
+FN:623,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEppEv
+FN:599,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEaSERKi
+DA:572,0
+DA:573,0
+DA:599,0
+DA:601,0
+DA:602,0
+DA:603,0
+DA:618,0
+DA:619,0
+DA:623,0
+DA:624,0
+DA:645,0
+DA:648,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_map.h
+FN:284,_ZNKSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE5beginEv
+FN:302,_ZNKSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE3endEv
+FN:92,_ZNSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEED2Ev
+DA:92,0
+DA:284,0
+DA:285,0
+DA:302,0
+DA:303,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEbEC1ERKS4_RKb
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorIiEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIN3ept7debtags3TagEEbEC1ERKS4_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIiEbEC1ERKS1_RKb
+FN:73,_ZNSt4pairIKiN7tagcoll5PatchIiiEEED1Ev
+FN:73,_ZNSt4pairIiSt3setIiSt4lessIiESaIiEEED1Ev
+FN:73,_ZNSt4pairISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EEED1Ev
+FN:73,_ZNSt4pairISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EEEC1ERKS8_
+FN:88,_ZNSt4pairISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EEEC1ERKSsRKS7_
+FN:218,_ZSt9make_pairISsSt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EEESt4pairIT_T0_ES9_SA_
+FN:73,_ZNSt4pairIiSt3setIiSt4lessIiESaIiEEEC1ERKS5_
+FN:88,_ZNSt4pairIiSt3setIiSt4lessIiESaIiEEEC1ERKiRKS4_
+FN:218,_ZSt9make_pairIiSt3setIiSt4lessIiESaIiEEESt4pairIT_T0_ES6_S7_
+DA:73,0
+DA:88,0
+DA:89,0
+DA:218,0
+DA:219,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:336,_ZNKSt3setIiSt4lessIiESaIiEE4sizeEv
+FN:261,_ZNKSt3setIiSt4lessIiESaIiEE5beginEv
+FN:270,_ZNKSt3setIiSt4lessIiESaIiEE3endEv
+FN:141,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EEC1Ev
+FN:141,_ZNSt3setIiSt4lessIiESaIiEEC1Ev
+FN:93,_ZNSt3setIiSt4lessIiESaIiEED1Ev
+FN:93,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EED1Ev
+FN:193,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EEC1ERKS6_
+FN:193,_ZNSt3setIiSt4lessIiESaIiEEC1ERKS3_
+FN:378,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE6insertERKS2_
+FN:378,_ZNSt3setIiSt4lessIiESaIiEE6insertERKi
+FN:405,_ZNSt3setIiSt4lessIiESaIiEE6insertESt23_Rb_tree_const_iteratorIiERKi
+DA:93,0
+DA:141,0
+DA:142,0
+DA:193,0
+DA:194,0
+DA:261,0
+DA:262,0
+DA:270,0
+DA:271,0
+DA:336,0
+DA:337,0
+DA:378,0
+DA:381,0
+DA:382,0
+DA:405,0
+DA:406,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:103,_ZNSt18_Rb_tree_node_base10_S_minimumEPS_
+FN:117,_ZNSt18_Rb_tree_node_base10_S_maximumEPS_
+FN:452,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEC1ERKSt17_Rb_tree_iteratorIS2_E
+FN:452,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorIiEC1ERKSt17_Rb_tree_iteratorIiE
+FN:289,_ZNKSt23_Rb_tree_const_iteratorIiEneERKS0_
+FN:247,_ZNKSt23_Rb_tree_const_iteratorIiEdeEv
+FN:285,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEeqERKS6_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEptEv
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEneERKS6_
+FN:452,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_M_beginEv
+FN:641,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE4sizeEv
+FN:398,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:463,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorIN3ept7debtags3TagEEC1EPSt13_Rb_tree_nodeIS2_E
+FN:596,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorIN3ept7debtags3TagEEeqERKS3_
+FN:347,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE21_M_get_Node_allocatorEv
+FN:432,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_M_rootEv
+FN:456,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_beginEv
+FN:428,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE10_S_minimumEPSt18_Rb_tree_node_base
+FN:436,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE11_M_leftmostEv
+FN:511,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE10_S_maximumEPSt18_Rb_tree_node_base
+FN:444,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE12_M_rightmostEv
+FN:398,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_S_leftEPSt18_Rb_tree_node_base
+FN:347,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE21_M_get_Node_allocatorEv
+FN:432,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_M_rootEv
+FN:456,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_beginEv
+FN:463,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_M_endEv
+FN:428,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_S_minimumEPSt18_Rb_tree_node_base
+FN:436,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_leftmostEv
+FN:511,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_S_maximumEPSt18_Rb_tree_node_base
+FN:444,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE12_M_rightmostEv
+FN:168,_ZNSt17_Rb_tree_iteratorIiEC1EPSt13_Rb_tree_nodeIiE
+FN:596,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorIiEeqERKS0_
+FN:398,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE13_Rb_tree_implIS9_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:415,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EE13_M_initializeEv
+FN:471,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_valueEPKSt13_Rb_tree_nodeIS2_E
+FN:475,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_S_keyEPKSt13_Rb_tree_nodeIS2_E
+FN:495,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:491,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_rightEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_S_leftEPKSt18_Rb_tree_node_base
+FN:415,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:491,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_rightEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_S_leftEPKSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_valueEPKSt13_Rb_tree_nodeIiE
+FN:475,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_S_keyEPKSt13_Rb_tree_nodeIiE
+FN:495,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_S_keyEPKSt18_Rb_tree_node_base
+FN:240,_ZNSt23_Rb_tree_const_iteratorIiEC1EPKSt13_Rb_tree_nodeIiE
+FN:603,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5beginEv
+FN:614,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE3endEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEC1EPKSt13_Rb_tree_nodeIS5_E
+FN:603,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE5beginEv
+FN:614,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE3endEv
+FN:403,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EEC1Ev
+FN:408,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EEC1ERKS6_RKSaISt13_Rb_tree_nodeIS2_EE
+FN:403,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEEC1Ev
+FN:408,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EEC1ERKS3_RKSaISt13_Rb_tree_nodeIiEE
+FN:347,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE21_M_get_Node_allocatorEv
+FN:351,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE13get_allocatorEv
+FN:360,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_put_nodeEPSt13_Rb_tree_nodeIiE
+FN:388,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE15_M_destroy_nodeEPSt13_Rb_tree_nodeIiE
+FN:936,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_eraseEPSt13_Rb_tree_nodeIiE
+FN:584,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEED1Ev
+FN:360,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS5_E
+FN:388,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS5_E
+FN:936,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_M_eraseEPSt13_Rb_tree_nodeIS5_E
+FN:584,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EED1Ev
+FN:360,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:388,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:936,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E
+FN:584,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EED1Ev
+FN:356,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE14_M_create_nodeERKS2_
+FN:378,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_M_clone_nodeEPKSt13_Rb_tree_nodeIS2_E
+FN:900,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_M_copyEPKSt13_Rb_tree_nodeIS2_EPSA_
+FN:568,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EEC1ERKS8_
+FN:356,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE14_M_create_nodeERKi
+FN:378,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_M_clone_nodeEPKSt13_Rb_tree_nodeIiE
+FN:900,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_M_copyEPKSt13_Rb_tree_nodeIiEPS7_
+FN:568,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEEC1ERKS5_
+FN:195,_ZNSt17_Rb_tree_iteratorIN3ept7debtags3TagEEmmEv
+FN:195,_ZNSt17_Rb_tree_iteratorIiEmmEv
+FN:846,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE10_M_insert_EPKSt18_Rb_tree_node_baseSB_RKS2_
+FN:1133,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE16_M_insert_uniqueERKS2_
+FN:846,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_M_insert_EPKSt18_Rb_tree_node_baseS8_RKi
+FN:1133,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE16_M_insert_uniqueERKi
+FN:255,_ZNSt23_Rb_tree_const_iteratorIiEppEv
+FN:255,_ZNSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEppEv
+FN:270,_ZNSt23_Rb_tree_const_iteratorIiEmmEv
+FN:1178,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE17_M_insert_unique_ESt23_Rb_tree_const_iteratorIiERKi
+DA:103,0
+DA:105,0
+DA:106,0
+DA:117,0
+DA:119,0
+DA:120,0
+DA:168,0
+DA:169,0
+DA:195,0
+DA:197,0
+DA:198,0
+DA:210,0
+DA:211,0
+DA:240,0
+DA:241,0
+DA:243,0
+DA:244,0
+DA:247,0
+DA:248,0
+DA:251,0
+DA:252,0
+DA:255,0
+DA:257,0
+DA:258,0
+DA:270,0
+DA:272,0
+DA:273,0
+DA:285,0
+DA:286,0
+DA:289,0
+DA:290,0
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:356,0
+DA:357,0
+DA:360,0
+DA:361,0
+DA:364,0
+DA:366,0
+DA:368,0
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,0
+DA:378,0
+DA:380,0
+DA:381,0
+DA:382,0
+DA:383,0
+DA:384,0
+DA:388,0
+DA:390,0
+DA:391,0
+DA:392,0
+DA:398,0
+DA:403,0
+DA:405,0
+DA:406,0
+DA:408,0
+DA:410,0
+DA:411,0
+DA:415,0
+DA:417,0
+DA:418,0
+DA:419,0
+DA:420,0
+DA:421,0
+DA:428,0
+DA:429,0
+DA:432,0
+DA:433,0
+DA:436,0
+DA:437,0
+DA:444,0
+DA:445,0
+DA:452,0
+DA:453,0
+DA:456,0
+DA:459,0
+DA:463,0
+DA:464,0
+DA:471,0
+DA:472,0
+DA:475,0
+DA:476,0
+DA:479,0
+DA:480,0
+DA:483,0
+DA:484,0
+DA:487,0
+DA:488,0
+DA:491,0
+DA:492,0
+DA:495,0
+DA:496,0
+DA:499,0
+DA:500,0
+DA:503,0
+DA:504,0
+DA:511,0
+DA:512,0
+DA:562,0
+DA:568,0
+DA:569,0
+DA:571,0
+DA:573,0
+DA:574,0
+DA:575,0
+DA:576,0
+DA:578,0
+DA:584,0
+DA:585,0
+DA:596,0
+DA:599,0
+DA:603,0
+DA:606,0
+DA:614,0
+DA:617,0
+DA:641,0
+DA:642,0
+DA:846,0
+DA:850,0
+DA:852,0
+DA:854,0
+DA:857,0
+DA:858,0
+DA:900,0
+DA:903,0
+DA:904,0
+DA:908,0
+DA:909,0
+DA:910,0
+DA:911,0
+DA:913,0
+DA:915,0
+DA:916,0
+DA:917,0
+DA:918,0
+DA:919,0
+DA:920,0
+DA:921,0
+DA:924,0
+DA:926,0
+DA:927,0
+DA:929,0
+DA:936,0
+DA:939,0
+DA:941,0
+DA:942,0
+DA:943,0
+DA:944,0
+DA:946,0
+DA:1133,0
+DA:1135,0
+DA:1136,0
+DA:1137,0
+DA:1138,0
+DA:1140,0
+DA:1141,0
+DA:1142,0
+DA:1144,0
+DA:1145,0
+DA:1147,0
+DA:1148,0
+DA:1150,0
+DA:1152,0
+DA:1153,0
+DA:1154,0
+DA:1178,0
+DA:1181,0
+DA:1183,0
+DA:1186,0
+DA:1188,0
+DA:1190,0
+DA:1194,0
+DA:1195,0
+DA:1196,0
+DA:1197,0
+DA:1200,0
+DA:1201,0
+DA:1204,0
+DA:1207,0
+DA:1209,0
+DA:1213,0
+DA:1214,0
+DA:1215,0
+DA:1216,0
+DA:1219,0
+DA:1220,0
+DA:1222,0
+DA:1225,0
+DA:1230,0
+BA:105,0
+BA:105,0
+BA:119,0
+BA:119,0
+BA:571,0
+BA:571,0
+BA:571,0
+BA:571,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:908,0
+BA:908,0
+BA:908,0
+BA:908,0
+BA:913,0
+BA:913,0
+BA:913,0
+BA:913,0
+BA:918,0
+BA:918,0
+BA:918,0
+BA:918,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1181,0
+BA:1181,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1190,0
+BA:1190,0
+BA:1195,0
+BA:1195,0
+BA:1197,0
+BA:1197,0
+BA:1200,0
+BA:1200,0
+BA:1209,0
+BA:1209,0
+BA:1214,0
+BA:1214,0
+BA:1216,0
+BA:1216,0
+BA:1219,0
+BA:1219,0
+LF:194
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:118,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEE7destroyEPS3_
+FN:118,_ZN9__gnu_cxx13new_allocatorIiE7destroyEPi
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEED2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEE9constructEPS3_RKS3_
+FN:71,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2ERKS6_
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIiED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEEC2ERKS3_
+FN:107,_ZN9__gnu_cxx13new_allocatorIiE9constructEPiRKi
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKiN7tagcoll5PatchIiiEEEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIiEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKiN7tagcoll5PatchIiiEEEEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE8max_sizeEv
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE10deallocateEPS2_j
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKiN7tagcoll5PatchIiiEEEE7destroyEPS6_
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEE10deallocateEPS8_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE10deallocateEPS5_j
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE8allocateEjPKv
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+DA:118,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+DA:105,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:195,_ZNSolsEj
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/intdiskindex.h
+FN:74,_ZN7tagcoll4coll12IntDiskIndex14const_iteratorC1ERKS1_i
+FN:77,_ZN7tagcoll4coll12IntDiskIndex14const_iteratorC1ERKS1_
+FN:98,_ZNK7tagcoll4coll12IntDiskIndex14const_iteratoreqERKS2_
+FN:102,_ZNK7tagcoll4coll12IntDiskIndex14const_iteratorneERKS2_
+FN:107,_ZNK7tagcoll4coll12IntDiskIndex5beginEv
+FN:108,_ZNK7tagcoll4coll12IntDiskIndex3endEv
+FN:79,_ZN7tagcoll4coll12IntDiskIndex14const_iteratorD1Ev
+FN:92,_ZN7tagcoll4coll12IntDiskIndex14const_iteratorppEv
+FN:81,_ZNK7tagcoll4coll12IntDiskIndex14const_iteratordeEv
+FN:85,_ZNK7tagcoll4coll12IntDiskIndex14const_iteratorptEv
+DA:74,0
+DA:75,0
+DA:77,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:87,0
+DA:88,0
+DA:89,0
+DA:92,0
+DA:94,0
+DA:95,0
+DA:96,0
+DA:98,0
+DA:100,0
+DA:102,0
+DA:104,0
+DA:107,0
+DA:108,0
+BA:79,0
+BA:79,0
+BA:79,0
+BA:79,0
+BA:87,0
+BA:87,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+LF:21
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/patched.h
+FN:157,_ZNK7tagcoll4coll7PatchedINS0_12IntDiskIndexEE14const_iteratorneERKS4_
+FN:96,_ZN7tagcoll4coll7PatchedINS0_12IntDiskIndexEE14const_iteratorC1ERKS3_RKNS2_14const_iteratorERKSt23_Rb_tree_const_iteratorISt4pairIKiNS_5PatchIiiEEEE
+FN:51,_ZN7tagcoll4coll7PatchedINS0_12IntDiskIndexEED1Ev
+FN:164,_ZNK7tagcoll4coll7PatchedINS0_12IntDiskIndexEE5beginEv
+FN:165,_ZNK7tagcoll4coll7PatchedINS0_12IntDiskIndexEE3endEv
+FN:100,_ZN7tagcoll4coll7PatchedINS0_12IntDiskIndexEE14const_iteratorD1Ev
+FN:129,_ZN7tagcoll4coll7PatchedINS0_12IntDiskIndexEE14const_iteratorppEv
+FN:105,_ZNK7tagcoll4coll7PatchedINS0_12IntDiskIndexEE14const_iteratordeEv
+FN:123,_ZNK7tagcoll4coll7PatchedINS0_12IntDiskIndexEE14const_iteratorptEv
+DA:51,0
+DA:96,0
+DA:97,0
+DA:100,0
+DA:102,0
+DA:103,0
+DA:104,0
+DA:105,0
+DA:107,0
+DA:108,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:113,0
+DA:114,0
+DA:115,0
+DA:116,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:121,0
+DA:123,0
+DA:125,0
+DA:126,0
+DA:127,0
+DA:129,0
+DA:131,0
+DA:133,0
+DA:134,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:138,0
+DA:139,0
+DA:140,0
+DA:143,0
+DA:144,0
+DA:146,0
+DA:148,0
+DA:149,0
+DA:151,0
+DA:157,0
+DA:159,0
+DA:164,0
+DA:165,0
+BA:102,0
+BA:102,0
+BA:103,0
+BA:103,0
+BA:107,0
+BA:107,0
+BA:110,0
+BA:110,0
+BA:110,0
+BA:110,0
+BA:110,0
+BA:110,0
+BA:110,0
+BA:110,0
+BA:110,0
+BA:110,0
+BA:112,0
+BA:112,0
+BA:114,0
+BA:114,0
+BA:116,0
+BA:116,0
+BA:118,0
+BA:118,0
+BA:125,0
+BA:125,0
+BA:131,0
+BA:131,0
+BA:131,0
+BA:131,0
+BA:131,0
+BA:131,0
+BA:131,0
+BA:131,0
+BA:131,0
+BA:131,0
+BA:133,0
+BA:133,0
+BA:135,0
+BA:135,0
+BA:137,0
+BA:137,0
+BA:139,0
+BA:139,0
+BA:146,0
+BA:146,0
+BA:148,0
+BA:148,0
+BA:159,0
+BA:159,0
+BA:159,0
+BA:159,0
+LF:45
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/diskindex/int.h
+FN:53,_ZNK7tagcoll9diskindex3Int3bufEv
+FN:54,_ZNK7tagcoll9diskindex3Int3ofsEi
+FN:62,_ZNK7tagcoll9diskindex3Int4sizeEv
+DA:53,0
+DA:54,0
+DA:62,0
+BA:62,0
+BA:62,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/patch.h
+FN:49,_ZN7tagcoll5PatchIiiED1Ev
+FN:124,_ZN7tagcoll9PatchListIiiED1Ev
+FN:83,_ZNK7tagcoll5PatchIiiE5applyERKSt3setIiSt4lessIiESaIiEE
+DA:49,0
+DA:83,0
+DA:86,0
+DA:124,0
+LF:4
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/apt/packagerecord.h
+FN:64,_ZN3ept3apt13PackageRecordC1ERKSs
+FN:37,_ZN3ept3apt13PackageRecordD1Ev
+FN:51,_ZNK3ept3apt13PackageRecord11parseStringERKSsS3_
+FN:66,_ZNK3ept3apt13PackageRecord7packageERKSs
+FN:70,_ZNK3ept3apt13PackageRecord8priorityERKSs
+FN:74,_ZNK3ept3apt13PackageRecord7sectionERKSs
+FN:82,_ZNK3ept3apt13PackageRecord10maintainerERKSs
+FN:86,_ZNK3ept3apt13PackageRecord12architectureERKSs
+FN:90,_ZNK3ept3apt13PackageRecord6sourceERKSs
+FN:94,_ZNK3ept3apt13PackageRecord7versionERKSs
+FN:98,_ZNK3ept3apt13PackageRecord8replacesERKSs
+FN:122,_ZNK3ept3apt13PackageRecord8providesERKSs
+FN:102,_ZNK3ept3apt13PackageRecord7dependsERKSs
+FN:106,_ZNK3ept3apt13PackageRecord10preDependsERKSs
+FN:110,_ZNK3ept3apt13PackageRecord10recommendsERKSs
+FN:114,_ZNK3ept3apt13PackageRecord8suggestsERKSs
+FN:118,_ZNK3ept3apt13PackageRecord8enhancesERKSs
+FN:126,_ZNK3ept3apt13PackageRecord9conflictsERKSs
+FN:130,_ZNK3ept3apt13PackageRecord8filenameERKSs
+FN:138,_ZNK3ept3apt13PackageRecord6md5sumERKSs
+FN:142,_ZNK3ept3apt13PackageRecord4sha1ERKSs
+FN:146,_ZNK3ept3apt13PackageRecord6sha256ERKSs
+FN:150,_ZNK3ept3apt13PackageRecord11descriptionERKSs
+FN:78,_ZNK3ept3apt13PackageRecord13installedSizeEj
+FN:134,_ZNK3ept3apt13PackageRecord11packageSizeEj
+FN:154,_ZNK3ept3apt13PackageRecord16shortDescriptionERKSs
+FN:158,_ZNK3ept3apt13PackageRecord15longDescriptionERKSs
+FN:38,_ZNK3ept3apt13PackageRecord9parseBoolERbRKSs
+FN:162,_ZNK3ept3apt13PackageRecord14buildEssentialEb
+FN:166,_ZNK3ept3apt13PackageRecord3tagERKSt3setISsSt4lessISsESaISsEE
+DA:37,7
+DA:38,1
+DA:41,1
+DA:43,0
+DA:45,1
+DA:47,1
+DA:49,0
+DA:51,10436
+DA:53,10436
+DA:54,0
+DA:55,10436
+DA:64,1
+DA:66,7813
+DA:68,7813
+DA:70,1
+DA:72,1
+DA:74,1
+DA:76,1
+DA:78,2605
+DA:80,2605
+DA:82,1
+DA:84,1
+DA:86,1
+DA:88,1
+DA:90,1
+DA:92,1
+DA:94,1
+DA:96,1
+DA:98,1
+DA:100,1
+DA:102,1
+DA:104,1
+DA:106,1
+DA:108,1
+DA:110,1
+DA:112,1
+DA:114,1
+DA:116,1
+DA:118,1
+DA:120,1
+DA:122,1
+DA:124,1
+DA:126,1
+DA:128,1
+DA:130,1
+DA:132,1
+DA:134,2605
+DA:136,2605
+DA:138,1
+DA:140,1
+DA:142,1
+DA:144,1
+DA:146,1
+DA:148,1
+DA:150,2605
+DA:152,2605
+DA:154,1
+DA:156,1
+DA:158,1
+DA:160,1
+DA:162,1
+DA:164,1
+DA:166,2605
+DA:168,2605
+BA:41,2
+BA:41,1
+BA:41,2
+BA:41,1
+BA:41,2
+BA:41,1
+BA:41,2
+BA:41,1
+BA:41,1
+BA:41,2
+BA:41,1
+BA:41,2
+BA:45,1
+BA:45,2
+BA:45,0
+BA:45,0
+BA:45,0
+BA:45,0
+BA:45,0
+BA:45,0
+BA:45,0
+BA:45,0
+BA:45,2
+BA:45,1
+BA:53,1
+BA:53,2
+LF:64
+LH:61
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/apt/packagerecord.test.h
+FN:23,_ZStlsRSoRKSt3setISsSt4lessISsESaISsEE
+FN:42,_ZN20TestAptPackagerecord15supportedFieldsEv
+DA:23,0
+DA:25,0
+DA:27,0
+DA:28,0
+DA:30,0
+DA:31,0
+DA:42,1
+DA:74,1
+DA:76,1
+DA:78,1
+DA:80,2
+DA:81,1
+DA:82,1
+DA:83,1
+DA:84,2
+DA:85,1
+DA:86,1
+DA:87,1
+DA:88,1
+DA:89,1
+DA:90,1
+DA:91,1
+DA:92,1
+DA:93,1
+DA:94,1
+DA:95,1
+DA:96,1
+DA:97,1
+DA:98,2
+DA:99,1
+DA:100,1
+DA:107,1
+DA:108,1
+DA:115,1
+DA:116,1
+DA:118,1
+DA:119,1
+DA:120,2
+DA:121,2
+DA:122,2
+DA:123,2
+DA:124,2
+DA:125,2
+DA:126,2
+DA:127,2
+DA:128,2
+DA:129,2
+DA:130,2
+DA:131,2
+DA:132,2
+DA:133,2
+DA:134,1
+BA:25,0
+BA:25,0
+BA:27,0
+BA:27,0
+LF:52
+LH:46
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/apt/recordparser.h
+FN:88,_ZNK3ept3apt12RecordParser4sizeEv
+FN:51,_ZN3ept3apt12RecordParserC2ERKSs
+FN:39,_ZN3ept3apt12RecordParserD2Ev
+FN:73,_ZNK3ept3apt12RecordParser6lookupERKSs
+DA:39,7
+DA:51,1
+DA:73,0
+DA:88,0
+LF:4
+LH:2
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.h
+DA:86,1
+BA:86,1
+BA:86,2
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/test.h
+FN:13,_ZN8LocationD1Ev
+FN:13,_ZN8LocationC1ERKS_
+FN:17,_ZN8LocationC1EPKciSs
+FN:52,_ZlsISsER12AssertFailedS1_T_
+FN:33,_ZN12AssertFailedC1E8LocationRSo
+FN:52,_ZlsIPKcER12AssertFailedS3_T_
+FN:52,_ZlsIjER12AssertFailedS1_T_
+FN:41,_ZN12AssertFailedD1Ev
+FN:67,_Z12assert_eq_fnIjjEv8LocationT_T0_
+FN:67,_Z12assert_eq_fnISsPKcEv8LocationT_T0_
+FN:52,_ZlsIbER12AssertFailedS1_T_
+FN:67,_Z12assert_eq_fnIbbEv8LocationT_T0_
+FN:52,_ZlsISt3setISsSt4lessISsESaISsEEER12AssertFailedS6_T_
+FN:67,_Z12assert_eq_fnISt3setISsSt4lessISsESaISsEES4_Ev8LocationT_T0_
+DA:13,0
+DA:17,0
+DA:18,0
+DA:33,0
+DA:34,0
+DA:36,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:43,0
+DA:45,0
+DA:46,0
+DA:48,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:67,1
+DA:69,1
+DA:70,0
+DA:71,0
+DA:75,1
+BA:42,0
+BA:42,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,0
+BA:69,1
+BA:69,2
+LF:22
+LH:3
+end_of_record
+SF:/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_packagerecord.cpp
+FN:3,_Z41__static_initialization_and_destruction_0ii
+FN:3,_GLOBAL__I_ept_test_generated__home_mornfall_dev_pkg_ept_work_ept_apt_packagerecord.cpp
+FN:3,_Z36run_AptPackagerecord_supportedFieldsv
+DA:3,4
+BA:3,2
+BA:3,1
+BA:3,2
+BA:3,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED1Ev
+FN:106,_ZNSaIjED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISsEED2Ev
+FN:98,_ZNSaIjEC2Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISsEEC2Ev
+FN:100,_ZNSaISt13_Rb_tree_nodeISsEEC2ERKS1_
+FN:104,_ZNSaISsEC1ISt13_Rb_tree_nodeISsEEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:104,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:7
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:392,_ZNSs10_S_compareEjj
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:1941,_ZNKSs7compareERKSs
+FN:2238,_ZStltIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2162,0
+DA:2165,0
+DA:2188,0
+DA:2189,0
+DA:2238,0
+DA:2239,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+BA:1948,0
+BA:1948,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:68
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:188,_ZSt3minIjERKT_S2_S2_
+FN:268,_ZNSt12__niter_baseISt23_Rb_tree_const_iteratorISsELb0EE3__bES1_
+FN:792,_ZNSt7__equalILb0EE5equalISt23_Rb_tree_const_iteratorISsES3_EEbT_S4_T0_
+FN:815,_ZSt11__equal_auxISt23_Rb_tree_const_iteratorISsES1_EbT_S2_T0_
+FN:944,_ZSt5equalISt23_Rb_tree_const_iteratorISsES1_EbT_S2_T0_
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:268,0
+DA:269,0
+DA:792,1
+DA:794,15
+DA:795,14
+DA:796,0
+DA:797,1
+DA:815,1
+DA:822,1
+DA:824,1
+DA:944,1
+DA:956,1
+BA:193,0
+BA:193,0
+BA:794,2
+BA:794,2
+BA:795,1
+BA:795,2
+LF:16
+LH:9
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:97,_ZSt8_DestroyIPjEvT_S1_
+FN:126,_ZSt8_DestroyIPjjEvT_S1_RSaIT0_E
+DA:97,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:469,_ZNKSt9_IdentityISsEclERKSs
+FN:229,_ZNKSt4lessISsEclERKSsS2_
+DA:229,0
+DA:230,0
+DA:469,0
+DA:470,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:166,0
+DA:167,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorISsEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorISsEbEC1ERKS1_RKb
+DA:88,0
+DA:89,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:270,_ZNKSt3setISsSt4lessISsESaISsEE3endEv
+FN:261,_ZNKSt3setISsSt4lessISsESaISsEE5beginEv
+FN:141,_ZNSt3setISsSt4lessISsESaISsEEC1Ev
+FN:93,_ZNSt3setISsSt4lessISsESaISsEED1Ev
+FN:378,_ZNSt3setISsSt4lessISsESaISsEE6insertERKSs
+FN:193,_ZNSt3setISsSt4lessISsESaISsEEC1ERKS3_
+FN:596,_ZSteqISsSt4lessISsESaISsEEbRKSt3setIT_T0_T1_ES9_
+DA:93,0
+DA:141,0
+DA:142,0
+DA:193,0
+DA:194,0
+DA:261,0
+DA:262,0
+DA:270,0
+DA:271,0
+DA:378,0
+DA:381,0
+DA:382,0
+DA:596,1
+DA:597,1
+LF:14
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:103,_ZNSt18_Rb_tree_node_base10_S_minimumEPS_
+FN:117,_ZNSt18_Rb_tree_node_base10_S_maximumEPS_
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISsEneERKS0_
+FN:285,_ZNKSt23_Rb_tree_const_iteratorISsEeqERKS0_
+FN:247,_ZNKSt23_Rb_tree_const_iteratorISsEdeEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorISsEC1ERKSt17_Rb_tree_iteratorISsE
+FN:452,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:347,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE21_M_get_Node_allocatorEv
+FN:432,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_rootEv
+FN:456,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:463,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_M_endEv
+FN:428,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_S_minimumEPSt18_Rb_tree_node_base
+FN:436,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_leftmostEv
+FN:511,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_S_maximumEPSt18_Rb_tree_node_base
+FN:444,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE12_M_rightmostEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorISsEC1EPKSt13_Rb_tree_nodeISsE
+FN:614,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE3endEv
+FN:603,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:487,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPSt18_Rb_tree_node_base
+FN:168,_ZNSt17_Rb_tree_iteratorISsEC1EPSt13_Rb_tree_nodeISsE
+FN:596,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISsEeqERKS0_
+FN:415,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:398,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:491,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPKSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt13_Rb_tree_nodeISsE
+FN:475,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt13_Rb_tree_nodeISsE
+FN:495,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt18_Rb_tree_node_base
+FN:641,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE4sizeEv
+FN:403,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEC1Ev
+FN:408,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EEC1ERKS3_RKSaISt13_Rb_tree_nodeISsEE
+FN:351,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13get_allocatorEv
+FN:360,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_put_nodeEPSt13_Rb_tree_nodeISsE
+FN:388,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE15_M_destroy_nodeEPSt13_Rb_tree_nodeISsE
+FN:936,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_eraseEPSt13_Rb_tree_nodeISsE
+FN:584,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEED1Ev
+FN:195,_ZNSt17_Rb_tree_iteratorISsEmmEv
+FN:356,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE14_M_create_nodeERKSs
+FN:846,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_M_insert_EPKSt18_Rb_tree_node_baseS8_RKSs
+FN:1133,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE16_M_insert_uniqueERKSs
+FN:378,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_M_clone_nodeEPKSt13_Rb_tree_nodeISsE
+FN:900,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_copyEPKSt13_Rb_tree_nodeISsEPS7_
+FN:568,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEC1ERKS5_
+FN:255,_ZNSt23_Rb_tree_const_iteratorISsEppEv
+FN:745,_ZSteqISsSsSt9_IdentityISsESt4lessISsESaISsEEbRKSt8_Rb_treeIT_T0_T1_T2_T3_ESD_
+DA:103,0
+DA:105,0
+DA:106,0
+DA:117,0
+DA:119,0
+DA:120,0
+DA:168,0
+DA:169,0
+DA:195,0
+DA:197,0
+DA:198,0
+DA:210,0
+DA:211,0
+DA:240,0
+DA:241,0
+DA:243,0
+DA:244,0
+DA:247,0
+DA:248,0
+DA:255,0
+DA:257,0
+DA:258,0
+DA:285,0
+DA:286,0
+DA:289,0
+DA:290,0
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:356,0
+DA:357,0
+DA:360,0
+DA:361,0
+DA:364,0
+DA:366,0
+DA:368,0
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,0
+DA:378,0
+DA:380,0
+DA:381,0
+DA:382,0
+DA:383,0
+DA:384,0
+DA:388,0
+DA:390,0
+DA:391,0
+DA:392,0
+DA:398,0
+DA:403,0
+DA:405,0
+DA:406,0
+DA:408,0
+DA:410,0
+DA:411,0
+DA:415,0
+DA:417,0
+DA:418,0
+DA:419,0
+DA:420,0
+DA:421,0
+DA:428,0
+DA:429,0
+DA:432,0
+DA:433,0
+DA:436,0
+DA:437,0
+DA:444,0
+DA:445,0
+DA:452,0
+DA:453,0
+DA:456,0
+DA:459,0
+DA:463,0
+DA:464,0
+DA:471,0
+DA:472,0
+DA:475,0
+DA:476,0
+DA:479,0
+DA:480,0
+DA:483,0
+DA:484,0
+DA:487,0
+DA:488,0
+DA:491,0
+DA:492,0
+DA:495,0
+DA:496,0
+DA:499,0
+DA:500,0
+DA:503,0
+DA:504,0
+DA:511,0
+DA:512,0
+DA:562,0
+DA:568,0
+DA:569,0
+DA:571,0
+DA:573,0
+DA:574,0
+DA:575,0
+DA:576,0
+DA:578,0
+DA:584,0
+DA:585,0
+DA:596,0
+DA:599,0
+DA:603,0
+DA:606,0
+DA:614,0
+DA:617,0
+DA:641,0
+DA:642,0
+DA:745,1
+DA:748,1
+DA:846,0
+DA:850,0
+DA:852,0
+DA:854,0
+DA:857,0
+DA:858,0
+DA:900,0
+DA:903,0
+DA:904,0
+DA:908,0
+DA:909,0
+DA:910,0
+DA:911,0
+DA:913,0
+DA:915,0
+DA:916,0
+DA:917,0
+DA:918,0
+DA:919,0
+DA:920,0
+DA:921,0
+DA:924,0
+DA:926,0
+DA:927,0
+DA:929,0
+DA:936,0
+DA:939,0
+DA:941,0
+DA:942,0
+DA:943,0
+DA:944,0
+DA:946,0
+DA:1133,0
+DA:1135,0
+DA:1136,0
+DA:1137,0
+DA:1138,0
+DA:1140,0
+DA:1141,0
+DA:1142,0
+DA:1144,0
+DA:1145,0
+DA:1147,0
+DA:1148,0
+DA:1150,0
+DA:1152,0
+DA:1153,0
+DA:1154,0
+BA:105,0
+BA:105,0
+BA:119,0
+BA:119,0
+BA:571,0
+BA:571,0
+BA:748,2
+BA:748,1
+BA:748,2
+BA:748,1
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:908,0
+BA:908,0
+BA:913,0
+BA:913,0
+BA:918,0
+BA:918,0
+BA:939,0
+BA:939,0
+BA:1138,0
+BA:1138,0
+BA:1142,0
+BA:1142,0
+BA:1145,0
+BA:1145,0
+BA:1147,0
+BA:1147,0
+BA:1152,0
+BA:1152,0
+LF:167
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:484,_ZNKSt6vectorIjSaIjEE4sizeEv
+FN:97,_ZNSt12_Vector_baseIjSaIjEE19_M_get_Tp_allocatorEv
+FN:79,_ZNSt12_Vector_baseIjSaIjEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseIjSaIjEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIjSaIjEEC2Ev
+FN:213,_ZNSt6vectorIjSaIjEEC1Ev
+FN:147,_ZNSt12_Vector_baseIjSaIjEE13_M_deallocateEPjj
+FN:135,_ZNSt12_Vector_baseIjSaIjEED2Ev
+FN:299,_ZNSt6vectorIjSaIjEED1Ev
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:484,0
+DA:485,0
+BA:149,0
+BA:149,0
+LF:22
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIjED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIjEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEEC2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEEC2ERKS3_
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8max_sizeEv
+FN:118,_ZN9__gnu_cxx13new_allocatorISsE7destroyEPSs
+FN:97,_ZN9__gnu_cxx13new_allocatorIjE10deallocateEPjj
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE10deallocateEPS2_j
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8allocateEjPKv
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+DA:118,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:195,_ZNSolsEj
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:177,_ZNSolsEb
+DA:95,0
+DA:112,0
+DA:117,0
+DA:177,0
+DA:178,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:402,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:431,_ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:450,_ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:402,0
+DA:403,0
+DA:404,0
+DA:431,0
+DA:432,0
+DA:450,0
+DA:451,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+BA:432,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/expression.cc
+FN:30,_ZNK7tagcoll10ExpressionclISt3setIN3ept7debtags3TagESt4lessIS5_ESaIS5_EEEEbRKT_
+DA:30,12
+DA:32,12
+DA:33,48
+DA:35,36
+DA:36,12
+BA:33,2
+BA:33,2
+LF:5
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISsEED2Ev
+FN:100,_ZNSaIcEC1ERKS_
+FN:98,_ZNSaISt13_Rb_tree_nodeISsEEC2Ev
+FN:106,_ZNSaISsED1Ev
+FN:104,_ZNSaISsEC1ISt13_Rb_tree_nodeISsEEERKSaIT_E
+DA:98,0
+DA:100,0
+DA:101,0
+DA:104,0
+DA:106,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:277,_ZNKSs7_M_dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:1551,_ZNKSs13get_allocatorEv
+FN:606,_ZNKSs4sizeEv
+FN:1544,_ZNKSs4dataEv
+FN:392,_ZNSs10_S_compareEjj
+FN:1941,_ZNKSs7compareERKSs
+FN:2238,_ZStltIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+DA:178,0
+DA:183,0
+DA:184,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:493,0
+DA:494,0
+DA:606,0
+DA:607,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2238,0
+DA:2239,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:1948,0
+BA:1948,0
+LF:34
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:257,0
+DA:258,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:188,_ZSt3minIjERKT_S2_S2_
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+BA:193,0
+BA:193,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:469,_ZNKSt9_IdentityISsEclERKSs
+FN:229,_ZNKSt4lessISsEclERKSsS2_
+DA:229,0
+DA:230,0
+DA:469,0
+DA:470,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorISsEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorISsEbEC1ERKS1_RKb
+DA:88,0
+DA:89,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:261,_ZNKSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE5beginEv
+FN:270,_ZNKSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE3endEv
+FN:141,_ZNSt3setISsSt4lessISsESaISsEEC1Ev
+FN:378,_ZNSt3setISsSt4lessISsESaISsEE6insertERKSs
+FN:93,_ZNSt3setISsSt4lessISsESaISsEED1Ev
+DA:93,0
+DA:141,0
+DA:142,0
+DA:261,0
+DA:262,0
+DA:270,0
+DA:271,0
+DA:378,0
+DA:381,0
+DA:382,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:289,_ZNKSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEneERKS3_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEptEv
+FN:452,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorISsEC1ERKSt17_Rb_tree_iteratorISsE
+FN:398,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPSt18_Rb_tree_node_base
+FN:240,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEC1EPKSt13_Rb_tree_nodeIS2_E
+FN:603,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5beginEv
+FN:614,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE3endEv
+FN:463,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorISsEC1EPSt13_Rb_tree_nodeISsE
+FN:596,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISsEeqERKS0_
+FN:415,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:471,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt13_Rb_tree_nodeISsE
+FN:475,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt13_Rb_tree_nodeISsE
+FN:495,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt18_Rb_tree_node_base
+FN:403,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEC1Ev
+FN:347,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE21_M_get_Node_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13get_allocatorEv
+FN:195,_ZNSt17_Rb_tree_iteratorISsEmmEv
+FN:356,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_get_nodeEv
+FN:360,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_put_nodeEPSt13_Rb_tree_nodeISsE
+FN:364,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE14_M_create_nodeERKSs
+FN:846,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_M_insert_EPKSt18_Rb_tree_node_baseS8_RKSs
+FN:1133,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE16_M_insert_uniqueERKSs
+FN:388,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE15_M_destroy_nodeEPSt13_Rb_tree_nodeISsE
+FN:936,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_eraseEPSt13_Rb_tree_nodeISsE
+FN:584,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEED1Ev
+FN:255,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEppEv
+DA:168,0
+DA:169,0
+DA:195,0
+DA:197,0
+DA:198,0
+DA:210,0
+DA:211,0
+DA:240,0
+DA:241,0
+DA:243,0
+DA:244,0
+DA:251,0
+DA:252,0
+DA:255,0
+DA:257,0
+DA:258,0
+DA:289,0
+DA:290,0
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:356,0
+DA:357,0
+DA:360,0
+DA:361,0
+DA:364,0
+DA:366,0
+DA:368,0
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,0
+DA:388,0
+DA:390,0
+DA:391,0
+DA:392,0
+DA:398,0
+DA:403,0
+DA:405,0
+DA:406,0
+DA:415,0
+DA:417,0
+DA:418,0
+DA:419,0
+DA:420,0
+DA:421,0
+DA:452,0
+DA:453,0
+DA:463,0
+DA:464,0
+DA:471,0
+DA:472,0
+DA:475,0
+DA:476,0
+DA:479,0
+DA:480,0
+DA:487,0
+DA:488,0
+DA:495,0
+DA:496,0
+DA:499,0
+DA:500,0
+DA:562,0
+DA:584,0
+DA:585,0
+DA:596,0
+DA:599,0
+DA:603,0
+DA:606,0
+DA:614,0
+DA:617,0
+DA:846,0
+DA:850,0
+DA:852,0
+DA:854,0
+DA:857,0
+DA:858,0
+DA:936,0
+DA:939,0
+DA:941,0
+DA:942,0
+DA:943,0
+DA:944,0
+DA:946,0
+DA:1133,0
+DA:1135,0
+DA:1136,0
+DA:1137,0
+DA:1138,0
+DA:1140,0
+DA:1141,0
+DA:1142,0
+DA:1144,0
+DA:1145,0
+DA:1147,0
+DA:1148,0
+DA:1150,0
+DA:1152,0
+DA:1153,0
+DA:1154,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:939,0
+BA:939,0
+BA:1138,0
+BA:1138,0
+BA:1142,0
+BA:1142,0
+BA:1145,0
+BA:1145,0
+BA:1147,0
+BA:1147,0
+BA:1152,0
+BA:1152,0
+LF:101
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8max_sizeEv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8allocateEjPKv
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE10deallocateEPS2_j
+FN:118,_ZN9__gnu_cxx13new_allocatorISsE7destroyEPSs
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+DA:118,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/debtags.cc
+FN:193,_ZN3ept7debtags7Debtags9sendPatchERKN7tagcoll9PatchListISsSsEE
+FN:186,_ZN3ept7debtags7Debtags9sendPatchERKN7tagcoll9PatchListISsNS0_3TagEEE
+FN:176,_ZN3ept7debtags7Debtags9sendPatchEv
+FN:143,_ZN3ept7debtags7Debtags9savePatchERKN7tagcoll9PatchListISsSsEE
+FN:169,_ZN3ept7debtags7Debtags9savePatchERKN7tagcoll9PatchListISsNS0_3TagEEE
+FN:136,_ZN3ept7debtags7Debtags9savePatchEv
+FN:87,_ZNK3ept7debtags7Debtags7changesEv
+FN:54,_ZN3ept7debtags7DebtagsC1Eb
+FN:54,_ZN3ept7debtags7DebtagsC2Eb
+DA:54,10
+DA:55,10
+DA:57,10
+DA:58,10
+DA:60,10
+DA:62,1
+DA:63,1
+DA:65,9
+DA:67,9
+DA:70,9
+DA:71,9
+DA:75,9
+DA:77,9
+DA:78,18
+DA:80,0
+DA:81,0
+DA:82,0
+DA:83,0
+DA:84,9
+DA:85,0
+DA:87,3
+DA:89,3
+DA:90,3
+DA:92,5
+DA:95,2
+DA:96,2
+DA:97,0
+DA:101,2
+DA:104,3
+DA:136,1
+DA:138,1
+DA:139,1
+DA:140,1
+DA:141,1
+DA:143,1
+DA:145,1
+DA:146,1
+DA:148,1
+DA:150,1
+DA:151,0
+DA:152,0
+DA:155,1
+DA:156,1
+DA:157,0
+DA:159,1
+DA:161,1
+DA:162,0
+DA:163,0
+DA:164,0
+DA:165,0
+DA:166,1
+DA:167,1
+DA:169,0
+DA:171,0
+DA:173,0
+DA:174,0
+DA:176,0
+DA:178,0
+DA:179,0
+DA:180,0
+DA:182,0
+DA:183,0
+DA:184,0
+DA:186,0
+DA:188,0
+DA:190,0
+DA:191,0
+DA:193,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:200,0
+DA:214,0
+DA:216,0
+DA:218,0
+DA:220,0
+DA:221,0
+DA:223,0
+DA:224,0
+DA:225,0
+DA:227,0
+BA:60,2
+BA:60,2
+BA:60,0
+BA:60,0
+BA:78,1
+BA:78,2
+BA:78,0
+BA:78,0
+BA:84,2
+BA:84,2
+BA:84,2
+BA:84,2
+BA:84,0
+BA:84,0
+BA:84,0
+BA:84,0
+BA:92,1
+BA:92,2
+BA:92,2
+BA:92,2
+BA:96,1
+BA:96,2
+BA:150,1
+BA:150,2
+BA:151,0
+BA:151,0
+BA:156,1
+BA:156,2
+BA:163,0
+BA:163,0
+BA:180,0
+BA:180,0
+BA:197,0
+BA:197,0
+BA:221,0
+BA:221,0
+BA:221,0
+BA:221,0
+LF:81
+LH:39
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/debtags.h
+FN:280,_ZN3ept7debtags7Debtags10vocabularyEv
+FN:282,_ZNK3ept7debtags7Debtags10vocabularyEv
+FN:97,_ZNK3ept7debtags7Debtags11packageByIDEi
+DA:97,0
+DA:99,0
+DA:280,0
+DA:282,0
+LF:4
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/pkgid.h
+FN:54,_ZNK3ept7debtags5PkgId4sizeEv
+FN:68,_ZNK3ept7debtags5PkgId4byIDEi
+FN:41,_ZN3ept7debtags5PkgIdD1Ev
+DA:41,0
+DA:54,0
+DA:68,0
+DA:70,0
+DA:71,0
+DA:72,0
+BA:54,0
+BA:54,0
+BA:70,0
+BA:70,0
+BA:70,0
+BA:70,0
+BA:70,0
+BA:70,0
+LF:6
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/serializer.h
+FN:201,_ZN3ept7debtags16PatchStringToIntIN7tagcoll8InserterIiiEEEC1ERNS0_5PkgIdERNS0_10VocabularyERKS4_
+FN:232,_ZN3ept7debtags16patchStringToIntIN7tagcoll8InserterIiiEEEENS0_16PatchStringToIntIT_EERNS0_5PkgIdERNS0_10VocabularyERKS6_
+FN:245,_ZN3ept7debtags16PatchIntToStringIN7tagcoll8InserterISsSsEEEC1ERNS0_5PkgIdERNS0_10VocabularyERKS4_
+FN:276,_ZN3ept7debtags16patchIntToStringIN7tagcoll8InserterISsSsEEEENS0_16PatchIntToStringIT_EERNS0_5PkgIdERNS0_10VocabularyERKS6_
+FN:248,_ZN3ept7debtags16PatchIntToStringIN7tagcoll8InserterISsSsEEEaSERKNS2_5PatchIiiEE
+FN:204,_ZN3ept7debtags16PatchStringToIntIN7tagcoll8InserterIiiEEEaSERKNS2_5PatchISsSsEE
+DA:201,0
+DA:202,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:210,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:216,0
+DA:218,0
+DA:221,0
+DA:222,0
+DA:223,0
+DA:225,0
+DA:226,0
+DA:227,0
+DA:232,0
+DA:234,0
+DA:245,0
+DA:246,0
+DA:248,0
+DA:250,0
+DA:251,0
+DA:252,0
+DA:254,0
+DA:255,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:262,0
+DA:265,0
+DA:266,0
+DA:267,0
+DA:269,0
+DA:270,0
+DA:271,0
+DA:276,0
+DA:278,0
+BA:207,0
+BA:207,0
+BA:211,0
+BA:211,0
+BA:215,0
+BA:215,0
+BA:218,0
+BA:218,0
+BA:222,0
+BA:222,0
+BA:251,0
+BA:251,0
+BA:255,0
+BA:255,0
+BA:259,0
+BA:259,0
+BA:262,0
+BA:262,0
+BA:266,0
+BA:266,0
+LF:40
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/tag.h
+FN:175,_ZN3ept7debtags3TagD1Ev
+FN:177,_ZNK3ept7debtags3TageqERKS1_
+FN:179,_ZNK3ept7debtags3TagltERKS1_
+FN:182,_ZNK3ept7debtags3Tag5validEv
+FN:242,_ZNK3ept7debtags3Tag2idEv
+DA:175,0
+DA:177,0
+DA:179,0
+DA:182,0
+DA:242,0
+LF:5
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/vocabulary.h
+FN:181,_ZNK3ept7debtags10Vocabulary8tagsByIDISt3setIiSt4lessIiESaIiEEEES3_INS0_3TagES4_IS8_ESaIS8_EERKT_
+FN:114,_ZNK3ept7debtags10Vocabulary8TagIndex2idERKSs
+FN:203,_ZNK3ept7debtags10Vocabulary9tagByNameERKSs
+DA:114,0
+DA:181,0
+DA:183,0
+DA:184,0
+DA:186,0
+DA:187,0
+DA:203,0
+BA:184,0
+BA:184,0
+LF:7
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/empty.h
+FN:64,_ZNK6wibble5EmptyISsE5beginEv
+FN:65,_ZNK6wibble5EmptyISsE3endEv
+FN:46,_ZNK6wibble5EmptyISsE14const_iteratorneERKS2_
+FN:44,_ZN6wibble5EmptyISsE14const_iteratorppEv
+FN:43,_ZNK6wibble5EmptyISsE14const_iteratorptEv
+FN:42,_ZNK6wibble5EmptyISsE14const_iteratordeEv
+FN:64,_ZNK6wibble5EmptyIiE5beginEv
+FN:65,_ZNK6wibble5EmptyIiE3endEv
+FN:46,_ZNK6wibble5EmptyIiE14const_iteratorneERKS2_
+FN:44,_ZN6wibble5EmptyIiE14const_iteratorppEv
+FN:42,_ZNK6wibble5EmptyIiE14const_iteratordeEv
+DA:42,0
+DA:43,0
+DA:44,0
+DA:46,0
+DA:64,0
+DA:65,0
+LF:6
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:263,_ZNK6wibble9exception11Consistency4typeEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:395,_ZN6wibble9exception6SystemD1Ev
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:261,_ZN6wibble9exception11ConsistencyD0Ev
+FN:261,_ZN6wibble9exception11ConsistencyD1Ev
+FN:261,_ZN6wibble9exception11ConsistencyD2Ev
+FN:265,_ZNK6wibble9exception11Consistency4descEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:109,_ZN6wibble9exception10AddContext7contextEv
+FN:117,_ZN6wibble9exception10AddContext11copyContextISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvT_
+FN:153,_ZN6wibble9exception7Context10addContextERKSs
+FN:147,_ZN6wibble9exception7ContextC2ERKSs
+FN:186,_ZN6wibble9exception7GenericC2ERKSs
+FN:259,_ZN6wibble9exception11ConsistencyC1ERKSsS3_
+FN:259,_ZN6wibble9exception11ConsistencyC2ERKSsS3_
+FN:137,_ZN6wibble9exception7ContextC2ERKS1_
+FN:180,_ZN6wibble9exception7GenericC2ERKS1_
+FN:255,_ZN6wibble9exception11ConsistencyC2ERKS1_
+DA:109,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:113,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:137,0
+DA:147,0
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:180,0
+DA:186,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:255,0
+DA:259,0
+DA:260,0
+DA:261,0
+DA:263,0
+DA:265,0
+DA:266,0
+DA:267,0
+DA:268,0
+DA:269,0
+DA:395,0
+BA:110,0
+BA:110,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:267,0
+BA:267,0
+BA:395,0
+BA:395,0
+LF:47
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/mixin.h
+FN:52,_ZN6wibble5mixin14OutputIteratorIN7tagcoll8InserterIiiEEEC2Ev
+FN:52,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags16PatchStringToIntIN7tagcoll8InserterIiiEEEEEC2Ev
+FN:52,_ZN6wibble5mixin14OutputIteratorIN7tagcoll8InserterISsSsEEEC2Ev
+FN:52,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags16PatchIntToStringIN7tagcoll8InserterISsSsEEEEEC2Ev
+FN:64,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags16PatchIntToStringIN7tagcoll8InserterISsSsEEEEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags16PatchIntToStringIN7tagcoll8InserterISsSsEEEEEppEv
+FN:52,_ZN6wibble5mixin14OutputIteratorIN7tagcoll10textformat14PatchAssemblerIN3ept7debtags16PatchStringToIntINS2_8InserterIiiEEEEEEEC2Ev
+FN:64,_ZN6wibble5mixin14OutputIteratorIN7tagcoll10textformat14PatchAssemblerIN3ept7debtags16PatchStringToIntINS2_8InserterIiiEEEEEEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN7tagcoll10textformat14PatchAssemblerIN3ept7debtags16PatchStringToIntINS2_8InserterIiiEEEEEEEppEv
+FN:64,_ZN6wibble5mixin14OutputIteratorIN7tagcoll8InserterISsSsEEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN7tagcoll8InserterISsSsEEEppEv
+FN:64,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags16PatchStringToIntIN7tagcoll8InserterIiiEEEEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags16PatchStringToIntIN7tagcoll8InserterIiiEEEEEppEv
+FN:64,_ZN6wibble5mixin14OutputIteratorIN7tagcoll8InserterIiiEEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN7tagcoll8InserterIiiEEEppEv
+DA:52,0
+DA:53,0
+DA:54,0
+DA:64,0
+DA:65,0
+LF:5
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/operators.h
+FN:115,_ZN6wibble9operatorsoRISsEERSt3setIT_St4lessIS3_ESaIS3_EES8_RKS3_
+FN:133,_ZN6wibble9operatorsoRISsEERSt3setIT_St4lessIS3_ESaIS3_EES8_RKS7_
+FN:133,_ZN6wibble9operatorsoRIN3ept7debtags3TagEEERSt3setIT_St4lessIS6_ESaIS6_EESB_RKSA_
+FN:115,_ZN6wibble9operatorsoRIiEERSt3setIT_St4lessIS3_ESaIS3_EES8_RKS3_
+FN:133,_ZN6wibble9operatorsoRIiEERSt3setIT_St4lessIS3_ESaIS3_EES8_RKS7_
+FN:183,_ZN6wibble9operatorsmIISsEERSt3setIT_St4lessIS3_ESaIS3_EES8_RKS3_
+FN:198,_ZN6wibble9operatorsmIISsSt3setISsSt4lessISsESaISsEEEERS2_IT_S3_IS7_ESaIS7_EESB_RKT0_
+FN:198,_ZN6wibble9operatorsmIIN3ept7debtags3TagESt3setIS4_St4lessIS4_ESaIS4_EEEERS5_IT_S6_ISA_ESaISA_EESE_RKT0_
+FN:183,_ZN6wibble9operatorsmIIiEERSt3setIT_St4lessIS3_ESaIS3_EES8_RKS3_
+FN:198,_ZN6wibble9operatorsmIIiSt3setIiSt4lessIiESaIiEEEERS2_IT_S3_IS7_ESaIS7_EESB_RKT0_
+FN:82,_ZN6wibble9operatorsmiIN3ept7debtags3TagEEESt3setIT_St4lessIS6_ESaIS6_EERKSA_SC_
+FN:82,_ZN6wibble9operatorsmiISsEESt3setIT_St4lessIS3_ESaIS3_EERKS7_S9_
+FN:82,_ZN6wibble9operatorsmiIiEESt3setIT_St4lessIS3_ESaIS3_EERKS7_S9_
+DA:82,4
+DA:83,4
+DA:84,4
+DA:86,0
+DA:115,0
+DA:117,0
+DA:118,0
+DA:133,0
+DA:134,0
+DA:135,0
+DA:137,0
+DA:139,0
+DA:140,0
+DA:183,0
+DA:185,0
+DA:186,0
+DA:198,0
+DA:200,0
+DA:201,0
+DA:202,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:209,0
+DA:211,0
+DA:212,0
+DA:214,0
+DA:216,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:134,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:204,0
+BA:204,0
+BA:204,0
+BA:204,0
+BA:204,0
+BA:204,0
+BA:211,0
+BA:211,0
+BA:211,0
+BA:211,0
+BA:211,0
+BA:211,0
+LF:29
+LH:3
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/singleton.h
+FN:80,_ZN6wibble9SingletonIiEC1ERKi
+FN:92,_ZN6wibble9singletonIiEENS_9SingletonIT_EERKS2_
+FN:47,_ZN6wibble9SingletonIiE14const_iteratorC1EPKi
+FN:87,_ZNK6wibble9SingletonIiE5beginEv
+FN:50,_ZN6wibble9SingletonIiE14const_iteratorC1Ev
+FN:88,_ZNK6wibble9SingletonIiE3endEv
+FN:56,_ZNK6wibble9SingletonIiE14const_iteratorneERKS2_
+FN:54,_ZN6wibble9SingletonIiE14const_iteratorppEv
+FN:52,_ZNK6wibble9SingletonIiE14const_iteratordeEv
+DA:47,0
+DA:50,0
+DA:52,0
+DA:54,0
+DA:56,0
+DA:80,0
+DA:87,0
+DA:88,0
+DA:92,0
+DA:94,0
+LF:10
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/string.h
+FN:236,_ZN6wibble3str8joinpathERKSsS2_
+DA:236,509
+DA:238,509
+DA:239,0
+DA:240,509
+DA:241,0
+DA:243,509
+DA:244,347
+DA:245,0
+DA:247,347
+DA:249,162
+DA:250,31
+DA:252,131
+BA:238,1
+BA:238,2
+BA:240,1
+BA:240,2
+BA:243,2
+BA:243,2
+BA:244,1
+BA:244,2
+BA:249,2
+BA:249,2
+LF:12
+LH:9
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeIN3ept7debtags3TagEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeIiEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISsEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsSsEEEEED2Ev
+FN:100,_ZNSaIcEC1ERKS_
+FN:100,_ZNSaIcEC2ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:106,_ZNSaISsED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2Ev
+FN:106,_ZNSaIN3ept7debtags3TagEED1Ev
+FN:100,_ZNSaISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2ERKS4_
+FN:98,_ZNSaISt13_Rb_tree_nodeIiEEC2Ev
+FN:106,_ZNSaIiED1Ev
+FN:100,_ZNSaISt13_Rb_tree_nodeIiEEC2ERKS1_
+FN:106,_ZNSaISt4pairIKiN7tagcoll5PatchIiiEEEED1Ev
+FN:100,_ZNSaISt13_Rb_tree_nodeISsEEC2ERKS1_
+FN:98,_ZNSaISsEC2Ev
+FN:104,_ZNSaISsEC1ISt13_Rb_tree_nodeISsEEERKSaIT_E
+FN:106,_ZNSaISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEED1Ev
+FN:106,_ZNSaISt4pairIKSsN7tagcoll5PatchISsSsEEEED1Ev
+FN:100,_ZNSaISsEC2ERKS_
+FN:104,_ZNSaIN3ept7debtags3TagEEC1ISt13_Rb_tree_nodeIS1_EEERKSaIT_E
+FN:104,_ZNSaIiEC1ISt13_Rb_tree_nodeIiEEERKSaIT_E
+FN:104,_ZNSaISt4pairIKiN7tagcoll5PatchIiiEEEEC1ISt13_Rb_tree_nodeIS4_EEERKSaIT_E
+FN:98,_ZNSaISt13_Rb_tree_nodeISsEEC2Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEEC2Ev
+FN:100,_ZNSaISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEEC2ERKS7_
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEEC2Ev
+FN:104,_ZNSaISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEC1ISt13_Rb_tree_nodeIS7_EEERKSaIT_E
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsSsEEEEEC2Ev
+FN:104,_ZNSaISt4pairIKSsN7tagcoll5PatchISsSsEEEEC1ISt13_Rb_tree_nodeIS4_EEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,3
+DA:101,3
+DA:104,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:7
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:1544,_ZNKSs4dataEv
+FN:701,_ZNKSsixEj
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:1551,_ZNKSs13get_allocatorEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:392,_ZNSs10_S_compareEjj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:501,_ZNSsaSERKSs
+FN:1941,_ZNKSs7compareERKSs
+FN:2238,_ZStltIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+FN:2136,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S3_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:701,0
+DA:704,0
+DA:835,0
+DA:838,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1923,0
+DA:1925,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2136,0
+DA:2140,0
+DA:2141,0
+DA:2142,0
+DA:2162,0
+DA:2165,0
+DA:2238,0
+DA:2239,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:308,0
+BA:308,0
+BA:341,0
+BA:341,0
+BA:1948,0
+BA:1948,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:94
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+FN:668,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+DA:668,0
+DA:673,0
+DA:674,0
+DA:675,0
+DA:676,0
+DA:677,0
+DA:678,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:23
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algo.h
+FN:5300,_ZSt14set_differenceISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEES4_St15insert_iteratorISt3setIS3_St4lessIS3_ESaIS3_EEEET1_T_SD_T0_SE_SC_
+FN:5300,_ZSt14set_differenceISt23_Rb_tree_const_iteratorISsES1_St15insert_iteratorISt3setISsSt4lessISsESaISsEEEET1_T_SA_T0_SB_S9_
+FN:5300,_ZSt14set_differenceISt23_Rb_tree_const_iteratorIiES1_St15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T_SA_T0_SB_S9_
+DA:5300,4
+DA:5317,8
+DA:5318,0
+DA:5320,0
+DA:5321,0
+DA:5322,0
+DA:5324,0
+DA:5325,0
+DA:5328,0
+DA:5329,0
+DA:5331,4
+BA:5317,2
+BA:5317,2
+BA:5317,1
+BA:5317,2
+BA:5317,1
+BA:5317,2
+BA:5317,0
+BA:5317,0
+BA:5317,0
+BA:5317,0
+BA:5317,0
+BA:5317,0
+BA:5317,0
+BA:5317,0
+BA:5317,0
+BA:5317,0
+BA:5317,0
+BA:5317,0
+BA:5318,0
+BA:5318,0
+BA:5318,0
+BA:5318,0
+BA:5318,0
+BA:5318,0
+BA:5324,0
+BA:5324,0
+BA:5324,0
+BA:5324,0
+BA:5324,0
+BA:5324,0
+LF:11
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:286,_ZNSt12__miter_baseISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseISt15insert_iteratorISt3setIN3ept7debtags3TagESt4lessIS4_ESaIS4_EEELb0EE3__bES9_
+FN:286,_ZNSt12__miter_baseISt23_Rb_tree_const_iteratorIiELb0EE3__bES1_
+FN:188,_ZSt3minIjERKT_S2_S2_
+FN:286,_ZNSt12__miter_baseIN6wibble9SingletonIiE14const_iteratorELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIN6wibble5EmptyIiE14const_iteratorELb0EE3__bES3_
+FN:268,_ZNSt12__niter_baseISt23_Rb_tree_const_iteratorIiELb0EE3__bES1_
+FN:268,_ZNSt12__niter_baseISt15insert_iteratorISt3setIiSt4lessIiESaIiEEELb0EE3__bES6_
+FN:268,_ZNSt12__niter_baseIN6wibble9SingletonIiE14const_iteratorELb0EE3__bES3_
+FN:268,_ZNSt12__niter_baseIN6wibble5EmptyIiE14const_iteratorELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseISt23_Rb_tree_const_iteratorISsELb0EE3__bES1_
+FN:268,_ZNSt12__niter_baseISt23_Rb_tree_const_iteratorISsELb0EE3__bES1_
+FN:268,_ZNSt12__niter_baseISt15insert_iteratorISt3setISsSt4lessISsESaISsEEELb0EE3__bES6_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET0_T_SA_S9_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt26bidirectional_iterator_tagE8__copy_mISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEESt15insert_iteratorISt3setIS6_St4lessIS6_ESaIS6_EEEEET0_T_SG_SF_
+FN:385,_ZSt13__copy_move_aILb0ESt23_Rb_tree_const_iteratorIN3ept7debtags3TagEESt15insert_iteratorISt3setIS3_St4lessIS3_ESaIS3_EEEET1_T0_SD_SC_
+FN:430,_ZSt14__copy_move_a2ILb0ESt23_Rb_tree_const_iteratorIN3ept7debtags3TagEESt15insert_iteratorISt3setIS3_St4lessIS3_ESaIS3_EEEET1_T0_SD_SC_
+FN:456,_ZSt4copyISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEESt15insert_iteratorISt3setIS3_St4lessIS3_ESaIS3_EEEET0_T_SD_SC_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt26bidirectional_iterator_tagE8__copy_mISt23_Rb_tree_const_iteratorISsESt15insert_iteratorISt3setISsSt4lessISsESaISsEEEEET0_T_SD_SC_
+FN:385,_ZSt13__copy_move_aILb0ESt23_Rb_tree_const_iteratorISsESt15insert_iteratorISt3setISsSt4lessISsESaISsEEEET1_T0_SA_S9_
+FN:430,_ZSt14__copy_move_a2ILb0ESt23_Rb_tree_const_iteratorISsESt15insert_iteratorISt3setISsSt4lessISsESaISsEEEET1_T0_SA_S9_
+FN:456,_ZSt4copyISt23_Rb_tree_const_iteratorISsESt15insert_iteratorISt3setISsSt4lessISsESaISsEEEET0_T_SA_S9_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt20forward_iterator_tagE8__copy_mIN6wibble9SingletonIiE14const_iteratorESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEET0_T_SF_SE_
+FN:385,_ZSt13__copy_move_aILb0EN6wibble9SingletonIiE14const_iteratorESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T0_SC_SB_
+FN:430,_ZSt14__copy_move_a2ILb0EN6wibble9SingletonIiE14const_iteratorESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T0_SC_SB_
+FN:456,_ZSt4copyIN6wibble9SingletonIiE14const_iteratorESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET0_T_SC_SB_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt20forward_iterator_tagE8__copy_mIN6wibble5EmptyIiE14const_iteratorESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEET0_T_SF_SE_
+FN:385,_ZSt13__copy_move_aILb0EN6wibble5EmptyIiE14const_iteratorESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T0_SC_SB_
+FN:430,_ZSt14__copy_move_a2ILb0EN6wibble5EmptyIiE14const_iteratorESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T0_SC_SB_
+FN:456,_ZSt4copyIN6wibble5EmptyIiE14const_iteratorESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET0_T_SC_SB_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt26bidirectional_iterator_tagE8__copy_mISt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEET0_T_SD_SC_
+FN:385,_ZSt13__copy_move_aILb0ESt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T0_SA_S9_
+FN:430,_ZSt14__copy_move_a2ILb0ESt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T0_SA_S9_
+FN:456,_ZSt4copyISt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET0_T_SA_S9_
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:309,0
+DA:311,0
+DA:312,0
+DA:313,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:193,0
+BA:193,0
+BA:215,0
+BA:215,0
+BA:311,0
+BA:311,0
+BA:311,0
+BA:311,0
+BA:311,0
+BA:311,0
+BA:311,0
+BA:311,0
+BA:311,0
+BA:311,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+LF:42
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:469,_ZNKSt9_IdentityIN3ept7debtags3TagEEclERKS2_
+FN:229,_ZNKSt4lessIN3ept7debtags3TagEEclERKS2_S5_
+FN:469,_ZNKSt9_IdentityIiEclERKi
+FN:229,_ZNKSt4lessIiEclERKiS2_
+FN:469,_ZNKSt9_IdentityISsEclERKSs
+FN:482,_ZNKSt10_Select1stISt4pairIKiN7tagcoll5PatchIiiEEEEclERKS5_
+FN:482,_ZNKSt10_Select1stISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEclERKS8_
+FN:482,_ZNKSt10_Select1stISt4pairIKSsN7tagcoll5PatchISsSsEEEEclERKS5_
+FN:229,_ZNKSt4lessISsEclERKSsS2_
+DA:229,0
+DA:230,0
+DA:469,0
+DA:470,0
+DA:482,0
+DA:483,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:572,_ZNSt15insert_iteratorISt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EEEC1ERS7_St23_Rb_tree_const_iteratorIS3_E
+FN:645,_ZSt8inserterISt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EESt23_Rb_tree_const_iteratorIS3_EESt15insert_iteratorIT_ERSB_T0_
+FN:618,_ZNSt15insert_iteratorISt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EEEdeEv
+FN:623,_ZNSt15insert_iteratorISt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EEEppEv
+FN:781,_ZN9__gnu_cxxneIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEppEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEdeEv
+FN:572,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEC1ERS4_St23_Rb_tree_const_iteratorIiE
+FN:645,_ZSt8inserterISt3setIiSt4lessIiESaIiEESt23_Rb_tree_const_iteratorIiEESt15insert_iteratorIT_ERS8_T0_
+FN:618,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEdeEv
+FN:623,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEppEv
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:572,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEC1ERS4_St23_Rb_tree_const_iteratorISsE
+FN:645,_ZSt8inserterISt3setISsSt4lessISsESaISsEESt23_Rb_tree_const_iteratorISsEESt15insert_iteratorIT_ERS8_T0_
+FN:618,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEdeEv
+FN:623,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEppEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+FN:599,_ZNSt15insert_iteratorISt3setIN3ept7debtags3TagESt4lessIS3_ESaIS3_EEEaSERKS3_
+FN:599,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEaSERKSs
+FN:599,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEaSERKi
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:572,0
+DA:573,0
+DA:599,0
+DA:601,0
+DA:602,0
+DA:603,0
+DA:618,0
+DA:619,0
+DA:623,0
+DA:624,0
+DA:645,0
+DA:648,0
+DA:683,0
+DA:695,0
+DA:696,0
+DA:703,0
+DA:705,0
+DA:706,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+DA:781,0
+DA:782,0
+LF:34
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:111,_ZNSt8iteratorISt20forward_iterator_tagKivPS1_RS1_EC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_map.h
+FN:384,_ZNKSt3mapISsN7tagcoll5PatchISsSsEESt4lessISsESaISt4pairIKSsS2_EEE5emptyEv
+FN:275,_ZNSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE5beginEv
+FN:293,_ZNSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE3endEv
+FN:284,_ZNKSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE5beginEv
+FN:302,_ZNKSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE3endEv
+FN:293,_ZNSt3mapISsN7tagcoll5PatchISsN3ept7debtags3TagEEESt4lessISsESaISt4pairIKSsS5_EEE3endEv
+FN:614,_ZNSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE4findERS6_
+FN:155,_ZNSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEEC2Ev
+FN:155,_ZNSt3mapISsN7tagcoll5PatchISsN3ept7debtags3TagEEESt4lessISsESaISt4pairIKSsS5_EEEC2Ev
+FN:155,_ZNSt3mapISsN7tagcoll5PatchISsSsEESt4lessISsESaISt4pairIKSsS2_EEEC2Ev
+FN:293,_ZNSt3mapISsN7tagcoll5PatchISsSsEESt4lessISsESaISt4pairIKSsS2_EEE3endEv
+FN:92,_ZNSt3mapISsN7tagcoll5PatchISsSsEESt4lessISsESaISt4pairIKSsS2_EEED2Ev
+FN:92,_ZNSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEED2Ev
+FN:581,_ZNSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE5clearEv
+FN:92,_ZNSt3mapISsN7tagcoll5PatchISsN3ept7debtags3TagEEESt4lessISsESaISt4pairIKSsS5_EEED2Ev
+FN:175,_ZNSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEEC2ERKS9_
+FN:614,_ZNSt3mapISsN7tagcoll5PatchISsSsEESt4lessISsESaISt4pairIKSsS2_EEE4findERS6_
+FN:614,_ZNSt3mapISsN7tagcoll5PatchISsN3ept7debtags3TagEEESt4lessISsESaISt4pairIKSsS5_EEE4findERS9_
+FN:468,_ZNSt3mapISsN7tagcoll5PatchISsSsEESt4lessISsESaISt4pairIKSsS2_EEE6insertERKS7_
+FN:468,_ZNSt3mapISsN7tagcoll5PatchISsN3ept7debtags3TagEEESt4lessISsESaISt4pairIKSsS5_EEE6insertERKSA_
+FN:468,_ZNSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE6insertERKS7_
+DA:92,0
+DA:155,0
+DA:156,0
+DA:175,3
+DA:176,3
+DA:275,0
+DA:276,0
+DA:284,0
+DA:285,0
+DA:293,0
+DA:294,0
+DA:302,0
+DA:303,0
+DA:384,0
+DA:385,0
+DA:468,0
+DA:469,0
+DA:581,0
+DA:582,0
+DA:614,0
+DA:615,0
+LF:21
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEbEC1ERKS4_RKb
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorIiEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIN3ept7debtags3TagEEbEC1ERKS4_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIiEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorISsEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorISsEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKiN7tagcoll5PatchIiiEEEEbEC1ERKS6_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEbEC1ERKS9_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIiES1_EC1ERKS1_S4_
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKSsN7tagcoll5PatchISsSsEEEEbEC1ERKS6_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorISsES1_EC1ERKS1_S4_
+FN:73,_ZNSt4pairIKSsN7tagcoll5PatchISsSsEEED1Ev
+FN:73,_ZNSt4pairISsN7tagcoll5PatchISsSsEEED1Ev
+FN:73,_ZNSt4pairISt3setISsSt4lessISsESaISsEEN6wibble5EmptyISsEEED1Ev
+FN:73,_ZNSt4pairISt3setISsSt4lessISsESaISsEES4_ED1Ev
+FN:73,_ZNSt4pairIKiN7tagcoll5PatchIiiEEED1Ev
+FN:73,_ZNSt4pairIiN7tagcoll5PatchIiiEEED1Ev
+FN:73,_ZNSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEED1Ev
+FN:73,_ZNSt4pairISsN7tagcoll5PatchISsN3ept7debtags3TagEEEED1Ev
+FN:88,_ZNSt4pairISsN7tagcoll5PatchISsSsEEEC1ERKSsRKS2_
+FN:218,_ZSt9make_pairISsN7tagcoll5PatchISsSsEEESt4pairIT_T0_ES4_S5_
+FN:104,_ZNSt4pairIKSsN7tagcoll5PatchISsSsEEEC1ISsS3_EERKS_IT_T0_E
+FN:73,_ZNSt4pairIKSsN7tagcoll5PatchISsSsEEEC1ERKS4_
+FN:88,_ZNSt4pairISt3setISsSt4lessISsESaISsEEN6wibble5EmptyISsEEEC1ERKS4_RKS7_
+FN:218,_ZSt9make_pairISt3setISsSt4lessISsESaISsEEN6wibble5EmptyISsEEESt4pairIT_T0_ES9_SA_
+FN:88,_ZNSt4pairISt3setISsSt4lessISsESaISsEES4_EC1ERKS4_S7_
+FN:218,_ZSt9make_pairISt3setISsSt4lessISsESaISsEES4_ESt4pairIT_T0_ES6_S7_
+FN:73,_ZNSt4pairIKiN7tagcoll5PatchIiiEEEC1ERKS4_
+FN:88,_ZNSt4pairIiN7tagcoll5PatchIiiEEEC1ERKiRKS2_
+FN:218,_ZSt9make_pairIiN7tagcoll5PatchIiiEEESt4pairIT_T0_ES4_S5_
+FN:104,_ZNSt4pairIKiN7tagcoll5PatchIiiEEEC1IiS3_EERKS_IT_T0_E
+FN:88,_ZNSt4pairISsN7tagcoll5PatchISsN3ept7debtags3TagEEEEC1ERKSsRKS5_
+FN:218,_ZSt9make_pairISsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt4pairIT_T0_ES7_S8_
+FN:104,_ZNSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEC1ISsS6_EERKS_IT_T0_E
+FN:73,_ZNSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEC1ERKS7_
+DA:73,42290
+DA:88,42290
+DA:89,42290
+DA:104,0
+DA:106,0
+DA:218,42290
+DA:219,42290
+LF:7
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:331,_ZNKSt3setIiSt4lessIiESaIiEE5emptyEv
+FN:270,_ZNKSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE3endEv
+FN:261,_ZNKSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE5beginEv
+FN:331,_ZNKSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE5emptyEv
+FN:261,_ZNKSt3setISsSt4lessISsESaISsEE5beginEv
+FN:270,_ZNKSt3setISsSt4lessISsESaISsEE3endEv
+FN:261,_ZNKSt3setIiSt4lessIiESaIiEE5beginEv
+FN:270,_ZNKSt3setIiSt4lessIiESaIiEE3endEv
+FN:331,_ZNKSt3setISsSt4lessISsESaISsEE5emptyEv
+FN:141,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EEC1Ev
+FN:141,_ZNSt3setIiSt4lessIiESaIiEEC1Ev
+FN:141,_ZNSt3setISsSt4lessISsESaISsEEC1Ev
+FN:93,_ZNSt3setISsSt4lessISsESaISsEED1Ev
+FN:471,_ZNSt3setISsSt4lessISsESaISsEE5clearEv
+FN:93,_ZNSt3setIiSt4lessIiESaIiEED1Ev
+FN:93,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EED1Ev
+FN:193,_ZNSt3setISsSt4lessISsESaISsEEC1ERKS3_
+FN:216,_ZNSt3setISsSt4lessISsESaISsEEaSERKS3_
+FN:193,_ZNSt3setIiSt4lessIiESaIiEEC1ERKS3_
+FN:216,_ZNSt3setIiSt4lessIiESaIiEEaSERKS3_
+FN:193,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EEC1ERKS6_
+FN:216,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EEaSERKS6_
+FN:378,_ZNSt3setISsSt4lessISsESaISsEE6insertERKSs
+FN:378,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE6insertERKS2_
+FN:378,_ZNSt3setIiSt4lessIiESaIiEE6insertERKi
+FN:446,_ZNSt3setISsSt4lessISsESaISsEE5eraseERKSs
+FN:431,_ZNSt3setISsSt4lessISsESaISsEE5eraseESt23_Rb_tree_const_iteratorISsE
+FN:431,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE5eraseESt23_Rb_tree_const_iteratorIS2_E
+FN:446,_ZNSt3setIiSt4lessIiESaIiEE5eraseERKi
+FN:431,_ZNSt3setIiSt4lessIiESaIiEE5eraseESt23_Rb_tree_const_iteratorIiE
+FN:405,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE6insertESt23_Rb_tree_const_iteratorIS2_ERKS2_
+FN:405,_ZNSt3setISsSt4lessISsESaISsEE6insertESt23_Rb_tree_const_iteratorISsERKSs
+FN:405,_ZNSt3setIiSt4lessIiESaIiEE6insertESt23_Rb_tree_const_iteratorIiERKi
+DA:93,0
+DA:141,0
+DA:142,0
+DA:193,0
+DA:194,0
+DA:216,0
+DA:218,0
+DA:219,0
+DA:261,0
+DA:262,0
+DA:270,0
+DA:271,0
+DA:331,0
+DA:332,0
+DA:378,0
+DA:381,0
+DA:382,0
+DA:405,0
+DA:406,0
+DA:431,0
+DA:432,0
+DA:446,0
+DA:447,0
+DA:471,0
+DA:472,0
+LF:25
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:103,_ZNSt18_Rb_tree_node_base10_S_minimumEPS_
+FN:117,_ZNSt18_Rb_tree_node_base10_S_maximumEPS_
+FN:289,_ZNKSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEneERKS3_
+FN:243,_ZNSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEC1ERKSt17_Rb_tree_iteratorIS5_E
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEneERKS6_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEptEv
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISsEneERKS0_
+FN:285,_ZNKSt23_Rb_tree_const_iteratorISsEeqERKS0_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorISsEptEv
+FN:452,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEC1ERKSt17_Rb_tree_iteratorIS2_E
+FN:452,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorIiEC1ERKSt17_Rb_tree_iteratorIiE
+FN:289,_ZNKSt23_Rb_tree_const_iteratorIiEneERKS0_
+FN:247,_ZNKSt23_Rb_tree_const_iteratorIiEdeEv
+FN:452,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEeqERKS6_
+FN:176,_ZNKSt17_Rb_tree_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEptEv
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE8_M_beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEeqERKS9_
+FN:176,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEptEv
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE8_M_beginEv
+FN:637,_ZNKSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE5emptyEv
+FN:398,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:463,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorIN3ept7debtags3TagEEC1EPSt13_Rb_tree_nodeIS2_E
+FN:596,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorIN3ept7debtags3TagEEeqERKS3_
+FN:347,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE21_M_get_Node_allocatorEv
+FN:432,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_M_rootEv
+FN:456,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_beginEv
+FN:428,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE10_S_minimumEPSt18_Rb_tree_node_base
+FN:436,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE11_M_leftmostEv
+FN:511,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE10_S_maximumEPSt18_Rb_tree_node_base
+FN:444,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE12_M_rightmostEv
+FN:398,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_S_leftEPSt18_Rb_tree_node_base
+FN:347,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE21_M_get_Node_allocatorEv
+FN:432,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_M_rootEv
+FN:456,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_beginEv
+FN:463,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_M_endEv
+FN:428,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_S_minimumEPSt18_Rb_tree_node_base
+FN:436,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_leftmostEv
+FN:511,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_S_maximumEPSt18_Rb_tree_node_base
+FN:444,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE12_M_rightmostEv
+FN:168,_ZNSt17_Rb_tree_iteratorIiEC1EPSt13_Rb_tree_nodeIiE
+FN:596,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorIiEeqERKS0_
+FN:398,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE13_Rb_tree_implIS9_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:637,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5emptyEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorISsEC1ERKSt17_Rb_tree_iteratorISsE
+FN:398,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPSt18_Rb_tree_node_base
+FN:347,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE21_M_get_Node_allocatorEv
+FN:432,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_rootEv
+FN:456,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:463,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_M_endEv
+FN:428,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_S_minimumEPSt18_Rb_tree_node_base
+FN:436,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_leftmostEv
+FN:511,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_S_maximumEPSt18_Rb_tree_node_base
+FN:444,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE12_M_rightmostEv
+FN:641,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE4sizeEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEC1EPKSt13_Rb_tree_nodeIS2_E
+FN:614,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE3endEv
+FN:603,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5beginEv
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE13_Rb_tree_implISC_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEC1EPSt13_Rb_tree_nodeIS5_E
+FN:596,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE5beginEv
+FN:610,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE3endEv
+FN:637,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5emptyEv
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE13_Rb_tree_implIS9_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:240,_ZNSt23_Rb_tree_const_iteratorISsEC1EPKSt13_Rb_tree_nodeISsE
+FN:603,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:614,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE3endEv
+FN:415,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EE13_M_initializeEv
+FN:471,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_valueEPKSt13_Rb_tree_nodeIS2_E
+FN:475,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_S_keyEPKSt13_Rb_tree_nodeIS2_E
+FN:495,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:491,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_rightEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_S_leftEPKSt18_Rb_tree_node_base
+FN:415,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:491,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_rightEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_S_leftEPKSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_valueEPKSt13_Rb_tree_nodeIiE
+FN:475,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_S_keyEPKSt13_Rb_tree_nodeIiE
+FN:495,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_S_keyEPKSt18_Rb_tree_node_base
+FN:240,_ZNSt23_Rb_tree_const_iteratorIiEC1EPKSt13_Rb_tree_nodeIiE
+FN:603,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5beginEv
+FN:614,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE3endEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEC1EPKSt13_Rb_tree_nodeIS5_E
+FN:603,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE5beginEv
+FN:614,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE3endEv
+FN:456,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_M_beginEv
+FN:168,_ZNSt17_Rb_tree_iteratorISsEC1EPSt13_Rb_tree_nodeISsE
+FN:596,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISsEeqERKS0_
+FN:415,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:491,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPKSt18_Rb_tree_node_base
+FN:463,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE6_M_endEv
+FN:637,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5emptyEv
+FN:247,_ZNKSt23_Rb_tree_const_iteratorISsEdeEv
+FN:436,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE11_M_leftmostEv
+FN:428,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE7_M_rootEv
+FN:444,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE12_M_rightmostEv
+FN:347,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE21_M_get_Node_allocatorEv
+FN:432,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE10_S_minimumEPSt18_Rb_tree_node_base
+FN:511,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE10_S_maximumEPSt18_Rb_tree_node_base
+FN:247,_ZNKSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEdeEv
+FN:463,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEC1EPSt13_Rb_tree_nodeIS8_E
+FN:610,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE3endEv
+FN:596,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE5beginEv
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE21_M_get_Node_allocatorEv
+FN:403,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EEC1Ev
+FN:408,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EEC1ERKS6_RKSaISt13_Rb_tree_nodeIS2_EE
+FN:403,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEEC1Ev
+FN:408,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EEC1ERKS3_RKSaISt13_Rb_tree_nodeIiEE
+FN:483,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE7_S_leftEPKSt18_Rb_tree_node_base
+FN:491,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_S_rightEPKSt18_Rb_tree_node_base
+FN:495,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt13_Rb_tree_nodeISsE
+FN:475,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt13_Rb_tree_nodeISsE
+FN:495,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt18_Rb_tree_node_base
+FN:408,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EEC1ERKS3_RKSaISt13_Rb_tree_nodeISsEE
+FN:415,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE13_Rb_tree_implIS9_Lb0EE13_M_initializeEv
+FN:471,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_S_valueEPKSt13_Rb_tree_nodeIS5_E
+FN:475,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE6_S_keyEPKSt13_Rb_tree_nodeIS5_E
+FN:954,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE14_M_lower_boundEPSt13_Rb_tree_nodeIS5_ESE_RS1_
+FN:1390,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE4findERS1_
+FN:351,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13get_allocatorEv
+FN:415,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE13_Rb_tree_implISC_Lb0EE13_M_initializeEv
+FN:495,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE8_S_valueEPKSt13_Rb_tree_nodeIS8_E
+FN:475,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE6_S_keyEPKSt13_Rb_tree_nodeIS8_E
+FN:415,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE13_Rb_tree_implIS9_Lb0EE13_M_initializeEv
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE21_M_get_Node_allocatorEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsN7tagcoll5PatchISsSsEEEEeqERKS6_
+FN:176,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsN7tagcoll5PatchISsSsEEEEptEv
+FN:351,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE13get_allocatorEv
+FN:403,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEC1Ev
+FN:954,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE14_M_lower_boundEPSt13_Rb_tree_nodeIiES8_RKi
+FN:986,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE14_M_upper_boundEPSt13_Rb_tree_nodeIiES8_RKi
+FN:1019,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11equal_rangeERKi
+FN:610,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE3endEv
+FN:214,_ZNKSt17_Rb_tree_iteratorIiEneERKS0_
+FN:403,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE13_Rb_tree_implIS9_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EEC1Ev
+FN:408,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE13_Rb_tree_implIS9_Lb0EEC1ERKS9_RKSaISt13_Rb_tree_nodeIS5_EE
+FN:403,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE13_Rb_tree_implISC_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EEC1Ev
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE13get_allocatorEv
+FN:403,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE13_Rb_tree_implIS9_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EEC1Ev
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE13get_allocatorEv
+FN:641,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE4sizeEv
+FN:641,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE4sizeEv
+FN:463,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKSsN7tagcoll5PatchISsSsEEEEC1EPSt13_Rb_tree_nodeIS5_E
+FN:610,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE3endEv
+FN:596,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE5beginEv
+FN:610,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE3endEv
+FN:214,_ZNKSt17_Rb_tree_iteratorISsEneERKS0_
+FN:495,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE8_S_valueEPKSt13_Rb_tree_nodeIS5_E
+FN:475,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE6_S_keyEPKSt13_Rb_tree_nodeIS5_E
+FN:262,_ZNSt23_Rb_tree_const_iteratorISsEppEi
+FN:255,_ZNSt23_Rb_tree_const_iteratorIiEppEv
+FN:255,_ZNSt23_Rb_tree_const_iteratorISsEppEv
+FN:255,_ZNSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEppEv
+FN:255,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEppEv
+FN:262,_ZNSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEppEi
+FN:360,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_put_nodeEPSt13_Rb_tree_nodeISsE
+FN:388,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE15_M_destroy_nodeEPSt13_Rb_tree_nodeISsE
+FN:936,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_eraseEPSt13_Rb_tree_nodeISsE
+FN:584,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEED1Ev
+FN:695,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5clearEv
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS5_E
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS5_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE8_M_eraseEPSt13_Rb_tree_nodeIS5_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EED1Ev
+FN:360,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_put_nodeEPSt13_Rb_tree_nodeIiE
+FN:388,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE15_M_destroy_nodeEPSt13_Rb_tree_nodeIiE
+FN:936,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_eraseEPSt13_Rb_tree_nodeIiE
+FN:584,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEED1Ev
+FN:695,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5clearEv
+FN:360,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS5_E
+FN:388,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS5_E
+FN:936,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_M_eraseEPSt13_Rb_tree_nodeIS5_E
+FN:584,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EED1Ev
+FN:695,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE5clearEv
+FN:360,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:388,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:936,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E
+FN:695,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5clearEv
+FN:584,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EED1Ev
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS8_E
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS8_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE8_M_eraseEPSt13_Rb_tree_nodeIS8_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EED1Ev
+FN:356,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE14_M_create_nodeERKSs
+FN:378,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_M_clone_nodeEPKSt13_Rb_tree_nodeISsE
+FN:900,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_copyEPKSt13_Rb_tree_nodeISsEPS7_
+FN:568,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEC1ERKS5_
+FN:824,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEaSERKS5_
+FN:356,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE14_M_create_nodeERKS5_
+FN:356,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE11_M_get_nodeEv
+FN:356,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE14_M_create_nodeERKi
+FN:378,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_M_clone_nodeEPKSt13_Rb_tree_nodeIiE
+FN:900,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_M_copyEPKSt13_Rb_tree_nodeIiEPS7_
+FN:568,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEEC1ERKS5_
+FN:364,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE14_M_create_nodeERKS5_
+FN:378,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE13_M_clone_nodeEPKSt13_Rb_tree_nodeIS5_E
+FN:900,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE7_M_copyEPKSt13_Rb_tree_nodeIS5_EPSD_
+FN:568,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EEC1ERKSB_
+FN:824,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEEaSERKS5_
+FN:356,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE14_M_create_nodeERKS2_
+FN:378,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_M_clone_nodeEPKSt13_Rb_tree_nodeIS2_E
+FN:900,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_M_copyEPKSt13_Rb_tree_nodeIS2_EPSA_
+FN:568,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EEC1ERKS8_
+FN:824,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EEaSERKS8_
+FN:356,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE14_M_create_nodeERKS8_
+FN:195,_ZNSt17_Rb_tree_iteratorISsEmmEv
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKSsN7tagcoll5PatchISsSsEEEEmmEv
+FN:195,_ZNSt17_Rb_tree_iteratorIN3ept7debtags3TagEEmmEv
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEmmEv
+FN:195,_ZNSt17_Rb_tree_iteratorIiEmmEv
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEmmEv
+FN:986,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE14_M_upper_boundEPSt13_Rb_tree_nodeISsES8_RKSs
+FN:954,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE14_M_lower_boundEPSt13_Rb_tree_nodeISsES8_RKSs
+FN:1019,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11equal_rangeERKSs
+FN:954,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE14_M_lower_boundEPSt13_Rb_tree_nodeIS5_ESE_RS1_
+FN:1390,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE4findERS1_
+FN:954,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE14_M_lower_boundEPSt13_Rb_tree_nodeIS8_ESH_RS1_
+FN:1390,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE4findERS1_
+FN:846,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_M_insert_EPKSt18_Rb_tree_node_baseS8_RKSs
+FN:1133,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE16_M_insert_uniqueERKSs
+FN:846,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE10_M_insert_EPKSt18_Rb_tree_node_baseSE_RKS5_
+FN:1133,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsSsEEESt10_Select1stIS5_ESt4lessISsESaIS5_EE16_M_insert_uniqueERKS5_
+FN:846,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE10_M_insert_EPKSt18_Rb_tree_node_baseSB_RKS2_
+FN:1133,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE16_M_insert_uniqueERKS2_
+FN:846,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE10_M_insert_EPKSt18_Rb_tree_node_baseSH_RKS8_
+FN:1133,_ZNSt8_Rb_treeISsSt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEESt10_Select1stIS8_ESt4lessISsESaIS8_EE16_M_insert_uniqueERKS8_
+FN:846,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_M_insert_EPKSt18_Rb_tree_node_baseS8_RKi
+FN:1133,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE16_M_insert_uniqueERKi
+FN:846,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE10_M_insert_EPKSt18_Rb_tree_node_baseSE_RKS5_
+FN:1133,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE16_M_insert_uniqueERKS5_
+FN:187,_ZNSt17_Rb_tree_iteratorISsEppEi
+FN:187,_ZNSt17_Rb_tree_iteratorIiEppEi
+FN:1313,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5eraseESt17_Rb_tree_iteratorISsE
+FN:1353,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5eraseESt17_Rb_tree_iteratorISsES7_
+FN:1341,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5eraseERKSs
+FN:1327,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5eraseESt23_Rb_tree_const_iteratorISsE
+FN:1327,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5eraseESt23_Rb_tree_const_iteratorIS2_E
+FN:1313,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5eraseESt17_Rb_tree_iteratorIiE
+FN:1353,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5eraseESt17_Rb_tree_iteratorIiES7_
+FN:1341,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5eraseERKi
+FN:1327,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5eraseESt23_Rb_tree_const_iteratorIiE
+FN:270,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEmmEv
+FN:1178,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE17_M_insert_unique_ESt23_Rb_tree_const_iteratorIS2_ERKS2_
+FN:270,_ZNSt23_Rb_tree_const_iteratorISsEmmEv
+FN:1178,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE17_M_insert_unique_ESt23_Rb_tree_const_iteratorISsERKSs
+FN:270,_ZNSt23_Rb_tree_const_iteratorIiEmmEv
+FN:1178,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE17_M_insert_unique_ESt23_Rb_tree_const_iteratorIiERKi
+DA:103,0
+DA:105,0
+DA:106,0
+DA:117,0
+DA:119,0
+DA:120,0
+DA:168,0
+DA:169,0
+DA:176,0
+DA:177,0
+DA:187,0
+DA:189,0
+DA:190,0
+DA:195,0
+DA:197,0
+DA:198,0
+DA:210,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:240,0
+DA:241,0
+DA:243,0
+DA:244,0
+DA:247,0
+DA:248,0
+DA:251,190305
+DA:252,190305
+DA:255,0
+DA:257,0
+DA:258,0
+DA:262,0
+DA:264,0
+DA:265,0
+DA:270,0
+DA:272,0
+DA:273,0
+DA:285,0
+DA:286,0
+DA:289,0
+DA:290,0
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:356,0
+DA:357,0
+DA:360,0
+DA:361,0
+DA:364,0
+DA:366,0
+DA:368,0
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,0
+DA:378,2
+DA:380,2
+DA:381,2
+DA:382,2
+DA:383,2
+DA:384,2
+DA:388,0
+DA:390,0
+DA:391,0
+DA:392,0
+DA:398,0
+DA:403,0
+DA:405,0
+DA:406,0
+DA:408,3
+DA:410,3
+DA:411,3
+DA:415,0
+DA:417,0
+DA:418,0
+DA:419,0
+DA:420,0
+DA:421,0
+DA:428,6
+DA:429,6
+DA:432,3
+DA:433,3
+DA:436,2
+DA:437,2
+DA:444,2
+DA:445,2
+DA:452,0
+DA:453,0
+DA:456,0
+DA:459,0
+DA:463,0
+DA:464,0
+DA:471,0
+DA:472,0
+DA:475,0
+DA:476,0
+DA:479,0
+DA:480,0
+DA:483,0
+DA:484,0
+DA:487,0
+DA:488,0
+DA:491,0
+DA:492,0
+DA:495,0
+DA:496,0
+DA:499,0
+DA:500,0
+DA:503,2
+DA:504,2
+DA:511,2
+DA:512,2
+DA:562,0
+DA:568,3
+DA:569,3
+DA:571,3
+DA:573,2
+DA:574,2
+DA:575,2
+DA:576,2
+DA:578,3
+DA:584,0
+DA:585,0
+DA:596,0
+DA:599,0
+DA:603,0
+DA:606,0
+DA:610,0
+DA:611,0
+DA:614,0
+DA:617,0
+DA:637,0
+DA:638,0
+DA:641,0
+DA:642,0
+DA:695,0
+DA:697,0
+DA:698,0
+DA:699,0
+DA:700,0
+DA:701,0
+DA:702,0
+DA:824,0
+DA:826,0
+DA:829,0
+DA:830,0
+DA:831,0
+DA:833,0
+DA:834,0
+DA:835,0
+DA:836,0
+DA:839,0
+DA:846,0
+DA:850,0
+DA:852,0
+DA:854,0
+DA:857,0
+DA:858,0
+DA:900,2
+DA:903,2
+DA:904,2
+DA:908,2
+DA:909,0
+DA:910,2
+DA:911,2
+DA:913,4
+DA:915,0
+DA:916,0
+DA:917,0
+DA:918,0
+DA:919,0
+DA:920,0
+DA:921,0
+DA:924,0
+DA:926,0
+DA:927,0
+DA:929,2
+DA:936,0
+DA:939,0
+DA:941,0
+DA:942,0
+DA:943,0
+DA:944,0
+DA:946,0
+DA:954,0
+DA:956,0
+DA:957,0
+DA:958,0
+DA:960,0
+DA:961,0
+DA:986,0
+DA:988,0
+DA:989,0
+DA:990,0
+DA:992,0
+DA:993,0
+DA:1019,0
+DA:1021,0
+DA:1022,0
+DA:1023,0
+DA:1025,0
+DA:1026,0
+DA:1027,0
+DA:1028,0
+DA:1031,0
+DA:1032,0
+DA:1033,0
+DA:1036,0
+DA:1040,0
+DA:1133,0
+DA:1135,0
+DA:1136,0
+DA:1137,0
+DA:1138,0
+DA:1140,0
+DA:1141,0
+DA:1142,0
+DA:1144,0
+DA:1145,0
+DA:1147,0
+DA:1148,0
+DA:1150,0
+DA:1152,0
+DA:1153,0
+DA:1154,0
+DA:1178,0
+DA:1181,0
+DA:1183,0
+DA:1186,0
+DA:1188,0
+DA:1190,0
+DA:1194,0
+DA:1195,0
+DA:1196,0
+DA:1197,0
+DA:1200,0
+DA:1201,0
+DA:1204,0
+DA:1207,0
+DA:1209,0
+DA:1213,0
+DA:1214,0
+DA:1215,0
+DA:1216,0
+DA:1219,0
+DA:1220,0
+DA:1222,0
+DA:1225,0
+DA:1230,0
+DA:1313,0
+DA:1318,0
+DA:1319,0
+DA:1320,0
+DA:1321,0
+DA:1327,0
+DA:1332,0
+DA:1333,0
+DA:1334,0
+DA:1335,0
+DA:1341,0
+DA:1343,0
+DA:1344,0
+DA:1345,0
+DA:1346,0
+DA:1353,0
+DA:1355,0
+DA:1356,0
+DA:1358,0
+DA:1359,0
+DA:1360,0
+DA:1390,0
+DA:1392,0
+DA:1395,0
+BA:105,0
+BA:105,0
+BA:119,0
+BA:119,0
+BA:571,0
+BA:571,0
+BA:571,0
+BA:571,0
+BA:571,2
+BA:571,2
+BA:571,0
+BA:571,0
+BA:826,0
+BA:826,0
+BA:826,0
+BA:826,0
+BA:826,0
+BA:826,0
+BA:831,0
+BA:831,0
+BA:831,0
+BA:831,0
+BA:831,0
+BA:831,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:908,0
+BA:908,0
+BA:908,0
+BA:908,0
+BA:908,1
+BA:908,2
+BA:908,0
+BA:908,0
+BA:913,0
+BA:913,0
+BA:913,0
+BA:913,0
+BA:913,1
+BA:913,2
+BA:913,0
+BA:913,0
+BA:918,0
+BA:918,0
+BA:918,0
+BA:918,0
+BA:918,0
+BA:918,0
+BA:918,0
+BA:918,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:956,0
+BA:956,0
+BA:956,0
+BA:956,0
+BA:956,0
+BA:956,0
+BA:956,0
+BA:956,0
+BA:956,0
+BA:956,0
+BA:957,0
+BA:957,0
+BA:957,0
+BA:957,0
+BA:957,0
+BA:957,0
+BA:957,0
+BA:957,0
+BA:957,0
+BA:957,0
+BA:988,0
+BA:988,0
+BA:988,0
+BA:988,0
+BA:989,0
+BA:989,0
+BA:989,0
+BA:989,0
+BA:1023,0
+BA:1023,0
+BA:1023,0
+BA:1023,0
+BA:1025,0
+BA:1025,0
+BA:1025,0
+BA:1025,0
+BA:1027,0
+BA:1027,0
+BA:1027,0
+BA:1027,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1181,0
+BA:1181,0
+BA:1181,0
+BA:1181,0
+BA:1181,0
+BA:1181,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1190,0
+BA:1190,0
+BA:1190,0
+BA:1190,0
+BA:1190,0
+BA:1190,0
+BA:1195,0
+BA:1195,0
+BA:1195,0
+BA:1195,0
+BA:1195,0
+BA:1195,0
+BA:1197,0
+BA:1197,0
+BA:1197,0
+BA:1197,0
+BA:1197,0
+BA:1197,0
+BA:1200,0
+BA:1200,0
+BA:1200,0
+BA:1200,0
+BA:1200,0
+BA:1200,0
+BA:1209,0
+BA:1209,0
+BA:1209,0
+BA:1209,0
+BA:1209,0
+BA:1209,0
+BA:1214,0
+BA:1214,0
+BA:1214,0
+BA:1214,0
+BA:1214,0
+BA:1214,0
+BA:1216,0
+BA:1216,0
+BA:1216,0
+BA:1216,0
+BA:1216,0
+BA:1216,0
+BA:1219,0
+BA:1219,0
+BA:1219,0
+BA:1219,0
+BA:1219,0
+BA:1219,0
+BA:1355,0
+BA:1355,0
+BA:1355,0
+BA:1355,0
+BA:1355,0
+BA:1355,0
+BA:1355,0
+BA:1355,0
+BA:1355,0
+BA:1355,0
+BA:1355,0
+BA:1355,0
+BA:1358,0
+BA:1358,0
+BA:1358,0
+BA:1358,0
+BA:1395,0
+BA:1395,0
+BA:1395,0
+BA:1395,0
+BA:1395,0
+BA:1395,0
+BA:1395,0
+BA:1395,0
+BA:1395,0
+BA:1395,0
+BA:1395,0
+BA:1395,0
+LF:274
+LH:39
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEEPSsEET0_T_SC_SB_
+FN:113,_ZSt18uninitialized_copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEEPSsET0_T_SA_S9_
+FN:261,_ZSt22__uninitialized_copy_aIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEEPSsSsET0_T_SA_S9_RSaIT1_E
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+BA:78,0
+BA:78,0
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+BA:79,0
+BA:79,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:88,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1ERKS0_
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+FN:114,_ZNSt12_Vector_baseISsSaISsEEC2EjRKS0_
+FN:247,_ZNSt6vectorISsSaISsEEC1ERKS1_
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:88,0
+DA:89,0
+DA:90,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:114,0
+DA:115,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:120,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:247,0
+DA:248,0
+DA:249,0
+DA:253,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:377,0
+DA:378,0
+DA:386,0
+DA:387,0
+DA:395,0
+DA:396,0
+DA:404,0
+DA:405,0
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:526,0
+DA:527,0
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:62
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:286,0
+BA:286,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/exception
+FN:59,_ZNSt9exceptionC2Ev
+FN:57,_ZNSt9exceptionC2ERKS_
+DA:57,0
+DA:59,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsSsEEEEED2Ev
+FN:118,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEE7destroyEPS3_
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:118,_ZN9__gnu_cxx13new_allocatorIiE7destroyEPi
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEED2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEE9constructEPS3_RKS3_
+FN:71,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2ERKS6_
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIiED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEEC2ERKS3_
+FN:107,_ZN9__gnu_cxx13new_allocatorIiE9constructEPiRKi
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKiN7tagcoll5PatchIiiEEEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEEC2ERKS3_
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN7tagcoll5PatchISsSsEEEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorISsEC2ERKS1_
+FN:69,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIiEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKiN7tagcoll5PatchIiiEEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEEC2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEEC2ERKS9_
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsSsEEEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN7tagcoll5PatchISsSsEEEEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsSsEEEEE8max_sizeEv
+FN:118,_ZN9__gnu_cxx13new_allocatorISsE7destroyEPSs
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE10deallocateEPS2_j
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN7tagcoll5PatchISsSsEEEE7destroyEPS6_
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsSsEEEEE10deallocateEPS8_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE10deallocateEPS2_j
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKiN7tagcoll5PatchIiiEEEE7destroyEPS6_
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEE10deallocateEPS8_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE10deallocateEPS5_j
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEE7destroyEPS9_
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEE10deallocateEPSB_j
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8allocateEjPKv
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN7tagcoll5PatchISsSsEEEE9constructEPS6_RKS6_
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsSsEEEEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiN7tagcoll5PatchIiiEEEEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE8allocateEjPKv
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKiN7tagcoll5PatchIiiEEEE9constructEPS6_RKS6_
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE8allocateEjPKv
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEE9constructEPS9_RKS9_
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN7tagcoll5PatchISsN3ept7debtags3TagEEEEEE8allocateEjPKv
+DA:69,0
+DA:71,3
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+DA:118,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+LF:14
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,2
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:112,_ZNSolsEPFRSoS_E
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+FN:566,_ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+FN:545,_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_
+DA:95,0
+DA:112,0
+DA:117,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+DA:545,0
+DA:546,0
+DA:566,0
+DA:567,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/base.h
+FN:48,_ZN7tagcoll4coll18ReadonlyCollectionINS0_12IntDiskIndexEEC2Ev
+FN:48,_ZN7tagcoll4coll18ReadonlyCollectionIN3ept7debtags7DebtagsEEC2Ev
+FN:273,_ZN7tagcoll4coll10CollectionIN3ept7debtags7DebtagsEEC2Ev
+FN:48,_ZN7tagcoll4coll18ReadonlyCollectionINS0_7PatchedINS0_12IntDiskIndexEEEEC2Ev
+FN:273,_ZN7tagcoll4coll10CollectionINS0_7PatchedINS0_12IntDiskIndexEEEEC2Ev
+DA:48,30
+DA:273,20
+LF:2
+LH:2
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/intdiskindex.h
+FN:133,_ZN7tagcoll4coll12IntDiskIndex4initERKNS_9diskindex10MasterMMapEii
+FN:127,_ZN7tagcoll4coll12IntDiskIndexC1Ev
+DA:127,10
+DA:133,9
+DA:135,9
+DA:136,9
+DA:137,9
+LF:5
+LH:5
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/patched.h
+FN:186,_ZNK7tagcoll4coll7PatchedINS0_12IntDiskIndexEE7changesEv
+FN:167,_ZN7tagcoll4coll7PatchedINS0_12IntDiskIndexEEC1ERKS2_
+FN:51,_ZN7tagcoll4coll7PatchedINS0_12IntDiskIndexEED1Ev
+FN:201,_ZN7tagcoll4coll7PatchedINS0_12IntDiskIndexEE10addChangesERKNS_9PatchListIiiEE
+FN:196,_ZN7tagcoll4coll7PatchedINS0_12IntDiskIndexEE10setChangesERKNS_9PatchListIiiEE
+DA:51,0
+DA:167,10
+DA:186,4
+DA:196,0
+DA:201,0
+LF:5
+LH:2
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/patched.tcc
+DA:68,0
+DA:69,0
+DA:71,0
+DA:72,0
+DA:78,0
+DA:80,0
+DA:83,0
+DA:85,0
+DA:88,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:95,0
+DA:97,0
+DA:99,0
+BA:78,0
+BA:78,0
+BA:80,0
+BA:80,0
+BA:90,0
+BA:90,0
+BA:92,0
+BA:92,0
+LF:15
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/diskindex/int.h
+FN:57,_ZN7tagcoll9diskindex3IntC1Ev
+DA:57,20
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/input/base.h
+FN:62,_ZN7tagcoll9exception5Input4lineEi
+FN:68,_ZNK7tagcoll9exception5Input4typeEv
+FN:81,_ZNK7tagcoll9exception6Parser4typeEv
+FN:59,_ZN7tagcoll9exception5InputD2Ev
+FN:79,_ZN7tagcoll9exception6ParserD0Ev
+FN:79,_ZN7tagcoll9exception6ParserD1Ev
+FN:59,_ZN7tagcoll9exception5InputD0Ev
+FN:59,_ZN7tagcoll9exception5InputD1Ev
+FN:41,_ZN7tagcoll9exception5InputC2ERKS1_
+FN:75,_ZN7tagcoll9exception6ParserC1ERKS1_
+FN:53,_ZN7tagcoll9exception5InputC1EiRKSs
+DA:41,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:62,0
+DA:68,0
+DA:75,0
+DA:79,0
+DA:81,0
+DA:83,0
+BA:59,0
+BA:59,0
+BA:59,0
+BA:59,0
+BA:59,0
+BA:59,0
+BA:79,0
+BA:79,0
+BA:79,0
+BA:79,0
+LF:11
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/patch.h
+FN:186,_ZN7tagcoll8InserterIiiEC1ERNS_9PatchListIiiEE
+FN:196,_ZN7tagcoll8inserterIiiEENS_8InserterIT_T0_EERNS_9PatchListIS2_S3_EE
+FN:186,_ZN7tagcoll8InserterISsSsEC1ERNS_9PatchListISsSsEE
+FN:196,_ZN7tagcoll8inserterISsSsEENS_8InserterIT_T0_EERNS_9PatchListIS2_S3_EE
+FN:126,_ZN7tagcoll9PatchListIiiEC1Ev
+FN:126,_ZN7tagcoll9PatchListISsN3ept7debtags3TagEEC1Ev
+FN:126,_ZN7tagcoll9PatchListISsSsEC1Ev
+FN:49,_ZN7tagcoll5PatchISsSsED1Ev
+FN:124,_ZN7tagcoll9PatchListISsSsED1Ev
+FN:49,_ZN7tagcoll5PatchIiiED1Ev
+FN:45,_ZN7tagcoll5PatchIiiEC1ERKi
+FN:124,_ZN7tagcoll9PatchListIiiED1Ev
+FN:49,_ZN7tagcoll5PatchISsN3ept7debtags3TagEED1Ev
+FN:124,_ZN7tagcoll9PatchListISsN3ept7debtags3TagEED1Ev
+FN:45,_ZN7tagcoll5PatchISsSsEC1ERKSs
+FN:44,_ZN7tagcoll5PatchISsSsEC1ERKS1_
+FN:44,_ZN7tagcoll5PatchIiiEC1ERKS1_
+FN:127,_ZN7tagcoll9PatchListIiiEC1ERKS1_
+FN:44,_ZN7tagcoll5PatchISsN3ept7debtags3TagEEC1ERKS4_
+FN:51,_ZN7tagcoll5PatchISsSsE3addERKSs
+FN:61,_ZN7tagcoll5PatchISsSsE6removeERKSs
+FN:56,_ZN7tagcoll5PatchISsSsE3addERKSt3setISsSt4lessISsESaISsEE
+FN:66,_ZN7tagcoll5PatchISsSsE6removeERKSt3setISsSt4lessISsESaISsEE
+FN:77,_ZN7tagcoll5PatchISsSsE9mergeWithERKS1_
+FN:141,_ZN7tagcoll9PatchListISsSsE8addPatchERKNS_5PatchISsSsEE
+FN:188,_ZN7tagcoll8InserterISsSsEaSERKNS_5PatchISsSsEE
+FN:176,_ZNK7tagcoll9PatchListIiiE6outputIN3ept7debtags16PatchIntToStringINS_8InserterISsSsEEEEEEvT_
+FN:56,_ZN7tagcoll5PatchISsN3ept7debtags3TagEE3addERKSt3setIS3_St4lessIS3_ESaIS3_EE
+FN:66,_ZN7tagcoll5PatchISsN3ept7debtags3TagEE6removeERKSt3setIS3_St4lessIS3_ESaIS3_EE
+FN:77,_ZN7tagcoll5PatchISsN3ept7debtags3TagEE9mergeWithERKS4_
+FN:141,_ZN7tagcoll9PatchListISsN3ept7debtags3TagEE8addPatchERKNS_5PatchISsS3_EE
+FN:51,_ZN7tagcoll5PatchIiiE3addERKi
+FN:61,_ZN7tagcoll5PatchIiiE6removeERKi
+FN:56,_ZN7tagcoll5PatchIiiE3addERKSt3setIiSt4lessIiESaIiEE
+FN:66,_ZN7tagcoll5PatchIiiE6removeERKSt3setIiSt4lessIiESaIiEE
+FN:77,_ZN7tagcoll5PatchIiiE9mergeWithERKS1_
+FN:141,_ZN7tagcoll9PatchListIiiE8addPatchERKNS_5PatchIiiEE
+FN:188,_ZN7tagcoll8InserterIiiEaSERKNS_5PatchIiiEE
+FN:46,_ZN7tagcoll5PatchISsN3ept7debtags3TagEEC1ERKSsRKSt3setIS3_St4lessIS3_ESaIS3_EESD_
+FN:46,_ZN7tagcoll5PatchISsSsEC1ERKSsRKSt3setISsSt4lessISsESaISsEESA_
+FN:152,_ZN7tagcoll9PatchListIiiE16addPatchInvertedERKNS_5PatchIiiEE
+FN:158,_ZN7tagcoll9PatchListIiiE16addPatchInvertedERKS1_
+FN:100,_ZN7tagcoll5PatchIiiE15removeRedundantESt3setIiSt4lessIiESaIiEE
+FN:164,_ZN7tagcoll9PatchListIiiE15removeRedundantERKiRKSt3setIiSt4lessIiESaIiEE
+DA:44,0
+DA:45,0
+DA:46,2
+DA:49,0
+DA:51,0
+DA:54,0
+DA:55,0
+DA:56,0
+DA:59,0
+DA:60,0
+DA:61,0
+DA:64,0
+DA:65,0
+DA:66,0
+DA:69,0
+DA:70,0
+DA:77,0
+DA:79,0
+DA:80,0
+DA:81,0
+DA:100,0
+DA:104,0
+DA:106,0
+DA:107,0
+DA:124,0
+DA:126,0
+DA:127,3
+DA:141,0
+DA:152,0
+DA:158,0
+DA:164,0
+DA:176,0
+DA:186,0
+DA:188,0
+DA:190,0
+DA:191,0
+DA:196,0
+DA:198,0
+LF:38
+LH:2
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/patch.tcc
+FN:40,_ZN7tagcoll5PatchIiiEC1IN6wibble9SingletonIiEENS3_5EmptyIiEEEERKiRKT_RKT0_
+FN:40,_ZN7tagcoll5PatchIiiEC1IN6wibble5EmptyIiEENS3_9SingletonIiEEEERKiRKT_RKT0_
+DA:35,2
+DA:36,0
+DA:37,2
+DA:40,0
+DA:41,0
+DA:43,0
+DA:44,0
+DA:45,0
+DA:51,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:56,0
+DA:58,0
+DA:73,0
+DA:74,0
+DA:76,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:120,0
+DA:121,0
+DA:122,0
+DA:151,0
+DA:154,0
+DA:155,0
+DA:157,0
+BA:51,0
+BA:51,0
+BA:51,0
+BA:51,0
+BA:51,0
+BA:51,0
+BA:51,0
+BA:51,0
+BA:51,0
+BA:51,0
+BA:51,0
+BA:51,0
+BA:51,0
+BA:51,0
+BA:51,0
+BA:51,0
+BA:51,0
+BA:51,0
+BA:55,0
+BA:55,0
+BA:55,0
+BA:55,0
+BA:55,0
+BA:55,0
+BA:73,0
+BA:73,0
+BA:73,0
+BA:73,0
+BA:73,0
+BA:73,0
+BA:76,0
+BA:76,0
+BA:79,0
+BA:79,0
+BA:87,0
+BA:87,0
+BA:121,0
+BA:121,0
+BA:151,0
+BA:151,0
+LF:30
+LH:2
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/TextFormat.h
+FN:129,_ZN7tagcoll10textformat14PatchAssemblerIN3ept7debtags16PatchStringToIntINS_8InserterIiiEEEEEC1ERKS7_
+FN:136,_ZN7tagcoll10textformat14patchAssemblerIN3ept7debtags16PatchStringToIntINS_8InserterIiiEEEEEENS0_14PatchAssemblerIT_EERKS9_
+FN:142,_ZN7tagcoll10textformat10parsePatchIN3ept7debtags16PatchStringToIntINS_8InserterIiiEEEEEEvRNS_5input5InputET_
+DA:129,0
+DA:136,0
+DA:138,0
+DA:142,0
+DA:144,0
+DA:145,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/TextFormat.tcc
+FN:284,_Z41__static_initialization_and_destruction_0ii
+FN:284,_GLOBAL__I_debtags.cc
+FN:37,_ZL11printTagsetRKSt3setISsSt4lessISsESaISsEEP8_IO_FILE
+FN:180,_ZN7tagcoll10textformat14PatchAssemblerIN3ept7debtags16PatchStringToIntINS_8InserterIiiEEEEEaSISt3setISsSt4lessISsESaISsEEN6wibble5EmptyISsEEEERS8_RKSt4pairIT_T0_E
+FN:180,_ZN7tagcoll10textformat14PatchAssemblerIN3ept7debtags16PatchStringToIntINS_8InserterIiiEEEEEaSISt3setISsSt4lessISsESaISsEESE_EERS8_RKSt4pairIT_T0_E
+FN:122,_ZN7tagcoll10textformat5parseINS0_14PatchAssemblerIN3ept7debtags16PatchStringToIntINS_8InserterIiiEEEEEEEEvRNS_5input5InputET_
+DA:37,0
+DA:39,0
+DA:41,0
+DA:43,0
+DA:44,0
+DA:48,0
+DA:49,0
+DA:51,0
+DA:122,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:129,0
+DA:130,0
+DA:131,0
+DA:134,0
+DA:135,0
+DA:137,0
+DA:138,0
+DA:141,0
+DA:143,0
+DA:144,0
+DA:146,0
+DA:149,0
+DA:152,0
+DA:154,0
+DA:156,0
+DA:157,0
+DA:158,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:164,0
+DA:165,0
+DA:166,0
+DA:167,0
+DA:169,0
+DA:170,0
+DA:171,0
+DA:174,0
+DA:177,0
+DA:180,0
+DA:182,0
+DA:183,0
+DA:185,0
+DA:188,0
+DA:189,0
+DA:191,0
+DA:192,0
+DA:193,0
+DA:194,0
+DA:198,0
+DA:201,0
+DA:202,0
+DA:204,0
+DA:205,0
+DA:208,0
+DA:284,6
+BA:39,0
+BA:39,0
+BA:41,0
+BA:41,0
+BA:43,0
+BA:43,0
+BA:48,0
+BA:48,0
+BA:131,0
+BA:131,0
+BA:141,0
+BA:141,0
+BA:143,0
+BA:143,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:154,0
+BA:154,0
+BA:154,0
+BA:154,0
+BA:154,0
+BA:154,0
+BA:156,0
+BA:156,0
+BA:158,0
+BA:158,0
+BA:169,0
+BA:169,0
+BA:185,0
+BA:185,0
+BA:185,0
+BA:185,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:189,0
+BA:191,0
+BA:191,0
+BA:191,0
+BA:191,0
+BA:193,0
+BA:193,0
+BA:193,0
+BA:193,0
+BA:198,0
+BA:198,0
+BA:198,0
+BA:198,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:202,0
+BA:284,2
+BA:284,1
+BA:284,2
+BA:284,1
+LF:58
+LH:1
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/tag.cc
+FN:108,_ZNK3ept7debtags3Tag8fullnameERKSs
+FN:42,_ZNK3ept7debtags5Facet4nameERKSs
+FN:27,_ZN3ept7debtagsL8constgetERKSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEERS5_
+FN:130,_ZNK3ept7debtags3Tag15longDescriptionERKSs
+FN:119,_ZNK3ept7debtags3Tag16shortDescriptionERKSs
+FN:124,_ZNK3ept7debtags3Tag15longDescriptionEv
+FN:113,_ZNK3ept7debtags3Tag16shortDescriptionEv
+FN:102,_ZNK3ept7debtags3Tag8fullnameEv
+FN:36,_ZNK3ept7debtags5Facet4nameEv
+FN:97,_ZNK3ept7debtags3Tag4nameERKSs
+FN:91,_ZNK3ept7debtags3Tag4nameEv
+FN:84,_ZNK3ept7debtags3Tag5facetEv
+FN:76,_ZNK3ept7debtags5Facet4tagsEv
+FN:69,_ZNK3ept7debtags5Facet6hasTagERKSs
+FN:64,_ZNK3ept7debtags5Facet15longDescriptionERKSs
+FN:58,_ZNK3ept7debtags5Facet15longDescriptionEv
+FN:53,_ZNK3ept7debtags5Facet16shortDescriptionERKSs
+FN:47,_ZNK3ept7debtags5Facet16shortDescriptionEv
+DA:27,3898
+DA:29,3898
+DA:30,3898
+DA:31,4
+DA:33,3894
+DA:36,59
+DA:38,59
+DA:39,59
+DA:40,0
+DA:42,29
+DA:44,29
+DA:47,59
+DA:49,59
+DA:50,59
+DA:51,0
+DA:53,29
+DA:55,29
+DA:58,59
+DA:60,59
+DA:61,59
+DA:62,0
+DA:64,29
+DA:66,29
+DA:69,0
+DA:71,0
+DA:72,0
+DA:73,0
+DA:76,89
+DA:78,89
+DA:79,1
+DA:80,88
+DA:84,0
+DA:86,0
+DA:87,0
+DA:88,0
+DA:91,1243
+DA:93,1243
+DA:94,1243
+DA:95,0
+DA:97,620
+DA:99,620
+DA:102,1284
+DA:104,1284
+DA:105,1284
+DA:106,0
+DA:108,620
+DA:110,620
+DA:113,1242
+DA:115,1242
+DA:116,1242
+DA:117,0
+DA:119,620
+DA:121,620
+DA:124,1240
+DA:126,1240
+DA:127,1240
+DA:128,0
+DA:130,620
+DA:132,620
+BA:30,2
+BA:30,2
+BA:38,2
+BA:38,1
+BA:44,2
+BA:44,1
+BA:49,2
+BA:49,1
+BA:55,2
+BA:55,1
+BA:55,2
+BA:55,1
+BA:55,0
+BA:55,0
+BA:55,2
+BA:55,1
+BA:55,0
+BA:55,0
+BA:60,2
+BA:60,1
+BA:66,2
+BA:66,1
+BA:66,2
+BA:66,1
+BA:66,0
+BA:66,0
+BA:66,2
+BA:66,1
+BA:66,0
+BA:66,0
+BA:71,0
+BA:71,0
+BA:78,2
+BA:78,2
+BA:86,0
+BA:86,0
+BA:93,2
+BA:93,1
+BA:99,2
+BA:99,1
+BA:104,2
+BA:104,1
+BA:110,2
+BA:110,1
+BA:115,2
+BA:115,1
+BA:121,2
+BA:121,1
+BA:121,2
+BA:121,1
+BA:121,0
+BA:121,0
+BA:121,2
+BA:121,1
+BA:121,0
+BA:121,0
+BA:126,2
+BA:126,1
+BA:132,2
+BA:132,1
+BA:132,2
+BA:132,1
+BA:132,0
+BA:132,0
+BA:132,2
+BA:132,1
+BA:132,0
+BA:132,0
+LF:59
+LH:44
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/tag.h
+FN:80,_ZNK3ept7debtags5Facet5validEv
+FN:175,_ZN3ept7debtags3TagD1Ev
+FN:179,_ZNK3ept7debtags3TagltERKS1_
+FN:182,_ZNK3ept7debtags3Tag5validEv
+DA:80,353
+DA:175,0
+DA:179,0
+DA:182,0
+LF:4
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/vocabulary.h
+FN:64,_ZNK3ept7debtags10Vocabulary10FacetIndex4sizeEv
+FN:51,_ZNK3ept7debtags10Vocabulary10FacetIndex4itemEi
+FN:70,_ZNK3ept7debtags10Vocabulary10FacetIndex8firsttagEi
+FN:72,_ZNK3ept7debtags10Vocabulary10FacetIndex7lasttagEi
+FN:74,_ZNK3ept7debtags10Vocabulary10FacetIndex4nameEi
+FN:103,_ZNK3ept7debtags10Vocabulary8TagIndex4sizeEv
+FN:90,_ZNK3ept7debtags10Vocabulary8TagIndex4itemEi
+FN:109,_ZNK3ept7debtags10Vocabulary8TagIndex5facetEi
+FN:111,_ZNK3ept7debtags10Vocabulary8TagIndex4nameEi
+FN:269,_ZNK3ept7debtags10Vocabulary7tagNameEi
+FN:266,_ZNK3ept7debtags10Vocabulary9facetNameEi
+FN:193,_ZNK3ept7debtags10Vocabulary10facetByTagEi
+FN:230,_ZNK3ept7debtags10Vocabulary4tagsEi
+FN:165,_ZNK3ept7debtags10Vocabulary6hasTagERKSs
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:64,0
+DA:70,0
+DA:72,0
+DA:74,88
+DA:90,0
+DA:92,0
+DA:93,0
+DA:94,0
+DA:103,0
+DA:109,0
+DA:111,0
+DA:165,0
+DA:167,0
+DA:193,0
+DA:230,0
+DA:232,0
+DA:233,0
+DA:234,0
+DA:235,0
+DA:266,88
+DA:269,1904
+BA:53,0
+BA:53,0
+BA:53,0
+BA:53,0
+BA:53,0
+BA:53,0
+BA:64,0
+BA:64,0
+BA:70,0
+BA:70,0
+BA:72,0
+BA:72,0
+BA:74,2
+BA:74,1
+BA:92,0
+BA:92,0
+BA:92,0
+BA:92,0
+BA:92,0
+BA:92,0
+BA:103,0
+BA:103,0
+BA:109,0
+BA:109,0
+BA:111,0
+BA:111,0
+BA:233,0
+BA:233,0
+BA:233,0
+BA:233,0
+BA:233,0
+BA:233,0
+LF:25
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeIN3ept7debtags3TagEEED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:98,_ZNSaISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2Ev
+FN:106,_ZNSaIN3ept7debtags3TagEED1Ev
+FN:104,_ZNSaIN3ept7debtags3TagEEC1ISt13_Rb_tree_nodeIS1_EEERKSaIT_E
+DA:98,0
+DA:100,0
+DA:101,0
+DA:104,0
+DA:106,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:606,_ZNKSs4sizeEv
+FN:1544,_ZNKSs4dataEv
+FN:392,_ZNSs10_S_compareEjj
+FN:1941,_ZNKSs7compareERKSs
+FN:2238,_ZStltIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:606,0
+DA:607,0
+DA:835,0
+DA:838,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2238,0
+DA:2239,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:1948,0
+BA:1948,0
+LF:54
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:188,_ZSt3minIjERKT_S2_S2_
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+BA:193,0
+BA:193,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:469,_ZNKSt9_IdentityIN3ept7debtags3TagEEclERKS2_
+FN:229,_ZNKSt4lessIN3ept7debtags3TagEEclERKS2_S5_
+FN:482,_ZNKSt10_Select1stISt4pairIKSsSsEEclERKS2_
+FN:229,_ZNKSt4lessISsEclERKSsS2_
+DA:229,0
+DA:230,0
+DA:469,0
+DA:470,0
+DA:482,0
+DA:483,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_map.h
+FN:302,_ZNKSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEE3endEv
+FN:629,_ZNKSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEE4findERS3_
+DA:302,3898
+DA:303,3898
+DA:629,3898
+DA:630,3898
+LF:4
+LH:4
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEbEC1ERKS4_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIN3ept7debtags3TagEEbEC1ERKS4_RKb
+DA:88,0
+DA:89,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:141,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EEC1Ev
+FN:93,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EED1Ev
+FN:378,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE6insertERKS2_
+DA:93,0
+DA:141,0
+DA:142,0
+DA:378,0
+DA:381,0
+DA:382,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:285,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsSsEEeqERKS3_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsSsEEptEv
+FN:452,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEC1ERKSt17_Rb_tree_iteratorIS2_E
+FN:398,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:463,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorIN3ept7debtags3TagEEC1EPSt13_Rb_tree_nodeIS2_E
+FN:596,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorIN3ept7debtags3TagEEeqERKS3_
+FN:347,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE21_M_get_Node_allocatorEv
+FN:456,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_beginEv
+FN:467,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE6_M_endEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsSsEEC1EPKSt13_Rb_tree_nodeIS2_E
+FN:614,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE3endEv
+FN:415,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EE13_M_initializeEv
+FN:471,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_valueEPKSt13_Rb_tree_nodeIS2_E
+FN:475,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_S_keyEPKSt13_Rb_tree_nodeIS2_E
+FN:495,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE7_S_leftEPKSt18_Rb_tree_node_base
+FN:491,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_S_rightEPKSt18_Rb_tree_node_base
+FN:495,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:403,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EEC1Ev
+FN:471,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_S_valueEPKSt13_Rb_tree_nodeIS2_E
+FN:475,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE6_S_keyEPKSt13_Rb_tree_nodeIS2_E
+FN:351,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13get_allocatorEv
+FN:970,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE14_M_lower_boundEPKSt13_Rb_tree_nodeIS2_ESC_RS1_
+FN:1403,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE4findERS1_
+FN:360,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:388,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:936,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E
+FN:584,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EED1Ev
+FN:195,_ZNSt17_Rb_tree_iteratorIN3ept7debtags3TagEEmmEv
+FN:356,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE14_M_create_nodeERKS2_
+FN:846,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE10_M_insert_EPKSt18_Rb_tree_node_baseSB_RKS2_
+FN:1133,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE16_M_insert_uniqueERKS2_
+DA:168,0
+DA:169,0
+DA:195,0
+DA:197,0
+DA:198,0
+DA:210,0
+DA:211,0
+DA:240,11698
+DA:241,11698
+DA:243,0
+DA:244,0
+DA:251,16354
+DA:252,16354
+DA:285,7796
+DA:286,7796
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:356,0
+DA:357,0
+DA:360,0
+DA:361,0
+DA:364,0
+DA:366,0
+DA:368,0
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,0
+DA:388,0
+DA:390,0
+DA:391,0
+DA:392,0
+DA:398,0
+DA:403,0
+DA:405,0
+DA:406,0
+DA:415,0
+DA:417,0
+DA:418,0
+DA:419,0
+DA:420,0
+DA:421,0
+DA:452,0
+DA:453,0
+DA:456,0
+DA:459,0
+DA:463,0
+DA:464,0
+DA:467,3898
+DA:468,3898
+DA:471,0
+DA:472,0
+DA:475,0
+DA:476,0
+DA:479,0
+DA:480,0
+DA:483,0
+DA:484,0
+DA:487,0
+DA:488,0
+DA:491,0
+DA:492,0
+DA:495,0
+DA:496,0
+DA:499,0
+DA:500,0
+DA:562,0
+DA:584,0
+DA:585,0
+DA:596,0
+DA:599,0
+DA:614,7800
+DA:617,7800
+DA:846,0
+DA:850,0
+DA:852,0
+DA:854,0
+DA:857,0
+DA:858,0
+DA:936,0
+DA:939,0
+DA:941,0
+DA:942,0
+DA:943,0
+DA:944,0
+DA:946,0
+DA:970,3898
+DA:972,15867
+DA:973,8071
+DA:974,5830
+DA:976,2241
+DA:977,3898
+DA:1133,0
+DA:1135,0
+DA:1136,0
+DA:1137,0
+DA:1138,0
+DA:1140,0
+DA:1141,0
+DA:1142,0
+DA:1144,0
+DA:1145,0
+DA:1147,0
+DA:1148,0
+DA:1150,0
+DA:1152,0
+DA:1153,0
+DA:1154,0
+DA:1403,3898
+DA:1405,3898
+DA:1408,3898
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:939,0
+BA:939,0
+BA:972,2
+BA:972,2
+BA:973,2
+BA:973,2
+BA:1138,0
+BA:1138,0
+BA:1142,0
+BA:1142,0
+BA:1145,0
+BA:1145,0
+BA:1147,0
+BA:1147,0
+BA:1152,0
+BA:1152,0
+BA:1408,2
+BA:1408,2
+BA:1408,1
+BA:1408,2
+LF:113
+LH:19
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEED2Ev
+FN:118,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEE7destroyEPS3_
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEED2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEE9constructEPS3_RKS3_
+FN:69,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE8max_sizeEv
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE10deallocateEPS5_j
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE8allocateEjPKv
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+DA:118,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+DA:105,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/stdexcept
+FN:97,_ZNSt12out_of_rangeD1Ev
+FN:97,_ZNSt12out_of_rangeD0Ev
+DA:97,1
+BA:97,1
+BA:97,2
+BA:97,0
+BA:97,0
+LF:1
+LH:1
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/tag.h
+FN:66,_ZN3ept7debtags5FacetC1EPKNS0_10VocabularyEi
+FN:169,_ZN3ept7debtags3TagC1EPKNS0_10VocabularyEi
+DA:66,120
+DA:169,745056
+LF:2
+LH:2
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/vocabulary.cc
+FN:158,_ZNK3ept7debtags10Vocabulary9facetByIDEi
+FN:163,_ZNK3ept7debtags10Vocabulary7tagByIDEi
+FN:228,_Z41__static_initialization_and_destruction_0ii
+FN:228,_GLOBAL__I_vocabulary.cc
+FN:189,_ZNK3ept7debtags10Vocabulary12tagShortNameEi
+FN:168,_ZNK3ept7debtags10Vocabulary11parseVocBufERSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEEjj
+FN:213,_ZNK3ept7debtags10Vocabulary7tagDataEi
+FN:199,_ZNK3ept7debtags10Vocabulary9facetDataEi
+FN:149,_ZN3ept7debtags10VocabularyD1Ev
+FN:149,_ZN3ept7debtags10VocabularyD2Ev
+FN:112,_ZN3ept7debtags10VocabularyC1Ev
+FN:112,_ZN3ept7debtags10VocabularyC2Ev
+FN:41,_ZNK3ept7debtags10Vocabulary10FacetIndex2idEPKc
+FN:64,_ZN3ept7debtags6tagcmpEPKcS2_
+FN:89,_ZNK3ept7debtags10Vocabulary8TagIndex2idEPKc
+DA:41,9
+DA:43,9
+DA:47,9
+DA:48,62
+DA:50,44
+DA:51,44
+DA:52,16
+DA:54,28
+DA:57,9
+DA:59,3
+DA:61,6
+DA:64,1105769
+DA:66,1105769
+DA:67,1105769
+DA:68,1105766
+DA:69,1105766
+DA:72,1105766
+DA:73,1105766
+DA:74,1105766
+DA:76,1105766
+DA:77,1105766
+DA:79,454813
+DA:81,650953
+DA:83,639402
+DA:86,11551
+DA:89,106377
+DA:91,106377
+DA:95,106377
+DA:96,1212130
+DA:98,999376
+DA:99,999376
+DA:100,432389
+DA:102,566987
+DA:105,106377
+DA:107,132
+DA:109,106245
+DA:112,31
+DA:113,31
+DA:115,31
+DA:116,31
+DA:118,31
+DA:120,2
+DA:121,2
+DA:124,29
+DA:126,29
+DA:129,29
+DA:130,29
+DA:135,29
+DA:136,29
+DA:137,0
+DA:139,29
+DA:140,29
+DA:141,0
+DA:142,29
+DA:145,29
+DA:146,0
+DA:147,0
+DA:149,31
+DA:152,31
+DA:153,29
+DA:154,31
+DA:155,29
+DA:156,31
+DA:158,120
+DA:160,120
+DA:163,745056
+DA:165,745056
+DA:168,1301
+DA:171,1301
+DA:172,1301
+DA:173,1301
+DA:174,1301
+DA:176,1301
+DA:178,1301
+DA:179,2602
+DA:181,1298
+DA:182,1298
+DA:183,849
+DA:185,449
+DA:186,1301
+DA:187,1301
+DA:189,1863
+DA:191,1863
+DA:192,1863
+DA:193,1863
+DA:194,1863
+DA:196,0
+DA:199,176
+DA:201,176
+DA:204,176
+DA:205,59
+DA:207,176
+DA:208,59
+DA:210,176
+DA:213,3722
+DA:215,3722
+DA:218,3722
+DA:219,1242
+DA:221,3722
+DA:222,1242
+DA:224,3722
+DA:228,6
+BA:43,1
+BA:43,2
+BA:48,2
+BA:48,2
+BA:51,2
+BA:51,2
+BA:57,2
+BA:57,1
+BA:57,2
+BA:57,2
+BA:57,2
+BA:57,2
+BA:67,2
+BA:67,2
+BA:69,1
+BA:69,2
+BA:74,2
+BA:74,2
+BA:77,2
+BA:77,2
+BA:81,2
+BA:81,2
+BA:86,2
+BA:86,2
+BA:91,1
+BA:91,2
+BA:96,2
+BA:96,2
+BA:99,2
+BA:99,2
+BA:105,2
+BA:105,1
+BA:105,2
+BA:105,2
+BA:105,2
+BA:105,2
+BA:118,2
+BA:118,2
+BA:118,0
+BA:118,0
+BA:136,1
+BA:136,2
+BA:136,0
+BA:136,0
+BA:140,1
+BA:140,2
+BA:140,0
+BA:140,0
+BA:145,1
+BA:145,2
+BA:145,0
+BA:145,0
+BA:146,2
+BA:146,2
+BA:146,2
+BA:146,2
+BA:146,0
+BA:146,0
+BA:146,0
+BA:146,0
+BA:152,2
+BA:152,2
+BA:152,0
+BA:152,0
+BA:154,2
+BA:154,2
+BA:154,0
+BA:154,0
+BA:179,2
+BA:179,2
+BA:182,2
+BA:182,2
+BA:193,2
+BA:193,1
+BA:201,1
+BA:201,2
+BA:204,2
+BA:204,2
+BA:207,2
+BA:207,2
+BA:215,1
+BA:215,2
+BA:218,2
+BA:218,2
+BA:221,2
+BA:221,2
+BA:228,2
+BA:228,1
+BA:228,2
+BA:228,1
+LF:102
+LH:97
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/vocabulary.h
+FN:64,_ZNK3ept7debtags10Vocabulary10FacetIndex4sizeEv
+FN:51,_ZNK3ept7debtags10Vocabulary10FacetIndex4itemEi
+FN:66,_ZNK3ept7debtags10Vocabulary10FacetIndex6offsetEi
+FN:68,_ZNK3ept7debtags10Vocabulary10FacetIndex4sizeEi
+FN:103,_ZNK3ept7debtags10Vocabulary8TagIndex4sizeEv
+FN:90,_ZNK3ept7debtags10Vocabulary8TagIndex4itemEi
+FN:105,_ZNK3ept7debtags10Vocabulary8TagIndex6offsetEi
+FN:107,_ZNK3ept7debtags10Vocabulary8TagIndex4sizeEi
+FN:111,_ZNK3ept7debtags10Vocabulary8TagIndex4nameEi
+FN:59,_ZN3ept7debtags10Vocabulary10FacetIndexC1Ev
+FN:98,_ZN3ept7debtags10Vocabulary8TagIndexC1Ev
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:59,31
+DA:64,0
+DA:66,59
+DA:68,59
+DA:90,1112004
+DA:92,1112004
+DA:93,1112004
+DA:94,0
+DA:98,31
+DA:103,0
+DA:105,1242
+DA:107,1242
+DA:111,3767
+BA:53,0
+BA:53,0
+BA:53,0
+BA:53,0
+BA:53,0
+BA:53,0
+BA:64,0
+BA:64,0
+BA:66,2
+BA:66,1
+BA:68,2
+BA:68,1
+BA:92,2
+BA:92,1
+BA:92,2
+BA:92,1
+BA:92,2
+BA:92,1
+BA:103,0
+BA:103,0
+BA:105,2
+BA:105,1
+BA:107,2
+BA:107,1
+BA:111,2
+BA:111,1
+LF:17
+LH:10
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:406,_ZNK6wibble9exception6System4codeEv
+FN:428,_ZNK6wibble9exception4File4typeEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:430,_ZNK6wibble9exception4File4descEv
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:395,_ZN6wibble9exception6SystemD2Ev
+FN:424,_ZN6wibble9exception4FileC1ERKSsS3_
+FN:426,_ZN6wibble9exception4FileD0Ev
+FN:426,_ZN6wibble9exception4FileD1Ev
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+DA:137,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:395,0
+DA:406,0
+DA:424,0
+DA:425,0
+DA:426,0
+DA:428,0
+DA:430,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:395,0
+BA:395,0
+BA:426,0
+BA:426,0
+BA:426,0
+BA:426,0
+LF:27
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsSsEEED2Ev
+FN:100,_ZNSaIcEC1ERKS_
+FN:100,_ZNSaIcEC2ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:106,_ZNSaISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEEED2Ev
+FN:98,_ZNSaISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEEEC2Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsSsEEEC2Ev
+FN:106,_ZNSaISt4pairIKSsSsEED1Ev
+FN:100,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsSsEEEC2ERKS4_
+FN:104,_ZNSaISt4pairIKSsSsEEC1ISt13_Rb_tree_nodeIS1_EEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,2708
+DA:100,9224
+DA:101,9224
+DA:104,0
+DA:106,62
+DA:118,0
+DA:119,0
+LF:7
+LH:4
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:276,0
+BA:276,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:1551,_ZNKSs13get_allocatorEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:392,_ZNSs10_S_compareEjj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+FN:1941,_ZNKSs7compareERKSs
+FN:2238,_ZStltIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:501,_ZNSsaSERKSs
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1923,0
+DA:1925,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2238,0
+DA:2239,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:308,0
+BA:308,0
+BA:341,0
+BA:341,0
+BA:1948,0
+BA:1948,0
+LF:86
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:188,_ZSt3minIjERKT_S2_S2_
+FN:286,_ZNSt12__miter_baseIPSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEELb0EE3__bES8_
+FN:268,_ZNSt12__niter_baseIPSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEELb0EE3__bES8_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESB_EET0_T_SD_SC_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEES8_ET1_T0_SA_S9_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEES8_ET1_T0_SA_S9_
+FN:624,_ZSt13copy_backwardIPSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEES8_ET0_T_SA_S9_
+FN:683,_ZSt8__fill_aIPSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEES7_EN9__gnu_cxx11__enable_ifIXntsrSt11__is_scalarIT0_E7__valueEvE6__typeET_SG_RKSC_
+FN:724,_ZSt4fillIPSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEES7_EvT_S9_RKT0_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,2528
+DA:269,2528
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+DA:683,1264
+DA:685,1264
+DA:686,0
+DA:687,1264
+DA:724,1264
+DA:731,1264
+DA:733,1264
+BA:193,0
+BA:193,0
+BA:215,0
+BA:215,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+BA:685,1
+BA:685,2
+LF:45
+LH:8
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+FN:75,_ZSt10_ConstructISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEES7_EvPT_RKT0_
+FN:87,_ZSt8_DestroyISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEEEvPT_
+FN:97,_ZSt8_DestroyIPSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEEEvT_S9_
+FN:126,_ZSt8_DestroyIPSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEES7_EvT_S9_RSaIT0_E
+DA:75,1930
+DA:79,1930
+DA:80,1930
+DA:87,4039
+DA:88,4039
+DA:97,99
+DA:101,4138
+DA:103,4039
+DA:104,99
+DA:126,99
+DA:128,99
+DA:129,99
+BA:79,2
+BA:79,1
+BA:101,0
+BA:101,0
+BA:101,2
+BA:101,2
+LF:12
+LH:12
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:482,_ZNKSt10_Select1stISt4pairIKSsSsEEclERKS2_
+FN:229,_ZNKSt4lessISsEclERKSsS2_
+DA:229,0
+DA:230,0
+DA:482,52476
+DA:483,52476
+LF:4
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESt6vectorIS8_SaIS8_EEEC1ERKS9_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESt6vectorIS8_SaIS8_EEE4baseEv
+FN:846,_ZN9__gnu_cxxmiIPSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESt6vectorIS8_SaIS8_EEEENS_17__normal_iteratorIT_T0_E15difference_typeERKSG_SJ_
+DA:683,2565
+DA:747,5130
+DA:748,5130
+DA:769,0
+DA:770,0
+DA:846,1264
+DA:847,1264
+LF:7
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_map.h
+FN:384,_ZNKSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEE5emptyEv
+FN:590,_ZNKSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEE8key_compEv
+FN:293,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEE3endEv
+FN:155,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEEC1Ev
+FN:175,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEEC1ERKS6_
+FN:239,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEEaSERKS6_
+FN:92,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEED1Ev
+FN:656,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEE11lower_boundERS3_
+FN:495,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEE6insertESt17_Rb_tree_iteratorIS4_ERKS4_
+FN:411,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEEixERS3_
+DA:92,6642
+DA:155,1339
+DA:156,1339
+DA:175,5303
+DA:176,5303
+DA:239,0
+DA:241,0
+DA:242,0
+DA:293,16367
+DA:294,16367
+DA:384,3898
+DA:385,3898
+DA:411,4905
+DA:416,4905
+DA:418,4905
+DA:419,2841
+DA:420,4905
+DA:495,2841
+DA:496,2841
+DA:590,2067
+DA:591,2067
+DA:656,4905
+DA:657,4905
+BA:418,2
+BA:418,2
+BA:418,2
+BA:418,2
+BA:418,2
+BA:418,2
+LF:23
+LH:20
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKSsSsEEbEC1ERKS3_RKb
+FN:73,_ZNSt4pairIKSsSsEC1ERKS1_
+FN:73,_ZNSt4pairIKSsSsED1Ev
+FN:88,_ZNSt4pairIKSsSsEC1ERS0_S2_
+DA:73,16526
+DA:88,11239
+DA:89,11239
+LF:3
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:103,_ZNSt18_Rb_tree_node_base10_S_minimumEPS_
+FN:117,_ZNSt18_Rb_tree_node_base10_S_maximumEPS_
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_beginEv
+FN:172,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsSsEEdeEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsSsEEeqERKS3_
+FN:637,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE5emptyEv
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE13_Rb_tree_implIS6_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:592,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8key_compEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsSsEEC1ERKSt17_Rb_tree_iteratorIS2_E
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE21_M_get_Node_allocatorEv
+FN:432,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE7_M_rootEv
+FN:456,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_beginEv
+FN:463,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE6_M_endEv
+FN:428,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE10_S_minimumEPSt18_Rb_tree_node_base
+FN:436,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE11_M_leftmostEv
+FN:511,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE10_S_maximumEPSt18_Rb_tree_node_base
+FN:444,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE12_M_rightmostEv
+FN:415,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE13_Rb_tree_implIS6_Lb0EE13_M_initializeEv
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKSsSsEEC1EPSt13_Rb_tree_nodeIS2_E
+FN:610,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE3endEv
+FN:641,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE4sizeEv
+FN:491,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_S_rightEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE7_S_leftEPKSt18_Rb_tree_node_base
+FN:403,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE13_Rb_tree_implIS6_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EEC1Ev
+FN:495,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:596,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE5beginEv
+FN:408,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE13_Rb_tree_implIS6_Lb0EEC1ERKS6_RKSaISt13_Rb_tree_nodeIS2_EE
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE13get_allocatorEv
+FN:471,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_S_valueEPKSt13_Rb_tree_nodeIS2_E
+FN:475,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE6_S_keyEPKSt13_Rb_tree_nodeIS2_E
+FN:356,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE11_M_get_nodeEv
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:364,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE14_M_create_nodeERKS2_
+FN:378,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE13_M_clone_nodeEPKSt13_Rb_tree_nodeIS2_E
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E
+FN:900,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE7_M_copyEPKSt13_Rb_tree_nodeIS2_EPSA_
+FN:568,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EEC1ERKS8_
+FN:695,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE5clearEv
+FN:824,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EEaSERKS8_
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EED1Ev
+FN:954,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE14_M_lower_boundEPSt13_Rb_tree_nodeIS2_ESB_RS1_
+FN:715,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE11lower_boundERS1_
+FN:270,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsSsEEmmEv
+FN:255,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsSsEEppEv
+FN:846,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE10_M_insert_EPKSt18_Rb_tree_node_baseSB_RKS2_
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKSsSsEEmmEv
+FN:1133,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE16_M_insert_uniqueERKS2_
+FN:1178,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE17_M_insert_unique_ESt23_Rb_tree_const_iteratorIS2_ERKS2_
+DA:103,0
+DA:105,0
+DA:106,0
+DA:117,0
+DA:119,0
+DA:120,0
+DA:168,59969
+DA:169,59969
+DA:172,6972
+DA:173,6972
+DA:195,54
+DA:197,54
+DA:198,54
+DA:210,16799
+DA:211,16799
+DA:243,20820
+DA:244,20820
+DA:255,0
+DA:257,0
+DA:258,0
+DA:270,0
+DA:272,0
+DA:273,0
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:356,16526
+DA:357,16526
+DA:360,0
+DA:361,0
+DA:364,16526
+DA:366,16526
+DA:368,16526
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,16526
+DA:378,6591
+DA:380,6591
+DA:381,6591
+DA:382,6591
+DA:383,6591
+DA:384,6591
+DA:388,0
+DA:390,0
+DA:391,0
+DA:392,0
+DA:398,0
+DA:403,2646
+DA:405,2646
+DA:406,2646
+DA:408,9224
+DA:410,9224
+DA:411,9224
+DA:415,11870
+DA:417,11870
+DA:418,11870
+DA:419,11870
+DA:420,11870
+DA:421,11870
+DA:428,9581
+DA:429,9581
+DA:432,9224
+DA:433,9224
+DA:436,5372
+DA:437,5372
+DA:444,8431
+DA:445,8431
+DA:452,0
+DA:453,0
+DA:456,6007
+DA:459,6007
+DA:463,38599
+DA:464,38599
+DA:471,25644
+DA:472,25644
+DA:475,25644
+DA:476,25644
+DA:479,0
+DA:480,0
+DA:483,12421
+DA:484,12421
+DA:487,0
+DA:488,0
+DA:491,4554
+DA:492,4554
+DA:495,15087
+DA:496,15087
+DA:499,15087
+DA:500,15087
+DA:503,2109
+DA:504,2109
+DA:511,2109
+DA:512,2109
+DA:562,2646
+DA:568,9224
+DA:569,9224
+DA:571,9224
+DA:573,2109
+DA:574,2109
+DA:575,2109
+DA:576,2109
+DA:578,9224
+DA:584,0
+DA:585,0
+DA:592,2067
+DA:593,2067
+DA:596,10599
+DA:599,10599
+DA:610,22226
+DA:611,22226
+DA:637,3898
+DA:638,3898
+DA:641,2838
+DA:642,2838
+DA:695,3254
+DA:697,3254
+DA:698,3254
+DA:699,3254
+DA:700,3254
+DA:701,3254
+DA:702,3254
+DA:715,4905
+DA:716,4905
+DA:824,0
+DA:826,0
+DA:829,0
+DA:830,0
+DA:831,0
+DA:833,0
+DA:834,0
+DA:835,0
+DA:836,0
+DA:839,0
+DA:846,9935
+DA:850,9935
+DA:852,9935
+DA:854,9935
+DA:857,9935
+DA:858,9935
+DA:900,4422
+DA:903,4422
+DA:904,4422
+DA:908,4422
+DA:909,2313
+DA:910,4422
+DA:911,4422
+DA:913,11013
+DA:915,2169
+DA:916,2169
+DA:917,2169
+DA:918,2169
+DA:919,0
+DA:920,2169
+DA:921,2169
+DA:924,0
+DA:926,0
+DA:927,0
+DA:929,4422
+DA:936,0
+DA:939,0
+DA:941,0
+DA:942,0
+DA:943,0
+DA:944,0
+DA:946,0
+DA:954,8811
+DA:956,30825
+DA:957,13203
+DA:958,7251
+DA:960,5952
+DA:961,8811
+DA:1133,8398
+DA:1135,8398
+DA:1136,8398
+DA:1137,8398
+DA:1138,21166
+DA:1140,4370
+DA:1141,4370
+DA:1142,4370
+DA:1144,8398
+DA:1145,8398
+DA:1147,7988
+DA:1148,7934
+DA:1150,54
+DA:1152,464
+DA:1153,464
+DA:1154,0
+DA:1178,2841
+DA:1181,2841
+DA:1183,2838
+DA:1186,1534
+DA:1188,1304
+DA:1190,3
+DA:1194,3
+DA:1195,3
+DA:1196,3
+DA:1197,0
+DA:1200,0
+DA:1201,0
+DA:1204,0
+DA:1207,0
+DA:1209,0
+DA:1213,0
+DA:1214,0
+DA:1215,0
+DA:1216,0
+DA:1219,0
+DA:1220,0
+DA:1222,0
+DA:1225,0
+DA:1230,0
+BA:105,0
+BA:105,0
+BA:119,0
+BA:119,0
+BA:571,2
+BA:571,2
+BA:826,0
+BA:826,0
+BA:831,0
+BA:831,0
+BA:850,2
+BA:850,2
+BA:850,2
+BA:850,2
+BA:850,2
+BA:850,2
+BA:908,2
+BA:908,2
+BA:913,2
+BA:913,2
+BA:918,1
+BA:918,2
+BA:939,0
+BA:939,0
+BA:956,2
+BA:956,2
+BA:957,2
+BA:957,2
+BA:1138,2
+BA:1138,2
+BA:1142,2
+BA:1142,2
+BA:1145,2
+BA:1145,2
+BA:1147,2
+BA:1147,2
+BA:1152,2
+BA:1152,1
+BA:1181,2
+BA:1181,2
+BA:1183,2
+BA:1183,2
+BA:1183,2
+BA:1183,1
+BA:1183,2
+BA:1183,2
+BA:1190,2
+BA:1190,1
+BA:1195,2
+BA:1195,1
+BA:1197,0
+BA:1197,0
+BA:1200,0
+BA:1200,0
+BA:1209,0
+BA:1209,0
+BA:1214,0
+BA:1214,0
+BA:1216,0
+BA:1216,0
+BA:1219,0
+BA:1219,0
+LF:213
+LH:142
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:186,_ZNSt22__uninitialized_fill_nILb0EE20uninitialized_fill_nIPSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEEjS9_EEvT_T0_RKT1_
+FN:223,_ZSt20uninitialized_fill_nIPSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEEjS7_EvT_T0_RKT1_
+FN:322,_ZSt24__uninitialized_fill_n_aIPSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEEjS7_S7_EvT_T0_RKT1_RSaIT2_E
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESA_EET0_T_SC_SB_
+FN:113,_ZSt18uninitialized_copyIPSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEES8_ET0_T_SA_S9_
+FN:261,_ZSt22__uninitialized_copy_aIPSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEES8_S7_ET0_T_SA_S9_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEES8_SaIS7_EET0_T_SB_SA_RT1_
+DA:73,1338
+DA:75,1338
+DA:78,3447
+DA:79,2109
+DA:81,1338
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,1338
+DA:122,1338
+DA:186,1301
+DA:188,1301
+DA:191,3231
+DA:192,1930
+DA:194,0
+DA:196,0
+DA:197,0
+DA:199,1301
+DA:223,1301
+DA:228,1301
+DA:230,1301
+DA:261,1338
+DA:262,1338
+DA:268,1338
+DA:272,1338
+DA:322,1301
+DA:323,1301
+BA:78,2
+BA:78,2
+BA:79,2
+BA:79,1
+BA:191,2
+BA:191,2
+LF:27
+LH:21
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:484,_ZNKSt6vectorISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESaIS7_EE4sizeEv
+FN:562,_ZNSt6vectorISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESaIS7_EEixEj
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:97,_ZNSt12_Vector_baseISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESaIS7_EE19_M_get_Tp_allocatorEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:395,_ZNSt6vectorISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESaIS7_EE3endEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:79,_ZNSt12_Vector_baseISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESaIS7_EE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESaIS7_EE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESaIS7_EEC2Ev
+FN:213,_ZNSt6vectorISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESaIS7_EEC1Ev
+FN:101,_ZNKSt12_Vector_baseISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESaIS7_EE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESaIS7_EE8max_sizeEv
+FN:143,_ZNSt12_Vector_baseISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESaIS7_EE11_M_allocateEj
+FN:1089,_ZNSt6vectorISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESaIS7_EE15_M_erase_at_endEPS7_
+FN:147,_ZNSt12_Vector_baseISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESaIS7_EE13_M_deallocateEPS7_j
+FN:135,_ZNSt12_Vector_baseISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESaIS7_EED2Ev
+FN:299,_ZNSt6vectorISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESaIS7_EED1Ev
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:1075,_ZNKSt6vectorISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESaIS7_EE12_M_check_lenEjPKc
+FN:791,_ZNSt6vectorISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESaIS7_EE6insertEN9__gnu_cxx17__normal_iteratorIPS7_S9_EEjRKS7_
+FN:504,_ZNSt6vectorISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESaIS7_EE6resizeEjS7_
+DA:79,62
+DA:84,62
+DA:85,62
+DA:86,62
+DA:97,2738
+DA:98,2738
+DA:101,74
+DA:102,74
+DA:108,62
+DA:109,62
+DA:135,62
+DA:136,62
+DA:137,62
+DA:143,37
+DA:144,37
+DA:147,99
+DA:149,99
+DA:150,37
+DA:151,99
+DA:213,62
+DA:214,62
+DA:299,62
+DA:300,62
+DA:301,62
+DA:386,0
+DA:387,0
+DA:395,2565
+DA:396,2565
+DA:404,0
+DA:405,0
+DA:484,6648
+DA:485,6648
+DA:489,74
+DA:490,74
+DA:504,1301
+DA:506,1301
+DA:507,0
+DA:509,1301
+DA:510,1301
+DA:526,0
+DA:527,0
+DA:562,9097
+DA:563,9097
+DA:791,1301
+DA:792,1301
+DA:1075,37
+DA:1077,37
+DA:1078,0
+DA:1080,37
+DA:1081,37
+DA:1089,0
+DA:1091,0
+DA:1092,0
+DA:1093,0
+BA:144,2
+BA:144,1
+BA:149,2
+BA:149,2
+BA:149,0
+BA:149,0
+BA:506,1
+BA:506,2
+BA:1077,1
+BA:1077,2
+BA:1081,2
+BA:1081,1
+BA:1081,1
+BA:1081,2
+LF:54
+LH:42
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:350,_ZNSt6vectorISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEESaIS7_EE14_M_fill_insertEN9__gnu_cxx17__normal_iteratorIPS7_S9_EEjRKS7_
+DA:350,1301
+DA:352,1301
+DA:357,1301
+DA:361,1264
+DA:363,1264
+DA:364,1264
+DA:365,1264
+DA:367,0
+DA:371,0
+DA:372,0
+DA:374,0
+DA:379,1264
+DA:383,1264
+DA:384,1264
+DA:387,1264
+DA:388,1264
+DA:394,37
+DA:395,37
+DA:396,37
+DA:399,37
+DA:407,37
+DA:410,37
+DA:411,37
+DA:417,0
+DA:419,0
+DA:421,0
+DA:422,0
+DA:424,37
+DA:426,37
+DA:429,37
+DA:430,37
+DA:431,37
+DA:434,1301
+BA:352,2
+BA:352,1
+BA:357,2
+BA:357,2
+BA:365,1
+BA:365,2
+LF:33
+LH:25
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSsEEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSsEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSsEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSsEEEC2ERKS6_
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSsEEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSsEEE8max_sizeEv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSsEEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEEE8allocateEjPKv
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSsEE9constructEPS3_RKS3_
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSsEE7destroyEPS3_
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSsEEE10deallocateEPS5_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEEE10deallocateEPS8_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+DA:69,2708
+DA:71,9224
+DA:76,62
+DA:87,16563
+DA:89,16563
+DA:90,0
+DA:92,16563
+DA:97,37
+DA:98,37
+DA:101,16637
+DA:102,16637
+DA:107,16526
+DA:108,16526
+DA:118,0
+BA:89,1
+BA:89,2
+BA:89,1
+BA:89,2
+BA:108,2
+BA:108,1
+LF:14
+LH:12
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,2
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:464,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c
+FN:195,_ZNSolsEj
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+DA:95,0
+DA:195,0
+DA:199,0
+DA:365,0
+DA:366,0
+DA:464,0
+DA:465,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/input/base.h
+FN:104,_ZN7tagcoll5input5InputD2Ev
+FN:104,_ZN7tagcoll5input5InputD0Ev
+FN:104,_ZN7tagcoll5input5InputD1Ev
+DA:104,0
+BA:104,0
+BA:104,0
+BA:104,0
+BA:104,0
+BA:104,0
+BA:104,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/input/memory.h
+FN:47,_ZN7tagcoll5input6MemoryD1Ev
+DA:47,1301
+BA:47,1
+BA:47,2
+LF:1
+LH:1
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/pkgid.cc
+FN:40,_ZNK3ept7debtags5PkgId6byNameERKSs
+FN:37,_ZN3ept7debtags5PkgIdC1ERKN7tagcoll9diskindex10MasterMMapEj
+FN:37,_ZN3ept7debtags5PkgIdC2ERKN7tagcoll9diskindex10MasterMMapEj
+FN:34,_ZN3ept7debtags5PkgIdC1EPKci
+FN:34,_ZN3ept7debtags5PkgIdC2EPKci
+FN:32,_ZN3ept7debtags5PkgIdC1Ev
+FN:32,_ZN3ept7debtags5PkgIdC2Ev
+DA:32,10
+DA:34,1
+DA:35,1
+DA:37,0
+DA:38,0
+DA:40,63445
+DA:46,63445
+DA:47,1043664
+DA:49,916774
+DA:50,916774
+DA:51,443057
+DA:53,473717
+DA:56,63445
+DA:58,2
+DA:60,63443
+BA:47,2
+BA:47,2
+BA:50,2
+BA:50,2
+BA:56,2
+BA:56,2
+BA:56,1
+BA:56,2
+BA:56,2
+BA:56,2
+BA:56,0
+BA:56,0
+BA:56,2
+BA:56,2
+LF:15
+LH:13
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/pkgid.h
+FN:54,_ZNK3ept7debtags5PkgId4sizeEv
+FN:68,_ZNK3ept7debtags5PkgId4byIDEi
+DA:54,0
+DA:68,0
+DA:70,0
+DA:71,0
+DA:72,0
+BA:54,0
+BA:54,0
+BA:70,0
+BA:70,0
+BA:70,0
+BA:70,0
+BA:70,0
+BA:70,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:277,_ZNKSs7_M_dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:606,_ZNKSs4sizeEv
+FN:1544,_ZNKSs4dataEv
+FN:392,_ZNSs10_S_compareEjj
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:1941,_ZNKSs7compareERKSs
+FN:2275,_ZStgtIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:2201,_ZStneIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+DA:178,0
+DA:183,0
+DA:184,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:606,0
+DA:607,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2162,0
+DA:2165,0
+DA:2201,0
+DA:2202,0
+DA:2275,0
+DA:2276,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:1948,0
+BA:1948,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:46
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:257,0
+DA:258,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:188,_ZSt3minIjERKT_S2_S2_
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+BA:193,0
+BA:193,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+DA:69,0
+DA:71,0
+DA:76,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/debdbparser.cc
+FN:186,_Z41__static_initialization_and_destruction_0ii
+FN:186,_GLOBAL__I_debdbparser.cc
+FN:36,_ZN3ept7debtags11DebDBParser22eatSpacesAndEmptyLinesEv
+FN:129,_ZN3ept7debtags11DebDBParserC1ERN7tagcoll5input5InputE
+FN:129,_ZN3ept7debtags11DebDBParserC2ERN7tagcoll5input5InputE
+FN:102,_ZN3ept7debtags11DebDBParser15appendFieldBodyERSs
+FN:82,_ZN3ept7debtags11DebDBParser11eatFieldSepEv
+FN:58,_ZN3ept7debtags11DebDBParser12getFieldNameEv
+FN:139,_ZN3ept7debtags11DebDBParser10nextRecordERSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEE
+DA:36,12089
+DA:38,12089
+DA:40,31183
+DA:41,7005
+DA:43,3314
+DA:45,3314
+DA:47,3691
+DA:49,12089
+DA:50,1308
+DA:52,10781
+DA:54,12089
+DA:58,7094
+DA:60,7094
+DA:61,0
+DA:63,7094
+DA:66,63954
+DA:67,49766
+DA:69,7094
+DA:71,0
+DA:72,0
+DA:73,0
+DA:75,7094
+DA:77,0
+DA:82,7094
+DA:86,7094
+DA:89,7094
+DA:91,0
+DA:93,0
+DA:94,0
+DA:96,0
+DA:99,7094
+DA:102,17875
+DA:107,17875
+DA:111,280757
+DA:112,269976
+DA:115,10781
+DA:116,10781
+DA:117,10781
+DA:119,10781
+DA:120,0
+DA:124,10781
+DA:126,10781
+DA:129,1308
+DA:130,1308
+DA:133,1308
+DA:134,1308
+DA:139,3261
+DA:141,3261
+DA:142,7
+DA:144,3254
+DA:147,12880
+DA:149,7094
+DA:150,7094
+DA:155,7094
+DA:158,7094
+DA:162,17875
+DA:164,3687
+DA:166,3687
+DA:168,3687
+DA:171,3687
+DA:172,601
+DA:179,7094
+DA:182,3254
+DA:186,6
+BA:40,2
+BA:40,2
+BA:40,2
+BA:40,2
+BA:40,2
+BA:40,2
+BA:40,2
+BA:40,2
+BA:41,2
+BA:41,2
+BA:49,2
+BA:49,2
+BA:60,1
+BA:60,2
+BA:66,2
+BA:66,1
+BA:66,2
+BA:66,2
+BA:66,1
+BA:66,2
+BA:66,2
+BA:66,2
+BA:69,1
+BA:69,2
+BA:72,0
+BA:72,0
+BA:86,2
+BA:86,1
+BA:86,1
+BA:86,2
+BA:86,1
+BA:86,2
+BA:89,1
+BA:89,2
+BA:91,0
+BA:91,0
+BA:107,2
+BA:107,1
+BA:107,2
+BA:107,2
+BA:107,2
+BA:107,2
+BA:111,2
+BA:111,1
+BA:111,2
+BA:111,2
+BA:116,2
+BA:116,1
+BA:119,1
+BA:119,2
+BA:141,2
+BA:141,2
+BA:147,2
+BA:147,2
+BA:147,2
+BA:147,2
+BA:162,2
+BA:162,2
+BA:162,2
+BA:162,2
+BA:162,2
+BA:162,2
+BA:171,2
+BA:171,2
+BA:171,2
+BA:171,1
+BA:171,2
+BA:171,2
+BA:186,2
+BA:186,1
+BA:186,2
+BA:186,1
+LF:64
+LH:54
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:263,_ZNK6wibble9exception11Consistency4typeEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:265,_ZNK6wibble9exception11Consistency4descEv
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:261,_ZN6wibble9exception11ConsistencyD2Ev
+FN:261,_ZN6wibble9exception11ConsistencyD0Ev
+FN:261,_ZN6wibble9exception11ConsistencyD1Ev
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+DA:137,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:261,0
+DA:263,0
+DA:265,0
+DA:266,0
+DA:267,0
+DA:268,0
+DA:269,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:267,0
+BA:267,0
+LF:27
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:106,_ZNSaISt4pairIKSsSsEED1Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+FN:104,_ZNSaISt4pairIKSsSsEEC1ISt13_Rb_tree_nodeIS1_EEERKSaIT_E
+DA:98,0
+DA:100,0
+DA:101,0
+DA:104,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:7
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:276,0
+BA:276,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:192,_ZNKSs4_Rep12_M_is_sharedEv
+FN:652,_ZNKSs8capacityEv
+FN:188,_ZNKSs4_Rep12_M_is_leakedEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:392,_ZNSs10_S_compareEjj
+FN:870,_ZNSs9push_backEc
+FN:791,_ZNSspLEc
+FN:299,_ZNSs7_M_leakEv
+FN:718,_ZNSsixEj
+FN:644,_ZNSs6resizeEj
+FN:1941,_ZNKSs7compareERKSs
+FN:2238,_ZStltIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:1891,_ZNKSs16find_last_not_ofEPKcj
+FN:2136,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S3_
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:501,_ZNSsaSERKSs
+DA:178,0
+DA:183,0
+DA:184,0
+DA:188,0
+DA:189,0
+DA:192,0
+DA:193,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:299,0
+DA:301,0
+DA:302,0
+DA:303,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:644,0
+DA:645,0
+DA:652,0
+DA:653,0
+DA:686,0
+DA:687,0
+DA:718,0
+DA:724,0
+DA:725,0
+DA:791,0
+DA:793,0
+DA:794,0
+DA:835,0
+DA:838,0
+DA:870,0
+DA:872,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:877,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1891,0
+DA:1894,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2136,0
+DA:2140,0
+DA:2141,0
+DA:2142,0
+DA:2238,0
+DA:2239,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:301,0
+BA:301,0
+BA:341,0
+BA:341,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:1948,0
+BA:1948,0
+LF:111
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+FN:668,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+DA:668,0
+DA:673,0
+DA:674,0
+DA:675,0
+DA:676,0
+DA:677,0
+DA:678,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:23
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:188,_ZSt3minIjERKT_S2_S2_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+BA:193,0
+BA:193,0
+BA:340,0
+BA:340,0
+LF:23
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:482,_ZNKSt10_Select1stISt4pairIKSsSsEEclERKS2_
+FN:229,_ZNKSt4lessISsEclERKSsS2_
+DA:229,0
+DA:230,0
+DA:482,0
+DA:483,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+DA:683,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_map.h
+FN:468,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEE6insertERKS4_
+FN:581,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEE5clearEv
+DA:468,7094
+DA:469,7094
+DA:581,3254
+DA:582,3254
+LF:4
+LH:4
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKSsSsEEbEC1ERKS3_RKb
+FN:88,_ZNSt4pairISsSsEC1ERKSsS2_
+FN:104,_ZNSt4pairIKSsSsEC1ISsSsEERKS_IT_T0_E
+FN:73,_ZNSt4pairIKSsSsEC1ERKS1_
+FN:73,_ZNSt4pairIKSsSsED1Ev
+FN:73,_ZNSt4pairISsSsED1Ev
+DA:73,7094
+DA:88,7094
+DA:89,7094
+DA:104,7094
+DA:106,7094
+LF:5
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_beginEv
+FN:463,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE6_M_endEv
+FN:436,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE11_M_leftmostEv
+FN:428,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE7_M_rootEv
+FN:444,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE12_M_rightmostEv
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKSsSsEEC1EPSt13_Rb_tree_nodeIS2_E
+FN:596,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsSsEEeqERKS3_
+FN:471,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_S_valueEPKSt13_Rb_tree_nodeIS2_E
+FN:475,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE6_S_keyEPKSt13_Rb_tree_nodeIS2_E
+FN:495,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE21_M_get_Node_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE13get_allocatorEv
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKSsSsEEmmEv
+FN:356,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE14_M_create_nodeERKS2_
+FN:846,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE10_M_insert_EPKSt18_Rb_tree_node_baseSB_RKS2_
+FN:1133,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE16_M_insert_uniqueERKS2_
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E
+FN:695,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE5clearEv
+DA:168,0
+DA:169,0
+DA:195,0
+DA:197,0
+DA:198,0
+DA:210,0
+DA:211,0
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:356,0
+DA:357,0
+DA:360,0
+DA:361,0
+DA:364,0
+DA:366,0
+DA:368,0
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,0
+DA:388,0
+DA:390,0
+DA:391,0
+DA:392,0
+DA:428,0
+DA:429,0
+DA:436,0
+DA:437,0
+DA:444,0
+DA:445,0
+DA:452,0
+DA:453,0
+DA:463,0
+DA:464,0
+DA:471,0
+DA:472,0
+DA:475,0
+DA:476,0
+DA:479,0
+DA:480,0
+DA:487,0
+DA:488,0
+DA:495,0
+DA:496,0
+DA:499,0
+DA:500,0
+DA:596,0
+DA:599,0
+DA:695,0
+DA:697,0
+DA:698,0
+DA:699,0
+DA:700,0
+DA:701,0
+DA:702,0
+DA:846,0
+DA:850,0
+DA:852,0
+DA:854,0
+DA:857,0
+DA:858,0
+DA:936,0
+DA:939,0
+DA:941,0
+DA:942,0
+DA:943,0
+DA:944,0
+DA:946,0
+DA:1133,0
+DA:1135,0
+DA:1136,0
+DA:1137,0
+DA:1138,0
+DA:1140,0
+DA:1141,0
+DA:1142,0
+DA:1144,0
+DA:1145,0
+DA:1147,0
+DA:1148,0
+DA:1150,0
+DA:1152,0
+DA:1153,0
+DA:1154,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:939,0
+BA:939,0
+BA:1138,0
+BA:1138,0
+BA:1142,0
+BA:1142,0
+BA:1145,0
+BA:1145,0
+BA:1147,0
+BA:1147,0
+BA:1152,0
+BA:1152,0
+LF:86
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+DA:79,0
+DA:97,0
+DA:98,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:386,0
+DA:387,0
+DA:404,0
+DA:405,0
+DA:526,0
+DA:527,0
+BA:149,0
+BA:149,0
+LF:19
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSsEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSsEEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSsEEE8max_sizeEv
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSsEEE10deallocateEPS5_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSsEEE8allocateEjPKv
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSsEE9constructEPS3_RKS3_
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSsEE7destroyEPS3_
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+DA:118,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,2
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+DA:95,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/input/base.h
+FN:68,_ZNK7tagcoll9exception5Input4typeEv
+FN:81,_ZNK7tagcoll9exception6Parser4typeEv
+FN:77,_ZN7tagcoll9exception6ParserC1ERKNS_5input5InputERKSs
+FN:59,_ZN7tagcoll9exception5InputD2Ev
+FN:79,_ZN7tagcoll9exception6ParserD0Ev
+FN:79,_ZN7tagcoll9exception6ParserD1Ev
+FN:59,_ZN7tagcoll9exception5InputD0Ev
+FN:59,_ZN7tagcoll9exception5InputD1Ev
+DA:59,0
+DA:68,0
+DA:77,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+BA:59,0
+BA:59,0
+BA:59,0
+BA:59,0
+BA:59,0
+BA:59,0
+BA:79,0
+BA:79,0
+BA:79,0
+BA:79,0
+LF:7
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/vocabularymerger.cc
+FN:384,_Z41__static_initialization_and_destruction_0ii
+FN:384,_GLOBAL__I_vocabularymerger.cc
+FN:324,_ZNK3ept7debtags16VocabularyMerger10TagIndexer11encodedSizeEv
+FN:257,_ZNK3ept7debtags16VocabularyMerger12FacetIndexer11encodedSizeEv
+FN:348,_ZNK3ept7debtags16VocabularyMerger10TagIndexer6encodeEPc
+FN:279,_ZNK3ept7debtags16VocabularyMerger12FacetIndexer6encodeEPc
+FN:200,_ZNK3ept7debtags16VocabularyMerger8tagNamesEv
+FN:74,_ZN3ept7debtags16VocabularyMerger9FacetData9obtainTagERKSs
+FN:87,_ZN3ept7debtags16VocabularyMerger11obtainFacetERKSs
+FN:177,_ZNK3ept7debtags16VocabularyMerger5tagIDERKSs
+FN:157,_ZNK3ept7debtags16VocabularyMerger6hasTagERKSs
+FN:100,_ZN3ept7debtags16VocabularyMerger9obtainTagERKSs
+FN:34,_ZN3ept7debtagsL18writeDebStyleFieldEP8_IO_FILERKSsS4_
+FN:219,_ZN3ept7debtags16VocabularyMerger5writeEP8_IO_FILE
+FN:210,_ZN3ept7debtags16VocabularyMerger5writeERKSs
+FN:114,_ZN3ept7debtags16VocabularyMerger4readERN7tagcoll5input5InputE
+DA:34,1432
+DA:36,1432
+DA:39,1432
+DA:40,56225
+DA:41,54793
+DA:43,738
+DA:45,120
+DA:46,120
+DA:47,120
+DA:50,618
+DA:52,618
+DA:53,618
+DA:54,618
+DA:59,0
+DA:60,0
+DA:63,54055
+DA:65,618
+DA:66,618
+DA:69,53437
+DA:71,1432
+DA:72,1432
+DA:74,1865
+DA:76,1865
+DA:77,1865
+DA:80,1245
+DA:81,1245
+DA:82,1245
+DA:84,1865
+DA:87,1953
+DA:89,1953
+DA:90,1953
+DA:93,62
+DA:94,62
+DA:95,62
+DA:97,1953
+DA:100,1865
+DA:102,1865
+DA:103,1865
+DA:105,28
+DA:106,28
+DA:108,1837
+DA:109,3674
+DA:114,7
+DA:116,7
+DA:117,7
+DA:119,1967
+DA:121,1953
+DA:122,3906
+DA:123,3906
+DA:126,88
+DA:128,88
+DA:131,416
+DA:133,328
+DA:134,240
+DA:136,1865
+DA:139,1865
+DA:144,5796
+DA:146,3931
+DA:147,2066
+DA:152,0
+DA:154,7
+DA:155,7
+DA:157,0
+DA:159,0
+DA:160,0
+DA:161,0
+DA:162,0
+DA:164,0
+DA:165,0
+DA:167,0
+DA:168,0
+DA:171,0
+DA:172,0
+DA:173,0
+DA:174,0
+DA:177,0
+DA:179,0
+DA:180,0
+DA:181,0
+DA:182,0
+DA:184,0
+DA:185,0
+DA:187,0
+DA:188,0
+DA:191,0
+DA:192,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:196,0
+DA:197,0
+DA:200,1
+DA:202,1
+DA:203,30
+DA:204,649
+DA:206,620
+DA:207,0
+DA:210,4
+DA:212,4
+DA:213,4
+DA:214,0
+DA:215,4
+DA:216,4
+DA:217,4
+DA:219,4
+DA:221,4
+DA:222,4
+DA:223,4
+DA:226,37
+DA:228,33
+DA:230,33
+DA:231,33
+DA:232,115
+DA:234,82
+DA:235,33
+DA:236,33
+DA:238,658
+DA:241,625
+DA:243,625
+DA:244,625
+DA:245,1317
+DA:247,692
+DA:248,625
+DA:249,625
+DA:253,4
+DA:254,4
+DA:257,4
+DA:260,4
+DA:262,37
+DA:269,33
+DA:272,33
+DA:273,25
+DA:276,4
+DA:279,4
+DA:281,4
+DA:283,37
+DA:285,33
+DA:288,33
+DA:289,33
+DA:292,33
+DA:293,33
+DA:295,33
+DA:298,1
+DA:299,1
+DA:302,1
+DA:303,1
+DA:306,32
+DA:307,32
+DA:310,32
+DA:311,32
+DA:315,33
+DA:316,33
+DA:319,33
+DA:320,25
+DA:322,4
+DA:324,4
+DA:327,4
+DA:329,37
+DA:331,658
+DA:338,625
+DA:341,625
+DA:342,479
+DA:345,4
+DA:348,4
+DA:350,4
+DA:352,37
+DA:354,658
+DA:357,625
+DA:360,625
+DA:361,625
+DA:364,625
+DA:365,625
+DA:368,625
+DA:369,625
+DA:372,625
+DA:373,625
+DA:374,625
+DA:377,625
+DA:378,479
+DA:381,4
+DA:384,6
+BA:40,2
+BA:40,2
+BA:41,2
+BA:41,2
+BA:43,2
+BA:43,2
+BA:50,2
+BA:50,1
+BA:50,2
+BA:50,1
+BA:50,2
+BA:50,1
+BA:63,2
+BA:63,2
+BA:77,2
+BA:77,2
+BA:90,2
+BA:90,2
+BA:103,2
+BA:103,2
+BA:119,2
+BA:119,2
+BA:123,2
+BA:123,2
+BA:128,1
+BA:128,2
+BA:131,2
+BA:131,2
+BA:133,2
+BA:133,2
+BA:136,2
+BA:136,1
+BA:144,2
+BA:144,2
+BA:146,2
+BA:146,2
+BA:162,0
+BA:162,0
+BA:172,0
+BA:172,0
+BA:182,0
+BA:182,0
+BA:192,0
+BA:192,0
+BA:195,0
+BA:195,0
+BA:203,2
+BA:203,2
+BA:204,2
+BA:204,2
+BA:213,1
+BA:213,2
+BA:226,2
+BA:226,2
+BA:232,2
+BA:232,2
+BA:238,2
+BA:238,2
+BA:245,2
+BA:245,2
+BA:262,2
+BA:262,2
+BA:272,2
+BA:272,2
+BA:283,2
+BA:283,2
+BA:295,2
+BA:295,2
+BA:319,2
+BA:319,2
+BA:329,2
+BA:329,2
+BA:331,2
+BA:331,2
+BA:341,2
+BA:341,2
+BA:352,2
+BA:352,2
+BA:354,2
+BA:354,2
+BA:377,2
+BA:377,2
+BA:384,2
+BA:384,1
+BA:384,2
+BA:384,1
+LF:181
+LH:147
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/vocabularymerger.h
+FN:42,_ZN3ept7debtags16VocabularyMerger12FacetIndexerD0Ev
+FN:42,_ZN3ept7debtags16VocabularyMerger12FacetIndexerD1Ev
+FN:52,_ZN3ept7debtags16VocabularyMerger10TagIndexerD0Ev
+FN:52,_ZN3ept7debtags16VocabularyMerger10TagIndexerD1Ev
+FN:65,_ZN3ept7debtags16VocabularyMerger7TagDataC1Ev
+FN:77,_ZN3ept7debtags16VocabularyMerger9FacetDataC1Ev
+FN:57,_ZN3ept7debtags16VocabularyMerger7TagDataD1Ev
+FN:68,_ZN3ept7debtags16VocabularyMerger9FacetDataD1Ev
+FN:57,_ZN3ept7debtags16VocabularyMerger7TagDataC1ERKS2_
+FN:68,_ZN3ept7debtags16VocabularyMerger9FacetDataC1ERKS2_
+DA:42,0
+DA:52,0
+DA:57,3735
+DA:65,1245
+DA:68,186
+DA:77,62
+BA:42,0
+BA:42,0
+BA:42,0
+BA:42,0
+BA:52,0
+BA:52,0
+BA:52,0
+BA:52,0
+LF:6
+LH:4
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:406,_ZNK6wibble9exception6System4codeEv
+FN:428,_ZNK6wibble9exception4File4typeEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:430,_ZNK6wibble9exception4File4descEv
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:395,_ZN6wibble9exception6SystemD2Ev
+FN:424,_ZN6wibble9exception4FileC1ERKSsS3_
+FN:426,_ZN6wibble9exception4FileD0Ev
+FN:426,_ZN6wibble9exception4FileD1Ev
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+DA:137,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:395,0
+DA:406,0
+DA:424,0
+DA:425,0
+DA:426,0
+DA:428,0
+DA:430,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:395,0
+BA:395,0
+BA:426,0
+BA:426,0
+BA:426,0
+BA:426,0
+LF:27
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsSsEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISsEED2Ev
+FN:100,_ZNSaIcEC1ERKS_
+FN:100,_ZNSaIcEC2ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:106,_ZNSaISsED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsSsEEEC2Ev
+FN:106,_ZNSaISt4pairIKSsSsEED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEEC2Ev
+FN:106,_ZNSaISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEED1Ev
+FN:106,_ZNSaISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEED1Ev
+FN:100,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsSsEEEC2ERKS4_
+FN:100,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEEC2ERKS8_
+FN:98,_ZNSaISt13_Rb_tree_nodeISsEEC2Ev
+FN:104,_ZNSaISsEC1ISt13_Rb_tree_nodeISsEEERKSaIT_E
+FN:104,_ZNSaISt4pairIKSsSsEEC1ISt13_Rb_tree_nodeIS1_EEERKSaIT_E
+FN:104,_ZNSaISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEC1ISt13_Rb_tree_nodeIS5_EEERKSaIT_E
+FN:104,_ZNSaISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEC1ISt13_Rb_tree_nodeIS5_EEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,62
+DA:100,186
+DA:101,186
+DA:104,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:7
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:276,0
+BA:276,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:543,_ZNKSs5beginEv
+FN:562,_ZNKSs3endEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:1551,_ZNKSs13get_allocatorEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:392,_ZNSs10_S_compareEjj
+FN:835,_ZNSs6appendEPKc
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:501,_ZNSsaSERKSs
+FN:1941,_ZNKSs7compareERKSs
+FN:2238,_ZStltIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:1593,_ZNKSs4findEPKcj
+FN:928,_ZNSs6assignEPKc
+FN:509,_ZNSsaSEPKc
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:2225,_ZStneIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:509,0
+DA:510,0
+DA:543,0
+DA:544,0
+DA:562,0
+DA:563,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:928,0
+DA:931,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1593,0
+DA:1596,0
+DA:1923,0
+DA:1925,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2162,0
+DA:2165,0
+DA:2188,0
+DA:2189,0
+DA:2225,0
+DA:2226,0
+DA:2238,0
+DA:2239,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:308,0
+BA:308,0
+BA:341,0
+BA:341,0
+BA:1948,0
+BA:1948,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:102
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:188,_ZSt3minIjERKT_S2_S2_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+BA:193,0
+BA:193,0
+BA:340,0
+BA:340,0
+LF:23
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:482,_ZNKSt10_Select1stISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEclERKS6_
+FN:482,_ZNKSt10_Select1stISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEclERKS6_
+FN:469,_ZNKSt9_IdentityISsEclERKSs
+FN:482,_ZNKSt10_Select1stISt4pairIKSsSsEEclERKS2_
+FN:229,_ZNKSt4lessISsEclERKSsS2_
+DA:229,0
+DA:230,0
+DA:469,0
+DA:470,0
+DA:482,38107
+DA:483,38107
+LF:6
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPKcSsEdeEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKcSsEC1ERKS2_
+FN:710,_ZN9__gnu_cxx17__normal_iteratorIPKcSsEppEi
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKcSsE4baseEv
+FN:781,_ZN9__gnu_cxxneIPKcSsEEbRKNS_17__normal_iteratorIT_T0_EES8_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:125,_ZNSt16reverse_iteratorISt23_Rb_tree_const_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEEC1ES8_
+FN:154,_ZNKSt16reverse_iteratorISt23_Rb_tree_const_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEEdeEv
+FN:166,_ZNKSt16reverse_iteratorISt23_Rb_tree_const_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEEptEv
+DA:125,32
+DA:154,32
+DA:156,32
+DA:157,32
+DA:166,32
+DA:167,32
+DA:683,54793
+DA:695,0
+DA:696,0
+DA:710,54793
+DA:711,54793
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+DA:781,0
+DA:782,0
+LF:17
+LH:9
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:111,_ZNSt8iteratorISt26bidirectional_iterator_tagSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEiPKS7_RS8_EC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,32
+DA:166,0
+DA:167,0
+LF:3
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_map.h
+FN:389,_ZNKSt3mapISsN3ept7debtags16VocabularyMerger9FacetDataESt4lessISsESaISt4pairIKSsS3_EEE4sizeEv
+FN:384,_ZNKSt3mapISsN3ept7debtags16VocabularyMerger7TagDataESt4lessISsESaISt4pairIKSsS3_EEE5emptyEv
+FN:284,_ZNKSt3mapISsN3ept7debtags16VocabularyMerger9FacetDataESt4lessISsESaISt4pairIKSsS3_EEE5beginEv
+FN:302,_ZNKSt3mapISsN3ept7debtags16VocabularyMerger9FacetDataESt4lessISsESaISt4pairIKSsS3_EEE3endEv
+FN:275,_ZNSt3mapISsN3ept7debtags16VocabularyMerger7TagDataESt4lessISsESaISt4pairIKSsS3_EEE5beginEv
+FN:293,_ZNSt3mapISsN3ept7debtags16VocabularyMerger7TagDataESt4lessISsESaISt4pairIKSsS3_EEE3endEv
+FN:275,_ZNSt3mapISsN3ept7debtags16VocabularyMerger9FacetDataESt4lessISsESaISt4pairIKSsS3_EEE5beginEv
+FN:293,_ZNSt3mapISsN3ept7debtags16VocabularyMerger9FacetDataESt4lessISsESaISt4pairIKSsS3_EEE3endEv
+FN:275,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEE5beginEv
+FN:293,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEE3endEv
+FN:590,_ZNKSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEE8key_compEv
+FN:284,_ZNKSt3mapISsN3ept7debtags16VocabularyMerger7TagDataESt4lessISsESaISt4pairIKSsS3_EEE5beginEv
+FN:302,_ZNKSt3mapISsN3ept7debtags16VocabularyMerger7TagDataESt4lessISsESaISt4pairIKSsS3_EEE3endEv
+FN:320,_ZNKSt3mapISsN3ept7debtags16VocabularyMerger7TagDataESt4lessISsESaISt4pairIKSsS3_EEE6rbeginEv
+FN:155,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEEC1Ev
+FN:155,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEEC2Ev
+FN:155,_ZNSt3mapISsN3ept7debtags16VocabularyMerger7TagDataESt4lessISsESaISt4pairIKSsS3_EEEC1Ev
+FN:92,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEED1Ev
+FN:92,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEED2Ev
+FN:92,_ZNSt3mapISsN3ept7debtags16VocabularyMerger7TagDataESt4lessISsESaISt4pairIKSsS3_EEED1Ev
+FN:629,_ZNKSt3mapISsN3ept7debtags16VocabularyMerger9FacetDataESt4lessISsESaISt4pairIKSsS3_EEE4findERS7_
+FN:629,_ZNKSt3mapISsN3ept7debtags16VocabularyMerger7TagDataESt4lessISsESaISt4pairIKSsS3_EEE4findERS7_
+FN:656,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEE11lower_boundERS3_
+FN:614,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEE4findERS3_
+FN:614,_ZNSt3mapISsN3ept7debtags16VocabularyMerger9FacetDataESt4lessISsESaISt4pairIKSsS3_EEE4findERS7_
+FN:614,_ZNSt3mapISsN3ept7debtags16VocabularyMerger7TagDataESt4lessISsESaISt4pairIKSsS3_EEE4findERS7_
+FN:495,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEE6insertESt17_Rb_tree_iteratorIS4_ERKS4_
+FN:411,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEEixERS3_
+FN:175,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEEC2ERKS6_
+FN:175,_ZNSt3mapISsN3ept7debtags16VocabularyMerger7TagDataESt4lessISsESaISt4pairIKSsS3_EEEC1ERKSA_
+FN:468,_ZNSt3mapISsN3ept7debtags16VocabularyMerger7TagDataESt4lessISsESaISt4pairIKSsS3_EEE6insertERKS8_
+FN:468,_ZNSt3mapISsN3ept7debtags16VocabularyMerger9FacetDataESt4lessISsESaISt4pairIKSsS3_EEE6insertERKS8_
+DA:92,0
+DA:155,1369
+DA:156,1369
+DA:175,4107
+DA:176,4107
+DA:275,2664
+DA:276,2664
+DA:284,128
+DA:285,128
+DA:293,4661
+DA:294,4661
+DA:302,1995
+DA:303,1995
+DA:320,32
+DA:321,32
+DA:384,33
+DA:385,33
+DA:389,8
+DA:390,8
+DA:411,0
+DA:416,0
+DA:418,0
+DA:419,0
+DA:420,0
+DA:468,1307
+DA:469,1307
+DA:495,0
+DA:496,0
+DA:590,0
+DA:591,0
+DA:614,7724
+DA:615,7724
+DA:629,0
+DA:630,0
+DA:656,0
+DA:657,0
+BA:418,0
+BA:418,0
+BA:418,0
+BA:418,0
+BA:418,0
+BA:418,0
+LF:36
+LH:22
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorISsEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKSsN3ept7debtags16VocabularyMerger7TagDataEEEbEC1ERKS7_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKSsN3ept7debtags16VocabularyMerger9FacetDataEEEbEC1ERKS7_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorISsEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKSsSsEEbEC1ERKS3_RKb
+FN:88,_ZNSt4pairIKSsSsEC1ERS0_S2_
+FN:73,_ZNSt4pairIKSsSsEC1ERKS1_
+FN:73,_ZNSt4pairIKSsSsED1Ev
+FN:73,_ZNSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEED1Ev
+FN:73,_ZNSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEED1Ev
+FN:73,_ZNSt4pairISsN3ept7debtags16VocabularyMerger9FacetDataEED1Ev
+FN:73,_ZNSt4pairISsN3ept7debtags16VocabularyMerger7TagDataEED1Ev
+FN:73,_ZNSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEC1ERKS5_
+FN:88,_ZNSt4pairISsN3ept7debtags16VocabularyMerger7TagDataEEC1ERKSsRKS3_
+FN:218,_ZSt9make_pairISsN3ept7debtags16VocabularyMerger7TagDataEESt4pairIT_T0_ES5_S6_
+FN:104,_ZNSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEC1ISsS4_EERKS_IT_T0_E
+FN:88,_ZNSt4pairISsN3ept7debtags16VocabularyMerger9FacetDataEEC1ERKSsRKS3_
+FN:218,_ZSt9make_pairISsN3ept7debtags16VocabularyMerger9FacetDataEESt4pairIT_T0_ES5_S6_
+FN:104,_ZNSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEC1ISsS4_EERKS_IT_T0_E
+FN:73,_ZNSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEC1ERKS5_
+DA:73,2614
+DA:88,2614
+DA:89,2614
+DA:104,1307
+DA:106,1307
+DA:218,1307
+DA:219,1307
+LF:7
+LH:7
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:141,_ZNSt3setISsSt4lessISsESaISsEEC1Ev
+FN:93,_ZNSt3setISsSt4lessISsESaISsEED1Ev
+FN:378,_ZNSt3setISsSt4lessISsESaISsEE6insertERKSs
+DA:93,0
+DA:141,0
+DA:142,0
+DA:378,0
+DA:381,0
+DA:382,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:103,_ZNSt18_Rb_tree_node_base10_S_minimumEPS_
+FN:117,_ZNSt18_Rb_tree_node_base10_S_maximumEPS_
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEneERKS7_
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEeqERKS7_
+FN:176,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEptEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEeqERKS7_
+FN:176,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEptEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsSsEEC1ERKSt17_Rb_tree_iteratorIS2_E
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsSsEEneERKS3_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsSsEEptEv
+FN:285,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEeqERKS7_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEptEv
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEneERKS7_
+FN:285,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEeqERKS7_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEptEv
+FN:214,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEneERKS7_
+FN:214,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEneERKS7_
+FN:243,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEC1ERKSt17_Rb_tree_iteratorIS6_E
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_beginEv
+FN:172,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsSsEEdeEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsSsEEeqERKS3_
+FN:452,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorISsEC1ERKSt17_Rb_tree_iteratorISsE
+FN:641,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE4sizeEv
+FN:637,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE5emptyEv
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE13_Rb_tree_implIS6_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:456,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_beginEv
+FN:467,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE6_M_endEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEC1EPKSt13_Rb_tree_nodeIS6_E
+FN:603,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE5beginEv
+FN:614,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE3endEv
+FN:463,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEC1EPSt13_Rb_tree_nodeIS6_E
+FN:596,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE5beginEv
+FN:610,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE3endEv
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE21_M_get_Node_allocatorEv
+FN:432,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE7_M_rootEv
+FN:456,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_beginEv
+FN:463,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE6_M_endEv
+FN:428,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE10_S_minimumEPSt18_Rb_tree_node_base
+FN:436,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE11_M_leftmostEv
+FN:511,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE10_S_maximumEPSt18_Rb_tree_node_base
+FN:444,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE12_M_rightmostEv
+FN:463,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEC1EPSt13_Rb_tree_nodeIS6_E
+FN:596,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE5beginEv
+FN:610,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE3endEv
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE21_M_get_Node_allocatorEv
+FN:432,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE7_M_rootEv
+FN:456,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_beginEv
+FN:428,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE10_S_minimumEPSt18_Rb_tree_node_base
+FN:436,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11_M_leftmostEv
+FN:511,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE10_S_maximumEPSt18_Rb_tree_node_base
+FN:444,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE12_M_rightmostEv
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKSsSsEEC1EPSt13_Rb_tree_nodeIS2_E
+FN:596,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE5beginEv
+FN:610,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE3endEv
+FN:592,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8key_compEv
+FN:467,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE6_M_endEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEC1EPKSt13_Rb_tree_nodeIS6_E
+FN:603,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE5beginEv
+FN:614,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE3endEv
+FN:398,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPSt18_Rb_tree_node_base
+FN:463,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorISsEC1EPSt13_Rb_tree_nodeISsE
+FN:596,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISsEeqERKS0_
+FN:347,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE21_M_get_Node_allocatorEv
+FN:625,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE6rbeginEv
+FN:247,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEdeEv
+FN:415,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE13_Rb_tree_implIS6_Lb0EE13_M_initializeEv
+FN:415,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EE13_M_initializeEv
+FN:483,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE7_S_leftEPKSt18_Rb_tree_node_base
+FN:491,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_rightEPKSt18_Rb_tree_node_base
+FN:495,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:495,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:491,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_S_rightEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE7_S_leftEPKSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_valueEPKSt13_Rb_tree_nodeIS6_E
+FN:475,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE6_S_keyEPKSt13_Rb_tree_nodeIS6_E
+FN:491,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_rightEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE7_S_leftEPKSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_valueEPKSt13_Rb_tree_nodeIS6_E
+FN:475,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE6_S_keyEPKSt13_Rb_tree_nodeIS6_E
+FN:495,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:641,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE4sizeEv
+FN:415,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:471,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt13_Rb_tree_nodeISsE
+FN:475,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt13_Rb_tree_nodeISsE
+FN:495,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt18_Rb_tree_node_base
+FN:403,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE13_Rb_tree_implIS6_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EEC1Ev
+FN:403,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EEC1Ev
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE21_M_get_Node_allocatorEv
+FN:408,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE13_Rb_tree_implIS6_Lb0EEC1ERKS6_RKSaISt13_Rb_tree_nodeIS2_EE
+FN:408,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EEC1ERKSA_RKSaISt13_Rb_tree_nodeIS6_EE
+FN:471,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_S_valueEPKSt13_Rb_tree_nodeIS2_E
+FN:475,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE6_S_keyEPKSt13_Rb_tree_nodeIS2_E
+FN:403,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEC1Ev
+FN:351,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13get_allocatorEv
+FN:360,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_put_nodeEPSt13_Rb_tree_nodeISsE
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:262,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEppEi
+FN:262,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEppEi
+FN:262,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsSsEEppEi
+FN:255,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsSsEEppEv
+FN:388,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE15_M_destroy_nodeEPSt13_Rb_tree_nodeISsE
+FN:936,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_eraseEPSt13_Rb_tree_nodeISsE
+FN:584,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEED1Ev
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EED1Ev
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_eraseEPSt13_Rb_tree_nodeIS6_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EED1Ev
+FN:270,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEmmEv
+FN:270,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsSsEEmmEv
+FN:187,_ZNSt17_Rb_tree_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEppEi
+FN:187,_ZNSt17_Rb_tree_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEppEi
+FN:195,_ZNSt17_Rb_tree_iteratorISsEmmEv
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKSsSsEEmmEv
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEmmEv
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEmmEv
+FN:970,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE14_M_lower_boundEPKSt13_Rb_tree_nodeIS6_ESG_RS1_
+FN:1403,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE4findERS1_
+FN:970,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE14_M_lower_boundEPKSt13_Rb_tree_nodeIS6_ESG_RS1_
+FN:1403,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE4findERS1_
+FN:954,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE14_M_lower_boundEPSt13_Rb_tree_nodeIS2_ESB_RS1_
+FN:715,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE11lower_boundERS1_
+FN:1390,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE4findERS1_
+FN:954,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE14_M_lower_boundEPSt13_Rb_tree_nodeIS6_ESF_RS1_
+FN:1390,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE4findERS1_
+FN:954,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE14_M_lower_boundEPSt13_Rb_tree_nodeIS6_ESF_RS1_
+FN:1390,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE4findERS1_
+FN:356,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE14_M_create_nodeERKSs
+FN:846,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_M_insert_EPKSt18_Rb_tree_node_baseS8_RKSs
+FN:1133,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE16_M_insert_uniqueERKSs
+FN:356,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE14_M_create_nodeERKS2_
+FN:846,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE10_M_insert_EPKSt18_Rb_tree_node_baseSB_RKS2_
+FN:1133,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE16_M_insert_uniqueERKS2_
+FN:1178,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE17_M_insert_unique_ESt23_Rb_tree_const_iteratorIS2_ERKS2_
+FN:378,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE13_M_clone_nodeEPKSt13_Rb_tree_nodeIS2_E
+FN:900,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE7_M_copyEPKSt13_Rb_tree_nodeIS2_EPSA_
+FN:568,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EEC1ERKS8_
+FN:356,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE14_M_create_nodeERKS6_
+FN:378,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_M_clone_nodeEPKSt13_Rb_tree_nodeIS6_E
+FN:900,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE7_M_copyEPKSt13_Rb_tree_nodeIS6_EPSE_
+FN:568,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EEC1ERKSC_
+FN:846,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE10_M_insert_EPKSt18_Rb_tree_node_baseSF_RKS6_
+FN:1133,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE16_M_insert_uniqueERKS6_
+FN:356,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE14_M_create_nodeERKS6_
+FN:846,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE10_M_insert_EPKSt18_Rb_tree_node_baseSF_RKS6_
+FN:1133,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE16_M_insert_uniqueERKS6_
+DA:103,0
+DA:105,0
+DA:106,0
+DA:117,0
+DA:119,0
+DA:120,0
+DA:168,16478
+DA:169,16478
+DA:172,0
+DA:173,0
+DA:176,11821
+DA:177,11821
+DA:187,658
+DA:189,658
+DA:190,658
+DA:195,107
+DA:197,107
+DA:198,107
+DA:210,7843
+DA:211,7843
+DA:214,695
+DA:215,695
+DA:240,2155
+DA:241,2155
+DA:243,164
+DA:244,164
+DA:247,32
+DA:248,32
+DA:251,8660
+DA:252,8660
+DA:255,0
+DA:257,0
+DA:258,0
+DA:262,7064
+DA:264,7064
+DA:265,7064
+DA:270,32
+DA:272,32
+DA:273,32
+DA:285,0
+DA:286,0
+DA:289,13605
+DA:290,13605
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:356,1307
+DA:357,1307
+DA:360,0
+DA:361,0
+DA:364,1307
+DA:366,1307
+DA:368,1307
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,1307
+DA:378,0
+DA:380,0
+DA:381,0
+DA:382,0
+DA:383,0
+DA:384,0
+DA:388,0
+DA:390,0
+DA:391,0
+DA:392,0
+DA:398,0
+DA:403,62
+DA:405,62
+DA:406,62
+DA:408,186
+DA:410,186
+DA:411,186
+DA:415,248
+DA:417,248
+DA:418,248
+DA:419,248
+DA:420,248
+DA:421,248
+DA:428,0
+DA:429,0
+DA:432,186
+DA:433,186
+DA:436,0
+DA:437,0
+DA:444,0
+DA:445,0
+DA:452,0
+DA:453,0
+DA:456,0
+DA:459,0
+DA:463,6432
+DA:464,6432
+DA:467,0
+DA:468,0
+DA:471,24508
+DA:472,24508
+DA:475,24508
+DA:476,24508
+DA:479,0
+DA:480,0
+DA:483,0
+DA:484,0
+DA:487,0
+DA:488,0
+DA:491,0
+DA:492,0
+DA:495,5178
+DA:496,5178
+DA:499,5178
+DA:500,5178
+DA:503,0
+DA:504,0
+DA:511,0
+DA:512,0
+DA:562,62
+DA:568,186
+DA:569,186
+DA:571,186
+DA:573,0
+DA:574,0
+DA:575,0
+DA:576,0
+DA:578,186
+DA:584,0
+DA:585,0
+DA:592,0
+DA:593,0
+DA:596,260
+DA:599,260
+DA:603,128
+DA:606,128
+DA:610,9786
+DA:611,9786
+DA:614,2027
+DA:617,2027
+DA:625,32
+DA:626,32
+DA:637,33
+DA:638,33
+DA:641,8
+DA:642,8
+DA:715,0
+DA:716,0
+DA:846,1307
+DA:850,1307
+DA:852,1307
+DA:854,1307
+DA:857,1307
+DA:858,1307
+DA:900,0
+DA:903,0
+DA:904,0
+DA:908,0
+DA:909,0
+DA:910,0
+DA:911,0
+DA:913,0
+DA:915,0
+DA:916,0
+DA:917,0
+DA:918,0
+DA:919,0
+DA:920,0
+DA:921,0
+DA:924,0
+DA:926,0
+DA:927,0
+DA:929,0
+DA:936,0
+DA:939,0
+DA:941,0
+DA:942,0
+DA:943,0
+DA:944,0
+DA:946,0
+DA:954,3818
+DA:956,26171
+DA:957,18535
+DA:958,4869
+DA:960,13666
+DA:961,3818
+DA:970,0
+DA:972,0
+DA:973,0
+DA:974,0
+DA:976,0
+DA:977,0
+DA:1133,1307
+DA:1135,1307
+DA:1136,1307
+DA:1137,1307
+DA:1138,8587
+DA:1140,5973
+DA:1141,5973
+DA:1142,5973
+DA:1144,1307
+DA:1145,1307
+DA:1147,207
+DA:1148,100
+DA:1150,107
+DA:1152,1207
+DA:1153,1207
+DA:1154,0
+DA:1178,0
+DA:1181,0
+DA:1183,0
+DA:1186,0
+DA:1188,0
+DA:1190,0
+DA:1194,0
+DA:1195,0
+DA:1196,0
+DA:1197,0
+DA:1200,0
+DA:1201,0
+DA:1204,0
+DA:1207,0
+DA:1209,0
+DA:1213,0
+DA:1214,0
+DA:1215,0
+DA:1216,0
+DA:1219,0
+DA:1220,0
+DA:1222,0
+DA:1225,0
+DA:1230,0
+DA:1390,7724
+DA:1392,7724
+DA:1395,7724
+DA:1403,0
+DA:1405,0
+DA:1408,0
+BA:105,0
+BA:105,0
+BA:119,0
+BA:119,0
+BA:571,0
+BA:571,0
+BA:571,1
+BA:571,2
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,2
+BA:850,1
+BA:850,2
+BA:850,2
+BA:850,2
+BA:850,2
+BA:850,2
+BA:850,1
+BA:850,2
+BA:850,2
+BA:850,2
+BA:850,2
+BA:908,0
+BA:908,0
+BA:908,0
+BA:908,0
+BA:913,0
+BA:913,0
+BA:913,0
+BA:913,0
+BA:918,0
+BA:918,0
+BA:918,0
+BA:918,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:956,0
+BA:956,0
+BA:956,2
+BA:956,2
+BA:956,2
+BA:956,2
+BA:957,0
+BA:957,0
+BA:957,2
+BA:957,2
+BA:957,2
+BA:957,2
+BA:972,0
+BA:972,0
+BA:972,0
+BA:972,0
+BA:973,0
+BA:973,0
+BA:973,0
+BA:973,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1138,2
+BA:1138,2
+BA:1138,2
+BA:1138,2
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,2
+BA:1142,2
+BA:1142,2
+BA:1142,2
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1145,2
+BA:1145,2
+BA:1145,2
+BA:1145,2
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1147,2
+BA:1147,2
+BA:1147,2
+BA:1147,2
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,2
+BA:1152,1
+BA:1152,2
+BA:1152,1
+BA:1181,0
+BA:1181,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1190,0
+BA:1190,0
+BA:1195,0
+BA:1195,0
+BA:1197,0
+BA:1197,0
+BA:1200,0
+BA:1200,0
+BA:1209,0
+BA:1209,0
+BA:1214,0
+BA:1214,0
+BA:1216,0
+BA:1216,0
+BA:1219,0
+BA:1219,0
+BA:1395,2
+BA:1395,2
+BA:1395,2
+BA:1395,2
+BA:1395,2
+BA:1395,2
+BA:1395,2
+BA:1395,2
+BA:1395,2
+BA:1395,2
+BA:1395,2
+BA:1395,2
+BA:1408,0
+BA:1408,0
+BA:1408,0
+BA:1408,0
+BA:1408,0
+BA:1408,0
+BA:1408,0
+BA:1408,0
+LF:236
+LH:109
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+DA:79,0
+DA:97,0
+DA:98,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:386,0
+DA:387,0
+DA:404,0
+DA:405,0
+DA:526,0
+DA:527,0
+BA:149,0
+BA:149,0
+LF:19
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSsEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSsEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSsEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSsEEEC2ERKS6_
+FN:71,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEEC2ERKSA_
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSsEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSsEEE8max_sizeEv
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE10deallocateEPS2_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSsEEE10deallocateEPS5_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEE10deallocateEPS9_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEE10deallocateEPS9_j
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:118,_ZN9__gnu_cxx13new_allocatorISsE7destroyEPSs
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSsEE9constructEPS3_RKS3_
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSsEE7destroyEPS3_
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEE7destroyEPS7_
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSsEEE8allocateEjPKv
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEE9constructEPS7_RKS7_
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEE8allocateEjPKv
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEE9constructEPS7_RKS7_
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEE8allocateEjPKv
+DA:69,62
+DA:71,186
+DA:76,0
+DA:87,1307
+DA:89,1307
+DA:90,0
+DA:92,1307
+DA:97,0
+DA:98,0
+DA:101,1307
+DA:102,1307
+DA:107,1307
+DA:108,1307
+DA:118,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,1
+BA:89,2
+BA:89,1
+BA:89,2
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,2
+BA:108,1
+BA:108,2
+BA:108,1
+LF:14
+LH:9
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,2
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+DA:95,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/diskindex/mmap.h
+FN:79,_ZN7tagcoll9diskindex4MMap5alignIiEET_S3_
+FN:91,_ZN7tagcoll9diskindex11MMapIndexerD2Ev
+FN:91,_ZN7tagcoll9diskindex11MMapIndexerD0Ev
+FN:91,_ZN7tagcoll9diskindex11MMapIndexerD1Ev
+DA:79,12
+DA:81,12
+DA:91,0
+BA:91,0
+BA:91,0
+BA:91,0
+BA:91,0
+BA:91,0
+BA:91,0
+LF:3
+LH:2
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/sourcedir.cc
+FN:121,_Z41__static_initialization_and_destruction_0ii
+FN:121,_GLOBAL__I_sourcedir.cc
+FN:15,_ZN3ept7debtags9SourceDir8fileTypeERKSs
+FN:94,_ZN3ept7debtags9SourceDir16readVocabulariesERNS0_16VocabularyMergerE
+FN:77,_ZN3ept7debtags9SourceDir12tagTimestampEv
+FN:60,_ZN3ept7debtags9SourceDir12vocTimestampEv
+FN:43,_ZN3ept7debtags9SourceDir9timestampEv
+DA:15,802
+DA:17,802
+DA:21,622
+DA:24,542
+DA:25,542
+DA:26,80
+DA:27,462
+DA:28,80
+DA:32,382
+DA:34,302
+DA:35,302
+DA:36,0
+DA:37,302
+DA:38,0
+DA:40,302
+DA:43,20
+DA:45,20
+DA:47,20
+DA:48,200
+DA:50,180
+DA:51,180
+DA:53,36
+DA:54,54
+DA:55,20
+DA:57,20
+DA:60,62
+DA:62,62
+DA:64,60
+DA:65,632
+DA:67,572
+DA:68,1086
+DA:70,58
+DA:71,116
+DA:72,60
+DA:74,60
+DA:77,0
+DA:79,0
+DA:81,0
+DA:82,0
+DA:84,0
+DA:85,0
+DA:87,0
+DA:88,0
+DA:89,0
+DA:91,0
+DA:94,6
+DA:96,6
+DA:98,32
+DA:100,26
+DA:101,26
+DA:104,2
+DA:107,4
+DA:109,24
+DA:112,0
+DA:115,0
+DA:117,6
+DA:121,6
+BA:17,2
+BA:17,2
+BA:21,2
+BA:21,2
+BA:25,2
+BA:25,2
+BA:27,2
+BA:27,2
+BA:32,2
+BA:32,2
+BA:35,1
+BA:35,2
+BA:37,1
+BA:37,2
+BA:45,1
+BA:45,2
+BA:48,2
+BA:48,2
+BA:51,2
+BA:51,2
+BA:54,2
+BA:54,2
+BA:62,2
+BA:62,2
+BA:65,2
+BA:65,2
+BA:68,2
+BA:68,2
+BA:68,1
+BA:68,2
+BA:71,2
+BA:71,1
+BA:79,0
+BA:79,0
+BA:82,0
+BA:82,0
+BA:85,0
+BA:85,0
+BA:85,0
+BA:85,0
+BA:88,0
+BA:88,0
+BA:96,2
+BA:96,1
+BA:98,2
+BA:98,2
+BA:101,2
+BA:101,2
+BA:109,1
+BA:109,2
+BA:121,2
+BA:121,1
+BA:121,2
+BA:121,1
+LF:57
+LH:43
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/string.h
+FN:236,_ZN6wibble3str8joinpathERKSsS2_
+DA:236,0
+DA:238,0
+DA:239,0
+DA:240,0
+DA:241,0
+DA:243,0
+DA:244,0
+DA:245,0
+DA:247,0
+DA:249,0
+DA:250,0
+DA:252,0
+BA:238,0
+BA:238,0
+BA:240,0
+BA:240,0
+BA:243,0
+BA:243,0
+BA:244,0
+BA:244,0
+BA:249,0
+BA:249,0
+LF:12
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/fs.h
+FN:99,_ZN6wibble3sys2fs9Directory14const_iteratorptEv
+FN:105,_ZNK6wibble3sys2fs9Directory14const_iteratorneERKS3_
+FN:114,_ZNK6wibble3sys2fs9Directory4pathEv
+FN:88,_ZN6wibble3sys2fs9Directory14const_iteratorppEv
+FN:65,_ZN6wibble3sys2fs9Directory14const_iteratorD1Ev
+DA:65,1109
+DA:88,1002
+DA:90,1002
+DA:92,107
+DA:93,107
+DA:95,1002
+DA:99,1006
+DA:105,1002
+DA:107,1002
+DA:114,220
+BA:65,1
+BA:65,2
+BA:90,2
+BA:90,2
+BA:107,2
+BA:107,2
+BA:107,1
+BA:107,2
+LF:10
+LH:10
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC1ERKS_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:277,_ZNKSs7_M_dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:701,_ZNKSsixEj
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:1551,_ZNKSs13get_allocatorEv
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2136,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:501,_ZNSsaSERKSs
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:686,0
+DA:687,0
+DA:701,0
+DA:704,0
+DA:1551,0
+DA:1552,0
+DA:1923,0
+DA:1925,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2136,0
+DA:2140,0
+DA:2141,0
+DA:2142,0
+DA:2188,0
+DA:2189,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:308,0
+BA:308,0
+LF:41
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+DA:69,0
+DA:71,0
+DA:76,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,2
+LF:1
+LH:1
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/path.cc
+FN:67,_ZN3ept7debtags4Path9timestampERKSs
+FN:63,_ZN3ept7debtags4Path6accessERKSsi
+FN:41,_ZN3ept7debtagsL7userdirEv
+FN:52,_ZN3ept7debtags4Path8instanceEv
+FN:92,_ZN3ept7debtags4Path19debtagsUserIndexDirEv
+FN:130,_ZN3ept7debtags4Path10userPkgidxEv
+FN:122,_ZN3ept7debtags4Path14userTagdbIndexEv
+FN:118,_ZN3ept7debtags4Path9userTagdbEv
+FN:106,_ZN3ept7debtags4Path19userVocabularyIndexEv
+FN:102,_ZN3ept7debtags4Path14userVocabularyEv
+FN:91,_ZN3ept7debtags4Path20debtagsUserSourceDirEv
+FN:90,_ZN3ept7debtags4Path15debtagsIndexDirEv
+FN:126,_ZN3ept7debtags4Path6pkgidxEv
+FN:114,_ZN3ept7debtags4Path10tagdbIndexEv
+FN:110,_ZN3ept7debtags4Path5tagdbEv
+FN:98,_ZN3ept7debtags4Path15vocabularyIndexEv
+FN:94,_ZN3ept7debtags4Path10vocabularyEv
+FN:89,_ZN3ept7debtags4Path16debtagsSourceDirEv
+FN:84,_ZN3ept7debtags4Path22setDebtagsUserIndexDirERKSs
+FN:80,_ZN3ept7debtags4Path23setDebtagsUserSourceDirERKSs
+FN:76,_ZN3ept7debtags4Path18setDebtagsIndexDirERKSs
+FN:72,_ZN3ept7debtags4Path19setDebtagsSourceDirERKSs
+DA:41,2
+DA:43,2
+DA:45,2
+DA:46,2
+DA:48,0
+DA:52,732
+DA:53,732
+DA:54,1
+DA:55,1
+DA:56,1
+DA:57,2
+DA:58,2
+DA:60,732
+DA:63,12
+DA:64,12
+DA:67,300
+DA:68,300
+DA:69,580
+DA:72,62
+DA:74,62
+DA:75,62
+DA:76,62
+DA:78,62
+DA:79,62
+DA:80,62
+DA:82,62
+DA:83,62
+DA:84,62
+DA:86,62
+DA:87,62
+DA:89,72
+DA:90,121
+DA:91,82
+DA:92,205
+DA:94,33
+DA:95,33
+DA:98,32
+DA:99,32
+DA:102,65
+DA:103,65
+DA:106,65
+DA:107,65
+DA:110,11
+DA:111,11
+DA:114,11
+DA:115,11
+DA:118,22
+DA:119,22
+DA:122,22
+DA:123,22
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+BA:53,2
+BA:53,2
+BA:69,2
+BA:69,2
+LF:54
+LH:49
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/path.h
+FN:38,_ZN3ept7debtags4PathC1Ev
+DA:38,1
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/string.h
+FN:236,_ZN6wibble3str8joinpathERKSsS2_
+DA:236,0
+DA:238,0
+DA:239,0
+DA:240,0
+DA:241,0
+DA:243,0
+DA:244,0
+DA:245,0
+DA:247,0
+DA:249,0
+DA:250,0
+DA:252,0
+BA:238,0
+BA:238,0
+BA:240,0
+BA:240,0
+BA:243,0
+BA:243,0
+BA:244,0
+BA:244,0
+BA:249,0
+BA:249,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/backward/auto_ptr.h
+FN:263,_ZNSt8auto_ptrI4statEC1ESt12auto_ptr_refIS0_E
+FN:214,_ZNKSt8auto_ptrI4statE3getEv
+FN:197,_ZNKSt8auto_ptrI4statEptEv
+FN:228,_ZNSt8auto_ptrI4statE7releaseEv
+FN:56,_ZNSt12auto_ptr_refI4statEC1EPS0_
+FN:278,_ZNSt8auto_ptrI4statEcvSt12auto_ptr_refIT_EIS0_EEv
+FN:173,_ZNSt8auto_ptrI4statED1Ev
+DA:56,651
+DA:173,1887
+DA:197,585
+DA:200,585
+DA:214,1236
+DA:228,1236
+DA:230,1236
+DA:231,1236
+DA:232,1236
+DA:263,651
+DA:264,651
+DA:278,651
+DA:279,651
+LF:13
+LH:13
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC1ERKS_
+FN:100,_ZNSaIcEC2ERKS_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:277,_ZNKSs7_M_dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:701,_ZNKSsixEj
+FN:1534,_ZNKSs5c_strEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:1551,_ZNKSs13get_allocatorEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2136,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:501,_ZNSsaSERKSs
+FN:928,_ZNSs6assignEPKc
+FN:509,_ZNSsaSEPKc
+DA:178,0
+DA:183,0
+DA:184,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:509,0
+DA:510,0
+DA:606,0
+DA:607,0
+DA:686,0
+DA:687,0
+DA:701,0
+DA:704,0
+DA:928,0
+DA:931,0
+DA:1534,0
+DA:1535,0
+DA:1551,0
+DA:1552,0
+DA:1923,0
+DA:1925,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2136,0
+DA:2140,0
+DA:2141,0
+DA:2142,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:308,0
+BA:308,0
+LF:53
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+DA:261,0
+DA:262,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+DA:69,0
+DA:71,0
+DA:76,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/sourcedir.h
+FN:39,_ZN3ept7debtags9SourceDirD1Ev
+FN:48,_ZN3ept7debtags9SourceDirC1ERKSs
+DA:39,82
+DA:48,82
+LF:2
+LH:2
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/vocabularyindexer.cc
+FN:25,_ZNK3ept7debtags17VocabularyIndexer12needsRebuildEv
+FN:47,_ZNK3ept7debtags17VocabularyIndexer20userIndexIsRedundantEv
+FN:193,_Z41__static_initialization_and_destruction_0ii
+FN:193,_GLOBAL__I_vocabularyindexer.cc
+FN:150,_ZN3ept7debtags17VocabularyIndexer21getUpToDateVocabularyERSsS2_
+FN:130,_ZN3ept7debtags17VocabularyIndexer24deleteRedundantUserIndexEv
+FN:65,_ZN3ept7debtags17VocabularyIndexer7rebuildERKSsS3_
+FN:99,_ZN3ept7debtags17VocabularyIndexer15rebuildIfNeededEv
+FN:15,_ZN3ept7debtags17VocabularyIndexer6rescanEv
+FN:9,_ZN3ept7debtags17VocabularyIndexerC1Ev
+FN:183,_ZN3ept7debtags17VocabularyIndexer23obtainWorkingVocabularyERSsS2_
+FN:9,_ZN3ept7debtags17VocabularyIndexerC2Ev
+DA:9,31
+DA:10,31
+DA:12,31
+DA:13,31
+DA:15,31
+DA:17,31
+DA:18,31
+DA:19,31
+DA:20,62
+DA:21,62
+DA:22,62
+DA:23,31
+DA:25,31
+DA:28,31
+DA:29,3
+DA:32,28
+DA:33,28
+DA:36,0
+DA:37,0
+DA:41,0
+DA:42,0
+DA:44,0
+DA:47,31
+DA:50,31
+DA:51,2
+DA:54,29
+DA:55,29
+DA:59,0
+DA:60,0
+DA:62,0
+DA:65,3
+DA:70,3
+DA:73,3
+DA:74,3
+DA:75,3
+DA:77,3
+DA:78,2
+DA:83,1
+DA:84,1
+DA:88,1
+DA:90,1
+DA:92,1
+DA:93,0
+DA:95,1
+DA:96,1
+DA:99,31
+DA:101,31
+DA:105,3
+DA:109,1
+DA:110,1
+DA:111,0
+DA:112,0
+DA:113,0
+DA:114,0
+DA:115,0
+DA:116,0
+DA:118,2
+DA:119,4
+DA:120,4
+DA:121,1
+DA:122,1
+DA:123,2
+DA:125,1
+DA:127,28
+DA:130,31
+DA:132,31
+DA:135,0
+DA:137,0
+DA:138,0
+DA:140,0
+DA:142,0
+DA:143,0
+DA:145,0
+DA:147,31
+DA:150,31
+DA:153,31
+DA:154,2
+DA:157,29
+DA:160,29
+DA:161,58
+DA:162,29
+DA:167,0
+DA:168,0
+DA:171,0
+DA:174,0
+DA:175,0
+DA:176,0
+DA:179,0
+DA:183,31
+DA:185,31
+DA:187,31
+DA:188,31
+DA:189,31
+DA:193,6
+BA:28,2
+BA:28,2
+BA:28,2
+BA:28,1
+BA:28,2
+BA:28,1
+BA:28,2
+BA:28,1
+BA:32,2
+BA:32,1
+BA:32,2
+BA:32,1
+BA:32,2
+BA:32,1
+BA:36,0
+BA:36,0
+BA:41,0
+BA:41,0
+BA:41,0
+BA:41,0
+BA:41,0
+BA:41,0
+BA:50,2
+BA:50,2
+BA:50,2
+BA:50,1
+BA:54,2
+BA:54,1
+BA:59,0
+BA:59,0
+BA:59,0
+BA:59,0
+BA:59,0
+BA:59,0
+BA:77,2
+BA:77,2
+BA:92,1
+BA:92,2
+BA:101,2
+BA:101,2
+BA:105,2
+BA:105,2
+BA:105,2
+BA:105,2
+BA:105,2
+BA:105,2
+BA:105,0
+BA:105,0
+BA:105,2
+BA:105,2
+BA:109,2
+BA:109,1
+BA:113,0
+BA:113,0
+BA:115,0
+BA:115,0
+BA:120,2
+BA:120,2
+BA:132,1
+BA:132,2
+BA:135,0
+BA:135,0
+BA:140,0
+BA:140,0
+BA:153,2
+BA:153,2
+BA:153,2
+BA:153,1
+BA:153,2
+BA:153,1
+BA:153,2
+BA:153,1
+BA:157,2
+BA:157,1
+BA:157,2
+BA:157,1
+BA:157,2
+BA:157,1
+BA:167,0
+BA:167,0
+BA:171,0
+BA:171,0
+BA:171,0
+BA:171,0
+BA:171,0
+BA:171,0
+BA:193,2
+BA:193,1
+BA:193,2
+BA:193,1
+LF:94
+LH:65
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/vocabularyindexer.h
+FN:50,_ZNK3ept7debtags17VocabularyIndexer15sourceTimestampEv
+FN:37,_ZN3ept7debtags17VocabularyIndexerD1Ev
+DA:37,31
+DA:50,114
+BA:50,1
+BA:50,2
+LF:2
+LH:2
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/vocabularymerger.h
+FN:41,_ZN3ept7debtags16VocabularyMerger12FacetIndexerC1ERS1_
+FN:51,_ZN3ept7debtags16VocabularyMerger10TagIndexerC1ERS1_
+FN:119,_ZNK3ept7debtags16VocabularyMerger12facetIndexerEv
+FN:127,_ZNK3ept7debtags16VocabularyMerger10tagIndexerEv
+FN:95,_ZNK3ept7debtags16VocabularyMerger5emptyEv
+FN:42,_ZN3ept7debtags16VocabularyMerger12FacetIndexerD1Ev
+FN:57,_ZN3ept7debtags16VocabularyMerger7TagDataD1Ev
+FN:68,_ZN3ept7debtags16VocabularyMerger9FacetDataD1Ev
+FN:90,_ZN3ept7debtags16VocabularyMergerC1Ev
+FN:52,_ZN3ept7debtags16VocabularyMerger10TagIndexerD1Ev
+FN:34,_ZN3ept7debtags16VocabularyMergerD1Ev
+DA:34,0
+DA:41,0
+DA:42,0
+DA:51,0
+DA:52,0
+DA:57,0
+DA:68,0
+DA:90,0
+DA:95,3
+DA:119,0
+DA:127,0
+BA:42,0
+BA:42,0
+BA:52,0
+BA:52,0
+LF:11
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:395,_ZN6wibble9exception6SystemD1Ev
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+DA:137,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:395,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:395,0
+BA:395,0
+LF:21
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/fs.h
+FN:50,_ZN6wibble3sys2fs9DirectoryD2Ev
+FN:111,_ZN6wibble3sys2fs9DirectoryC2ERKSs
+DA:50,96
+DA:111,96
+LF:2
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsSsEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEED2Ev
+FN:100,_ZNSaIcEC1ERKS_
+FN:100,_ZNSaIcEC2ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:106,_ZNSaISt4pairIKSsSsEED1Ev
+FN:106,_ZNSaISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEEC2Ev
+FN:106,_ZNSaISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEED1Ev
+FN:104,_ZNSaISt4pairIKSsSsEEC1ISt13_Rb_tree_nodeIS1_EEERKSaIT_E
+FN:104,_ZNSaISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEC1ISt13_Rb_tree_nodeIS5_EEERKSaIT_E
+FN:104,_ZNSaISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEC1ISt13_Rb_tree_nodeIS5_EEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:104,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:7
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:276,0
+BA:276,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:277,_ZNKSs7_M_dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:1534,_ZNKSs5c_strEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:1551,_ZNKSs13get_allocatorEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:501,_ZNSsaSERKSs
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:2201,_ZStneIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2162,0
+DA:2165,0
+DA:2201,0
+DA:2202,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:71
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:668,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+DA:668,0
+DA:673,0
+DA:674,0
+DA:675,0
+DA:676,0
+DA:677,0
+DA:678,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:23
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+BA:340,0
+BA:340,0
+LF:19
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+DA:683,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_map.h
+FN:384,_ZNKSt3mapISsN3ept7debtags16VocabularyMerger9FacetDataESt4lessISsESaISt4pairIKSsS3_EEE5emptyEv
+FN:155,_ZNSt3mapISsN3ept7debtags16VocabularyMerger9FacetDataESt4lessISsESaISt4pairIKSsS3_EEEC1Ev
+FN:92,_ZNSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEED2Ev
+FN:92,_ZNSt3mapISsN3ept7debtags16VocabularyMerger7TagDataESt4lessISsESaISt4pairIKSsS3_EEED1Ev
+FN:92,_ZNSt3mapISsN3ept7debtags16VocabularyMerger9FacetDataESt4lessISsESaISt4pairIKSsS3_EEED1Ev
+DA:92,0
+DA:155,0
+DA:156,0
+DA:384,3
+DA:385,3
+LF:5
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:73,_ZNSt4pairIKSsSsED1Ev
+FN:73,_ZNSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEED1Ev
+FN:73,_ZNSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEED1Ev
+DA:73,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_beginEv
+FN:637,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE5emptyEv
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE13_Rb_tree_implIS6_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:415,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EE13_M_initializeEv
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE21_M_get_Node_allocatorEv
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE21_M_get_Node_allocatorEv
+FN:403,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13_Rb_tree_implISA_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EEC1Ev
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE21_M_get_Node_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13get_allocatorEv
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsSsESt10_Select1stIS2_ESt4lessISsESaIS2_EED1Ev
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_eraseEPSt13_Rb_tree_nodeIS6_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EED1Ev
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS6_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_eraseEPSt13_Rb_tree_nodeIS6_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEESt10_Select1stIS6_ESt4lessISsESaIS6_EED1Ev
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:360,0
+DA:361,0
+DA:388,0
+DA:390,0
+DA:391,0
+DA:392,0
+DA:398,0
+DA:403,0
+DA:405,0
+DA:406,0
+DA:415,0
+DA:417,0
+DA:418,0
+DA:419,0
+DA:420,0
+DA:421,0
+DA:452,0
+DA:453,0
+DA:479,0
+DA:480,0
+DA:487,0
+DA:488,0
+DA:562,0
+DA:584,0
+DA:585,0
+DA:637,3
+DA:638,3
+DA:936,0
+DA:939,0
+DA:941,0
+DA:942,0
+DA:943,0
+DA:944,0
+DA:946,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+LF:38
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+DA:79,0
+DA:97,0
+DA:98,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:386,0
+DA:387,0
+DA:404,0
+DA:405,0
+DA:526,0
+DA:527,0
+BA:149,0
+BA:149,0
+LF:19
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSsEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSsEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSsEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEC2Ev
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSsEE7destroyEPS3_
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEEE10deallocateEPS9_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSsEEE10deallocateEPS5_j
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger7TagDataEEE7destroyEPS7_
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEE7destroyEPS7_
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept7debtags16VocabularyMerger9FacetDataEEEE10deallocateEPS9_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+DA:69,0
+DA:71,0
+DA:76,0
+DA:97,0
+DA:98,0
+DA:118,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,2
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+DA:95,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/diskindex/mmap.h
+FN:89,_ZN7tagcoll9diskindex11MMapIndexerC2Ev
+FN:91,_ZN7tagcoll9diskindex11MMapIndexerD0Ev
+FN:91,_ZN7tagcoll9diskindex11MMapIndexerD1Ev
+FN:91,_ZN7tagcoll9diskindex11MMapIndexerD2Ev
+DA:89,0
+DA:91,0
+BA:91,0
+BA:91,0
+BA:91,0
+BA:91,0
+BA:91,0
+BA:91,0
+LF:2
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/debtagsindexer.cc
+FN:69,_ZNK3ept7debtags14DebtagsIndexer12needsRebuildEv
+FN:91,_ZNK3ept7debtags14DebtagsIndexer20userIndexIsRedundantEv
+FN:27,_ZNK3ept7debtags14PkgIdGenerator11encodedSizeEv
+FN:23,_ZN3ept7debtags14PkgIdGeneratorC1Ev
+FN:23,_ZN3ept7debtags14PkgIdGeneratorD0Ev
+FN:23,_ZN3ept7debtags14PkgIdGeneratorD1Ev
+FN:215,_ZN3ept7debtags14DebtagsIndexer16getUpToDateTagdbERSsS2_
+FN:195,_ZN3ept7debtags14DebtagsIndexer24deleteRedundantUserIndexEv
+FN:36,_ZNK3ept7debtags14PkgIdGenerator6encodeEPc
+FN:109,_ZN3ept7debtags14DebtagsIndexer7rebuildERKSsS3_
+FN:164,_ZN3ept7debtags14DebtagsIndexer15rebuildIfNeededEv
+FN:59,_ZN3ept7debtags14DebtagsIndexer6rescanEv
+FN:51,_ZN3ept7debtags14DebtagsIndexerC1ERNS0_10VocabularyE
+FN:249,_ZN3ept7debtags14DebtagsIndexer20obtainWorkingDebtagsERNS0_10VocabularyERSsS4_
+FN:51,_ZN3ept7debtags14DebtagsIndexerC2ERNS0_10VocabularyE
+DA:23,2
+DA:27,3
+DA:29,3
+DA:30,63438
+DA:32,63435
+DA:33,3
+DA:36,2
+DA:38,2
+DA:39,2
+DA:40,42292
+DA:43,42290
+DA:44,42290
+DA:45,42290
+DA:47,2
+DA:51,10
+DA:54,10
+DA:56,10
+DA:57,10
+DA:59,10
+DA:61,10
+DA:62,10
+DA:63,10
+DA:64,20
+DA:65,20
+DA:66,20
+DA:67,10
+DA:69,10
+DA:72,10
+DA:73,2
+DA:76,8
+DA:77,8
+DA:80,0
+DA:81,0
+DA:85,0
+DA:86,0
+DA:88,0
+DA:91,10
+DA:94,10
+DA:95,1
+DA:98,9
+DA:99,9
+DA:103,0
+DA:104,0
+DA:106,0
+DA:109,2
+DA:113,2
+DA:116,2
+DA:117,2
+DA:118,2
+DA:120,2
+DA:122,1
+DA:125,1
+DA:126,21146
+DA:128,21145
+DA:132,1
+DA:133,1
+DA:134,1
+DA:137,1
+DA:138,1
+DA:141,1
+DA:143,1
+DA:145,1
+DA:148,1
+DA:149,1
+DA:150,1
+DA:151,1
+DA:152,1
+DA:157,1
+DA:158,0
+DA:160,1
+DA:161,1
+DA:164,10
+DA:166,10
+DA:170,2
+DA:174,1
+DA:175,1
+DA:176,0
+DA:177,0
+DA:178,0
+DA:179,0
+DA:180,0
+DA:181,0
+DA:183,1
+DA:184,2
+DA:185,2
+DA:186,0
+DA:187,1
+DA:188,2
+DA:190,1
+DA:192,8
+DA:195,10
+DA:197,10
+DA:200,0
+DA:202,0
+DA:203,0
+DA:205,0
+DA:207,0
+DA:208,0
+DA:210,0
+DA:212,10
+DA:215,10
+DA:218,10
+DA:219,1
+DA:222,9
+DA:225,9
+DA:226,18
+DA:227,9
+DA:232,0
+DA:233,0
+DA:236,0
+DA:239,0
+DA:240,0
+DA:241,0
+DA:244,0
+DA:249,10
+DA:251,10
+DA:253,10
+DA:254,10
+DA:255,10
+BA:23,0
+BA:23,0
+BA:23,1
+BA:23,2
+BA:30,2
+BA:30,2
+BA:40,2
+BA:40,2
+BA:72,2
+BA:72,2
+BA:72,2
+BA:72,1
+BA:72,2
+BA:72,1
+BA:72,2
+BA:72,1
+BA:76,2
+BA:76,1
+BA:76,2
+BA:76,1
+BA:76,2
+BA:76,1
+BA:80,0
+BA:80,0
+BA:85,0
+BA:85,0
+BA:85,0
+BA:85,0
+BA:85,0
+BA:85,0
+BA:94,2
+BA:94,2
+BA:94,2
+BA:94,1
+BA:98,2
+BA:98,1
+BA:103,0
+BA:103,0
+BA:103,0
+BA:103,0
+BA:103,0
+BA:103,0
+BA:120,2
+BA:120,2
+BA:126,2
+BA:126,2
+BA:150,1
+BA:150,2
+BA:157,1
+BA:157,2
+BA:166,2
+BA:166,2
+BA:170,2
+BA:170,2
+BA:170,2
+BA:170,1
+BA:170,2
+BA:170,2
+BA:170,0
+BA:170,0
+BA:170,2
+BA:170,2
+BA:174,2
+BA:174,1
+BA:178,0
+BA:178,0
+BA:180,0
+BA:180,0
+BA:185,1
+BA:185,2
+BA:197,1
+BA:197,2
+BA:200,0
+BA:200,0
+BA:205,0
+BA:205,0
+BA:218,2
+BA:218,2
+BA:218,2
+BA:218,1
+BA:218,2
+BA:218,1
+BA:218,2
+BA:218,1
+BA:222,2
+BA:222,1
+BA:222,2
+BA:222,1
+BA:222,2
+BA:222,1
+BA:232,0
+BA:232,0
+BA:236,0
+BA:236,0
+BA:236,0
+BA:236,0
+BA:236,0
+BA:236,0
+LF:119
+LH:89
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/debtagsindexer.h
+FN:25,_ZNK3ept7debtags14DebtagsIndexer15sourceTimestampEv
+FN:13,_ZN3ept7debtags14DebtagsIndexerD1Ev
+DA:13,10
+DA:25,34
+DA:27,34
+DA:28,34
+DA:29,34
+BA:28,1
+BA:28,2
+LF:5
+LH:5
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/pkgid.h
+FN:41,_ZN3ept7debtags5PkgIdD1Ev
+DA:41,0
+LF:1
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/serializer.h
+FN:75,_ZN3ept7debtags11StringToIntIN7tagcoll4coll8InserterINS3_14IntDiskIndexerEEEEC1ERNS0_5PkgIdERNS0_10VocabularyERKS6_
+FN:111,_ZN3ept7debtags11stringToIntIN7tagcoll4coll8InserterINS3_14IntDiskIndexerEEEEENS0_11StringToIntIT_EERNS0_5PkgIdERNS0_10VocabularyERKS8_
+FN:79,_ZN3ept7debtags11StringToIntIN7tagcoll4coll8InserterINS3_14IntDiskIndexerEEEEaSIN6wibble9SingletonISsEESt3setISsSt4lessISsESaISsEEEERS7_RKSt4pairIT_T0_E
+DA:75,1
+DA:76,1
+DA:79,21145
+DA:81,21145
+DA:82,21145
+DA:84,42290
+DA:87,21145
+DA:88,21145
+DA:89,21145
+DA:92,126871
+DA:95,105726
+DA:96,105726
+DA:97,105598
+DA:100,21145
+DA:102,21133
+DA:103,21133
+DA:105,21145
+DA:111,1
+DA:113,1
+BA:84,2
+BA:84,2
+BA:88,2
+BA:88,1
+BA:92,2
+BA:92,2
+BA:96,2
+BA:96,2
+BA:100,2
+BA:100,1
+BA:100,2
+BA:100,2
+BA:100,2
+BA:100,2
+LF:19
+LH:19
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/sourcedir.h
+FN:39,_ZN3ept7debtags9SourceDirD1Ev
+FN:48,_ZN3ept7debtags9SourceDirC1ERKSs
+FN:61,_ZN3ept7debtags9SourceDir8readTagsIN7tagcoll4coll8InserterINS4_6SimpleISsSsEEEEEEvT_
+DA:39,0
+DA:48,0
+DA:61,4
+LF:3
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/sourcedir.tcc
+DA:19,4
+DA:21,28
+DA:23,24
+DA:24,24
+DA:27,2
+DA:30,2
+DA:32,22
+DA:35,0
+DA:38,4
+BA:19,2
+BA:19,1
+BA:21,2
+BA:21,2
+BA:24,2
+BA:24,2
+BA:32,1
+BA:32,2
+LF:9
+LH:8
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/tag.h
+FN:175,_ZN3ept7debtags3TagD1Ev
+FN:182,_ZNK3ept7debtags3Tag5validEv
+FN:242,_ZNK3ept7debtags3Tag2idEv
+DA:175,0
+DA:182,0
+DA:242,0
+LF:3
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/vocabulary.h
+FN:114,_ZNK3ept7debtags10Vocabulary8TagIndex2idERKSs
+FN:203,_ZNK3ept7debtags10Vocabulary9tagByNameERKSs
+DA:114,0
+DA:203,0
+LF:2
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/empty.h
+FN:59,_ZNK6wibble5EmptyISsE5emptyEv
+DA:59,0
+LF:1
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:263,_ZNK6wibble9exception11Consistency4typeEv
+FN:406,_ZNK6wibble9exception6System4codeEv
+FN:428,_ZNK6wibble9exception4File4typeEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:395,_ZN6wibble9exception6SystemD1Ev
+FN:395,_ZN6wibble9exception6SystemD2Ev
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:261,_ZN6wibble9exception11ConsistencyD2Ev
+FN:261,_ZN6wibble9exception11ConsistencyD0Ev
+FN:261,_ZN6wibble9exception11ConsistencyD1Ev
+FN:426,_ZN6wibble9exception4FileD0Ev
+FN:426,_ZN6wibble9exception4FileD1Ev
+FN:265,_ZNK6wibble9exception11Consistency4descEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:137,_ZN6wibble9exception7ContextC2ERKS1_
+FN:180,_ZN6wibble9exception7GenericC2ERKS1_
+FN:255,_ZN6wibble9exception11ConsistencyC2ERKS1_
+FN:109,_ZN6wibble9exception10AddContext7contextEv
+FN:117,_ZN6wibble9exception10AddContext11copyContextISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvT_
+FN:153,_ZN6wibble9exception7Context10addContextERKSs
+FN:147,_ZN6wibble9exception7ContextC2ERKSs
+FN:186,_ZN6wibble9exception7GenericC2ERKSs
+FN:259,_ZN6wibble9exception11ConsistencyC2ERKSsS3_
+FN:424,_ZN6wibble9exception4FileC1ERKSsS3_
+FN:430,_ZNK6wibble9exception4File4descEv
+DA:109,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:113,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:137,0
+DA:147,0
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:180,0
+DA:186,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:255,0
+DA:259,0
+DA:260,0
+DA:261,0
+DA:263,0
+DA:265,0
+DA:266,0
+DA:267,0
+DA:268,0
+DA:269,0
+DA:395,0
+DA:406,0
+DA:424,0
+DA:425,0
+DA:426,0
+DA:428,0
+DA:430,0
+BA:110,0
+BA:110,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:261,0
+BA:267,0
+BA:267,0
+BA:395,0
+BA:395,0
+BA:395,0
+BA:395,0
+BA:426,0
+BA:426,0
+BA:426,0
+BA:426,0
+LF:53
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/mixin.h
+FN:52,_ZN6wibble5mixin14OutputIteratorIN7tagcoll10textformat11StdioWriterEEC2Ev
+FN:52,_ZN6wibble5mixin14OutputIteratorIN7tagcoll4coll8InserterINS3_6SimpleISsSsEEEEEC2Ev
+FN:52,_ZN6wibble5mixin14OutputIteratorIN7tagcoll4coll8InserterINS3_14IntDiskIndexerEEEEC2Ev
+FN:52,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags11StringToIntIN7tagcoll4coll8InserterINS6_14IntDiskIndexerEEEEEEC2Ev
+FN:64,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags11StringToIntIN7tagcoll4coll8InserterINS6_14IntDiskIndexerEEEEEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN3ept7debtags11StringToIntIN7tagcoll4coll8InserterINS6_14IntDiskIndexerEEEEEEppEv
+FN:64,_ZN6wibble5mixin14OutputIteratorIN7tagcoll10textformat11StdioWriterEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN7tagcoll10textformat11StdioWriterEEppEv
+FN:64,_ZN6wibble5mixin14OutputIteratorIN7tagcoll4coll8InserterINS3_6SimpleISsSsEEEEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN7tagcoll4coll8InserterINS3_6SimpleISsSsEEEEEppEv
+FN:64,_ZN6wibble5mixin14OutputIteratorIN7tagcoll4coll8InserterINS3_14IntDiskIndexerEEEEdeEv
+FN:53,_ZN6wibble5mixin14OutputIteratorIN7tagcoll4coll8InserterINS3_14IntDiskIndexerEEEEppEv
+DA:52,3
+DA:53,63423
+DA:54,63423
+DA:64,63423
+DA:65,63423
+LF:5
+LH:5
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/operators.h
+FN:109,_ZN6wibble9operatorsoRISsEERSt3setIT_St4lessIS3_ESaIS3_EES8_RKNS_5EmptyIS3_EE
+FN:62,_ZN6wibble9operatorsorISsEESt3setIT_St4lessIS3_ESaIS3_EERKS7_RKNS_5EmptyIS3_EE
+FN:115,_ZN6wibble9operatorsoRISsEERSt3setIT_St4lessIS3_ESaIS3_EES8_RKS3_
+FN:133,_ZN6wibble9operatorsoRISsEERSt3setIT_St4lessIS3_ESaIS3_EES8_RKS7_
+FN:74,_ZN6wibble9operatorsorISsEESt3setIT_St4lessIS3_ESaIS3_EERKS7_S9_
+DA:62,0
+DA:63,0
+DA:74,0
+DA:75,0
+DA:76,0
+DA:78,0
+DA:109,0
+DA:111,0
+DA:115,0
+DA:117,0
+DA:118,0
+DA:133,0
+DA:134,0
+DA:135,0
+DA:137,0
+DA:139,0
+DA:140,0
+BA:134,0
+BA:134,0
+BA:137,0
+BA:137,0
+LF:17
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/singleton.h
+FN:56,_ZNK6wibble9SingletonISsE14const_iteratorneERKS2_
+FN:54,_ZN6wibble9SingletonISsE14const_iteratorppEv
+FN:52,_ZNK6wibble9SingletonISsE14const_iteratordeEv
+FN:47,_ZN6wibble9SingletonISsE14const_iteratorC1EPKSs
+FN:87,_ZNK6wibble9SingletonISsE5beginEv
+FN:50,_ZN6wibble9SingletonISsE14const_iteratorC1Ev
+FN:88,_ZNK6wibble9SingletonISsE3endEv
+FN:35,_ZN6wibble9SingletonISsED1Ev
+FN:80,_ZN6wibble9SingletonISsEC1ERKSs
+FN:92,_ZN6wibble9singletonISsEENS_9SingletonIT_EERKS2_
+FN:35,_ZN6wibble9SingletonISsEC1ERKS1_
+DA:35,0
+DA:47,0
+DA:50,0
+DA:52,0
+DA:54,0
+DA:56,0
+DA:80,0
+DA:87,0
+DA:88,0
+DA:92,0
+DA:94,0
+LF:11
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/fs.h
+FN:99,_ZN6wibble3sys2fs9Directory14const_iteratorptEv
+FN:105,_ZNK6wibble3sys2fs9Directory14const_iteratorneERKS3_
+FN:114,_ZNK6wibble3sys2fs9Directory4pathEv
+FN:50,_ZN6wibble3sys2fs9DirectoryD2Ev
+FN:111,_ZN6wibble3sys2fs9DirectoryC2ERKSs
+FN:88,_ZN6wibble3sys2fs9Directory14const_iteratorppEv
+FN:65,_ZN6wibble3sys2fs9Directory14const_iteratorD1Ev
+DA:50,0
+DA:65,0
+DA:88,0
+DA:90,0
+DA:92,0
+DA:93,0
+DA:95,0
+DA:99,0
+DA:105,0
+DA:107,0
+DA:111,0
+DA:114,0
+BA:65,0
+BA:65,0
+BA:90,0
+BA:90,0
+BA:107,0
+BA:107,0
+BA:107,0
+BA:107,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeIiEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISsEED2Ev
+FN:100,_ZNSaIcEC1ERKS_
+FN:100,_ZNSaIcEC2ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:106,_ZNSaISsED1Ev
+FN:106,_ZNSaISt3setIiSt4lessIiESaIiEEED2Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeIiEEC2Ev
+FN:106,_ZNSaIiED1Ev
+FN:100,_ZNSaISt13_Rb_tree_nodeIiEEC2ERKS1_
+FN:98,_ZNSaISsEC2Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEEC2Ev
+FN:106,_ZNSaISt4pairIKSsSt3setISsSt4lessISsESaISsEEEED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISsEEC2Ev
+FN:104,_ZNSaISsEC1ISt13_Rb_tree_nodeISsEEERKSaIT_E
+FN:98,_ZNSaISt3setIiSt4lessIiESaIiEEEC2Ev
+FN:100,_ZNSaISsEC2ERKS_
+FN:104,_ZNSaIiEC1ISt13_Rb_tree_nodeIiEEERKSaIT_E
+FN:104,_ZNSaISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEC1ISt13_Rb_tree_nodeIS6_EEERKSaIT_E
+FN:100,_ZNSaISt13_Rb_tree_nodeISsEEC2ERKS1_
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,2
+DA:100,0
+DA:101,0
+DA:104,0
+DA:106,2
+DA:118,0
+DA:119,0
+LF:7
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:276,0
+BA:276,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:1551,_ZNKSs13get_allocatorEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:392,_ZNSs10_S_compareEjj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:501,_ZNSsaSERKSs
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:2201,_ZStneIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:1941,_ZNKSs7compareERKSs
+FN:2238,_ZStltIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2162,0
+DA:2165,0
+DA:2201,0
+DA:2202,0
+DA:2238,0
+DA:2239,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+BA:1948,0
+BA:1948,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:84
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+FN:668,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+DA:668,0
+DA:673,0
+DA:674,0
+DA:675,0
+DA:676,0
+DA:677,0
+DA:678,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:23
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algo.h
+FN:5055,_ZSt9set_unionISt23_Rb_tree_const_iteratorISsES1_St15insert_iteratorISt3setISsSt4lessISsESaISsEEEET1_T_SA_T0_SB_S9_
+DA:5055,0
+DA:5074,0
+DA:5076,0
+DA:5078,0
+DA:5079,0
+DA:5081,0
+DA:5083,0
+DA:5084,0
+DA:5088,0
+DA:5089,0
+DA:5090,0
+DA:5092,0
+DA:5095,0
+BA:5074,0
+BA:5074,0
+BA:5074,0
+BA:5074,0
+BA:5074,0
+BA:5074,0
+BA:5076,0
+BA:5076,0
+BA:5081,0
+BA:5081,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:286,_ZNSt12__miter_baseIPSt3setIiSt4lessIiESaIiEELb0EE3__bES5_
+FN:268,_ZNSt12__niter_baseIPSt3setIiSt4lessIiESaIiEELb0EE3__bES5_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:188,_ZSt3minIjERKT_S2_S2_
+FN:286,_ZNSt12__miter_baseISt23_Rb_tree_const_iteratorISsELb0EE3__bES1_
+FN:268,_ZNSt12__niter_baseISt23_Rb_tree_const_iteratorISsELb0EE3__bES1_
+FN:268,_ZNSt12__niter_baseISt15insert_iteratorISt3setISsSt4lessISsESaISsEEELb0EE3__bES6_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSt3setIiSt4lessIiESaIiEES8_EET0_T_SA_S9_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSt3setIiSt4lessIiESaIiEES5_ET1_T0_S7_S6_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSt3setIiSt4lessIiESaIiEES5_ET1_T0_S7_S6_
+FN:624,_ZSt13copy_backwardIPSt3setIiSt4lessIiESaIiEES5_ET0_T_S7_S6_
+FN:683,_ZSt8__fill_aIPSt3setIiSt4lessIiESaIiEES4_EN9__gnu_cxx11__enable_ifIXntsrSt11__is_scalarIT0_E7__valueEvE6__typeET_SD_RKS9_
+FN:724,_ZSt4fillIPSt3setIiSt4lessIiESaIiEES4_EvT_S6_RKT0_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt26bidirectional_iterator_tagE8__copy_mISt23_Rb_tree_const_iteratorISsESt15insert_iteratorISt3setISsSt4lessISsESaISsEEEEET0_T_SD_SC_
+FN:385,_ZSt13__copy_move_aILb0ESt23_Rb_tree_const_iteratorISsESt15insert_iteratorISt3setISsSt4lessISsESaISsEEEET1_T0_SA_S9_
+FN:430,_ZSt14__copy_move_a2ILb0ESt23_Rb_tree_const_iteratorISsESt15insert_iteratorISt3setISsSt4lessISsESaISsEEEET1_T0_SA_S9_
+FN:456,_ZSt4copyISt23_Rb_tree_const_iteratorISsESt15insert_iteratorISt3setISsSt4lessISsESaISsEEEET0_T_SA_S9_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET0_T_SA_S9_
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,42244
+DA:269,42244
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:309,0
+DA:311,0
+DA:312,0
+DA:313,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+DA:683,21122
+DA:685,21122
+DA:686,0
+DA:687,21122
+DA:724,21122
+DA:731,21122
+DA:733,21122
+BA:193,0
+BA:193,0
+BA:215,0
+BA:215,0
+BA:311,0
+BA:311,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+BA:542,0
+BA:542,0
+BA:685,1
+BA:685,2
+LF:49
+LH:8
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+FN:87,_ZSt8_DestroyISt3setIiSt4lessIiESaIiEEEvPT_
+FN:97,_ZSt8_DestroyIPSt3setIiSt4lessIiESaIiEEEvT_S6_
+FN:126,_ZSt8_DestroyIPSt3setIiSt4lessIiESaIiEES4_EvT_S6_RSaIT0_E
+FN:75,_ZSt10_ConstructISt3setIiSt4lessIiESaIiEES4_EvPT_RKT0_
+DA:75,21765
+DA:79,21765
+DA:80,21765
+DA:87,55335
+DA:88,55335
+DA:97,22
+DA:101,55357
+DA:103,55335
+DA:104,22
+DA:126,22
+DA:128,22
+DA:129,22
+BA:79,2
+BA:79,1
+BA:101,0
+BA:101,0
+BA:101,2
+BA:101,2
+LF:12
+LH:12
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:469,_ZNKSt9_IdentityIiEclERKi
+FN:229,_ZNKSt4lessIiEclERKiS2_
+FN:469,_ZNKSt9_IdentityISsEclERKSs
+FN:482,_ZNKSt10_Select1stISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEclERKS7_
+FN:229,_ZNKSt4lessISsEclERKSsS2_
+DA:229,0
+DA:230,0
+DA:469,0
+DA:470,0
+DA:482,0
+DA:483,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSt3setIiSt4lessIiESaIiEESt6vectorIS5_SaIS5_EEEC1ERKS6_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSt3setIiSt4lessIiESaIiEESt6vectorIS5_SaIS5_EEE4baseEv
+FN:846,_ZN9__gnu_cxxmiIPSt3setIiSt4lessIiESaIiEESt6vectorIS5_SaIS5_EEEENS_17__normal_iteratorIT_T0_E15difference_typeERKSD_SG_
+FN:781,_ZN9__gnu_cxxneIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEppEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEdeEv
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:572,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEC1ERS4_St23_Rb_tree_const_iteratorISsE
+FN:645,_ZSt8inserterISt3setISsSt4lessISsESaISsEESt23_Rb_tree_const_iteratorISsEESt15insert_iteratorIT_ERS8_T0_
+FN:618,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEdeEv
+FN:623,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEppEv
+FN:599,_ZNSt15insert_iteratorISt3setISsSt4lessISsESaISsEEEaSERKSs
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:572,0
+DA:573,0
+DA:599,0
+DA:601,0
+DA:602,0
+DA:603,0
+DA:618,0
+DA:619,0
+DA:623,0
+DA:624,0
+DA:645,0
+DA:648,0
+DA:683,42264
+DA:695,0
+DA:696,0
+DA:703,0
+DA:705,0
+DA:706,0
+DA:747,84528
+DA:748,84528
+DA:769,0
+DA:770,0
+DA:781,0
+DA:782,0
+DA:846,21122
+DA:847,21122
+LF:36
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:111,_ZNSt8iteratorISt20forward_iterator_tagKSsvPS1_RS1_EC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_map.h
+FN:384,_ZNKSt3mapISsSt3setISsSt4lessISsESaISsEES2_SaISt4pairIKSsS4_EEE5emptyEv
+FN:293,_ZNSt3mapISsSt3setISsSt4lessISsESaISsEES2_SaISt4pairIKSsS4_EEE3endEv
+FN:275,_ZNSt3mapISsSt3setISsSt4lessISsESaISsEES2_SaISt4pairIKSsS4_EEE5beginEv
+FN:155,_ZNSt3mapISsSt3setISsSt4lessISsESaISsEES2_SaISt4pairIKSsS4_EEEC1Ev
+FN:284,_ZNKSt3mapISsSt3setISsSt4lessISsESaISsEES2_SaISt4pairIKSsS4_EEE5beginEv
+FN:302,_ZNKSt3mapISsSt3setISsSt4lessISsESaISsEES2_SaISt4pairIKSsS4_EEE3endEv
+FN:92,_ZNSt3mapISsSt3setISsSt4lessISsESaISsEES2_SaISt4pairIKSsS4_EEED1Ev
+FN:614,_ZNSt3mapISsSt3setISsSt4lessISsESaISsEES2_SaISt4pairIKSsS4_EEE4findERS6_
+FN:468,_ZNSt3mapISsSt3setISsSt4lessISsESaISsEES2_SaISt4pairIKSsS4_EEE6insertERKS7_
+DA:92,0
+DA:155,0
+DA:156,0
+DA:275,1
+DA:276,1
+DA:284,0
+DA:285,0
+DA:293,0
+DA:294,0
+DA:302,0
+DA:303,0
+DA:384,2
+DA:385,2
+DA:468,0
+DA:469,0
+DA:614,0
+DA:615,0
+LF:17
+LH:4
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorIiEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorISsEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIiEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorISsEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKSsSt3setISsSt4lessISsESaISsEEEEbEC1ERKS8_RKb
+FN:73,_ZNSt4pairIKSsSt3setISsSt4lessISsESaISsEEED1Ev
+FN:73,_ZNSt4pairISsSt3setISsSt4lessISsESaISsEEED1Ev
+FN:73,_ZNSt4pairISt3setISsSt4lessISsESaISsEEN6wibble5EmptyISsEEED1Ev
+FN:73,_ZNSt4pairISt3setISsSt4lessISsESaISsEES4_ED1Ev
+FN:73,_ZNSt4pairIN6wibble9SingletonISsEESt3setISsSt4lessISsESaISsEEED1Ev
+FN:73,_ZNSt4pairISt3setIiSt4lessIiESaIiEES4_ED1Ev
+FN:88,_ZNSt4pairISt3setISsSt4lessISsESaISsEEN6wibble5EmptyISsEEEC1ERKS4_RKS7_
+FN:218,_ZSt9make_pairISt3setISsSt4lessISsESaISsEEN6wibble5EmptyISsEEESt4pairIT_T0_ES9_SA_
+FN:88,_ZNSt4pairISsSt3setISsSt4lessISsESaISsEEEC1ERKSsRKS4_
+FN:218,_ZSt9make_pairISsSt3setISsSt4lessISsESaISsEEESt4pairIT_T0_ES6_S7_
+FN:104,_ZNSt4pairIKSsSt3setISsSt4lessISsESaISsEEEC1ISsS5_EERKS_IT_T0_E
+FN:73,_ZNSt4pairIKSsSt3setISsSt4lessISsESaISsEEEC1ERKS6_
+FN:88,_ZNSt4pairISt3setISsSt4lessISsESaISsEES4_EC1ERKS4_S7_
+FN:218,_ZSt9make_pairISt3setISsSt4lessISsESaISsEES4_ESt4pairIT_T0_ES6_S7_
+FN:88,_ZNSt4pairIN6wibble9SingletonISsEESt3setISsSt4lessISsESaISsEEEC1ERKS2_RKS7_
+FN:218,_ZSt9make_pairIN6wibble9SingletonISsEESt3setISsSt4lessISsESaISsEEESt4pairIT_T0_ES9_SA_
+FN:88,_ZNSt4pairISt3setIiSt4lessIiESaIiEES4_EC1ERKS4_S7_
+FN:218,_ZSt9make_pairISt3setIiSt4lessIiESaIiEES4_ESt4pairIT_T0_ES6_S7_
+DA:73,0
+DA:88,0
+DA:89,0
+DA:104,0
+DA:106,0
+DA:218,0
+DA:219,0
+LF:7
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:336,_ZNKSt3setISsSt4lessISsESaISsEE4sizeEv
+FN:261,_ZNKSt3setISsSt4lessISsESaISsEE5beginEv
+FN:270,_ZNKSt3setISsSt4lessISsESaISsEE3endEv
+FN:331,_ZNKSt3setISsSt4lessISsESaISsEE5emptyEv
+FN:331,_ZNKSt3setIiSt4lessIiESaIiEE5emptyEv
+FN:141,_ZNSt3setIiSt4lessIiESaIiEEC1Ev
+FN:141,_ZNSt3setISsSt4lessISsESaISsEEC1Ev
+FN:261,_ZNKSt3setIiSt4lessIiESaIiEE5beginEv
+FN:270,_ZNKSt3setIiSt4lessIiESaIiEE3endEv
+FN:471,_ZNSt3setISsSt4lessISsESaISsEE5clearEv
+FN:93,_ZNSt3setISsSt4lessISsESaISsEED1Ev
+FN:93,_ZNSt3setIiSt4lessIiESaIiEED1Ev
+FN:193,_ZNSt3setISsSt4lessISsESaISsEEC1ERKS3_
+FN:216,_ZNSt3setISsSt4lessISsESaISsEEaSERKS3_
+FN:193,_ZNSt3setIiSt4lessIiESaIiEEC1ERKS3_
+FN:216,_ZNSt3setIiSt4lessIiESaIiEEaSERKS3_
+FN:378,_ZNSt3setISsSt4lessISsESaISsEE6insertERKSs
+FN:378,_ZNSt3setIiSt4lessIiESaIiEE6insertERKi
+FN:405,_ZNSt3setISsSt4lessISsESaISsEE6insertESt23_Rb_tree_const_iteratorISsERKSs
+DA:93,0
+DA:141,0
+DA:142,0
+DA:193,0
+DA:194,0
+DA:216,0
+DA:218,0
+DA:219,0
+DA:261,0
+DA:262,0
+DA:270,0
+DA:271,0
+DA:331,0
+DA:332,0
+DA:336,0
+DA:337,0
+DA:378,0
+DA:381,0
+DA:382,0
+DA:405,0
+DA:406,0
+DA:471,0
+DA:472,0
+LF:23
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:103,_ZNSt18_Rb_tree_node_base10_S_minimumEPS_
+FN:117,_ZNSt18_Rb_tree_node_base10_S_maximumEPS_
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISsEneERKS0_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorISsEptEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEC1ERKSt17_Rb_tree_iteratorIS7_E
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEneERKS8_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEptEv
+FN:285,_ZNKSt23_Rb_tree_const_iteratorISsEeqERKS0_
+FN:452,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorIiEC1ERKSt17_Rb_tree_iteratorIiE
+FN:641,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE4sizeEv
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorISsEC1ERKSt17_Rb_tree_iteratorISsE
+FN:398,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_S_leftEPSt18_Rb_tree_node_base
+FN:347,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE21_M_get_Node_allocatorEv
+FN:432,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_M_rootEv
+FN:456,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_beginEv
+FN:463,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_M_endEv
+FN:428,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_S_minimumEPSt18_Rb_tree_node_base
+FN:436,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_leftmostEv
+FN:511,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_S_maximumEPSt18_Rb_tree_node_base
+FN:444,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE12_M_rightmostEv
+FN:168,_ZNSt17_Rb_tree_iteratorIiEC1EPSt13_Rb_tree_nodeIiE
+FN:596,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorIiEeqERKS0_
+FN:240,_ZNSt23_Rb_tree_const_iteratorISsEC1EPKSt13_Rb_tree_nodeISsE
+FN:603,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:614,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE3endEv
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE13_Rb_tree_implIS4_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:637,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE5emptyEv
+FN:398,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPSt18_Rb_tree_node_base
+FN:463,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorISsEC1EPSt13_Rb_tree_nodeISsE
+FN:596,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISsEeqERKS0_
+FN:247,_ZNKSt23_Rb_tree_const_iteratorISsEdeEv
+FN:415,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:491,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_rightEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_S_leftEPKSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_valueEPKSt13_Rb_tree_nodeIiE
+FN:475,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_S_keyEPKSt13_Rb_tree_nodeIiE
+FN:495,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_S_keyEPKSt18_Rb_tree_node_base
+FN:415,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE13_Rb_tree_implIS4_Lb0EE13_M_initializeEv
+FN:637,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5emptyEv
+FN:415,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEC1EPSt13_Rb_tree_nodeIS7_E
+FN:610,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE3endEv
+FN:596,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE5beginEv
+FN:471,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt13_Rb_tree_nodeISsE
+FN:475,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt13_Rb_tree_nodeISsE
+FN:495,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt18_Rb_tree_node_base
+FN:347,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE21_M_get_Node_allocatorEv
+FN:432,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_rootEv
+FN:456,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:428,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_S_minimumEPSt18_Rb_tree_node_base
+FN:436,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_leftmostEv
+FN:511,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_S_maximumEPSt18_Rb_tree_node_base
+FN:444,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE12_M_rightmostEv
+FN:637,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5emptyEv
+FN:403,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEEC1Ev
+FN:408,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EEC1ERKS3_RKSaISt13_Rb_tree_nodeIiEE
+FN:403,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE13_Rb_tree_implIS4_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EEC1Ev
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE21_M_get_Node_allocatorEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEeqERKS8_
+FN:176,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEptEv
+FN:403,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEC1Ev
+FN:351,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13get_allocatorEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEC1EPKSt13_Rb_tree_nodeIS7_E
+FN:603,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE5beginEv
+FN:614,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE3endEv
+FN:491,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPKSt18_Rb_tree_node_base
+FN:289,_ZNKSt23_Rb_tree_const_iteratorIiEneERKS0_
+FN:247,_ZNKSt23_Rb_tree_const_iteratorIiEdeEv
+FN:351,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE13get_allocatorEv
+FN:408,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EEC1ERKS3_RKSaISt13_Rb_tree_nodeISsEE
+FN:463,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE6_M_endEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorIiEC1EPKSt13_Rb_tree_nodeIiE
+FN:603,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5beginEv
+FN:614,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE3endEv
+FN:495,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE8_S_valueEPKSt13_Rb_tree_nodeIS7_E
+FN:475,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE6_S_keyEPKSt13_Rb_tree_nodeIS7_E
+FN:262,_ZNSt23_Rb_tree_const_iteratorISsEppEi
+FN:255,_ZNSt23_Rb_tree_const_iteratorISsEppEv
+FN:255,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEppEv
+FN:255,_ZNSt23_Rb_tree_const_iteratorIiEppEv
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS7_E
+FN:360,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_put_nodeEPSt13_Rb_tree_nodeISsE
+FN:388,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE15_M_destroy_nodeEPSt13_Rb_tree_nodeISsE
+FN:936,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_eraseEPSt13_Rb_tree_nodeISsE
+FN:695,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5clearEv
+FN:584,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEED1Ev
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS7_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE8_M_eraseEPSt13_Rb_tree_nodeIS7_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EED1Ev
+FN:360,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_put_nodeEPSt13_Rb_tree_nodeIiE
+FN:388,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE15_M_destroy_nodeEPSt13_Rb_tree_nodeIiE
+FN:936,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_eraseEPSt13_Rb_tree_nodeIiE
+FN:584,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEED1Ev
+FN:695,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5clearEv
+FN:954,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE14_M_lower_boundEPSt13_Rb_tree_nodeIS7_ESE_RS1_
+FN:1390,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE4findERS1_
+FN:356,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE11_M_get_nodeEv
+FN:356,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE14_M_create_nodeERKSs
+FN:378,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_M_clone_nodeEPKSt13_Rb_tree_nodeISsE
+FN:900,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_copyEPKSt13_Rb_tree_nodeISsEPS7_
+FN:568,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEC1ERKS5_
+FN:364,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE14_M_create_nodeERKS7_
+FN:824,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEaSERKS5_
+FN:356,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE14_M_create_nodeERKi
+FN:378,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_M_clone_nodeEPKSt13_Rb_tree_nodeIiE
+FN:900,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_M_copyEPKSt13_Rb_tree_nodeIiEPS7_
+FN:568,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEEC1ERKS5_
+FN:824,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEEaSERKS5_
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEmmEv
+FN:195,_ZNSt17_Rb_tree_iteratorISsEmmEv
+FN:195,_ZNSt17_Rb_tree_iteratorIiEmmEv
+FN:846,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE10_M_insert_EPKSt18_Rb_tree_node_baseSE_RKS7_
+FN:1133,_ZNSt8_Rb_treeISsSt4pairIKSsSt3setISsSt4lessISsESaISsEEESt10_Select1stIS7_ES4_SaIS7_EE16_M_insert_uniqueERKS7_
+FN:846,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_M_insert_EPKSt18_Rb_tree_node_baseS8_RKSs
+FN:1133,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE16_M_insert_uniqueERKSs
+FN:846,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_M_insert_EPKSt18_Rb_tree_node_baseS8_RKi
+FN:1133,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE16_M_insert_uniqueERKi
+FN:270,_ZNSt23_Rb_tree_const_iteratorISsEmmEv
+FN:1178,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE17_M_insert_unique_ESt23_Rb_tree_const_iteratorISsERKSs
+DA:103,0
+DA:105,0
+DA:106,0
+DA:117,0
+DA:119,0
+DA:120,0
+DA:168,0
+DA:169,0
+DA:176,0
+DA:177,0
+DA:195,0
+DA:197,0
+DA:198,0
+DA:210,0
+DA:211,0
+DA:240,0
+DA:241,0
+DA:243,21147
+DA:244,21147
+DA:247,0
+DA:248,0
+DA:251,0
+DA:252,0
+DA:255,0
+DA:257,0
+DA:258,0
+DA:262,0
+DA:264,0
+DA:265,0
+DA:270,0
+DA:272,0
+DA:273,0
+DA:285,0
+DA:286,0
+DA:289,0
+DA:290,0
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:356,0
+DA:357,0
+DA:360,0
+DA:361,0
+DA:364,0
+DA:366,0
+DA:368,0
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,0
+DA:378,0
+DA:380,0
+DA:381,0
+DA:382,0
+DA:383,0
+DA:384,0
+DA:388,0
+DA:390,0
+DA:391,0
+DA:392,0
+DA:398,0
+DA:403,0
+DA:405,0
+DA:406,0
+DA:408,0
+DA:410,0
+DA:411,0
+DA:415,0
+DA:417,0
+DA:418,0
+DA:419,0
+DA:420,0
+DA:421,0
+DA:428,0
+DA:429,0
+DA:432,0
+DA:433,0
+DA:436,0
+DA:437,0
+DA:444,0
+DA:445,0
+DA:452,0
+DA:453,0
+DA:456,0
+DA:459,0
+DA:463,0
+DA:464,0
+DA:471,0
+DA:472,0
+DA:475,0
+DA:476,0
+DA:479,0
+DA:480,0
+DA:483,0
+DA:484,0
+DA:487,0
+DA:488,0
+DA:491,0
+DA:492,0
+DA:495,0
+DA:496,0
+DA:499,0
+DA:500,0
+DA:503,0
+DA:504,0
+DA:511,0
+DA:512,0
+DA:562,0
+DA:568,0
+DA:569,0
+DA:571,0
+DA:573,0
+DA:574,0
+DA:575,0
+DA:576,0
+DA:578,0
+DA:584,0
+DA:585,0
+DA:596,0
+DA:599,0
+DA:603,0
+DA:606,0
+DA:610,0
+DA:611,0
+DA:614,0
+DA:617,0
+DA:637,2
+DA:638,2
+DA:641,0
+DA:642,0
+DA:695,0
+DA:697,0
+DA:698,0
+DA:699,0
+DA:700,0
+DA:701,0
+DA:702,0
+DA:824,0
+DA:826,0
+DA:829,0
+DA:830,0
+DA:831,0
+DA:833,0
+DA:834,0
+DA:835,0
+DA:836,0
+DA:839,0
+DA:846,0
+DA:850,0
+DA:852,0
+DA:854,0
+DA:857,0
+DA:858,0
+DA:900,0
+DA:903,0
+DA:904,0
+DA:908,0
+DA:909,0
+DA:910,0
+DA:911,0
+DA:913,0
+DA:915,0
+DA:916,0
+DA:917,0
+DA:918,0
+DA:919,0
+DA:920,0
+DA:921,0
+DA:924,0
+DA:926,0
+DA:927,0
+DA:929,0
+DA:936,0
+DA:939,0
+DA:941,0
+DA:942,0
+DA:943,0
+DA:944,0
+DA:946,0
+DA:954,0
+DA:956,0
+DA:957,0
+DA:958,0
+DA:960,0
+DA:961,0
+DA:1133,0
+DA:1135,0
+DA:1136,0
+DA:1137,0
+DA:1138,0
+DA:1140,0
+DA:1141,0
+DA:1142,0
+DA:1144,0
+DA:1145,0
+DA:1147,0
+DA:1148,0
+DA:1150,0
+DA:1152,0
+DA:1153,0
+DA:1154,0
+DA:1178,0
+DA:1181,0
+DA:1183,0
+DA:1186,0
+DA:1188,0
+DA:1190,0
+DA:1194,0
+DA:1195,0
+DA:1196,0
+DA:1197,0
+DA:1200,0
+DA:1201,0
+DA:1204,0
+DA:1207,0
+DA:1209,0
+DA:1213,0
+DA:1214,0
+DA:1215,0
+DA:1216,0
+DA:1219,0
+DA:1220,0
+DA:1222,0
+DA:1225,0
+DA:1230,0
+DA:1390,0
+DA:1392,0
+DA:1395,0
+BA:105,0
+BA:105,0
+BA:119,0
+BA:119,0
+BA:571,0
+BA:571,0
+BA:571,0
+BA:571,0
+BA:826,0
+BA:826,0
+BA:826,0
+BA:826,0
+BA:831,0
+BA:831,0
+BA:831,0
+BA:831,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:908,0
+BA:908,0
+BA:908,0
+BA:908,0
+BA:913,0
+BA:913,0
+BA:913,0
+BA:913,0
+BA:918,0
+BA:918,0
+BA:918,0
+BA:918,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:956,0
+BA:956,0
+BA:957,0
+BA:957,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1181,0
+BA:1181,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1190,0
+BA:1190,0
+BA:1195,0
+BA:1195,0
+BA:1197,0
+BA:1197,0
+BA:1200,0
+BA:1200,0
+BA:1209,0
+BA:1209,0
+BA:1214,0
+BA:1214,0
+BA:1216,0
+BA:1216,0
+BA:1219,0
+BA:1219,0
+BA:1395,0
+BA:1395,0
+BA:1395,0
+BA:1395,0
+LF:229
+LH:4
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEEPSsEET0_T_SC_SB_
+FN:113,_ZSt18uninitialized_copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEEPSsET0_T_SA_S9_
+FN:261,_ZSt22__uninitialized_copy_aIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEEPSsSsET0_T_SA_S9_RSaIT1_E
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+FN:186,_ZNSt22__uninitialized_fill_nILb0EE20uninitialized_fill_nIPSt3setIiSt4lessIiESaIiEEjS6_EEvT_T0_RKT1_
+FN:223,_ZSt20uninitialized_fill_nIPSt3setIiSt4lessIiESaIiEEjS4_EvT_T0_RKT1_
+FN:322,_ZSt24__uninitialized_fill_n_aIPSt3setIiSt4lessIiESaIiEEjS4_S4_EvT_T0_RKT1_RSaIT2_E
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSt3setIiSt4lessIiESaIiEES7_EET0_T_S9_S8_
+FN:113,_ZSt18uninitialized_copyIPSt3setIiSt4lessIiESaIiEES5_ET0_T_S7_S6_
+FN:261,_ZSt22__uninitialized_copy_aIPSt3setIiSt4lessIiESaIiEES5_S4_ET0_T_S7_S6_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSt3setIiSt4lessIiESaIiEES5_SaIS4_EET0_T_S8_S7_RT1_
+DA:73,21162
+DA:75,21162
+DA:78,54732
+DA:79,33570
+DA:81,21162
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,21162
+DA:122,21162
+DA:186,21142
+DA:188,21142
+DA:191,42907
+DA:192,21765
+DA:194,0
+DA:196,0
+DA:197,0
+DA:199,21142
+DA:223,21142
+DA:228,21142
+DA:230,21142
+DA:261,21162
+DA:262,21162
+DA:268,21162
+DA:272,21162
+DA:322,21142
+DA:323,21142
+BA:78,0
+BA:78,0
+BA:78,0
+BA:78,0
+BA:78,2
+BA:78,2
+BA:79,0
+BA:79,0
+BA:79,0
+BA:79,0
+BA:79,2
+BA:79,1
+BA:191,2
+BA:191,2
+LF:27
+LH:21
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:484,_ZNKSt6vectorISt3setIiSt4lessIiESaIiEESaIS4_EE4sizeEv
+FN:562,_ZNSt6vectorISt3setIiSt4lessIiESaIiEESaIS4_EEixEj
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:97,_ZNSt12_Vector_baseISt3setIiSt4lessIiESaIiEESaIS4_EE19_M_get_Tp_allocatorEv
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISt3setIiSt4lessIiESaIiEESaIS4_EE3endEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:79,_ZNSt12_Vector_baseISt3setIiSt4lessIiESaIiEESaIS4_EE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:84,_ZNSt12_Vector_baseISt3setIiSt4lessIiESaIiEESaIS4_EE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISt3setIiSt4lessIiESaIiEESaIS4_EEC2Ev
+FN:213,_ZNSt6vectorISt3setIiSt4lessIiESaIiEESaIS4_EEC2Ev
+FN:88,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1ERKS0_
+FN:101,_ZNKSt12_Vector_baseISt3setIiSt4lessIiESaIiEESaIS4_EE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorISt3setIiSt4lessIiESaIiEESaIS4_EE8max_sizeEv
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:1089,_ZNSt6vectorISt3setIiSt4lessIiESaIiEESaIS4_EE15_M_erase_at_endEPS4_
+FN:147,_ZNSt12_Vector_baseISt3setIiSt4lessIiESaIiEESaIS4_EE13_M_deallocateEPS4_j
+FN:135,_ZNSt12_Vector_baseISt3setIiSt4lessIiESaIiEESaIS4_EED2Ev
+FN:299,_ZNSt6vectorISt3setIiSt4lessIiESaIiEESaIS4_EED2Ev
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:114,_ZNSt12_Vector_baseISsSaISsEEC2EjRKS0_
+FN:247,_ZNSt6vectorISsSaISsEEC1ERKS1_
+FN:143,_ZNSt12_Vector_baseISt3setIiSt4lessIiESaIiEESaIS4_EE11_M_allocateEj
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+FN:1075,_ZNKSt6vectorISt3setIiSt4lessIiESaIiEESaIS4_EE12_M_check_lenEjPKc
+FN:791,_ZNSt6vectorISt3setIiSt4lessIiESaIiEESaIS4_EE6insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EEjRKS4_
+FN:504,_ZNSt6vectorISt3setIiSt4lessIiESaIiEESaIS4_EE6resizeEjS4_
+DA:79,2
+DA:84,2
+DA:85,2
+DA:86,2
+DA:88,0
+DA:89,0
+DA:90,0
+DA:97,42326
+DA:98,42326
+DA:101,40
+DA:102,40
+DA:108,2
+DA:109,2
+DA:114,0
+DA:115,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:120,0
+DA:135,2
+DA:136,2
+DA:137,2
+DA:143,20
+DA:144,20
+DA:147,22
+DA:149,22
+DA:150,20
+DA:151,22
+DA:213,2
+DA:214,2
+DA:247,0
+DA:248,0
+DA:249,0
+DA:253,0
+DA:299,2
+DA:300,2
+DA:301,2
+DA:377,0
+DA:378,0
+DA:386,0
+DA:387,0
+DA:395,42264
+DA:396,42264
+DA:404,0
+DA:405,0
+DA:484,253560
+DA:485,253560
+DA:489,40
+DA:490,40
+DA:504,21142
+DA:506,21142
+DA:507,0
+DA:509,21142
+DA:510,21142
+DA:526,0
+DA:527,0
+DA:562,211196
+DA:563,211196
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:791,21142
+DA:792,21142
+DA:1075,20
+DA:1077,20
+DA:1078,0
+DA:1080,20
+DA:1081,20
+DA:1089,0
+DA:1091,0
+DA:1092,0
+DA:1093,0
+BA:144,0
+BA:144,0
+BA:144,2
+BA:144,1
+BA:149,0
+BA:149,0
+BA:149,2
+BA:149,2
+BA:506,1
+BA:506,2
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1077,1
+BA:1077,2
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,2
+BA:1081,1
+BA:1081,1
+BA:1081,2
+LF:75
+LH:42
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+FN:350,_ZNSt6vectorISt3setIiSt4lessIiESaIiEESaIS4_EE14_M_fill_insertEN9__gnu_cxx17__normal_iteratorIPS4_S6_EEjRKS4_
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+DA:350,21142
+DA:352,21142
+DA:357,21142
+DA:361,21122
+DA:363,21122
+DA:364,21122
+DA:365,21122
+DA:367,0
+DA:371,0
+DA:372,0
+DA:374,0
+DA:379,21122
+DA:383,21122
+DA:384,21122
+DA:387,21122
+DA:388,21122
+DA:394,20
+DA:395,20
+DA:396,20
+DA:399,20
+DA:407,20
+DA:410,20
+DA:411,20
+DA:417,0
+DA:419,0
+DA:421,0
+DA:422,0
+DA:424,20
+DA:426,20
+DA:429,20
+DA:430,20
+DA:431,20
+DA:434,21142
+BA:286,0
+BA:286,0
+BA:352,2
+BA:352,1
+BA:357,2
+BA:357,2
+BA:365,1
+BA:365,2
+LF:57
+LH:25
+end_of_record
+SF:/usr/include/c++/4.3/exception
+FN:59,_ZNSt9exceptionC2Ev
+FN:57,_ZNSt9exceptionC2ERKS_
+DA:57,0
+DA:59,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:118,_ZN9__gnu_cxx13new_allocatorIiE7destroyEPi
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt3setIiSt4lessIiESaIiEEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIiED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEEC2ERKS3_
+FN:107,_ZN9__gnu_cxx13new_allocatorIiE9constructEPiRKi
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt3setIiSt4lessIiESaIiEEEC2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorISsEC2ERKS1_
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt3setIiSt4lessIiESaIiEEE8max_sizeEv
+FN:69,_ZN9__gnu_cxx13new_allocatorIiEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEC2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEEC2ERKS3_
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEE8max_sizeEv
+FN:118,_ZN9__gnu_cxx13new_allocatorISsE7destroyEPSs
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEE10deallocateEPSA_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE10deallocateEPS2_j
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEE7destroyEPS8_
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE10deallocateEPS2_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt3setIiSt4lessIiESaIiEEE10deallocateEPS5_j
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsSt3setISsSt4lessISsESaISsEEEEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8allocateEjPKv
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsSt3setISsSt4lessISsESaISsEEEE9constructEPS8_RKS8_
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt3setIiSt4lessIiESaIiEEE8allocateEjPKv
+DA:69,2
+DA:71,0
+DA:76,2
+DA:87,20
+DA:89,20
+DA:90,0
+DA:92,20
+DA:97,20
+DA:98,20
+DA:101,60
+DA:102,60
+DA:107,0
+DA:108,0
+DA:118,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,1
+BA:89,2
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+LF:14
+LH:9
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,2
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+DA:95,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/base.h
+FN:48,_ZN7tagcoll4coll18ReadonlyCollectionINS0_6SimpleISsSsEEEC2Ev
+FN:273,_ZN7tagcoll4coll10CollectionINS0_6SimpleISsSsEEEC2Ev
+FN:313,_ZN7tagcoll4coll8InserterINS0_6SimpleISsSsEEEC1ERS3_
+FN:324,_ZN7tagcoll4coll8inserterINS0_6SimpleISsSsEEEENS0_8InserterIT_EERS5_
+FN:313,_ZN7tagcoll4coll8InserterINS0_14IntDiskIndexerEEC1ERS2_
+FN:324,_ZN7tagcoll4coll8inserterINS0_14IntDiskIndexerEEENS0_8InserterIT_EERS4_
+FN:49,_ZNK7tagcoll4coll18ReadonlyCollectionINS0_6SimpleISsSsEEE4selfEv
+FN:316,_ZN7tagcoll4coll8InserterINS0_6SimpleISsSsEEEaSISt3setISsSt4lessISsESaISsEEN6wibble5EmptyISsEEEERS4_RKSt4pairIT_T0_E
+FN:316,_ZN7tagcoll4coll8InserterINS0_6SimpleISsSsEEEaSISt3setISsSt4lessISsESaISsEESA_EERS4_RKSt4pairIT_T0_E
+FN:316,_ZN7tagcoll4coll8InserterINS0_14IntDiskIndexerEEaSISt3setIiSt4lessIiESaIiEES9_EERS3_RKSt4pairIT_T0_E
+FN:233,_ZNK7tagcoll4coll18ReadonlyCollectionINS0_6SimpleISsSsEEE6outputIN3ept7debtags11StringToIntINS0_8InserterINS0_14IntDiskIndexerEEEEEEEvT_
+FN:233,_ZNK7tagcoll4coll18ReadonlyCollectionINS0_6SimpleISsSsEEE6outputINS_10textformat11StdioWriterEEEvT_
+DA:48,0
+DA:49,0
+DA:233,2
+DA:273,0
+DA:313,1
+DA:316,63423
+DA:318,63423
+DA:319,63423
+DA:324,1
+DA:326,1
+LF:10
+LH:7
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/base.tcc
+FN:188,_Z41__static_initialization_and_destruction_0ii
+FN:188,_GLOBAL__I_debtagsindexer.cc
+DA:138,84584
+DA:141,42290
+DA:142,42290
+DA:144,2
+DA:188,6
+BA:138,2
+BA:138,2
+BA:138,2
+BA:138,2
+BA:188,2
+BA:188,1
+BA:188,2
+BA:188,1
+LF:5
+LH:5
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/intdiskindex.h
+FN:174,_ZNK7tagcoll4coll14IntDiskIndexer10pkgIndexerEv
+FN:175,_ZNK7tagcoll4coll14IntDiskIndexer10tagIndexerEv
+FN:168,_ZN7tagcoll4coll14IntDiskIndexerC1Ev
+FN:168,_ZN7tagcoll4coll14IntDiskIndexerD1Ev
+FN:178,_ZN7tagcoll4coll14IntDiskIndexer6insertISt3setIiSt4lessIiESaIiEES7_EEvRKT_RKT0_
+DA:168,2
+DA:174,1
+DA:175,1
+DA:178,21133
+DA:180,21133
+DA:181,0
+DA:182,42266
+DA:184,126731
+DA:187,105598
+DA:188,105598
+BA:180,1
+BA:180,2
+BA:182,2
+BA:182,2
+BA:184,2
+BA:184,2
+LF:10
+LH:9
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/simple.h
+FN:82,_ZNK7tagcoll4coll6SimpleISsSsE5emptyEv
+FN:80,_ZN7tagcoll4coll6SimpleISsSsE3endEv
+FN:79,_ZN7tagcoll4coll6SimpleISsSsE5beginEv
+FN:62,_ZN7tagcoll4coll6SimpleISsSsEC1Ev
+FN:77,_ZNK7tagcoll4coll6SimpleISsSsE5beginEv
+FN:78,_ZNK7tagcoll4coll6SimpleISsSsE3endEv
+FN:62,_ZN7tagcoll4coll6SimpleISsSsED1Ev
+DA:62,0
+DA:77,0
+DA:78,0
+DA:79,1
+DA:80,21146
+DA:82,2
+LF:6
+LH:3
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/simple.tcc
+FN:38,_ZN7tagcoll4coll6SimpleISsSsE6insertISt3setISsSt4lessISsESaISsEEN6wibble5EmptyISsEEEEvRKT_RKT0_
+FN:38,_ZN7tagcoll4coll6SimpleISsSsE6insertISt3setISsSt4lessISsESaISsEES8_EEvRKT_RKT0_
+DA:38,42290
+DA:42,42290
+DA:43,0
+DA:44,84580
+DA:47,42290
+DA:48,42290
+DA:49,21145
+DA:51,21145
+BA:42,0
+BA:42,0
+BA:42,1
+BA:42,2
+BA:44,0
+BA:44,0
+BA:44,2
+BA:44,2
+BA:48,0
+BA:48,0
+BA:48,2
+BA:48,2
+LF:8
+LH:7
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/diskindex/int.h
+FN:69,_ZN7tagcoll9diskindex10IntIndexerC1Ev
+FN:69,_ZN7tagcoll9diskindex10IntIndexerD1Ev
+FN:72,_ZN7tagcoll9diskindex10IntIndexer3mapEji
+DA:69,4
+DA:72,211196
+DA:74,211196
+DA:75,21142
+DA:76,211196
+DA:77,211196
+BA:69,1
+BA:69,2
+BA:74,2
+BA:74,2
+LF:6
+LH:6
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/diskindex/mmap.h
+FN:89,_ZN7tagcoll9diskindex11MMapIndexerC2Ev
+FN:79,_ZN7tagcoll9diskindex4MMap5alignIiEET_S3_
+FN:91,_ZN7tagcoll9diskindex11MMapIndexerD0Ev
+FN:91,_ZN7tagcoll9diskindex11MMapIndexerD1Ev
+FN:91,_ZN7tagcoll9diskindex11MMapIndexerD2Ev
+DA:79,0
+DA:81,0
+DA:89,0
+DA:91,0
+BA:91,0
+BA:91,0
+BA:91,0
+BA:91,0
+BA:91,0
+BA:91,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/input/base.h
+FN:62,_ZN7tagcoll9exception5Input4lineEi
+FN:68,_ZNK7tagcoll9exception5Input4typeEv
+FN:81,_ZNK7tagcoll9exception6Parser4typeEv
+FN:59,_ZN7tagcoll9exception5InputD2Ev
+FN:79,_ZN7tagcoll9exception6ParserD0Ev
+FN:79,_ZN7tagcoll9exception6ParserD1Ev
+FN:59,_ZN7tagcoll9exception5InputD0Ev
+FN:59,_ZN7tagcoll9exception5InputD1Ev
+FN:41,_ZN7tagcoll9exception5InputC2ERKS1_
+FN:75,_ZN7tagcoll9exception6ParserC1ERKS1_
+FN:53,_ZN7tagcoll9exception5InputC1EiRKSs
+DA:41,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:59,0
+DA:62,0
+DA:68,0
+DA:75,0
+DA:79,0
+DA:81,0
+DA:83,0
+BA:59,0
+BA:59,0
+BA:59,0
+BA:59,0
+BA:59,0
+BA:59,0
+BA:79,0
+BA:79,0
+BA:79,0
+BA:79,0
+LF:11
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/TextFormat.h
+FN:64,_ZN7tagcoll10textformat11StdioWriterC1EP8_IO_FILE
+DA:64,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/TextFormat.tcc
+FN:37,_ZL11printTagsetRKSt3setISsSt4lessISsESaISsEEP8_IO_FILE
+FN:122,_ZN7tagcoll10textformat5parseINS_4coll8InserterINS2_6SimpleISsSsEEEEEEvRNS_5input5InputET_
+FN:56,_ZN7tagcoll10textformatL9outStringERKSsP8_IO_FILEPKc
+FN:63,_ZN7tagcoll10textformat11StdioWriteraSIN6wibble9SingletonISsEESt3setISsSt4lessISsESaISsEEEERS1_RKSt4pairIT_T0_E
+DA:37,0
+DA:39,0
+DA:41,0
+DA:43,0
+DA:44,0
+DA:48,0
+DA:49,0
+DA:51,0
+DA:56,126871
+DA:58,126871
+DA:59,0
+DA:60,126871
+DA:63,21145
+DA:65,42290
+DA:68,21145
+DA:69,0
+DA:70,0
+DA:71,21145
+DA:73,21145
+DA:75,21145
+DA:76,0
+DA:77,126871
+DA:80,105726
+DA:81,84581
+DA:82,0
+DA:83,105726
+DA:86,21145
+DA:87,0
+DA:88,21145
+DA:122,2
+DA:124,2
+DA:126,2
+DA:127,2
+DA:129,2
+DA:130,2
+DA:131,253744
+DA:134,253744
+DA:135,0
+DA:137,0
+DA:138,0
+DA:141,507488
+DA:143,253742
+DA:144,42290
+DA:146,211452
+DA:149,253744
+DA:152,42290
+DA:154,42292
+DA:156,42290
+DA:157,0
+DA:158,42290
+DA:159,0
+DA:161,42290
+DA:162,42290
+DA:164,42292
+DA:165,42292
+DA:166,42292
+DA:167,42292
+DA:169,42290
+DA:170,0
+DA:171,42290
+DA:174,2
+DA:177,2
+BA:39,0
+BA:39,0
+BA:41,0
+BA:41,0
+BA:43,0
+BA:43,0
+BA:48,0
+BA:48,0
+BA:58,1
+BA:58,2
+BA:65,2
+BA:65,2
+BA:68,1
+BA:68,2
+BA:69,0
+BA:69,0
+BA:73,2
+BA:73,1
+BA:75,1
+BA:75,2
+BA:77,2
+BA:77,2
+BA:80,2
+BA:80,2
+BA:81,1
+BA:81,2
+BA:86,1
+BA:86,2
+BA:131,2
+BA:131,2
+BA:141,2
+BA:141,2
+BA:143,2
+BA:143,2
+BA:149,2
+BA:149,2
+BA:149,2
+BA:149,2
+BA:154,2
+BA:154,2
+BA:154,1
+BA:154,2
+BA:154,2
+BA:154,2
+BA:156,1
+BA:156,2
+BA:158,1
+BA:158,2
+BA:169,1
+BA:169,2
+LF:62
+LH:42
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/apt/packagerecord.h
+FN:63,_ZN3ept3apt13PackageRecordC1Ev
+FN:37,_ZN3ept3apt13PackageRecordD1Ev
+FN:51,_ZNK3ept3apt13PackageRecord11parseStringERKSsS3_
+FN:166,_ZNK3ept3apt13PackageRecord3tagERKSt3setISsSt4lessISsESaISsEE
+FN:66,_ZNK3ept3apt13PackageRecord7packageERKSs
+FN:150,_ZNK3ept3apt13PackageRecord11descriptionERKSs
+FN:78,_ZNK3ept3apt13PackageRecord13installedSizeEj
+FN:134,_ZNK3ept3apt13PackageRecord11packageSizeEj
+DA:37,0
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:63,6
+DA:66,0
+DA:68,0
+DA:78,0
+DA:80,0
+DA:134,0
+DA:136,0
+DA:150,0
+DA:152,0
+DA:166,0
+DA:168,0
+BA:53,0
+BA:53,0
+LF:16
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/apt/recordparser.h
+FN:50,_ZN3ept3apt12RecordParserC2Ev
+FN:39,_ZN3ept3apt12RecordParserD2Ev
+FN:73,_ZNK3ept3apt12RecordParser6lookupERKSs
+DA:39,0
+DA:50,6
+DA:73,0
+LF:3
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.h
+DA:86,2
+BA:86,1
+BA:86,2
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/textsearch/textsearch.cc
+FN:192,_ZNK3ept10textsearch9TagFilterclERKSs
+FN:191,_ZN3ept10textsearch9TagFilterC1Ev
+FN:254,_Z41__static_initialization_and_destruction_0ii
+FN:254,_GLOBAL__I_textsearch.cc
+FN:254,_ZN3ept10textsearch9TagFilterD0Ev
+FN:191,_ZN3ept10textsearch9TagFilterD1Ev
+FN:212,_ZNK3ept10textsearch10TextSearch16makeRelatedQueryERKSs
+FN:197,_ZNK3ept10textsearch10TextSearch6expandERN6Xapian7EnquireE
+FN:181,_ZNK3ept10textsearch10TextSearch11docidByNameERKSs
+FN:240,_ZNK3ept10textsearch10TextSearch11getIntValueERKSsj
+FN:227,_ZNK3ept10textsearch10TextSearch14getDoubleValueERKSsj
+FN:67,_ZN3ept10textsearch10TextSearch12needsRebuildERNS_3apt3AptE
+FN:81,_ZN3ept10textsearch10TextSearch15rebuildIfNeededERNS_3apt3AptERKSt6vectorIPKNS1_12ExtraIndexerESaIS8_EE
+FN:58,_ZN3ept10textsearch10TextSearch7toLowerERKSs
+FN:153,_ZNK3ept10textsearch10TextSearch18makePartialORQueryERKSs
+FN:147,_ZNK3ept10textsearch10TextSearch11makeORQueryERKSs
+FN:72,_ZNK3ept10textsearch10TextSearch17normalize_and_addERN6Xapian8DocumentERKSsRi
+FN:50,_ZN3ept10textsearch10TextSearchC1Ev
+FN:50,_ZN3ept10textsearch10TextSearchC2Ev
+DA:50,11
+DA:51,11
+DA:53,22
+DA:54,11
+DA:55,9
+DA:56,11
+DA:58,7
+DA:60,7
+DA:61,7
+DA:62,44
+DA:63,37
+DA:64,0
+DA:67,3
+DA:69,3
+DA:72,0
+DA:74,0
+DA:75,0
+DA:76,0
+DA:77,0
+DA:78,0
+DA:79,0
+DA:81,10
+DA:85,10
+DA:86,10
+DA:87,4
+DA:90,6
+DA:91,6
+DA:92,6
+DA:94,6
+DA:95,6
+DA:96,2610
+DA:101,2604
+DA:102,0
+DA:104,2604
+DA:106,2604
+DA:107,2604
+DA:109,2604
+DA:111,2604
+DA:114,2604
+DA:115,2604
+DA:117,0
+DA:119,2604
+DA:120,2604
+DA:121,5208
+DA:124,5208
+DA:125,2604
+DA:127,2604
+DA:128,2170
+DA:130,434
+DA:131,6
+DA:135,6
+DA:136,1
+DA:138,5
+DA:140,6
+DA:142,6
+DA:144,6
+DA:147,2
+DA:149,2
+DA:150,4
+DA:153,1
+DA:155,1
+DA:156,1
+DA:158,2
+DA:160,1
+DA:162,1
+DA:164,1
+DA:165,1
+DA:169,0
+DA:171,1
+DA:178,1
+DA:181,10
+DA:183,10
+DA:184,10
+DA:185,5
+DA:187,5
+DA:191,4
+DA:192,0
+DA:195,2
+DA:197,0
+DA:199,0
+DA:201,0
+DA:202,0
+DA:203,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:209,0
+DA:212,0
+DA:214,0
+DA:217,0
+DA:218,0
+DA:219,0
+DA:220,0
+DA:221,0
+DA:224,0
+DA:227,4
+DA:229,4
+DA:230,4
+DA:231,2
+DA:232,2
+DA:233,2
+DA:234,2
+DA:235,0
+DA:237,2
+DA:240,4
+DA:242,4
+DA:243,4
+DA:244,2
+DA:245,2
+DA:246,2
+DA:247,2
+DA:248,0
+DA:250,2
+DA:254,6
+BA:54,2
+BA:54,2
+BA:54,0
+BA:54,0
+BA:62,2
+BA:62,2
+BA:77,0
+BA:77,0
+BA:86,2
+BA:86,2
+BA:96,2
+BA:96,2
+BA:101,2
+BA:101,1
+BA:101,1
+BA:101,2
+BA:115,1
+BA:115,2
+BA:127,2
+BA:127,2
+BA:135,2
+BA:135,2
+BA:158,2
+BA:158,2
+BA:162,2
+BA:162,1
+BA:165,1
+BA:165,2
+BA:184,2
+BA:184,2
+BA:191,0
+BA:191,0
+BA:191,1
+BA:191,2
+BA:202,0
+BA:202,0
+BA:207,0
+BA:207,0
+BA:220,0
+BA:220,0
+BA:230,2
+BA:230,2
+BA:234,1
+BA:234,2
+BA:243,2
+BA:243,2
+BA:247,1
+BA:247,2
+BA:254,2
+BA:254,1
+BA:254,2
+BA:254,1
+LF:115
+LH:83
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/textsearch/textsearch.h
+FN:133,_ZNK3ept10textsearch10TextSearch2dbEv
+FN:179,_ZNK3ept10textsearch10TextSearch11makeORQueryIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEEEEN6Xapian5QueryERKT_SE_
+FN:179,_ZNK3ept10textsearch10TextSearch11makeORQueryIN6wibble9Tokenizer14const_iteratorEEEN6Xapian5QueryERKT_SA_
+DA:133,4
+DA:179,3
+DA:181,3
+DA:183,10
+DA:185,7
+DA:186,7
+DA:187,7
+DA:188,7
+DA:189,0
+DA:191,3
+BA:183,2
+BA:183,2
+BA:183,2
+BA:183,2
+BA:188,1
+BA:188,2
+BA:188,1
+BA:188,2
+LF:10
+LH:9
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/regexp.h
+FN:119,_ZNK6wibble9Tokenizer14const_iteratorneERKS1_
+FN:107,_ZN6wibble9Tokenizer14const_iteratorC1ERS0_b
+FN:129,_ZN6wibble9Tokenizer3endEv
+FN:106,_ZN6wibble9Tokenizer14const_iteratorC1ERS0_
+FN:128,_ZN6wibble9Tokenizer5beginEv
+FN:125,_ZN6wibble9TokenizerC1ERKSsS2_i
+FN:111,_ZNK6wibble9Tokenizer14const_iteratordeEv
+FN:90,_ZN6wibble9TokenizerD1Ev
+DA:90,0
+DA:106,0
+DA:107,0
+DA:111,0
+DA:113,0
+DA:119,0
+DA:121,0
+DA:125,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:121,0
+BA:121,0
+BA:121,0
+BA:121,0
+LF:11
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISsEED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:106,_ZNSaISsED1Ev
+FN:106,_ZNSaIjED2Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISsEEC2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:104,_ZNSaISsEC1ISt13_Rb_tree_nodeISsEEERKSaIT_E
+FN:98,_ZNSaIjEC2Ev
+DA:98,0
+DA:100,0
+DA:101,0
+DA:104,0
+DA:106,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:277,_ZNKSs7_M_dataEv
+FN:701,_ZNKSsixEj
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:1544,_ZNKSs4dataEv
+FN:543,_ZNKSs5beginEv
+FN:562,_ZNKSs3endEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:192,_ZNKSs4_Rep12_M_is_sharedEv
+FN:652,_ZNKSs8capacityEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:870,_ZNSs9push_backEc
+FN:791,_ZNSspLEc
+FN:501,_ZNSsaSERKSs
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:2201,_ZStneIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:192,0
+DA:193,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:543,0
+DA:544,0
+DA:562,0
+DA:563,0
+DA:606,0
+DA:607,0
+DA:652,0
+DA:653,0
+DA:686,0
+DA:687,0
+DA:701,0
+DA:704,0
+DA:791,0
+DA:793,0
+DA:794,0
+DA:870,0
+DA:872,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:877,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1923,0
+DA:1925,0
+DA:2067,0
+DA:2069,0
+DA:2162,0
+DA:2165,0
+DA:2201,0
+DA:2202,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:308,0
+BA:308,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:70
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:668,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_
+DA:668,0
+DA:673,0
+DA:674,0
+DA:675,0
+DA:676,0
+DA:677,0
+DA:678,0
+LF:7
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:683,_ZSt8__fill_aIPSsSsEN9__gnu_cxx11__enable_ifIXntsrSt11__is_scalarIT0_E7__valueEvE6__typeET_S8_RKS4_
+FN:724,_ZSt4fillIPSsSsEvT_S1_RKT0_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt18input_iterator_tagE8__copy_mIN6Xapian12TermIteratorESt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SB_SA_
+FN:286,_ZNSt12__miter_baseIN6Xapian12TermIteratorELb0EE3__bES1_
+FN:268,_ZNSt12__niter_baseIN6Xapian12TermIteratorELb0EE3__bES1_
+FN:385,_ZSt13__copy_move_aILb0EN6Xapian12TermIteratorESt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S8_S7_
+FN:430,_ZSt14__copy_move_a2ILb0EN6Xapian12TermIteratorESt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S8_S7_
+FN:456,_ZSt4copyIN6Xapian12TermIteratorESt20back_insert_iteratorISt6vectorISsSaISsEEEET0_T_S8_S7_
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,0
+DA:269,0
+DA:286,0
+DA:287,0
+DA:309,0
+DA:311,0
+DA:312,0
+DA:313,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+DA:683,0
+DA:685,0
+DA:686,0
+DA:687,0
+DA:724,0
+DA:731,0
+DA:733,0
+BA:215,0
+BA:215,0
+BA:311,0
+BA:311,0
+BA:542,0
+BA:542,0
+BA:685,0
+BA:685,0
+LF:37
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:97,_ZSt8_DestroyIPjEvT_S1_
+FN:126,_ZSt8_DestroyIPjjEvT_S1_RSaIT0_E
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+FN:75,_ZSt10_ConstructISsSsEvPT_RKT0_
+DA:75,0
+DA:79,0
+DA:80,0
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:79,0
+BA:79,0
+BA:101,0
+BA:101,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPKcSsEppEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPKcSsEdeEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKcSsEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKcSsE4baseEv
+FN:781,_ZN9__gnu_cxxneIPKcSsEEbRKNS_17__normal_iteratorIT_T0_EES8_
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:125,_ZNSt16reverse_iteratorIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEEEC1ES6_
+FN:715,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEmmEv
+FN:154,_ZNKSt16reverse_iteratorIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEEEdeEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEppEv
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:781,_ZN9__gnu_cxxneIPSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESA_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:846,_ZN9__gnu_cxxmiIPSsSt6vectorISsSaISsEEEENS_17__normal_iteratorIT_T0_E15difference_typeERKS8_SB_
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+DA:125,1
+DA:154,1
+DA:156,1
+DA:157,1
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:683,0
+DA:695,0
+DA:696,0
+DA:703,0
+DA:705,0
+DA:706,0
+DA:715,0
+DA:717,0
+DA:718,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+DA:781,0
+DA:782,0
+DA:846,0
+DA:847,0
+LF:31
+LH:4
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:111,_ZNSt8iteratorISt26random_access_iterator_tagSsiPSsRSsEC2Ev
+DA:111,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:261,_ZNKSt3setISsSt4lessISsESaISsEE5beginEv
+FN:270,_ZNKSt3setISsSt4lessISsESaISsEE3endEv
+FN:141,_ZNSt3setISsSt4lessISsESaISsEEC1Ev
+FN:93,_ZNSt3setISsSt4lessISsESaISsEED1Ev
+DA:93,0
+DA:141,0
+DA:142,0
+DA:261,0
+DA:262,0
+DA:270,0
+DA:271,0
+LF:7
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISsEneERKS0_
+FN:247,_ZNKSt23_Rb_tree_const_iteratorISsEdeEv
+FN:452,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:398,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPSt18_Rb_tree_node_base
+FN:240,_ZNSt23_Rb_tree_const_iteratorISsEC1EPKSt13_Rb_tree_nodeISsE
+FN:603,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:614,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE3endEv
+FN:347,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE21_M_get_Node_allocatorEv
+FN:415,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:403,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEC1Ev
+FN:351,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13get_allocatorEv
+FN:360,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_put_nodeEPSt13_Rb_tree_nodeISsE
+FN:388,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE15_M_destroy_nodeEPSt13_Rb_tree_nodeISsE
+FN:936,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_eraseEPSt13_Rb_tree_nodeISsE
+FN:584,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEED1Ev
+FN:255,_ZNSt23_Rb_tree_const_iteratorISsEppEv
+DA:240,0
+DA:241,0
+DA:247,0
+DA:248,0
+DA:255,0
+DA:257,0
+DA:258,0
+DA:289,0
+DA:290,0
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:360,0
+DA:361,0
+DA:388,0
+DA:390,0
+DA:391,0
+DA:392,0
+DA:398,0
+DA:403,0
+DA:405,0
+DA:406,0
+DA:415,0
+DA:417,0
+DA:418,0
+DA:419,0
+DA:420,0
+DA:421,0
+DA:452,0
+DA:453,0
+DA:479,0
+DA:480,0
+DA:487,0
+DA:488,0
+DA:562,0
+DA:584,0
+DA:585,0
+DA:603,0
+DA:606,0
+DA:614,0
+DA:617,0
+DA:936,0
+DA:939,0
+DA:941,0
+DA:942,0
+DA:943,0
+DA:944,0
+DA:946,0
+BA:939,0
+BA:939,0
+LF:49
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+FN:186,_ZNSt22__uninitialized_fill_nILb0EE20uninitialized_fill_nIPSsjSsEEvT_T0_RKT1_
+FN:223,_ZSt20uninitialized_fill_nIPSsjSsEvT_T0_RKT1_
+FN:322,_ZSt24__uninitialized_fill_n_aIPSsjSsSsEvT_T0_RKT1_RSaIT2_E
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,0
+DA:122,0
+DA:186,0
+DA:188,0
+DA:191,0
+DA:192,0
+DA:194,0
+DA:196,0
+DA:197,0
+DA:199,0
+DA:223,0
+DA:228,0
+DA:230,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+DA:322,0
+DA:323,0
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+BA:191,0
+BA:191,0
+LF:27
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:97,_ZNSt12_Vector_baseIjSaIjEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:413,_ZNSt6vectorISsSaISsEE6rbeginEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:79,_ZNSt12_Vector_baseIjSaIjEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:84,_ZNSt12_Vector_baseIjSaIjEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseIjSaIjEEC2Ev
+FN:213,_ZNSt6vectorIjSaIjEEC1Ev
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:147,_ZNSt12_Vector_baseIjSaIjEE13_M_deallocateEPjj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:135,_ZNSt12_Vector_baseIjSaIjEED2Ev
+FN:299,_ZNSt6vectorIjSaIjEED1Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:1089,_ZNSt6vectorISsSaISsEE15_M_erase_at_endEPSs
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+FN:791,_ZNSt6vectorISsSaISsEE6insertEN9__gnu_cxx17__normal_iteratorIPSsS1_EEjRKSs
+FN:504,_ZNSt6vectorISsSaISsEE6resizeEjSs
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:377,0
+DA:378,0
+DA:386,0
+DA:387,0
+DA:395,0
+DA:396,0
+DA:404,0
+DA:405,0
+DA:413,1
+DA:414,1
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:504,0
+DA:506,0
+DA:507,0
+DA:509,0
+DA:510,0
+DA:526,0
+DA:527,0
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:791,0
+DA:792,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+DA:1089,0
+DA:1091,0
+DA:1092,0
+DA:1093,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:506,0
+BA:506,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:62
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+FN:350,_ZNSt6vectorISsSaISsEE14_M_fill_insertEN9__gnu_cxx17__normal_iteratorIPSsS1_EEjRKSs
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+DA:350,0
+DA:352,0
+DA:357,0
+DA:361,0
+DA:363,0
+DA:364,0
+DA:365,0
+DA:367,0
+DA:371,0
+DA:372,0
+DA:374,0
+DA:379,0
+DA:383,0
+DA:384,0
+DA:387,0
+DA:388,0
+DA:394,0
+DA:395,0
+DA:396,0
+DA:399,0
+DA:407,0
+DA:410,0
+DA:411,0
+DA:417,0
+DA:419,0
+DA:421,0
+DA:422,0
+DA:424,0
+DA:426,0
+DA:429,0
+DA:430,0
+DA:431,0
+DA:434,0
+BA:286,0
+BA:286,0
+BA:352,0
+BA:352,0
+BA:357,0
+BA:357,0
+BA:365,0
+BA:365,0
+LF:57
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIjED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:69,_ZN9__gnu_cxx13new_allocatorIjEC2Ev
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:97,_ZN9__gnu_cxx13new_allocatorIjE10deallocateEPjj
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE10deallocateEPS2_j
+FN:118,_ZN9__gnu_cxx13new_allocatorISsE7destroyEPSs
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+DA:118,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,2
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/xapian/base.h
+FN:164,_ZNK6Xapian8Internal9RefCntPtrINS_15PostingIterator8InternalEE3getEv
+FN:164,_ZNK6Xapian8Internal9RefCntPtrINS_12TermIterator8InternalEE3getEv
+FN:94,_ZN6Xapian8Internal9RefCntPtrINS_5Query8InternalEEC1EPS3_
+FN:130,_ZN6Xapian8Internal9RefCntPtrINS_5Query8InternalEED1Ev
+DA:94,0
+DA:96,0
+DA:97,0
+DA:130,0
+DA:132,0
+DA:136,0
+DA:137,0
+DA:138,0
+DA:140,0
+DA:164,0
+DA:166,0
+BA:96,0
+BA:96,0
+BA:132,0
+BA:132,0
+BA:132,0
+BA:132,0
+BA:132,0
+BA:132,0
+BA:138,0
+BA:138,0
+LF:11
+LH:0
+end_of_record
+SF:/usr/include/xapian/database.h
+FN:178,_ZNK6Xapian8Database12allterms_endERKSs
+FN:124,_ZNK6Xapian8Database12postlist_endERKSs
+DA:124,0
+DA:125,0
+DA:178,0
+DA:179,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/xapian/document.h
+FN:170,_ZNK6Xapian8Document12termlist_endEv
+DA:170,0
+DA:171,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/xapian/enquire.h
+FN:273,_ZN6Xapian12MSetIteratorppEv
+FN:374,_ZN6XapianeqERKNS_12MSetIteratorES2_
+FN:379,_ZN6XapianneERKNS_12MSetIteratorES2_
+FN:476,_ZN6Xapian12ESetIteratorppEv
+FN:525,_ZN6XapianneERKNS_12ESetIteratorES2_
+FN:258,_ZN6Xapian12MSetIteratorD1Ev
+FN:461,_ZN6Xapian12ESetIteratorD1Ev
+FN:564,_ZN6Xapian4RSet12add_documentERKNS_12MSetIteratorE
+FN:955,_ZNK6Xapian7Enquire8get_esetEjRKNS_4RSetEPKNS_13ExpandDeciderE
+DA:258,0
+DA:273,0
+DA:274,0
+DA:275,0
+DA:374,0
+DA:376,0
+DA:379,0
+DA:381,0
+DA:461,0
+DA:476,0
+DA:477,0
+DA:478,0
+DA:525,0
+DA:527,0
+DA:564,0
+DA:955,0
+DA:956,0
+LF:17
+LH:0
+end_of_record
+SF:/usr/include/xapian/expanddecider.h
+FN:32,_ZN6Xapian13ExpandDeciderC2Ev
+DA:32,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/xapian/postingiterator.h
+FN:150,_ZN6XapianeqERKNS_15PostingIteratorES2_
+DA:150,0
+DA:152,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/xapian/query.h
+FN:258,_ZN6Xapian5QueryC1INS_12TermIteratorEEENS0_2opET_S4_j
+FN:258,_ZN6Xapian5QueryC1IN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEEEENS0_2opET_SA_j
+DA:258,3
+DA:259,3
+DA:262,3
+DA:265,13
+DA:266,7
+DA:267,7
+DA:270,3
+DA:271,0
+DA:272,0
+DA:273,0
+DA:275,3
+BA:265,0
+BA:265,0
+BA:265,2
+BA:265,2
+LF:11
+LH:8
+end_of_record
+SF:/usr/include/xapian/termgenerator.h
+FN:136,_ZN6Xapian13TermGenerator28index_text_without_positionsERKSsjS2_
+DA:136,5208
+DA:137,5208
+LF:2
+LH:2
+end_of_record
+SF:/usr/include/xapian/termiterator.h
+FN:136,_ZN6XapianeqERKNS_12TermIteratorES2_
+FN:142,_ZN6XapianneERKNS_12TermIteratorES2_
+DA:136,0
+DA:138,0
+DA:142,0
+DA:144,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/xapian/unicode.h
+FN:65,_ZN6Xapian12Utf8Iterator6assignEPKcj
+FN:118,_ZN6Xapian12Utf8IteratorC1ERKSs
+DA:65,5208
+DA:66,5208
+DA:67,5208
+DA:68,5208
+DA:69,5208
+DA:71,0
+DA:73,5208
+DA:118,5208
+BA:66,2
+BA:66,1
+LF:8
+LH:7
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/apt/packagerecord.h
+FN:166,_ZNK3ept3apt13PackageRecord3tagERKSt3setISsSt4lessISsESaISsEE
+DA:166,0
+DA:168,0
+LF:2
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/apt/recordparser.h
+FN:73,_ZNK3ept3apt12RecordParser6lookupERKSs
+DA:73,0
+LF:1
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/debtags.h
+FN:282,_ZNK3ept7debtags7Debtags10vocabularyEv
+FN:112,_ZNK3ept7debtags7Debtags11idByPackageERKSs
+FN:244,_ZNK3ept7debtags7Debtags13getTagsOfItemERKSs
+DA:112,0
+DA:114,0
+DA:244,0
+DA:246,0
+DA:247,0
+DA:248,0
+DA:282,0
+BA:247,0
+BA:247,0
+LF:7
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/tag.h
+FN:175,_ZN3ept7debtags3TagD1Ev
+FN:179,_ZNK3ept7debtags3TagltERKS1_
+DA:175,0
+DA:179,0
+LF:2
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/debtags/vocabulary.h
+FN:181,_ZNK3ept7debtags10Vocabulary8tagsByIDISt3setIiSt4lessIiESaIiEEEES3_INS0_3TagES4_IS8_ESaIS8_EERKT_
+DA:181,0
+DA:183,0
+DA:184,0
+DA:186,0
+DA:187,0
+BA:184,0
+BA:184,0
+LF:5
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/textsearch/extraindexers.cc
+FN:44,_ZNK3ept10textsearch19DebtagsExtraIndexerclERN6Xapian8DocumentERKNS_3apt13PackageRecordE
+FN:35,_ZNK3ept10textsearch19AptTagsExtraIndexerclERN6Xapian8DocumentERKNS_3apt13PackageRecordE
+DA:35,0
+DA:38,0
+DA:39,0
+DA:41,0
+DA:42,0
+DA:44,0
+DA:47,0
+DA:48,0
+DA:50,0
+DA:51,0
+BA:39,0
+BA:39,0
+BA:48,0
+BA:48,0
+LF:10
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/textsearch/extraindexers.h
+FN:36,_ZN3ept10textsearch19AptTagsExtraIndexerD0Ev
+FN:36,_ZN3ept10textsearch19AptTagsExtraIndexerD1Ev
+FN:41,_ZN3ept10textsearch19DebtagsExtraIndexerD0Ev
+FN:41,_ZN3ept10textsearch19DebtagsExtraIndexerD1Ev
+DA:36,0
+DA:41,0
+BA:36,0
+BA:36,0
+BA:36,0
+BA:36,0
+BA:41,0
+BA:41,0
+BA:41,0
+BA:41,0
+LF:2
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/textsearch/textsearch.h
+FN:123,_ZN3ept10textsearch10TextSearch12ExtraIndexerD2Ev
+FN:123,_ZN3ept10textsearch10TextSearch12ExtraIndexerD0Ev
+FN:123,_ZN3ept10textsearch10TextSearch12ExtraIndexerD1Ev
+DA:123,0
+BA:123,0
+BA:123,0
+BA:123,0
+BA:123,0
+BA:123,0
+BA:123,0
+LF:1
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/operators.h
+FN:74,_ZN6wibble9operatorsorIiEESt3setIT_St4lessIS3_ESaIS3_EERKS7_S9_
+FN:82,_ZN6wibble9operatorsmiIiEESt3setIT_St4lessIS3_ESaIS3_EERKS7_S9_
+DA:74,0
+DA:75,0
+DA:76,0
+DA:78,0
+DA:82,0
+DA:83,0
+DA:84,0
+DA:86,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISsEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeIN3ept7debtags3TagEEED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeIiEED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISsEEC2Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2Ev
+FN:106,_ZNSaIN3ept7debtags3TagEED1Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeIiEEC2Ev
+FN:106,_ZNSaIiED1Ev
+FN:100,_ZNSaISt13_Rb_tree_nodeIiEEC2ERKS1_
+FN:104,_ZNSaISsEC1ISt13_Rb_tree_nodeISsEEERKSaIT_E
+FN:104,_ZNSaIN3ept7debtags3TagEEC1ISt13_Rb_tree_nodeIS1_EEERKSaIT_E
+FN:104,_ZNSaIiEC1ISt13_Rb_tree_nodeIiEEERKSaIT_E
+DA:98,0
+DA:100,0
+DA:101,0
+DA:104,0
+DA:106,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:277,_ZNKSs7_M_dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+DA:178,0
+DA:183,0
+DA:184,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:606,0
+DA:607,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+LF:27
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:668,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_
+DA:668,0
+DA:673,0
+DA:674,0
+DA:675,0
+DA:676,0
+DA:677,0
+DA:678,0
+LF:7
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+DA:261,0
+DA:262,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algo.h
+FN:5055,_ZSt9set_unionISt23_Rb_tree_const_iteratorIiES1_St15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T_SA_T0_SB_S9_
+FN:5300,_ZSt14set_differenceISt23_Rb_tree_const_iteratorIiES1_St15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T_SA_T0_SB_S9_
+DA:5055,0
+DA:5074,0
+DA:5076,0
+DA:5078,0
+DA:5079,0
+DA:5081,0
+DA:5083,0
+DA:5084,0
+DA:5088,0
+DA:5089,0
+DA:5090,0
+DA:5092,0
+DA:5095,0
+DA:5300,0
+DA:5317,0
+DA:5318,0
+DA:5320,0
+DA:5321,0
+DA:5322,0
+DA:5324,0
+DA:5325,0
+DA:5328,0
+DA:5329,0
+DA:5331,0
+BA:5074,0
+BA:5074,0
+BA:5074,0
+BA:5074,0
+BA:5074,0
+BA:5074,0
+BA:5076,0
+BA:5076,0
+BA:5081,0
+BA:5081,0
+BA:5317,0
+BA:5317,0
+BA:5317,0
+BA:5317,0
+BA:5317,0
+BA:5317,0
+BA:5318,0
+BA:5318,0
+BA:5324,0
+BA:5324,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseISt23_Rb_tree_const_iteratorIiELb0EE3__bES1_
+FN:268,_ZNSt12__niter_baseISt23_Rb_tree_const_iteratorIiELb0EE3__bES1_
+FN:268,_ZNSt12__niter_baseISt15insert_iteratorISt3setIiSt4lessIiESaIiEEELb0EE3__bES6_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt26bidirectional_iterator_tagE8__copy_mISt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEEET0_T_SD_SC_
+FN:385,_ZSt13__copy_move_aILb0ESt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T0_SA_S9_
+FN:430,_ZSt14__copy_move_a2ILb0ESt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET1_T0_SA_S9_
+FN:456,_ZSt4copyISt23_Rb_tree_const_iteratorIiESt15insert_iteratorISt3setIiSt4lessIiESaIiEEEET0_T_SA_S9_
+DA:268,0
+DA:269,0
+DA:286,0
+DA:287,0
+DA:309,0
+DA:311,0
+DA:312,0
+DA:313,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+BA:311,0
+BA:311,0
+LF:15
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:469,_ZNKSt9_IdentityIN3ept7debtags3TagEEclERKS2_
+FN:229,_ZNKSt4lessIN3ept7debtags3TagEEclERKS2_S5_
+FN:469,_ZNKSt9_IdentityIiEclERKi
+FN:229,_ZNKSt4lessIiEclERKiS2_
+FN:482,_ZNKSt10_Select1stISt4pairIKiN7tagcoll5PatchIiiEEEEclERKS5_
+DA:229,0
+DA:230,0
+DA:469,0
+DA:470,0
+DA:482,0
+DA:483,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:572,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEC1ERS4_St23_Rb_tree_const_iteratorIiE
+FN:645,_ZSt8inserterISt3setIiSt4lessIiESaIiEESt23_Rb_tree_const_iteratorIiEESt15insert_iteratorIT_ERS8_T0_
+FN:618,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEdeEv
+FN:623,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEppEv
+FN:599,_ZNSt15insert_iteratorISt3setIiSt4lessIiESaIiEEEaSERKi
+DA:572,0
+DA:573,0
+DA:599,0
+DA:601,0
+DA:602,0
+DA:603,0
+DA:618,0
+DA:619,0
+DA:623,0
+DA:624,0
+DA:645,0
+DA:648,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+DA:111,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_map.h
+FN:302,_ZNKSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE3endEv
+FN:629,_ZNKSt3mapIiN7tagcoll5PatchIiiEESt4lessIiESaISt4pairIKiS2_EEE4findERS6_
+DA:302,0
+DA:303,0
+DA:629,0
+DA:630,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEbEC1ERKS4_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIN3ept7debtags3TagEEbEC1ERKS4_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIiEbEC1ERKS1_RKb
+DA:88,0
+DA:89,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:261,_ZNKSt3setISsSt4lessISsESaISsEE5beginEv
+FN:270,_ZNKSt3setISsSt4lessISsESaISsEE3endEv
+FN:261,_ZNKSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE5beginEv
+FN:270,_ZNKSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE3endEv
+FN:270,_ZNKSt3setIiSt4lessIiESaIiEE3endEv
+FN:261,_ZNKSt3setIiSt4lessIiESaIiEE5beginEv
+FN:141,_ZNSt3setISsSt4lessISsESaISsEEC1Ev
+FN:141,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EEC1Ev
+FN:141,_ZNSt3setIiSt4lessIiESaIiEEC1Ev
+FN:93,_ZNSt3setIiSt4lessIiESaIiEED1Ev
+FN:93,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EED1Ev
+FN:193,_ZNSt3setIiSt4lessIiESaIiEEC1ERKS3_
+FN:378,_ZNSt3setIN3ept7debtags3TagESt4lessIS2_ESaIS2_EE6insertERKS2_
+FN:405,_ZNSt3setIiSt4lessIiESaIiEE6insertESt23_Rb_tree_const_iteratorIiERKi
+FN:93,_ZNSt3setISsSt4lessISsESaISsEED1Ev
+DA:93,0
+DA:141,0
+DA:142,0
+DA:193,0
+DA:194,0
+DA:261,0
+DA:262,0
+DA:270,0
+DA:271,0
+DA:378,0
+DA:381,0
+DA:382,0
+DA:405,0
+DA:406,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:103,_ZNSt18_Rb_tree_node_base10_S_minimumEPS_
+FN:117,_ZNSt18_Rb_tree_node_base10_S_maximumEPS_
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISsEneERKS0_
+FN:289,_ZNKSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEneERKS3_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEptEv
+FN:247,_ZNKSt23_Rb_tree_const_iteratorISsEdeEv
+FN:452,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:452,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEC1ERKSt17_Rb_tree_iteratorIS2_E
+FN:452,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_beginEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorIiEC1ERKSt17_Rb_tree_iteratorIiE
+FN:289,_ZNKSt23_Rb_tree_const_iteratorIiEneERKS0_
+FN:247,_ZNKSt23_Rb_tree_const_iteratorIiEdeEv
+FN:285,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEeqERKS6_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEptEv
+FN:398,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPSt18_Rb_tree_node_base
+FN:240,_ZNSt23_Rb_tree_const_iteratorISsEC1EPKSt13_Rb_tree_nodeISsE
+FN:603,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:614,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE3endEv
+FN:347,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE21_M_get_Node_allocatorEv
+FN:398,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:463,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorIN3ept7debtags3TagEEC1EPSt13_Rb_tree_nodeIS2_E
+FN:596,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorIN3ept7debtags3TagEEeqERKS3_
+FN:347,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE21_M_get_Node_allocatorEv
+FN:398,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_S_leftEPSt18_Rb_tree_node_base
+FN:347,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE21_M_get_Node_allocatorEv
+FN:432,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_M_rootEv
+FN:456,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_beginEv
+FN:463,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_M_endEv
+FN:428,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_S_minimumEPSt18_Rb_tree_node_base
+FN:436,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_leftmostEv
+FN:511,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_S_maximumEPSt18_Rb_tree_node_base
+FN:444,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE12_M_rightmostEv
+FN:168,_ZNSt17_Rb_tree_iteratorIiEC1EPSt13_Rb_tree_nodeIiE
+FN:596,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorIiEeqERKS0_
+FN:641,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE4sizeEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEC1EPKSt13_Rb_tree_nodeIS2_E
+FN:603,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE5beginEv
+FN:614,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE3endEv
+FN:415,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:415,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EE13_M_initializeEv
+FN:471,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_valueEPKSt13_Rb_tree_nodeIS2_E
+FN:475,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_S_keyEPKSt13_Rb_tree_nodeIS2_E
+FN:495,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:415,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:491,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_rightEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_S_leftEPKSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_valueEPKSt13_Rb_tree_nodeIiE
+FN:475,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_S_keyEPKSt13_Rb_tree_nodeIiE
+FN:495,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE6_S_keyEPKSt18_Rb_tree_node_base
+FN:240,_ZNSt23_Rb_tree_const_iteratorIiEC1EPKSt13_Rb_tree_nodeIiE
+FN:614,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE3endEv
+FN:603,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE5beginEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorISt4pairIKiN7tagcoll5PatchIiiEEEEC1EPKSt13_Rb_tree_nodeIS5_E
+FN:614,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE3endEv
+FN:456,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_M_beginEv
+FN:467,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE6_M_endEv
+FN:403,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEC1Ev
+FN:403,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13_Rb_tree_implIS6_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EEC1Ev
+FN:403,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEEC1Ev
+FN:408,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_Rb_tree_implIS3_Lb0EEC1ERKS3_RKSaISt13_Rb_tree_nodeIiEE
+FN:483,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE7_S_leftEPKSt18_Rb_tree_node_base
+FN:491,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_S_rightEPKSt18_Rb_tree_node_base
+FN:495,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE8_S_valueEPKSt13_Rb_tree_nodeIS5_E
+FN:475,_ZNSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE6_S_keyEPKSt13_Rb_tree_nodeIS5_E
+FN:970,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE14_M_lower_boundEPKSt13_Rb_tree_nodeIS5_ESF_RS1_
+FN:1403,_ZNKSt8_Rb_treeIiSt4pairIKiN7tagcoll5PatchIiiEEESt10_Select1stIS5_ESt4lessIiESaIS5_EE4findERS1_
+FN:351,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE13get_allocatorEv
+FN:351,_ZNKSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13get_allocatorEv
+FN:360,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_put_nodeEPSt13_Rb_tree_nodeIiE
+FN:388,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE15_M_destroy_nodeEPSt13_Rb_tree_nodeIiE
+FN:936,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE8_M_eraseEPSt13_Rb_tree_nodeIiE
+FN:360,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:388,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:936,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E
+FN:360,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_put_nodeEPSt13_Rb_tree_nodeISsE
+FN:584,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEED1Ev
+FN:584,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EED1Ev
+FN:356,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE14_M_create_nodeERKi
+FN:378,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE13_M_clone_nodeEPKSt13_Rb_tree_nodeIiE
+FN:900,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE7_M_copyEPKSt13_Rb_tree_nodeIiEPS7_
+FN:568,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEEC1ERKS5_
+FN:356,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE11_M_get_nodeEv
+FN:364,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE14_M_create_nodeERKS2_
+FN:270,_ZNSt23_Rb_tree_const_iteratorIiEmmEv
+FN:846,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE10_M_insert_EPKSt18_Rb_tree_node_baseS8_RKi
+FN:846,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE10_M_insert_EPKSt18_Rb_tree_node_baseSB_RKS2_
+FN:195,_ZNSt17_Rb_tree_iteratorIiEmmEv
+FN:1133,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE16_M_insert_uniqueERKi
+FN:195,_ZNSt17_Rb_tree_iteratorIN3ept7debtags3TagEEmmEv
+FN:1133,_ZNSt8_Rb_treeIN3ept7debtags3TagES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE16_M_insert_uniqueERKS2_
+FN:255,_ZNSt23_Rb_tree_const_iteratorIiEppEv
+FN:1178,_ZNSt8_Rb_treeIiiSt9_IdentityIiESt4lessIiESaIiEE17_M_insert_unique_ESt23_Rb_tree_const_iteratorIiERKi
+FN:255,_ZNSt23_Rb_tree_const_iteratorIN3ept7debtags3TagEEppEv
+FN:255,_ZNSt23_Rb_tree_const_iteratorISsEppEv
+FN:388,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE15_M_destroy_nodeEPSt13_Rb_tree_nodeISsE
+FN:936,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_eraseEPSt13_Rb_tree_nodeISsE
+FN:584,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEED1Ev
+DA:103,0
+DA:105,0
+DA:106,0
+DA:117,0
+DA:119,0
+DA:120,0
+DA:168,0
+DA:169,0
+DA:195,0
+DA:197,0
+DA:198,0
+DA:210,0
+DA:211,0
+DA:240,0
+DA:241,0
+DA:243,0
+DA:244,0
+DA:247,0
+DA:248,0
+DA:251,0
+DA:252,0
+DA:255,0
+DA:257,0
+DA:258,0
+DA:270,0
+DA:272,0
+DA:273,0
+DA:285,0
+DA:286,0
+DA:289,0
+DA:290,0
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:356,0
+DA:357,0
+DA:360,0
+DA:361,0
+DA:364,0
+DA:366,0
+DA:368,0
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,0
+DA:378,0
+DA:380,0
+DA:381,0
+DA:382,0
+DA:383,0
+DA:384,0
+DA:388,0
+DA:390,0
+DA:391,0
+DA:392,0
+DA:398,0
+DA:403,0
+DA:405,0
+DA:406,0
+DA:408,0
+DA:410,0
+DA:411,0
+DA:415,0
+DA:417,0
+DA:418,0
+DA:419,0
+DA:420,0
+DA:421,0
+DA:428,0
+DA:429,0
+DA:432,0
+DA:433,0
+DA:436,0
+DA:437,0
+DA:444,0
+DA:445,0
+DA:452,0
+DA:453,0
+DA:456,0
+DA:459,0
+DA:463,0
+DA:464,0
+DA:467,0
+DA:468,0
+DA:471,0
+DA:472,0
+DA:475,0
+DA:476,0
+DA:479,0
+DA:480,0
+DA:483,0
+DA:484,0
+DA:487,0
+DA:488,0
+DA:491,0
+DA:492,0
+DA:495,0
+DA:496,0
+DA:499,0
+DA:500,0
+DA:503,0
+DA:504,0
+DA:511,0
+DA:512,0
+DA:562,0
+DA:568,0
+DA:569,0
+DA:571,0
+DA:573,0
+DA:574,0
+DA:575,0
+DA:576,0
+DA:578,0
+DA:584,0
+DA:585,0
+DA:596,0
+DA:599,0
+DA:603,0
+DA:606,0
+DA:614,0
+DA:617,0
+DA:641,0
+DA:642,0
+DA:846,0
+DA:850,0
+DA:852,0
+DA:854,0
+DA:857,0
+DA:858,0
+DA:900,0
+DA:903,0
+DA:904,0
+DA:908,0
+DA:909,0
+DA:910,0
+DA:911,0
+DA:913,0
+DA:915,0
+DA:916,0
+DA:917,0
+DA:918,0
+DA:919,0
+DA:920,0
+DA:921,0
+DA:924,0
+DA:926,0
+DA:927,0
+DA:929,0
+DA:936,0
+DA:939,0
+DA:941,0
+DA:942,0
+DA:943,0
+DA:944,0
+DA:946,0
+DA:970,0
+DA:972,0
+DA:973,0
+DA:974,0
+DA:976,0
+DA:977,0
+DA:1133,0
+DA:1135,0
+DA:1136,0
+DA:1137,0
+DA:1138,0
+DA:1140,0
+DA:1141,0
+DA:1142,0
+DA:1144,0
+DA:1145,0
+DA:1147,0
+DA:1148,0
+DA:1150,0
+DA:1152,0
+DA:1153,0
+DA:1154,0
+DA:1178,0
+DA:1181,0
+DA:1183,0
+DA:1186,0
+DA:1188,0
+DA:1190,0
+DA:1194,0
+DA:1195,0
+DA:1196,0
+DA:1197,0
+DA:1200,0
+DA:1201,0
+DA:1204,0
+DA:1207,0
+DA:1209,0
+DA:1213,0
+DA:1214,0
+DA:1215,0
+DA:1216,0
+DA:1219,0
+DA:1220,0
+DA:1222,0
+DA:1225,0
+DA:1230,0
+DA:1403,0
+DA:1405,0
+DA:1408,0
+BA:105,0
+BA:105,0
+BA:119,0
+BA:119,0
+BA:571,0
+BA:571,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:908,0
+BA:908,0
+BA:913,0
+BA:913,0
+BA:918,0
+BA:918,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:939,0
+BA:972,0
+BA:972,0
+BA:973,0
+BA:973,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1138,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1142,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1145,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1147,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1152,0
+BA:1181,0
+BA:1181,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1183,0
+BA:1190,0
+BA:1190,0
+BA:1195,0
+BA:1195,0
+BA:1197,0
+BA:1197,0
+BA:1200,0
+BA:1200,0
+BA:1209,0
+BA:1209,0
+BA:1214,0
+BA:1214,0
+BA:1216,0
+BA:1216,0
+BA:1219,0
+BA:1219,0
+BA:1408,0
+BA:1408,0
+BA:1408,0
+BA:1408,0
+LF:205
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:118,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEE7destroyEPS3_
+FN:118,_ZN9__gnu_cxx13new_allocatorIiE7destroyEPi
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEED2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEE9constructEPS3_RKS3_
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIiED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEEC2ERKS3_
+FN:107,_ZN9__gnu_cxx13new_allocatorIiE9constructEPiRKi
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIN3ept7debtags3TagEEC2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorIiEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE8max_sizeEv
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE8max_sizeEv
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE10deallocateEPS2_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE10deallocateEPS5_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE10deallocateEPS2_j
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIiEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIN3ept7debtags3TagEEE8allocateEjPKv
+FN:118,_ZN9__gnu_cxx13new_allocatorISsE7destroyEPSs
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+DA:118,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,2
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+DA:105,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/coll/patched.h
+FN:205,_ZNK7tagcoll4coll7PatchedINS0_12IntDiskIndexEE13getTagsOfItemERKi
+DA:205,0
+DA:207,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/patch.h
+FN:83,_ZNK7tagcoll5PatchIiiE5applyERKSt3setIiSt4lessIiESaIiEE
+FN:172,_ZNK7tagcoll9PatchListIiiE5patchERKiRKSt3setIiSt4lessIiESaIiEE
+DA:83,0
+DA:86,0
+DA:172,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/patch.tcc
+FN:160,_Z41__static_initialization_and_destruction_0ii
+FN:160,_GLOBAL__I_extraindexers.cc
+DA:129,0
+DA:130,0
+DA:132,0
+DA:135,0
+DA:160,6
+BA:130,0
+BA:130,0
+BA:160,2
+BA:160,1
+BA:160,2
+BA:160,1
+LF:5
+LH:1
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/textsearch/maint/path.cc
+FN:91,_Z41__static_initialization_and_destruction_0ii
+FN:91,_GLOBAL__I_path.cc
+FN:53,_ZN3ept10textsearch4Path6accessERKSsi
+FN:45,_ZN3ept10textsearch4Path8instanceEv
+FN:86,_ZN3ept10textsearch4Path5indexEv
+FN:85,_ZN3ept10textsearch4Path8indexDirEv
+FN:80,_ZN3ept10textsearch4Path11setIndexDirERKSs
+FN:68,_ZN3ept10textsearch4Path12setTimestampEl
+FN:58,_ZN3ept10textsearch4Path14indexTimestampEv
+DA:45,111
+DA:46,111
+DA:47,1
+DA:48,1
+DA:50,111
+DA:53,0
+DA:55,0
+DA:58,20
+DA:60,20
+DA:61,40
+DA:62,20
+DA:63,18
+DA:65,2
+DA:68,6
+DA:70,6
+DA:71,12
+DA:72,6
+DA:73,0
+DA:74,6
+DA:75,0
+DA:76,6
+DA:77,0
+DA:78,6
+DA:80,22
+DA:82,22
+DA:83,22
+DA:85,37
+DA:86,25
+DA:91,6
+BA:46,2
+BA:46,2
+BA:62,2
+BA:62,2
+BA:72,1
+BA:72,2
+BA:74,1
+BA:74,2
+BA:76,1
+BA:76,2
+BA:91,2
+BA:91,1
+BA:91,2
+BA:91,1
+LF:29
+LH:24
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/textsearch/maint/path.h
+FN:38,_ZN3ept10textsearch4PathC1Ev
+DA:38,1
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:406,_ZNK6wibble9exception6System4codeEv
+FN:428,_ZNK6wibble9exception4File4typeEv
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:430,_ZNK6wibble9exception4File4descEv
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:395,_ZN6wibble9exception6SystemD2Ev
+FN:424,_ZN6wibble9exception4FileC1ERKSsS3_
+FN:426,_ZN6wibble9exception4FileD0Ev
+FN:426,_ZN6wibble9exception4FileD1Ev
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+DA:137,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:395,0
+DA:406,0
+DA:424,0
+DA:425,0
+DA:426,0
+DA:428,0
+DA:430,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:395,0
+BA:395,0
+BA:426,0
+BA:426,0
+BA:426,0
+BA:426,0
+LF:27
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/string.h
+FN:236,_ZN6wibble3str8joinpathERKSsS2_
+DA:236,0
+DA:238,0
+DA:239,0
+DA:240,0
+DA:241,0
+DA:243,0
+DA:244,0
+DA:245,0
+DA:247,0
+DA:249,0
+DA:250,0
+DA:252,0
+BA:238,0
+BA:238,0
+BA:240,0
+BA:240,0
+BA:243,0
+BA:243,0
+BA:244,0
+BA:244,0
+BA:249,0
+BA:249,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/backward/auto_ptr.h
+FN:263,_ZNSt8auto_ptrI4statEC1ESt12auto_ptr_refIS0_E
+FN:214,_ZNKSt8auto_ptrI4statE3getEv
+FN:197,_ZNKSt8auto_ptrI4statEptEv
+FN:228,_ZNSt8auto_ptrI4statE7releaseEv
+FN:56,_ZNSt12auto_ptr_refI4statEC1EPS0_
+FN:278,_ZNSt8auto_ptrI4statEcvSt12auto_ptr_refIT_EIS0_EEv
+FN:173,_ZNSt8auto_ptrI4statED1Ev
+DA:56,0
+DA:173,0
+DA:197,0
+DA:200,0
+DA:214,0
+DA:228,0
+DA:230,0
+DA:231,0
+DA:232,0
+DA:263,0
+DA:264,0
+DA:278,0
+DA:279,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC1ERKS_
+FN:100,_ZNSaIcEC2ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:276,0
+BA:276,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:701,_ZNKSsixEj
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:1551,_ZNKSs13get_allocatorEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2136,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:501,_ZNSsaSERKSs
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:928,_ZNSs6assignEPKc
+FN:509,_ZNSsaSEPKc
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:509,0
+DA:510,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:701,0
+DA:704,0
+DA:835,0
+DA:838,0
+DA:928,0
+DA:931,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1923,0
+DA:1925,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2136,0
+DA:2140,0
+DA:2141,0
+DA:2142,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:308,0
+BA:308,0
+BA:341,0
+BA:341,0
+LF:83
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+BA:340,0
+BA:340,0
+LF:19
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+DA:683,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+DA:79,0
+DA:97,0
+DA:98,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:386,0
+DA:387,0
+DA:404,0
+DA:405,0
+DA:526,0
+DA:527,0
+BA:149,0
+BA:149,0
+LF:19
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+DA:69,0
+DA:71,0
+DA:76,0
+DA:97,0
+DA:98,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,2
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+DA:95,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/progresscallback.cpp
+FN:5,_ZN3ept16ProgressCallback5PulseEP10pkgAcquire
+DA:5,0
+DA:7,0
+DA:8,0
+DA:9,0
+LF:4
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/progresscallback.h
+FN:20,_ZN3ept16ProgressCallback11MediaChangeESsSs
+FN:23,_ZN3ept16ProgressCallback11UpdatePulseEddm
+FN:19,_ZN3ept16ProgressCallbackD0Ev
+FN:19,_ZN3ept16ProgressCallbackD1Ev
+DA:19,0
+DA:20,0
+DA:23,0
+BA:19,0
+BA:19,0
+BA:19,0
+BA:19,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/apt-pkg/acquire.h
+FN:730,_ZN16pkgAcquireStatus6IMSHitERN10pkgAcquire8ItemDescE
+FN:733,_ZN16pkgAcquireStatus5FetchERN10pkgAcquire8ItemDescE
+FN:736,_ZN16pkgAcquireStatus4DoneERN10pkgAcquire8ItemDescE
+FN:741,_ZN16pkgAcquireStatus4FailERN10pkgAcquire8ItemDescE
+FN:763,_ZN16pkgAcquireStatusD2Ev
+DA:730,0
+DA:733,0
+DA:736,0
+DA:741,0
+DA:763,0
+BA:763,0
+BA:763,0
+LF:5
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/popcon/popcon.cc
+FN:37,_ZNK3ept6popcon6Popcon11GeneralInfo11submissionsEv
+FN:69,_ZNK3ept6popcon6Popcon11scoreByNameERKSs
+FN:43,_ZN3ept6popcon6PopconC1Ev
+FN:43,_ZN3ept6popcon6PopconC2Ev
+DA:37,3
+DA:39,3
+DA:40,2
+DA:43,7
+DA:45,7
+DA:47,7
+DA:49,1
+DA:50,1
+DA:55,6
+DA:57,6
+DA:58,6
+DA:60,6
+DA:67,0
+DA:69,1792
+DA:75,1792
+DA:76,32470
+DA:78,28886
+DA:79,28886
+DA:80,14367
+DA:82,14519
+DA:85,1792
+DA:87,31
+DA:89,1761
+BA:39,2
+BA:39,2
+BA:47,2
+BA:47,2
+BA:47,0
+BA:47,0
+BA:60,2
+BA:60,2
+BA:60,2
+BA:60,2
+BA:60,0
+BA:60,0
+BA:60,0
+BA:60,0
+BA:76,2
+BA:76,2
+BA:79,2
+BA:79,2
+BA:85,2
+BA:85,2
+BA:85,2
+BA:85,2
+BA:85,2
+BA:85,2
+BA:85,0
+BA:85,0
+BA:85,2
+BA:85,2
+LF:23
+LH:22
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/popcon/popcon.h
+FN:105,_ZNK3ept6popcon6Popcon4sizeEv
+FN:85,_ZNK3ept6popcon6Popcon13structByIndexEj
+FN:126,_ZNK3ept6popcon6Popcon12scoreByIndexEj
+FN:137,_ZNK3ept6popcon6Popcon5scoreEj
+FN:118,_ZNK3ept6popcon6Popcon4nameEj
+FN:75,_ZN3ept6popcon6Popcon11GeneralInfoC1Ev
+DA:75,7
+DA:85,0
+DA:87,0
+DA:88,0
+DA:89,0
+DA:105,0
+DA:107,0
+DA:108,0
+DA:110,0
+DA:118,0
+DA:120,0
+DA:121,0
+DA:122,0
+DA:126,0
+DA:128,0
+DA:129,0
+DA:130,0
+DA:137,0
+BA:87,0
+BA:87,0
+BA:107,0
+BA:107,0
+BA:121,0
+BA:121,0
+BA:129,0
+BA:129,0
+LF:18
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:277,_ZNKSs7_M_dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:1544,_ZNKSs4dataEv
+FN:392,_ZNSs10_S_compareEjj
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:1941,_ZNKSs7compareERKSs
+FN:2275,_ZStgtIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:2201,_ZStneIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+DA:178,0
+DA:183,0
+DA:184,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:606,0
+DA:607,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2162,0
+DA:2165,0
+DA:2201,0
+DA:2202,0
+DA:2275,0
+DA:2276,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:1948,0
+BA:1948,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:46
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:257,0
+DA:258,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:188,_ZSt3minIjERKT_S2_S2_
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+BA:193,0
+BA:193,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+DA:69,0
+DA:71,0
+DA:76,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/popcon/local.cc
+FN:166,_Z41__static_initialization_and_destruction_0ii
+FN:166,_GLOBAL__I_local.cc
+FN:66,_ZNK3ept6popcon10secondsortclERKSt4pairISsfES5_
+FN:146,_ZNK3ept6popcon5Local5tfidfERKNS0_6PopconE
+FN:136,_ZNK3ept6popcon5Local6scoresEv
+FN:112,_ZNK3ept6popcon5Local5scoreERKSs
+FN:125,_ZNK3ept6popcon5Local5tfidfERKNS0_6PopconERKSs
+FN:42,_ZN3ept6popconL5splitERKSsc
+FN:75,_ZN3ept6popcon5LocalC1ERKSs
+FN:75,_ZN3ept6popcon5LocalC2ERKSs
+DA:42,1903
+DA:44,1903
+DA:45,1903
+DA:46,10435
+DA:48,8531
+DA:49,8531
+DA:51,1902
+DA:52,1902
+DA:56,6629
+DA:57,6629
+DA:60,0
+DA:66,0
+DA:68,0
+DA:69,0
+DA:71,0
+DA:75,1
+DA:77,1
+DA:78,1
+DA:79,0
+DA:81,1
+DA:82,1
+DA:83,1
+DA:84,0
+DA:86,1907
+DA:88,1905
+DA:89,1905
+DA:90,1905
+DA:91,3
+DA:92,1904
+DA:94,1903
+DA:95,1903
+DA:97,1902
+DA:99,979
+DA:100,923
+DA:102,0
+DA:103,923
+DA:105,745
+DA:106,178
+DA:108,178
+DA:109,1
+DA:110,0
+DA:112,2
+DA:114,2
+DA:115,2
+DA:116,0
+DA:118,2
+DA:125,1
+DA:127,1
+DA:129,1
+DA:130,0
+DA:132,1
+DA:136,0
+DA:138,0
+DA:140,0
+DA:142,0
+DA:143,0
+DA:146,0
+DA:148,0
+DA:150,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:158,0
+DA:161,0
+DA:162,0
+DA:166,6
+BA:46,2
+BA:46,2
+BA:49,2
+BA:49,2
+BA:68,0
+BA:68,0
+BA:78,2
+BA:78,1
+BA:78,0
+BA:78,0
+BA:83,1
+BA:83,2
+BA:83,0
+BA:83,0
+BA:86,2
+BA:86,2
+BA:86,2
+BA:86,2
+BA:86,2
+BA:86,2
+BA:86,0
+BA:86,0
+BA:86,0
+BA:86,0
+BA:86,0
+BA:86,0
+BA:90,2
+BA:90,2
+BA:90,0
+BA:90,0
+BA:92,2
+BA:92,2
+BA:92,0
+BA:92,0
+BA:95,2
+BA:95,2
+BA:95,0
+BA:95,0
+BA:97,2
+BA:97,2
+BA:97,0
+BA:97,0
+BA:100,1
+BA:100,2
+BA:100,0
+BA:100,0
+BA:103,2
+BA:103,2
+BA:103,0
+BA:103,0
+BA:106,2
+BA:106,1
+BA:106,0
+BA:106,0
+BA:115,1
+BA:115,2
+BA:129,1
+BA:129,2
+BA:150,0
+BA:150,0
+BA:154,0
+BA:154,0
+BA:166,2
+BA:166,1
+BA:166,2
+BA:166,1
+LF:66
+LH:41
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/popcon/popcon.h
+FN:143,_ZNK3ept6popcon6Popcon5scoreERKSs
+FN:102,_ZNK3ept6popcon6Popcon11submissionsEv
+DA:102,0
+DA:143,0
+LF:2
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:406,_ZNK6wibble9exception6System4codeEv
+FN:428,_ZNK6wibble9exception4File4typeEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:430,_ZNK6wibble9exception4File4descEv
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:395,_ZN6wibble9exception6SystemD2Ev
+FN:424,_ZN6wibble9exception4FileC1ERKSsS3_
+FN:426,_ZN6wibble9exception4FileD0Ev
+FN:426,_ZN6wibble9exception4FileD1Ev
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+DA:137,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:395,0
+DA:406,0
+DA:424,0
+DA:425,0
+DA:426,0
+DA:428,0
+DA:430,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:395,0
+BA:395,0
+BA:426,0
+BA:426,0
+BA:426,0
+BA:426,0
+LF:27
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsfEEED2Ev
+FN:100,_ZNSaIcEC1ERKS_
+FN:100,_ZNSaIcEC2ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:106,_ZNSaISt4pairISsfEED2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsfEEEC2Ev
+FN:106,_ZNSaISt4pairIKSsfEED1Ev
+FN:98,_ZNSaISt4pairISsfEEC2Ev
+FN:104,_ZNSaISt4pairIKSsfEEC1ISt13_Rb_tree_nodeIS1_EEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,1
+DA:100,0
+DA:101,0
+DA:104,0
+DA:106,0
+DA:118,0
+DA:119,0
+LF:7
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:174,_ZNKSt9basic_iosIcSt11char_traitsIcEE4goodEv
+FN:184,_ZNKSt9basic_iosIcSt11char_traitsIcEE3eofEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+FN:51,_ZSt13__check_facetISt5ctypeIcEERKT_PS3_
+FN:443,_ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc
+DA:51,0
+DA:53,0
+DA:54,0
+DA:55,0
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:174,0
+DA:175,0
+DA:184,0
+DA:185,0
+DA:276,0
+DA:443,0
+DA:444,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:53,0
+BA:53,0
+BA:276,0
+BA:276,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:277,_ZNKSs7_M_dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:1534,_ZNKSs5c_strEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:392,_ZNSs10_S_compareEjj
+FN:1551,_ZNKSs13get_allocatorEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:501,_ZNSsaSERKSs
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:1941,_ZNKSs7compareERKSs
+FN:2275,_ZStgtIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:2238,_ZStltIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:2461,_ZSt7getlineIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RSbIS4_S5_T1_E
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1923,0
+DA:1925,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2188,0
+DA:2189,0
+DA:2238,0
+DA:2239,0
+DA:2275,0
+DA:2276,0
+DA:2421,0
+DA:2425,0
+DA:2461,0
+DA:2462,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:308,0
+BA:308,0
+BA:341,0
+BA:341,0
+BA:1948,0
+BA:1948,0
+LF:92
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:159,_ZStanSt12_Ios_IostateS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:159,0
+DA:160,0
+DA:163,0
+DA:164,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/locale_facets.h
+FN:1165,_ZNKSt5ctypeIcE13_M_widen_initEv
+FN:871,_ZNKSt5ctypeIcE5widenEc
+DA:871,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:1165,0
+DA:1168,0
+DA:1169,0
+DA:1170,0
+DA:1172,0
+DA:1174,0
+DA:1175,0
+DA:1176,0
+BA:873,0
+BA:873,0
+BA:1168,0
+BA:1168,0
+BA:1174,0
+BA:1174,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algo.h
+FN:1970,_ZSt4__lgi
+FN:1568,_ZSt13__heap_selectIN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS3_SaIS3_EEEEN3ept6popcon10secondsortEEvT_SC_SC_T0_
+FN:4661,_ZSt12partial_sortIN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS3_SaIS3_EEEEN3ept6popcon10secondsortEEvT_SC_SC_T0_
+FN:123,_ZSt8__medianISt4pairISsfEN3ept6popcon10secondsortEERKT_S7_S7_S7_T0_
+FN:1877,_ZSt21__unguarded_partitionIN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS3_SaIS3_EEEES3_N3ept6popcon10secondsortEET_SC_SC_T0_T1_
+FN:1930,_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS3_SaIS3_EEEEiN3ept6popcon10secondsortEEvT_SC_T0_T1_
+FN:1731,_ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS3_SaIS3_EEEES3_N3ept6popcon10secondsortEEvT_T0_T1_
+FN:1806,_ZSt26__unguarded_insertion_sortIN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS3_SaIS3_EEEEN3ept6popcon10secondsortEEvT_SC_T0_
+FN:1771,_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS3_SaIS3_EEEEN3ept6popcon10secondsortEEvT_SC_T0_
+FN:1840,_ZSt22__final_insertion_sortIN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS3_SaIS3_EEEEN3ept6popcon10secondsortEEvT_SC_T0_
+FN:4806,_ZSt4sortIN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS3_SaIS3_EEEEN3ept6popcon10secondsortEEvT_SC_T0_
+DA:123,0
+DA:128,0
+DA:129,0
+DA:130,0
+DA:131,0
+DA:132,0
+DA:134,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:138,0
+DA:140,0
+DA:1568,0
+DA:1570,0
+DA:1571,0
+DA:1572,0
+DA:1573,0
+DA:1574,0
+DA:1731,0
+DA:1733,0
+DA:1734,0
+DA:1735,0
+DA:1737,0
+DA:1738,0
+DA:1739,0
+DA:1741,0
+DA:1742,0
+DA:1771,0
+DA:1773,0
+DA:1775,0
+DA:1778,0
+DA:1779,0
+DA:1781,0
+DA:1782,0
+DA:1785,0
+DA:1806,0
+DA:1811,0
+DA:1812,0
+DA:1813,0
+DA:1840,0
+DA:1842,0
+DA:1844,0
+DA:1845,0
+DA:1849,0
+DA:1850,0
+DA:1877,0
+DA:1879,0
+DA:1881,0
+DA:1882,0
+DA:1883,0
+DA:1884,0
+DA:1885,0
+DA:1886,0
+DA:1887,0
+DA:1888,0
+DA:1889,0
+DA:1930,0
+DA:1935,0
+DA:1937,0
+DA:1939,0
+DA:1940,0
+DA:1942,0
+DA:1952,0
+DA:1953,0
+DA:1954,0
+DA:1970,0
+DA:1971,0
+DA:4661,0
+DA:4674,0
+DA:4675,0
+DA:4676,0
+DA:4806,0
+DA:4818,0
+DA:4820,0
+DA:4822,0
+DA:4824,0
+BA:128,0
+BA:128,0
+BA:129,0
+BA:129,0
+BA:131,0
+BA:131,0
+BA:135,0
+BA:135,0
+BA:137,0
+BA:137,0
+BA:1571,0
+BA:1571,0
+BA:1572,0
+BA:1572,0
+BA:1735,0
+BA:1735,0
+BA:1773,0
+BA:1773,0
+BA:1775,0
+BA:1775,0
+BA:1779,0
+BA:1779,0
+BA:1811,0
+BA:1811,0
+BA:1842,0
+BA:1842,0
+BA:1881,0
+BA:1881,0
+BA:1884,0
+BA:1884,0
+BA:1886,0
+BA:1886,0
+BA:1935,0
+BA:1935,0
+BA:1937,0
+BA:1937,0
+BA:4818,0
+BA:4818,0
+LF:76
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:286,_ZNSt12__miter_baseISt23_Rb_tree_const_iteratorISt4pairIKSsfEELb0EE3__bES4_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:188,_ZSt3minIjERKT_S2_S2_
+FN:268,_ZNSt12__niter_baseISt23_Rb_tree_const_iteratorISt4pairIKSsfEELb0EE3__bES4_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISt4pairISsfESaIS3_EEELb0EE3__bES6_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:286,_ZNSt12__miter_baseIPSt4pairISsfELb0EE3__bES2_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS3_SaIS3_EEEELb0EE3__bES8_
+FN:268,_ZNSt12__niter_baseIPSt4pairISsfELb0EE3__bES2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS3_SaIS3_EEEELb1EE3__bES8_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSt4pairISsfES5_EET0_T_S7_S6_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSt4pairISsfES2_ET1_T0_S4_S3_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSt4pairISsfES2_ET1_T0_S4_S3_
+FN:624,_ZSt13copy_backwardIPSt4pairISsfES2_ET0_T_S4_S3_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS3_SaIS3_EEEES8_ET1_T0_SA_S9_
+FN:624,_ZSt13copy_backwardIN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS3_SaIS3_EEEES8_ET0_T_SA_S9_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:104,_ZNSt11__iter_swapILb1EE9iter_swapIN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS5_SaIS5_EEEESA_EEvT_T0_
+FN:121,_ZSt9iter_swapIN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS3_SaIS3_EEEES8_EvT_T0_
+FN:309,_ZNSt11__copy_moveILb0ELb0ESt26bidirectional_iterator_tagE8__copy_mISt23_Rb_tree_const_iteratorISt4pairIKSsfEESt20back_insert_iteratorISt6vectorIS4_ISsfESaISA_EEEEET0_T_SF_SE_
+FN:385,_ZSt13__copy_move_aILb0ESt23_Rb_tree_const_iteratorISt4pairIKSsfEESt20back_insert_iteratorISt6vectorIS1_ISsfESaIS7_EEEET1_T0_SC_SB_
+FN:430,_ZSt14__copy_move_a2ILb0ESt23_Rb_tree_const_iteratorISt4pairIKSsfEESt20back_insert_iteratorISt6vectorIS1_ISsfESaIS7_EEEET1_T0_SC_SB_
+FN:456,_ZSt4copyISt23_Rb_tree_const_iteratorISt4pairIKSsfEESt20back_insert_iteratorISt6vectorIS1_ISsfESaIS7_EEEET0_T_SC_SB_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+DA:104,0
+DA:106,0
+DA:107,0
+DA:121,0
+DA:142,0
+DA:146,0
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:309,0
+DA:311,0
+DA:312,0
+DA:313,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:193,0
+BA:193,0
+BA:215,0
+BA:215,0
+BA:311,0
+BA:311,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+BA:542,0
+BA:542,0
+LF:48
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISt4pairISsfEEvPT_
+FN:97,_ZSt8_DestroyIPSt4pairISsfEEvT_S3_
+FN:126,_ZSt8_DestroyIPSt4pairISsfES1_EvT_S3_RSaIT0_E
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:482,_ZNKSt10_Select1stISt4pairIKSsfEEclERKS2_
+FN:229,_ZNKSt4lessISsEclERKSsS2_
+DA:229,0
+DA:230,0
+DA:482,45416
+DA:483,45416
+LF:4
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_heap.h
+FN:177,_ZSt11__push_heapIN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS3_SaIS3_EEEEiS3_N3ept6popcon10secondsortEEvT_T0_SD_T1_T2_
+FN:295,_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS3_SaIS3_EEEEiS3_N3ept6popcon10secondsortEEvT_T0_SD_T1_T2_
+FN:412,_ZSt9make_heapIN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS3_SaIS3_EEEEN3ept6popcon10secondsortEEvT_SC_T0_
+FN:322,_ZSt10__pop_heapIN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS3_SaIS3_EEEEN3ept6popcon10secondsortEEvT_SC_SC_T0_
+FN:350,_ZSt8pop_heapIN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS3_SaIS3_EEEEN3ept6popcon10secondsortEEvT_SC_T0_
+FN:477,_ZSt9sort_heapIN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS3_SaIS3_EEEEN3ept6popcon10secondsortEEvT_SC_T0_
+DA:177,0
+DA:179,0
+DA:180,0
+DA:183,0
+DA:184,0
+DA:185,0
+DA:187,0
+DA:188,0
+DA:295,0
+DA:297,0
+DA:298,0
+DA:299,0
+DA:301,0
+DA:302,0
+DA:304,0
+DA:305,0
+DA:306,0
+DA:308,0
+DA:310,0
+DA:311,0
+DA:313,0
+DA:315,0
+DA:317,0
+DA:322,0
+DA:329,0
+DA:330,0
+DA:331,0
+DA:334,0
+DA:350,0
+DA:358,0
+DA:359,0
+DA:412,0
+DA:424,0
+DA:425,0
+DA:427,0
+DA:428,0
+DA:429,0
+DA:431,0
+DA:432,0
+DA:434,0
+DA:435,0
+DA:436,0
+DA:477,0
+DA:485,0
+DA:486,0
+DA:487,0
+BA:180,0
+BA:180,0
+BA:180,0
+BA:180,0
+BA:180,0
+BA:180,0
+BA:299,0
+BA:299,0
+BA:302,0
+BA:302,0
+BA:308,0
+BA:308,0
+BA:308,0
+BA:308,0
+BA:424,0
+BA:424,0
+BA:429,0
+BA:429,0
+BA:434,0
+BA:434,0
+BA:485,0
+BA:485,0
+LF:46
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISt4pairISsfESaIS2_EEEC1ERS4_
+FN:456,_ZSt13back_inserterISt6vectorISt4pairISsfESaIS2_EEESt20back_insert_iteratorIT_ERS6_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS2_SaIS2_EEEC1ERKS3_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS2_SaIS2_EEE4baseEv
+FN:781,_ZN9__gnu_cxxneIPSt4pairISsfESt6vectorIS2_SaIS2_EEEEbRKNS_17__normal_iteratorIT_T0_EESC_
+FN:846,_ZN9__gnu_cxxmiIPSt4pairISsfESt6vectorIS2_SaIS2_EEEENS_17__normal_iteratorIT_T0_E15difference_typeERKSA_SD_
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS2_SaIS2_EEEdeEv
+FN:735,_ZNK9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS2_SaIS2_EEEplERKi
+FN:743,_ZNK9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS2_SaIS2_EEEmiERKi
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS2_SaIS2_EEEppEv
+FN:715,_ZN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS2_SaIS2_EEEmmEv
+FN:794,_ZN9__gnu_cxxltIPSt4pairISsfESt6vectorIS2_SaIS2_EEEEbRKNS_17__normal_iteratorIT_T0_EESC_
+FN:769,_ZN9__gnu_cxxeqIPSt4pairISsfESt6vectorIS2_SaIS2_EEEEbRKNS_17__normal_iteratorIT_T0_EESC_
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISt4pairISsfESaIS2_EEEppEv
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISt4pairISsfESaIS2_EEEdeEv
+FN:722,_ZN9__gnu_cxx17__normal_iteratorIPSt4pairISsfESt6vectorIS2_SaIS2_EEEmmEi
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISt4pairISsfESaIS2_EEEaSERKS2_
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:683,0
+DA:695,0
+DA:696,0
+DA:703,0
+DA:705,0
+DA:706,0
+DA:715,0
+DA:717,0
+DA:718,0
+DA:722,0
+DA:723,0
+DA:735,0
+DA:736,0
+DA:743,0
+DA:744,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+DA:781,0
+DA:782,0
+DA:794,0
+DA:795,0
+DA:846,0
+DA:847,0
+LF:35
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_map.h
+FN:284,_ZNKSt3mapISsfSt4lessISsESaISt4pairIKSsfEEE5beginEv
+FN:302,_ZNKSt3mapISsfSt4lessISsESaISt4pairIKSsfEEE3endEv
+FN:155,_ZNSt3mapISsfSt4lessISsESaISt4pairIKSsfEEEC1Ev
+FN:92,_ZNSt3mapISsfSt4lessISsESaISt4pairIKSsfEEED1Ev
+FN:629,_ZNKSt3mapISsfSt4lessISsESaISt4pairIKSsfEEE4findERS3_
+FN:468,_ZNSt3mapISsfSt4lessISsESaISt4pairIKSsfEEE6insertERKS4_
+DA:92,0
+DA:155,1
+DA:156,1
+DA:284,0
+DA:285,0
+DA:302,2
+DA:303,2
+DA:468,1902
+DA:469,1902
+DA:629,2
+DA:630,2
+LF:11
+LH:8
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_move.h
+FN:80,_ZSt4swapISt4pairISsfEEvRT_S3_
+DA:80,0
+DA:85,0
+DA:86,0
+DA:87,0
+DA:88,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKSsfEEbEC1ERKS3_RKb
+FN:88,_ZNSt4pairISsfEC1ERKSsRKf
+FN:218,_ZSt9make_pairISsfESt4pairIT_T0_ES1_S2_
+FN:73,_ZNSt4pairISsfEC1ERKS0_
+FN:104,_ZNSt4pairISsfEC1IKSsfEERKS_IT_T0_E
+FN:88,_ZNSt4pairISsdEC1ERKSsRKd
+FN:218,_ZSt9make_pairISsdESt4pairIT_T0_ES1_S2_
+FN:104,_ZNSt4pairIKSsfEC1ISsdEERKS_IT_T0_E
+FN:73,_ZNSt4pairIKSsfEC1ERKS1_
+FN:73,_ZNSt4pairISsfEaSERKS0_
+FN:73,_ZNSt4pairISsfED1Ev
+FN:73,_ZNSt4pairIKSsfED1Ev
+FN:73,_ZNSt4pairISsdED1Ev
+DA:73,3804
+DA:88,3804
+DA:89,3804
+DA:104,1902
+DA:106,1902
+DA:218,1902
+DA:219,1902
+LF:7
+LH:7
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:285,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsfEEeqERKS3_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsfEEptEv
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsfEEneERKS3_
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_beginEv
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE13_Rb_tree_implIS6_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:463,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE6_M_endEv
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKSsfEEC1EPSt13_Rb_tree_nodeIS2_E
+FN:596,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsfEEeqERKS3_
+FN:456,_ZNKSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_beginEv
+FN:467,_ZNKSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE6_M_endEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsfEEC1EPKSt13_Rb_tree_nodeIS2_E
+FN:603,_ZNKSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE5beginEv
+FN:614,_ZNKSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE3endEv
+FN:415,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE13_Rb_tree_implIS6_Lb0EE13_M_initializeEv
+FN:471,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_S_valueEPKSt13_Rb_tree_nodeIS2_E
+FN:475,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE6_S_keyEPKSt13_Rb_tree_nodeIS2_E
+FN:495,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE7_S_leftEPKSt18_Rb_tree_node_base
+FN:491,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_S_rightEPKSt18_Rb_tree_node_base
+FN:403,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE13_Rb_tree_implIS6_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EEC1Ev
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE21_M_get_Node_allocatorEv
+FN:247,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsfEEdeEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE13get_allocatorEv
+FN:356,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE11_M_get_nodeEv
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:364,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE14_M_create_nodeERKS2_
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS2_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE8_M_eraseEPSt13_Rb_tree_nodeIS2_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EED1Ev
+FN:255,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsfEEppEv
+FN:970,_ZNKSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE14_M_lower_boundEPKSt13_Rb_tree_nodeIS2_ESC_RS1_
+FN:1403,_ZNKSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE4findERS1_
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKSsfEEmmEv
+FN:846,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE10_M_insert_EPKSt18_Rb_tree_node_baseSB_RKS2_
+FN:1133,_ZNSt8_Rb_treeISsSt4pairIKSsfESt10_Select1stIS2_ESt4lessISsESaIS2_EE16_M_insert_uniqueERKS2_
+DA:168,4757
+DA:169,4757
+DA:195,948
+DA:197,948
+DA:198,948
+DA:210,953
+DA:211,953
+DA:240,6
+DA:241,6
+DA:247,0
+DA:248,0
+DA:251,2
+DA:252,2
+DA:255,0
+DA:257,0
+DA:258,0
+DA:285,4
+DA:286,4
+DA:289,0
+DA:290,0
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:356,1902
+DA:357,1902
+DA:360,0
+DA:361,0
+DA:364,1902
+DA:366,1902
+DA:368,1902
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,1902
+DA:388,0
+DA:390,0
+DA:391,0
+DA:392,0
+DA:398,0
+DA:403,1
+DA:405,1
+DA:406,1
+DA:415,1
+DA:417,1
+DA:418,1
+DA:419,1
+DA:420,1
+DA:421,1
+DA:452,0
+DA:453,0
+DA:456,2
+DA:459,2
+DA:463,3804
+DA:464,3804
+DA:467,2
+DA:468,2
+DA:471,18920
+DA:472,18920
+DA:475,18920
+DA:476,18920
+DA:479,0
+DA:480,0
+DA:483,14
+DA:484,14
+DA:487,0
+DA:488,0
+DA:491,8
+DA:492,8
+DA:495,3800
+DA:496,3800
+DA:499,3800
+DA:500,3800
+DA:562,1
+DA:584,0
+DA:585,0
+DA:596,953
+DA:599,953
+DA:603,0
+DA:606,0
+DA:614,4
+DA:617,4
+DA:846,1902
+DA:850,1902
+DA:852,1902
+DA:854,1902
+DA:857,1902
+DA:858,1902
+DA:936,0
+DA:939,0
+DA:941,0
+DA:942,0
+DA:943,0
+DA:944,0
+DA:946,0
+DA:970,2
+DA:972,26
+DA:973,22
+DA:974,14
+DA:976,8
+DA:977,2
+DA:1133,1902
+DA:1135,1902
+DA:1136,1902
+DA:1137,1902
+DA:1138,22702
+DA:1140,18898
+DA:1141,18898
+DA:1142,18898
+DA:1144,1902
+DA:1145,1902
+DA:1147,953
+DA:1148,5
+DA:1150,948
+DA:1152,1897
+DA:1153,1897
+DA:1154,0
+DA:1403,2
+DA:1405,2
+DA:1408,2
+BA:850,2
+BA:850,1
+BA:850,2
+BA:850,2
+BA:850,2
+BA:850,2
+BA:939,0
+BA:939,0
+BA:972,2
+BA:972,2
+BA:973,2
+BA:973,2
+BA:1138,2
+BA:1138,2
+BA:1142,2
+BA:1142,2
+BA:1145,2
+BA:1145,2
+BA:1147,2
+BA:1147,2
+BA:1152,2
+BA:1152,1
+BA:1408,2
+BA:1408,1
+BA:1408,1
+BA:1408,2
+LF:120
+LH:81
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSt4pairISsfES4_EET0_T_S6_S5_
+FN:113,_ZSt18uninitialized_copyIPSt4pairISsfES2_ET0_T_S4_S3_
+FN:261,_ZSt22__uninitialized_copy_aIPSt4pairISsfES2_S1_ET0_T_S4_S3_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSt4pairISsfES2_SaIS1_EET0_T_S5_S4_RT1_
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+BA:78,0
+BA:78,0
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+BA:79,0
+BA:79,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:562,_ZNSt6vectorISsSaISsEEixEj
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:97,_ZNSt12_Vector_baseISt4pairISsfESaIS1_EE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISt4pairISsfESaIS1_EE3endEv
+FN:377,_ZNSt6vectorISt4pairISsfESaIS1_EE5beginEv
+FN:484,_ZNKSt6vectorISt4pairISsfESaIS1_EE4sizeEv
+FN:101,_ZNKSt12_Vector_baseISt4pairISsfESaIS1_EE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:79,_ZNSt12_Vector_baseISt4pairISsfESaIS1_EE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:84,_ZNSt12_Vector_baseISt4pairISsfESaIS1_EE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISt4pairISsfESaIS1_EEC2Ev
+FN:213,_ZNSt6vectorISt4pairISsfESaIS1_EEC1Ev
+FN:489,_ZNKSt6vectorISt4pairISsfESaIS1_EE8max_sizeEv
+FN:1075,_ZNKSt6vectorISt4pairISsfESaIS1_EE12_M_check_lenEjPKc
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseISt4pairISsfESaIS1_EE11_M_allocateEj
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:147,_ZNSt12_Vector_baseISt4pairISsfESaIS1_EE13_M_deallocateEPS1_j
+FN:135,_ZNSt12_Vector_baseISt4pairISsfESaIS1_EED2Ev
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISt4pairISsfESaIS1_EED1Ev
+FN:686,_ZNSt6vectorISt4pairISsfESaIS1_EE9push_backERKS1_
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:377,0
+DA:378,0
+DA:386,0
+DA:387,0
+DA:395,0
+DA:396,0
+DA:404,0
+DA:405,0
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:526,0
+DA:527,0
+DA:562,0
+DA:563,0
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:51
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISt4pairISsfESaIS1_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS1_S3_EERKS1_
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:286,0
+BA:286,0
+BA:286,0
+BA:286,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/cmath
+FN:321,_ZSt3logf
+DA:321,1
+DA:322,1
+LF:2
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsfEEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairISsfEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsfEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsfEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairISsfEEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt4pairISsfEE8max_sizeEv
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsfEEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsfEEE8max_sizeEv
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairISsfEE9constructEPS2_RKS2_
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsfEE9constructEPS3_RKS3_
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorISt4pairISsfEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsfEEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+FN:97,_ZN9__gnu_cxx13new_allocatorISt4pairISsfEE10deallocateEPS2_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsfEEE10deallocateEPS5_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsfEE7destroyEPS3_
+DA:69,1
+DA:71,0
+DA:76,0
+DA:87,1902
+DA:89,1902
+DA:90,0
+DA:92,1902
+DA:97,0
+DA:98,0
+DA:101,1902
+DA:102,1902
+DA:107,1902
+DA:108,1902
+DA:118,0
+BA:89,0
+BA:89,0
+BA:89,1
+BA:89,2
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+BA:108,2
+BA:108,1
+BA:108,0
+BA:108,0
+LF:14
+LH:8
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/fstream
+FN:215,_ZNSt13basic_filebufIcSt11char_traitsIcEED1Ev
+FN:428,_ZNSt14basic_ifstreamIcSt11char_traitsIcEEC1Ev
+FN:455,_ZNSt14basic_ifstreamIcSt11char_traitsIcEED1Ev
+FN:495,_ZNSt14basic_ifstreamIcSt11char_traitsIcEE4openEPKcSt13_Ios_Openmode
+DA:215,0
+DA:216,0
+DA:428,0
+DA:429,0
+DA:455,0
+DA:456,0
+DA:495,0
+DA:497,0
+DA:498,0
+DA:502,0
+DA:503,0
+BA:216,0
+BA:216,0
+BA:456,0
+BA:456,0
+BA:456,0
+BA:456,0
+BA:456,0
+BA:456,0
+BA:497,0
+BA:497,0
+LF:11
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,2
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+DA:95,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/popcon/maint/sourcedir.cc
+FN:141,_Z41__static_initialization_and_destruction_0ii
+FN:141,_GLOBAL__I_sourcedir.cc
+FN:17,_ZN3ept6popcon9SourceDir8fileTypeERKSs
+FN:44,_ZN3ept6popcon8readLineERN7tagcoll5input5InputERSs
+FN:53,_ZN3ept6popconL11parseScoresERN7tagcoll5input5InputERSt3mapISsNS0_5ScoreESt4lessISsESaISt4pairIKSsS6_EEERj
+FN:110,_ZN3ept6popcon9SourceDir10readScoresERSt3mapISsNS0_5ScoreESt4lessISsESaISt4pairIKSsS3_EEERj
+FN:27,_ZN3ept6popcon9SourceDir9timestampEv
+DA:17,93
+DA:19,93
+DA:21,59
+DA:22,59
+DA:24,46
+DA:27,14
+DA:29,14
+DA:31,14
+DA:32,98
+DA:34,84
+DA:35,84
+DA:37,12
+DA:38,24
+DA:39,14
+DA:41,14
+DA:44,70200
+DA:46,70200
+DA:48,4594913
+DA:49,4454513
+DA:50,70200
+DA:53,1
+DA:55,1
+DA:56,140349
+DA:58,70199
+DA:59,0
+DA:60,70199
+DA:62,1
+DA:63,1
+DA:65,70198
+DA:66,50
+DA:67,70148
+DA:68,70148
+DA:69,70148
+DA:70,0
+DA:71,70148
+DA:76,70148
+DA:77,70148
+DA:78,70148
+DA:79,70148
+DA:80,70148
+DA:82,70148
+DA:83,70148
+DA:84,70148
+DA:85,70148
+DA:86,70148
+DA:88,70148
+DA:89,70148
+DA:90,70148
+DA:91,70148
+DA:92,70148
+DA:94,70148
+DA:95,70148
+DA:96,70148
+DA:97,70148
+DA:98,70148
+DA:103,70148
+DA:105,70148
+DA:106,69910
+DA:107,1
+DA:108,1
+DA:110,3
+DA:112,3
+DA:113,3
+DA:115,12
+DA:117,9
+DA:118,9
+DA:121,0
+DA:124,0
+DA:125,0
+DA:127,9
+DA:130,1
+DA:133,1
+DA:134,1
+DA:136,3
+DA:137,3
+DA:141,6
+BA:19,2
+BA:19,2
+BA:21,1
+BA:21,2
+BA:22,2
+BA:22,2
+BA:29,1
+BA:29,2
+BA:32,2
+BA:32,2
+BA:35,2
+BA:35,2
+BA:38,2
+BA:38,1
+BA:48,2
+BA:48,2
+BA:48,2
+BA:48,2
+BA:48,2
+BA:48,2
+BA:56,1
+BA:56,2
+BA:56,1
+BA:56,2
+BA:56,1
+BA:56,2
+BA:56,1
+BA:56,2
+BA:56,2
+BA:56,2
+BA:58,1
+BA:58,2
+BA:60,2
+BA:60,2
+BA:65,2
+BA:65,2
+BA:69,1
+BA:69,2
+BA:77,1
+BA:77,2
+BA:79,1
+BA:79,2
+BA:83,1
+BA:83,2
+BA:85,1
+BA:85,2
+BA:89,1
+BA:89,2
+BA:91,1
+BA:91,2
+BA:95,1
+BA:95,2
+BA:97,2
+BA:97,1
+BA:105,2
+BA:105,2
+BA:112,1
+BA:112,2
+BA:115,2
+BA:115,2
+BA:118,1
+BA:118,2
+BA:127,2
+BA:127,2
+BA:141,2
+BA:141,1
+BA:141,2
+BA:141,1
+LF:76
+LH:71
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/popcon/popcon.h
+FN:51,_ZN3ept6popcon5ScoreC1Ef
+DA:51,69910
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/string.h
+FN:236,_ZN6wibble3str8joinpathERKSsS2_
+DA:236,0
+DA:238,0
+DA:239,0
+DA:240,0
+DA:241,0
+DA:243,0
+DA:244,0
+DA:245,0
+DA:247,0
+DA:249,0
+DA:250,0
+DA:252,0
+BA:238,0
+BA:238,0
+BA:240,0
+BA:240,0
+BA:243,0
+BA:243,0
+BA:244,0
+BA:244,0
+BA:249,0
+BA:249,0
+LF:12
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/fs.h
+FN:99,_ZN6wibble3sys2fs9Directory14const_iteratorptEv
+FN:105,_ZNK6wibble3sys2fs9Directory14const_iteratorneERKS3_
+FN:114,_ZNK6wibble3sys2fs9Directory4pathEv
+FN:88,_ZN6wibble3sys2fs9Directory14const_iteratorppEv
+FN:65,_ZN6wibble3sys2fs9Directory14const_iteratorD1Ev
+DA:65,0
+DA:88,0
+DA:90,0
+DA:92,0
+DA:93,0
+DA:95,0
+DA:99,0
+DA:105,0
+DA:107,0
+DA:114,0
+BA:65,0
+BA:65,0
+BA:90,0
+BA:90,0
+BA:107,0
+BA:107,0
+BA:107,0
+BA:107,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC1ERKS_
+FN:100,_ZNSaIcEC2ERKS_
+FN:106,_ZNSaISt4pairIKSsN3ept6popcon5ScoreEEED1Ev
+FN:104,_ZNSaISt4pairIKSsN3ept6popcon5ScoreEEEC1ISt13_Rb_tree_nodeIS4_EEERKSaIT_E
+DA:98,0
+DA:100,0
+DA:101,0
+DA:104,139820
+DA:106,139820
+LF:5
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:277,_ZNKSs7_M_dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:701,_ZNKSsixEj
+FN:1534,_ZNKSs5c_strEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:192,_ZNKSs4_Rep12_M_is_sharedEv
+FN:652,_ZNKSs8capacityEv
+FN:1551,_ZNKSs13get_allocatorEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:392,_ZNSs10_S_compareEjj
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2136,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:2225,_ZStneIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+FN:1941,_ZNKSs7compareERKSs
+FN:2238,_ZStltIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:679,_ZNSs5clearEv
+FN:870,_ZNSs9push_backEc
+FN:791,_ZNSspLEc
+DA:178,0
+DA:183,0
+DA:184,0
+DA:192,0
+DA:193,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:606,0
+DA:607,0
+DA:652,0
+DA:653,0
+DA:679,0
+DA:680,0
+DA:686,0
+DA:687,0
+DA:701,0
+DA:704,0
+DA:791,0
+DA:793,0
+DA:794,0
+DA:870,0
+DA:872,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:877,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1923,0
+DA:1925,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2136,0
+DA:2140,0
+DA:2141,0
+DA:2142,0
+DA:2188,0
+DA:2189,0
+DA:2225,0
+DA:2226,0
+DA:2238,0
+DA:2239,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:308,0
+BA:308,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:1948,0
+BA:1948,0
+LF:89
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:188,_ZSt3minIjERKT_S2_S2_
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+BA:193,0
+BA:193,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:482,_ZNKSt10_Select1stISt4pairIKSsN3ept6popcon5ScoreEEEclERKS5_
+FN:229,_ZNKSt4lessISsEclERKSsS2_
+DA:229,0
+DA:230,0
+DA:482,2464924
+DA:483,2464924
+LF:4
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_map.h
+FN:468,_ZNSt3mapISsN3ept6popcon5ScoreESt4lessISsESaISt4pairIKSsS2_EEE6insertERKS7_
+DA:468,69910
+DA:469,69910
+LF:2
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorIS_IKSsN3ept6popcon5ScoreEEEbEC1ERKS6_RKb
+FN:88,_ZNSt4pairISsN3ept6popcon5ScoreEEC1ERKSsRKS2_
+FN:218,_ZSt9make_pairISsN3ept6popcon5ScoreEESt4pairIT_T0_ES4_S5_
+FN:104,_ZNSt4pairIKSsN3ept6popcon5ScoreEEC1ISsS3_EERKS_IT_T0_E
+FN:73,_ZNSt4pairIKSsN3ept6popcon5ScoreEEC1ERKS4_
+FN:73,_ZNSt4pairIKSsN3ept6popcon5ScoreEED1Ev
+FN:73,_ZNSt4pairISsN3ept6popcon5ScoreEED1Ev
+DA:73,279640
+DA:88,139820
+DA:89,139820
+DA:104,69910
+DA:106,69910
+DA:218,69910
+DA:219,69910
+LF:7
+LH:7
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE8_M_beginEv
+FN:463,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE6_M_endEv
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKSsN3ept6popcon5ScoreEEEC1EPSt13_Rb_tree_nodeIS5_E
+FN:596,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISt4pairIKSsN3ept6popcon5ScoreEEEeqERKS6_
+FN:471,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE8_S_valueEPKSt13_Rb_tree_nodeIS5_E
+FN:475,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE6_S_keyEPKSt13_Rb_tree_nodeIS5_E
+FN:495,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE6_S_keyEPKSt18_Rb_tree_node_base
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE21_M_get_Node_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE13get_allocatorEv
+FN:195,_ZNSt17_Rb_tree_iteratorISt4pairIKSsN3ept6popcon5ScoreEEEmmEv
+FN:356,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE11_M_get_nodeEv
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS5_E
+FN:364,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE14_M_create_nodeERKS5_
+FN:846,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE10_M_insert_EPKSt18_Rb_tree_node_baseSE_RKS5_
+FN:1133,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE16_M_insert_uniqueERKS5_
+DA:168,242454
+DA:169,242454
+DA:195,32716
+DA:197,32716
+DA:198,32716
+DA:210,32722
+DA:211,32722
+DA:347,139820
+DA:348,139820
+DA:351,139820
+DA:352,139820
+DA:356,69910
+DA:357,69910
+DA:360,69910
+DA:361,69910
+DA:364,69910
+DA:366,69910
+DA:368,69910
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,69910
+DA:452,69912
+DA:453,69912
+DA:463,139820
+DA:464,139820
+DA:471,1092649
+DA:472,1092649
+DA:475,1092649
+DA:476,1092649
+DA:479,599268
+DA:480,599268
+DA:487,633201
+DA:488,633201
+DA:495,139813
+DA:496,139813
+DA:499,139813
+DA:500,139813
+DA:596,32723
+DA:599,32723
+DA:846,69910
+DA:850,69910
+DA:852,69910
+DA:854,69910
+DA:857,69910
+DA:858,69910
+DA:1133,69910
+DA:1135,69910
+DA:1136,69910
+DA:1137,69910
+DA:1138,1232469
+DA:1140,1092649
+DA:1141,1092649
+DA:1142,1092649
+DA:1144,69910
+DA:1145,69910
+DA:1147,32722
+DA:1148,6
+DA:1150,32716
+DA:1152,69904
+DA:1153,69904
+DA:1154,0
+BA:850,2
+BA:850,1
+BA:850,2
+BA:850,2
+BA:850,2
+BA:850,2
+BA:1138,2
+BA:1138,2
+BA:1142,2
+BA:1142,2
+BA:1145,2
+BA:1145,2
+BA:1147,2
+BA:1147,2
+BA:1152,2
+BA:1152,1
+LF:62
+LH:58
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept6popcon5ScoreEEED2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept6popcon5ScoreEEEE8max_sizeEv
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept6popcon5ScoreEEEC2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept6popcon5ScoreEEE9constructEPS6_RKS6_
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept6popcon5ScoreEEEE8allocateEjPKv
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept6popcon5ScoreEEEE10deallocateEPS8_j
+DA:69,139820
+DA:71,0
+DA:76,139820
+DA:87,69910
+DA:89,69910
+DA:90,0
+DA:92,69910
+DA:97,69910
+DA:98,69910
+DA:101,69910
+DA:102,69910
+DA:107,69910
+DA:108,69910
+BA:89,1
+BA:89,2
+BA:108,2
+BA:108,1
+LF:13
+LH:11
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,2
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/popcon/maint/path.cc
+FN:67,_ZN3ept6popcon4Path9timestampERKSs
+FN:63,_ZN3ept6popcon4Path6accessERKSsi
+FN:41,_ZN3ept6popconL7userdirEv
+FN:52,_ZN3ept6popcon4Path8instanceEv
+FN:92,_ZN3ept6popcon4Path18popconUserIndexDirEv
+FN:106,_ZN3ept6popcon4Path15userScoresIndexEv
+FN:102,_ZN3ept6popcon4Path10userScoresEv
+FN:91,_ZN3ept6popcon4Path19popconUserSourceDirEv
+FN:90,_ZN3ept6popcon4Path14popconIndexDirEv
+FN:98,_ZN3ept6popcon4Path11scoresIndexEv
+FN:94,_ZN3ept6popcon4Path6scoresEv
+FN:89,_ZN3ept6popcon4Path15popconSourceDirEv
+FN:84,_ZN3ept6popcon4Path21setPopconUserIndexDirERKSs
+FN:80,_ZN3ept6popcon4Path22setPopconUserSourceDirERKSs
+FN:76,_ZN3ept6popcon4Path17setPopconIndexDirERKSs
+FN:72,_ZN3ept6popcon4Path18setPopconSourceDirERKSs
+DA:41,2
+DA:43,2
+DA:45,2
+DA:46,2
+DA:48,0
+DA:52,178
+DA:53,178
+DA:54,1
+DA:55,1
+DA:56,1
+DA:57,2
+DA:58,2
+DA:60,178
+DA:63,2
+DA:64,2
+DA:67,49
+DA:68,49
+DA:69,90
+DA:72,14
+DA:74,14
+DA:75,14
+DA:76,14
+DA:78,14
+DA:79,14
+DA:80,14
+DA:82,14
+DA:83,14
+DA:84,14
+DA:86,14
+DA:87,14
+DA:89,14
+DA:90,43
+DA:91,14
+DA:92,47
+DA:94,17
+DA:95,17
+DA:98,17
+DA:99,17
+DA:102,20
+DA:103,20
+DA:106,20
+DA:107,20
+BA:53,2
+BA:53,2
+BA:69,2
+BA:69,2
+LF:42
+LH:41
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/popcon/maint/path.h
+FN:38,_ZN3ept6popcon4PathC1Ev
+DA:38,1
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/string.h
+FN:236,_ZN6wibble3str8joinpathERKSsS2_
+DA:236,0
+DA:238,0
+DA:239,0
+DA:240,0
+DA:241,0
+DA:243,0
+DA:244,0
+DA:245,0
+DA:247,0
+DA:249,0
+DA:250,0
+DA:252,0
+BA:238,0
+BA:238,0
+BA:240,0
+BA:240,0
+BA:243,0
+BA:243,0
+BA:244,0
+BA:244,0
+BA:249,0
+BA:249,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/backward/auto_ptr.h
+FN:263,_ZNSt8auto_ptrI4statEC1ESt12auto_ptr_refIS0_E
+FN:214,_ZNKSt8auto_ptrI4statE3getEv
+FN:197,_ZNKSt8auto_ptrI4statEptEv
+FN:228,_ZNSt8auto_ptrI4statE7releaseEv
+FN:56,_ZNSt12auto_ptr_refI4statEC1EPS0_
+FN:278,_ZNSt8auto_ptrI4statEcvSt12auto_ptr_refIT_EIS0_EEv
+FN:173,_ZNSt8auto_ptrI4statED1Ev
+DA:56,0
+DA:173,0
+DA:197,0
+DA:200,0
+DA:214,0
+DA:228,0
+DA:230,0
+DA:231,0
+DA:232,0
+DA:263,0
+DA:264,0
+DA:278,0
+DA:279,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaIcED1Ev
+FN:100,_ZNSaIcEC1ERKS_
+FN:100,_ZNSaIcEC2ERKS_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:277,_ZNKSs7_M_dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:701,_ZNKSsixEj
+FN:1534,_ZNKSs5c_strEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:1551,_ZNKSs13get_allocatorEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2136,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:501,_ZNSsaSERKSs
+FN:928,_ZNSs6assignEPKc
+FN:509,_ZNSsaSEPKc
+DA:178,0
+DA:183,0
+DA:184,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:509,0
+DA:510,0
+DA:606,0
+DA:607,0
+DA:686,0
+DA:687,0
+DA:701,0
+DA:704,0
+DA:928,0
+DA:931,0
+DA:1534,0
+DA:1535,0
+DA:1551,0
+DA:1552,0
+DA:1923,0
+DA:1925,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2136,0
+DA:2140,0
+DA:2141,0
+DA:2142,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:308,0
+BA:308,0
+LF:53
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+DA:261,0
+DA:262,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+DA:69,0
+DA:71,0
+DA:76,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/popcon/maint/popconindexer.cc
+FN:79,_ZNK3ept6popcon13PopconIndexer12needsRebuildEv
+FN:101,_ZNK3ept6popcon13PopconIndexer20userIndexIsRedundantEv
+FN:24,_ZN3ept6popcon13StructIndexerINS0_10InfoStructEEC1ERKS2_
+FN:26,_ZNK3ept6popcon13StructIndexerINS0_10InfoStructEE11encodedSizeEv
+FN:27,_ZNK3ept6popcon13StructIndexerINS0_10InfoStructEE6encodeEPc
+FN:245,_Z41__static_initialization_and_destruction_0ii
+FN:245,_GLOBAL__I_popconindexer.cc
+FN:201,_ZN3ept6popcon13PopconIndexer17getUpToDatePopconERSsS2_
+FN:181,_ZN3ept6popcon13PopconIndexer24deleteRedundantUserIndexEv
+FN:32,_ZN3ept6popcon15PopconGeneratorC1Ev
+FN:32,_ZN3ept6popcon15PopconGeneratorD0Ev
+FN:22,_ZN3ept6popcon13StructIndexerINS0_10InfoStructEED0Ev
+FN:22,_ZN3ept6popcon13StructIndexerINS0_10InfoStructEED1Ev
+FN:32,_ZN3ept6popcon15PopconGeneratorD1Ev
+FN:115,_ZN3ept6popcon13PopconIndexer7rebuildERKSsS3_
+FN:151,_ZN3ept6popcon13PopconIndexer15rebuildIfNeededEv
+FN:45,_ZNK3ept6popcon15PopconGenerator6encodeEPc
+FN:36,_ZNK3ept6popcon15PopconGenerator11encodedSizeEv
+FN:69,_ZN3ept6popcon13PopconIndexer6rescanEv
+FN:62,_ZN3ept6popcon13PopconIndexerC1Ev
+FN:234,_ZN3ept6popcon13PopconIndexer19obtainWorkingPopconERSsS2_
+FN:62,_ZN3ept6popcon13PopconIndexerC2Ev
+DA:22,1
+DA:24,1
+DA:26,1
+DA:27,1
+DA:32,4
+DA:36,1
+DA:38,1
+DA:39,69911
+DA:41,69910
+DA:42,1
+DA:45,1
+DA:47,1
+DA:48,1
+DA:49,69911
+DA:52,69910
+DA:53,69910
+DA:54,69910
+DA:55,69910
+DA:56,69910
+DA:58,1
+DA:62,7
+DA:64,7
+DA:66,7
+DA:67,7
+DA:69,7
+DA:71,7
+DA:72,7
+DA:73,7
+DA:74,14
+DA:75,14
+DA:76,14
+DA:77,7
+DA:79,7
+DA:82,7
+DA:83,2
+DA:86,5
+DA:87,5
+DA:90,0
+DA:91,0
+DA:95,0
+DA:96,0
+DA:98,0
+DA:101,7
+DA:104,7
+DA:105,1
+DA:109,6
+DA:110,0
+DA:112,6
+DA:115,2
+DA:117,2
+DA:119,2
+DA:120,2
+DA:121,1
+DA:122,2
+DA:123,1
+DA:125,1
+DA:128,1
+DA:129,1
+DA:130,1
+DA:131,1
+DA:139,1
+DA:140,1
+DA:141,0
+DA:142,69911
+DA:145,69910
+DA:147,1
+DA:148,1
+DA:151,7
+DA:153,7
+DA:156,2
+DA:160,2
+DA:161,1
+DA:162,1
+DA:163,2
+DA:164,2
+DA:165,1
+DA:166,1
+DA:167,1
+DA:169,0
+DA:170,0
+DA:171,0
+DA:172,0
+DA:173,0
+DA:174,0
+DA:176,1
+DA:178,5
+DA:181,7
+DA:183,7
+DA:186,6
+DA:188,0
+DA:189,0
+DA:191,6
+DA:193,0
+DA:194,0
+DA:196,6
+DA:198,1
+DA:201,7
+DA:204,7
+DA:205,1
+DA:208,6
+DA:211,6
+DA:212,12
+DA:213,6
+DA:218,0
+DA:219,0
+DA:222,0
+DA:225,0
+DA:226,0
+DA:227,0
+DA:230,0
+DA:234,7
+DA:236,7
+DA:238,7
+DA:239,7
+DA:240,7
+DA:245,6
+BA:22,0
+BA:22,0
+BA:22,1
+BA:22,2
+BA:32,0
+BA:32,0
+BA:32,1
+BA:32,2
+BA:39,2
+BA:39,2
+BA:49,2
+BA:49,2
+BA:82,2
+BA:82,2
+BA:82,2
+BA:82,1
+BA:82,1
+BA:82,2
+BA:82,0
+BA:82,0
+BA:86,2
+BA:86,1
+BA:86,2
+BA:86,1
+BA:86,2
+BA:86,1
+BA:90,0
+BA:90,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:104,2
+BA:104,2
+BA:109,1
+BA:109,2
+BA:120,2
+BA:120,2
+BA:122,2
+BA:122,2
+BA:140,1
+BA:140,2
+BA:142,2
+BA:142,2
+BA:153,2
+BA:153,2
+BA:156,2
+BA:156,1
+BA:160,2
+BA:160,2
+BA:164,2
+BA:164,1
+BA:166,2
+BA:166,1
+BA:171,0
+BA:171,0
+BA:183,2
+BA:183,2
+BA:186,1
+BA:186,2
+BA:191,1
+BA:191,2
+BA:204,2
+BA:204,2
+BA:204,2
+BA:204,1
+BA:204,2
+BA:204,1
+BA:204,2
+BA:204,1
+BA:208,2
+BA:208,1
+BA:208,2
+BA:208,1
+BA:208,2
+BA:208,1
+BA:218,0
+BA:218,0
+BA:222,0
+BA:222,0
+BA:222,0
+BA:222,0
+BA:222,0
+BA:222,0
+BA:245,2
+BA:245,1
+BA:245,2
+BA:245,1
+LF:116
+LH:92
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/popcon/maint/popconindexer.h
+FN:49,_ZNK3ept6popcon13PopconIndexer15sourceTimestampEv
+FN:39,_ZN3ept6popcon13PopconIndexerD1Ev
+DA:39,7
+DA:49,28
+DA:51,28
+DA:52,28
+DA:53,28
+BA:52,1
+BA:52,2
+LF:5
+LH:5
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/popcon/maint/sourcedir.h
+FN:39,_ZN3ept6popcon9SourceDirD1Ev
+FN:48,_ZN3ept6popcon9SourceDirC1ERKSs
+DA:39,14
+DA:48,14
+LF:2
+LH:2
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:406,_ZNK6wibble9exception6System4codeEv
+FN:428,_ZNK6wibble9exception4File4typeEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:430,_ZNK6wibble9exception4File4descEv
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:395,_ZN6wibble9exception6SystemD2Ev
+FN:424,_ZN6wibble9exception4FileC1ERKSsS3_
+FN:426,_ZN6wibble9exception4FileD0Ev
+FN:426,_ZN6wibble9exception4FileD1Ev
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+DA:137,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+DA:395,0
+DA:406,0
+DA:424,0
+DA:425,0
+DA:426,0
+DA:428,0
+DA:430,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+BA:395,0
+BA:395,0
+BA:426,0
+BA:426,0
+BA:426,0
+BA:426,0
+LF:27
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/sys/fs.h
+FN:50,_ZN6wibble3sys2fs9DirectoryD2Ev
+FN:111,_ZN6wibble3sys2fs9DirectoryC2ERKSs
+DA:50,0
+DA:111,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:106,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN3ept6popcon5ScoreEEEED2Ev
+FN:100,_ZNSaIcEC1ERKS_
+FN:100,_ZNSaIcEC2ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISt4pairIKSsN3ept6popcon5ScoreEEEEC2Ev
+FN:106,_ZNSaISt4pairIKSsN3ept6popcon5ScoreEEED1Ev
+FN:104,_ZNSaISt4pairIKSsN3ept6popcon5ScoreEEEC1ISt13_Rb_tree_nodeIS4_EEERKSaIT_E
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,2
+DA:100,0
+DA:101,0
+DA:104,0
+DA:106,2
+DA:118,0
+DA:119,0
+LF:7
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:276,0
+BA:276,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:277,_ZNKSs7_M_dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:1534,_ZNKSs5c_strEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:1551,_ZNKSs13get_allocatorEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:501,_ZNSsaSERKSs
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:2201,_ZStneIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:835,0
+DA:838,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2162,0
+DA:2165,0
+DA:2201,0
+DA:2202,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:71
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:16
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+BA:340,0
+BA:340,0
+LF:19
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+DA:683,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,0
+DA:166,0
+DA:167,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_map.h
+FN:389,_ZNKSt3mapISsN3ept6popcon5ScoreESt4lessISsESaISt4pairIKSsS2_EEE4sizeEv
+FN:384,_ZNKSt3mapISsN3ept6popcon5ScoreESt4lessISsESaISt4pairIKSsS2_EEE5emptyEv
+FN:284,_ZNKSt3mapISsN3ept6popcon5ScoreESt4lessISsESaISt4pairIKSsS2_EEE5beginEv
+FN:302,_ZNKSt3mapISsN3ept6popcon5ScoreESt4lessISsESaISt4pairIKSsS2_EEE3endEv
+FN:275,_ZNSt3mapISsN3ept6popcon5ScoreESt4lessISsESaISt4pairIKSsS2_EEE5beginEv
+FN:293,_ZNSt3mapISsN3ept6popcon5ScoreESt4lessISsESaISt4pairIKSsS2_EEE3endEv
+FN:155,_ZNSt3mapISsN3ept6popcon5ScoreESt4lessISsESaISt4pairIKSsS2_EEEC1Ev
+FN:92,_ZNSt3mapISsN3ept6popcon5ScoreESt4lessISsESaISt4pairIKSsS2_EEED1Ev
+DA:92,2
+DA:155,2
+DA:156,2
+DA:275,1
+DA:276,1
+DA:284,2
+DA:285,2
+DA:293,69911
+DA:294,69911
+DA:302,139822
+DA:303,139822
+DA:384,2
+DA:385,2
+DA:389,2
+DA:390,2
+LF:15
+LH:15
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:73,_ZNSt4pairIKSsN3ept6popcon5ScoreEED1Ev
+DA:73,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:289,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept6popcon5ScoreEEEneERKS6_
+FN:251,_ZNKSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept6popcon5ScoreEEEptEv
+FN:243,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept6popcon5ScoreEEEC1ERKSt17_Rb_tree_iteratorIS5_E
+FN:641,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE4sizeEv
+FN:452,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE8_M_beginEv
+FN:637,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE5emptyEv
+FN:240,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept6popcon5ScoreEEEC1EPKSt13_Rb_tree_nodeIS5_E
+FN:603,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE5beginEv
+FN:614,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE3endEv
+FN:398,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE13_Rb_tree_implIS9_Lb0EED1Ev
+FN:487,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE7_S_leftEPSt18_Rb_tree_node_base
+FN:168,_ZNSt17_Rb_tree_iteratorISt4pairIKSsN3ept6popcon5ScoreEEEC1EPSt13_Rb_tree_nodeIS5_E
+FN:596,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE5beginEv
+FN:610,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE3endEv
+FN:415,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE13_Rb_tree_implIS9_Lb0EE13_M_initializeEv
+FN:403,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE13_Rb_tree_implIS9_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EEC1Ev
+FN:347,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE21_M_get_Node_allocatorEv
+FN:351,_ZNKSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE13get_allocatorEv
+FN:360,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE11_M_put_nodeEPSt13_Rb_tree_nodeIS5_E
+FN:388,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE15_M_destroy_nodeEPSt13_Rb_tree_nodeIS5_E
+FN:936,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EE8_M_eraseEPSt13_Rb_tree_nodeIS5_E
+FN:584,_ZNSt8_Rb_treeISsSt4pairIKSsN3ept6popcon5ScoreEESt10_Select1stIS5_ESt4lessISsESaIS5_EED1Ev
+FN:255,_ZNSt23_Rb_tree_const_iteratorISt4pairIKSsN3ept6popcon5ScoreEEEppEv
+DA:168,0
+DA:169,0
+DA:240,139824
+DA:241,139824
+DA:243,69912
+DA:244,69912
+DA:251,489370
+DA:252,489370
+DA:255,209730
+DA:257,209730
+DA:258,209730
+DA:289,209733
+DA:290,209733
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:360,0
+DA:361,0
+DA:388,69910
+DA:390,69910
+DA:391,69910
+DA:392,69910
+DA:398,2
+DA:403,2
+DA:405,2
+DA:406,2
+DA:415,2
+DA:417,2
+DA:418,2
+DA:419,2
+DA:420,2
+DA:421,2
+DA:452,0
+DA:453,0
+DA:479,0
+DA:480,0
+DA:487,0
+DA:488,0
+DA:562,2
+DA:584,2
+DA:585,2
+DA:596,0
+DA:599,0
+DA:603,2
+DA:606,2
+DA:610,69911
+DA:611,69911
+DA:614,139822
+DA:617,139822
+DA:637,2
+DA:638,2
+DA:641,2
+DA:642,2
+DA:936,69912
+DA:939,209734
+DA:941,69910
+DA:942,69910
+DA:943,69910
+DA:944,69910
+DA:946,69912
+BA:939,2
+BA:939,2
+LF:61
+LH:45
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+DA:79,0
+DA:97,0
+DA:98,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:299,0
+DA:300,0
+DA:301,0
+DA:386,0
+DA:387,0
+DA:404,0
+DA:405,0
+DA:526,0
+DA:527,0
+BA:149,0
+BA:149,0
+LF:19
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept6popcon5ScoreEEEED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept6popcon5ScoreEEEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept6popcon5ScoreEEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept6popcon5ScoreEEEC2Ev
+FN:118,_ZN9__gnu_cxx13new_allocatorISt4pairIKSsN3ept6popcon5ScoreEEE7destroyEPS6_
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKSsN3ept6popcon5ScoreEEEE10deallocateEPS8_j
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+DA:69,2
+DA:71,0
+DA:76,2
+DA:97,0
+DA:98,0
+DA:118,69910
+LF:6
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,2
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+DA:95,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/tagcoll-2.0.11/tagcoll/diskindex/mmap.h
+FN:89,_ZN7tagcoll9diskindex11MMapIndexerC2Ev
+FN:79,_ZN7tagcoll9diskindex4MMap5alignIiEET_S3_
+FN:91,_ZN7tagcoll9diskindex11MMapIndexerD0Ev
+FN:91,_ZN7tagcoll9diskindex11MMapIndexerD1Ev
+FN:91,_ZN7tagcoll9diskindex11MMapIndexerD2Ev
+DA:79,0
+DA:81,0
+DA:89,0
+DA:91,0
+BA:91,0
+BA:91,0
+BA:91,0
+BA:91,0
+BA:91,0
+BA:91,0
+LF:4
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/apt/packagerecord.cc
+FN:69,_ZNK3ept3apt13PackageRecord9parseTagsERKSt3setISsSt4lessISsESaISsEERKSs
+FN:42,_ZNK3ept3apt13PackageRecord21parseShortDescriptionERKSsS3_
+FN:53,_ZNK3ept3apt13PackageRecord20parseLongDescriptionERKSsS3_
+FN:35,_ZNK3ept3apt13PackageRecord9parseSizeEjRKSs
+DA:35,5210
+DA:37,5210
+DA:38,54
+DA:39,5156
+DA:42,1
+DA:44,1
+DA:45,0
+DA:46,1
+DA:47,1
+DA:48,0
+DA:50,1
+DA:53,1
+DA:55,1
+DA:56,0
+DA:57,1
+DA:58,1
+DA:59,0
+DA:63,1
+DA:65,1
+DA:69,2605
+DA:71,2605
+DA:72,2604
+DA:74,1
+DA:76,1
+DA:77,13
+DA:79,12
+DA:80,12
+DA:81,12
+DA:82,1
+DA:84,11
+DA:87,12
+DA:89,1
+DA:90,1
+DA:92,1
+DA:93,1
+DA:95,4
+DA:97,2
+DA:98,2
+DA:100,1
+DA:103,11
+DA:106,12
+DA:107,1
+DA:109,11
+DA:112,1
+BA:37,2
+BA:37,2
+BA:44,1
+BA:44,2
+BA:47,1
+BA:47,2
+BA:55,1
+BA:55,2
+BA:58,1
+BA:58,2
+BA:63,2
+BA:63,1
+BA:63,2
+BA:63,2
+BA:63,2
+BA:63,2
+BA:71,2
+BA:71,2
+BA:77,2
+BA:77,2
+BA:77,2
+BA:77,1
+BA:81,2
+BA:81,2
+BA:87,2
+BA:87,2
+BA:90,2
+BA:90,1
+BA:95,2
+BA:95,2
+BA:106,2
+BA:106,2
+LF:44
+LH:40
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISt13_Rb_tree_nodeISsEED2Ev
+FN:98,_ZNSaISt13_Rb_tree_nodeISsEEC2Ev
+FN:100,_ZNSaISt13_Rb_tree_nodeISsEEC2ERKS1_
+FN:106,_ZNSaISsED1Ev
+FN:104,_ZNSaISsEC1ISt13_Rb_tree_nodeISsEEERKSaIT_E
+DA:98,0
+DA:100,0
+DA:101,0
+DA:104,0
+DA:106,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:277,_ZNKSs7_M_dataEv
+FN:1544,_ZNKSs4dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:701,_ZNKSsixEj
+FN:1534,_ZNKSs5c_strEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:188,_ZNKSs4_Rep12_M_is_leakedEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:392,_ZNSs10_S_compareEjj
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:1941,_ZNKSs7compareERKSs
+FN:2238,_ZStltIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:1593,_ZNKSs4findEPKcj
+FN:501,_ZNSsaSERKSs
+FN:299,_ZNSs7_M_leakEv
+FN:718,_ZNSsixEj
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:188,0
+DA:189,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:299,0
+DA:301,0
+DA:302,0
+DA:303,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:701,0
+DA:704,0
+DA:718,0
+DA:724,0
+DA:725,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1593,0
+DA:1596,0
+DA:1923,0
+DA:1925,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2162,0
+DA:2165,0
+DA:2238,0
+DA:2239,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:301,0
+BA:301,0
+BA:308,0
+BA:308,0
+BA:1948,0
+BA:1948,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:71
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:188,_ZSt3minIjERKT_S2_S2_
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+BA:193,0
+BA:193,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_function.h
+FN:469,_ZNKSt9_IdentityISsEclERKSs
+FN:229,_ZNKSt4lessISsEclERKSsS2_
+DA:229,0
+DA:230,0
+DA:469,0
+DA:470,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_pair.h
+FN:88,_ZNSt4pairISt23_Rb_tree_const_iteratorISsEbEC1ERKS1_RKb
+FN:88,_ZNSt4pairISt17_Rb_tree_iteratorISsEbEC1ERKS1_RKb
+DA:88,0
+DA:89,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_set.h
+FN:141,_ZNSt3setISsSt4lessISsESaISsEEC1Ev
+FN:378,_ZNSt3setISsSt4lessISsESaISsEE6insertERKSs
+FN:193,_ZNSt3setISsSt4lessISsESaISsEEC1ERKS3_
+FN:93,_ZNSt3setISsSt4lessISsESaISsEED1Ev
+DA:93,0
+DA:141,0
+DA:142,0
+DA:193,0
+DA:194,0
+DA:378,0
+DA:381,0
+DA:382,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_tree.h
+FN:103,_ZNSt18_Rb_tree_node_base10_S_minimumEPS_
+FN:117,_ZNSt18_Rb_tree_node_base10_S_maximumEPS_
+FN:243,_ZNSt23_Rb_tree_const_iteratorISsEC1ERKSt17_Rb_tree_iteratorISsE
+FN:452,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:347,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE21_M_get_Node_allocatorEv
+FN:432,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_rootEv
+FN:456,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_beginEv
+FN:463,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_M_endEv
+FN:428,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_rootEv
+FN:503,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_S_minimumEPSt18_Rb_tree_node_base
+FN:436,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_leftmostEv
+FN:511,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_S_maximumEPSt18_Rb_tree_node_base
+FN:444,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE12_M_rightmostEv
+FN:487,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPSt18_Rb_tree_node_base
+FN:479,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPSt18_Rb_tree_node_base
+FN:168,_ZNSt17_Rb_tree_iteratorISsEC1EPSt13_Rb_tree_nodeISsE
+FN:596,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE5beginEv
+FN:210,_ZNKSt17_Rb_tree_iteratorISsEeqERKS0_
+FN:415,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EE13_M_initializeEv
+FN:398,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EED1Ev
+FN:491,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_rightEPKSt18_Rb_tree_node_base
+FN:483,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPKSt18_Rb_tree_node_base
+FN:471,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt13_Rb_tree_nodeISsE
+FN:475,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt13_Rb_tree_nodeISsE
+FN:495,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_S_valueEPKSt18_Rb_tree_node_base
+FN:499,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE6_S_keyEPKSt18_Rb_tree_node_base
+FN:403,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EEC1Ev
+FN:562,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEC1Ev
+FN:408,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_Rb_tree_implIS3_Lb0EEC1ERKS3_RKSaISt13_Rb_tree_nodeISsEE
+FN:351,_ZNKSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13get_allocatorEv
+FN:195,_ZNSt17_Rb_tree_iteratorISsEmmEv
+FN:356,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_get_nodeEv
+FN:360,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE11_M_put_nodeEPSt13_Rb_tree_nodeISsE
+FN:364,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE14_M_create_nodeERKSs
+FN:846,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE10_M_insert_EPKSt18_Rb_tree_node_baseS8_RKSs
+FN:1133,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE16_M_insert_uniqueERKSs
+FN:378,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE13_M_clone_nodeEPKSt13_Rb_tree_nodeISsE
+FN:388,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE15_M_destroy_nodeEPSt13_Rb_tree_nodeISsE
+FN:936,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE8_M_eraseEPSt13_Rb_tree_nodeISsE
+FN:900,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_M_copyEPKSt13_Rb_tree_nodeISsEPS7_
+FN:568,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEEC1ERKS5_
+FN:584,_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEED1Ev
+DA:103,0
+DA:105,0
+DA:106,0
+DA:117,0
+DA:119,0
+DA:120,0
+DA:168,0
+DA:169,0
+DA:195,0
+DA:197,0
+DA:198,0
+DA:210,0
+DA:211,0
+DA:243,0
+DA:244,0
+DA:347,0
+DA:348,0
+DA:351,0
+DA:352,0
+DA:356,0
+DA:357,0
+DA:360,0
+DA:361,0
+DA:364,0
+DA:366,0
+DA:368,0
+DA:369,0
+DA:371,0
+DA:372,0
+DA:374,0
+DA:378,0
+DA:380,0
+DA:381,0
+DA:382,0
+DA:383,0
+DA:384,0
+DA:388,0
+DA:390,0
+DA:391,0
+DA:392,0
+DA:398,0
+DA:403,0
+DA:405,0
+DA:406,0
+DA:408,0
+DA:410,0
+DA:411,0
+DA:415,0
+DA:417,0
+DA:418,0
+DA:419,0
+DA:420,0
+DA:421,0
+DA:428,0
+DA:429,0
+DA:432,0
+DA:433,0
+DA:436,0
+DA:437,0
+DA:444,0
+DA:445,0
+DA:452,0
+DA:453,0
+DA:456,0
+DA:459,0
+DA:463,0
+DA:464,0
+DA:471,0
+DA:472,0
+DA:475,0
+DA:476,0
+DA:479,0
+DA:480,0
+DA:483,0
+DA:484,0
+DA:487,0
+DA:488,0
+DA:491,0
+DA:492,0
+DA:495,0
+DA:496,0
+DA:499,0
+DA:500,0
+DA:503,0
+DA:504,0
+DA:511,0
+DA:512,0
+DA:562,0
+DA:568,0
+DA:569,0
+DA:571,0
+DA:573,0
+DA:574,0
+DA:575,0
+DA:576,0
+DA:578,0
+DA:584,0
+DA:585,0
+DA:596,0
+DA:599,0
+DA:846,0
+DA:850,0
+DA:852,0
+DA:854,0
+DA:857,0
+DA:858,0
+DA:900,0
+DA:903,0
+DA:904,0
+DA:908,0
+DA:909,0
+DA:910,0
+DA:911,0
+DA:913,0
+DA:915,0
+DA:916,0
+DA:917,0
+DA:918,0
+DA:919,0
+DA:920,0
+DA:921,0
+DA:924,0
+DA:926,0
+DA:927,0
+DA:929,0
+DA:936,0
+DA:939,0
+DA:941,0
+DA:942,0
+DA:943,0
+DA:944,0
+DA:946,0
+DA:1133,0
+DA:1135,0
+DA:1136,0
+DA:1137,0
+DA:1138,0
+DA:1140,0
+DA:1141,0
+DA:1142,0
+DA:1144,0
+DA:1145,0
+DA:1147,0
+DA:1148,0
+DA:1150,0
+DA:1152,0
+DA:1153,0
+DA:1154,0
+BA:105,0
+BA:105,0
+BA:119,0
+BA:119,0
+BA:571,0
+BA:571,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:850,0
+BA:908,0
+BA:908,0
+BA:913,0
+BA:913,0
+BA:918,0
+BA:918,0
+BA:939,0
+BA:939,0
+BA:1138,0
+BA:1138,0
+BA:1142,0
+BA:1142,0
+BA:1145,0
+BA:1145,0
+BA:1147,0
+BA:1147,0
+BA:1152,0
+BA:1152,0
+LF:148
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEEC2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEEC2ERKS3_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8max_sizeEv
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE8allocateEjPKv
+FN:97,_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISsEE10deallocateEPS2_j
+FN:118,_ZN9__gnu_cxx13new_allocatorISsE7destroyEPSs
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+DA:118,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:14
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/apt/recordparser.cc
+FN:38,_ZN3ept3apt9rpcompareC1ERKNS0_12RecordParserE
+FN:110,_ZNK3ept3apt12RecordParser5fieldEj
+FN:129,_ZNK3ept3apt12RecordParser6lookupEj
+FN:120,_ZNK3ept3apt12RecordParser4nameEj
+FN:145,_ZNK3ept3apt12RecordParser5indexERKSs
+FN:39,_ZN3ept3apt9rpcompareclEjj
+FN:45,_ZN3ept3apt12RecordParser4scanERKSs
+DA:38,2618
+DA:39,177724
+DA:41,177724
+DA:45,2618
+DA:47,2618
+DA:48,2618
+DA:49,2618
+DA:54,2618
+DA:55,2618
+DA:56,59427
+DA:59,56809
+DA:63,56809
+DA:66,1
+DA:67,1
+DA:68,1
+DA:69,1
+DA:72,56808
+DA:76,56808
+DA:79,11
+DA:80,11
+DA:81,11
+DA:85,56797
+DA:88,2606
+DA:89,2606
+DA:90,2606
+DA:94,54191
+DA:97,34233
+DA:98,34233
+DA:104,2618
+DA:108,2618
+DA:110,465183
+DA:112,465183
+DA:113,2664
+DA:114,462519
+DA:115,52771
+DA:117,409748
+DA:120,446879
+DA:122,446879
+DA:123,446879
+DA:124,446879
+DA:125,1
+DA:126,446878
+DA:129,18279
+DA:131,18279
+DA:132,18279
+DA:133,18279
+DA:134,2662
+DA:136,15617
+DA:138,15617
+DA:140,46850
+DA:141,15616
+DA:142,15617
+DA:145,18283
+DA:150,18283
+DA:151,109703
+DA:153,73137
+DA:155,73137
+DA:156,32507
+DA:158,40630
+DA:161,18283
+DA:162,2661
+DA:164,15622
+BA:56,2
+BA:56,1
+BA:63,2
+BA:63,2
+BA:76,2
+BA:76,2
+BA:85,2
+BA:85,2
+BA:94,2
+BA:94,2
+BA:112,2
+BA:112,2
+BA:114,2
+BA:114,2
+BA:124,2
+BA:124,2
+BA:133,2
+BA:133,2
+BA:136,2
+BA:136,2
+BA:136,2
+BA:136,2
+BA:136,2
+BA:136,2
+BA:140,2
+BA:140,2
+BA:140,2
+BA:140,2
+BA:140,2
+BA:140,2
+BA:151,2
+BA:151,2
+BA:155,2
+BA:155,2
+BA:161,2
+BA:161,1
+BA:161,2
+BA:161,2
+BA:161,2
+BA:161,1
+BA:161,0
+BA:161,0
+BA:161,2
+BA:161,2
+LF:62
+LH:62
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/apt/recordparser.h
+FN:88,_ZNK3ept3apt12RecordParser4sizeEv
+DA:88,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC1ERKS_
+FN:100,_ZNSaIcEC2ERKS_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:277,_ZNKSs7_M_dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:1544,_ZNKSs4dataEv
+FN:392,_ZNSs10_S_compareEjj
+FN:188,_ZNKSs4_Rep12_M_is_leakedEv
+FN:1551,_ZNKSs13get_allocatorEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1941,_ZNKSs7compareERKSs
+FN:2275,_ZStgtIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:2238,_ZStltIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:2201,_ZStneIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:1593,_ZNKSs4findEPKcj
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+FN:501,_ZNSsaSERKSs
+FN:644,_ZNSs6resizeEj
+FN:299,_ZNSs7_M_leakEv
+FN:718,_ZNSsixEj
+DA:178,0
+DA:183,0
+DA:184,0
+DA:188,0
+DA:189,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:299,0
+DA:301,0
+DA:302,0
+DA:303,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:644,0
+DA:645,0
+DA:686,0
+DA:687,0
+DA:718,0
+DA:724,0
+DA:725,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1593,0
+DA:1596,0
+DA:1923,0
+DA:1925,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2162,0
+DA:2165,0
+DA:2201,0
+DA:2202,0
+DA:2238,0
+DA:2239,0
+DA:2275,0
+DA:2276,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:301,0
+BA:301,0
+BA:308,0
+BA:308,0
+BA:1948,0
+BA:1948,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:71
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algo.h
+FN:1568,_ZSt13__heap_selectIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEN3ept3apt9rpcompareEEvT_SA_SA_T0_
+FN:4661,_ZSt12partial_sortIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEN3ept3apt9rpcompareEEvT_SA_SA_T0_
+FN:123,_ZSt8__medianIjN3ept3apt9rpcompareEERKT_S5_S5_S5_T0_
+FN:1877,_ZSt21__unguarded_partitionIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEjN3ept3apt9rpcompareEET_SA_SA_T0_T1_
+FN:1930,_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEiN3ept3apt9rpcompareEEvT_SA_T0_T1_
+FN:1731,_ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEjN3ept3apt9rpcompareEEvT_T0_T1_
+FN:1806,_ZSt26__unguarded_insertion_sortIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEN3ept3apt9rpcompareEEvT_SA_T0_
+FN:1771,_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEN3ept3apt9rpcompareEEvT_SA_T0_
+FN:1840,_ZSt22__final_insertion_sortIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEN3ept3apt9rpcompareEEvT_SA_T0_
+FN:1970,_ZSt4__lgi
+FN:4806,_ZSt4sortIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEN3ept3apt9rpcompareEEvT_SA_T0_
+DA:123,165
+DA:128,165
+DA:129,145
+DA:130,13
+DA:131,132
+DA:132,0
+DA:134,132
+DA:135,20
+DA:136,20
+DA:137,0
+DA:138,0
+DA:140,0
+DA:1568,0
+DA:1570,0
+DA:1571,0
+DA:1572,0
+DA:1573,0
+DA:1574,0
+DA:1731,29164
+DA:1733,29164
+DA:1734,29164
+DA:1735,169218
+DA:1737,110890
+DA:1738,110890
+DA:1739,110890
+DA:1741,29164
+DA:1742,29164
+DA:1771,2618
+DA:1773,2618
+DA:1775,36660
+DA:1778,34042
+DA:1779,34042
+DA:1781,5069
+DA:1782,5069
+DA:1785,28973
+DA:1806,164
+DA:1811,355
+DA:1812,191
+DA:1813,164
+DA:1840,2618
+DA:1842,2618
+DA:1844,164
+DA:1845,164
+DA:1849,2454
+DA:1850,2618
+DA:1877,970
+DA:1879,805
+DA:1881,2512
+DA:1882,572
+DA:1883,970
+DA:1884,2594
+DA:1885,654
+DA:1886,970
+DA:1887,165
+DA:1888,805
+DA:1889,805
+DA:1930,2783
+DA:1935,5731
+DA:1937,165
+DA:1939,0
+DA:1940,0
+DA:1942,165
+DA:1952,165
+DA:1953,165
+DA:1954,165
+DA:1970,0
+DA:1971,0
+DA:4661,0
+DA:4674,0
+DA:4675,0
+DA:4676,0
+DA:4806,2618
+DA:4818,2618
+DA:4820,2618
+DA:4822,2618
+DA:4824,2618
+BA:128,2
+BA:128,2
+BA:129,2
+BA:129,2
+BA:131,1
+BA:131,2
+BA:135,2
+BA:135,1
+BA:137,0
+BA:137,0
+BA:1571,0
+BA:1571,0
+BA:1572,0
+BA:1572,0
+BA:1735,2
+BA:1735,2
+BA:1773,2
+BA:1773,1
+BA:1775,2
+BA:1775,2
+BA:1779,2
+BA:1779,2
+BA:1811,2
+BA:1811,2
+BA:1842,2
+BA:1842,2
+BA:1881,2
+BA:1881,2
+BA:1884,2
+BA:1884,2
+BA:1886,2
+BA:1886,2
+BA:1935,2
+BA:1935,2
+BA:1937,1
+BA:1937,2
+BA:4818,2
+BA:4818,1
+LF:76
+LH:58
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:188,_ZSt3minIjERKT_S2_S2_
+FN:286,_ZNSt12__miter_baseIPjLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:268,_ZNSt12__niter_baseIPjLb0EE3__bES0_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEELb0EE3__bES6_
+FN:104,_ZNSt11__iter_swapILb1EE9iter_swapIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEES8_EEvT_T0_
+FN:121,_ZSt9iter_swapIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEES6_EvT_T0_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEELb1EE3__bES6_
+FN:569,_ZNSt20__copy_move_backwardILb0ELb1ESt26random_access_iterator_tagE13__copy_move_bIjEEPT_PKS3_S6_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPjS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPjS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPjS0_ET0_T_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEES6_ET1_T0_S8_S7_
+FN:624,_ZSt13copy_backwardIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEES6_ET0_T_S8_S7_
+FN:375,_ZNSt11__copy_moveILb0ELb1ESt26random_access_iterator_tagE8__copy_mIjEEPT_PKS3_S6_S4_
+FN:385,_ZSt13__copy_move_aILb0EPjS0_ET1_T0_S2_S1_
+FN:430,_ZSt14__copy_move_a2ILb0EPjS0_ET1_T0_S2_S1_
+FN:456,_ZSt4copyIPjS0_ET0_T_S2_S1_
+DA:104,0
+DA:106,0
+DA:107,0
+DA:121,0
+DA:142,0
+DA:146,0
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:375,0
+DA:377,0
+DA:379,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:569,0
+DA:571,0
+DA:572,0
+DA:573,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+BA:193,0
+BA:193,0
+BA:215,0
+BA:215,0
+LF:41
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:97,_ZSt8_DestroyIPjEvT_S1_
+FN:126,_ZSt8_DestroyIPjjEvT_S1_RSaIT0_E
+DA:97,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_heap.h
+FN:177,_ZSt11__push_heapIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEijN3ept3apt9rpcompareEEvT_T0_SB_T1_T2_
+FN:295,_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEijN3ept3apt9rpcompareEEvT_T0_SB_T1_T2_
+FN:412,_ZSt9make_heapIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEN3ept3apt9rpcompareEEvT_SA_T0_
+FN:322,_ZSt10__pop_heapIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEN3ept3apt9rpcompareEEvT_SA_SA_T0_
+FN:350,_ZSt8pop_heapIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEN3ept3apt9rpcompareEEvT_SA_T0_
+FN:477,_ZSt9sort_heapIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEN3ept3apt9rpcompareEEvT_SA_T0_
+DA:177,0
+DA:179,0
+DA:180,0
+DA:183,0
+DA:184,0
+DA:185,0
+DA:187,0
+DA:188,0
+DA:295,0
+DA:297,0
+DA:298,0
+DA:299,0
+DA:301,0
+DA:302,0
+DA:304,0
+DA:305,0
+DA:306,0
+DA:308,0
+DA:310,0
+DA:311,0
+DA:313,0
+DA:315,0
+DA:317,0
+DA:322,0
+DA:329,0
+DA:330,0
+DA:331,0
+DA:334,0
+DA:350,0
+DA:358,0
+DA:359,0
+DA:412,0
+DA:424,0
+DA:425,0
+DA:427,0
+DA:428,0
+DA:429,0
+DA:431,0
+DA:432,0
+DA:434,0
+DA:435,0
+DA:436,0
+DA:477,0
+DA:485,0
+DA:486,0
+DA:487,0
+BA:180,0
+BA:180,0
+BA:180,0
+BA:180,0
+BA:180,0
+BA:180,0
+BA:299,0
+BA:299,0
+BA:302,0
+BA:302,0
+BA:308,0
+BA:308,0
+BA:308,0
+BA:308,0
+BA:424,0
+BA:424,0
+BA:434,0
+BA:434,0
+BA:485,0
+BA:485,0
+LF:46
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEE4baseEv
+FN:781,_ZN9__gnu_cxxneIPjSt6vectorIjSaIjEEEEbRKNS_17__normal_iteratorIT_T0_EESA_
+FN:846,_ZN9__gnu_cxxmiIPjSt6vectorIjSaIjEEEENS_17__normal_iteratorIT_T0_E15difference_typeERKS8_SB_
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEdeEv
+FN:735,_ZNK9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEplERKi
+FN:743,_ZNK9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEmiERKi
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEppEv
+FN:715,_ZN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEmmEv
+FN:794,_ZN9__gnu_cxxltIPjSt6vectorIjSaIjEEEEbRKNS_17__normal_iteratorIT_T0_EESA_
+FN:769,_ZN9__gnu_cxxeqIPjSt6vectorIjSaIjEEEEbRKNS_17__normal_iteratorIT_T0_EESA_
+FN:722,_ZN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEmmEi
+DA:683,0
+DA:695,0
+DA:696,0
+DA:703,0
+DA:705,0
+DA:706,0
+DA:715,0
+DA:717,0
+DA:718,0
+DA:722,0
+DA:723,0
+DA:735,0
+DA:736,0
+DA:743,0
+DA:744,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+DA:781,0
+DA:782,0
+DA:794,0
+DA:795,0
+DA:846,0
+DA:847,0
+LF:25
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_move.h
+FN:80,_ZSt4swapIjEvRT_S1_
+DA:80,0
+DA:85,0
+DA:86,0
+DA:87,0
+DA:88,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:97,_ZNSt20__uninitialized_copyILb1EE18uninitialized_copyIPjS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPjS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPjS0_jET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPjS0_SaIjEET0_T_S3_S2_RT1_
+DA:97,0
+DA:98,0
+DA:113,0
+DA:122,0
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:484,_ZNKSt6vectorIjSaIjEE4sizeEv
+FN:577,_ZNKSt6vectorIjSaIjEEixEj
+FN:97,_ZNSt12_Vector_baseIjSaIjEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorIjSaIjEE3endEv
+FN:377,_ZNSt6vectorIjSaIjEE5beginEv
+FN:1089,_ZNSt6vectorIjSaIjEE15_M_erase_at_endEPj
+FN:891,_ZNSt6vectorIjSaIjEE5clearEv
+FN:101,_ZNKSt12_Vector_baseIjSaIjEE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorIjSaIjEE8max_sizeEv
+FN:1075,_ZNKSt6vectorIjSaIjEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseIjSaIjEE11_M_allocateEj
+FN:147,_ZNSt12_Vector_baseIjSaIjEE13_M_deallocateEPjj
+FN:686,_ZNSt6vectorIjSaIjEE9push_backERKj
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:377,0
+DA:378,0
+DA:395,0
+DA:396,0
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:577,0
+DA:578,0
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:891,0
+DA:892,0
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+DA:1089,0
+DA:1091,0
+DA:1092,0
+DA:1093,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:37
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorIjSaIjEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPjS1_EERKj
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:286,0
+BA:286,0
+LF:24
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:107,_ZN9__gnu_cxx13new_allocatorIjE9constructEPjRKj
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:101,_ZNK9__gnu_cxx13new_allocatorIjE8max_sizeEv
+FN:87,_ZN9__gnu_cxx13new_allocatorIjE8allocateEjPKv
+FN:97,_ZN9__gnu_cxx13new_allocatorIjE10deallocateEPjj
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+DA:105,0
+LF:1
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/apt/version.cc
+FN:85,_Z41__static_initialization_and_destruction_0ii
+FN:85,_GLOBAL__I_version.cc
+FN:75,_ZNK3ept3apt7VersiongtERKS1_
+FN:67,_ZNK3ept3apt7VersiongeERKS1_
+FN:59,_ZNK3ept3apt7VersionltERKS1_
+FN:51,_ZNK3ept3apt7VersionleERKS1_
+FN:32,_ZNK3ept3apt7Version15upstreamVersionEv
+DA:32,4
+DA:35,4
+DA:36,4
+DA:37,3
+DA:39,1
+DA:42,4
+DA:43,4
+DA:44,1
+DA:46,4
+DA:51,4
+DA:53,4
+DA:54,1
+DA:55,3
+DA:56,3
+DA:57,0
+DA:59,5
+DA:61,5
+DA:62,1
+DA:63,4
+DA:64,4
+DA:65,0
+DA:67,4
+DA:69,4
+DA:70,0
+DA:71,4
+DA:72,3
+DA:73,1
+DA:75,5
+DA:77,5
+DA:78,0
+DA:79,5
+DA:80,4
+DA:81,1
+DA:85,6
+BA:36,2
+BA:36,2
+BA:43,2
+BA:43,2
+BA:53,2
+BA:53,2
+BA:55,2
+BA:55,1
+BA:61,2
+BA:61,2
+BA:63,2
+BA:63,1
+BA:69,1
+BA:69,2
+BA:71,2
+BA:71,2
+BA:77,1
+BA:77,2
+BA:79,2
+BA:79,2
+BA:85,2
+BA:85,1
+BA:85,2
+BA:85,1
+LF:34
+LH:30
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/apt/version.h
+FN:61,_ZNK3ept3apt7Version4nameEv
+FN:67,_ZNK3ept3apt7Version7versionEv
+DA:61,0
+DA:67,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/apt-pkg/version.h
+FN:53,_ZN19pkgVersioningSystem10CmpVersionESsSs
+DA:53,14
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC1ERKS_
+DA:100,0
+DA:101,0
+DA:106,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:612,_ZNKSs6lengthEv
+FN:1544,_ZNKSs4dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:392,_ZNSs10_S_compareEjj
+FN:1551,_ZNKSs13get_allocatorEv
+FN:1941,_ZNKSs7compareERKSs
+FN:2275,_ZStgtIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:2238,_ZStltIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+DA:178,0
+DA:183,0
+DA:184,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:493,0
+DA:494,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1923,0
+DA:1925,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2162,0
+DA:2165,0
+DA:2238,0
+DA:2239,0
+DA:2275,0
+DA:2276,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:308,0
+BA:308,0
+BA:1948,0
+BA:1948,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:48
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:257,0
+DA:258,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:188,_ZSt3minIjERKT_S2_S2_
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+BA:193,0
+BA:193,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+DA:71,0
+DA:76,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,2
+LF:1
+LH:1
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/apt/apt.cc
+FN:124,_ZN3ept3apt17AptImplementation5cacheEv
+FN:129,_ZN3ept3apt17AptImplementation6policyEv
+FN:147,_ZN3ept3apt15localityCompareEPKN8pkgCache7VerFileES4_
+FN:239,_ZN3ept3apt18RecordIteratorImpl3refEv
+FN:240,_ZN3ept3apt18RecordIteratorImpl5unrefEv
+FN:337,_ZNK3ept3apt3Apt8IteratoreqERKS2_
+FN:347,_ZNK3ept3apt3Apt8IteratorneERKS2_
+FN:423,_ZNK3ept3apt3Apt14RecordIteratoreqERKS2_
+FN:427,_ZNK3ept3apt3Apt14RecordIteratorneERKS2_
+FN:443,_ZNK3ept3apt3Apt3endEv
+FN:458,_ZNK3ept3apt3Apt4sizeEv
+FN:632,_ZN3ept3apt3Apt19invalidateTimestampEv
+FN:242,_ZN3ept3apt18RecordIteratorImpl4sizeEv
+FN:453,_ZNK3ept3apt3Apt9recordEndEv
+FN:638,_Z41__static_initialization_and_destruction_0ii
+FN:638,_GLOBAL__I_apt.cc
+FN:316,_ZN3ept3apt3Apt8IteratorD1Ev
+FN:316,_ZN3ept3apt3Apt8IteratorD2Ev
+FN:300,_ZN3ept3apt3Apt8IteratoraSERKS2_
+FN:289,_ZN3ept3apt3Apt8IteratorC1ERKS2_
+FN:289,_ZN3ept3apt3Apt8IteratorC2ERKS2_
+FN:115,_ZN3ept3apt17AptImplementationD1Ev
+FN:434,_ZN3ept3apt3AptD1Ev
+FN:434,_ZN3ept3apt3AptD2Ev
+FN:463,_ZN3ept3apt3Apt9timestampEv
+FN:320,_ZN3ept3apt3Apt8IteratordeEv
+FN:369,_ZN3ept3apt3Apt14RecordIteratorC1ERKS2_
+FN:369,_ZN3ept3apt3Apt14RecordIteratorC2ERKS2_
+FN:507,_ZNK3ept3apt3Apt10anyVersionERKSs
+FN:497,_ZNK3ept3apt3Apt16installedVersionERKSs
+FN:488,_ZNK3ept3apt3Apt16candidateVersionERKSs
+FN:468,_ZNK3ept3apt3Apt7isValidERKSs
+FN:474,_ZNK3ept3apt3Apt8validateERKNS0_7VersionE
+FN:436,_ZNK3ept3apt3Apt5beginEv
+FN:324,_ZN3ept3apt3Apt8IteratorppEv
+FN:171,_ZN3ept3apt18RecordIteratorImplC1ERNS0_17AptImplementationE
+FN:233,_ZN3ept3apt18RecordIteratorImplD1Ev
+FN:411,_ZN3ept3apt3Apt14RecordIteratoraSERKS2_
+FN:398,_ZN3ept3apt3Apt14RecordIteratorppEv
+FN:375,_ZN3ept3apt3Apt14RecordIteratorD1Ev
+FN:375,_ZN3ept3apt3Apt14RecordIteratorD2Ev
+FN:47,_ZN3ept3apt9ExceptionC1ERKSs
+FN:576,_ZNK3ept3apt3Apt9rawRecordERKNS0_7VersionE
+FN:569,_ZNK3ept3apt3Apt9rawRecordERKSs
+FN:134,_ZN3ept3apt17AptImplementation8depcacheEv
+FN:522,_ZNK3ept3apt3Apt5stateERKSs
+FN:244,_ZN3ept3apt18RecordIteratorImpl6recordEj
+FN:389,_ZN3ept3apt3Apt14RecordIteratorptEv
+FN:380,_ZN3ept3apt3Apt14RecordIteratordeEv
+FN:359,_ZN3ept3apt3Apt14RecordIteratorC1EPNS0_18RecordIteratorImplEj
+FN:448,_ZNK3ept3apt3Apt11recordBeginEv
+FN:359,_ZN3ept3apt3Apt14RecordIteratorC2EPNS0_18RecordIteratorImplEj
+FN:62,_ZN3ept3aptL7aptInitEv
+FN:93,_ZN3ept3apt17AptImplementationC1Ev
+FN:622,_ZN3ept3apt3Apt17checkCacheUpdatesEv
+FN:433,_ZN3ept3apt3AptC1Ev
+FN:433,_ZN3ept3apt3AptC2Ev
+FN:47,_ZN3ept3apt9ExceptionC2ERKSs
+DA:47,0
+DA:48,0
+DA:51,0
+DA:52,0
+DA:54,0
+DA:55,0
+DA:56,0
+DA:58,0
+DA:59,0
+DA:60,0
+DA:62,29
+DA:64,29
+DA:65,29
+DA:67,0
+DA:68,0
+DA:70,0
+DA:79,0
+DA:80,0
+DA:93,29
+DA:96,29
+DA:98,29
+DA:100,29
+DA:101,58
+DA:102,0
+DA:104,29
+DA:105,29
+DA:106,29
+DA:107,0
+DA:109,29
+DA:110,58
+DA:111,58
+DA:112,0
+DA:113,29
+DA:115,29
+DA:117,29
+DA:118,29
+DA:119,29
+DA:120,29
+DA:121,29
+DA:122,29
+DA:124,3980
+DA:126,3980
+DA:129,16099
+DA:131,16099
+DA:134,1
+DA:136,1
+DA:138,1
+DA:139,1
+DA:140,0
+DA:142,1
+DA:147,39519
+DA:149,39519
+DA:150,0
+DA:151,39519
+DA:152,0
+DA:153,39519
+DA:154,0
+DA:156,39519
+DA:157,39060
+DA:158,459
+DA:171,9
+DA:174,9
+DA:177,34002
+DA:179,33993
+DA:180,17901
+DA:184,16092
+DA:185,16092
+DA:187,1926
+DA:188,1926
+DA:189,0
+DA:193,14166
+DA:194,24507
+DA:195,14166
+DA:196,3825
+DA:200,14166
+DA:202,20682
+DA:204,20763
+DA:206,10422
+DA:208,81
+DA:209,81
+DA:213,10422
+DA:214,81
+DA:217,14166
+DA:218,3906
+DA:223,9
+DA:231,9
+DA:233,9
+DA:235,9
+DA:236,9
+DA:237,9
+DA:239,14
+DA:240,14
+DA:242,3906
+DA:244,3906
+DA:249,3906
+DA:252,18
+DA:253,18
+DA:254,0
+DA:256,18
+DA:257,9
+DA:258,18
+DA:259,0
+DA:261,18
+DA:267,3906
+DA:269,3906
+DA:272,171
+DA:273,171
+DA:274,0
+DA:277,3906
+DA:278,3906
+DA:279,0
+DA:280,3906
+DA:283,3906
+DA:285,3906
+DA:289,20
+DA:291,20
+DA:293,10
+DA:294,10
+DA:295,10
+DA:297,10
+DA:298,20
+DA:300,0
+DA:302,0
+DA:304,0
+DA:305,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:311,0
+DA:313,0
+DA:316,3605
+DA:318,3605
+DA:319,3605
+DA:320,5364
+DA:322,5364
+DA:324,7152
+DA:326,7152
+DA:327,7152
+DA:328,22260
+DA:329,7956
+DA:330,7152
+DA:332,4
+DA:333,4
+DA:335,7152
+DA:337,0
+DA:339,0
+DA:340,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:345,0
+DA:347,7157
+DA:349,7157
+DA:350,4
+DA:351,7153
+DA:352,7153
+DA:353,0
+DA:354,0
+DA:355,0
+DA:359,9
+DA:360,9
+DA:362,9
+DA:364,9
+DA:365,9
+DA:366,9
+DA:368,9
+DA:369,10
+DA:370,10
+DA:372,10
+DA:373,5
+DA:374,10
+DA:375,3500
+DA:377,3500
+DA:378,1
+DA:379,3500
+DA:380,3906
+DA:382,3906
+DA:384,3464
+DA:385,3464
+DA:387,3906
+DA:389,868
+DA:391,868
+DA:393,433
+DA:394,433
+DA:396,868
+DA:398,3906
+DA:400,3906
+DA:401,3906
+DA:404,9
+DA:405,8
+DA:406,9
+DA:407,9
+DA:409,3906
+DA:411,0
+DA:414,0
+DA:415,0
+DA:416,0
+DA:417,0
+DA:418,0
+DA:419,0
+DA:420,0
+DA:421,0
+DA:423,0
+DA:425,0
+DA:427,3915
+DA:429,3915
+DA:433,28
+DA:434,28
+DA:436,4
+DA:438,4
+DA:439,4
+DA:440,4
+DA:443,3581
+DA:445,3581
+DA:448,9
+DA:450,9
+DA:453,3481
+DA:455,3481
+DA:458,0
+DA:460,0
+DA:463,16
+DA:465,16
+DA:468,5
+DA:470,5
+DA:471,5
+DA:474,4
+DA:476,4
+DA:477,5
+DA:478,4
+DA:480,3
+DA:481,3
+DA:482,3
+DA:483,2
+DA:485,1
+DA:488,4
+DA:490,4
+DA:491,4
+DA:492,3
+DA:493,3
+DA:494,3
+DA:497,2
+DA:499,2
+DA:500,2
+DA:501,1
+DA:502,1
+DA:503,1
+DA:504,1
+DA:507,4
+DA:509,4
+DA:510,4
+DA:512,3
+DA:513,3
+DA:515,0
+DA:516,0
+DA:517,0
+DA:519,3
+DA:522,2
+DA:524,2
+DA:525,2
+DA:526,1
+DA:528,1
+DA:531,1
+DA:536,1
+DA:537,1
+DA:540,1
+DA:543,1
+DA:547,1
+DA:548,0
+DA:551,1
+DA:552,0
+DA:553,1
+DA:554,0
+DA:555,1
+DA:556,1
+DA:557,1
+DA:558,0
+DA:559,1
+DA:560,0
+DA:561,1
+DA:562,0
+DA:563,1
+DA:564,0
+DA:566,1
+DA:569,1
+DA:573,1
+DA:576,4
+DA:578,4
+DA:579,4
+DA:580,5
+DA:582,4
+DA:583,4
+DA:584,4
+DA:589,3
+DA:590,3
+DA:591,3
+DA:592,3
+DA:593,3
+DA:594,0
+DA:597,3
+DA:598,3
+DA:599,0
+DA:601,3
+DA:602,6
+DA:603,0
+DA:606,3
+DA:607,3
+DA:608,3
+DA:610,0
+DA:611,0
+DA:614,3
+DA:615,6
+DA:616,3
+DA:619,1
+DA:622,2
+DA:624,2
+DA:627,1
+DA:628,1
+DA:630,2
+DA:632,1
+DA:634,1
+DA:635,1
+DA:638,6
+BA:52,0
+BA:52,0
+BA:52,0
+BA:52,0
+BA:55,0
+BA:55,0
+BA:55,0
+BA:55,0
+BA:64,1
+BA:64,2
+BA:67,0
+BA:67,0
+BA:79,0
+BA:79,0
+BA:101,1
+BA:101,2
+BA:106,1
+BA:106,2
+BA:111,1
+BA:111,2
+BA:117,2
+BA:117,2
+BA:117,2
+BA:117,1
+BA:118,2
+BA:118,1
+BA:118,2
+BA:118,1
+BA:119,2
+BA:119,1
+BA:119,2
+BA:119,1
+BA:120,2
+BA:120,1
+BA:120,2
+BA:120,1
+BA:121,2
+BA:121,1
+BA:121,2
+BA:121,1
+BA:136,2
+BA:136,1
+BA:139,1
+BA:139,2
+BA:149,1
+BA:149,2
+BA:149,0
+BA:149,0
+BA:151,1
+BA:151,2
+BA:153,1
+BA:153,2
+BA:156,2
+BA:156,2
+BA:177,2
+BA:177,2
+BA:179,2
+BA:179,2
+BA:185,2
+BA:185,2
+BA:187,2
+BA:187,1
+BA:194,2
+BA:194,2
+BA:195,2
+BA:195,2
+BA:200,2
+BA:200,2
+BA:202,2
+BA:202,2
+BA:204,2
+BA:204,2
+BA:206,2
+BA:206,2
+BA:213,2
+BA:213,2
+BA:217,2
+BA:217,2
+BA:235,2
+BA:235,1
+BA:249,2
+BA:249,2
+BA:249,2
+BA:249,2
+BA:249,2
+BA:249,2
+BA:253,1
+BA:253,2
+BA:256,2
+BA:256,2
+BA:258,1
+BA:258,2
+BA:269,2
+BA:269,2
+BA:273,1
+BA:273,2
+BA:278,1
+BA:278,2
+BA:291,2
+BA:291,2
+BA:291,0
+BA:291,0
+BA:302,0
+BA:302,0
+BA:304,0
+BA:304,0
+BA:305,0
+BA:305,0
+BA:318,2
+BA:318,2
+BA:318,0
+BA:318,0
+BA:328,2
+BA:328,2
+BA:328,2
+BA:328,2
+BA:328,2
+BA:328,2
+BA:330,2
+BA:330,2
+BA:339,0
+BA:339,0
+BA:339,0
+BA:339,0
+BA:341,0
+BA:341,0
+BA:341,0
+BA:341,0
+BA:349,2
+BA:349,2
+BA:349,2
+BA:349,1
+BA:351,2
+BA:351,1
+BA:351,2
+BA:351,1
+BA:362,2
+BA:362,1
+BA:362,0
+BA:362,0
+BA:372,2
+BA:372,2
+BA:372,0
+BA:372,0
+BA:377,2
+BA:377,2
+BA:377,2
+BA:377,2
+BA:377,2
+BA:377,2
+BA:377,0
+BA:377,0
+BA:377,0
+BA:377,0
+BA:377,0
+BA:377,0
+BA:378,2
+BA:378,1
+BA:378,0
+BA:378,0
+BA:382,2
+BA:382,2
+BA:391,2
+BA:391,2
+BA:401,2
+BA:401,2
+BA:404,2
+BA:404,1
+BA:404,2
+BA:404,2
+BA:404,2
+BA:404,2
+BA:405,2
+BA:405,1
+BA:414,0
+BA:414,0
+BA:415,0
+BA:415,0
+BA:415,0
+BA:415,0
+BA:415,0
+BA:415,0
+BA:416,0
+BA:416,0
+BA:425,0
+BA:425,0
+BA:425,0
+BA:425,0
+BA:429,2
+BA:429,2
+BA:429,1
+BA:429,2
+BA:434,2
+BA:434,1
+BA:434,0
+BA:434,0
+BA:477,2
+BA:477,2
+BA:478,2
+BA:478,2
+BA:481,2
+BA:481,1
+BA:482,2
+BA:482,2
+BA:491,2
+BA:491,2
+BA:493,1
+BA:493,2
+BA:500,2
+BA:500,2
+BA:501,1
+BA:501,2
+BA:503,1
+BA:503,2
+BA:510,2
+BA:510,2
+BA:513,1
+BA:513,2
+BA:515,0
+BA:515,0
+BA:517,0
+BA:517,0
+BA:525,2
+BA:525,2
+BA:531,2
+BA:531,1
+BA:531,2
+BA:531,1
+BA:531,2
+BA:531,1
+BA:531,2
+BA:531,1
+BA:537,2
+BA:537,1
+BA:547,2
+BA:547,1
+BA:547,1
+BA:547,2
+BA:547,1
+BA:547,2
+BA:551,1
+BA:551,2
+BA:553,1
+BA:553,2
+BA:555,2
+BA:555,1
+BA:557,1
+BA:557,2
+BA:559,1
+BA:559,2
+BA:561,1
+BA:561,2
+BA:563,1
+BA:563,2
+BA:579,1
+BA:579,2
+BA:580,2
+BA:580,2
+BA:583,2
+BA:583,1
+BA:584,2
+BA:584,2
+BA:590,2
+BA:590,1
+BA:591,2
+BA:591,1
+BA:593,1
+BA:593,2
+BA:598,1
+BA:598,2
+BA:602,1
+BA:602,2
+BA:608,2
+BA:608,1
+BA:608,1
+BA:608,2
+BA:608,1
+BA:608,2
+BA:610,0
+BA:610,0
+BA:615,2
+BA:615,1
+BA:624,2
+BA:624,2
+BA:627,2
+BA:627,1
+BA:638,2
+BA:638,1
+BA:638,2
+BA:638,1
+LF:323
+LH:248
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/apt/apt.h
+FN:45,_ZNK3ept3apt9Exception4typeEv
+FN:73,_ZN3ept3apt3Apt8IteratorC1EPv
+FN:76,_ZN3ept3apt3Apt8IteratorC1Ev
+FN:107,_ZN3ept3apt3Apt14RecordIteratorC1Ev
+FN:46,_ZNK3ept3apt9Exception4descEv
+FN:43,_ZN3ept3apt9ExceptionD1Ev
+FN:43,_ZN3ept3apt9ExceptionD0Ev
+DA:43,0
+DA:45,0
+DA:46,0
+DA:73,4
+DA:76,3581
+DA:107,3481
+BA:43,0
+BA:43,0
+BA:43,0
+BA:43,0
+LF:6
+LH:3
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/apt/version.h
+FN:41,_ZN3ept3apt7VersionD1Ev
+FN:50,_ZN3ept3apt7VersionC1Ev
+FN:61,_ZNK3ept3apt7Version4nameEv
+FN:67,_ZNK3ept3apt7Version7versionEv
+FN:55,_ZN3ept3apt7VersionC1ERKSsS3_
+FN:41,_ZN3ept3apt7VersionC1ERKS1_
+DA:41,0
+DA:50,0
+DA:55,0
+DA:56,0
+DA:61,0
+DA:67,0
+LF:6
+LH:0
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.h
+DA:86,2
+BA:86,1
+BA:86,2
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt.h
+FN:72,_ZN3ept4core12PackageStateC1Ej
+FN:76,_ZN3ept4core12PackageStateC1Ev
+DA:72,0
+DA:73,0
+DA:74,0
+DA:76,1
+LF:4
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/wibble/exception.h
+FN:190,_ZNK6wibble9exception7Generic4typeEv
+FN:137,_ZN6wibble9exception7ContextD2Ev
+FN:109,_ZN6wibble9exception10AddContext7contextEv
+FN:213,_ZNK6wibble9exception7Generic4whatEv
+FN:193,_ZNK6wibble9exception7Generic4descEv
+FN:154,_ZNK6wibble9exception7Context13formatContextEv
+FN:205,_ZNK6wibble9exception7Generic8fullInfoEv
+FN:187,_ZN6wibble9exception7GenericD2Ev
+FN:187,_ZN6wibble9exception7GenericD0Ev
+FN:187,_ZN6wibble9exception7GenericD1Ev
+FN:117,_ZN6wibble9exception10AddContext11copyContextISt20back_insert_iteratorISt6vectorISsSaISsEEEEEvT_
+FN:153,_ZN6wibble9exception7Context10addContextERKSs
+FN:147,_ZN6wibble9exception7ContextC2ERKSs
+FN:186,_ZN6wibble9exception7GenericC2ERKSs
+DA:109,0
+DA:110,0
+DA:111,0
+DA:112,0
+DA:113,0
+DA:117,0
+DA:118,0
+DA:119,0
+DA:137,0
+DA:147,0
+DA:148,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:153,0
+DA:154,0
+DA:155,0
+DA:156,0
+DA:157,0
+DA:159,0
+DA:161,0
+DA:162,0
+DA:163,0
+DA:186,0
+DA:187,0
+DA:190,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:205,0
+DA:206,0
+DA:207,0
+DA:209,0
+DA:210,0
+DA:213,0
+BA:110,0
+BA:110,0
+BA:156,0
+BA:156,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:187,0
+BA:207,0
+BA:207,0
+LF:35
+LH:0
+end_of_record
+SF:/usr/include/apt-pkg/cachefile.h
+FN:45,_ZN12pkgCacheFileixERKN8pkgCache11PkgIteratorE
+DA:45,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/apt-pkg/cacheiterators.h
+FN:59,_ZNK8pkgCache11PkgIterator3endEv
+FN:62,_ZNK8pkgCache11PkgIteratoreqERKS0_
+FN:63,_ZNK8pkgCache11PkgIteratorneERKS0_
+FN:66,_ZN8pkgCache11PkgIteratorptEv
+FN:67,_ZNK8pkgCache11PkgIteratorptEv
+FN:73,_ZNK8pkgCache11PkgIterator4NameEv
+FN:91,_ZN8pkgCache11PkgIteratorC1Ev
+FN:105,_ZN8pkgCache11VerIteratorppEi
+FN:107,_ZNK8pkgCache11VerIterator3endEv
+FN:108,_ZN8pkgCache11VerIteratoraSERKS0_
+FN:112,_ZNK8pkgCache11VerIteratorneERKS0_
+FN:124,_ZNK8pkgCache11VerIterator6VerStrEv
+FN:142,_ZN8pkgCache11VerIteratorC1ERS_PNS_7VersionE
+FN:324,_ZN8pkgCache15PkgFileIteratorptEv
+FN:327,_ZN8pkgCache15PkgFileIteratorcvPNS_11PackageFileEEv
+FN:329,_ZN8pkgCache15PkgFileIterator5CacheEv
+FN:331,_ZNK8pkgCache15PkgFileIterator8FileNameEv
+FN:347,_ZN8pkgCache15PkgFileIteratorC1Ev
+FN:349,_ZN8pkgCache15PkgFileIteratorC1ERS_PNS_11PackageFileE
+FN:361,_ZN8pkgCache15VerFileIteratorppEi
+FN:362,_ZN8pkgCache15VerFileIteratorppEv
+FN:363,_ZNK8pkgCache15VerFileIterator3endEv
+FN:370,_ZN8pkgCache15VerFileIteratorptEv
+FN:373,_ZN8pkgCache15VerFileIteratorcvPNS_7VerFileEEv
+FN:377,_ZNK8pkgCache15VerFileIterator4FileEv
+FN:381,_ZN8pkgCache15VerFileIteratorC1ERS_PNS_7VerFileE
+FN:417,_ZNK8pkgCache11PkgIterator11VersionListEv
+FN:419,_ZNK8pkgCache11PkgIterator10CurrentVerEv
+FN:431,_ZNK8pkgCache11VerIterator8FileListEv
+FN:46,_ZN8pkgCache11PkgIteratorC1ERS_
+FN:58,_ZN8pkgCache11PkgIteratorppEv
+DA:46,0
+DA:48,0
+DA:49,0
+DA:50,0
+DA:58,0
+DA:59,0
+DA:62,0
+DA:63,0
+DA:66,0
+DA:67,0
+DA:73,0
+DA:91,0
+DA:105,0
+DA:107,0
+DA:108,0
+DA:112,0
+DA:124,0
+DA:142,0
+DA:143,0
+DA:145,0
+DA:146,0
+DA:147,0
+DA:324,0
+DA:327,0
+DA:329,0
+DA:331,0
+DA:347,0
+DA:349,0
+DA:361,0
+DA:362,0
+DA:363,0
+DA:370,0
+DA:373,0
+DA:377,0
+DA:381,0
+DA:417,0
+DA:418,0
+DA:419,2
+DA:420,2
+DA:431,0
+DA:432,0
+BA:59,0
+BA:59,0
+BA:59,0
+BA:59,0
+BA:73,0
+BA:73,0
+BA:105,0
+BA:105,0
+BA:107,0
+BA:107,0
+BA:107,0
+BA:107,0
+BA:124,0
+BA:124,0
+BA:145,0
+BA:145,0
+BA:327,0
+BA:327,0
+BA:331,0
+BA:331,0
+BA:361,0
+BA:361,0
+BA:373,0
+BA:373,0
+LF:41
+LH:2
+end_of_record
+SF:/usr/include/apt-pkg/depcache.h
+FN:242,_ZNK11pkgDepCache10StateCache6DeleteEv
+FN:243,_ZNK11pkgDepCache10StateCache4KeepEv
+FN:248,_ZNK11pkgDepCache10StateCache9NowBrokenEv
+FN:250,_ZNK11pkgDepCache10StateCache10InstBrokenEv
+FN:252,_ZNK11pkgDepCache10StateCache7InstallEv
+FN:342,_ZN11pkgDepCacheixERKN8pkgCache11PkgIteratorE
+DA:242,0
+DA:243,0
+DA:248,0
+DA:250,0
+DA:252,0
+DA:342,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/apt-pkg/error.h
+FN:83,_ZN11GlobalError12PendingErrorEv
+FN:84,_ZN11GlobalError5emptyEv
+DA:83,3
+DA:84,0
+LF:2
+LH:1
+end_of_record
+SF:/usr/include/apt-pkg/fileutl.h
+FN:63,_ZN6FileFd6IsOpenEv
+FN:75,_ZN6FileFdC1Ei
+FN:70,_ZN6FileFdC1ESsNS_8OpenModeEm
+DA:63,0
+DA:70,53
+DA:71,53
+DA:73,53
+DA:74,53
+DA:75,0
+LF:6
+LH:4
+end_of_record
+SF:/usr/include/apt-pkg/pkgcache.h
+FN:326,_ZN8pkgCache8PkgBeginEv
+DA:326,0
+DA:327,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/apt-pkg/progress.h
+FN:53,_ZN10OpProgress6UpdateEv
+FN:62,_ZN10OpProgress4DoneEv
+FN:65,_ZN10OpProgressD1Ev
+FN:65,_ZN10OpProgressD0Ev
+DA:53,24433
+DA:62,62
+DA:65,29
+BA:65,1
+BA:65,2
+BA:65,0
+BA:65,0
+LF:3
+LH:3
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:98,_ZNSaIPN8pkgCache7VerFileEEC1Ev
+FN:106,_ZNSaIPN8pkgCache7VerFileEED2Ev
+FN:106,_ZNSaIPN8pkgCache7VerFileEED1Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+FN:106,_ZNSaISsED2Ev
+FN:98,_ZNSaISsEC2Ev
+FN:100,_ZNSaIPN8pkgCache7VerFileEEC2ERKS2_
+FN:118,_ZSteqIcEbRKSaIT_ES3_
+DA:98,9
+DA:100,9
+DA:101,9
+DA:106,9
+DA:118,0
+DA:119,0
+LF:6
+LH:4
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_ios.h
+FN:131,_ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv
+FN:454,_ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev
+FN:276,_ZNSt9basic_iosIcSt11char_traitsIcEED2Ev
+FN:151,_ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate
+DA:131,0
+DA:132,0
+DA:151,0
+DA:152,0
+DA:276,0
+DA:454,0
+DA:456,0
+DA:457,0
+BA:276,0
+BA:276,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:1534,_ZNKSs5c_strEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:612,_ZNKSs6lengthEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:1544,_ZNKSs4dataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:2421,_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E
+FN:339,_ZNSs7_M_copyEPcPKcj
+FN:384,_ZNSs13_S_copy_charsEPcS_S_
+FN:1462,_ZNSs16_S_construct_auxIPcEES0_T_S1_RKSaIcESt12__false_type
+FN:1478,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcE
+FN:835,_ZNSs6appendEPKc
+FN:2121,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_
+FN:2084,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_
+FN:773,_ZNSspLERKSs
+FN:501,_ZNSsaSERKSs
+FN:2188,_ZSteqIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_EPKS3_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:339,0
+DA:341,0
+DA:342,0
+DA:344,0
+DA:345,0
+DA:384,0
+DA:385,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:612,0
+DA:613,0
+DA:686,0
+DA:687,0
+DA:773,0
+DA:774,0
+DA:835,0
+DA:838,0
+DA:1462,0
+DA:1465,0
+DA:1478,0
+DA:1481,0
+DA:1534,0
+DA:1535,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2084,0
+DA:2086,0
+DA:2087,0
+DA:2088,0
+DA:2121,0
+DA:2123,0
+DA:2124,0
+DA:2125,0
+DA:2188,0
+DA:2189,0
+DA:2421,0
+DA:2425,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:341,0
+BA:341,0
+LF:71
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:130,_ZNSs12_S_constructIPcEES0_T_S1_RKSaIcESt20forward_iterator_tag
+FN:234,_ZNSsC1IPcEET_S1_RKSaIcE
+FN:668,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_
+DA:130,0
+DA:133,0
+DA:134,0
+DA:137,0
+DA:139,0
+DA:142,0
+DA:144,0
+DA:146,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:152,0
+DA:153,0
+DA:234,0
+DA:235,0
+DA:236,0
+DA:668,0
+DA:673,0
+DA:674,0
+DA:675,0
+DA:676,0
+DA:677,0
+DA:678,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:133,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+BA:137,0
+LF:23
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:273,_ZNSt11char_traitsIcE4copyEPcPKcj
+DA:245,0
+DA:246,0
+DA:261,0
+DA:262,0
+DA:273,0
+DA:274,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/ios_base.h
+FN:125,_ZStorSt13_Ios_OpenmodeS_
+FN:163,_ZStorSt12_Ios_IostateS_
+DA:125,0
+DA:126,0
+DA:163,0
+DA:164,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algo.h
+FN:123,_ZSt8__medianIPN8pkgCache7VerFileEPFbPKS1_S4_EERKT_S9_S9_S9_T0_
+FN:1731,_ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEES4_PFbPKS3_SB_EEvT_T0_T1_
+FN:1806,_ZSt26__unguarded_insertion_sortIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEPFbPKS3_SB_EEvT_SE_T0_
+FN:1877,_ZSt21__unguarded_partitionIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEES4_PFbPKS3_SB_EET_SE_SE_T0_T1_
+FN:1568,_ZSt13__heap_selectIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEPFbPKS3_SB_EEvT_SE_SE_T0_
+FN:4661,_ZSt12partial_sortIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEPFbPKS3_SB_EEvT_SE_SE_T0_
+FN:1930,_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEiPFbPKS3_SB_EEvT_SE_T0_T1_
+FN:1771,_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEPFbPKS3_SB_EEvT_SE_T0_
+FN:1840,_ZSt22__final_insertion_sortIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEPFbPKS3_SB_EEvT_SE_T0_
+FN:1970,_ZSt4__lgi
+FN:4806,_ZSt4sortIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEPFbPKS3_SB_EEvT_SE_T0_
+DA:123,0
+DA:128,0
+DA:129,0
+DA:130,0
+DA:131,0
+DA:132,0
+DA:134,0
+DA:135,0
+DA:136,0
+DA:137,0
+DA:138,0
+DA:140,0
+DA:1568,0
+DA:1570,0
+DA:1571,0
+DA:1572,0
+DA:1573,0
+DA:1574,0
+DA:1731,0
+DA:1733,0
+DA:1734,0
+DA:1735,0
+DA:1737,0
+DA:1738,0
+DA:1739,0
+DA:1741,0
+DA:1742,0
+DA:1771,0
+DA:1773,0
+DA:1775,0
+DA:1778,0
+DA:1779,0
+DA:1781,0
+DA:1782,0
+DA:1785,0
+DA:1806,0
+DA:1811,0
+DA:1812,0
+DA:1813,0
+DA:1840,0
+DA:1842,0
+DA:1844,0
+DA:1845,0
+DA:1849,0
+DA:1850,0
+DA:1877,0
+DA:1879,0
+DA:1881,0
+DA:1882,0
+DA:1883,0
+DA:1884,0
+DA:1885,0
+DA:1886,0
+DA:1887,0
+DA:1888,0
+DA:1889,0
+DA:1930,0
+DA:1935,0
+DA:1937,0
+DA:1939,0
+DA:1940,0
+DA:1942,0
+DA:1952,0
+DA:1953,0
+DA:1954,0
+DA:1970,0
+DA:1971,0
+DA:4661,0
+DA:4674,0
+DA:4675,0
+DA:4676,0
+DA:4806,0
+DA:4818,0
+DA:4820,0
+DA:4822,0
+DA:4824,0
+BA:128,0
+BA:128,0
+BA:129,0
+BA:129,0
+BA:131,0
+BA:131,0
+BA:135,0
+BA:135,0
+BA:137,0
+BA:137,0
+BA:1571,0
+BA:1571,0
+BA:1572,0
+BA:1572,0
+BA:1735,0
+BA:1735,0
+BA:1773,0
+BA:1773,0
+BA:1775,0
+BA:1775,0
+BA:1779,0
+BA:1779,0
+BA:1811,0
+BA:1811,0
+BA:1842,0
+BA:1842,0
+BA:1881,0
+BA:1881,0
+BA:1884,0
+BA:1884,0
+BA:1886,0
+BA:1886,0
+BA:1935,0
+BA:1935,0
+BA:1937,0
+BA:1937,0
+BA:4818,0
+BA:4818,0
+LF:76
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb0EE3__bES7_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb0EE3__bES6_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEELb1EE3__bES7_
+FN:268,_ZNSt12__niter_baseISt16ostream_iteratorISscSt11char_traitsIcEELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIPSsLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEELb1EE3__bES6_
+FN:268,_ZNSt12__niter_baseISt20back_insert_iteratorISt6vectorISsSaISsEEELb0EE3__bES4_
+FN:286,_ZNSt12__miter_baseIPPN8pkgCache7VerFileELb0EE3__bES3_
+FN:268,_ZNSt12__niter_baseIPSsLb0EE3__bES0_
+FN:268,_ZNSt12__niter_baseIPPN8pkgCache7VerFileELb0EE3__bES3_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEELb0EE3__bES9_
+FN:104,_ZNSt11__iter_swapILb1EE9iter_swapIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS6_SaIS6_EEEESB_EEvT_T0_
+FN:121,_ZSt9iter_swapIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEES9_EvT_T0_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEELb1EE3__bES9_
+FN:748,_ZSt10__fill_n_aIPPN8pkgCache7VerFileEjS2_EN9__gnu_cxx11__enable_ifIXsrSt11__is_scalarIT1_E7__valueET_E6__typeES9_T0_RKS7_
+FN:778,_ZSt6fill_nIPPN8pkgCache7VerFileEjS2_ET_S4_T0_RKT1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPKSsSt16ostream_iteratorISscSt11char_traitsIcEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPKSsSt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET1_T0_SD_SC_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEESt16ostream_iteratorISscSt11char_traitsIcEEET0_T_SD_SC_
+FN:539,_ZNSt20__copy_move_backwardILb0ELb0ESt26random_access_iterator_tagE13__copy_move_bIPSsS3_EET0_T_S5_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPSsS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPSsS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPSsS0_ET0_T_S2_S1_
+FN:337,_ZNSt11__copy_moveILb0ELb0ESt26random_access_iterator_tagE8__copy_mIPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEEET0_T_SA_S9_
+FN:385,_ZSt13__copy_move_aILb0EPSsSt20back_insert_iteratorISt6vectorISsSaISsEEEET1_T0_S7_S6_
+FN:430,_ZSt14__copy_move_a2ILb0EN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET1_T0_SA_S9_
+FN:456,_ZSt4copyIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEESt20back_insert_iteratorIS5_EET0_T_SA_S9_
+FN:375,_ZNSt11__copy_moveILb0ELb1ESt26random_access_iterator_tagE8__copy_mIPN8pkgCache7VerFileEEEPT_PKS6_S9_S7_
+FN:385,_ZSt13__copy_move_aILb0EPPN8pkgCache7VerFileES3_ET1_T0_S5_S4_
+FN:430,_ZSt14__copy_move_a2ILb0EPPN8pkgCache7VerFileES3_ET1_T0_S5_S4_
+FN:456,_ZSt4copyIPPN8pkgCache7VerFileES3_ET0_T_S5_S4_
+FN:569,_ZNSt20__copy_move_backwardILb0ELb1ESt26random_access_iterator_tagE13__copy_move_bIPN8pkgCache7VerFileEEEPT_PKS6_S9_S7_
+FN:579,_ZSt22__copy_move_backward_aILb0EPPN8pkgCache7VerFileES3_ET1_T0_S5_S4_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPPN8pkgCache7VerFileES3_ET1_T0_S5_S4_
+FN:624,_ZSt13copy_backwardIPPN8pkgCache7VerFileES3_ET0_T_S5_S4_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEES9_ET1_T0_SB_SA_
+FN:624,_ZSt13copy_backwardIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEES9_ET0_T_SB_SA_
+DA:104,0
+DA:106,0
+DA:107,0
+DA:121,0
+DA:142,0
+DA:146,0
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,0
+DA:269,0
+DA:276,0
+DA:277,0
+DA:286,0
+DA:287,0
+DA:337,0
+DA:340,0
+DA:342,0
+DA:343,0
+DA:344,0
+DA:346,0
+DA:375,0
+DA:377,0
+DA:379,0
+DA:385,0
+DA:393,0
+DA:396,0
+DA:430,0
+DA:435,0
+DA:456,0
+DA:466,0
+DA:539,0
+DA:542,0
+DA:543,0
+DA:544,0
+DA:569,0
+DA:571,0
+DA:572,0
+DA:573,0
+DA:579,0
+DA:587,0
+DA:592,0
+DA:597,0
+DA:602,0
+DA:624,0
+DA:636,0
+DA:748,9
+DA:750,9
+DA:751,9
+DA:752,0
+DA:753,9
+DA:778,9
+DA:784,9
+BA:215,0
+BA:215,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:340,0
+BA:542,0
+BA:542,0
+BA:751,1
+BA:751,2
+LF:54
+LH:6
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:97,_ZSt8_DestroyIPPN8pkgCache7VerFileEEvT_S4_
+FN:126,_ZSt8_DestroyIPPN8pkgCache7VerFileES2_EvT_S4_RSaIT0_E
+FN:87,_ZSt8_DestroyISsEvPT_
+FN:97,_ZSt8_DestroyIPSsEvT_S1_
+FN:126,_ZSt8_DestroyIPSsSsEvT_S1_RSaIT0_E
+DA:87,0
+DA:88,0
+DA:97,0
+DA:101,0
+DA:103,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+BA:101,0
+BA:101,0
+LF:9
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_heap.h
+FN:177,_ZSt11__push_heapIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEiS4_PFbPKS3_SB_EEvT_T0_SF_T1_T2_
+FN:295,_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEiS4_PFbPKS3_SB_EEvT_T0_SF_T1_T2_
+FN:412,_ZSt9make_heapIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEPFbPKS3_SB_EEvT_SE_T0_
+FN:322,_ZSt10__pop_heapIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEPFbPKS3_SB_EEvT_SE_SE_T0_
+FN:350,_ZSt8pop_heapIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEPFbPKS3_SB_EEvT_SE_T0_
+FN:477,_ZSt9sort_heapIN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS4_SaIS4_EEEEPFbPKS3_SB_EEvT_SE_T0_
+DA:177,0
+DA:179,0
+DA:180,0
+DA:183,0
+DA:184,0
+DA:185,0
+DA:187,0
+DA:188,0
+DA:295,0
+DA:297,0
+DA:298,0
+DA:299,0
+DA:301,0
+DA:302,0
+DA:304,0
+DA:305,0
+DA:306,0
+DA:308,0
+DA:310,0
+DA:311,0
+DA:313,0
+DA:315,0
+DA:317,0
+DA:322,0
+DA:329,0
+DA:330,0
+DA:331,0
+DA:334,0
+DA:350,0
+DA:358,0
+DA:359,0
+DA:412,0
+DA:424,0
+DA:425,0
+DA:427,0
+DA:428,0
+DA:429,0
+DA:431,0
+DA:432,0
+DA:434,0
+DA:435,0
+DA:436,0
+DA:477,0
+DA:485,0
+DA:486,0
+DA:487,0
+BA:180,0
+BA:180,0
+BA:180,0
+BA:180,0
+BA:180,0
+BA:180,0
+BA:299,0
+BA:299,0
+BA:302,0
+BA:302,0
+BA:308,0
+BA:308,0
+BA:308,0
+BA:308,0
+BA:424,0
+BA:424,0
+BA:434,0
+BA:434,0
+BA:485,0
+BA:485,0
+LF:46
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEdeEv
+FN:398,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEC1ERS2_
+FN:456,_ZSt13back_inserterISt6vectorISsSaISsEEESt20back_insert_iteratorIT_ERS4_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEEC1ERKS2_
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEEC1ERKS4_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEE4baseEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKSsSt6vectorISsSaISsEEE4baseEv
+FN:769,_ZN9__gnu_cxxeqIPKSsSt6vectorISsSaISsEEEEbRKNS_17__normal_iteratorIT_T0_EESB_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEE4baseEv
+FN:781,_ZN9__gnu_cxxneIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_
+FN:846,_ZN9__gnu_cxxmiIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEEENS_17__normal_iteratorIT_T0_E15difference_typeERKSB_SE_
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEEdeEv
+FN:735,_ZNK9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEEplERKi
+FN:743,_ZNK9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEEmiERKi
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEEppEv
+FN:715,_ZN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEEmmEv
+FN:794,_ZN9__gnu_cxxltIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_
+FN:769,_ZN9__gnu_cxxeqIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_
+FN:722,_ZN9__gnu_cxx17__normal_iteratorIPPN8pkgCache7VerFileESt6vectorIS3_SaIS3_EEEmmEi
+FN:429,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEdeEv
+FN:434,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEppEv
+FN:412,_ZNSt20back_insert_iteratorISt6vectorISsSaISsEEEaSERKSs
+DA:398,0
+DA:412,0
+DA:414,0
+DA:415,0
+DA:429,0
+DA:430,0
+DA:434,0
+DA:435,0
+DA:456,0
+DA:457,0
+DA:683,0
+DA:695,0
+DA:696,0
+DA:703,0
+DA:705,0
+DA:706,0
+DA:715,0
+DA:717,0
+DA:718,0
+DA:722,0
+DA:723,0
+DA:735,0
+DA:736,0
+DA:743,0
+DA:744,0
+DA:747,0
+DA:748,0
+DA:769,0
+DA:770,0
+DA:781,0
+DA:782,0
+DA:794,0
+DA:795,0
+DA:846,0
+DA:847,0
+LF:35
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h
+FN:93,_ZSt10__distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_St26random_access_iterator_tag
+FN:115,_ZSt8distanceIPcENSt15iterator_traitsIT_E15difference_typeES2_S2_
+DA:93,0
+DA:98,0
+DA:115,0
+DA:119,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator_base_types.h
+FN:111,_ZNSt8iteratorISt18input_iterator_tagSsvvvEC2Ev
+FN:111,_ZNSt8iteratorISt19output_iterator_tagvvvvEC2Ev
+FN:166,_ZSt19__iterator_categoryIPcENSt15iterator_traitsIT_E17iterator_categoryERKS2_
+DA:111,7105
+DA:166,0
+DA:167,0
+LF:3
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_move.h
+FN:80,_ZSt4swapIPN8pkgCache7VerFileEEvRT_S4_
+DA:80,0
+DA:85,0
+DA:86,0
+DA:87,0
+DA:88,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:208,_ZNSt22__uninitialized_fill_nILb1EE20uninitialized_fill_nIPPN8pkgCache7VerFileEjS4_EEvT_T0_RKT1_
+FN:223,_ZSt20uninitialized_fill_nIPPN8pkgCache7VerFileEjS2_EvT_T0_RKT1_
+FN:322,_ZSt24__uninitialized_fill_n_aIPPN8pkgCache7VerFileEjS2_S2_EvT_T0_RKT1_RSaIT2_E
+FN:73,_ZNSt20__uninitialized_copyILb0EE18uninitialized_copyIPSsS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPSsS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPSsS0_SsET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPSsS0_SaISsEET0_T_S3_S2_RT1_
+FN:97,_ZNSt20__uninitialized_copyILb1EE18uninitialized_copyIPPN8pkgCache7VerFileES5_EET0_T_S7_S6_
+FN:113,_ZSt18uninitialized_copyIPPN8pkgCache7VerFileES3_ET0_T_S5_S4_
+FN:261,_ZSt22__uninitialized_copy_aIPPN8pkgCache7VerFileES3_S2_ET0_T_S5_S4_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPPN8pkgCache7VerFileES3_SaIS2_EET0_T_S6_S5_RT1_
+DA:73,0
+DA:75,0
+DA:78,0
+DA:79,0
+DA:81,0
+DA:83,0
+DA:85,0
+DA:86,0
+DA:97,0
+DA:98,0
+DA:113,0
+DA:122,0
+DA:208,9
+DA:209,9
+DA:223,9
+DA:228,9
+DA:230,9
+DA:261,0
+DA:262,0
+DA:268,0
+DA:272,0
+DA:322,9
+DA:323,9
+BA:78,0
+BA:78,0
+BA:79,0
+BA:79,0
+LF:23
+LH:7
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:484,_ZNKSt6vectorIPN8pkgCache7VerFileESaIS2_EE4sizeEv
+FN:562,_ZNSt6vectorIPN8pkgCache7VerFileESaIS2_EEixEj
+FN:97,_ZNSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:404,_ZNKSt6vectorISsSaISsEE3endEv
+FN:386,_ZNKSt6vectorISsSaISsEE5beginEv
+FN:484,_ZNKSt6vectorISsSaISsEE4sizeEv
+FN:101,_ZNKSt12_Vector_baseISsSaISsEE19_M_get_Tp_allocatorEv
+FN:517,_ZNKSt6vectorIPN8pkgCache7VerFileESaIS2_EE8capacityEv
+FN:97,_ZNSt12_Vector_baseIPN8pkgCache7VerFileESaIS2_EE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorIPN8pkgCache7VerFileESaIS2_EE3endEv
+FN:377,_ZNSt6vectorIPN8pkgCache7VerFileESaIS2_EE5beginEv
+FN:79,_ZNSt12_Vector_baseIPN8pkgCache7VerFileESaIS2_EE12_Vector_implD1Ev
+FN:395,_ZNSt6vectorISsSaISsEE3endEv
+FN:377,_ZNSt6vectorISsSaISsEE5beginEv
+FN:526,_ZNKSt6vectorISsSaISsEE5emptyEv
+FN:101,_ZNKSt12_Vector_baseIPN8pkgCache7VerFileESaIS2_EE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorIPN8pkgCache7VerFileESaIS2_EE8max_sizeEv
+FN:79,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implD1Ev
+FN:84,_ZNSt12_Vector_baseISsSaISsEE12_Vector_implC1Ev
+FN:108,_ZNSt12_Vector_baseISsSaISsEEC2Ev
+FN:213,_ZNSt6vectorISsSaISsEEC1Ev
+FN:489,_ZNKSt6vectorISsSaISsEE8max_sizeEv
+FN:88,_ZNSt12_Vector_baseIPN8pkgCache7VerFileESaIS2_EE12_Vector_implC1ERKS3_
+FN:974,_ZNSt6vectorIPN8pkgCache7VerFileESaIS2_EE18_M_fill_initializeEjRKS2_
+FN:147,_ZNSt12_Vector_baseISsSaISsEE13_M_deallocateEPSsj
+FN:135,_ZNSt12_Vector_baseISsSaISsEED2Ev
+FN:299,_ZNSt6vectorISsSaISsEED1Ev
+FN:147,_ZNSt12_Vector_baseIPN8pkgCache7VerFileESaIS2_EE13_M_deallocateEPS2_j
+FN:135,_ZNSt12_Vector_baseIPN8pkgCache7VerFileESaIS2_EED2Ev
+FN:299,_ZNSt6vectorIPN8pkgCache7VerFileESaIS2_EED1Ev
+FN:143,_ZNSt12_Vector_baseIPN8pkgCache7VerFileESaIS2_EE11_M_allocateEj
+FN:114,_ZNSt12_Vector_baseIPN8pkgCache7VerFileESaIS2_EEC2EjRKS3_
+FN:234,_ZNSt6vectorIPN8pkgCache7VerFileESaIS2_EEC1EjRKS2_RKS3_
+FN:143,_ZNSt12_Vector_baseISsSaISsEE11_M_allocateEj
+FN:1075,_ZNKSt6vectorIPN8pkgCache7VerFileESaIS2_EE12_M_check_lenEjPKc
+FN:1075,_ZNKSt6vectorISsSaISsEE12_M_check_lenEjPKc
+FN:686,_ZNSt6vectorISsSaISsEE9push_backERKSs
+FN:902,_ZNSt6vectorIPN8pkgCache7VerFileESaIS2_EE20_M_allocate_and_copyIPS2_EES6_jT_S7_
+FN:686,_ZNSt6vectorIPN8pkgCache7VerFileESaIS2_EE9push_backERKS2_
+DA:79,0
+DA:84,0
+DA:85,0
+DA:86,0
+DA:88,9
+DA:89,9
+DA:90,9
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:108,0
+DA:109,0
+DA:114,9
+DA:115,9
+DA:117,9
+DA:118,9
+DA:119,9
+DA:120,9
+DA:135,0
+DA:136,0
+DA:137,0
+DA:143,0
+DA:144,0
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:213,0
+DA:214,0
+DA:234,9
+DA:235,9
+DA:236,9
+DA:299,0
+DA:300,0
+DA:301,0
+DA:377,0
+DA:378,0
+DA:386,0
+DA:387,0
+DA:395,0
+DA:396,0
+DA:404,0
+DA:405,0
+DA:484,0
+DA:485,0
+DA:489,0
+DA:490,0
+DA:517,0
+DA:519,0
+DA:526,0
+DA:527,0
+DA:562,0
+DA:563,0
+DA:686,0
+DA:688,0
+DA:690,0
+DA:691,0
+DA:694,0
+DA:695,0
+DA:902,0
+DA:904,0
+DA:907,0
+DA:909,0
+DA:911,0
+DA:913,0
+DA:914,0
+DA:974,9
+DA:976,9
+DA:978,9
+DA:979,9
+DA:1075,0
+DA:1077,0
+DA:1078,0
+DA:1080,0
+DA:1081,0
+BA:144,0
+BA:144,0
+BA:144,0
+BA:144,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:149,0
+BA:688,0
+BA:688,0
+BA:688,0
+BA:688,0
+BA:1077,0
+BA:1077,0
+BA:1077,0
+BA:1077,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+BA:1081,0
+LF:76
+LH:16
+end_of_record
+SF:/usr/include/c++/4.3/bits/stream_iterator.h
+FN:181,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERSoPKc
+FN:185,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEC1ERKS2_
+FN:202,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEdeEv
+FN:206,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEppEv
+FN:191,_ZNSt16ostream_iteratorISscSt11char_traitsIcEEaSERKSs
+DA:181,0
+DA:182,0
+DA:185,0
+DA:186,0
+DA:191,0
+DA:196,0
+DA:197,0
+DA:198,0
+DA:202,0
+DA:203,0
+DA:206,0
+DA:207,0
+BA:197,0
+BA:197,0
+LF:12
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
+FN:70,_ZNSt6vectorIPN8pkgCache7VerFileESaIS2_EE7reserveEj
+FN:283,_ZNSt6vectorIPN8pkgCache7VerFileESaIS2_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS2_S4_EERKS2_
+DA:70,0
+DA:72,0
+DA:73,0
+DA:74,0
+DA:76,0
+DA:79,0
+DA:80,0
+DA:82,0
+DA:85,0
+DA:86,0
+DA:87,0
+DA:89,0
+DA:283,0
+DA:286,0
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,0
+DA:308,0
+DA:309,0
+DA:316,0
+DA:321,0
+DA:323,0
+DA:324,0
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,0
+DA:338,0
+DA:341,0
+DA:342,0
+DA:343,0
+DA:345,0
+BA:72,0
+BA:72,0
+BA:74,0
+BA:74,0
+BA:286,0
+BA:286,0
+BA:286,0
+BA:286,0
+LF:36
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/exception
+FN:59,_ZNSt9exceptionC2Ev
+DA:59,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:107,_ZN9__gnu_cxx13new_allocatorIPN8pkgCache7VerFileEE9constructEPS3_RKS3_
+FN:69,_ZN9__gnu_cxx13new_allocatorIPN8pkgCache7VerFileEEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIPN8pkgCache7VerFileEED2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorIPN8pkgCache7VerFileEE8max_sizeEv
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:76,_ZN9__gnu_cxx13new_allocatorISsED2Ev
+FN:69,_ZN9__gnu_cxx13new_allocatorISsEC2Ev
+FN:101,_ZNK9__gnu_cxx13new_allocatorISsE8max_sizeEv
+FN:71,_ZN9__gnu_cxx13new_allocatorIPN8pkgCache7VerFileEEC2ERKS4_
+FN:97,_ZN9__gnu_cxx13new_allocatorISsE10deallocateEPSsj
+FN:97,_ZN9__gnu_cxx13new_allocatorIPN8pkgCache7VerFileEE10deallocateEPS3_j
+FN:107,_ZN9__gnu_cxx13new_allocatorISsE9constructEPSsRKSs
+FN:87,_ZN9__gnu_cxx13new_allocatorIPN8pkgCache7VerFileEE8allocateEjPKv
+FN:87,_ZN9__gnu_cxx13new_allocatorISsE8allocateEjPKv
+DA:69,0
+DA:71,9
+DA:76,0
+DA:87,0
+DA:89,0
+DA:90,0
+DA:92,0
+DA:97,0
+DA:98,0
+DA:101,0
+DA:102,0
+DA:107,0
+DA:108,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:89,0
+BA:108,0
+BA:108,0
+BA:108,0
+BA:108,0
+LF:13
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/ext/type_traits.h
+FN:154,_ZN9__gnu_cxx17__is_null_pointerIcEEbPT_
+DA:154,0
+DA:155,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iosfwd
+FN:68,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev
+DA:68,0
+BA:68,0
+BA:68,0
+LF:1
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,2
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/istream
+FN:585,_ZNSiC2Ev
+FN:105,_ZNSiD2Ev
+FN:804,_ZNSdC2Ev
+FN:801,_ZNSdD2Ev
+DA:105,0
+DA:106,0
+DA:585,0
+DA:586,0
+DA:587,0
+DA:801,0
+DA:804,0
+DA:805,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:106,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+BA:801,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+FN:109,_ZdlPvS_
+DA:105,0
+DA:109,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ostream
+FN:365,_ZNSoC2Ev
+FN:95,_ZNSoD2Ev
+FN:512,_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+DA:95,0
+DA:365,0
+DA:366,0
+DA:512,0
+DA:514,0
+DA:515,0
+DA:517,0
+DA:519,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:95,0
+BA:514,0
+BA:514,0
+LF:8
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/sstream
+FN:96,_ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:509,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode
+FN:536,_ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev
+FN:124,_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv
+FN:555,_ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv
+DA:96,0
+DA:97,0
+DA:98,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:130,0
+DA:131,0
+DA:133,0
+DA:136,0
+DA:137,0
+DA:509,0
+DA:510,0
+DA:511,0
+DA:536,0
+DA:537,0
+DA:555,0
+DA:556,0
+BA:127,0
+BA:127,0
+BA:130,0
+BA:130,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+BA:537,0
+LF:18
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/streambuf
+FN:513,_ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv
+FN:469,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv
+FN:510,_ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv
+FN:444,_ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev
+FN:197,_ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev
+DA:197,0
+DA:198,0
+DA:444,0
+DA:447,0
+DA:448,0
+DA:469,0
+DA:510,0
+DA:513,0
+BA:198,0
+BA:198,0
+LF:8
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.h
+DA:86,1
+BA:86,1
+BA:86,2
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/xapian.cpp
+FN:139,_Z41__static_initialization_and_destruction_0ii
+FN:139,_GLOBAL__I_xapian.cpp
+FN:85,_ZNK3ept4core6xapian6Source11docidByNameERKSs
+FN:66,_ZN3ept4core6xapian6Source7toLowerERKSs
+FN:76,_ZNK3ept4core6xapian6Source17normalize_and_addERN6Xapian8DocumentERKSsRi
+FN:54,_ZNK3ept4core6xapian6Source9timestampEv
+FN:58,_ZNK3ept4core6xapian6Source4openEv
+FN:124,_ZNK3ept4core6xapian6Source11getIntValueERKSsj
+FN:110,_ZNK3ept4core6xapian6Source14getDoubleValueERKSsj
+FN:94,_ZNK3ept4core6xapian6Source16makeRelatedQueryERKSs
+FN:49,_ZN3ept4core6xapian6SourceC1Ev
+FN:49,_ZN3ept4core6xapian6SourceC2Ev
+DA:49,4
+DA:50,4
+DA:52,4
+DA:54,9
+DA:55,9
+DA:58,9
+DA:59,9
+DA:60,9
+DA:61,9
+DA:62,9
+DA:64,9
+DA:66,0
+DA:68,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:72,0
+DA:76,0
+DA:78,0
+DA:79,0
+DA:80,0
+DA:81,0
+DA:82,0
+DA:83,0
+DA:85,0
+DA:87,0
+DA:88,0
+DA:89,0
+DA:91,0
+DA:94,0
+DA:96,0
+DA:99,0
+DA:100,0
+DA:101,0
+DA:102,0
+DA:103,0
+DA:106,0
+DA:110,0
+DA:112,0
+DA:113,0
+DA:114,0
+DA:115,0
+DA:116,0
+DA:117,0
+DA:118,0
+DA:120,0
+DA:124,0
+DA:126,0
+DA:127,0
+DA:128,0
+DA:129,0
+DA:130,0
+DA:131,0
+DA:132,0
+DA:134,0
+DA:139,3
+BA:59,2
+BA:59,1
+BA:70,0
+BA:70,0
+BA:81,0
+BA:81,0
+BA:88,0
+BA:88,0
+BA:102,0
+BA:102,0
+BA:113,0
+BA:113,0
+BA:117,0
+BA:117,0
+BA:127,0
+BA:127,0
+BA:131,0
+BA:131,0
+BA:139,2
+BA:139,1
+BA:139,2
+BA:139,1
+LF:56
+LH:12
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/xapian.h
+FN:258,_ZNK3ept4core6xapian6Source2dbEv
+DA:258,0
+DA:259,0
+DA:260,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:277,_ZNKSs7_M_dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:1544,_ZNKSs4dataEv
+FN:543,_ZNKSs5beginEv
+FN:562,_ZNKSs3endEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:192,_ZNKSs4_Rep12_M_is_sharedEv
+FN:652,_ZNKSs8capacityEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:200,_ZNSs4_Rep15_M_set_sharableEv
+FN:204,_ZNSs4_Rep26_M_set_length_and_sharableEj
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:870,_ZNSs9push_backEc
+FN:791,_ZNSspLEc
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:2201,_ZStneIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+DA:178,0
+DA:183,0
+DA:184,0
+DA:192,0
+DA:193,0
+DA:200,0
+DA:201,0
+DA:204,0
+DA:206,0
+DA:207,0
+DA:208,0
+DA:211,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:543,0
+DA:544,0
+DA:562,0
+DA:563,0
+DA:606,0
+DA:607,0
+DA:652,0
+DA:653,0
+DA:686,0
+DA:687,0
+DA:791,0
+DA:793,0
+DA:794,0
+DA:870,0
+DA:872,0
+DA:873,0
+DA:874,0
+DA:875,0
+DA:876,0
+DA:877,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+DA:2162,0
+DA:2165,0
+DA:2201,0
+DA:2202,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:873,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:60
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.tcc
+FN:668,_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_
+DA:668,0
+DA:673,0
+DA:674,0
+DA:675,0
+DA:676,0
+DA:677,0
+DA:678,0
+LF:7
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:245,_ZNSt11char_traitsIcE6assignERcRKc
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+DA:245,0
+DA:246,0
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+LF:6
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPKcSsEppEv
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPKcSsEdeEv
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPKcSsEC1ERKS2_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPKcSsE4baseEv
+FN:781,_ZN9__gnu_cxxneIPKcSsEEbRKNS_17__normal_iteratorIT_T0_EES8_
+DA:683,0
+DA:695,0
+DA:696,0
+DA:703,0
+DA:705,0
+DA:706,0
+DA:747,0
+DA:748,0
+DA:781,0
+DA:782,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+DA:69,0
+DA:71,0
+DA:76,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/xapian/base.h
+FN:164,_ZNK6Xapian8Internal9RefCntPtrINS_15PostingIterator8InternalEE3getEv
+FN:164,_ZNK6Xapian8Internal9RefCntPtrINS_12TermIterator8InternalEE3getEv
+FN:94,_ZN6Xapian8Internal9RefCntPtrINS_5Query8InternalEEC1EPS3_
+FN:130,_ZN6Xapian8Internal9RefCntPtrINS_5Query8InternalEED1Ev
+DA:94,0
+DA:96,0
+DA:97,0
+DA:130,0
+DA:132,0
+DA:136,0
+DA:137,0
+DA:138,0
+DA:140,0
+DA:164,20
+DA:166,20
+BA:96,0
+BA:96,0
+BA:132,0
+BA:132,0
+BA:132,0
+BA:132,0
+BA:132,0
+BA:132,0
+BA:138,0
+BA:138,0
+LF:11
+LH:2
+end_of_record
+SF:/usr/include/xapian/database.h
+FN:124,_ZNK6Xapian8Database12postlist_endERKSs
+DA:124,10
+DA:125,10
+LF:2
+LH:2
+end_of_record
+SF:/usr/include/xapian/document.h
+FN:170,_ZNK6Xapian8Document12termlist_endEv
+DA:170,0
+DA:171,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/xapian/enquire.h
+FN:374,_ZN6XapianeqERKNS_12MSetIteratorES2_
+FN:258,_ZN6Xapian12MSetIteratorD1Ev
+DA:258,0
+DA:374,0
+DA:376,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/xapian/postingiterator.h
+FN:150,_ZN6XapianeqERKNS_15PostingIteratorES2_
+DA:150,10
+DA:152,10
+LF:2
+LH:2
+end_of_record
+SF:/usr/include/xapian/query.h
+FN:258,_ZN6Xapian5QueryC1INS_12TermIteratorEEENS0_2opET_S4_j
+DA:258,0
+DA:259,0
+DA:262,0
+DA:265,0
+DA:266,0
+DA:267,0
+DA:270,0
+DA:271,0
+DA:272,0
+DA:273,0
+DA:275,0
+BA:265,0
+BA:265,0
+LF:11
+LH:0
+end_of_record
+SF:/usr/include/xapian/termiterator.h
+FN:136,_ZN6XapianeqERKNS_12TermIteratorES2_
+FN:142,_ZN6XapianneERKNS_12TermIteratorES2_
+DA:136,0
+DA:138,0
+DA:142,0
+DA:144,0
+LF:4
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.cpp
+FN:16,_Z41__static_initialization_and_destruction_0ii
+FN:16,_GLOBAL__I_record.cpp
+DA:16,3
+BA:16,2
+BA:16,1
+BA:16,2
+BA:16,1
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.h
+DA:86,1
+BA:86,1
+BA:86,2
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+DA:178,0
+DA:183,0
+DA:184,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+LF:25
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+DA:69,0
+DA:71,0
+DA:76,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,1
+LF:1
+LH:1
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/recordparser.cpp
+FN:39,_ZN3ept4core6record9rpcompareC1ERKNS1_12RecordParserE
+FN:111,_ZNK3ept4core6record12RecordParser5fieldEj
+FN:130,_ZNK3ept4core6record12RecordParser6lookupEj
+FN:121,_ZNK3ept4core6record12RecordParser4nameEj
+FN:146,_ZNK3ept4core6record12RecordParser5indexERKSs
+FN:40,_ZN3ept4core6record9rpcompareclEjj
+FN:46,_ZN3ept4core6record12RecordParser4scanERKSs
+DA:39,1310
+DA:40,89600
+DA:42,89600
+DA:46,1310
+DA:48,1310
+DA:49,1310
+DA:50,1310
+DA:55,1310
+DA:56,1310
+DA:57,29815
+DA:60,28505
+DA:64,28505
+DA:67,1
+DA:68,1
+DA:69,1
+DA:70,1
+DA:73,28504
+DA:77,28504
+DA:80,1309
+DA:81,1309
+DA:82,1309
+DA:86,27195
+DA:89,0
+DA:90,0
+DA:91,0
+DA:95,27195
+DA:98,17224
+DA:99,17224
+DA:105,1310
+DA:109,1310
+DA:111,187124
+DA:113,187124
+DA:114,1
+DA:115,187123
+DA:116,16577
+DA:118,170546
+DA:121,185814
+DA:123,185814
+DA:124,185814
+DA:125,185814
+DA:126,2
+DA:127,185812
+DA:130,1310
+DA:132,1310
+DA:133,1310
+DA:134,1310
+DA:135,1
+DA:137,1309
+DA:139,1309
+DA:141,3927
+DA:142,1309
+DA:143,1309
+DA:146,1310
+DA:151,1310
+DA:152,7924
+DA:154,5304
+DA:156,5304
+DA:157,1724
+DA:159,3580
+DA:162,1310
+DA:163,1
+DA:165,1309
+BA:57,2
+BA:57,1
+BA:64,2
+BA:64,2
+BA:77,2
+BA:77,2
+BA:86,1
+BA:86,2
+BA:95,2
+BA:95,2
+BA:113,2
+BA:113,2
+BA:115,2
+BA:115,2
+BA:125,2
+BA:125,2
+BA:134,2
+BA:134,2
+BA:137,2
+BA:137,1
+BA:137,2
+BA:137,2
+BA:137,2
+BA:137,2
+BA:141,2
+BA:141,1
+BA:141,2
+BA:141,2
+BA:141,2
+BA:141,2
+BA:152,2
+BA:152,2
+BA:156,2
+BA:156,2
+BA:162,2
+BA:162,1
+BA:162,2
+BA:162,2
+BA:162,2
+BA:162,1
+BA:162,0
+BA:162,0
+BA:162,2
+BA:162,2
+LF:62
+LH:59
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/recordparser.h
+FN:90,_ZNK3ept4core6record12RecordParser4sizeEv
+DA:90,1311
+LF:1
+LH:1
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC1ERKS_
+FN:100,_ZNSaIcEC2ERKS_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:277,_ZNKSs7_M_dataEv
+FN:285,_ZNKSs6_M_repEv
+FN:606,_ZNKSs4sizeEv
+FN:686,_ZNKSs5emptyEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:1544,_ZNKSs4dataEv
+FN:392,_ZNSs10_S_compareEjj
+FN:188,_ZNKSs4_Rep12_M_is_leakedEv
+FN:1551,_ZNKSs13get_allocatorEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1941,_ZNKSs7compareERKSs
+FN:2275,_ZStgtIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:2238,_ZStltIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:2162,_ZSteqIcEN9__gnu_cxx11__enable_ifIXsrSt9__is_charIT_E7__valueEbE6__typeERKSbIS3_St11char_traitsIS3_ESaIS3_EESC_
+FN:2201,_ZStneIcSt11char_traitsIcESaIcEEbRKSbIT_T0_T1_ES8_
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+FN:1593,_ZNKSs4findEPKcj
+FN:306,_ZNKSs8_M_checkEjPKc
+FN:1923,_ZNKSs6substrEjj
+FN:501,_ZNSsaSERKSs
+FN:644,_ZNSs6resizeEj
+FN:299,_ZNSs7_M_leakEv
+FN:718,_ZNSsixEj
+DA:178,0
+DA:183,0
+DA:184,0
+DA:188,0
+DA:189,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:299,0
+DA:301,0
+DA:302,0
+DA:303,0
+DA:306,0
+DA:308,0
+DA:309,0
+DA:310,0
+DA:392,0
+DA:394,0
+DA:401,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:501,0
+DA:502,0
+DA:606,0
+DA:607,0
+DA:644,0
+DA:645,0
+DA:686,0
+DA:687,0
+DA:718,0
+DA:724,0
+DA:725,0
+DA:1544,0
+DA:1545,0
+DA:1551,0
+DA:1552,0
+DA:1593,0
+DA:1596,0
+DA:1923,0
+DA:1925,0
+DA:1941,0
+DA:1943,0
+DA:1944,0
+DA:1945,0
+DA:1947,0
+DA:1948,0
+DA:1949,0
+DA:1950,0
+DA:2067,0
+DA:2069,0
+DA:2162,0
+DA:2165,0
+DA:2201,0
+DA:2202,0
+DA:2238,0
+DA:2239,0
+DA:2275,1024110
+DA:2276,1024110
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+BA:301,0
+BA:301,0
+BA:308,0
+BA:308,0
+BA:1948,0
+BA:1948,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+BA:2165,0
+LF:71
+LH:2
+end_of_record
+SF:/usr/include/c++/4.3/bits/char_traits.h
+FN:257,_ZNSt11char_traitsIcE7compareEPKcS2_j
+FN:261,_ZNSt11char_traitsIcE6lengthEPKc
+DA:257,0
+DA:258,0
+DA:261,0
+DA:262,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algo.h
+FN:1568,_ZSt13__heap_selectIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEN3ept4core6record9rpcompareEEvT_SB_SB_T0_
+FN:4661,_ZSt12partial_sortIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEN3ept4core6record9rpcompareEEvT_SB_SB_T0_
+FN:123,_ZSt8__medianIjN3ept4core6record9rpcompareEERKT_S6_S6_S6_T0_
+FN:1877,_ZSt21__unguarded_partitionIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEjN3ept4core6record9rpcompareEET_SB_SB_T0_T1_
+FN:1930,_ZSt16__introsort_loopIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEiN3ept4core6record9rpcompareEEvT_SB_T0_T1_
+FN:1731,_ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEjN3ept4core6record9rpcompareEEvT_T0_T1_
+FN:1806,_ZSt26__unguarded_insertion_sortIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEN3ept4core6record9rpcompareEEvT_SB_T0_
+FN:1771,_ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEN3ept4core6record9rpcompareEEvT_SB_T0_
+FN:1840,_ZSt22__final_insertion_sortIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEN3ept4core6record9rpcompareEEvT_SB_T0_
+FN:1970,_ZSt4__lgi
+FN:4806,_ZSt4sortIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEN3ept4core6record9rpcompareEEvT_SB_T0_
+DA:123,87
+DA:128,87
+DA:129,75
+DA:130,12
+DA:131,63
+DA:132,0
+DA:134,63
+DA:135,12
+DA:136,9
+DA:137,3
+DA:138,3
+DA:140,0
+DA:1568,0
+DA:1570,0
+DA:1571,0
+DA:1572,0
+DA:1573,0
+DA:1574,0
+DA:1731,14678
+DA:1733,14678
+DA:1734,14678
+DA:1735,85248
+DA:1737,55892
+DA:1738,55892
+DA:1739,55892
+DA:1741,14678
+DA:1742,14678
+DA:1771,1310
+DA:1773,1310
+DA:1775,18435
+DA:1778,17125
+DA:1779,17125
+DA:1781,2546
+DA:1782,2546
+DA:1785,14579
+DA:1806,87
+DA:1811,186
+DA:1812,99
+DA:1813,87
+DA:1840,1310
+DA:1842,1310
+DA:1844,87
+DA:1845,87
+DA:1849,1223
+DA:1850,1310
+DA:1877,507
+DA:1879,420
+DA:1881,1314
+DA:1882,300
+DA:1883,507
+DA:1884,1365
+DA:1885,351
+DA:1886,507
+DA:1887,87
+DA:1888,420
+DA:1889,420
+DA:1930,1397
+DA:1935,2881
+DA:1937,87
+DA:1939,0
+DA:1940,0
+DA:1942,87
+DA:1952,87
+DA:1953,87
+DA:1954,87
+DA:1970,0
+DA:1971,0
+DA:4661,0
+DA:4674,0
+DA:4675,0
+DA:4676,0
+DA:4806,1310
+DA:4818,1310
+DA:4820,1310
+DA:4822,1310
+DA:4824,1310
+BA:128,2
+BA:128,2
+BA:129,2
+BA:129,2
+BA:131,1
+BA:131,2
+BA:135,2
+BA:135,2
+BA:137,2
+BA:137,1
+BA:1571,0
+BA:1571,0
+BA:1572,0
+BA:1572,0
+BA:1735,2
+BA:1735,2
+BA:1773,2
+BA:1773,1
+BA:1775,2
+BA:1775,2
+BA:1779,2
+BA:1779,2
+BA:1811,2
+BA:1811,2
+BA:1842,2
+BA:1842,2
+BA:1881,2
+BA:1881,2
+BA:1884,2
+BA:1884,2
+BA:1886,2
+BA:1886,2
+BA:1935,2
+BA:1935,2
+BA:1937,1
+BA:1937,2
+BA:4818,2
+BA:4818,1
+LF:76
+LH:60
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_algobase.h
+FN:188,_ZSt3minIjERKT_S2_S2_
+FN:286,_ZNSt12__miter_baseIPjLb0EE3__bES0_
+FN:210,_ZSt3maxIjERKT_S2_S2_
+FN:268,_ZNSt12__niter_baseIPjLb0EE3__bES0_
+FN:286,_ZNSt12__miter_baseIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEELb0EE3__bES6_
+FN:104,_ZNSt11__iter_swapILb1EE9iter_swapIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEES8_EEvT_T0_
+FN:121,_ZSt9iter_swapIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEES6_EvT_T0_
+FN:276,_ZNSt12__niter_baseIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEELb1EE3__bES6_
+FN:569,_ZNSt20__copy_move_backwardILb0ELb1ESt26random_access_iterator_tagE13__copy_move_bIjEEPT_PKS3_S6_S4_
+FN:579,_ZSt22__copy_move_backward_aILb0EPjS0_ET1_T0_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EPjS0_ET1_T0_S2_S1_
+FN:624,_ZSt13copy_backwardIPjS0_ET0_T_S2_S1_
+FN:597,_ZSt23__copy_move_backward_a2ILb0EN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEES6_ET1_T0_S8_S7_
+FN:624,_ZSt13copy_backwardIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEES6_ET0_T_S8_S7_
+FN:375,_ZNSt11__copy_moveILb0ELb1ESt26random_access_iterator_tagE8__copy_mIjEEPT_PKS3_S6_S4_
+FN:385,_ZSt13__copy_move_aILb0EPjS0_ET1_T0_S2_S1_
+FN:430,_ZSt14__copy_move_a2ILb0EPjS0_ET1_T0_S2_S1_
+FN:456,_ZSt4copyIPjS0_ET0_T_S2_S1_
+DA:104,1225
+DA:106,1225
+DA:107,1225
+DA:121,1225
+DA:142,1225
+DA:146,1225
+DA:188,0
+DA:193,0
+DA:194,0
+DA:195,0
+DA:210,0
+DA:215,0
+DA:216,0
+DA:217,0
+DA:268,80616
+DA:269,80616
+DA:276,22845
+DA:277,22845
+DA:286,68974
+DA:287,68974
+DA:375,26872
+DA:377,26872
+DA:379,26872
+DA:385,26872
+DA:393,26872
+DA:396,26872
+DA:430,26872
+DA:435,26872
+DA:456,26872
+DA:466,26872
+DA:569,7615
+DA:571,7615
+DA:572,7615
+DA:573,7615
+DA:579,7615
+DA:587,7615
+DA:592,7615
+DA:597,7615
+DA:602,7615
+DA:624,7615
+DA:636,7615
+BA:193,0
+BA:193,0
+BA:215,0
+BA:215,0
+LF:41
+LH:33
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_construct.h
+FN:97,_ZSt8_DestroyIPjEvT_S1_
+FN:126,_ZSt8_DestroyIPjjEvT_S1_RSaIT0_E
+DA:97,0
+DA:104,0
+DA:126,0
+DA:128,0
+DA:129,0
+LF:5
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_heap.h
+FN:177,_ZSt11__push_heapIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEijN3ept4core6record9rpcompareEEvT_T0_SC_T1_T2_
+FN:295,_ZSt13__adjust_heapIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEijN3ept4core6record9rpcompareEEvT_T0_SC_T1_T2_
+FN:412,_ZSt9make_heapIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEN3ept4core6record9rpcompareEEvT_SB_T0_
+FN:322,_ZSt10__pop_heapIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEN3ept4core6record9rpcompareEEvT_SB_SB_T0_
+FN:350,_ZSt8pop_heapIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEN3ept4core6record9rpcompareEEvT_SB_T0_
+FN:477,_ZSt9sort_heapIN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEEN3ept4core6record9rpcompareEEvT_SB_T0_
+DA:177,0
+DA:179,0
+DA:180,0
+DA:183,0
+DA:184,0
+DA:185,0
+DA:187,0
+DA:188,0
+DA:295,0
+DA:297,0
+DA:298,0
+DA:299,0
+DA:301,0
+DA:302,0
+DA:304,0
+DA:305,0
+DA:306,0
+DA:308,0
+DA:310,0
+DA:311,0
+DA:313,0
+DA:315,0
+DA:317,0
+DA:322,0
+DA:329,0
+DA:330,0
+DA:331,0
+DA:334,0
+DA:350,0
+DA:358,0
+DA:359,0
+DA:412,0
+DA:424,0
+DA:425,0
+DA:427,0
+DA:428,0
+DA:429,0
+DA:431,0
+DA:432,0
+DA:434,0
+DA:435,0
+DA:436,0
+DA:477,0
+DA:485,0
+DA:486,0
+DA:487,0
+BA:180,0
+BA:180,0
+BA:180,0
+BA:180,0
+BA:180,0
+BA:180,0
+BA:299,0
+BA:299,0
+BA:302,0
+BA:302,0
+BA:308,0
+BA:308,0
+BA:308,0
+BA:308,0
+BA:424,0
+BA:424,0
+BA:434,0
+BA:434,0
+BA:485,0
+BA:485,0
+LF:46
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_iterator.h
+FN:683,_ZN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEC1ERKS1_
+FN:747,_ZNK9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEE4baseEv
+FN:781,_ZN9__gnu_cxxneIPjSt6vectorIjSaIjEEEEbRKNS_17__normal_iteratorIT_T0_EESA_
+FN:846,_ZN9__gnu_cxxmiIPjSt6vectorIjSaIjEEEENS_17__normal_iteratorIT_T0_E15difference_typeERKS8_SB_
+FN:695,_ZNK9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEdeEv
+FN:735,_ZNK9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEplERKi
+FN:743,_ZNK9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEmiERKi
+FN:703,_ZN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEppEv
+FN:715,_ZN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEmmEv
+FN:794,_ZN9__gnu_cxxltIPjSt6vectorIjSaIjEEEEbRKNS_17__normal_iteratorIT_T0_EESA_
+FN:769,_ZN9__gnu_cxxeqIPjSt6vectorIjSaIjEEEEbRKNS_17__normal_iteratorIT_T0_EESA_
+FN:722,_ZN9__gnu_cxx17__normal_iteratorIPjSt6vectorIjSaIjEEEmmEi
+DA:683,41456
+DA:695,706306
+DA:696,706306
+DA:703,53554
+DA:705,53554
+DA:706,53554
+DA:715,213106
+DA:717,213106
+DA:718,213106
+DA:722,0
+DA:723,0
+DA:735,12297
+DA:736,12297
+DA:743,252
+DA:744,252
+DA:747,204735
+DA:748,204735
+DA:769,3928
+DA:770,3928
+DA:781,59564
+DA:782,59564
+DA:794,1477
+DA:795,1477
+DA:846,12540
+DA:847,12540
+LF:25
+LH:23
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_move.h
+FN:80,_ZSt4swapIjEvRT_S1_
+DA:80,1225
+DA:85,1225
+DA:86,1225
+DA:87,1225
+DA:88,1225
+LF:5
+LH:5
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_uninitialized.h
+FN:97,_ZNSt20__uninitialized_copyILb1EE18uninitialized_copyIPjS2_EET0_T_S4_S3_
+FN:113,_ZSt18uninitialized_copyIPjS0_ET0_T_S2_S1_
+FN:261,_ZSt22__uninitialized_copy_aIPjS0_jET0_T_S2_S1_RSaIT1_E
+FN:268,_ZSt22__uninitialized_move_aIPjS0_SaIjEET0_T_S3_S2_RT1_
+DA:97,26872
+DA:98,26872
+DA:113,26872
+DA:122,26872
+DA:261,26872
+DA:262,26872
+DA:268,26872
+DA:272,26872
+LF:8
+LH:8
+end_of_record
+SF:/usr/include/c++/4.3/bits/stl_vector.h
+FN:484,_ZNKSt6vectorIjSaIjEE4sizeEv
+FN:577,_ZNKSt6vectorIjSaIjEEixEj
+FN:97,_ZNSt12_Vector_baseIjSaIjEE19_M_get_Tp_allocatorEv
+FN:395,_ZNSt6vectorIjSaIjEE3endEv
+FN:377,_ZNSt6vectorIjSaIjEE5beginEv
+FN:1089,_ZNSt6vectorIjSaIjEE15_M_erase_at_endEPj
+FN:891,_ZNSt6vectorIjSaIjEE5clearEv
+FN:101,_ZNKSt12_Vector_baseIjSaIjEE19_M_get_Tp_allocatorEv
+FN:489,_ZNKSt6vectorIjSaIjEE8max_sizeEv
+FN:1075,_ZNKSt6vectorIjSaIjEE12_M_check_lenEjPKc
+FN:143,_ZNSt12_Vector_baseIjSaIjEE11_M_allocateEj
+FN:147,_ZNSt12_Vector_baseIjSaIjEE13_M_deallocateEPjj
+FN:686,_ZNSt6vectorIjSaIjEE9push_backERKj
+DA:97,0
+DA:98,0
+DA:101,26872
+DA:102,26872
+DA:143,13436
+DA:144,13436
+DA:147,0
+DA:149,0
+DA:150,0
+DA:151,0
+DA:377,3928
+DA:378,3928
+DA:395,17364
+DA:396,17364
+DA:484,0
+DA:485,0
+DA:489,26872
+DA:490,26872
+DA:577,1925195
+DA:578,1925195
+DA:686,110770
+DA:688,110770
+DA:690,97334
+DA:691,97334
+DA:694,13436
+DA:695,110770
+DA:891,7856
+DA:892,7856
+DA:1075,13436
+DA:1077,13436
+DA:1078,0
+DA:1080,13436
+DA:1081,13436
+DA:1089,7856
+DA:1091,7856
+DA:1092,7856
+DA:1093,7856
+BA:144,2
+BA:144,1
+BA:149,0
+BA:149,0
+BA:688,2
+BA:688,2
+BA:1077,1
+BA:1077,2
+BA:1081,2
+BA:1081,1
+BA:1081,1
+BA:1081,2
+LF:37
+LH:28
+end_of_record
+SF:/usr/include/c++/4.3/bits/vector.tcc
+FN:283,_ZNSt6vectorIjSaIjEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPjS1_EERKj
+DA:283,13436
+DA:286,13436
+DA:288,0
+DA:291,0
+DA:293,0
+DA:295,0
+DA:299,0
+DA:307,13436
+DA:308,13436
+DA:309,13436
+DA:316,13436
+DA:321,13436
+DA:323,13436
+DA:324,13436
+DA:330,0
+DA:332,0
+DA:333,0
+DA:334,0
+DA:336,13436
+DA:338,13436
+DA:341,13436
+DA:342,13436
+DA:343,13436
+DA:345,13436
+BA:286,1
+BA:286,2
+LF:24
+LH:15
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:107,_ZN9__gnu_cxx13new_allocatorIjE9constructEPjRKj
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+FN:101,_ZNK9__gnu_cxx13new_allocatorIjE8max_sizeEv
+FN:87,_ZN9__gnu_cxx13new_allocatorIjE8allocateEjPKv
+FN:97,_ZN9__gnu_cxx13new_allocatorIjE10deallocateEPjj
+DA:69,0
+DA:71,0
+DA:76,0
+DA:87,13436
+DA:89,13436
+DA:90,0
+DA:92,13436
+DA:97,0
+DA:98,0
+DA:101,40308
+DA:102,40308
+DA:107,110770
+DA:108,110770
+BA:89,1
+BA:89,2
+BA:108,2
+BA:108,1
+LF:13
+LH:7
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/new
+FN:105,_ZnwjPv
+DA:105,0
+LF:1
+LH:0
+end_of_record
+TN:
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.h
+DA:86,2
+BA:86,2
+BA:86,1
+LF:1
+LH:1
+end_of_record
+SF:/home/mornfall/dev/pkg/ept-work/ept/core/apt.cpp
+FN:23,_Z41__static_initialization_and_destruction_0ii
+FN:23,_GLOBAL__I_apt.cpp
+FN:9,_ZN3ept4core12aptTimestampEv
+DA:9,45
+DA:12,45
+DA:13,45
+DA:16,45
+DA:17,45
+DA:19,45
+DA:23,6
+BA:13,2
+BA:13,1
+BA:17,2
+BA:17,1
+BA:19,2
+BA:19,1
+BA:23,2
+BA:23,1
+BA:23,2
+BA:23,1
+LF:7
+LH:7
+end_of_record
+SF:/usr/include/c++/4.3/backward/auto_ptr.h
+FN:263,_ZNSt8auto_ptrI4statEC1ESt12auto_ptr_refIS0_E
+FN:214,_ZNKSt8auto_ptrI4statE3getEv
+FN:197,_ZNKSt8auto_ptrI4statEptEv
+FN:228,_ZNSt8auto_ptrI4statE7releaseEv
+FN:56,_ZNSt12auto_ptr_refI4statEC1EPS0_
+FN:278,_ZNSt8auto_ptrI4statEcvSt12auto_ptr_refIT_EIS0_EEv
+FN:173,_ZNSt8auto_ptrI4statED1Ev
+DA:56,0
+DA:173,0
+DA:197,0
+DA:200,0
+DA:214,0
+DA:228,0
+DA:230,0
+DA:231,0
+DA:232,0
+DA:263,0
+DA:264,0
+DA:278,0
+DA:279,0
+LF:13
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/allocator.h
+FN:98,_ZNSaIcEC1Ev
+FN:106,_ZNSaIcED1Ev
+FN:106,_ZNSaIcED2Ev
+FN:100,_ZNSaIcEC2ERKS_
+FN:100,_ZNSaIcEC1ERKS_
+DA:98,0
+DA:100,0
+DA:101,0
+DA:106,0
+LF:4
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/bits/basic_string.h
+FN:277,_ZNKSs7_M_dataEv
+FN:258,_ZNSs12_Alloc_hiderD1Ev
+FN:285,_ZNKSs6_M_repEv
+FN:214,_ZNSs4_Rep10_M_refdataEv
+FN:178,_ZNSs4_Rep12_S_empty_repEv
+FN:411,_ZNSs12_S_empty_repEv
+FN:259,_ZNSs12_Alloc_hiderC1EPcRKSaIcE
+FN:2067,_ZNSsC1Ev
+FN:1551,_ZNKSs13get_allocatorEv
+FN:229,_ZNSs4_Rep10_M_disposeERKSaIcE
+FN:493,_ZNSsD1Ev
+DA:178,0
+DA:183,0
+DA:184,0
+DA:214,0
+DA:215,0
+DA:229,0
+DA:232,0
+DA:234,0
+DA:236,0
+DA:237,0
+DA:258,0
+DA:259,0
+DA:260,0
+DA:277,0
+DA:278,0
+DA:285,0
+DA:286,0
+DA:411,0
+DA:412,0
+DA:493,0
+DA:494,0
+DA:1551,0
+DA:1552,0
+DA:2067,0
+DA:2069,0
+BA:232,0
+BA:232,0
+BA:234,0
+BA:234,0
+LF:25
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/atomicity.h
+FN:67,_ZN9__gnu_cxxL25__exchange_and_add_singleEPii
+FN:50,_ZN9__gnu_cxxL18__exchange_and_addEPVii
+FN:80,_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii
+DA:50,0
+DA:51,0
+DA:67,0
+DA:69,0
+DA:70,0
+DA:71,0
+DA:80,0
+DA:83,0
+DA:84,0
+DA:86,0
+BA:83,0
+BA:83,0
+LF:10
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/ext/new_allocator.h
+FN:69,_ZN9__gnu_cxx13new_allocatorIcEC2Ev
+FN:76,_ZN9__gnu_cxx13new_allocatorIcED2Ev
+FN:71,_ZN9__gnu_cxx13new_allocatorIcEC2ERKS1_
+DA:69,0
+DA:71,0
+DA:76,0
+LF:3
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h
+FN:212,_ZL18__gthread_active_pv
+DA:212,0
+DA:216,0
+LF:2
+LH:0
+end_of_record
+SF:/usr/include/c++/4.3/iostream
+DA:77,2
+LF:1
+LH:1
+end_of_record
diff --git a/rep/ruby.png b/rep/ruby.png
new file mode 100644
index 0000000..991b6d4
--- /dev/null
+++ b/rep/ruby.png
Binary files differ
diff --git a/rep/snow.png b/rep/snow.png
new file mode 100644
index 0000000..2cdae10
--- /dev/null
+++ b/rep/snow.png
Binary files differ
diff --git a/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_apt.cpp.gcov.html b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_apt.cpp.gcov.html
new file mode 100644
index 0000000..f9f8cc1
--- /dev/null
+++ b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_apt.cpp.gcov.html
@@ -0,0 +1,82 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_apt.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../../index.html">directory</a> - <a href="index.html">srv/build/pkg/ept-work/default/ept</a> - ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_apt.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">13</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">13</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &quot;/home/mornfall/dev/pkg/ept-work/ept/apt/apt.test.h&quot;
+<span class="lineNum"> 2 </span> : #define RUN(x,y) x().y()
+<span class="lineNum"> 3 </span><span class="lineCov"> 1 : void run_Apt_iterators() { RUN( TestApt, iterators ); }</span>
+<span class="lineNum"> 4 </span><span class="lineCov"> 1 : void run_Apt_aptExists() { RUN( TestApt, aptExists ); }</span>
+<span class="lineNum"> 5 </span><span class="lineCov"> 1 : void run_Apt_timestamp() { RUN( TestApt, timestamp ); }</span>
+<span class="lineNum"> 6 </span><span class="lineCov"> 1 : void run_Apt_validity() { RUN( TestApt, validity ); }</span>
+<span class="lineNum"> 7 </span><span class="lineCov"> 1 : void run_Apt_versions() { RUN( TestApt, versions ); }</span>
+<span class="lineNum"> 8 </span><span class="lineCov"> 1 : void run_Apt_versionValidity() { RUN( TestApt, versionValidity ); }</span>
+<span class="lineNum"> 9 </span><span class="lineCov"> 1 : void run_Apt_rawRecord() { RUN( TestApt, rawRecord ); }</span>
+<span class="lineNum"> 10 </span><span class="lineCov"> 1 : void run_Apt_state() { RUN( TestApt, state ); }</span>
+<span class="lineNum"> 11 </span><span class="lineCov"> 1 : void run_Apt_recordIteration() { RUN( TestApt, recordIteration ); }</span>
+<span class="lineNum"> 12 </span><span class="lineCov"> 1 : void run_Apt_recordIteration2() { RUN( TestApt, recordIteration2 ); }</span>
+<span class="lineNum"> 13 </span><span class="lineCov"> 1 : void run_Apt_stlIteration() { RUN( TestApt, stlIteration ); }</span>
+<span class="lineNum"> 14 </span><span class="lineCov"> 1 : void run_Apt_stlRecordIteration() { RUN( TestApt, stlRecordIteration ); }</span>
+<span class="lineNum"> 15 </span><span class="lineCov"> 4 : void run_Apt_checkUpdates() { RUN( TestApt, checkUpdates ); }</span>
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_packagerecord.cpp.gcov.html b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_packagerecord.cpp.gcov.html
new file mode 100644
index 0000000..408a573
--- /dev/null
+++ b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_packagerecord.cpp.gcov.html
@@ -0,0 +1,70 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_packagerecord.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../../index.html">directory</a> - <a href="index.html">srv/build/pkg/ept-work/default/ept</a> - ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_packagerecord.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &quot;/home/mornfall/dev/pkg/ept-work/ept/apt/packagerecord.test.h&quot;
+<span class="lineNum"> 2 </span> : #define RUN(x,y) x().y()
+<span class="lineNum"> 3 </span><span class="lineCov"> 4 : void run_AptPackagerecord_supportedFields() { RUN( TestAptPackagerecord, supportedFields ); }</span>
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_recordparser.cpp.gcov.html b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_recordparser.cpp.gcov.html
new file mode 100644
index 0000000..d951e99
--- /dev/null
+++ b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_recordparser.cpp.gcov.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_recordparser.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../../index.html">directory</a> - <a href="index.html">srv/build/pkg/ept-work/default/ept</a> - ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_recordparser.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">12</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">12</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &quot;/home/mornfall/dev/pkg/ept-work/ept/apt/recordparser.test.h&quot;
+<span class="lineNum"> 2 </span> : #define RUN(x,y) x().y()
+<span class="lineNum"> 3 </span><span class="lineCov"> 1 : void run_AptRecordparser_parsing() { RUN( TestAptRecordparser, parsing ); }</span>
+<span class="lineNum"> 4 </span><span class="lineCov"> 1 : void run_AptRecordparser_fieldTuples() { RUN( TestAptRecordparser, fieldTuples ); }</span>
+<span class="lineNum"> 5 </span><span class="lineCov"> 1 : void run_AptRecordparser_fieldKeys() { RUN( TestAptRecordparser, fieldKeys ); }</span>
+<span class="lineNum"> 6 </span><span class="lineCov"> 1 : void run_AptRecordparser_fieldValues() { RUN( TestAptRecordparser, fieldValues ); }</span>
+<span class="lineNum"> 7 </span><span class="lineCov"> 1 : void run_AptRecordparser_findByName() { RUN( TestAptRecordparser, findByName ); }</span>
+<span class="lineNum"> 8 </span><span class="lineCov"> 1 : void run_AptRecordparser_indexing() { RUN( TestAptRecordparser, indexing ); }</span>
+<span class="lineNum"> 9 </span><span class="lineCov"> 1 : void run_AptRecordparser_missingBehaviour() { RUN( TestAptRecordparser, missingBehaviour ); }</span>
+<span class="lineNum"> 10 </span><span class="lineCov"> 1 : void run_AptRecordparser_rescan() { RUN( TestAptRecordparser, rescan ); }</span>
+<span class="lineNum"> 11 </span><span class="lineCov"> 1 : void run_AptRecordparser_realLife() { RUN( TestAptRecordparser, realLife ); }</span>
+<span class="lineNum"> 12 </span><span class="lineCov"> 1 : void run_AptRecordparser_bufferTermination() { RUN( TestAptRecordparser, bufferTermination ); }</span>
+<span class="lineNum"> 13 </span><span class="lineCov"> 1 : void run_AptRecordparser_bufferTermination2() { RUN( TestAptRecordparser, bufferTermination2 ); }</span>
+<span class="lineNum"> 14 </span><span class="lineCov"> 4 : void run_AptRecordparser_bufferTermination3() { RUN( TestAptRecordparser, bufferTermination3 ); }</span>
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_version.cpp.gcov.html b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_version.cpp.gcov.html
new file mode 100644
index 0000000..76973f9
--- /dev/null
+++ b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_version.cpp.gcov.html
@@ -0,0 +1,75 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_version.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../../index.html">directory</a> - <a href="index.html">srv/build/pkg/ept-work/default/ept</a> - ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_version.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">6</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">6</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &quot;/home/mornfall/dev/pkg/ept-work/ept/apt/version.test.h&quot;
+<span class="lineNum"> 2 </span> : #define RUN(x,y) x().y()
+<span class="lineNum"> 3 </span><span class="lineCov"> 1 : void run_AptVersion_invalid() { RUN( TestAptVersion, invalid ); }</span>
+<span class="lineNum"> 4 </span><span class="lineCov"> 1 : void run_AptVersion_basic() { RUN( TestAptVersion, basic ); }</span>
+<span class="lineNum"> 5 </span><span class="lineCov"> 1 : void run_AptVersion_comparison() { RUN( TestAptVersion, comparison ); }</span>
+<span class="lineNum"> 6 </span><span class="lineCov"> 1 : void run_AptVersion_valueCopy() { RUN( TestAptVersion, valueCopy ); }</span>
+<span class="lineNum"> 7 </span><span class="lineCov"> 1 : void run_AptVersion_upstreamVersion() { RUN( TestAptVersion, upstreamVersion ); }</span>
+<span class="lineNum"> 8 </span><span class="lineCov"> 4 : void run_AptVersion_policyComparison() { RUN( TestAptVersion, policyComparison ); }</span>
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt.cpp.gcov.html b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt.cpp.gcov.html
new file mode 100644
index 0000000..f3bd875
--- /dev/null
+++ b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt.cpp.gcov.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../../index.html">directory</a> - <a href="index.html">srv/build/pkg/ept-work/default/ept</a> - ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">12</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">12</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &quot;/home/mornfall/dev/pkg/ept-work/ept/core/apt.test.h&quot;
+<span class="lineNum"> 2 </span> : #define RUN(x,y) x().y()
+<span class="lineNum"> 3 </span><span class="lineCov"> 1 : void run_CoreApt_token() { RUN( TestCoreApt, token ); }</span>
+<span class="lineNum"> 4 </span><span class="lineCov"> 1 : void run_CoreApt_tokenVersion() { RUN( TestCoreApt, tokenVersion ); }</span>
+<span class="lineNum"> 5 </span><span class="lineCov"> 1 : void run_CoreApt_packageName() { RUN( TestCoreApt, packageName ); }</span>
+<span class="lineNum"> 6 </span><span class="lineCov"> 1 : void run_CoreApt_packageCount() { RUN( TestCoreApt, packageCount ); }</span>
+<span class="lineNum"> 7 </span><span class="lineCov"> 1 : void run_CoreApt_packageNameList() { RUN( TestCoreApt, packageNameList ); }</span>
+<span class="lineNum"> 8 </span><span class="lineCov"> 1 : void run_CoreApt_versionCount() { RUN( TestCoreApt, versionCount ); }</span>
+<span class="lineNum"> 9 </span><span class="lineCov"> 1 : void run_CoreApt_versionPackage() { RUN( TestCoreApt, versionPackage ); }</span>
+<span class="lineNum"> 10 </span><span class="lineCov"> 1 : void run_CoreApt_validate() { RUN( TestCoreApt, validate ); }</span>
+<span class="lineNum"> 11 </span><span class="lineCov"> 1 : void run_CoreApt_packageState() { RUN( TestCoreApt, packageState ); }</span>
+<span class="lineNum"> 12 </span><span class="lineCov"> 1 : void run_CoreApt_packageState2() { RUN( TestCoreApt, packageState2 ); }</span>
+<span class="lineNum"> 13 </span><span class="lineCov"> 1 : void run_CoreApt_exists() { RUN( TestCoreApt, exists ); }</span>
+<span class="lineNum"> 14 </span><span class="lineCov"> 4 : void run_CoreApt_invalidate() { RUN( TestCoreApt, invalidate ); }</span>
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt_action.cpp.gcov.html b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt_action.cpp.gcov.html
new file mode 100644
index 0000000..c1d30cf
--- /dev/null
+++ b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt_action.cpp.gcov.html
@@ -0,0 +1,72 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt_action.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../../index.html">directory</a> - <a href="index.html">srv/build/pkg/ept-work/default/ept</a> - ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt_action.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">3</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">3</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &quot;/home/mornfall/dev/pkg/ept-work/ept/core/apt/action.test.h&quot;
+<span class="lineNum"> 2 </span> : #define RUN(x,y) x().y()
+<span class="lineNum"> 3 </span><span class="lineCov"> 1 : void run_AptAction_basic() { RUN( TestAptAction, basic ); }</span>
+<span class="lineNum"> 4 </span><span class="lineCov"> 1 : void run_AptAction_revert() { RUN( TestAptAction, revert ); }</span>
+<span class="lineNum"> 5 </span><span class="lineCov"> 4 : void run_AptAction_keep() { RUN( TestAptAction, keep ); }</span>
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt_record.cpp.gcov.html b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt_record.cpp.gcov.html
new file mode 100644
index 0000000..967467d
--- /dev/null
+++ b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt_record.cpp.gcov.html
@@ -0,0 +1,75 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt_record.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../../index.html">directory</a> - <a href="index.html">srv/build/pkg/ept-work/default/ept</a> - ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt_record.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">6</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">6</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &quot;/home/mornfall/dev/pkg/ept-work/ept/core/apt/record.test.h&quot;
+<span class="lineNum"> 2 </span> : #define RUN(x,y) x().y()
+<span class="lineNum"> 3 </span><span class="lineCov"> 1 : void run_AptRecord_checkLookup() { RUN( TestAptRecord, checkLookup ); }</span>
+<span class="lineNum"> 4 </span><span class="lineCov"> 1 : void run_AptRecord_checkLookupValue() { RUN( TestAptRecord, checkLookupValue ); }</span>
+<span class="lineNum"> 5 </span><span class="lineCov"> 1 : void run_AptRecord_checkLookupNumeric() { RUN( TestAptRecord, checkLookupNumeric ); }</span>
+<span class="lineNum"> 6 </span><span class="lineCov"> 1 : void run_AptRecord_checkShortDescription() { RUN( TestAptRecord, checkShortDescription ); }</span>
+<span class="lineNum"> 7 </span><span class="lineCov"> 1 : void run_AptRecord_checkList() { RUN( TestAptRecord, checkList ); }</span>
+<span class="lineNum"> 8 </span><span class="lineCov"> 4 : void run_AptRecord_nonexistent() { RUN( TestAptRecord, nonexistent ); }</span>
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_desktop.cpp.gcov.html b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_desktop.cpp.gcov.html
new file mode 100644
index 0000000..3851297
--- /dev/null
+++ b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_desktop.cpp.gcov.html
@@ -0,0 +1,74 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_desktop.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../../index.html">directory</a> - <a href="index.html">srv/build/pkg/ept-work/default/ept</a> - ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_desktop.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">5</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">5</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &quot;/home/mornfall/dev/pkg/ept-work/ept/core/desktop.test.h&quot;
+<span class="lineNum"> 2 </span> : #define RUN(x,y) x().y()
+<span class="lineNum"> 3 </span><span class="lineCov"> 1 : void run_Desktop_iteration() { RUN( TestDesktop, iteration ); }</span>
+<span class="lineNum"> 4 </span><span class="lineCov"> 1 : void run_Desktop_groupProperty() { RUN( TestDesktop, groupProperty ); }</span>
+<span class="lineNum"> 5 </span><span class="lineCov"> 1 : void run_Desktop_groups() { RUN( TestDesktop, groups ); }</span>
+<span class="lineNum"> 6 </span><span class="lineCov"> 1 : void run_Desktop_groupList() { RUN( TestDesktop, groupList ); }</span>
+<span class="lineNum"> 7 </span><span class="lineCov"> 4 : void run_Desktop_emptyGroupList() { RUN( TestDesktop, emptyGroupList ); }</span>
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_xapian.cpp.gcov.html b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_xapian.cpp.gcov.html
new file mode 100644
index 0000000..6e3ebb9
--- /dev/null
+++ b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_xapian.cpp.gcov.html
@@ -0,0 +1,73 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_xapian.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../../index.html">directory</a> - <a href="index.html">srv/build/pkg/ept-work/default/ept</a> - ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_xapian.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">4</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">4</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &quot;/home/mornfall/dev/pkg/ept-work/ept/core/xapian.test.h&quot;
+<span class="lineNum"> 2 </span> : #define RUN(x,y) x().y()
+<span class="lineNum"> 3 </span><span class="lineCov"> 1 : void run_Xapian_enquire() { RUN( TestXapian, enquire ); }</span>
+<span class="lineNum"> 4 </span><span class="lineCov"> 1 : void run_Xapian_listCount() { RUN( TestXapian, listCount ); }</span>
+<span class="lineNum"> 5 </span><span class="lineCov"> 1 : void run_Xapian_list() { RUN( TestXapian, list ); }</span>
+<span class="lineNum"> 6 </span><span class="lineCov"> 4 : void run_Xapian_checkQuery() { RUN( TestXapian, checkQuery ); }</span>
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_debtags.cpp.gcov.html b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_debtags.cpp.gcov.html
new file mode 100644
index 0000000..b72c713
--- /dev/null
+++ b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_debtags.cpp.gcov.html
@@ -0,0 +1,74 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_debtags.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../../index.html">directory</a> - <a href="index.html">srv/build/pkg/ept-work/default/ept</a> - ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_debtags.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">5</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">5</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &quot;/home/mornfall/dev/pkg/ept-work/ept/debtags/debtags.test.h&quot;
+<span class="lineNum"> 2 </span> : #define RUN(x,y) x().y()
+<span class="lineNum"> 3 </span><span class="lineCov"> 1 : void run_Debtags__1() { RUN( TestDebtags, _1 ); }</span>
+<span class="lineNum"> 4 </span><span class="lineCov"> 1 : void run_Debtags__2() { RUN( TestDebtags, _2 ); }</span>
+<span class="lineNum"> 5 </span><span class="lineCov"> 1 : void run_Debtags__3() { RUN( TestDebtags, _3 ); }</span>
+<span class="lineNum"> 6 </span><span class="lineCov"> 1 : void run_Debtags__4() { RUN( TestDebtags, _4 ); }</span>
+<span class="lineNum"> 7 </span><span class="lineCov"> 4 : void run_Debtags__5() { RUN( TestDebtags, _5 ); }</span>
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_expression.cpp.gcov.html b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_expression.cpp.gcov.html
new file mode 100644
index 0000000..563e81e
--- /dev/null
+++ b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_expression.cpp.gcov.html
@@ -0,0 +1,70 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_expression.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../../index.html">directory</a> - <a href="index.html">srv/build/pkg/ept-work/default/ept</a> - ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_expression.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &quot;/home/mornfall/dev/pkg/ept-work/ept/debtags/expression.test.h&quot;
+<span class="lineNum"> 2 </span> : #define RUN(x,y) x().y()
+<span class="lineNum"> 3 </span><span class="lineCov"> 4 : void run_Expression__1() { RUN( TestExpression, _1 ); }</span>
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_pkgid.cpp.gcov.html b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_pkgid.cpp.gcov.html
new file mode 100644
index 0000000..71f136f
--- /dev/null
+++ b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_pkgid.cpp.gcov.html
@@ -0,0 +1,71 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_pkgid.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../../index.html">directory</a> - <a href="index.html">srv/build/pkg/ept-work/default/ept</a> - ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_pkgid.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &quot;/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/pkgid.test.h&quot;
+<span class="lineNum"> 2 </span> : #define RUN(x,y) x().y()
+<span class="lineNum"> 3 </span><span class="lineCov"> 1 : void run_Pkgid__1() { RUN( TestPkgid, _1 ); }</span>
+<span class="lineNum"> 4 </span><span class="lineCov"> 4 : void run_Pkgid__2() { RUN( TestPkgid, _2 ); }</span>
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_serializer.cpp.gcov.html b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_serializer.cpp.gcov.html
new file mode 100644
index 0000000..687eaf4
--- /dev/null
+++ b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_serializer.cpp.gcov.html
@@ -0,0 +1,71 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_serializer.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../../index.html">directory</a> - <a href="index.html">srv/build/pkg/ept-work/default/ept</a> - ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_serializer.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &quot;/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/serializer.test.h&quot;
+<span class="lineNum"> 2 </span> : #define RUN(x,y) x().y()
+<span class="lineNum"> 3 </span><span class="lineCov"> 1 : void run_Serializer__1() { RUN( TestSerializer, _1 ); }</span>
+<span class="lineNum"> 4 </span><span class="lineCov"> 4 : void run_Serializer__2() { RUN( TestSerializer, _2 ); }</span>
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_vocabularymerger.cpp.gcov.html b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_vocabularymerger.cpp.gcov.html
new file mode 100644
index 0000000..5f9dbea
--- /dev/null
+++ b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_vocabularymerger.cpp.gcov.html
@@ -0,0 +1,72 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_vocabularymerger.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../../index.html">directory</a> - <a href="index.html">srv/build/pkg/ept-work/default/ept</a> - ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_vocabularymerger.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">3</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">3</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &quot;/home/mornfall/dev/pkg/ept-work/ept/debtags/maint/vocabularymerger.test.h&quot;
+<span class="lineNum"> 2 </span> : #define RUN(x,y) x().y()
+<span class="lineNum"> 3 </span><span class="lineCov"> 1 : void run_VocabularyMerger__1() { RUN( TestVocabularyMerger, _1 ); }</span>
+<span class="lineNum"> 4 </span><span class="lineCov"> 1 : void run_VocabularyMerger__2() { RUN( TestVocabularyMerger, _2 ); }</span>
+<span class="lineNum"> 5 </span><span class="lineCov"> 4 : void run_VocabularyMerger__3() { RUN( TestVocabularyMerger, _3 ); }</span>
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_vocabulary.cpp.gcov.html b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_vocabulary.cpp.gcov.html
new file mode 100644
index 0000000..45233da
--- /dev/null
+++ b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_vocabulary.cpp.gcov.html
@@ -0,0 +1,88 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_vocabulary.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../../index.html">directory</a> - <a href="index.html">srv/build/pkg/ept-work/default/ept</a> - ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_vocabulary.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">19</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">19</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &quot;/home/mornfall/dev/pkg/ept-work/ept/debtags/vocabulary.test.h&quot;
+<span class="lineNum"> 2 </span> : #define RUN(x,y) x().y()
+<span class="lineNum"> 3 </span><span class="lineCov"> 1 : void run_Vocabulary__1() { RUN( TestVocabulary, _1 ); }</span>
+<span class="lineNum"> 4 </span><span class="lineCov"> 1 : void run_Vocabulary__2() { RUN( TestVocabulary, _2 ); }</span>
+<span class="lineNum"> 5 </span><span class="lineCov"> 1 : void run_Vocabulary__3() { RUN( TestVocabulary, _3 ); }</span>
+<span class="lineNum"> 6 </span><span class="lineCov"> 1 : void run_Vocabulary__4() { RUN( TestVocabulary, _4 ); }</span>
+<span class="lineNum"> 7 </span><span class="lineCov"> 1 : void run_Vocabulary__5() { RUN( TestVocabulary, _5 ); }</span>
+<span class="lineNum"> 8 </span><span class="lineCov"> 1 : void run_Vocabulary__6() { RUN( TestVocabulary, _6 ); }</span>
+<span class="lineNum"> 9 </span><span class="lineCov"> 1 : void run_Vocabulary__7() { RUN( TestVocabulary, _7 ); }</span>
+<span class="lineNum"> 10 </span><span class="lineCov"> 1 : void run_Vocabulary__8() { RUN( TestVocabulary, _8 ); }</span>
+<span class="lineNum"> 11 </span><span class="lineCov"> 1 : void run_Vocabulary__9() { RUN( TestVocabulary, _9 ); }</span>
+<span class="lineNum"> 12 </span><span class="lineCov"> 1 : void run_Vocabulary__11() { RUN( TestVocabulary, _11 ); }</span>
+<span class="lineNum"> 13 </span><span class="lineCov"> 1 : void run_Vocabulary__12() { RUN( TestVocabulary, _12 ); }</span>
+<span class="lineNum"> 14 </span><span class="lineCov"> 1 : void run_Vocabulary__13() { RUN( TestVocabulary, _13 ); }</span>
+<span class="lineNum"> 15 </span><span class="lineCov"> 1 : void run_Vocabulary__14() { RUN( TestVocabulary, _14 ); }</span>
+<span class="lineNum"> 16 </span><span class="lineCov"> 1 : void run_Vocabulary__15() { RUN( TestVocabulary, _15 ); }</span>
+<span class="lineNum"> 17 </span><span class="lineCov"> 1 : void run_Vocabulary__16() { RUN( TestVocabulary, _16 ); }</span>
+<span class="lineNum"> 18 </span><span class="lineCov"> 1 : void run_Vocabulary__17() { RUN( TestVocabulary, _17 ); }</span>
+<span class="lineNum"> 19 </span><span class="lineCov"> 1 : void run_Vocabulary__18() { RUN( TestVocabulary, _18 ); }</span>
+<span class="lineNum"> 20 </span><span class="lineCov"> 1 : void run_Vocabulary__19() { RUN( TestVocabulary, _19 ); }</span>
+<span class="lineNum"> 21 </span><span class="lineCov"> 4 : void run_Vocabulary__21() { RUN( TestVocabulary, _21 ); }</span>
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_popcon_local.cpp.gcov.html b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_popcon_local.cpp.gcov.html
new file mode 100644
index 0000000..1b3c698
--- /dev/null
+++ b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_popcon_local.cpp.gcov.html
@@ -0,0 +1,70 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_popcon_local.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../../index.html">directory</a> - <a href="index.html">srv/build/pkg/ept-work/default/ept</a> - ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_popcon_local.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &quot;/home/mornfall/dev/pkg/ept-work/ept/popcon/local.test.h&quot;
+<span class="lineNum"> 2 </span> : #define RUN(x,y) x().y()
+<span class="lineNum"> 3 </span><span class="lineCov"> 4 : void run_PopconLocal_basicAccess() { RUN( TestPopconLocal, basicAccess ); }</span>
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_popcon_popcon.cpp.gcov.html b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_popcon_popcon.cpp.gcov.html
new file mode 100644
index 0000000..6b3ffb6
--- /dev/null
+++ b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_popcon_popcon.cpp.gcov.html
@@ -0,0 +1,74 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_popcon_popcon.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../../index.html">directory</a> - <a href="index.html">srv/build/pkg/ept-work/default/ept</a> - ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_popcon_popcon.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">5</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">5</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &quot;/home/mornfall/dev/pkg/ept-work/ept/popcon/popcon.test.h&quot;
+<span class="lineNum"> 2 </span> : #define RUN(x,y) x().y()
+<span class="lineNum"> 3 </span><span class="lineCov"> 1 : void run_Popcon_basicAccess() { RUN( TestPopcon, basicAccess ); }</span>
+<span class="lineNum"> 4 </span><span class="lineCov"> 1 : void run_Popcon_accessibility() { RUN( TestPopcon, accessibility ); }</span>
+<span class="lineNum"> 5 </span><span class="lineCov"> 1 : void run_Popcon_haveScores() { RUN( TestPopcon, haveScores ); }</span>
+<span class="lineNum"> 6 </span><span class="lineCov"> 1 : void run_Popcon_validScores() { RUN( TestPopcon, validScores ); }</span>
+<span class="lineNum"> 7 </span><span class="lineCov"> 4 : void run_Popcon_fallbackValues() { RUN( TestPopcon, fallbackValues ); }</span>
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_textsearch_textsearch.cpp.gcov.html b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_textsearch_textsearch.cpp.gcov.html
new file mode 100644
index 0000000..ae1605d
--- /dev/null
+++ b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_textsearch_textsearch.cpp.gcov.html
@@ -0,0 +1,75 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /srv/build/pkg/ept-work/default/ept/ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_textsearch_textsearch.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../../index.html">directory</a> - <a href="index.html">srv/build/pkg/ept-work/default/ept</a> - ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_textsearch_textsearch.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">6</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">6</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #include &quot;/home/mornfall/dev/pkg/ept-work/ept/textsearch/textsearch.test.h&quot;
+<span class="lineNum"> 2 </span> : #define RUN(x,y) x().y()
+<span class="lineNum"> 3 </span><span class="lineCov"> 1 : void run_Textsearch_empty() { RUN( TestTextsearch, empty ); }</span>
+<span class="lineNum"> 4 </span><span class="lineCov"> 1 : void run_Textsearch_basicAccess() { RUN( TestTextsearch, basicAccess ); }</span>
+<span class="lineNum"> 5 </span><span class="lineCov"> 1 : void run_Textsearch_queryAccess() { RUN( TestTextsearch, queryAccess ); }</span>
+<span class="lineNum"> 6 </span><span class="lineCov"> 1 : void run_Textsearch_partialOrQuery() { RUN( TestTextsearch, partialOrQuery ); }</span>
+<span class="lineNum"> 7 </span><span class="lineCov"> 1 : void run_Textsearch_docidByName() { RUN( TestTextsearch, docidByName ); }</span>
+<span class="lineNum"> 8 </span><span class="lineCov"> 4 : void run_Textsearch_values() { RUN( TestTextsearch, values ); }</span>
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-main.cpp.gcov.html b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-main.cpp.gcov.html
new file mode 100644
index 0000000..a5716f0
--- /dev/null
+++ b/rep/srv/build/pkg/ept-work/default/ept/ept-test-generated-main.cpp.gcov.html
@@ -0,0 +1,340 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /srv/build/pkg/ept-work/default/ept/ept-test-generated-main.cpp</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../../index.html">directory</a> - <a href="index.html">srv/build/pkg/ept-work/default/ept</a> - ept-test-generated-main.cpp</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #undef NDEBUG
+<span class="lineNum"> 2 </span> : #include &lt;wibble/test.h&gt;
+<span class="lineNum"> 3 </span> : #include &lt;wibble/test-runner.h&gt;
+<span class="lineNum"> 4 </span> : void run_AptRecord_checkLookup();
+<span class="lineNum"> 5 </span> : void run_AptRecord_checkLookupValue();
+<span class="lineNum"> 6 </span> : void run_AptRecord_checkLookupNumeric();
+<span class="lineNum"> 7 </span> : void run_AptRecord_checkShortDescription();
+<span class="lineNum"> 8 </span> : void run_AptRecord_checkList();
+<span class="lineNum"> 9 </span> : void run_AptRecord_nonexistent();
+<span class="lineNum"> 10 </span> : RunTest run_AptRecord[] = {
+<span class="lineNum"> 11 </span> : { &quot;checkLookup&quot;, run_AptRecord_checkLookup },
+<span class="lineNum"> 12 </span> : { &quot;checkLookupValue&quot;, run_AptRecord_checkLookupValue },
+<span class="lineNum"> 13 </span> : { &quot;checkLookupNumeric&quot;, run_AptRecord_checkLookupNumeric },
+<span class="lineNum"> 14 </span> : { &quot;checkShortDescription&quot;, run_AptRecord_checkShortDescription },
+<span class="lineNum"> 15 </span> : { &quot;checkList&quot;, run_AptRecord_checkList },
+<span class="lineNum"> 16 </span> : { &quot;nonexistent&quot;, run_AptRecord_nonexistent },
+<span class="lineNum"> 17 </span> : };
+<span class="lineNum"> 18 </span> : void run_Expression__1();
+<span class="lineNum"> 19 </span> : RunTest run_Expression[] = {
+<span class="lineNum"> 20 </span> : { &quot;_1&quot;, run_Expression__1 },
+<span class="lineNum"> 21 </span> : };
+<span class="lineNum"> 22 </span> : void run_Textsearch_empty();
+<span class="lineNum"> 23 </span> : void run_Textsearch_basicAccess();
+<span class="lineNum"> 24 </span> : void run_Textsearch_queryAccess();
+<span class="lineNum"> 25 </span> : void run_Textsearch_partialOrQuery();
+<span class="lineNum"> 26 </span> : void run_Textsearch_docidByName();
+<span class="lineNum"> 27 </span> : void run_Textsearch_values();
+<span class="lineNum"> 28 </span> : RunTest run_Textsearch[] = {
+<span class="lineNum"> 29 </span> : { &quot;empty&quot;, run_Textsearch_empty },
+<span class="lineNum"> 30 </span> : { &quot;basicAccess&quot;, run_Textsearch_basicAccess },
+<span class="lineNum"> 31 </span> : { &quot;queryAccess&quot;, run_Textsearch_queryAccess },
+<span class="lineNum"> 32 </span> : { &quot;partialOrQuery&quot;, run_Textsearch_partialOrQuery },
+<span class="lineNum"> 33 </span> : { &quot;docidByName&quot;, run_Textsearch_docidByName },
+<span class="lineNum"> 34 </span> : { &quot;values&quot;, run_Textsearch_values },
+<span class="lineNum"> 35 </span> : };
+<span class="lineNum"> 36 </span> : void run_VocabularyMerger__1();
+<span class="lineNum"> 37 </span> : void run_VocabularyMerger__2();
+<span class="lineNum"> 38 </span> : void run_VocabularyMerger__3();
+<span class="lineNum"> 39 </span> : RunTest run_VocabularyMerger[] = {
+<span class="lineNum"> 40 </span> : { &quot;_1&quot;, run_VocabularyMerger__1 },
+<span class="lineNum"> 41 </span> : { &quot;_2&quot;, run_VocabularyMerger__2 },
+<span class="lineNum"> 42 </span> : { &quot;_3&quot;, run_VocabularyMerger__3 },
+<span class="lineNum"> 43 </span> : };
+<span class="lineNum"> 44 </span> : void run_AptAction_basic();
+<span class="lineNum"> 45 </span> : void run_AptAction_revert();
+<span class="lineNum"> 46 </span> : void run_AptAction_keep();
+<span class="lineNum"> 47 </span> : RunTest run_AptAction[] = {
+<span class="lineNum"> 48 </span> : { &quot;basic&quot;, run_AptAction_basic },
+<span class="lineNum"> 49 </span> : { &quot;revert&quot;, run_AptAction_revert },
+<span class="lineNum"> 50 </span> : { &quot;keep&quot;, run_AptAction_keep },
+<span class="lineNum"> 51 </span> : };
+<span class="lineNum"> 52 </span> : void run_AptPackagerecord_supportedFields();
+<span class="lineNum"> 53 </span> : RunTest run_AptPackagerecord[] = {
+<span class="lineNum"> 54 </span> : { &quot;supportedFields&quot;, run_AptPackagerecord_supportedFields },
+<span class="lineNum"> 55 </span> : };
+<span class="lineNum"> 56 </span> : void run_Pkgid__1();
+<span class="lineNum"> 57 </span> : void run_Pkgid__2();
+<span class="lineNum"> 58 </span> : RunTest run_Pkgid[] = {
+<span class="lineNum"> 59 </span> : { &quot;_1&quot;, run_Pkgid__1 },
+<span class="lineNum"> 60 </span> : { &quot;_2&quot;, run_Pkgid__2 },
+<span class="lineNum"> 61 </span> : };
+<span class="lineNum"> 62 </span> : void run_Xapian_enquire();
+<span class="lineNum"> 63 </span> : void run_Xapian_listCount();
+<span class="lineNum"> 64 </span> : void run_Xapian_list();
+<span class="lineNum"> 65 </span> : void run_Xapian_checkQuery();
+<span class="lineNum"> 66 </span> : RunTest run_Xapian[] = {
+<span class="lineNum"> 67 </span> : { &quot;enquire&quot;, run_Xapian_enquire },
+<span class="lineNum"> 68 </span> : { &quot;listCount&quot;, run_Xapian_listCount },
+<span class="lineNum"> 69 </span> : { &quot;list&quot;, run_Xapian_list },
+<span class="lineNum"> 70 </span> : { &quot;checkQuery&quot;, run_Xapian_checkQuery },
+<span class="lineNum"> 71 </span> : };
+<span class="lineNum"> 72 </span> : void run_AptVersion_invalid();
+<span class="lineNum"> 73 </span> : void run_AptVersion_basic();
+<span class="lineNum"> 74 </span> : void run_AptVersion_comparison();
+<span class="lineNum"> 75 </span> : void run_AptVersion_valueCopy();
+<span class="lineNum"> 76 </span> : void run_AptVersion_upstreamVersion();
+<span class="lineNum"> 77 </span> : void run_AptVersion_policyComparison();
+<span class="lineNum"> 78 </span> : RunTest run_AptVersion[] = {
+<span class="lineNum"> 79 </span> : { &quot;invalid&quot;, run_AptVersion_invalid },
+<span class="lineNum"> 80 </span> : { &quot;basic&quot;, run_AptVersion_basic },
+<span class="lineNum"> 81 </span> : { &quot;comparison&quot;, run_AptVersion_comparison },
+<span class="lineNum"> 82 </span> : { &quot;valueCopy&quot;, run_AptVersion_valueCopy },
+<span class="lineNum"> 83 </span> : { &quot;upstreamVersion&quot;, run_AptVersion_upstreamVersion },
+<span class="lineNum"> 84 </span> : { &quot;policyComparison&quot;, run_AptVersion_policyComparison },
+<span class="lineNum"> 85 </span> : };
+<span class="lineNum"> 86 </span> : void run_Vocabulary__1();
+<span class="lineNum"> 87 </span> : void run_Vocabulary__2();
+<span class="lineNum"> 88 </span> : void run_Vocabulary__3();
+<span class="lineNum"> 89 </span> : void run_Vocabulary__4();
+<span class="lineNum"> 90 </span> : void run_Vocabulary__5();
+<span class="lineNum"> 91 </span> : void run_Vocabulary__6();
+<span class="lineNum"> 92 </span> : void run_Vocabulary__7();
+<span class="lineNum"> 93 </span> : void run_Vocabulary__8();
+<span class="lineNum"> 94 </span> : void run_Vocabulary__9();
+<span class="lineNum"> 95 </span> : void run_Vocabulary__11();
+<span class="lineNum"> 96 </span> : void run_Vocabulary__12();
+<span class="lineNum"> 97 </span> : void run_Vocabulary__13();
+<span class="lineNum"> 98 </span> : void run_Vocabulary__14();
+<span class="lineNum"> 99 </span> : void run_Vocabulary__15();
+<span class="lineNum"> 100 </span> : void run_Vocabulary__16();
+<span class="lineNum"> 101 </span> : void run_Vocabulary__17();
+<span class="lineNum"> 102 </span> : void run_Vocabulary__18();
+<span class="lineNum"> 103 </span> : void run_Vocabulary__19();
+<span class="lineNum"> 104 </span> : void run_Vocabulary__21();
+<span class="lineNum"> 105 </span> : RunTest run_Vocabulary[] = {
+<span class="lineNum"> 106 </span> : { &quot;_1&quot;, run_Vocabulary__1 },
+<span class="lineNum"> 107 </span> : { &quot;_2&quot;, run_Vocabulary__2 },
+<span class="lineNum"> 108 </span> : { &quot;_3&quot;, run_Vocabulary__3 },
+<span class="lineNum"> 109 </span> : { &quot;_4&quot;, run_Vocabulary__4 },
+<span class="lineNum"> 110 </span> : { &quot;_5&quot;, run_Vocabulary__5 },
+<span class="lineNum"> 111 </span> : { &quot;_6&quot;, run_Vocabulary__6 },
+<span class="lineNum"> 112 </span> : { &quot;_7&quot;, run_Vocabulary__7 },
+<span class="lineNum"> 113 </span> : { &quot;_8&quot;, run_Vocabulary__8 },
+<span class="lineNum"> 114 </span> : { &quot;_9&quot;, run_Vocabulary__9 },
+<span class="lineNum"> 115 </span> : { &quot;_11&quot;, run_Vocabulary__11 },
+<span class="lineNum"> 116 </span> : { &quot;_12&quot;, run_Vocabulary__12 },
+<span class="lineNum"> 117 </span> : { &quot;_13&quot;, run_Vocabulary__13 },
+<span class="lineNum"> 118 </span> : { &quot;_14&quot;, run_Vocabulary__14 },
+<span class="lineNum"> 119 </span> : { &quot;_15&quot;, run_Vocabulary__15 },
+<span class="lineNum"> 120 </span> : { &quot;_16&quot;, run_Vocabulary__16 },
+<span class="lineNum"> 121 </span> : { &quot;_17&quot;, run_Vocabulary__17 },
+<span class="lineNum"> 122 </span> : { &quot;_18&quot;, run_Vocabulary__18 },
+<span class="lineNum"> 123 </span> : { &quot;_19&quot;, run_Vocabulary__19 },
+<span class="lineNum"> 124 </span> : { &quot;_21&quot;, run_Vocabulary__21 },
+<span class="lineNum"> 125 </span> : };
+<span class="lineNum"> 126 </span> : void run_CoreApt_token();
+<span class="lineNum"> 127 </span> : void run_CoreApt_tokenVersion();
+<span class="lineNum"> 128 </span> : void run_CoreApt_packageName();
+<span class="lineNum"> 129 </span> : void run_CoreApt_packageCount();
+<span class="lineNum"> 130 </span> : void run_CoreApt_packageNameList();
+<span class="lineNum"> 131 </span> : void run_CoreApt_versionCount();
+<span class="lineNum"> 132 </span> : void run_CoreApt_versionPackage();
+<span class="lineNum"> 133 </span> : void run_CoreApt_validate();
+<span class="lineNum"> 134 </span> : void run_CoreApt_packageState();
+<span class="lineNum"> 135 </span> : void run_CoreApt_packageState2();
+<span class="lineNum"> 136 </span> : void run_CoreApt_exists();
+<span class="lineNum"> 137 </span> : void run_CoreApt_invalidate();
+<span class="lineNum"> 138 </span> : RunTest run_CoreApt[] = {
+<span class="lineNum"> 139 </span> : { &quot;token&quot;, run_CoreApt_token },
+<span class="lineNum"> 140 </span> : { &quot;tokenVersion&quot;, run_CoreApt_tokenVersion },
+<span class="lineNum"> 141 </span> : { &quot;packageName&quot;, run_CoreApt_packageName },
+<span class="lineNum"> 142 </span> : { &quot;packageCount&quot;, run_CoreApt_packageCount },
+<span class="lineNum"> 143 </span> : { &quot;packageNameList&quot;, run_CoreApt_packageNameList },
+<span class="lineNum"> 144 </span> : { &quot;versionCount&quot;, run_CoreApt_versionCount },
+<span class="lineNum"> 145 </span> : { &quot;versionPackage&quot;, run_CoreApt_versionPackage },
+<span class="lineNum"> 146 </span> : { &quot;validate&quot;, run_CoreApt_validate },
+<span class="lineNum"> 147 </span> : { &quot;packageState&quot;, run_CoreApt_packageState },
+<span class="lineNum"> 148 </span> : { &quot;packageState2&quot;, run_CoreApt_packageState2 },
+<span class="lineNum"> 149 </span> : { &quot;exists&quot;, run_CoreApt_exists },
+<span class="lineNum"> 150 </span> : { &quot;invalidate&quot;, run_CoreApt_invalidate },
+<span class="lineNum"> 151 </span> : };
+<span class="lineNum"> 152 </span> : void run_Popcon_basicAccess();
+<span class="lineNum"> 153 </span> : void run_Popcon_accessibility();
+<span class="lineNum"> 154 </span> : void run_Popcon_haveScores();
+<span class="lineNum"> 155 </span> : void run_Popcon_validScores();
+<span class="lineNum"> 156 </span> : void run_Popcon_fallbackValues();
+<span class="lineNum"> 157 </span> : RunTest run_Popcon[] = {
+<span class="lineNum"> 158 </span> : { &quot;basicAccess&quot;, run_Popcon_basicAccess },
+<span class="lineNum"> 159 </span> : { &quot;accessibility&quot;, run_Popcon_accessibility },
+<span class="lineNum"> 160 </span> : { &quot;haveScores&quot;, run_Popcon_haveScores },
+<span class="lineNum"> 161 </span> : { &quot;validScores&quot;, run_Popcon_validScores },
+<span class="lineNum"> 162 </span> : { &quot;fallbackValues&quot;, run_Popcon_fallbackValues },
+<span class="lineNum"> 163 </span> : };
+<span class="lineNum"> 164 </span> : void run_Apt_iterators();
+<span class="lineNum"> 165 </span> : void run_Apt_aptExists();
+<span class="lineNum"> 166 </span> : void run_Apt_timestamp();
+<span class="lineNum"> 167 </span> : void run_Apt_validity();
+<span class="lineNum"> 168 </span> : void run_Apt_versions();
+<span class="lineNum"> 169 </span> : void run_Apt_versionValidity();
+<span class="lineNum"> 170 </span> : void run_Apt_rawRecord();
+<span class="lineNum"> 171 </span> : void run_Apt_state();
+<span class="lineNum"> 172 </span> : void run_Apt_recordIteration();
+<span class="lineNum"> 173 </span> : void run_Apt_recordIteration2();
+<span class="lineNum"> 174 </span> : void run_Apt_stlIteration();
+<span class="lineNum"> 175 </span> : void run_Apt_stlRecordIteration();
+<span class="lineNum"> 176 </span> : void run_Apt_checkUpdates();
+<span class="lineNum"> 177 </span> : RunTest run_Apt[] = {
+<span class="lineNum"> 178 </span> : { &quot;iterators&quot;, run_Apt_iterators },
+<span class="lineNum"> 179 </span> : { &quot;aptExists&quot;, run_Apt_aptExists },
+<span class="lineNum"> 180 </span> : { &quot;timestamp&quot;, run_Apt_timestamp },
+<span class="lineNum"> 181 </span> : { &quot;validity&quot;, run_Apt_validity },
+<span class="lineNum"> 182 </span> : { &quot;versions&quot;, run_Apt_versions },
+<span class="lineNum"> 183 </span> : { &quot;versionValidity&quot;, run_Apt_versionValidity },
+<span class="lineNum"> 184 </span> : { &quot;rawRecord&quot;, run_Apt_rawRecord },
+<span class="lineNum"> 185 </span> : { &quot;state&quot;, run_Apt_state },
+<span class="lineNum"> 186 </span> : { &quot;recordIteration&quot;, run_Apt_recordIteration },
+<span class="lineNum"> 187 </span> : { &quot;recordIteration2&quot;, run_Apt_recordIteration2 },
+<span class="lineNum"> 188 </span> : { &quot;stlIteration&quot;, run_Apt_stlIteration },
+<span class="lineNum"> 189 </span> : { &quot;stlRecordIteration&quot;, run_Apt_stlRecordIteration },
+<span class="lineNum"> 190 </span> : { &quot;checkUpdates&quot;, run_Apt_checkUpdates },
+<span class="lineNum"> 191 </span> : };
+<span class="lineNum"> 192 </span> : void run_Desktop_iteration();
+<span class="lineNum"> 193 </span> : void run_Desktop_groupProperty();
+<span class="lineNum"> 194 </span> : void run_Desktop_groups();
+<span class="lineNum"> 195 </span> : void run_Desktop_groupList();
+<span class="lineNum"> 196 </span> : void run_Desktop_emptyGroupList();
+<span class="lineNum"> 197 </span> : RunTest run_Desktop[] = {
+<span class="lineNum"> 198 </span> : { &quot;iteration&quot;, run_Desktop_iteration },
+<span class="lineNum"> 199 </span> : { &quot;groupProperty&quot;, run_Desktop_groupProperty },
+<span class="lineNum"> 200 </span> : { &quot;groups&quot;, run_Desktop_groups },
+<span class="lineNum"> 201 </span> : { &quot;groupList&quot;, run_Desktop_groupList },
+<span class="lineNum"> 202 </span> : { &quot;emptyGroupList&quot;, run_Desktop_emptyGroupList },
+<span class="lineNum"> 203 </span> : };
+<span class="lineNum"> 204 </span> : void run_Debtags__1();
+<span class="lineNum"> 205 </span> : void run_Debtags__2();
+<span class="lineNum"> 206 </span> : void run_Debtags__3();
+<span class="lineNum"> 207 </span> : void run_Debtags__4();
+<span class="lineNum"> 208 </span> : void run_Debtags__5();
+<span class="lineNum"> 209 </span> : RunTest run_Debtags[] = {
+<span class="lineNum"> 210 </span> : { &quot;_1&quot;, run_Debtags__1 },
+<span class="lineNum"> 211 </span> : { &quot;_2&quot;, run_Debtags__2 },
+<span class="lineNum"> 212 </span> : { &quot;_3&quot;, run_Debtags__3 },
+<span class="lineNum"> 213 </span> : { &quot;_4&quot;, run_Debtags__4 },
+<span class="lineNum"> 214 </span> : { &quot;_5&quot;, run_Debtags__5 },
+<span class="lineNum"> 215 </span> : };
+<span class="lineNum"> 216 </span> : void run_AptRecordparser_parsing();
+<span class="lineNum"> 217 </span> : void run_AptRecordparser_fieldTuples();
+<span class="lineNum"> 218 </span> : void run_AptRecordparser_fieldKeys();
+<span class="lineNum"> 219 </span> : void run_AptRecordparser_fieldValues();
+<span class="lineNum"> 220 </span> : void run_AptRecordparser_findByName();
+<span class="lineNum"> 221 </span> : void run_AptRecordparser_indexing();
+<span class="lineNum"> 222 </span> : void run_AptRecordparser_missingBehaviour();
+<span class="lineNum"> 223 </span> : void run_AptRecordparser_rescan();
+<span class="lineNum"> 224 </span> : void run_AptRecordparser_realLife();
+<span class="lineNum"> 225 </span> : void run_AptRecordparser_bufferTermination();
+<span class="lineNum"> 226 </span> : void run_AptRecordparser_bufferTermination2();
+<span class="lineNum"> 227 </span> : void run_AptRecordparser_bufferTermination3();
+<span class="lineNum"> 228 </span> : RunTest run_AptRecordparser[] = {
+<span class="lineNum"> 229 </span> : { &quot;parsing&quot;, run_AptRecordparser_parsing },
+<span class="lineNum"> 230 </span> : { &quot;fieldTuples&quot;, run_AptRecordparser_fieldTuples },
+<span class="lineNum"> 231 </span> : { &quot;fieldKeys&quot;, run_AptRecordparser_fieldKeys },
+<span class="lineNum"> 232 </span> : { &quot;fieldValues&quot;, run_AptRecordparser_fieldValues },
+<span class="lineNum"> 233 </span> : { &quot;findByName&quot;, run_AptRecordparser_findByName },
+<span class="lineNum"> 234 </span> : { &quot;indexing&quot;, run_AptRecordparser_indexing },
+<span class="lineNum"> 235 </span> : { &quot;missingBehaviour&quot;, run_AptRecordparser_missingBehaviour },
+<span class="lineNum"> 236 </span> : { &quot;rescan&quot;, run_AptRecordparser_rescan },
+<span class="lineNum"> 237 </span> : { &quot;realLife&quot;, run_AptRecordparser_realLife },
+<span class="lineNum"> 238 </span> : { &quot;bufferTermination&quot;, run_AptRecordparser_bufferTermination },
+<span class="lineNum"> 239 </span> : { &quot;bufferTermination2&quot;, run_AptRecordparser_bufferTermination2 },
+<span class="lineNum"> 240 </span> : { &quot;bufferTermination3&quot;, run_AptRecordparser_bufferTermination3 },
+<span class="lineNum"> 241 </span> : };
+<span class="lineNum"> 242 </span> : void run_PopconLocal_basicAccess();
+<span class="lineNum"> 243 </span> : RunTest run_PopconLocal[] = {
+<span class="lineNum"> 244 </span> : { &quot;basicAccess&quot;, run_PopconLocal_basicAccess },
+<span class="lineNum"> 245 </span> : };
+<span class="lineNum"> 246 </span> : void run_Serializer__1();
+<span class="lineNum"> 247 </span> : void run_Serializer__2();
+<span class="lineNum"> 248 </span> : RunTest run_Serializer[] = {
+<span class="lineNum"> 249 </span> : { &quot;_1&quot;, run_Serializer__1 },
+<span class="lineNum"> 250 </span> : { &quot;_2&quot;, run_Serializer__2 },
+<span class="lineNum"> 251 </span> : };
+<span class="lineNum"> 252 </span> : RunSuite suites[] = {
+<span class="lineNum"> 253 </span> : { &quot;AptRecord&quot;, run_AptRecord, 6 },
+<span class="lineNum"> 254 </span> : { &quot;Expression&quot;, run_Expression, 1 },
+<span class="lineNum"> 255 </span> : { &quot;Textsearch&quot;, run_Textsearch, 6 },
+<span class="lineNum"> 256 </span> : { &quot;VocabularyMerger&quot;, run_VocabularyMerger, 3 },
+<span class="lineNum"> 257 </span> : { &quot;AptAction&quot;, run_AptAction, 3 },
+<span class="lineNum"> 258 </span> : { &quot;AptPackagerecord&quot;, run_AptPackagerecord, 1 },
+<span class="lineNum"> 259 </span> : { &quot;Pkgid&quot;, run_Pkgid, 2 },
+<span class="lineNum"> 260 </span> : { &quot;Xapian&quot;, run_Xapian, 4 },
+<span class="lineNum"> 261 </span> : { &quot;AptVersion&quot;, run_AptVersion, 6 },
+<span class="lineNum"> 262 </span> : { &quot;Vocabulary&quot;, run_Vocabulary, 19 },
+<span class="lineNum"> 263 </span> : { &quot;CoreApt&quot;, run_CoreApt, 12 },
+<span class="lineNum"> 264 </span> : { &quot;Popcon&quot;, run_Popcon, 5 },
+<span class="lineNum"> 265 </span> : { &quot;Apt&quot;, run_Apt, 13 },
+<span class="lineNum"> 266 </span> : { &quot;Desktop&quot;, run_Desktop, 5 },
+<span class="lineNum"> 267 </span> : { &quot;Debtags&quot;, run_Debtags, 5 },
+<span class="lineNum"> 268 </span> : { &quot;AptRecordparser&quot;, run_AptRecordparser, 12 },
+<span class="lineNum"> 269 </span> : { &quot;PopconLocal&quot;, run_PopconLocal, 1 },
+<span class="lineNum"> 270 </span> : { &quot;Serializer&quot;, run_Serializer, 2 },
+<span class="lineNum"> 271 </span> : };
+<span class="lineNum"> 272 </span> : #include &lt;wibble/test-main.h&gt;
+<span class="lineNum"> 273 </span><span class="lineCov"> 3 : int assertFailure = 0;</span>
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/srv/build/pkg/ept-work/default/ept/index.html b/rep/srv/build/pkg/ept-work/default/ept/index.html
new file mode 100644
index 0000000..d908b39
--- /dev/null
+++ b/rep/srv/build/pkg/ept-work/default/ept/index.html
@@ -0,0 +1,245 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /srv/build/pkg/ept-work/default/ept</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../../index.html">directory</a> - /srv/build/pkg/ept-work/default/ept</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">107</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">107</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_apt.cpp.gcov.html">ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_apt.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">13&nbsp;/&nbsp;13&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_packagerecord.cpp.gcov.html">ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_packagerecord.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">1&nbsp;/&nbsp;1&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_recordparser.cpp.gcov.html">ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_recordparser.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">12&nbsp;/&nbsp;12&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_version.cpp.gcov.html">ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_apt_version.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">6&nbsp;/&nbsp;6&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt.cpp.gcov.html">ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">12&nbsp;/&nbsp;12&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt_action.cpp.gcov.html">ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt_action.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">3&nbsp;/&nbsp;3&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt_record.cpp.gcov.html">ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_apt_record.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">6&nbsp;/&nbsp;6&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_desktop.cpp.gcov.html">ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_desktop.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">5&nbsp;/&nbsp;5&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_xapian.cpp.gcov.html">ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_core_xapian.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">4&nbsp;/&nbsp;4&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_debtags.cpp.gcov.html">ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_debtags.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">5&nbsp;/&nbsp;5&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_expression.cpp.gcov.html">ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_expression.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">1&nbsp;/&nbsp;1&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_pkgid.cpp.gcov.html">ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_pkgid.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">2&nbsp;/&nbsp;2&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_serializer.cpp.gcov.html">ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_serializer.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">2&nbsp;/&nbsp;2&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_vocabularymerger.cpp.gcov.html">ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_maint_vocabularymerger.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">3&nbsp;/&nbsp;3&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_vocabulary.cpp.gcov.html">ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_debtags_vocabulary.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">19&nbsp;/&nbsp;19&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_popcon_local.cpp.gcov.html">ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_popcon_local.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">1&nbsp;/&nbsp;1&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_popcon_popcon.cpp.gcov.html">ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_popcon_popcon.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">5&nbsp;/&nbsp;5&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_textsearch_textsearch.cpp.gcov.html">ept-test-generated-_home_mornfall_dev_pkg_ept-work_ept_textsearch_textsearch.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">6&nbsp;/&nbsp;6&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ept-test-generated-main.cpp.gcov.html">ept-test-generated-main.cpp</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">1&nbsp;/&nbsp;1&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/apt-pkg/acquire.h.gcov.html b/rep/usr/include/apt-pkg/acquire.h.gcov.html
new file mode 100644
index 0000000..e55d6ed
--- /dev/null
+++ b/rep/usr/include/apt-pkg/acquire.h.gcov.html
@@ -0,0 +1,835 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/apt-pkg/acquire.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">usr/include/apt-pkg</a> - acquire.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">5</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">0.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">0</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: cpp; mode: fold -*-
+<span class="lineNum"> 2 </span> : // Description /*{{{*/
+<span class="lineNum"> 3 </span> : // $Id: acquire.h,v 1.29.2.1 2003/12/24 23:09:17 mdz Exp $
+<span class="lineNum"> 4 </span> : /* ######################################################################
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : Acquire - File Acquiration
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : This module contians the Acquire system. It is responsible for bringing
+<span class="lineNum"> 9 </span> : files into the local pathname space. It deals with URIs for files and
+<span class="lineNum"> 10 </span> : URI handlers responsible for downloading or finding the URIs.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : Each file to download is represented by an Acquire::Item class subclassed
+<span class="lineNum"> 13 </span> : into a specialization. The Item class can add itself to several URI
+<span class="lineNum"> 14 </span> : acquire queues each prioritized by the download scheduler. When the
+<span class="lineNum"> 15 </span> : system is run the proper URI handlers are spawned and the the acquire
+<span class="lineNum"> 16 </span> : queues are fed into the handlers by the schedular until the queues are
+<span class="lineNum"> 17 </span> : empty. This allows for an Item to be downloaded from an alternate source
+<span class="lineNum"> 18 </span> : if the first try turns out to fail. It also alows concurrent downloading
+<span class="lineNum"> 19 </span> : of multiple items from multiple sources as well as dynamic balancing
+<span class="lineNum"> 20 </span> : of load between the sources.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : Schedualing of downloads is done on a first ask first get basis. This
+<span class="lineNum"> 23 </span> : preserves the order of the download as much as possible. And means the
+<span class="lineNum"> 24 </span> : fastest source will tend to process the largest number of files.
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : Internal methods and queues for performing gzip decompression,
+<span class="lineNum"> 27 </span> : md5sum hashing and file copying are provided to allow items to apply
+<span class="lineNum"> 28 </span> : a number of transformations to the data files they are working with.
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : ##################################################################### */
+<span class="lineNum"> 31 </span> : /*}}}*/
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : /** \defgroup acquire Acquire system
+<span class="lineNum"> 34 </span> : *
+<span class="lineNum"> 35 </span> : * \brief The Acquire system is responsible for retrieving files from
+<span class="lineNum"> 36 </span> : * local or remote URIs and postprocessing them (for instance,
+<span class="lineNum"> 37 </span> : * verifying their authenticity). The core class in this system is
+<span class="lineNum"> 38 </span> : * pkgAcquire, which is responsible for managing the download queues
+<span class="lineNum"> 39 </span> : * during the download. There is at least one download queue for
+<span class="lineNum"> 40 </span> : * each supported protocol; protocols such as http may provide one
+<span class="lineNum"> 41 </span> : * queue per host.
+<span class="lineNum"> 42 </span> : *
+<span class="lineNum"> 43 </span> : * Each file to download is represented by a subclass of
+<span class="lineNum"> 44 </span> : * pkgAcquire::Item. The files add themselves to the download
+<span class="lineNum"> 45 </span> : * queue(s) by providing their URI information to
+<span class="lineNum"> 46 </span> : * pkgAcquire::Item::QueueURI, which calls pkgAcquire::Enqueue.
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * Once the system is set up, the Run method will spawn subprocesses
+<span class="lineNum"> 49 </span> : * to handle the enqueued URIs; the scheduler will then take items
+<span class="lineNum"> 50 </span> : * from the queues and feed them into the handlers until the queues
+<span class="lineNum"> 51 </span> : * are empty.
+<span class="lineNum"> 52 </span> : *
+<span class="lineNum"> 53 </span> : * \todo Acquire supports inserting an object into several queues at
+<span class="lineNum"> 54 </span> : * once, but it is not clear what its behavior in this case is, and
+<span class="lineNum"> 55 </span> : * no subclass of pkgAcquire::Item seems to actually use this
+<span class="lineNum"> 56 </span> : * capability.
+<span class="lineNum"> 57 </span> : */
+<span class="lineNum"> 58 </span> :
+<span class="lineNum"> 59 </span> : /** \addtogroup acquire
+<span class="lineNum"> 60 </span> : *
+<span class="lineNum"> 61 </span> : * @{
+<span class="lineNum"> 62 </span> : *
+<span class="lineNum"> 63 </span> : * \file acquire.h
+<span class="lineNum"> 64 </span> : */
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span> : #ifndef PKGLIB_ACQUIRE_H
+<span class="lineNum"> 67 </span> : #define PKGLIB_ACQUIRE_H
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span> : #include &lt;vector&gt;
+<span class="lineNum"> 70 </span> : #include &lt;string&gt;
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span> : using std::vector;
+<span class="lineNum"> 73 </span> : using std::string;
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span> :
+<span class="lineNum"> 76 </span> : #include &lt;sys/time.h&gt;
+<span class="lineNum"> 77 </span> : #include &lt;unistd.h&gt;
+<span class="lineNum"> 78 </span> :
+<span class="lineNum"> 79 </span> : class pkgAcquireStatus;
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span> : /** \brief The core download scheduler.
+<span class="lineNum"> 82 </span> : *
+<span class="lineNum"> 83 </span> : * This class represents an ongoing download. It manages the lists
+<span class="lineNum"> 84 </span> : * of active and pending downloads and handles setting up and tearing
+<span class="lineNum"> 85 </span> : * down download-related structures.
+<span class="lineNum"> 86 </span> : *
+<span class="lineNum"> 87 </span> : * \todo Why all the protected data items and methods?
+<span class="lineNum"> 88 </span> : */
+<span class="lineNum"> 89 </span> : class pkgAcquire
+<span class="lineNum"> 90 </span> : {
+<span class="lineNum"> 91 </span> : public:
+<span class="lineNum"> 92 </span> :
+<span class="lineNum"> 93 </span> : class Item;
+<span class="lineNum"> 94 </span> : class Queue;
+<span class="lineNum"> 95 </span> : class Worker;
+<span class="lineNum"> 96 </span> : struct MethodConfig;
+<span class="lineNum"> 97 </span> : struct ItemDesc;
+<span class="lineNum"> 98 </span> : friend class Item;
+<span class="lineNum"> 99 </span> : friend class Queue;
+<span class="lineNum"> 100 </span> :
+<span class="lineNum"> 101 </span> : typedef vector&lt;Item *&gt;::iterator ItemIterator;
+<span class="lineNum"> 102 </span> : typedef vector&lt;Item *&gt;::const_iterator ItemCIterator;
+<span class="lineNum"> 103 </span> :
+<span class="lineNum"> 104 </span> : protected:
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span> : /** \brief A list of items to download.
+<span class="lineNum"> 107 </span> : *
+<span class="lineNum"> 108 </span> : * This is built monotonically as items are created and only
+<span class="lineNum"> 109 </span> : * emptied when the download shuts down.
+<span class="lineNum"> 110 </span> : */
+<span class="lineNum"> 111 </span> : vector&lt;Item *&gt; Items;
+<span class="lineNum"> 112 </span> :
+<span class="lineNum"> 113 </span> : /** \brief The head of the list of active queues.
+<span class="lineNum"> 114 </span> : *
+<span class="lineNum"> 115 </span> : * \todo why a hand-managed list of queues instead of std::list or
+<span class="lineNum"> 116 </span> : * std::set?
+<span class="lineNum"> 117 </span> : */
+<span class="lineNum"> 118 </span> : Queue *Queues;
+<span class="lineNum"> 119 </span> :
+<span class="lineNum"> 120 </span> : /** \brief The head of the list of active workers.
+<span class="lineNum"> 121 </span> : *
+<span class="lineNum"> 122 </span> : * \todo why a hand-managed list of workers instead of std::list
+<span class="lineNum"> 123 </span> : * or std::set?
+<span class="lineNum"> 124 </span> : */
+<span class="lineNum"> 125 </span> : Worker *Workers;
+<span class="lineNum"> 126 </span> :
+<span class="lineNum"> 127 </span> : /** \brief The head of the list of acquire method configurations.
+<span class="lineNum"> 128 </span> : *
+<span class="lineNum"> 129 </span> : * Each protocol (http, ftp, gzip, etc) via which files can be
+<span class="lineNum"> 130 </span> : * fetched can have a representation in this list. The
+<span class="lineNum"> 131 </span> : * configuration data is filled in by parsing the 100 Capabilities
+<span class="lineNum"> 132 </span> : * string output by a method on startup (see
+<span class="lineNum"> 133 </span> : * pkgAcqMethod::pkgAcqMethod and pkgAcquire::GetConfig).
+<span class="lineNum"> 134 </span> : *
+<span class="lineNum"> 135 </span> : * \todo why a hand-managed config dictionary instead of std::map?
+<span class="lineNum"> 136 </span> : */
+<span class="lineNum"> 137 </span> : MethodConfig *Configs;
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> : /** \brief The progress indicator for this download. */
+<span class="lineNum"> 140 </span> : pkgAcquireStatus *Log;
+<span class="lineNum"> 141 </span> :
+<span class="lineNum"> 142 </span> : /** \brief The total size of the files which are to be fetched.
+<span class="lineNum"> 143 </span> : *
+<span class="lineNum"> 144 </span> : * This is not necessarily the total number of bytes to download
+<span class="lineNum"> 145 </span> : * when, e.g., download resumption and list updates via patches
+<span class="lineNum"> 146 </span> : * are taken into account.
+<span class="lineNum"> 147 </span> : */
+<span class="lineNum"> 148 </span> : unsigned long ToFetch;
+<span class="lineNum"> 149 </span> :
+<span class="lineNum"> 150 </span> : // Configurable parameters for the scheduler
+<span class="lineNum"> 151 </span> :
+<span class="lineNum"> 152 </span> : /** \brief Represents the queuing strategy for remote URIs. */
+<span class="lineNum"> 153 </span> : enum QueueStrategy {
+<span class="lineNum"> 154 </span> : /** \brief Generate one queue for each protocol/host combination; downloads from
+<span class="lineNum"> 155 </span> : * multiple hosts can proceed in parallel.
+<span class="lineNum"> 156 </span> : */
+<span class="lineNum"> 157 </span> : QueueHost,
+<span class="lineNum"> 158 </span> : /** \brief Generate a single queue for each protocol; serialize
+<span class="lineNum"> 159 </span> : * downloads from multiple hosts.
+<span class="lineNum"> 160 </span> : */
+<span class="lineNum"> 161 </span> : QueueAccess} QueueMode;
+<span class="lineNum"> 162 </span> :
+<span class="lineNum"> 163 </span> : /** \brief If \b true, debugging information will be dumped to std::clog. */
+<span class="lineNum"> 164 </span> : bool Debug;
+<span class="lineNum"> 165 </span> : /** \brief If \b true, a download is currently in progress. */
+<span class="lineNum"> 166 </span> : bool Running;
+<span class="lineNum"> 167 </span> :
+<span class="lineNum"> 168 </span> : /** \brief Add the given item to the list of items. */
+<span class="lineNum"> 169 </span> : void Add(Item *Item);
+<span class="lineNum"> 170 </span> :
+<span class="lineNum"> 171 </span> : /** \brief Remove the given item from the list of items. */
+<span class="lineNum"> 172 </span> : void Remove(Item *Item);
+<span class="lineNum"> 173 </span> :
+<span class="lineNum"> 174 </span> : /** \brief Add the given worker to the list of workers. */
+<span class="lineNum"> 175 </span> : void Add(Worker *Work);
+<span class="lineNum"> 176 </span> :
+<span class="lineNum"> 177 </span> : /** \brief Remove the given worker from the list of workers. */
+<span class="lineNum"> 178 </span> : void Remove(Worker *Work);
+<span class="lineNum"> 179 </span> :
+<span class="lineNum"> 180 </span> : /** \brief Insert the given fetch request into the appropriate queue.
+<span class="lineNum"> 181 </span> : *
+<span class="lineNum"> 182 </span> : * \param Item The URI to download and the item to download it
+<span class="lineNum"> 183 </span> : * for. Copied by value into the queue; no reference to Item is
+<span class="lineNum"> 184 </span> : * retained.
+<span class="lineNum"> 185 </span> : */
+<span class="lineNum"> 186 </span> : void Enqueue(ItemDesc &amp;Item);
+<span class="lineNum"> 187 </span> :
+<span class="lineNum"> 188 </span> : /** \brief Remove all fetch requests for this item from all queues. */
+<span class="lineNum"> 189 </span> : void Dequeue(Item *Item);
+<span class="lineNum"> 190 </span> :
+<span class="lineNum"> 191 </span> : /** \brief Determine the fetch method and queue of a URI.
+<span class="lineNum"> 192 </span> : *
+<span class="lineNum"> 193 </span> : * \param URI The URI to fetch.
+<span class="lineNum"> 194 </span> : *
+<span class="lineNum"> 195 </span> : * \param[out] Config A location in which to place the method via
+<span class="lineNum"> 196 </span> : * which the URI is to be fetched.
+<span class="lineNum"> 197 </span> : *
+<span class="lineNum"> 198 </span> : * \return the string-name of the queue in which a fetch request
+<span class="lineNum"> 199 </span> : * for the given URI should be placed.
+<span class="lineNum"> 200 </span> : */
+<span class="lineNum"> 201 </span> : string QueueName(string URI,MethodConfig const *&amp;Config);
+<span class="lineNum"> 202 </span> :
+<span class="lineNum"> 203 </span> : /** \brief Build up the set of file descriptors upon which select() should
+<span class="lineNum"> 204 </span> : * block.
+<span class="lineNum"> 205 </span> : *
+<span class="lineNum"> 206 </span> : * The default implementation inserts the file descriptors
+<span class="lineNum"> 207 </span> : * corresponding to active downloads.
+<span class="lineNum"> 208 </span> : *
+<span class="lineNum"> 209 </span> : * \param[out] Fd The largest file descriptor in the generated sets.
+<span class="lineNum"> 210 </span> : *
+<span class="lineNum"> 211 </span> : * \param[out] RSet The set of file descriptors that should be
+<span class="lineNum"> 212 </span> : * watched for input.
+<span class="lineNum"> 213 </span> : *
+<span class="lineNum"> 214 </span> : * \param[out] WSet The set of file descriptors that should be
+<span class="lineNum"> 215 </span> : * watched for output.
+<span class="lineNum"> 216 </span> : */
+<span class="lineNum"> 217 </span> : virtual void SetFds(int &amp;Fd,fd_set *RSet,fd_set *WSet);
+<span class="lineNum"> 218 </span> :
+<span class="lineNum"> 219 </span> : /** Handle input from and output to file descriptors which select()
+<span class="lineNum"> 220 </span> : * has determined are ready. The default implementation
+<span class="lineNum"> 221 </span> : * dispatches to all active downloads.
+<span class="lineNum"> 222 </span> : *
+<span class="lineNum"> 223 </span> : * \param RSet The set of file descriptors that are ready for
+<span class="lineNum"> 224 </span> : * input.
+<span class="lineNum"> 225 </span> : *
+<span class="lineNum"> 226 </span> : * \param WSet The set of file descriptors that are ready for
+<span class="lineNum"> 227 </span> : * output.
+<span class="lineNum"> 228 </span> : */
+<span class="lineNum"> 229 </span> : virtual void RunFds(fd_set *RSet,fd_set *WSet);
+<span class="lineNum"> 230 </span> :
+<span class="lineNum"> 231 </span> : /** \brief Check for idle queues with ready-to-fetch items.
+<span class="lineNum"> 232 </span> : *
+<span class="lineNum"> 233 </span> : * Called by pkgAcquire::Queue::Done each time an item is dequeued
+<span class="lineNum"> 234 </span> : * but remains on some queues; i.e., another queue should start
+<span class="lineNum"> 235 </span> : * fetching it.
+<span class="lineNum"> 236 </span> : */
+<span class="lineNum"> 237 </span> : void Bump();
+<span class="lineNum"> 238 </span> :
+<span class="lineNum"> 239 </span> : public:
+<span class="lineNum"> 240 </span> :
+<span class="lineNum"> 241 </span> : /** \brief Retrieve information about a fetch method by name.
+<span class="lineNum"> 242 </span> : *
+<span class="lineNum"> 243 </span> : * \param Access The name of the method to look up.
+<span class="lineNum"> 244 </span> : *
+<span class="lineNum"> 245 </span> : * \return the method whose name is Access, or \b NULL if no such method exists.
+<span class="lineNum"> 246 </span> : */
+<span class="lineNum"> 247 </span> : MethodConfig *GetConfig(string Access);
+<span class="lineNum"> 248 </span> :
+<span class="lineNum"> 249 </span> : /** \brief Provides information on how a download terminated. */
+<span class="lineNum"> 250 </span> : enum RunResult {
+<span class="lineNum"> 251 </span> : /** \brief All files were fetched successfully. */
+<span class="lineNum"> 252 </span> : Continue,
+<span class="lineNum"> 253 </span> :
+<span class="lineNum"> 254 </span> : /** \brief Some files failed to download. */
+<span class="lineNum"> 255 </span> : Failed,
+<span class="lineNum"> 256 </span> :
+<span class="lineNum"> 257 </span> : /** \brief The download was cancelled by the user (i.e., #Log's
+<span class="lineNum"> 258 </span> : * pkgAcquireStatus::Pulse() method returned \b false).
+<span class="lineNum"> 259 </span> : */
+<span class="lineNum"> 260 </span> : Cancelled};
+<span class="lineNum"> 261 </span> :
+<span class="lineNum"> 262 </span> : /** \brief Download all the items that have been Add()ed to this
+<span class="lineNum"> 263 </span> : * download process.
+<span class="lineNum"> 264 </span> : *
+<span class="lineNum"> 265 </span> : * This method will block until the download completes, invoking
+<span class="lineNum"> 266 </span> : * methods on #Log to report on the progress of the download.
+<span class="lineNum"> 267 </span> : *
+<span class="lineNum"> 268 </span> : * \param PulseInterval The method pkgAcquireStatus::Pulse will be
+<span class="lineNum"> 269 </span> : * invoked on #Log at intervals of PulseInterval milliseconds.
+<span class="lineNum"> 270 </span> : *
+<span class="lineNum"> 271 </span> : * \return the result of the download.
+<span class="lineNum"> 272 </span> : */
+<span class="lineNum"> 273 </span> : RunResult Run(int PulseInterval=500000);
+<span class="lineNum"> 274 </span> :
+<span class="lineNum"> 275 </span> : /** \brief Remove all items from this download process, terminate
+<span class="lineNum"> 276 </span> : * all download workers, and empty all queues.
+<span class="lineNum"> 277 </span> : */
+<span class="lineNum"> 278 </span> : void Shutdown();
+<span class="lineNum"> 279 </span> :
+<span class="lineNum"> 280 </span> : /** \brief Get the first #Worker object.
+<span class="lineNum"> 281 </span> : *
+<span class="lineNum"> 282 </span> : * \return the first active worker in this download process.
+<span class="lineNum"> 283 </span> : */
+<span class="lineNum"> 284 </span> : inline Worker *WorkersBegin() {return Workers;};
+<span class="lineNum"> 285 </span> :
+<span class="lineNum"> 286 </span> : /** \brief Advance to the next #Worker object.
+<span class="lineNum"> 287 </span> : *
+<span class="lineNum"> 288 </span> : * \return the worker immediately following I, or \b NULL if none
+<span class="lineNum"> 289 </span> : * exists.
+<span class="lineNum"> 290 </span> : */
+<span class="lineNum"> 291 </span> : Worker *WorkerStep(Worker *I);
+<span class="lineNum"> 292 </span> :
+<span class="lineNum"> 293 </span> : /** \brief Get the head of the list of items. */
+<span class="lineNum"> 294 </span> : inline ItemIterator ItemsBegin() {return Items.begin();};
+<span class="lineNum"> 295 </span> :
+<span class="lineNum"> 296 </span> : /** \brief Get the end iterator of the list of items. */
+<span class="lineNum"> 297 </span> : inline ItemIterator ItemsEnd() {return Items.end();};
+<span class="lineNum"> 298 </span> :
+<span class="lineNum"> 299 </span> : // Iterate over queued Item URIs
+<span class="lineNum"> 300 </span> : class UriIterator;
+<span class="lineNum"> 301 </span> : /** \brief Get the head of the list of enqueued item URIs.
+<span class="lineNum"> 302 </span> : *
+<span class="lineNum"> 303 </span> : * This iterator will step over every element of every active
+<span class="lineNum"> 304 </span> : * queue.
+<span class="lineNum"> 305 </span> : */
+<span class="lineNum"> 306 </span> : UriIterator UriBegin();
+<span class="lineNum"> 307 </span> : /** \brief Get the end iterator of the list of enqueued item URIs. */
+<span class="lineNum"> 308 </span> : UriIterator UriEnd();
+<span class="lineNum"> 309 </span> :
+<span class="lineNum"> 310 </span> : /** Deletes each entry in the given directory that is not being
+<span class="lineNum"> 311 </span> : * downloaded by this object. For instance, when downloading new
+<span class="lineNum"> 312 </span> : * list files, calling Clean() will delete the old ones.
+<span class="lineNum"> 313 </span> : *
+<span class="lineNum"> 314 </span> : * \param Dir The directory to be cleaned out.
+<span class="lineNum"> 315 </span> : *
+<span class="lineNum"> 316 </span> : * \return \b true if the directory exists and is readable.
+<span class="lineNum"> 317 </span> : */
+<span class="lineNum"> 318 </span> : bool Clean(string Dir);
+<span class="lineNum"> 319 </span> :
+<span class="lineNum"> 320 </span> : /** \return the total size in bytes of all the items included in
+<span class="lineNum"> 321 </span> : * this download.
+<span class="lineNum"> 322 </span> : */
+<span class="lineNum"> 323 </span> : double TotalNeeded();
+<span class="lineNum"> 324 </span> :
+<span class="lineNum"> 325 </span> : /** \return the size in bytes of all non-local items included in
+<span class="lineNum"> 326 </span> : * this download.
+<span class="lineNum"> 327 </span> : */
+<span class="lineNum"> 328 </span> : double FetchNeeded();
+<span class="lineNum"> 329 </span> :
+<span class="lineNum"> 330 </span> : /** \return the amount of data to be fetched that is already
+<span class="lineNum"> 331 </span> : * present on the filesystem.
+<span class="lineNum"> 332 </span> : */
+<span class="lineNum"> 333 </span> : double PartialPresent();
+<span class="lineNum"> 334 </span> :
+<span class="lineNum"> 335 </span> : /** \brief Construct a new pkgAcquire.
+<span class="lineNum"> 336 </span> : *
+<span class="lineNum"> 337 </span> : * \param Log The progress indicator associated with this
+<span class="lineNum"> 338 </span> : * download, or \b NULL for none. This object is not owned by the
+<span class="lineNum"> 339 </span> : * download process and will not be deleted when the pkgAcquire
+<span class="lineNum"> 340 </span> : * object is destroyed. Naturally, it should live for at least as
+<span class="lineNum"> 341 </span> : * long as the pkgAcquire object does.
+<span class="lineNum"> 342 </span> : */
+<span class="lineNum"> 343 </span> : pkgAcquire(pkgAcquireStatus *Log = 0);
+<span class="lineNum"> 344 </span> :
+<span class="lineNum"> 345 </span> : /** \brief Destroy this pkgAcquire object.
+<span class="lineNum"> 346 </span> : *
+<span class="lineNum"> 347 </span> : * Destroys all queue, method, and item objects associated with
+<span class="lineNum"> 348 </span> : * this download.
+<span class="lineNum"> 349 </span> : */
+<span class="lineNum"> 350 </span> : virtual ~pkgAcquire();
+<span class="lineNum"> 351 </span> : };
+<span class="lineNum"> 352 </span> :
+<span class="lineNum"> 353 </span> : /** \brief Represents a single download source from which an item
+<span class="lineNum"> 354 </span> : * should be downloaded.
+<span class="lineNum"> 355 </span> : *
+<span class="lineNum"> 356 </span> : * An item may have several assocated ItemDescs over its lifetime.
+<span class="lineNum"> 357 </span> : */
+<span class="lineNum"> 358 </span> : struct pkgAcquire::ItemDesc
+<span class="lineNum"> 359 </span> : {
+<span class="lineNum"> 360 </span> : /** \brief The URI from which to download this item. */
+<span class="lineNum"> 361 </span> : string URI;
+<span class="lineNum"> 362 </span> : /** brief A description of this item. */
+<span class="lineNum"> 363 </span> : string Description;
+<span class="lineNum"> 364 </span> : /** brief A shorter description of this item. */
+<span class="lineNum"> 365 </span> : string ShortDesc;
+<span class="lineNum"> 366 </span> : /** brief The underlying item which is to be downloaded. */
+<span class="lineNum"> 367 </span> : Item *Owner;
+<span class="lineNum"> 368 </span> : };
+<span class="lineNum"> 369 </span> :
+<span class="lineNum"> 370 </span> : /** \brief A single download queue in a pkgAcquire object.
+<span class="lineNum"> 371 </span> : *
+<span class="lineNum"> 372 </span> : * \todo Why so many protected values?
+<span class="lineNum"> 373 </span> : */
+<span class="lineNum"> 374 </span> : class pkgAcquire::Queue
+<span class="lineNum"> 375 </span> : {
+<span class="lineNum"> 376 </span> : friend class pkgAcquire;
+<span class="lineNum"> 377 </span> : friend class pkgAcquire::UriIterator;
+<span class="lineNum"> 378 </span> : friend class pkgAcquire::Worker;
+<span class="lineNum"> 379 </span> :
+<span class="lineNum"> 380 </span> : /** \brief The next queue in the pkgAcquire object's list of queues. */
+<span class="lineNum"> 381 </span> : Queue *Next;
+<span class="lineNum"> 382 </span> :
+<span class="lineNum"> 383 </span> : protected:
+<span class="lineNum"> 384 </span> :
+<span class="lineNum"> 385 </span> : /** \brief A single item placed in this queue. */
+<span class="lineNum"> 386 </span> : struct QItem : pkgAcquire::ItemDesc
+<span class="lineNum"> 387 </span> : {
+<span class="lineNum"> 388 </span> : /** \brief The next item in the queue. */
+<span class="lineNum"> 389 </span> : QItem *Next;
+<span class="lineNum"> 390 </span> : /** \brief The worker associated with this item, if any. */
+<span class="lineNum"> 391 </span> : pkgAcquire::Worker *Worker;
+<span class="lineNum"> 392 </span> :
+<span class="lineNum"> 393 </span> : /** \brief Assign the ItemDesc portion of this QItem from
+<span class="lineNum"> 394 </span> : * another ItemDesc
+<span class="lineNum"> 395 </span> : */
+<span class="lineNum"> 396 </span> : void operator =(pkgAcquire::ItemDesc const &amp;I)
+<span class="lineNum"> 397 </span> : {
+<span class="lineNum"> 398 </span> : URI = I.URI;
+<span class="lineNum"> 399 </span> : Description = I.Description;
+<span class="lineNum"> 400 </span> : ShortDesc = I.ShortDesc;
+<span class="lineNum"> 401 </span> : Owner = I.Owner;
+<span class="lineNum"> 402 </span> : };
+<span class="lineNum"> 403 </span> : };
+<span class="lineNum"> 404 </span> :
+<span class="lineNum"> 405 </span> : /** \brief The name of this queue. */
+<span class="lineNum"> 406 </span> : string Name;
+<span class="lineNum"> 407 </span> :
+<span class="lineNum"> 408 </span> : /** \brief The head of the list of items contained in this queue.
+<span class="lineNum"> 409 </span> : *
+<span class="lineNum"> 410 </span> : * \todo why a by-hand list instead of an STL structure?
+<span class="lineNum"> 411 </span> : */
+<span class="lineNum"> 412 </span> : QItem *Items;
+<span class="lineNum"> 413 </span> :
+<span class="lineNum"> 414 </span> : /** \brief The head of the list of workers associated with this queue.
+<span class="lineNum"> 415 </span> : *
+<span class="lineNum"> 416 </span> : * \todo This is plural because support exists in Queue for
+<span class="lineNum"> 417 </span> : * multiple workers. However, it does not appear that there is
+<span class="lineNum"> 418 </span> : * any way to actually associate more than one worker with a
+<span class="lineNum"> 419 </span> : * queue.
+<span class="lineNum"> 420 </span> : *
+<span class="lineNum"> 421 </span> : * \todo Why not just use a std::set?
+<span class="lineNum"> 422 </span> : */
+<span class="lineNum"> 423 </span> : pkgAcquire::Worker *Workers;
+<span class="lineNum"> 424 </span> :
+<span class="lineNum"> 425 </span> : /** \brief the download scheduler with which this queue is associated. */
+<span class="lineNum"> 426 </span> : pkgAcquire *Owner;
+<span class="lineNum"> 427 </span> :
+<span class="lineNum"> 428 </span> : /** \brief The number of entries in this queue that are currently
+<span class="lineNum"> 429 </span> : * being downloaded.
+<span class="lineNum"> 430 </span> : */
+<span class="lineNum"> 431 </span> : signed long PipeDepth;
+<span class="lineNum"> 432 </span> :
+<span class="lineNum"> 433 </span> : /** \brief The maximum number of entries that this queue will
+<span class="lineNum"> 434 </span> : * attempt to download at once.
+<span class="lineNum"> 435 </span> : */
+<span class="lineNum"> 436 </span> : unsigned long MaxPipeDepth;
+<span class="lineNum"> 437 </span> :
+<span class="lineNum"> 438 </span> : public:
+<span class="lineNum"> 439 </span> :
+<span class="lineNum"> 440 </span> : /** \brief Insert the given fetch request into this queue.
+<span class="lineNum"> 441 </span> : *
+<span class="lineNum"> 442 </span> : * \return \b true if the queuing was successful. May return
+<span class="lineNum"> 443 </span> : * \b false if the Item is already in the queue
+<span class="lineNum"> 444 </span> : */
+<span class="lineNum"> 445 </span> : bool Enqueue(ItemDesc &amp;Item);
+<span class="lineNum"> 446 </span> :
+<span class="lineNum"> 447 </span> : /** \brief Remove all fetch requests for the given item from this queue.
+<span class="lineNum"> 448 </span> : *
+<span class="lineNum"> 449 </span> : * \return \b true if at least one request was removed from the queue.
+<span class="lineNum"> 450 </span> : */
+<span class="lineNum"> 451 </span> : bool Dequeue(Item *Owner);
+<span class="lineNum"> 452 </span> :
+<span class="lineNum"> 453 </span> : /** \brief Locate an item in this queue.
+<span class="lineNum"> 454 </span> : *
+<span class="lineNum"> 455 </span> : * \param URI A URI to match against.
+<span class="lineNum"> 456 </span> : * \param Owner A pkgAcquire::Worker to match against.
+<span class="lineNum"> 457 </span> : *
+<span class="lineNum"> 458 </span> : * \return the first item in the queue whose URI is #URI and that
+<span class="lineNum"> 459 </span> : * is being downloaded by #Owner.
+<span class="lineNum"> 460 </span> : */
+<span class="lineNum"> 461 </span> : QItem *FindItem(string URI,pkgAcquire::Worker *Owner);
+<span class="lineNum"> 462 </span> :
+<span class="lineNum"> 463 </span> : /** Presumably this should start downloading an item?
+<span class="lineNum"> 464 </span> : *
+<span class="lineNum"> 465 </span> : * \todo Unimplemented. Implement it or remove?
+<span class="lineNum"> 466 </span> : */
+<span class="lineNum"> 467 </span> : bool ItemStart(QItem *Itm,unsigned long Size);
+<span class="lineNum"> 468 </span> :
+<span class="lineNum"> 469 </span> : /** \brief Remove the given item from this queue and set its state
+<span class="lineNum"> 470 </span> : * to pkgAcquire::Item::StatDone.
+<span class="lineNum"> 471 </span> : *
+<span class="lineNum"> 472 </span> : * If this is the only queue containing the item, the item is also
+<span class="lineNum"> 473 </span> : * removed from the main queue by calling pkgAcquire::Dequeue.
+<span class="lineNum"> 474 </span> : *
+<span class="lineNum"> 475 </span> : * \param Itm The item to remove.
+<span class="lineNum"> 476 </span> : *
+<span class="lineNum"> 477 </span> : * \return \b true if no errors are encountered.
+<span class="lineNum"> 478 </span> : */
+<span class="lineNum"> 479 </span> : bool ItemDone(QItem *Itm);
+<span class="lineNum"> 480 </span> :
+<span class="lineNum"> 481 </span> : /** \brief Start the worker process associated with this queue.
+<span class="lineNum"> 482 </span> : *
+<span class="lineNum"> 483 </span> : * If a worker process is already associated with this queue,
+<span class="lineNum"> 484 </span> : * this is equivalent to calling Cycle().
+<span class="lineNum"> 485 </span> : *
+<span class="lineNum"> 486 </span> : * \return \b true if the startup was successful.
+<span class="lineNum"> 487 </span> : */
+<span class="lineNum"> 488 </span> : bool Startup();
+<span class="lineNum"> 489 </span> :
+<span class="lineNum"> 490 </span> : /** \brief Shut down the worker process associated with this queue.
+<span class="lineNum"> 491 </span> : *
+<span class="lineNum"> 492 </span> : * \param Final If \b true, then the process is stopped unconditionally.
+<span class="lineNum"> 493 </span> : * Otherwise, it is only stopped if it does not need cleanup
+<span class="lineNum"> 494 </span> : * as indicated by the pkgAcqMethod::NeedsCleanup member of
+<span class="lineNum"> 495 </span> : * its configuration.
+<span class="lineNum"> 496 </span> : *
+<span class="lineNum"> 497 </span> : * \return \b true.
+<span class="lineNum"> 498 </span> : */
+<span class="lineNum"> 499 </span> : bool Shutdown(bool Final);
+<span class="lineNum"> 500 </span> :
+<span class="lineNum"> 501 </span> : /** \brief Send idle items to the worker process.
+<span class="lineNum"> 502 </span> : *
+<span class="lineNum"> 503 </span> : * Fills up the pipeline by inserting idle items into the worker's queue.
+<span class="lineNum"> 504 </span> : */
+<span class="lineNum"> 505 </span> : bool Cycle();
+<span class="lineNum"> 506 </span> :
+<span class="lineNum"> 507 </span> : /** \brief Check for items that could be enqueued.
+<span class="lineNum"> 508 </span> : *
+<span class="lineNum"> 509 </span> : * Call this after an item placed in multiple queues has gone from
+<span class="lineNum"> 510 </span> : * the pkgAcquire::Item::StatFetching state to the
+<span class="lineNum"> 511 </span> : * pkgAcquire::Item::StatIdle state, to possibly refill an empty queue.
+<span class="lineNum"> 512 </span> : * This is an alias for Cycle().
+<span class="lineNum"> 513 </span> : *
+<span class="lineNum"> 514 </span> : * \todo Why both this and Cycle()? Are they expected to be
+<span class="lineNum"> 515 </span> : * different someday?
+<span class="lineNum"> 516 </span> : */
+<span class="lineNum"> 517 </span> : void Bump();
+<span class="lineNum"> 518 </span> :
+<span class="lineNum"> 519 </span> : /** \brief Create a new Queue.
+<span class="lineNum"> 520 </span> : *
+<span class="lineNum"> 521 </span> : * \param Name The name of the new queue.
+<span class="lineNum"> 522 </span> : * \param Owner The download process that owns the new queue.
+<span class="lineNum"> 523 </span> : */
+<span class="lineNum"> 524 </span> : Queue(string Name,pkgAcquire *Owner);
+<span class="lineNum"> 525 </span> :
+<span class="lineNum"> 526 </span> : /** Shut down all the worker processes associated with this queue
+<span class="lineNum"> 527 </span> : * and empty the queue.
+<span class="lineNum"> 528 </span> : */
+<span class="lineNum"> 529 </span> : ~Queue();
+<span class="lineNum"> 530 </span> : };
+<span class="lineNum"> 531 </span> :
+<span class="lineNum"> 532 </span> : /** \brief Iterates over all the URIs being fetched by a pkgAcquire object. */
+<span class="lineNum"> 533 </span> : class pkgAcquire::UriIterator
+<span class="lineNum"> 534 </span> : {
+<span class="lineNum"> 535 </span> : /** The next queue to iterate over. */
+<span class="lineNum"> 536 </span> : pkgAcquire::Queue *CurQ;
+<span class="lineNum"> 537 </span> : /** The item that we currently point at. */
+<span class="lineNum"> 538 </span> : pkgAcquire::Queue::QItem *CurItem;
+<span class="lineNum"> 539 </span> :
+<span class="lineNum"> 540 </span> : public:
+<span class="lineNum"> 541 </span> :
+<span class="lineNum"> 542 </span> : inline void operator ++() {operator ++();};
+<span class="lineNum"> 543 </span> :
+<span class="lineNum"> 544 </span> : void operator ++(int)
+<span class="lineNum"> 545 </span> : {
+<span class="lineNum"> 546 </span> : CurItem = CurItem-&gt;Next;
+<span class="lineNum"> 547 </span> : while (CurItem == 0 &amp;&amp; CurQ != 0)
+<span class="lineNum"> 548 </span> : {
+<span class="lineNum"> 549 </span> : CurItem = CurQ-&gt;Items;
+<span class="lineNum"> 550 </span> : CurQ = CurQ-&gt;Next;
+<span class="lineNum"> 551 </span> : }
+<span class="lineNum"> 552 </span> : };
+<span class="lineNum"> 553 </span> :
+<span class="lineNum"> 554 </span> : inline pkgAcquire::ItemDesc const *operator -&gt;() const {return CurItem;};
+<span class="lineNum"> 555 </span> : inline bool operator !=(UriIterator const &amp;rhs) const {return rhs.CurQ != CurQ || rhs.CurItem != CurItem;};
+<span class="lineNum"> 556 </span> : inline bool operator ==(UriIterator const &amp;rhs) const {return rhs.CurQ == CurQ &amp;&amp; rhs.CurItem == CurItem;};
+<span class="lineNum"> 557 </span> :
+<span class="lineNum"> 558 </span> : /** \brief Create a new UriIterator.
+<span class="lineNum"> 559 </span> : *
+<span class="lineNum"> 560 </span> : * \param Q The queue over which this UriIterator should iterate.
+<span class="lineNum"> 561 </span> : */
+<span class="lineNum"> 562 </span> : UriIterator(pkgAcquire::Queue *Q) : CurQ(Q), CurItem(0)
+<span class="lineNum"> 563 </span> : {
+<span class="lineNum"> 564 </span> : while (CurItem == 0 &amp;&amp; CurQ != 0)
+<span class="lineNum"> 565 </span> : {
+<span class="lineNum"> 566 </span> : CurItem = CurQ-&gt;Items;
+<span class="lineNum"> 567 </span> : CurQ = CurQ-&gt;Next;
+<span class="lineNum"> 568 </span> : }
+<span class="lineNum"> 569 </span> : }
+<span class="lineNum"> 570 </span> : };
+<span class="lineNum"> 571 </span> :
+<span class="lineNum"> 572 </span> : /** \brief Information about the properties of a single acquire method. */
+<span class="lineNum"> 573 </span> : struct pkgAcquire::MethodConfig
+<span class="lineNum"> 574 </span> : {
+<span class="lineNum"> 575 </span> : /** \brief The next link on the acquire method list.
+<span class="lineNum"> 576 </span> : *
+<span class="lineNum"> 577 </span> : * \todo Why not an STL container?
+<span class="lineNum"> 578 </span> : */
+<span class="lineNum"> 579 </span> : MethodConfig *Next;
+<span class="lineNum"> 580 </span> :
+<span class="lineNum"> 581 </span> : /** \brief The name of this acquire method (e.g., http). */
+<span class="lineNum"> 582 </span> : string Access;
+<span class="lineNum"> 583 </span> :
+<span class="lineNum"> 584 </span> : /** \brief The implementation version of this acquire method. */
+<span class="lineNum"> 585 </span> : string Version;
+<span class="lineNum"> 586 </span> :
+<span class="lineNum"> 587 </span> : /** \brief If \b true, only one download queue should be created for this
+<span class="lineNum"> 588 </span> : * method.
+<span class="lineNum"> 589 </span> : */
+<span class="lineNum"> 590 </span> : bool SingleInstance;
+<span class="lineNum"> 591 </span> :
+<span class="lineNum"> 592 </span> : /** \brief If \b true, this method supports pipelined downloading. */
+<span class="lineNum"> 593 </span> : bool Pipeline;
+<span class="lineNum"> 594 </span> :
+<span class="lineNum"> 595 </span> : /** \brief If \b true, the worker process should send the entire
+<span class="lineNum"> 596 </span> : * APT configuration tree to the fetch subprocess when it starts
+<span class="lineNum"> 597 </span> : * up.
+<span class="lineNum"> 598 </span> : */
+<span class="lineNum"> 599 </span> : bool SendConfig;
+<span class="lineNum"> 600 </span> :
+<span class="lineNum"> 601 </span> : /** \brief If \b true, this fetch method does not require network access;
+<span class="lineNum"> 602 </span> : * all files are to be acquired from the local disk.
+<span class="lineNum"> 603 </span> : */
+<span class="lineNum"> 604 </span> : bool LocalOnly;
+<span class="lineNum"> 605 </span> :
+<span class="lineNum"> 606 </span> : /** \brief If \b true, the subprocess has to carry out some cleanup
+<span class="lineNum"> 607 </span> : * actions before shutting down.
+<span class="lineNum"> 608 </span> : *
+<span class="lineNum"> 609 </span> : * For instance, the cdrom method needs to unmount the CD after it
+<span class="lineNum"> 610 </span> : * finishes.
+<span class="lineNum"> 611 </span> : */
+<span class="lineNum"> 612 </span> : bool NeedsCleanup;
+<span class="lineNum"> 613 </span> :
+<span class="lineNum"> 614 </span> : /** \brief If \b true, this fetch method acquires files from removable media. */
+<span class="lineNum"> 615 </span> : bool Removable;
+<span class="lineNum"> 616 </span> :
+<span class="lineNum"> 617 </span> : /** \brief Set up the default method parameters.
+<span class="lineNum"> 618 </span> : *
+<span class="lineNum"> 619 </span> : * All fields are initialized to NULL, &quot;&quot;, or \b false as
+<span class="lineNum"> 620 </span> : * appropriate.
+<span class="lineNum"> 621 </span> : */
+<span class="lineNum"> 622 </span> : MethodConfig();
+<span class="lineNum"> 623 </span> : };
+<span class="lineNum"> 624 </span> :
+<span class="lineNum"> 625 </span> : /** \brief A monitor object for downloads controlled by the pkgAcquire class.
+<span class="lineNum"> 626 </span> : *
+<span class="lineNum"> 627 </span> : * \todo Why protected members?
+<span class="lineNum"> 628 </span> : *
+<span class="lineNum"> 629 </span> : * \todo Should the double members be uint64_t?
+<span class="lineNum"> 630 </span> : */
+<span class="lineNum"> 631 </span> : class pkgAcquireStatus
+<span class="lineNum"> 632 </span> : {
+<span class="lineNum"> 633 </span> : protected:
+<span class="lineNum"> 634 </span> :
+<span class="lineNum"> 635 </span> : /** \brief The last time at which this monitor object was updated. */
+<span class="lineNum"> 636 </span> : struct timeval Time;
+<span class="lineNum"> 637 </span> :
+<span class="lineNum"> 638 </span> : /** \brief The time at which the download started. */
+<span class="lineNum"> 639 </span> : struct timeval StartTime;
+<span class="lineNum"> 640 </span> :
+<span class="lineNum"> 641 </span> : /** \brief The number of bytes fetched as of the previous call to
+<span class="lineNum"> 642 </span> : * pkgAcquireStatus::Pulse, including local items.
+<span class="lineNum"> 643 </span> : */
+<span class="lineNum"> 644 </span> : double LastBytes;
+<span class="lineNum"> 645 </span> :
+<span class="lineNum"> 646 </span> : /** \brief The current rate of download as of the most recent call
+<span class="lineNum"> 647 </span> : * to pkgAcquireStatus::Pulse, in bytes per second.
+<span class="lineNum"> 648 </span> : */
+<span class="lineNum"> 649 </span> : double CurrentCPS;
+<span class="lineNum"> 650 </span> :
+<span class="lineNum"> 651 </span> : /** \brief The number of bytes fetched as of the most recent call
+<span class="lineNum"> 652 </span> : * to pkgAcquireStatus::Pulse, including local items.
+<span class="lineNum"> 653 </span> : */
+<span class="lineNum"> 654 </span> : double CurrentBytes;
+<span class="lineNum"> 655 </span> :
+<span class="lineNum"> 656 </span> : /** \brief The total number of bytes that need to be fetched.
+<span class="lineNum"> 657 </span> : *
+<span class="lineNum"> 658 </span> : * \warning This member is inaccurate, as new items might be
+<span class="lineNum"> 659 </span> : * enqueued while the download is in progress!
+<span class="lineNum"> 660 </span> : */
+<span class="lineNum"> 661 </span> : double TotalBytes;
+<span class="lineNum"> 662 </span> :
+<span class="lineNum"> 663 </span> : /** \brief The total number of bytes accounted for by items that
+<span class="lineNum"> 664 </span> : * were successfully fetched.
+<span class="lineNum"> 665 </span> : */
+<span class="lineNum"> 666 </span> : double FetchedBytes;
+<span class="lineNum"> 667 </span> :
+<span class="lineNum"> 668 </span> : /** \brief The amount of time that has elapsed since the download
+<span class="lineNum"> 669 </span> : * started.
+<span class="lineNum"> 670 </span> : */
+<span class="lineNum"> 671 </span> : unsigned long ElapsedTime;
+<span class="lineNum"> 672 </span> :
+<span class="lineNum"> 673 </span> : /** \brief The total number of items that need to be fetched.
+<span class="lineNum"> 674 </span> : *
+<span class="lineNum"> 675 </span> : * \warning This member is inaccurate, as new items might be
+<span class="lineNum"> 676 </span> : * enqueued while the download is in progress!
+<span class="lineNum"> 677 </span> : */
+<span class="lineNum"> 678 </span> : unsigned long TotalItems;
+<span class="lineNum"> 679 </span> :
+<span class="lineNum"> 680 </span> : /** \brief The number of items that have been successfully downloaded. */
+<span class="lineNum"> 681 </span> : unsigned long CurrentItems;
+<span class="lineNum"> 682 </span> :
+<span class="lineNum"> 683 </span> : public:
+<span class="lineNum"> 684 </span> :
+<span class="lineNum"> 685 </span> : /** \brief If \b true, the download scheduler should call Pulse()
+<span class="lineNum"> 686 </span> : * at the next available opportunity.
+<span class="lineNum"> 687 </span> : */
+<span class="lineNum"> 688 </span> : bool Update;
+<span class="lineNum"> 689 </span> :
+<span class="lineNum"> 690 </span> : /** \brief If \b true, extra Pulse() invocations will be performed.
+<span class="lineNum"> 691 </span> : *
+<span class="lineNum"> 692 </span> : * With this option set, Pulse() will be called every time that a
+<span class="lineNum"> 693 </span> : * download item starts downloading, finishes downloading, or
+<span class="lineNum"> 694 </span> : * terminates with an error.
+<span class="lineNum"> 695 </span> : */
+<span class="lineNum"> 696 </span> : bool MorePulses;
+<span class="lineNum"> 697 </span> :
+<span class="lineNum"> 698 </span> : /** \brief Invoked when a local or remote file has been completely fetched.
+<span class="lineNum"> 699 </span> : *
+<span class="lineNum"> 700 </span> : * \param Size The size of the file fetched.
+<span class="lineNum"> 701 </span> : *
+<span class="lineNum"> 702 </span> : * \param ResumePoint How much of the file was already fetched.
+<span class="lineNum"> 703 </span> : */
+<span class="lineNum"> 704 </span> : virtual void Fetched(unsigned long Size,unsigned long ResumePoint);
+<span class="lineNum"> 705 </span> :
+<span class="lineNum"> 706 </span> : /** \brief Invoked when the user should be prompted to change the
+<span class="lineNum"> 707 </span> : * inserted removable media.
+<span class="lineNum"> 708 </span> : *
+<span class="lineNum"> 709 </span> : * This method should not return until the user has confirmed to
+<span class="lineNum"> 710 </span> : * the user interface that the media change is complete.
+<span class="lineNum"> 711 </span> : *
+<span class="lineNum"> 712 </span> : * \param Media The name of the media type that should be changed.
+<span class="lineNum"> 713 </span> : *
+<span class="lineNum"> 714 </span> : * \param Drive The identifying name of the drive whose media
+<span class="lineNum"> 715 </span> : * should be changed.
+<span class="lineNum"> 716 </span> : *
+<span class="lineNum"> 717 </span> : * \return \b true if the user confirms the media change, \b
+<span class="lineNum"> 718 </span> : * false if it is cancelled.
+<span class="lineNum"> 719 </span> : *
+<span class="lineNum"> 720 </span> : * \todo This is a horrible blocking monster; it should be CPSed
+<span class="lineNum"> 721 </span> : * with prejudice.
+<span class="lineNum"> 722 </span> : */
+<span class="lineNum"> 723 </span> : virtual bool MediaChange(string Media,string Drive) = 0;
+<span class="lineNum"> 724 </span> :
+<span class="lineNum"> 725 </span> : /** \brief Invoked when an item is confirmed to be up-to-date.
+<span class="lineNum"> 726 </span> :
+<span class="lineNum"> 727 </span> : * For instance, when an HTTP download is informed that the file on
+<span class="lineNum"> 728 </span> : * the server was not modified.
+<span class="lineNum"> 729 </span> : */
+<span class="lineNum"> 730 </span><span class="lineNoCov"> 0 : virtual void IMSHit(pkgAcquire::ItemDesc &amp;/*Itm*/) {};</span>
+<span class="lineNum"> 731 </span> :
+<span class="lineNum"> 732 </span> : /** \brief Invoked when some of an item's data is fetched. */
+<span class="lineNum"> 733 </span><span class="lineNoCov"> 0 : virtual void Fetch(pkgAcquire::ItemDesc &amp;/*Itm*/) {};</span>
+<span class="lineNum"> 734 </span> :
+<span class="lineNum"> 735 </span> : /** \brief Invoked when an item is successfully and completely fetched. */
+<span class="lineNum"> 736 </span><span class="lineNoCov"> 0 : virtual void Done(pkgAcquire::ItemDesc &amp;/*Itm*/) {};</span>
+<span class="lineNum"> 737 </span> :
+<span class="lineNum"> 738 </span> : /** \brief Invoked when the process of fetching an item encounters
+<span class="lineNum"> 739 </span> : * a fatal error.
+<span class="lineNum"> 740 </span> : */
+<span class="lineNum"> 741 </span><span class="lineNoCov"> 0 : virtual void Fail(pkgAcquire::ItemDesc &amp;/*Itm*/) {};</span>
+<span class="lineNum"> 742 </span> :
+<span class="lineNum"> 743 </span> : /** \brief Periodically invoked while the Acquire process is underway.
+<span class="lineNum"> 744 </span> : *
+<span class="lineNum"> 745 </span> : * Subclasses should first call pkgAcquireStatus::Pulse(), then
+<span class="lineNum"> 746 </span> : * update their status output. The download process is blocked
+<span class="lineNum"> 747 </span> : * while Pulse() is being called.
+<span class="lineNum"> 748 </span> : *
+<span class="lineNum"> 749 </span> : * \return \b false if the user asked to cancel the whole Acquire process.
+<span class="lineNum"> 750 </span> : *
+<span class="lineNum"> 751 </span> : * \see pkgAcquire::Run
+<span class="lineNum"> 752 </span> : */
+<span class="lineNum"> 753 </span> : virtual bool Pulse(pkgAcquire *Owner);
+<span class="lineNum"> 754 </span> :
+<span class="lineNum"> 755 </span> : /** \brief Invoked when the Acquire process starts running. */
+<span class="lineNum"> 756 </span> : virtual void Start();
+<span class="lineNum"> 757 </span> :
+<span class="lineNum"> 758 </span> : /** \brief Invoked when the Acquire process stops running. */
+<span class="lineNum"> 759 </span> : virtual void Stop();
+<span class="lineNum"> 760 </span> :
+<span class="lineNum"> 761 </span> : /** \brief Initialize all counters to 0 and the time to the current time. */
+<span class="lineNum"> 762 </span> : pkgAcquireStatus();
+<span class="lineNum"> 763 </span><span class="lineNoCov"> 0 : virtual ~pkgAcquireStatus() {};</span>
+<span class="lineNum"> 764 </span> : };
+<span class="lineNum"> 765 </span> :
+<span class="lineNum"> 766 </span> : /** @} */
+<span class="lineNum"> 767 </span> :
+<span class="lineNum"> 768 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/apt-pkg/algorithms.h.gcov.html b/rep/usr/include/apt-pkg/algorithms.h.gcov.html
new file mode 100644
index 0000000..c11132e
--- /dev/null
+++ b/rep/usr/include/apt-pkg/algorithms.h.gcov.html
@@ -0,0 +1,204 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/apt-pkg/algorithms.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">usr/include/apt-pkg</a> - algorithms.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">3</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">66.7 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: cpp; mode: fold -*-
+<span class="lineNum"> 2 </span> : // Description /*{{{*/
+<span class="lineNum"> 3 </span> : // $Id: algorithms.h,v 1.10 2001/05/22 04:17:41 jgg Exp $
+<span class="lineNum"> 4 </span> : /* ######################################################################
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : Algorithms - A set of misc algorithms
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : This simulate class displays what the ordering code has done and
+<span class="lineNum"> 9 </span> : analyses it with a fresh new dependency cache. In this way we can
+<span class="lineNum"> 10 </span> : see all of the effects of an upgrade run.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : pkgDistUpgrade computes an upgrade that causes as many packages as
+<span class="lineNum"> 13 </span> : possible to move to the newest verison.
+<span class="lineNum"> 14 </span> :
+<span class="lineNum"> 15 </span> : pkgApplyStatus sets the target state based on the content of the status
+<span class="lineNum"> 16 </span> : field in the status file. It is important to get proper crash recovery.
+<span class="lineNum"> 17 </span> :
+<span class="lineNum"> 18 </span> : pkgFixBroken corrects a broken system so that it is in a sane state.
+<span class="lineNum"> 19 </span> :
+<span class="lineNum"> 20 </span> : pkgAllUpgrade attempts to upgade as many packages as possible but
+<span class="lineNum"> 21 </span> : without installing new packages.
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : The problem resolver class contains a number of complex algorithms
+<span class="lineNum"> 24 </span> : to try to best-guess an upgrade state. It solves the problem of
+<span class="lineNum"> 25 </span> : maximizing the number of install state packages while having no broken
+<span class="lineNum"> 26 </span> : packages.
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : ##################################################################### */
+<span class="lineNum"> 29 </span> : /*}}}*/
+<span class="lineNum"> 30 </span> : #ifndef PKGLIB_ALGORITHMS_H
+<span class="lineNum"> 31 </span> : #define PKGLIB_ALGORITHMS_H
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span> : #include &lt;apt-pkg/packagemanager.h&gt;
+<span class="lineNum"> 35 </span> : #include &lt;apt-pkg/depcache.h&gt;
+<span class="lineNum"> 36 </span> : #include &lt;apt-pkg/acquire.h&gt;
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : #include &lt;iostream&gt;
+<span class="lineNum"> 39 </span> :
+<span class="lineNum"> 40 </span> : using std::ostream;
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span> : class pkgSimulate : public pkgPackageManager
+<span class="lineNum"> 43 </span> : {
+<span class="lineNum"> 44 </span> : protected:
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> : class Policy : public pkgDepCache::Policy
+<span class="lineNum"> 47 </span> : {
+<span class="lineNum"> 48 </span> : pkgDepCache *Cache;
+<span class="lineNum"> 49 </span> : public:
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> : virtual VerIterator GetCandidateVer(PkgIterator Pkg)
+<span class="lineNum"> 52 </span> : {
+<span class="lineNum"> 53 </span> : return (*Cache)[Pkg].CandidateVerIter(*Cache);
+<span class="lineNum"> 54 </span> : }
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span> : Policy(pkgDepCache *Cache) : Cache(Cache) {};
+<span class="lineNum"> 57 </span> : };
+<span class="lineNum"> 58 </span> :
+<span class="lineNum"> 59 </span> : unsigned char *Flags;
+<span class="lineNum"> 60 </span> :
+<span class="lineNum"> 61 </span> : Policy iPolicy;
+<span class="lineNum"> 62 </span> : pkgDepCache Sim;
+<span class="lineNum"> 63 </span> :
+<span class="lineNum"> 64 </span> : // The Actuall installation implementation
+<span class="lineNum"> 65 </span> : virtual bool Install(PkgIterator Pkg,string File);
+<span class="lineNum"> 66 </span> : virtual bool Configure(PkgIterator Pkg);
+<span class="lineNum"> 67 </span> : virtual bool Remove(PkgIterator Pkg,bool Purge);
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span> : private:
+<span class="lineNum"> 70 </span> : void ShortBreaks();
+<span class="lineNum"> 71 </span> : void Describe(PkgIterator iPkg,ostream &amp;out,bool Current,bool Candidate);
+<span class="lineNum"> 72 </span> :
+<span class="lineNum"> 73 </span> : public:
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span> : pkgSimulate(pkgDepCache *Cache);
+<span class="lineNum"> 76 </span> : };
+<span class="lineNum"> 77 </span> :
+<span class="lineNum"> 78 </span> : class pkgProblemResolver
+<span class="lineNum"> 79 </span> : {
+<span class="lineNum"> 80 </span> : pkgDepCache &amp;Cache;
+<span class="lineNum"> 81 </span> : typedef pkgCache::PkgIterator PkgIterator;
+<span class="lineNum"> 82 </span> : typedef pkgCache::VerIterator VerIterator;
+<span class="lineNum"> 83 </span> : typedef pkgCache::DepIterator DepIterator;
+<span class="lineNum"> 84 </span> : typedef pkgCache::PrvIterator PrvIterator;
+<span class="lineNum"> 85 </span> : typedef pkgCache::Version Version;
+<span class="lineNum"> 86 </span> : typedef pkgCache::Package Package;
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span> : enum Flags {Protected = (1 &lt;&lt; 0), PreInstalled = (1 &lt;&lt; 1),
+<span class="lineNum"> 89 </span> : Upgradable = (1 &lt;&lt; 2), ReInstateTried = (1 &lt;&lt; 3),
+<span class="lineNum"> 90 </span> : ToRemove = (1 &lt;&lt; 4)};
+<span class="lineNum"> 91 </span> : signed short *Scores;
+<span class="lineNum"> 92 </span> : unsigned char *Flags;
+<span class="lineNum"> 93 </span> : bool Debug;
+<span class="lineNum"> 94 </span> :
+<span class="lineNum"> 95 </span> : // Sort stuff
+<span class="lineNum"> 96 </span> : static pkgProblemResolver *This;
+<span class="lineNum"> 97 </span> : static int ScoreSort(const void *a,const void *b);
+<span class="lineNum"> 98 </span> :
+<span class="lineNum"> 99 </span> : struct PackageKill
+<span class="lineNum"> 100 </span> : {
+<span class="lineNum"> 101 </span> : PkgIterator Pkg;
+<span class="lineNum"> 102 </span> : DepIterator Dep;
+<span class="lineNum"> 103 </span> : };
+<span class="lineNum"> 104 </span> :
+<span class="lineNum"> 105 </span> : void MakeScores();
+<span class="lineNum"> 106 </span> : bool DoUpgrade(pkgCache::PkgIterator Pkg);
+<span class="lineNum"> 107 </span> :
+<span class="lineNum"> 108 </span> : public:
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span><span class="lineCov"> 4 : inline void Protect(pkgCache::PkgIterator Pkg) {Flags[Pkg-&gt;ID] |= Protected;};</span>
+<span class="lineNum"> 111 </span><span class="lineNoCov"> 0 : inline void Remove(pkgCache::PkgIterator Pkg) {Flags[Pkg-&gt;ID] |= ToRemove;};</span>
+<span class="lineNum"> 112 </span><span class="lineCov"> 4 : inline void Clear(pkgCache::PkgIterator Pkg) {Flags[Pkg-&gt;ID] &amp;= ~(Protected | ToRemove);};</span>
+<span class="lineNum"> 113 </span> :
+<span class="lineNum"> 114 </span> : // Try to intelligently resolve problems by installing and removing packages
+<span class="lineNum"> 115 </span> : bool Resolve(bool BrokenFix = false);
+<span class="lineNum"> 116 </span> :
+<span class="lineNum"> 117 </span> : // Try to resolve problems only by using keep
+<span class="lineNum"> 118 </span> : bool ResolveByKeep();
+<span class="lineNum"> 119 </span> :
+<span class="lineNum"> 120 </span> : // Install all protected packages
+<span class="lineNum"> 121 </span> : void InstallProtect();
+<span class="lineNum"> 122 </span> :
+<span class="lineNum"> 123 </span> : pkgProblemResolver(pkgDepCache *Cache);
+<span class="lineNum"> 124 </span> : ~pkgProblemResolver();
+<span class="lineNum"> 125 </span> : };
+<span class="lineNum"> 126 </span> :
+<span class="lineNum"> 127 </span> : bool pkgDistUpgrade(pkgDepCache &amp;Cache);
+<span class="lineNum"> 128 </span> : bool pkgApplyStatus(pkgDepCache &amp;Cache);
+<span class="lineNum"> 129 </span> : bool pkgFixBroken(pkgDepCache &amp;Cache);
+<span class="lineNum"> 130 </span> : bool pkgAllUpgrade(pkgDepCache &amp;Cache);
+<span class="lineNum"> 131 </span> : bool pkgMinimizeUpgrade(pkgDepCache &amp;Cache);
+<span class="lineNum"> 132 </span> :
+<span class="lineNum"> 133 </span> : void pkgPrioSortList(pkgCache &amp;Cache,pkgCache::Version **List);
+<span class="lineNum"> 134 </span> :
+<span class="lineNum"> 135 </span> : bool ListUpdate(pkgAcquireStatus &amp;progress, pkgSourceList &amp;List, int PulseInterval=0);
+<span class="lineNum"> 136 </span> :
+<span class="lineNum"> 137 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/apt-pkg/cachefile.h.gcov.html b/rep/usr/include/apt-pkg/cachefile.h.gcov.html
new file mode 100644
index 0000000..8b9c073
--- /dev/null
+++ b/rep/usr/include/apt-pkg/cachefile.h.gcov.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/apt-pkg/cachefile.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">usr/include/apt-pkg</a> - cachefile.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: cpp; mode: fold -*-
+<span class="lineNum"> 2 </span> : // Description /*{{{*/
+<span class="lineNum"> 3 </span> : // $Id: cachefile.h,v 1.5 2002/04/27 04:28:04 jgg Exp $
+<span class="lineNum"> 4 </span> : /* ######################################################################
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : CacheFile - Simple wrapper class for opening, generating and whatnot
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : This class implements a simple 2 line mechanism to open various sorts
+<span class="lineNum"> 9 </span> : of caches. It can operate as root, as not root, show progress and so on,
+<span class="lineNum"> 10 </span> : it transparently handles everything necessary.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : This means it can rebuild caches from the source list and instantiates
+<span class="lineNum"> 13 </span> : and prepares the standard policy mechanism.
+<span class="lineNum"> 14 </span> :
+<span class="lineNum"> 15 </span> : ##################################################################### */
+<span class="lineNum"> 16 </span> : /*}}}*/
+<span class="lineNum"> 17 </span> : #ifndef PKGLIB_CACHEFILE_H
+<span class="lineNum"> 18 </span> : #define PKGLIB_CACHEFILE_H
+<span class="lineNum"> 19 </span> :
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : #include &lt;apt-pkg/depcache.h&gt;
+<span class="lineNum"> 22 </span> : #include &lt;apt-pkg/acquire.h&gt;
+<span class="lineNum"> 23 </span> : #include &lt;apt-pkg/sourcelist.h&gt;
+<span class="lineNum"> 24 </span> :
+<span class="lineNum"> 25 </span> : class pkgPolicy;
+<span class="lineNum"> 26 </span> : class pkgCacheFile
+<span class="lineNum"> 27 </span> : {
+<span class="lineNum"> 28 </span> : protected:
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : MMap *Map;
+<span class="lineNum"> 31 </span> : pkgCache *Cache;
+<span class="lineNum"> 32 </span> : pkgDepCache *DCache;
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span> : public:
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : pkgPolicy *Policy;
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : // We look pretty much exactly like a pointer to a dep cache
+<span class="lineNum"> 39 </span> : inline operator pkgCache &amp;() {return *Cache;};
+<span class="lineNum"> 40 </span> : inline operator pkgCache *() {return Cache;};
+<span class="lineNum"> 41 </span> : inline operator pkgDepCache &amp;() {return *DCache;};
+<span class="lineNum"> 42 </span> : inline operator pkgDepCache *() {return DCache;};
+<span class="lineNum"> 43 </span> : inline pkgDepCache *operator -&gt;() {return DCache;};
+<span class="lineNum"> 44 </span> : inline pkgDepCache &amp;operator *() {return *DCache;};
+<span class="lineNum"> 45 </span><span class="lineCov"> 1 : inline pkgDepCache::StateCache &amp;operator [](pkgCache::PkgIterator const &amp;I) {return (*DCache)[I];};</span>
+<span class="lineNum"> 46 </span> : inline unsigned char &amp;operator [](pkgCache::DepIterator const &amp;I) {return (*DCache)[I];};
+<span class="lineNum"> 47 </span> :
+<span class="lineNum"> 48 </span> : bool BuildCaches(OpProgress &amp;Progress,bool WithLock = true);
+<span class="lineNum"> 49 </span> : bool Open(OpProgress &amp;Progress,bool WithLock = true);
+<span class="lineNum"> 50 </span> : void Close();
+<span class="lineNum"> 51 </span> :
+<span class="lineNum"> 52 </span> : pkgCacheFile();
+<span class="lineNum"> 53 </span> : ~pkgCacheFile();
+<span class="lineNum"> 54 </span> : };
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/apt-pkg/cacheiterators.h.gcov.html b/rep/usr/include/apt-pkg/cacheiterators.h.gcov.html
new file mode 100644
index 0000000..ac4c9b8
--- /dev/null
+++ b/rep/usr/include/apt-pkg/cacheiterators.h.gcov.html
@@ -0,0 +1,503 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/apt-pkg/cacheiterators.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">usr/include/apt-pkg</a> - cacheiterators.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">51</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">92.2 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">47</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: cpp; mode: fold -*-
+<span class="lineNum"> 2 </span> : // Description /*{{{*/
+<span class="lineNum"> 3 </span> : // $Id: cacheiterators.h,v 1.18.2.1 2004/05/08 22:44:27 mdz Exp $
+<span class="lineNum"> 4 </span> : /* ######################################################################
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : Cache Iterators - Iterators for navigating the cache structure
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : The iterators all provides ++,==,!=,-&gt;,* and end for their type.
+<span class="lineNum"> 9 </span> : The end function can be used to tell if the list has been fully
+<span class="lineNum"> 10 </span> : traversed.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : Unlike STL iterators these contain helper functions to access the data
+<span class="lineNum"> 13 </span> : that is being iterated over. This is because the data structures can't
+<span class="lineNum"> 14 </span> : be formed in a manner that is intuitive to use and also mmapable.
+<span class="lineNum"> 15 </span> :
+<span class="lineNum"> 16 </span> : For each variable in the target structure that would need a translation
+<span class="lineNum"> 17 </span> : to be accessed correctly a translating function of the same name is
+<span class="lineNum"> 18 </span> : present in the iterator. If applicable the translating function will
+<span class="lineNum"> 19 </span> : return an iterator.
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : The DepIterator can iterate over two lists, a list of 'version depends'
+<span class="lineNum"> 22 </span> : or a list of 'package reverse depends'. The type is determined by the
+<span class="lineNum"> 23 </span> : structure passed to the constructor, which should be the structure
+<span class="lineNum"> 24 </span> : that has the depends pointer as a member. The provide iterator has the
+<span class="lineNum"> 25 </span> : same system.
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : This header is not user includable, please use apt-pkg/pkgcache.h
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : ##################################################################### */
+<span class="lineNum"> 30 </span> : /*}}}*/
+<span class="lineNum"> 31 </span> : #ifndef PKGLIB_CACHEITERATORS_H
+<span class="lineNum"> 32 </span> : #define PKGLIB_CACHEITERATORS_H
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : // Package Iterator
+<span class="lineNum"> 36 </span> : class pkgCache::PkgIterator
+<span class="lineNum"> 37 </span> : {
+<span class="lineNum"> 38 </span> : friend class pkgCache;
+<span class="lineNum"> 39 </span> : Package *Pkg;
+<span class="lineNum"> 40 </span> : pkgCache *Owner;
+<span class="lineNum"> 41 </span> : long HashIndex;
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : protected:
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : // This constructor is the 'begin' constructor, never use it.
+<span class="lineNum"> 46 </span><span class="lineCov"> 19 : inline PkgIterator(pkgCache &amp;Owner) : Owner(&amp;Owner), HashIndex(-1)</span>
+<span class="lineNum"> 47 </span> : {
+<span class="lineNum"> 48 </span><span class="lineCov"> 19 : Pkg = Owner.PkgP;</span>
+<span class="lineNum"> 49 </span><span class="lineCov"> 19 : operator ++(0);</span>
+<span class="lineNum"> 50 </span><span class="lineCov"> 19 : };</span>
+<span class="lineNum"> 51 </span> :
+<span class="lineNum"> 52 </span> : public:
+<span class="lineNum"> 53 </span> :
+<span class="lineNum"> 54 </span> : enum OkState {NeedsNothing,NeedsUnpack,NeedsConfigure};
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span> : // Iteration
+<span class="lineNum"> 57 </span> : void operator ++(int);
+<span class="lineNum"> 58 </span><span class="lineCov"> 52878 : inline void operator ++() {operator ++(0);};</span>
+<span class="lineNum"> 59 </span><span class="lineCov"> 89241 : inline bool end() const {return Owner == 0 || Pkg == Owner-&gt;PkgP?true:false;};</span>
+<span class="lineNum"> 60 </span> :
+<span class="lineNum"> 61 </span> : // Comparison
+<span class="lineNum"> 62 </span><span class="lineNoCov"> 0 : inline bool operator ==(const PkgIterator &amp;B) const {return Pkg == B.Pkg;};</span>
+<span class="lineNum"> 63 </span><span class="lineNoCov"> 0 : inline bool operator !=(const PkgIterator &amp;B) const {return Pkg != B.Pkg;};</span>
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : // Accessors
+<span class="lineNum"> 66 </span><span class="lineCov"> 67369 : inline Package *operator -&gt;() {return Pkg;};</span>
+<span class="lineNum"> 67 </span><span class="lineCov"> 3787 : inline Package const *operator -&gt;() const {return Pkg;};</span>
+<span class="lineNum"> 68 </span> : inline Package const &amp;operator *() const {return *Pkg;};
+<span class="lineNum"> 69 </span> : inline operator Package *() {return Pkg == Owner-&gt;PkgP?0:Pkg;};
+<span class="lineNum"> 70 </span> : inline operator Package const *() const {return Pkg == Owner-&gt;PkgP?0:Pkg;};
+<span class="lineNum"> 71 </span> : inline pkgCache *Cache() {return Owner;};
+<span class="lineNum"> 72 </span> :
+<span class="lineNum"> 73 </span><span class="lineCov"> 18343 : inline const char *Name() const {return Pkg-&gt;Name == 0?0:Owner-&gt;StrP + Pkg-&gt;Name;};</span>
+<span class="lineNum"> 74 </span> : inline const char *Section() const {return Pkg-&gt;Section == 0?0:Owner-&gt;StrP + Pkg-&gt;Section;};
+<span class="lineNum"> 75 </span> : inline bool Purge() const {return Pkg-&gt;CurrentState == pkgCache::State::Purge ||
+<span class="lineNum"> 76 </span> : (Pkg-&gt;CurrentVer == 0 &amp;&amp; Pkg-&gt;CurrentState == pkgCache::State::NotInstalled);};
+<span class="lineNum"> 77 </span> : inline VerIterator VersionList() const;
+<span class="lineNum"> 78 </span> : inline VerIterator CurrentVer() const;
+<span class="lineNum"> 79 </span> : inline DepIterator RevDependsList() const;
+<span class="lineNum"> 80 </span> : inline PrvIterator ProvidesList() const;
+<span class="lineNum"> 81 </span> : inline unsigned long Index() const {return Pkg - Owner-&gt;PkgP;};
+<span class="lineNum"> 82 </span> : OkState State() const;
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span> : // Constructors
+<span class="lineNum"> 85 </span><span class="lineCov"> 5424 : inline PkgIterator(pkgCache &amp;Owner,Package *Trg) : Pkg(Trg), Owner(&amp;Owner),</span>
+<span class="lineNum"> 86 </span><span class="lineCov"> 5424 : HashIndex(0) </span>
+<span class="lineNum"> 87 </span> : {
+<span class="lineNum"> 88 </span><span class="lineCov"> 5424 : if (Pkg == 0)</span>
+<span class="lineNum"> 89 </span><span class="lineNoCov"> 0 : Pkg = Owner.PkgP;</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 5424 : };</span>
+<span class="lineNum"> 91 </span><span class="lineCov"> 29 : inline PkgIterator() : Pkg(0), Owner(0), HashIndex(0) {};</span>
+<span class="lineNum"> 92 </span> : };
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span> : // Version Iterator
+<span class="lineNum"> 95 </span> : class pkgCache::VerIterator
+<span class="lineNum"> 96 </span> : {
+<span class="lineNum"> 97 </span> : Version *Ver;
+<span class="lineNum"> 98 </span> : pkgCache *Owner;
+<span class="lineNum"> 99 </span> :
+<span class="lineNum"> 100 </span> : void _dummy();
+<span class="lineNum"> 101 </span> :
+<span class="lineNum"> 102 </span> : public:
+<span class="lineNum"> 103 </span> :
+<span class="lineNum"> 104 </span> : // Iteration
+<span class="lineNum"> 105 </span><span class="lineCov"> 15767 : void operator ++(int) {if (Ver != Owner-&gt;VerP) Ver = Owner-&gt;VerP + Ver-&gt;NextVer;};</span>
+<span class="lineNum"> 106 </span><span class="lineCov"> 1808 : inline void operator ++() {operator ++(0);};</span>
+<span class="lineNum"> 107 </span><span class="lineCov"> 58053 : inline bool end() const {return Owner == NULL || (Ver == Owner-&gt;VerP?true:false);};</span>
+<span class="lineNum"> 108 </span><span class="lineCov"> 11172 : inline void operator =(const VerIterator &amp;B) {Ver = B.Ver; Owner = B.Owner;};</span>
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span> : // Comparison
+<span class="lineNum"> 111 </span> : inline bool operator ==(const VerIterator &amp;B) const {return Ver == B.Ver;};
+<span class="lineNum"> 112 </span><span class="lineCov"> 1433 : inline bool operator !=(const VerIterator &amp;B) const {return Ver != B.Ver;};</span>
+<span class="lineNum"> 113 </span> : int CompareVer(const VerIterator &amp;B) const;
+<span class="lineNum"> 114 </span> :
+<span class="lineNum"> 115 </span> : // Accessors
+<span class="lineNum"> 116 </span> : inline Version *operator -&gt;() {return Ver;};
+<span class="lineNum"> 117 </span> : inline Version const *operator -&gt;() const {return Ver;};
+<span class="lineNum"> 118 </span> : inline Version &amp;operator *() {return *Ver;};
+<span class="lineNum"> 119 </span> : inline Version const &amp;operator *() const {return *Ver;};
+<span class="lineNum"> 120 </span> : inline operator Version *() {return Ver == Owner-&gt;VerP?0:Ver;};
+<span class="lineNum"> 121 </span> : inline operator Version const *() const {return Ver == Owner-&gt;VerP?0:Ver;};
+<span class="lineNum"> 122 </span> : inline pkgCache *Cache() {return Owner;};
+<span class="lineNum"> 123 </span> :
+<span class="lineNum"> 124 </span><span class="lineCov"> 1830 : inline const char *VerStr() const {return Ver-&gt;VerStr == 0?0:Owner-&gt;StrP + Ver-&gt;VerStr;};</span>
+<span class="lineNum"> 125 </span> : inline const char *Section() const {return Ver-&gt;Section == 0?0:Owner-&gt;StrP + Ver-&gt;Section;};
+<span class="lineNum"> 126 </span> : inline const char *Arch() const {return Ver-&gt;Arch == 0?0:Owner-&gt;StrP + Ver-&gt;Arch;};
+<span class="lineNum"> 127 </span><span class="lineCov"> 5424 : inline PkgIterator ParentPkg() const {return PkgIterator(*Owner,Owner-&gt;PkgP + Ver-&gt;ParentPkg);};</span>
+<span class="lineNum"> 128 </span> : inline DescIterator DescriptionList() const;
+<span class="lineNum"> 129 </span> : DescIterator TranslatedDescription() const;
+<span class="lineNum"> 130 </span> : inline DepIterator DependsList() const;
+<span class="lineNum"> 131 </span> : inline PrvIterator ProvidesList() const;
+<span class="lineNum"> 132 </span> : inline VerFileIterator FileList() const;
+<span class="lineNum"> 133 </span> : inline unsigned long Index() const {return Ver - Owner-&gt;VerP;};
+<span class="lineNum"> 134 </span> : bool Downloadable() const;
+<span class="lineNum"> 135 </span> : inline const char *PriorityType() {return Owner-&gt;Priority(Ver-&gt;Priority);};
+<span class="lineNum"> 136 </span> : string RelStr();
+<span class="lineNum"> 137 </span> :
+<span class="lineNum"> 138 </span> : bool Automatic() const;
+<span class="lineNum"> 139 </span> : VerFileIterator NewestFile() const;
+<span class="lineNum"> 140 </span> :
+<span class="lineNum"> 141 </span><span class="lineCov"> 15 : inline VerIterator() : Ver(0), Owner(0) {}; </span>
+<span class="lineNum"> 142 </span><span class="lineCov"> 21130 : inline VerIterator(pkgCache &amp;Owner,Version *Trg = 0) : Ver(Trg), </span>
+<span class="lineNum"> 143 </span><span class="lineCov"> 21130 : Owner(&amp;Owner) </span>
+<span class="lineNum"> 144 </span> : {
+<span class="lineNum"> 145 </span><span class="lineCov"> 21130 : if (Ver == 0)</span>
+<span class="lineNum"> 146 </span><span class="lineNoCov"> 0 : Ver = Owner.VerP;</span>
+<span class="lineNum"> 147 </span><span class="lineCov"> 21130 : };</span>
+<span class="lineNum"> 148 </span> : };
+<span class="lineNum"> 149 </span> :
+<span class="lineNum"> 150 </span> : // Description Iterator
+<span class="lineNum"> 151 </span> : class pkgCache::DescIterator
+<span class="lineNum"> 152 </span> : {
+<span class="lineNum"> 153 </span> : Description *Desc;
+<span class="lineNum"> 154 </span> : pkgCache *Owner;
+<span class="lineNum"> 155 </span> :
+<span class="lineNum"> 156 </span> : void _dummy();
+<span class="lineNum"> 157 </span> :
+<span class="lineNum"> 158 </span> : public:
+<span class="lineNum"> 159 </span> :
+<span class="lineNum"> 160 </span> : // Iteration
+<span class="lineNum"> 161 </span> : void operator ++(int) {if (Desc != Owner-&gt;DescP) Desc = Owner-&gt;DescP + Desc-&gt;NextDesc;};
+<span class="lineNum"> 162 </span> : inline void operator ++() {operator ++(0);};
+<span class="lineNum"> 163 </span> : inline bool end() const {return Desc == Owner-&gt;DescP?true:false;};
+<span class="lineNum"> 164 </span> : inline void operator =(const DescIterator &amp;B) {Desc = B.Desc; Owner = B.Owner;};
+<span class="lineNum"> 165 </span> :
+<span class="lineNum"> 166 </span> : // Comparison
+<span class="lineNum"> 167 </span> : inline bool operator ==(const DescIterator &amp;B) const {return Desc == B.Desc;};
+<span class="lineNum"> 168 </span> : inline bool operator !=(const DescIterator &amp;B) const {return Desc != B.Desc;};
+<span class="lineNum"> 169 </span> : int CompareDesc(const DescIterator &amp;B) const;
+<span class="lineNum"> 170 </span> :
+<span class="lineNum"> 171 </span> : // Accessors
+<span class="lineNum"> 172 </span> : inline Description *operator -&gt;() {return Desc;};
+<span class="lineNum"> 173 </span> : inline Description const *operator -&gt;() const {return Desc;};
+<span class="lineNum"> 174 </span> : inline Description &amp;operator *() {return *Desc;};
+<span class="lineNum"> 175 </span> : inline Description const &amp;operator *() const {return *Desc;};
+<span class="lineNum"> 176 </span> : inline operator Description *() {return Desc == Owner-&gt;DescP?0:Desc;};
+<span class="lineNum"> 177 </span> : inline operator Description const *() const {return Desc == Owner-&gt;DescP?0:Desc;};
+<span class="lineNum"> 178 </span> : inline pkgCache *Cache() {return Owner;};
+<span class="lineNum"> 179 </span> :
+<span class="lineNum"> 180 </span> : inline const char *LanguageCode() const {return Owner-&gt;StrP + Desc-&gt;language_code;};
+<span class="lineNum"> 181 </span> : inline const char *md5() const {return Owner-&gt;StrP + Desc-&gt;md5sum;};
+<span class="lineNum"> 182 </span> : inline DescFileIterator FileList() const;
+<span class="lineNum"> 183 </span> : inline unsigned long Index() const {return Desc - Owner-&gt;DescP;};
+<span class="lineNum"> 184 </span> :
+<span class="lineNum"> 185 </span> : inline DescIterator() : Desc(0), Owner(0) {};
+<span class="lineNum"> 186 </span> : inline DescIterator(pkgCache &amp;Owner,Description *Trg = 0) : Desc(Trg),
+<span class="lineNum"> 187 </span> : Owner(&amp;Owner)
+<span class="lineNum"> 188 </span> : {
+<span class="lineNum"> 189 </span> : if (Desc == 0)
+<span class="lineNum"> 190 </span> : Desc = Owner.DescP;
+<span class="lineNum"> 191 </span> : };
+<span class="lineNum"> 192 </span> : };
+<span class="lineNum"> 193 </span> :
+<span class="lineNum"> 194 </span> : // Dependency iterator
+<span class="lineNum"> 195 </span> : class pkgCache::DepIterator
+<span class="lineNum"> 196 </span> : {
+<span class="lineNum"> 197 </span> : Dependency *Dep;
+<span class="lineNum"> 198 </span> : enum {DepVer, DepRev} Type;
+<span class="lineNum"> 199 </span> : pkgCache *Owner;
+<span class="lineNum"> 200 </span> :
+<span class="lineNum"> 201 </span> : void _dummy();
+<span class="lineNum"> 202 </span> :
+<span class="lineNum"> 203 </span> : public:
+<span class="lineNum"> 204 </span> :
+<span class="lineNum"> 205 </span> : // Iteration
+<span class="lineNum"> 206 </span> : void operator ++(int) {if (Dep != Owner-&gt;DepP) Dep = Owner-&gt;DepP +
+<span class="lineNum"> 207 </span> : (Type == DepVer?Dep-&gt;NextDepends:Dep-&gt;NextRevDepends);};
+<span class="lineNum"> 208 </span> : inline void operator ++() {operator ++(0);};
+<span class="lineNum"> 209 </span> : inline bool end() const {return Owner == 0 || Dep == Owner-&gt;DepP?true:false;};
+<span class="lineNum"> 210 </span> :
+<span class="lineNum"> 211 </span> : // Comparison
+<span class="lineNum"> 212 </span> : inline bool operator ==(const DepIterator &amp;B) const {return Dep == B.Dep;};
+<span class="lineNum"> 213 </span> : inline bool operator !=(const DepIterator &amp;B) const {return Dep != B.Dep;};
+<span class="lineNum"> 214 </span> :
+<span class="lineNum"> 215 </span> : // Accessors
+<span class="lineNum"> 216 </span> : inline Dependency *operator -&gt;() {return Dep;};
+<span class="lineNum"> 217 </span> : inline Dependency const *operator -&gt;() const {return Dep;};
+<span class="lineNum"> 218 </span> : inline Dependency &amp;operator *() {return *Dep;};
+<span class="lineNum"> 219 </span> : inline Dependency const &amp;operator *() const {return *Dep;};
+<span class="lineNum"> 220 </span> : inline operator Dependency *() {return Dep == Owner-&gt;DepP?0:Dep;};
+<span class="lineNum"> 221 </span> : inline operator Dependency const *() const {return Dep == Owner-&gt;DepP?0:Dep;};
+<span class="lineNum"> 222 </span> : inline pkgCache *Cache() {return Owner;};
+<span class="lineNum"> 223 </span> :
+<span class="lineNum"> 224 </span> : inline const char *TargetVer() const {return Dep-&gt;Version == 0?0:Owner-&gt;StrP + Dep-&gt;Version;};
+<span class="lineNum"> 225 </span> : inline PkgIterator TargetPkg() {return PkgIterator(*Owner,Owner-&gt;PkgP + Dep-&gt;Package);};
+<span class="lineNum"> 226 </span> : inline PkgIterator SmartTargetPkg() {PkgIterator R(*Owner,0);SmartTargetPkg(R);return R;};
+<span class="lineNum"> 227 </span> : inline VerIterator ParentVer() {return VerIterator(*Owner,Owner-&gt;VerP + Dep-&gt;ParentVer);};
+<span class="lineNum"> 228 </span> : inline PkgIterator ParentPkg() {return PkgIterator(*Owner,Owner-&gt;PkgP + Owner-&gt;VerP[Dep-&gt;ParentVer].ParentPkg);};
+<span class="lineNum"> 229 </span> : inline bool Reverse() {return Type == DepRev;};
+<span class="lineNum"> 230 </span> : inline unsigned long Index() const {return Dep - Owner-&gt;DepP;};
+<span class="lineNum"> 231 </span> : bool IsCritical();
+<span class="lineNum"> 232 </span> : void GlobOr(DepIterator &amp;Start,DepIterator &amp;End);
+<span class="lineNum"> 233 </span> : Version **AllTargets();
+<span class="lineNum"> 234 </span> : bool SmartTargetPkg(PkgIterator &amp;Result);
+<span class="lineNum"> 235 </span> : inline const char *CompType() {return Owner-&gt;CompType(Dep-&gt;CompareOp);};
+<span class="lineNum"> 236 </span> : inline const char *DepType() {return Owner-&gt;DepType(Dep-&gt;Type);};
+<span class="lineNum"> 237 </span> :
+<span class="lineNum"> 238 </span> : inline DepIterator(pkgCache &amp;Owner,Dependency *Trg,Version * = 0) :
+<span class="lineNum"> 239 </span> : Dep(Trg), Type(DepVer), Owner(&amp;Owner)
+<span class="lineNum"> 240 </span> : {
+<span class="lineNum"> 241 </span> : if (Dep == 0)
+<span class="lineNum"> 242 </span> : Dep = Owner.DepP;
+<span class="lineNum"> 243 </span> : };
+<span class="lineNum"> 244 </span> : inline DepIterator(pkgCache &amp;Owner,Dependency *Trg,Package *) :
+<span class="lineNum"> 245 </span> : Dep(Trg), Type(DepRev), Owner(&amp;Owner)
+<span class="lineNum"> 246 </span> : {
+<span class="lineNum"> 247 </span> : if (Dep == 0)
+<span class="lineNum"> 248 </span> : Dep = Owner.DepP;
+<span class="lineNum"> 249 </span> : };
+<span class="lineNum"> 250 </span> : inline DepIterator() : Dep(0), Type(DepVer), Owner(0) {};
+<span class="lineNum"> 251 </span> : };
+<span class="lineNum"> 252 </span> :
+<span class="lineNum"> 253 </span> : // Provides iterator
+<span class="lineNum"> 254 </span> : class pkgCache::PrvIterator
+<span class="lineNum"> 255 </span> : {
+<span class="lineNum"> 256 </span> : Provides *Prv;
+<span class="lineNum"> 257 </span> : enum {PrvVer, PrvPkg} Type;
+<span class="lineNum"> 258 </span> : pkgCache *Owner;
+<span class="lineNum"> 259 </span> :
+<span class="lineNum"> 260 </span> : void _dummy();
+<span class="lineNum"> 261 </span> :
+<span class="lineNum"> 262 </span> : public:
+<span class="lineNum"> 263 </span> :
+<span class="lineNum"> 264 </span> : // Iteration
+<span class="lineNum"> 265 </span> : void operator ++(int) {if (Prv != Owner-&gt;ProvideP) Prv = Owner-&gt;ProvideP +
+<span class="lineNum"> 266 </span> : (Type == PrvVer?Prv-&gt;NextPkgProv:Prv-&gt;NextProvides);};
+<span class="lineNum"> 267 </span> : inline void operator ++() {operator ++(0);};
+<span class="lineNum"> 268 </span> : inline bool end() const {return Owner == 0 || Prv == Owner-&gt;ProvideP?true:false;};
+<span class="lineNum"> 269 </span> :
+<span class="lineNum"> 270 </span> : // Comparison
+<span class="lineNum"> 271 </span> : inline bool operator ==(const PrvIterator &amp;B) const {return Prv == B.Prv;};
+<span class="lineNum"> 272 </span> : inline bool operator !=(const PrvIterator &amp;B) const {return Prv != B.Prv;};
+<span class="lineNum"> 273 </span> :
+<span class="lineNum"> 274 </span> : // Accessors
+<span class="lineNum"> 275 </span> : inline Provides *operator -&gt;() {return Prv;};
+<span class="lineNum"> 276 </span> : inline Provides const *operator -&gt;() const {return Prv;};
+<span class="lineNum"> 277 </span> : inline Provides &amp;operator *() {return *Prv;};
+<span class="lineNum"> 278 </span> : inline Provides const &amp;operator *() const {return *Prv;};
+<span class="lineNum"> 279 </span> : inline operator Provides *() {return Prv == Owner-&gt;ProvideP?0:Prv;};
+<span class="lineNum"> 280 </span> : inline operator Provides const *() const {return Prv == Owner-&gt;ProvideP?0:Prv;};
+<span class="lineNum"> 281 </span> : inline pkgCache *Cache() {return Owner;};
+<span class="lineNum"> 282 </span> :
+<span class="lineNum"> 283 </span> : inline const char *Name() const {return Owner-&gt;StrP + Owner-&gt;PkgP[Prv-&gt;ParentPkg].Name;};
+<span class="lineNum"> 284 </span> : inline const char *ProvideVersion() const {return Prv-&gt;ProvideVersion == 0?0:Owner-&gt;StrP + Prv-&gt;ProvideVersion;};
+<span class="lineNum"> 285 </span> : inline PkgIterator ParentPkg() {return PkgIterator(*Owner,Owner-&gt;PkgP + Prv-&gt;ParentPkg);};
+<span class="lineNum"> 286 </span> : inline VerIterator OwnerVer() {return VerIterator(*Owner,Owner-&gt;VerP + Prv-&gt;Version);};
+<span class="lineNum"> 287 </span> : inline PkgIterator OwnerPkg() {return PkgIterator(*Owner,Owner-&gt;PkgP + Owner-&gt;VerP[Prv-&gt;Version].ParentPkg);};
+<span class="lineNum"> 288 </span> : inline unsigned long Index() const {return Prv - Owner-&gt;ProvideP;};
+<span class="lineNum"> 289 </span> :
+<span class="lineNum"> 290 </span> : inline PrvIterator() : Prv(0), Type(PrvVer), Owner(0) {};
+<span class="lineNum"> 291 </span> :
+<span class="lineNum"> 292 </span> : inline PrvIterator(pkgCache &amp;Owner,Provides *Trg,Version *) :
+<span class="lineNum"> 293 </span> : Prv(Trg), Type(PrvVer), Owner(&amp;Owner)
+<span class="lineNum"> 294 </span> : {
+<span class="lineNum"> 295 </span> : if (Prv == 0)
+<span class="lineNum"> 296 </span> : Prv = Owner.ProvideP;
+<span class="lineNum"> 297 </span> : };
+<span class="lineNum"> 298 </span> : inline PrvIterator(pkgCache &amp;Owner,Provides *Trg,Package *) :
+<span class="lineNum"> 299 </span> : Prv(Trg), Type(PrvPkg), Owner(&amp;Owner)
+<span class="lineNum"> 300 </span> : {
+<span class="lineNum"> 301 </span> : if (Prv == 0)
+<span class="lineNum"> 302 </span> : Prv = Owner.ProvideP;
+<span class="lineNum"> 303 </span> : };
+<span class="lineNum"> 304 </span> : };
+<span class="lineNum"> 305 </span> :
+<span class="lineNum"> 306 </span> : // Package file
+<span class="lineNum"> 307 </span> : class pkgCache::PkgFileIterator
+<span class="lineNum"> 308 </span> : {
+<span class="lineNum"> 309 </span> : pkgCache *Owner;
+<span class="lineNum"> 310 </span> : PackageFile *File;
+<span class="lineNum"> 311 </span> :
+<span class="lineNum"> 312 </span> : public:
+<span class="lineNum"> 313 </span> :
+<span class="lineNum"> 314 </span> : // Iteration
+<span class="lineNum"> 315 </span> : void operator ++(int) {if (File!= Owner-&gt;PkgFileP) File = Owner-&gt;PkgFileP + File-&gt;NextFile;};
+<span class="lineNum"> 316 </span> : inline void operator ++() {operator ++(0);};
+<span class="lineNum"> 317 </span> : inline bool end() const {return File == Owner-&gt;PkgFileP?true:false;};
+<span class="lineNum"> 318 </span> :
+<span class="lineNum"> 319 </span> : // Comparison
+<span class="lineNum"> 320 </span> : inline bool operator ==(const PkgFileIterator &amp;B) const {return File == B.File;};
+<span class="lineNum"> 321 </span> : inline bool operator !=(const PkgFileIterator &amp;B) const {return File != B.File;};
+<span class="lineNum"> 322 </span> :
+<span class="lineNum"> 323 </span> : // Accessors
+<span class="lineNum"> 324 </span><span class="lineCov"> 26403 : inline PackageFile *operator -&gt;() {return File;};</span>
+<span class="lineNum"> 325 </span> : inline PackageFile const *operator -&gt;() const {return File;};
+<span class="lineNum"> 326 </span> : inline PackageFile const &amp;operator *() const {return *File;};
+<span class="lineNum"> 327 </span><span class="lineCov"> 5202 : inline operator PackageFile *() {return File == Owner-&gt;PkgFileP?0:File;};</span>
+<span class="lineNum"> 328 </span> : inline operator PackageFile const *() const {return File == Owner-&gt;PkgFileP?0:File;};
+<span class="lineNum"> 329 </span><span class="lineCov"> 5216 : inline pkgCache *Cache() {return Owner;};</span>
+<span class="lineNum"> 330 </span> :
+<span class="lineNum"> 331 </span><span class="lineCov"> 26 : inline const char *FileName() const {return File-&gt;FileName == 0?0:Owner-&gt;StrP + File-&gt;FileName;};</span>
+<span class="lineNum"> 332 </span> : inline const char *Archive() const {return File-&gt;Archive == 0?0:Owner-&gt;StrP + File-&gt;Archive;};
+<span class="lineNum"> 333 </span> : inline const char *Component() const {return File-&gt;Component == 0?0:Owner-&gt;StrP + File-&gt;Component;};
+<span class="lineNum"> 334 </span> : inline const char *Version() const {return File-&gt;Version == 0?0:Owner-&gt;StrP + File-&gt;Version;};
+<span class="lineNum"> 335 </span> : inline const char *Origin() const {return File-&gt;Origin == 0?0:Owner-&gt;StrP + File-&gt;Origin;};
+<span class="lineNum"> 336 </span> : inline const char *Label() const {return File-&gt;Label == 0?0:Owner-&gt;StrP + File-&gt;Label;};
+<span class="lineNum"> 337 </span> : inline const char *Site() const {return File-&gt;Site == 0?0:Owner-&gt;StrP + File-&gt;Site;};
+<span class="lineNum"> 338 </span> : inline const char *Architecture() const {return File-&gt;Architecture == 0?0:Owner-&gt;StrP + File-&gt;Architecture;};
+<span class="lineNum"> 339 </span> : inline const char *IndexType() const {return File-&gt;IndexType == 0?0:Owner-&gt;StrP + File-&gt;IndexType;};
+<span class="lineNum"> 340 </span> :
+<span class="lineNum"> 341 </span> : inline unsigned long Index() const {return File - Owner-&gt;PkgFileP;};
+<span class="lineNum"> 342 </span> :
+<span class="lineNum"> 343 </span> : bool IsOk();
+<span class="lineNum"> 344 </span> : string RelStr();
+<span class="lineNum"> 345 </span> :
+<span class="lineNum"> 346 </span> : // Constructors
+<span class="lineNum"> 347 </span><span class="lineCov"> 15 : inline PkgFileIterator() : Owner(0), File(0) {};</span>
+<span class="lineNum"> 348 </span> : inline PkgFileIterator(pkgCache &amp;Owner) : Owner(&amp;Owner), File(Owner.PkgFileP) {};
+<span class="lineNum"> 349 </span><span class="lineCov"> 26429 : inline PkgFileIterator(pkgCache &amp;Owner,PackageFile *Trg) : Owner(&amp;Owner), File(Trg) {};</span>
+<span class="lineNum"> 350 </span> : };
+<span class="lineNum"> 351 </span> :
+<span class="lineNum"> 352 </span> : // Version File
+<span class="lineNum"> 353 </span> : class pkgCache::VerFileIterator
+<span class="lineNum"> 354 </span> : {
+<span class="lineNum"> 355 </span> : pkgCache *Owner;
+<span class="lineNum"> 356 </span> : VerFile *FileP;
+<span class="lineNum"> 357 </span> :
+<span class="lineNum"> 358 </span> : public:
+<span class="lineNum"> 359 </span> :
+<span class="lineNum"> 360 </span> : // Iteration
+<span class="lineNum"> 361 </span><span class="lineCov"> 22055 : void operator ++(int) {if (FileP != Owner-&gt;VerFileP) FileP = Owner-&gt;VerFileP + FileP-&gt;NextFile;};</span>
+<span class="lineNum"> 362 </span><span class="lineCov"> 11714 : inline void operator ++() {operator ++(0);};</span>
+<span class="lineNum"> 363 </span><span class="lineCov"> 90338 : inline bool end() const {return FileP == Owner-&gt;VerFileP?true:false;};</span>
+<span class="lineNum"> 364 </span> :
+<span class="lineNum"> 365 </span> : // Comparison
+<span class="lineNum"> 366 </span> : inline bool operator ==(const VerFileIterator &amp;B) const {return FileP == B.FileP;};
+<span class="lineNum"> 367 </span> : inline bool operator !=(const VerFileIterator &amp;B) const {return FileP != B.FileP;};
+<span class="lineNum"> 368 </span> :
+<span class="lineNum"> 369 </span> : // Accessors
+<span class="lineNum"> 370 </span><span class="lineCov"> 10056 : inline VerFile *operator -&gt;() {return FileP;};</span>
+<span class="lineNum"> 371 </span> : inline VerFile const *operator -&gt;() const {return FileP;};
+<span class="lineNum"> 372 </span> : inline VerFile const &amp;operator *() const {return *FileP;};
+<span class="lineNum"> 373 </span><span class="lineCov"> 4341 : inline operator VerFile *() {return FileP == Owner-&gt;VerFileP?0:FileP;};</span>
+<span class="lineNum"> 374 </span> : inline operator VerFile const *() const {return FileP == Owner-&gt;VerFileP?0:FileP;};
+<span class="lineNum"> 375 </span><span class="lineCov"> 1311 : inline pkgCache *Cache() {return Owner;};</span>
+<span class="lineNum"> 376 </span> :
+<span class="lineNum"> 377 </span><span class="lineCov"> 26406 : inline PkgFileIterator File() const {return PkgFileIterator(*Owner,FileP-&gt;File + Owner-&gt;PkgFileP);};</span>
+<span class="lineNum"> 378 </span> : inline unsigned long Index() const {return FileP - Owner-&gt;VerFileP;};
+<span class="lineNum"> 379 </span> :
+<span class="lineNum"> 380 </span><span class="lineCov"> 7 : inline VerFileIterator() : Owner(0), FileP(0) {};</span>
+<span class="lineNum"> 381 </span><span class="lineCov"> 27354 : inline VerFileIterator(pkgCache &amp;Owner,VerFile *Trg) : Owner(&amp;Owner), FileP(Trg) {};</span>
+<span class="lineNum"> 382 </span> : };
+<span class="lineNum"> 383 </span> :
+<span class="lineNum"> 384 </span> : // Description File
+<span class="lineNum"> 385 </span> : class pkgCache::DescFileIterator
+<span class="lineNum"> 386 </span> : {
+<span class="lineNum"> 387 </span> : pkgCache *Owner;
+<span class="lineNum"> 388 </span> : DescFile *FileP;
+<span class="lineNum"> 389 </span> :
+<span class="lineNum"> 390 </span> : public:
+<span class="lineNum"> 391 </span> :
+<span class="lineNum"> 392 </span> : // Iteration
+<span class="lineNum"> 393 </span> : void operator ++(int) {if (FileP != Owner-&gt;DescFileP) FileP = Owner-&gt;DescFileP + FileP-&gt;NextFile;};
+<span class="lineNum"> 394 </span> : inline void operator ++() {operator ++(0);};
+<span class="lineNum"> 395 </span> : inline bool end() const {return FileP == Owner-&gt;DescFileP?true:false;};
+<span class="lineNum"> 396 </span> :
+<span class="lineNum"> 397 </span> : // Comparison
+<span class="lineNum"> 398 </span> : inline bool operator ==(const DescFileIterator &amp;B) const {return FileP == B.FileP;};
+<span class="lineNum"> 399 </span> : inline bool operator !=(const DescFileIterator &amp;B) const {return FileP != B.FileP;};
+<span class="lineNum"> 400 </span> :
+<span class="lineNum"> 401 </span> : // Accessors
+<span class="lineNum"> 402 </span> : inline DescFile *operator -&gt;() {return FileP;};
+<span class="lineNum"> 403 </span> : inline DescFile const *operator -&gt;() const {return FileP;};
+<span class="lineNum"> 404 </span> : inline DescFile const &amp;operator *() const {return *FileP;};
+<span class="lineNum"> 405 </span> : inline operator DescFile *() {return FileP == Owner-&gt;DescFileP?0:FileP;};
+<span class="lineNum"> 406 </span> : inline operator DescFile const *() const {return FileP == Owner-&gt;DescFileP?0:FileP;};
+<span class="lineNum"> 407 </span> : inline pkgCache *Cache() {return Owner;};
+<span class="lineNum"> 408 </span> :
+<span class="lineNum"> 409 </span> : inline PkgFileIterator File() const {return PkgFileIterator(*Owner,FileP-&gt;File + Owner-&gt;PkgFileP);};
+<span class="lineNum"> 410 </span> : inline unsigned long Index() const {return FileP - Owner-&gt;DescFileP;};
+<span class="lineNum"> 411 </span> :
+<span class="lineNum"> 412 </span> : inline DescFileIterator() : Owner(0), FileP(0) {};
+<span class="lineNum"> 413 </span> : inline DescFileIterator(pkgCache &amp;Owner,DescFile *Trg) : Owner(&amp;Owner), FileP(Trg) {};
+<span class="lineNum"> 414 </span> : };
+<span class="lineNum"> 415 </span> :
+<span class="lineNum"> 416 </span> : // Inlined Begin functions cant be in the class because of order problems
+<span class="lineNum"> 417 </span><span class="lineCov"> 19696 : inline pkgCache::VerIterator pkgCache::PkgIterator::VersionList() const</span>
+<span class="lineNum"> 418 </span><span class="lineCov"> 19696 : {return VerIterator(*Owner,Owner-&gt;VerP + Pkg-&gt;VersionList);};</span>
+<span class="lineNum"> 419 </span><span class="lineCov"> 2 : inline pkgCache::VerIterator pkgCache::PkgIterator::CurrentVer() const</span>
+<span class="lineNum"> 420 </span><span class="lineCov"> 2 : {return VerIterator(*Owner,Owner-&gt;VerP + Pkg-&gt;CurrentVer);};</span>
+<span class="lineNum"> 421 </span> : inline pkgCache::DepIterator pkgCache::PkgIterator::RevDependsList() const
+<span class="lineNum"> 422 </span> : {return DepIterator(*Owner,Owner-&gt;DepP + Pkg-&gt;RevDepends,Pkg);};
+<span class="lineNum"> 423 </span> : inline pkgCache::PrvIterator pkgCache::PkgIterator::ProvidesList() const
+<span class="lineNum"> 424 </span> : {return PrvIterator(*Owner,Owner-&gt;ProvideP + Pkg-&gt;ProvidesList,Pkg);};
+<span class="lineNum"> 425 </span> : inline pkgCache::DescIterator pkgCache::VerIterator::DescriptionList() const
+<span class="lineNum"> 426 </span> : {return DescIterator(*Owner,Owner-&gt;DescP + Ver-&gt;DescriptionList);};
+<span class="lineNum"> 427 </span> : inline pkgCache::PrvIterator pkgCache::VerIterator::ProvidesList() const
+<span class="lineNum"> 428 </span> : {return PrvIterator(*Owner,Owner-&gt;ProvideP + Ver-&gt;ProvidesList,Ver);};
+<span class="lineNum"> 429 </span> : inline pkgCache::DepIterator pkgCache::VerIterator::DependsList() const
+<span class="lineNum"> 430 </span> : {return DepIterator(*Owner,Owner-&gt;DepP + Ver-&gt;DependsList,Ver);};
+<span class="lineNum"> 431 </span><span class="lineCov"> 26484 : inline pkgCache::VerFileIterator pkgCache::VerIterator::FileList() const</span>
+<span class="lineNum"> 432 </span><span class="lineCov"> 26484 : {return VerFileIterator(*Owner,Owner-&gt;VerFileP + Ver-&gt;FileList);};</span>
+<span class="lineNum"> 433 </span> : inline pkgCache::DescFileIterator pkgCache::DescIterator::FileList() const
+<span class="lineNum"> 434 </span> : {return DescFileIterator(*Owner,Owner-&gt;DescFileP + Desc-&gt;FileList);};
+<span class="lineNum"> 435 </span> :
+<span class="lineNum"> 436 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/apt-pkg/depcache.h.gcov.html b/rep/usr/include/apt-pkg/depcache.h.gcov.html
new file mode 100644
index 0000000..f982f27
--- /dev/null
+++ b/rep/usr/include/apt-pkg/depcache.h.gcov.html
@@ -0,0 +1,492 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/apt-pkg/depcache.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">usr/include/apt-pkg</a> - depcache.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">6</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">6</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: c++; mode: fold -*-
+<span class="lineNum"> 2 </span> : // Description /*{{{*/
+<span class="lineNum"> 3 </span> : // $Id: depcache.h,v 1.14 2001/02/20 07:03:17 jgg Exp $
+<span class="lineNum"> 4 </span> : /* ######################################################################
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : DepCache - Dependency Extension data for the cache
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : This class stores the cache data and a set of extension structures for
+<span class="lineNum"> 9 </span> : monitoring the current state of all the packages. It also generates and
+<span class="lineNum"> 10 </span> : caches the 'install' state of many things. This refers to the state of the
+<span class="lineNum"> 11 </span> : package after an install has been run.
+<span class="lineNum"> 12 </span> :
+<span class="lineNum"> 13 </span> : The StateCache::State field can be -1,0,1,2 which is &lt;,=,&gt;,no current.
+<span class="lineNum"> 14 </span> : StateCache::Mode is which of the 3 fields is active.
+<span class="lineNum"> 15 </span> :
+<span class="lineNum"> 16 </span> : This structure is important to support the readonly status of the cache
+<span class="lineNum"> 17 </span> : file. When the data is saved the cache will be refereshed from our
+<span class="lineNum"> 18 </span> : internal rep and written to disk. Then the actual persistant data
+<span class="lineNum"> 19 </span> : files will be put on the disk.
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : Each dependency is compared against 3 target versions to produce to
+<span class="lineNum"> 22 </span> : 3 dependency results.
+<span class="lineNum"> 23 </span> : Now - Compared using the Currently install version
+<span class="lineNum"> 24 </span> : Install - Compared using the install version (final state)
+<span class="lineNum"> 25 </span> : CVer - (Candidate Verion) Compared using the Candidate Version
+<span class="lineNum"> 26 </span> : The candidate and now results are used to decide wheather a package
+<span class="lineNum"> 27 </span> : should be automatically installed or if it should be left alone.
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : Remember, the Candidate Version is selected based on the distribution
+<span class="lineNum"> 30 </span> : settings for the Package. The Install Version is selected based on the
+<span class="lineNum"> 31 </span> : state (Delete, Keep, Install) field and can be either the Current Version
+<span class="lineNum"> 32 </span> : or the Candidate version.
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span> : The Candidate version is what is shown the 'Install Version' field.
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : ##################################################################### */
+<span class="lineNum"> 37 </span> : /*}}}*/
+<span class="lineNum"> 38 </span> : #ifndef PKGLIB_DEPCACHE_H
+<span class="lineNum"> 39 </span> : #define PKGLIB_DEPCACHE_H
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span> : #include &lt;apt-pkg/pkgcache.h&gt;
+<span class="lineNum"> 43 </span> : #include &lt;apt-pkg/progress.h&gt;
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : #include &lt;regex.h&gt;
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span> : #include &lt;vector&gt;
+<span class="lineNum"> 48 </span> : #include &lt;memory&gt;
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span> : class pkgDepCache : protected pkgCache::Namespace
+<span class="lineNum"> 51 </span> : {
+<span class="lineNum"> 52 </span> : public:
+<span class="lineNum"> 53 </span> :
+<span class="lineNum"> 54 </span> : /** \brief An arbitrary predicate on packages. */
+<span class="lineNum"> 55 </span> : class InRootSetFunc
+<span class="lineNum"> 56 </span> : {
+<span class="lineNum"> 57 </span> : public:
+<span class="lineNum"> 58 </span> : virtual bool InRootSet(const pkgCache::PkgIterator &amp;pkg) {return false;};
+<span class="lineNum"> 59 </span> : virtual ~InRootSetFunc() {};
+<span class="lineNum"> 60 </span> : };
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : private:
+<span class="lineNum"> 63 </span> : /** \brief Mark a single package and all its unmarked important
+<span class="lineNum"> 64 </span> : * dependencies during mark-and-sweep.
+<span class="lineNum"> 65 </span> : *
+<span class="lineNum"> 66 </span> : * Recursively invokes itself to mark all dependencies of the
+<span class="lineNum"> 67 </span> : * package.
+<span class="lineNum"> 68 </span> : *
+<span class="lineNum"> 69 </span> : * \param pkg The package to mark.
+<span class="lineNum"> 70 </span> : *
+<span class="lineNum"> 71 </span> : * \param ver The version of the package that is to be marked.
+<span class="lineNum"> 72 </span> : *
+<span class="lineNum"> 73 </span> : * \param follow_recommends If \b true, recommendations of the
+<span class="lineNum"> 74 </span> : * package will be recursively marked.
+<span class="lineNum"> 75 </span> : *
+<span class="lineNum"> 76 </span> : * \param follow_suggests If \b true, suggestions of the package
+<span class="lineNum"> 77 </span> : * will be recursively marked.
+<span class="lineNum"> 78 </span> : */
+<span class="lineNum"> 79 </span> : void MarkPackage(const pkgCache::PkgIterator &amp;pkg,
+<span class="lineNum"> 80 </span> : const pkgCache::VerIterator &amp;ver,
+<span class="lineNum"> 81 </span> : bool follow_recommends,
+<span class="lineNum"> 82 </span> : bool follow_suggests);
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span> : /** \brief Update the Marked field of all packages.
+<span class="lineNum"> 85 </span> : *
+<span class="lineNum"> 86 </span> : * Each package's StateCache::Marked field will be set to \b true
+<span class="lineNum"> 87 </span> : * if and only if it can be reached from the root set. By
+<span class="lineNum"> 88 </span> : * default, the root set consists of the set of manually installed
+<span class="lineNum"> 89 </span> : * or essential packages, but it can be extended using the
+<span class="lineNum"> 90 </span> : * parameter #rootFunc.
+<span class="lineNum"> 91 </span> : *
+<span class="lineNum"> 92 </span> : * \param rootFunc A callback that can be used to add extra
+<span class="lineNum"> 93 </span> : * packages to the root set.
+<span class="lineNum"> 94 </span> : *
+<span class="lineNum"> 95 </span> : * \return \b false if an error occurred.
+<span class="lineNum"> 96 </span> : */
+<span class="lineNum"> 97 </span> : bool MarkRequired(InRootSetFunc &amp;rootFunc);
+<span class="lineNum"> 98 </span> :
+<span class="lineNum"> 99 </span> : /** \brief Set the StateCache::Garbage flag on all packages that
+<span class="lineNum"> 100 </span> : * should be removed.
+<span class="lineNum"> 101 </span> : *
+<span class="lineNum"> 102 </span> : * Packages that were not marked by the last call to #MarkRequired
+<span class="lineNum"> 103 </span> : * are tested to see whether they are actually garbage. If so,
+<span class="lineNum"> 104 </span> : * they are marked as such.
+<span class="lineNum"> 105 </span> : *
+<span class="lineNum"> 106 </span> : * \return \b false if an error occurred.
+<span class="lineNum"> 107 </span> : */
+<span class="lineNum"> 108 </span> : bool Sweep();
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span> : public:
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span> : // These flags are used in DepState
+<span class="lineNum"> 113 </span> : enum DepFlags {DepNow = (1 &lt;&lt; 0),DepInstall = (1 &lt;&lt; 1),DepCVer = (1 &lt;&lt; 2),
+<span class="lineNum"> 114 </span> : DepGNow = (1 &lt;&lt; 3),DepGInstall = (1 &lt;&lt; 4),DepGCVer = (1 &lt;&lt; 5)};
+<span class="lineNum"> 115 </span> :
+<span class="lineNum"> 116 </span> : // These flags are used in StateCache::DepState
+<span class="lineNum"> 117 </span> : enum DepStateFlags {DepNowPolicy = (1 &lt;&lt; 0), DepNowMin = (1 &lt;&lt; 1),
+<span class="lineNum"> 118 </span> : DepInstPolicy = (1 &lt;&lt; 2), DepInstMin = (1 &lt;&lt; 3),
+<span class="lineNum"> 119 </span> : DepCandPolicy = (1 &lt;&lt; 4), DepCandMin = (1 &lt;&lt; 5)};
+<span class="lineNum"> 120 </span> :
+<span class="lineNum"> 121 </span> : // These flags are used in StateCache::iFlags
+<span class="lineNum"> 122 </span> : enum InternalFlags {AutoKept = (1 &lt;&lt; 0), Purge = (1 &lt;&lt; 1), ReInstall = (1 &lt;&lt; 2)};
+<span class="lineNum"> 123 </span> :
+<span class="lineNum"> 124 </span> : enum VersionTypes {NowVersion, InstallVersion, CandidateVersion};
+<span class="lineNum"> 125 </span> : enum ModeList {ModeDelete = 0, ModeKeep = 1, ModeInstall = 2};
+<span class="lineNum"> 126 </span> :
+<span class="lineNum"> 127 </span> : /** \brief Represents an active action group.
+<span class="lineNum"> 128 </span> : *
+<span class="lineNum"> 129 </span> : * An action group is a group of actions that are currently being
+<span class="lineNum"> 130 </span> : * performed. While an active group is active, certain routine
+<span class="lineNum"> 131 </span> : * clean-up actions that would normally be performed after every
+<span class="lineNum"> 132 </span> : * cache operation are delayed until the action group is
+<span class="lineNum"> 133 </span> : * completed. This is necessary primarily to avoid inefficiencies
+<span class="lineNum"> 134 </span> : * when modifying a large number of packages at once.
+<span class="lineNum"> 135 </span> : *
+<span class="lineNum"> 136 </span> : * This class represents an active action group. Creating an
+<span class="lineNum"> 137 </span> : * instance will create an action group; destroying one will
+<span class="lineNum"> 138 </span> : * destroy the corresponding action group.
+<span class="lineNum"> 139 </span> : *
+<span class="lineNum"> 140 </span> : * The following operations are suppressed by this class:
+<span class="lineNum"> 141 </span> : *
+<span class="lineNum"> 142 </span> : * - Keeping the Marked and Garbage flags up to date.
+<span class="lineNum"> 143 </span> : *
+<span class="lineNum"> 144 </span> : * \note This can be used in the future to easily accumulate
+<span class="lineNum"> 145 </span> : * atomic actions for undo or to display &quot;what apt did anyway&quot;;
+<span class="lineNum"> 146 </span> : * e.g., change the counter of how many action groups are active
+<span class="lineNum"> 147 </span> : * to a std::set of pointers to them and use those to store
+<span class="lineNum"> 148 </span> : * information about what happened in a group in the group.
+<span class="lineNum"> 149 </span> : */
+<span class="lineNum"> 150 </span> : class ActionGroup
+<span class="lineNum"> 151 </span> : {
+<span class="lineNum"> 152 </span> : pkgDepCache &amp;cache;
+<span class="lineNum"> 153 </span> :
+<span class="lineNum"> 154 </span> : bool released;
+<span class="lineNum"> 155 </span> :
+<span class="lineNum"> 156 </span> : /** Action groups are noncopyable. */
+<span class="lineNum"> 157 </span> : ActionGroup(const ActionGroup &amp;other);
+<span class="lineNum"> 158 </span> : public:
+<span class="lineNum"> 159 </span> : /** \brief Create a new ActionGroup.
+<span class="lineNum"> 160 </span> : *
+<span class="lineNum"> 161 </span> : * \param cache The cache that this ActionGroup should
+<span class="lineNum"> 162 </span> : * manipulate.
+<span class="lineNum"> 163 </span> : *
+<span class="lineNum"> 164 </span> : * As long as this object exists, no automatic cleanup
+<span class="lineNum"> 165 </span> : * operations will be undertaken.
+<span class="lineNum"> 166 </span> : */
+<span class="lineNum"> 167 </span> : ActionGroup(pkgDepCache &amp;cache);
+<span class="lineNum"> 168 </span> :
+<span class="lineNum"> 169 </span> : /** \brief Clean up the action group before it is destroyed.
+<span class="lineNum"> 170 </span> : *
+<span class="lineNum"> 171 </span> : * If it is destroyed later, no second cleanup wil be run.
+<span class="lineNum"> 172 </span> : */
+<span class="lineNum"> 173 </span> : void release();
+<span class="lineNum"> 174 </span> :
+<span class="lineNum"> 175 </span> : /** \brief Destroy the action group.
+<span class="lineNum"> 176 </span> : *
+<span class="lineNum"> 177 </span> : * If this is the last action group, the automatic cache
+<span class="lineNum"> 178 </span> : * cleanup operations will be undertaken.
+<span class="lineNum"> 179 </span> : */
+<span class="lineNum"> 180 </span> : ~ActionGroup();
+<span class="lineNum"> 181 </span> : };
+<span class="lineNum"> 182 </span> :
+<span class="lineNum"> 183 </span> : /** \brief Returns \b true for packages matching a regular
+<span class="lineNum"> 184 </span> : * expression in APT::NeverAutoRemove.
+<span class="lineNum"> 185 </span> : */
+<span class="lineNum"> 186 </span> : class DefaultRootSetFunc : public InRootSetFunc
+<span class="lineNum"> 187 </span> : {
+<span class="lineNum"> 188 </span> : std::vector&lt;regex_t *&gt; rootSetRegexp;
+<span class="lineNum"> 189 </span> : bool constructedSuccessfully;
+<span class="lineNum"> 190 </span> :
+<span class="lineNum"> 191 </span> : public:
+<span class="lineNum"> 192 </span> : DefaultRootSetFunc();
+<span class="lineNum"> 193 </span> : ~DefaultRootSetFunc();
+<span class="lineNum"> 194 </span> :
+<span class="lineNum"> 195 </span> : /** \return \b true if the class initialized successfully, \b
+<span class="lineNum"> 196 </span> : * false otherwise. Used to avoid throwing an exception, since
+<span class="lineNum"> 197 </span> : * APT classes generally don't.
+<span class="lineNum"> 198 </span> : */
+<span class="lineNum"> 199 </span> : bool wasConstructedSuccessfully() const { return constructedSuccessfully; }
+<span class="lineNum"> 200 </span> :
+<span class="lineNum"> 201 </span> : bool InRootSet(const pkgCache::PkgIterator &amp;pkg);
+<span class="lineNum"> 202 </span> : };
+<span class="lineNum"> 203 </span> :
+<span class="lineNum"> 204 </span> : struct StateCache
+<span class="lineNum"> 205 </span> : {
+<span class="lineNum"> 206 </span> : // Epoch stripped text versions of the two version fields
+<span class="lineNum"> 207 </span> : const char *CandVersion;
+<span class="lineNum"> 208 </span> : const char *CurVersion;
+<span class="lineNum"> 209 </span> :
+<span class="lineNum"> 210 </span> : // Pointer to the candidate install version.
+<span class="lineNum"> 211 </span> : Version *CandidateVer;
+<span class="lineNum"> 212 </span> :
+<span class="lineNum"> 213 </span> : // Pointer to the install version.
+<span class="lineNum"> 214 </span> : Version *InstallVer;
+<span class="lineNum"> 215 </span> :
+<span class="lineNum"> 216 </span> : // Copy of Package::Flags
+<span class="lineNum"> 217 </span> : unsigned short Flags;
+<span class="lineNum"> 218 </span> : unsigned short iFlags; // Internal flags
+<span class="lineNum"> 219 </span> :
+<span class="lineNum"> 220 </span> : /** \brief \b true if this package can be reached from the root set. */
+<span class="lineNum"> 221 </span> : bool Marked;
+<span class="lineNum"> 222 </span> :
+<span class="lineNum"> 223 </span> : /** \brief \b true if this package is unused and should be removed.
+<span class="lineNum"> 224 </span> : *
+<span class="lineNum"> 225 </span> : * This differs from !#Marked, because it is possible that some
+<span class="lineNum"> 226 </span> : * unreachable packages will be protected from becoming
+<span class="lineNum"> 227 </span> : * garbage.
+<span class="lineNum"> 228 </span> : */
+<span class="lineNum"> 229 </span> : bool Garbage;
+<span class="lineNum"> 230 </span> :
+<span class="lineNum"> 231 </span> : // Various tree indicators
+<span class="lineNum"> 232 </span> : signed char Status; // -1,0,1,2
+<span class="lineNum"> 233 </span> : unsigned char Mode; // ModeList
+<span class="lineNum"> 234 </span> : unsigned char DepState; // DepState Flags
+<span class="lineNum"> 235 </span> :
+<span class="lineNum"> 236 </span> : // Update of candidate version
+<span class="lineNum"> 237 </span> : const char *StripEpoch(const char *Ver);
+<span class="lineNum"> 238 </span> : void Update(PkgIterator Pkg,pkgCache &amp;Cache);
+<span class="lineNum"> 239 </span> :
+<span class="lineNum"> 240 </span> : // Various test members for the current status of the package
+<span class="lineNum"> 241 </span> : inline bool NewInstall() const {return Status == 2 &amp;&amp; Mode == ModeInstall;};
+<span class="lineNum"> 242 </span><span class="lineCov"> 3785 : inline bool Delete() const {return Mode == ModeDelete;};</span>
+<span class="lineNum"> 243 </span><span class="lineCov"> 3785 : inline bool Keep() const {return Mode == ModeKeep;};</span>
+<span class="lineNum"> 244 </span> : inline bool Upgrade() const {return Status &gt; 0 &amp;&amp; Mode == ModeInstall;};
+<span class="lineNum"> 245 </span> : inline bool Upgradable() const {return Status &gt;= 1;};
+<span class="lineNum"> 246 </span> : inline bool Downgrade() const {return Status &lt; 0 &amp;&amp; Mode == ModeInstall;};
+<span class="lineNum"> 247 </span> : inline bool Held() const {return Status != 0 &amp;&amp; Keep();};
+<span class="lineNum"> 248 </span><span class="lineCov"> 3785 : inline bool NowBroken() const {return (DepState &amp; DepNowMin) != DepNowMin;};</span>
+<span class="lineNum"> 249 </span> : inline bool NowPolicyBroken() const {return (DepState &amp; DepNowPolicy) != DepNowPolicy;};
+<span class="lineNum"> 250 </span><span class="lineCov"> 3785 : inline bool InstBroken() const {return (DepState &amp; DepInstMin) != DepInstMin;};</span>
+<span class="lineNum"> 251 </span> : inline bool InstPolicyBroken() const {return (DepState &amp; DepInstPolicy) != DepInstPolicy;};
+<span class="lineNum"> 252 </span><span class="lineCov"> 3785 : inline bool Install() const {return Mode == ModeInstall;};</span>
+<span class="lineNum"> 253 </span> : inline VerIterator InstVerIter(pkgCache &amp;Cache)
+<span class="lineNum"> 254 </span> : {return VerIterator(Cache,InstallVer);};
+<span class="lineNum"> 255 </span> : inline VerIterator CandidateVerIter(pkgCache &amp;Cache)
+<span class="lineNum"> 256 </span> : {return VerIterator(Cache,CandidateVer);};
+<span class="lineNum"> 257 </span> : };
+<span class="lineNum"> 258 </span> :
+<span class="lineNum"> 259 </span> : // Helper functions
+<span class="lineNum"> 260 </span> : void BuildGroupOrs(VerIterator const &amp;V);
+<span class="lineNum"> 261 </span> : void UpdateVerState(PkgIterator Pkg);
+<span class="lineNum"> 262 </span> :
+<span class="lineNum"> 263 </span> : // User Policy control
+<span class="lineNum"> 264 </span> : class Policy
+<span class="lineNum"> 265 </span> : {
+<span class="lineNum"> 266 </span> : public:
+<span class="lineNum"> 267 </span> :
+<span class="lineNum"> 268 </span> : virtual VerIterator GetCandidateVer(PkgIterator Pkg);
+<span class="lineNum"> 269 </span> : virtual bool IsImportantDep(DepIterator Dep);
+<span class="lineNum"> 270 </span> :
+<span class="lineNum"> 271 </span> : virtual ~Policy() {};
+<span class="lineNum"> 272 </span> : };
+<span class="lineNum"> 273 </span> :
+<span class="lineNum"> 274 </span> : private:
+<span class="lineNum"> 275 </span> : /** The number of open &quot;action groups&quot;; certain post-action
+<span class="lineNum"> 276 </span> : * operations are suppressed if this number is &gt; 0.
+<span class="lineNum"> 277 </span> : */
+<span class="lineNum"> 278 </span> : int group_level;
+<span class="lineNum"> 279 </span> :
+<span class="lineNum"> 280 </span> : friend class ActionGroup;
+<span class="lineNum"> 281 </span> :
+<span class="lineNum"> 282 </span> : protected:
+<span class="lineNum"> 283 </span> :
+<span class="lineNum"> 284 </span> : // State information
+<span class="lineNum"> 285 </span> : pkgCache *Cache;
+<span class="lineNum"> 286 </span> : StateCache *PkgState;
+<span class="lineNum"> 287 </span> : unsigned char *DepState;
+<span class="lineNum"> 288 </span> :
+<span class="lineNum"> 289 </span> : double iUsrSize;
+<span class="lineNum"> 290 </span> : double iDownloadSize;
+<span class="lineNum"> 291 </span> : unsigned long iInstCount;
+<span class="lineNum"> 292 </span> : unsigned long iDelCount;
+<span class="lineNum"> 293 </span> : unsigned long iKeepCount;
+<span class="lineNum"> 294 </span> : unsigned long iBrokenCount;
+<span class="lineNum"> 295 </span> : unsigned long iPolicyBrokenCount;
+<span class="lineNum"> 296 </span> : unsigned long iBadCount;
+<span class="lineNum"> 297 </span> :
+<span class="lineNum"> 298 </span> : Policy *delLocalPolicy; // For memory clean up..
+<span class="lineNum"> 299 </span> : Policy *LocalPolicy;
+<span class="lineNum"> 300 </span> :
+<span class="lineNum"> 301 </span> : // Check for a matching provides
+<span class="lineNum"> 302 </span> : bool CheckDep(DepIterator Dep,int Type,PkgIterator &amp;Res);
+<span class="lineNum"> 303 </span> : inline bool CheckDep(DepIterator Dep,int Type)
+<span class="lineNum"> 304 </span> : {
+<span class="lineNum"> 305 </span> : PkgIterator Res(*this,0);
+<span class="lineNum"> 306 </span> : return CheckDep(Dep,Type,Res);
+<span class="lineNum"> 307 </span> : }
+<span class="lineNum"> 308 </span> :
+<span class="lineNum"> 309 </span> : // Computes state information for deps and versions (w/o storing)
+<span class="lineNum"> 310 </span> : unsigned char DependencyState(DepIterator &amp;D);
+<span class="lineNum"> 311 </span> : unsigned char VersionState(DepIterator D,unsigned char Check,
+<span class="lineNum"> 312 </span> : unsigned char SetMin,
+<span class="lineNum"> 313 </span> : unsigned char SetPolicy);
+<span class="lineNum"> 314 </span> :
+<span class="lineNum"> 315 </span> : // Recalculates various portions of the cache, call after changing something
+<span class="lineNum"> 316 </span> : void Update(DepIterator Dep); // Mostly internal
+<span class="lineNum"> 317 </span> : void Update(PkgIterator const &amp;P);
+<span class="lineNum"> 318 </span> :
+<span class="lineNum"> 319 </span> : // Count manipulators
+<span class="lineNum"> 320 </span> : void AddSizes(const PkgIterator &amp;Pkg,signed long Mult = 1);
+<span class="lineNum"> 321 </span> : inline void RemoveSizes(const PkgIterator &amp;Pkg) {AddSizes(Pkg,-1);};
+<span class="lineNum"> 322 </span> : void AddStates(const PkgIterator &amp;Pkg,int Add = 1);
+<span class="lineNum"> 323 </span> : inline void RemoveStates(const PkgIterator &amp;Pkg) {AddStates(Pkg,-1);};
+<span class="lineNum"> 324 </span> :
+<span class="lineNum"> 325 </span> : public:
+<span class="lineNum"> 326 </span> :
+<span class="lineNum"> 327 </span> : // Legacy.. We look like a pkgCache
+<span class="lineNum"> 328 </span> : inline operator pkgCache &amp;() {return *Cache;};
+<span class="lineNum"> 329 </span> : inline Header &amp;Head() {return *Cache-&gt;HeaderP;};
+<span class="lineNum"> 330 </span> : inline PkgIterator PkgBegin() {return Cache-&gt;PkgBegin();};
+<span class="lineNum"> 331 </span> : inline PkgIterator FindPkg(string const &amp;Name) {return Cache-&gt;FindPkg(Name);};
+<span class="lineNum"> 332 </span> :
+<span class="lineNum"> 333 </span> : inline pkgCache &amp;GetCache() {return *Cache;};
+<span class="lineNum"> 334 </span> : inline pkgVersioningSystem &amp;VS() {return *Cache-&gt;VS;};
+<span class="lineNum"> 335 </span> :
+<span class="lineNum"> 336 </span> : // Policy implementation
+<span class="lineNum"> 337 </span> : inline VerIterator GetCandidateVer(PkgIterator Pkg) {return LocalPolicy-&gt;GetCandidateVer(Pkg);};
+<span class="lineNum"> 338 </span> : inline bool IsImportantDep(DepIterator Dep) {return LocalPolicy-&gt;IsImportantDep(Dep);};
+<span class="lineNum"> 339 </span> : inline Policy &amp;GetPolicy() {return *LocalPolicy;};
+<span class="lineNum"> 340 </span> :
+<span class="lineNum"> 341 </span> : // Accessors
+<span class="lineNum"> 342 </span><span class="lineCov"> 3787 : inline StateCache &amp;operator [](PkgIterator const &amp;I) {return PkgState[I-&gt;ID];};</span>
+<span class="lineNum"> 343 </span> : inline unsigned char &amp;operator [](DepIterator const &amp;I) {return DepState[I-&gt;ID];};
+<span class="lineNum"> 344 </span> :
+<span class="lineNum"> 345 </span> : /** \return A function identifying packages in the root set other
+<span class="lineNum"> 346 </span> : * than manually installed packages and essential packages, or \b
+<span class="lineNum"> 347 </span> : * NULL if an error occurs.
+<span class="lineNum"> 348 </span> : *
+<span class="lineNum"> 349 </span> : * \todo Is this the best place for this function? Perhaps the
+<span class="lineNum"> 350 </span> : * settings for mark-and-sweep should be stored in a single
+<span class="lineNum"> 351 </span> : * external class?
+<span class="lineNum"> 352 </span> : */
+<span class="lineNum"> 353 </span> : virtual InRootSetFunc *GetRootSetFunc();
+<span class="lineNum"> 354 </span> :
+<span class="lineNum"> 355 </span> : /** \return \b true if the garbage collector should follow recommendations.
+<span class="lineNum"> 356 </span> : */
+<span class="lineNum"> 357 </span> : virtual bool MarkFollowsRecommends();
+<span class="lineNum"> 358 </span> :
+<span class="lineNum"> 359 </span> : /** \return \b true if the garbage collector should follow suggestions.
+<span class="lineNum"> 360 </span> : */
+<span class="lineNum"> 361 </span> : virtual bool MarkFollowsSuggests();
+<span class="lineNum"> 362 </span> :
+<span class="lineNum"> 363 </span> : /** \brief Update the Marked and Garbage fields of all packages.
+<span class="lineNum"> 364 </span> : *
+<span class="lineNum"> 365 </span> : * This routine is implicitly invoked after all state manipulators
+<span class="lineNum"> 366 </span> : * and when an ActionGroup is destroyed. It invokes #MarkRequired
+<span class="lineNum"> 367 </span> : * and #Sweep to do its dirty work.
+<span class="lineNum"> 368 </span> : *
+<span class="lineNum"> 369 </span> : * \param rootFunc A predicate that returns \b true for packages
+<span class="lineNum"> 370 </span> : * that should be added to the root set.
+<span class="lineNum"> 371 </span> : */
+<span class="lineNum"> 372 </span> : bool MarkAndSweep(InRootSetFunc &amp;rootFunc)
+<span class="lineNum"> 373 </span> : {
+<span class="lineNum"> 374 </span> : return MarkRequired(rootFunc) &amp;&amp; Sweep();
+<span class="lineNum"> 375 </span> : }
+<span class="lineNum"> 376 </span> :
+<span class="lineNum"> 377 </span> : bool MarkAndSweep()
+<span class="lineNum"> 378 </span> : {
+<span class="lineNum"> 379 </span> : std::auto_ptr&lt;InRootSetFunc&gt; f(GetRootSetFunc());
+<span class="lineNum"> 380 </span> : if(f.get() != NULL)
+<span class="lineNum"> 381 </span> : return MarkAndSweep(*f.get());
+<span class="lineNum"> 382 </span> : else
+<span class="lineNum"> 383 </span> : return false;
+<span class="lineNum"> 384 </span> : }
+<span class="lineNum"> 385 </span> :
+<span class="lineNum"> 386 </span> : /** \name State Manipulators
+<span class="lineNum"> 387 </span> : */
+<span class="lineNum"> 388 </span> : // @{
+<span class="lineNum"> 389 </span> : void MarkKeep(PkgIterator const &amp;Pkg, bool Soft = false,
+<span class="lineNum"> 390 </span> : bool FromUser = true);
+<span class="lineNum"> 391 </span> : void MarkDelete(PkgIterator const &amp;Pkg,bool Purge = false);
+<span class="lineNum"> 392 </span> : void MarkInstall(PkgIterator const &amp;Pkg,bool AutoInst = true,
+<span class="lineNum"> 393 </span> : unsigned long Depth = 0, bool FromUser = true,
+<span class="lineNum"> 394 </span> : bool ForceImportantDeps = false);
+<span class="lineNum"> 395 </span> : void SetReInstall(PkgIterator const &amp;Pkg,bool To);
+<span class="lineNum"> 396 </span> : void SetCandidateVersion(VerIterator TargetVer);
+<span class="lineNum"> 397 </span> :
+<span class="lineNum"> 398 </span> : /** Set the &quot;is automatically installed&quot; flag of Pkg. */
+<span class="lineNum"> 399 </span> : void MarkAuto(const PkgIterator &amp;Pkg, bool Auto);
+<span class="lineNum"> 400 </span> : // @}
+<span class="lineNum"> 401 </span> :
+<span class="lineNum"> 402 </span> : // This is for debuging
+<span class="lineNum"> 403 </span> : void Update(OpProgress *Prog = 0);
+<span class="lineNum"> 404 </span> :
+<span class="lineNum"> 405 </span> : // read persistent states
+<span class="lineNum"> 406 </span> : bool readStateFile(OpProgress *prog);
+<span class="lineNum"> 407 </span> : bool writeStateFile(OpProgress *prog, bool InstalledOnly=false);
+<span class="lineNum"> 408 </span> :
+<span class="lineNum"> 409 </span> : // Size queries
+<span class="lineNum"> 410 </span> : inline double UsrSize() {return iUsrSize;};
+<span class="lineNum"> 411 </span> : inline double DebSize() {return iDownloadSize;};
+<span class="lineNum"> 412 </span> : inline unsigned long DelCount() {return iDelCount;};
+<span class="lineNum"> 413 </span> : inline unsigned long KeepCount() {return iKeepCount;};
+<span class="lineNum"> 414 </span> : inline unsigned long InstCount() {return iInstCount;};
+<span class="lineNum"> 415 </span> : inline unsigned long BrokenCount() {return iBrokenCount;};
+<span class="lineNum"> 416 </span> : inline unsigned long PolicyBrokenCount() {return iPolicyBrokenCount;};
+<span class="lineNum"> 417 </span> : inline unsigned long BadCount() {return iBadCount;};
+<span class="lineNum"> 418 </span> :
+<span class="lineNum"> 419 </span> : bool Init(OpProgress *Prog);
+<span class="lineNum"> 420 </span> :
+<span class="lineNum"> 421 </span> : pkgDepCache(pkgCache *Cache,Policy *Plcy = 0);
+<span class="lineNum"> 422 </span> : virtual ~pkgDepCache();
+<span class="lineNum"> 423 </span> : };
+<span class="lineNum"> 424 </span> :
+<span class="lineNum"> 425 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/apt-pkg/error.h.gcov.html b/rep/usr/include/apt-pkg/error.h.gcov.html
new file mode 100644
index 0000000..b4b55f3
--- /dev/null
+++ b/rep/usr/include/apt-pkg/error.h.gcov.html
@@ -0,0 +1,168 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/apt-pkg/error.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">usr/include/apt-pkg</a> - error.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">50.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: cpp; mode: fold -*-
+<span class="lineNum"> 2 </span> : // Description /*{{{*/
+<span class="lineNum"> 3 </span> : // $Id: error.h,v 1.8 2001/05/07 05:06:52 jgg Exp $
+<span class="lineNum"> 4 </span> : /* ######################################################################
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : Global Erorr Class - Global error mechanism
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : This class has a single global instance. When a function needs to
+<span class="lineNum"> 9 </span> : generate an error condition, such as a read error, it calls a member
+<span class="lineNum"> 10 </span> : in this class to add the error to a stack of errors.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : By using a stack the problem with a scheme like errno is removed and
+<span class="lineNum"> 13 </span> : it allows a very detailed account of what went wrong to be transmitted
+<span class="lineNum"> 14 </span> : to the UI for display. (Errno has problems because each function sets
+<span class="lineNum"> 15 </span> : errno to 0 if it didn't have an error thus eraseing erno in the process
+<span class="lineNum"> 16 </span> : of cleanup)
+<span class="lineNum"> 17 </span> :
+<span class="lineNum"> 18 </span> : Several predefined error generators are provided to handle common
+<span class="lineNum"> 19 </span> : things like errno. The general idea is that all methods return a bool.
+<span class="lineNum"> 20 </span> : If the bool is true then things are OK, if it is false then things
+<span class="lineNum"> 21 </span> : should start being undone and the stack should unwind under program
+<span class="lineNum"> 22 </span> : control.
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : A Warning should not force the return of false. Things did not fail, but
+<span class="lineNum"> 25 </span> : they might have had unexpected problems. Errors are stored in a FIFO
+<span class="lineNum"> 26 </span> : so Pop will return the first item..
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : I have some thoughts about extending this into a more general UI&lt;-&gt;
+<span class="lineNum"> 29 </span> : Engine interface, ie allowing the Engine to say 'The disk is full' in
+<span class="lineNum"> 30 </span> : a dialog that says 'Panic' and 'Retry'.. The error generator functions
+<span class="lineNum"> 31 </span> : like errno, Warning and Error return false always so this is normal:
+<span class="lineNum"> 32 </span> : if (open(..))
+<span class="lineNum"> 33 </span> : return _error-&gt;Errno(..);
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : This source is placed in the Public Domain, do with it what you will
+<span class="lineNum"> 36 </span> : It was originally written by Jason Gunthorpe.
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : ##################################################################### */
+<span class="lineNum"> 39 </span> : /*}}}*/
+<span class="lineNum"> 40 </span> : #ifndef PKGLIB_ERROR_H
+<span class="lineNum"> 41 </span> : #define PKGLIB_ERROR_H
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : #ifdef __GNUG__
+<span class="lineNum"> 46 </span> : // Methods have a hidden this parameter that is visible to this attribute
+<span class="lineNum"> 47 </span> : #define APT_MFORMAT1 __attribute__ ((format (printf, 2, 3)))
+<span class="lineNum"> 48 </span> : #define APT_MFORMAT2 __attribute__ ((format (printf, 3, 4)))
+<span class="lineNum"> 49 </span> : #else
+<span class="lineNum"> 50 </span> : #define APT_MFORMAT1
+<span class="lineNum"> 51 </span> : #define APT_MFORMAT2
+<span class="lineNum"> 52 </span> : #endif
+<span class="lineNum"> 53 </span> :
+<span class="lineNum"> 54 </span> : #include &lt;string&gt;
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span> : using std::string;
+<span class="lineNum"> 57 </span> :
+<span class="lineNum"> 58 </span> : class GlobalError
+<span class="lineNum"> 59 </span> : {
+<span class="lineNum"> 60 </span> : struct Item
+<span class="lineNum"> 61 </span> : {
+<span class="lineNum"> 62 </span> : string Text;
+<span class="lineNum"> 63 </span> : bool Error;
+<span class="lineNum"> 64 </span> : Item *Next;
+<span class="lineNum"> 65 </span> : };
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : Item *List;
+<span class="lineNum"> 68 </span> : bool PendingFlag;
+<span class="lineNum"> 69 </span> : void Insert(Item *I);
+<span class="lineNum"> 70 </span> :
+<span class="lineNum"> 71 </span> : public:
+<span class="lineNum"> 72 </span> :
+<span class="lineNum"> 73 </span> : // Call to generate an error from a library call.
+<span class="lineNum"> 74 </span> : bool Errno(const char *Function,const char *Description,...) APT_MFORMAT2;
+<span class="lineNum"> 75 </span> : bool WarningE(const char *Function,const char *Description,...) APT_MFORMAT2;
+<span class="lineNum"> 76 </span> :
+<span class="lineNum"> 77 </span> : /* A warning should be considered less severe than an error, and may be
+<span class="lineNum"> 78 </span> : ignored by the client. */
+<span class="lineNum"> 79 </span> : bool Error(const char *Description,...) APT_MFORMAT1;
+<span class="lineNum"> 80 </span> : bool Warning(const char *Description,...) APT_MFORMAT1;
+<span class="lineNum"> 81 </span> :
+<span class="lineNum"> 82 </span> : // Simple accessors
+<span class="lineNum"> 83 </span><span class="lineCov"> 3 : inline bool PendingError() {return PendingFlag;};</span>
+<span class="lineNum"> 84 </span><span class="lineNoCov"> 0 : inline bool empty() {return List == 0;};</span>
+<span class="lineNum"> 85 </span> : bool PopMessage(string &amp;Text);
+<span class="lineNum"> 86 </span> : void Discard();
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span> : // Usefull routine to dump to cerr
+<span class="lineNum"> 89 </span> : void DumpErrors();
+<span class="lineNum"> 90 </span> :
+<span class="lineNum"> 91 </span> : GlobalError();
+<span class="lineNum"> 92 </span> : };
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span> : // The 'extra-ansi' syntax is used to help with collisions.
+<span class="lineNum"> 95 </span> : GlobalError *_GetErrorObj();
+<span class="lineNum"> 96 </span> : #define _error _GetErrorObj()
+<span class="lineNum"> 97 </span> :
+<span class="lineNum"> 98 </span> : #undef APT_MFORMAT1
+<span class="lineNum"> 99 </span> : #undef APT_MFORMAT2
+<span class="lineNum"> 100 </span> :
+<span class="lineNum"> 101 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/apt-pkg/fileutl.h.gcov.html b/rep/usr/include/apt-pkg/fileutl.h.gcov.html
new file mode 100644
index 0000000..9726c50
--- /dev/null
+++ b/rep/usr/include/apt-pkg/fileutl.h.gcov.html
@@ -0,0 +1,165 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/apt-pkg/fileutl.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">usr/include/apt-pkg</a> - fileutl.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">6</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">6</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: cpp; mode: fold -*-
+<span class="lineNum"> 2 </span> : // Description /*{{{*/
+<span class="lineNum"> 3 </span> : // $Id: fileutl.h,v 1.26 2001/05/07 05:06:52 jgg Exp $
+<span class="lineNum"> 4 </span> : /* ######################################################################
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : File Utilities
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : CopyFile - Buffered copy of a single file
+<span class="lineNum"> 9 </span> : GetLock - dpkg compatible lock file manipulation (fcntl)
+<span class="lineNum"> 10 </span> : FileExists - Returns true if the file exists
+<span class="lineNum"> 11 </span> : SafeGetCWD - Returns the CWD in a string with overrun protection
+<span class="lineNum"> 12 </span> :
+<span class="lineNum"> 13 </span> : The file class is a handy abstraction for various functions+classes
+<span class="lineNum"> 14 </span> : that need to accept filenames.
+<span class="lineNum"> 15 </span> :
+<span class="lineNum"> 16 </span> : This source is placed in the Public Domain, do with it what you will
+<span class="lineNum"> 17 </span> : It was originally written by Jason Gunthorpe.
+<span class="lineNum"> 18 </span> :
+<span class="lineNum"> 19 </span> : ##################################################################### */
+<span class="lineNum"> 20 </span> : /*}}}*/
+<span class="lineNum"> 21 </span> : #ifndef PKGLIB_FILEUTL_H
+<span class="lineNum"> 22 </span> : #define PKGLIB_FILEUTL_H
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> :
+<span class="lineNum"> 25 </span> : #include &lt;string&gt;
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : using std::string;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : class FileFd
+<span class="lineNum"> 30 </span> : {
+<span class="lineNum"> 31 </span> : protected:
+<span class="lineNum"> 32 </span> : int iFd;
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span> : enum LocalFlags {AutoClose = (1&lt;&lt;0),Fail = (1&lt;&lt;1),DelOnFail = (1&lt;&lt;2),
+<span class="lineNum"> 35 </span> : HitEof = (1&lt;&lt;3)};
+<span class="lineNum"> 36 </span> : unsigned long Flags;
+<span class="lineNum"> 37 </span> : string FileName;
+<span class="lineNum"> 38 </span> :
+<span class="lineNum"> 39 </span> : public:
+<span class="lineNum"> 40 </span> : enum OpenMode {ReadOnly,WriteEmpty,WriteExists,WriteAny,WriteTemp};
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span> : inline bool Read(void *To,unsigned long Size,bool AllowEof)
+<span class="lineNum"> 43 </span> : {
+<span class="lineNum"> 44 </span> : unsigned long Jnk;
+<span class="lineNum"> 45 </span> : if (AllowEof)
+<span class="lineNum"> 46 </span> : return Read(To,Size,&amp;Jnk);
+<span class="lineNum"> 47 </span> : return Read(To,Size);
+<span class="lineNum"> 48 </span> : }
+<span class="lineNum"> 49 </span> : bool Read(void *To,unsigned long Size,unsigned long *Actual = 0);
+<span class="lineNum"> 50 </span> : bool Write(const void *From,unsigned long Size);
+<span class="lineNum"> 51 </span> : bool Seek(unsigned long To);
+<span class="lineNum"> 52 </span> : bool Skip(unsigned long To);
+<span class="lineNum"> 53 </span> : bool Truncate(unsigned long To);
+<span class="lineNum"> 54 </span> : unsigned long Tell();
+<span class="lineNum"> 55 </span> : unsigned long Size();
+<span class="lineNum"> 56 </span> : bool Open(string FileName,OpenMode Mode,unsigned long Perms = 0666);
+<span class="lineNum"> 57 </span> : bool Close();
+<span class="lineNum"> 58 </span> : bool Sync();
+<span class="lineNum"> 59 </span> :
+<span class="lineNum"> 60 </span> : // Simple manipulators
+<span class="lineNum"> 61 </span> : inline int Fd() {return iFd;};
+<span class="lineNum"> 62 </span> : inline void Fd(int fd) {iFd = fd;};
+<span class="lineNum"> 63 </span><span class="lineCov"> 32 : inline bool IsOpen() {return iFd &gt;= 0;};</span>
+<span class="lineNum"> 64 </span> : inline bool Failed() {return (Flags &amp; Fail) == Fail;};
+<span class="lineNum"> 65 </span> : inline void EraseOnFailure() {Flags |= DelOnFail;};
+<span class="lineNum"> 66 </span> : inline void OpFail() {Flags |= Fail;};
+<span class="lineNum"> 67 </span> : inline bool Eof() {return (Flags &amp; HitEof) == HitEof;};
+<span class="lineNum"> 68 </span> : inline string &amp;Name() {return FileName;};
+<span class="lineNum"> 69 </span> :
+<span class="lineNum"> 70 </span><span class="lineCov"> 53 : FileFd(string FileName,OpenMode Mode,unsigned long Perms = 0666) : iFd(-1), </span>
+<span class="lineNum"> 71 </span><span class="lineCov"> 53 : Flags(0) </span>
+<span class="lineNum"> 72 </span> : {
+<span class="lineNum"> 73 </span><span class="lineCov"> 53 : Open(FileName,Mode,Perms);</span>
+<span class="lineNum"> 74 </span><span class="lineCov"> 53 : };</span>
+<span class="lineNum"> 75 </span><span class="lineCov"> 15 : FileFd(int Fd = -1) : iFd(Fd), Flags(AutoClose) {};</span>
+<span class="lineNum"> 76 </span> : FileFd(int Fd,bool) : iFd(Fd), Flags(0) {};
+<span class="lineNum"> 77 </span> : virtual ~FileFd();
+<span class="lineNum"> 78 </span> : };
+<span class="lineNum"> 79 </span> :
+<span class="lineNum"> 80 </span> : bool RunScripts(const char *Cnf);
+<span class="lineNum"> 81 </span> : bool CopyFile(FileFd &amp;From,FileFd &amp;To);
+<span class="lineNum"> 82 </span> : int GetLock(string File,bool Errors = true);
+<span class="lineNum"> 83 </span> : bool FileExists(string File);
+<span class="lineNum"> 84 </span> : string SafeGetCWD();
+<span class="lineNum"> 85 </span> : void SetCloseExec(int Fd,bool Close);
+<span class="lineNum"> 86 </span> : void SetNonBlock(int Fd,bool Block);
+<span class="lineNum"> 87 </span> : bool WaitFd(int Fd,bool write = false,unsigned long timeout = 0);
+<span class="lineNum"> 88 </span> : pid_t ExecFork();
+<span class="lineNum"> 89 </span> : bool ExecWait(pid_t Pid,const char *Name,bool Reap = false);
+<span class="lineNum"> 90 </span> :
+<span class="lineNum"> 91 </span> : // File string manipulators
+<span class="lineNum"> 92 </span> : string flNotDir(string File);
+<span class="lineNum"> 93 </span> : string flNotFile(string File);
+<span class="lineNum"> 94 </span> : string flNoLink(string File);
+<span class="lineNum"> 95 </span> : string flExtension(string File);
+<span class="lineNum"> 96 </span> : string flCombine(string Dir,string File);
+<span class="lineNum"> 97 </span> :
+<span class="lineNum"> 98 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/apt-pkg/index.html b/rep/usr/include/apt-pkg/index.html
new file mode 100644
index 0000000..659d250
--- /dev/null
+++ b/rep/usr/include/apt-pkg/index.html
@@ -0,0 +1,164 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/apt-pkg</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - /usr/include/apt-pkg</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">80</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">86.2 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">69</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="acquire.h.gcov.html">acquire.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../snow.png" width=100 height=10 alt="0.0%"></td></tr></table>
+ </td>
+ <td class="coverPerLo">0.0&nbsp;%</td>
+ <td class="coverNumLo">0&nbsp;/&nbsp;5&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="algorithms.h.gcov.html">algorithms.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=67 height=10 alt="66.7%"><img src="../../../snow.png" width=33 height=10 alt="66.7%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">66.7&nbsp;%</td>
+ <td class="coverNumHi">2&nbsp;/&nbsp;3&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="cachefile.h.gcov.html">cachefile.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">1&nbsp;/&nbsp;1&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="cacheiterators.h.gcov.html">cacheiterators.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=92 height=10 alt="92.2%"><img src="../../../snow.png" width=8 height=10 alt="92.2%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">92.2&nbsp;%</td>
+ <td class="coverNumHi">47&nbsp;/&nbsp;51&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="depcache.h.gcov.html">depcache.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">6&nbsp;/&nbsp;6&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="error.h.gcov.html">error.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=50 height=10 alt="50.0%"><img src="../../../snow.png" width=50 height=10 alt="50.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">50.0&nbsp;%</td>
+ <td class="coverNumHi">1&nbsp;/&nbsp;2&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="fileutl.h.gcov.html">fileutl.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">6&nbsp;/&nbsp;6&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="pkgcache.h.gcov.html">pkgcache.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">2&nbsp;/&nbsp;2&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="progress.h.gcov.html">progress.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">3&nbsp;/&nbsp;3&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="version.h.gcov.html">version.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">1&nbsp;/&nbsp;1&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/apt-pkg/pkgcache.h.gcov.html b/rep/usr/include/apt-pkg/pkgcache.h.gcov.html
new file mode 100644
index 0000000..aeda4f5
--- /dev/null
+++ b/rep/usr/include/apt-pkg/pkgcache.h.gcov.html
@@ -0,0 +1,422 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/apt-pkg/pkgcache.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">usr/include/apt-pkg</a> - pkgcache.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: cpp; mode: fold -*-
+<span class="lineNum"> 2 </span> : // Description /*{{{*/
+<span class="lineNum"> 3 </span> : // $Id: pkgcache.h,v 1.25 2001/07/01 22:28:24 jgg Exp $
+<span class="lineNum"> 4 </span> : /* ######################################################################
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : Cache - Structure definitions for the cache file
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : Please see doc/apt-pkg/cache.sgml for a more detailed description of
+<span class="lineNum"> 9 </span> : this format. Also be sure to keep that file up-to-date!!
+<span class="lineNum"> 10 </span> :
+<span class="lineNum"> 11 </span> : Clients should always use the CacheIterators classes for access to the
+<span class="lineNum"> 12 </span> : cache. They provide a simple STL-like method for traversing the links
+<span class="lineNum"> 13 </span> : of the datastructure.
+<span class="lineNum"> 14 </span> :
+<span class="lineNum"> 15 </span> : See pkgcachegen.h for information about generating cache structures.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : ##################################################################### */
+<span class="lineNum"> 18 </span> : /*}}}*/
+<span class="lineNum"> 19 </span> : #ifndef PKGLIB_PKGCACHE_H
+<span class="lineNum"> 20 </span> : #define PKGLIB_PKGCACHE_H
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : #include &lt;string&gt;
+<span class="lineNum"> 24 </span> : #include &lt;time.h&gt;
+<span class="lineNum"> 25 </span> : #include &lt;apt-pkg/mmap.h&gt;
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : using std::string;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : class pkgVersioningSystem;
+<span class="lineNum"> 30 </span> : class pkgCache
+<span class="lineNum"> 31 </span> : {
+<span class="lineNum"> 32 </span> : public:
+<span class="lineNum"> 33 </span> : // Cache element predeclarations
+<span class="lineNum"> 34 </span> : struct Header;
+<span class="lineNum"> 35 </span> : struct Package;
+<span class="lineNum"> 36 </span> : struct PackageFile;
+<span class="lineNum"> 37 </span> : struct Version;
+<span class="lineNum"> 38 </span> : struct Description;
+<span class="lineNum"> 39 </span> : struct Provides;
+<span class="lineNum"> 40 </span> : struct Dependency;
+<span class="lineNum"> 41 </span> : struct StringItem;
+<span class="lineNum"> 42 </span> : struct VerFile;
+<span class="lineNum"> 43 </span> : struct DescFile;
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : // Iterators
+<span class="lineNum"> 46 </span> : class PkgIterator;
+<span class="lineNum"> 47 </span> : class VerIterator;
+<span class="lineNum"> 48 </span> : class DescIterator;
+<span class="lineNum"> 49 </span> : class DepIterator;
+<span class="lineNum"> 50 </span> : class PrvIterator;
+<span class="lineNum"> 51 </span> : class PkgFileIterator;
+<span class="lineNum"> 52 </span> : class VerFileIterator;
+<span class="lineNum"> 53 </span> : class DescFileIterator;
+<span class="lineNum"> 54 </span> : friend class PkgIterator;
+<span class="lineNum"> 55 </span> : friend class VerIterator;
+<span class="lineNum"> 56 </span> : friend class DescInterator;
+<span class="lineNum"> 57 </span> : friend class DepIterator;
+<span class="lineNum"> 58 </span> : friend class PrvIterator;
+<span class="lineNum"> 59 </span> : friend class PkgFileIterator;
+<span class="lineNum"> 60 </span> : friend class VerFileIterator;
+<span class="lineNum"> 61 </span> : friend class DescFileIterator;
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span> : class Namespace;
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : // These are all the constants used in the cache structures
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : // WARNING - if you change these lists you must also edit
+<span class="lineNum"> 68 </span> : // the stringification in pkgcache.cc and also consider whether
+<span class="lineNum"> 69 </span> : // the cache file will become incompatible.
+<span class="lineNum"> 70 </span> : struct Dep
+<span class="lineNum"> 71 </span> : {
+<span class="lineNum"> 72 </span> : enum DepType {Depends=1,PreDepends=2,Suggests=3,Recommends=4,
+<span class="lineNum"> 73 </span> : Conflicts=5,Replaces=6,Obsoletes=7,DpkgBreaks=8};
+<span class="lineNum"> 74 </span> : enum DepCompareOp {Or=0x10,NoOp=0,LessEq=0x1,GreaterEq=0x2,Less=0x3,
+<span class="lineNum"> 75 </span> : Greater=0x4,Equals=0x5,NotEquals=0x6};
+<span class="lineNum"> 76 </span> : };
+<span class="lineNum"> 77 </span> :
+<span class="lineNum"> 78 </span> : struct State
+<span class="lineNum"> 79 </span> : {
+<span class="lineNum"> 80 </span> : enum VerPriority {Important=1,Required=2,Standard=3,Optional=4,Extra=5};
+<span class="lineNum"> 81 </span> : enum PkgSelectedState {Unknown=0,Install=1,Hold=2,DeInstall=3,Purge=4};
+<span class="lineNum"> 82 </span> : enum PkgInstState {Ok=0,ReInstReq=1,HoldInst=2,HoldReInstReq=3};
+<span class="lineNum"> 83 </span> : enum PkgCurrentState {NotInstalled=0,UnPacked=1,HalfConfigured=2,
+<span class="lineNum"> 84 </span> : HalfInstalled=4,ConfigFiles=5,Installed=6,
+<span class="lineNum"> 85 </span> : TriggersAwaited=7,TriggersPending=8};
+<span class="lineNum"> 86 </span> : };
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span> : struct Flag
+<span class="lineNum"> 89 </span> : {
+<span class="lineNum"> 90 </span> : enum PkgFlags {Auto=(1&lt;&lt;0),Essential=(1&lt;&lt;3),Important=(1&lt;&lt;4)};
+<span class="lineNum"> 91 </span> : enum PkgFFlags {NotSource=(1&lt;&lt;0),NotAutomatic=(1&lt;&lt;1)};
+<span class="lineNum"> 92 </span> : };
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span> : protected:
+<span class="lineNum"> 95 </span> :
+<span class="lineNum"> 96 </span> : // Memory mapped cache file
+<span class="lineNum"> 97 </span> : string CacheFile;
+<span class="lineNum"> 98 </span> : MMap &amp;Map;
+<span class="lineNum"> 99 </span> :
+<span class="lineNum"> 100 </span> : unsigned long sHash(const string &amp;S) const;
+<span class="lineNum"> 101 </span> : unsigned long sHash(const char *S) const;
+<span class="lineNum"> 102 </span> :
+<span class="lineNum"> 103 </span> : public:
+<span class="lineNum"> 104 </span> :
+<span class="lineNum"> 105 </span> : // Pointers to the arrays of items
+<span class="lineNum"> 106 </span> : Header *HeaderP;
+<span class="lineNum"> 107 </span> : Package *PkgP;
+<span class="lineNum"> 108 </span> : VerFile *VerFileP;
+<span class="lineNum"> 109 </span> : DescFile *DescFileP;
+<span class="lineNum"> 110 </span> : PackageFile *PkgFileP;
+<span class="lineNum"> 111 </span> : Version *VerP;
+<span class="lineNum"> 112 </span> : Description *DescP;
+<span class="lineNum"> 113 </span> : Provides *ProvideP;
+<span class="lineNum"> 114 </span> : Dependency *DepP;
+<span class="lineNum"> 115 </span> : StringItem *StringItemP;
+<span class="lineNum"> 116 </span> : char *StrP;
+<span class="lineNum"> 117 </span> :
+<span class="lineNum"> 118 </span> : virtual bool ReMap();
+<span class="lineNum"> 119 </span> : inline bool Sync() {return Map.Sync();};
+<span class="lineNum"> 120 </span> : inline MMap &amp;GetMap() {return Map;};
+<span class="lineNum"> 121 </span> : inline void *DataEnd() {return ((unsigned char *)Map.Data()) + Map.Size();};
+<span class="lineNum"> 122 </span> :
+<span class="lineNum"> 123 </span> : // String hashing function (512 range)
+<span class="lineNum"> 124 </span> : inline unsigned long Hash(const string &amp;S) const {return sHash(S);};
+<span class="lineNum"> 125 </span> : inline unsigned long Hash(const char *S) const {return sHash(S);};
+<span class="lineNum"> 126 </span> :
+<span class="lineNum"> 127 </span> : // Usefull transformation things
+<span class="lineNum"> 128 </span> : const char *Priority(unsigned char Priority);
+<span class="lineNum"> 129 </span> :
+<span class="lineNum"> 130 </span> : // Accessors
+<span class="lineNum"> 131 </span> : PkgIterator FindPkg(const string &amp;Name);
+<span class="lineNum"> 132 </span> : Header &amp;Head() {return *HeaderP;};
+<span class="lineNum"> 133 </span> : inline PkgIterator PkgBegin();
+<span class="lineNum"> 134 </span> : inline PkgIterator PkgEnd();
+<span class="lineNum"> 135 </span> : inline PkgFileIterator FileBegin();
+<span class="lineNum"> 136 </span> : inline PkgFileIterator FileEnd();
+<span class="lineNum"> 137 </span> :
+<span class="lineNum"> 138 </span> : // Make me a function
+<span class="lineNum"> 139 </span> : pkgVersioningSystem *VS;
+<span class="lineNum"> 140 </span> :
+<span class="lineNum"> 141 </span> : // Converters
+<span class="lineNum"> 142 </span> : static const char *CompTypeDeb(unsigned char Comp);
+<span class="lineNum"> 143 </span> : static const char *CompType(unsigned char Comp);
+<span class="lineNum"> 144 </span> : static const char *DepType(unsigned char Dep);
+<span class="lineNum"> 145 </span> :
+<span class="lineNum"> 146 </span> : pkgCache(MMap *Map,bool DoMap = true);
+<span class="lineNum"> 147 </span> : virtual ~pkgCache() {};
+<span class="lineNum"> 148 </span> : };
+<span class="lineNum"> 149 </span> :
+<span class="lineNum"> 150 </span> : // Header structure
+<span class="lineNum"> 151 </span> : struct pkgCache::Header
+<span class="lineNum"> 152 </span> : {
+<span class="lineNum"> 153 </span> : // Signature information
+<span class="lineNum"> 154 </span> : unsigned long Signature;
+<span class="lineNum"> 155 </span> : short MajorVersion;
+<span class="lineNum"> 156 </span> : short MinorVersion;
+<span class="lineNum"> 157 </span> : bool Dirty;
+<span class="lineNum"> 158 </span> :
+<span class="lineNum"> 159 </span> : // Size of structure values
+<span class="lineNum"> 160 </span> : unsigned short HeaderSz;
+<span class="lineNum"> 161 </span> : unsigned short PackageSz;
+<span class="lineNum"> 162 </span> : unsigned short PackageFileSz;
+<span class="lineNum"> 163 </span> : unsigned short VersionSz;
+<span class="lineNum"> 164 </span> : unsigned short DescriptionSz;
+<span class="lineNum"> 165 </span> : unsigned short DependencySz;
+<span class="lineNum"> 166 </span> : unsigned short ProvidesSz;
+<span class="lineNum"> 167 </span> : unsigned short VerFileSz;
+<span class="lineNum"> 168 </span> : unsigned short DescFileSz;
+<span class="lineNum"> 169 </span> :
+<span class="lineNum"> 170 </span> : // Structure counts
+<span class="lineNum"> 171 </span> : unsigned long PackageCount;
+<span class="lineNum"> 172 </span> : unsigned long VersionCount;
+<span class="lineNum"> 173 </span> : unsigned long DescriptionCount;
+<span class="lineNum"> 174 </span> : unsigned long DependsCount;
+<span class="lineNum"> 175 </span> : unsigned long PackageFileCount;
+<span class="lineNum"> 176 </span> : unsigned long VerFileCount;
+<span class="lineNum"> 177 </span> : unsigned long DescFileCount;
+<span class="lineNum"> 178 </span> : unsigned long ProvidesCount;
+<span class="lineNum"> 179 </span> :
+<span class="lineNum"> 180 </span> : // Offsets
+<span class="lineNum"> 181 </span> : map_ptrloc FileList; // struct PackageFile
+<span class="lineNum"> 182 </span> : map_ptrloc StringList; // struct StringItem
+<span class="lineNum"> 183 </span> : map_ptrloc VerSysName; // StringTable
+<span class="lineNum"> 184 </span> : map_ptrloc Architecture; // StringTable
+<span class="lineNum"> 185 </span> : unsigned long MaxVerFileSize;
+<span class="lineNum"> 186 </span> : unsigned long MaxDescFileSize;
+<span class="lineNum"> 187 </span> :
+<span class="lineNum"> 188 </span> : /* Allocation pools, there should be one of these for each structure
+<span class="lineNum"> 189 </span> : excluding the header */
+<span class="lineNum"> 190 </span> : DynamicMMap::Pool Pools[8];
+<span class="lineNum"> 191 </span> :
+<span class="lineNum"> 192 </span> : // Rapid package name lookup
+<span class="lineNum"> 193 </span> : map_ptrloc HashTable[2*1048];
+<span class="lineNum"> 194 </span> :
+<span class="lineNum"> 195 </span> : bool CheckSizes(Header &amp;Against) const;
+<span class="lineNum"> 196 </span> : Header();
+<span class="lineNum"> 197 </span> : };
+<span class="lineNum"> 198 </span> :
+<span class="lineNum"> 199 </span> : struct pkgCache::Package
+<span class="lineNum"> 200 </span> : {
+<span class="lineNum"> 201 </span> : // Pointers
+<span class="lineNum"> 202 </span> : map_ptrloc Name; // Stringtable
+<span class="lineNum"> 203 </span> : map_ptrloc VersionList; // Version
+<span class="lineNum"> 204 </span> : map_ptrloc CurrentVer; // Version
+<span class="lineNum"> 205 </span> : map_ptrloc Section; // StringTable (StringItem)
+<span class="lineNum"> 206 </span> :
+<span class="lineNum"> 207 </span> : // Linked list
+<span class="lineNum"> 208 </span> : map_ptrloc NextPackage; // Package
+<span class="lineNum"> 209 </span> : map_ptrloc RevDepends; // Dependency
+<span class="lineNum"> 210 </span> : map_ptrloc ProvidesList; // Provides
+<span class="lineNum"> 211 </span> :
+<span class="lineNum"> 212 </span> : // Install/Remove/Purge etc
+<span class="lineNum"> 213 </span> : unsigned char SelectedState; // What
+<span class="lineNum"> 214 </span> : unsigned char InstState; // Flags
+<span class="lineNum"> 215 </span> : unsigned char CurrentState; // State
+<span class="lineNum"> 216 </span> :
+<span class="lineNum"> 217 </span> : unsigned short ID;
+<span class="lineNum"> 218 </span> : unsigned long Flags;
+<span class="lineNum"> 219 </span> : };
+<span class="lineNum"> 220 </span> :
+<span class="lineNum"> 221 </span> : struct pkgCache::PackageFile
+<span class="lineNum"> 222 </span> : {
+<span class="lineNum"> 223 </span> : // Names
+<span class="lineNum"> 224 </span> : map_ptrloc FileName; // Stringtable
+<span class="lineNum"> 225 </span> : map_ptrloc Archive; // Stringtable
+<span class="lineNum"> 226 </span> : map_ptrloc Component; // Stringtable
+<span class="lineNum"> 227 </span> : map_ptrloc Version; // Stringtable
+<span class="lineNum"> 228 </span> : map_ptrloc Origin; // Stringtable
+<span class="lineNum"> 229 </span> : map_ptrloc Label; // Stringtable
+<span class="lineNum"> 230 </span> : map_ptrloc Architecture; // Stringtable
+<span class="lineNum"> 231 </span> : map_ptrloc Site; // Stringtable
+<span class="lineNum"> 232 </span> : map_ptrloc IndexType; // Stringtable
+<span class="lineNum"> 233 </span> : unsigned long Size;
+<span class="lineNum"> 234 </span> : unsigned long Flags;
+<span class="lineNum"> 235 </span> :
+<span class="lineNum"> 236 </span> : // Linked list
+<span class="lineNum"> 237 </span> : map_ptrloc NextFile; // PackageFile
+<span class="lineNum"> 238 </span> : unsigned short ID;
+<span class="lineNum"> 239 </span> : time_t mtime; // Modification time for the file
+<span class="lineNum"> 240 </span> : };
+<span class="lineNum"> 241 </span> :
+<span class="lineNum"> 242 </span> : struct pkgCache::VerFile
+<span class="lineNum"> 243 </span> : {
+<span class="lineNum"> 244 </span> : map_ptrloc File; // PackageFile
+<span class="lineNum"> 245 </span> : map_ptrloc NextFile; // PkgVerFile
+<span class="lineNum"> 246 </span> : map_ptrloc Offset; // File offset
+<span class="lineNum"> 247 </span> : unsigned short Size;
+<span class="lineNum"> 248 </span> : };
+<span class="lineNum"> 249 </span> :
+<span class="lineNum"> 250 </span> : struct pkgCache::DescFile
+<span class="lineNum"> 251 </span> : {
+<span class="lineNum"> 252 </span> : map_ptrloc File; // PackageFile
+<span class="lineNum"> 253 </span> : map_ptrloc NextFile; // PkgVerFile
+<span class="lineNum"> 254 </span> : map_ptrloc Offset; // File offset
+<span class="lineNum"> 255 </span> : unsigned short Size;
+<span class="lineNum"> 256 </span> : };
+<span class="lineNum"> 257 </span> :
+<span class="lineNum"> 258 </span> : struct pkgCache::Version
+<span class="lineNum"> 259 </span> : {
+<span class="lineNum"> 260 </span> : map_ptrloc VerStr; // Stringtable
+<span class="lineNum"> 261 </span> : map_ptrloc Section; // StringTable (StringItem)
+<span class="lineNum"> 262 </span> : map_ptrloc Arch; // StringTable
+<span class="lineNum"> 263 </span> :
+<span class="lineNum"> 264 </span> : // Lists
+<span class="lineNum"> 265 </span> : map_ptrloc FileList; // VerFile
+<span class="lineNum"> 266 </span> : map_ptrloc NextVer; // Version
+<span class="lineNum"> 267 </span> : map_ptrloc DescriptionList; // Description
+<span class="lineNum"> 268 </span> : map_ptrloc DependsList; // Dependency
+<span class="lineNum"> 269 </span> : map_ptrloc ParentPkg; // Package
+<span class="lineNum"> 270 </span> : map_ptrloc ProvidesList; // Provides
+<span class="lineNum"> 271 </span> :
+<span class="lineNum"> 272 </span> : map_ptrloc Size; // These are the .deb size
+<span class="lineNum"> 273 </span> : map_ptrloc InstalledSize;
+<span class="lineNum"> 274 </span> : unsigned short Hash;
+<span class="lineNum"> 275 </span> : unsigned short ID;
+<span class="lineNum"> 276 </span> : unsigned char Priority;
+<span class="lineNum"> 277 </span> : };
+<span class="lineNum"> 278 </span> :
+<span class="lineNum"> 279 </span> : struct pkgCache::Description
+<span class="lineNum"> 280 </span> : {
+<span class="lineNum"> 281 </span> : // Language Code store the description translation language code. If
+<span class="lineNum"> 282 </span> : // the value has a 0 lenght then this is readed using the Package
+<span class="lineNum"> 283 </span> : // file else the Translation-CODE are used.
+<span class="lineNum"> 284 </span> : map_ptrloc language_code; // StringTable
+<span class="lineNum"> 285 </span> : map_ptrloc md5sum; // StringTable
+<span class="lineNum"> 286 </span> :
+<span class="lineNum"> 287 </span> : // Linked list
+<span class="lineNum"> 288 </span> : map_ptrloc FileList; // DescFile
+<span class="lineNum"> 289 </span> : map_ptrloc NextDesc; // Description
+<span class="lineNum"> 290 </span> : map_ptrloc ParentPkg; // Package
+<span class="lineNum"> 291 </span> :
+<span class="lineNum"> 292 </span> : unsigned short ID;
+<span class="lineNum"> 293 </span> : };
+<span class="lineNum"> 294 </span> :
+<span class="lineNum"> 295 </span> : struct pkgCache::Dependency
+<span class="lineNum"> 296 </span> : {
+<span class="lineNum"> 297 </span> : map_ptrloc Version; // Stringtable
+<span class="lineNum"> 298 </span> : map_ptrloc Package; // Package
+<span class="lineNum"> 299 </span> : map_ptrloc NextDepends; // Dependency
+<span class="lineNum"> 300 </span> : map_ptrloc NextRevDepends; // Dependency
+<span class="lineNum"> 301 </span> : map_ptrloc ParentVer; // Version
+<span class="lineNum"> 302 </span> :
+<span class="lineNum"> 303 </span> : // Specific types of depends
+<span class="lineNum"> 304 </span> : map_ptrloc ID;
+<span class="lineNum"> 305 </span> : unsigned char Type;
+<span class="lineNum"> 306 </span> : unsigned char CompareOp;
+<span class="lineNum"> 307 </span> : };
+<span class="lineNum"> 308 </span> :
+<span class="lineNum"> 309 </span> : struct pkgCache::Provides
+<span class="lineNum"> 310 </span> : {
+<span class="lineNum"> 311 </span> : map_ptrloc ParentPkg; // Pacakge
+<span class="lineNum"> 312 </span> : map_ptrloc Version; // Version
+<span class="lineNum"> 313 </span> : map_ptrloc ProvideVersion; // Stringtable
+<span class="lineNum"> 314 </span> : map_ptrloc NextProvides; // Provides
+<span class="lineNum"> 315 </span> : map_ptrloc NextPkgProv; // Provides
+<span class="lineNum"> 316 </span> : };
+<span class="lineNum"> 317 </span> :
+<span class="lineNum"> 318 </span> : struct pkgCache::StringItem
+<span class="lineNum"> 319 </span> : {
+<span class="lineNum"> 320 </span> : map_ptrloc String; // Stringtable
+<span class="lineNum"> 321 </span> : map_ptrloc NextItem; // StringItem
+<span class="lineNum"> 322 </span> : };
+<span class="lineNum"> 323 </span> :
+<span class="lineNum"> 324 </span> : #include &lt;apt-pkg/cacheiterators.h&gt;
+<span class="lineNum"> 325 </span> :
+<span class="lineNum"> 326 </span><span class="lineCov"> 19 : inline pkgCache::PkgIterator pkgCache::PkgBegin() </span>
+<span class="lineNum"> 327 </span><span class="lineCov"> 19 : {return PkgIterator(*this);};</span>
+<span class="lineNum"> 328 </span> : inline pkgCache::PkgIterator pkgCache::PkgEnd()
+<span class="lineNum"> 329 </span> : {return PkgIterator(*this,PkgP);};
+<span class="lineNum"> 330 </span> : inline pkgCache::PkgFileIterator pkgCache::FileBegin()
+<span class="lineNum"> 331 </span> : {return PkgFileIterator(*this,PkgFileP + HeaderP-&gt;FileList);};
+<span class="lineNum"> 332 </span> : inline pkgCache::PkgFileIterator pkgCache::FileEnd()
+<span class="lineNum"> 333 </span> : {return PkgFileIterator(*this,PkgFileP);};
+<span class="lineNum"> 334 </span> :
+<span class="lineNum"> 335 </span> : // Oh I wish for Real Name Space Support
+<span class="lineNum"> 336 </span> : class pkgCache::Namespace
+<span class="lineNum"> 337 </span> : {
+<span class="lineNum"> 338 </span> : public:
+<span class="lineNum"> 339 </span> :
+<span class="lineNum"> 340 </span> : typedef pkgCache::PkgIterator PkgIterator;
+<span class="lineNum"> 341 </span> : typedef pkgCache::VerIterator VerIterator;
+<span class="lineNum"> 342 </span> : typedef pkgCache::DescIterator DescIterator;
+<span class="lineNum"> 343 </span> : typedef pkgCache::DepIterator DepIterator;
+<span class="lineNum"> 344 </span> : typedef pkgCache::PrvIterator PrvIterator;
+<span class="lineNum"> 345 </span> : typedef pkgCache::PkgFileIterator PkgFileIterator;
+<span class="lineNum"> 346 </span> : typedef pkgCache::VerFileIterator VerFileIterator;
+<span class="lineNum"> 347 </span> : typedef pkgCache::Version Version;
+<span class="lineNum"> 348 </span> : typedef pkgCache::Description Description;
+<span class="lineNum"> 349 </span> : typedef pkgCache::Package Package;
+<span class="lineNum"> 350 </span> : typedef pkgCache::Header Header;
+<span class="lineNum"> 351 </span> : typedef pkgCache::Dep Dep;
+<span class="lineNum"> 352 </span> : typedef pkgCache::Flag Flag;
+<span class="lineNum"> 353 </span> : };
+<span class="lineNum"> 354 </span> :
+<span class="lineNum"> 355 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/apt-pkg/progress.h.gcov.html b/rep/usr/include/apt-pkg/progress.h.gcov.html
new file mode 100644
index 0000000..6dce14e
--- /dev/null
+++ b/rep/usr/include/apt-pkg/progress.h.gcov.html
@@ -0,0 +1,156 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/apt-pkg/progress.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">usr/include/apt-pkg</a> - progress.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">3</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">3</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: cpp; mode: fold -*-
+<span class="lineNum"> 2 </span> : // Description /*{{{*/
+<span class="lineNum"> 3 </span> : // $Id: progress.h,v 1.6 2001/05/07 05:06:52 jgg Exp $
+<span class="lineNum"> 4 </span> : /* ######################################################################
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : OpProgress - Operation Progress
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : This class allows lengthy operations to communicate their progress
+<span class="lineNum"> 9 </span> : to the GUI. The progress model is simple and is not designed to handle
+<span class="lineNum"> 10 </span> : the complex case of the multi-activity aquire class.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : The model is based on the concept of an overall operation consisting
+<span class="lineNum"> 13 </span> : of a series of small sub operations. Each sub operation has it's own
+<span class="lineNum"> 14 </span> : completion status and the overall operation has it's completion status.
+<span class="lineNum"> 15 </span> : The units of the two are not mixed and are completely independent.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : The UI is expected to subclass this to provide the visuals to the user.
+<span class="lineNum"> 18 </span> :
+<span class="lineNum"> 19 </span> : ##################################################################### */
+<span class="lineNum"> 20 </span> : /*}}}*/
+<span class="lineNum"> 21 </span> : #ifndef PKGLIB_PROGRESS_H
+<span class="lineNum"> 22 </span> : #define PKGLIB_PROGRESS_H
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> :
+<span class="lineNum"> 25 </span> : #include &lt;string&gt;
+<span class="lineNum"> 26 </span> : #include &lt;sys/time.h&gt;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : using std::string;
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : class Configuration;
+<span class="lineNum"> 31 </span> : class OpProgress
+<span class="lineNum"> 32 </span> : {
+<span class="lineNum"> 33 </span> : unsigned long Current;
+<span class="lineNum"> 34 </span> : unsigned long Total;
+<span class="lineNum"> 35 </span> : unsigned long Size;
+<span class="lineNum"> 36 </span> : unsigned long SubTotal;
+<span class="lineNum"> 37 </span> : float LastPercent;
+<span class="lineNum"> 38 </span> :
+<span class="lineNum"> 39 </span> : // Change reduction code
+<span class="lineNum"> 40 </span> : struct timeval LastTime;
+<span class="lineNum"> 41 </span> : string LastOp;
+<span class="lineNum"> 42 </span> : string LastSubOp;
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span> : protected:
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> : string Op;
+<span class="lineNum"> 47 </span> : string SubOp;
+<span class="lineNum"> 48 </span> : float Percent;
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span> : bool MajorChange;
+<span class="lineNum"> 51 </span> :
+<span class="lineNum"> 52 </span> : bool CheckChange(float Interval = 0.7);
+<span class="lineNum"> 53 </span><span class="lineCov"> 24433 : virtual void Update() {};</span>
+<span class="lineNum"> 54 </span> :
+<span class="lineNum"> 55 </span> : public:
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : void Progress(unsigned long Current);
+<span class="lineNum"> 58 </span> : void SubProgress(unsigned long SubTotal);
+<span class="lineNum"> 59 </span> : void SubProgress(unsigned long SubTotal,const string &amp;Op);
+<span class="lineNum"> 60 </span> : void OverallProgress(unsigned long Current,unsigned long Total,
+<span class="lineNum"> 61 </span> : unsigned long Size,const string &amp;Op);
+<span class="lineNum"> 62 </span><span class="lineCov"> 62 : virtual void Done() {};</span>
+<span class="lineNum"> 63 </span> :
+<span class="lineNum"> 64 </span> : OpProgress();
+<span class="lineNum"> 65 </span><span class="lineCov"> 29 : virtual ~OpProgress() {};</span>
+<span class="lineNum"> 66 </span> : };
+<span class="lineNum"> 67 </span> :
+<span class="lineNum"> 68 </span> : class OpTextProgress : public OpProgress
+<span class="lineNum"> 69 </span> : {
+<span class="lineNum"> 70 </span> : protected:
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span> : string OldOp;
+<span class="lineNum"> 73 </span> : bool NoUpdate;
+<span class="lineNum"> 74 </span> : bool NoDisplay;
+<span class="lineNum"> 75 </span> : unsigned long LastLen;
+<span class="lineNum"> 76 </span> : virtual void Update();
+<span class="lineNum"> 77 </span> : void Write(const char *S);
+<span class="lineNum"> 78 </span> :
+<span class="lineNum"> 79 </span> : public:
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span> : virtual void Done();
+<span class="lineNum"> 82 </span> :
+<span class="lineNum"> 83 </span> : OpTextProgress(bool NoUpdate = false) : NoUpdate(NoUpdate),
+<span class="lineNum"> 84 </span> : NoDisplay(false), LastLen(0) {};
+<span class="lineNum"> 85 </span> : OpTextProgress(Configuration &amp;Config);
+<span class="lineNum"> 86 </span> : virtual ~OpTextProgress() {Done();};
+<span class="lineNum"> 87 </span> : };
+<span class="lineNum"> 88 </span> :
+<span class="lineNum"> 89 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/apt-pkg/version.h.gcov.html b/rep/usr/include/apt-pkg/version.h.gcov.html
new file mode 100644
index 0000000..6bcff73
--- /dev/null
+++ b/rep/usr/include/apt-pkg/version.h.gcov.html
@@ -0,0 +1,131 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/apt-pkg/version.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">usr/include/apt-pkg</a> - version.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- mode: cpp; mode: fold -*-
+<span class="lineNum"> 2 </span> : // Description /*{{{*/
+<span class="lineNum"> 3 </span> : // $Id: version.h,v 1.8 2001/05/27 05:55:27 jgg Exp $
+<span class="lineNum"> 4 </span> : /* ######################################################################
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : Version - Versioning system..
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : The versioning system represents how versions are compared, represented
+<span class="lineNum"> 9 </span> : and how dependencies are evaluated. As a general rule versioning
+<span class="lineNum"> 10 </span> : systems are not compatible unless specifically allowed by the
+<span class="lineNum"> 11 </span> : TestCompatibility query.
+<span class="lineNum"> 12 </span> :
+<span class="lineNum"> 13 </span> : The versions are stored in a global list of versions, but that is just
+<span class="lineNum"> 14 </span> : so that they can be queried when someone does 'apt-get -v'.
+<span class="lineNum"> 15 </span> : pkgSystem provides the proper means to access the VS for the active
+<span class="lineNum"> 16 </span> : system.
+<span class="lineNum"> 17 </span> :
+<span class="lineNum"> 18 </span> : ##################################################################### */
+<span class="lineNum"> 19 </span> : /*}}}*/
+<span class="lineNum"> 20 </span> : #ifndef PKGLIB_VERSION_H
+<span class="lineNum"> 21 </span> : #define PKGLIB_VERSION_H
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : #include &lt;apt-pkg/strutl.h&gt;
+<span class="lineNum"> 25 </span> : #include &lt;string&gt;
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : using std::string;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : class pkgVersioningSystem
+<span class="lineNum"> 30 </span> : {
+<span class="lineNum"> 31 </span> : public:
+<span class="lineNum"> 32 </span> : // Global list of VS's
+<span class="lineNum"> 33 </span> : static pkgVersioningSystem **GlobalList;
+<span class="lineNum"> 34 </span> : static unsigned long GlobalListLen;
+<span class="lineNum"> 35 </span> : static pkgVersioningSystem *GetVS(const char *Label);
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : const char *Label;
+<span class="lineNum"> 38 </span> :
+<span class="lineNum"> 39 </span> : // Compare versions..
+<span class="lineNum"> 40 </span> : virtual int DoCmpVersion(const char *A,const char *Aend,
+<span class="lineNum"> 41 </span> : const char *B,const char *Bend) = 0;
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : virtual bool CheckDep(const char *PkgVer,int Op,const char *DepVer) = 0;
+<span class="lineNum"> 44 </span> : virtual int DoCmpReleaseVer(const char *A,const char *Aend,
+<span class="lineNum"> 45 </span> : const char *B,const char *Bend) = 0;
+<span class="lineNum"> 46 </span> : virtual string UpstreamVersion(const char *A) = 0;
+<span class="lineNum"> 47 </span> :
+<span class="lineNum"> 48 </span> : // See if the given VS is compatible with this one..
+<span class="lineNum"> 49 </span> : virtual bool TestCompatibility(pkgVersioningSystem const &amp;Against)
+<span class="lineNum"> 50 </span> : {return this == &amp;Against;};
+<span class="lineNum"> 51 </span> :
+<span class="lineNum"> 52 </span> : // Shortcuts
+<span class="lineNum"> 53 </span><span class="lineCov"> 14 : APT_MKSTRCMP(CmpVersion,DoCmpVersion);</span>
+<span class="lineNum"> 54 </span> : APT_MKSTRCMP(CmpReleaseVer,DoCmpReleaseVer);
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span> : pkgVersioningSystem();
+<span class="lineNum"> 57 </span> : virtual ~pkgVersioningSystem() {};
+<span class="lineNum"> 58 </span> : };
+<span class="lineNum"> 59 </span> :
+<span class="lineNum"> 60 </span> : #ifdef APT_COMPATIBILITY
+<span class="lineNum"> 61 </span> : #include &lt;apt-pkg/debversion.h&gt;
+<span class="lineNum"> 62 </span> : #endif
+<span class="lineNum"> 63 </span> :
+<span class="lineNum"> 64 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/backward/auto_ptr.h.gcov.html b/rep/usr/include/c++/4.3/backward/auto_ptr.h.gcov.html
new file mode 100644
index 0000000..4afaec9
--- /dev/null
+++ b/rep/usr/include/c++/4.3/backward/auto_ptr.h.gcov.html
@@ -0,0 +1,364 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/backward/auto_ptr.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/backward</a> - auto_ptr.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">15</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">15</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // auto_ptr implementation -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2007, 2008 Free Software Foundation, Inc.
+<span class="lineNum"> 4 </span> : //
+<span class="lineNum"> 5 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 6 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 7 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 8 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 9 </span> : // any later version.
+<span class="lineNum"> 10 </span> :
+<span class="lineNum"> 11 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 12 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 13 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 14 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 15 </span> :
+<span class="lineNum"> 16 </span> : // You should have received a copy of the GNU General Public License
+<span class="lineNum"> 17 </span> : // along with this library; see the file COPYING. If not, write to
+<span class="lineNum"> 18 </span> : // the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+<span class="lineNum"> 19 </span> : // Boston, MA 02110-1301, USA.
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 22 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 23 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 24 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 25 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 26 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 27 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 28 </span> : // the GNU General Public License.
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : /** @file backward/auto_ptr.h
+<span class="lineNum"> 31 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 32 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 33 </span> : */
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : #ifndef _STL_AUTO_PTR_H
+<span class="lineNum"> 36 </span> : #define _STL_AUTO_PTR_H 1
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : #include &lt;bits/c++config.h&gt;
+<span class="lineNum"> 39 </span> : #include &lt;debug/debug.h&gt;
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : /**
+<span class="lineNum"> 44 </span> : * A wrapper class to provide auto_ptr with reference semantics.
+<span class="lineNum"> 45 </span> : * For example, an auto_ptr can be assigned (or constructed from)
+<span class="lineNum"> 46 </span> : * the result of a function which returns an auto_ptr by value.
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * All the auto_ptr_ref stuff should happen behind the scenes.
+<span class="lineNum"> 49 </span> : */
+<span class="lineNum"> 50 </span> : template&lt;typename _Tp1&gt;
+<span class="lineNum"> 51 </span> : struct auto_ptr_ref
+<span class="lineNum"> 52 </span> : {
+<span class="lineNum"> 53 </span> : _Tp1* _M_ptr;
+<span class="lineNum"> 54 </span> :
+<span class="lineNum"> 55 </span> : explicit
+<span class="lineNum"> 56 </span><span class="lineCov"> 666 : auto_ptr_ref(_Tp1* __p): _M_ptr(__p) { }</span>
+<span class="lineNum"> 57 </span> : } _GLIBCXX_DEPRECATED_ATTR;
+<span class="lineNum"> 58 </span> :
+<span class="lineNum"> 59 </span> :
+<span class="lineNum"> 60 </span> : /**
+<span class="lineNum"> 61 </span> : * @brief A simple smart pointer providing strict ownership semantics.
+<span class="lineNum"> 62 </span> : *
+<span class="lineNum"> 63 </span> : * The Standard says:
+<span class="lineNum"> 64 </span> : * &lt;pre&gt;
+<span class="lineNum"> 65 </span> : * An @c auto_ptr owns the object it holds a pointer to. Copying
+<span class="lineNum"> 66 </span> : * an @c auto_ptr copies the pointer and transfers ownership to the
+<span class="lineNum"> 67 </span> : * destination. If more than one @c auto_ptr owns the same object
+<span class="lineNum"> 68 </span> : * at the same time the behavior of the program is undefined.
+<span class="lineNum"> 69 </span> : *
+<span class="lineNum"> 70 </span> : * The uses of @c auto_ptr include providing temporary
+<span class="lineNum"> 71 </span> : * exception-safety for dynamically allocated memory, passing
+<span class="lineNum"> 72 </span> : * ownership of dynamically allocated memory to a function, and
+<span class="lineNum"> 73 </span> : * returning dynamically allocated memory from a function. @c
+<span class="lineNum"> 74 </span> : * auto_ptr does not meet the CopyConstructible and Assignable
+<span class="lineNum"> 75 </span> : * requirements for Standard Library &lt;a
+<span class="lineNum"> 76 </span> : * href=&quot;tables.html#65&quot;&gt;container&lt;/a&gt; elements and thus
+<span class="lineNum"> 77 </span> : * instantiating a Standard Library container with an @c auto_ptr
+<span class="lineNum"> 78 </span> : * results in undefined behavior.
+<span class="lineNum"> 79 </span> : * &lt;/pre&gt;
+<span class="lineNum"> 80 </span> : * Quoted from [20.4.5]/3.
+<span class="lineNum"> 81 </span> : *
+<span class="lineNum"> 82 </span> : * Good examples of what can and cannot be done with auto_ptr can
+<span class="lineNum"> 83 </span> : * be found in the libstdc++ testsuite.
+<span class="lineNum"> 84 </span> : *
+<span class="lineNum"> 85 </span> : * _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 86 </span> : * 127. auto_ptr&lt;&gt; conversion issues
+<span class="lineNum"> 87 </span> : * These resolutions have all been incorporated.
+<span class="lineNum"> 88 </span> : */
+<span class="lineNum"> 89 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 90 </span> : class auto_ptr
+<span class="lineNum"> 91 </span> : {
+<span class="lineNum"> 92 </span> : private:
+<span class="lineNum"> 93 </span> : _Tp* _M_ptr;
+<span class="lineNum"> 94 </span> :
+<span class="lineNum"> 95 </span> : public:
+<span class="lineNum"> 96 </span> : /// The pointed-to type.
+<span class="lineNum"> 97 </span> : typedef _Tp element_type;
+<span class="lineNum"> 98 </span> :
+<span class="lineNum"> 99 </span> : /**
+<span class="lineNum"> 100 </span> : * @brief An %auto_ptr is usually constructed from a raw pointer.
+<span class="lineNum"> 101 </span> : * @param p A pointer (defaults to NULL).
+<span class="lineNum"> 102 </span> : *
+<span class="lineNum"> 103 </span> : * This object now @e owns the object pointed to by @a p.
+<span class="lineNum"> 104 </span> : */
+<span class="lineNum"> 105 </span> : explicit
+<span class="lineNum"> 106 </span><span class="lineCov"> 666 : auto_ptr(element_type* __p = 0) throw() : _M_ptr(__p) { }</span>
+<span class="lineNum"> 107 </span> :
+<span class="lineNum"> 108 </span> : /**
+<span class="lineNum"> 109 </span> : * @brief An %auto_ptr can be constructed from another %auto_ptr.
+<span class="lineNum"> 110 </span> : * @param a Another %auto_ptr of the same type.
+<span class="lineNum"> 111 </span> : *
+<span class="lineNum"> 112 </span> : * This object now @e owns the object previously owned by @a a,
+<span class="lineNum"> 113 </span> : * which has given up ownership.
+<span class="lineNum"> 114 </span> : */
+<span class="lineNum"> 115 </span><span class="lineCov"> 590 : auto_ptr(auto_ptr&amp; __a) throw() : _M_ptr(__a.release()) { }</span>
+<span class="lineNum"> 116 </span> :
+<span class="lineNum"> 117 </span> : /**
+<span class="lineNum"> 118 </span> : * @brief An %auto_ptr can be constructed from another %auto_ptr.
+<span class="lineNum"> 119 </span> : * @param a Another %auto_ptr of a different but related type.
+<span class="lineNum"> 120 </span> : *
+<span class="lineNum"> 121 </span> : * A pointer-to-Tp1 must be convertible to a
+<span class="lineNum"> 122 </span> : * pointer-to-Tp/element_type.
+<span class="lineNum"> 123 </span> : *
+<span class="lineNum"> 124 </span> : * This object now @e owns the object previously owned by @a a,
+<span class="lineNum"> 125 </span> : * which has given up ownership.
+<span class="lineNum"> 126 </span> : */
+<span class="lineNum"> 127 </span> : template&lt;typename _Tp1&gt;
+<span class="lineNum"> 128 </span> : auto_ptr(auto_ptr&lt;_Tp1&gt;&amp; __a) throw() : _M_ptr(__a.release()) { }
+<span class="lineNum"> 129 </span> :
+<span class="lineNum"> 130 </span> : /**
+<span class="lineNum"> 131 </span> : * @brief %auto_ptr assignment operator.
+<span class="lineNum"> 132 </span> : * @param a Another %auto_ptr of the same type.
+<span class="lineNum"> 133 </span> : *
+<span class="lineNum"> 134 </span> : * This object now @e owns the object previously owned by @a a,
+<span class="lineNum"> 135 </span> : * which has given up ownership. The object that this one @e
+<span class="lineNum"> 136 </span> : * used to own and track has been deleted.
+<span class="lineNum"> 137 </span> : */
+<span class="lineNum"> 138 </span> : auto_ptr&amp;
+<span class="lineNum"> 139 </span> : operator=(auto_ptr&amp; __a) throw()
+<span class="lineNum"> 140 </span> : {
+<span class="lineNum"> 141 </span> : reset(__a.release());
+<span class="lineNum"> 142 </span> : return *this;
+<span class="lineNum"> 143 </span> : }
+<span class="lineNum"> 144 </span> :
+<span class="lineNum"> 145 </span> : /**
+<span class="lineNum"> 146 </span> : * @brief %auto_ptr assignment operator.
+<span class="lineNum"> 147 </span> : * @param a Another %auto_ptr of a different but related type.
+<span class="lineNum"> 148 </span> : *
+<span class="lineNum"> 149 </span> : * A pointer-to-Tp1 must be convertible to a pointer-to-Tp/element_type.
+<span class="lineNum"> 150 </span> : *
+<span class="lineNum"> 151 </span> : * This object now @e owns the object previously owned by @a a,
+<span class="lineNum"> 152 </span> : * which has given up ownership. The object that this one @e
+<span class="lineNum"> 153 </span> : * used to own and track has been deleted.
+<span class="lineNum"> 154 </span> : */
+<span class="lineNum"> 155 </span> : template&lt;typename _Tp1&gt;
+<span class="lineNum"> 156 </span> : auto_ptr&amp;
+<span class="lineNum"> 157 </span> : operator=(auto_ptr&lt;_Tp1&gt;&amp; __a) throw()
+<span class="lineNum"> 158 </span> : {
+<span class="lineNum"> 159 </span> : reset(__a.release());
+<span class="lineNum"> 160 </span> : return *this;
+<span class="lineNum"> 161 </span> : }
+<span class="lineNum"> 162 </span> :
+<span class="lineNum"> 163 </span> : /**
+<span class="lineNum"> 164 </span> : * When the %auto_ptr goes out of scope, the object it owns is
+<span class="lineNum"> 165 </span> : * deleted. If it no longer owns anything (i.e., @c get() is
+<span class="lineNum"> 166 </span> : * @c NULL), then this has no effect.
+<span class="lineNum"> 167 </span> : *
+<span class="lineNum"> 168 </span> : * The C++ standard says there is supposed to be an empty throw
+<span class="lineNum"> 169 </span> : * specification here, but omitting it is standard conforming. Its
+<span class="lineNum"> 170 </span> : * presence can be detected only if _Tp::~_Tp() throws, but this is
+<span class="lineNum"> 171 </span> : * prohibited. [17.4.3.6]/2
+<span class="lineNum"> 172 </span> : */
+<span class="lineNum"> 173 </span><span class="lineCov"> 1922 : ~auto_ptr() { delete _M_ptr; }</span>
+<span class="lineNum"> 174 </span> :
+<span class="lineNum"> 175 </span> : /**
+<span class="lineNum"> 176 </span> : * @brief Smart pointer dereferencing.
+<span class="lineNum"> 177 </span> : *
+<span class="lineNum"> 178 </span> : * If this %auto_ptr no longer owns anything, then this
+<span class="lineNum"> 179 </span> : * operation will crash. (For a smart pointer, &quot;no longer owns
+<span class="lineNum"> 180 </span> : * anything&quot; is the same as being a null pointer, and you know
+<span class="lineNum"> 181 </span> : * what happens when you dereference one of those...)
+<span class="lineNum"> 182 </span> : */
+<span class="lineNum"> 183 </span> : element_type&amp;
+<span class="lineNum"> 184 </span> : operator*() const throw()
+<span class="lineNum"> 185 </span> : {
+<span class="lineNum"> 186 </span> : _GLIBCXX_DEBUG_ASSERT(_M_ptr != 0);
+<span class="lineNum"> 187 </span> : return *_M_ptr;
+<span class="lineNum"> 188 </span> : }
+<span class="lineNum"> 189 </span> :
+<span class="lineNum"> 190 </span> : /**
+<span class="lineNum"> 191 </span> : * @brief Smart pointer dereferencing.
+<span class="lineNum"> 192 </span> : *
+<span class="lineNum"> 193 </span> : * This returns the pointer itself, which the language then will
+<span class="lineNum"> 194 </span> : * automatically cause to be dereferenced.
+<span class="lineNum"> 195 </span> : */
+<span class="lineNum"> 196 </span> : element_type*
+<span class="lineNum"> 197 </span><span class="lineCov"> 590 : operator-&gt;() const throw() </span>
+<span class="lineNum"> 198 </span> : {
+<span class="lineNum"> 199 </span> : _GLIBCXX_DEBUG_ASSERT(_M_ptr != 0);
+<span class="lineNum"> 200 </span><span class="lineCov"> 590 : return _M_ptr; </span>
+<span class="lineNum"> 201 </span> : }
+<span class="lineNum"> 202 </span> :
+<span class="lineNum"> 203 </span> : /**
+<span class="lineNum"> 204 </span> : * @brief Bypassing the smart pointer.
+<span class="lineNum"> 205 </span> : * @return The raw pointer being managed.
+<span class="lineNum"> 206 </span> : *
+<span class="lineNum"> 207 </span> : * You can get a copy of the pointer that this object owns, for
+<span class="lineNum"> 208 </span> : * situations such as passing to a function which only accepts
+<span class="lineNum"> 209 </span> : * a raw pointer.
+<span class="lineNum"> 210 </span> : *
+<span class="lineNum"> 211 </span> : * @note This %auto_ptr still owns the memory.
+<span class="lineNum"> 212 </span> : */
+<span class="lineNum"> 213 </span> : element_type*
+<span class="lineNum"> 214 </span><span class="lineCov"> 1256 : get() const throw() { return _M_ptr; }</span>
+<span class="lineNum"> 215 </span> :
+<span class="lineNum"> 216 </span> : /**
+<span class="lineNum"> 217 </span> : * @brief Bypassing the smart pointer.
+<span class="lineNum"> 218 </span> : * @return The raw pointer being managed.
+<span class="lineNum"> 219 </span> : *
+<span class="lineNum"> 220 </span> : * You can get a copy of the pointer that this object owns, for
+<span class="lineNum"> 221 </span> : * situations such as passing to a function which only accepts
+<span class="lineNum"> 222 </span> : * a raw pointer.
+<span class="lineNum"> 223 </span> : *
+<span class="lineNum"> 224 </span> : * @note This %auto_ptr no longer owns the memory. When this object
+<span class="lineNum"> 225 </span> : * goes out of scope, nothing will happen.
+<span class="lineNum"> 226 </span> : */
+<span class="lineNum"> 227 </span> : element_type*
+<span class="lineNum"> 228 </span><span class="lineCov"> 1256 : release() throw()</span>
+<span class="lineNum"> 229 </span> : {
+<span class="lineNum"> 230 </span><span class="lineCov"> 1256 : element_type* __tmp = _M_ptr;</span>
+<span class="lineNum"> 231 </span><span class="lineCov"> 1256 : _M_ptr = 0;</span>
+<span class="lineNum"> 232 </span><span class="lineCov"> 1256 : return __tmp;</span>
+<span class="lineNum"> 233 </span> : }
+<span class="lineNum"> 234 </span> :
+<span class="lineNum"> 235 </span> : /**
+<span class="lineNum"> 236 </span> : * @brief Forcibly deletes the managed object.
+<span class="lineNum"> 237 </span> : * @param p A pointer (defaults to NULL).
+<span class="lineNum"> 238 </span> : *
+<span class="lineNum"> 239 </span> : * This object now @e owns the object pointed to by @a p. The
+<span class="lineNum"> 240 </span> : * previous object has been deleted.
+<span class="lineNum"> 241 </span> : */
+<span class="lineNum"> 242 </span> : void
+<span class="lineNum"> 243 </span> : reset(element_type* __p = 0) throw()
+<span class="lineNum"> 244 </span> : {
+<span class="lineNum"> 245 </span> : if (__p != _M_ptr)
+<span class="lineNum"> 246 </span> : {
+<span class="lineNum"> 247 </span> : delete _M_ptr;
+<span class="lineNum"> 248 </span> : _M_ptr = __p;
+<span class="lineNum"> 249 </span> : }
+<span class="lineNum"> 250 </span> : }
+<span class="lineNum"> 251 </span> :
+<span class="lineNum"> 252 </span> : /**
+<span class="lineNum"> 253 </span> : * @brief Automatic conversions
+<span class="lineNum"> 254 </span> : *
+<span class="lineNum"> 255 </span> : * These operations convert an %auto_ptr into and from an auto_ptr_ref
+<span class="lineNum"> 256 </span> : * automatically as needed. This allows constructs such as
+<span class="lineNum"> 257 </span> : * @code
+<span class="lineNum"> 258 </span> : * auto_ptr&lt;Derived&gt; func_returning_auto_ptr(.....);
+<span class="lineNum"> 259 </span> : * ...
+<span class="lineNum"> 260 </span> : * auto_ptr&lt;Base&gt; ptr = func_returning_auto_ptr(.....);
+<span class="lineNum"> 261 </span> : * @endcode
+<span class="lineNum"> 262 </span> : */
+<span class="lineNum"> 263 </span><span class="lineCov"> 666 : auto_ptr(auto_ptr_ref&lt;element_type&gt; __ref) throw()</span>
+<span class="lineNum"> 264 </span><span class="lineCov"> 666 : : _M_ptr(__ref._M_ptr) { }</span>
+<span class="lineNum"> 265 </span> :
+<span class="lineNum"> 266 </span> : auto_ptr&amp;
+<span class="lineNum"> 267 </span> : operator=(auto_ptr_ref&lt;element_type&gt; __ref) throw()
+<span class="lineNum"> 268 </span> : {
+<span class="lineNum"> 269 </span> : if (__ref._M_ptr != this-&gt;get())
+<span class="lineNum"> 270 </span> : {
+<span class="lineNum"> 271 </span> : delete _M_ptr;
+<span class="lineNum"> 272 </span> : _M_ptr = __ref._M_ptr;
+<span class="lineNum"> 273 </span> : }
+<span class="lineNum"> 274 </span> : return *this;
+<span class="lineNum"> 275 </span> : }
+<span class="lineNum"> 276 </span> :
+<span class="lineNum"> 277 </span> : template&lt;typename _Tp1&gt;
+<span class="lineNum"> 278 </span><span class="lineCov"> 666 : operator auto_ptr_ref&lt;_Tp1&gt;() throw()</span>
+<span class="lineNum"> 279 </span><span class="lineCov"> 666 : { return auto_ptr_ref&lt;_Tp1&gt;(this-&gt;release()); }</span>
+<span class="lineNum"> 280 </span> :
+<span class="lineNum"> 281 </span> : template&lt;typename _Tp1&gt;
+<span class="lineNum"> 282 </span> : operator auto_ptr&lt;_Tp1&gt;() throw()
+<span class="lineNum"> 283 </span> : { return auto_ptr&lt;_Tp1&gt;(this-&gt;release()); }
+<span class="lineNum"> 284 </span> : } _GLIBCXX_DEPRECATED_ATTR;
+<span class="lineNum"> 285 </span> :
+<span class="lineNum"> 286 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 287 </span> : // 541. shared_ptr template assignment and void
+<span class="lineNum"> 288 </span> : template&lt;&gt;
+<span class="lineNum"> 289 </span> : class auto_ptr&lt;void&gt;
+<span class="lineNum"> 290 </span> : {
+<span class="lineNum"> 291 </span> : public:
+<span class="lineNum"> 292 </span> : typedef void element_type;
+<span class="lineNum"> 293 </span> : } _GLIBCXX_DEPRECATED_ATTR;
+<span class="lineNum"> 294 </span> :
+<span class="lineNum"> 295 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 296 </span> :
+<span class="lineNum"> 297 </span> : #endif /* _STL_AUTO_PTR_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/backward/binders.h.gcov.html b/rep/usr/include/c++/4.3/backward/binders.h.gcov.html
new file mode 100644
index 0000000..861e1d9
--- /dev/null
+++ b/rep/usr/include/c++/4.3/backward/binders.h.gcov.html
@@ -0,0 +1,238 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/backward/binders.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/backward</a> - binders.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">7</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">7</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Functor implementations -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 18 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 19 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 20 </span> : // USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /*
+<span class="lineNum"> 32 </span> : *
+<span class="lineNum"> 33 </span> : * Copyright (c) 1994
+<span class="lineNum"> 34 </span> : * Hewlett-Packard Company
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 37 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 38 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 39 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 40 </span> : * in supporting documentation. Hewlett-Packard Company makes no
+<span class="lineNum"> 41 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 42 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 43 </span> : *
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * Copyright (c) 1996-1998
+<span class="lineNum"> 46 </span> : * Silicon Graphics Computer Systems, Inc.
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 49 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 50 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 51 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 52 </span> : * in supporting documentation. Silicon Graphics makes no
+<span class="lineNum"> 53 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 54 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 55 </span> : */
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /** @file backward/binders.h
+<span class="lineNum"> 58 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 59 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 60 </span> : */
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : #ifndef _GLIBCXX_BINDERS_H
+<span class="lineNum"> 63 </span> : #define _GLIBCXX_BINDERS_H 1
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : // 20.3.6 binders
+<span class="lineNum"> 68 </span> : /** @defgroup s20_3_6_binder Binder Classes
+<span class="lineNum"> 69 </span> : * Binders turn functions/functors with two arguments into functors with
+<span class="lineNum"> 70 </span> : * a single argument, storing an argument to be applied later. For
+<span class="lineNum"> 71 </span> : * example, a variable @c B of type @c binder1st is constructed from a
+<span class="lineNum"> 72 </span> : * functor @c f and an argument @c x. Later, B's @c operator() is called
+<span class="lineNum"> 73 </span> : * with a single argument @c y. The return value is the value of @c f(x,y).
+<span class="lineNum"> 74 </span> : * @c B can be &quot;called&quot; with various arguments (y1, y2, ...) and will in
+<span class="lineNum"> 75 </span> : * turn call @c f(x,y1), @c f(x,y2), ...
+<span class="lineNum"> 76 </span> : *
+<span class="lineNum"> 77 </span> : * The function @c bind1st is provided to save some typing. It takes the
+<span class="lineNum"> 78 </span> : * function and an argument as parameters, and returns an instance of
+<span class="lineNum"> 79 </span> : * @c binder1st.
+<span class="lineNum"> 80 </span> : *
+<span class="lineNum"> 81 </span> : * The type @c binder2nd and its creator function @c bind2nd do the same
+<span class="lineNum"> 82 </span> : * thing, but the stored argument is passed as the second parameter instead
+<span class="lineNum"> 83 </span> : * of the first, e.g., @c bind2nd(std::minus&lt;float&gt;,1.3) will create a
+<span class="lineNum"> 84 </span> : * functor whose @c operator() accepts a floating-point number, subtracts
+<span class="lineNum"> 85 </span> : * 1.3 from it, and returns the result. (If @c bind1st had been used,
+<span class="lineNum"> 86 </span> : * the functor would perform &quot;1.3 - x&quot; instead.
+<span class="lineNum"> 87 </span> : *
+<span class="lineNum"> 88 </span> : * Creator-wrapper functions like @c bind1st are intended to be used in
+<span class="lineNum"> 89 </span> : * calling algorithms. Their return values will be temporary objects.
+<span class="lineNum"> 90 </span> : * (The goal is to not require you to type names like
+<span class="lineNum"> 91 </span> : * @c std::binder1st&lt;std::plus&lt;int&gt;&gt; for declaring a variable to hold the
+<span class="lineNum"> 92 </span> : * return value from @c bind1st(std::plus&lt;int&gt;,5).
+<span class="lineNum"> 93 </span> : *
+<span class="lineNum"> 94 </span> : * These become more useful when combined with the composition functions.
+<span class="lineNum"> 95 </span> : *
+<span class="lineNum"> 96 </span> : * @{
+<span class="lineNum"> 97 </span> : */
+<span class="lineNum"> 98 </span> : /// One of the @link s20_3_6_binder binder functors@endlink.
+<span class="lineNum"> 99 </span> : template&lt;typename _Operation&gt;
+<span class="lineNum"> 100 </span> : class binder1st
+<span class="lineNum"> 101 </span> : : public unary_function&lt;typename _Operation::second_argument_type,
+<span class="lineNum"> 102 </span> : typename _Operation::result_type&gt;
+<span class="lineNum"> 103 </span><span class="lineCov"> 16 : {</span>
+<span class="lineNum"> 104 </span> : protected:
+<span class="lineNum"> 105 </span> : _Operation op;
+<span class="lineNum"> 106 </span> : typename _Operation::first_argument_type value;
+<span class="lineNum"> 107 </span> :
+<span class="lineNum"> 108 </span> : public:
+<span class="lineNum"> 109 </span> : binder1st(const _Operation&amp; __x,
+<span class="lineNum"> 110 </span><span class="lineCov"> 19 : const typename _Operation::first_argument_type&amp; __y)</span>
+<span class="lineNum"> 111 </span><span class="lineCov"> 19 : : op(__x), value(__y) { }</span>
+<span class="lineNum"> 112 </span> :
+<span class="lineNum"> 113 </span> : typename _Operation::result_type
+<span class="lineNum"> 114 </span><span class="lineCov"> 70 : operator()(const typename _Operation::second_argument_type&amp; __x) const</span>
+<span class="lineNum"> 115 </span><span class="lineCov"> 70 : { return op(value, __x); }</span>
+<span class="lineNum"> 116 </span> :
+<span class="lineNum"> 117 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 118 </span> : // 109. Missing binders for non-const sequence elements
+<span class="lineNum"> 119 </span> : typename _Operation::result_type
+<span class="lineNum"> 120 </span> : operator()(typename _Operation::second_argument_type&amp; __x) const
+<span class="lineNum"> 121 </span> : { return op(value, __x); }
+<span class="lineNum"> 122 </span> : } _GLIBCXX_DEPRECATED_ATTR;
+<span class="lineNum"> 123 </span> :
+<span class="lineNum"> 124 </span> : /// One of the @link s20_3_6_binder binder functors@endlink.
+<span class="lineNum"> 125 </span> : template&lt;typename _Operation, typename _Tp&gt;
+<span class="lineNum"> 126 </span> : inline binder1st&lt;_Operation&gt;
+<span class="lineNum"> 127 </span><span class="lineCov"> 19 : bind1st(const _Operation&amp; __fn, const _Tp&amp; __x)</span>
+<span class="lineNum"> 128 </span> : {
+<span class="lineNum"> 129 </span> : typedef typename _Operation::first_argument_type _Arg1_type;
+<span class="lineNum"> 130 </span><span class="lineCov"> 19 : return binder1st&lt;_Operation&gt;(__fn, _Arg1_type(__x));</span>
+<span class="lineNum"> 131 </span> : }
+<span class="lineNum"> 132 </span> :
+<span class="lineNum"> 133 </span> : /// One of the @link s20_3_6_binder binder functors@endlink.
+<span class="lineNum"> 134 </span> : template&lt;typename _Operation&gt;
+<span class="lineNum"> 135 </span> : class binder2nd
+<span class="lineNum"> 136 </span> : : public unary_function&lt;typename _Operation::first_argument_type,
+<span class="lineNum"> 137 </span> : typename _Operation::result_type&gt;
+<span class="lineNum"> 138 </span> : {
+<span class="lineNum"> 139 </span> : protected:
+<span class="lineNum"> 140 </span> : _Operation op;
+<span class="lineNum"> 141 </span> : typename _Operation::second_argument_type value;
+<span class="lineNum"> 142 </span> :
+<span class="lineNum"> 143 </span> : public:
+<span class="lineNum"> 144 </span> : binder2nd(const _Operation&amp; __x,
+<span class="lineNum"> 145 </span> : const typename _Operation::second_argument_type&amp; __y)
+<span class="lineNum"> 146 </span> : : op(__x), value(__y) { }
+<span class="lineNum"> 147 </span> :
+<span class="lineNum"> 148 </span> : typename _Operation::result_type
+<span class="lineNum"> 149 </span> : operator()(const typename _Operation::first_argument_type&amp; __x) const
+<span class="lineNum"> 150 </span> : { return op(__x, value); }
+<span class="lineNum"> 151 </span> :
+<span class="lineNum"> 152 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 153 </span> : // 109. Missing binders for non-const sequence elements
+<span class="lineNum"> 154 </span> : typename _Operation::result_type
+<span class="lineNum"> 155 </span> : operator()(typename _Operation::first_argument_type&amp; __x) const
+<span class="lineNum"> 156 </span> : { return op(__x, value); }
+<span class="lineNum"> 157 </span> : } _GLIBCXX_DEPRECATED_ATTR;
+<span class="lineNum"> 158 </span> :
+<span class="lineNum"> 159 </span> : /// One of the @link s20_3_6_binder binder functors@endlink.
+<span class="lineNum"> 160 </span> : template&lt;typename _Operation, typename _Tp&gt;
+<span class="lineNum"> 161 </span> : inline binder2nd&lt;_Operation&gt;
+<span class="lineNum"> 162 </span> : bind2nd(const _Operation&amp; __fn, const _Tp&amp; __x)
+<span class="lineNum"> 163 </span> : {
+<span class="lineNum"> 164 </span> : typedef typename _Operation::second_argument_type _Arg2_type;
+<span class="lineNum"> 165 </span> : return binder2nd&lt;_Operation&gt;(__fn, _Arg2_type(__x));
+<span class="lineNum"> 166 </span> : }
+<span class="lineNum"> 167 </span> : /** @} */
+<span class="lineNum"> 168 </span> :
+<span class="lineNum"> 169 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 170 </span> :
+<span class="lineNum"> 171 </span> : #endif /* _GLIBCXX_BINDERS_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/backward/index.html b/rep/usr/include/c++/4.3/backward/index.html
new file mode 100644
index 0000000..3ef4b52
--- /dev/null
+++ b/rep/usr/include/c++/4.3/backward/index.html
@@ -0,0 +1,92 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/backward</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - /usr/include/c++/4.3/backward</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">22</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">22</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="auto_ptr.h.gcov.html">auto_ptr.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">15&nbsp;/&nbsp;15&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="binders.h.gcov.html">binders.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">7&nbsp;/&nbsp;7&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/allocator.h.gcov.html b/rep/usr/include/c++/4.3/bits/allocator.h.gcov.html
new file mode 100644
index 0000000..6f76dc6
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/allocator.h.gcov.html
@@ -0,0 +1,245 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/allocator.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - allocator.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">7</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">71.4 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">5</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Allocators -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 18 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 19 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 20 </span> : // USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /*
+<span class="lineNum"> 32 </span> : * Copyright (c) 1996-1997
+<span class="lineNum"> 33 </span> : * Silicon Graphics Computer Systems, Inc.
+<span class="lineNum"> 34 </span> : *
+<span class="lineNum"> 35 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 36 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 37 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 38 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 39 </span> : * in supporting documentation. Silicon Graphics makes no
+<span class="lineNum"> 40 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 41 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 42 </span> : */
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span> : /** @file allocator.h
+<span class="lineNum"> 45 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 46 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 47 </span> : */
+<span class="lineNum"> 48 </span> :
+<span class="lineNum"> 49 </span> : #ifndef _ALLOCATOR_H
+<span class="lineNum"> 50 </span> : #define _ALLOCATOR_H 1
+<span class="lineNum"> 51 </span> :
+<span class="lineNum"> 52 </span> : // Define the base class to std::allocator.
+<span class="lineNum"> 53 </span> : #include &lt;bits/c++allocator.h&gt;
+<span class="lineNum"> 54 </span> :
+<span class="lineNum"> 55 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 58 </span> : class allocator;
+<span class="lineNum"> 59 </span> :
+<span class="lineNum"> 60 </span> : /// allocator&lt;void&gt; specialization.
+<span class="lineNum"> 61 </span> : template&lt;&gt;
+<span class="lineNum"> 62 </span> : class allocator&lt;void&gt;
+<span class="lineNum"> 63 </span> : {
+<span class="lineNum"> 64 </span> : public:
+<span class="lineNum"> 65 </span> : typedef size_t size_type;
+<span class="lineNum"> 66 </span> : typedef ptrdiff_t difference_type;
+<span class="lineNum"> 67 </span> : typedef void* pointer;
+<span class="lineNum"> 68 </span> : typedef const void* const_pointer;
+<span class="lineNum"> 69 </span> : typedef void value_type;
+<span class="lineNum"> 70 </span> :
+<span class="lineNum"> 71 </span> : template&lt;typename _Tp1&gt;
+<span class="lineNum"> 72 </span> : struct rebind
+<span class="lineNum"> 73 </span> : { typedef allocator&lt;_Tp1&gt; other; };
+<span class="lineNum"> 74 </span> : };
+<span class="lineNum"> 75 </span> :
+<span class="lineNum"> 76 </span> : /**
+<span class="lineNum"> 77 </span> : * @brief The &quot;standard&quot; allocator, as per [20.4].
+<span class="lineNum"> 78 </span> : *
+<span class="lineNum"> 79 </span> : * Further details:
+<span class="lineNum"> 80 </span> : * http://gcc.gnu.org/onlinedocs/libstdc++/manual/bk01pt04ch11.html
+<span class="lineNum"> 81 </span> : */
+<span class="lineNum"> 82 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 83 </span> : class allocator: public __glibcxx_base_allocator&lt;_Tp&gt;
+<span class="lineNum"> 84 </span> : {
+<span class="lineNum"> 85 </span> : public:
+<span class="lineNum"> 86 </span> : typedef size_t size_type;
+<span class="lineNum"> 87 </span> : typedef ptrdiff_t difference_type;
+<span class="lineNum"> 88 </span> : typedef _Tp* pointer;
+<span class="lineNum"> 89 </span> : typedef const _Tp* const_pointer;
+<span class="lineNum"> 90 </span> : typedef _Tp&amp; reference;
+<span class="lineNum"> 91 </span> : typedef const _Tp&amp; const_reference;
+<span class="lineNum"> 92 </span> : typedef _Tp value_type;
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span> : template&lt;typename _Tp1&gt;
+<span class="lineNum"> 95 </span> : struct rebind
+<span class="lineNum"> 96 </span> : { typedef allocator&lt;_Tp1&gt; other; };
+<span class="lineNum"> 97 </span> :
+<span class="lineNum"> 98 </span><span class="lineCov"> 285441 : allocator() throw() { }</span>
+<span class="lineNum"> 99 </span> :
+<span class="lineNum"> 100 </span><span class="lineCov"> 934618 : allocator(const allocator&amp; __a) throw()</span>
+<span class="lineNum"> 101 </span><span class="lineCov"> 934618 : : __glibcxx_base_allocator&lt;_Tp&gt;(__a) { }</span>
+<span class="lineNum"> 102 </span> :
+<span class="lineNum"> 103 </span> : template&lt;typename _Tp1&gt;
+<span class="lineNum"> 104 </span><span class="lineCov"> 11289504 : allocator(const allocator&lt;_Tp1&gt;&amp;) throw() { }</span>
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span><span class="lineCov"> 12615289 : ~allocator() throw() { }</span>
+<span class="lineNum"> 107 </span> :
+<span class="lineNum"> 108 </span> : // Inherit everything else.
+<span class="lineNum"> 109 </span> : };
+<span class="lineNum"> 110 </span> :
+<span class="lineNum"> 111 </span> : template&lt;typename _T1, typename _T2&gt;
+<span class="lineNum"> 112 </span> : inline bool
+<span class="lineNum"> 113 </span> : operator==(const allocator&lt;_T1&gt;&amp;, const allocator&lt;_T2&gt;&amp;)
+<span class="lineNum"> 114 </span> : { return true; }
+<span class="lineNum"> 115 </span> :
+<span class="lineNum"> 116 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 117 </span> : inline bool
+<span class="lineNum"> 118 </span><span class="lineNoCov"> 0 : operator==(const allocator&lt;_Tp&gt;&amp;, const allocator&lt;_Tp&gt;&amp;)</span>
+<span class="lineNum"> 119 </span><span class="lineNoCov"> 0 : { return true; }</span>
+<span class="lineNum"> 120 </span> :
+<span class="lineNum"> 121 </span> : template&lt;typename _T1, typename _T2&gt;
+<span class="lineNum"> 122 </span> : inline bool
+<span class="lineNum"> 123 </span> : operator!=(const allocator&lt;_T1&gt;&amp;, const allocator&lt;_T2&gt;&amp;)
+<span class="lineNum"> 124 </span> : { return false; }
+<span class="lineNum"> 125 </span> :
+<span class="lineNum"> 126 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 127 </span> : inline bool
+<span class="lineNum"> 128 </span> : operator!=(const allocator&lt;_Tp&gt;&amp;, const allocator&lt;_Tp&gt;&amp;)
+<span class="lineNum"> 129 </span> : { return false; }
+<span class="lineNum"> 130 </span> :
+<span class="lineNum"> 131 </span> : // Inhibit implicit instantiations for required instantiations,
+<span class="lineNum"> 132 </span> : // which are defined via explicit instantiations elsewhere.
+<span class="lineNum"> 133 </span> : // NB: This syntax is a GNU extension.
+<span class="lineNum"> 134 </span> : #if _GLIBCXX_EXTERN_TEMPLATE
+<span class="lineNum"> 135 </span> : extern template class allocator&lt;char&gt;;
+<span class="lineNum"> 136 </span> : extern template class allocator&lt;wchar_t&gt;;
+<span class="lineNum"> 137 </span> : #endif
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> : // Undefine.
+<span class="lineNum"> 140 </span> : #undef __glibcxx_base_allocator
+<span class="lineNum"> 141 </span> :
+<span class="lineNum"> 142 </span> : // To implement Option 3 of DR 431.
+<span class="lineNum"> 143 </span> : template&lt;typename _Alloc, bool = __is_empty(_Alloc)&gt;
+<span class="lineNum"> 144 </span> : struct __alloc_swap
+<span class="lineNum"> 145 </span> : { static void _S_do_it(_Alloc&amp;, _Alloc&amp;) { } };
+<span class="lineNum"> 146 </span> :
+<span class="lineNum"> 147 </span> : template&lt;typename _Alloc&gt;
+<span class="lineNum"> 148 </span> : struct __alloc_swap&lt;_Alloc, false&gt;
+<span class="lineNum"> 149 </span> : {
+<span class="lineNum"> 150 </span> : static void
+<span class="lineNum"> 151 </span> : _S_do_it(_Alloc&amp; __one, _Alloc&amp; __two)
+<span class="lineNum"> 152 </span> : {
+<span class="lineNum"> 153 </span> : // Precondition: swappable allocators.
+<span class="lineNum"> 154 </span> : if (__one != __two)
+<span class="lineNum"> 155 </span> : swap(__one, __two);
+<span class="lineNum"> 156 </span> : }
+<span class="lineNum"> 157 </span> : };
+<span class="lineNum"> 158 </span> :
+<span class="lineNum"> 159 </span> : // Optimize for stateless allocators.
+<span class="lineNum"> 160 </span> : template&lt;typename _Alloc, bool = __is_empty(_Alloc)&gt;
+<span class="lineNum"> 161 </span> : struct __alloc_neq
+<span class="lineNum"> 162 </span> : {
+<span class="lineNum"> 163 </span> : static bool
+<span class="lineNum"> 164 </span> : _S_do_it(const _Alloc&amp;, const _Alloc&amp;)
+<span class="lineNum"> 165 </span> : { return false; }
+<span class="lineNum"> 166 </span> : };
+<span class="lineNum"> 167 </span> :
+<span class="lineNum"> 168 </span> : template&lt;typename _Alloc&gt;
+<span class="lineNum"> 169 </span> : struct __alloc_neq&lt;_Alloc, false&gt;
+<span class="lineNum"> 170 </span> : {
+<span class="lineNum"> 171 </span> : static bool
+<span class="lineNum"> 172 </span> : _S_do_it(const _Alloc&amp; __one, const _Alloc&amp; __two)
+<span class="lineNum"> 173 </span> : { return __one != __two; }
+<span class="lineNum"> 174 </span> : };
+<span class="lineNum"> 175 </span> :
+<span class="lineNum"> 176 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 177 </span> :
+<span class="lineNum"> 178 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/basic_ios.h.gcov.html b/rep/usr/include/c++/4.3/bits/basic_ios.h.gcov.html
new file mode 100644
index 0000000..a436d4e
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/basic_ios.h.gcov.html
@@ -0,0 +1,545 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/basic_ios.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - basic_ios.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">35</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">0.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">0</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Iostreams base classes -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+<span class="lineNum"> 4 </span> : // 2006, 2007, 2008
+<span class="lineNum"> 5 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 6 </span> : //
+<span class="lineNum"> 7 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 8 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 9 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 10 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 11 </span> : // any later version.
+<span class="lineNum"> 12 </span> :
+<span class="lineNum"> 13 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 14 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 15 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 16 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 17 </span> :
+<span class="lineNum"> 18 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 19 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 20 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 21 </span> : // USA.
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 24 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 25 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 26 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 27 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 28 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 29 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 30 </span> : // the GNU General Public License.
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : /** @file basic_ios.h
+<span class="lineNum"> 33 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 34 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 35 </span> : */
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : #ifndef _BASIC_IOS_H
+<span class="lineNum"> 38 </span> : #define _BASIC_IOS_H 1
+<span class="lineNum"> 39 </span> :
+<span class="lineNum"> 40 </span> : #pragma GCC system_header
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span> : #include &lt;bits/localefwd.h&gt;
+<span class="lineNum"> 43 </span> : #include &lt;bits/locale_classes.h&gt;
+<span class="lineNum"> 44 </span> : #include &lt;bits/locale_facets.h&gt;
+<span class="lineNum"> 45 </span> : #include &lt;bits/streambuf_iterator.h&gt;
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 48 </span> :
+<span class="lineNum"> 49 </span> : template&lt;typename _Facet&gt;
+<span class="lineNum"> 50 </span> : inline const _Facet&amp;
+<span class="lineNum"> 51 </span><span class="lineNoCov"> 0 : __check_facet(const _Facet* __f)</span>
+<span class="lineNum"> 52 </span> : {
+<span class="lineNum"> 53 </span><span class="lineNoCov"> 0 : if (!__f)</span>
+<span class="lineNum"> 54 </span><span class="lineNoCov"> 0 : __throw_bad_cast();</span>
+<span class="lineNum"> 55 </span><span class="lineNoCov"> 0 : return *__f;</span>
+<span class="lineNum"> 56 </span> : }
+<span class="lineNum"> 57 </span> :
+<span class="lineNum"> 58 </span> : // 27.4.5 Template class basic_ios
+<span class="lineNum"> 59 </span> : /**
+<span class="lineNum"> 60 </span> : * @brief Virtual base class for all stream classes.
+<span class="lineNum"> 61 </span> : *
+<span class="lineNum"> 62 </span> : * Most of the member functions called dispatched on stream objects
+<span class="lineNum"> 63 </span> : * (e.g., @c std::cout.foo(bar);) are consolidated in this class.
+<span class="lineNum"> 64 </span> : */
+<span class="lineNum"> 65 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 66 </span> : class basic_ios : public ios_base
+<span class="lineNum"> 67 </span> : {
+<span class="lineNum"> 68 </span> : public:
+<span class="lineNum"> 69 </span> : //@{
+<span class="lineNum"> 70 </span> : /**
+<span class="lineNum"> 71 </span> : * These are standard types. They permit a standardized way of
+<span class="lineNum"> 72 </span> : * referring to names of (or names dependant on) the template
+<span class="lineNum"> 73 </span> : * parameters, which are specific to the implementation.
+<span class="lineNum"> 74 </span> : */
+<span class="lineNum"> 75 </span> : typedef _CharT char_type;
+<span class="lineNum"> 76 </span> : typedef typename _Traits::int_type int_type;
+<span class="lineNum"> 77 </span> : typedef typename _Traits::pos_type pos_type;
+<span class="lineNum"> 78 </span> : typedef typename _Traits::off_type off_type;
+<span class="lineNum"> 79 </span> : typedef _Traits traits_type;
+<span class="lineNum"> 80 </span> : //@}
+<span class="lineNum"> 81 </span> :
+<span class="lineNum"> 82 </span> : //@{
+<span class="lineNum"> 83 </span> : /**
+<span class="lineNum"> 84 </span> : * These are non-standard types.
+<span class="lineNum"> 85 </span> : */
+<span class="lineNum"> 86 </span> : typedef ctype&lt;_CharT&gt; __ctype_type;
+<span class="lineNum"> 87 </span> : typedef num_put&lt;_CharT, ostreambuf_iterator&lt;_CharT, _Traits&gt; &gt;
+<span class="lineNum"> 88 </span> : __num_put_type;
+<span class="lineNum"> 89 </span> : typedef num_get&lt;_CharT, istreambuf_iterator&lt;_CharT, _Traits&gt; &gt;
+<span class="lineNum"> 90 </span> : __num_get_type;
+<span class="lineNum"> 91 </span> : //@}
+<span class="lineNum"> 92 </span> :
+<span class="lineNum"> 93 </span> : // Data members:
+<span class="lineNum"> 94 </span> : protected:
+<span class="lineNum"> 95 </span> : basic_ostream&lt;_CharT, _Traits&gt;* _M_tie;
+<span class="lineNum"> 96 </span> : mutable char_type _M_fill;
+<span class="lineNum"> 97 </span> : mutable bool _M_fill_init;
+<span class="lineNum"> 98 </span> : basic_streambuf&lt;_CharT, _Traits&gt;* _M_streambuf;
+<span class="lineNum"> 99 </span> :
+<span class="lineNum"> 100 </span> : // Cached use_facet&lt;ctype&gt;, which is based on the current locale info.
+<span class="lineNum"> 101 </span> : const __ctype_type* _M_ctype;
+<span class="lineNum"> 102 </span> : // For ostream.
+<span class="lineNum"> 103 </span> : const __num_put_type* _M_num_put;
+<span class="lineNum"> 104 </span> : // For istream.
+<span class="lineNum"> 105 </span> : const __num_get_type* _M_num_get;
+<span class="lineNum"> 106 </span> :
+<span class="lineNum"> 107 </span> : public:
+<span class="lineNum"> 108 </span> : //@{
+<span class="lineNum"> 109 </span> : /**
+<span class="lineNum"> 110 </span> : * @brief The quick-and-easy status check.
+<span class="lineNum"> 111 </span> : *
+<span class="lineNum"> 112 </span> : * This allows you to write constructs such as
+<span class="lineNum"> 113 </span> : * &quot;if (!a_stream) ...&quot; and &quot;while (a_stream) ...&quot;
+<span class="lineNum"> 114 </span> : */
+<span class="lineNum"> 115 </span><span class="lineNoCov"> 0 : operator void*() const</span>
+<span class="lineNum"> 116 </span><span class="lineNoCov"> 0 : { return this-&gt;fail() ? 0 : const_cast&lt;basic_ios*&gt;(this); }</span>
+<span class="lineNum"> 117 </span> :
+<span class="lineNum"> 118 </span> : bool
+<span class="lineNum"> 119 </span><span class="lineNoCov"> 0 : operator!() const</span>
+<span class="lineNum"> 120 </span><span class="lineNoCov"> 0 : { return this-&gt;fail(); }</span>
+<span class="lineNum"> 121 </span> : //@}
+<span class="lineNum"> 122 </span> :
+<span class="lineNum"> 123 </span> : /**
+<span class="lineNum"> 124 </span> : * @brief Returns the error state of the stream buffer.
+<span class="lineNum"> 125 </span> : * @return A bit pattern (well, isn't everything?)
+<span class="lineNum"> 126 </span> : *
+<span class="lineNum"> 127 </span> : * See std::ios_base::iostate for the possible bit values. Most
+<span class="lineNum"> 128 </span> : * users will call one of the interpreting wrappers, e.g., good().
+<span class="lineNum"> 129 </span> : */
+<span class="lineNum"> 130 </span> : iostate
+<span class="lineNum"> 131 </span><span class="lineNoCov"> 0 : rdstate() const</span>
+<span class="lineNum"> 132 </span><span class="lineNoCov"> 0 : { return _M_streambuf_state; }</span>
+<span class="lineNum"> 133 </span> :
+<span class="lineNum"> 134 </span> : /**
+<span class="lineNum"> 135 </span> : * @brief [Re]sets the error state.
+<span class="lineNum"> 136 </span> : * @param state The new state flag(s) to set.
+<span class="lineNum"> 137 </span> : *
+<span class="lineNum"> 138 </span> : * See std::ios_base::iostate for the possible bit values. Most
+<span class="lineNum"> 139 </span> : * users will not need to pass an argument.
+<span class="lineNum"> 140 </span> : */
+<span class="lineNum"> 141 </span> : void
+<span class="lineNum"> 142 </span> : clear(iostate __state = goodbit);
+<span class="lineNum"> 143 </span> :
+<span class="lineNum"> 144 </span> : /**
+<span class="lineNum"> 145 </span> : * @brief Sets additional flags in the error state.
+<span class="lineNum"> 146 </span> : * @param state The additional state flag(s) to set.
+<span class="lineNum"> 147 </span> : *
+<span class="lineNum"> 148 </span> : * See std::ios_base::iostate for the possible bit values.
+<span class="lineNum"> 149 </span> : */
+<span class="lineNum"> 150 </span> : void
+<span class="lineNum"> 151 </span><span class="lineNoCov"> 0 : setstate(iostate __state)</span>
+<span class="lineNum"> 152 </span><span class="lineNoCov"> 0 : { this-&gt;clear(this-&gt;rdstate() | __state); }</span>
+<span class="lineNum"> 153 </span> :
+<span class="lineNum"> 154 </span> : // Flip the internal state on for the proper state bits, then re
+<span class="lineNum"> 155 </span> : // throws the propagated exception if bit also set in
+<span class="lineNum"> 156 </span> : // exceptions().
+<span class="lineNum"> 157 </span> : void
+<span class="lineNum"> 158 </span> : _M_setstate(iostate __state)
+<span class="lineNum"> 159 </span> : {
+<span class="lineNum"> 160 </span> : // 27.6.1.2.1 Common requirements.
+<span class="lineNum"> 161 </span> : // Turn this on without causing an ios::failure to be thrown.
+<span class="lineNum"> 162 </span> : _M_streambuf_state |= __state;
+<span class="lineNum"> 163 </span> : if (this-&gt;exceptions() &amp; __state)
+<span class="lineNum"> 164 </span> : __throw_exception_again;
+<span class="lineNum"> 165 </span> : }
+<span class="lineNum"> 166 </span> :
+<span class="lineNum"> 167 </span> : /**
+<span class="lineNum"> 168 </span> : * @brief Fast error checking.
+<span class="lineNum"> 169 </span> : * @return True if no error flags are set.
+<span class="lineNum"> 170 </span> : *
+<span class="lineNum"> 171 </span> : * A wrapper around rdstate.
+<span class="lineNum"> 172 </span> : */
+<span class="lineNum"> 173 </span> : bool
+<span class="lineNum"> 174 </span><span class="lineNoCov"> 0 : good() const</span>
+<span class="lineNum"> 175 </span><span class="lineNoCov"> 0 : { return this-&gt;rdstate() == 0; }</span>
+<span class="lineNum"> 176 </span> :
+<span class="lineNum"> 177 </span> : /**
+<span class="lineNum"> 178 </span> : * @brief Fast error checking.
+<span class="lineNum"> 179 </span> : * @return True if the eofbit is set.
+<span class="lineNum"> 180 </span> : *
+<span class="lineNum"> 181 </span> : * Note that other iostate flags may also be set.
+<span class="lineNum"> 182 </span> : */
+<span class="lineNum"> 183 </span> : bool
+<span class="lineNum"> 184 </span><span class="lineNoCov"> 0 : eof() const</span>
+<span class="lineNum"> 185 </span><span class="lineNoCov"> 0 : { return (this-&gt;rdstate() &amp; eofbit) != 0; }</span>
+<span class="lineNum"> 186 </span> :
+<span class="lineNum"> 187 </span> : /**
+<span class="lineNum"> 188 </span> : * @brief Fast error checking.
+<span class="lineNum"> 189 </span> : * @return True if either the badbit or the failbit is set.
+<span class="lineNum"> 190 </span> : *
+<span class="lineNum"> 191 </span> : * Checking the badbit in fail() is historical practice.
+<span class="lineNum"> 192 </span> : * Note that other iostate flags may also be set.
+<span class="lineNum"> 193 </span> : */
+<span class="lineNum"> 194 </span> : bool
+<span class="lineNum"> 195 </span><span class="lineNoCov"> 0 : fail() const</span>
+<span class="lineNum"> 196 </span><span class="lineNoCov"> 0 : { return (this-&gt;rdstate() &amp; (badbit | failbit)) != 0; }</span>
+<span class="lineNum"> 197 </span> :
+<span class="lineNum"> 198 </span> : /**
+<span class="lineNum"> 199 </span> : * @brief Fast error checking.
+<span class="lineNum"> 200 </span> : * @return True if the badbit is set.
+<span class="lineNum"> 201 </span> : *
+<span class="lineNum"> 202 </span> : * Note that other iostate flags may also be set.
+<span class="lineNum"> 203 </span> : */
+<span class="lineNum"> 204 </span> : bool
+<span class="lineNum"> 205 </span> : bad() const
+<span class="lineNum"> 206 </span> : { return (this-&gt;rdstate() &amp; badbit) != 0; }
+<span class="lineNum"> 207 </span> :
+<span class="lineNum"> 208 </span> : /**
+<span class="lineNum"> 209 </span> : * @brief Throwing exceptions on errors.
+<span class="lineNum"> 210 </span> : * @return The current exceptions mask.
+<span class="lineNum"> 211 </span> : *
+<span class="lineNum"> 212 </span> : * This changes nothing in the stream. See the one-argument version
+<span class="lineNum"> 213 </span> : * of exceptions(iostate) for the meaning of the return value.
+<span class="lineNum"> 214 </span> : */
+<span class="lineNum"> 215 </span> : iostate
+<span class="lineNum"> 216 </span> : exceptions() const
+<span class="lineNum"> 217 </span> : { return _M_exception; }
+<span class="lineNum"> 218 </span> :
+<span class="lineNum"> 219 </span> : /**
+<span class="lineNum"> 220 </span> : * @brief Throwing exceptions on errors.
+<span class="lineNum"> 221 </span> : * @param except The new exceptions mask.
+<span class="lineNum"> 222 </span> : *
+<span class="lineNum"> 223 </span> : * By default, error flags are set silently. You can set an
+<span class="lineNum"> 224 </span> : * exceptions mask for each stream; if a bit in the mask becomes set
+<span class="lineNum"> 225 </span> : * in the error flags, then an exception of type
+<span class="lineNum"> 226 </span> : * std::ios_base::failure is thrown.
+<span class="lineNum"> 227 </span> : *
+<span class="lineNum"> 228 </span> : * If the error flag is already set when the exceptions mask is
+<span class="lineNum"> 229 </span> : * added, the exception is immediately thrown. Try running the
+<span class="lineNum"> 230 </span> : * following under GCC 3.1 or later:
+<span class="lineNum"> 231 </span> : * @code
+<span class="lineNum"> 232 </span> : * #include &lt;iostream&gt;
+<span class="lineNum"> 233 </span> : * #include &lt;fstream&gt;
+<span class="lineNum"> 234 </span> : * #include &lt;exception&gt;
+<span class="lineNum"> 235 </span> : *
+<span class="lineNum"> 236 </span> : * int main()
+<span class="lineNum"> 237 </span> : * {
+<span class="lineNum"> 238 </span> : * std::set_terminate (__gnu_cxx::__verbose_terminate_handler);
+<span class="lineNum"> 239 </span> : *
+<span class="lineNum"> 240 </span> : * std::ifstream f (&quot;/etc/motd&quot;);
+<span class="lineNum"> 241 </span> : *
+<span class="lineNum"> 242 </span> : * std::cerr &lt;&lt; &quot;Setting badbit\n&quot;;
+<span class="lineNum"> 243 </span> : * f.setstate (std::ios_base::badbit);
+<span class="lineNum"> 244 </span> : *
+<span class="lineNum"> 245 </span> : * std::cerr &lt;&lt; &quot;Setting exception mask\n&quot;;
+<span class="lineNum"> 246 </span> : * f.exceptions (std::ios_base::badbit);
+<span class="lineNum"> 247 </span> : * }
+<span class="lineNum"> 248 </span> : * @endcode
+<span class="lineNum"> 249 </span> : */
+<span class="lineNum"> 250 </span> : void
+<span class="lineNum"> 251 </span> : exceptions(iostate __except)
+<span class="lineNum"> 252 </span> : {
+<span class="lineNum"> 253 </span> : _M_exception = __except;
+<span class="lineNum"> 254 </span> : this-&gt;clear(_M_streambuf_state);
+<span class="lineNum"> 255 </span> : }
+<span class="lineNum"> 256 </span> :
+<span class="lineNum"> 257 </span> : // Constructor/destructor:
+<span class="lineNum"> 258 </span> : /**
+<span class="lineNum"> 259 </span> : * @brief Constructor performs initialization.
+<span class="lineNum"> 260 </span> : *
+<span class="lineNum"> 261 </span> : * The parameter is passed by derived streams.
+<span class="lineNum"> 262 </span> : */
+<span class="lineNum"> 263 </span> : explicit
+<span class="lineNum"> 264 </span> : basic_ios(basic_streambuf&lt;_CharT, _Traits&gt;* __sb)
+<span class="lineNum"> 265 </span> : : ios_base(), _M_tie(0), _M_fill(), _M_fill_init(false), _M_streambuf(0),
+<span class="lineNum"> 266 </span> : _M_ctype(0), _M_num_put(0), _M_num_get(0)
+<span class="lineNum"> 267 </span> : { this-&gt;init(__sb); }
+<span class="lineNum"> 268 </span> :
+<span class="lineNum"> 269 </span> : /**
+<span class="lineNum"> 270 </span> : * @brief Empty.
+<span class="lineNum"> 271 </span> : *
+<span class="lineNum"> 272 </span> : * The destructor does nothing. More specifically, it does not
+<span class="lineNum"> 273 </span> : * destroy the streambuf held by rdbuf().
+<span class="lineNum"> 274 </span> : */
+<span class="lineNum"> 275 </span> : virtual
+<span class="lineNum"> 276 </span><span class="lineNoCov"> 0 : ~basic_ios() { }</span>
+<span class="lineNum"> 277 </span> :
+<span class="lineNum"> 278 </span> : // Members:
+<span class="lineNum"> 279 </span> : /**
+<span class="lineNum"> 280 </span> : * @brief Fetches the current @e tied stream.
+<span class="lineNum"> 281 </span> : * @return A pointer to the tied stream, or NULL if the stream is
+<span class="lineNum"> 282 </span> : * not tied.
+<span class="lineNum"> 283 </span> : *
+<span class="lineNum"> 284 </span> : * A stream may be @e tied (or synchronized) to a second output
+<span class="lineNum"> 285 </span> : * stream. When this stream performs any I/O, the tied stream is
+<span class="lineNum"> 286 </span> : * first flushed. For example, @c std::cin is tied to @c std::cout.
+<span class="lineNum"> 287 </span> : */
+<span class="lineNum"> 288 </span> : basic_ostream&lt;_CharT, _Traits&gt;*
+<span class="lineNum"> 289 </span> : tie() const
+<span class="lineNum"> 290 </span> : { return _M_tie; }
+<span class="lineNum"> 291 </span> :
+<span class="lineNum"> 292 </span> : /**
+<span class="lineNum"> 293 </span> : * @brief Ties this stream to an output stream.
+<span class="lineNum"> 294 </span> : * @param tiestr The output stream.
+<span class="lineNum"> 295 </span> : * @return The previously tied output stream, or NULL if the stream
+<span class="lineNum"> 296 </span> : * was not tied.
+<span class="lineNum"> 297 </span> : *
+<span class="lineNum"> 298 </span> : * This sets up a new tie; see tie() for more.
+<span class="lineNum"> 299 </span> : */
+<span class="lineNum"> 300 </span> : basic_ostream&lt;_CharT, _Traits&gt;*
+<span class="lineNum"> 301 </span> : tie(basic_ostream&lt;_CharT, _Traits&gt;* __tiestr)
+<span class="lineNum"> 302 </span> : {
+<span class="lineNum"> 303 </span> : basic_ostream&lt;_CharT, _Traits&gt;* __old = _M_tie;
+<span class="lineNum"> 304 </span> : _M_tie = __tiestr;
+<span class="lineNum"> 305 </span> : return __old;
+<span class="lineNum"> 306 </span> : }
+<span class="lineNum"> 307 </span> :
+<span class="lineNum"> 308 </span> : /**
+<span class="lineNum"> 309 </span> : * @brief Accessing the underlying buffer.
+<span class="lineNum"> 310 </span> : * @return The current stream buffer.
+<span class="lineNum"> 311 </span> : *
+<span class="lineNum"> 312 </span> : * This does not change the state of the stream.
+<span class="lineNum"> 313 </span> : */
+<span class="lineNum"> 314 </span> : basic_streambuf&lt;_CharT, _Traits&gt;*
+<span class="lineNum"> 315 </span><span class="lineNoCov"> 0 : rdbuf() const</span>
+<span class="lineNum"> 316 </span><span class="lineNoCov"> 0 : { return _M_streambuf; }</span>
+<span class="lineNum"> 317 </span> :
+<span class="lineNum"> 318 </span> : /**
+<span class="lineNum"> 319 </span> : * @brief Changing the underlying buffer.
+<span class="lineNum"> 320 </span> : * @param sb The new stream buffer.
+<span class="lineNum"> 321 </span> : * @return The previous stream buffer.
+<span class="lineNum"> 322 </span> : *
+<span class="lineNum"> 323 </span> : * Associates a new buffer with the current stream, and clears the
+<span class="lineNum"> 324 </span> : * error state.
+<span class="lineNum"> 325 </span> : *
+<span class="lineNum"> 326 </span> : * Due to historical accidents which the LWG refuses to correct, the
+<span class="lineNum"> 327 </span> : * I/O library suffers from a design error: this function is hidden
+<span class="lineNum"> 328 </span> : * in derived classes by overrides of the zero-argument @c rdbuf(),
+<span class="lineNum"> 329 </span> : * which is non-virtual for hysterical raisins. As a result, you
+<span class="lineNum"> 330 </span> : * must use explicit qualifications to access this function via any
+<span class="lineNum"> 331 </span> : * derived class. For example:
+<span class="lineNum"> 332 </span> : *
+<span class="lineNum"> 333 </span> : * @code
+<span class="lineNum"> 334 </span> : * std::fstream foo; // or some other derived type
+<span class="lineNum"> 335 </span> : * std::streambuf* p = .....;
+<span class="lineNum"> 336 </span> : *
+<span class="lineNum"> 337 </span> : * foo.ios::rdbuf(p); // ios == basic_ios&lt;char&gt;
+<span class="lineNum"> 338 </span> : * @endcode
+<span class="lineNum"> 339 </span> : */
+<span class="lineNum"> 340 </span> : basic_streambuf&lt;_CharT, _Traits&gt;*
+<span class="lineNum"> 341 </span> : rdbuf(basic_streambuf&lt;_CharT, _Traits&gt;* __sb);
+<span class="lineNum"> 342 </span> :
+<span class="lineNum"> 343 </span> : /**
+<span class="lineNum"> 344 </span> : * @brief Copies fields of __rhs into this.
+<span class="lineNum"> 345 </span> : * @param __rhs The source values for the copies.
+<span class="lineNum"> 346 </span> : * @return Reference to this object.
+<span class="lineNum"> 347 </span> : *
+<span class="lineNum"> 348 </span> : * All fields of __rhs are copied into this object except that rdbuf()
+<span class="lineNum"> 349 </span> : * and rdstate() remain unchanged. All values in the pword and iword
+<span class="lineNum"> 350 </span> : * arrays are copied. Before copying, each callback is invoked with
+<span class="lineNum"> 351 </span> : * erase_event. After copying, each (new) callback is invoked with
+<span class="lineNum"> 352 </span> : * copyfmt_event. The final step is to copy exceptions().
+<span class="lineNum"> 353 </span> : */
+<span class="lineNum"> 354 </span> : basic_ios&amp;
+<span class="lineNum"> 355 </span> : copyfmt(const basic_ios&amp; __rhs);
+<span class="lineNum"> 356 </span> :
+<span class="lineNum"> 357 </span> : /**
+<span class="lineNum"> 358 </span> : * @brief Retrieves the &quot;empty&quot; character.
+<span class="lineNum"> 359 </span> : * @return The current fill character.
+<span class="lineNum"> 360 </span> : *
+<span class="lineNum"> 361 </span> : * It defaults to a space (' ') in the current locale.
+<span class="lineNum"> 362 </span> : */
+<span class="lineNum"> 363 </span> : char_type
+<span class="lineNum"> 364 </span><span class="lineNoCov"> 0 : fill() const</span>
+<span class="lineNum"> 365 </span> : {
+<span class="lineNum"> 366 </span><span class="lineNoCov"> 0 : if (!_M_fill_init)</span>
+<span class="lineNum"> 367 </span> : {
+<span class="lineNum"> 368 </span><span class="lineNoCov"> 0 : _M_fill = this-&gt;widen(' ');</span>
+<span class="lineNum"> 369 </span><span class="lineNoCov"> 0 : _M_fill_init = true;</span>
+<span class="lineNum"> 370 </span> : }
+<span class="lineNum"> 371 </span><span class="lineNoCov"> 0 : return _M_fill;</span>
+<span class="lineNum"> 372 </span> : }
+<span class="lineNum"> 373 </span> :
+<span class="lineNum"> 374 </span> : /**
+<span class="lineNum"> 375 </span> : * @brief Sets a new &quot;empty&quot; character.
+<span class="lineNum"> 376 </span> : * @param ch The new character.
+<span class="lineNum"> 377 </span> : * @return The previous fill character.
+<span class="lineNum"> 378 </span> : *
+<span class="lineNum"> 379 </span> : * The fill character is used to fill out space when P+ characters
+<span class="lineNum"> 380 </span> : * have been requested (e.g., via setw), Q characters are actually
+<span class="lineNum"> 381 </span> : * used, and Q&lt;P. It defaults to a space (' ') in the current locale.
+<span class="lineNum"> 382 </span> : */
+<span class="lineNum"> 383 </span> : char_type
+<span class="lineNum"> 384 </span><span class="lineNoCov"> 0 : fill(char_type __ch)</span>
+<span class="lineNum"> 385 </span> : {
+<span class="lineNum"> 386 </span><span class="lineNoCov"> 0 : char_type __old = this-&gt;fill();</span>
+<span class="lineNum"> 387 </span><span class="lineNoCov"> 0 : _M_fill = __ch;</span>
+<span class="lineNum"> 388 </span><span class="lineNoCov"> 0 : return __old;</span>
+<span class="lineNum"> 389 </span> : }
+<span class="lineNum"> 390 </span> :
+<span class="lineNum"> 391 </span> : // Locales:
+<span class="lineNum"> 392 </span> : /**
+<span class="lineNum"> 393 </span> : * @brief Moves to a new locale.
+<span class="lineNum"> 394 </span> : * @param loc The new locale.
+<span class="lineNum"> 395 </span> : * @return The previous locale.
+<span class="lineNum"> 396 </span> : *
+<span class="lineNum"> 397 </span> : * Calls @c ios_base::imbue(loc), and if a stream buffer is associated
+<span class="lineNum"> 398 </span> : * with this stream, calls that buffer's @c pubimbue(loc).
+<span class="lineNum"> 399 </span> : *
+<span class="lineNum"> 400 </span> : * Additional l10n notes are at
+<span class="lineNum"> 401 </span> : * http://gcc.gnu.org/onlinedocs/libstdc++/22_locale/howto.html
+<span class="lineNum"> 402 </span> : */
+<span class="lineNum"> 403 </span> : locale
+<span class="lineNum"> 404 </span> : imbue(const locale&amp; __loc);
+<span class="lineNum"> 405 </span> :
+<span class="lineNum"> 406 </span> : /**
+<span class="lineNum"> 407 </span> : * @brief Squeezes characters.
+<span class="lineNum"> 408 </span> : * @param c The character to narrow.
+<span class="lineNum"> 409 </span> : * @param dfault The character to narrow.
+<span class="lineNum"> 410 </span> : * @return The narrowed character.
+<span class="lineNum"> 411 </span> : *
+<span class="lineNum"> 412 </span> : * Maps a character of @c char_type to a character of @c char,
+<span class="lineNum"> 413 </span> : * if possible.
+<span class="lineNum"> 414 </span> : *
+<span class="lineNum"> 415 </span> : * Returns the result of
+<span class="lineNum"> 416 </span> : * @code
+<span class="lineNum"> 417 </span> : * std::use_facet&lt;ctype&lt;char_type&gt; &gt;(getloc()).narrow(c,dfault)
+<span class="lineNum"> 418 </span> : * @endcode
+<span class="lineNum"> 419 </span> : *
+<span class="lineNum"> 420 </span> : * Additional l10n notes are at
+<span class="lineNum"> 421 </span> : * http://gcc.gnu.org/onlinedocs/libstdc++/22_locale/howto.html
+<span class="lineNum"> 422 </span> : */
+<span class="lineNum"> 423 </span> : char
+<span class="lineNum"> 424 </span> : narrow(char_type __c, char __dfault) const
+<span class="lineNum"> 425 </span> : { return __check_facet(_M_ctype).narrow(__c, __dfault); }
+<span class="lineNum"> 426 </span> :
+<span class="lineNum"> 427 </span> : /**
+<span class="lineNum"> 428 </span> : * @brief Widens characters.
+<span class="lineNum"> 429 </span> : * @param c The character to widen.
+<span class="lineNum"> 430 </span> : * @return The widened character.
+<span class="lineNum"> 431 </span> : *
+<span class="lineNum"> 432 </span> : * Maps a character of @c char to a character of @c char_type.
+<span class="lineNum"> 433 </span> : *
+<span class="lineNum"> 434 </span> : * Returns the result of
+<span class="lineNum"> 435 </span> : * @code
+<span class="lineNum"> 436 </span> : * std::use_facet&lt;ctype&lt;char_type&gt; &gt;(getloc()).widen(c)
+<span class="lineNum"> 437 </span> : * @endcode
+<span class="lineNum"> 438 </span> : *
+<span class="lineNum"> 439 </span> : * Additional l10n notes are at
+<span class="lineNum"> 440 </span> : * http://gcc.gnu.org/onlinedocs/libstdc++/22_locale/howto.html
+<span class="lineNum"> 441 </span> : */
+<span class="lineNum"> 442 </span> : char_type
+<span class="lineNum"> 443 </span><span class="lineNoCov"> 0 : widen(char __c) const</span>
+<span class="lineNum"> 444 </span><span class="lineNoCov"> 0 : { return __check_facet(_M_ctype).widen(__c); }</span>
+<span class="lineNum"> 445 </span> :
+<span class="lineNum"> 446 </span> : protected:
+<span class="lineNum"> 447 </span> : // 27.4.5.1 basic_ios constructors
+<span class="lineNum"> 448 </span> : /**
+<span class="lineNum"> 449 </span> : * @brief Empty.
+<span class="lineNum"> 450 </span> : *
+<span class="lineNum"> 451 </span> : * The default constructor does nothing and is not normally
+<span class="lineNum"> 452 </span> : * accessible to users.
+<span class="lineNum"> 453 </span> : */
+<span class="lineNum"> 454 </span><span class="lineNoCov"> 0 : basic_ios()</span>
+<span class="lineNum"> 455 </span> : : ios_base(), _M_tie(0), _M_fill(char_type()), _M_fill_init(false),
+<span class="lineNum"> 456 </span><span class="lineNoCov"> 0 : _M_streambuf(0), _M_ctype(0), _M_num_put(0), _M_num_get(0)</span>
+<span class="lineNum"> 457 </span><span class="lineNoCov"> 0 : { }</span>
+<span class="lineNum"> 458 </span> :
+<span class="lineNum"> 459 </span> : /**
+<span class="lineNum"> 460 </span> : * @brief All setup is performed here.
+<span class="lineNum"> 461 </span> : *
+<span class="lineNum"> 462 </span> : * This is called from the public constructor. It is not virtual and
+<span class="lineNum"> 463 </span> : * cannot be redefined.
+<span class="lineNum"> 464 </span> : */
+<span class="lineNum"> 465 </span> : void
+<span class="lineNum"> 466 </span> : init(basic_streambuf&lt;_CharT, _Traits&gt;* __sb);
+<span class="lineNum"> 467 </span> :
+<span class="lineNum"> 468 </span> : void
+<span class="lineNum"> 469 </span> : _M_cache_locale(const locale&amp; __loc);
+<span class="lineNum"> 470 </span> : };
+<span class="lineNum"> 471 </span> :
+<span class="lineNum"> 472 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 473 </span> :
+<span class="lineNum"> 474 </span> : #ifndef _GLIBCXX_EXPORT_TEMPLATE
+<span class="lineNum"> 475 </span> : #include &lt;bits/basic_ios.tcc&gt;
+<span class="lineNum"> 476 </span> : #endif
+<span class="lineNum"> 477 </span> :
+<span class="lineNum"> 478 </span> : #endif /* _BASIC_IOS_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/basic_string.h.gcov.html b/rep/usr/include/c++/4.3/bits/basic_string.h.gcov.html
new file mode 100644
index 0000000..909cd58
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/basic_string.h.gcov.html
@@ -0,0 +1,2545 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/basic_string.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - basic_string.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">178</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">17.4 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">31</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Components for manipulating sequences of characters -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+<span class="lineNum"> 4 </span> : // 2006, 2007, 2008
+<span class="lineNum"> 5 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 6 </span> : //
+<span class="lineNum"> 7 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 8 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 9 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 10 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 11 </span> : // any later version.
+<span class="lineNum"> 12 </span> :
+<span class="lineNum"> 13 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 14 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 15 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 16 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 17 </span> :
+<span class="lineNum"> 18 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 19 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 20 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 21 </span> : // USA.
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 24 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 25 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 26 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 27 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 28 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 29 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 30 </span> : // the GNU General Public License.
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : /** @file basic_string.h
+<span class="lineNum"> 33 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 34 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 35 </span> : */
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : //
+<span class="lineNum"> 38 </span> : // ISO C++ 14882: 21 Strings library
+<span class="lineNum"> 39 </span> : //
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : #ifndef _BASIC_STRING_H
+<span class="lineNum"> 42 </span> : #define _BASIC_STRING_H 1
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span> : #pragma GCC system_header
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> : #include &lt;ext/atomicity.h&gt;
+<span class="lineNum"> 47 </span> : #include &lt;debug/debug.h&gt;
+<span class="lineNum"> 48 </span> :
+<span class="lineNum"> 49 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> : /**
+<span class="lineNum"> 52 </span> : * @class basic_string basic_string.h &lt;string&gt;
+<span class="lineNum"> 53 </span> : * @brief Managing sequences of characters and character-like objects.
+<span class="lineNum"> 54 </span> : *
+<span class="lineNum"> 55 </span> : * @ingroup Containers
+<span class="lineNum"> 56 </span> : * @ingroup Sequences
+<span class="lineNum"> 57 </span> : *
+<span class="lineNum"> 58 </span> : * Meets the requirements of a &lt;a href=&quot;tables.html#65&quot;&gt;container&lt;/a&gt;, a
+<span class="lineNum"> 59 </span> : * &lt;a href=&quot;tables.html#66&quot;&gt;reversible container&lt;/a&gt;, and a
+<span class="lineNum"> 60 </span> : * &lt;a href=&quot;tables.html#67&quot;&gt;sequence&lt;/a&gt;. Of the
+<span class="lineNum"> 61 </span> : * &lt;a href=&quot;tables.html#68&quot;&gt;optional sequence requirements&lt;/a&gt;, only
+<span class="lineNum"> 62 </span> : * @c push_back, @c at, and array access are supported.
+<span class="lineNum"> 63 </span> : *
+<span class="lineNum"> 64 </span> : * @doctodo
+<span class="lineNum"> 65 </span> : *
+<span class="lineNum"> 66 </span> : *
+<span class="lineNum"> 67 </span> : * Documentation? What's that?
+<span class="lineNum"> 68 </span> : * Nathan Myers &lt;ncm@cantrip.org&gt;.
+<span class="lineNum"> 69 </span> : *
+<span class="lineNum"> 70 </span> : * A string looks like this:
+<span class="lineNum"> 71 </span> : *
+<span class="lineNum"> 72 </span> : * @code
+<span class="lineNum"> 73 </span> : * [_Rep]
+<span class="lineNum"> 74 </span> : * _M_length
+<span class="lineNum"> 75 </span> : * [basic_string&lt;char_type&gt;] _M_capacity
+<span class="lineNum"> 76 </span> : * _M_dataplus _M_refcount
+<span class="lineNum"> 77 </span> : * _M_p ----------------&gt; unnamed array of char_type
+<span class="lineNum"> 78 </span> : * @endcode
+<span class="lineNum"> 79 </span> : *
+<span class="lineNum"> 80 </span> : * Where the _M_p points to the first character in the string, and
+<span class="lineNum"> 81 </span> : * you cast it to a pointer-to-_Rep and subtract 1 to get a
+<span class="lineNum"> 82 </span> : * pointer to the header.
+<span class="lineNum"> 83 </span> : *
+<span class="lineNum"> 84 </span> : * This approach has the enormous advantage that a string object
+<span class="lineNum"> 85 </span> : * requires only one allocation. All the ugliness is confined
+<span class="lineNum"> 86 </span> : * within a single pair of inline functions, which each compile to
+<span class="lineNum"> 87 </span> : * a single &quot;add&quot; instruction: _Rep::_M_data(), and
+<span class="lineNum"> 88 </span> : * string::_M_rep(); and the allocation function which gets a
+<span class="lineNum"> 89 </span> : * block of raw bytes and with room enough and constructs a _Rep
+<span class="lineNum"> 90 </span> : * object at the front.
+<span class="lineNum"> 91 </span> : *
+<span class="lineNum"> 92 </span> : * The reason you want _M_data pointing to the character array and
+<span class="lineNum"> 93 </span> : * not the _Rep is so that the debugger can see the string
+<span class="lineNum"> 94 </span> : * contents. (Probably we should add a non-inline member to get
+<span class="lineNum"> 95 </span> : * the _Rep for the debugger to use, so users can check the actual
+<span class="lineNum"> 96 </span> : * string length.)
+<span class="lineNum"> 97 </span> : *
+<span class="lineNum"> 98 </span> : * Note that the _Rep object is a POD so that you can have a
+<span class="lineNum"> 99 </span> : * static &quot;empty string&quot; _Rep object already &quot;constructed&quot; before
+<span class="lineNum"> 100 </span> : * static constructors have run. The reference-count encoding is
+<span class="lineNum"> 101 </span> : * chosen so that a 0 indicates one reference, so you never try to
+<span class="lineNum"> 102 </span> : * destroy the empty-string _Rep object.
+<span class="lineNum"> 103 </span> : *
+<span class="lineNum"> 104 </span> : * All but the last paragraph is considered pretty conventional
+<span class="lineNum"> 105 </span> : * for a C++ string implementation.
+<span class="lineNum"> 106 </span> : */
+<span class="lineNum"> 107 </span> : // 21.3 Template class basic_string
+<span class="lineNum"> 108 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 109 </span> : class basic_string
+<span class="lineNum"> 110 </span> : {
+<span class="lineNum"> 111 </span> : typedef typename _Alloc::template rebind&lt;_CharT&gt;::other _CharT_alloc_type;
+<span class="lineNum"> 112 </span> :
+<span class="lineNum"> 113 </span> : // Types:
+<span class="lineNum"> 114 </span> : public:
+<span class="lineNum"> 115 </span> : typedef _Traits traits_type;
+<span class="lineNum"> 116 </span> : typedef typename _Traits::char_type value_type;
+<span class="lineNum"> 117 </span> : typedef _Alloc allocator_type;
+<span class="lineNum"> 118 </span> : typedef typename _CharT_alloc_type::size_type size_type;
+<span class="lineNum"> 119 </span> : typedef typename _CharT_alloc_type::difference_type difference_type;
+<span class="lineNum"> 120 </span> : typedef typename _CharT_alloc_type::reference reference;
+<span class="lineNum"> 121 </span> : typedef typename _CharT_alloc_type::const_reference const_reference;
+<span class="lineNum"> 122 </span> : typedef typename _CharT_alloc_type::pointer pointer;
+<span class="lineNum"> 123 </span> : typedef typename _CharT_alloc_type::const_pointer const_pointer;
+<span class="lineNum"> 124 </span> : typedef __gnu_cxx::__normal_iterator&lt;pointer, basic_string&gt; iterator;
+<span class="lineNum"> 125 </span> : typedef __gnu_cxx::__normal_iterator&lt;const_pointer, basic_string&gt;
+<span class="lineNum"> 126 </span> : const_iterator;
+<span class="lineNum"> 127 </span> : typedef std::reverse_iterator&lt;const_iterator&gt; const_reverse_iterator;
+<span class="lineNum"> 128 </span> : typedef std::reverse_iterator&lt;iterator&gt; reverse_iterator;
+<span class="lineNum"> 129 </span> :
+<span class="lineNum"> 130 </span> : private:
+<span class="lineNum"> 131 </span> : // _Rep: string representation
+<span class="lineNum"> 132 </span> : // Invariants:
+<span class="lineNum"> 133 </span> : // 1. String really contains _M_length + 1 characters: due to 21.3.4
+<span class="lineNum"> 134 </span> : // must be kept null-terminated.
+<span class="lineNum"> 135 </span> : // 2. _M_capacity &gt;= _M_length
+<span class="lineNum"> 136 </span> : // Allocated memory is always (_M_capacity + 1) * sizeof(_CharT).
+<span class="lineNum"> 137 </span> : // 3. _M_refcount has three states:
+<span class="lineNum"> 138 </span> : // -1: leaked, one reference, no ref-copies allowed, non-const.
+<span class="lineNum"> 139 </span> : // 0: one reference, non-const.
+<span class="lineNum"> 140 </span> : // n&gt;0: n + 1 references, operations require a lock, const.
+<span class="lineNum"> 141 </span> : // 4. All fields==0 is an empty string, given the extra storage
+<span class="lineNum"> 142 </span> : // beyond-the-end for a null terminator; thus, the shared
+<span class="lineNum"> 143 </span> : // empty string representation needs no constructor.
+<span class="lineNum"> 144 </span> :
+<span class="lineNum"> 145 </span> : struct _Rep_base
+<span class="lineNum"> 146 </span> : {
+<span class="lineNum"> 147 </span> : size_type _M_length;
+<span class="lineNum"> 148 </span> : size_type _M_capacity;
+<span class="lineNum"> 149 </span> : _Atomic_word _M_refcount;
+<span class="lineNum"> 150 </span> : };
+<span class="lineNum"> 151 </span> :
+<span class="lineNum"> 152 </span> : struct _Rep : _Rep_base
+<span class="lineNum"> 153 </span> : {
+<span class="lineNum"> 154 </span> : // Types:
+<span class="lineNum"> 155 </span> : typedef typename _Alloc::template rebind&lt;char&gt;::other _Raw_bytes_alloc;
+<span class="lineNum"> 156 </span> :
+<span class="lineNum"> 157 </span> : // (Public) Data members:
+<span class="lineNum"> 158 </span> :
+<span class="lineNum"> 159 </span> : // The maximum number of individual char_type elements of an
+<span class="lineNum"> 160 </span> : // individual string is determined by _S_max_size. This is the
+<span class="lineNum"> 161 </span> : // value that will be returned by max_size(). (Whereas npos
+<span class="lineNum"> 162 </span> : // is the maximum number of bytes the allocator can allocate.)
+<span class="lineNum"> 163 </span> : // If one was to divvy up the theoretical largest size string,
+<span class="lineNum"> 164 </span> : // with a terminating character and m _CharT elements, it'd
+<span class="lineNum"> 165 </span> : // look like this:
+<span class="lineNum"> 166 </span> : // npos = sizeof(_Rep) + (m * sizeof(_CharT)) + sizeof(_CharT)
+<span class="lineNum"> 167 </span> : // Solving for m:
+<span class="lineNum"> 168 </span> : // m = ((npos - sizeof(_Rep))/sizeof(CharT)) - 1
+<span class="lineNum"> 169 </span> : // In addition, this implementation quarters this amount.
+<span class="lineNum"> 170 </span> : static const size_type _S_max_size;
+<span class="lineNum"> 171 </span> : static const _CharT _S_terminal;
+<span class="lineNum"> 172 </span> :
+<span class="lineNum"> 173 </span> : // The following storage is init'd to 0 by the linker, resulting
+<span class="lineNum"> 174 </span> : // (carefully) in an empty string with one reference.
+<span class="lineNum"> 175 </span> : static size_type _S_empty_rep_storage[];
+<span class="lineNum"> 176 </span> :
+<span class="lineNum"> 177 </span> : static _Rep&amp;
+<span class="lineNum"> 178 </span><span class="lineNoCov"> 0 : _S_empty_rep()</span>
+<span class="lineNum"> 179 </span> : {
+<span class="lineNum"> 180 </span> : // NB: Mild hack to avoid strict-aliasing warnings. Note that
+<span class="lineNum"> 181 </span> : // _S_empty_rep_storage is never modified and the punning should
+<span class="lineNum"> 182 </span> : // be reasonably safe in this case.
+<span class="lineNum"> 183 </span><span class="lineNoCov"> 0 : void* __p = reinterpret_cast&lt;void*&gt;(&amp;_S_empty_rep_storage);</span>
+<span class="lineNum"> 184 </span><span class="lineNoCov"> 0 : return *reinterpret_cast&lt;_Rep*&gt;(__p);</span>
+<span class="lineNum"> 185 </span> : }
+<span class="lineNum"> 186 </span> :
+<span class="lineNum"> 187 </span> : bool
+<span class="lineNum"> 188 </span><span class="lineNoCov"> 0 : _M_is_leaked() const</span>
+<span class="lineNum"> 189 </span><span class="lineNoCov"> 0 : { return this-&gt;_M_refcount &lt; 0; }</span>
+<span class="lineNum"> 190 </span> :
+<span class="lineNum"> 191 </span> : bool
+<span class="lineNum"> 192 </span><span class="lineNoCov"> 0 : _M_is_shared() const</span>
+<span class="lineNum"> 193 </span><span class="lineNoCov"> 0 : { return this-&gt;_M_refcount &gt; 0; }</span>
+<span class="lineNum"> 194 </span> :
+<span class="lineNum"> 195 </span> : void
+<span class="lineNum"> 196 </span><span class="lineNoCov"> 0 : _M_set_leaked()</span>
+<span class="lineNum"> 197 </span><span class="lineNoCov"> 0 : { this-&gt;_M_refcount = -1; }</span>
+<span class="lineNum"> 198 </span> :
+<span class="lineNum"> 199 </span> : void
+<span class="lineNum"> 200 </span><span class="lineNoCov"> 0 : _M_set_sharable()</span>
+<span class="lineNum"> 201 </span><span class="lineNoCov"> 0 : { this-&gt;_M_refcount = 0; }</span>
+<span class="lineNum"> 202 </span> :
+<span class="lineNum"> 203 </span> : void
+<span class="lineNum"> 204 </span><span class="lineNoCov"> 0 : _M_set_length_and_sharable(size_type __n)</span>
+<span class="lineNum"> 205 </span> : {
+<span class="lineNum"> 206 </span><span class="lineNoCov"> 0 : this-&gt;_M_set_sharable(); // One reference.</span>
+<span class="lineNum"> 207 </span><span class="lineNoCov"> 0 : this-&gt;_M_length = __n;</span>
+<span class="lineNum"> 208 </span><span class="lineNoCov"> 0 : traits_type::assign(this-&gt;_M_refdata()[__n], _S_terminal);</span>
+<span class="lineNum"> 209 </span> : // grrr. (per 21.3.4)
+<span class="lineNum"> 210 </span> : // You cannot leave those LWG people alone for a second.
+<span class="lineNum"> 211 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 212 </span> :
+<span class="lineNum"> 213 </span> : _CharT*
+<span class="lineNum"> 214 </span><span class="lineNoCov"> 0 : _M_refdata() throw()</span>
+<span class="lineNum"> 215 </span><span class="lineNoCov"> 0 : { return reinterpret_cast&lt;_CharT*&gt;(this + 1); }</span>
+<span class="lineNum"> 216 </span> :
+<span class="lineNum"> 217 </span> : _CharT*
+<span class="lineNum"> 218 </span> : _M_grab(const _Alloc&amp; __alloc1, const _Alloc&amp; __alloc2)
+<span class="lineNum"> 219 </span> : {
+<span class="lineNum"> 220 </span> : return (!_M_is_leaked() &amp;&amp; __alloc1 == __alloc2)
+<span class="lineNum"> 221 </span> : ? _M_refcopy() : _M_clone(__alloc1);
+<span class="lineNum"> 222 </span> : }
+<span class="lineNum"> 223 </span> :
+<span class="lineNum"> 224 </span> : // Create &amp; Destroy
+<span class="lineNum"> 225 </span> : static _Rep*
+<span class="lineNum"> 226 </span> : _S_create(size_type, size_type, const _Alloc&amp;);
+<span class="lineNum"> 227 </span> :
+<span class="lineNum"> 228 </span> : void
+<span class="lineNum"> 229 </span><span class="lineNoCov"> 0 : _M_dispose(const _Alloc&amp; __a)</span>
+<span class="lineNum"> 230 </span> : {
+<span class="lineNum"> 231 </span> : #ifndef _GLIBCXX_FULLY_DYNAMIC_STRING
+<span class="lineNum"> 232 </span><span class="lineNoCov"> 0 : if (__builtin_expect(this != &amp;_S_empty_rep(), false))</span>
+<span class="lineNum"> 233 </span> : #endif
+<span class="lineNum"> 234 </span><span class="lineNoCov"> 0 : if (__gnu_cxx::__exchange_and_add_dispatch(&amp;this-&gt;_M_refcount,</span>
+<span class="lineNum"> 235 </span> : -1) &lt;= 0)
+<span class="lineNum"> 236 </span><span class="lineNoCov"> 0 : _M_destroy(__a);</span>
+<span class="lineNum"> 237 </span><span class="lineNoCov"> 0 : } // XXX MT</span>
+<span class="lineNum"> 238 </span> :
+<span class="lineNum"> 239 </span> : void
+<span class="lineNum"> 240 </span> : _M_destroy(const _Alloc&amp;) throw();
+<span class="lineNum"> 241 </span> :
+<span class="lineNum"> 242 </span> : _CharT*
+<span class="lineNum"> 243 </span> : _M_refcopy() throw()
+<span class="lineNum"> 244 </span> : {
+<span class="lineNum"> 245 </span> : #ifndef _GLIBCXX_FULLY_DYNAMIC_STRING
+<span class="lineNum"> 246 </span> : if (__builtin_expect(this != &amp;_S_empty_rep(), false))
+<span class="lineNum"> 247 </span> : #endif
+<span class="lineNum"> 248 </span> : __gnu_cxx::__atomic_add_dispatch(&amp;this-&gt;_M_refcount, 1);
+<span class="lineNum"> 249 </span> : return _M_refdata();
+<span class="lineNum"> 250 </span> : } // XXX MT
+<span class="lineNum"> 251 </span> :
+<span class="lineNum"> 252 </span> : _CharT*
+<span class="lineNum"> 253 </span> : _M_clone(const _Alloc&amp;, size_type __res = 0);
+<span class="lineNum"> 254 </span> : };
+<span class="lineNum"> 255 </span> :
+<span class="lineNum"> 256 </span> : // Use empty-base optimization: http://www.cantrip.org/emptyopt.html
+<span class="lineNum"> 257 </span> : struct _Alloc_hider : _Alloc
+<span class="lineNum"> 258 </span><span class="lineNoCov"> 0 : {</span>
+<span class="lineNum"> 259 </span><span class="lineNoCov"> 0 : _Alloc_hider(_CharT* __dat, const _Alloc&amp; __a)</span>
+<span class="lineNum"> 260 </span><span class="lineNoCov"> 0 : : _Alloc(__a), _M_p(__dat) { }</span>
+<span class="lineNum"> 261 </span> :
+<span class="lineNum"> 262 </span> : _CharT* _M_p; // The actual data.
+<span class="lineNum"> 263 </span> : };
+<span class="lineNum"> 264 </span> :
+<span class="lineNum"> 265 </span> : public:
+<span class="lineNum"> 266 </span> : // Data Members (public):
+<span class="lineNum"> 267 </span> : // NB: This is an unsigned type, and thus represents the maximum
+<span class="lineNum"> 268 </span> : // size that the allocator can hold.
+<span class="lineNum"> 269 </span> : /// Value returned by various member functions when they fail.
+<span class="lineNum"> 270 </span> : static const size_type npos = static_cast&lt;size_type&gt;(-1);
+<span class="lineNum"> 271 </span> :
+<span class="lineNum"> 272 </span> : private:
+<span class="lineNum"> 273 </span> : // Data Members (private):
+<span class="lineNum"> 274 </span> : mutable _Alloc_hider _M_dataplus;
+<span class="lineNum"> 275 </span> :
+<span class="lineNum"> 276 </span> : _CharT*
+<span class="lineNum"> 277 </span><span class="lineNoCov"> 0 : _M_data() const</span>
+<span class="lineNum"> 278 </span><span class="lineNoCov"> 0 : { return _M_dataplus._M_p; }</span>
+<span class="lineNum"> 279 </span> :
+<span class="lineNum"> 280 </span> : _CharT*
+<span class="lineNum"> 281 </span> : _M_data(_CharT* __p)
+<span class="lineNum"> 282 </span> : { return (_M_dataplus._M_p = __p); }
+<span class="lineNum"> 283 </span> :
+<span class="lineNum"> 284 </span> : _Rep*
+<span class="lineNum"> 285 </span><span class="lineNoCov"> 0 : _M_rep() const</span>
+<span class="lineNum"> 286 </span><span class="lineNoCov"> 0 : { return &amp;((reinterpret_cast&lt;_Rep*&gt; (_M_data()))[-1]); }</span>
+<span class="lineNum"> 287 </span> :
+<span class="lineNum"> 288 </span> : // For the internal use we have functions similar to `begin'/`end'
+<span class="lineNum"> 289 </span> : // but they do not call _M_leak.
+<span class="lineNum"> 290 </span> : iterator
+<span class="lineNum"> 291 </span><span class="lineNoCov"> 0 : _M_ibegin() const</span>
+<span class="lineNum"> 292 </span><span class="lineNoCov"> 0 : { return iterator(_M_data()); }</span>
+<span class="lineNum"> 293 </span> :
+<span class="lineNum"> 294 </span> : iterator
+<span class="lineNum"> 295 </span> : _M_iend() const
+<span class="lineNum"> 296 </span> : { return iterator(_M_data() + this-&gt;size()); }
+<span class="lineNum"> 297 </span> :
+<span class="lineNum"> 298 </span> : void
+<span class="lineNum"> 299 </span><span class="lineNoCov"> 0 : _M_leak() // for use in begin() &amp; non-const op[]</span>
+<span class="lineNum"> 300 </span> : {
+<span class="lineNum"> 301 </span><span class="lineNoCov"> 0 : if (!_M_rep()-&gt;_M_is_leaked())</span>
+<span class="lineNum"> 302 </span><span class="lineNoCov"> 0 : _M_leak_hard();</span>
+<span class="lineNum"> 303 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 304 </span> :
+<span class="lineNum"> 305 </span> : size_type
+<span class="lineNum"> 306 </span><span class="lineNoCov"> 0 : _M_check(size_type __pos, const char* __s) const</span>
+<span class="lineNum"> 307 </span> : {
+<span class="lineNum"> 308 </span><span class="lineNoCov"> 0 : if (__pos &gt; this-&gt;size())</span>
+<span class="lineNum"> 309 </span><span class="lineNoCov"> 0 : __throw_out_of_range(__N(__s));</span>
+<span class="lineNum"> 310 </span><span class="lineNoCov"> 0 : return __pos;</span>
+<span class="lineNum"> 311 </span> : }
+<span class="lineNum"> 312 </span> :
+<span class="lineNum"> 313 </span> : void
+<span class="lineNum"> 314 </span> : _M_check_length(size_type __n1, size_type __n2, const char* __s) const
+<span class="lineNum"> 315 </span> : {
+<span class="lineNum"> 316 </span> : if (this-&gt;max_size() - (this-&gt;size() - __n1) &lt; __n2)
+<span class="lineNum"> 317 </span> : __throw_length_error(__N(__s));
+<span class="lineNum"> 318 </span> : }
+<span class="lineNum"> 319 </span> :
+<span class="lineNum"> 320 </span> : // NB: _M_limit doesn't check for a bad __pos value.
+<span class="lineNum"> 321 </span> : size_type
+<span class="lineNum"> 322 </span> : _M_limit(size_type __pos, size_type __off) const
+<span class="lineNum"> 323 </span> : {
+<span class="lineNum"> 324 </span> : const bool __testoff = __off &lt; this-&gt;size() - __pos;
+<span class="lineNum"> 325 </span> : return __testoff ? __off : this-&gt;size() - __pos;
+<span class="lineNum"> 326 </span> : }
+<span class="lineNum"> 327 </span> :
+<span class="lineNum"> 328 </span> : // True if _Rep and source do not overlap.
+<span class="lineNum"> 329 </span> : bool
+<span class="lineNum"> 330 </span> : _M_disjunct(const _CharT* __s) const
+<span class="lineNum"> 331 </span> : {
+<span class="lineNum"> 332 </span> : return (less&lt;const _CharT*&gt;()(__s, _M_data())
+<span class="lineNum"> 333 </span> : || less&lt;const _CharT*&gt;()(_M_data() + this-&gt;size(), __s));
+<span class="lineNum"> 334 </span> : }
+<span class="lineNum"> 335 </span> :
+<span class="lineNum"> 336 </span> : // When __n = 1 way faster than the general multichar
+<span class="lineNum"> 337 </span> : // traits_type::copy/move/assign.
+<span class="lineNum"> 338 </span> : static void
+<span class="lineNum"> 339 </span><span class="lineNoCov"> 0 : _M_copy(_CharT* __d, const _CharT* __s, size_type __n)</span>
+<span class="lineNum"> 340 </span> : {
+<span class="lineNum"> 341 </span><span class="lineNoCov"> 0 : if (__n == 1)</span>
+<span class="lineNum"> 342 </span><span class="lineNoCov"> 0 : traits_type::assign(*__d, *__s);</span>
+<span class="lineNum"> 343 </span> : else
+<span class="lineNum"> 344 </span><span class="lineNoCov"> 0 : traits_type::copy(__d, __s, __n);</span>
+<span class="lineNum"> 345 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 346 </span> :
+<span class="lineNum"> 347 </span> : static void
+<span class="lineNum"> 348 </span> : _M_move(_CharT* __d, const _CharT* __s, size_type __n)
+<span class="lineNum"> 349 </span> : {
+<span class="lineNum"> 350 </span> : if (__n == 1)
+<span class="lineNum"> 351 </span> : traits_type::assign(*__d, *__s);
+<span class="lineNum"> 352 </span> : else
+<span class="lineNum"> 353 </span> : traits_type::move(__d, __s, __n);
+<span class="lineNum"> 354 </span> : }
+<span class="lineNum"> 355 </span> :
+<span class="lineNum"> 356 </span> : static void
+<span class="lineNum"> 357 </span> : _M_assign(_CharT* __d, size_type __n, _CharT __c)
+<span class="lineNum"> 358 </span> : {
+<span class="lineNum"> 359 </span> : if (__n == 1)
+<span class="lineNum"> 360 </span> : traits_type::assign(*__d, __c);
+<span class="lineNum"> 361 </span> : else
+<span class="lineNum"> 362 </span> : traits_type::assign(__d, __n, __c);
+<span class="lineNum"> 363 </span> : }
+<span class="lineNum"> 364 </span> :
+<span class="lineNum"> 365 </span> : // _S_copy_chars is a separate template to permit specialization
+<span class="lineNum"> 366 </span> : // to optimize for the common case of pointers as iterators.
+<span class="lineNum"> 367 </span> : template&lt;class _Iterator&gt;
+<span class="lineNum"> 368 </span> : static void
+<span class="lineNum"> 369 </span><span class="lineCov"> 1012 : _S_copy_chars(_CharT* __p, _Iterator __k1, _Iterator __k2)</span>
+<span class="lineNum"> 370 </span> : {
+<span class="lineNum"> 371 </span><span class="lineCov"> 11988 : for (; __k1 != __k2; ++__k1, ++__p)</span>
+<span class="lineNum"> 372 </span><span class="lineCov"> 10976 : traits_type::assign(*__p, *__k1); // These types are off.</span>
+<span class="lineNum"> 373 </span><span class="lineCov"> 1012 : }</span>
+<span class="lineNum"> 374 </span> :
+<span class="lineNum"> 375 </span> : static void
+<span class="lineNum"> 376 </span><span class="lineNoCov"> 0 : _S_copy_chars(_CharT* __p, iterator __k1, iterator __k2)</span>
+<span class="lineNum"> 377 </span><span class="lineNoCov"> 0 : { _S_copy_chars(__p, __k1.base(), __k2.base()); }</span>
+<span class="lineNum"> 378 </span> :
+<span class="lineNum"> 379 </span> : static void
+<span class="lineNum"> 380 </span> : _S_copy_chars(_CharT* __p, const_iterator __k1, const_iterator __k2)
+<span class="lineNum"> 381 </span> : { _S_copy_chars(__p, __k1.base(), __k2.base()); }
+<span class="lineNum"> 382 </span> :
+<span class="lineNum"> 383 </span> : static void
+<span class="lineNum"> 384 </span><span class="lineNoCov"> 0 : _S_copy_chars(_CharT* __p, _CharT* __k1, _CharT* __k2)</span>
+<span class="lineNum"> 385 </span><span class="lineNoCov"> 0 : { _M_copy(__p, __k1, __k2 - __k1); }</span>
+<span class="lineNum"> 386 </span> :
+<span class="lineNum"> 387 </span> : static void
+<span class="lineNum"> 388 </span> : _S_copy_chars(_CharT* __p, const _CharT* __k1, const _CharT* __k2)
+<span class="lineNum"> 389 </span> : { _M_copy(__p, __k1, __k2 - __k1); }
+<span class="lineNum"> 390 </span> :
+<span class="lineNum"> 391 </span> : static int
+<span class="lineNum"> 392 </span><span class="lineNoCov"> 0 : _S_compare(size_type __n1, size_type __n2)</span>
+<span class="lineNum"> 393 </span> : {
+<span class="lineNum"> 394 </span><span class="lineNoCov"> 0 : const difference_type __d = difference_type(__n1 - __n2);</span>
+<span class="lineNum"> 395 </span> :
+<span class="lineNum"> 396 </span> : if (__d &gt; __gnu_cxx::__numeric_traits&lt;int&gt;::__max)
+<span class="lineNum"> 397 </span> : return __gnu_cxx::__numeric_traits&lt;int&gt;::__max;
+<span class="lineNum"> 398 </span> : else if (__d &lt; __gnu_cxx::__numeric_traits&lt;int&gt;::__min)
+<span class="lineNum"> 399 </span> : return __gnu_cxx::__numeric_traits&lt;int&gt;::__min;
+<span class="lineNum"> 400 </span> : else
+<span class="lineNum"> 401 </span><span class="lineNoCov"> 0 : return int(__d);</span>
+<span class="lineNum"> 402 </span> : }
+<span class="lineNum"> 403 </span> :
+<span class="lineNum"> 404 </span> : void
+<span class="lineNum"> 405 </span> : _M_mutate(size_type __pos, size_type __len1, size_type __len2);
+<span class="lineNum"> 406 </span> :
+<span class="lineNum"> 407 </span> : void
+<span class="lineNum"> 408 </span> : _M_leak_hard();
+<span class="lineNum"> 409 </span> :
+<span class="lineNum"> 410 </span> : static _Rep&amp;
+<span class="lineNum"> 411 </span><span class="lineNoCov"> 0 : _S_empty_rep()</span>
+<span class="lineNum"> 412 </span><span class="lineNoCov"> 0 : { return _Rep::_S_empty_rep(); }</span>
+<span class="lineNum"> 413 </span> :
+<span class="lineNum"> 414 </span> : public:
+<span class="lineNum"> 415 </span> : // Construct/copy/destroy:
+<span class="lineNum"> 416 </span> : // NB: We overload ctors in some cases instead of using default
+<span class="lineNum"> 417 </span> : // arguments, per 17.4.4.4 para. 2 item 2.
+<span class="lineNum"> 418 </span> :
+<span class="lineNum"> 419 </span> : /**
+<span class="lineNum"> 420 </span> : * @brief Default constructor creates an empty string.
+<span class="lineNum"> 421 </span> : */
+<span class="lineNum"> 422 </span> : inline
+<span class="lineNum"> 423 </span> : basic_string();
+<span class="lineNum"> 424 </span> :
+<span class="lineNum"> 425 </span> : /**
+<span class="lineNum"> 426 </span> : * @brief Construct an empty string using allocator @a a.
+<span class="lineNum"> 427 </span> : */
+<span class="lineNum"> 428 </span> : explicit
+<span class="lineNum"> 429 </span> : basic_string(const _Alloc&amp; __a);
+<span class="lineNum"> 430 </span> :
+<span class="lineNum"> 431 </span> : // NB: per LWG issue 42, semantics different from IS:
+<span class="lineNum"> 432 </span> : /**
+<span class="lineNum"> 433 </span> : * @brief Construct string with copy of value of @a str.
+<span class="lineNum"> 434 </span> : * @param str Source string.
+<span class="lineNum"> 435 </span> : */
+<span class="lineNum"> 436 </span> : basic_string(const basic_string&amp; __str);
+<span class="lineNum"> 437 </span> : /**
+<span class="lineNum"> 438 </span> : * @brief Construct string as copy of a substring.
+<span class="lineNum"> 439 </span> : * @param str Source string.
+<span class="lineNum"> 440 </span> : * @param pos Index of first character to copy from.
+<span class="lineNum"> 441 </span> : * @param n Number of characters to copy (default remainder).
+<span class="lineNum"> 442 </span> : */
+<span class="lineNum"> 443 </span> : basic_string(const basic_string&amp; __str, size_type __pos,
+<span class="lineNum"> 444 </span> : size_type __n = npos);
+<span class="lineNum"> 445 </span> : /**
+<span class="lineNum"> 446 </span> : * @brief Construct string as copy of a substring.
+<span class="lineNum"> 447 </span> : * @param str Source string.
+<span class="lineNum"> 448 </span> : * @param pos Index of first character to copy from.
+<span class="lineNum"> 449 </span> : * @param n Number of characters to copy.
+<span class="lineNum"> 450 </span> : * @param a Allocator to use.
+<span class="lineNum"> 451 </span> : */
+<span class="lineNum"> 452 </span> : basic_string(const basic_string&amp; __str, size_type __pos,
+<span class="lineNum"> 453 </span> : size_type __n, const _Alloc&amp; __a);
+<span class="lineNum"> 454 </span> :
+<span class="lineNum"> 455 </span> : /**
+<span class="lineNum"> 456 </span> : * @brief Construct string initialized by a character array.
+<span class="lineNum"> 457 </span> : * @param s Source character array.
+<span class="lineNum"> 458 </span> : * @param n Number of characters to copy.
+<span class="lineNum"> 459 </span> : * @param a Allocator to use (default is default allocator).
+<span class="lineNum"> 460 </span> : *
+<span class="lineNum"> 461 </span> : * NB: @a s must have at least @a n characters, '\0' has no special
+<span class="lineNum"> 462 </span> : * meaning.
+<span class="lineNum"> 463 </span> : */
+<span class="lineNum"> 464 </span> : basic_string(const _CharT* __s, size_type __n,
+<span class="lineNum"> 465 </span> : const _Alloc&amp; __a = _Alloc());
+<span class="lineNum"> 466 </span> : /**
+<span class="lineNum"> 467 </span> : * @brief Construct string as copy of a C string.
+<span class="lineNum"> 468 </span> : * @param s Source C string.
+<span class="lineNum"> 469 </span> : * @param a Allocator to use (default is default allocator).
+<span class="lineNum"> 470 </span> : */
+<span class="lineNum"> 471 </span> : basic_string(const _CharT* __s, const _Alloc&amp; __a = _Alloc());
+<span class="lineNum"> 472 </span> : /**
+<span class="lineNum"> 473 </span> : * @brief Construct string as multiple characters.
+<span class="lineNum"> 474 </span> : * @param n Number of characters.
+<span class="lineNum"> 475 </span> : * @param c Character to use.
+<span class="lineNum"> 476 </span> : * @param a Allocator to use (default is default allocator).
+<span class="lineNum"> 477 </span> : */
+<span class="lineNum"> 478 </span> : basic_string(size_type __n, _CharT __c, const _Alloc&amp; __a = _Alloc());
+<span class="lineNum"> 479 </span> :
+<span class="lineNum"> 480 </span> : /**
+<span class="lineNum"> 481 </span> : * @brief Construct string as copy of a range.
+<span class="lineNum"> 482 </span> : * @param beg Start of range.
+<span class="lineNum"> 483 </span> : * @param end End of range.
+<span class="lineNum"> 484 </span> : * @param a Allocator to use (default is default allocator).
+<span class="lineNum"> 485 </span> : */
+<span class="lineNum"> 486 </span> : template&lt;class _InputIterator&gt;
+<span class="lineNum"> 487 </span> : basic_string(_InputIterator __beg, _InputIterator __end,
+<span class="lineNum"> 488 </span> : const _Alloc&amp; __a = _Alloc());
+<span class="lineNum"> 489 </span> :
+<span class="lineNum"> 490 </span> : /**
+<span class="lineNum"> 491 </span> : * @brief Destroy the string instance.
+<span class="lineNum"> 492 </span> : */
+<span class="lineNum"> 493 </span><span class="lineNoCov"> 0 : ~basic_string()</span>
+<span class="lineNum"> 494 </span><span class="lineNoCov"> 0 : { _M_rep()-&gt;_M_dispose(this-&gt;get_allocator()); }</span>
+<span class="lineNum"> 495 </span> :
+<span class="lineNum"> 496 </span> : /**
+<span class="lineNum"> 497 </span> : * @brief Assign the value of @a str to this string.
+<span class="lineNum"> 498 </span> : * @param str Source string.
+<span class="lineNum"> 499 </span> : */
+<span class="lineNum"> 500 </span> : basic_string&amp;
+<span class="lineNum"> 501 </span><span class="lineNoCov"> 0 : operator=(const basic_string&amp; __str) </span>
+<span class="lineNum"> 502 </span><span class="lineNoCov"> 0 : { return this-&gt;assign(__str); }</span>
+<span class="lineNum"> 503 </span> :
+<span class="lineNum"> 504 </span> : /**
+<span class="lineNum"> 505 </span> : * @brief Copy contents of @a s into this string.
+<span class="lineNum"> 506 </span> : * @param s Source null-terminated string.
+<span class="lineNum"> 507 </span> : */
+<span class="lineNum"> 508 </span> : basic_string&amp;
+<span class="lineNum"> 509 </span><span class="lineNoCov"> 0 : operator=(const _CharT* __s) </span>
+<span class="lineNum"> 510 </span><span class="lineNoCov"> 0 : { return this-&gt;assign(__s); }</span>
+<span class="lineNum"> 511 </span> :
+<span class="lineNum"> 512 </span> : /**
+<span class="lineNum"> 513 </span> : * @brief Set value to string of length 1.
+<span class="lineNum"> 514 </span> : * @param c Source character.
+<span class="lineNum"> 515 </span> : *
+<span class="lineNum"> 516 </span> : * Assigning to a character makes this string length 1 and
+<span class="lineNum"> 517 </span> : * (*this)[0] == @a c.
+<span class="lineNum"> 518 </span> : */
+<span class="lineNum"> 519 </span> : basic_string&amp;
+<span class="lineNum"> 520 </span> : operator=(_CharT __c)
+<span class="lineNum"> 521 </span> : {
+<span class="lineNum"> 522 </span> : this-&gt;assign(1, __c);
+<span class="lineNum"> 523 </span> : return *this;
+<span class="lineNum"> 524 </span> : }
+<span class="lineNum"> 525 </span> :
+<span class="lineNum"> 526 </span> : // Iterators:
+<span class="lineNum"> 527 </span> : /**
+<span class="lineNum"> 528 </span> : * Returns a read/write iterator that points to the first character in
+<span class="lineNum"> 529 </span> : * the %string. Unshares the string.
+<span class="lineNum"> 530 </span> : */
+<span class="lineNum"> 531 </span> : iterator
+<span class="lineNum"> 532 </span><span class="lineNoCov"> 0 : begin()</span>
+<span class="lineNum"> 533 </span> : {
+<span class="lineNum"> 534 </span><span class="lineNoCov"> 0 : _M_leak();</span>
+<span class="lineNum"> 535 </span><span class="lineNoCov"> 0 : return iterator(_M_data());</span>
+<span class="lineNum"> 536 </span> : }
+<span class="lineNum"> 537 </span> :
+<span class="lineNum"> 538 </span> : /**
+<span class="lineNum"> 539 </span> : * Returns a read-only (constant) iterator that points to the first
+<span class="lineNum"> 540 </span> : * character in the %string.
+<span class="lineNum"> 541 </span> : */
+<span class="lineNum"> 542 </span> : const_iterator
+<span class="lineNum"> 543 </span><span class="lineNoCov"> 0 : begin() const</span>
+<span class="lineNum"> 544 </span><span class="lineNoCov"> 0 : { return const_iterator(_M_data()); }</span>
+<span class="lineNum"> 545 </span> :
+<span class="lineNum"> 546 </span> : /**
+<span class="lineNum"> 547 </span> : * Returns a read/write iterator that points one past the last
+<span class="lineNum"> 548 </span> : * character in the %string. Unshares the string.
+<span class="lineNum"> 549 </span> : */
+<span class="lineNum"> 550 </span> : iterator
+<span class="lineNum"> 551 </span><span class="lineNoCov"> 0 : end()</span>
+<span class="lineNum"> 552 </span> : {
+<span class="lineNum"> 553 </span><span class="lineNoCov"> 0 : _M_leak();</span>
+<span class="lineNum"> 554 </span><span class="lineNoCov"> 0 : return iterator(_M_data() + this-&gt;size());</span>
+<span class="lineNum"> 555 </span> : }
+<span class="lineNum"> 556 </span> :
+<span class="lineNum"> 557 </span> : /**
+<span class="lineNum"> 558 </span> : * Returns a read-only (constant) iterator that points one past the
+<span class="lineNum"> 559 </span> : * last character in the %string.
+<span class="lineNum"> 560 </span> : */
+<span class="lineNum"> 561 </span> : const_iterator
+<span class="lineNum"> 562 </span><span class="lineNoCov"> 0 : end() const</span>
+<span class="lineNum"> 563 </span><span class="lineNoCov"> 0 : { return const_iterator(_M_data() + this-&gt;size()); }</span>
+<span class="lineNum"> 564 </span> :
+<span class="lineNum"> 565 </span> : /**
+<span class="lineNum"> 566 </span> : * Returns a read/write reverse iterator that points to the last
+<span class="lineNum"> 567 </span> : * character in the %string. Iteration is done in reverse element
+<span class="lineNum"> 568 </span> : * order. Unshares the string.
+<span class="lineNum"> 569 </span> : */
+<span class="lineNum"> 570 </span> : reverse_iterator
+<span class="lineNum"> 571 </span> : rbegin()
+<span class="lineNum"> 572 </span> : { return reverse_iterator(this-&gt;end()); }
+<span class="lineNum"> 573 </span> :
+<span class="lineNum"> 574 </span> : /**
+<span class="lineNum"> 575 </span> : * Returns a read-only (constant) reverse iterator that points
+<span class="lineNum"> 576 </span> : * to the last character in the %string. Iteration is done in
+<span class="lineNum"> 577 </span> : * reverse element order.
+<span class="lineNum"> 578 </span> : */
+<span class="lineNum"> 579 </span> : const_reverse_iterator
+<span class="lineNum"> 580 </span> : rbegin() const
+<span class="lineNum"> 581 </span> : { return const_reverse_iterator(this-&gt;end()); }
+<span class="lineNum"> 582 </span> :
+<span class="lineNum"> 583 </span> : /**
+<span class="lineNum"> 584 </span> : * Returns a read/write reverse iterator that points to one before the
+<span class="lineNum"> 585 </span> : * first character in the %string. Iteration is done in reverse
+<span class="lineNum"> 586 </span> : * element order. Unshares the string.
+<span class="lineNum"> 587 </span> : */
+<span class="lineNum"> 588 </span> : reverse_iterator
+<span class="lineNum"> 589 </span> : rend()
+<span class="lineNum"> 590 </span> : { return reverse_iterator(this-&gt;begin()); }
+<span class="lineNum"> 591 </span> :
+<span class="lineNum"> 592 </span> : /**
+<span class="lineNum"> 593 </span> : * Returns a read-only (constant) reverse iterator that points
+<span class="lineNum"> 594 </span> : * to one before the first character in the %string. Iteration
+<span class="lineNum"> 595 </span> : * is done in reverse element order.
+<span class="lineNum"> 596 </span> : */
+<span class="lineNum"> 597 </span> : const_reverse_iterator
+<span class="lineNum"> 598 </span> : rend() const
+<span class="lineNum"> 599 </span> : { return const_reverse_iterator(this-&gt;begin()); }
+<span class="lineNum"> 600 </span> :
+<span class="lineNum"> 601 </span> : public:
+<span class="lineNum"> 602 </span> : // Capacity:
+<span class="lineNum"> 603 </span> : /// Returns the number of characters in the string, not including any
+<span class="lineNum"> 604 </span> : /// null-termination.
+<span class="lineNum"> 605 </span> : size_type
+<span class="lineNum"> 606 </span><span class="lineNoCov"> 0 : size() const</span>
+<span class="lineNum"> 607 </span><span class="lineNoCov"> 0 : { return _M_rep()-&gt;_M_length; }</span>
+<span class="lineNum"> 608 </span> :
+<span class="lineNum"> 609 </span> : /// Returns the number of characters in the string, not including any
+<span class="lineNum"> 610 </span> : /// null-termination.
+<span class="lineNum"> 611 </span> : size_type
+<span class="lineNum"> 612 </span><span class="lineNoCov"> 0 : length() const</span>
+<span class="lineNum"> 613 </span><span class="lineNoCov"> 0 : { return _M_rep()-&gt;_M_length; }</span>
+<span class="lineNum"> 614 </span> :
+<span class="lineNum"> 615 </span> : /// Returns the size() of the largest possible %string.
+<span class="lineNum"> 616 </span> : size_type
+<span class="lineNum"> 617 </span> : max_size() const
+<span class="lineNum"> 618 </span> : { return _Rep::_S_max_size; }
+<span class="lineNum"> 619 </span> :
+<span class="lineNum"> 620 </span> : /**
+<span class="lineNum"> 621 </span> : * @brief Resizes the %string to the specified number of characters.
+<span class="lineNum"> 622 </span> : * @param n Number of characters the %string should contain.
+<span class="lineNum"> 623 </span> : * @param c Character to fill any new elements.
+<span class="lineNum"> 624 </span> : *
+<span class="lineNum"> 625 </span> : * This function will %resize the %string to the specified
+<span class="lineNum"> 626 </span> : * number of characters. If the number is smaller than the
+<span class="lineNum"> 627 </span> : * %string's current size the %string is truncated, otherwise
+<span class="lineNum"> 628 </span> : * the %string is extended and new elements are set to @a c.
+<span class="lineNum"> 629 </span> : */
+<span class="lineNum"> 630 </span> : void
+<span class="lineNum"> 631 </span> : resize(size_type __n, _CharT __c);
+<span class="lineNum"> 632 </span> :
+<span class="lineNum"> 633 </span> : /**
+<span class="lineNum"> 634 </span> : * @brief Resizes the %string to the specified number of characters.
+<span class="lineNum"> 635 </span> : * @param n Number of characters the %string should contain.
+<span class="lineNum"> 636 </span> : *
+<span class="lineNum"> 637 </span> : * This function will resize the %string to the specified length. If
+<span class="lineNum"> 638 </span> : * the new size is smaller than the %string's current size the %string
+<span class="lineNum"> 639 </span> : * is truncated, otherwise the %string is extended and new characters
+<span class="lineNum"> 640 </span> : * are default-constructed. For basic types such as char, this means
+<span class="lineNum"> 641 </span> : * setting them to 0.
+<span class="lineNum"> 642 </span> : */
+<span class="lineNum"> 643 </span> : void
+<span class="lineNum"> 644 </span><span class="lineNoCov"> 0 : resize(size_type __n)</span>
+<span class="lineNum"> 645 </span><span class="lineNoCov"> 0 : { this-&gt;resize(__n, _CharT()); }</span>
+<span class="lineNum"> 646 </span> :
+<span class="lineNum"> 647 </span> : /**
+<span class="lineNum"> 648 </span> : * Returns the total number of characters that the %string can hold
+<span class="lineNum"> 649 </span> : * before needing to allocate more memory.
+<span class="lineNum"> 650 </span> : */
+<span class="lineNum"> 651 </span> : size_type
+<span class="lineNum"> 652 </span><span class="lineNoCov"> 0 : capacity() const</span>
+<span class="lineNum"> 653 </span><span class="lineNoCov"> 0 : { return _M_rep()-&gt;_M_capacity; }</span>
+<span class="lineNum"> 654 </span> :
+<span class="lineNum"> 655 </span> : /**
+<span class="lineNum"> 656 </span> : * @brief Attempt to preallocate enough memory for specified number of
+<span class="lineNum"> 657 </span> : * characters.
+<span class="lineNum"> 658 </span> : * @param res_arg Number of characters required.
+<span class="lineNum"> 659 </span> : * @throw std::length_error If @a res_arg exceeds @c max_size().
+<span class="lineNum"> 660 </span> : *
+<span class="lineNum"> 661 </span> : * This function attempts to reserve enough memory for the
+<span class="lineNum"> 662 </span> : * %string to hold the specified number of characters. If the
+<span class="lineNum"> 663 </span> : * number requested is more than max_size(), length_error is
+<span class="lineNum"> 664 </span> : * thrown.
+<span class="lineNum"> 665 </span> : *
+<span class="lineNum"> 666 </span> : * The advantage of this function is that if optimal code is a
+<span class="lineNum"> 667 </span> : * necessity and the user can determine the string length that will be
+<span class="lineNum"> 668 </span> : * required, the user can reserve the memory in %advance, and thus
+<span class="lineNum"> 669 </span> : * prevent a possible reallocation of memory and copying of %string
+<span class="lineNum"> 670 </span> : * data.
+<span class="lineNum"> 671 </span> : */
+<span class="lineNum"> 672 </span> : void
+<span class="lineNum"> 673 </span> : reserve(size_type __res_arg = 0);
+<span class="lineNum"> 674 </span> :
+<span class="lineNum"> 675 </span> : /**
+<span class="lineNum"> 676 </span> : * Erases the string, making it empty.
+<span class="lineNum"> 677 </span> : */
+<span class="lineNum"> 678 </span> : void
+<span class="lineNum"> 679 </span><span class="lineNoCov"> 0 : clear()</span>
+<span class="lineNum"> 680 </span><span class="lineNoCov"> 0 : { _M_mutate(0, this-&gt;size(), 0); }</span>
+<span class="lineNum"> 681 </span> :
+<span class="lineNum"> 682 </span> : /**
+<span class="lineNum"> 683 </span> : * Returns true if the %string is empty. Equivalent to *this == &quot;&quot;.
+<span class="lineNum"> 684 </span> : */
+<span class="lineNum"> 685 </span> : bool
+<span class="lineNum"> 686 </span><span class="lineNoCov"> 0 : empty() const</span>
+<span class="lineNum"> 687 </span><span class="lineNoCov"> 0 : { return this-&gt;size() == 0; }</span>
+<span class="lineNum"> 688 </span> :
+<span class="lineNum"> 689 </span> : // Element access:
+<span class="lineNum"> 690 </span> : /**
+<span class="lineNum"> 691 </span> : * @brief Subscript access to the data contained in the %string.
+<span class="lineNum"> 692 </span> : * @param pos The index of the character to access.
+<span class="lineNum"> 693 </span> : * @return Read-only (constant) reference to the character.
+<span class="lineNum"> 694 </span> : *
+<span class="lineNum"> 695 </span> : * This operator allows for easy, array-style, data access.
+<span class="lineNum"> 696 </span> : * Note that data access with this operator is unchecked and
+<span class="lineNum"> 697 </span> : * out_of_range lookups are not defined. (For checked lookups
+<span class="lineNum"> 698 </span> : * see at().)
+<span class="lineNum"> 699 </span> : */
+<span class="lineNum"> 700 </span> : const_reference
+<span class="lineNum"> 701 </span><span class="lineNoCov"> 0 : operator[] (size_type __pos) const</span>
+<span class="lineNum"> 702 </span> : {
+<span class="lineNum"> 703 </span> : _GLIBCXX_DEBUG_ASSERT(__pos &lt;= size());
+<span class="lineNum"> 704 </span><span class="lineNoCov"> 0 : return _M_data()[__pos];</span>
+<span class="lineNum"> 705 </span> : }
+<span class="lineNum"> 706 </span> :
+<span class="lineNum"> 707 </span> : /**
+<span class="lineNum"> 708 </span> : * @brief Subscript access to the data contained in the %string.
+<span class="lineNum"> 709 </span> : * @param pos The index of the character to access.
+<span class="lineNum"> 710 </span> : * @return Read/write reference to the character.
+<span class="lineNum"> 711 </span> : *
+<span class="lineNum"> 712 </span> : * This operator allows for easy, array-style, data access.
+<span class="lineNum"> 713 </span> : * Note that data access with this operator is unchecked and
+<span class="lineNum"> 714 </span> : * out_of_range lookups are not defined. (For checked lookups
+<span class="lineNum"> 715 </span> : * see at().) Unshares the string.
+<span class="lineNum"> 716 </span> : */
+<span class="lineNum"> 717 </span> : reference
+<span class="lineNum"> 718 </span><span class="lineNoCov"> 0 : operator[](size_type __pos)</span>
+<span class="lineNum"> 719 </span> : {
+<span class="lineNum"> 720 </span> : // allow pos == size() as v3 extension:
+<span class="lineNum"> 721 </span> : _GLIBCXX_DEBUG_ASSERT(__pos &lt;= size());
+<span class="lineNum"> 722 </span> : // but be strict in pedantic mode:
+<span class="lineNum"> 723 </span> : _GLIBCXX_DEBUG_PEDASSERT(__pos &lt; size());
+<span class="lineNum"> 724 </span><span class="lineNoCov"> 0 : _M_leak();</span>
+<span class="lineNum"> 725 </span><span class="lineNoCov"> 0 : return _M_data()[__pos];</span>
+<span class="lineNum"> 726 </span> : }
+<span class="lineNum"> 727 </span> :
+<span class="lineNum"> 728 </span> : /**
+<span class="lineNum"> 729 </span> : * @brief Provides access to the data contained in the %string.
+<span class="lineNum"> 730 </span> : * @param n The index of the character to access.
+<span class="lineNum"> 731 </span> : * @return Read-only (const) reference to the character.
+<span class="lineNum"> 732 </span> : * @throw std::out_of_range If @a n is an invalid index.
+<span class="lineNum"> 733 </span> : *
+<span class="lineNum"> 734 </span> : * This function provides for safer data access. The parameter is
+<span class="lineNum"> 735 </span> : * first checked that it is in the range of the string. The function
+<span class="lineNum"> 736 </span> : * throws out_of_range if the check fails.
+<span class="lineNum"> 737 </span> : */
+<span class="lineNum"> 738 </span> : const_reference
+<span class="lineNum"> 739 </span> : at(size_type __n) const
+<span class="lineNum"> 740 </span> : {
+<span class="lineNum"> 741 </span> : if (__n &gt;= this-&gt;size())
+<span class="lineNum"> 742 </span> : __throw_out_of_range(__N(&quot;basic_string::at&quot;));
+<span class="lineNum"> 743 </span> : return _M_data()[__n];
+<span class="lineNum"> 744 </span> : }
+<span class="lineNum"> 745 </span> :
+<span class="lineNum"> 746 </span> : /**
+<span class="lineNum"> 747 </span> : * @brief Provides access to the data contained in the %string.
+<span class="lineNum"> 748 </span> : * @param n The index of the character to access.
+<span class="lineNum"> 749 </span> : * @return Read/write reference to the character.
+<span class="lineNum"> 750 </span> : * @throw std::out_of_range If @a n is an invalid index.
+<span class="lineNum"> 751 </span> : *
+<span class="lineNum"> 752 </span> : * This function provides for safer data access. The parameter is
+<span class="lineNum"> 753 </span> : * first checked that it is in the range of the string. The function
+<span class="lineNum"> 754 </span> : * throws out_of_range if the check fails. Success results in
+<span class="lineNum"> 755 </span> : * unsharing the string.
+<span class="lineNum"> 756 </span> : */
+<span class="lineNum"> 757 </span> : reference
+<span class="lineNum"> 758 </span> : at(size_type __n)
+<span class="lineNum"> 759 </span> : {
+<span class="lineNum"> 760 </span> : if (__n &gt;= size())
+<span class="lineNum"> 761 </span> : __throw_out_of_range(__N(&quot;basic_string::at&quot;));
+<span class="lineNum"> 762 </span> : _M_leak();
+<span class="lineNum"> 763 </span> : return _M_data()[__n];
+<span class="lineNum"> 764 </span> : }
+<span class="lineNum"> 765 </span> :
+<span class="lineNum"> 766 </span> : // Modifiers:
+<span class="lineNum"> 767 </span> : /**
+<span class="lineNum"> 768 </span> : * @brief Append a string to this string.
+<span class="lineNum"> 769 </span> : * @param str The string to append.
+<span class="lineNum"> 770 </span> : * @return Reference to this string.
+<span class="lineNum"> 771 </span> : */
+<span class="lineNum"> 772 </span> : basic_string&amp;
+<span class="lineNum"> 773 </span><span class="lineNoCov"> 0 : operator+=(const basic_string&amp; __str)</span>
+<span class="lineNum"> 774 </span><span class="lineNoCov"> 0 : { return this-&gt;append(__str); }</span>
+<span class="lineNum"> 775 </span> :
+<span class="lineNum"> 776 </span> : /**
+<span class="lineNum"> 777 </span> : * @brief Append a C string.
+<span class="lineNum"> 778 </span> : * @param s The C string to append.
+<span class="lineNum"> 779 </span> : * @return Reference to this string.
+<span class="lineNum"> 780 </span> : */
+<span class="lineNum"> 781 </span> : basic_string&amp;
+<span class="lineNum"> 782 </span><span class="lineNoCov"> 0 : operator+=(const _CharT* __s)</span>
+<span class="lineNum"> 783 </span><span class="lineNoCov"> 0 : { return this-&gt;append(__s); }</span>
+<span class="lineNum"> 784 </span> :
+<span class="lineNum"> 785 </span> : /**
+<span class="lineNum"> 786 </span> : * @brief Append a character.
+<span class="lineNum"> 787 </span> : * @param c The character to append.
+<span class="lineNum"> 788 </span> : * @return Reference to this string.
+<span class="lineNum"> 789 </span> : */
+<span class="lineNum"> 790 </span> : basic_string&amp;
+<span class="lineNum"> 791 </span><span class="lineNoCov"> 0 : operator+=(_CharT __c)</span>
+<span class="lineNum"> 792 </span> : {
+<span class="lineNum"> 793 </span><span class="lineNoCov"> 0 : this-&gt;push_back(__c);</span>
+<span class="lineNum"> 794 </span><span class="lineNoCov"> 0 : return *this;</span>
+<span class="lineNum"> 795 </span> : }
+<span class="lineNum"> 796 </span> :
+<span class="lineNum"> 797 </span> : /**
+<span class="lineNum"> 798 </span> : * @brief Append a string to this string.
+<span class="lineNum"> 799 </span> : * @param str The string to append.
+<span class="lineNum"> 800 </span> : * @return Reference to this string.
+<span class="lineNum"> 801 </span> : */
+<span class="lineNum"> 802 </span> : basic_string&amp;
+<span class="lineNum"> 803 </span> : append(const basic_string&amp; __str);
+<span class="lineNum"> 804 </span> :
+<span class="lineNum"> 805 </span> : /**
+<span class="lineNum"> 806 </span> : * @brief Append a substring.
+<span class="lineNum"> 807 </span> : * @param str The string to append.
+<span class="lineNum"> 808 </span> : * @param pos Index of the first character of str to append.
+<span class="lineNum"> 809 </span> : * @param n The number of characters to append.
+<span class="lineNum"> 810 </span> : * @return Reference to this string.
+<span class="lineNum"> 811 </span> : * @throw std::out_of_range if @a pos is not a valid index.
+<span class="lineNum"> 812 </span> : *
+<span class="lineNum"> 813 </span> : * This function appends @a n characters from @a str starting at @a pos
+<span class="lineNum"> 814 </span> : * to this string. If @a n is is larger than the number of available
+<span class="lineNum"> 815 </span> : * characters in @a str, the remainder of @a str is appended.
+<span class="lineNum"> 816 </span> : */
+<span class="lineNum"> 817 </span> : basic_string&amp;
+<span class="lineNum"> 818 </span> : append(const basic_string&amp; __str, size_type __pos, size_type __n);
+<span class="lineNum"> 819 </span> :
+<span class="lineNum"> 820 </span> : /**
+<span class="lineNum"> 821 </span> : * @brief Append a C substring.
+<span class="lineNum"> 822 </span> : * @param s The C string to append.
+<span class="lineNum"> 823 </span> : * @param n The number of characters to append.
+<span class="lineNum"> 824 </span> : * @return Reference to this string.
+<span class="lineNum"> 825 </span> : */
+<span class="lineNum"> 826 </span> : basic_string&amp;
+<span class="lineNum"> 827 </span> : append(const _CharT* __s, size_type __n);
+<span class="lineNum"> 828 </span> :
+<span class="lineNum"> 829 </span> : /**
+<span class="lineNum"> 830 </span> : * @brief Append a C string.
+<span class="lineNum"> 831 </span> : * @param s The C string to append.
+<span class="lineNum"> 832 </span> : * @return Reference to this string.
+<span class="lineNum"> 833 </span> : */
+<span class="lineNum"> 834 </span> : basic_string&amp;
+<span class="lineNum"> 835 </span><span class="lineNoCov"> 0 : append(const _CharT* __s)</span>
+<span class="lineNum"> 836 </span> : {
+<span class="lineNum"> 837 </span> : __glibcxx_requires_string(__s);
+<span class="lineNum"> 838 </span><span class="lineNoCov"> 0 : return this-&gt;append(__s, traits_type::length(__s));</span>
+<span class="lineNum"> 839 </span> : }
+<span class="lineNum"> 840 </span> :
+<span class="lineNum"> 841 </span> : /**
+<span class="lineNum"> 842 </span> : * @brief Append multiple characters.
+<span class="lineNum"> 843 </span> : * @param n The number of characters to append.
+<span class="lineNum"> 844 </span> : * @param c The character to use.
+<span class="lineNum"> 845 </span> : * @return Reference to this string.
+<span class="lineNum"> 846 </span> : *
+<span class="lineNum"> 847 </span> : * Appends n copies of c to this string.
+<span class="lineNum"> 848 </span> : */
+<span class="lineNum"> 849 </span> : basic_string&amp;
+<span class="lineNum"> 850 </span> : append(size_type __n, _CharT __c);
+<span class="lineNum"> 851 </span> :
+<span class="lineNum"> 852 </span> : /**
+<span class="lineNum"> 853 </span> : * @brief Append a range of characters.
+<span class="lineNum"> 854 </span> : * @param first Iterator referencing the first character to append.
+<span class="lineNum"> 855 </span> : * @param last Iterator marking the end of the range.
+<span class="lineNum"> 856 </span> : * @return Reference to this string.
+<span class="lineNum"> 857 </span> : *
+<span class="lineNum"> 858 </span> : * Appends characters in the range [first,last) to this string.
+<span class="lineNum"> 859 </span> : */
+<span class="lineNum"> 860 </span> : template&lt;class _InputIterator&gt;
+<span class="lineNum"> 861 </span> : basic_string&amp;
+<span class="lineNum"> 862 </span> : append(_InputIterator __first, _InputIterator __last)
+<span class="lineNum"> 863 </span> : { return this-&gt;replace(_M_iend(), _M_iend(), __first, __last); }
+<span class="lineNum"> 864 </span> :
+<span class="lineNum"> 865 </span> : /**
+<span class="lineNum"> 866 </span> : * @brief Append a single character.
+<span class="lineNum"> 867 </span> : * @param c Character to append.
+<span class="lineNum"> 868 </span> : */
+<span class="lineNum"> 869 </span> : void
+<span class="lineNum"> 870 </span><span class="lineNoCov"> 0 : push_back(_CharT __c)</span>
+<span class="lineNum"> 871 </span> : {
+<span class="lineNum"> 872 </span><span class="lineNoCov"> 0 : const size_type __len = 1 + this-&gt;size();</span>
+<span class="lineNum"> 873 </span><span class="lineNoCov"> 0 : if (__len &gt; this-&gt;capacity() || _M_rep()-&gt;_M_is_shared())</span>
+<span class="lineNum"> 874 </span><span class="lineNoCov"> 0 : this-&gt;reserve(__len);</span>
+<span class="lineNum"> 875 </span><span class="lineNoCov"> 0 : traits_type::assign(_M_data()[this-&gt;size()], __c);</span>
+<span class="lineNum"> 876 </span><span class="lineNoCov"> 0 : _M_rep()-&gt;_M_set_length_and_sharable(__len);</span>
+<span class="lineNum"> 877 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 878 </span> :
+<span class="lineNum"> 879 </span> : /**
+<span class="lineNum"> 880 </span> : * @brief Set value to contents of another string.
+<span class="lineNum"> 881 </span> : * @param str Source string to use.
+<span class="lineNum"> 882 </span> : * @return Reference to this string.
+<span class="lineNum"> 883 </span> : */
+<span class="lineNum"> 884 </span> : basic_string&amp;
+<span class="lineNum"> 885 </span> : assign(const basic_string&amp; __str);
+<span class="lineNum"> 886 </span> :
+<span class="lineNum"> 887 </span> : /**
+<span class="lineNum"> 888 </span> : * @brief Set value to a substring of a string.
+<span class="lineNum"> 889 </span> : * @param str The string to use.
+<span class="lineNum"> 890 </span> : * @param pos Index of the first character of str.
+<span class="lineNum"> 891 </span> : * @param n Number of characters to use.
+<span class="lineNum"> 892 </span> : * @return Reference to this string.
+<span class="lineNum"> 893 </span> : * @throw std::out_of_range if @a pos is not a valid index.
+<span class="lineNum"> 894 </span> : *
+<span class="lineNum"> 895 </span> : * This function sets this string to the substring of @a str consisting
+<span class="lineNum"> 896 </span> : * of @a n characters at @a pos. If @a n is is larger than the number
+<span class="lineNum"> 897 </span> : * of available characters in @a str, the remainder of @a str is used.
+<span class="lineNum"> 898 </span> : */
+<span class="lineNum"> 899 </span> : basic_string&amp;
+<span class="lineNum"> 900 </span> : assign(const basic_string&amp; __str, size_type __pos, size_type __n)
+<span class="lineNum"> 901 </span> : { return this-&gt;assign(__str._M_data()
+<span class="lineNum"> 902 </span> : + __str._M_check(__pos, &quot;basic_string::assign&quot;),
+<span class="lineNum"> 903 </span> : __str._M_limit(__pos, __n)); }
+<span class="lineNum"> 904 </span> :
+<span class="lineNum"> 905 </span> : /**
+<span class="lineNum"> 906 </span> : * @brief Set value to a C substring.
+<span class="lineNum"> 907 </span> : * @param s The C string to use.
+<span class="lineNum"> 908 </span> : * @param n Number of characters to use.
+<span class="lineNum"> 909 </span> : * @return Reference to this string.
+<span class="lineNum"> 910 </span> : *
+<span class="lineNum"> 911 </span> : * This function sets the value of this string to the first @a n
+<span class="lineNum"> 912 </span> : * characters of @a s. If @a n is is larger than the number of
+<span class="lineNum"> 913 </span> : * available characters in @a s, the remainder of @a s is used.
+<span class="lineNum"> 914 </span> : */
+<span class="lineNum"> 915 </span> : basic_string&amp;
+<span class="lineNum"> 916 </span> : assign(const _CharT* __s, size_type __n);
+<span class="lineNum"> 917 </span> :
+<span class="lineNum"> 918 </span> : /**
+<span class="lineNum"> 919 </span> : * @brief Set value to contents of a C string.
+<span class="lineNum"> 920 </span> : * @param s The C string to use.
+<span class="lineNum"> 921 </span> : * @return Reference to this string.
+<span class="lineNum"> 922 </span> : *
+<span class="lineNum"> 923 </span> : * This function sets the value of this string to the value of @a s.
+<span class="lineNum"> 924 </span> : * The data is copied, so there is no dependence on @a s once the
+<span class="lineNum"> 925 </span> : * function returns.
+<span class="lineNum"> 926 </span> : */
+<span class="lineNum"> 927 </span> : basic_string&amp;
+<span class="lineNum"> 928 </span><span class="lineNoCov"> 0 : assign(const _CharT* __s)</span>
+<span class="lineNum"> 929 </span> : {
+<span class="lineNum"> 930 </span> : __glibcxx_requires_string(__s);
+<span class="lineNum"> 931 </span><span class="lineNoCov"> 0 : return this-&gt;assign(__s, traits_type::length(__s));</span>
+<span class="lineNum"> 932 </span> : }
+<span class="lineNum"> 933 </span> :
+<span class="lineNum"> 934 </span> : /**
+<span class="lineNum"> 935 </span> : * @brief Set value to multiple characters.
+<span class="lineNum"> 936 </span> : * @param n Length of the resulting string.
+<span class="lineNum"> 937 </span> : * @param c The character to use.
+<span class="lineNum"> 938 </span> : * @return Reference to this string.
+<span class="lineNum"> 939 </span> : *
+<span class="lineNum"> 940 </span> : * This function sets the value of this string to @a n copies of
+<span class="lineNum"> 941 </span> : * character @a c.
+<span class="lineNum"> 942 </span> : */
+<span class="lineNum"> 943 </span> : basic_string&amp;
+<span class="lineNum"> 944 </span> : assign(size_type __n, _CharT __c)
+<span class="lineNum"> 945 </span> : { return _M_replace_aux(size_type(0), this-&gt;size(), __n, __c); }
+<span class="lineNum"> 946 </span> :
+<span class="lineNum"> 947 </span> : /**
+<span class="lineNum"> 948 </span> : * @brief Set value to a range of characters.
+<span class="lineNum"> 949 </span> : * @param first Iterator referencing the first character to append.
+<span class="lineNum"> 950 </span> : * @param last Iterator marking the end of the range.
+<span class="lineNum"> 951 </span> : * @return Reference to this string.
+<span class="lineNum"> 952 </span> : *
+<span class="lineNum"> 953 </span> : * Sets value of string to characters in the range [first,last).
+<span class="lineNum"> 954 </span> : */
+<span class="lineNum"> 955 </span> : template&lt;class _InputIterator&gt;
+<span class="lineNum"> 956 </span> : basic_string&amp;
+<span class="lineNum"> 957 </span> : assign(_InputIterator __first, _InputIterator __last)
+<span class="lineNum"> 958 </span> : { return this-&gt;replace(_M_ibegin(), _M_iend(), __first, __last); }
+<span class="lineNum"> 959 </span> :
+<span class="lineNum"> 960 </span> : /**
+<span class="lineNum"> 961 </span> : * @brief Insert multiple characters.
+<span class="lineNum"> 962 </span> : * @param p Iterator referencing location in string to insert at.
+<span class="lineNum"> 963 </span> : * @param n Number of characters to insert
+<span class="lineNum"> 964 </span> : * @param c The character to insert.
+<span class="lineNum"> 965 </span> : * @throw std::length_error If new length exceeds @c max_size().
+<span class="lineNum"> 966 </span> : *
+<span class="lineNum"> 967 </span> : * Inserts @a n copies of character @a c starting at the position
+<span class="lineNum"> 968 </span> : * referenced by iterator @a p. If adding characters causes the length
+<span class="lineNum"> 969 </span> : * to exceed max_size(), length_error is thrown. The value of the
+<span class="lineNum"> 970 </span> : * string doesn't change if an error is thrown.
+<span class="lineNum"> 971 </span> : */
+<span class="lineNum"> 972 </span> : void
+<span class="lineNum"> 973 </span> : insert(iterator __p, size_type __n, _CharT __c)
+<span class="lineNum"> 974 </span> : { this-&gt;replace(__p, __p, __n, __c); }
+<span class="lineNum"> 975 </span> :
+<span class="lineNum"> 976 </span> : /**
+<span class="lineNum"> 977 </span> : * @brief Insert a range of characters.
+<span class="lineNum"> 978 </span> : * @param p Iterator referencing location in string to insert at.
+<span class="lineNum"> 979 </span> : * @param beg Start of range.
+<span class="lineNum"> 980 </span> : * @param end End of range.
+<span class="lineNum"> 981 </span> : * @throw std::length_error If new length exceeds @c max_size().
+<span class="lineNum"> 982 </span> : *
+<span class="lineNum"> 983 </span> : * Inserts characters in range [beg,end). If adding characters causes
+<span class="lineNum"> 984 </span> : * the length to exceed max_size(), length_error is thrown. The value
+<span class="lineNum"> 985 </span> : * of the string doesn't change if an error is thrown.
+<span class="lineNum"> 986 </span> : */
+<span class="lineNum"> 987 </span> : template&lt;class _InputIterator&gt;
+<span class="lineNum"> 988 </span> : void
+<span class="lineNum"> 989 </span> : insert(iterator __p, _InputIterator __beg, _InputIterator __end)
+<span class="lineNum"> 990 </span> : { this-&gt;replace(__p, __p, __beg, __end); }
+<span class="lineNum"> 991 </span> :
+<span class="lineNum"> 992 </span> : /**
+<span class="lineNum"> 993 </span> : * @brief Insert value of a string.
+<span class="lineNum"> 994 </span> : * @param pos1 Iterator referencing location in string to insert at.
+<span class="lineNum"> 995 </span> : * @param str The string to insert.
+<span class="lineNum"> 996 </span> : * @return Reference to this string.
+<span class="lineNum"> 997 </span> : * @throw std::length_error If new length exceeds @c max_size().
+<span class="lineNum"> 998 </span> : *
+<span class="lineNum"> 999 </span> : * Inserts value of @a str starting at @a pos1. If adding characters
+<span class="lineNum"> 1000 </span> : * causes the length to exceed max_size(), length_error is thrown. The
+<span class="lineNum"> 1001 </span> : * value of the string doesn't change if an error is thrown.
+<span class="lineNum"> 1002 </span> : */
+<span class="lineNum"> 1003 </span> : basic_string&amp;
+<span class="lineNum"> 1004 </span> : insert(size_type __pos1, const basic_string&amp; __str)
+<span class="lineNum"> 1005 </span> : { return this-&gt;insert(__pos1, __str, size_type(0), __str.size()); }
+<span class="lineNum"> 1006 </span> :
+<span class="lineNum"> 1007 </span> : /**
+<span class="lineNum"> 1008 </span> : * @brief Insert a substring.
+<span class="lineNum"> 1009 </span> : * @param pos1 Iterator referencing location in string to insert at.
+<span class="lineNum"> 1010 </span> : * @param str The string to insert.
+<span class="lineNum"> 1011 </span> : * @param pos2 Start of characters in str to insert.
+<span class="lineNum"> 1012 </span> : * @param n Number of characters to insert.
+<span class="lineNum"> 1013 </span> : * @return Reference to this string.
+<span class="lineNum"> 1014 </span> : * @throw std::length_error If new length exceeds @c max_size().
+<span class="lineNum"> 1015 </span> : * @throw std::out_of_range If @a pos1 &gt; size() or
+<span class="lineNum"> 1016 </span> : * @a pos2 &gt; @a str.size().
+<span class="lineNum"> 1017 </span> : *
+<span class="lineNum"> 1018 </span> : * Starting at @a pos1, insert @a n character of @a str beginning with
+<span class="lineNum"> 1019 </span> : * @a pos2. If adding characters causes the length to exceed
+<span class="lineNum"> 1020 </span> : * max_size(), length_error is thrown. If @a pos1 is beyond the end of
+<span class="lineNum"> 1021 </span> : * this string or @a pos2 is beyond the end of @a str, out_of_range is
+<span class="lineNum"> 1022 </span> : * thrown. The value of the string doesn't change if an error is
+<span class="lineNum"> 1023 </span> : * thrown.
+<span class="lineNum"> 1024 </span> : */
+<span class="lineNum"> 1025 </span> : basic_string&amp;
+<span class="lineNum"> 1026 </span> : insert(size_type __pos1, const basic_string&amp; __str,
+<span class="lineNum"> 1027 </span> : size_type __pos2, size_type __n)
+<span class="lineNum"> 1028 </span> : { return this-&gt;insert(__pos1, __str._M_data()
+<span class="lineNum"> 1029 </span> : + __str._M_check(__pos2, &quot;basic_string::insert&quot;),
+<span class="lineNum"> 1030 </span> : __str._M_limit(__pos2, __n)); }
+<span class="lineNum"> 1031 </span> :
+<span class="lineNum"> 1032 </span> : /**
+<span class="lineNum"> 1033 </span> : * @brief Insert a C substring.
+<span class="lineNum"> 1034 </span> : * @param pos Iterator referencing location in string to insert at.
+<span class="lineNum"> 1035 </span> : * @param s The C string to insert.
+<span class="lineNum"> 1036 </span> : * @param n The number of characters to insert.
+<span class="lineNum"> 1037 </span> : * @return Reference to this string.
+<span class="lineNum"> 1038 </span> : * @throw std::length_error If new length exceeds @c max_size().
+<span class="lineNum"> 1039 </span> : * @throw std::out_of_range If @a pos is beyond the end of this
+<span class="lineNum"> 1040 </span> : * string.
+<span class="lineNum"> 1041 </span> : *
+<span class="lineNum"> 1042 </span> : * Inserts the first @a n characters of @a s starting at @a pos. If
+<span class="lineNum"> 1043 </span> : * adding characters causes the length to exceed max_size(),
+<span class="lineNum"> 1044 </span> : * length_error is thrown. If @a pos is beyond end(), out_of_range is
+<span class="lineNum"> 1045 </span> : * thrown. The value of the string doesn't change if an error is
+<span class="lineNum"> 1046 </span> : * thrown.
+<span class="lineNum"> 1047 </span> : */
+<span class="lineNum"> 1048 </span> : basic_string&amp;
+<span class="lineNum"> 1049 </span> : insert(size_type __pos, const _CharT* __s, size_type __n);
+<span class="lineNum"> 1050 </span> :
+<span class="lineNum"> 1051 </span> : /**
+<span class="lineNum"> 1052 </span> : * @brief Insert a C string.
+<span class="lineNum"> 1053 </span> : * @param pos Iterator referencing location in string to insert at.
+<span class="lineNum"> 1054 </span> : * @param s The C string to insert.
+<span class="lineNum"> 1055 </span> : * @return Reference to this string.
+<span class="lineNum"> 1056 </span> : * @throw std::length_error If new length exceeds @c max_size().
+<span class="lineNum"> 1057 </span> : * @throw std::out_of_range If @a pos is beyond the end of this
+<span class="lineNum"> 1058 </span> : * string.
+<span class="lineNum"> 1059 </span> : *
+<span class="lineNum"> 1060 </span> : * Inserts the first @a n characters of @a s starting at @a pos. If
+<span class="lineNum"> 1061 </span> : * adding characters causes the length to exceed max_size(),
+<span class="lineNum"> 1062 </span> : * length_error is thrown. If @a pos is beyond end(), out_of_range is
+<span class="lineNum"> 1063 </span> : * thrown. The value of the string doesn't change if an error is
+<span class="lineNum"> 1064 </span> : * thrown.
+<span class="lineNum"> 1065 </span> : */
+<span class="lineNum"> 1066 </span> : basic_string&amp;
+<span class="lineNum"> 1067 </span> : insert(size_type __pos, const _CharT* __s)
+<span class="lineNum"> 1068 </span> : {
+<span class="lineNum"> 1069 </span> : __glibcxx_requires_string(__s);
+<span class="lineNum"> 1070 </span> : return this-&gt;insert(__pos, __s, traits_type::length(__s));
+<span class="lineNum"> 1071 </span> : }
+<span class="lineNum"> 1072 </span> :
+<span class="lineNum"> 1073 </span> : /**
+<span class="lineNum"> 1074 </span> : * @brief Insert multiple characters.
+<span class="lineNum"> 1075 </span> : * @param pos Index in string to insert at.
+<span class="lineNum"> 1076 </span> : * @param n Number of characters to insert
+<span class="lineNum"> 1077 </span> : * @param c The character to insert.
+<span class="lineNum"> 1078 </span> : * @return Reference to this string.
+<span class="lineNum"> 1079 </span> : * @throw std::length_error If new length exceeds @c max_size().
+<span class="lineNum"> 1080 </span> : * @throw std::out_of_range If @a pos is beyond the end of this
+<span class="lineNum"> 1081 </span> : * string.
+<span class="lineNum"> 1082 </span> : *
+<span class="lineNum"> 1083 </span> : * Inserts @a n copies of character @a c starting at index @a pos. If
+<span class="lineNum"> 1084 </span> : * adding characters causes the length to exceed max_size(),
+<span class="lineNum"> 1085 </span> : * length_error is thrown. If @a pos &gt; length(), out_of_range is
+<span class="lineNum"> 1086 </span> : * thrown. The value of the string doesn't change if an error is
+<span class="lineNum"> 1087 </span> : * thrown.
+<span class="lineNum"> 1088 </span> : */
+<span class="lineNum"> 1089 </span> : basic_string&amp;
+<span class="lineNum"> 1090 </span> : insert(size_type __pos, size_type __n, _CharT __c)
+<span class="lineNum"> 1091 </span> : { return _M_replace_aux(_M_check(__pos, &quot;basic_string::insert&quot;),
+<span class="lineNum"> 1092 </span> : size_type(0), __n, __c); }
+<span class="lineNum"> 1093 </span> :
+<span class="lineNum"> 1094 </span> : /**
+<span class="lineNum"> 1095 </span> : * @brief Insert one character.
+<span class="lineNum"> 1096 </span> : * @param p Iterator referencing position in string to insert at.
+<span class="lineNum"> 1097 </span> : * @param c The character to insert.
+<span class="lineNum"> 1098 </span> : * @return Iterator referencing newly inserted char.
+<span class="lineNum"> 1099 </span> : * @throw std::length_error If new length exceeds @c max_size().
+<span class="lineNum"> 1100 </span> : *
+<span class="lineNum"> 1101 </span> : * Inserts character @a c at position referenced by @a p. If adding
+<span class="lineNum"> 1102 </span> : * character causes the length to exceed max_size(), length_error is
+<span class="lineNum"> 1103 </span> : * thrown. If @a p is beyond end of string, out_of_range is thrown.
+<span class="lineNum"> 1104 </span> : * The value of the string doesn't change if an error is thrown.
+<span class="lineNum"> 1105 </span> : */
+<span class="lineNum"> 1106 </span> : iterator
+<span class="lineNum"> 1107 </span> : insert(iterator __p, _CharT __c)
+<span class="lineNum"> 1108 </span> : {
+<span class="lineNum"> 1109 </span> : _GLIBCXX_DEBUG_PEDASSERT(__p &gt;= _M_ibegin() &amp;&amp; __p &lt;= _M_iend());
+<span class="lineNum"> 1110 </span> : const size_type __pos = __p - _M_ibegin();
+<span class="lineNum"> 1111 </span> : _M_replace_aux(__pos, size_type(0), size_type(1), __c);
+<span class="lineNum"> 1112 </span> : _M_rep()-&gt;_M_set_leaked();
+<span class="lineNum"> 1113 </span> : return iterator(_M_data() + __pos);
+<span class="lineNum"> 1114 </span> : }
+<span class="lineNum"> 1115 </span> :
+<span class="lineNum"> 1116 </span> : /**
+<span class="lineNum"> 1117 </span> : * @brief Remove characters.
+<span class="lineNum"> 1118 </span> : * @param pos Index of first character to remove (default 0).
+<span class="lineNum"> 1119 </span> : * @param n Number of characters to remove (default remainder).
+<span class="lineNum"> 1120 </span> : * @return Reference to this string.
+<span class="lineNum"> 1121 </span> : * @throw std::out_of_range If @a pos is beyond the end of this
+<span class="lineNum"> 1122 </span> : * string.
+<span class="lineNum"> 1123 </span> : *
+<span class="lineNum"> 1124 </span> : * Removes @a n characters from this string starting at @a pos. The
+<span class="lineNum"> 1125 </span> : * length of the string is reduced by @a n. If there are &lt; @a n
+<span class="lineNum"> 1126 </span> : * characters to remove, the remainder of the string is truncated. If
+<span class="lineNum"> 1127 </span> : * @a p is beyond end of string, out_of_range is thrown. The value of
+<span class="lineNum"> 1128 </span> : * the string doesn't change if an error is thrown.
+<span class="lineNum"> 1129 </span> : */
+<span class="lineNum"> 1130 </span> : basic_string&amp;
+<span class="lineNum"> 1131 </span> : erase(size_type __pos = 0, size_type __n = npos)
+<span class="lineNum"> 1132 </span> : {
+<span class="lineNum"> 1133 </span> : _M_mutate(_M_check(__pos, &quot;basic_string::erase&quot;),
+<span class="lineNum"> 1134 </span> : _M_limit(__pos, __n), size_type(0));
+<span class="lineNum"> 1135 </span> : return *this;
+<span class="lineNum"> 1136 </span> : }
+<span class="lineNum"> 1137 </span> :
+<span class="lineNum"> 1138 </span> : /**
+<span class="lineNum"> 1139 </span> : * @brief Remove one character.
+<span class="lineNum"> 1140 </span> : * @param position Iterator referencing the character to remove.
+<span class="lineNum"> 1141 </span> : * @return iterator referencing same location after removal.
+<span class="lineNum"> 1142 </span> : *
+<span class="lineNum"> 1143 </span> : * Removes the character at @a position from this string. The value
+<span class="lineNum"> 1144 </span> : * of the string doesn't change if an error is thrown.
+<span class="lineNum"> 1145 </span> : */
+<span class="lineNum"> 1146 </span> : iterator
+<span class="lineNum"> 1147 </span><span class="lineNoCov"> 0 : erase(iterator __position)</span>
+<span class="lineNum"> 1148 </span> : {
+<span class="lineNum"> 1149 </span> : _GLIBCXX_DEBUG_PEDASSERT(__position &gt;= _M_ibegin()
+<span class="lineNum"> 1150 </span> : &amp;&amp; __position &lt; _M_iend());
+<span class="lineNum"> 1151 </span><span class="lineNoCov"> 0 : const size_type __pos = __position - _M_ibegin();</span>
+<span class="lineNum"> 1152 </span><span class="lineNoCov"> 0 : _M_mutate(__pos, size_type(1), size_type(0));</span>
+<span class="lineNum"> 1153 </span><span class="lineNoCov"> 0 : _M_rep()-&gt;_M_set_leaked();</span>
+<span class="lineNum"> 1154 </span><span class="lineNoCov"> 0 : return iterator(_M_data() + __pos);</span>
+<span class="lineNum"> 1155 </span> : }
+<span class="lineNum"> 1156 </span> :
+<span class="lineNum"> 1157 </span> : /**
+<span class="lineNum"> 1158 </span> : * @brief Remove a range of characters.
+<span class="lineNum"> 1159 </span> : * @param first Iterator referencing the first character to remove.
+<span class="lineNum"> 1160 </span> : * @param last Iterator referencing the end of the range.
+<span class="lineNum"> 1161 </span> : * @return Iterator referencing location of first after removal.
+<span class="lineNum"> 1162 </span> : *
+<span class="lineNum"> 1163 </span> : * Removes the characters in the range [first,last) from this string.
+<span class="lineNum"> 1164 </span> : * The value of the string doesn't change if an error is thrown.
+<span class="lineNum"> 1165 </span> : */
+<span class="lineNum"> 1166 </span> : iterator
+<span class="lineNum"> 1167 </span> : erase(iterator __first, iterator __last)
+<span class="lineNum"> 1168 </span> : {
+<span class="lineNum"> 1169 </span> : _GLIBCXX_DEBUG_PEDASSERT(__first &gt;= _M_ibegin() &amp;&amp; __first &lt;= __last
+<span class="lineNum"> 1170 </span> : &amp;&amp; __last &lt;= _M_iend());
+<span class="lineNum"> 1171 </span> : const size_type __pos = __first - _M_ibegin();
+<span class="lineNum"> 1172 </span> : _M_mutate(__pos, __last - __first, size_type(0));
+<span class="lineNum"> 1173 </span> : _M_rep()-&gt;_M_set_leaked();
+<span class="lineNum"> 1174 </span> : return iterator(_M_data() + __pos);
+<span class="lineNum"> 1175 </span> : }
+<span class="lineNum"> 1176 </span> :
+<span class="lineNum"> 1177 </span> : /**
+<span class="lineNum"> 1178 </span> : * @brief Replace characters with value from another string.
+<span class="lineNum"> 1179 </span> : * @param pos Index of first character to replace.
+<span class="lineNum"> 1180 </span> : * @param n Number of characters to be replaced.
+<span class="lineNum"> 1181 </span> : * @param str String to insert.
+<span class="lineNum"> 1182 </span> : * @return Reference to this string.
+<span class="lineNum"> 1183 </span> : * @throw std::out_of_range If @a pos is beyond the end of this
+<span class="lineNum"> 1184 </span> : * string.
+<span class="lineNum"> 1185 </span> : * @throw std::length_error If new length exceeds @c max_size().
+<span class="lineNum"> 1186 </span> : *
+<span class="lineNum"> 1187 </span> : * Removes the characters in the range [pos,pos+n) from this string.
+<span class="lineNum"> 1188 </span> : * In place, the value of @a str is inserted. If @a pos is beyond end
+<span class="lineNum"> 1189 </span> : * of string, out_of_range is thrown. If the length of the result
+<span class="lineNum"> 1190 </span> : * exceeds max_size(), length_error is thrown. The value of the string
+<span class="lineNum"> 1191 </span> : * doesn't change if an error is thrown.
+<span class="lineNum"> 1192 </span> : */
+<span class="lineNum"> 1193 </span> : basic_string&amp;
+<span class="lineNum"> 1194 </span> : replace(size_type __pos, size_type __n, const basic_string&amp; __str)
+<span class="lineNum"> 1195 </span> : { return this-&gt;replace(__pos, __n, __str._M_data(), __str.size()); }
+<span class="lineNum"> 1196 </span> :
+<span class="lineNum"> 1197 </span> : /**
+<span class="lineNum"> 1198 </span> : * @brief Replace characters with value from another string.
+<span class="lineNum"> 1199 </span> : * @param pos1 Index of first character to replace.
+<span class="lineNum"> 1200 </span> : * @param n1 Number of characters to be replaced.
+<span class="lineNum"> 1201 </span> : * @param str String to insert.
+<span class="lineNum"> 1202 </span> : * @param pos2 Index of first character of str to use.
+<span class="lineNum"> 1203 </span> : * @param n2 Number of characters from str to use.
+<span class="lineNum"> 1204 </span> : * @return Reference to this string.
+<span class="lineNum"> 1205 </span> : * @throw std::out_of_range If @a pos1 &gt; size() or @a pos2 &gt;
+<span class="lineNum"> 1206 </span> : * str.size().
+<span class="lineNum"> 1207 </span> : * @throw std::length_error If new length exceeds @c max_size().
+<span class="lineNum"> 1208 </span> : *
+<span class="lineNum"> 1209 </span> : * Removes the characters in the range [pos1,pos1 + n) from this
+<span class="lineNum"> 1210 </span> : * string. In place, the value of @a str is inserted. If @a pos is
+<span class="lineNum"> 1211 </span> : * beyond end of string, out_of_range is thrown. If the length of the
+<span class="lineNum"> 1212 </span> : * result exceeds max_size(), length_error is thrown. The value of the
+<span class="lineNum"> 1213 </span> : * string doesn't change if an error is thrown.
+<span class="lineNum"> 1214 </span> : */
+<span class="lineNum"> 1215 </span> : basic_string&amp;
+<span class="lineNum"> 1216 </span> : replace(size_type __pos1, size_type __n1, const basic_string&amp; __str,
+<span class="lineNum"> 1217 </span> : size_type __pos2, size_type __n2)
+<span class="lineNum"> 1218 </span> : { return this-&gt;replace(__pos1, __n1, __str._M_data()
+<span class="lineNum"> 1219 </span> : + __str._M_check(__pos2, &quot;basic_string::replace&quot;),
+<span class="lineNum"> 1220 </span> : __str._M_limit(__pos2, __n2)); }
+<span class="lineNum"> 1221 </span> :
+<span class="lineNum"> 1222 </span> : /**
+<span class="lineNum"> 1223 </span> : * @brief Replace characters with value of a C substring.
+<span class="lineNum"> 1224 </span> : * @param pos Index of first character to replace.
+<span class="lineNum"> 1225 </span> : * @param n1 Number of characters to be replaced.
+<span class="lineNum"> 1226 </span> : * @param s C string to insert.
+<span class="lineNum"> 1227 </span> : * @param n2 Number of characters from @a s to use.
+<span class="lineNum"> 1228 </span> : * @return Reference to this string.
+<span class="lineNum"> 1229 </span> : * @throw std::out_of_range If @a pos1 &gt; size().
+<span class="lineNum"> 1230 </span> : * @throw std::length_error If new length exceeds @c max_size().
+<span class="lineNum"> 1231 </span> : *
+<span class="lineNum"> 1232 </span> : * Removes the characters in the range [pos,pos + n1) from this string.
+<span class="lineNum"> 1233 </span> : * In place, the first @a n2 characters of @a s are inserted, or all
+<span class="lineNum"> 1234 </span> : * of @a s if @a n2 is too large. If @a pos is beyond end of string,
+<span class="lineNum"> 1235 </span> : * out_of_range is thrown. If the length of result exceeds max_size(),
+<span class="lineNum"> 1236 </span> : * length_error is thrown. The value of the string doesn't change if
+<span class="lineNum"> 1237 </span> : * an error is thrown.
+<span class="lineNum"> 1238 </span> : */
+<span class="lineNum"> 1239 </span> : basic_string&amp;
+<span class="lineNum"> 1240 </span> : replace(size_type __pos, size_type __n1, const _CharT* __s,
+<span class="lineNum"> 1241 </span> : size_type __n2);
+<span class="lineNum"> 1242 </span> :
+<span class="lineNum"> 1243 </span> : /**
+<span class="lineNum"> 1244 </span> : * @brief Replace characters with value of a C string.
+<span class="lineNum"> 1245 </span> : * @param pos Index of first character to replace.
+<span class="lineNum"> 1246 </span> : * @param n1 Number of characters to be replaced.
+<span class="lineNum"> 1247 </span> : * @param s C string to insert.
+<span class="lineNum"> 1248 </span> : * @return Reference to this string.
+<span class="lineNum"> 1249 </span> : * @throw std::out_of_range If @a pos &gt; size().
+<span class="lineNum"> 1250 </span> : * @throw std::length_error If new length exceeds @c max_size().
+<span class="lineNum"> 1251 </span> : *
+<span class="lineNum"> 1252 </span> : * Removes the characters in the range [pos,pos + n1) from this string.
+<span class="lineNum"> 1253 </span> : * In place, the first @a n characters of @a s are inserted. If @a
+<span class="lineNum"> 1254 </span> : * pos is beyond end of string, out_of_range is thrown. If the length
+<span class="lineNum"> 1255 </span> : * of result exceeds max_size(), length_error is thrown. The value of
+<span class="lineNum"> 1256 </span> : * the string doesn't change if an error is thrown.
+<span class="lineNum"> 1257 </span> : */
+<span class="lineNum"> 1258 </span> : basic_string&amp;
+<span class="lineNum"> 1259 </span> : replace(size_type __pos, size_type __n1, const _CharT* __s)
+<span class="lineNum"> 1260 </span> : {
+<span class="lineNum"> 1261 </span> : __glibcxx_requires_string(__s);
+<span class="lineNum"> 1262 </span> : return this-&gt;replace(__pos, __n1, __s, traits_type::length(__s));
+<span class="lineNum"> 1263 </span> : }
+<span class="lineNum"> 1264 </span> :
+<span class="lineNum"> 1265 </span> : /**
+<span class="lineNum"> 1266 </span> : * @brief Replace characters with multiple characters.
+<span class="lineNum"> 1267 </span> : * @param pos Index of first character to replace.
+<span class="lineNum"> 1268 </span> : * @param n1 Number of characters to be replaced.
+<span class="lineNum"> 1269 </span> : * @param n2 Number of characters to insert.
+<span class="lineNum"> 1270 </span> : * @param c Character to insert.
+<span class="lineNum"> 1271 </span> : * @return Reference to this string.
+<span class="lineNum"> 1272 </span> : * @throw std::out_of_range If @a pos &gt; size().
+<span class="lineNum"> 1273 </span> : * @throw std::length_error If new length exceeds @c max_size().
+<span class="lineNum"> 1274 </span> : *
+<span class="lineNum"> 1275 </span> : * Removes the characters in the range [pos,pos + n1) from this string.
+<span class="lineNum"> 1276 </span> : * In place, @a n2 copies of @a c are inserted. If @a pos is beyond
+<span class="lineNum"> 1277 </span> : * end of string, out_of_range is thrown. If the length of result
+<span class="lineNum"> 1278 </span> : * exceeds max_size(), length_error is thrown. The value of the string
+<span class="lineNum"> 1279 </span> : * doesn't change if an error is thrown.
+<span class="lineNum"> 1280 </span> : */
+<span class="lineNum"> 1281 </span> : basic_string&amp;
+<span class="lineNum"> 1282 </span> : replace(size_type __pos, size_type __n1, size_type __n2, _CharT __c)
+<span class="lineNum"> 1283 </span> : { return _M_replace_aux(_M_check(__pos, &quot;basic_string::replace&quot;),
+<span class="lineNum"> 1284 </span> : _M_limit(__pos, __n1), __n2, __c); }
+<span class="lineNum"> 1285 </span> :
+<span class="lineNum"> 1286 </span> : /**
+<span class="lineNum"> 1287 </span> : * @brief Replace range of characters with string.
+<span class="lineNum"> 1288 </span> : * @param i1 Iterator referencing start of range to replace.
+<span class="lineNum"> 1289 </span> : * @param i2 Iterator referencing end of range to replace.
+<span class="lineNum"> 1290 </span> : * @param str String value to insert.
+<span class="lineNum"> 1291 </span> : * @return Reference to this string.
+<span class="lineNum"> 1292 </span> : * @throw std::length_error If new length exceeds @c max_size().
+<span class="lineNum"> 1293 </span> : *
+<span class="lineNum"> 1294 </span> : * Removes the characters in the range [i1,i2). In place, the value of
+<span class="lineNum"> 1295 </span> : * @a str is inserted. If the length of result exceeds max_size(),
+<span class="lineNum"> 1296 </span> : * length_error is thrown. The value of the string doesn't change if
+<span class="lineNum"> 1297 </span> : * an error is thrown.
+<span class="lineNum"> 1298 </span> : */
+<span class="lineNum"> 1299 </span> : basic_string&amp;
+<span class="lineNum"> 1300 </span> : replace(iterator __i1, iterator __i2, const basic_string&amp; __str)
+<span class="lineNum"> 1301 </span> : { return this-&gt;replace(__i1, __i2, __str._M_data(), __str.size()); }
+<span class="lineNum"> 1302 </span> :
+<span class="lineNum"> 1303 </span> : /**
+<span class="lineNum"> 1304 </span> : * @brief Replace range of characters with C substring.
+<span class="lineNum"> 1305 </span> : * @param i1 Iterator referencing start of range to replace.
+<span class="lineNum"> 1306 </span> : * @param i2 Iterator referencing end of range to replace.
+<span class="lineNum"> 1307 </span> : * @param s C string value to insert.
+<span class="lineNum"> 1308 </span> : * @param n Number of characters from s to insert.
+<span class="lineNum"> 1309 </span> : * @return Reference to this string.
+<span class="lineNum"> 1310 </span> : * @throw std::length_error If new length exceeds @c max_size().
+<span class="lineNum"> 1311 </span> : *
+<span class="lineNum"> 1312 </span> : * Removes the characters in the range [i1,i2). In place, the first @a
+<span class="lineNum"> 1313 </span> : * n characters of @a s are inserted. If the length of result exceeds
+<span class="lineNum"> 1314 </span> : * max_size(), length_error is thrown. The value of the string doesn't
+<span class="lineNum"> 1315 </span> : * change if an error is thrown.
+<span class="lineNum"> 1316 </span> : */
+<span class="lineNum"> 1317 </span> : basic_string&amp;
+<span class="lineNum"> 1318 </span> : replace(iterator __i1, iterator __i2, const _CharT* __s, size_type __n)
+<span class="lineNum"> 1319 </span> : {
+<span class="lineNum"> 1320 </span> : _GLIBCXX_DEBUG_PEDASSERT(_M_ibegin() &lt;= __i1 &amp;&amp; __i1 &lt;= __i2
+<span class="lineNum"> 1321 </span> : &amp;&amp; __i2 &lt;= _M_iend());
+<span class="lineNum"> 1322 </span> : return this-&gt;replace(__i1 - _M_ibegin(), __i2 - __i1, __s, __n);
+<span class="lineNum"> 1323 </span> : }
+<span class="lineNum"> 1324 </span> :
+<span class="lineNum"> 1325 </span> : /**
+<span class="lineNum"> 1326 </span> : * @brief Replace range of characters with C string.
+<span class="lineNum"> 1327 </span> : * @param i1 Iterator referencing start of range to replace.
+<span class="lineNum"> 1328 </span> : * @param i2 Iterator referencing end of range to replace.
+<span class="lineNum"> 1329 </span> : * @param s C string value to insert.
+<span class="lineNum"> 1330 </span> : * @return Reference to this string.
+<span class="lineNum"> 1331 </span> : * @throw std::length_error If new length exceeds @c max_size().
+<span class="lineNum"> 1332 </span> : *
+<span class="lineNum"> 1333 </span> : * Removes the characters in the range [i1,i2). In place, the
+<span class="lineNum"> 1334 </span> : * characters of @a s are inserted. If the length of result exceeds
+<span class="lineNum"> 1335 </span> : * max_size(), length_error is thrown. The value of the string doesn't
+<span class="lineNum"> 1336 </span> : * change if an error is thrown.
+<span class="lineNum"> 1337 </span> : */
+<span class="lineNum"> 1338 </span> : basic_string&amp;
+<span class="lineNum"> 1339 </span> : replace(iterator __i1, iterator __i2, const _CharT* __s)
+<span class="lineNum"> 1340 </span> : {
+<span class="lineNum"> 1341 </span> : __glibcxx_requires_string(__s);
+<span class="lineNum"> 1342 </span> : return this-&gt;replace(__i1, __i2, __s, traits_type::length(__s));
+<span class="lineNum"> 1343 </span> : }
+<span class="lineNum"> 1344 </span> :
+<span class="lineNum"> 1345 </span> : /**
+<span class="lineNum"> 1346 </span> : * @brief Replace range of characters with multiple characters
+<span class="lineNum"> 1347 </span> : * @param i1 Iterator referencing start of range to replace.
+<span class="lineNum"> 1348 </span> : * @param i2 Iterator referencing end of range to replace.
+<span class="lineNum"> 1349 </span> : * @param n Number of characters to insert.
+<span class="lineNum"> 1350 </span> : * @param c Character to insert.
+<span class="lineNum"> 1351 </span> : * @return Reference to this string.
+<span class="lineNum"> 1352 </span> : * @throw std::length_error If new length exceeds @c max_size().
+<span class="lineNum"> 1353 </span> : *
+<span class="lineNum"> 1354 </span> : * Removes the characters in the range [i1,i2). In place, @a n copies
+<span class="lineNum"> 1355 </span> : * of @a c are inserted. If the length of result exceeds max_size(),
+<span class="lineNum"> 1356 </span> : * length_error is thrown. The value of the string doesn't change if
+<span class="lineNum"> 1357 </span> : * an error is thrown.
+<span class="lineNum"> 1358 </span> : */
+<span class="lineNum"> 1359 </span> : basic_string&amp;
+<span class="lineNum"> 1360 </span> : replace(iterator __i1, iterator __i2, size_type __n, _CharT __c)
+<span class="lineNum"> 1361 </span> : {
+<span class="lineNum"> 1362 </span> : _GLIBCXX_DEBUG_PEDASSERT(_M_ibegin() &lt;= __i1 &amp;&amp; __i1 &lt;= __i2
+<span class="lineNum"> 1363 </span> : &amp;&amp; __i2 &lt;= _M_iend());
+<span class="lineNum"> 1364 </span> : return _M_replace_aux(__i1 - _M_ibegin(), __i2 - __i1, __n, __c);
+<span class="lineNum"> 1365 </span> : }
+<span class="lineNum"> 1366 </span> :
+<span class="lineNum"> 1367 </span> : /**
+<span class="lineNum"> 1368 </span> : * @brief Replace range of characters with range.
+<span class="lineNum"> 1369 </span> : * @param i1 Iterator referencing start of range to replace.
+<span class="lineNum"> 1370 </span> : * @param i2 Iterator referencing end of range to replace.
+<span class="lineNum"> 1371 </span> : * @param k1 Iterator referencing start of range to insert.
+<span class="lineNum"> 1372 </span> : * @param k2 Iterator referencing end of range to insert.
+<span class="lineNum"> 1373 </span> : * @return Reference to this string.
+<span class="lineNum"> 1374 </span> : * @throw std::length_error If new length exceeds @c max_size().
+<span class="lineNum"> 1375 </span> : *
+<span class="lineNum"> 1376 </span> : * Removes the characters in the range [i1,i2). In place, characters
+<span class="lineNum"> 1377 </span> : * in the range [k1,k2) are inserted. If the length of result exceeds
+<span class="lineNum"> 1378 </span> : * max_size(), length_error is thrown. The value of the string doesn't
+<span class="lineNum"> 1379 </span> : * change if an error is thrown.
+<span class="lineNum"> 1380 </span> : */
+<span class="lineNum"> 1381 </span> : template&lt;class _InputIterator&gt;
+<span class="lineNum"> 1382 </span> : basic_string&amp;
+<span class="lineNum"> 1383 </span> : replace(iterator __i1, iterator __i2,
+<span class="lineNum"> 1384 </span> : _InputIterator __k1, _InputIterator __k2)
+<span class="lineNum"> 1385 </span> : {
+<span class="lineNum"> 1386 </span> : _GLIBCXX_DEBUG_PEDASSERT(_M_ibegin() &lt;= __i1 &amp;&amp; __i1 &lt;= __i2
+<span class="lineNum"> 1387 </span> : &amp;&amp; __i2 &lt;= _M_iend());
+<span class="lineNum"> 1388 </span> : __glibcxx_requires_valid_range(__k1, __k2);
+<span class="lineNum"> 1389 </span> : typedef typename std::__is_integer&lt;_InputIterator&gt;::__type _Integral;
+<span class="lineNum"> 1390 </span> : return _M_replace_dispatch(__i1, __i2, __k1, __k2, _Integral());
+<span class="lineNum"> 1391 </span> : }
+<span class="lineNum"> 1392 </span> :
+<span class="lineNum"> 1393 </span> : // Specializations for the common case of pointer and iterator:
+<span class="lineNum"> 1394 </span> : // useful to avoid the overhead of temporary buffering in _M_replace.
+<span class="lineNum"> 1395 </span> : basic_string&amp;
+<span class="lineNum"> 1396 </span> : replace(iterator __i1, iterator __i2, _CharT* __k1, _CharT* __k2)
+<span class="lineNum"> 1397 </span> : {
+<span class="lineNum"> 1398 </span> : _GLIBCXX_DEBUG_PEDASSERT(_M_ibegin() &lt;= __i1 &amp;&amp; __i1 &lt;= __i2
+<span class="lineNum"> 1399 </span> : &amp;&amp; __i2 &lt;= _M_iend());
+<span class="lineNum"> 1400 </span> : __glibcxx_requires_valid_range(__k1, __k2);
+<span class="lineNum"> 1401 </span> : return this-&gt;replace(__i1 - _M_ibegin(), __i2 - __i1,
+<span class="lineNum"> 1402 </span> : __k1, __k2 - __k1);
+<span class="lineNum"> 1403 </span> : }
+<span class="lineNum"> 1404 </span> :
+<span class="lineNum"> 1405 </span> : basic_string&amp;
+<span class="lineNum"> 1406 </span> : replace(iterator __i1, iterator __i2,
+<span class="lineNum"> 1407 </span> : const _CharT* __k1, const _CharT* __k2)
+<span class="lineNum"> 1408 </span> : {
+<span class="lineNum"> 1409 </span> : _GLIBCXX_DEBUG_PEDASSERT(_M_ibegin() &lt;= __i1 &amp;&amp; __i1 &lt;= __i2
+<span class="lineNum"> 1410 </span> : &amp;&amp; __i2 &lt;= _M_iend());
+<span class="lineNum"> 1411 </span> : __glibcxx_requires_valid_range(__k1, __k2);
+<span class="lineNum"> 1412 </span> : return this-&gt;replace(__i1 - _M_ibegin(), __i2 - __i1,
+<span class="lineNum"> 1413 </span> : __k1, __k2 - __k1);
+<span class="lineNum"> 1414 </span> : }
+<span class="lineNum"> 1415 </span> :
+<span class="lineNum"> 1416 </span> : basic_string&amp;
+<span class="lineNum"> 1417 </span> : replace(iterator __i1, iterator __i2, iterator __k1, iterator __k2)
+<span class="lineNum"> 1418 </span> : {
+<span class="lineNum"> 1419 </span> : _GLIBCXX_DEBUG_PEDASSERT(_M_ibegin() &lt;= __i1 &amp;&amp; __i1 &lt;= __i2
+<span class="lineNum"> 1420 </span> : &amp;&amp; __i2 &lt;= _M_iend());
+<span class="lineNum"> 1421 </span> : __glibcxx_requires_valid_range(__k1, __k2);
+<span class="lineNum"> 1422 </span> : return this-&gt;replace(__i1 - _M_ibegin(), __i2 - __i1,
+<span class="lineNum"> 1423 </span> : __k1.base(), __k2 - __k1);
+<span class="lineNum"> 1424 </span> : }
+<span class="lineNum"> 1425 </span> :
+<span class="lineNum"> 1426 </span> : basic_string&amp;
+<span class="lineNum"> 1427 </span> : replace(iterator __i1, iterator __i2,
+<span class="lineNum"> 1428 </span> : const_iterator __k1, const_iterator __k2)
+<span class="lineNum"> 1429 </span> : {
+<span class="lineNum"> 1430 </span> : _GLIBCXX_DEBUG_PEDASSERT(_M_ibegin() &lt;= __i1 &amp;&amp; __i1 &lt;= __i2
+<span class="lineNum"> 1431 </span> : &amp;&amp; __i2 &lt;= _M_iend());
+<span class="lineNum"> 1432 </span> : __glibcxx_requires_valid_range(__k1, __k2);
+<span class="lineNum"> 1433 </span> : return this-&gt;replace(__i1 - _M_ibegin(), __i2 - __i1,
+<span class="lineNum"> 1434 </span> : __k1.base(), __k2 - __k1);
+<span class="lineNum"> 1435 </span> : }
+<span class="lineNum"> 1436 </span> :
+<span class="lineNum"> 1437 </span> : private:
+<span class="lineNum"> 1438 </span> : template&lt;class _Integer&gt;
+<span class="lineNum"> 1439 </span> : basic_string&amp;
+<span class="lineNum"> 1440 </span> : _M_replace_dispatch(iterator __i1, iterator __i2, _Integer __n,
+<span class="lineNum"> 1441 </span> : _Integer __val, __true_type)
+<span class="lineNum"> 1442 </span> : { return _M_replace_aux(__i1 - _M_ibegin(), __i2 - __i1, __n, __val); }
+<span class="lineNum"> 1443 </span> :
+<span class="lineNum"> 1444 </span> : template&lt;class _InputIterator&gt;
+<span class="lineNum"> 1445 </span> : basic_string&amp;
+<span class="lineNum"> 1446 </span> : _M_replace_dispatch(iterator __i1, iterator __i2, _InputIterator __k1,
+<span class="lineNum"> 1447 </span> : _InputIterator __k2, __false_type);
+<span class="lineNum"> 1448 </span> :
+<span class="lineNum"> 1449 </span> : basic_string&amp;
+<span class="lineNum"> 1450 </span> : _M_replace_aux(size_type __pos1, size_type __n1, size_type __n2,
+<span class="lineNum"> 1451 </span> : _CharT __c);
+<span class="lineNum"> 1452 </span> :
+<span class="lineNum"> 1453 </span> : basic_string&amp;
+<span class="lineNum"> 1454 </span> : _M_replace_safe(size_type __pos1, size_type __n1, const _CharT* __s,
+<span class="lineNum"> 1455 </span> : size_type __n2);
+<span class="lineNum"> 1456 </span> :
+<span class="lineNum"> 1457 </span> : // _S_construct_aux is used to implement the 21.3.1 para 15 which
+<span class="lineNum"> 1458 </span> : // requires special behaviour if _InIter is an integral type
+<span class="lineNum"> 1459 </span> : template&lt;class _InIterator&gt;
+<span class="lineNum"> 1460 </span> : static _CharT*
+<span class="lineNum"> 1461 </span> : _S_construct_aux(_InIterator __beg, _InIterator __end,
+<span class="lineNum"> 1462 </span><span class="lineCov"> 1287 : const _Alloc&amp; __a, __false_type)</span>
+<span class="lineNum"> 1463 </span> : {
+<span class="lineNum"> 1464 </span> : typedef typename iterator_traits&lt;_InIterator&gt;::iterator_category _Tag;
+<span class="lineNum"> 1465 </span><span class="lineCov"> 1287 : return _S_construct(__beg, __end, __a, _Tag());</span>
+<span class="lineNum"> 1466 </span> : }
+<span class="lineNum"> 1467 </span> :
+<span class="lineNum"> 1468 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 1469 </span> : // 438. Ambiguity in the &quot;do the right thing&quot; clause
+<span class="lineNum"> 1470 </span> : template&lt;class _Integer&gt;
+<span class="lineNum"> 1471 </span> : static _CharT*
+<span class="lineNum"> 1472 </span> : _S_construct_aux(_Integer __beg, _Integer __end,
+<span class="lineNum"> 1473 </span> : const _Alloc&amp; __a, __true_type)
+<span class="lineNum"> 1474 </span> : { return _S_construct(static_cast&lt;size_type&gt;(__beg), __end, __a); }
+<span class="lineNum"> 1475 </span> :
+<span class="lineNum"> 1476 </span> : template&lt;class _InIterator&gt;
+<span class="lineNum"> 1477 </span> : static _CharT*
+<span class="lineNum"> 1478 </span><span class="lineCov"> 1287 : _S_construct(_InIterator __beg, _InIterator __end, const _Alloc&amp; __a)</span>
+<span class="lineNum"> 1479 </span> : {
+<span class="lineNum"> 1480 </span> : typedef typename std::__is_integer&lt;_InIterator&gt;::__type _Integral;
+<span class="lineNum"> 1481 </span><span class="lineCov"> 1287 : return _S_construct_aux(__beg, __end, __a, _Integral());</span>
+<span class="lineNum"> 1482 </span> : }
+<span class="lineNum"> 1483 </span> :
+<span class="lineNum"> 1484 </span> : // For Input Iterators, used in istreambuf_iterators, etc.
+<span class="lineNum"> 1485 </span> : template&lt;class _InIterator&gt;
+<span class="lineNum"> 1486 </span> : static _CharT*
+<span class="lineNum"> 1487 </span> : _S_construct(_InIterator __beg, _InIterator __end, const _Alloc&amp; __a,
+<span class="lineNum"> 1488 </span> : input_iterator_tag);
+<span class="lineNum"> 1489 </span> :
+<span class="lineNum"> 1490 </span> : // For forward_iterators up to random_access_iterators, used for
+<span class="lineNum"> 1491 </span> : // string::iterator, _CharT*, etc.
+<span class="lineNum"> 1492 </span> : template&lt;class _FwdIterator&gt;
+<span class="lineNum"> 1493 </span> : static _CharT*
+<span class="lineNum"> 1494 </span> : _S_construct(_FwdIterator __beg, _FwdIterator __end, const _Alloc&amp; __a,
+<span class="lineNum"> 1495 </span> : forward_iterator_tag);
+<span class="lineNum"> 1496 </span> :
+<span class="lineNum"> 1497 </span> : static _CharT*
+<span class="lineNum"> 1498 </span> : _S_construct(size_type __req, _CharT __c, const _Alloc&amp; __a);
+<span class="lineNum"> 1499 </span> :
+<span class="lineNum"> 1500 </span> : public:
+<span class="lineNum"> 1501 </span> :
+<span class="lineNum"> 1502 </span> : /**
+<span class="lineNum"> 1503 </span> : * @brief Copy substring into C string.
+<span class="lineNum"> 1504 </span> : * @param s C string to copy value into.
+<span class="lineNum"> 1505 </span> : * @param n Number of characters to copy.
+<span class="lineNum"> 1506 </span> : * @param pos Index of first character to copy.
+<span class="lineNum"> 1507 </span> : * @return Number of characters actually copied
+<span class="lineNum"> 1508 </span> : * @throw std::out_of_range If pos &gt; size().
+<span class="lineNum"> 1509 </span> : *
+<span class="lineNum"> 1510 </span> : * Copies up to @a n characters starting at @a pos into the C string @a
+<span class="lineNum"> 1511 </span> : * s. If @a pos is greater than size(), out_of_range is thrown.
+<span class="lineNum"> 1512 </span> : */
+<span class="lineNum"> 1513 </span> : size_type
+<span class="lineNum"> 1514 </span> : copy(_CharT* __s, size_type __n, size_type __pos = 0) const;
+<span class="lineNum"> 1515 </span> :
+<span class="lineNum"> 1516 </span> : /**
+<span class="lineNum"> 1517 </span> : * @brief Swap contents with another string.
+<span class="lineNum"> 1518 </span> : * @param s String to swap with.
+<span class="lineNum"> 1519 </span> : *
+<span class="lineNum"> 1520 </span> : * Exchanges the contents of this string with that of @a s in constant
+<span class="lineNum"> 1521 </span> : * time.
+<span class="lineNum"> 1522 </span> : */
+<span class="lineNum"> 1523 </span> : void
+<span class="lineNum"> 1524 </span> : swap(basic_string&amp; __s);
+<span class="lineNum"> 1525 </span> :
+<span class="lineNum"> 1526 </span> : // String operations:
+<span class="lineNum"> 1527 </span> : /**
+<span class="lineNum"> 1528 </span> : * @brief Return const pointer to null-terminated contents.
+<span class="lineNum"> 1529 </span> : *
+<span class="lineNum"> 1530 </span> : * This is a handle to internal data. Do not modify or dire things may
+<span class="lineNum"> 1531 </span> : * happen.
+<span class="lineNum"> 1532 </span> : */
+<span class="lineNum"> 1533 </span> : const _CharT*
+<span class="lineNum"> 1534 </span><span class="lineNoCov"> 0 : c_str() const</span>
+<span class="lineNum"> 1535 </span><span class="lineNoCov"> 0 : { return _M_data(); }</span>
+<span class="lineNum"> 1536 </span> :
+<span class="lineNum"> 1537 </span> : /**
+<span class="lineNum"> 1538 </span> : * @brief Return const pointer to contents.
+<span class="lineNum"> 1539 </span> : *
+<span class="lineNum"> 1540 </span> : * This is a handle to internal data. Do not modify or dire things may
+<span class="lineNum"> 1541 </span> : * happen.
+<span class="lineNum"> 1542 </span> : */
+<span class="lineNum"> 1543 </span> : const _CharT*
+<span class="lineNum"> 1544 </span><span class="lineNoCov"> 0 : data() const</span>
+<span class="lineNum"> 1545 </span><span class="lineNoCov"> 0 : { return _M_data(); }</span>
+<span class="lineNum"> 1546 </span> :
+<span class="lineNum"> 1547 </span> : /**
+<span class="lineNum"> 1548 </span> : * @brief Return copy of allocator used to construct this string.
+<span class="lineNum"> 1549 </span> : */
+<span class="lineNum"> 1550 </span> : allocator_type
+<span class="lineNum"> 1551 </span><span class="lineNoCov"> 0 : get_allocator() const</span>
+<span class="lineNum"> 1552 </span><span class="lineNoCov"> 0 : { return _M_dataplus; }</span>
+<span class="lineNum"> 1553 </span> :
+<span class="lineNum"> 1554 </span> : /**
+<span class="lineNum"> 1555 </span> : * @brief Find position of a C substring.
+<span class="lineNum"> 1556 </span> : * @param s C string to locate.
+<span class="lineNum"> 1557 </span> : * @param pos Index of character to search from.
+<span class="lineNum"> 1558 </span> : * @param n Number of characters from @a s to search for.
+<span class="lineNum"> 1559 </span> : * @return Index of start of first occurrence.
+<span class="lineNum"> 1560 </span> : *
+<span class="lineNum"> 1561 </span> : * Starting from @a pos, searches forward for the first @a n characters
+<span class="lineNum"> 1562 </span> : * in @a s within this string. If found, returns the index where it
+<span class="lineNum"> 1563 </span> : * begins. If not found, returns npos.
+<span class="lineNum"> 1564 </span> : */
+<span class="lineNum"> 1565 </span> : size_type
+<span class="lineNum"> 1566 </span> : find(const _CharT* __s, size_type __pos, size_type __n) const;
+<span class="lineNum"> 1567 </span> :
+<span class="lineNum"> 1568 </span> : /**
+<span class="lineNum"> 1569 </span> : * @brief Find position of a string.
+<span class="lineNum"> 1570 </span> : * @param str String to locate.
+<span class="lineNum"> 1571 </span> : * @param pos Index of character to search from (default 0).
+<span class="lineNum"> 1572 </span> : * @return Index of start of first occurrence.
+<span class="lineNum"> 1573 </span> : *
+<span class="lineNum"> 1574 </span> : * Starting from @a pos, searches forward for value of @a str within
+<span class="lineNum"> 1575 </span> : * this string. If found, returns the index where it begins. If not
+<span class="lineNum"> 1576 </span> : * found, returns npos.
+<span class="lineNum"> 1577 </span> : */
+<span class="lineNum"> 1578 </span> : size_type
+<span class="lineNum"> 1579 </span><span class="lineNoCov"> 0 : find(const basic_string&amp; __str, size_type __pos = 0) const</span>
+<span class="lineNum"> 1580 </span><span class="lineNoCov"> 0 : { return this-&gt;find(__str.data(), __pos, __str.size()); }</span>
+<span class="lineNum"> 1581 </span> :
+<span class="lineNum"> 1582 </span> : /**
+<span class="lineNum"> 1583 </span> : * @brief Find position of a C string.
+<span class="lineNum"> 1584 </span> : * @param s C string to locate.
+<span class="lineNum"> 1585 </span> : * @param pos Index of character to search from (default 0).
+<span class="lineNum"> 1586 </span> : * @return Index of start of first occurrence.
+<span class="lineNum"> 1587 </span> : *
+<span class="lineNum"> 1588 </span> : * Starting from @a pos, searches forward for the value of @a s within
+<span class="lineNum"> 1589 </span> : * this string. If found, returns the index where it begins. If not
+<span class="lineNum"> 1590 </span> : * found, returns npos.
+<span class="lineNum"> 1591 </span> : */
+<span class="lineNum"> 1592 </span> : size_type
+<span class="lineNum"> 1593 </span><span class="lineNoCov"> 0 : find(const _CharT* __s, size_type __pos = 0) const</span>
+<span class="lineNum"> 1594 </span> : {
+<span class="lineNum"> 1595 </span> : __glibcxx_requires_string(__s);
+<span class="lineNum"> 1596 </span><span class="lineNoCov"> 0 : return this-&gt;find(__s, __pos, traits_type::length(__s));</span>
+<span class="lineNum"> 1597 </span> : }
+<span class="lineNum"> 1598 </span> :
+<span class="lineNum"> 1599 </span> : /**
+<span class="lineNum"> 1600 </span> : * @brief Find position of a character.
+<span class="lineNum"> 1601 </span> : * @param c Character to locate.
+<span class="lineNum"> 1602 </span> : * @param pos Index of character to search from (default 0).
+<span class="lineNum"> 1603 </span> : * @return Index of first occurrence.
+<span class="lineNum"> 1604 </span> : *
+<span class="lineNum"> 1605 </span> : * Starting from @a pos, searches forward for @a c within this string.
+<span class="lineNum"> 1606 </span> : * If found, returns the index where it was found. If not found,
+<span class="lineNum"> 1607 </span> : * returns npos.
+<span class="lineNum"> 1608 </span> : */
+<span class="lineNum"> 1609 </span> : size_type
+<span class="lineNum"> 1610 </span> : find(_CharT __c, size_type __pos = 0) const;
+<span class="lineNum"> 1611 </span> :
+<span class="lineNum"> 1612 </span> : /**
+<span class="lineNum"> 1613 </span> : * @brief Find last position of a string.
+<span class="lineNum"> 1614 </span> : * @param str String to locate.
+<span class="lineNum"> 1615 </span> : * @param pos Index of character to search back from (default end).
+<span class="lineNum"> 1616 </span> : * @return Index of start of last occurrence.
+<span class="lineNum"> 1617 </span> : *
+<span class="lineNum"> 1618 </span> : * Starting from @a pos, searches backward for value of @a str within
+<span class="lineNum"> 1619 </span> : * this string. If found, returns the index where it begins. If not
+<span class="lineNum"> 1620 </span> : * found, returns npos.
+<span class="lineNum"> 1621 </span> : */
+<span class="lineNum"> 1622 </span> : size_type
+<span class="lineNum"> 1623 </span> : rfind(const basic_string&amp; __str, size_type __pos = npos) const
+<span class="lineNum"> 1624 </span> : { return this-&gt;rfind(__str.data(), __pos, __str.size()); }
+<span class="lineNum"> 1625 </span> :
+<span class="lineNum"> 1626 </span> : /**
+<span class="lineNum"> 1627 </span> : * @brief Find last position of a C substring.
+<span class="lineNum"> 1628 </span> : * @param s C string to locate.
+<span class="lineNum"> 1629 </span> : * @param pos Index of character to search back from.
+<span class="lineNum"> 1630 </span> : * @param n Number of characters from s to search for.
+<span class="lineNum"> 1631 </span> : * @return Index of start of last occurrence.
+<span class="lineNum"> 1632 </span> : *
+<span class="lineNum"> 1633 </span> : * Starting from @a pos, searches backward for the first @a n
+<span class="lineNum"> 1634 </span> : * characters in @a s within this string. If found, returns the index
+<span class="lineNum"> 1635 </span> : * where it begins. If not found, returns npos.
+<span class="lineNum"> 1636 </span> : */
+<span class="lineNum"> 1637 </span> : size_type
+<span class="lineNum"> 1638 </span> : rfind(const _CharT* __s, size_type __pos, size_type __n) const;
+<span class="lineNum"> 1639 </span> :
+<span class="lineNum"> 1640 </span> : /**
+<span class="lineNum"> 1641 </span> : * @brief Find last position of a C string.
+<span class="lineNum"> 1642 </span> : * @param s C string to locate.
+<span class="lineNum"> 1643 </span> : * @param pos Index of character to start search at (default end).
+<span class="lineNum"> 1644 </span> : * @return Index of start of last occurrence.
+<span class="lineNum"> 1645 </span> : *
+<span class="lineNum"> 1646 </span> : * Starting from @a pos, searches backward for the value of @a s within
+<span class="lineNum"> 1647 </span> : * this string. If found, returns the index where it begins. If not
+<span class="lineNum"> 1648 </span> : * found, returns npos.
+<span class="lineNum"> 1649 </span> : */
+<span class="lineNum"> 1650 </span> : size_type
+<span class="lineNum"> 1651 </span><span class="lineNoCov"> 0 : rfind(const _CharT* __s, size_type __pos = npos) const</span>
+<span class="lineNum"> 1652 </span> : {
+<span class="lineNum"> 1653 </span> : __glibcxx_requires_string(__s);
+<span class="lineNum"> 1654 </span><span class="lineNoCov"> 0 : return this-&gt;rfind(__s, __pos, traits_type::length(__s));</span>
+<span class="lineNum"> 1655 </span> : }
+<span class="lineNum"> 1656 </span> :
+<span class="lineNum"> 1657 </span> : /**
+<span class="lineNum"> 1658 </span> : * @brief Find last position of a character.
+<span class="lineNum"> 1659 </span> : * @param c Character to locate.
+<span class="lineNum"> 1660 </span> : * @param pos Index of character to search back from (default end).
+<span class="lineNum"> 1661 </span> : * @return Index of last occurrence.
+<span class="lineNum"> 1662 </span> : *
+<span class="lineNum"> 1663 </span> : * Starting from @a pos, searches backward for @a c within this string.
+<span class="lineNum"> 1664 </span> : * If found, returns the index where it was found. If not found,
+<span class="lineNum"> 1665 </span> : * returns npos.
+<span class="lineNum"> 1666 </span> : */
+<span class="lineNum"> 1667 </span> : size_type
+<span class="lineNum"> 1668 </span> : rfind(_CharT __c, size_type __pos = npos) const;
+<span class="lineNum"> 1669 </span> :
+<span class="lineNum"> 1670 </span> : /**
+<span class="lineNum"> 1671 </span> : * @brief Find position of a character of string.
+<span class="lineNum"> 1672 </span> : * @param str String containing characters to locate.
+<span class="lineNum"> 1673 </span> : * @param pos Index of character to search from (default 0).
+<span class="lineNum"> 1674 </span> : * @return Index of first occurrence.
+<span class="lineNum"> 1675 </span> : *
+<span class="lineNum"> 1676 </span> : * Starting from @a pos, searches forward for one of the characters of
+<span class="lineNum"> 1677 </span> : * @a str within this string. If found, returns the index where it was
+<span class="lineNum"> 1678 </span> : * found. If not found, returns npos.
+<span class="lineNum"> 1679 </span> : */
+<span class="lineNum"> 1680 </span> : size_type
+<span class="lineNum"> 1681 </span> : find_first_of(const basic_string&amp; __str, size_type __pos = 0) const
+<span class="lineNum"> 1682 </span> : { return this-&gt;find_first_of(__str.data(), __pos, __str.size()); }
+<span class="lineNum"> 1683 </span> :
+<span class="lineNum"> 1684 </span> : /**
+<span class="lineNum"> 1685 </span> : * @brief Find position of a character of C substring.
+<span class="lineNum"> 1686 </span> : * @param s String containing characters to locate.
+<span class="lineNum"> 1687 </span> : * @param pos Index of character to search from.
+<span class="lineNum"> 1688 </span> : * @param n Number of characters from s to search for.
+<span class="lineNum"> 1689 </span> : * @return Index of first occurrence.
+<span class="lineNum"> 1690 </span> : *
+<span class="lineNum"> 1691 </span> : * Starting from @a pos, searches forward for one of the first @a n
+<span class="lineNum"> 1692 </span> : * characters of @a s within this string. If found, returns the index
+<span class="lineNum"> 1693 </span> : * where it was found. If not found, returns npos.
+<span class="lineNum"> 1694 </span> : */
+<span class="lineNum"> 1695 </span> : size_type
+<span class="lineNum"> 1696 </span> : find_first_of(const _CharT* __s, size_type __pos, size_type __n) const;
+<span class="lineNum"> 1697 </span> :
+<span class="lineNum"> 1698 </span> : /**
+<span class="lineNum"> 1699 </span> : * @brief Find position of a character of C string.
+<span class="lineNum"> 1700 </span> : * @param s String containing characters to locate.
+<span class="lineNum"> 1701 </span> : * @param pos Index of character to search from (default 0).
+<span class="lineNum"> 1702 </span> : * @return Index of first occurrence.
+<span class="lineNum"> 1703 </span> : *
+<span class="lineNum"> 1704 </span> : * Starting from @a pos, searches forward for one of the characters of
+<span class="lineNum"> 1705 </span> : * @a s within this string. If found, returns the index where it was
+<span class="lineNum"> 1706 </span> : * found. If not found, returns npos.
+<span class="lineNum"> 1707 </span> : */
+<span class="lineNum"> 1708 </span> : size_type
+<span class="lineNum"> 1709 </span> : find_first_of(const _CharT* __s, size_type __pos = 0) const
+<span class="lineNum"> 1710 </span> : {
+<span class="lineNum"> 1711 </span> : __glibcxx_requires_string(__s);
+<span class="lineNum"> 1712 </span> : return this-&gt;find_first_of(__s, __pos, traits_type::length(__s));
+<span class="lineNum"> 1713 </span> : }
+<span class="lineNum"> 1714 </span> :
+<span class="lineNum"> 1715 </span> : /**
+<span class="lineNum"> 1716 </span> : * @brief Find position of a character.
+<span class="lineNum"> 1717 </span> : * @param c Character to locate.
+<span class="lineNum"> 1718 </span> : * @param pos Index of character to search from (default 0).
+<span class="lineNum"> 1719 </span> : * @return Index of first occurrence.
+<span class="lineNum"> 1720 </span> : *
+<span class="lineNum"> 1721 </span> : * Starting from @a pos, searches forward for the character @a c within
+<span class="lineNum"> 1722 </span> : * this string. If found, returns the index where it was found. If
+<span class="lineNum"> 1723 </span> : * not found, returns npos.
+<span class="lineNum"> 1724 </span> : *
+<span class="lineNum"> 1725 </span> : * Note: equivalent to find(c, pos).
+<span class="lineNum"> 1726 </span> : */
+<span class="lineNum"> 1727 </span> : size_type
+<span class="lineNum"> 1728 </span> : find_first_of(_CharT __c, size_type __pos = 0) const
+<span class="lineNum"> 1729 </span> : { return this-&gt;find(__c, __pos); }
+<span class="lineNum"> 1730 </span> :
+<span class="lineNum"> 1731 </span> : /**
+<span class="lineNum"> 1732 </span> : * @brief Find last position of a character of string.
+<span class="lineNum"> 1733 </span> : * @param str String containing characters to locate.
+<span class="lineNum"> 1734 </span> : * @param pos Index of character to search back from (default end).
+<span class="lineNum"> 1735 </span> : * @return Index of last occurrence.
+<span class="lineNum"> 1736 </span> : *
+<span class="lineNum"> 1737 </span> : * Starting from @a pos, searches backward for one of the characters of
+<span class="lineNum"> 1738 </span> : * @a str within this string. If found, returns the index where it was
+<span class="lineNum"> 1739 </span> : * found. If not found, returns npos.
+<span class="lineNum"> 1740 </span> : */
+<span class="lineNum"> 1741 </span> : size_type
+<span class="lineNum"> 1742 </span> : find_last_of(const basic_string&amp; __str, size_type __pos = npos) const
+<span class="lineNum"> 1743 </span> : { return this-&gt;find_last_of(__str.data(), __pos, __str.size()); }
+<span class="lineNum"> 1744 </span> :
+<span class="lineNum"> 1745 </span> : /**
+<span class="lineNum"> 1746 </span> : * @brief Find last position of a character of C substring.
+<span class="lineNum"> 1747 </span> : * @param s C string containing characters to locate.
+<span class="lineNum"> 1748 </span> : * @param pos Index of character to search back from.
+<span class="lineNum"> 1749 </span> : * @param n Number of characters from s to search for.
+<span class="lineNum"> 1750 </span> : * @return Index of last occurrence.
+<span class="lineNum"> 1751 </span> : *
+<span class="lineNum"> 1752 </span> : * Starting from @a pos, searches backward for one of the first @a n
+<span class="lineNum"> 1753 </span> : * characters of @a s within this string. If found, returns the index
+<span class="lineNum"> 1754 </span> : * where it was found. If not found, returns npos.
+<span class="lineNum"> 1755 </span> : */
+<span class="lineNum"> 1756 </span> : size_type
+<span class="lineNum"> 1757 </span> : find_last_of(const _CharT* __s, size_type __pos, size_type __n) const;
+<span class="lineNum"> 1758 </span> :
+<span class="lineNum"> 1759 </span> : /**
+<span class="lineNum"> 1760 </span> : * @brief Find last position of a character of C string.
+<span class="lineNum"> 1761 </span> : * @param s C string containing characters to locate.
+<span class="lineNum"> 1762 </span> : * @param pos Index of character to search back from (default end).
+<span class="lineNum"> 1763 </span> : * @return Index of last occurrence.
+<span class="lineNum"> 1764 </span> : *
+<span class="lineNum"> 1765 </span> : * Starting from @a pos, searches backward for one of the characters of
+<span class="lineNum"> 1766 </span> : * @a s within this string. If found, returns the index where it was
+<span class="lineNum"> 1767 </span> : * found. If not found, returns npos.
+<span class="lineNum"> 1768 </span> : */
+<span class="lineNum"> 1769 </span> : size_type
+<span class="lineNum"> 1770 </span> : find_last_of(const _CharT* __s, size_type __pos = npos) const
+<span class="lineNum"> 1771 </span> : {
+<span class="lineNum"> 1772 </span> : __glibcxx_requires_string(__s);
+<span class="lineNum"> 1773 </span> : return this-&gt;find_last_of(__s, __pos, traits_type::length(__s));
+<span class="lineNum"> 1774 </span> : }
+<span class="lineNum"> 1775 </span> :
+<span class="lineNum"> 1776 </span> : /**
+<span class="lineNum"> 1777 </span> : * @brief Find last position of a character.
+<span class="lineNum"> 1778 </span> : * @param c Character to locate.
+<span class="lineNum"> 1779 </span> : * @param pos Index of character to search back from (default end).
+<span class="lineNum"> 1780 </span> : * @return Index of last occurrence.
+<span class="lineNum"> 1781 </span> : *
+<span class="lineNum"> 1782 </span> : * Starting from @a pos, searches backward for @a c within this string.
+<span class="lineNum"> 1783 </span> : * If found, returns the index where it was found. If not found,
+<span class="lineNum"> 1784 </span> : * returns npos.
+<span class="lineNum"> 1785 </span> : *
+<span class="lineNum"> 1786 </span> : * Note: equivalent to rfind(c, pos).
+<span class="lineNum"> 1787 </span> : */
+<span class="lineNum"> 1788 </span> : size_type
+<span class="lineNum"> 1789 </span> : find_last_of(_CharT __c, size_type __pos = npos) const
+<span class="lineNum"> 1790 </span> : { return this-&gt;rfind(__c, __pos); }
+<span class="lineNum"> 1791 </span> :
+<span class="lineNum"> 1792 </span> : /**
+<span class="lineNum"> 1793 </span> : * @brief Find position of a character not in string.
+<span class="lineNum"> 1794 </span> : * @param str String containing characters to avoid.
+<span class="lineNum"> 1795 </span> : * @param pos Index of character to search from (default 0).
+<span class="lineNum"> 1796 </span> : * @return Index of first occurrence.
+<span class="lineNum"> 1797 </span> : *
+<span class="lineNum"> 1798 </span> : * Starting from @a pos, searches forward for a character not contained
+<span class="lineNum"> 1799 </span> : * in @a str within this string. If found, returns the index where it
+<span class="lineNum"> 1800 </span> : * was found. If not found, returns npos.
+<span class="lineNum"> 1801 </span> : */
+<span class="lineNum"> 1802 </span> : size_type
+<span class="lineNum"> 1803 </span> : find_first_not_of(const basic_string&amp; __str, size_type __pos = 0) const
+<span class="lineNum"> 1804 </span> : { return this-&gt;find_first_not_of(__str.data(), __pos, __str.size()); }
+<span class="lineNum"> 1805 </span> :
+<span class="lineNum"> 1806 </span> : /**
+<span class="lineNum"> 1807 </span> : * @brief Find position of a character not in C substring.
+<span class="lineNum"> 1808 </span> : * @param s C string containing characters to avoid.
+<span class="lineNum"> 1809 </span> : * @param pos Index of character to search from.
+<span class="lineNum"> 1810 </span> : * @param n Number of characters from s to consider.
+<span class="lineNum"> 1811 </span> : * @return Index of first occurrence.
+<span class="lineNum"> 1812 </span> : *
+<span class="lineNum"> 1813 </span> : * Starting from @a pos, searches forward for a character not contained
+<span class="lineNum"> 1814 </span> : * in the first @a n characters of @a s within this string. If found,
+<span class="lineNum"> 1815 </span> : * returns the index where it was found. If not found, returns npos.
+<span class="lineNum"> 1816 </span> : */
+<span class="lineNum"> 1817 </span> : size_type
+<span class="lineNum"> 1818 </span> : find_first_not_of(const _CharT* __s, size_type __pos,
+<span class="lineNum"> 1819 </span> : size_type __n) const;
+<span class="lineNum"> 1820 </span> :
+<span class="lineNum"> 1821 </span> : /**
+<span class="lineNum"> 1822 </span> : * @brief Find position of a character not in C string.
+<span class="lineNum"> 1823 </span> : * @param s C string containing characters to avoid.
+<span class="lineNum"> 1824 </span> : * @param pos Index of character to search from (default 0).
+<span class="lineNum"> 1825 </span> : * @return Index of first occurrence.
+<span class="lineNum"> 1826 </span> : *
+<span class="lineNum"> 1827 </span> : * Starting from @a pos, searches forward for a character not contained
+<span class="lineNum"> 1828 </span> : * in @a s within this string. If found, returns the index where it
+<span class="lineNum"> 1829 </span> : * was found. If not found, returns npos.
+<span class="lineNum"> 1830 </span> : */
+<span class="lineNum"> 1831 </span> : size_type
+<span class="lineNum"> 1832 </span> : find_first_not_of(const _CharT* __s, size_type __pos = 0) const
+<span class="lineNum"> 1833 </span> : {
+<span class="lineNum"> 1834 </span> : __glibcxx_requires_string(__s);
+<span class="lineNum"> 1835 </span> : return this-&gt;find_first_not_of(__s, __pos, traits_type::length(__s));
+<span class="lineNum"> 1836 </span> : }
+<span class="lineNum"> 1837 </span> :
+<span class="lineNum"> 1838 </span> : /**
+<span class="lineNum"> 1839 </span> : * @brief Find position of a different character.
+<span class="lineNum"> 1840 </span> : * @param c Character to avoid.
+<span class="lineNum"> 1841 </span> : * @param pos Index of character to search from (default 0).
+<span class="lineNum"> 1842 </span> : * @return Index of first occurrence.
+<span class="lineNum"> 1843 </span> : *
+<span class="lineNum"> 1844 </span> : * Starting from @a pos, searches forward for a character other than @a c
+<span class="lineNum"> 1845 </span> : * within this string. If found, returns the index where it was found.
+<span class="lineNum"> 1846 </span> : * If not found, returns npos.
+<span class="lineNum"> 1847 </span> : */
+<span class="lineNum"> 1848 </span> : size_type
+<span class="lineNum"> 1849 </span> : find_first_not_of(_CharT __c, size_type __pos = 0) const;
+<span class="lineNum"> 1850 </span> :
+<span class="lineNum"> 1851 </span> : /**
+<span class="lineNum"> 1852 </span> : * @brief Find last position of a character not in string.
+<span class="lineNum"> 1853 </span> : * @param str String containing characters to avoid.
+<span class="lineNum"> 1854 </span> : * @param pos Index of character to search back from (default end).
+<span class="lineNum"> 1855 </span> : * @return Index of last occurrence.
+<span class="lineNum"> 1856 </span> : *
+<span class="lineNum"> 1857 </span> : * Starting from @a pos, searches backward for a character not
+<span class="lineNum"> 1858 </span> : * contained in @a str within this string. If found, returns the index
+<span class="lineNum"> 1859 </span> : * where it was found. If not found, returns npos.
+<span class="lineNum"> 1860 </span> : */
+<span class="lineNum"> 1861 </span> : size_type
+<span class="lineNum"> 1862 </span> : find_last_not_of(const basic_string&amp; __str, size_type __pos = npos) const
+<span class="lineNum"> 1863 </span> : { return this-&gt;find_last_not_of(__str.data(), __pos, __str.size()); }
+<span class="lineNum"> 1864 </span> :
+<span class="lineNum"> 1865 </span> : /**
+<span class="lineNum"> 1866 </span> : * @brief Find last position of a character not in C substring.
+<span class="lineNum"> 1867 </span> : * @param s C string containing characters to avoid.
+<span class="lineNum"> 1868 </span> : * @param pos Index of character to search back from.
+<span class="lineNum"> 1869 </span> : * @param n Number of characters from s to consider.
+<span class="lineNum"> 1870 </span> : * @return Index of last occurrence.
+<span class="lineNum"> 1871 </span> : *
+<span class="lineNum"> 1872 </span> : * Starting from @a pos, searches backward for a character not
+<span class="lineNum"> 1873 </span> : * contained in the first @a n characters of @a s within this string.
+<span class="lineNum"> 1874 </span> : * If found, returns the index where it was found. If not found,
+<span class="lineNum"> 1875 </span> : * returns npos.
+<span class="lineNum"> 1876 </span> : */
+<span class="lineNum"> 1877 </span> : size_type
+<span class="lineNum"> 1878 </span> : find_last_not_of(const _CharT* __s, size_type __pos,
+<span class="lineNum"> 1879 </span> : size_type __n) const;
+<span class="lineNum"> 1880 </span> : /**
+<span class="lineNum"> 1881 </span> : * @brief Find last position of a character not in C string.
+<span class="lineNum"> 1882 </span> : * @param s C string containing characters to avoid.
+<span class="lineNum"> 1883 </span> : * @param pos Index of character to search back from (default end).
+<span class="lineNum"> 1884 </span> : * @return Index of last occurrence.
+<span class="lineNum"> 1885 </span> : *
+<span class="lineNum"> 1886 </span> : * Starting from @a pos, searches backward for a character not
+<span class="lineNum"> 1887 </span> : * contained in @a s within this string. If found, returns the index
+<span class="lineNum"> 1888 </span> : * where it was found. If not found, returns npos.
+<span class="lineNum"> 1889 </span> : */
+<span class="lineNum"> 1890 </span> : size_type
+<span class="lineNum"> 1891 </span><span class="lineNoCov"> 0 : find_last_not_of(const _CharT* __s, size_type __pos = npos) const</span>
+<span class="lineNum"> 1892 </span> : {
+<span class="lineNum"> 1893 </span> : __glibcxx_requires_string(__s);
+<span class="lineNum"> 1894 </span><span class="lineNoCov"> 0 : return this-&gt;find_last_not_of(__s, __pos, traits_type::length(__s));</span>
+<span class="lineNum"> 1895 </span> : }
+<span class="lineNum"> 1896 </span> :
+<span class="lineNum"> 1897 </span> : /**
+<span class="lineNum"> 1898 </span> : * @brief Find last position of a different character.
+<span class="lineNum"> 1899 </span> : * @param c Character to avoid.
+<span class="lineNum"> 1900 </span> : * @param pos Index of character to search back from (default end).
+<span class="lineNum"> 1901 </span> : * @return Index of last occurrence.
+<span class="lineNum"> 1902 </span> : *
+<span class="lineNum"> 1903 </span> : * Starting from @a pos, searches backward for a character other than
+<span class="lineNum"> 1904 </span> : * @a c within this string. If found, returns the index where it was
+<span class="lineNum"> 1905 </span> : * found. If not found, returns npos.
+<span class="lineNum"> 1906 </span> : */
+<span class="lineNum"> 1907 </span> : size_type
+<span class="lineNum"> 1908 </span> : find_last_not_of(_CharT __c, size_type __pos = npos) const;
+<span class="lineNum"> 1909 </span> :
+<span class="lineNum"> 1910 </span> : /**
+<span class="lineNum"> 1911 </span> : * @brief Get a substring.
+<span class="lineNum"> 1912 </span> : * @param pos Index of first character (default 0).
+<span class="lineNum"> 1913 </span> : * @param n Number of characters in substring (default remainder).
+<span class="lineNum"> 1914 </span> : * @return The new string.
+<span class="lineNum"> 1915 </span> : * @throw std::out_of_range If pos &gt; size().
+<span class="lineNum"> 1916 </span> : *
+<span class="lineNum"> 1917 </span> : * Construct and return a new string using the @a n characters starting
+<span class="lineNum"> 1918 </span> : * at @a pos. If the string is too short, use the remainder of the
+<span class="lineNum"> 1919 </span> : * characters. If @a pos is beyond the end of the string, out_of_range
+<span class="lineNum"> 1920 </span> : * is thrown.
+<span class="lineNum"> 1921 </span> : */
+<span class="lineNum"> 1922 </span> : basic_string
+<span class="lineNum"> 1923 </span><span class="lineNoCov"> 0 : substr(size_type __pos = 0, size_type __n = npos) const</span>
+<span class="lineNum"> 1924 </span> : { return basic_string(*this,
+<span class="lineNum"> 1925 </span><span class="lineNoCov"> 0 : _M_check(__pos, &quot;basic_string::substr&quot;), __n); }</span>
+<span class="lineNum"> 1926 </span> :
+<span class="lineNum"> 1927 </span> : /**
+<span class="lineNum"> 1928 </span> : * @brief Compare to a string.
+<span class="lineNum"> 1929 </span> : * @param str String to compare against.
+<span class="lineNum"> 1930 </span> : * @return Integer &lt; 0, 0, or &gt; 0.
+<span class="lineNum"> 1931 </span> : *
+<span class="lineNum"> 1932 </span> : * Returns an integer &lt; 0 if this string is ordered before @a str, 0 if
+<span class="lineNum"> 1933 </span> : * their values are equivalent, or &gt; 0 if this string is ordered after
+<span class="lineNum"> 1934 </span> : * @a str. Determines the effective length rlen of the strings to
+<span class="lineNum"> 1935 </span> : * compare as the smallest of size() and str.size(). The function
+<span class="lineNum"> 1936 </span> : * then compares the two strings by calling traits::compare(data(),
+<span class="lineNum"> 1937 </span> : * str.data(),rlen). If the result of the comparison is nonzero returns
+<span class="lineNum"> 1938 </span> : * it, otherwise the shorter one is ordered first.
+<span class="lineNum"> 1939 </span> : */
+<span class="lineNum"> 1940 </span> : int
+<span class="lineNum"> 1941 </span><span class="lineNoCov"> 0 : compare(const basic_string&amp; __str) const</span>
+<span class="lineNum"> 1942 </span> : {
+<span class="lineNum"> 1943 </span><span class="lineNoCov"> 0 : const size_type __size = this-&gt;size();</span>
+<span class="lineNum"> 1944 </span><span class="lineNoCov"> 0 : const size_type __osize = __str.size();</span>
+<span class="lineNum"> 1945 </span><span class="lineNoCov"> 0 : const size_type __len = std::min(__size, __osize);</span>
+<span class="lineNum"> 1946 </span> :
+<span class="lineNum"> 1947 </span><span class="lineNoCov"> 0 : int __r = traits_type::compare(_M_data(), __str.data(), __len);</span>
+<span class="lineNum"> 1948 </span><span class="lineNoCov"> 0 : if (!__r)</span>
+<span class="lineNum"> 1949 </span><span class="lineNoCov"> 0 : __r = _S_compare(__size, __osize);</span>
+<span class="lineNum"> 1950 </span><span class="lineNoCov"> 0 : return __r;</span>
+<span class="lineNum"> 1951 </span> : }
+<span class="lineNum"> 1952 </span> :
+<span class="lineNum"> 1953 </span> : /**
+<span class="lineNum"> 1954 </span> : * @brief Compare substring to a string.
+<span class="lineNum"> 1955 </span> : * @param pos Index of first character of substring.
+<span class="lineNum"> 1956 </span> : * @param n Number of characters in substring.
+<span class="lineNum"> 1957 </span> : * @param str String to compare against.
+<span class="lineNum"> 1958 </span> : * @return Integer &lt; 0, 0, or &gt; 0.
+<span class="lineNum"> 1959 </span> : *
+<span class="lineNum"> 1960 </span> : * Form the substring of this string from the @a n characters starting
+<span class="lineNum"> 1961 </span> : * at @a pos. Returns an integer &lt; 0 if the substring is ordered
+<span class="lineNum"> 1962 </span> : * before @a str, 0 if their values are equivalent, or &gt; 0 if the
+<span class="lineNum"> 1963 </span> : * substring is ordered after @a str. Determines the effective length
+<span class="lineNum"> 1964 </span> : * rlen of the strings to compare as the smallest of the length of the
+<span class="lineNum"> 1965 </span> : * substring and @a str.size(). The function then compares the two
+<span class="lineNum"> 1966 </span> : * strings by calling traits::compare(substring.data(),str.data(),rlen).
+<span class="lineNum"> 1967 </span> : * If the result of the comparison is nonzero returns it, otherwise the
+<span class="lineNum"> 1968 </span> : * shorter one is ordered first.
+<span class="lineNum"> 1969 </span> : */
+<span class="lineNum"> 1970 </span> : int
+<span class="lineNum"> 1971 </span> : compare(size_type __pos, size_type __n, const basic_string&amp; __str) const;
+<span class="lineNum"> 1972 </span> :
+<span class="lineNum"> 1973 </span> : /**
+<span class="lineNum"> 1974 </span> : * @brief Compare substring to a substring.
+<span class="lineNum"> 1975 </span> : * @param pos1 Index of first character of substring.
+<span class="lineNum"> 1976 </span> : * @param n1 Number of characters in substring.
+<span class="lineNum"> 1977 </span> : * @param str String to compare against.
+<span class="lineNum"> 1978 </span> : * @param pos2 Index of first character of substring of str.
+<span class="lineNum"> 1979 </span> : * @param n2 Number of characters in substring of str.
+<span class="lineNum"> 1980 </span> : * @return Integer &lt; 0, 0, or &gt; 0.
+<span class="lineNum"> 1981 </span> : *
+<span class="lineNum"> 1982 </span> : * Form the substring of this string from the @a n1 characters starting
+<span class="lineNum"> 1983 </span> : * at @a pos1. Form the substring of @a str from the @a n2 characters
+<span class="lineNum"> 1984 </span> : * starting at @a pos2. Returns an integer &lt; 0 if this substring is
+<span class="lineNum"> 1985 </span> : * ordered before the substring of @a str, 0 if their values are
+<span class="lineNum"> 1986 </span> : * equivalent, or &gt; 0 if this substring is ordered after the substring
+<span class="lineNum"> 1987 </span> : * of @a str. Determines the effective length rlen of the strings
+<span class="lineNum"> 1988 </span> : * to compare as the smallest of the lengths of the substrings. The
+<span class="lineNum"> 1989 </span> : * function then compares the two strings by calling
+<span class="lineNum"> 1990 </span> : * traits::compare(substring.data(),str.substr(pos2,n2).data(),rlen).
+<span class="lineNum"> 1991 </span> : * If the result of the comparison is nonzero returns it, otherwise the
+<span class="lineNum"> 1992 </span> : * shorter one is ordered first.
+<span class="lineNum"> 1993 </span> : */
+<span class="lineNum"> 1994 </span> : int
+<span class="lineNum"> 1995 </span> : compare(size_type __pos1, size_type __n1, const basic_string&amp; __str,
+<span class="lineNum"> 1996 </span> : size_type __pos2, size_type __n2) const;
+<span class="lineNum"> 1997 </span> :
+<span class="lineNum"> 1998 </span> : /**
+<span class="lineNum"> 1999 </span> : * @brief Compare to a C string.
+<span class="lineNum"> 2000 </span> : * @param s C string to compare against.
+<span class="lineNum"> 2001 </span> : * @return Integer &lt; 0, 0, or &gt; 0.
+<span class="lineNum"> 2002 </span> : *
+<span class="lineNum"> 2003 </span> : * Returns an integer &lt; 0 if this string is ordered before @a s, 0 if
+<span class="lineNum"> 2004 </span> : * their values are equivalent, or &gt; 0 if this string is ordered after
+<span class="lineNum"> 2005 </span> : * @a s. Determines the effective length rlen of the strings to
+<span class="lineNum"> 2006 </span> : * compare as the smallest of size() and the length of a string
+<span class="lineNum"> 2007 </span> : * constructed from @a s. The function then compares the two strings
+<span class="lineNum"> 2008 </span> : * by calling traits::compare(data(),s,rlen). If the result of the
+<span class="lineNum"> 2009 </span> : * comparison is nonzero returns it, otherwise the shorter one is
+<span class="lineNum"> 2010 </span> : * ordered first.
+<span class="lineNum"> 2011 </span> : */
+<span class="lineNum"> 2012 </span> : int
+<span class="lineNum"> 2013 </span> : compare(const _CharT* __s) const;
+<span class="lineNum"> 2014 </span> :
+<span class="lineNum"> 2015 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 2016 </span> : // 5 String::compare specification questionable
+<span class="lineNum"> 2017 </span> : /**
+<span class="lineNum"> 2018 </span> : * @brief Compare substring to a C string.
+<span class="lineNum"> 2019 </span> : * @param pos Index of first character of substring.
+<span class="lineNum"> 2020 </span> : * @param n1 Number of characters in substring.
+<span class="lineNum"> 2021 </span> : * @param s C string to compare against.
+<span class="lineNum"> 2022 </span> : * @return Integer &lt; 0, 0, or &gt; 0.
+<span class="lineNum"> 2023 </span> : *
+<span class="lineNum"> 2024 </span> : * Form the substring of this string from the @a n1 characters starting
+<span class="lineNum"> 2025 </span> : * at @a pos. Returns an integer &lt; 0 if the substring is ordered
+<span class="lineNum"> 2026 </span> : * before @a s, 0 if their values are equivalent, or &gt; 0 if the
+<span class="lineNum"> 2027 </span> : * substring is ordered after @a s. Determines the effective length
+<span class="lineNum"> 2028 </span> : * rlen of the strings to compare as the smallest of the length of the
+<span class="lineNum"> 2029 </span> : * substring and the length of a string constructed from @a s. The
+<span class="lineNum"> 2030 </span> : * function then compares the two string by calling
+<span class="lineNum"> 2031 </span> : * traits::compare(substring.data(),s,rlen). If the result of the
+<span class="lineNum"> 2032 </span> : * comparison is nonzero returns it, otherwise the shorter one is
+<span class="lineNum"> 2033 </span> : * ordered first.
+<span class="lineNum"> 2034 </span> : */
+<span class="lineNum"> 2035 </span> : int
+<span class="lineNum"> 2036 </span> : compare(size_type __pos, size_type __n1, const _CharT* __s) const;
+<span class="lineNum"> 2037 </span> :
+<span class="lineNum"> 2038 </span> : /**
+<span class="lineNum"> 2039 </span> : * @brief Compare substring against a character array.
+<span class="lineNum"> 2040 </span> : * @param pos1 Index of first character of substring.
+<span class="lineNum"> 2041 </span> : * @param n1 Number of characters in substring.
+<span class="lineNum"> 2042 </span> : * @param s character array to compare against.
+<span class="lineNum"> 2043 </span> : * @param n2 Number of characters of s.
+<span class="lineNum"> 2044 </span> : * @return Integer &lt; 0, 0, or &gt; 0.
+<span class="lineNum"> 2045 </span> : *
+<span class="lineNum"> 2046 </span> : * Form the substring of this string from the @a n1 characters starting
+<span class="lineNum"> 2047 </span> : * at @a pos1. Form a string from the first @a n2 characters of @a s.
+<span class="lineNum"> 2048 </span> : * Returns an integer &lt; 0 if this substring is ordered before the string
+<span class="lineNum"> 2049 </span> : * from @a s, 0 if their values are equivalent, or &gt; 0 if this substring
+<span class="lineNum"> 2050 </span> : * is ordered after the string from @a s. Determines the effective
+<span class="lineNum"> 2051 </span> : * length rlen of the strings to compare as the smallest of the length
+<span class="lineNum"> 2052 </span> : * of the substring and @a n2. The function then compares the two
+<span class="lineNum"> 2053 </span> : * strings by calling traits::compare(substring.data(),s,rlen). If the
+<span class="lineNum"> 2054 </span> : * result of the comparison is nonzero returns it, otherwise the shorter
+<span class="lineNum"> 2055 </span> : * one is ordered first.
+<span class="lineNum"> 2056 </span> : *
+<span class="lineNum"> 2057 </span> : * NB: s must have at least n2 characters, '\0' has no special
+<span class="lineNum"> 2058 </span> : * meaning.
+<span class="lineNum"> 2059 </span> : */
+<span class="lineNum"> 2060 </span> : int
+<span class="lineNum"> 2061 </span> : compare(size_type __pos, size_type __n1, const _CharT* __s,
+<span class="lineNum"> 2062 </span> : size_type __n2) const;
+<span class="lineNum"> 2063 </span> : };
+<span class="lineNum"> 2064 </span> :
+<span class="lineNum"> 2065 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2066 </span> : inline basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 2067 </span><span class="lineNoCov"> 0 : basic_string()</span>
+<span class="lineNum"> 2068 </span> : #ifndef _GLIBCXX_FULLY_DYNAMIC_STRING
+<span class="lineNum"> 2069 </span><span class="lineNoCov"> 0 : : _M_dataplus(_S_empty_rep()._M_refdata(), _Alloc()) { }</span>
+<span class="lineNum"> 2070 </span> : #else
+<span class="lineNum"> 2071 </span> : : _M_dataplus(_S_construct(size_type(), _CharT(), _Alloc()), _Alloc()) { }
+<span class="lineNum"> 2072 </span> : #endif
+<span class="lineNum"> 2073 </span> :
+<span class="lineNum"> 2074 </span> : // operator+
+<span class="lineNum"> 2075 </span> : /**
+<span class="lineNum"> 2076 </span> : * @brief Concatenate two strings.
+<span class="lineNum"> 2077 </span> : * @param lhs First string.
+<span class="lineNum"> 2078 </span> : * @param rhs Last string.
+<span class="lineNum"> 2079 </span> : * @return New string with value of @a lhs followed by @a rhs.
+<span class="lineNum"> 2080 </span> : */
+<span class="lineNum"> 2081 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2082 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;
+<span class="lineNum"> 2083 </span> : operator+(const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __lhs,
+<span class="lineNum"> 2084 </span><span class="lineCov"> 715370 : const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __rhs)</span>
+<span class="lineNum"> 2085 </span> : {
+<span class="lineNum"> 2086 </span><span class="lineCov"> 715370 : basic_string&lt;_CharT, _Traits, _Alloc&gt; __str(__lhs);</span>
+<span class="lineNum"> 2087 </span><span class="lineCov"> 715370 : __str.append(__rhs);</span>
+<span class="lineNum"> 2088 </span><span class="lineNoCov"> 0 : return __str;</span>
+<span class="lineNum"> 2089 </span> : }
+<span class="lineNum"> 2090 </span> :
+<span class="lineNum"> 2091 </span> : /**
+<span class="lineNum"> 2092 </span> : * @brief Concatenate C string and string.
+<span class="lineNum"> 2093 </span> : * @param lhs First string.
+<span class="lineNum"> 2094 </span> : * @param rhs Last string.
+<span class="lineNum"> 2095 </span> : * @return New string with value of @a lhs followed by @a rhs.
+<span class="lineNum"> 2096 </span> : */
+<span class="lineNum"> 2097 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2098 </span> : basic_string&lt;_CharT,_Traits,_Alloc&gt;
+<span class="lineNum"> 2099 </span> : operator+(const _CharT* __lhs,
+<span class="lineNum"> 2100 </span> : const basic_string&lt;_CharT,_Traits,_Alloc&gt;&amp; __rhs);
+<span class="lineNum"> 2101 </span> :
+<span class="lineNum"> 2102 </span> : /**
+<span class="lineNum"> 2103 </span> : * @brief Concatenate character and string.
+<span class="lineNum"> 2104 </span> : * @param lhs First string.
+<span class="lineNum"> 2105 </span> : * @param rhs Last string.
+<span class="lineNum"> 2106 </span> : * @return New string with @a lhs followed by @a rhs.
+<span class="lineNum"> 2107 </span> : */
+<span class="lineNum"> 2108 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2109 </span> : basic_string&lt;_CharT,_Traits,_Alloc&gt;
+<span class="lineNum"> 2110 </span> : operator+(_CharT __lhs, const basic_string&lt;_CharT,_Traits,_Alloc&gt;&amp; __rhs);
+<span class="lineNum"> 2111 </span> :
+<span class="lineNum"> 2112 </span> : /**
+<span class="lineNum"> 2113 </span> : * @brief Concatenate string and C string.
+<span class="lineNum"> 2114 </span> : * @param lhs First string.
+<span class="lineNum"> 2115 </span> : * @param rhs Last string.
+<span class="lineNum"> 2116 </span> : * @return New string with @a lhs followed by @a rhs.
+<span class="lineNum"> 2117 </span> : */
+<span class="lineNum"> 2118 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2119 </span> : inline basic_string&lt;_CharT, _Traits, _Alloc&gt;
+<span class="lineNum"> 2120 </span> : operator+(const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __lhs,
+<span class="lineNum"> 2121 </span><span class="lineCov"> 5962 : const _CharT* __rhs)</span>
+<span class="lineNum"> 2122 </span> : {
+<span class="lineNum"> 2123 </span><span class="lineCov"> 5962 : basic_string&lt;_CharT, _Traits, _Alloc&gt; __str(__lhs);</span>
+<span class="lineNum"> 2124 </span><span class="lineCov"> 5962 : __str.append(__rhs);</span>
+<span class="lineNum"> 2125 </span><span class="lineNoCov"> 0 : return __str;</span>
+<span class="lineNum"> 2126 </span> : }
+<span class="lineNum"> 2127 </span> :
+<span class="lineNum"> 2128 </span> : /**
+<span class="lineNum"> 2129 </span> : * @brief Concatenate string and character.
+<span class="lineNum"> 2130 </span> : * @param lhs First string.
+<span class="lineNum"> 2131 </span> : * @param rhs Last string.
+<span class="lineNum"> 2132 </span> : * @return New string with @a lhs followed by @a rhs.
+<span class="lineNum"> 2133 </span> : */
+<span class="lineNum"> 2134 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2135 </span> : inline basic_string&lt;_CharT, _Traits, _Alloc&gt;
+<span class="lineNum"> 2136 </span><span class="lineCov"> 140 : operator+(const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __lhs, _CharT __rhs)</span>
+<span class="lineNum"> 2137 </span> : {
+<span class="lineNum"> 2138 </span> : typedef basic_string&lt;_CharT, _Traits, _Alloc&gt; __string_type;
+<span class="lineNum"> 2139 </span> : typedef typename __string_type::size_type __size_type;
+<span class="lineNum"> 2140 </span><span class="lineCov"> 140 : __string_type __str(__lhs);</span>
+<span class="lineNum"> 2141 </span><span class="lineCov"> 140 : __str.append(__size_type(1), __rhs);</span>
+<span class="lineNum"> 2142 </span><span class="lineNoCov"> 0 : return __str;</span>
+<span class="lineNum"> 2143 </span> : }
+<span class="lineNum"> 2144 </span> :
+<span class="lineNum"> 2145 </span> : // operator ==
+<span class="lineNum"> 2146 </span> : /**
+<span class="lineNum"> 2147 </span> : * @brief Test equivalence of two strings.
+<span class="lineNum"> 2148 </span> : * @param lhs First string.
+<span class="lineNum"> 2149 </span> : * @param rhs Second string.
+<span class="lineNum"> 2150 </span> : * @return True if @a lhs.compare(@a rhs) == 0. False otherwise.
+<span class="lineNum"> 2151 </span> : */
+<span class="lineNum"> 2152 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2153 </span> : inline bool
+<span class="lineNum"> 2154 </span> : operator==(const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __lhs,
+<span class="lineNum"> 2155 </span> : const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __rhs)
+<span class="lineNum"> 2156 </span> : { return __lhs.compare(__rhs) == 0; }
+<span class="lineNum"> 2157 </span> :
+<span class="lineNum"> 2158 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 2159 </span> : inline
+<span class="lineNum"> 2160 </span> : typename __gnu_cxx::__enable_if&lt;__is_char&lt;_CharT&gt;::__value, bool&gt;::__type
+<span class="lineNum"> 2161 </span> : operator==(const basic_string&lt;_CharT&gt;&amp; __lhs,
+<span class="lineNum"> 2162 </span><span class="lineCov"> 134945 : const basic_string&lt;_CharT&gt;&amp; __rhs)</span>
+<span class="lineNum"> 2163 </span> : { return (__lhs.size() == __rhs.size()
+<span class="lineNum"> 2164 </span> : &amp;&amp; !std::char_traits&lt;_CharT&gt;::compare(__lhs.data(), __rhs.data(),
+<span class="lineNum"> 2165 </span><span class="lineCov"> 134945 : __lhs.size())); }</span>
+<span class="lineNum"> 2166 </span> :
+<span class="lineNum"> 2167 </span> : /**
+<span class="lineNum"> 2168 </span> : * @brief Test equivalence of C string and string.
+<span class="lineNum"> 2169 </span> : * @param lhs C string.
+<span class="lineNum"> 2170 </span> : * @param rhs String.
+<span class="lineNum"> 2171 </span> : * @return True if @a rhs.compare(@a lhs) == 0. False otherwise.
+<span class="lineNum"> 2172 </span> : */
+<span class="lineNum"> 2173 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2174 </span> : inline bool
+<span class="lineNum"> 2175 </span> : operator==(const _CharT* __lhs,
+<span class="lineNum"> 2176 </span><span class="lineNoCov"> 0 : const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __rhs)</span>
+<span class="lineNum"> 2177 </span><span class="lineNoCov"> 0 : { return __rhs.compare(__lhs) == 0; }</span>
+<span class="lineNum"> 2178 </span> :
+<span class="lineNum"> 2179 </span> : /**
+<span class="lineNum"> 2180 </span> : * @brief Test equivalence of string and C string.
+<span class="lineNum"> 2181 </span> : * @param lhs String.
+<span class="lineNum"> 2182 </span> : * @param rhs C string.
+<span class="lineNum"> 2183 </span> : * @return True if @a lhs.compare(@a rhs) == 0. False otherwise.
+<span class="lineNum"> 2184 </span> : */
+<span class="lineNum"> 2185 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2186 </span> : inline bool
+<span class="lineNum"> 2187 </span> : operator==(const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __lhs,
+<span class="lineNum"> 2188 </span><span class="lineCov"> 156952 : const _CharT* __rhs)</span>
+<span class="lineNum"> 2189 </span><span class="lineCov"> 156952 : { return __lhs.compare(__rhs) == 0; }</span>
+<span class="lineNum"> 2190 </span> :
+<span class="lineNum"> 2191 </span> : // operator !=
+<span class="lineNum"> 2192 </span> : /**
+<span class="lineNum"> 2193 </span> : * @brief Test difference of two strings.
+<span class="lineNum"> 2194 </span> : * @param lhs First string.
+<span class="lineNum"> 2195 </span> : * @param rhs Second string.
+<span class="lineNum"> 2196 </span> : * @return True if @a lhs.compare(@a rhs) != 0. False otherwise.
+<span class="lineNum"> 2197 </span> : */
+<span class="lineNum"> 2198 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2199 </span> : inline bool
+<span class="lineNum"> 2200 </span> : operator!=(const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __lhs,
+<span class="lineNum"> 2201 </span><span class="lineCov"> 84867 : const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __rhs)</span>
+<span class="lineNum"> 2202 </span><span class="lineCov"> 84867 : { return !(__lhs == __rhs); }</span>
+<span class="lineNum"> 2203 </span> :
+<span class="lineNum"> 2204 </span> : /**
+<span class="lineNum"> 2205 </span> : * @brief Test difference of C string and string.
+<span class="lineNum"> 2206 </span> : * @param lhs C string.
+<span class="lineNum"> 2207 </span> : * @param rhs String.
+<span class="lineNum"> 2208 </span> : * @return True if @a rhs.compare(@a lhs) != 0. False otherwise.
+<span class="lineNum"> 2209 </span> : */
+<span class="lineNum"> 2210 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2211 </span> : inline bool
+<span class="lineNum"> 2212 </span> : operator!=(const _CharT* __lhs,
+<span class="lineNum"> 2213 </span> : const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __rhs)
+<span class="lineNum"> 2214 </span> : { return !(__lhs == __rhs); }
+<span class="lineNum"> 2215 </span> :
+<span class="lineNum"> 2216 </span> : /**
+<span class="lineNum"> 2217 </span> : * @brief Test difference of string and C string.
+<span class="lineNum"> 2218 </span> : * @param lhs String.
+<span class="lineNum"> 2219 </span> : * @param rhs C string.
+<span class="lineNum"> 2220 </span> : * @return True if @a lhs.compare(@a rhs) != 0. False otherwise.
+<span class="lineNum"> 2221 </span> : */
+<span class="lineNum"> 2222 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2223 </span> : inline bool
+<span class="lineNum"> 2224 </span> : operator!=(const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __lhs,
+<span class="lineNum"> 2225 </span><span class="lineCov"> 74475 : const _CharT* __rhs)</span>
+<span class="lineNum"> 2226 </span><span class="lineCov"> 74475 : { return !(__lhs == __rhs); }</span>
+<span class="lineNum"> 2227 </span> :
+<span class="lineNum"> 2228 </span> : // operator &lt;
+<span class="lineNum"> 2229 </span> : /**
+<span class="lineNum"> 2230 </span> : * @brief Test if string precedes string.
+<span class="lineNum"> 2231 </span> : * @param lhs First string.
+<span class="lineNum"> 2232 </span> : * @param rhs Second string.
+<span class="lineNum"> 2233 </span> : * @return True if @a lhs precedes @a rhs. False otherwise.
+<span class="lineNum"> 2234 </span> : */
+<span class="lineNum"> 2235 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2236 </span> : inline bool
+<span class="lineNum"> 2237 </span> : operator&lt;(const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __lhs,
+<span class="lineNum"> 2238 </span><span class="lineCov"> 4885154 : const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __rhs)</span>
+<span class="lineNum"> 2239 </span><span class="lineCov"> 4885154 : { return __lhs.compare(__rhs) &lt; 0; }</span>
+<span class="lineNum"> 2240 </span> :
+<span class="lineNum"> 2241 </span> : /**
+<span class="lineNum"> 2242 </span> : * @brief Test if string precedes C string.
+<span class="lineNum"> 2243 </span> : * @param lhs String.
+<span class="lineNum"> 2244 </span> : * @param rhs C string.
+<span class="lineNum"> 2245 </span> : * @return True if @a lhs precedes @a rhs. False otherwise.
+<span class="lineNum"> 2246 </span> : */
+<span class="lineNum"> 2247 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2248 </span> : inline bool
+<span class="lineNum"> 2249 </span> : operator&lt;(const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __lhs,
+<span class="lineNum"> 2250 </span> : const _CharT* __rhs)
+<span class="lineNum"> 2251 </span> : { return __lhs.compare(__rhs) &lt; 0; }
+<span class="lineNum"> 2252 </span> :
+<span class="lineNum"> 2253 </span> : /**
+<span class="lineNum"> 2254 </span> : * @brief Test if C string precedes string.
+<span class="lineNum"> 2255 </span> : * @param lhs C string.
+<span class="lineNum"> 2256 </span> : * @param rhs String.
+<span class="lineNum"> 2257 </span> : * @return True if @a lhs precedes @a rhs. False otherwise.
+<span class="lineNum"> 2258 </span> : */
+<span class="lineNum"> 2259 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2260 </span> : inline bool
+<span class="lineNum"> 2261 </span> : operator&lt;(const _CharT* __lhs,
+<span class="lineNum"> 2262 </span> : const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __rhs)
+<span class="lineNum"> 2263 </span> : { return __rhs.compare(__lhs) &gt; 0; }
+<span class="lineNum"> 2264 </span> :
+<span class="lineNum"> 2265 </span> : // operator &gt;
+<span class="lineNum"> 2266 </span> : /**
+<span class="lineNum"> 2267 </span> : * @brief Test if string follows string.
+<span class="lineNum"> 2268 </span> : * @param lhs First string.
+<span class="lineNum"> 2269 </span> : * @param rhs Second string.
+<span class="lineNum"> 2270 </span> : * @return True if @a lhs follows @a rhs. False otherwise.
+<span class="lineNum"> 2271 </span> : */
+<span class="lineNum"> 2272 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2273 </span> : inline bool
+<span class="lineNum"> 2274 </span> : operator&gt;(const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __lhs,
+<span class="lineNum"> 2275 </span><span class="lineCov"> 1024110 : const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __rhs)</span>
+<span class="lineNum"> 2276 </span><span class="lineCov"> 1024110 : { return __lhs.compare(__rhs) &gt; 0; }</span>
+<span class="lineNum"> 2277 </span> :
+<span class="lineNum"> 2278 </span> : /**
+<span class="lineNum"> 2279 </span> : * @brief Test if string follows C string.
+<span class="lineNum"> 2280 </span> : * @param lhs String.
+<span class="lineNum"> 2281 </span> : * @param rhs C string.
+<span class="lineNum"> 2282 </span> : * @return True if @a lhs follows @a rhs. False otherwise.
+<span class="lineNum"> 2283 </span> : */
+<span class="lineNum"> 2284 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2285 </span> : inline bool
+<span class="lineNum"> 2286 </span> : operator&gt;(const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __lhs,
+<span class="lineNum"> 2287 </span> : const _CharT* __rhs)
+<span class="lineNum"> 2288 </span> : { return __lhs.compare(__rhs) &gt; 0; }
+<span class="lineNum"> 2289 </span> :
+<span class="lineNum"> 2290 </span> : /**
+<span class="lineNum"> 2291 </span> : * @brief Test if C string follows string.
+<span class="lineNum"> 2292 </span> : * @param lhs C string.
+<span class="lineNum"> 2293 </span> : * @param rhs String.
+<span class="lineNum"> 2294 </span> : * @return True if @a lhs follows @a rhs. False otherwise.
+<span class="lineNum"> 2295 </span> : */
+<span class="lineNum"> 2296 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2297 </span> : inline bool
+<span class="lineNum"> 2298 </span> : operator&gt;(const _CharT* __lhs,
+<span class="lineNum"> 2299 </span> : const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __rhs)
+<span class="lineNum"> 2300 </span> : { return __rhs.compare(__lhs) &lt; 0; }
+<span class="lineNum"> 2301 </span> :
+<span class="lineNum"> 2302 </span> : // operator &lt;=
+<span class="lineNum"> 2303 </span> : /**
+<span class="lineNum"> 2304 </span> : * @brief Test if string doesn't follow string.
+<span class="lineNum"> 2305 </span> : * @param lhs First string.
+<span class="lineNum"> 2306 </span> : * @param rhs Second string.
+<span class="lineNum"> 2307 </span> : * @return True if @a lhs doesn't follow @a rhs. False otherwise.
+<span class="lineNum"> 2308 </span> : */
+<span class="lineNum"> 2309 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2310 </span> : inline bool
+<span class="lineNum"> 2311 </span> : operator&lt;=(const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __lhs,
+<span class="lineNum"> 2312 </span><span class="lineCov"> 58 : const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __rhs)</span>
+<span class="lineNum"> 2313 </span><span class="lineCov"> 58 : { return __lhs.compare(__rhs) &lt;= 0; }</span>
+<span class="lineNum"> 2314 </span> :
+<span class="lineNum"> 2315 </span> : /**
+<span class="lineNum"> 2316 </span> : * @brief Test if string doesn't follow C string.
+<span class="lineNum"> 2317 </span> : * @param lhs String.
+<span class="lineNum"> 2318 </span> : * @param rhs C string.
+<span class="lineNum"> 2319 </span> : * @return True if @a lhs doesn't follow @a rhs. False otherwise.
+<span class="lineNum"> 2320 </span> : */
+<span class="lineNum"> 2321 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2322 </span> : inline bool
+<span class="lineNum"> 2323 </span> : operator&lt;=(const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __lhs,
+<span class="lineNum"> 2324 </span> : const _CharT* __rhs)
+<span class="lineNum"> 2325 </span> : { return __lhs.compare(__rhs) &lt;= 0; }
+<span class="lineNum"> 2326 </span> :
+<span class="lineNum"> 2327 </span> : /**
+<span class="lineNum"> 2328 </span> : * @brief Test if C string doesn't follow string.
+<span class="lineNum"> 2329 </span> : * @param lhs C string.
+<span class="lineNum"> 2330 </span> : * @param rhs String.
+<span class="lineNum"> 2331 </span> : * @return True if @a lhs doesn't follow @a rhs. False otherwise.
+<span class="lineNum"> 2332 </span> : */
+<span class="lineNum"> 2333 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2334 </span> : inline bool
+<span class="lineNum"> 2335 </span> : operator&lt;=(const _CharT* __lhs,
+<span class="lineNum"> 2336 </span> : const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __rhs)
+<span class="lineNum"> 2337 </span> : { return __rhs.compare(__lhs) &gt;= 0; }
+<span class="lineNum"> 2338 </span> :
+<span class="lineNum"> 2339 </span> : // operator &gt;=
+<span class="lineNum"> 2340 </span> : /**
+<span class="lineNum"> 2341 </span> : * @brief Test if string doesn't precede string.
+<span class="lineNum"> 2342 </span> : * @param lhs First string.
+<span class="lineNum"> 2343 </span> : * @param rhs Second string.
+<span class="lineNum"> 2344 </span> : * @return True if @a lhs doesn't precede @a rhs. False otherwise.
+<span class="lineNum"> 2345 </span> : */
+<span class="lineNum"> 2346 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2347 </span> : inline bool
+<span class="lineNum"> 2348 </span> : operator&gt;=(const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __lhs,
+<span class="lineNum"> 2349 </span> : const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __rhs)
+<span class="lineNum"> 2350 </span> : { return __lhs.compare(__rhs) &gt;= 0; }
+<span class="lineNum"> 2351 </span> :
+<span class="lineNum"> 2352 </span> : /**
+<span class="lineNum"> 2353 </span> : * @brief Test if string doesn't precede C string.
+<span class="lineNum"> 2354 </span> : * @param lhs String.
+<span class="lineNum"> 2355 </span> : * @param rhs C string.
+<span class="lineNum"> 2356 </span> : * @return True if @a lhs doesn't precede @a rhs. False otherwise.
+<span class="lineNum"> 2357 </span> : */
+<span class="lineNum"> 2358 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2359 </span> : inline bool
+<span class="lineNum"> 2360 </span> : operator&gt;=(const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __lhs,
+<span class="lineNum"> 2361 </span> : const _CharT* __rhs)
+<span class="lineNum"> 2362 </span> : { return __lhs.compare(__rhs) &gt;= 0; }
+<span class="lineNum"> 2363 </span> :
+<span class="lineNum"> 2364 </span> : /**
+<span class="lineNum"> 2365 </span> : * @brief Test if C string doesn't precede string.
+<span class="lineNum"> 2366 </span> : * @param lhs C string.
+<span class="lineNum"> 2367 </span> : * @param rhs String.
+<span class="lineNum"> 2368 </span> : * @return True if @a lhs doesn't precede @a rhs. False otherwise.
+<span class="lineNum"> 2369 </span> : */
+<span class="lineNum"> 2370 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2371 </span> : inline bool
+<span class="lineNum"> 2372 </span> : operator&gt;=(const _CharT* __lhs,
+<span class="lineNum"> 2373 </span> : const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __rhs)
+<span class="lineNum"> 2374 </span> : { return __rhs.compare(__lhs) &lt;= 0; }
+<span class="lineNum"> 2375 </span> :
+<span class="lineNum"> 2376 </span> : /**
+<span class="lineNum"> 2377 </span> : * @brief Swap contents of two strings.
+<span class="lineNum"> 2378 </span> : * @param lhs First string.
+<span class="lineNum"> 2379 </span> : * @param rhs Second string.
+<span class="lineNum"> 2380 </span> : *
+<span class="lineNum"> 2381 </span> : * Exchanges the contents of @a lhs and @a rhs in constant time.
+<span class="lineNum"> 2382 </span> : */
+<span class="lineNum"> 2383 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2384 </span> : inline void
+<span class="lineNum"> 2385 </span> : swap(basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __lhs,
+<span class="lineNum"> 2386 </span><span class="lineNoCov"> 0 : basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __rhs)</span>
+<span class="lineNum"> 2387 </span><span class="lineNoCov"> 0 : { __lhs.swap(__rhs); }</span>
+<span class="lineNum"> 2388 </span> :
+<span class="lineNum"> 2389 </span> : /**
+<span class="lineNum"> 2390 </span> : * @brief Read stream into a string.
+<span class="lineNum"> 2391 </span> : * @param is Input stream.
+<span class="lineNum"> 2392 </span> : * @param str Buffer to store into.
+<span class="lineNum"> 2393 </span> : * @return Reference to the input stream.
+<span class="lineNum"> 2394 </span> : *
+<span class="lineNum"> 2395 </span> : * Stores characters from @a is into @a str until whitespace is found, the
+<span class="lineNum"> 2396 </span> : * end of the stream is encountered, or str.max_size() is reached. If
+<span class="lineNum"> 2397 </span> : * is.width() is non-zero, that is the limit on the number of characters
+<span class="lineNum"> 2398 </span> : * stored into @a str. Any previous contents of @a str are erased.
+<span class="lineNum"> 2399 </span> : */
+<span class="lineNum"> 2400 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2401 </span> : basic_istream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 2402 </span> : operator&gt;&gt;(basic_istream&lt;_CharT, _Traits&gt;&amp; __is,
+<span class="lineNum"> 2403 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __str);
+<span class="lineNum"> 2404 </span> :
+<span class="lineNum"> 2405 </span> : template&lt;&gt;
+<span class="lineNum"> 2406 </span> : basic_istream&lt;char&gt;&amp;
+<span class="lineNum"> 2407 </span> : operator&gt;&gt;(basic_istream&lt;char&gt;&amp; __is, basic_string&lt;char&gt;&amp; __str);
+<span class="lineNum"> 2408 </span> :
+<span class="lineNum"> 2409 </span> : /**
+<span class="lineNum"> 2410 </span> : * @brief Write string to a stream.
+<span class="lineNum"> 2411 </span> : * @param os Output stream.
+<span class="lineNum"> 2412 </span> : * @param str String to write out.
+<span class="lineNum"> 2413 </span> : * @return Reference to the output stream.
+<span class="lineNum"> 2414 </span> : *
+<span class="lineNum"> 2415 </span> : * Output characters of @a str into os following the same rules as for
+<span class="lineNum"> 2416 </span> : * writing a C string.
+<span class="lineNum"> 2417 </span> : */
+<span class="lineNum"> 2418 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2419 </span> : inline basic_ostream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 2420 </span> : operator&lt;&lt;(basic_ostream&lt;_CharT, _Traits&gt;&amp; __os,
+<span class="lineNum"> 2421 </span><span class="lineNoCov"> 0 : const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __str)</span>
+<span class="lineNum"> 2422 </span> : {
+<span class="lineNum"> 2423 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 2424 </span> : // 586. string inserter not a formatted function
+<span class="lineNum"> 2425 </span><span class="lineNoCov"> 0 : return __ostream_insert(__os, __str.data(), __str.size());</span>
+<span class="lineNum"> 2426 </span> : }
+<span class="lineNum"> 2427 </span> :
+<span class="lineNum"> 2428 </span> : /**
+<span class="lineNum"> 2429 </span> : * @brief Read a line from stream into a string.
+<span class="lineNum"> 2430 </span> : * @param is Input stream.
+<span class="lineNum"> 2431 </span> : * @param str Buffer to store into.
+<span class="lineNum"> 2432 </span> : * @param delim Character marking end of line.
+<span class="lineNum"> 2433 </span> : * @return Reference to the input stream.
+<span class="lineNum"> 2434 </span> : *
+<span class="lineNum"> 2435 </span> : * Stores characters from @a is into @a str until @a delim is found, the
+<span class="lineNum"> 2436 </span> : * end of the stream is encountered, or str.max_size() is reached. If
+<span class="lineNum"> 2437 </span> : * is.width() is non-zero, that is the limit on the number of characters
+<span class="lineNum"> 2438 </span> : * stored into @a str. Any previous contents of @a str are erased. If @a
+<span class="lineNum"> 2439 </span> : * delim was encountered, it is extracted but not stored into @a str.
+<span class="lineNum"> 2440 </span> : */
+<span class="lineNum"> 2441 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2442 </span> : basic_istream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 2443 </span> : getline(basic_istream&lt;_CharT, _Traits&gt;&amp; __is,
+<span class="lineNum"> 2444 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __str, _CharT __delim);
+<span class="lineNum"> 2445 </span> :
+<span class="lineNum"> 2446 </span> : /**
+<span class="lineNum"> 2447 </span> : * @brief Read a line from stream into a string.
+<span class="lineNum"> 2448 </span> : * @param is Input stream.
+<span class="lineNum"> 2449 </span> : * @param str Buffer to store into.
+<span class="lineNum"> 2450 </span> : * @return Reference to the input stream.
+<span class="lineNum"> 2451 </span> : *
+<span class="lineNum"> 2452 </span> : * Stores characters from is into @a str until '\n' is found, the end of
+<span class="lineNum"> 2453 </span> : * the stream is encountered, or str.max_size() is reached. If is.width()
+<span class="lineNum"> 2454 </span> : * is non-zero, that is the limit on the number of characters stored into
+<span class="lineNum"> 2455 </span> : * @a str. Any previous contents of @a str are erased. If end of line was
+<span class="lineNum"> 2456 </span> : * encountered, it is extracted but not stored into @a str.
+<span class="lineNum"> 2457 </span> : */
+<span class="lineNum"> 2458 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 2459 </span> : inline basic_istream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 2460 </span> : getline(basic_istream&lt;_CharT, _Traits&gt;&amp; __is,
+<span class="lineNum"> 2461 </span><span class="lineNoCov"> 0 : basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __str)</span>
+<span class="lineNum"> 2462 </span><span class="lineNoCov"> 0 : { return getline(__is, __str, __is.widen('\n')); }</span>
+<span class="lineNum"> 2463 </span> :
+<span class="lineNum"> 2464 </span> : template&lt;&gt;
+<span class="lineNum"> 2465 </span> : basic_istream&lt;char&gt;&amp;
+<span class="lineNum"> 2466 </span> : getline(basic_istream&lt;char&gt;&amp; __in, basic_string&lt;char&gt;&amp; __str,
+<span class="lineNum"> 2467 </span> : char __delim);
+<span class="lineNum"> 2468 </span> :
+<span class="lineNum"> 2469 </span> : #ifdef _GLIBCXX_USE_WCHAR_T
+<span class="lineNum"> 2470 </span> : template&lt;&gt;
+<span class="lineNum"> 2471 </span> : basic_istream&lt;wchar_t&gt;&amp;
+<span class="lineNum"> 2472 </span> : getline(basic_istream&lt;wchar_t&gt;&amp; __in, basic_string&lt;wchar_t&gt;&amp; __str,
+<span class="lineNum"> 2473 </span> : wchar_t __delim);
+<span class="lineNum"> 2474 </span> : #endif
+<span class="lineNum"> 2475 </span> :
+<span class="lineNum"> 2476 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 2477 </span> :
+<span class="lineNum"> 2478 </span> : #endif /* _BASIC_STRING_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/basic_string.tcc.gcov.html b/rep/usr/include/c++/4.3/bits/basic_string.tcc.gcov.html
new file mode 100644
index 0000000..169e3e7
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/basic_string.tcc.gcov.html
@@ -0,0 +1,1208 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/basic_string.tcc</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - basic_string.tcc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">23</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">73.9 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">17</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Components for manipulating sequences of characters -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+<span class="lineNum"> 4 </span> : // 2006, 2007
+<span class="lineNum"> 5 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 6 </span> : //
+<span class="lineNum"> 7 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 8 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 9 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 10 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 11 </span> : // any later version.
+<span class="lineNum"> 12 </span> :
+<span class="lineNum"> 13 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 14 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 15 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 16 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 17 </span> :
+<span class="lineNum"> 18 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 19 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 20 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 21 </span> : // USA.
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 24 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 25 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 26 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 27 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 28 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 29 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 30 </span> : // the GNU General Public License.
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : /** @file basic_string.tcc
+<span class="lineNum"> 33 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 34 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 35 </span> : */
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : //
+<span class="lineNum"> 38 </span> : // ISO C++ 14882: 21 Strings library
+<span class="lineNum"> 39 </span> : //
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : // Written by Jason Merrill based upon the specification by Takanori Adachi
+<span class="lineNum"> 42 </span> : // in ANSI X3J16/94-0013R2. Rewritten by Nathan Myers to ISO-14882.
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span> : #ifndef _BASIC_STRING_TCC
+<span class="lineNum"> 45 </span> : #define _BASIC_STRING_TCC 1
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span> : #pragma GCC system_header
+<span class="lineNum"> 48 </span> :
+<span class="lineNum"> 49 </span> : #include &lt;cxxabi-forced.h&gt;
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 54 </span> : const typename basic_string&lt;_CharT, _Traits, _Alloc&gt;::size_type
+<span class="lineNum"> 55 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 56 </span> : _Rep::_S_max_size = (((npos - sizeof(_Rep_base))/sizeof(_CharT)) - 1) / 4;
+<span class="lineNum"> 57 </span> :
+<span class="lineNum"> 58 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 59 </span> : const _CharT
+<span class="lineNum"> 60 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 61 </span> : _Rep::_S_terminal = _CharT();
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 64 </span> : const typename basic_string&lt;_CharT, _Traits, _Alloc&gt;::size_type
+<span class="lineNum"> 65 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::npos;
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : // Linker sets _S_empty_rep_storage to all 0s (one reference, empty string)
+<span class="lineNum"> 68 </span> : // at static init time (before static ctors are run).
+<span class="lineNum"> 69 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 70 </span> : typename basic_string&lt;_CharT, _Traits, _Alloc&gt;::size_type
+<span class="lineNum"> 71 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::_Rep::_S_empty_rep_storage[
+<span class="lineNum"> 72 </span> : (sizeof(_Rep_base) + sizeof(_CharT) + sizeof(size_type) - 1) /
+<span class="lineNum"> 73 </span> : sizeof(size_type)];
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span> : // NB: This is the special case for Input Iterators, used in
+<span class="lineNum"> 76 </span> : // istreambuf_iterators, etc.
+<span class="lineNum"> 77 </span> : // Input Iterators have a cost structure very different from
+<span class="lineNum"> 78 </span> : // pointers, calling for a different coding style.
+<span class="lineNum"> 79 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 80 </span> : template&lt;typename _InIterator&gt;
+<span class="lineNum"> 81 </span> : _CharT*
+<span class="lineNum"> 82 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 83 </span> : _S_construct(_InIterator __beg, _InIterator __end, const _Alloc&amp; __a,
+<span class="lineNum"> 84 </span> : input_iterator_tag)
+<span class="lineNum"> 85 </span> : {
+<span class="lineNum"> 86 </span> : #ifndef _GLIBCXX_FULLY_DYNAMIC_STRING
+<span class="lineNum"> 87 </span> : if (__beg == __end &amp;&amp; __a == _Alloc())
+<span class="lineNum"> 88 </span> : return _S_empty_rep()._M_refdata();
+<span class="lineNum"> 89 </span> : #endif
+<span class="lineNum"> 90 </span> : // Avoid reallocation for common case.
+<span class="lineNum"> 91 </span> : _CharT __buf[128];
+<span class="lineNum"> 92 </span> : size_type __len = 0;
+<span class="lineNum"> 93 </span> : while (__beg != __end &amp;&amp; __len &lt; sizeof(__buf) / sizeof(_CharT))
+<span class="lineNum"> 94 </span> : {
+<span class="lineNum"> 95 </span> : __buf[__len++] = *__beg;
+<span class="lineNum"> 96 </span> : ++__beg;
+<span class="lineNum"> 97 </span> : }
+<span class="lineNum"> 98 </span> : _Rep* __r = _Rep::_S_create(__len, size_type(0), __a);
+<span class="lineNum"> 99 </span> : _M_copy(__r-&gt;_M_refdata(), __buf, __len);
+<span class="lineNum"> 100 </span> : try
+<span class="lineNum"> 101 </span> : {
+<span class="lineNum"> 102 </span> : while (__beg != __end)
+<span class="lineNum"> 103 </span> : {
+<span class="lineNum"> 104 </span> : if (__len == __r-&gt;_M_capacity)
+<span class="lineNum"> 105 </span> : {
+<span class="lineNum"> 106 </span> : // Allocate more space.
+<span class="lineNum"> 107 </span> : _Rep* __another = _Rep::_S_create(__len + 1, __len, __a);
+<span class="lineNum"> 108 </span> : _M_copy(__another-&gt;_M_refdata(), __r-&gt;_M_refdata(), __len);
+<span class="lineNum"> 109 </span> : __r-&gt;_M_destroy(__a);
+<span class="lineNum"> 110 </span> : __r = __another;
+<span class="lineNum"> 111 </span> : }
+<span class="lineNum"> 112 </span> : __r-&gt;_M_refdata()[__len++] = *__beg;
+<span class="lineNum"> 113 </span> : ++__beg;
+<span class="lineNum"> 114 </span> : }
+<span class="lineNum"> 115 </span> : }
+<span class="lineNum"> 116 </span> : catch(...)
+<span class="lineNum"> 117 </span> : {
+<span class="lineNum"> 118 </span> : __r-&gt;_M_destroy(__a);
+<span class="lineNum"> 119 </span> : __throw_exception_again;
+<span class="lineNum"> 120 </span> : }
+<span class="lineNum"> 121 </span> : __r-&gt;_M_set_length_and_sharable(__len);
+<span class="lineNum"> 122 </span> : return __r-&gt;_M_refdata();
+<span class="lineNum"> 123 </span> : }
+<span class="lineNum"> 124 </span> :
+<span class="lineNum"> 125 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 126 </span> : template &lt;typename _InIterator&gt;
+<span class="lineNum"> 127 </span> : _CharT*
+<span class="lineNum"> 128 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 129 </span> : _S_construct(_InIterator __beg, _InIterator __end, const _Alloc&amp; __a,
+<span class="lineNum"> 130 </span><span class="lineCov"> 1287 : forward_iterator_tag)</span>
+<span class="lineNum"> 131 </span> : {
+<span class="lineNum"> 132 </span> : #ifndef _GLIBCXX_FULLY_DYNAMIC_STRING
+<span class="lineNum"> 133 </span><span class="lineCov"> 1287 : if (__beg == __end &amp;&amp; __a == _Alloc())</span>
+<span class="lineNum"> 134 </span><span class="lineNoCov"> 0 : return _S_empty_rep()._M_refdata();</span>
+<span class="lineNum"> 135 </span> : #endif
+<span class="lineNum"> 136 </span> : // NB: Not required, but considered best practice.
+<span class="lineNum"> 137 </span><span class="lineCov"> 1287 : if (__builtin_expect(__gnu_cxx::__is_null_pointer(__beg)</span>
+<span class="lineNum"> 138 </span> : &amp;&amp; __beg != __end, 0))
+<span class="lineNum"> 139 </span><span class="lineNoCov"> 0 : __throw_logic_error(__N(&quot;basic_string::_S_construct NULL not valid&quot;));</span>
+<span class="lineNum"> 140 </span> :
+<span class="lineNum"> 141 </span> : const size_type __dnew = static_cast&lt;size_type&gt;(std::distance(__beg,
+<span class="lineNum"> 142 </span><span class="lineCov"> 1287 : __end));</span>
+<span class="lineNum"> 143 </span> : // Check for out_of_range and length_error exceptions.
+<span class="lineNum"> 144 </span><span class="lineCov"> 1287 : _Rep* __r = _Rep::_S_create(__dnew, size_type(0), __a);</span>
+<span class="lineNum"> 145 </span> : try
+<span class="lineNum"> 146 </span><span class="lineCov"> 1287 : { _S_copy_chars(__r-&gt;_M_refdata(), __beg, __end); }</span>
+<span class="lineNum"> 147 </span><span class="lineNoCov"> 0 : catch(...)</span>
+<span class="lineNum"> 148 </span> : {
+<span class="lineNum"> 149 </span><span class="lineNoCov"> 0 : __r-&gt;_M_destroy(__a);</span>
+<span class="lineNum"> 150 </span><span class="lineNoCov"> 0 : __throw_exception_again;</span>
+<span class="lineNum"> 151 </span> : }
+<span class="lineNum"> 152 </span><span class="lineCov"> 1287 : __r-&gt;_M_set_length_and_sharable(__dnew);</span>
+<span class="lineNum"> 153 </span><span class="lineCov"> 1287 : return __r-&gt;_M_refdata();</span>
+<span class="lineNum"> 154 </span> : }
+<span class="lineNum"> 155 </span> :
+<span class="lineNum"> 156 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 157 </span> : _CharT*
+<span class="lineNum"> 158 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 159 </span> : _S_construct(size_type __n, _CharT __c, const _Alloc&amp; __a)
+<span class="lineNum"> 160 </span> : {
+<span class="lineNum"> 161 </span> : #ifndef _GLIBCXX_FULLY_DYNAMIC_STRING
+<span class="lineNum"> 162 </span> : if (__n == 0 &amp;&amp; __a == _Alloc())
+<span class="lineNum"> 163 </span> : return _S_empty_rep()._M_refdata();
+<span class="lineNum"> 164 </span> : #endif
+<span class="lineNum"> 165 </span> : // Check for out_of_range and length_error exceptions.
+<span class="lineNum"> 166 </span> : _Rep* __r = _Rep::_S_create(__n, size_type(0), __a);
+<span class="lineNum"> 167 </span> : if (__n)
+<span class="lineNum"> 168 </span> : _M_assign(__r-&gt;_M_refdata(), __n, __c);
+<span class="lineNum"> 169 </span> :
+<span class="lineNum"> 170 </span> : __r-&gt;_M_set_length_and_sharable(__n);
+<span class="lineNum"> 171 </span> : return __r-&gt;_M_refdata();
+<span class="lineNum"> 172 </span> : }
+<span class="lineNum"> 173 </span> :
+<span class="lineNum"> 174 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 175 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 176 </span> : basic_string(const basic_string&amp; __str)
+<span class="lineNum"> 177 </span> : : _M_dataplus(__str._M_rep()-&gt;_M_grab(_Alloc(__str.get_allocator()),
+<span class="lineNum"> 178 </span> : __str.get_allocator()),
+<span class="lineNum"> 179 </span> : __str.get_allocator())
+<span class="lineNum"> 180 </span> : { }
+<span class="lineNum"> 181 </span> :
+<span class="lineNum"> 182 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 183 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 184 </span> : basic_string(const _Alloc&amp; __a)
+<span class="lineNum"> 185 </span> : : _M_dataplus(_S_construct(size_type(), _CharT(), __a), __a)
+<span class="lineNum"> 186 </span> : { }
+<span class="lineNum"> 187 </span> :
+<span class="lineNum"> 188 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 189 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 190 </span> : basic_string(const basic_string&amp; __str, size_type __pos, size_type __n)
+<span class="lineNum"> 191 </span> : : _M_dataplus(_S_construct(__str._M_data()
+<span class="lineNum"> 192 </span> : + __str._M_check(__pos,
+<span class="lineNum"> 193 </span> : &quot;basic_string::basic_string&quot;),
+<span class="lineNum"> 194 </span> : __str._M_data() + __str._M_limit(__pos, __n)
+<span class="lineNum"> 195 </span> : + __pos, _Alloc()), _Alloc())
+<span class="lineNum"> 196 </span> : { }
+<span class="lineNum"> 197 </span> :
+<span class="lineNum"> 198 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 199 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 200 </span> : basic_string(const basic_string&amp; __str, size_type __pos,
+<span class="lineNum"> 201 </span> : size_type __n, const _Alloc&amp; __a)
+<span class="lineNum"> 202 </span> : : _M_dataplus(_S_construct(__str._M_data()
+<span class="lineNum"> 203 </span> : + __str._M_check(__pos,
+<span class="lineNum"> 204 </span> : &quot;basic_string::basic_string&quot;),
+<span class="lineNum"> 205 </span> : __str._M_data() + __str._M_limit(__pos, __n)
+<span class="lineNum"> 206 </span> : + __pos, __a), __a)
+<span class="lineNum"> 207 </span> : { }
+<span class="lineNum"> 208 </span> :
+<span class="lineNum"> 209 </span> : // TBD: DPG annotate
+<span class="lineNum"> 210 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 211 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 212 </span> : basic_string(const _CharT* __s, size_type __n, const _Alloc&amp; __a)
+<span class="lineNum"> 213 </span> : : _M_dataplus(_S_construct(__s, __s + __n, __a), __a)
+<span class="lineNum"> 214 </span> : { }
+<span class="lineNum"> 215 </span> :
+<span class="lineNum"> 216 </span> : // TBD: DPG annotate
+<span class="lineNum"> 217 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 218 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 219 </span> : basic_string(const _CharT* __s, const _Alloc&amp; __a)
+<span class="lineNum"> 220 </span> : : _M_dataplus(_S_construct(__s, __s ? __s + traits_type::length(__s) :
+<span class="lineNum"> 221 </span> : __s + npos, __a), __a)
+<span class="lineNum"> 222 </span> : { }
+<span class="lineNum"> 223 </span> :
+<span class="lineNum"> 224 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 225 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 226 </span> : basic_string(size_type __n, _CharT __c, const _Alloc&amp; __a)
+<span class="lineNum"> 227 </span> : : _M_dataplus(_S_construct(__n, __c, __a), __a)
+<span class="lineNum"> 228 </span> : { }
+<span class="lineNum"> 229 </span> :
+<span class="lineNum"> 230 </span> : // TBD: DPG annotate
+<span class="lineNum"> 231 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 232 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 233 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 234 </span><span class="lineCov"> 1287 : basic_string(_InputIterator __beg, _InputIterator __end, const _Alloc&amp; __a)</span>
+<span class="lineNum"> 235 </span><span class="lineCov"> 1287 : : _M_dataplus(_S_construct(__beg, __end, __a), __a)</span>
+<span class="lineNum"> 236 </span><span class="lineCov"> 1287 : { }</span>
+<span class="lineNum"> 237 </span> :
+<span class="lineNum"> 238 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 239 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp;
+<span class="lineNum"> 240 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 241 </span> : assign(const basic_string&amp; __str)
+<span class="lineNum"> 242 </span> : {
+<span class="lineNum"> 243 </span> : if (_M_rep() != __str._M_rep())
+<span class="lineNum"> 244 </span> : {
+<span class="lineNum"> 245 </span> : // XXX MT
+<span class="lineNum"> 246 </span> : const allocator_type __a = this-&gt;get_allocator();
+<span class="lineNum"> 247 </span> : _CharT* __tmp = __str._M_rep()-&gt;_M_grab(__a, __str.get_allocator());
+<span class="lineNum"> 248 </span> : _M_rep()-&gt;_M_dispose(__a);
+<span class="lineNum"> 249 </span> : _M_data(__tmp);
+<span class="lineNum"> 250 </span> : }
+<span class="lineNum"> 251 </span> : return *this;
+<span class="lineNum"> 252 </span> : }
+<span class="lineNum"> 253 </span> :
+<span class="lineNum"> 254 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 255 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp;
+<span class="lineNum"> 256 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 257 </span> : assign(const _CharT* __s, size_type __n)
+<span class="lineNum"> 258 </span> : {
+<span class="lineNum"> 259 </span> : __glibcxx_requires_string_len(__s, __n);
+<span class="lineNum"> 260 </span> : _M_check_length(this-&gt;size(), __n, &quot;basic_string::assign&quot;);
+<span class="lineNum"> 261 </span> : if (_M_disjunct(__s) || _M_rep()-&gt;_M_is_shared())
+<span class="lineNum"> 262 </span> : return _M_replace_safe(size_type(0), this-&gt;size(), __s, __n);
+<span class="lineNum"> 263 </span> : else
+<span class="lineNum"> 264 </span> : {
+<span class="lineNum"> 265 </span> : // Work in-place.
+<span class="lineNum"> 266 </span> : const size_type __pos = __s - _M_data();
+<span class="lineNum"> 267 </span> : if (__pos &gt;= __n)
+<span class="lineNum"> 268 </span> : _M_copy(_M_data(), __s, __n);
+<span class="lineNum"> 269 </span> : else if (__pos)
+<span class="lineNum"> 270 </span> : _M_move(_M_data(), __s, __n);
+<span class="lineNum"> 271 </span> : _M_rep()-&gt;_M_set_length_and_sharable(__n);
+<span class="lineNum"> 272 </span> : return *this;
+<span class="lineNum"> 273 </span> : }
+<span class="lineNum"> 274 </span> : }
+<span class="lineNum"> 275 </span> :
+<span class="lineNum"> 276 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 277 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp;
+<span class="lineNum"> 278 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 279 </span> : append(size_type __n, _CharT __c)
+<span class="lineNum"> 280 </span> : {
+<span class="lineNum"> 281 </span> : if (__n)
+<span class="lineNum"> 282 </span> : {
+<span class="lineNum"> 283 </span> : _M_check_length(size_type(0), __n, &quot;basic_string::append&quot;);
+<span class="lineNum"> 284 </span> : const size_type __len = __n + this-&gt;size();
+<span class="lineNum"> 285 </span> : if (__len &gt; this-&gt;capacity() || _M_rep()-&gt;_M_is_shared())
+<span class="lineNum"> 286 </span> : this-&gt;reserve(__len);
+<span class="lineNum"> 287 </span> : _M_assign(_M_data() + this-&gt;size(), __n, __c);
+<span class="lineNum"> 288 </span> : _M_rep()-&gt;_M_set_length_and_sharable(__len);
+<span class="lineNum"> 289 </span> : }
+<span class="lineNum"> 290 </span> : return *this;
+<span class="lineNum"> 291 </span> : }
+<span class="lineNum"> 292 </span> :
+<span class="lineNum"> 293 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 294 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp;
+<span class="lineNum"> 295 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 296 </span> : append(const _CharT* __s, size_type __n)
+<span class="lineNum"> 297 </span> : {
+<span class="lineNum"> 298 </span> : __glibcxx_requires_string_len(__s, __n);
+<span class="lineNum"> 299 </span> : if (__n)
+<span class="lineNum"> 300 </span> : {
+<span class="lineNum"> 301 </span> : _M_check_length(size_type(0), __n, &quot;basic_string::append&quot;);
+<span class="lineNum"> 302 </span> : const size_type __len = __n + this-&gt;size();
+<span class="lineNum"> 303 </span> : if (__len &gt; this-&gt;capacity() || _M_rep()-&gt;_M_is_shared())
+<span class="lineNum"> 304 </span> : {
+<span class="lineNum"> 305 </span> : if (_M_disjunct(__s))
+<span class="lineNum"> 306 </span> : this-&gt;reserve(__len);
+<span class="lineNum"> 307 </span> : else
+<span class="lineNum"> 308 </span> : {
+<span class="lineNum"> 309 </span> : const size_type __off = __s - _M_data();
+<span class="lineNum"> 310 </span> : this-&gt;reserve(__len);
+<span class="lineNum"> 311 </span> : __s = _M_data() + __off;
+<span class="lineNum"> 312 </span> : }
+<span class="lineNum"> 313 </span> : }
+<span class="lineNum"> 314 </span> : _M_copy(_M_data() + this-&gt;size(), __s, __n);
+<span class="lineNum"> 315 </span> : _M_rep()-&gt;_M_set_length_and_sharable(__len);
+<span class="lineNum"> 316 </span> : }
+<span class="lineNum"> 317 </span> : return *this;
+<span class="lineNum"> 318 </span> : }
+<span class="lineNum"> 319 </span> :
+<span class="lineNum"> 320 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 321 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp;
+<span class="lineNum"> 322 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 323 </span> : append(const basic_string&amp; __str)
+<span class="lineNum"> 324 </span> : {
+<span class="lineNum"> 325 </span> : const size_type __size = __str.size();
+<span class="lineNum"> 326 </span> : if (__size)
+<span class="lineNum"> 327 </span> : {
+<span class="lineNum"> 328 </span> : const size_type __len = __size + this-&gt;size();
+<span class="lineNum"> 329 </span> : if (__len &gt; this-&gt;capacity() || _M_rep()-&gt;_M_is_shared())
+<span class="lineNum"> 330 </span> : this-&gt;reserve(__len);
+<span class="lineNum"> 331 </span> : _M_copy(_M_data() + this-&gt;size(), __str._M_data(), __size);
+<span class="lineNum"> 332 </span> : _M_rep()-&gt;_M_set_length_and_sharable(__len);
+<span class="lineNum"> 333 </span> : }
+<span class="lineNum"> 334 </span> : return *this;
+<span class="lineNum"> 335 </span> : }
+<span class="lineNum"> 336 </span> :
+<span class="lineNum"> 337 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 338 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp;
+<span class="lineNum"> 339 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 340 </span> : append(const basic_string&amp; __str, size_type __pos, size_type __n)
+<span class="lineNum"> 341 </span> : {
+<span class="lineNum"> 342 </span> : __str._M_check(__pos, &quot;basic_string::append&quot;);
+<span class="lineNum"> 343 </span> : __n = __str._M_limit(__pos, __n);
+<span class="lineNum"> 344 </span> : if (__n)
+<span class="lineNum"> 345 </span> : {
+<span class="lineNum"> 346 </span> : const size_type __len = __n + this-&gt;size();
+<span class="lineNum"> 347 </span> : if (__len &gt; this-&gt;capacity() || _M_rep()-&gt;_M_is_shared())
+<span class="lineNum"> 348 </span> : this-&gt;reserve(__len);
+<span class="lineNum"> 349 </span> : _M_copy(_M_data() + this-&gt;size(), __str._M_data() + __pos, __n);
+<span class="lineNum"> 350 </span> : _M_rep()-&gt;_M_set_length_and_sharable(__len);
+<span class="lineNum"> 351 </span> : }
+<span class="lineNum"> 352 </span> : return *this;
+<span class="lineNum"> 353 </span> : }
+<span class="lineNum"> 354 </span> :
+<span class="lineNum"> 355 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 356 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp;
+<span class="lineNum"> 357 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 358 </span> : insert(size_type __pos, const _CharT* __s, size_type __n)
+<span class="lineNum"> 359 </span> : {
+<span class="lineNum"> 360 </span> : __glibcxx_requires_string_len(__s, __n);
+<span class="lineNum"> 361 </span> : _M_check(__pos, &quot;basic_string::insert&quot;);
+<span class="lineNum"> 362 </span> : _M_check_length(size_type(0), __n, &quot;basic_string::insert&quot;);
+<span class="lineNum"> 363 </span> : if (_M_disjunct(__s) || _M_rep()-&gt;_M_is_shared())
+<span class="lineNum"> 364 </span> : return _M_replace_safe(__pos, size_type(0), __s, __n);
+<span class="lineNum"> 365 </span> : else
+<span class="lineNum"> 366 </span> : {
+<span class="lineNum"> 367 </span> : // Work in-place.
+<span class="lineNum"> 368 </span> : const size_type __off = __s - _M_data();
+<span class="lineNum"> 369 </span> : _M_mutate(__pos, 0, __n);
+<span class="lineNum"> 370 </span> : __s = _M_data() + __off;
+<span class="lineNum"> 371 </span> : _CharT* __p = _M_data() + __pos;
+<span class="lineNum"> 372 </span> : if (__s + __n &lt;= __p)
+<span class="lineNum"> 373 </span> : _M_copy(__p, __s, __n);
+<span class="lineNum"> 374 </span> : else if (__s &gt;= __p)
+<span class="lineNum"> 375 </span> : _M_copy(__p, __s + __n, __n);
+<span class="lineNum"> 376 </span> : else
+<span class="lineNum"> 377 </span> : {
+<span class="lineNum"> 378 </span> : const size_type __nleft = __p - __s;
+<span class="lineNum"> 379 </span> : _M_copy(__p, __s, __nleft);
+<span class="lineNum"> 380 </span> : _M_copy(__p + __nleft, __p + __n, __n - __nleft);
+<span class="lineNum"> 381 </span> : }
+<span class="lineNum"> 382 </span> : return *this;
+<span class="lineNum"> 383 </span> : }
+<span class="lineNum"> 384 </span> : }
+<span class="lineNum"> 385 </span> :
+<span class="lineNum"> 386 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 387 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp;
+<span class="lineNum"> 388 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 389 </span> : replace(size_type __pos, size_type __n1, const _CharT* __s,
+<span class="lineNum"> 390 </span> : size_type __n2)
+<span class="lineNum"> 391 </span> : {
+<span class="lineNum"> 392 </span> : __glibcxx_requires_string_len(__s, __n2);
+<span class="lineNum"> 393 </span> : _M_check(__pos, &quot;basic_string::replace&quot;);
+<span class="lineNum"> 394 </span> : __n1 = _M_limit(__pos, __n1);
+<span class="lineNum"> 395 </span> : _M_check_length(__n1, __n2, &quot;basic_string::replace&quot;);
+<span class="lineNum"> 396 </span> : bool __left;
+<span class="lineNum"> 397 </span> : if (_M_disjunct(__s) || _M_rep()-&gt;_M_is_shared())
+<span class="lineNum"> 398 </span> : return _M_replace_safe(__pos, __n1, __s, __n2);
+<span class="lineNum"> 399 </span> : else if ((__left = __s + __n2 &lt;= _M_data() + __pos)
+<span class="lineNum"> 400 </span> : || _M_data() + __pos + __n1 &lt;= __s)
+<span class="lineNum"> 401 </span> : {
+<span class="lineNum"> 402 </span> : // Work in-place: non-overlapping case.
+<span class="lineNum"> 403 </span> : size_type __off = __s - _M_data();
+<span class="lineNum"> 404 </span> : __left ? __off : (__off += __n2 - __n1);
+<span class="lineNum"> 405 </span> : _M_mutate(__pos, __n1, __n2);
+<span class="lineNum"> 406 </span> : _M_copy(_M_data() + __pos, _M_data() + __off, __n2);
+<span class="lineNum"> 407 </span> : return *this;
+<span class="lineNum"> 408 </span> : }
+<span class="lineNum"> 409 </span> : else
+<span class="lineNum"> 410 </span> : {
+<span class="lineNum"> 411 </span> : // Todo: overlapping case.
+<span class="lineNum"> 412 </span> : const basic_string __tmp(__s, __n2);
+<span class="lineNum"> 413 </span> : return _M_replace_safe(__pos, __n1, __tmp._M_data(), __n2);
+<span class="lineNum"> 414 </span> : }
+<span class="lineNum"> 415 </span> : }
+<span class="lineNum"> 416 </span> :
+<span class="lineNum"> 417 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 418 </span> : void
+<span class="lineNum"> 419 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::_Rep::
+<span class="lineNum"> 420 </span> : _M_destroy(const _Alloc&amp; __a) throw ()
+<span class="lineNum"> 421 </span> : {
+<span class="lineNum"> 422 </span> : const size_type __size = sizeof(_Rep_base) +
+<span class="lineNum"> 423 </span> : (this-&gt;_M_capacity + 1) * sizeof(_CharT);
+<span class="lineNum"> 424 </span> : _Raw_bytes_alloc(__a).deallocate(reinterpret_cast&lt;char*&gt;(this), __size);
+<span class="lineNum"> 425 </span> : }
+<span class="lineNum"> 426 </span> :
+<span class="lineNum"> 427 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 428 </span> : void
+<span class="lineNum"> 429 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 430 </span> : _M_leak_hard()
+<span class="lineNum"> 431 </span> : {
+<span class="lineNum"> 432 </span> : #ifndef _GLIBCXX_FULLY_DYNAMIC_STRING
+<span class="lineNum"> 433 </span> : if (_M_rep() == &amp;_S_empty_rep())
+<span class="lineNum"> 434 </span> : return;
+<span class="lineNum"> 435 </span> : #endif
+<span class="lineNum"> 436 </span> : if (_M_rep()-&gt;_M_is_shared())
+<span class="lineNum"> 437 </span> : _M_mutate(0, 0, 0);
+<span class="lineNum"> 438 </span> : _M_rep()-&gt;_M_set_leaked();
+<span class="lineNum"> 439 </span> : }
+<span class="lineNum"> 440 </span> :
+<span class="lineNum"> 441 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 442 </span> : void
+<span class="lineNum"> 443 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 444 </span> : _M_mutate(size_type __pos, size_type __len1, size_type __len2)
+<span class="lineNum"> 445 </span> : {
+<span class="lineNum"> 446 </span> : const size_type __old_size = this-&gt;size();
+<span class="lineNum"> 447 </span> : const size_type __new_size = __old_size + __len2 - __len1;
+<span class="lineNum"> 448 </span> : const size_type __how_much = __old_size - __pos - __len1;
+<span class="lineNum"> 449 </span> :
+<span class="lineNum"> 450 </span> : if (__new_size &gt; this-&gt;capacity() || _M_rep()-&gt;_M_is_shared())
+<span class="lineNum"> 451 </span> : {
+<span class="lineNum"> 452 </span> : // Must reallocate.
+<span class="lineNum"> 453 </span> : const allocator_type __a = get_allocator();
+<span class="lineNum"> 454 </span> : _Rep* __r = _Rep::_S_create(__new_size, this-&gt;capacity(), __a);
+<span class="lineNum"> 455 </span> :
+<span class="lineNum"> 456 </span> : if (__pos)
+<span class="lineNum"> 457 </span> : _M_copy(__r-&gt;_M_refdata(), _M_data(), __pos);
+<span class="lineNum"> 458 </span> : if (__how_much)
+<span class="lineNum"> 459 </span> : _M_copy(__r-&gt;_M_refdata() + __pos + __len2,
+<span class="lineNum"> 460 </span> : _M_data() + __pos + __len1, __how_much);
+<span class="lineNum"> 461 </span> :
+<span class="lineNum"> 462 </span> : _M_rep()-&gt;_M_dispose(__a);
+<span class="lineNum"> 463 </span> : _M_data(__r-&gt;_M_refdata());
+<span class="lineNum"> 464 </span> : }
+<span class="lineNum"> 465 </span> : else if (__how_much &amp;&amp; __len1 != __len2)
+<span class="lineNum"> 466 </span> : {
+<span class="lineNum"> 467 </span> : // Work in-place.
+<span class="lineNum"> 468 </span> : _M_move(_M_data() + __pos + __len2,
+<span class="lineNum"> 469 </span> : _M_data() + __pos + __len1, __how_much);
+<span class="lineNum"> 470 </span> : }
+<span class="lineNum"> 471 </span> : _M_rep()-&gt;_M_set_length_and_sharable(__new_size);
+<span class="lineNum"> 472 </span> : }
+<span class="lineNum"> 473 </span> :
+<span class="lineNum"> 474 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 475 </span> : void
+<span class="lineNum"> 476 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 477 </span> : reserve(size_type __res)
+<span class="lineNum"> 478 </span> : {
+<span class="lineNum"> 479 </span> : if (__res != this-&gt;capacity() || _M_rep()-&gt;_M_is_shared())
+<span class="lineNum"> 480 </span> : {
+<span class="lineNum"> 481 </span> : // Make sure we don't shrink below the current size
+<span class="lineNum"> 482 </span> : if (__res &lt; this-&gt;size())
+<span class="lineNum"> 483 </span> : __res = this-&gt;size();
+<span class="lineNum"> 484 </span> : const allocator_type __a = get_allocator();
+<span class="lineNum"> 485 </span> : _CharT* __tmp = _M_rep()-&gt;_M_clone(__a, __res - this-&gt;size());
+<span class="lineNum"> 486 </span> : _M_rep()-&gt;_M_dispose(__a);
+<span class="lineNum"> 487 </span> : _M_data(__tmp);
+<span class="lineNum"> 488 </span> : }
+<span class="lineNum"> 489 </span> : }
+<span class="lineNum"> 490 </span> :
+<span class="lineNum"> 491 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 492 </span> : void
+<span class="lineNum"> 493 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 494 </span> : swap(basic_string&amp; __s)
+<span class="lineNum"> 495 </span> : {
+<span class="lineNum"> 496 </span> : if (_M_rep()-&gt;_M_is_leaked())
+<span class="lineNum"> 497 </span> : _M_rep()-&gt;_M_set_sharable();
+<span class="lineNum"> 498 </span> : if (__s._M_rep()-&gt;_M_is_leaked())
+<span class="lineNum"> 499 </span> : __s._M_rep()-&gt;_M_set_sharable();
+<span class="lineNum"> 500 </span> : if (this-&gt;get_allocator() == __s.get_allocator())
+<span class="lineNum"> 501 </span> : {
+<span class="lineNum"> 502 </span> : _CharT* __tmp = _M_data();
+<span class="lineNum"> 503 </span> : _M_data(__s._M_data());
+<span class="lineNum"> 504 </span> : __s._M_data(__tmp);
+<span class="lineNum"> 505 </span> : }
+<span class="lineNum"> 506 </span> : // The code below can usually be optimized away.
+<span class="lineNum"> 507 </span> : else
+<span class="lineNum"> 508 </span> : {
+<span class="lineNum"> 509 </span> : const basic_string __tmp1(_M_ibegin(), _M_iend(),
+<span class="lineNum"> 510 </span> : __s.get_allocator());
+<span class="lineNum"> 511 </span> : const basic_string __tmp2(__s._M_ibegin(), __s._M_iend(),
+<span class="lineNum"> 512 </span> : this-&gt;get_allocator());
+<span class="lineNum"> 513 </span> : *this = __tmp2;
+<span class="lineNum"> 514 </span> : __s = __tmp1;
+<span class="lineNum"> 515 </span> : }
+<span class="lineNum"> 516 </span> : }
+<span class="lineNum"> 517 </span> :
+<span class="lineNum"> 518 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 519 </span> : typename basic_string&lt;_CharT, _Traits, _Alloc&gt;::_Rep*
+<span class="lineNum"> 520 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::_Rep::
+<span class="lineNum"> 521 </span> : _S_create(size_type __capacity, size_type __old_capacity,
+<span class="lineNum"> 522 </span> : const _Alloc&amp; __alloc)
+<span class="lineNum"> 523 </span> : {
+<span class="lineNum"> 524 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 525 </span> : // 83. String::npos vs. string::max_size()
+<span class="lineNum"> 526 </span> : if (__capacity &gt; _S_max_size)
+<span class="lineNum"> 527 </span> : __throw_length_error(__N(&quot;basic_string::_S_create&quot;));
+<span class="lineNum"> 528 </span> :
+<span class="lineNum"> 529 </span> : // The standard places no restriction on allocating more memory
+<span class="lineNum"> 530 </span> : // than is strictly needed within this layer at the moment or as
+<span class="lineNum"> 531 </span> : // requested by an explicit application call to reserve().
+<span class="lineNum"> 532 </span> :
+<span class="lineNum"> 533 </span> : // Many malloc implementations perform quite poorly when an
+<span class="lineNum"> 534 </span> : // application attempts to allocate memory in a stepwise fashion
+<span class="lineNum"> 535 </span> : // growing each allocation size by only 1 char. Additionally,
+<span class="lineNum"> 536 </span> : // it makes little sense to allocate less linear memory than the
+<span class="lineNum"> 537 </span> : // natural blocking size of the malloc implementation.
+<span class="lineNum"> 538 </span> : // Unfortunately, we would need a somewhat low-level calculation
+<span class="lineNum"> 539 </span> : // with tuned parameters to get this perfect for any particular
+<span class="lineNum"> 540 </span> : // malloc implementation. Fortunately, generalizations about
+<span class="lineNum"> 541 </span> : // common features seen among implementations seems to suffice.
+<span class="lineNum"> 542 </span> :
+<span class="lineNum"> 543 </span> : // __pagesize need not match the actual VM page size for good
+<span class="lineNum"> 544 </span> : // results in practice, thus we pick a common value on the low
+<span class="lineNum"> 545 </span> : // side. __malloc_header_size is an estimate of the amount of
+<span class="lineNum"> 546 </span> : // overhead per memory allocation (in practice seen N * sizeof
+<span class="lineNum"> 547 </span> : // (void*) where N is 0, 2 or 4). According to folklore,
+<span class="lineNum"> 548 </span> : // picking this value on the high side is better than
+<span class="lineNum"> 549 </span> : // low-balling it (especially when this algorithm is used with
+<span class="lineNum"> 550 </span> : // malloc implementations that allocate memory blocks rounded up
+<span class="lineNum"> 551 </span> : // to a size which is a power of 2).
+<span class="lineNum"> 552 </span> : const size_type __pagesize = 4096;
+<span class="lineNum"> 553 </span> : const size_type __malloc_header_size = 4 * sizeof(void*);
+<span class="lineNum"> 554 </span> :
+<span class="lineNum"> 555 </span> : // The below implements an exponential growth policy, necessary to
+<span class="lineNum"> 556 </span> : // meet amortized linear time requirements of the library: see
+<span class="lineNum"> 557 </span> : // http://gcc.gnu.org/ml/libstdc++/2001-07/msg00085.html.
+<span class="lineNum"> 558 </span> : // It's active for allocations requiring an amount of memory above
+<span class="lineNum"> 559 </span> : // system pagesize. This is consistent with the requirements of the
+<span class="lineNum"> 560 </span> : // standard: http://gcc.gnu.org/ml/libstdc++/2001-07/msg00130.html
+<span class="lineNum"> 561 </span> : if (__capacity &gt; __old_capacity &amp;&amp; __capacity &lt; 2 * __old_capacity)
+<span class="lineNum"> 562 </span> : __capacity = 2 * __old_capacity;
+<span class="lineNum"> 563 </span> :
+<span class="lineNum"> 564 </span> : // NB: Need an array of char_type[__capacity], plus a terminating
+<span class="lineNum"> 565 </span> : // null char_type() element, plus enough for the _Rep data structure.
+<span class="lineNum"> 566 </span> : // Whew. Seemingly so needy, yet so elemental.
+<span class="lineNum"> 567 </span> : size_type __size = (__capacity + 1) * sizeof(_CharT) + sizeof(_Rep);
+<span class="lineNum"> 568 </span> :
+<span class="lineNum"> 569 </span> : const size_type __adj_size = __size + __malloc_header_size;
+<span class="lineNum"> 570 </span> : if (__adj_size &gt; __pagesize &amp;&amp; __capacity &gt; __old_capacity)
+<span class="lineNum"> 571 </span> : {
+<span class="lineNum"> 572 </span> : const size_type __extra = __pagesize - __adj_size % __pagesize;
+<span class="lineNum"> 573 </span> : __capacity += __extra / sizeof(_CharT);
+<span class="lineNum"> 574 </span> : // Never allocate a string bigger than _S_max_size.
+<span class="lineNum"> 575 </span> : if (__capacity &gt; _S_max_size)
+<span class="lineNum"> 576 </span> : __capacity = _S_max_size;
+<span class="lineNum"> 577 </span> : __size = (__capacity + 1) * sizeof(_CharT) + sizeof(_Rep);
+<span class="lineNum"> 578 </span> : }
+<span class="lineNum"> 579 </span> :
+<span class="lineNum"> 580 </span> : // NB: Might throw, but no worries about a leak, mate: _Rep()
+<span class="lineNum"> 581 </span> : // does not throw.
+<span class="lineNum"> 582 </span> : void* __place = _Raw_bytes_alloc(__alloc).allocate(__size);
+<span class="lineNum"> 583 </span> : _Rep *__p = new (__place) _Rep;
+<span class="lineNum"> 584 </span> : __p-&gt;_M_capacity = __capacity;
+<span class="lineNum"> 585 </span> : // ABI compatibility - 3.4.x set in _S_create both
+<span class="lineNum"> 586 </span> : // _M_refcount and _M_length. All callers of _S_create
+<span class="lineNum"> 587 </span> : // in basic_string.tcc then set just _M_length.
+<span class="lineNum"> 588 </span> : // In 4.0.x and later both _M_refcount and _M_length
+<span class="lineNum"> 589 </span> : // are initialized in the callers, unfortunately we can
+<span class="lineNum"> 590 </span> : // have 3.4.x compiled code with _S_create callers inlined
+<span class="lineNum"> 591 </span> : // calling 4.0.x+ _S_create.
+<span class="lineNum"> 592 </span> : __p-&gt;_M_set_sharable();
+<span class="lineNum"> 593 </span> : return __p;
+<span class="lineNum"> 594 </span> : }
+<span class="lineNum"> 595 </span> :
+<span class="lineNum"> 596 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 597 </span> : _CharT*
+<span class="lineNum"> 598 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::_Rep::
+<span class="lineNum"> 599 </span> : _M_clone(const _Alloc&amp; __alloc, size_type __res)
+<span class="lineNum"> 600 </span> : {
+<span class="lineNum"> 601 </span> : // Requested capacity of the clone.
+<span class="lineNum"> 602 </span> : const size_type __requested_cap = this-&gt;_M_length + __res;
+<span class="lineNum"> 603 </span> : _Rep* __r = _Rep::_S_create(__requested_cap, this-&gt;_M_capacity,
+<span class="lineNum"> 604 </span> : __alloc);
+<span class="lineNum"> 605 </span> : if (this-&gt;_M_length)
+<span class="lineNum"> 606 </span> : _M_copy(__r-&gt;_M_refdata(), _M_refdata(), this-&gt;_M_length);
+<span class="lineNum"> 607 </span> :
+<span class="lineNum"> 608 </span> : __r-&gt;_M_set_length_and_sharable(this-&gt;_M_length);
+<span class="lineNum"> 609 </span> : return __r-&gt;_M_refdata();
+<span class="lineNum"> 610 </span> : }
+<span class="lineNum"> 611 </span> :
+<span class="lineNum"> 612 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 613 </span> : void
+<span class="lineNum"> 614 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 615 </span> : resize(size_type __n, _CharT __c)
+<span class="lineNum"> 616 </span> : {
+<span class="lineNum"> 617 </span> : const size_type __size = this-&gt;size();
+<span class="lineNum"> 618 </span> : _M_check_length(__size, __n, &quot;basic_string::resize&quot;);
+<span class="lineNum"> 619 </span> : if (__size &lt; __n)
+<span class="lineNum"> 620 </span> : this-&gt;append(__n - __size, __c);
+<span class="lineNum"> 621 </span> : else if (__n &lt; __size)
+<span class="lineNum"> 622 </span> : this-&gt;erase(__n);
+<span class="lineNum"> 623 </span> : // else nothing (in particular, avoid calling _M_mutate() unnecessarily.)
+<span class="lineNum"> 624 </span> : }
+<span class="lineNum"> 625 </span> :
+<span class="lineNum"> 626 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 627 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 628 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp;
+<span class="lineNum"> 629 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 630 </span> : _M_replace_dispatch(iterator __i1, iterator __i2, _InputIterator __k1,
+<span class="lineNum"> 631 </span> : _InputIterator __k2, __false_type)
+<span class="lineNum"> 632 </span> : {
+<span class="lineNum"> 633 </span> : const basic_string __s(__k1, __k2);
+<span class="lineNum"> 634 </span> : const size_type __n1 = __i2 - __i1;
+<span class="lineNum"> 635 </span> : _M_check_length(__n1, __s.size(), &quot;basic_string::_M_replace_dispatch&quot;);
+<span class="lineNum"> 636 </span> : return _M_replace_safe(__i1 - _M_ibegin(), __n1, __s._M_data(),
+<span class="lineNum"> 637 </span> : __s.size());
+<span class="lineNum"> 638 </span> : }
+<span class="lineNum"> 639 </span> :
+<span class="lineNum"> 640 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 641 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp;
+<span class="lineNum"> 642 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 643 </span> : _M_replace_aux(size_type __pos1, size_type __n1, size_type __n2,
+<span class="lineNum"> 644 </span> : _CharT __c)
+<span class="lineNum"> 645 </span> : {
+<span class="lineNum"> 646 </span> : _M_check_length(__n1, __n2, &quot;basic_string::_M_replace_aux&quot;);
+<span class="lineNum"> 647 </span> : _M_mutate(__pos1, __n1, __n2);
+<span class="lineNum"> 648 </span> : if (__n2)
+<span class="lineNum"> 649 </span> : _M_assign(_M_data() + __pos1, __n2, __c);
+<span class="lineNum"> 650 </span> : return *this;
+<span class="lineNum"> 651 </span> : }
+<span class="lineNum"> 652 </span> :
+<span class="lineNum"> 653 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 654 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp;
+<span class="lineNum"> 655 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 656 </span> : _M_replace_safe(size_type __pos1, size_type __n1, const _CharT* __s,
+<span class="lineNum"> 657 </span> : size_type __n2)
+<span class="lineNum"> 658 </span> : {
+<span class="lineNum"> 659 </span> : _M_mutate(__pos1, __n1, __n2);
+<span class="lineNum"> 660 </span> : if (__n2)
+<span class="lineNum"> 661 </span> : _M_copy(_M_data() + __pos1, __s, __n2);
+<span class="lineNum"> 662 </span> : return *this;
+<span class="lineNum"> 663 </span> : }
+<span class="lineNum"> 664 </span> :
+<span class="lineNum"> 665 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 666 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;
+<span class="lineNum"> 667 </span> : operator+(const _CharT* __lhs,
+<span class="lineNum"> 668 </span><span class="lineCov"> 2633 : const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __rhs)</span>
+<span class="lineNum"> 669 </span> : {
+<span class="lineNum"> 670 </span> : __glibcxx_requires_string(__lhs);
+<span class="lineNum"> 671 </span> : typedef basic_string&lt;_CharT, _Traits, _Alloc&gt; __string_type;
+<span class="lineNum"> 672 </span> : typedef typename __string_type::size_type __size_type;
+<span class="lineNum"> 673 </span><span class="lineCov"> 2633 : const __size_type __len = _Traits::length(__lhs);</span>
+<span class="lineNum"> 674 </span><span class="lineCov"> 2633 : __string_type __str;</span>
+<span class="lineNum"> 675 </span><span class="lineCov"> 2633 : __str.reserve(__len + __rhs.size());</span>
+<span class="lineNum"> 676 </span><span class="lineCov"> 2633 : __str.append(__lhs, __len);</span>
+<span class="lineNum"> 677 </span><span class="lineCov"> 2633 : __str.append(__rhs);</span>
+<span class="lineNum"> 678 </span><span class="lineNoCov"> 0 : return __str;</span>
+<span class="lineNum"> 679 </span> : }
+<span class="lineNum"> 680 </span> :
+<span class="lineNum"> 681 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 682 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;
+<span class="lineNum"> 683 </span> : operator+(_CharT __lhs, const basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __rhs)
+<span class="lineNum"> 684 </span> : {
+<span class="lineNum"> 685 </span> : typedef basic_string&lt;_CharT, _Traits, _Alloc&gt; __string_type;
+<span class="lineNum"> 686 </span> : typedef typename __string_type::size_type __size_type;
+<span class="lineNum"> 687 </span> : __string_type __str;
+<span class="lineNum"> 688 </span> : const __size_type __len = __rhs.size();
+<span class="lineNum"> 689 </span> : __str.reserve(__len + 1);
+<span class="lineNum"> 690 </span> : __str.append(__size_type(1), __lhs);
+<span class="lineNum"> 691 </span> : __str.append(__rhs);
+<span class="lineNum"> 692 </span> : return __str;
+<span class="lineNum"> 693 </span> : }
+<span class="lineNum"> 694 </span> :
+<span class="lineNum"> 695 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 696 </span> : typename basic_string&lt;_CharT, _Traits, _Alloc&gt;::size_type
+<span class="lineNum"> 697 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 698 </span> : copy(_CharT* __s, size_type __n, size_type __pos) const
+<span class="lineNum"> 699 </span> : {
+<span class="lineNum"> 700 </span> : _M_check(__pos, &quot;basic_string::copy&quot;);
+<span class="lineNum"> 701 </span> : __n = _M_limit(__pos, __n);
+<span class="lineNum"> 702 </span> : __glibcxx_requires_string_len(__s, __n);
+<span class="lineNum"> 703 </span> : if (__n)
+<span class="lineNum"> 704 </span> : _M_copy(__s, _M_data() + __pos, __n);
+<span class="lineNum"> 705 </span> : // 21.3.5.7 par 3: do not append null. (good.)
+<span class="lineNum"> 706 </span> : return __n;
+<span class="lineNum"> 707 </span> : }
+<span class="lineNum"> 708 </span> :
+<span class="lineNum"> 709 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 710 </span> : typename basic_string&lt;_CharT, _Traits, _Alloc&gt;::size_type
+<span class="lineNum"> 711 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 712 </span> : find(const _CharT* __s, size_type __pos, size_type __n) const
+<span class="lineNum"> 713 </span> : {
+<span class="lineNum"> 714 </span> : __glibcxx_requires_string_len(__s, __n);
+<span class="lineNum"> 715 </span> : const size_type __size = this-&gt;size();
+<span class="lineNum"> 716 </span> : const _CharT* __data = _M_data();
+<span class="lineNum"> 717 </span> :
+<span class="lineNum"> 718 </span> : if (__n == 0)
+<span class="lineNum"> 719 </span> : return __pos &lt;= __size ? __pos : npos;
+<span class="lineNum"> 720 </span> :
+<span class="lineNum"> 721 </span> : if (__n &lt;= __size)
+<span class="lineNum"> 722 </span> : {
+<span class="lineNum"> 723 </span> : for (; __pos &lt;= __size - __n; ++__pos)
+<span class="lineNum"> 724 </span> : if (traits_type::eq(__data[__pos], __s[0])
+<span class="lineNum"> 725 </span> : &amp;&amp; traits_type::compare(__data + __pos + 1,
+<span class="lineNum"> 726 </span> : __s + 1, __n - 1) == 0)
+<span class="lineNum"> 727 </span> : return __pos;
+<span class="lineNum"> 728 </span> : }
+<span class="lineNum"> 729 </span> : return npos;
+<span class="lineNum"> 730 </span> : }
+<span class="lineNum"> 731 </span> :
+<span class="lineNum"> 732 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 733 </span> : typename basic_string&lt;_CharT, _Traits, _Alloc&gt;::size_type
+<span class="lineNum"> 734 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 735 </span> : find(_CharT __c, size_type __pos) const
+<span class="lineNum"> 736 </span> : {
+<span class="lineNum"> 737 </span> : size_type __ret = npos;
+<span class="lineNum"> 738 </span> : const size_type __size = this-&gt;size();
+<span class="lineNum"> 739 </span> : if (__pos &lt; __size)
+<span class="lineNum"> 740 </span> : {
+<span class="lineNum"> 741 </span> : const _CharT* __data = _M_data();
+<span class="lineNum"> 742 </span> : const size_type __n = __size - __pos;
+<span class="lineNum"> 743 </span> : const _CharT* __p = traits_type::find(__data + __pos, __n, __c);
+<span class="lineNum"> 744 </span> : if (__p)
+<span class="lineNum"> 745 </span> : __ret = __p - __data;
+<span class="lineNum"> 746 </span> : }
+<span class="lineNum"> 747 </span> : return __ret;
+<span class="lineNum"> 748 </span> : }
+<span class="lineNum"> 749 </span> :
+<span class="lineNum"> 750 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 751 </span> : typename basic_string&lt;_CharT, _Traits, _Alloc&gt;::size_type
+<span class="lineNum"> 752 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 753 </span> : rfind(const _CharT* __s, size_type __pos, size_type __n) const
+<span class="lineNum"> 754 </span> : {
+<span class="lineNum"> 755 </span> : __glibcxx_requires_string_len(__s, __n);
+<span class="lineNum"> 756 </span> : const size_type __size = this-&gt;size();
+<span class="lineNum"> 757 </span> : if (__n &lt;= __size)
+<span class="lineNum"> 758 </span> : {
+<span class="lineNum"> 759 </span> : __pos = std::min(size_type(__size - __n), __pos);
+<span class="lineNum"> 760 </span> : const _CharT* __data = _M_data();
+<span class="lineNum"> 761 </span> : do
+<span class="lineNum"> 762 </span> : {
+<span class="lineNum"> 763 </span> : if (traits_type::compare(__data + __pos, __s, __n) == 0)
+<span class="lineNum"> 764 </span> : return __pos;
+<span class="lineNum"> 765 </span> : }
+<span class="lineNum"> 766 </span> : while (__pos-- &gt; 0);
+<span class="lineNum"> 767 </span> : }
+<span class="lineNum"> 768 </span> : return npos;
+<span class="lineNum"> 769 </span> : }
+<span class="lineNum"> 770 </span> :
+<span class="lineNum"> 771 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 772 </span> : typename basic_string&lt;_CharT, _Traits, _Alloc&gt;::size_type
+<span class="lineNum"> 773 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 774 </span> : rfind(_CharT __c, size_type __pos) const
+<span class="lineNum"> 775 </span> : {
+<span class="lineNum"> 776 </span> : size_type __size = this-&gt;size();
+<span class="lineNum"> 777 </span> : if (__size)
+<span class="lineNum"> 778 </span> : {
+<span class="lineNum"> 779 </span> : if (--__size &gt; __pos)
+<span class="lineNum"> 780 </span> : __size = __pos;
+<span class="lineNum"> 781 </span> : for (++__size; __size-- &gt; 0; )
+<span class="lineNum"> 782 </span> : if (traits_type::eq(_M_data()[__size], __c))
+<span class="lineNum"> 783 </span> : return __size;
+<span class="lineNum"> 784 </span> : }
+<span class="lineNum"> 785 </span> : return npos;
+<span class="lineNum"> 786 </span> : }
+<span class="lineNum"> 787 </span> :
+<span class="lineNum"> 788 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 789 </span> : typename basic_string&lt;_CharT, _Traits, _Alloc&gt;::size_type
+<span class="lineNum"> 790 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 791 </span> : find_first_of(const _CharT* __s, size_type __pos, size_type __n) const
+<span class="lineNum"> 792 </span> : {
+<span class="lineNum"> 793 </span> : __glibcxx_requires_string_len(__s, __n);
+<span class="lineNum"> 794 </span> : for (; __n &amp;&amp; __pos &lt; this-&gt;size(); ++__pos)
+<span class="lineNum"> 795 </span> : {
+<span class="lineNum"> 796 </span> : const _CharT* __p = traits_type::find(__s, __n, _M_data()[__pos]);
+<span class="lineNum"> 797 </span> : if (__p)
+<span class="lineNum"> 798 </span> : return __pos;
+<span class="lineNum"> 799 </span> : }
+<span class="lineNum"> 800 </span> : return npos;
+<span class="lineNum"> 801 </span> : }
+<span class="lineNum"> 802 </span> :
+<span class="lineNum"> 803 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 804 </span> : typename basic_string&lt;_CharT, _Traits, _Alloc&gt;::size_type
+<span class="lineNum"> 805 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 806 </span> : find_last_of(const _CharT* __s, size_type __pos, size_type __n) const
+<span class="lineNum"> 807 </span> : {
+<span class="lineNum"> 808 </span> : __glibcxx_requires_string_len(__s, __n);
+<span class="lineNum"> 809 </span> : size_type __size = this-&gt;size();
+<span class="lineNum"> 810 </span> : if (__size &amp;&amp; __n)
+<span class="lineNum"> 811 </span> : {
+<span class="lineNum"> 812 </span> : if (--__size &gt; __pos)
+<span class="lineNum"> 813 </span> : __size = __pos;
+<span class="lineNum"> 814 </span> : do
+<span class="lineNum"> 815 </span> : {
+<span class="lineNum"> 816 </span> : if (traits_type::find(__s, __n, _M_data()[__size]))
+<span class="lineNum"> 817 </span> : return __size;
+<span class="lineNum"> 818 </span> : }
+<span class="lineNum"> 819 </span> : while (__size-- != 0);
+<span class="lineNum"> 820 </span> : }
+<span class="lineNum"> 821 </span> : return npos;
+<span class="lineNum"> 822 </span> : }
+<span class="lineNum"> 823 </span> :
+<span class="lineNum"> 824 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 825 </span> : typename basic_string&lt;_CharT, _Traits, _Alloc&gt;::size_type
+<span class="lineNum"> 826 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 827 </span> : find_first_not_of(const _CharT* __s, size_type __pos, size_type __n) const
+<span class="lineNum"> 828 </span> : {
+<span class="lineNum"> 829 </span> : __glibcxx_requires_string_len(__s, __n);
+<span class="lineNum"> 830 </span> : for (; __pos &lt; this-&gt;size(); ++__pos)
+<span class="lineNum"> 831 </span> : if (!traits_type::find(__s, __n, _M_data()[__pos]))
+<span class="lineNum"> 832 </span> : return __pos;
+<span class="lineNum"> 833 </span> : return npos;
+<span class="lineNum"> 834 </span> : }
+<span class="lineNum"> 835 </span> :
+<span class="lineNum"> 836 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 837 </span> : typename basic_string&lt;_CharT, _Traits, _Alloc&gt;::size_type
+<span class="lineNum"> 838 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 839 </span> : find_first_not_of(_CharT __c, size_type __pos) const
+<span class="lineNum"> 840 </span> : {
+<span class="lineNum"> 841 </span> : for (; __pos &lt; this-&gt;size(); ++__pos)
+<span class="lineNum"> 842 </span> : if (!traits_type::eq(_M_data()[__pos], __c))
+<span class="lineNum"> 843 </span> : return __pos;
+<span class="lineNum"> 844 </span> : return npos;
+<span class="lineNum"> 845 </span> : }
+<span class="lineNum"> 846 </span> :
+<span class="lineNum"> 847 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 848 </span> : typename basic_string&lt;_CharT, _Traits, _Alloc&gt;::size_type
+<span class="lineNum"> 849 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 850 </span> : find_last_not_of(const _CharT* __s, size_type __pos, size_type __n) const
+<span class="lineNum"> 851 </span> : {
+<span class="lineNum"> 852 </span> : __glibcxx_requires_string_len(__s, __n);
+<span class="lineNum"> 853 </span> : size_type __size = this-&gt;size();
+<span class="lineNum"> 854 </span> : if (__size)
+<span class="lineNum"> 855 </span> : {
+<span class="lineNum"> 856 </span> : if (--__size &gt; __pos)
+<span class="lineNum"> 857 </span> : __size = __pos;
+<span class="lineNum"> 858 </span> : do
+<span class="lineNum"> 859 </span> : {
+<span class="lineNum"> 860 </span> : if (!traits_type::find(__s, __n, _M_data()[__size]))
+<span class="lineNum"> 861 </span> : return __size;
+<span class="lineNum"> 862 </span> : }
+<span class="lineNum"> 863 </span> : while (__size--);
+<span class="lineNum"> 864 </span> : }
+<span class="lineNum"> 865 </span> : return npos;
+<span class="lineNum"> 866 </span> : }
+<span class="lineNum"> 867 </span> :
+<span class="lineNum"> 868 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 869 </span> : typename basic_string&lt;_CharT, _Traits, _Alloc&gt;::size_type
+<span class="lineNum"> 870 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 871 </span> : find_last_not_of(_CharT __c, size_type __pos) const
+<span class="lineNum"> 872 </span> : {
+<span class="lineNum"> 873 </span> : size_type __size = this-&gt;size();
+<span class="lineNum"> 874 </span> : if (__size)
+<span class="lineNum"> 875 </span> : {
+<span class="lineNum"> 876 </span> : if (--__size &gt; __pos)
+<span class="lineNum"> 877 </span> : __size = __pos;
+<span class="lineNum"> 878 </span> : do
+<span class="lineNum"> 879 </span> : {
+<span class="lineNum"> 880 </span> : if (!traits_type::eq(_M_data()[__size], __c))
+<span class="lineNum"> 881 </span> : return __size;
+<span class="lineNum"> 882 </span> : }
+<span class="lineNum"> 883 </span> : while (__size--);
+<span class="lineNum"> 884 </span> : }
+<span class="lineNum"> 885 </span> : return npos;
+<span class="lineNum"> 886 </span> : }
+<span class="lineNum"> 887 </span> :
+<span class="lineNum"> 888 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 889 </span> : int
+<span class="lineNum"> 890 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 891 </span> : compare(size_type __pos, size_type __n, const basic_string&amp; __str) const
+<span class="lineNum"> 892 </span> : {
+<span class="lineNum"> 893 </span> : _M_check(__pos, &quot;basic_string::compare&quot;);
+<span class="lineNum"> 894 </span> : __n = _M_limit(__pos, __n);
+<span class="lineNum"> 895 </span> : const size_type __osize = __str.size();
+<span class="lineNum"> 896 </span> : const size_type __len = std::min(__n, __osize);
+<span class="lineNum"> 897 </span> : int __r = traits_type::compare(_M_data() + __pos, __str.data(), __len);
+<span class="lineNum"> 898 </span> : if (!__r)
+<span class="lineNum"> 899 </span> : __r = _S_compare(__n, __osize);
+<span class="lineNum"> 900 </span> : return __r;
+<span class="lineNum"> 901 </span> : }
+<span class="lineNum"> 902 </span> :
+<span class="lineNum"> 903 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 904 </span> : int
+<span class="lineNum"> 905 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 906 </span> : compare(size_type __pos1, size_type __n1, const basic_string&amp; __str,
+<span class="lineNum"> 907 </span> : size_type __pos2, size_type __n2) const
+<span class="lineNum"> 908 </span> : {
+<span class="lineNum"> 909 </span> : _M_check(__pos1, &quot;basic_string::compare&quot;);
+<span class="lineNum"> 910 </span> : __str._M_check(__pos2, &quot;basic_string::compare&quot;);
+<span class="lineNum"> 911 </span> : __n1 = _M_limit(__pos1, __n1);
+<span class="lineNum"> 912 </span> : __n2 = __str._M_limit(__pos2, __n2);
+<span class="lineNum"> 913 </span> : const size_type __len = std::min(__n1, __n2);
+<span class="lineNum"> 914 </span> : int __r = traits_type::compare(_M_data() + __pos1,
+<span class="lineNum"> 915 </span> : __str.data() + __pos2, __len);
+<span class="lineNum"> 916 </span> : if (!__r)
+<span class="lineNum"> 917 </span> : __r = _S_compare(__n1, __n2);
+<span class="lineNum"> 918 </span> : return __r;
+<span class="lineNum"> 919 </span> : }
+<span class="lineNum"> 920 </span> :
+<span class="lineNum"> 921 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 922 </span> : int
+<span class="lineNum"> 923 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 924 </span> : compare(const _CharT* __s) const
+<span class="lineNum"> 925 </span> : {
+<span class="lineNum"> 926 </span> : __glibcxx_requires_string(__s);
+<span class="lineNum"> 927 </span> : const size_type __size = this-&gt;size();
+<span class="lineNum"> 928 </span> : const size_type __osize = traits_type::length(__s);
+<span class="lineNum"> 929 </span> : const size_type __len = std::min(__size, __osize);
+<span class="lineNum"> 930 </span> : int __r = traits_type::compare(_M_data(), __s, __len);
+<span class="lineNum"> 931 </span> : if (!__r)
+<span class="lineNum"> 932 </span> : __r = _S_compare(__size, __osize);
+<span class="lineNum"> 933 </span> : return __r;
+<span class="lineNum"> 934 </span> : }
+<span class="lineNum"> 935 </span> :
+<span class="lineNum"> 936 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 937 </span> : int
+<span class="lineNum"> 938 </span> : basic_string &lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 939 </span> : compare(size_type __pos, size_type __n1, const _CharT* __s) const
+<span class="lineNum"> 940 </span> : {
+<span class="lineNum"> 941 </span> : __glibcxx_requires_string(__s);
+<span class="lineNum"> 942 </span> : _M_check(__pos, &quot;basic_string::compare&quot;);
+<span class="lineNum"> 943 </span> : __n1 = _M_limit(__pos, __n1);
+<span class="lineNum"> 944 </span> : const size_type __osize = traits_type::length(__s);
+<span class="lineNum"> 945 </span> : const size_type __len = std::min(__n1, __osize);
+<span class="lineNum"> 946 </span> : int __r = traits_type::compare(_M_data() + __pos, __s, __len);
+<span class="lineNum"> 947 </span> : if (!__r)
+<span class="lineNum"> 948 </span> : __r = _S_compare(__n1, __osize);
+<span class="lineNum"> 949 </span> : return __r;
+<span class="lineNum"> 950 </span> : }
+<span class="lineNum"> 951 </span> :
+<span class="lineNum"> 952 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 953 </span> : int
+<span class="lineNum"> 954 </span> : basic_string &lt;_CharT, _Traits, _Alloc&gt;::
+<span class="lineNum"> 955 </span> : compare(size_type __pos, size_type __n1, const _CharT* __s,
+<span class="lineNum"> 956 </span> : size_type __n2) const
+<span class="lineNum"> 957 </span> : {
+<span class="lineNum"> 958 </span> : __glibcxx_requires_string_len(__s, __n2);
+<span class="lineNum"> 959 </span> : _M_check(__pos, &quot;basic_string::compare&quot;);
+<span class="lineNum"> 960 </span> : __n1 = _M_limit(__pos, __n1);
+<span class="lineNum"> 961 </span> : const size_type __len = std::min(__n1, __n2);
+<span class="lineNum"> 962 </span> : int __r = traits_type::compare(_M_data() + __pos, __s, __len);
+<span class="lineNum"> 963 </span> : if (!__r)
+<span class="lineNum"> 964 </span> : __r = _S_compare(__n1, __n2);
+<span class="lineNum"> 965 </span> : return __r;
+<span class="lineNum"> 966 </span> : }
+<span class="lineNum"> 967 </span> :
+<span class="lineNum"> 968 </span> : // 21.3.7.9 basic_string::getline and operators
+<span class="lineNum"> 969 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 970 </span> : basic_istream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 971 </span> : operator&gt;&gt;(basic_istream&lt;_CharT, _Traits&gt;&amp; __in,
+<span class="lineNum"> 972 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __str)
+<span class="lineNum"> 973 </span> : {
+<span class="lineNum"> 974 </span> : typedef basic_istream&lt;_CharT, _Traits&gt; __istream_type;
+<span class="lineNum"> 975 </span> : typedef basic_string&lt;_CharT, _Traits, _Alloc&gt; __string_type;
+<span class="lineNum"> 976 </span> : typedef typename __istream_type::ios_base __ios_base;
+<span class="lineNum"> 977 </span> : typedef typename __istream_type::int_type __int_type;
+<span class="lineNum"> 978 </span> : typedef typename __string_type::size_type __size_type;
+<span class="lineNum"> 979 </span> : typedef ctype&lt;_CharT&gt; __ctype_type;
+<span class="lineNum"> 980 </span> : typedef typename __ctype_type::ctype_base __ctype_base;
+<span class="lineNum"> 981 </span> :
+<span class="lineNum"> 982 </span> : __size_type __extracted = 0;
+<span class="lineNum"> 983 </span> : typename __ios_base::iostate __err = __ios_base::goodbit;
+<span class="lineNum"> 984 </span> : typename __istream_type::sentry __cerb(__in, false);
+<span class="lineNum"> 985 </span> : if (__cerb)
+<span class="lineNum"> 986 </span> : {
+<span class="lineNum"> 987 </span> : try
+<span class="lineNum"> 988 </span> : {
+<span class="lineNum"> 989 </span> : // Avoid reallocation for common case.
+<span class="lineNum"> 990 </span> : __str.erase();
+<span class="lineNum"> 991 </span> : _CharT __buf[128];
+<span class="lineNum"> 992 </span> : __size_type __len = 0;
+<span class="lineNum"> 993 </span> : const streamsize __w = __in.width();
+<span class="lineNum"> 994 </span> : const __size_type __n = __w &gt; 0 ? static_cast&lt;__size_type&gt;(__w)
+<span class="lineNum"> 995 </span> : : __str.max_size();
+<span class="lineNum"> 996 </span> : const __ctype_type&amp; __ct = use_facet&lt;__ctype_type&gt;(__in.getloc());
+<span class="lineNum"> 997 </span> : const __int_type __eof = _Traits::eof();
+<span class="lineNum"> 998 </span> : __int_type __c = __in.rdbuf()-&gt;sgetc();
+<span class="lineNum"> 999 </span> :
+<span class="lineNum"> 1000 </span> : while (__extracted &lt; __n
+<span class="lineNum"> 1001 </span> : &amp;&amp; !_Traits::eq_int_type(__c, __eof)
+<span class="lineNum"> 1002 </span> : &amp;&amp; !__ct.is(__ctype_base::space,
+<span class="lineNum"> 1003 </span> : _Traits::to_char_type(__c)))
+<span class="lineNum"> 1004 </span> : {
+<span class="lineNum"> 1005 </span> : if (__len == sizeof(__buf) / sizeof(_CharT))
+<span class="lineNum"> 1006 </span> : {
+<span class="lineNum"> 1007 </span> : __str.append(__buf, sizeof(__buf) / sizeof(_CharT));
+<span class="lineNum"> 1008 </span> : __len = 0;
+<span class="lineNum"> 1009 </span> : }
+<span class="lineNum"> 1010 </span> : __buf[__len++] = _Traits::to_char_type(__c);
+<span class="lineNum"> 1011 </span> : ++__extracted;
+<span class="lineNum"> 1012 </span> : __c = __in.rdbuf()-&gt;snextc();
+<span class="lineNum"> 1013 </span> : }
+<span class="lineNum"> 1014 </span> : __str.append(__buf, __len);
+<span class="lineNum"> 1015 </span> :
+<span class="lineNum"> 1016 </span> : if (_Traits::eq_int_type(__c, __eof))
+<span class="lineNum"> 1017 </span> : __err |= __ios_base::eofbit;
+<span class="lineNum"> 1018 </span> : __in.width(0);
+<span class="lineNum"> 1019 </span> : }
+<span class="lineNum"> 1020 </span> : catch(__cxxabiv1::__forced_unwind&amp;)
+<span class="lineNum"> 1021 </span> : {
+<span class="lineNum"> 1022 </span> : __in._M_setstate(__ios_base::badbit);
+<span class="lineNum"> 1023 </span> : __throw_exception_again;
+<span class="lineNum"> 1024 </span> : }
+<span class="lineNum"> 1025 </span> : catch(...)
+<span class="lineNum"> 1026 </span> : {
+<span class="lineNum"> 1027 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 1028 </span> : // 91. Description of operator&gt;&gt; and getline() for string&lt;&gt;
+<span class="lineNum"> 1029 </span> : // might cause endless loop
+<span class="lineNum"> 1030 </span> : __in._M_setstate(__ios_base::badbit);
+<span class="lineNum"> 1031 </span> : }
+<span class="lineNum"> 1032 </span> : }
+<span class="lineNum"> 1033 </span> : // 211. operator&gt;&gt;(istream&amp;, string&amp;) doesn't set failbit
+<span class="lineNum"> 1034 </span> : if (!__extracted)
+<span class="lineNum"> 1035 </span> : __err |= __ios_base::failbit;
+<span class="lineNum"> 1036 </span> : if (__err)
+<span class="lineNum"> 1037 </span> : __in.setstate(__err);
+<span class="lineNum"> 1038 </span> : return __in;
+<span class="lineNum"> 1039 </span> : }
+<span class="lineNum"> 1040 </span> :
+<span class="lineNum"> 1041 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 1042 </span> : basic_istream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 1043 </span> : getline(basic_istream&lt;_CharT, _Traits&gt;&amp; __in,
+<span class="lineNum"> 1044 </span> : basic_string&lt;_CharT, _Traits, _Alloc&gt;&amp; __str, _CharT __delim)
+<span class="lineNum"> 1045 </span> : {
+<span class="lineNum"> 1046 </span> : typedef basic_istream&lt;_CharT, _Traits&gt; __istream_type;
+<span class="lineNum"> 1047 </span> : typedef basic_string&lt;_CharT, _Traits, _Alloc&gt; __string_type;
+<span class="lineNum"> 1048 </span> : typedef typename __istream_type::ios_base __ios_base;
+<span class="lineNum"> 1049 </span> : typedef typename __istream_type::int_type __int_type;
+<span class="lineNum"> 1050 </span> : typedef typename __string_type::size_type __size_type;
+<span class="lineNum"> 1051 </span> :
+<span class="lineNum"> 1052 </span> : __size_type __extracted = 0;
+<span class="lineNum"> 1053 </span> : const __size_type __n = __str.max_size();
+<span class="lineNum"> 1054 </span> : typename __ios_base::iostate __err = __ios_base::goodbit;
+<span class="lineNum"> 1055 </span> : typename __istream_type::sentry __cerb(__in, true);
+<span class="lineNum"> 1056 </span> : if (__cerb)
+<span class="lineNum"> 1057 </span> : {
+<span class="lineNum"> 1058 </span> : try
+<span class="lineNum"> 1059 </span> : {
+<span class="lineNum"> 1060 </span> : __str.erase();
+<span class="lineNum"> 1061 </span> : const __int_type __idelim = _Traits::to_int_type(__delim);
+<span class="lineNum"> 1062 </span> : const __int_type __eof = _Traits::eof();
+<span class="lineNum"> 1063 </span> : __int_type __c = __in.rdbuf()-&gt;sgetc();
+<span class="lineNum"> 1064 </span> :
+<span class="lineNum"> 1065 </span> : while (__extracted &lt; __n
+<span class="lineNum"> 1066 </span> : &amp;&amp; !_Traits::eq_int_type(__c, __eof)
+<span class="lineNum"> 1067 </span> : &amp;&amp; !_Traits::eq_int_type(__c, __idelim))
+<span class="lineNum"> 1068 </span> : {
+<span class="lineNum"> 1069 </span> : __str += _Traits::to_char_type(__c);
+<span class="lineNum"> 1070 </span> : ++__extracted;
+<span class="lineNum"> 1071 </span> : __c = __in.rdbuf()-&gt;snextc();
+<span class="lineNum"> 1072 </span> : }
+<span class="lineNum"> 1073 </span> :
+<span class="lineNum"> 1074 </span> : if (_Traits::eq_int_type(__c, __eof))
+<span class="lineNum"> 1075 </span> : __err |= __ios_base::eofbit;
+<span class="lineNum"> 1076 </span> : else if (_Traits::eq_int_type(__c, __idelim))
+<span class="lineNum"> 1077 </span> : {
+<span class="lineNum"> 1078 </span> : ++__extracted;
+<span class="lineNum"> 1079 </span> : __in.rdbuf()-&gt;sbumpc();
+<span class="lineNum"> 1080 </span> : }
+<span class="lineNum"> 1081 </span> : else
+<span class="lineNum"> 1082 </span> : __err |= __ios_base::failbit;
+<span class="lineNum"> 1083 </span> : }
+<span class="lineNum"> 1084 </span> : catch(__cxxabiv1::__forced_unwind&amp;)
+<span class="lineNum"> 1085 </span> : {
+<span class="lineNum"> 1086 </span> : __in._M_setstate(__ios_base::badbit);
+<span class="lineNum"> 1087 </span> : __throw_exception_again;
+<span class="lineNum"> 1088 </span> : }
+<span class="lineNum"> 1089 </span> : catch(...)
+<span class="lineNum"> 1090 </span> : {
+<span class="lineNum"> 1091 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 1092 </span> : // 91. Description of operator&gt;&gt; and getline() for string&lt;&gt;
+<span class="lineNum"> 1093 </span> : // might cause endless loop
+<span class="lineNum"> 1094 </span> : __in._M_setstate(__ios_base::badbit);
+<span class="lineNum"> 1095 </span> : }
+<span class="lineNum"> 1096 </span> : }
+<span class="lineNum"> 1097 </span> : if (!__extracted)
+<span class="lineNum"> 1098 </span> : __err |= __ios_base::failbit;
+<span class="lineNum"> 1099 </span> : if (__err)
+<span class="lineNum"> 1100 </span> : __in.setstate(__err);
+<span class="lineNum"> 1101 </span> : return __in;
+<span class="lineNum"> 1102 </span> : }
+<span class="lineNum"> 1103 </span> :
+<span class="lineNum"> 1104 </span> : // Inhibit implicit instantiations for required instantiations,
+<span class="lineNum"> 1105 </span> : // which are defined via explicit instantiations elsewhere.
+<span class="lineNum"> 1106 </span> : // NB: This syntax is a GNU extension.
+<span class="lineNum"> 1107 </span> : #if _GLIBCXX_EXTERN_TEMPLATE
+<span class="lineNum"> 1108 </span> : extern template class basic_string&lt;char&gt;;
+<span class="lineNum"> 1109 </span> : extern template
+<span class="lineNum"> 1110 </span> : basic_istream&lt;char&gt;&amp;
+<span class="lineNum"> 1111 </span> : operator&gt;&gt;(basic_istream&lt;char&gt;&amp;, string&amp;);
+<span class="lineNum"> 1112 </span> : extern template
+<span class="lineNum"> 1113 </span> : basic_ostream&lt;char&gt;&amp;
+<span class="lineNum"> 1114 </span> : operator&lt;&lt;(basic_ostream&lt;char&gt;&amp;, const string&amp;);
+<span class="lineNum"> 1115 </span> : extern template
+<span class="lineNum"> 1116 </span> : basic_istream&lt;char&gt;&amp;
+<span class="lineNum"> 1117 </span> : getline(basic_istream&lt;char&gt;&amp;, string&amp;, char);
+<span class="lineNum"> 1118 </span> : extern template
+<span class="lineNum"> 1119 </span> : basic_istream&lt;char&gt;&amp;
+<span class="lineNum"> 1120 </span> : getline(basic_istream&lt;char&gt;&amp;, string&amp;);
+<span class="lineNum"> 1121 </span> :
+<span class="lineNum"> 1122 </span> : #ifdef _GLIBCXX_USE_WCHAR_T
+<span class="lineNum"> 1123 </span> : extern template class basic_string&lt;wchar_t&gt;;
+<span class="lineNum"> 1124 </span> : extern template
+<span class="lineNum"> 1125 </span> : basic_istream&lt;wchar_t&gt;&amp;
+<span class="lineNum"> 1126 </span> : operator&gt;&gt;(basic_istream&lt;wchar_t&gt;&amp;, wstring&amp;);
+<span class="lineNum"> 1127 </span> : extern template
+<span class="lineNum"> 1128 </span> : basic_ostream&lt;wchar_t&gt;&amp;
+<span class="lineNum"> 1129 </span> : operator&lt;&lt;(basic_ostream&lt;wchar_t&gt;&amp;, const wstring&amp;);
+<span class="lineNum"> 1130 </span> : extern template
+<span class="lineNum"> 1131 </span> : basic_istream&lt;wchar_t&gt;&amp;
+<span class="lineNum"> 1132 </span> : getline(basic_istream&lt;wchar_t&gt;&amp;, wstring&amp;, wchar_t);
+<span class="lineNum"> 1133 </span> : extern template
+<span class="lineNum"> 1134 </span> : basic_istream&lt;wchar_t&gt;&amp;
+<span class="lineNum"> 1135 </span> : getline(basic_istream&lt;wchar_t&gt;&amp;, wstring&amp;);
+<span class="lineNum"> 1136 </span> : #endif
+<span class="lineNum"> 1137 </span> : #endif
+<span class="lineNum"> 1138 </span> :
+<span class="lineNum"> 1139 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 1140 </span> :
+<span class="lineNum"> 1141 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/char_traits.h.gcov.html b/rep/usr/include/c++/4.3/bits/char_traits.h.gcov.html
new file mode 100644
index 0000000..5a682d1
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/char_traits.h.gcov.html
@@ -0,0 +1,438 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/char_traits.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - char_traits.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">13</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">46.2 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">6</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Character Traits for use by standard string and iostream -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+<span class="lineNum"> 4 </span> : // 2006, 2007
+<span class="lineNum"> 5 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 6 </span> : //
+<span class="lineNum"> 7 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 8 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 9 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 10 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 11 </span> : // any later version.
+<span class="lineNum"> 12 </span> :
+<span class="lineNum"> 13 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 14 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 15 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 16 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 17 </span> :
+<span class="lineNum"> 18 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 19 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 20 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 21 </span> : // USA.
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 24 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 25 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 26 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 27 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 28 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 29 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 30 </span> : // the GNU General Public License.
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : /** @file char_traits.h
+<span class="lineNum"> 33 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 34 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 35 </span> : */
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : //
+<span class="lineNum"> 38 </span> : // ISO C++ 14882: 21 Strings library
+<span class="lineNum"> 39 </span> : //
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : #ifndef _CHAR_TRAITS_H
+<span class="lineNum"> 42 </span> : #define _CHAR_TRAITS_H 1
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span> : #pragma GCC system_header
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> : #include &lt;bits/stl_algobase.h&gt; // std::copy, std::fill_n
+<span class="lineNum"> 47 </span> : #include &lt;bits/postypes.h&gt; // For streampos
+<span class="lineNum"> 48 </span> : #include &lt;cstdio&gt; // For EOF
+<span class="lineNum"> 49 </span> : #include &lt;cwchar&gt; // For WEOF, wmemmove, wmemset, etc.
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> : _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span> : /**
+<span class="lineNum"> 54 </span> : * @brief Mapping from character type to associated types.
+<span class="lineNum"> 55 </span> : *
+<span class="lineNum"> 56 </span> : * @note This is an implementation class for the generic version
+<span class="lineNum"> 57 </span> : * of char_traits. It defines int_type, off_type, pos_type, and
+<span class="lineNum"> 58 </span> : * state_type. By default these are unsigned long, streamoff,
+<span class="lineNum"> 59 </span> : * streampos, and mbstate_t. Users who need a different set of
+<span class="lineNum"> 60 </span> : * types, but who don't need to change the definitions of any function
+<span class="lineNum"> 61 </span> : * defined in char_traits, can specialize __gnu_cxx::_Char_types
+<span class="lineNum"> 62 </span> : * while leaving __gnu_cxx::char_traits alone. */
+<span class="lineNum"> 63 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 64 </span> : struct _Char_types
+<span class="lineNum"> 65 </span> : {
+<span class="lineNum"> 66 </span> : typedef unsigned long int_type;
+<span class="lineNum"> 67 </span> : typedef std::streampos pos_type;
+<span class="lineNum"> 68 </span> : typedef std::streamoff off_type;
+<span class="lineNum"> 69 </span> : typedef std::mbstate_t state_type;
+<span class="lineNum"> 70 </span> : };
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span> :
+<span class="lineNum"> 73 </span> : /**
+<span class="lineNum"> 74 </span> : * @brief Base class used to implement std::char_traits.
+<span class="lineNum"> 75 </span> : *
+<span class="lineNum"> 76 </span> : * @note For any given actual character type, this definition is
+<span class="lineNum"> 77 </span> : * probably wrong. (Most of the member functions are likely to be
+<span class="lineNum"> 78 </span> : * right, but the int_type and state_type typedefs, and the eof()
+<span class="lineNum"> 79 </span> : * member function, are likely to be wrong.) The reason this class
+<span class="lineNum"> 80 </span> : * exists is so users can specialize it. Classes in namespace std
+<span class="lineNum"> 81 </span> : * may not be specialized for fundamental types, but classes in
+<span class="lineNum"> 82 </span> : * namespace __gnu_cxx may be.
+<span class="lineNum"> 83 </span> : *
+<span class="lineNum"> 84 </span> : * See http://gcc.gnu.org/onlinedocs/libstdc++/21_strings/howto.html#5
+<span class="lineNum"> 85 </span> : * for advice on how to make use of this class for &quot;unusual&quot; character
+<span class="lineNum"> 86 </span> : * types. Also, check out include/ext/pod_char_traits.h.
+<span class="lineNum"> 87 </span> : */
+<span class="lineNum"> 88 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 89 </span> : struct char_traits
+<span class="lineNum"> 90 </span> : {
+<span class="lineNum"> 91 </span> : typedef _CharT char_type;
+<span class="lineNum"> 92 </span> : typedef typename _Char_types&lt;_CharT&gt;::int_type int_type;
+<span class="lineNum"> 93 </span> : typedef typename _Char_types&lt;_CharT&gt;::pos_type pos_type;
+<span class="lineNum"> 94 </span> : typedef typename _Char_types&lt;_CharT&gt;::off_type off_type;
+<span class="lineNum"> 95 </span> : typedef typename _Char_types&lt;_CharT&gt;::state_type state_type;
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span> : static void
+<span class="lineNum"> 98 </span> : assign(char_type&amp; __c1, const char_type&amp; __c2)
+<span class="lineNum"> 99 </span> : { __c1 = __c2; }
+<span class="lineNum"> 100 </span> :
+<span class="lineNum"> 101 </span> : static bool
+<span class="lineNum"> 102 </span> : eq(const char_type&amp; __c1, const char_type&amp; __c2)
+<span class="lineNum"> 103 </span> : { return __c1 == __c2; }
+<span class="lineNum"> 104 </span> :
+<span class="lineNum"> 105 </span> : static bool
+<span class="lineNum"> 106 </span> : lt(const char_type&amp; __c1, const char_type&amp; __c2)
+<span class="lineNum"> 107 </span> : { return __c1 &lt; __c2; }
+<span class="lineNum"> 108 </span> :
+<span class="lineNum"> 109 </span> : static int
+<span class="lineNum"> 110 </span> : compare(const char_type* __s1, const char_type* __s2, std::size_t __n);
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span> : static std::size_t
+<span class="lineNum"> 113 </span> : length(const char_type* __s);
+<span class="lineNum"> 114 </span> :
+<span class="lineNum"> 115 </span> : static const char_type*
+<span class="lineNum"> 116 </span> : find(const char_type* __s, std::size_t __n, const char_type&amp; __a);
+<span class="lineNum"> 117 </span> :
+<span class="lineNum"> 118 </span> : static char_type*
+<span class="lineNum"> 119 </span> : move(char_type* __s1, const char_type* __s2, std::size_t __n);
+<span class="lineNum"> 120 </span> :
+<span class="lineNum"> 121 </span> : static char_type*
+<span class="lineNum"> 122 </span> : copy(char_type* __s1, const char_type* __s2, std::size_t __n);
+<span class="lineNum"> 123 </span> :
+<span class="lineNum"> 124 </span> : static char_type*
+<span class="lineNum"> 125 </span> : assign(char_type* __s, std::size_t __n, char_type __a);
+<span class="lineNum"> 126 </span> :
+<span class="lineNum"> 127 </span> : static char_type
+<span class="lineNum"> 128 </span> : to_char_type(const int_type&amp; __c)
+<span class="lineNum"> 129 </span> : { return static_cast&lt;char_type&gt;(__c); }
+<span class="lineNum"> 130 </span> :
+<span class="lineNum"> 131 </span> : static int_type
+<span class="lineNum"> 132 </span> : to_int_type(const char_type&amp; __c)
+<span class="lineNum"> 133 </span> : { return static_cast&lt;int_type&gt;(__c); }
+<span class="lineNum"> 134 </span> :
+<span class="lineNum"> 135 </span> : static bool
+<span class="lineNum"> 136 </span> : eq_int_type(const int_type&amp; __c1, const int_type&amp; __c2)
+<span class="lineNum"> 137 </span> : { return __c1 == __c2; }
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> : static int_type
+<span class="lineNum"> 140 </span> : eof()
+<span class="lineNum"> 141 </span> : { return static_cast&lt;int_type&gt;(EOF); }
+<span class="lineNum"> 142 </span> :
+<span class="lineNum"> 143 </span> : static int_type
+<span class="lineNum"> 144 </span> : not_eof(const int_type&amp; __c)
+<span class="lineNum"> 145 </span> : { return !eq_int_type(__c, eof()) ? __c : to_int_type(char_type()); }
+<span class="lineNum"> 146 </span> : };
+<span class="lineNum"> 147 </span> :
+<span class="lineNum"> 148 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 149 </span> : int
+<span class="lineNum"> 150 </span> : char_traits&lt;_CharT&gt;::
+<span class="lineNum"> 151 </span> : compare(const char_type* __s1, const char_type* __s2, std::size_t __n)
+<span class="lineNum"> 152 </span> : {
+<span class="lineNum"> 153 </span> : for (std::size_t __i = 0; __i &lt; __n; ++__i)
+<span class="lineNum"> 154 </span> : if (lt(__s1[__i], __s2[__i]))
+<span class="lineNum"> 155 </span> : return -1;
+<span class="lineNum"> 156 </span> : else if (lt(__s2[__i], __s1[__i]))
+<span class="lineNum"> 157 </span> : return 1;
+<span class="lineNum"> 158 </span> : return 0;
+<span class="lineNum"> 159 </span> : }
+<span class="lineNum"> 160 </span> :
+<span class="lineNum"> 161 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 162 </span> : std::size_t
+<span class="lineNum"> 163 </span> : char_traits&lt;_CharT&gt;::
+<span class="lineNum"> 164 </span> : length(const char_type* __p)
+<span class="lineNum"> 165 </span> : {
+<span class="lineNum"> 166 </span> : std::size_t __i = 0;
+<span class="lineNum"> 167 </span> : while (!eq(__p[__i], char_type()))
+<span class="lineNum"> 168 </span> : ++__i;
+<span class="lineNum"> 169 </span> : return __i;
+<span class="lineNum"> 170 </span> : }
+<span class="lineNum"> 171 </span> :
+<span class="lineNum"> 172 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 173 </span> : const typename char_traits&lt;_CharT&gt;::char_type*
+<span class="lineNum"> 174 </span> : char_traits&lt;_CharT&gt;::
+<span class="lineNum"> 175 </span> : find(const char_type* __s, std::size_t __n, const char_type&amp; __a)
+<span class="lineNum"> 176 </span> : {
+<span class="lineNum"> 177 </span> : for (std::size_t __i = 0; __i &lt; __n; ++__i)
+<span class="lineNum"> 178 </span> : if (eq(__s[__i], __a))
+<span class="lineNum"> 179 </span> : return __s + __i;
+<span class="lineNum"> 180 </span> : return 0;
+<span class="lineNum"> 181 </span> : }
+<span class="lineNum"> 182 </span> :
+<span class="lineNum"> 183 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 184 </span> : typename char_traits&lt;_CharT&gt;::char_type*
+<span class="lineNum"> 185 </span> : char_traits&lt;_CharT&gt;::
+<span class="lineNum"> 186 </span> : move(char_type* __s1, const char_type* __s2, std::size_t __n)
+<span class="lineNum"> 187 </span> : {
+<span class="lineNum"> 188 </span> : return static_cast&lt;_CharT*&gt;(__builtin_memmove(__s1, __s2,
+<span class="lineNum"> 189 </span> : __n * sizeof(char_type)));
+<span class="lineNum"> 190 </span> : }
+<span class="lineNum"> 191 </span> :
+<span class="lineNum"> 192 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 193 </span> : typename char_traits&lt;_CharT&gt;::char_type*
+<span class="lineNum"> 194 </span> : char_traits&lt;_CharT&gt;::
+<span class="lineNum"> 195 </span> : copy(char_type* __s1, const char_type* __s2, std::size_t __n)
+<span class="lineNum"> 196 </span> : {
+<span class="lineNum"> 197 </span> : // NB: Inline std::copy so no recursive dependencies.
+<span class="lineNum"> 198 </span> : std::copy(__s2, __s2 + __n, __s1);
+<span class="lineNum"> 199 </span> : return __s1;
+<span class="lineNum"> 200 </span> : }
+<span class="lineNum"> 201 </span> :
+<span class="lineNum"> 202 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 203 </span> : typename char_traits&lt;_CharT&gt;::char_type*
+<span class="lineNum"> 204 </span> : char_traits&lt;_CharT&gt;::
+<span class="lineNum"> 205 </span> : assign(char_type* __s, std::size_t __n, char_type __a)
+<span class="lineNum"> 206 </span> : {
+<span class="lineNum"> 207 </span> : // NB: Inline std::fill_n so no recursive dependencies.
+<span class="lineNum"> 208 </span> : std::fill_n(__s, __n, __a);
+<span class="lineNum"> 209 </span> : return __s;
+<span class="lineNum"> 210 </span> : }
+<span class="lineNum"> 211 </span> :
+<span class="lineNum"> 212 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 213 </span> :
+<span class="lineNum"> 214 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 215 </span> :
+<span class="lineNum"> 216 </span> : // 21.1
+<span class="lineNum"> 217 </span> : /**
+<span class="lineNum"> 218 </span> : * @brief Basis for explicit traits specializations.
+<span class="lineNum"> 219 </span> : *
+<span class="lineNum"> 220 </span> : * @note For any given actual character type, this definition is
+<span class="lineNum"> 221 </span> : * probably wrong. Since this is just a thin wrapper around
+<span class="lineNum"> 222 </span> : * __gnu_cxx::char_traits, it is possible to achieve a more
+<span class="lineNum"> 223 </span> : * appropriate definition by specializing __gnu_cxx::char_traits.
+<span class="lineNum"> 224 </span> : *
+<span class="lineNum"> 225 </span> : * See http://gcc.gnu.org/onlinedocs/libstdc++/21_strings/howto.html#5
+<span class="lineNum"> 226 </span> : * for advice on how to make use of this class for &quot;unusual&quot; character
+<span class="lineNum"> 227 </span> : * types. Also, check out include/ext/pod_char_traits.h.
+<span class="lineNum"> 228 </span> : */
+<span class="lineNum"> 229 </span> : template&lt;class _CharT&gt;
+<span class="lineNum"> 230 </span> : struct char_traits : public __gnu_cxx::char_traits&lt;_CharT&gt;
+<span class="lineNum"> 231 </span> : { };
+<span class="lineNum"> 232 </span> :
+<span class="lineNum"> 233 </span> :
+<span class="lineNum"> 234 </span> : /// 21.1.3.1 char_traits specializations
+<span class="lineNum"> 235 </span> : template&lt;&gt;
+<span class="lineNum"> 236 </span> : struct char_traits&lt;char&gt;
+<span class="lineNum"> 237 </span> : {
+<span class="lineNum"> 238 </span> : typedef char char_type;
+<span class="lineNum"> 239 </span> : typedef int int_type;
+<span class="lineNum"> 240 </span> : typedef streampos pos_type;
+<span class="lineNum"> 241 </span> : typedef streamoff off_type;
+<span class="lineNum"> 242 </span> : typedef mbstate_t state_type;
+<span class="lineNum"> 243 </span> :
+<span class="lineNum"> 244 </span> : static void
+<span class="lineNum"> 245 </span><span class="lineCov"> 10976 : assign(char_type&amp; __c1, const char_type&amp; __c2)</span>
+<span class="lineNum"> 246 </span><span class="lineCov"> 10976 : { __c1 = __c2; }</span>
+<span class="lineNum"> 247 </span> :
+<span class="lineNum"> 248 </span> : static bool
+<span class="lineNum"> 249 </span> : eq(const char_type&amp; __c1, const char_type&amp; __c2)
+<span class="lineNum"> 250 </span> : { return __c1 == __c2; }
+<span class="lineNum"> 251 </span> :
+<span class="lineNum"> 252 </span> : static bool
+<span class="lineNum"> 253 </span> : lt(const char_type&amp; __c1, const char_type&amp; __c2)
+<span class="lineNum"> 254 </span> : { return __c1 &lt; __c2; }
+<span class="lineNum"> 255 </span> :
+<span class="lineNum"> 256 </span> : static int
+<span class="lineNum"> 257 </span><span class="lineCov"> 115296 : compare(const char_type* __s1, const char_type* __s2, size_t __n)</span>
+<span class="lineNum"> 258 </span><span class="lineCov"> 115296 : { return __builtin_memcmp(__s1, __s2, __n); }</span>
+<span class="lineNum"> 259 </span> :
+<span class="lineNum"> 260 </span> : static size_t
+<span class="lineNum"> 261 </span><span class="lineCov"> 2633 : length(const char_type* __s)</span>
+<span class="lineNum"> 262 </span><span class="lineCov"> 2633 : { return __builtin_strlen(__s); }</span>
+<span class="lineNum"> 263 </span> :
+<span class="lineNum"> 264 </span> : static const char_type*
+<span class="lineNum"> 265 </span> : find(const char_type* __s, size_t __n, const char_type&amp; __a)
+<span class="lineNum"> 266 </span> : { return static_cast&lt;const char_type*&gt;(__builtin_memchr(__s, __a, __n)); }
+<span class="lineNum"> 267 </span> :
+<span class="lineNum"> 268 </span> : static char_type*
+<span class="lineNum"> 269 </span> : move(char_type* __s1, const char_type* __s2, size_t __n)
+<span class="lineNum"> 270 </span> : { return static_cast&lt;char_type*&gt;(__builtin_memmove(__s1, __s2, __n)); }
+<span class="lineNum"> 271 </span> :
+<span class="lineNum"> 272 </span> : static char_type*
+<span class="lineNum"> 273 </span><span class="lineNoCov"> 0 : copy(char_type* __s1, const char_type* __s2, size_t __n)</span>
+<span class="lineNum"> 274 </span><span class="lineNoCov"> 0 : { return static_cast&lt;char_type*&gt;(__builtin_memcpy(__s1, __s2, __n)); }</span>
+<span class="lineNum"> 275 </span> :
+<span class="lineNum"> 276 </span> : static char_type*
+<span class="lineNum"> 277 </span> : assign(char_type* __s, size_t __n, char_type __a)
+<span class="lineNum"> 278 </span> : { return static_cast&lt;char_type*&gt;(__builtin_memset(__s, __a, __n)); }
+<span class="lineNum"> 279 </span> :
+<span class="lineNum"> 280 </span> : static char_type
+<span class="lineNum"> 281 </span> : to_char_type(const int_type&amp; __c)
+<span class="lineNum"> 282 </span> : { return static_cast&lt;char_type&gt;(__c); }
+<span class="lineNum"> 283 </span> :
+<span class="lineNum"> 284 </span> : // To keep both the byte 0xff and the eof symbol 0xffffffff
+<span class="lineNum"> 285 </span> : // from ending up as 0xffffffff.
+<span class="lineNum"> 286 </span> : static int_type
+<span class="lineNum"> 287 </span><span class="lineNoCov"> 0 : to_int_type(const char_type&amp; __c)</span>
+<span class="lineNum"> 288 </span><span class="lineNoCov"> 0 : { return static_cast&lt;int_type&gt;(static_cast&lt;unsigned char&gt;(__c)); }</span>
+<span class="lineNum"> 289 </span> :
+<span class="lineNum"> 290 </span> : static bool
+<span class="lineNum"> 291 </span><span class="lineNoCov"> 0 : eq_int_type(const int_type&amp; __c1, const int_type&amp; __c2)</span>
+<span class="lineNum"> 292 </span><span class="lineNoCov"> 0 : { return __c1 == __c2; }</span>
+<span class="lineNum"> 293 </span> :
+<span class="lineNum"> 294 </span> : static int_type
+<span class="lineNum"> 295 </span><span class="lineNoCov"> 0 : eof() { return static_cast&lt;int_type&gt;(EOF); }</span>
+<span class="lineNum"> 296 </span> :
+<span class="lineNum"> 297 </span> : static int_type
+<span class="lineNum"> 298 </span> : not_eof(const int_type&amp; __c)
+<span class="lineNum"> 299 </span> : { return (__c == eof()) ? 0 : __c; }
+<span class="lineNum"> 300 </span> : };
+<span class="lineNum"> 301 </span> :
+<span class="lineNum"> 302 </span> :
+<span class="lineNum"> 303 </span> : #ifdef _GLIBCXX_USE_WCHAR_T
+<span class="lineNum"> 304 </span> : /// 21.1.3.2 char_traits specializations
+<span class="lineNum"> 305 </span> : template&lt;&gt;
+<span class="lineNum"> 306 </span> : struct char_traits&lt;wchar_t&gt;
+<span class="lineNum"> 307 </span> : {
+<span class="lineNum"> 308 </span> : typedef wchar_t char_type;
+<span class="lineNum"> 309 </span> : typedef wint_t int_type;
+<span class="lineNum"> 310 </span> : typedef streamoff off_type;
+<span class="lineNum"> 311 </span> : typedef wstreampos pos_type;
+<span class="lineNum"> 312 </span> : typedef mbstate_t state_type;
+<span class="lineNum"> 313 </span> :
+<span class="lineNum"> 314 </span> : static void
+<span class="lineNum"> 315 </span> : assign(char_type&amp; __c1, const char_type&amp; __c2)
+<span class="lineNum"> 316 </span> : { __c1 = __c2; }
+<span class="lineNum"> 317 </span> :
+<span class="lineNum"> 318 </span> : static bool
+<span class="lineNum"> 319 </span> : eq(const char_type&amp; __c1, const char_type&amp; __c2)
+<span class="lineNum"> 320 </span> : { return __c1 == __c2; }
+<span class="lineNum"> 321 </span> :
+<span class="lineNum"> 322 </span> : static bool
+<span class="lineNum"> 323 </span> : lt(const char_type&amp; __c1, const char_type&amp; __c2)
+<span class="lineNum"> 324 </span> : { return __c1 &lt; __c2; }
+<span class="lineNum"> 325 </span> :
+<span class="lineNum"> 326 </span> : static int
+<span class="lineNum"> 327 </span> : compare(const char_type* __s1, const char_type* __s2, size_t __n)
+<span class="lineNum"> 328 </span> : { return wmemcmp(__s1, __s2, __n); }
+<span class="lineNum"> 329 </span> :
+<span class="lineNum"> 330 </span> : static size_t
+<span class="lineNum"> 331 </span> : length(const char_type* __s)
+<span class="lineNum"> 332 </span> : { return wcslen(__s); }
+<span class="lineNum"> 333 </span> :
+<span class="lineNum"> 334 </span> : static const char_type*
+<span class="lineNum"> 335 </span> : find(const char_type* __s, size_t __n, const char_type&amp; __a)
+<span class="lineNum"> 336 </span> : { return wmemchr(__s, __a, __n); }
+<span class="lineNum"> 337 </span> :
+<span class="lineNum"> 338 </span> : static char_type*
+<span class="lineNum"> 339 </span> : move(char_type* __s1, const char_type* __s2, size_t __n)
+<span class="lineNum"> 340 </span> : { return wmemmove(__s1, __s2, __n); }
+<span class="lineNum"> 341 </span> :
+<span class="lineNum"> 342 </span> : static char_type*
+<span class="lineNum"> 343 </span> : copy(char_type* __s1, const char_type* __s2, size_t __n)
+<span class="lineNum"> 344 </span> : { return wmemcpy(__s1, __s2, __n); }
+<span class="lineNum"> 345 </span> :
+<span class="lineNum"> 346 </span> : static char_type*
+<span class="lineNum"> 347 </span> : assign(char_type* __s, size_t __n, char_type __a)
+<span class="lineNum"> 348 </span> : { return wmemset(__s, __a, __n); }
+<span class="lineNum"> 349 </span> :
+<span class="lineNum"> 350 </span> : static char_type
+<span class="lineNum"> 351 </span> : to_char_type(const int_type&amp; __c) { return char_type(__c); }
+<span class="lineNum"> 352 </span> :
+<span class="lineNum"> 353 </span> : static int_type
+<span class="lineNum"> 354 </span> : to_int_type(const char_type&amp; __c) { return int_type(__c); }
+<span class="lineNum"> 355 </span> :
+<span class="lineNum"> 356 </span> : static bool
+<span class="lineNum"> 357 </span> : eq_int_type(const int_type&amp; __c1, const int_type&amp; __c2)
+<span class="lineNum"> 358 </span> : { return __c1 == __c2; }
+<span class="lineNum"> 359 </span> :
+<span class="lineNum"> 360 </span> : static int_type
+<span class="lineNum"> 361 </span> : eof() { return static_cast&lt;int_type&gt;(WEOF); }
+<span class="lineNum"> 362 </span> :
+<span class="lineNum"> 363 </span> : static int_type
+<span class="lineNum"> 364 </span> : not_eof(const int_type&amp; __c)
+<span class="lineNum"> 365 </span> : { return eq_int_type(__c, eof()) ? 0 : __c; }
+<span class="lineNum"> 366 </span> : };
+<span class="lineNum"> 367 </span> : #endif //_GLIBCXX_USE_WCHAR_T
+<span class="lineNum"> 368 </span> :
+<span class="lineNum"> 369 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 370 </span> :
+<span class="lineNum"> 371 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/deque.tcc.gcov.html b/rep/usr/include/c++/4.3/bits/deque.tcc.gcov.html
new file mode 100644
index 0000000..08f01e5
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/deque.tcc.gcov.html
@@ -0,0 +1,900 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/deque.tcc</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - deque.tcc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">147</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">19.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">28</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Deque implementation (out of line) -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 18 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 19 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 20 </span> : // USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /*
+<span class="lineNum"> 32 </span> : *
+<span class="lineNum"> 33 </span> : * Copyright (c) 1994
+<span class="lineNum"> 34 </span> : * Hewlett-Packard Company
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 37 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 38 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 39 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 40 </span> : * in supporting documentation. Hewlett-Packard Company makes no
+<span class="lineNum"> 41 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 42 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 43 </span> : *
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * Copyright (c) 1997
+<span class="lineNum"> 46 </span> : * Silicon Graphics Computer Systems, Inc.
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 49 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 50 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 51 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 52 </span> : * in supporting documentation. Silicon Graphics makes no
+<span class="lineNum"> 53 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 54 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 55 </span> : */
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /** @file deque.tcc
+<span class="lineNum"> 58 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 59 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 60 </span> : */
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : #ifndef _DEQUE_TCC
+<span class="lineNum"> 63 </span> : #define _DEQUE_TCC 1
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : template &lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 68 </span> : deque&lt;_Tp, _Alloc&gt;&amp;
+<span class="lineNum"> 69 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 70 </span><span class="lineCov"> 4 : operator=(const deque&amp; __x)</span>
+<span class="lineNum"> 71 </span> : {
+<span class="lineNum"> 72 </span><span class="lineCov"> 4 : const size_type __len = size();</span>
+<span class="lineNum"> 73 </span><span class="lineCov"> 4 : if (&amp;__x != this)</span>
+<span class="lineNum"> 74 </span> : {
+<span class="lineNum"> 75 </span><span class="lineCov"> 4 : if (__len &gt;= __x.size())</span>
+<span class="lineNum"> 76 </span><span class="lineCov"> 4 : _M_erase_at_end(std::copy(__x.begin(), __x.end(),</span>
+<span class="lineNum"> 77 </span> : this-&gt;_M_impl._M_start));
+<span class="lineNum"> 78 </span> : else
+<span class="lineNum"> 79 </span> : {
+<span class="lineNum"> 80 </span><span class="lineNoCov"> 0 : const_iterator __mid = __x.begin() + difference_type(__len);</span>
+<span class="lineNum"> 81 </span><span class="lineNoCov"> 0 : std::copy(__x.begin(), __mid, this-&gt;_M_impl._M_start);</span>
+<span class="lineNum"> 82 </span><span class="lineNoCov"> 0 : insert(this-&gt;_M_impl._M_finish, __mid, __x.end());</span>
+<span class="lineNum"> 83 </span> : }
+<span class="lineNum"> 84 </span> : }
+<span class="lineNum"> 85 </span><span class="lineCov"> 4 : return *this;</span>
+<span class="lineNum"> 86 </span> : }
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span> : template &lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 89 </span> : typename deque&lt;_Tp, _Alloc&gt;::iterator
+<span class="lineNum"> 90 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 91 </span> : insert(iterator __position, const value_type&amp; __x)
+<span class="lineNum"> 92 </span> : {
+<span class="lineNum"> 93 </span> : if (__position._M_cur == this-&gt;_M_impl._M_start._M_cur)
+<span class="lineNum"> 94 </span> : {
+<span class="lineNum"> 95 </span> : push_front(__x);
+<span class="lineNum"> 96 </span> : return this-&gt;_M_impl._M_start;
+<span class="lineNum"> 97 </span> : }
+<span class="lineNum"> 98 </span> : else if (__position._M_cur == this-&gt;_M_impl._M_finish._M_cur)
+<span class="lineNum"> 99 </span> : {
+<span class="lineNum"> 100 </span> : push_back(__x);
+<span class="lineNum"> 101 </span> : iterator __tmp = this-&gt;_M_impl._M_finish;
+<span class="lineNum"> 102 </span> : --__tmp;
+<span class="lineNum"> 103 </span> : return __tmp;
+<span class="lineNum"> 104 </span> : }
+<span class="lineNum"> 105 </span> : else
+<span class="lineNum"> 106 </span> : return _M_insert_aux(__position, __x);
+<span class="lineNum"> 107 </span> : }
+<span class="lineNum"> 108 </span> :
+<span class="lineNum"> 109 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 110 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 111 </span> : template&lt;typename... _Args&gt;
+<span class="lineNum"> 112 </span> : typename deque&lt;_Tp, _Alloc&gt;::iterator
+<span class="lineNum"> 113 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 114 </span> : emplace(iterator __position, _Args&amp;&amp;... __args)
+<span class="lineNum"> 115 </span> : {
+<span class="lineNum"> 116 </span> : if (__position._M_cur == this-&gt;_M_impl._M_start._M_cur)
+<span class="lineNum"> 117 </span> : {
+<span class="lineNum"> 118 </span> : push_front(std::forward&lt;_Args&gt;(__args)...);
+<span class="lineNum"> 119 </span> : return this-&gt;_M_impl._M_start;
+<span class="lineNum"> 120 </span> : }
+<span class="lineNum"> 121 </span> : else if (__position._M_cur == this-&gt;_M_impl._M_finish._M_cur)
+<span class="lineNum"> 122 </span> : {
+<span class="lineNum"> 123 </span> : push_back(std::forward&lt;_Args&gt;(__args)...);
+<span class="lineNum"> 124 </span> : iterator __tmp = this-&gt;_M_impl._M_finish;
+<span class="lineNum"> 125 </span> : --__tmp;
+<span class="lineNum"> 126 </span> : return __tmp;
+<span class="lineNum"> 127 </span> : }
+<span class="lineNum"> 128 </span> : else
+<span class="lineNum"> 129 </span> : return _M_insert_aux(__position, std::forward&lt;_Args&gt;(__args)...);
+<span class="lineNum"> 130 </span> : }
+<span class="lineNum"> 131 </span> : #endif
+<span class="lineNum"> 132 </span> :
+<span class="lineNum"> 133 </span> : template &lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 134 </span> : typename deque&lt;_Tp, _Alloc&gt;::iterator
+<span class="lineNum"> 135 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 136 </span> : erase(iterator __position)
+<span class="lineNum"> 137 </span> : {
+<span class="lineNum"> 138 </span> : iterator __next = __position;
+<span class="lineNum"> 139 </span> : ++__next;
+<span class="lineNum"> 140 </span> : const difference_type __index = __position - begin();
+<span class="lineNum"> 141 </span> : if (static_cast&lt;size_type&gt;(__index) &lt; (size() &gt;&gt; 1))
+<span class="lineNum"> 142 </span> : {
+<span class="lineNum"> 143 </span> : if (__position != begin())
+<span class="lineNum"> 144 </span> : _GLIBCXX_MOVE_BACKWARD3(begin(), __position, __next);
+<span class="lineNum"> 145 </span> : pop_front();
+<span class="lineNum"> 146 </span> : }
+<span class="lineNum"> 147 </span> : else
+<span class="lineNum"> 148 </span> : {
+<span class="lineNum"> 149 </span> : if (__next != end())
+<span class="lineNum"> 150 </span> : _GLIBCXX_MOVE3(__next, end(), __position);
+<span class="lineNum"> 151 </span> : pop_back();
+<span class="lineNum"> 152 </span> : }
+<span class="lineNum"> 153 </span> : return begin() + __index;
+<span class="lineNum"> 154 </span> : }
+<span class="lineNum"> 155 </span> :
+<span class="lineNum"> 156 </span> : template &lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 157 </span> : typename deque&lt;_Tp, _Alloc&gt;::iterator
+<span class="lineNum"> 158 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 159 </span><span class="lineCov"> 1012 : erase(iterator __first, iterator __last)</span>
+<span class="lineNum"> 160 </span> : {
+<span class="lineNum"> 161 </span><span class="lineCov"> 1012 : if (__first == begin() &amp;&amp; __last == end())</span>
+<span class="lineNum"> 162 </span> : {
+<span class="lineNum"> 163 </span><span class="lineCov"> 922 : clear();</span>
+<span class="lineNum"> 164 </span><span class="lineCov"> 922 : return end();</span>
+<span class="lineNum"> 165 </span> : }
+<span class="lineNum"> 166 </span> : else
+<span class="lineNum"> 167 </span> : {
+<span class="lineNum"> 168 </span><span class="lineCov"> 90 : const difference_type __n = __last - __first;</span>
+<span class="lineNum"> 169 </span><span class="lineCov"> 90 : const difference_type __elems_before = __first - begin();</span>
+<span class="lineNum"> 170 </span><span class="lineCov"> 90 : if (static_cast&lt;size_type&gt;(__elems_before) &lt;= (size() - __n) / 2)</span>
+<span class="lineNum"> 171 </span> : {
+<span class="lineNum"> 172 </span><span class="lineCov"> 90 : if (__first != begin())</span>
+<span class="lineNum"> 173 </span><span class="lineNoCov"> 0 : _GLIBCXX_MOVE_BACKWARD3(begin(), __first, __last);</span>
+<span class="lineNum"> 174 </span><span class="lineCov"> 90 : _M_erase_at_begin(begin() + __n);</span>
+<span class="lineNum"> 175 </span> : }
+<span class="lineNum"> 176 </span> : else
+<span class="lineNum"> 177 </span> : {
+<span class="lineNum"> 178 </span><span class="lineNoCov"> 0 : if (__last != end())</span>
+<span class="lineNum"> 179 </span><span class="lineNoCov"> 0 : _GLIBCXX_MOVE3(__last, end(), __first);</span>
+<span class="lineNum"> 180 </span><span class="lineNoCov"> 0 : _M_erase_at_end(end() - __n);</span>
+<span class="lineNum"> 181 </span> : }
+<span class="lineNum"> 182 </span><span class="lineCov"> 90 : return begin() + __elems_before;</span>
+<span class="lineNum"> 183 </span> : }
+<span class="lineNum"> 184 </span> : }
+<span class="lineNum"> 185 </span> :
+<span class="lineNum"> 186 </span> : template &lt;typename _Tp, class _Alloc&gt;
+<span class="lineNum"> 187 </span> : template &lt;typename _InputIterator&gt;
+<span class="lineNum"> 188 </span> : void
+<span class="lineNum"> 189 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 190 </span> : _M_assign_aux(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 191 </span> : std::input_iterator_tag)
+<span class="lineNum"> 192 </span> : {
+<span class="lineNum"> 193 </span> : iterator __cur = begin();
+<span class="lineNum"> 194 </span> : for (; __first != __last &amp;&amp; __cur != end(); ++__cur, ++__first)
+<span class="lineNum"> 195 </span> : *__cur = *__first;
+<span class="lineNum"> 196 </span> : if (__first == __last)
+<span class="lineNum"> 197 </span> : _M_erase_at_end(__cur);
+<span class="lineNum"> 198 </span> : else
+<span class="lineNum"> 199 </span> : insert(end(), __first, __last);
+<span class="lineNum"> 200 </span> : }
+<span class="lineNum"> 201 </span> :
+<span class="lineNum"> 202 </span> : template &lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 203 </span> : void
+<span class="lineNum"> 204 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 205 </span> : _M_fill_insert(iterator __pos, size_type __n, const value_type&amp; __x)
+<span class="lineNum"> 206 </span> : {
+<span class="lineNum"> 207 </span> : if (__pos._M_cur == this-&gt;_M_impl._M_start._M_cur)
+<span class="lineNum"> 208 </span> : {
+<span class="lineNum"> 209 </span> : iterator __new_start = _M_reserve_elements_at_front(__n);
+<span class="lineNum"> 210 </span> : try
+<span class="lineNum"> 211 </span> : {
+<span class="lineNum"> 212 </span> : std::__uninitialized_fill_a(__new_start, this-&gt;_M_impl._M_start,
+<span class="lineNum"> 213 </span> : __x, _M_get_Tp_allocator());
+<span class="lineNum"> 214 </span> : this-&gt;_M_impl._M_start = __new_start;
+<span class="lineNum"> 215 </span> : }
+<span class="lineNum"> 216 </span> : catch(...)
+<span class="lineNum"> 217 </span> : {
+<span class="lineNum"> 218 </span> : _M_destroy_nodes(__new_start._M_node,
+<span class="lineNum"> 219 </span> : this-&gt;_M_impl._M_start._M_node);
+<span class="lineNum"> 220 </span> : __throw_exception_again;
+<span class="lineNum"> 221 </span> : }
+<span class="lineNum"> 222 </span> : }
+<span class="lineNum"> 223 </span> : else if (__pos._M_cur == this-&gt;_M_impl._M_finish._M_cur)
+<span class="lineNum"> 224 </span> : {
+<span class="lineNum"> 225 </span> : iterator __new_finish = _M_reserve_elements_at_back(__n);
+<span class="lineNum"> 226 </span> : try
+<span class="lineNum"> 227 </span> : {
+<span class="lineNum"> 228 </span> : std::__uninitialized_fill_a(this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 229 </span> : __new_finish, __x,
+<span class="lineNum"> 230 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 231 </span> : this-&gt;_M_impl._M_finish = __new_finish;
+<span class="lineNum"> 232 </span> : }
+<span class="lineNum"> 233 </span> : catch(...)
+<span class="lineNum"> 234 </span> : {
+<span class="lineNum"> 235 </span> : _M_destroy_nodes(this-&gt;_M_impl._M_finish._M_node + 1,
+<span class="lineNum"> 236 </span> : __new_finish._M_node + 1);
+<span class="lineNum"> 237 </span> : __throw_exception_again;
+<span class="lineNum"> 238 </span> : }
+<span class="lineNum"> 239 </span> : }
+<span class="lineNum"> 240 </span> : else
+<span class="lineNum"> 241 </span> : _M_insert_aux(__pos, __n, __x);
+<span class="lineNum"> 242 </span> : }
+<span class="lineNum"> 243 </span> :
+<span class="lineNum"> 244 </span> : template &lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 245 </span> : void
+<span class="lineNum"> 246 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 247 </span> : _M_fill_initialize(const value_type&amp; __value)
+<span class="lineNum"> 248 </span> : {
+<span class="lineNum"> 249 </span> : _Map_pointer __cur;
+<span class="lineNum"> 250 </span> : try
+<span class="lineNum"> 251 </span> : {
+<span class="lineNum"> 252 </span> : for (__cur = this-&gt;_M_impl._M_start._M_node;
+<span class="lineNum"> 253 </span> : __cur &lt; this-&gt;_M_impl._M_finish._M_node;
+<span class="lineNum"> 254 </span> : ++__cur)
+<span class="lineNum"> 255 </span> : std::__uninitialized_fill_a(*__cur, *__cur + _S_buffer_size(),
+<span class="lineNum"> 256 </span> : __value, _M_get_Tp_allocator());
+<span class="lineNum"> 257 </span> : std::__uninitialized_fill_a(this-&gt;_M_impl._M_finish._M_first,
+<span class="lineNum"> 258 </span> : this-&gt;_M_impl._M_finish._M_cur,
+<span class="lineNum"> 259 </span> : __value, _M_get_Tp_allocator());
+<span class="lineNum"> 260 </span> : }
+<span class="lineNum"> 261 </span> : catch(...)
+<span class="lineNum"> 262 </span> : {
+<span class="lineNum"> 263 </span> : std::_Destroy(this-&gt;_M_impl._M_start, iterator(*__cur, __cur),
+<span class="lineNum"> 264 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 265 </span> : __throw_exception_again;
+<span class="lineNum"> 266 </span> : }
+<span class="lineNum"> 267 </span> : }
+<span class="lineNum"> 268 </span> :
+<span class="lineNum"> 269 </span> : template &lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 270 </span> : template &lt;typename _InputIterator&gt;
+<span class="lineNum"> 271 </span> : void
+<span class="lineNum"> 272 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 273 </span> : _M_range_initialize(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 274 </span> : std::input_iterator_tag)
+<span class="lineNum"> 275 </span> : {
+<span class="lineNum"> 276 </span> : this-&gt;_M_initialize_map(0);
+<span class="lineNum"> 277 </span> : try
+<span class="lineNum"> 278 </span> : {
+<span class="lineNum"> 279 </span> : for (; __first != __last; ++__first)
+<span class="lineNum"> 280 </span> : push_back(*__first);
+<span class="lineNum"> 281 </span> : }
+<span class="lineNum"> 282 </span> : catch(...)
+<span class="lineNum"> 283 </span> : {
+<span class="lineNum"> 284 </span> : clear();
+<span class="lineNum"> 285 </span> : __throw_exception_again;
+<span class="lineNum"> 286 </span> : }
+<span class="lineNum"> 287 </span> : }
+<span class="lineNum"> 288 </span> :
+<span class="lineNum"> 289 </span> : template &lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 290 </span> : template &lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 291 </span> : void
+<span class="lineNum"> 292 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 293 </span> : _M_range_initialize(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 294 </span> : std::forward_iterator_tag)
+<span class="lineNum"> 295 </span> : {
+<span class="lineNum"> 296 </span> : const size_type __n = std::distance(__first, __last);
+<span class="lineNum"> 297 </span> : this-&gt;_M_initialize_map(__n);
+<span class="lineNum"> 298 </span> :
+<span class="lineNum"> 299 </span> : _Map_pointer __cur_node;
+<span class="lineNum"> 300 </span> : try
+<span class="lineNum"> 301 </span> : {
+<span class="lineNum"> 302 </span> : for (__cur_node = this-&gt;_M_impl._M_start._M_node;
+<span class="lineNum"> 303 </span> : __cur_node &lt; this-&gt;_M_impl._M_finish._M_node;
+<span class="lineNum"> 304 </span> : ++__cur_node)
+<span class="lineNum"> 305 </span> : {
+<span class="lineNum"> 306 </span> : _ForwardIterator __mid = __first;
+<span class="lineNum"> 307 </span> : std::advance(__mid, _S_buffer_size());
+<span class="lineNum"> 308 </span> : std::__uninitialized_copy_a(__first, __mid, *__cur_node,
+<span class="lineNum"> 309 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 310 </span> : __first = __mid;
+<span class="lineNum"> 311 </span> : }
+<span class="lineNum"> 312 </span> : std::__uninitialized_copy_a(__first, __last,
+<span class="lineNum"> 313 </span> : this-&gt;_M_impl._M_finish._M_first,
+<span class="lineNum"> 314 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 315 </span> : }
+<span class="lineNum"> 316 </span> : catch(...)
+<span class="lineNum"> 317 </span> : {
+<span class="lineNum"> 318 </span> : std::_Destroy(this-&gt;_M_impl._M_start,
+<span class="lineNum"> 319 </span> : iterator(*__cur_node, __cur_node),
+<span class="lineNum"> 320 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 321 </span> : __throw_exception_again;
+<span class="lineNum"> 322 </span> : }
+<span class="lineNum"> 323 </span> : }
+<span class="lineNum"> 324 </span> :
+<span class="lineNum"> 325 </span> : // Called only if _M_impl._M_finish._M_cur == _M_impl._M_finish._M_last - 1.
+<span class="lineNum"> 326 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 327 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 328 </span> : template&lt;typename... _Args&gt;
+<span class="lineNum"> 329 </span> : void
+<span class="lineNum"> 330 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 331 </span> : _M_push_back_aux(_Args&amp;&amp;... __args)
+<span class="lineNum"> 332 </span> : #else
+<span class="lineNum"> 333 </span> : void
+<span class="lineNum"> 334 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 335 </span><span class="lineCov"> 13 : _M_push_back_aux(const value_type&amp; __t)</span>
+<span class="lineNum"> 336 </span> : #endif
+<span class="lineNum"> 337 </span> : {
+<span class="lineNum"> 338 </span><span class="lineCov"> 13 : _M_reserve_map_at_back();</span>
+<span class="lineNum"> 339 </span><span class="lineCov"> 13 : *(this-&gt;_M_impl._M_finish._M_node + 1) = this-&gt;_M_allocate_node();</span>
+<span class="lineNum"> 340 </span> : try
+<span class="lineNum"> 341 </span> : {
+<span class="lineNum"> 342 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 343 </span> : this-&gt;_M_impl.construct(this-&gt;_M_impl._M_finish._M_cur,
+<span class="lineNum"> 344 </span> : std::forward&lt;_Args&gt;(__args)...);
+<span class="lineNum"> 345 </span> : #else
+<span class="lineNum"> 346 </span><span class="lineCov"> 13 : this-&gt;_M_impl.construct(this-&gt;_M_impl._M_finish._M_cur, __t);</span>
+<span class="lineNum"> 347 </span> : #endif
+<span class="lineNum"> 348 </span><span class="lineCov"> 13 : this-&gt;_M_impl._M_finish._M_set_node(this-&gt;_M_impl._M_finish._M_node</span>
+<span class="lineNum"> 349 </span> : + 1);
+<span class="lineNum"> 350 </span><span class="lineCov"> 13 : this-&gt;_M_impl._M_finish._M_cur = this-&gt;_M_impl._M_finish._M_first;</span>
+<span class="lineNum"> 351 </span> : }
+<span class="lineNum"> 352 </span><span class="lineNoCov"> 0 : catch(...)</span>
+<span class="lineNum"> 353 </span> : {
+<span class="lineNum"> 354 </span><span class="lineNoCov"> 0 : _M_deallocate_node(*(this-&gt;_M_impl._M_finish._M_node + 1));</span>
+<span class="lineNum"> 355 </span><span class="lineNoCov"> 0 : __throw_exception_again;</span>
+<span class="lineNum"> 356 </span> : }
+<span class="lineNum"> 357 </span><span class="lineCov"> 13 : }</span>
+<span class="lineNum"> 358 </span> :
+<span class="lineNum"> 359 </span> : // Called only if _M_impl._M_start._M_cur == _M_impl._M_start._M_first.
+<span class="lineNum"> 360 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 361 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 362 </span> : template&lt;typename... _Args&gt;
+<span class="lineNum"> 363 </span> : void
+<span class="lineNum"> 364 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 365 </span> : _M_push_front_aux(_Args&amp;&amp;... __args)
+<span class="lineNum"> 366 </span> : #else
+<span class="lineNum"> 367 </span> : void
+<span class="lineNum"> 368 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 369 </span> : _M_push_front_aux(const value_type&amp; __t)
+<span class="lineNum"> 370 </span> : #endif
+<span class="lineNum"> 371 </span> : {
+<span class="lineNum"> 372 </span> : _M_reserve_map_at_front();
+<span class="lineNum"> 373 </span> : *(this-&gt;_M_impl._M_start._M_node - 1) = this-&gt;_M_allocate_node();
+<span class="lineNum"> 374 </span> : try
+<span class="lineNum"> 375 </span> : {
+<span class="lineNum"> 376 </span> : this-&gt;_M_impl._M_start._M_set_node(this-&gt;_M_impl._M_start._M_node
+<span class="lineNum"> 377 </span> : - 1);
+<span class="lineNum"> 378 </span> : this-&gt;_M_impl._M_start._M_cur = this-&gt;_M_impl._M_start._M_last - 1;
+<span class="lineNum"> 379 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 380 </span> : this-&gt;_M_impl.construct(this-&gt;_M_impl._M_start._M_cur,
+<span class="lineNum"> 381 </span> : std::forward&lt;_Args&gt;(__args)...);
+<span class="lineNum"> 382 </span> : #else
+<span class="lineNum"> 383 </span> : this-&gt;_M_impl.construct(this-&gt;_M_impl._M_start._M_cur, __t);
+<span class="lineNum"> 384 </span> : #endif
+<span class="lineNum"> 385 </span> : }
+<span class="lineNum"> 386 </span> : catch(...)
+<span class="lineNum"> 387 </span> : {
+<span class="lineNum"> 388 </span> : ++this-&gt;_M_impl._M_start;
+<span class="lineNum"> 389 </span> : _M_deallocate_node(*(this-&gt;_M_impl._M_start._M_node - 1));
+<span class="lineNum"> 390 </span> : __throw_exception_again;
+<span class="lineNum"> 391 </span> : }
+<span class="lineNum"> 392 </span> : }
+<span class="lineNum"> 393 </span> :
+<span class="lineNum"> 394 </span> : // Called only if _M_impl._M_finish._M_cur == _M_impl._M_finish._M_first.
+<span class="lineNum"> 395 </span> : template &lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 396 </span> : void deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 397 </span><span class="lineNoCov"> 0 : _M_pop_back_aux()</span>
+<span class="lineNum"> 398 </span> : {
+<span class="lineNum"> 399 </span><span class="lineNoCov"> 0 : _M_deallocate_node(this-&gt;_M_impl._M_finish._M_first);</span>
+<span class="lineNum"> 400 </span><span class="lineNoCov"> 0 : this-&gt;_M_impl._M_finish._M_set_node(this-&gt;_M_impl._M_finish._M_node - 1);</span>
+<span class="lineNum"> 401 </span><span class="lineNoCov"> 0 : this-&gt;_M_impl._M_finish._M_cur = this-&gt;_M_impl._M_finish._M_last - 1;</span>
+<span class="lineNum"> 402 </span><span class="lineNoCov"> 0 : this-&gt;_M_impl.destroy(this-&gt;_M_impl._M_finish._M_cur);</span>
+<span class="lineNum"> 403 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 404 </span> :
+<span class="lineNum"> 405 </span> : // Called only if _M_impl._M_start._M_cur == _M_impl._M_start._M_last - 1.
+<span class="lineNum"> 406 </span> : // Note that if the deque has at least one element (a precondition for this
+<span class="lineNum"> 407 </span> : // member function), and if
+<span class="lineNum"> 408 </span> : // _M_impl._M_start._M_cur == _M_impl._M_start._M_last,
+<span class="lineNum"> 409 </span> : // then the deque must have at least two nodes.
+<span class="lineNum"> 410 </span> : template &lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 411 </span> : void deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 412 </span> : _M_pop_front_aux()
+<span class="lineNum"> 413 </span> : {
+<span class="lineNum"> 414 </span> : this-&gt;_M_impl.destroy(this-&gt;_M_impl._M_start._M_cur);
+<span class="lineNum"> 415 </span> : _M_deallocate_node(this-&gt;_M_impl._M_start._M_first);
+<span class="lineNum"> 416 </span> : this-&gt;_M_impl._M_start._M_set_node(this-&gt;_M_impl._M_start._M_node + 1);
+<span class="lineNum"> 417 </span> : this-&gt;_M_impl._M_start._M_cur = this-&gt;_M_impl._M_start._M_first;
+<span class="lineNum"> 418 </span> : }
+<span class="lineNum"> 419 </span> :
+<span class="lineNum"> 420 </span> : template &lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 421 </span> : template &lt;typename _InputIterator&gt;
+<span class="lineNum"> 422 </span> : void
+<span class="lineNum"> 423 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 424 </span> : _M_range_insert_aux(iterator __pos,
+<span class="lineNum"> 425 </span> : _InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 426 </span> : std::input_iterator_tag)
+<span class="lineNum"> 427 </span> : { std::copy(__first, __last, std::inserter(*this, __pos)); }
+<span class="lineNum"> 428 </span> :
+<span class="lineNum"> 429 </span> : template &lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 430 </span> : template &lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 431 </span> : void
+<span class="lineNum"> 432 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 433 </span> : _M_range_insert_aux(iterator __pos,
+<span class="lineNum"> 434 </span> : _ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 435 </span><span class="lineNoCov"> 0 : std::forward_iterator_tag)</span>
+<span class="lineNum"> 436 </span> : {
+<span class="lineNum"> 437 </span><span class="lineNoCov"> 0 : const size_type __n = std::distance(__first, __last);</span>
+<span class="lineNum"> 438 </span><span class="lineNoCov"> 0 : if (__pos._M_cur == this-&gt;_M_impl._M_start._M_cur)</span>
+<span class="lineNum"> 439 </span> : {
+<span class="lineNum"> 440 </span><span class="lineNoCov"> 0 : iterator __new_start = _M_reserve_elements_at_front(__n);</span>
+<span class="lineNum"> 441 </span> : try
+<span class="lineNum"> 442 </span> : {
+<span class="lineNum"> 443 </span><span class="lineNoCov"> 0 : std::__uninitialized_copy_a(__first, __last, __new_start,</span>
+<span class="lineNum"> 444 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 445 </span><span class="lineNoCov"> 0 : this-&gt;_M_impl._M_start = __new_start;</span>
+<span class="lineNum"> 446 </span> : }
+<span class="lineNum"> 447 </span><span class="lineNoCov"> 0 : catch(...)</span>
+<span class="lineNum"> 448 </span> : {
+<span class="lineNum"> 449 </span><span class="lineNoCov"> 0 : _M_destroy_nodes(__new_start._M_node,</span>
+<span class="lineNum"> 450 </span> : this-&gt;_M_impl._M_start._M_node);
+<span class="lineNum"> 451 </span><span class="lineNoCov"> 0 : __throw_exception_again;</span>
+<span class="lineNum"> 452 </span> : }
+<span class="lineNum"> 453 </span> : }
+<span class="lineNum"> 454 </span><span class="lineNoCov"> 0 : else if (__pos._M_cur == this-&gt;_M_impl._M_finish._M_cur)</span>
+<span class="lineNum"> 455 </span> : {
+<span class="lineNum"> 456 </span><span class="lineNoCov"> 0 : iterator __new_finish = _M_reserve_elements_at_back(__n);</span>
+<span class="lineNum"> 457 </span> : try
+<span class="lineNum"> 458 </span> : {
+<span class="lineNum"> 459 </span><span class="lineNoCov"> 0 : std::__uninitialized_copy_a(__first, __last,</span>
+<span class="lineNum"> 460 </span> : this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 461 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 462 </span><span class="lineNoCov"> 0 : this-&gt;_M_impl._M_finish = __new_finish;</span>
+<span class="lineNum"> 463 </span> : }
+<span class="lineNum"> 464 </span><span class="lineNoCov"> 0 : catch(...)</span>
+<span class="lineNum"> 465 </span> : {
+<span class="lineNum"> 466 </span><span class="lineNoCov"> 0 : _M_destroy_nodes(this-&gt;_M_impl._M_finish._M_node + 1,</span>
+<span class="lineNum"> 467 </span> : __new_finish._M_node + 1);
+<span class="lineNum"> 468 </span><span class="lineNoCov"> 0 : __throw_exception_again;</span>
+<span class="lineNum"> 469 </span> : }
+<span class="lineNum"> 470 </span> : }
+<span class="lineNum"> 471 </span> : else
+<span class="lineNum"> 472 </span><span class="lineNoCov"> 0 : _M_insert_aux(__pos, __first, __last, __n);</span>
+<span class="lineNum"> 473 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 474 </span> :
+<span class="lineNum"> 475 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 476 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 477 </span> : template&lt;typename... _Args&gt;
+<span class="lineNum"> 478 </span> : typename deque&lt;_Tp, _Alloc&gt;::iterator
+<span class="lineNum"> 479 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 480 </span> : _M_insert_aux(iterator __pos, _Args&amp;&amp;... __args)
+<span class="lineNum"> 481 </span> : {
+<span class="lineNum"> 482 </span> : value_type __x_copy(std::forward&lt;_Args&gt;(__args)...); // XXX copy
+<span class="lineNum"> 483 </span> : #else
+<span class="lineNum"> 484 </span> : typename deque&lt;_Tp, _Alloc&gt;::iterator
+<span class="lineNum"> 485 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 486 </span> : _M_insert_aux(iterator __pos, const value_type&amp; __x)
+<span class="lineNum"> 487 </span> : {
+<span class="lineNum"> 488 </span> : value_type __x_copy = __x; // XXX copy
+<span class="lineNum"> 489 </span> : #endif
+<span class="lineNum"> 490 </span> : difference_type __index = __pos - this-&gt;_M_impl._M_start;
+<span class="lineNum"> 491 </span> : if (static_cast&lt;size_type&gt;(__index) &lt; size() / 2)
+<span class="lineNum"> 492 </span> : {
+<span class="lineNum"> 493 </span> : push_front(_GLIBCXX_MOVE(front()));
+<span class="lineNum"> 494 </span> : iterator __front1 = this-&gt;_M_impl._M_start;
+<span class="lineNum"> 495 </span> : ++__front1;
+<span class="lineNum"> 496 </span> : iterator __front2 = __front1;
+<span class="lineNum"> 497 </span> : ++__front2;
+<span class="lineNum"> 498 </span> : __pos = this-&gt;_M_impl._M_start + __index;
+<span class="lineNum"> 499 </span> : iterator __pos1 = __pos;
+<span class="lineNum"> 500 </span> : ++__pos1;
+<span class="lineNum"> 501 </span> : _GLIBCXX_MOVE3(__front2, __pos1, __front1);
+<span class="lineNum"> 502 </span> : }
+<span class="lineNum"> 503 </span> : else
+<span class="lineNum"> 504 </span> : {
+<span class="lineNum"> 505 </span> : push_back(_GLIBCXX_MOVE(back()));
+<span class="lineNum"> 506 </span> : iterator __back1 = this-&gt;_M_impl._M_finish;
+<span class="lineNum"> 507 </span> : --__back1;
+<span class="lineNum"> 508 </span> : iterator __back2 = __back1;
+<span class="lineNum"> 509 </span> : --__back2;
+<span class="lineNum"> 510 </span> : __pos = this-&gt;_M_impl._M_start + __index;
+<span class="lineNum"> 511 </span> : _GLIBCXX_MOVE_BACKWARD3(__pos, __back2, __back1);
+<span class="lineNum"> 512 </span> : }
+<span class="lineNum"> 513 </span> : *__pos = _GLIBCXX_MOVE(__x_copy);
+<span class="lineNum"> 514 </span> : return __pos;
+<span class="lineNum"> 515 </span> : }
+<span class="lineNum"> 516 </span> :
+<span class="lineNum"> 517 </span> : template &lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 518 </span> : void
+<span class="lineNum"> 519 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 520 </span> : _M_insert_aux(iterator __pos, size_type __n, const value_type&amp; __x)
+<span class="lineNum"> 521 </span> : {
+<span class="lineNum"> 522 </span> : const difference_type __elems_before = __pos - this-&gt;_M_impl._M_start;
+<span class="lineNum"> 523 </span> : const size_type __length = this-&gt;size();
+<span class="lineNum"> 524 </span> : value_type __x_copy = __x;
+<span class="lineNum"> 525 </span> : if (__elems_before &lt; difference_type(__length / 2))
+<span class="lineNum"> 526 </span> : {
+<span class="lineNum"> 527 </span> : iterator __new_start = _M_reserve_elements_at_front(__n);
+<span class="lineNum"> 528 </span> : iterator __old_start = this-&gt;_M_impl._M_start;
+<span class="lineNum"> 529 </span> : __pos = this-&gt;_M_impl._M_start + __elems_before;
+<span class="lineNum"> 530 </span> : try
+<span class="lineNum"> 531 </span> : {
+<span class="lineNum"> 532 </span> : if (__elems_before &gt;= difference_type(__n))
+<span class="lineNum"> 533 </span> : {
+<span class="lineNum"> 534 </span> : iterator __start_n = (this-&gt;_M_impl._M_start
+<span class="lineNum"> 535 </span> : + difference_type(__n));
+<span class="lineNum"> 536 </span> : std::__uninitialized_move_a(this-&gt;_M_impl._M_start,
+<span class="lineNum"> 537 </span> : __start_n, __new_start,
+<span class="lineNum"> 538 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 539 </span> : this-&gt;_M_impl._M_start = __new_start;
+<span class="lineNum"> 540 </span> : _GLIBCXX_MOVE3(__start_n, __pos, __old_start);
+<span class="lineNum"> 541 </span> : std::fill(__pos - difference_type(__n), __pos, __x_copy);
+<span class="lineNum"> 542 </span> : }
+<span class="lineNum"> 543 </span> : else
+<span class="lineNum"> 544 </span> : {
+<span class="lineNum"> 545 </span> : std::__uninitialized_move_fill(this-&gt;_M_impl._M_start,
+<span class="lineNum"> 546 </span> : __pos, __new_start,
+<span class="lineNum"> 547 </span> : this-&gt;_M_impl._M_start,
+<span class="lineNum"> 548 </span> : __x_copy,
+<span class="lineNum"> 549 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 550 </span> : this-&gt;_M_impl._M_start = __new_start;
+<span class="lineNum"> 551 </span> : std::fill(__old_start, __pos, __x_copy);
+<span class="lineNum"> 552 </span> : }
+<span class="lineNum"> 553 </span> : }
+<span class="lineNum"> 554 </span> : catch(...)
+<span class="lineNum"> 555 </span> : {
+<span class="lineNum"> 556 </span> : _M_destroy_nodes(__new_start._M_node,
+<span class="lineNum"> 557 </span> : this-&gt;_M_impl._M_start._M_node);
+<span class="lineNum"> 558 </span> : __throw_exception_again;
+<span class="lineNum"> 559 </span> : }
+<span class="lineNum"> 560 </span> : }
+<span class="lineNum"> 561 </span> : else
+<span class="lineNum"> 562 </span> : {
+<span class="lineNum"> 563 </span> : iterator __new_finish = _M_reserve_elements_at_back(__n);
+<span class="lineNum"> 564 </span> : iterator __old_finish = this-&gt;_M_impl._M_finish;
+<span class="lineNum"> 565 </span> : const difference_type __elems_after =
+<span class="lineNum"> 566 </span> : difference_type(__length) - __elems_before;
+<span class="lineNum"> 567 </span> : __pos = this-&gt;_M_impl._M_finish - __elems_after;
+<span class="lineNum"> 568 </span> : try
+<span class="lineNum"> 569 </span> : {
+<span class="lineNum"> 570 </span> : if (__elems_after &gt; difference_type(__n))
+<span class="lineNum"> 571 </span> : {
+<span class="lineNum"> 572 </span> : iterator __finish_n = (this-&gt;_M_impl._M_finish
+<span class="lineNum"> 573 </span> : - difference_type(__n));
+<span class="lineNum"> 574 </span> : std::__uninitialized_move_a(__finish_n,
+<span class="lineNum"> 575 </span> : this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 576 </span> : this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 577 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 578 </span> : this-&gt;_M_impl._M_finish = __new_finish;
+<span class="lineNum"> 579 </span> : _GLIBCXX_MOVE_BACKWARD3(__pos, __finish_n, __old_finish);
+<span class="lineNum"> 580 </span> : std::fill(__pos, __pos + difference_type(__n), __x_copy);
+<span class="lineNum"> 581 </span> : }
+<span class="lineNum"> 582 </span> : else
+<span class="lineNum"> 583 </span> : {
+<span class="lineNum"> 584 </span> : std::__uninitialized_fill_move(this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 585 </span> : __pos + difference_type(__n),
+<span class="lineNum"> 586 </span> : __x_copy, __pos,
+<span class="lineNum"> 587 </span> : this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 588 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 589 </span> : this-&gt;_M_impl._M_finish = __new_finish;
+<span class="lineNum"> 590 </span> : std::fill(__pos, __old_finish, __x_copy);
+<span class="lineNum"> 591 </span> : }
+<span class="lineNum"> 592 </span> : }
+<span class="lineNum"> 593 </span> : catch(...)
+<span class="lineNum"> 594 </span> : {
+<span class="lineNum"> 595 </span> : _M_destroy_nodes(this-&gt;_M_impl._M_finish._M_node + 1,
+<span class="lineNum"> 596 </span> : __new_finish._M_node + 1);
+<span class="lineNum"> 597 </span> : __throw_exception_again;
+<span class="lineNum"> 598 </span> : }
+<span class="lineNum"> 599 </span> : }
+<span class="lineNum"> 600 </span> : }
+<span class="lineNum"> 601 </span> :
+<span class="lineNum"> 602 </span> : template &lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 603 </span> : template &lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 604 </span> : void
+<span class="lineNum"> 605 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 606 </span> : _M_insert_aux(iterator __pos,
+<span class="lineNum"> 607 </span> : _ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 608 </span><span class="lineNoCov"> 0 : size_type __n)</span>
+<span class="lineNum"> 609 </span> : {
+<span class="lineNum"> 610 </span><span class="lineNoCov"> 0 : const difference_type __elemsbefore = __pos - this-&gt;_M_impl._M_start;</span>
+<span class="lineNum"> 611 </span><span class="lineNoCov"> 0 : const size_type __length = size();</span>
+<span class="lineNum"> 612 </span><span class="lineNoCov"> 0 : if (static_cast&lt;size_type&gt;(__elemsbefore) &lt; __length / 2)</span>
+<span class="lineNum"> 613 </span> : {
+<span class="lineNum"> 614 </span><span class="lineNoCov"> 0 : iterator __new_start = _M_reserve_elements_at_front(__n);</span>
+<span class="lineNum"> 615 </span><span class="lineNoCov"> 0 : iterator __old_start = this-&gt;_M_impl._M_start;</span>
+<span class="lineNum"> 616 </span><span class="lineNoCov"> 0 : __pos = this-&gt;_M_impl._M_start + __elemsbefore;</span>
+<span class="lineNum"> 617 </span> : try
+<span class="lineNum"> 618 </span> : {
+<span class="lineNum"> 619 </span><span class="lineNoCov"> 0 : if (__elemsbefore &gt;= difference_type(__n))</span>
+<span class="lineNum"> 620 </span> : {
+<span class="lineNum"> 621 </span> : iterator __start_n = (this-&gt;_M_impl._M_start
+<span class="lineNum"> 622 </span><span class="lineNoCov"> 0 : + difference_type(__n));</span>
+<span class="lineNum"> 623 </span><span class="lineNoCov"> 0 : std::__uninitialized_move_a(this-&gt;_M_impl._M_start,</span>
+<span class="lineNum"> 624 </span> : __start_n, __new_start,
+<span class="lineNum"> 625 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 626 </span><span class="lineNoCov"> 0 : this-&gt;_M_impl._M_start = __new_start;</span>
+<span class="lineNum"> 627 </span><span class="lineNoCov"> 0 : _GLIBCXX_MOVE3(__start_n, __pos, __old_start);</span>
+<span class="lineNum"> 628 </span><span class="lineNoCov"> 0 : std::copy(__first, __last, __pos - difference_type(__n));</span>
+<span class="lineNum"> 629 </span> : }
+<span class="lineNum"> 630 </span> : else
+<span class="lineNum"> 631 </span> : {
+<span class="lineNum"> 632 </span><span class="lineNoCov"> 0 : _ForwardIterator __mid = __first;</span>
+<span class="lineNum"> 633 </span><span class="lineNoCov"> 0 : std::advance(__mid, difference_type(__n) - __elemsbefore);</span>
+<span class="lineNum"> 634 </span><span class="lineNoCov"> 0 : std::__uninitialized_move_copy(this-&gt;_M_impl._M_start,</span>
+<span class="lineNum"> 635 </span> : __pos, __first, __mid,
+<span class="lineNum"> 636 </span> : __new_start,
+<span class="lineNum"> 637 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 638 </span><span class="lineNoCov"> 0 : this-&gt;_M_impl._M_start = __new_start;</span>
+<span class="lineNum"> 639 </span><span class="lineNoCov"> 0 : std::copy(__mid, __last, __old_start);</span>
+<span class="lineNum"> 640 </span> : }
+<span class="lineNum"> 641 </span> : }
+<span class="lineNum"> 642 </span><span class="lineNoCov"> 0 : catch(...)</span>
+<span class="lineNum"> 643 </span> : {
+<span class="lineNum"> 644 </span><span class="lineNoCov"> 0 : _M_destroy_nodes(__new_start._M_node,</span>
+<span class="lineNum"> 645 </span> : this-&gt;_M_impl._M_start._M_node);
+<span class="lineNum"> 646 </span><span class="lineNoCov"> 0 : __throw_exception_again;</span>
+<span class="lineNum"> 647 </span> : }
+<span class="lineNum"> 648 </span> : }
+<span class="lineNum"> 649 </span> : else
+<span class="lineNum"> 650 </span> : {
+<span class="lineNum"> 651 </span><span class="lineNoCov"> 0 : iterator __new_finish = _M_reserve_elements_at_back(__n);</span>
+<span class="lineNum"> 652 </span><span class="lineNoCov"> 0 : iterator __old_finish = this-&gt;_M_impl._M_finish;</span>
+<span class="lineNum"> 653 </span> : const difference_type __elemsafter =
+<span class="lineNum"> 654 </span><span class="lineNoCov"> 0 : difference_type(__length) - __elemsbefore;</span>
+<span class="lineNum"> 655 </span><span class="lineNoCov"> 0 : __pos = this-&gt;_M_impl._M_finish - __elemsafter;</span>
+<span class="lineNum"> 656 </span> : try
+<span class="lineNum"> 657 </span> : {
+<span class="lineNum"> 658 </span><span class="lineNoCov"> 0 : if (__elemsafter &gt; difference_type(__n))</span>
+<span class="lineNum"> 659 </span> : {
+<span class="lineNum"> 660 </span> : iterator __finish_n = (this-&gt;_M_impl._M_finish
+<span class="lineNum"> 661 </span><span class="lineNoCov"> 0 : - difference_type(__n));</span>
+<span class="lineNum"> 662 </span><span class="lineNoCov"> 0 : std::__uninitialized_move_a(__finish_n,</span>
+<span class="lineNum"> 663 </span> : this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 664 </span> : this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 665 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 666 </span><span class="lineNoCov"> 0 : this-&gt;_M_impl._M_finish = __new_finish;</span>
+<span class="lineNum"> 667 </span><span class="lineNoCov"> 0 : _GLIBCXX_MOVE_BACKWARD3(__pos, __finish_n, __old_finish);</span>
+<span class="lineNum"> 668 </span><span class="lineNoCov"> 0 : std::copy(__first, __last, __pos);</span>
+<span class="lineNum"> 669 </span> : }
+<span class="lineNum"> 670 </span> : else
+<span class="lineNum"> 671 </span> : {
+<span class="lineNum"> 672 </span><span class="lineNoCov"> 0 : _ForwardIterator __mid = __first;</span>
+<span class="lineNum"> 673 </span><span class="lineNoCov"> 0 : std::advance(__mid, __elemsafter);</span>
+<span class="lineNum"> 674 </span><span class="lineNoCov"> 0 : std::__uninitialized_copy_move(__mid, __last, __pos,</span>
+<span class="lineNum"> 675 </span> : this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 676 </span> : this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 677 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 678 </span><span class="lineNoCov"> 0 : this-&gt;_M_impl._M_finish = __new_finish;</span>
+<span class="lineNum"> 679 </span><span class="lineNoCov"> 0 : std::copy(__first, __mid, __pos);</span>
+<span class="lineNum"> 680 </span> : }
+<span class="lineNum"> 681 </span> : }
+<span class="lineNum"> 682 </span><span class="lineNoCov"> 0 : catch(...)</span>
+<span class="lineNum"> 683 </span> : {
+<span class="lineNum"> 684 </span><span class="lineNoCov"> 0 : _M_destroy_nodes(this-&gt;_M_impl._M_finish._M_node + 1,</span>
+<span class="lineNum"> 685 </span> : __new_finish._M_node + 1);
+<span class="lineNum"> 686 </span><span class="lineNoCov"> 0 : __throw_exception_again;</span>
+<span class="lineNum"> 687 </span> : }
+<span class="lineNum"> 688 </span> : }
+<span class="lineNum"> 689 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 690 </span> :
+<span class="lineNum"> 691 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 692 </span> : void
+<span class="lineNum"> 693 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 694 </span><span class="lineCov"> 26 : _M_destroy_data_aux(iterator __first, iterator __last)</span>
+<span class="lineNum"> 695 </span> : {
+<span class="lineNum"> 696 </span><span class="lineCov"> 26 : for (_Map_pointer __node = __first._M_node + 1;</span>
+<span class="lineNum"> 697 </span> : __node &lt; __last._M_node; ++__node)
+<span class="lineNum"> 698 </span><span class="lineNoCov"> 0 : std::_Destroy(*__node, *__node + _S_buffer_size(),</span>
+<span class="lineNum"> 699 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 700 </span> :
+<span class="lineNum"> 701 </span><span class="lineCov"> 26 : if (__first._M_node != __last._M_node)</span>
+<span class="lineNum"> 702 </span> : {
+<span class="lineNum"> 703 </span><span class="lineNoCov"> 0 : std::_Destroy(__first._M_cur, __first._M_last,</span>
+<span class="lineNum"> 704 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 705 </span><span class="lineNoCov"> 0 : std::_Destroy(__last._M_first, __last._M_cur,</span>
+<span class="lineNum"> 706 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 707 </span> : }
+<span class="lineNum"> 708 </span> : else
+<span class="lineNum"> 709 </span><span class="lineCov"> 26 : std::_Destroy(__first._M_cur, __last._M_cur,</span>
+<span class="lineNum"> 710 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 711 </span><span class="lineCov"> 26 : }</span>
+<span class="lineNum"> 712 </span> :
+<span class="lineNum"> 713 </span> : template &lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 714 </span> : void
+<span class="lineNum"> 715 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 716 </span><span class="lineNoCov"> 0 : _M_new_elements_at_front(size_type __new_elems)</span>
+<span class="lineNum"> 717 </span> : {
+<span class="lineNum"> 718 </span><span class="lineNoCov"> 0 : if (this-&gt;max_size() - this-&gt;size() &lt; __new_elems)</span>
+<span class="lineNum"> 719 </span><span class="lineNoCov"> 0 : __throw_length_error(__N(&quot;deque::_M_new_elements_at_front&quot;));</span>
+<span class="lineNum"> 720 </span> :
+<span class="lineNum"> 721 </span> : const size_type __new_nodes = ((__new_elems + _S_buffer_size() - 1)
+<span class="lineNum"> 722 </span><span class="lineNoCov"> 0 : / _S_buffer_size());</span>
+<span class="lineNum"> 723 </span><span class="lineNoCov"> 0 : _M_reserve_map_at_front(__new_nodes);</span>
+<span class="lineNum"> 724 </span> : size_type __i;
+<span class="lineNum"> 725 </span> : try
+<span class="lineNum"> 726 </span> : {
+<span class="lineNum"> 727 </span><span class="lineNoCov"> 0 : for (__i = 1; __i &lt;= __new_nodes; ++__i)</span>
+<span class="lineNum"> 728 </span><span class="lineNoCov"> 0 : *(this-&gt;_M_impl._M_start._M_node - __i) = this-&gt;_M_allocate_node();</span>
+<span class="lineNum"> 729 </span> : }
+<span class="lineNum"> 730 </span><span class="lineNoCov"> 0 : catch(...)</span>
+<span class="lineNum"> 731 </span> : {
+<span class="lineNum"> 732 </span><span class="lineNoCov"> 0 : for (size_type __j = 1; __j &lt; __i; ++__j)</span>
+<span class="lineNum"> 733 </span><span class="lineNoCov"> 0 : _M_deallocate_node(*(this-&gt;_M_impl._M_start._M_node - __j));</span>
+<span class="lineNum"> 734 </span><span class="lineNoCov"> 0 : __throw_exception_again;</span>
+<span class="lineNum"> 735 </span> : }
+<span class="lineNum"> 736 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 737 </span> :
+<span class="lineNum"> 738 </span> : template &lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 739 </span> : void
+<span class="lineNum"> 740 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 741 </span><span class="lineNoCov"> 0 : _M_new_elements_at_back(size_type __new_elems)</span>
+<span class="lineNum"> 742 </span> : {
+<span class="lineNum"> 743 </span><span class="lineNoCov"> 0 : if (this-&gt;max_size() - this-&gt;size() &lt; __new_elems)</span>
+<span class="lineNum"> 744 </span><span class="lineNoCov"> 0 : __throw_length_error(__N(&quot;deque::_M_new_elements_at_back&quot;));</span>
+<span class="lineNum"> 745 </span> :
+<span class="lineNum"> 746 </span> : const size_type __new_nodes = ((__new_elems + _S_buffer_size() - 1)
+<span class="lineNum"> 747 </span><span class="lineNoCov"> 0 : / _S_buffer_size());</span>
+<span class="lineNum"> 748 </span><span class="lineNoCov"> 0 : _M_reserve_map_at_back(__new_nodes);</span>
+<span class="lineNum"> 749 </span> : size_type __i;
+<span class="lineNum"> 750 </span> : try
+<span class="lineNum"> 751 </span> : {
+<span class="lineNum"> 752 </span><span class="lineNoCov"> 0 : for (__i = 1; __i &lt;= __new_nodes; ++__i)</span>
+<span class="lineNum"> 753 </span><span class="lineNoCov"> 0 : *(this-&gt;_M_impl._M_finish._M_node + __i) = this-&gt;_M_allocate_node();</span>
+<span class="lineNum"> 754 </span> : }
+<span class="lineNum"> 755 </span><span class="lineNoCov"> 0 : catch(...)</span>
+<span class="lineNum"> 756 </span> : {
+<span class="lineNum"> 757 </span><span class="lineNoCov"> 0 : for (size_type __j = 1; __j &lt; __i; ++__j)</span>
+<span class="lineNum"> 758 </span><span class="lineNoCov"> 0 : _M_deallocate_node(*(this-&gt;_M_impl._M_finish._M_node + __j));</span>
+<span class="lineNum"> 759 </span><span class="lineNoCov"> 0 : __throw_exception_again;</span>
+<span class="lineNum"> 760 </span> : }
+<span class="lineNum"> 761 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 762 </span> :
+<span class="lineNum"> 763 </span> : template &lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 764 </span> : void
+<span class="lineNum"> 765 </span> : deque&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 766 </span><span class="lineNoCov"> 0 : _M_reallocate_map(size_type __nodes_to_add, bool __add_at_front)</span>
+<span class="lineNum"> 767 </span> : {
+<span class="lineNum"> 768 </span> : const size_type __old_num_nodes
+<span class="lineNum"> 769 </span><span class="lineNoCov"> 0 : = this-&gt;_M_impl._M_finish._M_node - this-&gt;_M_impl._M_start._M_node + 1;</span>
+<span class="lineNum"> 770 </span><span class="lineNoCov"> 0 : const size_type __new_num_nodes = __old_num_nodes + __nodes_to_add;</span>
+<span class="lineNum"> 771 </span> :
+<span class="lineNum"> 772 </span> : _Map_pointer __new_nstart;
+<span class="lineNum"> 773 </span><span class="lineNoCov"> 0 : if (this-&gt;_M_impl._M_map_size &gt; 2 * __new_num_nodes)</span>
+<span class="lineNum"> 774 </span> : {
+<span class="lineNum"> 775 </span><span class="lineNoCov"> 0 : __new_nstart = this-&gt;_M_impl._M_map + (this-&gt;_M_impl._M_map_size</span>
+<span class="lineNum"> 776 </span> : - __new_num_nodes) / 2
+<span class="lineNum"> 777 </span> : + (__add_at_front ? __nodes_to_add : 0);
+<span class="lineNum"> 778 </span><span class="lineNoCov"> 0 : if (__new_nstart &lt; this-&gt;_M_impl._M_start._M_node)</span>
+<span class="lineNum"> 779 </span><span class="lineNoCov"> 0 : std::copy(this-&gt;_M_impl._M_start._M_node,</span>
+<span class="lineNum"> 780 </span> : this-&gt;_M_impl._M_finish._M_node + 1,
+<span class="lineNum"> 781 </span> : __new_nstart);
+<span class="lineNum"> 782 </span> : else
+<span class="lineNum"> 783 </span><span class="lineNoCov"> 0 : std::copy_backward(this-&gt;_M_impl._M_start._M_node,</span>
+<span class="lineNum"> 784 </span> : this-&gt;_M_impl._M_finish._M_node + 1,
+<span class="lineNum"> 785 </span> : __new_nstart + __old_num_nodes);
+<span class="lineNum"> 786 </span> : }
+<span class="lineNum"> 787 </span> : else
+<span class="lineNum"> 788 </span> : {
+<span class="lineNum"> 789 </span> : size_type __new_map_size = this-&gt;_M_impl._M_map_size
+<span class="lineNum"> 790 </span> : + std::max(this-&gt;_M_impl._M_map_size,
+<span class="lineNum"> 791 </span><span class="lineNoCov"> 0 : __nodes_to_add) + 2;</span>
+<span class="lineNum"> 792 </span> :
+<span class="lineNum"> 793 </span><span class="lineNoCov"> 0 : _Map_pointer __new_map = this-&gt;_M_allocate_map(__new_map_size);</span>
+<span class="lineNum"> 794 </span><span class="lineNoCov"> 0 : __new_nstart = __new_map + (__new_map_size - __new_num_nodes) / 2</span>
+<span class="lineNum"> 795 </span> : + (__add_at_front ? __nodes_to_add : 0);
+<span class="lineNum"> 796 </span><span class="lineNoCov"> 0 : std::copy(this-&gt;_M_impl._M_start._M_node,</span>
+<span class="lineNum"> 797 </span> : this-&gt;_M_impl._M_finish._M_node + 1,
+<span class="lineNum"> 798 </span> : __new_nstart);
+<span class="lineNum"> 799 </span><span class="lineNoCov"> 0 : _M_deallocate_map(this-&gt;_M_impl._M_map, this-&gt;_M_impl._M_map_size);</span>
+<span class="lineNum"> 800 </span> :
+<span class="lineNum"> 801 </span><span class="lineNoCov"> 0 : this-&gt;_M_impl._M_map = __new_map;</span>
+<span class="lineNum"> 802 </span><span class="lineNoCov"> 0 : this-&gt;_M_impl._M_map_size = __new_map_size;</span>
+<span class="lineNum"> 803 </span> : }
+<span class="lineNum"> 804 </span> :
+<span class="lineNum"> 805 </span><span class="lineNoCov"> 0 : this-&gt;_M_impl._M_start._M_set_node(__new_nstart);</span>
+<span class="lineNum"> 806 </span><span class="lineNoCov"> 0 : this-&gt;_M_impl._M_finish._M_set_node(__new_nstart + __old_num_nodes - 1);</span>
+<span class="lineNum"> 807 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 808 </span> :
+<span class="lineNum"> 809 </span> : // Overload for deque::iterators, exploiting the &quot;segmented-iterator
+<span class="lineNum"> 810 </span> : // optimization&quot;. NB: leave const_iterators alone!
+<span class="lineNum"> 811 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 812 </span> : void
+<span class="lineNum"> 813 </span> : fill(const _Deque_iterator&lt;_Tp, _Tp&amp;, _Tp*&gt;&amp; __first,
+<span class="lineNum"> 814 </span> : const _Deque_iterator&lt;_Tp, _Tp&amp;, _Tp*&gt;&amp; __last, const _Tp&amp; __value)
+<span class="lineNum"> 815 </span> : {
+<span class="lineNum"> 816 </span> : typedef typename _Deque_iterator&lt;_Tp, _Tp&amp;, _Tp*&gt;::_Self _Self;
+<span class="lineNum"> 817 </span> :
+<span class="lineNum"> 818 </span> : for (typename _Self::_Map_pointer __node = __first._M_node + 1;
+<span class="lineNum"> 819 </span> : __node &lt; __last._M_node; ++__node)
+<span class="lineNum"> 820 </span> : std::fill(*__node, *__node + _Self::_S_buffer_size(), __value);
+<span class="lineNum"> 821 </span> :
+<span class="lineNum"> 822 </span> : if (__first._M_node != __last._M_node)
+<span class="lineNum"> 823 </span> : {
+<span class="lineNum"> 824 </span> : std::fill(__first._M_cur, __first._M_last, __value);
+<span class="lineNum"> 825 </span> : std::fill(__last._M_first, __last._M_cur, __value);
+<span class="lineNum"> 826 </span> : }
+<span class="lineNum"> 827 </span> : else
+<span class="lineNum"> 828 </span> : std::fill(__first._M_cur, __last._M_cur, __value);
+<span class="lineNum"> 829 </span> : }
+<span class="lineNum"> 830 </span> :
+<span class="lineNum"> 831 </span> : _GLIBCXX_END_NESTED_NAMESPACE
+<span class="lineNum"> 832 </span> :
+<span class="lineNum"> 833 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/index.html b/rep/usr/include/c++/4.3/bits/index.html
new file mode 100644
index 0000000..4e6a4f9
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/index.html
@@ -0,0 +1,353 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - /usr/include/c++/4.3/bits</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2051</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">69.1 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1418</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="allocator.h.gcov.html">allocator.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=71 height=10 alt="71.4%"><img src="../../../../../snow.png" width=29 height=10 alt="71.4%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">71.4&nbsp;%</td>
+ <td class="coverNumHi">5&nbsp;/&nbsp;7&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="basic_ios.h.gcov.html">basic_ios.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../snow.png" width=100 height=10 alt="0.0%"></td></tr></table>
+ </td>
+ <td class="coverPerLo">0.0&nbsp;%</td>
+ <td class="coverNumLo">0&nbsp;/&nbsp;35&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="basic_string.h.gcov.html">basic_string.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../amber.png" width=17 height=10 alt="17.4%"><img src="../../../../../snow.png" width=83 height=10 alt="17.4%"></td></tr></table>
+ </td>
+ <td class="coverPerMed">17.4&nbsp;%</td>
+ <td class="coverNumMed">31&nbsp;/&nbsp;178&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="basic_string.tcc.gcov.html">basic_string.tcc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=74 height=10 alt="73.9%"><img src="../../../../../snow.png" width=26 height=10 alt="73.9%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">73.9&nbsp;%</td>
+ <td class="coverNumHi">17&nbsp;/&nbsp;23&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="char_traits.h.gcov.html">char_traits.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../amber.png" width=46 height=10 alt="46.2%"><img src="../../../../../snow.png" width=54 height=10 alt="46.2%"></td></tr></table>
+ </td>
+ <td class="coverPerMed">46.2&nbsp;%</td>
+ <td class="coverNumMed">6&nbsp;/&nbsp;13&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="deque.tcc.gcov.html">deque.tcc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../amber.png" width=19 height=10 alt="19.0%"><img src="../../../../../snow.png" width=81 height=10 alt="19.0%"></td></tr></table>
+ </td>
+ <td class="coverPerMed">19.0&nbsp;%</td>
+ <td class="coverNumMed">28&nbsp;/&nbsp;147&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ios_base.h.gcov.html">ios_base.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=67 height=10 alt="66.7%"><img src="../../../../../snow.png" width=33 height=10 alt="66.7%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">66.7&nbsp;%</td>
+ <td class="coverNumHi">20&nbsp;/&nbsp;30&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="list.tcc.gcov.html">list.tcc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">11&nbsp;/&nbsp;11&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="locale_facets.h.gcov.html">locale_facets.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../snow.png" width=100 height=10 alt="0.0%"></td></tr></table>
+ </td>
+ <td class="coverPerLo">0.0&nbsp;%</td>
+ <td class="coverNumLo">0&nbsp;/&nbsp;13&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="postypes.h.gcov.html">postypes.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../snow.png" width=100 height=10 alt="0.0%"></td></tr></table>
+ </td>
+ <td class="coverPerLo">0.0&nbsp;%</td>
+ <td class="coverNumLo">0&nbsp;/&nbsp;3&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="stl_algo.h.gcov.html">stl_algo.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=85 height=10 alt="85.0%"><img src="../../../../../snow.png" width=15 height=10 alt="85.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">85.0&nbsp;%</td>
+ <td class="coverNumHi">192&nbsp;/&nbsp;226&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="stl_algobase.h.gcov.html">stl_algobase.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=91 height=10 alt="91.1%"><img src="../../../../../snow.png" width=9 height=10 alt="91.1%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">91.1&nbsp;%</td>
+ <td class="coverNumHi">72&nbsp;/&nbsp;79&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="stl_bvector.h.gcov.html">stl_bvector.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=70 height=10 alt="70.4%"><img src="../../../../../snow.png" width=30 height=10 alt="70.4%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">70.4&nbsp;%</td>
+ <td class="coverNumHi">81&nbsp;/&nbsp;115&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="stl_construct.h.gcov.html">stl_construct.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">12&nbsp;/&nbsp;12&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="stl_deque.h.gcov.html">stl_deque.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=78 height=10 alt="78.3%"><img src="../../../../../snow.png" width=22 height=10 alt="78.3%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">78.3&nbsp;%</td>
+ <td class="coverNumHi">148&nbsp;/&nbsp;189&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="stl_function.h.gcov.html">stl_function.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">17&nbsp;/&nbsp;17&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="stl_heap.h.gcov.html">stl_heap.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../snow.png" width=100 height=10 alt="0.0%"></td></tr></table>
+ </td>
+ <td class="coverPerLo">0.0&nbsp;%</td>
+ <td class="coverNumLo">0&nbsp;/&nbsp;92&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="stl_iterator.h.gcov.html">stl_iterator.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=94 height=10 alt="93.9%"><img src="../../../../../snow.png" width=6 height=10 alt="93.9%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">93.9&nbsp;%</td>
+ <td class="coverNumHi">62&nbsp;/&nbsp;66&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="stl_iterator_base_funcs.h.gcov.html">stl_iterator_base_funcs.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=82 height=10 alt="82.1%"><img src="../../../../../snow.png" width=18 height=10 alt="82.1%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">82.1&nbsp;%</td>
+ <td class="coverNumHi">23&nbsp;/&nbsp;28&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="stl_iterator_base_types.h.gcov.html">stl_iterator_base_types.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">3&nbsp;/&nbsp;3&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="stl_list.h.gcov.html">stl_list.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=94 height=10 alt="93.6%"><img src="../../../../../snow.png" width=6 height=10 alt="93.6%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">93.6&nbsp;%</td>
+ <td class="coverNumHi">88&nbsp;/&nbsp;94&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="stl_map.h.gcov.html">stl_map.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">41&nbsp;/&nbsp;41&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="stl_move.h.gcov.html">stl_move.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">5&nbsp;/&nbsp;5&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="stl_pair.h.gcov.html">stl_pair.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">9&nbsp;/&nbsp;9&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="stl_set.h.gcov.html">stl_set.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">33&nbsp;/&nbsp;33&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="stl_stack.h.gcov.html">stl_stack.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">12&nbsp;/&nbsp;12&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="stl_tree.h.gcov.html">stl_tree.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=94 height=10 alt="94.2%"><img src="../../../../../snow.png" width=6 height=10 alt="94.2%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">94.2&nbsp;%</td>
+ <td class="coverNumHi">278&nbsp;/&nbsp;295&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="stl_uninitialized.h.gcov.html">stl_uninitialized.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=58 height=10 alt="58.1%"><img src="../../../../../snow.png" width=42 height=10 alt="58.1%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">58.1&nbsp;%</td>
+ <td class="coverNumHi">25&nbsp;/&nbsp;43&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="stl_vector.h.gcov.html">stl_vector.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=91 height=10 alt="91.3%"><img src="../../../../../snow.png" width=9 height=10 alt="91.3%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">91.3&nbsp;%</td>
+ <td class="coverNumHi">94&nbsp;/&nbsp;103&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="stream_iterator.h.gcov.html">stream_iterator.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">33&nbsp;/&nbsp;33&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="vector.tcc.gcov.html">vector.tcc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=75 height=10 alt="75.0%"><img src="../../../../../snow.png" width=25 height=10 alt="75.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">75.0&nbsp;%</td>
+ <td class="coverNumHi">72&nbsp;/&nbsp;96&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/ios_base.h.gcov.html b/rep/usr/include/c++/4.3/bits/ios_base.h.gcov.html
new file mode 100644
index 0000000..091c26d
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/ios_base.h.gcov.html
@@ -0,0 +1,1039 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/ios_base.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - ios_base.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">30</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">66.7 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">20</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Iostreams base classes -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+<span class="lineNum"> 4 </span> : // 2006, 2007, 2008
+<span class="lineNum"> 5 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 6 </span> : //
+<span class="lineNum"> 7 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 8 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 9 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 10 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 11 </span> : // any later version.
+<span class="lineNum"> 12 </span> :
+<span class="lineNum"> 13 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 14 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 15 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 16 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 17 </span> :
+<span class="lineNum"> 18 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 19 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 20 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 21 </span> : // USA.
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 24 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 25 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 26 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 27 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 28 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 29 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 30 </span> : // the GNU General Public License.
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : /** @file ios_base.h
+<span class="lineNum"> 33 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 34 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 35 </span> : */
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : //
+<span class="lineNum"> 38 </span> : // ISO C++ 14882: 27.4 Iostreams base classes
+<span class="lineNum"> 39 </span> : //
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : #ifndef _IOS_BASE_H
+<span class="lineNum"> 42 </span> : #define _IOS_BASE_H 1
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span> : #pragma GCC system_header
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> : #include &lt;ext/atomicity.h&gt;
+<span class="lineNum"> 47 </span> : #include &lt;bits/localefwd.h&gt;
+<span class="lineNum"> 48 </span> : #include &lt;bits/locale_classes.h&gt;
+<span class="lineNum"> 49 </span> : #include &lt;cstdio&gt; // For SEEK_CUR, SEEK_END
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span> : // The following definitions of bitmask types are enums, not ints,
+<span class="lineNum"> 54 </span> : // as permitted (but not required) in the standard, in order to provide
+<span class="lineNum"> 55 </span> : // better type safety in iostream calls. A side effect is that
+<span class="lineNum"> 56 </span> : // expressions involving them are no longer compile-time constants.
+<span class="lineNum"> 57 </span> : enum _Ios_Fmtflags
+<span class="lineNum"> 58 </span> : {
+<span class="lineNum"> 59 </span> : _S_boolalpha = 1L &lt;&lt; 0,
+<span class="lineNum"> 60 </span> : _S_dec = 1L &lt;&lt; 1,
+<span class="lineNum"> 61 </span> : _S_fixed = 1L &lt;&lt; 2,
+<span class="lineNum"> 62 </span> : _S_hex = 1L &lt;&lt; 3,
+<span class="lineNum"> 63 </span> : _S_internal = 1L &lt;&lt; 4,
+<span class="lineNum"> 64 </span> : _S_left = 1L &lt;&lt; 5,
+<span class="lineNum"> 65 </span> : _S_oct = 1L &lt;&lt; 6,
+<span class="lineNum"> 66 </span> : _S_right = 1L &lt;&lt; 7,
+<span class="lineNum"> 67 </span> : _S_scientific = 1L &lt;&lt; 8,
+<span class="lineNum"> 68 </span> : _S_showbase = 1L &lt;&lt; 9,
+<span class="lineNum"> 69 </span> : _S_showpoint = 1L &lt;&lt; 10,
+<span class="lineNum"> 70 </span> : _S_showpos = 1L &lt;&lt; 11,
+<span class="lineNum"> 71 </span> : _S_skipws = 1L &lt;&lt; 12,
+<span class="lineNum"> 72 </span> : _S_unitbuf = 1L &lt;&lt; 13,
+<span class="lineNum"> 73 </span> : _S_uppercase = 1L &lt;&lt; 14,
+<span class="lineNum"> 74 </span> : _S_adjustfield = _S_left | _S_right | _S_internal,
+<span class="lineNum"> 75 </span> : _S_basefield = _S_dec | _S_oct | _S_hex,
+<span class="lineNum"> 76 </span> : _S_floatfield = _S_scientific | _S_fixed,
+<span class="lineNum"> 77 </span> : _S_ios_fmtflags_end = 1L &lt;&lt; 16
+<span class="lineNum"> 78 </span> : };
+<span class="lineNum"> 79 </span> :
+<span class="lineNum"> 80 </span> : inline _Ios_Fmtflags
+<span class="lineNum"> 81 </span><span class="lineCov"> 66 : operator&amp;(_Ios_Fmtflags __a, _Ios_Fmtflags __b)</span>
+<span class="lineNum"> 82 </span><span class="lineCov"> 66 : { return _Ios_Fmtflags(static_cast&lt;int&gt;(__a) &amp; static_cast&lt;int&gt;(__b)); }</span>
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span> : inline _Ios_Fmtflags
+<span class="lineNum"> 85 </span><span class="lineCov"> 33 : operator|(_Ios_Fmtflags __a, _Ios_Fmtflags __b)</span>
+<span class="lineNum"> 86 </span><span class="lineCov"> 33 : { return _Ios_Fmtflags(static_cast&lt;int&gt;(__a) | static_cast&lt;int&gt;(__b)); }</span>
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span> : inline _Ios_Fmtflags
+<span class="lineNum"> 89 </span> : operator^(_Ios_Fmtflags __a, _Ios_Fmtflags __b)
+<span class="lineNum"> 90 </span> : { return _Ios_Fmtflags(static_cast&lt;int&gt;(__a) ^ static_cast&lt;int&gt;(__b)); }
+<span class="lineNum"> 91 </span> :
+<span class="lineNum"> 92 </span> : inline _Ios_Fmtflags&amp;
+<span class="lineNum"> 93 </span><span class="lineCov"> 33 : operator|=(_Ios_Fmtflags&amp; __a, _Ios_Fmtflags __b)</span>
+<span class="lineNum"> 94 </span><span class="lineCov"> 33 : { return __a = __a | __b; }</span>
+<span class="lineNum"> 95 </span> :
+<span class="lineNum"> 96 </span> : inline _Ios_Fmtflags&amp;
+<span class="lineNum"> 97 </span><span class="lineCov"> 33 : operator&amp;=(_Ios_Fmtflags&amp; __a, _Ios_Fmtflags __b)</span>
+<span class="lineNum"> 98 </span><span class="lineCov"> 33 : { return __a = __a &amp; __b; }</span>
+<span class="lineNum"> 99 </span> :
+<span class="lineNum"> 100 </span> : inline _Ios_Fmtflags&amp;
+<span class="lineNum"> 101 </span> : operator^=(_Ios_Fmtflags&amp; __a, _Ios_Fmtflags __b)
+<span class="lineNum"> 102 </span> : { return __a = __a ^ __b; }
+<span class="lineNum"> 103 </span> :
+<span class="lineNum"> 104 </span> : inline _Ios_Fmtflags
+<span class="lineNum"> 105 </span><span class="lineCov"> 33 : operator~(_Ios_Fmtflags __a)</span>
+<span class="lineNum"> 106 </span><span class="lineCov"> 33 : { return _Ios_Fmtflags(~static_cast&lt;int&gt;(__a)); }</span>
+<span class="lineNum"> 107 </span> :
+<span class="lineNum"> 108 </span> :
+<span class="lineNum"> 109 </span> : enum _Ios_Openmode
+<span class="lineNum"> 110 </span> : {
+<span class="lineNum"> 111 </span> : _S_app = 1L &lt;&lt; 0,
+<span class="lineNum"> 112 </span> : _S_ate = 1L &lt;&lt; 1,
+<span class="lineNum"> 113 </span> : _S_bin = 1L &lt;&lt; 2,
+<span class="lineNum"> 114 </span> : _S_in = 1L &lt;&lt; 3,
+<span class="lineNum"> 115 </span> : _S_out = 1L &lt;&lt; 4,
+<span class="lineNum"> 116 </span> : _S_trunc = 1L &lt;&lt; 5,
+<span class="lineNum"> 117 </span> : _S_ios_openmode_end = 1L &lt;&lt; 16
+<span class="lineNum"> 118 </span> : };
+<span class="lineNum"> 119 </span> :
+<span class="lineNum"> 120 </span> : inline _Ios_Openmode
+<span class="lineNum"> 121 </span><span class="lineNoCov"> 0 : operator&amp;(_Ios_Openmode __a, _Ios_Openmode __b)</span>
+<span class="lineNum"> 122 </span><span class="lineNoCov"> 0 : { return _Ios_Openmode(static_cast&lt;int&gt;(__a) &amp; static_cast&lt;int&gt;(__b)); }</span>
+<span class="lineNum"> 123 </span> :
+<span class="lineNum"> 124 </span> : inline _Ios_Openmode
+<span class="lineNum"> 125 </span><span class="lineCov"> 1364 : operator|(_Ios_Openmode __a, _Ios_Openmode __b)</span>
+<span class="lineNum"> 126 </span><span class="lineCov"> 1364 : { return _Ios_Openmode(static_cast&lt;int&gt;(__a) | static_cast&lt;int&gt;(__b)); }</span>
+<span class="lineNum"> 127 </span> :
+<span class="lineNum"> 128 </span> : inline _Ios_Openmode
+<span class="lineNum"> 129 </span> : operator^(_Ios_Openmode __a, _Ios_Openmode __b)
+<span class="lineNum"> 130 </span> : { return _Ios_Openmode(static_cast&lt;int&gt;(__a) ^ static_cast&lt;int&gt;(__b)); }
+<span class="lineNum"> 131 </span> :
+<span class="lineNum"> 132 </span> : inline _Ios_Openmode&amp;
+<span class="lineNum"> 133 </span> : operator|=(_Ios_Openmode&amp; __a, _Ios_Openmode __b)
+<span class="lineNum"> 134 </span> : { return __a = __a | __b; }
+<span class="lineNum"> 135 </span> :
+<span class="lineNum"> 136 </span> : inline _Ios_Openmode&amp;
+<span class="lineNum"> 137 </span> : operator&amp;=(_Ios_Openmode&amp; __a, _Ios_Openmode __b)
+<span class="lineNum"> 138 </span> : { return __a = __a &amp; __b; }
+<span class="lineNum"> 139 </span> :
+<span class="lineNum"> 140 </span> : inline _Ios_Openmode&amp;
+<span class="lineNum"> 141 </span> : operator^=(_Ios_Openmode&amp; __a, _Ios_Openmode __b)
+<span class="lineNum"> 142 </span> : { return __a = __a ^ __b; }
+<span class="lineNum"> 143 </span> :
+<span class="lineNum"> 144 </span> : inline _Ios_Openmode
+<span class="lineNum"> 145 </span> : operator~(_Ios_Openmode __a)
+<span class="lineNum"> 146 </span> : { return _Ios_Openmode(~static_cast&lt;int&gt;(__a)); }
+<span class="lineNum"> 147 </span> :
+<span class="lineNum"> 148 </span> :
+<span class="lineNum"> 149 </span> : enum _Ios_Iostate
+<span class="lineNum"> 150 </span> : {
+<span class="lineNum"> 151 </span> : _S_goodbit = 0,
+<span class="lineNum"> 152 </span> : _S_badbit = 1L &lt;&lt; 0,
+<span class="lineNum"> 153 </span> : _S_eofbit = 1L &lt;&lt; 1,
+<span class="lineNum"> 154 </span> : _S_failbit = 1L &lt;&lt; 2,
+<span class="lineNum"> 155 </span> : _S_ios_iostate_end = 1L &lt;&lt; 16
+<span class="lineNum"> 156 </span> : };
+<span class="lineNum"> 157 </span> :
+<span class="lineNum"> 158 </span> : inline _Ios_Iostate
+<span class="lineNum"> 159 </span><span class="lineNoCov"> 0 : operator&amp;(_Ios_Iostate __a, _Ios_Iostate __b)</span>
+<span class="lineNum"> 160 </span><span class="lineNoCov"> 0 : { return _Ios_Iostate(static_cast&lt;int&gt;(__a) &amp; static_cast&lt;int&gt;(__b)); }</span>
+<span class="lineNum"> 161 </span> :
+<span class="lineNum"> 162 </span> : inline _Ios_Iostate
+<span class="lineNum"> 163 </span><span class="lineNoCov"> 0 : operator|(_Ios_Iostate __a, _Ios_Iostate __b)</span>
+<span class="lineNum"> 164 </span><span class="lineNoCov"> 0 : { return _Ios_Iostate(static_cast&lt;int&gt;(__a) | static_cast&lt;int&gt;(__b)); }</span>
+<span class="lineNum"> 165 </span> :
+<span class="lineNum"> 166 </span> : inline _Ios_Iostate
+<span class="lineNum"> 167 </span> : operator^(_Ios_Iostate __a, _Ios_Iostate __b)
+<span class="lineNum"> 168 </span> : { return _Ios_Iostate(static_cast&lt;int&gt;(__a) ^ static_cast&lt;int&gt;(__b)); }
+<span class="lineNum"> 169 </span> :
+<span class="lineNum"> 170 </span> : inline _Ios_Iostate&amp;
+<span class="lineNum"> 171 </span> : operator|=(_Ios_Iostate&amp; __a, _Ios_Iostate __b)
+<span class="lineNum"> 172 </span> : { return __a = __a | __b; }
+<span class="lineNum"> 173 </span> :
+<span class="lineNum"> 174 </span> : inline _Ios_Iostate&amp;
+<span class="lineNum"> 175 </span> : operator&amp;=(_Ios_Iostate&amp; __a, _Ios_Iostate __b)
+<span class="lineNum"> 176 </span> : { return __a = __a &amp; __b; }
+<span class="lineNum"> 177 </span> :
+<span class="lineNum"> 178 </span> : inline _Ios_Iostate&amp;
+<span class="lineNum"> 179 </span> : operator^=(_Ios_Iostate&amp; __a, _Ios_Iostate __b)
+<span class="lineNum"> 180 </span> : { return __a = __a ^ __b; }
+<span class="lineNum"> 181 </span> :
+<span class="lineNum"> 182 </span> : inline _Ios_Iostate
+<span class="lineNum"> 183 </span> : operator~(_Ios_Iostate __a)
+<span class="lineNum"> 184 </span> : { return _Ios_Iostate(~static_cast&lt;int&gt;(__a)); }
+<span class="lineNum"> 185 </span> :
+<span class="lineNum"> 186 </span> : enum _Ios_Seekdir
+<span class="lineNum"> 187 </span> : {
+<span class="lineNum"> 188 </span> : _S_beg = 0,
+<span class="lineNum"> 189 </span> : _S_cur = SEEK_CUR,
+<span class="lineNum"> 190 </span> : _S_end = SEEK_END,
+<span class="lineNum"> 191 </span> : _S_ios_seekdir_end = 1L &lt;&lt; 16
+<span class="lineNum"> 192 </span> : };
+<span class="lineNum"> 193 </span> :
+<span class="lineNum"> 194 </span> : // 27.4.2 Class ios_base
+<span class="lineNum"> 195 </span> : /**
+<span class="lineNum"> 196 </span> : * @brief The base of the I/O class hierarchy.
+<span class="lineNum"> 197 </span> : *
+<span class="lineNum"> 198 </span> : * This class defines everything that can be defined about I/O that does
+<span class="lineNum"> 199 </span> : * not depend on the type of characters being input or output. Most
+<span class="lineNum"> 200 </span> : * people will only see @c ios_base when they need to specify the full
+<span class="lineNum"> 201 </span> : * name of the various I/O flags (e.g., the openmodes).
+<span class="lineNum"> 202 </span> : */
+<span class="lineNum"> 203 </span> : class ios_base
+<span class="lineNum"> 204 </span> : {
+<span class="lineNum"> 205 </span> : public:
+<span class="lineNum"> 206 </span> :
+<span class="lineNum"> 207 </span> : // 27.4.2.1.1 Class ios_base::failure
+<span class="lineNum"> 208 </span> : /// These are thrown to indicate problems. Doc me.
+<span class="lineNum"> 209 </span> : class failure : public exception
+<span class="lineNum"> 210 </span> : {
+<span class="lineNum"> 211 </span> : public:
+<span class="lineNum"> 212 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 213 </span> : // 48. Use of non-existent exception constructor
+<span class="lineNum"> 214 </span> : explicit
+<span class="lineNum"> 215 </span> : failure(const string&amp; __str) throw();
+<span class="lineNum"> 216 </span> :
+<span class="lineNum"> 217 </span> : // This declaration is not useless:
+<span class="lineNum"> 218 </span> : // http://gcc.gnu.org/onlinedocs/gcc-3.0.2/gcc_6.html#SEC118
+<span class="lineNum"> 219 </span> : virtual
+<span class="lineNum"> 220 </span> : ~failure() throw();
+<span class="lineNum"> 221 </span> :
+<span class="lineNum"> 222 </span> : virtual const char*
+<span class="lineNum"> 223 </span> : what() const throw();
+<span class="lineNum"> 224 </span> :
+<span class="lineNum"> 225 </span> : private:
+<span class="lineNum"> 226 </span> : string _M_msg;
+<span class="lineNum"> 227 </span> : };
+<span class="lineNum"> 228 </span> :
+<span class="lineNum"> 229 </span> : // 27.4.2.1.2 Type ios_base::fmtflags
+<span class="lineNum"> 230 </span> : /**
+<span class="lineNum"> 231 </span> : * @brief This is a bitmask type.
+<span class="lineNum"> 232 </span> : *
+<span class="lineNum"> 233 </span> : * @c &quot;_Ios_Fmtflags&quot; is implementation-defined, but it is valid to
+<span class="lineNum"> 234 </span> : * perform bitwise operations on these values and expect the Right
+<span class="lineNum"> 235 </span> : * Thing to happen. Defined objects of type fmtflags are:
+<span class="lineNum"> 236 </span> : * - boolalpha
+<span class="lineNum"> 237 </span> : * - dec
+<span class="lineNum"> 238 </span> : * - fixed
+<span class="lineNum"> 239 </span> : * - hex
+<span class="lineNum"> 240 </span> : * - internal
+<span class="lineNum"> 241 </span> : * - left
+<span class="lineNum"> 242 </span> : * - oct
+<span class="lineNum"> 243 </span> : * - right
+<span class="lineNum"> 244 </span> : * - scientific
+<span class="lineNum"> 245 </span> : * - showbase
+<span class="lineNum"> 246 </span> : * - showpoint
+<span class="lineNum"> 247 </span> : * - showpos
+<span class="lineNum"> 248 </span> : * - skipws
+<span class="lineNum"> 249 </span> : * - unitbuf
+<span class="lineNum"> 250 </span> : * - uppercase
+<span class="lineNum"> 251 </span> : * - adjustfield
+<span class="lineNum"> 252 </span> : * - basefield
+<span class="lineNum"> 253 </span> : * - floatfield
+<span class="lineNum"> 254 </span> : */
+<span class="lineNum"> 255 </span> : typedef _Ios_Fmtflags fmtflags;
+<span class="lineNum"> 256 </span> :
+<span class="lineNum"> 257 </span> : /// Insert/extract @c bool in alphabetic rather than numeric format.
+<span class="lineNum"> 258 </span> : static const fmtflags boolalpha = _S_boolalpha;
+<span class="lineNum"> 259 </span> :
+<span class="lineNum"> 260 </span> : /// Converts integer input or generates integer output in decimal base.
+<span class="lineNum"> 261 </span> : static const fmtflags dec = _S_dec;
+<span class="lineNum"> 262 </span> :
+<span class="lineNum"> 263 </span> : /// Generate floating-point output in fixed-point notation.
+<span class="lineNum"> 264 </span> : static const fmtflags fixed = _S_fixed;
+<span class="lineNum"> 265 </span> :
+<span class="lineNum"> 266 </span> : /// Converts integer input or generates integer output in hexadecimal base.
+<span class="lineNum"> 267 </span> : static const fmtflags hex = _S_hex;
+<span class="lineNum"> 268 </span> :
+<span class="lineNum"> 269 </span> : /// Adds fill characters at a designated internal point in certain
+<span class="lineNum"> 270 </span> : /// generated output, or identical to @c right if no such point is
+<span class="lineNum"> 271 </span> : /// designated.
+<span class="lineNum"> 272 </span> : static const fmtflags internal = _S_internal;
+<span class="lineNum"> 273 </span> :
+<span class="lineNum"> 274 </span> : /// Adds fill characters on the right (final positions) of certain
+<span class="lineNum"> 275 </span> : /// generated output. (I.e., the thing you print is flush left.)
+<span class="lineNum"> 276 </span> : static const fmtflags left = _S_left;
+<span class="lineNum"> 277 </span> :
+<span class="lineNum"> 278 </span> : /// Converts integer input or generates integer output in octal base.
+<span class="lineNum"> 279 </span> : static const fmtflags oct = _S_oct;
+<span class="lineNum"> 280 </span> :
+<span class="lineNum"> 281 </span> : /// Adds fill characters on the left (initial positions) of certain
+<span class="lineNum"> 282 </span> : /// generated output. (I.e., the thing you print is flush right.)
+<span class="lineNum"> 283 </span> : static const fmtflags right = _S_right;
+<span class="lineNum"> 284 </span> :
+<span class="lineNum"> 285 </span> : /// Generates floating-point output in scientific notation.
+<span class="lineNum"> 286 </span> : static const fmtflags scientific = _S_scientific;
+<span class="lineNum"> 287 </span> :
+<span class="lineNum"> 288 </span> : /// Generates a prefix indicating the numeric base of generated integer
+<span class="lineNum"> 289 </span> : /// output.
+<span class="lineNum"> 290 </span> : static const fmtflags showbase = _S_showbase;
+<span class="lineNum"> 291 </span> :
+<span class="lineNum"> 292 </span> : /// Generates a decimal-point character unconditionally in generated
+<span class="lineNum"> 293 </span> : /// floating-point output.
+<span class="lineNum"> 294 </span> : static const fmtflags showpoint = _S_showpoint;
+<span class="lineNum"> 295 </span> :
+<span class="lineNum"> 296 </span> : /// Generates a + sign in non-negative generated numeric output.
+<span class="lineNum"> 297 </span> : static const fmtflags showpos = _S_showpos;
+<span class="lineNum"> 298 </span> :
+<span class="lineNum"> 299 </span> : /// Skips leading white space before certain input operations.
+<span class="lineNum"> 300 </span> : static const fmtflags skipws = _S_skipws;
+<span class="lineNum"> 301 </span> :
+<span class="lineNum"> 302 </span> : /// Flushes output after each output operation.
+<span class="lineNum"> 303 </span> : static const fmtflags unitbuf = _S_unitbuf;
+<span class="lineNum"> 304 </span> :
+<span class="lineNum"> 305 </span> : /// Replaces certain lowercase letters with their uppercase equivalents
+<span class="lineNum"> 306 </span> : /// in generated output.
+<span class="lineNum"> 307 </span> : static const fmtflags uppercase = _S_uppercase;
+<span class="lineNum"> 308 </span> :
+<span class="lineNum"> 309 </span> : /// A mask of left|right|internal. Useful for the 2-arg form of @c setf.
+<span class="lineNum"> 310 </span> : static const fmtflags adjustfield = _S_adjustfield;
+<span class="lineNum"> 311 </span> :
+<span class="lineNum"> 312 </span> : /// A mask of dec|oct|hex. Useful for the 2-arg form of @c setf.
+<span class="lineNum"> 313 </span> : static const fmtflags basefield = _S_basefield;
+<span class="lineNum"> 314 </span> :
+<span class="lineNum"> 315 </span> : /// A mask of scientific|fixed. Useful for the 2-arg form of @c setf.
+<span class="lineNum"> 316 </span> : static const fmtflags floatfield = _S_floatfield;
+<span class="lineNum"> 317 </span> :
+<span class="lineNum"> 318 </span> : // 27.4.2.1.3 Type ios_base::iostate
+<span class="lineNum"> 319 </span> : /**
+<span class="lineNum"> 320 </span> : * @brief This is a bitmask type.
+<span class="lineNum"> 321 </span> : *
+<span class="lineNum"> 322 </span> : * @c &quot;_Ios_Iostate&quot; is implementation-defined, but it is valid to
+<span class="lineNum"> 323 </span> : * perform bitwise operations on these values and expect the Right
+<span class="lineNum"> 324 </span> : * Thing to happen. Defined objects of type iostate are:
+<span class="lineNum"> 325 </span> : * - badbit
+<span class="lineNum"> 326 </span> : * - eofbit
+<span class="lineNum"> 327 </span> : * - failbit
+<span class="lineNum"> 328 </span> : * - goodbit
+<span class="lineNum"> 329 </span> : */
+<span class="lineNum"> 330 </span> : typedef _Ios_Iostate iostate;
+<span class="lineNum"> 331 </span> :
+<span class="lineNum"> 332 </span> : /// Indicates a loss of integrity in an input or output sequence (such
+<span class="lineNum"> 333 </span> : /// as an irrecoverable read error from a file).
+<span class="lineNum"> 334 </span> : static const iostate badbit = _S_badbit;
+<span class="lineNum"> 335 </span> :
+<span class="lineNum"> 336 </span> : /// Indicates that an input operation reached the end of an input sequence.
+<span class="lineNum"> 337 </span> : static const iostate eofbit = _S_eofbit;
+<span class="lineNum"> 338 </span> :
+<span class="lineNum"> 339 </span> : /// Indicates that an input operation failed to read the expected
+<span class="lineNum"> 340 </span> : /// characters, or that an output operation failed to generate the
+<span class="lineNum"> 341 </span> : /// desired characters.
+<span class="lineNum"> 342 </span> : static const iostate failbit = _S_failbit;
+<span class="lineNum"> 343 </span> :
+<span class="lineNum"> 344 </span> : /// Indicates all is well.
+<span class="lineNum"> 345 </span> : static const iostate goodbit = _S_goodbit;
+<span class="lineNum"> 346 </span> :
+<span class="lineNum"> 347 </span> : // 27.4.2.1.4 Type ios_base::openmode
+<span class="lineNum"> 348 </span> : /**
+<span class="lineNum"> 349 </span> : * @brief This is a bitmask type.
+<span class="lineNum"> 350 </span> : *
+<span class="lineNum"> 351 </span> : * @c &quot;_Ios_Openmode&quot; is implementation-defined, but it is valid to
+<span class="lineNum"> 352 </span> : * perform bitwise operations on these values and expect the Right
+<span class="lineNum"> 353 </span> : * Thing to happen. Defined objects of type openmode are:
+<span class="lineNum"> 354 </span> : * - app
+<span class="lineNum"> 355 </span> : * - ate
+<span class="lineNum"> 356 </span> : * - binary
+<span class="lineNum"> 357 </span> : * - in
+<span class="lineNum"> 358 </span> : * - out
+<span class="lineNum"> 359 </span> : * - trunc
+<span class="lineNum"> 360 </span> : */
+<span class="lineNum"> 361 </span> : typedef _Ios_Openmode openmode;
+<span class="lineNum"> 362 </span> :
+<span class="lineNum"> 363 </span> : /// Seek to end before each write.
+<span class="lineNum"> 364 </span> : static const openmode app = _S_app;
+<span class="lineNum"> 365 </span> :
+<span class="lineNum"> 366 </span> : /// Open and seek to end immediately after opening.
+<span class="lineNum"> 367 </span> : static const openmode ate = _S_ate;
+<span class="lineNum"> 368 </span> :
+<span class="lineNum"> 369 </span> : /// Perform input and output in binary mode (as opposed to text mode).
+<span class="lineNum"> 370 </span> : /// This is probably not what you think it is; see
+<span class="lineNum"> 371 </span> : /// http://gcc.gnu.org/onlinedocs/libstdc++/27_io/howto.html#3 and
+<span class="lineNum"> 372 </span> : /// http://gcc.gnu.org/onlinedocs/libstdc++/27_io/howto.html#7 for more.
+<span class="lineNum"> 373 </span> : static const openmode binary = _S_bin;
+<span class="lineNum"> 374 </span> :
+<span class="lineNum"> 375 </span> : /// Open for input. Default for @c ifstream and fstream.
+<span class="lineNum"> 376 </span> : static const openmode in = _S_in;
+<span class="lineNum"> 377 </span> :
+<span class="lineNum"> 378 </span> : /// Open for output. Default for @c ofstream and fstream.
+<span class="lineNum"> 379 </span> : static const openmode out = _S_out;
+<span class="lineNum"> 380 </span> :
+<span class="lineNum"> 381 </span> : /// Open for input. Default for @c ofstream.
+<span class="lineNum"> 382 </span> : static const openmode trunc = _S_trunc;
+<span class="lineNum"> 383 </span> :
+<span class="lineNum"> 384 </span> : // 27.4.2.1.5 Type ios_base::seekdir
+<span class="lineNum"> 385 </span> : /**
+<span class="lineNum"> 386 </span> : * @brief This is an enumerated type.
+<span class="lineNum"> 387 </span> : *
+<span class="lineNum"> 388 </span> : * @c &quot;_Ios_Seekdir&quot; is implementation-defined. Defined values
+<span class="lineNum"> 389 </span> : * of type seekdir are:
+<span class="lineNum"> 390 </span> : * - beg
+<span class="lineNum"> 391 </span> : * - cur, equivalent to @c SEEK_CUR in the C standard library.
+<span class="lineNum"> 392 </span> : * - end, equivalent to @c SEEK_END in the C standard library.
+<span class="lineNum"> 393 </span> : */
+<span class="lineNum"> 394 </span> : typedef _Ios_Seekdir seekdir;
+<span class="lineNum"> 395 </span> :
+<span class="lineNum"> 396 </span> : /// Request a seek relative to the beginning of the stream.
+<span class="lineNum"> 397 </span> : static const seekdir beg = _S_beg;
+<span class="lineNum"> 398 </span> :
+<span class="lineNum"> 399 </span> : /// Request a seek relative to the current position within the sequence.
+<span class="lineNum"> 400 </span> : static const seekdir cur = _S_cur;
+<span class="lineNum"> 401 </span> :
+<span class="lineNum"> 402 </span> : /// Request a seek relative to the current end of the sequence.
+<span class="lineNum"> 403 </span> : static const seekdir end = _S_end;
+<span class="lineNum"> 404 </span> :
+<span class="lineNum"> 405 </span> : // Annex D.6
+<span class="lineNum"> 406 </span> : typedef int io_state;
+<span class="lineNum"> 407 </span> : typedef int open_mode;
+<span class="lineNum"> 408 </span> : typedef int seek_dir;
+<span class="lineNum"> 409 </span> :
+<span class="lineNum"> 410 </span> : typedef std::streampos streampos;
+<span class="lineNum"> 411 </span> : typedef std::streamoff streamoff;
+<span class="lineNum"> 412 </span> :
+<span class="lineNum"> 413 </span> : // Callbacks;
+<span class="lineNum"> 414 </span> : /**
+<span class="lineNum"> 415 </span> : * @brief The set of events that may be passed to an event callback.
+<span class="lineNum"> 416 </span> : *
+<span class="lineNum"> 417 </span> : * erase_event is used during ~ios() and copyfmt(). imbue_event is used
+<span class="lineNum"> 418 </span> : * during imbue(). copyfmt_event is used during copyfmt().
+<span class="lineNum"> 419 </span> : */
+<span class="lineNum"> 420 </span> : enum event
+<span class="lineNum"> 421 </span> : {
+<span class="lineNum"> 422 </span> : erase_event,
+<span class="lineNum"> 423 </span> : imbue_event,
+<span class="lineNum"> 424 </span> : copyfmt_event
+<span class="lineNum"> 425 </span> : };
+<span class="lineNum"> 426 </span> :
+<span class="lineNum"> 427 </span> : /**
+<span class="lineNum"> 428 </span> : * @brief The type of an event callback function.
+<span class="lineNum"> 429 </span> : * @param event One of the members of the event enum.
+<span class="lineNum"> 430 </span> : * @param ios_base Reference to the ios_base object.
+<span class="lineNum"> 431 </span> : * @param int The integer provided when the callback was registered.
+<span class="lineNum"> 432 </span> : *
+<span class="lineNum"> 433 </span> : * Event callbacks are user defined functions that get called during
+<span class="lineNum"> 434 </span> : * several ios_base and basic_ios functions, specifically imbue(),
+<span class="lineNum"> 435 </span> : * copyfmt(), and ~ios().
+<span class="lineNum"> 436 </span> : */
+<span class="lineNum"> 437 </span> : typedef void (*event_callback) (event, ios_base&amp;, int);
+<span class="lineNum"> 438 </span> :
+<span class="lineNum"> 439 </span> : /**
+<span class="lineNum"> 440 </span> : * @brief Add the callback __fn with parameter __index.
+<span class="lineNum"> 441 </span> : * @param __fn The function to add.
+<span class="lineNum"> 442 </span> : * @param __index The integer to pass to the function when invoked.
+<span class="lineNum"> 443 </span> : *
+<span class="lineNum"> 444 </span> : * Registers a function as an event callback with an integer parameter to
+<span class="lineNum"> 445 </span> : * be passed to the function when invoked. Multiple copies of the
+<span class="lineNum"> 446 </span> : * function are allowed. If there are multiple callbacks, they are
+<span class="lineNum"> 447 </span> : * invoked in the order they were registered.
+<span class="lineNum"> 448 </span> : */
+<span class="lineNum"> 449 </span> : void
+<span class="lineNum"> 450 </span> : register_callback(event_callback __fn, int __index);
+<span class="lineNum"> 451 </span> :
+<span class="lineNum"> 452 </span> : protected:
+<span class="lineNum"> 453 </span> : //@{
+<span class="lineNum"> 454 </span> : /**
+<span class="lineNum"> 455 </span> : * ios_base data members (doc me)
+<span class="lineNum"> 456 </span> : */
+<span class="lineNum"> 457 </span> : streamsize _M_precision;
+<span class="lineNum"> 458 </span> : streamsize _M_width;
+<span class="lineNum"> 459 </span> : fmtflags _M_flags;
+<span class="lineNum"> 460 </span> : iostate _M_exception;
+<span class="lineNum"> 461 </span> : iostate _M_streambuf_state;
+<span class="lineNum"> 462 </span> : //@}
+<span class="lineNum"> 463 </span> :
+<span class="lineNum"> 464 </span> : // 27.4.2.6 Members for callbacks
+<span class="lineNum"> 465 </span> : // 27.4.2.6 ios_base callbacks
+<span class="lineNum"> 466 </span> : struct _Callback_list
+<span class="lineNum"> 467 </span> : {
+<span class="lineNum"> 468 </span> : // Data Members
+<span class="lineNum"> 469 </span> : _Callback_list* _M_next;
+<span class="lineNum"> 470 </span> : ios_base::event_callback _M_fn;
+<span class="lineNum"> 471 </span> : int _M_index;
+<span class="lineNum"> 472 </span> : _Atomic_word _M_refcount; // 0 means one reference.
+<span class="lineNum"> 473 </span> :
+<span class="lineNum"> 474 </span> : _Callback_list(ios_base::event_callback __fn, int __index,
+<span class="lineNum"> 475 </span> : _Callback_list* __cb)
+<span class="lineNum"> 476 </span> : : _M_next(__cb), _M_fn(__fn), _M_index(__index), _M_refcount(0) { }
+<span class="lineNum"> 477 </span> :
+<span class="lineNum"> 478 </span> : void
+<span class="lineNum"> 479 </span> : _M_add_reference() { __gnu_cxx::__atomic_add_dispatch(&amp;_M_refcount, 1); }
+<span class="lineNum"> 480 </span> :
+<span class="lineNum"> 481 </span> : // 0 =&gt; OK to delete.
+<span class="lineNum"> 482 </span> : int
+<span class="lineNum"> 483 </span> : _M_remove_reference()
+<span class="lineNum"> 484 </span> : { return __gnu_cxx::__exchange_and_add_dispatch(&amp;_M_refcount, -1); }
+<span class="lineNum"> 485 </span> : };
+<span class="lineNum"> 486 </span> :
+<span class="lineNum"> 487 </span> : _Callback_list* _M_callbacks;
+<span class="lineNum"> 488 </span> :
+<span class="lineNum"> 489 </span> : void
+<span class="lineNum"> 490 </span> : _M_call_callbacks(event __ev) throw();
+<span class="lineNum"> 491 </span> :
+<span class="lineNum"> 492 </span> : void
+<span class="lineNum"> 493 </span> : _M_dispose_callbacks(void);
+<span class="lineNum"> 494 </span> :
+<span class="lineNum"> 495 </span> : // 27.4.2.5 Members for iword/pword storage
+<span class="lineNum"> 496 </span> : struct _Words
+<span class="lineNum"> 497 </span> : {
+<span class="lineNum"> 498 </span> : void* _M_pword;
+<span class="lineNum"> 499 </span> : long _M_iword;
+<span class="lineNum"> 500 </span> : _Words() : _M_pword(0), _M_iword(0) { }
+<span class="lineNum"> 501 </span> : };
+<span class="lineNum"> 502 </span> :
+<span class="lineNum"> 503 </span> : // Only for failed iword/pword calls.
+<span class="lineNum"> 504 </span> : _Words _M_word_zero;
+<span class="lineNum"> 505 </span> :
+<span class="lineNum"> 506 </span> : // Guaranteed storage.
+<span class="lineNum"> 507 </span> : // The first 5 iword and pword slots are reserved for internal use.
+<span class="lineNum"> 508 </span> : enum { _S_local_word_size = 8 };
+<span class="lineNum"> 509 </span> : _Words _M_local_word[_S_local_word_size];
+<span class="lineNum"> 510 </span> :
+<span class="lineNum"> 511 </span> : // Allocated storage.
+<span class="lineNum"> 512 </span> : int _M_word_size;
+<span class="lineNum"> 513 </span> : _Words* _M_word;
+<span class="lineNum"> 514 </span> :
+<span class="lineNum"> 515 </span> : _Words&amp;
+<span class="lineNum"> 516 </span> : _M_grow_words(int __index, bool __iword);
+<span class="lineNum"> 517 </span> :
+<span class="lineNum"> 518 </span> : // Members for locale and locale caching.
+<span class="lineNum"> 519 </span> : locale _M_ios_locale;
+<span class="lineNum"> 520 </span> :
+<span class="lineNum"> 521 </span> : void
+<span class="lineNum"> 522 </span> : _M_init();
+<span class="lineNum"> 523 </span> :
+<span class="lineNum"> 524 </span> : public:
+<span class="lineNum"> 525 </span> :
+<span class="lineNum"> 526 </span> : // 27.4.2.1.6 Class ios_base::Init
+<span class="lineNum"> 527 </span> : // Used to initialize standard streams. In theory, g++ could use
+<span class="lineNum"> 528 </span> : // -finit-priority to order this stuff correctly without going
+<span class="lineNum"> 529 </span> : // through these machinations.
+<span class="lineNum"> 530 </span> : class Init
+<span class="lineNum"> 531 </span> : {
+<span class="lineNum"> 532 </span> : friend class ios_base;
+<span class="lineNum"> 533 </span> : public:
+<span class="lineNum"> 534 </span> : Init();
+<span class="lineNum"> 535 </span> : ~Init();
+<span class="lineNum"> 536 </span> :
+<span class="lineNum"> 537 </span> : private:
+<span class="lineNum"> 538 </span> : static _Atomic_word _S_refcount;
+<span class="lineNum"> 539 </span> : static bool _S_synced_with_stdio;
+<span class="lineNum"> 540 </span> : };
+<span class="lineNum"> 541 </span> :
+<span class="lineNum"> 542 </span> : // [27.4.2.2] fmtflags state functions
+<span class="lineNum"> 543 </span> : /**
+<span class="lineNum"> 544 </span> : * @brief Access to format flags.
+<span class="lineNum"> 545 </span> : * @return The format control flags for both input and output.
+<span class="lineNum"> 546 </span> : */
+<span class="lineNum"> 547 </span> : fmtflags
+<span class="lineNum"> 548 </span> : flags() const
+<span class="lineNum"> 549 </span> : { return _M_flags; }
+<span class="lineNum"> 550 </span> :
+<span class="lineNum"> 551 </span> : /**
+<span class="lineNum"> 552 </span> : * @brief Setting new format flags all at once.
+<span class="lineNum"> 553 </span> : * @param fmtfl The new flags to set.
+<span class="lineNum"> 554 </span> : * @return The previous format control flags.
+<span class="lineNum"> 555 </span> : *
+<span class="lineNum"> 556 </span> : * This function overwrites all the format flags with @a fmtfl.
+<span class="lineNum"> 557 </span> : */
+<span class="lineNum"> 558 </span> : fmtflags
+<span class="lineNum"> 559 </span> : flags(fmtflags __fmtfl)
+<span class="lineNum"> 560 </span> : {
+<span class="lineNum"> 561 </span> : fmtflags __old = _M_flags;
+<span class="lineNum"> 562 </span> : _M_flags = __fmtfl;
+<span class="lineNum"> 563 </span> : return __old;
+<span class="lineNum"> 564 </span> : }
+<span class="lineNum"> 565 </span> :
+<span class="lineNum"> 566 </span> : /**
+<span class="lineNum"> 567 </span> : * @brief Setting new format flags.
+<span class="lineNum"> 568 </span> : * @param fmtfl Additional flags to set.
+<span class="lineNum"> 569 </span> : * @return The previous format control flags.
+<span class="lineNum"> 570 </span> : *
+<span class="lineNum"> 571 </span> : * This function sets additional flags in format control. Flags that
+<span class="lineNum"> 572 </span> : * were previously set remain set.
+<span class="lineNum"> 573 </span> : */
+<span class="lineNum"> 574 </span> : fmtflags
+<span class="lineNum"> 575 </span> : setf(fmtflags __fmtfl)
+<span class="lineNum"> 576 </span> : {
+<span class="lineNum"> 577 </span> : fmtflags __old = _M_flags;
+<span class="lineNum"> 578 </span> : _M_flags |= __fmtfl;
+<span class="lineNum"> 579 </span> : return __old;
+<span class="lineNum"> 580 </span> : }
+<span class="lineNum"> 581 </span> :
+<span class="lineNum"> 582 </span> : /**
+<span class="lineNum"> 583 </span> : * @brief Setting new format flags.
+<span class="lineNum"> 584 </span> : * @param fmtfl Additional flags to set.
+<span class="lineNum"> 585 </span> : * @param mask The flags mask for @a fmtfl.
+<span class="lineNum"> 586 </span> : * @return The previous format control flags.
+<span class="lineNum"> 587 </span> : *
+<span class="lineNum"> 588 </span> : * This function clears @a mask in the format flags, then sets
+<span class="lineNum"> 589 </span> : * @a fmtfl @c &amp; @a mask. An example mask is @c ios_base::adjustfield.
+<span class="lineNum"> 590 </span> : */
+<span class="lineNum"> 591 </span> : fmtflags
+<span class="lineNum"> 592 </span><span class="lineCov"> 33 : setf(fmtflags __fmtfl, fmtflags __mask)</span>
+<span class="lineNum"> 593 </span> : {
+<span class="lineNum"> 594 </span><span class="lineCov"> 33 : fmtflags __old = _M_flags;</span>
+<span class="lineNum"> 595 </span><span class="lineCov"> 33 : _M_flags &amp;= ~__mask;</span>
+<span class="lineNum"> 596 </span><span class="lineCov"> 33 : _M_flags |= (__fmtfl &amp; __mask);</span>
+<span class="lineNum"> 597 </span><span class="lineCov"> 33 : return __old;</span>
+<span class="lineNum"> 598 </span> : }
+<span class="lineNum"> 599 </span> :
+<span class="lineNum"> 600 </span> : /**
+<span class="lineNum"> 601 </span> : * @brief Clearing format flags.
+<span class="lineNum"> 602 </span> : * @param mask The flags to unset.
+<span class="lineNum"> 603 </span> : *
+<span class="lineNum"> 604 </span> : * This function clears @a mask in the format flags.
+<span class="lineNum"> 605 </span> : */
+<span class="lineNum"> 606 </span> : void
+<span class="lineNum"> 607 </span> : unsetf(fmtflags __mask)
+<span class="lineNum"> 608 </span> : { _M_flags &amp;= ~__mask; }
+<span class="lineNum"> 609 </span> :
+<span class="lineNum"> 610 </span> : /**
+<span class="lineNum"> 611 </span> : * @brief Flags access.
+<span class="lineNum"> 612 </span> : * @return The precision to generate on certain output operations.
+<span class="lineNum"> 613 </span> : *
+<span class="lineNum"> 614 </span> : * Be careful if you try to give a definition of &quot;precision&quot; here; see
+<span class="lineNum"> 615 </span> : * DR 189.
+<span class="lineNum"> 616 </span> : */
+<span class="lineNum"> 617 </span> : streamsize
+<span class="lineNum"> 618 </span> : precision() const
+<span class="lineNum"> 619 </span> : { return _M_precision; }
+<span class="lineNum"> 620 </span> :
+<span class="lineNum"> 621 </span> : /**
+<span class="lineNum"> 622 </span> : * @brief Changing flags.
+<span class="lineNum"> 623 </span> : * @param prec The new precision value.
+<span class="lineNum"> 624 </span> : * @return The previous value of precision().
+<span class="lineNum"> 625 </span> : */
+<span class="lineNum"> 626 </span> : streamsize
+<span class="lineNum"> 627 </span> : precision(streamsize __prec)
+<span class="lineNum"> 628 </span> : {
+<span class="lineNum"> 629 </span> : streamsize __old = _M_precision;
+<span class="lineNum"> 630 </span> : _M_precision = __prec;
+<span class="lineNum"> 631 </span> : return __old;
+<span class="lineNum"> 632 </span> : }
+<span class="lineNum"> 633 </span> :
+<span class="lineNum"> 634 </span> : /**
+<span class="lineNum"> 635 </span> : * @brief Flags access.
+<span class="lineNum"> 636 </span> : * @return The minimum field width to generate on output operations.
+<span class="lineNum"> 637 </span> : *
+<span class="lineNum"> 638 </span> : * &quot;Minimum field width&quot; refers to the number of characters.
+<span class="lineNum"> 639 </span> : */
+<span class="lineNum"> 640 </span> : streamsize
+<span class="lineNum"> 641 </span> : width() const
+<span class="lineNum"> 642 </span> : { return _M_width; }
+<span class="lineNum"> 643 </span> :
+<span class="lineNum"> 644 </span> : /**
+<span class="lineNum"> 645 </span> : * @brief Changing flags.
+<span class="lineNum"> 646 </span> : * @param wide The new width value.
+<span class="lineNum"> 647 </span> : * @return The previous value of width().
+<span class="lineNum"> 648 </span> : */
+<span class="lineNum"> 649 </span> : streamsize
+<span class="lineNum"> 650 </span><span class="lineNoCov"> 0 : width(streamsize __wide)</span>
+<span class="lineNum"> 651 </span> : {
+<span class="lineNum"> 652 </span><span class="lineNoCov"> 0 : streamsize __old = _M_width;</span>
+<span class="lineNum"> 653 </span><span class="lineNoCov"> 0 : _M_width = __wide;</span>
+<span class="lineNum"> 654 </span><span class="lineNoCov"> 0 : return __old;</span>
+<span class="lineNum"> 655 </span> : }
+<span class="lineNum"> 656 </span> :
+<span class="lineNum"> 657 </span> : // [27.4.2.4] ios_base static members
+<span class="lineNum"> 658 </span> : /**
+<span class="lineNum"> 659 </span> : * @brief Interaction with the standard C I/O objects.
+<span class="lineNum"> 660 </span> : * @param sync Whether to synchronize or not.
+<span class="lineNum"> 661 </span> : * @return True if the standard streams were previously synchronized.
+<span class="lineNum"> 662 </span> : *
+<span class="lineNum"> 663 </span> : * The synchronization referred to is @e only that between the standard
+<span class="lineNum"> 664 </span> : * C facilities (e.g., stdout) and the standard C++ objects (e.g.,
+<span class="lineNum"> 665 </span> : * cout). User-declared streams are unaffected. See
+<span class="lineNum"> 666 </span> : * http://gcc.gnu.org/onlinedocs/libstdc++/27_io/howto.html#8 for more.
+<span class="lineNum"> 667 </span> : */
+<span class="lineNum"> 668 </span> : static bool
+<span class="lineNum"> 669 </span> : sync_with_stdio(bool __sync = true);
+<span class="lineNum"> 670 </span> :
+<span class="lineNum"> 671 </span> : // [27.4.2.3] ios_base locale functions
+<span class="lineNum"> 672 </span> : /**
+<span class="lineNum"> 673 </span> : * @brief Setting a new locale.
+<span class="lineNum"> 674 </span> : * @param loc The new locale.
+<span class="lineNum"> 675 </span> : * @return The previous locale.
+<span class="lineNum"> 676 </span> : *
+<span class="lineNum"> 677 </span> : * Sets the new locale for this stream, and then invokes each callback
+<span class="lineNum"> 678 </span> : * with imbue_event.
+<span class="lineNum"> 679 </span> : */
+<span class="lineNum"> 680 </span> : locale
+<span class="lineNum"> 681 </span> : imbue(const locale&amp; __loc);
+<span class="lineNum"> 682 </span> :
+<span class="lineNum"> 683 </span> : /**
+<span class="lineNum"> 684 </span> : * @brief Locale access
+<span class="lineNum"> 685 </span> : * @return A copy of the current locale.
+<span class="lineNum"> 686 </span> : *
+<span class="lineNum"> 687 </span> : * If @c imbue(loc) has previously been called, then this function
+<span class="lineNum"> 688 </span> : * returns @c loc. Otherwise, it returns a copy of @c std::locale(),
+<span class="lineNum"> 689 </span> : * the global C++ locale.
+<span class="lineNum"> 690 </span> : */
+<span class="lineNum"> 691 </span> : locale
+<span class="lineNum"> 692 </span> : getloc() const
+<span class="lineNum"> 693 </span> : { return _M_ios_locale; }
+<span class="lineNum"> 694 </span> :
+<span class="lineNum"> 695 </span> : /**
+<span class="lineNum"> 696 </span> : * @brief Locale access
+<span class="lineNum"> 697 </span> : * @return A reference to the current locale.
+<span class="lineNum"> 698 </span> : *
+<span class="lineNum"> 699 </span> : * Like getloc above, but returns a reference instead of
+<span class="lineNum"> 700 </span> : * generating a copy.
+<span class="lineNum"> 701 </span> : */
+<span class="lineNum"> 702 </span> : const locale&amp;
+<span class="lineNum"> 703 </span> : _M_getloc() const
+<span class="lineNum"> 704 </span> : { return _M_ios_locale; }
+<span class="lineNum"> 705 </span> :
+<span class="lineNum"> 706 </span> : // [27.4.2.5] ios_base storage functions
+<span class="lineNum"> 707 </span> : /**
+<span class="lineNum"> 708 </span> : * @brief Access to unique indices.
+<span class="lineNum"> 709 </span> : * @return An integer different from all previous calls.
+<span class="lineNum"> 710 </span> : *
+<span class="lineNum"> 711 </span> : * This function returns a unique integer every time it is called. It
+<span class="lineNum"> 712 </span> : * can be used for any purpose, but is primarily intended to be a unique
+<span class="lineNum"> 713 </span> : * index for the iword and pword functions. The expectation is that an
+<span class="lineNum"> 714 </span> : * application calls xalloc in order to obtain an index in the iword and
+<span class="lineNum"> 715 </span> : * pword arrays that can be used without fear of conflict.
+<span class="lineNum"> 716 </span> : *
+<span class="lineNum"> 717 </span> : * The implementation maintains a static variable that is incremented and
+<span class="lineNum"> 718 </span> : * returned on each invocation. xalloc is guaranteed to return an index
+<span class="lineNum"> 719 </span> : * that is safe to use in the iword and pword arrays.
+<span class="lineNum"> 720 </span> : */
+<span class="lineNum"> 721 </span> : static int
+<span class="lineNum"> 722 </span> : xalloc() throw();
+<span class="lineNum"> 723 </span> :
+<span class="lineNum"> 724 </span> : /**
+<span class="lineNum"> 725 </span> : * @brief Access to integer array.
+<span class="lineNum"> 726 </span> : * @param __ix Index into the array.
+<span class="lineNum"> 727 </span> : * @return A reference to an integer associated with the index.
+<span class="lineNum"> 728 </span> : *
+<span class="lineNum"> 729 </span> : * The iword function provides access to an array of integers that can be
+<span class="lineNum"> 730 </span> : * used for any purpose. The array grows as required to hold the
+<span class="lineNum"> 731 </span> : * supplied index. All integers in the array are initialized to 0.
+<span class="lineNum"> 732 </span> : *
+<span class="lineNum"> 733 </span> : * The implementation reserves several indices. You should use xalloc to
+<span class="lineNum"> 734 </span> : * obtain an index that is safe to use. Also note that since the array
+<span class="lineNum"> 735 </span> : * can grow dynamically, it is not safe to hold onto the reference.
+<span class="lineNum"> 736 </span> : */
+<span class="lineNum"> 737 </span> : long&amp;
+<span class="lineNum"> 738 </span> : iword(int __ix)
+<span class="lineNum"> 739 </span> : {
+<span class="lineNum"> 740 </span> : _Words&amp; __word = (__ix &lt; _M_word_size)
+<span class="lineNum"> 741 </span> : ? _M_word[__ix] : _M_grow_words(__ix, true);
+<span class="lineNum"> 742 </span> : return __word._M_iword;
+<span class="lineNum"> 743 </span> : }
+<span class="lineNum"> 744 </span> :
+<span class="lineNum"> 745 </span> : /**
+<span class="lineNum"> 746 </span> : * @brief Access to void pointer array.
+<span class="lineNum"> 747 </span> : * @param __ix Index into the array.
+<span class="lineNum"> 748 </span> : * @return A reference to a void* associated with the index.
+<span class="lineNum"> 749 </span> : *
+<span class="lineNum"> 750 </span> : * The pword function provides access to an array of pointers that can be
+<span class="lineNum"> 751 </span> : * used for any purpose. The array grows as required to hold the
+<span class="lineNum"> 752 </span> : * supplied index. All pointers in the array are initialized to 0.
+<span class="lineNum"> 753 </span> : *
+<span class="lineNum"> 754 </span> : * The implementation reserves several indices. You should use xalloc to
+<span class="lineNum"> 755 </span> : * obtain an index that is safe to use. Also note that since the array
+<span class="lineNum"> 756 </span> : * can grow dynamically, it is not safe to hold onto the reference.
+<span class="lineNum"> 757 </span> : */
+<span class="lineNum"> 758 </span> : void*&amp;
+<span class="lineNum"> 759 </span> : pword(int __ix)
+<span class="lineNum"> 760 </span> : {
+<span class="lineNum"> 761 </span> : _Words&amp; __word = (__ix &lt; _M_word_size)
+<span class="lineNum"> 762 </span> : ? _M_word[__ix] : _M_grow_words(__ix, false);
+<span class="lineNum"> 763 </span> : return __word._M_pword;
+<span class="lineNum"> 764 </span> : }
+<span class="lineNum"> 765 </span> :
+<span class="lineNum"> 766 </span> : // Destructor
+<span class="lineNum"> 767 </span> : /**
+<span class="lineNum"> 768 </span> : * Invokes each callback with erase_event. Destroys local storage.
+<span class="lineNum"> 769 </span> : *
+<span class="lineNum"> 770 </span> : * Note that the ios_base object for the standard streams never gets
+<span class="lineNum"> 771 </span> : * destroyed. As a result, any callbacks registered with the standard
+<span class="lineNum"> 772 </span> : * streams will not get invoked with erase_event (unless copyfmt is
+<span class="lineNum"> 773 </span> : * used).
+<span class="lineNum"> 774 </span> : */
+<span class="lineNum"> 775 </span> : virtual ~ios_base();
+<span class="lineNum"> 776 </span> :
+<span class="lineNum"> 777 </span> : protected:
+<span class="lineNum"> 778 </span> : ios_base();
+<span class="lineNum"> 779 </span> :
+<span class="lineNum"> 780 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 781 </span> : // 50. Copy constructor and assignment operator of ios_base
+<span class="lineNum"> 782 </span> : private:
+<span class="lineNum"> 783 </span> : ios_base(const ios_base&amp;);
+<span class="lineNum"> 784 </span> :
+<span class="lineNum"> 785 </span> : ios_base&amp;
+<span class="lineNum"> 786 </span> : operator=(const ios_base&amp;);
+<span class="lineNum"> 787 </span> : };
+<span class="lineNum"> 788 </span> :
+<span class="lineNum"> 789 </span> : // [27.4.5.1] fmtflags manipulators
+<span class="lineNum"> 790 </span> : /// Calls base.setf(ios_base::boolalpha).
+<span class="lineNum"> 791 </span> : inline ios_base&amp;
+<span class="lineNum"> 792 </span> : boolalpha(ios_base&amp; __base)
+<span class="lineNum"> 793 </span> : {
+<span class="lineNum"> 794 </span> : __base.setf(ios_base::boolalpha);
+<span class="lineNum"> 795 </span> : return __base;
+<span class="lineNum"> 796 </span> : }
+<span class="lineNum"> 797 </span> :
+<span class="lineNum"> 798 </span> : /// Calls base.unsetf(ios_base::boolalpha).
+<span class="lineNum"> 799 </span> : inline ios_base&amp;
+<span class="lineNum"> 800 </span> : noboolalpha(ios_base&amp; __base)
+<span class="lineNum"> 801 </span> : {
+<span class="lineNum"> 802 </span> : __base.unsetf(ios_base::boolalpha);
+<span class="lineNum"> 803 </span> : return __base;
+<span class="lineNum"> 804 </span> : }
+<span class="lineNum"> 805 </span> :
+<span class="lineNum"> 806 </span> : /// Calls base.setf(ios_base::showbase).
+<span class="lineNum"> 807 </span> : inline ios_base&amp;
+<span class="lineNum"> 808 </span> : showbase(ios_base&amp; __base)
+<span class="lineNum"> 809 </span> : {
+<span class="lineNum"> 810 </span> : __base.setf(ios_base::showbase);
+<span class="lineNum"> 811 </span> : return __base;
+<span class="lineNum"> 812 </span> : }
+<span class="lineNum"> 813 </span> :
+<span class="lineNum"> 814 </span> : /// Calls base.unsetf(ios_base::showbase).
+<span class="lineNum"> 815 </span> : inline ios_base&amp;
+<span class="lineNum"> 816 </span> : noshowbase(ios_base&amp; __base)
+<span class="lineNum"> 817 </span> : {
+<span class="lineNum"> 818 </span> : __base.unsetf(ios_base::showbase);
+<span class="lineNum"> 819 </span> : return __base;
+<span class="lineNum"> 820 </span> : }
+<span class="lineNum"> 821 </span> :
+<span class="lineNum"> 822 </span> : /// Calls base.setf(ios_base::showpoint).
+<span class="lineNum"> 823 </span> : inline ios_base&amp;
+<span class="lineNum"> 824 </span> : showpoint(ios_base&amp; __base)
+<span class="lineNum"> 825 </span> : {
+<span class="lineNum"> 826 </span> : __base.setf(ios_base::showpoint);
+<span class="lineNum"> 827 </span> : return __base;
+<span class="lineNum"> 828 </span> : }
+<span class="lineNum"> 829 </span> :
+<span class="lineNum"> 830 </span> : /// Calls base.unsetf(ios_base::showpoint).
+<span class="lineNum"> 831 </span> : inline ios_base&amp;
+<span class="lineNum"> 832 </span> : noshowpoint(ios_base&amp; __base)
+<span class="lineNum"> 833 </span> : {
+<span class="lineNum"> 834 </span> : __base.unsetf(ios_base::showpoint);
+<span class="lineNum"> 835 </span> : return __base;
+<span class="lineNum"> 836 </span> : }
+<span class="lineNum"> 837 </span> :
+<span class="lineNum"> 838 </span> : /// Calls base.setf(ios_base::showpos).
+<span class="lineNum"> 839 </span> : inline ios_base&amp;
+<span class="lineNum"> 840 </span> : showpos(ios_base&amp; __base)
+<span class="lineNum"> 841 </span> : {
+<span class="lineNum"> 842 </span> : __base.setf(ios_base::showpos);
+<span class="lineNum"> 843 </span> : return __base;
+<span class="lineNum"> 844 </span> : }
+<span class="lineNum"> 845 </span> :
+<span class="lineNum"> 846 </span> : /// Calls base.unsetf(ios_base::showpos).
+<span class="lineNum"> 847 </span> : inline ios_base&amp;
+<span class="lineNum"> 848 </span> : noshowpos(ios_base&amp; __base)
+<span class="lineNum"> 849 </span> : {
+<span class="lineNum"> 850 </span> : __base.unsetf(ios_base::showpos);
+<span class="lineNum"> 851 </span> : return __base;
+<span class="lineNum"> 852 </span> : }
+<span class="lineNum"> 853 </span> :
+<span class="lineNum"> 854 </span> : /// Calls base.setf(ios_base::skipws).
+<span class="lineNum"> 855 </span> : inline ios_base&amp;
+<span class="lineNum"> 856 </span> : skipws(ios_base&amp; __base)
+<span class="lineNum"> 857 </span> : {
+<span class="lineNum"> 858 </span> : __base.setf(ios_base::skipws);
+<span class="lineNum"> 859 </span> : return __base;
+<span class="lineNum"> 860 </span> : }
+<span class="lineNum"> 861 </span> :
+<span class="lineNum"> 862 </span> : /// Calls base.unsetf(ios_base::skipws).
+<span class="lineNum"> 863 </span> : inline ios_base&amp;
+<span class="lineNum"> 864 </span> : noskipws(ios_base&amp; __base)
+<span class="lineNum"> 865 </span> : {
+<span class="lineNum"> 866 </span> : __base.unsetf(ios_base::skipws);
+<span class="lineNum"> 867 </span> : return __base;
+<span class="lineNum"> 868 </span> : }
+<span class="lineNum"> 869 </span> :
+<span class="lineNum"> 870 </span> : /// Calls base.setf(ios_base::uppercase).
+<span class="lineNum"> 871 </span> : inline ios_base&amp;
+<span class="lineNum"> 872 </span> : uppercase(ios_base&amp; __base)
+<span class="lineNum"> 873 </span> : {
+<span class="lineNum"> 874 </span> : __base.setf(ios_base::uppercase);
+<span class="lineNum"> 875 </span> : return __base;
+<span class="lineNum"> 876 </span> : }
+<span class="lineNum"> 877 </span> :
+<span class="lineNum"> 878 </span> : /// Calls base.unsetf(ios_base::uppercase).
+<span class="lineNum"> 879 </span> : inline ios_base&amp;
+<span class="lineNum"> 880 </span> : nouppercase(ios_base&amp; __base)
+<span class="lineNum"> 881 </span> : {
+<span class="lineNum"> 882 </span> : __base.unsetf(ios_base::uppercase);
+<span class="lineNum"> 883 </span> : return __base;
+<span class="lineNum"> 884 </span> : }
+<span class="lineNum"> 885 </span> :
+<span class="lineNum"> 886 </span> : /// Calls base.setf(ios_base::unitbuf).
+<span class="lineNum"> 887 </span> : inline ios_base&amp;
+<span class="lineNum"> 888 </span> : unitbuf(ios_base&amp; __base)
+<span class="lineNum"> 889 </span> : {
+<span class="lineNum"> 890 </span> : __base.setf(ios_base::unitbuf);
+<span class="lineNum"> 891 </span> : return __base;
+<span class="lineNum"> 892 </span> : }
+<span class="lineNum"> 893 </span> :
+<span class="lineNum"> 894 </span> : /// Calls base.unsetf(ios_base::unitbuf).
+<span class="lineNum"> 895 </span> : inline ios_base&amp;
+<span class="lineNum"> 896 </span> : nounitbuf(ios_base&amp; __base)
+<span class="lineNum"> 897 </span> : {
+<span class="lineNum"> 898 </span> : __base.unsetf(ios_base::unitbuf);
+<span class="lineNum"> 899 </span> : return __base;
+<span class="lineNum"> 900 </span> : }
+<span class="lineNum"> 901 </span> :
+<span class="lineNum"> 902 </span> : // [27.4.5.2] adjustfield manipulators
+<span class="lineNum"> 903 </span> : /// Calls base.setf(ios_base::internal, ios_base::adjustfield).
+<span class="lineNum"> 904 </span> : inline ios_base&amp;
+<span class="lineNum"> 905 </span><span class="lineCov"> 33 : internal(ios_base&amp; __base)</span>
+<span class="lineNum"> 906 </span> : {
+<span class="lineNum"> 907 </span><span class="lineCov"> 33 : __base.setf(ios_base::internal, ios_base::adjustfield);</span>
+<span class="lineNum"> 908 </span><span class="lineCov"> 33 : return __base;</span>
+<span class="lineNum"> 909 </span> : }
+<span class="lineNum"> 910 </span> :
+<span class="lineNum"> 911 </span> : /// Calls base.setf(ios_base::left, ios_base::adjustfield).
+<span class="lineNum"> 912 </span> : inline ios_base&amp;
+<span class="lineNum"> 913 </span> : left(ios_base&amp; __base)
+<span class="lineNum"> 914 </span> : {
+<span class="lineNum"> 915 </span> : __base.setf(ios_base::left, ios_base::adjustfield);
+<span class="lineNum"> 916 </span> : return __base;
+<span class="lineNum"> 917 </span> : }
+<span class="lineNum"> 918 </span> :
+<span class="lineNum"> 919 </span> : /// Calls base.setf(ios_base::right, ios_base::adjustfield).
+<span class="lineNum"> 920 </span> : inline ios_base&amp;
+<span class="lineNum"> 921 </span> : right(ios_base&amp; __base)
+<span class="lineNum"> 922 </span> : {
+<span class="lineNum"> 923 </span> : __base.setf(ios_base::right, ios_base::adjustfield);
+<span class="lineNum"> 924 </span> : return __base;
+<span class="lineNum"> 925 </span> : }
+<span class="lineNum"> 926 </span> :
+<span class="lineNum"> 927 </span> : // [27.4.5.3] basefield manipulators
+<span class="lineNum"> 928 </span> : /// Calls base.setf(ios_base::dec, ios_base::basefield).
+<span class="lineNum"> 929 </span> : inline ios_base&amp;
+<span class="lineNum"> 930 </span> : dec(ios_base&amp; __base)
+<span class="lineNum"> 931 </span> : {
+<span class="lineNum"> 932 </span> : __base.setf(ios_base::dec, ios_base::basefield);
+<span class="lineNum"> 933 </span> : return __base;
+<span class="lineNum"> 934 </span> : }
+<span class="lineNum"> 935 </span> :
+<span class="lineNum"> 936 </span> : /// Calls base.setf(ios_base::hex, ios_base::basefield).
+<span class="lineNum"> 937 </span> : inline ios_base&amp;
+<span class="lineNum"> 938 </span> : hex(ios_base&amp; __base)
+<span class="lineNum"> 939 </span> : {
+<span class="lineNum"> 940 </span> : __base.setf(ios_base::hex, ios_base::basefield);
+<span class="lineNum"> 941 </span> : return __base;
+<span class="lineNum"> 942 </span> : }
+<span class="lineNum"> 943 </span> :
+<span class="lineNum"> 944 </span> : /// Calls base.setf(ios_base::oct, ios_base::basefield).
+<span class="lineNum"> 945 </span> : inline ios_base&amp;
+<span class="lineNum"> 946 </span> : oct(ios_base&amp; __base)
+<span class="lineNum"> 947 </span> : {
+<span class="lineNum"> 948 </span> : __base.setf(ios_base::oct, ios_base::basefield);
+<span class="lineNum"> 949 </span> : return __base;
+<span class="lineNum"> 950 </span> : }
+<span class="lineNum"> 951 </span> :
+<span class="lineNum"> 952 </span> : // [27.4.5.4] floatfield manipulators
+<span class="lineNum"> 953 </span> : /// Calls base.setf(ios_base::fixed, ios_base::floatfield).
+<span class="lineNum"> 954 </span> : inline ios_base&amp;
+<span class="lineNum"> 955 </span> : fixed(ios_base&amp; __base)
+<span class="lineNum"> 956 </span> : {
+<span class="lineNum"> 957 </span> : __base.setf(ios_base::fixed, ios_base::floatfield);
+<span class="lineNum"> 958 </span> : return __base;
+<span class="lineNum"> 959 </span> : }
+<span class="lineNum"> 960 </span> :
+<span class="lineNum"> 961 </span> : /// Calls base.setf(ios_base::scientific, ios_base::floatfield).
+<span class="lineNum"> 962 </span> : inline ios_base&amp;
+<span class="lineNum"> 963 </span> : scientific(ios_base&amp; __base)
+<span class="lineNum"> 964 </span> : {
+<span class="lineNum"> 965 </span> : __base.setf(ios_base::scientific, ios_base::floatfield);
+<span class="lineNum"> 966 </span> : return __base;
+<span class="lineNum"> 967 </span> : }
+<span class="lineNum"> 968 </span> :
+<span class="lineNum"> 969 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 970 </span> :
+<span class="lineNum"> 971 </span> : #endif /* _IOS_BASE_H */
+<span class="lineNum"> 972 </span> :
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/list.tcc.gcov.html b/rep/usr/include/c++/4.3/bits/list.tcc.gcov.html
new file mode 100644
index 0000000..18b3b6a
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/list.tcc.gcov.html
@@ -0,0 +1,484 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/list.tcc</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - list.tcc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">11</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">11</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // List implementation (out of line) -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 18 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 19 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 20 </span> : // USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /*
+<span class="lineNum"> 32 </span> : *
+<span class="lineNum"> 33 </span> : * Copyright (c) 1994
+<span class="lineNum"> 34 </span> : * Hewlett-Packard Company
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 37 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 38 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 39 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 40 </span> : * in supporting documentation. Hewlett-Packard Company makes no
+<span class="lineNum"> 41 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 42 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 43 </span> : *
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * Copyright (c) 1996,1997
+<span class="lineNum"> 46 </span> : * Silicon Graphics Computer Systems, Inc.
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 49 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 50 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 51 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 52 </span> : * in supporting documentation. Silicon Graphics makes no
+<span class="lineNum"> 53 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 54 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 55 </span> : */
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /** @file list.tcc
+<span class="lineNum"> 58 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 59 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 60 </span> : */
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : #ifndef _LIST_TCC
+<span class="lineNum"> 63 </span> : #define _LIST_TCC 1
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 68 </span> : void
+<span class="lineNum"> 69 </span> : _List_base&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 70 </span><span class="lineCov"> 19 : _M_clear()</span>
+<span class="lineNum"> 71 </span> : {
+<span class="lineNum"> 72 </span> : typedef _List_node&lt;_Tp&gt; _Node;
+<span class="lineNum"> 73 </span><span class="lineCov"> 19 : _Node* __cur = static_cast&lt;_Node*&gt;(this-&gt;_M_impl._M_node._M_next);</span>
+<span class="lineNum"> 74 </span><span class="lineCov"> 60 : while (__cur != &amp;this-&gt;_M_impl._M_node)</span>
+<span class="lineNum"> 75 </span> : {
+<span class="lineNum"> 76 </span><span class="lineCov"> 22 : _Node* __tmp = __cur;</span>
+<span class="lineNum"> 77 </span><span class="lineCov"> 22 : __cur = static_cast&lt;_Node*&gt;(__cur-&gt;_M_next);</span>
+<span class="lineNum"> 78 </span><span class="lineCov"> 22 : _M_get_Tp_allocator().destroy(&amp;__tmp-&gt;_M_data);</span>
+<span class="lineNum"> 79 </span><span class="lineCov"> 22 : _M_put_node(__tmp);</span>
+<span class="lineNum"> 80 </span> : }
+<span class="lineNum"> 81 </span><span class="lineCov"> 19 : }</span>
+<span class="lineNum"> 82 </span> :
+<span class="lineNum"> 83 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 84 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 85 </span> : template&lt;typename... _Args&gt;
+<span class="lineNum"> 86 </span> : typename list&lt;_Tp, _Alloc&gt;::iterator
+<span class="lineNum"> 87 </span> : list&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 88 </span> : emplace(iterator __position, _Args&amp;&amp;... __args)
+<span class="lineNum"> 89 </span> : {
+<span class="lineNum"> 90 </span> : _Node* __tmp = _M_create_node(std::forward&lt;_Args&gt;(__args)...);
+<span class="lineNum"> 91 </span> : __tmp-&gt;hook(__position._M_node);
+<span class="lineNum"> 92 </span> : return iterator(__tmp);
+<span class="lineNum"> 93 </span> : }
+<span class="lineNum"> 94 </span> : #endif
+<span class="lineNum"> 95 </span> :
+<span class="lineNum"> 96 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 97 </span> : typename list&lt;_Tp, _Alloc&gt;::iterator
+<span class="lineNum"> 98 </span> : list&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 99 </span> : insert(iterator __position, const value_type&amp; __x)
+<span class="lineNum"> 100 </span> : {
+<span class="lineNum"> 101 </span> : _Node* __tmp = _M_create_node(__x);
+<span class="lineNum"> 102 </span> : __tmp-&gt;hook(__position._M_node);
+<span class="lineNum"> 103 </span> : return iterator(__tmp);
+<span class="lineNum"> 104 </span> : }
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 107 </span> : typename list&lt;_Tp, _Alloc&gt;::iterator
+<span class="lineNum"> 108 </span> : list&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 109 </span><span class="lineCov"> 25 : erase(iterator __position)</span>
+<span class="lineNum"> 110 </span> : {
+<span class="lineNum"> 111 </span><span class="lineCov"> 25 : iterator __ret = iterator(__position._M_node-&gt;_M_next);</span>
+<span class="lineNum"> 112 </span><span class="lineCov"> 25 : _M_erase(__position);</span>
+<span class="lineNum"> 113 </span> : return __ret;
+<span class="lineNum"> 114 </span> : }
+<span class="lineNum"> 115 </span> :
+<span class="lineNum"> 116 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 117 </span> : void
+<span class="lineNum"> 118 </span> : list&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 119 </span> : resize(size_type __new_size, value_type __x)
+<span class="lineNum"> 120 </span> : {
+<span class="lineNum"> 121 </span> : iterator __i = begin();
+<span class="lineNum"> 122 </span> : size_type __len = 0;
+<span class="lineNum"> 123 </span> : for (; __i != end() &amp;&amp; __len &lt; __new_size; ++__i, ++__len)
+<span class="lineNum"> 124 </span> : ;
+<span class="lineNum"> 125 </span> : if (__len == __new_size)
+<span class="lineNum"> 126 </span> : erase(__i, end());
+<span class="lineNum"> 127 </span> : else // __i == end()
+<span class="lineNum"> 128 </span> : insert(end(), __new_size - __len, __x);
+<span class="lineNum"> 129 </span> : }
+<span class="lineNum"> 130 </span> :
+<span class="lineNum"> 131 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 132 </span> : list&lt;_Tp, _Alloc&gt;&amp;
+<span class="lineNum"> 133 </span> : list&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 134 </span> : operator=(const list&amp; __x)
+<span class="lineNum"> 135 </span> : {
+<span class="lineNum"> 136 </span> : if (this != &amp;__x)
+<span class="lineNum"> 137 </span> : {
+<span class="lineNum"> 138 </span> : iterator __first1 = begin();
+<span class="lineNum"> 139 </span> : iterator __last1 = end();
+<span class="lineNum"> 140 </span> : const_iterator __first2 = __x.begin();
+<span class="lineNum"> 141 </span> : const_iterator __last2 = __x.end();
+<span class="lineNum"> 142 </span> : for (; __first1 != __last1 &amp;&amp; __first2 != __last2;
+<span class="lineNum"> 143 </span> : ++__first1, ++__first2)
+<span class="lineNum"> 144 </span> : *__first1 = *__first2;
+<span class="lineNum"> 145 </span> : if (__first2 == __last2)
+<span class="lineNum"> 146 </span> : erase(__first1, __last1);
+<span class="lineNum"> 147 </span> : else
+<span class="lineNum"> 148 </span> : insert(__last1, __first2, __last2);
+<span class="lineNum"> 149 </span> : }
+<span class="lineNum"> 150 </span> : return *this;
+<span class="lineNum"> 151 </span> : }
+<span class="lineNum"> 152 </span> :
+<span class="lineNum"> 153 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 154 </span> : void
+<span class="lineNum"> 155 </span> : list&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 156 </span> : _M_fill_assign(size_type __n, const value_type&amp; __val)
+<span class="lineNum"> 157 </span> : {
+<span class="lineNum"> 158 </span> : iterator __i = begin();
+<span class="lineNum"> 159 </span> : for (; __i != end() &amp;&amp; __n &gt; 0; ++__i, --__n)
+<span class="lineNum"> 160 </span> : *__i = __val;
+<span class="lineNum"> 161 </span> : if (__n &gt; 0)
+<span class="lineNum"> 162 </span> : insert(end(), __n, __val);
+<span class="lineNum"> 163 </span> : else
+<span class="lineNum"> 164 </span> : erase(__i, end());
+<span class="lineNum"> 165 </span> : }
+<span class="lineNum"> 166 </span> :
+<span class="lineNum"> 167 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 168 </span> : template &lt;typename _InputIterator&gt;
+<span class="lineNum"> 169 </span> : void
+<span class="lineNum"> 170 </span> : list&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 171 </span> : _M_assign_dispatch(_InputIterator __first2, _InputIterator __last2,
+<span class="lineNum"> 172 </span> : __false_type)
+<span class="lineNum"> 173 </span> : {
+<span class="lineNum"> 174 </span> : iterator __first1 = begin();
+<span class="lineNum"> 175 </span> : iterator __last1 = end();
+<span class="lineNum"> 176 </span> : for (; __first1 != __last1 &amp;&amp; __first2 != __last2;
+<span class="lineNum"> 177 </span> : ++__first1, ++__first2)
+<span class="lineNum"> 178 </span> : *__first1 = *__first2;
+<span class="lineNum"> 179 </span> : if (__first2 == __last2)
+<span class="lineNum"> 180 </span> : erase(__first1, __last1);
+<span class="lineNum"> 181 </span> : else
+<span class="lineNum"> 182 </span> : insert(__last1, __first2, __last2);
+<span class="lineNum"> 183 </span> : }
+<span class="lineNum"> 184 </span> :
+<span class="lineNum"> 185 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 186 </span> : void
+<span class="lineNum"> 187 </span> : list&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 188 </span> : remove(const value_type&amp; __value)
+<span class="lineNum"> 189 </span> : {
+<span class="lineNum"> 190 </span> : iterator __first = begin();
+<span class="lineNum"> 191 </span> : iterator __last = end();
+<span class="lineNum"> 192 </span> : iterator __extra = __last;
+<span class="lineNum"> 193 </span> : while (__first != __last)
+<span class="lineNum"> 194 </span> : {
+<span class="lineNum"> 195 </span> : iterator __next = __first;
+<span class="lineNum"> 196 </span> : ++__next;
+<span class="lineNum"> 197 </span> : if (*__first == __value)
+<span class="lineNum"> 198 </span> : {
+<span class="lineNum"> 199 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 200 </span> : // 526. Is it undefined if a function in the standard changes
+<span class="lineNum"> 201 </span> : // in parameters?
+<span class="lineNum"> 202 </span> : if (&amp;*__first != &amp;__value)
+<span class="lineNum"> 203 </span> : _M_erase(__first);
+<span class="lineNum"> 204 </span> : else
+<span class="lineNum"> 205 </span> : __extra = __first;
+<span class="lineNum"> 206 </span> : }
+<span class="lineNum"> 207 </span> : __first = __next;
+<span class="lineNum"> 208 </span> : }
+<span class="lineNum"> 209 </span> : if (__extra != __last)
+<span class="lineNum"> 210 </span> : _M_erase(__extra);
+<span class="lineNum"> 211 </span> : }
+<span class="lineNum"> 212 </span> :
+<span class="lineNum"> 213 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 214 </span> : void
+<span class="lineNum"> 215 </span> : list&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 216 </span> : unique()
+<span class="lineNum"> 217 </span> : {
+<span class="lineNum"> 218 </span> : iterator __first = begin();
+<span class="lineNum"> 219 </span> : iterator __last = end();
+<span class="lineNum"> 220 </span> : if (__first == __last)
+<span class="lineNum"> 221 </span> : return;
+<span class="lineNum"> 222 </span> : iterator __next = __first;
+<span class="lineNum"> 223 </span> : while (++__next != __last)
+<span class="lineNum"> 224 </span> : {
+<span class="lineNum"> 225 </span> : if (*__first == *__next)
+<span class="lineNum"> 226 </span> : _M_erase(__next);
+<span class="lineNum"> 227 </span> : else
+<span class="lineNum"> 228 </span> : __first = __next;
+<span class="lineNum"> 229 </span> : __next = __first;
+<span class="lineNum"> 230 </span> : }
+<span class="lineNum"> 231 </span> : }
+<span class="lineNum"> 232 </span> :
+<span class="lineNum"> 233 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 234 </span> : void
+<span class="lineNum"> 235 </span> : list&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 236 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 237 </span> : merge(list&amp;&amp; __x)
+<span class="lineNum"> 238 </span> : #else
+<span class="lineNum"> 239 </span> : merge(list&amp; __x)
+<span class="lineNum"> 240 </span> : #endif
+<span class="lineNum"> 241 </span> : {
+<span class="lineNum"> 242 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 243 </span> : // 300. list::merge() specification incomplete
+<span class="lineNum"> 244 </span> : if (this != &amp;__x)
+<span class="lineNum"> 245 </span> : {
+<span class="lineNum"> 246 </span> : _M_check_equal_allocators(__x);
+<span class="lineNum"> 247 </span> :
+<span class="lineNum"> 248 </span> : iterator __first1 = begin();
+<span class="lineNum"> 249 </span> : iterator __last1 = end();
+<span class="lineNum"> 250 </span> : iterator __first2 = __x.begin();
+<span class="lineNum"> 251 </span> : iterator __last2 = __x.end();
+<span class="lineNum"> 252 </span> : while (__first1 != __last1 &amp;&amp; __first2 != __last2)
+<span class="lineNum"> 253 </span> : if (*__first2 &lt; *__first1)
+<span class="lineNum"> 254 </span> : {
+<span class="lineNum"> 255 </span> : iterator __next = __first2;
+<span class="lineNum"> 256 </span> : _M_transfer(__first1, __first2, ++__next);
+<span class="lineNum"> 257 </span> : __first2 = __next;
+<span class="lineNum"> 258 </span> : }
+<span class="lineNum"> 259 </span> : else
+<span class="lineNum"> 260 </span> : ++__first1;
+<span class="lineNum"> 261 </span> : if (__first2 != __last2)
+<span class="lineNum"> 262 </span> : _M_transfer(__last1, __first2, __last2);
+<span class="lineNum"> 263 </span> : }
+<span class="lineNum"> 264 </span> : }
+<span class="lineNum"> 265 </span> :
+<span class="lineNum"> 266 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 267 </span> : template &lt;typename _StrictWeakOrdering&gt;
+<span class="lineNum"> 268 </span> : void
+<span class="lineNum"> 269 </span> : list&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 270 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 271 </span> : merge(list&amp;&amp; __x, _StrictWeakOrdering __comp)
+<span class="lineNum"> 272 </span> : #else
+<span class="lineNum"> 273 </span> : merge(list&amp; __x, _StrictWeakOrdering __comp)
+<span class="lineNum"> 274 </span> : #endif
+<span class="lineNum"> 275 </span> : {
+<span class="lineNum"> 276 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 277 </span> : // 300. list::merge() specification incomplete
+<span class="lineNum"> 278 </span> : if (this != &amp;__x)
+<span class="lineNum"> 279 </span> : {
+<span class="lineNum"> 280 </span> : _M_check_equal_allocators(__x);
+<span class="lineNum"> 281 </span> :
+<span class="lineNum"> 282 </span> : iterator __first1 = begin();
+<span class="lineNum"> 283 </span> : iterator __last1 = end();
+<span class="lineNum"> 284 </span> : iterator __first2 = __x.begin();
+<span class="lineNum"> 285 </span> : iterator __last2 = __x.end();
+<span class="lineNum"> 286 </span> : while (__first1 != __last1 &amp;&amp; __first2 != __last2)
+<span class="lineNum"> 287 </span> : if (__comp(*__first2, *__first1))
+<span class="lineNum"> 288 </span> : {
+<span class="lineNum"> 289 </span> : iterator __next = __first2;
+<span class="lineNum"> 290 </span> : _M_transfer(__first1, __first2, ++__next);
+<span class="lineNum"> 291 </span> : __first2 = __next;
+<span class="lineNum"> 292 </span> : }
+<span class="lineNum"> 293 </span> : else
+<span class="lineNum"> 294 </span> : ++__first1;
+<span class="lineNum"> 295 </span> : if (__first2 != __last2)
+<span class="lineNum"> 296 </span> : _M_transfer(__last1, __first2, __last2);
+<span class="lineNum"> 297 </span> : }
+<span class="lineNum"> 298 </span> : }
+<span class="lineNum"> 299 </span> :
+<span class="lineNum"> 300 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 301 </span> : void
+<span class="lineNum"> 302 </span> : list&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 303 </span> : sort()
+<span class="lineNum"> 304 </span> : {
+<span class="lineNum"> 305 </span> : // Do nothing if the list has length 0 or 1.
+<span class="lineNum"> 306 </span> : if (this-&gt;_M_impl._M_node._M_next != &amp;this-&gt;_M_impl._M_node
+<span class="lineNum"> 307 </span> : &amp;&amp; this-&gt;_M_impl._M_node._M_next-&gt;_M_next != &amp;this-&gt;_M_impl._M_node)
+<span class="lineNum"> 308 </span> : {
+<span class="lineNum"> 309 </span> : list __carry;
+<span class="lineNum"> 310 </span> : list __tmp[64];
+<span class="lineNum"> 311 </span> : list * __fill = &amp;__tmp[0];
+<span class="lineNum"> 312 </span> : list * __counter;
+<span class="lineNum"> 313 </span> :
+<span class="lineNum"> 314 </span> : do
+<span class="lineNum"> 315 </span> : {
+<span class="lineNum"> 316 </span> : __carry.splice(__carry.begin(), *this, begin());
+<span class="lineNum"> 317 </span> :
+<span class="lineNum"> 318 </span> : for(__counter = &amp;__tmp[0];
+<span class="lineNum"> 319 </span> : __counter != __fill &amp;&amp; !__counter-&gt;empty();
+<span class="lineNum"> 320 </span> : ++__counter)
+<span class="lineNum"> 321 </span> : {
+<span class="lineNum"> 322 </span> : __counter-&gt;merge(__carry);
+<span class="lineNum"> 323 </span> : __carry.swap(*__counter);
+<span class="lineNum"> 324 </span> : }
+<span class="lineNum"> 325 </span> : __carry.swap(*__counter);
+<span class="lineNum"> 326 </span> : if (__counter == __fill)
+<span class="lineNum"> 327 </span> : ++__fill;
+<span class="lineNum"> 328 </span> : }
+<span class="lineNum"> 329 </span> : while ( !empty() );
+<span class="lineNum"> 330 </span> :
+<span class="lineNum"> 331 </span> : for (__counter = &amp;__tmp[1]; __counter != __fill; ++__counter)
+<span class="lineNum"> 332 </span> : __counter-&gt;merge(*(__counter - 1));
+<span class="lineNum"> 333 </span> : swap( *(__fill - 1) );
+<span class="lineNum"> 334 </span> : }
+<span class="lineNum"> 335 </span> : }
+<span class="lineNum"> 336 </span> :
+<span class="lineNum"> 337 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 338 </span> : template &lt;typename _Predicate&gt;
+<span class="lineNum"> 339 </span> : void
+<span class="lineNum"> 340 </span> : list&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 341 </span> : remove_if(_Predicate __pred)
+<span class="lineNum"> 342 </span> : {
+<span class="lineNum"> 343 </span> : iterator __first = begin();
+<span class="lineNum"> 344 </span> : iterator __last = end();
+<span class="lineNum"> 345 </span> : while (__first != __last)
+<span class="lineNum"> 346 </span> : {
+<span class="lineNum"> 347 </span> : iterator __next = __first;
+<span class="lineNum"> 348 </span> : ++__next;
+<span class="lineNum"> 349 </span> : if (__pred(*__first))
+<span class="lineNum"> 350 </span> : _M_erase(__first);
+<span class="lineNum"> 351 </span> : __first = __next;
+<span class="lineNum"> 352 </span> : }
+<span class="lineNum"> 353 </span> : }
+<span class="lineNum"> 354 </span> :
+<span class="lineNum"> 355 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 356 </span> : template &lt;typename _BinaryPredicate&gt;
+<span class="lineNum"> 357 </span> : void
+<span class="lineNum"> 358 </span> : list&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 359 </span> : unique(_BinaryPredicate __binary_pred)
+<span class="lineNum"> 360 </span> : {
+<span class="lineNum"> 361 </span> : iterator __first = begin();
+<span class="lineNum"> 362 </span> : iterator __last = end();
+<span class="lineNum"> 363 </span> : if (__first == __last)
+<span class="lineNum"> 364 </span> : return;
+<span class="lineNum"> 365 </span> : iterator __next = __first;
+<span class="lineNum"> 366 </span> : while (++__next != __last)
+<span class="lineNum"> 367 </span> : {
+<span class="lineNum"> 368 </span> : if (__binary_pred(*__first, *__next))
+<span class="lineNum"> 369 </span> : _M_erase(__next);
+<span class="lineNum"> 370 </span> : else
+<span class="lineNum"> 371 </span> : __first = __next;
+<span class="lineNum"> 372 </span> : __next = __first;
+<span class="lineNum"> 373 </span> : }
+<span class="lineNum"> 374 </span> : }
+<span class="lineNum"> 375 </span> :
+<span class="lineNum"> 376 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 377 </span> : template &lt;typename _StrictWeakOrdering&gt;
+<span class="lineNum"> 378 </span> : void
+<span class="lineNum"> 379 </span> : list&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 380 </span> : sort(_StrictWeakOrdering __comp)
+<span class="lineNum"> 381 </span> : {
+<span class="lineNum"> 382 </span> : // Do nothing if the list has length 0 or 1.
+<span class="lineNum"> 383 </span> : if (this-&gt;_M_impl._M_node._M_next != &amp;this-&gt;_M_impl._M_node
+<span class="lineNum"> 384 </span> : &amp;&amp; this-&gt;_M_impl._M_node._M_next-&gt;_M_next != &amp;this-&gt;_M_impl._M_node)
+<span class="lineNum"> 385 </span> : {
+<span class="lineNum"> 386 </span> : list __carry;
+<span class="lineNum"> 387 </span> : list __tmp[64];
+<span class="lineNum"> 388 </span> : list * __fill = &amp;__tmp[0];
+<span class="lineNum"> 389 </span> : list * __counter;
+<span class="lineNum"> 390 </span> :
+<span class="lineNum"> 391 </span> : do
+<span class="lineNum"> 392 </span> : {
+<span class="lineNum"> 393 </span> : __carry.splice(__carry.begin(), *this, begin());
+<span class="lineNum"> 394 </span> :
+<span class="lineNum"> 395 </span> : for(__counter = &amp;__tmp[0];
+<span class="lineNum"> 396 </span> : __counter != __fill &amp;&amp; !__counter-&gt;empty();
+<span class="lineNum"> 397 </span> : ++__counter)
+<span class="lineNum"> 398 </span> : {
+<span class="lineNum"> 399 </span> : __counter-&gt;merge(__carry, __comp);
+<span class="lineNum"> 400 </span> : __carry.swap(*__counter);
+<span class="lineNum"> 401 </span> : }
+<span class="lineNum"> 402 </span> : __carry.swap(*__counter);
+<span class="lineNum"> 403 </span> : if (__counter == __fill)
+<span class="lineNum"> 404 </span> : ++__fill;
+<span class="lineNum"> 405 </span> : }
+<span class="lineNum"> 406 </span> : while ( !empty() );
+<span class="lineNum"> 407 </span> :
+<span class="lineNum"> 408 </span> : for (__counter = &amp;__tmp[1]; __counter != __fill; ++__counter)
+<span class="lineNum"> 409 </span> : __counter-&gt;merge(*(__counter - 1), __comp);
+<span class="lineNum"> 410 </span> : swap(*(__fill - 1));
+<span class="lineNum"> 411 </span> : }
+<span class="lineNum"> 412 </span> : }
+<span class="lineNum"> 413 </span> :
+<span class="lineNum"> 414 </span> : _GLIBCXX_END_NESTED_NAMESPACE
+<span class="lineNum"> 415 </span> :
+<span class="lineNum"> 416 </span> : #endif /* _LIST_TCC */
+<span class="lineNum"> 417 </span> :
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/locale_facets.h.gcov.html b/rep/usr/include/c++/4.3/bits/locale_facets.h.gcov.html
new file mode 100644
index 0000000..d54e58e
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/locale_facets.h.gcov.html
@@ -0,0 +1,2705 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/locale_facets.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - locale_facets.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">13</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">0.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">0</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Locale support -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+<span class="lineNum"> 4 </span> : // 2006, 2007
+<span class="lineNum"> 5 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 6 </span> : //
+<span class="lineNum"> 7 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 8 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 9 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 10 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 11 </span> : // any later version.
+<span class="lineNum"> 12 </span> :
+<span class="lineNum"> 13 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 14 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 15 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 16 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 17 </span> :
+<span class="lineNum"> 18 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 19 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 20 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 21 </span> : // USA.
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 24 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 25 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 26 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 27 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 28 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 29 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 30 </span> : // the GNU General Public License.
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : /** @file locale_facets.h
+<span class="lineNum"> 33 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 34 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 35 </span> : */
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : //
+<span class="lineNum"> 38 </span> : // ISO C++ 14882: 22.1 Locales
+<span class="lineNum"> 39 </span> : //
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : #ifndef _LOCALE_FACETS_H
+<span class="lineNum"> 42 </span> : #define _LOCALE_FACETS_H 1
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span> : #pragma GCC system_header
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> : #include &lt;cwctype&gt; // For wctype_t
+<span class="lineNum"> 47 </span> : #include &lt;cctype&gt;
+<span class="lineNum"> 48 </span> : #include &lt;bits/ctype_base.h&gt;
+<span class="lineNum"> 49 </span> : #include &lt;iosfwd&gt;
+<span class="lineNum"> 50 </span> : #include &lt;bits/ios_base.h&gt; // For ios_base, ios_base::iostate
+<span class="lineNum"> 51 </span> : #include &lt;streambuf&gt;
+<span class="lineNum"> 52 </span> : #include &lt;bits/cpp_type_traits.h&gt;
+<span class="lineNum"> 53 </span> : #include &lt;ext/type_traits.h&gt;
+<span class="lineNum"> 54 </span> : #include &lt;ext/numeric_traits.h&gt;
+<span class="lineNum"> 55 </span> : #include &lt;bits/streambuf_iterator.h&gt;
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 58 </span> :
+<span class="lineNum"> 59 </span> : // NB: Don't instantiate required wchar_t facets if no wchar_t support.
+<span class="lineNum"> 60 </span> : #ifdef _GLIBCXX_USE_WCHAR_T
+<span class="lineNum"> 61 </span> : # define _GLIBCXX_NUM_FACETS 28
+<span class="lineNum"> 62 </span> : #else
+<span class="lineNum"> 63 </span> : # define _GLIBCXX_NUM_FACETS 14
+<span class="lineNum"> 64 </span> : #endif
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span> : // Convert string to numeric value of type _Tv and store results.
+<span class="lineNum"> 67 </span> : // NB: This is specialized for all required types, there is no
+<span class="lineNum"> 68 </span> : // generic definition.
+<span class="lineNum"> 69 </span> : template&lt;typename _Tv&gt;
+<span class="lineNum"> 70 </span> : void
+<span class="lineNum"> 71 </span> : __convert_to_v(const char* __in, _Tv&amp; __out, ios_base::iostate&amp; __err,
+<span class="lineNum"> 72 </span> : const __c_locale&amp; __cloc);
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span> : // Explicit specializations for required types.
+<span class="lineNum"> 75 </span> : template&lt;&gt;
+<span class="lineNum"> 76 </span> : void
+<span class="lineNum"> 77 </span> : __convert_to_v(const char*, float&amp;, ios_base::iostate&amp;,
+<span class="lineNum"> 78 </span> : const __c_locale&amp;);
+<span class="lineNum"> 79 </span> :
+<span class="lineNum"> 80 </span> : template&lt;&gt;
+<span class="lineNum"> 81 </span> : void
+<span class="lineNum"> 82 </span> : __convert_to_v(const char*, double&amp;, ios_base::iostate&amp;,
+<span class="lineNum"> 83 </span> : const __c_locale&amp;);
+<span class="lineNum"> 84 </span> :
+<span class="lineNum"> 85 </span> : template&lt;&gt;
+<span class="lineNum"> 86 </span> : void
+<span class="lineNum"> 87 </span> : __convert_to_v(const char*, long double&amp;, ios_base::iostate&amp;,
+<span class="lineNum"> 88 </span> : const __c_locale&amp;);
+<span class="lineNum"> 89 </span> :
+<span class="lineNum"> 90 </span> : // NB: __pad is a struct, rather than a function, so it can be
+<span class="lineNum"> 91 </span> : // partially-specialized.
+<span class="lineNum"> 92 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 93 </span> : struct __pad
+<span class="lineNum"> 94 </span> : {
+<span class="lineNum"> 95 </span> : static void
+<span class="lineNum"> 96 </span> : _S_pad(ios_base&amp; __io, _CharT __fill, _CharT* __news,
+<span class="lineNum"> 97 </span> : const _CharT* __olds, const streamsize __newlen,
+<span class="lineNum"> 98 </span> : const streamsize __oldlen);
+<span class="lineNum"> 99 </span> : };
+<span class="lineNum"> 100 </span> :
+<span class="lineNum"> 101 </span> : // Used by both numeric and monetary facets.
+<span class="lineNum"> 102 </span> : // Inserts &quot;group separator&quot; characters into an array of characters.
+<span class="lineNum"> 103 </span> : // It's recursive, one iteration per group. It moves the characters
+<span class="lineNum"> 104 </span> : // in the buffer this way: &quot;xxxx12345&quot; -&gt; &quot;12,345xxx&quot;. Call this
+<span class="lineNum"> 105 </span> : // only with __gsize != 0.
+<span class="lineNum"> 106 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 107 </span> : _CharT*
+<span class="lineNum"> 108 </span> : __add_grouping(_CharT* __s, _CharT __sep,
+<span class="lineNum"> 109 </span> : const char* __gbeg, size_t __gsize,
+<span class="lineNum"> 110 </span> : const _CharT* __first, const _CharT* __last);
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span> : // This template permits specializing facet output code for
+<span class="lineNum"> 113 </span> : // ostreambuf_iterator. For ostreambuf_iterator, sputn is
+<span class="lineNum"> 114 </span> : // significantly more efficient than incrementing iterators.
+<span class="lineNum"> 115 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 116 </span> : inline
+<span class="lineNum"> 117 </span> : ostreambuf_iterator&lt;_CharT&gt;
+<span class="lineNum"> 118 </span> : __write(ostreambuf_iterator&lt;_CharT&gt; __s, const _CharT* __ws, int __len)
+<span class="lineNum"> 119 </span> : {
+<span class="lineNum"> 120 </span> : __s._M_put(__ws, __len);
+<span class="lineNum"> 121 </span> : return __s;
+<span class="lineNum"> 122 </span> : }
+<span class="lineNum"> 123 </span> :
+<span class="lineNum"> 124 </span> : // This is the unspecialized form of the template.
+<span class="lineNum"> 125 </span> : template&lt;typename _CharT, typename _OutIter&gt;
+<span class="lineNum"> 126 </span> : inline
+<span class="lineNum"> 127 </span> : _OutIter
+<span class="lineNum"> 128 </span> : __write(_OutIter __s, const _CharT* __ws, int __len)
+<span class="lineNum"> 129 </span> : {
+<span class="lineNum"> 130 </span> : for (int __j = 0; __j &lt; __len; __j++, ++__s)
+<span class="lineNum"> 131 </span> : *__s = __ws[__j];
+<span class="lineNum"> 132 </span> : return __s;
+<span class="lineNum"> 133 </span> : }
+<span class="lineNum"> 134 </span> :
+<span class="lineNum"> 135 </span> :
+<span class="lineNum"> 136 </span> : // 22.2.1.1 Template class ctype
+<span class="lineNum"> 137 </span> : // Include host and configuration specific ctype enums for ctype_base.
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> : // Common base for ctype&lt;_CharT&gt;.
+<span class="lineNum"> 140 </span> : /**
+<span class="lineNum"> 141 </span> : * @brief Common base for ctype facet
+<span class="lineNum"> 142 </span> : *
+<span class="lineNum"> 143 </span> : * This template class provides implementations of the public functions
+<span class="lineNum"> 144 </span> : * that forward to the protected virtual functions.
+<span class="lineNum"> 145 </span> : *
+<span class="lineNum"> 146 </span> : * This template also provides abstract stubs for the protected virtual
+<span class="lineNum"> 147 </span> : * functions.
+<span class="lineNum"> 148 </span> : */
+<span class="lineNum"> 149 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 150 </span> : class __ctype_abstract_base : public locale::facet, public ctype_base
+<span class="lineNum"> 151 </span> : {
+<span class="lineNum"> 152 </span> : public:
+<span class="lineNum"> 153 </span> : // Types:
+<span class="lineNum"> 154 </span> : /// Typedef for the template parameter
+<span class="lineNum"> 155 </span> : typedef _CharT char_type;
+<span class="lineNum"> 156 </span> :
+<span class="lineNum"> 157 </span> : /**
+<span class="lineNum"> 158 </span> : * @brief Test char_type classification.
+<span class="lineNum"> 159 </span> : *
+<span class="lineNum"> 160 </span> : * This function finds a mask M for @a c and compares it to mask @a m.
+<span class="lineNum"> 161 </span> : * It does so by returning the value of ctype&lt;char_type&gt;::do_is().
+<span class="lineNum"> 162 </span> : *
+<span class="lineNum"> 163 </span> : * @param c The char_type to compare the mask of.
+<span class="lineNum"> 164 </span> : * @param m The mask to compare against.
+<span class="lineNum"> 165 </span> : * @return (M &amp; m) != 0.
+<span class="lineNum"> 166 </span> : */
+<span class="lineNum"> 167 </span> : bool
+<span class="lineNum"> 168 </span> : is(mask __m, char_type __c) const
+<span class="lineNum"> 169 </span> : { return this-&gt;do_is(__m, __c); }
+<span class="lineNum"> 170 </span> :
+<span class="lineNum"> 171 </span> : /**
+<span class="lineNum"> 172 </span> : * @brief Return a mask array.
+<span class="lineNum"> 173 </span> : *
+<span class="lineNum"> 174 </span> : * This function finds the mask for each char_type in the range [lo,hi)
+<span class="lineNum"> 175 </span> : * and successively writes it to vec. vec must have as many elements
+<span class="lineNum"> 176 </span> : * as the char array. It does so by returning the value of
+<span class="lineNum"> 177 </span> : * ctype&lt;char_type&gt;::do_is().
+<span class="lineNum"> 178 </span> : *
+<span class="lineNum"> 179 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 180 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 181 </span> : * @param vec Pointer to an array of mask storage.
+<span class="lineNum"> 182 </span> : * @return @a hi.
+<span class="lineNum"> 183 </span> : */
+<span class="lineNum"> 184 </span> : const char_type*
+<span class="lineNum"> 185 </span> : is(const char_type *__lo, const char_type *__hi, mask *__vec) const
+<span class="lineNum"> 186 </span> : { return this-&gt;do_is(__lo, __hi, __vec); }
+<span class="lineNum"> 187 </span> :
+<span class="lineNum"> 188 </span> : /**
+<span class="lineNum"> 189 </span> : * @brief Find char_type matching a mask
+<span class="lineNum"> 190 </span> : *
+<span class="lineNum"> 191 </span> : * This function searches for and returns the first char_type c in
+<span class="lineNum"> 192 </span> : * [lo,hi) for which is(m,c) is true. It does so by returning
+<span class="lineNum"> 193 </span> : * ctype&lt;char_type&gt;::do_scan_is().
+<span class="lineNum"> 194 </span> : *
+<span class="lineNum"> 195 </span> : * @param m The mask to compare against.
+<span class="lineNum"> 196 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 197 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 198 </span> : * @return Pointer to matching char_type if found, else @a hi.
+<span class="lineNum"> 199 </span> : */
+<span class="lineNum"> 200 </span> : const char_type*
+<span class="lineNum"> 201 </span> : scan_is(mask __m, const char_type* __lo, const char_type* __hi) const
+<span class="lineNum"> 202 </span> : { return this-&gt;do_scan_is(__m, __lo, __hi); }
+<span class="lineNum"> 203 </span> :
+<span class="lineNum"> 204 </span> : /**
+<span class="lineNum"> 205 </span> : * @brief Find char_type not matching a mask
+<span class="lineNum"> 206 </span> : *
+<span class="lineNum"> 207 </span> : * This function searches for and returns the first char_type c in
+<span class="lineNum"> 208 </span> : * [lo,hi) for which is(m,c) is false. It does so by returning
+<span class="lineNum"> 209 </span> : * ctype&lt;char_type&gt;::do_scan_not().
+<span class="lineNum"> 210 </span> : *
+<span class="lineNum"> 211 </span> : * @param m The mask to compare against.
+<span class="lineNum"> 212 </span> : * @param lo Pointer to first char in range.
+<span class="lineNum"> 213 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 214 </span> : * @return Pointer to non-matching char if found, else @a hi.
+<span class="lineNum"> 215 </span> : */
+<span class="lineNum"> 216 </span> : const char_type*
+<span class="lineNum"> 217 </span> : scan_not(mask __m, const char_type* __lo, const char_type* __hi) const
+<span class="lineNum"> 218 </span> : { return this-&gt;do_scan_not(__m, __lo, __hi); }
+<span class="lineNum"> 219 </span> :
+<span class="lineNum"> 220 </span> : /**
+<span class="lineNum"> 221 </span> : * @brief Convert to uppercase.
+<span class="lineNum"> 222 </span> : *
+<span class="lineNum"> 223 </span> : * This function converts the argument to uppercase if possible.
+<span class="lineNum"> 224 </span> : * If not possible (for example, '2'), returns the argument. It does
+<span class="lineNum"> 225 </span> : * so by returning ctype&lt;char_type&gt;::do_toupper().
+<span class="lineNum"> 226 </span> : *
+<span class="lineNum"> 227 </span> : * @param c The char_type to convert.
+<span class="lineNum"> 228 </span> : * @return The uppercase char_type if convertible, else @a c.
+<span class="lineNum"> 229 </span> : */
+<span class="lineNum"> 230 </span> : char_type
+<span class="lineNum"> 231 </span> : toupper(char_type __c) const
+<span class="lineNum"> 232 </span> : { return this-&gt;do_toupper(__c); }
+<span class="lineNum"> 233 </span> :
+<span class="lineNum"> 234 </span> : /**
+<span class="lineNum"> 235 </span> : * @brief Convert array to uppercase.
+<span class="lineNum"> 236 </span> : *
+<span class="lineNum"> 237 </span> : * This function converts each char_type in the range [lo,hi) to
+<span class="lineNum"> 238 </span> : * uppercase if possible. Other elements remain untouched. It does so
+<span class="lineNum"> 239 </span> : * by returning ctype&lt;char_type&gt;:: do_toupper(lo, hi).
+<span class="lineNum"> 240 </span> : *
+<span class="lineNum"> 241 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 242 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 243 </span> : * @return @a hi.
+<span class="lineNum"> 244 </span> : */
+<span class="lineNum"> 245 </span> : const char_type*
+<span class="lineNum"> 246 </span> : toupper(char_type *__lo, const char_type* __hi) const
+<span class="lineNum"> 247 </span> : { return this-&gt;do_toupper(__lo, __hi); }
+<span class="lineNum"> 248 </span> :
+<span class="lineNum"> 249 </span> : /**
+<span class="lineNum"> 250 </span> : * @brief Convert to lowercase.
+<span class="lineNum"> 251 </span> : *
+<span class="lineNum"> 252 </span> : * This function converts the argument to lowercase if possible. If
+<span class="lineNum"> 253 </span> : * not possible (for example, '2'), returns the argument. It does so
+<span class="lineNum"> 254 </span> : * by returning ctype&lt;char_type&gt;::do_tolower(c).
+<span class="lineNum"> 255 </span> : *
+<span class="lineNum"> 256 </span> : * @param c The char_type to convert.
+<span class="lineNum"> 257 </span> : * @return The lowercase char_type if convertible, else @a c.
+<span class="lineNum"> 258 </span> : */
+<span class="lineNum"> 259 </span> : char_type
+<span class="lineNum"> 260 </span> : tolower(char_type __c) const
+<span class="lineNum"> 261 </span> : { return this-&gt;do_tolower(__c); }
+<span class="lineNum"> 262 </span> :
+<span class="lineNum"> 263 </span> : /**
+<span class="lineNum"> 264 </span> : * @brief Convert array to lowercase.
+<span class="lineNum"> 265 </span> : *
+<span class="lineNum"> 266 </span> : * This function converts each char_type in the range [lo,hi) to
+<span class="lineNum"> 267 </span> : * lowercase if possible. Other elements remain untouched. It does so
+<span class="lineNum"> 268 </span> : * by returning ctype&lt;char_type&gt;:: do_tolower(lo, hi).
+<span class="lineNum"> 269 </span> : *
+<span class="lineNum"> 270 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 271 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 272 </span> : * @return @a hi.
+<span class="lineNum"> 273 </span> : */
+<span class="lineNum"> 274 </span> : const char_type*
+<span class="lineNum"> 275 </span> : tolower(char_type* __lo, const char_type* __hi) const
+<span class="lineNum"> 276 </span> : { return this-&gt;do_tolower(__lo, __hi); }
+<span class="lineNum"> 277 </span> :
+<span class="lineNum"> 278 </span> : /**
+<span class="lineNum"> 279 </span> : * @brief Widen char to char_type
+<span class="lineNum"> 280 </span> : *
+<span class="lineNum"> 281 </span> : * This function converts the char argument to char_type using the
+<span class="lineNum"> 282 </span> : * simplest reasonable transformation. It does so by returning
+<span class="lineNum"> 283 </span> : * ctype&lt;char_type&gt;::do_widen(c).
+<span class="lineNum"> 284 </span> : *
+<span class="lineNum"> 285 </span> : * Note: this is not what you want for codepage conversions. See
+<span class="lineNum"> 286 </span> : * codecvt for that.
+<span class="lineNum"> 287 </span> : *
+<span class="lineNum"> 288 </span> : * @param c The char to convert.
+<span class="lineNum"> 289 </span> : * @return The converted char_type.
+<span class="lineNum"> 290 </span> : */
+<span class="lineNum"> 291 </span> : char_type
+<span class="lineNum"> 292 </span> : widen(char __c) const
+<span class="lineNum"> 293 </span> : { return this-&gt;do_widen(__c); }
+<span class="lineNum"> 294 </span> :
+<span class="lineNum"> 295 </span> : /**
+<span class="lineNum"> 296 </span> : * @brief Widen array to char_type
+<span class="lineNum"> 297 </span> : *
+<span class="lineNum"> 298 </span> : * This function converts each char in the input to char_type using the
+<span class="lineNum"> 299 </span> : * simplest reasonable transformation. It does so by returning
+<span class="lineNum"> 300 </span> : * ctype&lt;char_type&gt;::do_widen(c).
+<span class="lineNum"> 301 </span> : *
+<span class="lineNum"> 302 </span> : * Note: this is not what you want for codepage conversions. See
+<span class="lineNum"> 303 </span> : * codecvt for that.
+<span class="lineNum"> 304 </span> : *
+<span class="lineNum"> 305 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 306 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 307 </span> : * @param to Pointer to the destination array.
+<span class="lineNum"> 308 </span> : * @return @a hi.
+<span class="lineNum"> 309 </span> : */
+<span class="lineNum"> 310 </span> : const char*
+<span class="lineNum"> 311 </span> : widen(const char* __lo, const char* __hi, char_type* __to) const
+<span class="lineNum"> 312 </span> : { return this-&gt;do_widen(__lo, __hi, __to); }
+<span class="lineNum"> 313 </span> :
+<span class="lineNum"> 314 </span> : /**
+<span class="lineNum"> 315 </span> : * @brief Narrow char_type to char
+<span class="lineNum"> 316 </span> : *
+<span class="lineNum"> 317 </span> : * This function converts the char_type to char using the simplest
+<span class="lineNum"> 318 </span> : * reasonable transformation. If the conversion fails, dfault is
+<span class="lineNum"> 319 </span> : * returned instead. It does so by returning
+<span class="lineNum"> 320 </span> : * ctype&lt;char_type&gt;::do_narrow(c).
+<span class="lineNum"> 321 </span> : *
+<span class="lineNum"> 322 </span> : * Note: this is not what you want for codepage conversions. See
+<span class="lineNum"> 323 </span> : * codecvt for that.
+<span class="lineNum"> 324 </span> : *
+<span class="lineNum"> 325 </span> : * @param c The char_type to convert.
+<span class="lineNum"> 326 </span> : * @param dfault Char to return if conversion fails.
+<span class="lineNum"> 327 </span> : * @return The converted char.
+<span class="lineNum"> 328 </span> : */
+<span class="lineNum"> 329 </span> : char
+<span class="lineNum"> 330 </span> : narrow(char_type __c, char __dfault) const
+<span class="lineNum"> 331 </span> : { return this-&gt;do_narrow(__c, __dfault); }
+<span class="lineNum"> 332 </span> :
+<span class="lineNum"> 333 </span> : /**
+<span class="lineNum"> 334 </span> : * @brief Narrow array to char array
+<span class="lineNum"> 335 </span> : *
+<span class="lineNum"> 336 </span> : * This function converts each char_type in the input to char using the
+<span class="lineNum"> 337 </span> : * simplest reasonable transformation and writes the results to the
+<span class="lineNum"> 338 </span> : * destination array. For any char_type in the input that cannot be
+<span class="lineNum"> 339 </span> : * converted, @a dfault is used instead. It does so by returning
+<span class="lineNum"> 340 </span> : * ctype&lt;char_type&gt;::do_narrow(lo, hi, dfault, to).
+<span class="lineNum"> 341 </span> : *
+<span class="lineNum"> 342 </span> : * Note: this is not what you want for codepage conversions. See
+<span class="lineNum"> 343 </span> : * codecvt for that.
+<span class="lineNum"> 344 </span> : *
+<span class="lineNum"> 345 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 346 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 347 </span> : * @param dfault Char to use if conversion fails.
+<span class="lineNum"> 348 </span> : * @param to Pointer to the destination array.
+<span class="lineNum"> 349 </span> : * @return @a hi.
+<span class="lineNum"> 350 </span> : */
+<span class="lineNum"> 351 </span> : const char_type*
+<span class="lineNum"> 352 </span> : narrow(const char_type* __lo, const char_type* __hi,
+<span class="lineNum"> 353 </span> : char __dfault, char *__to) const
+<span class="lineNum"> 354 </span> : { return this-&gt;do_narrow(__lo, __hi, __dfault, __to); }
+<span class="lineNum"> 355 </span> :
+<span class="lineNum"> 356 </span> : protected:
+<span class="lineNum"> 357 </span> : explicit
+<span class="lineNum"> 358 </span> : __ctype_abstract_base(size_t __refs = 0): facet(__refs) { }
+<span class="lineNum"> 359 </span> :
+<span class="lineNum"> 360 </span> : virtual
+<span class="lineNum"> 361 </span> : ~__ctype_abstract_base() { }
+<span class="lineNum"> 362 </span> :
+<span class="lineNum"> 363 </span> : /**
+<span class="lineNum"> 364 </span> : * @brief Test char_type classification.
+<span class="lineNum"> 365 </span> : *
+<span class="lineNum"> 366 </span> : * This function finds a mask M for @a c and compares it to mask @a m.
+<span class="lineNum"> 367 </span> : *
+<span class="lineNum"> 368 </span> : * do_is() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 369 </span> : * classifying. do_is() must always return the same result for the
+<span class="lineNum"> 370 </span> : * same input.
+<span class="lineNum"> 371 </span> : *
+<span class="lineNum"> 372 </span> : * @param c The char_type to find the mask of.
+<span class="lineNum"> 373 </span> : * @param m The mask to compare against.
+<span class="lineNum"> 374 </span> : * @return (M &amp; m) != 0.
+<span class="lineNum"> 375 </span> : */
+<span class="lineNum"> 376 </span> : virtual bool
+<span class="lineNum"> 377 </span> : do_is(mask __m, char_type __c) const = 0;
+<span class="lineNum"> 378 </span> :
+<span class="lineNum"> 379 </span> : /**
+<span class="lineNum"> 380 </span> : * @brief Return a mask array.
+<span class="lineNum"> 381 </span> : *
+<span class="lineNum"> 382 </span> : * This function finds the mask for each char_type in the range [lo,hi)
+<span class="lineNum"> 383 </span> : * and successively writes it to vec. vec must have as many elements
+<span class="lineNum"> 384 </span> : * as the input.
+<span class="lineNum"> 385 </span> : *
+<span class="lineNum"> 386 </span> : * do_is() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 387 </span> : * classifying. do_is() must always return the same result for the
+<span class="lineNum"> 388 </span> : * same input.
+<span class="lineNum"> 389 </span> : *
+<span class="lineNum"> 390 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 391 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 392 </span> : * @param vec Pointer to an array of mask storage.
+<span class="lineNum"> 393 </span> : * @return @a hi.
+<span class="lineNum"> 394 </span> : */
+<span class="lineNum"> 395 </span> : virtual const char_type*
+<span class="lineNum"> 396 </span> : do_is(const char_type* __lo, const char_type* __hi,
+<span class="lineNum"> 397 </span> : mask* __vec) const = 0;
+<span class="lineNum"> 398 </span> :
+<span class="lineNum"> 399 </span> : /**
+<span class="lineNum"> 400 </span> : * @brief Find char_type matching mask
+<span class="lineNum"> 401 </span> : *
+<span class="lineNum"> 402 </span> : * This function searches for and returns the first char_type c in
+<span class="lineNum"> 403 </span> : * [lo,hi) for which is(m,c) is true.
+<span class="lineNum"> 404 </span> : *
+<span class="lineNum"> 405 </span> : * do_scan_is() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 406 </span> : * match searching. do_is() must always return the same result for the
+<span class="lineNum"> 407 </span> : * same input.
+<span class="lineNum"> 408 </span> : *
+<span class="lineNum"> 409 </span> : * @param m The mask to compare against.
+<span class="lineNum"> 410 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 411 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 412 </span> : * @return Pointer to a matching char_type if found, else @a hi.
+<span class="lineNum"> 413 </span> : */
+<span class="lineNum"> 414 </span> : virtual const char_type*
+<span class="lineNum"> 415 </span> : do_scan_is(mask __m, const char_type* __lo,
+<span class="lineNum"> 416 </span> : const char_type* __hi) const = 0;
+<span class="lineNum"> 417 </span> :
+<span class="lineNum"> 418 </span> : /**
+<span class="lineNum"> 419 </span> : * @brief Find char_type not matching mask
+<span class="lineNum"> 420 </span> : *
+<span class="lineNum"> 421 </span> : * This function searches for and returns a pointer to the first
+<span class="lineNum"> 422 </span> : * char_type c of [lo,hi) for which is(m,c) is false.
+<span class="lineNum"> 423 </span> : *
+<span class="lineNum"> 424 </span> : * do_scan_is() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 425 </span> : * match searching. do_is() must always return the same result for the
+<span class="lineNum"> 426 </span> : * same input.
+<span class="lineNum"> 427 </span> : *
+<span class="lineNum"> 428 </span> : * @param m The mask to compare against.
+<span class="lineNum"> 429 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 430 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 431 </span> : * @return Pointer to a non-matching char_type if found, else @a hi.
+<span class="lineNum"> 432 </span> : */
+<span class="lineNum"> 433 </span> : virtual const char_type*
+<span class="lineNum"> 434 </span> : do_scan_not(mask __m, const char_type* __lo,
+<span class="lineNum"> 435 </span> : const char_type* __hi) const = 0;
+<span class="lineNum"> 436 </span> :
+<span class="lineNum"> 437 </span> : /**
+<span class="lineNum"> 438 </span> : * @brief Convert to uppercase.
+<span class="lineNum"> 439 </span> : *
+<span class="lineNum"> 440 </span> : * This virtual function converts the char_type argument to uppercase
+<span class="lineNum"> 441 </span> : * if possible. If not possible (for example, '2'), returns the
+<span class="lineNum"> 442 </span> : * argument.
+<span class="lineNum"> 443 </span> : *
+<span class="lineNum"> 444 </span> : * do_toupper() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 445 </span> : * uppercasing. do_toupper() must always return the same result for
+<span class="lineNum"> 446 </span> : * the same input.
+<span class="lineNum"> 447 </span> : *
+<span class="lineNum"> 448 </span> : * @param c The char_type to convert.
+<span class="lineNum"> 449 </span> : * @return The uppercase char_type if convertible, else @a c.
+<span class="lineNum"> 450 </span> : */
+<span class="lineNum"> 451 </span> : virtual char_type
+<span class="lineNum"> 452 </span> : do_toupper(char_type) const = 0;
+<span class="lineNum"> 453 </span> :
+<span class="lineNum"> 454 </span> : /**
+<span class="lineNum"> 455 </span> : * @brief Convert array to uppercase.
+<span class="lineNum"> 456 </span> : *
+<span class="lineNum"> 457 </span> : * This virtual function converts each char_type in the range [lo,hi)
+<span class="lineNum"> 458 </span> : * to uppercase if possible. Other elements remain untouched.
+<span class="lineNum"> 459 </span> : *
+<span class="lineNum"> 460 </span> : * do_toupper() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 461 </span> : * uppercasing. do_toupper() must always return the same result for
+<span class="lineNum"> 462 </span> : * the same input.
+<span class="lineNum"> 463 </span> : *
+<span class="lineNum"> 464 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 465 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 466 </span> : * @return @a hi.
+<span class="lineNum"> 467 </span> : */
+<span class="lineNum"> 468 </span> : virtual const char_type*
+<span class="lineNum"> 469 </span> : do_toupper(char_type* __lo, const char_type* __hi) const = 0;
+<span class="lineNum"> 470 </span> :
+<span class="lineNum"> 471 </span> : /**
+<span class="lineNum"> 472 </span> : * @brief Convert to lowercase.
+<span class="lineNum"> 473 </span> : *
+<span class="lineNum"> 474 </span> : * This virtual function converts the argument to lowercase if
+<span class="lineNum"> 475 </span> : * possible. If not possible (for example, '2'), returns the argument.
+<span class="lineNum"> 476 </span> : *
+<span class="lineNum"> 477 </span> : * do_tolower() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 478 </span> : * lowercasing. do_tolower() must always return the same result for
+<span class="lineNum"> 479 </span> : * the same input.
+<span class="lineNum"> 480 </span> : *
+<span class="lineNum"> 481 </span> : * @param c The char_type to convert.
+<span class="lineNum"> 482 </span> : * @return The lowercase char_type if convertible, else @a c.
+<span class="lineNum"> 483 </span> : */
+<span class="lineNum"> 484 </span> : virtual char_type
+<span class="lineNum"> 485 </span> : do_tolower(char_type) const = 0;
+<span class="lineNum"> 486 </span> :
+<span class="lineNum"> 487 </span> : /**
+<span class="lineNum"> 488 </span> : * @brief Convert array to lowercase.
+<span class="lineNum"> 489 </span> : *
+<span class="lineNum"> 490 </span> : * This virtual function converts each char_type in the range [lo,hi)
+<span class="lineNum"> 491 </span> : * to lowercase if possible. Other elements remain untouched.
+<span class="lineNum"> 492 </span> : *
+<span class="lineNum"> 493 </span> : * do_tolower() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 494 </span> : * lowercasing. do_tolower() must always return the same result for
+<span class="lineNum"> 495 </span> : * the same input.
+<span class="lineNum"> 496 </span> : *
+<span class="lineNum"> 497 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 498 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 499 </span> : * @return @a hi.
+<span class="lineNum"> 500 </span> : */
+<span class="lineNum"> 501 </span> : virtual const char_type*
+<span class="lineNum"> 502 </span> : do_tolower(char_type* __lo, const char_type* __hi) const = 0;
+<span class="lineNum"> 503 </span> :
+<span class="lineNum"> 504 </span> : /**
+<span class="lineNum"> 505 </span> : * @brief Widen char
+<span class="lineNum"> 506 </span> : *
+<span class="lineNum"> 507 </span> : * This virtual function converts the char to char_type using the
+<span class="lineNum"> 508 </span> : * simplest reasonable transformation.
+<span class="lineNum"> 509 </span> : *
+<span class="lineNum"> 510 </span> : * do_widen() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 511 </span> : * widening. do_widen() must always return the same result for the
+<span class="lineNum"> 512 </span> : * same input.
+<span class="lineNum"> 513 </span> : *
+<span class="lineNum"> 514 </span> : * Note: this is not what you want for codepage conversions. See
+<span class="lineNum"> 515 </span> : * codecvt for that.
+<span class="lineNum"> 516 </span> : *
+<span class="lineNum"> 517 </span> : * @param c The char to convert.
+<span class="lineNum"> 518 </span> : * @return The converted char_type
+<span class="lineNum"> 519 </span> : */
+<span class="lineNum"> 520 </span> : virtual char_type
+<span class="lineNum"> 521 </span> : do_widen(char) const = 0;
+<span class="lineNum"> 522 </span> :
+<span class="lineNum"> 523 </span> : /**
+<span class="lineNum"> 524 </span> : * @brief Widen char array
+<span class="lineNum"> 525 </span> : *
+<span class="lineNum"> 526 </span> : * This function converts each char in the input to char_type using the
+<span class="lineNum"> 527 </span> : * simplest reasonable transformation.
+<span class="lineNum"> 528 </span> : *
+<span class="lineNum"> 529 </span> : * do_widen() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 530 </span> : * widening. do_widen() must always return the same result for the
+<span class="lineNum"> 531 </span> : * same input.
+<span class="lineNum"> 532 </span> : *
+<span class="lineNum"> 533 </span> : * Note: this is not what you want for codepage conversions. See
+<span class="lineNum"> 534 </span> : * codecvt for that.
+<span class="lineNum"> 535 </span> : *
+<span class="lineNum"> 536 </span> : * @param lo Pointer to start range.
+<span class="lineNum"> 537 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 538 </span> : * @param to Pointer to the destination array.
+<span class="lineNum"> 539 </span> : * @return @a hi.
+<span class="lineNum"> 540 </span> : */
+<span class="lineNum"> 541 </span> : virtual const char*
+<span class="lineNum"> 542 </span> : do_widen(const char* __lo, const char* __hi,
+<span class="lineNum"> 543 </span> : char_type* __dest) const = 0;
+<span class="lineNum"> 544 </span> :
+<span class="lineNum"> 545 </span> : /**
+<span class="lineNum"> 546 </span> : * @brief Narrow char_type to char
+<span class="lineNum"> 547 </span> : *
+<span class="lineNum"> 548 </span> : * This virtual function converts the argument to char using the
+<span class="lineNum"> 549 </span> : * simplest reasonable transformation. If the conversion fails, dfault
+<span class="lineNum"> 550 </span> : * is returned instead.
+<span class="lineNum"> 551 </span> : *
+<span class="lineNum"> 552 </span> : * do_narrow() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 553 </span> : * narrowing. do_narrow() must always return the same result for the
+<span class="lineNum"> 554 </span> : * same input.
+<span class="lineNum"> 555 </span> : *
+<span class="lineNum"> 556 </span> : * Note: this is not what you want for codepage conversions. See
+<span class="lineNum"> 557 </span> : * codecvt for that.
+<span class="lineNum"> 558 </span> : *
+<span class="lineNum"> 559 </span> : * @param c The char_type to convert.
+<span class="lineNum"> 560 </span> : * @param dfault Char to return if conversion fails.
+<span class="lineNum"> 561 </span> : * @return The converted char.
+<span class="lineNum"> 562 </span> : */
+<span class="lineNum"> 563 </span> : virtual char
+<span class="lineNum"> 564 </span> : do_narrow(char_type, char __dfault) const = 0;
+<span class="lineNum"> 565 </span> :
+<span class="lineNum"> 566 </span> : /**
+<span class="lineNum"> 567 </span> : * @brief Narrow char_type array to char
+<span class="lineNum"> 568 </span> : *
+<span class="lineNum"> 569 </span> : * This virtual function converts each char_type in the range [lo,hi) to
+<span class="lineNum"> 570 </span> : * char using the simplest reasonable transformation and writes the
+<span class="lineNum"> 571 </span> : * results to the destination array. For any element in the input that
+<span class="lineNum"> 572 </span> : * cannot be converted, @a dfault is used instead.
+<span class="lineNum"> 573 </span> : *
+<span class="lineNum"> 574 </span> : * do_narrow() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 575 </span> : * narrowing. do_narrow() must always return the same result for the
+<span class="lineNum"> 576 </span> : * same input.
+<span class="lineNum"> 577 </span> : *
+<span class="lineNum"> 578 </span> : * Note: this is not what you want for codepage conversions. See
+<span class="lineNum"> 579 </span> : * codecvt for that.
+<span class="lineNum"> 580 </span> : *
+<span class="lineNum"> 581 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 582 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 583 </span> : * @param dfault Char to use if conversion fails.
+<span class="lineNum"> 584 </span> : * @param to Pointer to the destination array.
+<span class="lineNum"> 585 </span> : * @return @a hi.
+<span class="lineNum"> 586 </span> : */
+<span class="lineNum"> 587 </span> : virtual const char_type*
+<span class="lineNum"> 588 </span> : do_narrow(const char_type* __lo, const char_type* __hi,
+<span class="lineNum"> 589 </span> : char __dfault, char* __dest) const = 0;
+<span class="lineNum"> 590 </span> : };
+<span class="lineNum"> 591 </span> :
+<span class="lineNum"> 592 </span> : // NB: Generic, mostly useless implementation.
+<span class="lineNum"> 593 </span> : /**
+<span class="lineNum"> 594 </span> : * @brief Template ctype facet
+<span class="lineNum"> 595 </span> : *
+<span class="lineNum"> 596 </span> : * This template class defines classification and conversion functions for
+<span class="lineNum"> 597 </span> : * character sets. It wraps &lt;cctype&gt; functionality. Ctype gets used by
+<span class="lineNum"> 598 </span> : * streams for many I/O operations.
+<span class="lineNum"> 599 </span> : *
+<span class="lineNum"> 600 </span> : * This template provides the protected virtual functions the developer
+<span class="lineNum"> 601 </span> : * will have to replace in a derived class or specialization to make a
+<span class="lineNum"> 602 </span> : * working facet. The public functions that access them are defined in
+<span class="lineNum"> 603 </span> : * __ctype_abstract_base, to allow for implementation flexibility. See
+<span class="lineNum"> 604 </span> : * ctype&lt;wchar_t&gt; for an example. The functions are documented in
+<span class="lineNum"> 605 </span> : * __ctype_abstract_base.
+<span class="lineNum"> 606 </span> : *
+<span class="lineNum"> 607 </span> : * Note: implementations are provided for all the protected virtual
+<span class="lineNum"> 608 </span> : * functions, but will likely not be useful.
+<span class="lineNum"> 609 </span> : */
+<span class="lineNum"> 610 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 611 </span> : class ctype : public __ctype_abstract_base&lt;_CharT&gt;
+<span class="lineNum"> 612 </span> : {
+<span class="lineNum"> 613 </span> : public:
+<span class="lineNum"> 614 </span> : // Types:
+<span class="lineNum"> 615 </span> : typedef _CharT char_type;
+<span class="lineNum"> 616 </span> : typedef typename __ctype_abstract_base&lt;_CharT&gt;::mask mask;
+<span class="lineNum"> 617 </span> :
+<span class="lineNum"> 618 </span> : /// The facet id for ctype&lt;char_type&gt;
+<span class="lineNum"> 619 </span> : static locale::id id;
+<span class="lineNum"> 620 </span> :
+<span class="lineNum"> 621 </span> : explicit
+<span class="lineNum"> 622 </span> : ctype(size_t __refs = 0) : __ctype_abstract_base&lt;_CharT&gt;(__refs) { }
+<span class="lineNum"> 623 </span> :
+<span class="lineNum"> 624 </span> : protected:
+<span class="lineNum"> 625 </span> : virtual
+<span class="lineNum"> 626 </span> : ~ctype();
+<span class="lineNum"> 627 </span> :
+<span class="lineNum"> 628 </span> : virtual bool
+<span class="lineNum"> 629 </span> : do_is(mask __m, char_type __c) const;
+<span class="lineNum"> 630 </span> :
+<span class="lineNum"> 631 </span> : virtual const char_type*
+<span class="lineNum"> 632 </span> : do_is(const char_type* __lo, const char_type* __hi, mask* __vec) const;
+<span class="lineNum"> 633 </span> :
+<span class="lineNum"> 634 </span> : virtual const char_type*
+<span class="lineNum"> 635 </span> : do_scan_is(mask __m, const char_type* __lo, const char_type* __hi) const;
+<span class="lineNum"> 636 </span> :
+<span class="lineNum"> 637 </span> : virtual const char_type*
+<span class="lineNum"> 638 </span> : do_scan_not(mask __m, const char_type* __lo,
+<span class="lineNum"> 639 </span> : const char_type* __hi) const;
+<span class="lineNum"> 640 </span> :
+<span class="lineNum"> 641 </span> : virtual char_type
+<span class="lineNum"> 642 </span> : do_toupper(char_type __c) const;
+<span class="lineNum"> 643 </span> :
+<span class="lineNum"> 644 </span> : virtual const char_type*
+<span class="lineNum"> 645 </span> : do_toupper(char_type* __lo, const char_type* __hi) const;
+<span class="lineNum"> 646 </span> :
+<span class="lineNum"> 647 </span> : virtual char_type
+<span class="lineNum"> 648 </span> : do_tolower(char_type __c) const;
+<span class="lineNum"> 649 </span> :
+<span class="lineNum"> 650 </span> : virtual const char_type*
+<span class="lineNum"> 651 </span> : do_tolower(char_type* __lo, const char_type* __hi) const;
+<span class="lineNum"> 652 </span> :
+<span class="lineNum"> 653 </span> : virtual char_type
+<span class="lineNum"> 654 </span> : do_widen(char __c) const;
+<span class="lineNum"> 655 </span> :
+<span class="lineNum"> 656 </span> : virtual const char*
+<span class="lineNum"> 657 </span> : do_widen(const char* __lo, const char* __hi, char_type* __dest) const;
+<span class="lineNum"> 658 </span> :
+<span class="lineNum"> 659 </span> : virtual char
+<span class="lineNum"> 660 </span> : do_narrow(char_type, char __dfault) const;
+<span class="lineNum"> 661 </span> :
+<span class="lineNum"> 662 </span> : virtual const char_type*
+<span class="lineNum"> 663 </span> : do_narrow(const char_type* __lo, const char_type* __hi,
+<span class="lineNum"> 664 </span> : char __dfault, char* __dest) const;
+<span class="lineNum"> 665 </span> : };
+<span class="lineNum"> 666 </span> :
+<span class="lineNum"> 667 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 668 </span> : locale::id ctype&lt;_CharT&gt;::id;
+<span class="lineNum"> 669 </span> :
+<span class="lineNum"> 670 </span> : // 22.2.1.3 ctype&lt;char&gt; specialization.
+<span class="lineNum"> 671 </span> : /**
+<span class="lineNum"> 672 </span> : * @brief The ctype&lt;char&gt; specialization.
+<span class="lineNum"> 673 </span> : *
+<span class="lineNum"> 674 </span> : * This class defines classification and conversion functions for
+<span class="lineNum"> 675 </span> : * the char type. It gets used by char streams for many I/O
+<span class="lineNum"> 676 </span> : * operations. The char specialization provides a number of
+<span class="lineNum"> 677 </span> : * optimizations as well.
+<span class="lineNum"> 678 </span> : */
+<span class="lineNum"> 679 </span> : template&lt;&gt;
+<span class="lineNum"> 680 </span> : class ctype&lt;char&gt; : public locale::facet, public ctype_base
+<span class="lineNum"> 681 </span> : {
+<span class="lineNum"> 682 </span> : public:
+<span class="lineNum"> 683 </span> : // Types:
+<span class="lineNum"> 684 </span> : /// Typedef for the template parameter char.
+<span class="lineNum"> 685 </span> : typedef char char_type;
+<span class="lineNum"> 686 </span> :
+<span class="lineNum"> 687 </span> : protected:
+<span class="lineNum"> 688 </span> : // Data Members:
+<span class="lineNum"> 689 </span> : __c_locale _M_c_locale_ctype;
+<span class="lineNum"> 690 </span> : bool _M_del;
+<span class="lineNum"> 691 </span> : __to_type _M_toupper;
+<span class="lineNum"> 692 </span> : __to_type _M_tolower;
+<span class="lineNum"> 693 </span> : const mask* _M_table;
+<span class="lineNum"> 694 </span> : mutable char _M_widen_ok;
+<span class="lineNum"> 695 </span> : mutable char _M_widen[1 + static_cast&lt;unsigned char&gt;(-1)];
+<span class="lineNum"> 696 </span> : mutable char _M_narrow[1 + static_cast&lt;unsigned char&gt;(-1)];
+<span class="lineNum"> 697 </span> : mutable char _M_narrow_ok; // 0 uninitialized, 1 init,
+<span class="lineNum"> 698 </span> : // 2 memcpy can't be used
+<span class="lineNum"> 699 </span> :
+<span class="lineNum"> 700 </span> : public:
+<span class="lineNum"> 701 </span> : /// The facet id for ctype&lt;char&gt;
+<span class="lineNum"> 702 </span> : static locale::id id;
+<span class="lineNum"> 703 </span> : /// The size of the mask table. It is SCHAR_MAX + 1.
+<span class="lineNum"> 704 </span> : static const size_t table_size = 1 + static_cast&lt;unsigned char&gt;(-1);
+<span class="lineNum"> 705 </span> :
+<span class="lineNum"> 706 </span> : /**
+<span class="lineNum"> 707 </span> : * @brief Constructor performs initialization.
+<span class="lineNum"> 708 </span> : *
+<span class="lineNum"> 709 </span> : * This is the constructor provided by the standard.
+<span class="lineNum"> 710 </span> : *
+<span class="lineNum"> 711 </span> : * @param table If non-zero, table is used as the per-char mask.
+<span class="lineNum"> 712 </span> : * Else classic_table() is used.
+<span class="lineNum"> 713 </span> : * @param del If true, passes ownership of table to this facet.
+<span class="lineNum"> 714 </span> : * @param refs Passed to the base facet class.
+<span class="lineNum"> 715 </span> : */
+<span class="lineNum"> 716 </span> : explicit
+<span class="lineNum"> 717 </span> : ctype(const mask* __table = 0, bool __del = false, size_t __refs = 0);
+<span class="lineNum"> 718 </span> :
+<span class="lineNum"> 719 </span> : /**
+<span class="lineNum"> 720 </span> : * @brief Constructor performs static initialization.
+<span class="lineNum"> 721 </span> : *
+<span class="lineNum"> 722 </span> : * This constructor is used to construct the initial C locale facet.
+<span class="lineNum"> 723 </span> : *
+<span class="lineNum"> 724 </span> : * @param cloc Handle to C locale data.
+<span class="lineNum"> 725 </span> : * @param table If non-zero, table is used as the per-char mask.
+<span class="lineNum"> 726 </span> : * @param del If true, passes ownership of table to this facet.
+<span class="lineNum"> 727 </span> : * @param refs Passed to the base facet class.
+<span class="lineNum"> 728 </span> : */
+<span class="lineNum"> 729 </span> : explicit
+<span class="lineNum"> 730 </span> : ctype(__c_locale __cloc, const mask* __table = 0, bool __del = false,
+<span class="lineNum"> 731 </span> : size_t __refs = 0);
+<span class="lineNum"> 732 </span> :
+<span class="lineNum"> 733 </span> : /**
+<span class="lineNum"> 734 </span> : * @brief Test char classification.
+<span class="lineNum"> 735 </span> : *
+<span class="lineNum"> 736 </span> : * This function compares the mask table[c] to @a m.
+<span class="lineNum"> 737 </span> : *
+<span class="lineNum"> 738 </span> : * @param c The char to compare the mask of.
+<span class="lineNum"> 739 </span> : * @param m The mask to compare against.
+<span class="lineNum"> 740 </span> : * @return True if m &amp; table[c] is true, false otherwise.
+<span class="lineNum"> 741 </span> : */
+<span class="lineNum"> 742 </span> : inline bool
+<span class="lineNum"> 743 </span> : is(mask __m, char __c) const;
+<span class="lineNum"> 744 </span> :
+<span class="lineNum"> 745 </span> : /**
+<span class="lineNum"> 746 </span> : * @brief Return a mask array.
+<span class="lineNum"> 747 </span> : *
+<span class="lineNum"> 748 </span> : * This function finds the mask for each char in the range [lo, hi) and
+<span class="lineNum"> 749 </span> : * successively writes it to vec. vec must have as many elements as
+<span class="lineNum"> 750 </span> : * the char array.
+<span class="lineNum"> 751 </span> : *
+<span class="lineNum"> 752 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 753 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 754 </span> : * @param vec Pointer to an array of mask storage.
+<span class="lineNum"> 755 </span> : * @return @a hi.
+<span class="lineNum"> 756 </span> : */
+<span class="lineNum"> 757 </span> : inline const char*
+<span class="lineNum"> 758 </span> : is(const char* __lo, const char* __hi, mask* __vec) const;
+<span class="lineNum"> 759 </span> :
+<span class="lineNum"> 760 </span> : /**
+<span class="lineNum"> 761 </span> : * @brief Find char matching a mask
+<span class="lineNum"> 762 </span> : *
+<span class="lineNum"> 763 </span> : * This function searches for and returns the first char in [lo,hi) for
+<span class="lineNum"> 764 </span> : * which is(m,char) is true.
+<span class="lineNum"> 765 </span> : *
+<span class="lineNum"> 766 </span> : * @param m The mask to compare against.
+<span class="lineNum"> 767 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 768 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 769 </span> : * @return Pointer to a matching char if found, else @a hi.
+<span class="lineNum"> 770 </span> : */
+<span class="lineNum"> 771 </span> : inline const char*
+<span class="lineNum"> 772 </span> : scan_is(mask __m, const char* __lo, const char* __hi) const;
+<span class="lineNum"> 773 </span> :
+<span class="lineNum"> 774 </span> : /**
+<span class="lineNum"> 775 </span> : * @brief Find char not matching a mask
+<span class="lineNum"> 776 </span> : *
+<span class="lineNum"> 777 </span> : * This function searches for and returns a pointer to the first char
+<span class="lineNum"> 778 </span> : * in [lo,hi) for which is(m,char) is false.
+<span class="lineNum"> 779 </span> : *
+<span class="lineNum"> 780 </span> : * @param m The mask to compare against.
+<span class="lineNum"> 781 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 782 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 783 </span> : * @return Pointer to a non-matching char if found, else @a hi.
+<span class="lineNum"> 784 </span> : */
+<span class="lineNum"> 785 </span> : inline const char*
+<span class="lineNum"> 786 </span> : scan_not(mask __m, const char* __lo, const char* __hi) const;
+<span class="lineNum"> 787 </span> :
+<span class="lineNum"> 788 </span> : /**
+<span class="lineNum"> 789 </span> : * @brief Convert to uppercase.
+<span class="lineNum"> 790 </span> : *
+<span class="lineNum"> 791 </span> : * This function converts the char argument to uppercase if possible.
+<span class="lineNum"> 792 </span> : * If not possible (for example, '2'), returns the argument.
+<span class="lineNum"> 793 </span> : *
+<span class="lineNum"> 794 </span> : * toupper() acts as if it returns ctype&lt;char&gt;::do_toupper(c).
+<span class="lineNum"> 795 </span> : * do_toupper() must always return the same result for the same input.
+<span class="lineNum"> 796 </span> : *
+<span class="lineNum"> 797 </span> : * @param c The char to convert.
+<span class="lineNum"> 798 </span> : * @return The uppercase char if convertible, else @a c.
+<span class="lineNum"> 799 </span> : */
+<span class="lineNum"> 800 </span> : char_type
+<span class="lineNum"> 801 </span> : toupper(char_type __c) const
+<span class="lineNum"> 802 </span> : { return this-&gt;do_toupper(__c); }
+<span class="lineNum"> 803 </span> :
+<span class="lineNum"> 804 </span> : /**
+<span class="lineNum"> 805 </span> : * @brief Convert array to uppercase.
+<span class="lineNum"> 806 </span> : *
+<span class="lineNum"> 807 </span> : * This function converts each char in the range [lo,hi) to uppercase
+<span class="lineNum"> 808 </span> : * if possible. Other chars remain untouched.
+<span class="lineNum"> 809 </span> : *
+<span class="lineNum"> 810 </span> : * toupper() acts as if it returns ctype&lt;char&gt;:: do_toupper(lo, hi).
+<span class="lineNum"> 811 </span> : * do_toupper() must always return the same result for the same input.
+<span class="lineNum"> 812 </span> : *
+<span class="lineNum"> 813 </span> : * @param lo Pointer to first char in range.
+<span class="lineNum"> 814 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 815 </span> : * @return @a hi.
+<span class="lineNum"> 816 </span> : */
+<span class="lineNum"> 817 </span> : const char_type*
+<span class="lineNum"> 818 </span> : toupper(char_type *__lo, const char_type* __hi) const
+<span class="lineNum"> 819 </span> : { return this-&gt;do_toupper(__lo, __hi); }
+<span class="lineNum"> 820 </span> :
+<span class="lineNum"> 821 </span> : /**
+<span class="lineNum"> 822 </span> : * @brief Convert to lowercase.
+<span class="lineNum"> 823 </span> : *
+<span class="lineNum"> 824 </span> : * This function converts the char argument to lowercase if possible.
+<span class="lineNum"> 825 </span> : * If not possible (for example, '2'), returns the argument.
+<span class="lineNum"> 826 </span> : *
+<span class="lineNum"> 827 </span> : * tolower() acts as if it returns ctype&lt;char&gt;::do_tolower(c).
+<span class="lineNum"> 828 </span> : * do_tolower() must always return the same result for the same input.
+<span class="lineNum"> 829 </span> : *
+<span class="lineNum"> 830 </span> : * @param c The char to convert.
+<span class="lineNum"> 831 </span> : * @return The lowercase char if convertible, else @a c.
+<span class="lineNum"> 832 </span> : */
+<span class="lineNum"> 833 </span> : char_type
+<span class="lineNum"> 834 </span> : tolower(char_type __c) const
+<span class="lineNum"> 835 </span> : { return this-&gt;do_tolower(__c); }
+<span class="lineNum"> 836 </span> :
+<span class="lineNum"> 837 </span> : /**
+<span class="lineNum"> 838 </span> : * @brief Convert array to lowercase.
+<span class="lineNum"> 839 </span> : *
+<span class="lineNum"> 840 </span> : * This function converts each char in the range [lo,hi) to lowercase
+<span class="lineNum"> 841 </span> : * if possible. Other chars remain untouched.
+<span class="lineNum"> 842 </span> : *
+<span class="lineNum"> 843 </span> : * tolower() acts as if it returns ctype&lt;char&gt;:: do_tolower(lo, hi).
+<span class="lineNum"> 844 </span> : * do_tolower() must always return the same result for the same input.
+<span class="lineNum"> 845 </span> : *
+<span class="lineNum"> 846 </span> : * @param lo Pointer to first char in range.
+<span class="lineNum"> 847 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 848 </span> : * @return @a hi.
+<span class="lineNum"> 849 </span> : */
+<span class="lineNum"> 850 </span> : const char_type*
+<span class="lineNum"> 851 </span> : tolower(char_type* __lo, const char_type* __hi) const
+<span class="lineNum"> 852 </span> : { return this-&gt;do_tolower(__lo, __hi); }
+<span class="lineNum"> 853 </span> :
+<span class="lineNum"> 854 </span> : /**
+<span class="lineNum"> 855 </span> : * @brief Widen char
+<span class="lineNum"> 856 </span> : *
+<span class="lineNum"> 857 </span> : * This function converts the char to char_type using the simplest
+<span class="lineNum"> 858 </span> : * reasonable transformation. For an underived ctype&lt;char&gt; facet, the
+<span class="lineNum"> 859 </span> : * argument will be returned unchanged.
+<span class="lineNum"> 860 </span> : *
+<span class="lineNum"> 861 </span> : * This function works as if it returns ctype&lt;char&gt;::do_widen(c).
+<span class="lineNum"> 862 </span> : * do_widen() must always return the same result for the same input.
+<span class="lineNum"> 863 </span> : *
+<span class="lineNum"> 864 </span> : * Note: this is not what you want for codepage conversions. See
+<span class="lineNum"> 865 </span> : * codecvt for that.
+<span class="lineNum"> 866 </span> : *
+<span class="lineNum"> 867 </span> : * @param c The char to convert.
+<span class="lineNum"> 868 </span> : * @return The converted character.
+<span class="lineNum"> 869 </span> : */
+<span class="lineNum"> 870 </span> : char_type
+<span class="lineNum"> 871 </span><span class="lineNoCov"> 0 : widen(char __c) const</span>
+<span class="lineNum"> 872 </span> : {
+<span class="lineNum"> 873 </span><span class="lineNoCov"> 0 : if (_M_widen_ok)</span>
+<span class="lineNum"> 874 </span><span class="lineNoCov"> 0 : return _M_widen[static_cast&lt;unsigned char&gt;(__c)];</span>
+<span class="lineNum"> 875 </span><span class="lineNoCov"> 0 : this-&gt;_M_widen_init();</span>
+<span class="lineNum"> 876 </span><span class="lineNoCov"> 0 : return this-&gt;do_widen(__c);</span>
+<span class="lineNum"> 877 </span> : }
+<span class="lineNum"> 878 </span> :
+<span class="lineNum"> 879 </span> : /**
+<span class="lineNum"> 880 </span> : * @brief Widen char array
+<span class="lineNum"> 881 </span> : *
+<span class="lineNum"> 882 </span> : * This function converts each char in the input to char using the
+<span class="lineNum"> 883 </span> : * simplest reasonable transformation. For an underived ctype&lt;char&gt;
+<span class="lineNum"> 884 </span> : * facet, the argument will be copied unchanged.
+<span class="lineNum"> 885 </span> : *
+<span class="lineNum"> 886 </span> : * This function works as if it returns ctype&lt;char&gt;::do_widen(c).
+<span class="lineNum"> 887 </span> : * do_widen() must always return the same result for the same input.
+<span class="lineNum"> 888 </span> : *
+<span class="lineNum"> 889 </span> : * Note: this is not what you want for codepage conversions. See
+<span class="lineNum"> 890 </span> : * codecvt for that.
+<span class="lineNum"> 891 </span> : *
+<span class="lineNum"> 892 </span> : * @param lo Pointer to first char in range.
+<span class="lineNum"> 893 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 894 </span> : * @param to Pointer to the destination array.
+<span class="lineNum"> 895 </span> : * @return @a hi.
+<span class="lineNum"> 896 </span> : */
+<span class="lineNum"> 897 </span> : const char*
+<span class="lineNum"> 898 </span> : widen(const char* __lo, const char* __hi, char_type* __to) const
+<span class="lineNum"> 899 </span> : {
+<span class="lineNum"> 900 </span> : if (_M_widen_ok == 1)
+<span class="lineNum"> 901 </span> : {
+<span class="lineNum"> 902 </span> : __builtin_memcpy(__to, __lo, __hi - __lo);
+<span class="lineNum"> 903 </span> : return __hi;
+<span class="lineNum"> 904 </span> : }
+<span class="lineNum"> 905 </span> : if (!_M_widen_ok)
+<span class="lineNum"> 906 </span> : _M_widen_init();
+<span class="lineNum"> 907 </span> : return this-&gt;do_widen(__lo, __hi, __to);
+<span class="lineNum"> 908 </span> : }
+<span class="lineNum"> 909 </span> :
+<span class="lineNum"> 910 </span> : /**
+<span class="lineNum"> 911 </span> : * @brief Narrow char
+<span class="lineNum"> 912 </span> : *
+<span class="lineNum"> 913 </span> : * This function converts the char to char using the simplest
+<span class="lineNum"> 914 </span> : * reasonable transformation. If the conversion fails, dfault is
+<span class="lineNum"> 915 </span> : * returned instead. For an underived ctype&lt;char&gt; facet, @a c
+<span class="lineNum"> 916 </span> : * will be returned unchanged.
+<span class="lineNum"> 917 </span> : *
+<span class="lineNum"> 918 </span> : * This function works as if it returns ctype&lt;char&gt;::do_narrow(c).
+<span class="lineNum"> 919 </span> : * do_narrow() must always return the same result for the same input.
+<span class="lineNum"> 920 </span> : *
+<span class="lineNum"> 921 </span> : * Note: this is not what you want for codepage conversions. See
+<span class="lineNum"> 922 </span> : * codecvt for that.
+<span class="lineNum"> 923 </span> : *
+<span class="lineNum"> 924 </span> : * @param c The char to convert.
+<span class="lineNum"> 925 </span> : * @param dfault Char to return if conversion fails.
+<span class="lineNum"> 926 </span> : * @return The converted character.
+<span class="lineNum"> 927 </span> : */
+<span class="lineNum"> 928 </span> : char
+<span class="lineNum"> 929 </span> : narrow(char_type __c, char __dfault) const
+<span class="lineNum"> 930 </span> : {
+<span class="lineNum"> 931 </span> : if (_M_narrow[static_cast&lt;unsigned char&gt;(__c)])
+<span class="lineNum"> 932 </span> : return _M_narrow[static_cast&lt;unsigned char&gt;(__c)];
+<span class="lineNum"> 933 </span> : const char __t = do_narrow(__c, __dfault);
+<span class="lineNum"> 934 </span> : if (__t != __dfault)
+<span class="lineNum"> 935 </span> : _M_narrow[static_cast&lt;unsigned char&gt;(__c)] = __t;
+<span class="lineNum"> 936 </span> : return __t;
+<span class="lineNum"> 937 </span> : }
+<span class="lineNum"> 938 </span> :
+<span class="lineNum"> 939 </span> : /**
+<span class="lineNum"> 940 </span> : * @brief Narrow char array
+<span class="lineNum"> 941 </span> : *
+<span class="lineNum"> 942 </span> : * This function converts each char in the input to char using the
+<span class="lineNum"> 943 </span> : * simplest reasonable transformation and writes the results to the
+<span class="lineNum"> 944 </span> : * destination array. For any char in the input that cannot be
+<span class="lineNum"> 945 </span> : * converted, @a dfault is used instead. For an underived ctype&lt;char&gt;
+<span class="lineNum"> 946 </span> : * facet, the argument will be copied unchanged.
+<span class="lineNum"> 947 </span> : *
+<span class="lineNum"> 948 </span> : * This function works as if it returns ctype&lt;char&gt;::do_narrow(lo, hi,
+<span class="lineNum"> 949 </span> : * dfault, to). do_narrow() must always return the same result for the
+<span class="lineNum"> 950 </span> : * same input.
+<span class="lineNum"> 951 </span> : *
+<span class="lineNum"> 952 </span> : * Note: this is not what you want for codepage conversions. See
+<span class="lineNum"> 953 </span> : * codecvt for that.
+<span class="lineNum"> 954 </span> : *
+<span class="lineNum"> 955 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 956 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 957 </span> : * @param dfault Char to use if conversion fails.
+<span class="lineNum"> 958 </span> : * @param to Pointer to the destination array.
+<span class="lineNum"> 959 </span> : * @return @a hi.
+<span class="lineNum"> 960 </span> : */
+<span class="lineNum"> 961 </span> : const char_type*
+<span class="lineNum"> 962 </span> : narrow(const char_type* __lo, const char_type* __hi,
+<span class="lineNum"> 963 </span> : char __dfault, char *__to) const
+<span class="lineNum"> 964 </span> : {
+<span class="lineNum"> 965 </span> : if (__builtin_expect(_M_narrow_ok == 1, true))
+<span class="lineNum"> 966 </span> : {
+<span class="lineNum"> 967 </span> : __builtin_memcpy(__to, __lo, __hi - __lo);
+<span class="lineNum"> 968 </span> : return __hi;
+<span class="lineNum"> 969 </span> : }
+<span class="lineNum"> 970 </span> : if (!_M_narrow_ok)
+<span class="lineNum"> 971 </span> : _M_narrow_init();
+<span class="lineNum"> 972 </span> : return this-&gt;do_narrow(__lo, __hi, __dfault, __to);
+<span class="lineNum"> 973 </span> : }
+<span class="lineNum"> 974 </span> :
+<span class="lineNum"> 975 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 976 </span> : // DR 695. ctype&lt;char&gt;::classic_table() not accessible.
+<span class="lineNum"> 977 </span> : /// Returns a pointer to the mask table provided to the constructor, or
+<span class="lineNum"> 978 </span> : /// the default from classic_table() if none was provided.
+<span class="lineNum"> 979 </span> : const mask*
+<span class="lineNum"> 980 </span> : table() const throw()
+<span class="lineNum"> 981 </span> : { return _M_table; }
+<span class="lineNum"> 982 </span> :
+<span class="lineNum"> 983 </span> : /// Returns a pointer to the C locale mask table.
+<span class="lineNum"> 984 </span> : static const mask*
+<span class="lineNum"> 985 </span> : classic_table() throw();
+<span class="lineNum"> 986 </span> : protected:
+<span class="lineNum"> 987 </span> :
+<span class="lineNum"> 988 </span> : /**
+<span class="lineNum"> 989 </span> : * @brief Destructor.
+<span class="lineNum"> 990 </span> : *
+<span class="lineNum"> 991 </span> : * This function deletes table() if @a del was true in the
+<span class="lineNum"> 992 </span> : * constructor.
+<span class="lineNum"> 993 </span> : */
+<span class="lineNum"> 994 </span> : virtual
+<span class="lineNum"> 995 </span> : ~ctype();
+<span class="lineNum"> 996 </span> :
+<span class="lineNum"> 997 </span> : /**
+<span class="lineNum"> 998 </span> : * @brief Convert to uppercase.
+<span class="lineNum"> 999 </span> : *
+<span class="lineNum"> 1000 </span> : * This virtual function converts the char argument to uppercase if
+<span class="lineNum"> 1001 </span> : * possible. If not possible (for example, '2'), returns the argument.
+<span class="lineNum"> 1002 </span> : *
+<span class="lineNum"> 1003 </span> : * do_toupper() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 1004 </span> : * uppercasing. do_toupper() must always return the same result for
+<span class="lineNum"> 1005 </span> : * the same input.
+<span class="lineNum"> 1006 </span> : *
+<span class="lineNum"> 1007 </span> : * @param c The char to convert.
+<span class="lineNum"> 1008 </span> : * @return The uppercase char if convertible, else @a c.
+<span class="lineNum"> 1009 </span> : */
+<span class="lineNum"> 1010 </span> : virtual char_type
+<span class="lineNum"> 1011 </span> : do_toupper(char_type) const;
+<span class="lineNum"> 1012 </span> :
+<span class="lineNum"> 1013 </span> : /**
+<span class="lineNum"> 1014 </span> : * @brief Convert array to uppercase.
+<span class="lineNum"> 1015 </span> : *
+<span class="lineNum"> 1016 </span> : * This virtual function converts each char in the range [lo,hi) to
+<span class="lineNum"> 1017 </span> : * uppercase if possible. Other chars remain untouched.
+<span class="lineNum"> 1018 </span> : *
+<span class="lineNum"> 1019 </span> : * do_toupper() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 1020 </span> : * uppercasing. do_toupper() must always return the same result for
+<span class="lineNum"> 1021 </span> : * the same input.
+<span class="lineNum"> 1022 </span> : *
+<span class="lineNum"> 1023 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 1024 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 1025 </span> : * @return @a hi.
+<span class="lineNum"> 1026 </span> : */
+<span class="lineNum"> 1027 </span> : virtual const char_type*
+<span class="lineNum"> 1028 </span> : do_toupper(char_type* __lo, const char_type* __hi) const;
+<span class="lineNum"> 1029 </span> :
+<span class="lineNum"> 1030 </span> : /**
+<span class="lineNum"> 1031 </span> : * @brief Convert to lowercase.
+<span class="lineNum"> 1032 </span> : *
+<span class="lineNum"> 1033 </span> : * This virtual function converts the char argument to lowercase if
+<span class="lineNum"> 1034 </span> : * possible. If not possible (for example, '2'), returns the argument.
+<span class="lineNum"> 1035 </span> : *
+<span class="lineNum"> 1036 </span> : * do_tolower() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 1037 </span> : * lowercasing. do_tolower() must always return the same result for
+<span class="lineNum"> 1038 </span> : * the same input.
+<span class="lineNum"> 1039 </span> : *
+<span class="lineNum"> 1040 </span> : * @param c The char to convert.
+<span class="lineNum"> 1041 </span> : * @return The lowercase char if convertible, else @a c.
+<span class="lineNum"> 1042 </span> : */
+<span class="lineNum"> 1043 </span> : virtual char_type
+<span class="lineNum"> 1044 </span> : do_tolower(char_type) const;
+<span class="lineNum"> 1045 </span> :
+<span class="lineNum"> 1046 </span> : /**
+<span class="lineNum"> 1047 </span> : * @brief Convert array to lowercase.
+<span class="lineNum"> 1048 </span> : *
+<span class="lineNum"> 1049 </span> : * This virtual function converts each char in the range [lo,hi) to
+<span class="lineNum"> 1050 </span> : * lowercase if possible. Other chars remain untouched.
+<span class="lineNum"> 1051 </span> : *
+<span class="lineNum"> 1052 </span> : * do_tolower() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 1053 </span> : * lowercasing. do_tolower() must always return the same result for
+<span class="lineNum"> 1054 </span> : * the same input.
+<span class="lineNum"> 1055 </span> : *
+<span class="lineNum"> 1056 </span> : * @param lo Pointer to first char in range.
+<span class="lineNum"> 1057 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 1058 </span> : * @return @a hi.
+<span class="lineNum"> 1059 </span> : */
+<span class="lineNum"> 1060 </span> : virtual const char_type*
+<span class="lineNum"> 1061 </span> : do_tolower(char_type* __lo, const char_type* __hi) const;
+<span class="lineNum"> 1062 </span> :
+<span class="lineNum"> 1063 </span> : /**
+<span class="lineNum"> 1064 </span> : * @brief Widen char
+<span class="lineNum"> 1065 </span> : *
+<span class="lineNum"> 1066 </span> : * This virtual function converts the char to char using the simplest
+<span class="lineNum"> 1067 </span> : * reasonable transformation. For an underived ctype&lt;char&gt; facet, the
+<span class="lineNum"> 1068 </span> : * argument will be returned unchanged.
+<span class="lineNum"> 1069 </span> : *
+<span class="lineNum"> 1070 </span> : * do_widen() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 1071 </span> : * widening. do_widen() must always return the same result for the
+<span class="lineNum"> 1072 </span> : * same input.
+<span class="lineNum"> 1073 </span> : *
+<span class="lineNum"> 1074 </span> : * Note: this is not what you want for codepage conversions. See
+<span class="lineNum"> 1075 </span> : * codecvt for that.
+<span class="lineNum"> 1076 </span> : *
+<span class="lineNum"> 1077 </span> : * @param c The char to convert.
+<span class="lineNum"> 1078 </span> : * @return The converted character.
+<span class="lineNum"> 1079 </span> : */
+<span class="lineNum"> 1080 </span> : virtual char_type
+<span class="lineNum"> 1081 </span> : do_widen(char __c) const
+<span class="lineNum"> 1082 </span> : { return __c; }
+<span class="lineNum"> 1083 </span> :
+<span class="lineNum"> 1084 </span> : /**
+<span class="lineNum"> 1085 </span> : * @brief Widen char array
+<span class="lineNum"> 1086 </span> : *
+<span class="lineNum"> 1087 </span> : * This function converts each char in the range [lo,hi) to char using
+<span class="lineNum"> 1088 </span> : * the simplest reasonable transformation. For an underived
+<span class="lineNum"> 1089 </span> : * ctype&lt;char&gt; facet, the argument will be copied unchanged.
+<span class="lineNum"> 1090 </span> : *
+<span class="lineNum"> 1091 </span> : * do_widen() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 1092 </span> : * widening. do_widen() must always return the same result for the
+<span class="lineNum"> 1093 </span> : * same input.
+<span class="lineNum"> 1094 </span> : *
+<span class="lineNum"> 1095 </span> : * Note: this is not what you want for codepage conversions. See
+<span class="lineNum"> 1096 </span> : * codecvt for that.
+<span class="lineNum"> 1097 </span> : *
+<span class="lineNum"> 1098 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 1099 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 1100 </span> : * @param to Pointer to the destination array.
+<span class="lineNum"> 1101 </span> : * @return @a hi.
+<span class="lineNum"> 1102 </span> : */
+<span class="lineNum"> 1103 </span> : virtual const char*
+<span class="lineNum"> 1104 </span> : do_widen(const char* __lo, const char* __hi, char_type* __dest) const
+<span class="lineNum"> 1105 </span> : {
+<span class="lineNum"> 1106 </span> : __builtin_memcpy(__dest, __lo, __hi - __lo);
+<span class="lineNum"> 1107 </span> : return __hi;
+<span class="lineNum"> 1108 </span> : }
+<span class="lineNum"> 1109 </span> :
+<span class="lineNum"> 1110 </span> : /**
+<span class="lineNum"> 1111 </span> : * @brief Narrow char
+<span class="lineNum"> 1112 </span> : *
+<span class="lineNum"> 1113 </span> : * This virtual function converts the char to char using the simplest
+<span class="lineNum"> 1114 </span> : * reasonable transformation. If the conversion fails, dfault is
+<span class="lineNum"> 1115 </span> : * returned instead. For an underived ctype&lt;char&gt; facet, @a c will be
+<span class="lineNum"> 1116 </span> : * returned unchanged.
+<span class="lineNum"> 1117 </span> : *
+<span class="lineNum"> 1118 </span> : * do_narrow() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 1119 </span> : * narrowing. do_narrow() must always return the same result for the
+<span class="lineNum"> 1120 </span> : * same input.
+<span class="lineNum"> 1121 </span> : *
+<span class="lineNum"> 1122 </span> : * Note: this is not what you want for codepage conversions. See
+<span class="lineNum"> 1123 </span> : * codecvt for that.
+<span class="lineNum"> 1124 </span> : *
+<span class="lineNum"> 1125 </span> : * @param c The char to convert.
+<span class="lineNum"> 1126 </span> : * @param dfault Char to return if conversion fails.
+<span class="lineNum"> 1127 </span> : * @return The converted char.
+<span class="lineNum"> 1128 </span> : */
+<span class="lineNum"> 1129 </span> : virtual char
+<span class="lineNum"> 1130 </span> : do_narrow(char_type __c, char) const
+<span class="lineNum"> 1131 </span> : { return __c; }
+<span class="lineNum"> 1132 </span> :
+<span class="lineNum"> 1133 </span> : /**
+<span class="lineNum"> 1134 </span> : * @brief Narrow char array to char array
+<span class="lineNum"> 1135 </span> : *
+<span class="lineNum"> 1136 </span> : * This virtual function converts each char in the range [lo,hi) to
+<span class="lineNum"> 1137 </span> : * char using the simplest reasonable transformation and writes the
+<span class="lineNum"> 1138 </span> : * results to the destination array. For any char in the input that
+<span class="lineNum"> 1139 </span> : * cannot be converted, @a dfault is used instead. For an underived
+<span class="lineNum"> 1140 </span> : * ctype&lt;char&gt; facet, the argument will be copied unchanged.
+<span class="lineNum"> 1141 </span> : *
+<span class="lineNum"> 1142 </span> : * do_narrow() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 1143 </span> : * narrowing. do_narrow() must always return the same result for the
+<span class="lineNum"> 1144 </span> : * same input.
+<span class="lineNum"> 1145 </span> : *
+<span class="lineNum"> 1146 </span> : * Note: this is not what you want for codepage conversions. See
+<span class="lineNum"> 1147 </span> : * codecvt for that.
+<span class="lineNum"> 1148 </span> : *
+<span class="lineNum"> 1149 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 1150 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 1151 </span> : * @param dfault Char to use if conversion fails.
+<span class="lineNum"> 1152 </span> : * @param to Pointer to the destination array.
+<span class="lineNum"> 1153 </span> : * @return @a hi.
+<span class="lineNum"> 1154 </span> : */
+<span class="lineNum"> 1155 </span> : virtual const char_type*
+<span class="lineNum"> 1156 </span> : do_narrow(const char_type* __lo, const char_type* __hi,
+<span class="lineNum"> 1157 </span> : char, char* __dest) const
+<span class="lineNum"> 1158 </span> : {
+<span class="lineNum"> 1159 </span> : __builtin_memcpy(__dest, __lo, __hi - __lo);
+<span class="lineNum"> 1160 </span> : return __hi;
+<span class="lineNum"> 1161 </span> : }
+<span class="lineNum"> 1162 </span> :
+<span class="lineNum"> 1163 </span> : private:
+<span class="lineNum"> 1164 </span> :
+<span class="lineNum"> 1165 </span><span class="lineNoCov"> 0 : void _M_widen_init() const</span>
+<span class="lineNum"> 1166 </span> : {
+<span class="lineNum"> 1167 </span> : char __tmp[sizeof(_M_widen)];
+<span class="lineNum"> 1168 </span><span class="lineNoCov"> 0 : for (size_t __i = 0; __i &lt; sizeof(_M_widen); ++__i)</span>
+<span class="lineNum"> 1169 </span><span class="lineNoCov"> 0 : __tmp[__i] = __i;</span>
+<span class="lineNum"> 1170 </span><span class="lineNoCov"> 0 : do_widen(__tmp, __tmp + sizeof(__tmp), _M_widen);</span>
+<span class="lineNum"> 1171 </span> :
+<span class="lineNum"> 1172 </span><span class="lineNoCov"> 0 : _M_widen_ok = 1;</span>
+<span class="lineNum"> 1173 </span> : // Set _M_widen_ok to 2 if memcpy can't be used.
+<span class="lineNum"> 1174 </span><span class="lineNoCov"> 0 : if (__builtin_memcmp(__tmp, _M_widen, sizeof(_M_widen)))</span>
+<span class="lineNum"> 1175 </span><span class="lineNoCov"> 0 : _M_widen_ok = 2;</span>
+<span class="lineNum"> 1176 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 1177 </span> :
+<span class="lineNum"> 1178 </span> : // Fill in the narrowing cache and flag whether all values are
+<span class="lineNum"> 1179 </span> : // valid or not. _M_narrow_ok is set to 2 if memcpy can't
+<span class="lineNum"> 1180 </span> : // be used.
+<span class="lineNum"> 1181 </span> : void _M_narrow_init() const
+<span class="lineNum"> 1182 </span> : {
+<span class="lineNum"> 1183 </span> : char __tmp[sizeof(_M_narrow)];
+<span class="lineNum"> 1184 </span> : for (size_t __i = 0; __i &lt; sizeof(_M_narrow); ++__i)
+<span class="lineNum"> 1185 </span> : __tmp[__i] = __i;
+<span class="lineNum"> 1186 </span> : do_narrow(__tmp, __tmp + sizeof(__tmp), 0, _M_narrow);
+<span class="lineNum"> 1187 </span> :
+<span class="lineNum"> 1188 </span> : _M_narrow_ok = 1;
+<span class="lineNum"> 1189 </span> : if (__builtin_memcmp(__tmp, _M_narrow, sizeof(_M_narrow)))
+<span class="lineNum"> 1190 </span> : _M_narrow_ok = 2;
+<span class="lineNum"> 1191 </span> : else
+<span class="lineNum"> 1192 </span> : {
+<span class="lineNum"> 1193 </span> : // Deal with the special case of zero: renarrow with a
+<span class="lineNum"> 1194 </span> : // different default and compare.
+<span class="lineNum"> 1195 </span> : char __c;
+<span class="lineNum"> 1196 </span> : do_narrow(__tmp, __tmp + 1, 1, &amp;__c);
+<span class="lineNum"> 1197 </span> : if (__c == 1)
+<span class="lineNum"> 1198 </span> : _M_narrow_ok = 2;
+<span class="lineNum"> 1199 </span> : }
+<span class="lineNum"> 1200 </span> : }
+<span class="lineNum"> 1201 </span> : };
+<span class="lineNum"> 1202 </span> :
+<span class="lineNum"> 1203 </span> : template&lt;&gt;
+<span class="lineNum"> 1204 </span> : const ctype&lt;char&gt;&amp;
+<span class="lineNum"> 1205 </span> : use_facet&lt;ctype&lt;char&gt; &gt;(const locale&amp; __loc);
+<span class="lineNum"> 1206 </span> :
+<span class="lineNum"> 1207 </span> : #ifdef _GLIBCXX_USE_WCHAR_T
+<span class="lineNum"> 1208 </span> : // 22.2.1.3 ctype&lt;wchar_t&gt; specialization
+<span class="lineNum"> 1209 </span> : /**
+<span class="lineNum"> 1210 </span> : * @brief The ctype&lt;wchar_t&gt; specialization.
+<span class="lineNum"> 1211 </span> : *
+<span class="lineNum"> 1212 </span> : * This class defines classification and conversion functions for the
+<span class="lineNum"> 1213 </span> : * wchar_t type. It gets used by wchar_t streams for many I/O operations.
+<span class="lineNum"> 1214 </span> : * The wchar_t specialization provides a number of optimizations as well.
+<span class="lineNum"> 1215 </span> : *
+<span class="lineNum"> 1216 </span> : * ctype&lt;wchar_t&gt; inherits its public methods from
+<span class="lineNum"> 1217 </span> : * __ctype_abstract_base&lt;wchar_t&gt;.
+<span class="lineNum"> 1218 </span> : */
+<span class="lineNum"> 1219 </span> : template&lt;&gt;
+<span class="lineNum"> 1220 </span> : class ctype&lt;wchar_t&gt; : public __ctype_abstract_base&lt;wchar_t&gt;
+<span class="lineNum"> 1221 </span> : {
+<span class="lineNum"> 1222 </span> : public:
+<span class="lineNum"> 1223 </span> : // Types:
+<span class="lineNum"> 1224 </span> : /// Typedef for the template parameter wchar_t.
+<span class="lineNum"> 1225 </span> : typedef wchar_t char_type;
+<span class="lineNum"> 1226 </span> : typedef wctype_t __wmask_type;
+<span class="lineNum"> 1227 </span> :
+<span class="lineNum"> 1228 </span> : protected:
+<span class="lineNum"> 1229 </span> : __c_locale _M_c_locale_ctype;
+<span class="lineNum"> 1230 </span> :
+<span class="lineNum"> 1231 </span> : // Pre-computed narrowed and widened chars.
+<span class="lineNum"> 1232 </span> : bool _M_narrow_ok;
+<span class="lineNum"> 1233 </span> : char _M_narrow[128];
+<span class="lineNum"> 1234 </span> : wint_t _M_widen[1 + static_cast&lt;unsigned char&gt;(-1)];
+<span class="lineNum"> 1235 </span> :
+<span class="lineNum"> 1236 </span> : // Pre-computed elements for do_is.
+<span class="lineNum"> 1237 </span> : mask _M_bit[16];
+<span class="lineNum"> 1238 </span> : __wmask_type _M_wmask[16];
+<span class="lineNum"> 1239 </span> :
+<span class="lineNum"> 1240 </span> : public:
+<span class="lineNum"> 1241 </span> : // Data Members:
+<span class="lineNum"> 1242 </span> : /// The facet id for ctype&lt;wchar_t&gt;
+<span class="lineNum"> 1243 </span> : static locale::id id;
+<span class="lineNum"> 1244 </span> :
+<span class="lineNum"> 1245 </span> : /**
+<span class="lineNum"> 1246 </span> : * @brief Constructor performs initialization.
+<span class="lineNum"> 1247 </span> : *
+<span class="lineNum"> 1248 </span> : * This is the constructor provided by the standard.
+<span class="lineNum"> 1249 </span> : *
+<span class="lineNum"> 1250 </span> : * @param refs Passed to the base facet class.
+<span class="lineNum"> 1251 </span> : */
+<span class="lineNum"> 1252 </span> : explicit
+<span class="lineNum"> 1253 </span> : ctype(size_t __refs = 0);
+<span class="lineNum"> 1254 </span> :
+<span class="lineNum"> 1255 </span> : /**
+<span class="lineNum"> 1256 </span> : * @brief Constructor performs static initialization.
+<span class="lineNum"> 1257 </span> : *
+<span class="lineNum"> 1258 </span> : * This constructor is used to construct the initial C locale facet.
+<span class="lineNum"> 1259 </span> : *
+<span class="lineNum"> 1260 </span> : * @param cloc Handle to C locale data.
+<span class="lineNum"> 1261 </span> : * @param refs Passed to the base facet class.
+<span class="lineNum"> 1262 </span> : */
+<span class="lineNum"> 1263 </span> : explicit
+<span class="lineNum"> 1264 </span> : ctype(__c_locale __cloc, size_t __refs = 0);
+<span class="lineNum"> 1265 </span> :
+<span class="lineNum"> 1266 </span> : protected:
+<span class="lineNum"> 1267 </span> : __wmask_type
+<span class="lineNum"> 1268 </span> : _M_convert_to_wmask(const mask __m) const;
+<span class="lineNum"> 1269 </span> :
+<span class="lineNum"> 1270 </span> : /// Destructor
+<span class="lineNum"> 1271 </span> : virtual
+<span class="lineNum"> 1272 </span> : ~ctype();
+<span class="lineNum"> 1273 </span> :
+<span class="lineNum"> 1274 </span> : /**
+<span class="lineNum"> 1275 </span> : * @brief Test wchar_t classification.
+<span class="lineNum"> 1276 </span> : *
+<span class="lineNum"> 1277 </span> : * This function finds a mask M for @a c and compares it to mask @a m.
+<span class="lineNum"> 1278 </span> : *
+<span class="lineNum"> 1279 </span> : * do_is() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 1280 </span> : * classifying. do_is() must always return the same result for the
+<span class="lineNum"> 1281 </span> : * same input.
+<span class="lineNum"> 1282 </span> : *
+<span class="lineNum"> 1283 </span> : * @param c The wchar_t to find the mask of.
+<span class="lineNum"> 1284 </span> : * @param m The mask to compare against.
+<span class="lineNum"> 1285 </span> : * @return (M &amp; m) != 0.
+<span class="lineNum"> 1286 </span> : */
+<span class="lineNum"> 1287 </span> : virtual bool
+<span class="lineNum"> 1288 </span> : do_is(mask __m, char_type __c) const;
+<span class="lineNum"> 1289 </span> :
+<span class="lineNum"> 1290 </span> : /**
+<span class="lineNum"> 1291 </span> : * @brief Return a mask array.
+<span class="lineNum"> 1292 </span> : *
+<span class="lineNum"> 1293 </span> : * This function finds the mask for each wchar_t in the range [lo,hi)
+<span class="lineNum"> 1294 </span> : * and successively writes it to vec. vec must have as many elements
+<span class="lineNum"> 1295 </span> : * as the input.
+<span class="lineNum"> 1296 </span> : *
+<span class="lineNum"> 1297 </span> : * do_is() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 1298 </span> : * classifying. do_is() must always return the same result for the
+<span class="lineNum"> 1299 </span> : * same input.
+<span class="lineNum"> 1300 </span> : *
+<span class="lineNum"> 1301 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 1302 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 1303 </span> : * @param vec Pointer to an array of mask storage.
+<span class="lineNum"> 1304 </span> : * @return @a hi.
+<span class="lineNum"> 1305 </span> : */
+<span class="lineNum"> 1306 </span> : virtual const char_type*
+<span class="lineNum"> 1307 </span> : do_is(const char_type* __lo, const char_type* __hi, mask* __vec) const;
+<span class="lineNum"> 1308 </span> :
+<span class="lineNum"> 1309 </span> : /**
+<span class="lineNum"> 1310 </span> : * @brief Find wchar_t matching mask
+<span class="lineNum"> 1311 </span> : *
+<span class="lineNum"> 1312 </span> : * This function searches for and returns the first wchar_t c in
+<span class="lineNum"> 1313 </span> : * [lo,hi) for which is(m,c) is true.
+<span class="lineNum"> 1314 </span> : *
+<span class="lineNum"> 1315 </span> : * do_scan_is() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 1316 </span> : * match searching. do_is() must always return the same result for the
+<span class="lineNum"> 1317 </span> : * same input.
+<span class="lineNum"> 1318 </span> : *
+<span class="lineNum"> 1319 </span> : * @param m The mask to compare against.
+<span class="lineNum"> 1320 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 1321 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 1322 </span> : * @return Pointer to a matching wchar_t if found, else @a hi.
+<span class="lineNum"> 1323 </span> : */
+<span class="lineNum"> 1324 </span> : virtual const char_type*
+<span class="lineNum"> 1325 </span> : do_scan_is(mask __m, const char_type* __lo, const char_type* __hi) const;
+<span class="lineNum"> 1326 </span> :
+<span class="lineNum"> 1327 </span> : /**
+<span class="lineNum"> 1328 </span> : * @brief Find wchar_t not matching mask
+<span class="lineNum"> 1329 </span> : *
+<span class="lineNum"> 1330 </span> : * This function searches for and returns a pointer to the first
+<span class="lineNum"> 1331 </span> : * wchar_t c of [lo,hi) for which is(m,c) is false.
+<span class="lineNum"> 1332 </span> : *
+<span class="lineNum"> 1333 </span> : * do_scan_is() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 1334 </span> : * match searching. do_is() must always return the same result for the
+<span class="lineNum"> 1335 </span> : * same input.
+<span class="lineNum"> 1336 </span> : *
+<span class="lineNum"> 1337 </span> : * @param m The mask to compare against.
+<span class="lineNum"> 1338 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 1339 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 1340 </span> : * @return Pointer to a non-matching wchar_t if found, else @a hi.
+<span class="lineNum"> 1341 </span> : */
+<span class="lineNum"> 1342 </span> : virtual const char_type*
+<span class="lineNum"> 1343 </span> : do_scan_not(mask __m, const char_type* __lo,
+<span class="lineNum"> 1344 </span> : const char_type* __hi) const;
+<span class="lineNum"> 1345 </span> :
+<span class="lineNum"> 1346 </span> : /**
+<span class="lineNum"> 1347 </span> : * @brief Convert to uppercase.
+<span class="lineNum"> 1348 </span> : *
+<span class="lineNum"> 1349 </span> : * This virtual function converts the wchar_t argument to uppercase if
+<span class="lineNum"> 1350 </span> : * possible. If not possible (for example, '2'), returns the argument.
+<span class="lineNum"> 1351 </span> : *
+<span class="lineNum"> 1352 </span> : * do_toupper() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 1353 </span> : * uppercasing. do_toupper() must always return the same result for
+<span class="lineNum"> 1354 </span> : * the same input.
+<span class="lineNum"> 1355 </span> : *
+<span class="lineNum"> 1356 </span> : * @param c The wchar_t to convert.
+<span class="lineNum"> 1357 </span> : * @return The uppercase wchar_t if convertible, else @a c.
+<span class="lineNum"> 1358 </span> : */
+<span class="lineNum"> 1359 </span> : virtual char_type
+<span class="lineNum"> 1360 </span> : do_toupper(char_type) const;
+<span class="lineNum"> 1361 </span> :
+<span class="lineNum"> 1362 </span> : /**
+<span class="lineNum"> 1363 </span> : * @brief Convert array to uppercase.
+<span class="lineNum"> 1364 </span> : *
+<span class="lineNum"> 1365 </span> : * This virtual function converts each wchar_t in the range [lo,hi) to
+<span class="lineNum"> 1366 </span> : * uppercase if possible. Other elements remain untouched.
+<span class="lineNum"> 1367 </span> : *
+<span class="lineNum"> 1368 </span> : * do_toupper() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 1369 </span> : * uppercasing. do_toupper() must always return the same result for
+<span class="lineNum"> 1370 </span> : * the same input.
+<span class="lineNum"> 1371 </span> : *
+<span class="lineNum"> 1372 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 1373 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 1374 </span> : * @return @a hi.
+<span class="lineNum"> 1375 </span> : */
+<span class="lineNum"> 1376 </span> : virtual const char_type*
+<span class="lineNum"> 1377 </span> : do_toupper(char_type* __lo, const char_type* __hi) const;
+<span class="lineNum"> 1378 </span> :
+<span class="lineNum"> 1379 </span> : /**
+<span class="lineNum"> 1380 </span> : * @brief Convert to lowercase.
+<span class="lineNum"> 1381 </span> : *
+<span class="lineNum"> 1382 </span> : * This virtual function converts the argument to lowercase if
+<span class="lineNum"> 1383 </span> : * possible. If not possible (for example, '2'), returns the argument.
+<span class="lineNum"> 1384 </span> : *
+<span class="lineNum"> 1385 </span> : * do_tolower() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 1386 </span> : * lowercasing. do_tolower() must always return the same result for
+<span class="lineNum"> 1387 </span> : * the same input.
+<span class="lineNum"> 1388 </span> : *
+<span class="lineNum"> 1389 </span> : * @param c The wchar_t to convert.
+<span class="lineNum"> 1390 </span> : * @return The lowercase wchar_t if convertible, else @a c.
+<span class="lineNum"> 1391 </span> : */
+<span class="lineNum"> 1392 </span> : virtual char_type
+<span class="lineNum"> 1393 </span> : do_tolower(char_type) const;
+<span class="lineNum"> 1394 </span> :
+<span class="lineNum"> 1395 </span> : /**
+<span class="lineNum"> 1396 </span> : * @brief Convert array to lowercase.
+<span class="lineNum"> 1397 </span> : *
+<span class="lineNum"> 1398 </span> : * This virtual function converts each wchar_t in the range [lo,hi) to
+<span class="lineNum"> 1399 </span> : * lowercase if possible. Other elements remain untouched.
+<span class="lineNum"> 1400 </span> : *
+<span class="lineNum"> 1401 </span> : * do_tolower() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 1402 </span> : * lowercasing. do_tolower() must always return the same result for
+<span class="lineNum"> 1403 </span> : * the same input.
+<span class="lineNum"> 1404 </span> : *
+<span class="lineNum"> 1405 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 1406 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 1407 </span> : * @return @a hi.
+<span class="lineNum"> 1408 </span> : */
+<span class="lineNum"> 1409 </span> : virtual const char_type*
+<span class="lineNum"> 1410 </span> : do_tolower(char_type* __lo, const char_type* __hi) const;
+<span class="lineNum"> 1411 </span> :
+<span class="lineNum"> 1412 </span> : /**
+<span class="lineNum"> 1413 </span> : * @brief Widen char to wchar_t
+<span class="lineNum"> 1414 </span> : *
+<span class="lineNum"> 1415 </span> : * This virtual function converts the char to wchar_t using the
+<span class="lineNum"> 1416 </span> : * simplest reasonable transformation. For an underived ctype&lt;wchar_t&gt;
+<span class="lineNum"> 1417 </span> : * facet, the argument will be cast to wchar_t.
+<span class="lineNum"> 1418 </span> : *
+<span class="lineNum"> 1419 </span> : * do_widen() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 1420 </span> : * widening. do_widen() must always return the same result for the
+<span class="lineNum"> 1421 </span> : * same input.
+<span class="lineNum"> 1422 </span> : *
+<span class="lineNum"> 1423 </span> : * Note: this is not what you want for codepage conversions. See
+<span class="lineNum"> 1424 </span> : * codecvt for that.
+<span class="lineNum"> 1425 </span> : *
+<span class="lineNum"> 1426 </span> : * @param c The char to convert.
+<span class="lineNum"> 1427 </span> : * @return The converted wchar_t.
+<span class="lineNum"> 1428 </span> : */
+<span class="lineNum"> 1429 </span> : virtual char_type
+<span class="lineNum"> 1430 </span> : do_widen(char) const;
+<span class="lineNum"> 1431 </span> :
+<span class="lineNum"> 1432 </span> : /**
+<span class="lineNum"> 1433 </span> : * @brief Widen char array to wchar_t array
+<span class="lineNum"> 1434 </span> : *
+<span class="lineNum"> 1435 </span> : * This function converts each char in the input to wchar_t using the
+<span class="lineNum"> 1436 </span> : * simplest reasonable transformation. For an underived ctype&lt;wchar_t&gt;
+<span class="lineNum"> 1437 </span> : * facet, the argument will be copied, casting each element to wchar_t.
+<span class="lineNum"> 1438 </span> : *
+<span class="lineNum"> 1439 </span> : * do_widen() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 1440 </span> : * widening. do_widen() must always return the same result for the
+<span class="lineNum"> 1441 </span> : * same input.
+<span class="lineNum"> 1442 </span> : *
+<span class="lineNum"> 1443 </span> : * Note: this is not what you want for codepage conversions. See
+<span class="lineNum"> 1444 </span> : * codecvt for that.
+<span class="lineNum"> 1445 </span> : *
+<span class="lineNum"> 1446 </span> : * @param lo Pointer to start range.
+<span class="lineNum"> 1447 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 1448 </span> : * @param to Pointer to the destination array.
+<span class="lineNum"> 1449 </span> : * @return @a hi.
+<span class="lineNum"> 1450 </span> : */
+<span class="lineNum"> 1451 </span> : virtual const char*
+<span class="lineNum"> 1452 </span> : do_widen(const char* __lo, const char* __hi, char_type* __dest) const;
+<span class="lineNum"> 1453 </span> :
+<span class="lineNum"> 1454 </span> : /**
+<span class="lineNum"> 1455 </span> : * @brief Narrow wchar_t to char
+<span class="lineNum"> 1456 </span> : *
+<span class="lineNum"> 1457 </span> : * This virtual function converts the argument to char using
+<span class="lineNum"> 1458 </span> : * the simplest reasonable transformation. If the conversion
+<span class="lineNum"> 1459 </span> : * fails, dfault is returned instead. For an underived
+<span class="lineNum"> 1460 </span> : * ctype&lt;wchar_t&gt; facet, @a c will be cast to char and
+<span class="lineNum"> 1461 </span> : * returned.
+<span class="lineNum"> 1462 </span> : *
+<span class="lineNum"> 1463 </span> : * do_narrow() is a hook for a derived facet to change the
+<span class="lineNum"> 1464 </span> : * behavior of narrowing. do_narrow() must always return the
+<span class="lineNum"> 1465 </span> : * same result for the same input.
+<span class="lineNum"> 1466 </span> : *
+<span class="lineNum"> 1467 </span> : * Note: this is not what you want for codepage conversions. See
+<span class="lineNum"> 1468 </span> : * codecvt for that.
+<span class="lineNum"> 1469 </span> : *
+<span class="lineNum"> 1470 </span> : * @param c The wchar_t to convert.
+<span class="lineNum"> 1471 </span> : * @param dfault Char to return if conversion fails.
+<span class="lineNum"> 1472 </span> : * @return The converted char.
+<span class="lineNum"> 1473 </span> : */
+<span class="lineNum"> 1474 </span> : virtual char
+<span class="lineNum"> 1475 </span> : do_narrow(char_type, char __dfault) const;
+<span class="lineNum"> 1476 </span> :
+<span class="lineNum"> 1477 </span> : /**
+<span class="lineNum"> 1478 </span> : * @brief Narrow wchar_t array to char array
+<span class="lineNum"> 1479 </span> : *
+<span class="lineNum"> 1480 </span> : * This virtual function converts each wchar_t in the range [lo,hi) to
+<span class="lineNum"> 1481 </span> : * char using the simplest reasonable transformation and writes the
+<span class="lineNum"> 1482 </span> : * results to the destination array. For any wchar_t in the input that
+<span class="lineNum"> 1483 </span> : * cannot be converted, @a dfault is used instead. For an underived
+<span class="lineNum"> 1484 </span> : * ctype&lt;wchar_t&gt; facet, the argument will be copied, casting each
+<span class="lineNum"> 1485 </span> : * element to char.
+<span class="lineNum"> 1486 </span> : *
+<span class="lineNum"> 1487 </span> : * do_narrow() is a hook for a derived facet to change the behavior of
+<span class="lineNum"> 1488 </span> : * narrowing. do_narrow() must always return the same result for the
+<span class="lineNum"> 1489 </span> : * same input.
+<span class="lineNum"> 1490 </span> : *
+<span class="lineNum"> 1491 </span> : * Note: this is not what you want for codepage conversions. See
+<span class="lineNum"> 1492 </span> : * codecvt for that.
+<span class="lineNum"> 1493 </span> : *
+<span class="lineNum"> 1494 </span> : * @param lo Pointer to start of range.
+<span class="lineNum"> 1495 </span> : * @param hi Pointer to end of range.
+<span class="lineNum"> 1496 </span> : * @param dfault Char to use if conversion fails.
+<span class="lineNum"> 1497 </span> : * @param to Pointer to the destination array.
+<span class="lineNum"> 1498 </span> : * @return @a hi.
+<span class="lineNum"> 1499 </span> : */
+<span class="lineNum"> 1500 </span> : virtual const char_type*
+<span class="lineNum"> 1501 </span> : do_narrow(const char_type* __lo, const char_type* __hi,
+<span class="lineNum"> 1502 </span> : char __dfault, char* __dest) const;
+<span class="lineNum"> 1503 </span> :
+<span class="lineNum"> 1504 </span> : // For use at construction time only.
+<span class="lineNum"> 1505 </span> : void
+<span class="lineNum"> 1506 </span> : _M_initialize_ctype();
+<span class="lineNum"> 1507 </span> : };
+<span class="lineNum"> 1508 </span> :
+<span class="lineNum"> 1509 </span> : template&lt;&gt;
+<span class="lineNum"> 1510 </span> : const ctype&lt;wchar_t&gt;&amp;
+<span class="lineNum"> 1511 </span> : use_facet&lt;ctype&lt;wchar_t&gt; &gt;(const locale&amp; __loc);
+<span class="lineNum"> 1512 </span> : #endif //_GLIBCXX_USE_WCHAR_T
+<span class="lineNum"> 1513 </span> :
+<span class="lineNum"> 1514 </span> : /// class ctype_byname [22.2.1.2].
+<span class="lineNum"> 1515 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 1516 </span> : class ctype_byname : public ctype&lt;_CharT&gt;
+<span class="lineNum"> 1517 </span> : {
+<span class="lineNum"> 1518 </span> : public:
+<span class="lineNum"> 1519 </span> : typedef typename ctype&lt;_CharT&gt;::mask mask;
+<span class="lineNum"> 1520 </span> :
+<span class="lineNum"> 1521 </span> : explicit
+<span class="lineNum"> 1522 </span> : ctype_byname(const char* __s, size_t __refs = 0);
+<span class="lineNum"> 1523 </span> :
+<span class="lineNum"> 1524 </span> : protected:
+<span class="lineNum"> 1525 </span> : virtual
+<span class="lineNum"> 1526 </span> : ~ctype_byname() { };
+<span class="lineNum"> 1527 </span> : };
+<span class="lineNum"> 1528 </span> :
+<span class="lineNum"> 1529 </span> : /// 22.2.1.4 Class ctype_byname specializations.
+<span class="lineNum"> 1530 </span> : template&lt;&gt;
+<span class="lineNum"> 1531 </span> : class ctype_byname&lt;char&gt; : public ctype&lt;char&gt;
+<span class="lineNum"> 1532 </span> : {
+<span class="lineNum"> 1533 </span> : public:
+<span class="lineNum"> 1534 </span> : explicit
+<span class="lineNum"> 1535 </span> : ctype_byname(const char* __s, size_t __refs = 0);
+<span class="lineNum"> 1536 </span> :
+<span class="lineNum"> 1537 </span> : protected:
+<span class="lineNum"> 1538 </span> : virtual
+<span class="lineNum"> 1539 </span> : ~ctype_byname();
+<span class="lineNum"> 1540 </span> : };
+<span class="lineNum"> 1541 </span> :
+<span class="lineNum"> 1542 </span> : #ifdef _GLIBCXX_USE_WCHAR_T
+<span class="lineNum"> 1543 </span> : template&lt;&gt;
+<span class="lineNum"> 1544 </span> : class ctype_byname&lt;wchar_t&gt; : public ctype&lt;wchar_t&gt;
+<span class="lineNum"> 1545 </span> : {
+<span class="lineNum"> 1546 </span> : public:
+<span class="lineNum"> 1547 </span> : explicit
+<span class="lineNum"> 1548 </span> : ctype_byname(const char* __s, size_t __refs = 0);
+<span class="lineNum"> 1549 </span> :
+<span class="lineNum"> 1550 </span> : protected:
+<span class="lineNum"> 1551 </span> : virtual
+<span class="lineNum"> 1552 </span> : ~ctype_byname();
+<span class="lineNum"> 1553 </span> : };
+<span class="lineNum"> 1554 </span> : #endif
+<span class="lineNum"> 1555 </span> :
+<span class="lineNum"> 1556 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 1557 </span> :
+<span class="lineNum"> 1558 </span> : // Include host and configuration specific ctype inlines.
+<span class="lineNum"> 1559 </span> : #include &lt;bits/ctype_inline.h&gt;
+<span class="lineNum"> 1560 </span> :
+<span class="lineNum"> 1561 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 1562 </span> :
+<span class="lineNum"> 1563 </span> : // 22.2.2 The numeric category.
+<span class="lineNum"> 1564 </span> : class __num_base
+<span class="lineNum"> 1565 </span> : {
+<span class="lineNum"> 1566 </span> : public:
+<span class="lineNum"> 1567 </span> : // NB: Code depends on the order of _S_atoms_out elements.
+<span class="lineNum"> 1568 </span> : // Below are the indices into _S_atoms_out.
+<span class="lineNum"> 1569 </span> : enum
+<span class="lineNum"> 1570 </span> : {
+<span class="lineNum"> 1571 </span> : _S_ominus,
+<span class="lineNum"> 1572 </span> : _S_oplus,
+<span class="lineNum"> 1573 </span> : _S_ox,
+<span class="lineNum"> 1574 </span> : _S_oX,
+<span class="lineNum"> 1575 </span> : _S_odigits,
+<span class="lineNum"> 1576 </span> : _S_odigits_end = _S_odigits + 16,
+<span class="lineNum"> 1577 </span> : _S_oudigits = _S_odigits_end,
+<span class="lineNum"> 1578 </span> : _S_oudigits_end = _S_oudigits + 16,
+<span class="lineNum"> 1579 </span> : _S_oe = _S_odigits + 14, // For scientific notation, 'e'
+<span class="lineNum"> 1580 </span> : _S_oE = _S_oudigits + 14, // For scientific notation, 'E'
+<span class="lineNum"> 1581 </span> : _S_oend = _S_oudigits_end
+<span class="lineNum"> 1582 </span> : };
+<span class="lineNum"> 1583 </span> :
+<span class="lineNum"> 1584 </span> : // A list of valid numeric literals for output. This array
+<span class="lineNum"> 1585 </span> : // contains chars that will be passed through the current locale's
+<span class="lineNum"> 1586 </span> : // ctype&lt;_CharT&gt;.widen() and then used to render numbers.
+<span class="lineNum"> 1587 </span> : // For the standard &quot;C&quot; locale, this is
+<span class="lineNum"> 1588 </span> : // &quot;-+xX0123456789abcdef0123456789ABCDEF&quot;.
+<span class="lineNum"> 1589 </span> : static const char* _S_atoms_out;
+<span class="lineNum"> 1590 </span> :
+<span class="lineNum"> 1591 </span> : // String literal of acceptable (narrow) input, for num_get.
+<span class="lineNum"> 1592 </span> : // &quot;-+xX0123456789abcdefABCDEF&quot;
+<span class="lineNum"> 1593 </span> : static const char* _S_atoms_in;
+<span class="lineNum"> 1594 </span> :
+<span class="lineNum"> 1595 </span> : enum
+<span class="lineNum"> 1596 </span> : {
+<span class="lineNum"> 1597 </span> : _S_iminus,
+<span class="lineNum"> 1598 </span> : _S_iplus,
+<span class="lineNum"> 1599 </span> : _S_ix,
+<span class="lineNum"> 1600 </span> : _S_iX,
+<span class="lineNum"> 1601 </span> : _S_izero,
+<span class="lineNum"> 1602 </span> : _S_ie = _S_izero + 14,
+<span class="lineNum"> 1603 </span> : _S_iE = _S_izero + 20,
+<span class="lineNum"> 1604 </span> : _S_iend = 26
+<span class="lineNum"> 1605 </span> : };
+<span class="lineNum"> 1606 </span> :
+<span class="lineNum"> 1607 </span> : // num_put
+<span class="lineNum"> 1608 </span> : // Construct and return valid scanf format for floating point types.
+<span class="lineNum"> 1609 </span> : static void
+<span class="lineNum"> 1610 </span> : _S_format_float(const ios_base&amp; __io, char* __fptr, char __mod);
+<span class="lineNum"> 1611 </span> : };
+<span class="lineNum"> 1612 </span> :
+<span class="lineNum"> 1613 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 1614 </span> : struct __numpunct_cache : public locale::facet
+<span class="lineNum"> 1615 </span> : {
+<span class="lineNum"> 1616 </span> : const char* _M_grouping;
+<span class="lineNum"> 1617 </span> : size_t _M_grouping_size;
+<span class="lineNum"> 1618 </span> : bool _M_use_grouping;
+<span class="lineNum"> 1619 </span> : const _CharT* _M_truename;
+<span class="lineNum"> 1620 </span> : size_t _M_truename_size;
+<span class="lineNum"> 1621 </span> : const _CharT* _M_falsename;
+<span class="lineNum"> 1622 </span> : size_t _M_falsename_size;
+<span class="lineNum"> 1623 </span> : _CharT _M_decimal_point;
+<span class="lineNum"> 1624 </span> : _CharT _M_thousands_sep;
+<span class="lineNum"> 1625 </span> :
+<span class="lineNum"> 1626 </span> : // A list of valid numeric literals for output: in the standard
+<span class="lineNum"> 1627 </span> : // &quot;C&quot; locale, this is &quot;-+xX0123456789abcdef0123456789ABCDEF&quot;.
+<span class="lineNum"> 1628 </span> : // This array contains the chars after having been passed
+<span class="lineNum"> 1629 </span> : // through the current locale's ctype&lt;_CharT&gt;.widen().
+<span class="lineNum"> 1630 </span> : _CharT _M_atoms_out[__num_base::_S_oend];
+<span class="lineNum"> 1631 </span> :
+<span class="lineNum"> 1632 </span> : // A list of valid numeric literals for input: in the standard
+<span class="lineNum"> 1633 </span> : // &quot;C&quot; locale, this is &quot;-+xX0123456789abcdefABCDEF&quot;
+<span class="lineNum"> 1634 </span> : // This array contains the chars after having been passed
+<span class="lineNum"> 1635 </span> : // through the current locale's ctype&lt;_CharT&gt;.widen().
+<span class="lineNum"> 1636 </span> : _CharT _M_atoms_in[__num_base::_S_iend];
+<span class="lineNum"> 1637 </span> :
+<span class="lineNum"> 1638 </span> : bool _M_allocated;
+<span class="lineNum"> 1639 </span> :
+<span class="lineNum"> 1640 </span> : __numpunct_cache(size_t __refs = 0) : facet(__refs),
+<span class="lineNum"> 1641 </span> : _M_grouping(NULL), _M_grouping_size(0), _M_use_grouping(false),
+<span class="lineNum"> 1642 </span> : _M_truename(NULL), _M_truename_size(0), _M_falsename(NULL),
+<span class="lineNum"> 1643 </span> : _M_falsename_size(0), _M_decimal_point(_CharT()),
+<span class="lineNum"> 1644 </span> : _M_thousands_sep(_CharT()), _M_allocated(false)
+<span class="lineNum"> 1645 </span> : { }
+<span class="lineNum"> 1646 </span> :
+<span class="lineNum"> 1647 </span> : ~__numpunct_cache();
+<span class="lineNum"> 1648 </span> :
+<span class="lineNum"> 1649 </span> : void
+<span class="lineNum"> 1650 </span> : _M_cache(const locale&amp; __loc);
+<span class="lineNum"> 1651 </span> :
+<span class="lineNum"> 1652 </span> : private:
+<span class="lineNum"> 1653 </span> : __numpunct_cache&amp;
+<span class="lineNum"> 1654 </span> : operator=(const __numpunct_cache&amp;);
+<span class="lineNum"> 1655 </span> :
+<span class="lineNum"> 1656 </span> : explicit
+<span class="lineNum"> 1657 </span> : __numpunct_cache(const __numpunct_cache&amp;);
+<span class="lineNum"> 1658 </span> : };
+<span class="lineNum"> 1659 </span> :
+<span class="lineNum"> 1660 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 1661 </span> : __numpunct_cache&lt;_CharT&gt;::~__numpunct_cache()
+<span class="lineNum"> 1662 </span> : {
+<span class="lineNum"> 1663 </span> : if (_M_allocated)
+<span class="lineNum"> 1664 </span> : {
+<span class="lineNum"> 1665 </span> : delete [] _M_grouping;
+<span class="lineNum"> 1666 </span> : delete [] _M_truename;
+<span class="lineNum"> 1667 </span> : delete [] _M_falsename;
+<span class="lineNum"> 1668 </span> : }
+<span class="lineNum"> 1669 </span> : }
+<span class="lineNum"> 1670 </span> :
+<span class="lineNum"> 1671 </span> : /**
+<span class="lineNum"> 1672 </span> : * @brief Numpunct facet.
+<span class="lineNum"> 1673 </span> : *
+<span class="lineNum"> 1674 </span> : * This facet stores several pieces of information related to printing and
+<span class="lineNum"> 1675 </span> : * scanning numbers, such as the decimal point character. It takes a
+<span class="lineNum"> 1676 </span> : * template parameter specifying the char type. The numpunct facet is
+<span class="lineNum"> 1677 </span> : * used by streams for many I/O operations involving numbers.
+<span class="lineNum"> 1678 </span> : *
+<span class="lineNum"> 1679 </span> : * The numpunct template uses protected virtual functions to provide the
+<span class="lineNum"> 1680 </span> : * actual results. The public accessors forward the call to the virtual
+<span class="lineNum"> 1681 </span> : * functions. These virtual functions are hooks for developers to
+<span class="lineNum"> 1682 </span> : * implement the behavior they require from a numpunct facet.
+<span class="lineNum"> 1683 </span> : */
+<span class="lineNum"> 1684 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 1685 </span> : class numpunct : public locale::facet
+<span class="lineNum"> 1686 </span> : {
+<span class="lineNum"> 1687 </span> : public:
+<span class="lineNum"> 1688 </span> : // Types:
+<span class="lineNum"> 1689 </span> : //@{
+<span class="lineNum"> 1690 </span> : /// Public typedefs
+<span class="lineNum"> 1691 </span> : typedef _CharT char_type;
+<span class="lineNum"> 1692 </span> : typedef basic_string&lt;_CharT&gt; string_type;
+<span class="lineNum"> 1693 </span> : //@}
+<span class="lineNum"> 1694 </span> : typedef __numpunct_cache&lt;_CharT&gt; __cache_type;
+<span class="lineNum"> 1695 </span> :
+<span class="lineNum"> 1696 </span> : protected:
+<span class="lineNum"> 1697 </span> : __cache_type* _M_data;
+<span class="lineNum"> 1698 </span> :
+<span class="lineNum"> 1699 </span> : public:
+<span class="lineNum"> 1700 </span> : /// Numpunct facet id.
+<span class="lineNum"> 1701 </span> : static locale::id id;
+<span class="lineNum"> 1702 </span> :
+<span class="lineNum"> 1703 </span> : /**
+<span class="lineNum"> 1704 </span> : * @brief Numpunct constructor.
+<span class="lineNum"> 1705 </span> : *
+<span class="lineNum"> 1706 </span> : * @param refs Refcount to pass to the base class.
+<span class="lineNum"> 1707 </span> : */
+<span class="lineNum"> 1708 </span> : explicit
+<span class="lineNum"> 1709 </span> : numpunct(size_t __refs = 0) : facet(__refs), _M_data(NULL)
+<span class="lineNum"> 1710 </span> : { _M_initialize_numpunct(); }
+<span class="lineNum"> 1711 </span> :
+<span class="lineNum"> 1712 </span> : /**
+<span class="lineNum"> 1713 </span> : * @brief Internal constructor. Not for general use.
+<span class="lineNum"> 1714 </span> : *
+<span class="lineNum"> 1715 </span> : * This is a constructor for use by the library itself to set up the
+<span class="lineNum"> 1716 </span> : * predefined locale facets.
+<span class="lineNum"> 1717 </span> : *
+<span class="lineNum"> 1718 </span> : * @param cache __numpunct_cache object.
+<span class="lineNum"> 1719 </span> : * @param refs Refcount to pass to the base class.
+<span class="lineNum"> 1720 </span> : */
+<span class="lineNum"> 1721 </span> : explicit
+<span class="lineNum"> 1722 </span> : numpunct(__cache_type* __cache, size_t __refs = 0)
+<span class="lineNum"> 1723 </span> : : facet(__refs), _M_data(__cache)
+<span class="lineNum"> 1724 </span> : { _M_initialize_numpunct(); }
+<span class="lineNum"> 1725 </span> :
+<span class="lineNum"> 1726 </span> : /**
+<span class="lineNum"> 1727 </span> : * @brief Internal constructor. Not for general use.
+<span class="lineNum"> 1728 </span> : *
+<span class="lineNum"> 1729 </span> : * This is a constructor for use by the library itself to set up new
+<span class="lineNum"> 1730 </span> : * locales.
+<span class="lineNum"> 1731 </span> : *
+<span class="lineNum"> 1732 </span> : * @param cloc The &quot;C&quot; locale.
+<span class="lineNum"> 1733 </span> : * @param refs Refcount to pass to the base class.
+<span class="lineNum"> 1734 </span> : */
+<span class="lineNum"> 1735 </span> : explicit
+<span class="lineNum"> 1736 </span> : numpunct(__c_locale __cloc, size_t __refs = 0)
+<span class="lineNum"> 1737 </span> : : facet(__refs), _M_data(NULL)
+<span class="lineNum"> 1738 </span> : { _M_initialize_numpunct(__cloc); }
+<span class="lineNum"> 1739 </span> :
+<span class="lineNum"> 1740 </span> : /**
+<span class="lineNum"> 1741 </span> : * @brief Return decimal point character.
+<span class="lineNum"> 1742 </span> : *
+<span class="lineNum"> 1743 </span> : * This function returns a char_type to use as a decimal point. It
+<span class="lineNum"> 1744 </span> : * does so by returning returning
+<span class="lineNum"> 1745 </span> : * numpunct&lt;char_type&gt;::do_decimal_point().
+<span class="lineNum"> 1746 </span> : *
+<span class="lineNum"> 1747 </span> : * @return @a char_type representing a decimal point.
+<span class="lineNum"> 1748 </span> : */
+<span class="lineNum"> 1749 </span> : char_type
+<span class="lineNum"> 1750 </span> : decimal_point() const
+<span class="lineNum"> 1751 </span> : { return this-&gt;do_decimal_point(); }
+<span class="lineNum"> 1752 </span> :
+<span class="lineNum"> 1753 </span> : /**
+<span class="lineNum"> 1754 </span> : * @brief Return thousands separator character.
+<span class="lineNum"> 1755 </span> : *
+<span class="lineNum"> 1756 </span> : * This function returns a char_type to use as a thousands
+<span class="lineNum"> 1757 </span> : * separator. It does so by returning returning
+<span class="lineNum"> 1758 </span> : * numpunct&lt;char_type&gt;::do_thousands_sep().
+<span class="lineNum"> 1759 </span> : *
+<span class="lineNum"> 1760 </span> : * @return char_type representing a thousands separator.
+<span class="lineNum"> 1761 </span> : */
+<span class="lineNum"> 1762 </span> : char_type
+<span class="lineNum"> 1763 </span> : thousands_sep() const
+<span class="lineNum"> 1764 </span> : { return this-&gt;do_thousands_sep(); }
+<span class="lineNum"> 1765 </span> :
+<span class="lineNum"> 1766 </span> : /**
+<span class="lineNum"> 1767 </span> : * @brief Return grouping specification.
+<span class="lineNum"> 1768 </span> : *
+<span class="lineNum"> 1769 </span> : * This function returns a string representing groupings for the
+<span class="lineNum"> 1770 </span> : * integer part of a number. Groupings indicate where thousands
+<span class="lineNum"> 1771 </span> : * separators should be inserted in the integer part of a number.
+<span class="lineNum"> 1772 </span> : *
+<span class="lineNum"> 1773 </span> : * Each char in the return string is interpret as an integer
+<span class="lineNum"> 1774 </span> : * rather than a character. These numbers represent the number
+<span class="lineNum"> 1775 </span> : * of digits in a group. The first char in the string
+<span class="lineNum"> 1776 </span> : * represents the number of digits in the least significant
+<span class="lineNum"> 1777 </span> : * group. If a char is negative, it indicates an unlimited
+<span class="lineNum"> 1778 </span> : * number of digits for the group. If more chars from the
+<span class="lineNum"> 1779 </span> : * string are required to group a number, the last char is used
+<span class="lineNum"> 1780 </span> : * repeatedly.
+<span class="lineNum"> 1781 </span> : *
+<span class="lineNum"> 1782 </span> : * For example, if the grouping() returns &quot;\003\002&quot; and is
+<span class="lineNum"> 1783 </span> : * applied to the number 123456789, this corresponds to
+<span class="lineNum"> 1784 </span> : * 12,34,56,789. Note that if the string was &quot;32&quot;, this would
+<span class="lineNum"> 1785 </span> : * put more than 50 digits into the least significant group if
+<span class="lineNum"> 1786 </span> : * the character set is ASCII.
+<span class="lineNum"> 1787 </span> : *
+<span class="lineNum"> 1788 </span> : * The string is returned by calling
+<span class="lineNum"> 1789 </span> : * numpunct&lt;char_type&gt;::do_grouping().
+<span class="lineNum"> 1790 </span> : *
+<span class="lineNum"> 1791 </span> : * @return string representing grouping specification.
+<span class="lineNum"> 1792 </span> : */
+<span class="lineNum"> 1793 </span> : string
+<span class="lineNum"> 1794 </span> : grouping() const
+<span class="lineNum"> 1795 </span> : { return this-&gt;do_grouping(); }
+<span class="lineNum"> 1796 </span> :
+<span class="lineNum"> 1797 </span> : /**
+<span class="lineNum"> 1798 </span> : * @brief Return string representation of bool true.
+<span class="lineNum"> 1799 </span> : *
+<span class="lineNum"> 1800 </span> : * This function returns a string_type containing the text
+<span class="lineNum"> 1801 </span> : * representation for true bool variables. It does so by calling
+<span class="lineNum"> 1802 </span> : * numpunct&lt;char_type&gt;::do_truename().
+<span class="lineNum"> 1803 </span> : *
+<span class="lineNum"> 1804 </span> : * @return string_type representing printed form of true.
+<span class="lineNum"> 1805 </span> : */
+<span class="lineNum"> 1806 </span> : string_type
+<span class="lineNum"> 1807 </span> : truename() const
+<span class="lineNum"> 1808 </span> : { return this-&gt;do_truename(); }
+<span class="lineNum"> 1809 </span> :
+<span class="lineNum"> 1810 </span> : /**
+<span class="lineNum"> 1811 </span> : * @brief Return string representation of bool false.
+<span class="lineNum"> 1812 </span> : *
+<span class="lineNum"> 1813 </span> : * This function returns a string_type containing the text
+<span class="lineNum"> 1814 </span> : * representation for false bool variables. It does so by calling
+<span class="lineNum"> 1815 </span> : * numpunct&lt;char_type&gt;::do_falsename().
+<span class="lineNum"> 1816 </span> : *
+<span class="lineNum"> 1817 </span> : * @return string_type representing printed form of false.
+<span class="lineNum"> 1818 </span> : */
+<span class="lineNum"> 1819 </span> : string_type
+<span class="lineNum"> 1820 </span> : falsename() const
+<span class="lineNum"> 1821 </span> : { return this-&gt;do_falsename(); }
+<span class="lineNum"> 1822 </span> :
+<span class="lineNum"> 1823 </span> : protected:
+<span class="lineNum"> 1824 </span> : /// Destructor.
+<span class="lineNum"> 1825 </span> : virtual
+<span class="lineNum"> 1826 </span> : ~numpunct();
+<span class="lineNum"> 1827 </span> :
+<span class="lineNum"> 1828 </span> : /**
+<span class="lineNum"> 1829 </span> : * @brief Return decimal point character.
+<span class="lineNum"> 1830 </span> : *
+<span class="lineNum"> 1831 </span> : * Returns a char_type to use as a decimal point. This function is a
+<span class="lineNum"> 1832 </span> : * hook for derived classes to change the value returned.
+<span class="lineNum"> 1833 </span> : *
+<span class="lineNum"> 1834 </span> : * @return @a char_type representing a decimal point.
+<span class="lineNum"> 1835 </span> : */
+<span class="lineNum"> 1836 </span> : virtual char_type
+<span class="lineNum"> 1837 </span> : do_decimal_point() const
+<span class="lineNum"> 1838 </span> : { return _M_data-&gt;_M_decimal_point; }
+<span class="lineNum"> 1839 </span> :
+<span class="lineNum"> 1840 </span> : /**
+<span class="lineNum"> 1841 </span> : * @brief Return thousands separator character.
+<span class="lineNum"> 1842 </span> : *
+<span class="lineNum"> 1843 </span> : * Returns a char_type to use as a thousands separator. This function
+<span class="lineNum"> 1844 </span> : * is a hook for derived classes to change the value returned.
+<span class="lineNum"> 1845 </span> : *
+<span class="lineNum"> 1846 </span> : * @return @a char_type representing a thousands separator.
+<span class="lineNum"> 1847 </span> : */
+<span class="lineNum"> 1848 </span> : virtual char_type
+<span class="lineNum"> 1849 </span> : do_thousands_sep() const
+<span class="lineNum"> 1850 </span> : { return _M_data-&gt;_M_thousands_sep; }
+<span class="lineNum"> 1851 </span> :
+<span class="lineNum"> 1852 </span> : /**
+<span class="lineNum"> 1853 </span> : * @brief Return grouping specification.
+<span class="lineNum"> 1854 </span> : *
+<span class="lineNum"> 1855 </span> : * Returns a string representing groupings for the integer part of a
+<span class="lineNum"> 1856 </span> : * number. This function is a hook for derived classes to change the
+<span class="lineNum"> 1857 </span> : * value returned. @see grouping() for details.
+<span class="lineNum"> 1858 </span> : *
+<span class="lineNum"> 1859 </span> : * @return String representing grouping specification.
+<span class="lineNum"> 1860 </span> : */
+<span class="lineNum"> 1861 </span> : virtual string
+<span class="lineNum"> 1862 </span> : do_grouping() const
+<span class="lineNum"> 1863 </span> : { return _M_data-&gt;_M_grouping; }
+<span class="lineNum"> 1864 </span> :
+<span class="lineNum"> 1865 </span> : /**
+<span class="lineNum"> 1866 </span> : * @brief Return string representation of bool true.
+<span class="lineNum"> 1867 </span> : *
+<span class="lineNum"> 1868 </span> : * Returns a string_type containing the text representation for true
+<span class="lineNum"> 1869 </span> : * bool variables. This function is a hook for derived classes to
+<span class="lineNum"> 1870 </span> : * change the value returned.
+<span class="lineNum"> 1871 </span> : *
+<span class="lineNum"> 1872 </span> : * @return string_type representing printed form of true.
+<span class="lineNum"> 1873 </span> : */
+<span class="lineNum"> 1874 </span> : virtual string_type
+<span class="lineNum"> 1875 </span> : do_truename() const
+<span class="lineNum"> 1876 </span> : { return _M_data-&gt;_M_truename; }
+<span class="lineNum"> 1877 </span> :
+<span class="lineNum"> 1878 </span> : /**
+<span class="lineNum"> 1879 </span> : * @brief Return string representation of bool false.
+<span class="lineNum"> 1880 </span> : *
+<span class="lineNum"> 1881 </span> : * Returns a string_type containing the text representation for false
+<span class="lineNum"> 1882 </span> : * bool variables. This function is a hook for derived classes to
+<span class="lineNum"> 1883 </span> : * change the value returned.
+<span class="lineNum"> 1884 </span> : *
+<span class="lineNum"> 1885 </span> : * @return string_type representing printed form of false.
+<span class="lineNum"> 1886 </span> : */
+<span class="lineNum"> 1887 </span> : virtual string_type
+<span class="lineNum"> 1888 </span> : do_falsename() const
+<span class="lineNum"> 1889 </span> : { return _M_data-&gt;_M_falsename; }
+<span class="lineNum"> 1890 </span> :
+<span class="lineNum"> 1891 </span> : // For use at construction time only.
+<span class="lineNum"> 1892 </span> : void
+<span class="lineNum"> 1893 </span> : _M_initialize_numpunct(__c_locale __cloc = NULL);
+<span class="lineNum"> 1894 </span> : };
+<span class="lineNum"> 1895 </span> :
+<span class="lineNum"> 1896 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 1897 </span> : locale::id numpunct&lt;_CharT&gt;::id;
+<span class="lineNum"> 1898 </span> :
+<span class="lineNum"> 1899 </span> : template&lt;&gt;
+<span class="lineNum"> 1900 </span> : numpunct&lt;char&gt;::~numpunct();
+<span class="lineNum"> 1901 </span> :
+<span class="lineNum"> 1902 </span> : template&lt;&gt;
+<span class="lineNum"> 1903 </span> : void
+<span class="lineNum"> 1904 </span> : numpunct&lt;char&gt;::_M_initialize_numpunct(__c_locale __cloc);
+<span class="lineNum"> 1905 </span> :
+<span class="lineNum"> 1906 </span> : #ifdef _GLIBCXX_USE_WCHAR_T
+<span class="lineNum"> 1907 </span> : template&lt;&gt;
+<span class="lineNum"> 1908 </span> : numpunct&lt;wchar_t&gt;::~numpunct();
+<span class="lineNum"> 1909 </span> :
+<span class="lineNum"> 1910 </span> : template&lt;&gt;
+<span class="lineNum"> 1911 </span> : void
+<span class="lineNum"> 1912 </span> : numpunct&lt;wchar_t&gt;::_M_initialize_numpunct(__c_locale __cloc);
+<span class="lineNum"> 1913 </span> : #endif
+<span class="lineNum"> 1914 </span> :
+<span class="lineNum"> 1915 </span> : /// class numpunct_byname [22.2.3.2].
+<span class="lineNum"> 1916 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 1917 </span> : class numpunct_byname : public numpunct&lt;_CharT&gt;
+<span class="lineNum"> 1918 </span> : {
+<span class="lineNum"> 1919 </span> : public:
+<span class="lineNum"> 1920 </span> : typedef _CharT char_type;
+<span class="lineNum"> 1921 </span> : typedef basic_string&lt;_CharT&gt; string_type;
+<span class="lineNum"> 1922 </span> :
+<span class="lineNum"> 1923 </span> : explicit
+<span class="lineNum"> 1924 </span> : numpunct_byname(const char* __s, size_t __refs = 0)
+<span class="lineNum"> 1925 </span> : : numpunct&lt;_CharT&gt;(__refs)
+<span class="lineNum"> 1926 </span> : {
+<span class="lineNum"> 1927 </span> : if (__builtin_strcmp(__s, &quot;C&quot;) != 0
+<span class="lineNum"> 1928 </span> : &amp;&amp; __builtin_strcmp(__s, &quot;POSIX&quot;) != 0)
+<span class="lineNum"> 1929 </span> : {
+<span class="lineNum"> 1930 </span> : __c_locale __tmp;
+<span class="lineNum"> 1931 </span> : this-&gt;_S_create_c_locale(__tmp, __s);
+<span class="lineNum"> 1932 </span> : this-&gt;_M_initialize_numpunct(__tmp);
+<span class="lineNum"> 1933 </span> : this-&gt;_S_destroy_c_locale(__tmp);
+<span class="lineNum"> 1934 </span> : }
+<span class="lineNum"> 1935 </span> : }
+<span class="lineNum"> 1936 </span> :
+<span class="lineNum"> 1937 </span> : protected:
+<span class="lineNum"> 1938 </span> : virtual
+<span class="lineNum"> 1939 </span> : ~numpunct_byname() { }
+<span class="lineNum"> 1940 </span> : };
+<span class="lineNum"> 1941 </span> :
+<span class="lineNum"> 1942 </span> : _GLIBCXX_BEGIN_LDBL_NAMESPACE
+<span class="lineNum"> 1943 </span> :
+<span class="lineNum"> 1944 </span> : /**
+<span class="lineNum"> 1945 </span> : * @brief Facet for parsing number strings.
+<span class="lineNum"> 1946 </span> : *
+<span class="lineNum"> 1947 </span> : * This facet encapsulates the code to parse and return a number
+<span class="lineNum"> 1948 </span> : * from a string. It is used by the istream numeric extraction
+<span class="lineNum"> 1949 </span> : * operators.
+<span class="lineNum"> 1950 </span> : *
+<span class="lineNum"> 1951 </span> : * The num_get template uses protected virtual functions to provide the
+<span class="lineNum"> 1952 </span> : * actual results. The public accessors forward the call to the virtual
+<span class="lineNum"> 1953 </span> : * functions. These virtual functions are hooks for developers to
+<span class="lineNum"> 1954 </span> : * implement the behavior they require from the num_get facet.
+<span class="lineNum"> 1955 </span> : */
+<span class="lineNum"> 1956 </span> : template&lt;typename _CharT, typename _InIter&gt;
+<span class="lineNum"> 1957 </span> : class num_get : public locale::facet
+<span class="lineNum"> 1958 </span> : {
+<span class="lineNum"> 1959 </span> : public:
+<span class="lineNum"> 1960 </span> : // Types:
+<span class="lineNum"> 1961 </span> : //@{
+<span class="lineNum"> 1962 </span> : /// Public typedefs
+<span class="lineNum"> 1963 </span> : typedef _CharT char_type;
+<span class="lineNum"> 1964 </span> : typedef _InIter iter_type;
+<span class="lineNum"> 1965 </span> : //@}
+<span class="lineNum"> 1966 </span> :
+<span class="lineNum"> 1967 </span> : /// Numpunct facet id.
+<span class="lineNum"> 1968 </span> : static locale::id id;
+<span class="lineNum"> 1969 </span> :
+<span class="lineNum"> 1970 </span> : /**
+<span class="lineNum"> 1971 </span> : * @brief Constructor performs initialization.
+<span class="lineNum"> 1972 </span> : *
+<span class="lineNum"> 1973 </span> : * This is the constructor provided by the standard.
+<span class="lineNum"> 1974 </span> : *
+<span class="lineNum"> 1975 </span> : * @param refs Passed to the base facet class.
+<span class="lineNum"> 1976 </span> : */
+<span class="lineNum"> 1977 </span> : explicit
+<span class="lineNum"> 1978 </span> : num_get(size_t __refs = 0) : facet(__refs) { }
+<span class="lineNum"> 1979 </span> :
+<span class="lineNum"> 1980 </span> : /**
+<span class="lineNum"> 1981 </span> : * @brief Numeric parsing.
+<span class="lineNum"> 1982 </span> : *
+<span class="lineNum"> 1983 </span> : * Parses the input stream into the bool @a v. It does so by calling
+<span class="lineNum"> 1984 </span> : * num_get::do_get().
+<span class="lineNum"> 1985 </span> : *
+<span class="lineNum"> 1986 </span> : * If ios_base::boolalpha is set, attempts to read
+<span class="lineNum"> 1987 </span> : * ctype&lt;CharT&gt;::truename() or ctype&lt;CharT&gt;::falsename(). Sets
+<span class="lineNum"> 1988 </span> : * @a v to true or false if successful. Sets err to
+<span class="lineNum"> 1989 </span> : * ios_base::failbit if reading the string fails. Sets err to
+<span class="lineNum"> 1990 </span> : * ios_base::eofbit if the stream is emptied.
+<span class="lineNum"> 1991 </span> : *
+<span class="lineNum"> 1992 </span> : * If ios_base::boolalpha is not set, proceeds as with reading a long,
+<span class="lineNum"> 1993 </span> : * except if the value is 1, sets @a v to true, if the value is 0, sets
+<span class="lineNum"> 1994 </span> : * @a v to false, and otherwise set err to ios_base::failbit.
+<span class="lineNum"> 1995 </span> : *
+<span class="lineNum"> 1996 </span> : * @param in Start of input stream.
+<span class="lineNum"> 1997 </span> : * @param end End of input stream.
+<span class="lineNum"> 1998 </span> : * @param io Source of locale and flags.
+<span class="lineNum"> 1999 </span> : * @param err Error flags to set.
+<span class="lineNum"> 2000 </span> : * @param v Value to format and insert.
+<span class="lineNum"> 2001 </span> : * @return Iterator after reading.
+<span class="lineNum"> 2002 </span> : */
+<span class="lineNum"> 2003 </span> : iter_type
+<span class="lineNum"> 2004 </span> : get(iter_type __in, iter_type __end, ios_base&amp; __io,
+<span class="lineNum"> 2005 </span> : ios_base::iostate&amp; __err, bool&amp; __v) const
+<span class="lineNum"> 2006 </span> : { return this-&gt;do_get(__in, __end, __io, __err, __v); }
+<span class="lineNum"> 2007 </span> :
+<span class="lineNum"> 2008 </span> : //@{
+<span class="lineNum"> 2009 </span> : /**
+<span class="lineNum"> 2010 </span> : * @brief Numeric parsing.
+<span class="lineNum"> 2011 </span> : *
+<span class="lineNum"> 2012 </span> : * Parses the input stream into the integral variable @a v. It does so
+<span class="lineNum"> 2013 </span> : * by calling num_get::do_get().
+<span class="lineNum"> 2014 </span> : *
+<span class="lineNum"> 2015 </span> : * Parsing is affected by the flag settings in @a io.
+<span class="lineNum"> 2016 </span> : *
+<span class="lineNum"> 2017 </span> : * The basic parse is affected by the value of io.flags() &amp;
+<span class="lineNum"> 2018 </span> : * ios_base::basefield. If equal to ios_base::oct, parses like the
+<span class="lineNum"> 2019 </span> : * scanf %o specifier. Else if equal to ios_base::hex, parses like %X
+<span class="lineNum"> 2020 </span> : * specifier. Else if basefield equal to 0, parses like the %i
+<span class="lineNum"> 2021 </span> : * specifier. Otherwise, parses like %d for signed and %u for unsigned
+<span class="lineNum"> 2022 </span> : * types. The matching type length modifier is also used.
+<span class="lineNum"> 2023 </span> : *
+<span class="lineNum"> 2024 </span> : * Digit grouping is interpreted according to numpunct::grouping() and
+<span class="lineNum"> 2025 </span> : * numpunct::thousands_sep(). If the pattern of digit groups isn't
+<span class="lineNum"> 2026 </span> : * consistent, sets err to ios_base::failbit.
+<span class="lineNum"> 2027 </span> : *
+<span class="lineNum"> 2028 </span> : * If parsing the string yields a valid value for @a v, @a v is set.
+<span class="lineNum"> 2029 </span> : * Otherwise, sets err to ios_base::failbit and leaves @a v unaltered.
+<span class="lineNum"> 2030 </span> : * Sets err to ios_base::eofbit if the stream is emptied.
+<span class="lineNum"> 2031 </span> : *
+<span class="lineNum"> 2032 </span> : * @param in Start of input stream.
+<span class="lineNum"> 2033 </span> : * @param end End of input stream.
+<span class="lineNum"> 2034 </span> : * @param io Source of locale and flags.
+<span class="lineNum"> 2035 </span> : * @param err Error flags to set.
+<span class="lineNum"> 2036 </span> : * @param v Value to format and insert.
+<span class="lineNum"> 2037 </span> : * @return Iterator after reading.
+<span class="lineNum"> 2038 </span> : */
+<span class="lineNum"> 2039 </span> : iter_type
+<span class="lineNum"> 2040 </span> : get(iter_type __in, iter_type __end, ios_base&amp; __io,
+<span class="lineNum"> 2041 </span> : ios_base::iostate&amp; __err, long&amp; __v) const
+<span class="lineNum"> 2042 </span> : { return this-&gt;do_get(__in, __end, __io, __err, __v); }
+<span class="lineNum"> 2043 </span> :
+<span class="lineNum"> 2044 </span> : iter_type
+<span class="lineNum"> 2045 </span> : get(iter_type __in, iter_type __end, ios_base&amp; __io,
+<span class="lineNum"> 2046 </span> : ios_base::iostate&amp; __err, unsigned short&amp; __v) const
+<span class="lineNum"> 2047 </span> : { return this-&gt;do_get(__in, __end, __io, __err, __v); }
+<span class="lineNum"> 2048 </span> :
+<span class="lineNum"> 2049 </span> : iter_type
+<span class="lineNum"> 2050 </span> : get(iter_type __in, iter_type __end, ios_base&amp; __io,
+<span class="lineNum"> 2051 </span> : ios_base::iostate&amp; __err, unsigned int&amp; __v) const
+<span class="lineNum"> 2052 </span> : { return this-&gt;do_get(__in, __end, __io, __err, __v); }
+<span class="lineNum"> 2053 </span> :
+<span class="lineNum"> 2054 </span> : iter_type
+<span class="lineNum"> 2055 </span> : get(iter_type __in, iter_type __end, ios_base&amp; __io,
+<span class="lineNum"> 2056 </span> : ios_base::iostate&amp; __err, unsigned long&amp; __v) const
+<span class="lineNum"> 2057 </span> : { return this-&gt;do_get(__in, __end, __io, __err, __v); }
+<span class="lineNum"> 2058 </span> :
+<span class="lineNum"> 2059 </span> : #ifdef _GLIBCXX_USE_LONG_LONG
+<span class="lineNum"> 2060 </span> : iter_type
+<span class="lineNum"> 2061 </span> : get(iter_type __in, iter_type __end, ios_base&amp; __io,
+<span class="lineNum"> 2062 </span> : ios_base::iostate&amp; __err, long long&amp; __v) const
+<span class="lineNum"> 2063 </span> : { return this-&gt;do_get(__in, __end, __io, __err, __v); }
+<span class="lineNum"> 2064 </span> :
+<span class="lineNum"> 2065 </span> : iter_type
+<span class="lineNum"> 2066 </span> : get(iter_type __in, iter_type __end, ios_base&amp; __io,
+<span class="lineNum"> 2067 </span> : ios_base::iostate&amp; __err, unsigned long long&amp; __v) const
+<span class="lineNum"> 2068 </span> : { return this-&gt;do_get(__in, __end, __io, __err, __v); }
+<span class="lineNum"> 2069 </span> : #endif
+<span class="lineNum"> 2070 </span> : //@}
+<span class="lineNum"> 2071 </span> :
+<span class="lineNum"> 2072 </span> : //@{
+<span class="lineNum"> 2073 </span> : /**
+<span class="lineNum"> 2074 </span> : * @brief Numeric parsing.
+<span class="lineNum"> 2075 </span> : *
+<span class="lineNum"> 2076 </span> : * Parses the input stream into the integral variable @a v. It does so
+<span class="lineNum"> 2077 </span> : * by calling num_get::do_get().
+<span class="lineNum"> 2078 </span> : *
+<span class="lineNum"> 2079 </span> : * The input characters are parsed like the scanf %g specifier. The
+<span class="lineNum"> 2080 </span> : * matching type length modifier is also used.
+<span class="lineNum"> 2081 </span> : *
+<span class="lineNum"> 2082 </span> : * The decimal point character used is numpunct::decimal_point().
+<span class="lineNum"> 2083 </span> : * Digit grouping is interpreted according to numpunct::grouping() and
+<span class="lineNum"> 2084 </span> : * numpunct::thousands_sep(). If the pattern of digit groups isn't
+<span class="lineNum"> 2085 </span> : * consistent, sets err to ios_base::failbit.
+<span class="lineNum"> 2086 </span> : *
+<span class="lineNum"> 2087 </span> : * If parsing the string yields a valid value for @a v, @a v is set.
+<span class="lineNum"> 2088 </span> : * Otherwise, sets err to ios_base::failbit and leaves @a v unaltered.
+<span class="lineNum"> 2089 </span> : * Sets err to ios_base::eofbit if the stream is emptied.
+<span class="lineNum"> 2090 </span> : *
+<span class="lineNum"> 2091 </span> : * @param in Start of input stream.
+<span class="lineNum"> 2092 </span> : * @param end End of input stream.
+<span class="lineNum"> 2093 </span> : * @param io Source of locale and flags.
+<span class="lineNum"> 2094 </span> : * @param err Error flags to set.
+<span class="lineNum"> 2095 </span> : * @param v Value to format and insert.
+<span class="lineNum"> 2096 </span> : * @return Iterator after reading.
+<span class="lineNum"> 2097 </span> : */
+<span class="lineNum"> 2098 </span> : iter_type
+<span class="lineNum"> 2099 </span> : get(iter_type __in, iter_type __end, ios_base&amp; __io,
+<span class="lineNum"> 2100 </span> : ios_base::iostate&amp; __err, float&amp; __v) const
+<span class="lineNum"> 2101 </span> : { return this-&gt;do_get(__in, __end, __io, __err, __v); }
+<span class="lineNum"> 2102 </span> :
+<span class="lineNum"> 2103 </span> : iter_type
+<span class="lineNum"> 2104 </span> : get(iter_type __in, iter_type __end, ios_base&amp; __io,
+<span class="lineNum"> 2105 </span> : ios_base::iostate&amp; __err, double&amp; __v) const
+<span class="lineNum"> 2106 </span> : { return this-&gt;do_get(__in, __end, __io, __err, __v); }
+<span class="lineNum"> 2107 </span> :
+<span class="lineNum"> 2108 </span> : iter_type
+<span class="lineNum"> 2109 </span> : get(iter_type __in, iter_type __end, ios_base&amp; __io,
+<span class="lineNum"> 2110 </span> : ios_base::iostate&amp; __err, long double&amp; __v) const
+<span class="lineNum"> 2111 </span> : { return this-&gt;do_get(__in, __end, __io, __err, __v); }
+<span class="lineNum"> 2112 </span> : //@}
+<span class="lineNum"> 2113 </span> :
+<span class="lineNum"> 2114 </span> : /**
+<span class="lineNum"> 2115 </span> : * @brief Numeric parsing.
+<span class="lineNum"> 2116 </span> : *
+<span class="lineNum"> 2117 </span> : * Parses the input stream into the pointer variable @a v. It does so
+<span class="lineNum"> 2118 </span> : * by calling num_get::do_get().
+<span class="lineNum"> 2119 </span> : *
+<span class="lineNum"> 2120 </span> : * The input characters are parsed like the scanf %p specifier.
+<span class="lineNum"> 2121 </span> : *
+<span class="lineNum"> 2122 </span> : * Digit grouping is interpreted according to numpunct::grouping() and
+<span class="lineNum"> 2123 </span> : * numpunct::thousands_sep(). If the pattern of digit groups isn't
+<span class="lineNum"> 2124 </span> : * consistent, sets err to ios_base::failbit.
+<span class="lineNum"> 2125 </span> : *
+<span class="lineNum"> 2126 </span> : * Note that the digit grouping effect for pointers is a bit ambiguous
+<span class="lineNum"> 2127 </span> : * in the standard and shouldn't be relied on. See DR 344.
+<span class="lineNum"> 2128 </span> : *
+<span class="lineNum"> 2129 </span> : * If parsing the string yields a valid value for @a v, @a v is set.
+<span class="lineNum"> 2130 </span> : * Otherwise, sets err to ios_base::failbit and leaves @a v unaltered.
+<span class="lineNum"> 2131 </span> : * Sets err to ios_base::eofbit if the stream is emptied.
+<span class="lineNum"> 2132 </span> : *
+<span class="lineNum"> 2133 </span> : * @param in Start of input stream.
+<span class="lineNum"> 2134 </span> : * @param end End of input stream.
+<span class="lineNum"> 2135 </span> : * @param io Source of locale and flags.
+<span class="lineNum"> 2136 </span> : * @param err Error flags to set.
+<span class="lineNum"> 2137 </span> : * @param v Value to format and insert.
+<span class="lineNum"> 2138 </span> : * @return Iterator after reading.
+<span class="lineNum"> 2139 </span> : */
+<span class="lineNum"> 2140 </span> : iter_type
+<span class="lineNum"> 2141 </span> : get(iter_type __in, iter_type __end, ios_base&amp; __io,
+<span class="lineNum"> 2142 </span> : ios_base::iostate&amp; __err, void*&amp; __v) const
+<span class="lineNum"> 2143 </span> : { return this-&gt;do_get(__in, __end, __io, __err, __v); }
+<span class="lineNum"> 2144 </span> :
+<span class="lineNum"> 2145 </span> : protected:
+<span class="lineNum"> 2146 </span> : /// Destructor.
+<span class="lineNum"> 2147 </span> : virtual ~num_get() { }
+<span class="lineNum"> 2148 </span> :
+<span class="lineNum"> 2149 </span> : iter_type
+<span class="lineNum"> 2150 </span> : _M_extract_float(iter_type, iter_type, ios_base&amp;, ios_base::iostate&amp;,
+<span class="lineNum"> 2151 </span> : string&amp; __xtrc) const;
+<span class="lineNum"> 2152 </span> :
+<span class="lineNum"> 2153 </span> : template&lt;typename _ValueT&gt;
+<span class="lineNum"> 2154 </span> : iter_type
+<span class="lineNum"> 2155 </span> : _M_extract_int(iter_type, iter_type, ios_base&amp;, ios_base::iostate&amp;,
+<span class="lineNum"> 2156 </span> : _ValueT&amp; __v) const;
+<span class="lineNum"> 2157 </span> :
+<span class="lineNum"> 2158 </span> : template&lt;typename _CharT2&gt;
+<span class="lineNum"> 2159 </span> : typename __gnu_cxx::__enable_if&lt;__is_char&lt;_CharT2&gt;::__value, int&gt;::__type
+<span class="lineNum"> 2160 </span> : _M_find(const _CharT2*, size_t __len, _CharT2 __c) const
+<span class="lineNum"> 2161 </span> : {
+<span class="lineNum"> 2162 </span> : int __ret = -1;
+<span class="lineNum"> 2163 </span> : if (__len &lt;= 10)
+<span class="lineNum"> 2164 </span> : {
+<span class="lineNum"> 2165 </span> : if (__c &gt;= _CharT2('0') &amp;&amp; __c &lt; _CharT2(_CharT2('0') + __len))
+<span class="lineNum"> 2166 </span> : __ret = __c - _CharT2('0');
+<span class="lineNum"> 2167 </span> : }
+<span class="lineNum"> 2168 </span> : else
+<span class="lineNum"> 2169 </span> : {
+<span class="lineNum"> 2170 </span> : if (__c &gt;= _CharT2('0') &amp;&amp; __c &lt;= _CharT2('9'))
+<span class="lineNum"> 2171 </span> : __ret = __c - _CharT2('0');
+<span class="lineNum"> 2172 </span> : else if (__c &gt;= _CharT2('a') &amp;&amp; __c &lt;= _CharT2('f'))
+<span class="lineNum"> 2173 </span> : __ret = 10 + (__c - _CharT2('a'));
+<span class="lineNum"> 2174 </span> : else if (__c &gt;= _CharT2('A') &amp;&amp; __c &lt;= _CharT2('F'))
+<span class="lineNum"> 2175 </span> : __ret = 10 + (__c - _CharT2('A'));
+<span class="lineNum"> 2176 </span> : }
+<span class="lineNum"> 2177 </span> : return __ret;
+<span class="lineNum"> 2178 </span> : }
+<span class="lineNum"> 2179 </span> :
+<span class="lineNum"> 2180 </span> : template&lt;typename _CharT2&gt;
+<span class="lineNum"> 2181 </span> : typename __gnu_cxx::__enable_if&lt;!__is_char&lt;_CharT2&gt;::__value,
+<span class="lineNum"> 2182 </span> : int&gt;::__type
+<span class="lineNum"> 2183 </span> : _M_find(const _CharT2* __zero, size_t __len, _CharT2 __c) const
+<span class="lineNum"> 2184 </span> : {
+<span class="lineNum"> 2185 </span> : int __ret = -1;
+<span class="lineNum"> 2186 </span> : const char_type* __q = char_traits&lt;_CharT2&gt;::find(__zero, __len, __c);
+<span class="lineNum"> 2187 </span> : if (__q)
+<span class="lineNum"> 2188 </span> : {
+<span class="lineNum"> 2189 </span> : __ret = __q - __zero;
+<span class="lineNum"> 2190 </span> : if (__ret &gt; 15)
+<span class="lineNum"> 2191 </span> : __ret -= 6;
+<span class="lineNum"> 2192 </span> : }
+<span class="lineNum"> 2193 </span> : return __ret;
+<span class="lineNum"> 2194 </span> : }
+<span class="lineNum"> 2195 </span> :
+<span class="lineNum"> 2196 </span> : //@{
+<span class="lineNum"> 2197 </span> : /**
+<span class="lineNum"> 2198 </span> : * @brief Numeric parsing.
+<span class="lineNum"> 2199 </span> : *
+<span class="lineNum"> 2200 </span> : * Parses the input stream into the variable @a v. This function is a
+<span class="lineNum"> 2201 </span> : * hook for derived classes to change the value returned. @see get()
+<span class="lineNum"> 2202 </span> : * for more details.
+<span class="lineNum"> 2203 </span> : *
+<span class="lineNum"> 2204 </span> : * @param in Start of input stream.
+<span class="lineNum"> 2205 </span> : * @param end End of input stream.
+<span class="lineNum"> 2206 </span> : * @param io Source of locale and flags.
+<span class="lineNum"> 2207 </span> : * @param err Error flags to set.
+<span class="lineNum"> 2208 </span> : * @param v Value to format and insert.
+<span class="lineNum"> 2209 </span> : * @return Iterator after reading.
+<span class="lineNum"> 2210 </span> : */
+<span class="lineNum"> 2211 </span> : virtual iter_type
+<span class="lineNum"> 2212 </span> : do_get(iter_type, iter_type, ios_base&amp;, ios_base::iostate&amp;, bool&amp;) const;
+<span class="lineNum"> 2213 </span> :
+<span class="lineNum"> 2214 </span> :
+<span class="lineNum"> 2215 </span> : virtual iter_type
+<span class="lineNum"> 2216 </span> : do_get(iter_type, iter_type, ios_base&amp;, ios_base::iostate&amp;, long&amp;) const;
+<span class="lineNum"> 2217 </span> :
+<span class="lineNum"> 2218 </span> : virtual iter_type
+<span class="lineNum"> 2219 </span> : do_get(iter_type, iter_type, ios_base&amp;, ios_base::iostate&amp; __err,
+<span class="lineNum"> 2220 </span> : unsigned short&amp;) const;
+<span class="lineNum"> 2221 </span> :
+<span class="lineNum"> 2222 </span> : virtual iter_type
+<span class="lineNum"> 2223 </span> : do_get(iter_type, iter_type, ios_base&amp;, ios_base::iostate&amp; __err,
+<span class="lineNum"> 2224 </span> : unsigned int&amp;) const;
+<span class="lineNum"> 2225 </span> :
+<span class="lineNum"> 2226 </span> : virtual iter_type
+<span class="lineNum"> 2227 </span> : do_get(iter_type, iter_type, ios_base&amp;, ios_base::iostate&amp; __err,
+<span class="lineNum"> 2228 </span> : unsigned long&amp;) const;
+<span class="lineNum"> 2229 </span> :
+<span class="lineNum"> 2230 </span> : #ifdef _GLIBCXX_USE_LONG_LONG
+<span class="lineNum"> 2231 </span> : virtual iter_type
+<span class="lineNum"> 2232 </span> : do_get(iter_type, iter_type, ios_base&amp;, ios_base::iostate&amp; __err,
+<span class="lineNum"> 2233 </span> : long long&amp;) const;
+<span class="lineNum"> 2234 </span> :
+<span class="lineNum"> 2235 </span> : virtual iter_type
+<span class="lineNum"> 2236 </span> : do_get(iter_type, iter_type, ios_base&amp;, ios_base::iostate&amp; __err,
+<span class="lineNum"> 2237 </span> : unsigned long long&amp;) const;
+<span class="lineNum"> 2238 </span> : #endif
+<span class="lineNum"> 2239 </span> :
+<span class="lineNum"> 2240 </span> : virtual iter_type
+<span class="lineNum"> 2241 </span> : do_get(iter_type, iter_type, ios_base&amp;, ios_base::iostate&amp; __err,
+<span class="lineNum"> 2242 </span> : float&amp;) const;
+<span class="lineNum"> 2243 </span> :
+<span class="lineNum"> 2244 </span> : virtual iter_type
+<span class="lineNum"> 2245 </span> : do_get(iter_type, iter_type, ios_base&amp;, ios_base::iostate&amp; __err,
+<span class="lineNum"> 2246 </span> : double&amp;) const;
+<span class="lineNum"> 2247 </span> :
+<span class="lineNum"> 2248 </span> : // XXX GLIBCXX_ABI Deprecated
+<span class="lineNum"> 2249 </span> : #if defined _GLIBCXX_LONG_DOUBLE_COMPAT &amp;&amp; defined __LONG_DOUBLE_128__
+<span class="lineNum"> 2250 </span> : virtual iter_type
+<span class="lineNum"> 2251 </span> : __do_get(iter_type, iter_type, ios_base&amp;, ios_base::iostate&amp; __err,
+<span class="lineNum"> 2252 </span> : double&amp;) const;
+<span class="lineNum"> 2253 </span> : #else
+<span class="lineNum"> 2254 </span> : virtual iter_type
+<span class="lineNum"> 2255 </span> : do_get(iter_type, iter_type, ios_base&amp;, ios_base::iostate&amp; __err,
+<span class="lineNum"> 2256 </span> : long double&amp;) const;
+<span class="lineNum"> 2257 </span> : #endif
+<span class="lineNum"> 2258 </span> :
+<span class="lineNum"> 2259 </span> : virtual iter_type
+<span class="lineNum"> 2260 </span> : do_get(iter_type, iter_type, ios_base&amp;, ios_base::iostate&amp; __err,
+<span class="lineNum"> 2261 </span> : void*&amp;) const;
+<span class="lineNum"> 2262 </span> :
+<span class="lineNum"> 2263 </span> : // XXX GLIBCXX_ABI Deprecated
+<span class="lineNum"> 2264 </span> : #if defined _GLIBCXX_LONG_DOUBLE_COMPAT &amp;&amp; defined __LONG_DOUBLE_128__
+<span class="lineNum"> 2265 </span> : virtual iter_type
+<span class="lineNum"> 2266 </span> : do_get(iter_type, iter_type, ios_base&amp;, ios_base::iostate&amp; __err,
+<span class="lineNum"> 2267 </span> : long double&amp;) const;
+<span class="lineNum"> 2268 </span> : #endif
+<span class="lineNum"> 2269 </span> : //@}
+<span class="lineNum"> 2270 </span> : };
+<span class="lineNum"> 2271 </span> :
+<span class="lineNum"> 2272 </span> : template&lt;typename _CharT, typename _InIter&gt;
+<span class="lineNum"> 2273 </span> : locale::id num_get&lt;_CharT, _InIter&gt;::id;
+<span class="lineNum"> 2274 </span> :
+<span class="lineNum"> 2275 </span> :
+<span class="lineNum"> 2276 </span> : /**
+<span class="lineNum"> 2277 </span> : * @brief Facet for converting numbers to strings.
+<span class="lineNum"> 2278 </span> : *
+<span class="lineNum"> 2279 </span> : * This facet encapsulates the code to convert a number to a string. It is
+<span class="lineNum"> 2280 </span> : * used by the ostream numeric insertion operators.
+<span class="lineNum"> 2281 </span> : *
+<span class="lineNum"> 2282 </span> : * The num_put template uses protected virtual functions to provide the
+<span class="lineNum"> 2283 </span> : * actual results. The public accessors forward the call to the virtual
+<span class="lineNum"> 2284 </span> : * functions. These virtual functions are hooks for developers to
+<span class="lineNum"> 2285 </span> : * implement the behavior they require from the num_put facet.
+<span class="lineNum"> 2286 </span> : */
+<span class="lineNum"> 2287 </span> : template&lt;typename _CharT, typename _OutIter&gt;
+<span class="lineNum"> 2288 </span> : class num_put : public locale::facet
+<span class="lineNum"> 2289 </span> : {
+<span class="lineNum"> 2290 </span> : public:
+<span class="lineNum"> 2291 </span> : // Types:
+<span class="lineNum"> 2292 </span> : //@{
+<span class="lineNum"> 2293 </span> : /// Public typedefs
+<span class="lineNum"> 2294 </span> : typedef _CharT char_type;
+<span class="lineNum"> 2295 </span> : typedef _OutIter iter_type;
+<span class="lineNum"> 2296 </span> : //@}
+<span class="lineNum"> 2297 </span> :
+<span class="lineNum"> 2298 </span> : /// Numpunct facet id.
+<span class="lineNum"> 2299 </span> : static locale::id id;
+<span class="lineNum"> 2300 </span> :
+<span class="lineNum"> 2301 </span> : /**
+<span class="lineNum"> 2302 </span> : * @brief Constructor performs initialization.
+<span class="lineNum"> 2303 </span> : *
+<span class="lineNum"> 2304 </span> : * This is the constructor provided by the standard.
+<span class="lineNum"> 2305 </span> : *
+<span class="lineNum"> 2306 </span> : * @param refs Passed to the base facet class.
+<span class="lineNum"> 2307 </span> : */
+<span class="lineNum"> 2308 </span> : explicit
+<span class="lineNum"> 2309 </span> : num_put(size_t __refs = 0) : facet(__refs) { }
+<span class="lineNum"> 2310 </span> :
+<span class="lineNum"> 2311 </span> : /**
+<span class="lineNum"> 2312 </span> : * @brief Numeric formatting.
+<span class="lineNum"> 2313 </span> : *
+<span class="lineNum"> 2314 </span> : * Formats the boolean @a v and inserts it into a stream. It does so
+<span class="lineNum"> 2315 </span> : * by calling num_put::do_put().
+<span class="lineNum"> 2316 </span> : *
+<span class="lineNum"> 2317 </span> : * If ios_base::boolalpha is set, writes ctype&lt;CharT&gt;::truename() or
+<span class="lineNum"> 2318 </span> : * ctype&lt;CharT&gt;::falsename(). Otherwise formats @a v as an int.
+<span class="lineNum"> 2319 </span> : *
+<span class="lineNum"> 2320 </span> : * @param s Stream to write to.
+<span class="lineNum"> 2321 </span> : * @param io Source of locale and flags.
+<span class="lineNum"> 2322 </span> : * @param fill Char_type to use for filling.
+<span class="lineNum"> 2323 </span> : * @param v Value to format and insert.
+<span class="lineNum"> 2324 </span> : * @return Iterator after writing.
+<span class="lineNum"> 2325 </span> : */
+<span class="lineNum"> 2326 </span> : iter_type
+<span class="lineNum"> 2327 </span> : put(iter_type __s, ios_base&amp; __f, char_type __fill, bool __v) const
+<span class="lineNum"> 2328 </span> : { return this-&gt;do_put(__s, __f, __fill, __v); }
+<span class="lineNum"> 2329 </span> :
+<span class="lineNum"> 2330 </span> : //@{
+<span class="lineNum"> 2331 </span> : /**
+<span class="lineNum"> 2332 </span> : * @brief Numeric formatting.
+<span class="lineNum"> 2333 </span> : *
+<span class="lineNum"> 2334 </span> : * Formats the integral value @a v and inserts it into a
+<span class="lineNum"> 2335 </span> : * stream. It does so by calling num_put::do_put().
+<span class="lineNum"> 2336 </span> : *
+<span class="lineNum"> 2337 </span> : * Formatting is affected by the flag settings in @a io.
+<span class="lineNum"> 2338 </span> : *
+<span class="lineNum"> 2339 </span> : * The basic format is affected by the value of io.flags() &amp;
+<span class="lineNum"> 2340 </span> : * ios_base::basefield. If equal to ios_base::oct, formats like the
+<span class="lineNum"> 2341 </span> : * printf %o specifier. Else if equal to ios_base::hex, formats like
+<span class="lineNum"> 2342 </span> : * %x or %X with ios_base::uppercase unset or set respectively.
+<span class="lineNum"> 2343 </span> : * Otherwise, formats like %d, %ld, %lld for signed and %u, %lu, %llu
+<span class="lineNum"> 2344 </span> : * for unsigned values. Note that if both oct and hex are set, neither
+<span class="lineNum"> 2345 </span> : * will take effect.
+<span class="lineNum"> 2346 </span> : *
+<span class="lineNum"> 2347 </span> : * If ios_base::showpos is set, '+' is output before positive values.
+<span class="lineNum"> 2348 </span> : * If ios_base::showbase is set, '0' precedes octal values (except 0)
+<span class="lineNum"> 2349 </span> : * and '0[xX]' precedes hex values.
+<span class="lineNum"> 2350 </span> : *
+<span class="lineNum"> 2351 </span> : * Thousands separators are inserted according to numpunct::grouping()
+<span class="lineNum"> 2352 </span> : * and numpunct::thousands_sep(). The decimal point character used is
+<span class="lineNum"> 2353 </span> : * numpunct::decimal_point().
+<span class="lineNum"> 2354 </span> : *
+<span class="lineNum"> 2355 </span> : * If io.width() is non-zero, enough @a fill characters are inserted to
+<span class="lineNum"> 2356 </span> : * make the result at least that wide. If
+<span class="lineNum"> 2357 </span> : * (io.flags() &amp; ios_base::adjustfield) == ios_base::left, result is
+<span class="lineNum"> 2358 </span> : * padded at the end. If ios_base::internal, then padding occurs
+<span class="lineNum"> 2359 </span> : * immediately after either a '+' or '-' or after '0x' or '0X'.
+<span class="lineNum"> 2360 </span> : * Otherwise, padding occurs at the beginning.
+<span class="lineNum"> 2361 </span> : *
+<span class="lineNum"> 2362 </span> : * @param s Stream to write to.
+<span class="lineNum"> 2363 </span> : * @param io Source of locale and flags.
+<span class="lineNum"> 2364 </span> : * @param fill Char_type to use for filling.
+<span class="lineNum"> 2365 </span> : * @param v Value to format and insert.
+<span class="lineNum"> 2366 </span> : * @return Iterator after writing.
+<span class="lineNum"> 2367 </span> : */
+<span class="lineNum"> 2368 </span> : iter_type
+<span class="lineNum"> 2369 </span> : put(iter_type __s, ios_base&amp; __f, char_type __fill, long __v) const
+<span class="lineNum"> 2370 </span> : { return this-&gt;do_put(__s, __f, __fill, __v); }
+<span class="lineNum"> 2371 </span> :
+<span class="lineNum"> 2372 </span> : iter_type
+<span class="lineNum"> 2373 </span> : put(iter_type __s, ios_base&amp; __f, char_type __fill,
+<span class="lineNum"> 2374 </span> : unsigned long __v) const
+<span class="lineNum"> 2375 </span> : { return this-&gt;do_put(__s, __f, __fill, __v); }
+<span class="lineNum"> 2376 </span> :
+<span class="lineNum"> 2377 </span> : #ifdef _GLIBCXX_USE_LONG_LONG
+<span class="lineNum"> 2378 </span> : iter_type
+<span class="lineNum"> 2379 </span> : put(iter_type __s, ios_base&amp; __f, char_type __fill, long long __v) const
+<span class="lineNum"> 2380 </span> : { return this-&gt;do_put(__s, __f, __fill, __v); }
+<span class="lineNum"> 2381 </span> :
+<span class="lineNum"> 2382 </span> : iter_type
+<span class="lineNum"> 2383 </span> : put(iter_type __s, ios_base&amp; __f, char_type __fill,
+<span class="lineNum"> 2384 </span> : unsigned long long __v) const
+<span class="lineNum"> 2385 </span> : { return this-&gt;do_put(__s, __f, __fill, __v); }
+<span class="lineNum"> 2386 </span> : #endif
+<span class="lineNum"> 2387 </span> : //@}
+<span class="lineNum"> 2388 </span> :
+<span class="lineNum"> 2389 </span> : //@{
+<span class="lineNum"> 2390 </span> : /**
+<span class="lineNum"> 2391 </span> : * @brief Numeric formatting.
+<span class="lineNum"> 2392 </span> : *
+<span class="lineNum"> 2393 </span> : * Formats the floating point value @a v and inserts it into a stream.
+<span class="lineNum"> 2394 </span> : * It does so by calling num_put::do_put().
+<span class="lineNum"> 2395 </span> : *
+<span class="lineNum"> 2396 </span> : * Formatting is affected by the flag settings in @a io.
+<span class="lineNum"> 2397 </span> : *
+<span class="lineNum"> 2398 </span> : * The basic format is affected by the value of io.flags() &amp;
+<span class="lineNum"> 2399 </span> : * ios_base::floatfield. If equal to ios_base::fixed, formats like the
+<span class="lineNum"> 2400 </span> : * printf %f specifier. Else if equal to ios_base::scientific, formats
+<span class="lineNum"> 2401 </span> : * like %e or %E with ios_base::uppercase unset or set respectively.
+<span class="lineNum"> 2402 </span> : * Otherwise, formats like %g or %G depending on uppercase. Note that
+<span class="lineNum"> 2403 </span> : * if both fixed and scientific are set, the effect will also be like
+<span class="lineNum"> 2404 </span> : * %g or %G.
+<span class="lineNum"> 2405 </span> : *
+<span class="lineNum"> 2406 </span> : * The output precision is given by io.precision(). This precision is
+<span class="lineNum"> 2407 </span> : * capped at numeric_limits::digits10 + 2 (different for double and
+<span class="lineNum"> 2408 </span> : * long double). The default precision is 6.
+<span class="lineNum"> 2409 </span> : *
+<span class="lineNum"> 2410 </span> : * If ios_base::showpos is set, '+' is output before positive values.
+<span class="lineNum"> 2411 </span> : * If ios_base::showpoint is set, a decimal point will always be
+<span class="lineNum"> 2412 </span> : * output.
+<span class="lineNum"> 2413 </span> : *
+<span class="lineNum"> 2414 </span> : * Thousands separators are inserted according to numpunct::grouping()
+<span class="lineNum"> 2415 </span> : * and numpunct::thousands_sep(). The decimal point character used is
+<span class="lineNum"> 2416 </span> : * numpunct::decimal_point().
+<span class="lineNum"> 2417 </span> : *
+<span class="lineNum"> 2418 </span> : * If io.width() is non-zero, enough @a fill characters are inserted to
+<span class="lineNum"> 2419 </span> : * make the result at least that wide. If
+<span class="lineNum"> 2420 </span> : * (io.flags() &amp; ios_base::adjustfield) == ios_base::left, result is
+<span class="lineNum"> 2421 </span> : * padded at the end. If ios_base::internal, then padding occurs
+<span class="lineNum"> 2422 </span> : * immediately after either a '+' or '-' or after '0x' or '0X'.
+<span class="lineNum"> 2423 </span> : * Otherwise, padding occurs at the beginning.
+<span class="lineNum"> 2424 </span> : *
+<span class="lineNum"> 2425 </span> : * @param s Stream to write to.
+<span class="lineNum"> 2426 </span> : * @param io Source of locale and flags.
+<span class="lineNum"> 2427 </span> : * @param fill Char_type to use for filling.
+<span class="lineNum"> 2428 </span> : * @param v Value to format and insert.
+<span class="lineNum"> 2429 </span> : * @return Iterator after writing.
+<span class="lineNum"> 2430 </span> : */
+<span class="lineNum"> 2431 </span> : iter_type
+<span class="lineNum"> 2432 </span> : put(iter_type __s, ios_base&amp; __f, char_type __fill, double __v) const
+<span class="lineNum"> 2433 </span> : { return this-&gt;do_put(__s, __f, __fill, __v); }
+<span class="lineNum"> 2434 </span> :
+<span class="lineNum"> 2435 </span> : iter_type
+<span class="lineNum"> 2436 </span> : put(iter_type __s, ios_base&amp; __f, char_type __fill,
+<span class="lineNum"> 2437 </span> : long double __v) const
+<span class="lineNum"> 2438 </span> : { return this-&gt;do_put(__s, __f, __fill, __v); }
+<span class="lineNum"> 2439 </span> : //@}
+<span class="lineNum"> 2440 </span> :
+<span class="lineNum"> 2441 </span> : /**
+<span class="lineNum"> 2442 </span> : * @brief Numeric formatting.
+<span class="lineNum"> 2443 </span> : *
+<span class="lineNum"> 2444 </span> : * Formats the pointer value @a v and inserts it into a stream. It
+<span class="lineNum"> 2445 </span> : * does so by calling num_put::do_put().
+<span class="lineNum"> 2446 </span> : *
+<span class="lineNum"> 2447 </span> : * This function formats @a v as an unsigned long with ios_base::hex
+<span class="lineNum"> 2448 </span> : * and ios_base::showbase set.
+<span class="lineNum"> 2449 </span> : *
+<span class="lineNum"> 2450 </span> : * @param s Stream to write to.
+<span class="lineNum"> 2451 </span> : * @param io Source of locale and flags.
+<span class="lineNum"> 2452 </span> : * @param fill Char_type to use for filling.
+<span class="lineNum"> 2453 </span> : * @param v Value to format and insert.
+<span class="lineNum"> 2454 </span> : * @return Iterator after writing.
+<span class="lineNum"> 2455 </span> : */
+<span class="lineNum"> 2456 </span> : iter_type
+<span class="lineNum"> 2457 </span> : put(iter_type __s, ios_base&amp; __f, char_type __fill,
+<span class="lineNum"> 2458 </span> : const void* __v) const
+<span class="lineNum"> 2459 </span> : { return this-&gt;do_put(__s, __f, __fill, __v); }
+<span class="lineNum"> 2460 </span> :
+<span class="lineNum"> 2461 </span> : protected:
+<span class="lineNum"> 2462 </span> : template&lt;typename _ValueT&gt;
+<span class="lineNum"> 2463 </span> : iter_type
+<span class="lineNum"> 2464 </span> : _M_insert_float(iter_type, ios_base&amp; __io, char_type __fill,
+<span class="lineNum"> 2465 </span> : char __mod, _ValueT __v) const;
+<span class="lineNum"> 2466 </span> :
+<span class="lineNum"> 2467 </span> : void
+<span class="lineNum"> 2468 </span> : _M_group_float(const char* __grouping, size_t __grouping_size,
+<span class="lineNum"> 2469 </span> : char_type __sep, const char_type* __p, char_type* __new,
+<span class="lineNum"> 2470 </span> : char_type* __cs, int&amp; __len) const;
+<span class="lineNum"> 2471 </span> :
+<span class="lineNum"> 2472 </span> : template&lt;typename _ValueT&gt;
+<span class="lineNum"> 2473 </span> : iter_type
+<span class="lineNum"> 2474 </span> : _M_insert_int(iter_type, ios_base&amp; __io, char_type __fill,
+<span class="lineNum"> 2475 </span> : _ValueT __v) const;
+<span class="lineNum"> 2476 </span> :
+<span class="lineNum"> 2477 </span> : void
+<span class="lineNum"> 2478 </span> : _M_group_int(const char* __grouping, size_t __grouping_size,
+<span class="lineNum"> 2479 </span> : char_type __sep, ios_base&amp; __io, char_type* __new,
+<span class="lineNum"> 2480 </span> : char_type* __cs, int&amp; __len) const;
+<span class="lineNum"> 2481 </span> :
+<span class="lineNum"> 2482 </span> : void
+<span class="lineNum"> 2483 </span> : _M_pad(char_type __fill, streamsize __w, ios_base&amp; __io,
+<span class="lineNum"> 2484 </span> : char_type* __new, const char_type* __cs, int&amp; __len) const;
+<span class="lineNum"> 2485 </span> :
+<span class="lineNum"> 2486 </span> : /// Destructor.
+<span class="lineNum"> 2487 </span> : virtual
+<span class="lineNum"> 2488 </span> : ~num_put() { };
+<span class="lineNum"> 2489 </span> :
+<span class="lineNum"> 2490 </span> : //@{
+<span class="lineNum"> 2491 </span> : /**
+<span class="lineNum"> 2492 </span> : * @brief Numeric formatting.
+<span class="lineNum"> 2493 </span> : *
+<span class="lineNum"> 2494 </span> : * These functions do the work of formatting numeric values and
+<span class="lineNum"> 2495 </span> : * inserting them into a stream. This function is a hook for derived
+<span class="lineNum"> 2496 </span> : * classes to change the value returned.
+<span class="lineNum"> 2497 </span> : *
+<span class="lineNum"> 2498 </span> : * @param s Stream to write to.
+<span class="lineNum"> 2499 </span> : * @param io Source of locale and flags.
+<span class="lineNum"> 2500 </span> : * @param fill Char_type to use for filling.
+<span class="lineNum"> 2501 </span> : * @param v Value to format and insert.
+<span class="lineNum"> 2502 </span> : * @return Iterator after writing.
+<span class="lineNum"> 2503 </span> : */
+<span class="lineNum"> 2504 </span> : virtual iter_type
+<span class="lineNum"> 2505 </span> : do_put(iter_type, ios_base&amp;, char_type __fill, bool __v) const;
+<span class="lineNum"> 2506 </span> :
+<span class="lineNum"> 2507 </span> : virtual iter_type
+<span class="lineNum"> 2508 </span> : do_put(iter_type, ios_base&amp;, char_type __fill, long __v) const;
+<span class="lineNum"> 2509 </span> :
+<span class="lineNum"> 2510 </span> : virtual iter_type
+<span class="lineNum"> 2511 </span> : do_put(iter_type, ios_base&amp;, char_type __fill, unsigned long) const;
+<span class="lineNum"> 2512 </span> :
+<span class="lineNum"> 2513 </span> : #ifdef _GLIBCXX_USE_LONG_LONG
+<span class="lineNum"> 2514 </span> : virtual iter_type
+<span class="lineNum"> 2515 </span> : do_put(iter_type, ios_base&amp;, char_type __fill, long long __v) const;
+<span class="lineNum"> 2516 </span> :
+<span class="lineNum"> 2517 </span> : virtual iter_type
+<span class="lineNum"> 2518 </span> : do_put(iter_type, ios_base&amp;, char_type __fill, unsigned long long) const;
+<span class="lineNum"> 2519 </span> : #endif
+<span class="lineNum"> 2520 </span> :
+<span class="lineNum"> 2521 </span> : virtual iter_type
+<span class="lineNum"> 2522 </span> : do_put(iter_type, ios_base&amp;, char_type __fill, double __v) const;
+<span class="lineNum"> 2523 </span> :
+<span class="lineNum"> 2524 </span> : // XXX GLIBCXX_ABI Deprecated
+<span class="lineNum"> 2525 </span> : #if defined _GLIBCXX_LONG_DOUBLE_COMPAT &amp;&amp; defined __LONG_DOUBLE_128__
+<span class="lineNum"> 2526 </span> : virtual iter_type
+<span class="lineNum"> 2527 </span> : __do_put(iter_type, ios_base&amp;, char_type __fill, double __v) const;
+<span class="lineNum"> 2528 </span> : #else
+<span class="lineNum"> 2529 </span> : virtual iter_type
+<span class="lineNum"> 2530 </span> : do_put(iter_type, ios_base&amp;, char_type __fill, long double __v) const;
+<span class="lineNum"> 2531 </span> : #endif
+<span class="lineNum"> 2532 </span> :
+<span class="lineNum"> 2533 </span> : virtual iter_type
+<span class="lineNum"> 2534 </span> : do_put(iter_type, ios_base&amp;, char_type __fill, const void* __v) const;
+<span class="lineNum"> 2535 </span> :
+<span class="lineNum"> 2536 </span> : // XXX GLIBCXX_ABI Deprecated
+<span class="lineNum"> 2537 </span> : #if defined _GLIBCXX_LONG_DOUBLE_COMPAT &amp;&amp; defined __LONG_DOUBLE_128__
+<span class="lineNum"> 2538 </span> : virtual iter_type
+<span class="lineNum"> 2539 </span> : do_put(iter_type, ios_base&amp;, char_type __fill, long double __v) const;
+<span class="lineNum"> 2540 </span> : #endif
+<span class="lineNum"> 2541 </span> : //@}
+<span class="lineNum"> 2542 </span> : };
+<span class="lineNum"> 2543 </span> :
+<span class="lineNum"> 2544 </span> : template &lt;typename _CharT, typename _OutIter&gt;
+<span class="lineNum"> 2545 </span> : locale::id num_put&lt;_CharT, _OutIter&gt;::id;
+<span class="lineNum"> 2546 </span> :
+<span class="lineNum"> 2547 </span> : _GLIBCXX_END_LDBL_NAMESPACE
+<span class="lineNum"> 2548 </span> :
+<span class="lineNum"> 2549 </span> : // Subclause convenience interfaces, inlines.
+<span class="lineNum"> 2550 </span> : // NB: These are inline because, when used in a loop, some compilers
+<span class="lineNum"> 2551 </span> : // can hoist the body out of the loop; then it's just as fast as the
+<span class="lineNum"> 2552 </span> : // C is*() function.
+<span class="lineNum"> 2553 </span> :
+<span class="lineNum"> 2554 </span> : /// Convenience interface to ctype.is(ctype_base::space, __c).
+<span class="lineNum"> 2555 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 2556 </span> : inline bool
+<span class="lineNum"> 2557 </span> : isspace(_CharT __c, const locale&amp; __loc)
+<span class="lineNum"> 2558 </span> : { return use_facet&lt;ctype&lt;_CharT&gt; &gt;(__loc).is(ctype_base::space, __c); }
+<span class="lineNum"> 2559 </span> :
+<span class="lineNum"> 2560 </span> : /// Convenience interface to ctype.is(ctype_base::print, __c).
+<span class="lineNum"> 2561 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 2562 </span> : inline bool
+<span class="lineNum"> 2563 </span> : isprint(_CharT __c, const locale&amp; __loc)
+<span class="lineNum"> 2564 </span> : { return use_facet&lt;ctype&lt;_CharT&gt; &gt;(__loc).is(ctype_base::print, __c); }
+<span class="lineNum"> 2565 </span> :
+<span class="lineNum"> 2566 </span> : /// Convenience interface to ctype.is(ctype_base::cntrl, __c).
+<span class="lineNum"> 2567 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 2568 </span> : inline bool
+<span class="lineNum"> 2569 </span> : iscntrl(_CharT __c, const locale&amp; __loc)
+<span class="lineNum"> 2570 </span> : { return use_facet&lt;ctype&lt;_CharT&gt; &gt;(__loc).is(ctype_base::cntrl, __c); }
+<span class="lineNum"> 2571 </span> :
+<span class="lineNum"> 2572 </span> : /// Convenience interface to ctype.is(ctype_base::upper, __c).
+<span class="lineNum"> 2573 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 2574 </span> : inline bool
+<span class="lineNum"> 2575 </span> : isupper(_CharT __c, const locale&amp; __loc)
+<span class="lineNum"> 2576 </span> : { return use_facet&lt;ctype&lt;_CharT&gt; &gt;(__loc).is(ctype_base::upper, __c); }
+<span class="lineNum"> 2577 </span> :
+<span class="lineNum"> 2578 </span> : /// Convenience interface to ctype.is(ctype_base::lower, __c).
+<span class="lineNum"> 2579 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 2580 </span> : inline bool
+<span class="lineNum"> 2581 </span> : islower(_CharT __c, const locale&amp; __loc)
+<span class="lineNum"> 2582 </span> : { return use_facet&lt;ctype&lt;_CharT&gt; &gt;(__loc).is(ctype_base::lower, __c); }
+<span class="lineNum"> 2583 </span> :
+<span class="lineNum"> 2584 </span> : /// Convenience interface to ctype.is(ctype_base::alpha, __c).
+<span class="lineNum"> 2585 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 2586 </span> : inline bool
+<span class="lineNum"> 2587 </span> : isalpha(_CharT __c, const locale&amp; __loc)
+<span class="lineNum"> 2588 </span> : { return use_facet&lt;ctype&lt;_CharT&gt; &gt;(__loc).is(ctype_base::alpha, __c); }
+<span class="lineNum"> 2589 </span> :
+<span class="lineNum"> 2590 </span> : /// Convenience interface to ctype.is(ctype_base::digit, __c).
+<span class="lineNum"> 2591 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 2592 </span> : inline bool
+<span class="lineNum"> 2593 </span> : isdigit(_CharT __c, const locale&amp; __loc)
+<span class="lineNum"> 2594 </span> : { return use_facet&lt;ctype&lt;_CharT&gt; &gt;(__loc).is(ctype_base::digit, __c); }
+<span class="lineNum"> 2595 </span> :
+<span class="lineNum"> 2596 </span> : /// Convenience interface to ctype.is(ctype_base::punct, __c).
+<span class="lineNum"> 2597 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 2598 </span> : inline bool
+<span class="lineNum"> 2599 </span> : ispunct(_CharT __c, const locale&amp; __loc)
+<span class="lineNum"> 2600 </span> : { return use_facet&lt;ctype&lt;_CharT&gt; &gt;(__loc).is(ctype_base::punct, __c); }
+<span class="lineNum"> 2601 </span> :
+<span class="lineNum"> 2602 </span> : /// Convenience interface to ctype.is(ctype_base::xdigit, __c).
+<span class="lineNum"> 2603 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 2604 </span> : inline bool
+<span class="lineNum"> 2605 </span> : isxdigit(_CharT __c, const locale&amp; __loc)
+<span class="lineNum"> 2606 </span> : { return use_facet&lt;ctype&lt;_CharT&gt; &gt;(__loc).is(ctype_base::xdigit, __c); }
+<span class="lineNum"> 2607 </span> :
+<span class="lineNum"> 2608 </span> : /// Convenience interface to ctype.is(ctype_base::alnum, __c).
+<span class="lineNum"> 2609 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 2610 </span> : inline bool
+<span class="lineNum"> 2611 </span> : isalnum(_CharT __c, const locale&amp; __loc)
+<span class="lineNum"> 2612 </span> : { return use_facet&lt;ctype&lt;_CharT&gt; &gt;(__loc).is(ctype_base::alnum, __c); }
+<span class="lineNum"> 2613 </span> :
+<span class="lineNum"> 2614 </span> : /// Convenience interface to ctype.is(ctype_base::graph, __c).
+<span class="lineNum"> 2615 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 2616 </span> : inline bool
+<span class="lineNum"> 2617 </span> : isgraph(_CharT __c, const locale&amp; __loc)
+<span class="lineNum"> 2618 </span> : { return use_facet&lt;ctype&lt;_CharT&gt; &gt;(__loc).is(ctype_base::graph, __c); }
+<span class="lineNum"> 2619 </span> :
+<span class="lineNum"> 2620 </span> : /// Convenience interface to ctype.toupper(__c).
+<span class="lineNum"> 2621 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 2622 </span> : inline _CharT
+<span class="lineNum"> 2623 </span> : toupper(_CharT __c, const locale&amp; __loc)
+<span class="lineNum"> 2624 </span> : { return use_facet&lt;ctype&lt;_CharT&gt; &gt;(__loc).toupper(__c); }
+<span class="lineNum"> 2625 </span> :
+<span class="lineNum"> 2626 </span> : /// Convenience interface to ctype.tolower(__c).
+<span class="lineNum"> 2627 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 2628 </span> : inline _CharT
+<span class="lineNum"> 2629 </span> : tolower(_CharT __c, const locale&amp; __loc)
+<span class="lineNum"> 2630 </span> : { return use_facet&lt;ctype&lt;_CharT&gt; &gt;(__loc).tolower(__c); }
+<span class="lineNum"> 2631 </span> :
+<span class="lineNum"> 2632 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 2633 </span> :
+<span class="lineNum"> 2634 </span> : #ifndef _GLIBCXX_EXPORT_TEMPLATE
+<span class="lineNum"> 2635 </span> : # include &lt;bits/locale_facets.tcc&gt;
+<span class="lineNum"> 2636 </span> : #endif
+<span class="lineNum"> 2637 </span> :
+<span class="lineNum"> 2638 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/postypes.h.gcov.html b/rep/usr/include/c++/4.3/bits/postypes.h.gcov.html
new file mode 100644
index 0000000..9775ab9
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/postypes.h.gcov.html
@@ -0,0 +1,280 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/postypes.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - postypes.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">3</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">0.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">0</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Position types -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+<span class="lineNum"> 4 </span> : // 2006, 2007, 2008
+<span class="lineNum"> 5 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 6 </span> : //
+<span class="lineNum"> 7 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 8 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 9 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 10 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 11 </span> : // any later version.
+<span class="lineNum"> 12 </span> :
+<span class="lineNum"> 13 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 14 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 15 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 16 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 17 </span> :
+<span class="lineNum"> 18 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 19 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 20 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 21 </span> : // USA.
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 24 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 25 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 26 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 27 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 28 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 29 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 30 </span> : // the GNU General Public License.
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : /** @file postypes.h
+<span class="lineNum"> 33 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 34 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 35 </span> : */
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : //
+<span class="lineNum"> 38 </span> : // ISO C++ 14882: 27.4.1 - Types
+<span class="lineNum"> 39 </span> : // ISO C++ 14882: 27.4.3 - Template class fpos
+<span class="lineNum"> 40 </span> : //
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span> : #ifndef _GLIBCXX_POSTYPES_H
+<span class="lineNum"> 43 </span> : #define _GLIBCXX_POSTYPES_H 1
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : #pragma GCC system_header
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span> : #include &lt;cwchar&gt; // For mbstate_t
+<span class="lineNum"> 48 </span> :
+<span class="lineNum"> 49 </span> : #ifdef _GLIBCXX_HAVE_STDINT_H
+<span class="lineNum"> 50 </span> : #include &lt;stdint.h&gt; // For int64_t
+<span class="lineNum"> 51 </span> : #endif
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 54 </span> :
+<span class="lineNum"> 55 </span> : // The types streamoff, streampos and wstreampos and the class
+<span class="lineNum"> 56 </span> : // template fpos&lt;&gt; are described in clauses 21.1.2, 21.1.3, 27.1.2,
+<span class="lineNum"> 57 </span> : // 27.2, 27.4.1, 27.4.3 and D.6. Despite all this verbiage, the
+<span class="lineNum"> 58 </span> : // behaviour of these types is mostly implementation defined or
+<span class="lineNum"> 59 </span> : // unspecified. The behaviour in this implementation is as noted
+<span class="lineNum"> 60 </span> : // below.
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : /**
+<span class="lineNum"> 63 </span> : * @brief Type used by fpos, char_traits&lt;char&gt;, and char_traits&lt;wchar_t&gt;.
+<span class="lineNum"> 64 </span> : *
+<span class="lineNum"> 65 </span> : * In clauses 21.1.3.1 and 27.4.1 streamoff is described as an
+<span class="lineNum"> 66 </span> : * implementation defined type.
+<span class="lineNum"> 67 </span> : * Note: In versions of GCC up to and including GCC 3.3, streamoff
+<span class="lineNum"> 68 </span> : * was typedef long.
+<span class="lineNum"> 69 </span> : */
+<span class="lineNum"> 70 </span> : #ifdef _GLIBCXX_HAVE_INT64_T
+<span class="lineNum"> 71 </span> : typedef int64_t streamoff;
+<span class="lineNum"> 72 </span> : #else
+<span class="lineNum"> 73 </span> : typedef long long streamoff;
+<span class="lineNum"> 74 </span> : #endif
+<span class="lineNum"> 75 </span> :
+<span class="lineNum"> 76 </span> : /// Integral type for I/O operation counts and buffer sizes.
+<span class="lineNum"> 77 </span> : typedef ptrdiff_t streamsize; // Signed integral type
+<span class="lineNum"> 78 </span> :
+<span class="lineNum"> 79 </span> : /**
+<span class="lineNum"> 80 </span> : * @brief Class representing stream positions.
+<span class="lineNum"> 81 </span> : *
+<span class="lineNum"> 82 </span> : * The standard places no requirements upon the template parameter StateT.
+<span class="lineNum"> 83 </span> : * In this implementation StateT must be DefaultConstructible,
+<span class="lineNum"> 84 </span> : * CopyConstructible and Assignable. The standard only requires that fpos
+<span class="lineNum"> 85 </span> : * should contain a member of type StateT. In this implementation it also
+<span class="lineNum"> 86 </span> : * contains an offset stored as a signed integer.
+<span class="lineNum"> 87 </span> : *
+<span class="lineNum"> 88 </span> : * @param StateT Type passed to and returned from state().
+<span class="lineNum"> 89 </span> : */
+<span class="lineNum"> 90 </span> : template&lt;typename _StateT&gt;
+<span class="lineNum"> 91 </span> : class fpos
+<span class="lineNum"> 92 </span> : {
+<span class="lineNum"> 93 </span> : private:
+<span class="lineNum"> 94 </span> : streamoff _M_off;
+<span class="lineNum"> 95 </span> : _StateT _M_state;
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span> : public:
+<span class="lineNum"> 98 </span> : // The standard doesn't require that fpos objects can be default
+<span class="lineNum"> 99 </span> : // constructed. This implementation provides a default
+<span class="lineNum"> 100 </span> : // constructor that initializes the offset to 0 and default
+<span class="lineNum"> 101 </span> : // constructs the state.
+<span class="lineNum"> 102 </span> : fpos()
+<span class="lineNum"> 103 </span> : : _M_off(0), _M_state() { }
+<span class="lineNum"> 104 </span> :
+<span class="lineNum"> 105 </span> : // The standard requires that fpos objects can be constructed
+<span class="lineNum"> 106 </span> : // from streamoff objects using the constructor syntax, and
+<span class="lineNum"> 107 </span> : // fails to give any meaningful semantics. In this
+<span class="lineNum"> 108 </span> : // implementation implicit conversion is also allowed, and this
+<span class="lineNum"> 109 </span> : // constructor stores the streamoff as the offset and default
+<span class="lineNum"> 110 </span> : // constructs the state.
+<span class="lineNum"> 111 </span> : /// Construct position from offset.
+<span class="lineNum"> 112 </span><span class="lineNoCov"> 0 : fpos(streamoff __off)</span>
+<span class="lineNum"> 113 </span><span class="lineNoCov"> 0 : : _M_off(__off), _M_state() { }</span>
+<span class="lineNum"> 114 </span> :
+<span class="lineNum"> 115 </span> : /// Convert to streamoff.
+<span class="lineNum"> 116 </span><span class="lineNoCov"> 0 : operator streamoff() const { return _M_off; }</span>
+<span class="lineNum"> 117 </span> :
+<span class="lineNum"> 118 </span> : /// Remember the value of @a st.
+<span class="lineNum"> 119 </span> : void
+<span class="lineNum"> 120 </span> : state(_StateT __st)
+<span class="lineNum"> 121 </span> : { _M_state = __st; }
+<span class="lineNum"> 122 </span> :
+<span class="lineNum"> 123 </span> : /// Return the last set value of @a st.
+<span class="lineNum"> 124 </span> : _StateT
+<span class="lineNum"> 125 </span> : state() const
+<span class="lineNum"> 126 </span> : { return _M_state; }
+<span class="lineNum"> 127 </span> :
+<span class="lineNum"> 128 </span> : // The standard requires that this operator must be defined, but
+<span class="lineNum"> 129 </span> : // gives no semantics. In this implementation it just adds its
+<span class="lineNum"> 130 </span> : // argument to the stored offset and returns *this.
+<span class="lineNum"> 131 </span> : /// Add offset to this position.
+<span class="lineNum"> 132 </span> : fpos&amp;
+<span class="lineNum"> 133 </span> : operator+=(streamoff __off)
+<span class="lineNum"> 134 </span> : {
+<span class="lineNum"> 135 </span> : _M_off += __off;
+<span class="lineNum"> 136 </span> : return *this;
+<span class="lineNum"> 137 </span> : }
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> : // The standard requires that this operator must be defined, but
+<span class="lineNum"> 140 </span> : // gives no semantics. In this implementation it just subtracts
+<span class="lineNum"> 141 </span> : // its argument from the stored offset and returns *this.
+<span class="lineNum"> 142 </span> : /// Subtract offset from this position.
+<span class="lineNum"> 143 </span> : fpos&amp;
+<span class="lineNum"> 144 </span> : operator-=(streamoff __off)
+<span class="lineNum"> 145 </span> : {
+<span class="lineNum"> 146 </span> : _M_off -= __off;
+<span class="lineNum"> 147 </span> : return *this;
+<span class="lineNum"> 148 </span> : }
+<span class="lineNum"> 149 </span> :
+<span class="lineNum"> 150 </span> : // The standard requires that this operator must be defined, but
+<span class="lineNum"> 151 </span> : // defines its semantics only in terms of operator-. In this
+<span class="lineNum"> 152 </span> : // implementation it constructs a copy of *this, adds the
+<span class="lineNum"> 153 </span> : // argument to that copy using operator+= and then returns the
+<span class="lineNum"> 154 </span> : // copy.
+<span class="lineNum"> 155 </span> : /// Add position and offset.
+<span class="lineNum"> 156 </span> : fpos
+<span class="lineNum"> 157 </span> : operator+(streamoff __off) const
+<span class="lineNum"> 158 </span> : {
+<span class="lineNum"> 159 </span> : fpos __pos(*this);
+<span class="lineNum"> 160 </span> : __pos += __off;
+<span class="lineNum"> 161 </span> : return __pos;
+<span class="lineNum"> 162 </span> : }
+<span class="lineNum"> 163 </span> :
+<span class="lineNum"> 164 </span> : // The standard requires that this operator must be defined, but
+<span class="lineNum"> 165 </span> : // defines its semantics only in terms of operator+. In this
+<span class="lineNum"> 166 </span> : // implementation it constructs a copy of *this, subtracts the
+<span class="lineNum"> 167 </span> : // argument from that copy using operator-= and then returns the
+<span class="lineNum"> 168 </span> : // copy.
+<span class="lineNum"> 169 </span> : /// Subtract offset from position.
+<span class="lineNum"> 170 </span> : fpos
+<span class="lineNum"> 171 </span> : operator-(streamoff __off) const
+<span class="lineNum"> 172 </span> : {
+<span class="lineNum"> 173 </span> : fpos __pos(*this);
+<span class="lineNum"> 174 </span> : __pos -= __off;
+<span class="lineNum"> 175 </span> : return __pos;
+<span class="lineNum"> 176 </span> : }
+<span class="lineNum"> 177 </span> :
+<span class="lineNum"> 178 </span> : // The standard requires that this operator must be defined, but
+<span class="lineNum"> 179 </span> : // defines its semantics only in terms of operator+. In this
+<span class="lineNum"> 180 </span> : // implementation it returns the difference between the offset
+<span class="lineNum"> 181 </span> : // stored in *this and in the argument.
+<span class="lineNum"> 182 </span> : /// Subtract position to return offset.
+<span class="lineNum"> 183 </span> : streamoff
+<span class="lineNum"> 184 </span> : operator-(const fpos&amp; __other) const
+<span class="lineNum"> 185 </span> : { return _M_off - __other._M_off; }
+<span class="lineNum"> 186 </span> : };
+<span class="lineNum"> 187 </span> :
+<span class="lineNum"> 188 </span> : // The standard only requires that operator== must be an
+<span class="lineNum"> 189 </span> : // equivalence relation. In this implementation two fpos&lt;StateT&gt;
+<span class="lineNum"> 190 </span> : // objects belong to the same equivalence class if the contained
+<span class="lineNum"> 191 </span> : // offsets compare equal.
+<span class="lineNum"> 192 </span> : /// Test if equivalent to another position.
+<span class="lineNum"> 193 </span> : template&lt;typename _StateT&gt;
+<span class="lineNum"> 194 </span> : inline bool
+<span class="lineNum"> 195 </span> : operator==(const fpos&lt;_StateT&gt;&amp; __lhs, const fpos&lt;_StateT&gt;&amp; __rhs)
+<span class="lineNum"> 196 </span> : { return streamoff(__lhs) == streamoff(__rhs); }
+<span class="lineNum"> 197 </span> :
+<span class="lineNum"> 198 </span> : template&lt;typename _StateT&gt;
+<span class="lineNum"> 199 </span> : inline bool
+<span class="lineNum"> 200 </span> : operator!=(const fpos&lt;_StateT&gt;&amp; __lhs, const fpos&lt;_StateT&gt;&amp; __rhs)
+<span class="lineNum"> 201 </span> : { return streamoff(__lhs) != streamoff(__rhs); }
+<span class="lineNum"> 202 </span> :
+<span class="lineNum"> 203 </span> : // Clauses 21.1.3.1 and 21.1.3.2 describe streampos and wstreampos
+<span class="lineNum"> 204 </span> : // as implementation defined types, but clause 27.2 requires that
+<span class="lineNum"> 205 </span> : // they must both be typedefs for fpos&lt;mbstate_t&gt;
+<span class="lineNum"> 206 </span> : /// File position for char streams.
+<span class="lineNum"> 207 </span> : typedef fpos&lt;mbstate_t&gt; streampos;
+<span class="lineNum"> 208 </span> : /// File position for wchar_t streams.
+<span class="lineNum"> 209 </span> : typedef fpos&lt;mbstate_t&gt; wstreampos;
+<span class="lineNum"> 210 </span> :
+<span class="lineNum"> 211 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 212 </span> :
+<span class="lineNum"> 213 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/stl_algo.h.gcov.html b/rep/usr/include/c++/4.3/bits/stl_algo.h.gcov.html
new file mode 100644
index 0000000..bb0c409
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/stl_algo.h.gcov.html
@@ -0,0 +1,5703 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/stl_algo.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - stl_algo.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">226</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">85.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">192</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Algorithm implementation -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 18 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 19 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 20 </span> : // USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /*
+<span class="lineNum"> 32 </span> : *
+<span class="lineNum"> 33 </span> : * Copyright (c) 1994
+<span class="lineNum"> 34 </span> : * Hewlett-Packard Company
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 37 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 38 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 39 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 40 </span> : * in supporting documentation. Hewlett-Packard Company makes no
+<span class="lineNum"> 41 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 42 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 43 </span> : *
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * Copyright (c) 1996
+<span class="lineNum"> 46 </span> : * Silicon Graphics Computer Systems, Inc.
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 49 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 50 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 51 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 52 </span> : * in supporting documentation. Silicon Graphics makes no
+<span class="lineNum"> 53 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 54 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 55 </span> : */
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /** @file stl_algo.h
+<span class="lineNum"> 58 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 59 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 60 </span> : */
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : #ifndef _STL_ALGO_H
+<span class="lineNum"> 63 </span> : #define _STL_ALGO_H 1
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : #include &lt;cstdlib&gt; // for rand
+<span class="lineNum"> 66 </span> : #include &lt;bits/algorithmfwd.h&gt;
+<span class="lineNum"> 67 </span> : #include &lt;bits/stl_heap.h&gt;
+<span class="lineNum"> 68 </span> : #include &lt;bits/stl_tempbuf.h&gt; // for _Temporary_buffer
+<span class="lineNum"> 69 </span> : #include &lt;debug/debug.h&gt;
+<span class="lineNum"> 70 </span> :
+<span class="lineNum"> 71 </span> : // See concept_check.h for the __glibcxx_*_requires macros.
+<span class="lineNum"> 72 </span> :
+<span class="lineNum"> 73 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span> : /**
+<span class="lineNum"> 76 </span> : * @brief Find the median of three values.
+<span class="lineNum"> 77 </span> : * @param a A value.
+<span class="lineNum"> 78 </span> : * @param b A value.
+<span class="lineNum"> 79 </span> : * @param c A value.
+<span class="lineNum"> 80 </span> : * @return One of @p a, @p b or @p c.
+<span class="lineNum"> 81 </span> : *
+<span class="lineNum"> 82 </span> : * If @c {l,m,n} is some convolution of @p {a,b,c} such that @c l&lt;=m&lt;=n
+<span class="lineNum"> 83 </span> : * then the value returned will be @c m.
+<span class="lineNum"> 84 </span> : * This is an SGI extension.
+<span class="lineNum"> 85 </span> : * @ingroup SGIextensions
+<span class="lineNum"> 86 </span> : */
+<span class="lineNum"> 87 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 88 </span> : inline const _Tp&amp;
+<span class="lineNum"> 89 </span><span class="lineCov"> 133 : __median(const _Tp&amp; __a, const _Tp&amp; __b, const _Tp&amp; __c)</span>
+<span class="lineNum"> 90 </span> : {
+<span class="lineNum"> 91 </span> : // concept requirements
+<span class="lineNum"> 92 </span> : __glibcxx_function_requires(_LessThanComparableConcept&lt;_Tp&gt;)
+<span class="lineNum"> 93 </span><span class="lineCov"> 133 : if (__a &lt; __b)</span>
+<span class="lineNum"> 94 </span><span class="lineCov"> 132 : if (__b &lt; __c)</span>
+<span class="lineNum"> 95 </span><span class="lineCov"> 132 : return __b;</span>
+<span class="lineNum"> 96 </span><span class="lineNoCov"> 0 : else if (__a &lt; __c)</span>
+<span class="lineNum"> 97 </span><span class="lineNoCov"> 0 : return __c;</span>
+<span class="lineNum"> 98 </span> : else
+<span class="lineNum"> 99 </span><span class="lineNoCov"> 0 : return __a;</span>
+<span class="lineNum"> 100 </span><span class="lineCov"> 1 : else if (__a &lt; __c)</span>
+<span class="lineNum"> 101 </span><span class="lineNoCov"> 0 : return __a;</span>
+<span class="lineNum"> 102 </span><span class="lineCov"> 1 : else if (__b &lt; __c)</span>
+<span class="lineNum"> 103 </span><span class="lineNoCov"> 0 : return __c;</span>
+<span class="lineNum"> 104 </span> : else
+<span class="lineNum"> 105 </span><span class="lineCov"> 1 : return __b;</span>
+<span class="lineNum"> 106 </span> : }
+<span class="lineNum"> 107 </span> :
+<span class="lineNum"> 108 </span> : /**
+<span class="lineNum"> 109 </span> : * @brief Find the median of three values using a predicate for comparison.
+<span class="lineNum"> 110 </span> : * @param a A value.
+<span class="lineNum"> 111 </span> : * @param b A value.
+<span class="lineNum"> 112 </span> : * @param c A value.
+<span class="lineNum"> 113 </span> : * @param comp A binary predicate.
+<span class="lineNum"> 114 </span> : * @return One of @p a, @p b or @p c.
+<span class="lineNum"> 115 </span> : *
+<span class="lineNum"> 116 </span> : * If @c {l,m,n} is some convolution of @p {a,b,c} such that @p comp(l,m)
+<span class="lineNum"> 117 </span> : * and @p comp(m,n) are both true then the value returned will be @c m.
+<span class="lineNum"> 118 </span> : * This is an SGI extension.
+<span class="lineNum"> 119 </span> : * @ingroup SGIextensions
+<span class="lineNum"> 120 </span> : */
+<span class="lineNum"> 121 </span> : template&lt;typename _Tp, typename _Compare&gt;
+<span class="lineNum"> 122 </span> : inline const _Tp&amp;
+<span class="lineNum"> 123 </span><span class="lineCov"> 710 : __median(const _Tp&amp; __a, const _Tp&amp; __b, const _Tp&amp; __c, _Compare __comp)</span>
+<span class="lineNum"> 124 </span> : {
+<span class="lineNum"> 125 </span> : // concept requirements
+<span class="lineNum"> 126 </span> : __glibcxx_function_requires(_BinaryFunctionConcept&lt;_Compare, bool,
+<span class="lineNum"> 127 </span> : _Tp, _Tp&gt;)
+<span class="lineNum"> 128 </span><span class="lineCov"> 710 : if (__comp(__a, __b))</span>
+<span class="lineNum"> 129 </span><span class="lineCov"> 433 : if (__comp(__b, __c))</span>
+<span class="lineNum"> 130 </span><span class="lineCov"> 143 : return __b;</span>
+<span class="lineNum"> 131 </span><span class="lineCov"> 290 : else if (__comp(__a, __c))</span>
+<span class="lineNum"> 132 </span><span class="lineCov"> 54 : return __c;</span>
+<span class="lineNum"> 133 </span> : else
+<span class="lineNum"> 134 </span><span class="lineCov"> 236 : return __a;</span>
+<span class="lineNum"> 135 </span><span class="lineCov"> 277 : else if (__comp(__a, __c))</span>
+<span class="lineNum"> 136 </span><span class="lineCov"> 81 : return __a;</span>
+<span class="lineNum"> 137 </span><span class="lineCov"> 196 : else if (__comp(__b, __c))</span>
+<span class="lineNum"> 138 </span><span class="lineCov"> 99 : return __c;</span>
+<span class="lineNum"> 139 </span> : else
+<span class="lineNum"> 140 </span><span class="lineCov"> 97 : return __b;</span>
+<span class="lineNum"> 141 </span> : }
+<span class="lineNum"> 142 </span> :
+<span class="lineNum"> 143 </span> : // for_each
+<span class="lineNum"> 144 </span> :
+<span class="lineNum"> 145 </span> : /// This is an overload used by find() for the Input Iterator case.
+<span class="lineNum"> 146 </span> : template&lt;typename _InputIterator, typename _Tp&gt;
+<span class="lineNum"> 147 </span> : inline _InputIterator
+<span class="lineNum"> 148 </span> : __find(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 149 </span> : const _Tp&amp; __val, input_iterator_tag)
+<span class="lineNum"> 150 </span> : {
+<span class="lineNum"> 151 </span> : while (__first != __last &amp;&amp; !(*__first == __val))
+<span class="lineNum"> 152 </span> : ++__first;
+<span class="lineNum"> 153 </span> : return __first;
+<span class="lineNum"> 154 </span> : }
+<span class="lineNum"> 155 </span> :
+<span class="lineNum"> 156 </span> : /// This is an overload used by find_if() for the Input Iterator case.
+<span class="lineNum"> 157 </span> : template&lt;typename _InputIterator, typename _Predicate&gt;
+<span class="lineNum"> 158 </span> : inline _InputIterator
+<span class="lineNum"> 159 </span> : __find_if(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 160 </span><span class="lineCov"> 3 : _Predicate __pred, input_iterator_tag)</span>
+<span class="lineNum"> 161 </span> : {
+<span class="lineNum"> 162 </span><span class="lineCov"> 7 : while (__first != __last &amp;&amp; !bool(__pred(*__first)))</span>
+<span class="lineNum"> 163 </span><span class="lineCov"> 1 : ++__first;</span>
+<span class="lineNum"> 164 </span><span class="lineCov"> 3 : return __first;</span>
+<span class="lineNum"> 165 </span> : }
+<span class="lineNum"> 166 </span> :
+<span class="lineNum"> 167 </span> : /// This is an overload used by find() for the RAI case.
+<span class="lineNum"> 168 </span> : template&lt;typename _RandomAccessIterator, typename _Tp&gt;
+<span class="lineNum"> 169 </span> : _RandomAccessIterator
+<span class="lineNum"> 170 </span> : __find(_RandomAccessIterator __first, _RandomAccessIterator __last,
+<span class="lineNum"> 171 </span><span class="lineCov"> 3362 : const _Tp&amp; __val, random_access_iterator_tag)</span>
+<span class="lineNum"> 172 </span> : {
+<span class="lineNum"> 173 </span> : typename iterator_traits&lt;_RandomAccessIterator&gt;::difference_type
+<span class="lineNum"> 174 </span><span class="lineCov"> 3362 : __trip_count = (__last - __first) &gt;&gt; 2;</span>
+<span class="lineNum"> 175 </span> :
+<span class="lineNum"> 176 </span><span class="lineCov"> 5967 : for (; __trip_count &gt; 0; --__trip_count)</span>
+<span class="lineNum"> 177 </span> : {
+<span class="lineNum"> 178 </span><span class="lineCov"> 3337 : if (*__first == __val)</span>
+<span class="lineNum"> 179 </span><span class="lineCov"> 42 : return __first;</span>
+<span class="lineNum"> 180 </span><span class="lineCov"> 3295 : ++__first;</span>
+<span class="lineNum"> 181 </span> :
+<span class="lineNum"> 182 </span><span class="lineCov"> 3295 : if (*__first == __val)</span>
+<span class="lineNum"> 183 </span><span class="lineCov"> 16 : return __first;</span>
+<span class="lineNum"> 184 </span><span class="lineCov"> 3279 : ++__first;</span>
+<span class="lineNum"> 185 </span> :
+<span class="lineNum"> 186 </span><span class="lineCov"> 3279 : if (*__first == __val)</span>
+<span class="lineNum"> 187 </span><span class="lineCov"> 42 : return __first;</span>
+<span class="lineNum"> 188 </span><span class="lineCov"> 3237 : ++__first;</span>
+<span class="lineNum"> 189 </span> :
+<span class="lineNum"> 190 </span><span class="lineCov"> 3237 : if (*__first == __val)</span>
+<span class="lineNum"> 191 </span><span class="lineCov"> 632 : return __first;</span>
+<span class="lineNum"> 192 </span><span class="lineCov"> 2605 : ++__first;</span>
+<span class="lineNum"> 193 </span> : }
+<span class="lineNum"> 194 </span> :
+<span class="lineNum"> 195 </span><span class="lineCov"> 2630 : switch (__last - __first)</span>
+<span class="lineNum"> 196 </span> : {
+<span class="lineNum"> 197 </span> : case 3:
+<span class="lineNum"> 198 </span><span class="lineCov"> 107 : if (*__first == __val)</span>
+<span class="lineNum"> 199 </span><span class="lineNoCov"> 0 : return __first;</span>
+<span class="lineNum"> 200 </span><span class="lineCov"> 107 : ++__first;</span>
+<span class="lineNum"> 201 </span> : case 2:
+<span class="lineNum"> 202 </span><span class="lineCov"> 243 : if (*__first == __val)</span>
+<span class="lineNum"> 203 </span><span class="lineNoCov"> 0 : return __first;</span>
+<span class="lineNum"> 204 </span><span class="lineCov"> 243 : ++__first;</span>
+<span class="lineNum"> 205 </span> : case 1:
+<span class="lineNum"> 206 </span><span class="lineCov"> 370 : if (*__first == __val)</span>
+<span class="lineNum"> 207 </span><span class="lineCov"> 370 : return __first;</span>
+<span class="lineNum"> 208 </span><span class="lineNoCov"> 0 : ++__first;</span>
+<span class="lineNum"> 209 </span> : case 0:
+<span class="lineNum"> 210 </span> : default:
+<span class="lineNum"> 211 </span><span class="lineCov"> 2260 : return __last;</span>
+<span class="lineNum"> 212 </span> : }
+<span class="lineNum"> 213 </span> : }
+<span class="lineNum"> 214 </span> :
+<span class="lineNum"> 215 </span> : /// This is an overload used by find_if() for the RAI case.
+<span class="lineNum"> 216 </span> : template&lt;typename _RandomAccessIterator, typename _Predicate&gt;
+<span class="lineNum"> 217 </span> : _RandomAccessIterator
+<span class="lineNum"> 218 </span> : __find_if(_RandomAccessIterator __first, _RandomAccessIterator __last,
+<span class="lineNum"> 219 </span> : _Predicate __pred, random_access_iterator_tag)
+<span class="lineNum"> 220 </span> : {
+<span class="lineNum"> 221 </span> : typename iterator_traits&lt;_RandomAccessIterator&gt;::difference_type
+<span class="lineNum"> 222 </span> : __trip_count = (__last - __first) &gt;&gt; 2;
+<span class="lineNum"> 223 </span> :
+<span class="lineNum"> 224 </span> : for (; __trip_count &gt; 0; --__trip_count)
+<span class="lineNum"> 225 </span> : {
+<span class="lineNum"> 226 </span> : if (__pred(*__first))
+<span class="lineNum"> 227 </span> : return __first;
+<span class="lineNum"> 228 </span> : ++__first;
+<span class="lineNum"> 229 </span> :
+<span class="lineNum"> 230 </span> : if (__pred(*__first))
+<span class="lineNum"> 231 </span> : return __first;
+<span class="lineNum"> 232 </span> : ++__first;
+<span class="lineNum"> 233 </span> :
+<span class="lineNum"> 234 </span> : if (__pred(*__first))
+<span class="lineNum"> 235 </span> : return __first;
+<span class="lineNum"> 236 </span> : ++__first;
+<span class="lineNum"> 237 </span> :
+<span class="lineNum"> 238 </span> : if (__pred(*__first))
+<span class="lineNum"> 239 </span> : return __first;
+<span class="lineNum"> 240 </span> : ++__first;
+<span class="lineNum"> 241 </span> : }
+<span class="lineNum"> 242 </span> :
+<span class="lineNum"> 243 </span> : switch (__last - __first)
+<span class="lineNum"> 244 </span> : {
+<span class="lineNum"> 245 </span> : case 3:
+<span class="lineNum"> 246 </span> : if (__pred(*__first))
+<span class="lineNum"> 247 </span> : return __first;
+<span class="lineNum"> 248 </span> : ++__first;
+<span class="lineNum"> 249 </span> : case 2:
+<span class="lineNum"> 250 </span> : if (__pred(*__first))
+<span class="lineNum"> 251 </span> : return __first;
+<span class="lineNum"> 252 </span> : ++__first;
+<span class="lineNum"> 253 </span> : case 1:
+<span class="lineNum"> 254 </span> : if (__pred(*__first))
+<span class="lineNum"> 255 </span> : return __first;
+<span class="lineNum"> 256 </span> : ++__first;
+<span class="lineNum"> 257 </span> : case 0:
+<span class="lineNum"> 258 </span> : default:
+<span class="lineNum"> 259 </span> : return __last;
+<span class="lineNum"> 260 </span> : }
+<span class="lineNum"> 261 </span> : }
+<span class="lineNum"> 262 </span> :
+<span class="lineNum"> 263 </span> : // set_difference
+<span class="lineNum"> 264 </span> : // set_intersection
+<span class="lineNum"> 265 </span> : // set_symmetric_difference
+<span class="lineNum"> 266 </span> : // set_union
+<span class="lineNum"> 267 </span> : // for_each
+<span class="lineNum"> 268 </span> : // find
+<span class="lineNum"> 269 </span> : // find_if
+<span class="lineNum"> 270 </span> : // find_first_of
+<span class="lineNum"> 271 </span> : // adjacent_find
+<span class="lineNum"> 272 </span> : // count
+<span class="lineNum"> 273 </span> : // count_if
+<span class="lineNum"> 274 </span> : // search
+<span class="lineNum"> 275 </span> :
+<span class="lineNum"> 276 </span> : /**
+<span class="lineNum"> 277 </span> : * This is an uglified
+<span class="lineNum"> 278 </span> : * search_n(_ForwardIterator, _ForwardIterator, _Integer, const _Tp&amp;)
+<span class="lineNum"> 279 </span> : * overloaded for forward iterators.
+<span class="lineNum"> 280 </span> : */
+<span class="lineNum"> 281 </span> : template&lt;typename _ForwardIterator, typename _Integer, typename _Tp&gt;
+<span class="lineNum"> 282 </span> : _ForwardIterator
+<span class="lineNum"> 283 </span> : __search_n(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 284 </span> : _Integer __count, const _Tp&amp; __val,
+<span class="lineNum"> 285 </span> : std::forward_iterator_tag)
+<span class="lineNum"> 286 </span> : {
+<span class="lineNum"> 287 </span> : __first = _GLIBCXX_STD_P::find(__first, __last, __val);
+<span class="lineNum"> 288 </span> : while (__first != __last)
+<span class="lineNum"> 289 </span> : {
+<span class="lineNum"> 290 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::difference_type
+<span class="lineNum"> 291 </span> : __n = __count;
+<span class="lineNum"> 292 </span> : _ForwardIterator __i = __first;
+<span class="lineNum"> 293 </span> : ++__i;
+<span class="lineNum"> 294 </span> : while (__i != __last &amp;&amp; __n != 1 &amp;&amp; *__i == __val)
+<span class="lineNum"> 295 </span> : {
+<span class="lineNum"> 296 </span> : ++__i;
+<span class="lineNum"> 297 </span> : --__n;
+<span class="lineNum"> 298 </span> : }
+<span class="lineNum"> 299 </span> : if (__n == 1)
+<span class="lineNum"> 300 </span> : return __first;
+<span class="lineNum"> 301 </span> : if (__i == __last)
+<span class="lineNum"> 302 </span> : return __last;
+<span class="lineNum"> 303 </span> : __first = _GLIBCXX_STD_P::find(++__i, __last, __val);
+<span class="lineNum"> 304 </span> : }
+<span class="lineNum"> 305 </span> : return __last;
+<span class="lineNum"> 306 </span> : }
+<span class="lineNum"> 307 </span> :
+<span class="lineNum"> 308 </span> : /**
+<span class="lineNum"> 309 </span> : * This is an uglified
+<span class="lineNum"> 310 </span> : * search_n(_ForwardIterator, _ForwardIterator, _Integer, const _Tp&amp;)
+<span class="lineNum"> 311 </span> : * overloaded for random access iterators.
+<span class="lineNum"> 312 </span> : */
+<span class="lineNum"> 313 </span> : template&lt;typename _RandomAccessIter, typename _Integer, typename _Tp&gt;
+<span class="lineNum"> 314 </span> : _RandomAccessIter
+<span class="lineNum"> 315 </span> : __search_n(_RandomAccessIter __first, _RandomAccessIter __last,
+<span class="lineNum"> 316 </span> : _Integer __count, const _Tp&amp; __val,
+<span class="lineNum"> 317 </span> : std::random_access_iterator_tag)
+<span class="lineNum"> 318 </span> : {
+<span class="lineNum"> 319 </span> :
+<span class="lineNum"> 320 </span> : typedef typename std::iterator_traits&lt;_RandomAccessIter&gt;::difference_type
+<span class="lineNum"> 321 </span> : _DistanceType;
+<span class="lineNum"> 322 </span> :
+<span class="lineNum"> 323 </span> : _DistanceType __tailSize = __last - __first;
+<span class="lineNum"> 324 </span> : const _DistanceType __pattSize = __count;
+<span class="lineNum"> 325 </span> :
+<span class="lineNum"> 326 </span> : if (__tailSize &lt; __pattSize)
+<span class="lineNum"> 327 </span> : return __last;
+<span class="lineNum"> 328 </span> :
+<span class="lineNum"> 329 </span> : const _DistanceType __skipOffset = __pattSize - 1;
+<span class="lineNum"> 330 </span> : _RandomAccessIter __lookAhead = __first + __skipOffset;
+<span class="lineNum"> 331 </span> : __tailSize -= __pattSize;
+<span class="lineNum"> 332 </span> :
+<span class="lineNum"> 333 </span> : while (1) // the main loop...
+<span class="lineNum"> 334 </span> : {
+<span class="lineNum"> 335 </span> : // __lookAhead here is always pointing to the last element of next
+<span class="lineNum"> 336 </span> : // possible match.
+<span class="lineNum"> 337 </span> : while (!(*__lookAhead == __val)) // the skip loop...
+<span class="lineNum"> 338 </span> : {
+<span class="lineNum"> 339 </span> : if (__tailSize &lt; __pattSize)
+<span class="lineNum"> 340 </span> : return __last; // Failure
+<span class="lineNum"> 341 </span> : __lookAhead += __pattSize;
+<span class="lineNum"> 342 </span> : __tailSize -= __pattSize;
+<span class="lineNum"> 343 </span> : }
+<span class="lineNum"> 344 </span> : _DistanceType __remainder = __skipOffset;
+<span class="lineNum"> 345 </span> : for (_RandomAccessIter __backTrack = __lookAhead - 1;
+<span class="lineNum"> 346 </span> : *__backTrack == __val; --__backTrack)
+<span class="lineNum"> 347 </span> : {
+<span class="lineNum"> 348 </span> : if (--__remainder == 0)
+<span class="lineNum"> 349 </span> : return (__lookAhead - __skipOffset); // Success
+<span class="lineNum"> 350 </span> : }
+<span class="lineNum"> 351 </span> : if (__remainder &gt; __tailSize)
+<span class="lineNum"> 352 </span> : return __last; // Failure
+<span class="lineNum"> 353 </span> : __lookAhead += __remainder;
+<span class="lineNum"> 354 </span> : __tailSize -= __remainder;
+<span class="lineNum"> 355 </span> : }
+<span class="lineNum"> 356 </span> : }
+<span class="lineNum"> 357 </span> :
+<span class="lineNum"> 358 </span> : // search_n
+<span class="lineNum"> 359 </span> :
+<span class="lineNum"> 360 </span> : /**
+<span class="lineNum"> 361 </span> : * This is an uglified
+<span class="lineNum"> 362 </span> : * search_n(_ForwardIterator, _ForwardIterator, _Integer, const _Tp&amp;,
+<span class="lineNum"> 363 </span> : * _BinaryPredicate)
+<span class="lineNum"> 364 </span> : * overloaded for forward iterators.
+<span class="lineNum"> 365 </span> : */
+<span class="lineNum"> 366 </span> : template&lt;typename _ForwardIterator, typename _Integer, typename _Tp,
+<span class="lineNum"> 367 </span> : typename _BinaryPredicate&gt;
+<span class="lineNum"> 368 </span> : _ForwardIterator
+<span class="lineNum"> 369 </span> : __search_n(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 370 </span> : _Integer __count, const _Tp&amp; __val,
+<span class="lineNum"> 371 </span> : _BinaryPredicate __binary_pred, std::forward_iterator_tag)
+<span class="lineNum"> 372 </span> : {
+<span class="lineNum"> 373 </span> : while (__first != __last &amp;&amp; !bool(__binary_pred(*__first, __val)))
+<span class="lineNum"> 374 </span> : ++__first;
+<span class="lineNum"> 375 </span> :
+<span class="lineNum"> 376 </span> : while (__first != __last)
+<span class="lineNum"> 377 </span> : {
+<span class="lineNum"> 378 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::difference_type
+<span class="lineNum"> 379 </span> : __n = __count;
+<span class="lineNum"> 380 </span> : _ForwardIterator __i = __first;
+<span class="lineNum"> 381 </span> : ++__i;
+<span class="lineNum"> 382 </span> : while (__i != __last &amp;&amp; __n != 1 &amp;&amp; bool(__binary_pred(*__i, __val)))
+<span class="lineNum"> 383 </span> : {
+<span class="lineNum"> 384 </span> : ++__i;
+<span class="lineNum"> 385 </span> : --__n;
+<span class="lineNum"> 386 </span> : }
+<span class="lineNum"> 387 </span> : if (__n == 1)
+<span class="lineNum"> 388 </span> : return __first;
+<span class="lineNum"> 389 </span> : if (__i == __last)
+<span class="lineNum"> 390 </span> : return __last;
+<span class="lineNum"> 391 </span> : __first = ++__i;
+<span class="lineNum"> 392 </span> : while (__first != __last
+<span class="lineNum"> 393 </span> : &amp;&amp; !bool(__binary_pred(*__first, __val)))
+<span class="lineNum"> 394 </span> : ++__first;
+<span class="lineNum"> 395 </span> : }
+<span class="lineNum"> 396 </span> : return __last;
+<span class="lineNum"> 397 </span> : }
+<span class="lineNum"> 398 </span> :
+<span class="lineNum"> 399 </span> : /**
+<span class="lineNum"> 400 </span> : * This is an uglified
+<span class="lineNum"> 401 </span> : * search_n(_ForwardIterator, _ForwardIterator, _Integer, const _Tp&amp;,
+<span class="lineNum"> 402 </span> : * _BinaryPredicate)
+<span class="lineNum"> 403 </span> : * overloaded for random access iterators.
+<span class="lineNum"> 404 </span> : */
+<span class="lineNum"> 405 </span> : template&lt;typename _RandomAccessIter, typename _Integer, typename _Tp,
+<span class="lineNum"> 406 </span> : typename _BinaryPredicate&gt;
+<span class="lineNum"> 407 </span> : _RandomAccessIter
+<span class="lineNum"> 408 </span> : __search_n(_RandomAccessIter __first, _RandomAccessIter __last,
+<span class="lineNum"> 409 </span> : _Integer __count, const _Tp&amp; __val,
+<span class="lineNum"> 410 </span> : _BinaryPredicate __binary_pred, std::random_access_iterator_tag)
+<span class="lineNum"> 411 </span> : {
+<span class="lineNum"> 412 </span> :
+<span class="lineNum"> 413 </span> : typedef typename std::iterator_traits&lt;_RandomAccessIter&gt;::difference_type
+<span class="lineNum"> 414 </span> : _DistanceType;
+<span class="lineNum"> 415 </span> :
+<span class="lineNum"> 416 </span> : _DistanceType __tailSize = __last - __first;
+<span class="lineNum"> 417 </span> : const _DistanceType __pattSize = __count;
+<span class="lineNum"> 418 </span> :
+<span class="lineNum"> 419 </span> : if (__tailSize &lt; __pattSize)
+<span class="lineNum"> 420 </span> : return __last;
+<span class="lineNum"> 421 </span> :
+<span class="lineNum"> 422 </span> : const _DistanceType __skipOffset = __pattSize - 1;
+<span class="lineNum"> 423 </span> : _RandomAccessIter __lookAhead = __first + __skipOffset;
+<span class="lineNum"> 424 </span> : __tailSize -= __pattSize;
+<span class="lineNum"> 425 </span> :
+<span class="lineNum"> 426 </span> : while (1) // the main loop...
+<span class="lineNum"> 427 </span> : {
+<span class="lineNum"> 428 </span> : // __lookAhead here is always pointing to the last element of next
+<span class="lineNum"> 429 </span> : // possible match.
+<span class="lineNum"> 430 </span> : while (!bool(__binary_pred(*__lookAhead, __val))) // the skip loop...
+<span class="lineNum"> 431 </span> : {
+<span class="lineNum"> 432 </span> : if (__tailSize &lt; __pattSize)
+<span class="lineNum"> 433 </span> : return __last; // Failure
+<span class="lineNum"> 434 </span> : __lookAhead += __pattSize;
+<span class="lineNum"> 435 </span> : __tailSize -= __pattSize;
+<span class="lineNum"> 436 </span> : }
+<span class="lineNum"> 437 </span> : _DistanceType __remainder = __skipOffset;
+<span class="lineNum"> 438 </span> : for (_RandomAccessIter __backTrack = __lookAhead - 1;
+<span class="lineNum"> 439 </span> : __binary_pred(*__backTrack, __val); --__backTrack)
+<span class="lineNum"> 440 </span> : {
+<span class="lineNum"> 441 </span> : if (--__remainder == 0)
+<span class="lineNum"> 442 </span> : return (__lookAhead - __skipOffset); // Success
+<span class="lineNum"> 443 </span> : }
+<span class="lineNum"> 444 </span> : if (__remainder &gt; __tailSize)
+<span class="lineNum"> 445 </span> : return __last; // Failure
+<span class="lineNum"> 446 </span> : __lookAhead += __remainder;
+<span class="lineNum"> 447 </span> : __tailSize -= __remainder;
+<span class="lineNum"> 448 </span> : }
+<span class="lineNum"> 449 </span> : }
+<span class="lineNum"> 450 </span> :
+<span class="lineNum"> 451 </span> : // find_end for forward iterators.
+<span class="lineNum"> 452 </span> : template&lt;typename _ForwardIterator1, typename _ForwardIterator2&gt;
+<span class="lineNum"> 453 </span> : _ForwardIterator1
+<span class="lineNum"> 454 </span> : __find_end(_ForwardIterator1 __first1, _ForwardIterator1 __last1,
+<span class="lineNum"> 455 </span> : _ForwardIterator2 __first2, _ForwardIterator2 __last2,
+<span class="lineNum"> 456 </span> : forward_iterator_tag, forward_iterator_tag)
+<span class="lineNum"> 457 </span> : {
+<span class="lineNum"> 458 </span> : if (__first2 == __last2)
+<span class="lineNum"> 459 </span> : return __last1;
+<span class="lineNum"> 460 </span> : else
+<span class="lineNum"> 461 </span> : {
+<span class="lineNum"> 462 </span> : _ForwardIterator1 __result = __last1;
+<span class="lineNum"> 463 </span> : while (1)
+<span class="lineNum"> 464 </span> : {
+<span class="lineNum"> 465 </span> : _ForwardIterator1 __new_result
+<span class="lineNum"> 466 </span> : = _GLIBCXX_STD_P::search(__first1, __last1, __first2, __last2);
+<span class="lineNum"> 467 </span> : if (__new_result == __last1)
+<span class="lineNum"> 468 </span> : return __result;
+<span class="lineNum"> 469 </span> : else
+<span class="lineNum"> 470 </span> : {
+<span class="lineNum"> 471 </span> : __result = __new_result;
+<span class="lineNum"> 472 </span> : __first1 = __new_result;
+<span class="lineNum"> 473 </span> : ++__first1;
+<span class="lineNum"> 474 </span> : }
+<span class="lineNum"> 475 </span> : }
+<span class="lineNum"> 476 </span> : }
+<span class="lineNum"> 477 </span> : }
+<span class="lineNum"> 478 </span> :
+<span class="lineNum"> 479 </span> : template&lt;typename _ForwardIterator1, typename _ForwardIterator2,
+<span class="lineNum"> 480 </span> : typename _BinaryPredicate&gt;
+<span class="lineNum"> 481 </span> : _ForwardIterator1
+<span class="lineNum"> 482 </span> : __find_end(_ForwardIterator1 __first1, _ForwardIterator1 __last1,
+<span class="lineNum"> 483 </span> : _ForwardIterator2 __first2, _ForwardIterator2 __last2,
+<span class="lineNum"> 484 </span> : forward_iterator_tag, forward_iterator_tag,
+<span class="lineNum"> 485 </span> : _BinaryPredicate __comp)
+<span class="lineNum"> 486 </span> : {
+<span class="lineNum"> 487 </span> : if (__first2 == __last2)
+<span class="lineNum"> 488 </span> : return __last1;
+<span class="lineNum"> 489 </span> : else
+<span class="lineNum"> 490 </span> : {
+<span class="lineNum"> 491 </span> : _ForwardIterator1 __result = __last1;
+<span class="lineNum"> 492 </span> : while (1)
+<span class="lineNum"> 493 </span> : {
+<span class="lineNum"> 494 </span> : _ForwardIterator1 __new_result
+<span class="lineNum"> 495 </span> : = _GLIBCXX_STD_P::search(__first1, __last1, __first2,
+<span class="lineNum"> 496 </span> : __last2, __comp);
+<span class="lineNum"> 497 </span> : if (__new_result == __last1)
+<span class="lineNum"> 498 </span> : return __result;
+<span class="lineNum"> 499 </span> : else
+<span class="lineNum"> 500 </span> : {
+<span class="lineNum"> 501 </span> : __result = __new_result;
+<span class="lineNum"> 502 </span> : __first1 = __new_result;
+<span class="lineNum"> 503 </span> : ++__first1;
+<span class="lineNum"> 504 </span> : }
+<span class="lineNum"> 505 </span> : }
+<span class="lineNum"> 506 </span> : }
+<span class="lineNum"> 507 </span> : }
+<span class="lineNum"> 508 </span> :
+<span class="lineNum"> 509 </span> : // find_end for bidirectional iterators (much faster).
+<span class="lineNum"> 510 </span> : template&lt;typename _BidirectionalIterator1, typename _BidirectionalIterator2&gt;
+<span class="lineNum"> 511 </span> : _BidirectionalIterator1
+<span class="lineNum"> 512 </span> : __find_end(_BidirectionalIterator1 __first1,
+<span class="lineNum"> 513 </span> : _BidirectionalIterator1 __last1,
+<span class="lineNum"> 514 </span> : _BidirectionalIterator2 __first2,
+<span class="lineNum"> 515 </span> : _BidirectionalIterator2 __last2,
+<span class="lineNum"> 516 </span> : bidirectional_iterator_tag, bidirectional_iterator_tag)
+<span class="lineNum"> 517 </span> : {
+<span class="lineNum"> 518 </span> : // concept requirements
+<span class="lineNum"> 519 </span> : __glibcxx_function_requires(_BidirectionalIteratorConcept&lt;
+<span class="lineNum"> 520 </span> : _BidirectionalIterator1&gt;)
+<span class="lineNum"> 521 </span> : __glibcxx_function_requires(_BidirectionalIteratorConcept&lt;
+<span class="lineNum"> 522 </span> : _BidirectionalIterator2&gt;)
+<span class="lineNum"> 523 </span> :
+<span class="lineNum"> 524 </span> : typedef reverse_iterator&lt;_BidirectionalIterator1&gt; _RevIterator1;
+<span class="lineNum"> 525 </span> : typedef reverse_iterator&lt;_BidirectionalIterator2&gt; _RevIterator2;
+<span class="lineNum"> 526 </span> :
+<span class="lineNum"> 527 </span> : _RevIterator1 __rlast1(__first1);
+<span class="lineNum"> 528 </span> : _RevIterator2 __rlast2(__first2);
+<span class="lineNum"> 529 </span> : _RevIterator1 __rresult = _GLIBCXX_STD_P::search(_RevIterator1(__last1),
+<span class="lineNum"> 530 </span> : __rlast1,
+<span class="lineNum"> 531 </span> : _RevIterator2(__last2),
+<span class="lineNum"> 532 </span> : __rlast2);
+<span class="lineNum"> 533 </span> :
+<span class="lineNum"> 534 </span> : if (__rresult == __rlast1)
+<span class="lineNum"> 535 </span> : return __last1;
+<span class="lineNum"> 536 </span> : else
+<span class="lineNum"> 537 </span> : {
+<span class="lineNum"> 538 </span> : _BidirectionalIterator1 __result = __rresult.base();
+<span class="lineNum"> 539 </span> : std::advance(__result, -std::distance(__first2, __last2));
+<span class="lineNum"> 540 </span> : return __result;
+<span class="lineNum"> 541 </span> : }
+<span class="lineNum"> 542 </span> : }
+<span class="lineNum"> 543 </span> :
+<span class="lineNum"> 544 </span> : template&lt;typename _BidirectionalIterator1, typename _BidirectionalIterator2,
+<span class="lineNum"> 545 </span> : typename _BinaryPredicate&gt;
+<span class="lineNum"> 546 </span> : _BidirectionalIterator1
+<span class="lineNum"> 547 </span> : __find_end(_BidirectionalIterator1 __first1,
+<span class="lineNum"> 548 </span> : _BidirectionalIterator1 __last1,
+<span class="lineNum"> 549 </span> : _BidirectionalIterator2 __first2,
+<span class="lineNum"> 550 </span> : _BidirectionalIterator2 __last2,
+<span class="lineNum"> 551 </span> : bidirectional_iterator_tag, bidirectional_iterator_tag,
+<span class="lineNum"> 552 </span> : _BinaryPredicate __comp)
+<span class="lineNum"> 553 </span> : {
+<span class="lineNum"> 554 </span> : // concept requirements
+<span class="lineNum"> 555 </span> : __glibcxx_function_requires(_BidirectionalIteratorConcept&lt;
+<span class="lineNum"> 556 </span> : _BidirectionalIterator1&gt;)
+<span class="lineNum"> 557 </span> : __glibcxx_function_requires(_BidirectionalIteratorConcept&lt;
+<span class="lineNum"> 558 </span> : _BidirectionalIterator2&gt;)
+<span class="lineNum"> 559 </span> :
+<span class="lineNum"> 560 </span> : typedef reverse_iterator&lt;_BidirectionalIterator1&gt; _RevIterator1;
+<span class="lineNum"> 561 </span> : typedef reverse_iterator&lt;_BidirectionalIterator2&gt; _RevIterator2;
+<span class="lineNum"> 562 </span> :
+<span class="lineNum"> 563 </span> : _RevIterator1 __rlast1(__first1);
+<span class="lineNum"> 564 </span> : _RevIterator2 __rlast2(__first2);
+<span class="lineNum"> 565 </span> : _RevIterator1 __rresult = std::search(_RevIterator1(__last1), __rlast1,
+<span class="lineNum"> 566 </span> : _RevIterator2(__last2), __rlast2,
+<span class="lineNum"> 567 </span> : __comp);
+<span class="lineNum"> 568 </span> :
+<span class="lineNum"> 569 </span> : if (__rresult == __rlast1)
+<span class="lineNum"> 570 </span> : return __last1;
+<span class="lineNum"> 571 </span> : else
+<span class="lineNum"> 572 </span> : {
+<span class="lineNum"> 573 </span> : _BidirectionalIterator1 __result = __rresult.base();
+<span class="lineNum"> 574 </span> : std::advance(__result, -std::distance(__first2, __last2));
+<span class="lineNum"> 575 </span> : return __result;
+<span class="lineNum"> 576 </span> : }
+<span class="lineNum"> 577 </span> : }
+<span class="lineNum"> 578 </span> :
+<span class="lineNum"> 579 </span> : /**
+<span class="lineNum"> 580 </span> : * @brief Find last matching subsequence in a sequence.
+<span class="lineNum"> 581 </span> : * @param first1 Start of range to search.
+<span class="lineNum"> 582 </span> : * @param last1 End of range to search.
+<span class="lineNum"> 583 </span> : * @param first2 Start of sequence to match.
+<span class="lineNum"> 584 </span> : * @param last2 End of sequence to match.
+<span class="lineNum"> 585 </span> : * @return The last iterator @c i in the range
+<span class="lineNum"> 586 </span> : * @p [first1,last1-(last2-first2)) such that @c *(i+N) == @p *(first2+N)
+<span class="lineNum"> 587 </span> : * for each @c N in the range @p [0,last2-first2), or @p last1 if no
+<span class="lineNum"> 588 </span> : * such iterator exists.
+<span class="lineNum"> 589 </span> : *
+<span class="lineNum"> 590 </span> : * Searches the range @p [first1,last1) for a sub-sequence that compares
+<span class="lineNum"> 591 </span> : * equal value-by-value with the sequence given by @p [first2,last2) and
+<span class="lineNum"> 592 </span> : * returns an iterator to the first element of the sub-sequence, or
+<span class="lineNum"> 593 </span> : * @p last1 if the sub-sequence is not found. The sub-sequence will be the
+<span class="lineNum"> 594 </span> : * last such subsequence contained in [first,last1).
+<span class="lineNum"> 595 </span> : *
+<span class="lineNum"> 596 </span> : * Because the sub-sequence must lie completely within the range
+<span class="lineNum"> 597 </span> : * @p [first1,last1) it must start at a position less than
+<span class="lineNum"> 598 </span> : * @p last1-(last2-first2) where @p last2-first2 is the length of the
+<span class="lineNum"> 599 </span> : * sub-sequence.
+<span class="lineNum"> 600 </span> : * This means that the returned iterator @c i will be in the range
+<span class="lineNum"> 601 </span> : * @p [first1,last1-(last2-first2))
+<span class="lineNum"> 602 </span> : */
+<span class="lineNum"> 603 </span> : template&lt;typename _ForwardIterator1, typename _ForwardIterator2&gt;
+<span class="lineNum"> 604 </span> : inline _ForwardIterator1
+<span class="lineNum"> 605 </span> : find_end(_ForwardIterator1 __first1, _ForwardIterator1 __last1,
+<span class="lineNum"> 606 </span> : _ForwardIterator2 __first2, _ForwardIterator2 __last2)
+<span class="lineNum"> 607 </span> : {
+<span class="lineNum"> 608 </span> : // concept requirements
+<span class="lineNum"> 609 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator1&gt;)
+<span class="lineNum"> 610 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator2&gt;)
+<span class="lineNum"> 611 </span> : __glibcxx_function_requires(_EqualOpConcept&lt;
+<span class="lineNum"> 612 </span> : typename iterator_traits&lt;_ForwardIterator1&gt;::value_type,
+<span class="lineNum"> 613 </span> : typename iterator_traits&lt;_ForwardIterator2&gt;::value_type&gt;)
+<span class="lineNum"> 614 </span> : __glibcxx_requires_valid_range(__first1, __last1);
+<span class="lineNum"> 615 </span> : __glibcxx_requires_valid_range(__first2, __last2);
+<span class="lineNum"> 616 </span> :
+<span class="lineNum"> 617 </span> : return std::__find_end(__first1, __last1, __first2, __last2,
+<span class="lineNum"> 618 </span> : std::__iterator_category(__first1),
+<span class="lineNum"> 619 </span> : std::__iterator_category(__first2));
+<span class="lineNum"> 620 </span> : }
+<span class="lineNum"> 621 </span> :
+<span class="lineNum"> 622 </span> : /**
+<span class="lineNum"> 623 </span> : * @brief Find last matching subsequence in a sequence using a predicate.
+<span class="lineNum"> 624 </span> : * @param first1 Start of range to search.
+<span class="lineNum"> 625 </span> : * @param last1 End of range to search.
+<span class="lineNum"> 626 </span> : * @param first2 Start of sequence to match.
+<span class="lineNum"> 627 </span> : * @param last2 End of sequence to match.
+<span class="lineNum"> 628 </span> : * @param comp The predicate to use.
+<span class="lineNum"> 629 </span> : * @return The last iterator @c i in the range
+<span class="lineNum"> 630 </span> : * @p [first1,last1-(last2-first2)) such that @c predicate(*(i+N), @p
+<span class="lineNum"> 631 </span> : * (first2+N)) is true for each @c N in the range @p [0,last2-first2), or
+<span class="lineNum"> 632 </span> : * @p last1 if no such iterator exists.
+<span class="lineNum"> 633 </span> : *
+<span class="lineNum"> 634 </span> : * Searches the range @p [first1,last1) for a sub-sequence that compares
+<span class="lineNum"> 635 </span> : * equal value-by-value with the sequence given by @p [first2,last2) using
+<span class="lineNum"> 636 </span> : * comp as a predicate and returns an iterator to the first element of the
+<span class="lineNum"> 637 </span> : * sub-sequence, or @p last1 if the sub-sequence is not found. The
+<span class="lineNum"> 638 </span> : * sub-sequence will be the last such subsequence contained in
+<span class="lineNum"> 639 </span> : * [first,last1).
+<span class="lineNum"> 640 </span> : *
+<span class="lineNum"> 641 </span> : * Because the sub-sequence must lie completely within the range
+<span class="lineNum"> 642 </span> : * @p [first1,last1) it must start at a position less than
+<span class="lineNum"> 643 </span> : * @p last1-(last2-first2) where @p last2-first2 is the length of the
+<span class="lineNum"> 644 </span> : * sub-sequence.
+<span class="lineNum"> 645 </span> : * This means that the returned iterator @c i will be in the range
+<span class="lineNum"> 646 </span> : * @p [first1,last1-(last2-first2))
+<span class="lineNum"> 647 </span> : */
+<span class="lineNum"> 648 </span> : template&lt;typename _ForwardIterator1, typename _ForwardIterator2,
+<span class="lineNum"> 649 </span> : typename _BinaryPredicate&gt;
+<span class="lineNum"> 650 </span> : inline _ForwardIterator1
+<span class="lineNum"> 651 </span> : find_end(_ForwardIterator1 __first1, _ForwardIterator1 __last1,
+<span class="lineNum"> 652 </span> : _ForwardIterator2 __first2, _ForwardIterator2 __last2,
+<span class="lineNum"> 653 </span> : _BinaryPredicate __comp)
+<span class="lineNum"> 654 </span> : {
+<span class="lineNum"> 655 </span> : // concept requirements
+<span class="lineNum"> 656 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator1&gt;)
+<span class="lineNum"> 657 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator2&gt;)
+<span class="lineNum"> 658 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_BinaryPredicate,
+<span class="lineNum"> 659 </span> : typename iterator_traits&lt;_ForwardIterator1&gt;::value_type,
+<span class="lineNum"> 660 </span> : typename iterator_traits&lt;_ForwardIterator2&gt;::value_type&gt;)
+<span class="lineNum"> 661 </span> : __glibcxx_requires_valid_range(__first1, __last1);
+<span class="lineNum"> 662 </span> : __glibcxx_requires_valid_range(__first2, __last2);
+<span class="lineNum"> 663 </span> :
+<span class="lineNum"> 664 </span> : return std::__find_end(__first1, __last1, __first2, __last2,
+<span class="lineNum"> 665 </span> : std::__iterator_category(__first1),
+<span class="lineNum"> 666 </span> : std::__iterator_category(__first2),
+<span class="lineNum"> 667 </span> : __comp);
+<span class="lineNum"> 668 </span> : }
+<span class="lineNum"> 669 </span> :
+<span class="lineNum"> 670 </span> :
+<span class="lineNum"> 671 </span> : /**
+<span class="lineNum"> 672 </span> : * @brief Copy a sequence, removing elements of a given value.
+<span class="lineNum"> 673 </span> : * @param first An input iterator.
+<span class="lineNum"> 674 </span> : * @param last An input iterator.
+<span class="lineNum"> 675 </span> : * @param result An output iterator.
+<span class="lineNum"> 676 </span> : * @param value The value to be removed.
+<span class="lineNum"> 677 </span> : * @return An iterator designating the end of the resulting sequence.
+<span class="lineNum"> 678 </span> : *
+<span class="lineNum"> 679 </span> : * Copies each element in the range @p [first,last) not equal to @p value
+<span class="lineNum"> 680 </span> : * to the range beginning at @p result.
+<span class="lineNum"> 681 </span> : * remove_copy() is stable, so the relative order of elements that are
+<span class="lineNum"> 682 </span> : * copied is unchanged.
+<span class="lineNum"> 683 </span> : */
+<span class="lineNum"> 684 </span> : template&lt;typename _InputIterator, typename _OutputIterator, typename _Tp&gt;
+<span class="lineNum"> 685 </span> : _OutputIterator
+<span class="lineNum"> 686 </span> : remove_copy(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 687 </span> : _OutputIterator __result, const _Tp&amp; __value)
+<span class="lineNum"> 688 </span> : {
+<span class="lineNum"> 689 </span> : // concept requirements
+<span class="lineNum"> 690 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator&gt;)
+<span class="lineNum"> 691 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 692 </span> : typename iterator_traits&lt;_InputIterator&gt;::value_type&gt;)
+<span class="lineNum"> 693 </span> : __glibcxx_function_requires(_EqualOpConcept&lt;
+<span class="lineNum"> 694 </span> : typename iterator_traits&lt;_InputIterator&gt;::value_type, _Tp&gt;)
+<span class="lineNum"> 695 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 696 </span> :
+<span class="lineNum"> 697 </span> : for (; __first != __last; ++__first)
+<span class="lineNum"> 698 </span> : if (!(*__first == __value))
+<span class="lineNum"> 699 </span> : {
+<span class="lineNum"> 700 </span> : *__result = *__first;
+<span class="lineNum"> 701 </span> : ++__result;
+<span class="lineNum"> 702 </span> : }
+<span class="lineNum"> 703 </span> : return __result;
+<span class="lineNum"> 704 </span> : }
+<span class="lineNum"> 705 </span> :
+<span class="lineNum"> 706 </span> : /**
+<span class="lineNum"> 707 </span> : * @brief Copy a sequence, removing elements for which a predicate is true.
+<span class="lineNum"> 708 </span> : * @param first An input iterator.
+<span class="lineNum"> 709 </span> : * @param last An input iterator.
+<span class="lineNum"> 710 </span> : * @param result An output iterator.
+<span class="lineNum"> 711 </span> : * @param pred A predicate.
+<span class="lineNum"> 712 </span> : * @return An iterator designating the end of the resulting sequence.
+<span class="lineNum"> 713 </span> : *
+<span class="lineNum"> 714 </span> : * Copies each element in the range @p [first,last) for which
+<span class="lineNum"> 715 </span> : * @p pred returns false to the range beginning at @p result.
+<span class="lineNum"> 716 </span> : *
+<span class="lineNum"> 717 </span> : * remove_copy_if() is stable, so the relative order of elements that are
+<span class="lineNum"> 718 </span> : * copied is unchanged.
+<span class="lineNum"> 719 </span> : */
+<span class="lineNum"> 720 </span> : template&lt;typename _InputIterator, typename _OutputIterator,
+<span class="lineNum"> 721 </span> : typename _Predicate&gt;
+<span class="lineNum"> 722 </span> : _OutputIterator
+<span class="lineNum"> 723 </span> : remove_copy_if(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 724 </span><span class="lineCov"> 16 : _OutputIterator __result, _Predicate __pred)</span>
+<span class="lineNum"> 725 </span> : {
+<span class="lineNum"> 726 </span> : // concept requirements
+<span class="lineNum"> 727 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator&gt;)
+<span class="lineNum"> 728 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 729 </span> : typename iterator_traits&lt;_InputIterator&gt;::value_type&gt;)
+<span class="lineNum"> 730 </span> : __glibcxx_function_requires(_UnaryPredicateConcept&lt;_Predicate,
+<span class="lineNum"> 731 </span> : typename iterator_traits&lt;_InputIterator&gt;::value_type&gt;)
+<span class="lineNum"> 732 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 733 </span> :
+<span class="lineNum"> 734 </span><span class="lineCov"> 80 : for (; __first != __last; ++__first)</span>
+<span class="lineNum"> 735 </span><span class="lineCov"> 64 : if (!bool(__pred(*__first)))</span>
+<span class="lineNum"> 736 </span> : {
+<span class="lineNum"> 737 </span><span class="lineCov"> 48 : *__result = *__first;</span>
+<span class="lineNum"> 738 </span><span class="lineCov"> 48 : ++__result;</span>
+<span class="lineNum"> 739 </span> : }
+<span class="lineNum"> 740 </span><span class="lineCov"> 16 : return __result;</span>
+<span class="lineNum"> 741 </span> : }
+<span class="lineNum"> 742 </span> :
+<span class="lineNum"> 743 </span> : /**
+<span class="lineNum"> 744 </span> : * @brief Remove elements from a sequence.
+<span class="lineNum"> 745 </span> : * @param first An input iterator.
+<span class="lineNum"> 746 </span> : * @param last An input iterator.
+<span class="lineNum"> 747 </span> : * @param value The value to be removed.
+<span class="lineNum"> 748 </span> : * @return An iterator designating the end of the resulting sequence.
+<span class="lineNum"> 749 </span> : *
+<span class="lineNum"> 750 </span> : * All elements equal to @p value are removed from the range
+<span class="lineNum"> 751 </span> : * @p [first,last).
+<span class="lineNum"> 752 </span> : *
+<span class="lineNum"> 753 </span> : * remove() is stable, so the relative order of elements that are
+<span class="lineNum"> 754 </span> : * not removed is unchanged.
+<span class="lineNum"> 755 </span> : *
+<span class="lineNum"> 756 </span> : * Elements between the end of the resulting sequence and @p last
+<span class="lineNum"> 757 </span> : * are still present, but their value is unspecified.
+<span class="lineNum"> 758 </span> : */
+<span class="lineNum"> 759 </span> : template&lt;typename _ForwardIterator, typename _Tp&gt;
+<span class="lineNum"> 760 </span> : _ForwardIterator
+<span class="lineNum"> 761 </span> : remove(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 762 </span> : const _Tp&amp; __value)
+<span class="lineNum"> 763 </span> : {
+<span class="lineNum"> 764 </span> : // concept requirements
+<span class="lineNum"> 765 </span> : __glibcxx_function_requires(_Mutable_ForwardIteratorConcept&lt;
+<span class="lineNum"> 766 </span> : _ForwardIterator&gt;)
+<span class="lineNum"> 767 </span> : __glibcxx_function_requires(_EqualOpConcept&lt;
+<span class="lineNum"> 768 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type, _Tp&gt;)
+<span class="lineNum"> 769 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 770 </span> :
+<span class="lineNum"> 771 </span> : __first = _GLIBCXX_STD_P::find(__first, __last, __value);
+<span class="lineNum"> 772 </span> : if(__first == __last)
+<span class="lineNum"> 773 </span> : return __first;
+<span class="lineNum"> 774 </span> : _ForwardIterator __result = __first;
+<span class="lineNum"> 775 </span> : ++__first;
+<span class="lineNum"> 776 </span> : for(; __first != __last; ++__first)
+<span class="lineNum"> 777 </span> : if(!(*__first == __value))
+<span class="lineNum"> 778 </span> : {
+<span class="lineNum"> 779 </span> : *__result = _GLIBCXX_MOVE(*__first);
+<span class="lineNum"> 780 </span> : ++__result;
+<span class="lineNum"> 781 </span> : }
+<span class="lineNum"> 782 </span> : return __result;
+<span class="lineNum"> 783 </span> : }
+<span class="lineNum"> 784 </span> :
+<span class="lineNum"> 785 </span> : /**
+<span class="lineNum"> 786 </span> : * @brief Remove elements from a sequence using a predicate.
+<span class="lineNum"> 787 </span> : * @param first A forward iterator.
+<span class="lineNum"> 788 </span> : * @param last A forward iterator.
+<span class="lineNum"> 789 </span> : * @param pred A predicate.
+<span class="lineNum"> 790 </span> : * @return An iterator designating the end of the resulting sequence.
+<span class="lineNum"> 791 </span> : *
+<span class="lineNum"> 792 </span> : * All elements for which @p pred returns true are removed from the range
+<span class="lineNum"> 793 </span> : * @p [first,last).
+<span class="lineNum"> 794 </span> : *
+<span class="lineNum"> 795 </span> : * remove_if() is stable, so the relative order of elements that are
+<span class="lineNum"> 796 </span> : * not removed is unchanged.
+<span class="lineNum"> 797 </span> : *
+<span class="lineNum"> 798 </span> : * Elements between the end of the resulting sequence and @p last
+<span class="lineNum"> 799 </span> : * are still present, but their value is unspecified.
+<span class="lineNum"> 800 </span> : */
+<span class="lineNum"> 801 </span> : template&lt;typename _ForwardIterator, typename _Predicate&gt;
+<span class="lineNum"> 802 </span> : _ForwardIterator
+<span class="lineNum"> 803 </span> : remove_if(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 804 </span> : _Predicate __pred)
+<span class="lineNum"> 805 </span> : {
+<span class="lineNum"> 806 </span> : // concept requirements
+<span class="lineNum"> 807 </span> : __glibcxx_function_requires(_Mutable_ForwardIteratorConcept&lt;
+<span class="lineNum"> 808 </span> : _ForwardIterator&gt;)
+<span class="lineNum"> 809 </span> : __glibcxx_function_requires(_UnaryPredicateConcept&lt;_Predicate,
+<span class="lineNum"> 810 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type&gt;)
+<span class="lineNum"> 811 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 812 </span> :
+<span class="lineNum"> 813 </span> : __first = _GLIBCXX_STD_P::find_if(__first, __last, __pred);
+<span class="lineNum"> 814 </span> : if(__first == __last)
+<span class="lineNum"> 815 </span> : return __first;
+<span class="lineNum"> 816 </span> : _ForwardIterator __result = __first;
+<span class="lineNum"> 817 </span> : ++__first;
+<span class="lineNum"> 818 </span> : for(; __first != __last; ++__first)
+<span class="lineNum"> 819 </span> : if(!bool(__pred(*__first)))
+<span class="lineNum"> 820 </span> : {
+<span class="lineNum"> 821 </span> : *__result = _GLIBCXX_MOVE(*__first);
+<span class="lineNum"> 822 </span> : ++__result;
+<span class="lineNum"> 823 </span> : }
+<span class="lineNum"> 824 </span> : return __result;
+<span class="lineNum"> 825 </span> : }
+<span class="lineNum"> 826 </span> :
+<span class="lineNum"> 827 </span> : /**
+<span class="lineNum"> 828 </span> : * @brief Remove consecutive duplicate values from a sequence.
+<span class="lineNum"> 829 </span> : * @param first A forward iterator.
+<span class="lineNum"> 830 </span> : * @param last A forward iterator.
+<span class="lineNum"> 831 </span> : * @return An iterator designating the end of the resulting sequence.
+<span class="lineNum"> 832 </span> : *
+<span class="lineNum"> 833 </span> : * Removes all but the first element from each group of consecutive
+<span class="lineNum"> 834 </span> : * values that compare equal.
+<span class="lineNum"> 835 </span> : * unique() is stable, so the relative order of elements that are
+<span class="lineNum"> 836 </span> : * not removed is unchanged.
+<span class="lineNum"> 837 </span> : * Elements between the end of the resulting sequence and @p last
+<span class="lineNum"> 838 </span> : * are still present, but their value is unspecified.
+<span class="lineNum"> 839 </span> : */
+<span class="lineNum"> 840 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 841 </span> : _ForwardIterator
+<span class="lineNum"> 842 </span> : unique(_ForwardIterator __first, _ForwardIterator __last)
+<span class="lineNum"> 843 </span> : {
+<span class="lineNum"> 844 </span> : // concept requirements
+<span class="lineNum"> 845 </span> : __glibcxx_function_requires(_Mutable_ForwardIteratorConcept&lt;
+<span class="lineNum"> 846 </span> : _ForwardIterator&gt;)
+<span class="lineNum"> 847 </span> : __glibcxx_function_requires(_EqualityComparableConcept&lt;
+<span class="lineNum"> 848 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type&gt;)
+<span class="lineNum"> 849 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 850 </span> :
+<span class="lineNum"> 851 </span> : // Skip the beginning, if already unique.
+<span class="lineNum"> 852 </span> : __first = _GLIBCXX_STD_P::adjacent_find(__first, __last);
+<span class="lineNum"> 853 </span> : if (__first == __last)
+<span class="lineNum"> 854 </span> : return __last;
+<span class="lineNum"> 855 </span> :
+<span class="lineNum"> 856 </span> : // Do the real copy work.
+<span class="lineNum"> 857 </span> : _ForwardIterator __dest = __first;
+<span class="lineNum"> 858 </span> : ++__first;
+<span class="lineNum"> 859 </span> : while (++__first != __last)
+<span class="lineNum"> 860 </span> : if (!(*__dest == *__first))
+<span class="lineNum"> 861 </span> : *++__dest = _GLIBCXX_MOVE(*__first);
+<span class="lineNum"> 862 </span> : return ++__dest;
+<span class="lineNum"> 863 </span> : }
+<span class="lineNum"> 864 </span> :
+<span class="lineNum"> 865 </span> : /**
+<span class="lineNum"> 866 </span> : * @brief Remove consecutive values from a sequence using a predicate.
+<span class="lineNum"> 867 </span> : * @param first A forward iterator.
+<span class="lineNum"> 868 </span> : * @param last A forward iterator.
+<span class="lineNum"> 869 </span> : * @param binary_pred A binary predicate.
+<span class="lineNum"> 870 </span> : * @return An iterator designating the end of the resulting sequence.
+<span class="lineNum"> 871 </span> : *
+<span class="lineNum"> 872 </span> : * Removes all but the first element from each group of consecutive
+<span class="lineNum"> 873 </span> : * values for which @p binary_pred returns true.
+<span class="lineNum"> 874 </span> : * unique() is stable, so the relative order of elements that are
+<span class="lineNum"> 875 </span> : * not removed is unchanged.
+<span class="lineNum"> 876 </span> : * Elements between the end of the resulting sequence and @p last
+<span class="lineNum"> 877 </span> : * are still present, but their value is unspecified.
+<span class="lineNum"> 878 </span> : */
+<span class="lineNum"> 879 </span> : template&lt;typename _ForwardIterator, typename _BinaryPredicate&gt;
+<span class="lineNum"> 880 </span> : _ForwardIterator
+<span class="lineNum"> 881 </span> : unique(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 882 </span> : _BinaryPredicate __binary_pred)
+<span class="lineNum"> 883 </span> : {
+<span class="lineNum"> 884 </span> : // concept requirements
+<span class="lineNum"> 885 </span> : __glibcxx_function_requires(_Mutable_ForwardIteratorConcept&lt;
+<span class="lineNum"> 886 </span> : _ForwardIterator&gt;)
+<span class="lineNum"> 887 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_BinaryPredicate,
+<span class="lineNum"> 888 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type,
+<span class="lineNum"> 889 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type&gt;)
+<span class="lineNum"> 890 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 891 </span> :
+<span class="lineNum"> 892 </span> : // Skip the beginning, if already unique.
+<span class="lineNum"> 893 </span> : __first = _GLIBCXX_STD_P::adjacent_find(__first, __last, __binary_pred);
+<span class="lineNum"> 894 </span> : if (__first == __last)
+<span class="lineNum"> 895 </span> : return __last;
+<span class="lineNum"> 896 </span> :
+<span class="lineNum"> 897 </span> : // Do the real copy work.
+<span class="lineNum"> 898 </span> : _ForwardIterator __dest = __first;
+<span class="lineNum"> 899 </span> : ++__first;
+<span class="lineNum"> 900 </span> : while (++__first != __last)
+<span class="lineNum"> 901 </span> : if (!bool(__binary_pred(*__dest, *__first)))
+<span class="lineNum"> 902 </span> : *++__dest = _GLIBCXX_MOVE(*__first);
+<span class="lineNum"> 903 </span> : return ++__dest;
+<span class="lineNum"> 904 </span> : }
+<span class="lineNum"> 905 </span> :
+<span class="lineNum"> 906 </span> : /**
+<span class="lineNum"> 907 </span> : * This is an uglified unique_copy(_InputIterator, _InputIterator,
+<span class="lineNum"> 908 </span> : * _OutputIterator)
+<span class="lineNum"> 909 </span> : * overloaded for forward iterators and output iterator as result.
+<span class="lineNum"> 910 </span> : */
+<span class="lineNum"> 911 </span> : template&lt;typename _ForwardIterator, typename _OutputIterator&gt;
+<span class="lineNum"> 912 </span> : _OutputIterator
+<span class="lineNum"> 913 </span> : __unique_copy(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 914 </span> : _OutputIterator __result,
+<span class="lineNum"> 915 </span> : forward_iterator_tag, output_iterator_tag)
+<span class="lineNum"> 916 </span> : {
+<span class="lineNum"> 917 </span> : // concept requirements -- taken care of in dispatching function
+<span class="lineNum"> 918 </span> : _ForwardIterator __next = __first;
+<span class="lineNum"> 919 </span> : *__result = *__first;
+<span class="lineNum"> 920 </span> : while (++__next != __last)
+<span class="lineNum"> 921 </span> : if (!(*__first == *__next))
+<span class="lineNum"> 922 </span> : {
+<span class="lineNum"> 923 </span> : __first = __next;
+<span class="lineNum"> 924 </span> : *++__result = *__first;
+<span class="lineNum"> 925 </span> : }
+<span class="lineNum"> 926 </span> : return ++__result;
+<span class="lineNum"> 927 </span> : }
+<span class="lineNum"> 928 </span> :
+<span class="lineNum"> 929 </span> : /**
+<span class="lineNum"> 930 </span> : * This is an uglified unique_copy(_InputIterator, _InputIterator,
+<span class="lineNum"> 931 </span> : * _OutputIterator)
+<span class="lineNum"> 932 </span> : * overloaded for input iterators and output iterator as result.
+<span class="lineNum"> 933 </span> : */
+<span class="lineNum"> 934 </span> : template&lt;typename _InputIterator, typename _OutputIterator&gt;
+<span class="lineNum"> 935 </span> : _OutputIterator
+<span class="lineNum"> 936 </span> : __unique_copy(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 937 </span> : _OutputIterator __result,
+<span class="lineNum"> 938 </span> : input_iterator_tag, output_iterator_tag)
+<span class="lineNum"> 939 </span> : {
+<span class="lineNum"> 940 </span> : // concept requirements -- taken care of in dispatching function
+<span class="lineNum"> 941 </span> : typename iterator_traits&lt;_InputIterator&gt;::value_type __value = *__first;
+<span class="lineNum"> 942 </span> : *__result = __value;
+<span class="lineNum"> 943 </span> : while (++__first != __last)
+<span class="lineNum"> 944 </span> : if (!(__value == *__first))
+<span class="lineNum"> 945 </span> : {
+<span class="lineNum"> 946 </span> : __value = *__first;
+<span class="lineNum"> 947 </span> : *++__result = __value;
+<span class="lineNum"> 948 </span> : }
+<span class="lineNum"> 949 </span> : return ++__result;
+<span class="lineNum"> 950 </span> : }
+<span class="lineNum"> 951 </span> :
+<span class="lineNum"> 952 </span> : /**
+<span class="lineNum"> 953 </span> : * This is an uglified unique_copy(_InputIterator, _InputIterator,
+<span class="lineNum"> 954 </span> : * _OutputIterator)
+<span class="lineNum"> 955 </span> : * overloaded for input iterators and forward iterator as result.
+<span class="lineNum"> 956 </span> : */
+<span class="lineNum"> 957 </span> : template&lt;typename _InputIterator, typename _ForwardIterator&gt;
+<span class="lineNum"> 958 </span> : _ForwardIterator
+<span class="lineNum"> 959 </span> : __unique_copy(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 960 </span> : _ForwardIterator __result,
+<span class="lineNum"> 961 </span> : input_iterator_tag, forward_iterator_tag)
+<span class="lineNum"> 962 </span> : {
+<span class="lineNum"> 963 </span> : // concept requirements -- taken care of in dispatching function
+<span class="lineNum"> 964 </span> : *__result = *__first;
+<span class="lineNum"> 965 </span> : while (++__first != __last)
+<span class="lineNum"> 966 </span> : if (!(*__result == *__first))
+<span class="lineNum"> 967 </span> : *++__result = *__first;
+<span class="lineNum"> 968 </span> : return ++__result;
+<span class="lineNum"> 969 </span> : }
+<span class="lineNum"> 970 </span> :
+<span class="lineNum"> 971 </span> : /**
+<span class="lineNum"> 972 </span> : * This is an uglified
+<span class="lineNum"> 973 </span> : * unique_copy(_InputIterator, _InputIterator, _OutputIterator,
+<span class="lineNum"> 974 </span> : * _BinaryPredicate)
+<span class="lineNum"> 975 </span> : * overloaded for forward iterators and output iterator as result.
+<span class="lineNum"> 976 </span> : */
+<span class="lineNum"> 977 </span> : template&lt;typename _ForwardIterator, typename _OutputIterator,
+<span class="lineNum"> 978 </span> : typename _BinaryPredicate&gt;
+<span class="lineNum"> 979 </span> : _OutputIterator
+<span class="lineNum"> 980 </span> : __unique_copy(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 981 </span> : _OutputIterator __result, _BinaryPredicate __binary_pred,
+<span class="lineNum"> 982 </span> : forward_iterator_tag, output_iterator_tag)
+<span class="lineNum"> 983 </span> : {
+<span class="lineNum"> 984 </span> : // concept requirements -- iterators already checked
+<span class="lineNum"> 985 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_BinaryPredicate,
+<span class="lineNum"> 986 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type,
+<span class="lineNum"> 987 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type&gt;)
+<span class="lineNum"> 988 </span> :
+<span class="lineNum"> 989 </span> : _ForwardIterator __next = __first;
+<span class="lineNum"> 990 </span> : *__result = *__first;
+<span class="lineNum"> 991 </span> : while (++__next != __last)
+<span class="lineNum"> 992 </span> : if (!bool(__binary_pred(*__first, *__next)))
+<span class="lineNum"> 993 </span> : {
+<span class="lineNum"> 994 </span> : __first = __next;
+<span class="lineNum"> 995 </span> : *++__result = *__first;
+<span class="lineNum"> 996 </span> : }
+<span class="lineNum"> 997 </span> : return ++__result;
+<span class="lineNum"> 998 </span> : }
+<span class="lineNum"> 999 </span> :
+<span class="lineNum"> 1000 </span> : /**
+<span class="lineNum"> 1001 </span> : * This is an uglified
+<span class="lineNum"> 1002 </span> : * unique_copy(_InputIterator, _InputIterator, _OutputIterator,
+<span class="lineNum"> 1003 </span> : * _BinaryPredicate)
+<span class="lineNum"> 1004 </span> : * overloaded for input iterators and output iterator as result.
+<span class="lineNum"> 1005 </span> : */
+<span class="lineNum"> 1006 </span> : template&lt;typename _InputIterator, typename _OutputIterator,
+<span class="lineNum"> 1007 </span> : typename _BinaryPredicate&gt;
+<span class="lineNum"> 1008 </span> : _OutputIterator
+<span class="lineNum"> 1009 </span> : __unique_copy(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 1010 </span> : _OutputIterator __result, _BinaryPredicate __binary_pred,
+<span class="lineNum"> 1011 </span> : input_iterator_tag, output_iterator_tag)
+<span class="lineNum"> 1012 </span> : {
+<span class="lineNum"> 1013 </span> : // concept requirements -- iterators already checked
+<span class="lineNum"> 1014 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_BinaryPredicate,
+<span class="lineNum"> 1015 </span> : typename iterator_traits&lt;_InputIterator&gt;::value_type,
+<span class="lineNum"> 1016 </span> : typename iterator_traits&lt;_InputIterator&gt;::value_type&gt;)
+<span class="lineNum"> 1017 </span> :
+<span class="lineNum"> 1018 </span> : typename iterator_traits&lt;_InputIterator&gt;::value_type __value = *__first;
+<span class="lineNum"> 1019 </span> : *__result = __value;
+<span class="lineNum"> 1020 </span> : while (++__first != __last)
+<span class="lineNum"> 1021 </span> : if (!bool(__binary_pred(__value, *__first)))
+<span class="lineNum"> 1022 </span> : {
+<span class="lineNum"> 1023 </span> : __value = *__first;
+<span class="lineNum"> 1024 </span> : *++__result = __value;
+<span class="lineNum"> 1025 </span> : }
+<span class="lineNum"> 1026 </span> : return ++__result;
+<span class="lineNum"> 1027 </span> : }
+<span class="lineNum"> 1028 </span> :
+<span class="lineNum"> 1029 </span> : /**
+<span class="lineNum"> 1030 </span> : * This is an uglified
+<span class="lineNum"> 1031 </span> : * unique_copy(_InputIterator, _InputIterator, _OutputIterator,
+<span class="lineNum"> 1032 </span> : * _BinaryPredicate)
+<span class="lineNum"> 1033 </span> : * overloaded for input iterators and forward iterator as result.
+<span class="lineNum"> 1034 </span> : */
+<span class="lineNum"> 1035 </span> : template&lt;typename _InputIterator, typename _ForwardIterator,
+<span class="lineNum"> 1036 </span> : typename _BinaryPredicate&gt;
+<span class="lineNum"> 1037 </span> : _ForwardIterator
+<span class="lineNum"> 1038 </span> : __unique_copy(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 1039 </span> : _ForwardIterator __result, _BinaryPredicate __binary_pred,
+<span class="lineNum"> 1040 </span> : input_iterator_tag, forward_iterator_tag)
+<span class="lineNum"> 1041 </span> : {
+<span class="lineNum"> 1042 </span> : // concept requirements -- iterators already checked
+<span class="lineNum"> 1043 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_BinaryPredicate,
+<span class="lineNum"> 1044 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type,
+<span class="lineNum"> 1045 </span> : typename iterator_traits&lt;_InputIterator&gt;::value_type&gt;)
+<span class="lineNum"> 1046 </span> :
+<span class="lineNum"> 1047 </span> : *__result = *__first;
+<span class="lineNum"> 1048 </span> : while (++__first != __last)
+<span class="lineNum"> 1049 </span> : if (!bool(__binary_pred(*__result, *__first)))
+<span class="lineNum"> 1050 </span> : *++__result = *__first;
+<span class="lineNum"> 1051 </span> : return ++__result;
+<span class="lineNum"> 1052 </span> : }
+<span class="lineNum"> 1053 </span> :
+<span class="lineNum"> 1054 </span> : /**
+<span class="lineNum"> 1055 </span> : * This is an uglified reverse(_BidirectionalIterator,
+<span class="lineNum"> 1056 </span> : * _BidirectionalIterator)
+<span class="lineNum"> 1057 </span> : * overloaded for bidirectional iterators.
+<span class="lineNum"> 1058 </span> : */
+<span class="lineNum"> 1059 </span> : template&lt;typename _BidirectionalIterator&gt;
+<span class="lineNum"> 1060 </span> : void
+<span class="lineNum"> 1061 </span> : __reverse(_BidirectionalIterator __first, _BidirectionalIterator __last,
+<span class="lineNum"> 1062 </span> : bidirectional_iterator_tag)
+<span class="lineNum"> 1063 </span> : {
+<span class="lineNum"> 1064 </span> : while (true)
+<span class="lineNum"> 1065 </span> : if (__first == __last || __first == --__last)
+<span class="lineNum"> 1066 </span> : return;
+<span class="lineNum"> 1067 </span> : else
+<span class="lineNum"> 1068 </span> : {
+<span class="lineNum"> 1069 </span> : std::iter_swap(__first, __last);
+<span class="lineNum"> 1070 </span> : ++__first;
+<span class="lineNum"> 1071 </span> : }
+<span class="lineNum"> 1072 </span> : }
+<span class="lineNum"> 1073 </span> :
+<span class="lineNum"> 1074 </span> : /**
+<span class="lineNum"> 1075 </span> : * This is an uglified reverse(_BidirectionalIterator,
+<span class="lineNum"> 1076 </span> : * _BidirectionalIterator)
+<span class="lineNum"> 1077 </span> : * overloaded for random access iterators.
+<span class="lineNum"> 1078 </span> : */
+<span class="lineNum"> 1079 </span> : template&lt;typename _RandomAccessIterator&gt;
+<span class="lineNum"> 1080 </span> : void
+<span class="lineNum"> 1081 </span> : __reverse(_RandomAccessIterator __first, _RandomAccessIterator __last,
+<span class="lineNum"> 1082 </span> : random_access_iterator_tag)
+<span class="lineNum"> 1083 </span> : {
+<span class="lineNum"> 1084 </span> : if (__first == __last)
+<span class="lineNum"> 1085 </span> : return;
+<span class="lineNum"> 1086 </span> : --__last;
+<span class="lineNum"> 1087 </span> : while (__first &lt; __last)
+<span class="lineNum"> 1088 </span> : {
+<span class="lineNum"> 1089 </span> : std::iter_swap(__first, __last);
+<span class="lineNum"> 1090 </span> : ++__first;
+<span class="lineNum"> 1091 </span> : --__last;
+<span class="lineNum"> 1092 </span> : }
+<span class="lineNum"> 1093 </span> : }
+<span class="lineNum"> 1094 </span> :
+<span class="lineNum"> 1095 </span> : /**
+<span class="lineNum"> 1096 </span> : * @brief Reverse a sequence.
+<span class="lineNum"> 1097 </span> : * @param first A bidirectional iterator.
+<span class="lineNum"> 1098 </span> : * @param last A bidirectional iterator.
+<span class="lineNum"> 1099 </span> : * @return reverse() returns no value.
+<span class="lineNum"> 1100 </span> : *
+<span class="lineNum"> 1101 </span> : * Reverses the order of the elements in the range @p [first,last),
+<span class="lineNum"> 1102 </span> : * so that the first element becomes the last etc.
+<span class="lineNum"> 1103 </span> : * For every @c i such that @p 0&lt;=i&lt;=(last-first)/2), @p reverse()
+<span class="lineNum"> 1104 </span> : * swaps @p *(first+i) and @p *(last-(i+1))
+<span class="lineNum"> 1105 </span> : */
+<span class="lineNum"> 1106 </span> : template&lt;typename _BidirectionalIterator&gt;
+<span class="lineNum"> 1107 </span> : inline void
+<span class="lineNum"> 1108 </span> : reverse(_BidirectionalIterator __first, _BidirectionalIterator __last)
+<span class="lineNum"> 1109 </span> : {
+<span class="lineNum"> 1110 </span> : // concept requirements
+<span class="lineNum"> 1111 </span> : __glibcxx_function_requires(_Mutable_BidirectionalIteratorConcept&lt;
+<span class="lineNum"> 1112 </span> : _BidirectionalIterator&gt;)
+<span class="lineNum"> 1113 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 1114 </span> : std::__reverse(__first, __last, std::__iterator_category(__first));
+<span class="lineNum"> 1115 </span> : }
+<span class="lineNum"> 1116 </span> :
+<span class="lineNum"> 1117 </span> : /**
+<span class="lineNum"> 1118 </span> : * @brief Copy a sequence, reversing its elements.
+<span class="lineNum"> 1119 </span> : * @param first A bidirectional iterator.
+<span class="lineNum"> 1120 </span> : * @param last A bidirectional iterator.
+<span class="lineNum"> 1121 </span> : * @param result An output iterator.
+<span class="lineNum"> 1122 </span> : * @return An iterator designating the end of the resulting sequence.
+<span class="lineNum"> 1123 </span> : *
+<span class="lineNum"> 1124 </span> : * Copies the elements in the range @p [first,last) to the range
+<span class="lineNum"> 1125 </span> : * @p [result,result+(last-first)) such that the order of the
+<span class="lineNum"> 1126 </span> : * elements is reversed.
+<span class="lineNum"> 1127 </span> : * For every @c i such that @p 0&lt;=i&lt;=(last-first), @p reverse_copy()
+<span class="lineNum"> 1128 </span> : * performs the assignment @p *(result+(last-first)-i) = *(first+i).
+<span class="lineNum"> 1129 </span> : * The ranges @p [first,last) and @p [result,result+(last-first))
+<span class="lineNum"> 1130 </span> : * must not overlap.
+<span class="lineNum"> 1131 </span> : */
+<span class="lineNum"> 1132 </span> : template&lt;typename _BidirectionalIterator, typename _OutputIterator&gt;
+<span class="lineNum"> 1133 </span> : _OutputIterator
+<span class="lineNum"> 1134 </span> : reverse_copy(_BidirectionalIterator __first, _BidirectionalIterator __last,
+<span class="lineNum"> 1135 </span> : _OutputIterator __result)
+<span class="lineNum"> 1136 </span> : {
+<span class="lineNum"> 1137 </span> : // concept requirements
+<span class="lineNum"> 1138 </span> : __glibcxx_function_requires(_BidirectionalIteratorConcept&lt;
+<span class="lineNum"> 1139 </span> : _BidirectionalIterator&gt;)
+<span class="lineNum"> 1140 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 1141 </span> : typename iterator_traits&lt;_BidirectionalIterator&gt;::value_type&gt;)
+<span class="lineNum"> 1142 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 1143 </span> :
+<span class="lineNum"> 1144 </span> : while (__first != __last)
+<span class="lineNum"> 1145 </span> : {
+<span class="lineNum"> 1146 </span> : --__last;
+<span class="lineNum"> 1147 </span> : *__result = *__last;
+<span class="lineNum"> 1148 </span> : ++__result;
+<span class="lineNum"> 1149 </span> : }
+<span class="lineNum"> 1150 </span> : return __result;
+<span class="lineNum"> 1151 </span> : }
+<span class="lineNum"> 1152 </span> :
+<span class="lineNum"> 1153 </span> : /**
+<span class="lineNum"> 1154 </span> : * This is a helper function for the rotate algorithm specialized on RAIs.
+<span class="lineNum"> 1155 </span> : * It returns the greatest common divisor of two integer values.
+<span class="lineNum"> 1156 </span> : */
+<span class="lineNum"> 1157 </span> : template&lt;typename _EuclideanRingElement&gt;
+<span class="lineNum"> 1158 </span> : _EuclideanRingElement
+<span class="lineNum"> 1159 </span> : __gcd(_EuclideanRingElement __m, _EuclideanRingElement __n)
+<span class="lineNum"> 1160 </span> : {
+<span class="lineNum"> 1161 </span> : while (__n != 0)
+<span class="lineNum"> 1162 </span> : {
+<span class="lineNum"> 1163 </span> : _EuclideanRingElement __t = __m % __n;
+<span class="lineNum"> 1164 </span> : __m = __n;
+<span class="lineNum"> 1165 </span> : __n = __t;
+<span class="lineNum"> 1166 </span> : }
+<span class="lineNum"> 1167 </span> : return __m;
+<span class="lineNum"> 1168 </span> : }
+<span class="lineNum"> 1169 </span> :
+<span class="lineNum"> 1170 </span> : /// This is a helper function for the rotate algorithm.
+<span class="lineNum"> 1171 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 1172 </span> : void
+<span class="lineNum"> 1173 </span> : __rotate(_ForwardIterator __first,
+<span class="lineNum"> 1174 </span> : _ForwardIterator __middle,
+<span class="lineNum"> 1175 </span> : _ForwardIterator __last,
+<span class="lineNum"> 1176 </span> : forward_iterator_tag)
+<span class="lineNum"> 1177 </span> : {
+<span class="lineNum"> 1178 </span> : if (__first == __middle || __last == __middle)
+<span class="lineNum"> 1179 </span> : return;
+<span class="lineNum"> 1180 </span> :
+<span class="lineNum"> 1181 </span> : _ForwardIterator __first2 = __middle;
+<span class="lineNum"> 1182 </span> : do
+<span class="lineNum"> 1183 </span> : {
+<span class="lineNum"> 1184 </span> : std::iter_swap(__first, __first2);
+<span class="lineNum"> 1185 </span> : ++__first;
+<span class="lineNum"> 1186 </span> : ++__first2;
+<span class="lineNum"> 1187 </span> : if (__first == __middle)
+<span class="lineNum"> 1188 </span> : __middle = __first2;
+<span class="lineNum"> 1189 </span> : }
+<span class="lineNum"> 1190 </span> : while (__first2 != __last);
+<span class="lineNum"> 1191 </span> :
+<span class="lineNum"> 1192 </span> : __first2 = __middle;
+<span class="lineNum"> 1193 </span> :
+<span class="lineNum"> 1194 </span> : while (__first2 != __last)
+<span class="lineNum"> 1195 </span> : {
+<span class="lineNum"> 1196 </span> : std::iter_swap(__first, __first2);
+<span class="lineNum"> 1197 </span> : ++__first;
+<span class="lineNum"> 1198 </span> : ++__first2;
+<span class="lineNum"> 1199 </span> : if (__first == __middle)
+<span class="lineNum"> 1200 </span> : __middle = __first2;
+<span class="lineNum"> 1201 </span> : else if (__first2 == __last)
+<span class="lineNum"> 1202 </span> : __first2 = __middle;
+<span class="lineNum"> 1203 </span> : }
+<span class="lineNum"> 1204 </span> : }
+<span class="lineNum"> 1205 </span> :
+<span class="lineNum"> 1206 </span> : /// This is a helper function for the rotate algorithm.
+<span class="lineNum"> 1207 </span> : template&lt;typename _BidirectionalIterator&gt;
+<span class="lineNum"> 1208 </span> : void
+<span class="lineNum"> 1209 </span> : __rotate(_BidirectionalIterator __first,
+<span class="lineNum"> 1210 </span> : _BidirectionalIterator __middle,
+<span class="lineNum"> 1211 </span> : _BidirectionalIterator __last,
+<span class="lineNum"> 1212 </span> : bidirectional_iterator_tag)
+<span class="lineNum"> 1213 </span> : {
+<span class="lineNum"> 1214 </span> : // concept requirements
+<span class="lineNum"> 1215 </span> : __glibcxx_function_requires(_Mutable_BidirectionalIteratorConcept&lt;
+<span class="lineNum"> 1216 </span> : _BidirectionalIterator&gt;)
+<span class="lineNum"> 1217 </span> :
+<span class="lineNum"> 1218 </span> : if (__first == __middle || __last == __middle)
+<span class="lineNum"> 1219 </span> : return;
+<span class="lineNum"> 1220 </span> :
+<span class="lineNum"> 1221 </span> : std::__reverse(__first, __middle, bidirectional_iterator_tag());
+<span class="lineNum"> 1222 </span> : std::__reverse(__middle, __last, bidirectional_iterator_tag());
+<span class="lineNum"> 1223 </span> :
+<span class="lineNum"> 1224 </span> : while (__first != __middle &amp;&amp; __middle != __last)
+<span class="lineNum"> 1225 </span> : {
+<span class="lineNum"> 1226 </span> : std::iter_swap(__first, --__last);
+<span class="lineNum"> 1227 </span> : ++__first;
+<span class="lineNum"> 1228 </span> : }
+<span class="lineNum"> 1229 </span> :
+<span class="lineNum"> 1230 </span> : if (__first == __middle)
+<span class="lineNum"> 1231 </span> : std::__reverse(__middle, __last, bidirectional_iterator_tag());
+<span class="lineNum"> 1232 </span> : else
+<span class="lineNum"> 1233 </span> : std::__reverse(__first, __middle, bidirectional_iterator_tag());
+<span class="lineNum"> 1234 </span> : }
+<span class="lineNum"> 1235 </span> :
+<span class="lineNum"> 1236 </span> : /// This is a helper function for the rotate algorithm.
+<span class="lineNum"> 1237 </span> : template&lt;typename _RandomAccessIterator&gt;
+<span class="lineNum"> 1238 </span> : void
+<span class="lineNum"> 1239 </span> : __rotate(_RandomAccessIterator __first,
+<span class="lineNum"> 1240 </span> : _RandomAccessIterator __middle,
+<span class="lineNum"> 1241 </span> : _RandomAccessIterator __last,
+<span class="lineNum"> 1242 </span> : random_access_iterator_tag)
+<span class="lineNum"> 1243 </span> : {
+<span class="lineNum"> 1244 </span> : // concept requirements
+<span class="lineNum"> 1245 </span> : __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 1246 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 1247 </span> :
+<span class="lineNum"> 1248 </span> : if (__first == __middle || __last == __middle)
+<span class="lineNum"> 1249 </span> : return;
+<span class="lineNum"> 1250 </span> :
+<span class="lineNum"> 1251 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::difference_type
+<span class="lineNum"> 1252 </span> : _Distance;
+<span class="lineNum"> 1253 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 1254 </span> : _ValueType;
+<span class="lineNum"> 1255 </span> :
+<span class="lineNum"> 1256 </span> : const _Distance __n = __last - __first;
+<span class="lineNum"> 1257 </span> : const _Distance __k = __middle - __first;
+<span class="lineNum"> 1258 </span> : const _Distance __l = __n - __k;
+<span class="lineNum"> 1259 </span> :
+<span class="lineNum"> 1260 </span> : if (__k == __l)
+<span class="lineNum"> 1261 </span> : {
+<span class="lineNum"> 1262 </span> : std::swap_ranges(__first, __middle, __middle);
+<span class="lineNum"> 1263 </span> : return;
+<span class="lineNum"> 1264 </span> : }
+<span class="lineNum"> 1265 </span> :
+<span class="lineNum"> 1266 </span> : const _Distance __d = std::__gcd(__n, __k);
+<span class="lineNum"> 1267 </span> :
+<span class="lineNum"> 1268 </span> : for (_Distance __i = 0; __i &lt; __d; __i++)
+<span class="lineNum"> 1269 </span> : {
+<span class="lineNum"> 1270 </span> : _ValueType __tmp = _GLIBCXX_MOVE(*__first);
+<span class="lineNum"> 1271 </span> : _RandomAccessIterator __p = __first;
+<span class="lineNum"> 1272 </span> :
+<span class="lineNum"> 1273 </span> : if (__k &lt; __l)
+<span class="lineNum"> 1274 </span> : {
+<span class="lineNum"> 1275 </span> : for (_Distance __j = 0; __j &lt; __l / __d; __j++)
+<span class="lineNum"> 1276 </span> : {
+<span class="lineNum"> 1277 </span> : if (__p &gt; __first + __l)
+<span class="lineNum"> 1278 </span> : {
+<span class="lineNum"> 1279 </span> : *__p = _GLIBCXX_MOVE(*(__p - __l));
+<span class="lineNum"> 1280 </span> : __p -= __l;
+<span class="lineNum"> 1281 </span> : }
+<span class="lineNum"> 1282 </span> :
+<span class="lineNum"> 1283 </span> : *__p = _GLIBCXX_MOVE(*(__p + __k));
+<span class="lineNum"> 1284 </span> : __p += __k;
+<span class="lineNum"> 1285 </span> : }
+<span class="lineNum"> 1286 </span> : }
+<span class="lineNum"> 1287 </span> : else
+<span class="lineNum"> 1288 </span> : {
+<span class="lineNum"> 1289 </span> : for (_Distance __j = 0; __j &lt; __k / __d - 1; __j ++)
+<span class="lineNum"> 1290 </span> : {
+<span class="lineNum"> 1291 </span> : if (__p &lt; __last - __k)
+<span class="lineNum"> 1292 </span> : {
+<span class="lineNum"> 1293 </span> : *__p = _GLIBCXX_MOVE(*(__p + __k));
+<span class="lineNum"> 1294 </span> : __p += __k;
+<span class="lineNum"> 1295 </span> : }
+<span class="lineNum"> 1296 </span> : *__p = _GLIBCXX_MOVE(*(__p - __l));
+<span class="lineNum"> 1297 </span> : __p -= __l;
+<span class="lineNum"> 1298 </span> : }
+<span class="lineNum"> 1299 </span> : }
+<span class="lineNum"> 1300 </span> :
+<span class="lineNum"> 1301 </span> : *__p = _GLIBCXX_MOVE(__tmp);
+<span class="lineNum"> 1302 </span> : ++__first;
+<span class="lineNum"> 1303 </span> : }
+<span class="lineNum"> 1304 </span> : }
+<span class="lineNum"> 1305 </span> :
+<span class="lineNum"> 1306 </span> : /**
+<span class="lineNum"> 1307 </span> : * @brief Rotate the elements of a sequence.
+<span class="lineNum"> 1308 </span> : * @param first A forward iterator.
+<span class="lineNum"> 1309 </span> : * @param middle A forward iterator.
+<span class="lineNum"> 1310 </span> : * @param last A forward iterator.
+<span class="lineNum"> 1311 </span> : * @return Nothing.
+<span class="lineNum"> 1312 </span> : *
+<span class="lineNum"> 1313 </span> : * Rotates the elements of the range @p [first,last) by @p (middle-first)
+<span class="lineNum"> 1314 </span> : * positions so that the element at @p middle is moved to @p first, the
+<span class="lineNum"> 1315 </span> : * element at @p middle+1 is moved to @first+1 and so on for each element
+<span class="lineNum"> 1316 </span> : * in the range @p [first,last).
+<span class="lineNum"> 1317 </span> : *
+<span class="lineNum"> 1318 </span> : * This effectively swaps the ranges @p [first,middle) and
+<span class="lineNum"> 1319 </span> : * @p [middle,last).
+<span class="lineNum"> 1320 </span> : *
+<span class="lineNum"> 1321 </span> : * Performs @p *(first+(n+(last-middle))%(last-first))=*(first+n) for
+<span class="lineNum"> 1322 </span> : * each @p n in the range @p [0,last-first).
+<span class="lineNum"> 1323 </span> : */
+<span class="lineNum"> 1324 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 1325 </span> : inline void
+<span class="lineNum"> 1326 </span> : rotate(_ForwardIterator __first, _ForwardIterator __middle,
+<span class="lineNum"> 1327 </span> : _ForwardIterator __last)
+<span class="lineNum"> 1328 </span> : {
+<span class="lineNum"> 1329 </span> : // concept requirements
+<span class="lineNum"> 1330 </span> : __glibcxx_function_requires(_Mutable_ForwardIteratorConcept&lt;
+<span class="lineNum"> 1331 </span> : _ForwardIterator&gt;)
+<span class="lineNum"> 1332 </span> : __glibcxx_requires_valid_range(__first, __middle);
+<span class="lineNum"> 1333 </span> : __glibcxx_requires_valid_range(__middle, __last);
+<span class="lineNum"> 1334 </span> :
+<span class="lineNum"> 1335 </span> : typedef typename iterator_traits&lt;_ForwardIterator&gt;::iterator_category
+<span class="lineNum"> 1336 </span> : _IterType;
+<span class="lineNum"> 1337 </span> : std::__rotate(__first, __middle, __last, _IterType());
+<span class="lineNum"> 1338 </span> : }
+<span class="lineNum"> 1339 </span> :
+<span class="lineNum"> 1340 </span> : /**
+<span class="lineNum"> 1341 </span> : * @brief Copy a sequence, rotating its elements.
+<span class="lineNum"> 1342 </span> : * @param first A forward iterator.
+<span class="lineNum"> 1343 </span> : * @param middle A forward iterator.
+<span class="lineNum"> 1344 </span> : * @param last A forward iterator.
+<span class="lineNum"> 1345 </span> : * @param result An output iterator.
+<span class="lineNum"> 1346 </span> : * @return An iterator designating the end of the resulting sequence.
+<span class="lineNum"> 1347 </span> : *
+<span class="lineNum"> 1348 </span> : * Copies the elements of the range @p [first,last) to the range
+<span class="lineNum"> 1349 </span> : * beginning at @result, rotating the copied elements by @p (middle-first)
+<span class="lineNum"> 1350 </span> : * positions so that the element at @p middle is moved to @p result, the
+<span class="lineNum"> 1351 </span> : * element at @p middle+1 is moved to @result+1 and so on for each element
+<span class="lineNum"> 1352 </span> : * in the range @p [first,last).
+<span class="lineNum"> 1353 </span> : *
+<span class="lineNum"> 1354 </span> : * Performs @p *(result+(n+(last-middle))%(last-first))=*(first+n) for
+<span class="lineNum"> 1355 </span> : * each @p n in the range @p [0,last-first).
+<span class="lineNum"> 1356 </span> : */
+<span class="lineNum"> 1357 </span> : template&lt;typename _ForwardIterator, typename _OutputIterator&gt;
+<span class="lineNum"> 1358 </span> : _OutputIterator
+<span class="lineNum"> 1359 </span> : rotate_copy(_ForwardIterator __first, _ForwardIterator __middle,
+<span class="lineNum"> 1360 </span> : _ForwardIterator __last, _OutputIterator __result)
+<span class="lineNum"> 1361 </span> : {
+<span class="lineNum"> 1362 </span> : // concept requirements
+<span class="lineNum"> 1363 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 1364 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 1365 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type&gt;)
+<span class="lineNum"> 1366 </span> : __glibcxx_requires_valid_range(__first, __middle);
+<span class="lineNum"> 1367 </span> : __glibcxx_requires_valid_range(__middle, __last);
+<span class="lineNum"> 1368 </span> :
+<span class="lineNum"> 1369 </span> : return std::copy(__first, __middle,
+<span class="lineNum"> 1370 </span> : std::copy(__middle, __last, __result));
+<span class="lineNum"> 1371 </span> : }
+<span class="lineNum"> 1372 </span> :
+<span class="lineNum"> 1373 </span> : /// This is a helper function...
+<span class="lineNum"> 1374 </span> : template&lt;typename _ForwardIterator, typename _Predicate&gt;
+<span class="lineNum"> 1375 </span> : _ForwardIterator
+<span class="lineNum"> 1376 </span> : __partition(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 1377 </span> : _Predicate __pred, forward_iterator_tag)
+<span class="lineNum"> 1378 </span> : {
+<span class="lineNum"> 1379 </span> : if (__first == __last)
+<span class="lineNum"> 1380 </span> : return __first;
+<span class="lineNum"> 1381 </span> :
+<span class="lineNum"> 1382 </span> : while (__pred(*__first))
+<span class="lineNum"> 1383 </span> : if (++__first == __last)
+<span class="lineNum"> 1384 </span> : return __first;
+<span class="lineNum"> 1385 </span> :
+<span class="lineNum"> 1386 </span> : _ForwardIterator __next = __first;
+<span class="lineNum"> 1387 </span> :
+<span class="lineNum"> 1388 </span> : while (++__next != __last)
+<span class="lineNum"> 1389 </span> : if (__pred(*__next))
+<span class="lineNum"> 1390 </span> : {
+<span class="lineNum"> 1391 </span> : std::iter_swap(__first, __next);
+<span class="lineNum"> 1392 </span> : ++__first;
+<span class="lineNum"> 1393 </span> : }
+<span class="lineNum"> 1394 </span> :
+<span class="lineNum"> 1395 </span> : return __first;
+<span class="lineNum"> 1396 </span> : }
+<span class="lineNum"> 1397 </span> :
+<span class="lineNum"> 1398 </span> : /// This is a helper function...
+<span class="lineNum"> 1399 </span> : template&lt;typename _BidirectionalIterator, typename _Predicate&gt;
+<span class="lineNum"> 1400 </span> : _BidirectionalIterator
+<span class="lineNum"> 1401 </span> : __partition(_BidirectionalIterator __first, _BidirectionalIterator __last,
+<span class="lineNum"> 1402 </span> : _Predicate __pred, bidirectional_iterator_tag)
+<span class="lineNum"> 1403 </span> : {
+<span class="lineNum"> 1404 </span> : while (true)
+<span class="lineNum"> 1405 </span> : {
+<span class="lineNum"> 1406 </span> : while (true)
+<span class="lineNum"> 1407 </span> : if (__first == __last)
+<span class="lineNum"> 1408 </span> : return __first;
+<span class="lineNum"> 1409 </span> : else if (__pred(*__first))
+<span class="lineNum"> 1410 </span> : ++__first;
+<span class="lineNum"> 1411 </span> : else
+<span class="lineNum"> 1412 </span> : break;
+<span class="lineNum"> 1413 </span> : --__last;
+<span class="lineNum"> 1414 </span> : while (true)
+<span class="lineNum"> 1415 </span> : if (__first == __last)
+<span class="lineNum"> 1416 </span> : return __first;
+<span class="lineNum"> 1417 </span> : else if (!bool(__pred(*__last)))
+<span class="lineNum"> 1418 </span> : --__last;
+<span class="lineNum"> 1419 </span> : else
+<span class="lineNum"> 1420 </span> : break;
+<span class="lineNum"> 1421 </span> : std::iter_swap(__first, __last);
+<span class="lineNum"> 1422 </span> : ++__first;
+<span class="lineNum"> 1423 </span> : }
+<span class="lineNum"> 1424 </span> : }
+<span class="lineNum"> 1425 </span> :
+<span class="lineNum"> 1426 </span> : // partition
+<span class="lineNum"> 1427 </span> :
+<span class="lineNum"> 1428 </span> : /// This is a helper function...
+<span class="lineNum"> 1429 </span> : template&lt;typename _ForwardIterator, typename _Predicate, typename _Distance&gt;
+<span class="lineNum"> 1430 </span> : _ForwardIterator
+<span class="lineNum"> 1431 </span> : __inplace_stable_partition(_ForwardIterator __first,
+<span class="lineNum"> 1432 </span> : _ForwardIterator __last,
+<span class="lineNum"> 1433 </span> : _Predicate __pred, _Distance __len)
+<span class="lineNum"> 1434 </span> : {
+<span class="lineNum"> 1435 </span> : if (__len == 1)
+<span class="lineNum"> 1436 </span> : return __pred(*__first) ? __last : __first;
+<span class="lineNum"> 1437 </span> : _ForwardIterator __middle = __first;
+<span class="lineNum"> 1438 </span> : std::advance(__middle, __len / 2);
+<span class="lineNum"> 1439 </span> : _ForwardIterator __begin = std::__inplace_stable_partition(__first,
+<span class="lineNum"> 1440 </span> : __middle,
+<span class="lineNum"> 1441 </span> : __pred,
+<span class="lineNum"> 1442 </span> : __len / 2);
+<span class="lineNum"> 1443 </span> : _ForwardIterator __end = std::__inplace_stable_partition(__middle, __last,
+<span class="lineNum"> 1444 </span> : __pred,
+<span class="lineNum"> 1445 </span> : __len
+<span class="lineNum"> 1446 </span> : - __len / 2);
+<span class="lineNum"> 1447 </span> : std::rotate(__begin, __middle, __end);
+<span class="lineNum"> 1448 </span> : std::advance(__begin, std::distance(__middle, __end));
+<span class="lineNum"> 1449 </span> : return __begin;
+<span class="lineNum"> 1450 </span> : }
+<span class="lineNum"> 1451 </span> :
+<span class="lineNum"> 1452 </span> : /// This is a helper function...
+<span class="lineNum"> 1453 </span> : template&lt;typename _ForwardIterator, typename _Pointer, typename _Predicate,
+<span class="lineNum"> 1454 </span> : typename _Distance&gt;
+<span class="lineNum"> 1455 </span> : _ForwardIterator
+<span class="lineNum"> 1456 </span> : __stable_partition_adaptive(_ForwardIterator __first,
+<span class="lineNum"> 1457 </span> : _ForwardIterator __last,
+<span class="lineNum"> 1458 </span> : _Predicate __pred, _Distance __len,
+<span class="lineNum"> 1459 </span> : _Pointer __buffer,
+<span class="lineNum"> 1460 </span> : _Distance __buffer_size)
+<span class="lineNum"> 1461 </span> : {
+<span class="lineNum"> 1462 </span> : if (__len &lt;= __buffer_size)
+<span class="lineNum"> 1463 </span> : {
+<span class="lineNum"> 1464 </span> : _ForwardIterator __result1 = __first;
+<span class="lineNum"> 1465 </span> : _Pointer __result2 = __buffer;
+<span class="lineNum"> 1466 </span> : for (; __first != __last; ++__first)
+<span class="lineNum"> 1467 </span> : if (__pred(*__first))
+<span class="lineNum"> 1468 </span> : {
+<span class="lineNum"> 1469 </span> : *__result1 = *__first;
+<span class="lineNum"> 1470 </span> : ++__result1;
+<span class="lineNum"> 1471 </span> : }
+<span class="lineNum"> 1472 </span> : else
+<span class="lineNum"> 1473 </span> : {
+<span class="lineNum"> 1474 </span> : *__result2 = *__first;
+<span class="lineNum"> 1475 </span> : ++__result2;
+<span class="lineNum"> 1476 </span> : }
+<span class="lineNum"> 1477 </span> : std::copy(__buffer, __result2, __result1);
+<span class="lineNum"> 1478 </span> : return __result1;
+<span class="lineNum"> 1479 </span> : }
+<span class="lineNum"> 1480 </span> : else
+<span class="lineNum"> 1481 </span> : {
+<span class="lineNum"> 1482 </span> : _ForwardIterator __middle = __first;
+<span class="lineNum"> 1483 </span> : std::advance(__middle, __len / 2);
+<span class="lineNum"> 1484 </span> : _ForwardIterator __begin =
+<span class="lineNum"> 1485 </span> : std::__stable_partition_adaptive(__first, __middle, __pred,
+<span class="lineNum"> 1486 </span> : __len / 2, __buffer,
+<span class="lineNum"> 1487 </span> : __buffer_size);
+<span class="lineNum"> 1488 </span> : _ForwardIterator __end =
+<span class="lineNum"> 1489 </span> : std::__stable_partition_adaptive(__middle, __last, __pred,
+<span class="lineNum"> 1490 </span> : __len - __len / 2,
+<span class="lineNum"> 1491 </span> : __buffer, __buffer_size);
+<span class="lineNum"> 1492 </span> : std::rotate(__begin, __middle, __end);
+<span class="lineNum"> 1493 </span> : std::advance(__begin, std::distance(__middle, __end));
+<span class="lineNum"> 1494 </span> : return __begin;
+<span class="lineNum"> 1495 </span> : }
+<span class="lineNum"> 1496 </span> : }
+<span class="lineNum"> 1497 </span> :
+<span class="lineNum"> 1498 </span> : /**
+<span class="lineNum"> 1499 </span> : * @brief Move elements for which a predicate is true to the beginning
+<span class="lineNum"> 1500 </span> : * of a sequence, preserving relative ordering.
+<span class="lineNum"> 1501 </span> : * @param first A forward iterator.
+<span class="lineNum"> 1502 </span> : * @param last A forward iterator.
+<span class="lineNum"> 1503 </span> : * @param pred A predicate functor.
+<span class="lineNum"> 1504 </span> : * @return An iterator @p middle such that @p pred(i) is true for each
+<span class="lineNum"> 1505 </span> : * iterator @p i in the range @p [first,middle) and false for each @p i
+<span class="lineNum"> 1506 </span> : * in the range @p [middle,last).
+<span class="lineNum"> 1507 </span> : *
+<span class="lineNum"> 1508 </span> : * Performs the same function as @p partition() with the additional
+<span class="lineNum"> 1509 </span> : * guarantee that the relative ordering of elements in each group is
+<span class="lineNum"> 1510 </span> : * preserved, so any two elements @p x and @p y in the range
+<span class="lineNum"> 1511 </span> : * @p [first,last) such that @p pred(x)==pred(y) will have the same
+<span class="lineNum"> 1512 </span> : * relative ordering after calling @p stable_partition().
+<span class="lineNum"> 1513 </span> : */
+<span class="lineNum"> 1514 </span> : template&lt;typename _ForwardIterator, typename _Predicate&gt;
+<span class="lineNum"> 1515 </span> : _ForwardIterator
+<span class="lineNum"> 1516 </span> : stable_partition(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 1517 </span> : _Predicate __pred)
+<span class="lineNum"> 1518 </span> : {
+<span class="lineNum"> 1519 </span> : // concept requirements
+<span class="lineNum"> 1520 </span> : __glibcxx_function_requires(_Mutable_ForwardIteratorConcept&lt;
+<span class="lineNum"> 1521 </span> : _ForwardIterator&gt;)
+<span class="lineNum"> 1522 </span> : __glibcxx_function_requires(_UnaryPredicateConcept&lt;_Predicate,
+<span class="lineNum"> 1523 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type&gt;)
+<span class="lineNum"> 1524 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 1525 </span> :
+<span class="lineNum"> 1526 </span> : if (__first == __last)
+<span class="lineNum"> 1527 </span> : return __first;
+<span class="lineNum"> 1528 </span> : else
+<span class="lineNum"> 1529 </span> : {
+<span class="lineNum"> 1530 </span> : typedef typename iterator_traits&lt;_ForwardIterator&gt;::value_type
+<span class="lineNum"> 1531 </span> : _ValueType;
+<span class="lineNum"> 1532 </span> : typedef typename iterator_traits&lt;_ForwardIterator&gt;::difference_type
+<span class="lineNum"> 1533 </span> : _DistanceType;
+<span class="lineNum"> 1534 </span> :
+<span class="lineNum"> 1535 </span> : _Temporary_buffer&lt;_ForwardIterator, _ValueType&gt; __buf(__first,
+<span class="lineNum"> 1536 </span> : __last);
+<span class="lineNum"> 1537 </span> : if (__buf.size() &gt; 0)
+<span class="lineNum"> 1538 </span> : return
+<span class="lineNum"> 1539 </span> : std::__stable_partition_adaptive(__first, __last, __pred,
+<span class="lineNum"> 1540 </span> : _DistanceType(__buf.requested_size()),
+<span class="lineNum"> 1541 </span> : __buf.begin(),
+<span class="lineNum"> 1542 </span> : _DistanceType(__buf.size()));
+<span class="lineNum"> 1543 </span> : else
+<span class="lineNum"> 1544 </span> : return
+<span class="lineNum"> 1545 </span> : std::__inplace_stable_partition(__first, __last, __pred,
+<span class="lineNum"> 1546 </span> : _DistanceType(__buf.requested_size()));
+<span class="lineNum"> 1547 </span> : }
+<span class="lineNum"> 1548 </span> : }
+<span class="lineNum"> 1549 </span> :
+<span class="lineNum"> 1550 </span> : /// This is a helper function for the sort routines.
+<span class="lineNum"> 1551 </span> : template&lt;typename _RandomAccessIterator&gt;
+<span class="lineNum"> 1552 </span> : void
+<span class="lineNum"> 1553 </span> : __heap_select(_RandomAccessIterator __first,
+<span class="lineNum"> 1554 </span> : _RandomAccessIterator __middle,
+<span class="lineNum"> 1555 </span><span class="lineNoCov"> 0 : _RandomAccessIterator __last)</span>
+<span class="lineNum"> 1556 </span> : {
+<span class="lineNum"> 1557 </span><span class="lineNoCov"> 0 : std::make_heap(__first, __middle);</span>
+<span class="lineNum"> 1558 </span><span class="lineNoCov"> 0 : for (_RandomAccessIterator __i = __middle; __i &lt; __last; ++__i)</span>
+<span class="lineNum"> 1559 </span><span class="lineNoCov"> 0 : if (*__i &lt; *__first)</span>
+<span class="lineNum"> 1560 </span><span class="lineNoCov"> 0 : std::__pop_heap(__first, __middle, __i);</span>
+<span class="lineNum"> 1561 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 1562 </span> :
+<span class="lineNum"> 1563 </span> : /// This is a helper function for the sort routines.
+<span class="lineNum"> 1564 </span> : template&lt;typename _RandomAccessIterator, typename _Compare&gt;
+<span class="lineNum"> 1565 </span> : void
+<span class="lineNum"> 1566 </span> : __heap_select(_RandomAccessIterator __first,
+<span class="lineNum"> 1567 </span> : _RandomAccessIterator __middle,
+<span class="lineNum"> 1568 </span><span class="lineNoCov"> 0 : _RandomAccessIterator __last, _Compare __comp)</span>
+<span class="lineNum"> 1569 </span> : {
+<span class="lineNum"> 1570 </span><span class="lineNoCov"> 0 : std::make_heap(__first, __middle, __comp);</span>
+<span class="lineNum"> 1571 </span><span class="lineNoCov"> 0 : for (_RandomAccessIterator __i = __middle; __i &lt; __last; ++__i)</span>
+<span class="lineNum"> 1572 </span><span class="lineNoCov"> 0 : if (__comp(*__i, *__first))</span>
+<span class="lineNum"> 1573 </span><span class="lineNoCov"> 0 : std::__pop_heap(__first, __middle, __i, __comp);</span>
+<span class="lineNum"> 1574 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 1575 </span> :
+<span class="lineNum"> 1576 </span> : // partial_sort
+<span class="lineNum"> 1577 </span> :
+<span class="lineNum"> 1578 </span> : /**
+<span class="lineNum"> 1579 </span> : * @brief Copy the smallest elements of a sequence.
+<span class="lineNum"> 1580 </span> : * @param first An iterator.
+<span class="lineNum"> 1581 </span> : * @param last Another iterator.
+<span class="lineNum"> 1582 </span> : * @param result_first A random-access iterator.
+<span class="lineNum"> 1583 </span> : * @param result_last Another random-access iterator.
+<span class="lineNum"> 1584 </span> : * @return An iterator indicating the end of the resulting sequence.
+<span class="lineNum"> 1585 </span> : *
+<span class="lineNum"> 1586 </span> : * Copies and sorts the smallest N values from the range @p [first,last)
+<span class="lineNum"> 1587 </span> : * to the range beginning at @p result_first, where the number of
+<span class="lineNum"> 1588 </span> : * elements to be copied, @p N, is the smaller of @p (last-first) and
+<span class="lineNum"> 1589 </span> : * @p (result_last-result_first).
+<span class="lineNum"> 1590 </span> : * After the sort if @p i and @j are iterators in the range
+<span class="lineNum"> 1591 </span> : * @p [result_first,result_first+N) such that @i precedes @j then
+<span class="lineNum"> 1592 </span> : * @p *j&lt;*i is false.
+<span class="lineNum"> 1593 </span> : * The value returned is @p result_first+N.
+<span class="lineNum"> 1594 </span> : */
+<span class="lineNum"> 1595 </span> : template&lt;typename _InputIterator, typename _RandomAccessIterator&gt;
+<span class="lineNum"> 1596 </span> : _RandomAccessIterator
+<span class="lineNum"> 1597 </span> : partial_sort_copy(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 1598 </span> : _RandomAccessIterator __result_first,
+<span class="lineNum"> 1599 </span> : _RandomAccessIterator __result_last)
+<span class="lineNum"> 1600 </span> : {
+<span class="lineNum"> 1601 </span> : typedef typename iterator_traits&lt;_InputIterator&gt;::value_type
+<span class="lineNum"> 1602 </span> : _InputValueType;
+<span class="lineNum"> 1603 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 1604 </span> : _OutputValueType;
+<span class="lineNum"> 1605 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::difference_type
+<span class="lineNum"> 1606 </span> : _DistanceType;
+<span class="lineNum"> 1607 </span> :
+<span class="lineNum"> 1608 </span> : // concept requirements
+<span class="lineNum"> 1609 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator&gt;)
+<span class="lineNum"> 1610 </span> : __glibcxx_function_requires(_ConvertibleConcept&lt;_InputValueType,
+<span class="lineNum"> 1611 </span> : _OutputValueType&gt;)
+<span class="lineNum"> 1612 </span> : __glibcxx_function_requires(_LessThanOpConcept&lt;_InputValueType,
+<span class="lineNum"> 1613 </span> : _OutputValueType&gt;)
+<span class="lineNum"> 1614 </span> : __glibcxx_function_requires(_LessThanComparableConcept&lt;_OutputValueType&gt;)
+<span class="lineNum"> 1615 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 1616 </span> : __glibcxx_requires_valid_range(__result_first, __result_last);
+<span class="lineNum"> 1617 </span> :
+<span class="lineNum"> 1618 </span> : if (__result_first == __result_last)
+<span class="lineNum"> 1619 </span> : return __result_last;
+<span class="lineNum"> 1620 </span> : _RandomAccessIterator __result_real_last = __result_first;
+<span class="lineNum"> 1621 </span> : while(__first != __last &amp;&amp; __result_real_last != __result_last)
+<span class="lineNum"> 1622 </span> : {
+<span class="lineNum"> 1623 </span> : *__result_real_last = *__first;
+<span class="lineNum"> 1624 </span> : ++__result_real_last;
+<span class="lineNum"> 1625 </span> : ++__first;
+<span class="lineNum"> 1626 </span> : }
+<span class="lineNum"> 1627 </span> : std::make_heap(__result_first, __result_real_last);
+<span class="lineNum"> 1628 </span> : while (__first != __last)
+<span class="lineNum"> 1629 </span> : {
+<span class="lineNum"> 1630 </span> : if (*__first &lt; *__result_first)
+<span class="lineNum"> 1631 </span> : std::__adjust_heap(__result_first, _DistanceType(0),
+<span class="lineNum"> 1632 </span> : _DistanceType(__result_real_last
+<span class="lineNum"> 1633 </span> : - __result_first),
+<span class="lineNum"> 1634 </span> : _InputValueType(*__first));
+<span class="lineNum"> 1635 </span> : ++__first;
+<span class="lineNum"> 1636 </span> : }
+<span class="lineNum"> 1637 </span> : std::sort_heap(__result_first, __result_real_last);
+<span class="lineNum"> 1638 </span> : return __result_real_last;
+<span class="lineNum"> 1639 </span> : }
+<span class="lineNum"> 1640 </span> :
+<span class="lineNum"> 1641 </span> : /**
+<span class="lineNum"> 1642 </span> : * @brief Copy the smallest elements of a sequence using a predicate for
+<span class="lineNum"> 1643 </span> : * comparison.
+<span class="lineNum"> 1644 </span> : * @param first An input iterator.
+<span class="lineNum"> 1645 </span> : * @param last Another input iterator.
+<span class="lineNum"> 1646 </span> : * @param result_first A random-access iterator.
+<span class="lineNum"> 1647 </span> : * @param result_last Another random-access iterator.
+<span class="lineNum"> 1648 </span> : * @param comp A comparison functor.
+<span class="lineNum"> 1649 </span> : * @return An iterator indicating the end of the resulting sequence.
+<span class="lineNum"> 1650 </span> : *
+<span class="lineNum"> 1651 </span> : * Copies and sorts the smallest N values from the range @p [first,last)
+<span class="lineNum"> 1652 </span> : * to the range beginning at @p result_first, where the number of
+<span class="lineNum"> 1653 </span> : * elements to be copied, @p N, is the smaller of @p (last-first) and
+<span class="lineNum"> 1654 </span> : * @p (result_last-result_first).
+<span class="lineNum"> 1655 </span> : * After the sort if @p i and @j are iterators in the range
+<span class="lineNum"> 1656 </span> : * @p [result_first,result_first+N) such that @i precedes @j then
+<span class="lineNum"> 1657 </span> : * @p comp(*j,*i) is false.
+<span class="lineNum"> 1658 </span> : * The value returned is @p result_first+N.
+<span class="lineNum"> 1659 </span> : */
+<span class="lineNum"> 1660 </span> : template&lt;typename _InputIterator, typename _RandomAccessIterator, typename _Compare&gt;
+<span class="lineNum"> 1661 </span> : _RandomAccessIterator
+<span class="lineNum"> 1662 </span> : partial_sort_copy(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 1663 </span> : _RandomAccessIterator __result_first,
+<span class="lineNum"> 1664 </span> : _RandomAccessIterator __result_last,
+<span class="lineNum"> 1665 </span> : _Compare __comp)
+<span class="lineNum"> 1666 </span> : {
+<span class="lineNum"> 1667 </span> : typedef typename iterator_traits&lt;_InputIterator&gt;::value_type
+<span class="lineNum"> 1668 </span> : _InputValueType;
+<span class="lineNum"> 1669 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 1670 </span> : _OutputValueType;
+<span class="lineNum"> 1671 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::difference_type
+<span class="lineNum"> 1672 </span> : _DistanceType;
+<span class="lineNum"> 1673 </span> :
+<span class="lineNum"> 1674 </span> : // concept requirements
+<span class="lineNum"> 1675 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator&gt;)
+<span class="lineNum"> 1676 </span> : __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 1677 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 1678 </span> : __glibcxx_function_requires(_ConvertibleConcept&lt;_InputValueType,
+<span class="lineNum"> 1679 </span> : _OutputValueType&gt;)
+<span class="lineNum"> 1680 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 1681 </span> : _InputValueType, _OutputValueType&gt;)
+<span class="lineNum"> 1682 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 1683 </span> : _OutputValueType, _OutputValueType&gt;)
+<span class="lineNum"> 1684 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 1685 </span> : __glibcxx_requires_valid_range(__result_first, __result_last);
+<span class="lineNum"> 1686 </span> :
+<span class="lineNum"> 1687 </span> : if (__result_first == __result_last)
+<span class="lineNum"> 1688 </span> : return __result_last;
+<span class="lineNum"> 1689 </span> : _RandomAccessIterator __result_real_last = __result_first;
+<span class="lineNum"> 1690 </span> : while(__first != __last &amp;&amp; __result_real_last != __result_last)
+<span class="lineNum"> 1691 </span> : {
+<span class="lineNum"> 1692 </span> : *__result_real_last = *__first;
+<span class="lineNum"> 1693 </span> : ++__result_real_last;
+<span class="lineNum"> 1694 </span> : ++__first;
+<span class="lineNum"> 1695 </span> : }
+<span class="lineNum"> 1696 </span> : std::make_heap(__result_first, __result_real_last, __comp);
+<span class="lineNum"> 1697 </span> : while (__first != __last)
+<span class="lineNum"> 1698 </span> : {
+<span class="lineNum"> 1699 </span> : if (__comp(*__first, *__result_first))
+<span class="lineNum"> 1700 </span> : std::__adjust_heap(__result_first, _DistanceType(0),
+<span class="lineNum"> 1701 </span> : _DistanceType(__result_real_last
+<span class="lineNum"> 1702 </span> : - __result_first),
+<span class="lineNum"> 1703 </span> : _InputValueType(*__first),
+<span class="lineNum"> 1704 </span> : __comp);
+<span class="lineNum"> 1705 </span> : ++__first;
+<span class="lineNum"> 1706 </span> : }
+<span class="lineNum"> 1707 </span> : std::sort_heap(__result_first, __result_real_last, __comp);
+<span class="lineNum"> 1708 </span> : return __result_real_last;
+<span class="lineNum"> 1709 </span> : }
+<span class="lineNum"> 1710 </span> :
+<span class="lineNum"> 1711 </span> : /// This is a helper function for the sort routine.
+<span class="lineNum"> 1712 </span> : template&lt;typename _RandomAccessIterator, typename _Tp&gt;
+<span class="lineNum"> 1713 </span> : void
+<span class="lineNum"> 1714 </span><span class="lineCov"> 2369 : __unguarded_linear_insert(_RandomAccessIterator __last, _Tp __val)</span>
+<span class="lineNum"> 1715 </span> : {
+<span class="lineNum"> 1716 </span><span class="lineCov"> 2369 : _RandomAccessIterator __next = __last;</span>
+<span class="lineNum"> 1717 </span><span class="lineCov"> 2369 : --__next;</span>
+<span class="lineNum"> 1718 </span><span class="lineCov"> 5033 : while (__val &lt; *__next)</span>
+<span class="lineNum"> 1719 </span> : {
+<span class="lineNum"> 1720 </span><span class="lineCov"> 295 : *__last = *__next;</span>
+<span class="lineNum"> 1721 </span><span class="lineCov"> 295 : __last = __next;</span>
+<span class="lineNum"> 1722 </span><span class="lineCov"> 295 : --__next;</span>
+<span class="lineNum"> 1723 </span> : }
+<span class="lineNum"> 1724 </span><span class="lineCov"> 2369 : *__last = __val;</span>
+<span class="lineNum"> 1725 </span><span class="lineCov"> 2369 : }</span>
+<span class="lineNum"> 1726 </span> :
+<span class="lineNum"> 1727 </span> : /// This is a helper function for the sort routine.
+<span class="lineNum"> 1728 </span> : template&lt;typename _RandomAccessIterator, typename _Tp, typename _Compare&gt;
+<span class="lineNum"> 1729 </span> : void
+<span class="lineNum"> 1730 </span> : __unguarded_linear_insert(_RandomAccessIterator __last, _Tp __val,
+<span class="lineNum"> 1731 </span><span class="lineCov"> 48163 : _Compare __comp)</span>
+<span class="lineNum"> 1732 </span> : {
+<span class="lineNum"> 1733 </span><span class="lineCov"> 48163 : _RandomAccessIterator __next = __last;</span>
+<span class="lineNum"> 1734 </span><span class="lineCov"> 48163 : --__next;</span>
+<span class="lineNum"> 1735 </span><span class="lineCov"> 273339 : while (__comp(__val, *__next))</span>
+<span class="lineNum"> 1736 </span> : {
+<span class="lineNum"> 1737 </span><span class="lineCov"> 177013 : *__last = *__next;</span>
+<span class="lineNum"> 1738 </span><span class="lineCov"> 177013 : __last = __next;</span>
+<span class="lineNum"> 1739 </span><span class="lineCov"> 177013 : --__next;</span>
+<span class="lineNum"> 1740 </span> : }
+<span class="lineNum"> 1741 </span><span class="lineCov"> 48163 : *__last = __val;</span>
+<span class="lineNum"> 1742 </span><span class="lineCov"> 48163 : }</span>
+<span class="lineNum"> 1743 </span> :
+<span class="lineNum"> 1744 </span> : /// This is a helper function for the sort routine.
+<span class="lineNum"> 1745 </span> : template&lt;typename _RandomAccessIterator&gt;
+<span class="lineNum"> 1746 </span> : void
+<span class="lineNum"> 1747 </span> : __insertion_sort(_RandomAccessIterator __first,
+<span class="lineNum"> 1748 </span><span class="lineCov"> 81 : _RandomAccessIterator __last)</span>
+<span class="lineNum"> 1749 </span> : {
+<span class="lineNum"> 1750 </span><span class="lineCov"> 81 : if (__first == __last)</span>
+<span class="lineNum"> 1751 </span><span class="lineNoCov"> 0 : return;</span>
+<span class="lineNum"> 1752 </span> :
+<span class="lineNum"> 1753 </span><span class="lineCov"> 503 : for (_RandomAccessIterator __i = __first + 1; __i != __last; ++__i)</span>
+<span class="lineNum"> 1754 </span> : {
+<span class="lineNum"> 1755 </span> : typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 1756 </span><span class="lineCov"> 422 : __val = *__i;</span>
+<span class="lineNum"> 1757 </span><span class="lineCov"> 422 : if (__val &lt; *__first)</span>
+<span class="lineNum"> 1758 </span> : {
+<span class="lineNum"> 1759 </span><span class="lineCov"> 151 : std::copy_backward(__first, __i, __i + 1);</span>
+<span class="lineNum"> 1760 </span><span class="lineCov"> 151 : *__first = __val;</span>
+<span class="lineNum"> 1761 </span> : }
+<span class="lineNum"> 1762 </span> : else
+<span class="lineNum"> 1763 </span><span class="lineCov"> 271 : std::__unguarded_linear_insert(__i, __val);</span>
+<span class="lineNum"> 1764 </span> : }
+<span class="lineNum"> 1765 </span> : }
+<span class="lineNum"> 1766 </span> :
+<span class="lineNum"> 1767 </span> : /// This is a helper function for the sort routine.
+<span class="lineNum"> 1768 </span> : template&lt;typename _RandomAccessIterator, typename _Compare&gt;
+<span class="lineNum"> 1769 </span> : void
+<span class="lineNum"> 1770 </span> : __insertion_sort(_RandomAccessIterator __first,
+<span class="lineNum"> 1771 </span><span class="lineCov"> 3938 : _RandomAccessIterator __last, _Compare __comp)</span>
+<span class="lineNum"> 1772 </span> : {
+<span class="lineNum"> 1773 </span><span class="lineCov"> 3938 : if (__first == __last) return;</span>
+<span class="lineNum"> 1774 </span> :
+<span class="lineNum"> 1775 </span><span class="lineCov"> 55255 : for (_RandomAccessIterator __i = __first + 1; __i != __last; ++__i)</span>
+<span class="lineNum"> 1776 </span> : {
+<span class="lineNum"> 1777 </span> : typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 1778 </span><span class="lineCov"> 51317 : __val = *__i;</span>
+<span class="lineNum"> 1779 </span><span class="lineCov"> 51317 : if (__comp(__val, *__first))</span>
+<span class="lineNum"> 1780 </span> : {
+<span class="lineNum"> 1781 </span><span class="lineCov"> 7625 : std::copy_backward(__first, __i, __i + 1);</span>
+<span class="lineNum"> 1782 </span><span class="lineCov"> 7625 : *__first = __val;</span>
+<span class="lineNum"> 1783 </span> : }
+<span class="lineNum"> 1784 </span> : else
+<span class="lineNum"> 1785 </span><span class="lineCov"> 43692 : std::__unguarded_linear_insert(__i, __val, __comp);</span>
+<span class="lineNum"> 1786 </span> : }
+<span class="lineNum"> 1787 </span> : }
+<span class="lineNum"> 1788 </span> :
+<span class="lineNum"> 1789 </span> : /// This is a helper function for the sort routine.
+<span class="lineNum"> 1790 </span> : template&lt;typename _RandomAccessIterator&gt;
+<span class="lineNum"> 1791 </span> : inline void
+<span class="lineNum"> 1792 </span> : __unguarded_insertion_sort(_RandomAccessIterator __first,
+<span class="lineNum"> 1793 </span><span class="lineCov"> 3 : _RandomAccessIterator __last)</span>
+<span class="lineNum"> 1794 </span> : {
+<span class="lineNum"> 1795 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 1796 </span> : _ValueType;
+<span class="lineNum"> 1797 </span> :
+<span class="lineNum"> 1798 </span><span class="lineCov"> 2101 : for (_RandomAccessIterator __i = __first; __i != __last; ++__i)</span>
+<span class="lineNum"> 1799 </span><span class="lineCov"> 2098 : std::__unguarded_linear_insert(__i, _ValueType(*__i));</span>
+<span class="lineNum"> 1800 </span><span class="lineCov"> 3 : }</span>
+<span class="lineNum"> 1801 </span> :
+<span class="lineNum"> 1802 </span> : /// This is a helper function for the sort routine.
+<span class="lineNum"> 1803 </span> : template&lt;typename _RandomAccessIterator, typename _Compare&gt;
+<span class="lineNum"> 1804 </span> : inline void
+<span class="lineNum"> 1805 </span> : __unguarded_insertion_sort(_RandomAccessIterator __first,
+<span class="lineNum"> 1806 </span><span class="lineCov"> 261 : _RandomAccessIterator __last, _Compare __comp)</span>
+<span class="lineNum"> 1807 </span> : {
+<span class="lineNum"> 1808 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 1809 </span> : _ValueType;
+<span class="lineNum"> 1810 </span> :
+<span class="lineNum"> 1811 </span><span class="lineCov"> 4732 : for (_RandomAccessIterator __i = __first; __i != __last; ++__i)</span>
+<span class="lineNum"> 1812 </span><span class="lineCov"> 4471 : std::__unguarded_linear_insert(__i, _ValueType(*__i), __comp);</span>
+<span class="lineNum"> 1813 </span><span class="lineCov"> 261 : }</span>
+<span class="lineNum"> 1814 </span> :
+<span class="lineNum"> 1815 </span> : /**
+<span class="lineNum"> 1816 </span> : * @doctodo
+<span class="lineNum"> 1817 </span> : * This controls some aspect of the sort routines.
+<span class="lineNum"> 1818 </span> : */
+<span class="lineNum"> 1819 </span> : enum { _S_threshold = 16 };
+<span class="lineNum"> 1820 </span> :
+<span class="lineNum"> 1821 </span> : /// This is a helper function for the sort routine.
+<span class="lineNum"> 1822 </span> : template&lt;typename _RandomAccessIterator&gt;
+<span class="lineNum"> 1823 </span> : void
+<span class="lineNum"> 1824 </span> : __final_insertion_sort(_RandomAccessIterator __first,
+<span class="lineNum"> 1825 </span><span class="lineCov"> 81 : _RandomAccessIterator __last)</span>
+<span class="lineNum"> 1826 </span> : {
+<span class="lineNum"> 1827 </span><span class="lineCov"> 81 : if (__last - __first &gt; int(_S_threshold))</span>
+<span class="lineNum"> 1828 </span> : {
+<span class="lineNum"> 1829 </span><span class="lineCov"> 3 : std::__insertion_sort(__first, __first + int(_S_threshold));</span>
+<span class="lineNum"> 1830 </span><span class="lineCov"> 3 : std::__unguarded_insertion_sort(__first + int(_S_threshold), __last);</span>
+<span class="lineNum"> 1831 </span> : }
+<span class="lineNum"> 1832 </span> : else
+<span class="lineNum"> 1833 </span><span class="lineCov"> 78 : std::__insertion_sort(__first, __last);</span>
+<span class="lineNum"> 1834 </span><span class="lineCov"> 81 : }</span>
+<span class="lineNum"> 1835 </span> :
+<span class="lineNum"> 1836 </span> : /// This is a helper function for the sort routine.
+<span class="lineNum"> 1837 </span> : template&lt;typename _RandomAccessIterator, typename _Compare&gt;
+<span class="lineNum"> 1838 </span> : void
+<span class="lineNum"> 1839 </span> : __final_insertion_sort(_RandomAccessIterator __first,
+<span class="lineNum"> 1840 </span><span class="lineCov"> 3938 : _RandomAccessIterator __last, _Compare __comp)</span>
+<span class="lineNum"> 1841 </span> : {
+<span class="lineNum"> 1842 </span><span class="lineCov"> 3938 : if (__last - __first &gt; int(_S_threshold))</span>
+<span class="lineNum"> 1843 </span> : {
+<span class="lineNum"> 1844 </span><span class="lineCov"> 261 : std::__insertion_sort(__first, __first + int(_S_threshold), __comp);</span>
+<span class="lineNum"> 1845 </span><span class="lineCov"> 261 : std::__unguarded_insertion_sort(__first + int(_S_threshold), __last,</span>
+<span class="lineNum"> 1846 </span> : __comp);
+<span class="lineNum"> 1847 </span> : }
+<span class="lineNum"> 1848 </span> : else
+<span class="lineNum"> 1849 </span><span class="lineCov"> 3677 : std::__insertion_sort(__first, __last, __comp);</span>
+<span class="lineNum"> 1850 </span><span class="lineCov"> 3938 : }</span>
+<span class="lineNum"> 1851 </span> :
+<span class="lineNum"> 1852 </span> : /// This is a helper function...
+<span class="lineNum"> 1853 </span> : template&lt;typename _RandomAccessIterator, typename _Tp&gt;
+<span class="lineNum"> 1854 </span> : _RandomAccessIterator
+<span class="lineNum"> 1855 </span> : __unguarded_partition(_RandomAccessIterator __first,
+<span class="lineNum"> 1856 </span><span class="lineCov"> 183 : _RandomAccessIterator __last, _Tp __pivot)</span>
+<span class="lineNum"> 1857 </span> : {
+<span class="lineNum"> 1858 </span><span class="lineCov"> 50 : while (true)</span>
+<span class="lineNum"> 1859 </span> : {
+<span class="lineNum"> 1860 </span><span class="lineCov"> 6596 : while (*__first &lt; __pivot)</span>
+<span class="lineNum"> 1861 </span><span class="lineCov"> 6230 : ++__first;</span>
+<span class="lineNum"> 1862 </span><span class="lineCov"> 183 : --__last;</span>
+<span class="lineNum"> 1863 </span><span class="lineCov"> 6480 : while (__pivot &lt; *__last)</span>
+<span class="lineNum"> 1864 </span><span class="lineCov"> 6114 : --__last;</span>
+<span class="lineNum"> 1865 </span><span class="lineCov"> 183 : if (!(__first &lt; __last))</span>
+<span class="lineNum"> 1866 </span><span class="lineCov"> 133 : return __first;</span>
+<span class="lineNum"> 1867 </span><span class="lineCov"> 50 : std::iter_swap(__first, __last);</span>
+<span class="lineNum"> 1868 </span><span class="lineCov"> 50 : ++__first;</span>
+<span class="lineNum"> 1869 </span> : }
+<span class="lineNum"> 1870 </span> : }
+<span class="lineNum"> 1871 </span> :
+<span class="lineNum"> 1872 </span> : /// This is a helper function...
+<span class="lineNum"> 1873 </span> : template&lt;typename _RandomAccessIterator, typename _Tp, typename _Compare&gt;
+<span class="lineNum"> 1874 </span> : _RandomAccessIterator
+<span class="lineNum"> 1875 </span> : __unguarded_partition(_RandomAccessIterator __first,
+<span class="lineNum"> 1876 </span> : _RandomAccessIterator __last,
+<span class="lineNum"> 1877 </span><span class="lineCov"> 7740 : _Tp __pivot, _Compare __comp)</span>
+<span class="lineNum"> 1878 </span> : {
+<span class="lineNum"> 1879 </span><span class="lineCov"> 7030 : while (true)</span>
+<span class="lineNum"> 1880 </span> : {
+<span class="lineNum"> 1881 </span><span class="lineCov"> 25088 : while (__comp(*__first, __pivot))</span>
+<span class="lineNum"> 1882 </span><span class="lineCov"> 9608 : ++__first;</span>
+<span class="lineNum"> 1883 </span><span class="lineCov"> 7740 : --__last;</span>
+<span class="lineNum"> 1884 </span><span class="lineCov"> 23207 : while (__comp(__pivot, *__last))</span>
+<span class="lineNum"> 1885 </span><span class="lineCov"> 7727 : --__last;</span>
+<span class="lineNum"> 1886 </span><span class="lineCov"> 7740 : if (!(__first &lt; __last))</span>
+<span class="lineNum"> 1887 </span><span class="lineCov"> 710 : return __first;</span>
+<span class="lineNum"> 1888 </span><span class="lineCov"> 7030 : std::iter_swap(__first, __last);</span>
+<span class="lineNum"> 1889 </span><span class="lineCov"> 7030 : ++__first;</span>
+<span class="lineNum"> 1890 </span> : }
+<span class="lineNum"> 1891 </span> : }
+<span class="lineNum"> 1892 </span> :
+<span class="lineNum"> 1893 </span> : /// This is a helper function for the sort routine.
+<span class="lineNum"> 1894 </span> : template&lt;typename _RandomAccessIterator, typename _Size&gt;
+<span class="lineNum"> 1895 </span> : void
+<span class="lineNum"> 1896 </span> : __introsort_loop(_RandomAccessIterator __first,
+<span class="lineNum"> 1897 </span> : _RandomAccessIterator __last,
+<span class="lineNum"> 1898 </span><span class="lineCov"> 214 : _Size __depth_limit)</span>
+<span class="lineNum"> 1899 </span> : {
+<span class="lineNum"> 1900 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 1901 </span> : _ValueType;
+<span class="lineNum"> 1902 </span> :
+<span class="lineNum"> 1903 </span><span class="lineCov"> 561 : while (__last - __first &gt; int(_S_threshold))</span>
+<span class="lineNum"> 1904 </span> : {
+<span class="lineNum"> 1905 </span><span class="lineCov"> 133 : if (__depth_limit == 0)</span>
+<span class="lineNum"> 1906 </span> : {
+<span class="lineNum"> 1907 </span><span class="lineNoCov"> 0 : _GLIBCXX_STD_P::partial_sort(__first, __last, __last);</span>
+<span class="lineNum"> 1908 </span><span class="lineNoCov"> 0 : return;</span>
+<span class="lineNum"> 1909 </span> : }
+<span class="lineNum"> 1910 </span><span class="lineCov"> 133 : --__depth_limit;</span>
+<span class="lineNum"> 1911 </span> : _RandomAccessIterator __cut =
+<span class="lineNum"> 1912 </span> : std::__unguarded_partition(__first, __last,
+<span class="lineNum"> 1913 </span> : _ValueType(std::__median(*__first,
+<span class="lineNum"> 1914 </span> : *(__first
+<span class="lineNum"> 1915 </span> : + (__last
+<span class="lineNum"> 1916 </span> : - __first)
+<span class="lineNum"> 1917 </span> : / 2),
+<span class="lineNum"> 1918 </span> : *(__last
+<span class="lineNum"> 1919 </span><span class="lineCov"> 133 : - 1))));</span>
+<span class="lineNum"> 1920 </span><span class="lineCov"> 133 : std::__introsort_loop(__cut, __last, __depth_limit);</span>
+<span class="lineNum"> 1921 </span><span class="lineCov"> 133 : __last = __cut;</span>
+<span class="lineNum"> 1922 </span> : }
+<span class="lineNum"> 1923 </span> : }
+<span class="lineNum"> 1924 </span> :
+<span class="lineNum"> 1925 </span> : /// This is a helper function for the sort routine.
+<span class="lineNum"> 1926 </span> : template&lt;typename _RandomAccessIterator, typename _Size, typename _Compare&gt;
+<span class="lineNum"> 1927 </span> : void
+<span class="lineNum"> 1928 </span> : __introsort_loop(_RandomAccessIterator __first,
+<span class="lineNum"> 1929 </span> : _RandomAccessIterator __last,
+<span class="lineNum"> 1930 </span><span class="lineCov"> 4648 : _Size __depth_limit, _Compare __comp)</span>
+<span class="lineNum"> 1931 </span> : {
+<span class="lineNum"> 1932 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 1933 </span> : _ValueType;
+<span class="lineNum"> 1934 </span> :
+<span class="lineNum"> 1935 </span><span class="lineCov"> 10006 : while (__last - __first &gt; int(_S_threshold))</span>
+<span class="lineNum"> 1936 </span> : {
+<span class="lineNum"> 1937 </span><span class="lineCov"> 710 : if (__depth_limit == 0)</span>
+<span class="lineNum"> 1938 </span> : {
+<span class="lineNum"> 1939 </span><span class="lineNoCov"> 0 : _GLIBCXX_STD_P::partial_sort(__first, __last, __last, __comp);</span>
+<span class="lineNum"> 1940 </span><span class="lineNoCov"> 0 : return;</span>
+<span class="lineNum"> 1941 </span> : }
+<span class="lineNum"> 1942 </span><span class="lineCov"> 710 : --__depth_limit;</span>
+<span class="lineNum"> 1943 </span> : _RandomAccessIterator __cut =
+<span class="lineNum"> 1944 </span> : std::__unguarded_partition(__first, __last,
+<span class="lineNum"> 1945 </span> : _ValueType(std::__median(*__first,
+<span class="lineNum"> 1946 </span> : *(__first
+<span class="lineNum"> 1947 </span> : + (__last
+<span class="lineNum"> 1948 </span> : - __first)
+<span class="lineNum"> 1949 </span> : / 2),
+<span class="lineNum"> 1950 </span> : *(__last - 1),
+<span class="lineNum"> 1951 </span> : __comp)),
+<span class="lineNum"> 1952 </span><span class="lineCov"> 710 : __comp);</span>
+<span class="lineNum"> 1953 </span><span class="lineCov"> 710 : std::__introsort_loop(__cut, __last, __depth_limit, __comp);</span>
+<span class="lineNum"> 1954 </span><span class="lineCov"> 710 : __last = __cut;</span>
+<span class="lineNum"> 1955 </span> : }
+<span class="lineNum"> 1956 </span> : }
+<span class="lineNum"> 1957 </span> :
+<span class="lineNum"> 1958 </span> : /// This is a helper function for the sort routines. Precondition: __n &gt; 0.
+<span class="lineNum"> 1959 </span> : template&lt;typename _Size&gt;
+<span class="lineNum"> 1960 </span> : inline _Size
+<span class="lineNum"> 1961 </span> : __lg(_Size __n)
+<span class="lineNum"> 1962 </span> : {
+<span class="lineNum"> 1963 </span> : _Size __k;
+<span class="lineNum"> 1964 </span> : for (__k = 0; __n != 0; __n &gt;&gt;= 1)
+<span class="lineNum"> 1965 </span> : ++__k;
+<span class="lineNum"> 1966 </span> : return __k - 1;
+<span class="lineNum"> 1967 </span> : }
+<span class="lineNum"> 1968 </span> :
+<span class="lineNum"> 1969 </span> : inline int
+<span class="lineNum"> 1970 </span><span class="lineCov"> 3946 : __lg(int __n)</span>
+<span class="lineNum"> 1971 </span><span class="lineCov"> 3946 : { return sizeof(int) * __CHAR_BIT__ - 1 - __builtin_clz(__n); }</span>
+<span class="lineNum"> 1972 </span> :
+<span class="lineNum"> 1973 </span> : inline long
+<span class="lineNum"> 1974 </span> : __lg(long __n)
+<span class="lineNum"> 1975 </span> : { return sizeof(long) * __CHAR_BIT__ - 1 - __builtin_clzl(__n); }
+<span class="lineNum"> 1976 </span> :
+<span class="lineNum"> 1977 </span> : inline long long
+<span class="lineNum"> 1978 </span> : __lg(long long __n)
+<span class="lineNum"> 1979 </span> : { return sizeof(long long) * __CHAR_BIT__ - 1 - __builtin_clzll(__n); }
+<span class="lineNum"> 1980 </span> :
+<span class="lineNum"> 1981 </span> : // sort
+<span class="lineNum"> 1982 </span> :
+<span class="lineNum"> 1983 </span> : template&lt;typename _RandomAccessIterator, typename _Size&gt;
+<span class="lineNum"> 1984 </span> : void
+<span class="lineNum"> 1985 </span> : __introselect(_RandomAccessIterator __first, _RandomAccessIterator __nth,
+<span class="lineNum"> 1986 </span> : _RandomAccessIterator __last, _Size __depth_limit)
+<span class="lineNum"> 1987 </span> : {
+<span class="lineNum"> 1988 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 1989 </span> : _ValueType;
+<span class="lineNum"> 1990 </span> :
+<span class="lineNum"> 1991 </span> : while (__last - __first &gt; 3)
+<span class="lineNum"> 1992 </span> : {
+<span class="lineNum"> 1993 </span> : if (__depth_limit == 0)
+<span class="lineNum"> 1994 </span> : {
+<span class="lineNum"> 1995 </span> : std::__heap_select(__first, __nth + 1, __last);
+<span class="lineNum"> 1996 </span> :
+<span class="lineNum"> 1997 </span> : // Place the nth largest element in its final position.
+<span class="lineNum"> 1998 </span> : std::iter_swap(__first, __nth);
+<span class="lineNum"> 1999 </span> : return;
+<span class="lineNum"> 2000 </span> : }
+<span class="lineNum"> 2001 </span> : --__depth_limit;
+<span class="lineNum"> 2002 </span> : _RandomAccessIterator __cut =
+<span class="lineNum"> 2003 </span> : std::__unguarded_partition(__first, __last,
+<span class="lineNum"> 2004 </span> : _ValueType(std::__median(*__first,
+<span class="lineNum"> 2005 </span> : *(__first
+<span class="lineNum"> 2006 </span> : + (__last
+<span class="lineNum"> 2007 </span> : - __first)
+<span class="lineNum"> 2008 </span> : / 2),
+<span class="lineNum"> 2009 </span> : *(__last
+<span class="lineNum"> 2010 </span> : - 1))));
+<span class="lineNum"> 2011 </span> : if (__cut &lt;= __nth)
+<span class="lineNum"> 2012 </span> : __first = __cut;
+<span class="lineNum"> 2013 </span> : else
+<span class="lineNum"> 2014 </span> : __last = __cut;
+<span class="lineNum"> 2015 </span> : }
+<span class="lineNum"> 2016 </span> : std::__insertion_sort(__first, __last);
+<span class="lineNum"> 2017 </span> : }
+<span class="lineNum"> 2018 </span> :
+<span class="lineNum"> 2019 </span> : template&lt;typename _RandomAccessIterator, typename _Size, typename _Compare&gt;
+<span class="lineNum"> 2020 </span> : void
+<span class="lineNum"> 2021 </span> : __introselect(_RandomAccessIterator __first, _RandomAccessIterator __nth,
+<span class="lineNum"> 2022 </span> : _RandomAccessIterator __last, _Size __depth_limit,
+<span class="lineNum"> 2023 </span> : _Compare __comp)
+<span class="lineNum"> 2024 </span> : {
+<span class="lineNum"> 2025 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 2026 </span> : _ValueType;
+<span class="lineNum"> 2027 </span> :
+<span class="lineNum"> 2028 </span> : while (__last - __first &gt; 3)
+<span class="lineNum"> 2029 </span> : {
+<span class="lineNum"> 2030 </span> : if (__depth_limit == 0)
+<span class="lineNum"> 2031 </span> : {
+<span class="lineNum"> 2032 </span> : std::__heap_select(__first, __nth + 1, __last, __comp);
+<span class="lineNum"> 2033 </span> : // Place the nth largest element in its final position.
+<span class="lineNum"> 2034 </span> : std::iter_swap(__first, __nth);
+<span class="lineNum"> 2035 </span> : return;
+<span class="lineNum"> 2036 </span> : }
+<span class="lineNum"> 2037 </span> : --__depth_limit;
+<span class="lineNum"> 2038 </span> : _RandomAccessIterator __cut =
+<span class="lineNum"> 2039 </span> : std::__unguarded_partition(__first, __last,
+<span class="lineNum"> 2040 </span> : _ValueType(std::__median(*__first,
+<span class="lineNum"> 2041 </span> : *(__first
+<span class="lineNum"> 2042 </span> : + (__last
+<span class="lineNum"> 2043 </span> : - __first)
+<span class="lineNum"> 2044 </span> : / 2),
+<span class="lineNum"> 2045 </span> : *(__last - 1),
+<span class="lineNum"> 2046 </span> : __comp)),
+<span class="lineNum"> 2047 </span> : __comp);
+<span class="lineNum"> 2048 </span> : if (__cut &lt;= __nth)
+<span class="lineNum"> 2049 </span> : __first = __cut;
+<span class="lineNum"> 2050 </span> : else
+<span class="lineNum"> 2051 </span> : __last = __cut;
+<span class="lineNum"> 2052 </span> : }
+<span class="lineNum"> 2053 </span> : std::__insertion_sort(__first, __last, __comp);
+<span class="lineNum"> 2054 </span> : }
+<span class="lineNum"> 2055 </span> :
+<span class="lineNum"> 2056 </span> : // nth_element
+<span class="lineNum"> 2057 </span> :
+<span class="lineNum"> 2058 </span> : /**
+<span class="lineNum"> 2059 </span> : * @brief Finds the first position in which @a val could be inserted
+<span class="lineNum"> 2060 </span> : * without changing the ordering.
+<span class="lineNum"> 2061 </span> : * @param first An iterator.
+<span class="lineNum"> 2062 </span> : * @param last Another iterator.
+<span class="lineNum"> 2063 </span> : * @param val The search term.
+<span class="lineNum"> 2064 </span> : * @return An iterator pointing to the first element &quot;not less
+<span class="lineNum"> 2065 </span> : * than&quot; @a val, or end() if every element is less than
+<span class="lineNum"> 2066 </span> : * @a val.
+<span class="lineNum"> 2067 </span> : * @ingroup binarysearch
+<span class="lineNum"> 2068 </span> : */
+<span class="lineNum"> 2069 </span> : template&lt;typename _ForwardIterator, typename _Tp&gt;
+<span class="lineNum"> 2070 </span> : _ForwardIterator
+<span class="lineNum"> 2071 </span> : lower_bound(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 2072 </span> : const _Tp&amp; __val)
+<span class="lineNum"> 2073 </span> : {
+<span class="lineNum"> 2074 </span> : typedef typename iterator_traits&lt;_ForwardIterator&gt;::value_type
+<span class="lineNum"> 2075 </span> : _ValueType;
+<span class="lineNum"> 2076 </span> : typedef typename iterator_traits&lt;_ForwardIterator&gt;::difference_type
+<span class="lineNum"> 2077 </span> : _DistanceType;
+<span class="lineNum"> 2078 </span> :
+<span class="lineNum"> 2079 </span> : // concept requirements
+<span class="lineNum"> 2080 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 2081 </span> : __glibcxx_function_requires(_LessThanOpConcept&lt;_ValueType, _Tp&gt;)
+<span class="lineNum"> 2082 </span> : __glibcxx_requires_partitioned_lower(__first, __last, __val);
+<span class="lineNum"> 2083 </span> :
+<span class="lineNum"> 2084 </span> : _DistanceType __len = std::distance(__first, __last);
+<span class="lineNum"> 2085 </span> : _DistanceType __half;
+<span class="lineNum"> 2086 </span> : _ForwardIterator __middle;
+<span class="lineNum"> 2087 </span> :
+<span class="lineNum"> 2088 </span> : while (__len &gt; 0)
+<span class="lineNum"> 2089 </span> : {
+<span class="lineNum"> 2090 </span> : __half = __len &gt;&gt; 1;
+<span class="lineNum"> 2091 </span> : __middle = __first;
+<span class="lineNum"> 2092 </span> : std::advance(__middle, __half);
+<span class="lineNum"> 2093 </span> : if (*__middle &lt; __val)
+<span class="lineNum"> 2094 </span> : {
+<span class="lineNum"> 2095 </span> : __first = __middle;
+<span class="lineNum"> 2096 </span> : ++__first;
+<span class="lineNum"> 2097 </span> : __len = __len - __half - 1;
+<span class="lineNum"> 2098 </span> : }
+<span class="lineNum"> 2099 </span> : else
+<span class="lineNum"> 2100 </span> : __len = __half;
+<span class="lineNum"> 2101 </span> : }
+<span class="lineNum"> 2102 </span> : return __first;
+<span class="lineNum"> 2103 </span> : }
+<span class="lineNum"> 2104 </span> :
+<span class="lineNum"> 2105 </span> : /**
+<span class="lineNum"> 2106 </span> : * @brief Finds the first position in which @a val could be inserted
+<span class="lineNum"> 2107 </span> : * without changing the ordering.
+<span class="lineNum"> 2108 </span> : * @param first An iterator.
+<span class="lineNum"> 2109 </span> : * @param last Another iterator.
+<span class="lineNum"> 2110 </span> : * @param val The search term.
+<span class="lineNum"> 2111 </span> : * @param comp A functor to use for comparisons.
+<span class="lineNum"> 2112 </span> : * @return An iterator pointing to the first element &quot;not less than&quot; @a val,
+<span class="lineNum"> 2113 </span> : * or end() if every element is less than @a val.
+<span class="lineNum"> 2114 </span> : * @ingroup binarysearch
+<span class="lineNum"> 2115 </span> : *
+<span class="lineNum"> 2116 </span> : * The comparison function should have the same effects on ordering as
+<span class="lineNum"> 2117 </span> : * the function used for the initial sort.
+<span class="lineNum"> 2118 </span> : */
+<span class="lineNum"> 2119 </span> : template&lt;typename _ForwardIterator, typename _Tp, typename _Compare&gt;
+<span class="lineNum"> 2120 </span> : _ForwardIterator
+<span class="lineNum"> 2121 </span> : lower_bound(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 2122 </span> : const _Tp&amp; __val, _Compare __comp)
+<span class="lineNum"> 2123 </span> : {
+<span class="lineNum"> 2124 </span> : typedef typename iterator_traits&lt;_ForwardIterator&gt;::value_type
+<span class="lineNum"> 2125 </span> : _ValueType;
+<span class="lineNum"> 2126 </span> : typedef typename iterator_traits&lt;_ForwardIterator&gt;::difference_type
+<span class="lineNum"> 2127 </span> : _DistanceType;
+<span class="lineNum"> 2128 </span> :
+<span class="lineNum"> 2129 </span> : // concept requirements
+<span class="lineNum"> 2130 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 2131 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 2132 </span> : _ValueType, _Tp&gt;)
+<span class="lineNum"> 2133 </span> : __glibcxx_requires_partitioned_lower_pred(__first, __last,
+<span class="lineNum"> 2134 </span> : __val, __comp);
+<span class="lineNum"> 2135 </span> :
+<span class="lineNum"> 2136 </span> : _DistanceType __len = std::distance(__first, __last);
+<span class="lineNum"> 2137 </span> : _DistanceType __half;
+<span class="lineNum"> 2138 </span> : _ForwardIterator __middle;
+<span class="lineNum"> 2139 </span> :
+<span class="lineNum"> 2140 </span> : while (__len &gt; 0)
+<span class="lineNum"> 2141 </span> : {
+<span class="lineNum"> 2142 </span> : __half = __len &gt;&gt; 1;
+<span class="lineNum"> 2143 </span> : __middle = __first;
+<span class="lineNum"> 2144 </span> : std::advance(__middle, __half);
+<span class="lineNum"> 2145 </span> : if (__comp(*__middle, __val))
+<span class="lineNum"> 2146 </span> : {
+<span class="lineNum"> 2147 </span> : __first = __middle;
+<span class="lineNum"> 2148 </span> : ++__first;
+<span class="lineNum"> 2149 </span> : __len = __len - __half - 1;
+<span class="lineNum"> 2150 </span> : }
+<span class="lineNum"> 2151 </span> : else
+<span class="lineNum"> 2152 </span> : __len = __half;
+<span class="lineNum"> 2153 </span> : }
+<span class="lineNum"> 2154 </span> : return __first;
+<span class="lineNum"> 2155 </span> : }
+<span class="lineNum"> 2156 </span> :
+<span class="lineNum"> 2157 </span> : /**
+<span class="lineNum"> 2158 </span> : * @brief Finds the last position in which @a val could be inserted
+<span class="lineNum"> 2159 </span> : * without changing the ordering.
+<span class="lineNum"> 2160 </span> : * @param first An iterator.
+<span class="lineNum"> 2161 </span> : * @param last Another iterator.
+<span class="lineNum"> 2162 </span> : * @param val The search term.
+<span class="lineNum"> 2163 </span> : * @return An iterator pointing to the first element greater than @a val,
+<span class="lineNum"> 2164 </span> : * or end() if no elements are greater than @a val.
+<span class="lineNum"> 2165 </span> : * @ingroup binarysearch
+<span class="lineNum"> 2166 </span> : */
+<span class="lineNum"> 2167 </span> : template&lt;typename _ForwardIterator, typename _Tp&gt;
+<span class="lineNum"> 2168 </span> : _ForwardIterator
+<span class="lineNum"> 2169 </span> : upper_bound(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 2170 </span> : const _Tp&amp; __val)
+<span class="lineNum"> 2171 </span> : {
+<span class="lineNum"> 2172 </span> : typedef typename iterator_traits&lt;_ForwardIterator&gt;::value_type
+<span class="lineNum"> 2173 </span> : _ValueType;
+<span class="lineNum"> 2174 </span> : typedef typename iterator_traits&lt;_ForwardIterator&gt;::difference_type
+<span class="lineNum"> 2175 </span> : _DistanceType;
+<span class="lineNum"> 2176 </span> :
+<span class="lineNum"> 2177 </span> : // concept requirements
+<span class="lineNum"> 2178 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 2179 </span> : __glibcxx_function_requires(_LessThanOpConcept&lt;_Tp, _ValueType&gt;)
+<span class="lineNum"> 2180 </span> : __glibcxx_requires_partitioned_upper(__first, __last, __val);
+<span class="lineNum"> 2181 </span> :
+<span class="lineNum"> 2182 </span> : _DistanceType __len = std::distance(__first, __last);
+<span class="lineNum"> 2183 </span> : _DistanceType __half;
+<span class="lineNum"> 2184 </span> : _ForwardIterator __middle;
+<span class="lineNum"> 2185 </span> :
+<span class="lineNum"> 2186 </span> : while (__len &gt; 0)
+<span class="lineNum"> 2187 </span> : {
+<span class="lineNum"> 2188 </span> : __half = __len &gt;&gt; 1;
+<span class="lineNum"> 2189 </span> : __middle = __first;
+<span class="lineNum"> 2190 </span> : std::advance(__middle, __half);
+<span class="lineNum"> 2191 </span> : if (__val &lt; *__middle)
+<span class="lineNum"> 2192 </span> : __len = __half;
+<span class="lineNum"> 2193 </span> : else
+<span class="lineNum"> 2194 </span> : {
+<span class="lineNum"> 2195 </span> : __first = __middle;
+<span class="lineNum"> 2196 </span> : ++__first;
+<span class="lineNum"> 2197 </span> : __len = __len - __half - 1;
+<span class="lineNum"> 2198 </span> : }
+<span class="lineNum"> 2199 </span> : }
+<span class="lineNum"> 2200 </span> : return __first;
+<span class="lineNum"> 2201 </span> : }
+<span class="lineNum"> 2202 </span> :
+<span class="lineNum"> 2203 </span> : /**
+<span class="lineNum"> 2204 </span> : * @brief Finds the last position in which @a val could be inserted
+<span class="lineNum"> 2205 </span> : * without changing the ordering.
+<span class="lineNum"> 2206 </span> : * @param first An iterator.
+<span class="lineNum"> 2207 </span> : * @param last Another iterator.
+<span class="lineNum"> 2208 </span> : * @param val The search term.
+<span class="lineNum"> 2209 </span> : * @param comp A functor to use for comparisons.
+<span class="lineNum"> 2210 </span> : * @return An iterator pointing to the first element greater than @a val,
+<span class="lineNum"> 2211 </span> : * or end() if no elements are greater than @a val.
+<span class="lineNum"> 2212 </span> : * @ingroup binarysearch
+<span class="lineNum"> 2213 </span> : *
+<span class="lineNum"> 2214 </span> : * The comparison function should have the same effects on ordering as
+<span class="lineNum"> 2215 </span> : * the function used for the initial sort.
+<span class="lineNum"> 2216 </span> : */
+<span class="lineNum"> 2217 </span> : template&lt;typename _ForwardIterator, typename _Tp, typename _Compare&gt;
+<span class="lineNum"> 2218 </span> : _ForwardIterator
+<span class="lineNum"> 2219 </span> : upper_bound(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 2220 </span> : const _Tp&amp; __val, _Compare __comp)
+<span class="lineNum"> 2221 </span> : {
+<span class="lineNum"> 2222 </span> : typedef typename iterator_traits&lt;_ForwardIterator&gt;::value_type
+<span class="lineNum"> 2223 </span> : _ValueType;
+<span class="lineNum"> 2224 </span> : typedef typename iterator_traits&lt;_ForwardIterator&gt;::difference_type
+<span class="lineNum"> 2225 </span> : _DistanceType;
+<span class="lineNum"> 2226 </span> :
+<span class="lineNum"> 2227 </span> : // concept requirements
+<span class="lineNum"> 2228 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 2229 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 2230 </span> : _Tp, _ValueType&gt;)
+<span class="lineNum"> 2231 </span> : __glibcxx_requires_partitioned_upper_pred(__first, __last,
+<span class="lineNum"> 2232 </span> : __val, __comp);
+<span class="lineNum"> 2233 </span> :
+<span class="lineNum"> 2234 </span> : _DistanceType __len = std::distance(__first, __last);
+<span class="lineNum"> 2235 </span> : _DistanceType __half;
+<span class="lineNum"> 2236 </span> : _ForwardIterator __middle;
+<span class="lineNum"> 2237 </span> :
+<span class="lineNum"> 2238 </span> : while (__len &gt; 0)
+<span class="lineNum"> 2239 </span> : {
+<span class="lineNum"> 2240 </span> : __half = __len &gt;&gt; 1;
+<span class="lineNum"> 2241 </span> : __middle = __first;
+<span class="lineNum"> 2242 </span> : std::advance(__middle, __half);
+<span class="lineNum"> 2243 </span> : if (__comp(__val, *__middle))
+<span class="lineNum"> 2244 </span> : __len = __half;
+<span class="lineNum"> 2245 </span> : else
+<span class="lineNum"> 2246 </span> : {
+<span class="lineNum"> 2247 </span> : __first = __middle;
+<span class="lineNum"> 2248 </span> : ++__first;
+<span class="lineNum"> 2249 </span> : __len = __len - __half - 1;
+<span class="lineNum"> 2250 </span> : }
+<span class="lineNum"> 2251 </span> : }
+<span class="lineNum"> 2252 </span> : return __first;
+<span class="lineNum"> 2253 </span> : }
+<span class="lineNum"> 2254 </span> :
+<span class="lineNum"> 2255 </span> : /**
+<span class="lineNum"> 2256 </span> : * @brief Finds the largest subrange in which @a val could be inserted
+<span class="lineNum"> 2257 </span> : * at any place in it without changing the ordering.
+<span class="lineNum"> 2258 </span> : * @param first An iterator.
+<span class="lineNum"> 2259 </span> : * @param last Another iterator.
+<span class="lineNum"> 2260 </span> : * @param val The search term.
+<span class="lineNum"> 2261 </span> : * @return An pair of iterators defining the subrange.
+<span class="lineNum"> 2262 </span> : * @ingroup binarysearch
+<span class="lineNum"> 2263 </span> : *
+<span class="lineNum"> 2264 </span> : * This is equivalent to
+<span class="lineNum"> 2265 </span> : * @code
+<span class="lineNum"> 2266 </span> : * std::make_pair(lower_bound(first, last, val),
+<span class="lineNum"> 2267 </span> : * upper_bound(first, last, val))
+<span class="lineNum"> 2268 </span> : * @endcode
+<span class="lineNum"> 2269 </span> : * but does not actually call those functions.
+<span class="lineNum"> 2270 </span> : */
+<span class="lineNum"> 2271 </span> : template&lt;typename _ForwardIterator, typename _Tp&gt;
+<span class="lineNum"> 2272 </span> : pair&lt;_ForwardIterator, _ForwardIterator&gt;
+<span class="lineNum"> 2273 </span> : equal_range(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 2274 </span> : const _Tp&amp; __val)
+<span class="lineNum"> 2275 </span> : {
+<span class="lineNum"> 2276 </span> : typedef typename iterator_traits&lt;_ForwardIterator&gt;::value_type
+<span class="lineNum"> 2277 </span> : _ValueType;
+<span class="lineNum"> 2278 </span> : typedef typename iterator_traits&lt;_ForwardIterator&gt;::difference_type
+<span class="lineNum"> 2279 </span> : _DistanceType;
+<span class="lineNum"> 2280 </span> :
+<span class="lineNum"> 2281 </span> : // concept requirements
+<span class="lineNum"> 2282 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 2283 </span> : __glibcxx_function_requires(_LessThanOpConcept&lt;_ValueType, _Tp&gt;)
+<span class="lineNum"> 2284 </span> : __glibcxx_function_requires(_LessThanOpConcept&lt;_Tp, _ValueType&gt;)
+<span class="lineNum"> 2285 </span> : __glibcxx_requires_partitioned_lower(__first, __last, __val);
+<span class="lineNum"> 2286 </span> : __glibcxx_requires_partitioned_upper(__first, __last, __val);
+<span class="lineNum"> 2287 </span> :
+<span class="lineNum"> 2288 </span> : _DistanceType __len = std::distance(__first, __last);
+<span class="lineNum"> 2289 </span> : _DistanceType __half;
+<span class="lineNum"> 2290 </span> : _ForwardIterator __middle, __left, __right;
+<span class="lineNum"> 2291 </span> :
+<span class="lineNum"> 2292 </span> : while (__len &gt; 0)
+<span class="lineNum"> 2293 </span> : {
+<span class="lineNum"> 2294 </span> : __half = __len &gt;&gt; 1;
+<span class="lineNum"> 2295 </span> : __middle = __first;
+<span class="lineNum"> 2296 </span> : std::advance(__middle, __half);
+<span class="lineNum"> 2297 </span> : if (*__middle &lt; __val)
+<span class="lineNum"> 2298 </span> : {
+<span class="lineNum"> 2299 </span> : __first = __middle;
+<span class="lineNum"> 2300 </span> : ++__first;
+<span class="lineNum"> 2301 </span> : __len = __len - __half - 1;
+<span class="lineNum"> 2302 </span> : }
+<span class="lineNum"> 2303 </span> : else if (__val &lt; *__middle)
+<span class="lineNum"> 2304 </span> : __len = __half;
+<span class="lineNum"> 2305 </span> : else
+<span class="lineNum"> 2306 </span> : {
+<span class="lineNum"> 2307 </span> : __left = std::lower_bound(__first, __middle, __val);
+<span class="lineNum"> 2308 </span> : std::advance(__first, __len);
+<span class="lineNum"> 2309 </span> : __right = std::upper_bound(++__middle, __first, __val);
+<span class="lineNum"> 2310 </span> : return pair&lt;_ForwardIterator, _ForwardIterator&gt;(__left, __right);
+<span class="lineNum"> 2311 </span> : }
+<span class="lineNum"> 2312 </span> : }
+<span class="lineNum"> 2313 </span> : return pair&lt;_ForwardIterator, _ForwardIterator&gt;(__first, __first);
+<span class="lineNum"> 2314 </span> : }
+<span class="lineNum"> 2315 </span> :
+<span class="lineNum"> 2316 </span> : /**
+<span class="lineNum"> 2317 </span> : * @brief Finds the largest subrange in which @a val could be inserted
+<span class="lineNum"> 2318 </span> : * at any place in it without changing the ordering.
+<span class="lineNum"> 2319 </span> : * @param first An iterator.
+<span class="lineNum"> 2320 </span> : * @param last Another iterator.
+<span class="lineNum"> 2321 </span> : * @param val The search term.
+<span class="lineNum"> 2322 </span> : * @param comp A functor to use for comparisons.
+<span class="lineNum"> 2323 </span> : * @return An pair of iterators defining the subrange.
+<span class="lineNum"> 2324 </span> : * @ingroup binarysearch
+<span class="lineNum"> 2325 </span> : *
+<span class="lineNum"> 2326 </span> : * This is equivalent to
+<span class="lineNum"> 2327 </span> : * @code
+<span class="lineNum"> 2328 </span> : * std::make_pair(lower_bound(first, last, val, comp),
+<span class="lineNum"> 2329 </span> : * upper_bound(first, last, val, comp))
+<span class="lineNum"> 2330 </span> : * @endcode
+<span class="lineNum"> 2331 </span> : * but does not actually call those functions.
+<span class="lineNum"> 2332 </span> : */
+<span class="lineNum"> 2333 </span> : template&lt;typename _ForwardIterator, typename _Tp, typename _Compare&gt;
+<span class="lineNum"> 2334 </span> : pair&lt;_ForwardIterator, _ForwardIterator&gt;
+<span class="lineNum"> 2335 </span> : equal_range(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 2336 </span> : const _Tp&amp; __val,
+<span class="lineNum"> 2337 </span> : _Compare __comp)
+<span class="lineNum"> 2338 </span> : {
+<span class="lineNum"> 2339 </span> : typedef typename iterator_traits&lt;_ForwardIterator&gt;::value_type
+<span class="lineNum"> 2340 </span> : _ValueType;
+<span class="lineNum"> 2341 </span> : typedef typename iterator_traits&lt;_ForwardIterator&gt;::difference_type
+<span class="lineNum"> 2342 </span> : _DistanceType;
+<span class="lineNum"> 2343 </span> :
+<span class="lineNum"> 2344 </span> : // concept requirements
+<span class="lineNum"> 2345 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 2346 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 2347 </span> : _ValueType, _Tp&gt;)
+<span class="lineNum"> 2348 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 2349 </span> : _Tp, _ValueType&gt;)
+<span class="lineNum"> 2350 </span> : __glibcxx_requires_partitioned_lower_pred(__first, __last,
+<span class="lineNum"> 2351 </span> : __val, __comp);
+<span class="lineNum"> 2352 </span> : __glibcxx_requires_partitioned_upper_pred(__first, __last,
+<span class="lineNum"> 2353 </span> : __val, __comp);
+<span class="lineNum"> 2354 </span> :
+<span class="lineNum"> 2355 </span> : _DistanceType __len = std::distance(__first, __last);
+<span class="lineNum"> 2356 </span> : _DistanceType __half;
+<span class="lineNum"> 2357 </span> : _ForwardIterator __middle, __left, __right;
+<span class="lineNum"> 2358 </span> :
+<span class="lineNum"> 2359 </span> : while (__len &gt; 0)
+<span class="lineNum"> 2360 </span> : {
+<span class="lineNum"> 2361 </span> : __half = __len &gt;&gt; 1;
+<span class="lineNum"> 2362 </span> : __middle = __first;
+<span class="lineNum"> 2363 </span> : std::advance(__middle, __half);
+<span class="lineNum"> 2364 </span> : if (__comp(*__middle, __val))
+<span class="lineNum"> 2365 </span> : {
+<span class="lineNum"> 2366 </span> : __first = __middle;
+<span class="lineNum"> 2367 </span> : ++__first;
+<span class="lineNum"> 2368 </span> : __len = __len - __half - 1;
+<span class="lineNum"> 2369 </span> : }
+<span class="lineNum"> 2370 </span> : else if (__comp(__val, *__middle))
+<span class="lineNum"> 2371 </span> : __len = __half;
+<span class="lineNum"> 2372 </span> : else
+<span class="lineNum"> 2373 </span> : {
+<span class="lineNum"> 2374 </span> : __left = std::lower_bound(__first, __middle, __val, __comp);
+<span class="lineNum"> 2375 </span> : std::advance(__first, __len);
+<span class="lineNum"> 2376 </span> : __right = std::upper_bound(++__middle, __first, __val, __comp);
+<span class="lineNum"> 2377 </span> : return pair&lt;_ForwardIterator, _ForwardIterator&gt;(__left, __right);
+<span class="lineNum"> 2378 </span> : }
+<span class="lineNum"> 2379 </span> : }
+<span class="lineNum"> 2380 </span> : return pair&lt;_ForwardIterator, _ForwardIterator&gt;(__first, __first);
+<span class="lineNum"> 2381 </span> : }
+<span class="lineNum"> 2382 </span> :
+<span class="lineNum"> 2383 </span> : /**
+<span class="lineNum"> 2384 </span> : * @brief Determines whether an element exists in a range.
+<span class="lineNum"> 2385 </span> : * @param first An iterator.
+<span class="lineNum"> 2386 </span> : * @param last Another iterator.
+<span class="lineNum"> 2387 </span> : * @param val The search term.
+<span class="lineNum"> 2388 </span> : * @return True if @a val (or its equivalent) is in [@a first,@a last ].
+<span class="lineNum"> 2389 </span> : * @ingroup binarysearch
+<span class="lineNum"> 2390 </span> : *
+<span class="lineNum"> 2391 </span> : * Note that this does not actually return an iterator to @a val. For
+<span class="lineNum"> 2392 </span> : * that, use std::find or a container's specialized find member functions.
+<span class="lineNum"> 2393 </span> : */
+<span class="lineNum"> 2394 </span> : template&lt;typename _ForwardIterator, typename _Tp&gt;
+<span class="lineNum"> 2395 </span> : bool
+<span class="lineNum"> 2396 </span> : binary_search(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 2397 </span> : const _Tp&amp; __val)
+<span class="lineNum"> 2398 </span> : {
+<span class="lineNum"> 2399 </span> : typedef typename iterator_traits&lt;_ForwardIterator&gt;::value_type
+<span class="lineNum"> 2400 </span> : _ValueType;
+<span class="lineNum"> 2401 </span> :
+<span class="lineNum"> 2402 </span> : // concept requirements
+<span class="lineNum"> 2403 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 2404 </span> : __glibcxx_function_requires(_LessThanOpConcept&lt;_Tp, _ValueType&gt;)
+<span class="lineNum"> 2405 </span> : __glibcxx_requires_partitioned_lower(__first, __last, __val);
+<span class="lineNum"> 2406 </span> : __glibcxx_requires_partitioned_upper(__first, __last, __val);
+<span class="lineNum"> 2407 </span> :
+<span class="lineNum"> 2408 </span> : _ForwardIterator __i = std::lower_bound(__first, __last, __val);
+<span class="lineNum"> 2409 </span> : return __i != __last &amp;&amp; !(__val &lt; *__i);
+<span class="lineNum"> 2410 </span> : }
+<span class="lineNum"> 2411 </span> :
+<span class="lineNum"> 2412 </span> : /**
+<span class="lineNum"> 2413 </span> : * @brief Determines whether an element exists in a range.
+<span class="lineNum"> 2414 </span> : * @param first An iterator.
+<span class="lineNum"> 2415 </span> : * @param last Another iterator.
+<span class="lineNum"> 2416 </span> : * @param val The search term.
+<span class="lineNum"> 2417 </span> : * @param comp A functor to use for comparisons.
+<span class="lineNum"> 2418 </span> : * @return True if @a val (or its equivalent) is in [@a first,@a last ].
+<span class="lineNum"> 2419 </span> : * @ingroup binarysearch
+<span class="lineNum"> 2420 </span> : *
+<span class="lineNum"> 2421 </span> : * Note that this does not actually return an iterator to @a val. For
+<span class="lineNum"> 2422 </span> : * that, use std::find or a container's specialized find member functions.
+<span class="lineNum"> 2423 </span> : *
+<span class="lineNum"> 2424 </span> : * The comparison function should have the same effects on ordering as
+<span class="lineNum"> 2425 </span> : * the function used for the initial sort.
+<span class="lineNum"> 2426 </span> : */
+<span class="lineNum"> 2427 </span> : template&lt;typename _ForwardIterator, typename _Tp, typename _Compare&gt;
+<span class="lineNum"> 2428 </span> : bool
+<span class="lineNum"> 2429 </span> : binary_search(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 2430 </span> : const _Tp&amp; __val, _Compare __comp)
+<span class="lineNum"> 2431 </span> : {
+<span class="lineNum"> 2432 </span> : typedef typename iterator_traits&lt;_ForwardIterator&gt;::value_type
+<span class="lineNum"> 2433 </span> : _ValueType;
+<span class="lineNum"> 2434 </span> :
+<span class="lineNum"> 2435 </span> : // concept requirements
+<span class="lineNum"> 2436 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 2437 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 2438 </span> : _Tp, _ValueType&gt;)
+<span class="lineNum"> 2439 </span> : __glibcxx_requires_partitioned_lower_pred(__first, __last,
+<span class="lineNum"> 2440 </span> : __val, __comp);
+<span class="lineNum"> 2441 </span> : __glibcxx_requires_partitioned_upper_pred(__first, __last,
+<span class="lineNum"> 2442 </span> : __val, __comp);
+<span class="lineNum"> 2443 </span> :
+<span class="lineNum"> 2444 </span> : _ForwardIterator __i = std::lower_bound(__first, __last, __val, __comp);
+<span class="lineNum"> 2445 </span> : return __i != __last &amp;&amp; !bool(__comp(__val, *__i));
+<span class="lineNum"> 2446 </span> : }
+<span class="lineNum"> 2447 </span> :
+<span class="lineNum"> 2448 </span> : // merge
+<span class="lineNum"> 2449 </span> :
+<span class="lineNum"> 2450 </span> : /// This is a helper function for the merge routines.
+<span class="lineNum"> 2451 </span> : template&lt;typename _BidirectionalIterator1, typename _BidirectionalIterator2,
+<span class="lineNum"> 2452 </span> : typename _BidirectionalIterator3&gt;
+<span class="lineNum"> 2453 </span> : _BidirectionalIterator3
+<span class="lineNum"> 2454 </span> : __merge_backward(_BidirectionalIterator1 __first1,
+<span class="lineNum"> 2455 </span> : _BidirectionalIterator1 __last1,
+<span class="lineNum"> 2456 </span> : _BidirectionalIterator2 __first2,
+<span class="lineNum"> 2457 </span> : _BidirectionalIterator2 __last2,
+<span class="lineNum"> 2458 </span> : _BidirectionalIterator3 __result)
+<span class="lineNum"> 2459 </span> : {
+<span class="lineNum"> 2460 </span> : if (__first1 == __last1)
+<span class="lineNum"> 2461 </span> : return std::copy_backward(__first2, __last2, __result);
+<span class="lineNum"> 2462 </span> : if (__first2 == __last2)
+<span class="lineNum"> 2463 </span> : return std::copy_backward(__first1, __last1, __result);
+<span class="lineNum"> 2464 </span> : --__last1;
+<span class="lineNum"> 2465 </span> : --__last2;
+<span class="lineNum"> 2466 </span> : while (true)
+<span class="lineNum"> 2467 </span> : {
+<span class="lineNum"> 2468 </span> : if (*__last2 &lt; *__last1)
+<span class="lineNum"> 2469 </span> : {
+<span class="lineNum"> 2470 </span> : *--__result = *__last1;
+<span class="lineNum"> 2471 </span> : if (__first1 == __last1)
+<span class="lineNum"> 2472 </span> : return std::copy_backward(__first2, ++__last2, __result);
+<span class="lineNum"> 2473 </span> : --__last1;
+<span class="lineNum"> 2474 </span> : }
+<span class="lineNum"> 2475 </span> : else
+<span class="lineNum"> 2476 </span> : {
+<span class="lineNum"> 2477 </span> : *--__result = *__last2;
+<span class="lineNum"> 2478 </span> : if (__first2 == __last2)
+<span class="lineNum"> 2479 </span> : return std::copy_backward(__first1, ++__last1, __result);
+<span class="lineNum"> 2480 </span> : --__last2;
+<span class="lineNum"> 2481 </span> : }
+<span class="lineNum"> 2482 </span> : }
+<span class="lineNum"> 2483 </span> : }
+<span class="lineNum"> 2484 </span> :
+<span class="lineNum"> 2485 </span> : /// This is a helper function for the merge routines.
+<span class="lineNum"> 2486 </span> : template&lt;typename _BidirectionalIterator1, typename _BidirectionalIterator2,
+<span class="lineNum"> 2487 </span> : typename _BidirectionalIterator3, typename _Compare&gt;
+<span class="lineNum"> 2488 </span> : _BidirectionalIterator3
+<span class="lineNum"> 2489 </span> : __merge_backward(_BidirectionalIterator1 __first1,
+<span class="lineNum"> 2490 </span> : _BidirectionalIterator1 __last1,
+<span class="lineNum"> 2491 </span> : _BidirectionalIterator2 __first2,
+<span class="lineNum"> 2492 </span> : _BidirectionalIterator2 __last2,
+<span class="lineNum"> 2493 </span> : _BidirectionalIterator3 __result,
+<span class="lineNum"> 2494 </span> : _Compare __comp)
+<span class="lineNum"> 2495 </span> : {
+<span class="lineNum"> 2496 </span> : if (__first1 == __last1)
+<span class="lineNum"> 2497 </span> : return std::copy_backward(__first2, __last2, __result);
+<span class="lineNum"> 2498 </span> : if (__first2 == __last2)
+<span class="lineNum"> 2499 </span> : return std::copy_backward(__first1, __last1, __result);
+<span class="lineNum"> 2500 </span> : --__last1;
+<span class="lineNum"> 2501 </span> : --__last2;
+<span class="lineNum"> 2502 </span> : while (true)
+<span class="lineNum"> 2503 </span> : {
+<span class="lineNum"> 2504 </span> : if (__comp(*__last2, *__last1))
+<span class="lineNum"> 2505 </span> : {
+<span class="lineNum"> 2506 </span> : *--__result = *__last1;
+<span class="lineNum"> 2507 </span> : if (__first1 == __last1)
+<span class="lineNum"> 2508 </span> : return std::copy_backward(__first2, ++__last2, __result);
+<span class="lineNum"> 2509 </span> : --__last1;
+<span class="lineNum"> 2510 </span> : }
+<span class="lineNum"> 2511 </span> : else
+<span class="lineNum"> 2512 </span> : {
+<span class="lineNum"> 2513 </span> : *--__result = *__last2;
+<span class="lineNum"> 2514 </span> : if (__first2 == __last2)
+<span class="lineNum"> 2515 </span> : return std::copy_backward(__first1, ++__last1, __result);
+<span class="lineNum"> 2516 </span> : --__last2;
+<span class="lineNum"> 2517 </span> : }
+<span class="lineNum"> 2518 </span> : }
+<span class="lineNum"> 2519 </span> : }
+<span class="lineNum"> 2520 </span> :
+<span class="lineNum"> 2521 </span> : /// This is a helper function for the merge routines.
+<span class="lineNum"> 2522 </span> : template&lt;typename _BidirectionalIterator1, typename _BidirectionalIterator2,
+<span class="lineNum"> 2523 </span> : typename _Distance&gt;
+<span class="lineNum"> 2524 </span> : _BidirectionalIterator1
+<span class="lineNum"> 2525 </span> : __rotate_adaptive(_BidirectionalIterator1 __first,
+<span class="lineNum"> 2526 </span> : _BidirectionalIterator1 __middle,
+<span class="lineNum"> 2527 </span> : _BidirectionalIterator1 __last,
+<span class="lineNum"> 2528 </span> : _Distance __len1, _Distance __len2,
+<span class="lineNum"> 2529 </span> : _BidirectionalIterator2 __buffer,
+<span class="lineNum"> 2530 </span> : _Distance __buffer_size)
+<span class="lineNum"> 2531 </span> : {
+<span class="lineNum"> 2532 </span> : _BidirectionalIterator2 __buffer_end;
+<span class="lineNum"> 2533 </span> : if (__len1 &gt; __len2 &amp;&amp; __len2 &lt;= __buffer_size)
+<span class="lineNum"> 2534 </span> : {
+<span class="lineNum"> 2535 </span> : __buffer_end = std::copy(__middle, __last, __buffer);
+<span class="lineNum"> 2536 </span> : std::copy_backward(__first, __middle, __last);
+<span class="lineNum"> 2537 </span> : return std::copy(__buffer, __buffer_end, __first);
+<span class="lineNum"> 2538 </span> : }
+<span class="lineNum"> 2539 </span> : else if (__len1 &lt;= __buffer_size)
+<span class="lineNum"> 2540 </span> : {
+<span class="lineNum"> 2541 </span> : __buffer_end = std::copy(__first, __middle, __buffer);
+<span class="lineNum"> 2542 </span> : std::copy(__middle, __last, __first);
+<span class="lineNum"> 2543 </span> : return std::copy_backward(__buffer, __buffer_end, __last);
+<span class="lineNum"> 2544 </span> : }
+<span class="lineNum"> 2545 </span> : else
+<span class="lineNum"> 2546 </span> : {
+<span class="lineNum"> 2547 </span> : std::rotate(__first, __middle, __last);
+<span class="lineNum"> 2548 </span> : std::advance(__first, std::distance(__middle, __last));
+<span class="lineNum"> 2549 </span> : return __first;
+<span class="lineNum"> 2550 </span> : }
+<span class="lineNum"> 2551 </span> : }
+<span class="lineNum"> 2552 </span> :
+<span class="lineNum"> 2553 </span> : /// This is a helper function for the merge routines.
+<span class="lineNum"> 2554 </span> : template&lt;typename _BidirectionalIterator, typename _Distance,
+<span class="lineNum"> 2555 </span> : typename _Pointer&gt;
+<span class="lineNum"> 2556 </span> : void
+<span class="lineNum"> 2557 </span> : __merge_adaptive(_BidirectionalIterator __first,
+<span class="lineNum"> 2558 </span> : _BidirectionalIterator __middle,
+<span class="lineNum"> 2559 </span> : _BidirectionalIterator __last,
+<span class="lineNum"> 2560 </span> : _Distance __len1, _Distance __len2,
+<span class="lineNum"> 2561 </span> : _Pointer __buffer, _Distance __buffer_size)
+<span class="lineNum"> 2562 </span> : {
+<span class="lineNum"> 2563 </span> : if (__len1 &lt;= __len2 &amp;&amp; __len1 &lt;= __buffer_size)
+<span class="lineNum"> 2564 </span> : {
+<span class="lineNum"> 2565 </span> : _Pointer __buffer_end = std::copy(__first, __middle, __buffer);
+<span class="lineNum"> 2566 </span> : _GLIBCXX_STD_P::merge(__buffer, __buffer_end, __middle, __last,
+<span class="lineNum"> 2567 </span> : __first);
+<span class="lineNum"> 2568 </span> : }
+<span class="lineNum"> 2569 </span> : else if (__len2 &lt;= __buffer_size)
+<span class="lineNum"> 2570 </span> : {
+<span class="lineNum"> 2571 </span> : _Pointer __buffer_end = std::copy(__middle, __last, __buffer);
+<span class="lineNum"> 2572 </span> : std::__merge_backward(__first, __middle, __buffer,
+<span class="lineNum"> 2573 </span> : __buffer_end, __last);
+<span class="lineNum"> 2574 </span> : }
+<span class="lineNum"> 2575 </span> : else
+<span class="lineNum"> 2576 </span> : {
+<span class="lineNum"> 2577 </span> : _BidirectionalIterator __first_cut = __first;
+<span class="lineNum"> 2578 </span> : _BidirectionalIterator __second_cut = __middle;
+<span class="lineNum"> 2579 </span> : _Distance __len11 = 0;
+<span class="lineNum"> 2580 </span> : _Distance __len22 = 0;
+<span class="lineNum"> 2581 </span> : if (__len1 &gt; __len2)
+<span class="lineNum"> 2582 </span> : {
+<span class="lineNum"> 2583 </span> : __len11 = __len1 / 2;
+<span class="lineNum"> 2584 </span> : std::advance(__first_cut, __len11);
+<span class="lineNum"> 2585 </span> : __second_cut = std::lower_bound(__middle, __last,
+<span class="lineNum"> 2586 </span> : *__first_cut);
+<span class="lineNum"> 2587 </span> : __len22 = std::distance(__middle, __second_cut);
+<span class="lineNum"> 2588 </span> : }
+<span class="lineNum"> 2589 </span> : else
+<span class="lineNum"> 2590 </span> : {
+<span class="lineNum"> 2591 </span> : __len22 = __len2 / 2;
+<span class="lineNum"> 2592 </span> : std::advance(__second_cut, __len22);
+<span class="lineNum"> 2593 </span> : __first_cut = std::upper_bound(__first, __middle,
+<span class="lineNum"> 2594 </span> : *__second_cut);
+<span class="lineNum"> 2595 </span> : __len11 = std::distance(__first, __first_cut);
+<span class="lineNum"> 2596 </span> : }
+<span class="lineNum"> 2597 </span> : _BidirectionalIterator __new_middle =
+<span class="lineNum"> 2598 </span> : std::__rotate_adaptive(__first_cut, __middle, __second_cut,
+<span class="lineNum"> 2599 </span> : __len1 - __len11, __len22, __buffer,
+<span class="lineNum"> 2600 </span> : __buffer_size);
+<span class="lineNum"> 2601 </span> : std::__merge_adaptive(__first, __first_cut, __new_middle, __len11,
+<span class="lineNum"> 2602 </span> : __len22, __buffer, __buffer_size);
+<span class="lineNum"> 2603 </span> : std::__merge_adaptive(__new_middle, __second_cut, __last,
+<span class="lineNum"> 2604 </span> : __len1 - __len11,
+<span class="lineNum"> 2605 </span> : __len2 - __len22, __buffer, __buffer_size);
+<span class="lineNum"> 2606 </span> : }
+<span class="lineNum"> 2607 </span> : }
+<span class="lineNum"> 2608 </span> :
+<span class="lineNum"> 2609 </span> : /// This is a helper function for the merge routines.
+<span class="lineNum"> 2610 </span> : template&lt;typename _BidirectionalIterator, typename _Distance,
+<span class="lineNum"> 2611 </span> : typename _Pointer, typename _Compare&gt;
+<span class="lineNum"> 2612 </span> : void
+<span class="lineNum"> 2613 </span> : __merge_adaptive(_BidirectionalIterator __first,
+<span class="lineNum"> 2614 </span> : _BidirectionalIterator __middle,
+<span class="lineNum"> 2615 </span> : _BidirectionalIterator __last,
+<span class="lineNum"> 2616 </span> : _Distance __len1, _Distance __len2,
+<span class="lineNum"> 2617 </span> : _Pointer __buffer, _Distance __buffer_size,
+<span class="lineNum"> 2618 </span> : _Compare __comp)
+<span class="lineNum"> 2619 </span> : {
+<span class="lineNum"> 2620 </span> : if (__len1 &lt;= __len2 &amp;&amp; __len1 &lt;= __buffer_size)
+<span class="lineNum"> 2621 </span> : {
+<span class="lineNum"> 2622 </span> : _Pointer __buffer_end = std::copy(__first, __middle, __buffer);
+<span class="lineNum"> 2623 </span> : _GLIBCXX_STD_P::merge(__buffer, __buffer_end, __middle, __last,
+<span class="lineNum"> 2624 </span> : __first, __comp);
+<span class="lineNum"> 2625 </span> : }
+<span class="lineNum"> 2626 </span> : else if (__len2 &lt;= __buffer_size)
+<span class="lineNum"> 2627 </span> : {
+<span class="lineNum"> 2628 </span> : _Pointer __buffer_end = std::copy(__middle, __last, __buffer);
+<span class="lineNum"> 2629 </span> : std::__merge_backward(__first, __middle, __buffer, __buffer_end,
+<span class="lineNum"> 2630 </span> : __last, __comp);
+<span class="lineNum"> 2631 </span> : }
+<span class="lineNum"> 2632 </span> : else
+<span class="lineNum"> 2633 </span> : {
+<span class="lineNum"> 2634 </span> : _BidirectionalIterator __first_cut = __first;
+<span class="lineNum"> 2635 </span> : _BidirectionalIterator __second_cut = __middle;
+<span class="lineNum"> 2636 </span> : _Distance __len11 = 0;
+<span class="lineNum"> 2637 </span> : _Distance __len22 = 0;
+<span class="lineNum"> 2638 </span> : if (__len1 &gt; __len2)
+<span class="lineNum"> 2639 </span> : {
+<span class="lineNum"> 2640 </span> : __len11 = __len1 / 2;
+<span class="lineNum"> 2641 </span> : std::advance(__first_cut, __len11);
+<span class="lineNum"> 2642 </span> : __second_cut = std::lower_bound(__middle, __last, *__first_cut,
+<span class="lineNum"> 2643 </span> : __comp);
+<span class="lineNum"> 2644 </span> : __len22 = std::distance(__middle, __second_cut);
+<span class="lineNum"> 2645 </span> : }
+<span class="lineNum"> 2646 </span> : else
+<span class="lineNum"> 2647 </span> : {
+<span class="lineNum"> 2648 </span> : __len22 = __len2 / 2;
+<span class="lineNum"> 2649 </span> : std::advance(__second_cut, __len22);
+<span class="lineNum"> 2650 </span> : __first_cut = std::upper_bound(__first, __middle, *__second_cut,
+<span class="lineNum"> 2651 </span> : __comp);
+<span class="lineNum"> 2652 </span> : __len11 = std::distance(__first, __first_cut);
+<span class="lineNum"> 2653 </span> : }
+<span class="lineNum"> 2654 </span> : _BidirectionalIterator __new_middle =
+<span class="lineNum"> 2655 </span> : std::__rotate_adaptive(__first_cut, __middle, __second_cut,
+<span class="lineNum"> 2656 </span> : __len1 - __len11, __len22, __buffer,
+<span class="lineNum"> 2657 </span> : __buffer_size);
+<span class="lineNum"> 2658 </span> : std::__merge_adaptive(__first, __first_cut, __new_middle, __len11,
+<span class="lineNum"> 2659 </span> : __len22, __buffer, __buffer_size, __comp);
+<span class="lineNum"> 2660 </span> : std::__merge_adaptive(__new_middle, __second_cut, __last,
+<span class="lineNum"> 2661 </span> : __len1 - __len11,
+<span class="lineNum"> 2662 </span> : __len2 - __len22, __buffer,
+<span class="lineNum"> 2663 </span> : __buffer_size, __comp);
+<span class="lineNum"> 2664 </span> : }
+<span class="lineNum"> 2665 </span> : }
+<span class="lineNum"> 2666 </span> :
+<span class="lineNum"> 2667 </span> : /// This is a helper function for the merge routines.
+<span class="lineNum"> 2668 </span> : template&lt;typename _BidirectionalIterator, typename _Distance&gt;
+<span class="lineNum"> 2669 </span> : void
+<span class="lineNum"> 2670 </span> : __merge_without_buffer(_BidirectionalIterator __first,
+<span class="lineNum"> 2671 </span> : _BidirectionalIterator __middle,
+<span class="lineNum"> 2672 </span> : _BidirectionalIterator __last,
+<span class="lineNum"> 2673 </span> : _Distance __len1, _Distance __len2)
+<span class="lineNum"> 2674 </span> : {
+<span class="lineNum"> 2675 </span> : if (__len1 == 0 || __len2 == 0)
+<span class="lineNum"> 2676 </span> : return;
+<span class="lineNum"> 2677 </span> : if (__len1 + __len2 == 2)
+<span class="lineNum"> 2678 </span> : {
+<span class="lineNum"> 2679 </span> : if (*__middle &lt; *__first)
+<span class="lineNum"> 2680 </span> : std::iter_swap(__first, __middle);
+<span class="lineNum"> 2681 </span> : return;
+<span class="lineNum"> 2682 </span> : }
+<span class="lineNum"> 2683 </span> : _BidirectionalIterator __first_cut = __first;
+<span class="lineNum"> 2684 </span> : _BidirectionalIterator __second_cut = __middle;
+<span class="lineNum"> 2685 </span> : _Distance __len11 = 0;
+<span class="lineNum"> 2686 </span> : _Distance __len22 = 0;
+<span class="lineNum"> 2687 </span> : if (__len1 &gt; __len2)
+<span class="lineNum"> 2688 </span> : {
+<span class="lineNum"> 2689 </span> : __len11 = __len1 / 2;
+<span class="lineNum"> 2690 </span> : std::advance(__first_cut, __len11);
+<span class="lineNum"> 2691 </span> : __second_cut = std::lower_bound(__middle, __last, *__first_cut);
+<span class="lineNum"> 2692 </span> : __len22 = std::distance(__middle, __second_cut);
+<span class="lineNum"> 2693 </span> : }
+<span class="lineNum"> 2694 </span> : else
+<span class="lineNum"> 2695 </span> : {
+<span class="lineNum"> 2696 </span> : __len22 = __len2 / 2;
+<span class="lineNum"> 2697 </span> : std::advance(__second_cut, __len22);
+<span class="lineNum"> 2698 </span> : __first_cut = std::upper_bound(__first, __middle, *__second_cut);
+<span class="lineNum"> 2699 </span> : __len11 = std::distance(__first, __first_cut);
+<span class="lineNum"> 2700 </span> : }
+<span class="lineNum"> 2701 </span> : std::rotate(__first_cut, __middle, __second_cut);
+<span class="lineNum"> 2702 </span> : _BidirectionalIterator __new_middle = __first_cut;
+<span class="lineNum"> 2703 </span> : std::advance(__new_middle, std::distance(__middle, __second_cut));
+<span class="lineNum"> 2704 </span> : std::__merge_without_buffer(__first, __first_cut, __new_middle,
+<span class="lineNum"> 2705 </span> : __len11, __len22);
+<span class="lineNum"> 2706 </span> : std::__merge_without_buffer(__new_middle, __second_cut, __last,
+<span class="lineNum"> 2707 </span> : __len1 - __len11, __len2 - __len22);
+<span class="lineNum"> 2708 </span> : }
+<span class="lineNum"> 2709 </span> :
+<span class="lineNum"> 2710 </span> : /// This is a helper function for the merge routines.
+<span class="lineNum"> 2711 </span> : template&lt;typename _BidirectionalIterator, typename _Distance,
+<span class="lineNum"> 2712 </span> : typename _Compare&gt;
+<span class="lineNum"> 2713 </span> : void
+<span class="lineNum"> 2714 </span> : __merge_without_buffer(_BidirectionalIterator __first,
+<span class="lineNum"> 2715 </span> : _BidirectionalIterator __middle,
+<span class="lineNum"> 2716 </span> : _BidirectionalIterator __last,
+<span class="lineNum"> 2717 </span> : _Distance __len1, _Distance __len2,
+<span class="lineNum"> 2718 </span> : _Compare __comp)
+<span class="lineNum"> 2719 </span> : {
+<span class="lineNum"> 2720 </span> : if (__len1 == 0 || __len2 == 0)
+<span class="lineNum"> 2721 </span> : return;
+<span class="lineNum"> 2722 </span> : if (__len1 + __len2 == 2)
+<span class="lineNum"> 2723 </span> : {
+<span class="lineNum"> 2724 </span> : if (__comp(*__middle, *__first))
+<span class="lineNum"> 2725 </span> : std::iter_swap(__first, __middle);
+<span class="lineNum"> 2726 </span> : return;
+<span class="lineNum"> 2727 </span> : }
+<span class="lineNum"> 2728 </span> : _BidirectionalIterator __first_cut = __first;
+<span class="lineNum"> 2729 </span> : _BidirectionalIterator __second_cut = __middle;
+<span class="lineNum"> 2730 </span> : _Distance __len11 = 0;
+<span class="lineNum"> 2731 </span> : _Distance __len22 = 0;
+<span class="lineNum"> 2732 </span> : if (__len1 &gt; __len2)
+<span class="lineNum"> 2733 </span> : {
+<span class="lineNum"> 2734 </span> : __len11 = __len1 / 2;
+<span class="lineNum"> 2735 </span> : std::advance(__first_cut, __len11);
+<span class="lineNum"> 2736 </span> : __second_cut = std::lower_bound(__middle, __last, *__first_cut,
+<span class="lineNum"> 2737 </span> : __comp);
+<span class="lineNum"> 2738 </span> : __len22 = std::distance(__middle, __second_cut);
+<span class="lineNum"> 2739 </span> : }
+<span class="lineNum"> 2740 </span> : else
+<span class="lineNum"> 2741 </span> : {
+<span class="lineNum"> 2742 </span> : __len22 = __len2 / 2;
+<span class="lineNum"> 2743 </span> : std::advance(__second_cut, __len22);
+<span class="lineNum"> 2744 </span> : __first_cut = std::upper_bound(__first, __middle, *__second_cut,
+<span class="lineNum"> 2745 </span> : __comp);
+<span class="lineNum"> 2746 </span> : __len11 = std::distance(__first, __first_cut);
+<span class="lineNum"> 2747 </span> : }
+<span class="lineNum"> 2748 </span> : std::rotate(__first_cut, __middle, __second_cut);
+<span class="lineNum"> 2749 </span> : _BidirectionalIterator __new_middle = __first_cut;
+<span class="lineNum"> 2750 </span> : std::advance(__new_middle, std::distance(__middle, __second_cut));
+<span class="lineNum"> 2751 </span> : std::__merge_without_buffer(__first, __first_cut, __new_middle,
+<span class="lineNum"> 2752 </span> : __len11, __len22, __comp);
+<span class="lineNum"> 2753 </span> : std::__merge_without_buffer(__new_middle, __second_cut, __last,
+<span class="lineNum"> 2754 </span> : __len1 - __len11, __len2 - __len22, __comp);
+<span class="lineNum"> 2755 </span> : }
+<span class="lineNum"> 2756 </span> :
+<span class="lineNum"> 2757 </span> : /**
+<span class="lineNum"> 2758 </span> : * @brief Merges two sorted ranges in place.
+<span class="lineNum"> 2759 </span> : * @param first An iterator.
+<span class="lineNum"> 2760 </span> : * @param middle Another iterator.
+<span class="lineNum"> 2761 </span> : * @param last Another iterator.
+<span class="lineNum"> 2762 </span> : * @return Nothing.
+<span class="lineNum"> 2763 </span> : *
+<span class="lineNum"> 2764 </span> : * Merges two sorted and consecutive ranges, [first,middle) and
+<span class="lineNum"> 2765 </span> : * [middle,last), and puts the result in [first,last). The output will
+<span class="lineNum"> 2766 </span> : * be sorted. The sort is @e stable, that is, for equivalent
+<span class="lineNum"> 2767 </span> : * elements in the two ranges, elements from the first range will always
+<span class="lineNum"> 2768 </span> : * come before elements from the second.
+<span class="lineNum"> 2769 </span> : *
+<span class="lineNum"> 2770 </span> : * If enough additional memory is available, this takes (last-first)-1
+<span class="lineNum"> 2771 </span> : * comparisons. Otherwise an NlogN algorithm is used, where N is
+<span class="lineNum"> 2772 </span> : * distance(first,last).
+<span class="lineNum"> 2773 </span> : */
+<span class="lineNum"> 2774 </span> : template&lt;typename _BidirectionalIterator&gt;
+<span class="lineNum"> 2775 </span> : void
+<span class="lineNum"> 2776 </span> : inplace_merge(_BidirectionalIterator __first,
+<span class="lineNum"> 2777 </span> : _BidirectionalIterator __middle,
+<span class="lineNum"> 2778 </span> : _BidirectionalIterator __last)
+<span class="lineNum"> 2779 </span> : {
+<span class="lineNum"> 2780 </span> : typedef typename iterator_traits&lt;_BidirectionalIterator&gt;::value_type
+<span class="lineNum"> 2781 </span> : _ValueType;
+<span class="lineNum"> 2782 </span> : typedef typename iterator_traits&lt;_BidirectionalIterator&gt;::difference_type
+<span class="lineNum"> 2783 </span> : _DistanceType;
+<span class="lineNum"> 2784 </span> :
+<span class="lineNum"> 2785 </span> : // concept requirements
+<span class="lineNum"> 2786 </span> : __glibcxx_function_requires(_Mutable_BidirectionalIteratorConcept&lt;
+<span class="lineNum"> 2787 </span> : _BidirectionalIterator&gt;)
+<span class="lineNum"> 2788 </span> : __glibcxx_function_requires(_LessThanComparableConcept&lt;_ValueType&gt;)
+<span class="lineNum"> 2789 </span> : __glibcxx_requires_sorted(__first, __middle);
+<span class="lineNum"> 2790 </span> : __glibcxx_requires_sorted(__middle, __last);
+<span class="lineNum"> 2791 </span> :
+<span class="lineNum"> 2792 </span> : if (__first == __middle || __middle == __last)
+<span class="lineNum"> 2793 </span> : return;
+<span class="lineNum"> 2794 </span> :
+<span class="lineNum"> 2795 </span> : _DistanceType __len1 = std::distance(__first, __middle);
+<span class="lineNum"> 2796 </span> : _DistanceType __len2 = std::distance(__middle, __last);
+<span class="lineNum"> 2797 </span> :
+<span class="lineNum"> 2798 </span> : _Temporary_buffer&lt;_BidirectionalIterator, _ValueType&gt; __buf(__first,
+<span class="lineNum"> 2799 </span> : __last);
+<span class="lineNum"> 2800 </span> : if (__buf.begin() == 0)
+<span class="lineNum"> 2801 </span> : std::__merge_without_buffer(__first, __middle, __last, __len1, __len2);
+<span class="lineNum"> 2802 </span> : else
+<span class="lineNum"> 2803 </span> : std::__merge_adaptive(__first, __middle, __last, __len1, __len2,
+<span class="lineNum"> 2804 </span> : __buf.begin(), _DistanceType(__buf.size()));
+<span class="lineNum"> 2805 </span> : }
+<span class="lineNum"> 2806 </span> :
+<span class="lineNum"> 2807 </span> : /**
+<span class="lineNum"> 2808 </span> : * @brief Merges two sorted ranges in place.
+<span class="lineNum"> 2809 </span> : * @param first An iterator.
+<span class="lineNum"> 2810 </span> : * @param middle Another iterator.
+<span class="lineNum"> 2811 </span> : * @param last Another iterator.
+<span class="lineNum"> 2812 </span> : * @param comp A functor to use for comparisons.
+<span class="lineNum"> 2813 </span> : * @return Nothing.
+<span class="lineNum"> 2814 </span> : *
+<span class="lineNum"> 2815 </span> : * Merges two sorted and consecutive ranges, [first,middle) and
+<span class="lineNum"> 2816 </span> : * [middle,last), and puts the result in [first,last). The output will
+<span class="lineNum"> 2817 </span> : * be sorted. The sort is @e stable, that is, for equivalent
+<span class="lineNum"> 2818 </span> : * elements in the two ranges, elements from the first range will always
+<span class="lineNum"> 2819 </span> : * come before elements from the second.
+<span class="lineNum"> 2820 </span> : *
+<span class="lineNum"> 2821 </span> : * If enough additional memory is available, this takes (last-first)-1
+<span class="lineNum"> 2822 </span> : * comparisons. Otherwise an NlogN algorithm is used, where N is
+<span class="lineNum"> 2823 </span> : * distance(first,last).
+<span class="lineNum"> 2824 </span> : *
+<span class="lineNum"> 2825 </span> : * The comparison function should have the same effects on ordering as
+<span class="lineNum"> 2826 </span> : * the function used for the initial sort.
+<span class="lineNum"> 2827 </span> : */
+<span class="lineNum"> 2828 </span> : template&lt;typename _BidirectionalIterator, typename _Compare&gt;
+<span class="lineNum"> 2829 </span> : void
+<span class="lineNum"> 2830 </span> : inplace_merge(_BidirectionalIterator __first,
+<span class="lineNum"> 2831 </span> : _BidirectionalIterator __middle,
+<span class="lineNum"> 2832 </span> : _BidirectionalIterator __last,
+<span class="lineNum"> 2833 </span> : _Compare __comp)
+<span class="lineNum"> 2834 </span> : {
+<span class="lineNum"> 2835 </span> : typedef typename iterator_traits&lt;_BidirectionalIterator&gt;::value_type
+<span class="lineNum"> 2836 </span> : _ValueType;
+<span class="lineNum"> 2837 </span> : typedef typename iterator_traits&lt;_BidirectionalIterator&gt;::difference_type
+<span class="lineNum"> 2838 </span> : _DistanceType;
+<span class="lineNum"> 2839 </span> :
+<span class="lineNum"> 2840 </span> : // concept requirements
+<span class="lineNum"> 2841 </span> : __glibcxx_function_requires(_Mutable_BidirectionalIteratorConcept&lt;
+<span class="lineNum"> 2842 </span> : _BidirectionalIterator&gt;)
+<span class="lineNum"> 2843 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 2844 </span> : _ValueType, _ValueType&gt;)
+<span class="lineNum"> 2845 </span> : __glibcxx_requires_sorted_pred(__first, __middle, __comp);
+<span class="lineNum"> 2846 </span> : __glibcxx_requires_sorted_pred(__middle, __last, __comp);
+<span class="lineNum"> 2847 </span> :
+<span class="lineNum"> 2848 </span> : if (__first == __middle || __middle == __last)
+<span class="lineNum"> 2849 </span> : return;
+<span class="lineNum"> 2850 </span> :
+<span class="lineNum"> 2851 </span> : const _DistanceType __len1 = std::distance(__first, __middle);
+<span class="lineNum"> 2852 </span> : const _DistanceType __len2 = std::distance(__middle, __last);
+<span class="lineNum"> 2853 </span> :
+<span class="lineNum"> 2854 </span> : _Temporary_buffer&lt;_BidirectionalIterator, _ValueType&gt; __buf(__first,
+<span class="lineNum"> 2855 </span> : __last);
+<span class="lineNum"> 2856 </span> : if (__buf.begin() == 0)
+<span class="lineNum"> 2857 </span> : std::__merge_without_buffer(__first, __middle, __last, __len1,
+<span class="lineNum"> 2858 </span> : __len2, __comp);
+<span class="lineNum"> 2859 </span> : else
+<span class="lineNum"> 2860 </span> : std::__merge_adaptive(__first, __middle, __last, __len1, __len2,
+<span class="lineNum"> 2861 </span> : __buf.begin(), _DistanceType(__buf.size()),
+<span class="lineNum"> 2862 </span> : __comp);
+<span class="lineNum"> 2863 </span> : }
+<span class="lineNum"> 2864 </span> :
+<span class="lineNum"> 2865 </span> : template&lt;typename _RandomAccessIterator1, typename _RandomAccessIterator2,
+<span class="lineNum"> 2866 </span> : typename _Distance&gt;
+<span class="lineNum"> 2867 </span> : void
+<span class="lineNum"> 2868 </span> : __merge_sort_loop(_RandomAccessIterator1 __first,
+<span class="lineNum"> 2869 </span> : _RandomAccessIterator1 __last,
+<span class="lineNum"> 2870 </span> : _RandomAccessIterator2 __result,
+<span class="lineNum"> 2871 </span> : _Distance __step_size)
+<span class="lineNum"> 2872 </span> : {
+<span class="lineNum"> 2873 </span> : const _Distance __two_step = 2 * __step_size;
+<span class="lineNum"> 2874 </span> :
+<span class="lineNum"> 2875 </span> : while (__last - __first &gt;= __two_step)
+<span class="lineNum"> 2876 </span> : {
+<span class="lineNum"> 2877 </span> : __result = _GLIBCXX_STD_P::merge(__first, __first + __step_size,
+<span class="lineNum"> 2878 </span> : __first + __step_size,
+<span class="lineNum"> 2879 </span> : __first + __two_step,
+<span class="lineNum"> 2880 </span> : __result);
+<span class="lineNum"> 2881 </span> : __first += __two_step;
+<span class="lineNum"> 2882 </span> : }
+<span class="lineNum"> 2883 </span> :
+<span class="lineNum"> 2884 </span> : __step_size = std::min(_Distance(__last - __first), __step_size);
+<span class="lineNum"> 2885 </span> : _GLIBCXX_STD_P::merge(__first, __first + __step_size,
+<span class="lineNum"> 2886 </span> : __first + __step_size, __last,
+<span class="lineNum"> 2887 </span> : __result);
+<span class="lineNum"> 2888 </span> : }
+<span class="lineNum"> 2889 </span> :
+<span class="lineNum"> 2890 </span> : template&lt;typename _RandomAccessIterator1, typename _RandomAccessIterator2,
+<span class="lineNum"> 2891 </span> : typename _Distance, typename _Compare&gt;
+<span class="lineNum"> 2892 </span> : void
+<span class="lineNum"> 2893 </span> : __merge_sort_loop(_RandomAccessIterator1 __first,
+<span class="lineNum"> 2894 </span> : _RandomAccessIterator1 __last,
+<span class="lineNum"> 2895 </span> : _RandomAccessIterator2 __result, _Distance __step_size,
+<span class="lineNum"> 2896 </span> : _Compare __comp)
+<span class="lineNum"> 2897 </span> : {
+<span class="lineNum"> 2898 </span> : const _Distance __two_step = 2 * __step_size;
+<span class="lineNum"> 2899 </span> :
+<span class="lineNum"> 2900 </span> : while (__last - __first &gt;= __two_step)
+<span class="lineNum"> 2901 </span> : {
+<span class="lineNum"> 2902 </span> : __result = _GLIBCXX_STD_P::merge(__first, __first + __step_size,
+<span class="lineNum"> 2903 </span> : __first + __step_size, __first + __two_step,
+<span class="lineNum"> 2904 </span> : __result,
+<span class="lineNum"> 2905 </span> : __comp);
+<span class="lineNum"> 2906 </span> : __first += __two_step;
+<span class="lineNum"> 2907 </span> : }
+<span class="lineNum"> 2908 </span> : __step_size = std::min(_Distance(__last - __first), __step_size);
+<span class="lineNum"> 2909 </span> :
+<span class="lineNum"> 2910 </span> : _GLIBCXX_STD_P::merge(__first, __first + __step_size,
+<span class="lineNum"> 2911 </span> : __first + __step_size, __last, __result, __comp);
+<span class="lineNum"> 2912 </span> : }
+<span class="lineNum"> 2913 </span> :
+<span class="lineNum"> 2914 </span> : template&lt;typename _RandomAccessIterator, typename _Distance&gt;
+<span class="lineNum"> 2915 </span> : void
+<span class="lineNum"> 2916 </span> : __chunk_insertion_sort(_RandomAccessIterator __first,
+<span class="lineNum"> 2917 </span> : _RandomAccessIterator __last,
+<span class="lineNum"> 2918 </span> : _Distance __chunk_size)
+<span class="lineNum"> 2919 </span> : {
+<span class="lineNum"> 2920 </span> : while (__last - __first &gt;= __chunk_size)
+<span class="lineNum"> 2921 </span> : {
+<span class="lineNum"> 2922 </span> : std::__insertion_sort(__first, __first + __chunk_size);
+<span class="lineNum"> 2923 </span> : __first += __chunk_size;
+<span class="lineNum"> 2924 </span> : }
+<span class="lineNum"> 2925 </span> : std::__insertion_sort(__first, __last);
+<span class="lineNum"> 2926 </span> : }
+<span class="lineNum"> 2927 </span> :
+<span class="lineNum"> 2928 </span> : template&lt;typename _RandomAccessIterator, typename _Distance,
+<span class="lineNum"> 2929 </span> : typename _Compare&gt;
+<span class="lineNum"> 2930 </span> : void
+<span class="lineNum"> 2931 </span> : __chunk_insertion_sort(_RandomAccessIterator __first,
+<span class="lineNum"> 2932 </span> : _RandomAccessIterator __last,
+<span class="lineNum"> 2933 </span> : _Distance __chunk_size, _Compare __comp)
+<span class="lineNum"> 2934 </span> : {
+<span class="lineNum"> 2935 </span> : while (__last - __first &gt;= __chunk_size)
+<span class="lineNum"> 2936 </span> : {
+<span class="lineNum"> 2937 </span> : std::__insertion_sort(__first, __first + __chunk_size, __comp);
+<span class="lineNum"> 2938 </span> : __first += __chunk_size;
+<span class="lineNum"> 2939 </span> : }
+<span class="lineNum"> 2940 </span> : std::__insertion_sort(__first, __last, __comp);
+<span class="lineNum"> 2941 </span> : }
+<span class="lineNum"> 2942 </span> :
+<span class="lineNum"> 2943 </span> : enum { _S_chunk_size = 7 };
+<span class="lineNum"> 2944 </span> :
+<span class="lineNum"> 2945 </span> : template&lt;typename _RandomAccessIterator, typename _Pointer&gt;
+<span class="lineNum"> 2946 </span> : void
+<span class="lineNum"> 2947 </span> : __merge_sort_with_buffer(_RandomAccessIterator __first,
+<span class="lineNum"> 2948 </span> : _RandomAccessIterator __last,
+<span class="lineNum"> 2949 </span> : _Pointer __buffer)
+<span class="lineNum"> 2950 </span> : {
+<span class="lineNum"> 2951 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::difference_type
+<span class="lineNum"> 2952 </span> : _Distance;
+<span class="lineNum"> 2953 </span> :
+<span class="lineNum"> 2954 </span> : const _Distance __len = __last - __first;
+<span class="lineNum"> 2955 </span> : const _Pointer __buffer_last = __buffer + __len;
+<span class="lineNum"> 2956 </span> :
+<span class="lineNum"> 2957 </span> : _Distance __step_size = _S_chunk_size;
+<span class="lineNum"> 2958 </span> : std::__chunk_insertion_sort(__first, __last, __step_size);
+<span class="lineNum"> 2959 </span> :
+<span class="lineNum"> 2960 </span> : while (__step_size &lt; __len)
+<span class="lineNum"> 2961 </span> : {
+<span class="lineNum"> 2962 </span> : std::__merge_sort_loop(__first, __last, __buffer, __step_size);
+<span class="lineNum"> 2963 </span> : __step_size *= 2;
+<span class="lineNum"> 2964 </span> : std::__merge_sort_loop(__buffer, __buffer_last, __first, __step_size);
+<span class="lineNum"> 2965 </span> : __step_size *= 2;
+<span class="lineNum"> 2966 </span> : }
+<span class="lineNum"> 2967 </span> : }
+<span class="lineNum"> 2968 </span> :
+<span class="lineNum"> 2969 </span> : template&lt;typename _RandomAccessIterator, typename _Pointer, typename _Compare&gt;
+<span class="lineNum"> 2970 </span> : void
+<span class="lineNum"> 2971 </span> : __merge_sort_with_buffer(_RandomAccessIterator __first,
+<span class="lineNum"> 2972 </span> : _RandomAccessIterator __last,
+<span class="lineNum"> 2973 </span> : _Pointer __buffer, _Compare __comp)
+<span class="lineNum"> 2974 </span> : {
+<span class="lineNum"> 2975 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::difference_type
+<span class="lineNum"> 2976 </span> : _Distance;
+<span class="lineNum"> 2977 </span> :
+<span class="lineNum"> 2978 </span> : const _Distance __len = __last - __first;
+<span class="lineNum"> 2979 </span> : const _Pointer __buffer_last = __buffer + __len;
+<span class="lineNum"> 2980 </span> :
+<span class="lineNum"> 2981 </span> : _Distance __step_size = _S_chunk_size;
+<span class="lineNum"> 2982 </span> : std::__chunk_insertion_sort(__first, __last, __step_size, __comp);
+<span class="lineNum"> 2983 </span> :
+<span class="lineNum"> 2984 </span> : while (__step_size &lt; __len)
+<span class="lineNum"> 2985 </span> : {
+<span class="lineNum"> 2986 </span> : std::__merge_sort_loop(__first, __last, __buffer,
+<span class="lineNum"> 2987 </span> : __step_size, __comp);
+<span class="lineNum"> 2988 </span> : __step_size *= 2;
+<span class="lineNum"> 2989 </span> : std::__merge_sort_loop(__buffer, __buffer_last, __first,
+<span class="lineNum"> 2990 </span> : __step_size, __comp);
+<span class="lineNum"> 2991 </span> : __step_size *= 2;
+<span class="lineNum"> 2992 </span> : }
+<span class="lineNum"> 2993 </span> : }
+<span class="lineNum"> 2994 </span> :
+<span class="lineNum"> 2995 </span> : template&lt;typename _RandomAccessIterator, typename _Pointer,
+<span class="lineNum"> 2996 </span> : typename _Distance&gt;
+<span class="lineNum"> 2997 </span> : void
+<span class="lineNum"> 2998 </span> : __stable_sort_adaptive(_RandomAccessIterator __first,
+<span class="lineNum"> 2999 </span> : _RandomAccessIterator __last,
+<span class="lineNum"> 3000 </span> : _Pointer __buffer, _Distance __buffer_size)
+<span class="lineNum"> 3001 </span> : {
+<span class="lineNum"> 3002 </span> : const _Distance __len = (__last - __first + 1) / 2;
+<span class="lineNum"> 3003 </span> : const _RandomAccessIterator __middle = __first + __len;
+<span class="lineNum"> 3004 </span> : if (__len &gt; __buffer_size)
+<span class="lineNum"> 3005 </span> : {
+<span class="lineNum"> 3006 </span> : std::__stable_sort_adaptive(__first, __middle,
+<span class="lineNum"> 3007 </span> : __buffer, __buffer_size);
+<span class="lineNum"> 3008 </span> : std::__stable_sort_adaptive(__middle, __last,
+<span class="lineNum"> 3009 </span> : __buffer, __buffer_size);
+<span class="lineNum"> 3010 </span> : }
+<span class="lineNum"> 3011 </span> : else
+<span class="lineNum"> 3012 </span> : {
+<span class="lineNum"> 3013 </span> : std::__merge_sort_with_buffer(__first, __middle, __buffer);
+<span class="lineNum"> 3014 </span> : std::__merge_sort_with_buffer(__middle, __last, __buffer);
+<span class="lineNum"> 3015 </span> : }
+<span class="lineNum"> 3016 </span> : std::__merge_adaptive(__first, __middle, __last,
+<span class="lineNum"> 3017 </span> : _Distance(__middle - __first),
+<span class="lineNum"> 3018 </span> : _Distance(__last - __middle),
+<span class="lineNum"> 3019 </span> : __buffer, __buffer_size);
+<span class="lineNum"> 3020 </span> : }
+<span class="lineNum"> 3021 </span> :
+<span class="lineNum"> 3022 </span> : template&lt;typename _RandomAccessIterator, typename _Pointer,
+<span class="lineNum"> 3023 </span> : typename _Distance, typename _Compare&gt;
+<span class="lineNum"> 3024 </span> : void
+<span class="lineNum"> 3025 </span> : __stable_sort_adaptive(_RandomAccessIterator __first,
+<span class="lineNum"> 3026 </span> : _RandomAccessIterator __last,
+<span class="lineNum"> 3027 </span> : _Pointer __buffer, _Distance __buffer_size,
+<span class="lineNum"> 3028 </span> : _Compare __comp)
+<span class="lineNum"> 3029 </span> : {
+<span class="lineNum"> 3030 </span> : const _Distance __len = (__last - __first + 1) / 2;
+<span class="lineNum"> 3031 </span> : const _RandomAccessIterator __middle = __first + __len;
+<span class="lineNum"> 3032 </span> : if (__len &gt; __buffer_size)
+<span class="lineNum"> 3033 </span> : {
+<span class="lineNum"> 3034 </span> : std::__stable_sort_adaptive(__first, __middle, __buffer,
+<span class="lineNum"> 3035 </span> : __buffer_size, __comp);
+<span class="lineNum"> 3036 </span> : std::__stable_sort_adaptive(__middle, __last, __buffer,
+<span class="lineNum"> 3037 </span> : __buffer_size, __comp);
+<span class="lineNum"> 3038 </span> : }
+<span class="lineNum"> 3039 </span> : else
+<span class="lineNum"> 3040 </span> : {
+<span class="lineNum"> 3041 </span> : std::__merge_sort_with_buffer(__first, __middle, __buffer, __comp);
+<span class="lineNum"> 3042 </span> : std::__merge_sort_with_buffer(__middle, __last, __buffer, __comp);
+<span class="lineNum"> 3043 </span> : }
+<span class="lineNum"> 3044 </span> : std::__merge_adaptive(__first, __middle, __last,
+<span class="lineNum"> 3045 </span> : _Distance(__middle - __first),
+<span class="lineNum"> 3046 </span> : _Distance(__last - __middle),
+<span class="lineNum"> 3047 </span> : __buffer, __buffer_size,
+<span class="lineNum"> 3048 </span> : __comp);
+<span class="lineNum"> 3049 </span> : }
+<span class="lineNum"> 3050 </span> :
+<span class="lineNum"> 3051 </span> : /// This is a helper function for the stable sorting routines.
+<span class="lineNum"> 3052 </span> : template&lt;typename _RandomAccessIterator&gt;
+<span class="lineNum"> 3053 </span> : void
+<span class="lineNum"> 3054 </span> : __inplace_stable_sort(_RandomAccessIterator __first,
+<span class="lineNum"> 3055 </span> : _RandomAccessIterator __last)
+<span class="lineNum"> 3056 </span> : {
+<span class="lineNum"> 3057 </span> : if (__last - __first &lt; 15)
+<span class="lineNum"> 3058 </span> : {
+<span class="lineNum"> 3059 </span> : std::__insertion_sort(__first, __last);
+<span class="lineNum"> 3060 </span> : return;
+<span class="lineNum"> 3061 </span> : }
+<span class="lineNum"> 3062 </span> : _RandomAccessIterator __middle = __first + (__last - __first) / 2;
+<span class="lineNum"> 3063 </span> : std::__inplace_stable_sort(__first, __middle);
+<span class="lineNum"> 3064 </span> : std::__inplace_stable_sort(__middle, __last);
+<span class="lineNum"> 3065 </span> : std::__merge_without_buffer(__first, __middle, __last,
+<span class="lineNum"> 3066 </span> : __middle - __first,
+<span class="lineNum"> 3067 </span> : __last - __middle);
+<span class="lineNum"> 3068 </span> : }
+<span class="lineNum"> 3069 </span> :
+<span class="lineNum"> 3070 </span> : /// This is a helper function for the stable sorting routines.
+<span class="lineNum"> 3071 </span> : template&lt;typename _RandomAccessIterator, typename _Compare&gt;
+<span class="lineNum"> 3072 </span> : void
+<span class="lineNum"> 3073 </span> : __inplace_stable_sort(_RandomAccessIterator __first,
+<span class="lineNum"> 3074 </span> : _RandomAccessIterator __last, _Compare __comp)
+<span class="lineNum"> 3075 </span> : {
+<span class="lineNum"> 3076 </span> : if (__last - __first &lt; 15)
+<span class="lineNum"> 3077 </span> : {
+<span class="lineNum"> 3078 </span> : std::__insertion_sort(__first, __last, __comp);
+<span class="lineNum"> 3079 </span> : return;
+<span class="lineNum"> 3080 </span> : }
+<span class="lineNum"> 3081 </span> : _RandomAccessIterator __middle = __first + (__last - __first) / 2;
+<span class="lineNum"> 3082 </span> : std::__inplace_stable_sort(__first, __middle, __comp);
+<span class="lineNum"> 3083 </span> : std::__inplace_stable_sort(__middle, __last, __comp);
+<span class="lineNum"> 3084 </span> : std::__merge_without_buffer(__first, __middle, __last,
+<span class="lineNum"> 3085 </span> : __middle - __first,
+<span class="lineNum"> 3086 </span> : __last - __middle,
+<span class="lineNum"> 3087 </span> : __comp);
+<span class="lineNum"> 3088 </span> : }
+<span class="lineNum"> 3089 </span> :
+<span class="lineNum"> 3090 </span> : // stable_sort
+<span class="lineNum"> 3091 </span> :
+<span class="lineNum"> 3092 </span> : // Set algorithms: includes, set_union, set_intersection, set_difference,
+<span class="lineNum"> 3093 </span> : // set_symmetric_difference. All of these algorithms have the precondition
+<span class="lineNum"> 3094 </span> : // that their input ranges are sorted and the postcondition that their output
+<span class="lineNum"> 3095 </span> : // ranges are sorted.
+<span class="lineNum"> 3096 </span> :
+<span class="lineNum"> 3097 </span> : /**
+<span class="lineNum"> 3098 </span> : * @brief Determines whether all elements of a sequence exists in a range.
+<span class="lineNum"> 3099 </span> : * @param first1 Start of search range.
+<span class="lineNum"> 3100 </span> : * @param last1 End of search range.
+<span class="lineNum"> 3101 </span> : * @param first2 Start of sequence
+<span class="lineNum"> 3102 </span> : * @param last2 End of sequence.
+<span class="lineNum"> 3103 </span> : * @return True if each element in [first2,last2) is contained in order
+<span class="lineNum"> 3104 </span> : * within [first1,last1). False otherwise.
+<span class="lineNum"> 3105 </span> : * @ingroup setoperations
+<span class="lineNum"> 3106 </span> : *
+<span class="lineNum"> 3107 </span> : * This operation expects both [first1,last1) and [first2,last2) to be
+<span class="lineNum"> 3108 </span> : * sorted. Searches for the presence of each element in [first2,last2)
+<span class="lineNum"> 3109 </span> : * within [first1,last1). The iterators over each range only move forward,
+<span class="lineNum"> 3110 </span> : * so this is a linear algorithm. If an element in [first2,last2) is not
+<span class="lineNum"> 3111 </span> : * found before the search iterator reaches @a last2, false is returned.
+<span class="lineNum"> 3112 </span> : */
+<span class="lineNum"> 3113 </span> : template&lt;typename _InputIterator1, typename _InputIterator2&gt;
+<span class="lineNum"> 3114 </span> : bool
+<span class="lineNum"> 3115 </span> : includes(_InputIterator1 __first1, _InputIterator1 __last1,
+<span class="lineNum"> 3116 </span> : _InputIterator2 __first2, _InputIterator2 __last2)
+<span class="lineNum"> 3117 </span> : {
+<span class="lineNum"> 3118 </span> : typedef typename iterator_traits&lt;_InputIterator1&gt;::value_type
+<span class="lineNum"> 3119 </span> : _ValueType1;
+<span class="lineNum"> 3120 </span> : typedef typename iterator_traits&lt;_InputIterator2&gt;::value_type
+<span class="lineNum"> 3121 </span> : _ValueType2;
+<span class="lineNum"> 3122 </span> :
+<span class="lineNum"> 3123 </span> : // concept requirements
+<span class="lineNum"> 3124 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator1&gt;)
+<span class="lineNum"> 3125 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator2&gt;)
+<span class="lineNum"> 3126 </span> : __glibcxx_function_requires(_LessThanOpConcept&lt;_ValueType1, _ValueType2&gt;)
+<span class="lineNum"> 3127 </span> : __glibcxx_function_requires(_LessThanOpConcept&lt;_ValueType2, _ValueType1&gt;)
+<span class="lineNum"> 3128 </span> : __glibcxx_requires_sorted_set(__first1, __last1, __first2);
+<span class="lineNum"> 3129 </span> : __glibcxx_requires_sorted_set(__first2, __last2, __first1);
+<span class="lineNum"> 3130 </span> :
+<span class="lineNum"> 3131 </span> : while (__first1 != __last1 &amp;&amp; __first2 != __last2)
+<span class="lineNum"> 3132 </span> : if (*__first2 &lt; *__first1)
+<span class="lineNum"> 3133 </span> : return false;
+<span class="lineNum"> 3134 </span> : else if(*__first1 &lt; *__first2)
+<span class="lineNum"> 3135 </span> : ++__first1;
+<span class="lineNum"> 3136 </span> : else
+<span class="lineNum"> 3137 </span> : ++__first1, ++__first2;
+<span class="lineNum"> 3138 </span> :
+<span class="lineNum"> 3139 </span> : return __first2 == __last2;
+<span class="lineNum"> 3140 </span> : }
+<span class="lineNum"> 3141 </span> :
+<span class="lineNum"> 3142 </span> : /**
+<span class="lineNum"> 3143 </span> : * @brief Determines whether all elements of a sequence exists in a range
+<span class="lineNum"> 3144 </span> : * using comparison.
+<span class="lineNum"> 3145 </span> : * @param first1 Start of search range.
+<span class="lineNum"> 3146 </span> : * @param last1 End of search range.
+<span class="lineNum"> 3147 </span> : * @param first2 Start of sequence
+<span class="lineNum"> 3148 </span> : * @param last2 End of sequence.
+<span class="lineNum"> 3149 </span> : * @param comp Comparison function to use.
+<span class="lineNum"> 3150 </span> : * @return True if each element in [first2,last2) is contained in order
+<span class="lineNum"> 3151 </span> : * within [first1,last1) according to comp. False otherwise.
+<span class="lineNum"> 3152 </span> : * @ingroup setoperations
+<span class="lineNum"> 3153 </span> : *
+<span class="lineNum"> 3154 </span> : * This operation expects both [first1,last1) and [first2,last2) to be
+<span class="lineNum"> 3155 </span> : * sorted. Searches for the presence of each element in [first2,last2)
+<span class="lineNum"> 3156 </span> : * within [first1,last1), using comp to decide. The iterators over each
+<span class="lineNum"> 3157 </span> : * range only move forward, so this is a linear algorithm. If an element
+<span class="lineNum"> 3158 </span> : * in [first2,last2) is not found before the search iterator reaches @a
+<span class="lineNum"> 3159 </span> : * last2, false is returned.
+<span class="lineNum"> 3160 </span> : */
+<span class="lineNum"> 3161 </span> : template&lt;typename _InputIterator1, typename _InputIterator2,
+<span class="lineNum"> 3162 </span> : typename _Compare&gt;
+<span class="lineNum"> 3163 </span> : bool
+<span class="lineNum"> 3164 </span> : includes(_InputIterator1 __first1, _InputIterator1 __last1,
+<span class="lineNum"> 3165 </span> : _InputIterator2 __first2, _InputIterator2 __last2,
+<span class="lineNum"> 3166 </span> : _Compare __comp)
+<span class="lineNum"> 3167 </span> : {
+<span class="lineNum"> 3168 </span> : typedef typename iterator_traits&lt;_InputIterator1&gt;::value_type
+<span class="lineNum"> 3169 </span> : _ValueType1;
+<span class="lineNum"> 3170 </span> : typedef typename iterator_traits&lt;_InputIterator2&gt;::value_type
+<span class="lineNum"> 3171 </span> : _ValueType2;
+<span class="lineNum"> 3172 </span> :
+<span class="lineNum"> 3173 </span> : // concept requirements
+<span class="lineNum"> 3174 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator1&gt;)
+<span class="lineNum"> 3175 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator2&gt;)
+<span class="lineNum"> 3176 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 3177 </span> : _ValueType1, _ValueType2&gt;)
+<span class="lineNum"> 3178 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 3179 </span> : _ValueType2, _ValueType1&gt;)
+<span class="lineNum"> 3180 </span> : __glibcxx_requires_sorted_set_pred(__first1, __last1, __first2, __comp);
+<span class="lineNum"> 3181 </span> : __glibcxx_requires_sorted_set_pred(__first2, __last2, __first1, __comp);
+<span class="lineNum"> 3182 </span> :
+<span class="lineNum"> 3183 </span> : while (__first1 != __last1 &amp;&amp; __first2 != __last2)
+<span class="lineNum"> 3184 </span> : if (__comp(*__first2, *__first1))
+<span class="lineNum"> 3185 </span> : return false;
+<span class="lineNum"> 3186 </span> : else if(__comp(*__first1, *__first2))
+<span class="lineNum"> 3187 </span> : ++__first1;
+<span class="lineNum"> 3188 </span> : else
+<span class="lineNum"> 3189 </span> : ++__first1, ++__first2;
+<span class="lineNum"> 3190 </span> :
+<span class="lineNum"> 3191 </span> : return __first2 == __last2;
+<span class="lineNum"> 3192 </span> : }
+<span class="lineNum"> 3193 </span> :
+<span class="lineNum"> 3194 </span> : // nth_element
+<span class="lineNum"> 3195 </span> : // merge
+<span class="lineNum"> 3196 </span> : // set_difference
+<span class="lineNum"> 3197 </span> : // set_intersection
+<span class="lineNum"> 3198 </span> : // set_union
+<span class="lineNum"> 3199 </span> : // stable_sort
+<span class="lineNum"> 3200 </span> : // set_symmetric_difference
+<span class="lineNum"> 3201 </span> : // min_element
+<span class="lineNum"> 3202 </span> : // max_element
+<span class="lineNum"> 3203 </span> :
+<span class="lineNum"> 3204 </span> : /**
+<span class="lineNum"> 3205 </span> : * @brief Permute range into the next &quot;dictionary&quot; ordering.
+<span class="lineNum"> 3206 </span> : * @param first Start of range.
+<span class="lineNum"> 3207 </span> : * @param last End of range.
+<span class="lineNum"> 3208 </span> : * @return False if wrapped to first permutation, true otherwise.
+<span class="lineNum"> 3209 </span> : *
+<span class="lineNum"> 3210 </span> : * Treats all permutations of the range as a set of &quot;dictionary&quot; sorted
+<span class="lineNum"> 3211 </span> : * sequences. Permutes the current sequence into the next one of this set.
+<span class="lineNum"> 3212 </span> : * Returns true if there are more sequences to generate. If the sequence
+<span class="lineNum"> 3213 </span> : * is the largest of the set, the smallest is generated and false returned.
+<span class="lineNum"> 3214 </span> : */
+<span class="lineNum"> 3215 </span> : template&lt;typename _BidirectionalIterator&gt;
+<span class="lineNum"> 3216 </span> : bool
+<span class="lineNum"> 3217 </span> : next_permutation(_BidirectionalIterator __first,
+<span class="lineNum"> 3218 </span> : _BidirectionalIterator __last)
+<span class="lineNum"> 3219 </span> : {
+<span class="lineNum"> 3220 </span> : // concept requirements
+<span class="lineNum"> 3221 </span> : __glibcxx_function_requires(_BidirectionalIteratorConcept&lt;
+<span class="lineNum"> 3222 </span> : _BidirectionalIterator&gt;)
+<span class="lineNum"> 3223 </span> : __glibcxx_function_requires(_LessThanComparableConcept&lt;
+<span class="lineNum"> 3224 </span> : typename iterator_traits&lt;_BidirectionalIterator&gt;::value_type&gt;)
+<span class="lineNum"> 3225 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 3226 </span> :
+<span class="lineNum"> 3227 </span> : if (__first == __last)
+<span class="lineNum"> 3228 </span> : return false;
+<span class="lineNum"> 3229 </span> : _BidirectionalIterator __i = __first;
+<span class="lineNum"> 3230 </span> : ++__i;
+<span class="lineNum"> 3231 </span> : if (__i == __last)
+<span class="lineNum"> 3232 </span> : return false;
+<span class="lineNum"> 3233 </span> : __i = __last;
+<span class="lineNum"> 3234 </span> : --__i;
+<span class="lineNum"> 3235 </span> :
+<span class="lineNum"> 3236 </span> : for(;;)
+<span class="lineNum"> 3237 </span> : {
+<span class="lineNum"> 3238 </span> : _BidirectionalIterator __ii = __i;
+<span class="lineNum"> 3239 </span> : --__i;
+<span class="lineNum"> 3240 </span> : if (*__i &lt; *__ii)
+<span class="lineNum"> 3241 </span> : {
+<span class="lineNum"> 3242 </span> : _BidirectionalIterator __j = __last;
+<span class="lineNum"> 3243 </span> : while (!(*__i &lt; *--__j))
+<span class="lineNum"> 3244 </span> : {}
+<span class="lineNum"> 3245 </span> : std::iter_swap(__i, __j);
+<span class="lineNum"> 3246 </span> : std::reverse(__ii, __last);
+<span class="lineNum"> 3247 </span> : return true;
+<span class="lineNum"> 3248 </span> : }
+<span class="lineNum"> 3249 </span> : if (__i == __first)
+<span class="lineNum"> 3250 </span> : {
+<span class="lineNum"> 3251 </span> : std::reverse(__first, __last);
+<span class="lineNum"> 3252 </span> : return false;
+<span class="lineNum"> 3253 </span> : }
+<span class="lineNum"> 3254 </span> : }
+<span class="lineNum"> 3255 </span> : }
+<span class="lineNum"> 3256 </span> :
+<span class="lineNum"> 3257 </span> : /**
+<span class="lineNum"> 3258 </span> : * @brief Permute range into the next &quot;dictionary&quot; ordering using
+<span class="lineNum"> 3259 </span> : * comparison functor.
+<span class="lineNum"> 3260 </span> : * @param first Start of range.
+<span class="lineNum"> 3261 </span> : * @param last End of range.
+<span class="lineNum"> 3262 </span> : * @param comp A comparison functor.
+<span class="lineNum"> 3263 </span> : * @return False if wrapped to first permutation, true otherwise.
+<span class="lineNum"> 3264 </span> : *
+<span class="lineNum"> 3265 </span> : * Treats all permutations of the range [first,last) as a set of
+<span class="lineNum"> 3266 </span> : * &quot;dictionary&quot; sorted sequences ordered by @a comp. Permutes the current
+<span class="lineNum"> 3267 </span> : * sequence into the next one of this set. Returns true if there are more
+<span class="lineNum"> 3268 </span> : * sequences to generate. If the sequence is the largest of the set, the
+<span class="lineNum"> 3269 </span> : * smallest is generated and false returned.
+<span class="lineNum"> 3270 </span> : */
+<span class="lineNum"> 3271 </span> : template&lt;typename _BidirectionalIterator, typename _Compare&gt;
+<span class="lineNum"> 3272 </span> : bool
+<span class="lineNum"> 3273 </span> : next_permutation(_BidirectionalIterator __first,
+<span class="lineNum"> 3274 </span> : _BidirectionalIterator __last, _Compare __comp)
+<span class="lineNum"> 3275 </span> : {
+<span class="lineNum"> 3276 </span> : // concept requirements
+<span class="lineNum"> 3277 </span> : __glibcxx_function_requires(_BidirectionalIteratorConcept&lt;
+<span class="lineNum"> 3278 </span> : _BidirectionalIterator&gt;)
+<span class="lineNum"> 3279 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 3280 </span> : typename iterator_traits&lt;_BidirectionalIterator&gt;::value_type,
+<span class="lineNum"> 3281 </span> : typename iterator_traits&lt;_BidirectionalIterator&gt;::value_type&gt;)
+<span class="lineNum"> 3282 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 3283 </span> :
+<span class="lineNum"> 3284 </span> : if (__first == __last)
+<span class="lineNum"> 3285 </span> : return false;
+<span class="lineNum"> 3286 </span> : _BidirectionalIterator __i = __first;
+<span class="lineNum"> 3287 </span> : ++__i;
+<span class="lineNum"> 3288 </span> : if (__i == __last)
+<span class="lineNum"> 3289 </span> : return false;
+<span class="lineNum"> 3290 </span> : __i = __last;
+<span class="lineNum"> 3291 </span> : --__i;
+<span class="lineNum"> 3292 </span> :
+<span class="lineNum"> 3293 </span> : for(;;)
+<span class="lineNum"> 3294 </span> : {
+<span class="lineNum"> 3295 </span> : _BidirectionalIterator __ii = __i;
+<span class="lineNum"> 3296 </span> : --__i;
+<span class="lineNum"> 3297 </span> : if (__comp(*__i, *__ii))
+<span class="lineNum"> 3298 </span> : {
+<span class="lineNum"> 3299 </span> : _BidirectionalIterator __j = __last;
+<span class="lineNum"> 3300 </span> : while (!bool(__comp(*__i, *--__j)))
+<span class="lineNum"> 3301 </span> : {}
+<span class="lineNum"> 3302 </span> : std::iter_swap(__i, __j);
+<span class="lineNum"> 3303 </span> : std::reverse(__ii, __last);
+<span class="lineNum"> 3304 </span> : return true;
+<span class="lineNum"> 3305 </span> : }
+<span class="lineNum"> 3306 </span> : if (__i == __first)
+<span class="lineNum"> 3307 </span> : {
+<span class="lineNum"> 3308 </span> : std::reverse(__first, __last);
+<span class="lineNum"> 3309 </span> : return false;
+<span class="lineNum"> 3310 </span> : }
+<span class="lineNum"> 3311 </span> : }
+<span class="lineNum"> 3312 </span> : }
+<span class="lineNum"> 3313 </span> :
+<span class="lineNum"> 3314 </span> : /**
+<span class="lineNum"> 3315 </span> : * @brief Permute range into the previous &quot;dictionary&quot; ordering.
+<span class="lineNum"> 3316 </span> : * @param first Start of range.
+<span class="lineNum"> 3317 </span> : * @param last End of range.
+<span class="lineNum"> 3318 </span> : * @return False if wrapped to last permutation, true otherwise.
+<span class="lineNum"> 3319 </span> : *
+<span class="lineNum"> 3320 </span> : * Treats all permutations of the range as a set of &quot;dictionary&quot; sorted
+<span class="lineNum"> 3321 </span> : * sequences. Permutes the current sequence into the previous one of this
+<span class="lineNum"> 3322 </span> : * set. Returns true if there are more sequences to generate. If the
+<span class="lineNum"> 3323 </span> : * sequence is the smallest of the set, the largest is generated and false
+<span class="lineNum"> 3324 </span> : * returned.
+<span class="lineNum"> 3325 </span> : */
+<span class="lineNum"> 3326 </span> : template&lt;typename _BidirectionalIterator&gt;
+<span class="lineNum"> 3327 </span> : bool
+<span class="lineNum"> 3328 </span> : prev_permutation(_BidirectionalIterator __first,
+<span class="lineNum"> 3329 </span> : _BidirectionalIterator __last)
+<span class="lineNum"> 3330 </span> : {
+<span class="lineNum"> 3331 </span> : // concept requirements
+<span class="lineNum"> 3332 </span> : __glibcxx_function_requires(_BidirectionalIteratorConcept&lt;
+<span class="lineNum"> 3333 </span> : _BidirectionalIterator&gt;)
+<span class="lineNum"> 3334 </span> : __glibcxx_function_requires(_LessThanComparableConcept&lt;
+<span class="lineNum"> 3335 </span> : typename iterator_traits&lt;_BidirectionalIterator&gt;::value_type&gt;)
+<span class="lineNum"> 3336 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 3337 </span> :
+<span class="lineNum"> 3338 </span> : if (__first == __last)
+<span class="lineNum"> 3339 </span> : return false;
+<span class="lineNum"> 3340 </span> : _BidirectionalIterator __i = __first;
+<span class="lineNum"> 3341 </span> : ++__i;
+<span class="lineNum"> 3342 </span> : if (__i == __last)
+<span class="lineNum"> 3343 </span> : return false;
+<span class="lineNum"> 3344 </span> : __i = __last;
+<span class="lineNum"> 3345 </span> : --__i;
+<span class="lineNum"> 3346 </span> :
+<span class="lineNum"> 3347 </span> : for(;;)
+<span class="lineNum"> 3348 </span> : {
+<span class="lineNum"> 3349 </span> : _BidirectionalIterator __ii = __i;
+<span class="lineNum"> 3350 </span> : --__i;
+<span class="lineNum"> 3351 </span> : if (*__ii &lt; *__i)
+<span class="lineNum"> 3352 </span> : {
+<span class="lineNum"> 3353 </span> : _BidirectionalIterator __j = __last;
+<span class="lineNum"> 3354 </span> : while (!(*--__j &lt; *__i))
+<span class="lineNum"> 3355 </span> : {}
+<span class="lineNum"> 3356 </span> : std::iter_swap(__i, __j);
+<span class="lineNum"> 3357 </span> : std::reverse(__ii, __last);
+<span class="lineNum"> 3358 </span> : return true;
+<span class="lineNum"> 3359 </span> : }
+<span class="lineNum"> 3360 </span> : if (__i == __first)
+<span class="lineNum"> 3361 </span> : {
+<span class="lineNum"> 3362 </span> : std::reverse(__first, __last);
+<span class="lineNum"> 3363 </span> : return false;
+<span class="lineNum"> 3364 </span> : }
+<span class="lineNum"> 3365 </span> : }
+<span class="lineNum"> 3366 </span> : }
+<span class="lineNum"> 3367 </span> :
+<span class="lineNum"> 3368 </span> : /**
+<span class="lineNum"> 3369 </span> : * @brief Permute range into the previous &quot;dictionary&quot; ordering using
+<span class="lineNum"> 3370 </span> : * comparison functor.
+<span class="lineNum"> 3371 </span> : * @param first Start of range.
+<span class="lineNum"> 3372 </span> : * @param last End of range.
+<span class="lineNum"> 3373 </span> : * @param comp A comparison functor.
+<span class="lineNum"> 3374 </span> : * @return False if wrapped to last permutation, true otherwise.
+<span class="lineNum"> 3375 </span> : *
+<span class="lineNum"> 3376 </span> : * Treats all permutations of the range [first,last) as a set of
+<span class="lineNum"> 3377 </span> : * &quot;dictionary&quot; sorted sequences ordered by @a comp. Permutes the current
+<span class="lineNum"> 3378 </span> : * sequence into the previous one of this set. Returns true if there are
+<span class="lineNum"> 3379 </span> : * more sequences to generate. If the sequence is the smallest of the set,
+<span class="lineNum"> 3380 </span> : * the largest is generated and false returned.
+<span class="lineNum"> 3381 </span> : */
+<span class="lineNum"> 3382 </span> : template&lt;typename _BidirectionalIterator, typename _Compare&gt;
+<span class="lineNum"> 3383 </span> : bool
+<span class="lineNum"> 3384 </span> : prev_permutation(_BidirectionalIterator __first,
+<span class="lineNum"> 3385 </span> : _BidirectionalIterator __last, _Compare __comp)
+<span class="lineNum"> 3386 </span> : {
+<span class="lineNum"> 3387 </span> : // concept requirements
+<span class="lineNum"> 3388 </span> : __glibcxx_function_requires(_BidirectionalIteratorConcept&lt;
+<span class="lineNum"> 3389 </span> : _BidirectionalIterator&gt;)
+<span class="lineNum"> 3390 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 3391 </span> : typename iterator_traits&lt;_BidirectionalIterator&gt;::value_type,
+<span class="lineNum"> 3392 </span> : typename iterator_traits&lt;_BidirectionalIterator&gt;::value_type&gt;)
+<span class="lineNum"> 3393 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 3394 </span> :
+<span class="lineNum"> 3395 </span> : if (__first == __last)
+<span class="lineNum"> 3396 </span> : return false;
+<span class="lineNum"> 3397 </span> : _BidirectionalIterator __i = __first;
+<span class="lineNum"> 3398 </span> : ++__i;
+<span class="lineNum"> 3399 </span> : if (__i == __last)
+<span class="lineNum"> 3400 </span> : return false;
+<span class="lineNum"> 3401 </span> : __i = __last;
+<span class="lineNum"> 3402 </span> : --__i;
+<span class="lineNum"> 3403 </span> :
+<span class="lineNum"> 3404 </span> : for(;;)
+<span class="lineNum"> 3405 </span> : {
+<span class="lineNum"> 3406 </span> : _BidirectionalIterator __ii = __i;
+<span class="lineNum"> 3407 </span> : --__i;
+<span class="lineNum"> 3408 </span> : if (__comp(*__ii, *__i))
+<span class="lineNum"> 3409 </span> : {
+<span class="lineNum"> 3410 </span> : _BidirectionalIterator __j = __last;
+<span class="lineNum"> 3411 </span> : while (!bool(__comp(*--__j, *__i)))
+<span class="lineNum"> 3412 </span> : {}
+<span class="lineNum"> 3413 </span> : std::iter_swap(__i, __j);
+<span class="lineNum"> 3414 </span> : std::reverse(__ii, __last);
+<span class="lineNum"> 3415 </span> : return true;
+<span class="lineNum"> 3416 </span> : }
+<span class="lineNum"> 3417 </span> : if (__i == __first)
+<span class="lineNum"> 3418 </span> : {
+<span class="lineNum"> 3419 </span> : std::reverse(__first, __last);
+<span class="lineNum"> 3420 </span> : return false;
+<span class="lineNum"> 3421 </span> : }
+<span class="lineNum"> 3422 </span> : }
+<span class="lineNum"> 3423 </span> : }
+<span class="lineNum"> 3424 </span> :
+<span class="lineNum"> 3425 </span> : // replace
+<span class="lineNum"> 3426 </span> : // replace_if
+<span class="lineNum"> 3427 </span> :
+<span class="lineNum"> 3428 </span> : /**
+<span class="lineNum"> 3429 </span> : * @brief Copy a sequence, replacing each element of one value with another
+<span class="lineNum"> 3430 </span> : * value.
+<span class="lineNum"> 3431 </span> : * @param first An input iterator.
+<span class="lineNum"> 3432 </span> : * @param last An input iterator.
+<span class="lineNum"> 3433 </span> : * @param result An output iterator.
+<span class="lineNum"> 3434 </span> : * @param old_value The value to be replaced.
+<span class="lineNum"> 3435 </span> : * @param new_value The replacement value.
+<span class="lineNum"> 3436 </span> : * @return The end of the output sequence, @p result+(last-first).
+<span class="lineNum"> 3437 </span> : *
+<span class="lineNum"> 3438 </span> : * Copies each element in the input range @p [first,last) to the
+<span class="lineNum"> 3439 </span> : * output range @p [result,result+(last-first)) replacing elements
+<span class="lineNum"> 3440 </span> : * equal to @p old_value with @p new_value.
+<span class="lineNum"> 3441 </span> : */
+<span class="lineNum"> 3442 </span> : template&lt;typename _InputIterator, typename _OutputIterator, typename _Tp&gt;
+<span class="lineNum"> 3443 </span> : _OutputIterator
+<span class="lineNum"> 3444 </span> : replace_copy(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 3445 </span> : _OutputIterator __result,
+<span class="lineNum"> 3446 </span> : const _Tp&amp; __old_value, const _Tp&amp; __new_value)
+<span class="lineNum"> 3447 </span> : {
+<span class="lineNum"> 3448 </span> : // concept requirements
+<span class="lineNum"> 3449 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator&gt;)
+<span class="lineNum"> 3450 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 3451 </span> : typename iterator_traits&lt;_InputIterator&gt;::value_type&gt;)
+<span class="lineNum"> 3452 </span> : __glibcxx_function_requires(_EqualOpConcept&lt;
+<span class="lineNum"> 3453 </span> : typename iterator_traits&lt;_InputIterator&gt;::value_type, _Tp&gt;)
+<span class="lineNum"> 3454 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 3455 </span> :
+<span class="lineNum"> 3456 </span> : for (; __first != __last; ++__first, ++__result)
+<span class="lineNum"> 3457 </span> : if (*__first == __old_value)
+<span class="lineNum"> 3458 </span> : *__result = __new_value;
+<span class="lineNum"> 3459 </span> : else
+<span class="lineNum"> 3460 </span> : *__result = *__first;
+<span class="lineNum"> 3461 </span> : return __result;
+<span class="lineNum"> 3462 </span> : }
+<span class="lineNum"> 3463 </span> :
+<span class="lineNum"> 3464 </span> : /**
+<span class="lineNum"> 3465 </span> : * @brief Copy a sequence, replacing each value for which a predicate
+<span class="lineNum"> 3466 </span> : * returns true with another value.
+<span class="lineNum"> 3467 </span> : * @param first An input iterator.
+<span class="lineNum"> 3468 </span> : * @param last An input iterator.
+<span class="lineNum"> 3469 </span> : * @param result An output iterator.
+<span class="lineNum"> 3470 </span> : * @param pred A predicate.
+<span class="lineNum"> 3471 </span> : * @param new_value The replacement value.
+<span class="lineNum"> 3472 </span> : * @return The end of the output sequence, @p result+(last-first).
+<span class="lineNum"> 3473 </span> : *
+<span class="lineNum"> 3474 </span> : * Copies each element in the range @p [first,last) to the range
+<span class="lineNum"> 3475 </span> : * @p [result,result+(last-first)) replacing elements for which
+<span class="lineNum"> 3476 </span> : * @p pred returns true with @p new_value.
+<span class="lineNum"> 3477 </span> : */
+<span class="lineNum"> 3478 </span> : template&lt;typename _InputIterator, typename _OutputIterator,
+<span class="lineNum"> 3479 </span> : typename _Predicate, typename _Tp&gt;
+<span class="lineNum"> 3480 </span> : _OutputIterator
+<span class="lineNum"> 3481 </span> : replace_copy_if(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 3482 </span> : _OutputIterator __result,
+<span class="lineNum"> 3483 </span> : _Predicate __pred, const _Tp&amp; __new_value)
+<span class="lineNum"> 3484 </span> : {
+<span class="lineNum"> 3485 </span> : // concept requirements
+<span class="lineNum"> 3486 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator&gt;)
+<span class="lineNum"> 3487 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 3488 </span> : typename iterator_traits&lt;_InputIterator&gt;::value_type&gt;)
+<span class="lineNum"> 3489 </span> : __glibcxx_function_requires(_UnaryPredicateConcept&lt;_Predicate,
+<span class="lineNum"> 3490 </span> : typename iterator_traits&lt;_InputIterator&gt;::value_type&gt;)
+<span class="lineNum"> 3491 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 3492 </span> :
+<span class="lineNum"> 3493 </span> : for (; __first != __last; ++__first, ++__result)
+<span class="lineNum"> 3494 </span> : if (__pred(*__first))
+<span class="lineNum"> 3495 </span> : *__result = __new_value;
+<span class="lineNum"> 3496 </span> : else
+<span class="lineNum"> 3497 </span> : *__result = *__first;
+<span class="lineNum"> 3498 </span> : return __result;
+<span class="lineNum"> 3499 </span> : }
+<span class="lineNum"> 3500 </span> :
+<span class="lineNum"> 3501 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 3502 </span> : /**
+<span class="lineNum"> 3503 </span> : * @brief Determines whether the elements of a sequence are sorted.
+<span class="lineNum"> 3504 </span> : * @param first An iterator.
+<span class="lineNum"> 3505 </span> : * @param last Another iterator.
+<span class="lineNum"> 3506 </span> : * @return True if the elements are sorted, false otherwise.
+<span class="lineNum"> 3507 </span> : */
+<span class="lineNum"> 3508 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 3509 </span> : inline bool
+<span class="lineNum"> 3510 </span> : is_sorted(_ForwardIterator __first, _ForwardIterator __last)
+<span class="lineNum"> 3511 </span> : { return std::is_sorted_until(__first, __last) == __last; }
+<span class="lineNum"> 3512 </span> :
+<span class="lineNum"> 3513 </span> : /**
+<span class="lineNum"> 3514 </span> : * @brief Determines whether the elements of a sequence are sorted
+<span class="lineNum"> 3515 </span> : * according to a comparison functor.
+<span class="lineNum"> 3516 </span> : * @param first An iterator.
+<span class="lineNum"> 3517 </span> : * @param last Another iterator.
+<span class="lineNum"> 3518 </span> : * @param comp A comparison functor.
+<span class="lineNum"> 3519 </span> : * @return True if the elements are sorted, false otherwise.
+<span class="lineNum"> 3520 </span> : */
+<span class="lineNum"> 3521 </span> : template&lt;typename _ForwardIterator, typename _Compare&gt;
+<span class="lineNum"> 3522 </span> : inline bool
+<span class="lineNum"> 3523 </span> : is_sorted(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 3524 </span> : _Compare __comp)
+<span class="lineNum"> 3525 </span> : { return std::is_sorted_until(__first, __last, __comp) == __last; }
+<span class="lineNum"> 3526 </span> :
+<span class="lineNum"> 3527 </span> : /**
+<span class="lineNum"> 3528 </span> : * @brief Determines the end of a sorted sequence.
+<span class="lineNum"> 3529 </span> : * @param first An iterator.
+<span class="lineNum"> 3530 </span> : * @param last Another iterator.
+<span class="lineNum"> 3531 </span> : * @return An iterator pointing to the last iterator i in [first, last)
+<span class="lineNum"> 3532 </span> : * for which the range [first, i) is sorted.
+<span class="lineNum"> 3533 </span> : */
+<span class="lineNum"> 3534 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 3535 </span> : _ForwardIterator
+<span class="lineNum"> 3536 </span> : is_sorted_until(_ForwardIterator __first, _ForwardIterator __last)
+<span class="lineNum"> 3537 </span> : {
+<span class="lineNum"> 3538 </span> : // concept requirements
+<span class="lineNum"> 3539 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 3540 </span> : __glibcxx_function_requires(_LessThanComparableConcept&lt;
+<span class="lineNum"> 3541 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type&gt;)
+<span class="lineNum"> 3542 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 3543 </span> :
+<span class="lineNum"> 3544 </span> : if (__first == __last)
+<span class="lineNum"> 3545 </span> : return __last;
+<span class="lineNum"> 3546 </span> :
+<span class="lineNum"> 3547 </span> : _ForwardIterator __next = __first;
+<span class="lineNum"> 3548 </span> : for (++__next; __next != __last; __first = __next, ++__next)
+<span class="lineNum"> 3549 </span> : if (*__next &lt; *__first)
+<span class="lineNum"> 3550 </span> : return __next;
+<span class="lineNum"> 3551 </span> : return __next;
+<span class="lineNum"> 3552 </span> : }
+<span class="lineNum"> 3553 </span> :
+<span class="lineNum"> 3554 </span> : /**
+<span class="lineNum"> 3555 </span> : * @brief Determines the end of a sorted sequence using comparison functor.
+<span class="lineNum"> 3556 </span> : * @param first An iterator.
+<span class="lineNum"> 3557 </span> : * @param last Another iterator.
+<span class="lineNum"> 3558 </span> : * @param comp A comparison functor.
+<span class="lineNum"> 3559 </span> : * @return An iterator pointing to the last iterator i in [first, last)
+<span class="lineNum"> 3560 </span> : * for which the range [first, i) is sorted.
+<span class="lineNum"> 3561 </span> : */
+<span class="lineNum"> 3562 </span> : template&lt;typename _ForwardIterator, typename _Compare&gt;
+<span class="lineNum"> 3563 </span> : _ForwardIterator
+<span class="lineNum"> 3564 </span> : is_sorted_until(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 3565 </span> : _Compare __comp)
+<span class="lineNum"> 3566 </span> : {
+<span class="lineNum"> 3567 </span> : // concept requirements
+<span class="lineNum"> 3568 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 3569 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 3570 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type,
+<span class="lineNum"> 3571 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type&gt;)
+<span class="lineNum"> 3572 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 3573 </span> :
+<span class="lineNum"> 3574 </span> : if (__first == __last)
+<span class="lineNum"> 3575 </span> : return __last;
+<span class="lineNum"> 3576 </span> :
+<span class="lineNum"> 3577 </span> : _ForwardIterator __next = __first;
+<span class="lineNum"> 3578 </span> : for (++__next; __next != __last; __first = __next, ++__next)
+<span class="lineNum"> 3579 </span> : if (__comp(*__next, *__first))
+<span class="lineNum"> 3580 </span> : return __next;
+<span class="lineNum"> 3581 </span> : return __next;
+<span class="lineNum"> 3582 </span> : }
+<span class="lineNum"> 3583 </span> :
+<span class="lineNum"> 3584 </span> : /**
+<span class="lineNum"> 3585 </span> : * @brief Determines min and max at once as an ordered pair.
+<span class="lineNum"> 3586 </span> : * @param a A thing of arbitrary type.
+<span class="lineNum"> 3587 </span> : * @param b Another thing of arbitrary type.
+<span class="lineNum"> 3588 </span> : * @return A pair(b, a) if b is smaller than a, pair(a, b) otherwise.
+<span class="lineNum"> 3589 </span> : */
+<span class="lineNum"> 3590 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 3591 </span> : inline pair&lt;const _Tp&amp;, const _Tp&amp;&gt;
+<span class="lineNum"> 3592 </span> : minmax(const _Tp&amp; __a, const _Tp&amp; __b)
+<span class="lineNum"> 3593 </span> : {
+<span class="lineNum"> 3594 </span> : // concept requirements
+<span class="lineNum"> 3595 </span> : __glibcxx_function_requires(_LessThanComparableConcept&lt;_Tp&gt;)
+<span class="lineNum"> 3596 </span> :
+<span class="lineNum"> 3597 </span> : return __b &lt; __a ? pair&lt;const _Tp&amp;, const _Tp&amp;&gt;(__b, __a)
+<span class="lineNum"> 3598 </span> : : pair&lt;const _Tp&amp;, const _Tp&amp;&gt;(__a, __b);
+<span class="lineNum"> 3599 </span> : }
+<span class="lineNum"> 3600 </span> :
+<span class="lineNum"> 3601 </span> : /**
+<span class="lineNum"> 3602 </span> : * @brief Determines min and max at once as an ordered pair.
+<span class="lineNum"> 3603 </span> : * @param a A thing of arbitrary type.
+<span class="lineNum"> 3604 </span> : * @param b Another thing of arbitrary type.
+<span class="lineNum"> 3605 </span> : * @param comp A @link s20_3_3_comparisons comparison functor@endlink.
+<span class="lineNum"> 3606 </span> : * @return A pair(b, a) if b is smaller than a, pair(a, b) otherwise.
+<span class="lineNum"> 3607 </span> : */
+<span class="lineNum"> 3608 </span> : template&lt;typename _Tp, typename _Compare&gt;
+<span class="lineNum"> 3609 </span> : inline pair&lt;const _Tp&amp;, const _Tp&amp;&gt;
+<span class="lineNum"> 3610 </span> : minmax(const _Tp&amp; __a, const _Tp&amp; __b, _Compare __comp)
+<span class="lineNum"> 3611 </span> : {
+<span class="lineNum"> 3612 </span> : return __comp(__b, __a) ? pair&lt;const _Tp&amp;, const _Tp&amp;&gt;(__b, __a)
+<span class="lineNum"> 3613 </span> : : pair&lt;const _Tp&amp;, const _Tp&amp;&gt;(__a, __b);
+<span class="lineNum"> 3614 </span> : }
+<span class="lineNum"> 3615 </span> :
+<span class="lineNum"> 3616 </span> : /**
+<span class="lineNum"> 3617 </span> : * @brief Return a pair of iterators pointing to the minimum and maximum
+<span class="lineNum"> 3618 </span> : * elements in a range.
+<span class="lineNum"> 3619 </span> : * @param first Start of range.
+<span class="lineNum"> 3620 </span> : * @param last End of range.
+<span class="lineNum"> 3621 </span> : * @return make_pair(m, M), where m is the first iterator i in
+<span class="lineNum"> 3622 </span> : * [first, last) such that no other element in the range is
+<span class="lineNum"> 3623 </span> : * smaller, and where M is the last iterator i in [first, last)
+<span class="lineNum"> 3624 </span> : * such that no other element in the range is larger.
+<span class="lineNum"> 3625 </span> : */
+<span class="lineNum"> 3626 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 3627 </span> : pair&lt;_ForwardIterator, _ForwardIterator&gt;
+<span class="lineNum"> 3628 </span> : minmax_element(_ForwardIterator __first, _ForwardIterator __last)
+<span class="lineNum"> 3629 </span> : {
+<span class="lineNum"> 3630 </span> : // concept requirements
+<span class="lineNum"> 3631 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 3632 </span> : __glibcxx_function_requires(_LessThanComparableConcept&lt;
+<span class="lineNum"> 3633 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type&gt;)
+<span class="lineNum"> 3634 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 3635 </span> :
+<span class="lineNum"> 3636 </span> : _ForwardIterator __next = __first;
+<span class="lineNum"> 3637 </span> : if (__first == __last
+<span class="lineNum"> 3638 </span> : || ++__next == __last)
+<span class="lineNum"> 3639 </span> : return std::make_pair(__first, __first);
+<span class="lineNum"> 3640 </span> :
+<span class="lineNum"> 3641 </span> : _ForwardIterator __min, __max;
+<span class="lineNum"> 3642 </span> : if (*__next &lt; *__first)
+<span class="lineNum"> 3643 </span> : {
+<span class="lineNum"> 3644 </span> : __min = __next;
+<span class="lineNum"> 3645 </span> : __max = __first;
+<span class="lineNum"> 3646 </span> : }
+<span class="lineNum"> 3647 </span> : else
+<span class="lineNum"> 3648 </span> : {
+<span class="lineNum"> 3649 </span> : __min = __first;
+<span class="lineNum"> 3650 </span> : __max = __next;
+<span class="lineNum"> 3651 </span> : }
+<span class="lineNum"> 3652 </span> :
+<span class="lineNum"> 3653 </span> : __first = __next;
+<span class="lineNum"> 3654 </span> : ++__first;
+<span class="lineNum"> 3655 </span> :
+<span class="lineNum"> 3656 </span> : while (__first != __last)
+<span class="lineNum"> 3657 </span> : {
+<span class="lineNum"> 3658 </span> : __next = __first;
+<span class="lineNum"> 3659 </span> : if (++__next == __last)
+<span class="lineNum"> 3660 </span> : {
+<span class="lineNum"> 3661 </span> : if (*__first &lt; *__min)
+<span class="lineNum"> 3662 </span> : __min = __first;
+<span class="lineNum"> 3663 </span> : else if (!(*__first &lt; *__max))
+<span class="lineNum"> 3664 </span> : __max = __first;
+<span class="lineNum"> 3665 </span> : break;
+<span class="lineNum"> 3666 </span> : }
+<span class="lineNum"> 3667 </span> :
+<span class="lineNum"> 3668 </span> : if (*__next &lt; *__first)
+<span class="lineNum"> 3669 </span> : {
+<span class="lineNum"> 3670 </span> : if (*__next &lt; *__min)
+<span class="lineNum"> 3671 </span> : __min = __next;
+<span class="lineNum"> 3672 </span> : if (!(*__first &lt; *__max))
+<span class="lineNum"> 3673 </span> : __max = __first;
+<span class="lineNum"> 3674 </span> : }
+<span class="lineNum"> 3675 </span> : else
+<span class="lineNum"> 3676 </span> : {
+<span class="lineNum"> 3677 </span> : if (*__first &lt; *__min)
+<span class="lineNum"> 3678 </span> : __min = __first;
+<span class="lineNum"> 3679 </span> : if (!(*__next &lt; *__max))
+<span class="lineNum"> 3680 </span> : __max = __next;
+<span class="lineNum"> 3681 </span> : }
+<span class="lineNum"> 3682 </span> :
+<span class="lineNum"> 3683 </span> : __first = __next;
+<span class="lineNum"> 3684 </span> : ++__first;
+<span class="lineNum"> 3685 </span> : }
+<span class="lineNum"> 3686 </span> :
+<span class="lineNum"> 3687 </span> : return std::make_pair(__min, __max);
+<span class="lineNum"> 3688 </span> : }
+<span class="lineNum"> 3689 </span> :
+<span class="lineNum"> 3690 </span> : /**
+<span class="lineNum"> 3691 </span> : * @brief Return a pair of iterators pointing to the minimum and maximum
+<span class="lineNum"> 3692 </span> : * elements in a range.
+<span class="lineNum"> 3693 </span> : * @param first Start of range.
+<span class="lineNum"> 3694 </span> : * @param last End of range.
+<span class="lineNum"> 3695 </span> : * @param comp Comparison functor.
+<span class="lineNum"> 3696 </span> : * @return make_pair(m, M), where m is the first iterator i in
+<span class="lineNum"> 3697 </span> : * [first, last) such that no other element in the range is
+<span class="lineNum"> 3698 </span> : * smaller, and where M is the last iterator i in [first, last)
+<span class="lineNum"> 3699 </span> : * such that no other element in the range is larger.
+<span class="lineNum"> 3700 </span> : */
+<span class="lineNum"> 3701 </span> : template&lt;typename _ForwardIterator, typename _Compare&gt;
+<span class="lineNum"> 3702 </span> : pair&lt;_ForwardIterator, _ForwardIterator&gt;
+<span class="lineNum"> 3703 </span> : minmax_element(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 3704 </span> : _Compare __comp)
+<span class="lineNum"> 3705 </span> : {
+<span class="lineNum"> 3706 </span> : // concept requirements
+<span class="lineNum"> 3707 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 3708 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 3709 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type,
+<span class="lineNum"> 3710 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type&gt;)
+<span class="lineNum"> 3711 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 3712 </span> :
+<span class="lineNum"> 3713 </span> : _ForwardIterator __next = __first;
+<span class="lineNum"> 3714 </span> : if (__first == __last
+<span class="lineNum"> 3715 </span> : || ++__next == __last)
+<span class="lineNum"> 3716 </span> : return std::make_pair(__first, __first);
+<span class="lineNum"> 3717 </span> :
+<span class="lineNum"> 3718 </span> : _ForwardIterator __min, __max;
+<span class="lineNum"> 3719 </span> : if (__comp(*__next, *__first))
+<span class="lineNum"> 3720 </span> : {
+<span class="lineNum"> 3721 </span> : __min = __next;
+<span class="lineNum"> 3722 </span> : __max = __first;
+<span class="lineNum"> 3723 </span> : }
+<span class="lineNum"> 3724 </span> : else
+<span class="lineNum"> 3725 </span> : {
+<span class="lineNum"> 3726 </span> : __min = __first;
+<span class="lineNum"> 3727 </span> : __max = __next;
+<span class="lineNum"> 3728 </span> : }
+<span class="lineNum"> 3729 </span> :
+<span class="lineNum"> 3730 </span> : __first = __next;
+<span class="lineNum"> 3731 </span> : ++__first;
+<span class="lineNum"> 3732 </span> :
+<span class="lineNum"> 3733 </span> : while (__first != __last)
+<span class="lineNum"> 3734 </span> : {
+<span class="lineNum"> 3735 </span> : __next = __first;
+<span class="lineNum"> 3736 </span> : if (++__next == __last)
+<span class="lineNum"> 3737 </span> : {
+<span class="lineNum"> 3738 </span> : if (__comp(*__first, *__min))
+<span class="lineNum"> 3739 </span> : __min = __first;
+<span class="lineNum"> 3740 </span> : else if (!__comp(*__first, *__max))
+<span class="lineNum"> 3741 </span> : __max = __first;
+<span class="lineNum"> 3742 </span> : break;
+<span class="lineNum"> 3743 </span> : }
+<span class="lineNum"> 3744 </span> :
+<span class="lineNum"> 3745 </span> : if (__comp(*__next, *__first))
+<span class="lineNum"> 3746 </span> : {
+<span class="lineNum"> 3747 </span> : if (__comp(*__next, *__min))
+<span class="lineNum"> 3748 </span> : __min = __next;
+<span class="lineNum"> 3749 </span> : if (!__comp(*__first, *__max))
+<span class="lineNum"> 3750 </span> : __max = __first;
+<span class="lineNum"> 3751 </span> : }
+<span class="lineNum"> 3752 </span> : else
+<span class="lineNum"> 3753 </span> : {
+<span class="lineNum"> 3754 </span> : if (__comp(*__first, *__min))
+<span class="lineNum"> 3755 </span> : __min = __first;
+<span class="lineNum"> 3756 </span> : if (!__comp(*__next, *__max))
+<span class="lineNum"> 3757 </span> : __max = __next;
+<span class="lineNum"> 3758 </span> : }
+<span class="lineNum"> 3759 </span> :
+<span class="lineNum"> 3760 </span> : __first = __next;
+<span class="lineNum"> 3761 </span> : ++__first;
+<span class="lineNum"> 3762 </span> : }
+<span class="lineNum"> 3763 </span> :
+<span class="lineNum"> 3764 </span> : return std::make_pair(__min, __max);
+<span class="lineNum"> 3765 </span> : }
+<span class="lineNum"> 3766 </span> : #endif // __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 3767 </span> :
+<span class="lineNum"> 3768 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 3769 </span> :
+<span class="lineNum"> 3770 </span> : _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P)
+<span class="lineNum"> 3771 </span> :
+<span class="lineNum"> 3772 </span> : /**
+<span class="lineNum"> 3773 </span> : * @brief Apply a function to every element of a sequence.
+<span class="lineNum"> 3774 </span> : * @param first An input iterator.
+<span class="lineNum"> 3775 </span> : * @param last An input iterator.
+<span class="lineNum"> 3776 </span> : * @param f A unary function object.
+<span class="lineNum"> 3777 </span> : * @return @p f.
+<span class="lineNum"> 3778 </span> : *
+<span class="lineNum"> 3779 </span> : * Applies the function object @p f to each element in the range
+<span class="lineNum"> 3780 </span> : * @p [first,last). @p f must not modify the order of the sequence.
+<span class="lineNum"> 3781 </span> : * If @p f has a return value it is ignored.
+<span class="lineNum"> 3782 </span> : */
+<span class="lineNum"> 3783 </span> : template&lt;typename _InputIterator, typename _Function&gt;
+<span class="lineNum"> 3784 </span> : _Function
+<span class="lineNum"> 3785 </span> : for_each(_InputIterator __first, _InputIterator __last, _Function __f)
+<span class="lineNum"> 3786 </span> : {
+<span class="lineNum"> 3787 </span> : // concept requirements
+<span class="lineNum"> 3788 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator&gt;)
+<span class="lineNum"> 3789 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 3790 </span> : for (; __first != __last; ++__first)
+<span class="lineNum"> 3791 </span> : __f(*__first);
+<span class="lineNum"> 3792 </span> : return __f;
+<span class="lineNum"> 3793 </span> : }
+<span class="lineNum"> 3794 </span> :
+<span class="lineNum"> 3795 </span> : /**
+<span class="lineNum"> 3796 </span> : * @brief Find the first occurrence of a value in a sequence.
+<span class="lineNum"> 3797 </span> : * @param first An input iterator.
+<span class="lineNum"> 3798 </span> : * @param last An input iterator.
+<span class="lineNum"> 3799 </span> : * @param val The value to find.
+<span class="lineNum"> 3800 </span> : * @return The first iterator @c i in the range @p [first,last)
+<span class="lineNum"> 3801 </span> : * such that @c *i == @p val, or @p last if no such iterator exists.
+<span class="lineNum"> 3802 </span> : */
+<span class="lineNum"> 3803 </span> : template&lt;typename _InputIterator, typename _Tp&gt;
+<span class="lineNum"> 3804 </span> : inline _InputIterator
+<span class="lineNum"> 3805 </span> : find(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 3806 </span><span class="lineCov"> 3362 : const _Tp&amp; __val)</span>
+<span class="lineNum"> 3807 </span> : {
+<span class="lineNum"> 3808 </span> : // concept requirements
+<span class="lineNum"> 3809 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator&gt;)
+<span class="lineNum"> 3810 </span> : __glibcxx_function_requires(_EqualOpConcept&lt;
+<span class="lineNum"> 3811 </span> : typename iterator_traits&lt;_InputIterator&gt;::value_type, _Tp&gt;)
+<span class="lineNum"> 3812 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 3813 </span> : return std::__find(__first, __last, __val,
+<span class="lineNum"> 3814 </span><span class="lineCov"> 3362 : std::__iterator_category(__first));</span>
+<span class="lineNum"> 3815 </span> : }
+<span class="lineNum"> 3816 </span> :
+<span class="lineNum"> 3817 </span> : /**
+<span class="lineNum"> 3818 </span> : * @brief Find the first element in a sequence for which a
+<span class="lineNum"> 3819 </span> : * predicate is true.
+<span class="lineNum"> 3820 </span> : * @param first An input iterator.
+<span class="lineNum"> 3821 </span> : * @param last An input iterator.
+<span class="lineNum"> 3822 </span> : * @param pred A predicate.
+<span class="lineNum"> 3823 </span> : * @return The first iterator @c i in the range @p [first,last)
+<span class="lineNum"> 3824 </span> : * such that @p pred(*i) is true, or @p last if no such iterator exists.
+<span class="lineNum"> 3825 </span> : */
+<span class="lineNum"> 3826 </span> : template&lt;typename _InputIterator, typename _Predicate&gt;
+<span class="lineNum"> 3827 </span> : inline _InputIterator
+<span class="lineNum"> 3828 </span> : find_if(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 3829 </span><span class="lineCov"> 3 : _Predicate __pred)</span>
+<span class="lineNum"> 3830 </span> : {
+<span class="lineNum"> 3831 </span> : // concept requirements
+<span class="lineNum"> 3832 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator&gt;)
+<span class="lineNum"> 3833 </span> : __glibcxx_function_requires(_UnaryPredicateConcept&lt;_Predicate,
+<span class="lineNum"> 3834 </span> : typename iterator_traits&lt;_InputIterator&gt;::value_type&gt;)
+<span class="lineNum"> 3835 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 3836 </span> : return std::__find_if(__first, __last, __pred,
+<span class="lineNum"> 3837 </span><span class="lineCov"> 3 : std::__iterator_category(__first));</span>
+<span class="lineNum"> 3838 </span> : }
+<span class="lineNum"> 3839 </span> :
+<span class="lineNum"> 3840 </span> : /**
+<span class="lineNum"> 3841 </span> : * @brief Find element from a set in a sequence.
+<span class="lineNum"> 3842 </span> : * @param first1 Start of range to search.
+<span class="lineNum"> 3843 </span> : * @param last1 End of range to search.
+<span class="lineNum"> 3844 </span> : * @param first2 Start of match candidates.
+<span class="lineNum"> 3845 </span> : * @param last2 End of match candidates.
+<span class="lineNum"> 3846 </span> : * @return The first iterator @c i in the range
+<span class="lineNum"> 3847 </span> : * @p [first1,last1) such that @c *i == @p *(i2) such that i2 is an
+<span class="lineNum"> 3848 </span> : * iterator in [first2,last2), or @p last1 if no such iterator exists.
+<span class="lineNum"> 3849 </span> : *
+<span class="lineNum"> 3850 </span> : * Searches the range @p [first1,last1) for an element that is equal to
+<span class="lineNum"> 3851 </span> : * some element in the range [first2,last2). If found, returns an iterator
+<span class="lineNum"> 3852 </span> : * in the range [first1,last1), otherwise returns @p last1.
+<span class="lineNum"> 3853 </span> : */
+<span class="lineNum"> 3854 </span> : template&lt;typename _InputIterator, typename _ForwardIterator&gt;
+<span class="lineNum"> 3855 </span> : _InputIterator
+<span class="lineNum"> 3856 </span> : find_first_of(_InputIterator __first1, _InputIterator __last1,
+<span class="lineNum"> 3857 </span> : _ForwardIterator __first2, _ForwardIterator __last2)
+<span class="lineNum"> 3858 </span> : {
+<span class="lineNum"> 3859 </span> : // concept requirements
+<span class="lineNum"> 3860 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator&gt;)
+<span class="lineNum"> 3861 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 3862 </span> : __glibcxx_function_requires(_EqualOpConcept&lt;
+<span class="lineNum"> 3863 </span> : typename iterator_traits&lt;_InputIterator&gt;::value_type,
+<span class="lineNum"> 3864 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type&gt;)
+<span class="lineNum"> 3865 </span> : __glibcxx_requires_valid_range(__first1, __last1);
+<span class="lineNum"> 3866 </span> : __glibcxx_requires_valid_range(__first2, __last2);
+<span class="lineNum"> 3867 </span> :
+<span class="lineNum"> 3868 </span> : for (; __first1 != __last1; ++__first1)
+<span class="lineNum"> 3869 </span> : for (_ForwardIterator __iter = __first2; __iter != __last2; ++__iter)
+<span class="lineNum"> 3870 </span> : if (*__first1 == *__iter)
+<span class="lineNum"> 3871 </span> : return __first1;
+<span class="lineNum"> 3872 </span> : return __last1;
+<span class="lineNum"> 3873 </span> : }
+<span class="lineNum"> 3874 </span> :
+<span class="lineNum"> 3875 </span> : /**
+<span class="lineNum"> 3876 </span> : * @brief Find element from a set in a sequence using a predicate.
+<span class="lineNum"> 3877 </span> : * @param first1 Start of range to search.
+<span class="lineNum"> 3878 </span> : * @param last1 End of range to search.
+<span class="lineNum"> 3879 </span> : * @param first2 Start of match candidates.
+<span class="lineNum"> 3880 </span> : * @param last2 End of match candidates.
+<span class="lineNum"> 3881 </span> : * @param comp Predicate to use.
+<span class="lineNum"> 3882 </span> : * @return The first iterator @c i in the range
+<span class="lineNum"> 3883 </span> : * @p [first1,last1) such that @c comp(*i, @p *(i2)) is true and i2 is an
+<span class="lineNum"> 3884 </span> : * iterator in [first2,last2), or @p last1 if no such iterator exists.
+<span class="lineNum"> 3885 </span> : *
+<span class="lineNum"> 3886 </span> :
+<span class="lineNum"> 3887 </span> : * Searches the range @p [first1,last1) for an element that is
+<span class="lineNum"> 3888 </span> : * equal to some element in the range [first2,last2). If found,
+<span class="lineNum"> 3889 </span> : * returns an iterator in the range [first1,last1), otherwise
+<span class="lineNum"> 3890 </span> : * returns @p last1.
+<span class="lineNum"> 3891 </span> : */
+<span class="lineNum"> 3892 </span> : template&lt;typename _InputIterator, typename _ForwardIterator,
+<span class="lineNum"> 3893 </span> : typename _BinaryPredicate&gt;
+<span class="lineNum"> 3894 </span> : _InputIterator
+<span class="lineNum"> 3895 </span> : find_first_of(_InputIterator __first1, _InputIterator __last1,
+<span class="lineNum"> 3896 </span> : _ForwardIterator __first2, _ForwardIterator __last2,
+<span class="lineNum"> 3897 </span> : _BinaryPredicate __comp)
+<span class="lineNum"> 3898 </span> : {
+<span class="lineNum"> 3899 </span> : // concept requirements
+<span class="lineNum"> 3900 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator&gt;)
+<span class="lineNum"> 3901 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 3902 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_BinaryPredicate,
+<span class="lineNum"> 3903 </span> : typename iterator_traits&lt;_InputIterator&gt;::value_type,
+<span class="lineNum"> 3904 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type&gt;)
+<span class="lineNum"> 3905 </span> : __glibcxx_requires_valid_range(__first1, __last1);
+<span class="lineNum"> 3906 </span> : __glibcxx_requires_valid_range(__first2, __last2);
+<span class="lineNum"> 3907 </span> :
+<span class="lineNum"> 3908 </span> : for (; __first1 != __last1; ++__first1)
+<span class="lineNum"> 3909 </span> : for (_ForwardIterator __iter = __first2; __iter != __last2; ++__iter)
+<span class="lineNum"> 3910 </span> : if (__comp(*__first1, *__iter))
+<span class="lineNum"> 3911 </span> : return __first1;
+<span class="lineNum"> 3912 </span> : return __last1;
+<span class="lineNum"> 3913 </span> : }
+<span class="lineNum"> 3914 </span> :
+<span class="lineNum"> 3915 </span> : /**
+<span class="lineNum"> 3916 </span> : * @brief Find two adjacent values in a sequence that are equal.
+<span class="lineNum"> 3917 </span> : * @param first A forward iterator.
+<span class="lineNum"> 3918 </span> : * @param last A forward iterator.
+<span class="lineNum"> 3919 </span> : * @return The first iterator @c i such that @c i and @c i+1 are both
+<span class="lineNum"> 3920 </span> : * valid iterators in @p [first,last) and such that @c *i == @c *(i+1),
+<span class="lineNum"> 3921 </span> : * or @p last if no such iterator exists.
+<span class="lineNum"> 3922 </span> : */
+<span class="lineNum"> 3923 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 3924 </span> : _ForwardIterator
+<span class="lineNum"> 3925 </span> : adjacent_find(_ForwardIterator __first, _ForwardIterator __last)
+<span class="lineNum"> 3926 </span> : {
+<span class="lineNum"> 3927 </span> : // concept requirements
+<span class="lineNum"> 3928 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 3929 </span> : __glibcxx_function_requires(_EqualityComparableConcept&lt;
+<span class="lineNum"> 3930 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type&gt;)
+<span class="lineNum"> 3931 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 3932 </span> : if (__first == __last)
+<span class="lineNum"> 3933 </span> : return __last;
+<span class="lineNum"> 3934 </span> : _ForwardIterator __next = __first;
+<span class="lineNum"> 3935 </span> : while(++__next != __last)
+<span class="lineNum"> 3936 </span> : {
+<span class="lineNum"> 3937 </span> : if (*__first == *__next)
+<span class="lineNum"> 3938 </span> : return __first;
+<span class="lineNum"> 3939 </span> : __first = __next;
+<span class="lineNum"> 3940 </span> : }
+<span class="lineNum"> 3941 </span> : return __last;
+<span class="lineNum"> 3942 </span> : }
+<span class="lineNum"> 3943 </span> :
+<span class="lineNum"> 3944 </span> : /**
+<span class="lineNum"> 3945 </span> : * @brief Find two adjacent values in a sequence using a predicate.
+<span class="lineNum"> 3946 </span> : * @param first A forward iterator.
+<span class="lineNum"> 3947 </span> : * @param last A forward iterator.
+<span class="lineNum"> 3948 </span> : * @param binary_pred A binary predicate.
+<span class="lineNum"> 3949 </span> : * @return The first iterator @c i such that @c i and @c i+1 are both
+<span class="lineNum"> 3950 </span> : * valid iterators in @p [first,last) and such that
+<span class="lineNum"> 3951 </span> : * @p binary_pred(*i,*(i+1)) is true, or @p last if no such iterator
+<span class="lineNum"> 3952 </span> : * exists.
+<span class="lineNum"> 3953 </span> : */
+<span class="lineNum"> 3954 </span> : template&lt;typename _ForwardIterator, typename _BinaryPredicate&gt;
+<span class="lineNum"> 3955 </span> : _ForwardIterator
+<span class="lineNum"> 3956 </span> : adjacent_find(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 3957 </span> : _BinaryPredicate __binary_pred)
+<span class="lineNum"> 3958 </span> : {
+<span class="lineNum"> 3959 </span> : // concept requirements
+<span class="lineNum"> 3960 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 3961 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_BinaryPredicate,
+<span class="lineNum"> 3962 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type,
+<span class="lineNum"> 3963 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type&gt;)
+<span class="lineNum"> 3964 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 3965 </span> : if (__first == __last)
+<span class="lineNum"> 3966 </span> : return __last;
+<span class="lineNum"> 3967 </span> : _ForwardIterator __next = __first;
+<span class="lineNum"> 3968 </span> : while(++__next != __last)
+<span class="lineNum"> 3969 </span> : {
+<span class="lineNum"> 3970 </span> : if (__binary_pred(*__first, *__next))
+<span class="lineNum"> 3971 </span> : return __first;
+<span class="lineNum"> 3972 </span> : __first = __next;
+<span class="lineNum"> 3973 </span> : }
+<span class="lineNum"> 3974 </span> : return __last;
+<span class="lineNum"> 3975 </span> : }
+<span class="lineNum"> 3976 </span> :
+<span class="lineNum"> 3977 </span> : /**
+<span class="lineNum"> 3978 </span> : * @brief Count the number of copies of a value in a sequence.
+<span class="lineNum"> 3979 </span> : * @param first An input iterator.
+<span class="lineNum"> 3980 </span> : * @param last An input iterator.
+<span class="lineNum"> 3981 </span> : * @param value The value to be counted.
+<span class="lineNum"> 3982 </span> : * @return The number of iterators @c i in the range @p [first,last)
+<span class="lineNum"> 3983 </span> : * for which @c *i == @p value
+<span class="lineNum"> 3984 </span> : */
+<span class="lineNum"> 3985 </span> : template&lt;typename _InputIterator, typename _Tp&gt;
+<span class="lineNum"> 3986 </span> : typename iterator_traits&lt;_InputIterator&gt;::difference_type
+<span class="lineNum"> 3987 </span> : count(_InputIterator __first, _InputIterator __last, const _Tp&amp; __value)
+<span class="lineNum"> 3988 </span> : {
+<span class="lineNum"> 3989 </span> : // concept requirements
+<span class="lineNum"> 3990 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator&gt;)
+<span class="lineNum"> 3991 </span> : __glibcxx_function_requires(_EqualOpConcept&lt;
+<span class="lineNum"> 3992 </span> : typename iterator_traits&lt;_InputIterator&gt;::value_type, _Tp&gt;)
+<span class="lineNum"> 3993 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 3994 </span> : typename iterator_traits&lt;_InputIterator&gt;::difference_type __n = 0;
+<span class="lineNum"> 3995 </span> : for (; __first != __last; ++__first)
+<span class="lineNum"> 3996 </span> : if (*__first == __value)
+<span class="lineNum"> 3997 </span> : ++__n;
+<span class="lineNum"> 3998 </span> : return __n;
+<span class="lineNum"> 3999 </span> : }
+<span class="lineNum"> 4000 </span> :
+<span class="lineNum"> 4001 </span> : /**
+<span class="lineNum"> 4002 </span> : * @brief Count the elements of a sequence for which a predicate is true.
+<span class="lineNum"> 4003 </span> : * @param first An input iterator.
+<span class="lineNum"> 4004 </span> : * @param last An input iterator.
+<span class="lineNum"> 4005 </span> : * @param pred A predicate.
+<span class="lineNum"> 4006 </span> : * @return The number of iterators @c i in the range @p [first,last)
+<span class="lineNum"> 4007 </span> : * for which @p pred(*i) is true.
+<span class="lineNum"> 4008 </span> : */
+<span class="lineNum"> 4009 </span> : template&lt;typename _InputIterator, typename _Predicate&gt;
+<span class="lineNum"> 4010 </span> : typename iterator_traits&lt;_InputIterator&gt;::difference_type
+<span class="lineNum"> 4011 </span> : count_if(_InputIterator __first, _InputIterator __last, _Predicate __pred)
+<span class="lineNum"> 4012 </span> : {
+<span class="lineNum"> 4013 </span> : // concept requirements
+<span class="lineNum"> 4014 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator&gt;)
+<span class="lineNum"> 4015 </span> : __glibcxx_function_requires(_UnaryPredicateConcept&lt;_Predicate,
+<span class="lineNum"> 4016 </span> : typename iterator_traits&lt;_InputIterator&gt;::value_type&gt;)
+<span class="lineNum"> 4017 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 4018 </span> : typename iterator_traits&lt;_InputIterator&gt;::difference_type __n = 0;
+<span class="lineNum"> 4019 </span> : for (; __first != __last; ++__first)
+<span class="lineNum"> 4020 </span> : if (__pred(*__first))
+<span class="lineNum"> 4021 </span> : ++__n;
+<span class="lineNum"> 4022 </span> : return __n;
+<span class="lineNum"> 4023 </span> : }
+<span class="lineNum"> 4024 </span> :
+<span class="lineNum"> 4025 </span> : /**
+<span class="lineNum"> 4026 </span> : * @brief Search a sequence for a matching sub-sequence.
+<span class="lineNum"> 4027 </span> : * @param first1 A forward iterator.
+<span class="lineNum"> 4028 </span> : * @param last1 A forward iterator.
+<span class="lineNum"> 4029 </span> : * @param first2 A forward iterator.
+<span class="lineNum"> 4030 </span> : * @param last2 A forward iterator.
+<span class="lineNum"> 4031 </span> : * @return The first iterator @c i in the range
+<span class="lineNum"> 4032 </span> : * @p [first1,last1-(last2-first2)) such that @c *(i+N) == @p *(first2+N)
+<span class="lineNum"> 4033 </span> : * for each @c N in the range @p [0,last2-first2), or @p last1 if no
+<span class="lineNum"> 4034 </span> : * such iterator exists.
+<span class="lineNum"> 4035 </span> : *
+<span class="lineNum"> 4036 </span> : * Searches the range @p [first1,last1) for a sub-sequence that compares
+<span class="lineNum"> 4037 </span> : * equal value-by-value with the sequence given by @p [first2,last2) and
+<span class="lineNum"> 4038 </span> : * returns an iterator to the first element of the sub-sequence, or
+<span class="lineNum"> 4039 </span> : * @p last1 if the sub-sequence is not found.
+<span class="lineNum"> 4040 </span> : *
+<span class="lineNum"> 4041 </span> : * Because the sub-sequence must lie completely within the range
+<span class="lineNum"> 4042 </span> : * @p [first1,last1) it must start at a position less than
+<span class="lineNum"> 4043 </span> : * @p last1-(last2-first2) where @p last2-first2 is the length of the
+<span class="lineNum"> 4044 </span> : * sub-sequence.
+<span class="lineNum"> 4045 </span> : * This means that the returned iterator @c i will be in the range
+<span class="lineNum"> 4046 </span> : * @p [first1,last1-(last2-first2))
+<span class="lineNum"> 4047 </span> : */
+<span class="lineNum"> 4048 </span> : template&lt;typename _ForwardIterator1, typename _ForwardIterator2&gt;
+<span class="lineNum"> 4049 </span> : _ForwardIterator1
+<span class="lineNum"> 4050 </span> : search(_ForwardIterator1 __first1, _ForwardIterator1 __last1,
+<span class="lineNum"> 4051 </span> : _ForwardIterator2 __first2, _ForwardIterator2 __last2)
+<span class="lineNum"> 4052 </span> : {
+<span class="lineNum"> 4053 </span> : // concept requirements
+<span class="lineNum"> 4054 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator1&gt;)
+<span class="lineNum"> 4055 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator2&gt;)
+<span class="lineNum"> 4056 </span> : __glibcxx_function_requires(_EqualOpConcept&lt;
+<span class="lineNum"> 4057 </span> : typename iterator_traits&lt;_ForwardIterator1&gt;::value_type,
+<span class="lineNum"> 4058 </span> : typename iterator_traits&lt;_ForwardIterator2&gt;::value_type&gt;)
+<span class="lineNum"> 4059 </span> : __glibcxx_requires_valid_range(__first1, __last1);
+<span class="lineNum"> 4060 </span> : __glibcxx_requires_valid_range(__first2, __last2);
+<span class="lineNum"> 4061 </span> :
+<span class="lineNum"> 4062 </span> : // Test for empty ranges
+<span class="lineNum"> 4063 </span> : if (__first1 == __last1 || __first2 == __last2)
+<span class="lineNum"> 4064 </span> : return __first1;
+<span class="lineNum"> 4065 </span> :
+<span class="lineNum"> 4066 </span> : // Test for a pattern of length 1.
+<span class="lineNum"> 4067 </span> : _ForwardIterator2 __p1(__first2);
+<span class="lineNum"> 4068 </span> : if (++__p1 == __last2)
+<span class="lineNum"> 4069 </span> : return _GLIBCXX_STD_P::find(__first1, __last1, *__first2);
+<span class="lineNum"> 4070 </span> :
+<span class="lineNum"> 4071 </span> : // General case.
+<span class="lineNum"> 4072 </span> : _ForwardIterator2 __p;
+<span class="lineNum"> 4073 </span> : _ForwardIterator1 __current = __first1;
+<span class="lineNum"> 4074 </span> :
+<span class="lineNum"> 4075 </span> : for (;;)
+<span class="lineNum"> 4076 </span> : {
+<span class="lineNum"> 4077 </span> : __first1 = _GLIBCXX_STD_P::find(__first1, __last1, *__first2);
+<span class="lineNum"> 4078 </span> : if (__first1 == __last1)
+<span class="lineNum"> 4079 </span> : return __last1;
+<span class="lineNum"> 4080 </span> :
+<span class="lineNum"> 4081 </span> : __p = __p1;
+<span class="lineNum"> 4082 </span> : __current = __first1;
+<span class="lineNum"> 4083 </span> : if (++__current == __last1)
+<span class="lineNum"> 4084 </span> : return __last1;
+<span class="lineNum"> 4085 </span> :
+<span class="lineNum"> 4086 </span> : while (*__current == *__p)
+<span class="lineNum"> 4087 </span> : {
+<span class="lineNum"> 4088 </span> : if (++__p == __last2)
+<span class="lineNum"> 4089 </span> : return __first1;
+<span class="lineNum"> 4090 </span> : if (++__current == __last1)
+<span class="lineNum"> 4091 </span> : return __last1;
+<span class="lineNum"> 4092 </span> : }
+<span class="lineNum"> 4093 </span> : ++__first1;
+<span class="lineNum"> 4094 </span> : }
+<span class="lineNum"> 4095 </span> : return __first1;
+<span class="lineNum"> 4096 </span> : }
+<span class="lineNum"> 4097 </span> :
+<span class="lineNum"> 4098 </span> : /**
+<span class="lineNum"> 4099 </span> : * @brief Search a sequence for a matching sub-sequence using a predicate.
+<span class="lineNum"> 4100 </span> : * @param first1 A forward iterator.
+<span class="lineNum"> 4101 </span> : * @param last1 A forward iterator.
+<span class="lineNum"> 4102 </span> : * @param first2 A forward iterator.
+<span class="lineNum"> 4103 </span> : * @param last2 A forward iterator.
+<span class="lineNum"> 4104 </span> : * @param predicate A binary predicate.
+<span class="lineNum"> 4105 </span> : * @return The first iterator @c i in the range
+<span class="lineNum"> 4106 </span> : * @p [first1,last1-(last2-first2)) such that
+<span class="lineNum"> 4107 </span> : * @p predicate(*(i+N),*(first2+N)) is true for each @c N in the range
+<span class="lineNum"> 4108 </span> : * @p [0,last2-first2), or @p last1 if no such iterator exists.
+<span class="lineNum"> 4109 </span> : *
+<span class="lineNum"> 4110 </span> : * Searches the range @p [first1,last1) for a sub-sequence that compares
+<span class="lineNum"> 4111 </span> : * equal value-by-value with the sequence given by @p [first2,last2),
+<span class="lineNum"> 4112 </span> : * using @p predicate to determine equality, and returns an iterator
+<span class="lineNum"> 4113 </span> : * to the first element of the sub-sequence, or @p last1 if no such
+<span class="lineNum"> 4114 </span> : * iterator exists.
+<span class="lineNum"> 4115 </span> : *
+<span class="lineNum"> 4116 </span> : * @see search(_ForwardIter1, _ForwardIter1, _ForwardIter2, _ForwardIter2)
+<span class="lineNum"> 4117 </span> : */
+<span class="lineNum"> 4118 </span> : template&lt;typename _ForwardIterator1, typename _ForwardIterator2,
+<span class="lineNum"> 4119 </span> : typename _BinaryPredicate&gt;
+<span class="lineNum"> 4120 </span> : _ForwardIterator1
+<span class="lineNum"> 4121 </span> : search(_ForwardIterator1 __first1, _ForwardIterator1 __last1,
+<span class="lineNum"> 4122 </span> : _ForwardIterator2 __first2, _ForwardIterator2 __last2,
+<span class="lineNum"> 4123 </span> : _BinaryPredicate __predicate)
+<span class="lineNum"> 4124 </span> : {
+<span class="lineNum"> 4125 </span> : // concept requirements
+<span class="lineNum"> 4126 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator1&gt;)
+<span class="lineNum"> 4127 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator2&gt;)
+<span class="lineNum"> 4128 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_BinaryPredicate,
+<span class="lineNum"> 4129 </span> : typename iterator_traits&lt;_ForwardIterator1&gt;::value_type,
+<span class="lineNum"> 4130 </span> : typename iterator_traits&lt;_ForwardIterator2&gt;::value_type&gt;)
+<span class="lineNum"> 4131 </span> : __glibcxx_requires_valid_range(__first1, __last1);
+<span class="lineNum"> 4132 </span> : __glibcxx_requires_valid_range(__first2, __last2);
+<span class="lineNum"> 4133 </span> :
+<span class="lineNum"> 4134 </span> : // Test for empty ranges
+<span class="lineNum"> 4135 </span> : if (__first1 == __last1 || __first2 == __last2)
+<span class="lineNum"> 4136 </span> : return __first1;
+<span class="lineNum"> 4137 </span> :
+<span class="lineNum"> 4138 </span> : // Test for a pattern of length 1.
+<span class="lineNum"> 4139 </span> : _ForwardIterator2 __p1(__first2);
+<span class="lineNum"> 4140 </span> : if (++__p1 == __last2)
+<span class="lineNum"> 4141 </span> : {
+<span class="lineNum"> 4142 </span> : while (__first1 != __last1
+<span class="lineNum"> 4143 </span> : &amp;&amp; !bool(__predicate(*__first1, *__first2)))
+<span class="lineNum"> 4144 </span> : ++__first1;
+<span class="lineNum"> 4145 </span> : return __first1;
+<span class="lineNum"> 4146 </span> : }
+<span class="lineNum"> 4147 </span> :
+<span class="lineNum"> 4148 </span> : // General case.
+<span class="lineNum"> 4149 </span> : _ForwardIterator2 __p;
+<span class="lineNum"> 4150 </span> : _ForwardIterator1 __current = __first1;
+<span class="lineNum"> 4151 </span> :
+<span class="lineNum"> 4152 </span> : for (;;)
+<span class="lineNum"> 4153 </span> : {
+<span class="lineNum"> 4154 </span> : while (__first1 != __last1
+<span class="lineNum"> 4155 </span> : &amp;&amp; !bool(__predicate(*__first1, *__first2)))
+<span class="lineNum"> 4156 </span> : ++__first1;
+<span class="lineNum"> 4157 </span> : if (__first1 == __last1)
+<span class="lineNum"> 4158 </span> : return __last1;
+<span class="lineNum"> 4159 </span> :
+<span class="lineNum"> 4160 </span> : __p = __p1;
+<span class="lineNum"> 4161 </span> : __current = __first1;
+<span class="lineNum"> 4162 </span> : if (++__current == __last1)
+<span class="lineNum"> 4163 </span> : return __last1;
+<span class="lineNum"> 4164 </span> :
+<span class="lineNum"> 4165 </span> : while (__predicate(*__current, *__p))
+<span class="lineNum"> 4166 </span> : {
+<span class="lineNum"> 4167 </span> : if (++__p == __last2)
+<span class="lineNum"> 4168 </span> : return __first1;
+<span class="lineNum"> 4169 </span> : if (++__current == __last1)
+<span class="lineNum"> 4170 </span> : return __last1;
+<span class="lineNum"> 4171 </span> : }
+<span class="lineNum"> 4172 </span> : ++__first1;
+<span class="lineNum"> 4173 </span> : }
+<span class="lineNum"> 4174 </span> : return __first1;
+<span class="lineNum"> 4175 </span> : }
+<span class="lineNum"> 4176 </span> :
+<span class="lineNum"> 4177 </span> :
+<span class="lineNum"> 4178 </span> : /**
+<span class="lineNum"> 4179 </span> : * @brief Search a sequence for a number of consecutive values.
+<span class="lineNum"> 4180 </span> : * @param first A forward iterator.
+<span class="lineNum"> 4181 </span> : * @param last A forward iterator.
+<span class="lineNum"> 4182 </span> : * @param count The number of consecutive values.
+<span class="lineNum"> 4183 </span> : * @param val The value to find.
+<span class="lineNum"> 4184 </span> : * @return The first iterator @c i in the range @p [first,last-count)
+<span class="lineNum"> 4185 </span> : * such that @c *(i+N) == @p val for each @c N in the range @p [0,count),
+<span class="lineNum"> 4186 </span> : * or @p last if no such iterator exists.
+<span class="lineNum"> 4187 </span> : *
+<span class="lineNum"> 4188 </span> : * Searches the range @p [first,last) for @p count consecutive elements
+<span class="lineNum"> 4189 </span> : * equal to @p val.
+<span class="lineNum"> 4190 </span> : */
+<span class="lineNum"> 4191 </span> : template&lt;typename _ForwardIterator, typename _Integer, typename _Tp&gt;
+<span class="lineNum"> 4192 </span> : _ForwardIterator
+<span class="lineNum"> 4193 </span> : search_n(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 4194 </span> : _Integer __count, const _Tp&amp; __val)
+<span class="lineNum"> 4195 </span> : {
+<span class="lineNum"> 4196 </span> : // concept requirements
+<span class="lineNum"> 4197 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 4198 </span> : __glibcxx_function_requires(_EqualOpConcept&lt;
+<span class="lineNum"> 4199 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type, _Tp&gt;)
+<span class="lineNum"> 4200 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 4201 </span> :
+<span class="lineNum"> 4202 </span> : if (__count &lt;= 0)
+<span class="lineNum"> 4203 </span> : return __first;
+<span class="lineNum"> 4204 </span> : if (__count == 1)
+<span class="lineNum"> 4205 </span> : return _GLIBCXX_STD_P::find(__first, __last, __val);
+<span class="lineNum"> 4206 </span> : return std::__search_n(__first, __last, __count, __val,
+<span class="lineNum"> 4207 </span> : std::__iterator_category(__first));
+<span class="lineNum"> 4208 </span> : }
+<span class="lineNum"> 4209 </span> :
+<span class="lineNum"> 4210 </span> :
+<span class="lineNum"> 4211 </span> : /**
+<span class="lineNum"> 4212 </span> : * @brief Search a sequence for a number of consecutive values using a
+<span class="lineNum"> 4213 </span> : * predicate.
+<span class="lineNum"> 4214 </span> : * @param first A forward iterator.
+<span class="lineNum"> 4215 </span> : * @param last A forward iterator.
+<span class="lineNum"> 4216 </span> : * @param count The number of consecutive values.
+<span class="lineNum"> 4217 </span> : * @param val The value to find.
+<span class="lineNum"> 4218 </span> : * @param binary_pred A binary predicate.
+<span class="lineNum"> 4219 </span> : * @return The first iterator @c i in the range @p [first,last-count)
+<span class="lineNum"> 4220 </span> : * such that @p binary_pred(*(i+N),val) is true for each @c N in the
+<span class="lineNum"> 4221 </span> : * range @p [0,count), or @p last if no such iterator exists.
+<span class="lineNum"> 4222 </span> : *
+<span class="lineNum"> 4223 </span> : * Searches the range @p [first,last) for @p count consecutive elements
+<span class="lineNum"> 4224 </span> : * for which the predicate returns true.
+<span class="lineNum"> 4225 </span> : */
+<span class="lineNum"> 4226 </span> : template&lt;typename _ForwardIterator, typename _Integer, typename _Tp,
+<span class="lineNum"> 4227 </span> : typename _BinaryPredicate&gt;
+<span class="lineNum"> 4228 </span> : _ForwardIterator
+<span class="lineNum"> 4229 </span> : search_n(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 4230 </span> : _Integer __count, const _Tp&amp; __val,
+<span class="lineNum"> 4231 </span> : _BinaryPredicate __binary_pred)
+<span class="lineNum"> 4232 </span> : {
+<span class="lineNum"> 4233 </span> : // concept requirements
+<span class="lineNum"> 4234 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 4235 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_BinaryPredicate,
+<span class="lineNum"> 4236 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type, _Tp&gt;)
+<span class="lineNum"> 4237 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 4238 </span> :
+<span class="lineNum"> 4239 </span> : if (__count &lt;= 0)
+<span class="lineNum"> 4240 </span> : return __first;
+<span class="lineNum"> 4241 </span> : if (__count == 1)
+<span class="lineNum"> 4242 </span> : {
+<span class="lineNum"> 4243 </span> : while (__first != __last &amp;&amp; !bool(__binary_pred(*__first, __val)))
+<span class="lineNum"> 4244 </span> : ++__first;
+<span class="lineNum"> 4245 </span> : return __first;
+<span class="lineNum"> 4246 </span> : }
+<span class="lineNum"> 4247 </span> : return std::__search_n(__first, __last, __count, __val, __binary_pred,
+<span class="lineNum"> 4248 </span> : std::__iterator_category(__first));
+<span class="lineNum"> 4249 </span> : }
+<span class="lineNum"> 4250 </span> :
+<span class="lineNum"> 4251 </span> :
+<span class="lineNum"> 4252 </span> : /**
+<span class="lineNum"> 4253 </span> : * @brief Perform an operation on a sequence.
+<span class="lineNum"> 4254 </span> : * @param first An input iterator.
+<span class="lineNum"> 4255 </span> : * @param last An input iterator.
+<span class="lineNum"> 4256 </span> : * @param result An output iterator.
+<span class="lineNum"> 4257 </span> : * @param unary_op A unary operator.
+<span class="lineNum"> 4258 </span> : * @return An output iterator equal to @p result+(last-first).
+<span class="lineNum"> 4259 </span> : *
+<span class="lineNum"> 4260 </span> : * Applies the operator to each element in the input range and assigns
+<span class="lineNum"> 4261 </span> : * the results to successive elements of the output sequence.
+<span class="lineNum"> 4262 </span> : * Evaluates @p *(result+N)=unary_op(*(first+N)) for each @c N in the
+<span class="lineNum"> 4263 </span> : * range @p [0,last-first).
+<span class="lineNum"> 4264 </span> : *
+<span class="lineNum"> 4265 </span> : * @p unary_op must not alter its argument.
+<span class="lineNum"> 4266 </span> : */
+<span class="lineNum"> 4267 </span> : template&lt;typename _InputIterator, typename _OutputIterator,
+<span class="lineNum"> 4268 </span> : typename _UnaryOperation&gt;
+<span class="lineNum"> 4269 </span> : _OutputIterator
+<span class="lineNum"> 4270 </span> : transform(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 4271 </span> : _OutputIterator __result, _UnaryOperation __unary_op)
+<span class="lineNum"> 4272 </span> : {
+<span class="lineNum"> 4273 </span> : // concept requirements
+<span class="lineNum"> 4274 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator&gt;)
+<span class="lineNum"> 4275 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 4276 </span> : // &quot;the type returned by a _UnaryOperation&quot;
+<span class="lineNum"> 4277 </span> : __typeof__(__unary_op(*__first))&gt;)
+<span class="lineNum"> 4278 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 4279 </span> :
+<span class="lineNum"> 4280 </span> : for (; __first != __last; ++__first, ++__result)
+<span class="lineNum"> 4281 </span> : *__result = __unary_op(*__first);
+<span class="lineNum"> 4282 </span> : return __result;
+<span class="lineNum"> 4283 </span> : }
+<span class="lineNum"> 4284 </span> :
+<span class="lineNum"> 4285 </span> : /**
+<span class="lineNum"> 4286 </span> : * @brief Perform an operation on corresponding elements of two sequences.
+<span class="lineNum"> 4287 </span> : * @param first1 An input iterator.
+<span class="lineNum"> 4288 </span> : * @param last1 An input iterator.
+<span class="lineNum"> 4289 </span> : * @param first2 An input iterator.
+<span class="lineNum"> 4290 </span> : * @param result An output iterator.
+<span class="lineNum"> 4291 </span> : * @param binary_op A binary operator.
+<span class="lineNum"> 4292 </span> : * @return An output iterator equal to @p result+(last-first).
+<span class="lineNum"> 4293 </span> : *
+<span class="lineNum"> 4294 </span> : * Applies the operator to the corresponding elements in the two
+<span class="lineNum"> 4295 </span> : * input ranges and assigns the results to successive elements of the
+<span class="lineNum"> 4296 </span> : * output sequence.
+<span class="lineNum"> 4297 </span> : * Evaluates @p *(result+N)=binary_op(*(first1+N),*(first2+N)) for each
+<span class="lineNum"> 4298 </span> : * @c N in the range @p [0,last1-first1).
+<span class="lineNum"> 4299 </span> : *
+<span class="lineNum"> 4300 </span> : * @p binary_op must not alter either of its arguments.
+<span class="lineNum"> 4301 </span> : */
+<span class="lineNum"> 4302 </span> : template&lt;typename _InputIterator1, typename _InputIterator2,
+<span class="lineNum"> 4303 </span> : typename _OutputIterator, typename _BinaryOperation&gt;
+<span class="lineNum"> 4304 </span> : _OutputIterator
+<span class="lineNum"> 4305 </span> : transform(_InputIterator1 __first1, _InputIterator1 __last1,
+<span class="lineNum"> 4306 </span> : _InputIterator2 __first2, _OutputIterator __result,
+<span class="lineNum"> 4307 </span> : _BinaryOperation __binary_op)
+<span class="lineNum"> 4308 </span> : {
+<span class="lineNum"> 4309 </span> : // concept requirements
+<span class="lineNum"> 4310 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator1&gt;)
+<span class="lineNum"> 4311 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator2&gt;)
+<span class="lineNum"> 4312 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 4313 </span> : // &quot;the type returned by a _BinaryOperation&quot;
+<span class="lineNum"> 4314 </span> : __typeof__(__binary_op(*__first1,*__first2))&gt;)
+<span class="lineNum"> 4315 </span> : __glibcxx_requires_valid_range(__first1, __last1);
+<span class="lineNum"> 4316 </span> :
+<span class="lineNum"> 4317 </span> : for (; __first1 != __last1; ++__first1, ++__first2, ++__result)
+<span class="lineNum"> 4318 </span> : *__result = __binary_op(*__first1, *__first2);
+<span class="lineNum"> 4319 </span> : return __result;
+<span class="lineNum"> 4320 </span> : }
+<span class="lineNum"> 4321 </span> :
+<span class="lineNum"> 4322 </span> : /**
+<span class="lineNum"> 4323 </span> : * @brief Replace each occurrence of one value in a sequence with another
+<span class="lineNum"> 4324 </span> : * value.
+<span class="lineNum"> 4325 </span> : * @param first A forward iterator.
+<span class="lineNum"> 4326 </span> : * @param last A forward iterator.
+<span class="lineNum"> 4327 </span> : * @param old_value The value to be replaced.
+<span class="lineNum"> 4328 </span> : * @param new_value The replacement value.
+<span class="lineNum"> 4329 </span> : * @return replace() returns no value.
+<span class="lineNum"> 4330 </span> : *
+<span class="lineNum"> 4331 </span> : * For each iterator @c i in the range @p [first,last) if @c *i ==
+<span class="lineNum"> 4332 </span> : * @p old_value then the assignment @c *i = @p new_value is performed.
+<span class="lineNum"> 4333 </span> : */
+<span class="lineNum"> 4334 </span> : template&lt;typename _ForwardIterator, typename _Tp&gt;
+<span class="lineNum"> 4335 </span> : void
+<span class="lineNum"> 4336 </span> : replace(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 4337 </span> : const _Tp&amp; __old_value, const _Tp&amp; __new_value)
+<span class="lineNum"> 4338 </span> : {
+<span class="lineNum"> 4339 </span> : // concept requirements
+<span class="lineNum"> 4340 </span> : __glibcxx_function_requires(_Mutable_ForwardIteratorConcept&lt;
+<span class="lineNum"> 4341 </span> : _ForwardIterator&gt;)
+<span class="lineNum"> 4342 </span> : __glibcxx_function_requires(_EqualOpConcept&lt;
+<span class="lineNum"> 4343 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type, _Tp&gt;)
+<span class="lineNum"> 4344 </span> : __glibcxx_function_requires(_ConvertibleConcept&lt;_Tp,
+<span class="lineNum"> 4345 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type&gt;)
+<span class="lineNum"> 4346 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 4347 </span> :
+<span class="lineNum"> 4348 </span> : for (; __first != __last; ++__first)
+<span class="lineNum"> 4349 </span> : if (*__first == __old_value)
+<span class="lineNum"> 4350 </span> : *__first = __new_value;
+<span class="lineNum"> 4351 </span> : }
+<span class="lineNum"> 4352 </span> :
+<span class="lineNum"> 4353 </span> : /**
+<span class="lineNum"> 4354 </span> : * @brief Replace each value in a sequence for which a predicate returns
+<span class="lineNum"> 4355 </span> : * true with another value.
+<span class="lineNum"> 4356 </span> : * @param first A forward iterator.
+<span class="lineNum"> 4357 </span> : * @param last A forward iterator.
+<span class="lineNum"> 4358 </span> : * @param pred A predicate.
+<span class="lineNum"> 4359 </span> : * @param new_value The replacement value.
+<span class="lineNum"> 4360 </span> : * @return replace_if() returns no value.
+<span class="lineNum"> 4361 </span> : *
+<span class="lineNum"> 4362 </span> : * For each iterator @c i in the range @p [first,last) if @p pred(*i)
+<span class="lineNum"> 4363 </span> : * is true then the assignment @c *i = @p new_value is performed.
+<span class="lineNum"> 4364 </span> : */
+<span class="lineNum"> 4365 </span> : template&lt;typename _ForwardIterator, typename _Predicate, typename _Tp&gt;
+<span class="lineNum"> 4366 </span> : void
+<span class="lineNum"> 4367 </span> : replace_if(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 4368 </span> : _Predicate __pred, const _Tp&amp; __new_value)
+<span class="lineNum"> 4369 </span> : {
+<span class="lineNum"> 4370 </span> : // concept requirements
+<span class="lineNum"> 4371 </span> : __glibcxx_function_requires(_Mutable_ForwardIteratorConcept&lt;
+<span class="lineNum"> 4372 </span> : _ForwardIterator&gt;)
+<span class="lineNum"> 4373 </span> : __glibcxx_function_requires(_ConvertibleConcept&lt;_Tp,
+<span class="lineNum"> 4374 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type&gt;)
+<span class="lineNum"> 4375 </span> : __glibcxx_function_requires(_UnaryPredicateConcept&lt;_Predicate,
+<span class="lineNum"> 4376 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type&gt;)
+<span class="lineNum"> 4377 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 4378 </span> :
+<span class="lineNum"> 4379 </span> : for (; __first != __last; ++__first)
+<span class="lineNum"> 4380 </span> : if (__pred(*__first))
+<span class="lineNum"> 4381 </span> : *__first = __new_value;
+<span class="lineNum"> 4382 </span> : }
+<span class="lineNum"> 4383 </span> :
+<span class="lineNum"> 4384 </span> : /**
+<span class="lineNum"> 4385 </span> : * @brief Assign the result of a function object to each value in a
+<span class="lineNum"> 4386 </span> : * sequence.
+<span class="lineNum"> 4387 </span> : * @param first A forward iterator.
+<span class="lineNum"> 4388 </span> : * @param last A forward iterator.
+<span class="lineNum"> 4389 </span> : * @param gen A function object taking no arguments and returning
+<span class="lineNum"> 4390 </span> : * std::iterator_traits&lt;_ForwardIterator&gt;::value_type
+<span class="lineNum"> 4391 </span> : * @return generate() returns no value.
+<span class="lineNum"> 4392 </span> : *
+<span class="lineNum"> 4393 </span> : * Performs the assignment @c *i = @p gen() for each @c i in the range
+<span class="lineNum"> 4394 </span> : * @p [first,last).
+<span class="lineNum"> 4395 </span> : */
+<span class="lineNum"> 4396 </span> : template&lt;typename _ForwardIterator, typename _Generator&gt;
+<span class="lineNum"> 4397 </span> : void
+<span class="lineNum"> 4398 </span> : generate(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 4399 </span> : _Generator __gen)
+<span class="lineNum"> 4400 </span> : {
+<span class="lineNum"> 4401 </span> : // concept requirements
+<span class="lineNum"> 4402 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 4403 </span> : __glibcxx_function_requires(_GeneratorConcept&lt;_Generator,
+<span class="lineNum"> 4404 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type&gt;)
+<span class="lineNum"> 4405 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 4406 </span> :
+<span class="lineNum"> 4407 </span> : for (; __first != __last; ++__first)
+<span class="lineNum"> 4408 </span> : *__first = __gen();
+<span class="lineNum"> 4409 </span> : }
+<span class="lineNum"> 4410 </span> :
+<span class="lineNum"> 4411 </span> : /**
+<span class="lineNum"> 4412 </span> : * @brief Assign the result of a function object to each value in a
+<span class="lineNum"> 4413 </span> : * sequence.
+<span class="lineNum"> 4414 </span> : * @param first A forward iterator.
+<span class="lineNum"> 4415 </span> : * @param n The length of the sequence.
+<span class="lineNum"> 4416 </span> : * @param gen A function object taking no arguments and returning
+<span class="lineNum"> 4417 </span> : * std::iterator_traits&lt;_ForwardIterator&gt;::value_type
+<span class="lineNum"> 4418 </span> : * @return The end of the sequence, @p first+n
+<span class="lineNum"> 4419 </span> : *
+<span class="lineNum"> 4420 </span> : * Performs the assignment @c *i = @p gen() for each @c i in the range
+<span class="lineNum"> 4421 </span> : * @p [first,first+n).
+<span class="lineNum"> 4422 </span> : */
+<span class="lineNum"> 4423 </span> : template&lt;typename _OutputIterator, typename _Size, typename _Generator&gt;
+<span class="lineNum"> 4424 </span> : _OutputIterator
+<span class="lineNum"> 4425 </span> : generate_n(_OutputIterator __first, _Size __n, _Generator __gen)
+<span class="lineNum"> 4426 </span> : {
+<span class="lineNum"> 4427 </span> : // concept requirements
+<span class="lineNum"> 4428 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 4429 </span> : // &quot;the type returned by a _Generator&quot;
+<span class="lineNum"> 4430 </span> : __typeof__(__gen())&gt;)
+<span class="lineNum"> 4431 </span> :
+<span class="lineNum"> 4432 </span> : for (; __n &gt; 0; --__n, ++__first)
+<span class="lineNum"> 4433 </span> : *__first = __gen();
+<span class="lineNum"> 4434 </span> : return __first;
+<span class="lineNum"> 4435 </span> : }
+<span class="lineNum"> 4436 </span> :
+<span class="lineNum"> 4437 </span> :
+<span class="lineNum"> 4438 </span> : /**
+<span class="lineNum"> 4439 </span> : * @brief Copy a sequence, removing consecutive duplicate values.
+<span class="lineNum"> 4440 </span> : * @param first An input iterator.
+<span class="lineNum"> 4441 </span> : * @param last An input iterator.
+<span class="lineNum"> 4442 </span> : * @param result An output iterator.
+<span class="lineNum"> 4443 </span> : * @return An iterator designating the end of the resulting sequence.
+<span class="lineNum"> 4444 </span> : *
+<span class="lineNum"> 4445 </span> : * Copies each element in the range @p [first,last) to the range
+<span class="lineNum"> 4446 </span> : * beginning at @p result, except that only the first element is copied
+<span class="lineNum"> 4447 </span> : * from groups of consecutive elements that compare equal.
+<span class="lineNum"> 4448 </span> : * unique_copy() is stable, so the relative order of elements that are
+<span class="lineNum"> 4449 </span> : * copied is unchanged.
+<span class="lineNum"> 4450 </span> : *
+<span class="lineNum"> 4451 </span> : * _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 4452 </span> : * DR 241. Does unique_copy() require CopyConstructible and Assignable?
+<span class="lineNum"> 4453 </span> : *
+<span class="lineNum"> 4454 </span> : * _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 4455 </span> : * DR 538. 241 again: Does unique_copy() require CopyConstructible and
+<span class="lineNum"> 4456 </span> : * Assignable?
+<span class="lineNum"> 4457 </span> : */
+<span class="lineNum"> 4458 </span> : template&lt;typename _InputIterator, typename _OutputIterator&gt;
+<span class="lineNum"> 4459 </span> : inline _OutputIterator
+<span class="lineNum"> 4460 </span> : unique_copy(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 4461 </span> : _OutputIterator __result)
+<span class="lineNum"> 4462 </span> : {
+<span class="lineNum"> 4463 </span> : // concept requirements
+<span class="lineNum"> 4464 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator&gt;)
+<span class="lineNum"> 4465 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 4466 </span> : typename iterator_traits&lt;_InputIterator&gt;::value_type&gt;)
+<span class="lineNum"> 4467 </span> : __glibcxx_function_requires(_EqualityComparableConcept&lt;
+<span class="lineNum"> 4468 </span> : typename iterator_traits&lt;_InputIterator&gt;::value_type&gt;)
+<span class="lineNum"> 4469 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 4470 </span> :
+<span class="lineNum"> 4471 </span> : if (__first == __last)
+<span class="lineNum"> 4472 </span> : return __result;
+<span class="lineNum"> 4473 </span> : return std::__unique_copy(__first, __last, __result,
+<span class="lineNum"> 4474 </span> : std::__iterator_category(__first),
+<span class="lineNum"> 4475 </span> : std::__iterator_category(__result));
+<span class="lineNum"> 4476 </span> : }
+<span class="lineNum"> 4477 </span> :
+<span class="lineNum"> 4478 </span> : /**
+<span class="lineNum"> 4479 </span> : * @brief Copy a sequence, removing consecutive values using a predicate.
+<span class="lineNum"> 4480 </span> : * @param first An input iterator.
+<span class="lineNum"> 4481 </span> : * @param last An input iterator.
+<span class="lineNum"> 4482 </span> : * @param result An output iterator.
+<span class="lineNum"> 4483 </span> : * @param binary_pred A binary predicate.
+<span class="lineNum"> 4484 </span> : * @return An iterator designating the end of the resulting sequence.
+<span class="lineNum"> 4485 </span> : *
+<span class="lineNum"> 4486 </span> : * Copies each element in the range @p [first,last) to the range
+<span class="lineNum"> 4487 </span> : * beginning at @p result, except that only the first element is copied
+<span class="lineNum"> 4488 </span> : * from groups of consecutive elements for which @p binary_pred returns
+<span class="lineNum"> 4489 </span> : * true.
+<span class="lineNum"> 4490 </span> : * unique_copy() is stable, so the relative order of elements that are
+<span class="lineNum"> 4491 </span> : * copied is unchanged.
+<span class="lineNum"> 4492 </span> : *
+<span class="lineNum"> 4493 </span> : * _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 4494 </span> : * DR 241. Does unique_copy() require CopyConstructible and Assignable?
+<span class="lineNum"> 4495 </span> : */
+<span class="lineNum"> 4496 </span> : template&lt;typename _InputIterator, typename _OutputIterator,
+<span class="lineNum"> 4497 </span> : typename _BinaryPredicate&gt;
+<span class="lineNum"> 4498 </span> : inline _OutputIterator
+<span class="lineNum"> 4499 </span> : unique_copy(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 4500 </span> : _OutputIterator __result,
+<span class="lineNum"> 4501 </span> : _BinaryPredicate __binary_pred)
+<span class="lineNum"> 4502 </span> : {
+<span class="lineNum"> 4503 </span> : // concept requirements -- predicates checked later
+<span class="lineNum"> 4504 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator&gt;)
+<span class="lineNum"> 4505 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 4506 </span> : typename iterator_traits&lt;_InputIterator&gt;::value_type&gt;)
+<span class="lineNum"> 4507 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 4508 </span> :
+<span class="lineNum"> 4509 </span> : if (__first == __last)
+<span class="lineNum"> 4510 </span> : return __result;
+<span class="lineNum"> 4511 </span> : return std::__unique_copy(__first, __last, __result, __binary_pred,
+<span class="lineNum"> 4512 </span> : std::__iterator_category(__first),
+<span class="lineNum"> 4513 </span> : std::__iterator_category(__result));
+<span class="lineNum"> 4514 </span> : }
+<span class="lineNum"> 4515 </span> :
+<span class="lineNum"> 4516 </span> :
+<span class="lineNum"> 4517 </span> : /**
+<span class="lineNum"> 4518 </span> : * @brief Randomly shuffle the elements of a sequence.
+<span class="lineNum"> 4519 </span> : * @param first A forward iterator.
+<span class="lineNum"> 4520 </span> : * @param last A forward iterator.
+<span class="lineNum"> 4521 </span> : * @return Nothing.
+<span class="lineNum"> 4522 </span> : *
+<span class="lineNum"> 4523 </span> : * Reorder the elements in the range @p [first,last) using a random
+<span class="lineNum"> 4524 </span> : * distribution, so that every possible ordering of the sequence is
+<span class="lineNum"> 4525 </span> : * equally likely.
+<span class="lineNum"> 4526 </span> : */
+<span class="lineNum"> 4527 </span> : template&lt;typename _RandomAccessIterator&gt;
+<span class="lineNum"> 4528 </span> : inline void
+<span class="lineNum"> 4529 </span> : random_shuffle(_RandomAccessIterator __first, _RandomAccessIterator __last)
+<span class="lineNum"> 4530 </span> : {
+<span class="lineNum"> 4531 </span> : // concept requirements
+<span class="lineNum"> 4532 </span> : __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 4533 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 4534 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 4535 </span> :
+<span class="lineNum"> 4536 </span> : if (__first != __last)
+<span class="lineNum"> 4537 </span> : for (_RandomAccessIterator __i = __first + 1; __i != __last; ++__i)
+<span class="lineNum"> 4538 </span> : std::iter_swap(__i, __first + (std::rand() % ((__i - __first) + 1)));
+<span class="lineNum"> 4539 </span> : }
+<span class="lineNum"> 4540 </span> :
+<span class="lineNum"> 4541 </span> : /**
+<span class="lineNum"> 4542 </span> : * @brief Shuffle the elements of a sequence using a random number
+<span class="lineNum"> 4543 </span> : * generator.
+<span class="lineNum"> 4544 </span> : * @param first A forward iterator.
+<span class="lineNum"> 4545 </span> : * @param last A forward iterator.
+<span class="lineNum"> 4546 </span> : * @param rand The RNG functor or function.
+<span class="lineNum"> 4547 </span> : * @return Nothing.
+<span class="lineNum"> 4548 </span> : *
+<span class="lineNum"> 4549 </span> : * Reorders the elements in the range @p [first,last) using @p rand to
+<span class="lineNum"> 4550 </span> : * provide a random distribution. Calling @p rand(N) for a positive
+<span class="lineNum"> 4551 </span> : * integer @p N should return a randomly chosen integer from the
+<span class="lineNum"> 4552 </span> : * range [0,N).
+<span class="lineNum"> 4553 </span> : */
+<span class="lineNum"> 4554 </span> : template&lt;typename _RandomAccessIterator, typename _RandomNumberGenerator&gt;
+<span class="lineNum"> 4555 </span> : void
+<span class="lineNum"> 4556 </span> : random_shuffle(_RandomAccessIterator __first, _RandomAccessIterator __last,
+<span class="lineNum"> 4557 </span> : _RandomNumberGenerator&amp; __rand)
+<span class="lineNum"> 4558 </span> : {
+<span class="lineNum"> 4559 </span> : // concept requirements
+<span class="lineNum"> 4560 </span> : __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 4561 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 4562 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 4563 </span> :
+<span class="lineNum"> 4564 </span> : if (__first == __last)
+<span class="lineNum"> 4565 </span> : return;
+<span class="lineNum"> 4566 </span> : for (_RandomAccessIterator __i = __first + 1; __i != __last; ++__i)
+<span class="lineNum"> 4567 </span> : std::iter_swap(__i, __first + __rand((__i - __first) + 1));
+<span class="lineNum"> 4568 </span> : }
+<span class="lineNum"> 4569 </span> :
+<span class="lineNum"> 4570 </span> :
+<span class="lineNum"> 4571 </span> : /**
+<span class="lineNum"> 4572 </span> : * @brief Move elements for which a predicate is true to the beginning
+<span class="lineNum"> 4573 </span> : * of a sequence.
+<span class="lineNum"> 4574 </span> : * @param first A forward iterator.
+<span class="lineNum"> 4575 </span> : * @param last A forward iterator.
+<span class="lineNum"> 4576 </span> : * @param pred A predicate functor.
+<span class="lineNum"> 4577 </span> : * @return An iterator @p middle such that @p pred(i) is true for each
+<span class="lineNum"> 4578 </span> : * iterator @p i in the range @p [first,middle) and false for each @p i
+<span class="lineNum"> 4579 </span> : * in the range @p [middle,last).
+<span class="lineNum"> 4580 </span> : *
+<span class="lineNum"> 4581 </span> : * @p pred must not modify its operand. @p partition() does not preserve
+<span class="lineNum"> 4582 </span> : * the relative ordering of elements in each group, use
+<span class="lineNum"> 4583 </span> : * @p stable_partition() if this is needed.
+<span class="lineNum"> 4584 </span> : */
+<span class="lineNum"> 4585 </span> : template&lt;typename _ForwardIterator, typename _Predicate&gt;
+<span class="lineNum"> 4586 </span> : inline _ForwardIterator
+<span class="lineNum"> 4587 </span> : partition(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 4588 </span> : _Predicate __pred)
+<span class="lineNum"> 4589 </span> : {
+<span class="lineNum"> 4590 </span> : // concept requirements
+<span class="lineNum"> 4591 </span> : __glibcxx_function_requires(_Mutable_ForwardIteratorConcept&lt;
+<span class="lineNum"> 4592 </span> : _ForwardIterator&gt;)
+<span class="lineNum"> 4593 </span> : __glibcxx_function_requires(_UnaryPredicateConcept&lt;_Predicate,
+<span class="lineNum"> 4594 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type&gt;)
+<span class="lineNum"> 4595 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 4596 </span> :
+<span class="lineNum"> 4597 </span> : return std::__partition(__first, __last, __pred,
+<span class="lineNum"> 4598 </span> : std::__iterator_category(__first));
+<span class="lineNum"> 4599 </span> : }
+<span class="lineNum"> 4600 </span> :
+<span class="lineNum"> 4601 </span> :
+<span class="lineNum"> 4602 </span> :
+<span class="lineNum"> 4603 </span> : /**
+<span class="lineNum"> 4604 </span> : * @brief Sort the smallest elements of a sequence.
+<span class="lineNum"> 4605 </span> : * @param first An iterator.
+<span class="lineNum"> 4606 </span> : * @param middle Another iterator.
+<span class="lineNum"> 4607 </span> : * @param last Another iterator.
+<span class="lineNum"> 4608 </span> : * @return Nothing.
+<span class="lineNum"> 4609 </span> : *
+<span class="lineNum"> 4610 </span> : * Sorts the smallest @p (middle-first) elements in the range
+<span class="lineNum"> 4611 </span> : * @p [first,last) and moves them to the range @p [first,middle). The
+<span class="lineNum"> 4612 </span> : * order of the remaining elements in the range @p [middle,last) is
+<span class="lineNum"> 4613 </span> : * undefined.
+<span class="lineNum"> 4614 </span> : * After the sort if @p i and @j are iterators in the range
+<span class="lineNum"> 4615 </span> : * @p [first,middle) such that @i precedes @j and @k is an iterator in
+<span class="lineNum"> 4616 </span> : * the range @p [middle,last) then @p *j&lt;*i and @p *k&lt;*i are both false.
+<span class="lineNum"> 4617 </span> : */
+<span class="lineNum"> 4618 </span> : template&lt;typename _RandomAccessIterator&gt;
+<span class="lineNum"> 4619 </span> : inline void
+<span class="lineNum"> 4620 </span> : partial_sort(_RandomAccessIterator __first,
+<span class="lineNum"> 4621 </span> : _RandomAccessIterator __middle,
+<span class="lineNum"> 4622 </span><span class="lineNoCov"> 0 : _RandomAccessIterator __last)</span>
+<span class="lineNum"> 4623 </span> : {
+<span class="lineNum"> 4624 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 4625 </span> : _ValueType;
+<span class="lineNum"> 4626 </span> :
+<span class="lineNum"> 4627 </span> : // concept requirements
+<span class="lineNum"> 4628 </span> : __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 4629 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 4630 </span> : __glibcxx_function_requires(_LessThanComparableConcept&lt;_ValueType&gt;)
+<span class="lineNum"> 4631 </span> : __glibcxx_requires_valid_range(__first, __middle);
+<span class="lineNum"> 4632 </span> : __glibcxx_requires_valid_range(__middle, __last);
+<span class="lineNum"> 4633 </span> :
+<span class="lineNum"> 4634 </span><span class="lineNoCov"> 0 : std::__heap_select(__first, __middle, __last);</span>
+<span class="lineNum"> 4635 </span><span class="lineNoCov"> 0 : std::sort_heap(__first, __middle);</span>
+<span class="lineNum"> 4636 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 4637 </span> :
+<span class="lineNum"> 4638 </span> : /**
+<span class="lineNum"> 4639 </span> : * @brief Sort the smallest elements of a sequence using a predicate
+<span class="lineNum"> 4640 </span> : * for comparison.
+<span class="lineNum"> 4641 </span> : * @param first An iterator.
+<span class="lineNum"> 4642 </span> : * @param middle Another iterator.
+<span class="lineNum"> 4643 </span> : * @param last Another iterator.
+<span class="lineNum"> 4644 </span> : * @param comp A comparison functor.
+<span class="lineNum"> 4645 </span> : * @return Nothing.
+<span class="lineNum"> 4646 </span> : *
+<span class="lineNum"> 4647 </span> : * Sorts the smallest @p (middle-first) elements in the range
+<span class="lineNum"> 4648 </span> : * @p [first,last) and moves them to the range @p [first,middle). The
+<span class="lineNum"> 4649 </span> : * order of the remaining elements in the range @p [middle,last) is
+<span class="lineNum"> 4650 </span> : * undefined.
+<span class="lineNum"> 4651 </span> : * After the sort if @p i and @j are iterators in the range
+<span class="lineNum"> 4652 </span> : * @p [first,middle) such that @i precedes @j and @k is an iterator in
+<span class="lineNum"> 4653 </span> : * the range @p [middle,last) then @p *comp(j,*i) and @p comp(*k,*i)
+<span class="lineNum"> 4654 </span> : * are both false.
+<span class="lineNum"> 4655 </span> : */
+<span class="lineNum"> 4656 </span> : template&lt;typename _RandomAccessIterator, typename _Compare&gt;
+<span class="lineNum"> 4657 </span> : inline void
+<span class="lineNum"> 4658 </span> : partial_sort(_RandomAccessIterator __first,
+<span class="lineNum"> 4659 </span> : _RandomAccessIterator __middle,
+<span class="lineNum"> 4660 </span> : _RandomAccessIterator __last,
+<span class="lineNum"> 4661 </span><span class="lineNoCov"> 0 : _Compare __comp)</span>
+<span class="lineNum"> 4662 </span> : {
+<span class="lineNum"> 4663 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 4664 </span> : _ValueType;
+<span class="lineNum"> 4665 </span> :
+<span class="lineNum"> 4666 </span> : // concept requirements
+<span class="lineNum"> 4667 </span> : __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 4668 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 4669 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 4670 </span> : _ValueType, _ValueType&gt;)
+<span class="lineNum"> 4671 </span> : __glibcxx_requires_valid_range(__first, __middle);
+<span class="lineNum"> 4672 </span> : __glibcxx_requires_valid_range(__middle, __last);
+<span class="lineNum"> 4673 </span> :
+<span class="lineNum"> 4674 </span><span class="lineNoCov"> 0 : std::__heap_select(__first, __middle, __last, __comp);</span>
+<span class="lineNum"> 4675 </span><span class="lineNoCov"> 0 : std::sort_heap(__first, __middle, __comp);</span>
+<span class="lineNum"> 4676 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 4677 </span> :
+<span class="lineNum"> 4678 </span> : /**
+<span class="lineNum"> 4679 </span> : * @brief Sort a sequence just enough to find a particular position.
+<span class="lineNum"> 4680 </span> : * @param first An iterator.
+<span class="lineNum"> 4681 </span> : * @param nth Another iterator.
+<span class="lineNum"> 4682 </span> : * @param last Another iterator.
+<span class="lineNum"> 4683 </span> : * @return Nothing.
+<span class="lineNum"> 4684 </span> : *
+<span class="lineNum"> 4685 </span> : * Rearranges the elements in the range @p [first,last) so that @p *nth
+<span class="lineNum"> 4686 </span> : * is the same element that would have been in that position had the
+<span class="lineNum"> 4687 </span> : * whole sequence been sorted.
+<span class="lineNum"> 4688 </span> : * whole sequence been sorted. The elements either side of @p *nth are
+<span class="lineNum"> 4689 </span> : * not completely sorted, but for any iterator @i in the range
+<span class="lineNum"> 4690 </span> : * @p [first,nth) and any iterator @j in the range @p [nth,last) it
+<span class="lineNum"> 4691 </span> : * holds that @p *j&lt;*i is false.
+<span class="lineNum"> 4692 </span> : */
+<span class="lineNum"> 4693 </span> : template&lt;typename _RandomAccessIterator&gt;
+<span class="lineNum"> 4694 </span> : inline void
+<span class="lineNum"> 4695 </span> : nth_element(_RandomAccessIterator __first, _RandomAccessIterator __nth,
+<span class="lineNum"> 4696 </span> : _RandomAccessIterator __last)
+<span class="lineNum"> 4697 </span> : {
+<span class="lineNum"> 4698 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 4699 </span> : _ValueType;
+<span class="lineNum"> 4700 </span> :
+<span class="lineNum"> 4701 </span> : // concept requirements
+<span class="lineNum"> 4702 </span> : __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 4703 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 4704 </span> : __glibcxx_function_requires(_LessThanComparableConcept&lt;_ValueType&gt;)
+<span class="lineNum"> 4705 </span> : __glibcxx_requires_valid_range(__first, __nth);
+<span class="lineNum"> 4706 </span> : __glibcxx_requires_valid_range(__nth, __last);
+<span class="lineNum"> 4707 </span> :
+<span class="lineNum"> 4708 </span> : if (__first == __last || __nth == __last)
+<span class="lineNum"> 4709 </span> : return;
+<span class="lineNum"> 4710 </span> :
+<span class="lineNum"> 4711 </span> : std::__introselect(__first, __nth, __last,
+<span class="lineNum"> 4712 </span> : std::__lg(__last - __first) * 2);
+<span class="lineNum"> 4713 </span> : }
+<span class="lineNum"> 4714 </span> :
+<span class="lineNum"> 4715 </span> : /**
+<span class="lineNum"> 4716 </span> : * @brief Sort a sequence just enough to find a particular position
+<span class="lineNum"> 4717 </span> : * using a predicate for comparison.
+<span class="lineNum"> 4718 </span> : * @param first An iterator.
+<span class="lineNum"> 4719 </span> : * @param nth Another iterator.
+<span class="lineNum"> 4720 </span> : * @param last Another iterator.
+<span class="lineNum"> 4721 </span> : * @param comp A comparison functor.
+<span class="lineNum"> 4722 </span> : * @return Nothing.
+<span class="lineNum"> 4723 </span> : *
+<span class="lineNum"> 4724 </span> : * Rearranges the elements in the range @p [first,last) so that @p *nth
+<span class="lineNum"> 4725 </span> : * is the same element that would have been in that position had the
+<span class="lineNum"> 4726 </span> : * whole sequence been sorted. The elements either side of @p *nth are
+<span class="lineNum"> 4727 </span> : * not completely sorted, but for any iterator @i in the range
+<span class="lineNum"> 4728 </span> : * @p [first,nth) and any iterator @j in the range @p [nth,last) it
+<span class="lineNum"> 4729 </span> : * holds that @p comp(*j,*i) is false.
+<span class="lineNum"> 4730 </span> : */
+<span class="lineNum"> 4731 </span> : template&lt;typename _RandomAccessIterator, typename _Compare&gt;
+<span class="lineNum"> 4732 </span> : inline void
+<span class="lineNum"> 4733 </span> : nth_element(_RandomAccessIterator __first, _RandomAccessIterator __nth,
+<span class="lineNum"> 4734 </span> : _RandomAccessIterator __last, _Compare __comp)
+<span class="lineNum"> 4735 </span> : {
+<span class="lineNum"> 4736 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 4737 </span> : _ValueType;
+<span class="lineNum"> 4738 </span> :
+<span class="lineNum"> 4739 </span> : // concept requirements
+<span class="lineNum"> 4740 </span> : __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 4741 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 4742 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 4743 </span> : _ValueType, _ValueType&gt;)
+<span class="lineNum"> 4744 </span> : __glibcxx_requires_valid_range(__first, __nth);
+<span class="lineNum"> 4745 </span> : __glibcxx_requires_valid_range(__nth, __last);
+<span class="lineNum"> 4746 </span> :
+<span class="lineNum"> 4747 </span> : if (__first == __last || __nth == __last)
+<span class="lineNum"> 4748 </span> : return;
+<span class="lineNum"> 4749 </span> :
+<span class="lineNum"> 4750 </span> : std::__introselect(__first, __nth, __last,
+<span class="lineNum"> 4751 </span> : std::__lg(__last - __first) * 2, __comp);
+<span class="lineNum"> 4752 </span> : }
+<span class="lineNum"> 4753 </span> :
+<span class="lineNum"> 4754 </span> :
+<span class="lineNum"> 4755 </span> : /**
+<span class="lineNum"> 4756 </span> : * @brief Sort the elements of a sequence.
+<span class="lineNum"> 4757 </span> : * @param first An iterator.
+<span class="lineNum"> 4758 </span> : * @param last Another iterator.
+<span class="lineNum"> 4759 </span> : * @return Nothing.
+<span class="lineNum"> 4760 </span> : *
+<span class="lineNum"> 4761 </span> : * Sorts the elements in the range @p [first,last) in ascending order,
+<span class="lineNum"> 4762 </span> : * such that @p *(i+1)&lt;*i is false for each iterator @p i in the range
+<span class="lineNum"> 4763 </span> : * @p [first,last-1).
+<span class="lineNum"> 4764 </span> : *
+<span class="lineNum"> 4765 </span> : * The relative ordering of equivalent elements is not preserved, use
+<span class="lineNum"> 4766 </span> : * @p stable_sort() if this is needed.
+<span class="lineNum"> 4767 </span> : */
+<span class="lineNum"> 4768 </span> : template&lt;typename _RandomAccessIterator&gt;
+<span class="lineNum"> 4769 </span> : inline void
+<span class="lineNum"> 4770 </span><span class="lineCov"> 8 : sort(_RandomAccessIterator __first, _RandomAccessIterator __last)</span>
+<span class="lineNum"> 4771 </span> : {
+<span class="lineNum"> 4772 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 4773 </span> : _ValueType;
+<span class="lineNum"> 4774 </span> :
+<span class="lineNum"> 4775 </span> : // concept requirements
+<span class="lineNum"> 4776 </span> : __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 4777 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 4778 </span> : __glibcxx_function_requires(_LessThanComparableConcept&lt;_ValueType&gt;)
+<span class="lineNum"> 4779 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 4780 </span> :
+<span class="lineNum"> 4781 </span><span class="lineCov"> 8 : if (__first != __last)</span>
+<span class="lineNum"> 4782 </span> : {
+<span class="lineNum"> 4783 </span><span class="lineCov"> 8 : std::__introsort_loop(__first, __last,</span>
+<span class="lineNum"> 4784 </span> : std::__lg(__last - __first) * 2);
+<span class="lineNum"> 4785 </span><span class="lineCov"> 8 : std::__final_insertion_sort(__first, __last);</span>
+<span class="lineNum"> 4786 </span> : }
+<span class="lineNum"> 4787 </span><span class="lineCov"> 8 : }</span>
+<span class="lineNum"> 4788 </span> :
+<span class="lineNum"> 4789 </span> : /**
+<span class="lineNum"> 4790 </span> : * @brief Sort the elements of a sequence using a predicate for comparison.
+<span class="lineNum"> 4791 </span> : * @param first An iterator.
+<span class="lineNum"> 4792 </span> : * @param last Another iterator.
+<span class="lineNum"> 4793 </span> : * @param comp A comparison functor.
+<span class="lineNum"> 4794 </span> : * @return Nothing.
+<span class="lineNum"> 4795 </span> : *
+<span class="lineNum"> 4796 </span> : * Sorts the elements in the range @p [first,last) in ascending order,
+<span class="lineNum"> 4797 </span> : * such that @p comp(*(i+1),*i) is false for every iterator @p i in the
+<span class="lineNum"> 4798 </span> : * range @p [first,last-1).
+<span class="lineNum"> 4799 </span> : *
+<span class="lineNum"> 4800 </span> : * The relative ordering of equivalent elements is not preserved, use
+<span class="lineNum"> 4801 </span> : * @p stable_sort() if this is needed.
+<span class="lineNum"> 4802 </span> : */
+<span class="lineNum"> 4803 </span> : template&lt;typename _RandomAccessIterator, typename _Compare&gt;
+<span class="lineNum"> 4804 </span> : inline void
+<span class="lineNum"> 4805 </span> : sort(_RandomAccessIterator __first, _RandomAccessIterator __last,
+<span class="lineNum"> 4806 </span><span class="lineCov"> 3938 : _Compare __comp)</span>
+<span class="lineNum"> 4807 </span> : {
+<span class="lineNum"> 4808 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 4809 </span> : _ValueType;
+<span class="lineNum"> 4810 </span> :
+<span class="lineNum"> 4811 </span> : // concept requirements
+<span class="lineNum"> 4812 </span> : __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 4813 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 4814 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare, _ValueType,
+<span class="lineNum"> 4815 </span> : _ValueType&gt;)
+<span class="lineNum"> 4816 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 4817 </span> :
+<span class="lineNum"> 4818 </span><span class="lineCov"> 3938 : if (__first != __last)</span>
+<span class="lineNum"> 4819 </span> : {
+<span class="lineNum"> 4820 </span><span class="lineCov"> 3938 : std::__introsort_loop(__first, __last,</span>
+<span class="lineNum"> 4821 </span> : std::__lg(__last - __first) * 2, __comp);
+<span class="lineNum"> 4822 </span><span class="lineCov"> 3938 : std::__final_insertion_sort(__first, __last, __comp);</span>
+<span class="lineNum"> 4823 </span> : }
+<span class="lineNum"> 4824 </span><span class="lineCov"> 3938 : }</span>
+<span class="lineNum"> 4825 </span> :
+<span class="lineNum"> 4826 </span> : /**
+<span class="lineNum"> 4827 </span> : * @brief Merges two sorted ranges.
+<span class="lineNum"> 4828 </span> : * @param first1 An iterator.
+<span class="lineNum"> 4829 </span> : * @param first2 Another iterator.
+<span class="lineNum"> 4830 </span> : * @param last1 Another iterator.
+<span class="lineNum"> 4831 </span> : * @param last2 Another iterator.
+<span class="lineNum"> 4832 </span> : * @param result An iterator pointing to the end of the merged range.
+<span class="lineNum"> 4833 </span> : * @return An iterator pointing to the first element &quot;not less
+<span class="lineNum"> 4834 </span> : * than&quot; @a val.
+<span class="lineNum"> 4835 </span> : *
+<span class="lineNum"> 4836 </span> : * Merges the ranges [first1,last1) and [first2,last2) into the sorted range
+<span class="lineNum"> 4837 </span> : * [result, result + (last1-first1) + (last2-first2)). Both input ranges
+<span class="lineNum"> 4838 </span> : * must be sorted, and the output range must not overlap with either of
+<span class="lineNum"> 4839 </span> : * the input ranges. The sort is @e stable, that is, for equivalent
+<span class="lineNum"> 4840 </span> : * elements in the two ranges, elements from the first range will always
+<span class="lineNum"> 4841 </span> : * come before elements from the second.
+<span class="lineNum"> 4842 </span> : */
+<span class="lineNum"> 4843 </span> : template&lt;typename _InputIterator1, typename _InputIterator2,
+<span class="lineNum"> 4844 </span> : typename _OutputIterator&gt;
+<span class="lineNum"> 4845 </span> : _OutputIterator
+<span class="lineNum"> 4846 </span> : merge(_InputIterator1 __first1, _InputIterator1 __last1,
+<span class="lineNum"> 4847 </span> : _InputIterator2 __first2, _InputIterator2 __last2,
+<span class="lineNum"> 4848 </span> : _OutputIterator __result)
+<span class="lineNum"> 4849 </span> : {
+<span class="lineNum"> 4850 </span> : typedef typename iterator_traits&lt;_InputIterator1&gt;::value_type
+<span class="lineNum"> 4851 </span> : _ValueType1;
+<span class="lineNum"> 4852 </span> : typedef typename iterator_traits&lt;_InputIterator2&gt;::value_type
+<span class="lineNum"> 4853 </span> : _ValueType2;
+<span class="lineNum"> 4854 </span> :
+<span class="lineNum"> 4855 </span> : // concept requirements
+<span class="lineNum"> 4856 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator1&gt;)
+<span class="lineNum"> 4857 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator2&gt;)
+<span class="lineNum"> 4858 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 4859 </span> : _ValueType1&gt;)
+<span class="lineNum"> 4860 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 4861 </span> : _ValueType2&gt;)
+<span class="lineNum"> 4862 </span> : __glibcxx_function_requires(_LessThanOpConcept&lt;_ValueType2, _ValueType1&gt;)
+<span class="lineNum"> 4863 </span> : __glibcxx_requires_sorted_set(__first1, __last1, __first2);
+<span class="lineNum"> 4864 </span> : __glibcxx_requires_sorted_set(__first2, __last2, __first1);
+<span class="lineNum"> 4865 </span> :
+<span class="lineNum"> 4866 </span> : while (__first1 != __last1 &amp;&amp; __first2 != __last2)
+<span class="lineNum"> 4867 </span> : {
+<span class="lineNum"> 4868 </span> : if (*__first2 &lt; *__first1)
+<span class="lineNum"> 4869 </span> : {
+<span class="lineNum"> 4870 </span> : *__result = *__first2;
+<span class="lineNum"> 4871 </span> : ++__first2;
+<span class="lineNum"> 4872 </span> : }
+<span class="lineNum"> 4873 </span> : else
+<span class="lineNum"> 4874 </span> : {
+<span class="lineNum"> 4875 </span> : *__result = *__first1;
+<span class="lineNum"> 4876 </span> : ++__first1;
+<span class="lineNum"> 4877 </span> : }
+<span class="lineNum"> 4878 </span> : ++__result;
+<span class="lineNum"> 4879 </span> : }
+<span class="lineNum"> 4880 </span> : return std::copy(__first2, __last2, std::copy(__first1, __last1,
+<span class="lineNum"> 4881 </span> : __result));
+<span class="lineNum"> 4882 </span> : }
+<span class="lineNum"> 4883 </span> :
+<span class="lineNum"> 4884 </span> : /**
+<span class="lineNum"> 4885 </span> : * @brief Merges two sorted ranges.
+<span class="lineNum"> 4886 </span> : * @param first1 An iterator.
+<span class="lineNum"> 4887 </span> : * @param first2 Another iterator.
+<span class="lineNum"> 4888 </span> : * @param last1 Another iterator.
+<span class="lineNum"> 4889 </span> : * @param last2 Another iterator.
+<span class="lineNum"> 4890 </span> : * @param result An iterator pointing to the end of the merged range.
+<span class="lineNum"> 4891 </span> : * @param comp A functor to use for comparisons.
+<span class="lineNum"> 4892 </span> : * @return An iterator pointing to the first element &quot;not less
+<span class="lineNum"> 4893 </span> : * than&quot; @a val.
+<span class="lineNum"> 4894 </span> : *
+<span class="lineNum"> 4895 </span> : * Merges the ranges [first1,last1) and [first2,last2) into the sorted range
+<span class="lineNum"> 4896 </span> : * [result, result + (last1-first1) + (last2-first2)). Both input ranges
+<span class="lineNum"> 4897 </span> : * must be sorted, and the output range must not overlap with either of
+<span class="lineNum"> 4898 </span> : * the input ranges. The sort is @e stable, that is, for equivalent
+<span class="lineNum"> 4899 </span> : * elements in the two ranges, elements from the first range will always
+<span class="lineNum"> 4900 </span> : * come before elements from the second.
+<span class="lineNum"> 4901 </span> : *
+<span class="lineNum"> 4902 </span> : * The comparison function should have the same effects on ordering as
+<span class="lineNum"> 4903 </span> : * the function used for the initial sort.
+<span class="lineNum"> 4904 </span> : */
+<span class="lineNum"> 4905 </span> : template&lt;typename _InputIterator1, typename _InputIterator2,
+<span class="lineNum"> 4906 </span> : typename _OutputIterator, typename _Compare&gt;
+<span class="lineNum"> 4907 </span> : _OutputIterator
+<span class="lineNum"> 4908 </span> : merge(_InputIterator1 __first1, _InputIterator1 __last1,
+<span class="lineNum"> 4909 </span> : _InputIterator2 __first2, _InputIterator2 __last2,
+<span class="lineNum"> 4910 </span> : _OutputIterator __result, _Compare __comp)
+<span class="lineNum"> 4911 </span> : {
+<span class="lineNum"> 4912 </span> : typedef typename iterator_traits&lt;_InputIterator1&gt;::value_type
+<span class="lineNum"> 4913 </span> : _ValueType1;
+<span class="lineNum"> 4914 </span> : typedef typename iterator_traits&lt;_InputIterator2&gt;::value_type
+<span class="lineNum"> 4915 </span> : _ValueType2;
+<span class="lineNum"> 4916 </span> :
+<span class="lineNum"> 4917 </span> : // concept requirements
+<span class="lineNum"> 4918 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator1&gt;)
+<span class="lineNum"> 4919 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator2&gt;)
+<span class="lineNum"> 4920 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 4921 </span> : _ValueType1&gt;)
+<span class="lineNum"> 4922 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 4923 </span> : _ValueType2&gt;)
+<span class="lineNum"> 4924 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 4925 </span> : _ValueType2, _ValueType1&gt;)
+<span class="lineNum"> 4926 </span> : __glibcxx_requires_sorted_set_pred(__first1, __last1, __first2, __comp);
+<span class="lineNum"> 4927 </span> : __glibcxx_requires_sorted_set_pred(__first2, __last2, __first1, __comp);
+<span class="lineNum"> 4928 </span> :
+<span class="lineNum"> 4929 </span> : while (__first1 != __last1 &amp;&amp; __first2 != __last2)
+<span class="lineNum"> 4930 </span> : {
+<span class="lineNum"> 4931 </span> : if (__comp(*__first2, *__first1))
+<span class="lineNum"> 4932 </span> : {
+<span class="lineNum"> 4933 </span> : *__result = *__first2;
+<span class="lineNum"> 4934 </span> : ++__first2;
+<span class="lineNum"> 4935 </span> : }
+<span class="lineNum"> 4936 </span> : else
+<span class="lineNum"> 4937 </span> : {
+<span class="lineNum"> 4938 </span> : *__result = *__first1;
+<span class="lineNum"> 4939 </span> : ++__first1;
+<span class="lineNum"> 4940 </span> : }
+<span class="lineNum"> 4941 </span> : ++__result;
+<span class="lineNum"> 4942 </span> : }
+<span class="lineNum"> 4943 </span> : return std::copy(__first2, __last2, std::copy(__first1, __last1,
+<span class="lineNum"> 4944 </span> : __result));
+<span class="lineNum"> 4945 </span> : }
+<span class="lineNum"> 4946 </span> :
+<span class="lineNum"> 4947 </span> :
+<span class="lineNum"> 4948 </span> : /**
+<span class="lineNum"> 4949 </span> : * @brief Sort the elements of a sequence, preserving the relative order
+<span class="lineNum"> 4950 </span> : * of equivalent elements.
+<span class="lineNum"> 4951 </span> : * @param first An iterator.
+<span class="lineNum"> 4952 </span> : * @param last Another iterator.
+<span class="lineNum"> 4953 </span> : * @return Nothing.
+<span class="lineNum"> 4954 </span> : *
+<span class="lineNum"> 4955 </span> : * Sorts the elements in the range @p [first,last) in ascending order,
+<span class="lineNum"> 4956 </span> : * such that @p *(i+1)&lt;*i is false for each iterator @p i in the range
+<span class="lineNum"> 4957 </span> : * @p [first,last-1).
+<span class="lineNum"> 4958 </span> : *
+<span class="lineNum"> 4959 </span> : * The relative ordering of equivalent elements is preserved, so any two
+<span class="lineNum"> 4960 </span> : * elements @p x and @p y in the range @p [first,last) such that
+<span class="lineNum"> 4961 </span> : * @p x&lt;y is false and @p y&lt;x is false will have the same relative
+<span class="lineNum"> 4962 </span> : * ordering after calling @p stable_sort().
+<span class="lineNum"> 4963 </span> : */
+<span class="lineNum"> 4964 </span> : template&lt;typename _RandomAccessIterator&gt;
+<span class="lineNum"> 4965 </span> : inline void
+<span class="lineNum"> 4966 </span> : stable_sort(_RandomAccessIterator __first, _RandomAccessIterator __last)
+<span class="lineNum"> 4967 </span> : {
+<span class="lineNum"> 4968 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 4969 </span> : _ValueType;
+<span class="lineNum"> 4970 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::difference_type
+<span class="lineNum"> 4971 </span> : _DistanceType;
+<span class="lineNum"> 4972 </span> :
+<span class="lineNum"> 4973 </span> : // concept requirements
+<span class="lineNum"> 4974 </span> : __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 4975 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 4976 </span> : __glibcxx_function_requires(_LessThanComparableConcept&lt;_ValueType&gt;)
+<span class="lineNum"> 4977 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 4978 </span> :
+<span class="lineNum"> 4979 </span> : _Temporary_buffer&lt;_RandomAccessIterator, _ValueType&gt; __buf(__first,
+<span class="lineNum"> 4980 </span> : __last);
+<span class="lineNum"> 4981 </span> : if (__buf.begin() == 0)
+<span class="lineNum"> 4982 </span> : std::__inplace_stable_sort(__first, __last);
+<span class="lineNum"> 4983 </span> : else
+<span class="lineNum"> 4984 </span> : std::__stable_sort_adaptive(__first, __last, __buf.begin(),
+<span class="lineNum"> 4985 </span> : _DistanceType(__buf.size()));
+<span class="lineNum"> 4986 </span> : }
+<span class="lineNum"> 4987 </span> :
+<span class="lineNum"> 4988 </span> : /**
+<span class="lineNum"> 4989 </span> : * @brief Sort the elements of a sequence using a predicate for comparison,
+<span class="lineNum"> 4990 </span> : * preserving the relative order of equivalent elements.
+<span class="lineNum"> 4991 </span> : * @param first An iterator.
+<span class="lineNum"> 4992 </span> : * @param last Another iterator.
+<span class="lineNum"> 4993 </span> : * @param comp A comparison functor.
+<span class="lineNum"> 4994 </span> : * @return Nothing.
+<span class="lineNum"> 4995 </span> : *
+<span class="lineNum"> 4996 </span> : * Sorts the elements in the range @p [first,last) in ascending order,
+<span class="lineNum"> 4997 </span> : * such that @p comp(*(i+1),*i) is false for each iterator @p i in the
+<span class="lineNum"> 4998 </span> : * range @p [first,last-1).
+<span class="lineNum"> 4999 </span> : *
+<span class="lineNum"> 5000 </span> : * The relative ordering of equivalent elements is preserved, so any two
+<span class="lineNum"> 5001 </span> : * elements @p x and @p y in the range @p [first,last) such that
+<span class="lineNum"> 5002 </span> : * @p comp(x,y) is false and @p comp(y,x) is false will have the same
+<span class="lineNum"> 5003 </span> : * relative ordering after calling @p stable_sort().
+<span class="lineNum"> 5004 </span> : */
+<span class="lineNum"> 5005 </span> : template&lt;typename _RandomAccessIterator, typename _Compare&gt;
+<span class="lineNum"> 5006 </span> : inline void
+<span class="lineNum"> 5007 </span> : stable_sort(_RandomAccessIterator __first, _RandomAccessIterator __last,
+<span class="lineNum"> 5008 </span> : _Compare __comp)
+<span class="lineNum"> 5009 </span> : {
+<span class="lineNum"> 5010 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 5011 </span> : _ValueType;
+<span class="lineNum"> 5012 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::difference_type
+<span class="lineNum"> 5013 </span> : _DistanceType;
+<span class="lineNum"> 5014 </span> :
+<span class="lineNum"> 5015 </span> : // concept requirements
+<span class="lineNum"> 5016 </span> : __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 5017 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 5018 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 5019 </span> : _ValueType,
+<span class="lineNum"> 5020 </span> : _ValueType&gt;)
+<span class="lineNum"> 5021 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 5022 </span> :
+<span class="lineNum"> 5023 </span> : _Temporary_buffer&lt;_RandomAccessIterator, _ValueType&gt; __buf(__first,
+<span class="lineNum"> 5024 </span> : __last);
+<span class="lineNum"> 5025 </span> : if (__buf.begin() == 0)
+<span class="lineNum"> 5026 </span> : std::__inplace_stable_sort(__first, __last, __comp);
+<span class="lineNum"> 5027 </span> : else
+<span class="lineNum"> 5028 </span> : std::__stable_sort_adaptive(__first, __last, __buf.begin(),
+<span class="lineNum"> 5029 </span> : _DistanceType(__buf.size()), __comp);
+<span class="lineNum"> 5030 </span> : }
+<span class="lineNum"> 5031 </span> :
+<span class="lineNum"> 5032 </span> :
+<span class="lineNum"> 5033 </span> : /**
+<span class="lineNum"> 5034 </span> : * @brief Return the union of two sorted ranges.
+<span class="lineNum"> 5035 </span> : * @param first1 Start of first range.
+<span class="lineNum"> 5036 </span> : * @param last1 End of first range.
+<span class="lineNum"> 5037 </span> : * @param first2 Start of second range.
+<span class="lineNum"> 5038 </span> : * @param last2 End of second range.
+<span class="lineNum"> 5039 </span> : * @return End of the output range.
+<span class="lineNum"> 5040 </span> : * @ingroup setoperations
+<span class="lineNum"> 5041 </span> : *
+<span class="lineNum"> 5042 </span> : * This operation iterates over both ranges, copying elements present in
+<span class="lineNum"> 5043 </span> : * each range in order to the output range. Iterators increment for each
+<span class="lineNum"> 5044 </span> : * range. When the current element of one range is less than the other,
+<span class="lineNum"> 5045 </span> : * that element is copied and the iterator advanced. If an element is
+<span class="lineNum"> 5046 </span> : * contained in both ranges, the element from the first range is copied and
+<span class="lineNum"> 5047 </span> : * both ranges advance. The output range may not overlap either input
+<span class="lineNum"> 5048 </span> : * range.
+<span class="lineNum"> 5049 </span> : */
+<span class="lineNum"> 5050 </span> : template&lt;typename _InputIterator1, typename _InputIterator2,
+<span class="lineNum"> 5051 </span> : typename _OutputIterator&gt;
+<span class="lineNum"> 5052 </span> : _OutputIterator
+<span class="lineNum"> 5053 </span> : set_union(_InputIterator1 __first1, _InputIterator1 __last1,
+<span class="lineNum"> 5054 </span> : _InputIterator2 __first2, _InputIterator2 __last2,
+<span class="lineNum"> 5055 </span><span class="lineCov"> 21150 : _OutputIterator __result)</span>
+<span class="lineNum"> 5056 </span> : {
+<span class="lineNum"> 5057 </span> : typedef typename iterator_traits&lt;_InputIterator1&gt;::value_type
+<span class="lineNum"> 5058 </span> : _ValueType1;
+<span class="lineNum"> 5059 </span> : typedef typename iterator_traits&lt;_InputIterator2&gt;::value_type
+<span class="lineNum"> 5060 </span> : _ValueType2;
+<span class="lineNum"> 5061 </span> :
+<span class="lineNum"> 5062 </span> : // concept requirements
+<span class="lineNum"> 5063 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator1&gt;)
+<span class="lineNum"> 5064 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator2&gt;)
+<span class="lineNum"> 5065 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 5066 </span> : _ValueType1&gt;)
+<span class="lineNum"> 5067 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 5068 </span> : _ValueType2&gt;)
+<span class="lineNum"> 5069 </span> : __glibcxx_function_requires(_LessThanOpConcept&lt;_ValueType1, _ValueType2&gt;)
+<span class="lineNum"> 5070 </span> : __glibcxx_function_requires(_LessThanOpConcept&lt;_ValueType2, _ValueType1&gt;)
+<span class="lineNum"> 5071 </span> : __glibcxx_requires_sorted_set(__first1, __last1, __first2);
+<span class="lineNum"> 5072 </span> : __glibcxx_requires_sorted_set(__first2, __last2, __first1);
+<span class="lineNum"> 5073 </span> :
+<span class="lineNum"> 5074 </span><span class="lineCov"> 42309 : while (__first1 != __last1 &amp;&amp; __first2 != __last2)</span>
+<span class="lineNum"> 5075 </span> : {
+<span class="lineNum"> 5076 </span><span class="lineCov"> 9 : if (*__first1 &lt; *__first2)</span>
+<span class="lineNum"> 5077 </span> : {
+<span class="lineNum"> 5078 </span><span class="lineCov"> 7 : *__result = *__first1;</span>
+<span class="lineNum"> 5079 </span><span class="lineCov"> 7 : ++__first1;</span>
+<span class="lineNum"> 5080 </span> : }
+<span class="lineNum"> 5081 </span><span class="lineCov"> 2 : else if (*__first2 &lt; *__first1)</span>
+<span class="lineNum"> 5082 </span> : {
+<span class="lineNum"> 5083 </span><span class="lineCov"> 1 : *__result = *__first2;</span>
+<span class="lineNum"> 5084 </span><span class="lineCov"> 1 : ++__first2;</span>
+<span class="lineNum"> 5085 </span> : }
+<span class="lineNum"> 5086 </span> : else
+<span class="lineNum"> 5087 </span> : {
+<span class="lineNum"> 5088 </span><span class="lineCov"> 1 : *__result = *__first1;</span>
+<span class="lineNum"> 5089 </span><span class="lineCov"> 1 : ++__first1;</span>
+<span class="lineNum"> 5090 </span><span class="lineCov"> 1 : ++__first2;</span>
+<span class="lineNum"> 5091 </span> : }
+<span class="lineNum"> 5092 </span><span class="lineCov"> 9 : ++__result;</span>
+<span class="lineNum"> 5093 </span> : }
+<span class="lineNum"> 5094 </span> : return std::copy(__first2, __last2, std::copy(__first1, __last1,
+<span class="lineNum"> 5095 </span><span class="lineCov"> 21150 : __result));</span>
+<span class="lineNum"> 5096 </span> : }
+<span class="lineNum"> 5097 </span> :
+<span class="lineNum"> 5098 </span> : /**
+<span class="lineNum"> 5099 </span> : * @brief Return the union of two sorted ranges using a comparison functor.
+<span class="lineNum"> 5100 </span> : * @param first1 Start of first range.
+<span class="lineNum"> 5101 </span> : * @param last1 End of first range.
+<span class="lineNum"> 5102 </span> : * @param first2 Start of second range.
+<span class="lineNum"> 5103 </span> : * @param last2 End of second range.
+<span class="lineNum"> 5104 </span> : * @param comp The comparison functor.
+<span class="lineNum"> 5105 </span> : * @return End of the output range.
+<span class="lineNum"> 5106 </span> : * @ingroup setoperations
+<span class="lineNum"> 5107 </span> : *
+<span class="lineNum"> 5108 </span> : * This operation iterates over both ranges, copying elements present in
+<span class="lineNum"> 5109 </span> : * each range in order to the output range. Iterators increment for each
+<span class="lineNum"> 5110 </span> : * range. When the current element of one range is less than the other
+<span class="lineNum"> 5111 </span> : * according to @a comp, that element is copied and the iterator advanced.
+<span class="lineNum"> 5112 </span> : * If an equivalent element according to @a comp is contained in both
+<span class="lineNum"> 5113 </span> : * ranges, the element from the first range is copied and both ranges
+<span class="lineNum"> 5114 </span> : * advance. The output range may not overlap either input range.
+<span class="lineNum"> 5115 </span> : */
+<span class="lineNum"> 5116 </span> : template&lt;typename _InputIterator1, typename _InputIterator2,
+<span class="lineNum"> 5117 </span> : typename _OutputIterator, typename _Compare&gt;
+<span class="lineNum"> 5118 </span> : _OutputIterator
+<span class="lineNum"> 5119 </span> : set_union(_InputIterator1 __first1, _InputIterator1 __last1,
+<span class="lineNum"> 5120 </span> : _InputIterator2 __first2, _InputIterator2 __last2,
+<span class="lineNum"> 5121 </span> : _OutputIterator __result, _Compare __comp)
+<span class="lineNum"> 5122 </span> : {
+<span class="lineNum"> 5123 </span> : typedef typename iterator_traits&lt;_InputIterator1&gt;::value_type
+<span class="lineNum"> 5124 </span> : _ValueType1;
+<span class="lineNum"> 5125 </span> : typedef typename iterator_traits&lt;_InputIterator2&gt;::value_type
+<span class="lineNum"> 5126 </span> : _ValueType2;
+<span class="lineNum"> 5127 </span> :
+<span class="lineNum"> 5128 </span> : // concept requirements
+<span class="lineNum"> 5129 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator1&gt;)
+<span class="lineNum"> 5130 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator2&gt;)
+<span class="lineNum"> 5131 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 5132 </span> : _ValueType1&gt;)
+<span class="lineNum"> 5133 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 5134 </span> : _ValueType2&gt;)
+<span class="lineNum"> 5135 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 5136 </span> : _ValueType1, _ValueType2&gt;)
+<span class="lineNum"> 5137 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 5138 </span> : _ValueType2, _ValueType1&gt;)
+<span class="lineNum"> 5139 </span> : __glibcxx_requires_sorted_set_pred(__first1, __last1, __first2, __comp);
+<span class="lineNum"> 5140 </span> : __glibcxx_requires_sorted_set_pred(__first2, __last2, __first1, __comp);
+<span class="lineNum"> 5141 </span> :
+<span class="lineNum"> 5142 </span> : while (__first1 != __last1 &amp;&amp; __first2 != __last2)
+<span class="lineNum"> 5143 </span> : {
+<span class="lineNum"> 5144 </span> : if (__comp(*__first1, *__first2))
+<span class="lineNum"> 5145 </span> : {
+<span class="lineNum"> 5146 </span> : *__result = *__first1;
+<span class="lineNum"> 5147 </span> : ++__first1;
+<span class="lineNum"> 5148 </span> : }
+<span class="lineNum"> 5149 </span> : else if (__comp(*__first2, *__first1))
+<span class="lineNum"> 5150 </span> : {
+<span class="lineNum"> 5151 </span> : *__result = *__first2;
+<span class="lineNum"> 5152 </span> : ++__first2;
+<span class="lineNum"> 5153 </span> : }
+<span class="lineNum"> 5154 </span> : else
+<span class="lineNum"> 5155 </span> : {
+<span class="lineNum"> 5156 </span> : *__result = *__first1;
+<span class="lineNum"> 5157 </span> : ++__first1;
+<span class="lineNum"> 5158 </span> : ++__first2;
+<span class="lineNum"> 5159 </span> : }
+<span class="lineNum"> 5160 </span> : ++__result;
+<span class="lineNum"> 5161 </span> : }
+<span class="lineNum"> 5162 </span> : return std::copy(__first2, __last2, std::copy(__first1, __last1,
+<span class="lineNum"> 5163 </span> : __result));
+<span class="lineNum"> 5164 </span> : }
+<span class="lineNum"> 5165 </span> :
+<span class="lineNum"> 5166 </span> : /**
+<span class="lineNum"> 5167 </span> : * @brief Return the intersection of two sorted ranges.
+<span class="lineNum"> 5168 </span> : * @param first1 Start of first range.
+<span class="lineNum"> 5169 </span> : * @param last1 End of first range.
+<span class="lineNum"> 5170 </span> : * @param first2 Start of second range.
+<span class="lineNum"> 5171 </span> : * @param last2 End of second range.
+<span class="lineNum"> 5172 </span> : * @return End of the output range.
+<span class="lineNum"> 5173 </span> : * @ingroup setoperations
+<span class="lineNum"> 5174 </span> : *
+<span class="lineNum"> 5175 </span> : * This operation iterates over both ranges, copying elements present in
+<span class="lineNum"> 5176 </span> : * both ranges in order to the output range. Iterators increment for each
+<span class="lineNum"> 5177 </span> : * range. When the current element of one range is less than the other,
+<span class="lineNum"> 5178 </span> : * that iterator advances. If an element is contained in both ranges, the
+<span class="lineNum"> 5179 </span> : * element from the first range is copied and both ranges advance. The
+<span class="lineNum"> 5180 </span> : * output range may not overlap either input range.
+<span class="lineNum"> 5181 </span> : */
+<span class="lineNum"> 5182 </span> : template&lt;typename _InputIterator1, typename _InputIterator2,
+<span class="lineNum"> 5183 </span> : typename _OutputIterator&gt;
+<span class="lineNum"> 5184 </span> : _OutputIterator
+<span class="lineNum"> 5185 </span> : set_intersection(_InputIterator1 __first1, _InputIterator1 __last1,
+<span class="lineNum"> 5186 </span> : _InputIterator2 __first2, _InputIterator2 __last2,
+<span class="lineNum"> 5187 </span><span class="lineCov"> 2 : _OutputIterator __result)</span>
+<span class="lineNum"> 5188 </span> : {
+<span class="lineNum"> 5189 </span> : typedef typename iterator_traits&lt;_InputIterator1&gt;::value_type
+<span class="lineNum"> 5190 </span> : _ValueType1;
+<span class="lineNum"> 5191 </span> : typedef typename iterator_traits&lt;_InputIterator2&gt;::value_type
+<span class="lineNum"> 5192 </span> : _ValueType2;
+<span class="lineNum"> 5193 </span> :
+<span class="lineNum"> 5194 </span> : // concept requirements
+<span class="lineNum"> 5195 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator1&gt;)
+<span class="lineNum"> 5196 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator2&gt;)
+<span class="lineNum"> 5197 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 5198 </span> : _ValueType1&gt;)
+<span class="lineNum"> 5199 </span> : __glibcxx_function_requires(_LessThanOpConcept&lt;_ValueType1, _ValueType2&gt;)
+<span class="lineNum"> 5200 </span> : __glibcxx_function_requires(_LessThanOpConcept&lt;_ValueType2, _ValueType1&gt;)
+<span class="lineNum"> 5201 </span> : __glibcxx_requires_sorted_set(__first1, __last1, __first2);
+<span class="lineNum"> 5202 </span> : __glibcxx_requires_sorted_set(__first2, __last2, __first1);
+<span class="lineNum"> 5203 </span> :
+<span class="lineNum"> 5204 </span><span class="lineCov"> 8 : while (__first1 != __last1 &amp;&amp; __first2 != __last2)</span>
+<span class="lineNum"> 5205 </span><span class="lineCov"> 4 : if (*__first1 &lt; *__first2)</span>
+<span class="lineNum"> 5206 </span><span class="lineCov"> 1 : ++__first1;</span>
+<span class="lineNum"> 5207 </span><span class="lineCov"> 3 : else if (*__first2 &lt; *__first1)</span>
+<span class="lineNum"> 5208 </span><span class="lineCov"> 1 : ++__first2;</span>
+<span class="lineNum"> 5209 </span> : else
+<span class="lineNum"> 5210 </span> : {
+<span class="lineNum"> 5211 </span><span class="lineCov"> 2 : *__result = *__first1;</span>
+<span class="lineNum"> 5212 </span><span class="lineCov"> 2 : ++__first1;</span>
+<span class="lineNum"> 5213 </span><span class="lineCov"> 2 : ++__first2;</span>
+<span class="lineNum"> 5214 </span><span class="lineCov"> 2 : ++__result;</span>
+<span class="lineNum"> 5215 </span> : }
+<span class="lineNum"> 5216 </span><span class="lineCov"> 2 : return __result;</span>
+<span class="lineNum"> 5217 </span> : }
+<span class="lineNum"> 5218 </span> :
+<span class="lineNum"> 5219 </span> : /**
+<span class="lineNum"> 5220 </span> : * @brief Return the intersection of two sorted ranges using comparison
+<span class="lineNum"> 5221 </span> : * functor.
+<span class="lineNum"> 5222 </span> : * @param first1 Start of first range.
+<span class="lineNum"> 5223 </span> : * @param last1 End of first range.
+<span class="lineNum"> 5224 </span> : * @param first2 Start of second range.
+<span class="lineNum"> 5225 </span> : * @param last2 End of second range.
+<span class="lineNum"> 5226 </span> : * @param comp The comparison functor.
+<span class="lineNum"> 5227 </span> : * @return End of the output range.
+<span class="lineNum"> 5228 </span> : * @ingroup setoperations
+<span class="lineNum"> 5229 </span> : *
+<span class="lineNum"> 5230 </span> : * This operation iterates over both ranges, copying elements present in
+<span class="lineNum"> 5231 </span> : * both ranges in order to the output range. Iterators increment for each
+<span class="lineNum"> 5232 </span> : * range. When the current element of one range is less than the other
+<span class="lineNum"> 5233 </span> : * according to @a comp, that iterator advances. If an element is
+<span class="lineNum"> 5234 </span> : * contained in both ranges according to @a comp, the element from the
+<span class="lineNum"> 5235 </span> : * first range is copied and both ranges advance. The output range may not
+<span class="lineNum"> 5236 </span> : * overlap either input range.
+<span class="lineNum"> 5237 </span> : */
+<span class="lineNum"> 5238 </span> : template&lt;typename _InputIterator1, typename _InputIterator2,
+<span class="lineNum"> 5239 </span> : typename _OutputIterator, typename _Compare&gt;
+<span class="lineNum"> 5240 </span> : _OutputIterator
+<span class="lineNum"> 5241 </span> : set_intersection(_InputIterator1 __first1, _InputIterator1 __last1,
+<span class="lineNum"> 5242 </span> : _InputIterator2 __first2, _InputIterator2 __last2,
+<span class="lineNum"> 5243 </span> : _OutputIterator __result, _Compare __comp)
+<span class="lineNum"> 5244 </span> : {
+<span class="lineNum"> 5245 </span> : typedef typename iterator_traits&lt;_InputIterator1&gt;::value_type
+<span class="lineNum"> 5246 </span> : _ValueType1;
+<span class="lineNum"> 5247 </span> : typedef typename iterator_traits&lt;_InputIterator2&gt;::value_type
+<span class="lineNum"> 5248 </span> : _ValueType2;
+<span class="lineNum"> 5249 </span> :
+<span class="lineNum"> 5250 </span> : // concept requirements
+<span class="lineNum"> 5251 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator1&gt;)
+<span class="lineNum"> 5252 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator2&gt;)
+<span class="lineNum"> 5253 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 5254 </span> : _ValueType1&gt;)
+<span class="lineNum"> 5255 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 5256 </span> : _ValueType1, _ValueType2&gt;)
+<span class="lineNum"> 5257 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 5258 </span> : _ValueType2, _ValueType1&gt;)
+<span class="lineNum"> 5259 </span> : __glibcxx_requires_sorted_set_pred(__first1, __last1, __first2, __comp);
+<span class="lineNum"> 5260 </span> : __glibcxx_requires_sorted_set_pred(__first2, __last2, __first1, __comp);
+<span class="lineNum"> 5261 </span> :
+<span class="lineNum"> 5262 </span> : while (__first1 != __last1 &amp;&amp; __first2 != __last2)
+<span class="lineNum"> 5263 </span> : if (__comp(*__first1, *__first2))
+<span class="lineNum"> 5264 </span> : ++__first1;
+<span class="lineNum"> 5265 </span> : else if (__comp(*__first2, *__first1))
+<span class="lineNum"> 5266 </span> : ++__first2;
+<span class="lineNum"> 5267 </span> : else
+<span class="lineNum"> 5268 </span> : {
+<span class="lineNum"> 5269 </span> : *__result = *__first1;
+<span class="lineNum"> 5270 </span> : ++__first1;
+<span class="lineNum"> 5271 </span> : ++__first2;
+<span class="lineNum"> 5272 </span> : ++__result;
+<span class="lineNum"> 5273 </span> : }
+<span class="lineNum"> 5274 </span> : return __result;
+<span class="lineNum"> 5275 </span> : }
+<span class="lineNum"> 5276 </span> :
+<span class="lineNum"> 5277 </span> : /**
+<span class="lineNum"> 5278 </span> : * @brief Return the difference of two sorted ranges.
+<span class="lineNum"> 5279 </span> : * @param first1 Start of first range.
+<span class="lineNum"> 5280 </span> : * @param last1 End of first range.
+<span class="lineNum"> 5281 </span> : * @param first2 Start of second range.
+<span class="lineNum"> 5282 </span> : * @param last2 End of second range.
+<span class="lineNum"> 5283 </span> : * @return End of the output range.
+<span class="lineNum"> 5284 </span> : * @ingroup setoperations
+<span class="lineNum"> 5285 </span> : *
+<span class="lineNum"> 5286 </span> : * This operation iterates over both ranges, copying elements present in
+<span class="lineNum"> 5287 </span> : * the first range but not the second in order to the output range.
+<span class="lineNum"> 5288 </span> : * Iterators increment for each range. When the current element of the
+<span class="lineNum"> 5289 </span> : * first range is less than the second, that element is copied and the
+<span class="lineNum"> 5290 </span> : * iterator advances. If the current element of the second range is less,
+<span class="lineNum"> 5291 </span> : * the iterator advances, but no element is copied. If an element is
+<span class="lineNum"> 5292 </span> : * contained in both ranges, no elements are copied and both ranges
+<span class="lineNum"> 5293 </span> : * advance. The output range may not overlap either input range.
+<span class="lineNum"> 5294 </span> : */
+<span class="lineNum"> 5295 </span> : template&lt;typename _InputIterator1, typename _InputIterator2,
+<span class="lineNum"> 5296 </span> : typename _OutputIterator&gt;
+<span class="lineNum"> 5297 </span> : _OutputIterator
+<span class="lineNum"> 5298 </span> : set_difference(_InputIterator1 __first1, _InputIterator1 __last1,
+<span class="lineNum"> 5299 </span> : _InputIterator2 __first2, _InputIterator2 __last2,
+<span class="lineNum"> 5300 </span><span class="lineCov"> 10 : _OutputIterator __result)</span>
+<span class="lineNum"> 5301 </span> : {
+<span class="lineNum"> 5302 </span> : typedef typename iterator_traits&lt;_InputIterator1&gt;::value_type
+<span class="lineNum"> 5303 </span> : _ValueType1;
+<span class="lineNum"> 5304 </span> : typedef typename iterator_traits&lt;_InputIterator2&gt;::value_type
+<span class="lineNum"> 5305 </span> : _ValueType2;
+<span class="lineNum"> 5306 </span> :
+<span class="lineNum"> 5307 </span> : // concept requirements
+<span class="lineNum"> 5308 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator1&gt;)
+<span class="lineNum"> 5309 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator2&gt;)
+<span class="lineNum"> 5310 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 5311 </span> : _ValueType1&gt;)
+<span class="lineNum"> 5312 </span> : __glibcxx_function_requires(_LessThanOpConcept&lt;_ValueType1, _ValueType2&gt;)
+<span class="lineNum"> 5313 </span> : __glibcxx_function_requires(_LessThanOpConcept&lt;_ValueType2, _ValueType1&gt;)
+<span class="lineNum"> 5314 </span> : __glibcxx_requires_sorted_set(__first1, __last1, __first2);
+<span class="lineNum"> 5315 </span> : __glibcxx_requires_sorted_set(__first2, __last2, __first1);
+<span class="lineNum"> 5316 </span> :
+<span class="lineNum"> 5317 </span><span class="lineCov"> 22 : while (__first1 != __last1 &amp;&amp; __first2 != __last2)</span>
+<span class="lineNum"> 5318 </span><span class="lineCov"> 2 : if (*__first1 &lt; *__first2)</span>
+<span class="lineNum"> 5319 </span> : {
+<span class="lineNum"> 5320 </span><span class="lineCov"> 1 : *__result = *__first1;</span>
+<span class="lineNum"> 5321 </span><span class="lineCov"> 1 : ++__first1;</span>
+<span class="lineNum"> 5322 </span><span class="lineCov"> 1 : ++__result;</span>
+<span class="lineNum"> 5323 </span> : }
+<span class="lineNum"> 5324 </span><span class="lineCov"> 1 : else if (*__first2 &lt; *__first1)</span>
+<span class="lineNum"> 5325 </span><span class="lineNoCov"> 0 : ++__first2;</span>
+<span class="lineNum"> 5326 </span> : else
+<span class="lineNum"> 5327 </span> : {
+<span class="lineNum"> 5328 </span><span class="lineCov"> 1 : ++__first1;</span>
+<span class="lineNum"> 5329 </span><span class="lineCov"> 1 : ++__first2;</span>
+<span class="lineNum"> 5330 </span> : }
+<span class="lineNum"> 5331 </span><span class="lineCov"> 10 : return std::copy(__first1, __last1, __result);</span>
+<span class="lineNum"> 5332 </span> : }
+<span class="lineNum"> 5333 </span> :
+<span class="lineNum"> 5334 </span> : /**
+<span class="lineNum"> 5335 </span> : * @brief Return the difference of two sorted ranges using comparison
+<span class="lineNum"> 5336 </span> : * functor.
+<span class="lineNum"> 5337 </span> : * @param first1 Start of first range.
+<span class="lineNum"> 5338 </span> : * @param last1 End of first range.
+<span class="lineNum"> 5339 </span> : * @param first2 Start of second range.
+<span class="lineNum"> 5340 </span> : * @param last2 End of second range.
+<span class="lineNum"> 5341 </span> : * @param comp The comparison functor.
+<span class="lineNum"> 5342 </span> : * @return End of the output range.
+<span class="lineNum"> 5343 </span> : * @ingroup setoperations
+<span class="lineNum"> 5344 </span> : *
+<span class="lineNum"> 5345 </span> : * This operation iterates over both ranges, copying elements present in
+<span class="lineNum"> 5346 </span> : * the first range but not the second in order to the output range.
+<span class="lineNum"> 5347 </span> : * Iterators increment for each range. When the current element of the
+<span class="lineNum"> 5348 </span> : * first range is less than the second according to @a comp, that element
+<span class="lineNum"> 5349 </span> : * is copied and the iterator advances. If the current element of the
+<span class="lineNum"> 5350 </span> : * second range is less, no element is copied and the iterator advances.
+<span class="lineNum"> 5351 </span> : * If an element is contained in both ranges according to @a comp, no
+<span class="lineNum"> 5352 </span> : * elements are copied and both ranges advance. The output range may not
+<span class="lineNum"> 5353 </span> : * overlap either input range.
+<span class="lineNum"> 5354 </span> : */
+<span class="lineNum"> 5355 </span> : template&lt;typename _InputIterator1, typename _InputIterator2,
+<span class="lineNum"> 5356 </span> : typename _OutputIterator, typename _Compare&gt;
+<span class="lineNum"> 5357 </span> : _OutputIterator
+<span class="lineNum"> 5358 </span> : set_difference(_InputIterator1 __first1, _InputIterator1 __last1,
+<span class="lineNum"> 5359 </span> : _InputIterator2 __first2, _InputIterator2 __last2,
+<span class="lineNum"> 5360 </span> : _OutputIterator __result, _Compare __comp)
+<span class="lineNum"> 5361 </span> : {
+<span class="lineNum"> 5362 </span> : typedef typename iterator_traits&lt;_InputIterator1&gt;::value_type
+<span class="lineNum"> 5363 </span> : _ValueType1;
+<span class="lineNum"> 5364 </span> : typedef typename iterator_traits&lt;_InputIterator2&gt;::value_type
+<span class="lineNum"> 5365 </span> : _ValueType2;
+<span class="lineNum"> 5366 </span> :
+<span class="lineNum"> 5367 </span> : // concept requirements
+<span class="lineNum"> 5368 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator1&gt;)
+<span class="lineNum"> 5369 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator2&gt;)
+<span class="lineNum"> 5370 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 5371 </span> : _ValueType1&gt;)
+<span class="lineNum"> 5372 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 5373 </span> : _ValueType1, _ValueType2&gt;)
+<span class="lineNum"> 5374 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 5375 </span> : _ValueType2, _ValueType1&gt;)
+<span class="lineNum"> 5376 </span> : __glibcxx_requires_sorted_set_pred(__first1, __last1, __first2, __comp);
+<span class="lineNum"> 5377 </span> : __glibcxx_requires_sorted_set_pred(__first2, __last2, __first1, __comp);
+<span class="lineNum"> 5378 </span> :
+<span class="lineNum"> 5379 </span> : while (__first1 != __last1 &amp;&amp; __first2 != __last2)
+<span class="lineNum"> 5380 </span> : if (__comp(*__first1, *__first2))
+<span class="lineNum"> 5381 </span> : {
+<span class="lineNum"> 5382 </span> : *__result = *__first1;
+<span class="lineNum"> 5383 </span> : ++__first1;
+<span class="lineNum"> 5384 </span> : ++__result;
+<span class="lineNum"> 5385 </span> : }
+<span class="lineNum"> 5386 </span> : else if (__comp(*__first2, *__first1))
+<span class="lineNum"> 5387 </span> : ++__first2;
+<span class="lineNum"> 5388 </span> : else
+<span class="lineNum"> 5389 </span> : {
+<span class="lineNum"> 5390 </span> : ++__first1;
+<span class="lineNum"> 5391 </span> : ++__first2;
+<span class="lineNum"> 5392 </span> : }
+<span class="lineNum"> 5393 </span> : return std::copy(__first1, __last1, __result);
+<span class="lineNum"> 5394 </span> : }
+<span class="lineNum"> 5395 </span> :
+<span class="lineNum"> 5396 </span> : /**
+<span class="lineNum"> 5397 </span> : * @brief Return the symmetric difference of two sorted ranges.
+<span class="lineNum"> 5398 </span> : * @param first1 Start of first range.
+<span class="lineNum"> 5399 </span> : * @param last1 End of first range.
+<span class="lineNum"> 5400 </span> : * @param first2 Start of second range.
+<span class="lineNum"> 5401 </span> : * @param last2 End of second range.
+<span class="lineNum"> 5402 </span> : * @return End of the output range.
+<span class="lineNum"> 5403 </span> : * @ingroup setoperations
+<span class="lineNum"> 5404 </span> : *
+<span class="lineNum"> 5405 </span> : * This operation iterates over both ranges, copying elements present in
+<span class="lineNum"> 5406 </span> : * one range but not the other in order to the output range. Iterators
+<span class="lineNum"> 5407 </span> : * increment for each range. When the current element of one range is less
+<span class="lineNum"> 5408 </span> : * than the other, that element is copied and the iterator advances. If an
+<span class="lineNum"> 5409 </span> : * element is contained in both ranges, no elements are copied and both
+<span class="lineNum"> 5410 </span> : * ranges advance. The output range may not overlap either input range.
+<span class="lineNum"> 5411 </span> : */
+<span class="lineNum"> 5412 </span> : template&lt;typename _InputIterator1, typename _InputIterator2,
+<span class="lineNum"> 5413 </span> : typename _OutputIterator&gt;
+<span class="lineNum"> 5414 </span> : _OutputIterator
+<span class="lineNum"> 5415 </span> : set_symmetric_difference(_InputIterator1 __first1, _InputIterator1 __last1,
+<span class="lineNum"> 5416 </span> : _InputIterator2 __first2, _InputIterator2 __last2,
+<span class="lineNum"> 5417 </span> : _OutputIterator __result)
+<span class="lineNum"> 5418 </span> : {
+<span class="lineNum"> 5419 </span> : typedef typename iterator_traits&lt;_InputIterator1&gt;::value_type
+<span class="lineNum"> 5420 </span> : _ValueType1;
+<span class="lineNum"> 5421 </span> : typedef typename iterator_traits&lt;_InputIterator2&gt;::value_type
+<span class="lineNum"> 5422 </span> : _ValueType2;
+<span class="lineNum"> 5423 </span> :
+<span class="lineNum"> 5424 </span> : // concept requirements
+<span class="lineNum"> 5425 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator1&gt;)
+<span class="lineNum"> 5426 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator2&gt;)
+<span class="lineNum"> 5427 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 5428 </span> : _ValueType1&gt;)
+<span class="lineNum"> 5429 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 5430 </span> : _ValueType2&gt;)
+<span class="lineNum"> 5431 </span> : __glibcxx_function_requires(_LessThanOpConcept&lt;_ValueType1, _ValueType2&gt;)
+<span class="lineNum"> 5432 </span> : __glibcxx_function_requires(_LessThanOpConcept&lt;_ValueType2, _ValueType1&gt;)
+<span class="lineNum"> 5433 </span> : __glibcxx_requires_sorted_set(__first1, __last1, __first2);
+<span class="lineNum"> 5434 </span> : __glibcxx_requires_sorted_set(__first2, __last2, __first1);
+<span class="lineNum"> 5435 </span> :
+<span class="lineNum"> 5436 </span> : while (__first1 != __last1 &amp;&amp; __first2 != __last2)
+<span class="lineNum"> 5437 </span> : if (*__first1 &lt; *__first2)
+<span class="lineNum"> 5438 </span> : {
+<span class="lineNum"> 5439 </span> : *__result = *__first1;
+<span class="lineNum"> 5440 </span> : ++__first1;
+<span class="lineNum"> 5441 </span> : ++__result;
+<span class="lineNum"> 5442 </span> : }
+<span class="lineNum"> 5443 </span> : else if (*__first2 &lt; *__first1)
+<span class="lineNum"> 5444 </span> : {
+<span class="lineNum"> 5445 </span> : *__result = *__first2;
+<span class="lineNum"> 5446 </span> : ++__first2;
+<span class="lineNum"> 5447 </span> : ++__result;
+<span class="lineNum"> 5448 </span> : }
+<span class="lineNum"> 5449 </span> : else
+<span class="lineNum"> 5450 </span> : {
+<span class="lineNum"> 5451 </span> : ++__first1;
+<span class="lineNum"> 5452 </span> : ++__first2;
+<span class="lineNum"> 5453 </span> : }
+<span class="lineNum"> 5454 </span> : return std::copy(__first2, __last2, std::copy(__first1,
+<span class="lineNum"> 5455 </span> : __last1, __result));
+<span class="lineNum"> 5456 </span> : }
+<span class="lineNum"> 5457 </span> :
+<span class="lineNum"> 5458 </span> : /**
+<span class="lineNum"> 5459 </span> : * @brief Return the symmetric difference of two sorted ranges using
+<span class="lineNum"> 5460 </span> : * comparison functor.
+<span class="lineNum"> 5461 </span> : * @param first1 Start of first range.
+<span class="lineNum"> 5462 </span> : * @param last1 End of first range.
+<span class="lineNum"> 5463 </span> : * @param first2 Start of second range.
+<span class="lineNum"> 5464 </span> : * @param last2 End of second range.
+<span class="lineNum"> 5465 </span> : * @param comp The comparison functor.
+<span class="lineNum"> 5466 </span> : * @return End of the output range.
+<span class="lineNum"> 5467 </span> : * @ingroup setoperations
+<span class="lineNum"> 5468 </span> : *
+<span class="lineNum"> 5469 </span> : * This operation iterates over both ranges, copying elements present in
+<span class="lineNum"> 5470 </span> : * one range but not the other in order to the output range. Iterators
+<span class="lineNum"> 5471 </span> : * increment for each range. When the current element of one range is less
+<span class="lineNum"> 5472 </span> : * than the other according to @a comp, that element is copied and the
+<span class="lineNum"> 5473 </span> : * iterator advances. If an element is contained in both ranges according
+<span class="lineNum"> 5474 </span> : * to @a comp, no elements are copied and both ranges advance. The output
+<span class="lineNum"> 5475 </span> : * range may not overlap either input range.
+<span class="lineNum"> 5476 </span> : */
+<span class="lineNum"> 5477 </span> : template&lt;typename _InputIterator1, typename _InputIterator2,
+<span class="lineNum"> 5478 </span> : typename _OutputIterator, typename _Compare&gt;
+<span class="lineNum"> 5479 </span> : _OutputIterator
+<span class="lineNum"> 5480 </span> : set_symmetric_difference(_InputIterator1 __first1, _InputIterator1 __last1,
+<span class="lineNum"> 5481 </span> : _InputIterator2 __first2, _InputIterator2 __last2,
+<span class="lineNum"> 5482 </span> : _OutputIterator __result,
+<span class="lineNum"> 5483 </span> : _Compare __comp)
+<span class="lineNum"> 5484 </span> : {
+<span class="lineNum"> 5485 </span> : typedef typename iterator_traits&lt;_InputIterator1&gt;::value_type
+<span class="lineNum"> 5486 </span> : _ValueType1;
+<span class="lineNum"> 5487 </span> : typedef typename iterator_traits&lt;_InputIterator2&gt;::value_type
+<span class="lineNum"> 5488 </span> : _ValueType2;
+<span class="lineNum"> 5489 </span> :
+<span class="lineNum"> 5490 </span> : // concept requirements
+<span class="lineNum"> 5491 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator1&gt;)
+<span class="lineNum"> 5492 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator2&gt;)
+<span class="lineNum"> 5493 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 5494 </span> : _ValueType1&gt;)
+<span class="lineNum"> 5495 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OutputIterator,
+<span class="lineNum"> 5496 </span> : _ValueType2&gt;)
+<span class="lineNum"> 5497 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 5498 </span> : _ValueType1, _ValueType2&gt;)
+<span class="lineNum"> 5499 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 5500 </span> : _ValueType2, _ValueType1&gt;)
+<span class="lineNum"> 5501 </span> : __glibcxx_requires_sorted_set_pred(__first1, __last1, __first2, __comp);
+<span class="lineNum"> 5502 </span> : __glibcxx_requires_sorted_set_pred(__first2, __last2, __first1, __comp);
+<span class="lineNum"> 5503 </span> :
+<span class="lineNum"> 5504 </span> : while (__first1 != __last1 &amp;&amp; __first2 != __last2)
+<span class="lineNum"> 5505 </span> : if (__comp(*__first1, *__first2))
+<span class="lineNum"> 5506 </span> : {
+<span class="lineNum"> 5507 </span> : *__result = *__first1;
+<span class="lineNum"> 5508 </span> : ++__first1;
+<span class="lineNum"> 5509 </span> : ++__result;
+<span class="lineNum"> 5510 </span> : }
+<span class="lineNum"> 5511 </span> : else if (__comp(*__first2, *__first1))
+<span class="lineNum"> 5512 </span> : {
+<span class="lineNum"> 5513 </span> : *__result = *__first2;
+<span class="lineNum"> 5514 </span> : ++__first2;
+<span class="lineNum"> 5515 </span> : ++__result;
+<span class="lineNum"> 5516 </span> : }
+<span class="lineNum"> 5517 </span> : else
+<span class="lineNum"> 5518 </span> : {
+<span class="lineNum"> 5519 </span> : ++__first1;
+<span class="lineNum"> 5520 </span> : ++__first2;
+<span class="lineNum"> 5521 </span> : }
+<span class="lineNum"> 5522 </span> : return std::copy(__first2, __last2,
+<span class="lineNum"> 5523 </span> : std::copy(__first1, __last1, __result));
+<span class="lineNum"> 5524 </span> : }
+<span class="lineNum"> 5525 </span> :
+<span class="lineNum"> 5526 </span> :
+<span class="lineNum"> 5527 </span> : /**
+<span class="lineNum"> 5528 </span> : * @brief Return the minimum element in a range.
+<span class="lineNum"> 5529 </span> : * @param first Start of range.
+<span class="lineNum"> 5530 </span> : * @param last End of range.
+<span class="lineNum"> 5531 </span> : * @return Iterator referencing the first instance of the smallest value.
+<span class="lineNum"> 5532 </span> : */
+<span class="lineNum"> 5533 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 5534 </span> : _ForwardIterator
+<span class="lineNum"> 5535 </span> : min_element(_ForwardIterator __first, _ForwardIterator __last)
+<span class="lineNum"> 5536 </span> : {
+<span class="lineNum"> 5537 </span> : // concept requirements
+<span class="lineNum"> 5538 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 5539 </span> : __glibcxx_function_requires(_LessThanComparableConcept&lt;
+<span class="lineNum"> 5540 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type&gt;)
+<span class="lineNum"> 5541 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 5542 </span> :
+<span class="lineNum"> 5543 </span> : if (__first == __last)
+<span class="lineNum"> 5544 </span> : return __first;
+<span class="lineNum"> 5545 </span> : _ForwardIterator __result = __first;
+<span class="lineNum"> 5546 </span> : while (++__first != __last)
+<span class="lineNum"> 5547 </span> : if (*__first &lt; *__result)
+<span class="lineNum"> 5548 </span> : __result = __first;
+<span class="lineNum"> 5549 </span> : return __result;
+<span class="lineNum"> 5550 </span> : }
+<span class="lineNum"> 5551 </span> :
+<span class="lineNum"> 5552 </span> : /**
+<span class="lineNum"> 5553 </span> : * @brief Return the minimum element in a range using comparison functor.
+<span class="lineNum"> 5554 </span> : * @param first Start of range.
+<span class="lineNum"> 5555 </span> : * @param last End of range.
+<span class="lineNum"> 5556 </span> : * @param comp Comparison functor.
+<span class="lineNum"> 5557 </span> : * @return Iterator referencing the first instance of the smallest value
+<span class="lineNum"> 5558 </span> : * according to comp.
+<span class="lineNum"> 5559 </span> : */
+<span class="lineNum"> 5560 </span> : template&lt;typename _ForwardIterator, typename _Compare&gt;
+<span class="lineNum"> 5561 </span> : _ForwardIterator
+<span class="lineNum"> 5562 </span> : min_element(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 5563 </span> : _Compare __comp)
+<span class="lineNum"> 5564 </span> : {
+<span class="lineNum"> 5565 </span> : // concept requirements
+<span class="lineNum"> 5566 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 5567 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 5568 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type,
+<span class="lineNum"> 5569 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type&gt;)
+<span class="lineNum"> 5570 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 5571 </span> :
+<span class="lineNum"> 5572 </span> : if (__first == __last)
+<span class="lineNum"> 5573 </span> : return __first;
+<span class="lineNum"> 5574 </span> : _ForwardIterator __result = __first;
+<span class="lineNum"> 5575 </span> : while (++__first != __last)
+<span class="lineNum"> 5576 </span> : if (__comp(*__first, *__result))
+<span class="lineNum"> 5577 </span> : __result = __first;
+<span class="lineNum"> 5578 </span> : return __result;
+<span class="lineNum"> 5579 </span> : }
+<span class="lineNum"> 5580 </span> :
+<span class="lineNum"> 5581 </span> : /**
+<span class="lineNum"> 5582 </span> : * @brief Return the maximum element in a range.
+<span class="lineNum"> 5583 </span> : * @param first Start of range.
+<span class="lineNum"> 5584 </span> : * @param last End of range.
+<span class="lineNum"> 5585 </span> : * @return Iterator referencing the first instance of the largest value.
+<span class="lineNum"> 5586 </span> : */
+<span class="lineNum"> 5587 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 5588 </span> : _ForwardIterator
+<span class="lineNum"> 5589 </span> : max_element(_ForwardIterator __first, _ForwardIterator __last)
+<span class="lineNum"> 5590 </span> : {
+<span class="lineNum"> 5591 </span> : // concept requirements
+<span class="lineNum"> 5592 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 5593 </span> : __glibcxx_function_requires(_LessThanComparableConcept&lt;
+<span class="lineNum"> 5594 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type&gt;)
+<span class="lineNum"> 5595 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 5596 </span> :
+<span class="lineNum"> 5597 </span> : if (__first == __last)
+<span class="lineNum"> 5598 </span> : return __first;
+<span class="lineNum"> 5599 </span> : _ForwardIterator __result = __first;
+<span class="lineNum"> 5600 </span> : while (++__first != __last)
+<span class="lineNum"> 5601 </span> : if (*__result &lt; *__first)
+<span class="lineNum"> 5602 </span> : __result = __first;
+<span class="lineNum"> 5603 </span> : return __result;
+<span class="lineNum"> 5604 </span> : }
+<span class="lineNum"> 5605 </span> :
+<span class="lineNum"> 5606 </span> : /**
+<span class="lineNum"> 5607 </span> : * @brief Return the maximum element in a range using comparison functor.
+<span class="lineNum"> 5608 </span> : * @param first Start of range.
+<span class="lineNum"> 5609 </span> : * @param last End of range.
+<span class="lineNum"> 5610 </span> : * @param comp Comparison functor.
+<span class="lineNum"> 5611 </span> : * @return Iterator referencing the first instance of the largest value
+<span class="lineNum"> 5612 </span> : * according to comp.
+<span class="lineNum"> 5613 </span> : */
+<span class="lineNum"> 5614 </span> : template&lt;typename _ForwardIterator, typename _Compare&gt;
+<span class="lineNum"> 5615 </span> : _ForwardIterator
+<span class="lineNum"> 5616 </span> : max_element(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 5617 </span> : _Compare __comp)
+<span class="lineNum"> 5618 </span> : {
+<span class="lineNum"> 5619 </span> : // concept requirements
+<span class="lineNum"> 5620 </span> : __glibcxx_function_requires(_ForwardIteratorConcept&lt;_ForwardIterator&gt;)
+<span class="lineNum"> 5621 </span> : __glibcxx_function_requires(_BinaryPredicateConcept&lt;_Compare,
+<span class="lineNum"> 5622 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type,
+<span class="lineNum"> 5623 </span> : typename iterator_traits&lt;_ForwardIterator&gt;::value_type&gt;)
+<span class="lineNum"> 5624 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 5625 </span> :
+<span class="lineNum"> 5626 </span> : if (__first == __last) return __first;
+<span class="lineNum"> 5627 </span> : _ForwardIterator __result = __first;
+<span class="lineNum"> 5628 </span> : while (++__first != __last)
+<span class="lineNum"> 5629 </span> : if (__comp(*__result, *__first))
+<span class="lineNum"> 5630 </span> : __result = __first;
+<span class="lineNum"> 5631 </span> : return __result;
+<span class="lineNum"> 5632 </span> : }
+<span class="lineNum"> 5633 </span> :
+<span class="lineNum"> 5634 </span> : _GLIBCXX_END_NESTED_NAMESPACE
+<span class="lineNum"> 5635 </span> :
+<span class="lineNum"> 5636 </span> : #endif /* _STL_ALGO_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/stl_algobase.h.gcov.html b/rep/usr/include/c++/4.3/bits/stl_algobase.h.gcov.html
new file mode 100644
index 0000000..3535447
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/stl_algobase.h.gcov.html
@@ -0,0 +1,1207 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/stl_algobase.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - stl_algobase.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">79</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">91.1 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">72</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Core algorithmic facilities -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 18 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 19 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 20 </span> : // USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /*
+<span class="lineNum"> 32 </span> : *
+<span class="lineNum"> 33 </span> : * Copyright (c) 1994
+<span class="lineNum"> 34 </span> : * Hewlett-Packard Company
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 37 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 38 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 39 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 40 </span> : * in supporting documentation. Hewlett-Packard Company makes no
+<span class="lineNum"> 41 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 42 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 43 </span> : *
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * Copyright (c) 1996-1998
+<span class="lineNum"> 46 </span> : * Silicon Graphics Computer Systems, Inc.
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 49 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 50 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 51 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 52 </span> : * in supporting documentation. Silicon Graphics makes no
+<span class="lineNum"> 53 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 54 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 55 </span> : */
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /** @file stl_algobase.h
+<span class="lineNum"> 58 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 59 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 60 </span> : */
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : #ifndef _STL_ALGOBASE_H
+<span class="lineNum"> 63 </span> : #define _STL_ALGOBASE_H 1
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : #include &lt;bits/c++config.h&gt;
+<span class="lineNum"> 66 </span> : #include &lt;cstddef&gt;
+<span class="lineNum"> 67 </span> : #include &lt;bits/functexcept.h&gt;
+<span class="lineNum"> 68 </span> : #include &lt;bits/cpp_type_traits.h&gt;
+<span class="lineNum"> 69 </span> : #include &lt;ext/type_traits.h&gt;
+<span class="lineNum"> 70 </span> : #include &lt;ext/numeric_traits.h&gt;
+<span class="lineNum"> 71 </span> : #include &lt;bits/stl_pair.h&gt;
+<span class="lineNum"> 72 </span> : #include &lt;bits/stl_iterator_base_types.h&gt;
+<span class="lineNum"> 73 </span> : #include &lt;bits/stl_iterator_base_funcs.h&gt;
+<span class="lineNum"> 74 </span> : #include &lt;bits/stl_iterator.h&gt;
+<span class="lineNum"> 75 </span> : #include &lt;bits/concept_check.h&gt;
+<span class="lineNum"> 76 </span> : #include &lt;debug/debug.h&gt;
+<span class="lineNum"> 77 </span> : #include &lt;bits/stl_move.h&gt; // For std::swap and _GLIBCXX_MOVE
+<span class="lineNum"> 78 </span> :
+<span class="lineNum"> 79 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span> : // See http://gcc.gnu.org/ml/libstdc++/2004-08/msg00167.html: in a
+<span class="lineNum"> 82 </span> : // nutshell, we are partially implementing the resolution of DR 187,
+<span class="lineNum"> 83 </span> : // when it's safe, i.e., the value_types are equal.
+<span class="lineNum"> 84 </span> : template&lt;bool _BoolType&gt;
+<span class="lineNum"> 85 </span> : struct __iter_swap
+<span class="lineNum"> 86 </span> : {
+<span class="lineNum"> 87 </span> : template&lt;typename _ForwardIterator1, typename _ForwardIterator2&gt;
+<span class="lineNum"> 88 </span> : static void
+<span class="lineNum"> 89 </span> : iter_swap(_ForwardIterator1 __a, _ForwardIterator2 __b)
+<span class="lineNum"> 90 </span> : {
+<span class="lineNum"> 91 </span> : typedef typename iterator_traits&lt;_ForwardIterator1&gt;::value_type
+<span class="lineNum"> 92 </span> : _ValueType1;
+<span class="lineNum"> 93 </span> : _ValueType1 __tmp = _GLIBCXX_MOVE(*__a);
+<span class="lineNum"> 94 </span> : *__a = _GLIBCXX_MOVE(*__b);
+<span class="lineNum"> 95 </span> : *__b = _GLIBCXX_MOVE(__tmp);
+<span class="lineNum"> 96 </span> : }
+<span class="lineNum"> 97 </span> : };
+<span class="lineNum"> 98 </span> :
+<span class="lineNum"> 99 </span> : template&lt;&gt;
+<span class="lineNum"> 100 </span> : struct __iter_swap&lt;true&gt;
+<span class="lineNum"> 101 </span> : {
+<span class="lineNum"> 102 </span> : template&lt;typename _ForwardIterator1, typename _ForwardIterator2&gt;
+<span class="lineNum"> 103 </span> : static void
+<span class="lineNum"> 104 </span><span class="lineCov"> 7080 : iter_swap(_ForwardIterator1 __a, _ForwardIterator2 __b)</span>
+<span class="lineNum"> 105 </span> : {
+<span class="lineNum"> 106 </span><span class="lineCov"> 7080 : swap(*__a, *__b);</span>
+<span class="lineNum"> 107 </span><span class="lineCov"> 7080 : }</span>
+<span class="lineNum"> 108 </span> : };
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span> : /**
+<span class="lineNum"> 111 </span> : * @brief Swaps the contents of two iterators.
+<span class="lineNum"> 112 </span> : * @param a An iterator.
+<span class="lineNum"> 113 </span> : * @param b Another iterator.
+<span class="lineNum"> 114 </span> : * @return Nothing.
+<span class="lineNum"> 115 </span> : *
+<span class="lineNum"> 116 </span> : * This function swaps the values pointed to by two iterators, not the
+<span class="lineNum"> 117 </span> : * iterators themselves.
+<span class="lineNum"> 118 </span> : */
+<span class="lineNum"> 119 </span> : template&lt;typename _ForwardIterator1, typename _ForwardIterator2&gt;
+<span class="lineNum"> 120 </span> : inline void
+<span class="lineNum"> 121 </span><span class="lineCov"> 7080 : iter_swap(_ForwardIterator1 __a, _ForwardIterator2 __b)</span>
+<span class="lineNum"> 122 </span> : {
+<span class="lineNum"> 123 </span> : typedef typename iterator_traits&lt;_ForwardIterator1&gt;::value_type
+<span class="lineNum"> 124 </span> : _ValueType1;
+<span class="lineNum"> 125 </span> : typedef typename iterator_traits&lt;_ForwardIterator2&gt;::value_type
+<span class="lineNum"> 126 </span> : _ValueType2;
+<span class="lineNum"> 127 </span> :
+<span class="lineNum"> 128 </span> : // concept requirements
+<span class="lineNum"> 129 </span> : __glibcxx_function_requires(_Mutable_ForwardIteratorConcept&lt;
+<span class="lineNum"> 130 </span> : _ForwardIterator1&gt;)
+<span class="lineNum"> 131 </span> : __glibcxx_function_requires(_Mutable_ForwardIteratorConcept&lt;
+<span class="lineNum"> 132 </span> : _ForwardIterator2&gt;)
+<span class="lineNum"> 133 </span> : __glibcxx_function_requires(_ConvertibleConcept&lt;_ValueType1,
+<span class="lineNum"> 134 </span> : _ValueType2&gt;)
+<span class="lineNum"> 135 </span> : __glibcxx_function_requires(_ConvertibleConcept&lt;_ValueType2,
+<span class="lineNum"> 136 </span> : _ValueType1&gt;)
+<span class="lineNum"> 137 </span> :
+<span class="lineNum"> 138 </span> : typedef typename iterator_traits&lt;_ForwardIterator1&gt;::reference
+<span class="lineNum"> 139 </span> : _ReferenceType1;
+<span class="lineNum"> 140 </span> : typedef typename iterator_traits&lt;_ForwardIterator2&gt;::reference
+<span class="lineNum"> 141 </span> : _ReferenceType2;
+<span class="lineNum"> 142 </span><span class="lineCov"> 7080 : std::__iter_swap&lt;__are_same&lt;_ValueType1, _ValueType2&gt;::__value</span>
+<span class="lineNum"> 143 </span> : &amp;&amp; __are_same&lt;_ValueType1&amp;, _ReferenceType1&gt;::__value
+<span class="lineNum"> 144 </span> : &amp;&amp; __are_same&lt;_ValueType2&amp;, _ReferenceType2&gt;::__value&gt;::
+<span class="lineNum"> 145 </span> : iter_swap(__a, __b);
+<span class="lineNum"> 146 </span><span class="lineCov"> 7080 : }</span>
+<span class="lineNum"> 147 </span> :
+<span class="lineNum"> 148 </span> : /**
+<span class="lineNum"> 149 </span> : * @brief Swap the elements of two sequences.
+<span class="lineNum"> 150 </span> : * @param first1 A forward iterator.
+<span class="lineNum"> 151 </span> : * @param last1 A forward iterator.
+<span class="lineNum"> 152 </span> : * @param first2 A forward iterator.
+<span class="lineNum"> 153 </span> : * @return An iterator equal to @p first2+(last1-first1).
+<span class="lineNum"> 154 </span> : *
+<span class="lineNum"> 155 </span> : * Swaps each element in the range @p [first1,last1) with the
+<span class="lineNum"> 156 </span> : * corresponding element in the range @p [first2,(last1-first1)).
+<span class="lineNum"> 157 </span> : * The ranges must not overlap.
+<span class="lineNum"> 158 </span> : */
+<span class="lineNum"> 159 </span> : template&lt;typename _ForwardIterator1, typename _ForwardIterator2&gt;
+<span class="lineNum"> 160 </span> : _ForwardIterator2
+<span class="lineNum"> 161 </span> : swap_ranges(_ForwardIterator1 __first1, _ForwardIterator1 __last1,
+<span class="lineNum"> 162 </span> : _ForwardIterator2 __first2)
+<span class="lineNum"> 163 </span> : {
+<span class="lineNum"> 164 </span> : // concept requirements
+<span class="lineNum"> 165 </span> : __glibcxx_function_requires(_Mutable_ForwardIteratorConcept&lt;
+<span class="lineNum"> 166 </span> : _ForwardIterator1&gt;)
+<span class="lineNum"> 167 </span> : __glibcxx_function_requires(_Mutable_ForwardIteratorConcept&lt;
+<span class="lineNum"> 168 </span> : _ForwardIterator2&gt;)
+<span class="lineNum"> 169 </span> : __glibcxx_requires_valid_range(__first1, __last1);
+<span class="lineNum"> 170 </span> :
+<span class="lineNum"> 171 </span> : for (; __first1 != __last1; ++__first1, ++__first2)
+<span class="lineNum"> 172 </span> : std::iter_swap(__first1, __first2);
+<span class="lineNum"> 173 </span> : return __first2;
+<span class="lineNum"> 174 </span> : }
+<span class="lineNum"> 175 </span> :
+<span class="lineNum"> 176 </span> : /**
+<span class="lineNum"> 177 </span> : * @brief This does what you think it does.
+<span class="lineNum"> 178 </span> : * @param a A thing of arbitrary type.
+<span class="lineNum"> 179 </span> : * @param b Another thing of arbitrary type.
+<span class="lineNum"> 180 </span> : * @return The lesser of the parameters.
+<span class="lineNum"> 181 </span> : *
+<span class="lineNum"> 182 </span> : * This is the simple classic generic implementation. It will work on
+<span class="lineNum"> 183 </span> : * temporary expressions, since they are only evaluated once, unlike a
+<span class="lineNum"> 184 </span> : * preprocessor macro.
+<span class="lineNum"> 185 </span> : */
+<span class="lineNum"> 186 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 187 </span> : inline const _Tp&amp;
+<span class="lineNum"> 188 </span><span class="lineNoCov"> 0 : min(const _Tp&amp; __a, const _Tp&amp; __b)</span>
+<span class="lineNum"> 189 </span> : {
+<span class="lineNum"> 190 </span> : // concept requirements
+<span class="lineNum"> 191 </span> : __glibcxx_function_requires(_LessThanComparableConcept&lt;_Tp&gt;)
+<span class="lineNum"> 192 </span> : //return __b &lt; __a ? __b : __a;
+<span class="lineNum"> 193 </span><span class="lineNoCov"> 0 : if (__b &lt; __a)</span>
+<span class="lineNum"> 194 </span><span class="lineNoCov"> 0 : return __b;</span>
+<span class="lineNum"> 195 </span><span class="lineNoCov"> 0 : return __a;</span>
+<span class="lineNum"> 196 </span> : }
+<span class="lineNum"> 197 </span> :
+<span class="lineNum"> 198 </span> : /**
+<span class="lineNum"> 199 </span> : * @brief This does what you think it does.
+<span class="lineNum"> 200 </span> : * @param a A thing of arbitrary type.
+<span class="lineNum"> 201 </span> : * @param b Another thing of arbitrary type.
+<span class="lineNum"> 202 </span> : * @return The greater of the parameters.
+<span class="lineNum"> 203 </span> : *
+<span class="lineNum"> 204 </span> : * This is the simple classic generic implementation. It will work on
+<span class="lineNum"> 205 </span> : * temporary expressions, since they are only evaluated once, unlike a
+<span class="lineNum"> 206 </span> : * preprocessor macro.
+<span class="lineNum"> 207 </span> : */
+<span class="lineNum"> 208 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 209 </span> : inline const _Tp&amp;
+<span class="lineNum"> 210 </span><span class="lineCov"> 20743 : max(const _Tp&amp; __a, const _Tp&amp; __b)</span>
+<span class="lineNum"> 211 </span> : {
+<span class="lineNum"> 212 </span> : // concept requirements
+<span class="lineNum"> 213 </span> : __glibcxx_function_requires(_LessThanComparableConcept&lt;_Tp&gt;)
+<span class="lineNum"> 214 </span> : //return __a &lt; __b ? __b : __a;
+<span class="lineNum"> 215 </span><span class="lineCov"> 20743 : if (__a &lt; __b)</span>
+<span class="lineNum"> 216 </span><span class="lineCov"> 4790 : return __b;</span>
+<span class="lineNum"> 217 </span><span class="lineCov"> 15953 : return __a;</span>
+<span class="lineNum"> 218 </span> : }
+<span class="lineNum"> 219 </span> :
+<span class="lineNum"> 220 </span> : /**
+<span class="lineNum"> 221 </span> : * @brief This does what you think it does.
+<span class="lineNum"> 222 </span> : * @param a A thing of arbitrary type.
+<span class="lineNum"> 223 </span> : * @param b Another thing of arbitrary type.
+<span class="lineNum"> 224 </span> : * @param comp A @link s20_3_3_comparisons comparison functor@endlink.
+<span class="lineNum"> 225 </span> : * @return The lesser of the parameters.
+<span class="lineNum"> 226 </span> : *
+<span class="lineNum"> 227 </span> : * This will work on temporary expressions, since they are only evaluated
+<span class="lineNum"> 228 </span> : * once, unlike a preprocessor macro.
+<span class="lineNum"> 229 </span> : */
+<span class="lineNum"> 230 </span> : template&lt;typename _Tp, typename _Compare&gt;
+<span class="lineNum"> 231 </span> : inline const _Tp&amp;
+<span class="lineNum"> 232 </span> : min(const _Tp&amp; __a, const _Tp&amp; __b, _Compare __comp)
+<span class="lineNum"> 233 </span> : {
+<span class="lineNum"> 234 </span> : //return __comp(__b, __a) ? __b : __a;
+<span class="lineNum"> 235 </span> : if (__comp(__b, __a))
+<span class="lineNum"> 236 </span> : return __b;
+<span class="lineNum"> 237 </span> : return __a;
+<span class="lineNum"> 238 </span> : }
+<span class="lineNum"> 239 </span> :
+<span class="lineNum"> 240 </span> : /**
+<span class="lineNum"> 241 </span> : * @brief This does what you think it does.
+<span class="lineNum"> 242 </span> : * @param a A thing of arbitrary type.
+<span class="lineNum"> 243 </span> : * @param b Another thing of arbitrary type.
+<span class="lineNum"> 244 </span> : * @param comp A @link s20_3_3_comparisons comparison functor@endlink.
+<span class="lineNum"> 245 </span> : * @return The greater of the parameters.
+<span class="lineNum"> 246 </span> : *
+<span class="lineNum"> 247 </span> : * This will work on temporary expressions, since they are only evaluated
+<span class="lineNum"> 248 </span> : * once, unlike a preprocessor macro.
+<span class="lineNum"> 249 </span> : */
+<span class="lineNum"> 250 </span> : template&lt;typename _Tp, typename _Compare&gt;
+<span class="lineNum"> 251 </span> : inline const _Tp&amp;
+<span class="lineNum"> 252 </span> : max(const _Tp&amp; __a, const _Tp&amp; __b, _Compare __comp)
+<span class="lineNum"> 253 </span> : {
+<span class="lineNum"> 254 </span> : //return __comp(__a, __b) ? __b : __a;
+<span class="lineNum"> 255 </span> : if (__comp(__a, __b))
+<span class="lineNum"> 256 </span> : return __b;
+<span class="lineNum"> 257 </span> : return __a;
+<span class="lineNum"> 258 </span> : }
+<span class="lineNum"> 259 </span> :
+<span class="lineNum"> 260 </span> :
+<span class="lineNum"> 261 </span> : // If _Iterator is a __normal_iterator return its base (a plain pointer,
+<span class="lineNum"> 262 </span> : // normally) otherwise return it untouched. See copy, fill, ...
+<span class="lineNum"> 263 </span> : template&lt;typename _Iterator,
+<span class="lineNum"> 264 </span> : bool _IsNormal = __is_normal_iterator&lt;_Iterator&gt;::__value&gt;
+<span class="lineNum"> 265 </span> : struct __niter_base
+<span class="lineNum"> 266 </span> : {
+<span class="lineNum"> 267 </span> : static _Iterator
+<span class="lineNum"> 268 </span><span class="lineCov"> 256058 : __b(_Iterator __it)</span>
+<span class="lineNum"> 269 </span><span class="lineCov"> 256058 : { return __it; }</span>
+<span class="lineNum"> 270 </span> : };
+<span class="lineNum"> 271 </span> :
+<span class="lineNum"> 272 </span> : template&lt;typename _Iterator&gt;
+<span class="lineNum"> 273 </span> : struct __niter_base&lt;_Iterator, true&gt;
+<span class="lineNum"> 274 </span> : {
+<span class="lineNum"> 275 </span> : static typename _Iterator::iterator_type
+<span class="lineNum"> 276 </span><span class="lineCov"> 23362 : __b(_Iterator __it)</span>
+<span class="lineNum"> 277 </span><span class="lineCov"> 23362 : { return __it.base(); }</span>
+<span class="lineNum"> 278 </span> : };
+<span class="lineNum"> 279 </span> :
+<span class="lineNum"> 280 </span> : // Likewise, for move_iterator.
+<span class="lineNum"> 281 </span> : template&lt;typename _Iterator,
+<span class="lineNum"> 282 </span> : bool _IsMove = __is_move_iterator&lt;_Iterator&gt;::__value&gt;
+<span class="lineNum"> 283 </span> : struct __miter_base
+<span class="lineNum"> 284 </span> : {
+<span class="lineNum"> 285 </span> : static _Iterator
+<span class="lineNum"> 286 </span><span class="lineCov"> 156418 : __b(_Iterator __it)</span>
+<span class="lineNum"> 287 </span><span class="lineCov"> 156418 : { return __it; }</span>
+<span class="lineNum"> 288 </span> : };
+<span class="lineNum"> 289 </span> :
+<span class="lineNum"> 290 </span> : template&lt;typename _Iterator&gt;
+<span class="lineNum"> 291 </span> : struct __miter_base&lt;_Iterator, true&gt;
+<span class="lineNum"> 292 </span> : {
+<span class="lineNum"> 293 </span> : static typename _Iterator::iterator_type
+<span class="lineNum"> 294 </span> : __b(_Iterator __it)
+<span class="lineNum"> 295 </span> : { return __it.base(); }
+<span class="lineNum"> 296 </span> : };
+<span class="lineNum"> 297 </span> :
+<span class="lineNum"> 298 </span> : // All of these auxiliary structs serve two purposes. (1) Replace
+<span class="lineNum"> 299 </span> : // calls to copy with memmove whenever possible. (Memmove, not memcpy,
+<span class="lineNum"> 300 </span> : // because the input and output ranges are permitted to overlap.)
+<span class="lineNum"> 301 </span> : // (2) If we're using random access iterators, then write the loop as
+<span class="lineNum"> 302 </span> : // a for loop with an explicit count.
+<span class="lineNum"> 303 </span> :
+<span class="lineNum"> 304 </span> : template&lt;bool, bool, typename&gt;
+<span class="lineNum"> 305 </span> : struct __copy_move
+<span class="lineNum"> 306 </span> : {
+<span class="lineNum"> 307 </span> : template&lt;typename _II, typename _OI&gt;
+<span class="lineNum"> 308 </span> : static _OI
+<span class="lineNum"> 309 </span><span class="lineCov"> 42335 : __copy_m(_II __first, _II __last, _OI __result)</span>
+<span class="lineNum"> 310 </span> : {
+<span class="lineNum"> 311 </span><span class="lineCov"> 159330 : for (; __first != __last; ++__result, ++__first)</span>
+<span class="lineNum"> 312 </span><span class="lineCov"> 112959 : *__result = *__first;</span>
+<span class="lineNum"> 313 </span><span class="lineCov"> 42335 : return __result;</span>
+<span class="lineNum"> 314 </span> : }
+<span class="lineNum"> 315 </span> : };
+<span class="lineNum"> 316 </span> :
+<span class="lineNum"> 317 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 318 </span> : template&lt;typename _Category&gt;
+<span class="lineNum"> 319 </span> : struct __copy_move&lt;true, false, _Category&gt;
+<span class="lineNum"> 320 </span> : {
+<span class="lineNum"> 321 </span> : template&lt;typename _II, typename _OI&gt;
+<span class="lineNum"> 322 </span> : static _OI
+<span class="lineNum"> 323 </span> : __copy_m(_II __first, _II __last, _OI __result)
+<span class="lineNum"> 324 </span> : {
+<span class="lineNum"> 325 </span> : for (; __first != __last; ++__result, ++__first)
+<span class="lineNum"> 326 </span> : *__result = std::move(*__first);
+<span class="lineNum"> 327 </span> : return __result;
+<span class="lineNum"> 328 </span> : }
+<span class="lineNum"> 329 </span> : };
+<span class="lineNum"> 330 </span> : #endif
+<span class="lineNum"> 331 </span> :
+<span class="lineNum"> 332 </span> : template&lt;&gt;
+<span class="lineNum"> 333 </span> : struct __copy_move&lt;false, false, random_access_iterator_tag&gt;
+<span class="lineNum"> 334 </span> : {
+<span class="lineNum"> 335 </span> : template&lt;typename _II, typename _OI&gt;
+<span class="lineNum"> 336 </span> : static _OI
+<span class="lineNum"> 337 </span><span class="lineCov"> 945 : __copy_m(_II __first, _II __last, _OI __result)</span>
+<span class="lineNum"> 338 </span> : {
+<span class="lineNum"> 339 </span> : typedef typename iterator_traits&lt;_II&gt;::difference_type _Distance;
+<span class="lineNum"> 340 </span><span class="lineCov"> 12957 : for(_Distance __n = __last - __first; __n &gt; 0; --__n)</span>
+<span class="lineNum"> 341 </span> : {
+<span class="lineNum"> 342 </span><span class="lineCov"> 12012 : *__result = *__first;</span>
+<span class="lineNum"> 343 </span><span class="lineCov"> 12012 : ++__first;</span>
+<span class="lineNum"> 344 </span><span class="lineCov"> 12012 : ++__result;</span>
+<span class="lineNum"> 345 </span> : }
+<span class="lineNum"> 346 </span><span class="lineCov"> 945 : return __result;</span>
+<span class="lineNum"> 347 </span> : }
+<span class="lineNum"> 348 </span> : };
+<span class="lineNum"> 349 </span> :
+<span class="lineNum"> 350 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 351 </span> : template&lt;&gt;
+<span class="lineNum"> 352 </span> : struct __copy_move&lt;true, false, random_access_iterator_tag&gt;
+<span class="lineNum"> 353 </span> : {
+<span class="lineNum"> 354 </span> : template&lt;typename _II, typename _OI&gt;
+<span class="lineNum"> 355 </span> : static _OI
+<span class="lineNum"> 356 </span> : __copy_m(_II __first, _II __last, _OI __result)
+<span class="lineNum"> 357 </span> : {
+<span class="lineNum"> 358 </span> : typedef typename iterator_traits&lt;_II&gt;::difference_type _Distance;
+<span class="lineNum"> 359 </span> : for(_Distance __n = __last - __first; __n &gt; 0; --__n)
+<span class="lineNum"> 360 </span> : {
+<span class="lineNum"> 361 </span> : *__result = std::move(*__first);
+<span class="lineNum"> 362 </span> : ++__first;
+<span class="lineNum"> 363 </span> : ++__result;
+<span class="lineNum"> 364 </span> : }
+<span class="lineNum"> 365 </span> : return __result;
+<span class="lineNum"> 366 </span> : }
+<span class="lineNum"> 367 </span> : };
+<span class="lineNum"> 368 </span> : #endif
+<span class="lineNum"> 369 </span> :
+<span class="lineNum"> 370 </span> : template&lt;bool _IsMove&gt;
+<span class="lineNum"> 371 </span> : struct __copy_move&lt;_IsMove, true, random_access_iterator_tag&gt;
+<span class="lineNum"> 372 </span> : {
+<span class="lineNum"> 373 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 374 </span> : static _Tp*
+<span class="lineNum"> 375 </span><span class="lineCov"> 27153 : __copy_m(const _Tp* __first, const _Tp* __last, _Tp* __result)</span>
+<span class="lineNum"> 376 </span> : {
+<span class="lineNum"> 377 </span><span class="lineCov"> 27153 : __builtin_memmove(__result, __first,</span>
+<span class="lineNum"> 378 </span> : sizeof(_Tp) * (__last - __first));
+<span class="lineNum"> 379 </span><span class="lineCov"> 27153 : return __result + (__last - __first);</span>
+<span class="lineNum"> 380 </span> : }
+<span class="lineNum"> 381 </span> : };
+<span class="lineNum"> 382 </span> :
+<span class="lineNum"> 383 </span> : template&lt;bool _IsMove, typename _II, typename _OI&gt;
+<span class="lineNum"> 384 </span> : inline _OI
+<span class="lineNum"> 385 </span><span class="lineCov"> 70433 : __copy_move_a(_II __first, _II __last, _OI __result)</span>
+<span class="lineNum"> 386 </span> : {
+<span class="lineNum"> 387 </span> : typedef typename iterator_traits&lt;_II&gt;::value_type _ValueTypeI;
+<span class="lineNum"> 388 </span> : typedef typename iterator_traits&lt;_OI&gt;::value_type _ValueTypeO;
+<span class="lineNum"> 389 </span> : typedef typename iterator_traits&lt;_II&gt;::iterator_category _Category;
+<span class="lineNum"> 390 </span> : const bool __simple = (__is_pod(_ValueTypeI)
+<span class="lineNum"> 391 </span> : &amp;&amp; __is_pointer&lt;_II&gt;::__value
+<span class="lineNum"> 392 </span> : &amp;&amp; __is_pointer&lt;_OI&gt;::__value
+<span class="lineNum"> 393 </span><span class="lineCov"> 70433 : &amp;&amp; __are_same&lt;_ValueTypeI, _ValueTypeO&gt;::__value);</span>
+<span class="lineNum"> 394 </span> :
+<span class="lineNum"> 395 </span> : return std::__copy_move&lt;_IsMove, __simple,
+<span class="lineNum"> 396 </span><span class="lineCov"> 70433 : _Category&gt;::__copy_m(__first, __last, __result);</span>
+<span class="lineNum"> 397 </span> : }
+<span class="lineNum"> 398 </span> :
+<span class="lineNum"> 399 </span> : // Helpers for streambuf iterators (either istream or ostream).
+<span class="lineNum"> 400 </span> : // NB: avoid including &lt;iosfwd&gt;, relatively large.
+<span class="lineNum"> 401 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 402 </span> : struct char_traits;
+<span class="lineNum"> 403 </span> :
+<span class="lineNum"> 404 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 405 </span> : class istreambuf_iterator;
+<span class="lineNum"> 406 </span> :
+<span class="lineNum"> 407 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 408 </span> : class ostreambuf_iterator;
+<span class="lineNum"> 409 </span> :
+<span class="lineNum"> 410 </span> : template&lt;bool _IsMove, typename _CharT&gt;
+<span class="lineNum"> 411 </span> : typename __gnu_cxx::__enable_if&lt;__is_char&lt;_CharT&gt;::__value,
+<span class="lineNum"> 412 </span> : ostreambuf_iterator&lt;_CharT, char_traits&lt;_CharT&gt; &gt; &gt;::__type
+<span class="lineNum"> 413 </span> : __copy_move_a2(_CharT*, _CharT*,
+<span class="lineNum"> 414 </span> : ostreambuf_iterator&lt;_CharT, char_traits&lt;_CharT&gt; &gt;);
+<span class="lineNum"> 415 </span> :
+<span class="lineNum"> 416 </span> : template&lt;bool _IsMove, typename _CharT&gt;
+<span class="lineNum"> 417 </span> : typename __gnu_cxx::__enable_if&lt;__is_char&lt;_CharT&gt;::__value,
+<span class="lineNum"> 418 </span> : ostreambuf_iterator&lt;_CharT, char_traits&lt;_CharT&gt; &gt; &gt;::__type
+<span class="lineNum"> 419 </span> : __copy_move_a2(const _CharT*, const _CharT*,
+<span class="lineNum"> 420 </span> : ostreambuf_iterator&lt;_CharT, char_traits&lt;_CharT&gt; &gt;);
+<span class="lineNum"> 421 </span> :
+<span class="lineNum"> 422 </span> : template&lt;bool _IsMove, typename _CharT&gt;
+<span class="lineNum"> 423 </span> : typename __gnu_cxx::__enable_if&lt;__is_char&lt;_CharT&gt;::__value,
+<span class="lineNum"> 424 </span> : _CharT*&gt;::__type
+<span class="lineNum"> 425 </span> : __copy_move_a2(istreambuf_iterator&lt;_CharT, char_traits&lt;_CharT&gt; &gt;,
+<span class="lineNum"> 426 </span> : istreambuf_iterator&lt;_CharT, char_traits&lt;_CharT&gt; &gt;, _CharT*);
+<span class="lineNum"> 427 </span> :
+<span class="lineNum"> 428 </span> : template&lt;bool _IsMove, typename _II, typename _OI&gt;
+<span class="lineNum"> 429 </span> : inline _OI
+<span class="lineNum"> 430 </span><span class="lineCov"> 70433 : __copy_move_a2(_II __first, _II __last, _OI __result)</span>
+<span class="lineNum"> 431 </span> : {
+<span class="lineNum"> 432 </span> : return _OI(std::__copy_move_a&lt;_IsMove&gt;
+<span class="lineNum"> 433 </span> : (std::__niter_base&lt;_II&gt;::__b(__first),
+<span class="lineNum"> 434 </span> : std::__niter_base&lt;_II&gt;::__b(__last),
+<span class="lineNum"> 435 </span><span class="lineCov"> 70433 : std::__niter_base&lt;_OI&gt;::__b(__result)));</span>
+<span class="lineNum"> 436 </span> : }
+<span class="lineNum"> 437 </span> :
+<span class="lineNum"> 438 </span> : /**
+<span class="lineNum"> 439 </span> : * @brief Copies the range [first,last) into result.
+<span class="lineNum"> 440 </span> : * @param first An input iterator.
+<span class="lineNum"> 441 </span> : * @param last An input iterator.
+<span class="lineNum"> 442 </span> : * @param result An output iterator.
+<span class="lineNum"> 443 </span> : * @return result + (first - last)
+<span class="lineNum"> 444 </span> : *
+<span class="lineNum"> 445 </span> : * This inline function will boil down to a call to @c memmove whenever
+<span class="lineNum"> 446 </span> : * possible. Failing that, if random access iterators are passed, then the
+<span class="lineNum"> 447 </span> : * loop count will be known (and therefore a candidate for compiler
+<span class="lineNum"> 448 </span> : * optimizations such as unrolling). Result may not be contained within
+<span class="lineNum"> 449 </span> : * [first,last); the copy_backward function should be used instead.
+<span class="lineNum"> 450 </span> : *
+<span class="lineNum"> 451 </span> : * Note that the end of the output range is permitted to be contained
+<span class="lineNum"> 452 </span> : * within [first,last).
+<span class="lineNum"> 453 </span> : */
+<span class="lineNum"> 454 </span> : template&lt;typename _II, typename _OI&gt;
+<span class="lineNum"> 455 </span> : inline _OI
+<span class="lineNum"> 456 </span><span class="lineCov"> 70433 : copy(_II __first, _II __last, _OI __result)</span>
+<span class="lineNum"> 457 </span> : {
+<span class="lineNum"> 458 </span> : // concept requirements
+<span class="lineNum"> 459 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_II&gt;)
+<span class="lineNum"> 460 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OI,
+<span class="lineNum"> 461 </span> : typename iterator_traits&lt;_II&gt;::value_type&gt;)
+<span class="lineNum"> 462 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 463 </span> :
+<span class="lineNum"> 464 </span> : return (std::__copy_move_a2&lt;__is_move_iterator&lt;_II&gt;::__value&gt;
+<span class="lineNum"> 465 </span> : (std::__miter_base&lt;_II&gt;::__b(__first),
+<span class="lineNum"> 466 </span><span class="lineCov"> 70433 : std::__miter_base&lt;_II&gt;::__b(__last), __result));</span>
+<span class="lineNum"> 467 </span> : }
+<span class="lineNum"> 468 </span> :
+<span class="lineNum"> 469 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 470 </span> : /**
+<span class="lineNum"> 471 </span> : * @brief Moves the range [first,last) into result.
+<span class="lineNum"> 472 </span> : * @param first An input iterator.
+<span class="lineNum"> 473 </span> : * @param last An input iterator.
+<span class="lineNum"> 474 </span> : * @param result An output iterator.
+<span class="lineNum"> 475 </span> : * @return result + (first - last)
+<span class="lineNum"> 476 </span> : *
+<span class="lineNum"> 477 </span> : * This inline function will boil down to a call to @c memmove whenever
+<span class="lineNum"> 478 </span> : * possible. Failing that, if random access iterators are passed, then the
+<span class="lineNum"> 479 </span> : * loop count will be known (and therefore a candidate for compiler
+<span class="lineNum"> 480 </span> : * optimizations such as unrolling). Result may not be contained within
+<span class="lineNum"> 481 </span> : * [first,last); the move_backward function should be used instead.
+<span class="lineNum"> 482 </span> : *
+<span class="lineNum"> 483 </span> : * Note that the end of the output range is permitted to be contained
+<span class="lineNum"> 484 </span> : * within [first,last).
+<span class="lineNum"> 485 </span> : */
+<span class="lineNum"> 486 </span> : template&lt;typename _II, typename _OI&gt;
+<span class="lineNum"> 487 </span> : inline _OI
+<span class="lineNum"> 488 </span> : move(_II __first, _II __last, _OI __result)
+<span class="lineNum"> 489 </span> : {
+<span class="lineNum"> 490 </span> : // concept requirements
+<span class="lineNum"> 491 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_II&gt;)
+<span class="lineNum"> 492 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OI,
+<span class="lineNum"> 493 </span> : typename iterator_traits&lt;_II&gt;::value_type&gt;)
+<span class="lineNum"> 494 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 495 </span> :
+<span class="lineNum"> 496 </span> : return (std::__copy_move_a2&lt;true&gt;
+<span class="lineNum"> 497 </span> : (std::__miter_base&lt;_II&gt;::__b(__first),
+<span class="lineNum"> 498 </span> : std::__miter_base&lt;_II&gt;::__b(__last), __result));
+<span class="lineNum"> 499 </span> : }
+<span class="lineNum"> 500 </span> :
+<span class="lineNum"> 501 </span> : #define _GLIBCXX_MOVE3(_Tp, _Up, _Vp) std::move(_Tp, _Up, _Vp)
+<span class="lineNum"> 502 </span> : #else
+<span class="lineNum"> 503 </span> : #define _GLIBCXX_MOVE3(_Tp, _Up, _Vp) std::copy(_Tp, _Up, _Vp)
+<span class="lineNum"> 504 </span> : #endif
+<span class="lineNum"> 505 </span> :
+<span class="lineNum"> 506 </span> : template&lt;bool, bool, typename&gt;
+<span class="lineNum"> 507 </span> : struct __copy_move_backward
+<span class="lineNum"> 508 </span> : {
+<span class="lineNum"> 509 </span> : template&lt;typename _BI1, typename _BI2&gt;
+<span class="lineNum"> 510 </span> : static _BI2
+<span class="lineNum"> 511 </span> : __copy_move_b(_BI1 __first, _BI1 __last, _BI2 __result)
+<span class="lineNum"> 512 </span> : {
+<span class="lineNum"> 513 </span> : while (__first != __last)
+<span class="lineNum"> 514 </span> : *--__result = *--__last;
+<span class="lineNum"> 515 </span> : return __result;
+<span class="lineNum"> 516 </span> : }
+<span class="lineNum"> 517 </span> : };
+<span class="lineNum"> 518 </span> :
+<span class="lineNum"> 519 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 520 </span> : template&lt;typename _Category&gt;
+<span class="lineNum"> 521 </span> : struct __copy_move_backward&lt;true, false, _Category&gt;
+<span class="lineNum"> 522 </span> : {
+<span class="lineNum"> 523 </span> : template&lt;typename _BI1, typename _BI2&gt;
+<span class="lineNum"> 524 </span> : static _BI2
+<span class="lineNum"> 525 </span> : __copy_move_b(_BI1 __first, _BI1 __last, _BI2 __result)
+<span class="lineNum"> 526 </span> : {
+<span class="lineNum"> 527 </span> : while (__first != __last)
+<span class="lineNum"> 528 </span> : *--__result = std::move(*--__last);
+<span class="lineNum"> 529 </span> : return __result;
+<span class="lineNum"> 530 </span> : }
+<span class="lineNum"> 531 </span> : };
+<span class="lineNum"> 532 </span> : #endif
+<span class="lineNum"> 533 </span> :
+<span class="lineNum"> 534 </span> : template&lt;&gt;
+<span class="lineNum"> 535 </span> : struct __copy_move_backward&lt;false, false, random_access_iterator_tag&gt;
+<span class="lineNum"> 536 </span> : {
+<span class="lineNum"> 537 </span> : template&lt;typename _BI1, typename _BI2&gt;
+<span class="lineNum"> 538 </span> : static _BI2
+<span class="lineNum"> 539 </span><span class="lineCov"> 150 : __copy_move_b(_BI1 __first, _BI1 __last, _BI2 __result)</span>
+<span class="lineNum"> 540 </span> : {
+<span class="lineNum"> 541 </span> : typename iterator_traits&lt;_BI1&gt;::difference_type __n;
+<span class="lineNum"> 542 </span><span class="lineCov"> 524 : for (__n = __last - __first; __n &gt; 0; --__n)</span>
+<span class="lineNum"> 543 </span><span class="lineCov"> 374 : *--__result = *--__last;</span>
+<span class="lineNum"> 544 </span><span class="lineCov"> 150 : return __result;</span>
+<span class="lineNum"> 545 </span> : }
+<span class="lineNum"> 546 </span> : };
+<span class="lineNum"> 547 </span> :
+<span class="lineNum"> 548 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 549 </span> : template&lt;&gt;
+<span class="lineNum"> 550 </span> : struct __copy_move_backward&lt;true, false, random_access_iterator_tag&gt;
+<span class="lineNum"> 551 </span> : {
+<span class="lineNum"> 552 </span> : template&lt;typename _BI1, typename _BI2&gt;
+<span class="lineNum"> 553 </span> : static _BI2
+<span class="lineNum"> 554 </span> : __copy_move_b(_BI1 __first, _BI1 __last, _BI2 __result)
+<span class="lineNum"> 555 </span> : {
+<span class="lineNum"> 556 </span> : typename iterator_traits&lt;_BI1&gt;::difference_type __n;
+<span class="lineNum"> 557 </span> : for (__n = __last - __first; __n &gt; 0; --__n)
+<span class="lineNum"> 558 </span> : *--__result = std::move(*--__last);
+<span class="lineNum"> 559 </span> : return __result;
+<span class="lineNum"> 560 </span> : }
+<span class="lineNum"> 561 </span> : };
+<span class="lineNum"> 562 </span> : #endif
+<span class="lineNum"> 563 </span> :
+<span class="lineNum"> 564 </span> : template&lt;bool _IsMove&gt;
+<span class="lineNum"> 565 </span> : struct __copy_move_backward&lt;_IsMove, true, random_access_iterator_tag&gt;
+<span class="lineNum"> 566 </span> : {
+<span class="lineNum"> 567 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 568 </span> : static _Tp*
+<span class="lineNum"> 569 </span><span class="lineCov"> 7626 : __copy_move_b(const _Tp* __first, const _Tp* __last, _Tp* __result)</span>
+<span class="lineNum"> 570 </span> : {
+<span class="lineNum"> 571 </span><span class="lineCov"> 7626 : const ptrdiff_t _Num = __last - __first;</span>
+<span class="lineNum"> 572 </span><span class="lineCov"> 7626 : __builtin_memmove(__result - _Num, __first, sizeof(_Tp) * _Num);</span>
+<span class="lineNum"> 573 </span><span class="lineCov"> 7626 : return __result - _Num;</span>
+<span class="lineNum"> 574 </span> : }
+<span class="lineNum"> 575 </span> : };
+<span class="lineNum"> 576 </span> :
+<span class="lineNum"> 577 </span> : template&lt;bool _IsMove, typename _BI1, typename _BI2&gt;
+<span class="lineNum"> 578 </span> : inline _BI2
+<span class="lineNum"> 579 </span><span class="lineCov"> 7776 : __copy_move_backward_a(_BI1 __first, _BI1 __last, _BI2 __result)</span>
+<span class="lineNum"> 580 </span> : {
+<span class="lineNum"> 581 </span> : typedef typename iterator_traits&lt;_BI1&gt;::value_type _ValueType1;
+<span class="lineNum"> 582 </span> : typedef typename iterator_traits&lt;_BI2&gt;::value_type _ValueType2;
+<span class="lineNum"> 583 </span> : typedef typename iterator_traits&lt;_BI1&gt;::iterator_category _Category;
+<span class="lineNum"> 584 </span> : const bool __simple = (__is_pod(_ValueType1)
+<span class="lineNum"> 585 </span> : &amp;&amp; __is_pointer&lt;_BI1&gt;::__value
+<span class="lineNum"> 586 </span> : &amp;&amp; __is_pointer&lt;_BI2&gt;::__value
+<span class="lineNum"> 587 </span><span class="lineCov"> 7776 : &amp;&amp; __are_same&lt;_ValueType1, _ValueType2&gt;::__value);</span>
+<span class="lineNum"> 588 </span> :
+<span class="lineNum"> 589 </span> : return std::__copy_move_backward&lt;_IsMove, __simple,
+<span class="lineNum"> 590 </span> : _Category&gt;::__copy_move_b(__first,
+<span class="lineNum"> 591 </span> : __last,
+<span class="lineNum"> 592 </span><span class="lineCov"> 7776 : __result);</span>
+<span class="lineNum"> 593 </span> : }
+<span class="lineNum"> 594 </span> :
+<span class="lineNum"> 595 </span> : template&lt;bool _IsMove, typename _BI1, typename _BI2&gt;
+<span class="lineNum"> 596 </span> : inline _BI2
+<span class="lineNum"> 597 </span><span class="lineCov"> 7776 : __copy_move_backward_a2(_BI1 __first, _BI1 __last, _BI2 __result)</span>
+<span class="lineNum"> 598 </span> : {
+<span class="lineNum"> 599 </span> : return _BI2(std::__copy_move_backward_a&lt;_IsMove&gt;
+<span class="lineNum"> 600 </span> : (std::__niter_base&lt;_BI1&gt;::__b(__first),
+<span class="lineNum"> 601 </span> : std::__niter_base&lt;_BI1&gt;::__b(__last),
+<span class="lineNum"> 602 </span><span class="lineCov"> 7776 : std::__niter_base&lt;_BI2&gt;::__b(__result)));</span>
+<span class="lineNum"> 603 </span> : }
+<span class="lineNum"> 604 </span> :
+<span class="lineNum"> 605 </span> : /**
+<span class="lineNum"> 606 </span> : * @brief Copies the range [first,last) into result.
+<span class="lineNum"> 607 </span> : * @param first A bidirectional iterator.
+<span class="lineNum"> 608 </span> : * @param last A bidirectional iterator.
+<span class="lineNum"> 609 </span> : * @param result A bidirectional iterator.
+<span class="lineNum"> 610 </span> : * @return result - (first - last)
+<span class="lineNum"> 611 </span> : *
+<span class="lineNum"> 612 </span> : * The function has the same effect as copy, but starts at the end of the
+<span class="lineNum"> 613 </span> : * range and works its way to the start, returning the start of the result.
+<span class="lineNum"> 614 </span> : * This inline function will boil down to a call to @c memmove whenever
+<span class="lineNum"> 615 </span> : * possible. Failing that, if random access iterators are passed, then the
+<span class="lineNum"> 616 </span> : * loop count will be known (and therefore a candidate for compiler
+<span class="lineNum"> 617 </span> : * optimizations such as unrolling).
+<span class="lineNum"> 618 </span> : *
+<span class="lineNum"> 619 </span> : * Result may not be in the range [first,last). Use copy instead. Note
+<span class="lineNum"> 620 </span> : * that the start of the output range may overlap [first,last).
+<span class="lineNum"> 621 </span> : */
+<span class="lineNum"> 622 </span> : template&lt;typename _BI1, typename _BI2&gt;
+<span class="lineNum"> 623 </span> : inline _BI2
+<span class="lineNum"> 624 </span><span class="lineCov"> 7776 : copy_backward(_BI1 __first, _BI1 __last, _BI2 __result)</span>
+<span class="lineNum"> 625 </span> : {
+<span class="lineNum"> 626 </span> : // concept requirements
+<span class="lineNum"> 627 </span> : __glibcxx_function_requires(_BidirectionalIteratorConcept&lt;_BI1&gt;)
+<span class="lineNum"> 628 </span> : __glibcxx_function_requires(_Mutable_BidirectionalIteratorConcept&lt;_BI2&gt;)
+<span class="lineNum"> 629 </span> : __glibcxx_function_requires(_ConvertibleConcept&lt;
+<span class="lineNum"> 630 </span> : typename iterator_traits&lt;_BI1&gt;::value_type,
+<span class="lineNum"> 631 </span> : typename iterator_traits&lt;_BI2&gt;::value_type&gt;)
+<span class="lineNum"> 632 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 633 </span> :
+<span class="lineNum"> 634 </span> : return (std::__copy_move_backward_a2&lt;__is_move_iterator&lt;_BI1&gt;::__value&gt;
+<span class="lineNum"> 635 </span> : (std::__miter_base&lt;_BI1&gt;::__b(__first),
+<span class="lineNum"> 636 </span><span class="lineCov"> 7776 : std::__miter_base&lt;_BI1&gt;::__b(__last), __result));</span>
+<span class="lineNum"> 637 </span> : }
+<span class="lineNum"> 638 </span> :
+<span class="lineNum"> 639 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 640 </span> : /**
+<span class="lineNum"> 641 </span> : * @brief Moves the range [first,last) into result.
+<span class="lineNum"> 642 </span> : * @param first A bidirectional iterator.
+<span class="lineNum"> 643 </span> : * @param last A bidirectional iterator.
+<span class="lineNum"> 644 </span> : * @param result A bidirectional iterator.
+<span class="lineNum"> 645 </span> : * @return result - (first - last)
+<span class="lineNum"> 646 </span> : *
+<span class="lineNum"> 647 </span> : * The function has the same effect as move, but starts at the end of the
+<span class="lineNum"> 648 </span> : * range and works its way to the start, returning the start of the result.
+<span class="lineNum"> 649 </span> : * This inline function will boil down to a call to @c memmove whenever
+<span class="lineNum"> 650 </span> : * possible. Failing that, if random access iterators are passed, then the
+<span class="lineNum"> 651 </span> : * loop count will be known (and therefore a candidate for compiler
+<span class="lineNum"> 652 </span> : * optimizations such as unrolling).
+<span class="lineNum"> 653 </span> : *
+<span class="lineNum"> 654 </span> : * Result may not be in the range [first,last). Use move instead. Note
+<span class="lineNum"> 655 </span> : * that the start of the output range may overlap [first,last).
+<span class="lineNum"> 656 </span> : */
+<span class="lineNum"> 657 </span> : template&lt;typename _BI1, typename _BI2&gt;
+<span class="lineNum"> 658 </span> : inline _BI2
+<span class="lineNum"> 659 </span> : move_backward(_BI1 __first, _BI1 __last, _BI2 __result)
+<span class="lineNum"> 660 </span> : {
+<span class="lineNum"> 661 </span> : // concept requirements
+<span class="lineNum"> 662 </span> : __glibcxx_function_requires(_BidirectionalIteratorConcept&lt;_BI1&gt;)
+<span class="lineNum"> 663 </span> : __glibcxx_function_requires(_Mutable_BidirectionalIteratorConcept&lt;_BI2&gt;)
+<span class="lineNum"> 664 </span> : __glibcxx_function_requires(_ConvertibleConcept&lt;
+<span class="lineNum"> 665 </span> : typename iterator_traits&lt;_BI1&gt;::value_type,
+<span class="lineNum"> 666 </span> : typename iterator_traits&lt;_BI2&gt;::value_type&gt;)
+<span class="lineNum"> 667 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 668 </span> :
+<span class="lineNum"> 669 </span> : return (std::__copy_move_backward_a2&lt;true&gt;
+<span class="lineNum"> 670 </span> : (std::__miter_base&lt;_BI1&gt;::__b(__first),
+<span class="lineNum"> 671 </span> : std::__miter_base&lt;_BI1&gt;::__b(__last), __result));
+<span class="lineNum"> 672 </span> : }
+<span class="lineNum"> 673 </span> :
+<span class="lineNum"> 674 </span> : #define _GLIBCXX_MOVE_BACKWARD3(_Tp, _Up, _Vp) std::move_backward(_Tp, _Up, _Vp)
+<span class="lineNum"> 675 </span> : #else
+<span class="lineNum"> 676 </span> : #define _GLIBCXX_MOVE_BACKWARD3(_Tp, _Up, _Vp) std::copy_backward(_Tp, _Up, _Vp)
+<span class="lineNum"> 677 </span> : #endif
+<span class="lineNum"> 678 </span> :
+<span class="lineNum"> 679 </span> : template&lt;typename _ForwardIterator, typename _Tp&gt;
+<span class="lineNum"> 680 </span> : inline typename
+<span class="lineNum"> 681 </span> : __gnu_cxx::__enable_if&lt;!__is_scalar&lt;_Tp&gt;::__value, void&gt;::__type
+<span class="lineNum"> 682 </span> : __fill_a(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 683 </span><span class="lineCov"> 22386 : const _Tp&amp; __value)</span>
+<span class="lineNum"> 684 </span> : {
+<span class="lineNum"> 685 </span><span class="lineCov"> 22386 : for (; __first != __last; ++__first)</span>
+<span class="lineNum"> 686 </span><span class="lineNoCov"> 0 : *__first = __value;</span>
+<span class="lineNum"> 687 </span><span class="lineCov"> 22386 : }</span>
+<span class="lineNum"> 688 </span> :
+<span class="lineNum"> 689 </span> : template&lt;typename _ForwardIterator, typename _Tp&gt;
+<span class="lineNum"> 690 </span> : inline typename
+<span class="lineNum"> 691 </span> : __gnu_cxx::__enable_if&lt;__is_scalar&lt;_Tp&gt;::__value, void&gt;::__type
+<span class="lineNum"> 692 </span> : __fill_a(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 693 </span> : const _Tp&amp; __value)
+<span class="lineNum"> 694 </span> : {
+<span class="lineNum"> 695 </span> : const _Tp __tmp = __value;
+<span class="lineNum"> 696 </span> : for (; __first != __last; ++__first)
+<span class="lineNum"> 697 </span> : *__first = __tmp;
+<span class="lineNum"> 698 </span> : }
+<span class="lineNum"> 699 </span> :
+<span class="lineNum"> 700 </span> : // Specialization: for char types we can use memset.
+<span class="lineNum"> 701 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 702 </span> : inline typename
+<span class="lineNum"> 703 </span> : __gnu_cxx::__enable_if&lt;__is_byte&lt;_Tp&gt;::__value, void&gt;::__type
+<span class="lineNum"> 704 </span> : __fill_a(_Tp* __first, _Tp* __last, const _Tp&amp; __c)
+<span class="lineNum"> 705 </span> : {
+<span class="lineNum"> 706 </span> : const _Tp __tmp = __c;
+<span class="lineNum"> 707 </span> : __builtin_memset(__first, static_cast&lt;unsigned char&gt;(__tmp),
+<span class="lineNum"> 708 </span> : __last - __first);
+<span class="lineNum"> 709 </span> : }
+<span class="lineNum"> 710 </span> :
+<span class="lineNum"> 711 </span> : /**
+<span class="lineNum"> 712 </span> : * @brief Fills the range [first,last) with copies of value.
+<span class="lineNum"> 713 </span> : * @param first A forward iterator.
+<span class="lineNum"> 714 </span> : * @param last A forward iterator.
+<span class="lineNum"> 715 </span> : * @param value A reference-to-const of arbitrary type.
+<span class="lineNum"> 716 </span> : * @return Nothing.
+<span class="lineNum"> 717 </span> : *
+<span class="lineNum"> 718 </span> : * This function fills a range with copies of the same value. For char
+<span class="lineNum"> 719 </span> : * types filling contiguous areas of memory, this becomes an inline call
+<span class="lineNum"> 720 </span> : * to @c memset or @c wmemset.
+<span class="lineNum"> 721 </span> : */
+<span class="lineNum"> 722 </span> : template&lt;typename _ForwardIterator, typename _Tp&gt;
+<span class="lineNum"> 723 </span> : inline void
+<span class="lineNum"> 724 </span><span class="lineCov"> 22386 : fill(_ForwardIterator __first, _ForwardIterator __last, const _Tp&amp; __value)</span>
+<span class="lineNum"> 725 </span> : {
+<span class="lineNum"> 726 </span> : // concept requirements
+<span class="lineNum"> 727 </span> : __glibcxx_function_requires(_Mutable_ForwardIteratorConcept&lt;
+<span class="lineNum"> 728 </span> : _ForwardIterator&gt;)
+<span class="lineNum"> 729 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 730 </span> :
+<span class="lineNum"> 731 </span><span class="lineCov"> 22386 : std::__fill_a(std::__niter_base&lt;_ForwardIterator&gt;::__b(__first),</span>
+<span class="lineNum"> 732 </span> : std::__niter_base&lt;_ForwardIterator&gt;::__b(__last), __value);
+<span class="lineNum"> 733 </span><span class="lineCov"> 22386 : }</span>
+<span class="lineNum"> 734 </span> :
+<span class="lineNum"> 735 </span> : template&lt;typename _OutputIterator, typename _Size, typename _Tp&gt;
+<span class="lineNum"> 736 </span> : inline typename
+<span class="lineNum"> 737 </span> : __gnu_cxx::__enable_if&lt;!__is_scalar&lt;_Tp&gt;::__value, _OutputIterator&gt;::__type
+<span class="lineNum"> 738 </span> : __fill_n_a(_OutputIterator __first, _Size __n, const _Tp&amp; __value)
+<span class="lineNum"> 739 </span> : {
+<span class="lineNum"> 740 </span> : for (; __n &gt; 0; --__n, ++__first)
+<span class="lineNum"> 741 </span> : *__first = __value;
+<span class="lineNum"> 742 </span> : return __first;
+<span class="lineNum"> 743 </span> : }
+<span class="lineNum"> 744 </span> :
+<span class="lineNum"> 745 </span> : template&lt;typename _OutputIterator, typename _Size, typename _Tp&gt;
+<span class="lineNum"> 746 </span> : inline typename
+<span class="lineNum"> 747 </span> : __gnu_cxx::__enable_if&lt;__is_scalar&lt;_Tp&gt;::__value, _OutputIterator&gt;::__type
+<span class="lineNum"> 748 </span><span class="lineCov"> 9 : __fill_n_a(_OutputIterator __first, _Size __n, const _Tp&amp; __value)</span>
+<span class="lineNum"> 749 </span> : {
+<span class="lineNum"> 750 </span><span class="lineCov"> 9 : const _Tp __tmp = __value;</span>
+<span class="lineNum"> 751 </span><span class="lineCov"> 9 : for (; __n &gt; 0; --__n, ++__first)</span>
+<span class="lineNum"> 752 </span><span class="lineNoCov"> 0 : *__first = __tmp;</span>
+<span class="lineNum"> 753 </span><span class="lineCov"> 9 : return __first;</span>
+<span class="lineNum"> 754 </span> : }
+<span class="lineNum"> 755 </span> :
+<span class="lineNum"> 756 </span> : template&lt;typename _Size, typename _Tp&gt;
+<span class="lineNum"> 757 </span> : inline typename
+<span class="lineNum"> 758 </span> : __gnu_cxx::__enable_if&lt;__is_byte&lt;_Tp&gt;::__value, _Tp*&gt;::__type
+<span class="lineNum"> 759 </span> : __fill_n_a(_Tp* __first, _Size __n, const _Tp&amp; __c)
+<span class="lineNum"> 760 </span> : {
+<span class="lineNum"> 761 </span> : std::__fill_a(__first, __first + __n, __c);
+<span class="lineNum"> 762 </span> : return __first + __n;
+<span class="lineNum"> 763 </span> : }
+<span class="lineNum"> 764 </span> :
+<span class="lineNum"> 765 </span> : /**
+<span class="lineNum"> 766 </span> : * @brief Fills the range [first,first+n) with copies of value.
+<span class="lineNum"> 767 </span> : * @param first An output iterator.
+<span class="lineNum"> 768 </span> : * @param n The count of copies to perform.
+<span class="lineNum"> 769 </span> : * @param value A reference-to-const of arbitrary type.
+<span class="lineNum"> 770 </span> : * @return The iterator at first+n.
+<span class="lineNum"> 771 </span> : *
+<span class="lineNum"> 772 </span> : * This function fills a range with copies of the same value. For char
+<span class="lineNum"> 773 </span> : * types filling contiguous areas of memory, this becomes an inline call
+<span class="lineNum"> 774 </span> : * to @c memset or @ wmemset.
+<span class="lineNum"> 775 </span> : */
+<span class="lineNum"> 776 </span> : template&lt;typename _OI, typename _Size, typename _Tp&gt;
+<span class="lineNum"> 777 </span> : inline _OI
+<span class="lineNum"> 778 </span><span class="lineCov"> 9 : fill_n(_OI __first, _Size __n, const _Tp&amp; __value)</span>
+<span class="lineNum"> 779 </span> : {
+<span class="lineNum"> 780 </span> : // concept requirements
+<span class="lineNum"> 781 </span> : __glibcxx_function_requires(_OutputIteratorConcept&lt;_OI, _Tp&gt;)
+<span class="lineNum"> 782 </span> :
+<span class="lineNum"> 783 </span> : return _OI(std::__fill_n_a(std::__niter_base&lt;_OI&gt;::__b(__first),
+<span class="lineNum"> 784 </span><span class="lineCov"> 9 : __n, __value));</span>
+<span class="lineNum"> 785 </span> : }
+<span class="lineNum"> 786 </span> :
+<span class="lineNum"> 787 </span> : template&lt;bool _BoolType&gt;
+<span class="lineNum"> 788 </span> : struct __equal
+<span class="lineNum"> 789 </span> : {
+<span class="lineNum"> 790 </span> : template&lt;typename _II1, typename _II2&gt;
+<span class="lineNum"> 791 </span> : static bool
+<span class="lineNum"> 792 </span><span class="lineCov"> 4 : equal(_II1 __first1, _II1 __last1, _II2 __first2)</span>
+<span class="lineNum"> 793 </span> : {
+<span class="lineNum"> 794 </span><span class="lineCov"> 51 : for (; __first1 != __last1; ++__first1, ++__first2)</span>
+<span class="lineNum"> 795 </span><span class="lineCov"> 47 : if (!(*__first1 == *__first2))</span>
+<span class="lineNum"> 796 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 797 </span><span class="lineCov"> 4 : return true;</span>
+<span class="lineNum"> 798 </span> : }
+<span class="lineNum"> 799 </span> : };
+<span class="lineNum"> 800 </span> :
+<span class="lineNum"> 801 </span> : template&lt;&gt;
+<span class="lineNum"> 802 </span> : struct __equal&lt;true&gt;
+<span class="lineNum"> 803 </span> : {
+<span class="lineNum"> 804 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 805 </span> : static bool
+<span class="lineNum"> 806 </span> : equal(const _Tp* __first1, const _Tp* __last1, const _Tp* __first2)
+<span class="lineNum"> 807 </span> : {
+<span class="lineNum"> 808 </span> : return !__builtin_memcmp(__first1, __first2, sizeof(_Tp)
+<span class="lineNum"> 809 </span> : * (__last1 - __first1));
+<span class="lineNum"> 810 </span> : }
+<span class="lineNum"> 811 </span> : };
+<span class="lineNum"> 812 </span> :
+<span class="lineNum"> 813 </span> : template&lt;typename _II1, typename _II2&gt;
+<span class="lineNum"> 814 </span> : inline bool
+<span class="lineNum"> 815 </span><span class="lineCov"> 4 : __equal_aux(_II1 __first1, _II1 __last1, _II2 __first2)</span>
+<span class="lineNum"> 816 </span> : {
+<span class="lineNum"> 817 </span> : typedef typename iterator_traits&lt;_II1&gt;::value_type _ValueType1;
+<span class="lineNum"> 818 </span> : typedef typename iterator_traits&lt;_II2&gt;::value_type _ValueType2;
+<span class="lineNum"> 819 </span> : const bool __simple = (__is_integer&lt;_ValueType1&gt;::__value
+<span class="lineNum"> 820 </span> : &amp;&amp; __is_pointer&lt;_II1&gt;::__value
+<span class="lineNum"> 821 </span> : &amp;&amp; __is_pointer&lt;_II2&gt;::__value
+<span class="lineNum"> 822 </span><span class="lineCov"> 4 : &amp;&amp; __are_same&lt;_ValueType1, _ValueType2&gt;::__value);</span>
+<span class="lineNum"> 823 </span> :
+<span class="lineNum"> 824 </span><span class="lineCov"> 4 : return std::__equal&lt;__simple&gt;::equal(__first1, __last1, __first2);</span>
+<span class="lineNum"> 825 </span> : }
+<span class="lineNum"> 826 </span> :
+<span class="lineNum"> 827 </span> :
+<span class="lineNum"> 828 </span> : template&lt;typename, typename&gt;
+<span class="lineNum"> 829 </span> : struct __lc_rai
+<span class="lineNum"> 830 </span> : {
+<span class="lineNum"> 831 </span> : template&lt;typename _II1, typename _II2&gt;
+<span class="lineNum"> 832 </span> : static _II1
+<span class="lineNum"> 833 </span> : __newlast1(_II1, _II1 __last1, _II2, _II2)
+<span class="lineNum"> 834 </span> : { return __last1; }
+<span class="lineNum"> 835 </span> :
+<span class="lineNum"> 836 </span> : template&lt;typename _II&gt;
+<span class="lineNum"> 837 </span> : static bool
+<span class="lineNum"> 838 </span> : __cnd2(_II __first, _II __last)
+<span class="lineNum"> 839 </span> : { return __first != __last; }
+<span class="lineNum"> 840 </span> : };
+<span class="lineNum"> 841 </span> :
+<span class="lineNum"> 842 </span> : template&lt;&gt;
+<span class="lineNum"> 843 </span> : struct __lc_rai&lt;random_access_iterator_tag, random_access_iterator_tag&gt;
+<span class="lineNum"> 844 </span> : {
+<span class="lineNum"> 845 </span> : template&lt;typename _RAI1, typename _RAI2&gt;
+<span class="lineNum"> 846 </span> : static _RAI1
+<span class="lineNum"> 847 </span> : __newlast1(_RAI1 __first1, _RAI1 __last1,
+<span class="lineNum"> 848 </span> : _RAI2 __first2, _RAI2 __last2)
+<span class="lineNum"> 849 </span> : {
+<span class="lineNum"> 850 </span> : const typename iterator_traits&lt;_RAI1&gt;::difference_type
+<span class="lineNum"> 851 </span> : __diff1 = __last1 - __first1;
+<span class="lineNum"> 852 </span> : const typename iterator_traits&lt;_RAI2&gt;::difference_type
+<span class="lineNum"> 853 </span> : __diff2 = __last2 - __first2;
+<span class="lineNum"> 854 </span> : return __diff2 &lt; __diff1 ? __first1 + __diff2 : __last1;
+<span class="lineNum"> 855 </span> : }
+<span class="lineNum"> 856 </span> :
+<span class="lineNum"> 857 </span> : template&lt;typename _RAI&gt;
+<span class="lineNum"> 858 </span> : static bool
+<span class="lineNum"> 859 </span> : __cnd2(_RAI, _RAI)
+<span class="lineNum"> 860 </span> : { return true; }
+<span class="lineNum"> 861 </span> : };
+<span class="lineNum"> 862 </span> :
+<span class="lineNum"> 863 </span> : template&lt;bool _BoolType&gt;
+<span class="lineNum"> 864 </span> : struct __lexicographical_compare
+<span class="lineNum"> 865 </span> : {
+<span class="lineNum"> 866 </span> : template&lt;typename _II1, typename _II2&gt;
+<span class="lineNum"> 867 </span> : static bool __lc(_II1, _II1, _II2, _II2);
+<span class="lineNum"> 868 </span> : };
+<span class="lineNum"> 869 </span> :
+<span class="lineNum"> 870 </span> : template&lt;bool _BoolType&gt;
+<span class="lineNum"> 871 </span> : template&lt;typename _II1, typename _II2&gt;
+<span class="lineNum"> 872 </span> : bool
+<span class="lineNum"> 873 </span> : __lexicographical_compare&lt;_BoolType&gt;::
+<span class="lineNum"> 874 </span> : __lc(_II1 __first1, _II1 __last1, _II2 __first2, _II2 __last2)
+<span class="lineNum"> 875 </span> : {
+<span class="lineNum"> 876 </span> : typedef typename iterator_traits&lt;_II1&gt;::iterator_category _Category1;
+<span class="lineNum"> 877 </span> : typedef typename iterator_traits&lt;_II2&gt;::iterator_category _Category2;
+<span class="lineNum"> 878 </span> : typedef std::__lc_rai&lt;_Category1, _Category2&gt; __rai_type;
+<span class="lineNum"> 879 </span> :
+<span class="lineNum"> 880 </span> : __last1 = __rai_type::__newlast1(__first1, __last1,
+<span class="lineNum"> 881 </span> : __first2, __last2);
+<span class="lineNum"> 882 </span> : for (; __first1 != __last1 &amp;&amp; __rai_type::__cnd2(__first2, __last2);
+<span class="lineNum"> 883 </span> : ++__first1, ++__first2)
+<span class="lineNum"> 884 </span> : {
+<span class="lineNum"> 885 </span> : if (*__first1 &lt; *__first2)
+<span class="lineNum"> 886 </span> : return true;
+<span class="lineNum"> 887 </span> : if (*__first2 &lt; *__first1)
+<span class="lineNum"> 888 </span> : return false;
+<span class="lineNum"> 889 </span> : }
+<span class="lineNum"> 890 </span> : return __first1 == __last1 &amp;&amp; __first2 != __last2;
+<span class="lineNum"> 891 </span> : }
+<span class="lineNum"> 892 </span> :
+<span class="lineNum"> 893 </span> : template&lt;&gt;
+<span class="lineNum"> 894 </span> : struct __lexicographical_compare&lt;true&gt;
+<span class="lineNum"> 895 </span> : {
+<span class="lineNum"> 896 </span> : template&lt;typename _Tp, typename _Up&gt;
+<span class="lineNum"> 897 </span> : static bool
+<span class="lineNum"> 898 </span> : __lc(const _Tp* __first1, const _Tp* __last1,
+<span class="lineNum"> 899 </span> : const _Up* __first2, const _Up* __last2)
+<span class="lineNum"> 900 </span> : {
+<span class="lineNum"> 901 </span> : const size_t __len1 = __last1 - __first1;
+<span class="lineNum"> 902 </span> : const size_t __len2 = __last2 - __first2;
+<span class="lineNum"> 903 </span> : const int __result = __builtin_memcmp(__first1, __first2,
+<span class="lineNum"> 904 </span> : std::min(__len1, __len2));
+<span class="lineNum"> 905 </span> : return __result != 0 ? __result &lt; 0 : __len1 &lt; __len2;
+<span class="lineNum"> 906 </span> : }
+<span class="lineNum"> 907 </span> : };
+<span class="lineNum"> 908 </span> :
+<span class="lineNum"> 909 </span> : template&lt;typename _II1, typename _II2&gt;
+<span class="lineNum"> 910 </span> : inline bool
+<span class="lineNum"> 911 </span> : __lexicographical_compare_aux(_II1 __first1, _II1 __last1,
+<span class="lineNum"> 912 </span> : _II2 __first2, _II2 __last2)
+<span class="lineNum"> 913 </span> : {
+<span class="lineNum"> 914 </span> : typedef typename iterator_traits&lt;_II1&gt;::value_type _ValueType1;
+<span class="lineNum"> 915 </span> : typedef typename iterator_traits&lt;_II2&gt;::value_type _ValueType2;
+<span class="lineNum"> 916 </span> : const bool __simple =
+<span class="lineNum"> 917 </span> : (__is_byte&lt;_ValueType1&gt;::__value &amp;&amp; __is_byte&lt;_ValueType2&gt;::__value
+<span class="lineNum"> 918 </span> : &amp;&amp; !__gnu_cxx::__numeric_traits&lt;_ValueType1&gt;::__is_signed
+<span class="lineNum"> 919 </span> : &amp;&amp; !__gnu_cxx::__numeric_traits&lt;_ValueType2&gt;::__is_signed
+<span class="lineNum"> 920 </span> : &amp;&amp; __is_pointer&lt;_II1&gt;::__value
+<span class="lineNum"> 921 </span> : &amp;&amp; __is_pointer&lt;_II2&gt;::__value);
+<span class="lineNum"> 922 </span> :
+<span class="lineNum"> 923 </span> : return std::__lexicographical_compare&lt;__simple&gt;::__lc(__first1, __last1,
+<span class="lineNum"> 924 </span> : __first2, __last2);
+<span class="lineNum"> 925 </span> : }
+<span class="lineNum"> 926 </span> :
+<span class="lineNum"> 927 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 928 </span> :
+<span class="lineNum"> 929 </span> : _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_P)
+<span class="lineNum"> 930 </span> :
+<span class="lineNum"> 931 </span> : /**
+<span class="lineNum"> 932 </span> : * @brief Tests a range for element-wise equality.
+<span class="lineNum"> 933 </span> : * @param first1 An input iterator.
+<span class="lineNum"> 934 </span> : * @param last1 An input iterator.
+<span class="lineNum"> 935 </span> : * @param first2 An input iterator.
+<span class="lineNum"> 936 </span> : * @return A boolean true or false.
+<span class="lineNum"> 937 </span> : *
+<span class="lineNum"> 938 </span> : * This compares the elements of two ranges using @c == and returns true or
+<span class="lineNum"> 939 </span> : * false depending on whether all of the corresponding elements of the
+<span class="lineNum"> 940 </span> : * ranges are equal.
+<span class="lineNum"> 941 </span> : */
+<span class="lineNum"> 942 </span> : template&lt;typename _II1, typename _II2&gt;
+<span class="lineNum"> 943 </span> : inline bool
+<span class="lineNum"> 944 </span><span class="lineCov"> 4 : equal(_II1 __first1, _II1 __last1, _II2 __first2)</span>
+<span class="lineNum"> 945 </span> : {
+<span class="lineNum"> 946 </span> : // concept requirements
+<span class="lineNum"> 947 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_II1&gt;)
+<span class="lineNum"> 948 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_II2&gt;)
+<span class="lineNum"> 949 </span> : __glibcxx_function_requires(_EqualOpConcept&lt;
+<span class="lineNum"> 950 </span> : typename iterator_traits&lt;_II1&gt;::value_type,
+<span class="lineNum"> 951 </span> : typename iterator_traits&lt;_II2&gt;::value_type&gt;)
+<span class="lineNum"> 952 </span> : __glibcxx_requires_valid_range(__first1, __last1);
+<span class="lineNum"> 953 </span> :
+<span class="lineNum"> 954 </span> : return std::__equal_aux(std::__niter_base&lt;_II1&gt;::__b(__first1),
+<span class="lineNum"> 955 </span> : std::__niter_base&lt;_II1&gt;::__b(__last1),
+<span class="lineNum"> 956 </span><span class="lineCov"> 4 : std::__niter_base&lt;_II2&gt;::__b(__first2));</span>
+<span class="lineNum"> 957 </span> : }
+<span class="lineNum"> 958 </span> :
+<span class="lineNum"> 959 </span> : /**
+<span class="lineNum"> 960 </span> : * @brief Tests a range for element-wise equality.
+<span class="lineNum"> 961 </span> : * @param first1 An input iterator.
+<span class="lineNum"> 962 </span> : * @param last1 An input iterator.
+<span class="lineNum"> 963 </span> : * @param first2 An input iterator.
+<span class="lineNum"> 964 </span> : * @param binary_pred A binary predicate @link s20_3_1_base
+<span class="lineNum"> 965 </span> : * functor@endlink.
+<span class="lineNum"> 966 </span> : * @return A boolean true or false.
+<span class="lineNum"> 967 </span> : *
+<span class="lineNum"> 968 </span> : * This compares the elements of two ranges using the binary_pred
+<span class="lineNum"> 969 </span> : * parameter, and returns true or
+<span class="lineNum"> 970 </span> : * false depending on whether all of the corresponding elements of the
+<span class="lineNum"> 971 </span> : * ranges are equal.
+<span class="lineNum"> 972 </span> : */
+<span class="lineNum"> 973 </span> : template&lt;typename _IIter1, typename _IIter2, typename _BinaryPredicate&gt;
+<span class="lineNum"> 974 </span> : inline bool
+<span class="lineNum"> 975 </span> : equal(_IIter1 __first1, _IIter1 __last1,
+<span class="lineNum"> 976 </span> : _IIter2 __first2, _BinaryPredicate __binary_pred)
+<span class="lineNum"> 977 </span> : {
+<span class="lineNum"> 978 </span> : // concept requirements
+<span class="lineNum"> 979 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_IIter1&gt;)
+<span class="lineNum"> 980 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_IIter2&gt;)
+<span class="lineNum"> 981 </span> : __glibcxx_requires_valid_range(__first1, __last1);
+<span class="lineNum"> 982 </span> :
+<span class="lineNum"> 983 </span> : for (; __first1 != __last1; ++__first1, ++__first2)
+<span class="lineNum"> 984 </span> : if (!bool(__binary_pred(*__first1, *__first2)))
+<span class="lineNum"> 985 </span> : return false;
+<span class="lineNum"> 986 </span> : return true;
+<span class="lineNum"> 987 </span> : }
+<span class="lineNum"> 988 </span> :
+<span class="lineNum"> 989 </span> : /**
+<span class="lineNum"> 990 </span> : * @brief Performs &quot;dictionary&quot; comparison on ranges.
+<span class="lineNum"> 991 </span> : * @param first1 An input iterator.
+<span class="lineNum"> 992 </span> : * @param last1 An input iterator.
+<span class="lineNum"> 993 </span> : * @param first2 An input iterator.
+<span class="lineNum"> 994 </span> : * @param last2 An input iterator.
+<span class="lineNum"> 995 </span> : * @return A boolean true or false.
+<span class="lineNum"> 996 </span> : *
+<span class="lineNum"> 997 </span> : * &quot;Returns true if the sequence of elements defined by the range
+<span class="lineNum"> 998 </span> : * [first1,last1) is lexicographically less than the sequence of elements
+<span class="lineNum"> 999 </span> : * defined by the range [first2,last2). Returns false otherwise.&quot;
+<span class="lineNum"> 1000 </span> : * (Quoted from [25.3.8]/1.) If the iterators are all character pointers,
+<span class="lineNum"> 1001 </span> : * then this is an inline call to @c memcmp.
+<span class="lineNum"> 1002 </span> : */
+<span class="lineNum"> 1003 </span> : template&lt;typename _II1, typename _II2&gt;
+<span class="lineNum"> 1004 </span> : inline bool
+<span class="lineNum"> 1005 </span> : lexicographical_compare(_II1 __first1, _II1 __last1,
+<span class="lineNum"> 1006 </span> : _II2 __first2, _II2 __last2)
+<span class="lineNum"> 1007 </span> : {
+<span class="lineNum"> 1008 </span> : // concept requirements
+<span class="lineNum"> 1009 </span> : typedef typename iterator_traits&lt;_II1&gt;::value_type _ValueType1;
+<span class="lineNum"> 1010 </span> : typedef typename iterator_traits&lt;_II2&gt;::value_type _ValueType2;
+<span class="lineNum"> 1011 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_II1&gt;)
+<span class="lineNum"> 1012 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_II2&gt;)
+<span class="lineNum"> 1013 </span> : __glibcxx_function_requires(_LessThanOpConcept&lt;_ValueType1, _ValueType2&gt;)
+<span class="lineNum"> 1014 </span> : __glibcxx_function_requires(_LessThanOpConcept&lt;_ValueType2, _ValueType1&gt;)
+<span class="lineNum"> 1015 </span> : __glibcxx_requires_valid_range(__first1, __last1);
+<span class="lineNum"> 1016 </span> : __glibcxx_requires_valid_range(__first2, __last2);
+<span class="lineNum"> 1017 </span> :
+<span class="lineNum"> 1018 </span> : return std::__lexicographical_compare_aux
+<span class="lineNum"> 1019 </span> : (std::__niter_base&lt;_II1&gt;::__b(__first1),
+<span class="lineNum"> 1020 </span> : std::__niter_base&lt;_II1&gt;::__b(__last1),
+<span class="lineNum"> 1021 </span> : std::__niter_base&lt;_II2&gt;::__b(__first2),
+<span class="lineNum"> 1022 </span> : std::__niter_base&lt;_II2&gt;::__b(__last2));
+<span class="lineNum"> 1023 </span> : }
+<span class="lineNum"> 1024 </span> :
+<span class="lineNum"> 1025 </span> : /**
+<span class="lineNum"> 1026 </span> : * @brief Performs &quot;dictionary&quot; comparison on ranges.
+<span class="lineNum"> 1027 </span> : * @param first1 An input iterator.
+<span class="lineNum"> 1028 </span> : * @param last1 An input iterator.
+<span class="lineNum"> 1029 </span> : * @param first2 An input iterator.
+<span class="lineNum"> 1030 </span> : * @param last2 An input iterator.
+<span class="lineNum"> 1031 </span> : * @param comp A @link s20_3_3_comparisons comparison functor@endlink.
+<span class="lineNum"> 1032 </span> : * @return A boolean true or false.
+<span class="lineNum"> 1033 </span> : *
+<span class="lineNum"> 1034 </span> : * The same as the four-parameter @c lexicographical_compare, but uses the
+<span class="lineNum"> 1035 </span> : * comp parameter instead of @c &lt;.
+<span class="lineNum"> 1036 </span> : */
+<span class="lineNum"> 1037 </span> : template&lt;typename _II1, typename _II2, typename _Compare&gt;
+<span class="lineNum"> 1038 </span> : bool
+<span class="lineNum"> 1039 </span> : lexicographical_compare(_II1 __first1, _II1 __last1,
+<span class="lineNum"> 1040 </span> : _II2 __first2, _II2 __last2, _Compare __comp)
+<span class="lineNum"> 1041 </span> : {
+<span class="lineNum"> 1042 </span> : typedef typename iterator_traits&lt;_II1&gt;::iterator_category _Category1;
+<span class="lineNum"> 1043 </span> : typedef typename iterator_traits&lt;_II2&gt;::iterator_category _Category2;
+<span class="lineNum"> 1044 </span> : typedef std::__lc_rai&lt;_Category1, _Category2&gt; __rai_type;
+<span class="lineNum"> 1045 </span> :
+<span class="lineNum"> 1046 </span> : // concept requirements
+<span class="lineNum"> 1047 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_II1&gt;)
+<span class="lineNum"> 1048 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_II2&gt;)
+<span class="lineNum"> 1049 </span> : __glibcxx_requires_valid_range(__first1, __last1);
+<span class="lineNum"> 1050 </span> : __glibcxx_requires_valid_range(__first2, __last2);
+<span class="lineNum"> 1051 </span> :
+<span class="lineNum"> 1052 </span> : __last1 = __rai_type::__newlast1(__first1, __last1, __first2, __last2);
+<span class="lineNum"> 1053 </span> : for (; __first1 != __last1 &amp;&amp; __rai_type::__cnd2(__first2, __last2);
+<span class="lineNum"> 1054 </span> : ++__first1, ++__first2)
+<span class="lineNum"> 1055 </span> : {
+<span class="lineNum"> 1056 </span> : if (__comp(*__first1, *__first2))
+<span class="lineNum"> 1057 </span> : return true;
+<span class="lineNum"> 1058 </span> : if (__comp(*__first2, *__first1))
+<span class="lineNum"> 1059 </span> : return false;
+<span class="lineNum"> 1060 </span> : }
+<span class="lineNum"> 1061 </span> : return __first1 == __last1 &amp;&amp; __first2 != __last2;
+<span class="lineNum"> 1062 </span> : }
+<span class="lineNum"> 1063 </span> :
+<span class="lineNum"> 1064 </span> : /**
+<span class="lineNum"> 1065 </span> : * @brief Finds the places in ranges which don't match.
+<span class="lineNum"> 1066 </span> : * @param first1 An input iterator.
+<span class="lineNum"> 1067 </span> : * @param last1 An input iterator.
+<span class="lineNum"> 1068 </span> : * @param first2 An input iterator.
+<span class="lineNum"> 1069 </span> : * @return A pair of iterators pointing to the first mismatch.
+<span class="lineNum"> 1070 </span> : *
+<span class="lineNum"> 1071 </span> : * This compares the elements of two ranges using @c == and returns a pair
+<span class="lineNum"> 1072 </span> : * of iterators. The first iterator points into the first range, the
+<span class="lineNum"> 1073 </span> : * second iterator points into the second range, and the elements pointed
+<span class="lineNum"> 1074 </span> : * to by the iterators are not equal.
+<span class="lineNum"> 1075 </span> : */
+<span class="lineNum"> 1076 </span> : template&lt;typename _InputIterator1, typename _InputIterator2&gt;
+<span class="lineNum"> 1077 </span> : pair&lt;_InputIterator1, _InputIterator2&gt;
+<span class="lineNum"> 1078 </span> : mismatch(_InputIterator1 __first1, _InputIterator1 __last1,
+<span class="lineNum"> 1079 </span> : _InputIterator2 __first2)
+<span class="lineNum"> 1080 </span> : {
+<span class="lineNum"> 1081 </span> : // concept requirements
+<span class="lineNum"> 1082 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator1&gt;)
+<span class="lineNum"> 1083 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator2&gt;)
+<span class="lineNum"> 1084 </span> : __glibcxx_function_requires(_EqualOpConcept&lt;
+<span class="lineNum"> 1085 </span> : typename iterator_traits&lt;_InputIterator1&gt;::value_type,
+<span class="lineNum"> 1086 </span> : typename iterator_traits&lt;_InputIterator2&gt;::value_type&gt;)
+<span class="lineNum"> 1087 </span> : __glibcxx_requires_valid_range(__first1, __last1);
+<span class="lineNum"> 1088 </span> :
+<span class="lineNum"> 1089 </span> : while (__first1 != __last1 &amp;&amp; *__first1 == *__first2)
+<span class="lineNum"> 1090 </span> : {
+<span class="lineNum"> 1091 </span> : ++__first1;
+<span class="lineNum"> 1092 </span> : ++__first2;
+<span class="lineNum"> 1093 </span> : }
+<span class="lineNum"> 1094 </span> : return pair&lt;_InputIterator1, _InputIterator2&gt;(__first1, __first2);
+<span class="lineNum"> 1095 </span> : }
+<span class="lineNum"> 1096 </span> :
+<span class="lineNum"> 1097 </span> : /**
+<span class="lineNum"> 1098 </span> : * @brief Finds the places in ranges which don't match.
+<span class="lineNum"> 1099 </span> : * @param first1 An input iterator.
+<span class="lineNum"> 1100 </span> : * @param last1 An input iterator.
+<span class="lineNum"> 1101 </span> : * @param first2 An input iterator.
+<span class="lineNum"> 1102 </span> : * @param binary_pred A binary predicate @link s20_3_1_base
+<span class="lineNum"> 1103 </span> : * functor@endlink.
+<span class="lineNum"> 1104 </span> : * @return A pair of iterators pointing to the first mismatch.
+<span class="lineNum"> 1105 </span> : *
+<span class="lineNum"> 1106 </span> : * This compares the elements of two ranges using the binary_pred
+<span class="lineNum"> 1107 </span> : * parameter, and returns a pair
+<span class="lineNum"> 1108 </span> : * of iterators. The first iterator points into the first range, the
+<span class="lineNum"> 1109 </span> : * second iterator points into the second range, and the elements pointed
+<span class="lineNum"> 1110 </span> : * to by the iterators are not equal.
+<span class="lineNum"> 1111 </span> : */
+<span class="lineNum"> 1112 </span> : template&lt;typename _InputIterator1, typename _InputIterator2,
+<span class="lineNum"> 1113 </span> : typename _BinaryPredicate&gt;
+<span class="lineNum"> 1114 </span> : pair&lt;_InputIterator1, _InputIterator2&gt;
+<span class="lineNum"> 1115 </span> : mismatch(_InputIterator1 __first1, _InputIterator1 __last1,
+<span class="lineNum"> 1116 </span> : _InputIterator2 __first2, _BinaryPredicate __binary_pred)
+<span class="lineNum"> 1117 </span> : {
+<span class="lineNum"> 1118 </span> : // concept requirements
+<span class="lineNum"> 1119 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator1&gt;)
+<span class="lineNum"> 1120 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator2&gt;)
+<span class="lineNum"> 1121 </span> : __glibcxx_requires_valid_range(__first1, __last1);
+<span class="lineNum"> 1122 </span> :
+<span class="lineNum"> 1123 </span> : while (__first1 != __last1 &amp;&amp; bool(__binary_pred(*__first1, *__first2)))
+<span class="lineNum"> 1124 </span> : {
+<span class="lineNum"> 1125 </span> : ++__first1;
+<span class="lineNum"> 1126 </span> : ++__first2;
+<span class="lineNum"> 1127 </span> : }
+<span class="lineNum"> 1128 </span> : return pair&lt;_InputIterator1, _InputIterator2&gt;(__first1, __first2);
+<span class="lineNum"> 1129 </span> : }
+<span class="lineNum"> 1130 </span> :
+<span class="lineNum"> 1131 </span> : _GLIBCXX_END_NESTED_NAMESPACE
+<span class="lineNum"> 1132 </span> :
+<span class="lineNum"> 1133 </span> : // NB: This file is included within many other C++ includes, as a way
+<span class="lineNum"> 1134 </span> : // of getting the base algorithms. So, make sure that parallel bits
+<span class="lineNum"> 1135 </span> : // come in too if requested.
+<span class="lineNum"> 1136 </span> : #ifdef _GLIBCXX_PARALLEL
+<span class="lineNum"> 1137 </span> : # include &lt;parallel/algobase.h&gt;
+<span class="lineNum"> 1138 </span> : #endif
+<span class="lineNum"> 1139 </span> :
+<span class="lineNum"> 1140 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/stl_bvector.h.gcov.html b/rep/usr/include/c++/4.3/bits/stl_bvector.h.gcov.html
new file mode 100644
index 0000000..3930b85
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/stl_bvector.h.gcov.html
@@ -0,0 +1,1069 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/stl_bvector.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - stl_bvector.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">115</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">70.4 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">81</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // vector&lt;bool&gt; specialization -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 18 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 19 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 20 </span> : // USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /*
+<span class="lineNum"> 32 </span> : *
+<span class="lineNum"> 33 </span> : * Copyright (c) 1994
+<span class="lineNum"> 34 </span> : * Hewlett-Packard Company
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 37 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 38 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 39 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 40 </span> : * in supporting documentation. Hewlett-Packard Company makes no
+<span class="lineNum"> 41 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 42 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 43 </span> : *
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * Copyright (c) 1996-1999
+<span class="lineNum"> 46 </span> : * Silicon Graphics Computer Systems, Inc.
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 49 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 50 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 51 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 52 </span> : * in supporting documentation. Silicon Graphics makes no
+<span class="lineNum"> 53 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 54 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 55 </span> : */
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /** @file stl_bvector.h
+<span class="lineNum"> 58 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 59 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 60 </span> : */
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : #ifndef _STL_BVECTOR_H
+<span class="lineNum"> 63 </span> : #define _STL_BVECTOR_H 1
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : typedef unsigned long _Bit_type;
+<span class="lineNum"> 68 </span> : enum { _S_word_bit = int(__CHAR_BIT__ * sizeof(_Bit_type)) };
+<span class="lineNum"> 69 </span> :
+<span class="lineNum"> 70 </span> : struct _Bit_reference
+<span class="lineNum"> 71 </span> : {
+<span class="lineNum"> 72 </span> : _Bit_type * _M_p;
+<span class="lineNum"> 73 </span> : _Bit_type _M_mask;
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span><span class="lineCov"> 5 : _Bit_reference(_Bit_type * __x, _Bit_type __y)</span>
+<span class="lineNum"> 76 </span><span class="lineCov"> 5 : : _M_p(__x), _M_mask(__y) { }</span>
+<span class="lineNum"> 77 </span> :
+<span class="lineNum"> 78 </span> : _Bit_reference() : _M_p(0), _M_mask(0) { }
+<span class="lineNum"> 79 </span> :
+<span class="lineNum"> 80 </span><span class="lineCov"> 3 : operator bool() const</span>
+<span class="lineNum"> 81 </span><span class="lineCov"> 3 : { return !!(*_M_p &amp; _M_mask); }</span>
+<span class="lineNum"> 82 </span> :
+<span class="lineNum"> 83 </span> : _Bit_reference&amp;
+<span class="lineNum"> 84 </span><span class="lineCov"> 2 : operator=(bool __x)</span>
+<span class="lineNum"> 85 </span> : {
+<span class="lineNum"> 86 </span><span class="lineCov"> 2 : if (__x)</span>
+<span class="lineNum"> 87 </span><span class="lineCov"> 1 : *_M_p |= _M_mask;</span>
+<span class="lineNum"> 88 </span> : else
+<span class="lineNum"> 89 </span><span class="lineCov"> 1 : *_M_p &amp;= ~_M_mask;</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 2 : return *this;</span>
+<span class="lineNum"> 91 </span> : }
+<span class="lineNum"> 92 </span> :
+<span class="lineNum"> 93 </span> : _Bit_reference&amp;
+<span class="lineNum"> 94 </span><span class="lineNoCov"> 0 : operator=(const _Bit_reference&amp; __x)</span>
+<span class="lineNum"> 95 </span><span class="lineNoCov"> 0 : { return *this = bool(__x); }</span>
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span> : bool
+<span class="lineNum"> 98 </span> : operator==(const _Bit_reference&amp; __x) const
+<span class="lineNum"> 99 </span> : { return bool(*this) == bool(__x); }
+<span class="lineNum"> 100 </span> :
+<span class="lineNum"> 101 </span> : bool
+<span class="lineNum"> 102 </span> : operator&lt;(const _Bit_reference&amp; __x) const
+<span class="lineNum"> 103 </span> : { return !bool(*this) &amp;&amp; bool(__x); }
+<span class="lineNum"> 104 </span> :
+<span class="lineNum"> 105 </span> : void
+<span class="lineNum"> 106 </span> : flip()
+<span class="lineNum"> 107 </span> : { *_M_p ^= _M_mask; }
+<span class="lineNum"> 108 </span> : };
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span> : struct _Bit_iterator_base
+<span class="lineNum"> 111 </span> : : public std::iterator&lt;std::random_access_iterator_tag, bool&gt;
+<span class="lineNum"> 112 </span> : {
+<span class="lineNum"> 113 </span> : _Bit_type * _M_p;
+<span class="lineNum"> 114 </span> : unsigned int _M_offset;
+<span class="lineNum"> 115 </span> :
+<span class="lineNum"> 116 </span><span class="lineCov"> 31 : _Bit_iterator_base(_Bit_type * __x, unsigned int __y)</span>
+<span class="lineNum"> 117 </span><span class="lineCov"> 31 : : _M_p(__x), _M_offset(__y) { }</span>
+<span class="lineNum"> 118 </span> :
+<span class="lineNum"> 119 </span> : void
+<span class="lineNum"> 120 </span><span class="lineCov"> 2 : _M_bump_up()</span>
+<span class="lineNum"> 121 </span> : {
+<span class="lineNum"> 122 </span><span class="lineCov"> 2 : if (_M_offset++ == int(_S_word_bit) - 1)</span>
+<span class="lineNum"> 123 </span> : {
+<span class="lineNum"> 124 </span><span class="lineNoCov"> 0 : _M_offset = 0;</span>
+<span class="lineNum"> 125 </span><span class="lineNoCov"> 0 : ++_M_p;</span>
+<span class="lineNum"> 126 </span> : }
+<span class="lineNum"> 127 </span><span class="lineCov"> 2 : }</span>
+<span class="lineNum"> 128 </span> :
+<span class="lineNum"> 129 </span> : void
+<span class="lineNum"> 130 </span><span class="lineNoCov"> 0 : _M_bump_down()</span>
+<span class="lineNum"> 131 </span> : {
+<span class="lineNum"> 132 </span><span class="lineNoCov"> 0 : if (_M_offset-- == 0)</span>
+<span class="lineNum"> 133 </span> : {
+<span class="lineNum"> 134 </span><span class="lineNoCov"> 0 : _M_offset = int(_S_word_bit) - 1;</span>
+<span class="lineNum"> 135 </span><span class="lineNoCov"> 0 : --_M_p;</span>
+<span class="lineNum"> 136 </span> : }
+<span class="lineNum"> 137 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> : void
+<span class="lineNum"> 140 </span><span class="lineNoCov"> 0 : _M_incr(ptrdiff_t __i)</span>
+<span class="lineNum"> 141 </span> : {
+<span class="lineNum"> 142 </span><span class="lineNoCov"> 0 : difference_type __n = __i + _M_offset;</span>
+<span class="lineNum"> 143 </span><span class="lineNoCov"> 0 : _M_p += __n / int(_S_word_bit);</span>
+<span class="lineNum"> 144 </span><span class="lineNoCov"> 0 : __n = __n % int(_S_word_bit);</span>
+<span class="lineNum"> 145 </span><span class="lineNoCov"> 0 : if (__n &lt; 0)</span>
+<span class="lineNum"> 146 </span> : {
+<span class="lineNum"> 147 </span><span class="lineNoCov"> 0 : __n += int(_S_word_bit);</span>
+<span class="lineNum"> 148 </span><span class="lineNoCov"> 0 : --_M_p;</span>
+<span class="lineNum"> 149 </span> : }
+<span class="lineNum"> 150 </span><span class="lineNoCov"> 0 : _M_offset = static_cast&lt;unsigned int&gt;(__n);</span>
+<span class="lineNum"> 151 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 152 </span> :
+<span class="lineNum"> 153 </span> : bool
+<span class="lineNum"> 154 </span><span class="lineCov"> 3 : operator==(const _Bit_iterator_base&amp; __i) const</span>
+<span class="lineNum"> 155 </span><span class="lineCov"> 3 : { return _M_p == __i._M_p &amp;&amp; _M_offset == __i._M_offset; }</span>
+<span class="lineNum"> 156 </span> :
+<span class="lineNum"> 157 </span> : bool
+<span class="lineNum"> 158 </span> : operator&lt;(const _Bit_iterator_base&amp; __i) const
+<span class="lineNum"> 159 </span> : {
+<span class="lineNum"> 160 </span> : return _M_p &lt; __i._M_p
+<span class="lineNum"> 161 </span> : || (_M_p == __i._M_p &amp;&amp; _M_offset &lt; __i._M_offset);
+<span class="lineNum"> 162 </span> : }
+<span class="lineNum"> 163 </span> :
+<span class="lineNum"> 164 </span> : bool
+<span class="lineNum"> 165 </span> : operator!=(const _Bit_iterator_base&amp; __i) const
+<span class="lineNum"> 166 </span> : { return !(*this == __i); }
+<span class="lineNum"> 167 </span> :
+<span class="lineNum"> 168 </span> : bool
+<span class="lineNum"> 169 </span> : operator&gt;(const _Bit_iterator_base&amp; __i) const
+<span class="lineNum"> 170 </span> : { return __i &lt; *this; }
+<span class="lineNum"> 171 </span> :
+<span class="lineNum"> 172 </span> : bool
+<span class="lineNum"> 173 </span> : operator&lt;=(const _Bit_iterator_base&amp; __i) const
+<span class="lineNum"> 174 </span> : { return !(__i &lt; *this); }
+<span class="lineNum"> 175 </span> :
+<span class="lineNum"> 176 </span> : bool
+<span class="lineNum"> 177 </span> : operator&gt;=(const _Bit_iterator_base&amp; __i) const
+<span class="lineNum"> 178 </span> : { return !(*this &lt; __i); }
+<span class="lineNum"> 179 </span> : };
+<span class="lineNum"> 180 </span> :
+<span class="lineNum"> 181 </span> : inline ptrdiff_t
+<span class="lineNum"> 182 </span><span class="lineCov"> 9 : operator-(const _Bit_iterator_base&amp; __x, const _Bit_iterator_base&amp; __y)</span>
+<span class="lineNum"> 183 </span> : {
+<span class="lineNum"> 184 </span> : return (int(_S_word_bit) * (__x._M_p - __y._M_p)
+<span class="lineNum"> 185 </span><span class="lineCov"> 9 : + __x._M_offset - __y._M_offset);</span>
+<span class="lineNum"> 186 </span> : }
+<span class="lineNum"> 187 </span> :
+<span class="lineNum"> 188 </span> : struct _Bit_iterator : public _Bit_iterator_base
+<span class="lineNum"> 189 </span> : {
+<span class="lineNum"> 190 </span> : typedef _Bit_reference reference;
+<span class="lineNum"> 191 </span> : typedef _Bit_reference* pointer;
+<span class="lineNum"> 192 </span> : typedef _Bit_iterator iterator;
+<span class="lineNum"> 193 </span> :
+<span class="lineNum"> 194 </span><span class="lineCov"> 2 : _Bit_iterator() : _Bit_iterator_base(0, 0) { }</span>
+<span class="lineNum"> 195 </span> :
+<span class="lineNum"> 196 </span><span class="lineCov"> 3 : _Bit_iterator(_Bit_type * __x, unsigned int __y)</span>
+<span class="lineNum"> 197 </span><span class="lineCov"> 3 : : _Bit_iterator_base(__x, __y) { }</span>
+<span class="lineNum"> 198 </span> :
+<span class="lineNum"> 199 </span> : reference
+<span class="lineNum"> 200 </span><span class="lineCov"> 2 : operator*() const</span>
+<span class="lineNum"> 201 </span><span class="lineCov"> 2 : { return reference(_M_p, 1UL &lt;&lt; _M_offset); }</span>
+<span class="lineNum"> 202 </span> :
+<span class="lineNum"> 203 </span> : iterator&amp;
+<span class="lineNum"> 204 </span><span class="lineNoCov"> 0 : operator++()</span>
+<span class="lineNum"> 205 </span> : {
+<span class="lineNum"> 206 </span><span class="lineNoCov"> 0 : _M_bump_up();</span>
+<span class="lineNum"> 207 </span><span class="lineNoCov"> 0 : return *this;</span>
+<span class="lineNum"> 208 </span> : }
+<span class="lineNum"> 209 </span> :
+<span class="lineNum"> 210 </span> : iterator
+<span class="lineNum"> 211 </span><span class="lineCov"> 2 : operator++(int)</span>
+<span class="lineNum"> 212 </span> : {
+<span class="lineNum"> 213 </span><span class="lineCov"> 2 : iterator __tmp = *this;</span>
+<span class="lineNum"> 214 </span><span class="lineCov"> 2 : _M_bump_up();</span>
+<span class="lineNum"> 215 </span> : return __tmp;
+<span class="lineNum"> 216 </span> : }
+<span class="lineNum"> 217 </span> :
+<span class="lineNum"> 218 </span> : iterator&amp;
+<span class="lineNum"> 219 </span><span class="lineNoCov"> 0 : operator--()</span>
+<span class="lineNum"> 220 </span> : {
+<span class="lineNum"> 221 </span><span class="lineNoCov"> 0 : _M_bump_down();</span>
+<span class="lineNum"> 222 </span><span class="lineNoCov"> 0 : return *this;</span>
+<span class="lineNum"> 223 </span> : }
+<span class="lineNum"> 224 </span> :
+<span class="lineNum"> 225 </span> : iterator
+<span class="lineNum"> 226 </span> : operator--(int)
+<span class="lineNum"> 227 </span> : {
+<span class="lineNum"> 228 </span> : iterator __tmp = *this;
+<span class="lineNum"> 229 </span> : _M_bump_down();
+<span class="lineNum"> 230 </span> : return __tmp;
+<span class="lineNum"> 231 </span> : }
+<span class="lineNum"> 232 </span> :
+<span class="lineNum"> 233 </span> : iterator&amp;
+<span class="lineNum"> 234 </span><span class="lineNoCov"> 0 : operator+=(difference_type __i)</span>
+<span class="lineNum"> 235 </span> : {
+<span class="lineNum"> 236 </span><span class="lineNoCov"> 0 : _M_incr(__i);</span>
+<span class="lineNum"> 237 </span><span class="lineNoCov"> 0 : return *this;</span>
+<span class="lineNum"> 238 </span> : }
+<span class="lineNum"> 239 </span> :
+<span class="lineNum"> 240 </span> : iterator&amp;
+<span class="lineNum"> 241 </span> : operator-=(difference_type __i)
+<span class="lineNum"> 242 </span> : {
+<span class="lineNum"> 243 </span> : *this += -__i;
+<span class="lineNum"> 244 </span> : return *this;
+<span class="lineNum"> 245 </span> : }
+<span class="lineNum"> 246 </span> :
+<span class="lineNum"> 247 </span> : iterator
+<span class="lineNum"> 248 </span><span class="lineNoCov"> 0 : operator+(difference_type __i) const</span>
+<span class="lineNum"> 249 </span> : {
+<span class="lineNum"> 250 </span><span class="lineNoCov"> 0 : iterator __tmp = *this;</span>
+<span class="lineNum"> 251 </span><span class="lineNoCov"> 0 : return __tmp += __i;</span>
+<span class="lineNum"> 252 </span> : }
+<span class="lineNum"> 253 </span> :
+<span class="lineNum"> 254 </span> : iterator
+<span class="lineNum"> 255 </span> : operator-(difference_type __i) const
+<span class="lineNum"> 256 </span> : {
+<span class="lineNum"> 257 </span> : iterator __tmp = *this;
+<span class="lineNum"> 258 </span> : return __tmp -= __i;
+<span class="lineNum"> 259 </span> : }
+<span class="lineNum"> 260 </span> :
+<span class="lineNum"> 261 </span> : reference
+<span class="lineNum"> 262 </span> : operator[](difference_type __i) const
+<span class="lineNum"> 263 </span> : { return *(*this + __i); }
+<span class="lineNum"> 264 </span> : };
+<span class="lineNum"> 265 </span> :
+<span class="lineNum"> 266 </span> : inline _Bit_iterator
+<span class="lineNum"> 267 </span> : operator+(ptrdiff_t __n, const _Bit_iterator&amp; __x)
+<span class="lineNum"> 268 </span> : { return __x + __n; }
+<span class="lineNum"> 269 </span> :
+<span class="lineNum"> 270 </span> : struct _Bit_const_iterator : public _Bit_iterator_base
+<span class="lineNum"> 271 </span> : {
+<span class="lineNum"> 272 </span> : typedef bool reference;
+<span class="lineNum"> 273 </span> : typedef bool const_reference;
+<span class="lineNum"> 274 </span> : typedef const bool* pointer;
+<span class="lineNum"> 275 </span> : typedef _Bit_const_iterator const_iterator;
+<span class="lineNum"> 276 </span> :
+<span class="lineNum"> 277 </span> : _Bit_const_iterator() : _Bit_iterator_base(0, 0) { }
+<span class="lineNum"> 278 </span> :
+<span class="lineNum"> 279 </span><span class="lineCov"> 4 : _Bit_const_iterator(_Bit_type * __x, unsigned int __y)</span>
+<span class="lineNum"> 280 </span><span class="lineCov"> 4 : : _Bit_iterator_base(__x, __y) { }</span>
+<span class="lineNum"> 281 </span> :
+<span class="lineNum"> 282 </span><span class="lineCov"> 22 : _Bit_const_iterator(const _Bit_iterator&amp; __x)</span>
+<span class="lineNum"> 283 </span><span class="lineCov"> 22 : : _Bit_iterator_base(__x._M_p, __x._M_offset) { }</span>
+<span class="lineNum"> 284 </span> :
+<span class="lineNum"> 285 </span> : const_reference
+<span class="lineNum"> 286 </span><span class="lineCov"> 3 : operator*() const</span>
+<span class="lineNum"> 287 </span><span class="lineCov"> 3 : { return _Bit_reference(_M_p, 1UL &lt;&lt; _M_offset); }</span>
+<span class="lineNum"> 288 </span> :
+<span class="lineNum"> 289 </span> : const_iterator&amp;
+<span class="lineNum"> 290 </span><span class="lineNoCov"> 0 : operator++()</span>
+<span class="lineNum"> 291 </span> : {
+<span class="lineNum"> 292 </span><span class="lineNoCov"> 0 : _M_bump_up();</span>
+<span class="lineNum"> 293 </span><span class="lineNoCov"> 0 : return *this;</span>
+<span class="lineNum"> 294 </span> : }
+<span class="lineNum"> 295 </span> :
+<span class="lineNum"> 296 </span> : const_iterator
+<span class="lineNum"> 297 </span> : operator++(int)
+<span class="lineNum"> 298 </span> : {
+<span class="lineNum"> 299 </span> : const_iterator __tmp = *this;
+<span class="lineNum"> 300 </span> : _M_bump_up();
+<span class="lineNum"> 301 </span> : return __tmp;
+<span class="lineNum"> 302 </span> : }
+<span class="lineNum"> 303 </span> :
+<span class="lineNum"> 304 </span> : const_iterator&amp;
+<span class="lineNum"> 305 </span> : operator--()
+<span class="lineNum"> 306 </span> : {
+<span class="lineNum"> 307 </span> : _M_bump_down();
+<span class="lineNum"> 308 </span> : return *this;
+<span class="lineNum"> 309 </span> : }
+<span class="lineNum"> 310 </span> :
+<span class="lineNum"> 311 </span> : const_iterator
+<span class="lineNum"> 312 </span> : operator--(int)
+<span class="lineNum"> 313 </span> : {
+<span class="lineNum"> 314 </span> : const_iterator __tmp = *this;
+<span class="lineNum"> 315 </span> : _M_bump_down();
+<span class="lineNum"> 316 </span> : return __tmp;
+<span class="lineNum"> 317 </span> : }
+<span class="lineNum"> 318 </span> :
+<span class="lineNum"> 319 </span> : const_iterator&amp;
+<span class="lineNum"> 320 </span> : operator+=(difference_type __i)
+<span class="lineNum"> 321 </span> : {
+<span class="lineNum"> 322 </span> : _M_incr(__i);
+<span class="lineNum"> 323 </span> : return *this;
+<span class="lineNum"> 324 </span> : }
+<span class="lineNum"> 325 </span> :
+<span class="lineNum"> 326 </span> : const_iterator&amp;
+<span class="lineNum"> 327 </span> : operator-=(difference_type __i)
+<span class="lineNum"> 328 </span> : {
+<span class="lineNum"> 329 </span> : *this += -__i;
+<span class="lineNum"> 330 </span> : return *this;
+<span class="lineNum"> 331 </span> : }
+<span class="lineNum"> 332 </span> :
+<span class="lineNum"> 333 </span> : const_iterator
+<span class="lineNum"> 334 </span> : operator+(difference_type __i) const
+<span class="lineNum"> 335 </span> : {
+<span class="lineNum"> 336 </span> : const_iterator __tmp = *this;
+<span class="lineNum"> 337 </span> : return __tmp += __i;
+<span class="lineNum"> 338 </span> : }
+<span class="lineNum"> 339 </span> :
+<span class="lineNum"> 340 </span> : const_iterator
+<span class="lineNum"> 341 </span> : operator-(difference_type __i) const
+<span class="lineNum"> 342 </span> : {
+<span class="lineNum"> 343 </span> : const_iterator __tmp = *this;
+<span class="lineNum"> 344 </span> : return __tmp -= __i;
+<span class="lineNum"> 345 </span> : }
+<span class="lineNum"> 346 </span> :
+<span class="lineNum"> 347 </span> : const_reference
+<span class="lineNum"> 348 </span> : operator[](difference_type __i) const
+<span class="lineNum"> 349 </span> : { return *(*this + __i); }
+<span class="lineNum"> 350 </span> : };
+<span class="lineNum"> 351 </span> :
+<span class="lineNum"> 352 </span> : inline _Bit_const_iterator
+<span class="lineNum"> 353 </span> : operator+(ptrdiff_t __n, const _Bit_const_iterator&amp; __x)
+<span class="lineNum"> 354 </span> : { return __x + __n; }
+<span class="lineNum"> 355 </span> :
+<span class="lineNum"> 356 </span> : inline void
+<span class="lineNum"> 357 </span> : __fill_bvector(_Bit_iterator __first, _Bit_iterator __last, bool __x)
+<span class="lineNum"> 358 </span> : {
+<span class="lineNum"> 359 </span> : for (; __first != __last; ++__first)
+<span class="lineNum"> 360 </span> : *__first = __x;
+<span class="lineNum"> 361 </span> : }
+<span class="lineNum"> 362 </span> :
+<span class="lineNum"> 363 </span> : inline void
+<span class="lineNum"> 364 </span> : fill(_Bit_iterator __first, _Bit_iterator __last, const bool&amp; __x)
+<span class="lineNum"> 365 </span> : {
+<span class="lineNum"> 366 </span> : if (__first._M_p != __last._M_p)
+<span class="lineNum"> 367 </span> : {
+<span class="lineNum"> 368 </span> : std::fill(__first._M_p + 1, __last._M_p, __x ? ~0 : 0);
+<span class="lineNum"> 369 </span> : __fill_bvector(__first, _Bit_iterator(__first._M_p + 1, 0), __x);
+<span class="lineNum"> 370 </span> : __fill_bvector(_Bit_iterator(__last._M_p, 0), __last, __x);
+<span class="lineNum"> 371 </span> : }
+<span class="lineNum"> 372 </span> : else
+<span class="lineNum"> 373 </span> : __fill_bvector(__first, __last, __x);
+<span class="lineNum"> 374 </span> : }
+<span class="lineNum"> 375 </span> :
+<span class="lineNum"> 376 </span> : template&lt;typename _Alloc&gt;
+<span class="lineNum"> 377 </span> : struct _Bvector_base
+<span class="lineNum"> 378 </span> : {
+<span class="lineNum"> 379 </span> : typedef typename _Alloc::template rebind&lt;_Bit_type&gt;::other
+<span class="lineNum"> 380 </span> : _Bit_alloc_type;
+<span class="lineNum"> 381 </span> :
+<span class="lineNum"> 382 </span> : struct _Bvector_impl
+<span class="lineNum"> 383 </span> : : public _Bit_alloc_type
+<span class="lineNum"> 384 </span><span class="lineCov"> 1 : {</span>
+<span class="lineNum"> 385 </span> : _Bit_iterator _M_start;
+<span class="lineNum"> 386 </span> : _Bit_iterator _M_finish;
+<span class="lineNum"> 387 </span> : _Bit_type* _M_end_of_storage;
+<span class="lineNum"> 388 </span> :
+<span class="lineNum"> 389 </span><span class="lineCov"> 1 : _Bvector_impl()</span>
+<span class="lineNum"> 390 </span><span class="lineCov"> 1 : : _Bit_alloc_type(), _M_start(), _M_finish(), _M_end_of_storage(0)</span>
+<span class="lineNum"> 391 </span><span class="lineCov"> 1 : { }</span>
+<span class="lineNum"> 392 </span> :
+<span class="lineNum"> 393 </span> : _Bvector_impl(const _Bit_alloc_type&amp; __a)
+<span class="lineNum"> 394 </span> : : _Bit_alloc_type(__a), _M_start(), _M_finish(), _M_end_of_storage(0)
+<span class="lineNum"> 395 </span> : { }
+<span class="lineNum"> 396 </span> : };
+<span class="lineNum"> 397 </span> :
+<span class="lineNum"> 398 </span> : public:
+<span class="lineNum"> 399 </span> : typedef _Alloc allocator_type;
+<span class="lineNum"> 400 </span> :
+<span class="lineNum"> 401 </span> : _Bit_alloc_type&amp;
+<span class="lineNum"> 402 </span> : _M_get_Bit_allocator()
+<span class="lineNum"> 403 </span> : { return *static_cast&lt;_Bit_alloc_type*&gt;(&amp;this-&gt;_M_impl); }
+<span class="lineNum"> 404 </span> :
+<span class="lineNum"> 405 </span> : const _Bit_alloc_type&amp;
+<span class="lineNum"> 406 </span><span class="lineCov"> 2 : _M_get_Bit_allocator() const</span>
+<span class="lineNum"> 407 </span><span class="lineCov"> 2 : { return *static_cast&lt;const _Bit_alloc_type*&gt;(&amp;this-&gt;_M_impl); }</span>
+<span class="lineNum"> 408 </span> :
+<span class="lineNum"> 409 </span> : allocator_type
+<span class="lineNum"> 410 </span> : get_allocator() const
+<span class="lineNum"> 411 </span> : { return allocator_type(_M_get_Bit_allocator()); }
+<span class="lineNum"> 412 </span> :
+<span class="lineNum"> 413 </span><span class="lineCov"> 1 : _Bvector_base()</span>
+<span class="lineNum"> 414 </span><span class="lineCov"> 1 : : _M_impl() { }</span>
+<span class="lineNum"> 415 </span> :
+<span class="lineNum"> 416 </span> : _Bvector_base(const allocator_type&amp; __a)
+<span class="lineNum"> 417 </span> : : _M_impl(__a) { }
+<span class="lineNum"> 418 </span> :
+<span class="lineNum"> 419 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 420 </span> : _Bvector_base(_Bvector_base&amp;&amp; __x)
+<span class="lineNum"> 421 </span> : : _M_impl(__x._M_get_Bit_allocator())
+<span class="lineNum"> 422 </span> : {
+<span class="lineNum"> 423 </span> : this-&gt;_M_impl._M_start = __x._M_impl._M_start;
+<span class="lineNum"> 424 </span> : this-&gt;_M_impl._M_finish = __x._M_impl._M_finish;
+<span class="lineNum"> 425 </span> : this-&gt;_M_impl._M_end_of_storage = __x._M_impl._M_end_of_storage;
+<span class="lineNum"> 426 </span> : __x._M_impl._M_start = _Bit_iterator();
+<span class="lineNum"> 427 </span> : __x._M_impl._M_finish = _Bit_iterator();
+<span class="lineNum"> 428 </span> : __x._M_impl._M_end_of_storage = 0;
+<span class="lineNum"> 429 </span> : }
+<span class="lineNum"> 430 </span> : #endif
+<span class="lineNum"> 431 </span> :
+<span class="lineNum"> 432 </span><span class="lineCov"> 1 : ~_Bvector_base()</span>
+<span class="lineNum"> 433 </span><span class="lineCov"> 1 : { this-&gt;_M_deallocate(); }</span>
+<span class="lineNum"> 434 </span> :
+<span class="lineNum"> 435 </span> : protected:
+<span class="lineNum"> 436 </span> : _Bvector_impl _M_impl;
+<span class="lineNum"> 437 </span> :
+<span class="lineNum"> 438 </span> : _Bit_type*
+<span class="lineNum"> 439 </span><span class="lineCov"> 1 : _M_allocate(size_t __n)</span>
+<span class="lineNum"> 440 </span> : { return _M_impl.allocate((__n + int(_S_word_bit) - 1)
+<span class="lineNum"> 441 </span><span class="lineCov"> 1 : / int(_S_word_bit)); }</span>
+<span class="lineNum"> 442 </span> :
+<span class="lineNum"> 443 </span> : void
+<span class="lineNum"> 444 </span><span class="lineCov"> 2 : _M_deallocate()</span>
+<span class="lineNum"> 445 </span> : {
+<span class="lineNum"> 446 </span><span class="lineCov"> 2 : if (_M_impl._M_start._M_p)</span>
+<span class="lineNum"> 447 </span><span class="lineCov"> 1 : _M_impl.deallocate(_M_impl._M_start._M_p,</span>
+<span class="lineNum"> 448 </span> : _M_impl._M_end_of_storage - _M_impl._M_start._M_p);
+<span class="lineNum"> 449 </span><span class="lineCov"> 2 : }</span>
+<span class="lineNum"> 450 </span> : };
+<span class="lineNum"> 451 </span> :
+<span class="lineNum"> 452 </span> : _GLIBCXX_END_NESTED_NAMESPACE
+<span class="lineNum"> 453 </span> :
+<span class="lineNum"> 454 </span> : // Declare a partial specialization of vector&lt;T, Alloc&gt;.
+<span class="lineNum"> 455 </span> : #include &lt;bits/stl_vector.h&gt;
+<span class="lineNum"> 456 </span> :
+<span class="lineNum"> 457 </span> : _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
+<span class="lineNum"> 458 </span> :
+<span class="lineNum"> 459 </span> : /**
+<span class="lineNum"> 460 </span> : * @brief A specialization of vector for booleans which offers fixed time
+<span class="lineNum"> 461 </span> : * access to individual elements in any order.
+<span class="lineNum"> 462 </span> : *
+<span class="lineNum"> 463 </span> : * Note that vector&lt;bool&gt; does not actually meet the requirements for being
+<span class="lineNum"> 464 </span> : * a container. This is because the reference and pointer types are not
+<span class="lineNum"> 465 </span> : * really references and pointers to bool. See DR96 for details. @see
+<span class="lineNum"> 466 </span> : * vector for function documentation.
+<span class="lineNum"> 467 </span> : *
+<span class="lineNum"> 468 </span> : * @ingroup Containers
+<span class="lineNum"> 469 </span> : * @ingroup Sequences
+<span class="lineNum"> 470 </span> : *
+<span class="lineNum"> 471 </span> : * In some terminology a %vector can be described as a dynamic
+<span class="lineNum"> 472 </span> : * C-style array, it offers fast and efficient access to individual
+<span class="lineNum"> 473 </span> : * elements in any order and saves the user from worrying about
+<span class="lineNum"> 474 </span> : * memory and size allocation. Subscripting ( @c [] ) access is
+<span class="lineNum"> 475 </span> : * also provided as with C-style arrays.
+<span class="lineNum"> 476 </span> : */
+<span class="lineNum"> 477 </span> : template&lt;typename _Alloc&gt;
+<span class="lineNum"> 478 </span> : class vector&lt;bool, _Alloc&gt; : protected _Bvector_base&lt;_Alloc&gt;
+<span class="lineNum"> 479 </span> : {
+<span class="lineNum"> 480 </span> : typedef _Bvector_base&lt;_Alloc&gt; _Base;
+<span class="lineNum"> 481 </span> :
+<span class="lineNum"> 482 </span> : public:
+<span class="lineNum"> 483 </span> : typedef bool value_type;
+<span class="lineNum"> 484 </span> : typedef size_t size_type;
+<span class="lineNum"> 485 </span> : typedef ptrdiff_t difference_type;
+<span class="lineNum"> 486 </span> : typedef _Bit_reference reference;
+<span class="lineNum"> 487 </span> : typedef bool const_reference;
+<span class="lineNum"> 488 </span> : typedef _Bit_reference* pointer;
+<span class="lineNum"> 489 </span> : typedef const bool* const_pointer;
+<span class="lineNum"> 490 </span> : typedef _Bit_iterator iterator;
+<span class="lineNum"> 491 </span> : typedef _Bit_const_iterator const_iterator;
+<span class="lineNum"> 492 </span> : typedef std::reverse_iterator&lt;const_iterator&gt; const_reverse_iterator;
+<span class="lineNum"> 493 </span> : typedef std::reverse_iterator&lt;iterator&gt; reverse_iterator;
+<span class="lineNum"> 494 </span> : typedef _Alloc allocator_type;
+<span class="lineNum"> 495 </span> :
+<span class="lineNum"> 496 </span> : allocator_type get_allocator() const
+<span class="lineNum"> 497 </span> : { return _Base::get_allocator(); }
+<span class="lineNum"> 498 </span> :
+<span class="lineNum"> 499 </span> : protected:
+<span class="lineNum"> 500 </span> : using _Base::_M_allocate;
+<span class="lineNum"> 501 </span> : using _Base::_M_deallocate;
+<span class="lineNum"> 502 </span> : using _Base::_M_get_Bit_allocator;
+<span class="lineNum"> 503 </span> :
+<span class="lineNum"> 504 </span> : public:
+<span class="lineNum"> 505 </span><span class="lineCov"> 1 : vector()</span>
+<span class="lineNum"> 506 </span><span class="lineCov"> 1 : : _Base() { }</span>
+<span class="lineNum"> 507 </span> :
+<span class="lineNum"> 508 </span> : explicit
+<span class="lineNum"> 509 </span> : vector(const allocator_type&amp; __a)
+<span class="lineNum"> 510 </span> : : _Base(__a) { }
+<span class="lineNum"> 511 </span> :
+<span class="lineNum"> 512 </span> : explicit
+<span class="lineNum"> 513 </span> : vector(size_type __n, const bool&amp; __value = bool(),
+<span class="lineNum"> 514 </span> : const allocator_type&amp; __a = allocator_type())
+<span class="lineNum"> 515 </span> : : _Base(__a)
+<span class="lineNum"> 516 </span> : {
+<span class="lineNum"> 517 </span> : _M_initialize(__n);
+<span class="lineNum"> 518 </span> : std::fill(this-&gt;_M_impl._M_start._M_p, this-&gt;_M_impl._M_end_of_storage,
+<span class="lineNum"> 519 </span> : __value ? ~0 : 0);
+<span class="lineNum"> 520 </span> : }
+<span class="lineNum"> 521 </span> :
+<span class="lineNum"> 522 </span> : vector(const vector&amp; __x)
+<span class="lineNum"> 523 </span> : : _Base(__x._M_get_Bit_allocator())
+<span class="lineNum"> 524 </span> : {
+<span class="lineNum"> 525 </span> : _M_initialize(__x.size());
+<span class="lineNum"> 526 </span> : _M_copy_aligned(__x.begin(), __x.end(), this-&gt;_M_impl._M_start);
+<span class="lineNum"> 527 </span> : }
+<span class="lineNum"> 528 </span> :
+<span class="lineNum"> 529 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 530 </span> : vector(vector&amp;&amp; __x)
+<span class="lineNum"> 531 </span> : : _Base(std::forward&lt;_Base&gt;(__x)) { }
+<span class="lineNum"> 532 </span> : #endif
+<span class="lineNum"> 533 </span> :
+<span class="lineNum"> 534 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 535 </span> : vector(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 536 </span> : const allocator_type&amp; __a = allocator_type())
+<span class="lineNum"> 537 </span> : : _Base(__a)
+<span class="lineNum"> 538 </span> : {
+<span class="lineNum"> 539 </span> : typedef typename std::__is_integer&lt;_InputIterator&gt;::__type _Integral;
+<span class="lineNum"> 540 </span> : _M_initialize_dispatch(__first, __last, _Integral());
+<span class="lineNum"> 541 </span> : }
+<span class="lineNum"> 542 </span> :
+<span class="lineNum"> 543 </span><span class="lineCov"> 1 : ~vector() { }</span>
+<span class="lineNum"> 544 </span> :
+<span class="lineNum"> 545 </span> : vector&amp;
+<span class="lineNum"> 546 </span> : operator=(const vector&amp; __x)
+<span class="lineNum"> 547 </span> : {
+<span class="lineNum"> 548 </span> : if (&amp;__x == this)
+<span class="lineNum"> 549 </span> : return *this;
+<span class="lineNum"> 550 </span> : if (__x.size() &gt; capacity())
+<span class="lineNum"> 551 </span> : {
+<span class="lineNum"> 552 </span> : this-&gt;_M_deallocate();
+<span class="lineNum"> 553 </span> : _M_initialize(__x.size());
+<span class="lineNum"> 554 </span> : }
+<span class="lineNum"> 555 </span> : this-&gt;_M_impl._M_finish = _M_copy_aligned(__x.begin(), __x.end(),
+<span class="lineNum"> 556 </span> : begin());
+<span class="lineNum"> 557 </span> : return *this;
+<span class="lineNum"> 558 </span> : }
+<span class="lineNum"> 559 </span> :
+<span class="lineNum"> 560 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 561 </span> : vector&amp;
+<span class="lineNum"> 562 </span> : operator=(vector&amp;&amp; __x)
+<span class="lineNum"> 563 </span> : {
+<span class="lineNum"> 564 </span> : // NB: DR 675.
+<span class="lineNum"> 565 </span> : this-&gt;clear();
+<span class="lineNum"> 566 </span> : this-&gt;swap(__x);
+<span class="lineNum"> 567 </span> : return *this;
+<span class="lineNum"> 568 </span> : }
+<span class="lineNum"> 569 </span> : #endif
+<span class="lineNum"> 570 </span> :
+<span class="lineNum"> 571 </span> : // assign(), a generalized assignment member function. Two
+<span class="lineNum"> 572 </span> : // versions: one that takes a count, and one that takes a range.
+<span class="lineNum"> 573 </span> : // The range version is a member template, so we dispatch on whether
+<span class="lineNum"> 574 </span> : // or not the type is an integer.
+<span class="lineNum"> 575 </span> : void
+<span class="lineNum"> 576 </span> : assign(size_type __n, const bool&amp; __x)
+<span class="lineNum"> 577 </span> : { _M_fill_assign(__n, __x); }
+<span class="lineNum"> 578 </span> :
+<span class="lineNum"> 579 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 580 </span> : void
+<span class="lineNum"> 581 </span> : assign(_InputIterator __first, _InputIterator __last)
+<span class="lineNum"> 582 </span> : {
+<span class="lineNum"> 583 </span> : typedef typename std::__is_integer&lt;_InputIterator&gt;::__type _Integral;
+<span class="lineNum"> 584 </span> : _M_assign_dispatch(__first, __last, _Integral());
+<span class="lineNum"> 585 </span> : }
+<span class="lineNum"> 586 </span> :
+<span class="lineNum"> 587 </span> : iterator
+<span class="lineNum"> 588 </span><span class="lineCov"> 1 : begin()</span>
+<span class="lineNum"> 589 </span><span class="lineCov"> 1 : { return this-&gt;_M_impl._M_start; }</span>
+<span class="lineNum"> 590 </span> :
+<span class="lineNum"> 591 </span> : const_iterator
+<span class="lineNum"> 592 </span><span class="lineCov"> 10 : begin() const</span>
+<span class="lineNum"> 593 </span><span class="lineCov"> 10 : { return this-&gt;_M_impl._M_start; }</span>
+<span class="lineNum"> 594 </span> :
+<span class="lineNum"> 595 </span> : iterator
+<span class="lineNum"> 596 </span><span class="lineCov"> 2 : end()</span>
+<span class="lineNum"> 597 </span><span class="lineCov"> 2 : { return this-&gt;_M_impl._M_finish; }</span>
+<span class="lineNum"> 598 </span> :
+<span class="lineNum"> 599 </span> : const_iterator
+<span class="lineNum"> 600 </span><span class="lineCov"> 10 : end() const</span>
+<span class="lineNum"> 601 </span><span class="lineCov"> 10 : { return this-&gt;_M_impl._M_finish; }</span>
+<span class="lineNum"> 602 </span> :
+<span class="lineNum"> 603 </span> : reverse_iterator
+<span class="lineNum"> 604 </span> : rbegin()
+<span class="lineNum"> 605 </span> : { return reverse_iterator(end()); }
+<span class="lineNum"> 606 </span> :
+<span class="lineNum"> 607 </span> : const_reverse_iterator
+<span class="lineNum"> 608 </span> : rbegin() const
+<span class="lineNum"> 609 </span> : { return const_reverse_iterator(end()); }
+<span class="lineNum"> 610 </span> :
+<span class="lineNum"> 611 </span> : reverse_iterator
+<span class="lineNum"> 612 </span> : rend()
+<span class="lineNum"> 613 </span> : { return reverse_iterator(begin()); }
+<span class="lineNum"> 614 </span> :
+<span class="lineNum"> 615 </span> : const_reverse_iterator
+<span class="lineNum"> 616 </span> : rend() const
+<span class="lineNum"> 617 </span> : { return const_reverse_iterator(begin()); }
+<span class="lineNum"> 618 </span> :
+<span class="lineNum"> 619 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 620 </span> : const_iterator
+<span class="lineNum"> 621 </span> : cbegin() const
+<span class="lineNum"> 622 </span> : { return this-&gt;_M_impl._M_start; }
+<span class="lineNum"> 623 </span> :
+<span class="lineNum"> 624 </span> : const_iterator
+<span class="lineNum"> 625 </span> : cend() const
+<span class="lineNum"> 626 </span> : { return this-&gt;_M_impl._M_finish; }
+<span class="lineNum"> 627 </span> :
+<span class="lineNum"> 628 </span> : const_reverse_iterator
+<span class="lineNum"> 629 </span> : crbegin() const
+<span class="lineNum"> 630 </span> : { return const_reverse_iterator(end()); }
+<span class="lineNum"> 631 </span> :
+<span class="lineNum"> 632 </span> : const_reverse_iterator
+<span class="lineNum"> 633 </span> : crend() const
+<span class="lineNum"> 634 </span> : { return const_reverse_iterator(begin()); }
+<span class="lineNum"> 635 </span> : #endif
+<span class="lineNum"> 636 </span> :
+<span class="lineNum"> 637 </span> : size_type
+<span class="lineNum"> 638 </span><span class="lineCov"> 7 : size() const</span>
+<span class="lineNum"> 639 </span><span class="lineCov"> 7 : { return size_type(end() - begin()); }</span>
+<span class="lineNum"> 640 </span> :
+<span class="lineNum"> 641 </span> : size_type
+<span class="lineNum"> 642 </span><span class="lineCov"> 2 : max_size() const</span>
+<span class="lineNum"> 643 </span> : {
+<span class="lineNum"> 644 </span> : const size_type __isize =
+<span class="lineNum"> 645 </span> : __gnu_cxx::__numeric_traits&lt;difference_type&gt;::__max
+<span class="lineNum"> 646 </span><span class="lineCov"> 2 : - int(_S_word_bit) + 1;</span>
+<span class="lineNum"> 647 </span><span class="lineCov"> 2 : const size_type __asize = _M_get_Bit_allocator().max_size();</span>
+<span class="lineNum"> 648 </span> : return (__asize &lt;= __isize / int(_S_word_bit)
+<span class="lineNum"> 649 </span><span class="lineCov"> 2 : ? __asize * int(_S_word_bit) : __isize);</span>
+<span class="lineNum"> 650 </span> : }
+<span class="lineNum"> 651 </span> :
+<span class="lineNum"> 652 </span> : size_type
+<span class="lineNum"> 653 </span> : capacity() const
+<span class="lineNum"> 654 </span> : { return size_type(const_iterator(this-&gt;_M_impl._M_end_of_storage, 0)
+<span class="lineNum"> 655 </span> : - begin()); }
+<span class="lineNum"> 656 </span> :
+<span class="lineNum"> 657 </span> : bool
+<span class="lineNum"> 658 </span><span class="lineCov"> 3 : empty() const</span>
+<span class="lineNum"> 659 </span><span class="lineCov"> 3 : { return begin() == end(); }</span>
+<span class="lineNum"> 660 </span> :
+<span class="lineNum"> 661 </span> : reference
+<span class="lineNum"> 662 </span> : operator[](size_type __n)
+<span class="lineNum"> 663 </span> : {
+<span class="lineNum"> 664 </span> : return *iterator(this-&gt;_M_impl._M_start._M_p
+<span class="lineNum"> 665 </span> : + __n / int(_S_word_bit), __n % int(_S_word_bit));
+<span class="lineNum"> 666 </span> : }
+<span class="lineNum"> 667 </span> :
+<span class="lineNum"> 668 </span> : const_reference
+<span class="lineNum"> 669 </span><span class="lineCov"> 3 : operator[](size_type __n) const</span>
+<span class="lineNum"> 670 </span> : {
+<span class="lineNum"> 671 </span> : return *const_iterator(this-&gt;_M_impl._M_start._M_p
+<span class="lineNum"> 672 </span><span class="lineCov"> 3 : + __n / int(_S_word_bit), __n % int(_S_word_bit));</span>
+<span class="lineNum"> 673 </span> : }
+<span class="lineNum"> 674 </span> :
+<span class="lineNum"> 675 </span> : protected:
+<span class="lineNum"> 676 </span> : void
+<span class="lineNum"> 677 </span> : _M_range_check(size_type __n) const
+<span class="lineNum"> 678 </span> : {
+<span class="lineNum"> 679 </span> : if (__n &gt;= this-&gt;size())
+<span class="lineNum"> 680 </span> : __throw_out_of_range(__N(&quot;vector&lt;bool&gt;::_M_range_check&quot;));
+<span class="lineNum"> 681 </span> : }
+<span class="lineNum"> 682 </span> :
+<span class="lineNum"> 683 </span> : public:
+<span class="lineNum"> 684 </span> : reference
+<span class="lineNum"> 685 </span> : at(size_type __n)
+<span class="lineNum"> 686 </span> : { _M_range_check(__n); return (*this)[__n]; }
+<span class="lineNum"> 687 </span> :
+<span class="lineNum"> 688 </span> : const_reference
+<span class="lineNum"> 689 </span> : at(size_type __n) const
+<span class="lineNum"> 690 </span> : { _M_range_check(__n); return (*this)[__n]; }
+<span class="lineNum"> 691 </span> :
+<span class="lineNum"> 692 </span> : void
+<span class="lineNum"> 693 </span> : reserve(size_type __n);
+<span class="lineNum"> 694 </span> :
+<span class="lineNum"> 695 </span> : reference
+<span class="lineNum"> 696 </span> : front()
+<span class="lineNum"> 697 </span> : { return *begin(); }
+<span class="lineNum"> 698 </span> :
+<span class="lineNum"> 699 </span> : const_reference
+<span class="lineNum"> 700 </span> : front() const
+<span class="lineNum"> 701 </span> : { return *begin(); }
+<span class="lineNum"> 702 </span> :
+<span class="lineNum"> 703 </span> : reference
+<span class="lineNum"> 704 </span> : back()
+<span class="lineNum"> 705 </span> : { return *(end() - 1); }
+<span class="lineNum"> 706 </span> :
+<span class="lineNum"> 707 </span> : const_reference
+<span class="lineNum"> 708 </span> : back() const
+<span class="lineNum"> 709 </span> : { return *(end() - 1); }
+<span class="lineNum"> 710 </span> :
+<span class="lineNum"> 711 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 712 </span> : // DR 464. Suggestion for new member functions in standard containers.
+<span class="lineNum"> 713 </span> : // N.B. DR 464 says nothing about vector&lt;bool&gt; but we need something
+<span class="lineNum"> 714 </span> : // here due to the way we are implementing DR 464 in the debug-mode
+<span class="lineNum"> 715 </span> : // vector class.
+<span class="lineNum"> 716 </span> : void
+<span class="lineNum"> 717 </span> : data() { }
+<span class="lineNum"> 718 </span> :
+<span class="lineNum"> 719 </span> : void
+<span class="lineNum"> 720 </span><span class="lineCov"> 2 : push_back(bool __x)</span>
+<span class="lineNum"> 721 </span> : {
+<span class="lineNum"> 722 </span><span class="lineCov"> 2 : if (this-&gt;_M_impl._M_finish._M_p != this-&gt;_M_impl._M_end_of_storage)</span>
+<span class="lineNum"> 723 </span><span class="lineCov"> 1 : *this-&gt;_M_impl._M_finish++ = __x;</span>
+<span class="lineNum"> 724 </span> : else
+<span class="lineNum"> 725 </span><span class="lineCov"> 1 : _M_insert_aux(end(), __x);</span>
+<span class="lineNum"> 726 </span><span class="lineCov"> 2 : }</span>
+<span class="lineNum"> 727 </span> :
+<span class="lineNum"> 728 </span> : void
+<span class="lineNum"> 729 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 730 </span> : swap(vector&amp;&amp; __x)
+<span class="lineNum"> 731 </span> : #else
+<span class="lineNum"> 732 </span> : swap(vector&amp; __x)
+<span class="lineNum"> 733 </span> : #endif
+<span class="lineNum"> 734 </span> : {
+<span class="lineNum"> 735 </span> : std::swap(this-&gt;_M_impl._M_start, __x._M_impl._M_start);
+<span class="lineNum"> 736 </span> : std::swap(this-&gt;_M_impl._M_finish, __x._M_impl._M_finish);
+<span class="lineNum"> 737 </span> : std::swap(this-&gt;_M_impl._M_end_of_storage,
+<span class="lineNum"> 738 </span> : __x._M_impl._M_end_of_storage);
+<span class="lineNum"> 739 </span> :
+<span class="lineNum"> 740 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 741 </span> : // 431. Swapping containers with unequal allocators.
+<span class="lineNum"> 742 </span> : std::__alloc_swap&lt;typename _Base::_Bit_alloc_type&gt;::
+<span class="lineNum"> 743 </span> : _S_do_it(_M_get_Bit_allocator(), __x._M_get_Bit_allocator());
+<span class="lineNum"> 744 </span> : }
+<span class="lineNum"> 745 </span> :
+<span class="lineNum"> 746 </span> : // [23.2.5]/1, third-to-last entry in synopsis listing
+<span class="lineNum"> 747 </span> : static void
+<span class="lineNum"> 748 </span> : swap(reference __x, reference __y)
+<span class="lineNum"> 749 </span> : {
+<span class="lineNum"> 750 </span> : bool __tmp = __x;
+<span class="lineNum"> 751 </span> : __x = __y;
+<span class="lineNum"> 752 </span> : __y = __tmp;
+<span class="lineNum"> 753 </span> : }
+<span class="lineNum"> 754 </span> :
+<span class="lineNum"> 755 </span> : iterator
+<span class="lineNum"> 756 </span> : insert(iterator __position, const bool&amp; __x = bool())
+<span class="lineNum"> 757 </span> : {
+<span class="lineNum"> 758 </span> : const difference_type __n = __position - begin();
+<span class="lineNum"> 759 </span> : if (this-&gt;_M_impl._M_finish._M_p != this-&gt;_M_impl._M_end_of_storage
+<span class="lineNum"> 760 </span> : &amp;&amp; __position == end())
+<span class="lineNum"> 761 </span> : *this-&gt;_M_impl._M_finish++ = __x;
+<span class="lineNum"> 762 </span> : else
+<span class="lineNum"> 763 </span> : _M_insert_aux(__position, __x);
+<span class="lineNum"> 764 </span> : return begin() + __n;
+<span class="lineNum"> 765 </span> : }
+<span class="lineNum"> 766 </span> :
+<span class="lineNum"> 767 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 768 </span> : void
+<span class="lineNum"> 769 </span> : insert(iterator __position,
+<span class="lineNum"> 770 </span> : _InputIterator __first, _InputIterator __last)
+<span class="lineNum"> 771 </span> : {
+<span class="lineNum"> 772 </span> : typedef typename std::__is_integer&lt;_InputIterator&gt;::__type _Integral;
+<span class="lineNum"> 773 </span> : _M_insert_dispatch(__position, __first, __last, _Integral());
+<span class="lineNum"> 774 </span> : }
+<span class="lineNum"> 775 </span> :
+<span class="lineNum"> 776 </span> : void
+<span class="lineNum"> 777 </span> : insert(iterator __position, size_type __n, const bool&amp; __x)
+<span class="lineNum"> 778 </span> : { _M_fill_insert(__position, __n, __x); }
+<span class="lineNum"> 779 </span> :
+<span class="lineNum"> 780 </span> : void
+<span class="lineNum"> 781 </span> : pop_back()
+<span class="lineNum"> 782 </span> : { --this-&gt;_M_impl._M_finish; }
+<span class="lineNum"> 783 </span> :
+<span class="lineNum"> 784 </span> : iterator
+<span class="lineNum"> 785 </span> : erase(iterator __position)
+<span class="lineNum"> 786 </span> : {
+<span class="lineNum"> 787 </span> : if (__position + 1 != end())
+<span class="lineNum"> 788 </span> : std::copy(__position + 1, end(), __position);
+<span class="lineNum"> 789 </span> : --this-&gt;_M_impl._M_finish;
+<span class="lineNum"> 790 </span> : return __position;
+<span class="lineNum"> 791 </span> : }
+<span class="lineNum"> 792 </span> :
+<span class="lineNum"> 793 </span> : iterator
+<span class="lineNum"> 794 </span> : erase(iterator __first, iterator __last)
+<span class="lineNum"> 795 </span> : {
+<span class="lineNum"> 796 </span> : _M_erase_at_end(std::copy(__last, end(), __first));
+<span class="lineNum"> 797 </span> : return __first;
+<span class="lineNum"> 798 </span> : }
+<span class="lineNum"> 799 </span> :
+<span class="lineNum"> 800 </span> : void
+<span class="lineNum"> 801 </span> : resize(size_type __new_size, bool __x = bool())
+<span class="lineNum"> 802 </span> : {
+<span class="lineNum"> 803 </span> : if (__new_size &lt; size())
+<span class="lineNum"> 804 </span> : _M_erase_at_end(begin() + difference_type(__new_size));
+<span class="lineNum"> 805 </span> : else
+<span class="lineNum"> 806 </span> : insert(end(), __new_size - size(), __x);
+<span class="lineNum"> 807 </span> : }
+<span class="lineNum"> 808 </span> :
+<span class="lineNum"> 809 </span> : void
+<span class="lineNum"> 810 </span> : flip()
+<span class="lineNum"> 811 </span> : {
+<span class="lineNum"> 812 </span> : for (_Bit_type * __p = this-&gt;_M_impl._M_start._M_p;
+<span class="lineNum"> 813 </span> : __p != this-&gt;_M_impl._M_end_of_storage; ++__p)
+<span class="lineNum"> 814 </span> : *__p = ~*__p;
+<span class="lineNum"> 815 </span> : }
+<span class="lineNum"> 816 </span> :
+<span class="lineNum"> 817 </span> : void
+<span class="lineNum"> 818 </span> : clear()
+<span class="lineNum"> 819 </span> : { _M_erase_at_end(begin()); }
+<span class="lineNum"> 820 </span> :
+<span class="lineNum"> 821 </span> :
+<span class="lineNum"> 822 </span> : protected:
+<span class="lineNum"> 823 </span> : // Precondition: __first._M_offset == 0 &amp;&amp; __result._M_offset == 0.
+<span class="lineNum"> 824 </span> : iterator
+<span class="lineNum"> 825 </span> : _M_copy_aligned(const_iterator __first, const_iterator __last,
+<span class="lineNum"> 826 </span><span class="lineCov"> 1 : iterator __result)</span>
+<span class="lineNum"> 827 </span> : {
+<span class="lineNum"> 828 </span><span class="lineCov"> 1 : _Bit_type* __q = std::copy(__first._M_p, __last._M_p, __result._M_p);</span>
+<span class="lineNum"> 829 </span> : return std::copy(const_iterator(__last._M_p, 0), __last,
+<span class="lineNum"> 830 </span><span class="lineCov"> 1 : iterator(__q, 0));</span>
+<span class="lineNum"> 831 </span> : }
+<span class="lineNum"> 832 </span> :
+<span class="lineNum"> 833 </span> : void
+<span class="lineNum"> 834 </span> : _M_initialize(size_type __n)
+<span class="lineNum"> 835 </span> : {
+<span class="lineNum"> 836 </span> : _Bit_type* __q = this-&gt;_M_allocate(__n);
+<span class="lineNum"> 837 </span> : this-&gt;_M_impl._M_end_of_storage = (__q
+<span class="lineNum"> 838 </span> : + ((__n + int(_S_word_bit) - 1)
+<span class="lineNum"> 839 </span> : / int(_S_word_bit)));
+<span class="lineNum"> 840 </span> : this-&gt;_M_impl._M_start = iterator(__q, 0);
+<span class="lineNum"> 841 </span> : this-&gt;_M_impl._M_finish = this-&gt;_M_impl._M_start + difference_type(__n);
+<span class="lineNum"> 842 </span> : }
+<span class="lineNum"> 843 </span> :
+<span class="lineNum"> 844 </span> : // Check whether it's an integral type. If so, it's not an iterator.
+<span class="lineNum"> 845 </span> :
+<span class="lineNum"> 846 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 847 </span> : // 438. Ambiguity in the &quot;do the right thing&quot; clause
+<span class="lineNum"> 848 </span> : template&lt;typename _Integer&gt;
+<span class="lineNum"> 849 </span> : void
+<span class="lineNum"> 850 </span> : _M_initialize_dispatch(_Integer __n, _Integer __x, __true_type)
+<span class="lineNum"> 851 </span> : {
+<span class="lineNum"> 852 </span> : _M_initialize(static_cast&lt;size_type&gt;(__n));
+<span class="lineNum"> 853 </span> : std::fill(this-&gt;_M_impl._M_start._M_p,
+<span class="lineNum"> 854 </span> : this-&gt;_M_impl._M_end_of_storage, __x ? ~0 : 0);
+<span class="lineNum"> 855 </span> : }
+<span class="lineNum"> 856 </span> :
+<span class="lineNum"> 857 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 858 </span> : void
+<span class="lineNum"> 859 </span> : _M_initialize_dispatch(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 860 </span> : __false_type)
+<span class="lineNum"> 861 </span> : { _M_initialize_range(__first, __last,
+<span class="lineNum"> 862 </span> : std::__iterator_category(__first)); }
+<span class="lineNum"> 863 </span> :
+<span class="lineNum"> 864 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 865 </span> : void
+<span class="lineNum"> 866 </span> : _M_initialize_range(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 867 </span> : std::input_iterator_tag)
+<span class="lineNum"> 868 </span> : {
+<span class="lineNum"> 869 </span> : for (; __first != __last; ++__first)
+<span class="lineNum"> 870 </span> : push_back(*__first);
+<span class="lineNum"> 871 </span> : }
+<span class="lineNum"> 872 </span> :
+<span class="lineNum"> 873 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 874 </span> : void
+<span class="lineNum"> 875 </span> : _M_initialize_range(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 876 </span> : std::forward_iterator_tag)
+<span class="lineNum"> 877 </span> : {
+<span class="lineNum"> 878 </span> : const size_type __n = std::distance(__first, __last);
+<span class="lineNum"> 879 </span> : _M_initialize(__n);
+<span class="lineNum"> 880 </span> : std::copy(__first, __last, this-&gt;_M_impl._M_start);
+<span class="lineNum"> 881 </span> : }
+<span class="lineNum"> 882 </span> :
+<span class="lineNum"> 883 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 884 </span> : // 438. Ambiguity in the &quot;do the right thing&quot; clause
+<span class="lineNum"> 885 </span> : template&lt;typename _Integer&gt;
+<span class="lineNum"> 886 </span> : void
+<span class="lineNum"> 887 </span> : _M_assign_dispatch(_Integer __n, _Integer __val, __true_type)
+<span class="lineNum"> 888 </span> : { _M_fill_assign(__n, __val); }
+<span class="lineNum"> 889 </span> :
+<span class="lineNum"> 890 </span> : template&lt;class _InputIterator&gt;
+<span class="lineNum"> 891 </span> : void
+<span class="lineNum"> 892 </span> : _M_assign_dispatch(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 893 </span> : __false_type)
+<span class="lineNum"> 894 </span> : { _M_assign_aux(__first, __last, std::__iterator_category(__first)); }
+<span class="lineNum"> 895 </span> :
+<span class="lineNum"> 896 </span> : void
+<span class="lineNum"> 897 </span> : _M_fill_assign(size_t __n, bool __x)
+<span class="lineNum"> 898 </span> : {
+<span class="lineNum"> 899 </span> : if (__n &gt; size())
+<span class="lineNum"> 900 </span> : {
+<span class="lineNum"> 901 </span> : std::fill(this-&gt;_M_impl._M_start._M_p,
+<span class="lineNum"> 902 </span> : this-&gt;_M_impl._M_end_of_storage, __x ? ~0 : 0);
+<span class="lineNum"> 903 </span> : insert(end(), __n - size(), __x);
+<span class="lineNum"> 904 </span> : }
+<span class="lineNum"> 905 </span> : else
+<span class="lineNum"> 906 </span> : {
+<span class="lineNum"> 907 </span> : _M_erase_at_end(begin() + __n);
+<span class="lineNum"> 908 </span> : std::fill(this-&gt;_M_impl._M_start._M_p,
+<span class="lineNum"> 909 </span> : this-&gt;_M_impl._M_end_of_storage, __x ? ~0 : 0);
+<span class="lineNum"> 910 </span> : }
+<span class="lineNum"> 911 </span> : }
+<span class="lineNum"> 912 </span> :
+<span class="lineNum"> 913 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 914 </span> : void
+<span class="lineNum"> 915 </span> : _M_assign_aux(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 916 </span> : std::input_iterator_tag)
+<span class="lineNum"> 917 </span> : {
+<span class="lineNum"> 918 </span> : iterator __cur = begin();
+<span class="lineNum"> 919 </span> : for (; __first != __last &amp;&amp; __cur != end(); ++__cur, ++__first)
+<span class="lineNum"> 920 </span> : *__cur = *__first;
+<span class="lineNum"> 921 </span> : if (__first == __last)
+<span class="lineNum"> 922 </span> : _M_erase_at_end(__cur);
+<span class="lineNum"> 923 </span> : else
+<span class="lineNum"> 924 </span> : insert(end(), __first, __last);
+<span class="lineNum"> 925 </span> : }
+<span class="lineNum"> 926 </span> :
+<span class="lineNum"> 927 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 928 </span> : void
+<span class="lineNum"> 929 </span> : _M_assign_aux(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 930 </span> : std::forward_iterator_tag)
+<span class="lineNum"> 931 </span> : {
+<span class="lineNum"> 932 </span> : const size_type __len = std::distance(__first, __last);
+<span class="lineNum"> 933 </span> : if (__len &lt; size())
+<span class="lineNum"> 934 </span> : _M_erase_at_end(std::copy(__first, __last, begin()));
+<span class="lineNum"> 935 </span> : else
+<span class="lineNum"> 936 </span> : {
+<span class="lineNum"> 937 </span> : _ForwardIterator __mid = __first;
+<span class="lineNum"> 938 </span> : std::advance(__mid, size());
+<span class="lineNum"> 939 </span> : std::copy(__first, __mid, begin());
+<span class="lineNum"> 940 </span> : insert(end(), __mid, __last);
+<span class="lineNum"> 941 </span> : }
+<span class="lineNum"> 942 </span> : }
+<span class="lineNum"> 943 </span> :
+<span class="lineNum"> 944 </span> : // Check whether it's an integral type. If so, it's not an iterator.
+<span class="lineNum"> 945 </span> :
+<span class="lineNum"> 946 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 947 </span> : // 438. Ambiguity in the &quot;do the right thing&quot; clause
+<span class="lineNum"> 948 </span> : template&lt;typename _Integer&gt;
+<span class="lineNum"> 949 </span> : void
+<span class="lineNum"> 950 </span> : _M_insert_dispatch(iterator __pos, _Integer __n, _Integer __x,
+<span class="lineNum"> 951 </span> : __true_type)
+<span class="lineNum"> 952 </span> : { _M_fill_insert(__pos, __n, __x); }
+<span class="lineNum"> 953 </span> :
+<span class="lineNum"> 954 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 955 </span> : void
+<span class="lineNum"> 956 </span> : _M_insert_dispatch(iterator __pos,
+<span class="lineNum"> 957 </span> : _InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 958 </span> : __false_type)
+<span class="lineNum"> 959 </span> : { _M_insert_range(__pos, __first, __last,
+<span class="lineNum"> 960 </span> : std::__iterator_category(__first)); }
+<span class="lineNum"> 961 </span> :
+<span class="lineNum"> 962 </span> : void
+<span class="lineNum"> 963 </span> : _M_fill_insert(iterator __position, size_type __n, bool __x);
+<span class="lineNum"> 964 </span> :
+<span class="lineNum"> 965 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 966 </span> : void
+<span class="lineNum"> 967 </span> : _M_insert_range(iterator __pos, _InputIterator __first,
+<span class="lineNum"> 968 </span> : _InputIterator __last, std::input_iterator_tag)
+<span class="lineNum"> 969 </span> : {
+<span class="lineNum"> 970 </span> : for (; __first != __last; ++__first)
+<span class="lineNum"> 971 </span> : {
+<span class="lineNum"> 972 </span> : __pos = insert(__pos, *__first);
+<span class="lineNum"> 973 </span> : ++__pos;
+<span class="lineNum"> 974 </span> : }
+<span class="lineNum"> 975 </span> : }
+<span class="lineNum"> 976 </span> :
+<span class="lineNum"> 977 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 978 </span> : void
+<span class="lineNum"> 979 </span> : _M_insert_range(iterator __position, _ForwardIterator __first,
+<span class="lineNum"> 980 </span> : _ForwardIterator __last, std::forward_iterator_tag);
+<span class="lineNum"> 981 </span> :
+<span class="lineNum"> 982 </span> : void
+<span class="lineNum"> 983 </span> : _M_insert_aux(iterator __position, bool __x);
+<span class="lineNum"> 984 </span> :
+<span class="lineNum"> 985 </span> : size_type
+<span class="lineNum"> 986 </span><span class="lineCov"> 1 : _M_check_len(size_type __n, const char* __s) const</span>
+<span class="lineNum"> 987 </span> : {
+<span class="lineNum"> 988 </span><span class="lineCov"> 1 : if (max_size() - size() &lt; __n)</span>
+<span class="lineNum"> 989 </span><span class="lineNoCov"> 0 : __throw_length_error(__N(__s));</span>
+<span class="lineNum"> 990 </span> :
+<span class="lineNum"> 991 </span><span class="lineCov"> 1 : const size_type __len = size() + std::max(size(), __n);</span>
+<span class="lineNum"> 992 </span><span class="lineCov"> 1 : return (__len &lt; size() || __len &gt; max_size()) ? max_size() : __len;</span>
+<span class="lineNum"> 993 </span> : }
+<span class="lineNum"> 994 </span> :
+<span class="lineNum"> 995 </span> : void
+<span class="lineNum"> 996 </span> : _M_erase_at_end(iterator __pos)
+<span class="lineNum"> 997 </span> : { this-&gt;_M_impl._M_finish = __pos; }
+<span class="lineNum"> 998 </span> : };
+<span class="lineNum"> 999 </span> :
+<span class="lineNum"> 1000 </span> : _GLIBCXX_END_NESTED_NAMESPACE
+<span class="lineNum"> 1001 </span> :
+<span class="lineNum"> 1002 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/stl_construct.h.gcov.html b/rep/usr/include/c++/4.3/bits/stl_construct.h.gcov.html
new file mode 100644
index 0000000..82847c7
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/stl_construct.h.gcov.html
@@ -0,0 +1,201 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/stl_construct.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - stl_construct.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">12</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">12</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // nonstandard construct and destroy functions -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 18 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 19 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 20 </span> : // USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /*
+<span class="lineNum"> 32 </span> : *
+<span class="lineNum"> 33 </span> : * Copyright (c) 1994
+<span class="lineNum"> 34 </span> : * Hewlett-Packard Company
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 37 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 38 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 39 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 40 </span> : * in supporting documentation. Hewlett-Packard Company makes no
+<span class="lineNum"> 41 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 42 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 43 </span> : *
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * Copyright (c) 1996,1997
+<span class="lineNum"> 46 </span> : * Silicon Graphics Computer Systems, Inc.
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 49 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 50 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 51 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 52 </span> : * in supporting documentation. Silicon Graphics makes no
+<span class="lineNum"> 53 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 54 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 55 </span> : */
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /** @file stl_construct.h
+<span class="lineNum"> 58 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 59 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 60 </span> : */
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : #ifndef _STL_CONSTRUCT_H
+<span class="lineNum"> 63 </span> : #define _STL_CONSTRUCT_H 1
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : #include &lt;new&gt;
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span> : /**
+<span class="lineNum"> 70 </span> : * Constructs an object in existing memory by invoking an allocated
+<span class="lineNum"> 71 </span> : * object's constructor with an initializer.
+<span class="lineNum"> 72 </span> : */
+<span class="lineNum"> 73 </span> : template&lt;typename _T1, typename _T2&gt;
+<span class="lineNum"> 74 </span> : inline void
+<span class="lineNum"> 75 </span><span class="lineCov"> 23695 : _Construct(_T1* __p, const _T2&amp; __value)</span>
+<span class="lineNum"> 76 </span> : {
+<span class="lineNum"> 77 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 78 </span> : // 402. wrong new expression in [some_]allocator::construct
+<span class="lineNum"> 79 </span><span class="lineCov"> 23695 : ::new(static_cast&lt;void*&gt;(__p)) _T1(__value);</span>
+<span class="lineNum"> 80 </span><span class="lineCov"> 23695 : }</span>
+<span class="lineNum"> 81 </span> :
+<span class="lineNum"> 82 </span> : /**
+<span class="lineNum"> 83 </span> : * Destroy the object pointed to by a pointer type.
+<span class="lineNum"> 84 </span> : */
+<span class="lineNum"> 85 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 86 </span> : inline void
+<span class="lineNum"> 87 </span><span class="lineCov"> 82748 : _Destroy(_Tp* __pointer)</span>
+<span class="lineNum"> 88 </span><span class="lineCov"> 82748 : { __pointer-&gt;~_Tp(); }</span>
+<span class="lineNum"> 89 </span> :
+<span class="lineNum"> 90 </span> : /**
+<span class="lineNum"> 91 </span> : * Destroy a range of objects. If the value_type of the object has
+<span class="lineNum"> 92 </span> : * a trivial destructor, the compiler should optimize all of this
+<span class="lineNum"> 93 </span> : * away, otherwise the objects' destructors must be invoked.
+<span class="lineNum"> 94 </span> : */
+<span class="lineNum"> 95 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 96 </span> : inline void
+<span class="lineNum"> 97 </span><span class="lineCov"> 33441 : _Destroy(_ForwardIterator __first, _ForwardIterator __last)</span>
+<span class="lineNum"> 98 </span> : {
+<span class="lineNum"> 99 </span> : typedef typename iterator_traits&lt;_ForwardIterator&gt;::value_type
+<span class="lineNum"> 100 </span> : _Value_type;
+<span class="lineNum"> 101 </span><span class="lineCov"> 91960 : if (!__has_trivial_destructor(_Value_type))</span>
+<span class="lineNum"> 102 </span> : for (; __first != __last; ++__first)
+<span class="lineNum"> 103 </span><span class="lineCov"> 82748 : std::_Destroy(&amp;*__first);</span>
+<span class="lineNum"> 104 </span><span class="lineCov"> 33441 : }</span>
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span> : /**
+<span class="lineNum"> 107 </span> : * Destroy a range of objects using the supplied allocator. For
+<span class="lineNum"> 108 </span> : * nondefault allocators we do not optimize away invocation of
+<span class="lineNum"> 109 </span> : * destroy() even if _Tp has a trivial destructor.
+<span class="lineNum"> 110 </span> : */
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span> : template &lt;typename _Tp&gt; class allocator;
+<span class="lineNum"> 113 </span> :
+<span class="lineNum"> 114 </span> : template&lt;typename _ForwardIterator, typename _Allocator&gt;
+<span class="lineNum"> 115 </span> : void
+<span class="lineNum"> 116 </span> : _Destroy(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 117 </span> : _Allocator&amp; __alloc)
+<span class="lineNum"> 118 </span> : {
+<span class="lineNum"> 119 </span> : for (; __first != __last; ++__first)
+<span class="lineNum"> 120 </span> : __alloc.destroy(&amp;*__first);
+<span class="lineNum"> 121 </span> : }
+<span class="lineNum"> 122 </span> :
+<span class="lineNum"> 123 </span> : template&lt;typename _ForwardIterator, typename _Tp&gt;
+<span class="lineNum"> 124 </span> : inline void
+<span class="lineNum"> 125 </span> : _Destroy(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 126 </span><span class="lineCov"> 33441 : allocator&lt;_Tp&gt;&amp;)</span>
+<span class="lineNum"> 127 </span> : {
+<span class="lineNum"> 128 </span><span class="lineCov"> 33441 : _Destroy(__first, __last);</span>
+<span class="lineNum"> 129 </span><span class="lineCov"> 33441 : }</span>
+<span class="lineNum"> 130 </span> :
+<span class="lineNum"> 131 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 132 </span> :
+<span class="lineNum"> 133 </span> : #endif /* _STL_CONSTRUCT_H */
+<span class="lineNum"> 134 </span> :
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/stl_deque.h.gcov.html b/rep/usr/include/c++/4.3/bits/stl_deque.h.gcov.html
new file mode 100644
index 0000000..6fe09f3
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/stl_deque.h.gcov.html
@@ -0,0 +1,1837 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/stl_deque.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - stl_deque.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">189</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">78.3 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">148</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Deque implementation -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 18 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 19 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 20 </span> : // USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /*
+<span class="lineNum"> 32 </span> : *
+<span class="lineNum"> 33 </span> : * Copyright (c) 1994
+<span class="lineNum"> 34 </span> : * Hewlett-Packard Company
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 37 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 38 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 39 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 40 </span> : * in supporting documentation. Hewlett-Packard Company makes no
+<span class="lineNum"> 41 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 42 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 43 </span> : *
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * Copyright (c) 1997
+<span class="lineNum"> 46 </span> : * Silicon Graphics Computer Systems, Inc.
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 49 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 50 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 51 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 52 </span> : * in supporting documentation. Silicon Graphics makes no
+<span class="lineNum"> 53 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 54 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 55 </span> : */
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /** @file stl_deque.h
+<span class="lineNum"> 58 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 59 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 60 </span> : */
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : #ifndef _STL_DEQUE_H
+<span class="lineNum"> 63 </span> : #define _STL_DEQUE_H 1
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : #include &lt;bits/concept_check.h&gt;
+<span class="lineNum"> 66 </span> : #include &lt;bits/stl_iterator_base_types.h&gt;
+<span class="lineNum"> 67 </span> : #include &lt;bits/stl_iterator_base_funcs.h&gt;
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span> : _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
+<span class="lineNum"> 70 </span> :
+<span class="lineNum"> 71 </span> : /**
+<span class="lineNum"> 72 </span> : * @brief This function controls the size of memory nodes.
+<span class="lineNum"> 73 </span> : * @param size The size of an element.
+<span class="lineNum"> 74 </span> : * @return The number (not byte size) of elements per node.
+<span class="lineNum"> 75 </span> : *
+<span class="lineNum"> 76 </span> : * This function started off as a compiler kludge from SGI, but seems to
+<span class="lineNum"> 77 </span> : * be a useful wrapper around a repeated constant expression. The '512' is
+<span class="lineNum"> 78 </span> : * tunable (and no other code needs to change), but no investigation has
+<span class="lineNum"> 79 </span> : * been done since inheriting the SGI code.
+<span class="lineNum"> 80 </span> : */
+<span class="lineNum"> 81 </span> : inline size_t
+<span class="lineNum"> 82 </span><span class="lineCov"> 7753 : __deque_buf_size(size_t __size)</span>
+<span class="lineNum"> 83 </span><span class="lineCov"> 7753 : { return __size &lt; 512 ? size_t(512 / __size) : size_t(1); }</span>
+<span class="lineNum"> 84 </span> :
+<span class="lineNum"> 85 </span> :
+<span class="lineNum"> 86 </span> : /**
+<span class="lineNum"> 87 </span> : * @brief A deque::iterator.
+<span class="lineNum"> 88 </span> : *
+<span class="lineNum"> 89 </span> : * Quite a bit of intelligence here. Much of the functionality of
+<span class="lineNum"> 90 </span> : * deque is actually passed off to this class. A deque holds two
+<span class="lineNum"> 91 </span> : * of these internally, marking its valid range. Access to
+<span class="lineNum"> 92 </span> : * elements is done as offsets of either of those two, relying on
+<span class="lineNum"> 93 </span> : * operator overloading in this class.
+<span class="lineNum"> 94 </span> : *
+<span class="lineNum"> 95 </span> : * All the functions are op overloads except for _M_set_node.
+<span class="lineNum"> 96 </span> : */
+<span class="lineNum"> 97 </span> : template&lt;typename _Tp, typename _Ref, typename _Ptr&gt;
+<span class="lineNum"> 98 </span> : struct _Deque_iterator
+<span class="lineNum"> 99 </span> : {
+<span class="lineNum"> 100 </span> : typedef _Deque_iterator&lt;_Tp, _Tp&amp;, _Tp*&gt; iterator;
+<span class="lineNum"> 101 </span> : typedef _Deque_iterator&lt;_Tp, const _Tp&amp;, const _Tp*&gt; const_iterator;
+<span class="lineNum"> 102 </span> :
+<span class="lineNum"> 103 </span><span class="lineCov"> 7595 : static size_t _S_buffer_size()</span>
+<span class="lineNum"> 104 </span><span class="lineCov"> 7595 : { return __deque_buf_size(sizeof(_Tp)); }</span>
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span> : typedef std::random_access_iterator_tag iterator_category;
+<span class="lineNum"> 107 </span> : typedef _Tp value_type;
+<span class="lineNum"> 108 </span> : typedef _Ptr pointer;
+<span class="lineNum"> 109 </span> : typedef _Ref reference;
+<span class="lineNum"> 110 </span> : typedef size_t size_type;
+<span class="lineNum"> 111 </span> : typedef ptrdiff_t difference_type;
+<span class="lineNum"> 112 </span> : typedef _Tp** _Map_pointer;
+<span class="lineNum"> 113 </span> : typedef _Deque_iterator _Self;
+<span class="lineNum"> 114 </span> :
+<span class="lineNum"> 115 </span> : _Tp* _M_cur;
+<span class="lineNum"> 116 </span> : _Tp* _M_first;
+<span class="lineNum"> 117 </span> : _Tp* _M_last;
+<span class="lineNum"> 118 </span> : _Map_pointer _M_node;
+<span class="lineNum"> 119 </span> :
+<span class="lineNum"> 120 </span> : _Deque_iterator(_Tp* __x, _Map_pointer __y)
+<span class="lineNum"> 121 </span> : : _M_cur(__x), _M_first(*__y),
+<span class="lineNum"> 122 </span> : _M_last(*__y + _S_buffer_size()), _M_node(__y) { }
+<span class="lineNum"> 123 </span> :
+<span class="lineNum"> 124 </span><span class="lineCov"> 68 : _Deque_iterator()</span>
+<span class="lineNum"> 125 </span><span class="lineCov"> 68 : : _M_cur(0), _M_first(0), _M_last(0), _M_node(0) { }</span>
+<span class="lineNum"> 126 </span> :
+<span class="lineNum"> 127 </span><span class="lineCov"> 45179 : _Deque_iterator(const iterator&amp; __x)</span>
+<span class="lineNum"> 128 </span> : : _M_cur(__x._M_cur), _M_first(__x._M_first),
+<span class="lineNum"> 129 </span><span class="lineCov"> 45179 : _M_last(__x._M_last), _M_node(__x._M_node) { }</span>
+<span class="lineNum"> 130 </span> :
+<span class="lineNum"> 131 </span> : reference
+<span class="lineNum"> 132 </span><span class="lineCov"> 24883 : operator*() const</span>
+<span class="lineNum"> 133 </span><span class="lineCov"> 24883 : { return *_M_cur; }</span>
+<span class="lineNum"> 134 </span> :
+<span class="lineNum"> 135 </span> : pointer
+<span class="lineNum"> 136 </span> : operator-&gt;() const
+<span class="lineNum"> 137 </span> : { return _M_cur; }
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> : _Self&amp;
+<span class="lineNum"> 140 </span><span class="lineCov"> 24754 : operator++()</span>
+<span class="lineNum"> 141 </span> : {
+<span class="lineNum"> 142 </span><span class="lineCov"> 24754 : ++_M_cur;</span>
+<span class="lineNum"> 143 </span><span class="lineCov"> 24754 : if (_M_cur == _M_last)</span>
+<span class="lineNum"> 144 </span> : {
+<span class="lineNum"> 145 </span><span class="lineCov"> 29 : _M_set_node(_M_node + 1);</span>
+<span class="lineNum"> 146 </span><span class="lineCov"> 29 : _M_cur = _M_first;</span>
+<span class="lineNum"> 147 </span> : }
+<span class="lineNum"> 148 </span><span class="lineCov"> 24754 : return *this;</span>
+<span class="lineNum"> 149 </span> : }
+<span class="lineNum"> 150 </span> :
+<span class="lineNum"> 151 </span> : _Self
+<span class="lineNum"> 152 </span> : operator++(int)
+<span class="lineNum"> 153 </span> : {
+<span class="lineNum"> 154 </span> : _Self __tmp = *this;
+<span class="lineNum"> 155 </span> : ++*this;
+<span class="lineNum"> 156 </span> : return __tmp;
+<span class="lineNum"> 157 </span> : }
+<span class="lineNum"> 158 </span> :
+<span class="lineNum"> 159 </span> : _Self&amp;
+<span class="lineNum"> 160 </span><span class="lineCov"> 39 : operator--()</span>
+<span class="lineNum"> 161 </span> : {
+<span class="lineNum"> 162 </span><span class="lineCov"> 39 : if (_M_cur == _M_first)</span>
+<span class="lineNum"> 163 </span> : {
+<span class="lineNum"> 164 </span><span class="lineNoCov"> 0 : _M_set_node(_M_node - 1);</span>
+<span class="lineNum"> 165 </span><span class="lineNoCov"> 0 : _M_cur = _M_last;</span>
+<span class="lineNum"> 166 </span> : }
+<span class="lineNum"> 167 </span><span class="lineCov"> 39 : --_M_cur;</span>
+<span class="lineNum"> 168 </span><span class="lineCov"> 39 : return *this;</span>
+<span class="lineNum"> 169 </span> : }
+<span class="lineNum"> 170 </span> :
+<span class="lineNum"> 171 </span> : _Self
+<span class="lineNum"> 172 </span> : operator--(int)
+<span class="lineNum"> 173 </span> : {
+<span class="lineNum"> 174 </span> : _Self __tmp = *this;
+<span class="lineNum"> 175 </span> : --*this;
+<span class="lineNum"> 176 </span> : return __tmp;
+<span class="lineNum"> 177 </span> : }
+<span class="lineNum"> 178 </span> :
+<span class="lineNum"> 179 </span> : _Self&amp;
+<span class="lineNum"> 180 </span><span class="lineCov"> 180 : operator+=(difference_type __n)</span>
+<span class="lineNum"> 181 </span> : {
+<span class="lineNum"> 182 </span><span class="lineCov"> 180 : const difference_type __offset = __n + (_M_cur - _M_first);</span>
+<span class="lineNum"> 183 </span><span class="lineCov"> 180 : if (__offset &gt;= 0 &amp;&amp; __offset &lt; difference_type(_S_buffer_size()))</span>
+<span class="lineNum"> 184 </span><span class="lineCov"> 178 : _M_cur += __n;</span>
+<span class="lineNum"> 185 </span> : else
+<span class="lineNum"> 186 </span> : {
+<span class="lineNum"> 187 </span> : const difference_type __node_offset =
+<span class="lineNum"> 188 </span> : __offset &gt; 0 ? __offset / difference_type(_S_buffer_size())
+<span class="lineNum"> 189 </span> : : -difference_type((-__offset - 1)
+<span class="lineNum"> 190 </span><span class="lineCov"> 2 : / _S_buffer_size()) - 1;</span>
+<span class="lineNum"> 191 </span><span class="lineCov"> 2 : _M_set_node(_M_node + __node_offset);</span>
+<span class="lineNum"> 192 </span><span class="lineCov"> 2 : _M_cur = _M_first + (__offset - __node_offset</span>
+<span class="lineNum"> 193 </span> : * difference_type(_S_buffer_size()));
+<span class="lineNum"> 194 </span> : }
+<span class="lineNum"> 195 </span><span class="lineCov"> 180 : return *this;</span>
+<span class="lineNum"> 196 </span> : }
+<span class="lineNum"> 197 </span> :
+<span class="lineNum"> 198 </span> : _Self
+<span class="lineNum"> 199 </span><span class="lineCov"> 180 : operator+(difference_type __n) const</span>
+<span class="lineNum"> 200 </span> : {
+<span class="lineNum"> 201 </span><span class="lineCov"> 180 : _Self __tmp = *this;</span>
+<span class="lineNum"> 202 </span><span class="lineCov"> 180 : return __tmp += __n;</span>
+<span class="lineNum"> 203 </span> : }
+<span class="lineNum"> 204 </span> :
+<span class="lineNum"> 205 </span> : _Self&amp;
+<span class="lineNum"> 206 </span><span class="lineNoCov"> 0 : operator-=(difference_type __n)</span>
+<span class="lineNum"> 207 </span><span class="lineNoCov"> 0 : { return *this += -__n; }</span>
+<span class="lineNum"> 208 </span> :
+<span class="lineNum"> 209 </span> : _Self
+<span class="lineNum"> 210 </span><span class="lineNoCov"> 0 : operator-(difference_type __n) const</span>
+<span class="lineNum"> 211 </span> : {
+<span class="lineNum"> 212 </span><span class="lineNoCov"> 0 : _Self __tmp = *this;</span>
+<span class="lineNum"> 213 </span><span class="lineNoCov"> 0 : return __tmp -= __n;</span>
+<span class="lineNum"> 214 </span> : }
+<span class="lineNum"> 215 </span> :
+<span class="lineNum"> 216 </span> : reference
+<span class="lineNum"> 217 </span> : operator[](difference_type __n) const
+<span class="lineNum"> 218 </span> : { return *(*this + __n); }
+<span class="lineNum"> 219 </span> :
+<span class="lineNum"> 220 </span> : /**
+<span class="lineNum"> 221 </span> : * Prepares to traverse new_node. Sets everything except
+<span class="lineNum"> 222 </span> : * _M_cur, which should therefore be set by the caller
+<span class="lineNum"> 223 </span> : * immediately afterwards, based on _M_first and _M_last.
+<span class="lineNum"> 224 </span> : */
+<span class="lineNum"> 225 </span> : void
+<span class="lineNum"> 226 </span><span class="lineCov"> 112 : _M_set_node(_Map_pointer __new_node)</span>
+<span class="lineNum"> 227 </span> : {
+<span class="lineNum"> 228 </span><span class="lineCov"> 112 : _M_node = __new_node;</span>
+<span class="lineNum"> 229 </span><span class="lineCov"> 112 : _M_first = *__new_node;</span>
+<span class="lineNum"> 230 </span><span class="lineCov"> 112 : _M_last = _M_first + difference_type(_S_buffer_size());</span>
+<span class="lineNum"> 231 </span><span class="lineCov"> 112 : }</span>
+<span class="lineNum"> 232 </span> : };
+<span class="lineNum"> 233 </span> :
+<span class="lineNum"> 234 </span> : // Note: we also provide overloads whose operands are of the same type in
+<span class="lineNum"> 235 </span> : // order to avoid ambiguous overload resolution when std::rel_ops operators
+<span class="lineNum"> 236 </span> : // are in scope (for additional details, see libstdc++/3628)
+<span class="lineNum"> 237 </span> : template&lt;typename _Tp, typename _Ref, typename _Ptr&gt;
+<span class="lineNum"> 238 </span> : inline bool
+<span class="lineNum"> 239 </span> : operator==(const _Deque_iterator&lt;_Tp, _Ref, _Ptr&gt;&amp; __x,
+<span class="lineNum"> 240 </span><span class="lineCov"> 19443 : const _Deque_iterator&lt;_Tp, _Ref, _Ptr&gt;&amp; __y)</span>
+<span class="lineNum"> 241 </span><span class="lineCov"> 19443 : { return __x._M_cur == __y._M_cur; }</span>
+<span class="lineNum"> 242 </span> :
+<span class="lineNum"> 243 </span> : template&lt;typename _Tp, typename _RefL, typename _PtrL,
+<span class="lineNum"> 244 </span> : typename _RefR, typename _PtrR&gt;
+<span class="lineNum"> 245 </span> : inline bool
+<span class="lineNum"> 246 </span> : operator==(const _Deque_iterator&lt;_Tp, _RefL, _PtrL&gt;&amp; __x,
+<span class="lineNum"> 247 </span> : const _Deque_iterator&lt;_Tp, _RefR, _PtrR&gt;&amp; __y)
+<span class="lineNum"> 248 </span> : { return __x._M_cur == __y._M_cur; }
+<span class="lineNum"> 249 </span> :
+<span class="lineNum"> 250 </span> : template&lt;typename _Tp, typename _Ref, typename _Ptr&gt;
+<span class="lineNum"> 251 </span> : inline bool
+<span class="lineNum"> 252 </span> : operator!=(const _Deque_iterator&lt;_Tp, _Ref, _Ptr&gt;&amp; __x,
+<span class="lineNum"> 253 </span><span class="lineCov"> 12091 : const _Deque_iterator&lt;_Tp, _Ref, _Ptr&gt;&amp; __y)</span>
+<span class="lineNum"> 254 </span><span class="lineCov"> 12091 : { return !(__x == __y); }</span>
+<span class="lineNum"> 255 </span> :
+<span class="lineNum"> 256 </span> : template&lt;typename _Tp, typename _RefL, typename _PtrL,
+<span class="lineNum"> 257 </span> : typename _RefR, typename _PtrR&gt;
+<span class="lineNum"> 258 </span> : inline bool
+<span class="lineNum"> 259 </span> : operator!=(const _Deque_iterator&lt;_Tp, _RefL, _PtrL&gt;&amp; __x,
+<span class="lineNum"> 260 </span> : const _Deque_iterator&lt;_Tp, _RefR, _PtrR&gt;&amp; __y)
+<span class="lineNum"> 261 </span> : { return !(__x == __y); }
+<span class="lineNum"> 262 </span> :
+<span class="lineNum"> 263 </span> : template&lt;typename _Tp, typename _Ref, typename _Ptr&gt;
+<span class="lineNum"> 264 </span> : inline bool
+<span class="lineNum"> 265 </span> : operator&lt;(const _Deque_iterator&lt;_Tp, _Ref, _Ptr&gt;&amp; __x,
+<span class="lineNum"> 266 </span> : const _Deque_iterator&lt;_Tp, _Ref, _Ptr&gt;&amp; __y)
+<span class="lineNum"> 267 </span> : { return (__x._M_node == __y._M_node) ? (__x._M_cur &lt; __y._M_cur)
+<span class="lineNum"> 268 </span> : : (__x._M_node &lt; __y._M_node); }
+<span class="lineNum"> 269 </span> :
+<span class="lineNum"> 270 </span> : template&lt;typename _Tp, typename _RefL, typename _PtrL,
+<span class="lineNum"> 271 </span> : typename _RefR, typename _PtrR&gt;
+<span class="lineNum"> 272 </span> : inline bool
+<span class="lineNum"> 273 </span> : operator&lt;(const _Deque_iterator&lt;_Tp, _RefL, _PtrL&gt;&amp; __x,
+<span class="lineNum"> 274 </span> : const _Deque_iterator&lt;_Tp, _RefR, _PtrR&gt;&amp; __y)
+<span class="lineNum"> 275 </span> : { return (__x._M_node == __y._M_node) ? (__x._M_cur &lt; __y._M_cur)
+<span class="lineNum"> 276 </span> : : (__x._M_node &lt; __y._M_node); }
+<span class="lineNum"> 277 </span> :
+<span class="lineNum"> 278 </span> : template&lt;typename _Tp, typename _Ref, typename _Ptr&gt;
+<span class="lineNum"> 279 </span> : inline bool
+<span class="lineNum"> 280 </span> : operator&gt;(const _Deque_iterator&lt;_Tp, _Ref, _Ptr&gt;&amp; __x,
+<span class="lineNum"> 281 </span> : const _Deque_iterator&lt;_Tp, _Ref, _Ptr&gt;&amp; __y)
+<span class="lineNum"> 282 </span> : { return __y &lt; __x; }
+<span class="lineNum"> 283 </span> :
+<span class="lineNum"> 284 </span> : template&lt;typename _Tp, typename _RefL, typename _PtrL,
+<span class="lineNum"> 285 </span> : typename _RefR, typename _PtrR&gt;
+<span class="lineNum"> 286 </span> : inline bool
+<span class="lineNum"> 287 </span> : operator&gt;(const _Deque_iterator&lt;_Tp, _RefL, _PtrL&gt;&amp; __x,
+<span class="lineNum"> 288 </span> : const _Deque_iterator&lt;_Tp, _RefR, _PtrR&gt;&amp; __y)
+<span class="lineNum"> 289 </span> : { return __y &lt; __x; }
+<span class="lineNum"> 290 </span> :
+<span class="lineNum"> 291 </span> : template&lt;typename _Tp, typename _Ref, typename _Ptr&gt;
+<span class="lineNum"> 292 </span> : inline bool
+<span class="lineNum"> 293 </span> : operator&lt;=(const _Deque_iterator&lt;_Tp, _Ref, _Ptr&gt;&amp; __x,
+<span class="lineNum"> 294 </span> : const _Deque_iterator&lt;_Tp, _Ref, _Ptr&gt;&amp; __y)
+<span class="lineNum"> 295 </span> : { return !(__y &lt; __x); }
+<span class="lineNum"> 296 </span> :
+<span class="lineNum"> 297 </span> : template&lt;typename _Tp, typename _RefL, typename _PtrL,
+<span class="lineNum"> 298 </span> : typename _RefR, typename _PtrR&gt;
+<span class="lineNum"> 299 </span> : inline bool
+<span class="lineNum"> 300 </span> : operator&lt;=(const _Deque_iterator&lt;_Tp, _RefL, _PtrL&gt;&amp; __x,
+<span class="lineNum"> 301 </span> : const _Deque_iterator&lt;_Tp, _RefR, _PtrR&gt;&amp; __y)
+<span class="lineNum"> 302 </span> : { return !(__y &lt; __x); }
+<span class="lineNum"> 303 </span> :
+<span class="lineNum"> 304 </span> : template&lt;typename _Tp, typename _Ref, typename _Ptr&gt;
+<span class="lineNum"> 305 </span> : inline bool
+<span class="lineNum"> 306 </span> : operator&gt;=(const _Deque_iterator&lt;_Tp, _Ref, _Ptr&gt;&amp; __x,
+<span class="lineNum"> 307 </span> : const _Deque_iterator&lt;_Tp, _Ref, _Ptr&gt;&amp; __y)
+<span class="lineNum"> 308 </span> : { return !(__x &lt; __y); }
+<span class="lineNum"> 309 </span> :
+<span class="lineNum"> 310 </span> : template&lt;typename _Tp, typename _RefL, typename _PtrL,
+<span class="lineNum"> 311 </span> : typename _RefR, typename _PtrR&gt;
+<span class="lineNum"> 312 </span> : inline bool
+<span class="lineNum"> 313 </span> : operator&gt;=(const _Deque_iterator&lt;_Tp, _RefL, _PtrL&gt;&amp; __x,
+<span class="lineNum"> 314 </span> : const _Deque_iterator&lt;_Tp, _RefR, _PtrR&gt;&amp; __y)
+<span class="lineNum"> 315 </span> : { return !(__x &lt; __y); }
+<span class="lineNum"> 316 </span> :
+<span class="lineNum"> 317 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 318 </span> : // According to the resolution of DR179 not only the various comparison
+<span class="lineNum"> 319 </span> : // operators but also operator- must accept mixed iterator/const_iterator
+<span class="lineNum"> 320 </span> : // parameters.
+<span class="lineNum"> 321 </span> : template&lt;typename _Tp, typename _Ref, typename _Ptr&gt;
+<span class="lineNum"> 322 </span> : inline typename _Deque_iterator&lt;_Tp, _Ref, _Ptr&gt;::difference_type
+<span class="lineNum"> 323 </span> : operator-(const _Deque_iterator&lt;_Tp, _Ref, _Ptr&gt;&amp; __x,
+<span class="lineNum"> 324 </span><span class="lineCov"> 7299 : const _Deque_iterator&lt;_Tp, _Ref, _Ptr&gt;&amp; __y)</span>
+<span class="lineNum"> 325 </span> : {
+<span class="lineNum"> 326 </span> : return typename _Deque_iterator&lt;_Tp, _Ref, _Ptr&gt;::difference_type
+<span class="lineNum"> 327 </span> : (_Deque_iterator&lt;_Tp, _Ref, _Ptr&gt;::_S_buffer_size())
+<span class="lineNum"> 328 </span> : * (__x._M_node - __y._M_node - 1) + (__x._M_cur - __x._M_first)
+<span class="lineNum"> 329 </span><span class="lineCov"> 7299 : + (__y._M_last - __y._M_cur);</span>
+<span class="lineNum"> 330 </span> : }
+<span class="lineNum"> 331 </span> :
+<span class="lineNum"> 332 </span> : template&lt;typename _Tp, typename _RefL, typename _PtrL,
+<span class="lineNum"> 333 </span> : typename _RefR, typename _PtrR&gt;
+<span class="lineNum"> 334 </span> : inline typename _Deque_iterator&lt;_Tp, _RefL, _PtrL&gt;::difference_type
+<span class="lineNum"> 335 </span> : operator-(const _Deque_iterator&lt;_Tp, _RefL, _PtrL&gt;&amp; __x,
+<span class="lineNum"> 336 </span> : const _Deque_iterator&lt;_Tp, _RefR, _PtrR&gt;&amp; __y)
+<span class="lineNum"> 337 </span> : {
+<span class="lineNum"> 338 </span> : return typename _Deque_iterator&lt;_Tp, _RefL, _PtrL&gt;::difference_type
+<span class="lineNum"> 339 </span> : (_Deque_iterator&lt;_Tp, _RefL, _PtrL&gt;::_S_buffer_size())
+<span class="lineNum"> 340 </span> : * (__x._M_node - __y._M_node - 1) + (__x._M_cur - __x._M_first)
+<span class="lineNum"> 341 </span> : + (__y._M_last - __y._M_cur);
+<span class="lineNum"> 342 </span> : }
+<span class="lineNum"> 343 </span> :
+<span class="lineNum"> 344 </span> : template&lt;typename _Tp, typename _Ref, typename _Ptr&gt;
+<span class="lineNum"> 345 </span> : inline _Deque_iterator&lt;_Tp, _Ref, _Ptr&gt;
+<span class="lineNum"> 346 </span> : operator+(ptrdiff_t __n, const _Deque_iterator&lt;_Tp, _Ref, _Ptr&gt;&amp; __x)
+<span class="lineNum"> 347 </span> : { return __x + __n; }
+<span class="lineNum"> 348 </span> :
+<span class="lineNum"> 349 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 350 </span> : void
+<span class="lineNum"> 351 </span> : fill(const _Deque_iterator&lt;_Tp, _Tp&amp;, _Tp*&gt;&amp; __first,
+<span class="lineNum"> 352 </span> : const _Deque_iterator&lt;_Tp, _Tp&amp;, _Tp*&gt;&amp; __last, const _Tp&amp; __value);
+<span class="lineNum"> 353 </span> :
+<span class="lineNum"> 354 </span> : /**
+<span class="lineNum"> 355 </span> : * Deque base class. This class provides the unified face for %deque's
+<span class="lineNum"> 356 </span> : * allocation. This class's constructor and destructor allocate and
+<span class="lineNum"> 357 </span> : * deallocate (but do not initialize) storage. This makes %exception
+<span class="lineNum"> 358 </span> : * safety easier.
+<span class="lineNum"> 359 </span> : *
+<span class="lineNum"> 360 </span> : * Nothing in this class ever constructs or destroys an actual Tp element.
+<span class="lineNum"> 361 </span> : * (Deque handles that itself.) Only/All memory management is performed
+<span class="lineNum"> 362 </span> : * here.
+<span class="lineNum"> 363 </span> : */
+<span class="lineNum"> 364 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 365 </span> : class _Deque_base
+<span class="lineNum"> 366 </span> : {
+<span class="lineNum"> 367 </span> : public:
+<span class="lineNum"> 368 </span> : typedef _Alloc allocator_type;
+<span class="lineNum"> 369 </span> :
+<span class="lineNum"> 370 </span> : allocator_type
+<span class="lineNum"> 371 </span> : get_allocator() const
+<span class="lineNum"> 372 </span> : { return allocator_type(_M_get_Tp_allocator()); }
+<span class="lineNum"> 373 </span> :
+<span class="lineNum"> 374 </span> : typedef _Deque_iterator&lt;_Tp, _Tp&amp;, _Tp*&gt; iterator;
+<span class="lineNum"> 375 </span> : typedef _Deque_iterator&lt;_Tp, const _Tp&amp;, const _Tp*&gt; const_iterator;
+<span class="lineNum"> 376 </span> :
+<span class="lineNum"> 377 </span><span class="lineCov"> 21 : _Deque_base()</span>
+<span class="lineNum"> 378 </span><span class="lineCov"> 21 : : _M_impl()</span>
+<span class="lineNum"> 379 </span><span class="lineCov"> 21 : { _M_initialize_map(0); }</span>
+<span class="lineNum"> 380 </span> :
+<span class="lineNum"> 381 </span><span class="lineCov"> 13 : _Deque_base(const allocator_type&amp; __a, size_t __num_elements)</span>
+<span class="lineNum"> 382 </span><span class="lineCov"> 13 : : _M_impl(__a)</span>
+<span class="lineNum"> 383 </span><span class="lineCov"> 13 : { _M_initialize_map(__num_elements); }</span>
+<span class="lineNum"> 384 </span> :
+<span class="lineNum"> 385 </span> : _Deque_base(const allocator_type&amp; __a)
+<span class="lineNum"> 386 </span> : : _M_impl(__a)
+<span class="lineNum"> 387 </span> : { }
+<span class="lineNum"> 388 </span> :
+<span class="lineNum"> 389 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 390 </span> : _Deque_base(_Deque_base&amp;&amp; __x)
+<span class="lineNum"> 391 </span> : : _M_impl(__x._M_get_Tp_allocator())
+<span class="lineNum"> 392 </span> : {
+<span class="lineNum"> 393 </span> : _M_initialize_map(0);
+<span class="lineNum"> 394 </span> : if (__x._M_impl._M_map)
+<span class="lineNum"> 395 </span> : {
+<span class="lineNum"> 396 </span> : std::swap(this-&gt;_M_impl._M_start, __x._M_impl._M_start);
+<span class="lineNum"> 397 </span> : std::swap(this-&gt;_M_impl._M_finish, __x._M_impl._M_finish);
+<span class="lineNum"> 398 </span> : std::swap(this-&gt;_M_impl._M_map, __x._M_impl._M_map);
+<span class="lineNum"> 399 </span> : std::swap(this-&gt;_M_impl._M_map_size, __x._M_impl._M_map_size);
+<span class="lineNum"> 400 </span> : }
+<span class="lineNum"> 401 </span> : }
+<span class="lineNum"> 402 </span> : #endif
+<span class="lineNum"> 403 </span> :
+<span class="lineNum"> 404 </span> : ~_Deque_base();
+<span class="lineNum"> 405 </span> :
+<span class="lineNum"> 406 </span> : protected:
+<span class="lineNum"> 407 </span> : //This struct encapsulates the implementation of the std::deque
+<span class="lineNum"> 408 </span> : //standard container and at the same time makes use of the EBO
+<span class="lineNum"> 409 </span> : //for empty allocators.
+<span class="lineNum"> 410 </span> : typedef typename _Alloc::template rebind&lt;_Tp*&gt;::other _Map_alloc_type;
+<span class="lineNum"> 411 </span> :
+<span class="lineNum"> 412 </span> : typedef typename _Alloc::template rebind&lt;_Tp&gt;::other _Tp_alloc_type;
+<span class="lineNum"> 413 </span> :
+<span class="lineNum"> 414 </span> : struct _Deque_impl
+<span class="lineNum"> 415 </span> : : public _Tp_alloc_type
+<span class="lineNum"> 416 </span><span class="lineCov"> 30 : {</span>
+<span class="lineNum"> 417 </span> : _Tp** _M_map;
+<span class="lineNum"> 418 </span> : size_t _M_map_size;
+<span class="lineNum"> 419 </span> : iterator _M_start;
+<span class="lineNum"> 420 </span> : iterator _M_finish;
+<span class="lineNum"> 421 </span> :
+<span class="lineNum"> 422 </span><span class="lineCov"> 21 : _Deque_impl()</span>
+<span class="lineNum"> 423 </span> : : _Tp_alloc_type(), _M_map(0), _M_map_size(0),
+<span class="lineNum"> 424 </span><span class="lineCov"> 21 : _M_start(), _M_finish()</span>
+<span class="lineNum"> 425 </span><span class="lineCov"> 21 : { }</span>
+<span class="lineNum"> 426 </span> :
+<span class="lineNum"> 427 </span><span class="lineCov"> 13 : _Deque_impl(const _Tp_alloc_type&amp; __a)</span>
+<span class="lineNum"> 428 </span> : : _Tp_alloc_type(__a), _M_map(0), _M_map_size(0),
+<span class="lineNum"> 429 </span><span class="lineCov"> 13 : _M_start(), _M_finish()</span>
+<span class="lineNum"> 430 </span><span class="lineCov"> 13 : { }</span>
+<span class="lineNum"> 431 </span> : };
+<span class="lineNum"> 432 </span> :
+<span class="lineNum"> 433 </span> : _Tp_alloc_type&amp;
+<span class="lineNum"> 434 </span><span class="lineCov"> 1085 : _M_get_Tp_allocator()</span>
+<span class="lineNum"> 435 </span><span class="lineCov"> 1085 : { return *static_cast&lt;_Tp_alloc_type*&gt;(&amp;this-&gt;_M_impl); }</span>
+<span class="lineNum"> 436 </span> :
+<span class="lineNum"> 437 </span> : const _Tp_alloc_type&amp;
+<span class="lineNum"> 438 </span><span class="lineCov"> 77 : _M_get_Tp_allocator() const</span>
+<span class="lineNum"> 439 </span><span class="lineCov"> 77 : { return *static_cast&lt;const _Tp_alloc_type*&gt;(&amp;this-&gt;_M_impl); }</span>
+<span class="lineNum"> 440 </span> :
+<span class="lineNum"> 441 </span> : _Map_alloc_type
+<span class="lineNum"> 442 </span><span class="lineCov"> 64 : _M_get_map_allocator() const</span>
+<span class="lineNum"> 443 </span><span class="lineCov"> 64 : { return _Map_alloc_type(_M_get_Tp_allocator()); }</span>
+<span class="lineNum"> 444 </span> :
+<span class="lineNum"> 445 </span> : _Tp*
+<span class="lineNum"> 446 </span><span class="lineCov"> 47 : _M_allocate_node()</span>
+<span class="lineNum"> 447 </span> : {
+<span class="lineNum"> 448 </span><span class="lineCov"> 47 : return _M_impl._Tp_alloc_type::allocate(__deque_buf_size(sizeof(_Tp)));</span>
+<span class="lineNum"> 449 </span> : }
+<span class="lineNum"> 450 </span> :
+<span class="lineNum"> 451 </span> : void
+<span class="lineNum"> 452 </span><span class="lineCov"> 43 : _M_deallocate_node(_Tp* __p)</span>
+<span class="lineNum"> 453 </span> : {
+<span class="lineNum"> 454 </span><span class="lineCov"> 43 : _M_impl._Tp_alloc_type::deallocate(__p, __deque_buf_size(sizeof(_Tp)));</span>
+<span class="lineNum"> 455 </span><span class="lineCov"> 43 : }</span>
+<span class="lineNum"> 456 </span> :
+<span class="lineNum"> 457 </span> : _Tp**
+<span class="lineNum"> 458 </span><span class="lineCov"> 34 : _M_allocate_map(size_t __n)</span>
+<span class="lineNum"> 459 </span><span class="lineCov"> 34 : { return _M_get_map_allocator().allocate(__n); }</span>
+<span class="lineNum"> 460 </span> :
+<span class="lineNum"> 461 </span> : void
+<span class="lineNum"> 462 </span><span class="lineCov"> 30 : _M_deallocate_map(_Tp** __p, size_t __n)</span>
+<span class="lineNum"> 463 </span><span class="lineCov"> 30 : { _M_get_map_allocator().deallocate(__p, __n); }</span>
+<span class="lineNum"> 464 </span> :
+<span class="lineNum"> 465 </span> : protected:
+<span class="lineNum"> 466 </span> : void _M_initialize_map(size_t);
+<span class="lineNum"> 467 </span> : void _M_create_nodes(_Tp** __nstart, _Tp** __nfinish);
+<span class="lineNum"> 468 </span> : void _M_destroy_nodes(_Tp** __nstart, _Tp** __nfinish);
+<span class="lineNum"> 469 </span> : enum { _S_initial_map_size = 8 };
+<span class="lineNum"> 470 </span> :
+<span class="lineNum"> 471 </span> : _Deque_impl _M_impl;
+<span class="lineNum"> 472 </span> : };
+<span class="lineNum"> 473 </span> :
+<span class="lineNum"> 474 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 475 </span> : _Deque_base&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 476 </span><span class="lineCov"> 30 : ~_Deque_base()</span>
+<span class="lineNum"> 477 </span> : {
+<span class="lineNum"> 478 </span><span class="lineCov"> 30 : if (this-&gt;_M_impl._M_map)</span>
+<span class="lineNum"> 479 </span> : {
+<span class="lineNum"> 480 </span><span class="lineCov"> 30 : _M_destroy_nodes(this-&gt;_M_impl._M_start._M_node,</span>
+<span class="lineNum"> 481 </span> : this-&gt;_M_impl._M_finish._M_node + 1);
+<span class="lineNum"> 482 </span><span class="lineCov"> 30 : _M_deallocate_map(this-&gt;_M_impl._M_map, this-&gt;_M_impl._M_map_size);</span>
+<span class="lineNum"> 483 </span> : }
+<span class="lineNum"> 484 </span><span class="lineCov"> 30 : }</span>
+<span class="lineNum"> 485 </span> :
+<span class="lineNum"> 486 </span> : /**
+<span class="lineNum"> 487 </span> : * @brief Layout storage.
+<span class="lineNum"> 488 </span> : * @param num_elements The count of T's for which to allocate space
+<span class="lineNum"> 489 </span> : * at first.
+<span class="lineNum"> 490 </span> : * @return Nothing.
+<span class="lineNum"> 491 </span> : *
+<span class="lineNum"> 492 </span> : * The initial underlying memory layout is a bit complicated...
+<span class="lineNum"> 493 </span> : */
+<span class="lineNum"> 494 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 495 </span> : void
+<span class="lineNum"> 496 </span> : _Deque_base&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 497 </span><span class="lineCov"> 34 : _M_initialize_map(size_t __num_elements)</span>
+<span class="lineNum"> 498 </span> : {
+<span class="lineNum"> 499 </span> : const size_t __num_nodes = (__num_elements/ __deque_buf_size(sizeof(_Tp))
+<span class="lineNum"> 500 </span><span class="lineCov"> 34 : + 1);</span>
+<span class="lineNum"> 501 </span> :
+<span class="lineNum"> 502 </span><span class="lineCov"> 34 : this-&gt;_M_impl._M_map_size = std::max((size_t) _S_initial_map_size,</span>
+<span class="lineNum"> 503 </span> : size_t(__num_nodes + 2));
+<span class="lineNum"> 504 </span><span class="lineCov"> 34 : this-&gt;_M_impl._M_map = _M_allocate_map(this-&gt;_M_impl._M_map_size);</span>
+<span class="lineNum"> 505 </span> :
+<span class="lineNum"> 506 </span> : // For &quot;small&quot; maps (needing less than _M_map_size nodes), allocation
+<span class="lineNum"> 507 </span> : // starts in the middle elements and grows outwards. So nstart may be
+<span class="lineNum"> 508 </span> : // the beginning of _M_map, but for small maps it may be as far in as
+<span class="lineNum"> 509 </span> : // _M_map+3.
+<span class="lineNum"> 510 </span> :
+<span class="lineNum"> 511 </span> : _Tp** __nstart = (this-&gt;_M_impl._M_map
+<span class="lineNum"> 512 </span><span class="lineCov"> 34 : + (this-&gt;_M_impl._M_map_size - __num_nodes) / 2);</span>
+<span class="lineNum"> 513 </span><span class="lineCov"> 34 : _Tp** __nfinish = __nstart + __num_nodes;</span>
+<span class="lineNum"> 514 </span> :
+<span class="lineNum"> 515 </span> : try
+<span class="lineNum"> 516 </span><span class="lineCov"> 34 : { _M_create_nodes(__nstart, __nfinish); }</span>
+<span class="lineNum"> 517 </span><span class="lineNoCov"> 0 : catch(...)</span>
+<span class="lineNum"> 518 </span> : {
+<span class="lineNum"> 519 </span><span class="lineNoCov"> 0 : _M_deallocate_map(this-&gt;_M_impl._M_map, this-&gt;_M_impl._M_map_size);</span>
+<span class="lineNum"> 520 </span><span class="lineNoCov"> 0 : this-&gt;_M_impl._M_map = 0;</span>
+<span class="lineNum"> 521 </span><span class="lineNoCov"> 0 : this-&gt;_M_impl._M_map_size = 0;</span>
+<span class="lineNum"> 522 </span><span class="lineNoCov"> 0 : __throw_exception_again;</span>
+<span class="lineNum"> 523 </span> : }
+<span class="lineNum"> 524 </span> :
+<span class="lineNum"> 525 </span><span class="lineCov"> 34 : this-&gt;_M_impl._M_start._M_set_node(__nstart);</span>
+<span class="lineNum"> 526 </span><span class="lineCov"> 34 : this-&gt;_M_impl._M_finish._M_set_node(__nfinish - 1);</span>
+<span class="lineNum"> 527 </span><span class="lineCov"> 34 : this-&gt;_M_impl._M_start._M_cur = _M_impl._M_start._M_first;</span>
+<span class="lineNum"> 528 </span><span class="lineCov"> 34 : this-&gt;_M_impl._M_finish._M_cur = (this-&gt;_M_impl._M_finish._M_first</span>
+<span class="lineNum"> 529 </span> : + __num_elements
+<span class="lineNum"> 530 </span> : % __deque_buf_size(sizeof(_Tp)));
+<span class="lineNum"> 531 </span><span class="lineCov"> 34 : }</span>
+<span class="lineNum"> 532 </span> :
+<span class="lineNum"> 533 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 534 </span> : void
+<span class="lineNum"> 535 </span> : _Deque_base&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 536 </span><span class="lineCov"> 34 : _M_create_nodes(_Tp** __nstart, _Tp** __nfinish)</span>
+<span class="lineNum"> 537 </span> : {
+<span class="lineNum"> 538 </span> : _Tp** __cur;
+<span class="lineNum"> 539 </span> : try
+<span class="lineNum"> 540 </span> : {
+<span class="lineNum"> 541 </span><span class="lineCov"> 68 : for (__cur = __nstart; __cur &lt; __nfinish; ++__cur)</span>
+<span class="lineNum"> 542 </span><span class="lineCov"> 34 : *__cur = this-&gt;_M_allocate_node();</span>
+<span class="lineNum"> 543 </span> : }
+<span class="lineNum"> 544 </span><span class="lineNoCov"> 0 : catch(...)</span>
+<span class="lineNum"> 545 </span> : {
+<span class="lineNum"> 546 </span><span class="lineNoCov"> 0 : _M_destroy_nodes(__nstart, __cur);</span>
+<span class="lineNum"> 547 </span><span class="lineNoCov"> 0 : __throw_exception_again;</span>
+<span class="lineNum"> 548 </span> : }
+<span class="lineNum"> 549 </span><span class="lineCov"> 34 : }</span>
+<span class="lineNum"> 550 </span> :
+<span class="lineNum"> 551 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 552 </span> : void
+<span class="lineNum"> 553 </span> : _Deque_base&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 554 </span><span class="lineCov"> 1046 : _M_destroy_nodes(_Tp** __nstart, _Tp** __nfinish)</span>
+<span class="lineNum"> 555 </span> : {
+<span class="lineNum"> 556 </span><span class="lineCov"> 1089 : for (_Tp** __n = __nstart; __n &lt; __nfinish; ++__n)</span>
+<span class="lineNum"> 557 </span><span class="lineCov"> 43 : _M_deallocate_node(*__n);</span>
+<span class="lineNum"> 558 </span><span class="lineCov"> 1046 : }</span>
+<span class="lineNum"> 559 </span> :
+<span class="lineNum"> 560 </span> : /**
+<span class="lineNum"> 561 </span> : * @brief A standard container using fixed-size memory allocation and
+<span class="lineNum"> 562 </span> : * constant-time manipulation of elements at either end.
+<span class="lineNum"> 563 </span> : *
+<span class="lineNum"> 564 </span> : * @ingroup Containers
+<span class="lineNum"> 565 </span> : * @ingroup Sequences
+<span class="lineNum"> 566 </span> : *
+<span class="lineNum"> 567 </span> : * Meets the requirements of a &lt;a href=&quot;tables.html#65&quot;&gt;container&lt;/a&gt;, a
+<span class="lineNum"> 568 </span> : * &lt;a href=&quot;tables.html#66&quot;&gt;reversible container&lt;/a&gt;, and a
+<span class="lineNum"> 569 </span> : * &lt;a href=&quot;tables.html#67&quot;&gt;sequence&lt;/a&gt;, including the
+<span class="lineNum"> 570 </span> : * &lt;a href=&quot;tables.html#68&quot;&gt;optional sequence requirements&lt;/a&gt;.
+<span class="lineNum"> 571 </span> : *
+<span class="lineNum"> 572 </span> : * In previous HP/SGI versions of deque, there was an extra template
+<span class="lineNum"> 573 </span> : * parameter so users could control the node size. This extension turned
+<span class="lineNum"> 574 </span> : * out to violate the C++ standard (it can be detected using template
+<span class="lineNum"> 575 </span> : * template parameters), and it was removed.
+<span class="lineNum"> 576 </span> : *
+<span class="lineNum"> 577 </span> : * Here's how a deque&lt;Tp&gt; manages memory. Each deque has 4 members:
+<span class="lineNum"> 578 </span> : *
+<span class="lineNum"> 579 </span> : * - Tp** _M_map
+<span class="lineNum"> 580 </span> : * - size_t _M_map_size
+<span class="lineNum"> 581 </span> : * - iterator _M_start, _M_finish
+<span class="lineNum"> 582 </span> : *
+<span class="lineNum"> 583 </span> : * map_size is at least 8. %map is an array of map_size
+<span class="lineNum"> 584 </span> : * pointers-to-&quot;nodes&quot;. (The name %map has nothing to do with the
+<span class="lineNum"> 585 </span> : * std::map class, and &quot;nodes&quot; should not be confused with
+<span class="lineNum"> 586 </span> : * std::list's usage of &quot;node&quot;.)
+<span class="lineNum"> 587 </span> : *
+<span class="lineNum"> 588 </span> : * A &quot;node&quot; has no specific type name as such, but it is referred
+<span class="lineNum"> 589 </span> : * to as &quot;node&quot; in this file. It is a simple array-of-Tp. If Tp
+<span class="lineNum"> 590 </span> : * is very large, there will be one Tp element per node (i.e., an
+<span class="lineNum"> 591 </span> : * &quot;array&quot; of one). For non-huge Tp's, node size is inversely
+<span class="lineNum"> 592 </span> : * related to Tp size: the larger the Tp, the fewer Tp's will fit
+<span class="lineNum"> 593 </span> : * in a node. The goal here is to keep the total size of a node
+<span class="lineNum"> 594 </span> : * relatively small and constant over different Tp's, to improve
+<span class="lineNum"> 595 </span> : * allocator efficiency.
+<span class="lineNum"> 596 </span> : *
+<span class="lineNum"> 597 </span> : * Not every pointer in the %map array will point to a node. If
+<span class="lineNum"> 598 </span> : * the initial number of elements in the deque is small, the
+<span class="lineNum"> 599 </span> : * /middle/ %map pointers will be valid, and the ones at the edges
+<span class="lineNum"> 600 </span> : * will be unused. This same situation will arise as the %map
+<span class="lineNum"> 601 </span> : * grows: available %map pointers, if any, will be on the ends. As
+<span class="lineNum"> 602 </span> : * new nodes are created, only a subset of the %map's pointers need
+<span class="lineNum"> 603 </span> : * to be copied &quot;outward&quot;.
+<span class="lineNum"> 604 </span> : *
+<span class="lineNum"> 605 </span> : * Class invariants:
+<span class="lineNum"> 606 </span> : * - For any nonsingular iterator i:
+<span class="lineNum"> 607 </span> : * - i.node points to a member of the %map array. (Yes, you read that
+<span class="lineNum"> 608 </span> : * correctly: i.node does not actually point to a node.) The member of
+<span class="lineNum"> 609 </span> : * the %map array is what actually points to the node.
+<span class="lineNum"> 610 </span> : * - i.first == *(i.node) (This points to the node (first Tp element).)
+<span class="lineNum"> 611 </span> : * - i.last == i.first + node_size
+<span class="lineNum"> 612 </span> : * - i.cur is a pointer in the range [i.first, i.last). NOTE:
+<span class="lineNum"> 613 </span> : * the implication of this is that i.cur is always a dereferenceable
+<span class="lineNum"> 614 </span> : * pointer, even if i is a past-the-end iterator.
+<span class="lineNum"> 615 </span> : * - Start and Finish are always nonsingular iterators. NOTE: this
+<span class="lineNum"> 616 </span> : * means that an empty deque must have one node, a deque with &lt;N
+<span class="lineNum"> 617 </span> : * elements (where N is the node buffer size) must have one node, a
+<span class="lineNum"> 618 </span> : * deque with N through (2N-1) elements must have two nodes, etc.
+<span class="lineNum"> 619 </span> : * - For every node other than start.node and finish.node, every
+<span class="lineNum"> 620 </span> : * element in the node is an initialized object. If start.node ==
+<span class="lineNum"> 621 </span> : * finish.node, then [start.cur, finish.cur) are initialized
+<span class="lineNum"> 622 </span> : * objects, and the elements outside that range are uninitialized
+<span class="lineNum"> 623 </span> : * storage. Otherwise, [start.cur, start.last) and [finish.first,
+<span class="lineNum"> 624 </span> : * finish.cur) are initialized objects, and [start.first, start.cur)
+<span class="lineNum"> 625 </span> : * and [finish.cur, finish.last) are uninitialized storage.
+<span class="lineNum"> 626 </span> : * - [%map, %map + map_size) is a valid, non-empty range.
+<span class="lineNum"> 627 </span> : * - [start.node, finish.node] is a valid range contained within
+<span class="lineNum"> 628 </span> : * [%map, %map + map_size).
+<span class="lineNum"> 629 </span> : * - A pointer in the range [%map, %map + map_size) points to an allocated
+<span class="lineNum"> 630 </span> : * node if and only if the pointer is in the range
+<span class="lineNum"> 631 </span> : * [start.node, finish.node].
+<span class="lineNum"> 632 </span> : *
+<span class="lineNum"> 633 </span> : * Here's the magic: nothing in deque is &quot;aware&quot; of the discontiguous
+<span class="lineNum"> 634 </span> : * storage!
+<span class="lineNum"> 635 </span> : *
+<span class="lineNum"> 636 </span> : * The memory setup and layout occurs in the parent, _Base, and the iterator
+<span class="lineNum"> 637 </span> : * class is entirely responsible for &quot;leaping&quot; from one node to the next.
+<span class="lineNum"> 638 </span> : * All the implementation routines for deque itself work only through the
+<span class="lineNum"> 639 </span> : * start and finish iterators. This keeps the routines simple and sane,
+<span class="lineNum"> 640 </span> : * and we can use other standard algorithms as well.
+<span class="lineNum"> 641 </span> : */
+<span class="lineNum"> 642 </span> : template&lt;typename _Tp, typename _Alloc = std::allocator&lt;_Tp&gt; &gt;
+<span class="lineNum"> 643 </span> : class deque : protected _Deque_base&lt;_Tp, _Alloc&gt;
+<span class="lineNum"> 644 </span> : {
+<span class="lineNum"> 645 </span> : // concept requirements
+<span class="lineNum"> 646 </span> : typedef typename _Alloc::value_type _Alloc_value_type;
+<span class="lineNum"> 647 </span> : __glibcxx_class_requires(_Tp, _SGIAssignableConcept)
+<span class="lineNum"> 648 </span> : __glibcxx_class_requires2(_Tp, _Alloc_value_type, _SameTypeConcept)
+<span class="lineNum"> 649 </span> :
+<span class="lineNum"> 650 </span> : typedef _Deque_base&lt;_Tp, _Alloc&gt; _Base;
+<span class="lineNum"> 651 </span> : typedef typename _Base::_Tp_alloc_type _Tp_alloc_type;
+<span class="lineNum"> 652 </span> :
+<span class="lineNum"> 653 </span> : public:
+<span class="lineNum"> 654 </span> : typedef _Tp value_type;
+<span class="lineNum"> 655 </span> : typedef typename _Tp_alloc_type::pointer pointer;
+<span class="lineNum"> 656 </span> : typedef typename _Tp_alloc_type::const_pointer const_pointer;
+<span class="lineNum"> 657 </span> : typedef typename _Tp_alloc_type::reference reference;
+<span class="lineNum"> 658 </span> : typedef typename _Tp_alloc_type::const_reference const_reference;
+<span class="lineNum"> 659 </span> : typedef typename _Base::iterator iterator;
+<span class="lineNum"> 660 </span> : typedef typename _Base::const_iterator const_iterator;
+<span class="lineNum"> 661 </span> : typedef std::reverse_iterator&lt;const_iterator&gt; const_reverse_iterator;
+<span class="lineNum"> 662 </span> : typedef std::reverse_iterator&lt;iterator&gt; reverse_iterator;
+<span class="lineNum"> 663 </span> : typedef size_t size_type;
+<span class="lineNum"> 664 </span> : typedef ptrdiff_t difference_type;
+<span class="lineNum"> 665 </span> : typedef _Alloc allocator_type;
+<span class="lineNum"> 666 </span> :
+<span class="lineNum"> 667 </span> : protected:
+<span class="lineNum"> 668 </span> : typedef pointer* _Map_pointer;
+<span class="lineNum"> 669 </span> :
+<span class="lineNum"> 670 </span><span class="lineNoCov"> 0 : static size_t _S_buffer_size()</span>
+<span class="lineNum"> 671 </span><span class="lineNoCov"> 0 : { return __deque_buf_size(sizeof(_Tp)); }</span>
+<span class="lineNum"> 672 </span> :
+<span class="lineNum"> 673 </span> : // Functions controlling memory layout, and nothing else.
+<span class="lineNum"> 674 </span> : using _Base::_M_initialize_map;
+<span class="lineNum"> 675 </span> : using _Base::_M_create_nodes;
+<span class="lineNum"> 676 </span> : using _Base::_M_destroy_nodes;
+<span class="lineNum"> 677 </span> : using _Base::_M_allocate_node;
+<span class="lineNum"> 678 </span> : using _Base::_M_deallocate_node;
+<span class="lineNum"> 679 </span> : using _Base::_M_allocate_map;
+<span class="lineNum"> 680 </span> : using _Base::_M_deallocate_map;
+<span class="lineNum"> 681 </span> : using _Base::_M_get_Tp_allocator;
+<span class="lineNum"> 682 </span> :
+<span class="lineNum"> 683 </span> : /**
+<span class="lineNum"> 684 </span> : * A total of four data members accumulated down the hierarchy.
+<span class="lineNum"> 685 </span> : * May be accessed via _M_impl.*
+<span class="lineNum"> 686 </span> : */
+<span class="lineNum"> 687 </span> : using _Base::_M_impl;
+<span class="lineNum"> 688 </span> :
+<span class="lineNum"> 689 </span> : public:
+<span class="lineNum"> 690 </span> : // [23.2.1.1] construct/copy/destroy
+<span class="lineNum"> 691 </span> : // (assign() and get_allocator() are also listed in this section)
+<span class="lineNum"> 692 </span> : /**
+<span class="lineNum"> 693 </span> : * @brief Default constructor creates no elements.
+<span class="lineNum"> 694 </span> : */
+<span class="lineNum"> 695 </span><span class="lineCov"> 21 : deque()</span>
+<span class="lineNum"> 696 </span><span class="lineCov"> 21 : : _Base() { }</span>
+<span class="lineNum"> 697 </span> :
+<span class="lineNum"> 698 </span> : /**
+<span class="lineNum"> 699 </span> : * @brief Creates a %deque with no elements.
+<span class="lineNum"> 700 </span> : * @param a An allocator object.
+<span class="lineNum"> 701 </span> : */
+<span class="lineNum"> 702 </span> : explicit
+<span class="lineNum"> 703 </span> : deque(const allocator_type&amp; __a)
+<span class="lineNum"> 704 </span> : : _Base(__a, 0) { }
+<span class="lineNum"> 705 </span> :
+<span class="lineNum"> 706 </span> : /**
+<span class="lineNum"> 707 </span> : * @brief Creates a %deque with copies of an exemplar element.
+<span class="lineNum"> 708 </span> : * @param n The number of elements to initially create.
+<span class="lineNum"> 709 </span> : * @param value An element to copy.
+<span class="lineNum"> 710 </span> : * @param a An allocator.
+<span class="lineNum"> 711 </span> : *
+<span class="lineNum"> 712 </span> : * This constructor fills the %deque with @a n copies of @a value.
+<span class="lineNum"> 713 </span> : */
+<span class="lineNum"> 714 </span> : explicit
+<span class="lineNum"> 715 </span> : deque(size_type __n, const value_type&amp; __value = value_type(),
+<span class="lineNum"> 716 </span> : const allocator_type&amp; __a = allocator_type())
+<span class="lineNum"> 717 </span> : : _Base(__a, __n)
+<span class="lineNum"> 718 </span> : { _M_fill_initialize(__value); }
+<span class="lineNum"> 719 </span> :
+<span class="lineNum"> 720 </span> : /**
+<span class="lineNum"> 721 </span> : * @brief %Deque copy constructor.
+<span class="lineNum"> 722 </span> : * @param x A %deque of identical element and allocator types.
+<span class="lineNum"> 723 </span> : *
+<span class="lineNum"> 724 </span> : * The newly-created %deque uses a copy of the allocation object used
+<span class="lineNum"> 725 </span> : * by @a x.
+<span class="lineNum"> 726 </span> : */
+<span class="lineNum"> 727 </span><span class="lineCov"> 13 : deque(const deque&amp; __x)</span>
+<span class="lineNum"> 728 </span><span class="lineCov"> 13 : : _Base(__x._M_get_Tp_allocator(), __x.size())</span>
+<span class="lineNum"> 729 </span><span class="lineCov"> 13 : { std::__uninitialized_copy_a(__x.begin(), __x.end(), </span>
+<span class="lineNum"> 730 </span> : this-&gt;_M_impl._M_start,
+<span class="lineNum"> 731 </span><span class="lineCov"> 13 : _M_get_Tp_allocator()); }</span>
+<span class="lineNum"> 732 </span> :
+<span class="lineNum"> 733 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 734 </span> : /**
+<span class="lineNum"> 735 </span> : * @brief %Deque move constructor.
+<span class="lineNum"> 736 </span> : * @param x A %deque of identical element and allocator types.
+<span class="lineNum"> 737 </span> : *
+<span class="lineNum"> 738 </span> : * The newly-created %deque contains the exact contents of @a x.
+<span class="lineNum"> 739 </span> : * The contents of @a x are a valid, but unspecified %deque.
+<span class="lineNum"> 740 </span> : */
+<span class="lineNum"> 741 </span> : deque(deque&amp;&amp; __x)
+<span class="lineNum"> 742 </span> : : _Base(std::forward&lt;_Base&gt;(__x)) { }
+<span class="lineNum"> 743 </span> : #endif
+<span class="lineNum"> 744 </span> :
+<span class="lineNum"> 745 </span> : /**
+<span class="lineNum"> 746 </span> : * @brief Builds a %deque from a range.
+<span class="lineNum"> 747 </span> : * @param first An input iterator.
+<span class="lineNum"> 748 </span> : * @param last An input iterator.
+<span class="lineNum"> 749 </span> : * @param a An allocator object.
+<span class="lineNum"> 750 </span> : *
+<span class="lineNum"> 751 </span> : * Create a %deque consisting of copies of the elements from [first,
+<span class="lineNum"> 752 </span> : * last).
+<span class="lineNum"> 753 </span> : *
+<span class="lineNum"> 754 </span> : * If the iterators are forward, bidirectional, or random-access, then
+<span class="lineNum"> 755 </span> : * this will call the elements' copy constructor N times (where N is
+<span class="lineNum"> 756 </span> : * distance(first,last)) and do no memory reallocation. But if only
+<span class="lineNum"> 757 </span> : * input iterators are used, then this will do at most 2N calls to the
+<span class="lineNum"> 758 </span> : * copy constructor, and logN memory reallocations.
+<span class="lineNum"> 759 </span> : */
+<span class="lineNum"> 760 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 761 </span> : deque(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 762 </span> : const allocator_type&amp; __a = allocator_type())
+<span class="lineNum"> 763 </span> : : _Base(__a)
+<span class="lineNum"> 764 </span> : {
+<span class="lineNum"> 765 </span> : // Check whether it's an integral type. If so, it's not an iterator.
+<span class="lineNum"> 766 </span> : typedef typename std::__is_integer&lt;_InputIterator&gt;::__type _Integral;
+<span class="lineNum"> 767 </span> : _M_initialize_dispatch(__first, __last, _Integral());
+<span class="lineNum"> 768 </span> : }
+<span class="lineNum"> 769 </span> :
+<span class="lineNum"> 770 </span> : /**
+<span class="lineNum"> 771 </span> : * The dtor only erases the elements, and note that if the elements
+<span class="lineNum"> 772 </span> : * themselves are pointers, the pointed-to memory is not touched in any
+<span class="lineNum"> 773 </span> : * way. Managing the pointer is the user's responsibility.
+<span class="lineNum"> 774 </span> : */
+<span class="lineNum"> 775 </span><span class="lineCov"> 30 : ~deque()</span>
+<span class="lineNum"> 776 </span><span class="lineCov"> 30 : { _M_destroy_data(begin(), end(), _M_get_Tp_allocator()); }</span>
+<span class="lineNum"> 777 </span> :
+<span class="lineNum"> 778 </span> : /**
+<span class="lineNum"> 779 </span> : * @brief %Deque assignment operator.
+<span class="lineNum"> 780 </span> : * @param x A %deque of identical element and allocator types.
+<span class="lineNum"> 781 </span> : *
+<span class="lineNum"> 782 </span> : * All the elements of @a x are copied, but unlike the copy constructor,
+<span class="lineNum"> 783 </span> : * the allocator object is not copied.
+<span class="lineNum"> 784 </span> : */
+<span class="lineNum"> 785 </span> : deque&amp;
+<span class="lineNum"> 786 </span> : operator=(const deque&amp; __x);
+<span class="lineNum"> 787 </span> :
+<span class="lineNum"> 788 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 789 </span> : /**
+<span class="lineNum"> 790 </span> : * @brief %Deque move assignment operator.
+<span class="lineNum"> 791 </span> : * @param x A %deque of identical element and allocator types.
+<span class="lineNum"> 792 </span> : *
+<span class="lineNum"> 793 </span> : * The contents of @a x are moved into this deque (without copying).
+<span class="lineNum"> 794 </span> : * @a x is a valid, but unspecified %deque.
+<span class="lineNum"> 795 </span> : */
+<span class="lineNum"> 796 </span> : deque&amp;
+<span class="lineNum"> 797 </span> : operator=(deque&amp;&amp; __x)
+<span class="lineNum"> 798 </span> : {
+<span class="lineNum"> 799 </span> : // NB: DR 675.
+<span class="lineNum"> 800 </span> : this-&gt;clear();
+<span class="lineNum"> 801 </span> : this-&gt;swap(__x);
+<span class="lineNum"> 802 </span> : return *this;
+<span class="lineNum"> 803 </span> : }
+<span class="lineNum"> 804 </span> : #endif
+<span class="lineNum"> 805 </span> :
+<span class="lineNum"> 806 </span> : /**
+<span class="lineNum"> 807 </span> : * @brief Assigns a given value to a %deque.
+<span class="lineNum"> 808 </span> : * @param n Number of elements to be assigned.
+<span class="lineNum"> 809 </span> : * @param val Value to be assigned.
+<span class="lineNum"> 810 </span> : *
+<span class="lineNum"> 811 </span> : * This function fills a %deque with @a n copies of the given
+<span class="lineNum"> 812 </span> : * value. Note that the assignment completely changes the
+<span class="lineNum"> 813 </span> : * %deque and that the resulting %deque's size is the same as
+<span class="lineNum"> 814 </span> : * the number of elements assigned. Old data may be lost.
+<span class="lineNum"> 815 </span> : */
+<span class="lineNum"> 816 </span> : void
+<span class="lineNum"> 817 </span> : assign(size_type __n, const value_type&amp; __val)
+<span class="lineNum"> 818 </span> : { _M_fill_assign(__n, __val); }
+<span class="lineNum"> 819 </span> :
+<span class="lineNum"> 820 </span> : /**
+<span class="lineNum"> 821 </span> : * @brief Assigns a range to a %deque.
+<span class="lineNum"> 822 </span> : * @param first An input iterator.
+<span class="lineNum"> 823 </span> : * @param last An input iterator.
+<span class="lineNum"> 824 </span> : *
+<span class="lineNum"> 825 </span> : * This function fills a %deque with copies of the elements in the
+<span class="lineNum"> 826 </span> : * range [first,last).
+<span class="lineNum"> 827 </span> : *
+<span class="lineNum"> 828 </span> : * Note that the assignment completely changes the %deque and that the
+<span class="lineNum"> 829 </span> : * resulting %deque's size is the same as the number of elements
+<span class="lineNum"> 830 </span> : * assigned. Old data may be lost.
+<span class="lineNum"> 831 </span> : */
+<span class="lineNum"> 832 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 833 </span> : void
+<span class="lineNum"> 834 </span> : assign(_InputIterator __first, _InputIterator __last)
+<span class="lineNum"> 835 </span> : {
+<span class="lineNum"> 836 </span> : typedef typename std::__is_integer&lt;_InputIterator&gt;::__type _Integral;
+<span class="lineNum"> 837 </span> : _M_assign_dispatch(__first, __last, _Integral());
+<span class="lineNum"> 838 </span> : }
+<span class="lineNum"> 839 </span> :
+<span class="lineNum"> 840 </span> : /// Get a copy of the memory allocation object.
+<span class="lineNum"> 841 </span> : allocator_type
+<span class="lineNum"> 842 </span> : get_allocator() const
+<span class="lineNum"> 843 </span> : { return _Base::get_allocator(); }
+<span class="lineNum"> 844 </span> :
+<span class="lineNum"> 845 </span> : // iterators
+<span class="lineNum"> 846 </span> : /**
+<span class="lineNum"> 847 </span> : * Returns a read/write iterator that points to the first element in the
+<span class="lineNum"> 848 </span> : * %deque. Iteration is done in ordinary element order.
+<span class="lineNum"> 849 </span> : */
+<span class="lineNum"> 850 </span> : iterator
+<span class="lineNum"> 851 </span><span class="lineCov"> 7800 : begin()</span>
+<span class="lineNum"> 852 </span><span class="lineCov"> 7800 : { return this-&gt;_M_impl._M_start; }</span>
+<span class="lineNum"> 853 </span> :
+<span class="lineNum"> 854 </span> : /**
+<span class="lineNum"> 855 </span> : * Returns a read-only (constant) iterator that points to the first
+<span class="lineNum"> 856 </span> : * element in the %deque. Iteration is done in ordinary element order.
+<span class="lineNum"> 857 </span> : */
+<span class="lineNum"> 858 </span> : const_iterator
+<span class="lineNum"> 859 </span><span class="lineCov"> 17 : begin() const</span>
+<span class="lineNum"> 860 </span><span class="lineCov"> 17 : { return this-&gt;_M_impl._M_start; }</span>
+<span class="lineNum"> 861 </span> :
+<span class="lineNum"> 862 </span> : /**
+<span class="lineNum"> 863 </span> : * Returns a read/write iterator that points one past the last
+<span class="lineNum"> 864 </span> : * element in the %deque. Iteration is done in ordinary
+<span class="lineNum"> 865 </span> : * element order.
+<span class="lineNum"> 866 </span> : */
+<span class="lineNum"> 867 </span> : iterator
+<span class="lineNum"> 868 </span><span class="lineCov"> 10575 : end()</span>
+<span class="lineNum"> 869 </span><span class="lineCov"> 10575 : { return this-&gt;_M_impl._M_finish; }</span>
+<span class="lineNum"> 870 </span> :
+<span class="lineNum"> 871 </span> : /**
+<span class="lineNum"> 872 </span> : * Returns a read-only (constant) iterator that points one past
+<span class="lineNum"> 873 </span> : * the last element in the %deque. Iteration is done in
+<span class="lineNum"> 874 </span> : * ordinary element order.
+<span class="lineNum"> 875 </span> : */
+<span class="lineNum"> 876 </span> : const_iterator
+<span class="lineNum"> 877 </span><span class="lineCov"> 17 : end() const</span>
+<span class="lineNum"> 878 </span><span class="lineCov"> 17 : { return this-&gt;_M_impl._M_finish; }</span>
+<span class="lineNum"> 879 </span> :
+<span class="lineNum"> 880 </span> : /**
+<span class="lineNum"> 881 </span> : * Returns a read/write reverse iterator that points to the
+<span class="lineNum"> 882 </span> : * last element in the %deque. Iteration is done in reverse
+<span class="lineNum"> 883 </span> : * element order.
+<span class="lineNum"> 884 </span> : */
+<span class="lineNum"> 885 </span> : reverse_iterator
+<span class="lineNum"> 886 </span> : rbegin()
+<span class="lineNum"> 887 </span> : { return reverse_iterator(this-&gt;_M_impl._M_finish); }
+<span class="lineNum"> 888 </span> :
+<span class="lineNum"> 889 </span> : /**
+<span class="lineNum"> 890 </span> : * Returns a read-only (constant) reverse iterator that points
+<span class="lineNum"> 891 </span> : * to the last element in the %deque. Iteration is done in
+<span class="lineNum"> 892 </span> : * reverse element order.
+<span class="lineNum"> 893 </span> : */
+<span class="lineNum"> 894 </span> : const_reverse_iterator
+<span class="lineNum"> 895 </span> : rbegin() const
+<span class="lineNum"> 896 </span> : { return const_reverse_iterator(this-&gt;_M_impl._M_finish); }
+<span class="lineNum"> 897 </span> :
+<span class="lineNum"> 898 </span> : /**
+<span class="lineNum"> 899 </span> : * Returns a read/write reverse iterator that points to one
+<span class="lineNum"> 900 </span> : * before the first element in the %deque. Iteration is done
+<span class="lineNum"> 901 </span> : * in reverse element order.
+<span class="lineNum"> 902 </span> : */
+<span class="lineNum"> 903 </span> : reverse_iterator
+<span class="lineNum"> 904 </span> : rend()
+<span class="lineNum"> 905 </span> : { return reverse_iterator(this-&gt;_M_impl._M_start); }
+<span class="lineNum"> 906 </span> :
+<span class="lineNum"> 907 </span> : /**
+<span class="lineNum"> 908 </span> : * Returns a read-only (constant) reverse iterator that points
+<span class="lineNum"> 909 </span> : * to one before the first element in the %deque. Iteration is
+<span class="lineNum"> 910 </span> : * done in reverse element order.
+<span class="lineNum"> 911 </span> : */
+<span class="lineNum"> 912 </span> : const_reverse_iterator
+<span class="lineNum"> 913 </span> : rend() const
+<span class="lineNum"> 914 </span> : { return const_reverse_iterator(this-&gt;_M_impl._M_start); }
+<span class="lineNum"> 915 </span> :
+<span class="lineNum"> 916 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 917 </span> : /**
+<span class="lineNum"> 918 </span> : * Returns a read-only (constant) iterator that points to the first
+<span class="lineNum"> 919 </span> : * element in the %deque. Iteration is done in ordinary element order.
+<span class="lineNum"> 920 </span> : */
+<span class="lineNum"> 921 </span> : const_iterator
+<span class="lineNum"> 922 </span> : cbegin() const
+<span class="lineNum"> 923 </span> : { return this-&gt;_M_impl._M_start; }
+<span class="lineNum"> 924 </span> :
+<span class="lineNum"> 925 </span> : /**
+<span class="lineNum"> 926 </span> : * Returns a read-only (constant) iterator that points one past
+<span class="lineNum"> 927 </span> : * the last element in the %deque. Iteration is done in
+<span class="lineNum"> 928 </span> : * ordinary element order.
+<span class="lineNum"> 929 </span> : */
+<span class="lineNum"> 930 </span> : const_iterator
+<span class="lineNum"> 931 </span> : cend() const
+<span class="lineNum"> 932 </span> : { return this-&gt;_M_impl._M_finish; }
+<span class="lineNum"> 933 </span> :
+<span class="lineNum"> 934 </span> : /**
+<span class="lineNum"> 935 </span> : * Returns a read-only (constant) reverse iterator that points
+<span class="lineNum"> 936 </span> : * to the last element in the %deque. Iteration is done in
+<span class="lineNum"> 937 </span> : * reverse element order.
+<span class="lineNum"> 938 </span> : */
+<span class="lineNum"> 939 </span> : const_reverse_iterator
+<span class="lineNum"> 940 </span> : crbegin() const
+<span class="lineNum"> 941 </span> : { return const_reverse_iterator(this-&gt;_M_impl._M_finish); }
+<span class="lineNum"> 942 </span> :
+<span class="lineNum"> 943 </span> : /**
+<span class="lineNum"> 944 </span> : * Returns a read-only (constant) reverse iterator that points
+<span class="lineNum"> 945 </span> : * to one before the first element in the %deque. Iteration is
+<span class="lineNum"> 946 </span> : * done in reverse element order.
+<span class="lineNum"> 947 </span> : */
+<span class="lineNum"> 948 </span> : const_reverse_iterator
+<span class="lineNum"> 949 </span> : crend() const
+<span class="lineNum"> 950 </span> : { return const_reverse_iterator(this-&gt;_M_impl._M_start); }
+<span class="lineNum"> 951 </span> : #endif
+<span class="lineNum"> 952 </span> :
+<span class="lineNum"> 953 </span> : // [23.2.1.2] capacity
+<span class="lineNum"> 954 </span> : /** Returns the number of elements in the %deque. */
+<span class="lineNum"> 955 </span> : size_type
+<span class="lineNum"> 956 </span><span class="lineCov"> 111 : size() const</span>
+<span class="lineNum"> 957 </span><span class="lineCov"> 111 : { return this-&gt;_M_impl._M_finish - this-&gt;_M_impl._M_start; }</span>
+<span class="lineNum"> 958 </span> :
+<span class="lineNum"> 959 </span> : /** Returns the size() of the largest possible %deque. */
+<span class="lineNum"> 960 </span> : size_type
+<span class="lineNum"> 961 </span><span class="lineNoCov"> 0 : max_size() const</span>
+<span class="lineNum"> 962 </span><span class="lineNoCov"> 0 : { return _M_get_Tp_allocator().max_size(); }</span>
+<span class="lineNum"> 963 </span> :
+<span class="lineNum"> 964 </span> : /**
+<span class="lineNum"> 965 </span> : * @brief Resizes the %deque to the specified number of elements.
+<span class="lineNum"> 966 </span> : * @param new_size Number of elements the %deque should contain.
+<span class="lineNum"> 967 </span> : * @param x Data with which new elements should be populated.
+<span class="lineNum"> 968 </span> : *
+<span class="lineNum"> 969 </span> : * This function will %resize the %deque to the specified
+<span class="lineNum"> 970 </span> : * number of elements. If the number is smaller than the
+<span class="lineNum"> 971 </span> : * %deque's current size the %deque is truncated, otherwise the
+<span class="lineNum"> 972 </span> : * %deque is extended and new elements are populated with given
+<span class="lineNum"> 973 </span> : * data.
+<span class="lineNum"> 974 </span> : */
+<span class="lineNum"> 975 </span> : void
+<span class="lineNum"> 976 </span> : resize(size_type __new_size, value_type __x = value_type())
+<span class="lineNum"> 977 </span> : {
+<span class="lineNum"> 978 </span> : const size_type __len = size();
+<span class="lineNum"> 979 </span> : if (__new_size &lt; __len)
+<span class="lineNum"> 980 </span> : _M_erase_at_end(this-&gt;_M_impl._M_start + difference_type(__new_size));
+<span class="lineNum"> 981 </span> : else
+<span class="lineNum"> 982 </span> : insert(this-&gt;_M_impl._M_finish, __new_size - __len, __x);
+<span class="lineNum"> 983 </span> : }
+<span class="lineNum"> 984 </span> :
+<span class="lineNum"> 985 </span> : /**
+<span class="lineNum"> 986 </span> : * Returns true if the %deque is empty. (Thus begin() would
+<span class="lineNum"> 987 </span> : * equal end().)
+<span class="lineNum"> 988 </span> : */
+<span class="lineNum"> 989 </span> : bool
+<span class="lineNum"> 990 </span><span class="lineCov"> 32 : empty() const</span>
+<span class="lineNum"> 991 </span><span class="lineCov"> 32 : { return this-&gt;_M_impl._M_finish == this-&gt;_M_impl._M_start; }</span>
+<span class="lineNum"> 992 </span> :
+<span class="lineNum"> 993 </span> : // element access
+<span class="lineNum"> 994 </span> : /**
+<span class="lineNum"> 995 </span> : * @brief Subscript access to the data contained in the %deque.
+<span class="lineNum"> 996 </span> : * @param n The index of the element for which data should be
+<span class="lineNum"> 997 </span> : * accessed.
+<span class="lineNum"> 998 </span> : * @return Read/write reference to data.
+<span class="lineNum"> 999 </span> : *
+<span class="lineNum"> 1000 </span> : * This operator allows for easy, array-style, data access.
+<span class="lineNum"> 1001 </span> : * Note that data access with this operator is unchecked and
+<span class="lineNum"> 1002 </span> : * out_of_range lookups are not defined. (For checked lookups
+<span class="lineNum"> 1003 </span> : * see at().)
+<span class="lineNum"> 1004 </span> : */
+<span class="lineNum"> 1005 </span> : reference
+<span class="lineNum"> 1006 </span> : operator[](size_type __n)
+<span class="lineNum"> 1007 </span> : { return this-&gt;_M_impl._M_start[difference_type(__n)]; }
+<span class="lineNum"> 1008 </span> :
+<span class="lineNum"> 1009 </span> : /**
+<span class="lineNum"> 1010 </span> : * @brief Subscript access to the data contained in the %deque.
+<span class="lineNum"> 1011 </span> : * @param n The index of the element for which data should be
+<span class="lineNum"> 1012 </span> : * accessed.
+<span class="lineNum"> 1013 </span> : * @return Read-only (constant) reference to data.
+<span class="lineNum"> 1014 </span> : *
+<span class="lineNum"> 1015 </span> : * This operator allows for easy, array-style, data access.
+<span class="lineNum"> 1016 </span> : * Note that data access with this operator is unchecked and
+<span class="lineNum"> 1017 </span> : * out_of_range lookups are not defined. (For checked lookups
+<span class="lineNum"> 1018 </span> : * see at().)
+<span class="lineNum"> 1019 </span> : */
+<span class="lineNum"> 1020 </span> : const_reference
+<span class="lineNum"> 1021 </span> : operator[](size_type __n) const
+<span class="lineNum"> 1022 </span> : { return this-&gt;_M_impl._M_start[difference_type(__n)]; }
+<span class="lineNum"> 1023 </span> :
+<span class="lineNum"> 1024 </span> : protected:
+<span class="lineNum"> 1025 </span> : /// Safety check used only from at().
+<span class="lineNum"> 1026 </span> : void
+<span class="lineNum"> 1027 </span> : _M_range_check(size_type __n) const
+<span class="lineNum"> 1028 </span> : {
+<span class="lineNum"> 1029 </span> : if (__n &gt;= this-&gt;size())
+<span class="lineNum"> 1030 </span> : __throw_out_of_range(__N(&quot;deque::_M_range_check&quot;));
+<span class="lineNum"> 1031 </span> : }
+<span class="lineNum"> 1032 </span> :
+<span class="lineNum"> 1033 </span> : public:
+<span class="lineNum"> 1034 </span> : /**
+<span class="lineNum"> 1035 </span> : * @brief Provides access to the data contained in the %deque.
+<span class="lineNum"> 1036 </span> : * @param n The index of the element for which data should be
+<span class="lineNum"> 1037 </span> : * accessed.
+<span class="lineNum"> 1038 </span> : * @return Read/write reference to data.
+<span class="lineNum"> 1039 </span> : * @throw std::out_of_range If @a n is an invalid index.
+<span class="lineNum"> 1040 </span> : *
+<span class="lineNum"> 1041 </span> : * This function provides for safer data access. The parameter
+<span class="lineNum"> 1042 </span> : * is first checked that it is in the range of the deque. The
+<span class="lineNum"> 1043 </span> : * function throws out_of_range if the check fails.
+<span class="lineNum"> 1044 </span> : */
+<span class="lineNum"> 1045 </span> : reference
+<span class="lineNum"> 1046 </span> : at(size_type __n)
+<span class="lineNum"> 1047 </span> : {
+<span class="lineNum"> 1048 </span> : _M_range_check(__n);
+<span class="lineNum"> 1049 </span> : return (*this)[__n];
+<span class="lineNum"> 1050 </span> : }
+<span class="lineNum"> 1051 </span> :
+<span class="lineNum"> 1052 </span> : /**
+<span class="lineNum"> 1053 </span> : * @brief Provides access to the data contained in the %deque.
+<span class="lineNum"> 1054 </span> : * @param n The index of the element for which data should be
+<span class="lineNum"> 1055 </span> : * accessed.
+<span class="lineNum"> 1056 </span> : * @return Read-only (constant) reference to data.
+<span class="lineNum"> 1057 </span> : * @throw std::out_of_range If @a n is an invalid index.
+<span class="lineNum"> 1058 </span> : *
+<span class="lineNum"> 1059 </span> : * This function provides for safer data access. The parameter is first
+<span class="lineNum"> 1060 </span> : * checked that it is in the range of the deque. The function throws
+<span class="lineNum"> 1061 </span> : * out_of_range if the check fails.
+<span class="lineNum"> 1062 </span> : */
+<span class="lineNum"> 1063 </span> : const_reference
+<span class="lineNum"> 1064 </span> : at(size_type __n) const
+<span class="lineNum"> 1065 </span> : {
+<span class="lineNum"> 1066 </span> : _M_range_check(__n);
+<span class="lineNum"> 1067 </span> : return (*this)[__n];
+<span class="lineNum"> 1068 </span> : }
+<span class="lineNum"> 1069 </span> :
+<span class="lineNum"> 1070 </span> : /**
+<span class="lineNum"> 1071 </span> : * Returns a read/write reference to the data at the first
+<span class="lineNum"> 1072 </span> : * element of the %deque.
+<span class="lineNum"> 1073 </span> : */
+<span class="lineNum"> 1074 </span> : reference
+<span class="lineNum"> 1075 </span> : front()
+<span class="lineNum"> 1076 </span> : { return *begin(); }
+<span class="lineNum"> 1077 </span> :
+<span class="lineNum"> 1078 </span> : /**
+<span class="lineNum"> 1079 </span> : * Returns a read-only (constant) reference to the data at the first
+<span class="lineNum"> 1080 </span> : * element of the %deque.
+<span class="lineNum"> 1081 </span> : */
+<span class="lineNum"> 1082 </span> : const_reference
+<span class="lineNum"> 1083 </span> : front() const
+<span class="lineNum"> 1084 </span> : { return *begin(); }
+<span class="lineNum"> 1085 </span> :
+<span class="lineNum"> 1086 </span> : /**
+<span class="lineNum"> 1087 </span> : * Returns a read/write reference to the data at the last element of the
+<span class="lineNum"> 1088 </span> : * %deque.
+<span class="lineNum"> 1089 </span> : */
+<span class="lineNum"> 1090 </span> : reference
+<span class="lineNum"> 1091 </span><span class="lineCov"> 39 : back()</span>
+<span class="lineNum"> 1092 </span> : {
+<span class="lineNum"> 1093 </span><span class="lineCov"> 39 : iterator __tmp = end();</span>
+<span class="lineNum"> 1094 </span><span class="lineCov"> 39 : --__tmp;</span>
+<span class="lineNum"> 1095 </span><span class="lineCov"> 39 : return *__tmp;</span>
+<span class="lineNum"> 1096 </span> : }
+<span class="lineNum"> 1097 </span> :
+<span class="lineNum"> 1098 </span> : /**
+<span class="lineNum"> 1099 </span> : * Returns a read-only (constant) reference to the data at the last
+<span class="lineNum"> 1100 </span> : * element of the %deque.
+<span class="lineNum"> 1101 </span> : */
+<span class="lineNum"> 1102 </span> : const_reference
+<span class="lineNum"> 1103 </span> : back() const
+<span class="lineNum"> 1104 </span> : {
+<span class="lineNum"> 1105 </span> : const_iterator __tmp = end();
+<span class="lineNum"> 1106 </span> : --__tmp;
+<span class="lineNum"> 1107 </span> : return *__tmp;
+<span class="lineNum"> 1108 </span> : }
+<span class="lineNum"> 1109 </span> :
+<span class="lineNum"> 1110 </span> : // [23.2.1.2] modifiers
+<span class="lineNum"> 1111 </span> : /**
+<span class="lineNum"> 1112 </span> : * @brief Add data to the front of the %deque.
+<span class="lineNum"> 1113 </span> : * @param x Data to be added.
+<span class="lineNum"> 1114 </span> : *
+<span class="lineNum"> 1115 </span> : * This is a typical stack operation. The function creates an
+<span class="lineNum"> 1116 </span> : * element at the front of the %deque and assigns the given
+<span class="lineNum"> 1117 </span> : * data to it. Due to the nature of a %deque this operation
+<span class="lineNum"> 1118 </span> : * can be done in constant time.
+<span class="lineNum"> 1119 </span> : */
+<span class="lineNum"> 1120 </span> : #ifndef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 1121 </span> : void
+<span class="lineNum"> 1122 </span> : push_front(const value_type&amp; __x)
+<span class="lineNum"> 1123 </span> : {
+<span class="lineNum"> 1124 </span> : if (this-&gt;_M_impl._M_start._M_cur != this-&gt;_M_impl._M_start._M_first)
+<span class="lineNum"> 1125 </span> : {
+<span class="lineNum"> 1126 </span> : this-&gt;_M_impl.construct(this-&gt;_M_impl._M_start._M_cur - 1, __x);
+<span class="lineNum"> 1127 </span> : --this-&gt;_M_impl._M_start._M_cur;
+<span class="lineNum"> 1128 </span> : }
+<span class="lineNum"> 1129 </span> : else
+<span class="lineNum"> 1130 </span> : _M_push_front_aux(__x);
+<span class="lineNum"> 1131 </span> : }
+<span class="lineNum"> 1132 </span> : #else
+<span class="lineNum"> 1133 </span> : template&lt;typename... _Args&gt;
+<span class="lineNum"> 1134 </span> : void
+<span class="lineNum"> 1135 </span> : push_front(_Args&amp;&amp;... __args)
+<span class="lineNum"> 1136 </span> : {
+<span class="lineNum"> 1137 </span> : if (this-&gt;_M_impl._M_start._M_cur != this-&gt;_M_impl._M_start._M_first)
+<span class="lineNum"> 1138 </span> : {
+<span class="lineNum"> 1139 </span> : this-&gt;_M_impl.construct(this-&gt;_M_impl._M_start._M_cur - 1,
+<span class="lineNum"> 1140 </span> : std::forward&lt;_Args&gt;(__args)...);
+<span class="lineNum"> 1141 </span> : --this-&gt;_M_impl._M_start._M_cur;
+<span class="lineNum"> 1142 </span> : }
+<span class="lineNum"> 1143 </span> : else
+<span class="lineNum"> 1144 </span> : _M_push_front_aux(std::forward&lt;_Args&gt;(__args)...);
+<span class="lineNum"> 1145 </span> : }
+<span class="lineNum"> 1146 </span> : #endif
+<span class="lineNum"> 1147 </span> :
+<span class="lineNum"> 1148 </span> : /**
+<span class="lineNum"> 1149 </span> : * @brief Add data to the end of the %deque.
+<span class="lineNum"> 1150 </span> : * @param x Data to be added.
+<span class="lineNum"> 1151 </span> : *
+<span class="lineNum"> 1152 </span> : * This is a typical stack operation. The function creates an
+<span class="lineNum"> 1153 </span> : * element at the end of the %deque and assigns the given data
+<span class="lineNum"> 1154 </span> : * to it. Due to the nature of a %deque this operation can be
+<span class="lineNum"> 1155 </span> : * done in constant time.
+<span class="lineNum"> 1156 </span> : */
+<span class="lineNum"> 1157 </span> : #ifndef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 1158 </span> : void
+<span class="lineNum"> 1159 </span><span class="lineCov"> 12012 : push_back(const value_type&amp; __x)</span>
+<span class="lineNum"> 1160 </span> : {
+<span class="lineNum"> 1161 </span><span class="lineCov"> 12012 : if (this-&gt;_M_impl._M_finish._M_cur</span>
+<span class="lineNum"> 1162 </span> : != this-&gt;_M_impl._M_finish._M_last - 1)
+<span class="lineNum"> 1163 </span> : {
+<span class="lineNum"> 1164 </span><span class="lineCov"> 11999 : this-&gt;_M_impl.construct(this-&gt;_M_impl._M_finish._M_cur, __x);</span>
+<span class="lineNum"> 1165 </span><span class="lineCov"> 11999 : ++this-&gt;_M_impl._M_finish._M_cur;</span>
+<span class="lineNum"> 1166 </span> : }
+<span class="lineNum"> 1167 </span> : else
+<span class="lineNum"> 1168 </span><span class="lineCov"> 13 : _M_push_back_aux(__x);</span>
+<span class="lineNum"> 1169 </span><span class="lineCov"> 12012 : }</span>
+<span class="lineNum"> 1170 </span> : #else
+<span class="lineNum"> 1171 </span> : template&lt;typename... _Args&gt;
+<span class="lineNum"> 1172 </span> : void
+<span class="lineNum"> 1173 </span> : push_back(_Args&amp;&amp;... __args)
+<span class="lineNum"> 1174 </span> : {
+<span class="lineNum"> 1175 </span> : if (this-&gt;_M_impl._M_finish._M_cur
+<span class="lineNum"> 1176 </span> : != this-&gt;_M_impl._M_finish._M_last - 1)
+<span class="lineNum"> 1177 </span> : {
+<span class="lineNum"> 1178 </span> : this-&gt;_M_impl.construct(this-&gt;_M_impl._M_finish._M_cur,
+<span class="lineNum"> 1179 </span> : std::forward&lt;_Args&gt;(__args)...);
+<span class="lineNum"> 1180 </span> : ++this-&gt;_M_impl._M_finish._M_cur;
+<span class="lineNum"> 1181 </span> : }
+<span class="lineNum"> 1182 </span> : else
+<span class="lineNum"> 1183 </span> : _M_push_back_aux(std::forward&lt;_Args&gt;(__args)...);
+<span class="lineNum"> 1184 </span> : }
+<span class="lineNum"> 1185 </span> : #endif
+<span class="lineNum"> 1186 </span> :
+<span class="lineNum"> 1187 </span> : /**
+<span class="lineNum"> 1188 </span> : * @brief Removes first element.
+<span class="lineNum"> 1189 </span> : *
+<span class="lineNum"> 1190 </span> : * This is a typical stack operation. It shrinks the %deque by one.
+<span class="lineNum"> 1191 </span> : *
+<span class="lineNum"> 1192 </span> : * Note that no data is returned, and if the first element's data is
+<span class="lineNum"> 1193 </span> : * needed, it should be retrieved before pop_front() is called.
+<span class="lineNum"> 1194 </span> : */
+<span class="lineNum"> 1195 </span> : void
+<span class="lineNum"> 1196 </span> : pop_front()
+<span class="lineNum"> 1197 </span> : {
+<span class="lineNum"> 1198 </span> : if (this-&gt;_M_impl._M_start._M_cur
+<span class="lineNum"> 1199 </span> : != this-&gt;_M_impl._M_start._M_last - 1)
+<span class="lineNum"> 1200 </span> : {
+<span class="lineNum"> 1201 </span> : this-&gt;_M_impl.destroy(this-&gt;_M_impl._M_start._M_cur);
+<span class="lineNum"> 1202 </span> : ++this-&gt;_M_impl._M_start._M_cur;
+<span class="lineNum"> 1203 </span> : }
+<span class="lineNum"> 1204 </span> : else
+<span class="lineNum"> 1205 </span> : _M_pop_front_aux();
+<span class="lineNum"> 1206 </span> : }
+<span class="lineNum"> 1207 </span> :
+<span class="lineNum"> 1208 </span> : /**
+<span class="lineNum"> 1209 </span> : * @brief Removes last element.
+<span class="lineNum"> 1210 </span> : *
+<span class="lineNum"> 1211 </span> : * This is a typical stack operation. It shrinks the %deque by one.
+<span class="lineNum"> 1212 </span> : *
+<span class="lineNum"> 1213 </span> : * Note that no data is returned, and if the last element's data is
+<span class="lineNum"> 1214 </span> : * needed, it should be retrieved before pop_back() is called.
+<span class="lineNum"> 1215 </span> : */
+<span class="lineNum"> 1216 </span> : void
+<span class="lineNum"> 1217 </span><span class="lineCov"> 24 : pop_back()</span>
+<span class="lineNum"> 1218 </span> : {
+<span class="lineNum"> 1219 </span><span class="lineCov"> 24 : if (this-&gt;_M_impl._M_finish._M_cur</span>
+<span class="lineNum"> 1220 </span> : != this-&gt;_M_impl._M_finish._M_first)
+<span class="lineNum"> 1221 </span> : {
+<span class="lineNum"> 1222 </span><span class="lineCov"> 24 : --this-&gt;_M_impl._M_finish._M_cur;</span>
+<span class="lineNum"> 1223 </span><span class="lineCov"> 24 : this-&gt;_M_impl.destroy(this-&gt;_M_impl._M_finish._M_cur);</span>
+<span class="lineNum"> 1224 </span> : }
+<span class="lineNum"> 1225 </span> : else
+<span class="lineNum"> 1226 </span><span class="lineNoCov"> 0 : _M_pop_back_aux();</span>
+<span class="lineNum"> 1227 </span><span class="lineCov"> 24 : }</span>
+<span class="lineNum"> 1228 </span> :
+<span class="lineNum"> 1229 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 1230 </span> : /**
+<span class="lineNum"> 1231 </span> : * @brief Inserts an object in %deque before specified iterator.
+<span class="lineNum"> 1232 </span> : * @param position An iterator into the %deque.
+<span class="lineNum"> 1233 </span> : * @param args Arguments.
+<span class="lineNum"> 1234 </span> : * @return An iterator that points to the inserted data.
+<span class="lineNum"> 1235 </span> : *
+<span class="lineNum"> 1236 </span> : * This function will insert an object of type T constructed
+<span class="lineNum"> 1237 </span> : * with T(std::forward&lt;Args&gt;(args)...) before the specified location.
+<span class="lineNum"> 1238 </span> : */
+<span class="lineNum"> 1239 </span> : template&lt;typename... _Args&gt;
+<span class="lineNum"> 1240 </span> : iterator
+<span class="lineNum"> 1241 </span> : emplace(iterator __position, _Args&amp;&amp;... __args);
+<span class="lineNum"> 1242 </span> : #endif
+<span class="lineNum"> 1243 </span> :
+<span class="lineNum"> 1244 </span> : /**
+<span class="lineNum"> 1245 </span> : * @brief Inserts given value into %deque before specified iterator.
+<span class="lineNum"> 1246 </span> : * @param position An iterator into the %deque.
+<span class="lineNum"> 1247 </span> : * @param x Data to be inserted.
+<span class="lineNum"> 1248 </span> : * @return An iterator that points to the inserted data.
+<span class="lineNum"> 1249 </span> : *
+<span class="lineNum"> 1250 </span> : * This function will insert a copy of the given value before the
+<span class="lineNum"> 1251 </span> : * specified location.
+<span class="lineNum"> 1252 </span> : */
+<span class="lineNum"> 1253 </span> : iterator
+<span class="lineNum"> 1254 </span> : insert(iterator __position, const value_type&amp; __x);
+<span class="lineNum"> 1255 </span> :
+<span class="lineNum"> 1256 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 1257 </span> : /**
+<span class="lineNum"> 1258 </span> : * @brief Inserts given rvalue into %deque before specified iterator.
+<span class="lineNum"> 1259 </span> : * @param position An iterator into the %deque.
+<span class="lineNum"> 1260 </span> : * @param x Data to be inserted.
+<span class="lineNum"> 1261 </span> : * @return An iterator that points to the inserted data.
+<span class="lineNum"> 1262 </span> : *
+<span class="lineNum"> 1263 </span> : * This function will insert a copy of the given rvalue before the
+<span class="lineNum"> 1264 </span> : * specified location.
+<span class="lineNum"> 1265 </span> : */
+<span class="lineNum"> 1266 </span> : iterator
+<span class="lineNum"> 1267 </span> : insert(iterator __position, value_type&amp;&amp; __x)
+<span class="lineNum"> 1268 </span> : { return emplace(__position, std::move(__x)); }
+<span class="lineNum"> 1269 </span> : #endif
+<span class="lineNum"> 1270 </span> :
+<span class="lineNum"> 1271 </span> : /**
+<span class="lineNum"> 1272 </span> : * @brief Inserts a number of copies of given data into the %deque.
+<span class="lineNum"> 1273 </span> : * @param position An iterator into the %deque.
+<span class="lineNum"> 1274 </span> : * @param n Number of elements to be inserted.
+<span class="lineNum"> 1275 </span> : * @param x Data to be inserted.
+<span class="lineNum"> 1276 </span> : *
+<span class="lineNum"> 1277 </span> : * This function will insert a specified number of copies of the given
+<span class="lineNum"> 1278 </span> : * data before the location specified by @a position.
+<span class="lineNum"> 1279 </span> : */
+<span class="lineNum"> 1280 </span> : void
+<span class="lineNum"> 1281 </span> : insert(iterator __position, size_type __n, const value_type&amp; __x)
+<span class="lineNum"> 1282 </span> : { _M_fill_insert(__position, __n, __x); }
+<span class="lineNum"> 1283 </span> :
+<span class="lineNum"> 1284 </span> : /**
+<span class="lineNum"> 1285 </span> : * @brief Inserts a range into the %deque.
+<span class="lineNum"> 1286 </span> : * @param position An iterator into the %deque.
+<span class="lineNum"> 1287 </span> : * @param first An input iterator.
+<span class="lineNum"> 1288 </span> : * @param last An input iterator.
+<span class="lineNum"> 1289 </span> : *
+<span class="lineNum"> 1290 </span> : * This function will insert copies of the data in the range
+<span class="lineNum"> 1291 </span> : * [first,last) into the %deque before the location specified
+<span class="lineNum"> 1292 </span> : * by @a pos. This is known as &quot;range insert.&quot;
+<span class="lineNum"> 1293 </span> : */
+<span class="lineNum"> 1294 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 1295 </span> : void
+<span class="lineNum"> 1296 </span> : insert(iterator __position, _InputIterator __first,
+<span class="lineNum"> 1297 </span><span class="lineNoCov"> 0 : _InputIterator __last)</span>
+<span class="lineNum"> 1298 </span> : {
+<span class="lineNum"> 1299 </span> : // Check whether it's an integral type. If so, it's not an iterator.
+<span class="lineNum"> 1300 </span> : typedef typename std::__is_integer&lt;_InputIterator&gt;::__type _Integral;
+<span class="lineNum"> 1301 </span><span class="lineNoCov"> 0 : _M_insert_dispatch(__position, __first, __last, _Integral());</span>
+<span class="lineNum"> 1302 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 1303 </span> :
+<span class="lineNum"> 1304 </span> : /**
+<span class="lineNum"> 1305 </span> : * @brief Remove element at given position.
+<span class="lineNum"> 1306 </span> : * @param position Iterator pointing to element to be erased.
+<span class="lineNum"> 1307 </span> : * @return An iterator pointing to the next element (or end()).
+<span class="lineNum"> 1308 </span> : *
+<span class="lineNum"> 1309 </span> : * This function will erase the element at the given position and thus
+<span class="lineNum"> 1310 </span> : * shorten the %deque by one.
+<span class="lineNum"> 1311 </span> : *
+<span class="lineNum"> 1312 </span> : * The user is cautioned that
+<span class="lineNum"> 1313 </span> : * this function only erases the element, and that if the element is
+<span class="lineNum"> 1314 </span> : * itself a pointer, the pointed-to memory is not touched in any way.
+<span class="lineNum"> 1315 </span> : * Managing the pointer is the user's responsibility.
+<span class="lineNum"> 1316 </span> : */
+<span class="lineNum"> 1317 </span> : iterator
+<span class="lineNum"> 1318 </span> : erase(iterator __position);
+<span class="lineNum"> 1319 </span> :
+<span class="lineNum"> 1320 </span> : /**
+<span class="lineNum"> 1321 </span> : * @brief Remove a range of elements.
+<span class="lineNum"> 1322 </span> : * @param first Iterator pointing to the first element to be erased.
+<span class="lineNum"> 1323 </span> : * @param last Iterator pointing to one past the last element to be
+<span class="lineNum"> 1324 </span> : * erased.
+<span class="lineNum"> 1325 </span> : * @return An iterator pointing to the element pointed to by @a last
+<span class="lineNum"> 1326 </span> : * prior to erasing (or end()).
+<span class="lineNum"> 1327 </span> : *
+<span class="lineNum"> 1328 </span> : * This function will erase the elements in the range [first,last) and
+<span class="lineNum"> 1329 </span> : * shorten the %deque accordingly.
+<span class="lineNum"> 1330 </span> : *
+<span class="lineNum"> 1331 </span> : * The user is cautioned that
+<span class="lineNum"> 1332 </span> : * this function only erases the elements, and that if the elements
+<span class="lineNum"> 1333 </span> : * themselves are pointers, the pointed-to memory is not touched in any
+<span class="lineNum"> 1334 </span> : * way. Managing the pointer is the user's responsibility.
+<span class="lineNum"> 1335 </span> : */
+<span class="lineNum"> 1336 </span> : iterator
+<span class="lineNum"> 1337 </span> : erase(iterator __first, iterator __last);
+<span class="lineNum"> 1338 </span> :
+<span class="lineNum"> 1339 </span> : /**
+<span class="lineNum"> 1340 </span> : * @brief Swaps data with another %deque.
+<span class="lineNum"> 1341 </span> : * @param x A %deque of the same element and allocator types.
+<span class="lineNum"> 1342 </span> : *
+<span class="lineNum"> 1343 </span> : * This exchanges the elements between two deques in constant time.
+<span class="lineNum"> 1344 </span> : * (Four pointers, so it should be quite fast.)
+<span class="lineNum"> 1345 </span> : * Note that the global std::swap() function is specialized such that
+<span class="lineNum"> 1346 </span> : * std::swap(d1,d2) will feed to this function.
+<span class="lineNum"> 1347 </span> : */
+<span class="lineNum"> 1348 </span> : void
+<span class="lineNum"> 1349 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 1350 </span> : swap(deque&amp;&amp; __x)
+<span class="lineNum"> 1351 </span> : #else
+<span class="lineNum"> 1352 </span> : swap(deque&amp; __x)
+<span class="lineNum"> 1353 </span> : #endif
+<span class="lineNum"> 1354 </span> : {
+<span class="lineNum"> 1355 </span> : std::swap(this-&gt;_M_impl._M_start, __x._M_impl._M_start);
+<span class="lineNum"> 1356 </span> : std::swap(this-&gt;_M_impl._M_finish, __x._M_impl._M_finish);
+<span class="lineNum"> 1357 </span> : std::swap(this-&gt;_M_impl._M_map, __x._M_impl._M_map);
+<span class="lineNum"> 1358 </span> : std::swap(this-&gt;_M_impl._M_map_size, __x._M_impl._M_map_size);
+<span class="lineNum"> 1359 </span> :
+<span class="lineNum"> 1360 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 1361 </span> : // 431. Swapping containers with unequal allocators.
+<span class="lineNum"> 1362 </span> : std::__alloc_swap&lt;_Tp_alloc_type&gt;::_S_do_it(_M_get_Tp_allocator(),
+<span class="lineNum"> 1363 </span> : __x._M_get_Tp_allocator());
+<span class="lineNum"> 1364 </span> : }
+<span class="lineNum"> 1365 </span> :
+<span class="lineNum"> 1366 </span> : /**
+<span class="lineNum"> 1367 </span> : * Erases all the elements. Note that this function only erases the
+<span class="lineNum"> 1368 </span> : * elements, and that if the elements themselves are pointers, the
+<span class="lineNum"> 1369 </span> : * pointed-to memory is not touched in any way. Managing the pointer is
+<span class="lineNum"> 1370 </span> : * the user's responsibility.
+<span class="lineNum"> 1371 </span> : */
+<span class="lineNum"> 1372 </span> : void
+<span class="lineNum"> 1373 </span><span class="lineCov"> 922 : clear()</span>
+<span class="lineNum"> 1374 </span><span class="lineCov"> 922 : { _M_erase_at_end(begin()); }</span>
+<span class="lineNum"> 1375 </span> :
+<span class="lineNum"> 1376 </span> : protected:
+<span class="lineNum"> 1377 </span> : // Internal constructor functions follow.
+<span class="lineNum"> 1378 </span> :
+<span class="lineNum"> 1379 </span> : // called by the range constructor to implement [23.1.1]/9
+<span class="lineNum"> 1380 </span> :
+<span class="lineNum"> 1381 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 1382 </span> : // 438. Ambiguity in the &quot;do the right thing&quot; clause
+<span class="lineNum"> 1383 </span> : template&lt;typename _Integer&gt;
+<span class="lineNum"> 1384 </span> : void
+<span class="lineNum"> 1385 </span> : _M_initialize_dispatch(_Integer __n, _Integer __x, __true_type)
+<span class="lineNum"> 1386 </span> : {
+<span class="lineNum"> 1387 </span> : _M_initialize_map(static_cast&lt;size_type&gt;(__n));
+<span class="lineNum"> 1388 </span> : _M_fill_initialize(__x);
+<span class="lineNum"> 1389 </span> : }
+<span class="lineNum"> 1390 </span> :
+<span class="lineNum"> 1391 </span> : // called by the range constructor to implement [23.1.1]/9
+<span class="lineNum"> 1392 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 1393 </span> : void
+<span class="lineNum"> 1394 </span> : _M_initialize_dispatch(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 1395 </span> : __false_type)
+<span class="lineNum"> 1396 </span> : {
+<span class="lineNum"> 1397 </span> : typedef typename std::iterator_traits&lt;_InputIterator&gt;::
+<span class="lineNum"> 1398 </span> : iterator_category _IterCategory;
+<span class="lineNum"> 1399 </span> : _M_range_initialize(__first, __last, _IterCategory());
+<span class="lineNum"> 1400 </span> : }
+<span class="lineNum"> 1401 </span> :
+<span class="lineNum"> 1402 </span> : // called by the second initialize_dispatch above
+<span class="lineNum"> 1403 </span> : //@{
+<span class="lineNum"> 1404 </span> : /**
+<span class="lineNum"> 1405 </span> : * @brief Fills the deque with whatever is in [first,last).
+<span class="lineNum"> 1406 </span> : * @param first An input iterator.
+<span class="lineNum"> 1407 </span> : * @param last An input iterator.
+<span class="lineNum"> 1408 </span> : * @return Nothing.
+<span class="lineNum"> 1409 </span> : *
+<span class="lineNum"> 1410 </span> : * If the iterators are actually forward iterators (or better), then the
+<span class="lineNum"> 1411 </span> : * memory layout can be done all at once. Else we move forward using
+<span class="lineNum"> 1412 </span> : * push_back on each value from the iterator.
+<span class="lineNum"> 1413 </span> : */
+<span class="lineNum"> 1414 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 1415 </span> : void
+<span class="lineNum"> 1416 </span> : _M_range_initialize(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 1417 </span> : std::input_iterator_tag);
+<span class="lineNum"> 1418 </span> :
+<span class="lineNum"> 1419 </span> : // called by the second initialize_dispatch above
+<span class="lineNum"> 1420 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 1421 </span> : void
+<span class="lineNum"> 1422 </span> : _M_range_initialize(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 1423 </span> : std::forward_iterator_tag);
+<span class="lineNum"> 1424 </span> : //@}
+<span class="lineNum"> 1425 </span> :
+<span class="lineNum"> 1426 </span> : /**
+<span class="lineNum"> 1427 </span> : * @brief Fills the %deque with copies of value.
+<span class="lineNum"> 1428 </span> : * @param value Initial value.
+<span class="lineNum"> 1429 </span> : * @return Nothing.
+<span class="lineNum"> 1430 </span> : * @pre _M_start and _M_finish have already been initialized,
+<span class="lineNum"> 1431 </span> : * but none of the %deque's elements have yet been constructed.
+<span class="lineNum"> 1432 </span> : *
+<span class="lineNum"> 1433 </span> : * This function is called only when the user provides an explicit size
+<span class="lineNum"> 1434 </span> : * (with or without an explicit exemplar value).
+<span class="lineNum"> 1435 </span> : */
+<span class="lineNum"> 1436 </span> : void
+<span class="lineNum"> 1437 </span> : _M_fill_initialize(const value_type&amp; __value);
+<span class="lineNum"> 1438 </span> :
+<span class="lineNum"> 1439 </span> : // Internal assign functions follow. The *_aux functions do the actual
+<span class="lineNum"> 1440 </span> : // assignment work for the range versions.
+<span class="lineNum"> 1441 </span> :
+<span class="lineNum"> 1442 </span> : // called by the range assign to implement [23.1.1]/9
+<span class="lineNum"> 1443 </span> :
+<span class="lineNum"> 1444 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 1445 </span> : // 438. Ambiguity in the &quot;do the right thing&quot; clause
+<span class="lineNum"> 1446 </span> : template&lt;typename _Integer&gt;
+<span class="lineNum"> 1447 </span> : void
+<span class="lineNum"> 1448 </span> : _M_assign_dispatch(_Integer __n, _Integer __val, __true_type)
+<span class="lineNum"> 1449 </span> : { _M_fill_assign(__n, __val); }
+<span class="lineNum"> 1450 </span> :
+<span class="lineNum"> 1451 </span> : // called by the range assign to implement [23.1.1]/9
+<span class="lineNum"> 1452 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 1453 </span> : void
+<span class="lineNum"> 1454 </span> : _M_assign_dispatch(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 1455 </span> : __false_type)
+<span class="lineNum"> 1456 </span> : {
+<span class="lineNum"> 1457 </span> : typedef typename std::iterator_traits&lt;_InputIterator&gt;::
+<span class="lineNum"> 1458 </span> : iterator_category _IterCategory;
+<span class="lineNum"> 1459 </span> : _M_assign_aux(__first, __last, _IterCategory());
+<span class="lineNum"> 1460 </span> : }
+<span class="lineNum"> 1461 </span> :
+<span class="lineNum"> 1462 </span> : // called by the second assign_dispatch above
+<span class="lineNum"> 1463 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 1464 </span> : void
+<span class="lineNum"> 1465 </span> : _M_assign_aux(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 1466 </span> : std::input_iterator_tag);
+<span class="lineNum"> 1467 </span> :
+<span class="lineNum"> 1468 </span> : // called by the second assign_dispatch above
+<span class="lineNum"> 1469 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 1470 </span> : void
+<span class="lineNum"> 1471 </span> : _M_assign_aux(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 1472 </span> : std::forward_iterator_tag)
+<span class="lineNum"> 1473 </span> : {
+<span class="lineNum"> 1474 </span> : const size_type __len = std::distance(__first, __last);
+<span class="lineNum"> 1475 </span> : if (__len &gt; size())
+<span class="lineNum"> 1476 </span> : {
+<span class="lineNum"> 1477 </span> : _ForwardIterator __mid = __first;
+<span class="lineNum"> 1478 </span> : std::advance(__mid, size());
+<span class="lineNum"> 1479 </span> : std::copy(__first, __mid, begin());
+<span class="lineNum"> 1480 </span> : insert(end(), __mid, __last);
+<span class="lineNum"> 1481 </span> : }
+<span class="lineNum"> 1482 </span> : else
+<span class="lineNum"> 1483 </span> : _M_erase_at_end(std::copy(__first, __last, begin()));
+<span class="lineNum"> 1484 </span> : }
+<span class="lineNum"> 1485 </span> :
+<span class="lineNum"> 1486 </span> : // Called by assign(n,t), and the range assign when it turns out
+<span class="lineNum"> 1487 </span> : // to be the same thing.
+<span class="lineNum"> 1488 </span> : void
+<span class="lineNum"> 1489 </span> : _M_fill_assign(size_type __n, const value_type&amp; __val)
+<span class="lineNum"> 1490 </span> : {
+<span class="lineNum"> 1491 </span> : if (__n &gt; size())
+<span class="lineNum"> 1492 </span> : {
+<span class="lineNum"> 1493 </span> : std::fill(begin(), end(), __val);
+<span class="lineNum"> 1494 </span> : insert(end(), __n - size(), __val);
+<span class="lineNum"> 1495 </span> : }
+<span class="lineNum"> 1496 </span> : else
+<span class="lineNum"> 1497 </span> : {
+<span class="lineNum"> 1498 </span> : _M_erase_at_end(begin() + difference_type(__n));
+<span class="lineNum"> 1499 </span> : std::fill(begin(), end(), __val);
+<span class="lineNum"> 1500 </span> : }
+<span class="lineNum"> 1501 </span> : }
+<span class="lineNum"> 1502 </span> :
+<span class="lineNum"> 1503 </span> : //@{
+<span class="lineNum"> 1504 </span> : /// Helper functions for push_* and pop_*.
+<span class="lineNum"> 1505 </span> : #ifndef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 1506 </span> : void _M_push_back_aux(const value_type&amp;);
+<span class="lineNum"> 1507 </span> :
+<span class="lineNum"> 1508 </span> : void _M_push_front_aux(const value_type&amp;);
+<span class="lineNum"> 1509 </span> : #else
+<span class="lineNum"> 1510 </span> : template&lt;typename... _Args&gt;
+<span class="lineNum"> 1511 </span> : void _M_push_back_aux(_Args&amp;&amp;... __args);
+<span class="lineNum"> 1512 </span> :
+<span class="lineNum"> 1513 </span> : template&lt;typename... _Args&gt;
+<span class="lineNum"> 1514 </span> : void _M_push_front_aux(_Args&amp;&amp;... __args);
+<span class="lineNum"> 1515 </span> : #endif
+<span class="lineNum"> 1516 </span> :
+<span class="lineNum"> 1517 </span> : void _M_pop_back_aux();
+<span class="lineNum"> 1518 </span> :
+<span class="lineNum"> 1519 </span> : void _M_pop_front_aux();
+<span class="lineNum"> 1520 </span> : //@}
+<span class="lineNum"> 1521 </span> :
+<span class="lineNum"> 1522 </span> : // Internal insert functions follow. The *_aux functions do the actual
+<span class="lineNum"> 1523 </span> : // insertion work when all shortcuts fail.
+<span class="lineNum"> 1524 </span> :
+<span class="lineNum"> 1525 </span> : // called by the range insert to implement [23.1.1]/9
+<span class="lineNum"> 1526 </span> :
+<span class="lineNum"> 1527 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 1528 </span> : // 438. Ambiguity in the &quot;do the right thing&quot; clause
+<span class="lineNum"> 1529 </span> : template&lt;typename _Integer&gt;
+<span class="lineNum"> 1530 </span> : void
+<span class="lineNum"> 1531 </span> : _M_insert_dispatch(iterator __pos,
+<span class="lineNum"> 1532 </span> : _Integer __n, _Integer __x, __true_type)
+<span class="lineNum"> 1533 </span> : { _M_fill_insert(__pos, __n, __x); }
+<span class="lineNum"> 1534 </span> :
+<span class="lineNum"> 1535 </span> : // called by the range insert to implement [23.1.1]/9
+<span class="lineNum"> 1536 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 1537 </span> : void
+<span class="lineNum"> 1538 </span> : _M_insert_dispatch(iterator __pos,
+<span class="lineNum"> 1539 </span> : _InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 1540 </span><span class="lineNoCov"> 0 : __false_type)</span>
+<span class="lineNum"> 1541 </span> : {
+<span class="lineNum"> 1542 </span> : typedef typename std::iterator_traits&lt;_InputIterator&gt;::
+<span class="lineNum"> 1543 </span> : iterator_category _IterCategory;
+<span class="lineNum"> 1544 </span><span class="lineNoCov"> 0 : _M_range_insert_aux(__pos, __first, __last, _IterCategory());</span>
+<span class="lineNum"> 1545 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 1546 </span> :
+<span class="lineNum"> 1547 </span> : // called by the second insert_dispatch above
+<span class="lineNum"> 1548 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 1549 </span> : void
+<span class="lineNum"> 1550 </span> : _M_range_insert_aux(iterator __pos, _InputIterator __first,
+<span class="lineNum"> 1551 </span> : _InputIterator __last, std::input_iterator_tag);
+<span class="lineNum"> 1552 </span> :
+<span class="lineNum"> 1553 </span> : // called by the second insert_dispatch above
+<span class="lineNum"> 1554 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 1555 </span> : void
+<span class="lineNum"> 1556 </span> : _M_range_insert_aux(iterator __pos, _ForwardIterator __first,
+<span class="lineNum"> 1557 </span> : _ForwardIterator __last, std::forward_iterator_tag);
+<span class="lineNum"> 1558 </span> :
+<span class="lineNum"> 1559 </span> : // Called by insert(p,n,x), and the range insert when it turns out to be
+<span class="lineNum"> 1560 </span> : // the same thing. Can use fill functions in optimal situations,
+<span class="lineNum"> 1561 </span> : // otherwise passes off to insert_aux(p,n,x).
+<span class="lineNum"> 1562 </span> : void
+<span class="lineNum"> 1563 </span> : _M_fill_insert(iterator __pos, size_type __n, const value_type&amp; __x);
+<span class="lineNum"> 1564 </span> :
+<span class="lineNum"> 1565 </span> : // called by insert(p,x)
+<span class="lineNum"> 1566 </span> : #ifndef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 1567 </span> : iterator
+<span class="lineNum"> 1568 </span> : _M_insert_aux(iterator __pos, const value_type&amp; __x);
+<span class="lineNum"> 1569 </span> : #else
+<span class="lineNum"> 1570 </span> : template&lt;typename... _Args&gt;
+<span class="lineNum"> 1571 </span> : iterator
+<span class="lineNum"> 1572 </span> : _M_insert_aux(iterator __pos, _Args&amp;&amp;... __args);
+<span class="lineNum"> 1573 </span> : #endif
+<span class="lineNum"> 1574 </span> :
+<span class="lineNum"> 1575 </span> : // called by insert(p,n,x) via fill_insert
+<span class="lineNum"> 1576 </span> : void
+<span class="lineNum"> 1577 </span> : _M_insert_aux(iterator __pos, size_type __n, const value_type&amp; __x);
+<span class="lineNum"> 1578 </span> :
+<span class="lineNum"> 1579 </span> : // called by range_insert_aux for forward iterators
+<span class="lineNum"> 1580 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 1581 </span> : void
+<span class="lineNum"> 1582 </span> : _M_insert_aux(iterator __pos,
+<span class="lineNum"> 1583 </span> : _ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 1584 </span> : size_type __n);
+<span class="lineNum"> 1585 </span> :
+<span class="lineNum"> 1586 </span> :
+<span class="lineNum"> 1587 </span> : // Internal erase functions follow.
+<span class="lineNum"> 1588 </span> :
+<span class="lineNum"> 1589 </span> : void
+<span class="lineNum"> 1590 </span> : _M_destroy_data_aux(iterator __first, iterator __last);
+<span class="lineNum"> 1591 </span> :
+<span class="lineNum"> 1592 </span> : // Called by ~deque().
+<span class="lineNum"> 1593 </span> : // NB: Doesn't deallocate the nodes.
+<span class="lineNum"> 1594 </span> : template&lt;typename _Alloc1&gt;
+<span class="lineNum"> 1595 </span> : void
+<span class="lineNum"> 1596 </span> : _M_destroy_data(iterator __first, iterator __last, const _Alloc1&amp;)
+<span class="lineNum"> 1597 </span> : { _M_destroy_data_aux(__first, __last); }
+<span class="lineNum"> 1598 </span> :
+<span class="lineNum"> 1599 </span> : void
+<span class="lineNum"> 1600 </span> : _M_destroy_data(iterator __first, iterator __last,
+<span class="lineNum"> 1601 </span><span class="lineCov"> 1046 : const std::allocator&lt;_Tp&gt;&amp;)</span>
+<span class="lineNum"> 1602 </span> : {
+<span class="lineNum"> 1603 </span> : if (!__has_trivial_destructor(value_type))
+<span class="lineNum"> 1604 </span><span class="lineCov"> 26 : _M_destroy_data_aux(__first, __last);</span>
+<span class="lineNum"> 1605 </span><span class="lineCov"> 1046 : }</span>
+<span class="lineNum"> 1606 </span> :
+<span class="lineNum"> 1607 </span> : // Called by erase(q1, q2).
+<span class="lineNum"> 1608 </span> : void
+<span class="lineNum"> 1609 </span><span class="lineCov"> 90 : _M_erase_at_begin(iterator __pos)</span>
+<span class="lineNum"> 1610 </span> : {
+<span class="lineNum"> 1611 </span><span class="lineCov"> 90 : _M_destroy_data(begin(), __pos, _M_get_Tp_allocator());</span>
+<span class="lineNum"> 1612 </span><span class="lineCov"> 90 : _M_destroy_nodes(this-&gt;_M_impl._M_start._M_node, __pos._M_node);</span>
+<span class="lineNum"> 1613 </span><span class="lineCov"> 90 : this-&gt;_M_impl._M_start = __pos;</span>
+<span class="lineNum"> 1614 </span><span class="lineCov"> 90 : }</span>
+<span class="lineNum"> 1615 </span> :
+<span class="lineNum"> 1616 </span> : // Called by erase(q1, q2), resize(), clear(), _M_assign_aux,
+<span class="lineNum"> 1617 </span> : // _M_fill_assign, operator=.
+<span class="lineNum"> 1618 </span> : void
+<span class="lineNum"> 1619 </span><span class="lineCov"> 926 : _M_erase_at_end(iterator __pos)</span>
+<span class="lineNum"> 1620 </span> : {
+<span class="lineNum"> 1621 </span><span class="lineCov"> 926 : _M_destroy_data(__pos, end(), _M_get_Tp_allocator());</span>
+<span class="lineNum"> 1622 </span><span class="lineCov"> 926 : _M_destroy_nodes(__pos._M_node + 1,</span>
+<span class="lineNum"> 1623 </span> : this-&gt;_M_impl._M_finish._M_node + 1);
+<span class="lineNum"> 1624 </span><span class="lineCov"> 926 : this-&gt;_M_impl._M_finish = __pos;</span>
+<span class="lineNum"> 1625 </span><span class="lineCov"> 926 : }</span>
+<span class="lineNum"> 1626 </span> :
+<span class="lineNum"> 1627 </span> : //@{
+<span class="lineNum"> 1628 </span> : /// Memory-handling helpers for the previous internal insert functions.
+<span class="lineNum"> 1629 </span> : iterator
+<span class="lineNum"> 1630 </span><span class="lineNoCov"> 0 : _M_reserve_elements_at_front(size_type __n)</span>
+<span class="lineNum"> 1631 </span> : {
+<span class="lineNum"> 1632 </span> : const size_type __vacancies = this-&gt;_M_impl._M_start._M_cur
+<span class="lineNum"> 1633 </span><span class="lineNoCov"> 0 : - this-&gt;_M_impl._M_start._M_first;</span>
+<span class="lineNum"> 1634 </span><span class="lineNoCov"> 0 : if (__n &gt; __vacancies)</span>
+<span class="lineNum"> 1635 </span><span class="lineNoCov"> 0 : _M_new_elements_at_front(__n - __vacancies);</span>
+<span class="lineNum"> 1636 </span><span class="lineNoCov"> 0 : return this-&gt;_M_impl._M_start - difference_type(__n);</span>
+<span class="lineNum"> 1637 </span> : }
+<span class="lineNum"> 1638 </span> :
+<span class="lineNum"> 1639 </span> : iterator
+<span class="lineNum"> 1640 </span><span class="lineNoCov"> 0 : _M_reserve_elements_at_back(size_type __n)</span>
+<span class="lineNum"> 1641 </span> : {
+<span class="lineNum"> 1642 </span> : const size_type __vacancies = (this-&gt;_M_impl._M_finish._M_last
+<span class="lineNum"> 1643 </span><span class="lineNoCov"> 0 : - this-&gt;_M_impl._M_finish._M_cur) - 1;</span>
+<span class="lineNum"> 1644 </span><span class="lineNoCov"> 0 : if (__n &gt; __vacancies)</span>
+<span class="lineNum"> 1645 </span><span class="lineNoCov"> 0 : _M_new_elements_at_back(__n - __vacancies);</span>
+<span class="lineNum"> 1646 </span><span class="lineNoCov"> 0 : return this-&gt;_M_impl._M_finish + difference_type(__n);</span>
+<span class="lineNum"> 1647 </span> : }
+<span class="lineNum"> 1648 </span> :
+<span class="lineNum"> 1649 </span> : void
+<span class="lineNum"> 1650 </span> : _M_new_elements_at_front(size_type __new_elements);
+<span class="lineNum"> 1651 </span> :
+<span class="lineNum"> 1652 </span> : void
+<span class="lineNum"> 1653 </span> : _M_new_elements_at_back(size_type __new_elements);
+<span class="lineNum"> 1654 </span> : //@}
+<span class="lineNum"> 1655 </span> :
+<span class="lineNum"> 1656 </span> :
+<span class="lineNum"> 1657 </span> : //@{
+<span class="lineNum"> 1658 </span> : /**
+<span class="lineNum"> 1659 </span> : * @brief Memory-handling helpers for the major %map.
+<span class="lineNum"> 1660 </span> : *
+<span class="lineNum"> 1661 </span> : * Makes sure the _M_map has space for new nodes. Does not
+<span class="lineNum"> 1662 </span> : * actually add the nodes. Can invalidate _M_map pointers.
+<span class="lineNum"> 1663 </span> : * (And consequently, %deque iterators.)
+<span class="lineNum"> 1664 </span> : */
+<span class="lineNum"> 1665 </span> : void
+<span class="lineNum"> 1666 </span><span class="lineCov"> 13 : _M_reserve_map_at_back(size_type __nodes_to_add = 1)</span>
+<span class="lineNum"> 1667 </span> : {
+<span class="lineNum"> 1668 </span><span class="lineCov"> 13 : if (__nodes_to_add + 1 &gt; this-&gt;_M_impl._M_map_size</span>
+<span class="lineNum"> 1669 </span> : - (this-&gt;_M_impl._M_finish._M_node - this-&gt;_M_impl._M_map))
+<span class="lineNum"> 1670 </span><span class="lineNoCov"> 0 : _M_reallocate_map(__nodes_to_add, false);</span>
+<span class="lineNum"> 1671 </span><span class="lineCov"> 13 : }</span>
+<span class="lineNum"> 1672 </span> :
+<span class="lineNum"> 1673 </span> : void
+<span class="lineNum"> 1674 </span><span class="lineNoCov"> 0 : _M_reserve_map_at_front(size_type __nodes_to_add = 1)</span>
+<span class="lineNum"> 1675 </span> : {
+<span class="lineNum"> 1676 </span><span class="lineNoCov"> 0 : if (__nodes_to_add &gt; size_type(this-&gt;_M_impl._M_start._M_node</span>
+<span class="lineNum"> 1677 </span> : - this-&gt;_M_impl._M_map))
+<span class="lineNum"> 1678 </span><span class="lineNoCov"> 0 : _M_reallocate_map(__nodes_to_add, true);</span>
+<span class="lineNum"> 1679 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 1680 </span> :
+<span class="lineNum"> 1681 </span> : void
+<span class="lineNum"> 1682 </span> : _M_reallocate_map(size_type __nodes_to_add, bool __add_at_front);
+<span class="lineNum"> 1683 </span> : //@}
+<span class="lineNum"> 1684 </span> : };
+<span class="lineNum"> 1685 </span> :
+<span class="lineNum"> 1686 </span> :
+<span class="lineNum"> 1687 </span> : /**
+<span class="lineNum"> 1688 </span> : * @brief Deque equality comparison.
+<span class="lineNum"> 1689 </span> : * @param x A %deque.
+<span class="lineNum"> 1690 </span> : * @param y A %deque of the same type as @a x.
+<span class="lineNum"> 1691 </span> : * @return True iff the size and elements of the deques are equal.
+<span class="lineNum"> 1692 </span> : *
+<span class="lineNum"> 1693 </span> : * This is an equivalence relation. It is linear in the size of the
+<span class="lineNum"> 1694 </span> : * deques. Deques are considered equivalent if their sizes are equal,
+<span class="lineNum"> 1695 </span> : * and if corresponding elements compare equal.
+<span class="lineNum"> 1696 </span> : */
+<span class="lineNum"> 1697 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1698 </span> : inline bool
+<span class="lineNum"> 1699 </span> : operator==(const deque&lt;_Tp, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 1700 </span> : const deque&lt;_Tp, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 1701 </span> : { return __x.size() == __y.size()
+<span class="lineNum"> 1702 </span> : &amp;&amp; std::equal(__x.begin(), __x.end(), __y.begin()); }
+<span class="lineNum"> 1703 </span> :
+<span class="lineNum"> 1704 </span> : /**
+<span class="lineNum"> 1705 </span> : * @brief Deque ordering relation.
+<span class="lineNum"> 1706 </span> : * @param x A %deque.
+<span class="lineNum"> 1707 </span> : * @param y A %deque of the same type as @a x.
+<span class="lineNum"> 1708 </span> : * @return True iff @a x is lexicographically less than @a y.
+<span class="lineNum"> 1709 </span> : *
+<span class="lineNum"> 1710 </span> : * This is a total ordering relation. It is linear in the size of the
+<span class="lineNum"> 1711 </span> : * deques. The elements must be comparable with @c &lt;.
+<span class="lineNum"> 1712 </span> : *
+<span class="lineNum"> 1713 </span> : * See std::lexicographical_compare() for how the determination is made.
+<span class="lineNum"> 1714 </span> : */
+<span class="lineNum"> 1715 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1716 </span> : inline bool
+<span class="lineNum"> 1717 </span> : operator&lt;(const deque&lt;_Tp, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 1718 </span> : const deque&lt;_Tp, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 1719 </span> : { return std::lexicographical_compare(__x.begin(), __x.end(),
+<span class="lineNum"> 1720 </span> : __y.begin(), __y.end()); }
+<span class="lineNum"> 1721 </span> :
+<span class="lineNum"> 1722 </span> : /// Based on operator==
+<span class="lineNum"> 1723 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1724 </span> : inline bool
+<span class="lineNum"> 1725 </span> : operator!=(const deque&lt;_Tp, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 1726 </span> : const deque&lt;_Tp, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 1727 </span> : { return !(__x == __y); }
+<span class="lineNum"> 1728 </span> :
+<span class="lineNum"> 1729 </span> : /// Based on operator&lt;
+<span class="lineNum"> 1730 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1731 </span> : inline bool
+<span class="lineNum"> 1732 </span> : operator&gt;(const deque&lt;_Tp, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 1733 </span> : const deque&lt;_Tp, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 1734 </span> : { return __y &lt; __x; }
+<span class="lineNum"> 1735 </span> :
+<span class="lineNum"> 1736 </span> : /// Based on operator&lt;
+<span class="lineNum"> 1737 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1738 </span> : inline bool
+<span class="lineNum"> 1739 </span> : operator&lt;=(const deque&lt;_Tp, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 1740 </span> : const deque&lt;_Tp, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 1741 </span> : { return !(__y &lt; __x); }
+<span class="lineNum"> 1742 </span> :
+<span class="lineNum"> 1743 </span> : /// Based on operator&lt;
+<span class="lineNum"> 1744 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1745 </span> : inline bool
+<span class="lineNum"> 1746 </span> : operator&gt;=(const deque&lt;_Tp, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 1747 </span> : const deque&lt;_Tp, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 1748 </span> : { return !(__x &lt; __y); }
+<span class="lineNum"> 1749 </span> :
+<span class="lineNum"> 1750 </span> : /// See std::deque::swap().
+<span class="lineNum"> 1751 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1752 </span> : inline void
+<span class="lineNum"> 1753 </span> : swap(deque&lt;_Tp,_Alloc&gt;&amp; __x, deque&lt;_Tp,_Alloc&gt;&amp; __y)
+<span class="lineNum"> 1754 </span> : { __x.swap(__y); }
+<span class="lineNum"> 1755 </span> :
+<span class="lineNum"> 1756 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 1757 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1758 </span> : inline void
+<span class="lineNum"> 1759 </span> : swap(deque&lt;_Tp,_Alloc&gt;&amp;&amp; __x, deque&lt;_Tp,_Alloc&gt;&amp; __y)
+<span class="lineNum"> 1760 </span> : { __x.swap(__y); }
+<span class="lineNum"> 1761 </span> :
+<span class="lineNum"> 1762 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1763 </span> : inline void
+<span class="lineNum"> 1764 </span> : swap(deque&lt;_Tp,_Alloc&gt;&amp; __x, deque&lt;_Tp,_Alloc&gt;&amp;&amp; __y)
+<span class="lineNum"> 1765 </span> : { __x.swap(__y); }
+<span class="lineNum"> 1766 </span> : #endif
+<span class="lineNum"> 1767 </span> :
+<span class="lineNum"> 1768 </span> : _GLIBCXX_END_NESTED_NAMESPACE
+<span class="lineNum"> 1769 </span> :
+<span class="lineNum"> 1770 </span> : #endif /* _STL_DEQUE_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/stl_function.h.gcov.html b/rep/usr/include/c++/4.3/bits/stl_function.h.gcov.html
new file mode 100644
index 0000000..7615b65
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/stl_function.h.gcov.html
@@ -0,0 +1,774 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/stl_function.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - stl_function.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">17</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">17</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Functor implementations -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 18 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 19 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 20 </span> : // USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /*
+<span class="lineNum"> 32 </span> : *
+<span class="lineNum"> 33 </span> : * Copyright (c) 1994
+<span class="lineNum"> 34 </span> : * Hewlett-Packard Company
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 37 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 38 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 39 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 40 </span> : * in supporting documentation. Hewlett-Packard Company makes no
+<span class="lineNum"> 41 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 42 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 43 </span> : *
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * Copyright (c) 1996-1998
+<span class="lineNum"> 46 </span> : * Silicon Graphics Computer Systems, Inc.
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 49 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 50 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 51 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 52 </span> : * in supporting documentation. Silicon Graphics makes no
+<span class="lineNum"> 53 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 54 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 55 </span> : */
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /** @file stl_function.h
+<span class="lineNum"> 58 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 59 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 60 </span> : */
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : #ifndef _STL_FUNCTION_H
+<span class="lineNum"> 63 </span> : #define _STL_FUNCTION_H 1
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : // 20.3.1 base classes
+<span class="lineNum"> 68 </span> : /** @defgroup s20_3_1_base Functor Base Classes
+<span class="lineNum"> 69 </span> : * Function objects, or @e functors, are objects with an @c operator()
+<span class="lineNum"> 70 </span> : * defined and accessible. They can be passed as arguments to algorithm
+<span class="lineNum"> 71 </span> : * templates and used in place of a function pointer. Not only is the
+<span class="lineNum"> 72 </span> : * resulting expressiveness of the library increased, but the generated
+<span class="lineNum"> 73 </span> : * code can be more efficient than what you might write by hand. When we
+<span class="lineNum"> 74 </span> : * refer to &quot;functors,&quot; then, generally we include function pointers in
+<span class="lineNum"> 75 </span> : * the description as well.
+<span class="lineNum"> 76 </span> : *
+<span class="lineNum"> 77 </span> : * Often, functors are only created as temporaries passed to algorithm
+<span class="lineNum"> 78 </span> : * calls, rather than being created as named variables.
+<span class="lineNum"> 79 </span> : *
+<span class="lineNum"> 80 </span> : * Two examples taken from the standard itself follow. To perform a
+<span class="lineNum"> 81 </span> : * by-element addition of two vectors @c a and @c b containing @c double,
+<span class="lineNum"> 82 </span> : * and put the result in @c a, use
+<span class="lineNum"> 83 </span> : * \code
+<span class="lineNum"> 84 </span> : * transform (a.begin(), a.end(), b.begin(), a.begin(), plus&lt;double&gt;());
+<span class="lineNum"> 85 </span> : * \endcode
+<span class="lineNum"> 86 </span> : * To negate every element in @c a, use
+<span class="lineNum"> 87 </span> : * \code
+<span class="lineNum"> 88 </span> : * transform(a.begin(), a.end(), a.begin(), negate&lt;double&gt;());
+<span class="lineNum"> 89 </span> : * \endcode
+<span class="lineNum"> 90 </span> : * The addition and negation functions will be inlined directly.
+<span class="lineNum"> 91 </span> : *
+<span class="lineNum"> 92 </span> : * The standard functors are derived from structs named @c unary_function
+<span class="lineNum"> 93 </span> : * and @c binary_function. These two classes contain nothing but typedefs,
+<span class="lineNum"> 94 </span> : * to aid in generic (template) programming. If you write your own
+<span class="lineNum"> 95 </span> : * functors, you might consider doing the same.
+<span class="lineNum"> 96 </span> : *
+<span class="lineNum"> 97 </span> : * @{
+<span class="lineNum"> 98 </span> : */
+<span class="lineNum"> 99 </span> : /**
+<span class="lineNum"> 100 </span> : * This is one of the @link s20_3_1_base functor base classes@endlink.
+<span class="lineNum"> 101 </span> : */
+<span class="lineNum"> 102 </span> : template&lt;typename _Arg, typename _Result&gt;
+<span class="lineNum"> 103 </span> : struct unary_function
+<span class="lineNum"> 104 </span><span class="lineCov"> 21 : {</span>
+<span class="lineNum"> 105 </span> : typedef _Arg argument_type; ///&lt; @c argument_type is the type of the
+<span class="lineNum"> 106 </span> : /// argument (no surprises here)
+<span class="lineNum"> 107 </span> :
+<span class="lineNum"> 108 </span> : typedef _Result result_type; ///&lt; @c result_type is the return type
+<span class="lineNum"> 109 </span> : };
+<span class="lineNum"> 110 </span> :
+<span class="lineNum"> 111 </span> : /**
+<span class="lineNum"> 112 </span> : * This is one of the @link s20_3_1_base functor base classes@endlink.
+<span class="lineNum"> 113 </span> : */
+<span class="lineNum"> 114 </span> : template&lt;typename _Arg1, typename _Arg2, typename _Result&gt;
+<span class="lineNum"> 115 </span> : struct binary_function
+<span class="lineNum"> 116 </span> : {
+<span class="lineNum"> 117 </span> : typedef _Arg1 first_argument_type; ///&lt; the type of the first argument
+<span class="lineNum"> 118 </span> : /// (no surprises here)
+<span class="lineNum"> 119 </span> :
+<span class="lineNum"> 120 </span> : typedef _Arg2 second_argument_type; ///&lt; the type of the second argument
+<span class="lineNum"> 121 </span> : typedef _Result result_type; ///&lt; type of the return type
+<span class="lineNum"> 122 </span> : };
+<span class="lineNum"> 123 </span> : /** @} */
+<span class="lineNum"> 124 </span> :
+<span class="lineNum"> 125 </span> : // 20.3.2 arithmetic
+<span class="lineNum"> 126 </span> : /** @defgroup s20_3_2_arithmetic Arithmetic Classes
+<span class="lineNum"> 127 </span> :
+<span class="lineNum"> 128 </span> : * Because basic math often needs to be done during an algorithm,
+<span class="lineNum"> 129 </span> : * the library provides functors for those operations. See the
+<span class="lineNum"> 130 </span> : * documentation for @link s20_3_1_base the base classes@endlink
+<span class="lineNum"> 131 </span> : * for examples of their use.
+<span class="lineNum"> 132 </span> : *
+<span class="lineNum"> 133 </span> : * @{
+<span class="lineNum"> 134 </span> : */
+<span class="lineNum"> 135 </span> : /// One of the @link s20_3_2_arithmetic math functors@endlink.
+<span class="lineNum"> 136 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 137 </span> : struct plus : public binary_function&lt;_Tp, _Tp, _Tp&gt;
+<span class="lineNum"> 138 </span> : {
+<span class="lineNum"> 139 </span> : _Tp
+<span class="lineNum"> 140 </span><span class="lineCov"> 4 : operator()(const _Tp&amp; __x, const _Tp&amp; __y) const</span>
+<span class="lineNum"> 141 </span><span class="lineCov"> 4 : { return __x + __y; }</span>
+<span class="lineNum"> 142 </span> : };
+<span class="lineNum"> 143 </span> :
+<span class="lineNum"> 144 </span> : /// One of the @link s20_3_2_arithmetic math functors@endlink.
+<span class="lineNum"> 145 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 146 </span> : struct minus : public binary_function&lt;_Tp, _Tp, _Tp&gt;
+<span class="lineNum"> 147 </span> : {
+<span class="lineNum"> 148 </span> : _Tp
+<span class="lineNum"> 149 </span> : operator()(const _Tp&amp; __x, const _Tp&amp; __y) const
+<span class="lineNum"> 150 </span> : { return __x - __y; }
+<span class="lineNum"> 151 </span> : };
+<span class="lineNum"> 152 </span> :
+<span class="lineNum"> 153 </span> : /// One of the @link s20_3_2_arithmetic math functors@endlink.
+<span class="lineNum"> 154 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 155 </span> : struct multiplies : public binary_function&lt;_Tp, _Tp, _Tp&gt;
+<span class="lineNum"> 156 </span> : {
+<span class="lineNum"> 157 </span> : _Tp
+<span class="lineNum"> 158 </span> : operator()(const _Tp&amp; __x, const _Tp&amp; __y) const
+<span class="lineNum"> 159 </span> : { return __x * __y; }
+<span class="lineNum"> 160 </span> : };
+<span class="lineNum"> 161 </span> :
+<span class="lineNum"> 162 </span> : /// One of the @link s20_3_2_arithmetic math functors@endlink.
+<span class="lineNum"> 163 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 164 </span> : struct divides : public binary_function&lt;_Tp, _Tp, _Tp&gt;
+<span class="lineNum"> 165 </span> : {
+<span class="lineNum"> 166 </span> : _Tp
+<span class="lineNum"> 167 </span> : operator()(const _Tp&amp; __x, const _Tp&amp; __y) const
+<span class="lineNum"> 168 </span> : { return __x / __y; }
+<span class="lineNum"> 169 </span> : };
+<span class="lineNum"> 170 </span> :
+<span class="lineNum"> 171 </span> : /// One of the @link s20_3_2_arithmetic math functors@endlink.
+<span class="lineNum"> 172 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 173 </span> : struct modulus : public binary_function&lt;_Tp, _Tp, _Tp&gt;
+<span class="lineNum"> 174 </span> : {
+<span class="lineNum"> 175 </span> : _Tp
+<span class="lineNum"> 176 </span> : operator()(const _Tp&amp; __x, const _Tp&amp; __y) const
+<span class="lineNum"> 177 </span> : { return __x % __y; }
+<span class="lineNum"> 178 </span> : };
+<span class="lineNum"> 179 </span> :
+<span class="lineNum"> 180 </span> : /// One of the @link s20_3_2_arithmetic math functors@endlink.
+<span class="lineNum"> 181 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 182 </span> : struct negate : public unary_function&lt;_Tp, _Tp&gt;
+<span class="lineNum"> 183 </span> : {
+<span class="lineNum"> 184 </span> : _Tp
+<span class="lineNum"> 185 </span> : operator()(const _Tp&amp; __x) const
+<span class="lineNum"> 186 </span> : { return -__x; }
+<span class="lineNum"> 187 </span> : };
+<span class="lineNum"> 188 </span> : /** @} */
+<span class="lineNum"> 189 </span> :
+<span class="lineNum"> 190 </span> : // 20.3.3 comparisons
+<span class="lineNum"> 191 </span> : /** @defgroup s20_3_3_comparisons Comparison Classes
+<span class="lineNum"> 192 </span> : * The library provides six wrapper functors for all the basic comparisons
+<span class="lineNum"> 193 </span> : * in C++, like @c &lt;.
+<span class="lineNum"> 194 </span> : *
+<span class="lineNum"> 195 </span> : * @{
+<span class="lineNum"> 196 </span> : */
+<span class="lineNum"> 197 </span> : /// One of the @link s20_3_3_comparisons comparison functors@endlink.
+<span class="lineNum"> 198 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 199 </span> : struct equal_to : public binary_function&lt;_Tp, _Tp, bool&gt;
+<span class="lineNum"> 200 </span> : {
+<span class="lineNum"> 201 </span> : bool
+<span class="lineNum"> 202 </span><span class="lineCov"> 66 : operator()(const _Tp&amp; __x, const _Tp&amp; __y) const</span>
+<span class="lineNum"> 203 </span><span class="lineCov"> 66 : { return __x == __y; }</span>
+<span class="lineNum"> 204 </span> : };
+<span class="lineNum"> 205 </span> :
+<span class="lineNum"> 206 </span> : /// One of the @link s20_3_3_comparisons comparison functors@endlink.
+<span class="lineNum"> 207 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 208 </span> : struct not_equal_to : public binary_function&lt;_Tp, _Tp, bool&gt;
+<span class="lineNum"> 209 </span> : {
+<span class="lineNum"> 210 </span> : bool
+<span class="lineNum"> 211 </span> : operator()(const _Tp&amp; __x, const _Tp&amp; __y) const
+<span class="lineNum"> 212 </span> : { return __x != __y; }
+<span class="lineNum"> 213 </span> : };
+<span class="lineNum"> 214 </span> :
+<span class="lineNum"> 215 </span> : /// One of the @link s20_3_3_comparisons comparison functors@endlink.
+<span class="lineNum"> 216 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 217 </span> : struct greater : public binary_function&lt;_Tp, _Tp, bool&gt;
+<span class="lineNum"> 218 </span> : {
+<span class="lineNum"> 219 </span> : bool
+<span class="lineNum"> 220 </span> : operator()(const _Tp&amp; __x, const _Tp&amp; __y) const
+<span class="lineNum"> 221 </span> : { return __x &gt; __y; }
+<span class="lineNum"> 222 </span> : };
+<span class="lineNum"> 223 </span> :
+<span class="lineNum"> 224 </span> : /// One of the @link s20_3_3_comparisons comparison functors@endlink.
+<span class="lineNum"> 225 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 226 </span> : struct less : public binary_function&lt;_Tp, _Tp, bool&gt;
+<span class="lineNum"> 227 </span> : {
+<span class="lineNum"> 228 </span> : bool
+<span class="lineNum"> 229 </span><span class="lineCov"> 10727242 : operator()(const _Tp&amp; __x, const _Tp&amp; __y) const</span>
+<span class="lineNum"> 230 </span><span class="lineCov"> 10727242 : { return __x &lt; __y; }</span>
+<span class="lineNum"> 231 </span> : };
+<span class="lineNum"> 232 </span> :
+<span class="lineNum"> 233 </span> : /// One of the @link s20_3_3_comparisons comparison functors@endlink.
+<span class="lineNum"> 234 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 235 </span> : struct greater_equal : public binary_function&lt;_Tp, _Tp, bool&gt;
+<span class="lineNum"> 236 </span> : {
+<span class="lineNum"> 237 </span> : bool
+<span class="lineNum"> 238 </span> : operator()(const _Tp&amp; __x, const _Tp&amp; __y) const
+<span class="lineNum"> 239 </span> : { return __x &gt;= __y; }
+<span class="lineNum"> 240 </span> : };
+<span class="lineNum"> 241 </span> :
+<span class="lineNum"> 242 </span> : /// One of the @link s20_3_3_comparisons comparison functors@endlink.
+<span class="lineNum"> 243 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 244 </span> : struct less_equal : public binary_function&lt;_Tp, _Tp, bool&gt;
+<span class="lineNum"> 245 </span> : {
+<span class="lineNum"> 246 </span> : bool
+<span class="lineNum"> 247 </span> : operator()(const _Tp&amp; __x, const _Tp&amp; __y) const
+<span class="lineNum"> 248 </span> : { return __x &lt;= __y; }
+<span class="lineNum"> 249 </span> : };
+<span class="lineNum"> 250 </span> : /** @} */
+<span class="lineNum"> 251 </span> :
+<span class="lineNum"> 252 </span> : // 20.3.4 logical operations
+<span class="lineNum"> 253 </span> : /** @defgroup s20_3_4_logical Boolean Operations Classes
+<span class="lineNum"> 254 </span> : * Here are wrapper functors for Boolean operations: @c &amp;&amp;, @c ||,
+<span class="lineNum"> 255 </span> : * and @c !.
+<span class="lineNum"> 256 </span> : *
+<span class="lineNum"> 257 </span> : * @{
+<span class="lineNum"> 258 </span> : */
+<span class="lineNum"> 259 </span> : /// One of the @link s20_3_4_logical Boolean operations functors@endlink.
+<span class="lineNum"> 260 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 261 </span> : struct logical_and : public binary_function&lt;_Tp, _Tp, bool&gt;
+<span class="lineNum"> 262 </span> : {
+<span class="lineNum"> 263 </span> : bool
+<span class="lineNum"> 264 </span> : operator()(const _Tp&amp; __x, const _Tp&amp; __y) const
+<span class="lineNum"> 265 </span> : { return __x &amp;&amp; __y; }
+<span class="lineNum"> 266 </span> : };
+<span class="lineNum"> 267 </span> :
+<span class="lineNum"> 268 </span> : /// One of the @link s20_3_4_logical Boolean operations functors@endlink.
+<span class="lineNum"> 269 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 270 </span> : struct logical_or : public binary_function&lt;_Tp, _Tp, bool&gt;
+<span class="lineNum"> 271 </span> : {
+<span class="lineNum"> 272 </span> : bool
+<span class="lineNum"> 273 </span> : operator()(const _Tp&amp; __x, const _Tp&amp; __y) const
+<span class="lineNum"> 274 </span> : { return __x || __y; }
+<span class="lineNum"> 275 </span> : };
+<span class="lineNum"> 276 </span> :
+<span class="lineNum"> 277 </span> : /// One of the @link s20_3_4_logical Boolean operations functors@endlink.
+<span class="lineNum"> 278 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 279 </span> : struct logical_not : public unary_function&lt;_Tp, bool&gt;
+<span class="lineNum"> 280 </span> : {
+<span class="lineNum"> 281 </span> : bool
+<span class="lineNum"> 282 </span> : operator()(const _Tp&amp; __x) const
+<span class="lineNum"> 283 </span> : { return !__x; }
+<span class="lineNum"> 284 </span> : };
+<span class="lineNum"> 285 </span> : /** @} */
+<span class="lineNum"> 286 </span> :
+<span class="lineNum"> 287 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 288 </span> : // DR 660. Missing Bitwise Operations.
+<span class="lineNum"> 289 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 290 </span> : struct bit_and : public binary_function&lt;_Tp, _Tp, _Tp&gt;
+<span class="lineNum"> 291 </span> : {
+<span class="lineNum"> 292 </span> : _Tp
+<span class="lineNum"> 293 </span> : operator()(const _Tp&amp; __x, const _Tp&amp; __y) const
+<span class="lineNum"> 294 </span> : { return __x &amp; __y; }
+<span class="lineNum"> 295 </span> : };
+<span class="lineNum"> 296 </span> :
+<span class="lineNum"> 297 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 298 </span> : struct bit_or : public binary_function&lt;_Tp, _Tp, _Tp&gt;
+<span class="lineNum"> 299 </span> : {
+<span class="lineNum"> 300 </span> : _Tp
+<span class="lineNum"> 301 </span> : operator()(const _Tp&amp; __x, const _Tp&amp; __y) const
+<span class="lineNum"> 302 </span> : { return __x | __y; }
+<span class="lineNum"> 303 </span> : };
+<span class="lineNum"> 304 </span> :
+<span class="lineNum"> 305 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 306 </span> : struct bit_xor : public binary_function&lt;_Tp, _Tp, _Tp&gt;
+<span class="lineNum"> 307 </span> : {
+<span class="lineNum"> 308 </span> : _Tp
+<span class="lineNum"> 309 </span> : operator()(const _Tp&amp; __x, const _Tp&amp; __y) const
+<span class="lineNum"> 310 </span> : { return __x ^ __y; }
+<span class="lineNum"> 311 </span> : };
+<span class="lineNum"> 312 </span> :
+<span class="lineNum"> 313 </span> : // 20.3.5 negators
+<span class="lineNum"> 314 </span> : /** @defgroup s20_3_5_negators Negators
+<span class="lineNum"> 315 </span> : * The functions @c not1 and @c not2 each take a predicate functor
+<span class="lineNum"> 316 </span> : * and return an instance of @c unary_negate or
+<span class="lineNum"> 317 </span> : * @c binary_negate, respectively. These classes are functors whose
+<span class="lineNum"> 318 </span> : * @c operator() performs the stored predicate function and then returns
+<span class="lineNum"> 319 </span> : * the negation of the result.
+<span class="lineNum"> 320 </span> : *
+<span class="lineNum"> 321 </span> : * For example, given a vector of integers and a trivial predicate,
+<span class="lineNum"> 322 </span> : * \code
+<span class="lineNum"> 323 </span> : * struct IntGreaterThanThree
+<span class="lineNum"> 324 </span> : * : public std::unary_function&lt;int, bool&gt;
+<span class="lineNum"> 325 </span> : * {
+<span class="lineNum"> 326 </span> : * bool operator() (int x) { return x &gt; 3; }
+<span class="lineNum"> 327 </span> : * };
+<span class="lineNum"> 328 </span> : *
+<span class="lineNum"> 329 </span> : * std::find_if (v.begin(), v.end(), not1(IntGreaterThanThree()));
+<span class="lineNum"> 330 </span> : * \endcode
+<span class="lineNum"> 331 </span> : * The call to @c find_if will locate the first index (i) of @c v for which
+<span class="lineNum"> 332 </span> : * &quot;!(v[i] &gt; 3)&quot; is true.
+<span class="lineNum"> 333 </span> : *
+<span class="lineNum"> 334 </span> : * The not1/unary_negate combination works on predicates taking a single
+<span class="lineNum"> 335 </span> : * argument. The not2/binary_negate combination works on predicates which
+<span class="lineNum"> 336 </span> : * take two arguments.
+<span class="lineNum"> 337 </span> : *
+<span class="lineNum"> 338 </span> : * @{
+<span class="lineNum"> 339 </span> : */
+<span class="lineNum"> 340 </span> : /// One of the @link s20_3_5_negators negation functors@endlink.
+<span class="lineNum"> 341 </span> : template&lt;typename _Predicate&gt;
+<span class="lineNum"> 342 </span> : class unary_negate
+<span class="lineNum"> 343 </span> : : public unary_function&lt;typename _Predicate::argument_type, bool&gt;
+<span class="lineNum"> 344 </span> : {
+<span class="lineNum"> 345 </span> : protected:
+<span class="lineNum"> 346 </span> : _Predicate _M_pred;
+<span class="lineNum"> 347 </span> :
+<span class="lineNum"> 348 </span> : public:
+<span class="lineNum"> 349 </span> : explicit
+<span class="lineNum"> 350 </span> : unary_negate(const _Predicate&amp; __x) : _M_pred(__x) { }
+<span class="lineNum"> 351 </span> :
+<span class="lineNum"> 352 </span> : bool
+<span class="lineNum"> 353 </span> : operator()(const typename _Predicate::argument_type&amp; __x) const
+<span class="lineNum"> 354 </span> : { return !_M_pred(__x); }
+<span class="lineNum"> 355 </span> : };
+<span class="lineNum"> 356 </span> :
+<span class="lineNum"> 357 </span> : /// One of the @link s20_3_5_negators negation functors@endlink.
+<span class="lineNum"> 358 </span> : template&lt;typename _Predicate&gt;
+<span class="lineNum"> 359 </span> : inline unary_negate&lt;_Predicate&gt;
+<span class="lineNum"> 360 </span> : not1(const _Predicate&amp; __pred)
+<span class="lineNum"> 361 </span> : { return unary_negate&lt;_Predicate&gt;(__pred); }
+<span class="lineNum"> 362 </span> :
+<span class="lineNum"> 363 </span> : /// One of the @link s20_3_5_negators negation functors@endlink.
+<span class="lineNum"> 364 </span> : template&lt;typename _Predicate&gt;
+<span class="lineNum"> 365 </span> : class binary_negate
+<span class="lineNum"> 366 </span> : : public binary_function&lt;typename _Predicate::first_argument_type,
+<span class="lineNum"> 367 </span> : typename _Predicate::second_argument_type, bool&gt;
+<span class="lineNum"> 368 </span> : {
+<span class="lineNum"> 369 </span> : protected:
+<span class="lineNum"> 370 </span> : _Predicate _M_pred;
+<span class="lineNum"> 371 </span> :
+<span class="lineNum"> 372 </span> : public:
+<span class="lineNum"> 373 </span> : explicit
+<span class="lineNum"> 374 </span> : binary_negate(const _Predicate&amp; __x) : _M_pred(__x) { }
+<span class="lineNum"> 375 </span> :
+<span class="lineNum"> 376 </span> : bool
+<span class="lineNum"> 377 </span> : operator()(const typename _Predicate::first_argument_type&amp; __x,
+<span class="lineNum"> 378 </span> : const typename _Predicate::second_argument_type&amp; __y) const
+<span class="lineNum"> 379 </span> : { return !_M_pred(__x, __y); }
+<span class="lineNum"> 380 </span> : };
+<span class="lineNum"> 381 </span> :
+<span class="lineNum"> 382 </span> : /// One of the @link s20_3_5_negators negation functors@endlink.
+<span class="lineNum"> 383 </span> : template&lt;typename _Predicate&gt;
+<span class="lineNum"> 384 </span> : inline binary_negate&lt;_Predicate&gt;
+<span class="lineNum"> 385 </span> : not2(const _Predicate&amp; __pred)
+<span class="lineNum"> 386 </span> : { return binary_negate&lt;_Predicate&gt;(__pred); }
+<span class="lineNum"> 387 </span> : /** @} */
+<span class="lineNum"> 388 </span> :
+<span class="lineNum"> 389 </span> : // 20.3.7 adaptors pointers functions
+<span class="lineNum"> 390 </span> : /** @defgroup s20_3_7_adaptors Adaptors for pointers to functions
+<span class="lineNum"> 391 </span> : * The advantage of function objects over pointers to functions is that
+<span class="lineNum"> 392 </span> : * the objects in the standard library declare nested typedefs describing
+<span class="lineNum"> 393 </span> : * their argument and result types with uniform names (e.g., @c result_type
+<span class="lineNum"> 394 </span> : * from the base classes @c unary_function and @c binary_function).
+<span class="lineNum"> 395 </span> : * Sometimes those typedefs are required, not just optional.
+<span class="lineNum"> 396 </span> : *
+<span class="lineNum"> 397 </span> : * Adaptors are provided to turn pointers to unary (single-argument) and
+<span class="lineNum"> 398 </span> : * binary (double-argument) functions into function objects. The
+<span class="lineNum"> 399 </span> : * long-winded functor @c pointer_to_unary_function is constructed with a
+<span class="lineNum"> 400 </span> : * function pointer @c f, and its @c operator() called with argument @c x
+<span class="lineNum"> 401 </span> : * returns @c f(x). The functor @c pointer_to_binary_function does the same
+<span class="lineNum"> 402 </span> : * thing, but with a double-argument @c f and @c operator().
+<span class="lineNum"> 403 </span> : *
+<span class="lineNum"> 404 </span> : * The function @c ptr_fun takes a pointer-to-function @c f and constructs
+<span class="lineNum"> 405 </span> : * an instance of the appropriate functor.
+<span class="lineNum"> 406 </span> : *
+<span class="lineNum"> 407 </span> : * @{
+<span class="lineNum"> 408 </span> : */
+<span class="lineNum"> 409 </span> : /// One of the @link s20_3_7_adaptors adaptors for function pointers@endlink.
+<span class="lineNum"> 410 </span> : template&lt;typename _Arg, typename _Result&gt;
+<span class="lineNum"> 411 </span> : class pointer_to_unary_function : public unary_function&lt;_Arg, _Result&gt;
+<span class="lineNum"> 412 </span> : {
+<span class="lineNum"> 413 </span> : protected:
+<span class="lineNum"> 414 </span> : _Result (*_M_ptr)(_Arg);
+<span class="lineNum"> 415 </span> :
+<span class="lineNum"> 416 </span> : public:
+<span class="lineNum"> 417 </span> : pointer_to_unary_function() { }
+<span class="lineNum"> 418 </span> :
+<span class="lineNum"> 419 </span> : explicit
+<span class="lineNum"> 420 </span><span class="lineCov"> 2 : pointer_to_unary_function(_Result (*__x)(_Arg))</span>
+<span class="lineNum"> 421 </span><span class="lineCov"> 2 : : _M_ptr(__x) { }</span>
+<span class="lineNum"> 422 </span> :
+<span class="lineNum"> 423 </span> : _Result
+<span class="lineNum"> 424 </span><span class="lineCov"> 516 : operator()(_Arg __x) const</span>
+<span class="lineNum"> 425 </span><span class="lineCov"> 516 : { return _M_ptr(__x); }</span>
+<span class="lineNum"> 426 </span> : };
+<span class="lineNum"> 427 </span> :
+<span class="lineNum"> 428 </span> : /// One of the @link s20_3_7_adaptors adaptors for function pointers@endlink.
+<span class="lineNum"> 429 </span> : template&lt;typename _Arg, typename _Result&gt;
+<span class="lineNum"> 430 </span> : inline pointer_to_unary_function&lt;_Arg, _Result&gt;
+<span class="lineNum"> 431 </span><span class="lineCov"> 2 : ptr_fun(_Result (*__x)(_Arg))</span>
+<span class="lineNum"> 432 </span><span class="lineCov"> 2 : { return pointer_to_unary_function&lt;_Arg, _Result&gt;(__x); }</span>
+<span class="lineNum"> 433 </span> :
+<span class="lineNum"> 434 </span> : /// One of the @link s20_3_7_adaptors adaptors for function pointers@endlink.
+<span class="lineNum"> 435 </span> : template&lt;typename _Arg1, typename _Arg2, typename _Result&gt;
+<span class="lineNum"> 436 </span> : class pointer_to_binary_function
+<span class="lineNum"> 437 </span> : : public binary_function&lt;_Arg1, _Arg2, _Result&gt;
+<span class="lineNum"> 438 </span> : {
+<span class="lineNum"> 439 </span> : protected:
+<span class="lineNum"> 440 </span> : _Result (*_M_ptr)(_Arg1, _Arg2);
+<span class="lineNum"> 441 </span> :
+<span class="lineNum"> 442 </span> : public:
+<span class="lineNum"> 443 </span> : pointer_to_binary_function() { }
+<span class="lineNum"> 444 </span> :
+<span class="lineNum"> 445 </span> : explicit
+<span class="lineNum"> 446 </span> : pointer_to_binary_function(_Result (*__x)(_Arg1, _Arg2))
+<span class="lineNum"> 447 </span> : : _M_ptr(__x) { }
+<span class="lineNum"> 448 </span> :
+<span class="lineNum"> 449 </span> : _Result
+<span class="lineNum"> 450 </span> : operator()(_Arg1 __x, _Arg2 __y) const
+<span class="lineNum"> 451 </span> : { return _M_ptr(__x, __y); }
+<span class="lineNum"> 452 </span> : };
+<span class="lineNum"> 453 </span> :
+<span class="lineNum"> 454 </span> : /// One of the @link s20_3_7_adaptors adaptors for function pointers@endlink.
+<span class="lineNum"> 455 </span> : template&lt;typename _Arg1, typename _Arg2, typename _Result&gt;
+<span class="lineNum"> 456 </span> : inline pointer_to_binary_function&lt;_Arg1, _Arg2, _Result&gt;
+<span class="lineNum"> 457 </span> : ptr_fun(_Result (*__x)(_Arg1, _Arg2))
+<span class="lineNum"> 458 </span> : { return pointer_to_binary_function&lt;_Arg1, _Arg2, _Result&gt;(__x); }
+<span class="lineNum"> 459 </span> : /** @} */
+<span class="lineNum"> 460 </span> :
+<span class="lineNum"> 461 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 462 </span> : struct _Identity : public unary_function&lt;_Tp,_Tp&gt;
+<span class="lineNum"> 463 </span> : {
+<span class="lineNum"> 464 </span> : _Tp&amp;
+<span class="lineNum"> 465 </span> : operator()(_Tp&amp; __x) const
+<span class="lineNum"> 466 </span> : { return __x; }
+<span class="lineNum"> 467 </span> :
+<span class="lineNum"> 468 </span> : const _Tp&amp;
+<span class="lineNum"> 469 </span><span class="lineCov"> 16055496 : operator()(const _Tp&amp; __x) const</span>
+<span class="lineNum"> 470 </span><span class="lineCov"> 16055496 : { return __x; }</span>
+<span class="lineNum"> 471 </span> : };
+<span class="lineNum"> 472 </span> :
+<span class="lineNum"> 473 </span> : template&lt;typename _Pair&gt;
+<span class="lineNum"> 474 </span> : struct _Select1st : public unary_function&lt;_Pair,
+<span class="lineNum"> 475 </span> : typename _Pair::first_type&gt;
+<span class="lineNum"> 476 </span> : {
+<span class="lineNum"> 477 </span> : typename _Pair::first_type&amp;
+<span class="lineNum"> 478 </span> : operator()(_Pair&amp; __x) const
+<span class="lineNum"> 479 </span> : { return __x.first; }
+<span class="lineNum"> 480 </span> :
+<span class="lineNum"> 481 </span> : const typename _Pair::first_type&amp;
+<span class="lineNum"> 482 </span><span class="lineCov"> 4509167 : operator()(const _Pair&amp; __x) const</span>
+<span class="lineNum"> 483 </span><span class="lineCov"> 4509167 : { return __x.first; }</span>
+<span class="lineNum"> 484 </span> : };
+<span class="lineNum"> 485 </span> :
+<span class="lineNum"> 486 </span> : template&lt;typename _Pair&gt;
+<span class="lineNum"> 487 </span> : struct _Select2nd : public unary_function&lt;_Pair,
+<span class="lineNum"> 488 </span> : typename _Pair::second_type&gt;
+<span class="lineNum"> 489 </span> : {
+<span class="lineNum"> 490 </span> : typename _Pair::second_type&amp;
+<span class="lineNum"> 491 </span> : operator()(_Pair&amp; __x) const
+<span class="lineNum"> 492 </span> : { return __x.second; }
+<span class="lineNum"> 493 </span> :
+<span class="lineNum"> 494 </span> : const typename _Pair::second_type&amp;
+<span class="lineNum"> 495 </span> : operator()(const _Pair&amp; __x) const
+<span class="lineNum"> 496 </span> : { return __x.second; }
+<span class="lineNum"> 497 </span> : };
+<span class="lineNum"> 498 </span> :
+<span class="lineNum"> 499 </span> : // 20.3.8 adaptors pointers members
+<span class="lineNum"> 500 </span> : /** @defgroup s20_3_8_memadaptors Adaptors for pointers to members
+<span class="lineNum"> 501 </span> : * There are a total of 8 = 2^3 function objects in this family.
+<span class="lineNum"> 502 </span> : * (1) Member functions taking no arguments vs member functions taking
+<span class="lineNum"> 503 </span> : * one argument.
+<span class="lineNum"> 504 </span> : * (2) Call through pointer vs call through reference.
+<span class="lineNum"> 505 </span> : * (3) Const vs non-const member function.
+<span class="lineNum"> 506 </span> : *
+<span class="lineNum"> 507 </span> : * All of this complexity is in the function objects themselves. You can
+<span class="lineNum"> 508 </span> : * ignore it by using the helper function mem_fun and mem_fun_ref,
+<span class="lineNum"> 509 </span> : * which create whichever type of adaptor is appropriate.
+<span class="lineNum"> 510 </span> : *
+<span class="lineNum"> 511 </span> : * @{
+<span class="lineNum"> 512 </span> : */
+<span class="lineNum"> 513 </span> : /// One of the @link s20_3_8_memadaptors adaptors for member
+<span class="lineNum"> 514 </span> : /// pointers@endlink.
+<span class="lineNum"> 515 </span> : template&lt;typename _Ret, typename _Tp&gt;
+<span class="lineNum"> 516 </span> : class mem_fun_t : public unary_function&lt;_Tp*, _Ret&gt;
+<span class="lineNum"> 517 </span> : {
+<span class="lineNum"> 518 </span> : public:
+<span class="lineNum"> 519 </span> : explicit
+<span class="lineNum"> 520 </span> : mem_fun_t(_Ret (_Tp::*__pf)())
+<span class="lineNum"> 521 </span> : : _M_f(__pf) { }
+<span class="lineNum"> 522 </span> :
+<span class="lineNum"> 523 </span> : _Ret
+<span class="lineNum"> 524 </span> : operator()(_Tp* __p) const
+<span class="lineNum"> 525 </span> : { return (__p-&gt;*_M_f)(); }
+<span class="lineNum"> 526 </span> :
+<span class="lineNum"> 527 </span> : private:
+<span class="lineNum"> 528 </span> : _Ret (_Tp::*_M_f)();
+<span class="lineNum"> 529 </span> : };
+<span class="lineNum"> 530 </span> :
+<span class="lineNum"> 531 </span> : /// One of the @link s20_3_8_memadaptors adaptors for member
+<span class="lineNum"> 532 </span> : /// pointers@endlink.
+<span class="lineNum"> 533 </span> : template&lt;typename _Ret, typename _Tp&gt;
+<span class="lineNum"> 534 </span> : class const_mem_fun_t : public unary_function&lt;const _Tp*, _Ret&gt;
+<span class="lineNum"> 535 </span> : {
+<span class="lineNum"> 536 </span> : public:
+<span class="lineNum"> 537 </span> : explicit
+<span class="lineNum"> 538 </span> : const_mem_fun_t(_Ret (_Tp::*__pf)() const)
+<span class="lineNum"> 539 </span> : : _M_f(__pf) { }
+<span class="lineNum"> 540 </span> :
+<span class="lineNum"> 541 </span> : _Ret
+<span class="lineNum"> 542 </span> : operator()(const _Tp* __p) const
+<span class="lineNum"> 543 </span> : { return (__p-&gt;*_M_f)(); }
+<span class="lineNum"> 544 </span> :
+<span class="lineNum"> 545 </span> : private:
+<span class="lineNum"> 546 </span> : _Ret (_Tp::*_M_f)() const;
+<span class="lineNum"> 547 </span> : };
+<span class="lineNum"> 548 </span> :
+<span class="lineNum"> 549 </span> : /// One of the @link s20_3_8_memadaptors adaptors for member
+<span class="lineNum"> 550 </span> : /// pointers@endlink.
+<span class="lineNum"> 551 </span> : template&lt;typename _Ret, typename _Tp&gt;
+<span class="lineNum"> 552 </span> : class mem_fun_ref_t : public unary_function&lt;_Tp, _Ret&gt;
+<span class="lineNum"> 553 </span> : {
+<span class="lineNum"> 554 </span> : public:
+<span class="lineNum"> 555 </span> : explicit
+<span class="lineNum"> 556 </span> : mem_fun_ref_t(_Ret (_Tp::*__pf)())
+<span class="lineNum"> 557 </span> : : _M_f(__pf) { }
+<span class="lineNum"> 558 </span> :
+<span class="lineNum"> 559 </span> : _Ret
+<span class="lineNum"> 560 </span> : operator()(_Tp&amp; __r) const
+<span class="lineNum"> 561 </span> : { return (__r.*_M_f)(); }
+<span class="lineNum"> 562 </span> :
+<span class="lineNum"> 563 </span> : private:
+<span class="lineNum"> 564 </span> : _Ret (_Tp::*_M_f)();
+<span class="lineNum"> 565 </span> : };
+<span class="lineNum"> 566 </span> :
+<span class="lineNum"> 567 </span> : /// One of the @link s20_3_8_memadaptors adaptors for member
+<span class="lineNum"> 568 </span> : /// pointers@endlink.
+<span class="lineNum"> 569 </span> : template&lt;typename _Ret, typename _Tp&gt;
+<span class="lineNum"> 570 </span> : class const_mem_fun_ref_t : public unary_function&lt;_Tp, _Ret&gt;
+<span class="lineNum"> 571 </span> : {
+<span class="lineNum"> 572 </span> : public:
+<span class="lineNum"> 573 </span> : explicit
+<span class="lineNum"> 574 </span> : const_mem_fun_ref_t(_Ret (_Tp::*__pf)() const)
+<span class="lineNum"> 575 </span> : : _M_f(__pf) { }
+<span class="lineNum"> 576 </span> :
+<span class="lineNum"> 577 </span> : _Ret
+<span class="lineNum"> 578 </span> : operator()(const _Tp&amp; __r) const
+<span class="lineNum"> 579 </span> : { return (__r.*_M_f)(); }
+<span class="lineNum"> 580 </span> :
+<span class="lineNum"> 581 </span> : private:
+<span class="lineNum"> 582 </span> : _Ret (_Tp::*_M_f)() const;
+<span class="lineNum"> 583 </span> : };
+<span class="lineNum"> 584 </span> :
+<span class="lineNum"> 585 </span> : /// One of the @link s20_3_8_memadaptors adaptors for member
+<span class="lineNum"> 586 </span> : /// pointers@endlink.
+<span class="lineNum"> 587 </span> : template&lt;typename _Ret, typename _Tp, typename _Arg&gt;
+<span class="lineNum"> 588 </span> : class mem_fun1_t : public binary_function&lt;_Tp*, _Arg, _Ret&gt;
+<span class="lineNum"> 589 </span> : {
+<span class="lineNum"> 590 </span> : public:
+<span class="lineNum"> 591 </span> : explicit
+<span class="lineNum"> 592 </span> : mem_fun1_t(_Ret (_Tp::*__pf)(_Arg))
+<span class="lineNum"> 593 </span> : : _M_f(__pf) { }
+<span class="lineNum"> 594 </span> :
+<span class="lineNum"> 595 </span> : _Ret
+<span class="lineNum"> 596 </span> : operator()(_Tp* __p, _Arg __x) const
+<span class="lineNum"> 597 </span> : { return (__p-&gt;*_M_f)(__x); }
+<span class="lineNum"> 598 </span> :
+<span class="lineNum"> 599 </span> : private:
+<span class="lineNum"> 600 </span> : _Ret (_Tp::*_M_f)(_Arg);
+<span class="lineNum"> 601 </span> : };
+<span class="lineNum"> 602 </span> :
+<span class="lineNum"> 603 </span> : /// One of the @link s20_3_8_memadaptors adaptors for member
+<span class="lineNum"> 604 </span> : /// pointers@endlink.
+<span class="lineNum"> 605 </span> : template&lt;typename _Ret, typename _Tp, typename _Arg&gt;
+<span class="lineNum"> 606 </span> : class const_mem_fun1_t : public binary_function&lt;const _Tp*, _Arg, _Ret&gt;
+<span class="lineNum"> 607 </span> : {
+<span class="lineNum"> 608 </span> : public:
+<span class="lineNum"> 609 </span> : explicit
+<span class="lineNum"> 610 </span> : const_mem_fun1_t(_Ret (_Tp::*__pf)(_Arg) const)
+<span class="lineNum"> 611 </span> : : _M_f(__pf) { }
+<span class="lineNum"> 612 </span> :
+<span class="lineNum"> 613 </span> : _Ret
+<span class="lineNum"> 614 </span> : operator()(const _Tp* __p, _Arg __x) const
+<span class="lineNum"> 615 </span> : { return (__p-&gt;*_M_f)(__x); }
+<span class="lineNum"> 616 </span> :
+<span class="lineNum"> 617 </span> : private:
+<span class="lineNum"> 618 </span> : _Ret (_Tp::*_M_f)(_Arg) const;
+<span class="lineNum"> 619 </span> : };
+<span class="lineNum"> 620 </span> :
+<span class="lineNum"> 621 </span> : /// One of the @link s20_3_8_memadaptors adaptors for member
+<span class="lineNum"> 622 </span> : /// pointers@endlink.
+<span class="lineNum"> 623 </span> : template&lt;typename _Ret, typename _Tp, typename _Arg&gt;
+<span class="lineNum"> 624 </span> : class mem_fun1_ref_t : public binary_function&lt;_Tp, _Arg, _Ret&gt;
+<span class="lineNum"> 625 </span> : {
+<span class="lineNum"> 626 </span> : public:
+<span class="lineNum"> 627 </span> : explicit
+<span class="lineNum"> 628 </span> : mem_fun1_ref_t(_Ret (_Tp::*__pf)(_Arg))
+<span class="lineNum"> 629 </span> : : _M_f(__pf) { }
+<span class="lineNum"> 630 </span> :
+<span class="lineNum"> 631 </span> : _Ret
+<span class="lineNum"> 632 </span> : operator()(_Tp&amp; __r, _Arg __x) const
+<span class="lineNum"> 633 </span> : { return (__r.*_M_f)(__x); }
+<span class="lineNum"> 634 </span> :
+<span class="lineNum"> 635 </span> : private:
+<span class="lineNum"> 636 </span> : _Ret (_Tp::*_M_f)(_Arg);
+<span class="lineNum"> 637 </span> : };
+<span class="lineNum"> 638 </span> :
+<span class="lineNum"> 639 </span> : /// One of the @link s20_3_8_memadaptors adaptors for member
+<span class="lineNum"> 640 </span> : /// pointers@endlink.
+<span class="lineNum"> 641 </span> : template&lt;typename _Ret, typename _Tp, typename _Arg&gt;
+<span class="lineNum"> 642 </span> : class const_mem_fun1_ref_t : public binary_function&lt;_Tp, _Arg, _Ret&gt;
+<span class="lineNum"> 643 </span> : {
+<span class="lineNum"> 644 </span> : public:
+<span class="lineNum"> 645 </span> : explicit
+<span class="lineNum"> 646 </span> : const_mem_fun1_ref_t(_Ret (_Tp::*__pf)(_Arg) const)
+<span class="lineNum"> 647 </span> : : _M_f(__pf) { }
+<span class="lineNum"> 648 </span> :
+<span class="lineNum"> 649 </span> : _Ret
+<span class="lineNum"> 650 </span> : operator()(const _Tp&amp; __r, _Arg __x) const
+<span class="lineNum"> 651 </span> : { return (__r.*_M_f)(__x); }
+<span class="lineNum"> 652 </span> :
+<span class="lineNum"> 653 </span> : private:
+<span class="lineNum"> 654 </span> : _Ret (_Tp::*_M_f)(_Arg) const;
+<span class="lineNum"> 655 </span> : };
+<span class="lineNum"> 656 </span> :
+<span class="lineNum"> 657 </span> : // Mem_fun adaptor helper functions. There are only two:
+<span class="lineNum"> 658 </span> : // mem_fun and mem_fun_ref.
+<span class="lineNum"> 659 </span> : template&lt;typename _Ret, typename _Tp&gt;
+<span class="lineNum"> 660 </span> : inline mem_fun_t&lt;_Ret, _Tp&gt;
+<span class="lineNum"> 661 </span> : mem_fun(_Ret (_Tp::*__f)())
+<span class="lineNum"> 662 </span> : { return mem_fun_t&lt;_Ret, _Tp&gt;(__f); }
+<span class="lineNum"> 663 </span> :
+<span class="lineNum"> 664 </span> : template&lt;typename _Ret, typename _Tp&gt;
+<span class="lineNum"> 665 </span> : inline const_mem_fun_t&lt;_Ret, _Tp&gt;
+<span class="lineNum"> 666 </span> : mem_fun(_Ret (_Tp::*__f)() const)
+<span class="lineNum"> 667 </span> : { return const_mem_fun_t&lt;_Ret, _Tp&gt;(__f); }
+<span class="lineNum"> 668 </span> :
+<span class="lineNum"> 669 </span> : template&lt;typename _Ret, typename _Tp&gt;
+<span class="lineNum"> 670 </span> : inline mem_fun_ref_t&lt;_Ret, _Tp&gt;
+<span class="lineNum"> 671 </span> : mem_fun_ref(_Ret (_Tp::*__f)())
+<span class="lineNum"> 672 </span> : { return mem_fun_ref_t&lt;_Ret, _Tp&gt;(__f); }
+<span class="lineNum"> 673 </span> :
+<span class="lineNum"> 674 </span> : template&lt;typename _Ret, typename _Tp&gt;
+<span class="lineNum"> 675 </span> : inline const_mem_fun_ref_t&lt;_Ret, _Tp&gt;
+<span class="lineNum"> 676 </span> : mem_fun_ref(_Ret (_Tp::*__f)() const)
+<span class="lineNum"> 677 </span> : { return const_mem_fun_ref_t&lt;_Ret, _Tp&gt;(__f); }
+<span class="lineNum"> 678 </span> :
+<span class="lineNum"> 679 </span> : template&lt;typename _Ret, typename _Tp, typename _Arg&gt;
+<span class="lineNum"> 680 </span> : inline mem_fun1_t&lt;_Ret, _Tp, _Arg&gt;
+<span class="lineNum"> 681 </span> : mem_fun(_Ret (_Tp::*__f)(_Arg))
+<span class="lineNum"> 682 </span> : { return mem_fun1_t&lt;_Ret, _Tp, _Arg&gt;(__f); }
+<span class="lineNum"> 683 </span> :
+<span class="lineNum"> 684 </span> : template&lt;typename _Ret, typename _Tp, typename _Arg&gt;
+<span class="lineNum"> 685 </span> : inline const_mem_fun1_t&lt;_Ret, _Tp, _Arg&gt;
+<span class="lineNum"> 686 </span> : mem_fun(_Ret (_Tp::*__f)(_Arg) const)
+<span class="lineNum"> 687 </span> : { return const_mem_fun1_t&lt;_Ret, _Tp, _Arg&gt;(__f); }
+<span class="lineNum"> 688 </span> :
+<span class="lineNum"> 689 </span> : template&lt;typename _Ret, typename _Tp, typename _Arg&gt;
+<span class="lineNum"> 690 </span> : inline mem_fun1_ref_t&lt;_Ret, _Tp, _Arg&gt;
+<span class="lineNum"> 691 </span> : mem_fun_ref(_Ret (_Tp::*__f)(_Arg))
+<span class="lineNum"> 692 </span> : { return mem_fun1_ref_t&lt;_Ret, _Tp, _Arg&gt;(__f); }
+<span class="lineNum"> 693 </span> :
+<span class="lineNum"> 694 </span> : template&lt;typename _Ret, typename _Tp, typename _Arg&gt;
+<span class="lineNum"> 695 </span> : inline const_mem_fun1_ref_t&lt;_Ret, _Tp, _Arg&gt;
+<span class="lineNum"> 696 </span> : mem_fun_ref(_Ret (_Tp::*__f)(_Arg) const)
+<span class="lineNum"> 697 </span> : { return const_mem_fun1_ref_t&lt;_Ret, _Tp, _Arg&gt;(__f); }
+<span class="lineNum"> 698 </span> :
+<span class="lineNum"> 699 </span> : /** @} */
+<span class="lineNum"> 700 </span> :
+<span class="lineNum"> 701 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 702 </span> :
+<span class="lineNum"> 703 </span> : #if !defined(__GXX_EXPERIMENTAL_CXX0X__) || _GLIBCXX_DEPRECATED
+<span class="lineNum"> 704 </span> : # include &lt;backward/binders.h&gt;
+<span class="lineNum"> 705 </span> : #endif
+<span class="lineNum"> 706 </span> :
+<span class="lineNum"> 707 </span> : #endif /* _STL_FUNCTION_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/stl_heap.h.gcov.html b/rep/usr/include/c++/4.3/bits/stl_heap.h.gcov.html
new file mode 100644
index 0000000..c9d582a
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/stl_heap.h.gcov.html
@@ -0,0 +1,637 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/stl_heap.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - stl_heap.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">92</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">0.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">0</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Heap implementation -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 18 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 19 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 20 </span> : // USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /*
+<span class="lineNum"> 32 </span> : *
+<span class="lineNum"> 33 </span> : * Copyright (c) 1994
+<span class="lineNum"> 34 </span> : * Hewlett-Packard Company
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 37 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 38 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 39 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 40 </span> : * in supporting documentation. Hewlett-Packard Company makes no
+<span class="lineNum"> 41 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 42 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 43 </span> : *
+<span class="lineNum"> 44 </span> : * Copyright (c) 1997
+<span class="lineNum"> 45 </span> : * Silicon Graphics Computer Systems, Inc.
+<span class="lineNum"> 46 </span> : *
+<span class="lineNum"> 47 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 48 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 49 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 50 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 51 </span> : * in supporting documentation. Silicon Graphics makes no
+<span class="lineNum"> 52 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 53 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 54 </span> : */
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span> : /** @file stl_heap.h
+<span class="lineNum"> 57 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 58 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 59 </span> : */
+<span class="lineNum"> 60 </span> :
+<span class="lineNum"> 61 </span> : #ifndef _STL_HEAP_H
+<span class="lineNum"> 62 </span> : #define _STL_HEAP_H 1
+<span class="lineNum"> 63 </span> :
+<span class="lineNum"> 64 </span> : #include &lt;debug/debug.h&gt;
+<span class="lineNum"> 65 </span> : #include &lt;bits/stl_move.h&gt;
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span> : template&lt;typename _RandomAccessIterator, typename _Distance&gt;
+<span class="lineNum"> 70 </span> : _Distance
+<span class="lineNum"> 71 </span> : __is_heap_until(_RandomAccessIterator __first, _Distance __n)
+<span class="lineNum"> 72 </span> : {
+<span class="lineNum"> 73 </span> : _Distance __parent = 0;
+<span class="lineNum"> 74 </span> : for (_Distance __child = 1; __child &lt; __n; ++__child)
+<span class="lineNum"> 75 </span> : {
+<span class="lineNum"> 76 </span> : if (__first[__parent] &lt; __first[__child])
+<span class="lineNum"> 77 </span> : return __child;
+<span class="lineNum"> 78 </span> : if ((__child &amp; 1) == 0)
+<span class="lineNum"> 79 </span> : ++__parent;
+<span class="lineNum"> 80 </span> : }
+<span class="lineNum"> 81 </span> : return __n;
+<span class="lineNum"> 82 </span> : }
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span> : template&lt;typename _RandomAccessIterator, typename _Distance,
+<span class="lineNum"> 85 </span> : typename _Compare&gt;
+<span class="lineNum"> 86 </span> : _Distance
+<span class="lineNum"> 87 </span> : __is_heap_until(_RandomAccessIterator __first, _Distance __n,
+<span class="lineNum"> 88 </span> : _Compare __comp)
+<span class="lineNum"> 89 </span> : {
+<span class="lineNum"> 90 </span> : _Distance __parent = 0;
+<span class="lineNum"> 91 </span> : for (_Distance __child = 1; __child &lt; __n; ++__child)
+<span class="lineNum"> 92 </span> : {
+<span class="lineNum"> 93 </span> : if (__comp(__first[__parent], __first[__child]))
+<span class="lineNum"> 94 </span> : return __child;
+<span class="lineNum"> 95 </span> : if ((__child &amp; 1) == 0)
+<span class="lineNum"> 96 </span> : ++__parent;
+<span class="lineNum"> 97 </span> : }
+<span class="lineNum"> 98 </span> : return __n;
+<span class="lineNum"> 99 </span> : }
+<span class="lineNum"> 100 </span> :
+<span class="lineNum"> 101 </span> : // __is_heap, a predicate testing whether or not a range is a heap.
+<span class="lineNum"> 102 </span> : // This function is an extension, not part of the C++ standard.
+<span class="lineNum"> 103 </span> : template&lt;typename _RandomAccessIterator, typename _Distance&gt;
+<span class="lineNum"> 104 </span> : inline bool
+<span class="lineNum"> 105 </span> : __is_heap(_RandomAccessIterator __first, _Distance __n)
+<span class="lineNum"> 106 </span> : { return std::__is_heap_until(__first, __n) == __n; }
+<span class="lineNum"> 107 </span> :
+<span class="lineNum"> 108 </span> : template&lt;typename _RandomAccessIterator, typename _Compare,
+<span class="lineNum"> 109 </span> : typename _Distance&gt;
+<span class="lineNum"> 110 </span> : inline bool
+<span class="lineNum"> 111 </span> : __is_heap(_RandomAccessIterator __first, _Compare __comp, _Distance __n)
+<span class="lineNum"> 112 </span> : { return std::__is_heap_until(__first, __n, __comp) == __n; }
+<span class="lineNum"> 113 </span> :
+<span class="lineNum"> 114 </span> : template&lt;typename _RandomAccessIterator&gt;
+<span class="lineNum"> 115 </span> : inline bool
+<span class="lineNum"> 116 </span> : __is_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
+<span class="lineNum"> 117 </span> : { return std::__is_heap(__first, std::distance(__first, __last)); }
+<span class="lineNum"> 118 </span> :
+<span class="lineNum"> 119 </span> : template&lt;typename _RandomAccessIterator, typename _Compare&gt;
+<span class="lineNum"> 120 </span> : inline bool
+<span class="lineNum"> 121 </span> : __is_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
+<span class="lineNum"> 122 </span> : _Compare __comp)
+<span class="lineNum"> 123 </span> : { return std::__is_heap(__first, __comp, std::distance(__first, __last)); }
+<span class="lineNum"> 124 </span> :
+<span class="lineNum"> 125 </span> : // Heap-manipulation functions: push_heap, pop_heap, make_heap, sort_heap,
+<span class="lineNum"> 126 </span> : // + is_heap and is_heap_until in C++0x.
+<span class="lineNum"> 127 </span> :
+<span class="lineNum"> 128 </span> : template&lt;typename _RandomAccessIterator, typename _Distance, typename _Tp&gt;
+<span class="lineNum"> 129 </span> : void
+<span class="lineNum"> 130 </span> : __push_heap(_RandomAccessIterator __first,
+<span class="lineNum"> 131 </span><span class="lineNoCov"> 0 : _Distance __holeIndex, _Distance __topIndex, _Tp __value)</span>
+<span class="lineNum"> 132 </span> : {
+<span class="lineNum"> 133 </span><span class="lineNoCov"> 0 : _Distance __parent = (__holeIndex - 1) / 2;</span>
+<span class="lineNum"> 134 </span><span class="lineNoCov"> 0 : while (__holeIndex &gt; __topIndex &amp;&amp; *(__first + __parent) &lt; __value)</span>
+<span class="lineNum"> 135 </span> : {
+<span class="lineNum"> 136 </span><span class="lineNoCov"> 0 : *(__first + __holeIndex) = _GLIBCXX_MOVE(*(__first + __parent));</span>
+<span class="lineNum"> 137 </span><span class="lineNoCov"> 0 : __holeIndex = __parent;</span>
+<span class="lineNum"> 138 </span><span class="lineNoCov"> 0 : __parent = (__holeIndex - 1) / 2;</span>
+<span class="lineNum"> 139 </span> : }
+<span class="lineNum"> 140 </span><span class="lineNoCov"> 0 : *(__first + __holeIndex) = _GLIBCXX_MOVE(__value);</span>
+<span class="lineNum"> 141 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 142 </span> :
+<span class="lineNum"> 143 </span> : /**
+<span class="lineNum"> 144 </span> : * @brief Push an element onto a heap.
+<span class="lineNum"> 145 </span> : * @param first Start of heap.
+<span class="lineNum"> 146 </span> : * @param last End of heap + element.
+<span class="lineNum"> 147 </span> : * @ingroup heap
+<span class="lineNum"> 148 </span> : *
+<span class="lineNum"> 149 </span> : * This operation pushes the element at last-1 onto the valid heap over the
+<span class="lineNum"> 150 </span> : * range [first,last-1). After completion, [first,last) is a valid heap.
+<span class="lineNum"> 151 </span> : */
+<span class="lineNum"> 152 </span> : template&lt;typename _RandomAccessIterator&gt;
+<span class="lineNum"> 153 </span> : inline void
+<span class="lineNum"> 154 </span> : push_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
+<span class="lineNum"> 155 </span> : {
+<span class="lineNum"> 156 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 157 </span> : _ValueType;
+<span class="lineNum"> 158 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::difference_type
+<span class="lineNum"> 159 </span> : _DistanceType;
+<span class="lineNum"> 160 </span> :
+<span class="lineNum"> 161 </span> : // concept requirements
+<span class="lineNum"> 162 </span> : __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 163 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 164 </span> : __glibcxx_function_requires(_LessThanComparableConcept&lt;_ValueType&gt;)
+<span class="lineNum"> 165 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 166 </span> : __glibcxx_requires_heap(__first, __last - 1);
+<span class="lineNum"> 167 </span> :
+<span class="lineNum"> 168 </span> : _ValueType __value = _GLIBCXX_MOVE(*(__last - 1));
+<span class="lineNum"> 169 </span> : std::__push_heap(__first, _DistanceType((__last - __first) - 1),
+<span class="lineNum"> 170 </span> : _DistanceType(0), _GLIBCXX_MOVE(__value));
+<span class="lineNum"> 171 </span> : }
+<span class="lineNum"> 172 </span> :
+<span class="lineNum"> 173 </span> : template&lt;typename _RandomAccessIterator, typename _Distance, typename _Tp,
+<span class="lineNum"> 174 </span> : typename _Compare&gt;
+<span class="lineNum"> 175 </span> : void
+<span class="lineNum"> 176 </span> : __push_heap(_RandomAccessIterator __first, _Distance __holeIndex,
+<span class="lineNum"> 177 </span><span class="lineNoCov"> 0 : _Distance __topIndex, _Tp __value, _Compare __comp)</span>
+<span class="lineNum"> 178 </span> : {
+<span class="lineNum"> 179 </span><span class="lineNoCov"> 0 : _Distance __parent = (__holeIndex - 1) / 2;</span>
+<span class="lineNum"> 180 </span><span class="lineNoCov"> 0 : while (__holeIndex &gt; __topIndex</span>
+<span class="lineNum"> 181 </span> : &amp;&amp; __comp(*(__first + __parent), __value))
+<span class="lineNum"> 182 </span> : {
+<span class="lineNum"> 183 </span><span class="lineNoCov"> 0 : *(__first + __holeIndex) = _GLIBCXX_MOVE(*(__first + __parent));</span>
+<span class="lineNum"> 184 </span><span class="lineNoCov"> 0 : __holeIndex = __parent;</span>
+<span class="lineNum"> 185 </span><span class="lineNoCov"> 0 : __parent = (__holeIndex - 1) / 2;</span>
+<span class="lineNum"> 186 </span> : }
+<span class="lineNum"> 187 </span><span class="lineNoCov"> 0 : *(__first + __holeIndex) = _GLIBCXX_MOVE(__value);</span>
+<span class="lineNum"> 188 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 189 </span> :
+<span class="lineNum"> 190 </span> : /**
+<span class="lineNum"> 191 </span> : * @brief Push an element onto a heap using comparison functor.
+<span class="lineNum"> 192 </span> : * @param first Start of heap.
+<span class="lineNum"> 193 </span> : * @param last End of heap + element.
+<span class="lineNum"> 194 </span> : * @param comp Comparison functor.
+<span class="lineNum"> 195 </span> : * @ingroup heap
+<span class="lineNum"> 196 </span> : *
+<span class="lineNum"> 197 </span> : * This operation pushes the element at last-1 onto the valid heap over the
+<span class="lineNum"> 198 </span> : * range [first,last-1). After completion, [first,last) is a valid heap.
+<span class="lineNum"> 199 </span> : * Compare operations are performed using comp.
+<span class="lineNum"> 200 </span> : */
+<span class="lineNum"> 201 </span> : template&lt;typename _RandomAccessIterator, typename _Compare&gt;
+<span class="lineNum"> 202 </span> : inline void
+<span class="lineNum"> 203 </span> : push_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
+<span class="lineNum"> 204 </span> : _Compare __comp)
+<span class="lineNum"> 205 </span> : {
+<span class="lineNum"> 206 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 207 </span> : _ValueType;
+<span class="lineNum"> 208 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::difference_type
+<span class="lineNum"> 209 </span> : _DistanceType;
+<span class="lineNum"> 210 </span> :
+<span class="lineNum"> 211 </span> : // concept requirements
+<span class="lineNum"> 212 </span> : __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 213 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 214 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 215 </span> : __glibcxx_requires_heap_pred(__first, __last - 1, __comp);
+<span class="lineNum"> 216 </span> :
+<span class="lineNum"> 217 </span> : _ValueType __value = _GLIBCXX_MOVE(*(__last - 1));
+<span class="lineNum"> 218 </span> : std::__push_heap(__first, _DistanceType((__last - __first) - 1),
+<span class="lineNum"> 219 </span> : _DistanceType(0), _GLIBCXX_MOVE(__value), __comp);
+<span class="lineNum"> 220 </span> : }
+<span class="lineNum"> 221 </span> :
+<span class="lineNum"> 222 </span> : template&lt;typename _RandomAccessIterator, typename _Distance, typename _Tp&gt;
+<span class="lineNum"> 223 </span> : void
+<span class="lineNum"> 224 </span> : __adjust_heap(_RandomAccessIterator __first, _Distance __holeIndex,
+<span class="lineNum"> 225 </span><span class="lineNoCov"> 0 : _Distance __len, _Tp __value)</span>
+<span class="lineNum"> 226 </span> : {
+<span class="lineNum"> 227 </span><span class="lineNoCov"> 0 : const _Distance __topIndex = __holeIndex;</span>
+<span class="lineNum"> 228 </span><span class="lineNoCov"> 0 : _Distance __secondChild = __holeIndex;</span>
+<span class="lineNum"> 229 </span><span class="lineNoCov"> 0 : while (__secondChild &lt; (__len - 1) / 2)</span>
+<span class="lineNum"> 230 </span> : {
+<span class="lineNum"> 231 </span><span class="lineNoCov"> 0 : __secondChild = 2 * (__secondChild + 1);</span>
+<span class="lineNum"> 232 </span><span class="lineNoCov"> 0 : if (*(__first + __secondChild) &lt; *(__first + (__secondChild - 1)))</span>
+<span class="lineNum"> 233 </span><span class="lineNoCov"> 0 : __secondChild--;</span>
+<span class="lineNum"> 234 </span><span class="lineNoCov"> 0 : *(__first + __holeIndex) = _GLIBCXX_MOVE(*(__first + __secondChild));</span>
+<span class="lineNum"> 235 </span><span class="lineNoCov"> 0 : __holeIndex = __secondChild;</span>
+<span class="lineNum"> 236 </span> : }
+<span class="lineNum"> 237 </span><span class="lineNoCov"> 0 : if ((__len &amp; 1) == 0 &amp;&amp; __secondChild == (__len - 2) / 2)</span>
+<span class="lineNum"> 238 </span> : {
+<span class="lineNum"> 239 </span><span class="lineNoCov"> 0 : __secondChild = 2 * (__secondChild + 1);</span>
+<span class="lineNum"> 240 </span><span class="lineNoCov"> 0 : *(__first + __holeIndex) = _GLIBCXX_MOVE(*(__first</span>
+<span class="lineNum"> 241 </span> : + (__secondChild - 1)));
+<span class="lineNum"> 242 </span><span class="lineNoCov"> 0 : __holeIndex = __secondChild - 1;</span>
+<span class="lineNum"> 243 </span> : }
+<span class="lineNum"> 244 </span><span class="lineNoCov"> 0 : std::__push_heap(__first, __holeIndex, __topIndex,</span>
+<span class="lineNum"> 245 </span> : _GLIBCXX_MOVE(__value));
+<span class="lineNum"> 246 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 247 </span> :
+<span class="lineNum"> 248 </span> : template&lt;typename _RandomAccessIterator&gt;
+<span class="lineNum"> 249 </span> : inline void
+<span class="lineNum"> 250 </span> : __pop_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
+<span class="lineNum"> 251 </span><span class="lineNoCov"> 0 : _RandomAccessIterator __result)</span>
+<span class="lineNum"> 252 </span> : {
+<span class="lineNum"> 253 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 254 </span> : _ValueType;
+<span class="lineNum"> 255 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::difference_type
+<span class="lineNum"> 256 </span> : _DistanceType;
+<span class="lineNum"> 257 </span> :
+<span class="lineNum"> 258 </span><span class="lineNoCov"> 0 : _ValueType __value = _GLIBCXX_MOVE(*__result);</span>
+<span class="lineNum"> 259 </span><span class="lineNoCov"> 0 : *__result = _GLIBCXX_MOVE(*__first);</span>
+<span class="lineNum"> 260 </span><span class="lineNoCov"> 0 : std::__adjust_heap(__first, _DistanceType(0),</span>
+<span class="lineNum"> 261 </span> : _DistanceType(__last - __first),
+<span class="lineNum"> 262 </span> : _GLIBCXX_MOVE(__value));
+<span class="lineNum"> 263 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 264 </span> :
+<span class="lineNum"> 265 </span> : /**
+<span class="lineNum"> 266 </span> : * @brief Pop an element off a heap.
+<span class="lineNum"> 267 </span> : * @param first Start of heap.
+<span class="lineNum"> 268 </span> : * @param last End of heap.
+<span class="lineNum"> 269 </span> : * @ingroup heap
+<span class="lineNum"> 270 </span> : *
+<span class="lineNum"> 271 </span> : * This operation pops the top of the heap. The elements first and last-1
+<span class="lineNum"> 272 </span> : * are swapped and [first,last-1) is made into a heap.
+<span class="lineNum"> 273 </span> : */
+<span class="lineNum"> 274 </span> : template&lt;typename _RandomAccessIterator&gt;
+<span class="lineNum"> 275 </span> : inline void
+<span class="lineNum"> 276 </span><span class="lineNoCov"> 0 : pop_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)</span>
+<span class="lineNum"> 277 </span> : {
+<span class="lineNum"> 278 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 279 </span> : _ValueType;
+<span class="lineNum"> 280 </span> :
+<span class="lineNum"> 281 </span> : // concept requirements
+<span class="lineNum"> 282 </span> : __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 283 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 284 </span> : __glibcxx_function_requires(_LessThanComparableConcept&lt;_ValueType&gt;)
+<span class="lineNum"> 285 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 286 </span> : __glibcxx_requires_heap(__first, __last);
+<span class="lineNum"> 287 </span> :
+<span class="lineNum"> 288 </span><span class="lineNoCov"> 0 : std::__pop_heap(__first, __last - 1, __last - 1);</span>
+<span class="lineNum"> 289 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 290 </span> :
+<span class="lineNum"> 291 </span> : template&lt;typename _RandomAccessIterator, typename _Distance,
+<span class="lineNum"> 292 </span> : typename _Tp, typename _Compare&gt;
+<span class="lineNum"> 293 </span> : void
+<span class="lineNum"> 294 </span> : __adjust_heap(_RandomAccessIterator __first, _Distance __holeIndex,
+<span class="lineNum"> 295 </span><span class="lineNoCov"> 0 : _Distance __len, _Tp __value, _Compare __comp)</span>
+<span class="lineNum"> 296 </span> : {
+<span class="lineNum"> 297 </span><span class="lineNoCov"> 0 : const _Distance __topIndex = __holeIndex;</span>
+<span class="lineNum"> 298 </span><span class="lineNoCov"> 0 : _Distance __secondChild = __holeIndex;</span>
+<span class="lineNum"> 299 </span><span class="lineNoCov"> 0 : while (__secondChild &lt; (__len - 1) / 2)</span>
+<span class="lineNum"> 300 </span> : {
+<span class="lineNum"> 301 </span><span class="lineNoCov"> 0 : __secondChild = 2 * (__secondChild + 1);</span>
+<span class="lineNum"> 302 </span><span class="lineNoCov"> 0 : if (__comp(*(__first + __secondChild),</span>
+<span class="lineNum"> 303 </span> : *(__first + (__secondChild - 1))))
+<span class="lineNum"> 304 </span><span class="lineNoCov"> 0 : __secondChild--;</span>
+<span class="lineNum"> 305 </span><span class="lineNoCov"> 0 : *(__first + __holeIndex) = _GLIBCXX_MOVE(*(__first + __secondChild));</span>
+<span class="lineNum"> 306 </span><span class="lineNoCov"> 0 : __holeIndex = __secondChild;</span>
+<span class="lineNum"> 307 </span> : }
+<span class="lineNum"> 308 </span><span class="lineNoCov"> 0 : if ((__len &amp; 1) == 0 &amp;&amp; __secondChild == (__len - 2) / 2)</span>
+<span class="lineNum"> 309 </span> : {
+<span class="lineNum"> 310 </span><span class="lineNoCov"> 0 : __secondChild = 2 * (__secondChild + 1);</span>
+<span class="lineNum"> 311 </span><span class="lineNoCov"> 0 : *(__first + __holeIndex) = _GLIBCXX_MOVE(*(__first</span>
+<span class="lineNum"> 312 </span> : + (__secondChild - 1)));
+<span class="lineNum"> 313 </span><span class="lineNoCov"> 0 : __holeIndex = __secondChild - 1;</span>
+<span class="lineNum"> 314 </span> : }
+<span class="lineNum"> 315 </span><span class="lineNoCov"> 0 : std::__push_heap(__first, __holeIndex, __topIndex, </span>
+<span class="lineNum"> 316 </span> : _GLIBCXX_MOVE(__value), __comp);
+<span class="lineNum"> 317 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 318 </span> :
+<span class="lineNum"> 319 </span> : template&lt;typename _RandomAccessIterator, typename _Compare&gt;
+<span class="lineNum"> 320 </span> : inline void
+<span class="lineNum"> 321 </span> : __pop_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
+<span class="lineNum"> 322 </span><span class="lineNoCov"> 0 : _RandomAccessIterator __result, _Compare __comp)</span>
+<span class="lineNum"> 323 </span> : {
+<span class="lineNum"> 324 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 325 </span> : _ValueType;
+<span class="lineNum"> 326 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::difference_type
+<span class="lineNum"> 327 </span> : _DistanceType;
+<span class="lineNum"> 328 </span> :
+<span class="lineNum"> 329 </span><span class="lineNoCov"> 0 : _ValueType __value = _GLIBCXX_MOVE(*__result);</span>
+<span class="lineNum"> 330 </span><span class="lineNoCov"> 0 : *__result = _GLIBCXX_MOVE(*__first);</span>
+<span class="lineNum"> 331 </span><span class="lineNoCov"> 0 : std::__adjust_heap(__first, _DistanceType(0),</span>
+<span class="lineNum"> 332 </span> : _DistanceType(__last - __first),
+<span class="lineNum"> 333 </span> : _GLIBCXX_MOVE(__value), __comp);
+<span class="lineNum"> 334 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 335 </span> :
+<span class="lineNum"> 336 </span> : /**
+<span class="lineNum"> 337 </span> : * @brief Pop an element off a heap using comparison functor.
+<span class="lineNum"> 338 </span> : * @param first Start of heap.
+<span class="lineNum"> 339 </span> : * @param last End of heap.
+<span class="lineNum"> 340 </span> : * @param comp Comparison functor to use.
+<span class="lineNum"> 341 </span> : * @ingroup heap
+<span class="lineNum"> 342 </span> : *
+<span class="lineNum"> 343 </span> : * This operation pops the top of the heap. The elements first and last-1
+<span class="lineNum"> 344 </span> : * are swapped and [first,last-1) is made into a heap. Comparisons are
+<span class="lineNum"> 345 </span> : * made using comp.
+<span class="lineNum"> 346 </span> : */
+<span class="lineNum"> 347 </span> : template&lt;typename _RandomAccessIterator, typename _Compare&gt;
+<span class="lineNum"> 348 </span> : inline void
+<span class="lineNum"> 349 </span> : pop_heap(_RandomAccessIterator __first,
+<span class="lineNum"> 350 </span><span class="lineNoCov"> 0 : _RandomAccessIterator __last, _Compare __comp)</span>
+<span class="lineNum"> 351 </span> : {
+<span class="lineNum"> 352 </span> : // concept requirements
+<span class="lineNum"> 353 </span> : __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 354 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 355 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 356 </span> : __glibcxx_requires_heap_pred(__first, __last, __comp);
+<span class="lineNum"> 357 </span> :
+<span class="lineNum"> 358 </span><span class="lineNoCov"> 0 : std::__pop_heap(__first, __last - 1, __last - 1, __comp);</span>
+<span class="lineNum"> 359 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 360 </span> :
+<span class="lineNum"> 361 </span> : /**
+<span class="lineNum"> 362 </span> : * @brief Construct a heap over a range.
+<span class="lineNum"> 363 </span> : * @param first Start of heap.
+<span class="lineNum"> 364 </span> : * @param last End of heap.
+<span class="lineNum"> 365 </span> : * @ingroup heap
+<span class="lineNum"> 366 </span> : *
+<span class="lineNum"> 367 </span> : * This operation makes the elements in [first,last) into a heap.
+<span class="lineNum"> 368 </span> : */
+<span class="lineNum"> 369 </span> : template&lt;typename _RandomAccessIterator&gt;
+<span class="lineNum"> 370 </span> : void
+<span class="lineNum"> 371 </span><span class="lineNoCov"> 0 : make_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)</span>
+<span class="lineNum"> 372 </span> : {
+<span class="lineNum"> 373 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 374 </span> : _ValueType;
+<span class="lineNum"> 375 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::difference_type
+<span class="lineNum"> 376 </span> : _DistanceType;
+<span class="lineNum"> 377 </span> :
+<span class="lineNum"> 378 </span> : // concept requirements
+<span class="lineNum"> 379 </span> : __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 380 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 381 </span> : __glibcxx_function_requires(_LessThanComparableConcept&lt;_ValueType&gt;)
+<span class="lineNum"> 382 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 383 </span> :
+<span class="lineNum"> 384 </span><span class="lineNoCov"> 0 : if (__last - __first &lt; 2)</span>
+<span class="lineNum"> 385 </span><span class="lineNoCov"> 0 : return;</span>
+<span class="lineNum"> 386 </span> :
+<span class="lineNum"> 387 </span><span class="lineNoCov"> 0 : const _DistanceType __len = __last - __first;</span>
+<span class="lineNum"> 388 </span><span class="lineNoCov"> 0 : _DistanceType __parent = (__len - 2) / 2;</span>
+<span class="lineNum"> 389 </span><span class="lineNoCov"> 0 : while (true)</span>
+<span class="lineNum"> 390 </span> : {
+<span class="lineNum"> 391 </span><span class="lineNoCov"> 0 : _ValueType __value = _GLIBCXX_MOVE(*(__first + __parent));</span>
+<span class="lineNum"> 392 </span><span class="lineNoCov"> 0 : std::__adjust_heap(__first, __parent, __len, _GLIBCXX_MOVE(__value));</span>
+<span class="lineNum"> 393 </span><span class="lineNoCov"> 0 : if (__parent == 0)</span>
+<span class="lineNum"> 394 </span><span class="lineNoCov"> 0 : return;</span>
+<span class="lineNum"> 395 </span><span class="lineNoCov"> 0 : __parent--;</span>
+<span class="lineNum"> 396 </span> : }
+<span class="lineNum"> 397 </span> : }
+<span class="lineNum"> 398 </span> :
+<span class="lineNum"> 399 </span> : /**
+<span class="lineNum"> 400 </span> : * @brief Construct a heap over a range using comparison functor.
+<span class="lineNum"> 401 </span> : * @param first Start of heap.
+<span class="lineNum"> 402 </span> : * @param last End of heap.
+<span class="lineNum"> 403 </span> : * @param comp Comparison functor to use.
+<span class="lineNum"> 404 </span> : * @ingroup heap
+<span class="lineNum"> 405 </span> : *
+<span class="lineNum"> 406 </span> : * This operation makes the elements in [first,last) into a heap.
+<span class="lineNum"> 407 </span> : * Comparisons are made using comp.
+<span class="lineNum"> 408 </span> : */
+<span class="lineNum"> 409 </span> : template&lt;typename _RandomAccessIterator, typename _Compare&gt;
+<span class="lineNum"> 410 </span> : void
+<span class="lineNum"> 411 </span> : make_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
+<span class="lineNum"> 412 </span><span class="lineNoCov"> 0 : _Compare __comp)</span>
+<span class="lineNum"> 413 </span> : {
+<span class="lineNum"> 414 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type
+<span class="lineNum"> 415 </span> : _ValueType;
+<span class="lineNum"> 416 </span> : typedef typename iterator_traits&lt;_RandomAccessIterator&gt;::difference_type
+<span class="lineNum"> 417 </span> : _DistanceType;
+<span class="lineNum"> 418 </span> :
+<span class="lineNum"> 419 </span> : // concept requirements
+<span class="lineNum"> 420 </span> : __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 421 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 422 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 423 </span> :
+<span class="lineNum"> 424 </span><span class="lineNoCov"> 0 : if (__last - __first &lt; 2)</span>
+<span class="lineNum"> 425 </span><span class="lineNoCov"> 0 : return;</span>
+<span class="lineNum"> 426 </span> :
+<span class="lineNum"> 427 </span><span class="lineNoCov"> 0 : const _DistanceType __len = __last - __first;</span>
+<span class="lineNum"> 428 </span><span class="lineNoCov"> 0 : _DistanceType __parent = (__len - 2) / 2;</span>
+<span class="lineNum"> 429 </span><span class="lineNoCov"> 0 : while (true)</span>
+<span class="lineNum"> 430 </span> : {
+<span class="lineNum"> 431 </span><span class="lineNoCov"> 0 : _ValueType __value = _GLIBCXX_MOVE(*(__first + __parent));</span>
+<span class="lineNum"> 432 </span><span class="lineNoCov"> 0 : std::__adjust_heap(__first, __parent, __len, _GLIBCXX_MOVE(__value),</span>
+<span class="lineNum"> 433 </span> : __comp);
+<span class="lineNum"> 434 </span><span class="lineNoCov"> 0 : if (__parent == 0)</span>
+<span class="lineNum"> 435 </span><span class="lineNoCov"> 0 : return;</span>
+<span class="lineNum"> 436 </span><span class="lineNoCov"> 0 : __parent--;</span>
+<span class="lineNum"> 437 </span> : }
+<span class="lineNum"> 438 </span> : }
+<span class="lineNum"> 439 </span> :
+<span class="lineNum"> 440 </span> : /**
+<span class="lineNum"> 441 </span> : * @brief Sort a heap.
+<span class="lineNum"> 442 </span> : * @param first Start of heap.
+<span class="lineNum"> 443 </span> : * @param last End of heap.
+<span class="lineNum"> 444 </span> : * @ingroup heap
+<span class="lineNum"> 445 </span> : *
+<span class="lineNum"> 446 </span> : * This operation sorts the valid heap in the range [first,last).
+<span class="lineNum"> 447 </span> : */
+<span class="lineNum"> 448 </span> : template&lt;typename _RandomAccessIterator&gt;
+<span class="lineNum"> 449 </span> : void
+<span class="lineNum"> 450 </span><span class="lineNoCov"> 0 : sort_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)</span>
+<span class="lineNum"> 451 </span> : {
+<span class="lineNum"> 452 </span> : // concept requirements
+<span class="lineNum"> 453 </span> : __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 454 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 455 </span> : __glibcxx_function_requires(_LessThanComparableConcept&lt;
+<span class="lineNum"> 456 </span> : typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type&gt;)
+<span class="lineNum"> 457 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 458 </span> : __glibcxx_requires_heap(__first, __last);
+<span class="lineNum"> 459 </span> :
+<span class="lineNum"> 460 </span><span class="lineNoCov"> 0 : while (__last - __first &gt; 1)</span>
+<span class="lineNum"> 461 </span><span class="lineNoCov"> 0 : std::pop_heap(__first, _RandomAccessIterator(__last--));</span>
+<span class="lineNum"> 462 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 463 </span> :
+<span class="lineNum"> 464 </span> : /**
+<span class="lineNum"> 465 </span> : * @brief Sort a heap using comparison functor.
+<span class="lineNum"> 466 </span> : * @param first Start of heap.
+<span class="lineNum"> 467 </span> : * @param last End of heap.
+<span class="lineNum"> 468 </span> : * @param comp Comparison functor to use.
+<span class="lineNum"> 469 </span> : * @ingroup heap
+<span class="lineNum"> 470 </span> : *
+<span class="lineNum"> 471 </span> : * This operation sorts the valid heap in the range [first,last).
+<span class="lineNum"> 472 </span> : * Comparisons are made using comp.
+<span class="lineNum"> 473 </span> : */
+<span class="lineNum"> 474 </span> : template&lt;typename _RandomAccessIterator, typename _Compare&gt;
+<span class="lineNum"> 475 </span> : void
+<span class="lineNum"> 476 </span> : sort_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
+<span class="lineNum"> 477 </span><span class="lineNoCov"> 0 : _Compare __comp)</span>
+<span class="lineNum"> 478 </span> : {
+<span class="lineNum"> 479 </span> : // concept requirements
+<span class="lineNum"> 480 </span> : __glibcxx_function_requires(_Mutable_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 481 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 482 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 483 </span> : __glibcxx_requires_heap_pred(__first, __last, __comp);
+<span class="lineNum"> 484 </span> :
+<span class="lineNum"> 485 </span><span class="lineNoCov"> 0 : while (__last - __first &gt; 1)</span>
+<span class="lineNum"> 486 </span><span class="lineNoCov"> 0 : std::pop_heap(__first, _RandomAccessIterator(__last--), __comp);</span>
+<span class="lineNum"> 487 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 488 </span> :
+<span class="lineNum"> 489 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 490 </span> : /**
+<span class="lineNum"> 491 </span> : * @brief Search the end of a heap.
+<span class="lineNum"> 492 </span> : * @param first Start of range.
+<span class="lineNum"> 493 </span> : * @param last End of range.
+<span class="lineNum"> 494 </span> : * @return An iterator pointing to the first element not in the heap.
+<span class="lineNum"> 495 </span> : * @ingroup heap
+<span class="lineNum"> 496 </span> : *
+<span class="lineNum"> 497 </span> : * This operation returns the last iterator i in [first, last) for which
+<span class="lineNum"> 498 </span> : * the range [first, i) is a heap.
+<span class="lineNum"> 499 </span> : */
+<span class="lineNum"> 500 </span> : template&lt;typename _RandomAccessIterator&gt;
+<span class="lineNum"> 501 </span> : inline _RandomAccessIterator
+<span class="lineNum"> 502 </span> : is_heap_until(_RandomAccessIterator __first, _RandomAccessIterator __last)
+<span class="lineNum"> 503 </span> : {
+<span class="lineNum"> 504 </span> : // concept requirements
+<span class="lineNum"> 505 </span> : __glibcxx_function_requires(_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 506 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 507 </span> : __glibcxx_function_requires(_LessThanComparableConcept&lt;
+<span class="lineNum"> 508 </span> : typename iterator_traits&lt;_RandomAccessIterator&gt;::value_type&gt;)
+<span class="lineNum"> 509 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 510 </span> :
+<span class="lineNum"> 511 </span> : return __first + std::__is_heap_until(__first, std::distance(__first,
+<span class="lineNum"> 512 </span> : __last));
+<span class="lineNum"> 513 </span> : }
+<span class="lineNum"> 514 </span> :
+<span class="lineNum"> 515 </span> : /**
+<span class="lineNum"> 516 </span> : * @brief Search the end of a heap using comparison functor.
+<span class="lineNum"> 517 </span> : * @param first Start of range.
+<span class="lineNum"> 518 </span> : * @param last End of range.
+<span class="lineNum"> 519 </span> : * @param comp Comparison functor to use.
+<span class="lineNum"> 520 </span> : * @return An iterator pointing to the first element not in the heap.
+<span class="lineNum"> 521 </span> : * @ingroup heap
+<span class="lineNum"> 522 </span> : *
+<span class="lineNum"> 523 </span> : * This operation returns the last iterator i in [first, last) for which
+<span class="lineNum"> 524 </span> : * the range [first, i) is a heap. Comparisons are made using comp.
+<span class="lineNum"> 525 </span> : */
+<span class="lineNum"> 526 </span> : template&lt;typename _RandomAccessIterator, typename _Compare&gt;
+<span class="lineNum"> 527 </span> : inline _RandomAccessIterator
+<span class="lineNum"> 528 </span> : is_heap_until(_RandomAccessIterator __first, _RandomAccessIterator __last,
+<span class="lineNum"> 529 </span> : _Compare __comp)
+<span class="lineNum"> 530 </span> : {
+<span class="lineNum"> 531 </span> : // concept requirements
+<span class="lineNum"> 532 </span> : __glibcxx_function_requires(_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 533 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 534 </span> : __glibcxx_requires_valid_range(__first, __last);
+<span class="lineNum"> 535 </span> :
+<span class="lineNum"> 536 </span> : return __first + std::__is_heap_until(__first, std::distance(__first,
+<span class="lineNum"> 537 </span> : __last),
+<span class="lineNum"> 538 </span> : __comp);
+<span class="lineNum"> 539 </span> : }
+<span class="lineNum"> 540 </span> :
+<span class="lineNum"> 541 </span> : /**
+<span class="lineNum"> 542 </span> : * @brief Determines whether a range is a heap.
+<span class="lineNum"> 543 </span> : * @param first Start of range.
+<span class="lineNum"> 544 </span> : * @param last End of range.
+<span class="lineNum"> 545 </span> : * @return True if range is a heap, false otherwise.
+<span class="lineNum"> 546 </span> : * @ingroup heap
+<span class="lineNum"> 547 </span> : */
+<span class="lineNum"> 548 </span> : template&lt;typename _RandomAccessIterator&gt;
+<span class="lineNum"> 549 </span> : inline bool
+<span class="lineNum"> 550 </span> : is_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
+<span class="lineNum"> 551 </span> : { return std::is_heap_until(__first, __last) == __last; }
+<span class="lineNum"> 552 </span> :
+<span class="lineNum"> 553 </span> : /**
+<span class="lineNum"> 554 </span> : * @brief Determines whether a range is a heap using comparison functor.
+<span class="lineNum"> 555 </span> : * @param first Start of range.
+<span class="lineNum"> 556 </span> : * @param last End of range.
+<span class="lineNum"> 557 </span> : * @param comp Comparison functor to use.
+<span class="lineNum"> 558 </span> : * @return True if range is a heap, false otherwise.
+<span class="lineNum"> 559 </span> : * @ingroup heap
+<span class="lineNum"> 560 </span> : */
+<span class="lineNum"> 561 </span> : template&lt;typename _RandomAccessIterator, typename _Compare&gt;
+<span class="lineNum"> 562 </span> : inline bool
+<span class="lineNum"> 563 </span> : is_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
+<span class="lineNum"> 564 </span> : _Compare __comp)
+<span class="lineNum"> 565 </span> : { return std::is_heap_until(__first, __last, __comp) == __last; }
+<span class="lineNum"> 566 </span> : #endif
+<span class="lineNum"> 567 </span> :
+<span class="lineNum"> 568 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 569 </span> :
+<span class="lineNum"> 570 </span> : #endif /* _STL_HEAP_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/stl_iterator.h.gcov.html b/rep/usr/include/c++/4.3/bits/stl_iterator.h.gcov.html
new file mode 100644
index 0000000..20e1312
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/stl_iterator.h.gcov.html
@@ -0,0 +1,1095 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/stl_iterator.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - stl_iterator.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">66</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">93.9 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">62</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Iterators -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 18 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 19 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 20 </span> : // USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /*
+<span class="lineNum"> 32 </span> : *
+<span class="lineNum"> 33 </span> : * Copyright (c) 1994
+<span class="lineNum"> 34 </span> : * Hewlett-Packard Company
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 37 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 38 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 39 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 40 </span> : * in supporting documentation. Hewlett-Packard Company makes no
+<span class="lineNum"> 41 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 42 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 43 </span> : *
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * Copyright (c) 1996-1998
+<span class="lineNum"> 46 </span> : * Silicon Graphics Computer Systems, Inc.
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 49 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 50 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 51 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 52 </span> : * in supporting documentation. Silicon Graphics makes no
+<span class="lineNum"> 53 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 54 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 55 </span> : */
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /** @file stl_iterator.h
+<span class="lineNum"> 58 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 59 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 60 </span> : *
+<span class="lineNum"> 61 </span> : * This file implements reverse_iterator, back_insert_iterator,
+<span class="lineNum"> 62 </span> : * front_insert_iterator, insert_iterator, __normal_iterator, and their
+<span class="lineNum"> 63 </span> : * supporting functions and overloaded operators.
+<span class="lineNum"> 64 </span> : */
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span> : #ifndef _STL_ITERATOR_H
+<span class="lineNum"> 67 </span> : #define _STL_ITERATOR_H 1
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span> : #include &lt;bits/cpp_type_traits.h&gt;
+<span class="lineNum"> 70 </span> : #include &lt;ext/type_traits.h&gt;
+<span class="lineNum"> 71 </span> : #include &lt;bits/stl_move.h&gt;
+<span class="lineNum"> 72 </span> :
+<span class="lineNum"> 73 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span> : // 24.4.1 Reverse iterators
+<span class="lineNum"> 76 </span> : /**
+<span class="lineNum"> 77 </span> : * &quot;Bidirectional and random access iterators have corresponding reverse
+<span class="lineNum"> 78 </span> : * %iterator adaptors that iterate through the data structure in the
+<span class="lineNum"> 79 </span> : * opposite direction. They have the same signatures as the corresponding
+<span class="lineNum"> 80 </span> : * iterators. The fundamental relation between a reverse %iterator and its
+<span class="lineNum"> 81 </span> : * corresponding %iterator @c i is established by the identity:
+<span class="lineNum"> 82 </span> : * @code
+<span class="lineNum"> 83 </span> : * &amp;*(reverse_iterator(i)) == &amp;*(i - 1)
+<span class="lineNum"> 84 </span> : * @endcode
+<span class="lineNum"> 85 </span> : *
+<span class="lineNum"> 86 </span> : * This mapping is dictated by the fact that while there is always a
+<span class="lineNum"> 87 </span> : * pointer past the end of an array, there might not be a valid pointer
+<span class="lineNum"> 88 </span> : * before the beginning of an array.&quot; [24.4.1]/1,2
+<span class="lineNum"> 89 </span> : *
+<span class="lineNum"> 90 </span> : * Reverse iterators can be tricky and surprising at first. Their
+<span class="lineNum"> 91 </span> : * semantics make sense, however, and the trickiness is a side effect of
+<span class="lineNum"> 92 </span> : * the requirement that the iterators must be safe.
+<span class="lineNum"> 93 </span> : */
+<span class="lineNum"> 94 </span> : template&lt;typename _Iterator&gt;
+<span class="lineNum"> 95 </span> : class reverse_iterator
+<span class="lineNum"> 96 </span> : : public iterator&lt;typename iterator_traits&lt;_Iterator&gt;::iterator_category,
+<span class="lineNum"> 97 </span> : typename iterator_traits&lt;_Iterator&gt;::value_type,
+<span class="lineNum"> 98 </span> : typename iterator_traits&lt;_Iterator&gt;::difference_type,
+<span class="lineNum"> 99 </span> : typename iterator_traits&lt;_Iterator&gt;::pointer,
+<span class="lineNum"> 100 </span> : typename iterator_traits&lt;_Iterator&gt;::reference&gt;
+<span class="lineNum"> 101 </span> : {
+<span class="lineNum"> 102 </span> : protected:
+<span class="lineNum"> 103 </span> : _Iterator current;
+<span class="lineNum"> 104 </span> :
+<span class="lineNum"> 105 </span> : public:
+<span class="lineNum"> 106 </span> : typedef _Iterator iterator_type;
+<span class="lineNum"> 107 </span> : typedef typename iterator_traits&lt;_Iterator&gt;::difference_type
+<span class="lineNum"> 108 </span> : difference_type;
+<span class="lineNum"> 109 </span> : typedef typename iterator_traits&lt;_Iterator&gt;::reference reference;
+<span class="lineNum"> 110 </span> : typedef typename iterator_traits&lt;_Iterator&gt;::pointer pointer;
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span> : public:
+<span class="lineNum"> 113 </span> : /**
+<span class="lineNum"> 114 </span> : * The default constructor default-initializes member @p current.
+<span class="lineNum"> 115 </span> : * If it is a pointer, that means it is zero-initialized.
+<span class="lineNum"> 116 </span> : */
+<span class="lineNum"> 117 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 118 </span> : // 235 No specification of default ctor for reverse_iterator
+<span class="lineNum"> 119 </span> : reverse_iterator() : current() { }
+<span class="lineNum"> 120 </span> :
+<span class="lineNum"> 121 </span> : /**
+<span class="lineNum"> 122 </span> : * This %iterator will move in the opposite direction that @p x does.
+<span class="lineNum"> 123 </span> : */
+<span class="lineNum"> 124 </span> : explicit
+<span class="lineNum"> 125 </span><span class="lineCov"> 34 : reverse_iterator(iterator_type __x) : current(__x) { }</span>
+<span class="lineNum"> 126 </span> :
+<span class="lineNum"> 127 </span> : /**
+<span class="lineNum"> 128 </span> : * The copy constructor is normal.
+<span class="lineNum"> 129 </span> : */
+<span class="lineNum"> 130 </span> : reverse_iterator(const reverse_iterator&amp; __x)
+<span class="lineNum"> 131 </span> : : current(__x.current) { }
+<span class="lineNum"> 132 </span> :
+<span class="lineNum"> 133 </span> : /**
+<span class="lineNum"> 134 </span> : * A reverse_iterator across other types can be copied in the normal
+<span class="lineNum"> 135 </span> : * fashion.
+<span class="lineNum"> 136 </span> : */
+<span class="lineNum"> 137 </span> : template&lt;typename _Iter&gt;
+<span class="lineNum"> 138 </span> : reverse_iterator(const reverse_iterator&lt;_Iter&gt;&amp; __x)
+<span class="lineNum"> 139 </span> : : current(__x.base()) { }
+<span class="lineNum"> 140 </span> :
+<span class="lineNum"> 141 </span> : /**
+<span class="lineNum"> 142 </span> : * @return @c current, the %iterator used for underlying work.
+<span class="lineNum"> 143 </span> : */
+<span class="lineNum"> 144 </span> : iterator_type
+<span class="lineNum"> 145 </span> : base() const
+<span class="lineNum"> 146 </span> : { return current; }
+<span class="lineNum"> 147 </span> :
+<span class="lineNum"> 148 </span> : /**
+<span class="lineNum"> 149 </span> : * @return TODO
+<span class="lineNum"> 150 </span> : *
+<span class="lineNum"> 151 </span> : * @doctodo
+<span class="lineNum"> 152 </span> : */
+<span class="lineNum"> 153 </span> : reference
+<span class="lineNum"> 154 </span><span class="lineCov"> 34 : operator*() const</span>
+<span class="lineNum"> 155 </span> : {
+<span class="lineNum"> 156 </span><span class="lineCov"> 34 : _Iterator __tmp = current;</span>
+<span class="lineNum"> 157 </span><span class="lineCov"> 34 : return *--__tmp;</span>
+<span class="lineNum"> 158 </span> : }
+<span class="lineNum"> 159 </span> :
+<span class="lineNum"> 160 </span> : /**
+<span class="lineNum"> 161 </span> : * @return TODO
+<span class="lineNum"> 162 </span> : *
+<span class="lineNum"> 163 </span> : * @doctodo
+<span class="lineNum"> 164 </span> : */
+<span class="lineNum"> 165 </span> : pointer
+<span class="lineNum"> 166 </span><span class="lineCov"> 32 : operator-&gt;() const</span>
+<span class="lineNum"> 167 </span><span class="lineCov"> 32 : { return &amp;(operator*()); }</span>
+<span class="lineNum"> 168 </span> :
+<span class="lineNum"> 169 </span> : /**
+<span class="lineNum"> 170 </span> : * @return TODO
+<span class="lineNum"> 171 </span> : *
+<span class="lineNum"> 172 </span> : * @doctodo
+<span class="lineNum"> 173 </span> : */
+<span class="lineNum"> 174 </span> : reverse_iterator&amp;
+<span class="lineNum"> 175 </span> : operator++()
+<span class="lineNum"> 176 </span> : {
+<span class="lineNum"> 177 </span> : --current;
+<span class="lineNum"> 178 </span> : return *this;
+<span class="lineNum"> 179 </span> : }
+<span class="lineNum"> 180 </span> :
+<span class="lineNum"> 181 </span> : /**
+<span class="lineNum"> 182 </span> : * @return TODO
+<span class="lineNum"> 183 </span> : *
+<span class="lineNum"> 184 </span> : * @doctodo
+<span class="lineNum"> 185 </span> : */
+<span class="lineNum"> 186 </span> : reverse_iterator
+<span class="lineNum"> 187 </span> : operator++(int)
+<span class="lineNum"> 188 </span> : {
+<span class="lineNum"> 189 </span> : reverse_iterator __tmp = *this;
+<span class="lineNum"> 190 </span> : --current;
+<span class="lineNum"> 191 </span> : return __tmp;
+<span class="lineNum"> 192 </span> : }
+<span class="lineNum"> 193 </span> :
+<span class="lineNum"> 194 </span> : /**
+<span class="lineNum"> 195 </span> : * @return TODO
+<span class="lineNum"> 196 </span> : *
+<span class="lineNum"> 197 </span> : * @doctodo
+<span class="lineNum"> 198 </span> : */
+<span class="lineNum"> 199 </span> : reverse_iterator&amp;
+<span class="lineNum"> 200 </span> : operator--()
+<span class="lineNum"> 201 </span> : {
+<span class="lineNum"> 202 </span> : ++current;
+<span class="lineNum"> 203 </span> : return *this;
+<span class="lineNum"> 204 </span> : }
+<span class="lineNum"> 205 </span> :
+<span class="lineNum"> 206 </span> : /**
+<span class="lineNum"> 207 </span> : * @return TODO
+<span class="lineNum"> 208 </span> : *
+<span class="lineNum"> 209 </span> : * @doctodo
+<span class="lineNum"> 210 </span> : */
+<span class="lineNum"> 211 </span> : reverse_iterator
+<span class="lineNum"> 212 </span> : operator--(int)
+<span class="lineNum"> 213 </span> : {
+<span class="lineNum"> 214 </span> : reverse_iterator __tmp = *this;
+<span class="lineNum"> 215 </span> : ++current;
+<span class="lineNum"> 216 </span> : return __tmp;
+<span class="lineNum"> 217 </span> : }
+<span class="lineNum"> 218 </span> :
+<span class="lineNum"> 219 </span> : /**
+<span class="lineNum"> 220 </span> : * @return TODO
+<span class="lineNum"> 221 </span> : *
+<span class="lineNum"> 222 </span> : * @doctodo
+<span class="lineNum"> 223 </span> : */
+<span class="lineNum"> 224 </span> : reverse_iterator
+<span class="lineNum"> 225 </span> : operator+(difference_type __n) const
+<span class="lineNum"> 226 </span> : { return reverse_iterator(current - __n); }
+<span class="lineNum"> 227 </span> :
+<span class="lineNum"> 228 </span> : /**
+<span class="lineNum"> 229 </span> : * @return TODO
+<span class="lineNum"> 230 </span> : *
+<span class="lineNum"> 231 </span> : * @doctodo
+<span class="lineNum"> 232 </span> : */
+<span class="lineNum"> 233 </span> : reverse_iterator&amp;
+<span class="lineNum"> 234 </span> : operator+=(difference_type __n)
+<span class="lineNum"> 235 </span> : {
+<span class="lineNum"> 236 </span> : current -= __n;
+<span class="lineNum"> 237 </span> : return *this;
+<span class="lineNum"> 238 </span> : }
+<span class="lineNum"> 239 </span> :
+<span class="lineNum"> 240 </span> : /**
+<span class="lineNum"> 241 </span> : * @return TODO
+<span class="lineNum"> 242 </span> : *
+<span class="lineNum"> 243 </span> : * @doctodo
+<span class="lineNum"> 244 </span> : */
+<span class="lineNum"> 245 </span> : reverse_iterator
+<span class="lineNum"> 246 </span> : operator-(difference_type __n) const
+<span class="lineNum"> 247 </span> : { return reverse_iterator(current + __n); }
+<span class="lineNum"> 248 </span> :
+<span class="lineNum"> 249 </span> : /**
+<span class="lineNum"> 250 </span> : * @return TODO
+<span class="lineNum"> 251 </span> : *
+<span class="lineNum"> 252 </span> : * @doctodo
+<span class="lineNum"> 253 </span> : */
+<span class="lineNum"> 254 </span> : reverse_iterator&amp;
+<span class="lineNum"> 255 </span> : operator-=(difference_type __n)
+<span class="lineNum"> 256 </span> : {
+<span class="lineNum"> 257 </span> : current += __n;
+<span class="lineNum"> 258 </span> : return *this;
+<span class="lineNum"> 259 </span> : }
+<span class="lineNum"> 260 </span> :
+<span class="lineNum"> 261 </span> : /**
+<span class="lineNum"> 262 </span> : * @return TODO
+<span class="lineNum"> 263 </span> : *
+<span class="lineNum"> 264 </span> : * @doctodo
+<span class="lineNum"> 265 </span> : */
+<span class="lineNum"> 266 </span> : reference
+<span class="lineNum"> 267 </span> : operator[](difference_type __n) const
+<span class="lineNum"> 268 </span> : { return *(*this + __n); }
+<span class="lineNum"> 269 </span> : };
+<span class="lineNum"> 270 </span> :
+<span class="lineNum"> 271 </span> : //@{
+<span class="lineNum"> 272 </span> : /**
+<span class="lineNum"> 273 </span> : * @param x A %reverse_iterator.
+<span class="lineNum"> 274 </span> : * @param y A %reverse_iterator.
+<span class="lineNum"> 275 </span> : * @return A simple bool.
+<span class="lineNum"> 276 </span> : *
+<span class="lineNum"> 277 </span> : * Reverse iterators forward many operations to their underlying base()
+<span class="lineNum"> 278 </span> : * iterators. Others are implemented in terms of one another.
+<span class="lineNum"> 279 </span> : *
+<span class="lineNum"> 280 </span> : */
+<span class="lineNum"> 281 </span> : template&lt;typename _Iterator&gt;
+<span class="lineNum"> 282 </span> : inline bool
+<span class="lineNum"> 283 </span> : operator==(const reverse_iterator&lt;_Iterator&gt;&amp; __x,
+<span class="lineNum"> 284 </span> : const reverse_iterator&lt;_Iterator&gt;&amp; __y)
+<span class="lineNum"> 285 </span> : { return __x.base() == __y.base(); }
+<span class="lineNum"> 286 </span> :
+<span class="lineNum"> 287 </span> : template&lt;typename _Iterator&gt;
+<span class="lineNum"> 288 </span> : inline bool
+<span class="lineNum"> 289 </span> : operator&lt;(const reverse_iterator&lt;_Iterator&gt;&amp; __x,
+<span class="lineNum"> 290 </span> : const reverse_iterator&lt;_Iterator&gt;&amp; __y)
+<span class="lineNum"> 291 </span> : { return __y.base() &lt; __x.base(); }
+<span class="lineNum"> 292 </span> :
+<span class="lineNum"> 293 </span> : template&lt;typename _Iterator&gt;
+<span class="lineNum"> 294 </span> : inline bool
+<span class="lineNum"> 295 </span> : operator!=(const reverse_iterator&lt;_Iterator&gt;&amp; __x,
+<span class="lineNum"> 296 </span> : const reverse_iterator&lt;_Iterator&gt;&amp; __y)
+<span class="lineNum"> 297 </span> : { return !(__x == __y); }
+<span class="lineNum"> 298 </span> :
+<span class="lineNum"> 299 </span> : template&lt;typename _Iterator&gt;
+<span class="lineNum"> 300 </span> : inline bool
+<span class="lineNum"> 301 </span> : operator&gt;(const reverse_iterator&lt;_Iterator&gt;&amp; __x,
+<span class="lineNum"> 302 </span> : const reverse_iterator&lt;_Iterator&gt;&amp; __y)
+<span class="lineNum"> 303 </span> : { return __y &lt; __x; }
+<span class="lineNum"> 304 </span> :
+<span class="lineNum"> 305 </span> : template&lt;typename _Iterator&gt;
+<span class="lineNum"> 306 </span> : inline bool
+<span class="lineNum"> 307 </span> : operator&lt;=(const reverse_iterator&lt;_Iterator&gt;&amp; __x,
+<span class="lineNum"> 308 </span> : const reverse_iterator&lt;_Iterator&gt;&amp; __y)
+<span class="lineNum"> 309 </span> : { return !(__y &lt; __x); }
+<span class="lineNum"> 310 </span> :
+<span class="lineNum"> 311 </span> : template&lt;typename _Iterator&gt;
+<span class="lineNum"> 312 </span> : inline bool
+<span class="lineNum"> 313 </span> : operator&gt;=(const reverse_iterator&lt;_Iterator&gt;&amp; __x,
+<span class="lineNum"> 314 </span> : const reverse_iterator&lt;_Iterator&gt;&amp; __y)
+<span class="lineNum"> 315 </span> : { return !(__x &lt; __y); }
+<span class="lineNum"> 316 </span> :
+<span class="lineNum"> 317 </span> : template&lt;typename _Iterator&gt;
+<span class="lineNum"> 318 </span> : inline typename reverse_iterator&lt;_Iterator&gt;::difference_type
+<span class="lineNum"> 319 </span> : operator-(const reverse_iterator&lt;_Iterator&gt;&amp; __x,
+<span class="lineNum"> 320 </span> : const reverse_iterator&lt;_Iterator&gt;&amp; __y)
+<span class="lineNum"> 321 </span> : { return __y.base() - __x.base(); }
+<span class="lineNum"> 322 </span> :
+<span class="lineNum"> 323 </span> : template&lt;typename _Iterator&gt;
+<span class="lineNum"> 324 </span> : inline reverse_iterator&lt;_Iterator&gt;
+<span class="lineNum"> 325 </span> : operator+(typename reverse_iterator&lt;_Iterator&gt;::difference_type __n,
+<span class="lineNum"> 326 </span> : const reverse_iterator&lt;_Iterator&gt;&amp; __x)
+<span class="lineNum"> 327 </span> : { return reverse_iterator&lt;_Iterator&gt;(__x.base() - __n); }
+<span class="lineNum"> 328 </span> :
+<span class="lineNum"> 329 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 330 </span> : // DR 280. Comparison of reverse_iterator to const reverse_iterator.
+<span class="lineNum"> 331 </span> : template&lt;typename _IteratorL, typename _IteratorR&gt;
+<span class="lineNum"> 332 </span> : inline bool
+<span class="lineNum"> 333 </span> : operator==(const reverse_iterator&lt;_IteratorL&gt;&amp; __x,
+<span class="lineNum"> 334 </span> : const reverse_iterator&lt;_IteratorR&gt;&amp; __y)
+<span class="lineNum"> 335 </span> : { return __x.base() == __y.base(); }
+<span class="lineNum"> 336 </span> :
+<span class="lineNum"> 337 </span> : template&lt;typename _IteratorL, typename _IteratorR&gt;
+<span class="lineNum"> 338 </span> : inline bool
+<span class="lineNum"> 339 </span> : operator&lt;(const reverse_iterator&lt;_IteratorL&gt;&amp; __x,
+<span class="lineNum"> 340 </span> : const reverse_iterator&lt;_IteratorR&gt;&amp; __y)
+<span class="lineNum"> 341 </span> : { return __y.base() &lt; __x.base(); }
+<span class="lineNum"> 342 </span> :
+<span class="lineNum"> 343 </span> : template&lt;typename _IteratorL, typename _IteratorR&gt;
+<span class="lineNum"> 344 </span> : inline bool
+<span class="lineNum"> 345 </span> : operator!=(const reverse_iterator&lt;_IteratorL&gt;&amp; __x,
+<span class="lineNum"> 346 </span> : const reverse_iterator&lt;_IteratorR&gt;&amp; __y)
+<span class="lineNum"> 347 </span> : { return !(__x == __y); }
+<span class="lineNum"> 348 </span> :
+<span class="lineNum"> 349 </span> : template&lt;typename _IteratorL, typename _IteratorR&gt;
+<span class="lineNum"> 350 </span> : inline bool
+<span class="lineNum"> 351 </span> : operator&gt;(const reverse_iterator&lt;_IteratorL&gt;&amp; __x,
+<span class="lineNum"> 352 </span> : const reverse_iterator&lt;_IteratorR&gt;&amp; __y)
+<span class="lineNum"> 353 </span> : { return __y &lt; __x; }
+<span class="lineNum"> 354 </span> :
+<span class="lineNum"> 355 </span> : template&lt;typename _IteratorL, typename _IteratorR&gt;
+<span class="lineNum"> 356 </span> : inline bool
+<span class="lineNum"> 357 </span> : operator&lt;=(const reverse_iterator&lt;_IteratorL&gt;&amp; __x,
+<span class="lineNum"> 358 </span> : const reverse_iterator&lt;_IteratorR&gt;&amp; __y)
+<span class="lineNum"> 359 </span> : { return !(__y &lt; __x); }
+<span class="lineNum"> 360 </span> :
+<span class="lineNum"> 361 </span> : template&lt;typename _IteratorL, typename _IteratorR&gt;
+<span class="lineNum"> 362 </span> : inline bool
+<span class="lineNum"> 363 </span> : operator&gt;=(const reverse_iterator&lt;_IteratorL&gt;&amp; __x,
+<span class="lineNum"> 364 </span> : const reverse_iterator&lt;_IteratorR&gt;&amp; __y)
+<span class="lineNum"> 365 </span> : { return !(__x &lt; __y); }
+<span class="lineNum"> 366 </span> :
+<span class="lineNum"> 367 </span> : template&lt;typename _IteratorL, typename _IteratorR&gt;
+<span class="lineNum"> 368 </span> : inline typename reverse_iterator&lt;_IteratorL&gt;::difference_type
+<span class="lineNum"> 369 </span> : operator-(const reverse_iterator&lt;_IteratorL&gt;&amp; __x,
+<span class="lineNum"> 370 </span> : const reverse_iterator&lt;_IteratorR&gt;&amp; __y)
+<span class="lineNum"> 371 </span> : { return __y.base() - __x.base(); }
+<span class="lineNum"> 372 </span> : //@}
+<span class="lineNum"> 373 </span> :
+<span class="lineNum"> 374 </span> : // 24.4.2.2.1 back_insert_iterator
+<span class="lineNum"> 375 </span> : /**
+<span class="lineNum"> 376 </span> : * @brief Turns assignment into insertion.
+<span class="lineNum"> 377 </span> : *
+<span class="lineNum"> 378 </span> : * These are output iterators, constructed from a container-of-T.
+<span class="lineNum"> 379 </span> : * Assigning a T to the iterator appends it to the container using
+<span class="lineNum"> 380 </span> : * push_back.
+<span class="lineNum"> 381 </span> : *
+<span class="lineNum"> 382 </span> : * Tip: Using the back_inserter function to create these iterators can
+<span class="lineNum"> 383 </span> : * save typing.
+<span class="lineNum"> 384 </span> : */
+<span class="lineNum"> 385 </span> : template&lt;typename _Container&gt;
+<span class="lineNum"> 386 </span> : class back_insert_iterator
+<span class="lineNum"> 387 </span> : : public iterator&lt;output_iterator_tag, void, void, void, void&gt;
+<span class="lineNum"> 388 </span> : {
+<span class="lineNum"> 389 </span> : protected:
+<span class="lineNum"> 390 </span> : _Container* container;
+<span class="lineNum"> 391 </span> :
+<span class="lineNum"> 392 </span> : public:
+<span class="lineNum"> 393 </span> : /// A nested typedef for the type of whatever container you used.
+<span class="lineNum"> 394 </span> : typedef _Container container_type;
+<span class="lineNum"> 395 </span> :
+<span class="lineNum"> 396 </span> : /// The only way to create this %iterator is with a container.
+<span class="lineNum"> 397 </span> : explicit
+<span class="lineNum"> 398 </span><span class="lineCov"> 946 : back_insert_iterator(_Container&amp; __x) : container(&amp;__x) { }</span>
+<span class="lineNum"> 399 </span> :
+<span class="lineNum"> 400 </span> : /**
+<span class="lineNum"> 401 </span> : * @param value An instance of whatever type
+<span class="lineNum"> 402 </span> : * container_type::const_reference is; presumably a
+<span class="lineNum"> 403 </span> : * reference-to-const T for container&lt;T&gt;.
+<span class="lineNum"> 404 </span> : * @return This %iterator, for chained operations.
+<span class="lineNum"> 405 </span> : *
+<span class="lineNum"> 406 </span> : * This kind of %iterator doesn't really have a &quot;position&quot; in the
+<span class="lineNum"> 407 </span> : * container (you can think of the position as being permanently at
+<span class="lineNum"> 408 </span> : * the end, if you like). Assigning a value to the %iterator will
+<span class="lineNum"> 409 </span> : * always append the value to the end of the container.
+<span class="lineNum"> 410 </span> : */
+<span class="lineNum"> 411 </span> : back_insert_iterator&amp;
+<span class="lineNum"> 412 </span><span class="lineCov"> 17415 : operator=(typename _Container::const_reference __value)</span>
+<span class="lineNum"> 413 </span> : {
+<span class="lineNum"> 414 </span><span class="lineCov"> 17415 : container-&gt;push_back(__value);</span>
+<span class="lineNum"> 415 </span><span class="lineCov"> 17415 : return *this;</span>
+<span class="lineNum"> 416 </span> : }
+<span class="lineNum"> 417 </span> :
+<span class="lineNum"> 418 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 419 </span> : back_insert_iterator&amp;
+<span class="lineNum"> 420 </span> : operator=(typename _Container::value_type&amp;&amp; __value)
+<span class="lineNum"> 421 </span> : {
+<span class="lineNum"> 422 </span> : container-&gt;push_back(std::move(__value));
+<span class="lineNum"> 423 </span> : return *this;
+<span class="lineNum"> 424 </span> : }
+<span class="lineNum"> 425 </span> : #endif
+<span class="lineNum"> 426 </span> :
+<span class="lineNum"> 427 </span> : /// Simply returns *this.
+<span class="lineNum"> 428 </span> : back_insert_iterator&amp;
+<span class="lineNum"> 429 </span><span class="lineCov"> 17419 : operator*()</span>
+<span class="lineNum"> 430 </span><span class="lineCov"> 17419 : { return *this; }</span>
+<span class="lineNum"> 431 </span> :
+<span class="lineNum"> 432 </span> : /// Simply returns *this. (This %iterator does not &quot;move&quot;.)
+<span class="lineNum"> 433 </span> : back_insert_iterator&amp;
+<span class="lineNum"> 434 </span><span class="lineCov"> 17405 : operator++()</span>
+<span class="lineNum"> 435 </span><span class="lineCov"> 17405 : { return *this; }</span>
+<span class="lineNum"> 436 </span> :
+<span class="lineNum"> 437 </span> : /// Simply returns *this. (This %iterator does not &quot;move&quot;.)
+<span class="lineNum"> 438 </span> : back_insert_iterator
+<span class="lineNum"> 439 </span><span class="lineCov"> 10 : operator++(int)</span>
+<span class="lineNum"> 440 </span><span class="lineCov"> 10 : { return *this; }</span>
+<span class="lineNum"> 441 </span> : };
+<span class="lineNum"> 442 </span> :
+<span class="lineNum"> 443 </span> : /**
+<span class="lineNum"> 444 </span> : * @param x A container of arbitrary type.
+<span class="lineNum"> 445 </span> : * @return An instance of back_insert_iterator working on @p x.
+<span class="lineNum"> 446 </span> : *
+<span class="lineNum"> 447 </span> : * This wrapper function helps in creating back_insert_iterator instances.
+<span class="lineNum"> 448 </span> : * Typing the name of the %iterator requires knowing the precise full
+<span class="lineNum"> 449 </span> : * type of the container, which can be tedious and impedes generic
+<span class="lineNum"> 450 </span> : * programming. Using this function lets you take advantage of automatic
+<span class="lineNum"> 451 </span> : * template parameter deduction, making the compiler match the correct
+<span class="lineNum"> 452 </span> : * types for you.
+<span class="lineNum"> 453 </span> : */
+<span class="lineNum"> 454 </span> : template&lt;typename _Container&gt;
+<span class="lineNum"> 455 </span> : inline back_insert_iterator&lt;_Container&gt;
+<span class="lineNum"> 456 </span><span class="lineCov"> 946 : back_inserter(_Container&amp; __x)</span>
+<span class="lineNum"> 457 </span><span class="lineCov"> 946 : { return back_insert_iterator&lt;_Container&gt;(__x); }</span>
+<span class="lineNum"> 458 </span> :
+<span class="lineNum"> 459 </span> : /**
+<span class="lineNum"> 460 </span> : * @brief Turns assignment into insertion.
+<span class="lineNum"> 461 </span> : *
+<span class="lineNum"> 462 </span> : * These are output iterators, constructed from a container-of-T.
+<span class="lineNum"> 463 </span> : * Assigning a T to the iterator prepends it to the container using
+<span class="lineNum"> 464 </span> : * push_front.
+<span class="lineNum"> 465 </span> : *
+<span class="lineNum"> 466 </span> : * Tip: Using the front_inserter function to create these iterators can
+<span class="lineNum"> 467 </span> : * save typing.
+<span class="lineNum"> 468 </span> : */
+<span class="lineNum"> 469 </span> : template&lt;typename _Container&gt;
+<span class="lineNum"> 470 </span> : class front_insert_iterator
+<span class="lineNum"> 471 </span> : : public iterator&lt;output_iterator_tag, void, void, void, void&gt;
+<span class="lineNum"> 472 </span> : {
+<span class="lineNum"> 473 </span> : protected:
+<span class="lineNum"> 474 </span> : _Container* container;
+<span class="lineNum"> 475 </span> :
+<span class="lineNum"> 476 </span> : public:
+<span class="lineNum"> 477 </span> : /// A nested typedef for the type of whatever container you used.
+<span class="lineNum"> 478 </span> : typedef _Container container_type;
+<span class="lineNum"> 479 </span> :
+<span class="lineNum"> 480 </span> : /// The only way to create this %iterator is with a container.
+<span class="lineNum"> 481 </span> : explicit front_insert_iterator(_Container&amp; __x) : container(&amp;__x) { }
+<span class="lineNum"> 482 </span> :
+<span class="lineNum"> 483 </span> : /**
+<span class="lineNum"> 484 </span> : * @param value An instance of whatever type
+<span class="lineNum"> 485 </span> : * container_type::const_reference is; presumably a
+<span class="lineNum"> 486 </span> : * reference-to-const T for container&lt;T&gt;.
+<span class="lineNum"> 487 </span> : * @return This %iterator, for chained operations.
+<span class="lineNum"> 488 </span> : *
+<span class="lineNum"> 489 </span> : * This kind of %iterator doesn't really have a &quot;position&quot; in the
+<span class="lineNum"> 490 </span> : * container (you can think of the position as being permanently at
+<span class="lineNum"> 491 </span> : * the front, if you like). Assigning a value to the %iterator will
+<span class="lineNum"> 492 </span> : * always prepend the value to the front of the container.
+<span class="lineNum"> 493 </span> : */
+<span class="lineNum"> 494 </span> : front_insert_iterator&amp;
+<span class="lineNum"> 495 </span> : operator=(typename _Container::const_reference __value)
+<span class="lineNum"> 496 </span> : {
+<span class="lineNum"> 497 </span> : container-&gt;push_front(__value);
+<span class="lineNum"> 498 </span> : return *this;
+<span class="lineNum"> 499 </span> : }
+<span class="lineNum"> 500 </span> :
+<span class="lineNum"> 501 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 502 </span> : front_insert_iterator&amp;
+<span class="lineNum"> 503 </span> : operator=(typename _Container::value_type&amp;&amp; __value)
+<span class="lineNum"> 504 </span> : {
+<span class="lineNum"> 505 </span> : container-&gt;push_front(std::move(__value));
+<span class="lineNum"> 506 </span> : return *this;
+<span class="lineNum"> 507 </span> : }
+<span class="lineNum"> 508 </span> : #endif
+<span class="lineNum"> 509 </span> :
+<span class="lineNum"> 510 </span> : /// Simply returns *this.
+<span class="lineNum"> 511 </span> : front_insert_iterator&amp;
+<span class="lineNum"> 512 </span> : operator*()
+<span class="lineNum"> 513 </span> : { return *this; }
+<span class="lineNum"> 514 </span> :
+<span class="lineNum"> 515 </span> : /// Simply returns *this. (This %iterator does not &quot;move&quot;.)
+<span class="lineNum"> 516 </span> : front_insert_iterator&amp;
+<span class="lineNum"> 517 </span> : operator++()
+<span class="lineNum"> 518 </span> : { return *this; }
+<span class="lineNum"> 519 </span> :
+<span class="lineNum"> 520 </span> : /// Simply returns *this. (This %iterator does not &quot;move&quot;.)
+<span class="lineNum"> 521 </span> : front_insert_iterator
+<span class="lineNum"> 522 </span> : operator++(int)
+<span class="lineNum"> 523 </span> : { return *this; }
+<span class="lineNum"> 524 </span> : };
+<span class="lineNum"> 525 </span> :
+<span class="lineNum"> 526 </span> : /**
+<span class="lineNum"> 527 </span> : * @param x A container of arbitrary type.
+<span class="lineNum"> 528 </span> : * @return An instance of front_insert_iterator working on @p x.
+<span class="lineNum"> 529 </span> : *
+<span class="lineNum"> 530 </span> : * This wrapper function helps in creating front_insert_iterator instances.
+<span class="lineNum"> 531 </span> : * Typing the name of the %iterator requires knowing the precise full
+<span class="lineNum"> 532 </span> : * type of the container, which can be tedious and impedes generic
+<span class="lineNum"> 533 </span> : * programming. Using this function lets you take advantage of automatic
+<span class="lineNum"> 534 </span> : * template parameter deduction, making the compiler match the correct
+<span class="lineNum"> 535 </span> : * types for you.
+<span class="lineNum"> 536 </span> : */
+<span class="lineNum"> 537 </span> : template&lt;typename _Container&gt;
+<span class="lineNum"> 538 </span> : inline front_insert_iterator&lt;_Container&gt;
+<span class="lineNum"> 539 </span> : front_inserter(_Container&amp; __x)
+<span class="lineNum"> 540 </span> : { return front_insert_iterator&lt;_Container&gt;(__x); }
+<span class="lineNum"> 541 </span> :
+<span class="lineNum"> 542 </span> : /**
+<span class="lineNum"> 543 </span> : * @brief Turns assignment into insertion.
+<span class="lineNum"> 544 </span> : *
+<span class="lineNum"> 545 </span> : * These are output iterators, constructed from a container-of-T.
+<span class="lineNum"> 546 </span> : * Assigning a T to the iterator inserts it in the container at the
+<span class="lineNum"> 547 </span> : * %iterator's position, rather than overwriting the value at that
+<span class="lineNum"> 548 </span> : * position.
+<span class="lineNum"> 549 </span> : *
+<span class="lineNum"> 550 </span> : * (Sequences will actually insert a @e copy of the value before the
+<span class="lineNum"> 551 </span> : * %iterator's position.)
+<span class="lineNum"> 552 </span> : *
+<span class="lineNum"> 553 </span> : * Tip: Using the inserter function to create these iterators can
+<span class="lineNum"> 554 </span> : * save typing.
+<span class="lineNum"> 555 </span> : */
+<span class="lineNum"> 556 </span> : template&lt;typename _Container&gt;
+<span class="lineNum"> 557 </span> : class insert_iterator
+<span class="lineNum"> 558 </span> : : public iterator&lt;output_iterator_tag, void, void, void, void&gt;
+<span class="lineNum"> 559 </span> : {
+<span class="lineNum"> 560 </span> : protected:
+<span class="lineNum"> 561 </span> : _Container* container;
+<span class="lineNum"> 562 </span> : typename _Container::iterator iter;
+<span class="lineNum"> 563 </span> :
+<span class="lineNum"> 564 </span> : public:
+<span class="lineNum"> 565 </span> : /// A nested typedef for the type of whatever container you used.
+<span class="lineNum"> 566 </span> : typedef _Container container_type;
+<span class="lineNum"> 567 </span> :
+<span class="lineNum"> 568 </span> : /**
+<span class="lineNum"> 569 </span> : * The only way to create this %iterator is with a container and an
+<span class="lineNum"> 570 </span> : * initial position (a normal %iterator into the container).
+<span class="lineNum"> 571 </span> : */
+<span class="lineNum"> 572 </span><span class="lineCov"> 21203 : insert_iterator(_Container&amp; __x, typename _Container::iterator __i)</span>
+<span class="lineNum"> 573 </span><span class="lineCov"> 21203 : : container(&amp;__x), iter(__i) {}</span>
+<span class="lineNum"> 574 </span> :
+<span class="lineNum"> 575 </span> : /**
+<span class="lineNum"> 576 </span> : * @param value An instance of whatever type
+<span class="lineNum"> 577 </span> : * container_type::const_reference is; presumably a
+<span class="lineNum"> 578 </span> : * reference-to-const T for container&lt;T&gt;.
+<span class="lineNum"> 579 </span> : * @return This %iterator, for chained operations.
+<span class="lineNum"> 580 </span> : *
+<span class="lineNum"> 581 </span> : * This kind of %iterator maintains its own position in the
+<span class="lineNum"> 582 </span> : * container. Assigning a value to the %iterator will insert the
+<span class="lineNum"> 583 </span> : * value into the container at the place before the %iterator.
+<span class="lineNum"> 584 </span> : *
+<span class="lineNum"> 585 </span> : * The position is maintained such that subsequent assignments will
+<span class="lineNum"> 586 </span> : * insert values immediately after one another. For example,
+<span class="lineNum"> 587 </span> : * @code
+<span class="lineNum"> 588 </span> : * // vector v contains A and Z
+<span class="lineNum"> 589 </span> : *
+<span class="lineNum"> 590 </span> : * insert_iterator i (v, ++v.begin());
+<span class="lineNum"> 591 </span> : * i = 1;
+<span class="lineNum"> 592 </span> : * i = 2;
+<span class="lineNum"> 593 </span> : * i = 3;
+<span class="lineNum"> 594 </span> : *
+<span class="lineNum"> 595 </span> : * // vector v contains A, 1, 2, 3, and Z
+<span class="lineNum"> 596 </span> : * @endcode
+<span class="lineNum"> 597 </span> : */
+<span class="lineNum"> 598 </span> : insert_iterator&amp;
+<span class="lineNum"> 599 </span><span class="lineCov"> 107622 : operator=(typename _Container::const_reference __value)</span>
+<span class="lineNum"> 600 </span> : {
+<span class="lineNum"> 601 </span><span class="lineCov"> 107622 : iter = container-&gt;insert(iter, __value);</span>
+<span class="lineNum"> 602 </span><span class="lineCov"> 107622 : ++iter;</span>
+<span class="lineNum"> 603 </span><span class="lineCov"> 107622 : return *this;</span>
+<span class="lineNum"> 604 </span> : }
+<span class="lineNum"> 605 </span> :
+<span class="lineNum"> 606 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 607 </span> : insert_iterator&amp;
+<span class="lineNum"> 608 </span> : operator=(typename _Container::value_type&amp;&amp; __value)
+<span class="lineNum"> 609 </span> : {
+<span class="lineNum"> 610 </span> : iter = container-&gt;insert(iter, std::move(__value));
+<span class="lineNum"> 611 </span> : ++iter;
+<span class="lineNum"> 612 </span> : return *this;
+<span class="lineNum"> 613 </span> : }
+<span class="lineNum"> 614 </span> : #endif
+<span class="lineNum"> 615 </span> :
+<span class="lineNum"> 616 </span> : /// Simply returns *this.
+<span class="lineNum"> 617 </span> : insert_iterator&amp;
+<span class="lineNum"> 618 </span><span class="lineCov"> 107650 : operator*()</span>
+<span class="lineNum"> 619 </span><span class="lineCov"> 107650 : { return *this; }</span>
+<span class="lineNum"> 620 </span> :
+<span class="lineNum"> 621 </span> : /// Simply returns *this. (This %iterator does not &quot;move&quot;.)
+<span class="lineNum"> 622 </span> : insert_iterator&amp;
+<span class="lineNum"> 623 </span><span class="lineCov"> 107622 : operator++()</span>
+<span class="lineNum"> 624 </span><span class="lineCov"> 107622 : { return *this; }</span>
+<span class="lineNum"> 625 </span> :
+<span class="lineNum"> 626 </span> : /// Simply returns *this. (This %iterator does not &quot;move&quot;.)
+<span class="lineNum"> 627 </span> : insert_iterator&amp;
+<span class="lineNum"> 628 </span><span class="lineNoCov"> 0 : operator++(int)</span>
+<span class="lineNum"> 629 </span><span class="lineNoCov"> 0 : { return *this; }</span>
+<span class="lineNum"> 630 </span> : };
+<span class="lineNum"> 631 </span> :
+<span class="lineNum"> 632 </span> : /**
+<span class="lineNum"> 633 </span> : * @param x A container of arbitrary type.
+<span class="lineNum"> 634 </span> : * @return An instance of insert_iterator working on @p x.
+<span class="lineNum"> 635 </span> : *
+<span class="lineNum"> 636 </span> : * This wrapper function helps in creating insert_iterator instances.
+<span class="lineNum"> 637 </span> : * Typing the name of the %iterator requires knowing the precise full
+<span class="lineNum"> 638 </span> : * type of the container, which can be tedious and impedes generic
+<span class="lineNum"> 639 </span> : * programming. Using this function lets you take advantage of automatic
+<span class="lineNum"> 640 </span> : * template parameter deduction, making the compiler match the correct
+<span class="lineNum"> 641 </span> : * types for you.
+<span class="lineNum"> 642 </span> : */
+<span class="lineNum"> 643 </span> : template&lt;typename _Container, typename _Iterator&gt;
+<span class="lineNum"> 644 </span> : inline insert_iterator&lt;_Container&gt;
+<span class="lineNum"> 645 </span><span class="lineCov"> 21203 : inserter(_Container&amp; __x, _Iterator __i)</span>
+<span class="lineNum"> 646 </span> : {
+<span class="lineNum"> 647 </span> : return insert_iterator&lt;_Container&gt;(__x,
+<span class="lineNum"> 648 </span><span class="lineCov"> 21203 : typename _Container::iterator(__i));</span>
+<span class="lineNum"> 649 </span> : }
+<span class="lineNum"> 650 </span> :
+<span class="lineNum"> 651 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 652 </span> :
+<span class="lineNum"> 653 </span> : _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+<span class="lineNum"> 654 </span> :
+<span class="lineNum"> 655 </span> : // This iterator adapter is 'normal' in the sense that it does not
+<span class="lineNum"> 656 </span> : // change the semantics of any of the operators of its iterator
+<span class="lineNum"> 657 </span> : // parameter. Its primary purpose is to convert an iterator that is
+<span class="lineNum"> 658 </span> : // not a class, e.g. a pointer, into an iterator that is a class.
+<span class="lineNum"> 659 </span> : // The _Container parameter exists solely so that different containers
+<span class="lineNum"> 660 </span> : // using this template can instantiate different types, even if the
+<span class="lineNum"> 661 </span> : // _Iterator parameter is the same.
+<span class="lineNum"> 662 </span> : using std::iterator_traits;
+<span class="lineNum"> 663 </span> : using std::iterator;
+<span class="lineNum"> 664 </span> : template&lt;typename _Iterator, typename _Container&gt;
+<span class="lineNum"> 665 </span> : class __normal_iterator
+<span class="lineNum"> 666 </span> : {
+<span class="lineNum"> 667 </span> : protected:
+<span class="lineNum"> 668 </span> : _Iterator _M_current;
+<span class="lineNum"> 669 </span> :
+<span class="lineNum"> 670 </span> : public:
+<span class="lineNum"> 671 </span> : typedef _Iterator iterator_type;
+<span class="lineNum"> 672 </span> : typedef typename iterator_traits&lt;_Iterator&gt;::iterator_category
+<span class="lineNum"> 673 </span> : iterator_category;
+<span class="lineNum"> 674 </span> : typedef typename iterator_traits&lt;_Iterator&gt;::value_type value_type;
+<span class="lineNum"> 675 </span> : typedef typename iterator_traits&lt;_Iterator&gt;::difference_type
+<span class="lineNum"> 676 </span> : difference_type;
+<span class="lineNum"> 677 </span> : typedef typename iterator_traits&lt;_Iterator&gt;::reference reference;
+<span class="lineNum"> 678 </span> : typedef typename iterator_traits&lt;_Iterator&gt;::pointer pointer;
+<span class="lineNum"> 679 </span> :
+<span class="lineNum"> 680 </span><span class="lineCov"> 3 : __normal_iterator() : _M_current(_Iterator()) { }</span>
+<span class="lineNum"> 681 </span> :
+<span class="lineNum"> 682 </span> : explicit
+<span class="lineNum"> 683 </span><span class="lineCov"> 150393 : __normal_iterator(const _Iterator&amp; __i) : _M_current(__i) { }</span>
+<span class="lineNum"> 684 </span> :
+<span class="lineNum"> 685 </span> : // Allow iterator to const_iterator conversion
+<span class="lineNum"> 686 </span> : template&lt;typename _Iter&gt;
+<span class="lineNum"> 687 </span> : __normal_iterator(const __normal_iterator&lt;_Iter,
+<span class="lineNum"> 688 </span> : typename __enable_if&lt;
+<span class="lineNum"> 689 </span> : (std::__are_same&lt;_Iter, typename _Container::pointer&gt;::__value),
+<span class="lineNum"> 690 </span><span class="lineCov"> 28 : _Container&gt;::__type&gt;&amp; __i)</span>
+<span class="lineNum"> 691 </span><span class="lineCov"> 28 : : _M_current(__i.base()) { }</span>
+<span class="lineNum"> 692 </span> :
+<span class="lineNum"> 693 </span> : // Forward iterator requirements
+<span class="lineNum"> 694 </span> : reference
+<span class="lineNum"> 695 </span><span class="lineCov"> 925025 : operator*() const</span>
+<span class="lineNum"> 696 </span><span class="lineCov"> 925025 : { return *_M_current; }</span>
+<span class="lineNum"> 697 </span> :
+<span class="lineNum"> 698 </span> : pointer
+<span class="lineNum"> 699 </span><span class="lineCov"> 3 : operator-&gt;() const</span>
+<span class="lineNum"> 700 </span><span class="lineCov"> 3 : { return _M_current; }</span>
+<span class="lineNum"> 701 </span> :
+<span class="lineNum"> 702 </span> : __normal_iterator&amp;
+<span class="lineNum"> 703 </span><span class="lineCov"> 81617 : operator++()</span>
+<span class="lineNum"> 704 </span> : {
+<span class="lineNum"> 705 </span><span class="lineCov"> 81617 : ++_M_current;</span>
+<span class="lineNum"> 706 </span><span class="lineCov"> 81617 : return *this;</span>
+<span class="lineNum"> 707 </span> : }
+<span class="lineNum"> 708 </span> :
+<span class="lineNum"> 709 </span> : __normal_iterator
+<span class="lineNum"> 710 </span><span class="lineCov"> 54836 : operator++(int)</span>
+<span class="lineNum"> 711 </span><span class="lineCov"> 54836 : { return __normal_iterator(_M_current++); }</span>
+<span class="lineNum"> 712 </span> :
+<span class="lineNum"> 713 </span> : // Bidirectional iterator requirements
+<span class="lineNum"> 714 </span> : __normal_iterator&amp;
+<span class="lineNum"> 715 </span><span class="lineCov"> 249605 : operator--()</span>
+<span class="lineNum"> 716 </span> : {
+<span class="lineNum"> 717 </span><span class="lineCov"> 249605 : --_M_current;</span>
+<span class="lineNum"> 718 </span><span class="lineCov"> 249605 : return *this;</span>
+<span class="lineNum"> 719 </span> : }
+<span class="lineNum"> 720 </span> :
+<span class="lineNum"> 721 </span> : __normal_iterator
+<span class="lineNum"> 722 </span><span class="lineNoCov"> 0 : operator--(int)</span>
+<span class="lineNum"> 723 </span><span class="lineNoCov"> 0 : { return __normal_iterator(_M_current--); }</span>
+<span class="lineNum"> 724 </span> :
+<span class="lineNum"> 725 </span> : // Random access iterator requirements
+<span class="lineNum"> 726 </span> : reference
+<span class="lineNum"> 727 </span> : operator[](const difference_type&amp; __n) const
+<span class="lineNum"> 728 </span> : { return _M_current[__n]; }
+<span class="lineNum"> 729 </span> :
+<span class="lineNum"> 730 </span> : __normal_iterator&amp;
+<span class="lineNum"> 731 </span> : operator+=(const difference_type&amp; __n)
+<span class="lineNum"> 732 </span> : { _M_current += __n; return *this; }
+<span class="lineNum"> 733 </span> :
+<span class="lineNum"> 734 </span> : __normal_iterator
+<span class="lineNum"> 735 </span><span class="lineCov"> 13455 : operator+(const difference_type&amp; __n) const</span>
+<span class="lineNum"> 736 </span><span class="lineCov"> 13455 : { return __normal_iterator(_M_current + __n); }</span>
+<span class="lineNum"> 737 </span> :
+<span class="lineNum"> 738 </span> : __normal_iterator&amp;
+<span class="lineNum"> 739 </span> : operator-=(const difference_type&amp; __n)
+<span class="lineNum"> 740 </span> : { _M_current -= __n; return *this; }
+<span class="lineNum"> 741 </span> :
+<span class="lineNum"> 742 </span> : __normal_iterator
+<span class="lineNum"> 743 </span><span class="lineCov"> 846 : operator-(const difference_type&amp; __n) const</span>
+<span class="lineNum"> 744 </span><span class="lineCov"> 846 : { return __normal_iterator(_M_current - __n); }</span>
+<span class="lineNum"> 745 </span> :
+<span class="lineNum"> 746 </span> : const _Iterator&amp;
+<span class="lineNum"> 747 </span><span class="lineCov"> 455202 : base() const</span>
+<span class="lineNum"> 748 </span><span class="lineCov"> 455202 : { return _M_current; }</span>
+<span class="lineNum"> 749 </span> : };
+<span class="lineNum"> 750 </span> :
+<span class="lineNum"> 751 </span> : // Note: In what follows, the left- and right-hand-side iterators are
+<span class="lineNum"> 752 </span> : // allowed to vary in types (conceptually in cv-qualification) so that
+<span class="lineNum"> 753 </span> : // comparison between cv-qualified and non-cv-qualified iterators be
+<span class="lineNum"> 754 </span> : // valid. However, the greedy and unfriendly operators in std::rel_ops
+<span class="lineNum"> 755 </span> : // will make overload resolution ambiguous (when in scope) if we don't
+<span class="lineNum"> 756 </span> : // provide overloads whose operands are of the same type. Can someone
+<span class="lineNum"> 757 </span> : // remind me what generic programming is about? -- Gaby
+<span class="lineNum"> 758 </span> :
+<span class="lineNum"> 759 </span> : // Forward iterator requirements
+<span class="lineNum"> 760 </span> : template&lt;typename _IteratorL, typename _IteratorR, typename _Container&gt;
+<span class="lineNum"> 761 </span> : inline bool
+<span class="lineNum"> 762 </span> : operator==(const __normal_iterator&lt;_IteratorL, _Container&gt;&amp; __lhs,
+<span class="lineNum"> 763 </span> : const __normal_iterator&lt;_IteratorR, _Container&gt;&amp; __rhs)
+<span class="lineNum"> 764 </span> : { return __lhs.base() == __rhs.base(); }
+<span class="lineNum"> 765 </span> :
+<span class="lineNum"> 766 </span> : template&lt;typename _Iterator, typename _Container&gt;
+<span class="lineNum"> 767 </span> : inline bool
+<span class="lineNum"> 768 </span> : operator==(const __normal_iterator&lt;_Iterator, _Container&gt;&amp; __lhs,
+<span class="lineNum"> 769 </span><span class="lineCov"> 4368 : const __normal_iterator&lt;_Iterator, _Container&gt;&amp; __rhs)</span>
+<span class="lineNum"> 770 </span><span class="lineCov"> 4368 : { return __lhs.base() == __rhs.base(); }</span>
+<span class="lineNum"> 771 </span> :
+<span class="lineNum"> 772 </span> : template&lt;typename _IteratorL, typename _IteratorR, typename _Container&gt;
+<span class="lineNum"> 773 </span> : inline bool
+<span class="lineNum"> 774 </span> : operator!=(const __normal_iterator&lt;_IteratorL, _Container&gt;&amp; __lhs,
+<span class="lineNum"> 775 </span><span class="lineCov"> 38 : const __normal_iterator&lt;_IteratorR, _Container&gt;&amp; __rhs)</span>
+<span class="lineNum"> 776 </span><span class="lineCov"> 38 : { return __lhs.base() != __rhs.base(); }</span>
+<span class="lineNum"> 777 </span> :
+<span class="lineNum"> 778 </span> : template&lt;typename _Iterator, typename _Container&gt;
+<span class="lineNum"> 779 </span> : inline bool
+<span class="lineNum"> 780 </span> : operator!=(const __normal_iterator&lt;_Iterator, _Container&gt;&amp; __lhs,
+<span class="lineNum"> 781 </span><span class="lineCov"> 123290 : const __normal_iterator&lt;_Iterator, _Container&gt;&amp; __rhs)</span>
+<span class="lineNum"> 782 </span><span class="lineCov"> 123290 : { return __lhs.base() != __rhs.base(); }</span>
+<span class="lineNum"> 783 </span> :
+<span class="lineNum"> 784 </span> : // Random access iterator requirements
+<span class="lineNum"> 785 </span> : template&lt;typename _IteratorL, typename _IteratorR, typename _Container&gt;
+<span class="lineNum"> 786 </span> : inline bool
+<span class="lineNum"> 787 </span> : operator&lt;(const __normal_iterator&lt;_IteratorL, _Container&gt;&amp; __lhs,
+<span class="lineNum"> 788 </span> : const __normal_iterator&lt;_IteratorR, _Container&gt;&amp; __rhs)
+<span class="lineNum"> 789 </span> : { return __lhs.base() &lt; __rhs.base(); }
+<span class="lineNum"> 790 </span> :
+<span class="lineNum"> 791 </span> : template&lt;typename _Iterator, typename _Container&gt;
+<span class="lineNum"> 792 </span> : inline bool
+<span class="lineNum"> 793 </span> : operator&lt;(const __normal_iterator&lt;_Iterator, _Container&gt;&amp; __lhs,
+<span class="lineNum"> 794 </span><span class="lineCov"> 7923 : const __normal_iterator&lt;_Iterator, _Container&gt;&amp; __rhs)</span>
+<span class="lineNum"> 795 </span><span class="lineCov"> 7923 : { return __lhs.base() &lt; __rhs.base(); }</span>
+<span class="lineNum"> 796 </span> :
+<span class="lineNum"> 797 </span> : template&lt;typename _IteratorL, typename _IteratorR, typename _Container&gt;
+<span class="lineNum"> 798 </span> : inline bool
+<span class="lineNum"> 799 </span> : operator&gt;(const __normal_iterator&lt;_IteratorL, _Container&gt;&amp; __lhs,
+<span class="lineNum"> 800 </span> : const __normal_iterator&lt;_IteratorR, _Container&gt;&amp; __rhs)
+<span class="lineNum"> 801 </span> : { return __lhs.base() &gt; __rhs.base(); }
+<span class="lineNum"> 802 </span> :
+<span class="lineNum"> 803 </span> : template&lt;typename _Iterator, typename _Container&gt;
+<span class="lineNum"> 804 </span> : inline bool
+<span class="lineNum"> 805 </span> : operator&gt;(const __normal_iterator&lt;_Iterator, _Container&gt;&amp; __lhs,
+<span class="lineNum"> 806 </span> : const __normal_iterator&lt;_Iterator, _Container&gt;&amp; __rhs)
+<span class="lineNum"> 807 </span> : { return __lhs.base() &gt; __rhs.base(); }
+<span class="lineNum"> 808 </span> :
+<span class="lineNum"> 809 </span> : template&lt;typename _IteratorL, typename _IteratorR, typename _Container&gt;
+<span class="lineNum"> 810 </span> : inline bool
+<span class="lineNum"> 811 </span> : operator&lt;=(const __normal_iterator&lt;_IteratorL, _Container&gt;&amp; __lhs,
+<span class="lineNum"> 812 </span> : const __normal_iterator&lt;_IteratorR, _Container&gt;&amp; __rhs)
+<span class="lineNum"> 813 </span> : { return __lhs.base() &lt;= __rhs.base(); }
+<span class="lineNum"> 814 </span> :
+<span class="lineNum"> 815 </span> : template&lt;typename _Iterator, typename _Container&gt;
+<span class="lineNum"> 816 </span> : inline bool
+<span class="lineNum"> 817 </span> : operator&lt;=(const __normal_iterator&lt;_Iterator, _Container&gt;&amp; __lhs,
+<span class="lineNum"> 818 </span> : const __normal_iterator&lt;_Iterator, _Container&gt;&amp; __rhs)
+<span class="lineNum"> 819 </span> : { return __lhs.base() &lt;= __rhs.base(); }
+<span class="lineNum"> 820 </span> :
+<span class="lineNum"> 821 </span> : template&lt;typename _IteratorL, typename _IteratorR, typename _Container&gt;
+<span class="lineNum"> 822 </span> : inline bool
+<span class="lineNum"> 823 </span> : operator&gt;=(const __normal_iterator&lt;_IteratorL, _Container&gt;&amp; __lhs,
+<span class="lineNum"> 824 </span> : const __normal_iterator&lt;_IteratorR, _Container&gt;&amp; __rhs)
+<span class="lineNum"> 825 </span> : { return __lhs.base() &gt;= __rhs.base(); }
+<span class="lineNum"> 826 </span> :
+<span class="lineNum"> 827 </span> : template&lt;typename _Iterator, typename _Container&gt;
+<span class="lineNum"> 828 </span> : inline bool
+<span class="lineNum"> 829 </span> : operator&gt;=(const __normal_iterator&lt;_Iterator, _Container&gt;&amp; __lhs,
+<span class="lineNum"> 830 </span> : const __normal_iterator&lt;_Iterator, _Container&gt;&amp; __rhs)
+<span class="lineNum"> 831 </span> : { return __lhs.base() &gt;= __rhs.base(); }
+<span class="lineNum"> 832 </span> :
+<span class="lineNum"> 833 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 834 </span> : // According to the resolution of DR179 not only the various comparison
+<span class="lineNum"> 835 </span> : // operators but also operator- must accept mixed iterator/const_iterator
+<span class="lineNum"> 836 </span> : // parameters.
+<span class="lineNum"> 837 </span> : template&lt;typename _IteratorL, typename _IteratorR, typename _Container&gt;
+<span class="lineNum"> 838 </span> : inline typename __normal_iterator&lt;_IteratorL, _Container&gt;::difference_type
+<span class="lineNum"> 839 </span> : operator-(const __normal_iterator&lt;_IteratorL, _Container&gt;&amp; __lhs,
+<span class="lineNum"> 840 </span> : const __normal_iterator&lt;_IteratorR, _Container&gt;&amp; __rhs)
+<span class="lineNum"> 841 </span> : { return __lhs.base() - __rhs.base(); }
+<span class="lineNum"> 842 </span> :
+<span class="lineNum"> 843 </span> : template&lt;typename _Iterator, typename _Container&gt;
+<span class="lineNum"> 844 </span> : inline typename __normal_iterator&lt;_Iterator, _Container&gt;::difference_type
+<span class="lineNum"> 845 </span> : operator-(const __normal_iterator&lt;_Iterator, _Container&gt;&amp; __lhs,
+<span class="lineNum"> 846 </span><span class="lineCov"> 37193 : const __normal_iterator&lt;_Iterator, _Container&gt;&amp; __rhs)</span>
+<span class="lineNum"> 847 </span><span class="lineCov"> 37193 : { return __lhs.base() - __rhs.base(); }</span>
+<span class="lineNum"> 848 </span> :
+<span class="lineNum"> 849 </span> : template&lt;typename _Iterator, typename _Container&gt;
+<span class="lineNum"> 850 </span> : inline __normal_iterator&lt;_Iterator, _Container&gt;
+<span class="lineNum"> 851 </span> : operator+(typename __normal_iterator&lt;_Iterator, _Container&gt;::difference_type
+<span class="lineNum"> 852 </span> : __n, const __normal_iterator&lt;_Iterator, _Container&gt;&amp; __i)
+<span class="lineNum"> 853 </span> : { return __normal_iterator&lt;_Iterator, _Container&gt;(__i.base() + __n); }
+<span class="lineNum"> 854 </span> :
+<span class="lineNum"> 855 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 856 </span> :
+<span class="lineNum"> 857 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 858 </span> :
+<span class="lineNum"> 859 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 860 </span> :
+<span class="lineNum"> 861 </span> : // 24.4.3 Move iterators
+<span class="lineNum"> 862 </span> : /**
+<span class="lineNum"> 863 </span> : * Class template move_iterator is an iterator adapter with the same
+<span class="lineNum"> 864 </span> : * behavior as the underlying iterator except that its dereference
+<span class="lineNum"> 865 </span> : * operator implicitly converts the value returned by the underlying
+<span class="lineNum"> 866 </span> : * iterator's dereference operator to an rvalue reference. Some
+<span class="lineNum"> 867 </span> : * generic algorithms can be called with move iterators to replace
+<span class="lineNum"> 868 </span> : * copying with moving.
+<span class="lineNum"> 869 </span> : */
+<span class="lineNum"> 870 </span> : template&lt;typename _Iterator&gt;
+<span class="lineNum"> 871 </span> : class move_iterator
+<span class="lineNum"> 872 </span> : {
+<span class="lineNum"> 873 </span> : protected:
+<span class="lineNum"> 874 </span> : _Iterator _M_current;
+<span class="lineNum"> 875 </span> :
+<span class="lineNum"> 876 </span> : public:
+<span class="lineNum"> 877 </span> : typedef _Iterator iterator_type;
+<span class="lineNum"> 878 </span> : typedef typename iterator_traits&lt;_Iterator&gt;::difference_type
+<span class="lineNum"> 879 </span> : difference_type;
+<span class="lineNum"> 880 </span> : // NB: DR 680.
+<span class="lineNum"> 881 </span> : typedef _Iterator pointer;
+<span class="lineNum"> 882 </span> : typedef typename iterator_traits&lt;_Iterator&gt;::value_type value_type;
+<span class="lineNum"> 883 </span> : typedef typename iterator_traits&lt;_Iterator&gt;::iterator_category
+<span class="lineNum"> 884 </span> : iterator_category;
+<span class="lineNum"> 885 </span> : typedef value_type&amp;&amp; reference;
+<span class="lineNum"> 886 </span> :
+<span class="lineNum"> 887 </span> : public:
+<span class="lineNum"> 888 </span> : move_iterator()
+<span class="lineNum"> 889 </span> : : _M_current() { }
+<span class="lineNum"> 890 </span> :
+<span class="lineNum"> 891 </span> : explicit
+<span class="lineNum"> 892 </span> : move_iterator(iterator_type __i)
+<span class="lineNum"> 893 </span> : : _M_current(__i) { }
+<span class="lineNum"> 894 </span> :
+<span class="lineNum"> 895 </span> : template&lt;typename _Iter&gt;
+<span class="lineNum"> 896 </span> : move_iterator(const move_iterator&lt;_Iter&gt;&amp; __i)
+<span class="lineNum"> 897 </span> : : _M_current(__i.base()) { }
+<span class="lineNum"> 898 </span> :
+<span class="lineNum"> 899 </span> : iterator_type
+<span class="lineNum"> 900 </span> : base() const
+<span class="lineNum"> 901 </span> : { return _M_current; }
+<span class="lineNum"> 902 </span> :
+<span class="lineNum"> 903 </span> : reference
+<span class="lineNum"> 904 </span> : operator*() const
+<span class="lineNum"> 905 </span> : { return *_M_current; }
+<span class="lineNum"> 906 </span> :
+<span class="lineNum"> 907 </span> : pointer
+<span class="lineNum"> 908 </span> : operator-&gt;() const
+<span class="lineNum"> 909 </span> : { return _M_current; }
+<span class="lineNum"> 910 </span> :
+<span class="lineNum"> 911 </span> : move_iterator&amp;
+<span class="lineNum"> 912 </span> : operator++()
+<span class="lineNum"> 913 </span> : {
+<span class="lineNum"> 914 </span> : ++_M_current;
+<span class="lineNum"> 915 </span> : return *this;
+<span class="lineNum"> 916 </span> : }
+<span class="lineNum"> 917 </span> :
+<span class="lineNum"> 918 </span> : move_iterator
+<span class="lineNum"> 919 </span> : operator++(int)
+<span class="lineNum"> 920 </span> : {
+<span class="lineNum"> 921 </span> : move_iterator __tmp = *this;
+<span class="lineNum"> 922 </span> : ++_M_current;
+<span class="lineNum"> 923 </span> : return __tmp;
+<span class="lineNum"> 924 </span> : }
+<span class="lineNum"> 925 </span> :
+<span class="lineNum"> 926 </span> : move_iterator&amp;
+<span class="lineNum"> 927 </span> : operator--()
+<span class="lineNum"> 928 </span> : {
+<span class="lineNum"> 929 </span> : --_M_current;
+<span class="lineNum"> 930 </span> : return *this;
+<span class="lineNum"> 931 </span> : }
+<span class="lineNum"> 932 </span> :
+<span class="lineNum"> 933 </span> : move_iterator
+<span class="lineNum"> 934 </span> : operator--(int)
+<span class="lineNum"> 935 </span> : {
+<span class="lineNum"> 936 </span> : move_iterator __tmp = *this;
+<span class="lineNum"> 937 </span> : --_M_current;
+<span class="lineNum"> 938 </span> : return __tmp;
+<span class="lineNum"> 939 </span> : }
+<span class="lineNum"> 940 </span> :
+<span class="lineNum"> 941 </span> : move_iterator
+<span class="lineNum"> 942 </span> : operator+(difference_type __n) const
+<span class="lineNum"> 943 </span> : { return move_iterator(_M_current + __n); }
+<span class="lineNum"> 944 </span> :
+<span class="lineNum"> 945 </span> : move_iterator&amp;
+<span class="lineNum"> 946 </span> : operator+=(difference_type __n)
+<span class="lineNum"> 947 </span> : {
+<span class="lineNum"> 948 </span> : _M_current += __n;
+<span class="lineNum"> 949 </span> : return *this;
+<span class="lineNum"> 950 </span> : }
+<span class="lineNum"> 951 </span> :
+<span class="lineNum"> 952 </span> : move_iterator
+<span class="lineNum"> 953 </span> : operator-(difference_type __n) const
+<span class="lineNum"> 954 </span> : { return move_iterator(_M_current - __n); }
+<span class="lineNum"> 955 </span> :
+<span class="lineNum"> 956 </span> : move_iterator&amp;
+<span class="lineNum"> 957 </span> : operator-=(difference_type __n)
+<span class="lineNum"> 958 </span> : {
+<span class="lineNum"> 959 </span> : _M_current -= __n;
+<span class="lineNum"> 960 </span> : return *this;
+<span class="lineNum"> 961 </span> : }
+<span class="lineNum"> 962 </span> :
+<span class="lineNum"> 963 </span> : reference
+<span class="lineNum"> 964 </span> : operator[](difference_type __n) const
+<span class="lineNum"> 965 </span> : { return _M_current[__n]; }
+<span class="lineNum"> 966 </span> : };
+<span class="lineNum"> 967 </span> :
+<span class="lineNum"> 968 </span> : template&lt;typename _IteratorL, typename _IteratorR&gt;
+<span class="lineNum"> 969 </span> : inline bool
+<span class="lineNum"> 970 </span> : operator==(const move_iterator&lt;_IteratorL&gt;&amp; __x,
+<span class="lineNum"> 971 </span> : const move_iterator&lt;_IteratorR&gt;&amp; __y)
+<span class="lineNum"> 972 </span> : { return __x.base() == __y.base(); }
+<span class="lineNum"> 973 </span> :
+<span class="lineNum"> 974 </span> : template&lt;typename _IteratorL, typename _IteratorR&gt;
+<span class="lineNum"> 975 </span> : inline bool
+<span class="lineNum"> 976 </span> : operator!=(const move_iterator&lt;_IteratorL&gt;&amp; __x,
+<span class="lineNum"> 977 </span> : const move_iterator&lt;_IteratorR&gt;&amp; __y)
+<span class="lineNum"> 978 </span> : { return !(__x == __y); }
+<span class="lineNum"> 979 </span> :
+<span class="lineNum"> 980 </span> : template&lt;typename _IteratorL, typename _IteratorR&gt;
+<span class="lineNum"> 981 </span> : inline bool
+<span class="lineNum"> 982 </span> : operator&lt;(const move_iterator&lt;_IteratorL&gt;&amp; __x,
+<span class="lineNum"> 983 </span> : const move_iterator&lt;_IteratorR&gt;&amp; __y)
+<span class="lineNum"> 984 </span> : { return __x.base() &lt; __y.base(); }
+<span class="lineNum"> 985 </span> :
+<span class="lineNum"> 986 </span> : template&lt;typename _IteratorL, typename _IteratorR&gt;
+<span class="lineNum"> 987 </span> : inline bool
+<span class="lineNum"> 988 </span> : operator&lt;=(const move_iterator&lt;_IteratorL&gt;&amp; __x,
+<span class="lineNum"> 989 </span> : const move_iterator&lt;_IteratorR&gt;&amp; __y)
+<span class="lineNum"> 990 </span> : { return !(__y &lt; __x); }
+<span class="lineNum"> 991 </span> :
+<span class="lineNum"> 992 </span> : template&lt;typename _IteratorL, typename _IteratorR&gt;
+<span class="lineNum"> 993 </span> : inline bool
+<span class="lineNum"> 994 </span> : operator&gt;(const move_iterator&lt;_IteratorL&gt;&amp; __x,
+<span class="lineNum"> 995 </span> : const move_iterator&lt;_IteratorR&gt;&amp; __y)
+<span class="lineNum"> 996 </span> : { return __y &lt; __x; }
+<span class="lineNum"> 997 </span> :
+<span class="lineNum"> 998 </span> : template&lt;typename _IteratorL, typename _IteratorR&gt;
+<span class="lineNum"> 999 </span> : inline bool
+<span class="lineNum"> 1000 </span> : operator&gt;=(const move_iterator&lt;_IteratorL&gt;&amp; __x,
+<span class="lineNum"> 1001 </span> : const move_iterator&lt;_IteratorR&gt;&amp; __y)
+<span class="lineNum"> 1002 </span> : { return !(__x &lt; __y); }
+<span class="lineNum"> 1003 </span> :
+<span class="lineNum"> 1004 </span> : template&lt;typename _IteratorL, typename _IteratorR&gt;
+<span class="lineNum"> 1005 </span> : inline typename move_iterator&lt;_IteratorL&gt;::difference_type
+<span class="lineNum"> 1006 </span> : operator-(const move_iterator&lt;_IteratorL&gt;&amp; __x,
+<span class="lineNum"> 1007 </span> : const move_iterator&lt;_IteratorR&gt;&amp; __y)
+<span class="lineNum"> 1008 </span> : { return __x.base() - __y.base(); }
+<span class="lineNum"> 1009 </span> :
+<span class="lineNum"> 1010 </span> : template&lt;typename _Iterator&gt;
+<span class="lineNum"> 1011 </span> : inline move_iterator&lt;_Iterator&gt;
+<span class="lineNum"> 1012 </span> : operator+(typename move_iterator&lt;_Iterator&gt;::difference_type __n,
+<span class="lineNum"> 1013 </span> : const move_iterator&lt;_Iterator&gt;&amp; __x)
+<span class="lineNum"> 1014 </span> : { return __x + __n; }
+<span class="lineNum"> 1015 </span> :
+<span class="lineNum"> 1016 </span> : template&lt;typename _Iterator&gt;
+<span class="lineNum"> 1017 </span> : inline move_iterator&lt;_Iterator&gt;
+<span class="lineNum"> 1018 </span> : make_move_iterator(const _Iterator&amp; __i)
+<span class="lineNum"> 1019 </span> : { return move_iterator&lt;_Iterator&gt;(__i); }
+<span class="lineNum"> 1020 </span> :
+<span class="lineNum"> 1021 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 1022 </span> :
+<span class="lineNum"> 1023 </span> : #define _GLIBCXX_MAKE_MOVE_ITERATOR(_Iter) std::make_move_iterator(_Iter)
+<span class="lineNum"> 1024 </span> : #else
+<span class="lineNum"> 1025 </span> : #define _GLIBCXX_MAKE_MOVE_ITERATOR(_Iter) (_Iter)
+<span class="lineNum"> 1026 </span> : #endif // __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 1027 </span> :
+<span class="lineNum"> 1028 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h.gcov.html b/rep/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h.gcov.html
new file mode 100644
index 0000000..8486f49
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/stl_iterator_base_funcs.h.gcov.html
@@ -0,0 +1,249 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/stl_iterator_base_funcs.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - stl_iterator_base_funcs.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">28</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">82.1 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">23</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Functions used by iterators -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 18 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 19 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 20 </span> : // USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /*
+<span class="lineNum"> 32 </span> : *
+<span class="lineNum"> 33 </span> : * Copyright (c) 1994
+<span class="lineNum"> 34 </span> : * Hewlett-Packard Company
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 37 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 38 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 39 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 40 </span> : * in supporting documentation. Hewlett-Packard Company makes no
+<span class="lineNum"> 41 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 42 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 43 </span> : *
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * Copyright (c) 1996-1998
+<span class="lineNum"> 46 </span> : * Silicon Graphics Computer Systems, Inc.
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 49 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 50 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 51 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 52 </span> : * in supporting documentation. Silicon Graphics makes no
+<span class="lineNum"> 53 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 54 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 55 </span> : */
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /** @file stl_iterator_base_funcs.h
+<span class="lineNum"> 58 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 59 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 60 </span> : *
+<span class="lineNum"> 61 </span> : * This file contains all of the general iterator-related utility
+<span class="lineNum"> 62 </span> : * functions, such as distance() and advance().
+<span class="lineNum"> 63 </span> : */
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : #ifndef _STL_ITERATOR_BASE_FUNCS_H
+<span class="lineNum"> 66 </span> : #define _STL_ITERATOR_BASE_FUNCS_H 1
+<span class="lineNum"> 67 </span> :
+<span class="lineNum"> 68 </span> : #pragma GCC system_header
+<span class="lineNum"> 69 </span> : #include &lt;bits/concept_check.h&gt;
+<span class="lineNum"> 70 </span> :
+<span class="lineNum"> 71 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 72 </span> :
+<span class="lineNum"> 73 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 74 </span> : inline typename iterator_traits&lt;_InputIterator&gt;::difference_type
+<span class="lineNum"> 75 </span> : __distance(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 76 </span><span class="lineCov"> 13 : input_iterator_tag)</span>
+<span class="lineNum"> 77 </span> : {
+<span class="lineNum"> 78 </span> : // concept requirements
+<span class="lineNum"> 79 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator&gt;)
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span><span class="lineCov"> 13 : typename iterator_traits&lt;_InputIterator&gt;::difference_type __n = 0;</span>
+<span class="lineNum"> 82 </span><span class="lineCov"> 37 : while (__first != __last)</span>
+<span class="lineNum"> 83 </span> : {
+<span class="lineNum"> 84 </span><span class="lineCov"> 11 : ++__first;</span>
+<span class="lineNum"> 85 </span><span class="lineCov"> 11 : ++__n;</span>
+<span class="lineNum"> 86 </span> : }
+<span class="lineNum"> 87 </span><span class="lineCov"> 13 : return __n;</span>
+<span class="lineNum"> 88 </span> : }
+<span class="lineNum"> 89 </span> :
+<span class="lineNum"> 90 </span> : template&lt;typename _RandomAccessIterator&gt;
+<span class="lineNum"> 91 </span> : inline typename iterator_traits&lt;_RandomAccessIterator&gt;::difference_type
+<span class="lineNum"> 92 </span> : __distance(_RandomAccessIterator __first, _RandomAccessIterator __last,
+<span class="lineNum"> 93 </span><span class="lineCov"> 1287 : random_access_iterator_tag)</span>
+<span class="lineNum"> 94 </span> : {
+<span class="lineNum"> 95 </span> : // concept requirements
+<span class="lineNum"> 96 </span> : __glibcxx_function_requires(_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 97 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 98 </span><span class="lineCov"> 1287 : return __last - __first;</span>
+<span class="lineNum"> 99 </span> : }
+<span class="lineNum"> 100 </span> :
+<span class="lineNum"> 101 </span> : /**
+<span class="lineNum"> 102 </span> : * @brief A generalization of pointer arithmetic.
+<span class="lineNum"> 103 </span> : * @param first An input iterator.
+<span class="lineNum"> 104 </span> : * @param last An input iterator.
+<span class="lineNum"> 105 </span> : * @return The distance between them.
+<span class="lineNum"> 106 </span> : *
+<span class="lineNum"> 107 </span> : * Returns @c n such that first + n == last. This requires that @p last
+<span class="lineNum"> 108 </span> : * must be reachable from @p first. Note that @c n may be negative.
+<span class="lineNum"> 109 </span> : *
+<span class="lineNum"> 110 </span> : * For random access iterators, this uses their @c + and @c - operations
+<span class="lineNum"> 111 </span> : * and are constant time. For other %iterator classes they are linear time.
+<span class="lineNum"> 112 </span> : */
+<span class="lineNum"> 113 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 114 </span> : inline typename iterator_traits&lt;_InputIterator&gt;::difference_type
+<span class="lineNum"> 115 </span><span class="lineCov"> 1300 : distance(_InputIterator __first, _InputIterator __last)</span>
+<span class="lineNum"> 116 </span> : {
+<span class="lineNum"> 117 </span> : // concept requirements -- taken care of in __distance
+<span class="lineNum"> 118 </span> : return std::__distance(__first, __last,
+<span class="lineNum"> 119 </span><span class="lineCov"> 1300 : std::__iterator_category(__first));</span>
+<span class="lineNum"> 120 </span> : }
+<span class="lineNum"> 121 </span> :
+<span class="lineNum"> 122 </span> : template&lt;typename _InputIterator, typename _Distance&gt;
+<span class="lineNum"> 123 </span> : inline void
+<span class="lineNum"> 124 </span><span class="lineCov"> 10 : __advance(_InputIterator&amp; __i, _Distance __n, input_iterator_tag)</span>
+<span class="lineNum"> 125 </span> : {
+<span class="lineNum"> 126 </span> : // concept requirements
+<span class="lineNum"> 127 </span> : __glibcxx_function_requires(_InputIteratorConcept&lt;_InputIterator&gt;)
+<span class="lineNum"> 128 </span><span class="lineCov"> 41 : while (__n--)</span>
+<span class="lineNum"> 129 </span><span class="lineCov"> 21 : ++__i;</span>
+<span class="lineNum"> 130 </span><span class="lineCov"> 10 : }</span>
+<span class="lineNum"> 131 </span> :
+<span class="lineNum"> 132 </span> : template&lt;typename _BidirectionalIterator, typename _Distance&gt;
+<span class="lineNum"> 133 </span> : inline void
+<span class="lineNum"> 134 </span> : __advance(_BidirectionalIterator&amp; __i, _Distance __n,
+<span class="lineNum"> 135 </span><span class="lineCov"> 55 : bidirectional_iterator_tag)</span>
+<span class="lineNum"> 136 </span> : {
+<span class="lineNum"> 137 </span> : // concept requirements
+<span class="lineNum"> 138 </span> : __glibcxx_function_requires(_BidirectionalIteratorConcept&lt;
+<span class="lineNum"> 139 </span> : _BidirectionalIterator&gt;)
+<span class="lineNum"> 140 </span><span class="lineCov"> 55 : if (__n &gt; 0)</span>
+<span class="lineNum"> 141 </span><span class="lineCov"> 165 : while (__n--)</span>
+<span class="lineNum"> 142 </span><span class="lineCov"> 55 : ++__i;</span>
+<span class="lineNum"> 143 </span> : else
+<span class="lineNum"> 144 </span><span class="lineNoCov"> 0 : while (__n++)</span>
+<span class="lineNum"> 145 </span><span class="lineNoCov"> 0 : --__i;</span>
+<span class="lineNum"> 146 </span><span class="lineCov"> 55 : }</span>
+<span class="lineNum"> 147 </span> :
+<span class="lineNum"> 148 </span> : template&lt;typename _RandomAccessIterator, typename _Distance&gt;
+<span class="lineNum"> 149 </span> : inline void
+<span class="lineNum"> 150 </span> : __advance(_RandomAccessIterator&amp; __i, _Distance __n,
+<span class="lineNum"> 151 </span><span class="lineNoCov"> 0 : random_access_iterator_tag)</span>
+<span class="lineNum"> 152 </span> : {
+<span class="lineNum"> 153 </span> : // concept requirements
+<span class="lineNum"> 154 </span> : __glibcxx_function_requires(_RandomAccessIteratorConcept&lt;
+<span class="lineNum"> 155 </span> : _RandomAccessIterator&gt;)
+<span class="lineNum"> 156 </span><span class="lineNoCov"> 0 : __i += __n;</span>
+<span class="lineNum"> 157 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 158 </span> :
+<span class="lineNum"> 159 </span> : /**
+<span class="lineNum"> 160 </span> : * @brief A generalization of pointer arithmetic.
+<span class="lineNum"> 161 </span> : * @param i An input iterator.
+<span class="lineNum"> 162 </span> : * @param n The &quot;delta&quot; by which to change @p i.
+<span class="lineNum"> 163 </span> : * @return Nothing.
+<span class="lineNum"> 164 </span> : *
+<span class="lineNum"> 165 </span> : * This increments @p i by @p n. For bidirectional and random access
+<span class="lineNum"> 166 </span> : * iterators, @p n may be negative, in which case @p i is decremented.
+<span class="lineNum"> 167 </span> : *
+<span class="lineNum"> 168 </span> : * For random access iterators, this uses their @c + and @c - operations
+<span class="lineNum"> 169 </span> : * and are constant time. For other %iterator classes they are linear time.
+<span class="lineNum"> 170 </span> : */
+<span class="lineNum"> 171 </span> : template&lt;typename _InputIterator, typename _Distance&gt;
+<span class="lineNum"> 172 </span> : inline void
+<span class="lineNum"> 173 </span><span class="lineCov"> 65 : advance(_InputIterator&amp; __i, _Distance __n)</span>
+<span class="lineNum"> 174 </span> : {
+<span class="lineNum"> 175 </span> : // concept requirements -- taken care of in __advance
+<span class="lineNum"> 176 </span><span class="lineCov"> 65 : typename iterator_traits&lt;_InputIterator&gt;::difference_type __d = __n;</span>
+<span class="lineNum"> 177 </span><span class="lineCov"> 65 : std::__advance(__i, __d, std::__iterator_category(__i));</span>
+<span class="lineNum"> 178 </span><span class="lineCov"> 65 : }</span>
+<span class="lineNum"> 179 </span> :
+<span class="lineNum"> 180 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 181 </span> :
+<span class="lineNum"> 182 </span> : #endif /* _STL_ITERATOR_BASE_FUNCS_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/stl_iterator_base_types.h.gcov.html b/rep/usr/include/c++/4.3/bits/stl_iterator_base_types.h.gcov.html
new file mode 100644
index 0000000..fc03082
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/stl_iterator_base_types.h.gcov.html
@@ -0,0 +1,239 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/stl_iterator_base_types.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - stl_iterator_base_types.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">3</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">3</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Types used in iterator implementation -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 18 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 19 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 20 </span> : // USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /*
+<span class="lineNum"> 32 </span> : *
+<span class="lineNum"> 33 </span> : * Copyright (c) 1994
+<span class="lineNum"> 34 </span> : * Hewlett-Packard Company
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 37 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 38 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 39 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 40 </span> : * in supporting documentation. Hewlett-Packard Company makes no
+<span class="lineNum"> 41 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 42 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 43 </span> : *
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * Copyright (c) 1996-1998
+<span class="lineNum"> 46 </span> : * Silicon Graphics Computer Systems, Inc.
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 49 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 50 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 51 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 52 </span> : * in supporting documentation. Silicon Graphics makes no
+<span class="lineNum"> 53 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 54 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 55 </span> : */
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /** @file stl_iterator_base_types.h
+<span class="lineNum"> 58 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 59 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 60 </span> : *
+<span class="lineNum"> 61 </span> : * This file contains all of the general iterator-related utility types,
+<span class="lineNum"> 62 </span> : * such as iterator_traits and struct iterator.
+<span class="lineNum"> 63 </span> : */
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : #ifndef _STL_ITERATOR_BASE_TYPES_H
+<span class="lineNum"> 66 </span> : #define _STL_ITERATOR_BASE_TYPES_H 1
+<span class="lineNum"> 67 </span> :
+<span class="lineNum"> 68 </span> : #pragma GCC system_header
+<span class="lineNum"> 69 </span> :
+<span class="lineNum"> 70 </span> : #include &lt;bits/c++config.h&gt;
+<span class="lineNum"> 71 </span> : #include &lt;cstddef&gt;
+<span class="lineNum"> 72 </span> :
+<span class="lineNum"> 73 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span> : //@{
+<span class="lineNum"> 76 </span> : /**
+<span class="lineNum"> 77 </span> : * @defgroup iterator_tags Iterator Tags
+<span class="lineNum"> 78 </span> : * These are empty types, used to distinguish different iterators. The
+<span class="lineNum"> 79 </span> : * distinction is not made by what they contain, but simply by what they
+<span class="lineNum"> 80 </span> : * are. Different underlying algorithms can then be used based on the
+<span class="lineNum"> 81 </span> : * different operations supported by different iterator types.
+<span class="lineNum"> 82 </span> : */
+<span class="lineNum"> 83 </span> : /// Marking input iterators.
+<span class="lineNum"> 84 </span> : struct input_iterator_tag {};
+<span class="lineNum"> 85 </span> : /// Marking output iterators.
+<span class="lineNum"> 86 </span> : struct output_iterator_tag {};
+<span class="lineNum"> 87 </span> : /// Forward iterators support a superset of input iterator operations.
+<span class="lineNum"> 88 </span> : struct forward_iterator_tag : public input_iterator_tag {};
+<span class="lineNum"> 89 </span> : /// Bidirectional iterators support a superset of forward iterator
+<span class="lineNum"> 90 </span> : /// operations.
+<span class="lineNum"> 91 </span> : struct bidirectional_iterator_tag : public forward_iterator_tag {};
+<span class="lineNum"> 92 </span> : /// Random-access iterators support a superset of bidirectional iterator
+<span class="lineNum"> 93 </span> : /// operations.
+<span class="lineNum"> 94 </span> : struct random_access_iterator_tag : public bidirectional_iterator_tag {};
+<span class="lineNum"> 95 </span> : //@}
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span> :
+<span class="lineNum"> 98 </span> : /**
+<span class="lineNum"> 99 </span> : * @brief Common %iterator class.
+<span class="lineNum"> 100 </span> : *
+<span class="lineNum"> 101 </span> : * This class does nothing but define nested typedefs. %Iterator classes
+<span class="lineNum"> 102 </span> : * can inherit from this class to save some work. The typedefs are then
+<span class="lineNum"> 103 </span> : * used in specializations and overloading.
+<span class="lineNum"> 104 </span> : *
+<span class="lineNum"> 105 </span> : * In particular, there are no default implementations of requirements
+<span class="lineNum"> 106 </span> : * such as @c operator++ and the like. (How could there be?)
+<span class="lineNum"> 107 </span> : */
+<span class="lineNum"> 108 </span> : template&lt;typename _Category, typename _Tp, typename _Distance = ptrdiff_t,
+<span class="lineNum"> 109 </span> : typename _Pointer = _Tp*, typename _Reference = _Tp&amp;&gt;
+<span class="lineNum"> 110 </span> : struct iterator
+<span class="lineNum"> 111 </span><span class="lineCov"> 304336 : {</span>
+<span class="lineNum"> 112 </span> : /// One of the @link iterator_tags tag types@endlink.
+<span class="lineNum"> 113 </span> : typedef _Category iterator_category;
+<span class="lineNum"> 114 </span> : /// The type &quot;pointed to&quot; by the iterator.
+<span class="lineNum"> 115 </span> : typedef _Tp value_type;
+<span class="lineNum"> 116 </span> : /// Distance between iterators is represented as this type.
+<span class="lineNum"> 117 </span> : typedef _Distance difference_type;
+<span class="lineNum"> 118 </span> : /// This type represents a pointer-to-value_type.
+<span class="lineNum"> 119 </span> : typedef _Pointer pointer;
+<span class="lineNum"> 120 </span> : /// This type represents a reference-to-value_type.
+<span class="lineNum"> 121 </span> : typedef _Reference reference;
+<span class="lineNum"> 122 </span> : };
+<span class="lineNum"> 123 </span> :
+<span class="lineNum"> 124 </span> : /**
+<span class="lineNum"> 125 </span> : * This class does nothing but define nested typedefs. The general
+<span class="lineNum"> 126 </span> : * version simply &quot;forwards&quot; the nested typedefs from the Iterator
+<span class="lineNum"> 127 </span> : * argument. Specialized versions for pointers and pointers-to-const
+<span class="lineNum"> 128 </span> : * provide tighter, more correct semantics.
+<span class="lineNum"> 129 </span> : */
+<span class="lineNum"> 130 </span> : template&lt;typename _Iterator&gt;
+<span class="lineNum"> 131 </span> : struct iterator_traits
+<span class="lineNum"> 132 </span> : {
+<span class="lineNum"> 133 </span> : typedef typename _Iterator::iterator_category iterator_category;
+<span class="lineNum"> 134 </span> : typedef typename _Iterator::value_type value_type;
+<span class="lineNum"> 135 </span> : typedef typename _Iterator::difference_type difference_type;
+<span class="lineNum"> 136 </span> : typedef typename _Iterator::pointer pointer;
+<span class="lineNum"> 137 </span> : typedef typename _Iterator::reference reference;
+<span class="lineNum"> 138 </span> : };
+<span class="lineNum"> 139 </span> :
+<span class="lineNum"> 140 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 141 </span> : struct iterator_traits&lt;_Tp*&gt;
+<span class="lineNum"> 142 </span> : {
+<span class="lineNum"> 143 </span> : typedef random_access_iterator_tag iterator_category;
+<span class="lineNum"> 144 </span> : typedef _Tp value_type;
+<span class="lineNum"> 145 </span> : typedef ptrdiff_t difference_type;
+<span class="lineNum"> 146 </span> : typedef _Tp* pointer;
+<span class="lineNum"> 147 </span> : typedef _Tp&amp; reference;
+<span class="lineNum"> 148 </span> : };
+<span class="lineNum"> 149 </span> :
+<span class="lineNum"> 150 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 151 </span> : struct iterator_traits&lt;const _Tp*&gt;
+<span class="lineNum"> 152 </span> : {
+<span class="lineNum"> 153 </span> : typedef random_access_iterator_tag iterator_category;
+<span class="lineNum"> 154 </span> : typedef _Tp value_type;
+<span class="lineNum"> 155 </span> : typedef ptrdiff_t difference_type;
+<span class="lineNum"> 156 </span> : typedef const _Tp* pointer;
+<span class="lineNum"> 157 </span> : typedef const _Tp&amp; reference;
+<span class="lineNum"> 158 </span> : };
+<span class="lineNum"> 159 </span> :
+<span class="lineNum"> 160 </span> : /**
+<span class="lineNum"> 161 </span> : * This function is not a part of the C++ standard but is syntactic
+<span class="lineNum"> 162 </span> : * sugar for internal library use only.
+<span class="lineNum"> 163 </span> : */
+<span class="lineNum"> 164 </span> : template&lt;typename _Iter&gt;
+<span class="lineNum"> 165 </span> : inline typename iterator_traits&lt;_Iter&gt;::iterator_category
+<span class="lineNum"> 166 </span><span class="lineCov"> 4730 : __iterator_category(const _Iter&amp;)</span>
+<span class="lineNum"> 167 </span><span class="lineCov"> 4730 : { return typename iterator_traits&lt;_Iter&gt;::iterator_category(); }</span>
+<span class="lineNum"> 168 </span> :
+<span class="lineNum"> 169 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 170 </span> :
+<span class="lineNum"> 171 </span> : #endif /* _STL_ITERATOR_BASE_TYPES_H */
+<span class="lineNum"> 172 </span> :
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/stl_list.h.gcov.html b/rep/usr/include/c++/4.3/bits/stl_list.h.gcov.html
new file mode 100644
index 0000000..9abdf8e
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/stl_list.h.gcov.html
@@ -0,0 +1,1530 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/stl_list.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - stl_list.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">94</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">93.6 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">88</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // List implementation -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 18 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 19 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 20 </span> : // USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /*
+<span class="lineNum"> 32 </span> : *
+<span class="lineNum"> 33 </span> : * Copyright (c) 1994
+<span class="lineNum"> 34 </span> : * Hewlett-Packard Company
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 37 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 38 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 39 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 40 </span> : * in supporting documentation. Hewlett-Packard Company makes no
+<span class="lineNum"> 41 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 42 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 43 </span> : *
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * Copyright (c) 1996,1997
+<span class="lineNum"> 46 </span> : * Silicon Graphics Computer Systems, Inc.
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 49 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 50 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 51 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 52 </span> : * in supporting documentation. Silicon Graphics makes no
+<span class="lineNum"> 53 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 54 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 55 </span> : */
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /** @file stl_list.h
+<span class="lineNum"> 58 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 59 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 60 </span> : */
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : #ifndef _STL_LIST_H
+<span class="lineNum"> 63 </span> : #define _STL_LIST_H 1
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : #include &lt;bits/concept_check.h&gt;
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span> : // Supporting structures are split into common and templated types; the
+<span class="lineNum"> 70 </span> : // latter publicly inherits from the former in an effort to reduce code
+<span class="lineNum"> 71 </span> : // duplication. This results in some &quot;needless&quot; static_cast'ing later on,
+<span class="lineNum"> 72 </span> : // but it's all safe downcasting.
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span> : /// Common part of a node in the %list.
+<span class="lineNum"> 75 </span> : struct _List_node_base
+<span class="lineNum"> 76 </span> : {
+<span class="lineNum"> 77 </span> : _List_node_base* _M_next;
+<span class="lineNum"> 78 </span> : _List_node_base* _M_prev;
+<span class="lineNum"> 79 </span> :
+<span class="lineNum"> 80 </span> : static void
+<span class="lineNum"> 81 </span> : swap(_List_node_base&amp; __x, _List_node_base&amp; __y);
+<span class="lineNum"> 82 </span> :
+<span class="lineNum"> 83 </span> : void
+<span class="lineNum"> 84 </span> : transfer(_List_node_base * const __first,
+<span class="lineNum"> 85 </span> : _List_node_base * const __last);
+<span class="lineNum"> 86 </span> :
+<span class="lineNum"> 87 </span> : void
+<span class="lineNum"> 88 </span> : reverse();
+<span class="lineNum"> 89 </span> :
+<span class="lineNum"> 90 </span> : void
+<span class="lineNum"> 91 </span> : hook(_List_node_base * const __position);
+<span class="lineNum"> 92 </span> :
+<span class="lineNum"> 93 </span> : void
+<span class="lineNum"> 94 </span> : unhook();
+<span class="lineNum"> 95 </span> : };
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span> : /// An actual node in the %list.
+<span class="lineNum"> 98 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 99 </span> : struct _List_node : public _List_node_base
+<span class="lineNum"> 100 </span> : {
+<span class="lineNum"> 101 </span> : ///&lt; User's data.
+<span class="lineNum"> 102 </span> : _Tp _M_data;
+<span class="lineNum"> 103 </span> : };
+<span class="lineNum"> 104 </span> :
+<span class="lineNum"> 105 </span> : /**
+<span class="lineNum"> 106 </span> : * @brief A list::iterator.
+<span class="lineNum"> 107 </span> : *
+<span class="lineNum"> 108 </span> : * All the functions are op overloads.
+<span class="lineNum"> 109 </span> : */
+<span class="lineNum"> 110 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 111 </span> : struct _List_iterator
+<span class="lineNum"> 112 </span> : {
+<span class="lineNum"> 113 </span> : typedef _List_iterator&lt;_Tp&gt; _Self;
+<span class="lineNum"> 114 </span> : typedef _List_node&lt;_Tp&gt; _Node;
+<span class="lineNum"> 115 </span> :
+<span class="lineNum"> 116 </span> : typedef ptrdiff_t difference_type;
+<span class="lineNum"> 117 </span> : typedef std::bidirectional_iterator_tag iterator_category;
+<span class="lineNum"> 118 </span> : typedef _Tp value_type;
+<span class="lineNum"> 119 </span> : typedef _Tp* pointer;
+<span class="lineNum"> 120 </span> : typedef _Tp&amp; reference;
+<span class="lineNum"> 121 </span> :
+<span class="lineNum"> 122 </span> : _List_iterator()
+<span class="lineNum"> 123 </span> : : _M_node() { }
+<span class="lineNum"> 124 </span> :
+<span class="lineNum"> 125 </span> : explicit
+<span class="lineNum"> 126 </span><span class="lineCov"> 206 : _List_iterator(_List_node_base* __x)</span>
+<span class="lineNum"> 127 </span><span class="lineCov"> 206 : : _M_node(__x) { }</span>
+<span class="lineNum"> 128 </span> :
+<span class="lineNum"> 129 </span> : // Must downcast from List_node_base to _List_node to get to _M_data.
+<span class="lineNum"> 130 </span> : reference
+<span class="lineNum"> 131 </span><span class="lineCov"> 99 : operator*() const</span>
+<span class="lineNum"> 132 </span><span class="lineCov"> 99 : { return static_cast&lt;_Node*&gt;(_M_node)-&gt;_M_data; }</span>
+<span class="lineNum"> 133 </span> :
+<span class="lineNum"> 134 </span> : pointer
+<span class="lineNum"> 135 </span> : operator-&gt;() const
+<span class="lineNum"> 136 </span> : { return &amp;static_cast&lt;_Node*&gt;(_M_node)-&gt;_M_data; }
+<span class="lineNum"> 137 </span> :
+<span class="lineNum"> 138 </span> : _Self&amp;
+<span class="lineNum"> 139 </span><span class="lineCov"> 63 : operator++()</span>
+<span class="lineNum"> 140 </span> : {
+<span class="lineNum"> 141 </span><span class="lineCov"> 63 : _M_node = _M_node-&gt;_M_next;</span>
+<span class="lineNum"> 142 </span><span class="lineCov"> 63 : return *this;</span>
+<span class="lineNum"> 143 </span> : }
+<span class="lineNum"> 144 </span> :
+<span class="lineNum"> 145 </span> : _Self
+<span class="lineNum"> 146 </span><span class="lineNoCov"> 0 : operator++(int)</span>
+<span class="lineNum"> 147 </span> : {
+<span class="lineNum"> 148 </span><span class="lineNoCov"> 0 : _Self __tmp = *this;</span>
+<span class="lineNum"> 149 </span><span class="lineNoCov"> 0 : _M_node = _M_node-&gt;_M_next;</span>
+<span class="lineNum"> 150 </span> : return __tmp;
+<span class="lineNum"> 151 </span> : }
+<span class="lineNum"> 152 </span> :
+<span class="lineNum"> 153 </span> : _Self&amp;
+<span class="lineNum"> 154 </span><span class="lineCov"> 1 : operator--()</span>
+<span class="lineNum"> 155 </span> : {
+<span class="lineNum"> 156 </span><span class="lineCov"> 1 : _M_node = _M_node-&gt;_M_prev;</span>
+<span class="lineNum"> 157 </span><span class="lineCov"> 1 : return *this;</span>
+<span class="lineNum"> 158 </span> : }
+<span class="lineNum"> 159 </span> :
+<span class="lineNum"> 160 </span> : _Self
+<span class="lineNum"> 161 </span> : operator--(int)
+<span class="lineNum"> 162 </span> : {
+<span class="lineNum"> 163 </span> : _Self __tmp = *this;
+<span class="lineNum"> 164 </span> : _M_node = _M_node-&gt;_M_prev;
+<span class="lineNum"> 165 </span> : return __tmp;
+<span class="lineNum"> 166 </span> : }
+<span class="lineNum"> 167 </span> :
+<span class="lineNum"> 168 </span> : bool
+<span class="lineNum"> 169 </span><span class="lineCov"> 108 : operator==(const _Self&amp; __x) const</span>
+<span class="lineNum"> 170 </span><span class="lineCov"> 108 : { return _M_node == __x._M_node; }</span>
+<span class="lineNum"> 171 </span> :
+<span class="lineNum"> 172 </span> : bool
+<span class="lineNum"> 173 </span><span class="lineCov"> 42 : operator!=(const _Self&amp; __x) const</span>
+<span class="lineNum"> 174 </span><span class="lineCov"> 42 : { return _M_node != __x._M_node; }</span>
+<span class="lineNum"> 175 </span> :
+<span class="lineNum"> 176 </span> : // The only member points to the %list element.
+<span class="lineNum"> 177 </span> : _List_node_base* _M_node;
+<span class="lineNum"> 178 </span> : };
+<span class="lineNum"> 179 </span> :
+<span class="lineNum"> 180 </span> : /**
+<span class="lineNum"> 181 </span> : * @brief A list::const_iterator.
+<span class="lineNum"> 182 </span> : *
+<span class="lineNum"> 183 </span> : * All the functions are op overloads.
+<span class="lineNum"> 184 </span> : */
+<span class="lineNum"> 185 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 186 </span> : struct _List_const_iterator
+<span class="lineNum"> 187 </span> : {
+<span class="lineNum"> 188 </span> : typedef _List_const_iterator&lt;_Tp&gt; _Self;
+<span class="lineNum"> 189 </span> : typedef const _List_node&lt;_Tp&gt; _Node;
+<span class="lineNum"> 190 </span> : typedef _List_iterator&lt;_Tp&gt; iterator;
+<span class="lineNum"> 191 </span> :
+<span class="lineNum"> 192 </span> : typedef ptrdiff_t difference_type;
+<span class="lineNum"> 193 </span> : typedef std::bidirectional_iterator_tag iterator_category;
+<span class="lineNum"> 194 </span> : typedef _Tp value_type;
+<span class="lineNum"> 195 </span> : typedef const _Tp* pointer;
+<span class="lineNum"> 196 </span> : typedef const _Tp&amp; reference;
+<span class="lineNum"> 197 </span> :
+<span class="lineNum"> 198 </span> : _List_const_iterator()
+<span class="lineNum"> 199 </span> : : _M_node() { }
+<span class="lineNum"> 200 </span> :
+<span class="lineNum"> 201 </span> : explicit
+<span class="lineNum"> 202 </span><span class="lineCov"> 42 : _List_const_iterator(const _List_node_base* __x)</span>
+<span class="lineNum"> 203 </span><span class="lineCov"> 42 : : _M_node(__x) { }</span>
+<span class="lineNum"> 204 </span> :
+<span class="lineNum"> 205 </span> : _List_const_iterator(const iterator&amp; __x)
+<span class="lineNum"> 206 </span> : : _M_node(__x._M_node) { }
+<span class="lineNum"> 207 </span> :
+<span class="lineNum"> 208 </span> : // Must downcast from List_node_base to _List_node to get to
+<span class="lineNum"> 209 </span> : // _M_data.
+<span class="lineNum"> 210 </span> : reference
+<span class="lineNum"> 211 </span><span class="lineCov"> 8 : operator*() const</span>
+<span class="lineNum"> 212 </span><span class="lineCov"> 8 : { return static_cast&lt;_Node*&gt;(_M_node)-&gt;_M_data; }</span>
+<span class="lineNum"> 213 </span> :
+<span class="lineNum"> 214 </span> : pointer
+<span class="lineNum"> 215 </span> : operator-&gt;() const
+<span class="lineNum"> 216 </span> : { return &amp;static_cast&lt;_Node*&gt;(_M_node)-&gt;_M_data; }
+<span class="lineNum"> 217 </span> :
+<span class="lineNum"> 218 </span> : _Self&amp;
+<span class="lineNum"> 219 </span><span class="lineCov"> 19 : operator++()</span>
+<span class="lineNum"> 220 </span> : {
+<span class="lineNum"> 221 </span><span class="lineCov"> 19 : _M_node = _M_node-&gt;_M_next;</span>
+<span class="lineNum"> 222 </span><span class="lineCov"> 19 : return *this;</span>
+<span class="lineNum"> 223 </span> : }
+<span class="lineNum"> 224 </span> :
+<span class="lineNum"> 225 </span> : _Self
+<span class="lineNum"> 226 </span> : operator++(int)
+<span class="lineNum"> 227 </span> : {
+<span class="lineNum"> 228 </span> : _Self __tmp = *this;
+<span class="lineNum"> 229 </span> : _M_node = _M_node-&gt;_M_next;
+<span class="lineNum"> 230 </span> : return __tmp;
+<span class="lineNum"> 231 </span> : }
+<span class="lineNum"> 232 </span> :
+<span class="lineNum"> 233 </span> : _Self&amp;
+<span class="lineNum"> 234 </span> : operator--()
+<span class="lineNum"> 235 </span> : {
+<span class="lineNum"> 236 </span> : _M_node = _M_node-&gt;_M_prev;
+<span class="lineNum"> 237 </span> : return *this;
+<span class="lineNum"> 238 </span> : }
+<span class="lineNum"> 239 </span> :
+<span class="lineNum"> 240 </span> : _Self
+<span class="lineNum"> 241 </span> : operator--(int)
+<span class="lineNum"> 242 </span> : {
+<span class="lineNum"> 243 </span> : _Self __tmp = *this;
+<span class="lineNum"> 244 </span> : _M_node = _M_node-&gt;_M_prev;
+<span class="lineNum"> 245 </span> : return __tmp;
+<span class="lineNum"> 246 </span> : }
+<span class="lineNum"> 247 </span> :
+<span class="lineNum"> 248 </span> : bool
+<span class="lineNum"> 249 </span><span class="lineCov"> 6 : operator==(const _Self&amp; __x) const</span>
+<span class="lineNum"> 250 </span><span class="lineCov"> 6 : { return _M_node == __x._M_node; }</span>
+<span class="lineNum"> 251 </span> :
+<span class="lineNum"> 252 </span> : bool
+<span class="lineNum"> 253 </span><span class="lineCov"> 38 : operator!=(const _Self&amp; __x) const</span>
+<span class="lineNum"> 254 </span><span class="lineCov"> 38 : { return _M_node != __x._M_node; }</span>
+<span class="lineNum"> 255 </span> :
+<span class="lineNum"> 256 </span> : // The only member points to the %list element.
+<span class="lineNum"> 257 </span> : const _List_node_base* _M_node;
+<span class="lineNum"> 258 </span> : };
+<span class="lineNum"> 259 </span> :
+<span class="lineNum"> 260 </span> : template&lt;typename _Val&gt;
+<span class="lineNum"> 261 </span> : inline bool
+<span class="lineNum"> 262 </span> : operator==(const _List_iterator&lt;_Val&gt;&amp; __x,
+<span class="lineNum"> 263 </span> : const _List_const_iterator&lt;_Val&gt;&amp; __y)
+<span class="lineNum"> 264 </span> : { return __x._M_node == __y._M_node; }
+<span class="lineNum"> 265 </span> :
+<span class="lineNum"> 266 </span> : template&lt;typename _Val&gt;
+<span class="lineNum"> 267 </span> : inline bool
+<span class="lineNum"> 268 </span> : operator!=(const _List_iterator&lt;_Val&gt;&amp; __x,
+<span class="lineNum"> 269 </span> : const _List_const_iterator&lt;_Val&gt;&amp; __y)
+<span class="lineNum"> 270 </span> : { return __x._M_node != __y._M_node; }
+<span class="lineNum"> 271 </span> :
+<span class="lineNum"> 272 </span> :
+<span class="lineNum"> 273 </span> : /// See bits/stl_deque.h's _Deque_base for an explanation.
+<span class="lineNum"> 274 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 275 </span> : class _List_base
+<span class="lineNum"> 276 </span> : {
+<span class="lineNum"> 277 </span> : protected:
+<span class="lineNum"> 278 </span> : // NOTA BENE
+<span class="lineNum"> 279 </span> : // The stored instance is not actually of &quot;allocator_type&quot;'s
+<span class="lineNum"> 280 </span> : // type. Instead we rebind the type to
+<span class="lineNum"> 281 </span> : // Allocator&lt;List_node&lt;Tp&gt;&gt;, which according to [20.1.5]/4
+<span class="lineNum"> 282 </span> : // should probably be the same. List_node&lt;Tp&gt; is not the same
+<span class="lineNum"> 283 </span> : // size as Tp (it's two pointers larger), and specializations on
+<span class="lineNum"> 284 </span> : // Tp may go unused because List_node&lt;Tp&gt; is being bound
+<span class="lineNum"> 285 </span> : // instead.
+<span class="lineNum"> 286 </span> : //
+<span class="lineNum"> 287 </span> : // We put this to the test in the constructors and in
+<span class="lineNum"> 288 </span> : // get_allocator, where we use conversions between
+<span class="lineNum"> 289 </span> : // allocator_type and _Node_alloc_type. The conversion is
+<span class="lineNum"> 290 </span> : // required by table 32 in [20.1.5].
+<span class="lineNum"> 291 </span> : typedef typename _Alloc::template rebind&lt;_List_node&lt;_Tp&gt; &gt;::other
+<span class="lineNum"> 292 </span> : _Node_alloc_type;
+<span class="lineNum"> 293 </span> :
+<span class="lineNum"> 294 </span> : typedef typename _Alloc::template rebind&lt;_Tp&gt;::other _Tp_alloc_type;
+<span class="lineNum"> 295 </span> :
+<span class="lineNum"> 296 </span> : struct _List_impl
+<span class="lineNum"> 297 </span> : : public _Node_alloc_type
+<span class="lineNum"> 298 </span><span class="lineCov"> 19 : {</span>
+<span class="lineNum"> 299 </span> : _List_node_base _M_node;
+<span class="lineNum"> 300 </span> :
+<span class="lineNum"> 301 </span><span class="lineCov"> 19 : _List_impl()</span>
+<span class="lineNum"> 302 </span><span class="lineCov"> 19 : : _Node_alloc_type(), _M_node()</span>
+<span class="lineNum"> 303 </span><span class="lineCov"> 19 : { }</span>
+<span class="lineNum"> 304 </span> :
+<span class="lineNum"> 305 </span> : _List_impl(const _Node_alloc_type&amp; __a)
+<span class="lineNum"> 306 </span> : : _Node_alloc_type(__a), _M_node()
+<span class="lineNum"> 307 </span> : { }
+<span class="lineNum"> 308 </span> : };
+<span class="lineNum"> 309 </span> :
+<span class="lineNum"> 310 </span> : _List_impl _M_impl;
+<span class="lineNum"> 311 </span> :
+<span class="lineNum"> 312 </span> : _List_node&lt;_Tp&gt;*
+<span class="lineNum"> 313 </span><span class="lineCov"> 47 : _M_get_node()</span>
+<span class="lineNum"> 314 </span><span class="lineCov"> 47 : { return _M_impl._Node_alloc_type::allocate(1); }</span>
+<span class="lineNum"> 315 </span> :
+<span class="lineNum"> 316 </span> : void
+<span class="lineNum"> 317 </span><span class="lineCov"> 47 : _M_put_node(_List_node&lt;_Tp&gt;* __p)</span>
+<span class="lineNum"> 318 </span><span class="lineCov"> 47 : { _M_impl._Node_alloc_type::deallocate(__p, 1); }</span>
+<span class="lineNum"> 319 </span> :
+<span class="lineNum"> 320 </span> : public:
+<span class="lineNum"> 321 </span> : typedef _Alloc allocator_type;
+<span class="lineNum"> 322 </span> :
+<span class="lineNum"> 323 </span> : _Node_alloc_type&amp;
+<span class="lineNum"> 324 </span> : _M_get_Node_allocator()
+<span class="lineNum"> 325 </span> : { return *static_cast&lt;_Node_alloc_type*&gt;(&amp;this-&gt;_M_impl); }
+<span class="lineNum"> 326 </span> :
+<span class="lineNum"> 327 </span> : const _Node_alloc_type&amp;
+<span class="lineNum"> 328 </span><span class="lineCov"> 94 : _M_get_Node_allocator() const</span>
+<span class="lineNum"> 329 </span><span class="lineCov"> 94 : { return *static_cast&lt;const _Node_alloc_type*&gt;(&amp;this-&gt;_M_impl); }</span>
+<span class="lineNum"> 330 </span> :
+<span class="lineNum"> 331 </span> : _Tp_alloc_type
+<span class="lineNum"> 332 </span><span class="lineCov"> 94 : _M_get_Tp_allocator() const</span>
+<span class="lineNum"> 333 </span><span class="lineCov"> 94 : { return _Tp_alloc_type(_M_get_Node_allocator()); }</span>
+<span class="lineNum"> 334 </span> :
+<span class="lineNum"> 335 </span> : allocator_type
+<span class="lineNum"> 336 </span> : get_allocator() const
+<span class="lineNum"> 337 </span> : { return allocator_type(_M_get_Node_allocator()); }
+<span class="lineNum"> 338 </span> :
+<span class="lineNum"> 339 </span><span class="lineCov"> 19 : _List_base()</span>
+<span class="lineNum"> 340 </span><span class="lineCov"> 19 : : _M_impl()</span>
+<span class="lineNum"> 341 </span><span class="lineCov"> 19 : { _M_init(); }</span>
+<span class="lineNum"> 342 </span> :
+<span class="lineNum"> 343 </span> : _List_base(const allocator_type&amp; __a)
+<span class="lineNum"> 344 </span> : : _M_impl(__a)
+<span class="lineNum"> 345 </span> : { _M_init(); }
+<span class="lineNum"> 346 </span> :
+<span class="lineNum"> 347 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 348 </span> : _List_base(_List_base&amp;&amp; __x)
+<span class="lineNum"> 349 </span> : : _M_impl(__x._M_get_Node_allocator())
+<span class="lineNum"> 350 </span> : {
+<span class="lineNum"> 351 </span> : _M_init();
+<span class="lineNum"> 352 </span> : _List_node_base::swap(this-&gt;_M_impl._M_node, __x._M_impl._M_node);
+<span class="lineNum"> 353 </span> : }
+<span class="lineNum"> 354 </span> : #endif
+<span class="lineNum"> 355 </span> :
+<span class="lineNum"> 356 </span> : // This is what actually destroys the list.
+<span class="lineNum"> 357 </span><span class="lineCov"> 19 : ~_List_base()</span>
+<span class="lineNum"> 358 </span><span class="lineCov"> 19 : { _M_clear(); }</span>
+<span class="lineNum"> 359 </span> :
+<span class="lineNum"> 360 </span> : void
+<span class="lineNum"> 361 </span> : _M_clear();
+<span class="lineNum"> 362 </span> :
+<span class="lineNum"> 363 </span> : void
+<span class="lineNum"> 364 </span><span class="lineCov"> 19 : _M_init()</span>
+<span class="lineNum"> 365 </span> : {
+<span class="lineNum"> 366 </span><span class="lineCov"> 19 : this-&gt;_M_impl._M_node._M_next = &amp;this-&gt;_M_impl._M_node;</span>
+<span class="lineNum"> 367 </span><span class="lineCov"> 19 : this-&gt;_M_impl._M_node._M_prev = &amp;this-&gt;_M_impl._M_node;</span>
+<span class="lineNum"> 368 </span><span class="lineCov"> 19 : }</span>
+<span class="lineNum"> 369 </span> : };
+<span class="lineNum"> 370 </span> :
+<span class="lineNum"> 371 </span> : /**
+<span class="lineNum"> 372 </span> : * @brief A standard container with linear time access to elements,
+<span class="lineNum"> 373 </span> : * and fixed time insertion/deletion at any point in the sequence.
+<span class="lineNum"> 374 </span> : *
+<span class="lineNum"> 375 </span> : * @ingroup Containers
+<span class="lineNum"> 376 </span> : * @ingroup Sequences
+<span class="lineNum"> 377 </span> : *
+<span class="lineNum"> 378 </span> : * Meets the requirements of a &lt;a href=&quot;tables.html#65&quot;&gt;container&lt;/a&gt;, a
+<span class="lineNum"> 379 </span> : * &lt;a href=&quot;tables.html#66&quot;&gt;reversible container&lt;/a&gt;, and a
+<span class="lineNum"> 380 </span> : * &lt;a href=&quot;tables.html#67&quot;&gt;sequence&lt;/a&gt;, including the
+<span class="lineNum"> 381 </span> : * &lt;a href=&quot;tables.html#68&quot;&gt;optional sequence requirements&lt;/a&gt; with the
+<span class="lineNum"> 382 </span> : * %exception of @c at and @c operator[].
+<span class="lineNum"> 383 </span> : *
+<span class="lineNum"> 384 </span> : * This is a @e doubly @e linked %list. Traversal up and down the
+<span class="lineNum"> 385 </span> : * %list requires linear time, but adding and removing elements (or
+<span class="lineNum"> 386 </span> : * @e nodes) is done in constant time, regardless of where the
+<span class="lineNum"> 387 </span> : * change takes place. Unlike std::vector and std::deque,
+<span class="lineNum"> 388 </span> : * random-access iterators are not provided, so subscripting ( @c
+<span class="lineNum"> 389 </span> : * [] ) access is not allowed. For algorithms which only need
+<span class="lineNum"> 390 </span> : * sequential access, this lack makes no difference.
+<span class="lineNum"> 391 </span> : *
+<span class="lineNum"> 392 </span> : * Also unlike the other standard containers, std::list provides
+<span class="lineNum"> 393 </span> : * specialized algorithms %unique to linked lists, such as
+<span class="lineNum"> 394 </span> : * splicing, sorting, and in-place reversal.
+<span class="lineNum"> 395 </span> : *
+<span class="lineNum"> 396 </span> : * A couple points on memory allocation for list&lt;Tp&gt;:
+<span class="lineNum"> 397 </span> : *
+<span class="lineNum"> 398 </span> : * First, we never actually allocate a Tp, we allocate
+<span class="lineNum"> 399 </span> : * List_node&lt;Tp&gt;'s and trust [20.1.5]/4 to DTRT. This is to ensure
+<span class="lineNum"> 400 </span> : * that after elements from %list&lt;X,Alloc1&gt; are spliced into
+<span class="lineNum"> 401 </span> : * %list&lt;X,Alloc2&gt;, destroying the memory of the second %list is a
+<span class="lineNum"> 402 </span> : * valid operation, i.e., Alloc1 giveth and Alloc2 taketh away.
+<span class="lineNum"> 403 </span> : *
+<span class="lineNum"> 404 </span> : * Second, a %list conceptually represented as
+<span class="lineNum"> 405 </span> : * @code
+<span class="lineNum"> 406 </span> : * A &lt;---&gt; B &lt;---&gt; C &lt;---&gt; D
+<span class="lineNum"> 407 </span> : * @endcode
+<span class="lineNum"> 408 </span> : * is actually circular; a link exists between A and D. The %list
+<span class="lineNum"> 409 </span> : * class holds (as its only data member) a private list::iterator
+<span class="lineNum"> 410 </span> : * pointing to @e D, not to @e A! To get to the head of the %list,
+<span class="lineNum"> 411 </span> : * we start at the tail and move forward by one. When this member
+<span class="lineNum"> 412 </span> : * iterator's next/previous pointers refer to itself, the %list is
+<span class="lineNum"> 413 </span> : * %empty.
+<span class="lineNum"> 414 </span> : */
+<span class="lineNum"> 415 </span> : template&lt;typename _Tp, typename _Alloc = std::allocator&lt;_Tp&gt; &gt;
+<span class="lineNum"> 416 </span> : class list : protected _List_base&lt;_Tp, _Alloc&gt;
+<span class="lineNum"> 417 </span><span class="lineCov"> 19 : {</span>
+<span class="lineNum"> 418 </span> : // concept requirements
+<span class="lineNum"> 419 </span> : typedef typename _Alloc::value_type _Alloc_value_type;
+<span class="lineNum"> 420 </span> : __glibcxx_class_requires(_Tp, _SGIAssignableConcept)
+<span class="lineNum"> 421 </span> : __glibcxx_class_requires2(_Tp, _Alloc_value_type, _SameTypeConcept)
+<span class="lineNum"> 422 </span> :
+<span class="lineNum"> 423 </span> : typedef _List_base&lt;_Tp, _Alloc&gt; _Base;
+<span class="lineNum"> 424 </span> : typedef typename _Base::_Tp_alloc_type _Tp_alloc_type;
+<span class="lineNum"> 425 </span> :
+<span class="lineNum"> 426 </span> : public:
+<span class="lineNum"> 427 </span> : typedef _Tp value_type;
+<span class="lineNum"> 428 </span> : typedef typename _Tp_alloc_type::pointer pointer;
+<span class="lineNum"> 429 </span> : typedef typename _Tp_alloc_type::const_pointer const_pointer;
+<span class="lineNum"> 430 </span> : typedef typename _Tp_alloc_type::reference reference;
+<span class="lineNum"> 431 </span> : typedef typename _Tp_alloc_type::const_reference const_reference;
+<span class="lineNum"> 432 </span> : typedef _List_iterator&lt;_Tp&gt; iterator;
+<span class="lineNum"> 433 </span> : typedef _List_const_iterator&lt;_Tp&gt; const_iterator;
+<span class="lineNum"> 434 </span> : typedef std::reverse_iterator&lt;const_iterator&gt; const_reverse_iterator;
+<span class="lineNum"> 435 </span> : typedef std::reverse_iterator&lt;iterator&gt; reverse_iterator;
+<span class="lineNum"> 436 </span> : typedef size_t size_type;
+<span class="lineNum"> 437 </span> : typedef ptrdiff_t difference_type;
+<span class="lineNum"> 438 </span> : typedef _Alloc allocator_type;
+<span class="lineNum"> 439 </span> :
+<span class="lineNum"> 440 </span> : protected:
+<span class="lineNum"> 441 </span> : // Note that pointers-to-_Node's can be ctor-converted to
+<span class="lineNum"> 442 </span> : // iterator types.
+<span class="lineNum"> 443 </span> : typedef _List_node&lt;_Tp&gt; _Node;
+<span class="lineNum"> 444 </span> :
+<span class="lineNum"> 445 </span> : using _Base::_M_impl;
+<span class="lineNum"> 446 </span> : using _Base::_M_put_node;
+<span class="lineNum"> 447 </span> : using _Base::_M_get_node;
+<span class="lineNum"> 448 </span> : using _Base::_M_get_Tp_allocator;
+<span class="lineNum"> 449 </span> : using _Base::_M_get_Node_allocator;
+<span class="lineNum"> 450 </span> :
+<span class="lineNum"> 451 </span> : /**
+<span class="lineNum"> 452 </span> : * @param x An instance of user data.
+<span class="lineNum"> 453 </span> : *
+<span class="lineNum"> 454 </span> : * Allocates space for a new node and constructs a copy of @a x in it.
+<span class="lineNum"> 455 </span> : */
+<span class="lineNum"> 456 </span> : #ifndef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 457 </span> : _Node*
+<span class="lineNum"> 458 </span><span class="lineCov"> 47 : _M_create_node(const value_type&amp; __x)</span>
+<span class="lineNum"> 459 </span> : {
+<span class="lineNum"> 460 </span><span class="lineCov"> 47 : _Node* __p = this-&gt;_M_get_node();</span>
+<span class="lineNum"> 461 </span> : try
+<span class="lineNum"> 462 </span> : {
+<span class="lineNum"> 463 </span><span class="lineCov"> 47 : _M_get_Tp_allocator().construct(&amp;__p-&gt;_M_data, __x);</span>
+<span class="lineNum"> 464 </span> : }
+<span class="lineNum"> 465 </span><span class="lineNoCov"> 0 : catch(...)</span>
+<span class="lineNum"> 466 </span> : {
+<span class="lineNum"> 467 </span><span class="lineNoCov"> 0 : _M_put_node(__p);</span>
+<span class="lineNum"> 468 </span><span class="lineNoCov"> 0 : __throw_exception_again;</span>
+<span class="lineNum"> 469 </span> : }
+<span class="lineNum"> 470 </span><span class="lineCov"> 47 : return __p;</span>
+<span class="lineNum"> 471 </span> : }
+<span class="lineNum"> 472 </span> : #else
+<span class="lineNum"> 473 </span> : template&lt;typename... _Args&gt;
+<span class="lineNum"> 474 </span> : _Node*
+<span class="lineNum"> 475 </span> : _M_create_node(_Args&amp;&amp;... __args)
+<span class="lineNum"> 476 </span> : {
+<span class="lineNum"> 477 </span> : _Node* __p = this-&gt;_M_get_node();
+<span class="lineNum"> 478 </span> : try
+<span class="lineNum"> 479 </span> : {
+<span class="lineNum"> 480 </span> : _M_get_Tp_allocator().construct(&amp;__p-&gt;_M_data,
+<span class="lineNum"> 481 </span> : std::forward&lt;_Args&gt;(__args)...);
+<span class="lineNum"> 482 </span> : }
+<span class="lineNum"> 483 </span> : catch(...)
+<span class="lineNum"> 484 </span> : {
+<span class="lineNum"> 485 </span> : _M_put_node(__p);
+<span class="lineNum"> 486 </span> : __throw_exception_again;
+<span class="lineNum"> 487 </span> : }
+<span class="lineNum"> 488 </span> : return __p;
+<span class="lineNum"> 489 </span> : }
+<span class="lineNum"> 490 </span> : #endif
+<span class="lineNum"> 491 </span> :
+<span class="lineNum"> 492 </span> : public:
+<span class="lineNum"> 493 </span> : // [23.2.2.1] construct/copy/destroy
+<span class="lineNum"> 494 </span> : // (assign() and get_allocator() are also listed in this section)
+<span class="lineNum"> 495 </span> : /**
+<span class="lineNum"> 496 </span> : * @brief Default constructor creates no elements.
+<span class="lineNum"> 497 </span> : */
+<span class="lineNum"> 498 </span><span class="lineCov"> 19 : list()</span>
+<span class="lineNum"> 499 </span><span class="lineCov"> 19 : : _Base() { }</span>
+<span class="lineNum"> 500 </span> :
+<span class="lineNum"> 501 </span> : /**
+<span class="lineNum"> 502 </span> : * @brief Creates a %list with no elements.
+<span class="lineNum"> 503 </span> : * @param a An allocator object.
+<span class="lineNum"> 504 </span> : */
+<span class="lineNum"> 505 </span> : explicit
+<span class="lineNum"> 506 </span> : list(const allocator_type&amp; __a)
+<span class="lineNum"> 507 </span> : : _Base(__a) { }
+<span class="lineNum"> 508 </span> :
+<span class="lineNum"> 509 </span> : /**
+<span class="lineNum"> 510 </span> : * @brief Creates a %list with copies of an exemplar element.
+<span class="lineNum"> 511 </span> : * @param n The number of elements to initially create.
+<span class="lineNum"> 512 </span> : * @param value An element to copy.
+<span class="lineNum"> 513 </span> : * @param a An allocator object.
+<span class="lineNum"> 514 </span> : *
+<span class="lineNum"> 515 </span> : * This constructor fills the %list with @a n copies of @a value.
+<span class="lineNum"> 516 </span> : */
+<span class="lineNum"> 517 </span> : explicit
+<span class="lineNum"> 518 </span> : list(size_type __n, const value_type&amp; __value = value_type(),
+<span class="lineNum"> 519 </span> : const allocator_type&amp; __a = allocator_type())
+<span class="lineNum"> 520 </span> : : _Base(__a)
+<span class="lineNum"> 521 </span> : { _M_fill_initialize(__n, __value); }
+<span class="lineNum"> 522 </span> :
+<span class="lineNum"> 523 </span> : /**
+<span class="lineNum"> 524 </span> : * @brief %List copy constructor.
+<span class="lineNum"> 525 </span> : * @param x A %list of identical element and allocator types.
+<span class="lineNum"> 526 </span> : *
+<span class="lineNum"> 527 </span> : * The newly-created %list uses a copy of the allocation object used
+<span class="lineNum"> 528 </span> : * by @a x.
+<span class="lineNum"> 529 </span> : */
+<span class="lineNum"> 530 </span> : list(const list&amp; __x)
+<span class="lineNum"> 531 </span> : : _Base(__x._M_get_Node_allocator())
+<span class="lineNum"> 532 </span> : { _M_initialize_dispatch(__x.begin(), __x.end(), __false_type()); }
+<span class="lineNum"> 533 </span> :
+<span class="lineNum"> 534 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 535 </span> : /**
+<span class="lineNum"> 536 </span> : * @brief %List move constructor.
+<span class="lineNum"> 537 </span> : * @param x A %list of identical element and allocator types.
+<span class="lineNum"> 538 </span> : *
+<span class="lineNum"> 539 </span> : * The newly-created %list contains the exact contents of @a x.
+<span class="lineNum"> 540 </span> : * The contents of @a x are a valid, but unspecified %list.
+<span class="lineNum"> 541 </span> : */
+<span class="lineNum"> 542 </span> : list(list&amp;&amp; __x)
+<span class="lineNum"> 543 </span> : : _Base(std::forward&lt;_Base&gt;(__x)) { }
+<span class="lineNum"> 544 </span> : #endif
+<span class="lineNum"> 545 </span> :
+<span class="lineNum"> 546 </span> : /**
+<span class="lineNum"> 547 </span> : * @brief Builds a %list from a range.
+<span class="lineNum"> 548 </span> : * @param first An input iterator.
+<span class="lineNum"> 549 </span> : * @param last An input iterator.
+<span class="lineNum"> 550 </span> : * @param a An allocator object.
+<span class="lineNum"> 551 </span> : *
+<span class="lineNum"> 552 </span> : * Create a %list consisting of copies of the elements from
+<span class="lineNum"> 553 </span> : * [@a first,@a last). This is linear in N (where N is
+<span class="lineNum"> 554 </span> : * distance(@a first,@a last)).
+<span class="lineNum"> 555 </span> : */
+<span class="lineNum"> 556 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 557 </span> : list(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 558 </span> : const allocator_type&amp; __a = allocator_type())
+<span class="lineNum"> 559 </span> : : _Base(__a)
+<span class="lineNum"> 560 </span> : {
+<span class="lineNum"> 561 </span> : // Check whether it's an integral type. If so, it's not an iterator.
+<span class="lineNum"> 562 </span> : typedef typename std::__is_integer&lt;_InputIterator&gt;::__type _Integral;
+<span class="lineNum"> 563 </span> : _M_initialize_dispatch(__first, __last, _Integral());
+<span class="lineNum"> 564 </span> : }
+<span class="lineNum"> 565 </span> :
+<span class="lineNum"> 566 </span> : /**
+<span class="lineNum"> 567 </span> : * No explicit dtor needed as the _Base dtor takes care of
+<span class="lineNum"> 568 </span> : * things. The _Base dtor only erases the elements, and note
+<span class="lineNum"> 569 </span> : * that if the elements themselves are pointers, the pointed-to
+<span class="lineNum"> 570 </span> : * memory is not touched in any way. Managing the pointer is
+<span class="lineNum"> 571 </span> : * the user's responsibility.
+<span class="lineNum"> 572 </span> : */
+<span class="lineNum"> 573 </span> :
+<span class="lineNum"> 574 </span> : /**
+<span class="lineNum"> 575 </span> : * @brief %List assignment operator.
+<span class="lineNum"> 576 </span> : * @param x A %list of identical element and allocator types.
+<span class="lineNum"> 577 </span> : *
+<span class="lineNum"> 578 </span> : * All the elements of @a x are copied, but unlike the copy
+<span class="lineNum"> 579 </span> : * constructor, the allocator object is not copied.
+<span class="lineNum"> 580 </span> : */
+<span class="lineNum"> 581 </span> : list&amp;
+<span class="lineNum"> 582 </span> : operator=(const list&amp; __x);
+<span class="lineNum"> 583 </span> :
+<span class="lineNum"> 584 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 585 </span> : /**
+<span class="lineNum"> 586 </span> : * @brief %List move assignment operator.
+<span class="lineNum"> 587 </span> : * @param x A %list of identical element and allocator types.
+<span class="lineNum"> 588 </span> : *
+<span class="lineNum"> 589 </span> : * The contents of @a x are moved into this %list (without copying).
+<span class="lineNum"> 590 </span> : * @a x is a valid, but unspecified %list
+<span class="lineNum"> 591 </span> : */
+<span class="lineNum"> 592 </span> : list&amp;
+<span class="lineNum"> 593 </span> : operator=(list&amp;&amp; __x)
+<span class="lineNum"> 594 </span> : {
+<span class="lineNum"> 595 </span> : // NB: DR 675.
+<span class="lineNum"> 596 </span> : this-&gt;clear();
+<span class="lineNum"> 597 </span> : this-&gt;swap(__x);
+<span class="lineNum"> 598 </span> : return *this;
+<span class="lineNum"> 599 </span> : }
+<span class="lineNum"> 600 </span> : #endif
+<span class="lineNum"> 601 </span> :
+<span class="lineNum"> 602 </span> : /**
+<span class="lineNum"> 603 </span> : * @brief Assigns a given value to a %list.
+<span class="lineNum"> 604 </span> : * @param n Number of elements to be assigned.
+<span class="lineNum"> 605 </span> : * @param val Value to be assigned.
+<span class="lineNum"> 606 </span> : *
+<span class="lineNum"> 607 </span> : * This function fills a %list with @a n copies of the given
+<span class="lineNum"> 608 </span> : * value. Note that the assignment completely changes the %list
+<span class="lineNum"> 609 </span> : * and that the resulting %list's size is the same as the number
+<span class="lineNum"> 610 </span> : * of elements assigned. Old data may be lost.
+<span class="lineNum"> 611 </span> : */
+<span class="lineNum"> 612 </span> : void
+<span class="lineNum"> 613 </span> : assign(size_type __n, const value_type&amp; __val)
+<span class="lineNum"> 614 </span> : { _M_fill_assign(__n, __val); }
+<span class="lineNum"> 615 </span> :
+<span class="lineNum"> 616 </span> : /**
+<span class="lineNum"> 617 </span> : * @brief Assigns a range to a %list.
+<span class="lineNum"> 618 </span> : * @param first An input iterator.
+<span class="lineNum"> 619 </span> : * @param last An input iterator.
+<span class="lineNum"> 620 </span> : *
+<span class="lineNum"> 621 </span> : * This function fills a %list with copies of the elements in the
+<span class="lineNum"> 622 </span> : * range [@a first,@a last).
+<span class="lineNum"> 623 </span> : *
+<span class="lineNum"> 624 </span> : * Note that the assignment completely changes the %list and
+<span class="lineNum"> 625 </span> : * that the resulting %list's size is the same as the number of
+<span class="lineNum"> 626 </span> : * elements assigned. Old data may be lost.
+<span class="lineNum"> 627 </span> : */
+<span class="lineNum"> 628 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 629 </span> : void
+<span class="lineNum"> 630 </span> : assign(_InputIterator __first, _InputIterator __last)
+<span class="lineNum"> 631 </span> : {
+<span class="lineNum"> 632 </span> : // Check whether it's an integral type. If so, it's not an iterator.
+<span class="lineNum"> 633 </span> : typedef typename std::__is_integer&lt;_InputIterator&gt;::__type _Integral;
+<span class="lineNum"> 634 </span> : _M_assign_dispatch(__first, __last, _Integral());
+<span class="lineNum"> 635 </span> : }
+<span class="lineNum"> 636 </span> :
+<span class="lineNum"> 637 </span> : /// Get a copy of the memory allocation object.
+<span class="lineNum"> 638 </span> : allocator_type
+<span class="lineNum"> 639 </span> : get_allocator() const
+<span class="lineNum"> 640 </span> : { return _Base::get_allocator(); }
+<span class="lineNum"> 641 </span> :
+<span class="lineNum"> 642 </span> : // iterators
+<span class="lineNum"> 643 </span> : /**
+<span class="lineNum"> 644 </span> : * Returns a read/write iterator that points to the first element in the
+<span class="lineNum"> 645 </span> : * %list. Iteration is done in ordinary element order.
+<span class="lineNum"> 646 </span> : */
+<span class="lineNum"> 647 </span> : iterator
+<span class="lineNum"> 648 </span><span class="lineCov"> 27 : begin()</span>
+<span class="lineNum"> 649 </span><span class="lineCov"> 27 : { return iterator(this-&gt;_M_impl._M_node._M_next); }</span>
+<span class="lineNum"> 650 </span> :
+<span class="lineNum"> 651 </span> : /**
+<span class="lineNum"> 652 </span> : * Returns a read-only (constant) iterator that points to the
+<span class="lineNum"> 653 </span> : * first element in the %list. Iteration is done in ordinary
+<span class="lineNum"> 654 </span> : * element order.
+<span class="lineNum"> 655 </span> : */
+<span class="lineNum"> 656 </span> : const_iterator
+<span class="lineNum"> 657 </span><span class="lineCov"> 21 : begin() const</span>
+<span class="lineNum"> 658 </span><span class="lineCov"> 21 : { return const_iterator(this-&gt;_M_impl._M_node._M_next); }</span>
+<span class="lineNum"> 659 </span> :
+<span class="lineNum"> 660 </span> : /**
+<span class="lineNum"> 661 </span> : * Returns a read/write iterator that points one past the last
+<span class="lineNum"> 662 </span> : * element in the %list. Iteration is done in ordinary element
+<span class="lineNum"> 663 </span> : * order.
+<span class="lineNum"> 664 </span> : */
+<span class="lineNum"> 665 </span> : iterator
+<span class="lineNum"> 666 </span><span class="lineCov"> 154 : end()</span>
+<span class="lineNum"> 667 </span><span class="lineCov"> 154 : { return iterator(&amp;this-&gt;_M_impl._M_node); }</span>
+<span class="lineNum"> 668 </span> :
+<span class="lineNum"> 669 </span> : /**
+<span class="lineNum"> 670 </span> : * Returns a read-only (constant) iterator that points one past
+<span class="lineNum"> 671 </span> : * the last element in the %list. Iteration is done in ordinary
+<span class="lineNum"> 672 </span> : * element order.
+<span class="lineNum"> 673 </span> : */
+<span class="lineNum"> 674 </span> : const_iterator
+<span class="lineNum"> 675 </span><span class="lineCov"> 21 : end() const</span>
+<span class="lineNum"> 676 </span><span class="lineCov"> 21 : { return const_iterator(&amp;this-&gt;_M_impl._M_node); }</span>
+<span class="lineNum"> 677 </span> :
+<span class="lineNum"> 678 </span> : /**
+<span class="lineNum"> 679 </span> : * Returns a read/write reverse iterator that points to the last
+<span class="lineNum"> 680 </span> : * element in the %list. Iteration is done in reverse element
+<span class="lineNum"> 681 </span> : * order.
+<span class="lineNum"> 682 </span> : */
+<span class="lineNum"> 683 </span> : reverse_iterator
+<span class="lineNum"> 684 </span><span class="lineCov"> 1 : rbegin()</span>
+<span class="lineNum"> 685 </span><span class="lineCov"> 1 : { return reverse_iterator(end()); }</span>
+<span class="lineNum"> 686 </span> :
+<span class="lineNum"> 687 </span> : /**
+<span class="lineNum"> 688 </span> : * Returns a read-only (constant) reverse iterator that points to
+<span class="lineNum"> 689 </span> : * the last element in the %list. Iteration is done in reverse
+<span class="lineNum"> 690 </span> : * element order.
+<span class="lineNum"> 691 </span> : */
+<span class="lineNum"> 692 </span> : const_reverse_iterator
+<span class="lineNum"> 693 </span> : rbegin() const
+<span class="lineNum"> 694 </span> : { return const_reverse_iterator(end()); }
+<span class="lineNum"> 695 </span> :
+<span class="lineNum"> 696 </span> : /**
+<span class="lineNum"> 697 </span> : * Returns a read/write reverse iterator that points to one
+<span class="lineNum"> 698 </span> : * before the first element in the %list. Iteration is done in
+<span class="lineNum"> 699 </span> : * reverse element order.
+<span class="lineNum"> 700 </span> : */
+<span class="lineNum"> 701 </span> : reverse_iterator
+<span class="lineNum"> 702 </span> : rend()
+<span class="lineNum"> 703 </span> : { return reverse_iterator(begin()); }
+<span class="lineNum"> 704 </span> :
+<span class="lineNum"> 705 </span> : /**
+<span class="lineNum"> 706 </span> : * Returns a read-only (constant) reverse iterator that points to one
+<span class="lineNum"> 707 </span> : * before the first element in the %list. Iteration is done in reverse
+<span class="lineNum"> 708 </span> : * element order.
+<span class="lineNum"> 709 </span> : */
+<span class="lineNum"> 710 </span> : const_reverse_iterator
+<span class="lineNum"> 711 </span> : rend() const
+<span class="lineNum"> 712 </span> : { return const_reverse_iterator(begin()); }
+<span class="lineNum"> 713 </span> :
+<span class="lineNum"> 714 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 715 </span> : /**
+<span class="lineNum"> 716 </span> : * Returns a read-only (constant) iterator that points to the
+<span class="lineNum"> 717 </span> : * first element in the %list. Iteration is done in ordinary
+<span class="lineNum"> 718 </span> : * element order.
+<span class="lineNum"> 719 </span> : */
+<span class="lineNum"> 720 </span> : const_iterator
+<span class="lineNum"> 721 </span> : cbegin() const
+<span class="lineNum"> 722 </span> : { return const_iterator(this-&gt;_M_impl._M_node._M_next); }
+<span class="lineNum"> 723 </span> :
+<span class="lineNum"> 724 </span> : /**
+<span class="lineNum"> 725 </span> : * Returns a read-only (constant) iterator that points one past
+<span class="lineNum"> 726 </span> : * the last element in the %list. Iteration is done in ordinary
+<span class="lineNum"> 727 </span> : * element order.
+<span class="lineNum"> 728 </span> : */
+<span class="lineNum"> 729 </span> : const_iterator
+<span class="lineNum"> 730 </span> : cend() const
+<span class="lineNum"> 731 </span> : { return const_iterator(&amp;this-&gt;_M_impl._M_node); }
+<span class="lineNum"> 732 </span> :
+<span class="lineNum"> 733 </span> : /**
+<span class="lineNum"> 734 </span> : * Returns a read-only (constant) reverse iterator that points to
+<span class="lineNum"> 735 </span> : * the last element in the %list. Iteration is done in reverse
+<span class="lineNum"> 736 </span> : * element order.
+<span class="lineNum"> 737 </span> : */
+<span class="lineNum"> 738 </span> : const_reverse_iterator
+<span class="lineNum"> 739 </span> : crbegin() const
+<span class="lineNum"> 740 </span> : { return const_reverse_iterator(end()); }
+<span class="lineNum"> 741 </span> :
+<span class="lineNum"> 742 </span> : /**
+<span class="lineNum"> 743 </span> : * Returns a read-only (constant) reverse iterator that points to one
+<span class="lineNum"> 744 </span> : * before the first element in the %list. Iteration is done in reverse
+<span class="lineNum"> 745 </span> : * element order.
+<span class="lineNum"> 746 </span> : */
+<span class="lineNum"> 747 </span> : const_reverse_iterator
+<span class="lineNum"> 748 </span> : crend() const
+<span class="lineNum"> 749 </span> : { return const_reverse_iterator(begin()); }
+<span class="lineNum"> 750 </span> : #endif
+<span class="lineNum"> 751 </span> :
+<span class="lineNum"> 752 </span> : // [23.2.2.2] capacity
+<span class="lineNum"> 753 </span> : /**
+<span class="lineNum"> 754 </span> : * Returns true if the %list is empty. (Thus begin() would equal
+<span class="lineNum"> 755 </span> : * end().)
+<span class="lineNum"> 756 </span> : */
+<span class="lineNum"> 757 </span> : bool
+<span class="lineNum"> 758 </span> : empty() const
+<span class="lineNum"> 759 </span> : { return this-&gt;_M_impl._M_node._M_next == &amp;this-&gt;_M_impl._M_node; }
+<span class="lineNum"> 760 </span> :
+<span class="lineNum"> 761 </span> : /** Returns the number of elements in the %list. */
+<span class="lineNum"> 762 </span> : size_type
+<span class="lineNum"> 763 </span><span class="lineCov"> 13 : size() const</span>
+<span class="lineNum"> 764 </span><span class="lineCov"> 13 : { return std::distance(begin(), end()); }</span>
+<span class="lineNum"> 765 </span> :
+<span class="lineNum"> 766 </span> : /** Returns the size() of the largest possible %list. */
+<span class="lineNum"> 767 </span> : size_type
+<span class="lineNum"> 768 </span> : max_size() const
+<span class="lineNum"> 769 </span> : { return _M_get_Tp_allocator().max_size(); }
+<span class="lineNum"> 770 </span> :
+<span class="lineNum"> 771 </span> : /**
+<span class="lineNum"> 772 </span> : * @brief Resizes the %list to the specified number of elements.
+<span class="lineNum"> 773 </span> : * @param new_size Number of elements the %list should contain.
+<span class="lineNum"> 774 </span> : * @param x Data with which new elements should be populated.
+<span class="lineNum"> 775 </span> : *
+<span class="lineNum"> 776 </span> : * This function will %resize the %list to the specified number
+<span class="lineNum"> 777 </span> : * of elements. If the number is smaller than the %list's
+<span class="lineNum"> 778 </span> : * current size the %list is truncated, otherwise the %list is
+<span class="lineNum"> 779 </span> : * extended and new elements are populated with given data.
+<span class="lineNum"> 780 </span> : */
+<span class="lineNum"> 781 </span> : void
+<span class="lineNum"> 782 </span> : resize(size_type __new_size, value_type __x = value_type());
+<span class="lineNum"> 783 </span> :
+<span class="lineNum"> 784 </span> : // element access
+<span class="lineNum"> 785 </span> : /**
+<span class="lineNum"> 786 </span> : * Returns a read/write reference to the data at the first
+<span class="lineNum"> 787 </span> : * element of the %list.
+<span class="lineNum"> 788 </span> : */
+<span class="lineNum"> 789 </span> : reference
+<span class="lineNum"> 790 </span> : front()
+<span class="lineNum"> 791 </span> : { return *begin(); }
+<span class="lineNum"> 792 </span> :
+<span class="lineNum"> 793 </span> : /**
+<span class="lineNum"> 794 </span> : * Returns a read-only (constant) reference to the data at the first
+<span class="lineNum"> 795 </span> : * element of the %list.
+<span class="lineNum"> 796 </span> : */
+<span class="lineNum"> 797 </span> : const_reference
+<span class="lineNum"> 798 </span> : front() const
+<span class="lineNum"> 799 </span> : { return *begin(); }
+<span class="lineNum"> 800 </span> :
+<span class="lineNum"> 801 </span> : /**
+<span class="lineNum"> 802 </span> : * Returns a read/write reference to the data at the last element
+<span class="lineNum"> 803 </span> : * of the %list.
+<span class="lineNum"> 804 </span> : */
+<span class="lineNum"> 805 </span> : reference
+<span class="lineNum"> 806 </span> : back()
+<span class="lineNum"> 807 </span> : {
+<span class="lineNum"> 808 </span> : iterator __tmp = end();
+<span class="lineNum"> 809 </span> : --__tmp;
+<span class="lineNum"> 810 </span> : return *__tmp;
+<span class="lineNum"> 811 </span> : }
+<span class="lineNum"> 812 </span> :
+<span class="lineNum"> 813 </span> : /**
+<span class="lineNum"> 814 </span> : * Returns a read-only (constant) reference to the data at the last
+<span class="lineNum"> 815 </span> : * element of the %list.
+<span class="lineNum"> 816 </span> : */
+<span class="lineNum"> 817 </span> : const_reference
+<span class="lineNum"> 818 </span> : back() const
+<span class="lineNum"> 819 </span> : {
+<span class="lineNum"> 820 </span> : const_iterator __tmp = end();
+<span class="lineNum"> 821 </span> : --__tmp;
+<span class="lineNum"> 822 </span> : return *__tmp;
+<span class="lineNum"> 823 </span> : }
+<span class="lineNum"> 824 </span> :
+<span class="lineNum"> 825 </span> : // [23.2.2.3] modifiers
+<span class="lineNum"> 826 </span> : /**
+<span class="lineNum"> 827 </span> : * @brief Add data to the front of the %list.
+<span class="lineNum"> 828 </span> : * @param x Data to be added.
+<span class="lineNum"> 829 </span> : *
+<span class="lineNum"> 830 </span> : * This is a typical stack operation. The function creates an
+<span class="lineNum"> 831 </span> : * element at the front of the %list and assigns the given data
+<span class="lineNum"> 832 </span> : * to it. Due to the nature of a %list this operation can be
+<span class="lineNum"> 833 </span> : * done in constant time, and does not invalidate iterators and
+<span class="lineNum"> 834 </span> : * references.
+<span class="lineNum"> 835 </span> : */
+<span class="lineNum"> 836 </span> : #ifndef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 837 </span> : void
+<span class="lineNum"> 838 </span> : push_front(const value_type&amp; __x)
+<span class="lineNum"> 839 </span> : { this-&gt;_M_insert(begin(), __x); }
+<span class="lineNum"> 840 </span> : #else
+<span class="lineNum"> 841 </span> : template&lt;typename... _Args&gt;
+<span class="lineNum"> 842 </span> : void
+<span class="lineNum"> 843 </span> : push_front(_Args&amp;&amp;... __args)
+<span class="lineNum"> 844 </span> : { this-&gt;_M_insert(begin(), std::forward&lt;_Args&gt;(__args)...); }
+<span class="lineNum"> 845 </span> : #endif
+<span class="lineNum"> 846 </span> :
+<span class="lineNum"> 847 </span> : /**
+<span class="lineNum"> 848 </span> : * @brief Removes first element.
+<span class="lineNum"> 849 </span> : *
+<span class="lineNum"> 850 </span> : * This is a typical stack operation. It shrinks the %list by
+<span class="lineNum"> 851 </span> : * one. Due to the nature of a %list this operation can be done
+<span class="lineNum"> 852 </span> : * in constant time, and only invalidates iterators/references to
+<span class="lineNum"> 853 </span> : * the element being removed.
+<span class="lineNum"> 854 </span> : *
+<span class="lineNum"> 855 </span> : * Note that no data is returned, and if the first element's data
+<span class="lineNum"> 856 </span> : * is needed, it should be retrieved before pop_front() is
+<span class="lineNum"> 857 </span> : * called.
+<span class="lineNum"> 858 </span> : */
+<span class="lineNum"> 859 </span> : void
+<span class="lineNum"> 860 </span> : pop_front()
+<span class="lineNum"> 861 </span> : { this-&gt;_M_erase(begin()); }
+<span class="lineNum"> 862 </span> :
+<span class="lineNum"> 863 </span> : /**
+<span class="lineNum"> 864 </span> : * @brief Add data to the end of the %list.
+<span class="lineNum"> 865 </span> : * @param x Data to be added.
+<span class="lineNum"> 866 </span> : *
+<span class="lineNum"> 867 </span> : * This is a typical stack operation. The function creates an
+<span class="lineNum"> 868 </span> : * element at the end of the %list and assigns the given data to
+<span class="lineNum"> 869 </span> : * it. Due to the nature of a %list this operation can be done
+<span class="lineNum"> 870 </span> : * in constant time, and does not invalidate iterators and
+<span class="lineNum"> 871 </span> : * references.
+<span class="lineNum"> 872 </span> : */
+<span class="lineNum"> 873 </span> : #ifndef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 874 </span> : void
+<span class="lineNum"> 875 </span><span class="lineCov"> 47 : push_back(const value_type&amp; __x)</span>
+<span class="lineNum"> 876 </span><span class="lineCov"> 47 : { this-&gt;_M_insert(end(), __x); }</span>
+<span class="lineNum"> 877 </span> : #else
+<span class="lineNum"> 878 </span> : template&lt;typename... _Args&gt;
+<span class="lineNum"> 879 </span> : void
+<span class="lineNum"> 880 </span> : push_back(_Args&amp;&amp;... __args)
+<span class="lineNum"> 881 </span> : { this-&gt;_M_insert(end(), std::forward&lt;_Args&gt;(__args)...); }
+<span class="lineNum"> 882 </span> : #endif
+<span class="lineNum"> 883 </span> :
+<span class="lineNum"> 884 </span> : /**
+<span class="lineNum"> 885 </span> : * @brief Removes last element.
+<span class="lineNum"> 886 </span> : *
+<span class="lineNum"> 887 </span> : * This is a typical stack operation. It shrinks the %list by
+<span class="lineNum"> 888 </span> : * one. Due to the nature of a %list this operation can be done
+<span class="lineNum"> 889 </span> : * in constant time, and only invalidates iterators/references to
+<span class="lineNum"> 890 </span> : * the element being removed.
+<span class="lineNum"> 891 </span> : *
+<span class="lineNum"> 892 </span> : * Note that no data is returned, and if the last element's data
+<span class="lineNum"> 893 </span> : * is needed, it should be retrieved before pop_back() is called.
+<span class="lineNum"> 894 </span> : */
+<span class="lineNum"> 895 </span> : void
+<span class="lineNum"> 896 </span> : pop_back()
+<span class="lineNum"> 897 </span> : { this-&gt;_M_erase(iterator(this-&gt;_M_impl._M_node._M_prev)); }
+<span class="lineNum"> 898 </span> :
+<span class="lineNum"> 899 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 900 </span> : /**
+<span class="lineNum"> 901 </span> : * @brief Constructs object in %list before specified iterator.
+<span class="lineNum"> 902 </span> : * @param position A const_iterator into the %list.
+<span class="lineNum"> 903 </span> : * @param args Arguments.
+<span class="lineNum"> 904 </span> : * @return An iterator that points to the inserted data.
+<span class="lineNum"> 905 </span> : *
+<span class="lineNum"> 906 </span> : * This function will insert an object of type T constructed
+<span class="lineNum"> 907 </span> : * with T(std::forward&lt;Args&gt;(args)...) before the specified
+<span class="lineNum"> 908 </span> : * location. Due to the nature of a %list this operation can
+<span class="lineNum"> 909 </span> : * be done in constant time, and does not invalidate iterators
+<span class="lineNum"> 910 </span> : * and references.
+<span class="lineNum"> 911 </span> : */
+<span class="lineNum"> 912 </span> : template&lt;typename... _Args&gt;
+<span class="lineNum"> 913 </span> : iterator
+<span class="lineNum"> 914 </span> : emplace(iterator __position, _Args&amp;&amp;... __args);
+<span class="lineNum"> 915 </span> : #endif
+<span class="lineNum"> 916 </span> :
+<span class="lineNum"> 917 </span> : /**
+<span class="lineNum"> 918 </span> : * @brief Inserts given value into %list before specified iterator.
+<span class="lineNum"> 919 </span> : * @param position An iterator into the %list.
+<span class="lineNum"> 920 </span> : * @param x Data to be inserted.
+<span class="lineNum"> 921 </span> : * @return An iterator that points to the inserted data.
+<span class="lineNum"> 922 </span> : *
+<span class="lineNum"> 923 </span> : * This function will insert a copy of the given value before
+<span class="lineNum"> 924 </span> : * the specified location. Due to the nature of a %list this
+<span class="lineNum"> 925 </span> : * operation can be done in constant time, and does not
+<span class="lineNum"> 926 </span> : * invalidate iterators and references.
+<span class="lineNum"> 927 </span> : */
+<span class="lineNum"> 928 </span> : iterator
+<span class="lineNum"> 929 </span> : insert(iterator __position, const value_type&amp; __x);
+<span class="lineNum"> 930 </span> :
+<span class="lineNum"> 931 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 932 </span> : /**
+<span class="lineNum"> 933 </span> : * @brief Inserts given rvalue into %list before specified iterator.
+<span class="lineNum"> 934 </span> : * @param position An iterator into the %list.
+<span class="lineNum"> 935 </span> : * @param x Data to be inserted.
+<span class="lineNum"> 936 </span> : * @return An iterator that points to the inserted data.
+<span class="lineNum"> 937 </span> : *
+<span class="lineNum"> 938 </span> : * This function will insert a copy of the given rvalue before
+<span class="lineNum"> 939 </span> : * the specified location. Due to the nature of a %list this
+<span class="lineNum"> 940 </span> : * operation can be done in constant time, and does not
+<span class="lineNum"> 941 </span> : * invalidate iterators and references.
+<span class="lineNum"> 942 </span> : */
+<span class="lineNum"> 943 </span> : iterator
+<span class="lineNum"> 944 </span> : insert(iterator __position, value_type&amp;&amp; __x)
+<span class="lineNum"> 945 </span> : { return emplace(__position, std::move(__x)); }
+<span class="lineNum"> 946 </span> : #endif
+<span class="lineNum"> 947 </span> :
+<span class="lineNum"> 948 </span> : /**
+<span class="lineNum"> 949 </span> : * @brief Inserts a number of copies of given data into the %list.
+<span class="lineNum"> 950 </span> : * @param position An iterator into the %list.
+<span class="lineNum"> 951 </span> : * @param n Number of elements to be inserted.
+<span class="lineNum"> 952 </span> : * @param x Data to be inserted.
+<span class="lineNum"> 953 </span> : *
+<span class="lineNum"> 954 </span> : * This function will insert a specified number of copies of the
+<span class="lineNum"> 955 </span> : * given data before the location specified by @a position.
+<span class="lineNum"> 956 </span> : *
+<span class="lineNum"> 957 </span> : * This operation is linear in the number of elements inserted and
+<span class="lineNum"> 958 </span> : * does not invalidate iterators and references.
+<span class="lineNum"> 959 </span> : */
+<span class="lineNum"> 960 </span> : void
+<span class="lineNum"> 961 </span> : insert(iterator __position, size_type __n, const value_type&amp; __x)
+<span class="lineNum"> 962 </span> : {
+<span class="lineNum"> 963 </span> : list __tmp(__n, __x, _M_get_Node_allocator());
+<span class="lineNum"> 964 </span> : splice(__position, __tmp);
+<span class="lineNum"> 965 </span> : }
+<span class="lineNum"> 966 </span> :
+<span class="lineNum"> 967 </span> : /**
+<span class="lineNum"> 968 </span> : * @brief Inserts a range into the %list.
+<span class="lineNum"> 969 </span> : * @param position An iterator into the %list.
+<span class="lineNum"> 970 </span> : * @param first An input iterator.
+<span class="lineNum"> 971 </span> : * @param last An input iterator.
+<span class="lineNum"> 972 </span> : *
+<span class="lineNum"> 973 </span> : * This function will insert copies of the data in the range [@a
+<span class="lineNum"> 974 </span> : * first,@a last) into the %list before the location specified by
+<span class="lineNum"> 975 </span> : * @a position.
+<span class="lineNum"> 976 </span> : *
+<span class="lineNum"> 977 </span> : * This operation is linear in the number of elements inserted and
+<span class="lineNum"> 978 </span> : * does not invalidate iterators and references.
+<span class="lineNum"> 979 </span> : */
+<span class="lineNum"> 980 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 981 </span> : void
+<span class="lineNum"> 982 </span> : insert(iterator __position, _InputIterator __first,
+<span class="lineNum"> 983 </span> : _InputIterator __last)
+<span class="lineNum"> 984 </span> : {
+<span class="lineNum"> 985 </span> : list __tmp(__first, __last, _M_get_Node_allocator());
+<span class="lineNum"> 986 </span> : splice(__position, __tmp);
+<span class="lineNum"> 987 </span> : }
+<span class="lineNum"> 988 </span> :
+<span class="lineNum"> 989 </span> : /**
+<span class="lineNum"> 990 </span> : * @brief Remove element at given position.
+<span class="lineNum"> 991 </span> : * @param position Iterator pointing to element to be erased.
+<span class="lineNum"> 992 </span> : * @return An iterator pointing to the next element (or end()).
+<span class="lineNum"> 993 </span> : *
+<span class="lineNum"> 994 </span> : * This function will erase the element at the given position and thus
+<span class="lineNum"> 995 </span> : * shorten the %list by one.
+<span class="lineNum"> 996 </span> : *
+<span class="lineNum"> 997 </span> : * Due to the nature of a %list this operation can be done in
+<span class="lineNum"> 998 </span> : * constant time, and only invalidates iterators/references to
+<span class="lineNum"> 999 </span> : * the element being removed. The user is also cautioned that
+<span class="lineNum"> 1000 </span> : * this function only erases the element, and that if the element
+<span class="lineNum"> 1001 </span> : * is itself a pointer, the pointed-to memory is not touched in
+<span class="lineNum"> 1002 </span> : * any way. Managing the pointer is the user's responsibility.
+<span class="lineNum"> 1003 </span> : */
+<span class="lineNum"> 1004 </span> : iterator
+<span class="lineNum"> 1005 </span> : erase(iterator __position);
+<span class="lineNum"> 1006 </span> :
+<span class="lineNum"> 1007 </span> : /**
+<span class="lineNum"> 1008 </span> : * @brief Remove a range of elements.
+<span class="lineNum"> 1009 </span> : * @param first Iterator pointing to the first element to be erased.
+<span class="lineNum"> 1010 </span> : * @param last Iterator pointing to one past the last element to be
+<span class="lineNum"> 1011 </span> : * erased.
+<span class="lineNum"> 1012 </span> : * @return An iterator pointing to the element pointed to by @a last
+<span class="lineNum"> 1013 </span> : * prior to erasing (or end()).
+<span class="lineNum"> 1014 </span> : *
+<span class="lineNum"> 1015 </span> : * This function will erase the elements in the range @a
+<span class="lineNum"> 1016 </span> : * [first,last) and shorten the %list accordingly.
+<span class="lineNum"> 1017 </span> : *
+<span class="lineNum"> 1018 </span> : * This operation is linear time in the size of the range and only
+<span class="lineNum"> 1019 </span> : * invalidates iterators/references to the element being removed.
+<span class="lineNum"> 1020 </span> : * The user is also cautioned that this function only erases the
+<span class="lineNum"> 1021 </span> : * elements, and that if the elements themselves are pointers, the
+<span class="lineNum"> 1022 </span> : * pointed-to memory is not touched in any way. Managing the pointer
+<span class="lineNum"> 1023 </span> : * is the user's responsibility.
+<span class="lineNum"> 1024 </span> : */
+<span class="lineNum"> 1025 </span> : iterator
+<span class="lineNum"> 1026 </span> : erase(iterator __first, iterator __last)
+<span class="lineNum"> 1027 </span> : {
+<span class="lineNum"> 1028 </span> : while (__first != __last)
+<span class="lineNum"> 1029 </span> : __first = erase(__first);
+<span class="lineNum"> 1030 </span> : return __last;
+<span class="lineNum"> 1031 </span> : }
+<span class="lineNum"> 1032 </span> :
+<span class="lineNum"> 1033 </span> : /**
+<span class="lineNum"> 1034 </span> : * @brief Swaps data with another %list.
+<span class="lineNum"> 1035 </span> : * @param x A %list of the same element and allocator types.
+<span class="lineNum"> 1036 </span> : *
+<span class="lineNum"> 1037 </span> : * This exchanges the elements between two lists in constant
+<span class="lineNum"> 1038 </span> : * time. Note that the global std::swap() function is
+<span class="lineNum"> 1039 </span> : * specialized such that std::swap(l1,l2) will feed to this
+<span class="lineNum"> 1040 </span> : * function.
+<span class="lineNum"> 1041 </span> : */
+<span class="lineNum"> 1042 </span> : void
+<span class="lineNum"> 1043 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 1044 </span> : swap(list&amp;&amp; __x)
+<span class="lineNum"> 1045 </span> : #else
+<span class="lineNum"> 1046 </span> : swap(list&amp; __x)
+<span class="lineNum"> 1047 </span> : #endif
+<span class="lineNum"> 1048 </span> : {
+<span class="lineNum"> 1049 </span> : _List_node_base::swap(this-&gt;_M_impl._M_node, __x._M_impl._M_node);
+<span class="lineNum"> 1050 </span> :
+<span class="lineNum"> 1051 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 1052 </span> : // 431. Swapping containers with unequal allocators.
+<span class="lineNum"> 1053 </span> : std::__alloc_swap&lt;typename _Base::_Node_alloc_type&gt;::
+<span class="lineNum"> 1054 </span> : _S_do_it(_M_get_Node_allocator(), __x._M_get_Node_allocator());
+<span class="lineNum"> 1055 </span> : }
+<span class="lineNum"> 1056 </span> :
+<span class="lineNum"> 1057 </span> : /**
+<span class="lineNum"> 1058 </span> : * Erases all the elements. Note that this function only erases
+<span class="lineNum"> 1059 </span> : * the elements, and that if the elements themselves are
+<span class="lineNum"> 1060 </span> : * pointers, the pointed-to memory is not touched in any way.
+<span class="lineNum"> 1061 </span> : * Managing the pointer is the user's responsibility.
+<span class="lineNum"> 1062 </span> : */
+<span class="lineNum"> 1063 </span> : void
+<span class="lineNum"> 1064 </span> : clear()
+<span class="lineNum"> 1065 </span> : {
+<span class="lineNum"> 1066 </span> : _Base::_M_clear();
+<span class="lineNum"> 1067 </span> : _Base::_M_init();
+<span class="lineNum"> 1068 </span> : }
+<span class="lineNum"> 1069 </span> :
+<span class="lineNum"> 1070 </span> : // [23.2.2.4] list operations
+<span class="lineNum"> 1071 </span> : /**
+<span class="lineNum"> 1072 </span> : * @brief Insert contents of another %list.
+<span class="lineNum"> 1073 </span> : * @param position Iterator referencing the element to insert before.
+<span class="lineNum"> 1074 </span> : * @param x Source list.
+<span class="lineNum"> 1075 </span> : *
+<span class="lineNum"> 1076 </span> : * The elements of @a x are inserted in constant time in front of
+<span class="lineNum"> 1077 </span> : * the element referenced by @a position. @a x becomes an empty
+<span class="lineNum"> 1078 </span> : * list.
+<span class="lineNum"> 1079 </span> : *
+<span class="lineNum"> 1080 </span> : * Requires this != @a x.
+<span class="lineNum"> 1081 </span> : */
+<span class="lineNum"> 1082 </span> : void
+<span class="lineNum"> 1083 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 1084 </span> : splice(iterator __position, list&amp;&amp; __x)
+<span class="lineNum"> 1085 </span> : #else
+<span class="lineNum"> 1086 </span> : splice(iterator __position, list&amp; __x)
+<span class="lineNum"> 1087 </span> : #endif
+<span class="lineNum"> 1088 </span> : {
+<span class="lineNum"> 1089 </span> : if (!__x.empty())
+<span class="lineNum"> 1090 </span> : {
+<span class="lineNum"> 1091 </span> : _M_check_equal_allocators(__x);
+<span class="lineNum"> 1092 </span> :
+<span class="lineNum"> 1093 </span> : this-&gt;_M_transfer(__position, __x.begin(), __x.end());
+<span class="lineNum"> 1094 </span> : }
+<span class="lineNum"> 1095 </span> : }
+<span class="lineNum"> 1096 </span> :
+<span class="lineNum"> 1097 </span> : /**
+<span class="lineNum"> 1098 </span> : * @brief Insert element from another %list.
+<span class="lineNum"> 1099 </span> : * @param position Iterator referencing the element to insert before.
+<span class="lineNum"> 1100 </span> : * @param x Source list.
+<span class="lineNum"> 1101 </span> : * @param i Iterator referencing the element to move.
+<span class="lineNum"> 1102 </span> : *
+<span class="lineNum"> 1103 </span> : * Removes the element in list @a x referenced by @a i and
+<span class="lineNum"> 1104 </span> : * inserts it into the current list before @a position.
+<span class="lineNum"> 1105 </span> : */
+<span class="lineNum"> 1106 </span> : void
+<span class="lineNum"> 1107 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 1108 </span> : splice(iterator __position, list&amp;&amp; __x, iterator __i)
+<span class="lineNum"> 1109 </span> : #else
+<span class="lineNum"> 1110 </span> : splice(iterator __position, list&amp; __x, iterator __i)
+<span class="lineNum"> 1111 </span> : #endif
+<span class="lineNum"> 1112 </span> : {
+<span class="lineNum"> 1113 </span> : iterator __j = __i;
+<span class="lineNum"> 1114 </span> : ++__j;
+<span class="lineNum"> 1115 </span> : if (__position == __i || __position == __j)
+<span class="lineNum"> 1116 </span> : return;
+<span class="lineNum"> 1117 </span> :
+<span class="lineNum"> 1118 </span> : if (this != &amp;__x)
+<span class="lineNum"> 1119 </span> : _M_check_equal_allocators(__x);
+<span class="lineNum"> 1120 </span> :
+<span class="lineNum"> 1121 </span> : this-&gt;_M_transfer(__position, __i, __j);
+<span class="lineNum"> 1122 </span> : }
+<span class="lineNum"> 1123 </span> :
+<span class="lineNum"> 1124 </span> : /**
+<span class="lineNum"> 1125 </span> : * @brief Insert range from another %list.
+<span class="lineNum"> 1126 </span> : * @param position Iterator referencing the element to insert before.
+<span class="lineNum"> 1127 </span> : * @param x Source list.
+<span class="lineNum"> 1128 </span> : * @param first Iterator referencing the start of range in x.
+<span class="lineNum"> 1129 </span> : * @param last Iterator referencing the end of range in x.
+<span class="lineNum"> 1130 </span> : *
+<span class="lineNum"> 1131 </span> : * Removes elements in the range [first,last) and inserts them
+<span class="lineNum"> 1132 </span> : * before @a position in constant time.
+<span class="lineNum"> 1133 </span> : *
+<span class="lineNum"> 1134 </span> : * Undefined if @a position is in [first,last).
+<span class="lineNum"> 1135 </span> : */
+<span class="lineNum"> 1136 </span> : void
+<span class="lineNum"> 1137 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 1138 </span> : splice(iterator __position, list&amp;&amp; __x, iterator __first,
+<span class="lineNum"> 1139 </span> : iterator __last)
+<span class="lineNum"> 1140 </span> : #else
+<span class="lineNum"> 1141 </span> : splice(iterator __position, list&amp; __x, iterator __first,
+<span class="lineNum"> 1142 </span> : iterator __last)
+<span class="lineNum"> 1143 </span> : #endif
+<span class="lineNum"> 1144 </span> : {
+<span class="lineNum"> 1145 </span> : if (__first != __last)
+<span class="lineNum"> 1146 </span> : {
+<span class="lineNum"> 1147 </span> : if (this != &amp;__x)
+<span class="lineNum"> 1148 </span> : _M_check_equal_allocators(__x);
+<span class="lineNum"> 1149 </span> :
+<span class="lineNum"> 1150 </span> : this-&gt;_M_transfer(__position, __first, __last);
+<span class="lineNum"> 1151 </span> : }
+<span class="lineNum"> 1152 </span> : }
+<span class="lineNum"> 1153 </span> :
+<span class="lineNum"> 1154 </span> : /**
+<span class="lineNum"> 1155 </span> : * @brief Remove all elements equal to value.
+<span class="lineNum"> 1156 </span> : * @param value The value to remove.
+<span class="lineNum"> 1157 </span> : *
+<span class="lineNum"> 1158 </span> : * Removes every element in the list equal to @a value.
+<span class="lineNum"> 1159 </span> : * Remaining elements stay in list order. Note that this
+<span class="lineNum"> 1160 </span> : * function only erases the elements, and that if the elements
+<span class="lineNum"> 1161 </span> : * themselves are pointers, the pointed-to memory is not
+<span class="lineNum"> 1162 </span> : * touched in any way. Managing the pointer is the user's
+<span class="lineNum"> 1163 </span> : * responsibility.
+<span class="lineNum"> 1164 </span> : */
+<span class="lineNum"> 1165 </span> : void
+<span class="lineNum"> 1166 </span> : remove(const _Tp&amp; __value);
+<span class="lineNum"> 1167 </span> :
+<span class="lineNum"> 1168 </span> : /**
+<span class="lineNum"> 1169 </span> : * @brief Remove all elements satisfying a predicate.
+<span class="lineNum"> 1170 </span> : * @param Predicate Unary predicate function or object.
+<span class="lineNum"> 1171 </span> : *
+<span class="lineNum"> 1172 </span> : * Removes every element in the list for which the predicate
+<span class="lineNum"> 1173 </span> : * returns true. Remaining elements stay in list order. Note
+<span class="lineNum"> 1174 </span> : * that this function only erases the elements, and that if the
+<span class="lineNum"> 1175 </span> : * elements themselves are pointers, the pointed-to memory is
+<span class="lineNum"> 1176 </span> : * not touched in any way. Managing the pointer is the user's
+<span class="lineNum"> 1177 </span> : * responsibility.
+<span class="lineNum"> 1178 </span> : */
+<span class="lineNum"> 1179 </span> : template&lt;typename _Predicate&gt;
+<span class="lineNum"> 1180 </span> : void
+<span class="lineNum"> 1181 </span> : remove_if(_Predicate);
+<span class="lineNum"> 1182 </span> :
+<span class="lineNum"> 1183 </span> : /**
+<span class="lineNum"> 1184 </span> : * @brief Remove consecutive duplicate elements.
+<span class="lineNum"> 1185 </span> : *
+<span class="lineNum"> 1186 </span> : * For each consecutive set of elements with the same value,
+<span class="lineNum"> 1187 </span> : * remove all but the first one. Remaining elements stay in
+<span class="lineNum"> 1188 </span> : * list order. Note that this function only erases the
+<span class="lineNum"> 1189 </span> : * elements, and that if the elements themselves are pointers,
+<span class="lineNum"> 1190 </span> : * the pointed-to memory is not touched in any way. Managing
+<span class="lineNum"> 1191 </span> : * the pointer is the user's responsibility.
+<span class="lineNum"> 1192 </span> : */
+<span class="lineNum"> 1193 </span> : void
+<span class="lineNum"> 1194 </span> : unique();
+<span class="lineNum"> 1195 </span> :
+<span class="lineNum"> 1196 </span> : /**
+<span class="lineNum"> 1197 </span> : * @brief Remove consecutive elements satisfying a predicate.
+<span class="lineNum"> 1198 </span> : * @param BinaryPredicate Binary predicate function or object.
+<span class="lineNum"> 1199 </span> : *
+<span class="lineNum"> 1200 </span> : * For each consecutive set of elements [first,last) that
+<span class="lineNum"> 1201 </span> : * satisfy predicate(first,i) where i is an iterator in
+<span class="lineNum"> 1202 </span> : * [first,last), remove all but the first one. Remaining
+<span class="lineNum"> 1203 </span> : * elements stay in list order. Note that this function only
+<span class="lineNum"> 1204 </span> : * erases the elements, and that if the elements themselves are
+<span class="lineNum"> 1205 </span> : * pointers, the pointed-to memory is not touched in any way.
+<span class="lineNum"> 1206 </span> : * Managing the pointer is the user's responsibility.
+<span class="lineNum"> 1207 </span> : */
+<span class="lineNum"> 1208 </span> : template&lt;typename _BinaryPredicate&gt;
+<span class="lineNum"> 1209 </span> : void
+<span class="lineNum"> 1210 </span> : unique(_BinaryPredicate);
+<span class="lineNum"> 1211 </span> :
+<span class="lineNum"> 1212 </span> : /**
+<span class="lineNum"> 1213 </span> : * @brief Merge sorted lists.
+<span class="lineNum"> 1214 </span> : * @param x Sorted list to merge.
+<span class="lineNum"> 1215 </span> : *
+<span class="lineNum"> 1216 </span> : * Assumes that both @a x and this list are sorted according to
+<span class="lineNum"> 1217 </span> : * operator&lt;(). Merges elements of @a x into this list in
+<span class="lineNum"> 1218 </span> : * sorted order, leaving @a x empty when complete. Elements in
+<span class="lineNum"> 1219 </span> : * this list precede elements in @a x that are equal.
+<span class="lineNum"> 1220 </span> : */
+<span class="lineNum"> 1221 </span> : void
+<span class="lineNum"> 1222 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 1223 </span> : merge(list&amp;&amp; __x);
+<span class="lineNum"> 1224 </span> : #else
+<span class="lineNum"> 1225 </span> : merge(list&amp; __x);
+<span class="lineNum"> 1226 </span> : #endif
+<span class="lineNum"> 1227 </span> :
+<span class="lineNum"> 1228 </span> : /**
+<span class="lineNum"> 1229 </span> : * @brief Merge sorted lists according to comparison function.
+<span class="lineNum"> 1230 </span> : * @param x Sorted list to merge.
+<span class="lineNum"> 1231 </span> : * @param StrictWeakOrdering Comparison function defining
+<span class="lineNum"> 1232 </span> : * sort order.
+<span class="lineNum"> 1233 </span> : *
+<span class="lineNum"> 1234 </span> : * Assumes that both @a x and this list are sorted according to
+<span class="lineNum"> 1235 </span> : * StrictWeakOrdering. Merges elements of @a x into this list
+<span class="lineNum"> 1236 </span> : * in sorted order, leaving @a x empty when complete. Elements
+<span class="lineNum"> 1237 </span> : * in this list precede elements in @a x that are equivalent
+<span class="lineNum"> 1238 </span> : * according to StrictWeakOrdering().
+<span class="lineNum"> 1239 </span> : */
+<span class="lineNum"> 1240 </span> : template&lt;typename _StrictWeakOrdering&gt;
+<span class="lineNum"> 1241 </span> : void
+<span class="lineNum"> 1242 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 1243 </span> : merge(list&amp;&amp;, _StrictWeakOrdering);
+<span class="lineNum"> 1244 </span> : #else
+<span class="lineNum"> 1245 </span> : merge(list&amp;, _StrictWeakOrdering);
+<span class="lineNum"> 1246 </span> : #endif
+<span class="lineNum"> 1247 </span> :
+<span class="lineNum"> 1248 </span> : /**
+<span class="lineNum"> 1249 </span> : * @brief Reverse the elements in list.
+<span class="lineNum"> 1250 </span> : *
+<span class="lineNum"> 1251 </span> : * Reverse the order of elements in the list in linear time.
+<span class="lineNum"> 1252 </span> : */
+<span class="lineNum"> 1253 </span> : void
+<span class="lineNum"> 1254 </span> : reverse()
+<span class="lineNum"> 1255 </span> : { this-&gt;_M_impl._M_node.reverse(); }
+<span class="lineNum"> 1256 </span> :
+<span class="lineNum"> 1257 </span> : /**
+<span class="lineNum"> 1258 </span> : * @brief Sort the elements.
+<span class="lineNum"> 1259 </span> : *
+<span class="lineNum"> 1260 </span> : * Sorts the elements of this list in NlogN time. Equivalent
+<span class="lineNum"> 1261 </span> : * elements remain in list order.
+<span class="lineNum"> 1262 </span> : */
+<span class="lineNum"> 1263 </span> : void
+<span class="lineNum"> 1264 </span> : sort();
+<span class="lineNum"> 1265 </span> :
+<span class="lineNum"> 1266 </span> : /**
+<span class="lineNum"> 1267 </span> : * @brief Sort the elements according to comparison function.
+<span class="lineNum"> 1268 </span> : *
+<span class="lineNum"> 1269 </span> : * Sorts the elements of this list in NlogN time. Equivalent
+<span class="lineNum"> 1270 </span> : * elements remain in list order.
+<span class="lineNum"> 1271 </span> : */
+<span class="lineNum"> 1272 </span> : template&lt;typename _StrictWeakOrdering&gt;
+<span class="lineNum"> 1273 </span> : void
+<span class="lineNum"> 1274 </span> : sort(_StrictWeakOrdering);
+<span class="lineNum"> 1275 </span> :
+<span class="lineNum"> 1276 </span> : protected:
+<span class="lineNum"> 1277 </span> : // Internal constructor functions follow.
+<span class="lineNum"> 1278 </span> :
+<span class="lineNum"> 1279 </span> : // Called by the range constructor to implement [23.1.1]/9
+<span class="lineNum"> 1280 </span> :
+<span class="lineNum"> 1281 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 1282 </span> : // 438. Ambiguity in the &quot;do the right thing&quot; clause
+<span class="lineNum"> 1283 </span> : template&lt;typename _Integer&gt;
+<span class="lineNum"> 1284 </span> : void
+<span class="lineNum"> 1285 </span> : _M_initialize_dispatch(_Integer __n, _Integer __x, __true_type)
+<span class="lineNum"> 1286 </span> : { _M_fill_initialize(static_cast&lt;size_type&gt;(__n), __x); }
+<span class="lineNum"> 1287 </span> :
+<span class="lineNum"> 1288 </span> : // Called by the range constructor to implement [23.1.1]/9
+<span class="lineNum"> 1289 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 1290 </span> : void
+<span class="lineNum"> 1291 </span> : _M_initialize_dispatch(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 1292 </span> : __false_type)
+<span class="lineNum"> 1293 </span> : {
+<span class="lineNum"> 1294 </span> : for (; __first != __last; ++__first)
+<span class="lineNum"> 1295 </span> : push_back(*__first);
+<span class="lineNum"> 1296 </span> : }
+<span class="lineNum"> 1297 </span> :
+<span class="lineNum"> 1298 </span> : // Called by list(n,v,a), and the range constructor when it turns out
+<span class="lineNum"> 1299 </span> : // to be the same thing.
+<span class="lineNum"> 1300 </span> : void
+<span class="lineNum"> 1301 </span> : _M_fill_initialize(size_type __n, const value_type&amp; __x)
+<span class="lineNum"> 1302 </span> : {
+<span class="lineNum"> 1303 </span> : for (; __n &gt; 0; --__n)
+<span class="lineNum"> 1304 </span> : push_back(__x);
+<span class="lineNum"> 1305 </span> : }
+<span class="lineNum"> 1306 </span> :
+<span class="lineNum"> 1307 </span> :
+<span class="lineNum"> 1308 </span> : // Internal assign functions follow.
+<span class="lineNum"> 1309 </span> :
+<span class="lineNum"> 1310 </span> : // Called by the range assign to implement [23.1.1]/9
+<span class="lineNum"> 1311 </span> :
+<span class="lineNum"> 1312 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 1313 </span> : // 438. Ambiguity in the &quot;do the right thing&quot; clause
+<span class="lineNum"> 1314 </span> : template&lt;typename _Integer&gt;
+<span class="lineNum"> 1315 </span> : void
+<span class="lineNum"> 1316 </span> : _M_assign_dispatch(_Integer __n, _Integer __val, __true_type)
+<span class="lineNum"> 1317 </span> : { _M_fill_assign(__n, __val); }
+<span class="lineNum"> 1318 </span> :
+<span class="lineNum"> 1319 </span> : // Called by the range assign to implement [23.1.1]/9
+<span class="lineNum"> 1320 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 1321 </span> : void
+<span class="lineNum"> 1322 </span> : _M_assign_dispatch(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 1323 </span> : __false_type);
+<span class="lineNum"> 1324 </span> :
+<span class="lineNum"> 1325 </span> : // Called by assign(n,t), and the range assign when it turns out
+<span class="lineNum"> 1326 </span> : // to be the same thing.
+<span class="lineNum"> 1327 </span> : void
+<span class="lineNum"> 1328 </span> : _M_fill_assign(size_type __n, const value_type&amp; __val);
+<span class="lineNum"> 1329 </span> :
+<span class="lineNum"> 1330 </span> :
+<span class="lineNum"> 1331 </span> : // Moves the elements from [first,last) before position.
+<span class="lineNum"> 1332 </span> : void
+<span class="lineNum"> 1333 </span> : _M_transfer(iterator __position, iterator __first, iterator __last)
+<span class="lineNum"> 1334 </span> : { __position._M_node-&gt;transfer(__first._M_node, __last._M_node); }
+<span class="lineNum"> 1335 </span> :
+<span class="lineNum"> 1336 </span> : // Inserts new element at position given and with value given.
+<span class="lineNum"> 1337 </span> : #ifndef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 1338 </span> : void
+<span class="lineNum"> 1339 </span><span class="lineCov"> 47 : _M_insert(iterator __position, const value_type&amp; __x)</span>
+<span class="lineNum"> 1340 </span> : {
+<span class="lineNum"> 1341 </span><span class="lineCov"> 47 : _Node* __tmp = _M_create_node(__x);</span>
+<span class="lineNum"> 1342 </span><span class="lineCov"> 47 : __tmp-&gt;hook(__position._M_node);</span>
+<span class="lineNum"> 1343 </span><span class="lineCov"> 47 : }</span>
+<span class="lineNum"> 1344 </span> : #else
+<span class="lineNum"> 1345 </span> : template&lt;typename... _Args&gt;
+<span class="lineNum"> 1346 </span> : void
+<span class="lineNum"> 1347 </span> : _M_insert(iterator __position, _Args&amp;&amp;... __args)
+<span class="lineNum"> 1348 </span> : {
+<span class="lineNum"> 1349 </span> : _Node* __tmp = _M_create_node(std::forward&lt;_Args&gt;(__args)...);
+<span class="lineNum"> 1350 </span> : __tmp-&gt;hook(__position._M_node);
+<span class="lineNum"> 1351 </span> : }
+<span class="lineNum"> 1352 </span> : #endif
+<span class="lineNum"> 1353 </span> :
+<span class="lineNum"> 1354 </span> : // Erases element at position given.
+<span class="lineNum"> 1355 </span> : void
+<span class="lineNum"> 1356 </span><span class="lineCov"> 25 : _M_erase(iterator __position)</span>
+<span class="lineNum"> 1357 </span> : {
+<span class="lineNum"> 1358 </span><span class="lineCov"> 25 : __position._M_node-&gt;unhook();</span>
+<span class="lineNum"> 1359 </span><span class="lineCov"> 25 : _Node* __n = static_cast&lt;_Node*&gt;(__position._M_node);</span>
+<span class="lineNum"> 1360 </span><span class="lineCov"> 25 : _M_get_Tp_allocator().destroy(&amp;__n-&gt;_M_data);</span>
+<span class="lineNum"> 1361 </span><span class="lineCov"> 25 : _M_put_node(__n);</span>
+<span class="lineNum"> 1362 </span><span class="lineCov"> 25 : }</span>
+<span class="lineNum"> 1363 </span> :
+<span class="lineNum"> 1364 </span> : // To implement the splice (and merge) bits of N1599.
+<span class="lineNum"> 1365 </span> : void
+<span class="lineNum"> 1366 </span> : _M_check_equal_allocators(list&amp; __x)
+<span class="lineNum"> 1367 </span> : {
+<span class="lineNum"> 1368 </span> : if (std::__alloc_neq&lt;typename _Base::_Node_alloc_type&gt;::
+<span class="lineNum"> 1369 </span> : _S_do_it(_M_get_Node_allocator(), __x._M_get_Node_allocator()))
+<span class="lineNum"> 1370 </span> : __throw_runtime_error(__N(&quot;list::_M_check_equal_allocators&quot;));
+<span class="lineNum"> 1371 </span> : }
+<span class="lineNum"> 1372 </span> : };
+<span class="lineNum"> 1373 </span> :
+<span class="lineNum"> 1374 </span> : /**
+<span class="lineNum"> 1375 </span> : * @brief List equality comparison.
+<span class="lineNum"> 1376 </span> : * @param x A %list.
+<span class="lineNum"> 1377 </span> : * @param y A %list of the same type as @a x.
+<span class="lineNum"> 1378 </span> : * @return True iff the size and elements of the lists are equal.
+<span class="lineNum"> 1379 </span> : *
+<span class="lineNum"> 1380 </span> : * This is an equivalence relation. It is linear in the size of
+<span class="lineNum"> 1381 </span> : * the lists. Lists are considered equivalent if their sizes are
+<span class="lineNum"> 1382 </span> : * equal, and if corresponding elements compare equal.
+<span class="lineNum"> 1383 </span> : */
+<span class="lineNum"> 1384 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1385 </span> : inline bool
+<span class="lineNum"> 1386 </span><span class="lineCov"> 4 : operator==(const list&lt;_Tp, _Alloc&gt;&amp; __x, const list&lt;_Tp, _Alloc&gt;&amp; __y)</span>
+<span class="lineNum"> 1387 </span> : {
+<span class="lineNum"> 1388 </span> : typedef typename list&lt;_Tp, _Alloc&gt;::const_iterator const_iterator;
+<span class="lineNum"> 1389 </span><span class="lineCov"> 4 : const_iterator __end1 = __x.end();</span>
+<span class="lineNum"> 1390 </span><span class="lineCov"> 4 : const_iterator __end2 = __y.end();</span>
+<span class="lineNum"> 1391 </span> :
+<span class="lineNum"> 1392 </span><span class="lineCov"> 4 : const_iterator __i1 = __x.begin();</span>
+<span class="lineNum"> 1393 </span><span class="lineCov"> 4 : const_iterator __i2 = __y.begin();</span>
+<span class="lineNum"> 1394 </span><span class="lineCov"> 12 : while (__i1 != __end1 &amp;&amp; __i2 != __end2 &amp;&amp; *__i1 == *__i2)</span>
+<span class="lineNum"> 1395 </span> : {
+<span class="lineNum"> 1396 </span><span class="lineCov"> 4 : ++__i1;</span>
+<span class="lineNum"> 1397 </span><span class="lineCov"> 4 : ++__i2;</span>
+<span class="lineNum"> 1398 </span> : }
+<span class="lineNum"> 1399 </span><span class="lineCov"> 4 : return __i1 == __end1 &amp;&amp; __i2 == __end2;</span>
+<span class="lineNum"> 1400 </span> : }
+<span class="lineNum"> 1401 </span> :
+<span class="lineNum"> 1402 </span> : /**
+<span class="lineNum"> 1403 </span> : * @brief List ordering relation.
+<span class="lineNum"> 1404 </span> : * @param x A %list.
+<span class="lineNum"> 1405 </span> : * @param y A %list of the same type as @a x.
+<span class="lineNum"> 1406 </span> : * @return True iff @a x is lexicographically less than @a y.
+<span class="lineNum"> 1407 </span> : *
+<span class="lineNum"> 1408 </span> : * This is a total ordering relation. It is linear in the size of the
+<span class="lineNum"> 1409 </span> : * lists. The elements must be comparable with @c &lt;.
+<span class="lineNum"> 1410 </span> : *
+<span class="lineNum"> 1411 </span> : * See std::lexicographical_compare() for how the determination is made.
+<span class="lineNum"> 1412 </span> : */
+<span class="lineNum"> 1413 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1414 </span> : inline bool
+<span class="lineNum"> 1415 </span> : operator&lt;(const list&lt;_Tp, _Alloc&gt;&amp; __x, const list&lt;_Tp, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 1416 </span> : { return std::lexicographical_compare(__x.begin(), __x.end(),
+<span class="lineNum"> 1417 </span> : __y.begin(), __y.end()); }
+<span class="lineNum"> 1418 </span> :
+<span class="lineNum"> 1419 </span> : /// Based on operator==
+<span class="lineNum"> 1420 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1421 </span> : inline bool
+<span class="lineNum"> 1422 </span><span class="lineCov"> 2 : operator!=(const list&lt;_Tp, _Alloc&gt;&amp; __x, const list&lt;_Tp, _Alloc&gt;&amp; __y)</span>
+<span class="lineNum"> 1423 </span><span class="lineCov"> 2 : { return !(__x == __y); }</span>
+<span class="lineNum"> 1424 </span> :
+<span class="lineNum"> 1425 </span> : /// Based on operator&lt;
+<span class="lineNum"> 1426 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1427 </span> : inline bool
+<span class="lineNum"> 1428 </span> : operator&gt;(const list&lt;_Tp, _Alloc&gt;&amp; __x, const list&lt;_Tp, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 1429 </span> : { return __y &lt; __x; }
+<span class="lineNum"> 1430 </span> :
+<span class="lineNum"> 1431 </span> : /// Based on operator&lt;
+<span class="lineNum"> 1432 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1433 </span> : inline bool
+<span class="lineNum"> 1434 </span> : operator&lt;=(const list&lt;_Tp, _Alloc&gt;&amp; __x, const list&lt;_Tp, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 1435 </span> : { return !(__y &lt; __x); }
+<span class="lineNum"> 1436 </span> :
+<span class="lineNum"> 1437 </span> : /// Based on operator&lt;
+<span class="lineNum"> 1438 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1439 </span> : inline bool
+<span class="lineNum"> 1440 </span> : operator&gt;=(const list&lt;_Tp, _Alloc&gt;&amp; __x, const list&lt;_Tp, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 1441 </span> : { return !(__x &lt; __y); }
+<span class="lineNum"> 1442 </span> :
+<span class="lineNum"> 1443 </span> : /// See std::list::swap().
+<span class="lineNum"> 1444 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1445 </span> : inline void
+<span class="lineNum"> 1446 </span> : swap(list&lt;_Tp, _Alloc&gt;&amp; __x, list&lt;_Tp, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 1447 </span> : { __x.swap(__y); }
+<span class="lineNum"> 1448 </span> :
+<span class="lineNum"> 1449 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 1450 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1451 </span> : inline void
+<span class="lineNum"> 1452 </span> : swap(list&lt;_Tp, _Alloc&gt;&amp;&amp; __x, list&lt;_Tp, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 1453 </span> : { __x.swap(__y); }
+<span class="lineNum"> 1454 </span> :
+<span class="lineNum"> 1455 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1456 </span> : inline void
+<span class="lineNum"> 1457 </span> : swap(list&lt;_Tp, _Alloc&gt;&amp; __x, list&lt;_Tp, _Alloc&gt;&amp;&amp; __y)
+<span class="lineNum"> 1458 </span> : { __x.swap(__y); }
+<span class="lineNum"> 1459 </span> : #endif
+<span class="lineNum"> 1460 </span> :
+<span class="lineNum"> 1461 </span> : _GLIBCXX_END_NESTED_NAMESPACE
+<span class="lineNum"> 1462 </span> :
+<span class="lineNum"> 1463 </span> : #endif /* _STL_LIST_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/stl_map.h.gcov.html b/rep/usr/include/c++/4.3/bits/stl_map.h.gcov.html
new file mode 100644
index 0000000..6a8cb4e
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/stl_map.h.gcov.html
@@ -0,0 +1,894 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/stl_map.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - stl_map.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">41</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">41</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Map implementation -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 18 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 19 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 20 </span> : // USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /*
+<span class="lineNum"> 32 </span> : *
+<span class="lineNum"> 33 </span> : * Copyright (c) 1994
+<span class="lineNum"> 34 </span> : * Hewlett-Packard Company
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 37 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 38 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 39 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 40 </span> : * in supporting documentation. Hewlett-Packard Company makes no
+<span class="lineNum"> 41 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 42 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 43 </span> : *
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * Copyright (c) 1996,1997
+<span class="lineNum"> 46 </span> : * Silicon Graphics Computer Systems, Inc.
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 49 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 50 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 51 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 52 </span> : * in supporting documentation. Silicon Graphics makes no
+<span class="lineNum"> 53 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 54 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 55 </span> : */
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /** @file stl_map.h
+<span class="lineNum"> 58 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 59 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 60 </span> : */
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : #ifndef _STL_MAP_H
+<span class="lineNum"> 63 </span> : #define _STL_MAP_H 1
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : #include &lt;bits/functexcept.h&gt;
+<span class="lineNum"> 66 </span> : #include &lt;bits/concept_check.h&gt;
+<span class="lineNum"> 67 </span> :
+<span class="lineNum"> 68 </span> : _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
+<span class="lineNum"> 69 </span> :
+<span class="lineNum"> 70 </span> : /**
+<span class="lineNum"> 71 </span> : * @brief A standard container made up of (key,value) pairs, which can be
+<span class="lineNum"> 72 </span> : * retrieved based on a key, in logarithmic time.
+<span class="lineNum"> 73 </span> : *
+<span class="lineNum"> 74 </span> : * @ingroup Containers
+<span class="lineNum"> 75 </span> : * @ingroup Assoc_containers
+<span class="lineNum"> 76 </span> : *
+<span class="lineNum"> 77 </span> : * Meets the requirements of a &lt;a href=&quot;tables.html#65&quot;&gt;container&lt;/a&gt;, a
+<span class="lineNum"> 78 </span> : * &lt;a href=&quot;tables.html#66&quot;&gt;reversible container&lt;/a&gt;, and an
+<span class="lineNum"> 79 </span> : * &lt;a href=&quot;tables.html#69&quot;&gt;associative container&lt;/a&gt; (using unique keys).
+<span class="lineNum"> 80 </span> : * For a @c map&lt;Key,T&gt; the key_type is Key, the mapped_type is T, and the
+<span class="lineNum"> 81 </span> : * value_type is std::pair&lt;const Key,T&gt;.
+<span class="lineNum"> 82 </span> : *
+<span class="lineNum"> 83 </span> : * Maps support bidirectional iterators.
+<span class="lineNum"> 84 </span> : *
+<span class="lineNum"> 85 </span> : * The private tree data is declared exactly the same way for map and
+<span class="lineNum"> 86 </span> : * multimap; the distinction is made entirely in how the tree functions are
+<span class="lineNum"> 87 </span> : * called (*_unique versus *_equal, same as the standard).
+<span class="lineNum"> 88 </span> : */
+<span class="lineNum"> 89 </span> : template &lt;typename _Key, typename _Tp, typename _Compare = std::less&lt;_Key&gt;,
+<span class="lineNum"> 90 </span> : typename _Alloc = std::allocator&lt;std::pair&lt;const _Key, _Tp&gt; &gt; &gt;
+<span class="lineNum"> 91 </span> : class map
+<span class="lineNum"> 92 </span><span class="lineCov"> 12304 : {</span>
+<span class="lineNum"> 93 </span> : public:
+<span class="lineNum"> 94 </span> : typedef _Key key_type;
+<span class="lineNum"> 95 </span> : typedef _Tp mapped_type;
+<span class="lineNum"> 96 </span> : typedef std::pair&lt;const _Key, _Tp&gt; value_type;
+<span class="lineNum"> 97 </span> : typedef _Compare key_compare;
+<span class="lineNum"> 98 </span> : typedef _Alloc allocator_type;
+<span class="lineNum"> 99 </span> :
+<span class="lineNum"> 100 </span> : private:
+<span class="lineNum"> 101 </span> : // concept requirements
+<span class="lineNum"> 102 </span> : typedef typename _Alloc::value_type _Alloc_value_type;
+<span class="lineNum"> 103 </span> : __glibcxx_class_requires(_Tp, _SGIAssignableConcept)
+<span class="lineNum"> 104 </span> : __glibcxx_class_requires4(_Compare, bool, _Key, _Key,
+<span class="lineNum"> 105 </span> : _BinaryFunctionConcept)
+<span class="lineNum"> 106 </span> : __glibcxx_class_requires2(value_type, _Alloc_value_type, _SameTypeConcept)
+<span class="lineNum"> 107 </span> :
+<span class="lineNum"> 108 </span> : public:
+<span class="lineNum"> 109 </span> : class value_compare
+<span class="lineNum"> 110 </span> : : public std::binary_function&lt;value_type, value_type, bool&gt;
+<span class="lineNum"> 111 </span> : {
+<span class="lineNum"> 112 </span> : friend class map&lt;_Key, _Tp, _Compare, _Alloc&gt;;
+<span class="lineNum"> 113 </span> : protected:
+<span class="lineNum"> 114 </span> : _Compare comp;
+<span class="lineNum"> 115 </span> :
+<span class="lineNum"> 116 </span> : value_compare(_Compare __c)
+<span class="lineNum"> 117 </span> : : comp(__c) { }
+<span class="lineNum"> 118 </span> :
+<span class="lineNum"> 119 </span> : public:
+<span class="lineNum"> 120 </span> : bool operator()(const value_type&amp; __x, const value_type&amp; __y) const
+<span class="lineNum"> 121 </span> : { return comp(__x.first, __y.first); }
+<span class="lineNum"> 122 </span> : };
+<span class="lineNum"> 123 </span> :
+<span class="lineNum"> 124 </span> : private:
+<span class="lineNum"> 125 </span> : /// This turns a red-black tree into a [multi]map.
+<span class="lineNum"> 126 </span> : typedef typename _Alloc::template rebind&lt;value_type&gt;::other
+<span class="lineNum"> 127 </span> : _Pair_alloc_type;
+<span class="lineNum"> 128 </span> :
+<span class="lineNum"> 129 </span> : typedef _Rb_tree&lt;key_type, value_type, _Select1st&lt;value_type&gt;,
+<span class="lineNum"> 130 </span> : key_compare, _Pair_alloc_type&gt; _Rep_type;
+<span class="lineNum"> 131 </span> :
+<span class="lineNum"> 132 </span> : /// The actual tree structure.
+<span class="lineNum"> 133 </span> : _Rep_type _M_t;
+<span class="lineNum"> 134 </span> :
+<span class="lineNum"> 135 </span> : public:
+<span class="lineNum"> 136 </span> : // many of these are specified differently in ISO, but the following are
+<span class="lineNum"> 137 </span> : // &quot;functionally equivalent&quot;
+<span class="lineNum"> 138 </span> : typedef typename _Pair_alloc_type::pointer pointer;
+<span class="lineNum"> 139 </span> : typedef typename _Pair_alloc_type::const_pointer const_pointer;
+<span class="lineNum"> 140 </span> : typedef typename _Pair_alloc_type::reference reference;
+<span class="lineNum"> 141 </span> : typedef typename _Pair_alloc_type::const_reference const_reference;
+<span class="lineNum"> 142 </span> : typedef typename _Rep_type::iterator iterator;
+<span class="lineNum"> 143 </span> : typedef typename _Rep_type::const_iterator const_iterator;
+<span class="lineNum"> 144 </span> : typedef typename _Rep_type::size_type size_type;
+<span class="lineNum"> 145 </span> : typedef typename _Rep_type::difference_type difference_type;
+<span class="lineNum"> 146 </span> : typedef typename _Rep_type::reverse_iterator reverse_iterator;
+<span class="lineNum"> 147 </span> : typedef typename _Rep_type::const_reverse_iterator const_reverse_iterator;
+<span class="lineNum"> 148 </span> :
+<span class="lineNum"> 149 </span> : // [23.3.1.1] construct/copy/destroy
+<span class="lineNum"> 150 </span> : // (get_allocator() is normally listed in this section, but seems to have
+<span class="lineNum"> 151 </span> : // been accidentally omitted in the printed standard)
+<span class="lineNum"> 152 </span> : /**
+<span class="lineNum"> 153 </span> : * @brief Default constructor creates no elements.
+<span class="lineNum"> 154 </span> : */
+<span class="lineNum"> 155 </span><span class="lineCov"> 2859 : map()</span>
+<span class="lineNum"> 156 </span><span class="lineCov"> 2859 : : _M_t() { }</span>
+<span class="lineNum"> 157 </span> :
+<span class="lineNum"> 158 </span> : /**
+<span class="lineNum"> 159 </span> : * @brief Creates a %map with no elements.
+<span class="lineNum"> 160 </span> : * @param comp A comparison object.
+<span class="lineNum"> 161 </span> : * @param a An allocator object.
+<span class="lineNum"> 162 </span> : */
+<span class="lineNum"> 163 </span> : explicit
+<span class="lineNum"> 164 </span> : map(const _Compare&amp; __comp,
+<span class="lineNum"> 165 </span> : const allocator_type&amp; __a = allocator_type())
+<span class="lineNum"> 166 </span> : : _M_t(__comp, __a) { }
+<span class="lineNum"> 167 </span> :
+<span class="lineNum"> 168 </span> : /**
+<span class="lineNum"> 169 </span> : * @brief %Map copy constructor.
+<span class="lineNum"> 170 </span> : * @param x A %map of identical element and allocator types.
+<span class="lineNum"> 171 </span> : *
+<span class="lineNum"> 172 </span> : * The newly-created %map uses a copy of the allocation object
+<span class="lineNum"> 173 </span> : * used by @a x.
+<span class="lineNum"> 174 </span> : */
+<span class="lineNum"> 175 </span><span class="lineCov"> 9445 : map(const map&amp; __x)</span>
+<span class="lineNum"> 176 </span><span class="lineCov"> 9445 : : _M_t(__x._M_t) { }</span>
+<span class="lineNum"> 177 </span> :
+<span class="lineNum"> 178 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 179 </span> : /**
+<span class="lineNum"> 180 </span> : * @brief %Map move constructor.
+<span class="lineNum"> 181 </span> : * @param x A %map of identical element and allocator types.
+<span class="lineNum"> 182 </span> : *
+<span class="lineNum"> 183 </span> : * The newly-created %map contains the exact contents of @a x.
+<span class="lineNum"> 184 </span> : * The contents of @a x are a valid, but unspecified %map.
+<span class="lineNum"> 185 </span> : */
+<span class="lineNum"> 186 </span> : map(map&amp;&amp; __x)
+<span class="lineNum"> 187 </span> : : _M_t(std::forward&lt;_Rep_type&gt;(__x._M_t)) { }
+<span class="lineNum"> 188 </span> : #endif
+<span class="lineNum"> 189 </span> :
+<span class="lineNum"> 190 </span> : /**
+<span class="lineNum"> 191 </span> : * @brief Builds a %map from a range.
+<span class="lineNum"> 192 </span> : * @param first An input iterator.
+<span class="lineNum"> 193 </span> : * @param last An input iterator.
+<span class="lineNum"> 194 </span> : *
+<span class="lineNum"> 195 </span> : * Create a %map consisting of copies of the elements from [first,last).
+<span class="lineNum"> 196 </span> : * This is linear in N if the range is already sorted, and NlogN
+<span class="lineNum"> 197 </span> : * otherwise (where N is distance(first,last)).
+<span class="lineNum"> 198 </span> : */
+<span class="lineNum"> 199 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 200 </span> : map(_InputIterator __first, _InputIterator __last)
+<span class="lineNum"> 201 </span> : : _M_t()
+<span class="lineNum"> 202 </span> : { _M_t._M_insert_unique(__first, __last); }
+<span class="lineNum"> 203 </span> :
+<span class="lineNum"> 204 </span> : /**
+<span class="lineNum"> 205 </span> : * @brief Builds a %map from a range.
+<span class="lineNum"> 206 </span> : * @param first An input iterator.
+<span class="lineNum"> 207 </span> : * @param last An input iterator.
+<span class="lineNum"> 208 </span> : * @param comp A comparison functor.
+<span class="lineNum"> 209 </span> : * @param a An allocator object.
+<span class="lineNum"> 210 </span> : *
+<span class="lineNum"> 211 </span> : * Create a %map consisting of copies of the elements from [first,last).
+<span class="lineNum"> 212 </span> : * This is linear in N if the range is already sorted, and NlogN
+<span class="lineNum"> 213 </span> : * otherwise (where N is distance(first,last)).
+<span class="lineNum"> 214 </span> : */
+<span class="lineNum"> 215 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 216 </span> : map(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 217 </span> : const _Compare&amp; __comp,
+<span class="lineNum"> 218 </span> : const allocator_type&amp; __a = allocator_type())
+<span class="lineNum"> 219 </span> : : _M_t(__comp, __a)
+<span class="lineNum"> 220 </span> : { _M_t._M_insert_unique(__first, __last); }
+<span class="lineNum"> 221 </span> :
+<span class="lineNum"> 222 </span> : // FIXME There is no dtor declared, but we should have something
+<span class="lineNum"> 223 </span> : // generated by Doxygen. I don't know what tags to add to this
+<span class="lineNum"> 224 </span> : // paragraph to make that happen:
+<span class="lineNum"> 225 </span> : /**
+<span class="lineNum"> 226 </span> : * The dtor only erases the elements, and note that if the elements
+<span class="lineNum"> 227 </span> : * themselves are pointers, the pointed-to memory is not touched in any
+<span class="lineNum"> 228 </span> : * way. Managing the pointer is the user's responsibility.
+<span class="lineNum"> 229 </span> : */
+<span class="lineNum"> 230 </span> :
+<span class="lineNum"> 231 </span> : /**
+<span class="lineNum"> 232 </span> : * @brief %Map assignment operator.
+<span class="lineNum"> 233 </span> : * @param x A %map of identical element and allocator types.
+<span class="lineNum"> 234 </span> : *
+<span class="lineNum"> 235 </span> : * All the elements of @a x are copied, but unlike the copy constructor,
+<span class="lineNum"> 236 </span> : * the allocator object is not copied.
+<span class="lineNum"> 237 </span> : */
+<span class="lineNum"> 238 </span> : map&amp;
+<span class="lineNum"> 239 </span><span class="lineCov"> 17 : operator=(const map&amp; __x)</span>
+<span class="lineNum"> 240 </span> : {
+<span class="lineNum"> 241 </span><span class="lineCov"> 17 : _M_t = __x._M_t;</span>
+<span class="lineNum"> 242 </span><span class="lineCov"> 17 : return *this;</span>
+<span class="lineNum"> 243 </span> : }
+<span class="lineNum"> 244 </span> :
+<span class="lineNum"> 245 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 246 </span> : /**
+<span class="lineNum"> 247 </span> : * @brief %Map move assignment operator.
+<span class="lineNum"> 248 </span> : * @param x A %map of identical element and allocator types.
+<span class="lineNum"> 249 </span> : *
+<span class="lineNum"> 250 </span> : * The contents of @a x are moved into this map (without copying).
+<span class="lineNum"> 251 </span> : * @a x is a valid, but unspecified %map.
+<span class="lineNum"> 252 </span> : */
+<span class="lineNum"> 253 </span> : map&amp;
+<span class="lineNum"> 254 </span> : operator=(map&amp;&amp; __x)
+<span class="lineNum"> 255 </span> : {
+<span class="lineNum"> 256 </span> : // NB: DR 675.
+<span class="lineNum"> 257 </span> : this-&gt;clear();
+<span class="lineNum"> 258 </span> : this-&gt;swap(__x);
+<span class="lineNum"> 259 </span> : return *this;
+<span class="lineNum"> 260 </span> : }
+<span class="lineNum"> 261 </span> : #endif
+<span class="lineNum"> 262 </span> :
+<span class="lineNum"> 263 </span> : /// Get a copy of the memory allocation object.
+<span class="lineNum"> 264 </span> : allocator_type
+<span class="lineNum"> 265 </span> : get_allocator() const
+<span class="lineNum"> 266 </span> : { return _M_t.get_allocator(); }
+<span class="lineNum"> 267 </span> :
+<span class="lineNum"> 268 </span> : // iterators
+<span class="lineNum"> 269 </span> : /**
+<span class="lineNum"> 270 </span> : * Returns a read/write iterator that points to the first pair in the
+<span class="lineNum"> 271 </span> : * %map.
+<span class="lineNum"> 272 </span> : * Iteration is done in ascending order according to the keys.
+<span class="lineNum"> 273 </span> : */
+<span class="lineNum"> 274 </span> : iterator
+<span class="lineNum"> 275 </span><span class="lineCov"> 2681 : begin()</span>
+<span class="lineNum"> 276 </span><span class="lineCov"> 2681 : { return _M_t.begin(); }</span>
+<span class="lineNum"> 277 </span> :
+<span class="lineNum"> 278 </span> : /**
+<span class="lineNum"> 279 </span> : * Returns a read-only (constant) iterator that points to the first pair
+<span class="lineNum"> 280 </span> : * in the %map. Iteration is done in ascending order according to the
+<span class="lineNum"> 281 </span> : * keys.
+<span class="lineNum"> 282 </span> : */
+<span class="lineNum"> 283 </span> : const_iterator
+<span class="lineNum"> 284 </span><span class="lineCov"> 154 : begin() const</span>
+<span class="lineNum"> 285 </span><span class="lineCov"> 154 : { return _M_t.begin(); }</span>
+<span class="lineNum"> 286 </span> :
+<span class="lineNum"> 287 </span> : /**
+<span class="lineNum"> 288 </span> : * Returns a read/write iterator that points one past the last
+<span class="lineNum"> 289 </span> : * pair in the %map. Iteration is done in ascending order
+<span class="lineNum"> 290 </span> : * according to the keys.
+<span class="lineNum"> 291 </span> : */
+<span class="lineNum"> 292 </span> : iterator
+<span class="lineNum"> 293 </span><span class="lineCov"> 155879 : end()</span>
+<span class="lineNum"> 294 </span><span class="lineCov"> 155879 : { return _M_t.end(); }</span>
+<span class="lineNum"> 295 </span> :
+<span class="lineNum"> 296 </span> : /**
+<span class="lineNum"> 297 </span> : * Returns a read-only (constant) iterator that points one past the last
+<span class="lineNum"> 298 </span> : * pair in the %map. Iteration is done in ascending order according to
+<span class="lineNum"> 299 </span> : * the keys.
+<span class="lineNum"> 300 </span> : */
+<span class="lineNum"> 301 </span> : const_iterator
+<span class="lineNum"> 302 </span><span class="lineCov"> 441802 : end() const</span>
+<span class="lineNum"> 303 </span><span class="lineCov"> 441802 : { return _M_t.end(); }</span>
+<span class="lineNum"> 304 </span> :
+<span class="lineNum"> 305 </span> : /**
+<span class="lineNum"> 306 </span> : * Returns a read/write reverse iterator that points to the last pair in
+<span class="lineNum"> 307 </span> : * the %map. Iteration is done in descending order according to the
+<span class="lineNum"> 308 </span> : * keys.
+<span class="lineNum"> 309 </span> : */
+<span class="lineNum"> 310 </span> : reverse_iterator
+<span class="lineNum"> 311 </span> : rbegin()
+<span class="lineNum"> 312 </span> : { return _M_t.rbegin(); }
+<span class="lineNum"> 313 </span> :
+<span class="lineNum"> 314 </span> : /**
+<span class="lineNum"> 315 </span> : * Returns a read-only (constant) reverse iterator that points to the
+<span class="lineNum"> 316 </span> : * last pair in the %map. Iteration is done in descending order
+<span class="lineNum"> 317 </span> : * according to the keys.
+<span class="lineNum"> 318 </span> : */
+<span class="lineNum"> 319 </span> : const_reverse_iterator
+<span class="lineNum"> 320 </span><span class="lineCov"> 32 : rbegin() const</span>
+<span class="lineNum"> 321 </span><span class="lineCov"> 32 : { return _M_t.rbegin(); }</span>
+<span class="lineNum"> 322 </span> :
+<span class="lineNum"> 323 </span> : /**
+<span class="lineNum"> 324 </span> : * Returns a read/write reverse iterator that points to one before the
+<span class="lineNum"> 325 </span> : * first pair in the %map. Iteration is done in descending order
+<span class="lineNum"> 326 </span> : * according to the keys.
+<span class="lineNum"> 327 </span> : */
+<span class="lineNum"> 328 </span> : reverse_iterator
+<span class="lineNum"> 329 </span> : rend()
+<span class="lineNum"> 330 </span> : { return _M_t.rend(); }
+<span class="lineNum"> 331 </span> :
+<span class="lineNum"> 332 </span> : /**
+<span class="lineNum"> 333 </span> : * Returns a read-only (constant) reverse iterator that points to one
+<span class="lineNum"> 334 </span> : * before the first pair in the %map. Iteration is done in descending
+<span class="lineNum"> 335 </span> : * order according to the keys.
+<span class="lineNum"> 336 </span> : */
+<span class="lineNum"> 337 </span> : const_reverse_iterator
+<span class="lineNum"> 338 </span> : rend() const
+<span class="lineNum"> 339 </span> : { return _M_t.rend(); }
+<span class="lineNum"> 340 </span> :
+<span class="lineNum"> 341 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 342 </span> : /**
+<span class="lineNum"> 343 </span> : * Returns a read-only (constant) iterator that points to the first pair
+<span class="lineNum"> 344 </span> : * in the %map. Iteration is done in ascending order according to the
+<span class="lineNum"> 345 </span> : * keys.
+<span class="lineNum"> 346 </span> : */
+<span class="lineNum"> 347 </span> : const_iterator
+<span class="lineNum"> 348 </span> : cbegin() const
+<span class="lineNum"> 349 </span> : { return _M_t.begin(); }
+<span class="lineNum"> 350 </span> :
+<span class="lineNum"> 351 </span> : /**
+<span class="lineNum"> 352 </span> : * Returns a read-only (constant) iterator that points one past the last
+<span class="lineNum"> 353 </span> : * pair in the %map. Iteration is done in ascending order according to
+<span class="lineNum"> 354 </span> : * the keys.
+<span class="lineNum"> 355 </span> : */
+<span class="lineNum"> 356 </span> : const_iterator
+<span class="lineNum"> 357 </span> : cend() const
+<span class="lineNum"> 358 </span> : { return _M_t.end(); }
+<span class="lineNum"> 359 </span> :
+<span class="lineNum"> 360 </span> : /**
+<span class="lineNum"> 361 </span> : * Returns a read-only (constant) reverse iterator that points to the
+<span class="lineNum"> 362 </span> : * last pair in the %map. Iteration is done in descending order
+<span class="lineNum"> 363 </span> : * according to the keys.
+<span class="lineNum"> 364 </span> : */
+<span class="lineNum"> 365 </span> : const_reverse_iterator
+<span class="lineNum"> 366 </span> : crbegin() const
+<span class="lineNum"> 367 </span> : { return _M_t.rbegin(); }
+<span class="lineNum"> 368 </span> :
+<span class="lineNum"> 369 </span> : /**
+<span class="lineNum"> 370 </span> : * Returns a read-only (constant) reverse iterator that points to one
+<span class="lineNum"> 371 </span> : * before the first pair in the %map. Iteration is done in descending
+<span class="lineNum"> 372 </span> : * order according to the keys.
+<span class="lineNum"> 373 </span> : */
+<span class="lineNum"> 374 </span> : const_reverse_iterator
+<span class="lineNum"> 375 </span> : crend() const
+<span class="lineNum"> 376 </span> : { return _M_t.rend(); }
+<span class="lineNum"> 377 </span> : #endif
+<span class="lineNum"> 378 </span> :
+<span class="lineNum"> 379 </span> : // capacity
+<span class="lineNum"> 380 </span> : /** Returns true if the %map is empty. (Thus begin() would equal
+<span class="lineNum"> 381 </span> : * end().)
+<span class="lineNum"> 382 </span> : */
+<span class="lineNum"> 383 </span> : bool
+<span class="lineNum"> 384 </span><span class="lineCov"> 3939 : empty() const</span>
+<span class="lineNum"> 385 </span><span class="lineCov"> 3939 : { return _M_t.empty(); }</span>
+<span class="lineNum"> 386 </span> :
+<span class="lineNum"> 387 </span> : /** Returns the size of the %map. */
+<span class="lineNum"> 388 </span> : size_type
+<span class="lineNum"> 389 </span><span class="lineCov"> 20 : size() const</span>
+<span class="lineNum"> 390 </span><span class="lineCov"> 20 : { return _M_t.size(); }</span>
+<span class="lineNum"> 391 </span> :
+<span class="lineNum"> 392 </span> : /** Returns the maximum size of the %map. */
+<span class="lineNum"> 393 </span> : size_type
+<span class="lineNum"> 394 </span> : max_size() const
+<span class="lineNum"> 395 </span> : { return _M_t.max_size(); }
+<span class="lineNum"> 396 </span> :
+<span class="lineNum"> 397 </span> : // [23.3.1.2] element access
+<span class="lineNum"> 398 </span> : /**
+<span class="lineNum"> 399 </span> : * @brief Subscript ( @c [] ) access to %map data.
+<span class="lineNum"> 400 </span> : * @param k The key for which data should be retrieved.
+<span class="lineNum"> 401 </span> : * @return A reference to the data of the (key,data) %pair.
+<span class="lineNum"> 402 </span> : *
+<span class="lineNum"> 403 </span> : * Allows for easy lookup with the subscript ( @c [] )
+<span class="lineNum"> 404 </span> : * operator. Returns data associated with the key specified in
+<span class="lineNum"> 405 </span> : * subscript. If the key does not exist, a pair with that key
+<span class="lineNum"> 406 </span> : * is created using default values, which is then returned.
+<span class="lineNum"> 407 </span> : *
+<span class="lineNum"> 408 </span> : * Lookup requires logarithmic time.
+<span class="lineNum"> 409 </span> : */
+<span class="lineNum"> 410 </span> : mapped_type&amp;
+<span class="lineNum"> 411 </span><span class="lineCov"> 6297 : operator[](const key_type&amp; __k)</span>
+<span class="lineNum"> 412 </span> : {
+<span class="lineNum"> 413 </span> : // concept requirements
+<span class="lineNum"> 414 </span> : __glibcxx_function_requires(_DefaultConstructibleConcept&lt;mapped_type&gt;)
+<span class="lineNum"> 415 </span> :
+<span class="lineNum"> 416 </span><span class="lineCov"> 6297 : iterator __i = lower_bound(__k);</span>
+<span class="lineNum"> 417 </span> : // __i-&gt;first is greater than or equivalent to __k.
+<span class="lineNum"> 418 </span><span class="lineCov"> 6297 : if (__i == end() || key_comp()(__k, (*__i).first))</span>
+<span class="lineNum"> 419 </span><span class="lineCov"> 4149 : __i = insert(__i, value_type(__k, mapped_type()));</span>
+<span class="lineNum"> 420 </span><span class="lineCov"> 6297 : return (*__i).second;</span>
+<span class="lineNum"> 421 </span> : }
+<span class="lineNum"> 422 </span> :
+<span class="lineNum"> 423 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 424 </span> : // DR 464. Suggestion for new member functions in standard containers.
+<span class="lineNum"> 425 </span> : /**
+<span class="lineNum"> 426 </span> : * @brief Access to %map data.
+<span class="lineNum"> 427 </span> : * @param k The key for which data should be retrieved.
+<span class="lineNum"> 428 </span> : * @return A reference to the data whose key is equivalent to @a k, if
+<span class="lineNum"> 429 </span> : * such a data is present in the %map.
+<span class="lineNum"> 430 </span> : * @throw std::out_of_range If no such data is present.
+<span class="lineNum"> 431 </span> : */
+<span class="lineNum"> 432 </span> : mapped_type&amp;
+<span class="lineNum"> 433 </span> : at(const key_type&amp; __k)
+<span class="lineNum"> 434 </span> : {
+<span class="lineNum"> 435 </span> : iterator __i = lower_bound(__k);
+<span class="lineNum"> 436 </span> : if (__i == end() || key_comp()(__k, (*__i).first))
+<span class="lineNum"> 437 </span> : __throw_out_of_range(__N(&quot;map::at&quot;));
+<span class="lineNum"> 438 </span> : return (*__i).second;
+<span class="lineNum"> 439 </span> : }
+<span class="lineNum"> 440 </span> :
+<span class="lineNum"> 441 </span> : const mapped_type&amp;
+<span class="lineNum"> 442 </span> : at(const key_type&amp; __k) const
+<span class="lineNum"> 443 </span> : {
+<span class="lineNum"> 444 </span> : const_iterator __i = lower_bound(__k);
+<span class="lineNum"> 445 </span> : if (__i == end() || key_comp()(__k, (*__i).first))
+<span class="lineNum"> 446 </span> : __throw_out_of_range(__N(&quot;map::at&quot;));
+<span class="lineNum"> 447 </span> : return (*__i).second;
+<span class="lineNum"> 448 </span> : }
+<span class="lineNum"> 449 </span> :
+<span class="lineNum"> 450 </span> : // modifiers
+<span class="lineNum"> 451 </span> : /**
+<span class="lineNum"> 452 </span> : * @brief Attempts to insert a std::pair into the %map.
+<span class="lineNum"> 453 </span> :
+<span class="lineNum"> 454 </span> : * @param x Pair to be inserted (see std::make_pair for easy creation
+<span class="lineNum"> 455 </span> : * of pairs).
+<span class="lineNum"> 456 </span> :
+<span class="lineNum"> 457 </span> : * @return A pair, of which the first element is an iterator that
+<span class="lineNum"> 458 </span> : * points to the possibly inserted pair, and the second is
+<span class="lineNum"> 459 </span> : * a bool that is true if the pair was actually inserted.
+<span class="lineNum"> 460 </span> : *
+<span class="lineNum"> 461 </span> : * This function attempts to insert a (key, value) %pair into the %map.
+<span class="lineNum"> 462 </span> : * A %map relies on unique keys and thus a %pair is only inserted if its
+<span class="lineNum"> 463 </span> : * first element (the key) is not already present in the %map.
+<span class="lineNum"> 464 </span> : *
+<span class="lineNum"> 465 </span> : * Insertion requires logarithmic time.
+<span class="lineNum"> 466 </span> : */
+<span class="lineNum"> 467 </span> : std::pair&lt;iterator, bool&gt;
+<span class="lineNum"> 468 </span><span class="lineCov"> 101375 : insert(const value_type&amp; __x)</span>
+<span class="lineNum"> 469 </span><span class="lineCov"> 101375 : { return _M_t._M_insert_unique(__x); }</span>
+<span class="lineNum"> 470 </span> :
+<span class="lineNum"> 471 </span> : /**
+<span class="lineNum"> 472 </span> : * @brief Attempts to insert a std::pair into the %map.
+<span class="lineNum"> 473 </span> : * @param position An iterator that serves as a hint as to where the
+<span class="lineNum"> 474 </span> : * pair should be inserted.
+<span class="lineNum"> 475 </span> : * @param x Pair to be inserted (see std::make_pair for easy creation
+<span class="lineNum"> 476 </span> : * of pairs).
+<span class="lineNum"> 477 </span> : * @return An iterator that points to the element with key of @a x (may
+<span class="lineNum"> 478 </span> : * or may not be the %pair passed in).
+<span class="lineNum"> 479 </span> : *
+<span class="lineNum"> 480 </span> :
+<span class="lineNum"> 481 </span> : * This function is not concerned about whether the insertion
+<span class="lineNum"> 482 </span> : * took place, and thus does not return a boolean like the
+<span class="lineNum"> 483 </span> : * single-argument insert() does. Note that the first
+<span class="lineNum"> 484 </span> : * parameter is only a hint and can potentially improve the
+<span class="lineNum"> 485 </span> : * performance of the insertion process. A bad hint would
+<span class="lineNum"> 486 </span> : * cause no gains in efficiency.
+<span class="lineNum"> 487 </span> : *
+<span class="lineNum"> 488 </span> : * See
+<span class="lineNum"> 489 </span> : * http://gcc.gnu.org/onlinedocs/libstdc++/23_containers/howto.html#4
+<span class="lineNum"> 490 </span> : * for more on &quot;hinting&quot;.
+<span class="lineNum"> 491 </span> : *
+<span class="lineNum"> 492 </span> : * Insertion requires logarithmic time (if the hint is not taken).
+<span class="lineNum"> 493 </span> : */
+<span class="lineNum"> 494 </span> : iterator
+<span class="lineNum"> 495 </span><span class="lineCov"> 4149 : insert(iterator __position, const value_type&amp; __x)</span>
+<span class="lineNum"> 496 </span><span class="lineCov"> 4149 : { return _M_t._M_insert_unique_(__position, __x); }</span>
+<span class="lineNum"> 497 </span> :
+<span class="lineNum"> 498 </span> : /**
+<span class="lineNum"> 499 </span> : * @brief Template function that attempts to insert a range of elements.
+<span class="lineNum"> 500 </span> : * @param first Iterator pointing to the start of the range to be
+<span class="lineNum"> 501 </span> : * inserted.
+<span class="lineNum"> 502 </span> : * @param last Iterator pointing to the end of the range.
+<span class="lineNum"> 503 </span> : *
+<span class="lineNum"> 504 </span> : * Complexity similar to that of the range constructor.
+<span class="lineNum"> 505 </span> : */
+<span class="lineNum"> 506 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 507 </span> : void
+<span class="lineNum"> 508 </span> : insert(_InputIterator __first, _InputIterator __last)
+<span class="lineNum"> 509 </span> : { _M_t._M_insert_unique(__first, __last); }
+<span class="lineNum"> 510 </span> :
+<span class="lineNum"> 511 </span> : /**
+<span class="lineNum"> 512 </span> : * @brief Erases an element from a %map.
+<span class="lineNum"> 513 </span> : * @param position An iterator pointing to the element to be erased.
+<span class="lineNum"> 514 </span> : *
+<span class="lineNum"> 515 </span> : * This function erases an element, pointed to by the given
+<span class="lineNum"> 516 </span> : * iterator, from a %map. Note that this function only erases
+<span class="lineNum"> 517 </span> : * the element, and that if the element is itself a pointer,
+<span class="lineNum"> 518 </span> : * the pointed-to memory is not touched in any way. Managing
+<span class="lineNum"> 519 </span> : * the pointer is the user's responsibility.
+<span class="lineNum"> 520 </span> : */
+<span class="lineNum"> 521 </span> : void
+<span class="lineNum"> 522 </span> : erase(iterator __position)
+<span class="lineNum"> 523 </span> : { _M_t.erase(__position); }
+<span class="lineNum"> 524 </span> :
+<span class="lineNum"> 525 </span> : /**
+<span class="lineNum"> 526 </span> : * @brief Erases elements according to the provided key.
+<span class="lineNum"> 527 </span> : * @param x Key of element to be erased.
+<span class="lineNum"> 528 </span> : * @return The number of elements erased.
+<span class="lineNum"> 529 </span> : *
+<span class="lineNum"> 530 </span> : * This function erases all the elements located by the given key from
+<span class="lineNum"> 531 </span> : * a %map.
+<span class="lineNum"> 532 </span> : * Note that this function only erases the element, and that if
+<span class="lineNum"> 533 </span> : * the element is itself a pointer, the pointed-to memory is not touched
+<span class="lineNum"> 534 </span> : * in any way. Managing the pointer is the user's responsibility.
+<span class="lineNum"> 535 </span> : */
+<span class="lineNum"> 536 </span> : size_type
+<span class="lineNum"> 537 </span> : erase(const key_type&amp; __x)
+<span class="lineNum"> 538 </span> : { return _M_t.erase(__x); }
+<span class="lineNum"> 539 </span> :
+<span class="lineNum"> 540 </span> : /**
+<span class="lineNum"> 541 </span> : * @brief Erases a [first,last) range of elements from a %map.
+<span class="lineNum"> 542 </span> : * @param first Iterator pointing to the start of the range to be
+<span class="lineNum"> 543 </span> : * erased.
+<span class="lineNum"> 544 </span> : * @param last Iterator pointing to the end of the range to be erased.
+<span class="lineNum"> 545 </span> : *
+<span class="lineNum"> 546 </span> : * This function erases a sequence of elements from a %map.
+<span class="lineNum"> 547 </span> : * Note that this function only erases the element, and that if
+<span class="lineNum"> 548 </span> : * the element is itself a pointer, the pointed-to memory is not touched
+<span class="lineNum"> 549 </span> : * in any way. Managing the pointer is the user's responsibility.
+<span class="lineNum"> 550 </span> : */
+<span class="lineNum"> 551 </span> : void
+<span class="lineNum"> 552 </span> : erase(iterator __first, iterator __last)
+<span class="lineNum"> 553 </span> : { _M_t.erase(__first, __last); }
+<span class="lineNum"> 554 </span> :
+<span class="lineNum"> 555 </span> : /**
+<span class="lineNum"> 556 </span> : * @brief Swaps data with another %map.
+<span class="lineNum"> 557 </span> : * @param x A %map of the same element and allocator types.
+<span class="lineNum"> 558 </span> : *
+<span class="lineNum"> 559 </span> : * This exchanges the elements between two maps in constant
+<span class="lineNum"> 560 </span> : * time. (It is only swapping a pointer, an integer, and an
+<span class="lineNum"> 561 </span> : * instance of the @c Compare type (which itself is often
+<span class="lineNum"> 562 </span> : * stateless and empty), so it should be quite fast.) Note
+<span class="lineNum"> 563 </span> : * that the global std::swap() function is specialized such
+<span class="lineNum"> 564 </span> : * that std::swap(m1,m2) will feed to this function.
+<span class="lineNum"> 565 </span> : */
+<span class="lineNum"> 566 </span> : void
+<span class="lineNum"> 567 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 568 </span> : swap(map&amp;&amp; __x)
+<span class="lineNum"> 569 </span> : #else
+<span class="lineNum"> 570 </span> : swap(map&amp; __x)
+<span class="lineNum"> 571 </span> : #endif
+<span class="lineNum"> 572 </span> : { _M_t.swap(__x._M_t); }
+<span class="lineNum"> 573 </span> :
+<span class="lineNum"> 574 </span> : /**
+<span class="lineNum"> 575 </span> : * Erases all elements in a %map. Note that this function only
+<span class="lineNum"> 576 </span> : * erases the elements, and that if the elements themselves are
+<span class="lineNum"> 577 </span> : * pointers, the pointed-to memory is not touched in any way.
+<span class="lineNum"> 578 </span> : * Managing the pointer is the user's responsibility.
+<span class="lineNum"> 579 </span> : */
+<span class="lineNum"> 580 </span> : void
+<span class="lineNum"> 581 </span><span class="lineCov"> 3288 : clear()</span>
+<span class="lineNum"> 582 </span><span class="lineCov"> 3288 : { _M_t.clear(); }</span>
+<span class="lineNum"> 583 </span> :
+<span class="lineNum"> 584 </span> : // observers
+<span class="lineNum"> 585 </span> : /**
+<span class="lineNum"> 586 </span> : * Returns the key comparison object out of which the %map was
+<span class="lineNum"> 587 </span> : * constructed.
+<span class="lineNum"> 588 </span> : */
+<span class="lineNum"> 589 </span> : key_compare
+<span class="lineNum"> 590 </span><span class="lineCov"> 3296 : key_comp() const</span>
+<span class="lineNum"> 591 </span><span class="lineCov"> 3296 : { return _M_t.key_comp(); }</span>
+<span class="lineNum"> 592 </span> :
+<span class="lineNum"> 593 </span> : /**
+<span class="lineNum"> 594 </span> : * Returns a value comparison object, built from the key comparison
+<span class="lineNum"> 595 </span> : * object out of which the %map was constructed.
+<span class="lineNum"> 596 </span> : */
+<span class="lineNum"> 597 </span> : value_compare
+<span class="lineNum"> 598 </span> : value_comp() const
+<span class="lineNum"> 599 </span> : { return value_compare(_M_t.key_comp()); }
+<span class="lineNum"> 600 </span> :
+<span class="lineNum"> 601 </span> : // [23.3.1.3] map operations
+<span class="lineNum"> 602 </span> : /**
+<span class="lineNum"> 603 </span> : * @brief Tries to locate an element in a %map.
+<span class="lineNum"> 604 </span> : * @param x Key of (key, value) %pair to be located.
+<span class="lineNum"> 605 </span> : * @return Iterator pointing to sought-after element, or end() if not
+<span class="lineNum"> 606 </span> : * found.
+<span class="lineNum"> 607 </span> : *
+<span class="lineNum"> 608 </span> : * This function takes a key and tries to locate the element with which
+<span class="lineNum"> 609 </span> : * the key matches. If successful the function returns an iterator
+<span class="lineNum"> 610 </span> : * pointing to the sought after %pair. If unsuccessful it returns the
+<span class="lineNum"> 611 </span> : * past-the-end ( @c end() ) iterator.
+<span class="lineNum"> 612 </span> : */
+<span class="lineNum"> 613 </span> : iterator
+<span class="lineNum"> 614 </span><span class="lineCov"> 50117 : find(const key_type&amp; __x)</span>
+<span class="lineNum"> 615 </span><span class="lineCov"> 50117 : { return _M_t.find(__x); }</span>
+<span class="lineNum"> 616 </span> :
+<span class="lineNum"> 617 </span> : /**
+<span class="lineNum"> 618 </span> : * @brief Tries to locate an element in a %map.
+<span class="lineNum"> 619 </span> : * @param x Key of (key, value) %pair to be located.
+<span class="lineNum"> 620 </span> : * @return Read-only (constant) iterator pointing to sought-after
+<span class="lineNum"> 621 </span> : * element, or end() if not found.
+<span class="lineNum"> 622 </span> : *
+<span class="lineNum"> 623 </span> : * This function takes a key and tries to locate the element with which
+<span class="lineNum"> 624 </span> : * the key matches. If successful the function returns a constant
+<span class="lineNum"> 625 </span> : * iterator pointing to the sought after %pair. If unsuccessful it
+<span class="lineNum"> 626 </span> : * returns the past-the-end ( @c end() ) iterator.
+<span class="lineNum"> 627 </span> : */
+<span class="lineNum"> 628 </span> : const_iterator
+<span class="lineNum"> 629 </span><span class="lineCov"> 3916 : find(const key_type&amp; __x) const</span>
+<span class="lineNum"> 630 </span><span class="lineCov"> 3916 : { return _M_t.find(__x); }</span>
+<span class="lineNum"> 631 </span> :
+<span class="lineNum"> 632 </span> : /**
+<span class="lineNum"> 633 </span> : * @brief Finds the number of elements with given key.
+<span class="lineNum"> 634 </span> : * @param x Key of (key, value) pairs to be located.
+<span class="lineNum"> 635 </span> : * @return Number of elements with specified key.
+<span class="lineNum"> 636 </span> : *
+<span class="lineNum"> 637 </span> : * This function only makes sense for multimaps; for map the result will
+<span class="lineNum"> 638 </span> : * either be 0 (not present) or 1 (present).
+<span class="lineNum"> 639 </span> : */
+<span class="lineNum"> 640 </span> : size_type
+<span class="lineNum"> 641 </span> : count(const key_type&amp; __x) const
+<span class="lineNum"> 642 </span> : { return _M_t.find(__x) == _M_t.end() ? 0 : 1; }
+<span class="lineNum"> 643 </span> :
+<span class="lineNum"> 644 </span> : /**
+<span class="lineNum"> 645 </span> : * @brief Finds the beginning of a subsequence matching given key.
+<span class="lineNum"> 646 </span> : * @param x Key of (key, value) pair to be located.
+<span class="lineNum"> 647 </span> : * @return Iterator pointing to first element equal to or greater
+<span class="lineNum"> 648 </span> : * than key, or end().
+<span class="lineNum"> 649 </span> : *
+<span class="lineNum"> 650 </span> : * This function returns the first element of a subsequence of elements
+<span class="lineNum"> 651 </span> : * that matches the given key. If unsuccessful it returns an iterator
+<span class="lineNum"> 652 </span> : * pointing to the first element that has a greater value than given key
+<span class="lineNum"> 653 </span> : * or end() if no such element exists.
+<span class="lineNum"> 654 </span> : */
+<span class="lineNum"> 655 </span> : iterator
+<span class="lineNum"> 656 </span><span class="lineCov"> 6297 : lower_bound(const key_type&amp; __x)</span>
+<span class="lineNum"> 657 </span><span class="lineCov"> 6297 : { return _M_t.lower_bound(__x); }</span>
+<span class="lineNum"> 658 </span> :
+<span class="lineNum"> 659 </span> : /**
+<span class="lineNum"> 660 </span> : * @brief Finds the beginning of a subsequence matching given key.
+<span class="lineNum"> 661 </span> : * @param x Key of (key, value) pair to be located.
+<span class="lineNum"> 662 </span> : * @return Read-only (constant) iterator pointing to first element
+<span class="lineNum"> 663 </span> : * equal to or greater than key, or end().
+<span class="lineNum"> 664 </span> : *
+<span class="lineNum"> 665 </span> : * This function returns the first element of a subsequence of elements
+<span class="lineNum"> 666 </span> : * that matches the given key. If unsuccessful it returns an iterator
+<span class="lineNum"> 667 </span> : * pointing to the first element that has a greater value than given key
+<span class="lineNum"> 668 </span> : * or end() if no such element exists.
+<span class="lineNum"> 669 </span> : */
+<span class="lineNum"> 670 </span> : const_iterator
+<span class="lineNum"> 671 </span> : lower_bound(const key_type&amp; __x) const
+<span class="lineNum"> 672 </span> : { return _M_t.lower_bound(__x); }
+<span class="lineNum"> 673 </span> :
+<span class="lineNum"> 674 </span> : /**
+<span class="lineNum"> 675 </span> : * @brief Finds the end of a subsequence matching given key.
+<span class="lineNum"> 676 </span> : * @param x Key of (key, value) pair to be located.
+<span class="lineNum"> 677 </span> : * @return Iterator pointing to the first element
+<span class="lineNum"> 678 </span> : * greater than key, or end().
+<span class="lineNum"> 679 </span> : */
+<span class="lineNum"> 680 </span> : iterator
+<span class="lineNum"> 681 </span> : upper_bound(const key_type&amp; __x)
+<span class="lineNum"> 682 </span> : { return _M_t.upper_bound(__x); }
+<span class="lineNum"> 683 </span> :
+<span class="lineNum"> 684 </span> : /**
+<span class="lineNum"> 685 </span> : * @brief Finds the end of a subsequence matching given key.
+<span class="lineNum"> 686 </span> : * @param x Key of (key, value) pair to be located.
+<span class="lineNum"> 687 </span> : * @return Read-only (constant) iterator pointing to first iterator
+<span class="lineNum"> 688 </span> : * greater than key, or end().
+<span class="lineNum"> 689 </span> : */
+<span class="lineNum"> 690 </span> : const_iterator
+<span class="lineNum"> 691 </span> : upper_bound(const key_type&amp; __x) const
+<span class="lineNum"> 692 </span> : { return _M_t.upper_bound(__x); }
+<span class="lineNum"> 693 </span> :
+<span class="lineNum"> 694 </span> : /**
+<span class="lineNum"> 695 </span> : * @brief Finds a subsequence matching given key.
+<span class="lineNum"> 696 </span> : * @param x Key of (key, value) pairs to be located.
+<span class="lineNum"> 697 </span> : * @return Pair of iterators that possibly points to the subsequence
+<span class="lineNum"> 698 </span> : * matching given key.
+<span class="lineNum"> 699 </span> : *
+<span class="lineNum"> 700 </span> : * This function is equivalent to
+<span class="lineNum"> 701 </span> : * @code
+<span class="lineNum"> 702 </span> : * std::make_pair(c.lower_bound(val),
+<span class="lineNum"> 703 </span> : * c.upper_bound(val))
+<span class="lineNum"> 704 </span> : * @endcode
+<span class="lineNum"> 705 </span> : * (but is faster than making the calls separately).
+<span class="lineNum"> 706 </span> : *
+<span class="lineNum"> 707 </span> : * This function probably only makes sense for multimaps.
+<span class="lineNum"> 708 </span> : */
+<span class="lineNum"> 709 </span> : std::pair&lt;iterator, iterator&gt;
+<span class="lineNum"> 710 </span> : equal_range(const key_type&amp; __x)
+<span class="lineNum"> 711 </span> : { return _M_t.equal_range(__x); }
+<span class="lineNum"> 712 </span> :
+<span class="lineNum"> 713 </span> : /**
+<span class="lineNum"> 714 </span> : * @brief Finds a subsequence matching given key.
+<span class="lineNum"> 715 </span> : * @param x Key of (key, value) pairs to be located.
+<span class="lineNum"> 716 </span> : * @return Pair of read-only (constant) iterators that possibly points
+<span class="lineNum"> 717 </span> : * to the subsequence matching given key.
+<span class="lineNum"> 718 </span> : *
+<span class="lineNum"> 719 </span> : * This function is equivalent to
+<span class="lineNum"> 720 </span> : * @code
+<span class="lineNum"> 721 </span> : * std::make_pair(c.lower_bound(val),
+<span class="lineNum"> 722 </span> : * c.upper_bound(val))
+<span class="lineNum"> 723 </span> : * @endcode
+<span class="lineNum"> 724 </span> : * (but is faster than making the calls separately).
+<span class="lineNum"> 725 </span> : *
+<span class="lineNum"> 726 </span> : * This function probably only makes sense for multimaps.
+<span class="lineNum"> 727 </span> : */
+<span class="lineNum"> 728 </span> : std::pair&lt;const_iterator, const_iterator&gt;
+<span class="lineNum"> 729 </span> : equal_range(const key_type&amp; __x) const
+<span class="lineNum"> 730 </span> : { return _M_t.equal_range(__x); }
+<span class="lineNum"> 731 </span> :
+<span class="lineNum"> 732 </span> : template&lt;typename _K1, typename _T1, typename _C1, typename _A1&gt;
+<span class="lineNum"> 733 </span> : friend bool
+<span class="lineNum"> 734 </span> : operator==(const map&lt;_K1, _T1, _C1, _A1&gt;&amp;,
+<span class="lineNum"> 735 </span> : const map&lt;_K1, _T1, _C1, _A1&gt;&amp;);
+<span class="lineNum"> 736 </span> :
+<span class="lineNum"> 737 </span> : template&lt;typename _K1, typename _T1, typename _C1, typename _A1&gt;
+<span class="lineNum"> 738 </span> : friend bool
+<span class="lineNum"> 739 </span> : operator&lt;(const map&lt;_K1, _T1, _C1, _A1&gt;&amp;,
+<span class="lineNum"> 740 </span> : const map&lt;_K1, _T1, _C1, _A1&gt;&amp;);
+<span class="lineNum"> 741 </span> : };
+<span class="lineNum"> 742 </span> :
+<span class="lineNum"> 743 </span> : /**
+<span class="lineNum"> 744 </span> : * @brief Map equality comparison.
+<span class="lineNum"> 745 </span> : * @param x A %map.
+<span class="lineNum"> 746 </span> : * @param y A %map of the same type as @a x.
+<span class="lineNum"> 747 </span> : * @return True iff the size and elements of the maps are equal.
+<span class="lineNum"> 748 </span> : *
+<span class="lineNum"> 749 </span> : * This is an equivalence relation. It is linear in the size of the
+<span class="lineNum"> 750 </span> : * maps. Maps are considered equivalent if their sizes are equal,
+<span class="lineNum"> 751 </span> : * and if corresponding elements compare equal.
+<span class="lineNum"> 752 </span> : */
+<span class="lineNum"> 753 </span> : template&lt;typename _Key, typename _Tp, typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 754 </span> : inline bool
+<span class="lineNum"> 755 </span> : operator==(const map&lt;_Key, _Tp, _Compare, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 756 </span> : const map&lt;_Key, _Tp, _Compare, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 757 </span> : { return __x._M_t == __y._M_t; }
+<span class="lineNum"> 758 </span> :
+<span class="lineNum"> 759 </span> : /**
+<span class="lineNum"> 760 </span> : * @brief Map ordering relation.
+<span class="lineNum"> 761 </span> : * @param x A %map.
+<span class="lineNum"> 762 </span> : * @param y A %map of the same type as @a x.
+<span class="lineNum"> 763 </span> : * @return True iff @a x is lexicographically less than @a y.
+<span class="lineNum"> 764 </span> : *
+<span class="lineNum"> 765 </span> : * This is a total ordering relation. It is linear in the size of the
+<span class="lineNum"> 766 </span> : * maps. The elements must be comparable with @c &lt;.
+<span class="lineNum"> 767 </span> : *
+<span class="lineNum"> 768 </span> : * See std::lexicographical_compare() for how the determination is made.
+<span class="lineNum"> 769 </span> : */
+<span class="lineNum"> 770 </span> : template&lt;typename _Key, typename _Tp, typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 771 </span> : inline bool
+<span class="lineNum"> 772 </span> : operator&lt;(const map&lt;_Key, _Tp, _Compare, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 773 </span> : const map&lt;_Key, _Tp, _Compare, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 774 </span> : { return __x._M_t &lt; __y._M_t; }
+<span class="lineNum"> 775 </span> :
+<span class="lineNum"> 776 </span> : /// Based on operator==
+<span class="lineNum"> 777 </span> : template&lt;typename _Key, typename _Tp, typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 778 </span> : inline bool
+<span class="lineNum"> 779 </span> : operator!=(const map&lt;_Key, _Tp, _Compare, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 780 </span> : const map&lt;_Key, _Tp, _Compare, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 781 </span> : { return !(__x == __y); }
+<span class="lineNum"> 782 </span> :
+<span class="lineNum"> 783 </span> : /// Based on operator&lt;
+<span class="lineNum"> 784 </span> : template&lt;typename _Key, typename _Tp, typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 785 </span> : inline bool
+<span class="lineNum"> 786 </span> : operator&gt;(const map&lt;_Key, _Tp, _Compare, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 787 </span> : const map&lt;_Key, _Tp, _Compare, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 788 </span> : { return __y &lt; __x; }
+<span class="lineNum"> 789 </span> :
+<span class="lineNum"> 790 </span> : /// Based on operator&lt;
+<span class="lineNum"> 791 </span> : template&lt;typename _Key, typename _Tp, typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 792 </span> : inline bool
+<span class="lineNum"> 793 </span> : operator&lt;=(const map&lt;_Key, _Tp, _Compare, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 794 </span> : const map&lt;_Key, _Tp, _Compare, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 795 </span> : { return !(__y &lt; __x); }
+<span class="lineNum"> 796 </span> :
+<span class="lineNum"> 797 </span> : /// Based on operator&lt;
+<span class="lineNum"> 798 </span> : template&lt;typename _Key, typename _Tp, typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 799 </span> : inline bool
+<span class="lineNum"> 800 </span> : operator&gt;=(const map&lt;_Key, _Tp, _Compare, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 801 </span> : const map&lt;_Key, _Tp, _Compare, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 802 </span> : { return !(__x &lt; __y); }
+<span class="lineNum"> 803 </span> :
+<span class="lineNum"> 804 </span> : /// See std::map::swap().
+<span class="lineNum"> 805 </span> : template&lt;typename _Key, typename _Tp, typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 806 </span> : inline void
+<span class="lineNum"> 807 </span> : swap(map&lt;_Key, _Tp, _Compare, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 808 </span> : map&lt;_Key, _Tp, _Compare, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 809 </span> : { __x.swap(__y); }
+<span class="lineNum"> 810 </span> :
+<span class="lineNum"> 811 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 812 </span> : template&lt;typename _Key, typename _Tp, typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 813 </span> : inline void
+<span class="lineNum"> 814 </span> : swap(map&lt;_Key, _Tp, _Compare, _Alloc&gt;&amp;&amp; __x,
+<span class="lineNum"> 815 </span> : map&lt;_Key, _Tp, _Compare, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 816 </span> : { __x.swap(__y); }
+<span class="lineNum"> 817 </span> :
+<span class="lineNum"> 818 </span> : template&lt;typename _Key, typename _Tp, typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 819 </span> : inline void
+<span class="lineNum"> 820 </span> : swap(map&lt;_Key, _Tp, _Compare, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 821 </span> : map&lt;_Key, _Tp, _Compare, _Alloc&gt;&amp;&amp; __y)
+<span class="lineNum"> 822 </span> : { __x.swap(__y); }
+<span class="lineNum"> 823 </span> : #endif
+<span class="lineNum"> 824 </span> :
+<span class="lineNum"> 825 </span> : _GLIBCXX_END_NESTED_NAMESPACE
+<span class="lineNum"> 826 </span> :
+<span class="lineNum"> 827 </span> : #endif /* _STL_MAP_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/stl_move.h.gcov.html b/rep/usr/include/c++/4.3/bits/stl_move.h.gcov.html
new file mode 100644
index 0000000..93e7633
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/stl_move.h.gcov.html
@@ -0,0 +1,159 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/stl_move.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - stl_move.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">5</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">5</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Move, forward and identity for C++0x + swap -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2007 Free Software Foundation, Inc.
+<span class="lineNum"> 4 </span> : //
+<span class="lineNum"> 5 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 6 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 7 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 8 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 9 </span> : // any later version.
+<span class="lineNum"> 10 </span> :
+<span class="lineNum"> 11 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 12 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 13 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 14 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 15 </span> :
+<span class="lineNum"> 16 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 17 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 18 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 19 </span> : // USA.
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 22 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 23 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 24 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 25 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 26 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 27 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 28 </span> : // the GNU General Public License.
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : /** @file stl_move.h
+<span class="lineNum"> 31 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 32 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 33 </span> : */
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : #ifndef _STL_MOVE_H
+<span class="lineNum"> 36 </span> : #define _STL_MOVE_H 1
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : #include &lt;bits/c++config.h&gt;
+<span class="lineNum"> 39 </span> : #include &lt;bits/concept_check.h&gt;
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 42 </span> : #include &lt;type_traits&gt;
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> : // 20.2.2, forward/move
+<span class="lineNum"> 47 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 48 </span> : struct identity
+<span class="lineNum"> 49 </span> : {
+<span class="lineNum"> 50 </span> : typedef _Tp type;
+<span class="lineNum"> 51 </span> : };
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 54 </span> : inline _Tp&amp;&amp;
+<span class="lineNum"> 55 </span> : forward(typename std::identity&lt;_Tp&gt;::type&amp;&amp; __t)
+<span class="lineNum"> 56 </span> : { return __t; }
+<span class="lineNum"> 57 </span> :
+<span class="lineNum"> 58 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 59 </span> : inline typename std::remove_reference&lt;_Tp&gt;::type&amp;&amp;
+<span class="lineNum"> 60 </span> : move(_Tp&amp;&amp; __t)
+<span class="lineNum"> 61 </span> : { return __t; }
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : #define _GLIBCXX_MOVE(_Tp) std::move(_Tp)
+<span class="lineNum"> 66 </span> : #else
+<span class="lineNum"> 67 </span> : #define _GLIBCXX_MOVE(_Tp) (_Tp)
+<span class="lineNum"> 68 </span> : #endif
+<span class="lineNum"> 69 </span> :
+<span class="lineNum"> 70 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span> : /**
+<span class="lineNum"> 73 </span> : * @brief Swaps two values.
+<span class="lineNum"> 74 </span> : * @param a A thing of arbitrary type.
+<span class="lineNum"> 75 </span> : * @param b Another thing of arbitrary type.
+<span class="lineNum"> 76 </span> : * @return Nothing.
+<span class="lineNum"> 77 </span> : */
+<span class="lineNum"> 78 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 79 </span> : inline void
+<span class="lineNum"> 80 </span><span class="lineCov"> 7080 : swap(_Tp&amp; __a, _Tp&amp; __b)</span>
+<span class="lineNum"> 81 </span> : {
+<span class="lineNum"> 82 </span> : // concept requirements
+<span class="lineNum"> 83 </span> : __glibcxx_function_requires(_SGIAssignableConcept&lt;_Tp&gt;)
+<span class="lineNum"> 84 </span> :
+<span class="lineNum"> 85 </span><span class="lineCov"> 7080 : _Tp __tmp = _GLIBCXX_MOVE(__a);</span>
+<span class="lineNum"> 86 </span><span class="lineCov"> 7080 : __a = _GLIBCXX_MOVE(__b);</span>
+<span class="lineNum"> 87 </span><span class="lineCov"> 7080 : __b = _GLIBCXX_MOVE(__tmp);</span>
+<span class="lineNum"> 88 </span><span class="lineCov"> 7080 : }</span>
+<span class="lineNum"> 89 </span> :
+<span class="lineNum"> 90 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 91 </span> :
+<span class="lineNum"> 92 </span> : #endif /* _STL_MOVE_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/stl_pair.h.gcov.html b/rep/usr/include/c++/4.3/bits/stl_pair.h.gcov.html
new file mode 100644
index 0000000..455afe5
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/stl_pair.h.gcov.html
@@ -0,0 +1,331 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/stl_pair.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - stl_pair.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">9</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">9</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Pair implementation -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 18 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 19 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 20 </span> : // USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /*
+<span class="lineNum"> 32 </span> : *
+<span class="lineNum"> 33 </span> : * Copyright (c) 1994
+<span class="lineNum"> 34 </span> : * Hewlett-Packard Company
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 37 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 38 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 39 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 40 </span> : * in supporting documentation. Hewlett-Packard Company makes no
+<span class="lineNum"> 41 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 42 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 43 </span> : *
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * Copyright (c) 1996,1997
+<span class="lineNum"> 46 </span> : * Silicon Graphics Computer Systems, Inc.
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 49 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 50 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 51 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 52 </span> : * in supporting documentation. Silicon Graphics makes no
+<span class="lineNum"> 53 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 54 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 55 </span> : */
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /** @file stl_pair.h
+<span class="lineNum"> 58 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 59 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 60 </span> : */
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : #ifndef _STL_PAIR_H
+<span class="lineNum"> 63 </span> : #define _STL_PAIR_H 1
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : #include &lt;bits/stl_move.h&gt; // for std::move / std::forward, std::decay, and
+<span class="lineNum"> 66 </span> : // std::swap
+<span class="lineNum"> 67 </span> :
+<span class="lineNum"> 68 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 69 </span> :
+<span class="lineNum"> 70 </span> : /// pair holds two objects of arbitrary type.
+<span class="lineNum"> 71 </span> : template&lt;class _T1, class _T2&gt;
+<span class="lineNum"> 72 </span> : struct pair
+<span class="lineNum"> 73 </span><span class="lineCov"> 814163 : {</span>
+<span class="lineNum"> 74 </span> : typedef _T1 first_type; ///&lt; @c first_type is the first bound type
+<span class="lineNum"> 75 </span> : typedef _T2 second_type; ///&lt; @c second_type is the second bound type
+<span class="lineNum"> 76 </span> :
+<span class="lineNum"> 77 </span> : _T1 first; ///&lt; @c first is a copy of the first object
+<span class="lineNum"> 78 </span> : _T2 second; ///&lt; @c second is a copy of the second object
+<span class="lineNum"> 79 </span> :
+<span class="lineNum"> 80 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 81 </span> : // 265. std::pair::pair() effects overly restrictive
+<span class="lineNum"> 82 </span> : /** The default constructor creates @c first and @c second using their
+<span class="lineNum"> 83 </span> : * respective default constructors. */
+<span class="lineNum"> 84 </span><span class="lineCov"> 19 : pair()</span>
+<span class="lineNum"> 85 </span><span class="lineCov"> 19 : : first(), second() { }</span>
+<span class="lineNum"> 86 </span> :
+<span class="lineNum"> 87 </span> : /** Two objects may be passed to a @c pair constructor to be copied. */
+<span class="lineNum"> 88 </span><span class="lineCov"> 3562241 : pair(const _T1&amp; __a, const _T2&amp; __b)</span>
+<span class="lineNum"> 89 </span><span class="lineCov"> 3562241 : : first(__a), second(__b) { }</span>
+<span class="lineNum"> 90 </span> :
+<span class="lineNum"> 91 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 92 </span> : template&lt;class _U1, class _U2&gt;
+<span class="lineNum"> 93 </span> : pair(_U1&amp;&amp; __x, _U2&amp;&amp; __y)
+<span class="lineNum"> 94 </span> : : first(std::forward&lt;_U1&gt;(__x)),
+<span class="lineNum"> 95 </span> : second(std::forward&lt;_U2&gt;(__y)) { }
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span> : pair(pair&amp;&amp; __p)
+<span class="lineNum"> 98 </span> : : first(std::move(__p.first)),
+<span class="lineNum"> 99 </span> : second(std::move(__p.second)) { }
+<span class="lineNum"> 100 </span> : #endif
+<span class="lineNum"> 101 </span> :
+<span class="lineNum"> 102 </span> : /** There is also a templated copy ctor for the @c pair class itself. */
+<span class="lineNum"> 103 </span> : template&lt;class _U1, class _U2&gt;
+<span class="lineNum"> 104 </span><span class="lineCov"> 101375 : pair(const pair&lt;_U1, _U2&gt;&amp; __p)</span>
+<span class="lineNum"> 105 </span> : : first(__p.first),
+<span class="lineNum"> 106 </span><span class="lineCov"> 101375 : second(__p.second) { }</span>
+<span class="lineNum"> 107 </span> :
+<span class="lineNum"> 108 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 109 </span> : template&lt;class _U1, class _U2&gt;
+<span class="lineNum"> 110 </span> : pair(pair&lt;_U1, _U2&gt;&amp;&amp; __p)
+<span class="lineNum"> 111 </span> : : first(std::move(__p.first)),
+<span class="lineNum"> 112 </span> : second(std::move(__p.second)) { }
+<span class="lineNum"> 113 </span> :
+<span class="lineNum"> 114 </span> : // http://gcc.gnu.org/ml/libstdc++/2007-08/msg00052.html
+<span class="lineNum"> 115 </span> : template&lt;class _U1, class _Arg0, class... _Args&gt;
+<span class="lineNum"> 116 </span> : pair(_U1&amp;&amp; __x, _Arg0&amp;&amp; __arg0, _Args&amp;&amp;... __args)
+<span class="lineNum"> 117 </span> : : first(std::forward&lt;_U1&gt;(__x)),
+<span class="lineNum"> 118 </span> : second(std::forward&lt;_Arg0&gt;(__arg0),
+<span class="lineNum"> 119 </span> : std::forward&lt;_Args&gt;(__args)...) { }
+<span class="lineNum"> 120 </span> :
+<span class="lineNum"> 121 </span> : pair&amp;
+<span class="lineNum"> 122 </span> : operator=(pair&amp;&amp; __p)
+<span class="lineNum"> 123 </span> : {
+<span class="lineNum"> 124 </span> : first = std::move(__p.first);
+<span class="lineNum"> 125 </span> : second = std::move(__p.second);
+<span class="lineNum"> 126 </span> : return *this;
+<span class="lineNum"> 127 </span> : }
+<span class="lineNum"> 128 </span> :
+<span class="lineNum"> 129 </span> : template&lt;class _U1, class _U2&gt;
+<span class="lineNum"> 130 </span> : pair&amp;
+<span class="lineNum"> 131 </span> : operator=(pair&lt;_U1, _U2&gt;&amp;&amp; __p)
+<span class="lineNum"> 132 </span> : {
+<span class="lineNum"> 133 </span> : first = std::move(__p.first);
+<span class="lineNum"> 134 </span> : second = std::move(__p.second);
+<span class="lineNum"> 135 </span> : return *this;
+<span class="lineNum"> 136 </span> : }
+<span class="lineNum"> 137 </span> :
+<span class="lineNum"> 138 </span> : void
+<span class="lineNum"> 139 </span> : swap(pair&amp;&amp; __p)
+<span class="lineNum"> 140 </span> : {
+<span class="lineNum"> 141 </span> : using std::swap;
+<span class="lineNum"> 142 </span> : swap(first, __p.first);
+<span class="lineNum"> 143 </span> : swap(second, __p.second);
+<span class="lineNum"> 144 </span> : }
+<span class="lineNum"> 145 </span> : #endif
+<span class="lineNum"> 146 </span> : };
+<span class="lineNum"> 147 </span> :
+<span class="lineNum"> 148 </span> : /// Two pairs of the same type are equal iff their members are equal.
+<span class="lineNum"> 149 </span> : template&lt;class _T1, class _T2&gt;
+<span class="lineNum"> 150 </span> : inline bool
+<span class="lineNum"> 151 </span> : operator==(const pair&lt;_T1, _T2&gt;&amp; __x, const pair&lt;_T1, _T2&gt;&amp; __y)
+<span class="lineNum"> 152 </span> : { return __x.first == __y.first &amp;&amp; __x.second == __y.second; }
+<span class="lineNum"> 153 </span> :
+<span class="lineNum"> 154 </span> : /// &lt;http://gcc.gnu.org/onlinedocs/libstdc++/20_util/howto.html#pairlt&gt;
+<span class="lineNum"> 155 </span> : template&lt;class _T1, class _T2&gt;
+<span class="lineNum"> 156 </span> : inline bool
+<span class="lineNum"> 157 </span> : operator&lt;(const pair&lt;_T1, _T2&gt;&amp; __x, const pair&lt;_T1, _T2&gt;&amp; __y)
+<span class="lineNum"> 158 </span> : { return __x.first &lt; __y.first
+<span class="lineNum"> 159 </span> : || (!(__y.first &lt; __x.first) &amp;&amp; __x.second &lt; __y.second); }
+<span class="lineNum"> 160 </span> :
+<span class="lineNum"> 161 </span> : /// Uses @c operator== to find the result.
+<span class="lineNum"> 162 </span> : template&lt;class _T1, class _T2&gt;
+<span class="lineNum"> 163 </span> : inline bool
+<span class="lineNum"> 164 </span> : operator!=(const pair&lt;_T1, _T2&gt;&amp; __x, const pair&lt;_T1, _T2&gt;&amp; __y)
+<span class="lineNum"> 165 </span> : { return !(__x == __y); }
+<span class="lineNum"> 166 </span> :
+<span class="lineNum"> 167 </span> : /// Uses @c operator&lt; to find the result.
+<span class="lineNum"> 168 </span> : template&lt;class _T1, class _T2&gt;
+<span class="lineNum"> 169 </span> : inline bool
+<span class="lineNum"> 170 </span> : operator&gt;(const pair&lt;_T1, _T2&gt;&amp; __x, const pair&lt;_T1, _T2&gt;&amp; __y)
+<span class="lineNum"> 171 </span> : { return __y &lt; __x; }
+<span class="lineNum"> 172 </span> :
+<span class="lineNum"> 173 </span> : /// Uses @c operator&lt; to find the result.
+<span class="lineNum"> 174 </span> : template&lt;class _T1, class _T2&gt;
+<span class="lineNum"> 175 </span> : inline bool
+<span class="lineNum"> 176 </span> : operator&lt;=(const pair&lt;_T1, _T2&gt;&amp; __x, const pair&lt;_T1, _T2&gt;&amp; __y)
+<span class="lineNum"> 177 </span> : { return !(__y &lt; __x); }
+<span class="lineNum"> 178 </span> :
+<span class="lineNum"> 179 </span> : /// Uses @c operator&lt; to find the result.
+<span class="lineNum"> 180 </span> : template&lt;class _T1, class _T2&gt;
+<span class="lineNum"> 181 </span> : inline bool
+<span class="lineNum"> 182 </span> : operator&gt;=(const pair&lt;_T1, _T2&gt;&amp; __x, const pair&lt;_T1, _T2&gt;&amp; __y)
+<span class="lineNum"> 183 </span> : { return !(__x &lt; __y); }
+<span class="lineNum"> 184 </span> :
+<span class="lineNum"> 185 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 186 </span> : /// See std::pair::swap().
+<span class="lineNum"> 187 </span> : template&lt;class _T1, class _T2&gt;
+<span class="lineNum"> 188 </span> : inline void
+<span class="lineNum"> 189 </span> : swap(pair&lt;_T1, _T2&gt;&amp; __x, pair&lt;_T1, _T2&gt;&amp; __y)
+<span class="lineNum"> 190 </span> : { __x.swap(__y); }
+<span class="lineNum"> 191 </span> :
+<span class="lineNum"> 192 </span> : template&lt;class _T1, class _T2&gt;
+<span class="lineNum"> 193 </span> : inline void
+<span class="lineNum"> 194 </span> : swap(pair&lt;_T1, _T2&gt;&amp;&amp; __x, pair&lt;_T1, _T2&gt;&amp; __y)
+<span class="lineNum"> 195 </span> : { __x.swap(__y); }
+<span class="lineNum"> 196 </span> :
+<span class="lineNum"> 197 </span> : template&lt;class _T1, class _T2&gt;
+<span class="lineNum"> 198 </span> : inline void
+<span class="lineNum"> 199 </span> : swap(pair&lt;_T1, _T2&gt;&amp; __x, pair&lt;_T1, _T2&gt;&amp;&amp; __y)
+<span class="lineNum"> 200 </span> : { __x.swap(__y); }
+<span class="lineNum"> 201 </span> : #endif
+<span class="lineNum"> 202 </span> :
+<span class="lineNum"> 203 </span> : /**
+<span class="lineNum"> 204 </span> : * @brief A convenience wrapper for creating a pair from two objects.
+<span class="lineNum"> 205 </span> : * @param x The first object.
+<span class="lineNum"> 206 </span> : * @param y The second object.
+<span class="lineNum"> 207 </span> : * @return A newly-constructed pair&lt;&gt; object of the appropriate type.
+<span class="lineNum"> 208 </span> : *
+<span class="lineNum"> 209 </span> : * The standard requires that the objects be passed by reference-to-const,
+<span class="lineNum"> 210 </span> : * but LWG issue #181 says they should be passed by const value. We follow
+<span class="lineNum"> 211 </span> : * the LWG by default.
+<span class="lineNum"> 212 </span> : */
+<span class="lineNum"> 213 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 214 </span> : // 181. make_pair() unintended behavior
+<span class="lineNum"> 215 </span> : #ifndef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 216 </span> : template&lt;class _T1, class _T2&gt;
+<span class="lineNum"> 217 </span> : inline pair&lt;_T1, _T2&gt;
+<span class="lineNum"> 218 </span><span class="lineCov"> 474889 : make_pair(_T1 __x, _T2 __y)</span>
+<span class="lineNum"> 219 </span><span class="lineCov"> 474889 : { return pair&lt;_T1, _T2&gt;(__x, __y); }</span>
+<span class="lineNum"> 220 </span> : #else
+<span class="lineNum"> 221 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 222 </span> : class reference_wrapper;
+<span class="lineNum"> 223 </span> :
+<span class="lineNum"> 224 </span> : // Helper which adds a reference to a type when given a reference_wrapper
+<span class="lineNum"> 225 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 226 </span> : struct __strip_reference_wrapper
+<span class="lineNum"> 227 </span> : {
+<span class="lineNum"> 228 </span> : typedef _Tp __type;
+<span class="lineNum"> 229 </span> : };
+<span class="lineNum"> 230 </span> :
+<span class="lineNum"> 231 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 232 </span> : struct __strip_reference_wrapper&lt;reference_wrapper&lt;_Tp&gt; &gt;
+<span class="lineNum"> 233 </span> : {
+<span class="lineNum"> 234 </span> : typedef _Tp&amp; __type;
+<span class="lineNum"> 235 </span> : };
+<span class="lineNum"> 236 </span> :
+<span class="lineNum"> 237 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 238 </span> : struct __strip_reference_wrapper&lt;const reference_wrapper&lt;_Tp&gt; &gt;
+<span class="lineNum"> 239 </span> : {
+<span class="lineNum"> 240 </span> : typedef _Tp&amp; __type;
+<span class="lineNum"> 241 </span> : };
+<span class="lineNum"> 242 </span> :
+<span class="lineNum"> 243 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 244 </span> : struct __decay_and_strip
+<span class="lineNum"> 245 </span> : {
+<span class="lineNum"> 246 </span> : typedef typename __strip_reference_wrapper&lt;
+<span class="lineNum"> 247 </span> : typename decay&lt;_Tp&gt;::type&gt;::__type __type;
+<span class="lineNum"> 248 </span> : };
+<span class="lineNum"> 249 </span> :
+<span class="lineNum"> 250 </span> : // NB: DR 706.
+<span class="lineNum"> 251 </span> : template&lt;class _T1, class _T2&gt;
+<span class="lineNum"> 252 </span> : inline pair&lt;typename __decay_and_strip&lt;_T1&gt;::__type,
+<span class="lineNum"> 253 </span> : typename __decay_and_strip&lt;_T2&gt;::__type&gt;
+<span class="lineNum"> 254 </span> : make_pair(_T1&amp;&amp; __x, _T2&amp;&amp; __y)
+<span class="lineNum"> 255 </span> : {
+<span class="lineNum"> 256 </span> : return pair&lt;typename __decay_and_strip&lt;_T1&gt;::__type,
+<span class="lineNum"> 257 </span> : typename __decay_and_strip&lt;_T2&gt;::__type&gt;
+<span class="lineNum"> 258 </span> : (std::forward&lt;_T1&gt;(__x), std::forward&lt;_T2&gt;(__y));
+<span class="lineNum"> 259 </span> : }
+<span class="lineNum"> 260 </span> : #endif
+<span class="lineNum"> 261 </span> :
+<span class="lineNum"> 262 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 263 </span> :
+<span class="lineNum"> 264 </span> : #endif /* _STL_PAIR_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/stl_set.h.gcov.html b/rep/usr/include/c++/4.3/bits/stl_set.h.gcov.html
new file mode 100644
index 0000000..3398416
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/stl_set.h.gcov.html
@@ -0,0 +1,731 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/stl_set.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - stl_set.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">33</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">33</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Set implementation -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 18 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 19 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 20 </span> : // USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /*
+<span class="lineNum"> 32 </span> : *
+<span class="lineNum"> 33 </span> : * Copyright (c) 1994
+<span class="lineNum"> 34 </span> : * Hewlett-Packard Company
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 37 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 38 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 39 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 40 </span> : * in supporting documentation. Hewlett-Packard Company makes no
+<span class="lineNum"> 41 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 42 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 43 </span> : *
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * Copyright (c) 1996,1997
+<span class="lineNum"> 46 </span> : * Silicon Graphics Computer Systems, Inc.
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 49 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 50 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 51 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 52 </span> : * in supporting documentation. Silicon Graphics makes no
+<span class="lineNum"> 53 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 54 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 55 </span> : */
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /** @file stl_set.h
+<span class="lineNum"> 58 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 59 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 60 </span> : */
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : #ifndef _STL_SET_H
+<span class="lineNum"> 63 </span> : #define _STL_SET_H 1
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : #include &lt;bits/concept_check.h&gt;
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span> : /**
+<span class="lineNum"> 70 </span> : * @brief A standard container made up of unique keys, which can be
+<span class="lineNum"> 71 </span> : * retrieved in logarithmic time.
+<span class="lineNum"> 72 </span> : *
+<span class="lineNum"> 73 </span> : * @ingroup Containers
+<span class="lineNum"> 74 </span> : * @ingroup Assoc_containers
+<span class="lineNum"> 75 </span> : *
+<span class="lineNum"> 76 </span> : * Meets the requirements of a &lt;a href=&quot;tables.html#65&quot;&gt;container&lt;/a&gt;, a
+<span class="lineNum"> 77 </span> : * &lt;a href=&quot;tables.html#66&quot;&gt;reversible container&lt;/a&gt;, and an
+<span class="lineNum"> 78 </span> : * &lt;a href=&quot;tables.html#69&quot;&gt;associative container&lt;/a&gt; (using unique keys).
+<span class="lineNum"> 79 </span> : *
+<span class="lineNum"> 80 </span> : * Sets support bidirectional iterators.
+<span class="lineNum"> 81 </span> : *
+<span class="lineNum"> 82 </span> : * @param Key Type of key objects.
+<span class="lineNum"> 83 </span> : * @param Compare Comparison function object type, defaults to less&lt;Key&gt;.
+<span class="lineNum"> 84 </span> : * @param Alloc Allocator type, defaults to allocator&lt;Key&gt;.
+<span class="lineNum"> 85 </span> : *
+<span class="lineNum"> 86 </span> : * The private tree data is declared exactly the same way for set and
+<span class="lineNum"> 87 </span> : * multiset; the distinction is made entirely in how the tree functions are
+<span class="lineNum"> 88 </span> : * called (*_unique versus *_equal, same as the standard).
+<span class="lineNum"> 89 </span> : */
+<span class="lineNum"> 90 </span> : template&lt;typename _Key, typename _Compare = std::less&lt;_Key&gt;,
+<span class="lineNum"> 91 </span> : typename _Alloc = std::allocator&lt;_Key&gt; &gt;
+<span class="lineNum"> 92 </span> : class set
+<span class="lineNum"> 93 </span><span class="lineCov"> 1308625 : {</span>
+<span class="lineNum"> 94 </span> : // concept requirements
+<span class="lineNum"> 95 </span> : typedef typename _Alloc::value_type _Alloc_value_type;
+<span class="lineNum"> 96 </span> : __glibcxx_class_requires(_Key, _SGIAssignableConcept)
+<span class="lineNum"> 97 </span> : __glibcxx_class_requires4(_Compare, bool, _Key, _Key,
+<span class="lineNum"> 98 </span> : _BinaryFunctionConcept)
+<span class="lineNum"> 99 </span> : __glibcxx_class_requires2(_Key, _Alloc_value_type, _SameTypeConcept)
+<span class="lineNum"> 100 </span> :
+<span class="lineNum"> 101 </span> : public:
+<span class="lineNum"> 102 </span> : // typedefs:
+<span class="lineNum"> 103 </span> : //@{
+<span class="lineNum"> 104 </span> : /// Public typedefs.
+<span class="lineNum"> 105 </span> : typedef _Key key_type;
+<span class="lineNum"> 106 </span> : typedef _Key value_type;
+<span class="lineNum"> 107 </span> : typedef _Compare key_compare;
+<span class="lineNum"> 108 </span> : typedef _Compare value_compare;
+<span class="lineNum"> 109 </span> : typedef _Alloc allocator_type;
+<span class="lineNum"> 110 </span> : //@}
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span> : private:
+<span class="lineNum"> 113 </span> : typedef typename _Alloc::template rebind&lt;_Key&gt;::other _Key_alloc_type;
+<span class="lineNum"> 114 </span> :
+<span class="lineNum"> 115 </span> : typedef _Rb_tree&lt;key_type, value_type, _Identity&lt;value_type&gt;,
+<span class="lineNum"> 116 </span> : key_compare, _Key_alloc_type&gt; _Rep_type;
+<span class="lineNum"> 117 </span> : _Rep_type _M_t; // Red-black tree representing set.
+<span class="lineNum"> 118 </span> :
+<span class="lineNum"> 119 </span> : public:
+<span class="lineNum"> 120 </span> : //@{
+<span class="lineNum"> 121 </span> : /// Iterator-related typedefs.
+<span class="lineNum"> 122 </span> : typedef typename _Key_alloc_type::pointer pointer;
+<span class="lineNum"> 123 </span> : typedef typename _Key_alloc_type::const_pointer const_pointer;
+<span class="lineNum"> 124 </span> : typedef typename _Key_alloc_type::reference reference;
+<span class="lineNum"> 125 </span> : typedef typename _Key_alloc_type::const_reference const_reference;
+<span class="lineNum"> 126 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 127 </span> : // DR 103. set::iterator is required to be modifiable,
+<span class="lineNum"> 128 </span> : // but this allows modification of keys.
+<span class="lineNum"> 129 </span> : typedef typename _Rep_type::const_iterator iterator;
+<span class="lineNum"> 130 </span> : typedef typename _Rep_type::const_iterator const_iterator;
+<span class="lineNum"> 131 </span> : typedef typename _Rep_type::const_reverse_iterator reverse_iterator;
+<span class="lineNum"> 132 </span> : typedef typename _Rep_type::const_reverse_iterator const_reverse_iterator;
+<span class="lineNum"> 133 </span> : typedef typename _Rep_type::size_type size_type;
+<span class="lineNum"> 134 </span> : typedef typename _Rep_type::difference_type difference_type;
+<span class="lineNum"> 135 </span> : //@}
+<span class="lineNum"> 136 </span> :
+<span class="lineNum"> 137 </span> : // allocation/deallocation
+<span class="lineNum"> 138 </span> : /**
+<span class="lineNum"> 139 </span> : * @brief Default constructor creates no elements.
+<span class="lineNum"> 140 </span> : */
+<span class="lineNum"> 141 </span><span class="lineCov"> 277740 : set()</span>
+<span class="lineNum"> 142 </span><span class="lineCov"> 277740 : : _M_t() { }</span>
+<span class="lineNum"> 143 </span> :
+<span class="lineNum"> 144 </span> : /**
+<span class="lineNum"> 145 </span> : * @brief Creates a %set with no elements.
+<span class="lineNum"> 146 </span> : * @param comp Comparator to use.
+<span class="lineNum"> 147 </span> : * @param a An allocator object.
+<span class="lineNum"> 148 </span> : */
+<span class="lineNum"> 149 </span> : explicit
+<span class="lineNum"> 150 </span> : set(const _Compare&amp; __comp,
+<span class="lineNum"> 151 </span> : const allocator_type&amp; __a = allocator_type())
+<span class="lineNum"> 152 </span> : : _M_t(__comp, __a) { }
+<span class="lineNum"> 153 </span> :
+<span class="lineNum"> 154 </span> : /**
+<span class="lineNum"> 155 </span> : * @brief Builds a %set from a range.
+<span class="lineNum"> 156 </span> : * @param first An input iterator.
+<span class="lineNum"> 157 </span> : * @param last An input iterator.
+<span class="lineNum"> 158 </span> : *
+<span class="lineNum"> 159 </span> : * Create a %set consisting of copies of the elements from [first,last).
+<span class="lineNum"> 160 </span> : * This is linear in N if the range is already sorted, and NlogN
+<span class="lineNum"> 161 </span> : * otherwise (where N is distance(first,last)).
+<span class="lineNum"> 162 </span> : */
+<span class="lineNum"> 163 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 164 </span> : set(_InputIterator __first, _InputIterator __last)
+<span class="lineNum"> 165 </span> : : _M_t()
+<span class="lineNum"> 166 </span> : { _M_t._M_insert_unique(__first, __last); }
+<span class="lineNum"> 167 </span> :
+<span class="lineNum"> 168 </span> : /**
+<span class="lineNum"> 169 </span> : * @brief Builds a %set from a range.
+<span class="lineNum"> 170 </span> : * @param first An input iterator.
+<span class="lineNum"> 171 </span> : * @param last An input iterator.
+<span class="lineNum"> 172 </span> : * @param comp A comparison functor.
+<span class="lineNum"> 173 </span> : * @param a An allocator object.
+<span class="lineNum"> 174 </span> : *
+<span class="lineNum"> 175 </span> : * Create a %set consisting of copies of the elements from [first,last).
+<span class="lineNum"> 176 </span> : * This is linear in N if the range is already sorted, and NlogN
+<span class="lineNum"> 177 </span> : * otherwise (where N is distance(first,last)).
+<span class="lineNum"> 178 </span> : */
+<span class="lineNum"> 179 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 180 </span> : set(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 181 </span> : const _Compare&amp; __comp,
+<span class="lineNum"> 182 </span> : const allocator_type&amp; __a = allocator_type())
+<span class="lineNum"> 183 </span> : : _M_t(__comp, __a)
+<span class="lineNum"> 184 </span> : { _M_t._M_insert_unique(__first, __last); }
+<span class="lineNum"> 185 </span> :
+<span class="lineNum"> 186 </span> : /**
+<span class="lineNum"> 187 </span> : * @brief %Set copy constructor.
+<span class="lineNum"> 188 </span> : * @param x A %set of identical element and allocator types.
+<span class="lineNum"> 189 </span> : *
+<span class="lineNum"> 190 </span> : * The newly-created %set uses a copy of the allocation object used
+<span class="lineNum"> 191 </span> : * by @a x.
+<span class="lineNum"> 192 </span> : */
+<span class="lineNum"> 193 </span><span class="lineCov"> 925151 : set(const set&amp; __x)</span>
+<span class="lineNum"> 194 </span><span class="lineCov"> 925151 : : _M_t(__x._M_t) { }</span>
+<span class="lineNum"> 195 </span> :
+<span class="lineNum"> 196 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 197 </span> : /**
+<span class="lineNum"> 198 </span> : * @brief %Set move constructor
+<span class="lineNum"> 199 </span> : * @param x A %set of identical element and allocator types.
+<span class="lineNum"> 200 </span> : *
+<span class="lineNum"> 201 </span> : * The newly-created %set contains the exact contents of @a x.
+<span class="lineNum"> 202 </span> : * The contents of @a x are a valid, but unspecified %set.
+<span class="lineNum"> 203 </span> : */
+<span class="lineNum"> 204 </span> : set(set&amp;&amp; __x)
+<span class="lineNum"> 205 </span> : : _M_t(std::forward&lt;_Rep_type&gt;(__x._M_t)) { }
+<span class="lineNum"> 206 </span> : #endif
+<span class="lineNum"> 207 </span> :
+<span class="lineNum"> 208 </span> : /**
+<span class="lineNum"> 209 </span> : * @brief %Set assignment operator.
+<span class="lineNum"> 210 </span> : * @param x A %set of identical element and allocator types.
+<span class="lineNum"> 211 </span> : *
+<span class="lineNum"> 212 </span> : * All the elements of @a x are copied, but unlike the copy constructor,
+<span class="lineNum"> 213 </span> : * the allocator object is not copied.
+<span class="lineNum"> 214 </span> : */
+<span class="lineNum"> 215 </span> : set&amp;
+<span class="lineNum"> 216 </span><span class="lineCov"> 80 : operator=(const set&amp; __x)</span>
+<span class="lineNum"> 217 </span> : {
+<span class="lineNum"> 218 </span><span class="lineCov"> 80 : _M_t = __x._M_t;</span>
+<span class="lineNum"> 219 </span><span class="lineCov"> 80 : return *this;</span>
+<span class="lineNum"> 220 </span> : }
+<span class="lineNum"> 221 </span> :
+<span class="lineNum"> 222 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 223 </span> : /**
+<span class="lineNum"> 224 </span> : * @brief %Set move assignment operator.
+<span class="lineNum"> 225 </span> : * @param x A %set of identical element and allocator types.
+<span class="lineNum"> 226 </span> : *
+<span class="lineNum"> 227 </span> : * The contents of @a x are moved into this %set (without copying).
+<span class="lineNum"> 228 </span> : * @a x is a valid, but unspecified %set.
+<span class="lineNum"> 229 </span> : */
+<span class="lineNum"> 230 </span> : set&amp;
+<span class="lineNum"> 231 </span> : operator=(set&amp;&amp; __x)
+<span class="lineNum"> 232 </span> : {
+<span class="lineNum"> 233 </span> : // NB: DR 675.
+<span class="lineNum"> 234 </span> : this-&gt;clear();
+<span class="lineNum"> 235 </span> : this-&gt;swap(__x);
+<span class="lineNum"> 236 </span> : return *this;
+<span class="lineNum"> 237 </span> : }
+<span class="lineNum"> 238 </span> : #endif
+<span class="lineNum"> 239 </span> :
+<span class="lineNum"> 240 </span> : // accessors:
+<span class="lineNum"> 241 </span> :
+<span class="lineNum"> 242 </span> : /// Returns the comparison object with which the %set was constructed.
+<span class="lineNum"> 243 </span> : key_compare
+<span class="lineNum"> 244 </span> : key_comp() const
+<span class="lineNum"> 245 </span> : { return _M_t.key_comp(); }
+<span class="lineNum"> 246 </span> : /// Returns the comparison object with which the %set was constructed.
+<span class="lineNum"> 247 </span> : value_compare
+<span class="lineNum"> 248 </span> : value_comp() const
+<span class="lineNum"> 249 </span> : { return _M_t.key_comp(); }
+<span class="lineNum"> 250 </span> : /// Returns the allocator object with which the %set was constructed.
+<span class="lineNum"> 251 </span> : allocator_type
+<span class="lineNum"> 252 </span> : get_allocator() const
+<span class="lineNum"> 253 </span> : { return _M_t.get_allocator(); }
+<span class="lineNum"> 254 </span> :
+<span class="lineNum"> 255 </span> : /**
+<span class="lineNum"> 256 </span> : * Returns a read-only (constant) iterator that points to the first
+<span class="lineNum"> 257 </span> : * element in the %set. Iteration is done in ascending order according
+<span class="lineNum"> 258 </span> : * to the keys.
+<span class="lineNum"> 259 </span> : */
+<span class="lineNum"> 260 </span> : iterator
+<span class="lineNum"> 261 </span><span class="lineCov"> 468023 : begin() const</span>
+<span class="lineNum"> 262 </span><span class="lineCov"> 468023 : { return _M_t.begin(); }</span>
+<span class="lineNum"> 263 </span> :
+<span class="lineNum"> 264 </span> : /**
+<span class="lineNum"> 265 </span> : * Returns a read-only (constant) iterator that points one past the last
+<span class="lineNum"> 266 </span> : * element in the %set. Iteration is done in ascending order according
+<span class="lineNum"> 267 </span> : * to the keys.
+<span class="lineNum"> 268 </span> : */
+<span class="lineNum"> 269 </span> : iterator
+<span class="lineNum"> 270 </span><span class="lineCov"> 1576796 : end() const</span>
+<span class="lineNum"> 271 </span><span class="lineCov"> 1576796 : { return _M_t.end(); }</span>
+<span class="lineNum"> 272 </span> :
+<span class="lineNum"> 273 </span> : /**
+<span class="lineNum"> 274 </span> : * Returns a read-only (constant) iterator that points to the last
+<span class="lineNum"> 275 </span> : * element in the %set. Iteration is done in descending order according
+<span class="lineNum"> 276 </span> : * to the keys.
+<span class="lineNum"> 277 </span> : */
+<span class="lineNum"> 278 </span> : reverse_iterator
+<span class="lineNum"> 279 </span> : rbegin() const
+<span class="lineNum"> 280 </span> : { return _M_t.rbegin(); }
+<span class="lineNum"> 281 </span> :
+<span class="lineNum"> 282 </span> : /**
+<span class="lineNum"> 283 </span> : * Returns a read-only (constant) reverse iterator that points to the
+<span class="lineNum"> 284 </span> : * last pair in the %set. Iteration is done in descending order
+<span class="lineNum"> 285 </span> : * according to the keys.
+<span class="lineNum"> 286 </span> : */
+<span class="lineNum"> 287 </span> : reverse_iterator
+<span class="lineNum"> 288 </span> : rend() const
+<span class="lineNum"> 289 </span> : { return _M_t.rend(); }
+<span class="lineNum"> 290 </span> :
+<span class="lineNum"> 291 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 292 </span> : /**
+<span class="lineNum"> 293 </span> : * Returns a read-only (constant) iterator that points to the first
+<span class="lineNum"> 294 </span> : * element in the %set. Iteration is done in ascending order according
+<span class="lineNum"> 295 </span> : * to the keys.
+<span class="lineNum"> 296 </span> : */
+<span class="lineNum"> 297 </span> : iterator
+<span class="lineNum"> 298 </span> : cbegin() const
+<span class="lineNum"> 299 </span> : { return _M_t.begin(); }
+<span class="lineNum"> 300 </span> :
+<span class="lineNum"> 301 </span> : /**
+<span class="lineNum"> 302 </span> : * Returns a read-only (constant) iterator that points one past the last
+<span class="lineNum"> 303 </span> : * element in the %set. Iteration is done in ascending order according
+<span class="lineNum"> 304 </span> : * to the keys.
+<span class="lineNum"> 305 </span> : */
+<span class="lineNum"> 306 </span> : iterator
+<span class="lineNum"> 307 </span> : cend() const
+<span class="lineNum"> 308 </span> : { return _M_t.end(); }
+<span class="lineNum"> 309 </span> :
+<span class="lineNum"> 310 </span> : /**
+<span class="lineNum"> 311 </span> : * Returns a read-only (constant) iterator that points to the last
+<span class="lineNum"> 312 </span> : * element in the %set. Iteration is done in descending order according
+<span class="lineNum"> 313 </span> : * to the keys.
+<span class="lineNum"> 314 </span> : */
+<span class="lineNum"> 315 </span> : reverse_iterator
+<span class="lineNum"> 316 </span> : crbegin() const
+<span class="lineNum"> 317 </span> : { return _M_t.rbegin(); }
+<span class="lineNum"> 318 </span> :
+<span class="lineNum"> 319 </span> : /**
+<span class="lineNum"> 320 </span> : * Returns a read-only (constant) reverse iterator that points to the
+<span class="lineNum"> 321 </span> : * last pair in the %set. Iteration is done in descending order
+<span class="lineNum"> 322 </span> : * according to the keys.
+<span class="lineNum"> 323 </span> : */
+<span class="lineNum"> 324 </span> : reverse_iterator
+<span class="lineNum"> 325 </span> : crend() const
+<span class="lineNum"> 326 </span> : { return _M_t.rend(); }
+<span class="lineNum"> 327 </span> : #endif
+<span class="lineNum"> 328 </span> :
+<span class="lineNum"> 329 </span> : /// Returns true if the %set is empty.
+<span class="lineNum"> 330 </span> : bool
+<span class="lineNum"> 331 </span><span class="lineCov"> 338386 : empty() const</span>
+<span class="lineNum"> 332 </span><span class="lineCov"> 338386 : { return _M_t.empty(); }</span>
+<span class="lineNum"> 333 </span> :
+<span class="lineNum"> 334 </span> : /// Returns the size of the %set.
+<span class="lineNum"> 335 </span> : size_type
+<span class="lineNum"> 336 </span><span class="lineCov"> 84631 : size() const</span>
+<span class="lineNum"> 337 </span><span class="lineCov"> 84631 : { return _M_t.size(); }</span>
+<span class="lineNum"> 338 </span> :
+<span class="lineNum"> 339 </span> : /// Returns the maximum size of the %set.
+<span class="lineNum"> 340 </span> : size_type
+<span class="lineNum"> 341 </span> : max_size() const
+<span class="lineNum"> 342 </span> : { return _M_t.max_size(); }
+<span class="lineNum"> 343 </span> :
+<span class="lineNum"> 344 </span> : /**
+<span class="lineNum"> 345 </span> : * @brief Swaps data with another %set.
+<span class="lineNum"> 346 </span> : * @param x A %set of the same element and allocator types.
+<span class="lineNum"> 347 </span> : *
+<span class="lineNum"> 348 </span> : * This exchanges the elements between two sets in constant time.
+<span class="lineNum"> 349 </span> : * (It is only swapping a pointer, an integer, and an instance of
+<span class="lineNum"> 350 </span> : * the @c Compare type (which itself is often stateless and empty), so it
+<span class="lineNum"> 351 </span> : * should be quite fast.)
+<span class="lineNum"> 352 </span> : * Note that the global std::swap() function is specialized such that
+<span class="lineNum"> 353 </span> : * std::swap(s1,s2) will feed to this function.
+<span class="lineNum"> 354 </span> : */
+<span class="lineNum"> 355 </span> : void
+<span class="lineNum"> 356 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 357 </span> : swap(set&amp;&amp; __x)
+<span class="lineNum"> 358 </span> : #else
+<span class="lineNum"> 359 </span> : swap(set&amp; __x)
+<span class="lineNum"> 360 </span> : #endif
+<span class="lineNum"> 361 </span> : { _M_t.swap(__x._M_t); }
+<span class="lineNum"> 362 </span> :
+<span class="lineNum"> 363 </span> : // insert/erase
+<span class="lineNum"> 364 </span> : /**
+<span class="lineNum"> 365 </span> : * @brief Attempts to insert an element into the %set.
+<span class="lineNum"> 366 </span> : * @param x Element to be inserted.
+<span class="lineNum"> 367 </span> : * @return A pair, of which the first element is an iterator that points
+<span class="lineNum"> 368 </span> : * to the possibly inserted element, and the second is a bool
+<span class="lineNum"> 369 </span> : * that is true if the element was actually inserted.
+<span class="lineNum"> 370 </span> : *
+<span class="lineNum"> 371 </span> : * This function attempts to insert an element into the %set. A %set
+<span class="lineNum"> 372 </span> : * relies on unique keys and thus an element is only inserted if it is
+<span class="lineNum"> 373 </span> : * not already present in the %set.
+<span class="lineNum"> 374 </span> : *
+<span class="lineNum"> 375 </span> : * Insertion requires logarithmic time.
+<span class="lineNum"> 376 </span> : */
+<span class="lineNum"> 377 </span> : std::pair&lt;iterator, bool&gt;
+<span class="lineNum"> 378 </span><span class="lineCov"> 1422360 : insert(const value_type&amp; __x)</span>
+<span class="lineNum"> 379 </span> : {
+<span class="lineNum"> 380 </span> : std::pair&lt;typename _Rep_type::iterator, bool&gt; __p =
+<span class="lineNum"> 381 </span><span class="lineCov"> 1422360 : _M_t._M_insert_unique(__x);</span>
+<span class="lineNum"> 382 </span><span class="lineCov"> 1422360 : return std::pair&lt;iterator, bool&gt;(__p.first, __p.second);</span>
+<span class="lineNum"> 383 </span> : }
+<span class="lineNum"> 384 </span> :
+<span class="lineNum"> 385 </span> : /**
+<span class="lineNum"> 386 </span> : * @brief Attempts to insert an element into the %set.
+<span class="lineNum"> 387 </span> : * @param position An iterator that serves as a hint as to where the
+<span class="lineNum"> 388 </span> : * element should be inserted.
+<span class="lineNum"> 389 </span> : * @param x Element to be inserted.
+<span class="lineNum"> 390 </span> : * @return An iterator that points to the element with key of @a x (may
+<span class="lineNum"> 391 </span> : * or may not be the element passed in).
+<span class="lineNum"> 392 </span> : *
+<span class="lineNum"> 393 </span> : * This function is not concerned about whether the insertion took place,
+<span class="lineNum"> 394 </span> : * and thus does not return a boolean like the single-argument insert()
+<span class="lineNum"> 395 </span> : * does. Note that the first parameter is only a hint and can
+<span class="lineNum"> 396 </span> : * potentially improve the performance of the insertion process. A bad
+<span class="lineNum"> 397 </span> : * hint would cause no gains in efficiency.
+<span class="lineNum"> 398 </span> : *
+<span class="lineNum"> 399 </span> : * See http://gcc.gnu.org/onlinedocs/libstdc++/23_containers/howto.html#4
+<span class="lineNum"> 400 </span> : * for more on &quot;hinting&quot;.
+<span class="lineNum"> 401 </span> : *
+<span class="lineNum"> 402 </span> : * Insertion requires logarithmic time (if the hint is not taken).
+<span class="lineNum"> 403 </span> : */
+<span class="lineNum"> 404 </span> : iterator
+<span class="lineNum"> 405 </span><span class="lineCov"> 107613 : insert(iterator __position, const value_type&amp; __x)</span>
+<span class="lineNum"> 406 </span><span class="lineCov"> 107613 : { return _M_t._M_insert_unique_(__position, __x); }</span>
+<span class="lineNum"> 407 </span> :
+<span class="lineNum"> 408 </span> : /**
+<span class="lineNum"> 409 </span> : * @brief A template function that attempts to insert a range of elements.
+<span class="lineNum"> 410 </span> : * @param first Iterator pointing to the start of the range to be
+<span class="lineNum"> 411 </span> : * inserted.
+<span class="lineNum"> 412 </span> : * @param last Iterator pointing to the end of the range.
+<span class="lineNum"> 413 </span> : *
+<span class="lineNum"> 414 </span> : * Complexity similar to that of the range constructor.
+<span class="lineNum"> 415 </span> : */
+<span class="lineNum"> 416 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 417 </span> : void
+<span class="lineNum"> 418 </span> : insert(_InputIterator __first, _InputIterator __last)
+<span class="lineNum"> 419 </span> : { _M_t._M_insert_unique(__first, __last); }
+<span class="lineNum"> 420 </span> :
+<span class="lineNum"> 421 </span> : /**
+<span class="lineNum"> 422 </span> : * @brief Erases an element from a %set.
+<span class="lineNum"> 423 </span> : * @param position An iterator pointing to the element to be erased.
+<span class="lineNum"> 424 </span> : *
+<span class="lineNum"> 425 </span> : * This function erases an element, pointed to by the given iterator,
+<span class="lineNum"> 426 </span> : * from a %set. Note that this function only erases the element, and
+<span class="lineNum"> 427 </span> : * that if the element is itself a pointer, the pointed-to memory is not
+<span class="lineNum"> 428 </span> : * touched in any way. Managing the pointer is the user's responsibility.
+<span class="lineNum"> 429 </span> : */
+<span class="lineNum"> 430 </span> : void
+<span class="lineNum"> 431 </span><span class="lineCov"> 129 : erase(iterator __position)</span>
+<span class="lineNum"> 432 </span><span class="lineCov"> 129 : { _M_t.erase(__position); }</span>
+<span class="lineNum"> 433 </span> :
+<span class="lineNum"> 434 </span> : /**
+<span class="lineNum"> 435 </span> : * @brief Erases elements according to the provided key.
+<span class="lineNum"> 436 </span> : * @param x Key of element to be erased.
+<span class="lineNum"> 437 </span> : * @return The number of elements erased.
+<span class="lineNum"> 438 </span> : *
+<span class="lineNum"> 439 </span> : * This function erases all the elements located by the given key from
+<span class="lineNum"> 440 </span> : * a %set.
+<span class="lineNum"> 441 </span> : * Note that this function only erases the element, and that if
+<span class="lineNum"> 442 </span> : * the element is itself a pointer, the pointed-to memory is not touched
+<span class="lineNum"> 443 </span> : * in any way. Managing the pointer is the user's responsibility.
+<span class="lineNum"> 444 </span> : */
+<span class="lineNum"> 445 </span> : size_type
+<span class="lineNum"> 446 </span><span class="lineCov"> 9 : erase(const key_type&amp; __x)</span>
+<span class="lineNum"> 447 </span><span class="lineCov"> 9 : { return _M_t.erase(__x); }</span>
+<span class="lineNum"> 448 </span> :
+<span class="lineNum"> 449 </span> : /**
+<span class="lineNum"> 450 </span> : * @brief Erases a [first,last) range of elements from a %set.
+<span class="lineNum"> 451 </span> : * @param first Iterator pointing to the start of the range to be
+<span class="lineNum"> 452 </span> : * erased.
+<span class="lineNum"> 453 </span> : * @param last Iterator pointing to the end of the range to be erased.
+<span class="lineNum"> 454 </span> : *
+<span class="lineNum"> 455 </span> : * This function erases a sequence of elements from a %set.
+<span class="lineNum"> 456 </span> : * Note that this function only erases the element, and that if
+<span class="lineNum"> 457 </span> : * the element is itself a pointer, the pointed-to memory is not touched
+<span class="lineNum"> 458 </span> : * in any way. Managing the pointer is the user's responsibility.
+<span class="lineNum"> 459 </span> : */
+<span class="lineNum"> 460 </span> : void
+<span class="lineNum"> 461 </span> : erase(iterator __first, iterator __last)
+<span class="lineNum"> 462 </span> : { _M_t.erase(__first, __last); }
+<span class="lineNum"> 463 </span> :
+<span class="lineNum"> 464 </span> : /**
+<span class="lineNum"> 465 </span> : * Erases all elements in a %set. Note that this function only erases
+<span class="lineNum"> 466 </span> : * the elements, and that if the elements themselves are pointers, the
+<span class="lineNum"> 467 </span> : * pointed-to memory is not touched in any way. Managing the pointer is
+<span class="lineNum"> 468 </span> : * the user's responsibility.
+<span class="lineNum"> 469 </span> : */
+<span class="lineNum"> 470 </span> : void
+<span class="lineNum"> 471 </span><span class="lineCov"> 84600 : clear()</span>
+<span class="lineNum"> 472 </span><span class="lineCov"> 84600 : { _M_t.clear(); }</span>
+<span class="lineNum"> 473 </span> :
+<span class="lineNum"> 474 </span> : // set operations:
+<span class="lineNum"> 475 </span> :
+<span class="lineNum"> 476 </span> : /**
+<span class="lineNum"> 477 </span> : * @brief Finds the number of elements.
+<span class="lineNum"> 478 </span> : * @param x Element to located.
+<span class="lineNum"> 479 </span> : * @return Number of elements with specified key.
+<span class="lineNum"> 480 </span> : *
+<span class="lineNum"> 481 </span> : * This function only makes sense for multisets; for set the result will
+<span class="lineNum"> 482 </span> : * either be 0 (not present) or 1 (present).
+<span class="lineNum"> 483 </span> : */
+<span class="lineNum"> 484 </span> : size_type
+<span class="lineNum"> 485 </span> : count(const key_type&amp; __x) const
+<span class="lineNum"> 486 </span> : { return _M_t.find(__x) == _M_t.end() ? 0 : 1; }
+<span class="lineNum"> 487 </span> :
+<span class="lineNum"> 488 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 489 </span> : // 214. set::find() missing const overload
+<span class="lineNum"> 490 </span> : //@{
+<span class="lineNum"> 491 </span> : /**
+<span class="lineNum"> 492 </span> : * @brief Tries to locate an element in a %set.
+<span class="lineNum"> 493 </span> : * @param x Element to be located.
+<span class="lineNum"> 494 </span> : * @return Iterator pointing to sought-after element, or end() if not
+<span class="lineNum"> 495 </span> : * found.
+<span class="lineNum"> 496 </span> : *
+<span class="lineNum"> 497 </span> : * This function takes a key and tries to locate the element with which
+<span class="lineNum"> 498 </span> : * the key matches. If successful the function returns an iterator
+<span class="lineNum"> 499 </span> : * pointing to the sought after element. If unsuccessful it returns the
+<span class="lineNum"> 500 </span> : * past-the-end ( @c end() ) iterator.
+<span class="lineNum"> 501 </span> : */
+<span class="lineNum"> 502 </span> : iterator
+<span class="lineNum"> 503 </span><span class="lineCov"> 39 : find(const key_type&amp; __x)</span>
+<span class="lineNum"> 504 </span><span class="lineCov"> 39 : { return _M_t.find(__x); }</span>
+<span class="lineNum"> 505 </span> :
+<span class="lineNum"> 506 </span> : const_iterator
+<span class="lineNum"> 507 </span><span class="lineCov"> 16 : find(const key_type&amp; __x) const</span>
+<span class="lineNum"> 508 </span><span class="lineCov"> 16 : { return _M_t.find(__x); }</span>
+<span class="lineNum"> 509 </span> : //@}
+<span class="lineNum"> 510 </span> :
+<span class="lineNum"> 511 </span> : //@{
+<span class="lineNum"> 512 </span> : /**
+<span class="lineNum"> 513 </span> : * @brief Finds the beginning of a subsequence matching given key.
+<span class="lineNum"> 514 </span> : * @param x Key to be located.
+<span class="lineNum"> 515 </span> : * @return Iterator pointing to first element equal to or greater
+<span class="lineNum"> 516 </span> : * than key, or end().
+<span class="lineNum"> 517 </span> : *
+<span class="lineNum"> 518 </span> : * This function returns the first element of a subsequence of elements
+<span class="lineNum"> 519 </span> : * that matches the given key. If unsuccessful it returns an iterator
+<span class="lineNum"> 520 </span> : * pointing to the first element that has a greater value than given key
+<span class="lineNum"> 521 </span> : * or end() if no such element exists.
+<span class="lineNum"> 522 </span> : */
+<span class="lineNum"> 523 </span> : iterator
+<span class="lineNum"> 524 </span> : lower_bound(const key_type&amp; __x)
+<span class="lineNum"> 525 </span> : { return _M_t.lower_bound(__x); }
+<span class="lineNum"> 526 </span> :
+<span class="lineNum"> 527 </span> : const_iterator
+<span class="lineNum"> 528 </span> : lower_bound(const key_type&amp; __x) const
+<span class="lineNum"> 529 </span> : { return _M_t.lower_bound(__x); }
+<span class="lineNum"> 530 </span> : //@}
+<span class="lineNum"> 531 </span> :
+<span class="lineNum"> 532 </span> : //@{
+<span class="lineNum"> 533 </span> : /**
+<span class="lineNum"> 534 </span> : * @brief Finds the end of a subsequence matching given key.
+<span class="lineNum"> 535 </span> : * @param x Key to be located.
+<span class="lineNum"> 536 </span> : * @return Iterator pointing to the first element
+<span class="lineNum"> 537 </span> : * greater than key, or end().
+<span class="lineNum"> 538 </span> : */
+<span class="lineNum"> 539 </span> : iterator
+<span class="lineNum"> 540 </span> : upper_bound(const key_type&amp; __x)
+<span class="lineNum"> 541 </span> : { return _M_t.upper_bound(__x); }
+<span class="lineNum"> 542 </span> :
+<span class="lineNum"> 543 </span> : const_iterator
+<span class="lineNum"> 544 </span> : upper_bound(const key_type&amp; __x) const
+<span class="lineNum"> 545 </span> : { return _M_t.upper_bound(__x); }
+<span class="lineNum"> 546 </span> : //@}
+<span class="lineNum"> 547 </span> :
+<span class="lineNum"> 548 </span> : //@{
+<span class="lineNum"> 549 </span> : /**
+<span class="lineNum"> 550 </span> : * @brief Finds a subsequence matching given key.
+<span class="lineNum"> 551 </span> : * @param x Key to be located.
+<span class="lineNum"> 552 </span> : * @return Pair of iterators that possibly points to the subsequence
+<span class="lineNum"> 553 </span> : * matching given key.
+<span class="lineNum"> 554 </span> : *
+<span class="lineNum"> 555 </span> : * This function is equivalent to
+<span class="lineNum"> 556 </span> : * @code
+<span class="lineNum"> 557 </span> : * std::make_pair(c.lower_bound(val),
+<span class="lineNum"> 558 </span> : * c.upper_bound(val))
+<span class="lineNum"> 559 </span> : * @endcode
+<span class="lineNum"> 560 </span> : * (but is faster than making the calls separately).
+<span class="lineNum"> 561 </span> : *
+<span class="lineNum"> 562 </span> : * This function probably only makes sense for multisets.
+<span class="lineNum"> 563 </span> : */
+<span class="lineNum"> 564 </span> : std::pair&lt;iterator, iterator&gt;
+<span class="lineNum"> 565 </span> : equal_range(const key_type&amp; __x)
+<span class="lineNum"> 566 </span> : { return _M_t.equal_range(__x); }
+<span class="lineNum"> 567 </span> :
+<span class="lineNum"> 568 </span> : std::pair&lt;const_iterator, const_iterator&gt;
+<span class="lineNum"> 569 </span> : equal_range(const key_type&amp; __x) const
+<span class="lineNum"> 570 </span> : { return _M_t.equal_range(__x); }
+<span class="lineNum"> 571 </span> : //@}
+<span class="lineNum"> 572 </span> :
+<span class="lineNum"> 573 </span> : template&lt;typename _K1, typename _C1, typename _A1&gt;
+<span class="lineNum"> 574 </span> : friend bool
+<span class="lineNum"> 575 </span> : operator==(const set&lt;_K1, _C1, _A1&gt;&amp;, const set&lt;_K1, _C1, _A1&gt;&amp;);
+<span class="lineNum"> 576 </span> :
+<span class="lineNum"> 577 </span> : template&lt;typename _K1, typename _C1, typename _A1&gt;
+<span class="lineNum"> 578 </span> : friend bool
+<span class="lineNum"> 579 </span> : operator&lt;(const set&lt;_K1, _C1, _A1&gt;&amp;, const set&lt;_K1, _C1, _A1&gt;&amp;);
+<span class="lineNum"> 580 </span> : };
+<span class="lineNum"> 581 </span> :
+<span class="lineNum"> 582 </span> :
+<span class="lineNum"> 583 </span> : /**
+<span class="lineNum"> 584 </span> : * @brief Set equality comparison.
+<span class="lineNum"> 585 </span> : * @param x A %set.
+<span class="lineNum"> 586 </span> : * @param y A %set of the same type as @a x.
+<span class="lineNum"> 587 </span> : * @return True iff the size and elements of the sets are equal.
+<span class="lineNum"> 588 </span> : *
+<span class="lineNum"> 589 </span> : * This is an equivalence relation. It is linear in the size of the sets.
+<span class="lineNum"> 590 </span> : * Sets are considered equivalent if their sizes are equal, and if
+<span class="lineNum"> 591 </span> : * corresponding elements compare equal.
+<span class="lineNum"> 592 </span> : */
+<span class="lineNum"> 593 </span> : template&lt;typename _Key, typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 594 </span> : inline bool
+<span class="lineNum"> 595 </span> : operator==(const set&lt;_Key, _Compare, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 596 </span><span class="lineCov"> 4 : const set&lt;_Key, _Compare, _Alloc&gt;&amp; __y)</span>
+<span class="lineNum"> 597 </span><span class="lineCov"> 4 : { return __x._M_t == __y._M_t; }</span>
+<span class="lineNum"> 598 </span> :
+<span class="lineNum"> 599 </span> : /**
+<span class="lineNum"> 600 </span> : * @brief Set ordering relation.
+<span class="lineNum"> 601 </span> : * @param x A %set.
+<span class="lineNum"> 602 </span> : * @param y A %set of the same type as @a x.
+<span class="lineNum"> 603 </span> : * @return True iff @a x is lexicographically less than @a y.
+<span class="lineNum"> 604 </span> : *
+<span class="lineNum"> 605 </span> : * This is a total ordering relation. It is linear in the size of the
+<span class="lineNum"> 606 </span> : * maps. The elements must be comparable with @c &lt;.
+<span class="lineNum"> 607 </span> : *
+<span class="lineNum"> 608 </span> : * See std::lexicographical_compare() for how the determination is made.
+<span class="lineNum"> 609 </span> : */
+<span class="lineNum"> 610 </span> : template&lt;typename _Key, typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 611 </span> : inline bool
+<span class="lineNum"> 612 </span> : operator&lt;(const set&lt;_Key, _Compare, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 613 </span> : const set&lt;_Key, _Compare, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 614 </span> : { return __x._M_t &lt; __y._M_t; }
+<span class="lineNum"> 615 </span> :
+<span class="lineNum"> 616 </span> : /// Returns !(x == y).
+<span class="lineNum"> 617 </span> : template&lt;typename _Key, typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 618 </span> : inline bool
+<span class="lineNum"> 619 </span> : operator!=(const set&lt;_Key, _Compare, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 620 </span> : const set&lt;_Key, _Compare, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 621 </span> : { return !(__x == __y); }
+<span class="lineNum"> 622 </span> :
+<span class="lineNum"> 623 </span> : /// Returns y &lt; x.
+<span class="lineNum"> 624 </span> : template&lt;typename _Key, typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 625 </span> : inline bool
+<span class="lineNum"> 626 </span> : operator&gt;(const set&lt;_Key, _Compare, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 627 </span> : const set&lt;_Key, _Compare, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 628 </span> : { return __y &lt; __x; }
+<span class="lineNum"> 629 </span> :
+<span class="lineNum"> 630 </span> : /// Returns !(y &lt; x)
+<span class="lineNum"> 631 </span> : template&lt;typename _Key, typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 632 </span> : inline bool
+<span class="lineNum"> 633 </span> : operator&lt;=(const set&lt;_Key, _Compare, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 634 </span> : const set&lt;_Key, _Compare, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 635 </span> : { return !(__y &lt; __x); }
+<span class="lineNum"> 636 </span> :
+<span class="lineNum"> 637 </span> : /// Returns !(x &lt; y)
+<span class="lineNum"> 638 </span> : template&lt;typename _Key, typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 639 </span> : inline bool
+<span class="lineNum"> 640 </span> : operator&gt;=(const set&lt;_Key, _Compare, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 641 </span> : const set&lt;_Key, _Compare, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 642 </span> : { return !(__x &lt; __y); }
+<span class="lineNum"> 643 </span> :
+<span class="lineNum"> 644 </span> : /// See std::set::swap().
+<span class="lineNum"> 645 </span> : template&lt;typename _Key, typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 646 </span> : inline void
+<span class="lineNum"> 647 </span> : swap(set&lt;_Key, _Compare, _Alloc&gt;&amp; __x, set&lt;_Key, _Compare, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 648 </span> : { __x.swap(__y); }
+<span class="lineNum"> 649 </span> :
+<span class="lineNum"> 650 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 651 </span> : template&lt;typename _Key, typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 652 </span> : inline void
+<span class="lineNum"> 653 </span> : swap(set&lt;_Key, _Compare, _Alloc&gt;&amp;&amp; __x, set&lt;_Key, _Compare, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 654 </span> : { __x.swap(__y); }
+<span class="lineNum"> 655 </span> :
+<span class="lineNum"> 656 </span> : template&lt;typename _Key, typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 657 </span> : inline void
+<span class="lineNum"> 658 </span> : swap(set&lt;_Key, _Compare, _Alloc&gt;&amp; __x, set&lt;_Key, _Compare, _Alloc&gt;&amp;&amp; __y)
+<span class="lineNum"> 659 </span> : { __x.swap(__y); }
+<span class="lineNum"> 660 </span> : #endif
+<span class="lineNum"> 661 </span> :
+<span class="lineNum"> 662 </span> : _GLIBCXX_END_NESTED_NAMESPACE
+<span class="lineNum"> 663 </span> :
+<span class="lineNum"> 664 </span> : #endif /* _STL_SET_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/stl_stack.h.gcov.html b/rep/usr/include/c++/4.3/bits/stl_stack.h.gcov.html
new file mode 100644
index 0000000..d033bc3
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/stl_stack.h.gcov.html
@@ -0,0 +1,369 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/stl_stack.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - stl_stack.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">12</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">12</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Stack implementation -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 18 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 19 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 20 </span> : // USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /*
+<span class="lineNum"> 32 </span> : *
+<span class="lineNum"> 33 </span> : * Copyright (c) 1994
+<span class="lineNum"> 34 </span> : * Hewlett-Packard Company
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 37 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 38 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 39 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 40 </span> : * in supporting documentation. Hewlett-Packard Company makes no
+<span class="lineNum"> 41 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 42 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 43 </span> : *
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * Copyright (c) 1996,1997
+<span class="lineNum"> 46 </span> : * Silicon Graphics Computer Systems, Inc.
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 49 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 50 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 51 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 52 </span> : * in supporting documentation. Silicon Graphics makes no
+<span class="lineNum"> 53 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 54 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 55 </span> : */
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /** @file stl_stack.h
+<span class="lineNum"> 58 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 59 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 60 </span> : */
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : #ifndef _STL_STACK_H
+<span class="lineNum"> 63 </span> : #define _STL_STACK_H 1
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : #include &lt;bits/concept_check.h&gt;
+<span class="lineNum"> 66 </span> : #include &lt;debug/debug.h&gt;
+<span class="lineNum"> 67 </span> :
+<span class="lineNum"> 68 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 69 </span> :
+<span class="lineNum"> 70 </span> : /**
+<span class="lineNum"> 71 </span> : * @brief A standard container giving FILO behavior.
+<span class="lineNum"> 72 </span> : *
+<span class="lineNum"> 73 </span> : * @ingroup Containers
+<span class="lineNum"> 74 </span> : * @ingroup Sequences
+<span class="lineNum"> 75 </span> : *
+<span class="lineNum"> 76 </span> : * Meets many of the requirements of a
+<span class="lineNum"> 77 </span> : * &lt;a href=&quot;tables.html#65&quot;&gt;container&lt;/a&gt;,
+<span class="lineNum"> 78 </span> : * but does not define anything to do with iterators. Very few of the
+<span class="lineNum"> 79 </span> : * other standard container interfaces are defined.
+<span class="lineNum"> 80 </span> : *
+<span class="lineNum"> 81 </span> : * This is not a true container, but an @e adaptor. It holds
+<span class="lineNum"> 82 </span> : * another container, and provides a wrapper interface to that
+<span class="lineNum"> 83 </span> : * container. The wrapper is what enforces strict
+<span class="lineNum"> 84 </span> : * first-in-last-out %stack behavior.
+<span class="lineNum"> 85 </span> : *
+<span class="lineNum"> 86 </span> : * The second template parameter defines the type of the underlying
+<span class="lineNum"> 87 </span> : * sequence/container. It defaults to std::deque, but it can be
+<span class="lineNum"> 88 </span> : * any type that supports @c back, @c push_back, and @c pop_front,
+<span class="lineNum"> 89 </span> : * such as std::list, std::vector, or an appropriate user-defined
+<span class="lineNum"> 90 </span> : * type.
+<span class="lineNum"> 91 </span> : *
+<span class="lineNum"> 92 </span> : * Members not found in &quot;normal&quot; containers are @c container_type,
+<span class="lineNum"> 93 </span> : * which is a typedef for the second Sequence parameter, and @c
+<span class="lineNum"> 94 </span> : * push, @c pop, and @c top, which are standard %stack/FILO
+<span class="lineNum"> 95 </span> : * operations.
+<span class="lineNum"> 96 </span> : */
+<span class="lineNum"> 97 </span> : template&lt;typename _Tp, typename _Sequence = deque&lt;_Tp&gt; &gt;
+<span class="lineNum"> 98 </span> : class stack
+<span class="lineNum"> 99 </span><span class="lineCov"> 13 : {</span>
+<span class="lineNum"> 100 </span> : // concept requirements
+<span class="lineNum"> 101 </span> : typedef typename _Sequence::value_type _Sequence_value_type;
+<span class="lineNum"> 102 </span> : __glibcxx_class_requires(_Tp, _SGIAssignableConcept)
+<span class="lineNum"> 103 </span> : __glibcxx_class_requires(_Sequence, _BackInsertionSequenceConcept)
+<span class="lineNum"> 104 </span> : __glibcxx_class_requires2(_Tp, _Sequence_value_type, _SameTypeConcept)
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span> : template&lt;typename _Tp1, typename _Seq1&gt;
+<span class="lineNum"> 107 </span> : friend bool
+<span class="lineNum"> 108 </span> : operator==(const stack&lt;_Tp1, _Seq1&gt;&amp;, const stack&lt;_Tp1, _Seq1&gt;&amp;);
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span> : template&lt;typename _Tp1, typename _Seq1&gt;
+<span class="lineNum"> 111 </span> : friend bool
+<span class="lineNum"> 112 </span> : operator&lt;(const stack&lt;_Tp1, _Seq1&gt;&amp;, const stack&lt;_Tp1, _Seq1&gt;&amp;);
+<span class="lineNum"> 113 </span> :
+<span class="lineNum"> 114 </span> : public:
+<span class="lineNum"> 115 </span> : typedef typename _Sequence::value_type value_type;
+<span class="lineNum"> 116 </span> : typedef typename _Sequence::reference reference;
+<span class="lineNum"> 117 </span> : typedef typename _Sequence::const_reference const_reference;
+<span class="lineNum"> 118 </span> : typedef typename _Sequence::size_type size_type;
+<span class="lineNum"> 119 </span> : typedef _Sequence container_type;
+<span class="lineNum"> 120 </span> :
+<span class="lineNum"> 121 </span> : protected:
+<span class="lineNum"> 122 </span> : // See queue::c for notes on this name.
+<span class="lineNum"> 123 </span> : _Sequence c;
+<span class="lineNum"> 124 </span> :
+<span class="lineNum"> 125 </span> : public:
+<span class="lineNum"> 126 </span> : // XXX removed old def ctor, added def arg to this one to match 14882
+<span class="lineNum"> 127 </span> : /**
+<span class="lineNum"> 128 </span> : * @brief Default constructor creates no elements.
+<span class="lineNum"> 129 </span> : */
+<span class="lineNum"> 130 </span> : #ifndef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 131 </span> : explicit
+<span class="lineNum"> 132 </span><span class="lineCov"> 13 : stack(const _Sequence&amp; __c = _Sequence())</span>
+<span class="lineNum"> 133 </span><span class="lineCov"> 13 : : c(__c) { }</span>
+<span class="lineNum"> 134 </span> : #else
+<span class="lineNum"> 135 </span> : explicit
+<span class="lineNum"> 136 </span> : stack(const _Sequence&amp; __c)
+<span class="lineNum"> 137 </span> : : c(__c) { }
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> : explicit
+<span class="lineNum"> 140 </span> : stack(_Sequence&amp;&amp; __c = _Sequence())
+<span class="lineNum"> 141 </span> : : c(std::move(__c)) { }
+<span class="lineNum"> 142 </span> : #endif
+<span class="lineNum"> 143 </span> :
+<span class="lineNum"> 144 </span> : /**
+<span class="lineNum"> 145 </span> : * Returns true if the %stack is empty.
+<span class="lineNum"> 146 </span> : */
+<span class="lineNum"> 147 </span> : bool
+<span class="lineNum"> 148 </span><span class="lineCov"> 32 : empty() const</span>
+<span class="lineNum"> 149 </span><span class="lineCov"> 32 : { return c.empty(); }</span>
+<span class="lineNum"> 150 </span> :
+<span class="lineNum"> 151 </span> : /** Returns the number of elements in the %stack. */
+<span class="lineNum"> 152 </span> : size_type
+<span class="lineNum"> 153 </span> : size() const
+<span class="lineNum"> 154 </span> : { return c.size(); }
+<span class="lineNum"> 155 </span> :
+<span class="lineNum"> 156 </span> : /**
+<span class="lineNum"> 157 </span> : * Returns a read/write reference to the data at the first
+<span class="lineNum"> 158 </span> : * element of the %stack.
+<span class="lineNum"> 159 </span> : */
+<span class="lineNum"> 160 </span> : reference
+<span class="lineNum"> 161 </span><span class="lineCov"> 39 : top()</span>
+<span class="lineNum"> 162 </span> : {
+<span class="lineNum"> 163 </span> : __glibcxx_requires_nonempty();
+<span class="lineNum"> 164 </span><span class="lineCov"> 39 : return c.back();</span>
+<span class="lineNum"> 165 </span> : }
+<span class="lineNum"> 166 </span> :
+<span class="lineNum"> 167 </span> : /**
+<span class="lineNum"> 168 </span> : * Returns a read-only (constant) reference to the data at the first
+<span class="lineNum"> 169 </span> : * element of the %stack.
+<span class="lineNum"> 170 </span> : */
+<span class="lineNum"> 171 </span> : const_reference
+<span class="lineNum"> 172 </span> : top() const
+<span class="lineNum"> 173 </span> : {
+<span class="lineNum"> 174 </span> : __glibcxx_requires_nonempty();
+<span class="lineNum"> 175 </span> : return c.back();
+<span class="lineNum"> 176 </span> : }
+<span class="lineNum"> 177 </span> :
+<span class="lineNum"> 178 </span> : /**
+<span class="lineNum"> 179 </span> : * @brief Add data to the top of the %stack.
+<span class="lineNum"> 180 </span> : * @param x Data to be added.
+<span class="lineNum"> 181 </span> : *
+<span class="lineNum"> 182 </span> : * This is a typical %stack operation. The function creates an
+<span class="lineNum"> 183 </span> : * element at the top of the %stack and assigns the given data
+<span class="lineNum"> 184 </span> : * to it. The time complexity of the operation depends on the
+<span class="lineNum"> 185 </span> : * underlying sequence.
+<span class="lineNum"> 186 </span> : */
+<span class="lineNum"> 187 </span> : #ifndef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 188 </span> : void
+<span class="lineNum"> 189 </span><span class="lineCov"> 24 : push(const value_type&amp; __x)</span>
+<span class="lineNum"> 190 </span><span class="lineCov"> 24 : { c.push_back(__x); }</span>
+<span class="lineNum"> 191 </span> : #else
+<span class="lineNum"> 192 </span> : // NB: DR 756.
+<span class="lineNum"> 193 </span> : template&lt;typename... _Args&gt;
+<span class="lineNum"> 194 </span> : void
+<span class="lineNum"> 195 </span> : push(_Args&amp;&amp;... __args)
+<span class="lineNum"> 196 </span> : { c.push_back(std::forward&lt;_Args&gt;(__args)...); }
+<span class="lineNum"> 197 </span> : #endif
+<span class="lineNum"> 198 </span> :
+<span class="lineNum"> 199 </span> : /**
+<span class="lineNum"> 200 </span> : * @brief Removes first element.
+<span class="lineNum"> 201 </span> : *
+<span class="lineNum"> 202 </span> : * This is a typical %stack operation. It shrinks the %stack
+<span class="lineNum"> 203 </span> : * by one. The time complexity of the operation depends on the
+<span class="lineNum"> 204 </span> : * underlying sequence.
+<span class="lineNum"> 205 </span> : *
+<span class="lineNum"> 206 </span> : * Note that no data is returned, and if the first element's
+<span class="lineNum"> 207 </span> : * data is needed, it should be retrieved before pop() is
+<span class="lineNum"> 208 </span> : * called.
+<span class="lineNum"> 209 </span> : */
+<span class="lineNum"> 210 </span> : void
+<span class="lineNum"> 211 </span><span class="lineCov"> 24 : pop()</span>
+<span class="lineNum"> 212 </span> : {
+<span class="lineNum"> 213 </span> : __glibcxx_requires_nonempty();
+<span class="lineNum"> 214 </span><span class="lineCov"> 24 : c.pop_back();</span>
+<span class="lineNum"> 215 </span><span class="lineCov"> 24 : }</span>
+<span class="lineNum"> 216 </span> :
+<span class="lineNum"> 217 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 218 </span> : void
+<span class="lineNum"> 219 </span> : swap(stack&amp;&amp; __s)
+<span class="lineNum"> 220 </span> : { c.swap(__s.c); }
+<span class="lineNum"> 221 </span> : #endif
+<span class="lineNum"> 222 </span> : };
+<span class="lineNum"> 223 </span> :
+<span class="lineNum"> 224 </span> : /**
+<span class="lineNum"> 225 </span> : * @brief Stack equality comparison.
+<span class="lineNum"> 226 </span> : * @param x A %stack.
+<span class="lineNum"> 227 </span> : * @param y A %stack of the same type as @a x.
+<span class="lineNum"> 228 </span> : * @return True iff the size and elements of the stacks are equal.
+<span class="lineNum"> 229 </span> : *
+<span class="lineNum"> 230 </span> : * This is an equivalence relation. Complexity and semantics
+<span class="lineNum"> 231 </span> : * depend on the underlying sequence type, but the expected rules
+<span class="lineNum"> 232 </span> : * are: this relation is linear in the size of the sequences, and
+<span class="lineNum"> 233 </span> : * stacks are considered equivalent if their sequences compare
+<span class="lineNum"> 234 </span> : * equal.
+<span class="lineNum"> 235 </span> : */
+<span class="lineNum"> 236 </span> : template&lt;typename _Tp, typename _Seq&gt;
+<span class="lineNum"> 237 </span> : inline bool
+<span class="lineNum"> 238 </span> : operator==(const stack&lt;_Tp, _Seq&gt;&amp; __x, const stack&lt;_Tp, _Seq&gt;&amp; __y)
+<span class="lineNum"> 239 </span> : { return __x.c == __y.c; }
+<span class="lineNum"> 240 </span> :
+<span class="lineNum"> 241 </span> : /**
+<span class="lineNum"> 242 </span> : * @brief Stack ordering relation.
+<span class="lineNum"> 243 </span> : * @param x A %stack.
+<span class="lineNum"> 244 </span> : * @param y A %stack of the same type as @a x.
+<span class="lineNum"> 245 </span> : * @return True iff @a x is lexicographically less than @a y.
+<span class="lineNum"> 246 </span> : *
+<span class="lineNum"> 247 </span> : * This is an total ordering relation. Complexity and semantics
+<span class="lineNum"> 248 </span> : * depend on the underlying sequence type, but the expected rules
+<span class="lineNum"> 249 </span> : * are: this relation is linear in the size of the sequences, the
+<span class="lineNum"> 250 </span> : * elements must be comparable with @c &lt;, and
+<span class="lineNum"> 251 </span> : * std::lexicographical_compare() is usually used to make the
+<span class="lineNum"> 252 </span> : * determination.
+<span class="lineNum"> 253 </span> : */
+<span class="lineNum"> 254 </span> : template&lt;typename _Tp, typename _Seq&gt;
+<span class="lineNum"> 255 </span> : inline bool
+<span class="lineNum"> 256 </span> : operator&lt;(const stack&lt;_Tp, _Seq&gt;&amp; __x, const stack&lt;_Tp, _Seq&gt;&amp; __y)
+<span class="lineNum"> 257 </span> : { return __x.c &lt; __y.c; }
+<span class="lineNum"> 258 </span> :
+<span class="lineNum"> 259 </span> : /// Based on operator==
+<span class="lineNum"> 260 </span> : template&lt;typename _Tp, typename _Seq&gt;
+<span class="lineNum"> 261 </span> : inline bool
+<span class="lineNum"> 262 </span> : operator!=(const stack&lt;_Tp, _Seq&gt;&amp; __x, const stack&lt;_Tp, _Seq&gt;&amp; __y)
+<span class="lineNum"> 263 </span> : { return !(__x == __y); }
+<span class="lineNum"> 264 </span> :
+<span class="lineNum"> 265 </span> : /// Based on operator&lt;
+<span class="lineNum"> 266 </span> : template&lt;typename _Tp, typename _Seq&gt;
+<span class="lineNum"> 267 </span> : inline bool
+<span class="lineNum"> 268 </span> : operator&gt;(const stack&lt;_Tp, _Seq&gt;&amp; __x, const stack&lt;_Tp, _Seq&gt;&amp; __y)
+<span class="lineNum"> 269 </span> : { return __y &lt; __x; }
+<span class="lineNum"> 270 </span> :
+<span class="lineNum"> 271 </span> : /// Based on operator&lt;
+<span class="lineNum"> 272 </span> : template&lt;typename _Tp, typename _Seq&gt;
+<span class="lineNum"> 273 </span> : inline bool
+<span class="lineNum"> 274 </span> : operator&lt;=(const stack&lt;_Tp, _Seq&gt;&amp; __x, const stack&lt;_Tp, _Seq&gt;&amp; __y)
+<span class="lineNum"> 275 </span> : { return !(__y &lt; __x); }
+<span class="lineNum"> 276 </span> :
+<span class="lineNum"> 277 </span> : /// Based on operator&lt;
+<span class="lineNum"> 278 </span> : template&lt;typename _Tp, typename _Seq&gt;
+<span class="lineNum"> 279 </span> : inline bool
+<span class="lineNum"> 280 </span> : operator&gt;=(const stack&lt;_Tp, _Seq&gt;&amp; __x, const stack&lt;_Tp, _Seq&gt;&amp; __y)
+<span class="lineNum"> 281 </span> : { return !(__x &lt; __y); }
+<span class="lineNum"> 282 </span> :
+<span class="lineNum"> 283 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 284 </span> : template&lt;typename _Tp, typename _Seq&gt;
+<span class="lineNum"> 285 </span> : inline void
+<span class="lineNum"> 286 </span> : swap(stack&lt;_Tp, _Seq&gt;&amp; __x, stack&lt;_Tp, _Seq&gt;&amp; __y)
+<span class="lineNum"> 287 </span> : { __x.swap(__y); }
+<span class="lineNum"> 288 </span> :
+<span class="lineNum"> 289 </span> : template&lt;typename _Tp, typename _Seq&gt;
+<span class="lineNum"> 290 </span> : inline void
+<span class="lineNum"> 291 </span> : swap(stack&lt;_Tp, _Seq&gt;&amp;&amp; __x, stack&lt;_Tp, _Seq&gt;&amp; __y)
+<span class="lineNum"> 292 </span> : { __x.swap(__y); }
+<span class="lineNum"> 293 </span> :
+<span class="lineNum"> 294 </span> : template&lt;typename _Tp, typename _Seq&gt;
+<span class="lineNum"> 295 </span> : inline void
+<span class="lineNum"> 296 </span> : swap(stack&lt;_Tp, _Seq&gt;&amp; __x, stack&lt;_Tp, _Seq&gt;&amp;&amp; __y)
+<span class="lineNum"> 297 </span> : { __x.swap(__y); }
+<span class="lineNum"> 298 </span> : #endif
+<span class="lineNum"> 299 </span> :
+<span class="lineNum"> 300 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 301 </span> :
+<span class="lineNum"> 302 </span> : #endif /* _STL_STACK_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/stl_tree.h.gcov.html b/rep/usr/include/c++/4.3/bits/stl_tree.h.gcov.html
new file mode 100644
index 0000000..9827a27
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/stl_tree.h.gcov.html
@@ -0,0 +1,1533 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/stl_tree.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - stl_tree.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">295</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">94.2 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">278</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // RB tree implementation -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 18 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 19 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 20 </span> : // USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /*
+<span class="lineNum"> 32 </span> : *
+<span class="lineNum"> 33 </span> : * Copyright (c) 1996,1997
+<span class="lineNum"> 34 </span> : * Silicon Graphics Computer Systems, Inc.
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 37 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 38 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 39 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 40 </span> : * in supporting documentation. Silicon Graphics makes no
+<span class="lineNum"> 41 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 42 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 43 </span> : *
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * Copyright (c) 1994
+<span class="lineNum"> 46 </span> : * Hewlett-Packard Company
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 49 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 50 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 51 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 52 </span> : * in supporting documentation. Hewlett-Packard Company makes no
+<span class="lineNum"> 53 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 54 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 55 </span> : *
+<span class="lineNum"> 56 </span> : *
+<span class="lineNum"> 57 </span> : */
+<span class="lineNum"> 58 </span> :
+<span class="lineNum"> 59 </span> : /** @file stl_tree.h
+<span class="lineNum"> 60 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 61 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 62 </span> : */
+<span class="lineNum"> 63 </span> :
+<span class="lineNum"> 64 </span> : #ifndef _STL_TREE_H
+<span class="lineNum"> 65 </span> : #define _STL_TREE_H 1
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : #include &lt;bits/stl_algobase.h&gt;
+<span class="lineNum"> 68 </span> : #include &lt;bits/allocator.h&gt;
+<span class="lineNum"> 69 </span> : #include &lt;bits/stl_function.h&gt;
+<span class="lineNum"> 70 </span> : #include &lt;bits/cpp_type_traits.h&gt;
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span> : // Red-black tree class, designed for use in implementing STL
+<span class="lineNum"> 75 </span> : // associative containers (set, multiset, map, and multimap). The
+<span class="lineNum"> 76 </span> : // insertion and deletion algorithms are based on those in Cormen,
+<span class="lineNum"> 77 </span> : // Leiserson, and Rivest, Introduction to Algorithms (MIT Press,
+<span class="lineNum"> 78 </span> : // 1990), except that
+<span class="lineNum"> 79 </span> : //
+<span class="lineNum"> 80 </span> : // (1) the header cell is maintained with links not only to the root
+<span class="lineNum"> 81 </span> : // but also to the leftmost node of the tree, to enable constant
+<span class="lineNum"> 82 </span> : // time begin(), and to the rightmost node of the tree, to enable
+<span class="lineNum"> 83 </span> : // linear time performance when used with the generic set algorithms
+<span class="lineNum"> 84 </span> : // (set_union, etc.)
+<span class="lineNum"> 85 </span> : //
+<span class="lineNum"> 86 </span> : // (2) when a node being deleted has two children its successor node
+<span class="lineNum"> 87 </span> : // is relinked into its place, rather than copied, so that the only
+<span class="lineNum"> 88 </span> : // iterators invalidated are those referring to the deleted node.
+<span class="lineNum"> 89 </span> :
+<span class="lineNum"> 90 </span> : enum _Rb_tree_color { _S_red = false, _S_black = true };
+<span class="lineNum"> 91 </span> :
+<span class="lineNum"> 92 </span> : struct _Rb_tree_node_base
+<span class="lineNum"> 93 </span> : {
+<span class="lineNum"> 94 </span> : typedef _Rb_tree_node_base* _Base_ptr;
+<span class="lineNum"> 95 </span> : typedef const _Rb_tree_node_base* _Const_Base_ptr;
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span> : _Rb_tree_color _M_color;
+<span class="lineNum"> 98 </span> : _Base_ptr _M_parent;
+<span class="lineNum"> 99 </span> : _Base_ptr _M_left;
+<span class="lineNum"> 100 </span> : _Base_ptr _M_right;
+<span class="lineNum"> 101 </span> :
+<span class="lineNum"> 102 </span> : static _Base_ptr
+<span class="lineNum"> 103 </span><span class="lineCov"> 880633 : _S_minimum(_Base_ptr __x)</span>
+<span class="lineNum"> 104 </span> : {
+<span class="lineNum"> 105 </span><span class="lineCov"> 880633 : while (__x-&gt;_M_left != 0) __x = __x-&gt;_M_left;</span>
+<span class="lineNum"> 106 </span><span class="lineCov"> 880633 : return __x;</span>
+<span class="lineNum"> 107 </span> : }
+<span class="lineNum"> 108 </span> :
+<span class="lineNum"> 109 </span> : static _Const_Base_ptr
+<span class="lineNum"> 110 </span> : _S_minimum(_Const_Base_ptr __x)
+<span class="lineNum"> 111 </span> : {
+<span class="lineNum"> 112 </span> : while (__x-&gt;_M_left != 0) __x = __x-&gt;_M_left;
+<span class="lineNum"> 113 </span> : return __x;
+<span class="lineNum"> 114 </span> : }
+<span class="lineNum"> 115 </span> :
+<span class="lineNum"> 116 </span> : static _Base_ptr
+<span class="lineNum"> 117 </span><span class="lineCov"> 880633 : _S_maximum(_Base_ptr __x)</span>
+<span class="lineNum"> 118 </span> : {
+<span class="lineNum"> 119 </span><span class="lineCov"> 880633 : while (__x-&gt;_M_right != 0) __x = __x-&gt;_M_right;</span>
+<span class="lineNum"> 120 </span><span class="lineCov"> 880633 : return __x;</span>
+<span class="lineNum"> 121 </span> : }
+<span class="lineNum"> 122 </span> :
+<span class="lineNum"> 123 </span> : static _Const_Base_ptr
+<span class="lineNum"> 124 </span> : _S_maximum(_Const_Base_ptr __x)
+<span class="lineNum"> 125 </span> : {
+<span class="lineNum"> 126 </span> : while (__x-&gt;_M_right != 0) __x = __x-&gt;_M_right;
+<span class="lineNum"> 127 </span> : return __x;
+<span class="lineNum"> 128 </span> : }
+<span class="lineNum"> 129 </span> : };
+<span class="lineNum"> 130 </span> :
+<span class="lineNum"> 131 </span> : template&lt;typename _Val&gt;
+<span class="lineNum"> 132 </span> : struct _Rb_tree_node : public _Rb_tree_node_base
+<span class="lineNum"> 133 </span> : {
+<span class="lineNum"> 134 </span> : typedef _Rb_tree_node&lt;_Val&gt;* _Link_type;
+<span class="lineNum"> 135 </span> : _Val _M_value_field;
+<span class="lineNum"> 136 </span> : };
+<span class="lineNum"> 137 </span> :
+<span class="lineNum"> 138 </span> : _Rb_tree_node_base*
+<span class="lineNum"> 139 </span> : _Rb_tree_increment(_Rb_tree_node_base* __x);
+<span class="lineNum"> 140 </span> :
+<span class="lineNum"> 141 </span> : const _Rb_tree_node_base*
+<span class="lineNum"> 142 </span> : _Rb_tree_increment(const _Rb_tree_node_base* __x);
+<span class="lineNum"> 143 </span> :
+<span class="lineNum"> 144 </span> : _Rb_tree_node_base*
+<span class="lineNum"> 145 </span> : _Rb_tree_decrement(_Rb_tree_node_base* __x);
+<span class="lineNum"> 146 </span> :
+<span class="lineNum"> 147 </span> : const _Rb_tree_node_base*
+<span class="lineNum"> 148 </span> : _Rb_tree_decrement(const _Rb_tree_node_base* __x);
+<span class="lineNum"> 149 </span> :
+<span class="lineNum"> 150 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 151 </span> : struct _Rb_tree_iterator
+<span class="lineNum"> 152 </span> : {
+<span class="lineNum"> 153 </span> : typedef _Tp value_type;
+<span class="lineNum"> 154 </span> : typedef _Tp&amp; reference;
+<span class="lineNum"> 155 </span> : typedef _Tp* pointer;
+<span class="lineNum"> 156 </span> :
+<span class="lineNum"> 157 </span> : typedef bidirectional_iterator_tag iterator_category;
+<span class="lineNum"> 158 </span> : typedef ptrdiff_t difference_type;
+<span class="lineNum"> 159 </span> :
+<span class="lineNum"> 160 </span> : typedef _Rb_tree_iterator&lt;_Tp&gt; _Self;
+<span class="lineNum"> 161 </span> : typedef _Rb_tree_node_base::_Base_ptr _Base_ptr;
+<span class="lineNum"> 162 </span> : typedef _Rb_tree_node&lt;_Tp&gt;* _Link_type;
+<span class="lineNum"> 163 </span> :
+<span class="lineNum"> 164 </span> : _Rb_tree_iterator()
+<span class="lineNum"> 165 </span> : : _M_node() { }
+<span class="lineNum"> 166 </span> :
+<span class="lineNum"> 167 </span> : explicit
+<span class="lineNum"> 168 </span><span class="lineCov"> 4550329 : _Rb_tree_iterator(_Link_type __x)</span>
+<span class="lineNum"> 169 </span><span class="lineCov"> 4550329 : : _M_node(__x) { }</span>
+<span class="lineNum"> 170 </span> :
+<span class="lineNum"> 171 </span> : reference
+<span class="lineNum"> 172 </span><span class="lineCov"> 9593 : operator*() const</span>
+<span class="lineNum"> 173 </span><span class="lineCov"> 9593 : { return static_cast&lt;_Link_type&gt;(_M_node)-&gt;_M_value_field; }</span>
+<span class="lineNum"> 174 </span> :
+<span class="lineNum"> 175 </span> : pointer
+<span class="lineNum"> 176 </span><span class="lineCov"> 32985 : operator-&gt;() const</span>
+<span class="lineNum"> 177 </span><span class="lineCov"> 32985 : { return &amp;static_cast&lt;_Link_type&gt;(_M_node)-&gt;_M_value_field; }</span>
+<span class="lineNum"> 178 </span> :
+<span class="lineNum"> 179 </span> : _Self&amp;
+<span class="lineNum"> 180 </span> : operator++()
+<span class="lineNum"> 181 </span> : {
+<span class="lineNum"> 182 </span> : _M_node = _Rb_tree_increment(_M_node);
+<span class="lineNum"> 183 </span> : return *this;
+<span class="lineNum"> 184 </span> : }
+<span class="lineNum"> 185 </span> :
+<span class="lineNum"> 186 </span> : _Self
+<span class="lineNum"> 187 </span><span class="lineCov"> 658 : operator++(int)</span>
+<span class="lineNum"> 188 </span> : {
+<span class="lineNum"> 189 </span><span class="lineCov"> 658 : _Self __tmp = *this;</span>
+<span class="lineNum"> 190 </span><span class="lineCov"> 658 : _M_node = _Rb_tree_increment(_M_node);</span>
+<span class="lineNum"> 191 </span> : return __tmp;
+<span class="lineNum"> 192 </span> : }
+<span class="lineNum"> 193 </span> :
+<span class="lineNum"> 194 </span> : _Self&amp;
+<span class="lineNum"> 195 </span><span class="lineCov"> 83333 : operator--()</span>
+<span class="lineNum"> 196 </span> : {
+<span class="lineNum"> 197 </span><span class="lineCov"> 83333 : _M_node = _Rb_tree_decrement(_M_node);</span>
+<span class="lineNum"> 198 </span><span class="lineCov"> 83333 : return *this;</span>
+<span class="lineNum"> 199 </span> : }
+<span class="lineNum"> 200 </span> :
+<span class="lineNum"> 201 </span> : _Self
+<span class="lineNum"> 202 </span> : operator--(int)
+<span class="lineNum"> 203 </span> : {
+<span class="lineNum"> 204 </span> : _Self __tmp = *this;
+<span class="lineNum"> 205 </span> : _M_node = _Rb_tree_decrement(_M_node);
+<span class="lineNum"> 206 </span> : return __tmp;
+<span class="lineNum"> 207 </span> : }
+<span class="lineNum"> 208 </span> :
+<span class="lineNum"> 209 </span> : bool
+<span class="lineNum"> 210 </span><span class="lineCov"> 638793 : operator==(const _Self&amp; __x) const</span>
+<span class="lineNum"> 211 </span><span class="lineCov"> 638793 : { return _M_node == __x._M_node; }</span>
+<span class="lineNum"> 212 </span> :
+<span class="lineNum"> 213 </span> : bool
+<span class="lineNum"> 214 </span><span class="lineCov"> 749 : operator!=(const _Self&amp; __x) const</span>
+<span class="lineNum"> 215 </span><span class="lineCov"> 749 : { return _M_node != __x._M_node; }</span>
+<span class="lineNum"> 216 </span> :
+<span class="lineNum"> 217 </span> : _Base_ptr _M_node;
+<span class="lineNum"> 218 </span> : };
+<span class="lineNum"> 219 </span> :
+<span class="lineNum"> 220 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 221 </span> : struct _Rb_tree_const_iterator
+<span class="lineNum"> 222 </span> : {
+<span class="lineNum"> 223 </span> : typedef _Tp value_type;
+<span class="lineNum"> 224 </span> : typedef const _Tp&amp; reference;
+<span class="lineNum"> 225 </span> : typedef const _Tp* pointer;
+<span class="lineNum"> 226 </span> :
+<span class="lineNum"> 227 </span> : typedef _Rb_tree_iterator&lt;_Tp&gt; iterator;
+<span class="lineNum"> 228 </span> :
+<span class="lineNum"> 229 </span> : typedef bidirectional_iterator_tag iterator_category;
+<span class="lineNum"> 230 </span> : typedef ptrdiff_t difference_type;
+<span class="lineNum"> 231 </span> :
+<span class="lineNum"> 232 </span> : typedef _Rb_tree_const_iterator&lt;_Tp&gt; _Self;
+<span class="lineNum"> 233 </span> : typedef _Rb_tree_node_base::_Const_Base_ptr _Base_ptr;
+<span class="lineNum"> 234 </span> : typedef const _Rb_tree_node&lt;_Tp&gt;* _Link_type;
+<span class="lineNum"> 235 </span> :
+<span class="lineNum"> 236 </span> : _Rb_tree_const_iterator()
+<span class="lineNum"> 237 </span> : : _M_node() { }
+<span class="lineNum"> 238 </span> :
+<span class="lineNum"> 239 </span> : explicit
+<span class="lineNum"> 240 </span><span class="lineCov"> 2494703 : _Rb_tree_const_iterator(_Link_type __x)</span>
+<span class="lineNum"> 241 </span><span class="lineCov"> 2494703 : : _M_node(__x) { }</span>
+<span class="lineNum"> 242 </span> :
+<span class="lineNum"> 243 </span><span class="lineCov"> 1643427 : _Rb_tree_const_iterator(const iterator&amp; __it)</span>
+<span class="lineNum"> 244 </span><span class="lineCov"> 1643427 : : _M_node(__it._M_node) { }</span>
+<span class="lineNum"> 245 </span> :
+<span class="lineNum"> 246 </span> : reference
+<span class="lineNum"> 247 </span><span class="lineCov"> 1553025 : operator*() const</span>
+<span class="lineNum"> 248 </span><span class="lineCov"> 1553025 : { return static_cast&lt;_Link_type&gt;(_M_node)-&gt;_M_value_field; }</span>
+<span class="lineNum"> 249 </span> :
+<span class="lineNum"> 250 </span> : pointer
+<span class="lineNum"> 251 </span><span class="lineCov"> 817027 : operator-&gt;() const</span>
+<span class="lineNum"> 252 </span><span class="lineCov"> 817027 : { return &amp;static_cast&lt;_Link_type&gt;(_M_node)-&gt;_M_value_field; }</span>
+<span class="lineNum"> 253 </span> :
+<span class="lineNum"> 254 </span> : _Self&amp;
+<span class="lineNum"> 255 </span><span class="lineCov"> 1717591 : operator++()</span>
+<span class="lineNum"> 256 </span> : {
+<span class="lineNum"> 257 </span><span class="lineCov"> 1717591 : _M_node = _Rb_tree_increment(_M_node);</span>
+<span class="lineNum"> 258 </span><span class="lineCov"> 1717591 : return *this;</span>
+<span class="lineNum"> 259 </span> : }
+<span class="lineNum"> 260 </span> :
+<span class="lineNum"> 261 </span> : _Self
+<span class="lineNum"> 262 </span><span class="lineCov"> 9048 : operator++(int)</span>
+<span class="lineNum"> 263 </span> : {
+<span class="lineNum"> 264 </span><span class="lineCov"> 9048 : _Self __tmp = *this;</span>
+<span class="lineNum"> 265 </span><span class="lineCov"> 9048 : _M_node = _Rb_tree_increment(_M_node);</span>
+<span class="lineNum"> 266 </span> : return __tmp;
+<span class="lineNum"> 267 </span> : }
+<span class="lineNum"> 268 </span> :
+<span class="lineNum"> 269 </span> : _Self&amp;
+<span class="lineNum"> 270 </span><span class="lineCov"> 2000 : operator--()</span>
+<span class="lineNum"> 271 </span> : {
+<span class="lineNum"> 272 </span><span class="lineCov"> 2000 : _M_node = _Rb_tree_decrement(_M_node);</span>
+<span class="lineNum"> 273 </span><span class="lineCov"> 2000 : return *this;</span>
+<span class="lineNum"> 274 </span> : }
+<span class="lineNum"> 275 </span> :
+<span class="lineNum"> 276 </span> : _Self
+<span class="lineNum"> 277 </span> : operator--(int)
+<span class="lineNum"> 278 </span> : {
+<span class="lineNum"> 279 </span> : _Self __tmp = *this;
+<span class="lineNum"> 280 </span> : _M_node = _Rb_tree_decrement(_M_node);
+<span class="lineNum"> 281 </span> : return __tmp;
+<span class="lineNum"> 282 </span> : }
+<span class="lineNum"> 283 </span> :
+<span class="lineNum"> 284 </span> : bool
+<span class="lineNum"> 285 </span><span class="lineCov"> 177758 : operator==(const _Self&amp; __x) const</span>
+<span class="lineNum"> 286 </span><span class="lineCov"> 177758 : { return _M_node == __x._M_node; }</span>
+<span class="lineNum"> 287 </span> :
+<span class="lineNum"> 288 </span> : bool
+<span class="lineNum"> 289 </span><span class="lineCov"> 2095612 : operator!=(const _Self&amp; __x) const</span>
+<span class="lineNum"> 290 </span><span class="lineCov"> 2095612 : { return _M_node != __x._M_node; }</span>
+<span class="lineNum"> 291 </span> :
+<span class="lineNum"> 292 </span> : _Base_ptr _M_node;
+<span class="lineNum"> 293 </span> : };
+<span class="lineNum"> 294 </span> :
+<span class="lineNum"> 295 </span> : template&lt;typename _Val&gt;
+<span class="lineNum"> 296 </span> : inline bool
+<span class="lineNum"> 297 </span> : operator==(const _Rb_tree_iterator&lt;_Val&gt;&amp; __x,
+<span class="lineNum"> 298 </span> : const _Rb_tree_const_iterator&lt;_Val&gt;&amp; __y)
+<span class="lineNum"> 299 </span> : { return __x._M_node == __y._M_node; }
+<span class="lineNum"> 300 </span> :
+<span class="lineNum"> 301 </span> : template&lt;typename _Val&gt;
+<span class="lineNum"> 302 </span> : inline bool
+<span class="lineNum"> 303 </span> : operator!=(const _Rb_tree_iterator&lt;_Val&gt;&amp; __x,
+<span class="lineNum"> 304 </span> : const _Rb_tree_const_iterator&lt;_Val&gt;&amp; __y)
+<span class="lineNum"> 305 </span> : { return __x._M_node != __y._M_node; }
+<span class="lineNum"> 306 </span> :
+<span class="lineNum"> 307 </span> : void
+<span class="lineNum"> 308 </span> : _Rb_tree_insert_and_rebalance(const bool __insert_left,
+<span class="lineNum"> 309 </span> : _Rb_tree_node_base* __x,
+<span class="lineNum"> 310 </span> : _Rb_tree_node_base* __p,
+<span class="lineNum"> 311 </span> : _Rb_tree_node_base&amp; __header);
+<span class="lineNum"> 312 </span> :
+<span class="lineNum"> 313 </span> : _Rb_tree_node_base*
+<span class="lineNum"> 314 </span> : _Rb_tree_rebalance_for_erase(_Rb_tree_node_base* const __z,
+<span class="lineNum"> 315 </span> : _Rb_tree_node_base&amp; __header);
+<span class="lineNum"> 316 </span> :
+<span class="lineNum"> 317 </span> :
+<span class="lineNum"> 318 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 319 </span> : typename _Compare, typename _Alloc = allocator&lt;_Val&gt; &gt;
+<span class="lineNum"> 320 </span> : class _Rb_tree
+<span class="lineNum"> 321 </span> : {
+<span class="lineNum"> 322 </span> : typedef typename _Alloc::template rebind&lt;_Rb_tree_node&lt;_Val&gt; &gt;::other
+<span class="lineNum"> 323 </span> : _Node_allocator;
+<span class="lineNum"> 324 </span> :
+<span class="lineNum"> 325 </span> : protected:
+<span class="lineNum"> 326 </span> : typedef _Rb_tree_node_base* _Base_ptr;
+<span class="lineNum"> 327 </span> : typedef const _Rb_tree_node_base* _Const_Base_ptr;
+<span class="lineNum"> 328 </span> :
+<span class="lineNum"> 329 </span> : public:
+<span class="lineNum"> 330 </span> : typedef _Key key_type;
+<span class="lineNum"> 331 </span> : typedef _Val value_type;
+<span class="lineNum"> 332 </span> : typedef value_type* pointer;
+<span class="lineNum"> 333 </span> : typedef const value_type* const_pointer;
+<span class="lineNum"> 334 </span> : typedef value_type&amp; reference;
+<span class="lineNum"> 335 </span> : typedef const value_type&amp; const_reference;
+<span class="lineNum"> 336 </span> : typedef _Rb_tree_node&lt;_Val&gt;* _Link_type;
+<span class="lineNum"> 337 </span> : typedef const _Rb_tree_node&lt;_Val&gt;* _Const_Link_type;
+<span class="lineNum"> 338 </span> : typedef size_t size_type;
+<span class="lineNum"> 339 </span> : typedef ptrdiff_t difference_type;
+<span class="lineNum"> 340 </span> : typedef _Alloc allocator_type;
+<span class="lineNum"> 341 </span> :
+<span class="lineNum"> 342 </span> : _Node_allocator&amp;
+<span class="lineNum"> 343 </span> : _M_get_Node_allocator()
+<span class="lineNum"> 344 </span> : { return *static_cast&lt;_Node_allocator*&gt;(&amp;this-&gt;_M_impl); }
+<span class="lineNum"> 345 </span> :
+<span class="lineNum"> 346 </span> : const _Node_allocator&amp;
+<span class="lineNum"> 347 </span><span class="lineCov"> 12223942 : _M_get_Node_allocator() const</span>
+<span class="lineNum"> 348 </span><span class="lineCov"> 12223942 : { return *static_cast&lt;const _Node_allocator*&gt;(&amp;this-&gt;_M_impl); }</span>
+<span class="lineNum"> 349 </span> :
+<span class="lineNum"> 350 </span> : allocator_type
+<span class="lineNum"> 351 </span><span class="lineCov"> 11289346 : get_allocator() const</span>
+<span class="lineNum"> 352 </span><span class="lineCov"> 11289346 : { return allocator_type(_M_get_Node_allocator()); }</span>
+<span class="lineNum"> 353 </span> :
+<span class="lineNum"> 354 </span> : protected:
+<span class="lineNum"> 355 </span> : _Link_type
+<span class="lineNum"> 356 </span><span class="lineCov"> 5644688 : _M_get_node()</span>
+<span class="lineNum"> 357 </span><span class="lineCov"> 5644688 : { return _M_impl._Node_allocator::allocate(1); }</span>
+<span class="lineNum"> 358 </span> :
+<span class="lineNum"> 359 </span> : void
+<span class="lineNum"> 360 </span><span class="lineCov"> 5644658 : _M_put_node(_Link_type __p)</span>
+<span class="lineNum"> 361 </span><span class="lineCov"> 5644658 : { _M_impl._Node_allocator::deallocate(__p, 1); }</span>
+<span class="lineNum"> 362 </span> :
+<span class="lineNum"> 363 </span> : _Link_type
+<span class="lineNum"> 364 </span><span class="lineCov"> 5644688 : _M_create_node(const value_type&amp; __x)</span>
+<span class="lineNum"> 365 </span> : {
+<span class="lineNum"> 366 </span><span class="lineCov"> 5644688 : _Link_type __tmp = _M_get_node();</span>
+<span class="lineNum"> 367 </span> : try
+<span class="lineNum"> 368 </span><span class="lineCov"> 5644688 : { get_allocator().construct(&amp;__tmp-&gt;_M_value_field, __x); }</span>
+<span class="lineNum"> 369 </span><span class="lineNoCov"> 0 : catch(...)</span>
+<span class="lineNum"> 370 </span> : {
+<span class="lineNum"> 371 </span><span class="lineNoCov"> 0 : _M_put_node(__tmp);</span>
+<span class="lineNum"> 372 </span><span class="lineNoCov"> 0 : __throw_exception_again;</span>
+<span class="lineNum"> 373 </span> : }
+<span class="lineNum"> 374 </span><span class="lineCov"> 5644688 : return __tmp;</span>
+<span class="lineNum"> 375 </span> : }
+<span class="lineNum"> 376 </span> :
+<span class="lineNum"> 377 </span> : _Link_type
+<span class="lineNum"> 378 </span><span class="lineCov"> 3573982 : _M_clone_node(_Const_Link_type __x)</span>
+<span class="lineNum"> 379 </span> : {
+<span class="lineNum"> 380 </span><span class="lineCov"> 3573982 : _Link_type __tmp = _M_create_node(__x-&gt;_M_value_field);</span>
+<span class="lineNum"> 381 </span><span class="lineCov"> 3573982 : __tmp-&gt;_M_color = __x-&gt;_M_color;</span>
+<span class="lineNum"> 382 </span><span class="lineCov"> 3573982 : __tmp-&gt;_M_left = 0;</span>
+<span class="lineNum"> 383 </span><span class="lineCov"> 3573982 : __tmp-&gt;_M_right = 0;</span>
+<span class="lineNum"> 384 </span><span class="lineCov"> 3573982 : return __tmp;</span>
+<span class="lineNum"> 385 </span> : }
+<span class="lineNum"> 386 </span> :
+<span class="lineNum"> 387 </span> : void
+<span class="lineNum"> 388 </span><span class="lineCov"> 5644658 : _M_destroy_node(_Link_type __p)</span>
+<span class="lineNum"> 389 </span> : {
+<span class="lineNum"> 390 </span><span class="lineCov"> 5644658 : get_allocator().destroy(&amp;__p-&gt;_M_value_field);</span>
+<span class="lineNum"> 391 </span><span class="lineCov"> 5644658 : _M_put_node(__p);</span>
+<span class="lineNum"> 392 </span><span class="lineCov"> 5644658 : }</span>
+<span class="lineNum"> 393 </span> :
+<span class="lineNum"> 394 </span> : protected:
+<span class="lineNum"> 395 </span> : template&lt;typename _Key_compare,
+<span class="lineNum"> 396 </span> : bool _Is_pod_comparator = __is_pod(_Key_compare)&gt;
+<span class="lineNum"> 397 </span> : struct _Rb_tree_impl : public _Node_allocator
+<span class="lineNum"> 398 </span><span class="lineCov"> 1320929 : {</span>
+<span class="lineNum"> 399 </span> : _Key_compare _M_key_compare;
+<span class="lineNum"> 400 </span> : _Rb_tree_node_base _M_header;
+<span class="lineNum"> 401 </span> : size_type _M_node_count; // Keeps track of size of tree.
+<span class="lineNum"> 402 </span> :
+<span class="lineNum"> 403 </span><span class="lineCov"> 280599 : _Rb_tree_impl()</span>
+<span class="lineNum"> 404 </span> : : _Node_allocator(), _M_key_compare(), _M_header(),
+<span class="lineNum"> 405 </span><span class="lineCov"> 280599 : _M_node_count(0)</span>
+<span class="lineNum"> 406 </span><span class="lineCov"> 280599 : { _M_initialize(); }</span>
+<span class="lineNum"> 407 </span> :
+<span class="lineNum"> 408 </span><span class="lineCov"> 934596 : _Rb_tree_impl(const _Key_compare&amp; __comp, const _Node_allocator&amp; __a)</span>
+<span class="lineNum"> 409 </span> : : _Node_allocator(__a), _M_key_compare(__comp), _M_header(),
+<span class="lineNum"> 410 </span><span class="lineCov"> 934596 : _M_node_count(0)</span>
+<span class="lineNum"> 411 </span><span class="lineCov"> 934596 : { _M_initialize(); }</span>
+<span class="lineNum"> 412 </span> :
+<span class="lineNum"> 413 </span> : private:
+<span class="lineNum"> 414 </span> : void
+<span class="lineNum"> 415 </span><span class="lineCov"> 1215195 : _M_initialize()</span>
+<span class="lineNum"> 416 </span> : {
+<span class="lineNum"> 417 </span><span class="lineCov"> 1215195 : this-&gt;_M_header._M_color = _S_red;</span>
+<span class="lineNum"> 418 </span><span class="lineCov"> 1215195 : this-&gt;_M_header._M_parent = 0;</span>
+<span class="lineNum"> 419 </span><span class="lineCov"> 1215195 : this-&gt;_M_header._M_left = &amp;this-&gt;_M_header;</span>
+<span class="lineNum"> 420 </span><span class="lineCov"> 1215195 : this-&gt;_M_header._M_right = &amp;this-&gt;_M_header;</span>
+<span class="lineNum"> 421 </span><span class="lineCov"> 1215195 : } </span>
+<span class="lineNum"> 422 </span> : };
+<span class="lineNum"> 423 </span> :
+<span class="lineNum"> 424 </span> : _Rb_tree_impl&lt;_Compare&gt; _M_impl;
+<span class="lineNum"> 425 </span> :
+<span class="lineNum"> 426 </span> : protected:
+<span class="lineNum"> 427 </span> : _Base_ptr&amp;
+<span class="lineNum"> 428 </span><span class="lineCov"> 2729891 : _M_root()</span>
+<span class="lineNum"> 429 </span><span class="lineCov"> 2729891 : { return this-&gt;_M_impl._M_header._M_parent; }</span>
+<span class="lineNum"> 430 </span> :
+<span class="lineNum"> 431 </span> : _Const_Base_ptr
+<span class="lineNum"> 432 </span><span class="lineCov"> 934693 : _M_root() const</span>
+<span class="lineNum"> 433 </span><span class="lineCov"> 934693 : { return this-&gt;_M_impl._M_header._M_parent; }</span>
+<span class="lineNum"> 434 </span> :
+<span class="lineNum"> 435 </span> : _Base_ptr&amp;
+<span class="lineNum"> 436 </span><span class="lineCov"> 970809 : _M_leftmost()</span>
+<span class="lineNum"> 437 </span><span class="lineCov"> 970809 : { return this-&gt;_M_impl._M_header._M_left; }</span>
+<span class="lineNum"> 438 </span> :
+<span class="lineNum"> 439 </span> : _Const_Base_ptr
+<span class="lineNum"> 440 </span> : _M_leftmost() const
+<span class="lineNum"> 441 </span> : { return this-&gt;_M_impl._M_header._M_left; }
+<span class="lineNum"> 442 </span> :
+<span class="lineNum"> 443 </span> : _Base_ptr&amp;
+<span class="lineNum"> 444 </span><span class="lineCov"> 2012568 : _M_rightmost()</span>
+<span class="lineNum"> 445 </span><span class="lineCov"> 2012568 : { return this-&gt;_M_impl._M_header._M_right; }</span>
+<span class="lineNum"> 446 </span> :
+<span class="lineNum"> 447 </span> : _Const_Base_ptr
+<span class="lineNum"> 448 </span> : _M_rightmost() const
+<span class="lineNum"> 449 </span> : { return this-&gt;_M_impl._M_header._M_right; }
+<span class="lineNum"> 450 </span> :
+<span class="lineNum"> 451 </span> : _Link_type
+<span class="lineNum"> 452 </span><span class="lineCov"> 3119123 : _M_begin()</span>
+<span class="lineNum"> 453 </span><span class="lineCov"> 3119123 : { return static_cast&lt;_Link_type&gt;(this-&gt;_M_impl._M_header._M_parent); }</span>
+<span class="lineNum"> 454 </span> :
+<span class="lineNum"> 455 </span> : _Const_Link_type
+<span class="lineNum"> 456 </span><span class="lineCov"> 884565 : _M_begin() const</span>
+<span class="lineNum"> 457 </span> : {
+<span class="lineNum"> 458 </span> : return static_cast&lt;_Const_Link_type&gt;
+<span class="lineNum"> 459 </span><span class="lineCov"> 884565 : (this-&gt;_M_impl._M_header._M_parent);</span>
+<span class="lineNum"> 460 </span> : }
+<span class="lineNum"> 461 </span> :
+<span class="lineNum"> 462 </span> : _Link_type
+<span class="lineNum"> 463 </span><span class="lineCov"> 5489610 : _M_end()</span>
+<span class="lineNum"> 464 </span><span class="lineCov"> 5489610 : { return static_cast&lt;_Link_type&gt;(&amp;this-&gt;_M_impl._M_header); }</span>
+<span class="lineNum"> 465 </span> :
+<span class="lineNum"> 466 </span> : _Const_Link_type
+<span class="lineNum"> 467 </span><span class="lineCov"> 3932 : _M_end() const</span>
+<span class="lineNum"> 468 </span><span class="lineCov"> 3932 : { return static_cast&lt;_Const_Link_type&gt;(&amp;this-&gt;_M_impl._M_header); }</span>
+<span class="lineNum"> 469 </span> :
+<span class="lineNum"> 470 </span> : static const_reference
+<span class="lineNum"> 471 </span><span class="lineCov"> 7342455 : _S_value(_Const_Link_type __x)</span>
+<span class="lineNum"> 472 </span><span class="lineCov"> 7342455 : { return __x-&gt;_M_value_field; }</span>
+<span class="lineNum"> 473 </span> :
+<span class="lineNum"> 474 </span> : static const _Key&amp;
+<span class="lineNum"> 475 </span><span class="lineCov"> 7342455 : _S_key(_Const_Link_type __x)</span>
+<span class="lineNum"> 476 </span><span class="lineCov"> 7342455 : { return _KeyOfValue()(_S_value(__x)); }</span>
+<span class="lineNum"> 477 </span> :
+<span class="lineNum"> 478 </span> : static _Link_type
+<span class="lineNum"> 479 </span><span class="lineCov"> 6468290 : _S_left(_Base_ptr __x)</span>
+<span class="lineNum"> 480 </span><span class="lineCov"> 6468290 : { return static_cast&lt;_Link_type&gt;(__x-&gt;_M_left); }</span>
+<span class="lineNum"> 481 </span> :
+<span class="lineNum"> 482 </span> : static _Const_Link_type
+<span class="lineNum"> 483 </span><span class="lineCov"> 3579867 : _S_left(_Const_Base_ptr __x)</span>
+<span class="lineNum"> 484 </span><span class="lineCov"> 3579867 : { return static_cast&lt;_Const_Link_type&gt;(__x-&gt;_M_left); }</span>
+<span class="lineNum"> 485 </span> :
+<span class="lineNum"> 486 </span> : static _Link_type
+<span class="lineNum"> 487 </span><span class="lineCov"> 12155056 : _S_right(_Base_ptr __x)</span>
+<span class="lineNum"> 488 </span><span class="lineCov"> 12155056 : { return static_cast&lt;_Link_type&gt;(__x-&gt;_M_right); }</span>
+<span class="lineNum"> 489 </span> :
+<span class="lineNum"> 490 </span> : static _Const_Link_type
+<span class="lineNum"> 491 </span><span class="lineCov"> 1503831 : _S_right(_Const_Base_ptr __x)</span>
+<span class="lineNum"> 492 </span><span class="lineCov"> 1503831 : { return static_cast&lt;_Const_Link_type&gt;(__x-&gt;_M_right); }</span>
+<span class="lineNum"> 493 </span> :
+<span class="lineNum"> 494 </span> : static const_reference
+<span class="lineNum"> 495 </span><span class="lineCov"> 3381491 : _S_value(_Const_Base_ptr __x)</span>
+<span class="lineNum"> 496 </span><span class="lineCov"> 3381491 : { return static_cast&lt;_Const_Link_type&gt;(__x)-&gt;_M_value_field; }</span>
+<span class="lineNum"> 497 </span> :
+<span class="lineNum"> 498 </span> : static const _Key&amp;
+<span class="lineNum"> 499 </span><span class="lineCov"> 3381491 : _S_key(_Const_Base_ptr __x)</span>
+<span class="lineNum"> 500 </span><span class="lineCov"> 3381491 : { return _KeyOfValue()(_S_value(__x)); }</span>
+<span class="lineNum"> 501 </span> :
+<span class="lineNum"> 502 </span> : static _Base_ptr
+<span class="lineNum"> 503 </span><span class="lineCov"> 880633 : _S_minimum(_Base_ptr __x)</span>
+<span class="lineNum"> 504 </span><span class="lineCov"> 880633 : { return _Rb_tree_node_base::_S_minimum(__x); }</span>
+<span class="lineNum"> 505 </span> :
+<span class="lineNum"> 506 </span> : static _Const_Base_ptr
+<span class="lineNum"> 507 </span> : _S_minimum(_Const_Base_ptr __x)
+<span class="lineNum"> 508 </span> : { return _Rb_tree_node_base::_S_minimum(__x); }
+<span class="lineNum"> 509 </span> :
+<span class="lineNum"> 510 </span> : static _Base_ptr
+<span class="lineNum"> 511 </span><span class="lineCov"> 880633 : _S_maximum(_Base_ptr __x)</span>
+<span class="lineNum"> 512 </span><span class="lineCov"> 880633 : { return _Rb_tree_node_base::_S_maximum(__x); }</span>
+<span class="lineNum"> 513 </span> :
+<span class="lineNum"> 514 </span> : static _Const_Base_ptr
+<span class="lineNum"> 515 </span> : _S_maximum(_Const_Base_ptr __x)
+<span class="lineNum"> 516 </span> : { return _Rb_tree_node_base::_S_maximum(__x); }
+<span class="lineNum"> 517 </span> :
+<span class="lineNum"> 518 </span> : public:
+<span class="lineNum"> 519 </span> : typedef _Rb_tree_iterator&lt;value_type&gt; iterator;
+<span class="lineNum"> 520 </span> : typedef _Rb_tree_const_iterator&lt;value_type&gt; const_iterator;
+<span class="lineNum"> 521 </span> :
+<span class="lineNum"> 522 </span> : typedef std::reverse_iterator&lt;iterator&gt; reverse_iterator;
+<span class="lineNum"> 523 </span> : typedef std::reverse_iterator&lt;const_iterator&gt; const_reverse_iterator;
+<span class="lineNum"> 524 </span> :
+<span class="lineNum"> 525 </span> : private:
+<span class="lineNum"> 526 </span> : iterator
+<span class="lineNum"> 527 </span> : _M_insert_(_Const_Base_ptr __x, _Const_Base_ptr __y,
+<span class="lineNum"> 528 </span> : const value_type&amp; __v);
+<span class="lineNum"> 529 </span> :
+<span class="lineNum"> 530 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 531 </span> : // 233. Insertion hints in associative containers.
+<span class="lineNum"> 532 </span> : iterator
+<span class="lineNum"> 533 </span> : _M_insert_lower(_Base_ptr __x, _Base_ptr __y, const value_type&amp; __v);
+<span class="lineNum"> 534 </span> :
+<span class="lineNum"> 535 </span> : iterator
+<span class="lineNum"> 536 </span> : _M_insert_equal_lower(const value_type&amp; __x);
+<span class="lineNum"> 537 </span> :
+<span class="lineNum"> 538 </span> : _Link_type
+<span class="lineNum"> 539 </span> : _M_copy(_Const_Link_type __x, _Link_type __p);
+<span class="lineNum"> 540 </span> :
+<span class="lineNum"> 541 </span> : void
+<span class="lineNum"> 542 </span> : _M_erase(_Link_type __x);
+<span class="lineNum"> 543 </span> :
+<span class="lineNum"> 544 </span> : iterator
+<span class="lineNum"> 545 </span> : _M_lower_bound(_Link_type __x, _Link_type __y,
+<span class="lineNum"> 546 </span> : const _Key&amp; __k);
+<span class="lineNum"> 547 </span> :
+<span class="lineNum"> 548 </span> : const_iterator
+<span class="lineNum"> 549 </span> : _M_lower_bound(_Const_Link_type __x, _Const_Link_type __y,
+<span class="lineNum"> 550 </span> : const _Key&amp; __k) const;
+<span class="lineNum"> 551 </span> :
+<span class="lineNum"> 552 </span> : iterator
+<span class="lineNum"> 553 </span> : _M_upper_bound(_Link_type __x, _Link_type __y,
+<span class="lineNum"> 554 </span> : const _Key&amp; __k);
+<span class="lineNum"> 555 </span> :
+<span class="lineNum"> 556 </span> : const_iterator
+<span class="lineNum"> 557 </span> : _M_upper_bound(_Const_Link_type __x, _Const_Link_type __y,
+<span class="lineNum"> 558 </span> : const _Key&amp; __k) const;
+<span class="lineNum"> 559 </span> :
+<span class="lineNum"> 560 </span> : public:
+<span class="lineNum"> 561 </span> : // allocation/deallocation
+<span class="lineNum"> 562 </span><span class="lineCov"> 280599 : _Rb_tree() { }</span>
+<span class="lineNum"> 563 </span> :
+<span class="lineNum"> 564 </span> : _Rb_tree(const _Compare&amp; __comp,
+<span class="lineNum"> 565 </span> : const allocator_type&amp; __a = allocator_type())
+<span class="lineNum"> 566 </span> : : _M_impl(__comp, __a) { }
+<span class="lineNum"> 567 </span> :
+<span class="lineNum"> 568 </span><span class="lineCov"> 934596 : _Rb_tree(const _Rb_tree&amp; __x)</span>
+<span class="lineNum"> 569 </span><span class="lineCov"> 934596 : : _M_impl(__x._M_impl._M_key_compare, __x._M_get_Node_allocator())</span>
+<span class="lineNum"> 570 </span> : {
+<span class="lineNum"> 571 </span><span class="lineCov"> 934596 : if (__x._M_root() != 0)</span>
+<span class="lineNum"> 572 </span> : {
+<span class="lineNum"> 573 </span><span class="lineCov"> 880580 : _M_root() = _M_copy(__x._M_begin(), _M_end());</span>
+<span class="lineNum"> 574 </span><span class="lineCov"> 880580 : _M_leftmost() = _S_minimum(_M_root());</span>
+<span class="lineNum"> 575 </span><span class="lineCov"> 880580 : _M_rightmost() = _S_maximum(_M_root());</span>
+<span class="lineNum"> 576 </span><span class="lineCov"> 880580 : _M_impl._M_node_count = __x._M_impl._M_node_count;</span>
+<span class="lineNum"> 577 </span> : }
+<span class="lineNum"> 578 </span><span class="lineCov"> 934596 : }</span>
+<span class="lineNum"> 579 </span> :
+<span class="lineNum"> 580 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 581 </span> : _Rb_tree(_Rb_tree&amp;&amp; __x);
+<span class="lineNum"> 582 </span> : #endif
+<span class="lineNum"> 583 </span> :
+<span class="lineNum"> 584 </span><span class="lineCov"> 1320929 : ~_Rb_tree()</span>
+<span class="lineNum"> 585 </span><span class="lineCov"> 1320929 : { _M_erase(_M_begin()); }</span>
+<span class="lineNum"> 586 </span> :
+<span class="lineNum"> 587 </span> : _Rb_tree&amp;
+<span class="lineNum"> 588 </span> : operator=(const _Rb_tree&amp; __x);
+<span class="lineNum"> 589 </span> :
+<span class="lineNum"> 590 </span> : // Accessors.
+<span class="lineNum"> 591 </span> : _Compare
+<span class="lineNum"> 592 </span><span class="lineCov"> 3296 : key_comp() const</span>
+<span class="lineNum"> 593 </span><span class="lineCov"> 3296 : { return _M_impl._M_key_compare; }</span>
+<span class="lineNum"> 594 </span> :
+<span class="lineNum"> 595 </span> : iterator
+<span class="lineNum"> 596 </span><span class="lineCov"> 538878 : begin()</span>
+<span class="lineNum"> 597 </span> : {
+<span class="lineNum"> 598 </span> : return iterator(static_cast&lt;_Link_type&gt;
+<span class="lineNum"> 599 </span><span class="lineCov"> 538878 : (this-&gt;_M_impl._M_header._M_left));</span>
+<span class="lineNum"> 600 </span> : }
+<span class="lineNum"> 601 </span> :
+<span class="lineNum"> 602 </span> : const_iterator
+<span class="lineNum"> 603 </span><span class="lineCov"> 468185 : begin() const</span>
+<span class="lineNum"> 604 </span> : {
+<span class="lineNum"> 605 </span> : return const_iterator(static_cast&lt;_Const_Link_type&gt;
+<span class="lineNum"> 606 </span><span class="lineCov"> 468185 : (this-&gt;_M_impl._M_header._M_left));</span>
+<span class="lineNum"> 607 </span> : }
+<span class="lineNum"> 608 </span> :
+<span class="lineNum"> 609 </span> : iterator
+<span class="lineNum"> 610 </span><span class="lineCov"> 230534 : end()</span>
+<span class="lineNum"> 611 </span><span class="lineCov"> 230534 : { return iterator(static_cast&lt;_Link_type&gt;(&amp;this-&gt;_M_impl._M_header)); }</span>
+<span class="lineNum"> 612 </span> :
+<span class="lineNum"> 613 </span> : const_iterator
+<span class="lineNum"> 614 </span><span class="lineCov"> 2022586 : end() const</span>
+<span class="lineNum"> 615 </span> : {
+<span class="lineNum"> 616 </span> : return const_iterator(static_cast&lt;_Const_Link_type&gt;
+<span class="lineNum"> 617 </span><span class="lineCov"> 2022586 : (&amp;this-&gt;_M_impl._M_header));</span>
+<span class="lineNum"> 618 </span> : }
+<span class="lineNum"> 619 </span> :
+<span class="lineNum"> 620 </span> : reverse_iterator
+<span class="lineNum"> 621 </span> : rbegin()
+<span class="lineNum"> 622 </span> : { return reverse_iterator(end()); }
+<span class="lineNum"> 623 </span> :
+<span class="lineNum"> 624 </span> : const_reverse_iterator
+<span class="lineNum"> 625 </span><span class="lineCov"> 32 : rbegin() const</span>
+<span class="lineNum"> 626 </span><span class="lineCov"> 32 : { return const_reverse_iterator(end()); }</span>
+<span class="lineNum"> 627 </span> :
+<span class="lineNum"> 628 </span> : reverse_iterator
+<span class="lineNum"> 629 </span> : rend()
+<span class="lineNum"> 630 </span> : { return reverse_iterator(begin()); }
+<span class="lineNum"> 631 </span> :
+<span class="lineNum"> 632 </span> : const_reverse_iterator
+<span class="lineNum"> 633 </span> : rend() const
+<span class="lineNum"> 634 </span> : { return const_reverse_iterator(begin()); }
+<span class="lineNum"> 635 </span> :
+<span class="lineNum"> 636 </span> : bool
+<span class="lineNum"> 637 </span><span class="lineCov"> 342325 : empty() const</span>
+<span class="lineNum"> 638 </span><span class="lineCov"> 342325 : { return _M_impl._M_node_count == 0; }</span>
+<span class="lineNum"> 639 </span> :
+<span class="lineNum"> 640 </span> : size_type
+<span class="lineNum"> 641 </span><span class="lineCov"> 734435 : size() const</span>
+<span class="lineNum"> 642 </span><span class="lineCov"> 734435 : { return _M_impl._M_node_count; }</span>
+<span class="lineNum"> 643 </span> :
+<span class="lineNum"> 644 </span> : size_type
+<span class="lineNum"> 645 </span> : max_size() const
+<span class="lineNum"> 646 </span> : { return get_allocator().max_size(); }
+<span class="lineNum"> 647 </span> :
+<span class="lineNum"> 648 </span> : void
+<span class="lineNum"> 649 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 650 </span> : swap(_Rb_tree&amp;&amp; __t);
+<span class="lineNum"> 651 </span> : #else
+<span class="lineNum"> 652 </span> : swap(_Rb_tree&amp; __t);
+<span class="lineNum"> 653 </span> : #endif
+<span class="lineNum"> 654 </span> :
+<span class="lineNum"> 655 </span> : // Insert/erase.
+<span class="lineNum"> 656 </span> : pair&lt;iterator, bool&gt;
+<span class="lineNum"> 657 </span> : _M_insert_unique(const value_type&amp; __x);
+<span class="lineNum"> 658 </span> :
+<span class="lineNum"> 659 </span> : iterator
+<span class="lineNum"> 660 </span> : _M_insert_equal(const value_type&amp; __x);
+<span class="lineNum"> 661 </span> :
+<span class="lineNum"> 662 </span> : iterator
+<span class="lineNum"> 663 </span> : _M_insert_unique_(const_iterator __position, const value_type&amp; __x);
+<span class="lineNum"> 664 </span> :
+<span class="lineNum"> 665 </span> : iterator
+<span class="lineNum"> 666 </span> : _M_insert_equal_(const_iterator __position, const value_type&amp; __x);
+<span class="lineNum"> 667 </span> :
+<span class="lineNum"> 668 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 669 </span> : void
+<span class="lineNum"> 670 </span> : _M_insert_unique(_InputIterator __first, _InputIterator __last);
+<span class="lineNum"> 671 </span> :
+<span class="lineNum"> 672 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 673 </span> : void
+<span class="lineNum"> 674 </span> : _M_insert_equal(_InputIterator __first, _InputIterator __last);
+<span class="lineNum"> 675 </span> :
+<span class="lineNum"> 676 </span> : void
+<span class="lineNum"> 677 </span> : erase(iterator __position);
+<span class="lineNum"> 678 </span> :
+<span class="lineNum"> 679 </span> : void
+<span class="lineNum"> 680 </span> : erase(const_iterator __position);
+<span class="lineNum"> 681 </span> :
+<span class="lineNum"> 682 </span> : size_type
+<span class="lineNum"> 683 </span> : erase(const key_type&amp; __x);
+<span class="lineNum"> 684 </span> :
+<span class="lineNum"> 685 </span> : void
+<span class="lineNum"> 686 </span> : erase(iterator __first, iterator __last);
+<span class="lineNum"> 687 </span> :
+<span class="lineNum"> 688 </span> : void
+<span class="lineNum"> 689 </span> : erase(const_iterator __first, const_iterator __last);
+<span class="lineNum"> 690 </span> :
+<span class="lineNum"> 691 </span> : void
+<span class="lineNum"> 692 </span> : erase(const key_type* __first, const key_type* __last);
+<span class="lineNum"> 693 </span> :
+<span class="lineNum"> 694 </span> : void
+<span class="lineNum"> 695 </span><span class="lineCov"> 87992 : clear()</span>
+<span class="lineNum"> 696 </span> : {
+<span class="lineNum"> 697 </span><span class="lineCov"> 87992 : _M_erase(_M_begin());</span>
+<span class="lineNum"> 698 </span><span class="lineCov"> 87992 : _M_leftmost() = _M_end();</span>
+<span class="lineNum"> 699 </span><span class="lineCov"> 87992 : _M_root() = 0;</span>
+<span class="lineNum"> 700 </span><span class="lineCov"> 87992 : _M_rightmost() = _M_end();</span>
+<span class="lineNum"> 701 </span><span class="lineCov"> 87992 : _M_impl._M_node_count = 0;</span>
+<span class="lineNum"> 702 </span><span class="lineCov"> 87992 : }</span>
+<span class="lineNum"> 703 </span> :
+<span class="lineNum"> 704 </span> : // Set operations.
+<span class="lineNum"> 705 </span> : iterator
+<span class="lineNum"> 706 </span> : find(const key_type&amp; __k);
+<span class="lineNum"> 707 </span> :
+<span class="lineNum"> 708 </span> : const_iterator
+<span class="lineNum"> 709 </span> : find(const key_type&amp; __k) const;
+<span class="lineNum"> 710 </span> :
+<span class="lineNum"> 711 </span> : size_type
+<span class="lineNum"> 712 </span> : count(const key_type&amp; __k) const;
+<span class="lineNum"> 713 </span> :
+<span class="lineNum"> 714 </span> : iterator
+<span class="lineNum"> 715 </span><span class="lineCov"> 6297 : lower_bound(const key_type&amp; __k)</span>
+<span class="lineNum"> 716 </span><span class="lineCov"> 6297 : { return _M_lower_bound(_M_begin(), _M_end(), __k); }</span>
+<span class="lineNum"> 717 </span> :
+<span class="lineNum"> 718 </span> : const_iterator
+<span class="lineNum"> 719 </span> : lower_bound(const key_type&amp; __k) const
+<span class="lineNum"> 720 </span> : { return _M_lower_bound(_M_begin(), _M_end(), __k); }
+<span class="lineNum"> 721 </span> :
+<span class="lineNum"> 722 </span> : iterator
+<span class="lineNum"> 723 </span> : upper_bound(const key_type&amp; __k)
+<span class="lineNum"> 724 </span> : { return _M_upper_bound(_M_begin(), _M_end(), __k); }
+<span class="lineNum"> 725 </span> :
+<span class="lineNum"> 726 </span> : const_iterator
+<span class="lineNum"> 727 </span> : upper_bound(const key_type&amp; __k) const
+<span class="lineNum"> 728 </span> : { return _M_upper_bound(_M_begin(), _M_end(), __k); }
+<span class="lineNum"> 729 </span> :
+<span class="lineNum"> 730 </span> : pair&lt;iterator, iterator&gt;
+<span class="lineNum"> 731 </span> : equal_range(const key_type&amp; __k);
+<span class="lineNum"> 732 </span> :
+<span class="lineNum"> 733 </span> : pair&lt;const_iterator, const_iterator&gt;
+<span class="lineNum"> 734 </span> : equal_range(const key_type&amp; __k) const;
+<span class="lineNum"> 735 </span> :
+<span class="lineNum"> 736 </span> : // Debugging.
+<span class="lineNum"> 737 </span> : bool
+<span class="lineNum"> 738 </span> : __rb_verify() const;
+<span class="lineNum"> 739 </span> : };
+<span class="lineNum"> 740 </span> :
+<span class="lineNum"> 741 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 742 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 743 </span> : inline bool
+<span class="lineNum"> 744 </span> : operator==(const _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 745 </span><span class="lineCov"> 4 : const _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;&amp; __y)</span>
+<span class="lineNum"> 746 </span> : {
+<span class="lineNum"> 747 </span> : return __x.size() == __y.size()
+<span class="lineNum"> 748 </span><span class="lineCov"> 4 : &amp;&amp; std::equal(__x.begin(), __x.end(), __y.begin());</span>
+<span class="lineNum"> 749 </span> : }
+<span class="lineNum"> 750 </span> :
+<span class="lineNum"> 751 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 752 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 753 </span> : inline bool
+<span class="lineNum"> 754 </span> : operator&lt;(const _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 755 </span> : const _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 756 </span> : {
+<span class="lineNum"> 757 </span> : return std::lexicographical_compare(__x.begin(), __x.end(),
+<span class="lineNum"> 758 </span> : __y.begin(), __y.end());
+<span class="lineNum"> 759 </span> : }
+<span class="lineNum"> 760 </span> :
+<span class="lineNum"> 761 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 762 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 763 </span> : inline bool
+<span class="lineNum"> 764 </span> : operator!=(const _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 765 </span> : const _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 766 </span> : { return !(__x == __y); }
+<span class="lineNum"> 767 </span> :
+<span class="lineNum"> 768 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 769 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 770 </span> : inline bool
+<span class="lineNum"> 771 </span> : operator&gt;(const _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 772 </span> : const _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 773 </span> : { return __y &lt; __x; }
+<span class="lineNum"> 774 </span> :
+<span class="lineNum"> 775 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 776 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 777 </span> : inline bool
+<span class="lineNum"> 778 </span> : operator&lt;=(const _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 779 </span> : const _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 780 </span> : { return !(__y &lt; __x); }
+<span class="lineNum"> 781 </span> :
+<span class="lineNum"> 782 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 783 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 784 </span> : inline bool
+<span class="lineNum"> 785 </span> : operator&gt;=(const _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 786 </span> : const _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 787 </span> : { return !(__x &lt; __y); }
+<span class="lineNum"> 788 </span> :
+<span class="lineNum"> 789 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 790 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 791 </span> : inline void
+<span class="lineNum"> 792 </span> : swap(_Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;&amp; __x,
+<span class="lineNum"> 793 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 794 </span> : { __x.swap(__y); }
+<span class="lineNum"> 795 </span> :
+<span class="lineNum"> 796 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 797 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 798 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 799 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 800 </span> : _Rb_tree(_Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;&amp;&amp; __x)
+<span class="lineNum"> 801 </span> : : _M_impl(__x._M_impl._M_key_compare, __x._M_get_Node_allocator())
+<span class="lineNum"> 802 </span> : {
+<span class="lineNum"> 803 </span> : if (__x._M_root() != 0)
+<span class="lineNum"> 804 </span> : {
+<span class="lineNum"> 805 </span> : _M_root() = __x._M_root();
+<span class="lineNum"> 806 </span> : _M_leftmost() = __x._M_leftmost();
+<span class="lineNum"> 807 </span> : _M_rightmost() = __x._M_rightmost();
+<span class="lineNum"> 808 </span> : _M_root()-&gt;_M_parent = _M_end();
+<span class="lineNum"> 809 </span> :
+<span class="lineNum"> 810 </span> : __x._M_root() = 0;
+<span class="lineNum"> 811 </span> : __x._M_leftmost() = __x._M_end();
+<span class="lineNum"> 812 </span> : __x._M_rightmost() = __x._M_end();
+<span class="lineNum"> 813 </span> :
+<span class="lineNum"> 814 </span> : this-&gt;_M_impl._M_node_count = __x._M_impl._M_node_count;
+<span class="lineNum"> 815 </span> : __x._M_impl._M_node_count = 0;
+<span class="lineNum"> 816 </span> : }
+<span class="lineNum"> 817 </span> : }
+<span class="lineNum"> 818 </span> : #endif
+<span class="lineNum"> 819 </span> :
+<span class="lineNum"> 820 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 821 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 822 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;&amp;
+<span class="lineNum"> 823 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 824 </span><span class="lineCov"> 97 : operator=(const _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;&amp; __x)</span>
+<span class="lineNum"> 825 </span> : {
+<span class="lineNum"> 826 </span><span class="lineCov"> 97 : if (this != &amp;__x)</span>
+<span class="lineNum"> 827 </span> : {
+<span class="lineNum"> 828 </span> : // Note that _Key may be a constant type.
+<span class="lineNum"> 829 </span><span class="lineCov"> 97 : clear();</span>
+<span class="lineNum"> 830 </span><span class="lineCov"> 97 : _M_impl._M_key_compare = __x._M_impl._M_key_compare;</span>
+<span class="lineNum"> 831 </span><span class="lineCov"> 97 : if (__x._M_root() != 0)</span>
+<span class="lineNum"> 832 </span> : {
+<span class="lineNum"> 833 </span><span class="lineCov"> 53 : _M_root() = _M_copy(__x._M_begin(), _M_end());</span>
+<span class="lineNum"> 834 </span><span class="lineCov"> 53 : _M_leftmost() = _S_minimum(_M_root());</span>
+<span class="lineNum"> 835 </span><span class="lineCov"> 53 : _M_rightmost() = _S_maximum(_M_root());</span>
+<span class="lineNum"> 836 </span><span class="lineCov"> 53 : _M_impl._M_node_count = __x._M_impl._M_node_count;</span>
+<span class="lineNum"> 837 </span> : }
+<span class="lineNum"> 838 </span> : }
+<span class="lineNum"> 839 </span><span class="lineCov"> 97 : return *this;</span>
+<span class="lineNum"> 840 </span> : }
+<span class="lineNum"> 841 </span> :
+<span class="lineNum"> 842 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 843 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 844 </span> : typename _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::iterator
+<span class="lineNum"> 845 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 846 </span><span class="lineCov"> 2070706 : _M_insert_(_Const_Base_ptr __x, _Const_Base_ptr __p, const _Val&amp; __v)</span>
+<span class="lineNum"> 847 </span> : {
+<span class="lineNum"> 848 </span> : bool __insert_left = (__x != 0 || __p == _M_end()
+<span class="lineNum"> 849 </span> : || _M_impl._M_key_compare(_KeyOfValue()(__v),
+<span class="lineNum"> 850 </span><span class="lineCov"> 2070706 : _S_key(__p)));</span>
+<span class="lineNum"> 851 </span> :
+<span class="lineNum"> 852 </span><span class="lineCov"> 2070706 : _Link_type __z = _M_create_node(__v);</span>
+<span class="lineNum"> 853 </span> :
+<span class="lineNum"> 854 </span><span class="lineCov"> 2070706 : _Rb_tree_insert_and_rebalance(__insert_left, __z,</span>
+<span class="lineNum"> 855 </span> : const_cast&lt;_Base_ptr&gt;(__p),
+<span class="lineNum"> 856 </span> : this-&gt;_M_impl._M_header);
+<span class="lineNum"> 857 </span><span class="lineCov"> 2070706 : ++_M_impl._M_node_count;</span>
+<span class="lineNum"> 858 </span><span class="lineCov"> 2070706 : return iterator(__z);</span>
+<span class="lineNum"> 859 </span> : }
+<span class="lineNum"> 860 </span> :
+<span class="lineNum"> 861 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 862 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 863 </span> : typename _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::iterator
+<span class="lineNum"> 864 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 865 </span> : _M_insert_lower(_Base_ptr __x, _Base_ptr __p, const _Val&amp; __v)
+<span class="lineNum"> 866 </span> : {
+<span class="lineNum"> 867 </span> : bool __insert_left = (__x != 0 || __p == _M_end()
+<span class="lineNum"> 868 </span> : || !_M_impl._M_key_compare(_S_key(__p),
+<span class="lineNum"> 869 </span> : _KeyOfValue()(__v)));
+<span class="lineNum"> 870 </span> :
+<span class="lineNum"> 871 </span> : _Link_type __z = _M_create_node(__v);
+<span class="lineNum"> 872 </span> :
+<span class="lineNum"> 873 </span> : _Rb_tree_insert_and_rebalance(__insert_left, __z, __p,
+<span class="lineNum"> 874 </span> : this-&gt;_M_impl._M_header);
+<span class="lineNum"> 875 </span> : ++_M_impl._M_node_count;
+<span class="lineNum"> 876 </span> : return iterator(__z);
+<span class="lineNum"> 877 </span> : }
+<span class="lineNum"> 878 </span> :
+<span class="lineNum"> 879 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 880 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 881 </span> : typename _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::iterator
+<span class="lineNum"> 882 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 883 </span> : _M_insert_equal_lower(const _Val&amp; __v)
+<span class="lineNum"> 884 </span> : {
+<span class="lineNum"> 885 </span> : _Link_type __x = _M_begin();
+<span class="lineNum"> 886 </span> : _Link_type __y = _M_end();
+<span class="lineNum"> 887 </span> : while (__x != 0)
+<span class="lineNum"> 888 </span> : {
+<span class="lineNum"> 889 </span> : __y = __x;
+<span class="lineNum"> 890 </span> : __x = !_M_impl._M_key_compare(_S_key(__x), _KeyOfValue()(__v)) ?
+<span class="lineNum"> 891 </span> : _S_left(__x) : _S_right(__x);
+<span class="lineNum"> 892 </span> : }
+<span class="lineNum"> 893 </span> : return _M_insert_lower(__x, __y, __v);
+<span class="lineNum"> 894 </span> : }
+<span class="lineNum"> 895 </span> :
+<span class="lineNum"> 896 </span> : template&lt;typename _Key, typename _Val, typename _KoV,
+<span class="lineNum"> 897 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 898 </span> : typename _Rb_tree&lt;_Key, _Val, _KoV, _Compare, _Alloc&gt;::_Link_type
+<span class="lineNum"> 899 </span> : _Rb_tree&lt;_Key, _Val, _KoV, _Compare, _Alloc&gt;::
+<span class="lineNum"> 900 </span><span class="lineCov"> 2381075 : _M_copy(_Const_Link_type __x, _Link_type __p)</span>
+<span class="lineNum"> 901 </span> : {
+<span class="lineNum"> 902 </span> : // Structural copy. __x and __p must be non-null.
+<span class="lineNum"> 903 </span><span class="lineCov"> 2381075 : _Link_type __top = _M_clone_node(__x);</span>
+<span class="lineNum"> 904 </span><span class="lineCov"> 2381075 : __top-&gt;_M_parent = __p;</span>
+<span class="lineNum"> 905 </span> :
+<span class="lineNum"> 906 </span> : try
+<span class="lineNum"> 907 </span> : {
+<span class="lineNum"> 908 </span><span class="lineCov"> 2381075 : if (__x-&gt;_M_right)</span>
+<span class="lineNum"> 909 </span><span class="lineCov"> 1355924 : __top-&gt;_M_right = _M_copy(_S_right(__x), __top);</span>
+<span class="lineNum"> 910 </span><span class="lineCov"> 2381075 : __p = __top;</span>
+<span class="lineNum"> 911 </span><span class="lineCov"> 2381075 : __x = _S_left(__x);</span>
+<span class="lineNum"> 912 </span> :
+<span class="lineNum"> 913 </span><span class="lineCov"> 5955057 : while (__x != 0)</span>
+<span class="lineNum"> 914 </span> : {
+<span class="lineNum"> 915 </span><span class="lineCov"> 1192907 : _Link_type __y = _M_clone_node(__x);</span>
+<span class="lineNum"> 916 </span><span class="lineCov"> 1192907 : __p-&gt;_M_left = __y;</span>
+<span class="lineNum"> 917 </span><span class="lineCov"> 1192907 : __y-&gt;_M_parent = __p;</span>
+<span class="lineNum"> 918 </span><span class="lineCov"> 1192907 : if (__x-&gt;_M_right)</span>
+<span class="lineNum"> 919 </span><span class="lineCov"> 144518 : __y-&gt;_M_right = _M_copy(_S_right(__x), __y);</span>
+<span class="lineNum"> 920 </span><span class="lineCov"> 1192907 : __p = __y;</span>
+<span class="lineNum"> 921 </span><span class="lineCov"> 1192907 : __x = _S_left(__x);</span>
+<span class="lineNum"> 922 </span> : }
+<span class="lineNum"> 923 </span> : }
+<span class="lineNum"> 924 </span><span class="lineNoCov"> 0 : catch(...)</span>
+<span class="lineNum"> 925 </span> : {
+<span class="lineNum"> 926 </span><span class="lineNoCov"> 0 : _M_erase(__top);</span>
+<span class="lineNum"> 927 </span><span class="lineNoCov"> 0 : __throw_exception_again;</span>
+<span class="lineNum"> 928 </span> : }
+<span class="lineNum"> 929 </span><span class="lineCov"> 2381075 : return __top;</span>
+<span class="lineNum"> 930 </span> : }
+<span class="lineNum"> 931 </span> :
+<span class="lineNum"> 932 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 933 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 934 </span> : void
+<span class="lineNum"> 935 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 936 </span><span class="lineCov"> 7053477 : _M_erase(_Link_type __x)</span>
+<span class="lineNum"> 937 </span> : {
+<span class="lineNum"> 938 </span> : // Erase without rebalancing.
+<span class="lineNum"> 939 </span><span class="lineCov"> 19751483 : while (__x != 0)</span>
+<span class="lineNum"> 940 </span> : {
+<span class="lineNum"> 941 </span><span class="lineCov"> 5644529 : _M_erase(_S_right(__x));</span>
+<span class="lineNum"> 942 </span><span class="lineCov"> 5644529 : _Link_type __y = _S_left(__x);</span>
+<span class="lineNum"> 943 </span><span class="lineCov"> 5644529 : _M_destroy_node(__x);</span>
+<span class="lineNum"> 944 </span><span class="lineCov"> 5644529 : __x = __y;</span>
+<span class="lineNum"> 945 </span> : }
+<span class="lineNum"> 946 </span><span class="lineCov"> 7053477 : }</span>
+<span class="lineNum"> 947 </span> :
+<span class="lineNum"> 948 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 949 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 950 </span> : typename _Rb_tree&lt;_Key, _Val, _KeyOfValue,
+<span class="lineNum"> 951 </span> : _Compare, _Alloc&gt;::iterator
+<span class="lineNum"> 952 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 953 </span> : _M_lower_bound(_Link_type __x, _Link_type __y,
+<span class="lineNum"> 954 </span><span class="lineCov"> 56455 : const _Key&amp; __k)</span>
+<span class="lineNum"> 955 </span> : {
+<span class="lineNum"> 956 </span><span class="lineCov"> 956283 : while (__x != 0)</span>
+<span class="lineNum"> 957 </span><span class="lineCov"> 843373 : if (!_M_impl._M_key_compare(_S_key(__x), __k))</span>
+<span class="lineNum"> 958 </span><span class="lineCov"> 159236 : __y = __x, __x = _S_left(__x);</span>
+<span class="lineNum"> 959 </span> : else
+<span class="lineNum"> 960 </span><span class="lineCov"> 684137 : __x = _S_right(__x);</span>
+<span class="lineNum"> 961 </span><span class="lineCov"> 56455 : return iterator(__y);</span>
+<span class="lineNum"> 962 </span> : }
+<span class="lineNum"> 963 </span> :
+<span class="lineNum"> 964 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 965 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 966 </span> : typename _Rb_tree&lt;_Key, _Val, _KeyOfValue,
+<span class="lineNum"> 967 </span> : _Compare, _Alloc&gt;::const_iterator
+<span class="lineNum"> 968 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 969 </span> : _M_lower_bound(_Const_Link_type __x, _Const_Link_type __y,
+<span class="lineNum"> 970 </span><span class="lineCov"> 3932 : const _Key&amp; __k) const</span>
+<span class="lineNum"> 971 </span> : {
+<span class="lineNum"> 972 </span><span class="lineCov"> 16029 : while (__x != 0)</span>
+<span class="lineNum"> 973 </span><span class="lineCov"> 8165 : if (!_M_impl._M_key_compare(_S_key(__x), __k))</span>
+<span class="lineNum"> 974 </span><span class="lineCov"> 5885 : __y = __x, __x = _S_left(__x);</span>
+<span class="lineNum"> 975 </span> : else
+<span class="lineNum"> 976 </span><span class="lineCov"> 2280 : __x = _S_right(__x);</span>
+<span class="lineNum"> 977 </span><span class="lineCov"> 3932 : return const_iterator(__y);</span>
+<span class="lineNum"> 978 </span> : }
+<span class="lineNum"> 979 </span> :
+<span class="lineNum"> 980 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 981 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 982 </span> : typename _Rb_tree&lt;_Key, _Val, _KeyOfValue,
+<span class="lineNum"> 983 </span> : _Compare, _Alloc&gt;::iterator
+<span class="lineNum"> 984 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 985 </span> : _M_upper_bound(_Link_type __x, _Link_type __y,
+<span class="lineNum"> 986 </span><span class="lineCov"> 2 : const _Key&amp; __k)</span>
+<span class="lineNum"> 987 </span> : {
+<span class="lineNum"> 988 </span><span class="lineCov"> 4 : while (__x != 0)</span>
+<span class="lineNum"> 989 </span><span class="lineNoCov"> 0 : if (_M_impl._M_key_compare(__k, _S_key(__x)))</span>
+<span class="lineNum"> 990 </span><span class="lineNoCov"> 0 : __y = __x, __x = _S_left(__x);</span>
+<span class="lineNum"> 991 </span> : else
+<span class="lineNum"> 992 </span><span class="lineNoCov"> 0 : __x = _S_right(__x);</span>
+<span class="lineNum"> 993 </span><span class="lineCov"> 2 : return iterator(__y);</span>
+<span class="lineNum"> 994 </span> : }
+<span class="lineNum"> 995 </span> :
+<span class="lineNum"> 996 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 997 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 998 </span> : typename _Rb_tree&lt;_Key, _Val, _KeyOfValue,
+<span class="lineNum"> 999 </span> : _Compare, _Alloc&gt;::const_iterator
+<span class="lineNum"> 1000 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 1001 </span> : _M_upper_bound(_Const_Link_type __x, _Const_Link_type __y,
+<span class="lineNum"> 1002 </span> : const _Key&amp; __k) const
+<span class="lineNum"> 1003 </span> : {
+<span class="lineNum"> 1004 </span> : while (__x != 0)
+<span class="lineNum"> 1005 </span> : if (_M_impl._M_key_compare(__k, _S_key(__x)))
+<span class="lineNum"> 1006 </span> : __y = __x, __x = _S_left(__x);
+<span class="lineNum"> 1007 </span> : else
+<span class="lineNum"> 1008 </span> : __x = _S_right(__x);
+<span class="lineNum"> 1009 </span> : return const_iterator(__y);
+<span class="lineNum"> 1010 </span> : }
+<span class="lineNum"> 1011 </span> :
+<span class="lineNum"> 1012 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 1013 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 1014 </span> : pair&lt;typename _Rb_tree&lt;_Key, _Val, _KeyOfValue,
+<span class="lineNum"> 1015 </span> : _Compare, _Alloc&gt;::iterator,
+<span class="lineNum"> 1016 </span> : typename _Rb_tree&lt;_Key, _Val, _KeyOfValue,
+<span class="lineNum"> 1017 </span> : _Compare, _Alloc&gt;::iterator&gt;
+<span class="lineNum"> 1018 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 1019 </span><span class="lineCov"> 9 : equal_range(const _Key&amp; __k)</span>
+<span class="lineNum"> 1020 </span> : {
+<span class="lineNum"> 1021 </span><span class="lineCov"> 9 : _Link_type __x = _M_begin();</span>
+<span class="lineNum"> 1022 </span><span class="lineCov"> 9 : _Link_type __y = _M_end();</span>
+<span class="lineNum"> 1023 </span><span class="lineCov"> 20 : while (__x != 0)</span>
+<span class="lineNum"> 1024 </span> : {
+<span class="lineNum"> 1025 </span><span class="lineCov"> 4 : if (_M_impl._M_key_compare(_S_key(__x), __k))</span>
+<span class="lineNum"> 1026 </span><span class="lineNoCov"> 0 : __x = _S_right(__x);</span>
+<span class="lineNum"> 1027 </span><span class="lineCov"> 4 : else if (_M_impl._M_key_compare(__k, _S_key(__x)))</span>
+<span class="lineNum"> 1028 </span><span class="lineCov"> 2 : __y = __x, __x = _S_left(__x);</span>
+<span class="lineNum"> 1029 </span> : else
+<span class="lineNum"> 1030 </span> : {
+<span class="lineNum"> 1031 </span><span class="lineCov"> 2 : _Link_type __xu(__x), __yu(__y);</span>
+<span class="lineNum"> 1032 </span><span class="lineCov"> 2 : __y = __x, __x = _S_left(__x);</span>
+<span class="lineNum"> 1033 </span><span class="lineCov"> 2 : __xu = _S_right(__xu);</span>
+<span class="lineNum"> 1034 </span> : return pair&lt;iterator,
+<span class="lineNum"> 1035 </span> : iterator&gt;(_M_lower_bound(__x, __y, __k),
+<span class="lineNum"> 1036 </span><span class="lineCov"> 2 : _M_upper_bound(__xu, __yu, __k));</span>
+<span class="lineNum"> 1037 </span> : }
+<span class="lineNum"> 1038 </span> : }
+<span class="lineNum"> 1039 </span> : return pair&lt;iterator, iterator&gt;(iterator(__y),
+<span class="lineNum"> 1040 </span><span class="lineCov"> 7 : iterator(__y));</span>
+<span class="lineNum"> 1041 </span> : }
+<span class="lineNum"> 1042 </span> :
+<span class="lineNum"> 1043 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 1044 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 1045 </span> : pair&lt;typename _Rb_tree&lt;_Key, _Val, _KeyOfValue,
+<span class="lineNum"> 1046 </span> : _Compare, _Alloc&gt;::const_iterator,
+<span class="lineNum"> 1047 </span> : typename _Rb_tree&lt;_Key, _Val, _KeyOfValue,
+<span class="lineNum"> 1048 </span> : _Compare, _Alloc&gt;::const_iterator&gt;
+<span class="lineNum"> 1049 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 1050 </span> : equal_range(const _Key&amp; __k) const
+<span class="lineNum"> 1051 </span> : {
+<span class="lineNum"> 1052 </span> : _Const_Link_type __x = _M_begin();
+<span class="lineNum"> 1053 </span> : _Const_Link_type __y = _M_end();
+<span class="lineNum"> 1054 </span> : while (__x != 0)
+<span class="lineNum"> 1055 </span> : {
+<span class="lineNum"> 1056 </span> : if (_M_impl._M_key_compare(_S_key(__x), __k))
+<span class="lineNum"> 1057 </span> : __x = _S_right(__x);
+<span class="lineNum"> 1058 </span> : else if (_M_impl._M_key_compare(__k, _S_key(__x)))
+<span class="lineNum"> 1059 </span> : __y = __x, __x = _S_left(__x);
+<span class="lineNum"> 1060 </span> : else
+<span class="lineNum"> 1061 </span> : {
+<span class="lineNum"> 1062 </span> : _Const_Link_type __xu(__x), __yu(__y);
+<span class="lineNum"> 1063 </span> : __y = __x, __x = _S_left(__x);
+<span class="lineNum"> 1064 </span> : __xu = _S_right(__xu);
+<span class="lineNum"> 1065 </span> : return pair&lt;const_iterator,
+<span class="lineNum"> 1066 </span> : const_iterator&gt;(_M_lower_bound(__x, __y, __k),
+<span class="lineNum"> 1067 </span> : _M_upper_bound(__xu, __yu, __k));
+<span class="lineNum"> 1068 </span> : }
+<span class="lineNum"> 1069 </span> : }
+<span class="lineNum"> 1070 </span> : return pair&lt;const_iterator, const_iterator&gt;(const_iterator(__y),
+<span class="lineNum"> 1071 </span> : const_iterator(__y));
+<span class="lineNum"> 1072 </span> : }
+<span class="lineNum"> 1073 </span> :
+<span class="lineNum"> 1074 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 1075 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 1076 </span> : void
+<span class="lineNum"> 1077 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 1078 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 1079 </span> : swap(_Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;&amp;&amp; __t)
+<span class="lineNum"> 1080 </span> : #else
+<span class="lineNum"> 1081 </span> : swap(_Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;&amp; __t)
+<span class="lineNum"> 1082 </span> : #endif
+<span class="lineNum"> 1083 </span> : {
+<span class="lineNum"> 1084 </span> : if (_M_root() == 0)
+<span class="lineNum"> 1085 </span> : {
+<span class="lineNum"> 1086 </span> : if (__t._M_root() != 0)
+<span class="lineNum"> 1087 </span> : {
+<span class="lineNum"> 1088 </span> : _M_root() = __t._M_root();
+<span class="lineNum"> 1089 </span> : _M_leftmost() = __t._M_leftmost();
+<span class="lineNum"> 1090 </span> : _M_rightmost() = __t._M_rightmost();
+<span class="lineNum"> 1091 </span> : _M_root()-&gt;_M_parent = _M_end();
+<span class="lineNum"> 1092 </span> :
+<span class="lineNum"> 1093 </span> : __t._M_root() = 0;
+<span class="lineNum"> 1094 </span> : __t._M_leftmost() = __t._M_end();
+<span class="lineNum"> 1095 </span> : __t._M_rightmost() = __t._M_end();
+<span class="lineNum"> 1096 </span> : }
+<span class="lineNum"> 1097 </span> : }
+<span class="lineNum"> 1098 </span> : else if (__t._M_root() == 0)
+<span class="lineNum"> 1099 </span> : {
+<span class="lineNum"> 1100 </span> : __t._M_root() = _M_root();
+<span class="lineNum"> 1101 </span> : __t._M_leftmost() = _M_leftmost();
+<span class="lineNum"> 1102 </span> : __t._M_rightmost() = _M_rightmost();
+<span class="lineNum"> 1103 </span> : __t._M_root()-&gt;_M_parent = __t._M_end();
+<span class="lineNum"> 1104 </span> :
+<span class="lineNum"> 1105 </span> : _M_root() = 0;
+<span class="lineNum"> 1106 </span> : _M_leftmost() = _M_end();
+<span class="lineNum"> 1107 </span> : _M_rightmost() = _M_end();
+<span class="lineNum"> 1108 </span> : }
+<span class="lineNum"> 1109 </span> : else
+<span class="lineNum"> 1110 </span> : {
+<span class="lineNum"> 1111 </span> : std::swap(_M_root(),__t._M_root());
+<span class="lineNum"> 1112 </span> : std::swap(_M_leftmost(),__t._M_leftmost());
+<span class="lineNum"> 1113 </span> : std::swap(_M_rightmost(),__t._M_rightmost());
+<span class="lineNum"> 1114 </span> :
+<span class="lineNum"> 1115 </span> : _M_root()-&gt;_M_parent = _M_end();
+<span class="lineNum"> 1116 </span> : __t._M_root()-&gt;_M_parent = __t._M_end();
+<span class="lineNum"> 1117 </span> : }
+<span class="lineNum"> 1118 </span> : // No need to swap header's color as it does not change.
+<span class="lineNum"> 1119 </span> : std::swap(this-&gt;_M_impl._M_node_count, __t._M_impl._M_node_count);
+<span class="lineNum"> 1120 </span> : std::swap(this-&gt;_M_impl._M_key_compare, __t._M_impl._M_key_compare);
+<span class="lineNum"> 1121 </span> :
+<span class="lineNum"> 1122 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 1123 </span> : // 431. Swapping containers with unequal allocators.
+<span class="lineNum"> 1124 </span> : std::__alloc_swap&lt;_Node_allocator&gt;::
+<span class="lineNum"> 1125 </span> : _S_do_it(_M_get_Node_allocator(), __t._M_get_Node_allocator());
+<span class="lineNum"> 1126 </span> : }
+<span class="lineNum"> 1127 </span> :
+<span class="lineNum"> 1128 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 1129 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 1130 </span> : pair&lt;typename _Rb_tree&lt;_Key, _Val, _KeyOfValue,
+<span class="lineNum"> 1131 </span> : _Compare, _Alloc&gt;::iterator, bool&gt;
+<span class="lineNum"> 1132 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 1133 </span><span class="lineCov"> 1653740 : _M_insert_unique(const _Val&amp; __v)</span>
+<span class="lineNum"> 1134 </span> : {
+<span class="lineNum"> 1135 </span><span class="lineCov"> 1653740 : _Link_type __x = _M_begin();</span>
+<span class="lineNum"> 1136 </span><span class="lineCov"> 1653740 : _Link_type __y = _M_end();</span>
+<span class="lineNum"> 1137 </span><span class="lineCov"> 1653740 : bool __comp = true;</span>
+<span class="lineNum"> 1138 </span><span class="lineCov"> 9798389 : while (__x != 0)</span>
+<span class="lineNum"> 1139 </span> : {
+<span class="lineNum"> 1140 </span><span class="lineCov"> 6490909 : __y = __x;</span>
+<span class="lineNum"> 1141 </span><span class="lineCov"> 6490909 : __comp = _M_impl._M_key_compare(_KeyOfValue()(__v), _S_key(__x));</span>
+<span class="lineNum"> 1142 </span><span class="lineCov"> 6490909 : __x = __comp ? _S_left(__x) : _S_right(__x);</span>
+<span class="lineNum"> 1143 </span> : }
+<span class="lineNum"> 1144 </span><span class="lineCov"> 1653740 : iterator __j = iterator(__y);</span>
+<span class="lineNum"> 1145 </span><span class="lineCov"> 1653740 : if (__comp)</span>
+<span class="lineNum"> 1146 </span> : {
+<span class="lineNum"> 1147 </span><span class="lineCov"> 536188 : if (__j == begin())</span>
+<span class="lineNum"> 1148 </span><span class="lineCov"> 452855 : return pair&lt;iterator, bool&gt;(_M_insert_(__x, __y, __v), true);</span>
+<span class="lineNum"> 1149 </span> : else
+<span class="lineNum"> 1150 </span><span class="lineCov"> 83333 : --__j;</span>
+<span class="lineNum"> 1151 </span> : }
+<span class="lineNum"> 1152 </span><span class="lineCov"> 1200885 : if (_M_impl._M_key_compare(_S_key(__j._M_node), _KeyOfValue()(__v)))</span>
+<span class="lineNum"> 1153 </span><span class="lineCov"> 1095156 : return pair&lt;iterator, bool&gt;(_M_insert_(__x, __y, __v), true);</span>
+<span class="lineNum"> 1154 </span><span class="lineCov"> 105729 : return pair&lt;iterator, bool&gt;(__j, false);</span>
+<span class="lineNum"> 1155 </span> : }
+<span class="lineNum"> 1156 </span> :
+<span class="lineNum"> 1157 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 1158 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 1159 </span> : typename _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::iterator
+<span class="lineNum"> 1160 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 1161 </span> : _M_insert_equal(const _Val&amp; __v)
+<span class="lineNum"> 1162 </span> : {
+<span class="lineNum"> 1163 </span> : _Link_type __x = _M_begin();
+<span class="lineNum"> 1164 </span> : _Link_type __y = _M_end();
+<span class="lineNum"> 1165 </span> : while (__x != 0)
+<span class="lineNum"> 1166 </span> : {
+<span class="lineNum"> 1167 </span> : __y = __x;
+<span class="lineNum"> 1168 </span> : __x = _M_impl._M_key_compare(_KeyOfValue()(__v), _S_key(__x)) ?
+<span class="lineNum"> 1169 </span> : _S_left(__x) : _S_right(__x);
+<span class="lineNum"> 1170 </span> : }
+<span class="lineNum"> 1171 </span> : return _M_insert_(__x, __y, __v);
+<span class="lineNum"> 1172 </span> : }
+<span class="lineNum"> 1173 </span> :
+<span class="lineNum"> 1174 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 1175 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 1176 </span> : typename _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::iterator
+<span class="lineNum"> 1177 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 1178 </span><span class="lineCov"> 652700 : _M_insert_unique_(const_iterator __position, const _Val&amp; __v)</span>
+<span class="lineNum"> 1179 </span> : {
+<span class="lineNum"> 1180 </span> : // end()
+<span class="lineNum"> 1181 </span><span class="lineCov"> 652700 : if (__position._M_node == _M_end())</span>
+<span class="lineNum"> 1182 </span> : {
+<span class="lineNum"> 1183 </span><span class="lineCov"> 649758 : if (size() &gt; 0</span>
+<span class="lineNum"> 1184 </span> : &amp;&amp; _M_impl._M_key_compare(_S_key(_M_rightmost()),
+<span class="lineNum"> 1185 </span> : _KeyOfValue()(__v)))
+<span class="lineNum"> 1186 </span><span class="lineCov"> 521501 : return _M_insert_(0, _M_rightmost(), __v);</span>
+<span class="lineNum"> 1187 </span> : else
+<span class="lineNum"> 1188 </span><span class="lineCov"> 128257 : return _M_insert_unique(__v).first;</span>
+<span class="lineNum"> 1189 </span> : }
+<span class="lineNum"> 1190 </span><span class="lineCov"> 2942 : else if (_M_impl._M_key_compare(_KeyOfValue()(__v),</span>
+<span class="lineNum"> 1191 </span> : _S_key(__position._M_node)))
+<span class="lineNum"> 1192 </span> : {
+<span class="lineNum"> 1193 </span> : // First, try before...
+<span class="lineNum"> 1194 </span><span class="lineCov"> 2040 : const_iterator __before = __position;</span>
+<span class="lineNum"> 1195 </span><span class="lineCov"> 2040 : if (__position._M_node == _M_leftmost()) // begin()</span>
+<span class="lineNum"> 1196 </span><span class="lineCov"> 72 : return _M_insert_(_M_leftmost(), _M_leftmost(), __v);</span>
+<span class="lineNum"> 1197 </span><span class="lineCov"> 1968 : else if (_M_impl._M_key_compare(_S_key((--__before)._M_node), </span>
+<span class="lineNum"> 1198 </span> : _KeyOfValue()(__v)))
+<span class="lineNum"> 1199 </span> : {
+<span class="lineNum"> 1200 </span><span class="lineCov"> 1101 : if (_S_right(__before._M_node) == 0)</span>
+<span class="lineNum"> 1201 </span><span class="lineCov"> 562 : return _M_insert_(0, __before._M_node, __v);</span>
+<span class="lineNum"> 1202 </span> : else
+<span class="lineNum"> 1203 </span> : return _M_insert_(__position._M_node,
+<span class="lineNum"> 1204 </span><span class="lineCov"> 539 : __position._M_node, __v);</span>
+<span class="lineNum"> 1205 </span> : }
+<span class="lineNum"> 1206 </span> : else
+<span class="lineNum"> 1207 </span><span class="lineCov"> 867 : return _M_insert_unique(__v).first;</span>
+<span class="lineNum"> 1208 </span> : }
+<span class="lineNum"> 1209 </span><span class="lineCov"> 902 : else if (_M_impl._M_key_compare(_S_key(__position._M_node),</span>
+<span class="lineNum"> 1210 </span> : _KeyOfValue()(__v)))
+<span class="lineNum"> 1211 </span> : {
+<span class="lineNum"> 1212 </span> : // ... then try after.
+<span class="lineNum"> 1213 </span><span class="lineCov"> 902 : const_iterator __after = __position;</span>
+<span class="lineNum"> 1214 </span><span class="lineCov"> 902 : if (__position._M_node == _M_rightmost())</span>
+<span class="lineNum"> 1215 </span><span class="lineCov"> 13 : return _M_insert_(0, _M_rightmost(), __v);</span>
+<span class="lineNum"> 1216 </span><span class="lineCov"> 889 : else if (_M_impl._M_key_compare(_KeyOfValue()(__v),</span>
+<span class="lineNum"> 1217 </span> : _S_key((++__after)._M_node)))
+<span class="lineNum"> 1218 </span> : {
+<span class="lineNum"> 1219 </span><span class="lineCov"> 8 : if (_S_right(__position._M_node) == 0)</span>
+<span class="lineNum"> 1220 </span><span class="lineCov"> 4 : return _M_insert_(0, __position._M_node, __v);</span>
+<span class="lineNum"> 1221 </span> : else
+<span class="lineNum"> 1222 </span><span class="lineCov"> 4 : return _M_insert_(__after._M_node, __after._M_node, __v);</span>
+<span class="lineNum"> 1223 </span> : }
+<span class="lineNum"> 1224 </span> : else
+<span class="lineNum"> 1225 </span><span class="lineCov"> 881 : return _M_insert_unique(__v).first;</span>
+<span class="lineNum"> 1226 </span> : }
+<span class="lineNum"> 1227 </span> : else
+<span class="lineNum"> 1228 </span> : // Equivalent keys.
+<span class="lineNum"> 1229 </span> : return iterator(static_cast&lt;_Link_type&gt;
+<span class="lineNum"> 1230 </span><span class="lineNoCov"> 0 : (const_cast&lt;_Base_ptr&gt;(__position._M_node)));</span>
+<span class="lineNum"> 1231 </span> : }
+<span class="lineNum"> 1232 </span> :
+<span class="lineNum"> 1233 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 1234 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 1235 </span> : typename _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::iterator
+<span class="lineNum"> 1236 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 1237 </span> : _M_insert_equal_(const_iterator __position, const _Val&amp; __v)
+<span class="lineNum"> 1238 </span> : {
+<span class="lineNum"> 1239 </span> : // end()
+<span class="lineNum"> 1240 </span> : if (__position._M_node == _M_end())
+<span class="lineNum"> 1241 </span> : {
+<span class="lineNum"> 1242 </span> : if (size() &gt; 0
+<span class="lineNum"> 1243 </span> : &amp;&amp; !_M_impl._M_key_compare(_KeyOfValue()(__v),
+<span class="lineNum"> 1244 </span> : _S_key(_M_rightmost())))
+<span class="lineNum"> 1245 </span> : return _M_insert_(0, _M_rightmost(), __v);
+<span class="lineNum"> 1246 </span> : else
+<span class="lineNum"> 1247 </span> : return _M_insert_equal(__v);
+<span class="lineNum"> 1248 </span> : }
+<span class="lineNum"> 1249 </span> : else if (!_M_impl._M_key_compare(_S_key(__position._M_node),
+<span class="lineNum"> 1250 </span> : _KeyOfValue()(__v)))
+<span class="lineNum"> 1251 </span> : {
+<span class="lineNum"> 1252 </span> : // First, try before...
+<span class="lineNum"> 1253 </span> : const_iterator __before = __position;
+<span class="lineNum"> 1254 </span> : if (__position._M_node == _M_leftmost()) // begin()
+<span class="lineNum"> 1255 </span> : return _M_insert_(_M_leftmost(), _M_leftmost(), __v);
+<span class="lineNum"> 1256 </span> : else if (!_M_impl._M_key_compare(_KeyOfValue()(__v),
+<span class="lineNum"> 1257 </span> : _S_key((--__before)._M_node)))
+<span class="lineNum"> 1258 </span> : {
+<span class="lineNum"> 1259 </span> : if (_S_right(__before._M_node) == 0)
+<span class="lineNum"> 1260 </span> : return _M_insert_(0, __before._M_node, __v);
+<span class="lineNum"> 1261 </span> : else
+<span class="lineNum"> 1262 </span> : return _M_insert_(__position._M_node,
+<span class="lineNum"> 1263 </span> : __position._M_node, __v);
+<span class="lineNum"> 1264 </span> : }
+<span class="lineNum"> 1265 </span> : else
+<span class="lineNum"> 1266 </span> : return _M_insert_equal(__v);
+<span class="lineNum"> 1267 </span> : }
+<span class="lineNum"> 1268 </span> : else
+<span class="lineNum"> 1269 </span> : {
+<span class="lineNum"> 1270 </span> : // ... then try after.
+<span class="lineNum"> 1271 </span> : const_iterator __after = __position;
+<span class="lineNum"> 1272 </span> : if (__position._M_node == _M_rightmost())
+<span class="lineNum"> 1273 </span> : return _M_insert_(0, _M_rightmost(), __v);
+<span class="lineNum"> 1274 </span> : else if (!_M_impl._M_key_compare(_S_key((++__after)._M_node),
+<span class="lineNum"> 1275 </span> : _KeyOfValue()(__v)))
+<span class="lineNum"> 1276 </span> : {
+<span class="lineNum"> 1277 </span> : if (_S_right(__position._M_node) == 0)
+<span class="lineNum"> 1278 </span> : return _M_insert_(0, __position._M_node, __v);
+<span class="lineNum"> 1279 </span> : else
+<span class="lineNum"> 1280 </span> : return _M_insert_(__after._M_node, __after._M_node, __v);
+<span class="lineNum"> 1281 </span> : }
+<span class="lineNum"> 1282 </span> : else
+<span class="lineNum"> 1283 </span> : return _M_insert_equal_lower(__v);
+<span class="lineNum"> 1284 </span> : }
+<span class="lineNum"> 1285 </span> : }
+<span class="lineNum"> 1286 </span> :
+<span class="lineNum"> 1287 </span> : template&lt;typename _Key, typename _Val, typename _KoV,
+<span class="lineNum"> 1288 </span> : typename _Cmp, typename _Alloc&gt;
+<span class="lineNum"> 1289 </span> : template&lt;class _II&gt;
+<span class="lineNum"> 1290 </span> : void
+<span class="lineNum"> 1291 </span> : _Rb_tree&lt;_Key, _Val, _KoV, _Cmp, _Alloc&gt;::
+<span class="lineNum"> 1292 </span> : _M_insert_unique(_II __first, _II __last)
+<span class="lineNum"> 1293 </span> : {
+<span class="lineNum"> 1294 </span> : for (; __first != __last; ++__first)
+<span class="lineNum"> 1295 </span> : _M_insert_unique_(end(), *__first);
+<span class="lineNum"> 1296 </span> : }
+<span class="lineNum"> 1297 </span> :
+<span class="lineNum"> 1298 </span> : template&lt;typename _Key, typename _Val, typename _KoV,
+<span class="lineNum"> 1299 </span> : typename _Cmp, typename _Alloc&gt;
+<span class="lineNum"> 1300 </span> : template&lt;class _II&gt;
+<span class="lineNum"> 1301 </span> : void
+<span class="lineNum"> 1302 </span> : _Rb_tree&lt;_Key, _Val, _KoV, _Cmp, _Alloc&gt;::
+<span class="lineNum"> 1303 </span> : _M_insert_equal(_II __first, _II __last)
+<span class="lineNum"> 1304 </span> : {
+<span class="lineNum"> 1305 </span> : for (; __first != __last; ++__first)
+<span class="lineNum"> 1306 </span> : _M_insert_equal_(end(), *__first);
+<span class="lineNum"> 1307 </span> : }
+<span class="lineNum"> 1308 </span> :
+<span class="lineNum"> 1309 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 1310 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 1311 </span> : inline void
+<span class="lineNum"> 1312 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 1313 </span><span class="lineNoCov"> 0 : erase(iterator __position)</span>
+<span class="lineNum"> 1314 </span> : {
+<span class="lineNum"> 1315 </span> : _Link_type __y =
+<span class="lineNum"> 1316 </span> : static_cast&lt;_Link_type&gt;(_Rb_tree_rebalance_for_erase
+<span class="lineNum"> 1317 </span> : (__position._M_node,
+<span class="lineNum"> 1318 </span><span class="lineNoCov"> 0 : this-&gt;_M_impl._M_header));</span>
+<span class="lineNum"> 1319 </span><span class="lineNoCov"> 0 : _M_destroy_node(__y);</span>
+<span class="lineNum"> 1320 </span><span class="lineNoCov"> 0 : --_M_impl._M_node_count;</span>
+<span class="lineNum"> 1321 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 1322 </span> :
+<span class="lineNum"> 1323 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 1324 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 1325 </span> : inline void
+<span class="lineNum"> 1326 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 1327 </span><span class="lineCov"> 129 : erase(const_iterator __position)</span>
+<span class="lineNum"> 1328 </span> : {
+<span class="lineNum"> 1329 </span> : _Link_type __y =
+<span class="lineNum"> 1330 </span> : static_cast&lt;_Link_type&gt;(_Rb_tree_rebalance_for_erase
+<span class="lineNum"> 1331 </span> : (const_cast&lt;_Base_ptr&gt;(__position._M_node),
+<span class="lineNum"> 1332 </span><span class="lineCov"> 129 : this-&gt;_M_impl._M_header));</span>
+<span class="lineNum"> 1333 </span><span class="lineCov"> 129 : _M_destroy_node(__y);</span>
+<span class="lineNum"> 1334 </span><span class="lineCov"> 129 : --_M_impl._M_node_count;</span>
+<span class="lineNum"> 1335 </span><span class="lineCov"> 129 : }</span>
+<span class="lineNum"> 1336 </span> :
+<span class="lineNum"> 1337 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 1338 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 1339 </span> : typename _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::size_type
+<span class="lineNum"> 1340 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 1341 </span><span class="lineCov"> 9 : erase(const _Key&amp; __x)</span>
+<span class="lineNum"> 1342 </span> : {
+<span class="lineNum"> 1343 </span><span class="lineCov"> 9 : pair&lt;iterator, iterator&gt; __p = equal_range(__x);</span>
+<span class="lineNum"> 1344 </span><span class="lineCov"> 9 : const size_type __old_size = size();</span>
+<span class="lineNum"> 1345 </span><span class="lineCov"> 9 : erase(__p.first, __p.second);</span>
+<span class="lineNum"> 1346 </span><span class="lineCov"> 9 : return __old_size - size();</span>
+<span class="lineNum"> 1347 </span> : }
+<span class="lineNum"> 1348 </span> :
+<span class="lineNum"> 1349 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 1350 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 1351 </span> : void
+<span class="lineNum"> 1352 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 1353 </span><span class="lineCov"> 9 : erase(iterator __first, iterator __last)</span>
+<span class="lineNum"> 1354 </span> : {
+<span class="lineNum"> 1355 </span><span class="lineCov"> 9 : if (__first == begin() &amp;&amp; __last == end())</span>
+<span class="lineNum"> 1356 </span><span class="lineCov"> 7 : clear();</span>
+<span class="lineNum"> 1357 </span> : else
+<span class="lineNum"> 1358 </span><span class="lineCov"> 4 : while (__first != __last)</span>
+<span class="lineNum"> 1359 </span><span class="lineNoCov"> 0 : erase(__first++);</span>
+<span class="lineNum"> 1360 </span><span class="lineCov"> 9 : }</span>
+<span class="lineNum"> 1361 </span> :
+<span class="lineNum"> 1362 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 1363 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 1364 </span> : void
+<span class="lineNum"> 1365 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 1366 </span> : erase(const_iterator __first, const_iterator __last)
+<span class="lineNum"> 1367 </span> : {
+<span class="lineNum"> 1368 </span> : if (__first == begin() &amp;&amp; __last == end())
+<span class="lineNum"> 1369 </span> : clear();
+<span class="lineNum"> 1370 </span> : else
+<span class="lineNum"> 1371 </span> : while (__first != __last)
+<span class="lineNum"> 1372 </span> : erase(__first++);
+<span class="lineNum"> 1373 </span> : }
+<span class="lineNum"> 1374 </span> :
+<span class="lineNum"> 1375 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 1376 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 1377 </span> : void
+<span class="lineNum"> 1378 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 1379 </span> : erase(const _Key* __first, const _Key* __last)
+<span class="lineNum"> 1380 </span> : {
+<span class="lineNum"> 1381 </span> : while (__first != __last)
+<span class="lineNum"> 1382 </span> : erase(*__first++);
+<span class="lineNum"> 1383 </span> : }
+<span class="lineNum"> 1384 </span> :
+<span class="lineNum"> 1385 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 1386 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 1387 </span> : typename _Rb_tree&lt;_Key, _Val, _KeyOfValue,
+<span class="lineNum"> 1388 </span> : _Compare, _Alloc&gt;::iterator
+<span class="lineNum"> 1389 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 1390 </span><span class="lineCov"> 50156 : find(const _Key&amp; __k)</span>
+<span class="lineNum"> 1391 </span> : {
+<span class="lineNum"> 1392 </span><span class="lineCov"> 50156 : iterator __j = _M_lower_bound(_M_begin(), _M_end(), __k);</span>
+<span class="lineNum"> 1393 </span> : return (__j == end()
+<span class="lineNum"> 1394 </span> : || _M_impl._M_key_compare(__k,
+<span class="lineNum"> 1395 </span><span class="lineCov"> 50156 : _S_key(__j._M_node))) ? end() : __j;</span>
+<span class="lineNum"> 1396 </span> : }
+<span class="lineNum"> 1397 </span> :
+<span class="lineNum"> 1398 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 1399 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 1400 </span> : typename _Rb_tree&lt;_Key, _Val, _KeyOfValue,
+<span class="lineNum"> 1401 </span> : _Compare, _Alloc&gt;::const_iterator
+<span class="lineNum"> 1402 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 1403 </span><span class="lineCov"> 3932 : find(const _Key&amp; __k) const</span>
+<span class="lineNum"> 1404 </span> : {
+<span class="lineNum"> 1405 </span><span class="lineCov"> 3932 : const_iterator __j = _M_lower_bound(_M_begin(), _M_end(), __k);</span>
+<span class="lineNum"> 1406 </span> : return (__j == end()
+<span class="lineNum"> 1407 </span> : || _M_impl._M_key_compare(__k,
+<span class="lineNum"> 1408 </span><span class="lineCov"> 3932 : _S_key(__j._M_node))) ? end() : __j;</span>
+<span class="lineNum"> 1409 </span> : }
+<span class="lineNum"> 1410 </span> :
+<span class="lineNum"> 1411 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 1412 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 1413 </span> : typename _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::size_type
+<span class="lineNum"> 1414 </span> : _Rb_tree&lt;_Key, _Val, _KeyOfValue, _Compare, _Alloc&gt;::
+<span class="lineNum"> 1415 </span> : count(const _Key&amp; __k) const
+<span class="lineNum"> 1416 </span> : {
+<span class="lineNum"> 1417 </span> : pair&lt;const_iterator, const_iterator&gt; __p = equal_range(__k);
+<span class="lineNum"> 1418 </span> : const size_type __n = std::distance(__p.first, __p.second);
+<span class="lineNum"> 1419 </span> : return __n;
+<span class="lineNum"> 1420 </span> : }
+<span class="lineNum"> 1421 </span> :
+<span class="lineNum"> 1422 </span> : unsigned int
+<span class="lineNum"> 1423 </span> : _Rb_tree_black_count(const _Rb_tree_node_base* __node,
+<span class="lineNum"> 1424 </span> : const _Rb_tree_node_base* __root);
+<span class="lineNum"> 1425 </span> :
+<span class="lineNum"> 1426 </span> : template&lt;typename _Key, typename _Val, typename _KeyOfValue,
+<span class="lineNum"> 1427 </span> : typename _Compare, typename _Alloc&gt;
+<span class="lineNum"> 1428 </span> : bool
+<span class="lineNum"> 1429 </span> : _Rb_tree&lt;_Key,_Val,_KeyOfValue,_Compare,_Alloc&gt;::__rb_verify() const
+<span class="lineNum"> 1430 </span> : {
+<span class="lineNum"> 1431 </span> : if (_M_impl._M_node_count == 0 || begin() == end())
+<span class="lineNum"> 1432 </span> : return _M_impl._M_node_count == 0 &amp;&amp; begin() == end()
+<span class="lineNum"> 1433 </span> : &amp;&amp; this-&gt;_M_impl._M_header._M_left == _M_end()
+<span class="lineNum"> 1434 </span> : &amp;&amp; this-&gt;_M_impl._M_header._M_right == _M_end();
+<span class="lineNum"> 1435 </span> :
+<span class="lineNum"> 1436 </span> : unsigned int __len = _Rb_tree_black_count(_M_leftmost(), _M_root());
+<span class="lineNum"> 1437 </span> : for (const_iterator __it = begin(); __it != end(); ++__it)
+<span class="lineNum"> 1438 </span> : {
+<span class="lineNum"> 1439 </span> : _Const_Link_type __x = static_cast&lt;_Const_Link_type&gt;(__it._M_node);
+<span class="lineNum"> 1440 </span> : _Const_Link_type __L = _S_left(__x);
+<span class="lineNum"> 1441 </span> : _Const_Link_type __R = _S_right(__x);
+<span class="lineNum"> 1442 </span> :
+<span class="lineNum"> 1443 </span> : if (__x-&gt;_M_color == _S_red)
+<span class="lineNum"> 1444 </span> : if ((__L &amp;&amp; __L-&gt;_M_color == _S_red)
+<span class="lineNum"> 1445 </span> : || (__R &amp;&amp; __R-&gt;_M_color == _S_red))
+<span class="lineNum"> 1446 </span> : return false;
+<span class="lineNum"> 1447 </span> :
+<span class="lineNum"> 1448 </span> : if (__L &amp;&amp; _M_impl._M_key_compare(_S_key(__x), _S_key(__L)))
+<span class="lineNum"> 1449 </span> : return false;
+<span class="lineNum"> 1450 </span> : if (__R &amp;&amp; _M_impl._M_key_compare(_S_key(__R), _S_key(__x)))
+<span class="lineNum"> 1451 </span> : return false;
+<span class="lineNum"> 1452 </span> :
+<span class="lineNum"> 1453 </span> : if (!__L &amp;&amp; !__R &amp;&amp; _Rb_tree_black_count(__x, _M_root()) != __len)
+<span class="lineNum"> 1454 </span> : return false;
+<span class="lineNum"> 1455 </span> : }
+<span class="lineNum"> 1456 </span> :
+<span class="lineNum"> 1457 </span> : if (_M_leftmost() != _Rb_tree_node_base::_S_minimum(_M_root()))
+<span class="lineNum"> 1458 </span> : return false;
+<span class="lineNum"> 1459 </span> : if (_M_rightmost() != _Rb_tree_node_base::_S_maximum(_M_root()))
+<span class="lineNum"> 1460 </span> : return false;
+<span class="lineNum"> 1461 </span> : return true;
+<span class="lineNum"> 1462 </span> : }
+<span class="lineNum"> 1463 </span> :
+<span class="lineNum"> 1464 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 1465 </span> :
+<span class="lineNum"> 1466 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/stl_uninitialized.h.gcov.html b/rep/usr/include/c++/4.3/bits/stl_uninitialized.h.gcov.html
new file mode 100644
index 0000000..08dd2e7
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/stl_uninitialized.h.gcov.html
@@ -0,0 +1,503 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/stl_uninitialized.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - stl_uninitialized.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">43</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">58.1 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">25</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Raw memory manipulators -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 18 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 19 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 20 </span> : // USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /*
+<span class="lineNum"> 32 </span> : *
+<span class="lineNum"> 33 </span> : * Copyright (c) 1994
+<span class="lineNum"> 34 </span> : * Hewlett-Packard Company
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 37 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 38 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 39 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 40 </span> : * in supporting documentation. Hewlett-Packard Company makes no
+<span class="lineNum"> 41 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 42 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 43 </span> : *
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * Copyright (c) 1996,1997
+<span class="lineNum"> 46 </span> : * Silicon Graphics Computer Systems, Inc.
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 49 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 50 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 51 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 52 </span> : * in supporting documentation. Silicon Graphics makes no
+<span class="lineNum"> 53 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 54 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 55 </span> : */
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /** @file stl_uninitialized.h
+<span class="lineNum"> 58 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 59 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 60 </span> : */
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : #ifndef _STL_UNINITIALIZED_H
+<span class="lineNum"> 63 </span> : #define _STL_UNINITIALIZED_H 1
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : template&lt;bool&gt;
+<span class="lineNum"> 68 </span> : struct __uninitialized_copy
+<span class="lineNum"> 69 </span> : {
+<span class="lineNum"> 70 </span> : template&lt;typename _InputIterator, typename _ForwardIterator&gt;
+<span class="lineNum"> 71 </span> : static _ForwardIterator
+<span class="lineNum"> 72 </span> : uninitialized_copy(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 73 </span><span class="lineCov"> 36673 : _ForwardIterator __result)</span>
+<span class="lineNum"> 74 </span> : {
+<span class="lineNum"> 75 </span><span class="lineCov"> 36673 : _ForwardIterator __cur = __result;</span>
+<span class="lineNum"> 76 </span> : try
+<span class="lineNum"> 77 </span> : {
+<span class="lineNum"> 78 </span><span class="lineCov"> 84888 : for (; __first != __last; ++__first, ++__cur)</span>
+<span class="lineNum"> 79 </span><span class="lineCov"> 48215 : ::new(static_cast&lt;void*&gt;(&amp;*__cur)) typename</span>
+<span class="lineNum"> 80 </span> : iterator_traits&lt;_ForwardIterator&gt;::value_type(*__first);
+<span class="lineNum"> 81 </span><span class="lineCov"> 36660 : return __cur;</span>
+<span class="lineNum"> 82 </span> : }
+<span class="lineNum"> 83 </span><span class="lineNoCov"> 0 : catch(...)</span>
+<span class="lineNum"> 84 </span> : {
+<span class="lineNum"> 85 </span><span class="lineNoCov"> 0 : std::_Destroy(__result, __cur);</span>
+<span class="lineNum"> 86 </span><span class="lineNoCov"> 0 : __throw_exception_again;</span>
+<span class="lineNum"> 87 </span> : }
+<span class="lineNum"> 88 </span> : }
+<span class="lineNum"> 89 </span> : };
+<span class="lineNum"> 90 </span> :
+<span class="lineNum"> 91 </span> : template&lt;&gt;
+<span class="lineNum"> 92 </span> : struct __uninitialized_copy&lt;true&gt;
+<span class="lineNum"> 93 </span> : {
+<span class="lineNum"> 94 </span> : template&lt;typename _InputIterator, typename _ForwardIterator&gt;
+<span class="lineNum"> 95 </span> : static _ForwardIterator
+<span class="lineNum"> 96 </span> : uninitialized_copy(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 97 </span><span class="lineCov"> 27152 : _ForwardIterator __result)</span>
+<span class="lineNum"> 98 </span><span class="lineCov"> 27152 : { return std::copy(__first, __last, __result); }</span>
+<span class="lineNum"> 99 </span> : };
+<span class="lineNum"> 100 </span> :
+<span class="lineNum"> 101 </span> : /**
+<span class="lineNum"> 102 </span> : * @brief Copies the range [first,last) into result.
+<span class="lineNum"> 103 </span> : * @param first An input iterator.
+<span class="lineNum"> 104 </span> : * @param last An input iterator.
+<span class="lineNum"> 105 </span> : * @param result An output iterator.
+<span class="lineNum"> 106 </span> : * @return result + (first - last)
+<span class="lineNum"> 107 </span> : *
+<span class="lineNum"> 108 </span> : * Like copy(), but does not require an initialized output range.
+<span class="lineNum"> 109 </span> : */
+<span class="lineNum"> 110 </span> : template&lt;typename _InputIterator, typename _ForwardIterator&gt;
+<span class="lineNum"> 111 </span> : inline _ForwardIterator
+<span class="lineNum"> 112 </span> : uninitialized_copy(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 113 </span><span class="lineCov"> 63825 : _ForwardIterator __result)</span>
+<span class="lineNum"> 114 </span> : {
+<span class="lineNum"> 115 </span> : typedef typename iterator_traits&lt;_InputIterator&gt;::value_type
+<span class="lineNum"> 116 </span> : _ValueType1;
+<span class="lineNum"> 117 </span> : typedef typename iterator_traits&lt;_ForwardIterator&gt;::value_type
+<span class="lineNum"> 118 </span> : _ValueType2;
+<span class="lineNum"> 119 </span> :
+<span class="lineNum"> 120 </span> : return std::__uninitialized_copy&lt;(__is_pod(_ValueType1)
+<span class="lineNum"> 121 </span> : &amp;&amp; __is_pod(_ValueType2))&gt;::
+<span class="lineNum"> 122 </span><span class="lineCov"> 63825 : uninitialized_copy(__first, __last, __result);</span>
+<span class="lineNum"> 123 </span> : }
+<span class="lineNum"> 124 </span> :
+<span class="lineNum"> 125 </span> :
+<span class="lineNum"> 126 </span> : template&lt;bool&gt;
+<span class="lineNum"> 127 </span> : struct __uninitialized_fill
+<span class="lineNum"> 128 </span> : {
+<span class="lineNum"> 129 </span> : template&lt;typename _ForwardIterator, typename _Tp&gt;
+<span class="lineNum"> 130 </span> : static void
+<span class="lineNum"> 131 </span> : uninitialized_fill(_ForwardIterator __first,
+<span class="lineNum"> 132 </span> : _ForwardIterator __last, const _Tp&amp; __x)
+<span class="lineNum"> 133 </span> : {
+<span class="lineNum"> 134 </span> : _ForwardIterator __cur = __first;
+<span class="lineNum"> 135 </span> : try
+<span class="lineNum"> 136 </span> : {
+<span class="lineNum"> 137 </span> : for (; __cur != __last; ++__cur)
+<span class="lineNum"> 138 </span> : std::_Construct(&amp;*__cur, __x);
+<span class="lineNum"> 139 </span> : }
+<span class="lineNum"> 140 </span> : catch(...)
+<span class="lineNum"> 141 </span> : {
+<span class="lineNum"> 142 </span> : std::_Destroy(__first, __cur);
+<span class="lineNum"> 143 </span> : __throw_exception_again;
+<span class="lineNum"> 144 </span> : }
+<span class="lineNum"> 145 </span> : }
+<span class="lineNum"> 146 </span> : };
+<span class="lineNum"> 147 </span> :
+<span class="lineNum"> 148 </span> : template&lt;&gt;
+<span class="lineNum"> 149 </span> : struct __uninitialized_fill&lt;true&gt;
+<span class="lineNum"> 150 </span> : {
+<span class="lineNum"> 151 </span> : template&lt;typename _ForwardIterator, typename _Tp&gt;
+<span class="lineNum"> 152 </span> : static void
+<span class="lineNum"> 153 </span> : uninitialized_fill(_ForwardIterator __first,
+<span class="lineNum"> 154 </span> : _ForwardIterator __last, const _Tp&amp; __x)
+<span class="lineNum"> 155 </span> : { std::fill(__first, __last, __x); }
+<span class="lineNum"> 156 </span> : };
+<span class="lineNum"> 157 </span> :
+<span class="lineNum"> 158 </span> : /**
+<span class="lineNum"> 159 </span> : * @brief Copies the value x into the range [first,last).
+<span class="lineNum"> 160 </span> : * @param first An input iterator.
+<span class="lineNum"> 161 </span> : * @param last An input iterator.
+<span class="lineNum"> 162 </span> : * @param x The source value.
+<span class="lineNum"> 163 </span> : * @return Nothing.
+<span class="lineNum"> 164 </span> : *
+<span class="lineNum"> 165 </span> : * Like fill(), but does not require an initialized output range.
+<span class="lineNum"> 166 </span> : */
+<span class="lineNum"> 167 </span> : template&lt;typename _ForwardIterator, typename _Tp&gt;
+<span class="lineNum"> 168 </span> : inline void
+<span class="lineNum"> 169 </span> : uninitialized_fill(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 170 </span> : const _Tp&amp; __x)
+<span class="lineNum"> 171 </span> : {
+<span class="lineNum"> 172 </span> : typedef typename iterator_traits&lt;_ForwardIterator&gt;::value_type
+<span class="lineNum"> 173 </span> : _ValueType;
+<span class="lineNum"> 174 </span> :
+<span class="lineNum"> 175 </span> : std::__uninitialized_fill&lt;__is_pod(_ValueType)&gt;::
+<span class="lineNum"> 176 </span> : uninitialized_fill(__first, __last, __x);
+<span class="lineNum"> 177 </span> : }
+<span class="lineNum"> 178 </span> :
+<span class="lineNum"> 179 </span> :
+<span class="lineNum"> 180 </span> : template&lt;bool&gt;
+<span class="lineNum"> 181 </span> : struct __uninitialized_fill_n
+<span class="lineNum"> 182 </span> : {
+<span class="lineNum"> 183 </span> : template&lt;typename _ForwardIterator, typename _Size, typename _Tp&gt;
+<span class="lineNum"> 184 </span> : static void
+<span class="lineNum"> 185 </span> : uninitialized_fill_n(_ForwardIterator __first, _Size __n,
+<span class="lineNum"> 186 </span><span class="lineCov"> 22443 : const _Tp&amp; __x)</span>
+<span class="lineNum"> 187 </span> : {
+<span class="lineNum"> 188 </span><span class="lineCov"> 22443 : _ForwardIterator __cur = __first;</span>
+<span class="lineNum"> 189 </span> : try
+<span class="lineNum"> 190 </span> : {
+<span class="lineNum"> 191 </span><span class="lineCov"> 46138 : for (; __n &gt; 0; --__n, ++__cur)</span>
+<span class="lineNum"> 192 </span><span class="lineCov"> 23695 : std::_Construct(&amp;*__cur, __x);</span>
+<span class="lineNum"> 193 </span> : }
+<span class="lineNum"> 194 </span><span class="lineNoCov"> 0 : catch(...)</span>
+<span class="lineNum"> 195 </span> : {
+<span class="lineNum"> 196 </span><span class="lineNoCov"> 0 : std::_Destroy(__first, __cur);</span>
+<span class="lineNum"> 197 </span><span class="lineNoCov"> 0 : __throw_exception_again;</span>
+<span class="lineNum"> 198 </span> : }
+<span class="lineNum"> 199 </span><span class="lineCov"> 22443 : }</span>
+<span class="lineNum"> 200 </span> : };
+<span class="lineNum"> 201 </span> :
+<span class="lineNum"> 202 </span> : template&lt;&gt;
+<span class="lineNum"> 203 </span> : struct __uninitialized_fill_n&lt;true&gt;
+<span class="lineNum"> 204 </span> : {
+<span class="lineNum"> 205 </span> : template&lt;typename _ForwardIterator, typename _Size, typename _Tp&gt;
+<span class="lineNum"> 206 </span> : static void
+<span class="lineNum"> 207 </span> : uninitialized_fill_n(_ForwardIterator __first, _Size __n,
+<span class="lineNum"> 208 </span><span class="lineCov"> 9 : const _Tp&amp; __x)</span>
+<span class="lineNum"> 209 </span><span class="lineCov"> 9 : { std::fill_n(__first, __n, __x); }</span>
+<span class="lineNum"> 210 </span> : };
+<span class="lineNum"> 211 </span> :
+<span class="lineNum"> 212 </span> : /**
+<span class="lineNum"> 213 </span> : * @brief Copies the value x into the range [first,first+n).
+<span class="lineNum"> 214 </span> : * @param first An input iterator.
+<span class="lineNum"> 215 </span> : * @param n The number of copies to make.
+<span class="lineNum"> 216 </span> : * @param x The source value.
+<span class="lineNum"> 217 </span> : * @return Nothing.
+<span class="lineNum"> 218 </span> : *
+<span class="lineNum"> 219 </span> : * Like fill_n(), but does not require an initialized output range.
+<span class="lineNum"> 220 </span> : */
+<span class="lineNum"> 221 </span> : template&lt;typename _ForwardIterator, typename _Size, typename _Tp&gt;
+<span class="lineNum"> 222 </span> : inline void
+<span class="lineNum"> 223 </span><span class="lineCov"> 22452 : uninitialized_fill_n(_ForwardIterator __first, _Size __n, const _Tp&amp; __x)</span>
+<span class="lineNum"> 224 </span> : {
+<span class="lineNum"> 225 </span> : typedef typename iterator_traits&lt;_ForwardIterator&gt;::value_type
+<span class="lineNum"> 226 </span> : _ValueType;
+<span class="lineNum"> 227 </span> :
+<span class="lineNum"> 228 </span><span class="lineCov"> 22452 : std::__uninitialized_fill_n&lt;__is_pod(_ValueType)&gt;::</span>
+<span class="lineNum"> 229 </span> : uninitialized_fill_n(__first, __n, __x);
+<span class="lineNum"> 230 </span><span class="lineCov"> 22452 : }</span>
+<span class="lineNum"> 231 </span> :
+<span class="lineNum"> 232 </span> : // Extensions: versions of uninitialized_copy, uninitialized_fill,
+<span class="lineNum"> 233 </span> : // and uninitialized_fill_n that take an allocator parameter.
+<span class="lineNum"> 234 </span> : // We dispatch back to the standard versions when we're given the
+<span class="lineNum"> 235 </span> : // default allocator. For nondefault allocators we do not use
+<span class="lineNum"> 236 </span> : // any of the POD optimizations.
+<span class="lineNum"> 237 </span> :
+<span class="lineNum"> 238 </span> : template&lt;typename _InputIterator, typename _ForwardIterator,
+<span class="lineNum"> 239 </span> : typename _Allocator&gt;
+<span class="lineNum"> 240 </span> : _ForwardIterator
+<span class="lineNum"> 241 </span> : __uninitialized_copy_a(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 242 </span> : _ForwardIterator __result, _Allocator&amp; __alloc)
+<span class="lineNum"> 243 </span> : {
+<span class="lineNum"> 244 </span> : _ForwardIterator __cur = __result;
+<span class="lineNum"> 245 </span> : try
+<span class="lineNum"> 246 </span> : {
+<span class="lineNum"> 247 </span> : for (; __first != __last; ++__first, ++__cur)
+<span class="lineNum"> 248 </span> : __alloc.construct(&amp;*__cur, *__first);
+<span class="lineNum"> 249 </span> : return __cur;
+<span class="lineNum"> 250 </span> : }
+<span class="lineNum"> 251 </span> : catch(...)
+<span class="lineNum"> 252 </span> : {
+<span class="lineNum"> 253 </span> : std::_Destroy(__result, __cur, __alloc);
+<span class="lineNum"> 254 </span> : __throw_exception_again;
+<span class="lineNum"> 255 </span> : }
+<span class="lineNum"> 256 </span> : }
+<span class="lineNum"> 257 </span> :
+<span class="lineNum"> 258 </span> : template&lt;typename _InputIterator, typename _ForwardIterator, typename _Tp&gt;
+<span class="lineNum"> 259 </span> : inline _ForwardIterator
+<span class="lineNum"> 260 </span> : __uninitialized_copy_a(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 261 </span><span class="lineCov"> 63825 : _ForwardIterator __result, allocator&lt;_Tp&gt;&amp;)</span>
+<span class="lineNum"> 262 </span><span class="lineCov"> 63825 : { return std::uninitialized_copy(__first, __last, __result); }</span>
+<span class="lineNum"> 263 </span> :
+<span class="lineNum"> 264 </span> : template&lt;typename _InputIterator, typename _ForwardIterator,
+<span class="lineNum"> 265 </span> : typename _Allocator&gt;
+<span class="lineNum"> 266 </span> : inline _ForwardIterator
+<span class="lineNum"> 267 </span> : __uninitialized_move_a(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 268 </span><span class="lineCov"> 63802 : _ForwardIterator __result, _Allocator&amp; __alloc)</span>
+<span class="lineNum"> 269 </span> : {
+<span class="lineNum"> 270 </span> : return std::__uninitialized_copy_a(_GLIBCXX_MAKE_MOVE_ITERATOR(__first),
+<span class="lineNum"> 271 </span> : _GLIBCXX_MAKE_MOVE_ITERATOR(__last),
+<span class="lineNum"> 272 </span><span class="lineCov"> 63802 : __result, __alloc);</span>
+<span class="lineNum"> 273 </span> : }
+<span class="lineNum"> 274 </span> :
+<span class="lineNum"> 275 </span> : template&lt;typename _ForwardIterator, typename _Tp, typename _Allocator&gt;
+<span class="lineNum"> 276 </span> : void
+<span class="lineNum"> 277 </span> : __uninitialized_fill_a(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 278 </span> : const _Tp&amp; __x, _Allocator&amp; __alloc)
+<span class="lineNum"> 279 </span> : {
+<span class="lineNum"> 280 </span> : _ForwardIterator __cur = __first;
+<span class="lineNum"> 281 </span> : try
+<span class="lineNum"> 282 </span> : {
+<span class="lineNum"> 283 </span> : for (; __cur != __last; ++__cur)
+<span class="lineNum"> 284 </span> : __alloc.construct(&amp;*__cur, __x);
+<span class="lineNum"> 285 </span> : }
+<span class="lineNum"> 286 </span> : catch(...)
+<span class="lineNum"> 287 </span> : {
+<span class="lineNum"> 288 </span> : std::_Destroy(__first, __cur, __alloc);
+<span class="lineNum"> 289 </span> : __throw_exception_again;
+<span class="lineNum"> 290 </span> : }
+<span class="lineNum"> 291 </span> : }
+<span class="lineNum"> 292 </span> :
+<span class="lineNum"> 293 </span> : template&lt;typename _ForwardIterator, typename _Tp, typename _Tp2&gt;
+<span class="lineNum"> 294 </span> : inline void
+<span class="lineNum"> 295 </span> : __uninitialized_fill_a(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 296 </span> : const _Tp&amp; __x, allocator&lt;_Tp2&gt;&amp;)
+<span class="lineNum"> 297 </span> : { std::uninitialized_fill(__first, __last, __x); }
+<span class="lineNum"> 298 </span> :
+<span class="lineNum"> 299 </span> : template&lt;typename _ForwardIterator, typename _Size, typename _Tp,
+<span class="lineNum"> 300 </span> : typename _Allocator&gt;
+<span class="lineNum"> 301 </span> : void
+<span class="lineNum"> 302 </span> : __uninitialized_fill_n_a(_ForwardIterator __first, _Size __n,
+<span class="lineNum"> 303 </span> : const _Tp&amp; __x, _Allocator&amp; __alloc)
+<span class="lineNum"> 304 </span> : {
+<span class="lineNum"> 305 </span> : _ForwardIterator __cur = __first;
+<span class="lineNum"> 306 </span> : try
+<span class="lineNum"> 307 </span> : {
+<span class="lineNum"> 308 </span> : for (; __n &gt; 0; --__n, ++__cur)
+<span class="lineNum"> 309 </span> : __alloc.construct(&amp;*__cur, __x);
+<span class="lineNum"> 310 </span> : }
+<span class="lineNum"> 311 </span> : catch(...)
+<span class="lineNum"> 312 </span> : {
+<span class="lineNum"> 313 </span> : std::_Destroy(__first, __cur, __alloc);
+<span class="lineNum"> 314 </span> : __throw_exception_again;
+<span class="lineNum"> 315 </span> : }
+<span class="lineNum"> 316 </span> : }
+<span class="lineNum"> 317 </span> :
+<span class="lineNum"> 318 </span> : template&lt;typename _ForwardIterator, typename _Size, typename _Tp,
+<span class="lineNum"> 319 </span> : typename _Tp2&gt;
+<span class="lineNum"> 320 </span> : inline void
+<span class="lineNum"> 321 </span> : __uninitialized_fill_n_a(_ForwardIterator __first, _Size __n,
+<span class="lineNum"> 322 </span><span class="lineCov"> 22452 : const _Tp&amp; __x, allocator&lt;_Tp2&gt;&amp;)</span>
+<span class="lineNum"> 323 </span><span class="lineCov"> 22452 : { std::uninitialized_fill_n(__first, __n, __x); }</span>
+<span class="lineNum"> 324 </span> :
+<span class="lineNum"> 325 </span> :
+<span class="lineNum"> 326 </span> : // Extensions: __uninitialized_copy_move, __uninitialized_move_copy,
+<span class="lineNum"> 327 </span> : // __uninitialized_fill_move, __uninitialized_move_fill.
+<span class="lineNum"> 328 </span> : // All of these algorithms take a user-supplied allocator, which is used
+<span class="lineNum"> 329 </span> : // for construction and destruction.
+<span class="lineNum"> 330 </span> :
+<span class="lineNum"> 331 </span> : // __uninitialized_copy_move
+<span class="lineNum"> 332 </span> : // Copies [first1, last1) into [result, result + (last1 - first1)), and
+<span class="lineNum"> 333 </span> : // move [first2, last2) into
+<span class="lineNum"> 334 </span> : // [result, result + (last1 - first1) + (last2 - first2)).
+<span class="lineNum"> 335 </span> : template&lt;typename _InputIterator1, typename _InputIterator2,
+<span class="lineNum"> 336 </span> : typename _ForwardIterator, typename _Allocator&gt;
+<span class="lineNum"> 337 </span> : inline _ForwardIterator
+<span class="lineNum"> 338 </span> : __uninitialized_copy_move(_InputIterator1 __first1,
+<span class="lineNum"> 339 </span> : _InputIterator1 __last1,
+<span class="lineNum"> 340 </span> : _InputIterator2 __first2,
+<span class="lineNum"> 341 </span> : _InputIterator2 __last2,
+<span class="lineNum"> 342 </span> : _ForwardIterator __result,
+<span class="lineNum"> 343 </span><span class="lineNoCov"> 0 : _Allocator&amp; __alloc)</span>
+<span class="lineNum"> 344 </span> : {
+<span class="lineNum"> 345 </span> : _ForwardIterator __mid = std::__uninitialized_copy_a(__first1, __last1,
+<span class="lineNum"> 346 </span> : __result,
+<span class="lineNum"> 347 </span><span class="lineNoCov"> 0 : __alloc);</span>
+<span class="lineNum"> 348 </span> : try
+<span class="lineNum"> 349 </span> : {
+<span class="lineNum"> 350 </span><span class="lineNoCov"> 0 : return std::__uninitialized_move_a(__first2, __last2, __mid, __alloc);</span>
+<span class="lineNum"> 351 </span> : }
+<span class="lineNum"> 352 </span><span class="lineNoCov"> 0 : catch(...)</span>
+<span class="lineNum"> 353 </span> : {
+<span class="lineNum"> 354 </span><span class="lineNoCov"> 0 : std::_Destroy(__result, __mid, __alloc);</span>
+<span class="lineNum"> 355 </span><span class="lineNoCov"> 0 : __throw_exception_again;</span>
+<span class="lineNum"> 356 </span> : }
+<span class="lineNum"> 357 </span> : }
+<span class="lineNum"> 358 </span> :
+<span class="lineNum"> 359 </span> : // __uninitialized_move_copy
+<span class="lineNum"> 360 </span> : // Moves [first1, last1) into [result, result + (last1 - first1)), and
+<span class="lineNum"> 361 </span> : // copies [first2, last2) into
+<span class="lineNum"> 362 </span> : // [result, result + (last1 - first1) + (last2 - first2)).
+<span class="lineNum"> 363 </span> : template&lt;typename _InputIterator1, typename _InputIterator2,
+<span class="lineNum"> 364 </span> : typename _ForwardIterator, typename _Allocator&gt;
+<span class="lineNum"> 365 </span> : inline _ForwardIterator
+<span class="lineNum"> 366 </span> : __uninitialized_move_copy(_InputIterator1 __first1,
+<span class="lineNum"> 367 </span> : _InputIterator1 __last1,
+<span class="lineNum"> 368 </span> : _InputIterator2 __first2,
+<span class="lineNum"> 369 </span> : _InputIterator2 __last2,
+<span class="lineNum"> 370 </span> : _ForwardIterator __result,
+<span class="lineNum"> 371 </span><span class="lineNoCov"> 0 : _Allocator&amp; __alloc)</span>
+<span class="lineNum"> 372 </span> : {
+<span class="lineNum"> 373 </span> : _ForwardIterator __mid = std::__uninitialized_move_a(__first1, __last1,
+<span class="lineNum"> 374 </span> : __result,
+<span class="lineNum"> 375 </span><span class="lineNoCov"> 0 : __alloc);</span>
+<span class="lineNum"> 376 </span> : try
+<span class="lineNum"> 377 </span> : {
+<span class="lineNum"> 378 </span><span class="lineNoCov"> 0 : return std::__uninitialized_copy_a(__first2, __last2, __mid, __alloc);</span>
+<span class="lineNum"> 379 </span> : }
+<span class="lineNum"> 380 </span><span class="lineNoCov"> 0 : catch(...)</span>
+<span class="lineNum"> 381 </span> : {
+<span class="lineNum"> 382 </span><span class="lineNoCov"> 0 : std::_Destroy(__result, __mid, __alloc);</span>
+<span class="lineNum"> 383 </span><span class="lineNoCov"> 0 : __throw_exception_again;</span>
+<span class="lineNum"> 384 </span> : }
+<span class="lineNum"> 385 </span> : }
+<span class="lineNum"> 386 </span> :
+<span class="lineNum"> 387 </span> : // __uninitialized_fill_move
+<span class="lineNum"> 388 </span> : // Fills [result, mid) with x, and moves [first, last) into
+<span class="lineNum"> 389 </span> : // [mid, mid + (last - first)).
+<span class="lineNum"> 390 </span> : template&lt;typename _ForwardIterator, typename _Tp, typename _InputIterator,
+<span class="lineNum"> 391 </span> : typename _Allocator&gt;
+<span class="lineNum"> 392 </span> : inline _ForwardIterator
+<span class="lineNum"> 393 </span> : __uninitialized_fill_move(_ForwardIterator __result, _ForwardIterator __mid,
+<span class="lineNum"> 394 </span> : const _Tp&amp; __x, _InputIterator __first,
+<span class="lineNum"> 395 </span> : _InputIterator __last, _Allocator&amp; __alloc)
+<span class="lineNum"> 396 </span> : {
+<span class="lineNum"> 397 </span> : std::__uninitialized_fill_a(__result, __mid, __x, __alloc);
+<span class="lineNum"> 398 </span> : try
+<span class="lineNum"> 399 </span> : {
+<span class="lineNum"> 400 </span> : return std::__uninitialized_move_a(__first, __last, __mid, __alloc);
+<span class="lineNum"> 401 </span> : }
+<span class="lineNum"> 402 </span> : catch(...)
+<span class="lineNum"> 403 </span> : {
+<span class="lineNum"> 404 </span> : std::_Destroy(__result, __mid, __alloc);
+<span class="lineNum"> 405 </span> : __throw_exception_again;
+<span class="lineNum"> 406 </span> : }
+<span class="lineNum"> 407 </span> : }
+<span class="lineNum"> 408 </span> :
+<span class="lineNum"> 409 </span> : // __uninitialized_move_fill
+<span class="lineNum"> 410 </span> : // Moves [first1, last1) into [first2, first2 + (last1 - first1)), and
+<span class="lineNum"> 411 </span> : // fills [first2 + (last1 - first1), last2) with x.
+<span class="lineNum"> 412 </span> : template&lt;typename _InputIterator, typename _ForwardIterator, typename _Tp,
+<span class="lineNum"> 413 </span> : typename _Allocator&gt;
+<span class="lineNum"> 414 </span> : inline void
+<span class="lineNum"> 415 </span> : __uninitialized_move_fill(_InputIterator __first1, _InputIterator __last1,
+<span class="lineNum"> 416 </span> : _ForwardIterator __first2,
+<span class="lineNum"> 417 </span> : _ForwardIterator __last2, const _Tp&amp; __x,
+<span class="lineNum"> 418 </span> : _Allocator&amp; __alloc)
+<span class="lineNum"> 419 </span> : {
+<span class="lineNum"> 420 </span> : _ForwardIterator __mid2 = std::__uninitialized_move_a(__first1, __last1,
+<span class="lineNum"> 421 </span> : __first2,
+<span class="lineNum"> 422 </span> : __alloc);
+<span class="lineNum"> 423 </span> : try
+<span class="lineNum"> 424 </span> : {
+<span class="lineNum"> 425 </span> : std::__uninitialized_fill_a(__mid2, __last2, __x, __alloc);
+<span class="lineNum"> 426 </span> : }
+<span class="lineNum"> 427 </span> : catch(...)
+<span class="lineNum"> 428 </span> : {
+<span class="lineNum"> 429 </span> : std::_Destroy(__first2, __mid2, __alloc);
+<span class="lineNum"> 430 </span> : __throw_exception_again;
+<span class="lineNum"> 431 </span> : }
+<span class="lineNum"> 432 </span> : }
+<span class="lineNum"> 433 </span> :
+<span class="lineNum"> 434 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 435 </span> :
+<span class="lineNum"> 436 </span> : #endif /* _STL_UNINITIALIZED_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/stl_vector.h.gcov.html b/rep/usr/include/c++/4.3/bits/stl_vector.h.gcov.html
new file mode 100644
index 0000000..847af95
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/stl_vector.h.gcov.html
@@ -0,0 +1,1241 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/stl_vector.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - stl_vector.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">103</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">91.3 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">94</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Vector implementation -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 18 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 19 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 20 </span> : // USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /*
+<span class="lineNum"> 32 </span> : *
+<span class="lineNum"> 33 </span> : * Copyright (c) 1994
+<span class="lineNum"> 34 </span> : * Hewlett-Packard Company
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 37 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 38 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 39 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 40 </span> : * in supporting documentation. Hewlett-Packard Company makes no
+<span class="lineNum"> 41 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 42 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 43 </span> : *
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * Copyright (c) 1996
+<span class="lineNum"> 46 </span> : * Silicon Graphics Computer Systems, Inc.
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 49 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 50 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 51 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 52 </span> : * in supporting documentation. Silicon Graphics makes no
+<span class="lineNum"> 53 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 54 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 55 </span> : */
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /** @file stl_vector.h
+<span class="lineNum"> 58 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 59 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 60 </span> : */
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : #ifndef _STL_VECTOR_H
+<span class="lineNum"> 63 </span> : #define _STL_VECTOR_H 1
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : #include &lt;bits/stl_iterator_base_funcs.h&gt;
+<span class="lineNum"> 66 </span> : #include &lt;bits/functexcept.h&gt;
+<span class="lineNum"> 67 </span> : #include &lt;bits/concept_check.h&gt;
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span> : _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
+<span class="lineNum"> 70 </span> :
+<span class="lineNum"> 71 </span> : /// See bits/stl_deque.h's _Deque_base for an explanation.
+<span class="lineNum"> 72 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 73 </span> : struct _Vector_base
+<span class="lineNum"> 74 </span> : {
+<span class="lineNum"> 75 </span> : typedef typename _Alloc::template rebind&lt;_Tp&gt;::other _Tp_alloc_type;
+<span class="lineNum"> 76 </span> :
+<span class="lineNum"> 77 </span> : struct _Vector_impl
+<span class="lineNum"> 78 </span> : : public _Tp_alloc_type
+<span class="lineNum"> 79 </span><span class="lineCov"> 4841 : {</span>
+<span class="lineNum"> 80 </span> : _Tp* _M_start;
+<span class="lineNum"> 81 </span> : _Tp* _M_finish;
+<span class="lineNum"> 82 </span> : _Tp* _M_end_of_storage;
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span><span class="lineCov"> 4840 : _Vector_impl()</span>
+<span class="lineNum"> 85 </span><span class="lineCov"> 4840 : : _Tp_alloc_type(), _M_start(0), _M_finish(0), _M_end_of_storage(0)</span>
+<span class="lineNum"> 86 </span><span class="lineCov"> 4840 : { }</span>
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span><span class="lineCov"> 9 : _Vector_impl(_Tp_alloc_type const&amp; __a)</span>
+<span class="lineNum"> 89 </span><span class="lineCov"> 9 : : _Tp_alloc_type(__a), _M_start(0), _M_finish(0), _M_end_of_storage(0)</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 9 : { }</span>
+<span class="lineNum"> 91 </span> : };
+<span class="lineNum"> 92 </span> :
+<span class="lineNum"> 93 </span> : public:
+<span class="lineNum"> 94 </span> : typedef _Alloc allocator_type;
+<span class="lineNum"> 95 </span> :
+<span class="lineNum"> 96 </span> : _Tp_alloc_type&amp;
+<span class="lineNum"> 97 </span><span class="lineCov"> 119679 : _M_get_Tp_allocator()</span>
+<span class="lineNum"> 98 </span><span class="lineCov"> 119679 : { return *static_cast&lt;_Tp_alloc_type*&gt;(&amp;this-&gt;_M_impl); }</span>
+<span class="lineNum"> 99 </span> :
+<span class="lineNum"> 100 </span> : const _Tp_alloc_type&amp;
+<span class="lineNum"> 101 </span><span class="lineCov"> 41426 : _M_get_Tp_allocator() const</span>
+<span class="lineNum"> 102 </span><span class="lineCov"> 41426 : { return *static_cast&lt;const _Tp_alloc_type*&gt;(&amp;this-&gt;_M_impl); }</span>
+<span class="lineNum"> 103 </span> :
+<span class="lineNum"> 104 </span> : allocator_type
+<span class="lineNum"> 105 </span> : get_allocator() const
+<span class="lineNum"> 106 </span> : { return allocator_type(_M_get_Tp_allocator()); }
+<span class="lineNum"> 107 </span> :
+<span class="lineNum"> 108 </span><span class="lineCov"> 4840 : _Vector_base()</span>
+<span class="lineNum"> 109 </span><span class="lineCov"> 4840 : : _M_impl() { }</span>
+<span class="lineNum"> 110 </span> :
+<span class="lineNum"> 111 </span> : _Vector_base(const allocator_type&amp; __a)
+<span class="lineNum"> 112 </span> : : _M_impl(__a) { }
+<span class="lineNum"> 113 </span> :
+<span class="lineNum"> 114 </span><span class="lineCov"> 9 : _Vector_base(size_t __n, const allocator_type&amp; __a)</span>
+<span class="lineNum"> 115 </span><span class="lineCov"> 9 : : _M_impl(__a)</span>
+<span class="lineNum"> 116 </span> : {
+<span class="lineNum"> 117 </span><span class="lineCov"> 9 : this-&gt;_M_impl._M_start = this-&gt;_M_allocate(__n);</span>
+<span class="lineNum"> 118 </span><span class="lineCov"> 9 : this-&gt;_M_impl._M_finish = this-&gt;_M_impl._M_start;</span>
+<span class="lineNum"> 119 </span><span class="lineCov"> 9 : this-&gt;_M_impl._M_end_of_storage = this-&gt;_M_impl._M_start + __n;</span>
+<span class="lineNum"> 120 </span><span class="lineCov"> 9 : }</span>
+<span class="lineNum"> 121 </span> :
+<span class="lineNum"> 122 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 123 </span> : _Vector_base(_Vector_base&amp;&amp; __x)
+<span class="lineNum"> 124 </span> : : _M_impl(__x._M_get_Tp_allocator())
+<span class="lineNum"> 125 </span> : {
+<span class="lineNum"> 126 </span> : this-&gt;_M_impl._M_start = __x._M_impl._M_start;
+<span class="lineNum"> 127 </span> : this-&gt;_M_impl._M_finish = __x._M_impl._M_finish;
+<span class="lineNum"> 128 </span> : this-&gt;_M_impl._M_end_of_storage = __x._M_impl._M_end_of_storage;
+<span class="lineNum"> 129 </span> : __x._M_impl._M_start = 0;
+<span class="lineNum"> 130 </span> : __x._M_impl._M_finish = 0;
+<span class="lineNum"> 131 </span> : __x._M_impl._M_end_of_storage = 0;
+<span class="lineNum"> 132 </span> : }
+<span class="lineNum"> 133 </span> : #endif
+<span class="lineNum"> 134 </span> :
+<span class="lineNum"> 135 </span><span class="lineCov"> 4841 : ~_Vector_base()</span>
+<span class="lineNum"> 136 </span><span class="lineCov"> 4841 : { _M_deallocate(this-&gt;_M_impl._M_start, this-&gt;_M_impl._M_end_of_storage</span>
+<span class="lineNum"> 137 </span><span class="lineCov"> 4841 : - this-&gt;_M_impl._M_start); }</span>
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> : public:
+<span class="lineNum"> 140 </span> : _Vector_impl _M_impl;
+<span class="lineNum"> 141 </span> :
+<span class="lineNum"> 142 </span> : _Tp*
+<span class="lineNum"> 143 </span><span class="lineCov"> 20727 : _M_allocate(size_t __n)</span>
+<span class="lineNum"> 144 </span><span class="lineCov"> 20727 : { return __n != 0 ? _M_impl.allocate(__n) : 0; }</span>
+<span class="lineNum"> 145 </span> :
+<span class="lineNum"> 146 </span> : void
+<span class="lineNum"> 147 </span><span class="lineCov"> 25559 : _M_deallocate(_Tp* __p, size_t __n)</span>
+<span class="lineNum"> 148 </span> : {
+<span class="lineNum"> 149 </span><span class="lineCov"> 25559 : if (__p)</span>
+<span class="lineNum"> 150 </span><span class="lineCov"> 20616 : _M_impl.deallocate(__p, __n);</span>
+<span class="lineNum"> 151 </span><span class="lineCov"> 25559 : }</span>
+<span class="lineNum"> 152 </span> : };
+<span class="lineNum"> 153 </span> :
+<span class="lineNum"> 154 </span> :
+<span class="lineNum"> 155 </span> : /**
+<span class="lineNum"> 156 </span> : * @brief A standard container which offers fixed time access to
+<span class="lineNum"> 157 </span> : * individual elements in any order.
+<span class="lineNum"> 158 </span> : *
+<span class="lineNum"> 159 </span> : * @ingroup Containers
+<span class="lineNum"> 160 </span> : * @ingroup Sequences
+<span class="lineNum"> 161 </span> : *
+<span class="lineNum"> 162 </span> : * Meets the requirements of a &lt;a href=&quot;tables.html#65&quot;&gt;container&lt;/a&gt;, a
+<span class="lineNum"> 163 </span> : * &lt;a href=&quot;tables.html#66&quot;&gt;reversible container&lt;/a&gt;, and a
+<span class="lineNum"> 164 </span> : * &lt;a href=&quot;tables.html#67&quot;&gt;sequence&lt;/a&gt;, including the
+<span class="lineNum"> 165 </span> : * &lt;a href=&quot;tables.html#68&quot;&gt;optional sequence requirements&lt;/a&gt; with the
+<span class="lineNum"> 166 </span> : * %exception of @c push_front and @c pop_front.
+<span class="lineNum"> 167 </span> : *
+<span class="lineNum"> 168 </span> : * In some terminology a %vector can be described as a dynamic
+<span class="lineNum"> 169 </span> : * C-style array, it offers fast and efficient access to individual
+<span class="lineNum"> 170 </span> : * elements in any order and saves the user from worrying about
+<span class="lineNum"> 171 </span> : * memory and size allocation. Subscripting ( @c [] ) access is
+<span class="lineNum"> 172 </span> : * also provided as with C-style arrays.
+<span class="lineNum"> 173 </span> : */
+<span class="lineNum"> 174 </span> : template&lt;typename _Tp, typename _Alloc = std::allocator&lt;_Tp&gt; &gt;
+<span class="lineNum"> 175 </span> : class vector : protected _Vector_base&lt;_Tp, _Alloc&gt;
+<span class="lineNum"> 176 </span> : {
+<span class="lineNum"> 177 </span> : // Concept requirements.
+<span class="lineNum"> 178 </span> : typedef typename _Alloc::value_type _Alloc_value_type;
+<span class="lineNum"> 179 </span> : __glibcxx_class_requires(_Tp, _SGIAssignableConcept)
+<span class="lineNum"> 180 </span> : __glibcxx_class_requires2(_Tp, _Alloc_value_type, _SameTypeConcept)
+<span class="lineNum"> 181 </span> :
+<span class="lineNum"> 182 </span> : typedef _Vector_base&lt;_Tp, _Alloc&gt; _Base;
+<span class="lineNum"> 183 </span> : typedef vector&lt;_Tp, _Alloc&gt; vector_type;
+<span class="lineNum"> 184 </span> : typedef typename _Base::_Tp_alloc_type _Tp_alloc_type;
+<span class="lineNum"> 185 </span> :
+<span class="lineNum"> 186 </span> : public:
+<span class="lineNum"> 187 </span> : typedef _Tp value_type;
+<span class="lineNum"> 188 </span> : typedef typename _Tp_alloc_type::pointer pointer;
+<span class="lineNum"> 189 </span> : typedef typename _Tp_alloc_type::const_pointer const_pointer;
+<span class="lineNum"> 190 </span> : typedef typename _Tp_alloc_type::reference reference;
+<span class="lineNum"> 191 </span> : typedef typename _Tp_alloc_type::const_reference const_reference;
+<span class="lineNum"> 192 </span> : typedef __gnu_cxx::__normal_iterator&lt;pointer, vector_type&gt; iterator;
+<span class="lineNum"> 193 </span> : typedef __gnu_cxx::__normal_iterator&lt;const_pointer, vector_type&gt;
+<span class="lineNum"> 194 </span> : const_iterator;
+<span class="lineNum"> 195 </span> : typedef std::reverse_iterator&lt;const_iterator&gt; const_reverse_iterator;
+<span class="lineNum"> 196 </span> : typedef std::reverse_iterator&lt;iterator&gt; reverse_iterator;
+<span class="lineNum"> 197 </span> : typedef size_t size_type;
+<span class="lineNum"> 198 </span> : typedef ptrdiff_t difference_type;
+<span class="lineNum"> 199 </span> : typedef _Alloc allocator_type;
+<span class="lineNum"> 200 </span> :
+<span class="lineNum"> 201 </span> : protected:
+<span class="lineNum"> 202 </span> : using _Base::_M_allocate;
+<span class="lineNum"> 203 </span> : using _Base::_M_deallocate;
+<span class="lineNum"> 204 </span> : using _Base::_M_impl;
+<span class="lineNum"> 205 </span> : using _Base::_M_get_Tp_allocator;
+<span class="lineNum"> 206 </span> :
+<span class="lineNum"> 207 </span> : public:
+<span class="lineNum"> 208 </span> : // [23.2.4.1] construct/copy/destroy
+<span class="lineNum"> 209 </span> : // (assign() and get_allocator() are also listed in this section)
+<span class="lineNum"> 210 </span> : /**
+<span class="lineNum"> 211 </span> : * @brief Default constructor creates no elements.
+<span class="lineNum"> 212 </span> : */
+<span class="lineNum"> 213 </span><span class="lineCov"> 4840 : vector()</span>
+<span class="lineNum"> 214 </span><span class="lineCov"> 4840 : : _Base() { }</span>
+<span class="lineNum"> 215 </span> :
+<span class="lineNum"> 216 </span> : /**
+<span class="lineNum"> 217 </span> : * @brief Creates a %vector with no elements.
+<span class="lineNum"> 218 </span> : * @param a An allocator object.
+<span class="lineNum"> 219 </span> : */
+<span class="lineNum"> 220 </span> : explicit
+<span class="lineNum"> 221 </span> : vector(const allocator_type&amp; __a)
+<span class="lineNum"> 222 </span> : : _Base(__a) { }
+<span class="lineNum"> 223 </span> :
+<span class="lineNum"> 224 </span> : /**
+<span class="lineNum"> 225 </span> : * @brief Creates a %vector with copies of an exemplar element.
+<span class="lineNum"> 226 </span> : * @param n The number of elements to initially create.
+<span class="lineNum"> 227 </span> : * @param value An element to copy.
+<span class="lineNum"> 228 </span> : * @param a An allocator.
+<span class="lineNum"> 229 </span> : *
+<span class="lineNum"> 230 </span> : * This constructor fills the %vector with @a n copies of @a value.
+<span class="lineNum"> 231 </span> : */
+<span class="lineNum"> 232 </span> : explicit
+<span class="lineNum"> 233 </span> : vector(size_type __n, const value_type&amp; __value = value_type(),
+<span class="lineNum"> 234 </span><span class="lineCov"> 9 : const allocator_type&amp; __a = allocator_type())</span>
+<span class="lineNum"> 235 </span><span class="lineCov"> 9 : : _Base(__n, __a)</span>
+<span class="lineNum"> 236 </span><span class="lineCov"> 9 : { _M_fill_initialize(__n, __value); }</span>
+<span class="lineNum"> 237 </span> :
+<span class="lineNum"> 238 </span> : /**
+<span class="lineNum"> 239 </span> : * @brief %Vector copy constructor.
+<span class="lineNum"> 240 </span> : * @param x A %vector of identical element and allocator types.
+<span class="lineNum"> 241 </span> : *
+<span class="lineNum"> 242 </span> : * The newly-created %vector uses a copy of the allocation
+<span class="lineNum"> 243 </span> : * object used by @a x. All the elements of @a x are copied,
+<span class="lineNum"> 244 </span> : * but any extra memory in
+<span class="lineNum"> 245 </span> : * @a x (for fast expansion) will not be copied.
+<span class="lineNum"> 246 </span> : */
+<span class="lineNum"> 247 </span><span class="lineNoCov"> 0 : vector(const vector&amp; __x)</span>
+<span class="lineNum"> 248 </span><span class="lineNoCov"> 0 : : _Base(__x.size(), __x._M_get_Tp_allocator())</span>
+<span class="lineNum"> 249 </span><span class="lineNoCov"> 0 : { this-&gt;_M_impl._M_finish =</span>
+<span class="lineNum"> 250 </span> : std::__uninitialized_copy_a(__x.begin(), __x.end(),
+<span class="lineNum"> 251 </span> : this-&gt;_M_impl._M_start,
+<span class="lineNum"> 252 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 253 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 254 </span> :
+<span class="lineNum"> 255 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 256 </span> : /**
+<span class="lineNum"> 257 </span> : * @brief %Vector move constructor.
+<span class="lineNum"> 258 </span> : * @param x A %vector of identical element and allocator types.
+<span class="lineNum"> 259 </span> : *
+<span class="lineNum"> 260 </span> : * The newly-created %vector contains the exact contents of @a x.
+<span class="lineNum"> 261 </span> : * The contents of @a x are a valid, but unspecified %vector.
+<span class="lineNum"> 262 </span> : */
+<span class="lineNum"> 263 </span> : vector(vector&amp;&amp; __x)
+<span class="lineNum"> 264 </span> : : _Base(std::forward&lt;_Base&gt;(__x)) { }
+<span class="lineNum"> 265 </span> : #endif
+<span class="lineNum"> 266 </span> :
+<span class="lineNum"> 267 </span> : /**
+<span class="lineNum"> 268 </span> : * @brief Builds a %vector from a range.
+<span class="lineNum"> 269 </span> : * @param first An input iterator.
+<span class="lineNum"> 270 </span> : * @param last An input iterator.
+<span class="lineNum"> 271 </span> : * @param a An allocator.
+<span class="lineNum"> 272 </span> : *
+<span class="lineNum"> 273 </span> : * Create a %vector consisting of copies of the elements from
+<span class="lineNum"> 274 </span> : * [first,last).
+<span class="lineNum"> 275 </span> : *
+<span class="lineNum"> 276 </span> : * If the iterators are forward, bidirectional, or
+<span class="lineNum"> 277 </span> : * random-access, then this will call the elements' copy
+<span class="lineNum"> 278 </span> : * constructor N times (where N is distance(first,last)) and do
+<span class="lineNum"> 279 </span> : * no memory reallocation. But if only input iterators are
+<span class="lineNum"> 280 </span> : * used, then this will do at most 2N calls to the copy
+<span class="lineNum"> 281 </span> : * constructor, and logN memory reallocations.
+<span class="lineNum"> 282 </span> : */
+<span class="lineNum"> 283 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 284 </span> : vector(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 285 </span> : const allocator_type&amp; __a = allocator_type())
+<span class="lineNum"> 286 </span> : : _Base(__a)
+<span class="lineNum"> 287 </span> : {
+<span class="lineNum"> 288 </span> : // Check whether it's an integral type. If so, it's not an iterator.
+<span class="lineNum"> 289 </span> : typedef typename std::__is_integer&lt;_InputIterator&gt;::__type _Integral;
+<span class="lineNum"> 290 </span> : _M_initialize_dispatch(__first, __last, _Integral());
+<span class="lineNum"> 291 </span> : }
+<span class="lineNum"> 292 </span> :
+<span class="lineNum"> 293 </span> : /**
+<span class="lineNum"> 294 </span> : * The dtor only erases the elements, and note that if the
+<span class="lineNum"> 295 </span> : * elements themselves are pointers, the pointed-to memory is
+<span class="lineNum"> 296 </span> : * not touched in any way. Managing the pointer is the user's
+<span class="lineNum"> 297 </span> : * responsibility.
+<span class="lineNum"> 298 </span> : */
+<span class="lineNum"> 299 </span><span class="lineCov"> 4841 : ~vector()</span>
+<span class="lineNum"> 300 </span><span class="lineCov"> 4841 : { std::_Destroy(this-&gt;_M_impl._M_start, this-&gt;_M_impl._M_finish,</span>
+<span class="lineNum"> 301 </span><span class="lineCov"> 4841 : _M_get_Tp_allocator()); }</span>
+<span class="lineNum"> 302 </span> :
+<span class="lineNum"> 303 </span> : /**
+<span class="lineNum"> 304 </span> : * @brief %Vector assignment operator.
+<span class="lineNum"> 305 </span> : * @param x A %vector of identical element and allocator types.
+<span class="lineNum"> 306 </span> : *
+<span class="lineNum"> 307 </span> : * All the elements of @a x are copied, but any extra memory in
+<span class="lineNum"> 308 </span> : * @a x (for fast expansion) will not be copied. Unlike the
+<span class="lineNum"> 309 </span> : * copy constructor, the allocator object is not copied.
+<span class="lineNum"> 310 </span> : */
+<span class="lineNum"> 311 </span> : vector&amp;
+<span class="lineNum"> 312 </span> : operator=(const vector&amp; __x);
+<span class="lineNum"> 313 </span> :
+<span class="lineNum"> 314 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 315 </span> : /**
+<span class="lineNum"> 316 </span> : * @brief %Vector move assignment operator.
+<span class="lineNum"> 317 </span> : * @param x A %vector of identical element and allocator types.
+<span class="lineNum"> 318 </span> : *
+<span class="lineNum"> 319 </span> : * The contents of @a x are moved into this %vector (without copying).
+<span class="lineNum"> 320 </span> : * @a x is a valid, but unspecified %vector.
+<span class="lineNum"> 321 </span> : */
+<span class="lineNum"> 322 </span> : vector&amp;
+<span class="lineNum"> 323 </span> : operator=(vector&amp;&amp; __x)
+<span class="lineNum"> 324 </span> : {
+<span class="lineNum"> 325 </span> : // NB: DR 675.
+<span class="lineNum"> 326 </span> : this-&gt;clear();
+<span class="lineNum"> 327 </span> : this-&gt;swap(__x);
+<span class="lineNum"> 328 </span> : return *this;
+<span class="lineNum"> 329 </span> : }
+<span class="lineNum"> 330 </span> : #endif
+<span class="lineNum"> 331 </span> :
+<span class="lineNum"> 332 </span> : /**
+<span class="lineNum"> 333 </span> : * @brief Assigns a given value to a %vector.
+<span class="lineNum"> 334 </span> : * @param n Number of elements to be assigned.
+<span class="lineNum"> 335 </span> : * @param val Value to be assigned.
+<span class="lineNum"> 336 </span> : *
+<span class="lineNum"> 337 </span> : * This function fills a %vector with @a n copies of the given
+<span class="lineNum"> 338 </span> : * value. Note that the assignment completely changes the
+<span class="lineNum"> 339 </span> : * %vector and that the resulting %vector's size is the same as
+<span class="lineNum"> 340 </span> : * the number of elements assigned. Old data may be lost.
+<span class="lineNum"> 341 </span> : */
+<span class="lineNum"> 342 </span> : void
+<span class="lineNum"> 343 </span> : assign(size_type __n, const value_type&amp; __val)
+<span class="lineNum"> 344 </span> : { _M_fill_assign(__n, __val); }
+<span class="lineNum"> 345 </span> :
+<span class="lineNum"> 346 </span> : /**
+<span class="lineNum"> 347 </span> : * @brief Assigns a range to a %vector.
+<span class="lineNum"> 348 </span> : * @param first An input iterator.
+<span class="lineNum"> 349 </span> : * @param last An input iterator.
+<span class="lineNum"> 350 </span> : *
+<span class="lineNum"> 351 </span> : * This function fills a %vector with copies of the elements in the
+<span class="lineNum"> 352 </span> : * range [first,last).
+<span class="lineNum"> 353 </span> : *
+<span class="lineNum"> 354 </span> : * Note that the assignment completely changes the %vector and
+<span class="lineNum"> 355 </span> : * that the resulting %vector's size is the same as the number
+<span class="lineNum"> 356 </span> : * of elements assigned. Old data may be lost.
+<span class="lineNum"> 357 </span> : */
+<span class="lineNum"> 358 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 359 </span> : void
+<span class="lineNum"> 360 </span> : assign(_InputIterator __first, _InputIterator __last)
+<span class="lineNum"> 361 </span> : {
+<span class="lineNum"> 362 </span> : // Check whether it's an integral type. If so, it's not an iterator.
+<span class="lineNum"> 363 </span> : typedef typename std::__is_integer&lt;_InputIterator&gt;::__type _Integral;
+<span class="lineNum"> 364 </span> : _M_assign_dispatch(__first, __last, _Integral());
+<span class="lineNum"> 365 </span> : }
+<span class="lineNum"> 366 </span> :
+<span class="lineNum"> 367 </span> : /// Get a copy of the memory allocation object.
+<span class="lineNum"> 368 </span> : using _Base::get_allocator;
+<span class="lineNum"> 369 </span> :
+<span class="lineNum"> 370 </span> : // iterators
+<span class="lineNum"> 371 </span> : /**
+<span class="lineNum"> 372 </span> : * Returns a read/write iterator that points to the first
+<span class="lineNum"> 373 </span> : * element in the %vector. Iteration is done in ordinary
+<span class="lineNum"> 374 </span> : * element order.
+<span class="lineNum"> 375 </span> : */
+<span class="lineNum"> 376 </span> : iterator
+<span class="lineNum"> 377 </span><span class="lineCov"> 4034 : begin()</span>
+<span class="lineNum"> 378 </span><span class="lineCov"> 4034 : { return iterator(this-&gt;_M_impl._M_start); }</span>
+<span class="lineNum"> 379 </span> :
+<span class="lineNum"> 380 </span> : /**
+<span class="lineNum"> 381 </span> : * Returns a read-only (constant) iterator that points to the
+<span class="lineNum"> 382 </span> : * first element in the %vector. Iteration is done in ordinary
+<span class="lineNum"> 383 </span> : * element order.
+<span class="lineNum"> 384 </span> : */
+<span class="lineNum"> 385 </span> : const_iterator
+<span class="lineNum"> 386 </span><span class="lineCov"> 91 : begin() const</span>
+<span class="lineNum"> 387 </span><span class="lineCov"> 91 : { return const_iterator(this-&gt;_M_impl._M_start); }</span>
+<span class="lineNum"> 388 </span> :
+<span class="lineNum"> 389 </span> : /**
+<span class="lineNum"> 390 </span> : * Returns a read/write iterator that points one past the last
+<span class="lineNum"> 391 </span> : * element in the %vector. Iteration is done in ordinary
+<span class="lineNum"> 392 </span> : * element order.
+<span class="lineNum"> 393 </span> : */
+<span class="lineNum"> 394 </span> : iterator
+<span class="lineNum"> 395 </span><span class="lineCov"> 69161 : end()</span>
+<span class="lineNum"> 396 </span><span class="lineCov"> 69161 : { return iterator(this-&gt;_M_impl._M_finish); }</span>
+<span class="lineNum"> 397 </span> :
+<span class="lineNum"> 398 </span> : /**
+<span class="lineNum"> 399 </span> : * Returns a read-only (constant) iterator that points one past
+<span class="lineNum"> 400 </span> : * the last element in the %vector. Iteration is done in
+<span class="lineNum"> 401 </span> : * ordinary element order.
+<span class="lineNum"> 402 </span> : */
+<span class="lineNum"> 403 </span> : const_iterator
+<span class="lineNum"> 404 </span><span class="lineCov"> 175 : end() const</span>
+<span class="lineNum"> 405 </span><span class="lineCov"> 175 : { return const_iterator(this-&gt;_M_impl._M_finish); }</span>
+<span class="lineNum"> 406 </span> :
+<span class="lineNum"> 407 </span> : /**
+<span class="lineNum"> 408 </span> : * Returns a read/write reverse iterator that points to the
+<span class="lineNum"> 409 </span> : * last element in the %vector. Iteration is done in reverse
+<span class="lineNum"> 410 </span> : * element order.
+<span class="lineNum"> 411 </span> : */
+<span class="lineNum"> 412 </span> : reverse_iterator
+<span class="lineNum"> 413 </span><span class="lineCov"> 1 : rbegin()</span>
+<span class="lineNum"> 414 </span><span class="lineCov"> 1 : { return reverse_iterator(end()); }</span>
+<span class="lineNum"> 415 </span> :
+<span class="lineNum"> 416 </span> : /**
+<span class="lineNum"> 417 </span> : * Returns a read-only (constant) reverse iterator that points
+<span class="lineNum"> 418 </span> : * to the last element in the %vector. Iteration is done in
+<span class="lineNum"> 419 </span> : * reverse element order.
+<span class="lineNum"> 420 </span> : */
+<span class="lineNum"> 421 </span> : const_reverse_iterator
+<span class="lineNum"> 422 </span> : rbegin() const
+<span class="lineNum"> 423 </span> : { return const_reverse_iterator(end()); }
+<span class="lineNum"> 424 </span> :
+<span class="lineNum"> 425 </span> : /**
+<span class="lineNum"> 426 </span> : * Returns a read/write reverse iterator that points to one
+<span class="lineNum"> 427 </span> : * before the first element in the %vector. Iteration is done
+<span class="lineNum"> 428 </span> : * in reverse element order.
+<span class="lineNum"> 429 </span> : */
+<span class="lineNum"> 430 </span> : reverse_iterator
+<span class="lineNum"> 431 </span> : rend()
+<span class="lineNum"> 432 </span> : { return reverse_iterator(begin()); }
+<span class="lineNum"> 433 </span> :
+<span class="lineNum"> 434 </span> : /**
+<span class="lineNum"> 435 </span> : * Returns a read-only (constant) reverse iterator that points
+<span class="lineNum"> 436 </span> : * to one before the first element in the %vector. Iteration
+<span class="lineNum"> 437 </span> : * is done in reverse element order.
+<span class="lineNum"> 438 </span> : */
+<span class="lineNum"> 439 </span> : const_reverse_iterator
+<span class="lineNum"> 440 </span> : rend() const
+<span class="lineNum"> 441 </span> : { return const_reverse_iterator(begin()); }
+<span class="lineNum"> 442 </span> :
+<span class="lineNum"> 443 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 444 </span> : /**
+<span class="lineNum"> 445 </span> : * Returns a read-only (constant) iterator that points to the
+<span class="lineNum"> 446 </span> : * first element in the %vector. Iteration is done in ordinary
+<span class="lineNum"> 447 </span> : * element order.
+<span class="lineNum"> 448 </span> : */
+<span class="lineNum"> 449 </span> : const_iterator
+<span class="lineNum"> 450 </span> : cbegin() const
+<span class="lineNum"> 451 </span> : { return const_iterator(this-&gt;_M_impl._M_start); }
+<span class="lineNum"> 452 </span> :
+<span class="lineNum"> 453 </span> : /**
+<span class="lineNum"> 454 </span> : * Returns a read-only (constant) iterator that points one past
+<span class="lineNum"> 455 </span> : * the last element in the %vector. Iteration is done in
+<span class="lineNum"> 456 </span> : * ordinary element order.
+<span class="lineNum"> 457 </span> : */
+<span class="lineNum"> 458 </span> : const_iterator
+<span class="lineNum"> 459 </span> : cend() const
+<span class="lineNum"> 460 </span> : { return const_iterator(this-&gt;_M_impl._M_finish); }
+<span class="lineNum"> 461 </span> :
+<span class="lineNum"> 462 </span> : /**
+<span class="lineNum"> 463 </span> : * Returns a read-only (constant) reverse iterator that points
+<span class="lineNum"> 464 </span> : * to the last element in the %vector. Iteration is done in
+<span class="lineNum"> 465 </span> : * reverse element order.
+<span class="lineNum"> 466 </span> : */
+<span class="lineNum"> 467 </span> : const_reverse_iterator
+<span class="lineNum"> 468 </span> : crbegin() const
+<span class="lineNum"> 469 </span> : { return const_reverse_iterator(end()); }
+<span class="lineNum"> 470 </span> :
+<span class="lineNum"> 471 </span> : /**
+<span class="lineNum"> 472 </span> : * Returns a read-only (constant) reverse iterator that points
+<span class="lineNum"> 473 </span> : * to one before the first element in the %vector. Iteration
+<span class="lineNum"> 474 </span> : * is done in reverse element order.
+<span class="lineNum"> 475 </span> : */
+<span class="lineNum"> 476 </span> : const_reverse_iterator
+<span class="lineNum"> 477 </span> : crend() const
+<span class="lineNum"> 478 </span> : { return const_reverse_iterator(begin()); }
+<span class="lineNum"> 479 </span> : #endif
+<span class="lineNum"> 480 </span> :
+<span class="lineNum"> 481 </span> : // [23.2.4.2] capacity
+<span class="lineNum"> 482 </span> : /** Returns the number of elements in the %vector. */
+<span class="lineNum"> 483 </span> : size_type
+<span class="lineNum"> 484 </span><span class="lineCov"> 1028954 : size() const</span>
+<span class="lineNum"> 485 </span><span class="lineCov"> 1028954 : { return size_type(this-&gt;_M_impl._M_finish - this-&gt;_M_impl._M_start); }</span>
+<span class="lineNum"> 486 </span> :
+<span class="lineNum"> 487 </span> : /** Returns the size() of the largest possible %vector. */
+<span class="lineNum"> 488 </span> : size_type
+<span class="lineNum"> 489 </span><span class="lineCov"> 41426 : max_size() const</span>
+<span class="lineNum"> 490 </span><span class="lineCov"> 41426 : { return _M_get_Tp_allocator().max_size(); }</span>
+<span class="lineNum"> 491 </span> :
+<span class="lineNum"> 492 </span> : /**
+<span class="lineNum"> 493 </span> : * @brief Resizes the %vector to the specified number of elements.
+<span class="lineNum"> 494 </span> : * @param new_size Number of elements the %vector should contain.
+<span class="lineNum"> 495 </span> : * @param x Data with which new elements should be populated.
+<span class="lineNum"> 496 </span> : *
+<span class="lineNum"> 497 </span> : * This function will %resize the %vector to the specified
+<span class="lineNum"> 498 </span> : * number of elements. If the number is smaller than the
+<span class="lineNum"> 499 </span> : * %vector's current size the %vector is truncated, otherwise
+<span class="lineNum"> 500 </span> : * the %vector is extended and new elements are populated with
+<span class="lineNum"> 501 </span> : * given data.
+<span class="lineNum"> 502 </span> : */
+<span class="lineNum"> 503 </span> : void
+<span class="lineNum"> 504 </span><span class="lineCov"> 22443 : resize(size_type __new_size, value_type __x = value_type())</span>
+<span class="lineNum"> 505 </span> : {
+<span class="lineNum"> 506 </span><span class="lineCov"> 22443 : if (__new_size &lt; size())</span>
+<span class="lineNum"> 507 </span><span class="lineNoCov"> 0 : _M_erase_at_end(this-&gt;_M_impl._M_start + __new_size);</span>
+<span class="lineNum"> 508 </span> : else
+<span class="lineNum"> 509 </span><span class="lineCov"> 22443 : insert(end(), __new_size - size(), __x);</span>
+<span class="lineNum"> 510 </span><span class="lineCov"> 22443 : }</span>
+<span class="lineNum"> 511 </span> :
+<span class="lineNum"> 512 </span> : /**
+<span class="lineNum"> 513 </span> : * Returns the total number of elements that the %vector can
+<span class="lineNum"> 514 </span> : * hold before needing to allocate more memory.
+<span class="lineNum"> 515 </span> : */
+<span class="lineNum"> 516 </span> : size_type
+<span class="lineNum"> 517 </span><span class="lineCov"> 10 : capacity() const</span>
+<span class="lineNum"> 518 </span> : { return size_type(this-&gt;_M_impl._M_end_of_storage
+<span class="lineNum"> 519 </span><span class="lineCov"> 10 : - this-&gt;_M_impl._M_start); }</span>
+<span class="lineNum"> 520 </span> :
+<span class="lineNum"> 521 </span> : /**
+<span class="lineNum"> 522 </span> : * Returns true if the %vector is empty. (Thus begin() would
+<span class="lineNum"> 523 </span> : * equal end().)
+<span class="lineNum"> 524 </span> : */
+<span class="lineNum"> 525 </span> : bool
+<span class="lineNum"> 526 </span><span class="lineCov"> 25 : empty() const</span>
+<span class="lineNum"> 527 </span><span class="lineCov"> 25 : { return begin() == end(); }</span>
+<span class="lineNum"> 528 </span> :
+<span class="lineNum"> 529 </span> : /**
+<span class="lineNum"> 530 </span> : * @brief Attempt to preallocate enough memory for specified number of
+<span class="lineNum"> 531 </span> : * elements.
+<span class="lineNum"> 532 </span> : * @param n Number of elements required.
+<span class="lineNum"> 533 </span> : * @throw std::length_error If @a n exceeds @c max_size().
+<span class="lineNum"> 534 </span> : *
+<span class="lineNum"> 535 </span> : * This function attempts to reserve enough memory for the
+<span class="lineNum"> 536 </span> : * %vector to hold the specified number of elements. If the
+<span class="lineNum"> 537 </span> : * number requested is more than max_size(), length_error is
+<span class="lineNum"> 538 </span> : * thrown.
+<span class="lineNum"> 539 </span> : *
+<span class="lineNum"> 540 </span> : * The advantage of this function is that if optimal code is a
+<span class="lineNum"> 541 </span> : * necessity and the user can determine the number of elements
+<span class="lineNum"> 542 </span> : * that will be required, the user can reserve the memory in
+<span class="lineNum"> 543 </span> : * %advance, and thus prevent a possible reallocation of memory
+<span class="lineNum"> 544 </span> : * and copying of %vector data.
+<span class="lineNum"> 545 </span> : */
+<span class="lineNum"> 546 </span> : void
+<span class="lineNum"> 547 </span> : reserve(size_type __n);
+<span class="lineNum"> 548 </span> :
+<span class="lineNum"> 549 </span> : // element access
+<span class="lineNum"> 550 </span> : /**
+<span class="lineNum"> 551 </span> : * @brief Subscript access to the data contained in the %vector.
+<span class="lineNum"> 552 </span> : * @param n The index of the element for which data should be
+<span class="lineNum"> 553 </span> : * accessed.
+<span class="lineNum"> 554 </span> : * @return Read/write reference to data.
+<span class="lineNum"> 555 </span> : *
+<span class="lineNum"> 556 </span> : * This operator allows for easy, array-style, data access.
+<span class="lineNum"> 557 </span> : * Note that data access with this operator is unchecked and
+<span class="lineNum"> 558 </span> : * out_of_range lookups are not defined. (For checked lookups
+<span class="lineNum"> 559 </span> : * see at().)
+<span class="lineNum"> 560 </span> : */
+<span class="lineNum"> 561 </span> : reference
+<span class="lineNum"> 562 </span><span class="lineCov"> 256895 : operator[](size_type __n)</span>
+<span class="lineNum"> 563 </span><span class="lineCov"> 256895 : { return *(this-&gt;_M_impl._M_start + __n); }</span>
+<span class="lineNum"> 564 </span> :
+<span class="lineNum"> 565 </span> : /**
+<span class="lineNum"> 566 </span> : * @brief Subscript access to the data contained in the %vector.
+<span class="lineNum"> 567 </span> : * @param n The index of the element for which data should be
+<span class="lineNum"> 568 </span> : * accessed.
+<span class="lineNum"> 569 </span> : * @return Read-only (constant) reference to data.
+<span class="lineNum"> 570 </span> : *
+<span class="lineNum"> 571 </span> : * This operator allows for easy, array-style, data access.
+<span class="lineNum"> 572 </span> : * Note that data access with this operator is unchecked and
+<span class="lineNum"> 573 </span> : * out_of_range lookups are not defined. (For checked lookups
+<span class="lineNum"> 574 </span> : * see at().)
+<span class="lineNum"> 575 </span> : */
+<span class="lineNum"> 576 </span> : const_reference
+<span class="lineNum"> 577 </span><span class="lineCov"> 1925198 : operator[](size_type __n) const</span>
+<span class="lineNum"> 578 </span><span class="lineCov"> 1925198 : { return *(this-&gt;_M_impl._M_start + __n); }</span>
+<span class="lineNum"> 579 </span> :
+<span class="lineNum"> 580 </span> : protected:
+<span class="lineNum"> 581 </span> : /// Safety check used only from at().
+<span class="lineNum"> 582 </span> : void
+<span class="lineNum"> 583 </span> : _M_range_check(size_type __n) const
+<span class="lineNum"> 584 </span> : {
+<span class="lineNum"> 585 </span> : if (__n &gt;= this-&gt;size())
+<span class="lineNum"> 586 </span> : __throw_out_of_range(__N(&quot;vector::_M_range_check&quot;));
+<span class="lineNum"> 587 </span> : }
+<span class="lineNum"> 588 </span> :
+<span class="lineNum"> 589 </span> : public:
+<span class="lineNum"> 590 </span> : /**
+<span class="lineNum"> 591 </span> : * @brief Provides access to the data contained in the %vector.
+<span class="lineNum"> 592 </span> : * @param n The index of the element for which data should be
+<span class="lineNum"> 593 </span> : * accessed.
+<span class="lineNum"> 594 </span> : * @return Read/write reference to data.
+<span class="lineNum"> 595 </span> : * @throw std::out_of_range If @a n is an invalid index.
+<span class="lineNum"> 596 </span> : *
+<span class="lineNum"> 597 </span> : * This function provides for safer data access. The parameter
+<span class="lineNum"> 598 </span> : * is first checked that it is in the range of the vector. The
+<span class="lineNum"> 599 </span> : * function throws out_of_range if the check fails.
+<span class="lineNum"> 600 </span> : */
+<span class="lineNum"> 601 </span> : reference
+<span class="lineNum"> 602 </span> : at(size_type __n)
+<span class="lineNum"> 603 </span> : {
+<span class="lineNum"> 604 </span> : _M_range_check(__n);
+<span class="lineNum"> 605 </span> : return (*this)[__n];
+<span class="lineNum"> 606 </span> : }
+<span class="lineNum"> 607 </span> :
+<span class="lineNum"> 608 </span> : /**
+<span class="lineNum"> 609 </span> : * @brief Provides access to the data contained in the %vector.
+<span class="lineNum"> 610 </span> : * @param n The index of the element for which data should be
+<span class="lineNum"> 611 </span> : * accessed.
+<span class="lineNum"> 612 </span> : * @return Read-only (constant) reference to data.
+<span class="lineNum"> 613 </span> : * @throw std::out_of_range If @a n is an invalid index.
+<span class="lineNum"> 614 </span> : *
+<span class="lineNum"> 615 </span> : * This function provides for safer data access. The parameter
+<span class="lineNum"> 616 </span> : * is first checked that it is in the range of the vector. The
+<span class="lineNum"> 617 </span> : * function throws out_of_range if the check fails.
+<span class="lineNum"> 618 </span> : */
+<span class="lineNum"> 619 </span> : const_reference
+<span class="lineNum"> 620 </span> : at(size_type __n) const
+<span class="lineNum"> 621 </span> : {
+<span class="lineNum"> 622 </span> : _M_range_check(__n);
+<span class="lineNum"> 623 </span> : return (*this)[__n];
+<span class="lineNum"> 624 </span> : }
+<span class="lineNum"> 625 </span> :
+<span class="lineNum"> 626 </span> : /**
+<span class="lineNum"> 627 </span> : * Returns a read/write reference to the data at the first
+<span class="lineNum"> 628 </span> : * element of the %vector.
+<span class="lineNum"> 629 </span> : */
+<span class="lineNum"> 630 </span> : reference
+<span class="lineNum"> 631 </span> : front()
+<span class="lineNum"> 632 </span> : { return *begin(); }
+<span class="lineNum"> 633 </span> :
+<span class="lineNum"> 634 </span> : /**
+<span class="lineNum"> 635 </span> : * Returns a read-only (constant) reference to the data at the first
+<span class="lineNum"> 636 </span> : * element of the %vector.
+<span class="lineNum"> 637 </span> : */
+<span class="lineNum"> 638 </span> : const_reference
+<span class="lineNum"> 639 </span> : front() const
+<span class="lineNum"> 640 </span> : { return *begin(); }
+<span class="lineNum"> 641 </span> :
+<span class="lineNum"> 642 </span> : /**
+<span class="lineNum"> 643 </span> : * Returns a read/write reference to the data at the last
+<span class="lineNum"> 644 </span> : * element of the %vector.
+<span class="lineNum"> 645 </span> : */
+<span class="lineNum"> 646 </span> : reference
+<span class="lineNum"> 647 </span><span class="lineCov"> 3 : back()</span>
+<span class="lineNum"> 648 </span><span class="lineCov"> 3 : { return *(end() - 1); }</span>
+<span class="lineNum"> 649 </span> :
+<span class="lineNum"> 650 </span> : /**
+<span class="lineNum"> 651 </span> : * Returns a read-only (constant) reference to the data at the
+<span class="lineNum"> 652 </span> : * last element of the %vector.
+<span class="lineNum"> 653 </span> : */
+<span class="lineNum"> 654 </span> : const_reference
+<span class="lineNum"> 655 </span> : back() const
+<span class="lineNum"> 656 </span> : { return *(end() - 1); }
+<span class="lineNum"> 657 </span> :
+<span class="lineNum"> 658 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 659 </span> : // DR 464. Suggestion for new member functions in standard containers.
+<span class="lineNum"> 660 </span> : // data access
+<span class="lineNum"> 661 </span> : /**
+<span class="lineNum"> 662 </span> : * Returns a pointer such that [data(), data() + size()) is a valid
+<span class="lineNum"> 663 </span> : * range. For a non-empty %vector, data() == &amp;front().
+<span class="lineNum"> 664 </span> : */
+<span class="lineNum"> 665 </span> : pointer
+<span class="lineNum"> 666 </span> : data()
+<span class="lineNum"> 667 </span> : { return pointer(this-&gt;_M_impl._M_start); }
+<span class="lineNum"> 668 </span> :
+<span class="lineNum"> 669 </span> : const_pointer
+<span class="lineNum"> 670 </span> : data() const
+<span class="lineNum"> 671 </span> : { return const_pointer(this-&gt;_M_impl._M_start); }
+<span class="lineNum"> 672 </span> :
+<span class="lineNum"> 673 </span> : // [23.2.4.3] modifiers
+<span class="lineNum"> 674 </span> : /**
+<span class="lineNum"> 675 </span> : * @brief Add data to the end of the %vector.
+<span class="lineNum"> 676 </span> : * @param x Data to be added.
+<span class="lineNum"> 677 </span> : *
+<span class="lineNum"> 678 </span> : * This is a typical stack operation. The function creates an
+<span class="lineNum"> 679 </span> : * element at the end of the %vector and assigns the given data
+<span class="lineNum"> 680 </span> : * to it. Due to the nature of a %vector this operation can be
+<span class="lineNum"> 681 </span> : * done in constant time if the %vector has preallocated space
+<span class="lineNum"> 682 </span> : * available.
+<span class="lineNum"> 683 </span> : */
+<span class="lineNum"> 684 </span> : #ifndef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 685 </span> : void
+<span class="lineNum"> 686 </span><span class="lineCov"> 129213 : push_back(const value_type&amp; __x)</span>
+<span class="lineNum"> 687 </span> : {
+<span class="lineNum"> 688 </span><span class="lineCov"> 129213 : if (this-&gt;_M_impl._M_finish != this-&gt;_M_impl._M_end_of_storage)</span>
+<span class="lineNum"> 689 </span> : {
+<span class="lineNum"> 690 </span><span class="lineCov"> 108914 : this-&gt;_M_impl.construct(this-&gt;_M_impl._M_finish, __x);</span>
+<span class="lineNum"> 691 </span><span class="lineCov"> 108914 : ++this-&gt;_M_impl._M_finish;</span>
+<span class="lineNum"> 692 </span> : }
+<span class="lineNum"> 693 </span> : else
+<span class="lineNum"> 694 </span><span class="lineCov"> 20299 : _M_insert_aux(end(), __x);</span>
+<span class="lineNum"> 695 </span><span class="lineCov"> 129213 : }</span>
+<span class="lineNum"> 696 </span> : #else
+<span class="lineNum"> 697 </span> : template&lt;typename... _Args&gt;
+<span class="lineNum"> 698 </span> : void
+<span class="lineNum"> 699 </span> : push_back(_Args&amp;&amp;... __args)
+<span class="lineNum"> 700 </span> : {
+<span class="lineNum"> 701 </span> : if (this-&gt;_M_impl._M_finish != this-&gt;_M_impl._M_end_of_storage)
+<span class="lineNum"> 702 </span> : {
+<span class="lineNum"> 703 </span> : this-&gt;_M_impl.construct(this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 704 </span> : std::forward&lt;_Args&gt;(__args)...);
+<span class="lineNum"> 705 </span> : ++this-&gt;_M_impl._M_finish;
+<span class="lineNum"> 706 </span> : }
+<span class="lineNum"> 707 </span> : else
+<span class="lineNum"> 708 </span> : _M_insert_aux(end(), std::forward&lt;_Args&gt;(__args)...);
+<span class="lineNum"> 709 </span> : }
+<span class="lineNum"> 710 </span> : #endif
+<span class="lineNum"> 711 </span> :
+<span class="lineNum"> 712 </span> : /**
+<span class="lineNum"> 713 </span> : * @brief Removes last element.
+<span class="lineNum"> 714 </span> : *
+<span class="lineNum"> 715 </span> : * This is a typical stack operation. It shrinks the %vector by one.
+<span class="lineNum"> 716 </span> : *
+<span class="lineNum"> 717 </span> : * Note that no data is returned, and if the last element's
+<span class="lineNum"> 718 </span> : * data is needed, it should be retrieved before pop_back() is
+<span class="lineNum"> 719 </span> : * called.
+<span class="lineNum"> 720 </span> : */
+<span class="lineNum"> 721 </span> : void
+<span class="lineNum"> 722 </span><span class="lineCov"> 3 : pop_back()</span>
+<span class="lineNum"> 723 </span> : {
+<span class="lineNum"> 724 </span><span class="lineCov"> 3 : --this-&gt;_M_impl._M_finish;</span>
+<span class="lineNum"> 725 </span><span class="lineCov"> 3 : this-&gt;_M_impl.destroy(this-&gt;_M_impl._M_finish);</span>
+<span class="lineNum"> 726 </span><span class="lineCov"> 3 : }</span>
+<span class="lineNum"> 727 </span> :
+<span class="lineNum"> 728 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 729 </span> : /**
+<span class="lineNum"> 730 </span> : * @brief Inserts an object in %vector before specified iterator.
+<span class="lineNum"> 731 </span> : * @param position An iterator into the %vector.
+<span class="lineNum"> 732 </span> : * @param args Arguments.
+<span class="lineNum"> 733 </span> : * @return An iterator that points to the inserted data.
+<span class="lineNum"> 734 </span> : *
+<span class="lineNum"> 735 </span> : * This function will insert an object of type T constructed
+<span class="lineNum"> 736 </span> : * with T(std::forward&lt;Args&gt;(args)...) before the specified location.
+<span class="lineNum"> 737 </span> : * Note that this kind of operation could be expensive for a %vector
+<span class="lineNum"> 738 </span> : * and if it is frequently used the user should consider using
+<span class="lineNum"> 739 </span> : * std::list.
+<span class="lineNum"> 740 </span> : */
+<span class="lineNum"> 741 </span> : template&lt;typename... _Args&gt;
+<span class="lineNum"> 742 </span> : iterator
+<span class="lineNum"> 743 </span> : emplace(iterator __position, _Args&amp;&amp;... __args);
+<span class="lineNum"> 744 </span> : #endif
+<span class="lineNum"> 745 </span> :
+<span class="lineNum"> 746 </span> : /**
+<span class="lineNum"> 747 </span> : * @brief Inserts given value into %vector before specified iterator.
+<span class="lineNum"> 748 </span> : * @param position An iterator into the %vector.
+<span class="lineNum"> 749 </span> : * @param x Data to be inserted.
+<span class="lineNum"> 750 </span> : * @return An iterator that points to the inserted data.
+<span class="lineNum"> 751 </span> : *
+<span class="lineNum"> 752 </span> : * This function will insert a copy of the given value before
+<span class="lineNum"> 753 </span> : * the specified location. Note that this kind of operation
+<span class="lineNum"> 754 </span> : * could be expensive for a %vector and if it is frequently
+<span class="lineNum"> 755 </span> : * used the user should consider using std::list.
+<span class="lineNum"> 756 </span> : */
+<span class="lineNum"> 757 </span> : iterator
+<span class="lineNum"> 758 </span> : insert(iterator __position, const value_type&amp; __x);
+<span class="lineNum"> 759 </span> :
+<span class="lineNum"> 760 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 761 </span> : /**
+<span class="lineNum"> 762 </span> : * @brief Inserts given rvalue into %vector before specified iterator.
+<span class="lineNum"> 763 </span> : * @param position An iterator into the %vector.
+<span class="lineNum"> 764 </span> : * @param x Data to be inserted.
+<span class="lineNum"> 765 </span> : * @return An iterator that points to the inserted data.
+<span class="lineNum"> 766 </span> : *
+<span class="lineNum"> 767 </span> : * This function will insert a copy of the given rvalue before
+<span class="lineNum"> 768 </span> : * the specified location. Note that this kind of operation
+<span class="lineNum"> 769 </span> : * could be expensive for a %vector and if it is frequently
+<span class="lineNum"> 770 </span> : * used the user should consider using std::list.
+<span class="lineNum"> 771 </span> : */
+<span class="lineNum"> 772 </span> : iterator
+<span class="lineNum"> 773 </span> : insert(iterator __position, value_type&amp;&amp; __x)
+<span class="lineNum"> 774 </span> : { return emplace(__position, std::move(__x)); }
+<span class="lineNum"> 775 </span> : #endif
+<span class="lineNum"> 776 </span> :
+<span class="lineNum"> 777 </span> : /**
+<span class="lineNum"> 778 </span> : * @brief Inserts a number of copies of given data into the %vector.
+<span class="lineNum"> 779 </span> : * @param position An iterator into the %vector.
+<span class="lineNum"> 780 </span> : * @param n Number of elements to be inserted.
+<span class="lineNum"> 781 </span> : * @param x Data to be inserted.
+<span class="lineNum"> 782 </span> : *
+<span class="lineNum"> 783 </span> : * This function will insert a specified number of copies of
+<span class="lineNum"> 784 </span> : * the given data before the location specified by @a position.
+<span class="lineNum"> 785 </span> : *
+<span class="lineNum"> 786 </span> : * Note that this kind of operation could be expensive for a
+<span class="lineNum"> 787 </span> : * %vector and if it is frequently used the user should
+<span class="lineNum"> 788 </span> : * consider using std::list.
+<span class="lineNum"> 789 </span> : */
+<span class="lineNum"> 790 </span> : void
+<span class="lineNum"> 791 </span><span class="lineCov"> 22443 : insert(iterator __position, size_type __n, const value_type&amp; __x)</span>
+<span class="lineNum"> 792 </span><span class="lineCov"> 22443 : { _M_fill_insert(__position, __n, __x); }</span>
+<span class="lineNum"> 793 </span> :
+<span class="lineNum"> 794 </span> : /**
+<span class="lineNum"> 795 </span> : * @brief Inserts a range into the %vector.
+<span class="lineNum"> 796 </span> : * @param position An iterator into the %vector.
+<span class="lineNum"> 797 </span> : * @param first An input iterator.
+<span class="lineNum"> 798 </span> : * @param last An input iterator.
+<span class="lineNum"> 799 </span> : *
+<span class="lineNum"> 800 </span> : * This function will insert copies of the data in the range
+<span class="lineNum"> 801 </span> : * [first,last) into the %vector before the location specified
+<span class="lineNum"> 802 </span> : * by @a pos.
+<span class="lineNum"> 803 </span> : *
+<span class="lineNum"> 804 </span> : * Note that this kind of operation could be expensive for a
+<span class="lineNum"> 805 </span> : * %vector and if it is frequently used the user should
+<span class="lineNum"> 806 </span> : * consider using std::list.
+<span class="lineNum"> 807 </span> : */
+<span class="lineNum"> 808 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 809 </span> : void
+<span class="lineNum"> 810 </span> : insert(iterator __position, _InputIterator __first,
+<span class="lineNum"> 811 </span> : _InputIterator __last)
+<span class="lineNum"> 812 </span> : {
+<span class="lineNum"> 813 </span> : // Check whether it's an integral type. If so, it's not an iterator.
+<span class="lineNum"> 814 </span> : typedef typename std::__is_integer&lt;_InputIterator&gt;::__type _Integral;
+<span class="lineNum"> 815 </span> : _M_insert_dispatch(__position, __first, __last, _Integral());
+<span class="lineNum"> 816 </span> : }
+<span class="lineNum"> 817 </span> :
+<span class="lineNum"> 818 </span> : /**
+<span class="lineNum"> 819 </span> : * @brief Remove element at given position.
+<span class="lineNum"> 820 </span> : * @param position Iterator pointing to element to be erased.
+<span class="lineNum"> 821 </span> : * @return An iterator pointing to the next element (or end()).
+<span class="lineNum"> 822 </span> : *
+<span class="lineNum"> 823 </span> : * This function will erase the element at the given position and thus
+<span class="lineNum"> 824 </span> : * shorten the %vector by one.
+<span class="lineNum"> 825 </span> : *
+<span class="lineNum"> 826 </span> : * Note This operation could be expensive and if it is
+<span class="lineNum"> 827 </span> : * frequently used the user should consider using std::list.
+<span class="lineNum"> 828 </span> : * The user is also cautioned that this function only erases
+<span class="lineNum"> 829 </span> : * the element, and that if the element is itself a pointer,
+<span class="lineNum"> 830 </span> : * the pointed-to memory is not touched in any way. Managing
+<span class="lineNum"> 831 </span> : * the pointer is the user's responsibility.
+<span class="lineNum"> 832 </span> : */
+<span class="lineNum"> 833 </span> : iterator
+<span class="lineNum"> 834 </span> : erase(iterator __position);
+<span class="lineNum"> 835 </span> :
+<span class="lineNum"> 836 </span> : /**
+<span class="lineNum"> 837 </span> : * @brief Remove a range of elements.
+<span class="lineNum"> 838 </span> : * @param first Iterator pointing to the first element to be erased.
+<span class="lineNum"> 839 </span> : * @param last Iterator pointing to one past the last element to be
+<span class="lineNum"> 840 </span> : * erased.
+<span class="lineNum"> 841 </span> : * @return An iterator pointing to the element pointed to by @a last
+<span class="lineNum"> 842 </span> : * prior to erasing (or end()).
+<span class="lineNum"> 843 </span> : *
+<span class="lineNum"> 844 </span> : * This function will erase the elements in the range [first,last) and
+<span class="lineNum"> 845 </span> : * shorten the %vector accordingly.
+<span class="lineNum"> 846 </span> : *
+<span class="lineNum"> 847 </span> : * Note This operation could be expensive and if it is
+<span class="lineNum"> 848 </span> : * frequently used the user should consider using std::list.
+<span class="lineNum"> 849 </span> : * The user is also cautioned that this function only erases
+<span class="lineNum"> 850 </span> : * the elements, and that if the elements themselves are
+<span class="lineNum"> 851 </span> : * pointers, the pointed-to memory is not touched in any way.
+<span class="lineNum"> 852 </span> : * Managing the pointer is the user's responsibility.
+<span class="lineNum"> 853 </span> : */
+<span class="lineNum"> 854 </span> : iterator
+<span class="lineNum"> 855 </span> : erase(iterator __first, iterator __last);
+<span class="lineNum"> 856 </span> :
+<span class="lineNum"> 857 </span> : /**
+<span class="lineNum"> 858 </span> : * @brief Swaps data with another %vector.
+<span class="lineNum"> 859 </span> : * @param x A %vector of the same element and allocator types.
+<span class="lineNum"> 860 </span> : *
+<span class="lineNum"> 861 </span> : * This exchanges the elements between two vectors in constant time.
+<span class="lineNum"> 862 </span> : * (Three pointers, so it should be quite fast.)
+<span class="lineNum"> 863 </span> : * Note that the global std::swap() function is specialized such that
+<span class="lineNum"> 864 </span> : * std::swap(v1,v2) will feed to this function.
+<span class="lineNum"> 865 </span> : */
+<span class="lineNum"> 866 </span> : void
+<span class="lineNum"> 867 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 868 </span> : swap(vector&amp;&amp; __x)
+<span class="lineNum"> 869 </span> : #else
+<span class="lineNum"> 870 </span> : swap(vector&amp; __x)
+<span class="lineNum"> 871 </span> : #endif
+<span class="lineNum"> 872 </span> : {
+<span class="lineNum"> 873 </span> : std::swap(this-&gt;_M_impl._M_start, __x._M_impl._M_start);
+<span class="lineNum"> 874 </span> : std::swap(this-&gt;_M_impl._M_finish, __x._M_impl._M_finish);
+<span class="lineNum"> 875 </span> : std::swap(this-&gt;_M_impl._M_end_of_storage,
+<span class="lineNum"> 876 </span> : __x._M_impl._M_end_of_storage);
+<span class="lineNum"> 877 </span> :
+<span class="lineNum"> 878 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 879 </span> : // 431. Swapping containers with unequal allocators.
+<span class="lineNum"> 880 </span> : std::__alloc_swap&lt;_Tp_alloc_type&gt;::_S_do_it(_M_get_Tp_allocator(),
+<span class="lineNum"> 881 </span> : __x._M_get_Tp_allocator());
+<span class="lineNum"> 882 </span> : }
+<span class="lineNum"> 883 </span> :
+<span class="lineNum"> 884 </span> : /**
+<span class="lineNum"> 885 </span> : * Erases all the elements. Note that this function only erases the
+<span class="lineNum"> 886 </span> : * elements, and that if the elements themselves are pointers, the
+<span class="lineNum"> 887 </span> : * pointed-to memory is not touched in any way. Managing the pointer is
+<span class="lineNum"> 888 </span> : * the user's responsibility.
+<span class="lineNum"> 889 </span> : */
+<span class="lineNum"> 890 </span> : void
+<span class="lineNum"> 891 </span><span class="lineCov"> 7856 : clear()</span>
+<span class="lineNum"> 892 </span><span class="lineCov"> 7856 : { _M_erase_at_end(this-&gt;_M_impl._M_start); }</span>
+<span class="lineNum"> 893 </span> :
+<span class="lineNum"> 894 </span> : protected:
+<span class="lineNum"> 895 </span> : /**
+<span class="lineNum"> 896 </span> : * Memory expansion handler. Uses the member allocation function to
+<span class="lineNum"> 897 </span> : * obtain @a n bytes of memory, and then copies [first,last) into it.
+<span class="lineNum"> 898 </span> : */
+<span class="lineNum"> 899 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 900 </span> : pointer
+<span class="lineNum"> 901 </span> : _M_allocate_and_copy(size_type __n,
+<span class="lineNum"> 902 </span><span class="lineCov"> 10 : _ForwardIterator __first, _ForwardIterator __last)</span>
+<span class="lineNum"> 903 </span> : {
+<span class="lineNum"> 904 </span><span class="lineCov"> 10 : pointer __result = this-&gt;_M_allocate(__n);</span>
+<span class="lineNum"> 905 </span> : try
+<span class="lineNum"> 906 </span> : {
+<span class="lineNum"> 907 </span><span class="lineCov"> 10 : std::__uninitialized_copy_a(__first, __last, __result,</span>
+<span class="lineNum"> 908 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 909 </span><span class="lineCov"> 10 : return __result;</span>
+<span class="lineNum"> 910 </span> : }
+<span class="lineNum"> 911 </span><span class="lineNoCov"> 0 : catch(...)</span>
+<span class="lineNum"> 912 </span> : {
+<span class="lineNum"> 913 </span><span class="lineNoCov"> 0 : _M_deallocate(__result, __n);</span>
+<span class="lineNum"> 914 </span><span class="lineNoCov"> 0 : __throw_exception_again;</span>
+<span class="lineNum"> 915 </span> : }
+<span class="lineNum"> 916 </span> : }
+<span class="lineNum"> 917 </span> :
+<span class="lineNum"> 918 </span> :
+<span class="lineNum"> 919 </span> : // Internal constructor functions follow.
+<span class="lineNum"> 920 </span> :
+<span class="lineNum"> 921 </span> : // Called by the range constructor to implement [23.1.1]/9
+<span class="lineNum"> 922 </span> :
+<span class="lineNum"> 923 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 924 </span> : // 438. Ambiguity in the &quot;do the right thing&quot; clause
+<span class="lineNum"> 925 </span> : template&lt;typename _Integer&gt;
+<span class="lineNum"> 926 </span> : void
+<span class="lineNum"> 927 </span> : _M_initialize_dispatch(_Integer __n, _Integer __value, __true_type)
+<span class="lineNum"> 928 </span> : {
+<span class="lineNum"> 929 </span> : this-&gt;_M_impl._M_start = _M_allocate(static_cast&lt;size_type&gt;(__n));
+<span class="lineNum"> 930 </span> : this-&gt;_M_impl._M_end_of_storage =
+<span class="lineNum"> 931 </span> : this-&gt;_M_impl._M_start + static_cast&lt;size_type&gt;(__n);
+<span class="lineNum"> 932 </span> : _M_fill_initialize(static_cast&lt;size_type&gt;(__n), __value);
+<span class="lineNum"> 933 </span> : }
+<span class="lineNum"> 934 </span> :
+<span class="lineNum"> 935 </span> : // Called by the range constructor to implement [23.1.1]/9
+<span class="lineNum"> 936 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 937 </span> : void
+<span class="lineNum"> 938 </span> : _M_initialize_dispatch(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 939 </span> : __false_type)
+<span class="lineNum"> 940 </span> : {
+<span class="lineNum"> 941 </span> : typedef typename std::iterator_traits&lt;_InputIterator&gt;::
+<span class="lineNum"> 942 </span> : iterator_category _IterCategory;
+<span class="lineNum"> 943 </span> : _M_range_initialize(__first, __last, _IterCategory());
+<span class="lineNum"> 944 </span> : }
+<span class="lineNum"> 945 </span> :
+<span class="lineNum"> 946 </span> : // Called by the second initialize_dispatch above
+<span class="lineNum"> 947 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 948 </span> : void
+<span class="lineNum"> 949 </span> : _M_range_initialize(_InputIterator __first,
+<span class="lineNum"> 950 </span> : _InputIterator __last, std::input_iterator_tag)
+<span class="lineNum"> 951 </span> : {
+<span class="lineNum"> 952 </span> : for (; __first != __last; ++__first)
+<span class="lineNum"> 953 </span> : push_back(*__first);
+<span class="lineNum"> 954 </span> : }
+<span class="lineNum"> 955 </span> :
+<span class="lineNum"> 956 </span> : // Called by the second initialize_dispatch above
+<span class="lineNum"> 957 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 958 </span> : void
+<span class="lineNum"> 959 </span> : _M_range_initialize(_ForwardIterator __first,
+<span class="lineNum"> 960 </span> : _ForwardIterator __last, std::forward_iterator_tag)
+<span class="lineNum"> 961 </span> : {
+<span class="lineNum"> 962 </span> : const size_type __n = std::distance(__first, __last);
+<span class="lineNum"> 963 </span> : this-&gt;_M_impl._M_start = this-&gt;_M_allocate(__n);
+<span class="lineNum"> 964 </span> : this-&gt;_M_impl._M_end_of_storage = this-&gt;_M_impl._M_start + __n;
+<span class="lineNum"> 965 </span> : this-&gt;_M_impl._M_finish =
+<span class="lineNum"> 966 </span> : std::__uninitialized_copy_a(__first, __last,
+<span class="lineNum"> 967 </span> : this-&gt;_M_impl._M_start,
+<span class="lineNum"> 968 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 969 </span> : }
+<span class="lineNum"> 970 </span> :
+<span class="lineNum"> 971 </span> : // Called by the first initialize_dispatch above and by the
+<span class="lineNum"> 972 </span> : // vector(n,value,a) constructor.
+<span class="lineNum"> 973 </span> : void
+<span class="lineNum"> 974 </span><span class="lineCov"> 9 : _M_fill_initialize(size_type __n, const value_type&amp; __value)</span>
+<span class="lineNum"> 975 </span> : {
+<span class="lineNum"> 976 </span><span class="lineCov"> 9 : std::__uninitialized_fill_n_a(this-&gt;_M_impl._M_start, __n, __value, </span>
+<span class="lineNum"> 977 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 978 </span><span class="lineCov"> 9 : this-&gt;_M_impl._M_finish = this-&gt;_M_impl._M_end_of_storage;</span>
+<span class="lineNum"> 979 </span><span class="lineCov"> 9 : }</span>
+<span class="lineNum"> 980 </span> :
+<span class="lineNum"> 981 </span> :
+<span class="lineNum"> 982 </span> : // Internal assign functions follow. The *_aux functions do the actual
+<span class="lineNum"> 983 </span> : // assignment work for the range versions.
+<span class="lineNum"> 984 </span> :
+<span class="lineNum"> 985 </span> : // Called by the range assign to implement [23.1.1]/9
+<span class="lineNum"> 986 </span> :
+<span class="lineNum"> 987 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 988 </span> : // 438. Ambiguity in the &quot;do the right thing&quot; clause
+<span class="lineNum"> 989 </span> : template&lt;typename _Integer&gt;
+<span class="lineNum"> 990 </span> : void
+<span class="lineNum"> 991 </span> : _M_assign_dispatch(_Integer __n, _Integer __val, __true_type)
+<span class="lineNum"> 992 </span> : { _M_fill_assign(__n, __val); }
+<span class="lineNum"> 993 </span> :
+<span class="lineNum"> 994 </span> : // Called by the range assign to implement [23.1.1]/9
+<span class="lineNum"> 995 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 996 </span> : void
+<span class="lineNum"> 997 </span> : _M_assign_dispatch(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 998 </span> : __false_type)
+<span class="lineNum"> 999 </span> : {
+<span class="lineNum"> 1000 </span> : typedef typename std::iterator_traits&lt;_InputIterator&gt;::
+<span class="lineNum"> 1001 </span> : iterator_category _IterCategory;
+<span class="lineNum"> 1002 </span> : _M_assign_aux(__first, __last, _IterCategory());
+<span class="lineNum"> 1003 </span> : }
+<span class="lineNum"> 1004 </span> :
+<span class="lineNum"> 1005 </span> : // Called by the second assign_dispatch above
+<span class="lineNum"> 1006 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 1007 </span> : void
+<span class="lineNum"> 1008 </span> : _M_assign_aux(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 1009 </span> : std::input_iterator_tag);
+<span class="lineNum"> 1010 </span> :
+<span class="lineNum"> 1011 </span> : // Called by the second assign_dispatch above
+<span class="lineNum"> 1012 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 1013 </span> : void
+<span class="lineNum"> 1014 </span> : _M_assign_aux(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 1015 </span> : std::forward_iterator_tag);
+<span class="lineNum"> 1016 </span> :
+<span class="lineNum"> 1017 </span> : // Called by assign(n,t), and the range assign when it turns out
+<span class="lineNum"> 1018 </span> : // to be the same thing.
+<span class="lineNum"> 1019 </span> : void
+<span class="lineNum"> 1020 </span> : _M_fill_assign(size_type __n, const value_type&amp; __val);
+<span class="lineNum"> 1021 </span> :
+<span class="lineNum"> 1022 </span> :
+<span class="lineNum"> 1023 </span> : // Internal insert functions follow.
+<span class="lineNum"> 1024 </span> :
+<span class="lineNum"> 1025 </span> : // Called by the range insert to implement [23.1.1]/9
+<span class="lineNum"> 1026 </span> :
+<span class="lineNum"> 1027 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 1028 </span> : // 438. Ambiguity in the &quot;do the right thing&quot; clause
+<span class="lineNum"> 1029 </span> : template&lt;typename _Integer&gt;
+<span class="lineNum"> 1030 </span> : void
+<span class="lineNum"> 1031 </span> : _M_insert_dispatch(iterator __pos, _Integer __n, _Integer __val,
+<span class="lineNum"> 1032 </span> : __true_type)
+<span class="lineNum"> 1033 </span> : { _M_fill_insert(__pos, __n, __val); }
+<span class="lineNum"> 1034 </span> :
+<span class="lineNum"> 1035 </span> : // Called by the range insert to implement [23.1.1]/9
+<span class="lineNum"> 1036 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 1037 </span> : void
+<span class="lineNum"> 1038 </span> : _M_insert_dispatch(iterator __pos, _InputIterator __first,
+<span class="lineNum"> 1039 </span> : _InputIterator __last, __false_type)
+<span class="lineNum"> 1040 </span> : {
+<span class="lineNum"> 1041 </span> : typedef typename std::iterator_traits&lt;_InputIterator&gt;::
+<span class="lineNum"> 1042 </span> : iterator_category _IterCategory;
+<span class="lineNum"> 1043 </span> : _M_range_insert(__pos, __first, __last, _IterCategory());
+<span class="lineNum"> 1044 </span> : }
+<span class="lineNum"> 1045 </span> :
+<span class="lineNum"> 1046 </span> : // Called by the second insert_dispatch above
+<span class="lineNum"> 1047 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 1048 </span> : void
+<span class="lineNum"> 1049 </span> : _M_range_insert(iterator __pos, _InputIterator __first,
+<span class="lineNum"> 1050 </span> : _InputIterator __last, std::input_iterator_tag);
+<span class="lineNum"> 1051 </span> :
+<span class="lineNum"> 1052 </span> : // Called by the second insert_dispatch above
+<span class="lineNum"> 1053 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 1054 </span> : void
+<span class="lineNum"> 1055 </span> : _M_range_insert(iterator __pos, _ForwardIterator __first,
+<span class="lineNum"> 1056 </span> : _ForwardIterator __last, std::forward_iterator_tag);
+<span class="lineNum"> 1057 </span> :
+<span class="lineNum"> 1058 </span> : // Called by insert(p,n,x), and the range insert when it turns out to be
+<span class="lineNum"> 1059 </span> : // the same thing.
+<span class="lineNum"> 1060 </span> : void
+<span class="lineNum"> 1061 </span> : _M_fill_insert(iterator __pos, size_type __n, const value_type&amp; __x);
+<span class="lineNum"> 1062 </span> :
+<span class="lineNum"> 1063 </span> : // Called by insert(p,x)
+<span class="lineNum"> 1064 </span> : #ifndef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 1065 </span> : void
+<span class="lineNum"> 1066 </span> : _M_insert_aux(iterator __position, const value_type&amp; __x);
+<span class="lineNum"> 1067 </span> : #else
+<span class="lineNum"> 1068 </span> : template&lt;typename... _Args&gt;
+<span class="lineNum"> 1069 </span> : void
+<span class="lineNum"> 1070 </span> : _M_insert_aux(iterator __position, _Args&amp;&amp;... __args);
+<span class="lineNum"> 1071 </span> : #endif
+<span class="lineNum"> 1072 </span> :
+<span class="lineNum"> 1073 </span> : // Called by the latter.
+<span class="lineNum"> 1074 </span> : size_type
+<span class="lineNum"> 1075 </span><span class="lineCov"> 20708 : _M_check_len(size_type __n, const char* __s) const</span>
+<span class="lineNum"> 1076 </span> : {
+<span class="lineNum"> 1077 </span><span class="lineCov"> 20708 : if (max_size() - size() &lt; __n)</span>
+<span class="lineNum"> 1078 </span><span class="lineNoCov"> 0 : __throw_length_error(__N(__s));</span>
+<span class="lineNum"> 1079 </span> :
+<span class="lineNum"> 1080 </span><span class="lineCov"> 20708 : const size_type __len = size() + std::max(size(), __n);</span>
+<span class="lineNum"> 1081 </span><span class="lineCov"> 20708 : return (__len &lt; size() || __len &gt; max_size()) ? max_size() : __len;</span>
+<span class="lineNum"> 1082 </span> : }
+<span class="lineNum"> 1083 </span> :
+<span class="lineNum"> 1084 </span> : // Internal erase functions follow.
+<span class="lineNum"> 1085 </span> :
+<span class="lineNum"> 1086 </span> : // Called by erase(q1,q2), clear(), resize(), _M_fill_assign,
+<span class="lineNum"> 1087 </span> : // _M_assign_aux.
+<span class="lineNum"> 1088 </span> : void
+<span class="lineNum"> 1089 </span><span class="lineCov"> 7856 : _M_erase_at_end(pointer __pos)</span>
+<span class="lineNum"> 1090 </span> : {
+<span class="lineNum"> 1091 </span><span class="lineCov"> 7856 : std::_Destroy(__pos, this-&gt;_M_impl._M_finish, _M_get_Tp_allocator());</span>
+<span class="lineNum"> 1092 </span><span class="lineCov"> 7856 : this-&gt;_M_impl._M_finish = __pos;</span>
+<span class="lineNum"> 1093 </span><span class="lineCov"> 7856 : }</span>
+<span class="lineNum"> 1094 </span> : };
+<span class="lineNum"> 1095 </span> :
+<span class="lineNum"> 1096 </span> :
+<span class="lineNum"> 1097 </span> : /**
+<span class="lineNum"> 1098 </span> : * @brief Vector equality comparison.
+<span class="lineNum"> 1099 </span> : * @param x A %vector.
+<span class="lineNum"> 1100 </span> : * @param y A %vector of the same type as @a x.
+<span class="lineNum"> 1101 </span> : * @return True iff the size and elements of the vectors are equal.
+<span class="lineNum"> 1102 </span> : *
+<span class="lineNum"> 1103 </span> : * This is an equivalence relation. It is linear in the size of the
+<span class="lineNum"> 1104 </span> : * vectors. Vectors are considered equivalent if their sizes are equal,
+<span class="lineNum"> 1105 </span> : * and if corresponding elements compare equal.
+<span class="lineNum"> 1106 </span> : */
+<span class="lineNum"> 1107 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1108 </span> : inline bool
+<span class="lineNum"> 1109 </span> : operator==(const vector&lt;_Tp, _Alloc&gt;&amp; __x, const vector&lt;_Tp, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 1110 </span> : { return (__x.size() == __y.size()
+<span class="lineNum"> 1111 </span> : &amp;&amp; std::equal(__x.begin(), __x.end(), __y.begin())); }
+<span class="lineNum"> 1112 </span> :
+<span class="lineNum"> 1113 </span> : /**
+<span class="lineNum"> 1114 </span> : * @brief Vector ordering relation.
+<span class="lineNum"> 1115 </span> : * @param x A %vector.
+<span class="lineNum"> 1116 </span> : * @param y A %vector of the same type as @a x.
+<span class="lineNum"> 1117 </span> : * @return True iff @a x is lexicographically less than @a y.
+<span class="lineNum"> 1118 </span> : *
+<span class="lineNum"> 1119 </span> : * This is a total ordering relation. It is linear in the size of the
+<span class="lineNum"> 1120 </span> : * vectors. The elements must be comparable with @c &lt;.
+<span class="lineNum"> 1121 </span> : *
+<span class="lineNum"> 1122 </span> : * See std::lexicographical_compare() for how the determination is made.
+<span class="lineNum"> 1123 </span> : */
+<span class="lineNum"> 1124 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1125 </span> : inline bool
+<span class="lineNum"> 1126 </span> : operator&lt;(const vector&lt;_Tp, _Alloc&gt;&amp; __x, const vector&lt;_Tp, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 1127 </span> : { return std::lexicographical_compare(__x.begin(), __x.end(),
+<span class="lineNum"> 1128 </span> : __y.begin(), __y.end()); }
+<span class="lineNum"> 1129 </span> :
+<span class="lineNum"> 1130 </span> : /// Based on operator==
+<span class="lineNum"> 1131 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1132 </span> : inline bool
+<span class="lineNum"> 1133 </span> : operator!=(const vector&lt;_Tp, _Alloc&gt;&amp; __x, const vector&lt;_Tp, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 1134 </span> : { return !(__x == __y); }
+<span class="lineNum"> 1135 </span> :
+<span class="lineNum"> 1136 </span> : /// Based on operator&lt;
+<span class="lineNum"> 1137 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1138 </span> : inline bool
+<span class="lineNum"> 1139 </span> : operator&gt;(const vector&lt;_Tp, _Alloc&gt;&amp; __x, const vector&lt;_Tp, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 1140 </span> : { return __y &lt; __x; }
+<span class="lineNum"> 1141 </span> :
+<span class="lineNum"> 1142 </span> : /// Based on operator&lt;
+<span class="lineNum"> 1143 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1144 </span> : inline bool
+<span class="lineNum"> 1145 </span> : operator&lt;=(const vector&lt;_Tp, _Alloc&gt;&amp; __x, const vector&lt;_Tp, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 1146 </span> : { return !(__y &lt; __x); }
+<span class="lineNum"> 1147 </span> :
+<span class="lineNum"> 1148 </span> : /// Based on operator&lt;
+<span class="lineNum"> 1149 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1150 </span> : inline bool
+<span class="lineNum"> 1151 </span> : operator&gt;=(const vector&lt;_Tp, _Alloc&gt;&amp; __x, const vector&lt;_Tp, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 1152 </span> : { return !(__x &lt; __y); }
+<span class="lineNum"> 1153 </span> :
+<span class="lineNum"> 1154 </span> : /// See std::vector::swap().
+<span class="lineNum"> 1155 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1156 </span> : inline void
+<span class="lineNum"> 1157 </span> : swap(vector&lt;_Tp, _Alloc&gt;&amp; __x, vector&lt;_Tp, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 1158 </span> : { __x.swap(__y); }
+<span class="lineNum"> 1159 </span> :
+<span class="lineNum"> 1160 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 1161 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1162 </span> : inline void
+<span class="lineNum"> 1163 </span> : swap(vector&lt;_Tp, _Alloc&gt;&amp;&amp; __x, vector&lt;_Tp, _Alloc&gt;&amp; __y)
+<span class="lineNum"> 1164 </span> : { __x.swap(__y); }
+<span class="lineNum"> 1165 </span> :
+<span class="lineNum"> 1166 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 1167 </span> : inline void
+<span class="lineNum"> 1168 </span> : swap(vector&lt;_Tp, _Alloc&gt;&amp; __x, vector&lt;_Tp, _Alloc&gt;&amp;&amp; __y)
+<span class="lineNum"> 1169 </span> : { __x.swap(__y); }
+<span class="lineNum"> 1170 </span> : #endif
+<span class="lineNum"> 1171 </span> :
+<span class="lineNum"> 1172 </span> : _GLIBCXX_END_NESTED_NAMESPACE
+<span class="lineNum"> 1173 </span> :
+<span class="lineNum"> 1174 </span> : #endif /* _STL_VECTOR_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/stream_iterator.h.gcov.html b/rep/usr/include/c++/4.3/bits/stream_iterator.h.gcov.html
new file mode 100644
index 0000000..e74322d
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/stream_iterator.h.gcov.html
@@ -0,0 +1,283 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/stream_iterator.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - stream_iterator.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">33</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">33</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Stream iterators
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2004, 2005 Free Software Foundation, Inc.
+<span class="lineNum"> 4 </span> : //
+<span class="lineNum"> 5 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 6 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 7 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 8 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 9 </span> : // any later version.
+<span class="lineNum"> 10 </span> :
+<span class="lineNum"> 11 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 12 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 13 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 14 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 15 </span> :
+<span class="lineNum"> 16 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 17 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 18 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 19 </span> : // USA.
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 22 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 23 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 24 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 25 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 26 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 27 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 28 </span> : // the GNU General Public License.
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : /** @file stream_iterator.h
+<span class="lineNum"> 31 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 32 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 33 </span> : */
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : #ifndef _STREAM_ITERATOR_H
+<span class="lineNum"> 36 </span> : #define _STREAM_ITERATOR_H 1
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : #pragma GCC system_header
+<span class="lineNum"> 39 </span> :
+<span class="lineNum"> 40 </span> : #include &lt;debug/debug.h&gt;
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span> : /// Provides input iterator semantics for streams.
+<span class="lineNum"> 45 </span> : template&lt;typename _Tp, typename _CharT = char,
+<span class="lineNum"> 46 </span> : typename _Traits = char_traits&lt;_CharT&gt;, typename _Dist = ptrdiff_t&gt;
+<span class="lineNum"> 47 </span> : class istream_iterator
+<span class="lineNum"> 48 </span> : : public iterator&lt;input_iterator_tag, _Tp, _Dist, const _Tp*, const _Tp&amp;&gt;
+<span class="lineNum"> 49 </span><span class="lineCov"> 32 : {</span>
+<span class="lineNum"> 50 </span> : public:
+<span class="lineNum"> 51 </span> : typedef _CharT char_type;
+<span class="lineNum"> 52 </span> : typedef _Traits traits_type;
+<span class="lineNum"> 53 </span> : typedef basic_istream&lt;_CharT, _Traits&gt; istream_type;
+<span class="lineNum"> 54 </span> :
+<span class="lineNum"> 55 </span> : private:
+<span class="lineNum"> 56 </span> : istream_type* _M_stream;
+<span class="lineNum"> 57 </span> : _Tp _M_value;
+<span class="lineNum"> 58 </span> : bool _M_ok;
+<span class="lineNum"> 59 </span> :
+<span class="lineNum"> 60 </span> : public:
+<span class="lineNum"> 61 </span> : /// Construct end of input stream iterator.
+<span class="lineNum"> 62 </span><span class="lineCov"> 16 : istream_iterator()</span>
+<span class="lineNum"> 63 </span><span class="lineCov"> 16 : : _M_stream(0), _M_value(), _M_ok(false) {}</span>
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : /// Construct start of input stream iterator.
+<span class="lineNum"> 66 </span><span class="lineCov"> 16 : istream_iterator(istream_type&amp; __s)</span>
+<span class="lineNum"> 67 </span><span class="lineCov"> 16 : : _M_stream(&amp;__s)</span>
+<span class="lineNum"> 68 </span><span class="lineCov"> 16 : { _M_read(); }</span>
+<span class="lineNum"> 69 </span> :
+<span class="lineNum"> 70 </span> : istream_iterator(const istream_iterator&amp; __obj)
+<span class="lineNum"> 71 </span> : : _M_stream(__obj._M_stream), _M_value(__obj._M_value),
+<span class="lineNum"> 72 </span> : _M_ok(__obj._M_ok)
+<span class="lineNum"> 73 </span> : { }
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span> : const _Tp&amp;
+<span class="lineNum"> 76 </span><span class="lineCov"> 112 : operator*() const</span>
+<span class="lineNum"> 77 </span> : {
+<span class="lineNum"> 78 </span> : __glibcxx_requires_cond(_M_ok,
+<span class="lineNum"> 79 </span> : _M_message(__gnu_debug::__msg_deref_istream)
+<span class="lineNum"> 80 </span> : ._M_iterator(*this));
+<span class="lineNum"> 81 </span><span class="lineCov"> 112 : return _M_value;</span>
+<span class="lineNum"> 82 </span> : }
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span> : const _Tp*
+<span class="lineNum"> 85 </span> : operator-&gt;() const { return &amp;(operator*()); }
+<span class="lineNum"> 86 </span> :
+<span class="lineNum"> 87 </span> : istream_iterator&amp;
+<span class="lineNum"> 88 </span><span class="lineCov"> 64 : operator++()</span>
+<span class="lineNum"> 89 </span> : {
+<span class="lineNum"> 90 </span> : __glibcxx_requires_cond(_M_ok,
+<span class="lineNum"> 91 </span> : _M_message(__gnu_debug::__msg_inc_istream)
+<span class="lineNum"> 92 </span> : ._M_iterator(*this));
+<span class="lineNum"> 93 </span><span class="lineCov"> 64 : _M_read();</span>
+<span class="lineNum"> 94 </span><span class="lineCov"> 64 : return *this;</span>
+<span class="lineNum"> 95 </span> : }
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span> : istream_iterator
+<span class="lineNum"> 98 </span> : operator++(int)
+<span class="lineNum"> 99 </span> : {
+<span class="lineNum"> 100 </span> : __glibcxx_requires_cond(_M_ok,
+<span class="lineNum"> 101 </span> : _M_message(__gnu_debug::__msg_inc_istream)
+<span class="lineNum"> 102 </span> : ._M_iterator(*this));
+<span class="lineNum"> 103 </span> : istream_iterator __tmp = *this;
+<span class="lineNum"> 104 </span> : _M_read();
+<span class="lineNum"> 105 </span> : return __tmp;
+<span class="lineNum"> 106 </span> : }
+<span class="lineNum"> 107 </span> :
+<span class="lineNum"> 108 </span> : bool
+<span class="lineNum"> 109 </span><span class="lineCov"> 80 : _M_equal(const istream_iterator&amp; __x) const</span>
+<span class="lineNum"> 110 </span><span class="lineCov"> 80 : { return (_M_ok == __x._M_ok) &amp;&amp; (!_M_ok || _M_stream == __x._M_stream); }</span>
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span> : private:
+<span class="lineNum"> 113 </span> : void
+<span class="lineNum"> 114 </span><span class="lineCov"> 80 : _M_read()</span>
+<span class="lineNum"> 115 </span> : {
+<span class="lineNum"> 116 </span><span class="lineCov"> 80 : _M_ok = (_M_stream &amp;&amp; *_M_stream) ? true : false;</span>
+<span class="lineNum"> 117 </span><span class="lineCov"> 80 : if (_M_ok)</span>
+<span class="lineNum"> 118 </span> : {
+<span class="lineNum"> 119 </span><span class="lineCov"> 80 : *_M_stream &gt;&gt; _M_value;</span>
+<span class="lineNum"> 120 </span><span class="lineCov"> 80 : _M_ok = *_M_stream ? true : false;</span>
+<span class="lineNum"> 121 </span> : }
+<span class="lineNum"> 122 </span><span class="lineCov"> 80 : }</span>
+<span class="lineNum"> 123 </span> : };
+<span class="lineNum"> 124 </span> :
+<span class="lineNum"> 125 </span> : /// Return true if x and y are both end or not end, or x and y are the same.
+<span class="lineNum"> 126 </span> : template&lt;typename _Tp, typename _CharT, typename _Traits, typename _Dist&gt;
+<span class="lineNum"> 127 </span> : inline bool
+<span class="lineNum"> 128 </span> : operator==(const istream_iterator&lt;_Tp, _CharT, _Traits, _Dist&gt;&amp; __x,
+<span class="lineNum"> 129 </span> : const istream_iterator&lt;_Tp, _CharT, _Traits, _Dist&gt;&amp; __y)
+<span class="lineNum"> 130 </span> : { return __x._M_equal(__y); }
+<span class="lineNum"> 131 </span> :
+<span class="lineNum"> 132 </span> : /// Return false if x and y are both end or not end, or x and y are the same.
+<span class="lineNum"> 133 </span> : template &lt;class _Tp, class _CharT, class _Traits, class _Dist&gt;
+<span class="lineNum"> 134 </span> : inline bool
+<span class="lineNum"> 135 </span> : operator!=(const istream_iterator&lt;_Tp, _CharT, _Traits, _Dist&gt;&amp; __x,
+<span class="lineNum"> 136 </span><span class="lineCov"> 80 : const istream_iterator&lt;_Tp, _CharT, _Traits, _Dist&gt;&amp; __y)</span>
+<span class="lineNum"> 137 </span><span class="lineCov"> 80 : { return !__x._M_equal(__y); }</span>
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> : /**
+<span class="lineNum"> 140 </span> : * @brief Provides output iterator semantics for streams.
+<span class="lineNum"> 141 </span> : *
+<span class="lineNum"> 142 </span> : * This class provides an iterator to write to an ostream. The type Tp is
+<span class="lineNum"> 143 </span> : * the only type written by this iterator and there must be an
+<span class="lineNum"> 144 </span> : * operator&lt;&lt;(Tp) defined.
+<span class="lineNum"> 145 </span> : *
+<span class="lineNum"> 146 </span> : * @param Tp The type to write to the ostream.
+<span class="lineNum"> 147 </span> : * @param CharT The ostream char_type.
+<span class="lineNum"> 148 </span> : * @param Traits The ostream char_traits.
+<span class="lineNum"> 149 </span> : */
+<span class="lineNum"> 150 </span> : template&lt;typename _Tp, typename _CharT = char,
+<span class="lineNum"> 151 </span> : typename _Traits = char_traits&lt;_CharT&gt; &gt;
+<span class="lineNum"> 152 </span> : class ostream_iterator
+<span class="lineNum"> 153 </span> : : public iterator&lt;output_iterator_tag, void, void, void, void&gt;
+<span class="lineNum"> 154 </span> : {
+<span class="lineNum"> 155 </span> : public:
+<span class="lineNum"> 156 </span> : //@{
+<span class="lineNum"> 157 </span> : /// Public typedef
+<span class="lineNum"> 158 </span> : typedef _CharT char_type;
+<span class="lineNum"> 159 </span> : typedef _Traits traits_type;
+<span class="lineNum"> 160 </span> : typedef basic_ostream&lt;_CharT, _Traits&gt; ostream_type;
+<span class="lineNum"> 161 </span> : //@}
+<span class="lineNum"> 162 </span> :
+<span class="lineNum"> 163 </span> : private:
+<span class="lineNum"> 164 </span> : ostream_type* _M_stream;
+<span class="lineNum"> 165 </span> : const _CharT* _M_string;
+<span class="lineNum"> 166 </span> :
+<span class="lineNum"> 167 </span> : public:
+<span class="lineNum"> 168 </span> : /// Construct from an ostream.
+<span class="lineNum"> 169 </span> : ostream_iterator(ostream_type&amp; __s) : _M_stream(&amp;__s), _M_string(0) {}
+<span class="lineNum"> 170 </span> :
+<span class="lineNum"> 171 </span> : /**
+<span class="lineNum"> 172 </span> : * Construct from an ostream.
+<span class="lineNum"> 173 </span> : *
+<span class="lineNum"> 174 </span> : * The delimiter string @a c is written to the stream after every Tp
+<span class="lineNum"> 175 </span> : * written to the stream. The delimiter is not copied, and thus must
+<span class="lineNum"> 176 </span> : * not be destroyed while this iterator is in use.
+<span class="lineNum"> 177 </span> : *
+<span class="lineNum"> 178 </span> : * @param s Underlying ostream to write to.
+<span class="lineNum"> 179 </span> : * @param c CharT delimiter string to insert.
+<span class="lineNum"> 180 </span> : */
+<span class="lineNum"> 181 </span><span class="lineCov"> 5 : ostream_iterator(ostream_type&amp; __s, const _CharT* __c)</span>
+<span class="lineNum"> 182 </span><span class="lineCov"> 5 : : _M_stream(&amp;__s), _M_string(__c) { }</span>
+<span class="lineNum"> 183 </span> :
+<span class="lineNum"> 184 </span> : /// Copy constructor.
+<span class="lineNum"> 185 </span><span class="lineCov"> 25 : ostream_iterator(const ostream_iterator&amp; __obj)</span>
+<span class="lineNum"> 186 </span><span class="lineCov"> 25 : : _M_stream(__obj._M_stream), _M_string(__obj._M_string) { }</span>
+<span class="lineNum"> 187 </span> :
+<span class="lineNum"> 188 </span> : /// Writes @a value to underlying ostream using operator&lt;&lt;. If
+<span class="lineNum"> 189 </span> : /// constructed with delimiter string, writes delimiter to ostream.
+<span class="lineNum"> 190 </span> : ostream_iterator&amp;
+<span class="lineNum"> 191 </span><span class="lineCov"> 8 : operator=(const _Tp&amp; __value)</span>
+<span class="lineNum"> 192 </span> : {
+<span class="lineNum"> 193 </span> : __glibcxx_requires_cond(_M_stream != 0,
+<span class="lineNum"> 194 </span> : _M_message(__gnu_debug::__msg_output_ostream)
+<span class="lineNum"> 195 </span> : ._M_iterator(*this));
+<span class="lineNum"> 196 </span><span class="lineCov"> 8 : *_M_stream &lt;&lt; __value;</span>
+<span class="lineNum"> 197 </span><span class="lineCov"> 8 : if (_M_string) *_M_stream &lt;&lt; _M_string;</span>
+<span class="lineNum"> 198 </span><span class="lineCov"> 8 : return *this;</span>
+<span class="lineNum"> 199 </span> : }
+<span class="lineNum"> 200 </span> :
+<span class="lineNum"> 201 </span> : ostream_iterator&amp;
+<span class="lineNum"> 202 </span><span class="lineCov"> 8 : operator*()</span>
+<span class="lineNum"> 203 </span><span class="lineCov"> 8 : { return *this; }</span>
+<span class="lineNum"> 204 </span> :
+<span class="lineNum"> 205 </span> : ostream_iterator&amp;
+<span class="lineNum"> 206 </span><span class="lineCov"> 8 : operator++()</span>
+<span class="lineNum"> 207 </span><span class="lineCov"> 8 : { return *this; }</span>
+<span class="lineNum"> 208 </span> :
+<span class="lineNum"> 209 </span> : ostream_iterator&amp;
+<span class="lineNum"> 210 </span> : operator++(int)
+<span class="lineNum"> 211 </span> : { return *this; }
+<span class="lineNum"> 212 </span> : };
+<span class="lineNum"> 213 </span> :
+<span class="lineNum"> 214 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 215 </span> :
+<span class="lineNum"> 216 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/bits/vector.tcc.gcov.html b/rep/usr/include/c++/4.3/bits/vector.tcc.gcov.html
new file mode 100644
index 0000000..e0268a8
--- /dev/null
+++ b/rep/usr/include/c++/4.3/bits/vector.tcc.gcov.html
@@ -0,0 +1,723 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/bits/vector.tcc</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/bits</a> - vector.tcc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">96</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">75.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">72</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Vector implementation (out of line) -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 18 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 19 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 20 </span> : // USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /*
+<span class="lineNum"> 32 </span> : *
+<span class="lineNum"> 33 </span> : * Copyright (c) 1994
+<span class="lineNum"> 34 </span> : * Hewlett-Packard Company
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 37 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 38 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 39 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 40 </span> : * in supporting documentation. Hewlett-Packard Company makes no
+<span class="lineNum"> 41 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 42 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 43 </span> : *
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * Copyright (c) 1996
+<span class="lineNum"> 46 </span> : * Silicon Graphics Computer Systems, Inc.
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * Permission to use, copy, modify, distribute and sell this software
+<span class="lineNum"> 49 </span> : * and its documentation for any purpose is hereby granted without fee,
+<span class="lineNum"> 50 </span> : * provided that the above copyright notice appear in all copies and
+<span class="lineNum"> 51 </span> : * that both that copyright notice and this permission notice appear
+<span class="lineNum"> 52 </span> : * in supporting documentation. Silicon Graphics makes no
+<span class="lineNum"> 53 </span> : * representations about the suitability of this software for any
+<span class="lineNum"> 54 </span> : * purpose. It is provided &quot;as is&quot; without express or implied warranty.
+<span class="lineNum"> 55 </span> : */
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /** @file vector.tcc
+<span class="lineNum"> 58 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 59 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 60 </span> : */
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : #ifndef _VECTOR_TCC
+<span class="lineNum"> 63 </span> : #define _VECTOR_TCC 1
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 68 </span> : void
+<span class="lineNum"> 69 </span> : vector&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 70 </span><span class="lineCov"> 10 : reserve(size_type __n)</span>
+<span class="lineNum"> 71 </span> : {
+<span class="lineNum"> 72 </span><span class="lineCov"> 10 : if (__n &gt; this-&gt;max_size())</span>
+<span class="lineNum"> 73 </span><span class="lineNoCov"> 0 : __throw_length_error(__N(&quot;vector::reserve&quot;));</span>
+<span class="lineNum"> 74 </span><span class="lineCov"> 10 : if (this-&gt;capacity() &lt; __n)</span>
+<span class="lineNum"> 75 </span> : {
+<span class="lineNum"> 76 </span><span class="lineCov"> 10 : const size_type __old_size = size();</span>
+<span class="lineNum"> 77 </span> : pointer __tmp = _M_allocate_and_copy(__n,
+<span class="lineNum"> 78 </span> : _GLIBCXX_MAKE_MOVE_ITERATOR(this-&gt;_M_impl._M_start),
+<span class="lineNum"> 79 </span><span class="lineCov"> 10 : _GLIBCXX_MAKE_MOVE_ITERATOR(this-&gt;_M_impl._M_finish));</span>
+<span class="lineNum"> 80 </span><span class="lineCov"> 10 : std::_Destroy(this-&gt;_M_impl._M_start, this-&gt;_M_impl._M_finish,</span>
+<span class="lineNum"> 81 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 82 </span><span class="lineCov"> 10 : _M_deallocate(this-&gt;_M_impl._M_start,</span>
+<span class="lineNum"> 83 </span> : this-&gt;_M_impl._M_end_of_storage
+<span class="lineNum"> 84 </span> : - this-&gt;_M_impl._M_start);
+<span class="lineNum"> 85 </span><span class="lineCov"> 10 : this-&gt;_M_impl._M_start = __tmp;</span>
+<span class="lineNum"> 86 </span><span class="lineCov"> 10 : this-&gt;_M_impl._M_finish = __tmp + __old_size;</span>
+<span class="lineNum"> 87 </span><span class="lineCov"> 10 : this-&gt;_M_impl._M_end_of_storage = this-&gt;_M_impl._M_start + __n;</span>
+<span class="lineNum"> 88 </span> : }
+<span class="lineNum"> 89 </span><span class="lineCov"> 10 : }</span>
+<span class="lineNum"> 90 </span> :
+<span class="lineNum"> 91 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 92 </span> : typename vector&lt;_Tp, _Alloc&gt;::iterator
+<span class="lineNum"> 93 </span> : vector&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 94 </span><span class="lineCov"> 19 : insert(iterator __position, const value_type&amp; __x)</span>
+<span class="lineNum"> 95 </span> : {
+<span class="lineNum"> 96 </span><span class="lineCov"> 19 : const size_type __n = __position - begin();</span>
+<span class="lineNum"> 97 </span><span class="lineCov"> 19 : if (this-&gt;_M_impl._M_finish != this-&gt;_M_impl._M_end_of_storage</span>
+<span class="lineNum"> 98 </span> : &amp;&amp; __position == end())
+<span class="lineNum"> 99 </span> : {
+<span class="lineNum"> 100 </span><span class="lineNoCov"> 0 : this-&gt;_M_impl.construct(this-&gt;_M_impl._M_finish, __x);</span>
+<span class="lineNum"> 101 </span><span class="lineNoCov"> 0 : ++this-&gt;_M_impl._M_finish;</span>
+<span class="lineNum"> 102 </span> : }
+<span class="lineNum"> 103 </span> : else
+<span class="lineNum"> 104 </span> : {
+<span class="lineNum"> 105 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 106 </span> : if (this-&gt;_M_impl._M_finish != this-&gt;_M_impl._M_end_of_storage)
+<span class="lineNum"> 107 </span> : {
+<span class="lineNum"> 108 </span> : _Tp __x_copy = __x;
+<span class="lineNum"> 109 </span> : _M_insert_aux(__position, std::move(__x_copy));
+<span class="lineNum"> 110 </span> : }
+<span class="lineNum"> 111 </span> : else
+<span class="lineNum"> 112 </span> : #endif
+<span class="lineNum"> 113 </span><span class="lineCov"> 19 : _M_insert_aux(__position, __x);</span>
+<span class="lineNum"> 114 </span> : }
+<span class="lineNum"> 115 </span><span class="lineCov"> 19 : return iterator(this-&gt;_M_impl._M_start + __n);</span>
+<span class="lineNum"> 116 </span> : }
+<span class="lineNum"> 117 </span> :
+<span class="lineNum"> 118 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 119 </span> : typename vector&lt;_Tp, _Alloc&gt;::iterator
+<span class="lineNum"> 120 </span> : vector&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 121 </span><span class="lineCov"> 2 : erase(iterator __position)</span>
+<span class="lineNum"> 122 </span> : {
+<span class="lineNum"> 123 </span><span class="lineCov"> 2 : if (__position + 1 != end())</span>
+<span class="lineNum"> 124 </span><span class="lineNoCov"> 0 : _GLIBCXX_MOVE3(__position + 1, end(), __position);</span>
+<span class="lineNum"> 125 </span><span class="lineCov"> 2 : --this-&gt;_M_impl._M_finish;</span>
+<span class="lineNum"> 126 </span><span class="lineCov"> 2 : this-&gt;_M_impl.destroy(this-&gt;_M_impl._M_finish);</span>
+<span class="lineNum"> 127 </span><span class="lineCov"> 2 : return __position;</span>
+<span class="lineNum"> 128 </span> : }
+<span class="lineNum"> 129 </span> :
+<span class="lineNum"> 130 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 131 </span> : typename vector&lt;_Tp, _Alloc&gt;::iterator
+<span class="lineNum"> 132 </span> : vector&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 133 </span> : erase(iterator __first, iterator __last)
+<span class="lineNum"> 134 </span> : {
+<span class="lineNum"> 135 </span> : if (__last != end())
+<span class="lineNum"> 136 </span> : _GLIBCXX_MOVE3(__last, end(), __first);
+<span class="lineNum"> 137 </span> : _M_erase_at_end(__first.base() + (end() - __last));
+<span class="lineNum"> 138 </span> : return __first;
+<span class="lineNum"> 139 </span> : }
+<span class="lineNum"> 140 </span> :
+<span class="lineNum"> 141 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 142 </span> : vector&lt;_Tp, _Alloc&gt;&amp;
+<span class="lineNum"> 143 </span> : vector&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 144 </span> : operator=(const vector&lt;_Tp, _Alloc&gt;&amp; __x)
+<span class="lineNum"> 145 </span> : {
+<span class="lineNum"> 146 </span> : if (&amp;__x != this)
+<span class="lineNum"> 147 </span> : {
+<span class="lineNum"> 148 </span> : const size_type __xlen = __x.size();
+<span class="lineNum"> 149 </span> : if (__xlen &gt; capacity())
+<span class="lineNum"> 150 </span> : {
+<span class="lineNum"> 151 </span> : pointer __tmp = _M_allocate_and_copy(__xlen, __x.begin(),
+<span class="lineNum"> 152 </span> : __x.end());
+<span class="lineNum"> 153 </span> : std::_Destroy(this-&gt;_M_impl._M_start, this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 154 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 155 </span> : _M_deallocate(this-&gt;_M_impl._M_start,
+<span class="lineNum"> 156 </span> : this-&gt;_M_impl._M_end_of_storage
+<span class="lineNum"> 157 </span> : - this-&gt;_M_impl._M_start);
+<span class="lineNum"> 158 </span> : this-&gt;_M_impl._M_start = __tmp;
+<span class="lineNum"> 159 </span> : this-&gt;_M_impl._M_end_of_storage = this-&gt;_M_impl._M_start + __xlen;
+<span class="lineNum"> 160 </span> : }
+<span class="lineNum"> 161 </span> : else if (size() &gt;= __xlen)
+<span class="lineNum"> 162 </span> : {
+<span class="lineNum"> 163 </span> : std::_Destroy(std::copy(__x.begin(), __x.end(), begin()),
+<span class="lineNum"> 164 </span> : end(), _M_get_Tp_allocator());
+<span class="lineNum"> 165 </span> : }
+<span class="lineNum"> 166 </span> : else
+<span class="lineNum"> 167 </span> : {
+<span class="lineNum"> 168 </span> : std::copy(__x._M_impl._M_start, __x._M_impl._M_start + size(),
+<span class="lineNum"> 169 </span> : this-&gt;_M_impl._M_start);
+<span class="lineNum"> 170 </span> : std::__uninitialized_copy_a(__x._M_impl._M_start + size(),
+<span class="lineNum"> 171 </span> : __x._M_impl._M_finish,
+<span class="lineNum"> 172 </span> : this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 173 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 174 </span> : }
+<span class="lineNum"> 175 </span> : this-&gt;_M_impl._M_finish = this-&gt;_M_impl._M_start + __xlen;
+<span class="lineNum"> 176 </span> : }
+<span class="lineNum"> 177 </span> : return *this;
+<span class="lineNum"> 178 </span> : }
+<span class="lineNum"> 179 </span> :
+<span class="lineNum"> 180 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 181 </span> : void
+<span class="lineNum"> 182 </span> : vector&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 183 </span> : _M_fill_assign(size_t __n, const value_type&amp; __val)
+<span class="lineNum"> 184 </span> : {
+<span class="lineNum"> 185 </span> : if (__n &gt; capacity())
+<span class="lineNum"> 186 </span> : {
+<span class="lineNum"> 187 </span> : vector __tmp(__n, __val, _M_get_Tp_allocator());
+<span class="lineNum"> 188 </span> : __tmp.swap(*this);
+<span class="lineNum"> 189 </span> : }
+<span class="lineNum"> 190 </span> : else if (__n &gt; size())
+<span class="lineNum"> 191 </span> : {
+<span class="lineNum"> 192 </span> : std::fill(begin(), end(), __val);
+<span class="lineNum"> 193 </span> : std::__uninitialized_fill_n_a(this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 194 </span> : __n - size(), __val,
+<span class="lineNum"> 195 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 196 </span> : this-&gt;_M_impl._M_finish += __n - size();
+<span class="lineNum"> 197 </span> : }
+<span class="lineNum"> 198 </span> : else
+<span class="lineNum"> 199 </span> : _M_erase_at_end(std::fill_n(this-&gt;_M_impl._M_start, __n, __val));
+<span class="lineNum"> 200 </span> : }
+<span class="lineNum"> 201 </span> :
+<span class="lineNum"> 202 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 203 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 204 </span> : void
+<span class="lineNum"> 205 </span> : vector&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 206 </span> : _M_assign_aux(_InputIterator __first, _InputIterator __last,
+<span class="lineNum"> 207 </span> : std::input_iterator_tag)
+<span class="lineNum"> 208 </span> : {
+<span class="lineNum"> 209 </span> : pointer __cur(this-&gt;_M_impl._M_start);
+<span class="lineNum"> 210 </span> : for (; __first != __last &amp;&amp; __cur != this-&gt;_M_impl._M_finish;
+<span class="lineNum"> 211 </span> : ++__cur, ++__first)
+<span class="lineNum"> 212 </span> : *__cur = *__first;
+<span class="lineNum"> 213 </span> : if (__first == __last)
+<span class="lineNum"> 214 </span> : _M_erase_at_end(__cur);
+<span class="lineNum"> 215 </span> : else
+<span class="lineNum"> 216 </span> : insert(end(), __first, __last);
+<span class="lineNum"> 217 </span> : }
+<span class="lineNum"> 218 </span> :
+<span class="lineNum"> 219 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 220 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 221 </span> : void
+<span class="lineNum"> 222 </span> : vector&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 223 </span> : _M_assign_aux(_ForwardIterator __first, _ForwardIterator __last,
+<span class="lineNum"> 224 </span> : std::forward_iterator_tag)
+<span class="lineNum"> 225 </span> : {
+<span class="lineNum"> 226 </span> : const size_type __len = std::distance(__first, __last);
+<span class="lineNum"> 227 </span> :
+<span class="lineNum"> 228 </span> : if (__len &gt; capacity())
+<span class="lineNum"> 229 </span> : {
+<span class="lineNum"> 230 </span> : pointer __tmp(_M_allocate_and_copy(__len, __first, __last));
+<span class="lineNum"> 231 </span> : std::_Destroy(this-&gt;_M_impl._M_start, this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 232 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 233 </span> : _M_deallocate(this-&gt;_M_impl._M_start,
+<span class="lineNum"> 234 </span> : this-&gt;_M_impl._M_end_of_storage
+<span class="lineNum"> 235 </span> : - this-&gt;_M_impl._M_start);
+<span class="lineNum"> 236 </span> : this-&gt;_M_impl._M_start = __tmp;
+<span class="lineNum"> 237 </span> : this-&gt;_M_impl._M_finish = this-&gt;_M_impl._M_start + __len;
+<span class="lineNum"> 238 </span> : this-&gt;_M_impl._M_end_of_storage = this-&gt;_M_impl._M_finish;
+<span class="lineNum"> 239 </span> : }
+<span class="lineNum"> 240 </span> : else if (size() &gt;= __len)
+<span class="lineNum"> 241 </span> : _M_erase_at_end(std::copy(__first, __last, this-&gt;_M_impl._M_start));
+<span class="lineNum"> 242 </span> : else
+<span class="lineNum"> 243 </span> : {
+<span class="lineNum"> 244 </span> : _ForwardIterator __mid = __first;
+<span class="lineNum"> 245 </span> : std::advance(__mid, size());
+<span class="lineNum"> 246 </span> : std::copy(__first, __mid, this-&gt;_M_impl._M_start);
+<span class="lineNum"> 247 </span> : this-&gt;_M_impl._M_finish =
+<span class="lineNum"> 248 </span> : std::__uninitialized_copy_a(__mid, __last,
+<span class="lineNum"> 249 </span> : this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 250 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 251 </span> : }
+<span class="lineNum"> 252 </span> : }
+<span class="lineNum"> 253 </span> :
+<span class="lineNum"> 254 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 255 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 256 </span> : template&lt;typename... _Args&gt;
+<span class="lineNum"> 257 </span> : typename vector&lt;_Tp, _Alloc&gt;::iterator
+<span class="lineNum"> 258 </span> : vector&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 259 </span> : emplace(iterator __position, _Args&amp;&amp;... __args)
+<span class="lineNum"> 260 </span> : {
+<span class="lineNum"> 261 </span> : const size_type __n = __position - begin();
+<span class="lineNum"> 262 </span> : if (this-&gt;_M_impl._M_finish != this-&gt;_M_impl._M_end_of_storage
+<span class="lineNum"> 263 </span> : &amp;&amp; __position == end())
+<span class="lineNum"> 264 </span> : {
+<span class="lineNum"> 265 </span> : this-&gt;_M_impl.construct(this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 266 </span> : std::forward&lt;_Args&gt;(__args)...);
+<span class="lineNum"> 267 </span> : ++this-&gt;_M_impl._M_finish;
+<span class="lineNum"> 268 </span> : }
+<span class="lineNum"> 269 </span> : else
+<span class="lineNum"> 270 </span> : _M_insert_aux(__position, std::forward&lt;_Args&gt;(__args)...);
+<span class="lineNum"> 271 </span> : return iterator(this-&gt;_M_impl._M_start + __n);
+<span class="lineNum"> 272 </span> : }
+<span class="lineNum"> 273 </span> :
+<span class="lineNum"> 274 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 275 </span> : template&lt;typename... _Args&gt;
+<span class="lineNum"> 276 </span> : void
+<span class="lineNum"> 277 </span> : vector&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 278 </span> : _M_insert_aux(iterator __position, _Args&amp;&amp;... __args)
+<span class="lineNum"> 279 </span> : #else
+<span class="lineNum"> 280 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 281 </span> : void
+<span class="lineNum"> 282 </span> : vector&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 283 </span><span class="lineCov"> 20651 : _M_insert_aux(iterator __position, const _Tp&amp; __x)</span>
+<span class="lineNum"> 284 </span> : #endif
+<span class="lineNum"> 285 </span> : {
+<span class="lineNum"> 286 </span><span class="lineCov"> 20651 : if (this-&gt;_M_impl._M_finish != this-&gt;_M_impl._M_end_of_storage)</span>
+<span class="lineNum"> 287 </span> : {
+<span class="lineNum"> 288 </span><span class="lineNoCov"> 0 : this-&gt;_M_impl.construct(this-&gt;_M_impl._M_finish,</span>
+<span class="lineNum"> 289 </span> : _GLIBCXX_MOVE(*(this-&gt;_M_impl._M_finish
+<span class="lineNum"> 290 </span> : - 1)));
+<span class="lineNum"> 291 </span><span class="lineNoCov"> 0 : ++this-&gt;_M_impl._M_finish;</span>
+<span class="lineNum"> 292 </span> : #ifndef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 293 </span><span class="lineNoCov"> 0 : _Tp __x_copy = __x;</span>
+<span class="lineNum"> 294 </span> : #endif
+<span class="lineNum"> 295 </span><span class="lineNoCov"> 0 : _GLIBCXX_MOVE_BACKWARD3(__position.base(),</span>
+<span class="lineNum"> 296 </span> : this-&gt;_M_impl._M_finish - 2,
+<span class="lineNum"> 297 </span> : this-&gt;_M_impl._M_finish - 1);
+<span class="lineNum"> 298 </span> : #ifndef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 299 </span><span class="lineNoCov"> 0 : *__position = __x_copy;</span>
+<span class="lineNum"> 300 </span> : #else
+<span class="lineNum"> 301 </span> : *__position = _Tp(std::forward&lt;_Args&gt;(__args)...);
+<span class="lineNum"> 302 </span> : #endif
+<span class="lineNum"> 303 </span> : }
+<span class="lineNum"> 304 </span> : else
+<span class="lineNum"> 305 </span> : {
+<span class="lineNum"> 306 </span> : const size_type __len =
+<span class="lineNum"> 307 </span><span class="lineCov"> 20651 : _M_check_len(size_type(1), &quot;vector::_M_insert_aux&quot;);</span>
+<span class="lineNum"> 308 </span><span class="lineCov"> 20651 : pointer __new_start(this-&gt;_M_allocate(__len));</span>
+<span class="lineNum"> 309 </span><span class="lineCov"> 20651 : pointer __new_finish(__new_start);</span>
+<span class="lineNum"> 310 </span> : try
+<span class="lineNum"> 311 </span> : {
+<span class="lineNum"> 312 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 313 </span> : this-&gt;_M_impl.construct(__new_start + (__position - begin()),
+<span class="lineNum"> 314 </span> : std::forward&lt;_Args&gt;(__args)...);
+<span class="lineNum"> 315 </span> : #endif
+<span class="lineNum"> 316 </span><span class="lineCov"> 20651 : __new_finish =</span>
+<span class="lineNum"> 317 </span> : std::__uninitialized_move_a(this-&gt;_M_impl._M_start,
+<span class="lineNum"> 318 </span> : __position.base(), __new_start,
+<span class="lineNum"> 319 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 320 </span> : #ifndef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 321 </span><span class="lineCov"> 20651 : this-&gt;_M_impl.construct(__new_finish, __x);</span>
+<span class="lineNum"> 322 </span> : #endif
+<span class="lineNum"> 323 </span><span class="lineCov"> 20651 : ++__new_finish;</span>
+<span class="lineNum"> 324 </span><span class="lineCov"> 20651 : __new_finish =</span>
+<span class="lineNum"> 325 </span> : std::__uninitialized_move_a(__position.base(),
+<span class="lineNum"> 326 </span> : this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 327 </span> : __new_finish,
+<span class="lineNum"> 328 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 329 </span> : }
+<span class="lineNum"> 330 </span><span class="lineNoCov"> 0 : catch(...)</span>
+<span class="lineNum"> 331 </span> : {
+<span class="lineNum"> 332 </span><span class="lineNoCov"> 0 : std::_Destroy(__new_start, __new_finish, _M_get_Tp_allocator());</span>
+<span class="lineNum"> 333 </span><span class="lineNoCov"> 0 : _M_deallocate(__new_start, __len);</span>
+<span class="lineNum"> 334 </span><span class="lineNoCov"> 0 : __throw_exception_again;</span>
+<span class="lineNum"> 335 </span> : }
+<span class="lineNum"> 336 </span><span class="lineCov"> 20651 : std::_Destroy(this-&gt;_M_impl._M_start, this-&gt;_M_impl._M_finish,</span>
+<span class="lineNum"> 337 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 338 </span><span class="lineCov"> 20651 : _M_deallocate(this-&gt;_M_impl._M_start,</span>
+<span class="lineNum"> 339 </span> : this-&gt;_M_impl._M_end_of_storage
+<span class="lineNum"> 340 </span> : - this-&gt;_M_impl._M_start);
+<span class="lineNum"> 341 </span><span class="lineCov"> 20651 : this-&gt;_M_impl._M_start = __new_start;</span>
+<span class="lineNum"> 342 </span><span class="lineCov"> 20651 : this-&gt;_M_impl._M_finish = __new_finish;</span>
+<span class="lineNum"> 343 </span><span class="lineCov"> 20651 : this-&gt;_M_impl._M_end_of_storage = __new_start + __len;</span>
+<span class="lineNum"> 344 </span> : }
+<span class="lineNum"> 345 </span><span class="lineCov"> 20651 : }</span>
+<span class="lineNum"> 346 </span> :
+<span class="lineNum"> 347 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 348 </span> : void
+<span class="lineNum"> 349 </span> : vector&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 350 </span><span class="lineCov"> 22443 : _M_fill_insert(iterator __position, size_type __n, const value_type&amp; __x)</span>
+<span class="lineNum"> 351 </span> : {
+<span class="lineNum"> 352 </span><span class="lineCov"> 22443 : if (__n != 0)</span>
+<span class="lineNum"> 353 </span> : {
+<span class="lineNum"> 354 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 355 </span> : value_type __x_copy = __x;
+<span class="lineNum"> 356 </span> : #endif
+<span class="lineNum"> 357 </span><span class="lineCov"> 22443 : if (size_type(this-&gt;_M_impl._M_end_of_storage</span>
+<span class="lineNum"> 358 </span> : - this-&gt;_M_impl._M_finish) &gt;= __n)
+<span class="lineNum"> 359 </span> : {
+<span class="lineNum"> 360 </span> : #ifndef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 361 </span><span class="lineCov"> 22386 : value_type __x_copy = __x;</span>
+<span class="lineNum"> 362 </span> : #endif
+<span class="lineNum"> 363 </span><span class="lineCov"> 22386 : const size_type __elems_after = end() - __position;</span>
+<span class="lineNum"> 364 </span><span class="lineCov"> 22386 : pointer __old_finish(this-&gt;_M_impl._M_finish);</span>
+<span class="lineNum"> 365 </span><span class="lineCov"> 22386 : if (__elems_after &gt; __n)</span>
+<span class="lineNum"> 366 </span> : {
+<span class="lineNum"> 367 </span><span class="lineNoCov"> 0 : std::__uninitialized_move_a(this-&gt;_M_impl._M_finish - __n,</span>
+<span class="lineNum"> 368 </span> : this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 369 </span> : this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 370 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 371 </span><span class="lineNoCov"> 0 : this-&gt;_M_impl._M_finish += __n;</span>
+<span class="lineNum"> 372 </span><span class="lineNoCov"> 0 : _GLIBCXX_MOVE_BACKWARD3(__position.base(),</span>
+<span class="lineNum"> 373 </span> : __old_finish - __n, __old_finish);
+<span class="lineNum"> 374 </span><span class="lineNoCov"> 0 : std::fill(__position.base(), __position.base() + __n,</span>
+<span class="lineNum"> 375 </span> : __x_copy);
+<span class="lineNum"> 376 </span> : }
+<span class="lineNum"> 377 </span> : else
+<span class="lineNum"> 378 </span> : {
+<span class="lineNum"> 379 </span><span class="lineCov"> 22386 : std::__uninitialized_fill_n_a(this-&gt;_M_impl._M_finish,</span>
+<span class="lineNum"> 380 </span> : __n - __elems_after,
+<span class="lineNum"> 381 </span> : __x_copy,
+<span class="lineNum"> 382 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 383 </span><span class="lineCov"> 22386 : this-&gt;_M_impl._M_finish += __n - __elems_after;</span>
+<span class="lineNum"> 384 </span><span class="lineCov"> 22386 : std::__uninitialized_move_a(__position.base(), __old_finish,</span>
+<span class="lineNum"> 385 </span> : this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 386 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 387 </span><span class="lineCov"> 22386 : this-&gt;_M_impl._M_finish += __elems_after;</span>
+<span class="lineNum"> 388 </span><span class="lineCov"> 22386 : std::fill(__position.base(), __old_finish, __x_copy);</span>
+<span class="lineNum"> 389 </span> : }
+<span class="lineNum"> 390 </span> : }
+<span class="lineNum"> 391 </span> : else
+<span class="lineNum"> 392 </span> : {
+<span class="lineNum"> 393 </span> : const size_type __len =
+<span class="lineNum"> 394 </span><span class="lineCov"> 57 : _M_check_len(__n, &quot;vector::_M_fill_insert&quot;);</span>
+<span class="lineNum"> 395 </span><span class="lineCov"> 57 : pointer __new_start(this-&gt;_M_allocate(__len));</span>
+<span class="lineNum"> 396 </span><span class="lineCov"> 57 : pointer __new_finish(__new_start);</span>
+<span class="lineNum"> 397 </span> : try
+<span class="lineNum"> 398 </span> : {
+<span class="lineNum"> 399 </span><span class="lineCov"> 57 : __new_finish =</span>
+<span class="lineNum"> 400 </span> : std::__uninitialized_move_a(this-&gt;_M_impl._M_start,
+<span class="lineNum"> 401 </span> : __position.base(),
+<span class="lineNum"> 402 </span> : __new_start,
+<span class="lineNum"> 403 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 404 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 405 </span> : std::__uninitialized_fill_n_a(__new_finish, __n, __x_copy,
+<span class="lineNum"> 406 </span> : #else
+<span class="lineNum"> 407 </span><span class="lineCov"> 57 : std::__uninitialized_fill_n_a(__new_finish, __n, __x,</span>
+<span class="lineNum"> 408 </span> : #endif
+<span class="lineNum"> 409 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 410 </span><span class="lineCov"> 57 : __new_finish += __n;</span>
+<span class="lineNum"> 411 </span><span class="lineCov"> 57 : __new_finish =</span>
+<span class="lineNum"> 412 </span> : std::__uninitialized_move_a(__position.base(),
+<span class="lineNum"> 413 </span> : this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 414 </span> : __new_finish,
+<span class="lineNum"> 415 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 416 </span> : }
+<span class="lineNum"> 417 </span><span class="lineNoCov"> 0 : catch(...)</span>
+<span class="lineNum"> 418 </span> : {
+<span class="lineNum"> 419 </span><span class="lineNoCov"> 0 : std::_Destroy(__new_start, __new_finish,</span>
+<span class="lineNum"> 420 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 421 </span><span class="lineNoCov"> 0 : _M_deallocate(__new_start, __len);</span>
+<span class="lineNum"> 422 </span><span class="lineNoCov"> 0 : __throw_exception_again;</span>
+<span class="lineNum"> 423 </span> : }
+<span class="lineNum"> 424 </span><span class="lineCov"> 57 : std::_Destroy(this-&gt;_M_impl._M_start, this-&gt;_M_impl._M_finish,</span>
+<span class="lineNum"> 425 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 426 </span><span class="lineCov"> 57 : _M_deallocate(this-&gt;_M_impl._M_start,</span>
+<span class="lineNum"> 427 </span> : this-&gt;_M_impl._M_end_of_storage
+<span class="lineNum"> 428 </span> : - this-&gt;_M_impl._M_start);
+<span class="lineNum"> 429 </span><span class="lineCov"> 57 : this-&gt;_M_impl._M_start = __new_start;</span>
+<span class="lineNum"> 430 </span><span class="lineCov"> 57 : this-&gt;_M_impl._M_finish = __new_finish;</span>
+<span class="lineNum"> 431 </span><span class="lineCov"> 57 : this-&gt;_M_impl._M_end_of_storage = __new_start + __len;</span>
+<span class="lineNum"> 432 </span> : }
+<span class="lineNum"> 433 </span> : }
+<span class="lineNum"> 434 </span><span class="lineCov"> 22443 : }</span>
+<span class="lineNum"> 435 </span> :
+<span class="lineNum"> 436 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 437 </span> : template&lt;typename _InputIterator&gt;
+<span class="lineNum"> 438 </span> : void
+<span class="lineNum"> 439 </span> : vector&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 440 </span> : _M_range_insert(iterator __pos, _InputIterator __first,
+<span class="lineNum"> 441 </span> : _InputIterator __last, std::input_iterator_tag)
+<span class="lineNum"> 442 </span> : {
+<span class="lineNum"> 443 </span> : for (; __first != __last; ++__first)
+<span class="lineNum"> 444 </span> : {
+<span class="lineNum"> 445 </span> : __pos = insert(__pos, *__first);
+<span class="lineNum"> 446 </span> : ++__pos;
+<span class="lineNum"> 447 </span> : }
+<span class="lineNum"> 448 </span> : }
+<span class="lineNum"> 449 </span> :
+<span class="lineNum"> 450 </span> : template&lt;typename _Tp, typename _Alloc&gt;
+<span class="lineNum"> 451 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 452 </span> : void
+<span class="lineNum"> 453 </span> : vector&lt;_Tp, _Alloc&gt;::
+<span class="lineNum"> 454 </span> : _M_range_insert(iterator __position, _ForwardIterator __first,
+<span class="lineNum"> 455 </span> : _ForwardIterator __last, std::forward_iterator_tag)
+<span class="lineNum"> 456 </span> : {
+<span class="lineNum"> 457 </span> : if (__first != __last)
+<span class="lineNum"> 458 </span> : {
+<span class="lineNum"> 459 </span> : const size_type __n = std::distance(__first, __last);
+<span class="lineNum"> 460 </span> : if (size_type(this-&gt;_M_impl._M_end_of_storage
+<span class="lineNum"> 461 </span> : - this-&gt;_M_impl._M_finish) &gt;= __n)
+<span class="lineNum"> 462 </span> : {
+<span class="lineNum"> 463 </span> : const size_type __elems_after = end() - __position;
+<span class="lineNum"> 464 </span> : pointer __old_finish(this-&gt;_M_impl._M_finish);
+<span class="lineNum"> 465 </span> : if (__elems_after &gt; __n)
+<span class="lineNum"> 466 </span> : {
+<span class="lineNum"> 467 </span> : std::__uninitialized_move_a(this-&gt;_M_impl._M_finish - __n,
+<span class="lineNum"> 468 </span> : this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 469 </span> : this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 470 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 471 </span> : this-&gt;_M_impl._M_finish += __n;
+<span class="lineNum"> 472 </span> : _GLIBCXX_MOVE_BACKWARD3(__position.base(),
+<span class="lineNum"> 473 </span> : __old_finish - __n, __old_finish);
+<span class="lineNum"> 474 </span> : std::copy(__first, __last, __position);
+<span class="lineNum"> 475 </span> : }
+<span class="lineNum"> 476 </span> : else
+<span class="lineNum"> 477 </span> : {
+<span class="lineNum"> 478 </span> : _ForwardIterator __mid = __first;
+<span class="lineNum"> 479 </span> : std::advance(__mid, __elems_after);
+<span class="lineNum"> 480 </span> : std::__uninitialized_copy_a(__mid, __last,
+<span class="lineNum"> 481 </span> : this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 482 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 483 </span> : this-&gt;_M_impl._M_finish += __n - __elems_after;
+<span class="lineNum"> 484 </span> : std::__uninitialized_move_a(__position.base(),
+<span class="lineNum"> 485 </span> : __old_finish,
+<span class="lineNum"> 486 </span> : this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 487 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 488 </span> : this-&gt;_M_impl._M_finish += __elems_after;
+<span class="lineNum"> 489 </span> : std::copy(__first, __mid, __position);
+<span class="lineNum"> 490 </span> : }
+<span class="lineNum"> 491 </span> : }
+<span class="lineNum"> 492 </span> : else
+<span class="lineNum"> 493 </span> : {
+<span class="lineNum"> 494 </span> : const size_type __len =
+<span class="lineNum"> 495 </span> : _M_check_len(__n, &quot;vector::_M_range_insert&quot;);
+<span class="lineNum"> 496 </span> : pointer __new_start(this-&gt;_M_allocate(__len));
+<span class="lineNum"> 497 </span> : pointer __new_finish(__new_start);
+<span class="lineNum"> 498 </span> : try
+<span class="lineNum"> 499 </span> : {
+<span class="lineNum"> 500 </span> : __new_finish =
+<span class="lineNum"> 501 </span> : std::__uninitialized_move_a(this-&gt;_M_impl._M_start,
+<span class="lineNum"> 502 </span> : __position.base(),
+<span class="lineNum"> 503 </span> : __new_start,
+<span class="lineNum"> 504 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 505 </span> : __new_finish =
+<span class="lineNum"> 506 </span> : std::__uninitialized_copy_a(__first, __last,
+<span class="lineNum"> 507 </span> : __new_finish,
+<span class="lineNum"> 508 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 509 </span> : __new_finish =
+<span class="lineNum"> 510 </span> : std::__uninitialized_move_a(__position.base(),
+<span class="lineNum"> 511 </span> : this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 512 </span> : __new_finish,
+<span class="lineNum"> 513 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 514 </span> : }
+<span class="lineNum"> 515 </span> : catch(...)
+<span class="lineNum"> 516 </span> : {
+<span class="lineNum"> 517 </span> : std::_Destroy(__new_start, __new_finish,
+<span class="lineNum"> 518 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 519 </span> : _M_deallocate(__new_start, __len);
+<span class="lineNum"> 520 </span> : __throw_exception_again;
+<span class="lineNum"> 521 </span> : }
+<span class="lineNum"> 522 </span> : std::_Destroy(this-&gt;_M_impl._M_start, this-&gt;_M_impl._M_finish,
+<span class="lineNum"> 523 </span> : _M_get_Tp_allocator());
+<span class="lineNum"> 524 </span> : _M_deallocate(this-&gt;_M_impl._M_start,
+<span class="lineNum"> 525 </span> : this-&gt;_M_impl._M_end_of_storage
+<span class="lineNum"> 526 </span> : - this-&gt;_M_impl._M_start);
+<span class="lineNum"> 527 </span> : this-&gt;_M_impl._M_start = __new_start;
+<span class="lineNum"> 528 </span> : this-&gt;_M_impl._M_finish = __new_finish;
+<span class="lineNum"> 529 </span> : this-&gt;_M_impl._M_end_of_storage = __new_start + __len;
+<span class="lineNum"> 530 </span> : }
+<span class="lineNum"> 531 </span> : }
+<span class="lineNum"> 532 </span> : }
+<span class="lineNum"> 533 </span> :
+<span class="lineNum"> 534 </span> :
+<span class="lineNum"> 535 </span> : // vector&lt;bool&gt;
+<span class="lineNum"> 536 </span> :
+<span class="lineNum"> 537 </span> : template&lt;typename _Alloc&gt;
+<span class="lineNum"> 538 </span> : void
+<span class="lineNum"> 539 </span> : vector&lt;bool, _Alloc&gt;::
+<span class="lineNum"> 540 </span> : reserve(size_type __n)
+<span class="lineNum"> 541 </span> : {
+<span class="lineNum"> 542 </span> : if (__n &gt; this-&gt;max_size())
+<span class="lineNum"> 543 </span> : __throw_length_error(__N(&quot;vector::reserve&quot;));
+<span class="lineNum"> 544 </span> : if (this-&gt;capacity() &lt; __n)
+<span class="lineNum"> 545 </span> : {
+<span class="lineNum"> 546 </span> : _Bit_type* __q = this-&gt;_M_allocate(__n);
+<span class="lineNum"> 547 </span> : this-&gt;_M_impl._M_finish = _M_copy_aligned(begin(), end(),
+<span class="lineNum"> 548 </span> : iterator(__q, 0));
+<span class="lineNum"> 549 </span> : this-&gt;_M_deallocate();
+<span class="lineNum"> 550 </span> : this-&gt;_M_impl._M_start = iterator(__q, 0);
+<span class="lineNum"> 551 </span> : this-&gt;_M_impl._M_end_of_storage = (__q + (__n + int(_S_word_bit) - 1)
+<span class="lineNum"> 552 </span> : / int(_S_word_bit));
+<span class="lineNum"> 553 </span> : }
+<span class="lineNum"> 554 </span> : }
+<span class="lineNum"> 555 </span> :
+<span class="lineNum"> 556 </span> : template&lt;typename _Alloc&gt;
+<span class="lineNum"> 557 </span> : void
+<span class="lineNum"> 558 </span> : vector&lt;bool, _Alloc&gt;::
+<span class="lineNum"> 559 </span> : _M_fill_insert(iterator __position, size_type __n, bool __x)
+<span class="lineNum"> 560 </span> : {
+<span class="lineNum"> 561 </span> : if (__n == 0)
+<span class="lineNum"> 562 </span> : return;
+<span class="lineNum"> 563 </span> : if (capacity() - size() &gt;= __n)
+<span class="lineNum"> 564 </span> : {
+<span class="lineNum"> 565 </span> : std::copy_backward(__position, end(),
+<span class="lineNum"> 566 </span> : this-&gt;_M_impl._M_finish + difference_type(__n));
+<span class="lineNum"> 567 </span> : std::fill(__position, __position + difference_type(__n), __x);
+<span class="lineNum"> 568 </span> : this-&gt;_M_impl._M_finish += difference_type(__n);
+<span class="lineNum"> 569 </span> : }
+<span class="lineNum"> 570 </span> : else
+<span class="lineNum"> 571 </span> : {
+<span class="lineNum"> 572 </span> : const size_type __len =
+<span class="lineNum"> 573 </span> : _M_check_len(__n, &quot;vector&lt;bool&gt;::_M_fill_insert&quot;);
+<span class="lineNum"> 574 </span> : _Bit_type * __q = this-&gt;_M_allocate(__len);
+<span class="lineNum"> 575 </span> : iterator __i = _M_copy_aligned(begin(), __position,
+<span class="lineNum"> 576 </span> : iterator(__q, 0));
+<span class="lineNum"> 577 </span> : std::fill(__i, __i + difference_type(__n), __x);
+<span class="lineNum"> 578 </span> : this-&gt;_M_impl._M_finish = std::copy(__position, end(),
+<span class="lineNum"> 579 </span> : __i + difference_type(__n));
+<span class="lineNum"> 580 </span> : this-&gt;_M_deallocate();
+<span class="lineNum"> 581 </span> : this-&gt;_M_impl._M_end_of_storage = (__q + ((__len
+<span class="lineNum"> 582 </span> : + int(_S_word_bit) - 1)
+<span class="lineNum"> 583 </span> : / int(_S_word_bit)));
+<span class="lineNum"> 584 </span> : this-&gt;_M_impl._M_start = iterator(__q, 0);
+<span class="lineNum"> 585 </span> : }
+<span class="lineNum"> 586 </span> : }
+<span class="lineNum"> 587 </span> :
+<span class="lineNum"> 588 </span> : template&lt;typename _Alloc&gt;
+<span class="lineNum"> 589 </span> : template&lt;typename _ForwardIterator&gt;
+<span class="lineNum"> 590 </span> : void
+<span class="lineNum"> 591 </span> : vector&lt;bool, _Alloc&gt;::
+<span class="lineNum"> 592 </span> : _M_insert_range(iterator __position, _ForwardIterator __first,
+<span class="lineNum"> 593 </span> : _ForwardIterator __last, std::forward_iterator_tag)
+<span class="lineNum"> 594 </span> : {
+<span class="lineNum"> 595 </span> : if (__first != __last)
+<span class="lineNum"> 596 </span> : {
+<span class="lineNum"> 597 </span> : size_type __n = std::distance(__first, __last);
+<span class="lineNum"> 598 </span> : if (capacity() - size() &gt;= __n)
+<span class="lineNum"> 599 </span> : {
+<span class="lineNum"> 600 </span> : std::copy_backward(__position, end(),
+<span class="lineNum"> 601 </span> : this-&gt;_M_impl._M_finish
+<span class="lineNum"> 602 </span> : + difference_type(__n));
+<span class="lineNum"> 603 </span> : std::copy(__first, __last, __position);
+<span class="lineNum"> 604 </span> : this-&gt;_M_impl._M_finish += difference_type(__n);
+<span class="lineNum"> 605 </span> : }
+<span class="lineNum"> 606 </span> : else
+<span class="lineNum"> 607 </span> : {
+<span class="lineNum"> 608 </span> : const size_type __len =
+<span class="lineNum"> 609 </span> : _M_check_len(__n, &quot;vector&lt;bool&gt;::_M_insert_range&quot;);
+<span class="lineNum"> 610 </span> : _Bit_type * __q = this-&gt;_M_allocate(__len);
+<span class="lineNum"> 611 </span> : iterator __i = _M_copy_aligned(begin(), __position,
+<span class="lineNum"> 612 </span> : iterator(__q, 0));
+<span class="lineNum"> 613 </span> : __i = std::copy(__first, __last, __i);
+<span class="lineNum"> 614 </span> : this-&gt;_M_impl._M_finish = std::copy(__position, end(), __i);
+<span class="lineNum"> 615 </span> : this-&gt;_M_deallocate();
+<span class="lineNum"> 616 </span> : this-&gt;_M_impl._M_end_of_storage = (__q
+<span class="lineNum"> 617 </span> : + ((__len
+<span class="lineNum"> 618 </span> : + int(_S_word_bit) - 1)
+<span class="lineNum"> 619 </span> : / int(_S_word_bit)));
+<span class="lineNum"> 620 </span> : this-&gt;_M_impl._M_start = iterator(__q, 0);
+<span class="lineNum"> 621 </span> : }
+<span class="lineNum"> 622 </span> : }
+<span class="lineNum"> 623 </span> : }
+<span class="lineNum"> 624 </span> :
+<span class="lineNum"> 625 </span> : template&lt;typename _Alloc&gt;
+<span class="lineNum"> 626 </span> : void
+<span class="lineNum"> 627 </span> : vector&lt;bool, _Alloc&gt;::
+<span class="lineNum"> 628 </span><span class="lineCov"> 1 : _M_insert_aux(iterator __position, bool __x)</span>
+<span class="lineNum"> 629 </span> : {
+<span class="lineNum"> 630 </span><span class="lineCov"> 1 : if (this-&gt;_M_impl._M_finish._M_p != this-&gt;_M_impl._M_end_of_storage)</span>
+<span class="lineNum"> 631 </span> : {
+<span class="lineNum"> 632 </span><span class="lineNoCov"> 0 : std::copy_backward(__position, this-&gt;_M_impl._M_finish, </span>
+<span class="lineNum"> 633 </span> : this-&gt;_M_impl._M_finish + 1);
+<span class="lineNum"> 634 </span><span class="lineNoCov"> 0 : *__position = __x;</span>
+<span class="lineNum"> 635 </span><span class="lineNoCov"> 0 : ++this-&gt;_M_impl._M_finish;</span>
+<span class="lineNum"> 636 </span> : }
+<span class="lineNum"> 637 </span> : else
+<span class="lineNum"> 638 </span> : {
+<span class="lineNum"> 639 </span> : const size_type __len =
+<span class="lineNum"> 640 </span><span class="lineCov"> 1 : _M_check_len(size_type(1), &quot;vector&lt;bool&gt;::_M_insert_aux&quot;);</span>
+<span class="lineNum"> 641 </span><span class="lineCov"> 1 : _Bit_type * __q = this-&gt;_M_allocate(__len);</span>
+<span class="lineNum"> 642 </span> : iterator __i = _M_copy_aligned(begin(), __position,
+<span class="lineNum"> 643 </span><span class="lineCov"> 1 : iterator(__q, 0));</span>
+<span class="lineNum"> 644 </span><span class="lineCov"> 1 : *__i++ = __x;</span>
+<span class="lineNum"> 645 </span><span class="lineCov"> 1 : this-&gt;_M_impl._M_finish = std::copy(__position, end(), __i);</span>
+<span class="lineNum"> 646 </span><span class="lineCov"> 1 : this-&gt;_M_deallocate();</span>
+<span class="lineNum"> 647 </span><span class="lineCov"> 1 : this-&gt;_M_impl._M_end_of_storage = (__q + ((__len</span>
+<span class="lineNum"> 648 </span> : + int(_S_word_bit) - 1)
+<span class="lineNum"> 649 </span> : / int(_S_word_bit)));
+<span class="lineNum"> 650 </span><span class="lineCov"> 1 : this-&gt;_M_impl._M_start = iterator(__q, 0);</span>
+<span class="lineNum"> 651 </span> : }
+<span class="lineNum"> 652 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 653 </span> :
+<span class="lineNum"> 654 </span> : _GLIBCXX_END_NESTED_NAMESPACE
+<span class="lineNum"> 655 </span> :
+<span class="lineNum"> 656 </span> : #endif /* _VECTOR_TCC */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/cmath.gcov.html b/rep/usr/include/c++/4.3/cmath.gcov.html
new file mode 100644
index 0000000..cd12c31
--- /dev/null
+++ b/rep/usr/include/c++/4.3/cmath.gcov.html
@@ -0,0 +1,710 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/cmath</title>
+ <link rel="stylesheet" type="text/css" href="../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3</a> - cmath</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- C++ -*- C forwarding header.
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+<span class="lineNum"> 4 </span> : // 2006, 2007
+<span class="lineNum"> 5 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 6 </span> : //
+<span class="lineNum"> 7 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 8 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 9 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 10 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 11 </span> : // any later version.
+<span class="lineNum"> 12 </span> :
+<span class="lineNum"> 13 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 14 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 15 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 16 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 17 </span> :
+<span class="lineNum"> 18 </span> : // You should have received a copy of the GNU General Public License
+<span class="lineNum"> 19 </span> : // along with this library; see the file COPYING. If not, write to
+<span class="lineNum"> 20 </span> : // the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+<span class="lineNum"> 21 </span> : // Boston, MA 02110-1301, USA.
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 24 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 25 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 26 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 27 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 28 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 29 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 30 </span> : // the GNU General Public License.
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : /** @file include/cmath
+<span class="lineNum"> 33 </span> : * This is a Standard C++ Library file. You should @c #include this file
+<span class="lineNum"> 34 </span> : * in your programs, rather than any of the &quot;*.h&quot; implementation files.
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * This is the C++ version of the Standard C Library header @c math.h,
+<span class="lineNum"> 37 </span> : * and its contents are (mostly) the same as that header, but are all
+<span class="lineNum"> 38 </span> : * contained in the namespace @c std (except for names which are defined
+<span class="lineNum"> 39 </span> : * as macros in C).
+<span class="lineNum"> 40 </span> : */
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span> : //
+<span class="lineNum"> 43 </span> : // ISO C++ 14882: 26.5 C library
+<span class="lineNum"> 44 </span> : //
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> : #pragma GCC system_header
+<span class="lineNum"> 47 </span> :
+<span class="lineNum"> 48 </span> : #include &lt;bits/c++config.h&gt;
+<span class="lineNum"> 49 </span> : #include &lt;bits/cpp_type_traits.h&gt;
+<span class="lineNum"> 50 </span> : #include &lt;ext/type_traits.h&gt;
+<span class="lineNum"> 51 </span> : #include_next &lt;math.h&gt;
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span> : #ifndef _GLIBCXX_CMATH
+<span class="lineNum"> 54 </span> : #define _GLIBCXX_CMATH 1
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span> : // Get rid of those macros defined in &lt;math.h&gt; in lieu of real functions.
+<span class="lineNum"> 57 </span> : #undef abs
+<span class="lineNum"> 58 </span> : #undef div
+<span class="lineNum"> 59 </span> : #undef acos
+<span class="lineNum"> 60 </span> : #undef asin
+<span class="lineNum"> 61 </span> : #undef atan
+<span class="lineNum"> 62 </span> : #undef atan2
+<span class="lineNum"> 63 </span> : #undef ceil
+<span class="lineNum"> 64 </span> : #undef cos
+<span class="lineNum"> 65 </span> : #undef cosh
+<span class="lineNum"> 66 </span> : #undef exp
+<span class="lineNum"> 67 </span> : #undef fabs
+<span class="lineNum"> 68 </span> : #undef floor
+<span class="lineNum"> 69 </span> : #undef fmod
+<span class="lineNum"> 70 </span> : #undef frexp
+<span class="lineNum"> 71 </span> : #undef ldexp
+<span class="lineNum"> 72 </span> : #undef log
+<span class="lineNum"> 73 </span> : #undef log10
+<span class="lineNum"> 74 </span> : #undef modf
+<span class="lineNum"> 75 </span> : #undef pow
+<span class="lineNum"> 76 </span> : #undef sin
+<span class="lineNum"> 77 </span> : #undef sinh
+<span class="lineNum"> 78 </span> : #undef sqrt
+<span class="lineNum"> 79 </span> : #undef tan
+<span class="lineNum"> 80 </span> : #undef tanh
+<span class="lineNum"> 81 </span> :
+<span class="lineNum"> 82 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span> : // Forward declaration of a helper function. This really should be
+<span class="lineNum"> 85 </span> : // an `exported' forward declaration.
+<span class="lineNum"> 86 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 87 </span> : _Tp __cmath_power(_Tp, unsigned int);
+<span class="lineNum"> 88 </span> :
+<span class="lineNum"> 89 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 90 </span> : inline _Tp
+<span class="lineNum"> 91 </span> : __pow_helper(_Tp __x, int __n)
+<span class="lineNum"> 92 </span> : {
+<span class="lineNum"> 93 </span> : return __n &lt; 0
+<span class="lineNum"> 94 </span> : ? _Tp(1)/__cmath_power(__x, -__n)
+<span class="lineNum"> 95 </span> : : __cmath_power(__x, __n);
+<span class="lineNum"> 96 </span> : }
+<span class="lineNum"> 97 </span> :
+<span class="lineNum"> 98 </span> : inline double
+<span class="lineNum"> 99 </span> : abs(double __x)
+<span class="lineNum"> 100 </span> : { return __builtin_fabs(__x); }
+<span class="lineNum"> 101 </span> :
+<span class="lineNum"> 102 </span> : inline float
+<span class="lineNum"> 103 </span> : abs(float __x)
+<span class="lineNum"> 104 </span> : { return __builtin_fabsf(__x); }
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span> : inline long double
+<span class="lineNum"> 107 </span> : abs(long double __x)
+<span class="lineNum"> 108 </span> : { return __builtin_fabsl(__x); }
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span> : using ::acos;
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span> : inline float
+<span class="lineNum"> 113 </span> : acos(float __x)
+<span class="lineNum"> 114 </span> : { return __builtin_acosf(__x); }
+<span class="lineNum"> 115 </span> :
+<span class="lineNum"> 116 </span> : inline long double
+<span class="lineNum"> 117 </span> : acos(long double __x)
+<span class="lineNum"> 118 </span> : { return __builtin_acosl(__x); }
+<span class="lineNum"> 119 </span> :
+<span class="lineNum"> 120 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 121 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_integer&lt;_Tp&gt;::__value,
+<span class="lineNum"> 122 </span> : double&gt;::__type
+<span class="lineNum"> 123 </span> : acos(_Tp __x)
+<span class="lineNum"> 124 </span> : { return __builtin_acos(__x); }
+<span class="lineNum"> 125 </span> :
+<span class="lineNum"> 126 </span> : using ::asin;
+<span class="lineNum"> 127 </span> :
+<span class="lineNum"> 128 </span> : inline float
+<span class="lineNum"> 129 </span> : asin(float __x)
+<span class="lineNum"> 130 </span> : { return __builtin_asinf(__x); }
+<span class="lineNum"> 131 </span> :
+<span class="lineNum"> 132 </span> : inline long double
+<span class="lineNum"> 133 </span> : asin(long double __x)
+<span class="lineNum"> 134 </span> : { return __builtin_asinl(__x); }
+<span class="lineNum"> 135 </span> :
+<span class="lineNum"> 136 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 137 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_integer&lt;_Tp&gt;::__value,
+<span class="lineNum"> 138 </span> : double&gt;::__type
+<span class="lineNum"> 139 </span> : asin(_Tp __x)
+<span class="lineNum"> 140 </span> : { return __builtin_asin(__x); }
+<span class="lineNum"> 141 </span> :
+<span class="lineNum"> 142 </span> : using ::atan;
+<span class="lineNum"> 143 </span> :
+<span class="lineNum"> 144 </span> : inline float
+<span class="lineNum"> 145 </span> : atan(float __x)
+<span class="lineNum"> 146 </span> : { return __builtin_atanf(__x); }
+<span class="lineNum"> 147 </span> :
+<span class="lineNum"> 148 </span> : inline long double
+<span class="lineNum"> 149 </span> : atan(long double __x)
+<span class="lineNum"> 150 </span> : { return __builtin_atanl(__x); }
+<span class="lineNum"> 151 </span> :
+<span class="lineNum"> 152 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 153 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_integer&lt;_Tp&gt;::__value,
+<span class="lineNum"> 154 </span> : double&gt;::__type
+<span class="lineNum"> 155 </span> : atan(_Tp __x)
+<span class="lineNum"> 156 </span> : { return __builtin_atan(__x); }
+<span class="lineNum"> 157 </span> :
+<span class="lineNum"> 158 </span> : using ::atan2;
+<span class="lineNum"> 159 </span> :
+<span class="lineNum"> 160 </span> : inline float
+<span class="lineNum"> 161 </span> : atan2(float __y, float __x)
+<span class="lineNum"> 162 </span> : { return __builtin_atan2f(__y, __x); }
+<span class="lineNum"> 163 </span> :
+<span class="lineNum"> 164 </span> : inline long double
+<span class="lineNum"> 165 </span> : atan2(long double __y, long double __x)
+<span class="lineNum"> 166 </span> : { return __builtin_atan2l(__y, __x); }
+<span class="lineNum"> 167 </span> :
+<span class="lineNum"> 168 </span> : template&lt;typename _Tp, typename _Up&gt;
+<span class="lineNum"> 169 </span> : inline
+<span class="lineNum"> 170 </span> : typename __gnu_cxx::__promote_2&lt;
+<span class="lineNum"> 171 </span> : typename __gnu_cxx::__enable_if&lt;__is_arithmetic&lt;_Tp&gt;::__value
+<span class="lineNum"> 172 </span> : &amp;&amp; __is_arithmetic&lt;_Up&gt;::__value,
+<span class="lineNum"> 173 </span> : _Tp&gt;::__type, _Up&gt;::__type
+<span class="lineNum"> 174 </span> : atan2(_Tp __y, _Up __x)
+<span class="lineNum"> 175 </span> : {
+<span class="lineNum"> 176 </span> : typedef typename __gnu_cxx::__promote_2&lt;_Tp, _Up&gt;::__type __type;
+<span class="lineNum"> 177 </span> : return atan2(__type(__y), __type(__x));
+<span class="lineNum"> 178 </span> : }
+<span class="lineNum"> 179 </span> :
+<span class="lineNum"> 180 </span> : using ::ceil;
+<span class="lineNum"> 181 </span> :
+<span class="lineNum"> 182 </span> : inline float
+<span class="lineNum"> 183 </span> : ceil(float __x)
+<span class="lineNum"> 184 </span> : { return __builtin_ceilf(__x); }
+<span class="lineNum"> 185 </span> :
+<span class="lineNum"> 186 </span> : inline long double
+<span class="lineNum"> 187 </span> : ceil(long double __x)
+<span class="lineNum"> 188 </span> : { return __builtin_ceill(__x); }
+<span class="lineNum"> 189 </span> :
+<span class="lineNum"> 190 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 191 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_integer&lt;_Tp&gt;::__value,
+<span class="lineNum"> 192 </span> : double&gt;::__type
+<span class="lineNum"> 193 </span> : ceil(_Tp __x)
+<span class="lineNum"> 194 </span> : { return __builtin_ceil(__x); }
+<span class="lineNum"> 195 </span> :
+<span class="lineNum"> 196 </span> : using ::cos;
+<span class="lineNum"> 197 </span> :
+<span class="lineNum"> 198 </span> : inline float
+<span class="lineNum"> 199 </span> : cos(float __x)
+<span class="lineNum"> 200 </span> : { return __builtin_cosf(__x); }
+<span class="lineNum"> 201 </span> :
+<span class="lineNum"> 202 </span> : inline long double
+<span class="lineNum"> 203 </span> : cos(long double __x)
+<span class="lineNum"> 204 </span> : { return __builtin_cosl(__x); }
+<span class="lineNum"> 205 </span> :
+<span class="lineNum"> 206 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 207 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_integer&lt;_Tp&gt;::__value,
+<span class="lineNum"> 208 </span> : double&gt;::__type
+<span class="lineNum"> 209 </span> : cos(_Tp __x)
+<span class="lineNum"> 210 </span> : { return __builtin_cos(__x); }
+<span class="lineNum"> 211 </span> :
+<span class="lineNum"> 212 </span> : using ::cosh;
+<span class="lineNum"> 213 </span> :
+<span class="lineNum"> 214 </span> : inline float
+<span class="lineNum"> 215 </span> : cosh(float __x)
+<span class="lineNum"> 216 </span> : { return __builtin_coshf(__x); }
+<span class="lineNum"> 217 </span> :
+<span class="lineNum"> 218 </span> : inline long double
+<span class="lineNum"> 219 </span> : cosh(long double __x)
+<span class="lineNum"> 220 </span> : { return __builtin_coshl(__x); }
+<span class="lineNum"> 221 </span> :
+<span class="lineNum"> 222 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 223 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_integer&lt;_Tp&gt;::__value,
+<span class="lineNum"> 224 </span> : double&gt;::__type
+<span class="lineNum"> 225 </span> : cosh(_Tp __x)
+<span class="lineNum"> 226 </span> : { return __builtin_cosh(__x); }
+<span class="lineNum"> 227 </span> :
+<span class="lineNum"> 228 </span> : using ::exp;
+<span class="lineNum"> 229 </span> :
+<span class="lineNum"> 230 </span> : inline float
+<span class="lineNum"> 231 </span> : exp(float __x)
+<span class="lineNum"> 232 </span> : { return __builtin_expf(__x); }
+<span class="lineNum"> 233 </span> :
+<span class="lineNum"> 234 </span> : inline long double
+<span class="lineNum"> 235 </span> : exp(long double __x)
+<span class="lineNum"> 236 </span> : { return __builtin_expl(__x); }
+<span class="lineNum"> 237 </span> :
+<span class="lineNum"> 238 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 239 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_integer&lt;_Tp&gt;::__value,
+<span class="lineNum"> 240 </span> : double&gt;::__type
+<span class="lineNum"> 241 </span> : exp(_Tp __x)
+<span class="lineNum"> 242 </span> : { return __builtin_exp(__x); }
+<span class="lineNum"> 243 </span> :
+<span class="lineNum"> 244 </span> : using ::fabs;
+<span class="lineNum"> 245 </span> :
+<span class="lineNum"> 246 </span> : inline float
+<span class="lineNum"> 247 </span> : fabs(float __x)
+<span class="lineNum"> 248 </span> : { return __builtin_fabsf(__x); }
+<span class="lineNum"> 249 </span> :
+<span class="lineNum"> 250 </span> : inline long double
+<span class="lineNum"> 251 </span> : fabs(long double __x)
+<span class="lineNum"> 252 </span> : { return __builtin_fabsl(__x); }
+<span class="lineNum"> 253 </span> :
+<span class="lineNum"> 254 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 255 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_integer&lt;_Tp&gt;::__value,
+<span class="lineNum"> 256 </span> : double&gt;::__type
+<span class="lineNum"> 257 </span> : fabs(_Tp __x)
+<span class="lineNum"> 258 </span> : { return __builtin_fabs(__x); }
+<span class="lineNum"> 259 </span> :
+<span class="lineNum"> 260 </span> : using ::floor;
+<span class="lineNum"> 261 </span> :
+<span class="lineNum"> 262 </span> : inline float
+<span class="lineNum"> 263 </span> : floor(float __x)
+<span class="lineNum"> 264 </span> : { return __builtin_floorf(__x); }
+<span class="lineNum"> 265 </span> :
+<span class="lineNum"> 266 </span> : inline long double
+<span class="lineNum"> 267 </span> : floor(long double __x)
+<span class="lineNum"> 268 </span> : { return __builtin_floorl(__x); }
+<span class="lineNum"> 269 </span> :
+<span class="lineNum"> 270 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 271 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_integer&lt;_Tp&gt;::__value,
+<span class="lineNum"> 272 </span> : double&gt;::__type
+<span class="lineNum"> 273 </span> : floor(_Tp __x)
+<span class="lineNum"> 274 </span> : { return __builtin_floor(__x); }
+<span class="lineNum"> 275 </span> :
+<span class="lineNum"> 276 </span> : using ::fmod;
+<span class="lineNum"> 277 </span> :
+<span class="lineNum"> 278 </span> : inline float
+<span class="lineNum"> 279 </span> : fmod(float __x, float __y)
+<span class="lineNum"> 280 </span> : { return __builtin_fmodf(__x, __y); }
+<span class="lineNum"> 281 </span> :
+<span class="lineNum"> 282 </span> : inline long double
+<span class="lineNum"> 283 </span> : fmod(long double __x, long double __y)
+<span class="lineNum"> 284 </span> : { return __builtin_fmodl(__x, __y); }
+<span class="lineNum"> 285 </span> :
+<span class="lineNum"> 286 </span> : using ::frexp;
+<span class="lineNum"> 287 </span> :
+<span class="lineNum"> 288 </span> : inline float
+<span class="lineNum"> 289 </span> : frexp(float __x, int* __exp)
+<span class="lineNum"> 290 </span> : { return __builtin_frexpf(__x, __exp); }
+<span class="lineNum"> 291 </span> :
+<span class="lineNum"> 292 </span> : inline long double
+<span class="lineNum"> 293 </span> : frexp(long double __x, int* __exp)
+<span class="lineNum"> 294 </span> : { return __builtin_frexpl(__x, __exp); }
+<span class="lineNum"> 295 </span> :
+<span class="lineNum"> 296 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 297 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_integer&lt;_Tp&gt;::__value,
+<span class="lineNum"> 298 </span> : double&gt;::__type
+<span class="lineNum"> 299 </span> : frexp(_Tp __x, int* __exp)
+<span class="lineNum"> 300 </span> : { return __builtin_frexp(__x, __exp); }
+<span class="lineNum"> 301 </span> :
+<span class="lineNum"> 302 </span> : using ::ldexp;
+<span class="lineNum"> 303 </span> :
+<span class="lineNum"> 304 </span> : inline float
+<span class="lineNum"> 305 </span> : ldexp(float __x, int __exp)
+<span class="lineNum"> 306 </span> : { return __builtin_ldexpf(__x, __exp); }
+<span class="lineNum"> 307 </span> :
+<span class="lineNum"> 308 </span> : inline long double
+<span class="lineNum"> 309 </span> : ldexp(long double __x, int __exp)
+<span class="lineNum"> 310 </span> : { return __builtin_ldexpl(__x, __exp); }
+<span class="lineNum"> 311 </span> :
+<span class="lineNum"> 312 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 313 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_integer&lt;_Tp&gt;::__value,
+<span class="lineNum"> 314 </span> : double&gt;::__type
+<span class="lineNum"> 315 </span> : ldexp(_Tp __x, int __exp)
+<span class="lineNum"> 316 </span> : { return __builtin_ldexp(__x, __exp); }
+<span class="lineNum"> 317 </span> :
+<span class="lineNum"> 318 </span> : using ::log;
+<span class="lineNum"> 319 </span> :
+<span class="lineNum"> 320 </span> : inline float
+<span class="lineNum"> 321 </span><span class="lineCov"> 1 : log(float __x)</span>
+<span class="lineNum"> 322 </span><span class="lineCov"> 1 : { return __builtin_logf(__x); }</span>
+<span class="lineNum"> 323 </span> :
+<span class="lineNum"> 324 </span> : inline long double
+<span class="lineNum"> 325 </span> : log(long double __x)
+<span class="lineNum"> 326 </span> : { return __builtin_logl(__x); }
+<span class="lineNum"> 327 </span> :
+<span class="lineNum"> 328 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 329 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_integer&lt;_Tp&gt;::__value,
+<span class="lineNum"> 330 </span> : double&gt;::__type
+<span class="lineNum"> 331 </span> : log(_Tp __x)
+<span class="lineNum"> 332 </span> : { return __builtin_log(__x); }
+<span class="lineNum"> 333 </span> :
+<span class="lineNum"> 334 </span> : using ::log10;
+<span class="lineNum"> 335 </span> :
+<span class="lineNum"> 336 </span> : inline float
+<span class="lineNum"> 337 </span> : log10(float __x)
+<span class="lineNum"> 338 </span> : { return __builtin_log10f(__x); }
+<span class="lineNum"> 339 </span> :
+<span class="lineNum"> 340 </span> : inline long double
+<span class="lineNum"> 341 </span> : log10(long double __x)
+<span class="lineNum"> 342 </span> : { return __builtin_log10l(__x); }
+<span class="lineNum"> 343 </span> :
+<span class="lineNum"> 344 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 345 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_integer&lt;_Tp&gt;::__value,
+<span class="lineNum"> 346 </span> : double&gt;::__type
+<span class="lineNum"> 347 </span> : log10(_Tp __x)
+<span class="lineNum"> 348 </span> : { return __builtin_log10(__x); }
+<span class="lineNum"> 349 </span> :
+<span class="lineNum"> 350 </span> : using ::modf;
+<span class="lineNum"> 351 </span> :
+<span class="lineNum"> 352 </span> : inline float
+<span class="lineNum"> 353 </span> : modf(float __x, float* __iptr)
+<span class="lineNum"> 354 </span> : { return __builtin_modff(__x, __iptr); }
+<span class="lineNum"> 355 </span> :
+<span class="lineNum"> 356 </span> : inline long double
+<span class="lineNum"> 357 </span> : modf(long double __x, long double* __iptr)
+<span class="lineNum"> 358 </span> : { return __builtin_modfl(__x, __iptr); }
+<span class="lineNum"> 359 </span> :
+<span class="lineNum"> 360 </span> : using ::pow;
+<span class="lineNum"> 361 </span> :
+<span class="lineNum"> 362 </span> : inline float
+<span class="lineNum"> 363 </span> : pow(float __x, float __y)
+<span class="lineNum"> 364 </span> : { return __builtin_powf(__x, __y); }
+<span class="lineNum"> 365 </span> :
+<span class="lineNum"> 366 </span> : inline long double
+<span class="lineNum"> 367 </span> : pow(long double __x, long double __y)
+<span class="lineNum"> 368 </span> : { return __builtin_powl(__x, __y); }
+<span class="lineNum"> 369 </span> :
+<span class="lineNum"> 370 </span> : // DR 550.
+<span class="lineNum"> 371 </span> : inline double
+<span class="lineNum"> 372 </span> : pow(double __x, int __i)
+<span class="lineNum"> 373 </span> : { return __builtin_powi(__x, __i); }
+<span class="lineNum"> 374 </span> :
+<span class="lineNum"> 375 </span> : inline float
+<span class="lineNum"> 376 </span> : pow(float __x, int __n)
+<span class="lineNum"> 377 </span> : { return __builtin_powif(__x, __n); }
+<span class="lineNum"> 378 </span> :
+<span class="lineNum"> 379 </span> : inline long double
+<span class="lineNum"> 380 </span> : pow(long double __x, int __n)
+<span class="lineNum"> 381 </span> : { return __builtin_powil(__x, __n); }
+<span class="lineNum"> 382 </span> :
+<span class="lineNum"> 383 </span> : template&lt;typename _Tp, typename _Up&gt;
+<span class="lineNum"> 384 </span> : inline
+<span class="lineNum"> 385 </span> : typename __gnu_cxx::__promote_2&lt;
+<span class="lineNum"> 386 </span> : typename __gnu_cxx::__enable_if&lt;__is_arithmetic&lt;_Tp&gt;::__value
+<span class="lineNum"> 387 </span> : &amp;&amp; __is_arithmetic&lt;_Up&gt;::__value,
+<span class="lineNum"> 388 </span> : _Tp&gt;::__type, _Up&gt;::__type
+<span class="lineNum"> 389 </span> : pow(_Tp __x, _Up __y)
+<span class="lineNum"> 390 </span> : {
+<span class="lineNum"> 391 </span> : typedef typename __gnu_cxx::__promote_2&lt;_Tp, _Up&gt;::__type __type;
+<span class="lineNum"> 392 </span> : return pow(__type(__x), __type(__y));
+<span class="lineNum"> 393 </span> : }
+<span class="lineNum"> 394 </span> :
+<span class="lineNum"> 395 </span> : using ::sin;
+<span class="lineNum"> 396 </span> :
+<span class="lineNum"> 397 </span> : inline float
+<span class="lineNum"> 398 </span> : sin(float __x)
+<span class="lineNum"> 399 </span> : { return __builtin_sinf(__x); }
+<span class="lineNum"> 400 </span> :
+<span class="lineNum"> 401 </span> : inline long double
+<span class="lineNum"> 402 </span> : sin(long double __x)
+<span class="lineNum"> 403 </span> : { return __builtin_sinl(__x); }
+<span class="lineNum"> 404 </span> :
+<span class="lineNum"> 405 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 406 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_integer&lt;_Tp&gt;::__value,
+<span class="lineNum"> 407 </span> : double&gt;::__type
+<span class="lineNum"> 408 </span> : sin(_Tp __x)
+<span class="lineNum"> 409 </span> : { return __builtin_sin(__x); }
+<span class="lineNum"> 410 </span> :
+<span class="lineNum"> 411 </span> : using ::sinh;
+<span class="lineNum"> 412 </span> :
+<span class="lineNum"> 413 </span> : inline float
+<span class="lineNum"> 414 </span> : sinh(float __x)
+<span class="lineNum"> 415 </span> : { return __builtin_sinhf(__x); }
+<span class="lineNum"> 416 </span> :
+<span class="lineNum"> 417 </span> : inline long double
+<span class="lineNum"> 418 </span> : sinh(long double __x)
+<span class="lineNum"> 419 </span> : { return __builtin_sinhl(__x); }
+<span class="lineNum"> 420 </span> :
+<span class="lineNum"> 421 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 422 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_integer&lt;_Tp&gt;::__value,
+<span class="lineNum"> 423 </span> : double&gt;::__type
+<span class="lineNum"> 424 </span> : sinh(_Tp __x)
+<span class="lineNum"> 425 </span> : { return __builtin_sinh(__x); }
+<span class="lineNum"> 426 </span> :
+<span class="lineNum"> 427 </span> : using ::sqrt;
+<span class="lineNum"> 428 </span> :
+<span class="lineNum"> 429 </span> : inline float
+<span class="lineNum"> 430 </span> : sqrt(float __x)
+<span class="lineNum"> 431 </span> : { return __builtin_sqrtf(__x); }
+<span class="lineNum"> 432 </span> :
+<span class="lineNum"> 433 </span> : inline long double
+<span class="lineNum"> 434 </span> : sqrt(long double __x)
+<span class="lineNum"> 435 </span> : { return __builtin_sqrtl(__x); }
+<span class="lineNum"> 436 </span> :
+<span class="lineNum"> 437 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 438 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_integer&lt;_Tp&gt;::__value,
+<span class="lineNum"> 439 </span> : double&gt;::__type
+<span class="lineNum"> 440 </span> : sqrt(_Tp __x)
+<span class="lineNum"> 441 </span> : { return __builtin_sqrt(__x); }
+<span class="lineNum"> 442 </span> :
+<span class="lineNum"> 443 </span> : using ::tan;
+<span class="lineNum"> 444 </span> :
+<span class="lineNum"> 445 </span> : inline float
+<span class="lineNum"> 446 </span> : tan(float __x)
+<span class="lineNum"> 447 </span> : { return __builtin_tanf(__x); }
+<span class="lineNum"> 448 </span> :
+<span class="lineNum"> 449 </span> : inline long double
+<span class="lineNum"> 450 </span> : tan(long double __x)
+<span class="lineNum"> 451 </span> : { return __builtin_tanl(__x); }
+<span class="lineNum"> 452 </span> :
+<span class="lineNum"> 453 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 454 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_integer&lt;_Tp&gt;::__value,
+<span class="lineNum"> 455 </span> : double&gt;::__type
+<span class="lineNum"> 456 </span> : tan(_Tp __x)
+<span class="lineNum"> 457 </span> : { return __builtin_tan(__x); }
+<span class="lineNum"> 458 </span> :
+<span class="lineNum"> 459 </span> : using ::tanh;
+<span class="lineNum"> 460 </span> :
+<span class="lineNum"> 461 </span> : inline float
+<span class="lineNum"> 462 </span> : tanh(float __x)
+<span class="lineNum"> 463 </span> : { return __builtin_tanhf(__x); }
+<span class="lineNum"> 464 </span> :
+<span class="lineNum"> 465 </span> : inline long double
+<span class="lineNum"> 466 </span> : tanh(long double __x)
+<span class="lineNum"> 467 </span> : { return __builtin_tanhl(__x); }
+<span class="lineNum"> 468 </span> :
+<span class="lineNum"> 469 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 470 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_integer&lt;_Tp&gt;::__value,
+<span class="lineNum"> 471 </span> : double&gt;::__type
+<span class="lineNum"> 472 </span> : tanh(_Tp __x)
+<span class="lineNum"> 473 </span> : { return __builtin_tanh(__x); }
+<span class="lineNum"> 474 </span> :
+<span class="lineNum"> 475 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 476 </span> :
+<span class="lineNum"> 477 </span> : #if _GLIBCXX_USE_C99_MATH
+<span class="lineNum"> 478 </span> : #if !_GLIBCXX_USE_C99_FP_MACROS_DYNAMIC
+<span class="lineNum"> 479 </span> : // These are possible macros imported from C99-land. For strict
+<span class="lineNum"> 480 </span> : // conformance, remove possible C99-injected names from the global
+<span class="lineNum"> 481 </span> : // namespace, and sequester them in the __gnu_cxx extension namespace.
+<span class="lineNum"> 482 </span> :
+<span class="lineNum"> 483 </span> : _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+<span class="lineNum"> 484 </span> :
+<span class="lineNum"> 485 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 486 </span> : inline int
+<span class="lineNum"> 487 </span> : __capture_fpclassify(_Tp __f) { return fpclassify(__f); }
+<span class="lineNum"> 488 </span> :
+<span class="lineNum"> 489 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 490 </span> :
+<span class="lineNum"> 491 </span> : // Only undefine the C99 FP macros, if actually captured for namespace movement
+<span class="lineNum"> 492 </span> : #undef fpclassify
+<span class="lineNum"> 493 </span> : #undef isfinite
+<span class="lineNum"> 494 </span> : #undef isinf
+<span class="lineNum"> 495 </span> : #undef isnan
+<span class="lineNum"> 496 </span> : #undef isnormal
+<span class="lineNum"> 497 </span> : #undef signbit
+<span class="lineNum"> 498 </span> : #undef isgreater
+<span class="lineNum"> 499 </span> : #undef isgreaterequal
+<span class="lineNum"> 500 </span> : #undef isless
+<span class="lineNum"> 501 </span> : #undef islessequal
+<span class="lineNum"> 502 </span> : #undef islessgreater
+<span class="lineNum"> 503 </span> : #undef isunordered
+<span class="lineNum"> 504 </span> :
+<span class="lineNum"> 505 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 506 </span> :
+<span class="lineNum"> 507 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 508 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_arithmetic&lt;_Tp&gt;::__value,
+<span class="lineNum"> 509 </span> : int&gt;::__type
+<span class="lineNum"> 510 </span> : fpclassify(_Tp __f)
+<span class="lineNum"> 511 </span> : {
+<span class="lineNum"> 512 </span> : typedef typename __gnu_cxx::__promote&lt;_Tp&gt;::__type __type;
+<span class="lineNum"> 513 </span> : return ::__gnu_cxx::__capture_fpclassify(__type(__f));
+<span class="lineNum"> 514 </span> : }
+<span class="lineNum"> 515 </span> :
+<span class="lineNum"> 516 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 517 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_arithmetic&lt;_Tp&gt;::__value,
+<span class="lineNum"> 518 </span> : int&gt;::__type
+<span class="lineNum"> 519 </span> : isfinite(_Tp __f)
+<span class="lineNum"> 520 </span> : {
+<span class="lineNum"> 521 </span> : typedef typename __gnu_cxx::__promote&lt;_Tp&gt;::__type __type;
+<span class="lineNum"> 522 </span> : return __builtin_isfinite(__type(__f));
+<span class="lineNum"> 523 </span> : }
+<span class="lineNum"> 524 </span> :
+<span class="lineNum"> 525 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 526 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_arithmetic&lt;_Tp&gt;::__value,
+<span class="lineNum"> 527 </span> : int&gt;::__type
+<span class="lineNum"> 528 </span> : isinf(_Tp __f)
+<span class="lineNum"> 529 </span> : {
+<span class="lineNum"> 530 </span> : typedef typename __gnu_cxx::__promote&lt;_Tp&gt;::__type __type;
+<span class="lineNum"> 531 </span> : return __builtin_isinf(__type(__f));
+<span class="lineNum"> 532 </span> : }
+<span class="lineNum"> 533 </span> :
+<span class="lineNum"> 534 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 535 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_arithmetic&lt;_Tp&gt;::__value,
+<span class="lineNum"> 536 </span> : int&gt;::__type
+<span class="lineNum"> 537 </span> : isnan(_Tp __f)
+<span class="lineNum"> 538 </span> : {
+<span class="lineNum"> 539 </span> : typedef typename __gnu_cxx::__promote&lt;_Tp&gt;::__type __type;
+<span class="lineNum"> 540 </span> : return __builtin_isnan(__type(__f));
+<span class="lineNum"> 541 </span> : }
+<span class="lineNum"> 542 </span> :
+<span class="lineNum"> 543 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 544 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_arithmetic&lt;_Tp&gt;::__value,
+<span class="lineNum"> 545 </span> : int&gt;::__type
+<span class="lineNum"> 546 </span> : isnormal(_Tp __f)
+<span class="lineNum"> 547 </span> : {
+<span class="lineNum"> 548 </span> : typedef typename __gnu_cxx::__promote&lt;_Tp&gt;::__type __type;
+<span class="lineNum"> 549 </span> : return __builtin_isnormal(__type(__f));
+<span class="lineNum"> 550 </span> : }
+<span class="lineNum"> 551 </span> :
+<span class="lineNum"> 552 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 553 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_arithmetic&lt;_Tp&gt;::__value,
+<span class="lineNum"> 554 </span> : int&gt;::__type
+<span class="lineNum"> 555 </span> : signbit(_Tp __f)
+<span class="lineNum"> 556 </span> : {
+<span class="lineNum"> 557 </span> : typedef typename __gnu_cxx::__promote&lt;_Tp&gt;::__type __type;
+<span class="lineNum"> 558 </span> : return __builtin_signbit(__type(__f));
+<span class="lineNum"> 559 </span> : }
+<span class="lineNum"> 560 </span> :
+<span class="lineNum"> 561 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 562 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_arithmetic&lt;_Tp&gt;::__value,
+<span class="lineNum"> 563 </span> : int&gt;::__type
+<span class="lineNum"> 564 </span> : isgreater(_Tp __f1, _Tp __f2)
+<span class="lineNum"> 565 </span> : {
+<span class="lineNum"> 566 </span> : typedef typename __gnu_cxx::__promote&lt;_Tp&gt;::__type __type;
+<span class="lineNum"> 567 </span> : return __builtin_isgreater(__type(__f1), __type(__f2));
+<span class="lineNum"> 568 </span> : }
+<span class="lineNum"> 569 </span> :
+<span class="lineNum"> 570 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 571 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_arithmetic&lt;_Tp&gt;::__value,
+<span class="lineNum"> 572 </span> : int&gt;::__type
+<span class="lineNum"> 573 </span> : isgreaterequal(_Tp __f1, _Tp __f2)
+<span class="lineNum"> 574 </span> : {
+<span class="lineNum"> 575 </span> : typedef typename __gnu_cxx::__promote&lt;_Tp&gt;::__type __type;
+<span class="lineNum"> 576 </span> : return __builtin_isgreaterequal(__type(__f1), __type(__f2));
+<span class="lineNum"> 577 </span> : }
+<span class="lineNum"> 578 </span> :
+<span class="lineNum"> 579 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 580 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_arithmetic&lt;_Tp&gt;::__value,
+<span class="lineNum"> 581 </span> : int&gt;::__type
+<span class="lineNum"> 582 </span> : isless(_Tp __f1, _Tp __f2)
+<span class="lineNum"> 583 </span> : {
+<span class="lineNum"> 584 </span> : typedef typename __gnu_cxx::__promote&lt;_Tp&gt;::__type __type;
+<span class="lineNum"> 585 </span> : return __builtin_isless(__type(__f1), __type(__f2));
+<span class="lineNum"> 586 </span> : }
+<span class="lineNum"> 587 </span> :
+<span class="lineNum"> 588 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 589 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_arithmetic&lt;_Tp&gt;::__value,
+<span class="lineNum"> 590 </span> : int&gt;::__type
+<span class="lineNum"> 591 </span> : islessequal(_Tp __f1, _Tp __f2)
+<span class="lineNum"> 592 </span> : {
+<span class="lineNum"> 593 </span> : typedef typename __gnu_cxx::__promote&lt;_Tp&gt;::__type __type;
+<span class="lineNum"> 594 </span> : return __builtin_islessequal(__type(__f1), __type(__f2));
+<span class="lineNum"> 595 </span> : }
+<span class="lineNum"> 596 </span> :
+<span class="lineNum"> 597 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 598 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_arithmetic&lt;_Tp&gt;::__value,
+<span class="lineNum"> 599 </span> : int&gt;::__type
+<span class="lineNum"> 600 </span> : islessgreater(_Tp __f1, _Tp __f2)
+<span class="lineNum"> 601 </span> : {
+<span class="lineNum"> 602 </span> : typedef typename __gnu_cxx::__promote&lt;_Tp&gt;::__type __type;
+<span class="lineNum"> 603 </span> : return __builtin_islessgreater(__type(__f1), __type(__f2));
+<span class="lineNum"> 604 </span> : }
+<span class="lineNum"> 605 </span> :
+<span class="lineNum"> 606 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 607 </span> : inline typename __gnu_cxx::__enable_if&lt;__is_arithmetic&lt;_Tp&gt;::__value,
+<span class="lineNum"> 608 </span> : int&gt;::__type
+<span class="lineNum"> 609 </span> : isunordered(_Tp __f1, _Tp __f2)
+<span class="lineNum"> 610 </span> : {
+<span class="lineNum"> 611 </span> : typedef typename __gnu_cxx::__promote&lt;_Tp&gt;::__type __type;
+<span class="lineNum"> 612 </span> : return __builtin_isunordered(__type(__f1), __type(__f2));
+<span class="lineNum"> 613 </span> : }
+<span class="lineNum"> 614 </span> :
+<span class="lineNum"> 615 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 616 </span> :
+<span class="lineNum"> 617 </span> : #endif /* _GLIBCXX_USE_C99_FP_MACROS_DYNAMIC */
+<span class="lineNum"> 618 </span> : #endif
+<span class="lineNum"> 619 </span> :
+<span class="lineNum"> 620 </span> : #ifndef _GLIBCXX_EXPORT_TEMPLATE
+<span class="lineNum"> 621 </span> : # include &lt;bits/cmath.tcc&gt;
+<span class="lineNum"> 622 </span> : #endif
+<span class="lineNum"> 623 </span> :
+<span class="lineNum"> 624 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 625 </span> : # if defined(_GLIBCXX_INCLUDE_AS_TR1)
+<span class="lineNum"> 626 </span> : # error C++0x header cannot be included from TR1 header
+<span class="lineNum"> 627 </span> : # endif
+<span class="lineNum"> 628 </span> : # if defined(_GLIBCXX_INCLUDE_AS_CXX0X)
+<span class="lineNum"> 629 </span> : # include &lt;tr1_impl/cmath&gt;
+<span class="lineNum"> 630 </span> : # else
+<span class="lineNum"> 631 </span> : # define _GLIBCXX_INCLUDE_AS_CXX0X
+<span class="lineNum"> 632 </span> : # define _GLIBCXX_BEGIN_NAMESPACE_TR1
+<span class="lineNum"> 633 </span> : # define _GLIBCXX_END_NAMESPACE_TR1
+<span class="lineNum"> 634 </span> : # define _GLIBCXX_TR1
+<span class="lineNum"> 635 </span> : # include &lt;tr1_impl/cmath&gt;
+<span class="lineNum"> 636 </span> : # undef _GLIBCXX_TR1
+<span class="lineNum"> 637 </span> : # undef _GLIBCXX_END_NAMESPACE_TR1
+<span class="lineNum"> 638 </span> : # undef _GLIBCXX_BEGIN_NAMESPACE_TR1
+<span class="lineNum"> 639 </span> : # undef _GLIBCXX_INCLUDE_AS_CXX0X
+<span class="lineNum"> 640 </span> : # endif
+<span class="lineNum"> 641 </span> : #endif
+<span class="lineNum"> 642 </span> :
+<span class="lineNum"> 643 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/exception.gcov.html b/rep/usr/include/c++/4.3/exception.gcov.html
new file mode 100644
index 0000000..70fe998
--- /dev/null
+++ b/rep/usr/include/c++/4.3/exception.gcov.html
@@ -0,0 +1,202 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/exception</title>
+ <link rel="stylesheet" type="text/css" href="../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3</a> - exception</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">50.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Exception Handling support header for -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
+<span class="lineNum"> 4 </span> : // 2004, 2005, 2006, 2007
+<span class="lineNum"> 5 </span> : // Free Software Foundation
+<span class="lineNum"> 6 </span> : //
+<span class="lineNum"> 7 </span> : // This file is part of GCC.
+<span class="lineNum"> 8 </span> : //
+<span class="lineNum"> 9 </span> : // GCC is free software; you can redistribute it and/or modify
+<span class="lineNum"> 10 </span> : // it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 11 </span> : // the Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 12 </span> : // any later version.
+<span class="lineNum"> 13 </span> : //
+<span class="lineNum"> 14 </span> : // GCC is distributed in the hope that it will be useful,
+<span class="lineNum"> 15 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 16 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 17 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 18 </span> : //
+<span class="lineNum"> 19 </span> : // You should have received a copy of the GNU General Public License
+<span class="lineNum"> 20 </span> : // along with GCC; see the file COPYING. If not, write to
+<span class="lineNum"> 21 </span> : // the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+<span class="lineNum"> 22 </span> : // Boston, MA 02110-1301, USA.
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 25 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 26 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 27 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 28 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 30 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 31 </span> : // the GNU General Public License.
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : /** @file exception
+<span class="lineNum"> 34 </span> : * This is a Standard C++ Library header.
+<span class="lineNum"> 35 </span> : */
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : #ifndef __EXCEPTION__
+<span class="lineNum"> 38 </span> : #define __EXCEPTION__
+<span class="lineNum"> 39 </span> :
+<span class="lineNum"> 40 </span> : #pragma GCC visibility push(default)
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span> : #include &lt;bits/c++config.h&gt;
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span> : extern &quot;C++&quot; {
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> : namespace std
+<span class="lineNum"> 47 </span> : {
+<span class="lineNum"> 48 </span> : /**
+<span class="lineNum"> 49 </span> : * @brief Base class for all library exceptions.
+<span class="lineNum"> 50 </span> : *
+<span class="lineNum"> 51 </span> : * This is the base class for all exceptions thrown by the standard
+<span class="lineNum"> 52 </span> : * library, and by certain language expressions. You are free to derive
+<span class="lineNum"> 53 </span> : * your own %exception classes, or use a different hierarchy, or to
+<span class="lineNum"> 54 </span> : * throw non-class data (e.g., fundamental types).
+<span class="lineNum"> 55 </span> : */
+<span class="lineNum"> 56 </span> : class exception
+<span class="lineNum"> 57 </span><span class="lineNoCov"> 0 : {</span>
+<span class="lineNum"> 58 </span> : public:
+<span class="lineNum"> 59 </span><span class="lineCov"> 6 : exception() throw() { }</span>
+<span class="lineNum"> 60 </span> : virtual ~exception() throw();
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : /** Returns a C-style character string describing the general cause
+<span class="lineNum"> 63 </span> : * of the current error. */
+<span class="lineNum"> 64 </span> : virtual const char* what() const throw();
+<span class="lineNum"> 65 </span> : };
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : /** If an %exception is thrown which is not listed in a function's
+<span class="lineNum"> 68 </span> : * %exception specification, one of these may be thrown. */
+<span class="lineNum"> 69 </span> : class bad_exception : public exception
+<span class="lineNum"> 70 </span> : {
+<span class="lineNum"> 71 </span> : public:
+<span class="lineNum"> 72 </span> : bad_exception() throw() { }
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span> : // This declaration is not useless:
+<span class="lineNum"> 75 </span> : // http://gcc.gnu.org/onlinedocs/gcc-3.0.2/gcc_6.html#SEC118
+<span class="lineNum"> 76 </span> : virtual ~bad_exception() throw();
+<span class="lineNum"> 77 </span> :
+<span class="lineNum"> 78 </span> : // See comment in eh_exception.cc.
+<span class="lineNum"> 79 </span> : virtual const char* what() const throw();
+<span class="lineNum"> 80 </span> : };
+<span class="lineNum"> 81 </span> :
+<span class="lineNum"> 82 </span> : /// If you write a replacement %terminate handler, it must be of this type.
+<span class="lineNum"> 83 </span> : typedef void (*terminate_handler) ();
+<span class="lineNum"> 84 </span> :
+<span class="lineNum"> 85 </span> : /// If you write a replacement %unexpected handler, it must be of this type.
+<span class="lineNum"> 86 </span> : typedef void (*unexpected_handler) ();
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span> : /// Takes a new handler function as an argument, returns the old function.
+<span class="lineNum"> 89 </span> : terminate_handler set_terminate(terminate_handler) throw();
+<span class="lineNum"> 90 </span> :
+<span class="lineNum"> 91 </span> : /** The runtime will call this function if %exception handling must be
+<span class="lineNum"> 92 </span> : * abandoned for any reason. It can also be called by the user. */
+<span class="lineNum"> 93 </span> : void terminate() __attribute__ ((__noreturn__));
+<span class="lineNum"> 94 </span> :
+<span class="lineNum"> 95 </span> : /// Takes a new handler function as an argument, returns the old function.
+<span class="lineNum"> 96 </span> : unexpected_handler set_unexpected(unexpected_handler) throw();
+<span class="lineNum"> 97 </span> :
+<span class="lineNum"> 98 </span> : /** The runtime will call this function if an %exception is thrown which
+<span class="lineNum"> 99 </span> : * violates the function's %exception specification. */
+<span class="lineNum"> 100 </span> : void unexpected() __attribute__ ((__noreturn__));
+<span class="lineNum"> 101 </span> :
+<span class="lineNum"> 102 </span> : /** [18.6.4]/1: &quot;Returns true after completing evaluation of a
+<span class="lineNum"> 103 </span> : * throw-expression until either completing initialization of the
+<span class="lineNum"> 104 </span> : * exception-declaration in the matching handler or entering @c unexpected()
+<span class="lineNum"> 105 </span> : * due to the throw; or after entering @c terminate() for any reason
+<span class="lineNum"> 106 </span> : * other than an explicit call to @c terminate(). [Note: This includes
+<span class="lineNum"> 107 </span> : * stack unwinding [15.2]. end note]&quot;
+<span class="lineNum"> 108 </span> : *
+<span class="lineNum"> 109 </span> : * 2: &quot;When @c uncaught_exception() is true, throwing an %exception can
+<span class="lineNum"> 110 </span> : * result in a call of @c terminate() (15.5.1).&quot;
+<span class="lineNum"> 111 </span> : */
+<span class="lineNum"> 112 </span> : bool uncaught_exception() throw();
+<span class="lineNum"> 113 </span> : } // namespace std
+<span class="lineNum"> 114 </span> :
+<span class="lineNum"> 115 </span> : _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+<span class="lineNum"> 116 </span> :
+<span class="lineNum"> 117 </span> : /** A replacement for the standard terminate_handler which prints more
+<span class="lineNum"> 118 </span> : information about the terminating exception (if any) on stderr. Call
+<span class="lineNum"> 119 </span> : @code
+<span class="lineNum"> 120 </span> : std::set_terminate (__gnu_cxx::__verbose_terminate_handler)
+<span class="lineNum"> 121 </span> : @endcode
+<span class="lineNum"> 122 </span> : to use. For more info, see
+<span class="lineNum"> 123 </span> : http://gcc.gnu.org/onlinedocs/libstdc++/19_diagnostics/howto.html#4
+<span class="lineNum"> 124 </span> :
+<span class="lineNum"> 125 </span> : In 3.4 and later, this is on by default.
+<span class="lineNum"> 126 </span> : */
+<span class="lineNum"> 127 </span> : void __verbose_terminate_handler ();
+<span class="lineNum"> 128 </span> :
+<span class="lineNum"> 129 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 130 </span> :
+<span class="lineNum"> 131 </span> : } // extern &quot;C++&quot;
+<span class="lineNum"> 132 </span> :
+<span class="lineNum"> 133 </span> : #pragma GCC visibility pop
+<span class="lineNum"> 134 </span> :
+<span class="lineNum"> 135 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/ext/atomicity.h.gcov.html b/rep/usr/include/c++/4.3/ext/atomicity.h.gcov.html
new file mode 100644
index 0000000..5ba11ee
--- /dev/null
+++ b/rep/usr/include/c++/4.3/ext/atomicity.h.gcov.html
@@ -0,0 +1,185 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/ext/atomicity.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/ext</a> - atomicity.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">10</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">0.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">0</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Support for atomic operations -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2004, 2005, 2006 Free Software Foundation, Inc.
+<span class="lineNum"> 4 </span> : //
+<span class="lineNum"> 5 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 6 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 7 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 8 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 9 </span> : // any later version.
+<span class="lineNum"> 10 </span> :
+<span class="lineNum"> 11 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 12 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 13 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 14 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 15 </span> :
+<span class="lineNum"> 16 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 17 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 18 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 19 </span> : // USA.
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 22 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 23 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 24 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 25 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 26 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 27 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 28 </span> : // the GNU General Public License.
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : /** @file atomicity.h
+<span class="lineNum"> 31 </span> : * This is an internal header file, included by other library headers.
+<span class="lineNum"> 32 </span> : * You should not attempt to use it directly.
+<span class="lineNum"> 33 </span> : */
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : #ifndef _GLIBCXX_ATOMICITY_H
+<span class="lineNum"> 36 </span> : #define _GLIBCXX_ATOMICITY_H 1
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : #include &lt;bits/c++config.h&gt;
+<span class="lineNum"> 39 </span> : #include &lt;bits/gthr.h&gt;
+<span class="lineNum"> 40 </span> : #include &lt;bits/atomic_word.h&gt;
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span> : _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span> : // Functions for portable atomic access.
+<span class="lineNum"> 45 </span> : // To abstract locking primitives across all thread policies, use:
+<span class="lineNum"> 46 </span> : // __exchange_and_add_dispatch
+<span class="lineNum"> 47 </span> : // __atomic_add_dispatch
+<span class="lineNum"> 48 </span> : #ifdef _GLIBCXX_ATOMIC_BUILTINS
+<span class="lineNum"> 49 </span> : static inline _Atomic_word
+<span class="lineNum"> 50 </span><span class="lineNoCov"> 0 : __exchange_and_add(volatile _Atomic_word* __mem, int __val)</span>
+<span class="lineNum"> 51 </span><span class="lineNoCov"> 0 : { return __sync_fetch_and_add(__mem, __val); }</span>
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span> : static inline void
+<span class="lineNum"> 54 </span> : __atomic_add(volatile _Atomic_word* __mem, int __val)
+<span class="lineNum"> 55 </span> : { __sync_fetch_and_add(__mem, __val); }
+<span class="lineNum"> 56 </span> : #else
+<span class="lineNum"> 57 </span> : _Atomic_word
+<span class="lineNum"> 58 </span> : __attribute__ ((__unused__))
+<span class="lineNum"> 59 </span> : __exchange_and_add(volatile _Atomic_word*, int);
+<span class="lineNum"> 60 </span> :
+<span class="lineNum"> 61 </span> : void
+<span class="lineNum"> 62 </span> : __attribute__ ((__unused__))
+<span class="lineNum"> 63 </span> : __atomic_add(volatile _Atomic_word*, int);
+<span class="lineNum"> 64 </span> : #endif
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span> : static inline _Atomic_word
+<span class="lineNum"> 67 </span><span class="lineNoCov"> 0 : __exchange_and_add_single(_Atomic_word* __mem, int __val)</span>
+<span class="lineNum"> 68 </span> : {
+<span class="lineNum"> 69 </span><span class="lineNoCov"> 0 : _Atomic_word __result = *__mem;</span>
+<span class="lineNum"> 70 </span><span class="lineNoCov"> 0 : *__mem += __val;</span>
+<span class="lineNum"> 71 </span><span class="lineNoCov"> 0 : return __result;</span>
+<span class="lineNum"> 72 </span> : }
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span> : static inline void
+<span class="lineNum"> 75 </span> : __atomic_add_single(_Atomic_word* __mem, int __val)
+<span class="lineNum"> 76 </span> : { *__mem += __val; }
+<span class="lineNum"> 77 </span> :
+<span class="lineNum"> 78 </span> : static inline _Atomic_word
+<span class="lineNum"> 79 </span> : __attribute__ ((__unused__))
+<span class="lineNum"> 80 </span><span class="lineNoCov"> 0 : __exchange_and_add_dispatch(_Atomic_word* __mem, int __val)</span>
+<span class="lineNum"> 81 </span> : {
+<span class="lineNum"> 82 </span> : #ifdef __GTHREADS
+<span class="lineNum"> 83 </span><span class="lineNoCov"> 0 : if (__gthread_active_p())</span>
+<span class="lineNum"> 84 </span><span class="lineNoCov"> 0 : return __exchange_and_add(__mem, __val);</span>
+<span class="lineNum"> 85 </span> : else
+<span class="lineNum"> 86 </span><span class="lineNoCov"> 0 : return __exchange_and_add_single(__mem, __val);</span>
+<span class="lineNum"> 87 </span> : #else
+<span class="lineNum"> 88 </span> : return __exchange_and_add_single(__mem, __val);
+<span class="lineNum"> 89 </span> : #endif
+<span class="lineNum"> 90 </span> : }
+<span class="lineNum"> 91 </span> :
+<span class="lineNum"> 92 </span> : static inline void
+<span class="lineNum"> 93 </span> : __attribute__ ((__unused__))
+<span class="lineNum"> 94 </span> : __atomic_add_dispatch(_Atomic_word* __mem, int __val)
+<span class="lineNum"> 95 </span> : {
+<span class="lineNum"> 96 </span> : #ifdef __GTHREADS
+<span class="lineNum"> 97 </span> : if (__gthread_active_p())
+<span class="lineNum"> 98 </span> : __atomic_add(__mem, __val);
+<span class="lineNum"> 99 </span> : else
+<span class="lineNum"> 100 </span> : __atomic_add_single(__mem, __val);
+<span class="lineNum"> 101 </span> : #else
+<span class="lineNum"> 102 </span> : __atomic_add_single(__mem, __val);
+<span class="lineNum"> 103 </span> : #endif
+<span class="lineNum"> 104 </span> : }
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 107 </span> :
+<span class="lineNum"> 108 </span> : // Even if the CPU doesn't need a memory barrier, we need to ensure
+<span class="lineNum"> 109 </span> : // that the compiler doesn't reorder memory accesses across the
+<span class="lineNum"> 110 </span> : // barriers.
+<span class="lineNum"> 111 </span> : #ifndef _GLIBCXX_READ_MEM_BARRIER
+<span class="lineNum"> 112 </span> : #define _GLIBCXX_READ_MEM_BARRIER __asm __volatile (&quot;&quot;:::&quot;memory&quot;)
+<span class="lineNum"> 113 </span> : #endif
+<span class="lineNum"> 114 </span> : #ifndef _GLIBCXX_WRITE_MEM_BARRIER
+<span class="lineNum"> 115 </span> : #define _GLIBCXX_WRITE_MEM_BARRIER __asm __volatile (&quot;&quot;:::&quot;memory&quot;)
+<span class="lineNum"> 116 </span> : #endif
+<span class="lineNum"> 117 </span> :
+<span class="lineNum"> 118 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/ext/index.html b/rep/usr/include/c++/4.3/ext/index.html
new file mode 100644
index 0000000..3d42502
--- /dev/null
+++ b/rep/usr/include/c++/4.3/ext/index.html
@@ -0,0 +1,101 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/ext</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - /usr/include/c++/4.3/ext</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">28</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">53.6 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">15</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="atomicity.h.gcov.html">atomicity.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../snow.png" width=100 height=10 alt="0.0%"></td></tr></table>
+ </td>
+ <td class="coverPerLo">0.0&nbsp;%</td>
+ <td class="coverNumLo">0&nbsp;/&nbsp;10&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="new_allocator.h.gcov.html">new_allocator.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=93 height=10 alt="92.9%"><img src="../../../../../snow.png" width=7 height=10 alt="92.9%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">92.9&nbsp;%</td>
+ <td class="coverNumHi">13&nbsp;/&nbsp;14&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="type_traits.h.gcov.html">type_traits.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=50 height=10 alt="50.0%"><img src="../../../../../snow.png" width=50 height=10 alt="50.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">50.0&nbsp;%</td>
+ <td class="coverNumHi">2&nbsp;/&nbsp;4&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/ext/new_allocator.h.gcov.html b/rep/usr/include/c++/4.3/ext/new_allocator.h.gcov.html
new file mode 100644
index 0000000..1111116
--- /dev/null
+++ b/rep/usr/include/c++/4.3/ext/new_allocator.h.gcov.html
@@ -0,0 +1,200 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/ext/new_allocator.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/ext</a> - new_allocator.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">14</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">92.9 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">13</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Allocator that wraps operator new -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+<span class="lineNum"> 4 </span> : //
+<span class="lineNum"> 5 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 6 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 7 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 8 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 9 </span> : // any later version.
+<span class="lineNum"> 10 </span> :
+<span class="lineNum"> 11 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 12 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 13 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 14 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 15 </span> :
+<span class="lineNum"> 16 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 17 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 18 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 19 </span> : // USA.
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 22 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 23 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 24 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 25 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 26 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 27 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 28 </span> : // the GNU General Public License.
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : /** @file ext/new_allocator.h
+<span class="lineNum"> 31 </span> : * This file is a GNU extension to the Standard C++ Library.
+<span class="lineNum"> 32 </span> : */
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span> : #ifndef _NEW_ALLOCATOR_H
+<span class="lineNum"> 35 </span> : #define _NEW_ALLOCATOR_H 1
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : #include &lt;new&gt;
+<span class="lineNum"> 38 </span> : #include &lt;bits/functexcept.h&gt;
+<span class="lineNum"> 39 </span> : #include &lt;bits/stl_move.h&gt;
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : using std::size_t;
+<span class="lineNum"> 44 </span> : using std::ptrdiff_t;
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> : /**
+<span class="lineNum"> 47 </span> : * @brief An allocator that uses global new, as per [20.4].
+<span class="lineNum"> 48 </span> : *
+<span class="lineNum"> 49 </span> : * This is precisely the allocator defined in the C++ Standard.
+<span class="lineNum"> 50 </span> : * - all allocation calls operator new
+<span class="lineNum"> 51 </span> : * - all deallocation calls operator delete
+<span class="lineNum"> 52 </span> : */
+<span class="lineNum"> 53 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 54 </span> : class new_allocator
+<span class="lineNum"> 55 </span> : {
+<span class="lineNum"> 56 </span> : public:
+<span class="lineNum"> 57 </span> : typedef size_t size_type;
+<span class="lineNum"> 58 </span> : typedef ptrdiff_t difference_type;
+<span class="lineNum"> 59 </span> : typedef _Tp* pointer;
+<span class="lineNum"> 60 </span> : typedef const _Tp* const_pointer;
+<span class="lineNum"> 61 </span> : typedef _Tp&amp; reference;
+<span class="lineNum"> 62 </span> : typedef const _Tp&amp; const_reference;
+<span class="lineNum"> 63 </span> : typedef _Tp value_type;
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : template&lt;typename _Tp1&gt;
+<span class="lineNum"> 66 </span> : struct rebind
+<span class="lineNum"> 67 </span> : { typedef new_allocator&lt;_Tp1&gt; other; };
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span><span class="lineCov"> 11574945 : new_allocator() throw() { }</span>
+<span class="lineNum"> 70 </span> :
+<span class="lineNum"> 71 </span><span class="lineCov"> 934618 : new_allocator(const new_allocator&amp;) throw() { }</span>
+<span class="lineNum"> 72 </span> :
+<span class="lineNum"> 73 </span> : template&lt;typename _Tp1&gt;
+<span class="lineNum"> 74 </span> : new_allocator(const new_allocator&lt;_Tp1&gt;&amp;) throw() { }
+<span class="lineNum"> 75 </span> :
+<span class="lineNum"> 76 </span><span class="lineCov"> 12615289 : ~new_allocator() throw() { }</span>
+<span class="lineNum"> 77 </span> :
+<span class="lineNum"> 78 </span> : pointer
+<span class="lineNum"> 79 </span> : address(reference __x) const { return &amp;__x; }
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span> : const_pointer
+<span class="lineNum"> 82 </span> : address(const_reference __x) const { return &amp;__x; }
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span> : // NB: __n is permitted to be 0. The C++ standard says nothing
+<span class="lineNum"> 85 </span> : // about what the return value is when __n == 0.
+<span class="lineNum"> 86 </span> : pointer
+<span class="lineNum"> 87 </span><span class="lineCov"> 5665535 : allocate(size_type __n, const void* = 0)</span>
+<span class="lineNum"> 88 </span> : {
+<span class="lineNum"> 89 </span><span class="lineCov"> 5665535 : if (__builtin_expect(__n &gt; this-&gt;max_size(), false))</span>
+<span class="lineNum"> 90 </span><span class="lineNoCov"> 0 : std::__throw_bad_alloc();</span>
+<span class="lineNum"> 91 </span> :
+<span class="lineNum"> 92 </span><span class="lineCov"> 5665535 : return static_cast&lt;_Tp*&gt;(::operator new(__n * sizeof(_Tp)));</span>
+<span class="lineNum"> 93 </span> : }
+<span class="lineNum"> 94 </span> :
+<span class="lineNum"> 95 </span> : // __p is not permitted to be a null pointer.
+<span class="lineNum"> 96 </span> : void
+<span class="lineNum"> 97 </span><span class="lineCov"> 5665395 : deallocate(pointer __p, size_type)</span>
+<span class="lineNum"> 98 </span><span class="lineCov"> 5665395 : { ::operator delete(__p); }</span>
+<span class="lineNum"> 99 </span> :
+<span class="lineNum"> 100 </span> : size_type
+<span class="lineNum"> 101 </span><span class="lineCov"> 5706963 : max_size() const throw() </span>
+<span class="lineNum"> 102 </span><span class="lineCov"> 5706963 : { return size_t(-1) / sizeof(_Tp); }</span>
+<span class="lineNum"> 103 </span> :
+<span class="lineNum"> 104 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 105 </span> : // 402. wrong new expression in [some_] allocator::construct
+<span class="lineNum"> 106 </span> : void
+<span class="lineNum"> 107 </span><span class="lineCov"> 5786312 : construct(pointer __p, const _Tp&amp; __val) </span>
+<span class="lineNum"> 108 </span><span class="lineCov"> 5786312 : { ::new((void *)__p) _Tp(__val); }</span>
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span> : #ifdef __GXX_EXPERIMENTAL_CXX0X__
+<span class="lineNum"> 111 </span> : template&lt;typename... _Args&gt;
+<span class="lineNum"> 112 </span> : void
+<span class="lineNum"> 113 </span> : construct(pointer __p, _Args&amp;&amp;... __args)
+<span class="lineNum"> 114 </span> : { ::new((void *)__p) _Tp(std::forward&lt;_Args&gt;(__args)...); }
+<span class="lineNum"> 115 </span> : #endif
+<span class="lineNum"> 116 </span> :
+<span class="lineNum"> 117 </span> : void
+<span class="lineNum"> 118 </span><span class="lineCov"> 5644734 : destroy(pointer __p) { __p-&gt;~_Tp(); }</span>
+<span class="lineNum"> 119 </span> : };
+<span class="lineNum"> 120 </span> :
+<span class="lineNum"> 121 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 122 </span> : inline bool
+<span class="lineNum"> 123 </span> : operator==(const new_allocator&lt;_Tp&gt;&amp;, const new_allocator&lt;_Tp&gt;&amp;)
+<span class="lineNum"> 124 </span> : { return true; }
+<span class="lineNum"> 125 </span> :
+<span class="lineNum"> 126 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 127 </span> : inline bool
+<span class="lineNum"> 128 </span> : operator!=(const new_allocator&lt;_Tp&gt;&amp;, const new_allocator&lt;_Tp&gt;&amp;)
+<span class="lineNum"> 129 </span> : { return false; }
+<span class="lineNum"> 130 </span> :
+<span class="lineNum"> 131 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 132 </span> :
+<span class="lineNum"> 133 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/ext/type_traits.h.gcov.html b/rep/usr/include/c++/4.3/ext/type_traits.h.gcov.html
new file mode 100644
index 0000000..2b9b989
--- /dev/null
+++ b/rep/usr/include/c++/4.3/ext/type_traits.h.gcov.html
@@ -0,0 +1,277 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/ext/type_traits.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/ext</a> - type_traits.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">4</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">50.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2005, 2006, 2007 Free Software Foundation, Inc.
+<span class="lineNum"> 4 </span> : //
+<span class="lineNum"> 5 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 6 </span> : // software; you can redistribute it and/or modify it under the terms
+<span class="lineNum"> 7 </span> : // of the GNU General Public License as published by the Free Software
+<span class="lineNum"> 8 </span> : // Foundation; either version 2, or (at your option) any later
+<span class="lineNum"> 9 </span> : // version.
+<span class="lineNum"> 10 </span> :
+<span class="lineNum"> 11 </span> : // This library is distributed in the hope that it will be useful, but
+<span class="lineNum"> 12 </span> : // WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 13 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 14 </span> : // General Public License for more details.
+<span class="lineNum"> 15 </span> :
+<span class="lineNum"> 16 </span> : // You should have received a copy of the GNU General Public License along
+<span class="lineNum"> 17 </span> : // with this library; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 18 </span> : // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+<span class="lineNum"> 19 </span> : // USA.
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : // As a special exception, you may use this file as part of a free
+<span class="lineNum"> 22 </span> : // software library without restriction. Specifically, if other files
+<span class="lineNum"> 23 </span> : // instantiate templates or use macros or inline functions from this
+<span class="lineNum"> 24 </span> : // file, or you compile this file and link it with other files to
+<span class="lineNum"> 25 </span> : // produce an executable, this file does not by itself cause the
+<span class="lineNum"> 26 </span> : // resulting executable to be covered by the GNU General Public
+<span class="lineNum"> 27 </span> : // License. This exception does not however invalidate any other
+<span class="lineNum"> 28 </span> : // reasons why the executable file might be covered by the GNU General
+<span class="lineNum"> 29 </span> : // Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /** @file ext/type_traits.h
+<span class="lineNum"> 32 </span> : * This file is a GNU extension to the Standard C++ Library.
+<span class="lineNum"> 33 </span> : */
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : #ifndef _EXT_TYPE_TRAITS
+<span class="lineNum"> 36 </span> : #define _EXT_TYPE_TRAITS 1
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : #pragma GCC system_header
+<span class="lineNum"> 39 </span> :
+<span class="lineNum"> 40 </span> : #include &lt;bits/c++config.h&gt;
+<span class="lineNum"> 41 </span> : #include &lt;bits/cpp_type_traits.h&gt;
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : // Define a nested type if some predicate holds.
+<span class="lineNum"> 46 </span> : template&lt;bool, typename&gt;
+<span class="lineNum"> 47 </span> : struct __enable_if
+<span class="lineNum"> 48 </span> : { };
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 51 </span> : struct __enable_if&lt;true, _Tp&gt;
+<span class="lineNum"> 52 </span> : { typedef _Tp __type; };
+<span class="lineNum"> 53 </span> :
+<span class="lineNum"> 54 </span> :
+<span class="lineNum"> 55 </span> : // Conditional expression for types. If true, first, if false, second.
+<span class="lineNum"> 56 </span> : template&lt;bool _Cond, typename _Iftrue, typename _Iffalse&gt;
+<span class="lineNum"> 57 </span> : struct __conditional_type
+<span class="lineNum"> 58 </span> : { typedef _Iftrue __type; };
+<span class="lineNum"> 59 </span> :
+<span class="lineNum"> 60 </span> : template&lt;typename _Iftrue, typename _Iffalse&gt;
+<span class="lineNum"> 61 </span> : struct __conditional_type&lt;false, _Iftrue, _Iffalse&gt;
+<span class="lineNum"> 62 </span> : { typedef _Iffalse __type; };
+<span class="lineNum"> 63 </span> :
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : // Given an integral builtin type, return the corresponding unsigned type.
+<span class="lineNum"> 66 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 67 </span> : struct __add_unsigned
+<span class="lineNum"> 68 </span> : {
+<span class="lineNum"> 69 </span> : private:
+<span class="lineNum"> 70 </span> : typedef __enable_if&lt;std::__is_integer&lt;_Tp&gt;::__value, _Tp&gt; __if_type;
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span> : public:
+<span class="lineNum"> 73 </span> : typedef typename __if_type::__type __type;
+<span class="lineNum"> 74 </span> : };
+<span class="lineNum"> 75 </span> :
+<span class="lineNum"> 76 </span> : template&lt;&gt;
+<span class="lineNum"> 77 </span> : struct __add_unsigned&lt;char&gt;
+<span class="lineNum"> 78 </span> : { typedef unsigned char __type; };
+<span class="lineNum"> 79 </span> :
+<span class="lineNum"> 80 </span> : template&lt;&gt;
+<span class="lineNum"> 81 </span> : struct __add_unsigned&lt;signed char&gt;
+<span class="lineNum"> 82 </span> : { typedef unsigned char __type; };
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span> : template&lt;&gt;
+<span class="lineNum"> 85 </span> : struct __add_unsigned&lt;short&gt;
+<span class="lineNum"> 86 </span> : { typedef unsigned short __type; };
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span> : template&lt;&gt;
+<span class="lineNum"> 89 </span> : struct __add_unsigned&lt;int&gt;
+<span class="lineNum"> 90 </span> : { typedef unsigned int __type; };
+<span class="lineNum"> 91 </span> :
+<span class="lineNum"> 92 </span> : template&lt;&gt;
+<span class="lineNum"> 93 </span> : struct __add_unsigned&lt;long&gt;
+<span class="lineNum"> 94 </span> : { typedef unsigned long __type; };
+<span class="lineNum"> 95 </span> :
+<span class="lineNum"> 96 </span> : template&lt;&gt;
+<span class="lineNum"> 97 </span> : struct __add_unsigned&lt;long long&gt;
+<span class="lineNum"> 98 </span> : { typedef unsigned long long __type; };
+<span class="lineNum"> 99 </span> :
+<span class="lineNum"> 100 </span> : // Declare but don't define.
+<span class="lineNum"> 101 </span> : template&lt;&gt;
+<span class="lineNum"> 102 </span> : struct __add_unsigned&lt;bool&gt;;
+<span class="lineNum"> 103 </span> :
+<span class="lineNum"> 104 </span> : template&lt;&gt;
+<span class="lineNum"> 105 </span> : struct __add_unsigned&lt;wchar_t&gt;;
+<span class="lineNum"> 106 </span> :
+<span class="lineNum"> 107 </span> :
+<span class="lineNum"> 108 </span> : // Given an integral builtin type, return the corresponding signed type.
+<span class="lineNum"> 109 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 110 </span> : struct __remove_unsigned
+<span class="lineNum"> 111 </span> : {
+<span class="lineNum"> 112 </span> : private:
+<span class="lineNum"> 113 </span> : typedef __enable_if&lt;std::__is_integer&lt;_Tp&gt;::__value, _Tp&gt; __if_type;
+<span class="lineNum"> 114 </span> :
+<span class="lineNum"> 115 </span> : public:
+<span class="lineNum"> 116 </span> : typedef typename __if_type::__type __type;
+<span class="lineNum"> 117 </span> : };
+<span class="lineNum"> 118 </span> :
+<span class="lineNum"> 119 </span> : template&lt;&gt;
+<span class="lineNum"> 120 </span> : struct __remove_unsigned&lt;char&gt;
+<span class="lineNum"> 121 </span> : { typedef signed char __type; };
+<span class="lineNum"> 122 </span> :
+<span class="lineNum"> 123 </span> : template&lt;&gt;
+<span class="lineNum"> 124 </span> : struct __remove_unsigned&lt;unsigned char&gt;
+<span class="lineNum"> 125 </span> : { typedef signed char __type; };
+<span class="lineNum"> 126 </span> :
+<span class="lineNum"> 127 </span> : template&lt;&gt;
+<span class="lineNum"> 128 </span> : struct __remove_unsigned&lt;unsigned short&gt;
+<span class="lineNum"> 129 </span> : { typedef short __type; };
+<span class="lineNum"> 130 </span> :
+<span class="lineNum"> 131 </span> : template&lt;&gt;
+<span class="lineNum"> 132 </span> : struct __remove_unsigned&lt;unsigned int&gt;
+<span class="lineNum"> 133 </span> : { typedef int __type; };
+<span class="lineNum"> 134 </span> :
+<span class="lineNum"> 135 </span> : template&lt;&gt;
+<span class="lineNum"> 136 </span> : struct __remove_unsigned&lt;unsigned long&gt;
+<span class="lineNum"> 137 </span> : { typedef long __type; };
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> : template&lt;&gt;
+<span class="lineNum"> 140 </span> : struct __remove_unsigned&lt;unsigned long long&gt;
+<span class="lineNum"> 141 </span> : { typedef long long __type; };
+<span class="lineNum"> 142 </span> :
+<span class="lineNum"> 143 </span> : // Declare but don't define.
+<span class="lineNum"> 144 </span> : template&lt;&gt;
+<span class="lineNum"> 145 </span> : struct __remove_unsigned&lt;bool&gt;;
+<span class="lineNum"> 146 </span> :
+<span class="lineNum"> 147 </span> : template&lt;&gt;
+<span class="lineNum"> 148 </span> : struct __remove_unsigned&lt;wchar_t&gt;;
+<span class="lineNum"> 149 </span> :
+<span class="lineNum"> 150 </span> :
+<span class="lineNum"> 151 </span> : // For use in string and vstring.
+<span class="lineNum"> 152 </span> : template&lt;typename _Type&gt;
+<span class="lineNum"> 153 </span> : inline bool
+<span class="lineNum"> 154 </span><span class="lineNoCov"> 0 : __is_null_pointer(_Type* __ptr)</span>
+<span class="lineNum"> 155 </span><span class="lineNoCov"> 0 : { return __ptr == 0; }</span>
+<span class="lineNum"> 156 </span> :
+<span class="lineNum"> 157 </span> : template&lt;typename _Type&gt;
+<span class="lineNum"> 158 </span> : inline bool
+<span class="lineNum"> 159 </span><span class="lineCov"> 1287 : __is_null_pointer(_Type)</span>
+<span class="lineNum"> 160 </span><span class="lineCov"> 1287 : { return false; }</span>
+<span class="lineNum"> 161 </span> :
+<span class="lineNum"> 162 </span> :
+<span class="lineNum"> 163 </span> : // For complex and cmath
+<span class="lineNum"> 164 </span> : template&lt;typename _Tp, bool = std::__is_integer&lt;_Tp&gt;::__value&gt;
+<span class="lineNum"> 165 </span> : struct __promote
+<span class="lineNum"> 166 </span> : { typedef double __type; };
+<span class="lineNum"> 167 </span> :
+<span class="lineNum"> 168 </span> : template&lt;typename _Tp&gt;
+<span class="lineNum"> 169 </span> : struct __promote&lt;_Tp, false&gt;
+<span class="lineNum"> 170 </span> : { typedef _Tp __type; };
+<span class="lineNum"> 171 </span> :
+<span class="lineNum"> 172 </span> : template&lt;typename _Tp, typename _Up&gt;
+<span class="lineNum"> 173 </span> : struct __promote_2
+<span class="lineNum"> 174 </span> : {
+<span class="lineNum"> 175 </span> : private:
+<span class="lineNum"> 176 </span> : typedef typename __promote&lt;_Tp&gt;::__type __type1;
+<span class="lineNum"> 177 </span> : typedef typename __promote&lt;_Up&gt;::__type __type2;
+<span class="lineNum"> 178 </span> :
+<span class="lineNum"> 179 </span> : public:
+<span class="lineNum"> 180 </span> : typedef __typeof__(__type1() + __type2()) __type;
+<span class="lineNum"> 181 </span> : };
+<span class="lineNum"> 182 </span> :
+<span class="lineNum"> 183 </span> : template&lt;typename _Tp, typename _Up, typename _Vp&gt;
+<span class="lineNum"> 184 </span> : struct __promote_3
+<span class="lineNum"> 185 </span> : {
+<span class="lineNum"> 186 </span> : private:
+<span class="lineNum"> 187 </span> : typedef typename __promote&lt;_Tp&gt;::__type __type1;
+<span class="lineNum"> 188 </span> : typedef typename __promote&lt;_Up&gt;::__type __type2;
+<span class="lineNum"> 189 </span> : typedef typename __promote&lt;_Vp&gt;::__type __type3;
+<span class="lineNum"> 190 </span> :
+<span class="lineNum"> 191 </span> : public:
+<span class="lineNum"> 192 </span> : typedef __typeof__(__type1() + __type2() + __type3()) __type;
+<span class="lineNum"> 193 </span> : };
+<span class="lineNum"> 194 </span> :
+<span class="lineNum"> 195 </span> : template&lt;typename _Tp, typename _Up, typename _Vp, typename _Wp&gt;
+<span class="lineNum"> 196 </span> : struct __promote_4
+<span class="lineNum"> 197 </span> : {
+<span class="lineNum"> 198 </span> : private:
+<span class="lineNum"> 199 </span> : typedef typename __promote&lt;_Tp&gt;::__type __type1;
+<span class="lineNum"> 200 </span> : typedef typename __promote&lt;_Up&gt;::__type __type2;
+<span class="lineNum"> 201 </span> : typedef typename __promote&lt;_Vp&gt;::__type __type3;
+<span class="lineNum"> 202 </span> : typedef typename __promote&lt;_Wp&gt;::__type __type4;
+<span class="lineNum"> 203 </span> :
+<span class="lineNum"> 204 </span> : public:
+<span class="lineNum"> 205 </span> : typedef __typeof__(__type1() + __type2() + __type3() + __type4()) __type;
+<span class="lineNum"> 206 </span> : };
+<span class="lineNum"> 207 </span> :
+<span class="lineNum"> 208 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 209 </span> :
+<span class="lineNum"> 210 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/fstream.gcov.html b/rep/usr/include/c++/4.3/fstream.gcov.html
new file mode 100644
index 0000000..9432d72
--- /dev/null
+++ b/rep/usr/include/c++/4.3/fstream.gcov.html
@@ -0,0 +1,853 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/fstream</title>
+ <link rel="stylesheet" type="text/css" href="../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3</a> - fstream</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">38</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">0.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">0</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // File based streams -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+<span class="lineNum"> 4 </span> : // 2006, 2007, 2008
+<span class="lineNum"> 5 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 6 </span> : //
+<span class="lineNum"> 7 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 8 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 9 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 10 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 11 </span> : // any later version.
+<span class="lineNum"> 12 </span> :
+<span class="lineNum"> 13 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 14 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 15 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 16 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 17 </span> :
+<span class="lineNum"> 18 </span> : // You should have received a copy of the GNU General Public License
+<span class="lineNum"> 19 </span> : // along with this library; see the file COPYING. If not, write to
+<span class="lineNum"> 20 </span> : // the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+<span class="lineNum"> 21 </span> : // Boston, MA 02110-1301, USA.
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 24 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 25 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 26 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 27 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 28 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 29 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 30 </span> : // the GNU General Public License.
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : /** @file fstream
+<span class="lineNum"> 33 </span> : * This is a Standard C++ Library header.
+<span class="lineNum"> 34 </span> : */
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : //
+<span class="lineNum"> 37 </span> : // ISO C++ 14882: 27.8 File-based streams
+<span class="lineNum"> 38 </span> : //
+<span class="lineNum"> 39 </span> :
+<span class="lineNum"> 40 </span> : #ifndef _GLIBCXX_FSTREAM
+<span class="lineNum"> 41 </span> : #define _GLIBCXX_FSTREAM 1
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : #pragma GCC system_header
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : #include &lt;istream&gt;
+<span class="lineNum"> 46 </span> : #include &lt;ostream&gt;
+<span class="lineNum"> 47 </span> : #include &lt;bits/codecvt.h&gt;
+<span class="lineNum"> 48 </span> : #include &lt;cstdio&gt; // For BUFSIZ
+<span class="lineNum"> 49 </span> : #include &lt;bits/basic_file.h&gt; // For __basic_file, __c_lock
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span> : // [27.8.1.1] template class basic_filebuf
+<span class="lineNum"> 54 </span> : /**
+<span class="lineNum"> 55 </span> : * @brief The actual work of input and output (for files).
+<span class="lineNum"> 56 </span> : *
+<span class="lineNum"> 57 </span> : * This class associates both its input and output sequence with an
+<span class="lineNum"> 58 </span> : * external disk file, and maintains a joint file position for both
+<span class="lineNum"> 59 </span> : * sequences. Many of its semantics are described in terms of similar
+<span class="lineNum"> 60 </span> : * behavior in the Standard C Library's @c FILE streams.
+<span class="lineNum"> 61 </span> : */
+<span class="lineNum"> 62 </span> : // Requirements on traits_type, specific to this class:
+<span class="lineNum"> 63 </span> : // traits_type::pos_type must be fpos&lt;traits_type::state_type&gt;
+<span class="lineNum"> 64 </span> : // traits_type::off_type must be streamoff
+<span class="lineNum"> 65 </span> : // traits_type::state_type must be Assignable and DefaultConstructible,
+<span class="lineNum"> 66 </span> : // and traits_type::state_type() must be the initial state for codecvt.
+<span class="lineNum"> 67 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 68 </span> : class basic_filebuf : public basic_streambuf&lt;_CharT, _Traits&gt;
+<span class="lineNum"> 69 </span> : {
+<span class="lineNum"> 70 </span> : public:
+<span class="lineNum"> 71 </span> : // Types:
+<span class="lineNum"> 72 </span> : typedef _CharT char_type;
+<span class="lineNum"> 73 </span> : typedef _Traits traits_type;
+<span class="lineNum"> 74 </span> : typedef typename traits_type::int_type int_type;
+<span class="lineNum"> 75 </span> : typedef typename traits_type::pos_type pos_type;
+<span class="lineNum"> 76 </span> : typedef typename traits_type::off_type off_type;
+<span class="lineNum"> 77 </span> :
+<span class="lineNum"> 78 </span> : typedef basic_streambuf&lt;char_type, traits_type&gt; __streambuf_type;
+<span class="lineNum"> 79 </span> : typedef basic_filebuf&lt;char_type, traits_type&gt; __filebuf_type;
+<span class="lineNum"> 80 </span> : typedef __basic_file&lt;char&gt; __file_type;
+<span class="lineNum"> 81 </span> : typedef typename traits_type::state_type __state_type;
+<span class="lineNum"> 82 </span> : typedef codecvt&lt;char_type, char, __state_type&gt; __codecvt_type;
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span> : friend class ios_base; // For sync_with_stdio.
+<span class="lineNum"> 85 </span> :
+<span class="lineNum"> 86 </span> : protected:
+<span class="lineNum"> 87 </span> : // Data Members:
+<span class="lineNum"> 88 </span> : // MT lock inherited from libio or other low-level io library.
+<span class="lineNum"> 89 </span> : __c_lock _M_lock;
+<span class="lineNum"> 90 </span> :
+<span class="lineNum"> 91 </span> : // External buffer.
+<span class="lineNum"> 92 </span> : __file_type _M_file;
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span> : /// Place to stash in || out || in | out settings for current filebuf.
+<span class="lineNum"> 95 </span> : ios_base::openmode _M_mode;
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span> : // Beginning state type for codecvt.
+<span class="lineNum"> 98 </span> : __state_type _M_state_beg;
+<span class="lineNum"> 99 </span> :
+<span class="lineNum"> 100 </span> : // During output, the state that corresponds to pptr(),
+<span class="lineNum"> 101 </span> : // during input, the state that corresponds to egptr() and
+<span class="lineNum"> 102 </span> : // _M_ext_next.
+<span class="lineNum"> 103 </span> : __state_type _M_state_cur;
+<span class="lineNum"> 104 </span> :
+<span class="lineNum"> 105 </span> : // Not used for output. During input, the state that corresponds
+<span class="lineNum"> 106 </span> : // to eback() and _M_ext_buf.
+<span class="lineNum"> 107 </span> : __state_type _M_state_last;
+<span class="lineNum"> 108 </span> :
+<span class="lineNum"> 109 </span> : /// Pointer to the beginning of internal buffer.
+<span class="lineNum"> 110 </span> : char_type* _M_buf;
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span> : /**
+<span class="lineNum"> 113 </span> : * Actual size of internal buffer. This number is equal to the size
+<span class="lineNum"> 114 </span> : * of the put area + 1 position, reserved for the overflow char of
+<span class="lineNum"> 115 </span> : * a full area.
+<span class="lineNum"> 116 </span> : */
+<span class="lineNum"> 117 </span> : size_t _M_buf_size;
+<span class="lineNum"> 118 </span> :
+<span class="lineNum"> 119 </span> : // Set iff _M_buf is allocated memory from _M_allocate_internal_buffer.
+<span class="lineNum"> 120 </span> : bool _M_buf_allocated;
+<span class="lineNum"> 121 </span> :
+<span class="lineNum"> 122 </span> : /**
+<span class="lineNum"> 123 </span> : * _M_reading == false &amp;&amp; _M_writing == false for 'uncommitted' mode;
+<span class="lineNum"> 124 </span> : * _M_reading == true for 'read' mode;
+<span class="lineNum"> 125 </span> : * _M_writing == true for 'write' mode;
+<span class="lineNum"> 126 </span> : *
+<span class="lineNum"> 127 </span> : * NB: _M_reading == true &amp;&amp; _M_writing == true is unused.
+<span class="lineNum"> 128 </span> : */
+<span class="lineNum"> 129 </span> : bool _M_reading;
+<span class="lineNum"> 130 </span> : bool _M_writing;
+<span class="lineNum"> 131 </span> :
+<span class="lineNum"> 132 </span> : //@{
+<span class="lineNum"> 133 </span> : /**
+<span class="lineNum"> 134 </span> : * Necessary bits for putback buffer management.
+<span class="lineNum"> 135 </span> : *
+<span class="lineNum"> 136 </span> : * @note pbacks of over one character are not currently supported.
+<span class="lineNum"> 137 </span> : */
+<span class="lineNum"> 138 </span> : char_type _M_pback;
+<span class="lineNum"> 139 </span> : char_type* _M_pback_cur_save;
+<span class="lineNum"> 140 </span> : char_type* _M_pback_end_save;
+<span class="lineNum"> 141 </span> : bool _M_pback_init;
+<span class="lineNum"> 142 </span> : //@}
+<span class="lineNum"> 143 </span> :
+<span class="lineNum"> 144 </span> : // Cached codecvt facet.
+<span class="lineNum"> 145 </span> : const __codecvt_type* _M_codecvt;
+<span class="lineNum"> 146 </span> :
+<span class="lineNum"> 147 </span> : /**
+<span class="lineNum"> 148 </span> : * Buffer for external characters. Used for input when
+<span class="lineNum"> 149 </span> : * codecvt::always_noconv() == false. When valid, this corresponds
+<span class="lineNum"> 150 </span> : * to eback().
+<span class="lineNum"> 151 </span> : */
+<span class="lineNum"> 152 </span> : char* _M_ext_buf;
+<span class="lineNum"> 153 </span> :
+<span class="lineNum"> 154 </span> : /**
+<span class="lineNum"> 155 </span> : * Size of buffer held by _M_ext_buf.
+<span class="lineNum"> 156 </span> : */
+<span class="lineNum"> 157 </span> : streamsize _M_ext_buf_size;
+<span class="lineNum"> 158 </span> :
+<span class="lineNum"> 159 </span> : /**
+<span class="lineNum"> 160 </span> : * Pointers into the buffer held by _M_ext_buf that delimit a
+<span class="lineNum"> 161 </span> : * subsequence of bytes that have been read but not yet converted.
+<span class="lineNum"> 162 </span> : * When valid, _M_ext_next corresponds to egptr().
+<span class="lineNum"> 163 </span> : */
+<span class="lineNum"> 164 </span> : const char* _M_ext_next;
+<span class="lineNum"> 165 </span> : char* _M_ext_end;
+<span class="lineNum"> 166 </span> :
+<span class="lineNum"> 167 </span> : /**
+<span class="lineNum"> 168 </span> : * Initializes pback buffers, and moves normal buffers to safety.
+<span class="lineNum"> 169 </span> : * Assumptions:
+<span class="lineNum"> 170 </span> : * _M_in_cur has already been moved back
+<span class="lineNum"> 171 </span> : */
+<span class="lineNum"> 172 </span> : void
+<span class="lineNum"> 173 </span> : _M_create_pback()
+<span class="lineNum"> 174 </span> : {
+<span class="lineNum"> 175 </span> : if (!_M_pback_init)
+<span class="lineNum"> 176 </span> : {
+<span class="lineNum"> 177 </span> : _M_pback_cur_save = this-&gt;gptr();
+<span class="lineNum"> 178 </span> : _M_pback_end_save = this-&gt;egptr();
+<span class="lineNum"> 179 </span> : this-&gt;setg(&amp;_M_pback, &amp;_M_pback, &amp;_M_pback + 1);
+<span class="lineNum"> 180 </span> : _M_pback_init = true;
+<span class="lineNum"> 181 </span> : }
+<span class="lineNum"> 182 </span> : }
+<span class="lineNum"> 183 </span> :
+<span class="lineNum"> 184 </span> : /**
+<span class="lineNum"> 185 </span> : * Deactivates pback buffer contents, and restores normal buffer.
+<span class="lineNum"> 186 </span> : * Assumptions:
+<span class="lineNum"> 187 </span> : * The pback buffer has only moved forward.
+<span class="lineNum"> 188 </span> : */
+<span class="lineNum"> 189 </span> : void
+<span class="lineNum"> 190 </span> : _M_destroy_pback() throw()
+<span class="lineNum"> 191 </span> : {
+<span class="lineNum"> 192 </span> : if (_M_pback_init)
+<span class="lineNum"> 193 </span> : {
+<span class="lineNum"> 194 </span> : // Length _M_in_cur moved in the pback buffer.
+<span class="lineNum"> 195 </span> : _M_pback_cur_save += this-&gt;gptr() != this-&gt;eback();
+<span class="lineNum"> 196 </span> : this-&gt;setg(_M_buf, _M_pback_cur_save, _M_pback_end_save);
+<span class="lineNum"> 197 </span> : _M_pback_init = false;
+<span class="lineNum"> 198 </span> : }
+<span class="lineNum"> 199 </span> : }
+<span class="lineNum"> 200 </span> :
+<span class="lineNum"> 201 </span> : public:
+<span class="lineNum"> 202 </span> : // Constructors/destructor:
+<span class="lineNum"> 203 </span> : /**
+<span class="lineNum"> 204 </span> : * @brief Does not open any files.
+<span class="lineNum"> 205 </span> : *
+<span class="lineNum"> 206 </span> : * The default constructor initializes the parent class using its
+<span class="lineNum"> 207 </span> : * own default ctor.
+<span class="lineNum"> 208 </span> : */
+<span class="lineNum"> 209 </span> : basic_filebuf();
+<span class="lineNum"> 210 </span> :
+<span class="lineNum"> 211 </span> : /**
+<span class="lineNum"> 212 </span> : * @brief The destructor closes the file first.
+<span class="lineNum"> 213 </span> : */
+<span class="lineNum"> 214 </span> : virtual
+<span class="lineNum"> 215 </span><span class="lineNoCov"> 0 : ~basic_filebuf()</span>
+<span class="lineNum"> 216 </span><span class="lineNoCov"> 0 : { this-&gt;close(); }</span>
+<span class="lineNum"> 217 </span> :
+<span class="lineNum"> 218 </span> : // Members:
+<span class="lineNum"> 219 </span> : /**
+<span class="lineNum"> 220 </span> : * @brief Returns true if the external file is open.
+<span class="lineNum"> 221 </span> : */
+<span class="lineNum"> 222 </span> : bool
+<span class="lineNum"> 223 </span><span class="lineNoCov"> 0 : is_open() const throw()</span>
+<span class="lineNum"> 224 </span><span class="lineNoCov"> 0 : { return _M_file.is_open(); }</span>
+<span class="lineNum"> 225 </span> :
+<span class="lineNum"> 226 </span> : /**
+<span class="lineNum"> 227 </span> : * @brief Opens an external file.
+<span class="lineNum"> 228 </span> : * @param s The name of the file.
+<span class="lineNum"> 229 </span> : * @param mode The open mode flags.
+<span class="lineNum"> 230 </span> : * @return @c this on success, NULL on failure
+<span class="lineNum"> 231 </span> : *
+<span class="lineNum"> 232 </span> : * If a file is already open, this function immediately fails.
+<span class="lineNum"> 233 </span> : * Otherwise it tries to open the file named @a s using the flags
+<span class="lineNum"> 234 </span> : * given in @a mode.
+<span class="lineNum"> 235 </span> : *
+<span class="lineNum"> 236 </span> : * Table 92, adapted here, gives the relation between openmode
+<span class="lineNum"> 237 </span> : * combinations and the equivalent fopen() flags.
+<span class="lineNum"> 238 </span> : * (NB: lines app, in|out|app, in|app, binary|app, binary|in|out|app,
+<span class="lineNum"> 239 </span> : * and binary|in|app per DR 596)
+<span class="lineNum"> 240 </span> : * +---------------------------------------------------------+
+<span class="lineNum"> 241 </span> : * | ios_base Flag combination stdio equivalent |
+<span class="lineNum"> 242 </span> : * |binary in out trunc app |
+<span class="lineNum"> 243 </span> : * +---------------------------------------------------------+
+<span class="lineNum"> 244 </span> : * | + &quot;w&quot; |
+<span class="lineNum"> 245 </span> : * | + + &quot;a&quot; |
+<span class="lineNum"> 246 </span> : * | + &quot;a&quot; |
+<span class="lineNum"> 247 </span> : * | + + &quot;w&quot; |
+<span class="lineNum"> 248 </span> : * | + &quot;r&quot; |
+<span class="lineNum"> 249 </span> : * | + + &quot;r+&quot; |
+<span class="lineNum"> 250 </span> : * | + + + &quot;w+&quot; |
+<span class="lineNum"> 251 </span> : * | + + + &quot;a+&quot; |
+<span class="lineNum"> 252 </span> : * | + + &quot;a+&quot; |
+<span class="lineNum"> 253 </span> : * +---------------------------------------------------------+
+<span class="lineNum"> 254 </span> : * | + + &quot;wb&quot; |
+<span class="lineNum"> 255 </span> : * | + + + &quot;ab&quot; |
+<span class="lineNum"> 256 </span> : * | + + &quot;ab&quot; |
+<span class="lineNum"> 257 </span> : * | + + + &quot;wb&quot; |
+<span class="lineNum"> 258 </span> : * | + + &quot;rb&quot; |
+<span class="lineNum"> 259 </span> : * | + + + &quot;r+b&quot; |
+<span class="lineNum"> 260 </span> : * | + + + + &quot;w+b&quot; |
+<span class="lineNum"> 261 </span> : * | + + + + &quot;a+b&quot; |
+<span class="lineNum"> 262 </span> : * | + + + &quot;a+b&quot; |
+<span class="lineNum"> 263 </span> : * +---------------------------------------------------------+
+<span class="lineNum"> 264 </span> : */
+<span class="lineNum"> 265 </span> : __filebuf_type*
+<span class="lineNum"> 266 </span> : open(const char* __s, ios_base::openmode __mode);
+<span class="lineNum"> 267 </span> :
+<span class="lineNum"> 268 </span> : /**
+<span class="lineNum"> 269 </span> : * @brief Closes the currently associated file.
+<span class="lineNum"> 270 </span> : * @return @c this on success, NULL on failure
+<span class="lineNum"> 271 </span> : *
+<span class="lineNum"> 272 </span> : * If no file is currently open, this function immediately fails.
+<span class="lineNum"> 273 </span> : *
+<span class="lineNum"> 274 </span> : * If a &quot;put buffer area&quot; exists, @c overflow(eof) is called to flush
+<span class="lineNum"> 275 </span> : * all the characters. The file is then closed.
+<span class="lineNum"> 276 </span> : *
+<span class="lineNum"> 277 </span> : * If any operations fail, this function also fails.
+<span class="lineNum"> 278 </span> : */
+<span class="lineNum"> 279 </span> : __filebuf_type*
+<span class="lineNum"> 280 </span> : close();
+<span class="lineNum"> 281 </span> :
+<span class="lineNum"> 282 </span> : protected:
+<span class="lineNum"> 283 </span> : void
+<span class="lineNum"> 284 </span> : _M_allocate_internal_buffer();
+<span class="lineNum"> 285 </span> :
+<span class="lineNum"> 286 </span> : void
+<span class="lineNum"> 287 </span> : _M_destroy_internal_buffer() throw();
+<span class="lineNum"> 288 </span> :
+<span class="lineNum"> 289 </span> : // [27.8.1.4] overridden virtual functions
+<span class="lineNum"> 290 </span> : virtual streamsize
+<span class="lineNum"> 291 </span> : showmanyc();
+<span class="lineNum"> 292 </span> :
+<span class="lineNum"> 293 </span> : // Stroustrup, 1998, p. 628
+<span class="lineNum"> 294 </span> : // underflow() and uflow() functions are called to get the next
+<span class="lineNum"> 295 </span> : // character from the real input source when the buffer is empty.
+<span class="lineNum"> 296 </span> : // Buffered input uses underflow()
+<span class="lineNum"> 297 </span> :
+<span class="lineNum"> 298 </span> : virtual int_type
+<span class="lineNum"> 299 </span> : underflow();
+<span class="lineNum"> 300 </span> :
+<span class="lineNum"> 301 </span> : virtual int_type
+<span class="lineNum"> 302 </span> : pbackfail(int_type __c = _Traits::eof());
+<span class="lineNum"> 303 </span> :
+<span class="lineNum"> 304 </span> : // Stroustrup, 1998, p 648
+<span class="lineNum"> 305 </span> : // The overflow() function is called to transfer characters to the
+<span class="lineNum"> 306 </span> : // real output destination when the buffer is full. A call to
+<span class="lineNum"> 307 </span> : // overflow(c) outputs the contents of the buffer plus the
+<span class="lineNum"> 308 </span> : // character c.
+<span class="lineNum"> 309 </span> : // 27.5.2.4.5
+<span class="lineNum"> 310 </span> : // Consume some sequence of the characters in the pending sequence.
+<span class="lineNum"> 311 </span> : virtual int_type
+<span class="lineNum"> 312 </span> : overflow(int_type __c = _Traits::eof());
+<span class="lineNum"> 313 </span> :
+<span class="lineNum"> 314 </span> : // Convert internal byte sequence to external, char-based
+<span class="lineNum"> 315 </span> : // sequence via codecvt.
+<span class="lineNum"> 316 </span> : bool
+<span class="lineNum"> 317 </span> : _M_convert_to_external(char_type*, streamsize);
+<span class="lineNum"> 318 </span> :
+<span class="lineNum"> 319 </span> : /**
+<span class="lineNum"> 320 </span> : * @brief Manipulates the buffer.
+<span class="lineNum"> 321 </span> : * @param s Pointer to a buffer area.
+<span class="lineNum"> 322 </span> : * @param n Size of @a s.
+<span class="lineNum"> 323 </span> : * @return @c this
+<span class="lineNum"> 324 </span> : *
+<span class="lineNum"> 325 </span> : * If no file has been opened, and both @a s and @a n are zero, then
+<span class="lineNum"> 326 </span> : * the stream becomes unbuffered. Otherwise, @c s is used as a
+<span class="lineNum"> 327 </span> : * buffer; see
+<span class="lineNum"> 328 </span> : * http://gcc.gnu.org/onlinedocs/libstdc++/27_io/howto.html#2
+<span class="lineNum"> 329 </span> : * for more.
+<span class="lineNum"> 330 </span> : */
+<span class="lineNum"> 331 </span> : virtual __streambuf_type*
+<span class="lineNum"> 332 </span> : setbuf(char_type* __s, streamsize __n);
+<span class="lineNum"> 333 </span> :
+<span class="lineNum"> 334 </span> : virtual pos_type
+<span class="lineNum"> 335 </span> : seekoff(off_type __off, ios_base::seekdir __way,
+<span class="lineNum"> 336 </span> : ios_base::openmode __mode = ios_base::in | ios_base::out);
+<span class="lineNum"> 337 </span> :
+<span class="lineNum"> 338 </span> : virtual pos_type
+<span class="lineNum"> 339 </span> : seekpos(pos_type __pos,
+<span class="lineNum"> 340 </span> : ios_base::openmode __mode = ios_base::in | ios_base::out);
+<span class="lineNum"> 341 </span> :
+<span class="lineNum"> 342 </span> : // Common code for seekoff and seekpos
+<span class="lineNum"> 343 </span> : pos_type
+<span class="lineNum"> 344 </span> : _M_seek(off_type __off, ios_base::seekdir __way, __state_type __state);
+<span class="lineNum"> 345 </span> :
+<span class="lineNum"> 346 </span> : virtual int
+<span class="lineNum"> 347 </span> : sync();
+<span class="lineNum"> 348 </span> :
+<span class="lineNum"> 349 </span> : virtual void
+<span class="lineNum"> 350 </span> : imbue(const locale&amp; __loc);
+<span class="lineNum"> 351 </span> :
+<span class="lineNum"> 352 </span> : virtual streamsize
+<span class="lineNum"> 353 </span> : xsgetn(char_type* __s, streamsize __n);
+<span class="lineNum"> 354 </span> :
+<span class="lineNum"> 355 </span> : virtual streamsize
+<span class="lineNum"> 356 </span> : xsputn(const char_type* __s, streamsize __n);
+<span class="lineNum"> 357 </span> :
+<span class="lineNum"> 358 </span> : // Flushes output buffer, then writes unshift sequence.
+<span class="lineNum"> 359 </span> : bool
+<span class="lineNum"> 360 </span> : _M_terminate_output();
+<span class="lineNum"> 361 </span> :
+<span class="lineNum"> 362 </span> : /**
+<span class="lineNum"> 363 </span> : * This function sets the pointers of the internal buffer, both get
+<span class="lineNum"> 364 </span> : * and put areas. Typically:
+<span class="lineNum"> 365 </span> : *
+<span class="lineNum"> 366 </span> : * __off == egptr() - eback() upon underflow/uflow ('read' mode);
+<span class="lineNum"> 367 </span> : * __off == 0 upon overflow ('write' mode);
+<span class="lineNum"> 368 </span> : * __off == -1 upon open, setbuf, seekoff/pos ('uncommitted' mode).
+<span class="lineNum"> 369 </span> : *
+<span class="lineNum"> 370 </span> : * NB: epptr() - pbase() == _M_buf_size - 1, since _M_buf_size
+<span class="lineNum"> 371 </span> : * reflects the actual allocated memory and the last cell is reserved
+<span class="lineNum"> 372 </span> : * for the overflow char of a full put area.
+<span class="lineNum"> 373 </span> : */
+<span class="lineNum"> 374 </span> : void
+<span class="lineNum"> 375 </span> : _M_set_buffer(streamsize __off)
+<span class="lineNum"> 376 </span> : {
+<span class="lineNum"> 377 </span> : const bool __testin = _M_mode &amp; ios_base::in;
+<span class="lineNum"> 378 </span> : const bool __testout = _M_mode &amp; ios_base::out;
+<span class="lineNum"> 379 </span> :
+<span class="lineNum"> 380 </span> : if (__testin &amp;&amp; __off &gt; 0)
+<span class="lineNum"> 381 </span> : this-&gt;setg(_M_buf, _M_buf, _M_buf + __off);
+<span class="lineNum"> 382 </span> : else
+<span class="lineNum"> 383 </span> : this-&gt;setg(_M_buf, _M_buf, _M_buf);
+<span class="lineNum"> 384 </span> :
+<span class="lineNum"> 385 </span> : if (__testout &amp;&amp; __off == 0 &amp;&amp; _M_buf_size &gt; 1 )
+<span class="lineNum"> 386 </span> : this-&gt;setp(_M_buf, _M_buf + _M_buf_size - 1);
+<span class="lineNum"> 387 </span> : else
+<span class="lineNum"> 388 </span> : this-&gt;setp(NULL, NULL);
+<span class="lineNum"> 389 </span> : }
+<span class="lineNum"> 390 </span> : };
+<span class="lineNum"> 391 </span> :
+<span class="lineNum"> 392 </span> : // [27.8.1.5] Template class basic_ifstream
+<span class="lineNum"> 393 </span> : /**
+<span class="lineNum"> 394 </span> : * @brief Controlling input for files.
+<span class="lineNum"> 395 </span> : *
+<span class="lineNum"> 396 </span> : * This class supports reading from named files, using the inherited
+<span class="lineNum"> 397 </span> : * functions from std::basic_istream. To control the associated
+<span class="lineNum"> 398 </span> : * sequence, an instance of std::basic_filebuf is used, which this page
+<span class="lineNum"> 399 </span> : * refers to as @c sb.
+<span class="lineNum"> 400 </span> : */
+<span class="lineNum"> 401 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 402 </span> : class basic_ifstream : public basic_istream&lt;_CharT, _Traits&gt;
+<span class="lineNum"> 403 </span> : {
+<span class="lineNum"> 404 </span> : public:
+<span class="lineNum"> 405 </span> : // Types:
+<span class="lineNum"> 406 </span> : typedef _CharT char_type;
+<span class="lineNum"> 407 </span> : typedef _Traits traits_type;
+<span class="lineNum"> 408 </span> : typedef typename traits_type::int_type int_type;
+<span class="lineNum"> 409 </span> : typedef typename traits_type::pos_type pos_type;
+<span class="lineNum"> 410 </span> : typedef typename traits_type::off_type off_type;
+<span class="lineNum"> 411 </span> :
+<span class="lineNum"> 412 </span> : // Non-standard types:
+<span class="lineNum"> 413 </span> : typedef basic_filebuf&lt;char_type, traits_type&gt; __filebuf_type;
+<span class="lineNum"> 414 </span> : typedef basic_istream&lt;char_type, traits_type&gt; __istream_type;
+<span class="lineNum"> 415 </span> :
+<span class="lineNum"> 416 </span> : private:
+<span class="lineNum"> 417 </span> : __filebuf_type _M_filebuf;
+<span class="lineNum"> 418 </span> :
+<span class="lineNum"> 419 </span> : public:
+<span class="lineNum"> 420 </span> : // Constructors/Destructors:
+<span class="lineNum"> 421 </span> : /**
+<span class="lineNum"> 422 </span> : * @brief Default constructor.
+<span class="lineNum"> 423 </span> : *
+<span class="lineNum"> 424 </span> : * Initializes @c sb using its default constructor, and passes
+<span class="lineNum"> 425 </span> : * @c &amp;sb to the base class initializer. Does not open any files
+<span class="lineNum"> 426 </span> : * (you haven't given it a filename to open).
+<span class="lineNum"> 427 </span> : */
+<span class="lineNum"> 428 </span><span class="lineNoCov"> 0 : basic_ifstream() : __istream_type(), _M_filebuf()</span>
+<span class="lineNum"> 429 </span><span class="lineNoCov"> 0 : { this-&gt;init(&amp;_M_filebuf); }</span>
+<span class="lineNum"> 430 </span> :
+<span class="lineNum"> 431 </span> : /**
+<span class="lineNum"> 432 </span> : * @brief Create an input file stream.
+<span class="lineNum"> 433 </span> : * @param s Null terminated string specifying the filename.
+<span class="lineNum"> 434 </span> : * @param mode Open file in specified mode (see std::ios_base).
+<span class="lineNum"> 435 </span> : *
+<span class="lineNum"> 436 </span> : * @c ios_base::in is automatically included in @a mode.
+<span class="lineNum"> 437 </span> : *
+<span class="lineNum"> 438 </span> : * Tip: When using std::string to hold the filename, you must use
+<span class="lineNum"> 439 </span> : * .c_str() before passing it to this constructor.
+<span class="lineNum"> 440 </span> : */
+<span class="lineNum"> 441 </span> : explicit
+<span class="lineNum"> 442 </span><span class="lineNoCov"> 0 : basic_ifstream(const char* __s, ios_base::openmode __mode = ios_base::in)</span>
+<span class="lineNum"> 443 </span><span class="lineNoCov"> 0 : : __istream_type(), _M_filebuf()</span>
+<span class="lineNum"> 444 </span> : {
+<span class="lineNum"> 445 </span><span class="lineNoCov"> 0 : this-&gt;init(&amp;_M_filebuf);</span>
+<span class="lineNum"> 446 </span><span class="lineNoCov"> 0 : this-&gt;open(__s, __mode);</span>
+<span class="lineNum"> 447 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 448 </span> :
+<span class="lineNum"> 449 </span> : /**
+<span class="lineNum"> 450 </span> : * @brief The destructor does nothing.
+<span class="lineNum"> 451 </span> : *
+<span class="lineNum"> 452 </span> : * The file is closed by the filebuf object, not the formatting
+<span class="lineNum"> 453 </span> : * stream.
+<span class="lineNum"> 454 </span> : */
+<span class="lineNum"> 455 </span><span class="lineNoCov"> 0 : ~basic_ifstream()</span>
+<span class="lineNum"> 456 </span><span class="lineNoCov"> 0 : { }</span>
+<span class="lineNum"> 457 </span> :
+<span class="lineNum"> 458 </span> : // Members:
+<span class="lineNum"> 459 </span> : /**
+<span class="lineNum"> 460 </span> : * @brief Accessing the underlying buffer.
+<span class="lineNum"> 461 </span> : * @return The current basic_filebuf buffer.
+<span class="lineNum"> 462 </span> : *
+<span class="lineNum"> 463 </span> : * This hides both signatures of std::basic_ios::rdbuf().
+<span class="lineNum"> 464 </span> : */
+<span class="lineNum"> 465 </span> : __filebuf_type*
+<span class="lineNum"> 466 </span> : rdbuf() const
+<span class="lineNum"> 467 </span> : { return const_cast&lt;__filebuf_type*&gt;(&amp;_M_filebuf); }
+<span class="lineNum"> 468 </span> :
+<span class="lineNum"> 469 </span> : /**
+<span class="lineNum"> 470 </span> : * @brief Wrapper to test for an open file.
+<span class="lineNum"> 471 </span> : * @return @c rdbuf()-&gt;is_open()
+<span class="lineNum"> 472 </span> : */
+<span class="lineNum"> 473 </span> : bool
+<span class="lineNum"> 474 </span><span class="lineNoCov"> 0 : is_open()</span>
+<span class="lineNum"> 475 </span><span class="lineNoCov"> 0 : { return _M_filebuf.is_open(); }</span>
+<span class="lineNum"> 476 </span> :
+<span class="lineNum"> 477 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 478 </span> : // 365. Lack of const-qualification in clause 27
+<span class="lineNum"> 479 </span> : bool
+<span class="lineNum"> 480 </span> : is_open() const
+<span class="lineNum"> 481 </span> : { return _M_filebuf.is_open(); }
+<span class="lineNum"> 482 </span> :
+<span class="lineNum"> 483 </span> : /**
+<span class="lineNum"> 484 </span> : * @brief Opens an external file.
+<span class="lineNum"> 485 </span> : * @param s The name of the file.
+<span class="lineNum"> 486 </span> : * @param mode The open mode flags.
+<span class="lineNum"> 487 </span> : *
+<span class="lineNum"> 488 </span> : * Calls @c std::basic_filebuf::open(s,mode|in). If that function
+<span class="lineNum"> 489 </span> : * fails, @c failbit is set in the stream's error state.
+<span class="lineNum"> 490 </span> : *
+<span class="lineNum"> 491 </span> : * Tip: When using std::string to hold the filename, you must use
+<span class="lineNum"> 492 </span> : * .c_str() before passing it to this constructor.
+<span class="lineNum"> 493 </span> : */
+<span class="lineNum"> 494 </span> : void
+<span class="lineNum"> 495 </span><span class="lineNoCov"> 0 : open(const char* __s, ios_base::openmode __mode = ios_base::in)</span>
+<span class="lineNum"> 496 </span> : {
+<span class="lineNum"> 497 </span><span class="lineNoCov"> 0 : if (!_M_filebuf.open(__s, __mode | ios_base::in))</span>
+<span class="lineNum"> 498 </span><span class="lineNoCov"> 0 : this-&gt;setstate(ios_base::failbit);</span>
+<span class="lineNum"> 499 </span> : else
+<span class="lineNum"> 500 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 501 </span> : // 409. Closing an fstream should clear error state
+<span class="lineNum"> 502 </span><span class="lineNoCov"> 0 : this-&gt;clear();</span>
+<span class="lineNum"> 503 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 504 </span> :
+<span class="lineNum"> 505 </span> : /**
+<span class="lineNum"> 506 </span> : * @brief Close the file.
+<span class="lineNum"> 507 </span> : *
+<span class="lineNum"> 508 </span> : * Calls @c std::basic_filebuf::close(). If that function
+<span class="lineNum"> 509 </span> : * fails, @c failbit is set in the stream's error state.
+<span class="lineNum"> 510 </span> : */
+<span class="lineNum"> 511 </span> : void
+<span class="lineNum"> 512 </span><span class="lineNoCov"> 0 : close()</span>
+<span class="lineNum"> 513 </span> : {
+<span class="lineNum"> 514 </span><span class="lineNoCov"> 0 : if (!_M_filebuf.close())</span>
+<span class="lineNum"> 515 </span><span class="lineNoCov"> 0 : this-&gt;setstate(ios_base::failbit);</span>
+<span class="lineNum"> 516 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 517 </span> : };
+<span class="lineNum"> 518 </span> :
+<span class="lineNum"> 519 </span> :
+<span class="lineNum"> 520 </span> : // [27.8.1.8] Template class basic_ofstream
+<span class="lineNum"> 521 </span> : /**
+<span class="lineNum"> 522 </span> : * @brief Controlling output for files.
+<span class="lineNum"> 523 </span> : *
+<span class="lineNum"> 524 </span> : * This class supports reading from named files, using the inherited
+<span class="lineNum"> 525 </span> : * functions from std::basic_ostream. To control the associated
+<span class="lineNum"> 526 </span> : * sequence, an instance of std::basic_filebuf is used, which this page
+<span class="lineNum"> 527 </span> : * refers to as @c sb.
+<span class="lineNum"> 528 </span> : */
+<span class="lineNum"> 529 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 530 </span> : class basic_ofstream : public basic_ostream&lt;_CharT,_Traits&gt;
+<span class="lineNum"> 531 </span> : {
+<span class="lineNum"> 532 </span> : public:
+<span class="lineNum"> 533 </span> : // Types:
+<span class="lineNum"> 534 </span> : typedef _CharT char_type;
+<span class="lineNum"> 535 </span> : typedef _Traits traits_type;
+<span class="lineNum"> 536 </span> : typedef typename traits_type::int_type int_type;
+<span class="lineNum"> 537 </span> : typedef typename traits_type::pos_type pos_type;
+<span class="lineNum"> 538 </span> : typedef typename traits_type::off_type off_type;
+<span class="lineNum"> 539 </span> :
+<span class="lineNum"> 540 </span> : // Non-standard types:
+<span class="lineNum"> 541 </span> : typedef basic_filebuf&lt;char_type, traits_type&gt; __filebuf_type;
+<span class="lineNum"> 542 </span> : typedef basic_ostream&lt;char_type, traits_type&gt; __ostream_type;
+<span class="lineNum"> 543 </span> :
+<span class="lineNum"> 544 </span> : private:
+<span class="lineNum"> 545 </span> : __filebuf_type _M_filebuf;
+<span class="lineNum"> 546 </span> :
+<span class="lineNum"> 547 </span> : public:
+<span class="lineNum"> 548 </span> : // Constructors:
+<span class="lineNum"> 549 </span> : /**
+<span class="lineNum"> 550 </span> : * @brief Default constructor.
+<span class="lineNum"> 551 </span> : *
+<span class="lineNum"> 552 </span> : * Initializes @c sb using its default constructor, and passes
+<span class="lineNum"> 553 </span> : * @c &amp;sb to the base class initializer. Does not open any files
+<span class="lineNum"> 554 </span> : * (you haven't given it a filename to open).
+<span class="lineNum"> 555 </span> : */
+<span class="lineNum"> 556 </span> : basic_ofstream(): __ostream_type(), _M_filebuf()
+<span class="lineNum"> 557 </span> : { this-&gt;init(&amp;_M_filebuf); }
+<span class="lineNum"> 558 </span> :
+<span class="lineNum"> 559 </span> : /**
+<span class="lineNum"> 560 </span> : * @brief Create an output file stream.
+<span class="lineNum"> 561 </span> : * @param s Null terminated string specifying the filename.
+<span class="lineNum"> 562 </span> : * @param mode Open file in specified mode (see std::ios_base).
+<span class="lineNum"> 563 </span> : *
+<span class="lineNum"> 564 </span> : * @c ios_base::out|ios_base::trunc is automatically included in
+<span class="lineNum"> 565 </span> : * @a mode.
+<span class="lineNum"> 566 </span> : *
+<span class="lineNum"> 567 </span> : * Tip: When using std::string to hold the filename, you must use
+<span class="lineNum"> 568 </span> : * .c_str() before passing it to this constructor.
+<span class="lineNum"> 569 </span> : */
+<span class="lineNum"> 570 </span> : explicit
+<span class="lineNum"> 571 </span> : basic_ofstream(const char* __s,
+<span class="lineNum"> 572 </span><span class="lineNoCov"> 0 : ios_base::openmode __mode = ios_base::out|ios_base::trunc)</span>
+<span class="lineNum"> 573 </span><span class="lineNoCov"> 0 : : __ostream_type(), _M_filebuf()</span>
+<span class="lineNum"> 574 </span> : {
+<span class="lineNum"> 575 </span><span class="lineNoCov"> 0 : this-&gt;init(&amp;_M_filebuf);</span>
+<span class="lineNum"> 576 </span><span class="lineNoCov"> 0 : this-&gt;open(__s, __mode);</span>
+<span class="lineNum"> 577 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 578 </span> :
+<span class="lineNum"> 579 </span> : /**
+<span class="lineNum"> 580 </span> : * @brief The destructor does nothing.
+<span class="lineNum"> 581 </span> : *
+<span class="lineNum"> 582 </span> : * The file is closed by the filebuf object, not the formatting
+<span class="lineNum"> 583 </span> : * stream.
+<span class="lineNum"> 584 </span> : */
+<span class="lineNum"> 585 </span><span class="lineNoCov"> 0 : ~basic_ofstream()</span>
+<span class="lineNum"> 586 </span><span class="lineNoCov"> 0 : { }</span>
+<span class="lineNum"> 587 </span> :
+<span class="lineNum"> 588 </span> : // Members:
+<span class="lineNum"> 589 </span> : /**
+<span class="lineNum"> 590 </span> : * @brief Accessing the underlying buffer.
+<span class="lineNum"> 591 </span> : * @return The current basic_filebuf buffer.
+<span class="lineNum"> 592 </span> : *
+<span class="lineNum"> 593 </span> : * This hides both signatures of std::basic_ios::rdbuf().
+<span class="lineNum"> 594 </span> : */
+<span class="lineNum"> 595 </span> : __filebuf_type*
+<span class="lineNum"> 596 </span> : rdbuf() const
+<span class="lineNum"> 597 </span> : { return const_cast&lt;__filebuf_type*&gt;(&amp;_M_filebuf); }
+<span class="lineNum"> 598 </span> :
+<span class="lineNum"> 599 </span> : /**
+<span class="lineNum"> 600 </span> : * @brief Wrapper to test for an open file.
+<span class="lineNum"> 601 </span> : * @return @c rdbuf()-&gt;is_open()
+<span class="lineNum"> 602 </span> : */
+<span class="lineNum"> 603 </span> : bool
+<span class="lineNum"> 604 </span><span class="lineNoCov"> 0 : is_open()</span>
+<span class="lineNum"> 605 </span><span class="lineNoCov"> 0 : { return _M_filebuf.is_open(); }</span>
+<span class="lineNum"> 606 </span> :
+<span class="lineNum"> 607 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 608 </span> : // 365. Lack of const-qualification in clause 27
+<span class="lineNum"> 609 </span> : bool
+<span class="lineNum"> 610 </span> : is_open() const
+<span class="lineNum"> 611 </span> : { return _M_filebuf.is_open(); }
+<span class="lineNum"> 612 </span> :
+<span class="lineNum"> 613 </span> : /**
+<span class="lineNum"> 614 </span> : * @brief Opens an external file.
+<span class="lineNum"> 615 </span> : * @param s The name of the file.
+<span class="lineNum"> 616 </span> : * @param mode The open mode flags.
+<span class="lineNum"> 617 </span> : *
+<span class="lineNum"> 618 </span> : * Calls @c std::basic_filebuf::open(s,mode|out|trunc). If that
+<span class="lineNum"> 619 </span> : * function fails, @c failbit is set in the stream's error state.
+<span class="lineNum"> 620 </span> : *
+<span class="lineNum"> 621 </span> : * Tip: When using std::string to hold the filename, you must use
+<span class="lineNum"> 622 </span> : * .c_str() before passing it to this constructor.
+<span class="lineNum"> 623 </span> : */
+<span class="lineNum"> 624 </span> : void
+<span class="lineNum"> 625 </span> : open(const char* __s,
+<span class="lineNum"> 626 </span><span class="lineNoCov"> 0 : ios_base::openmode __mode = ios_base::out | ios_base::trunc)</span>
+<span class="lineNum"> 627 </span> : {
+<span class="lineNum"> 628 </span><span class="lineNoCov"> 0 : if (!_M_filebuf.open(__s, __mode | ios_base::out))</span>
+<span class="lineNum"> 629 </span><span class="lineNoCov"> 0 : this-&gt;setstate(ios_base::failbit);</span>
+<span class="lineNum"> 630 </span> : else
+<span class="lineNum"> 631 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 632 </span> : // 409. Closing an fstream should clear error state
+<span class="lineNum"> 633 </span><span class="lineNoCov"> 0 : this-&gt;clear();</span>
+<span class="lineNum"> 634 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 635 </span> :
+<span class="lineNum"> 636 </span> : /**
+<span class="lineNum"> 637 </span> : * @brief Close the file.
+<span class="lineNum"> 638 </span> : *
+<span class="lineNum"> 639 </span> : * Calls @c std::basic_filebuf::close(). If that function
+<span class="lineNum"> 640 </span> : * fails, @c failbit is set in the stream's error state.
+<span class="lineNum"> 641 </span> : */
+<span class="lineNum"> 642 </span> : void
+<span class="lineNum"> 643 </span> : close()
+<span class="lineNum"> 644 </span> : {
+<span class="lineNum"> 645 </span> : if (!_M_filebuf.close())
+<span class="lineNum"> 646 </span> : this-&gt;setstate(ios_base::failbit);
+<span class="lineNum"> 647 </span> : }
+<span class="lineNum"> 648 </span> : };
+<span class="lineNum"> 649 </span> :
+<span class="lineNum"> 650 </span> :
+<span class="lineNum"> 651 </span> : // [27.8.1.11] Template class basic_fstream
+<span class="lineNum"> 652 </span> : /**
+<span class="lineNum"> 653 </span> : * @brief Controlling input and output for files.
+<span class="lineNum"> 654 </span> : *
+<span class="lineNum"> 655 </span> : * This class supports reading from and writing to named files, using
+<span class="lineNum"> 656 </span> : * the inherited functions from std::basic_iostream. To control the
+<span class="lineNum"> 657 </span> : * associated sequence, an instance of std::basic_filebuf is used, which
+<span class="lineNum"> 658 </span> : * this page refers to as @c sb.
+<span class="lineNum"> 659 </span> : */
+<span class="lineNum"> 660 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 661 </span> : class basic_fstream : public basic_iostream&lt;_CharT, _Traits&gt;
+<span class="lineNum"> 662 </span> : {
+<span class="lineNum"> 663 </span> : public:
+<span class="lineNum"> 664 </span> : // Types:
+<span class="lineNum"> 665 </span> : typedef _CharT char_type;
+<span class="lineNum"> 666 </span> : typedef _Traits traits_type;
+<span class="lineNum"> 667 </span> : typedef typename traits_type::int_type int_type;
+<span class="lineNum"> 668 </span> : typedef typename traits_type::pos_type pos_type;
+<span class="lineNum"> 669 </span> : typedef typename traits_type::off_type off_type;
+<span class="lineNum"> 670 </span> :
+<span class="lineNum"> 671 </span> : // Non-standard types:
+<span class="lineNum"> 672 </span> : typedef basic_filebuf&lt;char_type, traits_type&gt; __filebuf_type;
+<span class="lineNum"> 673 </span> : typedef basic_ios&lt;char_type, traits_type&gt; __ios_type;
+<span class="lineNum"> 674 </span> : typedef basic_iostream&lt;char_type, traits_type&gt; __iostream_type;
+<span class="lineNum"> 675 </span> :
+<span class="lineNum"> 676 </span> : private:
+<span class="lineNum"> 677 </span> : __filebuf_type _M_filebuf;
+<span class="lineNum"> 678 </span> :
+<span class="lineNum"> 679 </span> : public:
+<span class="lineNum"> 680 </span> : // Constructors/destructor:
+<span class="lineNum"> 681 </span> : /**
+<span class="lineNum"> 682 </span> : * @brief Default constructor.
+<span class="lineNum"> 683 </span> : *
+<span class="lineNum"> 684 </span> : * Initializes @c sb using its default constructor, and passes
+<span class="lineNum"> 685 </span> : * @c &amp;sb to the base class initializer. Does not open any files
+<span class="lineNum"> 686 </span> : * (you haven't given it a filename to open).
+<span class="lineNum"> 687 </span> : */
+<span class="lineNum"> 688 </span> : basic_fstream()
+<span class="lineNum"> 689 </span> : : __iostream_type(), _M_filebuf()
+<span class="lineNum"> 690 </span> : { this-&gt;init(&amp;_M_filebuf); }
+<span class="lineNum"> 691 </span> :
+<span class="lineNum"> 692 </span> : /**
+<span class="lineNum"> 693 </span> : * @brief Create an input/output file stream.
+<span class="lineNum"> 694 </span> : * @param s Null terminated string specifying the filename.
+<span class="lineNum"> 695 </span> : * @param mode Open file in specified mode (see std::ios_base).
+<span class="lineNum"> 696 </span> : *
+<span class="lineNum"> 697 </span> : * Tip: When using std::string to hold the filename, you must use
+<span class="lineNum"> 698 </span> : * .c_str() before passing it to this constructor.
+<span class="lineNum"> 699 </span> : */
+<span class="lineNum"> 700 </span> : explicit
+<span class="lineNum"> 701 </span> : basic_fstream(const char* __s,
+<span class="lineNum"> 702 </span> : ios_base::openmode __mode = ios_base::in | ios_base::out)
+<span class="lineNum"> 703 </span> : : __iostream_type(NULL), _M_filebuf()
+<span class="lineNum"> 704 </span> : {
+<span class="lineNum"> 705 </span> : this-&gt;init(&amp;_M_filebuf);
+<span class="lineNum"> 706 </span> : this-&gt;open(__s, __mode);
+<span class="lineNum"> 707 </span> : }
+<span class="lineNum"> 708 </span> :
+<span class="lineNum"> 709 </span> : /**
+<span class="lineNum"> 710 </span> : * @brief The destructor does nothing.
+<span class="lineNum"> 711 </span> : *
+<span class="lineNum"> 712 </span> : * The file is closed by the filebuf object, not the formatting
+<span class="lineNum"> 713 </span> : * stream.
+<span class="lineNum"> 714 </span> : */
+<span class="lineNum"> 715 </span> : ~basic_fstream()
+<span class="lineNum"> 716 </span> : { }
+<span class="lineNum"> 717 </span> :
+<span class="lineNum"> 718 </span> : // Members:
+<span class="lineNum"> 719 </span> : /**
+<span class="lineNum"> 720 </span> : * @brief Accessing the underlying buffer.
+<span class="lineNum"> 721 </span> : * @return The current basic_filebuf buffer.
+<span class="lineNum"> 722 </span> : *
+<span class="lineNum"> 723 </span> : * This hides both signatures of std::basic_ios::rdbuf().
+<span class="lineNum"> 724 </span> : */
+<span class="lineNum"> 725 </span> : __filebuf_type*
+<span class="lineNum"> 726 </span> : rdbuf() const
+<span class="lineNum"> 727 </span> : { return const_cast&lt;__filebuf_type*&gt;(&amp;_M_filebuf); }
+<span class="lineNum"> 728 </span> :
+<span class="lineNum"> 729 </span> : /**
+<span class="lineNum"> 730 </span> : * @brief Wrapper to test for an open file.
+<span class="lineNum"> 731 </span> : * @return @c rdbuf()-&gt;is_open()
+<span class="lineNum"> 732 </span> : */
+<span class="lineNum"> 733 </span> : bool
+<span class="lineNum"> 734 </span> : is_open()
+<span class="lineNum"> 735 </span> : { return _M_filebuf.is_open(); }
+<span class="lineNum"> 736 </span> :
+<span class="lineNum"> 737 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 738 </span> : // 365. Lack of const-qualification in clause 27
+<span class="lineNum"> 739 </span> : bool
+<span class="lineNum"> 740 </span> : is_open() const
+<span class="lineNum"> 741 </span> : { return _M_filebuf.is_open(); }
+<span class="lineNum"> 742 </span> :
+<span class="lineNum"> 743 </span> : /**
+<span class="lineNum"> 744 </span> : * @brief Opens an external file.
+<span class="lineNum"> 745 </span> : * @param s The name of the file.
+<span class="lineNum"> 746 </span> : * @param mode The open mode flags.
+<span class="lineNum"> 747 </span> : *
+<span class="lineNum"> 748 </span> : * Calls @c std::basic_filebuf::open(s,mode). If that
+<span class="lineNum"> 749 </span> : * function fails, @c failbit is set in the stream's error state.
+<span class="lineNum"> 750 </span> : *
+<span class="lineNum"> 751 </span> : * Tip: When using std::string to hold the filename, you must use
+<span class="lineNum"> 752 </span> : * .c_str() before passing it to this constructor.
+<span class="lineNum"> 753 </span> : */
+<span class="lineNum"> 754 </span> : void
+<span class="lineNum"> 755 </span> : open(const char* __s,
+<span class="lineNum"> 756 </span> : ios_base::openmode __mode = ios_base::in | ios_base::out)
+<span class="lineNum"> 757 </span> : {
+<span class="lineNum"> 758 </span> : if (!_M_filebuf.open(__s, __mode))
+<span class="lineNum"> 759 </span> : this-&gt;setstate(ios_base::failbit);
+<span class="lineNum"> 760 </span> : else
+<span class="lineNum"> 761 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 762 </span> : // 409. Closing an fstream should clear error state
+<span class="lineNum"> 763 </span> : this-&gt;clear();
+<span class="lineNum"> 764 </span> : }
+<span class="lineNum"> 765 </span> :
+<span class="lineNum"> 766 </span> : /**
+<span class="lineNum"> 767 </span> : * @brief Close the file.
+<span class="lineNum"> 768 </span> : *
+<span class="lineNum"> 769 </span> : * Calls @c std::basic_filebuf::close(). If that function
+<span class="lineNum"> 770 </span> : * fails, @c failbit is set in the stream's error state.
+<span class="lineNum"> 771 </span> : */
+<span class="lineNum"> 772 </span> : void
+<span class="lineNum"> 773 </span> : close()
+<span class="lineNum"> 774 </span> : {
+<span class="lineNum"> 775 </span> : if (!_M_filebuf.close())
+<span class="lineNum"> 776 </span> : this-&gt;setstate(ios_base::failbit);
+<span class="lineNum"> 777 </span> : }
+<span class="lineNum"> 778 </span> : };
+<span class="lineNum"> 779 </span> :
+<span class="lineNum"> 780 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 781 </span> :
+<span class="lineNum"> 782 </span> : #ifndef _GLIBCXX_EXPORT_TEMPLATE
+<span class="lineNum"> 783 </span> : # include &lt;bits/fstream.tcc&gt;
+<span class="lineNum"> 784 </span> : #endif
+<span class="lineNum"> 785 </span> :
+<span class="lineNum"> 786 </span> : #endif /* _GLIBCXX_FSTREAM */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h.gcov.html b/rep/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h.gcov.html
new file mode 100644
index 0000000..5529fc3
--- /dev/null
+++ b/rep/usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h.gcov.html
@@ -0,0 +1,837 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/i486-linux-gnu/bits/gthr-default.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3/i486-linux-gnu/bits</a> - gthr-default.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">0.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">0</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /* Threads compatibility routines for libgcc2 and libobjc. */
+<span class="lineNum"> 2 </span> : /* Compile this one with gcc. */
+<span class="lineNum"> 3 </span> : /* Copyright (C) 1997, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
+<span class="lineNum"> 4 </span> : Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> :
+<span class="lineNum"> 6 </span> : This file is part of GCC.
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : GCC is free software; you can redistribute it and/or modify it under
+<span class="lineNum"> 9 </span> : the terms of the GNU General Public License as published by the Free
+<span class="lineNum"> 10 </span> : Software Foundation; either version 2, or (at your option) any later
+<span class="lineNum"> 11 </span> : version.
+<span class="lineNum"> 12 </span> :
+<span class="lineNum"> 13 </span> : GCC is distributed in the hope that it will be useful, but WITHOUT ANY
+<span class="lineNum"> 14 </span> : WARRANTY; without even the implied warranty of MERCHANTABILITY or
+<span class="lineNum"> 15 </span> : FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+<span class="lineNum"> 16 </span> : for more details.
+<span class="lineNum"> 17 </span> :
+<span class="lineNum"> 18 </span> : You should have received a copy of the GNU General Public License
+<span class="lineNum"> 19 </span> : along with GCC; see the file COPYING. If not, write to the Free
+<span class="lineNum"> 20 </span> : Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA
+<span class="lineNum"> 21 </span> : 02110-1301, USA. */
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : /* As a special exception, if you link this library with other files,
+<span class="lineNum"> 24 </span> : some of which are compiled with GCC, to produce an executable,
+<span class="lineNum"> 25 </span> : this library does not by itself cause the resulting executable
+<span class="lineNum"> 26 </span> : to be covered by the GNU General Public License.
+<span class="lineNum"> 27 </span> : This exception does not however invalidate any other reasons why
+<span class="lineNum"> 28 </span> : the executable file might be covered by the GNU General Public License. */
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : #ifndef _GLIBCXX_GCC_GTHR_POSIX_H
+<span class="lineNum"> 31 </span> : #define _GLIBCXX_GCC_GTHR_POSIX_H
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : /* POSIX threads specific definitions.
+<span class="lineNum"> 34 </span> : Easy, since the interface is just one-to-one mapping. */
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : #define __GTHREADS 1
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : /* Some implementations of &lt;pthread.h&gt; require this to be defined. */
+<span class="lineNum"> 39 </span> : #if !defined(_REENTRANT) &amp;&amp; defined(__osf__)
+<span class="lineNum"> 40 </span> : #define _REENTRANT 1
+<span class="lineNum"> 41 </span> : #endif
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : #include &lt;pthread.h&gt;
+<span class="lineNum"> 44 </span> : #include &lt;unistd.h&gt;
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> : typedef pthread_key_t __gthread_key_t;
+<span class="lineNum"> 47 </span> : typedef pthread_once_t __gthread_once_t;
+<span class="lineNum"> 48 </span> : typedef pthread_mutex_t __gthread_mutex_t;
+<span class="lineNum"> 49 </span> : typedef pthread_mutex_t __gthread_recursive_mutex_t;
+<span class="lineNum"> 50 </span> : typedef pthread_cond_t __gthread_cond_t;
+<span class="lineNum"> 51 </span> :
+<span class="lineNum"> 52 </span> : /* POSIX like conditional variables are supported. Please look at comments
+<span class="lineNum"> 53 </span> : in gthr.h for details. */
+<span class="lineNum"> 54 </span> : #define __GTHREAD_HAS_COND 1
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span> : #define __GTHREAD_MUTEX_INIT PTHREAD_MUTEX_INITIALIZER
+<span class="lineNum"> 57 </span> : #define __GTHREAD_ONCE_INIT PTHREAD_ONCE_INIT
+<span class="lineNum"> 58 </span> : #if defined(PTHREAD_RECURSIVE_MUTEX_INITIALIZER)
+<span class="lineNum"> 59 </span> : #define __GTHREAD_RECURSIVE_MUTEX_INIT PTHREAD_RECURSIVE_MUTEX_INITIALIZER
+<span class="lineNum"> 60 </span> : #elif defined(PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP)
+<span class="lineNum"> 61 </span> : #define __GTHREAD_RECURSIVE_MUTEX_INIT PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP
+<span class="lineNum"> 62 </span> : #else
+<span class="lineNum"> 63 </span> : #define __GTHREAD_RECURSIVE_MUTEX_INIT_FUNCTION __gthread_recursive_mutex_init_function
+<span class="lineNum"> 64 </span> : #endif
+<span class="lineNum"> 65 </span> : #define __GTHREAD_COND_INIT PTHREAD_COND_INITIALIZER
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : #if __GXX_WEAK__ &amp;&amp; _GLIBCXX_GTHREAD_USE_WEAK
+<span class="lineNum"> 68 </span> : # ifndef __gthrw_pragma
+<span class="lineNum"> 69 </span> : # define __gthrw_pragma(pragma)
+<span class="lineNum"> 70 </span> : # endif
+<span class="lineNum"> 71 </span> : # define __gthrw2(name,name2,type) \
+<span class="lineNum"> 72 </span> : static __typeof(type) name __attribute__ ((__weakref__(#name2))); \
+<span class="lineNum"> 73 </span> : __gthrw_pragma(weak type)
+<span class="lineNum"> 74 </span> : # define __gthrw_(name) __gthrw_ ## name
+<span class="lineNum"> 75 </span> : #else
+<span class="lineNum"> 76 </span> : # define __gthrw2(name,name2,type)
+<span class="lineNum"> 77 </span> : # define __gthrw_(name) name
+<span class="lineNum"> 78 </span> : #endif
+<span class="lineNum"> 79 </span> :
+<span class="lineNum"> 80 </span> : /* Typically, __gthrw_foo is a weak reference to symbol foo. */
+<span class="lineNum"> 81 </span> : #define __gthrw(name) __gthrw2(__gthrw_ ## name,name,name)
+<span class="lineNum"> 82 </span> :
+<span class="lineNum"> 83 </span> : /* On Tru64, /usr/include/pthread.h uses #pragma extern_prefix &quot;__&quot; to
+<span class="lineNum"> 84 </span> : map a subset of the POSIX pthread API to mangled versions of their
+<span class="lineNum"> 85 </span> : names. */
+<span class="lineNum"> 86 </span> : #if defined(__osf__) &amp;&amp; defined(_PTHREAD_USE_MANGLED_NAMES_)
+<span class="lineNum"> 87 </span> : #define __gthrw3(name) __gthrw2(__gthrw_ ## name, __ ## name, name)
+<span class="lineNum"> 88 </span> : __gthrw3(pthread_once)
+<span class="lineNum"> 89 </span> : __gthrw3(pthread_getspecific)
+<span class="lineNum"> 90 </span> : __gthrw3(pthread_setspecific)
+<span class="lineNum"> 91 </span> : __gthrw3(pthread_create)
+<span class="lineNum"> 92 </span> : __gthrw3(pthread_cancel)
+<span class="lineNum"> 93 </span> : __gthrw3(pthread_mutex_lock)
+<span class="lineNum"> 94 </span> : __gthrw3(pthread_mutex_trylock)
+<span class="lineNum"> 95 </span> : __gthrw3(pthread_mutex_unlock)
+<span class="lineNum"> 96 </span> : __gthrw3(pthread_mutex_init)
+<span class="lineNum"> 97 </span> : __gthrw3(pthread_cond_broadcast)
+<span class="lineNum"> 98 </span> : __gthrw3(pthread_cond_wait)
+<span class="lineNum"> 99 </span> : #else
+<span class="lineNum"> 100 </span> : __gthrw(pthread_once)
+<span class="lineNum"> 101 </span> : __gthrw(pthread_getspecific)
+<span class="lineNum"> 102 </span> : __gthrw(pthread_setspecific)
+<span class="lineNum"> 103 </span> : __gthrw(pthread_create)
+<span class="lineNum"> 104 </span> : __gthrw(pthread_cancel)
+<span class="lineNum"> 105 </span> : __gthrw(pthread_mutex_lock)
+<span class="lineNum"> 106 </span> : __gthrw(pthread_mutex_trylock)
+<span class="lineNum"> 107 </span> : __gthrw(pthread_mutex_unlock)
+<span class="lineNum"> 108 </span> : __gthrw(pthread_mutex_init)
+<span class="lineNum"> 109 </span> : __gthrw(pthread_cond_broadcast)
+<span class="lineNum"> 110 </span> : __gthrw(pthread_cond_wait)
+<span class="lineNum"> 111 </span> : #endif
+<span class="lineNum"> 112 </span> :
+<span class="lineNum"> 113 </span> : __gthrw(pthread_key_create)
+<span class="lineNum"> 114 </span> : __gthrw(pthread_key_delete)
+<span class="lineNum"> 115 </span> : __gthrw(pthread_mutexattr_init)
+<span class="lineNum"> 116 </span> : __gthrw(pthread_mutexattr_settype)
+<span class="lineNum"> 117 </span> : __gthrw(pthread_mutexattr_destroy)
+<span class="lineNum"> 118 </span> :
+<span class="lineNum"> 119 </span> :
+<span class="lineNum"> 120 </span> : #if defined(_LIBOBJC) || defined(_LIBOBJC_WEAK)
+<span class="lineNum"> 121 </span> : /* Objective-C. */
+<span class="lineNum"> 122 </span> : #if defined(__osf__) &amp;&amp; defined(_PTHREAD_USE_MANGLED_NAMES_)
+<span class="lineNum"> 123 </span> : __gthrw3(pthread_cond_destroy)
+<span class="lineNum"> 124 </span> : __gthrw3(pthread_cond_init)
+<span class="lineNum"> 125 </span> : __gthrw3(pthread_cond_signal)
+<span class="lineNum"> 126 </span> : __gthrw3(pthread_exit)
+<span class="lineNum"> 127 </span> : __gthrw3(pthread_mutex_destroy)
+<span class="lineNum"> 128 </span> : __gthrw3(pthread_self)
+<span class="lineNum"> 129 </span> : #else
+<span class="lineNum"> 130 </span> : __gthrw(pthread_cond_destroy)
+<span class="lineNum"> 131 </span> : __gthrw(pthread_cond_init)
+<span class="lineNum"> 132 </span> : __gthrw(pthread_cond_signal)
+<span class="lineNum"> 133 </span> : __gthrw(pthread_exit)
+<span class="lineNum"> 134 </span> : __gthrw(pthread_mutex_destroy)
+<span class="lineNum"> 135 </span> : __gthrw(pthread_self)
+<span class="lineNum"> 136 </span> : #endif /* __osf__ &amp;&amp; _PTHREAD_USE_MANGLED_NAMES_ */
+<span class="lineNum"> 137 </span> : #ifdef _POSIX_PRIORITY_SCHEDULING
+<span class="lineNum"> 138 </span> : #ifdef _POSIX_THREAD_PRIORITY_SCHEDULING
+<span class="lineNum"> 139 </span> : __gthrw(sched_get_priority_max)
+<span class="lineNum"> 140 </span> : __gthrw(sched_get_priority_min)
+<span class="lineNum"> 141 </span> : #endif /* _POSIX_THREAD_PRIORITY_SCHEDULING */
+<span class="lineNum"> 142 </span> : #endif /* _POSIX_PRIORITY_SCHEDULING */
+<span class="lineNum"> 143 </span> : __gthrw(sched_yield)
+<span class="lineNum"> 144 </span> : __gthrw(pthread_attr_destroy)
+<span class="lineNum"> 145 </span> : __gthrw(pthread_attr_init)
+<span class="lineNum"> 146 </span> : __gthrw(pthread_attr_setdetachstate)
+<span class="lineNum"> 147 </span> : #ifdef _POSIX_THREAD_PRIORITY_SCHEDULING
+<span class="lineNum"> 148 </span> : __gthrw(pthread_getschedparam)
+<span class="lineNum"> 149 </span> : __gthrw(pthread_setschedparam)
+<span class="lineNum"> 150 </span> : #endif /* _POSIX_THREAD_PRIORITY_SCHEDULING */
+<span class="lineNum"> 151 </span> : #endif /* _LIBOBJC || _LIBOBJC_WEAK */
+<span class="lineNum"> 152 </span> :
+<span class="lineNum"> 153 </span> : #if __GXX_WEAK__ &amp;&amp; _GLIBCXX_GTHREAD_USE_WEAK
+<span class="lineNum"> 154 </span> :
+<span class="lineNum"> 155 </span> : /* On Solaris 2.6 up to 9, the libc exposes a POSIX threads interface even if
+<span class="lineNum"> 156 </span> : -pthreads is not specified. The functions are dummies and most return an
+<span class="lineNum"> 157 </span> : error value. However pthread_once returns 0 without invoking the routine
+<span class="lineNum"> 158 </span> : it is passed so we cannot pretend that the interface is active if -pthreads
+<span class="lineNum"> 159 </span> : is not specified. On Solaris 2.5.1, the interface is not exposed at all so
+<span class="lineNum"> 160 </span> : we need to play the usual game with weak symbols. On Solaris 10 and up, a
+<span class="lineNum"> 161 </span> : working interface is always exposed. On FreeBSD 6 and later, libc also
+<span class="lineNum"> 162 </span> : exposes a dummy POSIX threads interface, similar to what Solaris 2.6 up
+<span class="lineNum"> 163 </span> : to 9 does. FreeBSD &gt;= 700014 even provides a pthread_cancel stub in libc,
+<span class="lineNum"> 164 </span> : which means the alternate __gthread_active_p below cannot be used there. */
+<span class="lineNum"> 165 </span> :
+<span class="lineNum"> 166 </span> : #if defined(__FreeBSD__) || (defined(__sun) &amp;&amp; defined(__svr4__))
+<span class="lineNum"> 167 </span> :
+<span class="lineNum"> 168 </span> : static volatile int __gthread_active = -1;
+<span class="lineNum"> 169 </span> :
+<span class="lineNum"> 170 </span> : static void
+<span class="lineNum"> 171 </span> : __gthread_trigger (void)
+<span class="lineNum"> 172 </span> : {
+<span class="lineNum"> 173 </span> : __gthread_active = 1;
+<span class="lineNum"> 174 </span> : }
+<span class="lineNum"> 175 </span> :
+<span class="lineNum"> 176 </span> : static inline int
+<span class="lineNum"> 177 </span> : __gthread_active_p (void)
+<span class="lineNum"> 178 </span> : {
+<span class="lineNum"> 179 </span> : static pthread_mutex_t __gthread_active_mutex = PTHREAD_MUTEX_INITIALIZER;
+<span class="lineNum"> 180 </span> : static pthread_once_t __gthread_active_once = PTHREAD_ONCE_INIT;
+<span class="lineNum"> 181 </span> :
+<span class="lineNum"> 182 </span> : /* Avoid reading __gthread_active twice on the main code path. */
+<span class="lineNum"> 183 </span> : int __gthread_active_latest_value = __gthread_active;
+<span class="lineNum"> 184 </span> :
+<span class="lineNum"> 185 </span> : /* This test is not protected to avoid taking a lock on the main code
+<span class="lineNum"> 186 </span> : path so every update of __gthread_active in a threaded program must
+<span class="lineNum"> 187 </span> : be atomic with regard to the result of the test. */
+<span class="lineNum"> 188 </span> : if (__builtin_expect (__gthread_active_latest_value &lt; 0, 0))
+<span class="lineNum"> 189 </span> : {
+<span class="lineNum"> 190 </span> : if (__gthrw_(pthread_once))
+<span class="lineNum"> 191 </span> : {
+<span class="lineNum"> 192 </span> : /* If this really is a threaded program, then we must ensure that
+<span class="lineNum"> 193 </span> : __gthread_active has been set to 1 before exiting this block. */
+<span class="lineNum"> 194 </span> : __gthrw_(pthread_mutex_lock) (&amp;__gthread_active_mutex);
+<span class="lineNum"> 195 </span> : __gthrw_(pthread_once) (&amp;__gthread_active_once, __gthread_trigger);
+<span class="lineNum"> 196 </span> : __gthrw_(pthread_mutex_unlock) (&amp;__gthread_active_mutex);
+<span class="lineNum"> 197 </span> : }
+<span class="lineNum"> 198 </span> :
+<span class="lineNum"> 199 </span> : /* Make sure we'll never enter this block again. */
+<span class="lineNum"> 200 </span> : if (__gthread_active &lt; 0)
+<span class="lineNum"> 201 </span> : __gthread_active = 0;
+<span class="lineNum"> 202 </span> :
+<span class="lineNum"> 203 </span> : __gthread_active_latest_value = __gthread_active;
+<span class="lineNum"> 204 </span> : }
+<span class="lineNum"> 205 </span> :
+<span class="lineNum"> 206 </span> : return __gthread_active_latest_value != 0;
+<span class="lineNum"> 207 </span> : }
+<span class="lineNum"> 208 </span> :
+<span class="lineNum"> 209 </span> : #else /* neither FreeBSD nor Solaris */
+<span class="lineNum"> 210 </span> :
+<span class="lineNum"> 211 </span> : static inline int
+<span class="lineNum"> 212 </span><span class="lineNoCov"> 0 : __gthread_active_p (void)</span>
+<span class="lineNum"> 213 </span> : {
+<span class="lineNum"> 214 </span> : static void *const __gthread_active_ptr
+<span class="lineNum"> 215 </span> : = __extension__ (void *) &amp;__gthrw_(pthread_cancel);
+<span class="lineNum"> 216 </span><span class="lineNoCov"> 0 : return __gthread_active_ptr != 0;</span>
+<span class="lineNum"> 217 </span> : }
+<span class="lineNum"> 218 </span> :
+<span class="lineNum"> 219 </span> : #endif /* FreeBSD or Solaris */
+<span class="lineNum"> 220 </span> :
+<span class="lineNum"> 221 </span> : #else /* not __GXX_WEAK__ */
+<span class="lineNum"> 222 </span> :
+<span class="lineNum"> 223 </span> : /* Similar to Solaris, HP-UX 11 for PA-RISC provides stubs for pthread
+<span class="lineNum"> 224 </span> : calls in shared flavors of the HP-UX C library. Most of the stubs
+<span class="lineNum"> 225 </span> : have no functionality. The details are described in the &quot;libc cumulative
+<span class="lineNum"> 226 </span> : patch&quot; for each subversion of HP-UX 11. There are two special interfaces
+<span class="lineNum"> 227 </span> : provided for checking whether an application is linked to a pthread
+<span class="lineNum"> 228 </span> : library or not. However, these interfaces aren't available in early
+<span class="lineNum"> 229 </span> : libc versions. We also can't use pthread_once as some libc versions
+<span class="lineNum"> 230 </span> : call the init function. So, we use pthread_create to check whether it
+<span class="lineNum"> 231 </span> : is possible to create a thread or not. The stub implementation returns
+<span class="lineNum"> 232 </span> : the error number ENOSYS. */
+<span class="lineNum"> 233 </span> :
+<span class="lineNum"> 234 </span> : #if defined(__hppa__) &amp;&amp; defined(__hpux__)
+<span class="lineNum"> 235 </span> :
+<span class="lineNum"> 236 </span> : #include &lt;errno.h&gt;
+<span class="lineNum"> 237 </span> :
+<span class="lineNum"> 238 </span> : static volatile int __gthread_active = -1;
+<span class="lineNum"> 239 </span> :
+<span class="lineNum"> 240 </span> : static void *
+<span class="lineNum"> 241 </span> : __gthread_start (void *arg __attribute__((unused)))
+<span class="lineNum"> 242 </span> : {
+<span class="lineNum"> 243 </span> : return NULL;
+<span class="lineNum"> 244 </span> : }
+<span class="lineNum"> 245 </span> :
+<span class="lineNum"> 246 </span> : static void __gthread_active_init (void) __attribute__((noinline));
+<span class="lineNum"> 247 </span> : static void
+<span class="lineNum"> 248 </span> : __gthread_active_init (void)
+<span class="lineNum"> 249 </span> : {
+<span class="lineNum"> 250 </span> : static pthread_mutex_t __gthread_active_mutex = PTHREAD_MUTEX_INITIALIZER;
+<span class="lineNum"> 251 </span> : pthread_t t;
+<span class="lineNum"> 252 </span> : pthread_attr_t a;
+<span class="lineNum"> 253 </span> : int result;
+<span class="lineNum"> 254 </span> :
+<span class="lineNum"> 255 </span> : __gthrw_(pthread_mutex_lock) (&amp;__gthread_active_mutex);
+<span class="lineNum"> 256 </span> : if (__gthread_active &lt; 0)
+<span class="lineNum"> 257 </span> : {
+<span class="lineNum"> 258 </span> : __gthrw_(pthread_attr_init) (&amp;a);
+<span class="lineNum"> 259 </span> : __gthrw_(pthread_attr_setdetachstate) (&amp;a, PTHREAD_CREATE_DETACHED);
+<span class="lineNum"> 260 </span> : result = __gthrw_(pthread_create) (&amp;t, &amp;a, __gthread_start, NULL);
+<span class="lineNum"> 261 </span> : if (result != ENOSYS)
+<span class="lineNum"> 262 </span> : __gthread_active = 1;
+<span class="lineNum"> 263 </span> : else
+<span class="lineNum"> 264 </span> : __gthread_active = 0;
+<span class="lineNum"> 265 </span> : __gthrw_(pthread_attr_destroy) (&amp;a);
+<span class="lineNum"> 266 </span> : }
+<span class="lineNum"> 267 </span> : __gthrw_(pthread_mutex_unlock) (&amp;__gthread_active_mutex);
+<span class="lineNum"> 268 </span> : }
+<span class="lineNum"> 269 </span> :
+<span class="lineNum"> 270 </span> : static inline int
+<span class="lineNum"> 271 </span> : __gthread_active_p (void)
+<span class="lineNum"> 272 </span> : {
+<span class="lineNum"> 273 </span> : /* Avoid reading __gthread_active twice on the main code path. */
+<span class="lineNum"> 274 </span> : int __gthread_active_latest_value = __gthread_active;
+<span class="lineNum"> 275 </span> :
+<span class="lineNum"> 276 </span> : /* This test is not protected to avoid taking a lock on the main code
+<span class="lineNum"> 277 </span> : path so every update of __gthread_active in a threaded program must
+<span class="lineNum"> 278 </span> : be atomic with regard to the result of the test. */
+<span class="lineNum"> 279 </span> : if (__builtin_expect (__gthread_active_latest_value &lt; 0, 0))
+<span class="lineNum"> 280 </span> : {
+<span class="lineNum"> 281 </span> : __gthread_active_init ();
+<span class="lineNum"> 282 </span> : __gthread_active_latest_value = __gthread_active;
+<span class="lineNum"> 283 </span> : }
+<span class="lineNum"> 284 </span> :
+<span class="lineNum"> 285 </span> : return __gthread_active_latest_value != 0;
+<span class="lineNum"> 286 </span> : }
+<span class="lineNum"> 287 </span> :
+<span class="lineNum"> 288 </span> : #else /* not hppa-hpux */
+<span class="lineNum"> 289 </span> :
+<span class="lineNum"> 290 </span> : static inline int
+<span class="lineNum"> 291 </span> : __gthread_active_p (void)
+<span class="lineNum"> 292 </span> : {
+<span class="lineNum"> 293 </span> : return 1;
+<span class="lineNum"> 294 </span> : }
+<span class="lineNum"> 295 </span> :
+<span class="lineNum"> 296 </span> : #endif /* hppa-hpux */
+<span class="lineNum"> 297 </span> :
+<span class="lineNum"> 298 </span> : #endif /* __GXX_WEAK__ */
+<span class="lineNum"> 299 </span> :
+<span class="lineNum"> 300 </span> : #ifdef _LIBOBJC
+<span class="lineNum"> 301 </span> :
+<span class="lineNum"> 302 </span> : /* This is the config.h file in libobjc/ */
+<span class="lineNum"> 303 </span> : #include &lt;config.h&gt;
+<span class="lineNum"> 304 </span> :
+<span class="lineNum"> 305 </span> : #ifdef HAVE_SCHED_H
+<span class="lineNum"> 306 </span> : # include &lt;sched.h&gt;
+<span class="lineNum"> 307 </span> : #endif
+<span class="lineNum"> 308 </span> :
+<span class="lineNum"> 309 </span> : /* Key structure for maintaining thread specific storage */
+<span class="lineNum"> 310 </span> : static pthread_key_t _objc_thread_storage;
+<span class="lineNum"> 311 </span> : static pthread_attr_t _objc_thread_attribs;
+<span class="lineNum"> 312 </span> :
+<span class="lineNum"> 313 </span> : /* Thread local storage for a single thread */
+<span class="lineNum"> 314 </span> : static void *thread_local_storage = NULL;
+<span class="lineNum"> 315 </span> :
+<span class="lineNum"> 316 </span> : /* Backend initialization functions */
+<span class="lineNum"> 317 </span> :
+<span class="lineNum"> 318 </span> : /* Initialize the threads subsystem. */
+<span class="lineNum"> 319 </span> : static inline int
+<span class="lineNum"> 320 </span> : __gthread_objc_init_thread_system (void)
+<span class="lineNum"> 321 </span> : {
+<span class="lineNum"> 322 </span> : if (__gthread_active_p ())
+<span class="lineNum"> 323 </span> : {
+<span class="lineNum"> 324 </span> : /* Initialize the thread storage key. */
+<span class="lineNum"> 325 </span> : if (__gthrw_(pthread_key_create) (&amp;_objc_thread_storage, NULL) == 0)
+<span class="lineNum"> 326 </span> : {
+<span class="lineNum"> 327 </span> : /* The normal default detach state for threads is
+<span class="lineNum"> 328 </span> : * PTHREAD_CREATE_JOINABLE which causes threads to not die
+<span class="lineNum"> 329 </span> : * when you think they should. */
+<span class="lineNum"> 330 </span> : if (__gthrw_(pthread_attr_init) (&amp;_objc_thread_attribs) == 0
+<span class="lineNum"> 331 </span> : &amp;&amp; __gthrw_(pthread_attr_setdetachstate) (&amp;_objc_thread_attribs,
+<span class="lineNum"> 332 </span> : PTHREAD_CREATE_DETACHED) == 0)
+<span class="lineNum"> 333 </span> : return 0;
+<span class="lineNum"> 334 </span> : }
+<span class="lineNum"> 335 </span> : }
+<span class="lineNum"> 336 </span> :
+<span class="lineNum"> 337 </span> : return -1;
+<span class="lineNum"> 338 </span> : }
+<span class="lineNum"> 339 </span> :
+<span class="lineNum"> 340 </span> : /* Close the threads subsystem. */
+<span class="lineNum"> 341 </span> : static inline int
+<span class="lineNum"> 342 </span> : __gthread_objc_close_thread_system (void)
+<span class="lineNum"> 343 </span> : {
+<span class="lineNum"> 344 </span> : if (__gthread_active_p ()
+<span class="lineNum"> 345 </span> : &amp;&amp; __gthrw_(pthread_key_delete) (_objc_thread_storage) == 0
+<span class="lineNum"> 346 </span> : &amp;&amp; __gthrw_(pthread_attr_destroy) (&amp;_objc_thread_attribs) == 0)
+<span class="lineNum"> 347 </span> : return 0;
+<span class="lineNum"> 348 </span> :
+<span class="lineNum"> 349 </span> : return -1;
+<span class="lineNum"> 350 </span> : }
+<span class="lineNum"> 351 </span> :
+<span class="lineNum"> 352 </span> : /* Backend thread functions */
+<span class="lineNum"> 353 </span> :
+<span class="lineNum"> 354 </span> : /* Create a new thread of execution. */
+<span class="lineNum"> 355 </span> : static inline objc_thread_t
+<span class="lineNum"> 356 </span> : __gthread_objc_thread_detach (void (*func)(void *), void *arg)
+<span class="lineNum"> 357 </span> : {
+<span class="lineNum"> 358 </span> : objc_thread_t thread_id;
+<span class="lineNum"> 359 </span> : pthread_t new_thread_handle;
+<span class="lineNum"> 360 </span> :
+<span class="lineNum"> 361 </span> : if (!__gthread_active_p ())
+<span class="lineNum"> 362 </span> : return NULL;
+<span class="lineNum"> 363 </span> :
+<span class="lineNum"> 364 </span> : if (!(__gthrw_(pthread_create) (&amp;new_thread_handle, NULL, (void *) func, arg)))
+<span class="lineNum"> 365 </span> : thread_id = (objc_thread_t) new_thread_handle;
+<span class="lineNum"> 366 </span> : else
+<span class="lineNum"> 367 </span> : thread_id = NULL;
+<span class="lineNum"> 368 </span> :
+<span class="lineNum"> 369 </span> : return thread_id;
+<span class="lineNum"> 370 </span> : }
+<span class="lineNum"> 371 </span> :
+<span class="lineNum"> 372 </span> : /* Set the current thread's priority. */
+<span class="lineNum"> 373 </span> : static inline int
+<span class="lineNum"> 374 </span> : __gthread_objc_thread_set_priority (int priority)
+<span class="lineNum"> 375 </span> : {
+<span class="lineNum"> 376 </span> : if (!__gthread_active_p ())
+<span class="lineNum"> 377 </span> : return -1;
+<span class="lineNum"> 378 </span> : else
+<span class="lineNum"> 379 </span> : {
+<span class="lineNum"> 380 </span> : #ifdef _POSIX_PRIORITY_SCHEDULING
+<span class="lineNum"> 381 </span> : #ifdef _POSIX_THREAD_PRIORITY_SCHEDULING
+<span class="lineNum"> 382 </span> : pthread_t thread_id = __gthrw_(pthread_self) ();
+<span class="lineNum"> 383 </span> : int policy;
+<span class="lineNum"> 384 </span> : struct sched_param params;
+<span class="lineNum"> 385 </span> : int priority_min, priority_max;
+<span class="lineNum"> 386 </span> :
+<span class="lineNum"> 387 </span> : if (__gthrw_(pthread_getschedparam) (thread_id, &amp;policy, &amp;params) == 0)
+<span class="lineNum"> 388 </span> : {
+<span class="lineNum"> 389 </span> : if ((priority_max = __gthrw_(sched_get_priority_max) (policy)) == -1)
+<span class="lineNum"> 390 </span> : return -1;
+<span class="lineNum"> 391 </span> :
+<span class="lineNum"> 392 </span> : if ((priority_min = __gthrw_(sched_get_priority_min) (policy)) == -1)
+<span class="lineNum"> 393 </span> : return -1;
+<span class="lineNum"> 394 </span> :
+<span class="lineNum"> 395 </span> : if (priority &gt; priority_max)
+<span class="lineNum"> 396 </span> : priority = priority_max;
+<span class="lineNum"> 397 </span> : else if (priority &lt; priority_min)
+<span class="lineNum"> 398 </span> : priority = priority_min;
+<span class="lineNum"> 399 </span> : params.sched_priority = priority;
+<span class="lineNum"> 400 </span> :
+<span class="lineNum"> 401 </span> : /*
+<span class="lineNum"> 402 </span> : * The solaris 7 and several other man pages incorrectly state that
+<span class="lineNum"> 403 </span> : * this should be a pointer to policy but pthread.h is universally
+<span class="lineNum"> 404 </span> : * at odds with this.
+<span class="lineNum"> 405 </span> : */
+<span class="lineNum"> 406 </span> : if (__gthrw_(pthread_setschedparam) (thread_id, policy, &amp;params) == 0)
+<span class="lineNum"> 407 </span> : return 0;
+<span class="lineNum"> 408 </span> : }
+<span class="lineNum"> 409 </span> : #endif /* _POSIX_THREAD_PRIORITY_SCHEDULING */
+<span class="lineNum"> 410 </span> : #endif /* _POSIX_PRIORITY_SCHEDULING */
+<span class="lineNum"> 411 </span> : return -1;
+<span class="lineNum"> 412 </span> : }
+<span class="lineNum"> 413 </span> : }
+<span class="lineNum"> 414 </span> :
+<span class="lineNum"> 415 </span> : /* Return the current thread's priority. */
+<span class="lineNum"> 416 </span> : static inline int
+<span class="lineNum"> 417 </span> : __gthread_objc_thread_get_priority (void)
+<span class="lineNum"> 418 </span> : {
+<span class="lineNum"> 419 </span> : #ifdef _POSIX_PRIORITY_SCHEDULING
+<span class="lineNum"> 420 </span> : #ifdef _POSIX_THREAD_PRIORITY_SCHEDULING
+<span class="lineNum"> 421 </span> : if (__gthread_active_p ())
+<span class="lineNum"> 422 </span> : {
+<span class="lineNum"> 423 </span> : int policy;
+<span class="lineNum"> 424 </span> : struct sched_param params;
+<span class="lineNum"> 425 </span> :
+<span class="lineNum"> 426 </span> : if (__gthrw_(pthread_getschedparam) (__gthrw_(pthread_self) (), &amp;policy, &amp;params) == 0)
+<span class="lineNum"> 427 </span> : return params.sched_priority;
+<span class="lineNum"> 428 </span> : else
+<span class="lineNum"> 429 </span> : return -1;
+<span class="lineNum"> 430 </span> : }
+<span class="lineNum"> 431 </span> : else
+<span class="lineNum"> 432 </span> : #endif /* _POSIX_THREAD_PRIORITY_SCHEDULING */
+<span class="lineNum"> 433 </span> : #endif /* _POSIX_PRIORITY_SCHEDULING */
+<span class="lineNum"> 434 </span> : return OBJC_THREAD_INTERACTIVE_PRIORITY;
+<span class="lineNum"> 435 </span> : }
+<span class="lineNum"> 436 </span> :
+<span class="lineNum"> 437 </span> : /* Yield our process time to another thread. */
+<span class="lineNum"> 438 </span> : static inline void
+<span class="lineNum"> 439 </span> : __gthread_objc_thread_yield (void)
+<span class="lineNum"> 440 </span> : {
+<span class="lineNum"> 441 </span> : if (__gthread_active_p ())
+<span class="lineNum"> 442 </span> : __gthrw_(sched_yield) ();
+<span class="lineNum"> 443 </span> : }
+<span class="lineNum"> 444 </span> :
+<span class="lineNum"> 445 </span> : /* Terminate the current thread. */
+<span class="lineNum"> 446 </span> : static inline int
+<span class="lineNum"> 447 </span> : __gthread_objc_thread_exit (void)
+<span class="lineNum"> 448 </span> : {
+<span class="lineNum"> 449 </span> : if (__gthread_active_p ())
+<span class="lineNum"> 450 </span> : /* exit the thread */
+<span class="lineNum"> 451 </span> : __gthrw_(pthread_exit) (&amp;__objc_thread_exit_status);
+<span class="lineNum"> 452 </span> :
+<span class="lineNum"> 453 </span> : /* Failed if we reached here */
+<span class="lineNum"> 454 </span> : return -1;
+<span class="lineNum"> 455 </span> : }
+<span class="lineNum"> 456 </span> :
+<span class="lineNum"> 457 </span> : /* Returns an integer value which uniquely describes a thread. */
+<span class="lineNum"> 458 </span> : static inline objc_thread_t
+<span class="lineNum"> 459 </span> : __gthread_objc_thread_id (void)
+<span class="lineNum"> 460 </span> : {
+<span class="lineNum"> 461 </span> : if (__gthread_active_p ())
+<span class="lineNum"> 462 </span> : return (objc_thread_t) __gthrw_(pthread_self) ();
+<span class="lineNum"> 463 </span> : else
+<span class="lineNum"> 464 </span> : return (objc_thread_t) 1;
+<span class="lineNum"> 465 </span> : }
+<span class="lineNum"> 466 </span> :
+<span class="lineNum"> 467 </span> : /* Sets the thread's local storage pointer. */
+<span class="lineNum"> 468 </span> : static inline int
+<span class="lineNum"> 469 </span> : __gthread_objc_thread_set_data (void *value)
+<span class="lineNum"> 470 </span> : {
+<span class="lineNum"> 471 </span> : if (__gthread_active_p ())
+<span class="lineNum"> 472 </span> : return __gthrw_(pthread_setspecific) (_objc_thread_storage, value);
+<span class="lineNum"> 473 </span> : else
+<span class="lineNum"> 474 </span> : {
+<span class="lineNum"> 475 </span> : thread_local_storage = value;
+<span class="lineNum"> 476 </span> : return 0;
+<span class="lineNum"> 477 </span> : }
+<span class="lineNum"> 478 </span> : }
+<span class="lineNum"> 479 </span> :
+<span class="lineNum"> 480 </span> : /* Returns the thread's local storage pointer. */
+<span class="lineNum"> 481 </span> : static inline void *
+<span class="lineNum"> 482 </span> : __gthread_objc_thread_get_data (void)
+<span class="lineNum"> 483 </span> : {
+<span class="lineNum"> 484 </span> : if (__gthread_active_p ())
+<span class="lineNum"> 485 </span> : return __gthrw_(pthread_getspecific) (_objc_thread_storage);
+<span class="lineNum"> 486 </span> : else
+<span class="lineNum"> 487 </span> : return thread_local_storage;
+<span class="lineNum"> 488 </span> : }
+<span class="lineNum"> 489 </span> :
+<span class="lineNum"> 490 </span> : /* Backend mutex functions */
+<span class="lineNum"> 491 </span> :
+<span class="lineNum"> 492 </span> : /* Allocate a mutex. */
+<span class="lineNum"> 493 </span> : static inline int
+<span class="lineNum"> 494 </span> : __gthread_objc_mutex_allocate (objc_mutex_t mutex)
+<span class="lineNum"> 495 </span> : {
+<span class="lineNum"> 496 </span> : if (__gthread_active_p ())
+<span class="lineNum"> 497 </span> : {
+<span class="lineNum"> 498 </span> : mutex-&gt;backend = objc_malloc (sizeof (pthread_mutex_t));
+<span class="lineNum"> 499 </span> :
+<span class="lineNum"> 500 </span> : if (__gthrw_(pthread_mutex_init) ((pthread_mutex_t *) mutex-&gt;backend, NULL))
+<span class="lineNum"> 501 </span> : {
+<span class="lineNum"> 502 </span> : objc_free (mutex-&gt;backend);
+<span class="lineNum"> 503 </span> : mutex-&gt;backend = NULL;
+<span class="lineNum"> 504 </span> : return -1;
+<span class="lineNum"> 505 </span> : }
+<span class="lineNum"> 506 </span> : }
+<span class="lineNum"> 507 </span> :
+<span class="lineNum"> 508 </span> : return 0;
+<span class="lineNum"> 509 </span> : }
+<span class="lineNum"> 510 </span> :
+<span class="lineNum"> 511 </span> : /* Deallocate a mutex. */
+<span class="lineNum"> 512 </span> : static inline int
+<span class="lineNum"> 513 </span> : __gthread_objc_mutex_deallocate (objc_mutex_t mutex)
+<span class="lineNum"> 514 </span> : {
+<span class="lineNum"> 515 </span> : if (__gthread_active_p ())
+<span class="lineNum"> 516 </span> : {
+<span class="lineNum"> 517 </span> : int count;
+<span class="lineNum"> 518 </span> :
+<span class="lineNum"> 519 </span> : /*
+<span class="lineNum"> 520 </span> : * Posix Threads specifically require that the thread be unlocked
+<span class="lineNum"> 521 </span> : * for __gthrw_(pthread_mutex_destroy) to work.
+<span class="lineNum"> 522 </span> : */
+<span class="lineNum"> 523 </span> :
+<span class="lineNum"> 524 </span> : do
+<span class="lineNum"> 525 </span> : {
+<span class="lineNum"> 526 </span> : count = __gthrw_(pthread_mutex_unlock) ((pthread_mutex_t *) mutex-&gt;backend);
+<span class="lineNum"> 527 </span> : if (count &lt; 0)
+<span class="lineNum"> 528 </span> : return -1;
+<span class="lineNum"> 529 </span> : }
+<span class="lineNum"> 530 </span> : while (count);
+<span class="lineNum"> 531 </span> :
+<span class="lineNum"> 532 </span> : if (__gthrw_(pthread_mutex_destroy) ((pthread_mutex_t *) mutex-&gt;backend))
+<span class="lineNum"> 533 </span> : return -1;
+<span class="lineNum"> 534 </span> :
+<span class="lineNum"> 535 </span> : objc_free (mutex-&gt;backend);
+<span class="lineNum"> 536 </span> : mutex-&gt;backend = NULL;
+<span class="lineNum"> 537 </span> : }
+<span class="lineNum"> 538 </span> : return 0;
+<span class="lineNum"> 539 </span> : }
+<span class="lineNum"> 540 </span> :
+<span class="lineNum"> 541 </span> : /* Grab a lock on a mutex. */
+<span class="lineNum"> 542 </span> : static inline int
+<span class="lineNum"> 543 </span> : __gthread_objc_mutex_lock (objc_mutex_t mutex)
+<span class="lineNum"> 544 </span> : {
+<span class="lineNum"> 545 </span> : if (__gthread_active_p ()
+<span class="lineNum"> 546 </span> : &amp;&amp; __gthrw_(pthread_mutex_lock) ((pthread_mutex_t *) mutex-&gt;backend) != 0)
+<span class="lineNum"> 547 </span> : {
+<span class="lineNum"> 548 </span> : return -1;
+<span class="lineNum"> 549 </span> : }
+<span class="lineNum"> 550 </span> :
+<span class="lineNum"> 551 </span> : return 0;
+<span class="lineNum"> 552 </span> : }
+<span class="lineNum"> 553 </span> :
+<span class="lineNum"> 554 </span> : /* Try to grab a lock on a mutex. */
+<span class="lineNum"> 555 </span> : static inline int
+<span class="lineNum"> 556 </span> : __gthread_objc_mutex_trylock (objc_mutex_t mutex)
+<span class="lineNum"> 557 </span> : {
+<span class="lineNum"> 558 </span> : if (__gthread_active_p ()
+<span class="lineNum"> 559 </span> : &amp;&amp; __gthrw_(pthread_mutex_trylock) ((pthread_mutex_t *) mutex-&gt;backend) != 0)
+<span class="lineNum"> 560 </span> : {
+<span class="lineNum"> 561 </span> : return -1;
+<span class="lineNum"> 562 </span> : }
+<span class="lineNum"> 563 </span> :
+<span class="lineNum"> 564 </span> : return 0;
+<span class="lineNum"> 565 </span> : }
+<span class="lineNum"> 566 </span> :
+<span class="lineNum"> 567 </span> : /* Unlock the mutex */
+<span class="lineNum"> 568 </span> : static inline int
+<span class="lineNum"> 569 </span> : __gthread_objc_mutex_unlock (objc_mutex_t mutex)
+<span class="lineNum"> 570 </span> : {
+<span class="lineNum"> 571 </span> : if (__gthread_active_p ()
+<span class="lineNum"> 572 </span> : &amp;&amp; __gthrw_(pthread_mutex_unlock) ((pthread_mutex_t *) mutex-&gt;backend) != 0)
+<span class="lineNum"> 573 </span> : {
+<span class="lineNum"> 574 </span> : return -1;
+<span class="lineNum"> 575 </span> : }
+<span class="lineNum"> 576 </span> :
+<span class="lineNum"> 577 </span> : return 0;
+<span class="lineNum"> 578 </span> : }
+<span class="lineNum"> 579 </span> :
+<span class="lineNum"> 580 </span> : /* Backend condition mutex functions */
+<span class="lineNum"> 581 </span> :
+<span class="lineNum"> 582 </span> : /* Allocate a condition. */
+<span class="lineNum"> 583 </span> : static inline int
+<span class="lineNum"> 584 </span> : __gthread_objc_condition_allocate (objc_condition_t condition)
+<span class="lineNum"> 585 </span> : {
+<span class="lineNum"> 586 </span> : if (__gthread_active_p ())
+<span class="lineNum"> 587 </span> : {
+<span class="lineNum"> 588 </span> : condition-&gt;backend = objc_malloc (sizeof (pthread_cond_t));
+<span class="lineNum"> 589 </span> :
+<span class="lineNum"> 590 </span> : if (__gthrw_(pthread_cond_init) ((pthread_cond_t *) condition-&gt;backend, NULL))
+<span class="lineNum"> 591 </span> : {
+<span class="lineNum"> 592 </span> : objc_free (condition-&gt;backend);
+<span class="lineNum"> 593 </span> : condition-&gt;backend = NULL;
+<span class="lineNum"> 594 </span> : return -1;
+<span class="lineNum"> 595 </span> : }
+<span class="lineNum"> 596 </span> : }
+<span class="lineNum"> 597 </span> :
+<span class="lineNum"> 598 </span> : return 0;
+<span class="lineNum"> 599 </span> : }
+<span class="lineNum"> 600 </span> :
+<span class="lineNum"> 601 </span> : /* Deallocate a condition. */
+<span class="lineNum"> 602 </span> : static inline int
+<span class="lineNum"> 603 </span> : __gthread_objc_condition_deallocate (objc_condition_t condition)
+<span class="lineNum"> 604 </span> : {
+<span class="lineNum"> 605 </span> : if (__gthread_active_p ())
+<span class="lineNum"> 606 </span> : {
+<span class="lineNum"> 607 </span> : if (__gthrw_(pthread_cond_destroy) ((pthread_cond_t *) condition-&gt;backend))
+<span class="lineNum"> 608 </span> : return -1;
+<span class="lineNum"> 609 </span> :
+<span class="lineNum"> 610 </span> : objc_free (condition-&gt;backend);
+<span class="lineNum"> 611 </span> : condition-&gt;backend = NULL;
+<span class="lineNum"> 612 </span> : }
+<span class="lineNum"> 613 </span> : return 0;
+<span class="lineNum"> 614 </span> : }
+<span class="lineNum"> 615 </span> :
+<span class="lineNum"> 616 </span> : /* Wait on the condition */
+<span class="lineNum"> 617 </span> : static inline int
+<span class="lineNum"> 618 </span> : __gthread_objc_condition_wait (objc_condition_t condition, objc_mutex_t mutex)
+<span class="lineNum"> 619 </span> : {
+<span class="lineNum"> 620 </span> : if (__gthread_active_p ())
+<span class="lineNum"> 621 </span> : return __gthrw_(pthread_cond_wait) ((pthread_cond_t *) condition-&gt;backend,
+<span class="lineNum"> 622 </span> : (pthread_mutex_t *) mutex-&gt;backend);
+<span class="lineNum"> 623 </span> : else
+<span class="lineNum"> 624 </span> : return 0;
+<span class="lineNum"> 625 </span> : }
+<span class="lineNum"> 626 </span> :
+<span class="lineNum"> 627 </span> : /* Wake up all threads waiting on this condition. */
+<span class="lineNum"> 628 </span> : static inline int
+<span class="lineNum"> 629 </span> : __gthread_objc_condition_broadcast (objc_condition_t condition)
+<span class="lineNum"> 630 </span> : {
+<span class="lineNum"> 631 </span> : if (__gthread_active_p ())
+<span class="lineNum"> 632 </span> : return __gthrw_(pthread_cond_broadcast) ((pthread_cond_t *) condition-&gt;backend);
+<span class="lineNum"> 633 </span> : else
+<span class="lineNum"> 634 </span> : return 0;
+<span class="lineNum"> 635 </span> : }
+<span class="lineNum"> 636 </span> :
+<span class="lineNum"> 637 </span> : /* Wake up one thread waiting on this condition. */
+<span class="lineNum"> 638 </span> : static inline int
+<span class="lineNum"> 639 </span> : __gthread_objc_condition_signal (objc_condition_t condition)
+<span class="lineNum"> 640 </span> : {
+<span class="lineNum"> 641 </span> : if (__gthread_active_p ())
+<span class="lineNum"> 642 </span> : return __gthrw_(pthread_cond_signal) ((pthread_cond_t *) condition-&gt;backend);
+<span class="lineNum"> 643 </span> : else
+<span class="lineNum"> 644 </span> : return 0;
+<span class="lineNum"> 645 </span> : }
+<span class="lineNum"> 646 </span> :
+<span class="lineNum"> 647 </span> : #else /* _LIBOBJC */
+<span class="lineNum"> 648 </span> :
+<span class="lineNum"> 649 </span> : static inline int
+<span class="lineNum"> 650 </span> : __gthread_once (__gthread_once_t *once, void (*func) (void))
+<span class="lineNum"> 651 </span> : {
+<span class="lineNum"> 652 </span> : if (__gthread_active_p ())
+<span class="lineNum"> 653 </span> : return __gthrw_(pthread_once) (once, func);
+<span class="lineNum"> 654 </span> : else
+<span class="lineNum"> 655 </span> : return -1;
+<span class="lineNum"> 656 </span> : }
+<span class="lineNum"> 657 </span> :
+<span class="lineNum"> 658 </span> : static inline int
+<span class="lineNum"> 659 </span> : __gthread_key_create (__gthread_key_t *key, void (*dtor) (void *))
+<span class="lineNum"> 660 </span> : {
+<span class="lineNum"> 661 </span> : return __gthrw_(pthread_key_create) (key, dtor);
+<span class="lineNum"> 662 </span> : }
+<span class="lineNum"> 663 </span> :
+<span class="lineNum"> 664 </span> : static inline int
+<span class="lineNum"> 665 </span> : __gthread_key_delete (__gthread_key_t key)
+<span class="lineNum"> 666 </span> : {
+<span class="lineNum"> 667 </span> : return __gthrw_(pthread_key_delete) (key);
+<span class="lineNum"> 668 </span> : }
+<span class="lineNum"> 669 </span> :
+<span class="lineNum"> 670 </span> : static inline void *
+<span class="lineNum"> 671 </span> : __gthread_getspecific (__gthread_key_t key)
+<span class="lineNum"> 672 </span> : {
+<span class="lineNum"> 673 </span> : return __gthrw_(pthread_getspecific) (key);
+<span class="lineNum"> 674 </span> : }
+<span class="lineNum"> 675 </span> :
+<span class="lineNum"> 676 </span> : static inline int
+<span class="lineNum"> 677 </span> : __gthread_setspecific (__gthread_key_t key, const void *ptr)
+<span class="lineNum"> 678 </span> : {
+<span class="lineNum"> 679 </span> : return __gthrw_(pthread_setspecific) (key, ptr);
+<span class="lineNum"> 680 </span> : }
+<span class="lineNum"> 681 </span> :
+<span class="lineNum"> 682 </span> : static inline int
+<span class="lineNum"> 683 </span> : __gthread_mutex_lock (__gthread_mutex_t *mutex)
+<span class="lineNum"> 684 </span> : {
+<span class="lineNum"> 685 </span> : if (__gthread_active_p ())
+<span class="lineNum"> 686 </span> : return __gthrw_(pthread_mutex_lock) (mutex);
+<span class="lineNum"> 687 </span> : else
+<span class="lineNum"> 688 </span> : return 0;
+<span class="lineNum"> 689 </span> : }
+<span class="lineNum"> 690 </span> :
+<span class="lineNum"> 691 </span> : static inline int
+<span class="lineNum"> 692 </span> : __gthread_mutex_trylock (__gthread_mutex_t *mutex)
+<span class="lineNum"> 693 </span> : {
+<span class="lineNum"> 694 </span> : if (__gthread_active_p ())
+<span class="lineNum"> 695 </span> : return __gthrw_(pthread_mutex_trylock) (mutex);
+<span class="lineNum"> 696 </span> : else
+<span class="lineNum"> 697 </span> : return 0;
+<span class="lineNum"> 698 </span> : }
+<span class="lineNum"> 699 </span> :
+<span class="lineNum"> 700 </span> : static inline int
+<span class="lineNum"> 701 </span> : __gthread_mutex_unlock (__gthread_mutex_t *mutex)
+<span class="lineNum"> 702 </span> : {
+<span class="lineNum"> 703 </span> : if (__gthread_active_p ())
+<span class="lineNum"> 704 </span> : return __gthrw_(pthread_mutex_unlock) (mutex);
+<span class="lineNum"> 705 </span> : else
+<span class="lineNum"> 706 </span> : return 0;
+<span class="lineNum"> 707 </span> : }
+<span class="lineNum"> 708 </span> :
+<span class="lineNum"> 709 </span> : #ifndef PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP
+<span class="lineNum"> 710 </span> : static inline int
+<span class="lineNum"> 711 </span> : __gthread_recursive_mutex_init_function (__gthread_recursive_mutex_t *mutex)
+<span class="lineNum"> 712 </span> : {
+<span class="lineNum"> 713 </span> : if (__gthread_active_p ())
+<span class="lineNum"> 714 </span> : {
+<span class="lineNum"> 715 </span> : pthread_mutexattr_t attr;
+<span class="lineNum"> 716 </span> : int r;
+<span class="lineNum"> 717 </span> :
+<span class="lineNum"> 718 </span> : r = __gthrw_(pthread_mutexattr_init) (&amp;attr);
+<span class="lineNum"> 719 </span> : if (!r)
+<span class="lineNum"> 720 </span> : r = __gthrw_(pthread_mutexattr_settype) (&amp;attr, PTHREAD_MUTEX_RECURSIVE);
+<span class="lineNum"> 721 </span> : if (!r)
+<span class="lineNum"> 722 </span> : r = __gthrw_(pthread_mutex_init) (mutex, &amp;attr);
+<span class="lineNum"> 723 </span> : if (!r)
+<span class="lineNum"> 724 </span> : r = __gthrw_(pthread_mutexattr_destroy) (&amp;attr);
+<span class="lineNum"> 725 </span> : return r;
+<span class="lineNum"> 726 </span> : }
+<span class="lineNum"> 727 </span> : return 0;
+<span class="lineNum"> 728 </span> : }
+<span class="lineNum"> 729 </span> : #endif
+<span class="lineNum"> 730 </span> :
+<span class="lineNum"> 731 </span> : static inline int
+<span class="lineNum"> 732 </span> : __gthread_recursive_mutex_lock (__gthread_recursive_mutex_t *mutex)
+<span class="lineNum"> 733 </span> : {
+<span class="lineNum"> 734 </span> : return __gthread_mutex_lock (mutex);
+<span class="lineNum"> 735 </span> : }
+<span class="lineNum"> 736 </span> :
+<span class="lineNum"> 737 </span> : static inline int
+<span class="lineNum"> 738 </span> : __gthread_recursive_mutex_trylock (__gthread_recursive_mutex_t *mutex)
+<span class="lineNum"> 739 </span> : {
+<span class="lineNum"> 740 </span> : return __gthread_mutex_trylock (mutex);
+<span class="lineNum"> 741 </span> : }
+<span class="lineNum"> 742 </span> :
+<span class="lineNum"> 743 </span> : static inline int
+<span class="lineNum"> 744 </span> : __gthread_recursive_mutex_unlock (__gthread_recursive_mutex_t *mutex)
+<span class="lineNum"> 745 </span> : {
+<span class="lineNum"> 746 </span> : return __gthread_mutex_unlock (mutex);
+<span class="lineNum"> 747 </span> : }
+<span class="lineNum"> 748 </span> :
+<span class="lineNum"> 749 </span> : static inline int
+<span class="lineNum"> 750 </span> : __gthread_cond_broadcast (__gthread_cond_t *cond)
+<span class="lineNum"> 751 </span> : {
+<span class="lineNum"> 752 </span> : return __gthrw_(pthread_cond_broadcast) (cond);
+<span class="lineNum"> 753 </span> : }
+<span class="lineNum"> 754 </span> :
+<span class="lineNum"> 755 </span> : static inline int
+<span class="lineNum"> 756 </span> : __gthread_cond_wait (__gthread_cond_t *cond, __gthread_mutex_t *mutex)
+<span class="lineNum"> 757 </span> : {
+<span class="lineNum"> 758 </span> : return __gthrw_(pthread_cond_wait) (cond, mutex);
+<span class="lineNum"> 759 </span> : }
+<span class="lineNum"> 760 </span> :
+<span class="lineNum"> 761 </span> : static inline int
+<span class="lineNum"> 762 </span> : __gthread_cond_wait_recursive (__gthread_cond_t *cond,
+<span class="lineNum"> 763 </span> : __gthread_recursive_mutex_t *mutex)
+<span class="lineNum"> 764 </span> : {
+<span class="lineNum"> 765 </span> : return __gthread_cond_wait (cond, mutex);
+<span class="lineNum"> 766 </span> : }
+<span class="lineNum"> 767 </span> :
+<span class="lineNum"> 768 </span> : #endif /* _LIBOBJC */
+<span class="lineNum"> 769 </span> :
+<span class="lineNum"> 770 </span> : #endif /* ! _GLIBCXX_GCC_GTHR_POSIX_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/i486-linux-gnu/bits/index.html b/rep/usr/include/c++/4.3/i486-linux-gnu/bits/index.html
new file mode 100644
index 0000000..14ebc63
--- /dev/null
+++ b/rep/usr/include/c++/4.3/i486-linux-gnu/bits/index.html
@@ -0,0 +1,83 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/i486-linux-gnu/bits</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../../index.html">directory</a> - /usr/include/c++/4.3/i486-linux-gnu/bits</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">0.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">0</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="gthr-default.h.gcov.html">gthr-default.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../../snow.png" width=100 height=10 alt="0.0%"></td></tr></table>
+ </td>
+ <td class="coverPerLo">0.0&nbsp;%</td>
+ <td class="coverNumLo">0&nbsp;/&nbsp;2&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/index.html b/rep/usr/include/c++/4.3/index.html
new file mode 100644
index 0000000..9ddc70b
--- /dev/null
+++ b/rep/usr/include/c++/4.3/index.html
@@ -0,0 +1,191 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3</title>
+ <link rel="stylesheet" type="text/css" href="../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - /usr/include/c++/4.3</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">181</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">6.6 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">12</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="cmath.gcov.html">cmath</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">2&nbsp;/&nbsp;2&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="exception.gcov.html">exception</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../emerald.png" width=50 height=10 alt="50.0%"><img src="../../../../snow.png" width=50 height=10 alt="50.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">50.0&nbsp;%</td>
+ <td class="coverNumHi">1&nbsp;/&nbsp;2&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="fstream.gcov.html">fstream</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../snow.png" width=100 height=10 alt="0.0%"></td></tr></table>
+ </td>
+ <td class="coverPerLo">0.0&nbsp;%</td>
+ <td class="coverNumLo">0&nbsp;/&nbsp;38&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="iomanip.gcov.html">iomanip</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../amber.png" width=40 height=10 alt="40.0%"><img src="../../../../snow.png" width=60 height=10 alt="40.0%"></td></tr></table>
+ </td>
+ <td class="coverPerMed">40.0&nbsp;%</td>
+ <td class="coverNumMed">4&nbsp;/&nbsp;10&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="iosfwd.gcov.html">iosfwd</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../snow.png" width=100 height=10 alt="0.0%"></td></tr></table>
+ </td>
+ <td class="coverPerLo">0.0&nbsp;%</td>
+ <td class="coverNumLo">0&nbsp;/&nbsp;1&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="iostream.gcov.html">iostream</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">1&nbsp;/&nbsp;1&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="istream.gcov.html">istream</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../snow.png" width=100 height=10 alt="0.0%"></td></tr></table>
+ </td>
+ <td class="coverPerLo">0.0&nbsp;%</td>
+ <td class="coverNumLo">0&nbsp;/&nbsp;8&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="new.gcov.html">new</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../emerald.png" width=50 height=10 alt="50.0%"><img src="../../../../snow.png" width=50 height=10 alt="50.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">50.0&nbsp;%</td>
+ <td class="coverNumHi">1&nbsp;/&nbsp;2&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="ostream.gcov.html">ostream</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../snow.png" width=100 height=10 alt="0.0%"></td></tr></table>
+ </td>
+ <td class="coverPerLo">0.0&nbsp;%</td>
+ <td class="coverNumLo">0&nbsp;/&nbsp;33&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="sstream.gcov.html">sstream</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../snow.png" width=100 height=10 alt="0.0%"></td></tr></table>
+ </td>
+ <td class="coverPerLo">0.0&nbsp;%</td>
+ <td class="coverNumLo">0&nbsp;/&nbsp;43&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="stdexcept.gcov.html">stdexcept</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">1&nbsp;/&nbsp;1&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="streambuf.gcov.html">streambuf</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../snow.png" width=100 height=10 alt="0.0%"></td></tr></table>
+ </td>
+ <td class="coverPerLo">0.0&nbsp;%</td>
+ <td class="coverNumLo">0&nbsp;/&nbsp;36&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="typeinfo.gcov.html">typeinfo</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../emerald.png" width=50 height=10 alt="50.0%"><img src="../../../../snow.png" width=50 height=10 alt="50.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">50.0&nbsp;%</td>
+ <td class="coverNumHi">2&nbsp;/&nbsp;4&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/iomanip.gcov.html b/rep/usr/include/c++/4.3/iomanip.gcov.html
new file mode 100644
index 0000000..3873f4c
--- /dev/null
+++ b/rep/usr/include/c++/4.3/iomanip.gcov.html
@@ -0,0 +1,368 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/iomanip</title>
+ <link rel="stylesheet" type="text/css" href="../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3</a> - iomanip</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">10</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">40.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">4</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Standard stream manipulators -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
+<span class="lineNum"> 4 </span> : // 2006, 2007
+<span class="lineNum"> 5 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 6 </span> : //
+<span class="lineNum"> 7 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 8 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 9 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 10 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 11 </span> : // any later version.
+<span class="lineNum"> 12 </span> :
+<span class="lineNum"> 13 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 14 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 15 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 16 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 17 </span> :
+<span class="lineNum"> 18 </span> : // You should have received a copy of the GNU General Public License
+<span class="lineNum"> 19 </span> : // along with this library; see the file COPYING. If not, write to
+<span class="lineNum"> 20 </span> : // the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+<span class="lineNum"> 21 </span> : // Boston, MA 02110-1301, USA.
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 24 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 25 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 26 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 27 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 28 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 29 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 30 </span> : // the GNU General Public License.
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : /** @file iomanip
+<span class="lineNum"> 33 </span> : * This is a Standard C++ Library header.
+<span class="lineNum"> 34 </span> : */
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : //
+<span class="lineNum"> 37 </span> : // ISO C++ 14882: 27.6.3 Standard manipulators
+<span class="lineNum"> 38 </span> : //
+<span class="lineNum"> 39 </span> :
+<span class="lineNum"> 40 </span> : #ifndef _GLIBCXX_IOMANIP
+<span class="lineNum"> 41 </span> : #define _GLIBCXX_IOMANIP 1
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : #pragma GCC system_header
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : #include &lt;bits/c++config.h&gt;
+<span class="lineNum"> 46 </span> : #include &lt;iosfwd&gt;
+<span class="lineNum"> 47 </span> : #include &lt;bits/ios_base.h&gt;
+<span class="lineNum"> 48 </span> :
+<span class="lineNum"> 49 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> : // [27.6.3] standard manipulators
+<span class="lineNum"> 52 </span> : // Also see DR 183.
+<span class="lineNum"> 53 </span> :
+<span class="lineNum"> 54 </span> : struct _Resetiosflags { ios_base::fmtflags _M_mask; };
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span> : /**
+<span class="lineNum"> 57 </span> : * @brief Manipulator for @c setf.
+<span class="lineNum"> 58 </span> : * @param mask A format flags mask.
+<span class="lineNum"> 59 </span> : *
+<span class="lineNum"> 60 </span> : * Sent to a stream object, this manipulator resets the specified flags,
+<span class="lineNum"> 61 </span> : * via @e stream.setf(0,mask).
+<span class="lineNum"> 62 </span> : */
+<span class="lineNum"> 63 </span> : inline _Resetiosflags
+<span class="lineNum"> 64 </span> : resetiosflags(ios_base::fmtflags __mask)
+<span class="lineNum"> 65 </span> : {
+<span class="lineNum"> 66 </span> : _Resetiosflags __x;
+<span class="lineNum"> 67 </span> : __x._M_mask = __mask;
+<span class="lineNum"> 68 </span> : return __x;
+<span class="lineNum"> 69 </span> : }
+<span class="lineNum"> 70 </span> :
+<span class="lineNum"> 71 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 72 </span> : inline basic_istream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 73 </span> : operator&gt;&gt;(basic_istream&lt;_CharT, _Traits&gt;&amp; __is, _Resetiosflags __f)
+<span class="lineNum"> 74 </span> : {
+<span class="lineNum"> 75 </span> : __is.setf(ios_base::fmtflags(0), __f._M_mask);
+<span class="lineNum"> 76 </span> : return __is;
+<span class="lineNum"> 77 </span> : }
+<span class="lineNum"> 78 </span> :
+<span class="lineNum"> 79 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 80 </span> : inline basic_ostream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 81 </span> : operator&lt;&lt;(basic_ostream&lt;_CharT, _Traits&gt;&amp; __os, _Resetiosflags __f)
+<span class="lineNum"> 82 </span> : {
+<span class="lineNum"> 83 </span> : __os.setf(ios_base::fmtflags(0), __f._M_mask);
+<span class="lineNum"> 84 </span> : return __os;
+<span class="lineNum"> 85 </span> : }
+<span class="lineNum"> 86 </span> :
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span> : struct _Setiosflags { ios_base::fmtflags _M_mask; };
+<span class="lineNum"> 89 </span> :
+<span class="lineNum"> 90 </span> : /**
+<span class="lineNum"> 91 </span> : * @brief Manipulator for @c setf.
+<span class="lineNum"> 92 </span> : * @param mask A format flags mask.
+<span class="lineNum"> 93 </span> : *
+<span class="lineNum"> 94 </span> : * Sent to a stream object, this manipulator sets the format flags
+<span class="lineNum"> 95 </span> : * to @a mask.
+<span class="lineNum"> 96 </span> : */
+<span class="lineNum"> 97 </span> : inline _Setiosflags
+<span class="lineNum"> 98 </span> : setiosflags(ios_base::fmtflags __mask)
+<span class="lineNum"> 99 </span> : {
+<span class="lineNum"> 100 </span> : _Setiosflags __x;
+<span class="lineNum"> 101 </span> : __x._M_mask = __mask;
+<span class="lineNum"> 102 </span> : return __x;
+<span class="lineNum"> 103 </span> : }
+<span class="lineNum"> 104 </span> :
+<span class="lineNum"> 105 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 106 </span> : inline basic_istream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 107 </span> : operator&gt;&gt;(basic_istream&lt;_CharT, _Traits&gt;&amp; __is, _Setiosflags __f)
+<span class="lineNum"> 108 </span> : {
+<span class="lineNum"> 109 </span> : __is.setf(__f._M_mask);
+<span class="lineNum"> 110 </span> : return __is;
+<span class="lineNum"> 111 </span> : }
+<span class="lineNum"> 112 </span> :
+<span class="lineNum"> 113 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 114 </span> : inline basic_ostream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 115 </span> : operator&lt;&lt;(basic_ostream&lt;_CharT, _Traits&gt;&amp; __os, _Setiosflags __f)
+<span class="lineNum"> 116 </span> : {
+<span class="lineNum"> 117 </span> : __os.setf(__f._M_mask);
+<span class="lineNum"> 118 </span> : return __os;
+<span class="lineNum"> 119 </span> : }
+<span class="lineNum"> 120 </span> :
+<span class="lineNum"> 121 </span> :
+<span class="lineNum"> 122 </span> : struct _Setbase { int _M_base; };
+<span class="lineNum"> 123 </span> :
+<span class="lineNum"> 124 </span> : /**
+<span class="lineNum"> 125 </span> : * @brief Manipulator for @c setf.
+<span class="lineNum"> 126 </span> : * @param base A numeric base.
+<span class="lineNum"> 127 </span> : *
+<span class="lineNum"> 128 </span> : * Sent to a stream object, this manipulator changes the
+<span class="lineNum"> 129 </span> : * @c ios_base::basefield flags to @c oct, @c dec, or @c hex when @a base
+<span class="lineNum"> 130 </span> : * is 8, 10, or 16, accordingly, and to 0 if @a base is any other value.
+<span class="lineNum"> 131 </span> : */
+<span class="lineNum"> 132 </span> : inline _Setbase
+<span class="lineNum"> 133 </span> : setbase(int __base)
+<span class="lineNum"> 134 </span> : {
+<span class="lineNum"> 135 </span> : _Setbase __x;
+<span class="lineNum"> 136 </span> : __x._M_base = __base;
+<span class="lineNum"> 137 </span> : return __x;
+<span class="lineNum"> 138 </span> : }
+<span class="lineNum"> 139 </span> :
+<span class="lineNum"> 140 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 141 </span> : inline basic_istream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 142 </span> : operator&gt;&gt;(basic_istream&lt;_CharT, _Traits&gt;&amp; __is, _Setbase __f)
+<span class="lineNum"> 143 </span> : {
+<span class="lineNum"> 144 </span> : __is.setf(__f._M_base == 8 ? ios_base::oct :
+<span class="lineNum"> 145 </span> : __f._M_base == 10 ? ios_base::dec :
+<span class="lineNum"> 146 </span> : __f._M_base == 16 ? ios_base::hex :
+<span class="lineNum"> 147 </span> : ios_base::fmtflags(0), ios_base::basefield);
+<span class="lineNum"> 148 </span> : return __is;
+<span class="lineNum"> 149 </span> : }
+<span class="lineNum"> 150 </span> :
+<span class="lineNum"> 151 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 152 </span> : inline basic_ostream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 153 </span> : operator&lt;&lt;(basic_ostream&lt;_CharT, _Traits&gt;&amp; __os, _Setbase __f)
+<span class="lineNum"> 154 </span> : {
+<span class="lineNum"> 155 </span> : __os.setf(__f._M_base == 8 ? ios_base::oct :
+<span class="lineNum"> 156 </span> : __f._M_base == 10 ? ios_base::dec :
+<span class="lineNum"> 157 </span> : __f._M_base == 16 ? ios_base::hex :
+<span class="lineNum"> 158 </span> : ios_base::fmtflags(0), ios_base::basefield);
+<span class="lineNum"> 159 </span> : return __os;
+<span class="lineNum"> 160 </span> : }
+<span class="lineNum"> 161 </span> :
+<span class="lineNum"> 162 </span> :
+<span class="lineNum"> 163 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 164 </span> : struct _Setfill { _CharT _M_c; };
+<span class="lineNum"> 165 </span> :
+<span class="lineNum"> 166 </span> : /**
+<span class="lineNum"> 167 </span> : * @brief Manipulator for @c fill.
+<span class="lineNum"> 168 </span> : * @param c The new fill character.
+<span class="lineNum"> 169 </span> : *
+<span class="lineNum"> 170 </span> : * Sent to a stream object, this manipulator calls @c fill(c) for that
+<span class="lineNum"> 171 </span> : * object.
+<span class="lineNum"> 172 </span> : */
+<span class="lineNum"> 173 </span> : template&lt;typename _CharT&gt;
+<span class="lineNum"> 174 </span> : inline _Setfill&lt;_CharT&gt;
+<span class="lineNum"> 175 </span><span class="lineCov"> 33 : setfill(_CharT __c)</span>
+<span class="lineNum"> 176 </span> : {
+<span class="lineNum"> 177 </span> : _Setfill&lt;_CharT&gt; __x;
+<span class="lineNum"> 178 </span><span class="lineCov"> 33 : __x._M_c = __c; </span>
+<span class="lineNum"> 179 </span> : return __x;
+<span class="lineNum"> 180 </span> : }
+<span class="lineNum"> 181 </span> :
+<span class="lineNum"> 182 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 183 </span> : inline basic_istream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 184 </span> : operator&gt;&gt;(basic_istream&lt;_CharT, _Traits&gt;&amp; __is, _Setfill&lt;_CharT&gt; __f)
+<span class="lineNum"> 185 </span> : {
+<span class="lineNum"> 186 </span> : __is.fill(__f._M_c);
+<span class="lineNum"> 187 </span> : return __is;
+<span class="lineNum"> 188 </span> : }
+<span class="lineNum"> 189 </span> :
+<span class="lineNum"> 190 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 191 </span> : inline basic_ostream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 192 </span><span class="lineNoCov"> 0 : operator&lt;&lt;(basic_ostream&lt;_CharT, _Traits&gt;&amp; __os, _Setfill&lt;_CharT&gt; __f)</span>
+<span class="lineNum"> 193 </span> : {
+<span class="lineNum"> 194 </span><span class="lineNoCov"> 0 : __os.fill(__f._M_c); </span>
+<span class="lineNum"> 195 </span><span class="lineNoCov"> 0 : return __os; </span>
+<span class="lineNum"> 196 </span> : }
+<span class="lineNum"> 197 </span> :
+<span class="lineNum"> 198 </span> :
+<span class="lineNum"> 199 </span> : struct _Setprecision { int _M_n; };
+<span class="lineNum"> 200 </span> :
+<span class="lineNum"> 201 </span> : /**
+<span class="lineNum"> 202 </span> : * @brief Manipulator for @c precision.
+<span class="lineNum"> 203 </span> : * @param n The new precision.
+<span class="lineNum"> 204 </span> : *
+<span class="lineNum"> 205 </span> : * Sent to a stream object, this manipulator calls @c precision(n) for
+<span class="lineNum"> 206 </span> : * that object.
+<span class="lineNum"> 207 </span> : */
+<span class="lineNum"> 208 </span> : inline _Setprecision
+<span class="lineNum"> 209 </span> : setprecision(int __n)
+<span class="lineNum"> 210 </span> : {
+<span class="lineNum"> 211 </span> : _Setprecision __x;
+<span class="lineNum"> 212 </span> : __x._M_n = __n;
+<span class="lineNum"> 213 </span> : return __x;
+<span class="lineNum"> 214 </span> : }
+<span class="lineNum"> 215 </span> :
+<span class="lineNum"> 216 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 217 </span> : inline basic_istream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 218 </span> : operator&gt;&gt;(basic_istream&lt;_CharT, _Traits&gt;&amp; __is, _Setprecision __f)
+<span class="lineNum"> 219 </span> : {
+<span class="lineNum"> 220 </span> : __is.precision(__f._M_n);
+<span class="lineNum"> 221 </span> : return __is;
+<span class="lineNum"> 222 </span> : }
+<span class="lineNum"> 223 </span> :
+<span class="lineNum"> 224 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 225 </span> : inline basic_ostream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 226 </span> : operator&lt;&lt;(basic_ostream&lt;_CharT, _Traits&gt;&amp; __os, _Setprecision __f)
+<span class="lineNum"> 227 </span> : {
+<span class="lineNum"> 228 </span> : __os.precision(__f._M_n);
+<span class="lineNum"> 229 </span> : return __os;
+<span class="lineNum"> 230 </span> : }
+<span class="lineNum"> 231 </span> :
+<span class="lineNum"> 232 </span> :
+<span class="lineNum"> 233 </span> : struct _Setw { int _M_n; };
+<span class="lineNum"> 234 </span> :
+<span class="lineNum"> 235 </span> : /**
+<span class="lineNum"> 236 </span> : * @brief Manipulator for @c width.
+<span class="lineNum"> 237 </span> : * @param n The new width.
+<span class="lineNum"> 238 </span> : *
+<span class="lineNum"> 239 </span> : * Sent to a stream object, this manipulator calls @c width(n) for
+<span class="lineNum"> 240 </span> : * that object.
+<span class="lineNum"> 241 </span> : */
+<span class="lineNum"> 242 </span> : inline _Setw
+<span class="lineNum"> 243 </span><span class="lineCov"> 165 : setw(int __n)</span>
+<span class="lineNum"> 244 </span> : {
+<span class="lineNum"> 245 </span> : _Setw __x;
+<span class="lineNum"> 246 </span><span class="lineCov"> 165 : __x._M_n = __n; </span>
+<span class="lineNum"> 247 </span> : return __x;
+<span class="lineNum"> 248 </span> : }
+<span class="lineNum"> 249 </span> :
+<span class="lineNum"> 250 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 251 </span> : inline basic_istream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 252 </span> : operator&gt;&gt;(basic_istream&lt;_CharT, _Traits&gt;&amp; __is, _Setw __f)
+<span class="lineNum"> 253 </span> : {
+<span class="lineNum"> 254 </span> : __is.width(__f._M_n);
+<span class="lineNum"> 255 </span> : return __is;
+<span class="lineNum"> 256 </span> : }
+<span class="lineNum"> 257 </span> :
+<span class="lineNum"> 258 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 259 </span> : inline basic_ostream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 260 </span><span class="lineNoCov"> 0 : operator&lt;&lt;(basic_ostream&lt;_CharT, _Traits&gt;&amp; __os, _Setw __f)</span>
+<span class="lineNum"> 261 </span> : {
+<span class="lineNum"> 262 </span><span class="lineNoCov"> 0 : __os.width(__f._M_n); </span>
+<span class="lineNum"> 263 </span><span class="lineNoCov"> 0 : return __os; </span>
+<span class="lineNum"> 264 </span> : }
+<span class="lineNum"> 265 </span> :
+<span class="lineNum"> 266 </span> : // Inhibit implicit instantiations for required instantiations,
+<span class="lineNum"> 267 </span> : // which are defined via explicit instantiations elsewhere.
+<span class="lineNum"> 268 </span> : // NB: This syntax is a GNU extension.
+<span class="lineNum"> 269 </span> : #if _GLIBCXX_EXTERN_TEMPLATE
+<span class="lineNum"> 270 </span> : extern template ostream&amp; operator&lt;&lt;(ostream&amp;, _Setfill&lt;char&gt;);
+<span class="lineNum"> 271 </span> : extern template ostream&amp; operator&lt;&lt;(ostream&amp;, _Setiosflags);
+<span class="lineNum"> 272 </span> : extern template ostream&amp; operator&lt;&lt;(ostream&amp;, _Resetiosflags);
+<span class="lineNum"> 273 </span> : extern template ostream&amp; operator&lt;&lt;(ostream&amp;, _Setbase);
+<span class="lineNum"> 274 </span> : extern template ostream&amp; operator&lt;&lt;(ostream&amp;, _Setprecision);
+<span class="lineNum"> 275 </span> : extern template ostream&amp; operator&lt;&lt;(ostream&amp;, _Setw);
+<span class="lineNum"> 276 </span> : extern template istream&amp; operator&gt;&gt;(istream&amp;, _Setfill&lt;char&gt;);
+<span class="lineNum"> 277 </span> : extern template istream&amp; operator&gt;&gt;(istream&amp;, _Setiosflags);
+<span class="lineNum"> 278 </span> : extern template istream&amp; operator&gt;&gt;(istream&amp;, _Resetiosflags);
+<span class="lineNum"> 279 </span> : extern template istream&amp; operator&gt;&gt;(istream&amp;, _Setbase);
+<span class="lineNum"> 280 </span> : extern template istream&amp; operator&gt;&gt;(istream&amp;, _Setprecision);
+<span class="lineNum"> 281 </span> : extern template istream&amp; operator&gt;&gt;(istream&amp;, _Setw);
+<span class="lineNum"> 282 </span> :
+<span class="lineNum"> 283 </span> : #ifdef _GLIBCXX_USE_WCHAR_T
+<span class="lineNum"> 284 </span> : extern template wostream&amp; operator&lt;&lt;(wostream&amp;, _Setfill&lt;wchar_t&gt;);
+<span class="lineNum"> 285 </span> : extern template wostream&amp; operator&lt;&lt;(wostream&amp;, _Setiosflags);
+<span class="lineNum"> 286 </span> : extern template wostream&amp; operator&lt;&lt;(wostream&amp;, _Resetiosflags);
+<span class="lineNum"> 287 </span> : extern template wostream&amp; operator&lt;&lt;(wostream&amp;, _Setbase);
+<span class="lineNum"> 288 </span> : extern template wostream&amp; operator&lt;&lt;(wostream&amp;, _Setprecision);
+<span class="lineNum"> 289 </span> : extern template wostream&amp; operator&lt;&lt;(wostream&amp;, _Setw);
+<span class="lineNum"> 290 </span> : extern template wistream&amp; operator&gt;&gt;(wistream&amp;, _Setfill&lt;wchar_t&gt;);
+<span class="lineNum"> 291 </span> : extern template wistream&amp; operator&gt;&gt;(wistream&amp;, _Setiosflags);
+<span class="lineNum"> 292 </span> : extern template wistream&amp; operator&gt;&gt;(wistream&amp;, _Resetiosflags);
+<span class="lineNum"> 293 </span> : extern template wistream&amp; operator&gt;&gt;(wistream&amp;, _Setbase);
+<span class="lineNum"> 294 </span> : extern template wistream&amp; operator&gt;&gt;(wistream&amp;, _Setprecision);
+<span class="lineNum"> 295 </span> : extern template wistream&amp; operator&gt;&gt;(wistream&amp;, _Setw);
+<span class="lineNum"> 296 </span> : #endif
+<span class="lineNum"> 297 </span> : #endif
+<span class="lineNum"> 298 </span> :
+<span class="lineNum"> 299 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 300 </span> :
+<span class="lineNum"> 301 </span> : #endif /* _GLIBCXX_IOMANIP */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/iosfwd.gcov.html b/rep/usr/include/c++/4.3/iosfwd.gcov.html
new file mode 100644
index 0000000..1509075
--- /dev/null
+++ b/rep/usr/include/c++/4.3/iosfwd.gcov.html
@@ -0,0 +1,232 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/iosfwd</title>
+ <link rel="stylesheet" type="text/css" href="../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3</a> - iosfwd</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">0.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">0</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Forwarding declarations -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+<span class="lineNum"> 4 </span> : // 2006, 2007
+<span class="lineNum"> 5 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 6 </span> : //
+<span class="lineNum"> 7 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 8 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 9 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 10 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 11 </span> : // any later version.
+<span class="lineNum"> 12 </span> :
+<span class="lineNum"> 13 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 14 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 15 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 16 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 17 </span> :
+<span class="lineNum"> 18 </span> : // You should have received a copy of the GNU General Public License
+<span class="lineNum"> 19 </span> : // along with this library; see the file COPYING. If not, write to
+<span class="lineNum"> 20 </span> : // the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+<span class="lineNum"> 21 </span> : // Boston, MA 02110-1301, USA.
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 24 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 25 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 26 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 27 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 28 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 29 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 30 </span> : // the GNU General Public License.
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : /** @file iosfwd
+<span class="lineNum"> 33 </span> : * This is a Standard C++ Library header.
+<span class="lineNum"> 34 </span> : */
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : //
+<span class="lineNum"> 37 </span> : // ISO C++ 14882: 27.2 Forward declarations
+<span class="lineNum"> 38 </span> : //
+<span class="lineNum"> 39 </span> :
+<span class="lineNum"> 40 </span> : #ifndef _GLIBCXX_IOSFWD
+<span class="lineNum"> 41 </span> : #define _GLIBCXX_IOSFWD 1
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : #pragma GCC system_header
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : #include &lt;bits/c++config.h&gt;
+<span class="lineNum"> 46 </span> : #include &lt;bits/stringfwd.h&gt; // For string forward declarations.
+<span class="lineNum"> 47 </span> : #include &lt;bits/postypes.h&gt;
+<span class="lineNum"> 48 </span> :
+<span class="lineNum"> 49 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> : template&lt;typename _CharT, typename _Traits = char_traits&lt;_CharT&gt; &gt;
+<span class="lineNum"> 52 </span> : class basic_ios;
+<span class="lineNum"> 53 </span> :
+<span class="lineNum"> 54 </span> : template&lt;typename _CharT, typename _Traits = char_traits&lt;_CharT&gt; &gt;
+<span class="lineNum"> 55 </span> : class basic_streambuf;
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : template&lt;typename _CharT, typename _Traits = char_traits&lt;_CharT&gt; &gt;
+<span class="lineNum"> 58 </span> : class basic_istream;
+<span class="lineNum"> 59 </span> :
+<span class="lineNum"> 60 </span> : template&lt;typename _CharT, typename _Traits = char_traits&lt;_CharT&gt; &gt;
+<span class="lineNum"> 61 </span> : class basic_ostream;
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span> : template&lt;typename _CharT, typename _Traits = char_traits&lt;_CharT&gt; &gt;
+<span class="lineNum"> 64 </span> : class basic_iostream;
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span> : template&lt;typename _CharT, typename _Traits = char_traits&lt;_CharT&gt;,
+<span class="lineNum"> 67 </span> : typename _Alloc = allocator&lt;_CharT&gt; &gt;
+<span class="lineNum"> 68 </span><span class="lineNoCov"> 0 : class basic_stringbuf;</span>
+<span class="lineNum"> 69 </span> :
+<span class="lineNum"> 70 </span> : template&lt;typename _CharT, typename _Traits = char_traits&lt;_CharT&gt;,
+<span class="lineNum"> 71 </span> : typename _Alloc = allocator&lt;_CharT&gt; &gt;
+<span class="lineNum"> 72 </span> : class basic_istringstream;
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span> : template&lt;typename _CharT, typename _Traits = char_traits&lt;_CharT&gt;,
+<span class="lineNum"> 75 </span> : typename _Alloc = allocator&lt;_CharT&gt; &gt;
+<span class="lineNum"> 76 </span> : class basic_ostringstream;
+<span class="lineNum"> 77 </span> :
+<span class="lineNum"> 78 </span> : template&lt;typename _CharT, typename _Traits = char_traits&lt;_CharT&gt;,
+<span class="lineNum"> 79 </span> : typename _Alloc = allocator&lt;_CharT&gt; &gt;
+<span class="lineNum"> 80 </span> : class basic_stringstream;
+<span class="lineNum"> 81 </span> :
+<span class="lineNum"> 82 </span> : template&lt;typename _CharT, typename _Traits = char_traits&lt;_CharT&gt; &gt;
+<span class="lineNum"> 83 </span> : class basic_filebuf;
+<span class="lineNum"> 84 </span> :
+<span class="lineNum"> 85 </span> : template&lt;typename _CharT, typename _Traits = char_traits&lt;_CharT&gt; &gt;
+<span class="lineNum"> 86 </span> : class basic_ifstream;
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span> : template&lt;typename _CharT, typename _Traits = char_traits&lt;_CharT&gt; &gt;
+<span class="lineNum"> 89 </span> : class basic_ofstream;
+<span class="lineNum"> 90 </span> :
+<span class="lineNum"> 91 </span> : template&lt;typename _CharT, typename _Traits = char_traits&lt;_CharT&gt; &gt;
+<span class="lineNum"> 92 </span> : class basic_fstream;
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span> : template&lt;typename _CharT, typename _Traits = char_traits&lt;_CharT&gt; &gt;
+<span class="lineNum"> 95 </span> : class istreambuf_iterator;
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span> : template&lt;typename _CharT, typename _Traits = char_traits&lt;_CharT&gt; &gt;
+<span class="lineNum"> 98 </span> : class ostreambuf_iterator;
+<span class="lineNum"> 99 </span> :
+<span class="lineNum"> 100 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 101 </span> : // Not included. (??? Apparently no LWG number?)
+<span class="lineNum"> 102 </span> : class ios_base;
+<span class="lineNum"> 103 </span> :
+<span class="lineNum"> 104 </span> : /**
+<span class="lineNum"> 105 </span> : * @defgroup s27_2_iosfwd I/O Forward Declarations
+<span class="lineNum"> 106 </span> : *
+<span class="lineNum"> 107 </span> : * Nearly all of the I/O classes are parameterized on the type of
+<span class="lineNum"> 108 </span> : * characters they read and write. (The major exception is ios_base at
+<span class="lineNum"> 109 </span> : * the top of the hierarchy.) This is a change from pre-Standard
+<span class="lineNum"> 110 </span> : * streams, which were not templates.
+<span class="lineNum"> 111 </span> : *
+<span class="lineNum"> 112 </span> : * For ease of use and compatibility, all of the basic_* I/O-related
+<span class="lineNum"> 113 </span> : * classes are given typedef names for both of the builtin character
+<span class="lineNum"> 114 </span> : * widths (wide and narrow). The typedefs are the same as the
+<span class="lineNum"> 115 </span> : * pre-Standard names, for example:
+<span class="lineNum"> 116 </span> : *
+<span class="lineNum"> 117 </span> : * @code
+<span class="lineNum"> 118 </span> : * typedef basic_ifstream&lt;char&gt; ifstream;
+<span class="lineNum"> 119 </span> : * @endcode
+<span class="lineNum"> 120 </span> : *
+<span class="lineNum"> 121 </span> : * Because properly forward-declaring these classes can be difficult, you
+<span class="lineNum"> 122 </span> : * should not do it yourself. Instead, include the &amp;lt;iosfwd&amp;gt;
+<span class="lineNum"> 123 </span> : * header, which contains only declarations of all the I/O classes as
+<span class="lineNum"> 124 </span> : * well as the typedefs. Trying to forward-declare the typedefs
+<span class="lineNum"> 125 </span> : * themselves (e.g., &quot;class ostream;&quot;) is not valid ISO C++.
+<span class="lineNum"> 126 </span> : *
+<span class="lineNum"> 127 </span> : * For more specific declarations, see
+<span class="lineNum"> 128 </span> : * http://gcc.gnu.org/onlinedocs/libstdc++/27_io/howto.html#10
+<span class="lineNum"> 129 </span> : *
+<span class="lineNum"> 130 </span> : * @{
+<span class="lineNum"> 131 </span> : */
+<span class="lineNum"> 132 </span> : typedef basic_ios&lt;char&gt; ios; ///&lt; @isiosfwd
+<span class="lineNum"> 133 </span> : typedef basic_streambuf&lt;char&gt; streambuf; ///&lt; @isiosfwd
+<span class="lineNum"> 134 </span> : typedef basic_istream&lt;char&gt; istream; ///&lt; @isiosfwd
+<span class="lineNum"> 135 </span> : typedef basic_ostream&lt;char&gt; ostream; ///&lt; @isiosfwd
+<span class="lineNum"> 136 </span> : typedef basic_iostream&lt;char&gt; iostream; ///&lt; @isiosfwd
+<span class="lineNum"> 137 </span> : typedef basic_stringbuf&lt;char&gt; stringbuf; ///&lt; @isiosfwd
+<span class="lineNum"> 138 </span> : typedef basic_istringstream&lt;char&gt; istringstream; ///&lt; @isiosfwd
+<span class="lineNum"> 139 </span> : typedef basic_ostringstream&lt;char&gt; ostringstream; ///&lt; @isiosfwd
+<span class="lineNum"> 140 </span> : typedef basic_stringstream&lt;char&gt; stringstream; ///&lt; @isiosfwd
+<span class="lineNum"> 141 </span> : typedef basic_filebuf&lt;char&gt; filebuf; ///&lt; @isiosfwd
+<span class="lineNum"> 142 </span> : typedef basic_ifstream&lt;char&gt; ifstream; ///&lt; @isiosfwd
+<span class="lineNum"> 143 </span> : typedef basic_ofstream&lt;char&gt; ofstream; ///&lt; @isiosfwd
+<span class="lineNum"> 144 </span> : typedef basic_fstream&lt;char&gt; fstream; ///&lt; @isiosfwd
+<span class="lineNum"> 145 </span> :
+<span class="lineNum"> 146 </span> : #ifdef _GLIBCXX_USE_WCHAR_T
+<span class="lineNum"> 147 </span> : typedef basic_ios&lt;wchar_t&gt; wios; ///&lt; @isiosfwd
+<span class="lineNum"> 148 </span> : typedef basic_streambuf&lt;wchar_t&gt; wstreambuf; ///&lt; @isiosfwd
+<span class="lineNum"> 149 </span> : typedef basic_istream&lt;wchar_t&gt; wistream; ///&lt; @isiosfwd
+<span class="lineNum"> 150 </span> : typedef basic_ostream&lt;wchar_t&gt; wostream; ///&lt; @isiosfwd
+<span class="lineNum"> 151 </span> : typedef basic_iostream&lt;wchar_t&gt; wiostream; ///&lt; @isiosfwd
+<span class="lineNum"> 152 </span> : typedef basic_stringbuf&lt;wchar_t&gt; wstringbuf; ///&lt; @isiosfwd
+<span class="lineNum"> 153 </span> : typedef basic_istringstream&lt;wchar_t&gt; wistringstream; ///&lt; @isiosfwd
+<span class="lineNum"> 154 </span> : typedef basic_ostringstream&lt;wchar_t&gt; wostringstream; ///&lt; @isiosfwd
+<span class="lineNum"> 155 </span> : typedef basic_stringstream&lt;wchar_t&gt; wstringstream; ///&lt; @isiosfwd
+<span class="lineNum"> 156 </span> : typedef basic_filebuf&lt;wchar_t&gt; wfilebuf; ///&lt; @isiosfwd
+<span class="lineNum"> 157 </span> : typedef basic_ifstream&lt;wchar_t&gt; wifstream; ///&lt; @isiosfwd
+<span class="lineNum"> 158 </span> : typedef basic_ofstream&lt;wchar_t&gt; wofstream; ///&lt; @isiosfwd
+<span class="lineNum"> 159 </span> : typedef basic_fstream&lt;wchar_t&gt; wfstream; ///&lt; @isiosfwd
+<span class="lineNum"> 160 </span> : #endif
+<span class="lineNum"> 161 </span> : /** @} */
+<span class="lineNum"> 162 </span> :
+<span class="lineNum"> 163 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 164 </span> :
+<span class="lineNum"> 165 </span> : #endif /* _GLIBCXX_IOSFWD */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/iostream.gcov.html b/rep/usr/include/c++/4.3/iostream.gcov.html
new file mode 100644
index 0000000..26372c4
--- /dev/null
+++ b/rep/usr/include/c++/4.3/iostream.gcov.html
@@ -0,0 +1,148 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/iostream</title>
+ <link rel="stylesheet" type="text/css" href="../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3</a> - iostream</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Standard iostream objects -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 1997, 1998, 1999, 2001, 2002, 2005
+<span class="lineNum"> 4 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License
+<span class="lineNum"> 18 </span> : // along with this library; see the file COPYING. If not, write to
+<span class="lineNum"> 19 </span> : // the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+<span class="lineNum"> 20 </span> : // Boston, MA 02110-1301, USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /** @file iostream
+<span class="lineNum"> 32 </span> : * This is a Standard C++ Library header.
+<span class="lineNum"> 33 </span> : */
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : //
+<span class="lineNum"> 36 </span> : // ISO C++ 14882: 27.3 Standard iostream objects
+<span class="lineNum"> 37 </span> : //
+<span class="lineNum"> 38 </span> :
+<span class="lineNum"> 39 </span> : #ifndef _GLIBCXX_IOSTREAM
+<span class="lineNum"> 40 </span> : #define _GLIBCXX_IOSTREAM 1
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span> : #pragma GCC system_header
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span> : #include &lt;bits/c++config.h&gt;
+<span class="lineNum"> 45 </span> : #include &lt;ostream&gt;
+<span class="lineNum"> 46 </span> : #include &lt;istream&gt;
+<span class="lineNum"> 47 </span> :
+<span class="lineNum"> 48 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span> : /**
+<span class="lineNum"> 51 </span> : * @name Standard Stream Objects
+<span class="lineNum"> 52 </span> : *
+<span class="lineNum"> 53 </span> : * The &amp;lt;iostream&amp;gt; header declares the eight &lt;em&gt;standard stream
+<span class="lineNum"> 54 </span> : * objects&lt;/em&gt;. For other declarations, see
+<span class="lineNum"> 55 </span> : * http://gcc.gnu.org/onlinedocs/libstdc++/27_io/howto.html#10 and the
+<span class="lineNum"> 56 </span> : * @link s27_2_iosfwd I/O forward declarations @endlink
+<span class="lineNum"> 57 </span> : *
+<span class="lineNum"> 58 </span> : * They are required by default to cooperate with the global C library's
+<span class="lineNum"> 59 </span> : * @c FILE streams, and to be available during program startup and
+<span class="lineNum"> 60 </span> : * termination. For more information, see the HOWTO linked to above.
+<span class="lineNum"> 61 </span> : */
+<span class="lineNum"> 62 </span> : //@{
+<span class="lineNum"> 63 </span> : extern istream cin; ///&lt; Linked to standard input
+<span class="lineNum"> 64 </span> : extern ostream cout; ///&lt; Linked to standard output
+<span class="lineNum"> 65 </span> : extern ostream cerr; ///&lt; Linked to standard error (unbuffered)
+<span class="lineNum"> 66 </span> : extern ostream clog; ///&lt; Linked to standard error (buffered)
+<span class="lineNum"> 67 </span> :
+<span class="lineNum"> 68 </span> : #ifdef _GLIBCXX_USE_WCHAR_T
+<span class="lineNum"> 69 </span> : extern wistream wcin; ///&lt; Linked to standard input
+<span class="lineNum"> 70 </span> : extern wostream wcout; ///&lt; Linked to standard output
+<span class="lineNum"> 71 </span> : extern wostream wcerr; ///&lt; Linked to standard error (unbuffered)
+<span class="lineNum"> 72 </span> : extern wostream wclog; ///&lt; Linked to standard error (buffered)
+<span class="lineNum"> 73 </span> : #endif
+<span class="lineNum"> 74 </span> : //@}
+<span class="lineNum"> 75 </span> :
+<span class="lineNum"> 76 </span> : // For construction of filebuffers for cout, cin, cerr, clog et. al.
+<span class="lineNum"> 77 </span><span class="lineCov"> 104 : static ios_base::Init __ioinit;</span>
+<span class="lineNum"> 78 </span> :
+<span class="lineNum"> 79 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span> : #endif /* _GLIBCXX_IOSTREAM */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/istream.gcov.html b/rep/usr/include/c++/4.3/istream.gcov.html
new file mode 100644
index 0000000..e8ffaf0
--- /dev/null
+++ b/rep/usr/include/c++/4.3/istream.gcov.html
@@ -0,0 +1,906 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/istream</title>
+ <link rel="stylesheet" type="text/css" href="../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3</a> - istream</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">8</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">0.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">0</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Input streams -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+<span class="lineNum"> 4 </span> : // 2006, 2007, 2008
+<span class="lineNum"> 5 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 6 </span> : //
+<span class="lineNum"> 7 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 8 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 9 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 10 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 11 </span> : // any later version.
+<span class="lineNum"> 12 </span> :
+<span class="lineNum"> 13 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 14 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 15 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 16 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 17 </span> :
+<span class="lineNum"> 18 </span> : // You should have received a copy of the GNU General Public License
+<span class="lineNum"> 19 </span> : // along with this library; see the file COPYING. If not, write to
+<span class="lineNum"> 20 </span> : // the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+<span class="lineNum"> 21 </span> : // Boston, MA 02110-1301, USA.
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 24 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 25 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 26 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 27 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 28 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 29 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 30 </span> : // the GNU General Public License.
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : //
+<span class="lineNum"> 33 </span> : // ISO C++ 14882: 27.6.1 Input streams
+<span class="lineNum"> 34 </span> : //
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : /** @file istream
+<span class="lineNum"> 37 </span> : * This is a Standard C++ Library header.
+<span class="lineNum"> 38 </span> : */
+<span class="lineNum"> 39 </span> :
+<span class="lineNum"> 40 </span> : #ifndef _GLIBCXX_ISTREAM
+<span class="lineNum"> 41 </span> : #define _GLIBCXX_ISTREAM 1
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : #pragma GCC system_header
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : #include &lt;ios&gt;
+<span class="lineNum"> 46 </span> : #include &lt;ostream&gt;
+<span class="lineNum"> 47 </span> :
+<span class="lineNum"> 48 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span> : // [27.6.1.1] Template class basic_istream
+<span class="lineNum"> 51 </span> : /**
+<span class="lineNum"> 52 </span> : * @brief Controlling input.
+<span class="lineNum"> 53 </span> : *
+<span class="lineNum"> 54 </span> : * This is the base class for all input streams. It provides text
+<span class="lineNum"> 55 </span> : * formatting of all builtin types, and communicates with any class
+<span class="lineNum"> 56 </span> : * derived from basic_streambuf to do the actual input.
+<span class="lineNum"> 57 </span> : */
+<span class="lineNum"> 58 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 59 </span> : class basic_istream : virtual public basic_ios&lt;_CharT, _Traits&gt;
+<span class="lineNum"> 60 </span> : {
+<span class="lineNum"> 61 </span> : public:
+<span class="lineNum"> 62 </span> : // Types (inherited from basic_ios (27.4.4)):
+<span class="lineNum"> 63 </span> : typedef _CharT char_type;
+<span class="lineNum"> 64 </span> : typedef typename _Traits::int_type int_type;
+<span class="lineNum"> 65 </span> : typedef typename _Traits::pos_type pos_type;
+<span class="lineNum"> 66 </span> : typedef typename _Traits::off_type off_type;
+<span class="lineNum"> 67 </span> : typedef _Traits traits_type;
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span> : // Non-standard Types:
+<span class="lineNum"> 70 </span> : typedef basic_streambuf&lt;_CharT, _Traits&gt; __streambuf_type;
+<span class="lineNum"> 71 </span> : typedef basic_ios&lt;_CharT, _Traits&gt; __ios_type;
+<span class="lineNum"> 72 </span> : typedef basic_istream&lt;_CharT, _Traits&gt; __istream_type;
+<span class="lineNum"> 73 </span> : typedef num_get&lt;_CharT, istreambuf_iterator&lt;_CharT, _Traits&gt; &gt;
+<span class="lineNum"> 74 </span> : __num_get_type;
+<span class="lineNum"> 75 </span> : typedef ctype&lt;_CharT&gt; __ctype_type;
+<span class="lineNum"> 76 </span> :
+<span class="lineNum"> 77 </span> : protected:
+<span class="lineNum"> 78 </span> : // Data Members:
+<span class="lineNum"> 79 </span> : /**
+<span class="lineNum"> 80 </span> : * The number of characters extracted in the previous unformatted
+<span class="lineNum"> 81 </span> : * function; see gcount().
+<span class="lineNum"> 82 </span> : */
+<span class="lineNum"> 83 </span> : streamsize _M_gcount;
+<span class="lineNum"> 84 </span> :
+<span class="lineNum"> 85 </span> : public:
+<span class="lineNum"> 86 </span> : // [27.6.1.1.1] constructor/destructor
+<span class="lineNum"> 87 </span> : /**
+<span class="lineNum"> 88 </span> : * @brief Base constructor.
+<span class="lineNum"> 89 </span> : *
+<span class="lineNum"> 90 </span> : * This ctor is almost never called by the user directly, rather from
+<span class="lineNum"> 91 </span> : * derived classes' initialization lists, which pass a pointer to
+<span class="lineNum"> 92 </span> : * their own stream buffer.
+<span class="lineNum"> 93 </span> : */
+<span class="lineNum"> 94 </span> : explicit
+<span class="lineNum"> 95 </span> : basic_istream(__streambuf_type* __sb)
+<span class="lineNum"> 96 </span> : : _M_gcount(streamsize(0))
+<span class="lineNum"> 97 </span> : { this-&gt;init(__sb); }
+<span class="lineNum"> 98 </span> :
+<span class="lineNum"> 99 </span> : /**
+<span class="lineNum"> 100 </span> : * @brief Base destructor.
+<span class="lineNum"> 101 </span> : *
+<span class="lineNum"> 102 </span> : * This does very little apart from providing a virtual base dtor.
+<span class="lineNum"> 103 </span> : */
+<span class="lineNum"> 104 </span> : virtual
+<span class="lineNum"> 105 </span><span class="lineNoCov"> 0 : ~basic_istream() </span>
+<span class="lineNum"> 106 </span><span class="lineNoCov"> 0 : { _M_gcount = streamsize(0); }</span>
+<span class="lineNum"> 107 </span> :
+<span class="lineNum"> 108 </span> : // [27.6.1.1.2] prefix/suffix
+<span class="lineNum"> 109 </span> : class sentry;
+<span class="lineNum"> 110 </span> : friend class sentry;
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span> : // [27.6.1.2] formatted input
+<span class="lineNum"> 113 </span> : // [27.6.1.2.3] basic_istream::operator&gt;&gt;
+<span class="lineNum"> 114 </span> : //@{
+<span class="lineNum"> 115 </span> : /**
+<span class="lineNum"> 116 </span> : * @brief Interface for manipulators.
+<span class="lineNum"> 117 </span> : *
+<span class="lineNum"> 118 </span> : * Manipulators such as @c std::ws and @c std::dec use these
+<span class="lineNum"> 119 </span> : * functions in constructs like &quot;std::cin &gt;&gt; std::ws&quot;. For more
+<span class="lineNum"> 120 </span> : * information, see the iomanip header.
+<span class="lineNum"> 121 </span> : */
+<span class="lineNum"> 122 </span> : __istream_type&amp;
+<span class="lineNum"> 123 </span> : operator&gt;&gt;(__istream_type&amp; (*__pf)(__istream_type&amp;))
+<span class="lineNum"> 124 </span> : { return __pf(*this); }
+<span class="lineNum"> 125 </span> :
+<span class="lineNum"> 126 </span> : __istream_type&amp;
+<span class="lineNum"> 127 </span> : operator&gt;&gt;(__ios_type&amp; (*__pf)(__ios_type&amp;))
+<span class="lineNum"> 128 </span> : {
+<span class="lineNum"> 129 </span> : __pf(*this);
+<span class="lineNum"> 130 </span> : return *this;
+<span class="lineNum"> 131 </span> : }
+<span class="lineNum"> 132 </span> :
+<span class="lineNum"> 133 </span> : __istream_type&amp;
+<span class="lineNum"> 134 </span> : operator&gt;&gt;(ios_base&amp; (*__pf)(ios_base&amp;))
+<span class="lineNum"> 135 </span> : {
+<span class="lineNum"> 136 </span> : __pf(*this);
+<span class="lineNum"> 137 </span> : return *this;
+<span class="lineNum"> 138 </span> : }
+<span class="lineNum"> 139 </span> : //@}
+<span class="lineNum"> 140 </span> :
+<span class="lineNum"> 141 </span> : // [27.6.1.2.2] arithmetic extractors
+<span class="lineNum"> 142 </span> : /**
+<span class="lineNum"> 143 </span> : * @name Arithmetic Extractors
+<span class="lineNum"> 144 </span> : *
+<span class="lineNum"> 145 </span> : * All the @c operator&gt;&gt; functions (aka &lt;em&gt;formatted input
+<span class="lineNum"> 146 </span> : * functions&lt;/em&gt;) have some common behavior. Each starts by
+<span class="lineNum"> 147 </span> : * constructing a temporary object of type std::basic_istream::sentry
+<span class="lineNum"> 148 </span> : * with the second argument (noskipws) set to false. This has several
+<span class="lineNum"> 149 </span> : * effects, concluding with the setting of a status flag; see the
+<span class="lineNum"> 150 </span> : * sentry documentation for more.
+<span class="lineNum"> 151 </span> : *
+<span class="lineNum"> 152 </span> : * If the sentry status is good, the function tries to extract
+<span class="lineNum"> 153 </span> : * whatever data is appropriate for the type of the argument.
+<span class="lineNum"> 154 </span> : *
+<span class="lineNum"> 155 </span> : * If an exception is thrown during extraction, ios_base::badbit
+<span class="lineNum"> 156 </span> : * will be turned on in the stream's error state without causing an
+<span class="lineNum"> 157 </span> : * ios_base::failure to be thrown. The original exception will then
+<span class="lineNum"> 158 </span> : * be rethrown.
+<span class="lineNum"> 159 </span> : */
+<span class="lineNum"> 160 </span> : //@{
+<span class="lineNum"> 161 </span> : /**
+<span class="lineNum"> 162 </span> : * @brief Basic arithmetic extractors
+<span class="lineNum"> 163 </span> : * @param A variable of builtin type.
+<span class="lineNum"> 164 </span> : * @return @c *this if successful
+<span class="lineNum"> 165 </span> : *
+<span class="lineNum"> 166 </span> : * These functions use the stream's current locale (specifically, the
+<span class="lineNum"> 167 </span> : * @c num_get facet) to parse the input data.
+<span class="lineNum"> 168 </span> : */
+<span class="lineNum"> 169 </span> : __istream_type&amp;
+<span class="lineNum"> 170 </span> : operator&gt;&gt;(bool&amp; __n)
+<span class="lineNum"> 171 </span> : { return _M_extract(__n); }
+<span class="lineNum"> 172 </span> :
+<span class="lineNum"> 173 </span> : __istream_type&amp;
+<span class="lineNum"> 174 </span> : operator&gt;&gt;(short&amp; __n);
+<span class="lineNum"> 175 </span> :
+<span class="lineNum"> 176 </span> : __istream_type&amp;
+<span class="lineNum"> 177 </span> : operator&gt;&gt;(unsigned short&amp; __n)
+<span class="lineNum"> 178 </span> : { return _M_extract(__n); }
+<span class="lineNum"> 179 </span> :
+<span class="lineNum"> 180 </span> : __istream_type&amp;
+<span class="lineNum"> 181 </span> : operator&gt;&gt;(int&amp; __n);
+<span class="lineNum"> 182 </span> :
+<span class="lineNum"> 183 </span> : __istream_type&amp;
+<span class="lineNum"> 184 </span> : operator&gt;&gt;(unsigned int&amp; __n)
+<span class="lineNum"> 185 </span> : { return _M_extract(__n); }
+<span class="lineNum"> 186 </span> :
+<span class="lineNum"> 187 </span> : __istream_type&amp;
+<span class="lineNum"> 188 </span> : operator&gt;&gt;(long&amp; __n)
+<span class="lineNum"> 189 </span> : { return _M_extract(__n); }
+<span class="lineNum"> 190 </span> :
+<span class="lineNum"> 191 </span> : __istream_type&amp;
+<span class="lineNum"> 192 </span> : operator&gt;&gt;(unsigned long&amp; __n)
+<span class="lineNum"> 193 </span> : { return _M_extract(__n); }
+<span class="lineNum"> 194 </span> :
+<span class="lineNum"> 195 </span> : #ifdef _GLIBCXX_USE_LONG_LONG
+<span class="lineNum"> 196 </span> : __istream_type&amp;
+<span class="lineNum"> 197 </span> : operator&gt;&gt;(long long&amp; __n)
+<span class="lineNum"> 198 </span> : { return _M_extract(__n); }
+<span class="lineNum"> 199 </span> :
+<span class="lineNum"> 200 </span> : __istream_type&amp;
+<span class="lineNum"> 201 </span> : operator&gt;&gt;(unsigned long long&amp; __n)
+<span class="lineNum"> 202 </span> : { return _M_extract(__n); }
+<span class="lineNum"> 203 </span> : #endif
+<span class="lineNum"> 204 </span> :
+<span class="lineNum"> 205 </span> : __istream_type&amp;
+<span class="lineNum"> 206 </span> : operator&gt;&gt;(float&amp; __f)
+<span class="lineNum"> 207 </span> : { return _M_extract(__f); }
+<span class="lineNum"> 208 </span> :
+<span class="lineNum"> 209 </span> : __istream_type&amp;
+<span class="lineNum"> 210 </span> : operator&gt;&gt;(double&amp; __f)
+<span class="lineNum"> 211 </span> : { return _M_extract(__f); }
+<span class="lineNum"> 212 </span> :
+<span class="lineNum"> 213 </span> : __istream_type&amp;
+<span class="lineNum"> 214 </span> : operator&gt;&gt;(long double&amp; __f)
+<span class="lineNum"> 215 </span> : { return _M_extract(__f); }
+<span class="lineNum"> 216 </span> :
+<span class="lineNum"> 217 </span> : __istream_type&amp;
+<span class="lineNum"> 218 </span> : operator&gt;&gt;(void*&amp; __p)
+<span class="lineNum"> 219 </span> : { return _M_extract(__p); }
+<span class="lineNum"> 220 </span> :
+<span class="lineNum"> 221 </span> : /**
+<span class="lineNum"> 222 </span> : * @brief Extracting into another streambuf.
+<span class="lineNum"> 223 </span> : * @param sb A pointer to a streambuf
+<span class="lineNum"> 224 </span> : *
+<span class="lineNum"> 225 </span> : * This function behaves like one of the basic arithmetic extractors,
+<span class="lineNum"> 226 </span> : * in that it also constructs a sentry object and has the same error
+<span class="lineNum"> 227 </span> : * handling behavior.
+<span class="lineNum"> 228 </span> : *
+<span class="lineNum"> 229 </span> : * If @a sb is NULL, the stream will set failbit in its error state.
+<span class="lineNum"> 230 </span> : *
+<span class="lineNum"> 231 </span> : * Characters are extracted from this stream and inserted into the
+<span class="lineNum"> 232 </span> : * @a sb streambuf until one of the following occurs:
+<span class="lineNum"> 233 </span> : *
+<span class="lineNum"> 234 </span> : * - the input stream reaches end-of-file,
+<span class="lineNum"> 235 </span> : * - insertion into the output buffer fails (in this case, the
+<span class="lineNum"> 236 </span> : * character that would have been inserted is not extracted), or
+<span class="lineNum"> 237 </span> : * - an exception occurs (and in this case is caught)
+<span class="lineNum"> 238 </span> : *
+<span class="lineNum"> 239 </span> : * If the function inserts no characters, failbit is set.
+<span class="lineNum"> 240 </span> : */
+<span class="lineNum"> 241 </span> : __istream_type&amp;
+<span class="lineNum"> 242 </span> : operator&gt;&gt;(__streambuf_type* __sb);
+<span class="lineNum"> 243 </span> : //@}
+<span class="lineNum"> 244 </span> :
+<span class="lineNum"> 245 </span> : // [27.6.1.3] unformatted input
+<span class="lineNum"> 246 </span> : /**
+<span class="lineNum"> 247 </span> : * @brief Character counting
+<span class="lineNum"> 248 </span> : * @return The number of characters extracted by the previous
+<span class="lineNum"> 249 </span> : * unformatted input function dispatched for this stream.
+<span class="lineNum"> 250 </span> : */
+<span class="lineNum"> 251 </span> : streamsize
+<span class="lineNum"> 252 </span> : gcount() const
+<span class="lineNum"> 253 </span> : { return _M_gcount; }
+<span class="lineNum"> 254 </span> :
+<span class="lineNum"> 255 </span> : /**
+<span class="lineNum"> 256 </span> : * @name Unformatted Input Functions
+<span class="lineNum"> 257 </span> : *
+<span class="lineNum"> 258 </span> : * All the unformatted input functions have some common behavior.
+<span class="lineNum"> 259 </span> : * Each starts by constructing a temporary object of type
+<span class="lineNum"> 260 </span> : * std::basic_istream::sentry with the second argument (noskipws)
+<span class="lineNum"> 261 </span> : * set to true. This has several effects, concluding with the
+<span class="lineNum"> 262 </span> : * setting of a status flag; see the sentry documentation for more.
+<span class="lineNum"> 263 </span> : *
+<span class="lineNum"> 264 </span> : * If the sentry status is good, the function tries to extract
+<span class="lineNum"> 265 </span> : * whatever data is appropriate for the type of the argument.
+<span class="lineNum"> 266 </span> : *
+<span class="lineNum"> 267 </span> : * The number of characters extracted is stored for later retrieval
+<span class="lineNum"> 268 </span> : * by gcount().
+<span class="lineNum"> 269 </span> : *
+<span class="lineNum"> 270 </span> : * If an exception is thrown during extraction, ios_base::badbit
+<span class="lineNum"> 271 </span> : * will be turned on in the stream's error state without causing an
+<span class="lineNum"> 272 </span> : * ios_base::failure to be thrown. The original exception will then
+<span class="lineNum"> 273 </span> : * be rethrown.
+<span class="lineNum"> 274 </span> : */
+<span class="lineNum"> 275 </span> : //@{
+<span class="lineNum"> 276 </span> : /**
+<span class="lineNum"> 277 </span> : * @brief Simple extraction.
+<span class="lineNum"> 278 </span> : * @return A character, or eof().
+<span class="lineNum"> 279 </span> : *
+<span class="lineNum"> 280 </span> : * Tries to extract a character. If none are available, sets failbit
+<span class="lineNum"> 281 </span> : * and returns traits::eof().
+<span class="lineNum"> 282 </span> : */
+<span class="lineNum"> 283 </span> : int_type
+<span class="lineNum"> 284 </span> : get();
+<span class="lineNum"> 285 </span> :
+<span class="lineNum"> 286 </span> : /**
+<span class="lineNum"> 287 </span> : * @brief Simple extraction.
+<span class="lineNum"> 288 </span> : * @param c The character in which to store data.
+<span class="lineNum"> 289 </span> : * @return *this
+<span class="lineNum"> 290 </span> : *
+<span class="lineNum"> 291 </span> : * Tries to extract a character and store it in @a c. If none are
+<span class="lineNum"> 292 </span> : * available, sets failbit and returns traits::eof().
+<span class="lineNum"> 293 </span> : *
+<span class="lineNum"> 294 </span> : * @note This function is not overloaded on signed char and
+<span class="lineNum"> 295 </span> : * unsigned char.
+<span class="lineNum"> 296 </span> : */
+<span class="lineNum"> 297 </span> : __istream_type&amp;
+<span class="lineNum"> 298 </span> : get(char_type&amp; __c);
+<span class="lineNum"> 299 </span> :
+<span class="lineNum"> 300 </span> : /**
+<span class="lineNum"> 301 </span> : * @brief Simple multiple-character extraction.
+<span class="lineNum"> 302 </span> : * @param s Pointer to an array.
+<span class="lineNum"> 303 </span> : * @param n Maximum number of characters to store in @a s.
+<span class="lineNum"> 304 </span> : * @param delim A &quot;stop&quot; character.
+<span class="lineNum"> 305 </span> : * @return *this
+<span class="lineNum"> 306 </span> : *
+<span class="lineNum"> 307 </span> : * Characters are extracted and stored into @a s until one of the
+<span class="lineNum"> 308 </span> : * following happens:
+<span class="lineNum"> 309 </span> : *
+<span class="lineNum"> 310 </span> : * - @c n-1 characters are stored
+<span class="lineNum"> 311 </span> : * - the input sequence reaches EOF
+<span class="lineNum"> 312 </span> : * - the next character equals @a delim, in which case the character
+<span class="lineNum"> 313 </span> : * is not extracted
+<span class="lineNum"> 314 </span> : *
+<span class="lineNum"> 315 </span> : * If no characters are stored, failbit is set in the stream's error
+<span class="lineNum"> 316 </span> : * state.
+<span class="lineNum"> 317 </span> : *
+<span class="lineNum"> 318 </span> : * In any case, a null character is stored into the next location in
+<span class="lineNum"> 319 </span> : * the array.
+<span class="lineNum"> 320 </span> : *
+<span class="lineNum"> 321 </span> : * @note This function is not overloaded on signed char and
+<span class="lineNum"> 322 </span> : * unsigned char.
+<span class="lineNum"> 323 </span> : */
+<span class="lineNum"> 324 </span> : __istream_type&amp;
+<span class="lineNum"> 325 </span> : get(char_type* __s, streamsize __n, char_type __delim);
+<span class="lineNum"> 326 </span> :
+<span class="lineNum"> 327 </span> : /**
+<span class="lineNum"> 328 </span> : * @brief Simple multiple-character extraction.
+<span class="lineNum"> 329 </span> : * @param s Pointer to an array.
+<span class="lineNum"> 330 </span> : * @param n Maximum number of characters to store in @a s.
+<span class="lineNum"> 331 </span> : * @return *this
+<span class="lineNum"> 332 </span> : *
+<span class="lineNum"> 333 </span> : * Returns @c get(s,n,widen('\n')).
+<span class="lineNum"> 334 </span> : */
+<span class="lineNum"> 335 </span> : __istream_type&amp;
+<span class="lineNum"> 336 </span> : get(char_type* __s, streamsize __n)
+<span class="lineNum"> 337 </span> : { return this-&gt;get(__s, __n, this-&gt;widen('\n')); }
+<span class="lineNum"> 338 </span> :
+<span class="lineNum"> 339 </span> : /**
+<span class="lineNum"> 340 </span> : * @brief Extraction into another streambuf.
+<span class="lineNum"> 341 </span> : * @param sb A streambuf in which to store data.
+<span class="lineNum"> 342 </span> : * @param delim A &quot;stop&quot; character.
+<span class="lineNum"> 343 </span> : * @return *this
+<span class="lineNum"> 344 </span> : *
+<span class="lineNum"> 345 </span> : * Characters are extracted and inserted into @a sb until one of the
+<span class="lineNum"> 346 </span> : * following happens:
+<span class="lineNum"> 347 </span> : *
+<span class="lineNum"> 348 </span> : * - the input sequence reaches EOF
+<span class="lineNum"> 349 </span> : * - insertion into the output buffer fails (in this case, the
+<span class="lineNum"> 350 </span> : * character that would have been inserted is not extracted)
+<span class="lineNum"> 351 </span> : * - the next character equals @a delim (in this case, the character
+<span class="lineNum"> 352 </span> : * is not extracted)
+<span class="lineNum"> 353 </span> : * - an exception occurs (and in this case is caught)
+<span class="lineNum"> 354 </span> : *
+<span class="lineNum"> 355 </span> : * If no characters are stored, failbit is set in the stream's error
+<span class="lineNum"> 356 </span> : * state.
+<span class="lineNum"> 357 </span> : */
+<span class="lineNum"> 358 </span> : __istream_type&amp;
+<span class="lineNum"> 359 </span> : get(__streambuf_type&amp; __sb, char_type __delim);
+<span class="lineNum"> 360 </span> :
+<span class="lineNum"> 361 </span> : /**
+<span class="lineNum"> 362 </span> : * @brief Extraction into another streambuf.
+<span class="lineNum"> 363 </span> : * @param sb A streambuf in which to store data.
+<span class="lineNum"> 364 </span> : * @return *this
+<span class="lineNum"> 365 </span> : *
+<span class="lineNum"> 366 </span> : * Returns @c get(sb,widen('\n')).
+<span class="lineNum"> 367 </span> : */
+<span class="lineNum"> 368 </span> : __istream_type&amp;
+<span class="lineNum"> 369 </span> : get(__streambuf_type&amp; __sb)
+<span class="lineNum"> 370 </span> : { return this-&gt;get(__sb, this-&gt;widen('\n')); }
+<span class="lineNum"> 371 </span> :
+<span class="lineNum"> 372 </span> : /**
+<span class="lineNum"> 373 </span> : * @brief String extraction.
+<span class="lineNum"> 374 </span> : * @param s A character array in which to store the data.
+<span class="lineNum"> 375 </span> : * @param n Maximum number of characters to extract.
+<span class="lineNum"> 376 </span> : * @param delim A &quot;stop&quot; character.
+<span class="lineNum"> 377 </span> : * @return *this
+<span class="lineNum"> 378 </span> : *
+<span class="lineNum"> 379 </span> : * Extracts and stores characters into @a s until one of the
+<span class="lineNum"> 380 </span> : * following happens. Note that these criteria are required to be
+<span class="lineNum"> 381 </span> : * tested in the order listed here, to allow an input line to exactly
+<span class="lineNum"> 382 </span> : * fill the @a s array without setting failbit.
+<span class="lineNum"> 383 </span> : *
+<span class="lineNum"> 384 </span> : * -# the input sequence reaches end-of-file, in which case eofbit
+<span class="lineNum"> 385 </span> : * is set in the stream error state
+<span class="lineNum"> 386 </span> : * -# the next character equals @c delim, in which case the character
+<span class="lineNum"> 387 </span> : * is extracted (and therefore counted in @c gcount()) but not stored
+<span class="lineNum"> 388 </span> : * -# @c n-1 characters are stored, in which case failbit is set
+<span class="lineNum"> 389 </span> : * in the stream error state
+<span class="lineNum"> 390 </span> : *
+<span class="lineNum"> 391 </span> : * If no characters are extracted, failbit is set. (An empty line of
+<span class="lineNum"> 392 </span> : * input should therefore not cause failbit to be set.)
+<span class="lineNum"> 393 </span> : *
+<span class="lineNum"> 394 </span> : * In any case, a null character is stored in the next location in
+<span class="lineNum"> 395 </span> : * the array.
+<span class="lineNum"> 396 </span> : */
+<span class="lineNum"> 397 </span> : __istream_type&amp;
+<span class="lineNum"> 398 </span> : getline(char_type* __s, streamsize __n, char_type __delim);
+<span class="lineNum"> 399 </span> :
+<span class="lineNum"> 400 </span> : /**
+<span class="lineNum"> 401 </span> : * @brief String extraction.
+<span class="lineNum"> 402 </span> : * @param s A character array in which to store the data.
+<span class="lineNum"> 403 </span> : * @param n Maximum number of characters to extract.
+<span class="lineNum"> 404 </span> : * @return *this
+<span class="lineNum"> 405 </span> : *
+<span class="lineNum"> 406 </span> : * Returns @c getline(s,n,widen('\n')).
+<span class="lineNum"> 407 </span> : */
+<span class="lineNum"> 408 </span> : __istream_type&amp;
+<span class="lineNum"> 409 </span> : getline(char_type* __s, streamsize __n)
+<span class="lineNum"> 410 </span> : { return this-&gt;getline(__s, __n, this-&gt;widen('\n')); }
+<span class="lineNum"> 411 </span> :
+<span class="lineNum"> 412 </span> : /**
+<span class="lineNum"> 413 </span> : * @brief Discarding characters
+<span class="lineNum"> 414 </span> : * @param n Number of characters to discard.
+<span class="lineNum"> 415 </span> : * @param delim A &quot;stop&quot; character.
+<span class="lineNum"> 416 </span> : * @return *this
+<span class="lineNum"> 417 </span> : *
+<span class="lineNum"> 418 </span> : * Extracts characters and throws them away until one of the
+<span class="lineNum"> 419 </span> : * following happens:
+<span class="lineNum"> 420 </span> : * - if @a n @c != @c std::numeric_limits&lt;int&gt;::max(), @a n
+<span class="lineNum"> 421 </span> : * characters are extracted
+<span class="lineNum"> 422 </span> : * - the input sequence reaches end-of-file
+<span class="lineNum"> 423 </span> : * - the next character equals @a delim (in this case, the character
+<span class="lineNum"> 424 </span> : * is extracted); note that this condition will never occur if
+<span class="lineNum"> 425 </span> : * @a delim equals @c traits::eof().
+<span class="lineNum"> 426 </span> : *
+<span class="lineNum"> 427 </span> : * NB: Provide three overloads, instead of the single function
+<span class="lineNum"> 428 </span> : * (with defaults) mandated by the Standard: this leads to a
+<span class="lineNum"> 429 </span> : * better performing implementation, while still conforming to
+<span class="lineNum"> 430 </span> : * the Standard.
+<span class="lineNum"> 431 </span> : */
+<span class="lineNum"> 432 </span> : __istream_type&amp;
+<span class="lineNum"> 433 </span> : ignore();
+<span class="lineNum"> 434 </span> :
+<span class="lineNum"> 435 </span> : __istream_type&amp;
+<span class="lineNum"> 436 </span> : ignore(streamsize __n);
+<span class="lineNum"> 437 </span> :
+<span class="lineNum"> 438 </span> : __istream_type&amp;
+<span class="lineNum"> 439 </span> : ignore(streamsize __n, int_type __delim);
+<span class="lineNum"> 440 </span> :
+<span class="lineNum"> 441 </span> : /**
+<span class="lineNum"> 442 </span> : * @brief Looking ahead in the stream
+<span class="lineNum"> 443 </span> : * @return The next character, or eof().
+<span class="lineNum"> 444 </span> : *
+<span class="lineNum"> 445 </span> : * If, after constructing the sentry object, @c good() is false,
+<span class="lineNum"> 446 </span> : * returns @c traits::eof(). Otherwise reads but does not extract
+<span class="lineNum"> 447 </span> : * the next input character.
+<span class="lineNum"> 448 </span> : */
+<span class="lineNum"> 449 </span> : int_type
+<span class="lineNum"> 450 </span> : peek();
+<span class="lineNum"> 451 </span> :
+<span class="lineNum"> 452 </span> : /**
+<span class="lineNum"> 453 </span> : * @brief Extraction without delimiters.
+<span class="lineNum"> 454 </span> : * @param s A character array.
+<span class="lineNum"> 455 </span> : * @param n Maximum number of characters to store.
+<span class="lineNum"> 456 </span> : * @return *this
+<span class="lineNum"> 457 </span> : *
+<span class="lineNum"> 458 </span> : * If the stream state is @c good(), extracts characters and stores
+<span class="lineNum"> 459 </span> : * them into @a s until one of the following happens:
+<span class="lineNum"> 460 </span> : * - @a n characters are stored
+<span class="lineNum"> 461 </span> : * - the input sequence reaches end-of-file, in which case the error
+<span class="lineNum"> 462 </span> : * state is set to @c failbit|eofbit.
+<span class="lineNum"> 463 </span> : *
+<span class="lineNum"> 464 </span> : * @note This function is not overloaded on signed char and
+<span class="lineNum"> 465 </span> : * unsigned char.
+<span class="lineNum"> 466 </span> : */
+<span class="lineNum"> 467 </span> : __istream_type&amp;
+<span class="lineNum"> 468 </span> : read(char_type* __s, streamsize __n);
+<span class="lineNum"> 469 </span> :
+<span class="lineNum"> 470 </span> : /**
+<span class="lineNum"> 471 </span> : * @brief Extraction until the buffer is exhausted, but no more.
+<span class="lineNum"> 472 </span> : * @param s A character array.
+<span class="lineNum"> 473 </span> : * @param n Maximum number of characters to store.
+<span class="lineNum"> 474 </span> : * @return The number of characters extracted.
+<span class="lineNum"> 475 </span> : *
+<span class="lineNum"> 476 </span> : * Extracts characters and stores them into @a s depending on the
+<span class="lineNum"> 477 </span> : * number of characters remaining in the streambuf's buffer,
+<span class="lineNum"> 478 </span> : * @c rdbuf()-&gt;in_avail(), called @c A here:
+<span class="lineNum"> 479 </span> : * - if @c A @c == @c -1, sets eofbit and extracts no characters
+<span class="lineNum"> 480 </span> : * - if @c A @c == @c 0, extracts no characters
+<span class="lineNum"> 481 </span> : * - if @c A @c &gt; @c 0, extracts @c min(A,n)
+<span class="lineNum"> 482 </span> : *
+<span class="lineNum"> 483 </span> : * The goal is to empty the current buffer, and to not request any
+<span class="lineNum"> 484 </span> : * more from the external input sequence controlled by the streambuf.
+<span class="lineNum"> 485 </span> : */
+<span class="lineNum"> 486 </span> : streamsize
+<span class="lineNum"> 487 </span> : readsome(char_type* __s, streamsize __n);
+<span class="lineNum"> 488 </span> :
+<span class="lineNum"> 489 </span> : /**
+<span class="lineNum"> 490 </span> : * @brief Unextracting a single character.
+<span class="lineNum"> 491 </span> : * @param c The character to push back into the input stream.
+<span class="lineNum"> 492 </span> : * @return *this
+<span class="lineNum"> 493 </span> : *
+<span class="lineNum"> 494 </span> : * If @c rdbuf() is not null, calls @c rdbuf()-&gt;sputbackc(c).
+<span class="lineNum"> 495 </span> : *
+<span class="lineNum"> 496 </span> : * If @c rdbuf() is null or if @c sputbackc() fails, sets badbit in
+<span class="lineNum"> 497 </span> : * the error state.
+<span class="lineNum"> 498 </span> : *
+<span class="lineNum"> 499 </span> : * @note Since no characters are extracted, the next call to
+<span class="lineNum"> 500 </span> : * @c gcount() will return 0, as required by DR 60.
+<span class="lineNum"> 501 </span> : */
+<span class="lineNum"> 502 </span> : __istream_type&amp;
+<span class="lineNum"> 503 </span> : putback(char_type __c);
+<span class="lineNum"> 504 </span> :
+<span class="lineNum"> 505 </span> : /**
+<span class="lineNum"> 506 </span> : * @brief Unextracting the previous character.
+<span class="lineNum"> 507 </span> : * @return *this
+<span class="lineNum"> 508 </span> : *
+<span class="lineNum"> 509 </span> : * If @c rdbuf() is not null, calls @c rdbuf()-&gt;sungetc(c).
+<span class="lineNum"> 510 </span> : *
+<span class="lineNum"> 511 </span> : * If @c rdbuf() is null or if @c sungetc() fails, sets badbit in
+<span class="lineNum"> 512 </span> : * the error state.
+<span class="lineNum"> 513 </span> : *
+<span class="lineNum"> 514 </span> : * @note Since no characters are extracted, the next call to
+<span class="lineNum"> 515 </span> : * @c gcount() will return 0, as required by DR 60.
+<span class="lineNum"> 516 </span> : */
+<span class="lineNum"> 517 </span> : __istream_type&amp;
+<span class="lineNum"> 518 </span> : unget();
+<span class="lineNum"> 519 </span> :
+<span class="lineNum"> 520 </span> : /**
+<span class="lineNum"> 521 </span> : * @brief Synchronizing the stream buffer.
+<span class="lineNum"> 522 </span> : * @return 0 on success, -1 on failure
+<span class="lineNum"> 523 </span> : *
+<span class="lineNum"> 524 </span> : * If @c rdbuf() is a null pointer, returns -1.
+<span class="lineNum"> 525 </span> : *
+<span class="lineNum"> 526 </span> : * Otherwise, calls @c rdbuf()-&gt;pubsync(), and if that returns -1,
+<span class="lineNum"> 527 </span> : * sets badbit and returns -1.
+<span class="lineNum"> 528 </span> : *
+<span class="lineNum"> 529 </span> : * Otherwise, returns 0.
+<span class="lineNum"> 530 </span> : *
+<span class="lineNum"> 531 </span> : * @note This function does not count the number of characters
+<span class="lineNum"> 532 </span> : * extracted, if any, and therefore does not affect the next
+<span class="lineNum"> 533 </span> : * call to @c gcount().
+<span class="lineNum"> 534 </span> : */
+<span class="lineNum"> 535 </span> : int
+<span class="lineNum"> 536 </span> : sync();
+<span class="lineNum"> 537 </span> :
+<span class="lineNum"> 538 </span> : /**
+<span class="lineNum"> 539 </span> : * @brief Getting the current read position.
+<span class="lineNum"> 540 </span> : * @return A file position object.
+<span class="lineNum"> 541 </span> : *
+<span class="lineNum"> 542 </span> : * If @c fail() is not false, returns @c pos_type(-1) to indicate
+<span class="lineNum"> 543 </span> : * failure. Otherwise returns @c rdbuf()-&gt;pubseekoff(0,cur,in).
+<span class="lineNum"> 544 </span> : *
+<span class="lineNum"> 545 </span> : * @note This function does not count the number of characters
+<span class="lineNum"> 546 </span> : * extracted, if any, and therefore does not affect the next
+<span class="lineNum"> 547 </span> : * call to @c gcount().
+<span class="lineNum"> 548 </span> : */
+<span class="lineNum"> 549 </span> : pos_type
+<span class="lineNum"> 550 </span> : tellg();
+<span class="lineNum"> 551 </span> :
+<span class="lineNum"> 552 </span> : /**
+<span class="lineNum"> 553 </span> : * @brief Changing the current read position.
+<span class="lineNum"> 554 </span> : * @param pos A file position object.
+<span class="lineNum"> 555 </span> : * @return *this
+<span class="lineNum"> 556 </span> : *
+<span class="lineNum"> 557 </span> : * If @c fail() is not true, calls @c rdbuf()-&gt;pubseekpos(pos). If
+<span class="lineNum"> 558 </span> : * that function fails, sets failbit.
+<span class="lineNum"> 559 </span> : *
+<span class="lineNum"> 560 </span> : * @note This function does not count the number of characters
+<span class="lineNum"> 561 </span> : * extracted, if any, and therefore does not affect the next
+<span class="lineNum"> 562 </span> : * call to @c gcount().
+<span class="lineNum"> 563 </span> : */
+<span class="lineNum"> 564 </span> : __istream_type&amp;
+<span class="lineNum"> 565 </span> : seekg(pos_type);
+<span class="lineNum"> 566 </span> :
+<span class="lineNum"> 567 </span> : /**
+<span class="lineNum"> 568 </span> : * @brief Changing the current read position.
+<span class="lineNum"> 569 </span> : * @param off A file offset object.
+<span class="lineNum"> 570 </span> : * @param dir The direction in which to seek.
+<span class="lineNum"> 571 </span> : * @return *this
+<span class="lineNum"> 572 </span> : *
+<span class="lineNum"> 573 </span> : * If @c fail() is not true, calls @c rdbuf()-&gt;pubseekoff(off,dir).
+<span class="lineNum"> 574 </span> : * If that function fails, sets failbit.
+<span class="lineNum"> 575 </span> : *
+<span class="lineNum"> 576 </span> : * @note This function does not count the number of characters
+<span class="lineNum"> 577 </span> : * extracted, if any, and therefore does not affect the next
+<span class="lineNum"> 578 </span> : * call to @c gcount().
+<span class="lineNum"> 579 </span> : */
+<span class="lineNum"> 580 </span> : __istream_type&amp;
+<span class="lineNum"> 581 </span> : seekg(off_type, ios_base::seekdir);
+<span class="lineNum"> 582 </span> : //@}
+<span class="lineNum"> 583 </span> :
+<span class="lineNum"> 584 </span> : protected:
+<span class="lineNum"> 585 </span><span class="lineNoCov"> 0 : basic_istream()</span>
+<span class="lineNum"> 586 </span><span class="lineNoCov"> 0 : : _M_gcount(streamsize(0))</span>
+<span class="lineNum"> 587 </span><span class="lineNoCov"> 0 : { this-&gt;init(0); }</span>
+<span class="lineNum"> 588 </span> :
+<span class="lineNum"> 589 </span> : template&lt;typename _ValueT&gt;
+<span class="lineNum"> 590 </span> : __istream_type&amp;
+<span class="lineNum"> 591 </span> : _M_extract(_ValueT&amp; __v);
+<span class="lineNum"> 592 </span> : };
+<span class="lineNum"> 593 </span> :
+<span class="lineNum"> 594 </span> : // Explicit specialization declarations, defined in src/istream.cc.
+<span class="lineNum"> 595 </span> : template&lt;&gt;
+<span class="lineNum"> 596 </span> : basic_istream&lt;char&gt;&amp;
+<span class="lineNum"> 597 </span> : basic_istream&lt;char&gt;::
+<span class="lineNum"> 598 </span> : getline(char_type* __s, streamsize __n, char_type __delim);
+<span class="lineNum"> 599 </span> :
+<span class="lineNum"> 600 </span> : template&lt;&gt;
+<span class="lineNum"> 601 </span> : basic_istream&lt;char&gt;&amp;
+<span class="lineNum"> 602 </span> : basic_istream&lt;char&gt;::
+<span class="lineNum"> 603 </span> : ignore(streamsize __n);
+<span class="lineNum"> 604 </span> :
+<span class="lineNum"> 605 </span> : template&lt;&gt;
+<span class="lineNum"> 606 </span> : basic_istream&lt;char&gt;&amp;
+<span class="lineNum"> 607 </span> : basic_istream&lt;char&gt;::
+<span class="lineNum"> 608 </span> : ignore(streamsize __n, int_type __delim);
+<span class="lineNum"> 609 </span> :
+<span class="lineNum"> 610 </span> : #ifdef _GLIBCXX_USE_WCHAR_T
+<span class="lineNum"> 611 </span> : template&lt;&gt;
+<span class="lineNum"> 612 </span> : basic_istream&lt;wchar_t&gt;&amp;
+<span class="lineNum"> 613 </span> : basic_istream&lt;wchar_t&gt;::
+<span class="lineNum"> 614 </span> : getline(char_type* __s, streamsize __n, char_type __delim);
+<span class="lineNum"> 615 </span> :
+<span class="lineNum"> 616 </span> : template&lt;&gt;
+<span class="lineNum"> 617 </span> : basic_istream&lt;wchar_t&gt;&amp;
+<span class="lineNum"> 618 </span> : basic_istream&lt;wchar_t&gt;::
+<span class="lineNum"> 619 </span> : ignore(streamsize __n);
+<span class="lineNum"> 620 </span> :
+<span class="lineNum"> 621 </span> : template&lt;&gt;
+<span class="lineNum"> 622 </span> : basic_istream&lt;wchar_t&gt;&amp;
+<span class="lineNum"> 623 </span> : basic_istream&lt;wchar_t&gt;::
+<span class="lineNum"> 624 </span> : ignore(streamsize __n, int_type __delim);
+<span class="lineNum"> 625 </span> : #endif
+<span class="lineNum"> 626 </span> :
+<span class="lineNum"> 627 </span> : /**
+<span class="lineNum"> 628 </span> : * @brief Performs setup work for input streams.
+<span class="lineNum"> 629 </span> : *
+<span class="lineNum"> 630 </span> : * Objects of this class are created before all of the standard
+<span class="lineNum"> 631 </span> : * extractors are run. It is responsible for &quot;exception-safe prefix and
+<span class="lineNum"> 632 </span> : * suffix operations,&quot; although only prefix actions are currently required
+<span class="lineNum"> 633 </span> : * by the standard. Additional actions may be added by the
+<span class="lineNum"> 634 </span> : * implementation, and we list them in
+<span class="lineNum"> 635 </span> : * http://gcc.gnu.org/onlinedocs/libstdc++/17_intro/howto.html#5
+<span class="lineNum"> 636 </span> : * under [27.6] notes.
+<span class="lineNum"> 637 </span> : */
+<span class="lineNum"> 638 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 639 </span> : class basic_istream&lt;_CharT, _Traits&gt;::sentry
+<span class="lineNum"> 640 </span> : {
+<span class="lineNum"> 641 </span> : public:
+<span class="lineNum"> 642 </span> : /// Easy access to dependant types.
+<span class="lineNum"> 643 </span> : typedef _Traits traits_type;
+<span class="lineNum"> 644 </span> : typedef basic_streambuf&lt;_CharT, _Traits&gt; __streambuf_type;
+<span class="lineNum"> 645 </span> : typedef basic_istream&lt;_CharT, _Traits&gt; __istream_type;
+<span class="lineNum"> 646 </span> : typedef typename __istream_type::__ctype_type __ctype_type;
+<span class="lineNum"> 647 </span> : typedef typename _Traits::int_type __int_type;
+<span class="lineNum"> 648 </span> :
+<span class="lineNum"> 649 </span> : /**
+<span class="lineNum"> 650 </span> : * @brief The constructor performs all the work.
+<span class="lineNum"> 651 </span> : * @param is The input stream to guard.
+<span class="lineNum"> 652 </span> : * @param noskipws Whether to consume whitespace or not.
+<span class="lineNum"> 653 </span> : *
+<span class="lineNum"> 654 </span> : * If the stream state is good (@a is.good() is true), then the
+<span class="lineNum"> 655 </span> : * following actions are performed, otherwise the sentry state is
+<span class="lineNum"> 656 </span> : * false (&quot;not okay&quot;) and failbit is set in the stream state.
+<span class="lineNum"> 657 </span> : *
+<span class="lineNum"> 658 </span> : * The sentry's preparatory actions are:
+<span class="lineNum"> 659 </span> : *
+<span class="lineNum"> 660 </span> : * -# if the stream is tied to an output stream, @c is.tie()-&gt;flush()
+<span class="lineNum"> 661 </span> : * is called to synchronize the output sequence
+<span class="lineNum"> 662 </span> : * -# if @a noskipws is false, and @c ios_base::skipws is set in
+<span class="lineNum"> 663 </span> : * @c is.flags(), the sentry extracts and discards whitespace
+<span class="lineNum"> 664 </span> : * characters from the stream. The currently imbued locale is
+<span class="lineNum"> 665 </span> : * used to determine whether each character is whitespace.
+<span class="lineNum"> 666 </span> : *
+<span class="lineNum"> 667 </span> : * If the stream state is still good, then the sentry state becomes
+<span class="lineNum"> 668 </span> : * true (&quot;okay&quot;).
+<span class="lineNum"> 669 </span> : */
+<span class="lineNum"> 670 </span> : explicit
+<span class="lineNum"> 671 </span> : sentry(basic_istream&lt;_CharT, _Traits&gt;&amp; __is, bool __noskipws = false);
+<span class="lineNum"> 672 </span> :
+<span class="lineNum"> 673 </span> : /**
+<span class="lineNum"> 674 </span> : * @brief Quick status checking.
+<span class="lineNum"> 675 </span> : * @return The sentry state.
+<span class="lineNum"> 676 </span> : *
+<span class="lineNum"> 677 </span> : * For ease of use, sentries may be converted to booleans. The
+<span class="lineNum"> 678 </span> : * return value is that of the sentry state (true == okay).
+<span class="lineNum"> 679 </span> : */
+<span class="lineNum"> 680 </span> : operator bool() const
+<span class="lineNum"> 681 </span> : { return _M_ok; }
+<span class="lineNum"> 682 </span> :
+<span class="lineNum"> 683 </span> : private:
+<span class="lineNum"> 684 </span> : bool _M_ok;
+<span class="lineNum"> 685 </span> : };
+<span class="lineNum"> 686 </span> :
+<span class="lineNum"> 687 </span> : // [27.6.1.2.3] character extraction templates
+<span class="lineNum"> 688 </span> : //@{
+<span class="lineNum"> 689 </span> : /**
+<span class="lineNum"> 690 </span> : * @brief Character extractors
+<span class="lineNum"> 691 </span> : * @param in An input stream.
+<span class="lineNum"> 692 </span> : * @param c A character reference.
+<span class="lineNum"> 693 </span> : * @return in
+<span class="lineNum"> 694 </span> : *
+<span class="lineNum"> 695 </span> : * Behaves like one of the formatted arithmetic extractors described in
+<span class="lineNum"> 696 </span> : * std::basic_istream. After constructing a sentry object with good
+<span class="lineNum"> 697 </span> : * status, this function extracts a character (if one is available) and
+<span class="lineNum"> 698 </span> : * stores it in @a c. Otherwise, sets failbit in the input stream.
+<span class="lineNum"> 699 </span> : */
+<span class="lineNum"> 700 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 701 </span> : basic_istream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 702 </span> : operator&gt;&gt;(basic_istream&lt;_CharT, _Traits&gt;&amp; __in, _CharT&amp; __c);
+<span class="lineNum"> 703 </span> :
+<span class="lineNum"> 704 </span> : template&lt;class _Traits&gt;
+<span class="lineNum"> 705 </span> : inline basic_istream&lt;char, _Traits&gt;&amp;
+<span class="lineNum"> 706 </span> : operator&gt;&gt;(basic_istream&lt;char, _Traits&gt;&amp; __in, unsigned char&amp; __c)
+<span class="lineNum"> 707 </span> : { return (__in &gt;&gt; reinterpret_cast&lt;char&amp;&gt;(__c)); }
+<span class="lineNum"> 708 </span> :
+<span class="lineNum"> 709 </span> : template&lt;class _Traits&gt;
+<span class="lineNum"> 710 </span> : inline basic_istream&lt;char, _Traits&gt;&amp;
+<span class="lineNum"> 711 </span> : operator&gt;&gt;(basic_istream&lt;char, _Traits&gt;&amp; __in, signed char&amp; __c)
+<span class="lineNum"> 712 </span> : { return (__in &gt;&gt; reinterpret_cast&lt;char&amp;&gt;(__c)); }
+<span class="lineNum"> 713 </span> : //@}
+<span class="lineNum"> 714 </span> :
+<span class="lineNum"> 715 </span> : //@{
+<span class="lineNum"> 716 </span> : /**
+<span class="lineNum"> 717 </span> : * @brief Character string extractors
+<span class="lineNum"> 718 </span> : * @param in An input stream.
+<span class="lineNum"> 719 </span> : * @param s A pointer to a character array.
+<span class="lineNum"> 720 </span> : * @return in
+<span class="lineNum"> 721 </span> : *
+<span class="lineNum"> 722 </span> : * Behaves like one of the formatted arithmetic extractors described in
+<span class="lineNum"> 723 </span> : * std::basic_istream. After constructing a sentry object with good
+<span class="lineNum"> 724 </span> : * status, this function extracts up to @c n characters and stores them
+<span class="lineNum"> 725 </span> : * into the array starting at @a s. @c n is defined as:
+<span class="lineNum"> 726 </span> : *
+<span class="lineNum"> 727 </span> : * - if @c width() is greater than zero, @c n is width()
+<span class="lineNum"> 728 </span> : * - otherwise @c n is &quot;the number of elements of the largest array of
+<span class="lineNum"> 729 </span> : * @c char_type that can store a terminating @c eos.&quot; [27.6.1.2.3]/6
+<span class="lineNum"> 730 </span> : *
+<span class="lineNum"> 731 </span> : * Characters are extracted and stored until one of the following happens:
+<span class="lineNum"> 732 </span> : * - @c n-1 characters are stored
+<span class="lineNum"> 733 </span> : * - EOF is reached
+<span class="lineNum"> 734 </span> : * - the next character is whitespace according to the current locale
+<span class="lineNum"> 735 </span> : * - the next character is a null byte (i.e., @c charT() )
+<span class="lineNum"> 736 </span> : *
+<span class="lineNum"> 737 </span> : * @c width(0) is then called for the input stream.
+<span class="lineNum"> 738 </span> : *
+<span class="lineNum"> 739 </span> : * If no characters are extracted, sets failbit.
+<span class="lineNum"> 740 </span> : */
+<span class="lineNum"> 741 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 742 </span> : basic_istream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 743 </span> : operator&gt;&gt;(basic_istream&lt;_CharT, _Traits&gt;&amp; __in, _CharT* __s);
+<span class="lineNum"> 744 </span> :
+<span class="lineNum"> 745 </span> : // Explicit specialization declaration, defined in src/istream.cc.
+<span class="lineNum"> 746 </span> : template&lt;&gt;
+<span class="lineNum"> 747 </span> : basic_istream&lt;char&gt;&amp;
+<span class="lineNum"> 748 </span> : operator&gt;&gt;(basic_istream&lt;char&gt;&amp; __in, char* __s);
+<span class="lineNum"> 749 </span> :
+<span class="lineNum"> 750 </span> : template&lt;class _Traits&gt;
+<span class="lineNum"> 751 </span> : inline basic_istream&lt;char, _Traits&gt;&amp;
+<span class="lineNum"> 752 </span> : operator&gt;&gt;(basic_istream&lt;char, _Traits&gt;&amp; __in, unsigned char* __s)
+<span class="lineNum"> 753 </span> : { return (__in &gt;&gt; reinterpret_cast&lt;char*&gt;(__s)); }
+<span class="lineNum"> 754 </span> :
+<span class="lineNum"> 755 </span> : template&lt;class _Traits&gt;
+<span class="lineNum"> 756 </span> : inline basic_istream&lt;char, _Traits&gt;&amp;
+<span class="lineNum"> 757 </span> : operator&gt;&gt;(basic_istream&lt;char, _Traits&gt;&amp; __in, signed char* __s)
+<span class="lineNum"> 758 </span> : { return (__in &gt;&gt; reinterpret_cast&lt;char*&gt;(__s)); }
+<span class="lineNum"> 759 </span> : //@}
+<span class="lineNum"> 760 </span> :
+<span class="lineNum"> 761 </span> : // 27.6.1.5 Template class basic_iostream
+<span class="lineNum"> 762 </span> : /**
+<span class="lineNum"> 763 </span> : * @brief Merging istream and ostream capabilities.
+<span class="lineNum"> 764 </span> : *
+<span class="lineNum"> 765 </span> : * This class multiply inherits from the input and output stream classes
+<span class="lineNum"> 766 </span> : * simply to provide a single interface.
+<span class="lineNum"> 767 </span> : */
+<span class="lineNum"> 768 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 769 </span> : class basic_iostream
+<span class="lineNum"> 770 </span> : : public basic_istream&lt;_CharT, _Traits&gt;,
+<span class="lineNum"> 771 </span> : public basic_ostream&lt;_CharT, _Traits&gt;
+<span class="lineNum"> 772 </span> : {
+<span class="lineNum"> 773 </span> : public:
+<span class="lineNum"> 774 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 775 </span> : // 271. basic_iostream missing typedefs
+<span class="lineNum"> 776 </span> : // Types (inherited):
+<span class="lineNum"> 777 </span> : typedef _CharT char_type;
+<span class="lineNum"> 778 </span> : typedef typename _Traits::int_type int_type;
+<span class="lineNum"> 779 </span> : typedef typename _Traits::pos_type pos_type;
+<span class="lineNum"> 780 </span> : typedef typename _Traits::off_type off_type;
+<span class="lineNum"> 781 </span> : typedef _Traits traits_type;
+<span class="lineNum"> 782 </span> :
+<span class="lineNum"> 783 </span> : // Non-standard Types:
+<span class="lineNum"> 784 </span> : typedef basic_istream&lt;_CharT, _Traits&gt; __istream_type;
+<span class="lineNum"> 785 </span> : typedef basic_ostream&lt;_CharT, _Traits&gt; __ostream_type;
+<span class="lineNum"> 786 </span> :
+<span class="lineNum"> 787 </span> : /**
+<span class="lineNum"> 788 </span> : * @brief Constructor does nothing.
+<span class="lineNum"> 789 </span> : *
+<span class="lineNum"> 790 </span> : * Both of the parent classes are initialized with the same
+<span class="lineNum"> 791 </span> : * streambuf pointer passed to this constructor.
+<span class="lineNum"> 792 </span> : */
+<span class="lineNum"> 793 </span> : explicit
+<span class="lineNum"> 794 </span> : basic_iostream(basic_streambuf&lt;_CharT, _Traits&gt;* __sb)
+<span class="lineNum"> 795 </span> : : __istream_type(__sb), __ostream_type(__sb) { }
+<span class="lineNum"> 796 </span> :
+<span class="lineNum"> 797 </span> : /**
+<span class="lineNum"> 798 </span> : * @brief Destructor does nothing.
+<span class="lineNum"> 799 </span> : */
+<span class="lineNum"> 800 </span> : virtual
+<span class="lineNum"> 801 </span><span class="lineNoCov"> 0 : ~basic_iostream() { }</span>
+<span class="lineNum"> 802 </span> :
+<span class="lineNum"> 803 </span> : protected:
+<span class="lineNum"> 804 </span><span class="lineNoCov"> 0 : basic_iostream()</span>
+<span class="lineNum"> 805 </span><span class="lineNoCov"> 0 : : __istream_type(), __ostream_type() { }</span>
+<span class="lineNum"> 806 </span> : };
+<span class="lineNum"> 807 </span> :
+<span class="lineNum"> 808 </span> : // [27.6.1.4] standard basic_istream manipulators
+<span class="lineNum"> 809 </span> : /**
+<span class="lineNum"> 810 </span> : * @brief Quick and easy way to eat whitespace
+<span class="lineNum"> 811 </span> : *
+<span class="lineNum"> 812 </span> : * This manipulator extracts whitespace characters, stopping when the
+<span class="lineNum"> 813 </span> : * next character is non-whitespace, or when the input sequence is empty.
+<span class="lineNum"> 814 </span> : * If the sequence is empty, @c eofbit is set in the stream, but not
+<span class="lineNum"> 815 </span> : * @c failbit.
+<span class="lineNum"> 816 </span> : *
+<span class="lineNum"> 817 </span> : * The current locale is used to distinguish whitespace characters.
+<span class="lineNum"> 818 </span> : *
+<span class="lineNum"> 819 </span> : * Example:
+<span class="lineNum"> 820 </span> : * @code
+<span class="lineNum"> 821 </span> : * MyClass mc;
+<span class="lineNum"> 822 </span> : *
+<span class="lineNum"> 823 </span> : * std::cin &gt;&gt; std::ws &gt;&gt; mc;
+<span class="lineNum"> 824 </span> : * @endcode
+<span class="lineNum"> 825 </span> : * will skip leading whitespace before calling operator&gt;&gt; on cin and your
+<span class="lineNum"> 826 </span> : * object. Note that the same effect can be achieved by creating a
+<span class="lineNum"> 827 </span> : * std::basic_istream::sentry inside your definition of operator&gt;&gt;.
+<span class="lineNum"> 828 </span> : */
+<span class="lineNum"> 829 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 830 </span> : basic_istream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 831 </span> : ws(basic_istream&lt;_CharT, _Traits&gt;&amp; __is);
+<span class="lineNum"> 832 </span> :
+<span class="lineNum"> 833 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 834 </span> :
+<span class="lineNum"> 835 </span> : #ifndef _GLIBCXX_EXPORT_TEMPLATE
+<span class="lineNum"> 836 </span> : # include &lt;bits/istream.tcc&gt;
+<span class="lineNum"> 837 </span> : #endif
+<span class="lineNum"> 838 </span> :
+<span class="lineNum"> 839 </span> : #endif /* _GLIBCXX_ISTREAM */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/new.gcov.html b/rep/usr/include/c++/4.3/new.gcov.html
new file mode 100644
index 0000000..991b58e
--- /dev/null
+++ b/rep/usr/include/c++/4.3/new.gcov.html
@@ -0,0 +1,183 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/new</title>
+ <link rel="stylesheet" type="text/css" href="../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3</a> - new</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">50.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // The -*- C++ -*- dynamic memory management header.
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+<span class="lineNum"> 4 </span> : // 2003, 2004, 2005, 2006, 2007
+<span class="lineNum"> 5 </span> : // Free Software Foundation
+<span class="lineNum"> 6 </span> :
+<span class="lineNum"> 7 </span> : // This file is part of GCC.
+<span class="lineNum"> 8 </span> : //
+<span class="lineNum"> 9 </span> : // GCC is free software; you can redistribute it and/or modify
+<span class="lineNum"> 10 </span> : // it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 11 </span> : // the Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 12 </span> : // any later version.
+<span class="lineNum"> 13 </span> : //
+<span class="lineNum"> 14 </span> : // GCC is distributed in the hope that it will be useful,
+<span class="lineNum"> 15 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 16 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 17 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 18 </span> : //
+<span class="lineNum"> 19 </span> : // You should have received a copy of the GNU General Public License
+<span class="lineNum"> 20 </span> : // along with GCC; see the file COPYING. If not, write to
+<span class="lineNum"> 21 </span> : // the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+<span class="lineNum"> 22 </span> : // Boston, MA 02110-1301, USA.
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 25 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 26 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 27 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 28 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 30 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 31 </span> : // the GNU General Public License.
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : /** @file new
+<span class="lineNum"> 34 </span> : * This is a Standard C++ Library header.
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * The header @c new defines several functions to manage dynamic memory and
+<span class="lineNum"> 37 </span> : * handling memory allocation errors; see
+<span class="lineNum"> 38 </span> : * http://gcc.gnu.org/onlinedocs/libstdc++/18_support/howto.html#4 for more.
+<span class="lineNum"> 39 </span> : */
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : #ifndef _NEW
+<span class="lineNum"> 42 </span> : #define _NEW
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span> : #include &lt;cstddef&gt;
+<span class="lineNum"> 45 </span> : #include &lt;exception&gt;
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span> : #pragma GCC visibility push(default)
+<span class="lineNum"> 48 </span> :
+<span class="lineNum"> 49 </span> : extern &quot;C++&quot; {
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> : namespace std
+<span class="lineNum"> 52 </span> : {
+<span class="lineNum"> 53 </span> : /**
+<span class="lineNum"> 54 </span> : * @brief Exception possibly thrown by @c new.
+<span class="lineNum"> 55 </span> : *
+<span class="lineNum"> 56 </span> : * @c bad_alloc (or classes derived from it) is used to report allocation
+<span class="lineNum"> 57 </span> : * errors from the throwing forms of @c new. */
+<span class="lineNum"> 58 </span> : class bad_alloc : public exception
+<span class="lineNum"> 59 </span> : {
+<span class="lineNum"> 60 </span> : public:
+<span class="lineNum"> 61 </span> : bad_alloc() throw() { }
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span> : // This declaration is not useless:
+<span class="lineNum"> 64 </span> : // http://gcc.gnu.org/onlinedocs/gcc-3.0.2/gcc_6.html#SEC118
+<span class="lineNum"> 65 </span> : virtual ~bad_alloc() throw();
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : // See comment in eh_exception.cc.
+<span class="lineNum"> 68 </span> : virtual const char* what() const throw();
+<span class="lineNum"> 69 </span> : };
+<span class="lineNum"> 70 </span> :
+<span class="lineNum"> 71 </span> : struct nothrow_t { };
+<span class="lineNum"> 72 </span> :
+<span class="lineNum"> 73 </span> : extern const nothrow_t nothrow;
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span> : /** If you write your own error handler to be called by @c new, it must
+<span class="lineNum"> 76 </span> : * be of this type. */
+<span class="lineNum"> 77 </span> : typedef void (*new_handler)();
+<span class="lineNum"> 78 </span> :
+<span class="lineNum"> 79 </span> : /// Takes a replacement handler as the argument, returns the
+<span class="lineNum"> 80 </span> : /// previous handler.
+<span class="lineNum"> 81 </span> : new_handler set_new_handler(new_handler) throw();
+<span class="lineNum"> 82 </span> : } // namespace std
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span> : //@{
+<span class="lineNum"> 85 </span> : /** These are replaceable signatures:
+<span class="lineNum"> 86 </span> : * - normal single new and delete (no arguments, throw @c bad_alloc on error)
+<span class="lineNum"> 87 </span> : * - normal array new and delete (same)
+<span class="lineNum"> 88 </span> : * - @c nothrow single new and delete (take a @c nothrow argument, return
+<span class="lineNum"> 89 </span> : * @c NULL on error)
+<span class="lineNum"> 90 </span> : * - @c nothrow array new and delete (same)
+<span class="lineNum"> 91 </span> : *
+<span class="lineNum"> 92 </span> : * Placement new and delete signatures (take a memory address argument,
+<span class="lineNum"> 93 </span> : * does nothing) may not be replaced by a user's program.
+<span class="lineNum"> 94 </span> : */
+<span class="lineNum"> 95 </span> : void* operator new(std::size_t) throw (std::bad_alloc);
+<span class="lineNum"> 96 </span> : void* operator new[](std::size_t) throw (std::bad_alloc);
+<span class="lineNum"> 97 </span> : void operator delete(void*) throw();
+<span class="lineNum"> 98 </span> : void operator delete[](void*) throw();
+<span class="lineNum"> 99 </span> : void* operator new(std::size_t, const std::nothrow_t&amp;) throw();
+<span class="lineNum"> 100 </span> : void* operator new[](std::size_t, const std::nothrow_t&amp;) throw();
+<span class="lineNum"> 101 </span> : void operator delete(void*, const std::nothrow_t&amp;) throw();
+<span class="lineNum"> 102 </span> : void operator delete[](void*, const std::nothrow_t&amp;) throw();
+<span class="lineNum"> 103 </span> :
+<span class="lineNum"> 104 </span> : // Default placement versions of operator new.
+<span class="lineNum"> 105 </span><span class="lineCov"> 5858225 : inline void* operator new(std::size_t, void* __p) throw() { return __p; }</span>
+<span class="lineNum"> 106 </span> : inline void* operator new[](std::size_t, void* __p) throw() { return __p; }
+<span class="lineNum"> 107 </span> :
+<span class="lineNum"> 108 </span> : // Default placement versions of operator delete.
+<span class="lineNum"> 109 </span><span class="lineNoCov"> 0 : inline void operator delete (void*, void*) throw() { }</span>
+<span class="lineNum"> 110 </span> : inline void operator delete[](void*, void*) throw() { }
+<span class="lineNum"> 111 </span> : //@}
+<span class="lineNum"> 112 </span> : } // extern &quot;C++&quot;
+<span class="lineNum"> 113 </span> :
+<span class="lineNum"> 114 </span> : #pragma GCC visibility pop
+<span class="lineNum"> 115 </span> :
+<span class="lineNum"> 116 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/ostream.gcov.html b/rep/usr/include/c++/4.3/ostream.gcov.html
new file mode 100644
index 0000000..b2c2c3f
--- /dev/null
+++ b/rep/usr/include/c++/4.3/ostream.gcov.html
@@ -0,0 +1,642 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/ostream</title>
+ <link rel="stylesheet" type="text/css" href="../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3</a> - ostream</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">33</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">0.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">0</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Output streams -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+<span class="lineNum"> 4 </span> : // 2006, 2007, 2008
+<span class="lineNum"> 5 </span> : // Free Software Foundation, Inc.
+<span class="lineNum"> 6 </span> : //
+<span class="lineNum"> 7 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 8 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 9 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 10 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 11 </span> : // any later version.
+<span class="lineNum"> 12 </span> :
+<span class="lineNum"> 13 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 14 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 15 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 16 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 17 </span> :
+<span class="lineNum"> 18 </span> : // You should have received a copy of the GNU General Public License
+<span class="lineNum"> 19 </span> : // along with this library; see the file COPYING. If not, write to
+<span class="lineNum"> 20 </span> : // the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+<span class="lineNum"> 21 </span> : // Boston, MA 02110-1301, USA.
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 24 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 25 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 26 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 27 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 28 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 29 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 30 </span> : // the GNU General Public License.
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : /** @file ostream
+<span class="lineNum"> 33 </span> : * This is a Standard C++ Library header.
+<span class="lineNum"> 34 </span> : */
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : //
+<span class="lineNum"> 37 </span> : // ISO C++ 14882: 27.6.2 Output streams
+<span class="lineNum"> 38 </span> : //
+<span class="lineNum"> 39 </span> :
+<span class="lineNum"> 40 </span> : #ifndef _GLIBCXX_OSTREAM
+<span class="lineNum"> 41 </span> : #define _GLIBCXX_OSTREAM 1
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : #pragma GCC system_header
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : #include &lt;ios&gt;
+<span class="lineNum"> 46 </span> : #include &lt;bits/ostream_insert.h&gt;
+<span class="lineNum"> 47 </span> :
+<span class="lineNum"> 48 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span> : // [27.6.2.1] Template class basic_ostream
+<span class="lineNum"> 51 </span> : /**
+<span class="lineNum"> 52 </span> : * @brief Controlling output.
+<span class="lineNum"> 53 </span> : *
+<span class="lineNum"> 54 </span> : * This is the base class for all output streams. It provides text
+<span class="lineNum"> 55 </span> : * formatting of all builtin types, and communicates with any class
+<span class="lineNum"> 56 </span> : * derived from basic_streambuf to do the actual output.
+<span class="lineNum"> 57 </span> : */
+<span class="lineNum"> 58 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 59 </span> : class basic_ostream : virtual public basic_ios&lt;_CharT, _Traits&gt;
+<span class="lineNum"> 60 </span> : {
+<span class="lineNum"> 61 </span> : public:
+<span class="lineNum"> 62 </span> : // Types (inherited from basic_ios (27.4.4)):
+<span class="lineNum"> 63 </span> : typedef _CharT char_type;
+<span class="lineNum"> 64 </span> : typedef typename _Traits::int_type int_type;
+<span class="lineNum"> 65 </span> : typedef typename _Traits::pos_type pos_type;
+<span class="lineNum"> 66 </span> : typedef typename _Traits::off_type off_type;
+<span class="lineNum"> 67 </span> : typedef _Traits traits_type;
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span> : // Non-standard Types:
+<span class="lineNum"> 70 </span> : typedef basic_streambuf&lt;_CharT, _Traits&gt; __streambuf_type;
+<span class="lineNum"> 71 </span> : typedef basic_ios&lt;_CharT, _Traits&gt; __ios_type;
+<span class="lineNum"> 72 </span> : typedef basic_ostream&lt;_CharT, _Traits&gt; __ostream_type;
+<span class="lineNum"> 73 </span> : typedef num_put&lt;_CharT, ostreambuf_iterator&lt;_CharT, _Traits&gt; &gt;
+<span class="lineNum"> 74 </span> : __num_put_type;
+<span class="lineNum"> 75 </span> : typedef ctype&lt;_CharT&gt; __ctype_type;
+<span class="lineNum"> 76 </span> :
+<span class="lineNum"> 77 </span> : // [27.6.2.2] constructor/destructor
+<span class="lineNum"> 78 </span> : /**
+<span class="lineNum"> 79 </span> : * @brief Base constructor.
+<span class="lineNum"> 80 </span> : *
+<span class="lineNum"> 81 </span> : * This ctor is almost never called by the user directly, rather from
+<span class="lineNum"> 82 </span> : * derived classes' initialization lists, which pass a pointer to
+<span class="lineNum"> 83 </span> : * their own stream buffer.
+<span class="lineNum"> 84 </span> : */
+<span class="lineNum"> 85 </span> : explicit
+<span class="lineNum"> 86 </span><span class="lineNoCov"> 0 : basic_ostream(__streambuf_type* __sb)</span>
+<span class="lineNum"> 87 </span><span class="lineNoCov"> 0 : { this-&gt;init(__sb); }</span>
+<span class="lineNum"> 88 </span> :
+<span class="lineNum"> 89 </span> : /**
+<span class="lineNum"> 90 </span> : * @brief Base destructor.
+<span class="lineNum"> 91 </span> : *
+<span class="lineNum"> 92 </span> : * This does very little apart from providing a virtual base dtor.
+<span class="lineNum"> 93 </span> : */
+<span class="lineNum"> 94 </span> : virtual
+<span class="lineNum"> 95 </span><span class="lineNoCov"> 0 : ~basic_ostream() { }</span>
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span> : // [27.6.2.3] prefix/suffix
+<span class="lineNum"> 98 </span> : class sentry;
+<span class="lineNum"> 99 </span> : friend class sentry;
+<span class="lineNum"> 100 </span> :
+<span class="lineNum"> 101 </span> : // [27.6.2.5] formatted output
+<span class="lineNum"> 102 </span> : // [27.6.2.5.3] basic_ostream::operator&lt;&lt;
+<span class="lineNum"> 103 </span> : //@{
+<span class="lineNum"> 104 </span> : /**
+<span class="lineNum"> 105 </span> : * @brief Interface for manipulators.
+<span class="lineNum"> 106 </span> : *
+<span class="lineNum"> 107 </span> : * Manipulators such as @c std::endl and @c std::hex use these
+<span class="lineNum"> 108 </span> : * functions in constructs like &quot;std::cout &lt;&lt; std::endl&quot;. For more
+<span class="lineNum"> 109 </span> : * information, see the iomanip header.
+<span class="lineNum"> 110 </span> : */
+<span class="lineNum"> 111 </span> : __ostream_type&amp;
+<span class="lineNum"> 112 </span><span class="lineNoCov"> 0 : operator&lt;&lt;(__ostream_type&amp; (*__pf)(__ostream_type&amp;))</span>
+<span class="lineNum"> 113 </span> : {
+<span class="lineNum"> 114 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 115 </span> : // DR 60. What is a formatted input function?
+<span class="lineNum"> 116 </span> : // The inserters for manipulators are *not* formatted output functions.
+<span class="lineNum"> 117 </span><span class="lineNoCov"> 0 : return __pf(*this);</span>
+<span class="lineNum"> 118 </span> : }
+<span class="lineNum"> 119 </span> :
+<span class="lineNum"> 120 </span> : __ostream_type&amp;
+<span class="lineNum"> 121 </span> : operator&lt;&lt;(__ios_type&amp; (*__pf)(__ios_type&amp;))
+<span class="lineNum"> 122 </span> : {
+<span class="lineNum"> 123 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 124 </span> : // DR 60. What is a formatted input function?
+<span class="lineNum"> 125 </span> : // The inserters for manipulators are *not* formatted output functions.
+<span class="lineNum"> 126 </span> : __pf(*this);
+<span class="lineNum"> 127 </span> : return *this;
+<span class="lineNum"> 128 </span> : }
+<span class="lineNum"> 129 </span> :
+<span class="lineNum"> 130 </span> : __ostream_type&amp;
+<span class="lineNum"> 131 </span><span class="lineNoCov"> 0 : operator&lt;&lt;(ios_base&amp; (*__pf) (ios_base&amp;))</span>
+<span class="lineNum"> 132 </span> : {
+<span class="lineNum"> 133 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 134 </span> : // DR 60. What is a formatted input function?
+<span class="lineNum"> 135 </span> : // The inserters for manipulators are *not* formatted output functions.
+<span class="lineNum"> 136 </span><span class="lineNoCov"> 0 : __pf(*this);</span>
+<span class="lineNum"> 137 </span><span class="lineNoCov"> 0 : return *this;</span>
+<span class="lineNum"> 138 </span> : }
+<span class="lineNum"> 139 </span> : //@}
+<span class="lineNum"> 140 </span> :
+<span class="lineNum"> 141 </span> : // [27.6.2.5.2] arithmetic inserters
+<span class="lineNum"> 142 </span> : /**
+<span class="lineNum"> 143 </span> : * @name Arithmetic Inserters
+<span class="lineNum"> 144 </span> : *
+<span class="lineNum"> 145 </span> : * All the @c operator&lt;&lt; functions (aka &lt;em&gt;formatted output
+<span class="lineNum"> 146 </span> : * functions&lt;/em&gt;) have some common behavior. Each starts by
+<span class="lineNum"> 147 </span> : * constructing a temporary object of type std::basic_ostream::sentry.
+<span class="lineNum"> 148 </span> : * This can have several effects, concluding with the setting of a
+<span class="lineNum"> 149 </span> : * status flag; see the sentry documentation for more.
+<span class="lineNum"> 150 </span> : *
+<span class="lineNum"> 151 </span> : * If the sentry status is good, the function tries to generate
+<span class="lineNum"> 152 </span> : * whatever data is appropriate for the type of the argument.
+<span class="lineNum"> 153 </span> : *
+<span class="lineNum"> 154 </span> : * If an exception is thrown during insertion, ios_base::badbit
+<span class="lineNum"> 155 </span> : * will be turned on in the stream's error state without causing an
+<span class="lineNum"> 156 </span> : * ios_base::failure to be thrown. The original exception will then
+<span class="lineNum"> 157 </span> : * be rethrown.
+<span class="lineNum"> 158 </span> : */
+<span class="lineNum"> 159 </span> : //@{
+<span class="lineNum"> 160 </span> : /**
+<span class="lineNum"> 161 </span> : * @brief Basic arithmetic inserters
+<span class="lineNum"> 162 </span> : * @param A variable of builtin type.
+<span class="lineNum"> 163 </span> : * @return @c *this if successful
+<span class="lineNum"> 164 </span> : *
+<span class="lineNum"> 165 </span> : * These functions use the stream's current locale (specifically, the
+<span class="lineNum"> 166 </span> : * @c num_get facet) to perform numeric formatting.
+<span class="lineNum"> 167 </span> : */
+<span class="lineNum"> 168 </span> : __ostream_type&amp;
+<span class="lineNum"> 169 </span><span class="lineNoCov"> 0 : operator&lt;&lt;(long __n)</span>
+<span class="lineNum"> 170 </span><span class="lineNoCov"> 0 : { return _M_insert(__n); }</span>
+<span class="lineNum"> 171 </span> :
+<span class="lineNum"> 172 </span> : __ostream_type&amp;
+<span class="lineNum"> 173 </span> : operator&lt;&lt;(unsigned long __n)
+<span class="lineNum"> 174 </span> : { return _M_insert(__n); }
+<span class="lineNum"> 175 </span> :
+<span class="lineNum"> 176 </span> : __ostream_type&amp;
+<span class="lineNum"> 177 </span><span class="lineNoCov"> 0 : operator&lt;&lt;(bool __n)</span>
+<span class="lineNum"> 178 </span><span class="lineNoCov"> 0 : { return _M_insert(__n); }</span>
+<span class="lineNum"> 179 </span> :
+<span class="lineNum"> 180 </span> : __ostream_type&amp;
+<span class="lineNum"> 181 </span> : operator&lt;&lt;(short __n);
+<span class="lineNum"> 182 </span> :
+<span class="lineNum"> 183 </span> : __ostream_type&amp;
+<span class="lineNum"> 184 </span> : operator&lt;&lt;(unsigned short __n)
+<span class="lineNum"> 185 </span> : {
+<span class="lineNum"> 186 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 187 </span> : // 117. basic_ostream uses nonexistent num_put member functions.
+<span class="lineNum"> 188 </span> : return _M_insert(static_cast&lt;unsigned long&gt;(__n));
+<span class="lineNum"> 189 </span> : }
+<span class="lineNum"> 190 </span> :
+<span class="lineNum"> 191 </span> : __ostream_type&amp;
+<span class="lineNum"> 192 </span> : operator&lt;&lt;(int __n);
+<span class="lineNum"> 193 </span> :
+<span class="lineNum"> 194 </span> : __ostream_type&amp;
+<span class="lineNum"> 195 </span><span class="lineNoCov"> 0 : operator&lt;&lt;(unsigned int __n)</span>
+<span class="lineNum"> 196 </span> : {
+<span class="lineNum"> 197 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 198 </span> : // 117. basic_ostream uses nonexistent num_put member functions.
+<span class="lineNum"> 199 </span><span class="lineNoCov"> 0 : return _M_insert(static_cast&lt;unsigned long&gt;(__n));</span>
+<span class="lineNum"> 200 </span> : }
+<span class="lineNum"> 201 </span> :
+<span class="lineNum"> 202 </span> : #ifdef _GLIBCXX_USE_LONG_LONG
+<span class="lineNum"> 203 </span> : __ostream_type&amp;
+<span class="lineNum"> 204 </span><span class="lineNoCov"> 0 : operator&lt;&lt;(long long __n)</span>
+<span class="lineNum"> 205 </span><span class="lineNoCov"> 0 : { return _M_insert(__n); }</span>
+<span class="lineNum"> 206 </span> :
+<span class="lineNum"> 207 </span> : __ostream_type&amp;
+<span class="lineNum"> 208 </span> : operator&lt;&lt;(unsigned long long __n)
+<span class="lineNum"> 209 </span> : { return _M_insert(__n); }
+<span class="lineNum"> 210 </span> : #endif
+<span class="lineNum"> 211 </span> :
+<span class="lineNum"> 212 </span> : __ostream_type&amp;
+<span class="lineNum"> 213 </span><span class="lineNoCov"> 0 : operator&lt;&lt;(double __f)</span>
+<span class="lineNum"> 214 </span><span class="lineNoCov"> 0 : { return _M_insert(__f); }</span>
+<span class="lineNum"> 215 </span> :
+<span class="lineNum"> 216 </span> : __ostream_type&amp;
+<span class="lineNum"> 217 </span> : operator&lt;&lt;(float __f)
+<span class="lineNum"> 218 </span> : {
+<span class="lineNum"> 219 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 220 </span> : // 117. basic_ostream uses nonexistent num_put member functions.
+<span class="lineNum"> 221 </span> : return _M_insert(static_cast&lt;double&gt;(__f));
+<span class="lineNum"> 222 </span> : }
+<span class="lineNum"> 223 </span> :
+<span class="lineNum"> 224 </span> : __ostream_type&amp;
+<span class="lineNum"> 225 </span> : operator&lt;&lt;(long double __f)
+<span class="lineNum"> 226 </span> : { return _M_insert(__f); }
+<span class="lineNum"> 227 </span> :
+<span class="lineNum"> 228 </span> : __ostream_type&amp;
+<span class="lineNum"> 229 </span><span class="lineNoCov"> 0 : operator&lt;&lt;(const void* __p)</span>
+<span class="lineNum"> 230 </span><span class="lineNoCov"> 0 : { return _M_insert(__p); }</span>
+<span class="lineNum"> 231 </span> :
+<span class="lineNum"> 232 </span> : /**
+<span class="lineNum"> 233 </span> : * @brief Extracting from another streambuf.
+<span class="lineNum"> 234 </span> : * @param sb A pointer to a streambuf
+<span class="lineNum"> 235 </span> : *
+<span class="lineNum"> 236 </span> : * This function behaves like one of the basic arithmetic extractors,
+<span class="lineNum"> 237 </span> : * in that it also constructs a sentry object and has the same error
+<span class="lineNum"> 238 </span> : * handling behavior.
+<span class="lineNum"> 239 </span> : *
+<span class="lineNum"> 240 </span> : * If @a sb is NULL, the stream will set failbit in its error state.
+<span class="lineNum"> 241 </span> : *
+<span class="lineNum"> 242 </span> : * Characters are extracted from @a sb and inserted into @c *this
+<span class="lineNum"> 243 </span> : * until one of the following occurs:
+<span class="lineNum"> 244 </span> : *
+<span class="lineNum"> 245 </span> : * - the input stream reaches end-of-file,
+<span class="lineNum"> 246 </span> : * - insertion into the output sequence fails (in this case, the
+<span class="lineNum"> 247 </span> : * character that would have been inserted is not extracted), or
+<span class="lineNum"> 248 </span> : * - an exception occurs while getting a character from @a sb, which
+<span class="lineNum"> 249 </span> : * sets failbit in the error state
+<span class="lineNum"> 250 </span> : *
+<span class="lineNum"> 251 </span> : * If the function inserts no characters, failbit is set.
+<span class="lineNum"> 252 </span> : */
+<span class="lineNum"> 253 </span> : __ostream_type&amp;
+<span class="lineNum"> 254 </span> : operator&lt;&lt;(__streambuf_type* __sb);
+<span class="lineNum"> 255 </span> : //@}
+<span class="lineNum"> 256 </span> :
+<span class="lineNum"> 257 </span> : // [27.6.2.6] unformatted output functions
+<span class="lineNum"> 258 </span> : /**
+<span class="lineNum"> 259 </span> : * @name Unformatted Output Functions
+<span class="lineNum"> 260 </span> : *
+<span class="lineNum"> 261 </span> : * All the unformatted output functions have some common behavior.
+<span class="lineNum"> 262 </span> : * Each starts by constructing a temporary object of type
+<span class="lineNum"> 263 </span> : * std::basic_ostream::sentry. This has several effects, concluding
+<span class="lineNum"> 264 </span> : * with the setting of a status flag; see the sentry documentation
+<span class="lineNum"> 265 </span> : * for more.
+<span class="lineNum"> 266 </span> : *
+<span class="lineNum"> 267 </span> : * If the sentry status is good, the function tries to generate
+<span class="lineNum"> 268 </span> : * whatever data is appropriate for the type of the argument.
+<span class="lineNum"> 269 </span> : *
+<span class="lineNum"> 270 </span> : * If an exception is thrown during insertion, ios_base::badbit
+<span class="lineNum"> 271 </span> : * will be turned on in the stream's error state. If badbit is on in
+<span class="lineNum"> 272 </span> : * the stream's exceptions mask, the exception will be rethrown
+<span class="lineNum"> 273 </span> : * without completing its actions.
+<span class="lineNum"> 274 </span> : */
+<span class="lineNum"> 275 </span> : //@{
+<span class="lineNum"> 276 </span> : /**
+<span class="lineNum"> 277 </span> : * @brief Simple insertion.
+<span class="lineNum"> 278 </span> : * @param c The character to insert.
+<span class="lineNum"> 279 </span> : * @return *this
+<span class="lineNum"> 280 </span> : *
+<span class="lineNum"> 281 </span> : * Tries to insert @a c.
+<span class="lineNum"> 282 </span> : *
+<span class="lineNum"> 283 </span> : * @note This function is not overloaded on signed char and
+<span class="lineNum"> 284 </span> : * unsigned char.
+<span class="lineNum"> 285 </span> : */
+<span class="lineNum"> 286 </span> : __ostream_type&amp;
+<span class="lineNum"> 287 </span> : put(char_type __c);
+<span class="lineNum"> 288 </span> :
+<span class="lineNum"> 289 </span> : // Core write functionality, without sentry.
+<span class="lineNum"> 290 </span> : void
+<span class="lineNum"> 291 </span> : _M_write(const char_type* __s, streamsize __n)
+<span class="lineNum"> 292 </span> : {
+<span class="lineNum"> 293 </span> : const streamsize __put = this-&gt;rdbuf()-&gt;sputn(__s, __n);
+<span class="lineNum"> 294 </span> : if (__put != __n)
+<span class="lineNum"> 295 </span> : this-&gt;setstate(ios_base::badbit);
+<span class="lineNum"> 296 </span> : }
+<span class="lineNum"> 297 </span> :
+<span class="lineNum"> 298 </span> : /**
+<span class="lineNum"> 299 </span> : * @brief Character string insertion.
+<span class="lineNum"> 300 </span> : * @param s The array to insert.
+<span class="lineNum"> 301 </span> : * @param n Maximum number of characters to insert.
+<span class="lineNum"> 302 </span> : * @return *this
+<span class="lineNum"> 303 </span> : *
+<span class="lineNum"> 304 </span> : * Characters are copied from @a s and inserted into the stream until
+<span class="lineNum"> 305 </span> : * one of the following happens:
+<span class="lineNum"> 306 </span> : *
+<span class="lineNum"> 307 </span> : * - @a n characters are inserted
+<span class="lineNum"> 308 </span> : * - inserting into the output sequence fails (in this case, badbit
+<span class="lineNum"> 309 </span> : * will be set in the stream's error state)
+<span class="lineNum"> 310 </span> : *
+<span class="lineNum"> 311 </span> : * @note This function is not overloaded on signed char and
+<span class="lineNum"> 312 </span> : * unsigned char.
+<span class="lineNum"> 313 </span> : */
+<span class="lineNum"> 314 </span> : __ostream_type&amp;
+<span class="lineNum"> 315 </span> : write(const char_type* __s, streamsize __n);
+<span class="lineNum"> 316 </span> : //@}
+<span class="lineNum"> 317 </span> :
+<span class="lineNum"> 318 </span> : /**
+<span class="lineNum"> 319 </span> : * @brief Synchronizing the stream buffer.
+<span class="lineNum"> 320 </span> : * @return *this
+<span class="lineNum"> 321 </span> : *
+<span class="lineNum"> 322 </span> : * If @c rdbuf() is a null pointer, changes nothing.
+<span class="lineNum"> 323 </span> : *
+<span class="lineNum"> 324 </span> : * Otherwise, calls @c rdbuf()-&gt;pubsync(), and if that returns -1,
+<span class="lineNum"> 325 </span> : * sets badbit.
+<span class="lineNum"> 326 </span> : */
+<span class="lineNum"> 327 </span> : __ostream_type&amp;
+<span class="lineNum"> 328 </span> : flush();
+<span class="lineNum"> 329 </span> :
+<span class="lineNum"> 330 </span> : // [27.6.2.4] seek members
+<span class="lineNum"> 331 </span> : /**
+<span class="lineNum"> 332 </span> : * @brief Getting the current write position.
+<span class="lineNum"> 333 </span> : * @return A file position object.
+<span class="lineNum"> 334 </span> : *
+<span class="lineNum"> 335 </span> : * If @c fail() is not false, returns @c pos_type(-1) to indicate
+<span class="lineNum"> 336 </span> : * failure. Otherwise returns @c rdbuf()-&gt;pubseekoff(0,cur,out).
+<span class="lineNum"> 337 </span> : */
+<span class="lineNum"> 338 </span> : pos_type
+<span class="lineNum"> 339 </span> : tellp();
+<span class="lineNum"> 340 </span> :
+<span class="lineNum"> 341 </span> : /**
+<span class="lineNum"> 342 </span> : * @brief Changing the current write position.
+<span class="lineNum"> 343 </span> : * @param pos A file position object.
+<span class="lineNum"> 344 </span> : * @return *this
+<span class="lineNum"> 345 </span> : *
+<span class="lineNum"> 346 </span> : * If @c fail() is not true, calls @c rdbuf()-&gt;pubseekpos(pos). If
+<span class="lineNum"> 347 </span> : * that function fails, sets failbit.
+<span class="lineNum"> 348 </span> : */
+<span class="lineNum"> 349 </span> : __ostream_type&amp;
+<span class="lineNum"> 350 </span> : seekp(pos_type);
+<span class="lineNum"> 351 </span> :
+<span class="lineNum"> 352 </span> : /**
+<span class="lineNum"> 353 </span> : * @brief Changing the current write position.
+<span class="lineNum"> 354 </span> : * @param off A file offset object.
+<span class="lineNum"> 355 </span> : * @param dir The direction in which to seek.
+<span class="lineNum"> 356 </span> : * @return *this
+<span class="lineNum"> 357 </span> : *
+<span class="lineNum"> 358 </span> : * If @c fail() is not true, calls @c rdbuf()-&gt;pubseekoff(off,dir).
+<span class="lineNum"> 359 </span> : * If that function fails, sets failbit.
+<span class="lineNum"> 360 </span> : */
+<span class="lineNum"> 361 </span> : __ostream_type&amp;
+<span class="lineNum"> 362 </span> : seekp(off_type, ios_base::seekdir);
+<span class="lineNum"> 363 </span> :
+<span class="lineNum"> 364 </span> : protected:
+<span class="lineNum"> 365 </span><span class="lineNoCov"> 0 : basic_ostream()</span>
+<span class="lineNum"> 366 </span><span class="lineNoCov"> 0 : { this-&gt;init(0); }</span>
+<span class="lineNum"> 367 </span> :
+<span class="lineNum"> 368 </span> : template&lt;typename _ValueT&gt;
+<span class="lineNum"> 369 </span> : __ostream_type&amp;
+<span class="lineNum"> 370 </span> : _M_insert(_ValueT __v);
+<span class="lineNum"> 371 </span> : };
+<span class="lineNum"> 372 </span> :
+<span class="lineNum"> 373 </span> : /**
+<span class="lineNum"> 374 </span> : * @brief Performs setup work for output streams.
+<span class="lineNum"> 375 </span> : *
+<span class="lineNum"> 376 </span> : * Objects of this class are created before all of the standard
+<span class="lineNum"> 377 </span> : * inserters are run. It is responsible for &quot;exception-safe prefix and
+<span class="lineNum"> 378 </span> : * suffix operations.&quot; Additional actions may be added by the
+<span class="lineNum"> 379 </span> : * implementation, and we list them in
+<span class="lineNum"> 380 </span> : * http://gcc.gnu.org/onlinedocs/libstdc++/17_intro/howto.html#5
+<span class="lineNum"> 381 </span> : * under [27.6] notes.
+<span class="lineNum"> 382 </span> : */
+<span class="lineNum"> 383 </span> : template &lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 384 </span> : class basic_ostream&lt;_CharT, _Traits&gt;::sentry
+<span class="lineNum"> 385 </span> : {
+<span class="lineNum"> 386 </span> : // Data Members:
+<span class="lineNum"> 387 </span> : bool _M_ok;
+<span class="lineNum"> 388 </span> : basic_ostream&lt;_CharT, _Traits&gt;&amp; _M_os;
+<span class="lineNum"> 389 </span> :
+<span class="lineNum"> 390 </span> : public:
+<span class="lineNum"> 391 </span> : /**
+<span class="lineNum"> 392 </span> : * @brief The constructor performs preparatory work.
+<span class="lineNum"> 393 </span> : * @param os The output stream to guard.
+<span class="lineNum"> 394 </span> : *
+<span class="lineNum"> 395 </span> : * If the stream state is good (@a os.good() is true), then if the
+<span class="lineNum"> 396 </span> : * stream is tied to another output stream, @c is.tie()-&gt;flush()
+<span class="lineNum"> 397 </span> : * is called to synchronize the output sequences.
+<span class="lineNum"> 398 </span> : *
+<span class="lineNum"> 399 </span> : * If the stream state is still good, then the sentry state becomes
+<span class="lineNum"> 400 </span> : * true (&quot;okay&quot;).
+<span class="lineNum"> 401 </span> : */
+<span class="lineNum"> 402 </span> : explicit
+<span class="lineNum"> 403 </span> : sentry(basic_ostream&lt;_CharT, _Traits&gt;&amp; __os);
+<span class="lineNum"> 404 </span> :
+<span class="lineNum"> 405 </span> : /**
+<span class="lineNum"> 406 </span> : * @brief Possibly flushes the stream.
+<span class="lineNum"> 407 </span> : *
+<span class="lineNum"> 408 </span> : * If @c ios_base::unitbuf is set in @c os.flags(), and
+<span class="lineNum"> 409 </span> : * @c std::uncaught_exception() is true, the sentry destructor calls
+<span class="lineNum"> 410 </span> : * @c flush() on the output stream.
+<span class="lineNum"> 411 </span> : */
+<span class="lineNum"> 412 </span> : ~sentry()
+<span class="lineNum"> 413 </span> : {
+<span class="lineNum"> 414 </span> : // XXX MT
+<span class="lineNum"> 415 </span> : if (bool(_M_os.flags() &amp; ios_base::unitbuf) &amp;&amp; !uncaught_exception())
+<span class="lineNum"> 416 </span> : {
+<span class="lineNum"> 417 </span> : // Can't call flush directly or else will get into recursive lock.
+<span class="lineNum"> 418 </span> : if (_M_os.rdbuf() &amp;&amp; _M_os.rdbuf()-&gt;pubsync() == -1)
+<span class="lineNum"> 419 </span> : _M_os.setstate(ios_base::badbit);
+<span class="lineNum"> 420 </span> : }
+<span class="lineNum"> 421 </span> : }
+<span class="lineNum"> 422 </span> :
+<span class="lineNum"> 423 </span> : /**
+<span class="lineNum"> 424 </span> : * @brief Quick status checking.
+<span class="lineNum"> 425 </span> : * @return The sentry state.
+<span class="lineNum"> 426 </span> : *
+<span class="lineNum"> 427 </span> : * For ease of use, sentries may be converted to booleans. The
+<span class="lineNum"> 428 </span> : * return value is that of the sentry state (true == okay).
+<span class="lineNum"> 429 </span> : */
+<span class="lineNum"> 430 </span> : operator bool() const
+<span class="lineNum"> 431 </span> : { return _M_ok; }
+<span class="lineNum"> 432 </span> : };
+<span class="lineNum"> 433 </span> :
+<span class="lineNum"> 434 </span> : // [27.6.2.5.4] character insertion templates
+<span class="lineNum"> 435 </span> : //@{
+<span class="lineNum"> 436 </span> : /**
+<span class="lineNum"> 437 </span> : * @brief Character inserters
+<span class="lineNum"> 438 </span> : * @param out An output stream.
+<span class="lineNum"> 439 </span> : * @param c A character.
+<span class="lineNum"> 440 </span> : * @return out
+<span class="lineNum"> 441 </span> : *
+<span class="lineNum"> 442 </span> : * Behaves like one of the formatted arithmetic inserters described in
+<span class="lineNum"> 443 </span> : * std::basic_ostream. After constructing a sentry object with good
+<span class="lineNum"> 444 </span> : * status, this function inserts a single character and any required
+<span class="lineNum"> 445 </span> : * padding (as determined by [22.2.2.2.2]). @c out.width(0) is then
+<span class="lineNum"> 446 </span> : * called.
+<span class="lineNum"> 447 </span> : *
+<span class="lineNum"> 448 </span> : * If @a c is of type @c char and the character type of the stream is not
+<span class="lineNum"> 449 </span> : * @c char, the character is widened before insertion.
+<span class="lineNum"> 450 </span> : */
+<span class="lineNum"> 451 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 452 </span> : inline basic_ostream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 453 </span> : operator&lt;&lt;(basic_ostream&lt;_CharT, _Traits&gt;&amp; __out, _CharT __c)
+<span class="lineNum"> 454 </span> : { return __ostream_insert(__out, &amp;__c, 1); }
+<span class="lineNum"> 455 </span> :
+<span class="lineNum"> 456 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 457 </span> : inline basic_ostream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 458 </span> : operator&lt;&lt;(basic_ostream&lt;_CharT, _Traits&gt;&amp; __out, char __c)
+<span class="lineNum"> 459 </span> : { return (__out &lt;&lt; __out.widen(__c)); }
+<span class="lineNum"> 460 </span> :
+<span class="lineNum"> 461 </span> : // Specialization
+<span class="lineNum"> 462 </span> : template &lt;class _Traits&gt;
+<span class="lineNum"> 463 </span> : inline basic_ostream&lt;char, _Traits&gt;&amp;
+<span class="lineNum"> 464 </span><span class="lineNoCov"> 0 : operator&lt;&lt;(basic_ostream&lt;char, _Traits&gt;&amp; __out, char __c)</span>
+<span class="lineNum"> 465 </span><span class="lineNoCov"> 0 : { return __ostream_insert(__out, &amp;__c, 1); }</span>
+<span class="lineNum"> 466 </span> :
+<span class="lineNum"> 467 </span> : // Signed and unsigned
+<span class="lineNum"> 468 </span> : template&lt;class _Traits&gt;
+<span class="lineNum"> 469 </span> : inline basic_ostream&lt;char, _Traits&gt;&amp;
+<span class="lineNum"> 470 </span> : operator&lt;&lt;(basic_ostream&lt;char, _Traits&gt;&amp; __out, signed char __c)
+<span class="lineNum"> 471 </span> : { return (__out &lt;&lt; static_cast&lt;char&gt;(__c)); }
+<span class="lineNum"> 472 </span> :
+<span class="lineNum"> 473 </span> : template&lt;class _Traits&gt;
+<span class="lineNum"> 474 </span> : inline basic_ostream&lt;char, _Traits&gt;&amp;
+<span class="lineNum"> 475 </span> : operator&lt;&lt;(basic_ostream&lt;char, _Traits&gt;&amp; __out, unsigned char __c)
+<span class="lineNum"> 476 </span> : { return (__out &lt;&lt; static_cast&lt;char&gt;(__c)); }
+<span class="lineNum"> 477 </span> : //@}
+<span class="lineNum"> 478 </span> :
+<span class="lineNum"> 479 </span> : //@{
+<span class="lineNum"> 480 </span> : /**
+<span class="lineNum"> 481 </span> : * @brief String inserters
+<span class="lineNum"> 482 </span> : * @param out An output stream.
+<span class="lineNum"> 483 </span> : * @param s A character string.
+<span class="lineNum"> 484 </span> : * @return out
+<span class="lineNum"> 485 </span> : * @pre @a s must be a non-NULL pointer
+<span class="lineNum"> 486 </span> : *
+<span class="lineNum"> 487 </span> : * Behaves like one of the formatted arithmetic inserters described in
+<span class="lineNum"> 488 </span> : * std::basic_ostream. After constructing a sentry object with good
+<span class="lineNum"> 489 </span> : * status, this function inserts @c traits::length(s) characters starting
+<span class="lineNum"> 490 </span> : * at @a s, widened if necessary, followed by any required padding (as
+<span class="lineNum"> 491 </span> : * determined by [22.2.2.2.2]). @c out.width(0) is then called.
+<span class="lineNum"> 492 </span> : */
+<span class="lineNum"> 493 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 494 </span> : inline basic_ostream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 495 </span> : operator&lt;&lt;(basic_ostream&lt;_CharT, _Traits&gt;&amp; __out, const _CharT* __s)
+<span class="lineNum"> 496 </span> : {
+<span class="lineNum"> 497 </span> : if (!__s)
+<span class="lineNum"> 498 </span> : __out.setstate(ios_base::badbit);
+<span class="lineNum"> 499 </span> : else
+<span class="lineNum"> 500 </span> : __ostream_insert(__out, __s,
+<span class="lineNum"> 501 </span> : static_cast&lt;streamsize&gt;(_Traits::length(__s)));
+<span class="lineNum"> 502 </span> : return __out;
+<span class="lineNum"> 503 </span> : }
+<span class="lineNum"> 504 </span> :
+<span class="lineNum"> 505 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 506 </span> : basic_ostream&lt;_CharT, _Traits&gt; &amp;
+<span class="lineNum"> 507 </span> : operator&lt;&lt;(basic_ostream&lt;_CharT, _Traits&gt;&amp; __out, const char* __s);
+<span class="lineNum"> 508 </span> :
+<span class="lineNum"> 509 </span> : // Partial specializations
+<span class="lineNum"> 510 </span> : template&lt;class _Traits&gt;
+<span class="lineNum"> 511 </span> : inline basic_ostream&lt;char, _Traits&gt;&amp;
+<span class="lineNum"> 512 </span><span class="lineNoCov"> 0 : operator&lt;&lt;(basic_ostream&lt;char, _Traits&gt;&amp; __out, const char* __s)</span>
+<span class="lineNum"> 513 </span> : {
+<span class="lineNum"> 514 </span><span class="lineNoCov"> 0 : if (!__s)</span>
+<span class="lineNum"> 515 </span><span class="lineNoCov"> 0 : __out.setstate(ios_base::badbit);</span>
+<span class="lineNum"> 516 </span> : else
+<span class="lineNum"> 517 </span><span class="lineNoCov"> 0 : __ostream_insert(__out, __s,</span>
+<span class="lineNum"> 518 </span> : static_cast&lt;streamsize&gt;(_Traits::length(__s)));
+<span class="lineNum"> 519 </span><span class="lineNoCov"> 0 : return __out;</span>
+<span class="lineNum"> 520 </span> : }
+<span class="lineNum"> 521 </span> :
+<span class="lineNum"> 522 </span> : // Signed and unsigned
+<span class="lineNum"> 523 </span> : template&lt;class _Traits&gt;
+<span class="lineNum"> 524 </span> : inline basic_ostream&lt;char, _Traits&gt;&amp;
+<span class="lineNum"> 525 </span> : operator&lt;&lt;(basic_ostream&lt;char, _Traits&gt;&amp; __out, const signed char* __s)
+<span class="lineNum"> 526 </span> : { return (__out &lt;&lt; reinterpret_cast&lt;const char*&gt;(__s)); }
+<span class="lineNum"> 527 </span> :
+<span class="lineNum"> 528 </span> : template&lt;class _Traits&gt;
+<span class="lineNum"> 529 </span> : inline basic_ostream&lt;char, _Traits&gt; &amp;
+<span class="lineNum"> 530 </span> : operator&lt;&lt;(basic_ostream&lt;char, _Traits&gt;&amp; __out, const unsigned char* __s)
+<span class="lineNum"> 531 </span> : { return (__out &lt;&lt; reinterpret_cast&lt;const char*&gt;(__s)); }
+<span class="lineNum"> 532 </span> : //@}
+<span class="lineNum"> 533 </span> :
+<span class="lineNum"> 534 </span> : // [27.6.2.7] standard basic_ostream manipulators
+<span class="lineNum"> 535 </span> : /**
+<span class="lineNum"> 536 </span> : * @brief Write a newline and flush the stream.
+<span class="lineNum"> 537 </span> : *
+<span class="lineNum"> 538 </span> : * This manipulator is often mistakenly used when a simple newline is
+<span class="lineNum"> 539 </span> : * desired, leading to poor buffering performance. See
+<span class="lineNum"> 540 </span> : * http://gcc.gnu.org/onlinedocs/libstdc++/27_io/howto.html#2 for more
+<span class="lineNum"> 541 </span> : * on this subject.
+<span class="lineNum"> 542 </span> : */
+<span class="lineNum"> 543 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 544 </span> : inline basic_ostream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 545 </span><span class="lineNoCov"> 0 : endl(basic_ostream&lt;_CharT, _Traits&gt;&amp; __os)</span>
+<span class="lineNum"> 546 </span><span class="lineNoCov"> 0 : { return flush(__os.put(__os.widen('\n'))); }</span>
+<span class="lineNum"> 547 </span> :
+<span class="lineNum"> 548 </span> : /**
+<span class="lineNum"> 549 </span> : * @brief Write a null character into the output sequence.
+<span class="lineNum"> 550 </span> : *
+<span class="lineNum"> 551 </span> : * &quot;Null character&quot; is @c CharT() by definition. For CharT of @c char,
+<span class="lineNum"> 552 </span> : * this correctly writes the ASCII @c NUL character string terminator.
+<span class="lineNum"> 553 </span> : */
+<span class="lineNum"> 554 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 555 </span> : inline basic_ostream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 556 </span> : ends(basic_ostream&lt;_CharT, _Traits&gt;&amp; __os)
+<span class="lineNum"> 557 </span> : { return __os.put(_CharT()); }
+<span class="lineNum"> 558 </span> :
+<span class="lineNum"> 559 </span> : /**
+<span class="lineNum"> 560 </span> : * @brief Flushes the output stream.
+<span class="lineNum"> 561 </span> : *
+<span class="lineNum"> 562 </span> : * This manipulator simply calls the stream's @c flush() member function.
+<span class="lineNum"> 563 </span> : */
+<span class="lineNum"> 564 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 565 </span> : inline basic_ostream&lt;_CharT, _Traits&gt;&amp;
+<span class="lineNum"> 566 </span><span class="lineNoCov"> 0 : flush(basic_ostream&lt;_CharT, _Traits&gt;&amp; __os)</span>
+<span class="lineNum"> 567 </span><span class="lineNoCov"> 0 : { return __os.flush(); }</span>
+<span class="lineNum"> 568 </span> :
+<span class="lineNum"> 569 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 570 </span> :
+<span class="lineNum"> 571 </span> : #ifndef _GLIBCXX_EXPORT_TEMPLATE
+<span class="lineNum"> 572 </span> : # include &lt;bits/ostream.tcc&gt;
+<span class="lineNum"> 573 </span> : #endif
+<span class="lineNum"> 574 </span> :
+<span class="lineNum"> 575 </span> : #endif /* _GLIBCXX_OSTREAM */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/sstream.gcov.html b/rep/usr/include/c++/4.3/sstream.gcov.html
new file mode 100644
index 0000000..0254a8d
--- /dev/null
+++ b/rep/usr/include/c++/4.3/sstream.gcov.html
@@ -0,0 +1,642 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/sstream</title>
+ <link rel="stylesheet" type="text/css" href="../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3</a> - sstream</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">43</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">0.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">0</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // String based streams -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+<span class="lineNum"> 4 </span> : // 2006, 2008 Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License
+<span class="lineNum"> 18 </span> : // along with this library; see the file COPYING. If not, write to
+<span class="lineNum"> 19 </span> : // the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+<span class="lineNum"> 20 </span> : // Boston, MA 02110-1301, USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /** @file sstream
+<span class="lineNum"> 32 </span> : * This is a Standard C++ Library header.
+<span class="lineNum"> 33 </span> : */
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : //
+<span class="lineNum"> 36 </span> : // ISO C++ 14882: 27.7 String-based streams
+<span class="lineNum"> 37 </span> : //
+<span class="lineNum"> 38 </span> :
+<span class="lineNum"> 39 </span> : #ifndef _GLIBCXX_SSTREAM
+<span class="lineNum"> 40 </span> : #define _GLIBCXX_SSTREAM 1
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span> : #pragma GCC system_header
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span> : #include &lt;istream&gt;
+<span class="lineNum"> 45 </span> : #include &lt;ostream&gt;
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 48 </span> :
+<span class="lineNum"> 49 </span> : // [27.7.1] template class basic_stringbuf
+<span class="lineNum"> 50 </span> : /**
+<span class="lineNum"> 51 </span> : * @brief The actual work of input and output (for std::string).
+<span class="lineNum"> 52 </span> : *
+<span class="lineNum"> 53 </span> : * This class associates either or both of its input and output sequences
+<span class="lineNum"> 54 </span> : * with a sequence of characters, which can be initialized from, or made
+<span class="lineNum"> 55 </span> : * available as, a @c std::basic_string. (Paraphrased from [27.7.1]/1.)
+<span class="lineNum"> 56 </span> : *
+<span class="lineNum"> 57 </span> : * For this class, open modes (of type @c ios_base::openmode) have
+<span class="lineNum"> 58 </span> : * @c in set if the input sequence can be read, and @c out set if the
+<span class="lineNum"> 59 </span> : * output sequence can be written.
+<span class="lineNum"> 60 </span> : */
+<span class="lineNum"> 61 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 62 </span> : class basic_stringbuf : public basic_streambuf&lt;_CharT, _Traits&gt;
+<span class="lineNum"> 63 </span> : {
+<span class="lineNum"> 64 </span> : public:
+<span class="lineNum"> 65 </span> : // Types:
+<span class="lineNum"> 66 </span> : typedef _CharT char_type;
+<span class="lineNum"> 67 </span> : typedef _Traits traits_type;
+<span class="lineNum"> 68 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 69 </span> : // 251. basic_stringbuf missing allocator_type
+<span class="lineNum"> 70 </span> : typedef _Alloc allocator_type;
+<span class="lineNum"> 71 </span> : typedef typename traits_type::int_type int_type;
+<span class="lineNum"> 72 </span> : typedef typename traits_type::pos_type pos_type;
+<span class="lineNum"> 73 </span> : typedef typename traits_type::off_type off_type;
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span> : typedef basic_streambuf&lt;char_type, traits_type&gt; __streambuf_type;
+<span class="lineNum"> 76 </span> : typedef basic_string&lt;char_type, _Traits, _Alloc&gt; __string_type;
+<span class="lineNum"> 77 </span> : typedef typename __string_type::size_type __size_type;
+<span class="lineNum"> 78 </span> :
+<span class="lineNum"> 79 </span> : protected:
+<span class="lineNum"> 80 </span> : /// Place to stash in || out || in | out settings for current stringbuf.
+<span class="lineNum"> 81 </span> : ios_base::openmode _M_mode;
+<span class="lineNum"> 82 </span> :
+<span class="lineNum"> 83 </span> : // Data Members:
+<span class="lineNum"> 84 </span> : __string_type _M_string;
+<span class="lineNum"> 85 </span> :
+<span class="lineNum"> 86 </span> : public:
+<span class="lineNum"> 87 </span> : // Constructors:
+<span class="lineNum"> 88 </span> : /**
+<span class="lineNum"> 89 </span> : * @brief Starts with an empty string buffer.
+<span class="lineNum"> 90 </span> : * @param mode Whether the buffer can read, or write, or both.
+<span class="lineNum"> 91 </span> : *
+<span class="lineNum"> 92 </span> : * The default constructor initializes the parent class using its
+<span class="lineNum"> 93 </span> : * own default ctor.
+<span class="lineNum"> 94 </span> : */
+<span class="lineNum"> 95 </span> : explicit
+<span class="lineNum"> 96 </span><span class="lineNoCov"> 0 : basic_stringbuf(ios_base::openmode __mode = ios_base::in | ios_base::out)</span>
+<span class="lineNum"> 97 </span><span class="lineNoCov"> 0 : : __streambuf_type(), _M_mode(__mode), _M_string()</span>
+<span class="lineNum"> 98 </span><span class="lineNoCov"> 0 : { }</span>
+<span class="lineNum"> 99 </span> :
+<span class="lineNum"> 100 </span> : /**
+<span class="lineNum"> 101 </span> : * @brief Starts with an existing string buffer.
+<span class="lineNum"> 102 </span> : * @param str A string to copy as a starting buffer.
+<span class="lineNum"> 103 </span> : * @param mode Whether the buffer can read, or write, or both.
+<span class="lineNum"> 104 </span> : *
+<span class="lineNum"> 105 </span> : * This constructor initializes the parent class using its
+<span class="lineNum"> 106 </span> : * own default ctor.
+<span class="lineNum"> 107 </span> : */
+<span class="lineNum"> 108 </span> : explicit
+<span class="lineNum"> 109 </span> : basic_stringbuf(const __string_type&amp; __str,
+<span class="lineNum"> 110 </span><span class="lineNoCov"> 0 : ios_base::openmode __mode = ios_base::in | ios_base::out)</span>
+<span class="lineNum"> 111 </span><span class="lineNoCov"> 0 : : __streambuf_type(), _M_mode(), _M_string(__str.data(), __str.size())</span>
+<span class="lineNum"> 112 </span><span class="lineNoCov"> 0 : { _M_stringbuf_init(__mode); }</span>
+<span class="lineNum"> 113 </span> :
+<span class="lineNum"> 114 </span> : // Get and set:
+<span class="lineNum"> 115 </span> : /**
+<span class="lineNum"> 116 </span> : * @brief Copying out the string buffer.
+<span class="lineNum"> 117 </span> : * @return A copy of one of the underlying sequences.
+<span class="lineNum"> 118 </span> : *
+<span class="lineNum"> 119 </span> : * &quot;If the buffer is only created in input mode, the underlying
+<span class="lineNum"> 120 </span> : * character sequence is equal to the input sequence; otherwise, it
+<span class="lineNum"> 121 </span> : * is equal to the output sequence.&quot; [27.7.1.2]/1
+<span class="lineNum"> 122 </span> : */
+<span class="lineNum"> 123 </span> : __string_type
+<span class="lineNum"> 124 </span><span class="lineNoCov"> 0 : str() const</span>
+<span class="lineNum"> 125 </span> : {
+<span class="lineNum"> 126 </span><span class="lineNoCov"> 0 : __string_type __ret;</span>
+<span class="lineNum"> 127 </span><span class="lineNoCov"> 0 : if (this-&gt;pptr())</span>
+<span class="lineNum"> 128 </span> : {
+<span class="lineNum"> 129 </span> : // The current egptr() may not be the actual string end.
+<span class="lineNum"> 130 </span><span class="lineNoCov"> 0 : if (this-&gt;pptr() &gt; this-&gt;egptr())</span>
+<span class="lineNum"> 131 </span><span class="lineNoCov"> 0 : __ret = __string_type(this-&gt;pbase(), this-&gt;pptr());</span>
+<span class="lineNum"> 132 </span> : else
+<span class="lineNum"> 133 </span><span class="lineNoCov"> 0 : __ret = __string_type(this-&gt;pbase(), this-&gt;egptr());</span>
+<span class="lineNum"> 134 </span> : }
+<span class="lineNum"> 135 </span> : else
+<span class="lineNum"> 136 </span><span class="lineNoCov"> 0 : __ret = _M_string;</span>
+<span class="lineNum"> 137 </span><span class="lineNoCov"> 0 : return __ret;</span>
+<span class="lineNum"> 138 </span> : }
+<span class="lineNum"> 139 </span> :
+<span class="lineNum"> 140 </span> : /**
+<span class="lineNum"> 141 </span> : * @brief Setting a new buffer.
+<span class="lineNum"> 142 </span> : * @param s The string to use as a new sequence.
+<span class="lineNum"> 143 </span> : *
+<span class="lineNum"> 144 </span> : * Deallocates any previous stored sequence, then copies @a s to
+<span class="lineNum"> 145 </span> : * use as a new one.
+<span class="lineNum"> 146 </span> : */
+<span class="lineNum"> 147 </span> : void
+<span class="lineNum"> 148 </span> : str(const __string_type&amp; __s)
+<span class="lineNum"> 149 </span> : {
+<span class="lineNum"> 150 </span> : // Cannot use _M_string = __s, since v3 strings are COW.
+<span class="lineNum"> 151 </span> : _M_string.assign(__s.data(), __s.size());
+<span class="lineNum"> 152 </span> : _M_stringbuf_init(_M_mode);
+<span class="lineNum"> 153 </span> : }
+<span class="lineNum"> 154 </span> :
+<span class="lineNum"> 155 </span> : protected:
+<span class="lineNum"> 156 </span> : // Common initialization code goes here.
+<span class="lineNum"> 157 </span> : void
+<span class="lineNum"> 158 </span><span class="lineNoCov"> 0 : _M_stringbuf_init(ios_base::openmode __mode)</span>
+<span class="lineNum"> 159 </span> : {
+<span class="lineNum"> 160 </span><span class="lineNoCov"> 0 : _M_mode = __mode;</span>
+<span class="lineNum"> 161 </span><span class="lineNoCov"> 0 : __size_type __len = 0;</span>
+<span class="lineNum"> 162 </span><span class="lineNoCov"> 0 : if (_M_mode &amp; (ios_base::ate | ios_base::app))</span>
+<span class="lineNum"> 163 </span><span class="lineNoCov"> 0 : __len = _M_string.size();</span>
+<span class="lineNum"> 164 </span><span class="lineNoCov"> 0 : _M_sync(const_cast&lt;char_type*&gt;(_M_string.data()), 0, __len);</span>
+<span class="lineNum"> 165 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 166 </span> :
+<span class="lineNum"> 167 </span> : virtual streamsize
+<span class="lineNum"> 168 </span> : showmanyc()
+<span class="lineNum"> 169 </span> : {
+<span class="lineNum"> 170 </span> : streamsize __ret = -1;
+<span class="lineNum"> 171 </span> : if (_M_mode &amp; ios_base::in)
+<span class="lineNum"> 172 </span> : {
+<span class="lineNum"> 173 </span> : _M_update_egptr();
+<span class="lineNum"> 174 </span> : __ret = this-&gt;egptr() - this-&gt;gptr();
+<span class="lineNum"> 175 </span> : }
+<span class="lineNum"> 176 </span> : return __ret;
+<span class="lineNum"> 177 </span> : }
+<span class="lineNum"> 178 </span> :
+<span class="lineNum"> 179 </span> : virtual int_type
+<span class="lineNum"> 180 </span> : underflow();
+<span class="lineNum"> 181 </span> :
+<span class="lineNum"> 182 </span> : virtual int_type
+<span class="lineNum"> 183 </span> : pbackfail(int_type __c = traits_type::eof());
+<span class="lineNum"> 184 </span> :
+<span class="lineNum"> 185 </span> : virtual int_type
+<span class="lineNum"> 186 </span> : overflow(int_type __c = traits_type::eof());
+<span class="lineNum"> 187 </span> :
+<span class="lineNum"> 188 </span> : /**
+<span class="lineNum"> 189 </span> : * @brief Manipulates the buffer.
+<span class="lineNum"> 190 </span> : * @param s Pointer to a buffer area.
+<span class="lineNum"> 191 </span> : * @param n Size of @a s.
+<span class="lineNum"> 192 </span> : * @return @c this
+<span class="lineNum"> 193 </span> : *
+<span class="lineNum"> 194 </span> : * If no buffer has already been created, and both @a s and @a n are
+<span class="lineNum"> 195 </span> : * non-zero, then @c s is used as a buffer; see
+<span class="lineNum"> 196 </span> : * http://gcc.gnu.org/onlinedocs/libstdc++/27_io/howto.html#2
+<span class="lineNum"> 197 </span> : * for more.
+<span class="lineNum"> 198 </span> : */
+<span class="lineNum"> 199 </span> : virtual __streambuf_type*
+<span class="lineNum"> 200 </span> : setbuf(char_type* __s, streamsize __n)
+<span class="lineNum"> 201 </span> : {
+<span class="lineNum"> 202 </span> : if (__s &amp;&amp; __n &gt;= 0)
+<span class="lineNum"> 203 </span> : {
+<span class="lineNum"> 204 </span> : // This is implementation-defined behavior, and assumes
+<span class="lineNum"> 205 </span> : // that an external char_type array of length __n exists
+<span class="lineNum"> 206 </span> : // and has been pre-allocated. If this is not the case,
+<span class="lineNum"> 207 </span> : // things will quickly blow up.
+<span class="lineNum"> 208 </span> :
+<span class="lineNum"> 209 </span> : // Step 1: Destroy the current internal array.
+<span class="lineNum"> 210 </span> : _M_string.clear();
+<span class="lineNum"> 211 </span> :
+<span class="lineNum"> 212 </span> : // Step 2: Use the external array.
+<span class="lineNum"> 213 </span> : _M_sync(__s, __n, 0);
+<span class="lineNum"> 214 </span> : }
+<span class="lineNum"> 215 </span> : return this;
+<span class="lineNum"> 216 </span> : }
+<span class="lineNum"> 217 </span> :
+<span class="lineNum"> 218 </span> : virtual pos_type
+<span class="lineNum"> 219 </span> : seekoff(off_type __off, ios_base::seekdir __way,
+<span class="lineNum"> 220 </span> : ios_base::openmode __mode = ios_base::in | ios_base::out);
+<span class="lineNum"> 221 </span> :
+<span class="lineNum"> 222 </span> : virtual pos_type
+<span class="lineNum"> 223 </span> : seekpos(pos_type __sp,
+<span class="lineNum"> 224 </span> : ios_base::openmode __mode = ios_base::in | ios_base::out);
+<span class="lineNum"> 225 </span> :
+<span class="lineNum"> 226 </span> : // Internal function for correctly updating the internal buffer
+<span class="lineNum"> 227 </span> : // for a particular _M_string, due to initialization or re-sizing
+<span class="lineNum"> 228 </span> : // of an existing _M_string.
+<span class="lineNum"> 229 </span> : void
+<span class="lineNum"> 230 </span> : _M_sync(char_type* __base, __size_type __i, __size_type __o);
+<span class="lineNum"> 231 </span> :
+<span class="lineNum"> 232 </span> : // Internal function for correctly updating egptr() to the actual
+<span class="lineNum"> 233 </span> : // string end.
+<span class="lineNum"> 234 </span> : void
+<span class="lineNum"> 235 </span> : _M_update_egptr()
+<span class="lineNum"> 236 </span> : {
+<span class="lineNum"> 237 </span> : const bool __testin = _M_mode &amp; ios_base::in;
+<span class="lineNum"> 238 </span> : if (this-&gt;pptr() &amp;&amp; this-&gt;pptr() &gt; this-&gt;egptr())
+<span class="lineNum"> 239 </span> : if (__testin)
+<span class="lineNum"> 240 </span> : this-&gt;setg(this-&gt;eback(), this-&gt;gptr(), this-&gt;pptr());
+<span class="lineNum"> 241 </span> : else
+<span class="lineNum"> 242 </span> : this-&gt;setg(this-&gt;pptr(), this-&gt;pptr(), this-&gt;pptr());
+<span class="lineNum"> 243 </span> : }
+<span class="lineNum"> 244 </span> : };
+<span class="lineNum"> 245 </span> :
+<span class="lineNum"> 246 </span> :
+<span class="lineNum"> 247 </span> : // [27.7.2] Template class basic_istringstream
+<span class="lineNum"> 248 </span> : /**
+<span class="lineNum"> 249 </span> : * @brief Controlling input for std::string.
+<span class="lineNum"> 250 </span> : *
+<span class="lineNum"> 251 </span> : * This class supports reading from objects of type std::basic_string,
+<span class="lineNum"> 252 </span> : * using the inherited functions from std::basic_istream. To control
+<span class="lineNum"> 253 </span> : * the associated sequence, an instance of std::basic_stringbuf is used,
+<span class="lineNum"> 254 </span> : * which this page refers to as @c sb.
+<span class="lineNum"> 255 </span> : */
+<span class="lineNum"> 256 </span> : template&lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 257 </span> : class basic_istringstream : public basic_istream&lt;_CharT, _Traits&gt;
+<span class="lineNum"> 258 </span> : {
+<span class="lineNum"> 259 </span> : public:
+<span class="lineNum"> 260 </span> : // Types:
+<span class="lineNum"> 261 </span> : typedef _CharT char_type;
+<span class="lineNum"> 262 </span> : typedef _Traits traits_type;
+<span class="lineNum"> 263 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 264 </span> : // 251. basic_stringbuf missing allocator_type
+<span class="lineNum"> 265 </span> : typedef _Alloc allocator_type;
+<span class="lineNum"> 266 </span> : typedef typename traits_type::int_type int_type;
+<span class="lineNum"> 267 </span> : typedef typename traits_type::pos_type pos_type;
+<span class="lineNum"> 268 </span> : typedef typename traits_type::off_type off_type;
+<span class="lineNum"> 269 </span> :
+<span class="lineNum"> 270 </span> : // Non-standard types:
+<span class="lineNum"> 271 </span> : typedef basic_string&lt;_CharT, _Traits, _Alloc&gt; __string_type;
+<span class="lineNum"> 272 </span> : typedef basic_stringbuf&lt;_CharT, _Traits, _Alloc&gt; __stringbuf_type;
+<span class="lineNum"> 273 </span> : typedef basic_istream&lt;char_type, traits_type&gt; __istream_type;
+<span class="lineNum"> 274 </span> :
+<span class="lineNum"> 275 </span> : private:
+<span class="lineNum"> 276 </span> : __stringbuf_type _M_stringbuf;
+<span class="lineNum"> 277 </span> :
+<span class="lineNum"> 278 </span> : public:
+<span class="lineNum"> 279 </span> : // Constructors:
+<span class="lineNum"> 280 </span> : /**
+<span class="lineNum"> 281 </span> : * @brief Default constructor starts with an empty string buffer.
+<span class="lineNum"> 282 </span> : * @param mode Whether the buffer can read, or write, or both.
+<span class="lineNum"> 283 </span> : *
+<span class="lineNum"> 284 </span> : * @c ios_base::in is automatically included in @a mode.
+<span class="lineNum"> 285 </span> : *
+<span class="lineNum"> 286 </span> : * Initializes @c sb using @c mode|in, and passes @c &amp;sb to the base
+<span class="lineNum"> 287 </span> : * class initializer. Does not allocate any buffer.
+<span class="lineNum"> 288 </span> : *
+<span class="lineNum"> 289 </span> : * That's a lie. We initialize the base class with NULL, because the
+<span class="lineNum"> 290 </span> : * string class does its own memory management.
+<span class="lineNum"> 291 </span> : */
+<span class="lineNum"> 292 </span> : explicit
+<span class="lineNum"> 293 </span> : basic_istringstream(ios_base::openmode __mode = ios_base::in)
+<span class="lineNum"> 294 </span> : : __istream_type(), _M_stringbuf(__mode | ios_base::in)
+<span class="lineNum"> 295 </span> : { this-&gt;init(&amp;_M_stringbuf); }
+<span class="lineNum"> 296 </span> :
+<span class="lineNum"> 297 </span> : /**
+<span class="lineNum"> 298 </span> : * @brief Starts with an existing string buffer.
+<span class="lineNum"> 299 </span> : * @param str A string to copy as a starting buffer.
+<span class="lineNum"> 300 </span> : * @param mode Whether the buffer can read, or write, or both.
+<span class="lineNum"> 301 </span> : *
+<span class="lineNum"> 302 </span> : * @c ios_base::in is automatically included in @a mode.
+<span class="lineNum"> 303 </span> : *
+<span class="lineNum"> 304 </span> : * Initializes @c sb using @a str and @c mode|in, and passes @c &amp;sb
+<span class="lineNum"> 305 </span> : * to the base class initializer.
+<span class="lineNum"> 306 </span> : *
+<span class="lineNum"> 307 </span> : * That's a lie. We initialize the base class with NULL, because the
+<span class="lineNum"> 308 </span> : * string class does its own memory management.
+<span class="lineNum"> 309 </span> : */
+<span class="lineNum"> 310 </span> : explicit
+<span class="lineNum"> 311 </span> : basic_istringstream(const __string_type&amp; __str,
+<span class="lineNum"> 312 </span><span class="lineNoCov"> 0 : ios_base::openmode __mode = ios_base::in)</span>
+<span class="lineNum"> 313 </span><span class="lineNoCov"> 0 : : __istream_type(), _M_stringbuf(__str, __mode | ios_base::in)</span>
+<span class="lineNum"> 314 </span><span class="lineNoCov"> 0 : { this-&gt;init(&amp;_M_stringbuf); }</span>
+<span class="lineNum"> 315 </span> :
+<span class="lineNum"> 316 </span> : /**
+<span class="lineNum"> 317 </span> : * @brief The destructor does nothing.
+<span class="lineNum"> 318 </span> : *
+<span class="lineNum"> 319 </span> : * The buffer is deallocated by the stringbuf object, not the
+<span class="lineNum"> 320 </span> : * formatting stream.
+<span class="lineNum"> 321 </span> : */
+<span class="lineNum"> 322 </span><span class="lineNoCov"> 0 : ~basic_istringstream()</span>
+<span class="lineNum"> 323 </span><span class="lineNoCov"> 0 : { }</span>
+<span class="lineNum"> 324 </span> :
+<span class="lineNum"> 325 </span> : // Members:
+<span class="lineNum"> 326 </span> : /**
+<span class="lineNum"> 327 </span> : * @brief Accessing the underlying buffer.
+<span class="lineNum"> 328 </span> : * @return The current basic_stringbuf buffer.
+<span class="lineNum"> 329 </span> : *
+<span class="lineNum"> 330 </span> : * This hides both signatures of std::basic_ios::rdbuf().
+<span class="lineNum"> 331 </span> : */
+<span class="lineNum"> 332 </span> : __stringbuf_type*
+<span class="lineNum"> 333 </span> : rdbuf() const
+<span class="lineNum"> 334 </span> : { return const_cast&lt;__stringbuf_type*&gt;(&amp;_M_stringbuf); }
+<span class="lineNum"> 335 </span> :
+<span class="lineNum"> 336 </span> : /**
+<span class="lineNum"> 337 </span> : * @brief Copying out the string buffer.
+<span class="lineNum"> 338 </span> : * @return @c rdbuf()-&gt;str()
+<span class="lineNum"> 339 </span> : */
+<span class="lineNum"> 340 </span> : __string_type
+<span class="lineNum"> 341 </span> : str() const
+<span class="lineNum"> 342 </span> : { return _M_stringbuf.str(); }
+<span class="lineNum"> 343 </span> :
+<span class="lineNum"> 344 </span> : /**
+<span class="lineNum"> 345 </span> : * @brief Setting a new buffer.
+<span class="lineNum"> 346 </span> : * @param s The string to use as a new sequence.
+<span class="lineNum"> 347 </span> : *
+<span class="lineNum"> 348 </span> : * Calls @c rdbuf()-&gt;str(s).
+<span class="lineNum"> 349 </span> : */
+<span class="lineNum"> 350 </span> : void
+<span class="lineNum"> 351 </span> : str(const __string_type&amp; __s)
+<span class="lineNum"> 352 </span> : { _M_stringbuf.str(__s); }
+<span class="lineNum"> 353 </span> : };
+<span class="lineNum"> 354 </span> :
+<span class="lineNum"> 355 </span> :
+<span class="lineNum"> 356 </span> : // [27.7.3] Template class basic_ostringstream
+<span class="lineNum"> 357 </span> : /**
+<span class="lineNum"> 358 </span> : * @brief Controlling output for std::string.
+<span class="lineNum"> 359 </span> : *
+<span class="lineNum"> 360 </span> : * This class supports writing to objects of type std::basic_string,
+<span class="lineNum"> 361 </span> : * using the inherited functions from std::basic_ostream. To control
+<span class="lineNum"> 362 </span> : * the associated sequence, an instance of std::basic_stringbuf is used,
+<span class="lineNum"> 363 </span> : * which this page refers to as @c sb.
+<span class="lineNum"> 364 </span> : */
+<span class="lineNum"> 365 </span> : template &lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 366 </span> : class basic_ostringstream : public basic_ostream&lt;_CharT, _Traits&gt;
+<span class="lineNum"> 367 </span> : {
+<span class="lineNum"> 368 </span> : public:
+<span class="lineNum"> 369 </span> : // Types:
+<span class="lineNum"> 370 </span> : typedef _CharT char_type;
+<span class="lineNum"> 371 </span> : typedef _Traits traits_type;
+<span class="lineNum"> 372 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 373 </span> : // 251. basic_stringbuf missing allocator_type
+<span class="lineNum"> 374 </span> : typedef _Alloc allocator_type;
+<span class="lineNum"> 375 </span> : typedef typename traits_type::int_type int_type;
+<span class="lineNum"> 376 </span> : typedef typename traits_type::pos_type pos_type;
+<span class="lineNum"> 377 </span> : typedef typename traits_type::off_type off_type;
+<span class="lineNum"> 378 </span> :
+<span class="lineNum"> 379 </span> : // Non-standard types:
+<span class="lineNum"> 380 </span> : typedef basic_string&lt;_CharT, _Traits, _Alloc&gt; __string_type;
+<span class="lineNum"> 381 </span> : typedef basic_stringbuf&lt;_CharT, _Traits, _Alloc&gt; __stringbuf_type;
+<span class="lineNum"> 382 </span> : typedef basic_ostream&lt;char_type, traits_type&gt; __ostream_type;
+<span class="lineNum"> 383 </span> :
+<span class="lineNum"> 384 </span> : private:
+<span class="lineNum"> 385 </span> : __stringbuf_type _M_stringbuf;
+<span class="lineNum"> 386 </span> :
+<span class="lineNum"> 387 </span> : public:
+<span class="lineNum"> 388 </span> : // Constructors/destructor:
+<span class="lineNum"> 389 </span> : /**
+<span class="lineNum"> 390 </span> : * @brief Default constructor starts with an empty string buffer.
+<span class="lineNum"> 391 </span> : * @param mode Whether the buffer can read, or write, or both.
+<span class="lineNum"> 392 </span> : *
+<span class="lineNum"> 393 </span> : * @c ios_base::out is automatically included in @a mode.
+<span class="lineNum"> 394 </span> : *
+<span class="lineNum"> 395 </span> : * Initializes @c sb using @c mode|out, and passes @c &amp;sb to the base
+<span class="lineNum"> 396 </span> : * class initializer. Does not allocate any buffer.
+<span class="lineNum"> 397 </span> : *
+<span class="lineNum"> 398 </span> : * That's a lie. We initialize the base class with NULL, because the
+<span class="lineNum"> 399 </span> : * string class does its own memory management.
+<span class="lineNum"> 400 </span> : */
+<span class="lineNum"> 401 </span> : explicit
+<span class="lineNum"> 402 </span><span class="lineNoCov"> 0 : basic_ostringstream(ios_base::openmode __mode = ios_base::out)</span>
+<span class="lineNum"> 403 </span><span class="lineNoCov"> 0 : : __ostream_type(), _M_stringbuf(__mode | ios_base::out)</span>
+<span class="lineNum"> 404 </span><span class="lineNoCov"> 0 : { this-&gt;init(&amp;_M_stringbuf); }</span>
+<span class="lineNum"> 405 </span> :
+<span class="lineNum"> 406 </span> : /**
+<span class="lineNum"> 407 </span> : * @brief Starts with an existing string buffer.
+<span class="lineNum"> 408 </span> : * @param str A string to copy as a starting buffer.
+<span class="lineNum"> 409 </span> : * @param mode Whether the buffer can read, or write, or both.
+<span class="lineNum"> 410 </span> : *
+<span class="lineNum"> 411 </span> : * @c ios_base::out is automatically included in @a mode.
+<span class="lineNum"> 412 </span> : *
+<span class="lineNum"> 413 </span> : * Initializes @c sb using @a str and @c mode|out, and passes @c &amp;sb
+<span class="lineNum"> 414 </span> : * to the base class initializer.
+<span class="lineNum"> 415 </span> : *
+<span class="lineNum"> 416 </span> : * That's a lie. We initialize the base class with NULL, because the
+<span class="lineNum"> 417 </span> : * string class does its own memory management.
+<span class="lineNum"> 418 </span> : */
+<span class="lineNum"> 419 </span> : explicit
+<span class="lineNum"> 420 </span> : basic_ostringstream(const __string_type&amp; __str,
+<span class="lineNum"> 421 </span> : ios_base::openmode __mode = ios_base::out)
+<span class="lineNum"> 422 </span> : : __ostream_type(), _M_stringbuf(__str, __mode | ios_base::out)
+<span class="lineNum"> 423 </span> : { this-&gt;init(&amp;_M_stringbuf); }
+<span class="lineNum"> 424 </span> :
+<span class="lineNum"> 425 </span> : /**
+<span class="lineNum"> 426 </span> : * @brief The destructor does nothing.
+<span class="lineNum"> 427 </span> : *
+<span class="lineNum"> 428 </span> : * The buffer is deallocated by the stringbuf object, not the
+<span class="lineNum"> 429 </span> : * formatting stream.
+<span class="lineNum"> 430 </span> : */
+<span class="lineNum"> 431 </span><span class="lineNoCov"> 0 : ~basic_ostringstream()</span>
+<span class="lineNum"> 432 </span><span class="lineNoCov"> 0 : { }</span>
+<span class="lineNum"> 433 </span> :
+<span class="lineNum"> 434 </span> : // Members:
+<span class="lineNum"> 435 </span> : /**
+<span class="lineNum"> 436 </span> : * @brief Accessing the underlying buffer.
+<span class="lineNum"> 437 </span> : * @return The current basic_stringbuf buffer.
+<span class="lineNum"> 438 </span> : *
+<span class="lineNum"> 439 </span> : * This hides both signatures of std::basic_ios::rdbuf().
+<span class="lineNum"> 440 </span> : */
+<span class="lineNum"> 441 </span> : __stringbuf_type*
+<span class="lineNum"> 442 </span> : rdbuf() const
+<span class="lineNum"> 443 </span> : { return const_cast&lt;__stringbuf_type*&gt;(&amp;_M_stringbuf); }
+<span class="lineNum"> 444 </span> :
+<span class="lineNum"> 445 </span> : /**
+<span class="lineNum"> 446 </span> : * @brief Copying out the string buffer.
+<span class="lineNum"> 447 </span> : * @return @c rdbuf()-&gt;str()
+<span class="lineNum"> 448 </span> : */
+<span class="lineNum"> 449 </span> : __string_type
+<span class="lineNum"> 450 </span><span class="lineNoCov"> 0 : str() const</span>
+<span class="lineNum"> 451 </span><span class="lineNoCov"> 0 : { return _M_stringbuf.str(); }</span>
+<span class="lineNum"> 452 </span> :
+<span class="lineNum"> 453 </span> : /**
+<span class="lineNum"> 454 </span> : * @brief Setting a new buffer.
+<span class="lineNum"> 455 </span> : * @param s The string to use as a new sequence.
+<span class="lineNum"> 456 </span> : *
+<span class="lineNum"> 457 </span> : * Calls @c rdbuf()-&gt;str(s).
+<span class="lineNum"> 458 </span> : */
+<span class="lineNum"> 459 </span> : void
+<span class="lineNum"> 460 </span> : str(const __string_type&amp; __s)
+<span class="lineNum"> 461 </span> : { _M_stringbuf.str(__s); }
+<span class="lineNum"> 462 </span> : };
+<span class="lineNum"> 463 </span> :
+<span class="lineNum"> 464 </span> :
+<span class="lineNum"> 465 </span> : // [27.7.4] Template class basic_stringstream
+<span class="lineNum"> 466 </span> : /**
+<span class="lineNum"> 467 </span> : * @brief Controlling input and output for std::string.
+<span class="lineNum"> 468 </span> : *
+<span class="lineNum"> 469 </span> : * This class supports reading from and writing to objects of type
+<span class="lineNum"> 470 </span> : * std::basic_string, using the inherited functions from
+<span class="lineNum"> 471 </span> : * std::basic_iostream. To control the associated sequence, an instance
+<span class="lineNum"> 472 </span> : * of std::basic_stringbuf is used, which this page refers to as @c sb.
+<span class="lineNum"> 473 </span> : */
+<span class="lineNum"> 474 </span> : template &lt;typename _CharT, typename _Traits, typename _Alloc&gt;
+<span class="lineNum"> 475 </span> : class basic_stringstream : public basic_iostream&lt;_CharT, _Traits&gt;
+<span class="lineNum"> 476 </span> : {
+<span class="lineNum"> 477 </span> : public:
+<span class="lineNum"> 478 </span> : // Types:
+<span class="lineNum"> 479 </span> : typedef _CharT char_type;
+<span class="lineNum"> 480 </span> : typedef _Traits traits_type;
+<span class="lineNum"> 481 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 482 </span> : // 251. basic_stringbuf missing allocator_type
+<span class="lineNum"> 483 </span> : typedef _Alloc allocator_type;
+<span class="lineNum"> 484 </span> : typedef typename traits_type::int_type int_type;
+<span class="lineNum"> 485 </span> : typedef typename traits_type::pos_type pos_type;
+<span class="lineNum"> 486 </span> : typedef typename traits_type::off_type off_type;
+<span class="lineNum"> 487 </span> :
+<span class="lineNum"> 488 </span> : // Non-standard Types:
+<span class="lineNum"> 489 </span> : typedef basic_string&lt;_CharT, _Traits, _Alloc&gt; __string_type;
+<span class="lineNum"> 490 </span> : typedef basic_stringbuf&lt;_CharT, _Traits, _Alloc&gt; __stringbuf_type;
+<span class="lineNum"> 491 </span> : typedef basic_iostream&lt;char_type, traits_type&gt; __iostream_type;
+<span class="lineNum"> 492 </span> :
+<span class="lineNum"> 493 </span> : private:
+<span class="lineNum"> 494 </span> : __stringbuf_type _M_stringbuf;
+<span class="lineNum"> 495 </span> :
+<span class="lineNum"> 496 </span> : public:
+<span class="lineNum"> 497 </span> : // Constructors/destructors
+<span class="lineNum"> 498 </span> : /**
+<span class="lineNum"> 499 </span> : * @brief Default constructor starts with an empty string buffer.
+<span class="lineNum"> 500 </span> : * @param mode Whether the buffer can read, or write, or both.
+<span class="lineNum"> 501 </span> : *
+<span class="lineNum"> 502 </span> : * Initializes @c sb using @c mode, and passes @c &amp;sb to the base
+<span class="lineNum"> 503 </span> : * class initializer. Does not allocate any buffer.
+<span class="lineNum"> 504 </span> : *
+<span class="lineNum"> 505 </span> : * That's a lie. We initialize the base class with NULL, because the
+<span class="lineNum"> 506 </span> : * string class does its own memory management.
+<span class="lineNum"> 507 </span> : */
+<span class="lineNum"> 508 </span> : explicit
+<span class="lineNum"> 509 </span><span class="lineNoCov"> 0 : basic_stringstream(ios_base::openmode __m = ios_base::out | ios_base::in)</span>
+<span class="lineNum"> 510 </span><span class="lineNoCov"> 0 : : __iostream_type(), _M_stringbuf(__m)</span>
+<span class="lineNum"> 511 </span><span class="lineNoCov"> 0 : { this-&gt;init(&amp;_M_stringbuf); }</span>
+<span class="lineNum"> 512 </span> :
+<span class="lineNum"> 513 </span> : /**
+<span class="lineNum"> 514 </span> : * @brief Starts with an existing string buffer.
+<span class="lineNum"> 515 </span> : * @param str A string to copy as a starting buffer.
+<span class="lineNum"> 516 </span> : * @param mode Whether the buffer can read, or write, or both.
+<span class="lineNum"> 517 </span> : *
+<span class="lineNum"> 518 </span> : * Initializes @c sb using @a str and @c mode, and passes @c &amp;sb
+<span class="lineNum"> 519 </span> : * to the base class initializer.
+<span class="lineNum"> 520 </span> : *
+<span class="lineNum"> 521 </span> : * That's a lie. We initialize the base class with NULL, because the
+<span class="lineNum"> 522 </span> : * string class does its own memory management.
+<span class="lineNum"> 523 </span> : */
+<span class="lineNum"> 524 </span> : explicit
+<span class="lineNum"> 525 </span> : basic_stringstream(const __string_type&amp; __str,
+<span class="lineNum"> 526 </span><span class="lineNoCov"> 0 : ios_base::openmode __m = ios_base::out | ios_base::in)</span>
+<span class="lineNum"> 527 </span><span class="lineNoCov"> 0 : : __iostream_type(), _M_stringbuf(__str, __m)</span>
+<span class="lineNum"> 528 </span><span class="lineNoCov"> 0 : { this-&gt;init(&amp;_M_stringbuf); }</span>
+<span class="lineNum"> 529 </span> :
+<span class="lineNum"> 530 </span> : /**
+<span class="lineNum"> 531 </span> : * @brief The destructor does nothing.
+<span class="lineNum"> 532 </span> : *
+<span class="lineNum"> 533 </span> : * The buffer is deallocated by the stringbuf object, not the
+<span class="lineNum"> 534 </span> : * formatting stream.
+<span class="lineNum"> 535 </span> : */
+<span class="lineNum"> 536 </span><span class="lineNoCov"> 0 : ~basic_stringstream()</span>
+<span class="lineNum"> 537 </span><span class="lineNoCov"> 0 : { }</span>
+<span class="lineNum"> 538 </span> :
+<span class="lineNum"> 539 </span> : // Members:
+<span class="lineNum"> 540 </span> : /**
+<span class="lineNum"> 541 </span> : * @brief Accessing the underlying buffer.
+<span class="lineNum"> 542 </span> : * @return The current basic_stringbuf buffer.
+<span class="lineNum"> 543 </span> : *
+<span class="lineNum"> 544 </span> : * This hides both signatures of std::basic_ios::rdbuf().
+<span class="lineNum"> 545 </span> : */
+<span class="lineNum"> 546 </span> : __stringbuf_type*
+<span class="lineNum"> 547 </span> : rdbuf() const
+<span class="lineNum"> 548 </span> : { return const_cast&lt;__stringbuf_type*&gt;(&amp;_M_stringbuf); }
+<span class="lineNum"> 549 </span> :
+<span class="lineNum"> 550 </span> : /**
+<span class="lineNum"> 551 </span> : * @brief Copying out the string buffer.
+<span class="lineNum"> 552 </span> : * @return @c rdbuf()-&gt;str()
+<span class="lineNum"> 553 </span> : */
+<span class="lineNum"> 554 </span> : __string_type
+<span class="lineNum"> 555 </span><span class="lineNoCov"> 0 : str() const</span>
+<span class="lineNum"> 556 </span><span class="lineNoCov"> 0 : { return _M_stringbuf.str(); }</span>
+<span class="lineNum"> 557 </span> :
+<span class="lineNum"> 558 </span> : /**
+<span class="lineNum"> 559 </span> : * @brief Setting a new buffer.
+<span class="lineNum"> 560 </span> : * @param s The string to use as a new sequence.
+<span class="lineNum"> 561 </span> : *
+<span class="lineNum"> 562 </span> : * Calls @c rdbuf()-&gt;str(s).
+<span class="lineNum"> 563 </span> : */
+<span class="lineNum"> 564 </span> : void
+<span class="lineNum"> 565 </span> : str(const __string_type&amp; __s)
+<span class="lineNum"> 566 </span> : { _M_stringbuf.str(__s); }
+<span class="lineNum"> 567 </span> : };
+<span class="lineNum"> 568 </span> :
+<span class="lineNum"> 569 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 570 </span> :
+<span class="lineNum"> 571 </span> : #ifndef _GLIBCXX_EXPORT_TEMPLATE
+<span class="lineNum"> 572 </span> : # include &lt;bits/sstream.tcc&gt;
+<span class="lineNum"> 573 </span> : #endif
+<span class="lineNum"> 574 </span> :
+<span class="lineNum"> 575 </span> : #endif /* _GLIBCXX_SSTREAM */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/stdexcept.gcov.html b/rep/usr/include/c++/4.3/stdexcept.gcov.html
new file mode 100644
index 0000000..b64ecdf
--- /dev/null
+++ b/rep/usr/include/c++/4.3/stdexcept.gcov.html
@@ -0,0 +1,215 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/stdexcept</title>
+ <link rel="stylesheet" type="text/css" href="../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3</a> - stdexcept</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Standard exception classes -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 2001, 2002, 2005, 2007 Free Software Foundation, Inc.
+<span class="lineNum"> 4 </span> : //
+<span class="lineNum"> 5 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 6 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 7 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 8 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 9 </span> : // any later version.
+<span class="lineNum"> 10 </span> :
+<span class="lineNum"> 11 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 12 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 13 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 14 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 15 </span> :
+<span class="lineNum"> 16 </span> : // You should have received a copy of the GNU General Public License
+<span class="lineNum"> 17 </span> : // along with this library; see the file COPYING. If not, write to
+<span class="lineNum"> 18 </span> : // the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+<span class="lineNum"> 19 </span> : // Boston, MA 02110-1301, USA.
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 22 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 23 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 24 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 25 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 26 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 27 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 28 </span> : // the GNU General Public License.
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : /** @file stdexcept
+<span class="lineNum"> 31 </span> : * This is a Standard C++ Library header.
+<span class="lineNum"> 32 </span> : */
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span> : //
+<span class="lineNum"> 35 </span> : // ISO C++ 19.1 Exception classes
+<span class="lineNum"> 36 </span> : //
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : #ifndef _GLIBCXX_STDEXCEPT
+<span class="lineNum"> 39 </span> : #define _GLIBCXX_STDEXCEPT 1
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : #pragma GCC system_header
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : #include &lt;exception&gt;
+<span class="lineNum"> 44 </span> : #include &lt;string&gt;
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 47 </span> :
+<span class="lineNum"> 48 </span> : /** Logic errors represent problems in the internal logic of a program;
+<span class="lineNum"> 49 </span> : * in theory, these are preventable, and even detectable before the
+<span class="lineNum"> 50 </span> : * program runs (e.g., violations of class invariants).
+<span class="lineNum"> 51 </span> : * @brief One of two subclasses of exception.
+<span class="lineNum"> 52 </span> : */
+<span class="lineNum"> 53 </span> : class logic_error : public exception
+<span class="lineNum"> 54 </span> : {
+<span class="lineNum"> 55 </span> : string _M_msg;
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : public:
+<span class="lineNum"> 58 </span> : /** Takes a character string describing the error. */
+<span class="lineNum"> 59 </span> : explicit
+<span class="lineNum"> 60 </span> : logic_error(const string&amp; __arg);
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : virtual
+<span class="lineNum"> 63 </span> : ~logic_error() throw();
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : /** Returns a C-style character string describing the general cause of
+<span class="lineNum"> 66 </span> : * the current error (the same string passed to the ctor). */
+<span class="lineNum"> 67 </span> : virtual const char*
+<span class="lineNum"> 68 </span> : what() const throw();
+<span class="lineNum"> 69 </span> : };
+<span class="lineNum"> 70 </span> :
+<span class="lineNum"> 71 </span> : /** Thrown by the library, or by you, to report domain errors (domain in
+<span class="lineNum"> 72 </span> : * the mathematical sense). */
+<span class="lineNum"> 73 </span> : class domain_error : public logic_error
+<span class="lineNum"> 74 </span> : {
+<span class="lineNum"> 75 </span> : public:
+<span class="lineNum"> 76 </span> : explicit domain_error(const string&amp; __arg);
+<span class="lineNum"> 77 </span> : };
+<span class="lineNum"> 78 </span> :
+<span class="lineNum"> 79 </span> : /** Thrown to report invalid arguments to functions. */
+<span class="lineNum"> 80 </span> : class invalid_argument : public logic_error
+<span class="lineNum"> 81 </span> : {
+<span class="lineNum"> 82 </span> : public:
+<span class="lineNum"> 83 </span> : explicit invalid_argument(const string&amp; __arg);
+<span class="lineNum"> 84 </span> : };
+<span class="lineNum"> 85 </span> :
+<span class="lineNum"> 86 </span> : /** Thrown when an object is constructed that would exceed its maximum
+<span class="lineNum"> 87 </span> : * permitted size (e.g., a basic_string instance). */
+<span class="lineNum"> 88 </span> : class length_error : public logic_error
+<span class="lineNum"> 89 </span> : {
+<span class="lineNum"> 90 </span> : public:
+<span class="lineNum"> 91 </span> : explicit length_error(const string&amp; __arg);
+<span class="lineNum"> 92 </span> : };
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span> : /** This represents an argument whose value is not within the expected
+<span class="lineNum"> 95 </span> : * range (e.g., boundary checks in basic_string). */
+<span class="lineNum"> 96 </span> : class out_of_range : public logic_error
+<span class="lineNum"> 97 </span><span class="lineCov"> 1 : {</span>
+<span class="lineNum"> 98 </span> : public:
+<span class="lineNum"> 99 </span> : explicit out_of_range(const string&amp; __arg);
+<span class="lineNum"> 100 </span> : };
+<span class="lineNum"> 101 </span> :
+<span class="lineNum"> 102 </span> : /** Runtime errors represent problems outside the scope of a program;
+<span class="lineNum"> 103 </span> : * they cannot be easily predicted and can generally only be caught as
+<span class="lineNum"> 104 </span> : * the program executes.
+<span class="lineNum"> 105 </span> : * @brief One of two subclasses of exception.
+<span class="lineNum"> 106 </span> : */
+<span class="lineNum"> 107 </span> : class runtime_error : public exception
+<span class="lineNum"> 108 </span> : {
+<span class="lineNum"> 109 </span> : string _M_msg;
+<span class="lineNum"> 110 </span> :
+<span class="lineNum"> 111 </span> : public:
+<span class="lineNum"> 112 </span> : /** Takes a character string describing the error. */
+<span class="lineNum"> 113 </span> : explicit
+<span class="lineNum"> 114 </span> : runtime_error(const string&amp; __arg);
+<span class="lineNum"> 115 </span> :
+<span class="lineNum"> 116 </span> : virtual
+<span class="lineNum"> 117 </span> : ~runtime_error() throw();
+<span class="lineNum"> 118 </span> :
+<span class="lineNum"> 119 </span> : /** Returns a C-style character string describing the general cause of
+<span class="lineNum"> 120 </span> : * the current error (the same string passed to the ctor). */
+<span class="lineNum"> 121 </span> : virtual const char*
+<span class="lineNum"> 122 </span> : what() const throw();
+<span class="lineNum"> 123 </span> : };
+<span class="lineNum"> 124 </span> :
+<span class="lineNum"> 125 </span> : /** Thrown to indicate range errors in internal computations. */
+<span class="lineNum"> 126 </span> : class range_error : public runtime_error
+<span class="lineNum"> 127 </span> : {
+<span class="lineNum"> 128 </span> : public:
+<span class="lineNum"> 129 </span> : explicit range_error(const string&amp; __arg);
+<span class="lineNum"> 130 </span> : };
+<span class="lineNum"> 131 </span> :
+<span class="lineNum"> 132 </span> : /** Thrown to indicate arithmetic overflow. */
+<span class="lineNum"> 133 </span> : class overflow_error : public runtime_error
+<span class="lineNum"> 134 </span> : {
+<span class="lineNum"> 135 </span> : public:
+<span class="lineNum"> 136 </span> : explicit overflow_error(const string&amp; __arg);
+<span class="lineNum"> 137 </span> : };
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> : /** Thrown to indicate arithmetic underflow. */
+<span class="lineNum"> 140 </span> : class underflow_error : public runtime_error
+<span class="lineNum"> 141 </span> : {
+<span class="lineNum"> 142 </span> : public:
+<span class="lineNum"> 143 </span> : explicit underflow_error(const string&amp; __arg);
+<span class="lineNum"> 144 </span> : };
+<span class="lineNum"> 145 </span> :
+<span class="lineNum"> 146 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 147 </span> :
+<span class="lineNum"> 148 </span> : #endif /* _GLIBCXX_STDEXCEPT */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/streambuf.gcov.html b/rep/usr/include/c++/4.3/streambuf.gcov.html
new file mode 100644
index 0000000..f3d6dee
--- /dev/null
+++ b/rep/usr/include/c++/4.3/streambuf.gcov.html
@@ -0,0 +1,871 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/streambuf</title>
+ <link rel="stylesheet" type="text/css" href="../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3</a> - streambuf</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">36</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">0.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">0</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // Stream buffer classes -*- C++ -*-
+<span class="lineNum"> 2 </span> :
+<span class="lineNum"> 3 </span> : // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+<span class="lineNum"> 4 </span> : // 2006, 2007, 2008 Free Software Foundation, Inc.
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of the GNU ISO C++ Library. This library is free
+<span class="lineNum"> 7 </span> : // software; you can redistribute it and/or modify it under the
+<span class="lineNum"> 8 </span> : // terms of the GNU General Public License as published by the
+<span class="lineNum"> 9 </span> : // Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 10 </span> : // any later version.
+<span class="lineNum"> 11 </span> :
+<span class="lineNum"> 12 </span> : // This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 16 </span> :
+<span class="lineNum"> 17 </span> : // You should have received a copy of the GNU General Public License
+<span class="lineNum"> 18 </span> : // along with this library; see the file COPYING. If not, write to
+<span class="lineNum"> 19 </span> : // the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+<span class="lineNum"> 20 </span> : // Boston, MA 02110-1301, USA.
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 23 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 24 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 25 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 26 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 27 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 28 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 29 </span> : // the GNU General Public License.
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /** @file streambuf
+<span class="lineNum"> 32 </span> : * This is a Standard C++ Library header.
+<span class="lineNum"> 33 </span> : */
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : //
+<span class="lineNum"> 36 </span> : // ISO C++ 14882: 27.5 Stream buffers
+<span class="lineNum"> 37 </span> : //
+<span class="lineNum"> 38 </span> :
+<span class="lineNum"> 39 </span> : #ifndef _GLIBXX_STREAMBUF
+<span class="lineNum"> 40 </span> : #define _GLIBXX_STREAMBUF 1
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span> : #pragma GCC system_header
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span> : #include &lt;bits/c++config.h&gt;
+<span class="lineNum"> 45 </span> : #include &lt;iosfwd&gt;
+<span class="lineNum"> 46 </span> : #include &lt;bits/localefwd.h&gt;
+<span class="lineNum"> 47 </span> : #include &lt;bits/ios_base.h&gt;
+<span class="lineNum"> 48 </span> : #include &lt;bits/cpp_type_traits.h&gt;
+<span class="lineNum"> 49 </span> : #include &lt;ext/type_traits.h&gt;
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> : _GLIBCXX_BEGIN_NAMESPACE(std)
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 54 </span> : streamsize
+<span class="lineNum"> 55 </span> : __copy_streambufs_eof(basic_streambuf&lt;_CharT, _Traits&gt;*,
+<span class="lineNum"> 56 </span> : basic_streambuf&lt;_CharT, _Traits&gt;*, bool&amp;);
+<span class="lineNum"> 57 </span> :
+<span class="lineNum"> 58 </span> : /**
+<span class="lineNum"> 59 </span> : * @brief The actual work of input and output (interface).
+<span class="lineNum"> 60 </span> : *
+<span class="lineNum"> 61 </span> : * This is a base class. Derived stream buffers each control a
+<span class="lineNum"> 62 </span> : * pair of character sequences: one for input, and one for output.
+<span class="lineNum"> 63 </span> : *
+<span class="lineNum"> 64 </span> : * Section [27.5.1] of the standard describes the requirements and
+<span class="lineNum"> 65 </span> : * behavior of stream buffer classes. That section (three paragraphs)
+<span class="lineNum"> 66 </span> : * is reproduced here, for simplicity and accuracy.
+<span class="lineNum"> 67 </span> : *
+<span class="lineNum"> 68 </span> : * -# Stream buffers can impose various constraints on the sequences
+<span class="lineNum"> 69 </span> : * they control. Some constraints are:
+<span class="lineNum"> 70 </span> : * - The controlled input sequence can be not readable.
+<span class="lineNum"> 71 </span> : * - The controlled output sequence can be not writable.
+<span class="lineNum"> 72 </span> : * - The controlled sequences can be associated with the contents of
+<span class="lineNum"> 73 </span> : * other representations for character sequences, such as external
+<span class="lineNum"> 74 </span> : * files.
+<span class="lineNum"> 75 </span> : * - The controlled sequences can support operations @e directly to or
+<span class="lineNum"> 76 </span> : * from associated sequences.
+<span class="lineNum"> 77 </span> : * - The controlled sequences can impose limitations on how the
+<span class="lineNum"> 78 </span> : * program can read characters from a sequence, write characters to
+<span class="lineNum"> 79 </span> : * a sequence, put characters back into an input sequence, or alter
+<span class="lineNum"> 80 </span> : * the stream position.
+<span class="lineNum"> 81 </span> : * .
+<span class="lineNum"> 82 </span> : * -# Each sequence is characterized by three pointers which, if non-null,
+<span class="lineNum"> 83 </span> : * all point into the same @c charT array object. The array object
+<span class="lineNum"> 84 </span> : * represents, at any moment, a (sub)sequence of characters from the
+<span class="lineNum"> 85 </span> : * sequence. Operations performed on a sequence alter the values
+<span class="lineNum"> 86 </span> : * stored in these pointers, perform reads and writes directly to or
+<span class="lineNum"> 87 </span> : * from associated sequences, and alter &quot;the stream position&quot; and
+<span class="lineNum"> 88 </span> : * conversion state as needed to maintain this subsequence relationship.
+<span class="lineNum"> 89 </span> : * The three pointers are:
+<span class="lineNum"> 90 </span> : * - the &lt;em&gt;beginning pointer&lt;/em&gt;, or lowest element address in the
+<span class="lineNum"> 91 </span> : * array (called @e xbeg here);
+<span class="lineNum"> 92 </span> : * - the &lt;em&gt;next pointer&lt;/em&gt;, or next element address that is a
+<span class="lineNum"> 93 </span> : * current candidate for reading or writing (called @e xnext here);
+<span class="lineNum"> 94 </span> : * - the &lt;em&gt;end pointer&lt;/em&gt;, or first element address beyond the
+<span class="lineNum"> 95 </span> : * end of the array (called @e xend here).
+<span class="lineNum"> 96 </span> : * .
+<span class="lineNum"> 97 </span> : * -# The following semantic constraints shall always apply for any set
+<span class="lineNum"> 98 </span> : * of three pointers for a sequence, using the pointer names given
+<span class="lineNum"> 99 </span> : * immediately above:
+<span class="lineNum"> 100 </span> : * - If @e xnext is not a null pointer, then @e xbeg and @e xend shall
+<span class="lineNum"> 101 </span> : * also be non-null pointers into the same @c charT array, as
+<span class="lineNum"> 102 </span> : * described above; otherwise, @e xbeg and @e xend shall also be null.
+<span class="lineNum"> 103 </span> : * - If @e xnext is not a null pointer and @e xnext &lt; @e xend for an
+<span class="lineNum"> 104 </span> : * output sequence, then a &lt;em&gt;write position&lt;/em&gt; is available.
+<span class="lineNum"> 105 </span> : * In this case, @e *xnext shall be assignable as the next element
+<span class="lineNum"> 106 </span> : * to write (to put, or to store a character value, into the sequence).
+<span class="lineNum"> 107 </span> : * - If @e xnext is not a null pointer and @e xbeg &lt; @e xnext for an
+<span class="lineNum"> 108 </span> : * input sequence, then a &lt;em&gt;putback position&lt;/em&gt; is available.
+<span class="lineNum"> 109 </span> : * In this case, @e xnext[-1] shall have a defined value and is the
+<span class="lineNum"> 110 </span> : * next (preceding) element to store a character that is put back
+<span class="lineNum"> 111 </span> : * into the input sequence.
+<span class="lineNum"> 112 </span> : * - If @e xnext is not a null pointer and @e xnext&lt; @e xend for an
+<span class="lineNum"> 113 </span> : * input sequence, then a &lt;em&gt;read position&lt;/em&gt; is available.
+<span class="lineNum"> 114 </span> : * In this case, @e *xnext shall have a defined value and is the
+<span class="lineNum"> 115 </span> : * next element to read (to get, or to obtain a character value,
+<span class="lineNum"> 116 </span> : * from the sequence).
+<span class="lineNum"> 117 </span> : */
+<span class="lineNum"> 118 </span> : template&lt;typename _CharT, typename _Traits&gt;
+<span class="lineNum"> 119 </span> : class basic_streambuf
+<span class="lineNum"> 120 </span> : {
+<span class="lineNum"> 121 </span> : public:
+<span class="lineNum"> 122 </span> : //@{
+<span class="lineNum"> 123 </span> : /**
+<span class="lineNum"> 124 </span> : * These are standard types. They permit a standardized way of
+<span class="lineNum"> 125 </span> : * referring to names of (or names dependant on) the template
+<span class="lineNum"> 126 </span> : * parameters, which are specific to the implementation.
+<span class="lineNum"> 127 </span> : */
+<span class="lineNum"> 128 </span> : typedef _CharT char_type;
+<span class="lineNum"> 129 </span> : typedef _Traits traits_type;
+<span class="lineNum"> 130 </span> : typedef typename traits_type::int_type int_type;
+<span class="lineNum"> 131 </span> : typedef typename traits_type::pos_type pos_type;
+<span class="lineNum"> 132 </span> : typedef typename traits_type::off_type off_type;
+<span class="lineNum"> 133 </span> : //@}
+<span class="lineNum"> 134 </span> :
+<span class="lineNum"> 135 </span> : //@{
+<span class="lineNum"> 136 </span> : /// This is a non-standard type.
+<span class="lineNum"> 137 </span> : typedef basic_streambuf&lt;char_type, traits_type&gt; __streambuf_type;
+<span class="lineNum"> 138 </span> : //@}
+<span class="lineNum"> 139 </span> :
+<span class="lineNum"> 140 </span> : friend class basic_ios&lt;char_type, traits_type&gt;;
+<span class="lineNum"> 141 </span> : friend class basic_istream&lt;char_type, traits_type&gt;;
+<span class="lineNum"> 142 </span> : friend class basic_ostream&lt;char_type, traits_type&gt;;
+<span class="lineNum"> 143 </span> : friend class istreambuf_iterator&lt;char_type, traits_type&gt;;
+<span class="lineNum"> 144 </span> : friend class ostreambuf_iterator&lt;char_type, traits_type&gt;;
+<span class="lineNum"> 145 </span> :
+<span class="lineNum"> 146 </span> : friend streamsize
+<span class="lineNum"> 147 </span> : __copy_streambufs_eof&lt;&gt;(__streambuf_type*, __streambuf_type*, bool&amp;);
+<span class="lineNum"> 148 </span> :
+<span class="lineNum"> 149 </span> : template&lt;bool _IsMove, typename _CharT2&gt;
+<span class="lineNum"> 150 </span> : friend typename __gnu_cxx::__enable_if&lt;__is_char&lt;_CharT2&gt;::__value,
+<span class="lineNum"> 151 </span> : _CharT2*&gt;::__type
+<span class="lineNum"> 152 </span> : __copy_move_a2(istreambuf_iterator&lt;_CharT2&gt;,
+<span class="lineNum"> 153 </span> : istreambuf_iterator&lt;_CharT2&gt;, _CharT2*);
+<span class="lineNum"> 154 </span> :
+<span class="lineNum"> 155 </span> : template&lt;typename _CharT2&gt;
+<span class="lineNum"> 156 </span> : friend typename __gnu_cxx::__enable_if&lt;__is_char&lt;_CharT2&gt;::__value,
+<span class="lineNum"> 157 </span> : istreambuf_iterator&lt;_CharT2&gt; &gt;::__type
+<span class="lineNum"> 158 </span> : find(istreambuf_iterator&lt;_CharT2&gt;, istreambuf_iterator&lt;_CharT2&gt;,
+<span class="lineNum"> 159 </span> : const _CharT2&amp;);
+<span class="lineNum"> 160 </span> :
+<span class="lineNum"> 161 </span> : template&lt;typename _CharT2, typename _Traits2&gt;
+<span class="lineNum"> 162 </span> : friend basic_istream&lt;_CharT2, _Traits2&gt;&amp;
+<span class="lineNum"> 163 </span> : operator&gt;&gt;(basic_istream&lt;_CharT2, _Traits2&gt;&amp;, _CharT2*);
+<span class="lineNum"> 164 </span> :
+<span class="lineNum"> 165 </span> : template&lt;typename _CharT2, typename _Traits2, typename _Alloc&gt;
+<span class="lineNum"> 166 </span> : friend basic_istream&lt;_CharT2, _Traits2&gt;&amp;
+<span class="lineNum"> 167 </span> : operator&gt;&gt;(basic_istream&lt;_CharT2, _Traits2&gt;&amp;,
+<span class="lineNum"> 168 </span> : basic_string&lt;_CharT2, _Traits2, _Alloc&gt;&amp;);
+<span class="lineNum"> 169 </span> :
+<span class="lineNum"> 170 </span> : template&lt;typename _CharT2, typename _Traits2, typename _Alloc&gt;
+<span class="lineNum"> 171 </span> : friend basic_istream&lt;_CharT2, _Traits2&gt;&amp;
+<span class="lineNum"> 172 </span> : getline(basic_istream&lt;_CharT2, _Traits2&gt;&amp;,
+<span class="lineNum"> 173 </span> : basic_string&lt;_CharT2, _Traits2, _Alloc&gt;&amp;, _CharT2);
+<span class="lineNum"> 174 </span> :
+<span class="lineNum"> 175 </span> : protected:
+<span class="lineNum"> 176 </span> : //@{
+<span class="lineNum"> 177 </span> : /**
+<span class="lineNum"> 178 </span> : * This is based on _IO_FILE, just reordered to be more consistent,
+<span class="lineNum"> 179 </span> : * and is intended to be the most minimal abstraction for an
+<span class="lineNum"> 180 </span> : * internal buffer.
+<span class="lineNum"> 181 </span> : * - get == input == read
+<span class="lineNum"> 182 </span> : * - put == output == write
+<span class="lineNum"> 183 </span> : */
+<span class="lineNum"> 184 </span> : char_type* _M_in_beg; // Start of get area.
+<span class="lineNum"> 185 </span> : char_type* _M_in_cur; // Current read area.
+<span class="lineNum"> 186 </span> : char_type* _M_in_end; // End of get area.
+<span class="lineNum"> 187 </span> : char_type* _M_out_beg; // Start of put area.
+<span class="lineNum"> 188 </span> : char_type* _M_out_cur; // Current put area.
+<span class="lineNum"> 189 </span> : char_type* _M_out_end; // End of put area.
+<span class="lineNum"> 190 </span> :
+<span class="lineNum"> 191 </span> : /// Current locale setting.
+<span class="lineNum"> 192 </span> : locale _M_buf_locale;
+<span class="lineNum"> 193 </span> :
+<span class="lineNum"> 194 </span> : public:
+<span class="lineNum"> 195 </span> : /// Destructor deallocates no buffer space.
+<span class="lineNum"> 196 </span> : virtual
+<span class="lineNum"> 197 </span><span class="lineNoCov"> 0 : ~basic_streambuf() </span>
+<span class="lineNum"> 198 </span><span class="lineNoCov"> 0 : { }</span>
+<span class="lineNum"> 199 </span> :
+<span class="lineNum"> 200 </span> : // [27.5.2.2.1] locales
+<span class="lineNum"> 201 </span> : /**
+<span class="lineNum"> 202 </span> : * @brief Entry point for imbue().
+<span class="lineNum"> 203 </span> : * @param loc The new locale.
+<span class="lineNum"> 204 </span> : * @return The previous locale.
+<span class="lineNum"> 205 </span> : *
+<span class="lineNum"> 206 </span> : * Calls the derived imbue(loc).
+<span class="lineNum"> 207 </span> : */
+<span class="lineNum"> 208 </span> : locale
+<span class="lineNum"> 209 </span> : pubimbue(const locale &amp;__loc)
+<span class="lineNum"> 210 </span> : {
+<span class="lineNum"> 211 </span> : locale __tmp(this-&gt;getloc());
+<span class="lineNum"> 212 </span> : this-&gt;imbue(__loc);
+<span class="lineNum"> 213 </span> : _M_buf_locale = __loc;
+<span class="lineNum"> 214 </span> : return __tmp;
+<span class="lineNum"> 215 </span> : }
+<span class="lineNum"> 216 </span> :
+<span class="lineNum"> 217 </span> : /**
+<span class="lineNum"> 218 </span> : * @brief Locale access.
+<span class="lineNum"> 219 </span> : * @return The current locale in effect.
+<span class="lineNum"> 220 </span> : *
+<span class="lineNum"> 221 </span> : * If pubimbue(loc) has been called, then the most recent @c loc
+<span class="lineNum"> 222 </span> : * is returned. Otherwise the global locale in effect at the time
+<span class="lineNum"> 223 </span> : * of construction is returned.
+<span class="lineNum"> 224 </span> : */
+<span class="lineNum"> 225 </span> : locale
+<span class="lineNum"> 226 </span> : getloc() const
+<span class="lineNum"> 227 </span> : { return _M_buf_locale; }
+<span class="lineNum"> 228 </span> :
+<span class="lineNum"> 229 </span> : // [27.5.2.2.2] buffer management and positioning
+<span class="lineNum"> 230 </span> : //@{
+<span class="lineNum"> 231 </span> : /**
+<span class="lineNum"> 232 </span> : * @brief Entry points for derived buffer functions.
+<span class="lineNum"> 233 </span> : *
+<span class="lineNum"> 234 </span> : * The public versions of @c pubfoo dispatch to the protected
+<span class="lineNum"> 235 </span> : * derived @c foo member functions, passing the arguments (if any)
+<span class="lineNum"> 236 </span> : * and returning the result unchanged.
+<span class="lineNum"> 237 </span> : */
+<span class="lineNum"> 238 </span> : __streambuf_type*
+<span class="lineNum"> 239 </span> : pubsetbuf(char_type* __s, streamsize __n)
+<span class="lineNum"> 240 </span> : { return this-&gt;setbuf(__s, __n); }
+<span class="lineNum"> 241 </span> :
+<span class="lineNum"> 242 </span> : pos_type
+<span class="lineNum"> 243 </span> : pubseekoff(off_type __off, ios_base::seekdir __way,
+<span class="lineNum"> 244 </span> : ios_base::openmode __mode = ios_base::in | ios_base::out)
+<span class="lineNum"> 245 </span> : { return this-&gt;seekoff(__off, __way, __mode); }
+<span class="lineNum"> 246 </span> :
+<span class="lineNum"> 247 </span> : pos_type
+<span class="lineNum"> 248 </span> : pubseekpos(pos_type __sp,
+<span class="lineNum"> 249 </span> : ios_base::openmode __mode = ios_base::in | ios_base::out)
+<span class="lineNum"> 250 </span> : { return this-&gt;seekpos(__sp, __mode); }
+<span class="lineNum"> 251 </span> :
+<span class="lineNum"> 252 </span> : int
+<span class="lineNum"> 253 </span> : pubsync() { return this-&gt;sync(); }
+<span class="lineNum"> 254 </span> : //@}
+<span class="lineNum"> 255 </span> :
+<span class="lineNum"> 256 </span> : // [27.5.2.2.3] get area
+<span class="lineNum"> 257 </span> : /**
+<span class="lineNum"> 258 </span> : * @brief Looking ahead into the stream.
+<span class="lineNum"> 259 </span> : * @return The number of characters available.
+<span class="lineNum"> 260 </span> : *
+<span class="lineNum"> 261 </span> : * If a read position is available, returns the number of characters
+<span class="lineNum"> 262 </span> : * available for reading before the buffer must be refilled.
+<span class="lineNum"> 263 </span> : * Otherwise returns the derived @c showmanyc().
+<span class="lineNum"> 264 </span> : */
+<span class="lineNum"> 265 </span> : streamsize
+<span class="lineNum"> 266 </span> : in_avail()
+<span class="lineNum"> 267 </span> : {
+<span class="lineNum"> 268 </span> : const streamsize __ret = this-&gt;egptr() - this-&gt;gptr();
+<span class="lineNum"> 269 </span> : return __ret ? __ret : this-&gt;showmanyc();
+<span class="lineNum"> 270 </span> : }
+<span class="lineNum"> 271 </span> :
+<span class="lineNum"> 272 </span> : /**
+<span class="lineNum"> 273 </span> : * @brief Getting the next character.
+<span class="lineNum"> 274 </span> : * @return The next character, or eof.
+<span class="lineNum"> 275 </span> : *
+<span class="lineNum"> 276 </span> : * Calls @c sbumpc(), and if that function returns
+<span class="lineNum"> 277 </span> : * @c traits::eof(), so does this function. Otherwise, @c sgetc().
+<span class="lineNum"> 278 </span> : */
+<span class="lineNum"> 279 </span> : int_type
+<span class="lineNum"> 280 </span> : snextc()
+<span class="lineNum"> 281 </span> : {
+<span class="lineNum"> 282 </span> : int_type __ret = traits_type::eof();
+<span class="lineNum"> 283 </span> : if (__builtin_expect(!traits_type::eq_int_type(this-&gt;sbumpc(),
+<span class="lineNum"> 284 </span> : __ret), true))
+<span class="lineNum"> 285 </span> : __ret = this-&gt;sgetc();
+<span class="lineNum"> 286 </span> : return __ret;
+<span class="lineNum"> 287 </span> : }
+<span class="lineNum"> 288 </span> :
+<span class="lineNum"> 289 </span> : /**
+<span class="lineNum"> 290 </span> : * @brief Getting the next character.
+<span class="lineNum"> 291 </span> : * @return The next character, or eof.
+<span class="lineNum"> 292 </span> : *
+<span class="lineNum"> 293 </span> : * If the input read position is available, returns that character
+<span class="lineNum"> 294 </span> : * and increments the read pointer, otherwise calls and returns
+<span class="lineNum"> 295 </span> : * @c uflow().
+<span class="lineNum"> 296 </span> : */
+<span class="lineNum"> 297 </span> : int_type
+<span class="lineNum"> 298 </span> : sbumpc()
+<span class="lineNum"> 299 </span> : {
+<span class="lineNum"> 300 </span> : int_type __ret;
+<span class="lineNum"> 301 </span> : if (__builtin_expect(this-&gt;gptr() &lt; this-&gt;egptr(), true))
+<span class="lineNum"> 302 </span> : {
+<span class="lineNum"> 303 </span> : __ret = traits_type::to_int_type(*this-&gt;gptr());
+<span class="lineNum"> 304 </span> : this-&gt;gbump(1);
+<span class="lineNum"> 305 </span> : }
+<span class="lineNum"> 306 </span> : else
+<span class="lineNum"> 307 </span> : __ret = this-&gt;uflow();
+<span class="lineNum"> 308 </span> : return __ret;
+<span class="lineNum"> 309 </span> : }
+<span class="lineNum"> 310 </span> :
+<span class="lineNum"> 311 </span> : /**
+<span class="lineNum"> 312 </span> : * @brief Getting the next character.
+<span class="lineNum"> 313 </span> : * @return The next character, or eof.
+<span class="lineNum"> 314 </span> : *
+<span class="lineNum"> 315 </span> : * If the input read position is available, returns that character,
+<span class="lineNum"> 316 </span> : * otherwise calls and returns @c underflow(). Does not move the
+<span class="lineNum"> 317 </span> : * read position after fetching the character.
+<span class="lineNum"> 318 </span> : */
+<span class="lineNum"> 319 </span> : int_type
+<span class="lineNum"> 320 </span> : sgetc()
+<span class="lineNum"> 321 </span> : {
+<span class="lineNum"> 322 </span> : int_type __ret;
+<span class="lineNum"> 323 </span> : if (__builtin_expect(this-&gt;gptr() &lt; this-&gt;egptr(), true))
+<span class="lineNum"> 324 </span> : __ret = traits_type::to_int_type(*this-&gt;gptr());
+<span class="lineNum"> 325 </span> : else
+<span class="lineNum"> 326 </span> : __ret = this-&gt;underflow();
+<span class="lineNum"> 327 </span> : return __ret;
+<span class="lineNum"> 328 </span> : }
+<span class="lineNum"> 329 </span> :
+<span class="lineNum"> 330 </span> : /**
+<span class="lineNum"> 331 </span> : * @brief Entry point for xsgetn.
+<span class="lineNum"> 332 </span> : * @param s A buffer area.
+<span class="lineNum"> 333 </span> : * @param n A count.
+<span class="lineNum"> 334 </span> : *
+<span class="lineNum"> 335 </span> : * Returns xsgetn(s,n). The effect is to fill @a s[0] through
+<span class="lineNum"> 336 </span> : * @a s[n-1] with characters from the input sequence, if possible.
+<span class="lineNum"> 337 </span> : */
+<span class="lineNum"> 338 </span> : streamsize
+<span class="lineNum"> 339 </span> : sgetn(char_type* __s, streamsize __n)
+<span class="lineNum"> 340 </span> : { return this-&gt;xsgetn(__s, __n); }
+<span class="lineNum"> 341 </span> :
+<span class="lineNum"> 342 </span> : // [27.5.2.2.4] putback
+<span class="lineNum"> 343 </span> : /**
+<span class="lineNum"> 344 </span> : * @brief Pushing characters back into the input stream.
+<span class="lineNum"> 345 </span> : * @param c The character to push back.
+<span class="lineNum"> 346 </span> : * @return The previous character, if possible.
+<span class="lineNum"> 347 </span> : *
+<span class="lineNum"> 348 </span> : * Similar to sungetc(), but @a c is pushed onto the stream instead
+<span class="lineNum"> 349 </span> : * of &quot;the previous character&quot;. If successful, the next character
+<span class="lineNum"> 350 </span> : * fetched from the input stream will be @a c.
+<span class="lineNum"> 351 </span> : */
+<span class="lineNum"> 352 </span> : int_type
+<span class="lineNum"> 353 </span> : sputbackc(char_type __c)
+<span class="lineNum"> 354 </span> : {
+<span class="lineNum"> 355 </span> : int_type __ret;
+<span class="lineNum"> 356 </span> : const bool __testpos = this-&gt;eback() &lt; this-&gt;gptr();
+<span class="lineNum"> 357 </span> : if (__builtin_expect(!__testpos ||
+<span class="lineNum"> 358 </span> : !traits_type::eq(__c, this-&gt;gptr()[-1]), false))
+<span class="lineNum"> 359 </span> : __ret = this-&gt;pbackfail(traits_type::to_int_type(__c));
+<span class="lineNum"> 360 </span> : else
+<span class="lineNum"> 361 </span> : {
+<span class="lineNum"> 362 </span> : this-&gt;gbump(-1);
+<span class="lineNum"> 363 </span> : __ret = traits_type::to_int_type(*this-&gt;gptr());
+<span class="lineNum"> 364 </span> : }
+<span class="lineNum"> 365 </span> : return __ret;
+<span class="lineNum"> 366 </span> : }
+<span class="lineNum"> 367 </span> :
+<span class="lineNum"> 368 </span> : /**
+<span class="lineNum"> 369 </span> : * @brief Moving backwards in the input stream.
+<span class="lineNum"> 370 </span> : * @return The previous character, if possible.
+<span class="lineNum"> 371 </span> : *
+<span class="lineNum"> 372 </span> : * If a putback position is available, this function decrements the
+<span class="lineNum"> 373 </span> : * input pointer and returns that character. Otherwise, calls and
+<span class="lineNum"> 374 </span> : * returns pbackfail(). The effect is to &quot;unget&quot; the last character
+<span class="lineNum"> 375 </span> : * &quot;gotten&quot;.
+<span class="lineNum"> 376 </span> : */
+<span class="lineNum"> 377 </span> : int_type
+<span class="lineNum"> 378 </span> : sungetc()
+<span class="lineNum"> 379 </span> : {
+<span class="lineNum"> 380 </span> : int_type __ret;
+<span class="lineNum"> 381 </span> : if (__builtin_expect(this-&gt;eback() &lt; this-&gt;gptr(), true))
+<span class="lineNum"> 382 </span> : {
+<span class="lineNum"> 383 </span> : this-&gt;gbump(-1);
+<span class="lineNum"> 384 </span> : __ret = traits_type::to_int_type(*this-&gt;gptr());
+<span class="lineNum"> 385 </span> : }
+<span class="lineNum"> 386 </span> : else
+<span class="lineNum"> 387 </span> : __ret = this-&gt;pbackfail();
+<span class="lineNum"> 388 </span> : return __ret;
+<span class="lineNum"> 389 </span> : }
+<span class="lineNum"> 390 </span> :
+<span class="lineNum"> 391 </span> : // [27.5.2.2.5] put area
+<span class="lineNum"> 392 </span> : /**
+<span class="lineNum"> 393 </span> : * @brief Entry point for all single-character output functions.
+<span class="lineNum"> 394 </span> : * @param c A character to output.
+<span class="lineNum"> 395 </span> : * @return @a c, if possible.
+<span class="lineNum"> 396 </span> : *
+<span class="lineNum"> 397 </span> : * One of two public output functions.
+<span class="lineNum"> 398 </span> : *
+<span class="lineNum"> 399 </span> : * If a write position is available for the output sequence (i.e.,
+<span class="lineNum"> 400 </span> : * the buffer is not full), stores @a c in that position, increments
+<span class="lineNum"> 401 </span> : * the position, and returns @c traits::to_int_type(c). If a write
+<span class="lineNum"> 402 </span> : * position is not available, returns @c overflow(c).
+<span class="lineNum"> 403 </span> : */
+<span class="lineNum"> 404 </span> : int_type
+<span class="lineNum"> 405 </span> : sputc(char_type __c)
+<span class="lineNum"> 406 </span> : {
+<span class="lineNum"> 407 </span> : int_type __ret;
+<span class="lineNum"> 408 </span> : if (__builtin_expect(this-&gt;pptr() &lt; this-&gt;epptr(), true))
+<span class="lineNum"> 409 </span> : {
+<span class="lineNum"> 410 </span> : *this-&gt;pptr() = __c;
+<span class="lineNum"> 411 </span> : this-&gt;pbump(1);
+<span class="lineNum"> 412 </span> : __ret = traits_type::to_int_type(__c);
+<span class="lineNum"> 413 </span> : }
+<span class="lineNum"> 414 </span> : else
+<span class="lineNum"> 415 </span> : __ret = this-&gt;overflow(traits_type::to_int_type(__c));
+<span class="lineNum"> 416 </span> : return __ret;
+<span class="lineNum"> 417 </span> : }
+<span class="lineNum"> 418 </span> :
+<span class="lineNum"> 419 </span> : /**
+<span class="lineNum"> 420 </span> : * @brief Entry point for all single-character output functions.
+<span class="lineNum"> 421 </span> : * @param s A buffer read area.
+<span class="lineNum"> 422 </span> : * @param n A count.
+<span class="lineNum"> 423 </span> : *
+<span class="lineNum"> 424 </span> : * One of two public output functions.
+<span class="lineNum"> 425 </span> : *
+<span class="lineNum"> 426 </span> : *
+<span class="lineNum"> 427 </span> : * Returns xsputn(s,n). The effect is to write @a s[0] through
+<span class="lineNum"> 428 </span> : * @a s[n-1] to the output sequence, if possible.
+<span class="lineNum"> 429 </span> : */
+<span class="lineNum"> 430 </span> : streamsize
+<span class="lineNum"> 431 </span> : sputn(const char_type* __s, streamsize __n)
+<span class="lineNum"> 432 </span> : { return this-&gt;xsputn(__s, __n); }
+<span class="lineNum"> 433 </span> :
+<span class="lineNum"> 434 </span> : protected:
+<span class="lineNum"> 435 </span> : /**
+<span class="lineNum"> 436 </span> : * @brief Base constructor.
+<span class="lineNum"> 437 </span> : *
+<span class="lineNum"> 438 </span> : * Only called from derived constructors, and sets up all the
+<span class="lineNum"> 439 </span> : * buffer data to zero, including the pointers described in the
+<span class="lineNum"> 440 </span> : * basic_streambuf class description. Note that, as a result,
+<span class="lineNum"> 441 </span> : * - the class starts with no read nor write positions available,
+<span class="lineNum"> 442 </span> : * - this is not an error
+<span class="lineNum"> 443 </span> : */
+<span class="lineNum"> 444 </span><span class="lineNoCov"> 0 : basic_streambuf()</span>
+<span class="lineNum"> 445 </span> : : _M_in_beg(0), _M_in_cur(0), _M_in_end(0),
+<span class="lineNum"> 446 </span> : _M_out_beg(0), _M_out_cur(0), _M_out_end(0),
+<span class="lineNum"> 447 </span><span class="lineNoCov"> 0 : _M_buf_locale(locale()) </span>
+<span class="lineNum"> 448 </span><span class="lineNoCov"> 0 : { }</span>
+<span class="lineNum"> 449 </span> :
+<span class="lineNum"> 450 </span> : // [27.5.2.3.1] get area access
+<span class="lineNum"> 451 </span> : //@{
+<span class="lineNum"> 452 </span> : /**
+<span class="lineNum"> 453 </span> : * @brief Access to the get area.
+<span class="lineNum"> 454 </span> : *
+<span class="lineNum"> 455 </span> : * These functions are only available to other protected functions,
+<span class="lineNum"> 456 </span> : * including derived classes.
+<span class="lineNum"> 457 </span> : *
+<span class="lineNum"> 458 </span> : * - eback() returns the beginning pointer for the input sequence
+<span class="lineNum"> 459 </span> : * - gptr() returns the next pointer for the input sequence
+<span class="lineNum"> 460 </span> : * - egptr() returns the end pointer for the input sequence
+<span class="lineNum"> 461 </span> : */
+<span class="lineNum"> 462 </span> : char_type*
+<span class="lineNum"> 463 </span> : eback() const { return _M_in_beg; }
+<span class="lineNum"> 464 </span> :
+<span class="lineNum"> 465 </span> : char_type*
+<span class="lineNum"> 466 </span><span class="lineNoCov"> 0 : gptr() const { return _M_in_cur; }</span>
+<span class="lineNum"> 467 </span> :
+<span class="lineNum"> 468 </span> : char_type*
+<span class="lineNum"> 469 </span><span class="lineNoCov"> 0 : egptr() const { return _M_in_end; }</span>
+<span class="lineNum"> 470 </span> : //@}
+<span class="lineNum"> 471 </span> :
+<span class="lineNum"> 472 </span> : /**
+<span class="lineNum"> 473 </span> : * @brief Moving the read position.
+<span class="lineNum"> 474 </span> : * @param n The delta by which to move.
+<span class="lineNum"> 475 </span> : *
+<span class="lineNum"> 476 </span> : * This just advances the read position without returning any data.
+<span class="lineNum"> 477 </span> : */
+<span class="lineNum"> 478 </span> : void
+<span class="lineNum"> 479 </span><span class="lineNoCov"> 0 : gbump(int __n) { _M_in_cur += __n; }</span>
+<span class="lineNum"> 480 </span> :
+<span class="lineNum"> 481 </span> : /**
+<span class="lineNum"> 482 </span> : * @brief Setting the three read area pointers.
+<span class="lineNum"> 483 </span> : * @param gbeg A pointer.
+<span class="lineNum"> 484 </span> : * @param gnext A pointer.
+<span class="lineNum"> 485 </span> : * @param gend A pointer.
+<span class="lineNum"> 486 </span> : * @post @a gbeg == @c eback(), @a gnext == @c gptr(), and
+<span class="lineNum"> 487 </span> : * @a gend == @c egptr()
+<span class="lineNum"> 488 </span> : */
+<span class="lineNum"> 489 </span> : void
+<span class="lineNum"> 490 </span> : setg(char_type* __gbeg, char_type* __gnext, char_type* __gend)
+<span class="lineNum"> 491 </span> : {
+<span class="lineNum"> 492 </span> : _M_in_beg = __gbeg;
+<span class="lineNum"> 493 </span> : _M_in_cur = __gnext;
+<span class="lineNum"> 494 </span> : _M_in_end = __gend;
+<span class="lineNum"> 495 </span> : }
+<span class="lineNum"> 496 </span> :
+<span class="lineNum"> 497 </span> : // [27.5.2.3.2] put area access
+<span class="lineNum"> 498 </span> : //@{
+<span class="lineNum"> 499 </span> : /**
+<span class="lineNum"> 500 </span> : * @brief Access to the put area.
+<span class="lineNum"> 501 </span> : *
+<span class="lineNum"> 502 </span> : * These functions are only available to other protected functions,
+<span class="lineNum"> 503 </span> : * including derived classes.
+<span class="lineNum"> 504 </span> : *
+<span class="lineNum"> 505 </span> : * - pbase() returns the beginning pointer for the output sequence
+<span class="lineNum"> 506 </span> : * - pptr() returns the next pointer for the output sequence
+<span class="lineNum"> 507 </span> : * - epptr() returns the end pointer for the output sequence
+<span class="lineNum"> 508 </span> : */
+<span class="lineNum"> 509 </span> : char_type*
+<span class="lineNum"> 510 </span><span class="lineNoCov"> 0 : pbase() const { return _M_out_beg; }</span>
+<span class="lineNum"> 511 </span> :
+<span class="lineNum"> 512 </span> : char_type*
+<span class="lineNum"> 513 </span><span class="lineNoCov"> 0 : pptr() const { return _M_out_cur; }</span>
+<span class="lineNum"> 514 </span> :
+<span class="lineNum"> 515 </span> : char_type*
+<span class="lineNum"> 516 </span> : epptr() const { return _M_out_end; }
+<span class="lineNum"> 517 </span> : //@}
+<span class="lineNum"> 518 </span> :
+<span class="lineNum"> 519 </span> : /**
+<span class="lineNum"> 520 </span> : * @brief Moving the write position.
+<span class="lineNum"> 521 </span> : * @param n The delta by which to move.
+<span class="lineNum"> 522 </span> : *
+<span class="lineNum"> 523 </span> : * This just advances the write position without returning any data.
+<span class="lineNum"> 524 </span> : */
+<span class="lineNum"> 525 </span> : void
+<span class="lineNum"> 526 </span><span class="lineNoCov"> 0 : pbump(int __n) { _M_out_cur += __n; }</span>
+<span class="lineNum"> 527 </span> :
+<span class="lineNum"> 528 </span> : /**
+<span class="lineNum"> 529 </span> : * @brief Setting the three write area pointers.
+<span class="lineNum"> 530 </span> : * @param pbeg A pointer.
+<span class="lineNum"> 531 </span> : * @param pend A pointer.
+<span class="lineNum"> 532 </span> : * @post @a pbeg == @c pbase(), @a pbeg == @c pptr(), and
+<span class="lineNum"> 533 </span> : * @a pend == @c epptr()
+<span class="lineNum"> 534 </span> : */
+<span class="lineNum"> 535 </span> : void
+<span class="lineNum"> 536 </span><span class="lineNoCov"> 0 : setp(char_type* __pbeg, char_type* __pend)</span>
+<span class="lineNum"> 537 </span> : {
+<span class="lineNum"> 538 </span><span class="lineNoCov"> 0 : _M_out_beg = _M_out_cur = __pbeg; </span>
+<span class="lineNum"> 539 </span><span class="lineNoCov"> 0 : _M_out_end = __pend;</span>
+<span class="lineNum"> 540 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 541 </span> :
+<span class="lineNum"> 542 </span> : // [27.5.2.4] virtual functions
+<span class="lineNum"> 543 </span> : // [27.5.2.4.1] locales
+<span class="lineNum"> 544 </span> : /**
+<span class="lineNum"> 545 </span> : * @brief Changes translations.
+<span class="lineNum"> 546 </span> : * @param loc A new locale.
+<span class="lineNum"> 547 </span> : *
+<span class="lineNum"> 548 </span> : * Translations done during I/O which depend on the current locale
+<span class="lineNum"> 549 </span> : * are changed by this call. The standard adds, &quot;Between invocations
+<span class="lineNum"> 550 </span> : * of this function a class derived from streambuf can safely cache
+<span class="lineNum"> 551 </span> : * results of calls to locale functions and to members of facets
+<span class="lineNum"> 552 </span> : * so obtained.&quot;
+<span class="lineNum"> 553 </span> : *
+<span class="lineNum"> 554 </span> : * @note Base class version does nothing.
+<span class="lineNum"> 555 </span> : */
+<span class="lineNum"> 556 </span> : virtual void
+<span class="lineNum"> 557 </span><span class="lineNoCov"> 0 : imbue(const locale&amp;) </span>
+<span class="lineNum"> 558 </span><span class="lineNoCov"> 0 : { }</span>
+<span class="lineNum"> 559 </span> :
+<span class="lineNum"> 560 </span> : // [27.5.2.4.2] buffer management and positioning
+<span class="lineNum"> 561 </span> : /**
+<span class="lineNum"> 562 </span> : * @brief Manipulates the buffer.
+<span class="lineNum"> 563 </span> : *
+<span class="lineNum"> 564 </span> : * Each derived class provides its own appropriate behavior. See
+<span class="lineNum"> 565 </span> : * the next-to-last paragraph of
+<span class="lineNum"> 566 </span> : * http://gcc.gnu.org/onlinedocs/libstdc++/27_io/howto.html#2 for
+<span class="lineNum"> 567 </span> : * more on this function.
+<span class="lineNum"> 568 </span> : *
+<span class="lineNum"> 569 </span> : * @note Base class version does nothing, returns @c this.
+<span class="lineNum"> 570 </span> : */
+<span class="lineNum"> 571 </span> : virtual basic_streambuf&lt;char_type,_Traits&gt;*
+<span class="lineNum"> 572 </span><span class="lineNoCov"> 0 : setbuf(char_type*, streamsize)</span>
+<span class="lineNum"> 573 </span><span class="lineNoCov"> 0 : { return this; }</span>
+<span class="lineNum"> 574 </span> :
+<span class="lineNum"> 575 </span> : /**
+<span class="lineNum"> 576 </span> : * @brief Alters the stream positions.
+<span class="lineNum"> 577 </span> : *
+<span class="lineNum"> 578 </span> : * Each derived class provides its own appropriate behavior.
+<span class="lineNum"> 579 </span> : * @note Base class version does nothing, returns a @c pos_type
+<span class="lineNum"> 580 </span> : * that represents an invalid stream position.
+<span class="lineNum"> 581 </span> : */
+<span class="lineNum"> 582 </span> : virtual pos_type
+<span class="lineNum"> 583 </span> : seekoff(off_type, ios_base::seekdir,
+<span class="lineNum"> 584 </span><span class="lineNoCov"> 0 : ios_base::openmode /*__mode*/ = ios_base::in | ios_base::out)</span>
+<span class="lineNum"> 585 </span><span class="lineNoCov"> 0 : { return pos_type(off_type(-1)); } </span>
+<span class="lineNum"> 586 </span> :
+<span class="lineNum"> 587 </span> : /**
+<span class="lineNum"> 588 </span> : * @brief Alters the stream positions.
+<span class="lineNum"> 589 </span> : *
+<span class="lineNum"> 590 </span> : * Each derived class provides its own appropriate behavior.
+<span class="lineNum"> 591 </span> : * @note Base class version does nothing, returns a @c pos_type
+<span class="lineNum"> 592 </span> : * that represents an invalid stream position.
+<span class="lineNum"> 593 </span> : */
+<span class="lineNum"> 594 </span> : virtual pos_type
+<span class="lineNum"> 595 </span> : seekpos(pos_type,
+<span class="lineNum"> 596 </span><span class="lineNoCov"> 0 : ios_base::openmode /*__mode*/ = ios_base::in | ios_base::out)</span>
+<span class="lineNum"> 597 </span><span class="lineNoCov"> 0 : { return pos_type(off_type(-1)); } </span>
+<span class="lineNum"> 598 </span> :
+<span class="lineNum"> 599 </span> : /**
+<span class="lineNum"> 600 </span> : * @brief Synchronizes the buffer arrays with the controlled sequences.
+<span class="lineNum"> 601 </span> : * @return -1 on failure.
+<span class="lineNum"> 602 </span> : *
+<span class="lineNum"> 603 </span> : * Each derived class provides its own appropriate behavior,
+<span class="lineNum"> 604 </span> : * including the definition of &quot;failure&quot;.
+<span class="lineNum"> 605 </span> : * @note Base class version does nothing, returns zero.
+<span class="lineNum"> 606 </span> : */
+<span class="lineNum"> 607 </span> : virtual int
+<span class="lineNum"> 608 </span><span class="lineNoCov"> 0 : sync() { return 0; }</span>
+<span class="lineNum"> 609 </span> :
+<span class="lineNum"> 610 </span> : // [27.5.2.4.3] get area
+<span class="lineNum"> 611 </span> : /**
+<span class="lineNum"> 612 </span> : * @brief Investigating the data available.
+<span class="lineNum"> 613 </span> : * @return An estimate of the number of characters available in the
+<span class="lineNum"> 614 </span> : * input sequence, or -1.
+<span class="lineNum"> 615 </span> : *
+<span class="lineNum"> 616 </span> : * &quot;If it returns a positive value, then successive calls to
+<span class="lineNum"> 617 </span> : * @c underflow() will not return @c traits::eof() until at least that
+<span class="lineNum"> 618 </span> : * number of characters have been supplied. If @c showmanyc()
+<span class="lineNum"> 619 </span> : * returns -1, then calls to @c underflow() or @c uflow() will fail.&quot;
+<span class="lineNum"> 620 </span> : * [27.5.2.4.3]/1
+<span class="lineNum"> 621 </span> : *
+<span class="lineNum"> 622 </span> : * @note Base class version does nothing, returns zero.
+<span class="lineNum"> 623 </span> : * @note The standard adds that &quot;the intention is not only that the
+<span class="lineNum"> 624 </span> : * calls [to underflow or uflow] will not return @c eof() but
+<span class="lineNum"> 625 </span> : * that they will return &quot;immediately&quot;.
+<span class="lineNum"> 626 </span> : * @note The standard adds that &quot;the morphemes of @c showmanyc are
+<span class="lineNum"> 627 </span> : * &quot;es-how-many-see&quot;, not &quot;show-manic&quot;.
+<span class="lineNum"> 628 </span> : */
+<span class="lineNum"> 629 </span> : virtual streamsize
+<span class="lineNum"> 630 </span><span class="lineNoCov"> 0 : showmanyc() { return 0; }</span>
+<span class="lineNum"> 631 </span> :
+<span class="lineNum"> 632 </span> : /**
+<span class="lineNum"> 633 </span> : * @brief Multiple character extraction.
+<span class="lineNum"> 634 </span> : * @param s A buffer area.
+<span class="lineNum"> 635 </span> : * @param n Maximum number of characters to assign.
+<span class="lineNum"> 636 </span> : * @return The number of characters assigned.
+<span class="lineNum"> 637 </span> : *
+<span class="lineNum"> 638 </span> : * Fills @a s[0] through @a s[n-1] with characters from the input
+<span class="lineNum"> 639 </span> : * sequence, as if by @c sbumpc(). Stops when either @a n characters
+<span class="lineNum"> 640 </span> : * have been copied, or when @c traits::eof() would be copied.
+<span class="lineNum"> 641 </span> : *
+<span class="lineNum"> 642 </span> : * It is expected that derived classes provide a more efficient
+<span class="lineNum"> 643 </span> : * implementation by overriding this definition.
+<span class="lineNum"> 644 </span> : */
+<span class="lineNum"> 645 </span> : virtual streamsize
+<span class="lineNum"> 646 </span> : xsgetn(char_type* __s, streamsize __n);
+<span class="lineNum"> 647 </span> :
+<span class="lineNum"> 648 </span> : /**
+<span class="lineNum"> 649 </span> : * @brief Fetches more data from the controlled sequence.
+<span class="lineNum"> 650 </span> : * @return The first character from the &lt;em&gt;pending sequence&lt;/em&gt;.
+<span class="lineNum"> 651 </span> : *
+<span class="lineNum"> 652 </span> : * Informally, this function is called when the input buffer is
+<span class="lineNum"> 653 </span> : * exhausted (or does not exist, as buffering need not actually be
+<span class="lineNum"> 654 </span> : * done). If a buffer exists, it is &quot;refilled&quot;. In either case, the
+<span class="lineNum"> 655 </span> : * next available character is returned, or @c traits::eof() to
+<span class="lineNum"> 656 </span> : * indicate a null pending sequence.
+<span class="lineNum"> 657 </span> : *
+<span class="lineNum"> 658 </span> : * For a formal definition of the pending sequence, see a good text
+<span class="lineNum"> 659 </span> : * such as Langer &amp; Kreft, or [27.5.2.4.3]/7-14.
+<span class="lineNum"> 660 </span> : *
+<span class="lineNum"> 661 </span> : * A functioning input streambuf can be created by overriding only
+<span class="lineNum"> 662 </span> : * this function (no buffer area will be used). For an example, see
+<span class="lineNum"> 663 </span> : * http://gcc.gnu.org/onlinedocs/libstdc++/27_io/howto.html#6
+<span class="lineNum"> 664 </span> : *
+<span class="lineNum"> 665 </span> : * @note Base class version does nothing, returns eof().
+<span class="lineNum"> 666 </span> : */
+<span class="lineNum"> 667 </span> : virtual int_type
+<span class="lineNum"> 668 </span><span class="lineNoCov"> 0 : underflow()</span>
+<span class="lineNum"> 669 </span><span class="lineNoCov"> 0 : { return traits_type::eof(); }</span>
+<span class="lineNum"> 670 </span> :
+<span class="lineNum"> 671 </span> : /**
+<span class="lineNum"> 672 </span> : * @brief Fetches more data from the controlled sequence.
+<span class="lineNum"> 673 </span> : * @return The first character from the &lt;em&gt;pending sequence&lt;/em&gt;.
+<span class="lineNum"> 674 </span> : *
+<span class="lineNum"> 675 </span> : * Informally, this function does the same thing as @c underflow(),
+<span class="lineNum"> 676 </span> : * and in fact is required to call that function. It also returns
+<span class="lineNum"> 677 </span> : * the new character, like @c underflow() does. However, this
+<span class="lineNum"> 678 </span> : * function also moves the read position forward by one.
+<span class="lineNum"> 679 </span> : */
+<span class="lineNum"> 680 </span> : virtual int_type
+<span class="lineNum"> 681 </span><span class="lineNoCov"> 0 : uflow() </span>
+<span class="lineNum"> 682 </span> : {
+<span class="lineNum"> 683 </span><span class="lineNoCov"> 0 : int_type __ret = traits_type::eof();</span>
+<span class="lineNum"> 684 </span> : const bool __testeof = traits_type::eq_int_type(this-&gt;underflow(),
+<span class="lineNum"> 685 </span><span class="lineNoCov"> 0 : __ret);</span>
+<span class="lineNum"> 686 </span><span class="lineNoCov"> 0 : if (!__testeof)</span>
+<span class="lineNum"> 687 </span> : {
+<span class="lineNum"> 688 </span><span class="lineNoCov"> 0 : __ret = traits_type::to_int_type(*this-&gt;gptr());</span>
+<span class="lineNum"> 689 </span><span class="lineNoCov"> 0 : this-&gt;gbump(1);</span>
+<span class="lineNum"> 690 </span> : }
+<span class="lineNum"> 691 </span><span class="lineNoCov"> 0 : return __ret; </span>
+<span class="lineNum"> 692 </span> : }
+<span class="lineNum"> 693 </span> :
+<span class="lineNum"> 694 </span> : // [27.5.2.4.4] putback
+<span class="lineNum"> 695 </span> : /**
+<span class="lineNum"> 696 </span> : * @brief Tries to back up the input sequence.
+<span class="lineNum"> 697 </span> : * @param c The character to be inserted back into the sequence.
+<span class="lineNum"> 698 </span> : * @return eof() on failure, &quot;some other value&quot; on success
+<span class="lineNum"> 699 </span> : * @post The constraints of @c gptr(), @c eback(), and @c pptr()
+<span class="lineNum"> 700 </span> : * are the same as for @c underflow().
+<span class="lineNum"> 701 </span> : *
+<span class="lineNum"> 702 </span> : * @note Base class version does nothing, returns eof().
+<span class="lineNum"> 703 </span> : */
+<span class="lineNum"> 704 </span> : virtual int_type
+<span class="lineNum"> 705 </span><span class="lineNoCov"> 0 : pbackfail(int_type /* __c */ = traits_type::eof())</span>
+<span class="lineNum"> 706 </span><span class="lineNoCov"> 0 : { return traits_type::eof(); }</span>
+<span class="lineNum"> 707 </span> :
+<span class="lineNum"> 708 </span> : // Put area:
+<span class="lineNum"> 709 </span> : /**
+<span class="lineNum"> 710 </span> : * @brief Multiple character insertion.
+<span class="lineNum"> 711 </span> : * @param s A buffer area.
+<span class="lineNum"> 712 </span> : * @param n Maximum number of characters to write.
+<span class="lineNum"> 713 </span> : * @return The number of characters written.
+<span class="lineNum"> 714 </span> : *
+<span class="lineNum"> 715 </span> : * Writes @a s[0] through @a s[n-1] to the output sequence, as if
+<span class="lineNum"> 716 </span> : * by @c sputc(). Stops when either @a n characters have been
+<span class="lineNum"> 717 </span> : * copied, or when @c sputc() would return @c traits::eof().
+<span class="lineNum"> 718 </span> : *
+<span class="lineNum"> 719 </span> : * It is expected that derived classes provide a more efficient
+<span class="lineNum"> 720 </span> : * implementation by overriding this definition.
+<span class="lineNum"> 721 </span> : */
+<span class="lineNum"> 722 </span> : virtual streamsize
+<span class="lineNum"> 723 </span> : xsputn(const char_type* __s, streamsize __n);
+<span class="lineNum"> 724 </span> :
+<span class="lineNum"> 725 </span> : /**
+<span class="lineNum"> 726 </span> : * @brief Consumes data from the buffer; writes to the
+<span class="lineNum"> 727 </span> : * controlled sequence.
+<span class="lineNum"> 728 </span> : * @param c An additional character to consume.
+<span class="lineNum"> 729 </span> : * @return eof() to indicate failure, something else (usually
+<span class="lineNum"> 730 </span> : * @a c, or not_eof())
+<span class="lineNum"> 731 </span> : *
+<span class="lineNum"> 732 </span> : * Informally, this function is called when the output buffer is full
+<span class="lineNum"> 733 </span> : * (or does not exist, as buffering need not actually be done). If a
+<span class="lineNum"> 734 </span> : * buffer exists, it is &quot;consumed&quot;, with &quot;some effect&quot; on the
+<span class="lineNum"> 735 </span> : * controlled sequence. (Typically, the buffer is written out to the
+<span class="lineNum"> 736 </span> : * sequence verbatim.) In either case, the character @a c is also
+<span class="lineNum"> 737 </span> : * written out, if @a c is not @c eof().
+<span class="lineNum"> 738 </span> : *
+<span class="lineNum"> 739 </span> : * For a formal definition of this function, see a good text
+<span class="lineNum"> 740 </span> : * such as Langer &amp; Kreft, or [27.5.2.4.5]/3-7.
+<span class="lineNum"> 741 </span> : *
+<span class="lineNum"> 742 </span> : * A functioning output streambuf can be created by overriding only
+<span class="lineNum"> 743 </span> : * this function (no buffer area will be used).
+<span class="lineNum"> 744 </span> : *
+<span class="lineNum"> 745 </span> : * @note Base class version does nothing, returns eof().
+<span class="lineNum"> 746 </span> : */
+<span class="lineNum"> 747 </span> : virtual int_type
+<span class="lineNum"> 748 </span> : overflow(int_type /* __c */ = traits_type::eof())
+<span class="lineNum"> 749 </span> : { return traits_type::eof(); }
+<span class="lineNum"> 750 </span> :
+<span class="lineNum"> 751 </span> : #if _GLIBCXX_DEPRECATED
+<span class="lineNum"> 752 </span> : // Annex D.6
+<span class="lineNum"> 753 </span> : public:
+<span class="lineNum"> 754 </span> : /**
+<span class="lineNum"> 755 </span> : * @brief Tosses a character.
+<span class="lineNum"> 756 </span> : *
+<span class="lineNum"> 757 </span> : * Advances the read pointer, ignoring the character that would have
+<span class="lineNum"> 758 </span> : * been read.
+<span class="lineNum"> 759 </span> : *
+<span class="lineNum"> 760 </span> : * See http://gcc.gnu.org/ml/libstdc++/2002-05/msg00168.html
+<span class="lineNum"> 761 </span> : */
+<span class="lineNum"> 762 </span> : void
+<span class="lineNum"> 763 </span> : stossc()
+<span class="lineNum"> 764 </span> : {
+<span class="lineNum"> 765 </span> : if (this-&gt;gptr() &lt; this-&gt;egptr())
+<span class="lineNum"> 766 </span> : this-&gt;gbump(1);
+<span class="lineNum"> 767 </span> : else
+<span class="lineNum"> 768 </span> : this-&gt;uflow();
+<span class="lineNum"> 769 </span> : }
+<span class="lineNum"> 770 </span> : #endif
+<span class="lineNum"> 771 </span> :
+<span class="lineNum"> 772 </span> : private:
+<span class="lineNum"> 773 </span> : // _GLIBCXX_RESOLVE_LIB_DEFECTS
+<span class="lineNum"> 774 </span> : // Side effect of DR 50.
+<span class="lineNum"> 775 </span> : basic_streambuf(const __streambuf_type&amp; __sb)
+<span class="lineNum"> 776 </span> : : _M_in_beg(__sb._M_in_beg), _M_in_cur(__sb._M_in_cur),
+<span class="lineNum"> 777 </span> : _M_in_end(__sb._M_in_end), _M_out_beg(__sb._M_out_beg),
+<span class="lineNum"> 778 </span> : _M_out_cur(__sb._M_out_cur), _M_out_end(__sb._M_out_cur),
+<span class="lineNum"> 779 </span> : _M_buf_locale(__sb._M_buf_locale)
+<span class="lineNum"> 780 </span> : { }
+<span class="lineNum"> 781 </span> :
+<span class="lineNum"> 782 </span> : __streambuf_type&amp;
+<span class="lineNum"> 783 </span> : operator=(const __streambuf_type&amp;) { return *this; };
+<span class="lineNum"> 784 </span> : };
+<span class="lineNum"> 785 </span> :
+<span class="lineNum"> 786 </span> : // Explicit specialization declarations, defined in src/streambuf.cc.
+<span class="lineNum"> 787 </span> : template&lt;&gt;
+<span class="lineNum"> 788 </span> : streamsize
+<span class="lineNum"> 789 </span> : __copy_streambufs_eof(basic_streambuf&lt;char&gt;* __sbin,
+<span class="lineNum"> 790 </span> : basic_streambuf&lt;char&gt;* __sbout, bool&amp; __ineof);
+<span class="lineNum"> 791 </span> : #ifdef _GLIBCXX_USE_WCHAR_T
+<span class="lineNum"> 792 </span> : template&lt;&gt;
+<span class="lineNum"> 793 </span> : streamsize
+<span class="lineNum"> 794 </span> : __copy_streambufs_eof(basic_streambuf&lt;wchar_t&gt;* __sbin,
+<span class="lineNum"> 795 </span> : basic_streambuf&lt;wchar_t&gt;* __sbout, bool&amp; __ineof);
+<span class="lineNum"> 796 </span> : #endif
+<span class="lineNum"> 797 </span> :
+<span class="lineNum"> 798 </span> : _GLIBCXX_END_NAMESPACE
+<span class="lineNum"> 799 </span> :
+<span class="lineNum"> 800 </span> : #ifndef _GLIBCXX_EXPORT_TEMPLATE
+<span class="lineNum"> 801 </span> : # include &lt;bits/streambuf.tcc&gt;
+<span class="lineNum"> 802 </span> : #endif
+<span class="lineNum"> 803 </span> :
+<span class="lineNum"> 804 </span> : #endif /* _GLIBCXX_STREAMBUF */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/c++/4.3/typeinfo.gcov.html b/rep/usr/include/c++/4.3/typeinfo.gcov.html
new file mode 100644
index 0000000..de9327e
--- /dev/null
+++ b/rep/usr/include/c++/4.3/typeinfo.gcov.html
@@ -0,0 +1,264 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/c++/4.3/typeinfo</title>
+ <link rel="stylesheet" type="text/css" href="../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - <a href="index.html">usr/include/c++/4.3</a> - typeinfo</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">4</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">50.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : // RTTI support for -*- C++ -*-
+<span class="lineNum"> 2 </span> : // Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+<span class="lineNum"> 3 </span> : // 2003, 2004, 2005, 2006, 2007
+<span class="lineNum"> 4 </span> : // Free Software Foundation
+<span class="lineNum"> 5 </span> : //
+<span class="lineNum"> 6 </span> : // This file is part of GCC.
+<span class="lineNum"> 7 </span> : //
+<span class="lineNum"> 8 </span> : // GCC is free software; you can redistribute it and/or modify
+<span class="lineNum"> 9 </span> : // it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 10 </span> : // the Free Software Foundation; either version 2, or (at your option)
+<span class="lineNum"> 11 </span> : // any later version.
+<span class="lineNum"> 12 </span> : //
+<span class="lineNum"> 13 </span> : // GCC is distributed in the hope that it will be useful,
+<span class="lineNum"> 14 </span> : // but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 15 </span> : // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 16 </span> : // GNU General Public License for more details.
+<span class="lineNum"> 17 </span> : //
+<span class="lineNum"> 18 </span> : // You should have received a copy of the GNU General Public License
+<span class="lineNum"> 19 </span> : // along with GCC; see the file COPYING. If not, write to
+<span class="lineNum"> 20 </span> : // the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+<span class="lineNum"> 21 </span> : // Boston, MA 02110-1301, USA.
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : // As a special exception, you may use this file as part of a free software
+<span class="lineNum"> 24 </span> : // library without restriction. Specifically, if other files instantiate
+<span class="lineNum"> 25 </span> : // templates or use macros or inline functions from this file, or you compile
+<span class="lineNum"> 26 </span> : // this file and link it with other files to produce an executable, this
+<span class="lineNum"> 27 </span> : // file does not by itself cause the resulting executable to be covered by
+<span class="lineNum"> 28 </span> : // the GNU General Public License. This exception does not however
+<span class="lineNum"> 29 </span> : // invalidate any other reasons why the executable file might be covered by
+<span class="lineNum"> 30 </span> : // the GNU General Public License.
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : /** @file typeinfo
+<span class="lineNum"> 33 </span> : * This is a Standard C++ Library header.
+<span class="lineNum"> 34 </span> : */
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : #ifndef _TYPEINFO
+<span class="lineNum"> 37 </span> : #define _TYPEINFO
+<span class="lineNum"> 38 </span> :
+<span class="lineNum"> 39 </span> : #include &lt;exception&gt;
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : #pragma GCC visibility push(default)
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : extern &quot;C++&quot; {
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : namespace __cxxabiv1
+<span class="lineNum"> 46 </span> : {
+<span class="lineNum"> 47 </span> : class __class_type_info;
+<span class="lineNum"> 48 </span> : } // namespace __cxxabiv1
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span> : // Determine whether typeinfo names for the same type are merged (in which
+<span class="lineNum"> 51 </span> : // case comparison can just compare pointers) or not (in which case
+<span class="lineNum"> 52 </span> : // strings must be compared and g++.dg/abi/local1.C will fail), and
+<span class="lineNum"> 53 </span> : // whether comparison is to be implemented inline or not. By default we
+<span class="lineNum"> 54 </span> : // use inline pointer comparison if weak symbols are available, and
+<span class="lineNum"> 55 </span> : // out-of-line strcmp if not. Out-of-line pointer comparison is used
+<span class="lineNum"> 56 </span> : // where the object files are to be portable to multiple systems, some of
+<span class="lineNum"> 57 </span> : // which may not be able to use pointer comparison, but the particular
+<span class="lineNum"> 58 </span> : // system for which libstdc++ is being built can use pointer comparison;
+<span class="lineNum"> 59 </span> : // in particular for most ARM EABI systems, where the ABI specifies
+<span class="lineNum"> 60 </span> : // out-of-line comparison. Inline strcmp is not currently supported. The
+<span class="lineNum"> 61 </span> : // compiler's target configuration can override the defaults by defining
+<span class="lineNum"> 62 </span> : // __GXX_TYPEINFO_EQUALITY_INLINE to 1 or 0 to indicate whether or not
+<span class="lineNum"> 63 </span> : // comparison is inline, and __GXX_MERGED_TYPEINFO_NAMES to 1 or 0 to
+<span class="lineNum"> 64 </span> : // indicate whether or not pointer comparison can be used.
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span> : #ifndef __GXX_MERGED_TYPEINFO_NAMES
+<span class="lineNum"> 67 </span> : #if !__GXX_WEAK__
+<span class="lineNum"> 68 </span> : // If weak symbols are not supported, typeinfo names are not merged.
+<span class="lineNum"> 69 </span> : #define __GXX_MERGED_TYPEINFO_NAMES 0
+<span class="lineNum"> 70 </span> : #else
+<span class="lineNum"> 71 </span> : // On platforms that support weak symbols, typeinfo names are merged.
+<span class="lineNum"> 72 </span> : #define __GXX_MERGED_TYPEINFO_NAMES 1
+<span class="lineNum"> 73 </span> : #endif
+<span class="lineNum"> 74 </span> : #endif
+<span class="lineNum"> 75 </span> :
+<span class="lineNum"> 76 </span> : // By default follow the same rules as for __GXX_MERGED_TYPEINFO_NAMES.
+<span class="lineNum"> 77 </span> : #ifndef __GXX_TYPEINFO_EQUALITY_INLINE
+<span class="lineNum"> 78 </span> : #if !__GXX_WEAK__
+<span class="lineNum"> 79 </span> : #define __GXX_TYPEINFO_EQUALITY_INLINE 0
+<span class="lineNum"> 80 </span> : #else
+<span class="lineNum"> 81 </span> : #define __GXX_TYPEINFO_EQUALITY_INLINE 1
+<span class="lineNum"> 82 </span> : #endif
+<span class="lineNum"> 83 </span> : #endif
+<span class="lineNum"> 84 </span> :
+<span class="lineNum"> 85 </span> : namespace std
+<span class="lineNum"> 86 </span> : {
+<span class="lineNum"> 87 </span> : /**
+<span class="lineNum"> 88 </span> : * @brief Part of RTTI.
+<span class="lineNum"> 89 </span> : *
+<span class="lineNum"> 90 </span> : * The @c type_info class describes type information generated by
+<span class="lineNum"> 91 </span> : * an implementation.
+<span class="lineNum"> 92 </span> : */
+<span class="lineNum"> 93 </span> : class type_info
+<span class="lineNum"> 94 </span> : {
+<span class="lineNum"> 95 </span> : public:
+<span class="lineNum"> 96 </span> : /** Destructor first. Being the first non-inline virtual function, this
+<span class="lineNum"> 97 </span> : * controls in which translation unit the vtable is emitted. The
+<span class="lineNum"> 98 </span> : * compiler makes use of that information to know where to emit
+<span class="lineNum"> 99 </span> : * the runtime-mandated type_info structures in the new-abi. */
+<span class="lineNum"> 100 </span> : virtual ~type_info();
+<span class="lineNum"> 101 </span> :
+<span class="lineNum"> 102 </span> : /** Returns an @e implementation-defined byte string; this is not
+<span class="lineNum"> 103 </span> : * portable between compilers! */
+<span class="lineNum"> 104 </span><span class="lineCov"> 2 : const char* name() const</span>
+<span class="lineNum"> 105 </span><span class="lineCov"> 2 : { return __name; }</span>
+<span class="lineNum"> 106 </span> :
+<span class="lineNum"> 107 </span> : #if !__GXX_TYPEINFO_EQUALITY_INLINE
+<span class="lineNum"> 108 </span> : bool before(const type_info&amp; __arg) const;
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span> : // In old abi, or when weak symbols are not supported, there can
+<span class="lineNum"> 111 </span> : // be multiple instances of a type_info object for one
+<span class="lineNum"> 112 </span> : // type. Uniqueness must use the _name value, not object address.
+<span class="lineNum"> 113 </span> : bool operator==(const type_info&amp; __arg) const;
+<span class="lineNum"> 114 </span> : #else
+<span class="lineNum"> 115 </span> : #if !__GXX_MERGED_TYPEINFO_NAMES
+<span class="lineNum"> 116 </span> : #error &quot;Inline implementation of type_info comparision requires merging of type_info objects&quot;
+<span class="lineNum"> 117 </span> : #endif
+<span class="lineNum"> 118 </span> : /** Returns true if @c *this precedes @c __arg in the implementation's
+<span class="lineNum"> 119 </span> : * collation order. */
+<span class="lineNum"> 120 </span> : // In new abi we can rely on type_info's NTBS being unique,
+<span class="lineNum"> 121 </span> : // and therefore address comparisons are sufficient.
+<span class="lineNum"> 122 </span><span class="lineNoCov"> 0 : bool before(const type_info&amp; __arg) const</span>
+<span class="lineNum"> 123 </span><span class="lineNoCov"> 0 : { return __name &lt; __arg.__name; }</span>
+<span class="lineNum"> 124 </span> :
+<span class="lineNum"> 125 </span> : bool operator==(const type_info&amp; __arg) const
+<span class="lineNum"> 126 </span> : { return __name == __arg.__name; }
+<span class="lineNum"> 127 </span> : #endif
+<span class="lineNum"> 128 </span> : bool operator!=(const type_info&amp; __arg) const
+<span class="lineNum"> 129 </span> : { return !operator==(__arg); }
+<span class="lineNum"> 130 </span> :
+<span class="lineNum"> 131 </span> : // Return true if this is a pointer type of some kind
+<span class="lineNum"> 132 </span> : virtual bool __is_pointer_p() const;
+<span class="lineNum"> 133 </span> :
+<span class="lineNum"> 134 </span> : // Return true if this is a function type
+<span class="lineNum"> 135 </span> : virtual bool __is_function_p() const;
+<span class="lineNum"> 136 </span> :
+<span class="lineNum"> 137 </span> : // Try and catch a thrown type. Store an adjusted pointer to the
+<span class="lineNum"> 138 </span> : // caught type in THR_OBJ. If THR_TYPE is not a pointer type, then
+<span class="lineNum"> 139 </span> : // THR_OBJ points to the thrown object. If THR_TYPE is a pointer
+<span class="lineNum"> 140 </span> : // type, then THR_OBJ is the pointer itself. OUTER indicates the
+<span class="lineNum"> 141 </span> : // number of outer pointers, and whether they were const
+<span class="lineNum"> 142 </span> : // qualified.
+<span class="lineNum"> 143 </span> : virtual bool __do_catch(const type_info *__thr_type, void **__thr_obj,
+<span class="lineNum"> 144 </span> : unsigned __outer) const;
+<span class="lineNum"> 145 </span> :
+<span class="lineNum"> 146 </span> : // Internally used during catch matching
+<span class="lineNum"> 147 </span> : virtual bool __do_upcast(const __cxxabiv1::__class_type_info *__target,
+<span class="lineNum"> 148 </span> : void **__obj_ptr) const;
+<span class="lineNum"> 149 </span> :
+<span class="lineNum"> 150 </span> : protected:
+<span class="lineNum"> 151 </span> : const char *__name;
+<span class="lineNum"> 152 </span> :
+<span class="lineNum"> 153 </span> : explicit type_info(const char *__n): __name(__n) { }
+<span class="lineNum"> 154 </span> :
+<span class="lineNum"> 155 </span> : private:
+<span class="lineNum"> 156 </span> : /// Assigning type_info is not supported.
+<span class="lineNum"> 157 </span> : type_info&amp; operator=(const type_info&amp;);
+<span class="lineNum"> 158 </span> : type_info(const type_info&amp;);
+<span class="lineNum"> 159 </span> : };
+<span class="lineNum"> 160 </span> :
+<span class="lineNum"> 161 </span> : /**
+<span class="lineNum"> 162 </span> : * @brief Thrown during incorrect typecasting.
+<span class="lineNum"> 163 </span> : *
+<span class="lineNum"> 164 </span> : * If you attempt an invalid @c dynamic_cast expression, an instance of
+<span class="lineNum"> 165 </span> : * this class (or something derived from this class) is thrown. */
+<span class="lineNum"> 166 </span> : class bad_cast : public exception
+<span class="lineNum"> 167 </span> : {
+<span class="lineNum"> 168 </span> : public:
+<span class="lineNum"> 169 </span> : bad_cast() throw() { }
+<span class="lineNum"> 170 </span> :
+<span class="lineNum"> 171 </span> : // This declaration is not useless:
+<span class="lineNum"> 172 </span> : // http://gcc.gnu.org/onlinedocs/gcc-3.0.2/gcc_6.html#SEC118
+<span class="lineNum"> 173 </span> : virtual ~bad_cast() throw();
+<span class="lineNum"> 174 </span> :
+<span class="lineNum"> 175 </span> : // See comment in eh_exception.cc.
+<span class="lineNum"> 176 </span> : virtual const char* what() const throw();
+<span class="lineNum"> 177 </span> : };
+<span class="lineNum"> 178 </span> :
+<span class="lineNum"> 179 </span> : /** If you use a NULL pointer in a @c typeid expression, this is thrown. */
+<span class="lineNum"> 180 </span> : class bad_typeid : public exception
+<span class="lineNum"> 181 </span> : {
+<span class="lineNum"> 182 </span> : public:
+<span class="lineNum"> 183 </span> : bad_typeid () throw() { }
+<span class="lineNum"> 184 </span> :
+<span class="lineNum"> 185 </span> : // This declaration is not useless:
+<span class="lineNum"> 186 </span> : // http://gcc.gnu.org/onlinedocs/gcc-3.0.2/gcc_6.html#SEC118
+<span class="lineNum"> 187 </span> : virtual ~bad_typeid() throw();
+<span class="lineNum"> 188 </span> :
+<span class="lineNum"> 189 </span> : // See comment in eh_exception.cc.
+<span class="lineNum"> 190 </span> : virtual const char* what() const throw();
+<span class="lineNum"> 191 </span> : };
+<span class="lineNum"> 192 </span> : } // namespace std
+<span class="lineNum"> 193 </span> :
+<span class="lineNum"> 194 </span> : #pragma GCC visibility pop
+<span class="lineNum"> 195 </span> :
+<span class="lineNum"> 196 </span> : } // extern &quot;C++&quot;
+<span class="lineNum"> 197 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/TextFormat.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/TextFormat.h.gcov.html
new file mode 100644
index 0000000..040ef47
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/TextFormat.h.gcov.html
@@ -0,0 +1,261 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/TextFormat.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll</a> - TextFormat.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">7</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">14.3 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_TEXTFORMAT_H
+<span class="lineNum"> 2 </span> : #define TAGCOLL_TEXTFORMAT_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** \file
+<span class="lineNum"> 5 </span> : * Serialize and deserialize a tagged collection to a text file
+<span class="lineNum"> 6 </span> : */
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : /*
+<span class="lineNum"> 9 </span> : * Copyright (C) 2003--2006 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 12 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 13 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 14 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 19 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 20 </span> : *
+<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 22 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 24 </span> : */
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;wibble/mixin.h&gt;
+<span class="lineNum"> 27 </span> : #include &lt;wibble/empty.h&gt;
+<span class="lineNum"> 28 </span> : #include &lt;wibble/singleton.h&gt;
+<span class="lineNum"> 29 </span> : #include &lt;tagcoll/input/base.h&gt;
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : #include &lt;stdio.h&gt;
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : //#define TRACE_PARSE
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : namespace tagcoll
+<span class="lineNum"> 36 </span> : {
+<span class="lineNum"> 37 </span> : template&lt;class ITEM, class TAG&gt;
+<span class="lineNum"> 38 </span> : class PatchList;
+<span class="lineNum"> 39 </span> : template&lt;class ITEM, class TAG&gt;
+<span class="lineNum"> 40 </span> : class Patch;
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span> : namespace textformat
+<span class="lineNum"> 43 </span> : {
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : /**
+<span class="lineNum"> 46 </span> : * TagcollConsumer that serializes its input to an output stream
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * The format of the output is:
+<span class="lineNum"> 49 </span> : * lines of &quot;comma+space&quot;-separated items, followed by &quot;colon+space&quot;,
+<span class="lineNum"> 50 </span> : * followed by the corresponding &quot;comma+space&quot;-separated tags.
+<span class="lineNum"> 51 </span> : * Examples:
+<span class="lineNum"> 52 </span> : * ITEM:
+<span class="lineNum"> 53 </span> : * ITEM: TAG
+<span class="lineNum"> 54 </span> : * ITEM: TAG1, TAG2, TAG3
+<span class="lineNum"> 55 </span> : * ITEM1, ITEM2, ITEM3:
+<span class="lineNum"> 56 </span> : * ITEM1, ITEM2, ITEM3: TAG1, TAG2, TAG3
+<span class="lineNum"> 57 </span> : */
+<span class="lineNum"> 58 </span> : class StdioWriter : public wibble::mixin::OutputIterator&lt;StdioWriter&gt;
+<span class="lineNum"> 59 </span> : {
+<span class="lineNum"> 60 </span> : protected:
+<span class="lineNum"> 61 </span> : FILE* out;
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span> : public:
+<span class="lineNum"> 64 </span><span class="lineCov"> 1 : StdioWriter(FILE* out) : out(out) {}</span>
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span> : template&lt;typename Items, typename Tags&gt;
+<span class="lineNum"> 67 </span> : StdioWriter&amp; operator=(const std::pair&lt;Items, Tags&gt;&amp; data);
+<span class="lineNum"> 68 </span> : };
+<span class="lineNum"> 69 </span> :
+<span class="lineNum"> 70 </span> : class OstreamWriter : public wibble::mixin::OutputIterator&lt;OstreamWriter&gt;
+<span class="lineNum"> 71 </span> : {
+<span class="lineNum"> 72 </span> : protected:
+<span class="lineNum"> 73 </span> : std::ostream&amp; out;
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span> : public:
+<span class="lineNum"> 76 </span> : OstreamWriter(std::ostream&amp; out) : out(out) {}
+<span class="lineNum"> 77 </span> :
+<span class="lineNum"> 78 </span> : template&lt;typename Items, typename Tags&gt;
+<span class="lineNum"> 79 </span> : OstreamWriter&amp; operator=(const std::pair&lt;Items, Tags&gt;&amp; data);
+<span class="lineNum"> 80 </span> : };
+<span class="lineNum"> 81 </span> :
+<span class="lineNum"> 82 </span> : /**
+<span class="lineNum"> 83 </span> : * Parse an element from input
+<span class="lineNum"> 84 </span> : *
+<span class="lineNum"> 85 </span> : * @retval item
+<span class="lineNum"> 86 </span> : * The item found on input
+<span class="lineNum"> 87 </span> : * @return
+<span class="lineNum"> 88 </span> : * the trailing separating char, that can be:
+<span class="lineNum"> 89 </span> : * \li input::Input::Eof
+<span class="lineNum"> 90 </span> : * \li '\n'
+<span class="lineNum"> 91 </span> : * \li ':'
+<span class="lineNum"> 92 </span> : * \li ','
+<span class="lineNum"> 93 </span> : */
+<span class="lineNum"> 94 </span> : int parseElement(input::Input&amp; in, std::string&amp; item);
+<span class="lineNum"> 95 </span> :
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span> : /**
+<span class="lineNum"> 98 </span> : * Serialize a patch
+<span class="lineNum"> 99 </span> : */
+<span class="lineNum"> 100 </span> : template&lt;typename ITEM, typename TAG, typename ITEMSER, typename TAGSER&gt;
+<span class="lineNum"> 101 </span> : void outputPatch(
+<span class="lineNum"> 102 </span> : ITEMSER&amp; itemconv,
+<span class="lineNum"> 103 </span> : TAGSER&amp; tagconv,
+<span class="lineNum"> 104 </span> : const PatchList&lt;ITEM, TAG&gt;&amp; patch,
+<span class="lineNum"> 105 </span> : FILE* out);
+<span class="lineNum"> 106 </span> :
+<span class="lineNum"> 107 </span> : void outputPatch(
+<span class="lineNum"> 108 </span> : const PatchList&lt;std::string, std::string&gt;&amp; patch,
+<span class="lineNum"> 109 </span> : FILE* out);
+<span class="lineNum"> 110 </span> :
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span> : /*
+<span class="lineNum"> 113 </span> : * Parse a tagged collection, sending the results to out.
+<span class="lineNum"> 114 </span> : *
+<span class="lineNum"> 115 </span> : * @param out
+<span class="lineNum"> 116 </span> : * An output iterator accepting a std::pair&lt;string, string&gt;
+<span class="lineNum"> 117 </span> : */
+<span class="lineNum"> 118 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 119 </span> : void parse(input::Input&amp; in, OUT out);
+<span class="lineNum"> 120 </span> :
+<span class="lineNum"> 121 </span> : /**
+<span class="lineNum"> 122 </span> : * Assemble a patch from a stream of &quot;item: +added, -removed&quot; items and tags
+<span class="lineNum"> 123 </span> : */
+<span class="lineNum"> 124 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 125 </span> : class PatchAssembler : public wibble::mixin::OutputIterator&lt; PatchAssembler&lt;OUT&gt; &gt;
+<span class="lineNum"> 126 </span> : {
+<span class="lineNum"> 127 </span> : OUT out;
+<span class="lineNum"> 128 </span> : public:
+<span class="lineNum"> 129 </span><span class="lineNoCov"> 0 : PatchAssembler(const OUT&amp; out) : out(out) {}</span>
+<span class="lineNum"> 130 </span> :
+<span class="lineNum"> 131 </span> : template&lt;typename ITEMS, typename TAGS&gt;
+<span class="lineNum"> 132 </span> : PatchAssembler&amp; operator=(const std::pair&lt;ITEMS, TAGS&gt;&amp; data);
+<span class="lineNum"> 133 </span> : };
+<span class="lineNum"> 134 </span> :
+<span class="lineNum"> 135 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 136 </span><span class="lineNoCov"> 0 : PatchAssembler&lt;OUT&gt; patchAssembler(const OUT&amp; out)</span>
+<span class="lineNum"> 137 </span> : {
+<span class="lineNum"> 138 </span><span class="lineNoCov"> 0 : return PatchAssembler&lt;OUT&gt;(out);</span>
+<span class="lineNum"> 139 </span> : }
+<span class="lineNum"> 140 </span> :
+<span class="lineNum"> 141 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 142 </span><span class="lineNoCov"> 0 : void parsePatch(input::Input&amp; in, OUT out)</span>
+<span class="lineNum"> 143 </span> : {
+<span class="lineNum"> 144 </span><span class="lineNoCov"> 0 : parse(in, patchAssembler(out));</span>
+<span class="lineNum"> 145 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 146 </span> :
+<span class="lineNum"> 147 </span> : /**
+<span class="lineNum"> 148 </span> : * Parse a tagcoll patch
+<span class="lineNum"> 149 </span> : */
+<span class="lineNum"> 150 </span> : template&lt;typename ITEM, typename TAG, typename ITEMSER, typename TAGSER&gt;
+<span class="lineNum"> 151 </span> : PatchList&lt;ITEM, TAG&gt; parsePatch(
+<span class="lineNum"> 152 </span> : ITEMSER&amp; itemconv,
+<span class="lineNum"> 153 </span> : TAGSER&amp; tagconv,
+<span class="lineNum"> 154 </span> : input::Input&amp; in);
+<span class="lineNum"> 155 </span> :
+<span class="lineNum"> 156 </span> : PatchList&lt;std::string, std::string&gt; parsePatch(input::Input&amp; in);
+<span class="lineNum"> 157 </span> :
+<span class="lineNum"> 158 </span> :
+<span class="lineNum"> 159 </span> :
+<span class="lineNum"> 160 </span> : template&lt;typename ITEM, typename TAG, typename ITEMSER, typename TAGSER&gt;
+<span class="lineNum"> 161 </span> : class PatchBuilder : public wibble::mixin::OutputIterator&lt; PatchBuilder&lt;ITEM, TAG, ITEMSER, TAGSER&gt; &gt;
+<span class="lineNum"> 162 </span> : {
+<span class="lineNum"> 163 </span> : protected:
+<span class="lineNum"> 164 </span> : PatchList&lt;ITEM, TAG&gt;&amp; patch;
+<span class="lineNum"> 165 </span> : const ITEMSER&amp; itemconv;
+<span class="lineNum"> 166 </span> : const TAGSER&amp; tagconv;
+<span class="lineNum"> 167 </span> :
+<span class="lineNum"> 168 </span> : public:
+<span class="lineNum"> 169 </span> : PatchBuilder(
+<span class="lineNum"> 170 </span> : PatchList&lt;ITEM, TAG&gt;&amp; patch,
+<span class="lineNum"> 171 </span> : const ITEMSER&amp; itemconv,
+<span class="lineNum"> 172 </span> : const TAGSER&amp; tagconv)
+<span class="lineNum"> 173 </span> : : patch(patch), itemconv(itemconv), tagconv(tagconv) {}
+<span class="lineNum"> 174 </span> :
+<span class="lineNum"> 175 </span> : template&lt;typename ITEMS, typename TAGS&gt;
+<span class="lineNum"> 176 </span> : PatchBuilder&lt;ITEM, TAG, ITEMSER, TAGSER&gt;&amp; operator=(const std::pair&lt;ITEMS, TAGS&gt;&amp; data);
+<span class="lineNum"> 177 </span> :
+<span class="lineNum"> 178 </span> : const PatchList&lt;ITEM, TAG&gt;&amp; getPatch() const throw () { return patch; }
+<span class="lineNum"> 179 </span> : };
+<span class="lineNum"> 180 </span> :
+<span class="lineNum"> 181 </span> : template&lt;typename ITEM, typename TAG, typename ITEMSER, typename TAGSER&gt;
+<span class="lineNum"> 182 </span> : PatchBuilder&lt;ITEM, TAG, ITEMSER, TAGSER&gt; patchBuilder(
+<span class="lineNum"> 183 </span> : PatchList&lt;ITEM, TAG&gt;&amp; patch,
+<span class="lineNum"> 184 </span> : const ITEMSER&amp; itemconv,
+<span class="lineNum"> 185 </span> : const TAGSER&amp; tagconv)
+<span class="lineNum"> 186 </span> : {
+<span class="lineNum"> 187 </span> : return PatchBuilder&lt;ITEM, TAG, ITEMSER, TAGSER&gt;(patch, itemconv, tagconv);
+<span class="lineNum"> 188 </span> : }
+<span class="lineNum"> 189 </span> :
+<span class="lineNum"> 190 </span> : }
+<span class="lineNum"> 191 </span> : }
+<span class="lineNum"> 192 </span> :
+<span class="lineNum"> 193 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 194 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/TextFormat.tcc.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/TextFormat.tcc.gcov.html
new file mode 100644
index 0000000..3b6b659
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/TextFormat.tcc.gcov.html
@@ -0,0 +1,357 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/TextFormat.tcc</title>
+ <link rel="stylesheet" type="text/css" href="../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll</a> - TextFormat.tcc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">79</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">54.4 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">43</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /*
+<span class="lineNum"> 2 </span> : * Serialize a tagged collection to a text file
+<span class="lineNum"> 3 </span> : *
+<span class="lineNum"> 4 </span> : * Copyright (C) 2003--2008 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 5 </span> : *
+<span class="lineNum"> 6 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 7 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 8 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 9 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 12 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 13 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 14 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 17 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 18 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 19 </span> : */
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : #ifndef TAGCOLL_TEXTFORMAT_TCC
+<span class="lineNum"> 22 </span> : #define TAGCOLL_TEXTFORMAT_TCC
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : #include &lt;tagcoll/TextFormat.h&gt;
+<span class="lineNum"> 25 </span> : #include &lt;tagcoll/patch.h&gt;
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #include &lt;wibble/exception.h&gt;
+<span class="lineNum"> 28 </span> : #include &lt;wibble/empty.h&gt;
+<span class="lineNum"> 29 </span> : #include &lt;wibble/operators.h&gt;
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : #include &lt;ostream&gt;
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : using namespace std;
+<span class="lineNum"> 34 </span> : using namespace wibble;
+<span class="lineNum"> 35 </span> : using namespace wibble::operators;
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span><span class="lineNoCov"> 0 : static void printTagset(const std::set&lt;string&gt;&amp; ts, FILE* out)</span>
+<span class="lineNum"> 38 </span> : {
+<span class="lineNum"> 39 </span><span class="lineNoCov"> 0 : for (std::set&lt;string&gt;::const_iterator i = ts.begin();</span>
+<span class="lineNum"> 40 </span> : i != ts.end(); i++)
+<span class="lineNum"> 41 </span><span class="lineNoCov"> 0 : if (i == ts.begin())</span>
+<span class="lineNum"> 42 </span> : {
+<span class="lineNum"> 43 </span><span class="lineNoCov"> 0 : if (fprintf(out, &quot;%s&quot;, i-&gt;c_str()) &lt; 0)</span>
+<span class="lineNum"> 44 </span><span class="lineNoCov"> 0 : throw wibble::exception::System(&quot;writing tagset&quot;);</span>
+<span class="lineNum"> 45 </span> : }
+<span class="lineNum"> 46 </span> : else
+<span class="lineNum"> 47 </span> : {
+<span class="lineNum"> 48 </span><span class="lineNoCov"> 0 : if (fprintf(out, &quot;, %s&quot;, i-&gt;c_str()) &lt; 0)</span>
+<span class="lineNum"> 49 </span><span class="lineNoCov"> 0 : throw wibble::exception::System(&quot;writing tagset&quot;);</span>
+<span class="lineNum"> 50 </span> : }
+<span class="lineNum"> 51 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span> : namespace tagcoll {
+<span class="lineNum"> 54 </span> : namespace textformat {
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span><span class="lineCov"> 126871 : inline static void outString(const std::string&amp; str, FILE* out, const char* what)</span>
+<span class="lineNum"> 57 </span> : {
+<span class="lineNum"> 58 </span><span class="lineCov"> 126871 : if (fwrite(str.data(), str.size(), 1, out) != 1)</span>
+<span class="lineNum"> 59 </span><span class="lineNoCov"> 0 : throw wibble::exception::System(string(&quot;writing &quot;) + what);</span>
+<span class="lineNum"> 60 </span><span class="lineCov"> 126871 : }</span>
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : template&lt;typename Items, typename Tags&gt;
+<span class="lineNum"> 63 </span><span class="lineCov"> 21145 : StdioWriter&amp; StdioWriter::operator=(const std::pair&lt;Items, Tags&gt;&amp; data)</span>
+<span class="lineNum"> 64 </span> : {
+<span class="lineNum"> 65 </span><span class="lineCov"> 42290 : for (typename Items::const_iterator i = data.first.begin();</span>
+<span class="lineNum"> 66 </span> : i != data.first.end(); ++i)
+<span class="lineNum"> 67 </span> : {
+<span class="lineNum"> 68 </span><span class="lineCov"> 21145 : if (i != data.first.begin())</span>
+<span class="lineNum"> 69 </span><span class="lineNoCov"> 0 : if (fputs(&quot;, &quot;, out) == EOF)</span>
+<span class="lineNum"> 70 </span><span class="lineNoCov"> 0 : throw wibble::exception::System(&quot;writing comma after item&quot;);</span>
+<span class="lineNum"> 71 </span><span class="lineCov"> 21145 : outString(*i, out, &quot;item&quot;);</span>
+<span class="lineNum"> 72 </span> : }
+<span class="lineNum"> 73 </span><span class="lineCov"> 21145 : if (data.second.begin() != data.second.end())</span>
+<span class="lineNum"> 74 </span> : {
+<span class="lineNum"> 75 </span><span class="lineCov"> 21145 : if (fputs(&quot;: &quot;, out) == EOF)</span>
+<span class="lineNum"> 76 </span><span class="lineNoCov"> 0 : throw wibble::exception::System(&quot;writing colon after items&quot;);</span>
+<span class="lineNum"> 77 </span><span class="lineCov"> 126871 : for (typename Tags::const_iterator i = data.second.begin();</span>
+<span class="lineNum"> 78 </span> : i != data.second.end(); ++i)
+<span class="lineNum"> 79 </span> : {
+<span class="lineNum"> 80 </span><span class="lineCov"> 105726 : if (i != data.second.begin())</span>
+<span class="lineNum"> 81 </span><span class="lineCov"> 84581 : if (fputs(&quot;, &quot;, out) == EOF)</span>
+<span class="lineNum"> 82 </span><span class="lineNoCov"> 0 : throw wibble::exception::System(&quot;writing comma after tag&quot;);</span>
+<span class="lineNum"> 83 </span><span class="lineCov"> 105726 : outString(*i, out, &quot;tag&quot;);</span>
+<span class="lineNum"> 84 </span> : }
+<span class="lineNum"> 85 </span> : }
+<span class="lineNum"> 86 </span><span class="lineCov"> 21145 : if (fputc('\n', out) == EOF)</span>
+<span class="lineNum"> 87 </span><span class="lineNoCov"> 0 : throw wibble::exception::System(&quot;writing newline after tagset&quot;);</span>
+<span class="lineNum"> 88 </span><span class="lineCov"> 21145 : return *this;</span>
+<span class="lineNum"> 89 </span> : }
+<span class="lineNum"> 90 </span> :
+<span class="lineNum"> 91 </span> : template&lt;typename Items, typename Tags&gt;
+<span class="lineNum"> 92 </span> : OstreamWriter&amp; OstreamWriter::operator=(const std::pair&lt;Items, Tags&gt;&amp; data)
+<span class="lineNum"> 93 </span> : {
+<span class="lineNum"> 94 </span> : for (typename Items::const_iterator i = data.first.begin();
+<span class="lineNum"> 95 </span> : i != data.first.end(); ++i)
+<span class="lineNum"> 96 </span> : {
+<span class="lineNum"> 97 </span> : if (i != data.first.begin())
+<span class="lineNum"> 98 </span> : out &lt;&lt; &quot;, &quot;;
+<span class="lineNum"> 99 </span> : out &lt;&lt; *i;
+<span class="lineNum"> 100 </span> : }
+<span class="lineNum"> 101 </span> : if (data.second.begin() != data.second.end())
+<span class="lineNum"> 102 </span> : {
+<span class="lineNum"> 103 </span> : out &lt;&lt; &quot;: &quot;;
+<span class="lineNum"> 104 </span> : for (typename Tags::const_iterator i = data.second.begin();
+<span class="lineNum"> 105 </span> : i != data.second.end(); ++i)
+<span class="lineNum"> 106 </span> : {
+<span class="lineNum"> 107 </span> : if (i != data.second.begin())
+<span class="lineNum"> 108 </span> : out &lt;&lt; &quot;, &quot;;
+<span class="lineNum"> 109 </span> : out &lt;&lt; *i;
+<span class="lineNum"> 110 </span> : }
+<span class="lineNum"> 111 </span> : }
+<span class="lineNum"> 112 </span> : out &lt;&lt; endl;
+<span class="lineNum"> 113 </span> : return *this;
+<span class="lineNum"> 114 </span> : }
+<span class="lineNum"> 115 </span> :
+<span class="lineNum"> 116 </span> :
+<span class="lineNum"> 117 </span> :
+<span class="lineNum"> 118 </span> : // item1, item2, item3: tag1, tag2, tag3
+<span class="lineNum"> 119 </span> :
+<span class="lineNum"> 120 </span> : //#define TRACE_PARSE
+<span class="lineNum"> 121 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 122 </span><span class="lineCov"> 2 : void parse(input::Input&amp; in, OUT out)</span>
+<span class="lineNum"> 123 </span> : {
+<span class="lineNum"> 124 </span><span class="lineCov"> 2 : string item;</span>
+<span class="lineNum"> 125 </span> :
+<span class="lineNum"> 126 </span><span class="lineCov"> 2 : std::set&lt;string&gt; itemset;</span>
+<span class="lineNum"> 127 </span><span class="lineCov"> 2 : std::set&lt;string&gt; tagset;</span>
+<span class="lineNum"> 128 </span> : int sep;
+<span class="lineNum"> 129 </span><span class="lineCov"> 2 : enum {ITEMS, TAGS} state = ITEMS;</span>
+<span class="lineNum"> 130 </span><span class="lineCov"> 2 : int line = 1;</span>
+<span class="lineNum"> 131 </span><span class="lineCov"> 253744 : do</span>
+<span class="lineNum"> 132 </span> : {
+<span class="lineNum"> 133 </span> : try {
+<span class="lineNum"> 134 </span><span class="lineCov"> 253744 : sep = parseElement(in, item);</span>
+<span class="lineNum"> 135 </span><span class="lineNoCov"> 0 : } catch (tagcoll::exception::Parser&amp; e) {</span>
+<span class="lineNum"> 136 </span> : // Add the line number and propagate
+<span class="lineNum"> 137 </span><span class="lineNoCov"> 0 : e.line(line);</span>
+<span class="lineNum"> 138 </span><span class="lineNoCov"> 0 : throw e;</span>
+<span class="lineNum"> 139 </span> : }
+<span class="lineNum"> 140 </span> :
+<span class="lineNum"> 141 </span><span class="lineCov"> 507488 : if (item.size() != 0)</span>
+<span class="lineNum"> 142 </span> : {
+<span class="lineNum"> 143 </span><span class="lineCov"> 253742 : if (state == ITEMS)</span>
+<span class="lineNum"> 144 </span><span class="lineCov"> 42290 : itemset |= item;</span>
+<span class="lineNum"> 145 </span> : else
+<span class="lineNum"> 146 </span><span class="lineCov"> 211452 : tagset |= item;</span>
+<span class="lineNum"> 147 </span> : }
+<span class="lineNum"> 148 </span> :
+<span class="lineNum"> 149 </span><span class="lineCov"> 253744 : switch (sep)</span>
+<span class="lineNum"> 150 </span> : {
+<span class="lineNum"> 151 </span> : case '\n':
+<span class="lineNum"> 152 </span><span class="lineCov"> 42290 : line++;</span>
+<span class="lineNum"> 153 </span> : case input::Input::Eof:
+<span class="lineNum"> 154 </span><span class="lineCov"> 42292 : if (!(itemset.empty() &amp;&amp; tagset.empty()))</span>
+<span class="lineNum"> 155 </span> : {
+<span class="lineNum"> 156 </span><span class="lineCov"> 42290 : if (itemset.empty())</span>
+<span class="lineNum"> 157 </span><span class="lineNoCov"> 0 : throw tagcoll::exception::Input(line, &quot;no elements before `:' separator&quot;);</span>
+<span class="lineNum"> 158 </span><span class="lineCov"> 42290 : if (tagset.empty())</span>
+<span class="lineNum"> 159 </span><span class="lineNoCov"> 0 : *out = make_pair(itemset, wibble::Empty&lt;std::string&gt;());</span>
+<span class="lineNum"> 160 </span> : else
+<span class="lineNum"> 161 </span><span class="lineCov"> 42290 : *out = make_pair(itemset, tagset);</span>
+<span class="lineNum"> 162 </span><span class="lineCov"> 42290 : ++out;</span>
+<span class="lineNum"> 163 </span> : }
+<span class="lineNum"> 164 </span><span class="lineCov"> 42292 : itemset.clear();</span>
+<span class="lineNum"> 165 </span><span class="lineCov"> 42292 : tagset.clear();</span>
+<span class="lineNum"> 166 </span><span class="lineCov"> 42292 : state = ITEMS;</span>
+<span class="lineNum"> 167 </span><span class="lineCov"> 42292 : break;</span>
+<span class="lineNum"> 168 </span> : case ':':
+<span class="lineNum"> 169 </span><span class="lineCov"> 42290 : if (state == TAGS)</span>
+<span class="lineNum"> 170 </span><span class="lineNoCov"> 0 : throw tagcoll::exception::Input(line, &quot;separator `:' appears twice&quot;);</span>
+<span class="lineNum"> 171 </span><span class="lineCov"> 42290 : state = TAGS;</span>
+<span class="lineNum"> 172 </span> : break;
+<span class="lineNum"> 173 </span> : default:
+<span class="lineNum"> 174 </span><span class="lineCov"> 2 : break;</span>
+<span class="lineNum"> 175 </span> : }
+<span class="lineNum"> 176 </span> : } while (sep != input::Input::Eof);
+<span class="lineNum"> 177 </span><span class="lineCov"> 2 : }</span>
+<span class="lineNum"> 178 </span> :
+<span class="lineNum"> 179 </span> : template&lt;typename OUT&gt; template&lt;typename ITEMS, typename TAGS&gt;
+<span class="lineNum"> 180 </span><span class="lineNoCov"> 0 : PatchAssembler&lt;OUT&gt;&amp; PatchAssembler&lt;OUT&gt;::operator=(const std::pair&lt;ITEMS, TAGS&gt;&amp; data)</span>
+<span class="lineNum"> 181 </span> : {
+<span class="lineNum"> 182 </span><span class="lineNoCov"> 0 : std::set&lt;std::string&gt; added;</span>
+<span class="lineNum"> 183 </span><span class="lineNoCov"> 0 : std::set&lt;std::string&gt; removed;</span>
+<span class="lineNum"> 184 </span> :
+<span class="lineNum"> 185 </span><span class="lineNoCov"> 0 : for (typename TAGS::const_iterator i = data.second.begin();</span>
+<span class="lineNum"> 186 </span> : i != data.second.end(); ++i)
+<span class="lineNum"> 187 </span> : {
+<span class="lineNum"> 188 </span><span class="lineNoCov"> 0 : std::string tag = i-&gt;substr(1);</span>
+<span class="lineNum"> 189 </span><span class="lineNoCov"> 0 : if (!tag.empty())</span>
+<span class="lineNum"> 190 </span> : {
+<span class="lineNum"> 191 </span><span class="lineNoCov"> 0 : if ((*i)[0] == '-')</span>
+<span class="lineNum"> 192 </span><span class="lineNoCov"> 0 : removed.insert(tag);</span>
+<span class="lineNum"> 193 </span><span class="lineNoCov"> 0 : else if ((*i)[0] == '+')</span>
+<span class="lineNum"> 194 </span><span class="lineNoCov"> 0 : added.insert(tag);</span>
+<span class="lineNum"> 195 </span> : }
+<span class="lineNum"> 196 </span> : }
+<span class="lineNum"> 197 </span> :
+<span class="lineNum"> 198 </span><span class="lineNoCov"> 0 : for (typename ITEMS::const_iterator i = data.first.begin();</span>
+<span class="lineNum"> 199 </span> : i != data.first.end(); ++i)
+<span class="lineNum"> 200 </span> : {
+<span class="lineNum"> 201 </span><span class="lineNoCov"> 0 : std::string it = *i;</span>
+<span class="lineNum"> 202 </span><span class="lineNoCov"> 0 : if (!it.empty())</span>
+<span class="lineNum"> 203 </span> : {
+<span class="lineNum"> 204 </span><span class="lineNoCov"> 0 : *out = Patch&lt;std::string, std::string&gt;(it, added, removed);</span>
+<span class="lineNum"> 205 </span><span class="lineNoCov"> 0 : ++out;</span>
+<span class="lineNum"> 206 </span> : }
+<span class="lineNum"> 207 </span> : }
+<span class="lineNum"> 208 </span><span class="lineNoCov"> 0 : return *this;</span>
+<span class="lineNum"> 209 </span> : }
+<span class="lineNum"> 210 </span> :
+<span class="lineNum"> 211 </span> :
+<span class="lineNum"> 212 </span> :
+<span class="lineNum"> 213 </span> : template&lt;typename ITEM, typename TAG, typename ITEMSER, typename TAGSER&gt;
+<span class="lineNum"> 214 </span> : void outputPatch(
+<span class="lineNum"> 215 </span> : ITEMSER&amp; itemconv,
+<span class="lineNum"> 216 </span> : TAGSER&amp; tagconv,
+<span class="lineNum"> 217 </span> : const PatchList&lt;ITEM, TAG&gt;&amp; patch,
+<span class="lineNum"> 218 </span> : FILE* out)
+<span class="lineNum"> 219 </span> : {
+<span class="lineNum"> 220 </span> : for (typename PatchList&lt;ITEM, TAG&gt;::const_iterator i = patch.begin();
+<span class="lineNum"> 221 </span> : i != patch.end(); i++)
+<span class="lineNum"> 222 </span> : {
+<span class="lineNum"> 223 </span> : string sitem = itemconv(i-&gt;first);
+<span class="lineNum"> 224 </span> : if (fprintf(out, &quot;%s: &quot;, sitem.c_str()) &lt; 0)
+<span class="lineNum"> 225 </span> : throw wibble::exception::System(&quot;writing item&quot;);
+<span class="lineNum"> 226 </span> :
+<span class="lineNum"> 227 </span> : std::set&lt;string&gt; stags;
+<span class="lineNum"> 228 </span> : for (typename std::set&lt;TAG&gt;::const_iterator j = i-&gt;second.added.begin();
+<span class="lineNum"> 229 </span> : j != i-&gt;second.added.end(); j++)
+<span class="lineNum"> 230 </span> : stags |= &quot;+&quot;+tagconv(*j);
+<span class="lineNum"> 231 </span> : for (typename std::set&lt;TAG&gt;::const_iterator j = i-&gt;second.removed.begin();
+<span class="lineNum"> 232 </span> : j != i-&gt;second.removed.end(); j++)
+<span class="lineNum"> 233 </span> : stags |= &quot;-&quot;+tagconv(*j);
+<span class="lineNum"> 234 </span> :
+<span class="lineNum"> 235 </span> : printTagset(stags, out);
+<span class="lineNum"> 236 </span> : if (fprintf(out, &quot;\n&quot;) &lt; 0)
+<span class="lineNum"> 237 </span> : throw wibble::exception::System(&quot;writing newline after tagset&quot;);
+<span class="lineNum"> 238 </span> : }
+<span class="lineNum"> 239 </span> : }
+<span class="lineNum"> 240 </span> :
+<span class="lineNum"> 241 </span> : template&lt;typename ITEM, typename TAG, typename ITEMSER, typename TAGSER&gt;
+<span class="lineNum"> 242 </span> : template&lt;typename ITEMS, typename TAGS&gt;
+<span class="lineNum"> 243 </span> : PatchBuilder&lt;ITEM, TAG, ITEMSER, TAGSER&gt;&amp; PatchBuilder&lt;ITEM, TAG, ITEMSER, TAGSER&gt;::operator=(const std::pair&lt;ITEMS, TAGS&gt;&amp; data)
+<span class="lineNum"> 244 </span> : {
+<span class="lineNum"> 245 </span> : std::set&lt;TAG&gt; added;
+<span class="lineNum"> 246 </span> : std::set&lt;TAG&gt; removed;
+<span class="lineNum"> 247 </span> :
+<span class="lineNum"> 248 </span> : for (typename TAGS::const_iterator i = data.second.begin();
+<span class="lineNum"> 249 </span> : i != data.second.end(); ++i)
+<span class="lineNum"> 250 </span> : {
+<span class="lineNum"> 251 </span> : TAG tag = tagconv(i-&gt;substr(1));
+<span class="lineNum"> 252 </span> : if (tag != TAG())
+<span class="lineNum"> 253 </span> : {
+<span class="lineNum"> 254 </span> : if ((*i)[0] == '-')
+<span class="lineNum"> 255 </span> : removed.insert(tag);
+<span class="lineNum"> 256 </span> : else if ((*i)[0] == '+')
+<span class="lineNum"> 257 </span> : added.insert(tag);
+<span class="lineNum"> 258 </span> : }
+<span class="lineNum"> 259 </span> : }
+<span class="lineNum"> 260 </span> :
+<span class="lineNum"> 261 </span> : for (typename ITEMS::const_iterator i = data.first.begin();
+<span class="lineNum"> 262 </span> : i != data.first.end(); ++i)
+<span class="lineNum"> 263 </span> : {
+<span class="lineNum"> 264 </span> : ITEM it = itemconv(*i);
+<span class="lineNum"> 265 </span> : if (it != ITEM())
+<span class="lineNum"> 266 </span> : patch.addPatch(Patch&lt;ITEM, TAG&gt;(it, added, removed));
+<span class="lineNum"> 267 </span> : }
+<span class="lineNum"> 268 </span> : return *this;
+<span class="lineNum"> 269 </span> : }
+<span class="lineNum"> 270 </span> :
+<span class="lineNum"> 271 </span> :
+<span class="lineNum"> 272 </span> : template&lt;typename ITEM, typename TAG, typename ITEMSER, typename TAGSER&gt;
+<span class="lineNum"> 273 </span> : PatchList&lt;ITEM, TAG&gt; parsePatch(
+<span class="lineNum"> 274 </span> : ITEMSER&amp; itemconv,
+<span class="lineNum"> 275 </span> : TAGSER&amp; tagconv,
+<span class="lineNum"> 276 </span> : input::Input&amp; in)
+<span class="lineNum"> 277 </span> : {
+<span class="lineNum"> 278 </span> : PatchList&lt;ITEM, TAG&gt; patch;
+<span class="lineNum"> 279 </span> : parse(in, patchBuilder(patch, itemconv, tagconv));
+<span class="lineNum"> 280 </span> : return patch;
+<span class="lineNum"> 281 </span> : }
+<span class="lineNum"> 282 </span> :
+<span class="lineNum"> 283 </span> : }
+<span class="lineNum"> 284 </span><span class="lineCov"> 6 : }</span>
+<span class="lineNum"> 285 </span> :
+<span class="lineNum"> 286 </span> : #include &lt;tagcoll/patch.tcc&gt;
+<span class="lineNum"> 287 </span> :
+<span class="lineNum"> 288 </span> : #endif
+<span class="lineNum"> 289 </span> :
+<span class="lineNum"> 290 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/base.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/base.h.gcov.html
new file mode 100644
index 0000000..99bba0c
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/base.h.gcov.html
@@ -0,0 +1,400 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/coll/base.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/coll</a> - base.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">11</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">11</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_COLL_BASE_H
+<span class="lineNum"> 2 </span> : #define TAGCOLL_COLL_BASE_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** \file
+<span class="lineNum"> 5 </span> : * Base mixins for tagged collections
+<span class="lineNum"> 6 </span> : */
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : /*
+<span class="lineNum"> 9 </span> : * Copyright (C) 2003,2004,2005,2006 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 12 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 13 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 14 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 19 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 20 </span> : *
+<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 22 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 24 </span> : */
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;wibble/mixin.h&gt;
+<span class="lineNum"> 27 </span> : #include &lt;vector&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : namespace std {
+<span class="lineNum"> 30 </span> : template&lt;typename A, typename B&gt; class pair;
+<span class="lineNum"> 31 </span> : }
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : namespace tagcoll {
+<span class="lineNum"> 34 </span> : namespace coll {
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : template&lt;typename T&gt;
+<span class="lineNum"> 37 </span> : class coll_traits;
+<span class="lineNum"> 38 </span> :
+<span class="lineNum"> 39 </span> : /**
+<span class="lineNum"> 40 </span> : * Interface for all collections of tagged items.
+<span class="lineNum"> 41 </span> : *
+<span class="lineNum"> 42 </span> : * \note The point of a collection is to track the tags attached to items, and
+<span class="lineNum"> 43 </span> : * not to store the items themselves. This means that collections are not
+<span class="lineNum"> 44 </span> : * required to keep track of items with no tags.
+<span class="lineNum"> 45 </span> : */
+<span class="lineNum"> 46 </span> : template&lt;typename Self&gt;
+<span class="lineNum"> 47 </span> : class ReadonlyCollection
+<span class="lineNum"> 48 </span><span class="lineCov"> 37 : {</span>
+<span class="lineNum"> 49 </span><span class="lineCov"> 84611 : const Self&amp; self() const { return *static_cast&lt;const Self*&gt;(this); }</span>
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> : class CardinalityOrder
+<span class="lineNum"> 52 </span> : {
+<span class="lineNum"> 53 </span> : const Self&amp; coll;
+<span class="lineNum"> 54 </span> : public:
+<span class="lineNum"> 55 </span> : CardinalityOrder(const Self&amp; coll) : coll(coll) {}
+<span class="lineNum"> 56 </span> : bool operator()(const typename coll_traits&lt;Self&gt;::tag_type&amp; t1, const typename coll_traits&lt;Self&gt;::tag_type&amp; t2)
+<span class="lineNum"> 57 </span> : {
+<span class="lineNum"> 58 </span> : // Returns true if t1 precedes t2, and false otherwise
+<span class="lineNum"> 59 </span> : return coll.getCardinality(t1) &lt; coll.getCardinality(t2);
+<span class="lineNum"> 60 </span> : }
+<span class="lineNum"> 61 </span> : };
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span> : class DiscriminanceOrder
+<span class="lineNum"> 64 </span> : {
+<span class="lineNum"> 65 </span> : const Self&amp; coll;
+<span class="lineNum"> 66 </span> : public:
+<span class="lineNum"> 67 </span> : DiscriminanceOrder(const Self&amp; coll) : coll(coll) {}
+<span class="lineNum"> 68 </span> : bool operator()(const typename coll_traits&lt;Self&gt;::tag_type&amp; t1, const typename coll_traits&lt;Self&gt;::tag_type&amp; t2)
+<span class="lineNum"> 69 </span> : {
+<span class="lineNum"> 70 </span> : // Returns true if t1 precedes t2, and false otherwise
+<span class="lineNum"> 71 </span> : return coll.getDiscriminance(t1) &lt; coll.getDiscriminance(t2);
+<span class="lineNum"> 72 </span> : }
+<span class="lineNum"> 73 </span> : };
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span> : template&lt;typename COLL&gt;
+<span class="lineNum"> 76 </span> : class RelevanceOrder
+<span class="lineNum"> 77 </span> : {
+<span class="lineNum"> 78 </span> : const COLL&amp; first;
+<span class="lineNum"> 79 </span> : const Self&amp; second;
+<span class="lineNum"> 80 </span> : public:
+<span class="lineNum"> 81 </span> : RelevanceOrder(const COLL&amp; first, const Self&amp; second)
+<span class="lineNum"> 82 </span> : : first(first), second(second) {}
+<span class="lineNum"> 83 </span> : bool operator()(const typename coll_traits&lt;Self&gt;::tag_type&amp; t1, const typename coll_traits&lt;Self&gt;::tag_type&amp; t2);
+<span class="lineNum"> 84 </span> : };
+<span class="lineNum"> 85 </span> :
+<span class="lineNum"> 86 </span> : /**
+<span class="lineNum"> 87 </span> : * Get the items which are tagged with at least the tag `tag'
+<span class="lineNum"> 88 </span> : *
+<span class="lineNum"> 89 </span> : * \return
+<span class="lineNum"> 90 </span> : * The items found, or an empty set if no items have that tag
+<span class="lineNum"> 91 </span> : */
+<span class="lineNum"> 92 </span> : //virtual std::set&lt;ITEM&gt; getItemsHavingTag(const TAG&amp; tag) const = 0;
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span> : /**
+<span class="lineNum"> 95 </span> : * Get the tags attached to an item.
+<span class="lineNum"> 96 </span> : *
+<span class="lineNum"> 97 </span> : * \param item
+<span class="lineNum"> 98 </span> : * The item to query
+<span class="lineNum"> 99 </span> : * \return
+<span class="lineNum"> 100 </span> : * The set of tags, or an empty set if the item has no tags or it does
+<span class="lineNum"> 101 </span> : * not exist.
+<span class="lineNum"> 102 </span> : */
+<span class="lineNum"> 103 </span> : //virtual std::set&lt;TAG&gt; getTagsOfItem(const ITEM&amp; item) const = 0;
+<span class="lineNum"> 104 </span> :
+<span class="lineNum"> 105 </span> : public:
+<span class="lineNum"> 106 </span> : /**
+<span class="lineNum"> 107 </span> : * Check if the collection contains a tag
+<span class="lineNum"> 108 </span> : *
+<span class="lineNum"> 109 </span> : * \param tag
+<span class="lineNum"> 110 </span> : * The tag to look for
+<span class="lineNum"> 111 </span> : * \return
+<span class="lineNum"> 112 </span> : * true if the collection contains tag, false otherwise
+<span class="lineNum"> 113 </span> : */
+<span class="lineNum"> 114 </span> : bool hasTag(const typename coll_traits&lt;Self&gt;::tag_type&amp; tag) const;
+<span class="lineNum"> 115 </span> :
+<span class="lineNum"> 116 </span> : /**
+<span class="lineNum"> 117 </span> : * Get the tags of item `item'. Return an empty set if `item' does not exist
+<span class="lineNum"> 118 </span> : */
+<span class="lineNum"> 119 </span> : //std::set&lt;Self::tag_type&gt; getTags(const typename Self::item_type&amp; item) const = 0;
+<span class="lineNum"> 120 </span> :
+<span class="lineNum"> 121 </span> : /**
+<span class="lineNum"> 122 </span> : * Get all the tags attached to the items in a set.
+<span class="lineNum"> 123 </span> : *
+<span class="lineNum"> 124 </span> : * \param items
+<span class="lineNum"> 125 </span> : * The items to query
+<span class="lineNum"> 126 </span> : * \return
+<span class="lineNum"> 127 </span> : * The set of tags, or an empty set if the items have no tags or do not
+<span class="lineNum"> 128 </span> : * exist.
+<span class="lineNum"> 129 </span> : */
+<span class="lineNum"> 130 </span> : template&lt;typename ITEMS&gt;
+<span class="lineNum"> 131 </span> : typename coll_traits&lt;Self&gt;::tagset_type getTagsOfItems(const ITEMS&amp; items) const;
+<span class="lineNum"> 132 </span> :
+<span class="lineNum"> 133 </span> : /**
+<span class="lineNum"> 134 </span> : * Get the items with tag `tag'. Return an empty set if `tag' does not exist
+<span class="lineNum"> 135 </span> : */
+<span class="lineNum"> 136 </span> : //std::set&lt;typename Self::item_type&gt; getItems(const TAG&amp; tag) const { return getItemsHavingTag(tag); }
+<span class="lineNum"> 137 </span> :
+<span class="lineNum"> 138 </span> : /**
+<span class="lineNum"> 139 </span> : * Get the items which are tagged with at least the tags `tags'
+<span class="lineNum"> 140 </span> : *
+<span class="lineNum"> 141 </span> : * \return
+<span class="lineNum"> 142 </span> : * The items found, or an empty set if no items have that tag
+<span class="lineNum"> 143 </span> : */
+<span class="lineNum"> 144 </span> : template&lt;typename TAGS&gt;
+<span class="lineNum"> 145 </span><span class="lineCov"> 2 : typename coll_traits&lt;Self&gt;::itemset_type getItemsHavingTags(const TAGS&amp; tags) const;</span>
+<span class="lineNum"> 146 </span> :
+<span class="lineNum"> 147 </span> : /**
+<span class="lineNum"> 148 </span> : * Get the set of all the items that have tags according to this collection
+<span class="lineNum"> 149 </span> : */
+<span class="lineNum"> 150 </span> : //virtual std::set&lt;Self::item_type&gt; getTaggedItems() const = 0;
+<span class="lineNum"> 151 </span> :
+<span class="lineNum"> 152 </span> : /**
+<span class="lineNum"> 153 </span> : * Get the set of all the tags in this collection
+<span class="lineNum"> 154 </span> : */
+<span class="lineNum"> 155 </span> : //virtual std::set&lt;Self::tag_type&gt; getAllTags() const = 0;
+<span class="lineNum"> 156 </span> :
+<span class="lineNum"> 157 </span> : /**
+<span class="lineNum"> 158 </span> : * Get all the tags in the collectin, as a vector
+<span class="lineNum"> 159 </span> : */
+<span class="lineNum"> 160 </span> : std::vector&lt;typename coll_traits&lt;Self&gt;::tag_type&gt; getAllTagsAsVector() const;
+<span class="lineNum"> 161 </span> :
+<span class="lineNum"> 162 </span> : /**
+<span class="lineNum"> 163 </span> : * Get the cardinality of tag `tag' (that is, the number of items who have it)
+<span class="lineNum"> 164 </span> : */
+<span class="lineNum"> 165 </span> : unsigned int getCardinality(const typename coll_traits&lt;Self&gt;::tag_type&amp; tag) const;
+<span class="lineNum"> 166 </span> :
+<span class="lineNum"> 167 </span> : /**
+<span class="lineNum"> 168 </span> : * Return the discriminance value for this tag, that is, the minimum number
+<span class="lineNum"> 169 </span> : * of packages that would be eliminated by selecting only those tagged with
+<span class="lineNum"> 170 </span> : * this tag or only those not tagged with this tag.
+<span class="lineNum"> 171 </span> : */
+<span class="lineNum"> 172 </span> : unsigned int getDiscriminance(const typename coll_traits&lt;Self&gt;::tag_type&amp; tag) const
+<span class="lineNum"> 173 </span> : {
+<span class="lineNum"> 174 </span> : return self().getCardinality(tag) &lt; self().tagCount() - self().getCardinality(tag) ?
+<span class="lineNum"> 175 </span> : self().getCardinality(tag) :
+<span class="lineNum"> 176 </span> : self().tagCount() - self().getCardinality(tag);
+<span class="lineNum"> 177 </span> : }
+<span class="lineNum"> 178 </span> :
+<span class="lineNum"> 179 </span> : /**
+<span class="lineNum"> 180 </span> : * Get the set of all tags in this collection that appear in tagsets
+<span class="lineNum"> 181 </span> : * containing `tags'
+<span class="lineNum"> 182 </span> : *
+<span class="lineNum"> 183 </span> : * Example:
+<span class="lineNum"> 184 </span> : * \code
+<span class="lineNum"> 185 </span> : * void refineSelection(const std::set&lt;Tag&gt;&amp; selection)
+<span class="lineNum"> 186 </span> : * {
+<span class="lineNum"> 187 </span> : * std::set&lt;Tag&gt; extraTags = collection.getCompanionTags(selection);
+<span class="lineNum"> 188 </span> : * tagMenu.setAvailableOptions(extraTags);
+<span class="lineNum"> 189 </span> : * }
+<span class="lineNum"> 190 </span> : * \endcode
+<span class="lineNum"> 191 </span> : */
+<span class="lineNum"> 192 </span> : template&lt;typename TAGS&gt;
+<span class="lineNum"> 193 </span> : typename coll_traits&lt;Self&gt;::tagset_type getCompanionTags(const TAGS&amp; tags) const;
+<span class="lineNum"> 194 </span> :
+<span class="lineNum"> 195 </span> : /**
+<span class="lineNum"> 196 </span> : * Get the related items at the given maximum distance
+<span class="lineNum"> 197 </span> : *
+<span class="lineNum"> 198 </span> : * Examples:
+<span class="lineNum"> 199 </span> : * \code
+<span class="lineNum"> 200 </span> : * // Get the items related to a given one, at the given distance
+<span class="lineNum"> 201 </span> : * std::set&lt;Item&gt; getRelated(const Item&amp; item, int distance)
+<span class="lineNum"> 202 </span> : * {
+<span class="lineNum"> 203 </span> : * std::set&lt;Item&gt; res = collection.getRelatedItems(collection.getTags(item), distance);
+<span class="lineNum"> 204 </span> : * return res - item;
+<span class="lineNum"> 205 </span> : * }
+<span class="lineNum"> 206 </span> : *
+<span class="lineNum"> 207 </span> : * // Get the items related to the given ones, at the given distance
+<span class="lineNum"> 208 </span> : * std::set&lt;Item&gt; getRelated(const std::set&lt;Item&gt;&amp; items, int distance)
+<span class="lineNum"> 209 </span> : * {
+<span class="lineNum"> 210 </span> : * std::set&lt;Item&gt; res = collection.getRelatedItems(collection.getTags(items), distance);
+<span class="lineNum"> 211 </span> : * return res - items;
+<span class="lineNum"> 212 </span> : * }
+<span class="lineNum"> 213 </span> : *
+<span class="lineNum"> 214 </span> : * // Get the related items, increasing the distance until it finds at
+<span class="lineNum"> 215 </span> : * // least 'minimum' items
+<span class="lineNum"> 216 </span> : * std::set&lt;Item&gt; getRelated(const Item&amp; item, int minimum)
+<span class="lineNum"> 217 </span> : * {
+<span class="lineNum"> 218 </span> : * std::set&lt;Tag&gt; tags = collection.getTags(item);
+<span class="lineNum"> 219 </span> : * std::set&lt;Item&gt; res;
+<span class="lineNum"> 220 </span> : * for (int i = 0; i &lt; tags.size() &amp;&amp; res.size() &lt; minimum; i++)
+<span class="lineNum"> 221 </span> : * res += collection.getRelatedItems(tags, i);
+<span class="lineNum"> 222 </span> : * return res - item;
+<span class="lineNum"> 223 </span> : * }
+<span class="lineNum"> 224 </span> : * \endcode
+<span class="lineNum"> 225 </span> : */
+<span class="lineNum"> 226 </span> : template&lt;typename TAGS&gt;
+<span class="lineNum"> 227 </span> : typename coll_traits&lt;Self&gt;::itemset_type getRelatedItems(const TAGS&amp; tags, int maxdistance = 1) const;
+<span class="lineNum"> 228 </span> :
+<span class="lineNum"> 229 </span> : /**
+<span class="lineNum"> 230 </span> : * Output all the contents of the collection to an output iterator
+<span class="lineNum"> 231 </span> : */
+<span class="lineNum"> 232 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 233 </span><span class="lineCov"> 5 : void output(OUT out) const;</span>
+<span class="lineNum"> 234 </span> :
+<span class="lineNum"> 235 </span> : /**
+<span class="lineNum"> 236 </span> : * Send to a consumer all the items which are tagged with at least the
+<span class="lineNum"> 237 </span> : * given tags
+<span class="lineNum"> 238 </span> : */
+<span class="lineNum"> 239 </span> : template&lt;typename TAGS, typename OUT&gt;
+<span class="lineNum"> 240 </span> : void outputHavingTags(const TAGS&amp; tags, OUT out) const;
+<span class="lineNum"> 241 </span> :
+<span class="lineNum"> 242 </span> : /**
+<span class="lineNum"> 243 </span> : * Get a vector containing all tags in this collection, sorted by
+<span class="lineNum"> 244 </span> : * increasing cardinality
+<span class="lineNum"> 245 </span> : */
+<span class="lineNum"> 246 </span> : std::vector&lt;typename coll_traits&lt;Self&gt;::tag_type&gt; tagsInCardinalityOrder() const;
+<span class="lineNum"> 247 </span> :
+<span class="lineNum"> 248 </span> : /**
+<span class="lineNum"> 249 </span> : * Get a vector containing all tags in this collection, sorted by
+<span class="lineNum"> 250 </span> : * increasing discriminance value (@see getDiscriminance)
+<span class="lineNum"> 251 </span> : */
+<span class="lineNum"> 252 </span> : std::vector&lt;typename coll_traits&lt;Self&gt;::tag_type&gt; tagsInDiscriminanceOrder() const;
+<span class="lineNum"> 253 </span> :
+<span class="lineNum"> 254 </span> : /**
+<span class="lineNum"> 255 </span> : * Get a vector containing all tags in this collection, sorted by
+<span class="lineNum"> 256 </span> : * increasing relevance to the filtering applied between coll and this
+<span class="lineNum"> 257 </span> : * collection
+<span class="lineNum"> 258 </span> : */
+<span class="lineNum"> 259 </span> : template&lt;typename COLL&gt;
+<span class="lineNum"> 260 </span> : std::vector&lt;typename coll_traits&lt;Self&gt;::tag_type&gt; tagsInRelevanceOrder(const COLL&amp; coll) const;
+<span class="lineNum"> 261 </span> : };
+<span class="lineNum"> 262 </span> :
+<span class="lineNum"> 263 </span> :
+<span class="lineNum"> 264 </span> : /**
+<span class="lineNum"> 265 </span> : * Interface for all collections of tagged items.
+<span class="lineNum"> 266 </span> : *
+<span class="lineNum"> 267 </span> : * \note The point of a collection is to track the tags attached to items, and
+<span class="lineNum"> 268 </span> : * not to store the items themselves. This means that collections are not
+<span class="lineNum"> 269 </span> : * required to keep track of items with no tags.
+<span class="lineNum"> 270 </span> : */
+<span class="lineNum"> 271 </span> : template&lt;typename Self&gt;
+<span class="lineNum"> 272 </span> : class Collection : public ReadonlyCollection&lt;Self&gt;
+<span class="lineNum"> 273 </span><span class="lineCov"> 27 : {</span>
+<span class="lineNum"> 274 </span> : //protected:
+<span class="lineNum"> 275 </span> : /*
+<span class="lineNum"> 276 </span> : * Implementation note: to avoid problems with classes implementing only
+<span class="lineNum"> 277 </span> : * some of the virtual methods, they are given different names. The common
+<span class="lineNum"> 278 </span> : * 'comsume' methods are just inlined calls to the right virtual functions,
+<span class="lineNum"> 279 </span> : * and are a way of keeping the unoverridden methods from being hidden.
+<span class="lineNum"> 280 </span> : */
+<span class="lineNum"> 281 </span> :
+<span class="lineNum"> 282 </span> : //void consumeItemUntagged(const ITEM&amp;) {}
+<span class="lineNum"> 283 </span> : //void consumeItemsUntagged(const std::set&lt;ITEM&gt;&amp;) {}
+<span class="lineNum"> 284 </span> :
+<span class="lineNum"> 285 </span> : public:
+<span class="lineNum"> 286 </span> : //virtual ~Collection() {}
+<span class="lineNum"> 287 </span> :
+<span class="lineNum"> 288 </span> : /**
+<span class="lineNum"> 289 </span> : * Apply a patch to the collection
+<span class="lineNum"> 290 </span> : *
+<span class="lineNum"> 291 </span> : * Example:
+<span class="lineNum"> 292 </span> : * \code
+<span class="lineNum"> 293 </span> : * void perform(const PatchList&lt;ITEM, TAG&gt;&amp; change)
+<span class="lineNum"> 294 </span> : * {
+<span class="lineNum"> 295 </span> : * collection.applyChange(change);
+<span class="lineNum"> 296 </span> : * undo.push_back(change.getReverse());
+<span class="lineNum"> 297 </span> : * }
+<span class="lineNum"> 298 </span> : * \endcode
+<span class="lineNum"> 299 </span> : */
+<span class="lineNum"> 300 </span> : // void applyChange(
+<span class="lineNum"> 301 </span> : // const PatchList&lt;
+<span class="lineNum"> 302 </span> : // typename coll_traits&lt;Self&gt;::item_type,
+<span class="lineNum"> 303 </span> : // typename coll_traits&lt;Self&gt;::tag_type&gt;&amp; change);
+<span class="lineNum"> 304 </span> : };
+<span class="lineNum"> 305 </span> :
+<span class="lineNum"> 306 </span> :
+<span class="lineNum"> 307 </span> : template&lt;typename COLL&gt;
+<span class="lineNum"> 308 </span> : class Inserter : public wibble::mixin::OutputIterator&lt; Inserter&lt;COLL&gt; &gt;
+<span class="lineNum"> 309 </span> : {
+<span class="lineNum"> 310 </span> : COLL&amp; coll;
+<span class="lineNum"> 311 </span> :
+<span class="lineNum"> 312 </span> : public:
+<span class="lineNum"> 313 </span><span class="lineCov"> 10 : Inserter(COLL&amp; coll) : coll(coll) {}</span>
+<span class="lineNum"> 314 </span> :
+<span class="lineNum"> 315 </span> : template&lt;typename Items, typename Tags&gt;
+<span class="lineNum"> 316 </span><span class="lineCov"> 63426 : Inserter&lt;COLL&gt;&amp; operator=(const std::pair&lt;Items, Tags&gt;&amp; data)</span>
+<span class="lineNum"> 317 </span> : {
+<span class="lineNum"> 318 </span><span class="lineCov"> 63426 : coll.insert(data.first, data.second);</span>
+<span class="lineNum"> 319 </span><span class="lineCov"> 63426 : return *this;</span>
+<span class="lineNum"> 320 </span> : }
+<span class="lineNum"> 321 </span> : };
+<span class="lineNum"> 322 </span> :
+<span class="lineNum"> 323 </span> : template&lt;typename COLL&gt;
+<span class="lineNum"> 324 </span><span class="lineCov"> 10 : Inserter&lt;COLL&gt; inserter(COLL&amp; target)</span>
+<span class="lineNum"> 325 </span> : {
+<span class="lineNum"> 326 </span><span class="lineCov"> 10 : return Inserter&lt;COLL&gt;(target);</span>
+<span class="lineNum"> 327 </span> : }
+<span class="lineNum"> 328 </span> :
+<span class="lineNum"> 329 </span> : }
+<span class="lineNum"> 330 </span> : }
+<span class="lineNum"> 331 </span> :
+<span class="lineNum"> 332 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 333 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/base.tcc.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/base.tcc.gcov.html
new file mode 100644
index 0000000..5389355
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/base.tcc.gcov.html
@@ -0,0 +1,258 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/coll/base.tcc</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/coll</a> - base.tcc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">18</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">88.9 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">16</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_COLL_BASE_TCC
+<span class="lineNum"> 2 </span> : #define TAGCOLL_COLL_BASE_TCC
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** \file
+<span class="lineNum"> 5 </span> : * Base mixins for tagged collections
+<span class="lineNum"> 6 </span> : */
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : /*
+<span class="lineNum"> 9 </span> : * Copyright (C) 2003,2004,2005,2006 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 12 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 13 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 14 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 19 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 20 </span> : *
+<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 22 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 24 </span> : */
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;tagcoll/coll/base.h&gt;
+<span class="lineNum"> 27 </span> : #include &lt;tagcoll/utils/set.h&gt;
+<span class="lineNum"> 28 </span> : #include &lt;algorithm&gt;
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : namespace tagcoll {
+<span class="lineNum"> 31 </span> : namespace coll {
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : template&lt;typename T&gt;
+<span class="lineNum"> 34 </span> : class coll_traits;
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : template&lt;typename Self&gt; template&lt;typename COLL&gt;
+<span class="lineNum"> 37 </span> : bool ReadonlyCollection&lt;Self&gt;::RelevanceOrder&lt;COLL&gt;::operator()(
+<span class="lineNum"> 38 </span> : const typename coll_traits&lt;Self&gt;::tag_type&amp; t1,
+<span class="lineNum"> 39 </span> : const typename coll_traits&lt;Self&gt;::tag_type&amp; t2)
+<span class="lineNum"> 40 </span> : {
+<span class="lineNum"> 41 </span> : // New cardinality divided by the square root of the old cardinality.
+<span class="lineNum"> 42 </span> : // The square root is used to downplay the very common tags a bit
+<span class="lineNum"> 43 </span> : int csub1 = second.getCardinality(t1);
+<span class="lineNum"> 44 </span> : float cfull1 = first.getCardinality(t1);
+<span class="lineNum"> 45 </span> : int csub2 = second.getCardinality(t2);
+<span class="lineNum"> 46 </span> : float cfull2 = first.getCardinality(t2);
+<span class="lineNum"> 47 </span> : float rel1 = (float)(csub1 * csub1) / cfull1;
+<span class="lineNum"> 48 </span> : float rel2 = (float)(csub2 * csub2) / cfull2;
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span> : return rel1 &lt; rel2;
+<span class="lineNum"> 51 </span> : // return 10000 * second.getCardinality(t1) / first.getCardinality(t1)
+<span class="lineNum"> 52 </span> : // &lt; 10000 * second.getCardinality(t2) / first.getCardinality(t2);
+<span class="lineNum"> 53 </span> : }
+<span class="lineNum"> 54 </span> :
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span> : template&lt;typename Self&gt;
+<span class="lineNum"> 57 </span> : bool ReadonlyCollection&lt;Self&gt;::hasTag(const typename coll_traits&lt;Self&gt;::tag_type&amp; tag) const
+<span class="lineNum"> 58 </span> : {
+<span class="lineNum"> 59 </span> : return !self().getItemsHavingTag(tag).empty();
+<span class="lineNum"> 60 </span> : }
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : template&lt;typename Self&gt; template&lt;typename ITEMS&gt;
+<span class="lineNum"> 63 </span><span class="lineCov"> 1 : typename coll_traits&lt;Self&gt;::tagset_type ReadonlyCollection&lt;Self&gt;::getTagsOfItems(const ITEMS&amp; items) const</span>
+<span class="lineNum"> 64 </span> : {
+<span class="lineNum"> 65 </span> : using namespace wibble::operators;
+<span class="lineNum"> 66 </span><span class="lineCov"> 1 : typename coll_traits&lt;Self&gt;::tagset_type res;</span>
+<span class="lineNum"> 67 </span><span class="lineCov"> 2 : for (typename ITEMS::const_iterator i = items.begin();</span>
+<span class="lineNum"> 68 </span> : i != items.end(); i++)
+<span class="lineNum"> 69 </span><span class="lineCov"> 1 : res |= self().getTagsOfItem(*i);</span>
+<span class="lineNum"> 70 </span><span class="lineNoCov"> 0 : return res;</span>
+<span class="lineNum"> 71 </span> : }
+<span class="lineNum"> 72 </span> :
+<span class="lineNum"> 73 </span> : template&lt;typename Self&gt; template&lt;typename TAGS&gt;
+<span class="lineNum"> 74 </span> : typename coll_traits&lt;Self&gt;::itemset_type ReadonlyCollection&lt;Self&gt;::getItemsHavingTags(const TAGS&amp; tags) const
+<span class="lineNum"> 75 </span> : {
+<span class="lineNum"> 76 </span> : using namespace wibble::operators;
+<span class="lineNum"> 77 </span><span class="lineCov"> 2 : if (tags.empty())</span>
+<span class="lineNum"> 78 </span><span class="lineNoCov"> 0 : return typename coll_traits&lt;Self&gt;::itemset_type();</span>
+<span class="lineNum"> 79 </span> :
+<span class="lineNum"> 80 </span><span class="lineCov"> 2 : typename TAGS::const_iterator i = tags.begin();</span>
+<span class="lineNum"> 81 </span><span class="lineCov"> 2 : typename coll_traits&lt;Self&gt;::itemset_type res = self().getItemsHavingTag(*i);</span>
+<span class="lineNum"> 82 </span> :
+<span class="lineNum"> 83 </span><span class="lineCov"> 9 : for (++i ; i != tags.end(); ++i)</span>
+<span class="lineNum"> 84 </span><span class="lineCov"> 7 : res &amp;= self().getItemsHavingTag(*i);</span>
+<span class="lineNum"> 85 </span> :
+<span class="lineNum"> 86 </span><span class="lineCov"> 2 : return res;</span>
+<span class="lineNum"> 87 </span> : }
+<span class="lineNum"> 88 </span> :
+<span class="lineNum"> 89 </span> : template&lt;typename Self&gt;
+<span class="lineNum"> 90 </span> : std::vector&lt;typename coll_traits&lt;Self&gt;::tag_type&gt; ReadonlyCollection&lt;Self&gt;::getAllTagsAsVector() const
+<span class="lineNum"> 91 </span> : {
+<span class="lineNum"> 92 </span> : std::set&lt;typename coll_traits&lt;Self&gt;::tag_type&gt; asSet = self().getAllTags();
+<span class="lineNum"> 93 </span> : std::vector&lt;typename coll_traits&lt;Self&gt;::tag_type&gt; res;
+<span class="lineNum"> 94 </span> : res.reserve(asSet.size());
+<span class="lineNum"> 95 </span> : std::copy(asSet.begin(), asSet.end(), back_inserter(res));
+<span class="lineNum"> 96 </span> : return res;
+<span class="lineNum"> 97 </span> : }
+<span class="lineNum"> 98 </span> :
+<span class="lineNum"> 99 </span> : template&lt;typename Self&gt;
+<span class="lineNum"> 100 </span> : unsigned int ReadonlyCollection&lt;Self&gt;::getCardinality(const typename coll_traits&lt;Self&gt;::tag_type&amp; tag) const
+<span class="lineNum"> 101 </span> : {
+<span class="lineNum"> 102 </span> : return self().getItemsHavingTag(tag).size();
+<span class="lineNum"> 103 </span> : }
+<span class="lineNum"> 104 </span> :
+<span class="lineNum"> 105 </span> : template&lt;typename Self&gt; template&lt;typename TAGS&gt;
+<span class="lineNum"> 106 </span> : typename coll_traits&lt;Self&gt;::tagset_type ReadonlyCollection&lt;Self&gt;::getCompanionTags(const TAGS&amp; tags) const
+<span class="lineNum"> 107 </span> : {
+<span class="lineNum"> 108 </span> : using namespace wibble::operators;
+<span class="lineNum"> 109 </span> : return self().getTagsOfItems(self().getItemsHavingTags(tags)) - tags;
+<span class="lineNum"> 110 </span> : }
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span> : template&lt;typename Self&gt; template&lt;typename TAGS&gt;
+<span class="lineNum"> 113 </span> : typename coll_traits&lt;Self&gt;::itemset_type ReadonlyCollection&lt;Self&gt;::getRelatedItems(const TAGS&amp; tags, int maxdistance) const
+<span class="lineNum"> 114 </span> : {
+<span class="lineNum"> 115 </span> : using namespace wibble::operators;
+<span class="lineNum"> 116 </span> :
+<span class="lineNum"> 117 </span> : typename coll_traits&lt;Self&gt;::itemset_type packages;
+<span class="lineNum"> 118 </span> : typename coll_traits&lt;Self&gt;::itemset_type res;
+<span class="lineNum"> 119 </span> :
+<span class="lineNum"> 120 </span> : // First get a list of packages that have a non-empty intersection with `tags'
+<span class="lineNum"> 121 </span> : for (typename TAGS::const_iterator i = tags.begin(); i != tags.end(); i++)
+<span class="lineNum"> 122 </span> : packages |= self().getItemsHavingTag(*i);
+<span class="lineNum"> 123 </span> :
+<span class="lineNum"> 124 </span> : // Then keep only those within the given distance
+<span class="lineNum"> 125 </span> : for (typename coll_traits&lt;Self&gt;::itemset_type::const_iterator i = packages.begin(); i != packages.end(); i++)
+<span class="lineNum"> 126 </span> : {
+<span class="lineNum"> 127 </span> : int dist = utils::set_distance(tags, self().getTagsOfItem(*i));
+<span class="lineNum"> 128 </span> : if (dist &gt;= 0 &amp;&amp; dist &lt;= maxdistance)
+<span class="lineNum"> 129 </span> : res |= *i;
+<span class="lineNum"> 130 </span> : }
+<span class="lineNum"> 131 </span> :
+<span class="lineNum"> 132 </span> : return res;
+<span class="lineNum"> 133 </span> : }
+<span class="lineNum"> 134 </span> :
+<span class="lineNum"> 135 </span> : template&lt;typename Self&gt; template&lt;typename OUT&gt;
+<span class="lineNum"> 136 </span><span class="lineCov"> 4 : void ReadonlyCollection&lt;Self&gt;::output(OUT out) const</span>
+<span class="lineNum"> 137 </span> : {
+<span class="lineNum"> 138 </span><span class="lineCov"> 126890 : for (typename Self::const_iterator i = self().begin();</span>
+<span class="lineNum"> 139 </span> : i != self().end(); ++i)
+<span class="lineNum"> 140 </span> : {
+<span class="lineNum"> 141 </span><span class="lineCov"> 84583 : *out = make_pair(wibble::singleton(i-&gt;first), i-&gt;second);</span>
+<span class="lineNum"> 142 </span><span class="lineCov"> 84587 : ++out;</span>
+<span class="lineNum"> 143 </span> : }
+<span class="lineNum"> 144 </span><span class="lineCov"> 9 : }</span>
+<span class="lineNum"> 145 </span> :
+<span class="lineNum"> 146 </span> : template&lt;typename Self&gt; template&lt;typename TAGS, typename OUT&gt;
+<span class="lineNum"> 147 </span> : void ReadonlyCollection&lt;Self&gt;::outputHavingTags(const TAGS&amp; tags, OUT out) const
+<span class="lineNum"> 148 </span> : {
+<span class="lineNum"> 149 </span> : typename coll_traits&lt;Self&gt;::itemset_type items = self().getItemsHavingTags(tags);
+<span class="lineNum"> 150 </span> : for (typename coll_traits&lt;Self&gt;::itemset_type::const_iterator i = items.begin();
+<span class="lineNum"> 151 </span> : i != items.end(); ++i)
+<span class="lineNum"> 152 </span> : {
+<span class="lineNum"> 153 </span> : *out = std::make_pair(wibble::singleton(*i), self().getTagsOfItem(*i));
+<span class="lineNum"> 154 </span> : ++out;
+<span class="lineNum"> 155 </span> : }
+<span class="lineNum"> 156 </span> : }
+<span class="lineNum"> 157 </span> :
+<span class="lineNum"> 158 </span> : template&lt;typename Self&gt;
+<span class="lineNum"> 159 </span> : std::vector&lt;typename coll_traits&lt;Self&gt;::tag_type&gt; ReadonlyCollection&lt;Self&gt;::tagsInCardinalityOrder() const
+<span class="lineNum"> 160 </span> : {
+<span class="lineNum"> 161 </span> : std::vector&lt;typename coll_traits&lt;Self&gt;::tag_type&gt; res = self().getAllTagsAsVector();
+<span class="lineNum"> 162 </span> : std::sort(res.begin(), res.end(), CardinalityOrder(self()));
+<span class="lineNum"> 163 </span> : return res;
+<span class="lineNum"> 164 </span> : }
+<span class="lineNum"> 165 </span> :
+<span class="lineNum"> 166 </span> : template&lt;typename Self&gt;
+<span class="lineNum"> 167 </span> : std::vector&lt;typename coll_traits&lt;Self&gt;::tag_type&gt; ReadonlyCollection&lt;Self&gt;::tagsInDiscriminanceOrder() const
+<span class="lineNum"> 168 </span> : {
+<span class="lineNum"> 169 </span> : std::vector&lt;typename coll_traits&lt;Self&gt;::tag_type&gt; res = self().getAllTagsAsVector();
+<span class="lineNum"> 170 </span> : std::sort(res.begin(), res.end(), DiscriminanceOrder(self()));
+<span class="lineNum"> 171 </span> : return res;
+<span class="lineNum"> 172 </span> : }
+<span class="lineNum"> 173 </span> :
+<span class="lineNum"> 174 </span> : /**
+<span class="lineNum"> 175 </span> : * Get a vector containing all tags in this collection, sorted by
+<span class="lineNum"> 176 </span> : * increasing relevance to the filtering applied between coll and this
+<span class="lineNum"> 177 </span> : * collection
+<span class="lineNum"> 178 </span> : */
+<span class="lineNum"> 179 </span> : template&lt;typename Self&gt; template&lt;typename COLL&gt;
+<span class="lineNum"> 180 </span> : std::vector&lt;typename coll_traits&lt;Self&gt;::tag_type&gt; ReadonlyCollection&lt;Self&gt;::tagsInRelevanceOrder(const COLL&amp; coll) const
+<span class="lineNum"> 181 </span> : {
+<span class="lineNum"> 182 </span> : std::vector&lt;typename coll_traits&lt;Self&gt;::tag_type&gt; res = self().getAllTagsAsVector();
+<span class="lineNum"> 183 </span> : std::sort(res.begin(), res.end(), RelevanceOrder&lt;COLL&gt;(coll, self()));
+<span class="lineNum"> 184 </span> : return res;
+<span class="lineNum"> 185 </span> : }
+<span class="lineNum"> 186 </span> :
+<span class="lineNum"> 187 </span> : }
+<span class="lineNum"> 188 </span><span class="lineCov"> 6 : }</span>
+<span class="lineNum"> 189 </span> :
+<span class="lineNum"> 190 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 191 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/index.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/index.html
new file mode 100644
index 0000000..0623d19
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/index.html
@@ -0,0 +1,137 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/coll</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - /usr/include/tagcoll-2.0.11/tagcoll/coll</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">177</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">79.7 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">141</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="base.h.gcov.html">base.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">11&nbsp;/&nbsp;11&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="base.tcc.gcov.html">base.tcc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=89 height=10 alt="88.9%"><img src="../../../../../snow.png" width=11 height=10 alt="88.9%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">88.9&nbsp;%</td>
+ <td class="coverNumHi">16&nbsp;/&nbsp;18&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="intdiskindex.h.gcov.html">intdiskindex.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=92 height=10 alt="92.1%"><img src="../../../../../snow.png" width=8 height=10 alt="92.1%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">92.1&nbsp;%</td>
+ <td class="coverNumHi">35&nbsp;/&nbsp;38&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="patched.h.gcov.html">patched.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=67 height=10 alt="66.7%"><img src="../../../../../snow.png" width=33 height=10 alt="66.7%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">66.7&nbsp;%</td>
+ <td class="coverNumHi">38&nbsp;/&nbsp;57&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="patched.tcc.gcov.html">patched.tcc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=59 height=10 alt="59.1%"><img src="../../../../../snow.png" width=41 height=10 alt="59.1%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">59.1&nbsp;%</td>
+ <td class="coverNumHi">13&nbsp;/&nbsp;22&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="simple.h.gcov.html">simple.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">14&nbsp;/&nbsp;14&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="simple.tcc.gcov.html">simple.tcc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=82 height=10 alt="82.4%"><img src="../../../../../snow.png" width=18 height=10 alt="82.4%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">82.4&nbsp;%</td>
+ <td class="coverNumHi">14&nbsp;/&nbsp;17&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/intdiskindex.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/intdiskindex.h.gcov.html
new file mode 100644
index 0000000..19678ae
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/intdiskindex.h.gcov.html
@@ -0,0 +1,265 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/coll/intdiskindex.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/coll</a> - intdiskindex.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">38</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">92.1 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">35</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_COLL_INT_DISK_INDEX_H
+<span class="lineNum"> 2 </span> : #define TAGCOLL_COLL_INT_DISK_INDEX_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** \file
+<span class="lineNum"> 5 </span> : * Fast on-disk index for tag data
+<span class="lineNum"> 6 </span> : */
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : /*
+<span class="lineNum"> 9 </span> : * Copyright (C) 2006 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 12 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 13 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 14 </span> : * (at your option) any later version.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 19 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 20 </span> : *
+<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 22 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 24 </span> : */
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;tagcoll/coll/base.h&gt;
+<span class="lineNum"> 27 </span> : #include &lt;tagcoll/diskindex/int.h&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : namespace tagcoll {
+<span class="lineNum"> 30 </span> : template&lt;typename ITEM, typename TAG&gt;
+<span class="lineNum"> 31 </span> : class PatchList;
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : namespace coll {
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : class IntDiskIndex;
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : template&lt;&gt;
+<span class="lineNum"> 38 </span> : struct coll_traits&lt; IntDiskIndex &gt;
+<span class="lineNum"> 39 </span> : {
+<span class="lineNum"> 40 </span> : typedef int item_type;
+<span class="lineNum"> 41 </span> : typedef int tag_type;
+<span class="lineNum"> 42 </span> : typedef std::set&lt;int&gt; tagset_type;
+<span class="lineNum"> 43 </span> : typedef std::set&lt;int&gt; itemset_type;
+<span class="lineNum"> 44 </span> : };
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> : /**
+<span class="lineNum"> 47 </span> : * Full TaggedCollection implementation on top of a persistent on-disk TDB
+<span class="lineNum"> 48 </span> : * database.
+<span class="lineNum"> 49 </span> : *
+<span class="lineNum"> 50 </span> : * It allows to efficiently query a collection without having to store it all
+<span class="lineNum"> 51 </span> : * into memory.
+<span class="lineNum"> 52 </span> : *
+<span class="lineNum"> 53 </span> : * If used for heavy modifications, the performance is slower compared to other
+<span class="lineNum"> 54 </span> : * in-memory collections. If database writes are mainly used for populating
+<span class="lineNum"> 55 </span> : * the index, then TDBIndexer should be used to create the index and
+<span class="lineNum"> 56 </span> : * TDBDiskIndex to access it afterwards.
+<span class="lineNum"> 57 </span> : */
+<span class="lineNum"> 58 </span> : class IntDiskIndex : public coll::ReadonlyCollection&lt; IntDiskIndex &gt;
+<span class="lineNum"> 59 </span> :
+<span class="lineNum"> 60 </span> : {
+<span class="lineNum"> 61 </span> : protected:
+<span class="lineNum"> 62 </span> : diskindex::Int pkgidx;
+<span class="lineNum"> 63 </span> : diskindex::Int tagidx;
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : public:
+<span class="lineNum"> 66 </span> : class const_iterator
+<span class="lineNum"> 67 </span> : {
+<span class="lineNum"> 68 </span> : const IntDiskIndex&amp; index;
+<span class="lineNum"> 69 </span> : int idx;
+<span class="lineNum"> 70 </span> : mutable std::pair&lt; int, std::set&lt;int&gt; &gt;* cached;
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span> : public:
+<span class="lineNum"> 73 </span> : // Builds an iterator
+<span class="lineNum"> 74 </span><span class="lineCov"> 8 : const_iterator(const IntDiskIndex&amp; index, int idx)</span>
+<span class="lineNum"> 75 </span><span class="lineCov"> 8 : : index(index), idx(idx), cached(0) {}</span>
+<span class="lineNum"> 76 </span> : // Builds the end iterator
+<span class="lineNum"> 77 </span><span class="lineCov"> 274893 : const_iterator(const IntDiskIndex&amp; index)</span>
+<span class="lineNum"> 78 </span><span class="lineCov"> 274893 : : index(index), idx(index.pkgidx.size()), cached(0) {}</span>
+<span class="lineNum"> 79 </span><span class="lineCov"> 528661 : ~const_iterator() { if (cached) delete cached; }</span>
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span><span class="lineCov"> 105725 : std::pair&lt; int, std::set&lt;int&gt; &gt; operator*() const</span>
+<span class="lineNum"> 82 </span> : {
+<span class="lineNum"> 83 </span><span class="lineCov"> 105725 : return std::make_pair(idx, index.getTagsOfItem(idx));</span>
+<span class="lineNum"> 84 </span> : }
+<span class="lineNum"> 85 </span><span class="lineCov"> 42290 : std::pair&lt; int, std::set&lt;int&gt; &gt;* operator-&gt;() const</span>
+<span class="lineNum"> 86 </span> : {
+<span class="lineNum"> 87 </span><span class="lineCov"> 42290 : if (!cached)</span>
+<span class="lineNum"> 88 </span><span class="lineCov"> 21145 : cached = new std::pair&lt; int, std::set&lt;int&gt; &gt;(operator*());</span>
+<span class="lineNum"> 89 </span><span class="lineCov"> 42290 : return cached;</span>
+<span class="lineNum"> 90 </span> : }
+<span class="lineNum"> 91 </span> :
+<span class="lineNum"> 92 </span><span class="lineCov"> 105725 : const_iterator operator++()</span>
+<span class="lineNum"> 93 </span> : {
+<span class="lineNum"> 94 </span><span class="lineCov"> 105725 : ++idx;</span>
+<span class="lineNum"> 95 </span><span class="lineCov"> 105725 : if (cached) { delete cached; cached = 0; }</span>
+<span class="lineNum"> 96 </span><span class="lineCov"> 105725 : return *this;</span>
+<span class="lineNum"> 97 </span> : }
+<span class="lineNum"> 98 </span><span class="lineCov"> 169161 : bool operator==(const const_iterator&amp; iter) const</span>
+<span class="lineNum"> 99 </span> : {
+<span class="lineNum"> 100 </span><span class="lineCov"> 169161 : return idx == iter.idx;</span>
+<span class="lineNum"> 101 </span> : }
+<span class="lineNum"> 102 </span><span class="lineCov"> 105732 : bool operator!=(const const_iterator&amp; iter) const</span>
+<span class="lineNum"> 103 </span> : {
+<span class="lineNum"> 104 </span><span class="lineCov"> 105732 : return idx != iter.idx;</span>
+<span class="lineNum"> 105 </span> : }
+<span class="lineNum"> 106 </span> : };
+<span class="lineNum"> 107 </span><span class="lineCov"> 8 : const_iterator begin() const { return const_iterator(*this, 0); }</span>
+<span class="lineNum"> 108 </span><span class="lineCov"> 274893 : const_iterator end() const { return const_iterator(*this); }</span>
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span> : /**
+<span class="lineNum"> 111 </span> : * Create a new IntDiskIndex
+<span class="lineNum"> 112 </span> : *
+<span class="lineNum"> 113 </span> : * @param filename
+<span class="lineNum"> 114 </span> : * The file name of the package index
+<span class="lineNum"> 115 </span> : * @param tagidx
+<span class="lineNum"> 116 </span> : * The file name of the tag index
+<span class="lineNum"> 117 </span> : * @param fromitem, fromtag, toitem, totag
+<span class="lineNum"> 118 </span> : * The Converter-s used to convert int and int to and from strings.
+<span class="lineNum"> 119 </span> : * If 0 is passed, this TDBDiskIndex will only be able to work with
+<span class="lineNum"> 120 </span> : * string items and string tags.
+<span class="lineNum"> 121 </span> : * @param write
+<span class="lineNum"> 122 </span> : * Set to false if the index should be opened in read-only mode. If
+<span class="lineNum"> 123 </span> : * opened in read-only mode, all non-const methods of this class will
+<span class="lineNum"> 124 </span> : * throw an exception if invoked.
+<span class="lineNum"> 125 </span> : * It defaults to true.
+<span class="lineNum"> 126 </span> : */
+<span class="lineNum"> 127 </span><span class="lineCov"> 10 : IntDiskIndex() {}</span>
+<span class="lineNum"> 128 </span> : IntDiskIndex(
+<span class="lineNum"> 129 </span> : const diskindex::MasterMMap&amp; master,
+<span class="lineNum"> 130 </span> : int pkgindex, int tagindex)
+<span class="lineNum"> 131 </span> : : pkgidx(master, pkgindex), tagidx(master, tagindex) {}
+<span class="lineNum"> 132 </span> :
+<span class="lineNum"> 133 </span><span class="lineCov"> 9 : void init(const diskindex::MasterMMap&amp; master, int pkgindex, int tagindex)</span>
+<span class="lineNum"> 134 </span> : {
+<span class="lineNum"> 135 </span><span class="lineCov"> 9 : pkgidx.init(master, pkgindex);</span>
+<span class="lineNum"> 136 </span><span class="lineCov"> 9 : tagidx.init(master, tagindex);</span>
+<span class="lineNum"> 137 </span><span class="lineCov"> 9 : }</span>
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> : std::set&lt;int&gt; getItemsHavingTag(const int&amp; tag) const;
+<span class="lineNum"> 140 </span> : std::set&lt;int&gt; getItemsHavingTags(const std::set&lt;int&gt;&amp; tags) const;
+<span class="lineNum"> 141 </span> : std::set&lt;int&gt; getTagsOfItem(const int&amp; item) const;
+<span class="lineNum"> 142 </span> : std::set&lt;int&gt; getTagsOfItems(const std::set&lt;int&gt;&amp; items) const;
+<span class="lineNum"> 143 </span> :
+<span class="lineNum"> 144 </span> : bool hasTag(const int&amp; tag) const
+<span class="lineNum"> 145 </span> : {
+<span class="lineNum"> 146 </span> : return tagidx.size(tag) &gt; 0;
+<span class="lineNum"> 147 </span> : }
+<span class="lineNum"> 148 </span> :
+<span class="lineNum"> 149 </span> : std::set&lt;int&gt; getTaggedItems() const;
+<span class="lineNum"> 150 </span> :
+<span class="lineNum"> 151 </span> : std::set&lt;int&gt; getAllTags() const;
+<span class="lineNum"> 152 </span> : std::vector&lt;int&gt; getAllTagsAsVector() const;
+<span class="lineNum"> 153 </span> :
+<span class="lineNum"> 154 </span> : unsigned int itemCount() const { return pkgidx.size(); }
+<span class="lineNum"> 155 </span> : unsigned int tagCount() const { return tagidx.size(); }
+<span class="lineNum"> 156 </span> :
+<span class="lineNum"> 157 </span><span class="lineNoCov"> 0 : unsigned int getCardinality(const int&amp; tag) const</span>
+<span class="lineNum"> 158 </span> : {
+<span class="lineNum"> 159 </span><span class="lineNoCov"> 0 : return tagidx.size(tag);</span>
+<span class="lineNum"> 160 </span> : }
+<span class="lineNum"> 161 </span> :
+<span class="lineNum"> 162 </span> : std::set&lt;int&gt; getCompanionTags(const std::set&lt;int&gt;&amp; tags) const;
+<span class="lineNum"> 163 </span> :
+<span class="lineNum"> 164 </span> : //void output(Consumer&lt;int, int&gt;&amp; consumer) const;
+<span class="lineNum"> 165 </span> : };
+<span class="lineNum"> 166 </span> :
+<span class="lineNum"> 167 </span> : class IntDiskIndexer
+<span class="lineNum"> 168 </span><span class="lineCov"> 2 : {</span>
+<span class="lineNum"> 169 </span> : protected:
+<span class="lineNum"> 170 </span> : diskindex::IntIndexer pkgidx;
+<span class="lineNum"> 171 </span> : diskindex::IntIndexer tagidx;
+<span class="lineNum"> 172 </span> :
+<span class="lineNum"> 173 </span> : public:
+<span class="lineNum"> 174 </span><span class="lineCov"> 1 : const diskindex::MMapIndexer&amp; pkgIndexer() const { return pkgidx; }</span>
+<span class="lineNum"> 175 </span><span class="lineCov"> 1 : const diskindex::MMapIndexer&amp; tagIndexer() const { return tagidx; }</span>
+<span class="lineNum"> 176 </span> :
+<span class="lineNum"> 177 </span> : template&lt;typename ITEMS, typename TAGS&gt;
+<span class="lineNum"> 178 </span><span class="lineCov"> 21133 : void insert(const ITEMS&amp; items, const TAGS&amp; tags)</span>
+<span class="lineNum"> 179 </span> : {
+<span class="lineNum"> 180 </span><span class="lineCov"> 21133 : if (tags.empty())</span>
+<span class="lineNum"> 181 </span><span class="lineNoCov"> 0 : return;</span>
+<span class="lineNum"> 182 </span><span class="lineCov"> 42266 : for (typename ITEMS::const_iterator it = items.begin();</span>
+<span class="lineNum"> 183 </span> : it != items.end(); ++it)
+<span class="lineNum"> 184 </span><span class="lineCov"> 126731 : for (typename TAGS::const_iterator ta = tags.begin();</span>
+<span class="lineNum"> 185 </span> : ta != tags.end(); ++ta)
+<span class="lineNum"> 186 </span> : {
+<span class="lineNum"> 187 </span><span class="lineCov"> 105598 : pkgidx.map(*it, *ta);</span>
+<span class="lineNum"> 188 </span><span class="lineCov"> 105598 : tagidx.map(*ta, *it);</span>
+<span class="lineNum"> 189 </span> : }
+<span class="lineNum"> 190 </span> : }
+<span class="lineNum"> 191 </span> : };
+<span class="lineNum"> 192 </span> :
+<span class="lineNum"> 193 </span> :
+<span class="lineNum"> 194 </span> : }
+<span class="lineNum"> 195 </span> : }
+<span class="lineNum"> 196 </span> :
+<span class="lineNum"> 197 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 198 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/patched.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/patched.h.gcov.html
new file mode 100644
index 0000000..78a82c0
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/patched.h.gcov.html
@@ -0,0 +1,307 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/coll/patched.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/coll</a> - patched.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">57</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">66.7 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">38</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_COLL_PATCHED_H
+<span class="lineNum"> 2 </span> : #define TAGCOLL_COLL_PATCHED_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** \file
+<span class="lineNum"> 5 </span> : * Wrap a Collection, preserving modifications as patches
+<span class="lineNum"> 6 </span> : */
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : /*
+<span class="lineNum"> 9 </span> : * Copyright (C) 2005,2006 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 12 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 13 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 14 </span> : * (at your option) any later version.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 19 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 20 </span> : *
+<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 22 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 24 </span> : */
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;tagcoll/coll/base.h&gt;
+<span class="lineNum"> 27 </span> : #include &lt;tagcoll/patch.h&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : namespace tagcoll {
+<span class="lineNum"> 30 </span> : template&lt;typename T1, typename T2&gt; class PatchList;
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : namespace coll {
+<span class="lineNum"> 33 </span> : template&lt;typename ROCOLL&gt;
+<span class="lineNum"> 34 </span> : class Patched;
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : template&lt;typename ROCOLL&gt;
+<span class="lineNum"> 37 </span> : struct coll_traits&lt; Patched&lt;ROCOLL&gt; &gt;
+<span class="lineNum"> 38 </span> : {
+<span class="lineNum"> 39 </span> : typedef typename coll_traits&lt;ROCOLL&gt;::item_type item_type;
+<span class="lineNum"> 40 </span> : typedef typename coll_traits&lt;ROCOLL&gt;::tag_type tag_type;
+<span class="lineNum"> 41 </span> : typedef typename coll_traits&lt;ROCOLL&gt;::tagset_type tagset_type;
+<span class="lineNum"> 42 </span> : typedef typename coll_traits&lt;ROCOLL&gt;::itemset_type itemset_type;
+<span class="lineNum"> 43 </span> : };
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : /**
+<span class="lineNum"> 46 </span> : * Wraps a collection by intercepting all changes to it and preserving them as
+<span class="lineNum"> 47 </span> : * a PatchList.
+<span class="lineNum"> 48 </span> : */
+<span class="lineNum"> 49 </span> : template&lt;typename ROCOLL&gt;
+<span class="lineNum"> 50 </span> : class Patched : public coll::Collection&lt; Patched&lt;ROCOLL&gt; &gt;
+<span class="lineNum"> 51 </span><span class="lineCov"> 10 : {</span>
+<span class="lineNum"> 52 </span> : public:
+<span class="lineNum"> 53 </span> : typedef tagcoll::Patch&lt;
+<span class="lineNum"> 54 </span> : typename coll_traits&lt;ROCOLL&gt;::item_type,
+<span class="lineNum"> 55 </span> : typename coll_traits&lt;ROCOLL&gt;::tag_type&gt; Patch;
+<span class="lineNum"> 56 </span> : typedef tagcoll::PatchList&lt;
+<span class="lineNum"> 57 </span> : typename coll_traits&lt;ROCOLL&gt;::item_type,
+<span class="lineNum"> 58 </span> : typename coll_traits&lt;ROCOLL&gt;::tag_type&gt; Patches;
+<span class="lineNum"> 59 </span> : typedef tagcoll::Patch&lt;
+<span class="lineNum"> 60 </span> : typename coll_traits&lt;ROCOLL&gt;::tag_type,
+<span class="lineNum"> 61 </span> : typename coll_traits&lt;ROCOLL&gt;::item_type&gt; RPatch;
+<span class="lineNum"> 62 </span> : typedef tagcoll::PatchList&lt;
+<span class="lineNum"> 63 </span> : typename coll_traits&lt;ROCOLL&gt;::tag_type,
+<span class="lineNum"> 64 </span> : typename coll_traits&lt;ROCOLL&gt;::item_type&gt; RPatches;
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span> : protected:
+<span class="lineNum"> 67 </span> : typedef typename coll_traits&lt;ROCOLL&gt;::item_type Item;
+<span class="lineNum"> 68 </span> : typedef typename coll_traits&lt;ROCOLL&gt;::tag_type Tag;
+<span class="lineNum"> 69 </span> : typedef typename coll_traits&lt;ROCOLL&gt;::itemset_type ItemSet;
+<span class="lineNum"> 70 </span> : typedef typename coll_traits&lt;ROCOLL&gt;::tagset_type TagSet;
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span> : const ROCOLL&amp; coll;
+<span class="lineNum"> 73 </span> : Patches m_changes;
+<span class="lineNum"> 74 </span> : RPatches m_rchanges;
+<span class="lineNum"> 75 </span> :
+<span class="lineNum"> 76 </span> : #if 0
+<span class="lineNum"> 77 </span> : virtual void consumeItem(const ITEM&amp; item, const std::set&lt;TAG&gt;&amp; tags);
+<span class="lineNum"> 78 </span> :
+<span class="lineNum"> 79 </span> : virtual std::set&lt;ITEM&gt; getItemsHavingTag(const TAG&amp; tag) const;
+<span class="lineNum"> 80 </span> : virtual std::set&lt;TAG&gt; getTagsOfItem(const ITEM&amp; item) const;
+<span class="lineNum"> 81 </span> : #endif
+<span class="lineNum"> 82 </span> :
+<span class="lineNum"> 83 </span> : public:
+<span class="lineNum"> 84 </span> : typedef std::pair&lt;Item, TagSet&gt; value_type;
+<span class="lineNum"> 85 </span> :
+<span class="lineNum"> 86 </span> : class const_iterator
+<span class="lineNum"> 87 </span> : {
+<span class="lineNum"> 88 </span> : const Patched&lt;ROCOLL&gt;&amp; coll;
+<span class="lineNum"> 89 </span> : typename ROCOLL::const_iterator ci;
+<span class="lineNum"> 90 </span> : typename Patches::const_iterator pi;
+<span class="lineNum"> 91 </span> : mutable typename Patched&lt;ROCOLL&gt;::value_type* cached_val;
+<span class="lineNum"> 92 </span> :
+<span class="lineNum"> 93 </span> : protected:
+<span class="lineNum"> 94 </span> : const_iterator(const Patched&lt;ROCOLL&gt;&amp; coll,
+<span class="lineNum"> 95 </span> : const typename ROCOLL::const_iterator&amp; ci,
+<span class="lineNum"> 96 </span><span class="lineCov"> 84592 : const typename Patches::const_iterator&amp; pi)</span>
+<span class="lineNum"> 97 </span><span class="lineCov"> 84592 : : coll(coll), ci(ci), pi(pi), cached_val(0) {}</span>
+<span class="lineNum"> 98 </span> :
+<span class="lineNum"> 99 </span> : public:
+<span class="lineNum"> 100 </span><span class="lineCov"> 148035 : ~const_iterator()</span>
+<span class="lineNum"> 101 </span> : {
+<span class="lineNum"> 102 </span><span class="lineCov"> 148035 : if (cached_val)</span>
+<span class="lineNum"> 103 </span><span class="lineNoCov"> 0 : delete cached_val;</span>
+<span class="lineNum"> 104 </span><span class="lineCov"> 148035 : }</span>
+<span class="lineNum"> 105 </span><span class="lineCov"> 84580 : const typename Patched&lt;ROCOLL&gt;::value_type operator*() const</span>
+<span class="lineNum"> 106 </span> : {
+<span class="lineNum"> 107 </span><span class="lineCov"> 84580 : if (cached_val)</span>
+<span class="lineNum"> 108 </span><span class="lineNoCov"> 0 : return *cached_val;</span>
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span><span class="lineCov"> 84580 : if (ci == coll.coll.end() &amp;&amp; pi == coll.m_changes.end())</span>
+<span class="lineNum"> 111 </span><span class="lineNoCov"> 0 : return *(typename Patched&lt;ROCOLL&gt;::value_type*)0;</span>
+<span class="lineNum"> 112 </span><span class="lineCov"> 84580 : else if (pi == coll.m_changes.end())</span>
+<span class="lineNum"> 113 </span><span class="lineCov"> 84580 : return *ci;</span>
+<span class="lineNum"> 114 </span><span class="lineNoCov"> 0 : else if (ci == coll.coll.end())</span>
+<span class="lineNum"> 115 </span><span class="lineNoCov"> 0 : return make_pair(pi-&gt;first, pi-&gt;second.added);</span>
+<span class="lineNum"> 116 </span><span class="lineNoCov"> 0 : else if (ci-&gt;first &lt; pi-&gt;first)</span>
+<span class="lineNum"> 117 </span><span class="lineNoCov"> 0 : return *ci;</span>
+<span class="lineNum"> 118 </span><span class="lineNoCov"> 0 : else if (ci-&gt;first &gt; pi-&gt;first)</span>
+<span class="lineNum"> 119 </span><span class="lineNoCov"> 0 : return make_pair(pi-&gt;first, pi-&gt;second.added);</span>
+<span class="lineNum"> 120 </span> : else
+<span class="lineNum"> 121 </span><span class="lineNoCov"> 0 : return make_pair(ci-&gt;first, pi-&gt;second.apply(ci-&gt;second));</span>
+<span class="lineNum"> 122 </span> : }
+<span class="lineNum"> 123 </span><span class="lineCov"> 211450 : const typename Patched&lt;ROCOLL&gt;::value_type* operator-&gt;() const</span>
+<span class="lineNum"> 124 </span> : {
+<span class="lineNum"> 125 </span><span class="lineCov"> 211450 : if (cached_val)</span>
+<span class="lineNum"> 126 </span><span class="lineCov"> 126870 : return cached_val;</span>
+<span class="lineNum"> 127 </span><span class="lineCov"> 84580 : return cached_val = new typename Patched&lt;ROCOLL&gt;::value_type(*(*this));</span>
+<span class="lineNum"> 128 </span> : }
+<span class="lineNum"> 129 </span><span class="lineCov"> 84580 : const_iterator&amp; operator++()</span>
+<span class="lineNum"> 130 </span> : {
+<span class="lineNum"> 131 </span><span class="lineCov"> 84580 : if (ci == coll.coll.end() &amp;&amp; pi == coll.m_changes.end())</span>
+<span class="lineNum"> 132 </span> : ;
+<span class="lineNum"> 133 </span><span class="lineCov"> 84580 : else if (pi == coll.m_changes.end())</span>
+<span class="lineNum"> 134 </span><span class="lineCov"> 84580 : ++ci;</span>
+<span class="lineNum"> 135 </span><span class="lineNoCov"> 0 : else if (ci == coll.coll.end())</span>
+<span class="lineNum"> 136 </span><span class="lineNoCov"> 0 : ++pi;</span>
+<span class="lineNum"> 137 </span><span class="lineNoCov"> 0 : else if (ci-&gt;first &lt; pi-&gt;first)</span>
+<span class="lineNum"> 138 </span><span class="lineNoCov"> 0 : ++ci;</span>
+<span class="lineNum"> 139 </span><span class="lineNoCov"> 0 : else if (ci-&gt;first &gt; pi-&gt;first)</span>
+<span class="lineNum"> 140 </span><span class="lineNoCov"> 0 : ++pi;</span>
+<span class="lineNum"> 141 </span> : else
+<span class="lineNum"> 142 </span> : {
+<span class="lineNum"> 143 </span><span class="lineNoCov"> 0 : ++ci;</span>
+<span class="lineNum"> 144 </span><span class="lineNoCov"> 0 : ++pi;</span>
+<span class="lineNum"> 145 </span> : }
+<span class="lineNum"> 146 </span><span class="lineCov"> 84580 : if (cached_val)</span>
+<span class="lineNum"> 147 </span> : {
+<span class="lineNum"> 148 </span><span class="lineCov"> 84580 : delete cached_val;</span>
+<span class="lineNum"> 149 </span><span class="lineCov"> 84580 : cached_val = 0;</span>
+<span class="lineNum"> 150 </span> : }
+<span class="lineNum"> 151 </span><span class="lineCov"> 84580 : return *this;</span>
+<span class="lineNum"> 152 </span> : }
+<span class="lineNum"> 153 </span><span class="lineCov"> 1 : bool operator==(const const_iterator&amp; iter) const</span>
+<span class="lineNum"> 154 </span> : {
+<span class="lineNum"> 155 </span><span class="lineCov"> 1 : return ci == iter.ci &amp;&amp; pi == iter.pi;</span>
+<span class="lineNum"> 156 </span> : }
+<span class="lineNum"> 157 </span><span class="lineCov"> 84585 : bool operator!=(const const_iterator&amp; iter) const</span>
+<span class="lineNum"> 158 </span> : {
+<span class="lineNum"> 159 </span><span class="lineCov"> 84585 : return ci != iter.ci || pi != iter.pi;</span>
+<span class="lineNum"> 160 </span> : }
+<span class="lineNum"> 161 </span> :
+<span class="lineNum"> 162 </span> : friend class Patched&lt;ROCOLL&gt;;
+<span class="lineNum"> 163 </span> : };
+<span class="lineNum"> 164 </span><span class="lineCov"> 6 : const_iterator begin() const { return const_iterator(*this, coll.begin(), m_changes.begin()); }</span>
+<span class="lineNum"> 165 </span><span class="lineCov"> 84586 : const_iterator end() const { return const_iterator(*this, coll.end(), m_changes.end()); }</span>
+<span class="lineNum"> 166 </span> :
+<span class="lineNum"> 167 </span><span class="lineCov"> 10 : Patched(const ROCOLL&amp; coll) : coll(coll) {}</span>
+<span class="lineNum"> 168 </span> :
+<span class="lineNum"> 169 </span> : template&lt;typename ITEMS, typename TAGS&gt;
+<span class="lineNum"> 170 </span> : void insert(const ITEMS&amp; items, const TAGS&amp; tags);
+<span class="lineNum"> 171 </span> :
+<span class="lineNum"> 172 </span> : template&lt;typename ITEMS&gt;
+<span class="lineNum"> 173 </span> : void insert(const ITEMS&amp; items, const wibble::Empty&lt;Tag&gt;&amp; tags)
+<span class="lineNum"> 174 </span> : {
+<span class="lineNum"> 175 </span> : // Nothing to do in this case
+<span class="lineNum"> 176 </span> : }
+<span class="lineNum"> 177 </span> :
+<span class="lineNum"> 178 </span> : /**
+<span class="lineNum"> 179 </span> : * Removes all items from the collection
+<span class="lineNum"> 180 </span> : */
+<span class="lineNum"> 181 </span> : void clear();
+<span class="lineNum"> 182 </span> :
+<span class="lineNum"> 183 </span> : /**
+<span class="lineNum"> 184 </span> : * Get the changes that have been applied to this collection
+<span class="lineNum"> 185 </span> : */
+<span class="lineNum"> 186 </span><span class="lineCov"> 4 : const Patches&amp; changes() const { return m_changes; }</span>
+<span class="lineNum"> 187 </span> :
+<span class="lineNum"> 188 </span> : /**
+<span class="lineNum"> 189 </span> : * Throw away all changes previously applied to this collection
+<span class="lineNum"> 190 </span> : */
+<span class="lineNum"> 191 </span> : void resetChanges() { m_changes.clear(); m_rchanges.clear(); }
+<span class="lineNum"> 192 </span> :
+<span class="lineNum"> 193 </span> : /**
+<span class="lineNum"> 194 </span> : * Set the changes list to a specific patch list
+<span class="lineNum"> 195 </span> : */
+<span class="lineNum"> 196 </span><span class="lineNoCov"> 0 : void setChanges(const Patches&amp; changes);</span>
+<span class="lineNum"> 197 </span> :
+<span class="lineNum"> 198 </span> : /**
+<span class="lineNum"> 199 </span> : * Add a specific patch list to the changes list
+<span class="lineNum"> 200 </span> : */
+<span class="lineNum"> 201 </span><span class="lineCov"> 2 : void addChanges(const Patches&amp; changes);</span>
+<span class="lineNum"> 202 </span> :
+<span class="lineNum"> 203 </span> : bool hasTag(const Tag&amp; tag) const;
+<span class="lineNum"> 204 </span> :
+<span class="lineNum"> 205 </span><span class="lineCov"> 5 : TagSet getTagsOfItem(const Item&amp; item) const</span>
+<span class="lineNum"> 206 </span> : {
+<span class="lineNum"> 207 </span><span class="lineCov"> 5 : return m_changes.patch(item, coll.getTagsOfItem(item));</span>
+<span class="lineNum"> 208 </span> : }
+<span class="lineNum"> 209 </span><span class="lineCov"> 9 : ItemSet getItemsHavingTag(const typename coll_traits&lt;ROCOLL&gt;::tag_type&amp; tag) const</span>
+<span class="lineNum"> 210 </span> : {
+<span class="lineNum"> 211 </span><span class="lineCov"> 9 : return m_rchanges.patch(tag, coll.getItemsHavingTag(tag));</span>
+<span class="lineNum"> 212 </span> : }
+<span class="lineNum"> 213 </span> :
+<span class="lineNum"> 214 </span> : ItemSet getTaggedItems() const;
+<span class="lineNum"> 215 </span><span class="lineCov"> 1 : TagSet getAllTags() const;</span>
+<span class="lineNum"> 216 </span> :
+<span class="lineNum"> 217 </span> : unsigned int tagCount() const { return getAllTags().size(); }
+<span class="lineNum"> 218 </span> :
+<span class="lineNum"> 219 </span> : unsigned int getCardinality(const Tag&amp; tag) const;
+<span class="lineNum"> 220 </span> :
+<span class="lineNum"> 221 </span><span class="lineCov"> 2 : void applyChange(const Patches&amp; change) { this-&gt;addChanges(change); }</span>
+<span class="lineNum"> 222 </span> :
+<span class="lineNum"> 223 </span> : #if 0
+<span class="lineNum"> 224 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 225 </span> : void output(OUT out) const
+<span class="lineNum"> 226 </span> : {
+<span class="lineNum"> 227 </span> : for (const_iterator i = begin(); i != end(); ++i)
+<span class="lineNum"> 228 </span> : {
+<span class="lineNum"> 229 </span> : *out = *i;
+<span class="lineNum"> 230 </span> : ++out;
+<span class="lineNum"> 231 </span> : }
+<span class="lineNum"> 232 </span> : }
+<span class="lineNum"> 233 </span> : #endif
+<span class="lineNum"> 234 </span> : };
+<span class="lineNum"> 235 </span> :
+<span class="lineNum"> 236 </span> : }
+<span class="lineNum"> 237 </span> : }
+<span class="lineNum"> 238 </span> :
+<span class="lineNum"> 239 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 240 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/patched.tcc.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/patched.tcc.gcov.html
new file mode 100644
index 0000000..d6a3fec
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/patched.tcc.gcov.html
@@ -0,0 +1,274 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/coll/patched.tcc</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/coll</a> - patched.tcc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">22</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">59.1 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">13</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /*
+<span class="lineNum"> 2 </span> : * Wrap a Collection, preserving modifications as patches
+<span class="lineNum"> 3 </span> : *
+<span class="lineNum"> 4 </span> : * Copyright (C) 2005,2006 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 5 </span> : *
+<span class="lineNum"> 6 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 7 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 8 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 9 </span> : * (at your option) any later version.
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 12 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 13 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 14 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 17 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 18 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 19 </span> : */
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : #ifndef TAGCOLL_COLL_PATCHED_TCC
+<span class="lineNum"> 22 </span> : #define TAGCOLL_COLL_PATCHED_TCC
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : #include &lt;tagcoll/coll/patched.h&gt;
+<span class="lineNum"> 25 </span> : #include &lt;tagcoll/utils/set.h&gt;
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #include &lt;wibble/operators.h&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : using namespace std;
+<span class="lineNum"> 30 </span> : using namespace wibble::operators;
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : namespace tagcoll {
+<span class="lineNum"> 33 </span> : namespace coll {
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : template&lt;typename ROCOLL&gt; template&lt;typename ITEMS, typename TAGS&gt;
+<span class="lineNum"> 36 </span> : void Patched&lt;ROCOLL&gt;::insert(const ITEMS&amp; items, const TAGS&amp; tags)
+<span class="lineNum"> 37 </span> : {
+<span class="lineNum"> 38 </span> : Patches changes;
+<span class="lineNum"> 39 </span> : for (typename ITEMS::const_iterator i = items.begin();
+<span class="lineNum"> 40 </span> : i != items.end(); ++i)
+<span class="lineNum"> 41 </span> : changes.addPatch(Patch(*i, tags, TagSet()));
+<span class="lineNum"> 42 </span> : addChanges(changes);
+<span class="lineNum"> 43 </span> : }
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> : template&lt;typename ROCOLL&gt;
+<span class="lineNum"> 47 </span> : void Patched&lt;ROCOLL&gt;::clear()
+<span class="lineNum"> 48 </span> : {
+<span class="lineNum"> 49 </span> : // Remove all patches
+<span class="lineNum"> 50 </span> : m_changes.clear();
+<span class="lineNum"> 51 </span> : m_rchanges.clear();
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span> : // Add all tagsets of the underlying collection as removed tags in the patch
+<span class="lineNum"> 54 </span> : for (typename ROCOLL::const_iterator i = coll.begin();
+<span class="lineNum"> 55 </span> : i != coll.end(); ++i)
+<span class="lineNum"> 56 </span> : {
+<span class="lineNum"> 57 </span> : m_changes.addPatch(Patch(i-&gt;first, std::set&lt;Tag&gt;(), i-&gt;second));
+<span class="lineNum"> 58 </span> :
+<span class="lineNum"> 59 </span> : for (typename TagSet::const_iterator j = i-&gt;second.begin();
+<span class="lineNum"> 60 </span> : j != i-&gt;second.end(); ++j)
+<span class="lineNum"> 61 </span> : m_rchanges.addPatch(Patch(*j, wibble::Empty&lt;Tag&gt;(), wibble::singleton(i-&gt;first)));
+<span class="lineNum"> 62 </span> : }
+<span class="lineNum"> 63 </span> : }
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : template&lt;typename ROCOLL&gt;
+<span class="lineNum"> 66 </span> : void Patched&lt;ROCOLL&gt;::setChanges(const Patches&amp; changes)
+<span class="lineNum"> 67 </span> : {
+<span class="lineNum"> 68 </span><span class="lineNoCov"> 0 : this-&gt;m_changes.clear();</span>
+<span class="lineNum"> 69 </span><span class="lineNoCov"> 0 : this-&gt;m_rchanges.clear();</span>
+<span class="lineNum"> 70 </span> :
+<span class="lineNum"> 71 </span><span class="lineNoCov"> 0 : addChanges(changes);</span>
+<span class="lineNum"> 72 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span> : template&lt;typename ROCOLL&gt;
+<span class="lineNum"> 75 </span> : void Patched&lt;ROCOLL&gt;::addChanges(const Patches&amp; changes)
+<span class="lineNum"> 76 </span> : {
+<span class="lineNum"> 77 </span> : // Simplify the patch against the contents of `coll' before adding it.
+<span class="lineNum"> 78 </span><span class="lineCov"> 4 : for (typename Patches::const_iterator i = changes.begin(); i != changes.end(); ++i)</span>
+<span class="lineNum"> 79 </span> : // Consider only valid items
+<span class="lineNum"> 80 </span><span class="lineCov"> 2 : if (i-&gt;first != Item())</span>
+<span class="lineNum"> 81 </span> : {
+<span class="lineNum"> 82 </span> : // Merge with existing patches
+<span class="lineNum"> 83 </span><span class="lineCov"> 2 : this-&gt;m_changes.addPatch(i-&gt;second);</span>
+<span class="lineNum"> 84 </span> : // Simplify the result
+<span class="lineNum"> 85 </span><span class="lineCov"> 2 : this-&gt;m_changes.removeRedundant(i-&gt;first, coll.getTagsOfItem(i-&gt;first));</span>
+<span class="lineNum"> 86 </span> : }
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span><span class="lineCov"> 2 : RPatches rchanges;</span>
+<span class="lineNum"> 89 </span><span class="lineCov"> 2 : rchanges.addPatchInverted(changes);</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 4 : for (typename RPatches::const_iterator i = rchanges.begin(); i != rchanges.end(); ++i)</span>
+<span class="lineNum"> 91 </span> : // Consider only valid tags
+<span class="lineNum"> 92 </span><span class="lineCov"> 2 : if (i-&gt;first != Tag())</span>
+<span class="lineNum"> 93 </span> : {
+<span class="lineNum"> 94 </span> : // Merge with existing patches
+<span class="lineNum"> 95 </span><span class="lineCov"> 2 : this-&gt;m_rchanges.addPatch(i-&gt;second);</span>
+<span class="lineNum"> 96 </span> : // Simplify the result
+<span class="lineNum"> 97 </span><span class="lineCov"> 4 : this-&gt;m_rchanges.removeRedundant(i-&gt;first, coll.getItemsHavingTag(i-&gt;first));</span>
+<span class="lineNum"> 98 </span> : }
+<span class="lineNum"> 99 </span><span class="lineCov"> 2 : }</span>
+<span class="lineNum"> 100 </span> :
+<span class="lineNum"> 101 </span> : template&lt;typename ROCOLL&gt;
+<span class="lineNum"> 102 </span> : bool Patched&lt;ROCOLL&gt;::hasTag(const Tag&amp; tag) const
+<span class="lineNum"> 103 </span> : {
+<span class="lineNum"> 104 </span> : typename RPatches::const_iterator i = m_rchanges.find(tag);
+<span class="lineNum"> 105 </span> : if (i == m_rchanges.end())
+<span class="lineNum"> 106 </span> : return coll.hasTag(tag);
+<span class="lineNum"> 107 </span> : if (! i-&gt;second.added.empty())
+<span class="lineNum"> 108 </span> : return true;
+<span class="lineNum"> 109 </span> : return !this-&gt;getItemsHavingTag(tag).empty();
+<span class="lineNum"> 110 </span> : }
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span> : template&lt;typename ROCOLL&gt;
+<span class="lineNum"> 113 </span> : typename coll_traits&lt;ROCOLL&gt;::itemset_type Patched&lt;ROCOLL&gt;::getTaggedItems() const
+<span class="lineNum"> 114 </span> : {
+<span class="lineNum"> 115 </span> : ItemSet res(coll.getTaggedItems());
+<span class="lineNum"> 116 </span> : for (typename Patches::const_iterator i = m_changes.begin();
+<span class="lineNum"> 117 </span> : i != m_changes.end(); ++i)
+<span class="lineNum"> 118 </span> : if (!i-&gt;second.added.empty())
+<span class="lineNum"> 119 </span> : // Add packages for which tags are added
+<span class="lineNum"> 120 </span> : res |= i-&gt;first;
+<span class="lineNum"> 121 </span> : else if (getTagsOfItem(i-&gt;first).empty())
+<span class="lineNum"> 122 </span> : // Remove the packages to which the patch removes all tags
+<span class="lineNum"> 123 </span> : res -= i-&gt;first;
+<span class="lineNum"> 124 </span> : return res;
+<span class="lineNum"> 125 </span> : }
+<span class="lineNum"> 126 </span> :
+<span class="lineNum"> 127 </span> : template&lt;typename ROCOLL&gt;
+<span class="lineNum"> 128 </span> : typename coll_traits&lt;ROCOLL&gt;::tagset_type Patched&lt;ROCOLL&gt;::getAllTags() const
+<span class="lineNum"> 129 </span> : {
+<span class="lineNum"> 130 </span><span class="lineCov"> 1 : TagSet res(coll.getAllTags());</span>
+<span class="lineNum"> 131 </span><span class="lineCov"> 1 : for (typename RPatches::const_iterator i = m_rchanges.begin();</span>
+<span class="lineNum"> 132 </span> : i != m_rchanges.end(); ++i)
+<span class="lineNum"> 133 </span><span class="lineNoCov"> 0 : if (!i-&gt;second.added.empty())</span>
+<span class="lineNum"> 134 </span> : // Add tags for which packages are added
+<span class="lineNum"> 135 </span><span class="lineNoCov"> 0 : res |= i-&gt;first;</span>
+<span class="lineNum"> 136 </span><span class="lineNoCov"> 0 : else if (coll.getCardinality(i-&gt;first) - i-&gt;second.removed.size() &lt;= 0)</span>
+<span class="lineNum"> 137 </span> : // Remove the tags to which the patch removes all items
+<span class="lineNum"> 138 </span><span class="lineNoCov"> 0 : res -= i-&gt;first;</span>
+<span class="lineNum"> 139 </span><span class="lineNoCov"> 0 : return res;</span>
+<span class="lineNum"> 140 </span> : }
+<span class="lineNum"> 141 </span> :
+<span class="lineNum"> 142 </span> : #if 0
+<span class="lineNum"> 143 </span> : template&lt;typename ITEM, typename TAG, typename OUT&gt;
+<span class="lineNum"> 144 </span> : class UnpatchedOnly : public wibble::mixin::OutputIterator&lt; UnpatchedOnly&lt;ITEM, TAG, OUT&gt; &gt;
+<span class="lineNum"> 145 </span> : {
+<span class="lineNum"> 146 </span> : protected:
+<span class="lineNum"> 147 </span> : OUT out;
+<span class="lineNum"> 148 </span> : const PatchList&lt;ITEM, TAG&gt;&amp; changes;
+<span class="lineNum"> 149 </span> :
+<span class="lineNum"> 150 </span> : public:
+<span class="lineNum"> 151 </span> : UnpatchedOnly(const PatchList&lt;ITEM, TAG&gt;&amp; changes, const OUT&amp; out) : out(out), changes(changes) {}
+<span class="lineNum"> 152 </span> :
+<span class="lineNum"> 153 </span> : UnpatchedOnly&lt;ITEM, TAG, OUT&gt;&amp; operator++() { return *this; }
+<span class="lineNum"> 154 </span> :
+<span class="lineNum"> 155 </span> : template&lt;typename Items, typename Tags&gt;
+<span class="lineNum"> 156 </span> : UnpatchedOnly&lt;ITEM, TAG, OUT&gt;&amp; operator=(const std::pair&lt;Items, Tags&gt;&amp; data)
+<span class="lineNum"> 157 </span> : {
+<span class="lineNum"> 158 </span> : for (typename Items::const_iterator i = data.first.begin();
+<span class="lineNum"> 159 </span> : i != data.first.end(); ++i)
+<span class="lineNum"> 160 </span> : if (changes.find(*i) == changes.end())
+<span class="lineNum"> 161 </span> : {
+<span class="lineNum"> 162 </span> : *out = data;
+<span class="lineNum"> 163 </span> : ++out;
+<span class="lineNum"> 164 </span> : }
+<span class="lineNum"> 165 </span> : return *this;
+<span class="lineNum"> 166 </span> : }
+<span class="lineNum"> 167 </span> : };
+<span class="lineNum"> 168 </span> :
+<span class="lineNum"> 169 </span> : template&lt;typename ITEM, typename TAG, typename OUT&gt;
+<span class="lineNum"> 170 </span> : UnpatchedOnly&lt;ITEM, TAG, OUT&gt; unpatchedOnly(const PatchList&lt;ITEM, TAG&gt;&amp; changes, const OUT&amp; out)
+<span class="lineNum"> 171 </span> : {
+<span class="lineNum"> 172 </span> : return UnpatchedOnly&lt;ITEM, TAG, OUT&gt;(changes, out);
+<span class="lineNum"> 173 </span> : }
+<span class="lineNum"> 174 </span> :
+<span class="lineNum"> 175 </span> : template&lt;class ITEM, class TAG&gt;
+<span class="lineNum"> 176 </span> : void Patched&lt;ITEM, TAG&gt;::output(Consumer&lt;ITEM, TAG&gt;&amp; cons) const
+<span class="lineNum"> 177 </span> : {
+<span class="lineNum"> 178 </span> : // First, only pass the unpatched items
+<span class="lineNum"> 179 </span> : coll.outputToIterator(unpatchedOnly(changes, consumer(cons)));
+<span class="lineNum"> 180 </span> :
+<span class="lineNum"> 181 </span> : // Then output the items in the patch
+<span class="lineNum"> 182 </span> : for (typename PatchList&lt;ITEM, TAG&gt;::const_iterator i = changes.begin();
+<span class="lineNum"> 183 </span> : i != changes.end(); i++)
+<span class="lineNum"> 184 </span> : cons.consume(i-&gt;first,
+<span class="lineNum"> 185 </span> : changes.patch(i-&gt;first, coll.getTags(i-&gt;first)));
+<span class="lineNum"> 186 </span> : }
+<span class="lineNum"> 187 </span> : #endif
+<span class="lineNum"> 188 </span> :
+<span class="lineNum"> 189 </span> : template&lt;typename ROCOLL&gt;
+<span class="lineNum"> 190 </span> : unsigned int Patched&lt;ROCOLL&gt;::getCardinality(const Tag&amp; tag) const
+<span class="lineNum"> 191 </span> : {
+<span class="lineNum"> 192 </span> : typename RPatches::const_iterator i = m_rchanges.find(tag);
+<span class="lineNum"> 193 </span> : if (i == m_rchanges.end())
+<span class="lineNum"> 194 </span> : return coll.getCardinality(tag);
+<span class="lineNum"> 195 </span> : else
+<span class="lineNum"> 196 </span> : return coll.getCardinality(tag) + i-&gt;second.added.size() - i-&gt;second.removed.size();
+<span class="lineNum"> 197 </span> : }
+<span class="lineNum"> 198 </span> :
+<span class="lineNum"> 199 </span> : }
+<span class="lineNum"> 200 </span> : }
+<span class="lineNum"> 201 </span> :
+<span class="lineNum"> 202 </span> : #include &lt;tagcoll/coll/base.tcc&gt;
+<span class="lineNum"> 203 </span> : #include &lt;tagcoll/patch.tcc&gt;
+<span class="lineNum"> 204 </span> :
+<span class="lineNum"> 205 </span> : #endif
+<span class="lineNum"> 206 </span> :
+<span class="lineNum"> 207 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/simple.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/simple.h.gcov.html
new file mode 100644
index 0000000..3ffdd0c
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/simple.h.gcov.html
@@ -0,0 +1,205 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/coll/simple.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/coll</a> - simple.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">14</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">14</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_COLL_SIMPLE_H
+<span class="lineNum"> 2 </span> : #define TAGCOLL_COLL_SIMPLE_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** \file
+<span class="lineNum"> 5 </span> : * Simple tagged collection.
+<span class="lineNum"> 6 </span> : *
+<span class="lineNum"> 7 </span> : * Also used for merging tags of items appearing multiple times in a stream of
+<span class="lineNum"> 8 </span> : * tagged items
+<span class="lineNum"> 9 </span> : */
+<span class="lineNum"> 10 </span> :
+<span class="lineNum"> 11 </span> : /*
+<span class="lineNum"> 12 </span> : * Copyright (C) 2003,2004,2005,2006 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 13 </span> : *
+<span class="lineNum"> 14 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 15 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 16 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 17 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 18 </span> : *
+<span class="lineNum"> 19 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 20 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 21 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 22 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 23 </span> : *
+<span class="lineNum"> 24 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 25 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 26 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 27 </span> : */
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : #include &lt;tagcoll/coll/base.h&gt;
+<span class="lineNum"> 30 </span> : #include &lt;set&gt;
+<span class="lineNum"> 31 </span> : #include &lt;map&gt;
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : namespace tagcoll {
+<span class="lineNum"> 34 </span> : template&lt;typename ITEM, typename TAG&gt;
+<span class="lineNum"> 35 </span> : class PatchList;
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : namespace coll {
+<span class="lineNum"> 38 </span> :
+<span class="lineNum"> 39 </span> : template&lt;typename ITEM, typename TAG&gt;
+<span class="lineNum"> 40 </span> : class Simple;
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span> : template&lt;typename ITEM, typename TAG&gt;
+<span class="lineNum"> 43 </span> : struct coll_traits&lt; Simple&lt;ITEM, TAG&gt; &gt;
+<span class="lineNum"> 44 </span> : {
+<span class="lineNum"> 45 </span> : typedef ITEM item_type;
+<span class="lineNum"> 46 </span> : typedef TAG tag_type;
+<span class="lineNum"> 47 </span> : typedef std::set&lt;ITEM&gt; tagset_type;
+<span class="lineNum"> 48 </span> : typedef std::set&lt;TAG&gt; itemset_type;
+<span class="lineNum"> 49 </span> : };
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> :
+<span class="lineNum"> 52 </span> : /**
+<span class="lineNum"> 53 </span> : * Simple Collection.
+<span class="lineNum"> 54 </span> : *
+<span class="lineNum"> 55 </span> : * It can be used to merge input values: if an item is added multiple times,
+<span class="lineNum"> 56 </span> : * its various tagsets are merged in a single one.
+<span class="lineNum"> 57 </span> : *
+<span class="lineNum"> 58 </span> : * It is also a full-featured collection, although not very optimized.
+<span class="lineNum"> 59 </span> : */
+<span class="lineNum"> 60 </span> : template&lt;typename ITEM, typename TAG&gt;
+<span class="lineNum"> 61 </span> : class Simple : public coll::Collection&lt; Simple&lt;ITEM, TAG&gt; &gt;
+<span class="lineNum"> 62 </span><span class="lineCov"> 14 : {</span>
+<span class="lineNum"> 63 </span> : protected:
+<span class="lineNum"> 64 </span> : std::map&lt; ITEM, std::set&lt;TAG&gt; &gt; coll;
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span> : #if 0
+<span class="lineNum"> 67 </span> : virtual void consumeItem(const ITEM&amp; item, const std::set&lt;TAG&gt;&amp; tags);
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span> : virtual std::set&lt;ITEM&gt; getItemsHavingTags(const std::set&lt;TAG&gt;&amp; tags) const;
+<span class="lineNum"> 70 </span> : #endif
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span> : public:
+<span class="lineNum"> 73 </span> : typedef typename std::map&lt; ITEM, std::set&lt;TAG&gt; &gt;::const_iterator const_iterator;
+<span class="lineNum"> 74 </span> : typedef typename std::map&lt; ITEM, std::set&lt;TAG&gt; &gt;::iterator iterator;
+<span class="lineNum"> 75 </span> : typedef typename std::map&lt; ITEM, std::set&lt;TAG&gt; &gt;::value_type value_type;
+<span class="lineNum"> 76 </span> :
+<span class="lineNum"> 77 </span><span class="lineCov"> 5 : const_iterator begin() const { return coll.begin(); }</span>
+<span class="lineNum"> 78 </span><span class="lineCov"> 42298 : const_iterator end() const { return coll.end(); }</span>
+<span class="lineNum"> 79 </span><span class="lineCov"> 1 : iterator begin() { return coll.begin(); }</span>
+<span class="lineNum"> 80 </span><span class="lineCov"> 21146 : iterator end() { return coll.end(); }</span>
+<span class="lineNum"> 81 </span> :
+<span class="lineNum"> 82 </span><span class="lineCov"> 2 : bool empty() const { return coll.empty(); }</span>
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span> : template&lt;typename ITEMS, typename TAGS&gt;
+<span class="lineNum"> 85 </span><span class="lineCov"> 2 : void insert(const ITEMS&amp; items, const TAGS&amp; tags);</span>
+<span class="lineNum"> 86 </span> :
+<span class="lineNum"> 87 </span> : bool hasItem(const ITEM&amp; item) const { return coll.find(item) != coll.end(); }
+<span class="lineNum"> 88 </span> :
+<span class="lineNum"> 89 </span><span class="lineCov"> 2 : std::set&lt;TAG&gt; getTagsOfItem(const ITEM&amp; item) const;</span>
+<span class="lineNum"> 90 </span> : std::set&lt;ITEM&gt; getItemsHavingTag(const TAG&amp; tag) const;
+<span class="lineNum"> 91 </span> : template&lt;typename TAGS&gt;
+<span class="lineNum"> 92 </span> : std::set&lt;ITEM&gt; getItemsHavingTags(const TAGS&amp; tag) const;
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span> : template&lt;typename TAGS, typename OUT&gt;
+<span class="lineNum"> 95 </span> : void outputHavingTags(const TAGS&amp; tags, OUT out) const;
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span> : #if 0
+<span class="lineNum"> 98 </span> : void output(Consumer&lt;ITEM, TAG&gt;&amp; consumer) const;
+<span class="lineNum"> 99 </span> : void outputHavingTags(const std::set&lt;TAG&gt;&amp; ts, Consumer&lt;ITEM, TAG&gt;&amp; consumer) const;
+<span class="lineNum"> 100 </span> :
+<span class="lineNum"> 101 </span> : /**
+<span class="lineNum"> 102 </span> : * Send the merged data to a consumer, but reversed: the tag become items,
+<span class="lineNum"> 103 </span> : * and they are tagged with the items that had them
+<span class="lineNum"> 104 </span> : */
+<span class="lineNum"> 105 </span> : void outputReversed(Consumer&lt;TAG, ITEM&gt;&amp; consumer) const;
+<span class="lineNum"> 106 </span> : #endif
+<span class="lineNum"> 107 </span> :
+<span class="lineNum"> 108 </span> : void applyChange(const PatchList&lt;ITEM, TAG&gt;&amp; change);
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span> : std::set&lt;ITEM&gt; getTaggedItems() const;
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span><span class="lineCov"> 3 : std::set&lt;TAG&gt; getAllTags() const;</span>
+<span class="lineNum"> 113 </span> :
+<span class="lineNum"> 114 </span> : std::set&lt;TAG&gt; getCompanionTags(const std::set&lt;TAG&gt;&amp; ts) const;
+<span class="lineNum"> 115 </span> :
+<span class="lineNum"> 116 </span> : std::set&lt;ITEM&gt; getRelatedItems(const std::set&lt;TAG&gt;&amp; ts, int maxdistance = 1) const;
+<span class="lineNum"> 117 </span> :
+<span class="lineNum"> 118 </span> : /**
+<span class="lineNum"> 119 </span> : * Count the number of items
+<span class="lineNum"> 120 </span> : */
+<span class="lineNum"> 121 </span><span class="lineCov"> 5 : unsigned int itemCount() const;</span>
+<span class="lineNum"> 122 </span> :
+<span class="lineNum"> 123 </span><span class="lineCov"> 3 : unsigned int tagCount() const { return getAllTags().size(); }</span>
+<span class="lineNum"> 124 </span> :
+<span class="lineNum"> 125 </span> : /**
+<span class="lineNum"> 126 </span> : * Empty the collection
+<span class="lineNum"> 127 </span> : */
+<span class="lineNum"> 128 </span><span class="lineCov"> 1 : void clear()</span>
+<span class="lineNum"> 129 </span> : {
+<span class="lineNum"> 130 </span><span class="lineCov"> 1 : coll.clear();</span>
+<span class="lineNum"> 131 </span><span class="lineCov"> 1 : }</span>
+<span class="lineNum"> 132 </span> : };
+<span class="lineNum"> 133 </span> :
+<span class="lineNum"> 134 </span> : }
+<span class="lineNum"> 135 </span> : }
+<span class="lineNum"> 136 </span> :
+<span class="lineNum"> 137 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 138 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/simple.tcc.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/simple.tcc.gcov.html
new file mode 100644
index 0000000..ae0c51f
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/coll/simple.tcc.gcov.html
@@ -0,0 +1,263 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/coll/simple.tcc</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/coll</a> - simple.tcc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">17</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">82.4 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">14</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /*
+<span class="lineNum"> 2 </span> : * Merge tags of items appearing multiple times in a stream of tagged items
+<span class="lineNum"> 3 </span> : *
+<span class="lineNum"> 4 </span> : * Copyright (C) 2003--2006 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 5 </span> : *
+<span class="lineNum"> 6 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 7 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 8 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 9 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 12 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 13 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 14 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 17 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 18 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 19 </span> : */
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : #ifndef TAGCOLL_COLL_SIMPLE_TCC
+<span class="lineNum"> 22 </span> : #define TAGCOLL_COLL_SIMPLE_TCC
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : #include &lt;tagcoll/utils/set.h&gt;
+<span class="lineNum"> 25 </span> : #include &lt;tagcoll/coll/simple.h&gt;
+<span class="lineNum"> 26 </span> : #include &lt;tagcoll/patch.h&gt;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : #include &lt;wibble/operators.h&gt;
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : using namespace std;
+<span class="lineNum"> 31 </span> : using namespace wibble::operators;
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : namespace tagcoll {
+<span class="lineNum"> 34 </span> : namespace coll {
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : template&lt;class ITEM, class TAG&gt; template&lt;typename ITEMS, typename TAGS&gt;
+<span class="lineNum"> 38 </span><span class="lineCov"> 42293 : void Simple&lt;ITEM, TAG&gt;::insert(const ITEMS&amp; items, const TAGS&amp; tags)</span>
+<span class="lineNum"> 39 </span> : {
+<span class="lineNum"> 40 </span> : using namespace wibble::operators;
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span><span class="lineCov"> 42295 : if (tags.empty())</span>
+<span class="lineNum"> 43 </span><span class="lineNoCov"> 0 : return;</span>
+<span class="lineNum"> 44 </span><span class="lineCov"> 84590 : for (typename ITEMS::const_iterator i = items.begin();</span>
+<span class="lineNum"> 45 </span> : i != items.end(); ++i)
+<span class="lineNum"> 46 </span> : {
+<span class="lineNum"> 47 </span><span class="lineCov"> 42295 : typename std::map&lt; ITEM, std::set&lt;TAG&gt; &gt;::iterator iter = coll.find(*i);</span>
+<span class="lineNum"> 48 </span><span class="lineCov"> 42295 : if (iter == coll.end())</span>
+<span class="lineNum"> 49 </span><span class="lineCov"> 21149 : coll.insert(std::make_pair(*i, std::set&lt;TAG&gt;() | tags));</span>
+<span class="lineNum"> 50 </span> : else
+<span class="lineNum"> 51 </span><span class="lineCov"> 21146 : iter-&gt;second |= tags;</span>
+<span class="lineNum"> 52 </span> : }
+<span class="lineNum"> 53 </span> : }
+<span class="lineNum"> 54 </span> :
+<span class="lineNum"> 55 </span> : template&lt;class ITEM, class TAG&gt;
+<span class="lineNum"> 56 </span> : std::set&lt;TAG&gt; Simple&lt;ITEM, TAG&gt;::getTagsOfItem(const ITEM&amp; item) const
+<span class="lineNum"> 57 </span> : {
+<span class="lineNum"> 58 </span><span class="lineCov"> 2 : typename map&lt; ITEM, std::set&lt;TAG&gt; &gt;::const_iterator i = coll.find(item);</span>
+<span class="lineNum"> 59 </span> :
+<span class="lineNum"> 60 </span><span class="lineCov"> 2 : if (i == coll.end())</span>
+<span class="lineNum"> 61 </span><span class="lineNoCov"> 0 : return std::set&lt;TAG&gt;();</span>
+<span class="lineNum"> 62 </span> : else
+<span class="lineNum"> 63 </span><span class="lineCov"> 2 : return i-&gt;second;</span>
+<span class="lineNum"> 64 </span> : }
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span> : template&lt;class ITEM, class TAG&gt;
+<span class="lineNum"> 67 </span> : std::set&lt;ITEM&gt; Simple&lt;ITEM, TAG&gt;::getItemsHavingTag(const TAG&amp; tag) const
+<span class="lineNum"> 68 </span> : {
+<span class="lineNum"> 69 </span> : std::set&lt;ITEM&gt; res;
+<span class="lineNum"> 70 </span> : for (typename map&lt; ITEM, std::set&lt;TAG&gt; &gt;::const_iterator i = coll.begin();
+<span class="lineNum"> 71 </span> : i != coll.end(); i++)
+<span class="lineNum"> 72 </span> : if (i-&gt;second.find(tag) != i-&gt;second.end())
+<span class="lineNum"> 73 </span> : res |= i-&gt;first;
+<span class="lineNum"> 74 </span> : return res;
+<span class="lineNum"> 75 </span> : }
+<span class="lineNum"> 76 </span> :
+<span class="lineNum"> 77 </span> : template&lt;class ITEM, class TAG&gt; template&lt;typename TAGS&gt;
+<span class="lineNum"> 78 </span> : std::set&lt;ITEM&gt; Simple&lt;ITEM, TAG&gt;::getItemsHavingTags(const TAGS&amp; tags) const
+<span class="lineNum"> 79 </span> : {
+<span class="lineNum"> 80 </span> : std::set&lt;ITEM&gt; res;
+<span class="lineNum"> 81 </span> : for (typename map&lt; ITEM, std::set&lt;TAG&gt; &gt;::const_iterator i = coll.begin();
+<span class="lineNum"> 82 </span> : i != coll.end(); i++)
+<span class="lineNum"> 83 </span> : if (utils::set_contains(i-&gt;second, tags))
+<span class="lineNum"> 84 </span> : res |= i-&gt;first;
+<span class="lineNum"> 85 </span> : return res;
+<span class="lineNum"> 86 </span> : }
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span> : #if 0
+<span class="lineNum"> 89 </span> : template&lt;class T, class Tag&gt;
+<span class="lineNum"> 90 </span> : void Simple&lt;T, Tag&gt;::outputReversed(Consumer&lt;Tag, T&gt;&amp; consumer) const
+<span class="lineNum"> 91 </span> : {
+<span class="lineNum"> 92 </span> : for (typename map&lt; T, std::set&lt;Tag&gt; &gt;::const_iterator i = coll.begin();
+<span class="lineNum"> 93 </span> : i != coll.end(); i++)
+<span class="lineNum"> 94 </span> : {
+<span class="lineNum"> 95 </span> : std::set&lt;T&gt; items;
+<span class="lineNum"> 96 </span> : items |= i-&gt;first;
+<span class="lineNum"> 97 </span> : consumer.consume(i-&gt;second, items);
+<span class="lineNum"> 98 </span> : }
+<span class="lineNum"> 99 </span> : }
+<span class="lineNum"> 100 </span> : #endif
+<span class="lineNum"> 101 </span> :
+<span class="lineNum"> 102 </span> : template&lt;class ITEM, class TAG&gt; template&lt;typename TAGS, typename OUT&gt;
+<span class="lineNum"> 103 </span> : void Simple&lt;ITEM, TAG&gt;::outputHavingTags(const TAGS&amp; ts, OUT out) const
+<span class="lineNum"> 104 </span> : {
+<span class="lineNum"> 105 </span> : for (typename map&lt; ITEM, std::set&lt;TAG&gt; &gt;::const_iterator i = coll.begin();
+<span class="lineNum"> 106 </span> : i != coll.end(); ++i)
+<span class="lineNum"> 107 </span> : if (utils::set_contains(i-&gt;second, ts))
+<span class="lineNum"> 108 </span> : {
+<span class="lineNum"> 109 </span> : *out = *i;
+<span class="lineNum"> 110 </span> : ++out;
+<span class="lineNum"> 111 </span> : }
+<span class="lineNum"> 112 </span> : }
+<span class="lineNum"> 113 </span> :
+<span class="lineNum"> 114 </span> :
+<span class="lineNum"> 115 </span> :
+<span class="lineNum"> 116 </span> : template&lt;class T, class Tag&gt;
+<span class="lineNum"> 117 </span> : void Simple&lt;T, Tag&gt;::applyChange(const PatchList&lt;T, Tag&gt;&amp; change)
+<span class="lineNum"> 118 </span> : {
+<span class="lineNum"> 119 </span> : for (typename PatchList&lt;T, Tag&gt;::const_iterator i = change.begin(); i != change.end(); i++)
+<span class="lineNum"> 120 </span> : {
+<span class="lineNum"> 121 </span> : typename map&lt; T, std::set&lt;Tag&gt; &gt;::iterator it = coll.find(i-&gt;first);
+<span class="lineNum"> 122 </span> : if (it == coll.end())
+<span class="lineNum"> 123 </span> : {
+<span class="lineNum"> 124 </span> : // If the item doesn't exist, create it
+<span class="lineNum"> 125 </span> : coll.insert(make_pair(i-&gt;first, i-&gt;second.added));
+<span class="lineNum"> 126 </span> : } else {
+<span class="lineNum"> 127 </span> : it-&gt;second = i-&gt;second.apply(it-&gt;second);
+<span class="lineNum"> 128 </span> : }
+<span class="lineNum"> 129 </span> : }
+<span class="lineNum"> 130 </span> : }
+<span class="lineNum"> 131 </span> :
+<span class="lineNum"> 132 </span> : template&lt;typename ITEM, typename TAG&gt;
+<span class="lineNum"> 133 </span> : std::set&lt;ITEM&gt; Simple&lt;ITEM, TAG&gt;::getTaggedItems() const
+<span class="lineNum"> 134 </span> : {
+<span class="lineNum"> 135 </span> : std::set&lt;ITEM&gt; res;
+<span class="lineNum"> 136 </span> : for (typename std::map&lt; ITEM, std::set&lt;TAG&gt; &gt;::const_iterator i = coll.begin();
+<span class="lineNum"> 137 </span> : i != coll.end(); i++)
+<span class="lineNum"> 138 </span> : res.insert(i-&gt;first);
+<span class="lineNum"> 139 </span> : return res;
+<span class="lineNum"> 140 </span> : }
+<span class="lineNum"> 141 </span> :
+<span class="lineNum"> 142 </span> : template&lt;class T, class Tag&gt;
+<span class="lineNum"> 143 </span> : std::set&lt;Tag&gt; Simple&lt;T, Tag&gt;::getAllTags() const
+<span class="lineNum"> 144 </span> : {
+<span class="lineNum"> 145 </span><span class="lineCov"> 3 : std::set&lt;Tag&gt; tags;</span>
+<span class="lineNum"> 146 </span> :
+<span class="lineNum"> 147 </span><span class="lineCov"> 6 : for (typename map&lt; T, std::set&lt;Tag&gt; &gt;::const_iterator i = coll.begin();</span>
+<span class="lineNum"> 148 </span> : i != coll.end(); i++)
+<span class="lineNum"> 149 </span><span class="lineCov"> 3 : tags |= i-&gt;second;</span>
+<span class="lineNum"> 150 </span> :
+<span class="lineNum"> 151 </span><span class="lineNoCov"> 0 : return tags;</span>
+<span class="lineNum"> 152 </span> : }
+<span class="lineNum"> 153 </span> :
+<span class="lineNum"> 154 </span> : template&lt;class T, class Tag&gt;
+<span class="lineNum"> 155 </span> : std::set&lt;Tag&gt; Simple&lt;T, Tag&gt;::getCompanionTags(const std::set&lt;Tag&gt;&amp; ts) const
+<span class="lineNum"> 156 </span> : {
+<span class="lineNum"> 157 </span> : std::set&lt;Tag&gt; tags;
+<span class="lineNum"> 158 </span> :
+<span class="lineNum"> 159 </span> : for (typename map&lt; T, std::set&lt;Tag&gt; &gt;::const_iterator i = coll.begin();
+<span class="lineNum"> 160 </span> : i != coll.end(); i++)
+<span class="lineNum"> 161 </span> : if (utils::set_contains(i-&gt;second, (ts)))
+<span class="lineNum"> 162 </span> : tags |= i-&gt;second - ts;
+<span class="lineNum"> 163 </span> :
+<span class="lineNum"> 164 </span> : return tags;
+<span class="lineNum"> 165 </span> : }
+<span class="lineNum"> 166 </span> :
+<span class="lineNum"> 167 </span> : template&lt;class T, class Tag&gt;
+<span class="lineNum"> 168 </span> : std::set&lt;T&gt; Simple&lt;T, Tag&gt;::getRelatedItems(const std::set&lt;Tag&gt;&amp; tags, int maxdistance) const
+<span class="lineNum"> 169 </span> : {
+<span class="lineNum"> 170 </span> : std::set&lt;T&gt; res;
+<span class="lineNum"> 171 </span> :
+<span class="lineNum"> 172 </span> : for (typename map&lt; T, std::set&lt;Tag&gt; &gt;::const_iterator i = coll.begin();
+<span class="lineNum"> 173 </span> : i != coll.end(); i++)
+<span class="lineNum"> 174 </span> : {
+<span class="lineNum"> 175 </span> : int dist = utils::set_distance(tags, i-&gt;second);
+<span class="lineNum"> 176 </span> : if (dist &gt;= 0 &amp;&amp; dist &lt;= maxdistance)
+<span class="lineNum"> 177 </span> : res |= i-&gt;first;
+<span class="lineNum"> 178 </span> : }
+<span class="lineNum"> 179 </span> :
+<span class="lineNum"> 180 </span> : return res;
+<span class="lineNum"> 181 </span> : }
+<span class="lineNum"> 182 </span> :
+<span class="lineNum"> 183 </span> : template&lt;class T, class Tag&gt;
+<span class="lineNum"> 184 </span> : unsigned int Simple&lt;T, Tag&gt;::itemCount() const
+<span class="lineNum"> 185 </span> : {
+<span class="lineNum"> 186 </span><span class="lineCov"> 5 : return coll.size();</span>
+<span class="lineNum"> 187 </span> : }
+<span class="lineNum"> 188 </span> :
+<span class="lineNum"> 189 </span> : }
+<span class="lineNum"> 190 </span> : }
+<span class="lineNum"> 191 </span> :
+<span class="lineNum"> 192 </span> : #include &lt;tagcoll/coll/base.tcc&gt;
+<span class="lineNum"> 193 </span> :
+<span class="lineNum"> 194 </span> : #endif
+<span class="lineNum"> 195 </span> :
+<span class="lineNum"> 196 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/diskindex/index.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/diskindex/index.html
new file mode 100644
index 0000000..b47f674
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/diskindex/index.html
@@ -0,0 +1,92 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/diskindex</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - /usr/include/tagcoll-2.0.11/tagcoll/diskindex</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">15</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">93.3 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">14</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="int.h.gcov.html">int.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=91 height=10 alt="90.9%"><img src="../../../../../snow.png" width=9 height=10 alt="90.9%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">90.9&nbsp;%</td>
+ <td class="coverNumHi">10&nbsp;/&nbsp;11&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="mmap.h.gcov.html">mmap.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">4&nbsp;/&nbsp;4&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/diskindex/int.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/diskindex/int.h.gcov.html
new file mode 100644
index 0000000..757c384
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/diskindex/int.h.gcov.html
@@ -0,0 +1,158 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/diskindex/int.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/diskindex</a> - int.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">11</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">90.9 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">10</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_DISKINDEX_INT_H
+<span class="lineNum"> 2 </span> : #define TAGCOLL_DISKINDEX_INT_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** \file
+<span class="lineNum"> 5 </span> : * Fast index for tag data, based on integer indexes
+<span class="lineNum"> 6 </span> : */
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : /*
+<span class="lineNum"> 9 </span> : * Copyright (C) 2006 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 12 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 13 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 14 </span> : * (at your option) any later version.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 19 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 20 </span> : *
+<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 22 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 24 </span> : */
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;tagcoll/diskindex/mmap.h&gt;
+<span class="lineNum"> 27 </span> : #include &lt;vector&gt;
+<span class="lineNum"> 28 </span> : #include &lt;set&gt;
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : namespace tagcoll {
+<span class="lineNum"> 31 </span> : namespace diskindex {
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : /**
+<span class="lineNum"> 34 </span> : * MMap-based index of a -&gt; [x1, x2, x3] mappings
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * The layout is:
+<span class="lineNum"> 37 </span> : *
+<span class="lineNum"> 38 </span> : * [offset of mapping for item 0, offset of mapping for item 1...]
+<span class="lineNum"> 39 </span> : * [size of array][sorted array of ints pointed by index 0]
+<span class="lineNum"> 40 </span> : * [size of array][sorted array of ints pointed by index 1]
+<span class="lineNum"> 41 </span> : * [size of array][sorted array of ints pointed by index 2]
+<span class="lineNum"> 42 </span> : * [...]
+<span class="lineNum"> 43 </span> : * [number of items in the mapping]
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * This allows fast lookups, as well as fast lookups of unions or intersections
+<span class="lineNum"> 46 </span> : * of mapped arrays.
+<span class="lineNum"> 47 </span> : *
+<span class="lineNum"> 48 </span> : * The number of items for an ID not present in the index is assumed to be 0.
+<span class="lineNum"> 49 </span> : */
+<span class="lineNum"> 50 </span> : class Int : public MMap
+<span class="lineNum"> 51 </span> : {
+<span class="lineNum"> 52 </span> : protected:
+<span class="lineNum"> 53 </span><span class="lineCov"> 274890 : inline int* buf() const { return (int*)m_buf; }</span>
+<span class="lineNum"> 54 </span><span class="lineCov"> 274890 : inline size_t ofs(int val) const { return buf()[val]; }</span>
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span> : public:
+<span class="lineNum"> 57 </span><span class="lineCov"> 20 : Int() {}</span>
+<span class="lineNum"> 58 </span> : Int(const MasterMMap&amp; master, int idx) : MMap(master, idx) {}
+<span class="lineNum"> 59 </span> :
+<span class="lineNum"> 60 </span> : const int* data(int val) const { return (val &gt;= 0 &amp;&amp; (unsigned)val &lt; size()) ? buf() + ofs(val) + 1 : 0; }
+<span class="lineNum"> 61 </span><span class="lineNoCov"> 0 : size_t size(int val) const { return (val &gt;= 0 &amp;&amp; (unsigned)val &lt; size()) ? buf()[ofs(val)] : 0; }</span>
+<span class="lineNum"> 62 </span><span class="lineCov"> 274893 : size_t size() const { return m_buf ? ofs(0) : 0; }</span>
+<span class="lineNum"> 63 </span> : };
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : /**
+<span class="lineNum"> 66 </span> : * Creates an on-disk index to use for IntIndex
+<span class="lineNum"> 67 </span> : */
+<span class="lineNum"> 68 </span> : class IntIndexer : public MMapIndexer, public std::vector&lt;std::set&lt;int&gt; &gt;
+<span class="lineNum"> 69 </span><span class="lineCov"> 4 : {</span>
+<span class="lineNum"> 70 </span> : public:
+<span class="lineNum"> 71 </span> : /// Store the key-&gt;val mapping into the indexer
+<span class="lineNum"> 72 </span><span class="lineCov"> 211196 : void map(unsigned int key, int val)</span>
+<span class="lineNum"> 73 </span> : {
+<span class="lineNum"> 74 </span><span class="lineCov"> 211196 : if (size() &lt;= key)</span>
+<span class="lineNum"> 75 </span><span class="lineCov"> 21142 : resize(key + 1);</span>
+<span class="lineNum"> 76 </span><span class="lineCov"> 211196 : (*this)[key].insert(val);</span>
+<span class="lineNum"> 77 </span><span class="lineCov"> 211196 : }</span>
+<span class="lineNum"> 78 </span> :
+<span class="lineNum"> 79 </span> : /// Return the size of the encoded index data
+<span class="lineNum"> 80 </span> : virtual int encodedSize() const;
+<span class="lineNum"> 81 </span> :
+<span class="lineNum"> 82 </span> : /// Write the index data in the given buffer, which should be at least
+<span class="lineNum"> 83 </span> : /// encodedSize bytes
+<span class="lineNum"> 84 </span> : virtual void encode(char* buf) const;
+<span class="lineNum"> 85 </span> : };
+<span class="lineNum"> 86 </span> :
+<span class="lineNum"> 87 </span> : }
+<span class="lineNum"> 88 </span> : }
+<span class="lineNum"> 89 </span> :
+<span class="lineNum"> 90 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 91 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/diskindex/mmap.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/diskindex/mmap.h.gcov.html
new file mode 100644
index 0000000..8925ba5
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/diskindex/mmap.h.gcov.html
@@ -0,0 +1,196 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/diskindex/mmap.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/diskindex</a> - mmap.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">4</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">4</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_DISKINDEX_MMAP_H
+<span class="lineNum"> 2 </span> : #define TAGCOLL_DISKINDEX_MMAP_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** \file
+<span class="lineNum"> 5 </span> : * Basic infrastructure for implementing mmapped indexes
+<span class="lineNum"> 6 </span> : */
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : /*
+<span class="lineNum"> 9 </span> : * Copyright (C) 2006 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 12 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 13 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 14 </span> : * (at your option) any later version.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 19 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 20 </span> : *
+<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 22 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 24 </span> : */
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;string&gt;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : namespace tagcoll {
+<span class="lineNum"> 29 </span> : namespace diskindex {
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : class mmap;
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : /**
+<span class="lineNum"> 34 </span> : * Performs the memory management and mmapping tasks for mmapped indexes.
+<span class="lineNum"> 35 </span> : *
+<span class="lineNum"> 36 </span> : * One MMap can contain many indexes. Indexes come chained one after the
+<span class="lineNum"> 37 </span> : * other, prefixed by an int that specifies their length:
+<span class="lineNum"> 38 </span> : *
+<span class="lineNum"> 39 </span> : * [size of index 1][index1][size of index 2][index]...
+<span class="lineNum"> 40 </span> : *
+<span class="lineNum"> 41 </span> : * Every index must make sure that its size is int-aligned, otherwise accessing
+<span class="lineNum"> 42 </span> : * it would cause a bus error in many architectures.
+<span class="lineNum"> 43 </span> : */
+<span class="lineNum"> 44 </span> : class MasterMMap
+<span class="lineNum"> 45 </span> : {
+<span class="lineNum"> 46 </span> : protected:
+<span class="lineNum"> 47 </span> : std::string m_filename;
+<span class="lineNum"> 48 </span> : size_t m_size;
+<span class="lineNum"> 49 </span> : int m_fd;
+<span class="lineNum"> 50 </span> : const char* m_buf;
+<span class="lineNum"> 51 </span> :
+<span class="lineNum"> 52 </span> : public:
+<span class="lineNum"> 53 </span> : MasterMMap();
+<span class="lineNum"> 54 </span> : MasterMMap(const std::string&amp; filename);
+<span class="lineNum"> 55 </span> : ~MasterMMap();
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : void init(const std::string&amp; filename);
+<span class="lineNum"> 58 </span> :
+<span class="lineNum"> 59 </span> : friend class MMap;
+<span class="lineNum"> 60 </span> : };
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : class MMap
+<span class="lineNum"> 63 </span> : {
+<span class="lineNum"> 64 </span> : protected:
+<span class="lineNum"> 65 </span> : const MasterMMap* m_master;
+<span class="lineNum"> 66 </span> : const char* m_buf;
+<span class="lineNum"> 67 </span> : size_t m_size;
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span> : public:
+<span class="lineNum"> 70 </span> : MMap();
+<span class="lineNum"> 71 </span> : MMap(const char* buf, int size);
+<span class="lineNum"> 72 </span> : MMap(const MasterMMap&amp; master, size_t idx);
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span> : void init(const char* buf, int size);
+<span class="lineNum"> 75 </span> : void init(const MasterMMap&amp; master, size_t idx);
+<span class="lineNum"> 76 </span> :
+<span class="lineNum"> 77 </span> : /// Round a value to the next word size in the current architecture
+<span class="lineNum"> 78 </span> : template&lt;class INT&gt;
+<span class="lineNum"> 79 </span><span class="lineCov"> 12 : static inline INT align(INT val)</span>
+<span class="lineNum"> 80 </span> : {
+<span class="lineNum"> 81 </span><span class="lineCov"> 12 : return (val + sizeof(int) - 1) &amp; ~(sizeof(int) - 1);</span>
+<span class="lineNum"> 82 </span> : }
+<span class="lineNum"> 83 </span> : };
+<span class="lineNum"> 84 </span> :
+<span class="lineNum"> 85 </span> : /**
+<span class="lineNum"> 86 </span> : * Interface for indexers.
+<span class="lineNum"> 87 </span> : */
+<span class="lineNum"> 88 </span> : class MMapIndexer
+<span class="lineNum"> 89 </span><span class="lineCov"> 20 : {</span>
+<span class="lineNum"> 90 </span> : public:
+<span class="lineNum"> 91 </span><span class="lineCov"> 20 : virtual ~MMapIndexer() {}</span>
+<span class="lineNum"> 92 </span> :
+<span class="lineNum"> 93 </span> : /// Return the size of the encoded index data (in bytes)
+<span class="lineNum"> 94 </span> : virtual int encodedSize() const = 0;
+<span class="lineNum"> 95 </span> :
+<span class="lineNum"> 96 </span> : /// Write the index data in the given buffer, which should be at least
+<span class="lineNum"> 97 </span> : /// encodedSize bytes
+<span class="lineNum"> 98 </span> : virtual void encode(char* buf) const = 0;
+<span class="lineNum"> 99 </span> : };
+<span class="lineNum"> 100 </span> :
+<span class="lineNum"> 101 </span> : /**
+<span class="lineNum"> 102 </span> : * Master index writer. It allows to write many indexes in the same file,
+<span class="lineNum"> 103 </span> : * atomically: the file will be created as a tempfile and atomically renamed to
+<span class="lineNum"> 104 </span> : * the destination filename on class destruction.
+<span class="lineNum"> 105 </span> : */
+<span class="lineNum"> 106 </span> : class MasterMMapIndexer
+<span class="lineNum"> 107 </span> : {
+<span class="lineNum"> 108 </span> : protected:
+<span class="lineNum"> 109 </span> : std::string finalname;
+<span class="lineNum"> 110 </span> : std::string tmpname;
+<span class="lineNum"> 111 </span> : int fd;
+<span class="lineNum"> 112 </span> :
+<span class="lineNum"> 113 </span> : public:
+<span class="lineNum"> 114 </span> : MasterMMapIndexer(const std::string&amp; filename);
+<span class="lineNum"> 115 </span> : ~MasterMMapIndexer();
+<span class="lineNum"> 116 </span> :
+<span class="lineNum"> 117 </span> : /// Close the file and perform the final rename
+<span class="lineNum"> 118 </span> : void commit();
+<span class="lineNum"> 119 </span> :
+<span class="lineNum"> 120 </span> : /// Append one subindex
+<span class="lineNum"> 121 </span> : void append(const MMapIndexer&amp; idx);
+<span class="lineNum"> 122 </span> : };
+<span class="lineNum"> 123 </span> :
+<span class="lineNum"> 124 </span> :
+<span class="lineNum"> 125 </span> : }
+<span class="lineNum"> 126 </span> : }
+<span class="lineNum"> 127 </span> :
+<span class="lineNum"> 128 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 129 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/expression.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/expression.h.gcov.html
new file mode 100644
index 0000000..128d3fb
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/expression.h.gcov.html
@@ -0,0 +1,249 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/expression.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll</a> - expression.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">10</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">10</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_EXPRESSION_H
+<span class="lineNum"> 2 </span> : #define TAGCOLL_EXPRESSION_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /*
+<span class="lineNum"> 5 </span> : * Expression that can match tagsets
+<span class="lineNum"> 6 </span> : *
+<span class="lineNum"> 7 </span> : * Copyright (C) 2003,2004,2005,2006 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 8 </span> : *
+<span class="lineNum"> 9 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 10 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 11 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 12 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 13 </span> : *
+<span class="lineNum"> 14 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 15 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 16 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 17 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 18 </span> : *
+<span class="lineNum"> 19 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 20 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 21 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 22 </span> : */
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : #include &lt;string&gt;
+<span class="lineNum"> 25 </span> : #include &lt;set&gt;
+<span class="lineNum"> 26 </span> : #include &lt;map&gt;
+<span class="lineNum"> 27 </span> : #include &lt;wibble/singleton.h&gt;
+<span class="lineNum"> 28 </span> : #include &lt;wibble/mixin.h&gt;
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : namespace tagcoll
+<span class="lineNum"> 31 </span> : {
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : class TagexprContext;
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : /**
+<span class="lineNum"> 36 </span> : * Interface for parsed tag expressions
+<span class="lineNum"> 37 </span> : */
+<span class="lineNum"> 38 </span> : class ExpressionImpl
+<span class="lineNum"> 39 </span> : {
+<span class="lineNum"> 40 </span> : protected:
+<span class="lineNum"> 41 </span> : int _ref;
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : public:
+<span class="lineNum"> 44 </span> : ExpressionImpl() : _ref(0) {}
+<span class="lineNum"> 45 </span> : virtual ~ExpressionImpl() {}
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span> : /// Increment the reference count for this object
+<span class="lineNum"> 48 </span><span class="lineCov"> 10 : void ref() throw () { ++_ref; }</span>
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span> : /// Decrement the reference count for this object, returning true when it
+<span class="lineNum"> 51 </span> : /// reaches 0
+<span class="lineNum"> 52 </span><span class="lineCov"> 22 : bool unref() throw () { return --_ref == 0; }</span>
+<span class="lineNum"> 53 </span> :
+<span class="lineNum"> 54 </span> : /**
+<span class="lineNum"> 55 </span> : * Provide a string representation of this expression
+<span class="lineNum"> 56 </span> : */
+<span class="lineNum"> 57 </span> : virtual std::string format() const = 0;
+<span class="lineNum"> 58 </span> :
+<span class="lineNum"> 59 </span> : /**
+<span class="lineNum"> 60 </span> : * Evaluates the expression on a recursive context
+<span class="lineNum"> 61 </span> : *
+<span class="lineNum"> 62 </span> : * \see TagexprContext
+<span class="lineNum"> 63 </span> : */
+<span class="lineNum"> 64 </span> : virtual bool eval(const TagexprContext&amp; context) const = 0;
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span> : /**
+<span class="lineNum"> 67 </span> : * Evaluates the expression on a set of tags
+<span class="lineNum"> 68 </span> : *
+<span class="lineNum"> 69 </span> : * \return
+<span class="lineNum"> 70 </span> : * true if the expression matches the tags, false otherwise
+<span class="lineNum"> 71 </span> : */
+<span class="lineNum"> 72 </span> : virtual bool eval(const std::set&lt;std::string&gt;&amp; tags) const = 0;
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span> : /**
+<span class="lineNum"> 75 </span> : * Return a clone of this tag expression
+<span class="lineNum"> 76 </span> : */
+<span class="lineNum"> 77 </span> : //virtual Tagexpr* clone() const = 0;
+<span class="lineNum"> 78 </span> : };
+<span class="lineNum"> 79 </span> :
+<span class="lineNum"> 80 </span> : class Expression
+<span class="lineNum"> 81 </span> : {
+<span class="lineNum"> 82 </span> : protected:
+<span class="lineNum"> 83 </span> : ExpressionImpl* m_impl;
+<span class="lineNum"> 84 </span> :
+<span class="lineNum"> 85 </span> : Expression(ExpressionImpl* impl) : m_impl(impl) { m_impl-&gt;ref(); }
+<span class="lineNum"> 86 </span> :
+<span class="lineNum"> 87 </span> : const ExpressionImpl* impl() const { return m_impl; }
+<span class="lineNum"> 88 </span> : ExpressionImpl* impl() { return m_impl; }
+<span class="lineNum"> 89 </span> :
+<span class="lineNum"> 90 </span> : public:
+<span class="lineNum"> 91 </span> : Expression();
+<span class="lineNum"> 92 </span> : Expression(const std::string&amp; expr);
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span> : Expression(const Expression&amp; e)
+<span class="lineNum"> 95 </span> : {
+<span class="lineNum"> 96 </span> : if (e.m_impl)
+<span class="lineNum"> 97 </span> : e.m_impl-&gt;ref();
+<span class="lineNum"> 98 </span> : m_impl = e.m_impl;
+<span class="lineNum"> 99 </span> : }
+<span class="lineNum"> 100 </span><span class="lineCov"> 12 : ~Expression() { if (m_impl-&gt;unref()) delete m_impl; }</span>
+<span class="lineNum"> 101 </span> :
+<span class="lineNum"> 102 </span><span class="lineCov"> 10 : Expression&amp; operator=(const Expression&amp; e)</span>
+<span class="lineNum"> 103 </span> : {
+<span class="lineNum"> 104 </span><span class="lineCov"> 10 : if (e.m_impl)</span>
+<span class="lineNum"> 105 </span><span class="lineCov"> 10 : e.m_impl-&gt;ref(); // Do it early to correctly handle the case of x = x;</span>
+<span class="lineNum"> 106 </span><span class="lineCov"> 10 : if (m_impl &amp;&amp; m_impl-&gt;unref())</span>
+<span class="lineNum"> 107 </span><span class="lineCov"> 10 : delete m_impl;</span>
+<span class="lineNum"> 108 </span><span class="lineCov"> 10 : m_impl = e.m_impl;</span>
+<span class="lineNum"> 109 </span><span class="lineCov"> 10 : return *this;</span>
+<span class="lineNum"> 110 </span> : }
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span> : Expression operator and (const Expression&amp; e);
+<span class="lineNum"> 113 </span> : Expression operator or (const Expression&amp; e);
+<span class="lineNum"> 114 </span> : Expression operator not ();
+<span class="lineNum"> 115 </span> :
+<span class="lineNum"> 116 </span> : template&lt;typename Tags&gt;
+<span class="lineNum"> 117 </span> : bool operator()(const Tags&amp; tags) const
+<span class="lineNum"> 118 </span> : {
+<span class="lineNum"> 119 </span> : std::set&lt;std::string&gt; stags;
+<span class="lineNum"> 120 </span> : for (typename Tags::const_iterator i = tags.begin();
+<span class="lineNum"> 121 </span> : i != tags.end(); ++i)
+<span class="lineNum"> 122 </span> : stags.insert(*i);
+<span class="lineNum"> 123 </span> : return m_impl-&gt;eval(stags);
+<span class="lineNum"> 124 </span> : }
+<span class="lineNum"> 125 </span> : bool operator()(const std::set&lt;std::string&gt;&amp; tags) const { return m_impl-&gt;eval(tags); }
+<span class="lineNum"> 126 </span> :
+<span class="lineNum"> 127 </span> : bool operator()(const TagexprContext&amp; context) const { return m_impl-&gt;eval(context); }
+<span class="lineNum"> 128 </span> :
+<span class="lineNum"> 129 </span> : std::string format() const { return m_impl-&gt;format(); }
+<span class="lineNum"> 130 </span> :
+<span class="lineNum"> 131 </span> : static Expression matchTag(const std::string&amp; pattern);
+<span class="lineNum"> 132 </span> : };
+<span class="lineNum"> 133 </span> :
+<span class="lineNum"> 134 </span> : /**
+<span class="lineNum"> 135 </span> : * Context for evaluating expressions of derived tags.
+<span class="lineNum"> 136 </span> : *
+<span class="lineNum"> 137 </span> : * A derived tag is a tag which is automatically inferred when a tag expression
+<span class="lineNum"> 138 </span> : * is matched on a tagset.
+<span class="lineNum"> 139 </span> : *
+<span class="lineNum"> 140 </span> : * TagexprContext allows the inference engine to distinguish between a normal
+<span class="lineNum"> 141 </span> : * tag or a derived tag.
+<span class="lineNum"> 142 </span> : *
+<span class="lineNum"> 143 </span> : * This class is mainly used to support DerivedTags and has probably little
+<span class="lineNum"> 144 </span> : * applications elsewhere.
+<span class="lineNum"> 145 </span> : */
+<span class="lineNum"> 146 </span> : class TagexprContext
+<span class="lineNum"> 147 </span> : {
+<span class="lineNum"> 148 </span> : protected:
+<span class="lineNum"> 149 </span> : const std::set&lt;std::string&gt;&amp; tags;
+<span class="lineNum"> 150 </span> : const std::map&lt;std::string, Expression&gt;&amp; derivedTags;
+<span class="lineNum"> 151 </span> : // Tags &quot;visited&quot; during tag evaluation: used to break circular loops
+<span class="lineNum"> 152 </span> : mutable std::set&lt;std::string&gt; seen;
+<span class="lineNum"> 153 </span> :
+<span class="lineNum"> 154 </span> : public:
+<span class="lineNum"> 155 </span> : /**
+<span class="lineNum"> 156 </span> : * Create a context for recursive tagset evaluation
+<span class="lineNum"> 157 </span> : *
+<span class="lineNum"> 158 </span> : * Evaluation happens using a derivation table, which can list a tag as an
+<span class="lineNum"> 159 </span> : * alias for another tag expression. Whenever a tag is matched for
+<span class="lineNum"> 160 </span> : * equality with a derived tag, the match is performed with the derived tag
+<span class="lineNum"> 161 </span> : * expression instead.
+<span class="lineNum"> 162 </span> : *
+<span class="lineNum"> 163 </span> : * \param tags
+<span class="lineNum"> 164 </span> : * The tags to evaluate
+<span class="lineNum"> 165 </span> : * \param derivedTags
+<span class="lineNum"> 166 </span> : * The table of derived tags to use in the evaluation
+<span class="lineNum"> 167 </span> : */
+<span class="lineNum"> 168 </span> : TagexprContext(const std::set&lt;std::string&gt;&amp; tags, const std::map&lt;std::string, Expression&gt;&amp; derivedTags)
+<span class="lineNum"> 169 </span> : : tags(tags), derivedTags(derivedTags) {}
+<span class="lineNum"> 170 </span> :
+<span class="lineNum"> 171 </span> : /**
+<span class="lineNum"> 172 </span> : * Evaluates the input tags on the contents to see if they contain the
+<span class="lineNum"> 173 </span> : * given tag, or if they match its associated tag expression if tag is a
+<span class="lineNum"> 174 </span> : * derived tag
+<span class="lineNum"> 175 </span> : */
+<span class="lineNum"> 176 </span> : bool eval(const std::string&amp; tag) const;
+<span class="lineNum"> 177 </span> : };
+<span class="lineNum"> 178 </span> :
+<span class="lineNum"> 179 </span> : };
+<span class="lineNum"> 180 </span> :
+<span class="lineNum"> 181 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 182 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/index.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/index.html
new file mode 100644
index 0000000..664ae5b
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/index.html
@@ -0,0 +1,119 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll</title>
+ <link rel="stylesheet" type="text/css" href="../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - /usr/include/tagcoll-2.0.11/tagcoll</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">173</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">73.4 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">127</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="TextFormat.h.gcov.html">TextFormat.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../ruby.png" width=14 height=10 alt="14.3%"><img src="../../../../snow.png" width=86 height=10 alt="14.3%"></td></tr></table>
+ </td>
+ <td class="coverPerLo">14.3&nbsp;%</td>
+ <td class="coverNumLo">1&nbsp;/&nbsp;7&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="TextFormat.tcc.gcov.html">TextFormat.tcc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../emerald.png" width=54 height=10 alt="54.4%"><img src="../../../../snow.png" width=46 height=10 alt="54.4%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">54.4&nbsp;%</td>
+ <td class="coverNumHi">43&nbsp;/&nbsp;79&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="expression.h.gcov.html">expression.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">10&nbsp;/&nbsp;10&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="patch.h.gcov.html">patch.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">42&nbsp;/&nbsp;42&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="patch.tcc.gcov.html">patch.tcc</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../emerald.png" width=89 height=10 alt="88.6%"><img src="../../../../snow.png" width=11 height=10 alt="88.6%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">88.6&nbsp;%</td>
+ <td class="coverNumHi">31&nbsp;/&nbsp;35&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/input/base.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/input/base.h.gcov.html
new file mode 100644
index 0000000..5fb2a07
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/input/base.h.gcov.html
@@ -0,0 +1,184 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/input/base.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/input</a> - base.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">14</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">7.1 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_INPUT_BASE_H
+<span class="lineNum"> 2 </span> : #define TAGCOLL_INPUT_BASE_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** \file
+<span class="lineNum"> 5 </span> : * Base class for parsers
+<span class="lineNum"> 6 </span> : */
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : /*
+<span class="lineNum"> 9 </span> : * Copyright (C) 2003,2004,2005,2006 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 12 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 13 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 14 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 19 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 20 </span> : *
+<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 22 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 24 </span> : */
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;string&gt;
+<span class="lineNum"> 27 </span> : #include &lt;wibble/exception.h&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : namespace tagcoll {
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : namespace input {
+<span class="lineNum"> 32 </span> : class Input;
+<span class="lineNum"> 33 </span> : }
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : namespace exception {
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : /**
+<span class="lineNum"> 38 </span> : * Base exception for parser errors
+<span class="lineNum"> 39 </span> : */
+<span class="lineNum"> 40 </span> : class Input : public wibble::exception::Consistency
+<span class="lineNum"> 41 </span><span class="lineNoCov"> 0 : {</span>
+<span class="lineNum"> 42 </span> : protected:
+<span class="lineNum"> 43 </span> : std::string _file;
+<span class="lineNum"> 44 </span> : int _line;
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> : std::string makeContext(const std::string&amp; file, int line);
+<span class="lineNum"> 47 </span> :
+<span class="lineNum"> 48 </span> : public:
+<span class="lineNum"> 49 </span> : Input(const tagcoll::input::Input&amp; input, const std::string&amp; message) throw ();
+<span class="lineNum"> 50 </span> : Input(const std::string&amp; file, int line, const std::string&amp; message) throw ()
+<span class="lineNum"> 51 </span> : : wibble::exception::Consistency(makeContext(file, line), message),
+<span class="lineNum"> 52 </span> : _file(file), _line(line) {}
+<span class="lineNum"> 53 </span><span class="lineNoCov"> 0 : Input(int line, const std::string&amp; message) throw ()</span>
+<span class="lineNum"> 54 </span><span class="lineNoCov"> 0 : : wibble::exception::Consistency(makeContext(std::string(), line), message),</span>
+<span class="lineNum"> 55 </span><span class="lineNoCov"> 0 : _line(line) {}</span>
+<span class="lineNum"> 56 </span> : Input(const std::string&amp; message) throw ()
+<span class="lineNum"> 57 </span> : : wibble::exception::Consistency(makeContext(std::string(), -1), message),
+<span class="lineNum"> 58 </span> : _line(-1) {}
+<span class="lineNum"> 59 </span><span class="lineNoCov"> 0 : virtual ~Input() throw () {}</span>
+<span class="lineNum"> 60 </span> :
+<span class="lineNum"> 61 </span> : int line() const throw () { return _line; }
+<span class="lineNum"> 62 </span><span class="lineNoCov"> 0 : int line(int line) throw () { return _line = line; }</span>
+<span class="lineNum"> 63 </span> :
+<span class="lineNum"> 64 </span> : const std::string&amp; file() const throw () { return _file; }
+<span class="lineNum"> 65 </span> : std::string file() throw () { return _file; }
+<span class="lineNum"> 66 </span> : std::string file(const std::string file) throw () { return _file = file; }
+<span class="lineNum"> 67 </span> :
+<span class="lineNum"> 68 </span><span class="lineNoCov"> 0 : virtual const char* type() const throw () { return &quot;Input&quot;; }</span>
+<span class="lineNum"> 69 </span> : };
+<span class="lineNum"> 70 </span> :
+<span class="lineNum"> 71 </span> : /**
+<span class="lineNum"> 72 </span> : * Exception thrown in case of problems accessing the input of the parser
+<span class="lineNum"> 73 </span> : */
+<span class="lineNum"> 74 </span> : class Parser : public Input
+<span class="lineNum"> 75 </span><span class="lineNoCov"> 0 : {</span>
+<span class="lineNum"> 76 </span> : public:
+<span class="lineNum"> 77 </span><span class="lineNoCov"> 0 : Parser(const tagcoll::input::Input&amp; input, const std::string&amp; message) throw ()</span>
+<span class="lineNum"> 78 </span><span class="lineNoCov"> 0 : : Input(input, message) {}</span>
+<span class="lineNum"> 79 </span><span class="lineNoCov"> 0 : virtual ~Parser() throw () {}</span>
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span><span class="lineNoCov"> 0 : virtual const char* type() const throw ()</span>
+<span class="lineNum"> 82 </span> : {
+<span class="lineNum"> 83 </span><span class="lineNoCov"> 0 : return &quot;Parser&quot;;</span>
+<span class="lineNum"> 84 </span> : }
+<span class="lineNum"> 85 </span> : };
+<span class="lineNum"> 86 </span> :
+<span class="lineNum"> 87 </span> : }
+<span class="lineNum"> 88 </span> :
+<span class="lineNum"> 89 </span> : namespace input {
+<span class="lineNum"> 90 </span> :
+<span class="lineNum"> 91 </span> : /**
+<span class="lineNum"> 92 </span> : * Generic interface for parser input readers.
+<span class="lineNum"> 93 </span> : *
+<span class="lineNum"> 94 </span> : * It encapsulates and hides the reading machinery. It can be implemented as a
+<span class="lineNum"> 95 </span> : * file read, a stream read, a decompressing file read, a network read or
+<span class="lineNum"> 96 </span> : * whatever else is needed.
+<span class="lineNum"> 97 </span> : */
+<span class="lineNum"> 98 </span> : class Input
+<span class="lineNum"> 99 </span> : {
+<span class="lineNum"> 100 </span> : public:
+<span class="lineNum"> 101 </span> : static const int Eof = -1;
+<span class="lineNum"> 102 </span> :
+<span class="lineNum"> 103 </span> : Input() {}
+<span class="lineNum"> 104 </span><span class="lineCov"> 1305 : virtual ~Input() {}</span>
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span> : virtual const std::string&amp; fileName() const = 0;
+<span class="lineNum"> 107 </span> : virtual int lineNumber() const = 0;
+<span class="lineNum"> 108 </span> : virtual int nextChar() = 0;
+<span class="lineNum"> 109 </span> : virtual void pushChar(int c) = 0;
+<span class="lineNum"> 110 </span> : };
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span> : }
+<span class="lineNum"> 113 </span> :
+<span class="lineNum"> 114 </span> : }
+<span class="lineNum"> 115 </span> :
+<span class="lineNum"> 116 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 117 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/input/index.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/input/index.html
new file mode 100644
index 0000000..2d2187e
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/input/index.html
@@ -0,0 +1,101 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/input</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - /usr/include/tagcoll-2.0.11/tagcoll/input</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">16</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">18.8 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">3</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="base.h.gcov.html">base.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../ruby.png" width=7 height=10 alt="7.1%"><img src="../../../../../snow.png" width=93 height=10 alt="7.1%"></td></tr></table>
+ </td>
+ <td class="coverPerLo">7.1&nbsp;%</td>
+ <td class="coverNumLo">1&nbsp;/&nbsp;14&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="memory.h.gcov.html">memory.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">1&nbsp;/&nbsp;1&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="string.h.gcov.html">string.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">1&nbsp;/&nbsp;1&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/input/memory.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/input/memory.h.gcov.html
new file mode 100644
index 0000000..c7d8a43
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/input/memory.h.gcov.html
@@ -0,0 +1,127 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/input/memory.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/input</a> - memory.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_INPUT_MEMORY_H
+<span class="lineNum"> 2 </span> : #define TAGCOLL_INPUT_MEMORY_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** \file
+<span class="lineNum"> 5 </span> : * Parser input using a buffer as input
+<span class="lineNum"> 6 </span> : */
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : /*
+<span class="lineNum"> 9 </span> : * Copyright (C) 2003-2006 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 12 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 13 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 14 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 19 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 20 </span> : *
+<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 22 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 24 </span> : */
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;tagcoll/input/base.h&gt;
+<span class="lineNum"> 27 </span> : #include &lt;string&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : namespace tagcoll {
+<span class="lineNum"> 30 </span> : namespace input {
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : /**
+<span class="lineNum"> 33 </span> : * Parser input using a std::string as input
+<span class="lineNum"> 34 </span> : */
+<span class="lineNum"> 35 </span> : class Memory : public Input
+<span class="lineNum"> 36 </span> : {
+<span class="lineNum"> 37 </span> : protected:
+<span class="lineNum"> 38 </span> : const std::string fname;
+<span class="lineNum"> 39 </span> : const char* buf;
+<span class="lineNum"> 40 </span> : int pos;
+<span class="lineNum"> 41 </span> : int len;
+<span class="lineNum"> 42 </span> : int _line;
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span> : public:
+<span class="lineNum"> 45 </span> : Memory(const std::string&amp; fname, const char* buf, int len) throw ();
+<span class="lineNum"> 46 </span> : Memory(const char* buf, int len) throw ();
+<span class="lineNum"> 47 </span><span class="lineCov"> 1301 : virtual ~Memory() throw () {}</span>
+<span class="lineNum"> 48 </span> :
+<span class="lineNum"> 49 </span> : virtual const std::string&amp; fileName() const throw () { return fname; }
+<span class="lineNum"> 50 </span> : virtual int lineNumber() const throw () { return _line; }
+<span class="lineNum"> 51 </span> :
+<span class="lineNum"> 52 </span> : virtual int nextChar() throw ();
+<span class="lineNum"> 53 </span> : virtual void pushChar(int c) throw ();
+<span class="lineNum"> 54 </span> : };
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span> : }
+<span class="lineNum"> 57 </span> : }
+<span class="lineNum"> 58 </span> :
+<span class="lineNum"> 59 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 60 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/input/string.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/input/string.h.gcov.html
new file mode 100644
index 0000000..e3f330c
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/input/string.h.gcov.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/input/string.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/input</a> - string.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_INPUT_STRING_H
+<span class="lineNum"> 2 </span> : #define TAGCOLL_INPUT_STRING_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** \file
+<span class="lineNum"> 5 </span> : * Parser input using a std::string as input
+<span class="lineNum"> 6 </span> : */
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : /*
+<span class="lineNum"> 9 </span> : * Copyright (C) 2003--2006 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 12 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 13 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 14 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 19 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 20 </span> : *
+<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 22 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 24 </span> : */
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;tagcoll/input/base.h&gt;
+<span class="lineNum"> 27 </span> : #include &lt;string&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : namespace tagcoll {
+<span class="lineNum"> 30 </span> : namespace input {
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : /**
+<span class="lineNum"> 33 </span> : * Parser input using a std::string as input
+<span class="lineNum"> 34 </span> : */
+<span class="lineNum"> 35 </span> : class String : public Input
+<span class="lineNum"> 36 </span> : {
+<span class="lineNum"> 37 </span> : protected:
+<span class="lineNum"> 38 </span> : static const std::string fname;
+<span class="lineNum"> 39 </span> : std::string _str;
+<span class="lineNum"> 40 </span> : std::string::const_iterator _s;
+<span class="lineNum"> 41 </span> : int _line;
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : public:
+<span class="lineNum"> 44 </span> : String(const std::string&amp; str);
+<span class="lineNum"> 45 </span><span class="lineCov"> 4 : virtual ~String() {}</span>
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span> : virtual const std::string&amp; fileName() const throw () { return fname; }
+<span class="lineNum"> 48 </span> : virtual int lineNumber() const throw () { return _line; }
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span> : virtual int nextChar();
+<span class="lineNum"> 51 </span> : virtual void pushChar(int c);
+<span class="lineNum"> 52 </span> : };
+<span class="lineNum"> 53 </span> :
+<span class="lineNum"> 54 </span> : }
+<span class="lineNum"> 55 </span> : }
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 58 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/patch.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/patch.h.gcov.html
new file mode 100644
index 0000000..ba07ca2
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/patch.h.gcov.html
@@ -0,0 +1,271 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/patch.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll</a> - patch.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">42</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">42</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_PATCHES_H
+<span class="lineNum"> 2 </span> : #define TAGCOLL_PATCHES_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** \file
+<span class="lineNum"> 5 </span> : * Classes handling tag patches
+<span class="lineNum"> 6 </span> : */
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : /*
+<span class="lineNum"> 9 </span> : * Copyright (C) 2003,2004,2005,2006 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 12 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 13 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 14 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 19 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 20 </span> : *
+<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 22 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 24 </span> : */
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;wibble/operators.h&gt;
+<span class="lineNum"> 27 </span> : #include &lt;wibble/mixin.h&gt;
+<span class="lineNum"> 28 </span> : #include &lt;map&gt;
+<span class="lineNum"> 29 </span> : #include &lt;string&gt;
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : namespace tagcoll
+<span class="lineNum"> 32 </span> : {
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span> : /**
+<span class="lineNum"> 35 </span> : * Patch for the tagset of a specific item
+<span class="lineNum"> 36 </span> : */
+<span class="lineNum"> 37 </span> : template &lt;typename ITEM, typename TAG&gt;
+<span class="lineNum"> 38 </span> : struct Patch
+<span class="lineNum"> 39 </span> : {
+<span class="lineNum"> 40 </span> : ITEM item;
+<span class="lineNum"> 41 </span> : std::set&lt;TAG&gt; added;
+<span class="lineNum"> 42 </span> : std::set&lt;TAG&gt; removed;
+<span class="lineNum"> 43 </span> :
+<span class="lineNum"> 44 </span><span class="lineCov"> 55 : Patch(const Patch&lt;ITEM, TAG&gt;&amp; p) : item(p.item), added(p.added), removed(p.removed) {}</span>
+<span class="lineNum"> 45 </span><span class="lineCov"> 5 : Patch(const ITEM&amp; item) : item(item) {}</span>
+<span class="lineNum"> 46 </span><span class="lineCov"> 2 : Patch(const ITEM&amp; item, const std::set&lt;TAG&gt;&amp; added, const std::set&lt;TAG&gt;&amp; removed);</span>
+<span class="lineNum"> 47 </span> : template&lt;typename CONTA, typename CONTB&gt;
+<span class="lineNum"> 48 </span><span class="lineCov"> 2 : Patch(const ITEM&amp; item, const CONTA&amp; added, const CONTB&amp; removed);</span>
+<span class="lineNum"> 49 </span><span class="lineCov"> 66 : ~Patch() {}</span>
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span><span class="lineCov"> 5 : void add(const TAG&amp; tag)</span>
+<span class="lineNum"> 52 </span> : {
+<span class="lineNum"> 53 </span> : using namespace wibble::operators;
+<span class="lineNum"> 54 </span><span class="lineCov"> 5 : added |= tag; removed -= tag;</span>
+<span class="lineNum"> 55 </span><span class="lineCov"> 5 : }</span>
+<span class="lineNum"> 56 </span><span class="lineCov"> 2 : void add(const std::set&lt;TAG&gt;&amp; tags)</span>
+<span class="lineNum"> 57 </span> : {
+<span class="lineNum"> 58 </span> : using namespace wibble::operators;
+<span class="lineNum"> 59 </span><span class="lineCov"> 2 : added |= tags; removed -= tags;</span>
+<span class="lineNum"> 60 </span><span class="lineCov"> 2 : }</span>
+<span class="lineNum"> 61 </span><span class="lineCov"> 2 : void remove(const TAG&amp; tag)</span>
+<span class="lineNum"> 62 </span> : {
+<span class="lineNum"> 63 </span> : using namespace wibble::operators;
+<span class="lineNum"> 64 </span><span class="lineCov"> 2 : removed |= tag; added -= tag;</span>
+<span class="lineNum"> 65 </span><span class="lineCov"> 2 : }</span>
+<span class="lineNum"> 66 </span><span class="lineCov"> 2 : void remove(const std::set&lt;TAG&gt;&amp; tags)</span>
+<span class="lineNum"> 67 </span> : {
+<span class="lineNum"> 68 </span> : using namespace wibble::operators;
+<span class="lineNum"> 69 </span><span class="lineCov"> 2 : removed |= tags; added -= tags;</span>
+<span class="lineNum"> 70 </span><span class="lineCov"> 2 : }</span>
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span> : Patch&lt;ITEM, TAG&gt; getReverse() const
+<span class="lineNum"> 73 </span> : {
+<span class="lineNum"> 74 </span> : return Patch&lt;ITEM, TAG&gt;(item, removed, added);
+<span class="lineNum"> 75 </span> : }
+<span class="lineNum"> 76 </span> :
+<span class="lineNum"> 77 </span><span class="lineCov"> 2 : void mergeWith(const Patch&lt;ITEM, TAG&gt;&amp; patch)</span>
+<span class="lineNum"> 78 </span> : {
+<span class="lineNum"> 79 </span><span class="lineCov"> 2 : add(patch.added);</span>
+<span class="lineNum"> 80 </span><span class="lineCov"> 2 : remove(patch.removed);</span>
+<span class="lineNum"> 81 </span><span class="lineCov"> 2 : }</span>
+<span class="lineNum"> 82 </span> :
+<span class="lineNum"> 83 </span><span class="lineCov"> 1 : std::set&lt;TAG&gt; apply(const std::set&lt;TAG&gt;&amp; ts) const</span>
+<span class="lineNum"> 84 </span> : {
+<span class="lineNum"> 85 </span> : using namespace wibble::operators;
+<span class="lineNum"> 86 </span><span class="lineCov"> 1 : return (ts | added) - removed;</span>
+<span class="lineNum"> 87 </span> : }
+<span class="lineNum"> 88 </span> :
+<span class="lineNum"> 89 </span> : template&lt;typename TAGS&gt;
+<span class="lineNum"> 90 </span> : std::set&lt;TAG&gt; apply(const TAGS&amp; tags) const
+<span class="lineNum"> 91 </span> : {
+<span class="lineNum"> 92 </span> : using namespace wibble::operators;
+<span class="lineNum"> 93 </span> : std::set&lt;TAG&gt; ts;
+<span class="lineNum"> 94 </span> : for (typename TAGS::const_iterator i = tags.begin();
+<span class="lineNum"> 95 </span> : i != tags.end(); ++i)
+<span class="lineNum"> 96 </span> : ts.insert(*i);
+<span class="lineNum"> 97 </span> : return (ts | added) - removed;
+<span class="lineNum"> 98 </span> : }
+<span class="lineNum"> 99 </span> :
+<span class="lineNum"> 100 </span><span class="lineCov"> 4 : void removeRedundant(const std::set&lt;TAG&gt; ts)</span>
+<span class="lineNum"> 101 </span> : {
+<span class="lineNum"> 102 </span> : using namespace wibble::operators;
+<span class="lineNum"> 103 </span> : // Don't add what already exists
+<span class="lineNum"> 104 </span><span class="lineCov"> 4 : added -= ts;</span>
+<span class="lineNum"> 105 </span> : // Don't remove what does not exist
+<span class="lineNum"> 106 </span><span class="lineCov"> 4 : removed -= (removed - ts);</span>
+<span class="lineNum"> 107 </span><span class="lineCov"> 4 : }</span>
+<span class="lineNum"> 108 </span> :
+<span class="lineNum"> 109 </span> : bool operator==(const Patch&lt;ITEM, TAG&gt;&amp; p) const
+<span class="lineNum"> 110 </span> : {
+<span class="lineNum"> 111 </span> : return p.item == item &amp;&amp; p.added == added &amp;&amp; p.removed == removed;
+<span class="lineNum"> 112 </span> : }
+<span class="lineNum"> 113 </span> : bool operator!=(const Patch&lt;ITEM, TAG&gt;&amp; p) const
+<span class="lineNum"> 114 </span> : {
+<span class="lineNum"> 115 </span> : return p.item != item || p.added != added || p.removed != removed;
+<span class="lineNum"> 116 </span> : }
+<span class="lineNum"> 117 </span> : };
+<span class="lineNum"> 118 </span> :
+<span class="lineNum"> 119 </span> : /**
+<span class="lineNum"> 120 </span> : * List of patches that can be applied to a TaggedCollection
+<span class="lineNum"> 121 </span> : */
+<span class="lineNum"> 122 </span> : template &lt;class ITEM, class TAG&gt;
+<span class="lineNum"> 123 </span> : class PatchList : public std::map&lt;ITEM, Patch&lt;ITEM, TAG&gt; &gt;
+<span class="lineNum"> 124 </span><span class="lineCov"> 36 : {</span>
+<span class="lineNum"> 125 </span> : public:
+<span class="lineNum"> 126 </span><span class="lineCov"> 32 : PatchList() {}</span>
+<span class="lineNum"> 127 </span><span class="lineCov"> 3 : PatchList(const PatchList&amp; pl) : std::map&lt;ITEM, Patch&lt;ITEM, TAG&gt; &gt;(pl) {}</span>
+<span class="lineNum"> 128 </span> :
+<span class="lineNum"> 129 </span> : typedef typename std::map&lt;ITEM, Patch&lt;ITEM, TAG&gt; &gt;::const_iterator const_iterator;
+<span class="lineNum"> 130 </span> : typedef typename std::map&lt;ITEM, Patch&lt;ITEM, TAG&gt; &gt;::iterator iterator;
+<span class="lineNum"> 131 </span> :
+<span class="lineNum"> 132 </span> : /**
+<span class="lineNum"> 133 </span> : * Add to this patchlist the patches needed to transform `im1' in `im2'
+<span class="lineNum"> 134 </span> : */
+<span class="lineNum"> 135 </span> : template&lt;typename COLL1, typename COLL2&gt;
+<span class="lineNum"> 136 </span> : void addPatch(const COLL1&amp; im1, const COLL2&amp; im2);
+<span class="lineNum"> 137 </span> :
+<span class="lineNum"> 138 </span> : /**
+<span class="lineNum"> 139 </span> : * Add `patch' to this PatchList
+<span class="lineNum"> 140 </span> : */
+<span class="lineNum"> 141 </span><span class="lineCov"> 15 : void addPatch(const Patch&lt;ITEM, TAG&gt;&amp; patch);</span>
+<span class="lineNum"> 142 </span> :
+<span class="lineNum"> 143 </span> : /**
+<span class="lineNum"> 144 </span> : * Add `patches' to this PatchList
+<span class="lineNum"> 145 </span> : */
+<span class="lineNum"> 146 </span> : void addPatch(const PatchList&lt;ITEM, TAG&gt;&amp; patches);
+<span class="lineNum"> 147 </span> :
+<span class="lineNum"> 148 </span> : /**
+<span class="lineNum"> 149 </span> : * Add 'patch' to this PatchList, as tag: +/- package rather than package
+<span class="lineNum"> 150 </span> : * +/- tag
+<span class="lineNum"> 151 </span> : */
+<span class="lineNum"> 152 </span><span class="lineCov"> 2 : void addPatchInverted(const Patch&lt;TAG, ITEM&gt;&amp; patch);</span>
+<span class="lineNum"> 153 </span> :
+<span class="lineNum"> 154 </span> : /**
+<span class="lineNum"> 155 </span> : * Add 'patches' to this PatchList, as tag: +/- package rather than package
+<span class="lineNum"> 156 </span> : * +/- tag
+<span class="lineNum"> 157 </span> : */
+<span class="lineNum"> 158 </span><span class="lineCov"> 2 : void addPatchInverted(const PatchList&lt;TAG, ITEM&gt;&amp; patches);</span>
+<span class="lineNum"> 159 </span> :
+<span class="lineNum"> 160 </span> : /**
+<span class="lineNum"> 161 </span> : * If the PatchList contains the give item, invoke
+<span class="lineNum"> 162 </span> : * Patch::removeRedundant(tags) on its patch
+<span class="lineNum"> 163 </span> : */
+<span class="lineNum"> 164 </span><span class="lineCov"> 4 : void removeRedundant(const ITEM&amp; item, const std::set&lt;TAG&gt;&amp; tags);</span>
+<span class="lineNum"> 165 </span> :
+<span class="lineNum"> 166 </span> : /**
+<span class="lineNum"> 167 </span> : * Patch a tagged item
+<span class="lineNum"> 168 </span> : *
+<span class="lineNum"> 169 </span> : * @return
+<span class="lineNum"> 170 </span> : * The new (patched) set of tags
+<span class="lineNum"> 171 </span> : */
+<span class="lineNum"> 172 </span><span class="lineCov"> 14 : std::set&lt;TAG&gt; patch(const ITEM&amp; item, const std::set&lt;TAG&gt;&amp; tagset) const;</span>
+<span class="lineNum"> 173 </span> :
+<span class="lineNum"> 174 </span> : // Output the patch list to a TagcollConsumer
+<span class="lineNum"> 175 </span> : template&lt;typename OUT&gt;
+<span class="lineNum"> 176 </span><span class="lineCov"> 3 : void output(OUT out) const;</span>
+<span class="lineNum"> 177 </span> :
+<span class="lineNum"> 178 </span> : PatchList&lt;ITEM, TAG&gt; getReverse() const;
+<span class="lineNum"> 179 </span> : };
+<span class="lineNum"> 180 </span> :
+<span class="lineNum"> 181 </span> : template&lt;typename ITEM, typename TAG&gt;
+<span class="lineNum"> 182 </span> : class Inserter : public wibble::mixin::OutputIterator&lt; Inserter&lt;ITEM, TAG&gt; &gt;
+<span class="lineNum"> 183 </span> : {
+<span class="lineNum"> 184 </span> : PatchList&lt;ITEM, TAG&gt;&amp; patches;
+<span class="lineNum"> 185 </span> : public:
+<span class="lineNum"> 186 </span><span class="lineCov"> 3 : Inserter(PatchList&lt;ITEM, TAG&gt;&amp; patches) : patches(patches) {}</span>
+<span class="lineNum"> 187 </span> :
+<span class="lineNum"> 188 </span><span class="lineCov"> 3 : Inserter&lt;ITEM, TAG&gt;&amp; operator=(const Patch&lt;ITEM, TAG&gt;&amp; patch)</span>
+<span class="lineNum"> 189 </span> : {
+<span class="lineNum"> 190 </span><span class="lineCov"> 3 : patches.addPatch(patch);</span>
+<span class="lineNum"> 191 </span><span class="lineCov"> 3 : return *this;</span>
+<span class="lineNum"> 192 </span> : }
+<span class="lineNum"> 193 </span> : };
+<span class="lineNum"> 194 </span> :
+<span class="lineNum"> 195 </span> : template&lt;typename ITEM, typename TAG&gt;
+<span class="lineNum"> 196 </span><span class="lineCov"> 3 : Inserter&lt;ITEM, TAG&gt; inserter(PatchList&lt;ITEM, TAG&gt;&amp; patches)</span>
+<span class="lineNum"> 197 </span> : {
+<span class="lineNum"> 198 </span><span class="lineCov"> 3 : return Inserter&lt;ITEM, TAG&gt;(patches);</span>
+<span class="lineNum"> 199 </span> : }
+<span class="lineNum"> 200 </span> :
+<span class="lineNum"> 201 </span> : }
+<span class="lineNum"> 202 </span> :
+<span class="lineNum"> 203 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 204 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/patch.tcc.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/patch.tcc.gcov.html
new file mode 100644
index 0000000..129ac91
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/patch.tcc.gcov.html
@@ -0,0 +1,231 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/patch.tcc</title>
+ <link rel="stylesheet" type="text/css" href="../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll</a> - patch.tcc</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">35</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">88.6 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">31</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /*
+<span class="lineNum"> 2 </span> : * Classes handling tag patches
+<span class="lineNum"> 3 </span> : *
+<span class="lineNum"> 4 </span> : * Copyright (C) 2003--2006 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 5 </span> : *
+<span class="lineNum"> 6 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 7 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 8 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 9 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 12 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 13 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 14 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 17 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 18 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 19 </span> : */
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : #ifndef TAGCOLL_PATCHES_TCC
+<span class="lineNum"> 22 </span> : #define TAGCOLL_PATCHES_TCC
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : #include &lt;tagcoll/patch.h&gt;
+<span class="lineNum"> 25 </span> : #include &lt;wibble/singleton.h&gt;
+<span class="lineNum"> 26 </span> : #include &lt;wibble/empty.h&gt;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : using namespace std;
+<span class="lineNum"> 29 </span> : using namespace wibble::operators;
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : namespace tagcoll {
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : template &lt;typename ITEM, typename TAG&gt;
+<span class="lineNum"> 34 </span> : Patch&lt;ITEM, TAG&gt;::Patch(const ITEM&amp; item, const std::set&lt;TAG&gt;&amp; added, const std::set&lt;TAG&gt;&amp; removed)
+<span class="lineNum"> 35 </span><span class="lineCov"> 2 : : item(item), added(added-removed), removed(removed-added)</span>
+<span class="lineNum"> 36 </span><span class="lineNoCov"> 0 : {</span>
+<span class="lineNum"> 37 </span><span class="lineCov"> 2 : }</span>
+<span class="lineNum"> 38 </span> :
+<span class="lineNum"> 39 </span> : template &lt;typename ITEM, typename TAG&gt; template&lt;typename CONTA, typename CONTB&gt;
+<span class="lineNum"> 40 </span><span class="lineCov"> 2 : Patch&lt;ITEM, TAG&gt;::Patch(const ITEM&amp; item, const CONTA&amp; added, const CONTB&amp; removed)</span>
+<span class="lineNum"> 41 </span><span class="lineCov"> 4 : : item(item)</span>
+<span class="lineNum"> 42 </span> : {
+<span class="lineNum"> 43 </span><span class="lineCov"> 4 : std::copy(added.begin(), added.end(), inserter(this-&gt;added, this-&gt;added.begin()));</span>
+<span class="lineNum"> 44 </span><span class="lineCov"> 4 : std::copy(removed.begin(), removed.end(), inserter(this-&gt;removed, this-&gt;removed.begin()));</span>
+<span class="lineNum"> 45 </span><span class="lineCov"> 4 : }</span>
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span> : template &lt;class ITEM, class TAG&gt;
+<span class="lineNum"> 48 </span> : void PatchList&lt;ITEM, TAG&gt;::addPatch(const Patch&lt;ITEM, TAG&gt;&amp; patch)
+<span class="lineNum"> 49 </span> : {
+<span class="lineNum"> 50 </span> : // Filter out empty patches
+<span class="lineNum"> 51 </span><span class="lineCov"> 15 : if (patch.added.empty() &amp;&amp; patch.removed.empty())</span>
+<span class="lineNum"> 52 </span><span class="lineNoCov"> 0 : return;</span>
+<span class="lineNum"> 53 </span> :
+<span class="lineNum"> 54 </span><span class="lineCov"> 15 : iterator i = this-&gt;find(patch.item);</span>
+<span class="lineNum"> 55 </span><span class="lineCov"> 15 : if (i == this-&gt;end())</span>
+<span class="lineNum"> 56 </span><span class="lineCov"> 13 : insert(make_pair&lt;ITEM, Patch&lt;ITEM, TAG&gt; &gt;(patch.item, patch));</span>
+<span class="lineNum"> 57 </span> : else
+<span class="lineNum"> 58 </span><span class="lineCov"> 2 : i-&gt;second.mergeWith(patch);</span>
+<span class="lineNum"> 59 </span> : }
+<span class="lineNum"> 60 </span> :
+<span class="lineNum"> 61 </span> : template &lt;class ITEM, class TAG&gt;
+<span class="lineNum"> 62 </span> : void PatchList&lt;ITEM, TAG&gt;::addPatch(const PatchList&lt;ITEM, TAG&gt;&amp; patches)
+<span class="lineNum"> 63 </span> : {
+<span class="lineNum"> 64 </span> : for (typename PatchList&lt;ITEM, TAG&gt;::const_iterator i = patches.begin();
+<span class="lineNum"> 65 </span> : i != patches.end(); i++)
+<span class="lineNum"> 66 </span> : addPatch(i-&gt;second);
+<span class="lineNum"> 67 </span> : }
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span> : template &lt;class ITEM, class TAG&gt;
+<span class="lineNum"> 70 </span> : void PatchList&lt;ITEM, TAG&gt;::addPatchInverted(const Patch&lt;TAG, ITEM&gt;&amp; patch)
+<span class="lineNum"> 71 </span> : {
+<span class="lineNum"> 72 </span> : // Filter out empty patches
+<span class="lineNum"> 73 </span><span class="lineCov"> 2 : if (patch.added.empty() &amp;&amp; patch.removed.empty())</span>
+<span class="lineNum"> 74 </span><span class="lineNoCov"> 0 : return;</span>
+<span class="lineNum"> 75 </span> :
+<span class="lineNum"> 76 </span><span class="lineCov"> 8 : for (typename std::set&lt;ITEM&gt;::const_iterator i = patch.added.begin();</span>
+<span class="lineNum"> 77 </span> : i != patch.added.end(); ++i)
+<span class="lineNum"> 78 </span><span class="lineCov"> 2 : addPatch(Patch&lt;ITEM, TAG&gt;(*i, wibble::singleton(patch.item), wibble::Empty&lt;TAG&gt;()));</span>
+<span class="lineNum"> 79 </span><span class="lineCov"> 4 : for (typename std::set&lt;ITEM&gt;::const_iterator i = patch.removed.begin();</span>
+<span class="lineNum"> 80 </span> : i != patch.removed.end(); ++i)
+<span class="lineNum"> 81 </span><span class="lineNoCov"> 0 : addPatch(Patch&lt;ITEM, TAG&gt;(*i, wibble::Empty&lt;TAG&gt;(), wibble::singleton(patch.item)));</span>
+<span class="lineNum"> 82 </span> : }
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span> : template &lt;class ITEM, class TAG&gt;
+<span class="lineNum"> 85 </span> : void PatchList&lt;ITEM, TAG&gt;::addPatchInverted(const PatchList&lt;TAG, ITEM&gt;&amp; patches)
+<span class="lineNum"> 86 </span> : {
+<span class="lineNum"> 87 </span><span class="lineCov"> 4 : for (typename PatchList&lt;TAG, ITEM&gt;::const_iterator i = patches.begin();</span>
+<span class="lineNum"> 88 </span> : i != patches.end(); i++)
+<span class="lineNum"> 89 </span><span class="lineCov"> 2 : addPatchInverted(i-&gt;second);</span>
+<span class="lineNum"> 90 </span><span class="lineCov"> 2 : }</span>
+<span class="lineNum"> 91 </span> :
+<span class="lineNum"> 92 </span> :
+<span class="lineNum"> 93 </span> : template &lt;class ITEM, class TAG&gt; template&lt;typename COLL1, typename COLL2&gt;
+<span class="lineNum"> 94 </span> : void PatchList&lt;ITEM, TAG&gt;::addPatch(const COLL1&amp; im1, const COLL2&amp; im2)
+<span class="lineNum"> 95 </span> : {
+<span class="lineNum"> 96 </span> : // FIXME: if I could implement the guarantee that the collection iterators
+<span class="lineNum"> 97 </span> : // iterate in sorted item order, then I wouldn't need to extract all the
+<span class="lineNum"> 98 </span> : // items of im2
+<span class="lineNum"> 99 </span> : std::set&lt;ITEM&gt; im2items = im2.getTaggedItems();
+<span class="lineNum"> 100 </span> : for (typename COLL1::const_iterator i1 = im1.begin();
+<span class="lineNum"> 101 </span> : i1 != im1.end(); ++i1)
+<span class="lineNum"> 102 </span> : {
+<span class="lineNum"> 103 </span> : im2items.erase(i1-&gt;first);
+<span class="lineNum"> 104 </span> : std::set&lt;TAG&gt; ts2 = im2.getTagsOfItem(i1-&gt;first);
+<span class="lineNum"> 105 </span> : std::set&lt;TAG&gt; added = ts2 - i1-&gt;second;
+<span class="lineNum"> 106 </span> : std::set&lt;TAG&gt; removed = i1-&gt;second - ts2;
+<span class="lineNum"> 107 </span> : if (!added.empty() || !removed.empty())
+<span class="lineNum"> 108 </span> : addPatch(Patch&lt;ITEM, TAG&gt;(i1-&gt;first, added, removed));
+<span class="lineNum"> 109 </span> : }
+<span class="lineNum"> 110 </span> : for (typename std::set&lt;ITEM&gt;::const_iterator i = im2items.begin();
+<span class="lineNum"> 111 </span> : i != im2items.end(); ++i)
+<span class="lineNum"> 112 </span> : {
+<span class="lineNum"> 113 </span> : addPatch(Patch&lt;ITEM, TAG&gt;(*i, im2.getTagsOfItem(*i), wibble::Empty&lt;TAG&gt;()));
+<span class="lineNum"> 114 </span> : }
+<span class="lineNum"> 115 </span> : }
+<span class="lineNum"> 116 </span> :
+<span class="lineNum"> 117 </span> : template &lt;class ITEM, class TAG&gt;
+<span class="lineNum"> 118 </span> : void PatchList&lt;ITEM, TAG&gt;::removeRedundant(const ITEM&amp; item, const std::set&lt;TAG&gt;&amp; tags)
+<span class="lineNum"> 119 </span> : {
+<span class="lineNum"> 120 </span><span class="lineCov"> 4 : iterator i = this-&gt;find(item);</span>
+<span class="lineNum"> 121 </span><span class="lineCov"> 4 : if (i == this-&gt;end()) return;</span>
+<span class="lineNum"> 122 </span><span class="lineCov"> 4 : i-&gt;second.removeRedundant(tags);</span>
+<span class="lineNum"> 123 </span> : }
+<span class="lineNum"> 124 </span> :
+<span class="lineNum"> 125 </span> : template &lt;class ITEM, class TAG&gt;
+<span class="lineNum"> 126 </span> : std::set&lt;TAG&gt; PatchList&lt;ITEM, TAG&gt;::patch(const ITEM&amp; item, const std::set&lt;TAG&gt;&amp; tagset) const
+<span class="lineNum"> 127 </span> : {
+<span class="lineNum"> 128 </span> : // Find the patch record for this item
+<span class="lineNum"> 129 </span><span class="lineCov"> 14 : const_iterator p = this-&gt;find(item);</span>
+<span class="lineNum"> 130 </span><span class="lineCov"> 14 : if (p == this-&gt;end())</span>
+<span class="lineNum"> 131 </span> : // If there are no patches, return the tagset unchanged
+<span class="lineNum"> 132 </span><span class="lineCov"> 13 : return tagset;</span>
+<span class="lineNum"> 133 </span> :
+<span class="lineNum"> 134 </span> : // There are patches: apply them:
+<span class="lineNum"> 135 </span><span class="lineCov"> 1 : return p-&gt;second.apply(tagset);</span>
+<span class="lineNum"> 136 </span> : }
+<span class="lineNum"> 137 </span> :
+<span class="lineNum"> 138 </span> : template &lt;class ITEM, class TAG&gt;
+<span class="lineNum"> 139 </span> : PatchList&lt;ITEM, TAG&gt; PatchList&lt;ITEM, TAG&gt;::getReverse() const
+<span class="lineNum"> 140 </span> : {
+<span class="lineNum"> 141 </span> : PatchList&lt;ITEM, TAG&gt; res;
+<span class="lineNum"> 142 </span> : for (typename PatchList&lt;ITEM, TAG&gt;::const_iterator i = this-&gt;begin();
+<span class="lineNum"> 143 </span> : i != this-&gt;end(); i++)
+<span class="lineNum"> 144 </span> : res.addPatch(i-&gt;second.getReverse());
+<span class="lineNum"> 145 </span> : return res;
+<span class="lineNum"> 146 </span> : }
+<span class="lineNum"> 147 </span> :
+<span class="lineNum"> 148 </span> : template&lt;typename ITEM, typename TAG&gt; template&lt;typename OUT&gt;
+<span class="lineNum"> 149 </span> : void PatchList&lt;ITEM, TAG&gt;::output(OUT out) const
+<span class="lineNum"> 150 </span> : {
+<span class="lineNum"> 151 </span><span class="lineCov"> 6 : for (typename PatchList&lt;ITEM, TAG&gt;::const_iterator i = this-&gt;begin();</span>
+<span class="lineNum"> 152 </span> : i != this-&gt;end(); ++i)
+<span class="lineNum"> 153 </span> : {
+<span class="lineNum"> 154 </span><span class="lineCov"> 3 : *out = i-&gt;second;</span>
+<span class="lineNum"> 155 </span><span class="lineCov"> 3 : ++out;</span>
+<span class="lineNum"> 156 </span> : }
+<span class="lineNum"> 157 </span><span class="lineCov"> 3 : }</span>
+<span class="lineNum"> 158 </span> :
+<span class="lineNum"> 159 </span> :
+<span class="lineNum"> 160 </span><span class="lineCov"> 6 : }</span>
+<span class="lineNum"> 161 </span> :
+<span class="lineNum"> 162 </span> : #endif
+<span class="lineNum"> 163 </span> :
+<span class="lineNum"> 164 </span> : // vim:set ts=4 sw=4:
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/stream/index.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/stream/index.html
new file mode 100644
index 0000000..fdf6159
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/stream/index.html
@@ -0,0 +1,83 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/stream</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - /usr/include/tagcoll-2.0.11/tagcoll/stream</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">8</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">8</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="sink.h.gcov.html">sink.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">8&nbsp;/&nbsp;8&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/stream/sink.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/stream/sink.h.gcov.html
new file mode 100644
index 0000000..159f2ea
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/stream/sink.h.gcov.html
@@ -0,0 +1,150 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/stream/sink.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/stream</a> - sink.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">8</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">8</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_STREAM_SINK_H
+<span class="lineNum"> 2 </span> : #define TAGCOLL_STREAM_SINK_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** \file
+<span class="lineNum"> 5 </span> : * Consumer interface for a stream of tagged items
+<span class="lineNum"> 6 </span> : */
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : /*
+<span class="lineNum"> 9 </span> : * Copyright (C) 2003,2004,2005,2006 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 12 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 13 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 14 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 19 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 20 </span> : *
+<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 22 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 24 </span> : */
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;wibble/mixin.h&gt;
+<span class="lineNum"> 27 </span> : #include &lt;utility&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : namespace tagcoll {
+<span class="lineNum"> 30 </span> : namespace stream {
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : /**
+<span class="lineNum"> 33 </span> : * Consumer that discards its input
+<span class="lineNum"> 34 </span> : */
+<span class="lineNum"> 35 </span> : class Sink : public wibble::mixin::OutputIterator&lt;Sink&gt;
+<span class="lineNum"> 36 </span> : {
+<span class="lineNum"> 37 </span> : public:
+<span class="lineNum"> 38 </span> : template&lt;typename Data&gt;
+<span class="lineNum"> 39 </span> : const Sink&amp; operator=(const Data&amp;) const { return *this; }
+<span class="lineNum"> 40 </span> : };
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span> : inline Sink sink()
+<span class="lineNum"> 43 </span> : {
+<span class="lineNum"> 44 </span> : return Sink();
+<span class="lineNum"> 45 </span> : }
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span> :
+<span class="lineNum"> 48 </span> : /**
+<span class="lineNum"> 49 </span> : * Consumer that discards its input
+<span class="lineNum"> 50 </span> : */
+<span class="lineNum"> 51 </span> : template&lt;typename COUNTER&gt;
+<span class="lineNum"> 52 </span> : class CountingSink : public wibble::mixin::OutputIterator&lt; CountingSink&lt;COUNTER&gt; &gt;
+<span class="lineNum"> 53 </span> : {
+<span class="lineNum"> 54 </span> : COUNTER&amp; countItems;
+<span class="lineNum"> 55 </span> : COUNTER&amp; countTags;
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : public:
+<span class="lineNum"> 58 </span><span class="lineCov"> 2 : CountingSink(COUNTER&amp; countItems, COUNTER&amp; countTags) :</span>
+<span class="lineNum"> 59 </span><span class="lineCov"> 2 : countItems(countItems), countTags(countTags) {}</span>
+<span class="lineNum"> 60 </span> :
+<span class="lineNum"> 61 </span> : // TODO: see if there's a way of implementing the count using size() when
+<span class="lineNum"> 62 </span> : // the method actually exists
+<span class="lineNum"> 63 </span> : template&lt;typename ITEMS, typename TAGS&gt;
+<span class="lineNum"> 64 </span><span class="lineCov"> 42266 : CountingSink&amp; operator=(const std::pair&lt;ITEMS, TAGS&gt;&amp; data)</span>
+<span class="lineNum"> 65 </span> : {
+<span class="lineNum"> 66 </span><span class="lineCov"> 42266 : countItems += data.first.size();</span>
+<span class="lineNum"> 67 </span><span class="lineCov"> 42266 : countTags += data.second.size();</span>
+<span class="lineNum"> 68 </span><span class="lineCov"> 42266 : return *this;</span>
+<span class="lineNum"> 69 </span> : }
+<span class="lineNum"> 70 </span> : };
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span> : template&lt;typename COUNTER&gt;
+<span class="lineNum"> 73 </span><span class="lineCov"> 2 : inline CountingSink&lt;COUNTER&gt; countingSink(COUNTER&amp; countItems, COUNTER&amp; countTags)</span>
+<span class="lineNum"> 74 </span> : {
+<span class="lineNum"> 75 </span><span class="lineCov"> 2 : return CountingSink&lt;COUNTER&gt;(countItems, countTags);</span>
+<span class="lineNum"> 76 </span> : }
+<span class="lineNum"> 77 </span> :
+<span class="lineNum"> 78 </span> :
+<span class="lineNum"> 79 </span> : }
+<span class="lineNum"> 80 </span> : }
+<span class="lineNum"> 81 </span> :
+<span class="lineNum"> 82 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 83 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/utils/index.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/utils/index.html
new file mode 100644
index 0000000..05577be
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/utils/index.html
@@ -0,0 +1,83 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/utils</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - /usr/include/tagcoll-2.0.11/tagcoll/utils</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">12</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">83.3 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">10</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="set.h.gcov.html">set.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../../../emerald.png" width=83 height=10 alt="83.3%"><img src="../../../../../snow.png" width=17 height=10 alt="83.3%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">83.3&nbsp;%</td>
+ <td class="coverNumHi">10&nbsp;/&nbsp;12&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/tagcoll-2.0.11/tagcoll/utils/set.h.gcov.html b/rep/usr/include/tagcoll-2.0.11/tagcoll/utils/set.h.gcov.html
new file mode 100644
index 0000000..2ddbb97
--- /dev/null
+++ b/rep/usr/include/tagcoll-2.0.11/tagcoll/utils/set.h.gcov.html
@@ -0,0 +1,155 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/tagcoll-2.0.11/tagcoll/utils/set.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../../../index.html">directory</a> - <a href="index.html">usr/include/tagcoll-2.0.11/tagcoll/utils</a> - set.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">12</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">83.3 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">10</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : #ifndef TAGCOLL_UTILS_SET_H
+<span class="lineNum"> 2 </span> : #define TAGCOLL_UTILS_SET_H
+<span class="lineNum"> 3 </span> :
+<span class="lineNum"> 4 </span> : /** \file
+<span class="lineNum"> 5 </span> : * Extra useful set operations
+<span class="lineNum"> 6 </span> : */
+<span class="lineNum"> 7 </span> :
+<span class="lineNum"> 8 </span> : /*
+<span class="lineNum"> 9 </span> : * Copyright (C) 2003,2004,2005,2006 Enrico Zini &lt;enrico@debian.org&gt;
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This library is free software; you can redistribute it and/or
+<span class="lineNum"> 12 </span> : * modify it under the terms of the GNU Lesser General Public
+<span class="lineNum"> 13 </span> : * License as published by the Free Software Foundation; either
+<span class="lineNum"> 14 </span> : * version 2.1 of the License, or (at your option) any later version.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * This library is distributed in the hope that it will be useful,
+<span class="lineNum"> 17 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 18 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+<span class="lineNum"> 19 </span> : * Lesser General Public License for more details.
+<span class="lineNum"> 20 </span> : *
+<span class="lineNum"> 21 </span> : * You should have received a copy of the GNU Lesser General Public
+<span class="lineNum"> 22 </span> : * License along with this library; if not, write to the Free Software
+<span class="lineNum"> 23 </span> : * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+<span class="lineNum"> 24 </span> : */
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;wibble/operators.h&gt;
+<span class="lineNum"> 27 </span> : #include &lt;set&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : namespace tagcoll {
+<span class="lineNum"> 30 </span> : namespace utils {
+<span class="lineNum"> 31 </span> :
+<span class="lineNum"> 32 </span> : template&lt;typename T&gt;
+<span class="lineNum"> 33 </span> : int set_distance(const std::set&lt;T&gt;&amp; set1, const std::set&lt;T&gt;&amp; set2)
+<span class="lineNum"> 34 </span> : {
+<span class="lineNum"> 35 </span> : int res = 0;
+<span class="lineNum"> 36 </span> : int intCount = 0;
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : typename std::set&lt;T&gt;::const_iterator a = set1.begin();
+<span class="lineNum"> 39 </span> : typename std::set&lt;T&gt;::const_iterator b = set2.begin();
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : while (a != set1.end() || b != set2.end())
+<span class="lineNum"> 42 </span> : if ((b == set2.end()) || (a != set1.end() &amp;&amp; *a &lt; *b))
+<span class="lineNum"> 43 </span> : {
+<span class="lineNum"> 44 </span> : res++;
+<span class="lineNum"> 45 </span> : a++;
+<span class="lineNum"> 46 </span> : }
+<span class="lineNum"> 47 </span> : else if ((a == set1.end()) || (b != set2.end() &amp;&amp; *b &lt; *a))
+<span class="lineNum"> 48 </span> : {
+<span class="lineNum"> 49 </span> : res++;
+<span class="lineNum"> 50 </span> : b++;
+<span class="lineNum"> 51 </span> : }
+<span class="lineNum"> 52 </span> : else
+<span class="lineNum"> 53 </span> : {
+<span class="lineNum"> 54 </span> : a++;
+<span class="lineNum"> 55 </span> : b++;
+<span class="lineNum"> 56 </span> : intCount++;
+<span class="lineNum"> 57 </span> : }
+<span class="lineNum"> 58 </span> :
+<span class="lineNum"> 59 </span> : return intCount ? res : -1;
+<span class="lineNum"> 60 </span> : }
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : template&lt;typename T&gt;
+<span class="lineNum"> 63 </span><span class="lineCov"> 1 : bool set_contains(const std::set&lt;T&gt;&amp; set1, const std::set&lt;T&gt;&amp; set2)</span>
+<span class="lineNum"> 64 </span> : {
+<span class="lineNum"> 65 </span><span class="lineCov"> 1 : typename std::set&lt;T&gt;::const_iterator b = set2.begin();</span>
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span><span class="lineCov"> 574 : for (typename std::set&lt;T&gt;::const_iterator a = set1.begin(); a != set1.end(); ++a)</span>
+<span class="lineNum"> 68 </span><span class="lineCov"> 574 : if (b == set2.end())</span>
+<span class="lineNum"> 69 </span><span class="lineCov"> 1 : return true;</span>
+<span class="lineNum"> 70 </span><span class="lineCov"> 573 : else if (*a == *b)</span>
+<span class="lineNum"> 71 </span><span class="lineCov"> 31 : b++;</span>
+<span class="lineNum"> 72 </span><span class="lineCov"> 542 : else if (*b &lt; *a)</span>
+<span class="lineNum"> 73 </span><span class="lineNoCov"> 0 : return false;</span>
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span><span class="lineNoCov"> 0 : return b == set2.end();</span>
+<span class="lineNum"> 76 </span> : }
+<span class="lineNum"> 77 </span> :
+<span class="lineNum"> 78 </span> : template&lt;typename T&gt;
+<span class="lineNum"> 79 </span><span class="lineCov"> 4 : bool set_contains(const std::set&lt;T&gt;&amp; set1, const T&amp; item)</span>
+<span class="lineNum"> 80 </span> : {
+<span class="lineNum"> 81 </span><span class="lineCov"> 4 : return set1.find(item) != set1.end();</span>
+<span class="lineNum"> 82 </span> : }
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span> : }
+<span class="lineNum"> 85 </span> : }
+<span class="lineNum"> 86 </span> :
+<span class="lineNum"> 87 </span> : // vim:set ts=4 sw=4:
+<span class="lineNum"> 88 </span> : #endif
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/xapian/base.h.gcov.html b/rep/usr/include/xapian/base.h.gcov.html
new file mode 100644
index 0000000..3717ae6
--- /dev/null
+++ b/rep/usr/include/xapian/base.h.gcov.html
@@ -0,0 +1,239 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/xapian/base.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">usr/include/xapian</a> - base.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">11</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">45.5 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">5</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /* base.h: Reference-counted pointers
+<span class="lineNum"> 2 </span> : *
+<span class="lineNum"> 3 </span> : * Copyright 1999,2000,2001 BrightStation PLC
+<span class="lineNum"> 4 </span> : * Copyright 2002 Ananova Ltd
+<span class="lineNum"> 5 </span> : * Copyright 2002,2003,2004,2007 Olly Betts
+<span class="lineNum"> 6 </span> : *
+<span class="lineNum"> 7 </span> : * This program is free software; you can redistribute it and/or
+<span class="lineNum"> 8 </span> : * modify it under the terms of the GNU General Public License as
+<span class="lineNum"> 9 </span> : * published by the Free Software Foundation; either version 2 of the
+<span class="lineNum"> 10 </span> : * License, or (at your option) any later version.
+<span class="lineNum"> 11 </span> : *
+<span class="lineNum"> 12 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 16 </span> : *
+<span class="lineNum"> 17 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 18 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 19 </span> : * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
+<span class="lineNum"> 20 </span> : * USA
+<span class="lineNum"> 21 </span> : */
+<span class="lineNum"> 22 </span> :
+<span class="lineNum"> 23 </span> : #ifndef XAPIAN_INCLUDED_BASE_H
+<span class="lineNum"> 24 </span> : #define XAPIAN_INCLUDED_BASE_H
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;xapian/deprecated.h&gt;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : namespace Xapian {
+<span class="lineNum"> 29 </span> : namespace Internal {
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /** @internal Reference counted internal classes should inherit from RefCntBase.
+<span class="lineNum"> 32 </span> : *
+<span class="lineNum"> 33 </span> : * This gives the object a reference count used by RefCntPtr.
+<span class="lineNum"> 34 </span> : */
+<span class="lineNum"> 35 </span> : class RefCntBase {
+<span class="lineNum"> 36 </span> : /* Note: We never delete a pointer to a subclass of RefCntBase using
+<span class="lineNum"> 37 </span> : * a RefCntBase *, so we don't need a virtual destructor here.
+<span class="lineNum"> 38 </span> : */
+<span class="lineNum"> 39 </span> : protected:
+<span class="lineNum"> 40 </span> : /** The copy constructor.
+<span class="lineNum"> 41 </span> : *
+<span class="lineNum"> 42 </span> : * This is protected since it'll only be used by derived classes,
+<span class="lineNum"> 43 </span> : * which should only rarely need copying (this is, after all, a
+<span class="lineNum"> 44 </span> : * refcount implementation). Sometimes it's needed, though,
+<span class="lineNum"> 45 </span> : * since we need to zero ref_count in the copy.
+<span class="lineNum"> 46 </span> : */
+<span class="lineNum"> 47 </span> : RefCntBase(const RefCntBase &amp;) : ref_count(0) { }
+<span class="lineNum"> 48 </span> :
+<span class="lineNum"> 49 </span> : public:
+<span class="lineNum"> 50 </span> : /// The constructor, which initialises the ref_count to 0.
+<span class="lineNum"> 51 </span> : RefCntBase() : ref_count(0) { }
+<span class="lineNum"> 52 </span> :
+<span class="lineNum"> 53 </span> : typedef unsigned int ref_count_t;
+<span class="lineNum"> 54 </span> :
+<span class="lineNum"> 55 </span> : /** The actual reference count. It's mutable so we can have reference
+<span class="lineNum"> 56 </span> : * counting work with const pointers.
+<span class="lineNum"> 57 </span> : */
+<span class="lineNum"> 58 </span> : mutable ref_count_t ref_count;
+<span class="lineNum"> 59 </span> : };
+<span class="lineNum"> 60 </span> :
+<span class="lineNum"> 61 </span> : /** @internal A reference-counted pointer. Can be used with any
+<span class="lineNum"> 62 </span> : * class derived from RefCntBase, as long as it is allocated
+<span class="lineNum"> 63 </span> : * on the heap by new (not new[]!).
+<span class="lineNum"> 64 </span> : */
+<span class="lineNum"> 65 </span> : template &lt;class T&gt;
+<span class="lineNum"> 66 </span> : class RefCntPtr {
+<span class="lineNum"> 67 </span> : private:
+<span class="lineNum"> 68 </span> : T *dest;
+<span class="lineNum"> 69 </span> :
+<span class="lineNum"> 70 </span> : public:
+<span class="lineNum"> 71 </span> : T *operator-&gt;() const;
+<span class="lineNum"> 72 </span> : T &amp;operator*() const;
+<span class="lineNum"> 73 </span> : T *get() const;
+<span class="lineNum"> 74 </span> : /** Make a RefCntPtr for an object which may already
+<span class="lineNum"> 75 </span> : * have reference counted pointers.
+<span class="lineNum"> 76 </span> : *
+<span class="lineNum"> 77 </span> : * You usually pass in a newly created object, or an object may pass
+<span class="lineNum"> 78 </span> : * in &quot;this&quot; to get a RefCntPtr to itself to pass to other classes.
+<span class="lineNum"> 79 </span> : * (e.g. a database might pass a newly created postlist a reference
+<span class="lineNum"> 80 </span> : * counted pointer to itself.)
+<span class="lineNum"> 81 </span> : */
+<span class="lineNum"> 82 </span> : RefCntPtr(T *dest_);
+<span class="lineNum"> 83 </span> : RefCntPtr();
+<span class="lineNum"> 84 </span> : RefCntPtr(const RefCntPtr &amp;other);
+<span class="lineNum"> 85 </span> : void operator=(const RefCntPtr &amp;other);
+<span class="lineNum"> 86 </span> : void operator=(T *dest_);
+<span class="lineNum"> 87 </span> : ~RefCntPtr();
+<span class="lineNum"> 88 </span> :
+<span class="lineNum"> 89 </span> : template &lt;class U&gt;
+<span class="lineNum"> 90 </span> : RefCntPtr(const RefCntPtr&lt;U&gt; &amp;other);
+<span class="lineNum"> 91 </span> : };
+<span class="lineNum"> 92 </span> :
+<span class="lineNum"> 93 </span> : template &lt;class T&gt;
+<span class="lineNum"> 94 </span><span class="lineCov"> 19 : inline RefCntPtr&lt;T&gt;::RefCntPtr(T *dest_) : dest(dest_)</span>
+<span class="lineNum"> 95 </span> : {
+<span class="lineNum"> 96 </span><span class="lineCov"> 19 : if (dest) ++dest-&gt;ref_count;</span>
+<span class="lineNum"> 97 </span><span class="lineCov"> 19 : }</span>
+<span class="lineNum"> 98 </span> :
+<span class="lineNum"> 99 </span> : template &lt;class T&gt;
+<span class="lineNum"> 100 </span> : inline RefCntPtr&lt;T&gt;::RefCntPtr() : dest(0)
+<span class="lineNum"> 101 </span> : {
+<span class="lineNum"> 102 </span> : }
+<span class="lineNum"> 103 </span> :
+<span class="lineNum"> 104 </span> : template &lt;class T&gt;
+<span class="lineNum"> 105 </span> : inline RefCntPtr&lt;T&gt;::RefCntPtr(const RefCntPtr &amp;other) : dest(other.dest)
+<span class="lineNum"> 106 </span> : {
+<span class="lineNum"> 107 </span> : if (dest) ++dest-&gt;ref_count;
+<span class="lineNum"> 108 </span> : }
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span> : template &lt;class T&gt;
+<span class="lineNum"> 111 </span> : inline void RefCntPtr&lt;T&gt;::operator=(const RefCntPtr &amp;other) {
+<span class="lineNum"> 112 </span> : operator=(other.dest);
+<span class="lineNum"> 113 </span> : }
+<span class="lineNum"> 114 </span> :
+<span class="lineNum"> 115 </span> : template &lt;class T&gt;
+<span class="lineNum"> 116 </span> : inline void RefCntPtr&lt;T&gt;::operator=(T *dest_) {
+<span class="lineNum"> 117 </span> : // check if we're assigning a pointer to itself
+<span class="lineNum"> 118 </span> : if (dest == dest_) return;
+<span class="lineNum"> 119 </span> :
+<span class="lineNum"> 120 </span> : // copy the new dest in before we delete the old to avoid a small
+<span class="lineNum"> 121 </span> : // window in which dest points to a deleted object
+<span class="lineNum"> 122 </span> : // FIXME: if pointer assignment isn't atomic, we ought to use locking...
+<span class="lineNum"> 123 </span> : T *old_dest = dest;
+<span class="lineNum"> 124 </span> : dest = dest_;
+<span class="lineNum"> 125 </span> : if (dest) ++dest-&gt;ref_count;
+<span class="lineNum"> 126 </span> : if (old_dest &amp;&amp; --old_dest-&gt;ref_count == 0) delete old_dest;
+<span class="lineNum"> 127 </span> : }
+<span class="lineNum"> 128 </span> :
+<span class="lineNum"> 129 </span> : template &lt;class T&gt;
+<span class="lineNum"> 130 </span><span class="lineNoCov"> 0 : inline RefCntPtr&lt;T&gt;::~RefCntPtr()</span>
+<span class="lineNum"> 131 </span> : {
+<span class="lineNum"> 132 </span><span class="lineNoCov"> 0 : if (dest &amp;&amp; --dest-&gt;ref_count == 0) {</span>
+<span class="lineNum"> 133 </span> : // zero before we delete to avoid a small window in which dest points
+<span class="lineNum"> 134 </span> : // to a deleted object
+<span class="lineNum"> 135 </span> : // FIXME: if pointer assignment isn't atomic, we ought to use locking...
+<span class="lineNum"> 136 </span><span class="lineNoCov"> 0 : T * condemned = dest;</span>
+<span class="lineNum"> 137 </span><span class="lineNoCov"> 0 : dest = 0;</span>
+<span class="lineNum"> 138 </span><span class="lineNoCov"> 0 : delete condemned;</span>
+<span class="lineNum"> 139 </span> : }
+<span class="lineNum"> 140 </span><span class="lineNoCov"> 0 : }</span>
+<span class="lineNum"> 141 </span> :
+<span class="lineNum"> 142 </span> : template &lt;class T&gt;
+<span class="lineNum"> 143 </span> : template &lt;class U&gt;
+<span class="lineNum"> 144 </span> : inline
+<span class="lineNum"> 145 </span> : RefCntPtr&lt;T&gt;::RefCntPtr(const RefCntPtr&lt;U&gt; &amp;other)
+<span class="lineNum"> 146 </span> : : dest(other.get())
+<span class="lineNum"> 147 </span> : {
+<span class="lineNum"> 148 </span> : if (dest) ++dest-&gt;ref_count;
+<span class="lineNum"> 149 </span> : }
+<span class="lineNum"> 150 </span> :
+<span class="lineNum"> 151 </span> : template &lt;class T&gt;
+<span class="lineNum"> 152 </span> : inline T *RefCntPtr&lt;T&gt;::operator-&gt;() const
+<span class="lineNum"> 153 </span> : {
+<span class="lineNum"> 154 </span> : return dest;
+<span class="lineNum"> 155 </span> : }
+<span class="lineNum"> 156 </span> :
+<span class="lineNum"> 157 </span> : template &lt;class T&gt;
+<span class="lineNum"> 158 </span> : inline T &amp;RefCntPtr&lt;T&gt;::operator*() const
+<span class="lineNum"> 159 </span> : {
+<span class="lineNum"> 160 </span> : return *dest;
+<span class="lineNum"> 161 </span> : }
+<span class="lineNum"> 162 </span> :
+<span class="lineNum"> 163 </span> : template &lt;class T&gt;
+<span class="lineNum"> 164 </span><span class="lineCov"> 30 : inline T *RefCntPtr&lt;T&gt;::get() const</span>
+<span class="lineNum"> 165 </span> : {
+<span class="lineNum"> 166 </span><span class="lineCov"> 30 : return dest;</span>
+<span class="lineNum"> 167 </span> : }
+<span class="lineNum"> 168 </span> :
+<span class="lineNum"> 169 </span> : }
+<span class="lineNum"> 170 </span> : }
+<span class="lineNum"> 171 </span> :
+<span class="lineNum"> 172 </span> : #endif /* XAPIAN_INCLUDED_BASE_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/xapian/database.h.gcov.html b/rep/usr/include/xapian/database.h.gcov.html
new file mode 100644
index 0000000..2a75331
--- /dev/null
+++ b/rep/usr/include/xapian/database.h.gcov.html
@@ -0,0 +1,803 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/xapian/database.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">usr/include/xapian</a> - database.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">4</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">4</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /** \file database.h
+<span class="lineNum"> 2 </span> : * \brief API for working with Xapian databases
+<span class="lineNum"> 3 </span> : */
+<span class="lineNum"> 4 </span> : /* Copyright 1999,2000,2001 BrightStation PLC
+<span class="lineNum"> 5 </span> : * Copyright 2002 Ananova Ltd
+<span class="lineNum"> 6 </span> : * Copyright 2002,2003,2004,2005,2006,2007 Olly Betts
+<span class="lineNum"> 7 </span> : * Copyright 2006 Richard Boulton
+<span class="lineNum"> 8 </span> : *
+<span class="lineNum"> 9 </span> : * This program is free software; you can redistribute it and/or
+<span class="lineNum"> 10 </span> : * modify it under the terms of the GNU General Public License as
+<span class="lineNum"> 11 </span> : * published by the Free Software Foundation; either version 2 of the
+<span class="lineNum"> 12 </span> : * License, or (at your option) any later version.
+<span class="lineNum"> 13 </span> : *
+<span class="lineNum"> 14 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 15 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 16 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 17 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 18 </span> : *
+<span class="lineNum"> 19 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 20 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 21 </span> : * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
+<span class="lineNum"> 22 </span> : * USA
+<span class="lineNum"> 23 </span> : */
+<span class="lineNum"> 24 </span> :
+<span class="lineNum"> 25 </span> : #ifndef XAPIAN_INCLUDED_DATABASE_H
+<span class="lineNum"> 26 </span> : #define XAPIAN_INCLUDED_DATABASE_H
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : #include &lt;string&gt;
+<span class="lineNum"> 29 </span> : #include &lt;vector&gt;
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : #include &lt;xapian/base.h&gt;
+<span class="lineNum"> 32 </span> : #include &lt;xapian/types.h&gt;
+<span class="lineNum"> 33 </span> : #include &lt;xapian/positioniterator.h&gt;
+<span class="lineNum"> 34 </span> : #include &lt;xapian/postingiterator.h&gt;
+<span class="lineNum"> 35 </span> : #include &lt;xapian/termiterator.h&gt;
+<span class="lineNum"> 36 </span> : #include &lt;xapian/visibility.h&gt;
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : /// The Xapian library lives in the Xapian namespace.
+<span class="lineNum"> 39 </span> : namespace Xapian {
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : class Document;
+<span class="lineNum"> 42 </span> :
+<span class="lineNum"> 43 </span> : /** This class is used to access a database, or a group of databases.
+<span class="lineNum"> 44 </span> : *
+<span class="lineNum"> 45 </span> : * For searching, this class is used in conjunction with an Enquire object.
+<span class="lineNum"> 46 </span> : *
+<span class="lineNum"> 47 </span> : * @exception InvalidArgumentError will be thrown if an invalid
+<span class="lineNum"> 48 </span> : * argument is supplied, for example, an unknown database type.
+<span class="lineNum"> 49 </span> : *
+<span class="lineNum"> 50 </span> : * @exception DatabaseOpeningError may be thrown if the database cannot
+<span class="lineNum"> 51 </span> : * be opened (for example, a required file cannot be found).
+<span class="lineNum"> 52 </span> : *
+<span class="lineNum"> 53 </span> : * @exception DatabaseVersionError may be thrown if the database is in an
+<span class="lineNum"> 54 </span> : * unsupported format (for example, created by a newer version of Xapian
+<span class="lineNum"> 55 </span> : * which uses an incompatible format).
+<span class="lineNum"> 56 </span> : */
+<span class="lineNum"> 57 </span> : class XAPIAN_VISIBILITY_DEFAULT Database {
+<span class="lineNum"> 58 </span> : public:
+<span class="lineNum"> 59 </span> : class Internal;
+<span class="lineNum"> 60 </span> : /// @private @internal Reference counted internals.
+<span class="lineNum"> 61 </span> : std::vector&lt;Xapian::Internal::RefCntPtr&lt;Internal&gt; &gt; internal;
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span> : /** Add an existing database (or group of databases) to those
+<span class="lineNum"> 64 </span> : * accessed by this object.
+<span class="lineNum"> 65 </span> : *
+<span class="lineNum"> 66 </span> : * @param database the database(s) to add.
+<span class="lineNum"> 67 </span> : */
+<span class="lineNum"> 68 </span> : void add_database(const Database &amp; database);
+<span class="lineNum"> 69 </span> :
+<span class="lineNum"> 70 </span> : /** Create a Database with no databases in.
+<span class="lineNum"> 71 </span> : */
+<span class="lineNum"> 72 </span> : Database();
+<span class="lineNum"> 73 </span> :
+<span class="lineNum"> 74 </span> : /** Open a Database, automatically determining the database
+<span class="lineNum"> 75 </span> : * backend to use.
+<span class="lineNum"> 76 </span> : *
+<span class="lineNum"> 77 </span> : * @param path directory that the database is stored in.
+<span class="lineNum"> 78 </span> : */
+<span class="lineNum"> 79 </span> : explicit Database(const std::string &amp;path);
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span> : /** @private @internal Create a Database from its internals.
+<span class="lineNum"> 82 </span> : */
+<span class="lineNum"> 83 </span> : explicit Database(Internal *internal);
+<span class="lineNum"> 84 </span> :
+<span class="lineNum"> 85 </span> : /** Destroy this handle on the database.
+<span class="lineNum"> 86 </span> : *
+<span class="lineNum"> 87 </span> : * If there are no copies of this object remaining, the database(s)
+<span class="lineNum"> 88 </span> : * will be closed.
+<span class="lineNum"> 89 </span> : */
+<span class="lineNum"> 90 </span> : virtual ~Database();
+<span class="lineNum"> 91 </span> :
+<span class="lineNum"> 92 </span> : /** Copying is allowed. The internals are reference counted, so
+<span class="lineNum"> 93 </span> : * copying is cheap.
+<span class="lineNum"> 94 </span> : */
+<span class="lineNum"> 95 </span> : Database(const Database &amp;other);
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span> : /** Assignment is allowed. The internals are reference counted,
+<span class="lineNum"> 98 </span> : * so assignment is cheap.
+<span class="lineNum"> 99 </span> : */
+<span class="lineNum"> 100 </span> : void operator=(const Database &amp;other);
+<span class="lineNum"> 101 </span> :
+<span class="lineNum"> 102 </span> : /** Re-open the database.
+<span class="lineNum"> 103 </span> : * This re-opens the database(s) to the latest available version(s).
+<span class="lineNum"> 104 </span> : * It can be used either to make sure the latest results are
+<span class="lineNum"> 105 </span> : * returned, or to recover from a Xapian::DatabaseModifiedError.
+<span class="lineNum"> 106 </span> : */
+<span class="lineNum"> 107 </span> : void reopen();
+<span class="lineNum"> 108 </span> :
+<span class="lineNum"> 109 </span> : /// Return a string describing this object.
+<span class="lineNum"> 110 </span> : virtual std::string get_description() const;
+<span class="lineNum"> 111 </span> :
+<span class="lineNum"> 112 </span> : /** An iterator pointing to the start of the postlist
+<span class="lineNum"> 113 </span> : * for a given term.
+<span class="lineNum"> 114 </span> : *
+<span class="lineNum"> 115 </span> : * If the term name is the empty string, the iterator returned
+<span class="lineNum"> 116 </span> : * will list all the documents in the database. Such an iterator
+<span class="lineNum"> 117 </span> : * will always return a WDF value of 1, since there is no obvious
+<span class="lineNum"> 118 </span> : * meaning for this quantity in this case.
+<span class="lineNum"> 119 </span> : */
+<span class="lineNum"> 120 </span> : PostingIterator postlist_begin(const std::string &amp;tname) const;
+<span class="lineNum"> 121 </span> :
+<span class="lineNum"> 122 </span> : /** Corresponding end iterator to postlist_begin().
+<span class="lineNum"> 123 </span> : */
+<span class="lineNum"> 124 </span><span class="lineCov"> 10 : PostingIterator postlist_end(const std::string &amp;) const {</span>
+<span class="lineNum"> 125 </span><span class="lineCov"> 10 : return PostingIterator(NULL);</span>
+<span class="lineNum"> 126 </span> : }
+<span class="lineNum"> 127 </span> :
+<span class="lineNum"> 128 </span> : /** An iterator pointing to the start of the termlist
+<span class="lineNum"> 129 </span> : * for a given document.
+<span class="lineNum"> 130 </span> : */
+<span class="lineNum"> 131 </span> : TermIterator termlist_begin(Xapian::docid did) const;
+<span class="lineNum"> 132 </span> :
+<span class="lineNum"> 133 </span> : /** Corresponding end iterator to termlist_begin().
+<span class="lineNum"> 134 </span> : */
+<span class="lineNum"> 135 </span> : TermIterator termlist_end(Xapian::docid) const {
+<span class="lineNum"> 136 </span> : return TermIterator(NULL);
+<span class="lineNum"> 137 </span> : }
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> : /** Does this database have any positional information? */
+<span class="lineNum"> 140 </span> : bool has_positions() const;
+<span class="lineNum"> 141 </span> :
+<span class="lineNum"> 142 </span> : /** An iterator pointing to the start of the position list
+<span class="lineNum"> 143 </span> : * for a given term in a given document.
+<span class="lineNum"> 144 </span> : */
+<span class="lineNum"> 145 </span> : PositionIterator positionlist_begin(Xapian::docid did, const std::string &amp;tname) const;
+<span class="lineNum"> 146 </span> :
+<span class="lineNum"> 147 </span> : /** Corresponding end iterator to positionlist_begin().
+<span class="lineNum"> 148 </span> : */
+<span class="lineNum"> 149 </span> : PositionIterator positionlist_end(Xapian::docid, const std::string &amp;) const {
+<span class="lineNum"> 150 </span> : return PositionIterator(NULL);
+<span class="lineNum"> 151 </span> : }
+<span class="lineNum"> 152 </span> :
+<span class="lineNum"> 153 </span> : /** An iterator which runs across all terms in the database.
+<span class="lineNum"> 154 </span> : */
+<span class="lineNum"> 155 </span> : TermIterator allterms_begin() const;
+<span class="lineNum"> 156 </span> :
+<span class="lineNum"> 157 </span> : /** Corresponding end iterator to allterms_begin().
+<span class="lineNum"> 158 </span> : */
+<span class="lineNum"> 159 </span> : TermIterator allterms_end() const {
+<span class="lineNum"> 160 </span> : return TermIterator(NULL);
+<span class="lineNum"> 161 </span> : }
+<span class="lineNum"> 162 </span> :
+<span class="lineNum"> 163 </span> : /** An iterator which runs across all terms with a given prefix.
+<span class="lineNum"> 164 </span> : *
+<span class="lineNum"> 165 </span> : * This is functionally similar to getting an iterator with
+<span class="lineNum"> 166 </span> : * allterms_begin() and then calling skip_to(prefix) on that iterator
+<span class="lineNum"> 167 </span> : * to move to the start of the prefix, but is more convenient (because
+<span class="lineNum"> 168 </span> : * it detects the end of the prefixed terms), and may be more
+<span class="lineNum"> 169 </span> : * efficient than simply calling skip_to() after opening the iterator,
+<span class="lineNum"> 170 </span> : * particularly for network databases.
+<span class="lineNum"> 171 </span> : *
+<span class="lineNum"> 172 </span> : * @param prefix The prefix to restrict the returned terms to.
+<span class="lineNum"> 173 </span> : */
+<span class="lineNum"> 174 </span> : TermIterator allterms_begin(const std::string &amp; prefix) const;
+<span class="lineNum"> 175 </span> :
+<span class="lineNum"> 176 </span> : /** Corresponding end iterator to allterms_begin(prefix).
+<span class="lineNum"> 177 </span> : */
+<span class="lineNum"> 178 </span><span class="lineCov"> 1 : TermIterator allterms_end(const std::string &amp;) const {</span>
+<span class="lineNum"> 179 </span><span class="lineCov"> 1 : return TermIterator(NULL);</span>
+<span class="lineNum"> 180 </span> : }
+<span class="lineNum"> 181 </span> :
+<span class="lineNum"> 182 </span> : /// Get the number of documents in the database.
+<span class="lineNum"> 183 </span> : Xapian::doccount get_doccount() const;
+<span class="lineNum"> 184 </span> :
+<span class="lineNum"> 185 </span> : /// Get the highest document id which has been used in the database.
+<span class="lineNum"> 186 </span> : Xapian::docid get_lastdocid() const;
+<span class="lineNum"> 187 </span> :
+<span class="lineNum"> 188 </span> : /// Get the average length of the documents in the database.
+<span class="lineNum"> 189 </span> : Xapian::doclength get_avlength() const;
+<span class="lineNum"> 190 </span> :
+<span class="lineNum"> 191 </span> : /// Get the number of documents in the database indexed by a given term.
+<span class="lineNum"> 192 </span> : Xapian::doccount get_termfreq(const std::string &amp; tname) const;
+<span class="lineNum"> 193 </span> :
+<span class="lineNum"> 194 </span> : /** Check if a given term exists in the database.
+<span class="lineNum"> 195 </span> : *
+<span class="lineNum"> 196 </span> : * Return true if and only if the term exists in the database.
+<span class="lineNum"> 197 </span> : * This is the same as (get_termfreq(tname) != 0), but will often be
+<span class="lineNum"> 198 </span> : * more efficient.
+<span class="lineNum"> 199 </span> : */
+<span class="lineNum"> 200 </span> : bool term_exists(const std::string &amp; tname) const;
+<span class="lineNum"> 201 </span> :
+<span class="lineNum"> 202 </span> : /** Return the total number of occurrences of the given term.
+<span class="lineNum"> 203 </span> : *
+<span class="lineNum"> 204 </span> : * This is the sum of the number of occurrences of the term in each
+<span class="lineNum"> 205 </span> : * document it indexes: i.e., the sum of the within document
+<span class="lineNum"> 206 </span> : * frequencies of the term.
+<span class="lineNum"> 207 </span> : *
+<span class="lineNum"> 208 </span> : * @param tname The term whose collection frequency is being
+<span class="lineNum"> 209 </span> : * requested.
+<span class="lineNum"> 210 </span> : */
+<span class="lineNum"> 211 </span> : Xapian::termcount get_collection_freq(const std::string &amp; tname) const;
+<span class="lineNum"> 212 </span> :
+<span class="lineNum"> 213 </span> : /** Get the length of a document.
+<span class="lineNum"> 214 </span> : */
+<span class="lineNum"> 215 </span> : Xapian::doclength get_doclength(Xapian::docid did) const;
+<span class="lineNum"> 216 </span> :
+<span class="lineNum"> 217 </span> : /** Send a &quot;keep-alive&quot; to remote databases to stop them timing
+<span class="lineNum"> 218 </span> : * out.
+<span class="lineNum"> 219 </span> : */
+<span class="lineNum"> 220 </span> : void keep_alive();
+<span class="lineNum"> 221 </span> :
+<span class="lineNum"> 222 </span> : /** Get a document from the database, given its document id.
+<span class="lineNum"> 223 </span> : *
+<span class="lineNum"> 224 </span> : * This method returns a Xapian::Document object which provides the
+<span class="lineNum"> 225 </span> : * information about a document.
+<span class="lineNum"> 226 </span> : *
+<span class="lineNum"> 227 </span> : * @param did The document id for which to retrieve the data.
+<span class="lineNum"> 228 </span> : *
+<span class="lineNum"> 229 </span> : * @return A Xapian::Document object containing the document data
+<span class="lineNum"> 230 </span> : *
+<span class="lineNum"> 231 </span> : * @exception Xapian::DocNotFoundError The document specified
+<span class="lineNum"> 232 </span> : * could not be found in the database.
+<span class="lineNum"> 233 </span> : */
+<span class="lineNum"> 234 </span> : Xapian::Document get_document(Xapian::docid did) const;
+<span class="lineNum"> 235 </span> :
+<span class="lineNum"> 236 </span> : /** Suggest a spelling correction.
+<span class="lineNum"> 237 </span> : *
+<span class="lineNum"> 238 </span> : * @param word The potentially misspelled word.
+<span class="lineNum"> 239 </span> : * @param max_edit_distance Only consider words which are at most
+<span class="lineNum"> 240 </span> : * @a max_edit_distance edits from @a word. An edit is a
+<span class="lineNum"> 241 </span> : * character insertion, deletion, or the transposition of two
+<span class="lineNum"> 242 </span> : * adjacent characters (default is 2).
+<span class="lineNum"> 243 </span> : */
+<span class="lineNum"> 244 </span> : std::string get_spelling_suggestion(const std::string &amp;word,
+<span class="lineNum"> 245 </span> : unsigned max_edit_distance = 2) const;
+<span class="lineNum"> 246 </span> :
+<span class="lineNum"> 247 </span> : /** An iterator which returns all the spelling correction targets.
+<span class="lineNum"> 248 </span> : *
+<span class="lineNum"> 249 </span> : * This returns all the words which are considered as targets for the
+<span class="lineNum"> 250 </span> : * spelling correction algorithm. The frequency of each word is
+<span class="lineNum"> 251 </span> : * available as the term frequency of each entry in the returned
+<span class="lineNum"> 252 </span> : * iterator.
+<span class="lineNum"> 253 </span> : */
+<span class="lineNum"> 254 </span> : Xapian::TermIterator spellings_begin() const;
+<span class="lineNum"> 255 </span> :
+<span class="lineNum"> 256 </span> : /// Corresponding end iterator to spellings_begin().
+<span class="lineNum"> 257 </span> : Xapian::TermIterator spellings_end() const {
+<span class="lineNum"> 258 </span> : return Xapian::TermIterator(NULL);
+<span class="lineNum"> 259 </span> : }
+<span class="lineNum"> 260 </span> :
+<span class="lineNum"> 261 </span> : /** An iterator which returns all the synonyms for a given term.
+<span class="lineNum"> 262 </span> : *
+<span class="lineNum"> 263 </span> : * @param term The term to return synonyms for.
+<span class="lineNum"> 264 </span> : */
+<span class="lineNum"> 265 </span> : Xapian::TermIterator synonyms_begin(const std::string &amp;term) const;
+<span class="lineNum"> 266 </span> :
+<span class="lineNum"> 267 </span> : /// Corresponding end iterator to synonyms_begin(term).
+<span class="lineNum"> 268 </span> : Xapian::TermIterator synonyms_end(const std::string &amp;) const {
+<span class="lineNum"> 269 </span> : return Xapian::TermIterator(NULL);
+<span class="lineNum"> 270 </span> : }
+<span class="lineNum"> 271 </span> :
+<span class="lineNum"> 272 </span> : /** An iterator which returns all terms which have synonyms.
+<span class="lineNum"> 273 </span> : *
+<span class="lineNum"> 274 </span> : * @param prefix If non-empty, only terms with this prefix are
+<span class="lineNum"> 275 </span> : * returned.
+<span class="lineNum"> 276 </span> : */
+<span class="lineNum"> 277 </span> : Xapian::TermIterator synonym_keys_begin(const std::string &amp;prefix = &quot;&quot;) const;
+<span class="lineNum"> 278 </span> :
+<span class="lineNum"> 279 </span> : /// Corresponding end iterator to synonym_keys_begin(prefix).
+<span class="lineNum"> 280 </span> : Xapian::TermIterator synonym_keys_end(const std::string &amp; = &quot;&quot;) const {
+<span class="lineNum"> 281 </span> : return Xapian::TermIterator(NULL);
+<span class="lineNum"> 282 </span> : }
+<span class="lineNum"> 283 </span> :
+<span class="lineNum"> 284 </span> : /** Get the user-specified metadata associated with a given key.
+<span class="lineNum"> 285 </span> : *
+<span class="lineNum"> 286 </span> : * User-specified metadata allows you to store arbitrary information
+<span class="lineNum"> 287 </span> : * in the form of (key,tag) pairs. See @a
+<span class="lineNum"> 288 </span> : * WritableDatabase::set_metadata() for more information.
+<span class="lineNum"> 289 </span> : *
+<span class="lineNum"> 290 </span> : * When invoked on a Xapian::Database object representing multiple
+<span class="lineNum"> 291 </span> : * databases, currently only the metadata for the first is considered
+<span class="lineNum"> 292 </span> : * but this behaviour may change in the future.
+<span class="lineNum"> 293 </span> : *
+<span class="lineNum"> 294 </span> : * If there is no piece of metadata associated with the specified
+<span class="lineNum"> 295 </span> : * key, an empty string is returned (this applies even for backends
+<span class="lineNum"> 296 </span> : * which don't support metadata).
+<span class="lineNum"> 297 </span> : *
+<span class="lineNum"> 298 </span> : * Empty keys are not valid, and specifying one will cause an
+<span class="lineNum"> 299 </span> : * exception.
+<span class="lineNum"> 300 </span> : *
+<span class="lineNum"> 301 </span> : * @param key The key of the metadata item to access.
+<span class="lineNum"> 302 </span> : *
+<span class="lineNum"> 303 </span> : * @return The retrieved metadata item's value.
+<span class="lineNum"> 304 </span> : *
+<span class="lineNum"> 305 </span> : * @exception Xapian::InvalidArgumentError will be thrown if the
+<span class="lineNum"> 306 </span> : * key supplied is empty.
+<span class="lineNum"> 307 </span> : *
+<span class="lineNum"> 308 </span> : * @exception Xapian::UnimplementedError will be thrown if the
+<span class="lineNum"> 309 </span> : * database backend in use doesn't support user-specified
+<span class="lineNum"> 310 </span> : * metadata.
+<span class="lineNum"> 311 </span> : */
+<span class="lineNum"> 312 </span> : std::string get_metadata(const std::string &amp; key) const;
+<span class="lineNum"> 313 </span> : };
+<span class="lineNum"> 314 </span> :
+<span class="lineNum"> 315 </span> : /** This class provides read/write access to a database.
+<span class="lineNum"> 316 </span> : */
+<span class="lineNum"> 317 </span> : class XAPIAN_VISIBILITY_DEFAULT WritableDatabase : public Database {
+<span class="lineNum"> 318 </span> : public:
+<span class="lineNum"> 319 </span> : /** Destroy this handle on the database.
+<span class="lineNum"> 320 </span> : *
+<span class="lineNum"> 321 </span> : * If there are no copies of this object remaining, the database
+<span class="lineNum"> 322 </span> : * will be closed. If there are any transactions in progress
+<span class="lineNum"> 323 </span> : * these will be aborted as if cancel_transaction had been called.
+<span class="lineNum"> 324 </span> : */
+<span class="lineNum"> 325 </span> : virtual ~WritableDatabase();
+<span class="lineNum"> 326 </span> :
+<span class="lineNum"> 327 </span> : /** Create an empty WritableDatabase.
+<span class="lineNum"> 328 </span> : */
+<span class="lineNum"> 329 </span> : WritableDatabase();
+<span class="lineNum"> 330 </span> :
+<span class="lineNum"> 331 </span> : /** Open a database for update, automatically determining the database
+<span class="lineNum"> 332 </span> : * backend to use.
+<span class="lineNum"> 333 </span> : *
+<span class="lineNum"> 334 </span> : * If the database is to be created, Xapian will try
+<span class="lineNum"> 335 </span> : * to create the directory indicated by path if it doesn't already
+<span class="lineNum"> 336 </span> : * exist (but only the leaf directory, not recursively).
+<span class="lineNum"> 337 </span> : *
+<span class="lineNum"> 338 </span> : * @param path directory that the database is stored in.
+<span class="lineNum"> 339 </span> : * @param action one of:
+<span class="lineNum"> 340 </span> : * - Xapian::DB_CREATE_OR_OPEN open for read/write; create if no db
+<span class="lineNum"> 341 </span> : * exists
+<span class="lineNum"> 342 </span> : * - Xapian::DB_CREATE create new database; fail if db exists
+<span class="lineNum"> 343 </span> : * - Xapian::DB_CREATE_OR_OVERWRITE overwrite existing db; create if
+<span class="lineNum"> 344 </span> : * none exists
+<span class="lineNum"> 345 </span> : * - Xapian::DB_OPEN open for read/write; fail if no db exists
+<span class="lineNum"> 346 </span> : */
+<span class="lineNum"> 347 </span> : WritableDatabase(const std::string &amp;path, int action);
+<span class="lineNum"> 348 </span> :
+<span class="lineNum"> 349 </span> : /** @private @internal Create an WritableDatabase given its internals.
+<span class="lineNum"> 350 </span> : */
+<span class="lineNum"> 351 </span> : explicit WritableDatabase(Database::Internal *internal);
+<span class="lineNum"> 352 </span> :
+<span class="lineNum"> 353 </span> : /** Copying is allowed. The internals are reference counted, so
+<span class="lineNum"> 354 </span> : * copying is cheap.
+<span class="lineNum"> 355 </span> : */
+<span class="lineNum"> 356 </span> : WritableDatabase(const WritableDatabase &amp;other);
+<span class="lineNum"> 357 </span> :
+<span class="lineNum"> 358 </span> : /** Assignment is allowed. The internals are reference counted,
+<span class="lineNum"> 359 </span> : * so assignment is cheap.
+<span class="lineNum"> 360 </span> : *
+<span class="lineNum"> 361 </span> : * Note that only an WritableDatabase may be assigned to an
+<span class="lineNum"> 362 </span> : * WritableDatabase: an attempt to assign a Database is caught
+<span class="lineNum"> 363 </span> : * at compile-time.
+<span class="lineNum"> 364 </span> : */
+<span class="lineNum"> 365 </span> : void operator=(const WritableDatabase &amp;other);
+<span class="lineNum"> 366 </span> :
+<span class="lineNum"> 367 </span> : /** Flush to disk any modifications made to the database.
+<span class="lineNum"> 368 </span> : *
+<span class="lineNum"> 369 </span> : * For efficiency reasons, when performing multiple updates to a
+<span class="lineNum"> 370 </span> : * database it is best (indeed, almost essential) to make as many
+<span class="lineNum"> 371 </span> : * modifications as memory will permit in a single pass through
+<span class="lineNum"> 372 </span> : * the database. To ensure this, Xapian batches up modifications.
+<span class="lineNum"> 373 </span> : *
+<span class="lineNum"> 374 </span> : * Flush may be called at any time to
+<span class="lineNum"> 375 </span> : * ensure that the modifications which have been made are written to
+<span class="lineNum"> 376 </span> : * disk: if the flush succeeds, all the preceding modifications will
+<span class="lineNum"> 377 </span> : * have been written to disk.
+<span class="lineNum"> 378 </span> : *
+<span class="lineNum"> 379 </span> : * If any of the modifications fail, an exception will be thrown and
+<span class="lineNum"> 380 </span> : * the database will be left in a state in which each separate
+<span class="lineNum"> 381 </span> : * addition, replacement or deletion operation has either been fully
+<span class="lineNum"> 382 </span> : * performed or not performed at all: it is then up to the
+<span class="lineNum"> 383 </span> : * application to work out which operations need to be repeated.
+<span class="lineNum"> 384 </span> : *
+<span class="lineNum"> 385 </span> : * It's not valid to call flush within a transaction.
+<span class="lineNum"> 386 </span> : *
+<span class="lineNum"> 387 </span> : * Beware of calling flush too frequently: this will have a severe
+<span class="lineNum"> 388 </span> : * performance cost.
+<span class="lineNum"> 389 </span> : *
+<span class="lineNum"> 390 </span> : * Note that flush need not be called explicitly: it will be called
+<span class="lineNum"> 391 </span> : * automatically when the database is closed, or when a sufficient
+<span class="lineNum"> 392 </span> : * number of modifications have been made.
+<span class="lineNum"> 393 </span> : *
+<span class="lineNum"> 394 </span> : * @exception Xapian::DatabaseError will be thrown if a problem occurs
+<span class="lineNum"> 395 </span> : * while modifying the database.
+<span class="lineNum"> 396 </span> : *
+<span class="lineNum"> 397 </span> : * @exception Xapian::DatabaseCorruptError will be thrown if the
+<span class="lineNum"> 398 </span> : * database is in a corrupt state.
+<span class="lineNum"> 399 </span> : *
+<span class="lineNum"> 400 </span> : * @exception Xapian::DatabaseLockError will be thrown if a lock
+<span class="lineNum"> 401 </span> : * couldn't be acquired on the database.
+<span class="lineNum"> 402 </span> : */
+<span class="lineNum"> 403 </span> : void flush();
+<span class="lineNum"> 404 </span> :
+<span class="lineNum"> 405 </span> : /** Begin a transaction.
+<span class="lineNum"> 406 </span> : *
+<span class="lineNum"> 407 </span> : * In Xapian a transaction is a group of modifications to the database
+<span class="lineNum"> 408 </span> : * which are linked such that either all will be applied
+<span class="lineNum"> 409 </span> : * simultaneously or none will be applied at all. Even in the case of
+<span class="lineNum"> 410 </span> : * a power failure, this characteristic should be preserved (as long
+<span class="lineNum"> 411 </span> : * as the filesystem isn't corrupted, etc).
+<span class="lineNum"> 412 </span> : *
+<span class="lineNum"> 413 </span> : * A transaction is started with begin_transaction() and can
+<span class="lineNum"> 414 </span> : * either be committed by calling commit_transaction() or aborted
+<span class="lineNum"> 415 </span> : * by calling cancel_transaction().
+<span class="lineNum"> 416 </span> : *
+<span class="lineNum"> 417 </span> : * By default, a transaction implicitly calls flush before and after
+<span class="lineNum"> 418 </span> : * so that the modifications stand and fall without affecting
+<span class="lineNum"> 419 </span> : * modifications before or after.
+<span class="lineNum"> 420 </span> : *
+<span class="lineNum"> 421 </span> : * The downside of this flushing is that small transactions cause
+<span class="lineNum"> 422 </span> : * modifications to be frequently flushed which can harm indexing
+<span class="lineNum"> 423 </span> : * performance in the same way that explicitly calling flush
+<span class="lineNum"> 424 </span> : * frequently can.
+<span class="lineNum"> 425 </span> : *
+<span class="lineNum"> 426 </span> : * If you're applying atomic groups of changes and only wish to
+<span class="lineNum"> 427 </span> : * ensure that each group is either applied or not applied, then
+<span class="lineNum"> 428 </span> : * you can prevent the automatic flush before and after the
+<span class="lineNum"> 429 </span> : * transaction by starting the transaction with
+<span class="lineNum"> 430 </span> : * begin_transaction(false). However, if cancel_transaction is
+<span class="lineNum"> 431 </span> : * called (or if commit_transaction isn't called before the
+<span class="lineNum"> 432 </span> : * WritableDatabase object is destroyed) then any changes which
+<span class="lineNum"> 433 </span> : * were pending before the transaction began will also be discarded.
+<span class="lineNum"> 434 </span> : *
+<span class="lineNum"> 435 </span> : * Transactions aren't currently supported by the InMemory backend.
+<span class="lineNum"> 436 </span> : *
+<span class="lineNum"> 437 </span> : * @exception Xapian::UnimplementedError will be thrown if transactions
+<span class="lineNum"> 438 </span> : * are not available for this database type.
+<span class="lineNum"> 439 </span> : *
+<span class="lineNum"> 440 </span> : * @exception Xapian::InvalidOperationError will be thrown if this is
+<span class="lineNum"> 441 </span> : * called at an invalid time, such as when a transaction
+<span class="lineNum"> 442 </span> : * is already in progress.
+<span class="lineNum"> 443 </span> : */
+<span class="lineNum"> 444 </span> : void begin_transaction(bool flushed=true);
+<span class="lineNum"> 445 </span> :
+<span class="lineNum"> 446 </span> : /** Complete the transaction currently in progress.
+<span class="lineNum"> 447 </span> : *
+<span class="lineNum"> 448 </span> : * If this method completes successfully and this is a flushed
+<span class="lineNum"> 449 </span> : * transaction, all the database modifications
+<span class="lineNum"> 450 </span> : * made during the transaction will have been committed to the
+<span class="lineNum"> 451 </span> : * database.
+<span class="lineNum"> 452 </span> : *
+<span class="lineNum"> 453 </span> : * If an error occurs, an exception will be thrown, and none of
+<span class="lineNum"> 454 </span> : * the modifications made to the database during the transaction
+<span class="lineNum"> 455 </span> : * will have been applied to the database.
+<span class="lineNum"> 456 </span> : *
+<span class="lineNum"> 457 </span> : * In all cases the transaction will no longer be in progress.
+<span class="lineNum"> 458 </span> : *
+<span class="lineNum"> 459 </span> : * @exception Xapian::DatabaseError will be thrown if a problem occurs
+<span class="lineNum"> 460 </span> : * while modifying the database.
+<span class="lineNum"> 461 </span> : *
+<span class="lineNum"> 462 </span> : * @exception Xapian::DatabaseCorruptError will be thrown if the
+<span class="lineNum"> 463 </span> : * database is in a corrupt state.
+<span class="lineNum"> 464 </span> : *
+<span class="lineNum"> 465 </span> : * @exception Xapian::InvalidOperationError will be thrown if a
+<span class="lineNum"> 466 </span> : * transaction is not currently in progress.
+<span class="lineNum"> 467 </span> : *
+<span class="lineNum"> 468 </span> : * @exception Xapian::UnimplementedError will be thrown if transactions
+<span class="lineNum"> 469 </span> : * are not available for this database type.
+<span class="lineNum"> 470 </span> : */
+<span class="lineNum"> 471 </span> : void commit_transaction();
+<span class="lineNum"> 472 </span> :
+<span class="lineNum"> 473 </span> : /** Abort the transaction currently in progress, discarding the
+<span class="lineNum"> 474 </span> : * potential modifications made to the database.
+<span class="lineNum"> 475 </span> : *
+<span class="lineNum"> 476 </span> : * If an error occurs in this method, an exception will be thrown,
+<span class="lineNum"> 477 </span> : * but the transaction will be cancelled anyway.
+<span class="lineNum"> 478 </span> : *
+<span class="lineNum"> 479 </span> : * @exception Xapian::DatabaseError will be thrown if a problem occurs
+<span class="lineNum"> 480 </span> : * while modifying the database.
+<span class="lineNum"> 481 </span> : *
+<span class="lineNum"> 482 </span> : * @exception Xapian::DatabaseCorruptError will be thrown if the
+<span class="lineNum"> 483 </span> : * database is in a corrupt state.
+<span class="lineNum"> 484 </span> : *
+<span class="lineNum"> 485 </span> : * @exception Xapian::InvalidOperationError will be thrown if a
+<span class="lineNum"> 486 </span> : * transaction is not currently in progress.
+<span class="lineNum"> 487 </span> : *
+<span class="lineNum"> 488 </span> : * @exception Xapian::UnimplementedError will be thrown if transactions
+<span class="lineNum"> 489 </span> : * are not available for this database type.
+<span class="lineNum"> 490 </span> : */
+<span class="lineNum"> 491 </span> : void cancel_transaction();
+<span class="lineNum"> 492 </span> :
+<span class="lineNum"> 493 </span> : /** Add a new document to the database.
+<span class="lineNum"> 494 </span> : *
+<span class="lineNum"> 495 </span> : * This method adds the specified document to the database,
+<span class="lineNum"> 496 </span> : * returning a newly allocated document ID. Automatically allocated
+<span class="lineNum"> 497 </span> : * document IDs come from a per-database monotonically increasing
+<span class="lineNum"> 498 </span> : * counter, so IDs from deleted documents won't be reused.
+<span class="lineNum"> 499 </span> : *
+<span class="lineNum"> 500 </span> : * If you want to specify the document ID to be used, you should
+<span class="lineNum"> 501 </span> : * call replace_document() instead.
+<span class="lineNum"> 502 </span> : *
+<span class="lineNum"> 503 </span> : * Note that changes to the database won't be immediately committed to
+<span class="lineNum"> 504 </span> : * disk; see flush() for more details.
+<span class="lineNum"> 505 </span> : *
+<span class="lineNum"> 506 </span> : * As with all database modification operations, the effect is
+<span class="lineNum"> 507 </span> : * atomic: the document will either be fully added, or the document
+<span class="lineNum"> 508 </span> : * fails to be added and an exception is thrown (possibly at a
+<span class="lineNum"> 509 </span> : * later time when flush is called or the database is closed).
+<span class="lineNum"> 510 </span> : *
+<span class="lineNum"> 511 </span> : * @param document The new document to be added.
+<span class="lineNum"> 512 </span> : *
+<span class="lineNum"> 513 </span> : * @return The document ID of the newly added document.
+<span class="lineNum"> 514 </span> : *
+<span class="lineNum"> 515 </span> : * @exception Xapian::DatabaseError will be thrown if a problem occurs
+<span class="lineNum"> 516 </span> : * while writing to the database.
+<span class="lineNum"> 517 </span> : *
+<span class="lineNum"> 518 </span> : * @exception Xapian::DatabaseCorruptError will be thrown if the
+<span class="lineNum"> 519 </span> : * database is in a corrupt state.
+<span class="lineNum"> 520 </span> : */
+<span class="lineNum"> 521 </span> : Xapian::docid add_document(const Xapian::Document &amp; document);
+<span class="lineNum"> 522 </span> :
+<span class="lineNum"> 523 </span> : /** Delete a document from the database.
+<span class="lineNum"> 524 </span> : *
+<span class="lineNum"> 525 </span> : * This method removes the document with the specified document ID
+<span class="lineNum"> 526 </span> : * from the database.
+<span class="lineNum"> 527 </span> : *
+<span class="lineNum"> 528 </span> : * Note that changes to the database won't be immediately committed to
+<span class="lineNum"> 529 </span> : * disk; see flush() for more details.
+<span class="lineNum"> 530 </span> : *
+<span class="lineNum"> 531 </span> : * As with all database modification operations, the effect is
+<span class="lineNum"> 532 </span> : * atomic: the document will either be fully removed, or the document
+<span class="lineNum"> 533 </span> : * fails to be removed and an exception is thrown (possibly at a
+<span class="lineNum"> 534 </span> : * later time when flush is called or the database is closed).
+<span class="lineNum"> 535 </span> : *
+<span class="lineNum"> 536 </span> : * @param did The document ID of the document to be removed.
+<span class="lineNum"> 537 </span> : *
+<span class="lineNum"> 538 </span> : * @exception Xapian::DatabaseError will be thrown if a problem occurs
+<span class="lineNum"> 539 </span> : * while writing to the database.
+<span class="lineNum"> 540 </span> : *
+<span class="lineNum"> 541 </span> : * @exception Xapian::DatabaseCorruptError will be thrown if the
+<span class="lineNum"> 542 </span> : * database is in a corrupt state.
+<span class="lineNum"> 543 </span> : */
+<span class="lineNum"> 544 </span> : void delete_document(Xapian::docid did);
+<span class="lineNum"> 545 </span> :
+<span class="lineNum"> 546 </span> : /** Delete any documents indexed by a term from the database.
+<span class="lineNum"> 547 </span> : *
+<span class="lineNum"> 548 </span> : * This method removes any documents indexed by the specified term
+<span class="lineNum"> 549 </span> : * from the database.
+<span class="lineNum"> 550 </span> : *
+<span class="lineNum"> 551 </span> : * A major use is for convenience when UIDs from another system are
+<span class="lineNum"> 552 </span> : * mapped to terms in Xapian, although this method has other uses
+<span class="lineNum"> 553 </span> : * (for example, you could add a &quot;deletion date&quot; term to documents at
+<span class="lineNum"> 554 </span> : * index time and use this method to delete all documents due for
+<span class="lineNum"> 555 </span> : * deletion on a particular date).
+<span class="lineNum"> 556 </span> : *
+<span class="lineNum"> 557 </span> : * @param unique_term The term to remove references to.
+<span class="lineNum"> 558 </span> : *
+<span class="lineNum"> 559 </span> : * @exception Xapian::DatabaseError will be thrown if a problem occurs
+<span class="lineNum"> 560 </span> : * while writing to the database.
+<span class="lineNum"> 561 </span> : *
+<span class="lineNum"> 562 </span> : * @exception Xapian::DatabaseCorruptError will be thrown if the
+<span class="lineNum"> 563 </span> : * database is in a corrupt state.
+<span class="lineNum"> 564 </span> : */
+<span class="lineNum"> 565 </span> : void delete_document(const std::string &amp; unique_term);
+<span class="lineNum"> 566 </span> :
+<span class="lineNum"> 567 </span> : /** Replace a given document in the database.
+<span class="lineNum"> 568 </span> : *
+<span class="lineNum"> 569 </span> : * This method replaces the document with the specified document ID.
+<span class="lineNum"> 570 </span> : * If document ID @a did isn't currently used, the document will be
+<span class="lineNum"> 571 </span> : * added with document ID @a did.
+<span class="lineNum"> 572 </span> : *
+<span class="lineNum"> 573 </span> : * The monotonic counter used for automatically allocating document
+<span class="lineNum"> 574 </span> : * IDs is increased so that the next automatically allocated document
+<span class="lineNum"> 575 </span> : * ID will be did + 1. Be aware that if you use this method to
+<span class="lineNum"> 576 </span> : * specify a high document ID for a new document, and also use
+<span class="lineNum"> 577 </span> : * WritableDatabase::add_document(), Xapian may get to a state where
+<span class="lineNum"> 578 </span> : * this counter wraps around and will be unable to automatically
+<span class="lineNum"> 579 </span> : * allocate document IDs!
+<span class="lineNum"> 580 </span> : *
+<span class="lineNum"> 581 </span> : * Note that changes to the database won't be immediately committed to
+<span class="lineNum"> 582 </span> : * disk; see flush() for more details.
+<span class="lineNum"> 583 </span> : *
+<span class="lineNum"> 584 </span> : * As with all database modification operations, the effect is
+<span class="lineNum"> 585 </span> : * atomic: the document will either be fully replaced, or the document
+<span class="lineNum"> 586 </span> : * fails to be replaced and an exception is thrown (possibly at a
+<span class="lineNum"> 587 </span> : * later time when flush is called or the database is closed).
+<span class="lineNum"> 588 </span> : *
+<span class="lineNum"> 589 </span> : * @param did The document ID of the document to be replaced.
+<span class="lineNum"> 590 </span> : * @param document The new document.
+<span class="lineNum"> 591 </span> : *
+<span class="lineNum"> 592 </span> : * @exception Xapian::DatabaseError will be thrown if a problem occurs
+<span class="lineNum"> 593 </span> : * while writing to the database.
+<span class="lineNum"> 594 </span> : *
+<span class="lineNum"> 595 </span> : * @exception Xapian::DatabaseCorruptError will be thrown if the
+<span class="lineNum"> 596 </span> : * database is in a corrupt state.
+<span class="lineNum"> 597 </span> : */
+<span class="lineNum"> 598 </span> : void replace_document(Xapian::docid did,
+<span class="lineNum"> 599 </span> : const Xapian::Document &amp; document);
+<span class="lineNum"> 600 </span> :
+<span class="lineNum"> 601 </span> : /** Replace any documents matching a term.
+<span class="lineNum"> 602 </span> : *
+<span class="lineNum"> 603 </span> : * This method replaces any documents indexed by the specified term
+<span class="lineNum"> 604 </span> : * with the specified document. If any documents are indexed by the
+<span class="lineNum"> 605 </span> : * term, the lowest document ID will be used for the document,
+<span class="lineNum"> 606 </span> : * otherwise a new document ID will be generated as for add_document.
+<span class="lineNum"> 607 </span> : *
+<span class="lineNum"> 608 </span> : * The intended use is to allow UIDs from another system to easily
+<span class="lineNum"> 609 </span> : * be mapped to terms in Xapian, although this method probably has
+<span class="lineNum"> 610 </span> : * other uses.
+<span class="lineNum"> 611 </span> : *
+<span class="lineNum"> 612 </span> : * Note that changes to the database won't be immediately committed to
+<span class="lineNum"> 613 </span> : * disk; see flush() for more details.
+<span class="lineNum"> 614 </span> : *
+<span class="lineNum"> 615 </span> : * As with all database modification operations, the effect is
+<span class="lineNum"> 616 </span> : * atomic: the document(s) will either be fully replaced, or the
+<span class="lineNum"> 617 </span> : * document(s) fail to be replaced and an exception is thrown
+<span class="lineNum"> 618 </span> : * (possibly at a
+<span class="lineNum"> 619 </span> : * later time when flush is called or the database is closed).
+<span class="lineNum"> 620 </span> : *
+<span class="lineNum"> 621 </span> : * @param unique_term The &quot;unique&quot; term.
+<span class="lineNum"> 622 </span> : * @param document The new document.
+<span class="lineNum"> 623 </span> : *
+<span class="lineNum"> 624 </span> : * @return The document ID that document was given.
+<span class="lineNum"> 625 </span> : *
+<span class="lineNum"> 626 </span> : * @exception Xapian::DatabaseError will be thrown if a problem occurs
+<span class="lineNum"> 627 </span> : * while writing to the database.
+<span class="lineNum"> 628 </span> : *
+<span class="lineNum"> 629 </span> : * @exception Xapian::DatabaseCorruptError will be thrown if the
+<span class="lineNum"> 630 </span> : * database is in a corrupt state.
+<span class="lineNum"> 631 </span> : */
+<span class="lineNum"> 632 </span> : Xapian::docid replace_document(const std::string &amp; unique_term,
+<span class="lineNum"> 633 </span> : const Xapian::Document &amp; document);
+<span class="lineNum"> 634 </span> :
+<span class="lineNum"> 635 </span> : /** Add a word to the spelling dictionary.
+<span class="lineNum"> 636 </span> : *
+<span class="lineNum"> 637 </span> : * If the word is already present, its frequency is increased.
+<span class="lineNum"> 638 </span> : *
+<span class="lineNum"> 639 </span> : * @param word The word to add.
+<span class="lineNum"> 640 </span> : * @param freqinc How much to increase its frequency by (default 1).
+<span class="lineNum"> 641 </span> : */
+<span class="lineNum"> 642 </span> : void add_spelling(const std::string &amp; word,
+<span class="lineNum"> 643 </span> : Xapian::termcount freqinc = 1) const;
+<span class="lineNum"> 644 </span> :
+<span class="lineNum"> 645 </span> : /** Remove a word from the spelling dictionary.
+<span class="lineNum"> 646 </span> : *
+<span class="lineNum"> 647 </span> : * The word's frequency is decreased, and if would become zero or less
+<span class="lineNum"> 648 </span> : * then the word is removed completely.
+<span class="lineNum"> 649 </span> : *
+<span class="lineNum"> 650 </span> : * @param word The word to remove.
+<span class="lineNum"> 651 </span> : * @param freqdec How much to decrease its frequency by (default 1).
+<span class="lineNum"> 652 </span> : */
+<span class="lineNum"> 653 </span> : void remove_spelling(const std::string &amp; word,
+<span class="lineNum"> 654 </span> : Xapian::termcount freqdec = 1) const;
+<span class="lineNum"> 655 </span> :
+<span class="lineNum"> 656 </span> : /** Add a synonym for a term.
+<span class="lineNum"> 657 </span> : *
+<span class="lineNum"> 658 </span> : * If @a synonym is already a synonym for @a term, then no action is
+<span class="lineNum"> 659 </span> : * taken.
+<span class="lineNum"> 660 </span> : */
+<span class="lineNum"> 661 </span> : void add_synonym(const std::string &amp; term,
+<span class="lineNum"> 662 </span> : const std::string &amp; synonym) const;
+<span class="lineNum"> 663 </span> :
+<span class="lineNum"> 664 </span> : /** Remove a synonym for a term.
+<span class="lineNum"> 665 </span> : *
+<span class="lineNum"> 666 </span> : * If @a synonym isn't a synonym for @a term, then no action is taken.
+<span class="lineNum"> 667 </span> : */
+<span class="lineNum"> 668 </span> : void remove_synonym(const std::string &amp; term,
+<span class="lineNum"> 669 </span> : const std::string &amp; synonym) const;
+<span class="lineNum"> 670 </span> :
+<span class="lineNum"> 671 </span> : /** Remove all synonyms for a term.
+<span class="lineNum"> 672 </span> : *
+<span class="lineNum"> 673 </span> : * If @a term has no synonyms, no action is taken.
+<span class="lineNum"> 674 </span> : */
+<span class="lineNum"> 675 </span> : void clear_synonyms(const std::string &amp; term) const;
+<span class="lineNum"> 676 </span> :
+<span class="lineNum"> 677 </span> : /** Set the user-specified metadata associated with a given key.
+<span class="lineNum"> 678 </span> : *
+<span class="lineNum"> 679 </span> : * This method sets the metadata value associated with a given key.
+<span class="lineNum"> 680 </span> : * If there is already a metadata value stored in the database with
+<span class="lineNum"> 681 </span> : * the same key, the old value is replaced. If you want to delete an
+<span class="lineNum"> 682 </span> : * existing item of metadata, just set its value to the empty string.
+<span class="lineNum"> 683 </span> : *
+<span class="lineNum"> 684 </span> : * User-specified metadata allows you to store arbitrary information
+<span class="lineNum"> 685 </span> : * in the form of (key,tag) pairs.
+<span class="lineNum"> 686 </span> : *
+<span class="lineNum"> 687 </span> : * There's no hard limit on the number of metadata items, or the size
+<span class="lineNum"> 688 </span> : * of the metadata values. Metadata keys have a limited length, which
+<span class="lineNum"> 689 </span> : * depends on the backend. We recommend limiting them to 200 bytes.
+<span class="lineNum"> 690 </span> : * Empty keys are not valid, and specifying one will cause an
+<span class="lineNum"> 691 </span> : * exception.
+<span class="lineNum"> 692 </span> : *
+<span class="lineNum"> 693 </span> : * Metadata modifications are committed to disk in the same way as
+<span class="lineNum"> 694 </span> : * modifications to the documents in the database are: i.e.,
+<span class="lineNum"> 695 </span> : * modifications are atomic, and won't be committed to disk
+<span class="lineNum"> 696 </span> : * immediately (see flush() for more details). This allows metadata
+<span class="lineNum"> 697 </span> : * to be used to link databases with versioned external resources
+<span class="lineNum"> 698 </span> : * by storing the appropriate version number in a metadata item.
+<span class="lineNum"> 699 </span> : *
+<span class="lineNum"> 700 </span> : * You can also use the metadata to store arbitrary extra information
+<span class="lineNum"> 701 </span> : * associated with terms, documents, or postings by encoding the
+<span class="lineNum"> 702 </span> : * termname and/or document id into the metadata key.
+<span class="lineNum"> 703 </span> : *
+<span class="lineNum"> 704 </span> : * @param key The key of the metadata item to set.
+<span class="lineNum"> 705 </span> : *
+<span class="lineNum"> 706 </span> : * @param value The value of the metadata item to set.
+<span class="lineNum"> 707 </span> : *
+<span class="lineNum"> 708 </span> : * @exception Xapian::DatabaseError will be thrown if a problem occurs
+<span class="lineNum"> 709 </span> : * while writing to the database.
+<span class="lineNum"> 710 </span> : *
+<span class="lineNum"> 711 </span> : * @exception Xapian::DatabaseCorruptError will be thrown if the
+<span class="lineNum"> 712 </span> : * database is in a corrupt state.
+<span class="lineNum"> 713 </span> : *
+<span class="lineNum"> 714 </span> : * @exception Xapian::InvalidArgumentError will be thrown if the
+<span class="lineNum"> 715 </span> : * key supplied is empty.
+<span class="lineNum"> 716 </span> : */
+<span class="lineNum"> 717 </span> : void set_metadata(const std::string &amp; key, const std::string &amp; value);
+<span class="lineNum"> 718 </span> :
+<span class="lineNum"> 719 </span> : /// Return a string describing this object.
+<span class="lineNum"> 720 </span> : std::string get_description() const;
+<span class="lineNum"> 721 </span> : };
+<span class="lineNum"> 722 </span> :
+<span class="lineNum"> 723 </span> : /** Open for read/write; create if no db exists. */
+<span class="lineNum"> 724 </span> : const int DB_CREATE_OR_OPEN = 1;
+<span class="lineNum"> 725 </span> : /** Create a new database; fail if db exists. */
+<span class="lineNum"> 726 </span> : const int DB_CREATE = 2;
+<span class="lineNum"> 727 </span> : /** Overwrite existing db; create if none exists. */
+<span class="lineNum"> 728 </span> : const int DB_CREATE_OR_OVERWRITE = 3;
+<span class="lineNum"> 729 </span> : /** Open for read/write; fail if no db exists. */
+<span class="lineNum"> 730 </span> : const int DB_OPEN = 4;
+<span class="lineNum"> 731 </span> : // Can't see any sensible use for this one
+<span class="lineNum"> 732 </span> : // const int DB_OVERWRITE = XXX;
+<span class="lineNum"> 733 </span> :
+<span class="lineNum"> 734 </span> : }
+<span class="lineNum"> 735 </span> :
+<span class="lineNum"> 736 </span> : #endif /* XAPIAN_INCLUDED_DATABASE_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/xapian/document.h.gcov.html b/rep/usr/include/xapian/document.h.gcov.html
new file mode 100644
index 0000000..dace408
--- /dev/null
+++ b/rep/usr/include/xapian/document.h.gcov.html
@@ -0,0 +1,267 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/xapian/document.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">usr/include/xapian</a> - document.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">0.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">0</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /** \file document.h
+<span class="lineNum"> 2 </span> : * \brief API for working with documents
+<span class="lineNum"> 3 </span> : */
+<span class="lineNum"> 4 </span> : /* Copyright 1999,2000,2001 BrightStation PLC
+<span class="lineNum"> 5 </span> : * Copyright 2002 Ananova Ltd
+<span class="lineNum"> 6 </span> : * Copyright 2002,2003,2004,2006,2007 Olly Betts
+<span class="lineNum"> 7 </span> : *
+<span class="lineNum"> 8 </span> : * This program is free software; you can redistribute it and/or
+<span class="lineNum"> 9 </span> : * modify it under the terms of the GNU General Public License as
+<span class="lineNum"> 10 </span> : * published by the Free Software Foundation; either version 2 of the
+<span class="lineNum"> 11 </span> : * License, or (at your option) any later version.
+<span class="lineNum"> 12 </span> : *
+<span class="lineNum"> 13 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 14 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 15 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 16 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 17 </span> : *
+<span class="lineNum"> 18 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 19 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 20 </span> : * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
+<span class="lineNum"> 21 </span> : * USA
+<span class="lineNum"> 22 </span> : */
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : #ifndef XAPIAN_INCLUDED_DOCUMENT_H
+<span class="lineNum"> 25 </span> : #define XAPIAN_INCLUDED_DOCUMENT_H
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #include &lt;string&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : #include &lt;xapian/base.h&gt;
+<span class="lineNum"> 30 </span> : #include &lt;xapian/types.h&gt;
+<span class="lineNum"> 31 </span> : #include &lt;xapian/termiterator.h&gt;
+<span class="lineNum"> 32 </span> : #include &lt;xapian/visibility.h&gt;
+<span class="lineNum"> 33 </span> :
+<span class="lineNum"> 34 </span> : namespace Xapian {
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : class ValueIterator;
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : /// A document in the database - holds data, values, terms, and postings
+<span class="lineNum"> 39 </span> : class XAPIAN_VISIBILITY_DEFAULT Document {
+<span class="lineNum"> 40 </span> : public:
+<span class="lineNum"> 41 </span> : class Internal;
+<span class="lineNum"> 42 </span> : /// @private @internal Reference counted internals.
+<span class="lineNum"> 43 </span> : Xapian::Internal::RefCntPtr&lt;Internal&gt; internal;
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : /** @private @internal Constructor is only used by internal classes.
+<span class="lineNum"> 46 </span> : *
+<span class="lineNum"> 47 </span> : * @param internal_ pointer to internal opaque class
+<span class="lineNum"> 48 </span> : */
+<span class="lineNum"> 49 </span> : explicit Document(Internal *internal_);
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> : /** Copying is allowed. The internals are reference counted, so
+<span class="lineNum"> 52 </span> : * copying is cheap.
+<span class="lineNum"> 53 </span> : */
+<span class="lineNum"> 54 </span> : Document(const Document &amp;other);
+<span class="lineNum"> 55 </span> :
+<span class="lineNum"> 56 </span> : /** Assignment is allowed. The internals are reference counted,
+<span class="lineNum"> 57 </span> : * so assignment is cheap.
+<span class="lineNum"> 58 </span> : */
+<span class="lineNum"> 59 </span> : void operator=(const Document &amp;other);
+<span class="lineNum"> 60 </span> :
+<span class="lineNum"> 61 </span> : /// Make a new empty Document
+<span class="lineNum"> 62 </span> : Document();
+<span class="lineNum"> 63 </span> :
+<span class="lineNum"> 64 </span> : /// Destructor
+<span class="lineNum"> 65 </span> : ~Document();
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : /** Get value by number.
+<span class="lineNum"> 68 </span> : *
+<span class="lineNum"> 69 </span> : * Returns an empty string if no value with the given number is present
+<span class="lineNum"> 70 </span> : * in the document.
+<span class="lineNum"> 71 </span> : *
+<span class="lineNum"> 72 </span> : * @param valueno The number of the value.
+<span class="lineNum"> 73 </span> : */
+<span class="lineNum"> 74 </span> : std::string get_value(Xapian::valueno valueno) const;
+<span class="lineNum"> 75 </span> :
+<span class="lineNum"> 76 </span> : /** Add a new value. It will replace any existing value with the
+<span class="lineNum"> 77 </span> : * same number.
+<span class="lineNum"> 78 </span> : */
+<span class="lineNum"> 79 </span> : void add_value(Xapian::valueno valueno, const std::string &amp;value);
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span> : /// Remove any value with the given number.
+<span class="lineNum"> 82 </span> : void remove_value(Xapian::valueno valueno);
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span> : /// Remove all values associated with the document.
+<span class="lineNum"> 85 </span> : void clear_values();
+<span class="lineNum"> 86 </span> :
+<span class="lineNum"> 87 </span> : /** Get data stored in the document.
+<span class="lineNum"> 88 </span> : * This is a potentially expensive operation, and shouldn't normally
+<span class="lineNum"> 89 </span> : * be used in a match decider functor. Put data for use by match
+<span class="lineNum"> 90 </span> : * deciders in a value instead.
+<span class="lineNum"> 91 </span> : */
+<span class="lineNum"> 92 </span> : std::string get_data() const;
+<span class="lineNum"> 93 </span> :
+<span class="lineNum"> 94 </span> : /// Set data stored in the document.
+<span class="lineNum"> 95 </span> : void set_data(const std::string &amp;data);
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span> : /** Add an occurrence of a term at a particular position.
+<span class="lineNum"> 98 </span> : *
+<span class="lineNum"> 99 </span> : * Multiple occurrences of the term at the same position are
+<span class="lineNum"> 100 </span> : * represented only once in the positional information, but do
+<span class="lineNum"> 101 </span> : * increase the wdf.
+<span class="lineNum"> 102 </span> : *
+<span class="lineNum"> 103 </span> : * If the term is not already in the document, it will be added to
+<span class="lineNum"> 104 </span> : * it.
+<span class="lineNum"> 105 </span> : *
+<span class="lineNum"> 106 </span> : * @param tname The name of the term.
+<span class="lineNum"> 107 </span> : * @param tpos The position of the term.
+<span class="lineNum"> 108 </span> : * @param wdfinc The increment that will be applied to the wdf
+<span class="lineNum"> 109 </span> : * for this term.
+<span class="lineNum"> 110 </span> : */
+<span class="lineNum"> 111 </span> : void add_posting(const std::string &amp; tname,
+<span class="lineNum"> 112 </span> : Xapian::termpos tpos,
+<span class="lineNum"> 113 </span> : Xapian::termcount wdfinc = 1);
+<span class="lineNum"> 114 </span> :
+<span class="lineNum"> 115 </span> : /** Add a term to the document, without positional information.
+<span class="lineNum"> 116 </span> : *
+<span class="lineNum"> 117 </span> : * Any existing positional information for the term will be left
+<span class="lineNum"> 118 </span> : * unmodified.
+<span class="lineNum"> 119 </span> : *
+<span class="lineNum"> 120 </span> : * @param tname The name of the term.
+<span class="lineNum"> 121 </span> : * @param wdfinc The increment that will be applied to the wdf
+<span class="lineNum"> 122 </span> : * for this term.
+<span class="lineNum"> 123 </span> : */
+<span class="lineNum"> 124 </span> : void add_term(const std::string &amp; tname, Xapian::termcount wdfinc = 1);
+<span class="lineNum"> 125 </span> :
+<span class="lineNum"> 126 </span> : /** Remove a posting of a term from the document.
+<span class="lineNum"> 127 </span> : *
+<span class="lineNum"> 128 </span> : * Note that the term will still index the document even if all
+<span class="lineNum"> 129 </span> : * occurrences are removed. To remove a term from a document
+<span class="lineNum"> 130 </span> : * completely, use remove_term().
+<span class="lineNum"> 131 </span> : *
+<span class="lineNum"> 132 </span> : * @param tname The name of the term.
+<span class="lineNum"> 133 </span> : * @param tpos The position of the term.
+<span class="lineNum"> 134 </span> : * @param wdfdec The decrement that will be applied to the wdf
+<span class="lineNum"> 135 </span> : * when removing this posting. The wdf will not go
+<span class="lineNum"> 136 </span> : * below the value of 0.
+<span class="lineNum"> 137 </span> : *
+<span class="lineNum"> 138 </span> : * @exception Xapian::InvalidArgumentError will be thrown if the term
+<span class="lineNum"> 139 </span> : * is not at the position specified in the position list for this term
+<span class="lineNum"> 140 </span> : * in this document.
+<span class="lineNum"> 141 </span> : *
+<span class="lineNum"> 142 </span> : * @exception Xapian::InvalidArgumentError will be thrown if the term
+<span class="lineNum"> 143 </span> : * is not in the document
+<span class="lineNum"> 144 </span> : */
+<span class="lineNum"> 145 </span> : void remove_posting(const std::string &amp; tname,
+<span class="lineNum"> 146 </span> : Xapian::termpos tpos,
+<span class="lineNum"> 147 </span> : Xapian::termcount wdfdec = 1);
+<span class="lineNum"> 148 </span> :
+<span class="lineNum"> 149 </span> : /** Remove a term and all postings associated with it.
+<span class="lineNum"> 150 </span> : *
+<span class="lineNum"> 151 </span> : * @param tname The name of the term.
+<span class="lineNum"> 152 </span> : *
+<span class="lineNum"> 153 </span> : * @exception Xapian::InvalidArgumentError will be thrown if the term
+<span class="lineNum"> 154 </span> : * is not in the document
+<span class="lineNum"> 155 </span> : */
+<span class="lineNum"> 156 </span> : void remove_term(const std::string &amp; tname);
+<span class="lineNum"> 157 </span> :
+<span class="lineNum"> 158 </span> : /// Remove all terms (and postings) from the document.
+<span class="lineNum"> 159 </span> : void clear_terms();
+<span class="lineNum"> 160 </span> :
+<span class="lineNum"> 161 </span> : /** The length of the termlist - i.e. the number of different terms
+<span class="lineNum"> 162 </span> : * which index this document.
+<span class="lineNum"> 163 </span> : */
+<span class="lineNum"> 164 </span> : Xapian::termcount termlist_count() const;
+<span class="lineNum"> 165 </span> :
+<span class="lineNum"> 166 </span> : /// Iterator for the terms in this document.
+<span class="lineNum"> 167 </span> : TermIterator termlist_begin() const;
+<span class="lineNum"> 168 </span> :
+<span class="lineNum"> 169 </span> : /// Equivalent end iterator for termlist_begin().
+<span class="lineNum"> 170 </span><span class="lineNoCov"> 0 : TermIterator termlist_end() const {</span>
+<span class="lineNum"> 171 </span><span class="lineNoCov"> 0 : return TermIterator(NULL);</span>
+<span class="lineNum"> 172 </span> : }
+<span class="lineNum"> 173 </span> :
+<span class="lineNum"> 174 </span> : /// Count the values in this document.
+<span class="lineNum"> 175 </span> : Xapian::termcount values_count() const;
+<span class="lineNum"> 176 </span> :
+<span class="lineNum"> 177 </span> : /// Iterator for the values in this document.
+<span class="lineNum"> 178 </span> : ValueIterator values_begin() const;
+<span class="lineNum"> 179 </span> :
+<span class="lineNum"> 180 </span> : /// Equivalent end iterator for values_begin().
+<span class="lineNum"> 181 </span> : ValueIterator values_end() const;
+<span class="lineNum"> 182 </span> :
+<span class="lineNum"> 183 </span> : /** Get the document id which is associated with this document (if any).
+<span class="lineNum"> 184 </span> : *
+<span class="lineNum"> 185 </span> : * NB If multiple databases are being searched together, then this
+<span class="lineNum"> 186 </span> : * will be the document id in the individual database, not the merged
+<span class="lineNum"> 187 </span> : * database!
+<span class="lineNum"> 188 </span> : *
+<span class="lineNum"> 189 </span> : * @return If this document came from a database, return the document
+<span class="lineNum"> 190 </span> : * id in that database. Otherwise, return 0.
+<span class="lineNum"> 191 </span> : */
+<span class="lineNum"> 192 </span> : docid get_docid() const;
+<span class="lineNum"> 193 </span> :
+<span class="lineNum"> 194 </span> : /// Return a string describing this object.
+<span class="lineNum"> 195 </span> : std::string get_description() const;
+<span class="lineNum"> 196 </span> : };
+<span class="lineNum"> 197 </span> :
+<span class="lineNum"> 198 </span> : }
+<span class="lineNum"> 199 </span> :
+<span class="lineNum"> 200 </span> : #endif // XAPIAN_INCLUDED_DOCUMENT_H
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/xapian/enquire.h.gcov.html b/rep/usr/include/xapian/enquire.h.gcov.html
new file mode 100644
index 0000000..15ca5f0
--- /dev/null
+++ b/rep/usr/include/xapian/enquire.h.gcov.html
@@ -0,0 +1,1361 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/xapian/enquire.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">usr/include/xapian</a> - enquire.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">29</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">89.7 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">26</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /** \file enquire.h
+<span class="lineNum"> 2 </span> : * \brief API for running queries
+<span class="lineNum"> 3 </span> : */
+<span class="lineNum"> 4 </span> : /* Copyright 1999,2000,2001 BrightStation PLC
+<span class="lineNum"> 5 </span> : * Copyright 2001,2002 Ananova Ltd
+<span class="lineNum"> 6 </span> : * Copyright 2002,2003,2004,2005,2006,2007 Olly Betts
+<span class="lineNum"> 7 </span> : *
+<span class="lineNum"> 8 </span> : * This program is free software; you can redistribute it and/or
+<span class="lineNum"> 9 </span> : * modify it under the terms of the GNU General Public License as
+<span class="lineNum"> 10 </span> : * published by the Free Software Foundation; either version 2 of the
+<span class="lineNum"> 11 </span> : * License, or (at your option) any later version.
+<span class="lineNum"> 12 </span> : *
+<span class="lineNum"> 13 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 14 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 15 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 16 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 17 </span> : *
+<span class="lineNum"> 18 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 19 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 20 </span> : * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
+<span class="lineNum"> 21 </span> : * USA
+<span class="lineNum"> 22 </span> : */
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : #ifndef XAPIAN_INCLUDED_ENQUIRE_H
+<span class="lineNum"> 25 </span> : #define XAPIAN_INCLUDED_ENQUIRE_H
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #include &lt;string&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : #include &lt;xapian/base.h&gt;
+<span class="lineNum"> 30 </span> : #include &lt;xapian/deprecated.h&gt;
+<span class="lineNum"> 31 </span> : #include &lt;xapian/sorter.h&gt;
+<span class="lineNum"> 32 </span> : #include &lt;xapian/types.h&gt;
+<span class="lineNum"> 33 </span> : #include &lt;xapian/termiterator.h&gt;
+<span class="lineNum"> 34 </span> : #include &lt;xapian/visibility.h&gt;
+<span class="lineNum"> 35 </span> :
+<span class="lineNum"> 36 </span> : namespace Xapian {
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : class Database;
+<span class="lineNum"> 39 </span> : class Document;
+<span class="lineNum"> 40 </span> : class ErrorHandler;
+<span class="lineNum"> 41 </span> : class ExpandDecider;
+<span class="lineNum"> 42 </span> : class MSetIterator;
+<span class="lineNum"> 43 </span> : class Query;
+<span class="lineNum"> 44 </span> : class Weight;
+<span class="lineNum"> 45 </span> :
+<span class="lineNum"> 46 </span> : /** A match set (MSet).
+<span class="lineNum"> 47 </span> : * This class represents (a portion of) the results of a query.
+<span class="lineNum"> 48 </span> : */
+<span class="lineNum"> 49 </span> : class XAPIAN_VISIBILITY_DEFAULT MSet {
+<span class="lineNum"> 50 </span> : public:
+<span class="lineNum"> 51 </span> : class Internal;
+<span class="lineNum"> 52 </span> : /// @internal Reference counted internals.
+<span class="lineNum"> 53 </span> : Xapian::Internal::RefCntPtr&lt;Internal&gt; internal;
+<span class="lineNum"> 54 </span> :
+<span class="lineNum"> 55 </span> : /// @internal Constructor for internal use.
+<span class="lineNum"> 56 </span> : explicit MSet(MSet::Internal * internal_);
+<span class="lineNum"> 57 </span> :
+<span class="lineNum"> 58 </span> : /// Create an empty Xapian::MSet.
+<span class="lineNum"> 59 </span> : MSet();
+<span class="lineNum"> 60 </span> :
+<span class="lineNum"> 61 </span> : /// Destroy a Xapian::MSet.
+<span class="lineNum"> 62 </span> : ~MSet();
+<span class="lineNum"> 63 </span> :
+<span class="lineNum"> 64 </span> : /// Copying is allowed (and is cheap).
+<span class="lineNum"> 65 </span> : MSet(const MSet &amp; other);
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : /// Assignment is allowed (and is cheap).
+<span class="lineNum"> 68 </span> : void operator=(const MSet &amp;other);
+<span class="lineNum"> 69 </span> :
+<span class="lineNum"> 70 </span> : /** Fetch the document info for a set of items in the MSet.
+<span class="lineNum"> 71 </span> : *
+<span class="lineNum"> 72 </span> : * This method causes the documents in the range specified by the
+<span class="lineNum"> 73 </span> : * iterators to be fetched from the database, and cached in the
+<span class="lineNum"> 74 </span> : * Xapian::MSet object. This has little effect when performing a
+<span class="lineNum"> 75 </span> : * search across a local database, but will greatly speed up
+<span class="lineNum"> 76 </span> : * subsequent access to the document contents when the documents are
+<span class="lineNum"> 77 </span> : * stored in a remote database.
+<span class="lineNum"> 78 </span> : *
+<span class="lineNum"> 79 </span> : * The iterators must be over this Xapian::MSet - undefined behaviour
+<span class="lineNum"> 80 </span> : * will result otherwise.
+<span class="lineNum"> 81 </span> : *
+<span class="lineNum"> 82 </span> : * @param begin MSetIterator for first item to fetch.
+<span class="lineNum"> 83 </span> : * @param end MSetIterator for item after last item to fetch.
+<span class="lineNum"> 84 </span> : */
+<span class="lineNum"> 85 </span> : void fetch(const MSetIterator &amp;begin, const MSetIterator &amp;end) const;
+<span class="lineNum"> 86 </span> :
+<span class="lineNum"> 87 </span> : /** Fetch the single item specified.
+<span class="lineNum"> 88 </span> : */
+<span class="lineNum"> 89 </span> : void fetch(const MSetIterator &amp;item) const;
+<span class="lineNum"> 90 </span> :
+<span class="lineNum"> 91 </span> : /** Fetch all the items in the MSet.
+<span class="lineNum"> 92 </span> : */
+<span class="lineNum"> 93 </span> : void fetch() const;
+<span class="lineNum"> 94 </span> :
+<span class="lineNum"> 95 </span> : /** This converts the weight supplied to a percentage score.
+<span class="lineNum"> 96 </span> : * The return value will be in the range 0 to 100, and will be 0 if
+<span class="lineNum"> 97 </span> : * and only if the item did not match the query at all.
+<span class="lineNum"> 98 </span> : */
+<span class="lineNum"> 99 </span> : Xapian::percent convert_to_percent(Xapian::weight wt) const;
+<span class="lineNum"> 100 </span> :
+<span class="lineNum"> 101 </span> : /// Return the percentage score for a particular item.
+<span class="lineNum"> 102 </span> : Xapian::percent convert_to_percent(const MSetIterator &amp;it) const;
+<span class="lineNum"> 103 </span> :
+<span class="lineNum"> 104 </span> : /** Return the term frequency of the given query term.
+<span class="lineNum"> 105 </span> : *
+<span class="lineNum"> 106 </span> : * @param tname The term to look for.
+<span class="lineNum"> 107 </span> : *
+<span class="lineNum"> 108 </span> : * @exception Xapian::InvalidArgumentError is thrown if the term was
+<span class="lineNum"> 109 </span> : * not in the query.
+<span class="lineNum"> 110 </span> : */
+<span class="lineNum"> 111 </span> : Xapian::doccount get_termfreq(const std::string &amp;tname) const;
+<span class="lineNum"> 112 </span> :
+<span class="lineNum"> 113 </span> : /** Return the term weight of the given query term.
+<span class="lineNum"> 114 </span> : *
+<span class="lineNum"> 115 </span> : * @param tname The term to look for.
+<span class="lineNum"> 116 </span> : *
+<span class="lineNum"> 117 </span> : * @exception Xapian::InvalidArgumentError is thrown if the term was
+<span class="lineNum"> 118 </span> : * not in the query.
+<span class="lineNum"> 119 </span> : */
+<span class="lineNum"> 120 </span> : Xapian::weight get_termweight(const std::string &amp;tname) const;
+<span class="lineNum"> 121 </span> :
+<span class="lineNum"> 122 </span> : /** The index of the first item in the result which was put into the
+<span class="lineNum"> 123 </span> : * MSet.
+<span class="lineNum"> 124 </span> : *
+<span class="lineNum"> 125 </span> : * This corresponds to the parameter &quot;first&quot; specified in
+<span class="lineNum"> 126 </span> : * Xapian::Enquire::get_mset(). A value of 0 corresponds to the
+<span class="lineNum"> 127 </span> : * highest result being the first item in the MSet.
+<span class="lineNum"> 128 </span> : */
+<span class="lineNum"> 129 </span> : Xapian::doccount get_firstitem() const;
+<span class="lineNum"> 130 </span> :
+<span class="lineNum"> 131 </span> : /** A lower bound on the number of documents in the database which
+<span class="lineNum"> 132 </span> : * match the query.
+<span class="lineNum"> 133 </span> : *
+<span class="lineNum"> 134 </span> : * This figure takes into account collapsing of duplicates,
+<span class="lineNum"> 135 </span> : * and weighting cutoff values.
+<span class="lineNum"> 136 </span> : *
+<span class="lineNum"> 137 </span> : * This number is usually considerably less than the actual number
+<span class="lineNum"> 138 </span> : * of documents which match the query.
+<span class="lineNum"> 139 </span> : */
+<span class="lineNum"> 140 </span> : Xapian::doccount get_matches_lower_bound() const;
+<span class="lineNum"> 141 </span> :
+<span class="lineNum"> 142 </span> : /** An estimate for the number of documents in the database which
+<span class="lineNum"> 143 </span> : * match the query.
+<span class="lineNum"> 144 </span> : *
+<span class="lineNum"> 145 </span> : * This figure takes into account collapsing of duplicates,
+<span class="lineNum"> 146 </span> : * and weighting cutoff values.
+<span class="lineNum"> 147 </span> : *
+<span class="lineNum"> 148 </span> : * This value is returned because there is sometimes a request to
+<span class="lineNum"> 149 </span> : * display such information. However, our experience is that
+<span class="lineNum"> 150 </span> : * presenting this value to users causes them to worry about the
+<span class="lineNum"> 151 </span> : * large number of results, rather than how useful those at the top
+<span class="lineNum"> 152 </span> : * of the result set are, and is thus undesirable.
+<span class="lineNum"> 153 </span> : */
+<span class="lineNum"> 154 </span> : Xapian::doccount get_matches_estimated() const;
+<span class="lineNum"> 155 </span> :
+<span class="lineNum"> 156 </span> : /** An upper bound on the number of documents in the database which
+<span class="lineNum"> 157 </span> : * match the query.
+<span class="lineNum"> 158 </span> : *
+<span class="lineNum"> 159 </span> : * This figure takes into account collapsing of duplicates,
+<span class="lineNum"> 160 </span> : * and weighting cutoff values.
+<span class="lineNum"> 161 </span> : *
+<span class="lineNum"> 162 </span> : * This number is usually considerably greater than the actual
+<span class="lineNum"> 163 </span> : * number of documents which match the query.
+<span class="lineNum"> 164 </span> : */
+<span class="lineNum"> 165 </span> : Xapian::doccount get_matches_upper_bound() const;
+<span class="lineNum"> 166 </span> :
+<span class="lineNum"> 167 </span> : /** The maximum possible weight in the MSet.
+<span class="lineNum"> 168 </span> : * This weight is likely not to be attained in the set of results,
+<span class="lineNum"> 169 </span> : * but represents an upper bound on the weight which a document
+<span class="lineNum"> 170 </span> : * could attain for the given query.
+<span class="lineNum"> 171 </span> : */
+<span class="lineNum"> 172 </span> : Xapian::weight get_max_possible() const;
+<span class="lineNum"> 173 </span> :
+<span class="lineNum"> 174 </span> : /** The greatest weight which is attained by any document in the
+<span class="lineNum"> 175 </span> : * database.
+<span class="lineNum"> 176 </span> : *
+<span class="lineNum"> 177 </span> : * If firstitem == 0, this is the weight of the first entry in
+<span class="lineNum"> 178 </span> : * items.
+<span class="lineNum"> 179 </span> : *
+<span class="lineNum"> 180 </span> : * If no documents are found by the query, this will be 0.
+<span class="lineNum"> 181 </span> : *
+<span class="lineNum"> 182 </span> : * Note that calculation of max_attained requires calculation
+<span class="lineNum"> 183 </span> : * of at least one result item - therefore, if no items were
+<span class="lineNum"> 184 </span> : * requested when the query was performed (by specifying
+<span class="lineNum"> 185 </span> : * maxitems = 0 in Xapian::Enquire::get_mset()), this value will be 0.
+<span class="lineNum"> 186 </span> : */
+<span class="lineNum"> 187 </span> : Xapian::weight get_max_attained() const;
+<span class="lineNum"> 188 </span> :
+<span class="lineNum"> 189 </span> : /** The number of items in this MSet */
+<span class="lineNum"> 190 </span> : Xapian::doccount size() const;
+<span class="lineNum"> 191 </span> :
+<span class="lineNum"> 192 </span> : /** Required to allow use as an STL container. */
+<span class="lineNum"> 193 </span> : Xapian::doccount max_size() const { return size(); }
+<span class="lineNum"> 194 </span> :
+<span class="lineNum"> 195 </span> : /** Test if this MSet is empty */
+<span class="lineNum"> 196 </span> : bool empty() const;
+<span class="lineNum"> 197 </span> :
+<span class="lineNum"> 198 </span> : /** Swap the MSet we point to with another */
+<span class="lineNum"> 199 </span> : void swap(MSet &amp; other);
+<span class="lineNum"> 200 </span> :
+<span class="lineNum"> 201 </span> : /** Iterator for the terms in this MSet */
+<span class="lineNum"> 202 </span> : MSetIterator begin() const;
+<span class="lineNum"> 203 </span> :
+<span class="lineNum"> 204 </span> : /** End iterator corresponding to begin() */
+<span class="lineNum"> 205 </span> : MSetIterator end() const;
+<span class="lineNum"> 206 </span> :
+<span class="lineNum"> 207 </span> : /** Iterator pointing to the last element of this MSet */
+<span class="lineNum"> 208 </span> : MSetIterator back() const;
+<span class="lineNum"> 209 </span> :
+<span class="lineNum"> 210 </span> : /** This returns the document at position i in this MSet object.
+<span class="lineNum"> 211 </span> : *
+<span class="lineNum"> 212 </span> : * Note that this is not the same as the document at rank i in the
+<span class="lineNum"> 213 </span> : * query, unless the &quot;first&quot; parameter to Xapian::Enquire::get_mset
+<span class="lineNum"> 214 </span> : * was 0. Rather, it is the document at rank i + first.
+<span class="lineNum"> 215 </span> : *
+<span class="lineNum"> 216 </span> : * In other words, the offset is into the documents represented by
+<span class="lineNum"> 217 </span> : * this object, not into the set of documents matching the query.
+<span class="lineNum"> 218 </span> : */
+<span class="lineNum"> 219 </span> : MSetIterator operator[](Xapian::doccount i) const;
+<span class="lineNum"> 220 </span> :
+<span class="lineNum"> 221 </span> : /// Allow use as an STL container
+<span class="lineNum"> 222 </span> : //@{
+<span class="lineNum"> 223 </span> : typedef MSetIterator value_type; // FIXME: not assignable...
+<span class="lineNum"> 224 </span> : typedef MSetIterator iterator;
+<span class="lineNum"> 225 </span> : typedef MSetIterator const_iterator;
+<span class="lineNum"> 226 </span> : typedef MSetIterator &amp; reference; // Hmm
+<span class="lineNum"> 227 </span> : typedef MSetIterator &amp; const_reference;
+<span class="lineNum"> 228 </span> : typedef MSetIterator * pointer; // Hmm
+<span class="lineNum"> 229 </span> : typedef Xapian::doccount_diff difference_type;
+<span class="lineNum"> 230 </span> : typedef Xapian::doccount size_type;
+<span class="lineNum"> 231 </span> : //@}
+<span class="lineNum"> 232 </span> :
+<span class="lineNum"> 233 </span> : /// Return a string describing this object.
+<span class="lineNum"> 234 </span> : std::string get_description() const;
+<span class="lineNum"> 235 </span> : };
+<span class="lineNum"> 236 </span> :
+<span class="lineNum"> 237 </span> : /** An iterator pointing to items in an MSet.
+<span class="lineNum"> 238 </span> : * This is used for access to individual results of a match.
+<span class="lineNum"> 239 </span> : */
+<span class="lineNum"> 240 </span> : class XAPIAN_VISIBILITY_DEFAULT MSetIterator {
+<span class="lineNum"> 241 </span> : private:
+<span class="lineNum"> 242 </span> : friend class MSet;
+<span class="lineNum"> 243 </span> : friend bool operator==(const MSetIterator &amp;a, const MSetIterator &amp;b);
+<span class="lineNum"> 244 </span> : friend bool operator!=(const MSetIterator &amp;a, const MSetIterator &amp;b);
+<span class="lineNum"> 245 </span> :
+<span class="lineNum"> 246 </span> : MSetIterator(Xapian::doccount index_, const MSet &amp; mset_)
+<span class="lineNum"> 247 </span> : : index(index_), mset(mset_) { }
+<span class="lineNum"> 248 </span> :
+<span class="lineNum"> 249 </span> : Xapian::doccount index;
+<span class="lineNum"> 250 </span> : MSet mset;
+<span class="lineNum"> 251 </span> :
+<span class="lineNum"> 252 </span> : public:
+<span class="lineNum"> 253 </span> : /** Create an uninitialised iterator; this cannot be used, but is
+<span class="lineNum"> 254 </span> : * convenient syntactically.
+<span class="lineNum"> 255 </span> : */
+<span class="lineNum"> 256 </span><span class="lineCov"> 3 : MSetIterator() : index(0), mset() { }</span>
+<span class="lineNum"> 257 </span> :
+<span class="lineNum"> 258 </span><span class="lineCov"> 165 : ~MSetIterator() { }</span>
+<span class="lineNum"> 259 </span> :
+<span class="lineNum"> 260 </span> : /// Copying is allowed (and is cheap).
+<span class="lineNum"> 261 </span><span class="lineCov"> 58 : MSetIterator(const MSetIterator &amp;other) {</span>
+<span class="lineNum"> 262 </span><span class="lineCov"> 58 : index = other.index;</span>
+<span class="lineNum"> 263 </span><span class="lineCov"> 58 : mset = other.mset;</span>
+<span class="lineNum"> 264 </span><span class="lineCov"> 58 : }</span>
+<span class="lineNum"> 265 </span> :
+<span class="lineNum"> 266 </span> : /// Assignment is allowed (and is cheap).
+<span class="lineNum"> 267 </span><span class="lineCov"> 31 : void operator=(const MSetIterator &amp;other) {</span>
+<span class="lineNum"> 268 </span><span class="lineCov"> 31 : index = other.index;</span>
+<span class="lineNum"> 269 </span><span class="lineCov"> 31 : mset = other.mset;</span>
+<span class="lineNum"> 270 </span><span class="lineCov"> 31 : }</span>
+<span class="lineNum"> 271 </span> :
+<span class="lineNum"> 272 </span> : /// Advance the iterator.
+<span class="lineNum"> 273 </span><span class="lineCov"> 61 : MSetIterator &amp; operator++() {</span>
+<span class="lineNum"> 274 </span><span class="lineCov"> 61 : ++index;</span>
+<span class="lineNum"> 275 </span><span class="lineCov"> 61 : return *this;</span>
+<span class="lineNum"> 276 </span> : }
+<span class="lineNum"> 277 </span> :
+<span class="lineNum"> 278 </span> : /// Advance the iterator (postfix variant).
+<span class="lineNum"> 279 </span><span class="lineCov"> 28 : MSetIterator operator++(int) {</span>
+<span class="lineNum"> 280 </span><span class="lineCov"> 28 : MSetIterator tmp = *this;</span>
+<span class="lineNum"> 281 </span><span class="lineCov"> 28 : ++index;</span>
+<span class="lineNum"> 282 </span> : return tmp;
+<span class="lineNum"> 283 </span> : }
+<span class="lineNum"> 284 </span> :
+<span class="lineNum"> 285 </span> : /// Decrement the iterator.
+<span class="lineNum"> 286 </span> : MSetIterator &amp; operator--() {
+<span class="lineNum"> 287 </span> : --index;
+<span class="lineNum"> 288 </span> : return *this;
+<span class="lineNum"> 289 </span> : }
+<span class="lineNum"> 290 </span> :
+<span class="lineNum"> 291 </span> : /// Decrement the iterator (postfix variant).
+<span class="lineNum"> 292 </span> : MSetIterator operator--(int) {
+<span class="lineNum"> 293 </span> : MSetIterator tmp = *this;
+<span class="lineNum"> 294 </span> : --index;
+<span class="lineNum"> 295 </span> : return tmp;
+<span class="lineNum"> 296 </span> : }
+<span class="lineNum"> 297 </span> :
+<span class="lineNum"> 298 </span> : /// Get the document ID for the current position.
+<span class="lineNum"> 299 </span> : Xapian::docid operator*() const;
+<span class="lineNum"> 300 </span> :
+<span class="lineNum"> 301 </span> : /** Get a Xapian::Document object for the current position.
+<span class="lineNum"> 302 </span> : *
+<span class="lineNum"> 303 </span> : * This method returns a Xapian::Document object which provides the
+<span class="lineNum"> 304 </span> : * information about the document pointed to by the MSetIterator.
+<span class="lineNum"> 305 </span> : *
+<span class="lineNum"> 306 </span> : * If the underlying database has suitable support, using this call
+<span class="lineNum"> 307 </span> : * (rather than asking the database for a document based on its
+<span class="lineNum"> 308 </span> : * document ID) will enable the system to ensure that the correct
+<span class="lineNum"> 309 </span> : * data is returned, and that the document has not been deleted
+<span class="lineNum"> 310 </span> : * or changed since the query was performed.
+<span class="lineNum"> 311 </span> : *
+<span class="lineNum"> 312 </span> : * @return A Xapian::Document object containing the document data.
+<span class="lineNum"> 313 </span> : *
+<span class="lineNum"> 314 </span> : * @exception Xapian::DocNotFoundError The document specified could not
+<span class="lineNum"> 315 </span> : * be found in the database.
+<span class="lineNum"> 316 </span> : */
+<span class="lineNum"> 317 </span> : Xapian::Document get_document() const;
+<span class="lineNum"> 318 </span> :
+<span class="lineNum"> 319 </span> : /** Get the rank of the document at the current position.
+<span class="lineNum"> 320 </span> : *
+<span class="lineNum"> 321 </span> : * The rank is the position that this document is at in the ordered
+<span class="lineNum"> 322 </span> : * list of results of the query. The result is 0-based - i.e. the
+<span class="lineNum"> 323 </span> : * top-ranked document has a rank of 0.
+<span class="lineNum"> 324 </span> : */
+<span class="lineNum"> 325 </span> : Xapian::doccount get_rank() const {
+<span class="lineNum"> 326 </span> : return mset.get_firstitem() + index;
+<span class="lineNum"> 327 </span> : }
+<span class="lineNum"> 328 </span> :
+<span class="lineNum"> 329 </span> : /// Get the weight of the document at the current position
+<span class="lineNum"> 330 </span> : Xapian::weight get_weight() const;
+<span class="lineNum"> 331 </span> :
+<span class="lineNum"> 332 </span> : /** Get the collapse key for this document.
+<span class="lineNum"> 333 </span> : */
+<span class="lineNum"> 334 </span> : std::string get_collapse_key() const;
+<span class="lineNum"> 335 </span> :
+<span class="lineNum"> 336 </span> : /** Get an estimate of the number of documents that have been collapsed
+<span class="lineNum"> 337 </span> : * into this one.
+<span class="lineNum"> 338 </span> : *
+<span class="lineNum"> 339 </span> : * The estimate will always be less than or equal to the actual
+<span class="lineNum"> 340 </span> : * number of other documents satisfying the match criteria with the
+<span class="lineNum"> 341 </span> : * same collapse key as this document.
+<span class="lineNum"> 342 </span> : *
+<span class="lineNum"> 343 </span> : * This method may return 0 even though there are other documents with
+<span class="lineNum"> 344 </span> : * the same collapse key which satisfying the match criteria. However
+<span class="lineNum"> 345 </span> : * if this method returns non-zero, there definitely are other such
+<span class="lineNum"> 346 </span> : * documents. So this method may be used to inform the user that
+<span class="lineNum"> 347 </span> : * there are &quot;at least N other matches in this group&quot;, or to control
+<span class="lineNum"> 348 </span> : * whether to offer a &quot;show other documents in this group&quot; feature
+<span class="lineNum"> 349 </span> : * (but note that it may not offer it in every case where it would
+<span class="lineNum"> 350 </span> : * show other documents).
+<span class="lineNum"> 351 </span> : */
+<span class="lineNum"> 352 </span> : Xapian::doccount get_collapse_count() const;
+<span class="lineNum"> 353 </span> :
+<span class="lineNum"> 354 </span> : /** This returns the weight of the document as a percentage score.
+<span class="lineNum"> 355 </span> : *
+<span class="lineNum"> 356 </span> : * The return value will be in the range 0 to 100: 0 meaning
+<span class="lineNum"> 357 </span> : * that the item did not match the query at all.
+<span class="lineNum"> 358 </span> : */
+<span class="lineNum"> 359 </span> : Xapian::percent get_percent() const;
+<span class="lineNum"> 360 </span> :
+<span class="lineNum"> 361 </span> : /// Return a string describing this object.
+<span class="lineNum"> 362 </span> : std::string get_description() const;
+<span class="lineNum"> 363 </span> :
+<span class="lineNum"> 364 </span> : /// Allow use as an STL iterator
+<span class="lineNum"> 365 </span> : //@{
+<span class="lineNum"> 366 </span> : typedef std::bidirectional_iterator_tag iterator_category; // FIXME: could enhance to be a randomaccess_iterator
+<span class="lineNum"> 367 </span> : typedef Xapian::docid value_type;
+<span class="lineNum"> 368 </span> : typedef Xapian::doccount_diff difference_type;
+<span class="lineNum"> 369 </span> : typedef Xapian::docid * pointer;
+<span class="lineNum"> 370 </span> : typedef Xapian::docid &amp; reference;
+<span class="lineNum"> 371 </span> : //@}
+<span class="lineNum"> 372 </span> : };
+<span class="lineNum"> 373 </span> :
+<span class="lineNum"> 374 </span><span class="lineCov"> 30 : inline bool operator==(const MSetIterator &amp;a, const MSetIterator &amp;b)</span>
+<span class="lineNum"> 375 </span> : {
+<span class="lineNum"> 376 </span><span class="lineCov"> 30 : return (a.index == b.index);</span>
+<span class="lineNum"> 377 </span> : }
+<span class="lineNum"> 378 </span> :
+<span class="lineNum"> 379 </span><span class="lineCov"> 58 : inline bool operator!=(const MSetIterator &amp;a, const MSetIterator &amp;b)</span>
+<span class="lineNum"> 380 </span> : {
+<span class="lineNum"> 381 </span><span class="lineCov"> 58 : return (a.index != b.index);</span>
+<span class="lineNum"> 382 </span> : }
+<span class="lineNum"> 383 </span> :
+<span class="lineNum"> 384 </span> : class ESetIterator;
+<span class="lineNum"> 385 </span> :
+<span class="lineNum"> 386 </span> : /** Class representing an ordered set of expand terms (an ESet).
+<span class="lineNum"> 387 </span> : * This set represents the results of an expand operation, which is
+<span class="lineNum"> 388 </span> : * performed by Xapian::Enquire::get_eset().
+<span class="lineNum"> 389 </span> : */
+<span class="lineNum"> 390 </span> : class XAPIAN_VISIBILITY_DEFAULT ESet {
+<span class="lineNum"> 391 </span> : public:
+<span class="lineNum"> 392 </span> : class Internal;
+<span class="lineNum"> 393 </span> : /// @internal Reference counted internals.
+<span class="lineNum"> 394 </span> : Xapian::Internal::RefCntPtr&lt;Internal&gt; internal;
+<span class="lineNum"> 395 </span> :
+<span class="lineNum"> 396 </span> : /// Construct an empty ESet
+<span class="lineNum"> 397 </span> : ESet();
+<span class="lineNum"> 398 </span> :
+<span class="lineNum"> 399 </span> : /// Destructor.
+<span class="lineNum"> 400 </span> : ~ESet();
+<span class="lineNum"> 401 </span> :
+<span class="lineNum"> 402 </span> : /// Copying is allowed (and is cheap).
+<span class="lineNum"> 403 </span> : ESet(const ESet &amp; other);
+<span class="lineNum"> 404 </span> :
+<span class="lineNum"> 405 </span> : /// Assignment is allowed (and is cheap).
+<span class="lineNum"> 406 </span> : void operator=(const ESet &amp;other);
+<span class="lineNum"> 407 </span> :
+<span class="lineNum"> 408 </span> : /** A lower bound on the number of terms which are in the full
+<span class="lineNum"> 409 </span> : * set of results of the expand. This will be greater than or
+<span class="lineNum"> 410 </span> : * equal to size()
+<span class="lineNum"> 411 </span> : */
+<span class="lineNum"> 412 </span> : Xapian::termcount get_ebound() const;
+<span class="lineNum"> 413 </span> :
+<span class="lineNum"> 414 </span> : /** The number of terms in this E-Set */
+<span class="lineNum"> 415 </span> : Xapian::termcount size() const;
+<span class="lineNum"> 416 </span> :
+<span class="lineNum"> 417 </span> : /** Required to allow use as an STL container. */
+<span class="lineNum"> 418 </span> : Xapian::termcount max_size() const { return size(); }
+<span class="lineNum"> 419 </span> :
+<span class="lineNum"> 420 </span> : /** Test if this E-Set is empty */
+<span class="lineNum"> 421 </span> : bool empty() const;
+<span class="lineNum"> 422 </span> :
+<span class="lineNum"> 423 </span> : /** Swap the E-Set we point to with another */
+<span class="lineNum"> 424 </span> : void swap(ESet &amp; other);
+<span class="lineNum"> 425 </span> :
+<span class="lineNum"> 426 </span> : /** Iterator for the terms in this E-Set */
+<span class="lineNum"> 427 </span> : ESetIterator begin() const;
+<span class="lineNum"> 428 </span> :
+<span class="lineNum"> 429 </span> : /** End iterator corresponding to begin() */
+<span class="lineNum"> 430 </span> : ESetIterator end() const;
+<span class="lineNum"> 431 </span> :
+<span class="lineNum"> 432 </span> : /** Iterator pointing to the last element of this E-Set */
+<span class="lineNum"> 433 </span> : ESetIterator back() const;
+<span class="lineNum"> 434 </span> :
+<span class="lineNum"> 435 </span> : /** This returns the term at position i in this E-Set. */
+<span class="lineNum"> 436 </span> : ESetIterator operator[](Xapian::termcount i) const;
+<span class="lineNum"> 437 </span> :
+<span class="lineNum"> 438 </span> : /// Return a string describing this object.
+<span class="lineNum"> 439 </span> : std::string get_description() const;
+<span class="lineNum"> 440 </span> : };
+<span class="lineNum"> 441 </span> :
+<span class="lineNum"> 442 </span> : /** Iterate through terms in the ESet */
+<span class="lineNum"> 443 </span> : class XAPIAN_VISIBILITY_DEFAULT ESetIterator {
+<span class="lineNum"> 444 </span> : private:
+<span class="lineNum"> 445 </span> : friend class ESet;
+<span class="lineNum"> 446 </span> : friend bool operator==(const ESetIterator &amp;a, const ESetIterator &amp;b);
+<span class="lineNum"> 447 </span> : friend bool operator!=(const ESetIterator &amp;a, const ESetIterator &amp;b);
+<span class="lineNum"> 448 </span> :
+<span class="lineNum"> 449 </span> : ESetIterator(Xapian::termcount index_, const ESet &amp; eset_)
+<span class="lineNum"> 450 </span> : : index(index_), eset(eset_) { }
+<span class="lineNum"> 451 </span> :
+<span class="lineNum"> 452 </span> : Xapian::termcount index;
+<span class="lineNum"> 453 </span> : ESet eset;
+<span class="lineNum"> 454 </span> :
+<span class="lineNum"> 455 </span> : public:
+<span class="lineNum"> 456 </span> : /** Create an uninitialised iterator; this cannot be used, but is
+<span class="lineNum"> 457 </span> : * convenient syntactically.
+<span class="lineNum"> 458 </span> : */
+<span class="lineNum"> 459 </span> : ESetIterator() : index(0), eset() { }
+<span class="lineNum"> 460 </span> :
+<span class="lineNum"> 461 </span><span class="lineCov"> 8 : ~ESetIterator() { }</span>
+<span class="lineNum"> 462 </span> :
+<span class="lineNum"> 463 </span> : /// Copying is allowed (and is cheap).
+<span class="lineNum"> 464 </span> : ESetIterator(const ESetIterator &amp;other) {
+<span class="lineNum"> 465 </span> : index = other.index;
+<span class="lineNum"> 466 </span> : eset = other.eset;
+<span class="lineNum"> 467 </span> : }
+<span class="lineNum"> 468 </span> :
+<span class="lineNum"> 469 </span> : /// Assignment is allowed (and is cheap).
+<span class="lineNum"> 470 </span> : void operator=(const ESetIterator &amp;other) {
+<span class="lineNum"> 471 </span> : index = other.index;
+<span class="lineNum"> 472 </span> : eset = other.eset;
+<span class="lineNum"> 473 </span> : }
+<span class="lineNum"> 474 </span> :
+<span class="lineNum"> 475 </span> : /// Advance the iterator.
+<span class="lineNum"> 476 </span><span class="lineNoCov"> 0 : ESetIterator &amp; operator++() {</span>
+<span class="lineNum"> 477 </span><span class="lineNoCov"> 0 : ++index;</span>
+<span class="lineNum"> 478 </span><span class="lineNoCov"> 0 : return *this;</span>
+<span class="lineNum"> 479 </span> : }
+<span class="lineNum"> 480 </span> :
+<span class="lineNum"> 481 </span> : /// Advance the iterator (postfix variant).
+<span class="lineNum"> 482 </span> : ESetIterator operator++(int) {
+<span class="lineNum"> 483 </span> : ESetIterator tmp = *this;
+<span class="lineNum"> 484 </span> : ++index;
+<span class="lineNum"> 485 </span> : return tmp;
+<span class="lineNum"> 486 </span> : }
+<span class="lineNum"> 487 </span> :
+<span class="lineNum"> 488 </span> : /// Decrement the iterator.
+<span class="lineNum"> 489 </span> : ESetIterator &amp; operator--() {
+<span class="lineNum"> 490 </span> : --index;
+<span class="lineNum"> 491 </span> : return *this;
+<span class="lineNum"> 492 </span> : }
+<span class="lineNum"> 493 </span> :
+<span class="lineNum"> 494 </span> : /// Decrement the iterator (postfix variant).
+<span class="lineNum"> 495 </span> : ESetIterator operator--(int) {
+<span class="lineNum"> 496 </span> : ESetIterator tmp = *this;
+<span class="lineNum"> 497 </span> : --index;
+<span class="lineNum"> 498 </span> : return tmp;
+<span class="lineNum"> 499 </span> : }
+<span class="lineNum"> 500 </span> :
+<span class="lineNum"> 501 </span> : /// Get the term for the current position
+<span class="lineNum"> 502 </span> : const std::string &amp; operator *() const;
+<span class="lineNum"> 503 </span> :
+<span class="lineNum"> 504 </span> : /// Get the weight of the term at the current position
+<span class="lineNum"> 505 </span> : Xapian::weight get_weight() const;
+<span class="lineNum"> 506 </span> :
+<span class="lineNum"> 507 </span> : /// Return a string describing this object.
+<span class="lineNum"> 508 </span> : std::string get_description() const;
+<span class="lineNum"> 509 </span> :
+<span class="lineNum"> 510 </span> : /// Allow use as an STL iterator
+<span class="lineNum"> 511 </span> : //@{
+<span class="lineNum"> 512 </span> : typedef std::bidirectional_iterator_tag iterator_category; // FIXME: go for randomaccess_iterator!
+<span class="lineNum"> 513 </span> : typedef std::string value_type;
+<span class="lineNum"> 514 </span> : typedef Xapian::termcount_diff difference_type;
+<span class="lineNum"> 515 </span> : typedef std::string * pointer;
+<span class="lineNum"> 516 </span> : typedef std::string &amp; reference;
+<span class="lineNum"> 517 </span> : //@}
+<span class="lineNum"> 518 </span> : };
+<span class="lineNum"> 519 </span> :
+<span class="lineNum"> 520 </span> : inline bool operator==(const ESetIterator &amp;a, const ESetIterator &amp;b)
+<span class="lineNum"> 521 </span> : {
+<span class="lineNum"> 522 </span> : return (a.index == b.index);
+<span class="lineNum"> 523 </span> : }
+<span class="lineNum"> 524 </span> :
+<span class="lineNum"> 525 </span><span class="lineCov"> 4 : inline bool operator!=(const ESetIterator &amp;a, const ESetIterator &amp;b)</span>
+<span class="lineNum"> 526 </span> : {
+<span class="lineNum"> 527 </span><span class="lineCov"> 4 : return (a.index != b.index);</span>
+<span class="lineNum"> 528 </span> : }
+<span class="lineNum"> 529 </span> :
+<span class="lineNum"> 530 </span> : /** A relevance set (R-Set).
+<span class="lineNum"> 531 </span> : * This is the set of documents which are marked as relevant, for use
+<span class="lineNum"> 532 </span> : * in modifying the term weights, and in performing query expansion.
+<span class="lineNum"> 533 </span> : */
+<span class="lineNum"> 534 </span> : class XAPIAN_VISIBILITY_DEFAULT RSet {
+<span class="lineNum"> 535 </span> : public:
+<span class="lineNum"> 536 </span> : /// Class holding details of RSet
+<span class="lineNum"> 537 </span> : class Internal;
+<span class="lineNum"> 538 </span> :
+<span class="lineNum"> 539 </span> : /// @internal Reference counted internals.
+<span class="lineNum"> 540 </span> : Xapian::Internal::RefCntPtr&lt;Internal&gt; internal;
+<span class="lineNum"> 541 </span> :
+<span class="lineNum"> 542 </span> : /// Copy constructor
+<span class="lineNum"> 543 </span> : RSet(const RSet &amp;rset);
+<span class="lineNum"> 544 </span> :
+<span class="lineNum"> 545 </span> : /// Assignment operator
+<span class="lineNum"> 546 </span> : void operator=(const RSet &amp;rset);
+<span class="lineNum"> 547 </span> :
+<span class="lineNum"> 548 </span> : /// Default constructor
+<span class="lineNum"> 549 </span> : RSet();
+<span class="lineNum"> 550 </span> :
+<span class="lineNum"> 551 </span> : /// Destructor
+<span class="lineNum"> 552 </span> : ~RSet();
+<span class="lineNum"> 553 </span> :
+<span class="lineNum"> 554 </span> : /** The number of documents in this R-Set */
+<span class="lineNum"> 555 </span> : Xapian::doccount size() const;
+<span class="lineNum"> 556 </span> :
+<span class="lineNum"> 557 </span> : /** Test if this R-Set is empty */
+<span class="lineNum"> 558 </span> : bool empty() const;
+<span class="lineNum"> 559 </span> :
+<span class="lineNum"> 560 </span> : /// Add a document to the relevance set.
+<span class="lineNum"> 561 </span> : void add_document(Xapian::docid did);
+<span class="lineNum"> 562 </span> :
+<span class="lineNum"> 563 </span> : /// Add a document to the relevance set.
+<span class="lineNum"> 564 </span><span class="lineCov"> 20 : void add_document(const Xapian::MSetIterator &amp; i) { add_document(*i); }</span>
+<span class="lineNum"> 565 </span> :
+<span class="lineNum"> 566 </span> : /// Remove a document from the relevance set.
+<span class="lineNum"> 567 </span> : void remove_document(Xapian::docid did);
+<span class="lineNum"> 568 </span> :
+<span class="lineNum"> 569 </span> : /// Remove a document from the relevance set.
+<span class="lineNum"> 570 </span> : void remove_document(const Xapian::MSetIterator &amp; i) { remove_document(*i); }
+<span class="lineNum"> 571 </span> :
+<span class="lineNum"> 572 </span> : /// Test if a given document in the relevance set.
+<span class="lineNum"> 573 </span> : bool contains(Xapian::docid did) const;
+<span class="lineNum"> 574 </span> :
+<span class="lineNum"> 575 </span> : /// Test if a given document in the relevance set.
+<span class="lineNum"> 576 </span> : bool contains(const Xapian::MSetIterator &amp; i) const { return contains(*i); }
+<span class="lineNum"> 577 </span> :
+<span class="lineNum"> 578 </span> : /// Return a string describing this object.
+<span class="lineNum"> 579 </span> : std::string get_description() const;
+<span class="lineNum"> 580 </span> : };
+<span class="lineNum"> 581 </span> :
+<span class="lineNum"> 582 </span> : /** Base class for matcher decision functor.
+<span class="lineNum"> 583 </span> : */
+<span class="lineNum"> 584 </span> : class XAPIAN_VISIBILITY_DEFAULT MatchDecider {
+<span class="lineNum"> 585 </span> : public:
+<span class="lineNum"> 586 </span> : /** Decide whether we want this document to be in the MSet.
+<span class="lineNum"> 587 </span> : *
+<span class="lineNum"> 588 </span> : * Return true if the document is acceptable, or false if the document
+<span class="lineNum"> 589 </span> : * should be excluded from the MSet.
+<span class="lineNum"> 590 </span> : */
+<span class="lineNum"> 591 </span> : virtual bool operator()(const Xapian::Document &amp;doc) const = 0;
+<span class="lineNum"> 592 </span> :
+<span class="lineNum"> 593 </span> : /// Destructor.
+<span class="lineNum"> 594 </span> : virtual ~MatchDecider();
+<span class="lineNum"> 595 </span> : };
+<span class="lineNum"> 596 </span> :
+<span class="lineNum"> 597 </span> : /** This class provides an interface to the information retrieval
+<span class="lineNum"> 598 </span> : * system for the purpose of searching.
+<span class="lineNum"> 599 </span> : *
+<span class="lineNum"> 600 </span> : * Databases are usually opened lazily, so exceptions may not be
+<span class="lineNum"> 601 </span> : * thrown where you would expect them to be. You should catch
+<span class="lineNum"> 602 </span> : * Xapian::Error exceptions when calling any method in Xapian::Enquire.
+<span class="lineNum"> 603 </span> : *
+<span class="lineNum"> 604 </span> : * @exception Xapian::InvalidArgumentError will be thrown if an invalid
+<span class="lineNum"> 605 </span> : * argument is supplied, for example, an unknown database type.
+<span class="lineNum"> 606 </span> : */
+<span class="lineNum"> 607 </span> : class XAPIAN_VISIBILITY_DEFAULT Enquire {
+<span class="lineNum"> 608 </span> : public:
+<span class="lineNum"> 609 </span> : /// Copying is allowed (and is cheap).
+<span class="lineNum"> 610 </span> : Enquire(const Enquire &amp; other);
+<span class="lineNum"> 611 </span> :
+<span class="lineNum"> 612 </span> : /// Assignment is allowed (and is cheap).
+<span class="lineNum"> 613 </span> : void operator=(const Enquire &amp; other);
+<span class="lineNum"> 614 </span> :
+<span class="lineNum"> 615 </span> : class Internal;
+<span class="lineNum"> 616 </span> : /// @internal Reference counted internals.
+<span class="lineNum"> 617 </span> : Xapian::Internal::RefCntPtr&lt;Internal&gt; internal;
+<span class="lineNum"> 618 </span> :
+<span class="lineNum"> 619 </span> : /** Create a Xapian::Enquire object.
+<span class="lineNum"> 620 </span> : *
+<span class="lineNum"> 621 </span> : * This specification cannot be changed once the Xapian::Enquire is
+<span class="lineNum"> 622 </span> : * opened: you must create a new Xapian::Enquire object to access a
+<span class="lineNum"> 623 </span> : * different database, or set of databases.
+<span class="lineNum"> 624 </span> : *
+<span class="lineNum"> 625 </span> : * The database supplied must have been initialised (ie, must not be
+<span class="lineNum"> 626 </span> : * the result of calling the Database::Database() constructor). If
+<span class="lineNum"> 627 </span> : * you need to handle a situation where you have no index gracefully,
+<span class="lineNum"> 628 </span> : * a database created with InMemory::open() can be passed here,
+<span class="lineNum"> 629 </span> : * which represents a completely empty database.
+<span class="lineNum"> 630 </span> : *
+<span class="lineNum"> 631 </span> : * @param database Specification of the database or databases to
+<span class="lineNum"> 632 </span> : * use.
+<span class="lineNum"> 633 </span> : * @param errorhandler_ A pointer to the error handler to use.
+<span class="lineNum"> 634 </span> : * Ownership of the object pointed to is not assumed by the
+<span class="lineNum"> 635 </span> : * Xapian::Enquire object - the user should delete the
+<span class="lineNum"> 636 </span> : * Xapian::ErrorHandler object after the Xapian::Enquire object
+<span class="lineNum"> 637 </span> : * is deleted. To use no error handler, this parameter
+<span class="lineNum"> 638 </span> : * should be 0.
+<span class="lineNum"> 639 </span> : *
+<span class="lineNum"> 640 </span> : * @exception Xapian::InvalidArgumentError will be thrown if an
+<span class="lineNum"> 641 </span> : * initialised Database object is supplied.
+<span class="lineNum"> 642 </span> : */
+<span class="lineNum"> 643 </span> : explicit Enquire(const Database &amp;database, ErrorHandler * errorhandler_ = 0);
+<span class="lineNum"> 644 </span> :
+<span class="lineNum"> 645 </span> : /** Close the Xapian::Enquire object.
+<span class="lineNum"> 646 </span> : */
+<span class="lineNum"> 647 </span> : ~Enquire();
+<span class="lineNum"> 648 </span> :
+<span class="lineNum"> 649 </span> : /** Set the query to run.
+<span class="lineNum"> 650 </span> : *
+<span class="lineNum"> 651 </span> : * @param query the new query to run.
+<span class="lineNum"> 652 </span> : * @param qlen the query length to use in weight calculations -
+<span class="lineNum"> 653 </span> : * by default the sum of the wqf of all terms is used.
+<span class="lineNum"> 654 </span> : */
+<span class="lineNum"> 655 </span> : void set_query(const Xapian::Query &amp; query, Xapian::termcount qlen = 0);
+<span class="lineNum"> 656 </span> :
+<span class="lineNum"> 657 </span> : /** Get the query which has been set.
+<span class="lineNum"> 658 </span> : * This is only valid after set_query() has been called.
+<span class="lineNum"> 659 </span> : *
+<span class="lineNum"> 660 </span> : * @exception Xapian::InvalidArgumentError will be thrown if query has
+<span class="lineNum"> 661 </span> : * not yet been set.
+<span class="lineNum"> 662 </span> : */
+<span class="lineNum"> 663 </span> : const Xapian::Query &amp; get_query() const;
+<span class="lineNum"> 664 </span> :
+<span class="lineNum"> 665 </span> : /** Set the weighting scheme to use for queries.
+<span class="lineNum"> 666 </span> : *
+<span class="lineNum"> 667 </span> : * @param weight_ the new weighting scheme. If no weighting scheme
+<span class="lineNum"> 668 </span> : * is specified, the default is BM25 with the
+<span class="lineNum"> 669 </span> : * default parameters.
+<span class="lineNum"> 670 </span> : */
+<span class="lineNum"> 671 </span> : void set_weighting_scheme(const Weight &amp;weight_);
+<span class="lineNum"> 672 </span> :
+<span class="lineNum"> 673 </span> : /** Set the collapse key to use for queries.
+<span class="lineNum"> 674 </span> : *
+<span class="lineNum"> 675 </span> : * @param collapse_key value number to collapse on - at most one MSet
+<span class="lineNum"> 676 </span> : * entry with each particular value will be returned.
+<span class="lineNum"> 677 </span> : *
+<span class="lineNum"> 678 </span> : * The entry returned will be the best entry with that particular
+<span class="lineNum"> 679 </span> : * value (highest weight or highest sorting key).
+<span class="lineNum"> 680 </span> : *
+<span class="lineNum"> 681 </span> : * An example use might be to create a value for each document
+<span class="lineNum"> 682 </span> : * containing an MD5 hash of the document contents. Then
+<span class="lineNum"> 683 </span> : * duplicate documents from different sources can be eliminated at
+<span class="lineNum"> 684 </span> : * search time (it's better to eliminate duplicates at index time,
+<span class="lineNum"> 685 </span> : * but this may not be always be possible - for example the search
+<span class="lineNum"> 686 </span> : * may be over more than one Xapian database).
+<span class="lineNum"> 687 </span> : *
+<span class="lineNum"> 688 </span> : * Another use is to group matches in a particular category (e.g.
+<span class="lineNum"> 689 </span> : * you might collapse a mailing list search on the Subject: so
+<span class="lineNum"> 690 </span> : * that there's only one result per discussion thread). In this
+<span class="lineNum"> 691 </span> : * case you can use get_collapse_count() to give the user some
+<span class="lineNum"> 692 </span> : * idea how many other results there are. And if you index the
+<span class="lineNum"> 693 </span> : * Subject: as a boolean term as well as putting it in a value,
+<span class="lineNum"> 694 </span> : * you can offer a link to a non-collapsed search restricted to
+<span class="lineNum"> 695 </span> : * that thread using a boolean filter.
+<span class="lineNum"> 696 </span> : *
+<span class="lineNum"> 697 </span> : * (default is Xapian::BAD_VALUENO which means no collapsing).
+<span class="lineNum"> 698 </span> : */
+<span class="lineNum"> 699 </span> : void set_collapse_key(Xapian::valueno collapse_key);
+<span class="lineNum"> 700 </span> :
+<span class="lineNum"> 701 </span> : typedef enum {
+<span class="lineNum"> 702 </span> : ASCENDING = 1,
+<span class="lineNum"> 703 </span> : DESCENDING = 0,
+<span class="lineNum"> 704 </span> : DONT_CARE = 2
+<span class="lineNum"> 705 </span> : } docid_order;
+<span class="lineNum"> 706 </span> :
+<span class="lineNum"> 707 </span> : /** Set the direction in which documents are ordered by document id
+<span class="lineNum"> 708 </span> : * in the returned MSet.
+<span class="lineNum"> 709 </span> : *
+<span class="lineNum"> 710 </span> : * This order only has an effect on documents which would otherwise
+<span class="lineNum"> 711 </span> : * have equal rank. For a weighted probabilistic match with no sort
+<span class="lineNum"> 712 </span> : * value, this means documents with equal weight. For a boolean match,
+<span class="lineNum"> 713 </span> : * with no sort value, this means all documents. And if a sort value
+<span class="lineNum"> 714 </span> : * is used, this means documents with equal sort value (and also equal
+<span class="lineNum"> 715 </span> : * weight if ordering on relevance after the sort).
+<span class="lineNum"> 716 </span> : *
+<span class="lineNum"> 717 </span> : * @param order This can be:
+<span class="lineNum"> 718 </span> : * - Xapian::Enquire::ASCENDING
+<span class="lineNum"> 719 </span> : * docids sort in ascending order (default)
+<span class="lineNum"> 720 </span> : * - Xapian::Enquire::DESCENDING
+<span class="lineNum"> 721 </span> : * docids sort in descending order
+<span class="lineNum"> 722 </span> : * - Xapian::Enquire::DONT_CARE
+<span class="lineNum"> 723 </span> : * docids sort in whatever order is most efficient for the backend
+<span class="lineNum"> 724 </span> : *
+<span class="lineNum"> 725 </span> : * Note: If you add documents in strict date order, then a boolean
+<span class="lineNum"> 726 </span> : * search - i.e. set_weighting_scheme(Xapian::BoolWeight()) - with
+<span class="lineNum"> 727 </span> : * set_docid_order(Xapian::Enquire::DESCENDING) is a very efficient
+<span class="lineNum"> 728 </span> : * way to perform &quot;sort by date, newest first&quot;.
+<span class="lineNum"> 729 </span> : */
+<span class="lineNum"> 730 </span> : void set_docid_order(docid_order order);
+<span class="lineNum"> 731 </span> :
+<span class="lineNum"> 732 </span> : /** Set the percentage and/or weight cutoffs.
+<span class="lineNum"> 733 </span> : *
+<span class="lineNum"> 734 </span> : * @param percent_cutoff Minimum percentage score for returned
+<span class="lineNum"> 735 </span> : * documents. If a document has a lower percentage score than this,
+<span class="lineNum"> 736 </span> : * it will not appear in the MSet. If your intention is to return
+<span class="lineNum"> 737 </span> : * only matches which contain all the terms in the query, then
+<span class="lineNum"> 738 </span> : * it's more efficient to use Xapian::Query::OP_AND instead of
+<span class="lineNum"> 739 </span> : * Xapian::Query::OP_OR in the query than to use set_cutoff(100).
+<span class="lineNum"> 740 </span> : * (default 0 =&gt; no percentage cut-off).
+<span class="lineNum"> 741 </span> : * @param weight_cutoff Minimum weight for a document to be returned.
+<span class="lineNum"> 742 </span> : * If a document has a lower score that this, it will not appear
+<span class="lineNum"> 743 </span> : * in the MSet. It is usually only possible to choose an
+<span class="lineNum"> 744 </span> : * appropriate weight for cutoff based on the results of a
+<span class="lineNum"> 745 </span> : * previous run of the same query; this is thus mainly useful for
+<span class="lineNum"> 746 </span> : * alerting operations. The other potential use is with a user
+<span class="lineNum"> 747 </span> : * specified weighting scheme.
+<span class="lineNum"> 748 </span> : * (default 0 =&gt; no weight cut-off).
+<span class="lineNum"> 749 </span> : */
+<span class="lineNum"> 750 </span> : void set_cutoff(Xapian::percent percent_cutoff, Xapian::weight weight_cutoff = 0);
+<span class="lineNum"> 751 </span> :
+<span class="lineNum"> 752 </span> : /** Set the sorting to be by relevance only.
+<span class="lineNum"> 753 </span> : *
+<span class="lineNum"> 754 </span> : * This is the default.
+<span class="lineNum"> 755 </span> : */
+<span class="lineNum"> 756 </span> : void set_sort_by_relevance();
+<span class="lineNum"> 757 </span> :
+<span class="lineNum"> 758 </span> : /** Set the sorting to be by value only.
+<span class="lineNum"> 759 </span> : *
+<span class="lineNum"> 760 </span> : * NB sorting of values uses a string comparison, so you'll need to
+<span class="lineNum"> 761 </span> : * store numbers padded with leading zeros or spaces, or with the
+<span class="lineNum"> 762 </span> : * number of digits prepended.
+<span class="lineNum"> 763 </span> : *
+<span class="lineNum"> 764 </span> : * @param sort_key value number to sort on.
+<span class="lineNum"> 765 </span> : *
+<span class="lineNum"> 766 </span> : * @param ascending If true, documents values which sort higher by
+<span class="lineNum"> 767 </span> : * string compare are better. If false, the sort order
+<span class="lineNum"> 768 </span> : * is reversed. (default true)
+<span class="lineNum"> 769 </span> : */
+<span class="lineNum"> 770 </span> : void set_sort_by_value(Xapian::valueno sort_key, bool ascending = true);
+<span class="lineNum"> 771 </span> :
+<span class="lineNum"> 772 </span> : /** Set the sorting to be by key generated from values only.
+<span class="lineNum"> 773 </span> : *
+<span class="lineNum"> 774 </span> : * @param sorter The functor to use for generating keys.
+<span class="lineNum"> 775 </span> : *
+<span class="lineNum"> 776 </span> : * @param ascending If true, documents values which sort higher by
+<span class="lineNum"> 777 </span> : * string compare are better. If false, the sort order
+<span class="lineNum"> 778 </span> : * is reversed. (default true)
+<span class="lineNum"> 779 </span> : */
+<span class="lineNum"> 780 </span> : void set_sort_by_key(Xapian::Sorter * sorter, bool ascending = true);
+<span class="lineNum"> 781 </span> :
+<span class="lineNum"> 782 </span> : /** Set the sorting to be by value, then by relevance for documents
+<span class="lineNum"> 783 </span> : * with the same value.
+<span class="lineNum"> 784 </span> : *
+<span class="lineNum"> 785 </span> : * NB sorting of values uses a string comparison, so you'll need to
+<span class="lineNum"> 786 </span> : * store numbers padded with leading zeros or spaces, or with the
+<span class="lineNum"> 787 </span> : * number of digits prepended.
+<span class="lineNum"> 788 </span> : *
+<span class="lineNum"> 789 </span> : * @param sort_key value number to sort on.
+<span class="lineNum"> 790 </span> : *
+<span class="lineNum"> 791 </span> : * @param ascending If true, documents values which sort higher by
+<span class="lineNum"> 792 </span> : * string compare are better. If false, the sort order
+<span class="lineNum"> 793 </span> : * is reversed. (default true)
+<span class="lineNum"> 794 </span> : */
+<span class="lineNum"> 795 </span> : void set_sort_by_value_then_relevance(Xapian::valueno sort_key,
+<span class="lineNum"> 796 </span> : bool ascending = true);
+<span class="lineNum"> 797 </span> :
+<span class="lineNum"> 798 </span> : /** Set the sorting to be by keys generated from values, then by
+<span class="lineNum"> 799 </span> : * relevance for documents with identical keys.
+<span class="lineNum"> 800 </span> : *
+<span class="lineNum"> 801 </span> : * @param sorter The functor to use for generating keys.
+<span class="lineNum"> 802 </span> : *
+<span class="lineNum"> 803 </span> : * @param ascending If true, keys which sort higher by
+<span class="lineNum"> 804 </span> : * string compare are better. If false, the sort order
+<span class="lineNum"> 805 </span> : * is reversed. (default true)
+<span class="lineNum"> 806 </span> : */
+<span class="lineNum"> 807 </span> : void set_sort_by_key_then_relevance(Xapian::Sorter * sorter,
+<span class="lineNum"> 808 </span> : bool ascending = true);
+<span class="lineNum"> 809 </span> :
+<span class="lineNum"> 810 </span> : /** Set the sorting to be by relevance then value.
+<span class="lineNum"> 811 </span> : *
+<span class="lineNum"> 812 </span> : * NB sorting of values uses a string comparison, so you'll need to
+<span class="lineNum"> 813 </span> : * store numbers padded with leading zeros or spaces, or with the
+<span class="lineNum"> 814 </span> : * number of digits prepended.
+<span class="lineNum"> 815 </span> : *
+<span class="lineNum"> 816 </span> : * Note that with the default BM25 weighting scheme parameters,
+<span class="lineNum"> 817 </span> : * non-identical documents will rarely have the same weight, so
+<span class="lineNum"> 818 </span> : * this setting will give very similar results to
+<span class="lineNum"> 819 </span> : * set_sort_by_relevance(). It becomes more useful with particular
+<span class="lineNum"> 820 </span> : * BM25 parameter settings (e.g. BM25Weight(1,0,1,0,0)) or custom
+<span class="lineNum"> 821 </span> : * weighting schemes.
+<span class="lineNum"> 822 </span> : *
+<span class="lineNum"> 823 </span> : * @param sort_key value number to sort on.
+<span class="lineNum"> 824 </span> : *
+<span class="lineNum"> 825 </span> : * @param ascending If true, documents values which sort higher by
+<span class="lineNum"> 826 </span> : * string compare are better. If false, the sort order
+<span class="lineNum"> 827 </span> : * is reversed. (default true)
+<span class="lineNum"> 828 </span> : */
+<span class="lineNum"> 829 </span> : void set_sort_by_relevance_then_value(Xapian::valueno sort_key,
+<span class="lineNum"> 830 </span> : bool ascending = true);
+<span class="lineNum"> 831 </span> :
+<span class="lineNum"> 832 </span> : /** Set the sorting to be by relevance, then by keys generated from
+<span class="lineNum"> 833 </span> : * values.
+<span class="lineNum"> 834 </span> : *
+<span class="lineNum"> 835 </span> : * Note that with the default BM25 weighting scheme parameters,
+<span class="lineNum"> 836 </span> : * non-identical documents will rarely have the same weight, so
+<span class="lineNum"> 837 </span> : * this setting will give very similar results to
+<span class="lineNum"> 838 </span> : * set_sort_by_relevance(). It becomes more useful with particular
+<span class="lineNum"> 839 </span> : * BM25 parameter settings (e.g. BM25Weight(1,0,1,0,0)) or custom
+<span class="lineNum"> 840 </span> : * weighting schemes.
+<span class="lineNum"> 841 </span> : *
+<span class="lineNum"> 842 </span> : * @param sorter The functor to use for generating keys.
+<span class="lineNum"> 843 </span> : *
+<span class="lineNum"> 844 </span> : * @param ascending If true, keys which sort higher by
+<span class="lineNum"> 845 </span> : * string compare are better. If false, the sort order
+<span class="lineNum"> 846 </span> : * is reversed. (default true)
+<span class="lineNum"> 847 </span> : */
+<span class="lineNum"> 848 </span> : void set_sort_by_relevance_then_key(Xapian::Sorter * sorter,
+<span class="lineNum"> 849 </span> : bool ascending = true);
+<span class="lineNum"> 850 </span> :
+<span class="lineNum"> 851 </span> : /** Get (a portion of) the match set for the current query.
+<span class="lineNum"> 852 </span> : *
+<span class="lineNum"> 853 </span> : * @param first the first item in the result set to return.
+<span class="lineNum"> 854 </span> : * A value of zero corresponds to the first item
+<span class="lineNum"> 855 </span> : * returned being that with the highest score.
+<span class="lineNum"> 856 </span> : * A value of 10 corresponds to the first 10 items
+<span class="lineNum"> 857 </span> : * being ignored, and the returned items starting
+<span class="lineNum"> 858 </span> : * at the eleventh.
+<span class="lineNum"> 859 </span> : * @param maxitems the maximum number of items to return.
+<span class="lineNum"> 860 </span> : * @param checkatleast the minimum number of items to check. Because
+<span class="lineNum"> 861 </span> : * the matcher optimises, it won't consider every
+<span class="lineNum"> 862 </span> : * document which might match, so the total number
+<span class="lineNum"> 863 </span> : * of matches is estimated. Setting checkatleast
+<span class="lineNum"> 864 </span> : * forces it to consider at least this many matches
+<span class="lineNum"> 865 </span> : * and so allows for reliable paging links.
+<span class="lineNum"> 866 </span> : * @param omrset the relevance set to use when performing the query.
+<span class="lineNum"> 867 </span> : * @param mdecider a decision functor to use to decide whether a
+<span class="lineNum"> 868 </span> : * given document should be put in the MSet.
+<span class="lineNum"> 869 </span> : * @param matchspy a decision functor to use to decide whether a
+<span class="lineNum"> 870 </span> : * given document should be put in the MSet. The
+<span class="lineNum"> 871 </span> : * matchspy is applied to every document which is
+<span class="lineNum"> 872 </span> : * a potential candidate for the MSet, so if there are
+<span class="lineNum"> 873 </span> : * checkatleast or more such documents, the matchspy
+<span class="lineNum"> 874 </span> : * will see at least checkatleast. The mdecider is
+<span class="lineNum"> 875 </span> : * assumed to be a relatively expensive test so may
+<span class="lineNum"> 876 </span> : * be applied in a lazier fashion.
+<span class="lineNum"> 877 </span> : *
+<span class="lineNum"> 878 </span> : * @return A Xapian::MSet object containing the results of the
+<span class="lineNum"> 879 </span> : * query.
+<span class="lineNum"> 880 </span> : *
+<span class="lineNum"> 881 </span> : * @exception Xapian::InvalidArgumentError See class documentation.
+<span class="lineNum"> 882 </span> : */
+<span class="lineNum"> 883 </span> : MSet get_mset(Xapian::doccount first, Xapian::doccount maxitems,
+<span class="lineNum"> 884 </span> : Xapian::doccount checkatleast = 0,
+<span class="lineNum"> 885 </span> : const RSet * omrset = 0,
+<span class="lineNum"> 886 </span> : const MatchDecider * mdecider = 0) const;
+<span class="lineNum"> 887 </span> : MSet get_mset(Xapian::doccount first, Xapian::doccount maxitems,
+<span class="lineNum"> 888 </span> : Xapian::doccount checkatleast,
+<span class="lineNum"> 889 </span> : const RSet * omrset,
+<span class="lineNum"> 890 </span> : const MatchDecider * mdecider,
+<span class="lineNum"> 891 </span> : const MatchDecider * matchspy) const;
+<span class="lineNum"> 892 </span> : MSet get_mset(Xapian::doccount first, Xapian::doccount maxitems,
+<span class="lineNum"> 893 </span> : const RSet * omrset,
+<span class="lineNum"> 894 </span> : const MatchDecider * mdecider = 0) const {
+<span class="lineNum"> 895 </span> : return get_mset(first, maxitems, 0, omrset, mdecider);
+<span class="lineNum"> 896 </span> : }
+<span class="lineNum"> 897 </span> :
+<span class="lineNum"> 898 </span> : static const int INCLUDE_QUERY_TERMS = 1;
+<span class="lineNum"> 899 </span> : static const int USE_EXACT_TERMFREQ = 2;
+<span class="lineNum"> 900 </span> : #ifndef _MSC_VER
+<span class="lineNum"> 901 </span> : /// Deprecated in Xapian 1.0.0, use INCLUDE_QUERY_TERMS instead.
+<span class="lineNum"> 902 </span> : XAPIAN_DEPRECATED(static const int include_query_terms) = 1;
+<span class="lineNum"> 903 </span> : /// Deprecated in Xapian 1.0.0, use USE_EXACT_TERMFREQ instead.
+<span class="lineNum"> 904 </span> : XAPIAN_DEPRECATED(static const int use_exact_termfreq) = 2;
+<span class="lineNum"> 905 </span> : #else
+<span class="lineNum"> 906 </span> : // Work around MSVC stupidity (you get a warning for deprecating a
+<span class="lineNum"> 907 </span> : // declaration).
+<span class="lineNum"> 908 </span> : static const int include_query_terms = 1;
+<span class="lineNum"> 909 </span> : static const int use_exact_termfreq = 2;
+<span class="lineNum"> 910 </span> : #pragma deprecated(&quot;Xapian::Enquire::include_query_terms&quot;, &quot;Xapian::Enquire::use_exact_termfreq&quot;)
+<span class="lineNum"> 911 </span> : #endif
+<span class="lineNum"> 912 </span> :
+<span class="lineNum"> 913 </span> : /** Get the expand set for the given rset.
+<span class="lineNum"> 914 </span> : *
+<span class="lineNum"> 915 </span> : * @param maxitems the maximum number of items to return.
+<span class="lineNum"> 916 </span> : * @param omrset the relevance set to use when performing
+<span class="lineNum"> 917 </span> : * the expand operation.
+<span class="lineNum"> 918 </span> : * @param flags zero or more of these values |-ed together:
+<span class="lineNum"> 919 </span> : * - Xapian::Enquire::INCLUDE_QUERY_TERMS query
+<span class="lineNum"> 920 </span> : * terms may be returned from expand
+<span class="lineNum"> 921 </span> : * - Xapian::Enquire::USE_EXACT_TERMFREQ for multi
+<span class="lineNum"> 922 </span> : * dbs, calculate the exact termfreq; otherwise an
+<span class="lineNum"> 923 </span> : * approximation is used which can greatly improve
+<span class="lineNum"> 924 </span> : * efficiency, but still returns good results.
+<span class="lineNum"> 925 </span> : * @param k the parameter k in the query expansion algorithm
+<span class="lineNum"> 926 </span> : * (default is 1.0)
+<span class="lineNum"> 927 </span> : * @param edecider a decision functor to use to decide whether a
+<span class="lineNum"> 928 </span> : * given term should be put in the ESet
+<span class="lineNum"> 929 </span> : *
+<span class="lineNum"> 930 </span> : * @return An ESet object containing the results of the
+<span class="lineNum"> 931 </span> : * expand.
+<span class="lineNum"> 932 </span> : *
+<span class="lineNum"> 933 </span> : * @exception Xapian::InvalidArgumentError See class documentation.
+<span class="lineNum"> 934 </span> : */
+<span class="lineNum"> 935 </span> : ESet get_eset(Xapian::termcount maxitems,
+<span class="lineNum"> 936 </span> : const RSet &amp; omrset,
+<span class="lineNum"> 937 </span> : int flags = 0,
+<span class="lineNum"> 938 </span> : double k = 1.0,
+<span class="lineNum"> 939 </span> : const Xapian::ExpandDecider * edecider = 0) const;
+<span class="lineNum"> 940 </span> :
+<span class="lineNum"> 941 </span> : /** Get the expand set for the given rset.
+<span class="lineNum"> 942 </span> : *
+<span class="lineNum"> 943 </span> : * @param maxitems the maximum number of items to return.
+<span class="lineNum"> 944 </span> : * @param omrset the relevance set to use when performing
+<span class="lineNum"> 945 </span> : * the expand operation.
+<span class="lineNum"> 946 </span> : * @param edecider a decision functor to use to decide whether a
+<span class="lineNum"> 947 </span> : * given term should be put in the ESet
+<span class="lineNum"> 948 </span> : *
+<span class="lineNum"> 949 </span> : * @return An ESet object containing the results of the
+<span class="lineNum"> 950 </span> : * expand.
+<span class="lineNum"> 951 </span> : *
+<span class="lineNum"> 952 </span> : * @exception Xapian::InvalidArgumentError See class documentation.
+<span class="lineNum"> 953 </span> : */
+<span class="lineNum"> 954 </span> : inline ESet get_eset(Xapian::termcount maxitems, const RSet &amp; omrset,
+<span class="lineNum"> 955 </span><span class="lineCov"> 4 : const Xapian::ExpandDecider * edecider) const {</span>
+<span class="lineNum"> 956 </span><span class="lineCov"> 4 : return get_eset(maxitems, omrset, 0, 1.0, edecider);</span>
+<span class="lineNum"> 957 </span> : }
+<span class="lineNum"> 958 </span> :
+<span class="lineNum"> 959 </span> : /** Get terms which match a given document, by document id.
+<span class="lineNum"> 960 </span> : *
+<span class="lineNum"> 961 </span> : * This method returns the terms in the current query which match
+<span class="lineNum"> 962 </span> : * the given document.
+<span class="lineNum"> 963 </span> : *
+<span class="lineNum"> 964 </span> : * It is possible for the document to have been removed from the
+<span class="lineNum"> 965 </span> : * database between the time it is returned in an MSet, and the
+<span class="lineNum"> 966 </span> : * time that this call is made. If possible, you should specify
+<span class="lineNum"> 967 </span> : * an MSetIterator instead of a Xapian::docid, since this will enable
+<span class="lineNum"> 968 </span> : * database backends with suitable support to prevent this
+<span class="lineNum"> 969 </span> : * occurring.
+<span class="lineNum"> 970 </span> : *
+<span class="lineNum"> 971 </span> : * Note that a query does not need to have been run in order to
+<span class="lineNum"> 972 </span> : * make this call.
+<span class="lineNum"> 973 </span> : *
+<span class="lineNum"> 974 </span> : * @param did The document id for which to retrieve the matching
+<span class="lineNum"> 975 </span> : * terms.
+<span class="lineNum"> 976 </span> : *
+<span class="lineNum"> 977 </span> : * @return An iterator returning the terms which match the
+<span class="lineNum"> 978 </span> : * document. The terms will be returned (as far as this
+<span class="lineNum"> 979 </span> : * makes any sense) in the same order as the terms
+<span class="lineNum"> 980 </span> : * in the query. Terms will not occur more than once,
+<span class="lineNum"> 981 </span> : * even if they do in the query.
+<span class="lineNum"> 982 </span> : *
+<span class="lineNum"> 983 </span> : * @exception Xapian::InvalidArgumentError See class documentation.
+<span class="lineNum"> 984 </span> : * @exception Xapian::DocNotFoundError The document specified
+<span class="lineNum"> 985 </span> : * could not be found in the database.
+<span class="lineNum"> 986 </span> : */
+<span class="lineNum"> 987 </span> : TermIterator get_matching_terms_begin(Xapian::docid did) const;
+<span class="lineNum"> 988 </span> :
+<span class="lineNum"> 989 </span> : /** End iterator corresponding to get_matching_terms_begin() */
+<span class="lineNum"> 990 </span> : TermIterator get_matching_terms_end(Xapian::docid /*did*/) const {
+<span class="lineNum"> 991 </span> : return TermIterator(NULL);
+<span class="lineNum"> 992 </span> : }
+<span class="lineNum"> 993 </span> :
+<span class="lineNum"> 994 </span> : /** Get terms which match a given document, by match set item.
+<span class="lineNum"> 995 </span> : *
+<span class="lineNum"> 996 </span> : * This method returns the terms in the current query which match
+<span class="lineNum"> 997 </span> : * the given document.
+<span class="lineNum"> 998 </span> : *
+<span class="lineNum"> 999 </span> : * If the underlying database has suitable support, using this call
+<span class="lineNum"> 1000 </span> : * (rather than passing a Xapian::docid) will enable the system to
+<span class="lineNum"> 1001 </span> : * ensure that the correct data is returned, and that the document
+<span class="lineNum"> 1002 </span> : * has not been deleted or changed since the query was performed.
+<span class="lineNum"> 1003 </span> : *
+<span class="lineNum"> 1004 </span> : * @param it The iterator for which to retrieve the matching terms.
+<span class="lineNum"> 1005 </span> : *
+<span class="lineNum"> 1006 </span> : * @return An iterator returning the terms which match the
+<span class="lineNum"> 1007 </span> : * document. The terms will be returned (as far as this
+<span class="lineNum"> 1008 </span> : * makes any sense) in the same order as the terms
+<span class="lineNum"> 1009 </span> : * in the query. Terms will not occur more than once,
+<span class="lineNum"> 1010 </span> : * even if they do in the query.
+<span class="lineNum"> 1011 </span> : *
+<span class="lineNum"> 1012 </span> : * @exception Xapian::InvalidArgumentError See class documentation.
+<span class="lineNum"> 1013 </span> : * @exception Xapian::DocNotFoundError The document specified
+<span class="lineNum"> 1014 </span> : * could not be found in the database.
+<span class="lineNum"> 1015 </span> : */
+<span class="lineNum"> 1016 </span> : TermIterator get_matching_terms_begin(const MSetIterator &amp;it) const;
+<span class="lineNum"> 1017 </span> :
+<span class="lineNum"> 1018 </span> : /** End iterator corresponding to get_matching_terms_begin() */
+<span class="lineNum"> 1019 </span> : TermIterator get_matching_terms_end(const MSetIterator &amp;/*it*/) const {
+<span class="lineNum"> 1020 </span> : return TermIterator(NULL);
+<span class="lineNum"> 1021 </span> : }
+<span class="lineNum"> 1022 </span> :
+<span class="lineNum"> 1023 </span> : /** Register a MatchDecider.
+<span class="lineNum"> 1024 </span> : *
+<span class="lineNum"> 1025 </span> : * This is used to associate a name with a matchdecider.
+<span class="lineNum"> 1026 </span> : *
+<span class="lineNum"> 1027 </span> : * @deprecated This method is deprecated. It was added long ago with
+<span class="lineNum"> 1028 </span> : * the intention that it would allow the remote backend to support
+<span class="lineNum"> 1029 </span> : * use of MatchDecider objects, but there's a better approach.
+<span class="lineNum"> 1030 </span> : *
+<span class="lineNum"> 1031 </span> : * @param name The name to register this matchdecider as.
+<span class="lineNum"> 1032 </span> : * @param mdecider The matchdecider. If omitted, then remove
+<span class="lineNum"> 1033 </span> : * any matchdecider registered with this name.
+<span class="lineNum"> 1034 </span> : */
+<span class="lineNum"> 1035 </span> : XAPIAN_DEPRECATED(
+<span class="lineNum"> 1036 </span> : void register_match_decider(const std::string &amp;name,
+<span class="lineNum"> 1037 </span> : const MatchDecider *mdecider = NULL));
+<span class="lineNum"> 1038 </span> :
+<span class="lineNum"> 1039 </span> : /// Return a string describing this object.
+<span class="lineNum"> 1040 </span> : std::string get_description() const;
+<span class="lineNum"> 1041 </span> : };
+<span class="lineNum"> 1042 </span> :
+<span class="lineNum"> 1043 </span> : }
+<span class="lineNum"> 1044 </span> :
+<span class="lineNum"> 1045 </span> : class RemoteServer;
+<span class="lineNum"> 1046 </span> : class ScaleWeight;
+<span class="lineNum"> 1047 </span> :
+<span class="lineNum"> 1048 </span> : namespace Xapian {
+<span class="lineNum"> 1049 </span> :
+<span class="lineNum"> 1050 </span> : /// Abstract base class for weighting schemes
+<span class="lineNum"> 1051 </span> : class XAPIAN_VISIBILITY_DEFAULT Weight {
+<span class="lineNum"> 1052 </span> : friend class Enquire; // So Enquire can clone us
+<span class="lineNum"> 1053 </span> : friend class ::RemoteServer; // So RemoteServer can clone us - FIXME
+<span class="lineNum"> 1054 </span> : friend class ::ScaleWeight;
+<span class="lineNum"> 1055 </span> : public:
+<span class="lineNum"> 1056 </span> : class Internal;
+<span class="lineNum"> 1057 </span> : protected:
+<span class="lineNum"> 1058 </span> : Weight(const Weight &amp;);
+<span class="lineNum"> 1059 </span> : private:
+<span class="lineNum"> 1060 </span> : void operator=(Weight &amp;);
+<span class="lineNum"> 1061 </span> :
+<span class="lineNum"> 1062 </span> : /** Return a new weight object of this type.
+<span class="lineNum"> 1063 </span> : *
+<span class="lineNum"> 1064 </span> : * A subclass called FooWeight taking parameters param1 and param2
+<span class="lineNum"> 1065 </span> : * should implement this as:
+<span class="lineNum"> 1066 </span> : *
+<span class="lineNum"> 1067 </span> : * virtual FooWeight * clone() const {
+<span class="lineNum"> 1068 </span> : * return new FooWeight(param1, param2);
+<span class="lineNum"> 1069 </span> : * }
+<span class="lineNum"> 1070 </span> : */
+<span class="lineNum"> 1071 </span> : virtual Weight * clone() const = 0;
+<span class="lineNum"> 1072 </span> :
+<span class="lineNum"> 1073 </span> : protected:
+<span class="lineNum"> 1074 </span> : const Internal * internal; // Weight::Internal == Stats
+<span class="lineNum"> 1075 </span> : Xapian::doclength querysize;
+<span class="lineNum"> 1076 </span> : Xapian::termcount wqf;
+<span class="lineNum"> 1077 </span> : std::string tname;
+<span class="lineNum"> 1078 </span> :
+<span class="lineNum"> 1079 </span> : public:
+<span class="lineNum"> 1080 </span> : // FIXME:1.1: initialise internal to NULL here
+<span class="lineNum"> 1081 </span> : Weight() { }
+<span class="lineNum"> 1082 </span> : virtual ~Weight();
+<span class="lineNum"> 1083 </span> :
+<span class="lineNum"> 1084 </span> : /** Create a new weight object of the same type as this and initialise
+<span class="lineNum"> 1085 </span> : * it with the specified statistics.
+<span class="lineNum"> 1086 </span> : *
+<span class="lineNum"> 1087 </span> : * You shouldn't call this method yourself - it's called by
+<span class="lineNum"> 1088 </span> : * Enquire.
+<span class="lineNum"> 1089 </span> : *
+<span class="lineNum"> 1090 </span> : * @param internal_ Object to ask for collection statistics.
+<span class="lineNum"> 1091 </span> : * @param querysize_ Query size.
+<span class="lineNum"> 1092 </span> : * @param wqf_ Within query frequency of term this object is
+<span class="lineNum"> 1093 </span> : * associated with.
+<span class="lineNum"> 1094 </span> : * @param tname_ Term which this object is associated with.
+<span class="lineNum"> 1095 </span> : */
+<span class="lineNum"> 1096 </span> : Weight * create(const Internal * internal_, Xapian::doclength querysize_,
+<span class="lineNum"> 1097 </span> : Xapian::termcount wqf_, const std::string &amp; tname_) const;
+<span class="lineNum"> 1098 </span> :
+<span class="lineNum"> 1099 </span> : /** Name of the weighting scheme.
+<span class="lineNum"> 1100 </span> : *
+<span class="lineNum"> 1101 </span> : * If the subclass is called FooWeight, this should return &quot;Foo&quot;.
+<span class="lineNum"> 1102 </span> : */
+<span class="lineNum"> 1103 </span> : virtual std::string name() const = 0;
+<span class="lineNum"> 1104 </span> :
+<span class="lineNum"> 1105 </span> : /// Serialise object parameters into a string.
+<span class="lineNum"> 1106 </span> : virtual std::string serialise() const = 0;
+<span class="lineNum"> 1107 </span> :
+<span class="lineNum"> 1108 </span> : /// Create object given string serialisation returned by serialise().
+<span class="lineNum"> 1109 </span> : virtual Weight * unserialise(const std::string &amp;s) const = 0;
+<span class="lineNum"> 1110 </span> :
+<span class="lineNum"> 1111 </span> : /** Get a weight which is part of the sum over terms being performed.
+<span class="lineNum"> 1112 </span> : * This returns a weight for a given term and document. These
+<span class="lineNum"> 1113 </span> : * weights are summed to give a total weight for the document.
+<span class="lineNum"> 1114 </span> : *
+<span class="lineNum"> 1115 </span> : * @param wdf the within document frequency of the term.
+<span class="lineNum"> 1116 </span> : * @param len the (unnormalised) document length.
+<span class="lineNum"> 1117 </span> : */
+<span class="lineNum"> 1118 </span> : virtual Xapian::weight get_sumpart(Xapian::termcount wdf,
+<span class="lineNum"> 1119 </span> : Xapian::doclength len) const = 0;
+<span class="lineNum"> 1120 </span> :
+<span class="lineNum"> 1121 </span> : /** Gets the maximum value that get_sumpart() may return. This
+<span class="lineNum"> 1122 </span> : * is used in optimising searches, by having the postlist tree
+<span class="lineNum"> 1123 </span> : * decay appropriately when parts of it can have limited, or no,
+<span class="lineNum"> 1124 </span> : * further effect.
+<span class="lineNum"> 1125 </span> : */
+<span class="lineNum"> 1126 </span> : virtual Xapian::weight get_maxpart() const = 0;
+<span class="lineNum"> 1127 </span> :
+<span class="lineNum"> 1128 </span> : /** Get an extra weight for a document to add to the sum calculated
+<span class="lineNum"> 1129 </span> : * over the query terms.
+<span class="lineNum"> 1130 </span> : * This returns a weight for a given document, and is used by some
+<span class="lineNum"> 1131 </span> : * weighting schemes to account for influence such as document
+<span class="lineNum"> 1132 </span> : * length.
+<span class="lineNum"> 1133 </span> : *
+<span class="lineNum"> 1134 </span> : * @param len the (unnormalised) document length.
+<span class="lineNum"> 1135 </span> : */
+<span class="lineNum"> 1136 </span> : virtual Xapian::weight get_sumextra(Xapian::doclength len) const = 0;
+<span class="lineNum"> 1137 </span> :
+<span class="lineNum"> 1138 </span> : /** Gets the maximum value that get_sumextra() may return. This
+<span class="lineNum"> 1139 </span> : * is used in optimising searches.
+<span class="lineNum"> 1140 </span> : */
+<span class="lineNum"> 1141 </span> : virtual Xapian::weight get_maxextra() const = 0;
+<span class="lineNum"> 1142 </span> :
+<span class="lineNum"> 1143 </span> : /// return false if the weight object doesn't need doclength
+<span class="lineNum"> 1144 </span> : virtual bool get_sumpart_needs_doclength() const; /* { return true; } */
+<span class="lineNum"> 1145 </span> : };
+<span class="lineNum"> 1146 </span> :
+<span class="lineNum"> 1147 </span> : /// Boolean weighting scheme (everything gets 0)
+<span class="lineNum"> 1148 </span> : class XAPIAN_VISIBILITY_DEFAULT BoolWeight : public Weight {
+<span class="lineNum"> 1149 </span> : public:
+<span class="lineNum"> 1150 </span> : BoolWeight * clone() const;
+<span class="lineNum"> 1151 </span> : BoolWeight() { }
+<span class="lineNum"> 1152 </span> : ~BoolWeight();
+<span class="lineNum"> 1153 </span> : std::string name() const;
+<span class="lineNum"> 1154 </span> : std::string serialise() const;
+<span class="lineNum"> 1155 </span> : BoolWeight * unserialise(const std::string &amp; s) const;
+<span class="lineNum"> 1156 </span> : Xapian::weight get_sumpart(Xapian::termcount wdf, Xapian::doclength len) const;
+<span class="lineNum"> 1157 </span> : Xapian::weight get_maxpart() const;
+<span class="lineNum"> 1158 </span> :
+<span class="lineNum"> 1159 </span> : Xapian::weight get_sumextra(Xapian::doclength len) const;
+<span class="lineNum"> 1160 </span> : Xapian::weight get_maxextra() const;
+<span class="lineNum"> 1161 </span> :
+<span class="lineNum"> 1162 </span> : bool get_sumpart_needs_doclength() const;
+<span class="lineNum"> 1163 </span> : };
+<span class="lineNum"> 1164 </span> :
+<span class="lineNum"> 1165 </span> : /** BM25 weighting scheme
+<span class="lineNum"> 1166 </span> : *
+<span class="lineNum"> 1167 </span> : * BM25 weighting options : The BM25 formula is \f[
+<span class="lineNum"> 1168 </span> : * \frac{k_{2}.n_{q}}{1+L_{d}}+\sum_{t}\frac{(k_{3}+1)q_{t}}{k_{3}+q_{t}}.\frac{(k_{1}+1)f_{t,d}}{k_{1}((1-b)+bL_{d})+f_{t,d}}.w_{t}
+<span class="lineNum"> 1169 </span> : * \f] where
+<span class="lineNum"> 1170 </span> : * - \f$w_{t}\f$ is the termweight of term t
+<span class="lineNum"> 1171 </span> : * - \f$f_{t,d}\f$ is the within document frequency of term t in document d
+<span class="lineNum"> 1172 </span> : * - \f$q_{t}\f$ is the within query frequency of term t
+<span class="lineNum"> 1173 </span> : * - \f$L_{d}\f$ is the normalised length of document d
+<span class="lineNum"> 1174 </span> : * - \f$n_{q}\f$ is the size of the query
+<span class="lineNum"> 1175 </span> : * - \f$k_{1}\f$, \f$k_{2}\f$, \f$k_{3}\f$ and \f$b\f$ are user specified parameters
+<span class="lineNum"> 1176 </span> : */
+<span class="lineNum"> 1177 </span> : class XAPIAN_VISIBILITY_DEFAULT BM25Weight : public Weight {
+<span class="lineNum"> 1178 </span> : private:
+<span class="lineNum"> 1179 </span> : mutable Xapian::weight termweight;
+<span class="lineNum"> 1180 </span> : mutable Xapian::doclength lenpart;
+<span class="lineNum"> 1181 </span> :
+<span class="lineNum"> 1182 </span> : double k1, k2, k3, b;
+<span class="lineNum"> 1183 </span> : Xapian::doclength min_normlen;
+<span class="lineNum"> 1184 </span> :
+<span class="lineNum"> 1185 </span> : mutable bool weight_calculated;
+<span class="lineNum"> 1186 </span> :
+<span class="lineNum"> 1187 </span> : void calc_termweight() const;
+<span class="lineNum"> 1188 </span> :
+<span class="lineNum"> 1189 </span> : public:
+<span class="lineNum"> 1190 </span> : /** Construct a BM25 weight.
+<span class="lineNum"> 1191 </span> : *
+<span class="lineNum"> 1192 </span> : * @param k1 governs the importance of within document frequency.
+<span class="lineNum"> 1193 </span> : * Must be &gt;= 0. 0 means ignore wdf. Default is 1.
+<span class="lineNum"> 1194 </span> : * @param k2 compensation factor for the high wdf values in
+<span class="lineNum"> 1195 </span> : * large documents. Must be &gt;= 0. 0 means no
+<span class="lineNum"> 1196 </span> : * compensation. Default is 0.
+<span class="lineNum"> 1197 </span> : * @param k3 governs the importance of within query frequency.
+<span class="lineNum"> 1198 </span> : * Must be &gt;= 0. 0 means ignore wqf. Default is 1.
+<span class="lineNum"> 1199 </span> : * @param b Relative importance of within document frequency and
+<span class="lineNum"> 1200 </span> : * document length. Must be &gt;= 0 and &lt;= 1. Default
+<span class="lineNum"> 1201 </span> : * is 0.5.
+<span class="lineNum"> 1202 </span> : * @param min_normlen specifies a cutoff on the minimum value that
+<span class="lineNum"> 1203 </span> : * can be used for a normalised document length -
+<span class="lineNum"> 1204 </span> : * smaller values will be forced up to this cutoff.
+<span class="lineNum"> 1205 </span> : * This prevents very small documents getting a huge
+<span class="lineNum"> 1206 </span> : * bonus weight. Default is 0.5.
+<span class="lineNum"> 1207 </span> : */
+<span class="lineNum"> 1208 </span> : BM25Weight(double k1_, double k2_, double k3_, double b_,
+<span class="lineNum"> 1209 </span> : double min_normlen_)
+<span class="lineNum"> 1210 </span> : : k1(k1_), k2(k2_), k3(k3_), b(b_), min_normlen(min_normlen_),
+<span class="lineNum"> 1211 </span> : weight_calculated(false)
+<span class="lineNum"> 1212 </span> : {
+<span class="lineNum"> 1213 </span> : if (k1 &lt; 0) k1 = 0;
+<span class="lineNum"> 1214 </span> : if (k2 &lt; 0) k2 = 0;
+<span class="lineNum"> 1215 </span> : if (k3 &lt; 0) k3 = 0;
+<span class="lineNum"> 1216 </span> : if (b &lt; 0) b = 0; else if (b &gt; 1) b = 1;
+<span class="lineNum"> 1217 </span> : }
+<span class="lineNum"> 1218 </span> : BM25Weight() : k1(1), k2(0), k3(1), b(0.5), min_normlen(0.5),
+<span class="lineNum"> 1219 </span> : weight_calculated(false) { }
+<span class="lineNum"> 1220 </span> :
+<span class="lineNum"> 1221 </span> : BM25Weight * clone() const;
+<span class="lineNum"> 1222 </span> : ~BM25Weight() { }
+<span class="lineNum"> 1223 </span> : std::string name() const;
+<span class="lineNum"> 1224 </span> : std::string serialise() const;
+<span class="lineNum"> 1225 </span> : BM25Weight * unserialise(const std::string &amp; s) const;
+<span class="lineNum"> 1226 </span> : Xapian::weight get_sumpart(Xapian::termcount wdf, Xapian::doclength len) const;
+<span class="lineNum"> 1227 </span> : Xapian::weight get_maxpart() const;
+<span class="lineNum"> 1228 </span> :
+<span class="lineNum"> 1229 </span> : Xapian::weight get_sumextra(Xapian::doclength len) const;
+<span class="lineNum"> 1230 </span> : Xapian::weight get_maxextra() const;
+<span class="lineNum"> 1231 </span> :
+<span class="lineNum"> 1232 </span> : bool get_sumpart_needs_doclength() const;
+<span class="lineNum"> 1233 </span> : };
+<span class="lineNum"> 1234 </span> :
+<span class="lineNum"> 1235 </span> : /** Traditional probabilistic weighting scheme.
+<span class="lineNum"> 1236 </span> : *
+<span class="lineNum"> 1237 </span> : * This class implements the Traditional Probabilistic Weighting scheme, as
+<span class="lineNum"> 1238 </span> : * described by the early papers on Probabilistic Retrieval. BM25 generally
+<span class="lineNum"> 1239 </span> : * gives better results.
+<span class="lineNum"> 1240 </span> : *
+<span class="lineNum"> 1241 </span> : * The Traditional weighting scheme formula is \f[
+<span class="lineNum"> 1242 </span> : * \sum_{t}\frac{f_{t,d}}{k.L_{d}+f_{t,d}}.w_{t}
+<span class="lineNum"> 1243 </span> : * \f] where
+<span class="lineNum"> 1244 </span> : * - \f$w_{t}\f$ is the termweight of term t
+<span class="lineNum"> 1245 </span> : * - \f$f_{t,d}\f$ is the within document frequency of term t in document d
+<span class="lineNum"> 1246 </span> : * - \f$L_{d}\f$ is the normalised length of document d
+<span class="lineNum"> 1247 </span> : * - \f$k\f$ is a user specifiable parameter
+<span class="lineNum"> 1248 </span> : *
+<span class="lineNum"> 1249 </span> : * TradWeight(k) is equivalent to BM25Weight(k, 0, 0, 1, 0), except that
+<span class="lineNum"> 1250 </span> : * the latter returns weights (k+1) times larger.
+<span class="lineNum"> 1251 </span> : */
+<span class="lineNum"> 1252 </span> : class XAPIAN_VISIBILITY_DEFAULT TradWeight : public Weight {
+<span class="lineNum"> 1253 </span> : private:
+<span class="lineNum"> 1254 </span> : mutable Xapian::weight termweight;
+<span class="lineNum"> 1255 </span> : mutable Xapian::doclength lenpart;
+<span class="lineNum"> 1256 </span> :
+<span class="lineNum"> 1257 </span> : double param_k;
+<span class="lineNum"> 1258 </span> :
+<span class="lineNum"> 1259 </span> : mutable bool weight_calculated;
+<span class="lineNum"> 1260 </span> :
+<span class="lineNum"> 1261 </span> : void calc_termweight() const;
+<span class="lineNum"> 1262 </span> :
+<span class="lineNum"> 1263 </span> : public:
+<span class="lineNum"> 1264 </span> : /** Construct a TradWeight
+<span class="lineNum"> 1265 </span> : *
+<span class="lineNum"> 1266 </span> : * @param k parameter governing the importance of within
+<span class="lineNum"> 1267 </span> : * document frequency and document length - any non-negative
+<span class="lineNum"> 1268 </span> : * number (0 meaning to ignore wdf and doc length when
+<span class="lineNum"> 1269 </span> : * calculating weights). Default is 1.
+<span class="lineNum"> 1270 </span> : */
+<span class="lineNum"> 1271 </span> : explicit TradWeight(double k) : param_k(k), weight_calculated(false) {
+<span class="lineNum"> 1272 </span> : if (param_k &lt; 0) param_k = 0;
+<span class="lineNum"> 1273 </span> : }
+<span class="lineNum"> 1274 </span> :
+<span class="lineNum"> 1275 </span> : TradWeight() : param_k(1.0), weight_calculated(false) { }
+<span class="lineNum"> 1276 </span> :
+<span class="lineNum"> 1277 </span> : TradWeight * clone() const;
+<span class="lineNum"> 1278 </span> : ~TradWeight() { }
+<span class="lineNum"> 1279 </span> : std::string name() const;
+<span class="lineNum"> 1280 </span> : std::string serialise() const;
+<span class="lineNum"> 1281 </span> : TradWeight * unserialise(const std::string &amp; s) const;
+<span class="lineNum"> 1282 </span> :
+<span class="lineNum"> 1283 </span> : Xapian::weight get_sumpart(Xapian::termcount wdf, Xapian::doclength len) const;
+<span class="lineNum"> 1284 </span> : Xapian::weight get_maxpart() const;
+<span class="lineNum"> 1285 </span> :
+<span class="lineNum"> 1286 </span> : Xapian::weight get_sumextra(Xapian::doclength len) const;
+<span class="lineNum"> 1287 </span> : Xapian::weight get_maxextra() const;
+<span class="lineNum"> 1288 </span> :
+<span class="lineNum"> 1289 </span> : bool get_sumpart_needs_doclength() const;
+<span class="lineNum"> 1290 </span> : };
+<span class="lineNum"> 1291 </span> :
+<span class="lineNum"> 1292 </span> : }
+<span class="lineNum"> 1293 </span> :
+<span class="lineNum"> 1294 </span> : #endif /* XAPIAN_INCLUDED_ENQUIRE_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/xapian/error.h.gcov.html b/rep/usr/include/xapian/error.h.gcov.html
new file mode 100644
index 0000000..62fba9b
--- /dev/null
+++ b/rep/usr/include/xapian/error.h.gcov.html
@@ -0,0 +1,822 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/xapian/error.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">usr/include/xapian</a> - error.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">3</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">0.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">0</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /** @file error.h
+<span class="lineNum"> 2 </span> : * @brief Hierarchy of classes which Xapian can throw as exceptions.
+<span class="lineNum"> 3 </span> : */
+<span class="lineNum"> 4 </span> : /* Warning: This file is generated by ./generate-exceptions - do not modify directly! */
+<span class="lineNum"> 5 </span> : /* Copyright (C) 2003,2004,2006,2007 Olly Betts
+<span class="lineNum"> 6 </span> : *
+<span class="lineNum"> 7 </span> : * This program is free software; you can redistribute it and/or
+<span class="lineNum"> 8 </span> : * modify it under the terms of the GNU General Public License as
+<span class="lineNum"> 9 </span> : * published by the Free Software Foundation; either version 2 of the
+<span class="lineNum"> 10 </span> : * License, or (at your option) any later version.
+<span class="lineNum"> 11 </span> : *
+<span class="lineNum"> 12 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 13 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 14 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 15 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 16 </span> : *
+<span class="lineNum"> 17 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 18 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 19 </span> : * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+<span class="lineNum"> 20 </span> : */
+<span class="lineNum"> 21 </span> :
+<span class="lineNum"> 22 </span> : #ifndef XAPIAN_INCLUDED_ERROR_H
+<span class="lineNum"> 23 </span> : #define XAPIAN_INCLUDED_ERROR_H
+<span class="lineNum"> 24 </span> :
+<span class="lineNum"> 25 </span> : #include &lt;string&gt;
+<span class="lineNum"> 26 </span> : #include &lt;xapian/deprecated.h&gt;
+<span class="lineNum"> 27 </span> : #include &lt;xapian/visibility.h&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : namespace Xapian {
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : class ErrorHandler;
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : /** All exceptions thrown by Xapian are subclasses of Xapian::Error.
+<span class="lineNum"> 34 </span> : *
+<span class="lineNum"> 35 </span> : * This class can not be instantiated directly - instead a subclass should
+<span class="lineNum"> 36 </span> : * be used.
+<span class="lineNum"> 37 </span> : */
+<span class="lineNum"> 38 </span> : class XAPIAN_VISIBILITY_DEFAULT Error {
+<span class="lineNum"> 39 </span> : // ErrorHandler needs to be able to access Error::already_handled.
+<span class="lineNum"> 40 </span> : friend class ErrorHandler;
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span> : /// Message giving details of the error, intended for human consumption.
+<span class="lineNum"> 43 </span> : std::string msg;
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : /** Optional context information.
+<span class="lineNum"> 46 </span> : *
+<span class="lineNum"> 47 </span> : * This context is intended for use by Xapian::ErrorHandler (for example
+<span class="lineNum"> 48 </span> : * so it can know which remote server is unreliable and report the problem
+<span class="lineNum"> 49 </span> : * and remove that server from those being searched). But it's typically
+<span class="lineNum"> 50 </span> : * a plain-text string, and so also fit for human consumption.
+<span class="lineNum"> 51 </span> : */
+<span class="lineNum"> 52 </span> : std::string context;
+<span class="lineNum"> 53 </span> :
+<span class="lineNum"> 54 </span> : /// The type of this error (e.g. DocNotFoundError.)
+<span class="lineNum"> 55 </span> : const char * type;
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /** Optional value of 'errno' associated with this error.
+<span class="lineNum"> 58 </span> : *
+<span class="lineNum"> 59 </span> : * If no value is associated, this member variable will be 0.
+<span class="lineNum"> 60 </span> : *
+<span class="lineNum"> 61 </span> : * On UNIX, if this value is &lt; 0, it's a negated h_errno value (giving
+<span class="lineNum"> 62 </span> : * an error from gethostbyname() or similar).
+<span class="lineNum"> 63 </span> : *
+<span class="lineNum"> 64 </span> : * On Windows, if this value is &lt; 0, it's a negated Windows error code
+<span class="lineNum"> 65 </span> : * (as given by GetLastError() or WSAGetLastError()).
+<span class="lineNum"> 66 </span> : *
+<span class="lineNum"> 67 </span> : * NB We don't just call this member &quot;errno&quot; to avoid problems on
+<span class="lineNum"> 68 </span> : * platforms where errno is a preprocessor macro.
+<span class="lineNum"> 69 </span> : */
+<span class="lineNum"> 70 </span> : int my_errno;
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span> : /** The error string derived from my_errno.
+<span class="lineNum"> 73 </span> : *
+<span class="lineNum"> 74 </span> : * This string is generated from my_errno lazily.
+<span class="lineNum"> 75 </span> : */
+<span class="lineNum"> 76 </span> : mutable std::string error_string;
+<span class="lineNum"> 77 </span> :
+<span class="lineNum"> 78 </span> : /// True if this error has already been passed to an ErrorHandler.
+<span class="lineNum"> 79 </span> : bool already_handled;
+<span class="lineNum"> 80 </span> :
+<span class="lineNum"> 81 </span> : /// Don't allow assignment of the base class.
+<span class="lineNum"> 82 </span> : void operator=(const Error &amp;o);
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span> : protected:
+<span class="lineNum"> 85 </span> : /** @private @internal
+<span class="lineNum"> 86 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 87 </span> : */
+<span class="lineNum"> 88 </span> : Error(const std::string &amp;msg_, const std::string &amp;context_,
+<span class="lineNum"> 89 </span> : const char * type_, const char * error_string_);
+<span class="lineNum"> 90 </span> :
+<span class="lineNum"> 91 </span> : /** @private @internal
+<span class="lineNum"> 92 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 93 </span> : */
+<span class="lineNum"> 94 </span> : Error(const std::string &amp;msg_, const std::string &amp;context_,
+<span class="lineNum"> 95 </span> : const char * type_, int errno_)
+<span class="lineNum"> 96 </span> : : msg(msg_), context(context_), type(type_), my_errno(errno_),
+<span class="lineNum"> 97 </span> : error_string(), already_handled(false) { }
+<span class="lineNum"> 98 </span> :
+<span class="lineNum"> 99 </span> : public:
+<span class="lineNum"> 100 </span> : /// The type of this error (e.g. &quot;DocNotFoundError&quot;.)
+<span class="lineNum"> 101 </span><span class="lineNoCov"> 0 : const char * get_type() const { return type; }</span>
+<span class="lineNum"> 102 </span> :
+<span class="lineNum"> 103 </span> : /// Message giving details of the error, intended for human consumption.
+<span class="lineNum"> 104 </span><span class="lineNoCov"> 0 : const std::string &amp; get_msg() const { return msg; }</span>
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span> : /** Optional context information.
+<span class="lineNum"> 107 </span> : *
+<span class="lineNum"> 108 </span> : * This context is intended for use by Xapian::ErrorHandler (for example
+<span class="lineNum"> 109 </span> : * so it can know which remote server is unreliable and report the problem
+<span class="lineNum"> 110 </span> : * and remove that server from those being searched). But it's typically
+<span class="lineNum"> 111 </span> : * a plain-text string, and so also fit for human consumption.
+<span class="lineNum"> 112 </span> : */
+<span class="lineNum"> 113 </span><span class="lineNoCov"> 0 : const std::string &amp; get_context() const { return context; }</span>
+<span class="lineNum"> 114 </span> :
+<span class="lineNum"> 115 </span> : /** Returns any system error string associated with this exception.
+<span class="lineNum"> 116 </span> : *
+<span class="lineNum"> 117 </span> : * The system error string may come from errno, h_errno (on UNIX), or
+<span class="lineNum"> 118 </span> : * GetLastError() (on MS Windows). If there is no associated system
+<span class="lineNum"> 119 </span> : * error string, NULL is returned.
+<span class="lineNum"> 120 </span> : */
+<span class="lineNum"> 121 </span> : const char * get_error_string() const;
+<span class="lineNum"> 122 </span> :
+<span class="lineNum"> 123 </span> : /** Optional value of 'errno' associated with this error.
+<span class="lineNum"> 124 </span> : *
+<span class="lineNum"> 125 </span> : * If no 'errno' value is associated, returns 0. If the returned value
+<span class="lineNum"> 126 </span> : * is negative, it's a platform-specific error code (on UNIX, -h_errno;
+<span class="lineNum"> 127 </span> : * on MS Windows, -GetLastError()).
+<span class="lineNum"> 128 </span> : *
+<span class="lineNum"> 129 </span> : * @deprecated This method is deprecated, because errno values aren't
+<span class="lineNum"> 130 </span> : * portable between platforms, so we can't serialise them when passing
+<span class="lineNum"> 131 </span> : * exceptions from a remote server to a client. Use the
+<span class="lineNum"> 132 </span> : * get_error_string() method instead.
+<span class="lineNum"> 133 </span> : */
+<span class="lineNum"> 134 </span> : XAPIAN_DEPRECATED(int get_errno() const);
+<span class="lineNum"> 135 </span> :
+<span class="lineNum"> 136 </span> : /// Return a string describing this object.
+<span class="lineNum"> 137 </span> : std::string get_description() const;
+<span class="lineNum"> 138 </span> : };
+<span class="lineNum"> 139 </span> :
+<span class="lineNum"> 140 </span> : inline int Xapian::Error::get_errno() const { return my_errno; }
+<span class="lineNum"> 141 </span> :
+<span class="lineNum"> 142 </span> : /** The base class for exceptions indicating errors in the program logic.
+<span class="lineNum"> 143 </span> : *
+<span class="lineNum"> 144 </span> : * A subclass of LogicError will be thrown if Xapian detects a violation
+<span class="lineNum"> 145 </span> : * of a class invariant or a logical precondition or postcondition, etc.
+<span class="lineNum"> 146 </span> : */
+<span class="lineNum"> 147 </span> : class XAPIAN_VISIBILITY_DEFAULT LogicError : public Error {
+<span class="lineNum"> 148 </span> : protected:
+<span class="lineNum"> 149 </span> : /** @private @internal
+<span class="lineNum"> 150 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 151 </span> : */
+<span class="lineNum"> 152 </span> : LogicError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, const char * error_string_)
+<span class="lineNum"> 153 </span> : : Error(msg_, context_, type_, error_string_) {}
+<span class="lineNum"> 154 </span> :
+<span class="lineNum"> 155 </span> : /** @private @internal
+<span class="lineNum"> 156 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 157 </span> : */
+<span class="lineNum"> 158 </span> : LogicError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, int errno_)
+<span class="lineNum"> 159 </span> : : Error(msg_, context_, type_, errno_) {}
+<span class="lineNum"> 160 </span> : };
+<span class="lineNum"> 161 </span> :
+<span class="lineNum"> 162 </span> : /** The base class for exceptions indicating errors only detectable at runtime.
+<span class="lineNum"> 163 </span> : *
+<span class="lineNum"> 164 </span> : * A subclass of RuntimeError will be thrown if Xapian detects an error
+<span class="lineNum"> 165 </span> : * which is exception derived from RuntimeError is thrown when an
+<span class="lineNum"> 166 </span> : * error is caused by problems with the data or environment rather
+<span class="lineNum"> 167 </span> : * than a programming mistake.
+<span class="lineNum"> 168 </span> : */
+<span class="lineNum"> 169 </span> : class XAPIAN_VISIBILITY_DEFAULT RuntimeError : public Error {
+<span class="lineNum"> 170 </span> : protected:
+<span class="lineNum"> 171 </span> : /** @private @internal
+<span class="lineNum"> 172 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 173 </span> : */
+<span class="lineNum"> 174 </span> : RuntimeError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, const char * error_string_)
+<span class="lineNum"> 175 </span> : : Error(msg_, context_, type_, error_string_) {}
+<span class="lineNum"> 176 </span> :
+<span class="lineNum"> 177 </span> : /** @private @internal
+<span class="lineNum"> 178 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 179 </span> : */
+<span class="lineNum"> 180 </span> : RuntimeError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, int errno_)
+<span class="lineNum"> 181 </span> : : Error(msg_, context_, type_, errno_) {}
+<span class="lineNum"> 182 </span> : };
+<span class="lineNum"> 183 </span> :
+<span class="lineNum"> 184 </span> : /** AssertionError is thrown if a logical assertion inside Xapian fails.
+<span class="lineNum"> 185 </span> : *
+<span class="lineNum"> 186 </span> : * In a debug build of Xapian, a failed assertion in the core library code
+<span class="lineNum"> 187 </span> : * will cause AssertionError to be thrown.
+<span class="lineNum"> 188 </span> : *
+<span class="lineNum"> 189 </span> : * This represents a bug in Xapian (either an invariant, precondition, etc
+<span class="lineNum"> 190 </span> : * has been violated, or the assertion is incorrect!)
+<span class="lineNum"> 191 </span> : */
+<span class="lineNum"> 192 </span> : class XAPIAN_VISIBILITY_DEFAULT AssertionError : public LogicError {
+<span class="lineNum"> 193 </span> : public:
+<span class="lineNum"> 194 </span> : /** @private @internal
+<span class="lineNum"> 195 </span> : * @brief Private constructor for use by remote backend.
+<span class="lineNum"> 196 </span> : *
+<span class="lineNum"> 197 </span> : * @param error_string_ Optional string describing error. May be NULL.
+<span class="lineNum"> 198 </span> : */
+<span class="lineNum"> 199 </span> : AssertionError(const std::string &amp;msg_, const std::string &amp;context_, const char * error_string_)
+<span class="lineNum"> 200 </span> : : LogicError(msg_, context_, &quot;AssertionError&quot;, error_string_) {}
+<span class="lineNum"> 201 </span> : /** General purpose constructor which allows setting errno. */
+<span class="lineNum"> 202 </span> : explicit AssertionError(const std::string &amp;msg_, const std::string &amp;context_ = &quot;&quot;, int errno_ = 0)
+<span class="lineNum"> 203 </span> : : LogicError(msg_, context_, &quot;AssertionError&quot;, errno_) {}
+<span class="lineNum"> 204 </span> : /** Construct from message and errno value. */
+<span class="lineNum"> 205 </span> : AssertionError(const std::string &amp;msg_, int errno_)
+<span class="lineNum"> 206 </span> : : LogicError(msg_, &quot;&quot;, &quot;AssertionError&quot;, errno_) {}
+<span class="lineNum"> 207 </span> : protected:
+<span class="lineNum"> 208 </span> : /** @private @internal
+<span class="lineNum"> 209 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 210 </span> : */
+<span class="lineNum"> 211 </span> : AssertionError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, const char * error_string_)
+<span class="lineNum"> 212 </span> : : LogicError(msg_, context_, type_, error_string_) {}
+<span class="lineNum"> 213 </span> :
+<span class="lineNum"> 214 </span> : /** @private @internal
+<span class="lineNum"> 215 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 216 </span> : */
+<span class="lineNum"> 217 </span> : AssertionError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, int errno_)
+<span class="lineNum"> 218 </span> : : LogicError(msg_, context_, type_, errno_) {}
+<span class="lineNum"> 219 </span> : };
+<span class="lineNum"> 220 </span> :
+<span class="lineNum"> 221 </span> : /** InvalidArgumentError indicates an invalid parameter value was passed to the API.
+<span class="lineNum"> 222 </span> : */
+<span class="lineNum"> 223 </span> : class XAPIAN_VISIBILITY_DEFAULT InvalidArgumentError : public LogicError {
+<span class="lineNum"> 224 </span> : public:
+<span class="lineNum"> 225 </span> : /** @private @internal
+<span class="lineNum"> 226 </span> : * @brief Private constructor for use by remote backend.
+<span class="lineNum"> 227 </span> : *
+<span class="lineNum"> 228 </span> : * @param error_string_ Optional string describing error. May be NULL.
+<span class="lineNum"> 229 </span> : */
+<span class="lineNum"> 230 </span> : InvalidArgumentError(const std::string &amp;msg_, const std::string &amp;context_, const char * error_string_)
+<span class="lineNum"> 231 </span> : : LogicError(msg_, context_, &quot;InvalidArgumentError&quot;, error_string_) {}
+<span class="lineNum"> 232 </span> : /** General purpose constructor which allows setting errno. */
+<span class="lineNum"> 233 </span> : explicit InvalidArgumentError(const std::string &amp;msg_, const std::string &amp;context_ = &quot;&quot;, int errno_ = 0)
+<span class="lineNum"> 234 </span> : : LogicError(msg_, context_, &quot;InvalidArgumentError&quot;, errno_) {}
+<span class="lineNum"> 235 </span> : /** Construct from message and errno value. */
+<span class="lineNum"> 236 </span> : InvalidArgumentError(const std::string &amp;msg_, int errno_)
+<span class="lineNum"> 237 </span> : : LogicError(msg_, &quot;&quot;, &quot;InvalidArgumentError&quot;, errno_) {}
+<span class="lineNum"> 238 </span> : protected:
+<span class="lineNum"> 239 </span> : /** @private @internal
+<span class="lineNum"> 240 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 241 </span> : */
+<span class="lineNum"> 242 </span> : InvalidArgumentError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, const char * error_string_)
+<span class="lineNum"> 243 </span> : : LogicError(msg_, context_, type_, error_string_) {}
+<span class="lineNum"> 244 </span> :
+<span class="lineNum"> 245 </span> : /** @private @internal
+<span class="lineNum"> 246 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 247 </span> : */
+<span class="lineNum"> 248 </span> : InvalidArgumentError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, int errno_)
+<span class="lineNum"> 249 </span> : : LogicError(msg_, context_, type_, errno_) {}
+<span class="lineNum"> 250 </span> : };
+<span class="lineNum"> 251 </span> :
+<span class="lineNum"> 252 </span> : /** InvalidOperationError indicates the API was used in an invalid way.
+<span class="lineNum"> 253 </span> : */
+<span class="lineNum"> 254 </span> : class XAPIAN_VISIBILITY_DEFAULT InvalidOperationError : public LogicError {
+<span class="lineNum"> 255 </span> : public:
+<span class="lineNum"> 256 </span> : /** @private @internal
+<span class="lineNum"> 257 </span> : * @brief Private constructor for use by remote backend.
+<span class="lineNum"> 258 </span> : *
+<span class="lineNum"> 259 </span> : * @param error_string_ Optional string describing error. May be NULL.
+<span class="lineNum"> 260 </span> : */
+<span class="lineNum"> 261 </span> : InvalidOperationError(const std::string &amp;msg_, const std::string &amp;context_, const char * error_string_)
+<span class="lineNum"> 262 </span> : : LogicError(msg_, context_, &quot;InvalidOperationError&quot;, error_string_) {}
+<span class="lineNum"> 263 </span> : /** General purpose constructor which allows setting errno. */
+<span class="lineNum"> 264 </span> : explicit InvalidOperationError(const std::string &amp;msg_, const std::string &amp;context_ = &quot;&quot;, int errno_ = 0)
+<span class="lineNum"> 265 </span> : : LogicError(msg_, context_, &quot;InvalidOperationError&quot;, errno_) {}
+<span class="lineNum"> 266 </span> : /** Construct from message and errno value. */
+<span class="lineNum"> 267 </span> : InvalidOperationError(const std::string &amp;msg_, int errno_)
+<span class="lineNum"> 268 </span> : : LogicError(msg_, &quot;&quot;, &quot;InvalidOperationError&quot;, errno_) {}
+<span class="lineNum"> 269 </span> : protected:
+<span class="lineNum"> 270 </span> : /** @private @internal
+<span class="lineNum"> 271 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 272 </span> : */
+<span class="lineNum"> 273 </span> : InvalidOperationError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, const char * error_string_)
+<span class="lineNum"> 274 </span> : : LogicError(msg_, context_, type_, error_string_) {}
+<span class="lineNum"> 275 </span> :
+<span class="lineNum"> 276 </span> : /** @private @internal
+<span class="lineNum"> 277 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 278 </span> : */
+<span class="lineNum"> 279 </span> : InvalidOperationError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, int errno_)
+<span class="lineNum"> 280 </span> : : LogicError(msg_, context_, type_, errno_) {}
+<span class="lineNum"> 281 </span> : };
+<span class="lineNum"> 282 </span> :
+<span class="lineNum"> 283 </span> : /** UnimplementedError indicates an attempt to use an unimplemented feature. */
+<span class="lineNum"> 284 </span> : class XAPIAN_VISIBILITY_DEFAULT UnimplementedError : public LogicError {
+<span class="lineNum"> 285 </span> : public:
+<span class="lineNum"> 286 </span> : /** @private @internal
+<span class="lineNum"> 287 </span> : * @brief Private constructor for use by remote backend.
+<span class="lineNum"> 288 </span> : *
+<span class="lineNum"> 289 </span> : * @param error_string_ Optional string describing error. May be NULL.
+<span class="lineNum"> 290 </span> : */
+<span class="lineNum"> 291 </span> : UnimplementedError(const std::string &amp;msg_, const std::string &amp;context_, const char * error_string_)
+<span class="lineNum"> 292 </span> : : LogicError(msg_, context_, &quot;UnimplementedError&quot;, error_string_) {}
+<span class="lineNum"> 293 </span> : /** General purpose constructor which allows setting errno. */
+<span class="lineNum"> 294 </span> : explicit UnimplementedError(const std::string &amp;msg_, const std::string &amp;context_ = &quot;&quot;, int errno_ = 0)
+<span class="lineNum"> 295 </span> : : LogicError(msg_, context_, &quot;UnimplementedError&quot;, errno_) {}
+<span class="lineNum"> 296 </span> : /** Construct from message and errno value. */
+<span class="lineNum"> 297 </span> : UnimplementedError(const std::string &amp;msg_, int errno_)
+<span class="lineNum"> 298 </span> : : LogicError(msg_, &quot;&quot;, &quot;UnimplementedError&quot;, errno_) {}
+<span class="lineNum"> 299 </span> : protected:
+<span class="lineNum"> 300 </span> : /** @private @internal
+<span class="lineNum"> 301 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 302 </span> : */
+<span class="lineNum"> 303 </span> : UnimplementedError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, const char * error_string_)
+<span class="lineNum"> 304 </span> : : LogicError(msg_, context_, type_, error_string_) {}
+<span class="lineNum"> 305 </span> :
+<span class="lineNum"> 306 </span> : /** @private @internal
+<span class="lineNum"> 307 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 308 </span> : */
+<span class="lineNum"> 309 </span> : UnimplementedError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, int errno_)
+<span class="lineNum"> 310 </span> : : LogicError(msg_, context_, type_, errno_) {}
+<span class="lineNum"> 311 </span> : };
+<span class="lineNum"> 312 </span> :
+<span class="lineNum"> 313 </span> : /** DatabaseError indicates some sort of database related error. */
+<span class="lineNum"> 314 </span> : class XAPIAN_VISIBILITY_DEFAULT DatabaseError : public RuntimeError {
+<span class="lineNum"> 315 </span> : public:
+<span class="lineNum"> 316 </span> : /** @private @internal
+<span class="lineNum"> 317 </span> : * @brief Private constructor for use by remote backend.
+<span class="lineNum"> 318 </span> : *
+<span class="lineNum"> 319 </span> : * @param error_string_ Optional string describing error. May be NULL.
+<span class="lineNum"> 320 </span> : */
+<span class="lineNum"> 321 </span> : DatabaseError(const std::string &amp;msg_, const std::string &amp;context_, const char * error_string_)
+<span class="lineNum"> 322 </span> : : RuntimeError(msg_, context_, &quot;DatabaseError&quot;, error_string_) {}
+<span class="lineNum"> 323 </span> : /** General purpose constructor which allows setting errno. */
+<span class="lineNum"> 324 </span> : explicit DatabaseError(const std::string &amp;msg_, const std::string &amp;context_ = &quot;&quot;, int errno_ = 0)
+<span class="lineNum"> 325 </span> : : RuntimeError(msg_, context_, &quot;DatabaseError&quot;, errno_) {}
+<span class="lineNum"> 326 </span> : /** Construct from message and errno value. */
+<span class="lineNum"> 327 </span> : DatabaseError(const std::string &amp;msg_, int errno_)
+<span class="lineNum"> 328 </span> : : RuntimeError(msg_, &quot;&quot;, &quot;DatabaseError&quot;, errno_) {}
+<span class="lineNum"> 329 </span> : protected:
+<span class="lineNum"> 330 </span> : /** @private @internal
+<span class="lineNum"> 331 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 332 </span> : */
+<span class="lineNum"> 333 </span> : DatabaseError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, const char * error_string_)
+<span class="lineNum"> 334 </span> : : RuntimeError(msg_, context_, type_, error_string_) {}
+<span class="lineNum"> 335 </span> :
+<span class="lineNum"> 336 </span> : /** @private @internal
+<span class="lineNum"> 337 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 338 </span> : */
+<span class="lineNum"> 339 </span> : DatabaseError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, int errno_)
+<span class="lineNum"> 340 </span> : : RuntimeError(msg_, context_, type_, errno_) {}
+<span class="lineNum"> 341 </span> : };
+<span class="lineNum"> 342 </span> :
+<span class="lineNum"> 343 </span> : /** DatabaseCorruptError indicates database corruption was detected. */
+<span class="lineNum"> 344 </span> : class XAPIAN_VISIBILITY_DEFAULT DatabaseCorruptError : public DatabaseError {
+<span class="lineNum"> 345 </span> : public:
+<span class="lineNum"> 346 </span> : /** @private @internal
+<span class="lineNum"> 347 </span> : * @brief Private constructor for use by remote backend.
+<span class="lineNum"> 348 </span> : *
+<span class="lineNum"> 349 </span> : * @param error_string_ Optional string describing error. May be NULL.
+<span class="lineNum"> 350 </span> : */
+<span class="lineNum"> 351 </span> : DatabaseCorruptError(const std::string &amp;msg_, const std::string &amp;context_, const char * error_string_)
+<span class="lineNum"> 352 </span> : : DatabaseError(msg_, context_, &quot;DatabaseCorruptError&quot;, error_string_) {}
+<span class="lineNum"> 353 </span> : /** General purpose constructor which allows setting errno. */
+<span class="lineNum"> 354 </span> : explicit DatabaseCorruptError(const std::string &amp;msg_, const std::string &amp;context_ = &quot;&quot;, int errno_ = 0)
+<span class="lineNum"> 355 </span> : : DatabaseError(msg_, context_, &quot;DatabaseCorruptError&quot;, errno_) {}
+<span class="lineNum"> 356 </span> : /** Construct from message and errno value. */
+<span class="lineNum"> 357 </span> : DatabaseCorruptError(const std::string &amp;msg_, int errno_)
+<span class="lineNum"> 358 </span> : : DatabaseError(msg_, &quot;&quot;, &quot;DatabaseCorruptError&quot;, errno_) {}
+<span class="lineNum"> 359 </span> : protected:
+<span class="lineNum"> 360 </span> : /** @private @internal
+<span class="lineNum"> 361 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 362 </span> : */
+<span class="lineNum"> 363 </span> : DatabaseCorruptError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, const char * error_string_)
+<span class="lineNum"> 364 </span> : : DatabaseError(msg_, context_, type_, error_string_) {}
+<span class="lineNum"> 365 </span> :
+<span class="lineNum"> 366 </span> : /** @private @internal
+<span class="lineNum"> 367 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 368 </span> : */
+<span class="lineNum"> 369 </span> : DatabaseCorruptError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, int errno_)
+<span class="lineNum"> 370 </span> : : DatabaseError(msg_, context_, type_, errno_) {}
+<span class="lineNum"> 371 </span> : };
+<span class="lineNum"> 372 </span> :
+<span class="lineNum"> 373 </span> : /** DatabaseCreateError indicates a failure to create a database. */
+<span class="lineNum"> 374 </span> : class XAPIAN_VISIBILITY_DEFAULT DatabaseCreateError : public DatabaseError {
+<span class="lineNum"> 375 </span> : public:
+<span class="lineNum"> 376 </span> : /** @private @internal
+<span class="lineNum"> 377 </span> : * @brief Private constructor for use by remote backend.
+<span class="lineNum"> 378 </span> : *
+<span class="lineNum"> 379 </span> : * @param error_string_ Optional string describing error. May be NULL.
+<span class="lineNum"> 380 </span> : */
+<span class="lineNum"> 381 </span> : DatabaseCreateError(const std::string &amp;msg_, const std::string &amp;context_, const char * error_string_)
+<span class="lineNum"> 382 </span> : : DatabaseError(msg_, context_, &quot;DatabaseCreateError&quot;, error_string_) {}
+<span class="lineNum"> 383 </span> : /** General purpose constructor which allows setting errno. */
+<span class="lineNum"> 384 </span> : explicit DatabaseCreateError(const std::string &amp;msg_, const std::string &amp;context_ = &quot;&quot;, int errno_ = 0)
+<span class="lineNum"> 385 </span> : : DatabaseError(msg_, context_, &quot;DatabaseCreateError&quot;, errno_) {}
+<span class="lineNum"> 386 </span> : /** Construct from message and errno value. */
+<span class="lineNum"> 387 </span> : DatabaseCreateError(const std::string &amp;msg_, int errno_)
+<span class="lineNum"> 388 </span> : : DatabaseError(msg_, &quot;&quot;, &quot;DatabaseCreateError&quot;, errno_) {}
+<span class="lineNum"> 389 </span> : protected:
+<span class="lineNum"> 390 </span> : /** @private @internal
+<span class="lineNum"> 391 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 392 </span> : */
+<span class="lineNum"> 393 </span> : DatabaseCreateError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, const char * error_string_)
+<span class="lineNum"> 394 </span> : : DatabaseError(msg_, context_, type_, error_string_) {}
+<span class="lineNum"> 395 </span> :
+<span class="lineNum"> 396 </span> : /** @private @internal
+<span class="lineNum"> 397 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 398 </span> : */
+<span class="lineNum"> 399 </span> : DatabaseCreateError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, int errno_)
+<span class="lineNum"> 400 </span> : : DatabaseError(msg_, context_, type_, errno_) {}
+<span class="lineNum"> 401 </span> : };
+<span class="lineNum"> 402 </span> :
+<span class="lineNum"> 403 </span> : /** DatabaseLockError indicates failure to lock a database. */
+<span class="lineNum"> 404 </span> : class XAPIAN_VISIBILITY_DEFAULT DatabaseLockError : public DatabaseError {
+<span class="lineNum"> 405 </span> : public:
+<span class="lineNum"> 406 </span> : /** @private @internal
+<span class="lineNum"> 407 </span> : * @brief Private constructor for use by remote backend.
+<span class="lineNum"> 408 </span> : *
+<span class="lineNum"> 409 </span> : * @param error_string_ Optional string describing error. May be NULL.
+<span class="lineNum"> 410 </span> : */
+<span class="lineNum"> 411 </span> : DatabaseLockError(const std::string &amp;msg_, const std::string &amp;context_, const char * error_string_)
+<span class="lineNum"> 412 </span> : : DatabaseError(msg_, context_, &quot;DatabaseLockError&quot;, error_string_) {}
+<span class="lineNum"> 413 </span> : /** General purpose constructor which allows setting errno. */
+<span class="lineNum"> 414 </span> : explicit DatabaseLockError(const std::string &amp;msg_, const std::string &amp;context_ = &quot;&quot;, int errno_ = 0)
+<span class="lineNum"> 415 </span> : : DatabaseError(msg_, context_, &quot;DatabaseLockError&quot;, errno_) {}
+<span class="lineNum"> 416 </span> : /** Construct from message and errno value. */
+<span class="lineNum"> 417 </span> : DatabaseLockError(const std::string &amp;msg_, int errno_)
+<span class="lineNum"> 418 </span> : : DatabaseError(msg_, &quot;&quot;, &quot;DatabaseLockError&quot;, errno_) {}
+<span class="lineNum"> 419 </span> : protected:
+<span class="lineNum"> 420 </span> : /** @private @internal
+<span class="lineNum"> 421 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 422 </span> : */
+<span class="lineNum"> 423 </span> : DatabaseLockError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, const char * error_string_)
+<span class="lineNum"> 424 </span> : : DatabaseError(msg_, context_, type_, error_string_) {}
+<span class="lineNum"> 425 </span> :
+<span class="lineNum"> 426 </span> : /** @private @internal
+<span class="lineNum"> 427 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 428 </span> : */
+<span class="lineNum"> 429 </span> : DatabaseLockError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, int errno_)
+<span class="lineNum"> 430 </span> : : DatabaseError(msg_, context_, type_, errno_) {}
+<span class="lineNum"> 431 </span> : };
+<span class="lineNum"> 432 </span> :
+<span class="lineNum"> 433 </span> : /** DatabaseModifiedError indicates a database was modified.
+<span class="lineNum"> 434 </span> : *
+<span class="lineNum"> 435 </span> : * To recover after catching this error, you need to call
+<span class="lineNum"> 436 </span> : * Xapian::Database::reopen() on the Database and repeat the operation
+<span class="lineNum"> 437 </span> : * which failed.
+<span class="lineNum"> 438 </span> : */
+<span class="lineNum"> 439 </span> : class XAPIAN_VISIBILITY_DEFAULT DatabaseModifiedError : public DatabaseError {
+<span class="lineNum"> 440 </span> : public:
+<span class="lineNum"> 441 </span> : /** @private @internal
+<span class="lineNum"> 442 </span> : * @brief Private constructor for use by remote backend.
+<span class="lineNum"> 443 </span> : *
+<span class="lineNum"> 444 </span> : * @param error_string_ Optional string describing error. May be NULL.
+<span class="lineNum"> 445 </span> : */
+<span class="lineNum"> 446 </span> : DatabaseModifiedError(const std::string &amp;msg_, const std::string &amp;context_, const char * error_string_)
+<span class="lineNum"> 447 </span> : : DatabaseError(msg_, context_, &quot;DatabaseModifiedError&quot;, error_string_) {}
+<span class="lineNum"> 448 </span> : /** General purpose constructor which allows setting errno. */
+<span class="lineNum"> 449 </span> : explicit DatabaseModifiedError(const std::string &amp;msg_, const std::string &amp;context_ = &quot;&quot;, int errno_ = 0)
+<span class="lineNum"> 450 </span> : : DatabaseError(msg_, context_, &quot;DatabaseModifiedError&quot;, errno_) {}
+<span class="lineNum"> 451 </span> : /** Construct from message and errno value. */
+<span class="lineNum"> 452 </span> : DatabaseModifiedError(const std::string &amp;msg_, int errno_)
+<span class="lineNum"> 453 </span> : : DatabaseError(msg_, &quot;&quot;, &quot;DatabaseModifiedError&quot;, errno_) {}
+<span class="lineNum"> 454 </span> : protected:
+<span class="lineNum"> 455 </span> : /** @private @internal
+<span class="lineNum"> 456 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 457 </span> : */
+<span class="lineNum"> 458 </span> : DatabaseModifiedError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, const char * error_string_)
+<span class="lineNum"> 459 </span> : : DatabaseError(msg_, context_, type_, error_string_) {}
+<span class="lineNum"> 460 </span> :
+<span class="lineNum"> 461 </span> : /** @private @internal
+<span class="lineNum"> 462 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 463 </span> : */
+<span class="lineNum"> 464 </span> : DatabaseModifiedError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, int errno_)
+<span class="lineNum"> 465 </span> : : DatabaseError(msg_, context_, type_, errno_) {}
+<span class="lineNum"> 466 </span> : };
+<span class="lineNum"> 467 </span> :
+<span class="lineNum"> 468 </span> : /** DatabaseOpeningError indicates failure to open a database. */
+<span class="lineNum"> 469 </span> : class XAPIAN_VISIBILITY_DEFAULT DatabaseOpeningError : public DatabaseError {
+<span class="lineNum"> 470 </span> : public:
+<span class="lineNum"> 471 </span> : /** @private @internal
+<span class="lineNum"> 472 </span> : * @brief Private constructor for use by remote backend.
+<span class="lineNum"> 473 </span> : *
+<span class="lineNum"> 474 </span> : * @param error_string_ Optional string describing error. May be NULL.
+<span class="lineNum"> 475 </span> : */
+<span class="lineNum"> 476 </span> : DatabaseOpeningError(const std::string &amp;msg_, const std::string &amp;context_, const char * error_string_)
+<span class="lineNum"> 477 </span> : : DatabaseError(msg_, context_, &quot;DatabaseOpeningError&quot;, error_string_) {}
+<span class="lineNum"> 478 </span> : /** General purpose constructor which allows setting errno. */
+<span class="lineNum"> 479 </span> : explicit DatabaseOpeningError(const std::string &amp;msg_, const std::string &amp;context_ = &quot;&quot;, int errno_ = 0)
+<span class="lineNum"> 480 </span> : : DatabaseError(msg_, context_, &quot;DatabaseOpeningError&quot;, errno_) {}
+<span class="lineNum"> 481 </span> : /** Construct from message and errno value. */
+<span class="lineNum"> 482 </span> : DatabaseOpeningError(const std::string &amp;msg_, int errno_)
+<span class="lineNum"> 483 </span> : : DatabaseError(msg_, &quot;&quot;, &quot;DatabaseOpeningError&quot;, errno_) {}
+<span class="lineNum"> 484 </span> : protected:
+<span class="lineNum"> 485 </span> : /** @private @internal
+<span class="lineNum"> 486 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 487 </span> : */
+<span class="lineNum"> 488 </span> : DatabaseOpeningError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, const char * error_string_)
+<span class="lineNum"> 489 </span> : : DatabaseError(msg_, context_, type_, error_string_) {}
+<span class="lineNum"> 490 </span> :
+<span class="lineNum"> 491 </span> : /** @private @internal
+<span class="lineNum"> 492 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 493 </span> : */
+<span class="lineNum"> 494 </span> : DatabaseOpeningError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, int errno_)
+<span class="lineNum"> 495 </span> : : DatabaseError(msg_, context_, type_, errno_) {}
+<span class="lineNum"> 496 </span> : };
+<span class="lineNum"> 497 </span> :
+<span class="lineNum"> 498 </span> : /** DatabaseVersionError indicates that a database is in an unsupported format.
+<span class="lineNum"> 499 </span> : *
+<span class="lineNum"> 500 </span> : * From time to time, new versions of Xapian will require the database format
+<span class="lineNum"> 501 </span> : * to be changed, to allow new information to be stored or new optimisations
+<span class="lineNum"> 502 </span> : * to be performed. Backwards compatibility will sometimes be maintained, so
+<span class="lineNum"> 503 </span> : * that new versions of Xapian can open old databases, but in some cases
+<span class="lineNum"> 504 </span> : * Xapian will be unable to open a database because it is in too old (or new)
+<span class="lineNum"> 505 </span> : * a format. This can be resolved either be upgrading or downgrading the
+<span class="lineNum"> 506 </span> : * version of Xapian in use, or by rebuilding the database from scratch with
+<span class="lineNum"> 507 </span> : * the current version of Xapian.
+<span class="lineNum"> 508 </span> : */
+<span class="lineNum"> 509 </span> : class XAPIAN_VISIBILITY_DEFAULT DatabaseVersionError : public DatabaseOpeningError {
+<span class="lineNum"> 510 </span> : public:
+<span class="lineNum"> 511 </span> : /** @private @internal
+<span class="lineNum"> 512 </span> : * @brief Private constructor for use by remote backend.
+<span class="lineNum"> 513 </span> : *
+<span class="lineNum"> 514 </span> : * @param error_string_ Optional string describing error. May be NULL.
+<span class="lineNum"> 515 </span> : */
+<span class="lineNum"> 516 </span> : DatabaseVersionError(const std::string &amp;msg_, const std::string &amp;context_, const char * error_string_)
+<span class="lineNum"> 517 </span> : : DatabaseOpeningError(msg_, context_, &quot;DatabaseVersionError&quot;, error_string_) {}
+<span class="lineNum"> 518 </span> : /** General purpose constructor which allows setting errno. */
+<span class="lineNum"> 519 </span> : explicit DatabaseVersionError(const std::string &amp;msg_, const std::string &amp;context_ = &quot;&quot;, int errno_ = 0)
+<span class="lineNum"> 520 </span> : : DatabaseOpeningError(msg_, context_, &quot;DatabaseVersionError&quot;, errno_) {}
+<span class="lineNum"> 521 </span> : /** Construct from message and errno value. */
+<span class="lineNum"> 522 </span> : DatabaseVersionError(const std::string &amp;msg_, int errno_)
+<span class="lineNum"> 523 </span> : : DatabaseOpeningError(msg_, &quot;&quot;, &quot;DatabaseVersionError&quot;, errno_) {}
+<span class="lineNum"> 524 </span> : protected:
+<span class="lineNum"> 525 </span> : /** @private @internal
+<span class="lineNum"> 526 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 527 </span> : */
+<span class="lineNum"> 528 </span> : DatabaseVersionError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, const char * error_string_)
+<span class="lineNum"> 529 </span> : : DatabaseOpeningError(msg_, context_, type_, error_string_) {}
+<span class="lineNum"> 530 </span> :
+<span class="lineNum"> 531 </span> : /** @private @internal
+<span class="lineNum"> 532 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 533 </span> : */
+<span class="lineNum"> 534 </span> : DatabaseVersionError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, int errno_)
+<span class="lineNum"> 535 </span> : : DatabaseOpeningError(msg_, context_, type_, errno_) {}
+<span class="lineNum"> 536 </span> : };
+<span class="lineNum"> 537 </span> :
+<span class="lineNum"> 538 </span> : /** Indicates an attempt to access a document not present in the database. */
+<span class="lineNum"> 539 </span> : class XAPIAN_VISIBILITY_DEFAULT DocNotFoundError : public RuntimeError {
+<span class="lineNum"> 540 </span> : public:
+<span class="lineNum"> 541 </span> : /** @private @internal
+<span class="lineNum"> 542 </span> : * @brief Private constructor for use by remote backend.
+<span class="lineNum"> 543 </span> : *
+<span class="lineNum"> 544 </span> : * @param error_string_ Optional string describing error. May be NULL.
+<span class="lineNum"> 545 </span> : */
+<span class="lineNum"> 546 </span> : DocNotFoundError(const std::string &amp;msg_, const std::string &amp;context_, const char * error_string_)
+<span class="lineNum"> 547 </span> : : RuntimeError(msg_, context_, &quot;DocNotFoundError&quot;, error_string_) {}
+<span class="lineNum"> 548 </span> : /** General purpose constructor which allows setting errno. */
+<span class="lineNum"> 549 </span> : explicit DocNotFoundError(const std::string &amp;msg_, const std::string &amp;context_ = &quot;&quot;, int errno_ = 0)
+<span class="lineNum"> 550 </span> : : RuntimeError(msg_, context_, &quot;DocNotFoundError&quot;, errno_) {}
+<span class="lineNum"> 551 </span> : /** Construct from message and errno value. */
+<span class="lineNum"> 552 </span> : DocNotFoundError(const std::string &amp;msg_, int errno_)
+<span class="lineNum"> 553 </span> : : RuntimeError(msg_, &quot;&quot;, &quot;DocNotFoundError&quot;, errno_) {}
+<span class="lineNum"> 554 </span> : protected:
+<span class="lineNum"> 555 </span> : /** @private @internal
+<span class="lineNum"> 556 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 557 </span> : */
+<span class="lineNum"> 558 </span> : DocNotFoundError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, const char * error_string_)
+<span class="lineNum"> 559 </span> : : RuntimeError(msg_, context_, type_, error_string_) {}
+<span class="lineNum"> 560 </span> :
+<span class="lineNum"> 561 </span> : /** @private @internal
+<span class="lineNum"> 562 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 563 </span> : */
+<span class="lineNum"> 564 </span> : DocNotFoundError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, int errno_)
+<span class="lineNum"> 565 </span> : : RuntimeError(msg_, context_, type_, errno_) {}
+<span class="lineNum"> 566 </span> : };
+<span class="lineNum"> 567 </span> :
+<span class="lineNum"> 568 </span> : /** Indicates an attempt to use a feature which is unavailable.
+<span class="lineNum"> 569 </span> : *
+<span class="lineNum"> 570 </span> : * Typically a feature is unavailable because it wasn't compiled in, or
+<span class="lineNum"> 571 </span> : * because it requires other software or facilities which aren't available.
+<span class="lineNum"> 572 </span> : */
+<span class="lineNum"> 573 </span> : class XAPIAN_VISIBILITY_DEFAULT FeatureUnavailableError : public RuntimeError {
+<span class="lineNum"> 574 </span> : public:
+<span class="lineNum"> 575 </span> : /** @private @internal
+<span class="lineNum"> 576 </span> : * @brief Private constructor for use by remote backend.
+<span class="lineNum"> 577 </span> : *
+<span class="lineNum"> 578 </span> : * @param error_string_ Optional string describing error. May be NULL.
+<span class="lineNum"> 579 </span> : */
+<span class="lineNum"> 580 </span> : FeatureUnavailableError(const std::string &amp;msg_, const std::string &amp;context_, const char * error_string_)
+<span class="lineNum"> 581 </span> : : RuntimeError(msg_, context_, &quot;FeatureUnavailableError&quot;, error_string_) {}
+<span class="lineNum"> 582 </span> : /** General purpose constructor which allows setting errno. */
+<span class="lineNum"> 583 </span> : explicit FeatureUnavailableError(const std::string &amp;msg_, const std::string &amp;context_ = &quot;&quot;, int errno_ = 0)
+<span class="lineNum"> 584 </span> : : RuntimeError(msg_, context_, &quot;FeatureUnavailableError&quot;, errno_) {}
+<span class="lineNum"> 585 </span> : /** Construct from message and errno value. */
+<span class="lineNum"> 586 </span> : FeatureUnavailableError(const std::string &amp;msg_, int errno_)
+<span class="lineNum"> 587 </span> : : RuntimeError(msg_, &quot;&quot;, &quot;FeatureUnavailableError&quot;, errno_) {}
+<span class="lineNum"> 588 </span> : protected:
+<span class="lineNum"> 589 </span> : /** @private @internal
+<span class="lineNum"> 590 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 591 </span> : */
+<span class="lineNum"> 592 </span> : FeatureUnavailableError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, const char * error_string_)
+<span class="lineNum"> 593 </span> : : RuntimeError(msg_, context_, type_, error_string_) {}
+<span class="lineNum"> 594 </span> :
+<span class="lineNum"> 595 </span> : /** @private @internal
+<span class="lineNum"> 596 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 597 </span> : */
+<span class="lineNum"> 598 </span> : FeatureUnavailableError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, int errno_)
+<span class="lineNum"> 599 </span> : : RuntimeError(msg_, context_, type_, errno_) {}
+<span class="lineNum"> 600 </span> : };
+<span class="lineNum"> 601 </span> :
+<span class="lineNum"> 602 </span> : /** InternalError indicates a runtime problem of some sort. */
+<span class="lineNum"> 603 </span> : class XAPIAN_VISIBILITY_DEFAULT InternalError : public RuntimeError {
+<span class="lineNum"> 604 </span> : public:
+<span class="lineNum"> 605 </span> : /** @private @internal
+<span class="lineNum"> 606 </span> : * @brief Private constructor for use by remote backend.
+<span class="lineNum"> 607 </span> : *
+<span class="lineNum"> 608 </span> : * @param error_string_ Optional string describing error. May be NULL.
+<span class="lineNum"> 609 </span> : */
+<span class="lineNum"> 610 </span> : InternalError(const std::string &amp;msg_, const std::string &amp;context_, const char * error_string_)
+<span class="lineNum"> 611 </span> : : RuntimeError(msg_, context_, &quot;InternalError&quot;, error_string_) {}
+<span class="lineNum"> 612 </span> : /** General purpose constructor which allows setting errno. */
+<span class="lineNum"> 613 </span> : explicit InternalError(const std::string &amp;msg_, const std::string &amp;context_ = &quot;&quot;, int errno_ = 0)
+<span class="lineNum"> 614 </span> : : RuntimeError(msg_, context_, &quot;InternalError&quot;, errno_) {}
+<span class="lineNum"> 615 </span> : /** Construct from message and errno value. */
+<span class="lineNum"> 616 </span> : InternalError(const std::string &amp;msg_, int errno_)
+<span class="lineNum"> 617 </span> : : RuntimeError(msg_, &quot;&quot;, &quot;InternalError&quot;, errno_) {}
+<span class="lineNum"> 618 </span> : protected:
+<span class="lineNum"> 619 </span> : /** @private @internal
+<span class="lineNum"> 620 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 621 </span> : */
+<span class="lineNum"> 622 </span> : InternalError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, const char * error_string_)
+<span class="lineNum"> 623 </span> : : RuntimeError(msg_, context_, type_, error_string_) {}
+<span class="lineNum"> 624 </span> :
+<span class="lineNum"> 625 </span> : /** @private @internal
+<span class="lineNum"> 626 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 627 </span> : */
+<span class="lineNum"> 628 </span> : InternalError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, int errno_)
+<span class="lineNum"> 629 </span> : : RuntimeError(msg_, context_, type_, errno_) {}
+<span class="lineNum"> 630 </span> : };
+<span class="lineNum"> 631 </span> :
+<span class="lineNum"> 632 </span> : /** Indicates a problem communicating with a remote database. */
+<span class="lineNum"> 633 </span> : class XAPIAN_VISIBILITY_DEFAULT NetworkError : public RuntimeError {
+<span class="lineNum"> 634 </span> : public:
+<span class="lineNum"> 635 </span> : /** @private @internal
+<span class="lineNum"> 636 </span> : * @brief Private constructor for use by remote backend.
+<span class="lineNum"> 637 </span> : *
+<span class="lineNum"> 638 </span> : * @param error_string_ Optional string describing error. May be NULL.
+<span class="lineNum"> 639 </span> : */
+<span class="lineNum"> 640 </span> : NetworkError(const std::string &amp;msg_, const std::string &amp;context_, const char * error_string_)
+<span class="lineNum"> 641 </span> : : RuntimeError(msg_, context_, &quot;NetworkError&quot;, error_string_) {}
+<span class="lineNum"> 642 </span> : /** General purpose constructor which allows setting errno. */
+<span class="lineNum"> 643 </span> : explicit NetworkError(const std::string &amp;msg_, const std::string &amp;context_ = &quot;&quot;, int errno_ = 0)
+<span class="lineNum"> 644 </span> : : RuntimeError(msg_, context_, &quot;NetworkError&quot;, errno_) {}
+<span class="lineNum"> 645 </span> : /** Construct from message and errno value. */
+<span class="lineNum"> 646 </span> : NetworkError(const std::string &amp;msg_, int errno_)
+<span class="lineNum"> 647 </span> : : RuntimeError(msg_, &quot;&quot;, &quot;NetworkError&quot;, errno_) {}
+<span class="lineNum"> 648 </span> : protected:
+<span class="lineNum"> 649 </span> : /** @private @internal
+<span class="lineNum"> 650 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 651 </span> : */
+<span class="lineNum"> 652 </span> : NetworkError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, const char * error_string_)
+<span class="lineNum"> 653 </span> : : RuntimeError(msg_, context_, type_, error_string_) {}
+<span class="lineNum"> 654 </span> :
+<span class="lineNum"> 655 </span> : /** @private @internal
+<span class="lineNum"> 656 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 657 </span> : */
+<span class="lineNum"> 658 </span> : NetworkError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, int errno_)
+<span class="lineNum"> 659 </span> : : RuntimeError(msg_, context_, type_, errno_) {}
+<span class="lineNum"> 660 </span> : };
+<span class="lineNum"> 661 </span> :
+<span class="lineNum"> 662 </span> : /** Indicates a timeout expired while communicating with a remote database. */
+<span class="lineNum"> 663 </span> : class XAPIAN_VISIBILITY_DEFAULT NetworkTimeoutError : public NetworkError {
+<span class="lineNum"> 664 </span> : public:
+<span class="lineNum"> 665 </span> : /** @private @internal
+<span class="lineNum"> 666 </span> : * @brief Private constructor for use by remote backend.
+<span class="lineNum"> 667 </span> : *
+<span class="lineNum"> 668 </span> : * @param error_string_ Optional string describing error. May be NULL.
+<span class="lineNum"> 669 </span> : */
+<span class="lineNum"> 670 </span> : NetworkTimeoutError(const std::string &amp;msg_, const std::string &amp;context_, const char * error_string_)
+<span class="lineNum"> 671 </span> : : NetworkError(msg_, context_, &quot;NetworkTimeoutError&quot;, error_string_) {}
+<span class="lineNum"> 672 </span> : /** General purpose constructor which allows setting errno. */
+<span class="lineNum"> 673 </span> : explicit NetworkTimeoutError(const std::string &amp;msg_, const std::string &amp;context_ = &quot;&quot;, int errno_ = 0)
+<span class="lineNum"> 674 </span> : : NetworkError(msg_, context_, &quot;NetworkTimeoutError&quot;, errno_) {}
+<span class="lineNum"> 675 </span> : /** Construct from message and errno value. */
+<span class="lineNum"> 676 </span> : NetworkTimeoutError(const std::string &amp;msg_, int errno_)
+<span class="lineNum"> 677 </span> : : NetworkError(msg_, &quot;&quot;, &quot;NetworkTimeoutError&quot;, errno_) {}
+<span class="lineNum"> 678 </span> : protected:
+<span class="lineNum"> 679 </span> : /** @private @internal
+<span class="lineNum"> 680 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 681 </span> : */
+<span class="lineNum"> 682 </span> : NetworkTimeoutError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, const char * error_string_)
+<span class="lineNum"> 683 </span> : : NetworkError(msg_, context_, type_, error_string_) {}
+<span class="lineNum"> 684 </span> :
+<span class="lineNum"> 685 </span> : /** @private @internal
+<span class="lineNum"> 686 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 687 </span> : */
+<span class="lineNum"> 688 </span> : NetworkTimeoutError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, int errno_)
+<span class="lineNum"> 689 </span> : : NetworkError(msg_, context_, type_, errno_) {}
+<span class="lineNum"> 690 </span> : };
+<span class="lineNum"> 691 </span> :
+<span class="lineNum"> 692 </span> : /** Indicates a query string can't be parsed. */
+<span class="lineNum"> 693 </span> : class XAPIAN_VISIBILITY_DEFAULT QueryParserError : public RuntimeError {
+<span class="lineNum"> 694 </span> : public:
+<span class="lineNum"> 695 </span> : /** @private @internal
+<span class="lineNum"> 696 </span> : * @brief Private constructor for use by remote backend.
+<span class="lineNum"> 697 </span> : *
+<span class="lineNum"> 698 </span> : * @param error_string_ Optional string describing error. May be NULL.
+<span class="lineNum"> 699 </span> : */
+<span class="lineNum"> 700 </span> : QueryParserError(const std::string &amp;msg_, const std::string &amp;context_, const char * error_string_)
+<span class="lineNum"> 701 </span> : : RuntimeError(msg_, context_, &quot;QueryParserError&quot;, error_string_) {}
+<span class="lineNum"> 702 </span> : /** General purpose constructor which allows setting errno. */
+<span class="lineNum"> 703 </span> : explicit QueryParserError(const std::string &amp;msg_, const std::string &amp;context_ = &quot;&quot;, int errno_ = 0)
+<span class="lineNum"> 704 </span> : : RuntimeError(msg_, context_, &quot;QueryParserError&quot;, errno_) {}
+<span class="lineNum"> 705 </span> : /** Construct from message and errno value. */
+<span class="lineNum"> 706 </span> : QueryParserError(const std::string &amp;msg_, int errno_)
+<span class="lineNum"> 707 </span> : : RuntimeError(msg_, &quot;&quot;, &quot;QueryParserError&quot;, errno_) {}
+<span class="lineNum"> 708 </span> : protected:
+<span class="lineNum"> 709 </span> : /** @private @internal
+<span class="lineNum"> 710 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 711 </span> : */
+<span class="lineNum"> 712 </span> : QueryParserError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, const char * error_string_)
+<span class="lineNum"> 713 </span> : : RuntimeError(msg_, context_, type_, error_string_) {}
+<span class="lineNum"> 714 </span> :
+<span class="lineNum"> 715 </span> : /** @private @internal
+<span class="lineNum"> 716 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 717 </span> : */
+<span class="lineNum"> 718 </span> : QueryParserError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, int errno_)
+<span class="lineNum"> 719 </span> : : RuntimeError(msg_, context_, type_, errno_) {}
+<span class="lineNum"> 720 </span> : };
+<span class="lineNum"> 721 </span> :
+<span class="lineNum"> 722 </span> : /** RangeError indicates an attempt to access outside the bounds of a container.
+<span class="lineNum"> 723 </span> : */
+<span class="lineNum"> 724 </span> : class XAPIAN_VISIBILITY_DEFAULT RangeError : public RuntimeError {
+<span class="lineNum"> 725 </span> : public:
+<span class="lineNum"> 726 </span> : /** @private @internal
+<span class="lineNum"> 727 </span> : * @brief Private constructor for use by remote backend.
+<span class="lineNum"> 728 </span> : *
+<span class="lineNum"> 729 </span> : * @param error_string_ Optional string describing error. May be NULL.
+<span class="lineNum"> 730 </span> : */
+<span class="lineNum"> 731 </span> : RangeError(const std::string &amp;msg_, const std::string &amp;context_, const char * error_string_)
+<span class="lineNum"> 732 </span> : : RuntimeError(msg_, context_, &quot;RangeError&quot;, error_string_) {}
+<span class="lineNum"> 733 </span> : /** General purpose constructor which allows setting errno. */
+<span class="lineNum"> 734 </span> : explicit RangeError(const std::string &amp;msg_, const std::string &amp;context_ = &quot;&quot;, int errno_ = 0)
+<span class="lineNum"> 735 </span> : : RuntimeError(msg_, context_, &quot;RangeError&quot;, errno_) {}
+<span class="lineNum"> 736 </span> : /** Construct from message and errno value. */
+<span class="lineNum"> 737 </span> : RangeError(const std::string &amp;msg_, int errno_)
+<span class="lineNum"> 738 </span> : : RuntimeError(msg_, &quot;&quot;, &quot;RangeError&quot;, errno_) {}
+<span class="lineNum"> 739 </span> : protected:
+<span class="lineNum"> 740 </span> : /** @private @internal
+<span class="lineNum"> 741 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 742 </span> : */
+<span class="lineNum"> 743 </span> : RangeError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, const char * error_string_)
+<span class="lineNum"> 744 </span> : : RuntimeError(msg_, context_, type_, error_string_) {}
+<span class="lineNum"> 745 </span> :
+<span class="lineNum"> 746 </span> : /** @private @internal
+<span class="lineNum"> 747 </span> : * @brief Constructor for use by constructors of derived classes.
+<span class="lineNum"> 748 </span> : */
+<span class="lineNum"> 749 </span> : RangeError(const std::string &amp;msg_, const std::string &amp;context_, const char * type_, int errno_)
+<span class="lineNum"> 750 </span> : : RuntimeError(msg_, context_, type_, errno_) {}
+<span class="lineNum"> 751 </span> : };
+<span class="lineNum"> 752 </span> :
+<span class="lineNum"> 753 </span> : }
+<span class="lineNum"> 754 </span> :
+<span class="lineNum"> 755 </span> : #endif /* XAPIAN_INCLUDED_ERROR_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/xapian/expanddecider.h.gcov.html b/rep/usr/include/xapian/expanddecider.h.gcov.html
new file mode 100644
index 0000000..fabaa14
--- /dev/null
+++ b/rep/usr/include/xapian/expanddecider.h.gcov.html
@@ -0,0 +1,155 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/xapian/expanddecider.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">usr/include/xapian</a> - expanddecider.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">1</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /** @file expanddecider.h
+<span class="lineNum"> 2 </span> : * @brief Allow rejection of terms during ESet generation.
+<span class="lineNum"> 3 </span> : */
+<span class="lineNum"> 4 </span> : /* Copyright (C) 2007 Olly Betts
+<span class="lineNum"> 5 </span> : *
+<span class="lineNum"> 6 </span> : * This program is free software; you can redistribute it and/or
+<span class="lineNum"> 7 </span> : * modify it under the terms of the GNU General Public License as
+<span class="lineNum"> 8 </span> : * published by the Free Software Foundation; either version 2 of the
+<span class="lineNum"> 9 </span> : * License, or (at your option) any later version.
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 12 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 13 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 14 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 17 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 18 </span> : * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+<span class="lineNum"> 19 </span> : */
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : #ifndef XAPIAN_INCLUDED_EXPANDDECIDER_H
+<span class="lineNum"> 22 </span> : #define XAPIAN_INCLUDED_EXPANDDECIDER_H
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : #include &lt;set&gt;
+<span class="lineNum"> 25 </span> : #include &lt;string&gt;
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #include &lt;xapian/visibility.h&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : namespace Xapian {
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : /** Virtual base class for expand decider functor. */
+<span class="lineNum"> 32 </span><span class="lineCov"> 5 : class XAPIAN_VISIBILITY_DEFAULT ExpandDecider {</span>
+<span class="lineNum"> 33 </span> : public:
+<span class="lineNum"> 34 </span> : /** Do we want this term in the ESet? */
+<span class="lineNum"> 35 </span> : virtual bool operator()(const std::string &amp;term) const = 0;
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : /** Virtual destructor, because we have virtual methods. */
+<span class="lineNum"> 38 </span> : virtual ~ExpandDecider();
+<span class="lineNum"> 39 </span> : };
+<span class="lineNum"> 40 </span> :
+<span class="lineNum"> 41 </span> : /** ExpandDecider subclass which rejects terms using two ExpandDeciders.
+<span class="lineNum"> 42 </span> : *
+<span class="lineNum"> 43 </span> : * Terms are only accepted if they are accepted by both of the specified
+<span class="lineNum"> 44 </span> : * ExpandDecider objects.
+<span class="lineNum"> 45 </span> : */
+<span class="lineNum"> 46 </span> : class XAPIAN_VISIBILITY_DEFAULT ExpandDeciderAnd : public ExpandDecider {
+<span class="lineNum"> 47 </span> : const ExpandDecider &amp;first, &amp;second;
+<span class="lineNum"> 48 </span> :
+<span class="lineNum"> 49 </span> : public:
+<span class="lineNum"> 50 </span> : /** Terms will be checked with @a first, and if accepted, then checked
+<span class="lineNum"> 51 </span> : * with @a second.
+<span class="lineNum"> 52 </span> : */
+<span class="lineNum"> 53 </span> : ExpandDeciderAnd(const ExpandDecider &amp;first_,
+<span class="lineNum"> 54 </span> : const ExpandDecider &amp;second_)
+<span class="lineNum"> 55 </span> : : first(first_), second(second_) { }
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /** Compatibility method. */
+<span class="lineNum"> 58 </span> : ExpandDeciderAnd(const ExpandDecider *first_,
+<span class="lineNum"> 59 </span> : const ExpandDecider *second_)
+<span class="lineNum"> 60 </span> : : first(*first_), second(*second_) { }
+<span class="lineNum"> 61 </span> :
+<span class="lineNum"> 62 </span> : virtual bool operator()(const std::string &amp;term) const;
+<span class="lineNum"> 63 </span> : };
+<span class="lineNum"> 64 </span> :
+<span class="lineNum"> 65 </span> : /** ExpandDecider subclass which rejects terms in a specified list.
+<span class="lineNum"> 66 </span> : *
+<span class="lineNum"> 67 </span> : * ExpandDeciderFilterTerms provides an easy way to filter out terms from
+<span class="lineNum"> 68 </span> : * a fixed list when generating an ESet.
+<span class="lineNum"> 69 </span> : */
+<span class="lineNum"> 70 </span> : class XAPIAN_VISIBILITY_DEFAULT ExpandDeciderFilterTerms : public ExpandDecider {
+<span class="lineNum"> 71 </span> : std::set&lt;std::string&gt; rejects;
+<span class="lineNum"> 72 </span> :
+<span class="lineNum"> 73 </span> : public:
+<span class="lineNum"> 74 </span> : /** The two iterators specify a list of terms to be rejected.
+<span class="lineNum"> 75 </span> : *
+<span class="lineNum"> 76 </span> : * @a reject_begin and @a reject_end can be any input_iterator type
+<span class="lineNum"> 77 </span> : * which returns std::string or char * (e.g. TermIterator or char **).
+<span class="lineNum"> 78 </span> : */
+<span class="lineNum"> 79 </span> : template &lt;class Iterator&gt;
+<span class="lineNum"> 80 </span> : ExpandDeciderFilterTerms(Iterator reject_begin, Iterator reject_end)
+<span class="lineNum"> 81 </span> : : rejects(reject_begin, reject_end) { }
+<span class="lineNum"> 82 </span> :
+<span class="lineNum"> 83 </span> : virtual bool operator()(const std::string &amp;term) const;
+<span class="lineNum"> 84 </span> : };
+<span class="lineNum"> 85 </span> :
+<span class="lineNum"> 86 </span> : }
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span> : #endif // XAPIAN_INCLUDED_EXPANDDECIDER_H
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/xapian/index.html b/rep/usr/include/xapian/index.html
new file mode 100644
index 0000000..fbdbd2c
--- /dev/null
+++ b/rep/usr/include/xapian/index.html
@@ -0,0 +1,173 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/xapian</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - /usr/include/xapian</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">77</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">76.6 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">59</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <center>
+ <table width="80%" cellpadding=2 cellspacing=1 border=0>
+
+ <tr>
+ <td width="50%"><br></td>
+ <td width="15%"></td>
+ <td width="15%"></td>
+ <td width="20%"></td>
+ </tr>
+
+ <tr>
+ <td class="tableHead">Filename</td>
+ <td class="tableHead" colspan=3>Coverage</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="base.h.gcov.html">base.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../amber.png" width=45 height=10 alt="45.5%"><img src="../../../snow.png" width=55 height=10 alt="45.5%"></td></tr></table>
+ </td>
+ <td class="coverPerMed">45.5&nbsp;%</td>
+ <td class="coverNumMed">5&nbsp;/&nbsp;11&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="database.h.gcov.html">database.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">4&nbsp;/&nbsp;4&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="document.h.gcov.html">document.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../snow.png" width=100 height=10 alt="0.0%"></td></tr></table>
+ </td>
+ <td class="coverPerLo">0.0&nbsp;%</td>
+ <td class="coverNumLo">0&nbsp;/&nbsp;2&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="enquire.h.gcov.html">enquire.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=90 height=10 alt="89.7%"><img src="../../../snow.png" width=10 height=10 alt="89.7%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">89.7&nbsp;%</td>
+ <td class="coverNumHi">26&nbsp;/&nbsp;29&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="error.h.gcov.html">error.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../snow.png" width=100 height=10 alt="0.0%"></td></tr></table>
+ </td>
+ <td class="coverPerLo">0.0&nbsp;%</td>
+ <td class="coverNumLo">0&nbsp;/&nbsp;3&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="expanddecider.h.gcov.html">expanddecider.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">1&nbsp;/&nbsp;1&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="postingiterator.h.gcov.html">postingiterator.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">2&nbsp;/&nbsp;2&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="query.h.gcov.html">query.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=73 height=10 alt="72.7%"><img src="../../../snow.png" width=27 height=10 alt="72.7%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">72.7&nbsp;%</td>
+ <td class="coverNumHi">8&nbsp;/&nbsp;11&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="termgenerator.h.gcov.html">termgenerator.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">2&nbsp;/&nbsp;2&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="termiterator.h.gcov.html">termiterator.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=100 height=10 alt="100.0%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">100.0&nbsp;%</td>
+ <td class="coverNumHi">4&nbsp;/&nbsp;4&nbsp;lines</td>
+ </tr>
+
+ <tr>
+ <td class="coverFile"><a href="unicode.h.gcov.html">unicode.h</a></td>
+ <td class="coverBar" align="center">
+ <table border=0 cellspacing=0 cellpadding=1><tr><td class="coverBarOutline"><img src="../../../emerald.png" width=88 height=10 alt="87.5%"><img src="../../../snow.png" width=12 height=10 alt="87.5%"></td></tr></table>
+ </td>
+ <td class="coverPerHi">87.5&nbsp;%</td>
+ <td class="coverNumHi">7&nbsp;/&nbsp;8&nbsp;lines</td>
+ </tr>
+
+ </table>
+ </center>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/xapian/postingiterator.h.gcov.html b/rep/usr/include/xapian/postingiterator.h.gcov.html
new file mode 100644
index 0000000..7137a28
--- /dev/null
+++ b/rep/usr/include/xapian/postingiterator.h.gcov.html
@@ -0,0 +1,230 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/xapian/postingiterator.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">usr/include/xapian</a> - postingiterator.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /** \file postingiterator.h
+<span class="lineNum"> 2 </span> : * \brief Classes for iterating through posting lists
+<span class="lineNum"> 3 </span> : */
+<span class="lineNum"> 4 </span> : /* Copyright 1999,2000,2001 BrightStation PLC
+<span class="lineNum"> 5 </span> : * Copyright 2002 Ananova Ltd
+<span class="lineNum"> 6 </span> : * Copyright 2003,2004,2005,2007 Olly Betts
+<span class="lineNum"> 7 </span> : *
+<span class="lineNum"> 8 </span> : * This program is free software; you can redistribute it and/or
+<span class="lineNum"> 9 </span> : * modify it under the terms of the GNU General Public License as
+<span class="lineNum"> 10 </span> : * published by the Free Software Foundation; either version 2 of the
+<span class="lineNum"> 11 </span> : * License, or (at your option) any later version.
+<span class="lineNum"> 12 </span> : *
+<span class="lineNum"> 13 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 14 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 15 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 16 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 17 </span> : *
+<span class="lineNum"> 18 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 19 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 20 </span> : * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
+<span class="lineNum"> 21 </span> : * USA
+<span class="lineNum"> 22 </span> : */
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : #ifndef XAPIAN_INCLUDED_POSTINGITERATOR_H
+<span class="lineNum"> 25 </span> : #define XAPIAN_INCLUDED_POSTINGITERATOR_H
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #include &lt;iterator&gt;
+<span class="lineNum"> 28 </span> : #include &lt;string&gt;
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : #include &lt;xapian/base.h&gt;
+<span class="lineNum"> 31 </span> : #include &lt;xapian/types.h&gt;
+<span class="lineNum"> 32 </span> : #include &lt;xapian/positioniterator.h&gt;
+<span class="lineNum"> 33 </span> : #include &lt;xapian/visibility.h&gt;
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : namespace Xapian {
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : class Database;
+<span class="lineNum"> 38 </span> :
+<span class="lineNum"> 39 </span> : /** @internal A wrapper class for a docid which returns the docid if
+<span class="lineNum"> 40 </span> : * dereferenced with *. We need this to implement input_iterator semantics.
+<span class="lineNum"> 41 </span> : */
+<span class="lineNum"> 42 </span> : class DocIDWrapper {
+<span class="lineNum"> 43 </span> : private:
+<span class="lineNum"> 44 </span> : docid did;
+<span class="lineNum"> 45 </span> : public:
+<span class="lineNum"> 46 </span> : explicit DocIDWrapper(docid did_) : did(did_) { }
+<span class="lineNum"> 47 </span> : docid operator*() const { return did; }
+<span class="lineNum"> 48 </span> : };
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span> : /** An iterator pointing to items in a list of postings.
+<span class="lineNum"> 51 </span> : */
+<span class="lineNum"> 52 </span> : class XAPIAN_VISIBILITY_DEFAULT PostingIterator {
+<span class="lineNum"> 53 </span> : public:
+<span class="lineNum"> 54 </span> : class Internal;
+<span class="lineNum"> 55 </span> : /// @private @internal Reference counted internals.
+<span class="lineNum"> 56 </span> : Xapian::Internal::RefCntPtr&lt;Internal&gt; internal;
+<span class="lineNum"> 57 </span> :
+<span class="lineNum"> 58 </span> : private:
+<span class="lineNum"> 59 </span> : friend class Database; // So Database can construct us
+<span class="lineNum"> 60 </span> :
+<span class="lineNum"> 61 </span> : explicit PostingIterator(Internal *internal_);
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span> : public:
+<span class="lineNum"> 64 </span> : friend bool operator==(const PostingIterator &amp;a,
+<span class="lineNum"> 65 </span> : const PostingIterator &amp;b);
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : /// Default constructor - for declaring an uninitialised iterator
+<span class="lineNum"> 68 </span> : PostingIterator();
+<span class="lineNum"> 69 </span> :
+<span class="lineNum"> 70 </span> : /// Destructor
+<span class="lineNum"> 71 </span> : ~PostingIterator();
+<span class="lineNum"> 72 </span> :
+<span class="lineNum"> 73 </span> : /** Copying is allowed. The internals are reference counted, so
+<span class="lineNum"> 74 </span> : * copying is also cheap.
+<span class="lineNum"> 75 </span> : */
+<span class="lineNum"> 76 </span> : PostingIterator(const PostingIterator &amp;other);
+<span class="lineNum"> 77 </span> :
+<span class="lineNum"> 78 </span> : /** Assignment is allowed. The internals are reference counted,
+<span class="lineNum"> 79 </span> : * so assignment is also cheap.
+<span class="lineNum"> 80 </span> : */
+<span class="lineNum"> 81 </span> : void operator=(const PostingIterator &amp;other);
+<span class="lineNum"> 82 </span> :
+<span class="lineNum"> 83 </span> : PostingIterator &amp; operator++();
+<span class="lineNum"> 84 </span> :
+<span class="lineNum"> 85 </span> : DocIDWrapper operator++(int) {
+<span class="lineNum"> 86 </span> : Xapian::docid tmp = **this;
+<span class="lineNum"> 87 </span> : operator++();
+<span class="lineNum"> 88 </span> : return DocIDWrapper(tmp);
+<span class="lineNum"> 89 </span> : }
+<span class="lineNum"> 90 </span> :
+<span class="lineNum"> 91 </span> : /** Skip the iterator to document did, or the first document after did
+<span class="lineNum"> 92 </span> : * if did isn't in the list of documents being iterated.
+<span class="lineNum"> 93 </span> : */
+<span class="lineNum"> 94 </span> : void skip_to(Xapian::docid did);
+<span class="lineNum"> 95 </span> :
+<span class="lineNum"> 96 </span> : // Get the weight of the posting at the current position: will
+<span class="lineNum"> 97 </span> : // need to set a weight object for this to work.
+<span class="lineNum"> 98 </span> : // Xapian::weight get_weight() const;
+<span class="lineNum"> 99 </span> :
+<span class="lineNum"> 100 </span> : /// Get the document id at the current position in the postlist.
+<span class="lineNum"> 101 </span> : Xapian::docid operator *() const;
+<span class="lineNum"> 102 </span> :
+<span class="lineNum"> 103 </span> : /** Get the length of the document at the current position in the
+<span class="lineNum"> 104 </span> : * postlist.
+<span class="lineNum"> 105 </span> : *
+<span class="lineNum"> 106 </span> : * This information may be stored in the postlist, in which case
+<span class="lineNum"> 107 </span> : * this lookup should be extremely fast (indeed, not require further
+<span class="lineNum"> 108 </span> : * disk access). If the information is not present in the postlist,
+<span class="lineNum"> 109 </span> : * it will be retrieved from the database, at a greater performance
+<span class="lineNum"> 110 </span> : * cost.
+<span class="lineNum"> 111 </span> : */
+<span class="lineNum"> 112 </span> : Xapian::doclength get_doclength() const;
+<span class="lineNum"> 113 </span> :
+<span class="lineNum"> 114 </span> : /** Get the within document frequency of the document at the
+<span class="lineNum"> 115 </span> : * current position in the postlist.
+<span class="lineNum"> 116 </span> : */
+<span class="lineNum"> 117 </span> : Xapian::termcount get_wdf() const;
+<span class="lineNum"> 118 </span> :
+<span class="lineNum"> 119 </span> : /** Return PositionIterator pointing to start of positionlist for
+<span class="lineNum"> 120 </span> : * current document.
+<span class="lineNum"> 121 </span> : */
+<span class="lineNum"> 122 </span> : PositionIterator positionlist_begin() const;
+<span class="lineNum"> 123 </span> :
+<span class="lineNum"> 124 </span> : /** Return PositionIterator pointing to end of positionlist for
+<span class="lineNum"> 125 </span> : * current document.
+<span class="lineNum"> 126 </span> : */
+<span class="lineNum"> 127 </span> : PositionIterator positionlist_end() const {
+<span class="lineNum"> 128 </span> : return PositionIterator(NULL);
+<span class="lineNum"> 129 </span> : }
+<span class="lineNum"> 130 </span> :
+<span class="lineNum"> 131 </span> : // Don't expose these methods here. A container iterator doesn't
+<span class="lineNum"> 132 </span> : // provide a method to find the size of the container...
+<span class="lineNum"> 133 </span> : // Xapian::doccount get_termfreq() const;
+<span class="lineNum"> 134 </span> : // Xapian::termcount get_collection_freq() const;
+<span class="lineNum"> 135 </span> :
+<span class="lineNum"> 136 </span> : /// Return a string describing this object.
+<span class="lineNum"> 137 </span> : std::string get_description() const;
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> : /// Allow use as an STL iterator
+<span class="lineNum"> 140 </span> : //@{
+<span class="lineNum"> 141 </span> : typedef std::input_iterator_tag iterator_category;
+<span class="lineNum"> 142 </span> : typedef Xapian::docid value_type;
+<span class="lineNum"> 143 </span> : typedef Xapian::doccount_diff difference_type;
+<span class="lineNum"> 144 </span> : typedef Xapian::docid * pointer;
+<span class="lineNum"> 145 </span> : typedef Xapian::docid &amp; reference;
+<span class="lineNum"> 146 </span> : //@}
+<span class="lineNum"> 147 </span> : };
+<span class="lineNum"> 148 </span> :
+<span class="lineNum"> 149 </span> : /// Test equality of two PostingIterators
+<span class="lineNum"> 150 </span><span class="lineCov"> 10 : inline bool operator==(const PostingIterator &amp;a, const PostingIterator &amp;b)</span>
+<span class="lineNum"> 151 </span> : {
+<span class="lineNum"> 152 </span><span class="lineCov"> 10 : return (a.internal.get() == b.internal.get());</span>
+<span class="lineNum"> 153 </span> : }
+<span class="lineNum"> 154 </span> :
+<span class="lineNum"> 155 </span> : /// Test inequality of two PostingIterators
+<span class="lineNum"> 156 </span> : inline bool operator!=(const PostingIterator &amp;a, const PostingIterator &amp;b)
+<span class="lineNum"> 157 </span> : {
+<span class="lineNum"> 158 </span> : return !(a == b);
+<span class="lineNum"> 159 </span> : }
+<span class="lineNum"> 160 </span> :
+<span class="lineNum"> 161 </span> : }
+<span class="lineNum"> 162 </span> :
+<span class="lineNum"> 163 </span> : #endif /* XAPIAN_INCLUDED_POSTINGITERATOR_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/xapian/query.h.gcov.html b/rep/usr/include/xapian/query.h.gcov.html
new file mode 100644
index 0000000..da0ec8e
--- /dev/null
+++ b/rep/usr/include/xapian/query.h.gcov.html
@@ -0,0 +1,520 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/xapian/query.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">usr/include/xapian</a> - query.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">11</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">72.7 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">8</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /** \file query.h
+<span class="lineNum"> 2 </span> : * \brief Classes for representing a query
+<span class="lineNum"> 3 </span> : */
+<span class="lineNum"> 4 </span> : /* Copyright 1999,2000,2001 BrightStation PLC
+<span class="lineNum"> 5 </span> : * Copyright 2002 Ananova Ltd
+<span class="lineNum"> 6 </span> : * Copyright 2003,2004,2005,2006,2007 Olly Betts
+<span class="lineNum"> 7 </span> : * Copyright 2006,2007,2008 Lemur Consulting Ltd
+<span class="lineNum"> 8 </span> : *
+<span class="lineNum"> 9 </span> : * This program is free software; you can redistribute it and/or
+<span class="lineNum"> 10 </span> : * modify it under the terms of the GNU General Public License as
+<span class="lineNum"> 11 </span> : * published by the Free Software Foundation; either version 2 of the
+<span class="lineNum"> 12 </span> : * License, or (at your option) any later version.
+<span class="lineNum"> 13 </span> : *
+<span class="lineNum"> 14 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 15 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 16 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 17 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 18 </span> : *
+<span class="lineNum"> 19 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 20 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 21 </span> : * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
+<span class="lineNum"> 22 </span> : * USA
+<span class="lineNum"> 23 </span> : */
+<span class="lineNum"> 24 </span> :
+<span class="lineNum"> 25 </span> : #ifndef XAPIAN_INCLUDED_QUERY_H
+<span class="lineNum"> 26 </span> : #define XAPIAN_INCLUDED_QUERY_H
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : #include &lt;string&gt;
+<span class="lineNum"> 29 </span> : #include &lt;vector&gt;
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : #include &lt;xapian/base.h&gt;
+<span class="lineNum"> 32 </span> : #include &lt;xapian/deprecated.h&gt;
+<span class="lineNum"> 33 </span> : #include &lt;xapian/types.h&gt;
+<span class="lineNum"> 34 </span> : #include &lt;xapian/termiterator.h&gt;
+<span class="lineNum"> 35 </span> : #include &lt;xapian/visibility.h&gt;
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : // FIXME: sort this out so we avoid exposing Xapian::Query::Internal
+<span class="lineNum"> 38 </span> : // - we need to at present so that the Xapian::Query's template ctors
+<span class="lineNum"> 39 </span> : // compile.
+<span class="lineNum"> 40 </span> : class LocalSubMatch;
+<span class="lineNum"> 41 </span> : class MultiMatch;
+<span class="lineNum"> 42 </span> : class QueryOptimiser;
+<span class="lineNum"> 43 </span> : struct SortPosName;
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : namespace Xapian {
+<span class="lineNum"> 46 </span> :
+<span class="lineNum"> 47 </span> : /** Class representing a query.
+<span class="lineNum"> 48 </span> : *
+<span class="lineNum"> 49 </span> : * Queries are represented as a tree of objects.
+<span class="lineNum"> 50 </span> : */
+<span class="lineNum"> 51 </span> : class XAPIAN_VISIBILITY_DEFAULT Query {
+<span class="lineNum"> 52 </span> : public:
+<span class="lineNum"> 53 </span> : /// Class holding details of the query
+<span class="lineNum"> 54 </span> : class Internal;
+<span class="lineNum"> 55 </span> : /// @private @internal Reference counted internals.
+<span class="lineNum"> 56 </span> : Xapian::Internal::RefCntPtr&lt;Internal&gt; internal;
+<span class="lineNum"> 57 </span> :
+<span class="lineNum"> 58 </span> : /// Enum of possible query operations
+<span class="lineNum"> 59 </span> : typedef enum {
+<span class="lineNum"> 60 </span> : /// Return iff both subqueries are satisfied
+<span class="lineNum"> 61 </span> : OP_AND,
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span> : /// Return if either subquery is satisfied
+<span class="lineNum"> 64 </span> : OP_OR,
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span> : /// Return if left but not right satisfied
+<span class="lineNum"> 67 </span> : OP_AND_NOT,
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span> : /// Return if one query satisfied, but not both
+<span class="lineNum"> 70 </span> : OP_XOR,
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span> : /// Return iff left satisfied, but use weights from both
+<span class="lineNum"> 73 </span> : OP_AND_MAYBE,
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span> : /// As AND, but use only weights from left subquery
+<span class="lineNum"> 76 </span> : OP_FILTER,
+<span class="lineNum"> 77 </span> :
+<span class="lineNum"> 78 </span> : /** Find occurrences of a list of terms with all the terms
+<span class="lineNum"> 79 </span> : * occurring within a specified window of positions.
+<span class="lineNum"> 80 </span> : * Each occurrence of a term must be at a different position,
+<span class="lineNum"> 81 </span> : * but the order they appear in is irrelevant.
+<span class="lineNum"> 82 </span> : *
+<span class="lineNum"> 83 </span> : * The window parameter should be specified for this operation,
+<span class="lineNum"> 84 </span> : * but will default to the number of terms in the list.
+<span class="lineNum"> 85 </span> : */
+<span class="lineNum"> 86 </span> : OP_NEAR,
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span> : /** Find occurrences of a list of terms with all the terms
+<span class="lineNum"> 89 </span> : * occurring within a specified window of positions, and all
+<span class="lineNum"> 90 </span> : * the terms appearing in the order specified. Each occurrence
+<span class="lineNum"> 91 </span> : * of a term must be at a different position.
+<span class="lineNum"> 92 </span> : *
+<span class="lineNum"> 93 </span> : * The window parameter should be specified for this operation,
+<span class="lineNum"> 94 </span> : * but will default to the number of terms in the list.
+<span class="lineNum"> 95 </span> : */
+<span class="lineNum"> 96 </span> : OP_PHRASE,
+<span class="lineNum"> 97 </span> :
+<span class="lineNum"> 98 </span> : /** Filter by a range test on a document value. */
+<span class="lineNum"> 99 </span> : OP_VALUE_RANGE,
+<span class="lineNum"> 100 </span> :
+<span class="lineNum"> 101 </span> : /** Scale the weight of a subquery by the specified factor.
+<span class="lineNum"> 102 </span> : *
+<span class="lineNum"> 103 </span> : * A factor of 0 means this subquery will contribute no weight to
+<span class="lineNum"> 104 </span> : * the query - it will act as a purely boolean subquery.
+<span class="lineNum"> 105 </span> : *
+<span class="lineNum"> 106 </span> : * If the factor is negative, Xapian::InvalidArgumentError will
+<span class="lineNum"> 107 </span> : * be thrown.
+<span class="lineNum"> 108 </span> : */
+<span class="lineNum"> 109 </span> : OP_SCALE_WEIGHT,
+<span class="lineNum"> 110 </span> :
+<span class="lineNum"> 111 </span> : /** Select an elite set from the subqueries, and perform
+<span class="lineNum"> 112 </span> : * a query with these combined as an OR query.
+<span class="lineNum"> 113 </span> : */
+<span class="lineNum"> 114 </span> : OP_ELITE_SET,
+<span class="lineNum"> 115 </span> :
+<span class="lineNum"> 116 </span> : /** Filter by a greater-than-or-equal test on a document value. */
+<span class="lineNum"> 117 </span> : OP_VALUE_GE,
+<span class="lineNum"> 118 </span> :
+<span class="lineNum"> 119 </span> : /** Filter by a less-than-or-equal test on a document value. */
+<span class="lineNum"> 120 </span> : OP_VALUE_LE
+<span class="lineNum"> 121 </span> : } op;
+<span class="lineNum"> 122 </span> :
+<span class="lineNum"> 123 </span> : /** Copy constructor. */
+<span class="lineNum"> 124 </span> : Query(const Query &amp; copyme);
+<span class="lineNum"> 125 </span> :
+<span class="lineNum"> 126 </span> : /** Assignment. */
+<span class="lineNum"> 127 </span> : Query &amp; operator=(const Query &amp; copyme);
+<span class="lineNum"> 128 </span> :
+<span class="lineNum"> 129 </span> : /** Default constructor: makes an empty query which matches no
+<span class="lineNum"> 130 </span> : * documents.
+<span class="lineNum"> 131 </span> : *
+<span class="lineNum"> 132 </span> : * Also useful for defining a Query object to be assigned to later.
+<span class="lineNum"> 133 </span> : *
+<span class="lineNum"> 134 </span> : * An exception will be thrown if an attempt is made to use an
+<span class="lineNum"> 135 </span> : * undefined query when building up a composite query.
+<span class="lineNum"> 136 </span> : */
+<span class="lineNum"> 137 </span> : Query();
+<span class="lineNum"> 138 </span> :
+<span class="lineNum"> 139 </span> : /** Destructor. */
+<span class="lineNum"> 140 </span> : ~Query();
+<span class="lineNum"> 141 </span> :
+<span class="lineNum"> 142 </span> : /** A query consisting of a single term. */
+<span class="lineNum"> 143 </span> : Query(const std::string &amp; tname_, Xapian::termcount wqf_ = 1,
+<span class="lineNum"> 144 </span> : Xapian::termpos pos_ = 0);
+<span class="lineNum"> 145 </span> :
+<span class="lineNum"> 146 </span> : /** A query consisting of two subqueries, opp-ed together. */
+<span class="lineNum"> 147 </span> : Query(Query::op op_, const Query &amp; left, const Query &amp; right);
+<span class="lineNum"> 148 </span> :
+<span class="lineNum"> 149 </span> : /** A query consisting of two termnames opp-ed together. */
+<span class="lineNum"> 150 </span> : Query(Query::op op_,
+<span class="lineNum"> 151 </span> : const std::string &amp; left, const std::string &amp; right);
+<span class="lineNum"> 152 </span> :
+<span class="lineNum"> 153 </span> : /** Combine a number of Xapian::Query-s with the specified operator.
+<span class="lineNum"> 154 </span> : *
+<span class="lineNum"> 155 </span> : * The Xapian::Query objects are specified with begin and end
+<span class="lineNum"> 156 </span> : * iterators.
+<span class="lineNum"> 157 </span> : *
+<span class="lineNum"> 158 </span> : * AND, OR, NEAR and PHRASE can take any number of subqueries.
+<span class="lineNum"> 159 </span> : * Other operators take exactly two subqueries.
+<span class="lineNum"> 160 </span> : *
+<span class="lineNum"> 161 </span> : * The iterators may be to Xapian::Query objects, pointers to
+<span class="lineNum"> 162 </span> : * Xapian::Query objects, or termnames (std::string-s).
+<span class="lineNum"> 163 </span> : *
+<span class="lineNum"> 164 </span> : * For NEAR and PHRASE, a window size can be specified in parameter.
+<span class="lineNum"> 165 </span> : *
+<span class="lineNum"> 166 </span> : * For ELITE_SET, the elite set size can be specified in parameter.
+<span class="lineNum"> 167 </span> : */
+<span class="lineNum"> 168 </span> : template &lt;class Iterator&gt;
+<span class="lineNum"> 169 </span> : Query(Query::op op_, Iterator qbegin, Iterator qend,
+<span class="lineNum"> 170 </span> : Xapian::termcount parameter = 0);
+<span class="lineNum"> 171 </span> :
+<span class="lineNum"> 172 </span> : /** Apply the specified operator to a single Xapian::Query object.
+<span class="lineNum"> 173 </span> : *
+<span class="lineNum"> 174 </span> : * @deprecated This method is deprecated because it isn't useful,
+<span class="lineNum"> 175 </span> : * since none of the current query operators can be usefully
+<span class="lineNum"> 176 </span> : * applied to a single subquery with a parameter value.
+<span class="lineNum"> 177 </span> : */
+<span class="lineNum"> 178 </span> : XAPIAN_DEPRECATED(Query(Query::op op_, Xapian::Query q));
+<span class="lineNum"> 179 </span> :
+<span class="lineNum"> 180 </span> : /** Apply the specified operator to a single Xapian::Query object, with
+<span class="lineNum"> 181 </span> : * a double parameter.
+<span class="lineNum"> 182 </span> : */
+<span class="lineNum"> 183 </span> : Query(Query::op op_, Xapian::Query q, double parameter);
+<span class="lineNum"> 184 </span> :
+<span class="lineNum"> 185 </span> : /** Construct a value range query on a document value.
+<span class="lineNum"> 186 </span> : *
+<span class="lineNum"> 187 </span> : * A value range query matches those documents which have a value
+<span class="lineNum"> 188 </span> : * stored in the slot given by @a valno which is in the range
+<span class="lineNum"> 189 </span> : * specified by @a begin and @a end (in lexicographical
+<span class="lineNum"> 190 </span> : * order), including the endpoints.
+<span class="lineNum"> 191 </span> : *
+<span class="lineNum"> 192 </span> : * @param op_ The operator to use for the query. Currently, must
+<span class="lineNum"> 193 </span> : * be OP_VALUE_RANGE.
+<span class="lineNum"> 194 </span> : * @param valno The slot number to get the value from.
+<span class="lineNum"> 195 </span> : * @param begin The start of the range.
+<span class="lineNum"> 196 </span> : * @param end The end of the range.
+<span class="lineNum"> 197 </span> : */
+<span class="lineNum"> 198 </span> : Query(Query::op op_, Xapian::valueno valno,
+<span class="lineNum"> 199 </span> : const std::string &amp;begin, const std::string &amp;end);
+<span class="lineNum"> 200 </span> :
+<span class="lineNum"> 201 </span> : /** Construct a value comparison query on a document value.
+<span class="lineNum"> 202 </span> : *
+<span class="lineNum"> 203 </span> : * This query matches those documents which have a value stored in the
+<span class="lineNum"> 204 </span> : * slot given by @a valno which compares, as specified by the
+<span class="lineNum"> 205 </span> : * operator, to @a value.
+<span class="lineNum"> 206 </span> : *
+<span class="lineNum"> 207 </span> : * @param op_ The operator to use for the query. Currently, must
+<span class="lineNum"> 208 </span> : * be OP_VALUE_GE or OP_VALUE_LE.
+<span class="lineNum"> 209 </span> : * @param valno The slot number to get the value from.
+<span class="lineNum"> 210 </span> : * @param value The value to compare.
+<span class="lineNum"> 211 </span> : */
+<span class="lineNum"> 212 </span> : Query(Query::op op_, Xapian::valueno valno, const std::string &amp;value);
+<span class="lineNum"> 213 </span> :
+<span class="lineNum"> 214 </span> : /** A query which matches all documents in the database. */
+<span class="lineNum"> 215 </span> : static Xapian::Query MatchAll;
+<span class="lineNum"> 216 </span> :
+<span class="lineNum"> 217 </span> : /** A query which matches no documents. */
+<span class="lineNum"> 218 </span> : static Xapian::Query MatchNothing;
+<span class="lineNum"> 219 </span> :
+<span class="lineNum"> 220 </span> : /** Get the length of the query, used by some ranking formulae.
+<span class="lineNum"> 221 </span> : * This value is calculated automatically - if you want to override
+<span class="lineNum"> 222 </span> : * it you can pass a different value to Enquire::set_query().
+<span class="lineNum"> 223 </span> : */
+<span class="lineNum"> 224 </span> : Xapian::termcount get_length() const;
+<span class="lineNum"> 225 </span> :
+<span class="lineNum"> 226 </span> : /** Return a Xapian::TermIterator returning all the terms in the query,
+<span class="lineNum"> 227 </span> : * in order of termpos. If multiple terms have the same term
+<span class="lineNum"> 228 </span> : * position, their order is unspecified. Duplicates (same term and
+<span class="lineNum"> 229 </span> : * termpos) will be removed.
+<span class="lineNum"> 230 </span> : */
+<span class="lineNum"> 231 </span> : TermIterator get_terms_begin() const;
+<span class="lineNum"> 232 </span> :
+<span class="lineNum"> 233 </span> : /** Return a Xapian::TermIterator to the end of the list of terms in the
+<span class="lineNum"> 234 </span> : * query.
+<span class="lineNum"> 235 </span> : */
+<span class="lineNum"> 236 </span> : TermIterator get_terms_end() const {
+<span class="lineNum"> 237 </span> : return TermIterator(NULL);
+<span class="lineNum"> 238 </span> : }
+<span class="lineNum"> 239 </span> :
+<span class="lineNum"> 240 </span> : /** Test if the query is empty (i.e. was constructed using
+<span class="lineNum"> 241 </span> : * the default ctor or with an empty iterator ctor).
+<span class="lineNum"> 242 </span> : */
+<span class="lineNum"> 243 </span> : bool empty() const;
+<span class="lineNum"> 244 </span> :
+<span class="lineNum"> 245 </span> : /// Return a string describing this object.
+<span class="lineNum"> 246 </span> : std::string get_description() const;
+<span class="lineNum"> 247 </span> :
+<span class="lineNum"> 248 </span> : private:
+<span class="lineNum"> 249 </span> : void add_subquery(const Query &amp; subq);
+<span class="lineNum"> 250 </span> : void add_subquery(const Query * subq);
+<span class="lineNum"> 251 </span> : void add_subquery(const std::string &amp; tname);
+<span class="lineNum"> 252 </span> : void start_construction(Query::op op_, Xapian::termcount parameter);
+<span class="lineNum"> 253 </span> : void end_construction();
+<span class="lineNum"> 254 </span> : void abort_construction();
+<span class="lineNum"> 255 </span> : };
+<span class="lineNum"> 256 </span> :
+<span class="lineNum"> 257 </span> : template &lt;class Iterator&gt;
+<span class="lineNum"> 258 </span><span class="lineCov"> 19 : Query::Query(Query::op op_, Iterator qbegin, Iterator qend, termcount parameter)</span>
+<span class="lineNum"> 259 </span><span class="lineCov"> 19 : : internal(0)</span>
+<span class="lineNum"> 260 </span> : {
+<span class="lineNum"> 261 </span> : try {
+<span class="lineNum"> 262 </span><span class="lineCov"> 19 : start_construction(op_, parameter);</span>
+<span class="lineNum"> 263 </span> :
+<span class="lineNum"> 264 </span> : /* Add all the elements */
+<span class="lineNum"> 265 </span><span class="lineCov"> 61 : while (qbegin != qend) {</span>
+<span class="lineNum"> 266 </span><span class="lineCov"> 23 : add_subquery(*qbegin);</span>
+<span class="lineNum"> 267 </span><span class="lineCov"> 23 : ++qbegin;</span>
+<span class="lineNum"> 268 </span> : }
+<span class="lineNum"> 269 </span> :
+<span class="lineNum"> 270 </span><span class="lineCov"> 19 : end_construction();</span>
+<span class="lineNum"> 271 </span><span class="lineNoCov"> 0 : } catch (...) {</span>
+<span class="lineNum"> 272 </span><span class="lineNoCov"> 0 : abort_construction();</span>
+<span class="lineNum"> 273 </span><span class="lineNoCov"> 0 : throw;</span>
+<span class="lineNum"> 274 </span> : }
+<span class="lineNum"> 275 </span><span class="lineCov"> 19 : }</span>
+<span class="lineNum"> 276 </span> :
+<span class="lineNum"> 277 </span> : /// @internal Internal class, implementing most of Xapian::Query.
+<span class="lineNum"> 278 </span> : class XAPIAN_VISIBILITY_DEFAULT Query::Internal : public Xapian::Internal::RefCntBase {
+<span class="lineNum"> 279 </span> : friend class ::LocalSubMatch;
+<span class="lineNum"> 280 </span> : friend class ::MultiMatch;
+<span class="lineNum"> 281 </span> : friend class ::QueryOptimiser;
+<span class="lineNum"> 282 </span> : friend struct ::SortPosName;
+<span class="lineNum"> 283 </span> : friend class Query;
+<span class="lineNum"> 284 </span> : public:
+<span class="lineNum"> 285 </span> : static const int OP_LEAF = -1;
+<span class="lineNum"> 286 </span> :
+<span class="lineNum"> 287 </span> : /// The container type for storing pointers to subqueries
+<span class="lineNum"> 288 </span> : typedef std::vector&lt;Internal *&gt; subquery_list;
+<span class="lineNum"> 289 </span> :
+<span class="lineNum"> 290 </span> : /// Type storing the operation
+<span class="lineNum"> 291 </span> : typedef int op_t;
+<span class="lineNum"> 292 </span> :
+<span class="lineNum"> 293 </span> : private:
+<span class="lineNum"> 294 </span> : /// Operation to be performed at this node
+<span class="lineNum"> 295 </span> : Xapian::Query::Internal::op_t op;
+<span class="lineNum"> 296 </span> :
+<span class="lineNum"> 297 </span> : /// Sub queries on which to perform operation
+<span class="lineNum"> 298 </span> : subquery_list subqs;
+<span class="lineNum"> 299 </span> :
+<span class="lineNum"> 300 </span> : /** For NEAR or PHRASE, how close terms must be to match: all terms
+<span class="lineNum"> 301 </span> : * within the operation must occur in a window of this size.
+<span class="lineNum"> 302 </span> : *
+<span class="lineNum"> 303 </span> : * For ELITE_SET, the number of terms to select from those specified.
+<span class="lineNum"> 304 </span> : *
+<span class="lineNum"> 305 </span> : * For RANGE, the value number to apply the range test to.
+<span class="lineNum"> 306 </span> : */
+<span class="lineNum"> 307 </span> : Xapian::termcount parameter;
+<span class="lineNum"> 308 </span> :
+<span class="lineNum"> 309 </span> : /** Term that this node represents, or start of a range query.
+<span class="lineNum"> 310 </span> : *
+<span class="lineNum"> 311 </span> : * For a leaf node, this holds the term name. For an OP_VALUE_RANGE
+<span class="lineNum"> 312 </span> : * query this holds the start of the range. For an OP_VALUE_GE or
+<span class="lineNum"> 313 </span> : * OP_VALUE_LE query this holds the value to compare against.
+<span class="lineNum"> 314 </span> : */
+<span class="lineNum"> 315 </span> : std::string tname;
+<span class="lineNum"> 316 </span> :
+<span class="lineNum"> 317 </span> : /** Used to store the end of a range query. */
+<span class="lineNum"> 318 </span> : std::string str_parameter;
+<span class="lineNum"> 319 </span> :
+<span class="lineNum"> 320 </span> : /// Position in query of this term - leaf node only
+<span class="lineNum"> 321 </span> : Xapian::termpos term_pos;
+<span class="lineNum"> 322 </span> :
+<span class="lineNum"> 323 </span> : /// Within query frequency of this term - leaf node only
+<span class="lineNum"> 324 </span> : Xapian::termcount wqf;
+<span class="lineNum"> 325 </span> :
+<span class="lineNum"> 326 </span> : /** swap the contents of this with another Xapian::Query::Internal,
+<span class="lineNum"> 327 </span> : * in a way which is guaranteed not to throw. This is
+<span class="lineNum"> 328 </span> : * used with the assignment operator to make it exception
+<span class="lineNum"> 329 </span> : * safe.
+<span class="lineNum"> 330 </span> : * It's important to adjust swap with any addition of
+<span class="lineNum"> 331 </span> : * member variables!
+<span class="lineNum"> 332 </span> : */
+<span class="lineNum"> 333 </span> : void swap(Query::Internal &amp;other);
+<span class="lineNum"> 334 </span> :
+<span class="lineNum"> 335 </span> : /// Copy another Xapian::Query::Internal into self.
+<span class="lineNum"> 336 </span> : void initialise_from_copy(const Query::Internal &amp; copyme);
+<span class="lineNum"> 337 </span> :
+<span class="lineNum"> 338 </span> : void accumulate_terms(
+<span class="lineNum"> 339 </span> : std::vector&lt;std::pair&lt;std::string, Xapian::termpos&gt; &gt; &amp;terms) const;
+<span class="lineNum"> 340 </span> :
+<span class="lineNum"> 341 </span> : /** Simplify the query.
+<span class="lineNum"> 342 </span> : * For example, an AND query with only one subquery would become the
+<span class="lineNum"> 343 </span> : * subquery itself.
+<span class="lineNum"> 344 </span> : */
+<span class="lineNum"> 345 </span> : Internal * simplify_query();
+<span class="lineNum"> 346 </span> :
+<span class="lineNum"> 347 </span> : /** Perform checks that query is valid. (eg, has correct number of
+<span class="lineNum"> 348 </span> : * sub queries.) Throw an exception if not. This is initially called
+<span class="lineNum"> 349 </span> : * on the query before any simplifications have been made, and after
+<span class="lineNum"> 350 </span> : * simplications.
+<span class="lineNum"> 351 </span> : */
+<span class="lineNum"> 352 </span> : void validate_query() const;
+<span class="lineNum"> 353 </span> :
+<span class="lineNum"> 354 </span> : /** Simplify any matchnothing subqueries, either eliminating them,
+<span class="lineNum"> 355 </span> : * or setting this query to matchnothing, depending on the query
+<span class="lineNum"> 356 </span> : * operator. Returns true if simplification resulted in a
+<span class="lineNum"> 357 </span> : * matchnothing query.
+<span class="lineNum"> 358 </span> : */
+<span class="lineNum"> 359 </span> : bool simplify_matchnothing();
+<span class="lineNum"> 360 </span> :
+<span class="lineNum"> 361 </span> : /** Get a string describing the given query type.
+<span class="lineNum"> 362 </span> : */
+<span class="lineNum"> 363 </span> : static std::string get_op_name(Xapian::Query::Internal::op_t op);
+<span class="lineNum"> 364 </span> :
+<span class="lineNum"> 365 </span> : /** Collapse the subqueries together if appropriate.
+<span class="lineNum"> 366 </span> : */
+<span class="lineNum"> 367 </span> : void collapse_subqs();
+<span class="lineNum"> 368 </span> :
+<span class="lineNum"> 369 </span> : /** Flatten a query structure, by changing, for example,
+<span class="lineNum"> 370 </span> : * &quot;A NEAR (B AND C)&quot; to &quot;(A NEAR B) AND (A NEAR C)&quot;
+<span class="lineNum"> 371 </span> : */
+<span class="lineNum"> 372 </span> : void flatten_subqs();
+<span class="lineNum"> 373 </span> :
+<span class="lineNum"> 374 </span> : /** Implementation of serialisation; called recursively.
+<span class="lineNum"> 375 </span> : */
+<span class="lineNum"> 376 </span> : std::string serialise(Xapian::termpos &amp; curpos) const;
+<span class="lineNum"> 377 </span> :
+<span class="lineNum"> 378 </span> : public:
+<span class="lineNum"> 379 </span> : /** Copy constructor. */
+<span class="lineNum"> 380 </span> : Internal(const Query::Internal &amp; copyme);
+<span class="lineNum"> 381 </span> :
+<span class="lineNum"> 382 </span> : /** Assignment. */
+<span class="lineNum"> 383 </span> : void operator=(const Query::Internal &amp; copyme);
+<span class="lineNum"> 384 </span> :
+<span class="lineNum"> 385 </span> : /** A query consisting of a single term. */
+<span class="lineNum"> 386 </span> : explicit Internal(const std::string &amp; tname_, Xapian::termcount wqf_ = 1,
+<span class="lineNum"> 387 </span> : Xapian::termpos term_pos_ = 0);
+<span class="lineNum"> 388 </span> :
+<span class="lineNum"> 389 </span> : /** Create internals given only the operator and a parameter. */
+<span class="lineNum"> 390 </span> : Internal(op_t op_, Xapian::termcount parameter);
+<span class="lineNum"> 391 </span> :
+<span class="lineNum"> 392 </span> : /** Construct a range query on a document value. */
+<span class="lineNum"> 393 </span> : Internal(op_t op_, Xapian::valueno valno,
+<span class="lineNum"> 394 </span> : const std::string &amp;begin, const std::string &amp;end);
+<span class="lineNum"> 395 </span> :
+<span class="lineNum"> 396 </span> : /** Construct a value greater-than-or-equal query on a document value.
+<span class="lineNum"> 397 </span> : */
+<span class="lineNum"> 398 </span> : Internal(op_t op_, Xapian::valueno valno, const std::string &amp;value);
+<span class="lineNum"> 399 </span> :
+<span class="lineNum"> 400 </span> : /** Destructor. */
+<span class="lineNum"> 401 </span> : ~Internal();
+<span class="lineNum"> 402 </span> :
+<span class="lineNum"> 403 </span> : static Xapian::Query::Internal * unserialise(const std::string &amp;s);
+<span class="lineNum"> 404 </span> :
+<span class="lineNum"> 405 </span> : /** Add a subquery.
+<span class="lineNum"> 406 </span> : */
+<span class="lineNum"> 407 </span> : void add_subquery(const Query::Internal * subq);
+<span class="lineNum"> 408 </span> :
+<span class="lineNum"> 409 </span> : void set_dbl_parameter(double dbl_parameter_);
+<span class="lineNum"> 410 </span> :
+<span class="lineNum"> 411 </span> : double get_dbl_parameter() const;
+<span class="lineNum"> 412 </span> :
+<span class="lineNum"> 413 </span> : /** Finish off the construction.
+<span class="lineNum"> 414 </span> : */
+<span class="lineNum"> 415 </span> : Query::Internal * end_construction();
+<span class="lineNum"> 416 </span> :
+<span class="lineNum"> 417 </span> : /** Return a string in an easily parsed form
+<span class="lineNum"> 418 </span> : * which contains all the information in a query.
+<span class="lineNum"> 419 </span> : */
+<span class="lineNum"> 420 </span> : std::string serialise() const {
+<span class="lineNum"> 421 </span> : Xapian::termpos curpos = 1;
+<span class="lineNum"> 422 </span> : return serialise(curpos);
+<span class="lineNum"> 423 </span> : }
+<span class="lineNum"> 424 </span> :
+<span class="lineNum"> 425 </span> : /// Return a string describing this object.
+<span class="lineNum"> 426 </span> : std::string get_description() const;
+<span class="lineNum"> 427 </span> :
+<span class="lineNum"> 428 </span> : /** Get the numeric parameter used in this query.
+<span class="lineNum"> 429 </span> : *
+<span class="lineNum"> 430 </span> : * This is used by the QueryParser to get the value number for
+<span class="lineNum"> 431 </span> : * VALUE_RANGE queries. It should be replaced by a public method on
+<span class="lineNum"> 432 </span> : * the Query class at some point, but the API which should be used for
+<span class="lineNum"> 433 </span> : * that is unclear, so this is a temporary workaround.
+<span class="lineNum"> 434 </span> : */
+<span class="lineNum"> 435 </span> : Xapian::termcount get_parameter() const { return parameter; }
+<span class="lineNum"> 436 </span> :
+<span class="lineNum"> 437 </span> : /** Get the length of the query, used by some ranking formulae.
+<span class="lineNum"> 438 </span> : * This value is calculated automatically - if you want to override
+<span class="lineNum"> 439 </span> : * it you can pass a different value to Enquire::set_query().
+<span class="lineNum"> 440 </span> : */
+<span class="lineNum"> 441 </span> : Xapian::termcount get_length() const;
+<span class="lineNum"> 442 </span> :
+<span class="lineNum"> 443 </span> : /** Return an iterator over all the terms in the query,
+<span class="lineNum"> 444 </span> : * in order of termpos. If multiple terms have the same term
+<span class="lineNum"> 445 </span> : * position, their order is unspecified. Duplicates (same term and
+<span class="lineNum"> 446 </span> : * termpos) will be removed.
+<span class="lineNum"> 447 </span> : */
+<span class="lineNum"> 448 </span> : TermIterator get_terms() const;
+<span class="lineNum"> 449 </span> : };
+<span class="lineNum"> 450 </span> :
+<span class="lineNum"> 451 </span> : }
+<span class="lineNum"> 452 </span> :
+<span class="lineNum"> 453 </span> : #endif /* XAPIAN_INCLUDED_QUERY_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/xapian/termgenerator.h.gcov.html b/rep/usr/include/xapian/termgenerator.h.gcov.html
new file mode 100644
index 0000000..dc59577
--- /dev/null
+++ b/rep/usr/include/xapian/termgenerator.h.gcov.html
@@ -0,0 +1,226 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/xapian/termgenerator.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">usr/include/xapian</a> - termgenerator.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">2</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /** @file termgenerator.h
+<span class="lineNum"> 2 </span> : * @brief parse free text and generate terms
+<span class="lineNum"> 3 </span> : */
+<span class="lineNum"> 4 </span> : /* Copyright (C) 2007 Olly Betts
+<span class="lineNum"> 5 </span> : *
+<span class="lineNum"> 6 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 7 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 8 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 9 </span> : * (at your option) any later version.
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 12 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 13 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 14 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 17 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 18 </span> : * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+<span class="lineNum"> 19 </span> : */
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : #ifndef XAPIAN_INCLUDED_TERMGENERATOR_H
+<span class="lineNum"> 22 </span> : #define XAPIAN_INCLUDED_TERMGENERATOR_H
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : #include &lt;xapian/base.h&gt;
+<span class="lineNum"> 25 </span> : #include &lt;xapian/types.h&gt;
+<span class="lineNum"> 26 </span> : #include &lt;xapian/unicode.h&gt;
+<span class="lineNum"> 27 </span> : #include &lt;xapian/visibility.h&gt;
+<span class="lineNum"> 28 </span> :
+<span class="lineNum"> 29 </span> : #include &lt;string&gt;
+<span class="lineNum"> 30 </span> :
+<span class="lineNum"> 31 </span> : namespace Xapian {
+<span class="lineNum"> 32 </span> :
+<span class="lineNum"> 33 </span> : class Document;
+<span class="lineNum"> 34 </span> : class Stem;
+<span class="lineNum"> 35 </span> : class Stopper;
+<span class="lineNum"> 36 </span> : class WritableDatabase;
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : /** Parses a piece of text and generate terms.
+<span class="lineNum"> 39 </span> : *
+<span class="lineNum"> 40 </span> : * This module takes a piece of text and parses it to produce words which are
+<span class="lineNum"> 41 </span> : * then used to generate suitable terms for indexing. The terms generated are
+<span class="lineNum"> 42 </span> : * suitable for use with Query objects produced by the QueryParser class.
+<span class="lineNum"> 43 </span> : */
+<span class="lineNum"> 44 </span> : class XAPIAN_VISIBILITY_DEFAULT TermGenerator {
+<span class="lineNum"> 45 </span> : public:
+<span class="lineNum"> 46 </span> : /// @private @internal Class representing the TermGenerator internals.
+<span class="lineNum"> 47 </span> : class Internal;
+<span class="lineNum"> 48 </span> : /// @private @internal Reference counted internals.
+<span class="lineNum"> 49 </span> : Xapian::Internal::RefCntPtr&lt;Internal&gt; internal;
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> : /// Copy constructor.
+<span class="lineNum"> 52 </span> : TermGenerator(const TermGenerator &amp; o);
+<span class="lineNum"> 53 </span> :
+<span class="lineNum"> 54 </span> : /// Assignment.
+<span class="lineNum"> 55 </span> : TermGenerator &amp; operator=(const TermGenerator &amp; o);
+<span class="lineNum"> 56 </span> :
+<span class="lineNum"> 57 </span> : /// Default constructor.
+<span class="lineNum"> 58 </span> : TermGenerator();
+<span class="lineNum"> 59 </span> :
+<span class="lineNum"> 60 </span> : /// Destructor.
+<span class="lineNum"> 61 </span> : ~TermGenerator();
+<span class="lineNum"> 62 </span> :
+<span class="lineNum"> 63 </span> : /// Set the Xapian::Stem object to be used for generating stemmed terms.
+<span class="lineNum"> 64 </span> : void set_stemmer(const Xapian::Stem &amp; stemmer);
+<span class="lineNum"> 65 </span> :
+<span class="lineNum"> 66 </span> : /// Set the Xapian::Stopper object to be used for identifying stopwords.
+<span class="lineNum"> 67 </span> : void set_stopper(const Xapian::Stopper *stop = NULL);
+<span class="lineNum"> 68 </span> :
+<span class="lineNum"> 69 </span> : /// Set the current document.
+<span class="lineNum"> 70 </span> : void set_document(const Xapian::Document &amp; doc);
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span> : /// Get the current document.
+<span class="lineNum"> 73 </span> : const Xapian::Document &amp; get_document() const;
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span> : /// Set the database to index spelling data to.
+<span class="lineNum"> 76 </span> : void set_database(const Xapian::WritableDatabase &amp;db);
+<span class="lineNum"> 77 </span> :
+<span class="lineNum"> 78 </span> : /// Flags to OR together and pass to TermGenerator::set_flags().
+<span class="lineNum"> 79 </span> : enum flags {
+<span class="lineNum"> 80 </span> : /// Index data required for spelling correction.
+<span class="lineNum"> 81 </span> : FLAG_SPELLING = 128 // Value matches QueryParser flag.
+<span class="lineNum"> 82 </span> : };
+<span class="lineNum"> 83 </span> :
+<span class="lineNum"> 84 </span> : /** Set flags.
+<span class="lineNum"> 85 </span> : *
+<span class="lineNum"> 86 </span> : * The new value of flags is: (flags &amp; mask) ^ toggle
+<span class="lineNum"> 87 </span> : *
+<span class="lineNum"> 88 </span> : * To just set the flags, pass the new flags in toggle and the
+<span class="lineNum"> 89 </span> : * default value for mask.
+<span class="lineNum"> 90 </span> : *
+<span class="lineNum"> 91 </span> : * @param toggle Flags to XOR.
+<span class="lineNum"> 92 </span> : * @param mask Flags to AND with first.
+<span class="lineNum"> 93 </span> : *
+<span class="lineNum"> 94 </span> : * @return The old flags setting.
+<span class="lineNum"> 95 </span> : */
+<span class="lineNum"> 96 </span> : flags set_flags(flags toggle, flags mask = flags(0));
+<span class="lineNum"> 97 </span> :
+<span class="lineNum"> 98 </span> : /** Index some text.
+<span class="lineNum"> 99 </span> : *
+<span class="lineNum"> 100 </span> : * @param weight The wdf increment (default 1).
+<span class="lineNum"> 101 </span> : * @param prefix The term prefix to use (default is no prefix).
+<span class="lineNum"> 102 </span> : */
+<span class="lineNum"> 103 </span> : void index_text(const Xapian::Utf8Iterator &amp; itor,
+<span class="lineNum"> 104 </span> : Xapian::termcount weight = 1,
+<span class="lineNum"> 105 </span> : const std::string &amp; prefix = &quot;&quot;);
+<span class="lineNum"> 106 </span> :
+<span class="lineNum"> 107 </span> : /** Index some text in a std::string.
+<span class="lineNum"> 108 </span> : *
+<span class="lineNum"> 109 </span> : * @param weight The wdf increment (default 1).
+<span class="lineNum"> 110 </span> : * @param prefix The term prefix to use (default is no prefix).
+<span class="lineNum"> 111 </span> : */
+<span class="lineNum"> 112 </span> : void index_text(const std::string &amp; text,
+<span class="lineNum"> 113 </span> : Xapian::termcount weight = 1,
+<span class="lineNum"> 114 </span> : const std::string &amp; prefix = &quot;&quot;) {
+<span class="lineNum"> 115 </span> : return index_text(Utf8Iterator(text), weight, prefix);
+<span class="lineNum"> 116 </span> : }
+<span class="lineNum"> 117 </span> :
+<span class="lineNum"> 118 </span> : /** Index some text without positional information.
+<span class="lineNum"> 119 </span> : *
+<span class="lineNum"> 120 </span> : * Just like index_text, but no positional information is generated. This
+<span class="lineNum"> 121 </span> : * means that the database will be significantly smaller, but that phrase
+<span class="lineNum"> 122 </span> : * searching and NEAR won't be supported.
+<span class="lineNum"> 123 </span> : */
+<span class="lineNum"> 124 </span> : void index_text_without_positions(const Xapian::Utf8Iterator &amp; itor,
+<span class="lineNum"> 125 </span> : Xapian::termcount weight = 1,
+<span class="lineNum"> 126 </span> : const std::string &amp; prefix = &quot;&quot;);
+<span class="lineNum"> 127 </span> :
+<span class="lineNum"> 128 </span> : /** Index some text in a std::string without positional information.
+<span class="lineNum"> 129 </span> : *
+<span class="lineNum"> 130 </span> : * Just like index_text, but no positional information is generated. This
+<span class="lineNum"> 131 </span> : * means that the database will be significantly smaller, but that phrase
+<span class="lineNum"> 132 </span> : * searching and NEAR won't be supported.
+<span class="lineNum"> 133 </span> : */
+<span class="lineNum"> 134 </span> : void index_text_without_positions(const std::string &amp; text,
+<span class="lineNum"> 135 </span> : Xapian::termcount weight = 1,
+<span class="lineNum"> 136 </span><span class="lineCov"> 5208 : const std::string &amp; prefix = &quot;&quot;) {</span>
+<span class="lineNum"> 137 </span><span class="lineCov"> 5208 : return index_text_without_positions(Utf8Iterator(text), weight, prefix);</span>
+<span class="lineNum"> 138 </span> : }
+<span class="lineNum"> 139 </span> :
+<span class="lineNum"> 140 </span> : /** Increase the termpos used by index_text by @a delta.
+<span class="lineNum"> 141 </span> : *
+<span class="lineNum"> 142 </span> : * This can be used to prevent phrase searches from spanning two
+<span class="lineNum"> 143 </span> : * unconnected blocks of text (e.g. the title and body text).
+<span class="lineNum"> 144 </span> : */
+<span class="lineNum"> 145 </span> : void increase_termpos(Xapian::termcount delta = 100);
+<span class="lineNum"> 146 </span> :
+<span class="lineNum"> 147 </span> : /// Get the current term position.
+<span class="lineNum"> 148 </span> : Xapian::termcount get_termpos() const;
+<span class="lineNum"> 149 </span> :
+<span class="lineNum"> 150 </span> : /// Set the current term position.
+<span class="lineNum"> 151 </span> : void set_termpos(Xapian::termcount termpos);
+<span class="lineNum"> 152 </span> :
+<span class="lineNum"> 153 </span> : /// Return a string describing this object.
+<span class="lineNum"> 154 </span> : std::string get_description() const;
+<span class="lineNum"> 155 </span> : };
+<span class="lineNum"> 156 </span> :
+<span class="lineNum"> 157 </span> : }
+<span class="lineNum"> 158 </span> :
+<span class="lineNum"> 159 </span> : #endif // XAPIAN_INCLUDED_TERMGENERATOR_H
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/xapian/termiterator.h.gcov.html b/rep/usr/include/xapian/termiterator.h.gcov.html
new file mode 100644
index 0000000..fbdbc0b
--- /dev/null
+++ b/rep/usr/include/xapian/termiterator.h.gcov.html
@@ -0,0 +1,216 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/xapian/termiterator.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">usr/include/xapian</a> - termiterator.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">4</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">100.0 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">4</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /** \file termiterator.h
+<span class="lineNum"> 2 </span> : * \brief Classes for iterating through term lists
+<span class="lineNum"> 3 </span> : */
+<span class="lineNum"> 4 </span> : /* Copyright 1999,2000,2001 BrightStation PLC
+<span class="lineNum"> 5 </span> : * Copyright 2002 Ananova Ltd
+<span class="lineNum"> 6 </span> : * Copyright 2003,2004,2005,2006,2007 Olly Betts
+<span class="lineNum"> 7 </span> : *
+<span class="lineNum"> 8 </span> : * This program is free software; you can redistribute it and/or
+<span class="lineNum"> 9 </span> : * modify it under the terms of the GNU General Public License as
+<span class="lineNum"> 10 </span> : * published by the Free Software Foundation; either version 2 of the
+<span class="lineNum"> 11 </span> : * License, or (at your option) any later version.
+<span class="lineNum"> 12 </span> : *
+<span class="lineNum"> 13 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 14 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 15 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 16 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 17 </span> : *
+<span class="lineNum"> 18 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 19 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 20 </span> : * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
+<span class="lineNum"> 21 </span> : * USA
+<span class="lineNum"> 22 </span> : */
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : #ifndef XAPIAN_INCLUDED_TERMITERATOR_H
+<span class="lineNum"> 25 </span> : #define XAPIAN_INCLUDED_TERMITERATOR_H
+<span class="lineNum"> 26 </span> :
+<span class="lineNum"> 27 </span> : #include &lt;iterator&gt;
+<span class="lineNum"> 28 </span> : #include &lt;string&gt;
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : #include &lt;xapian/base.h&gt;
+<span class="lineNum"> 31 </span> : #include &lt;xapian/types.h&gt;
+<span class="lineNum"> 32 </span> : #include &lt;xapian/positioniterator.h&gt;
+<span class="lineNum"> 33 </span> : #include &lt;xapian/visibility.h&gt;
+<span class="lineNum"> 34 </span> :
+<span class="lineNum"> 35 </span> : namespace Xapian {
+<span class="lineNum"> 36 </span> :
+<span class="lineNum"> 37 </span> : class Database;
+<span class="lineNum"> 38 </span> :
+<span class="lineNum"> 39 </span> : /** @internal A wrapper class for a termname which returns the termname if
+<span class="lineNum"> 40 </span> : * dereferenced with *. We need this to implement input_iterator semantics.
+<span class="lineNum"> 41 </span> : */
+<span class="lineNum"> 42 </span> : class TermNameWrapper {
+<span class="lineNum"> 43 </span> : private:
+<span class="lineNum"> 44 </span> : std::string tname;
+<span class="lineNum"> 45 </span> : public:
+<span class="lineNum"> 46 </span> : explicit TermNameWrapper(const std::string &amp; tname_) : tname(tname_) { }
+<span class="lineNum"> 47 </span> : const std::string &amp; operator*() const { return tname; }
+<span class="lineNum"> 48 </span> : };
+<span class="lineNum"> 49 </span> :
+<span class="lineNum"> 50 </span> : /** An iterator pointing to items in a list of terms.
+<span class="lineNum"> 51 </span> : */
+<span class="lineNum"> 52 </span> : class XAPIAN_VISIBILITY_DEFAULT TermIterator {
+<span class="lineNum"> 53 </span> : public:
+<span class="lineNum"> 54 </span> : class Internal;
+<span class="lineNum"> 55 </span> : /// @internal Reference counted internals.
+<span class="lineNum"> 56 </span> : Xapian::Internal::RefCntPtr&lt;Internal&gt; internal;
+<span class="lineNum"> 57 </span> :
+<span class="lineNum"> 58 </span> : /// @internal Reference counted internals.
+<span class="lineNum"> 59 </span> : explicit TermIterator(Internal *internal_);
+<span class="lineNum"> 60 </span> :
+<span class="lineNum"> 61 </span> : /// Default constructor - for declaring an uninitialised iterator.
+<span class="lineNum"> 62 </span> : TermIterator();
+<span class="lineNum"> 63 </span> :
+<span class="lineNum"> 64 </span> : /// Destructor.
+<span class="lineNum"> 65 </span> : ~TermIterator();
+<span class="lineNum"> 66 </span> :
+<span class="lineNum"> 67 </span> : /** Copying is allowed. The internals are reference counted, so
+<span class="lineNum"> 68 </span> : * copying is also cheap.
+<span class="lineNum"> 69 </span> : */
+<span class="lineNum"> 70 </span> : TermIterator(const TermIterator &amp;other);
+<span class="lineNum"> 71 </span> :
+<span class="lineNum"> 72 </span> : /** Assignment is allowed. The internals are reference counted,
+<span class="lineNum"> 73 </span> : * so assignment is also cheap.
+<span class="lineNum"> 74 </span> : */
+<span class="lineNum"> 75 </span> : void operator=(const TermIterator &amp;other);
+<span class="lineNum"> 76 </span> :
+<span class="lineNum"> 77 </span> : /// Return the current term.
+<span class="lineNum"> 78 </span> : std::string operator *() const;
+<span class="lineNum"> 79 </span> :
+<span class="lineNum"> 80 </span> : TermIterator &amp; operator++();
+<span class="lineNum"> 81 </span> :
+<span class="lineNum"> 82 </span> : TermNameWrapper operator++(int) {
+<span class="lineNum"> 83 </span> : std::string tmp = **this;
+<span class="lineNum"> 84 </span> : operator++();
+<span class="lineNum"> 85 </span> : return TermNameWrapper(tmp);
+<span class="lineNum"> 86 </span> : }
+<span class="lineNum"> 87 </span> :
+<span class="lineNum"> 88 </span> : /** Skip the iterator to term tname, or the first term after tname
+<span class="lineNum"> 89 </span> : * if tname isn't in the list of terms being iterated.
+<span class="lineNum"> 90 </span> : */
+<span class="lineNum"> 91 </span> : void skip_to(const std::string &amp; tname);
+<span class="lineNum"> 92 </span> :
+<span class="lineNum"> 93 </span> : /** Return the wdf of the current term (if meaningful).
+<span class="lineNum"> 94 </span> : *
+<span class="lineNum"> 95 </span> : * The wdf (within document frequency) is the number of occurences
+<span class="lineNum"> 96 </span> : * of a term in a particular document.
+<span class="lineNum"> 97 </span> : */
+<span class="lineNum"> 98 </span> : Xapian::termcount get_wdf() const;
+<span class="lineNum"> 99 </span> :
+<span class="lineNum"> 100 </span> : /** Return the term frequency of the current term (if meaningful).
+<span class="lineNum"> 101 </span> : *
+<span class="lineNum"> 102 </span> : * The term frequency is the number of documents which a term indexes.
+<span class="lineNum"> 103 </span> : */
+<span class="lineNum"> 104 </span> : Xapian::doccount get_termfreq() const;
+<span class="lineNum"> 105 </span> :
+<span class="lineNum"> 106 </span> : /** Return length of positionlist for current term.
+<span class="lineNum"> 107 </span> : */
+<span class="lineNum"> 108 </span> : Xapian::termcount positionlist_count() const;
+<span class="lineNum"> 109 </span> :
+<span class="lineNum"> 110 </span> : /** Return PositionIterator pointing to start of positionlist for
+<span class="lineNum"> 111 </span> : * current term.
+<span class="lineNum"> 112 </span> : */
+<span class="lineNum"> 113 </span> : PositionIterator positionlist_begin() const;
+<span class="lineNum"> 114 </span> :
+<span class="lineNum"> 115 </span> : /** Return PositionIterator pointing to end of positionlist for
+<span class="lineNum"> 116 </span> : * current term.
+<span class="lineNum"> 117 </span> : */
+<span class="lineNum"> 118 </span> : PositionIterator positionlist_end() const {
+<span class="lineNum"> 119 </span> : return PositionIterator(NULL);
+<span class="lineNum"> 120 </span> : }
+<span class="lineNum"> 121 </span> :
+<span class="lineNum"> 122 </span> : /// Return a string describing this object.
+<span class="lineNum"> 123 </span> : std::string get_description() const;
+<span class="lineNum"> 124 </span> :
+<span class="lineNum"> 125 </span> : /// Allow use as an STL iterator
+<span class="lineNum"> 126 </span> : //@{
+<span class="lineNum"> 127 </span> : typedef std::input_iterator_tag iterator_category;
+<span class="lineNum"> 128 </span> : typedef std::string value_type;
+<span class="lineNum"> 129 </span> : typedef Xapian::termcount_diff difference_type;
+<span class="lineNum"> 130 </span> : typedef std::string * pointer;
+<span class="lineNum"> 131 </span> : typedef std::string &amp; reference;
+<span class="lineNum"> 132 </span> : //@}
+<span class="lineNum"> 133 </span> : };
+<span class="lineNum"> 134 </span> :
+<span class="lineNum"> 135 </span> : inline bool
+<span class="lineNum"> 136 </span><span class="lineCov"> 5 : operator==(const TermIterator &amp;a, const TermIterator &amp;b)</span>
+<span class="lineNum"> 137 </span> : {
+<span class="lineNum"> 138 </span><span class="lineCov"> 5 : return (a.internal.get() == b.internal.get());</span>
+<span class="lineNum"> 139 </span> : }
+<span class="lineNum"> 140 </span> :
+<span class="lineNum"> 141 </span> : inline bool
+<span class="lineNum"> 142 </span><span class="lineCov"> 5 : operator!=(const TermIterator &amp;a, const TermIterator &amp;b)</span>
+<span class="lineNum"> 143 </span> : {
+<span class="lineNum"> 144 </span><span class="lineCov"> 5 : return !(a == b);</span>
+<span class="lineNum"> 145 </span> : }
+<span class="lineNum"> 146 </span> :
+<span class="lineNum"> 147 </span> : }
+<span class="lineNum"> 148 </span> :
+<span class="lineNum"> 149 </span> : #endif /* XAPIAN_INCLUDED_TERMITERATOR_H */
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/rep/usr/include/xapian/unicode.h.gcov.html b/rep/usr/include/xapian/unicode.h.gcov.html
new file mode 100644
index 0000000..72c1ad3
--- /dev/null
+++ b/rep/usr/include/xapian/unicode.h.gcov.html
@@ -0,0 +1,433 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
+<html lang="en">
+
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>LCOV - lcov.info - /usr/include/xapian/unicode.h</title>
+ <link rel="stylesheet" type="text/css" href="../../../gcov.css">
+</head>
+
+<body>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+
+ <tr>
+ <td width="100%">
+ <table cellpadding=1 border=0 width="100%">
+ <tr>
+ <td class="headerItem" width="20%">Current&nbsp;view:</td>
+ <td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">usr/include/xapian</a> - unicode.h</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Test:</td>
+ <td class="headerValue" width="80%" colspan=4>lcov.info</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Date:</td>
+ <td class="headerValue" width="20%">2008-08-14</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Instrumented&nbsp;lines:</td>
+ <td class="headerValue" width="20%">8</td>
+ </tr>
+ <tr>
+ <td class="headerItem" width="20%">Code&nbsp;covered:</td>
+ <td class="headerValue" width="20%">87.5 %</td>
+ <td width="20%"></td>
+ <td class="headerItem" width="20%">Executed&nbsp;lines:</td>
+ <td class="headerValue" width="20%">7</td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ </table>
+
+ <table cellpadding=0 cellspacing=0 border=0>
+ <tr>
+ <td><br></td>
+ </tr>
+ <tr>
+ <td><pre class="source">
+<span class="lineNum"> 1 </span> : /** @file unicode.h
+<span class="lineNum"> 2 </span> : * @brief Unicode and UTF-8 related classes and functions.
+<span class="lineNum"> 3 </span> : */
+<span class="lineNum"> 4 </span> : /* Copyright (C) 2006,2007,2008 Olly Betts
+<span class="lineNum"> 5 </span> : *
+<span class="lineNum"> 6 </span> : * This program is free software; you can redistribute it and/or modify
+<span class="lineNum"> 7 </span> : * it under the terms of the GNU General Public License as published by
+<span class="lineNum"> 8 </span> : * the Free Software Foundation; either version 2 of the License, or
+<span class="lineNum"> 9 </span> : * (at your option) any later version.
+<span class="lineNum"> 10 </span> : *
+<span class="lineNum"> 11 </span> : * This program is distributed in the hope that it will be useful,
+<span class="lineNum"> 12 </span> : * but WITHOUT ANY WARRANTY; without even the implied warranty of
+<span class="lineNum"> 13 </span> : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+<span class="lineNum"> 14 </span> : * GNU General Public License for more details.
+<span class="lineNum"> 15 </span> : *
+<span class="lineNum"> 16 </span> : * You should have received a copy of the GNU General Public License
+<span class="lineNum"> 17 </span> : * along with this program; if not, write to the Free Software
+<span class="lineNum"> 18 </span> : * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+<span class="lineNum"> 19 </span> : */
+<span class="lineNum"> 20 </span> :
+<span class="lineNum"> 21 </span> : #ifndef XAPIAN_INCLUDED_UNICODE_H
+<span class="lineNum"> 22 </span> : #define XAPIAN_INCLUDED_UNICODE_H
+<span class="lineNum"> 23 </span> :
+<span class="lineNum"> 24 </span> : #include &lt;xapian/visibility.h&gt;
+<span class="lineNum"> 25 </span> :
+<span class="lineNum"> 26 </span> : #include &lt;string&gt;
+<span class="lineNum"> 27 </span> :
+<span class="lineNum"> 28 </span> : namespace Xapian {
+<span class="lineNum"> 29 </span> :
+<span class="lineNum"> 30 </span> : /** An iterator which returns unicode character values from a UTF-8 encoded
+<span class="lineNum"> 31 </span> : * string.
+<span class="lineNum"> 32 </span> : */
+<span class="lineNum"> 33 </span> : class XAPIAN_VISIBILITY_DEFAULT Utf8Iterator {
+<span class="lineNum"> 34 </span> : const unsigned char *p;
+<span class="lineNum"> 35 </span> : const unsigned char *end;
+<span class="lineNum"> 36 </span> : mutable unsigned seqlen;
+<span class="lineNum"> 37 </span> :
+<span class="lineNum"> 38 </span> : void calculate_sequence_length() const;
+<span class="lineNum"> 39 </span> :
+<span class="lineNum"> 40 </span> : unsigned get_char() const;
+<span class="lineNum"> 41 </span> :
+<span class="lineNum"> 42 </span> : Utf8Iterator(const unsigned char *p_, const unsigned char *end_, unsigned seqlen_)
+<span class="lineNum"> 43 </span> : : p(p_), end(end_), seqlen(seqlen_) { }
+<span class="lineNum"> 44 </span> :
+<span class="lineNum"> 45 </span> : public:
+<span class="lineNum"> 46 </span> : /** Return the raw const char * pointer for the current position. */
+<span class="lineNum"> 47 </span> : const char * raw() const {
+<span class="lineNum"> 48 </span> : return reinterpret_cast&lt;const char *&gt;(p ? p : end);
+<span class="lineNum"> 49 </span> : }
+<span class="lineNum"> 50 </span> :
+<span class="lineNum"> 51 </span> : /** Return the number of bytes left in the iterator's buffer. */
+<span class="lineNum"> 52 </span> : size_t left() const { return p ? end - p : 0; }
+<span class="lineNum"> 53 </span> :
+<span class="lineNum"> 54 </span> : /** Assign a new string to the iterator.
+<span class="lineNum"> 55 </span> : *
+<span class="lineNum"> 56 </span> : * The iterator will forget the string it was iterating through, and
+<span class="lineNum"> 57 </span> : * return characters from the start of the new string when next called.
+<span class="lineNum"> 58 </span> : * The string is not copied into the iterator, so it must remain valid
+<span class="lineNum"> 59 </span> : * while the iteration is in progress.
+<span class="lineNum"> 60 </span> : *
+<span class="lineNum"> 61 </span> : * @param p A pointer to the start of the string to read.
+<span class="lineNum"> 62 </span> : *
+<span class="lineNum"> 63 </span> : * @param len The length of the string to read.
+<span class="lineNum"> 64 </span> : */
+<span class="lineNum"> 65 </span><span class="lineCov"> 5208 : void assign(const char *p_, size_t len) {</span>
+<span class="lineNum"> 66 </span><span class="lineCov"> 5208 : if (len) {</span>
+<span class="lineNum"> 67 </span><span class="lineCov"> 5208 : p = reinterpret_cast&lt;const unsigned char*&gt;(p_);</span>
+<span class="lineNum"> 68 </span><span class="lineCov"> 5208 : end = p + len;</span>
+<span class="lineNum"> 69 </span><span class="lineCov"> 5208 : seqlen = 0;</span>
+<span class="lineNum"> 70 </span> : } else {
+<span class="lineNum"> 71 </span><span class="lineNoCov"> 0 : p = NULL;</span>
+<span class="lineNum"> 72 </span> : }
+<span class="lineNum"> 73 </span><span class="lineCov"> 5208 : }</span>
+<span class="lineNum"> 74 </span> :
+<span class="lineNum"> 75 </span> : /** Assign a new string to the iterator.
+<span class="lineNum"> 76 </span> : *
+<span class="lineNum"> 77 </span> : * The iterator will forget the string it was iterating through, and
+<span class="lineNum"> 78 </span> : * return characters from the start of the new string when next called.
+<span class="lineNum"> 79 </span> : * The string is not copied into the iterator, so it must remain valid
+<span class="lineNum"> 80 </span> : * while the iteration is in progress.
+<span class="lineNum"> 81 </span> : *
+<span class="lineNum"> 82 </span> : * @param s The string to read. Must not be modified while the iteration
+<span class="lineNum"> 83 </span> : * is in progress.
+<span class="lineNum"> 84 </span> : */
+<span class="lineNum"> 85 </span> : void assign(const std::string &amp;s) { assign(s.data(), s.size()); }
+<span class="lineNum"> 86 </span> :
+<span class="lineNum"> 87 </span> : /** Create an iterator given a pointer to a null terminated string.
+<span class="lineNum"> 88 </span> : *
+<span class="lineNum"> 89 </span> : * The iterator will return characters from the start of the string when
+<span class="lineNum"> 90 </span> : * next called. The string is not copied into the iterator, so it must
+<span class="lineNum"> 91 </span> : * remain valid while the iteration is in progress.
+<span class="lineNum"> 92 </span> : *
+<span class="lineNum"> 93 </span> : * @param p A pointer to the start of the null terminated string to read.
+<span class="lineNum"> 94 </span> : */
+<span class="lineNum"> 95 </span> : explicit Utf8Iterator(const char *p_);
+<span class="lineNum"> 96 </span> :
+<span class="lineNum"> 97 </span> : /** Create an iterator given a pointer and a length.
+<span class="lineNum"> 98 </span> : *
+<span class="lineNum"> 99 </span> : * The iterator will return characters from the start of the string when
+<span class="lineNum"> 100 </span> : * next called. The string is not copied into the iterator, so it must
+<span class="lineNum"> 101 </span> : * remain valid while the iteration is in progress.
+<span class="lineNum"> 102 </span> : *
+<span class="lineNum"> 103 </span> : * @param p A pointer to the start of the string to read.
+<span class="lineNum"> 104 </span> : *
+<span class="lineNum"> 105 </span> : * @param len The length of the string to read.
+<span class="lineNum"> 106 </span> : */
+<span class="lineNum"> 107 </span> : Utf8Iterator(const char *p_, size_t len) { assign(p_, len); }
+<span class="lineNum"> 108 </span> :
+<span class="lineNum"> 109 </span> : /** Create an iterator given a string.
+<span class="lineNum"> 110 </span> : *
+<span class="lineNum"> 111 </span> : * The iterator will return characters from the start of the string when
+<span class="lineNum"> 112 </span> : * next called. The string is not copied into the iterator, so it must
+<span class="lineNum"> 113 </span> : * remain valid while the iteration is in progress.
+<span class="lineNum"> 114 </span> : *
+<span class="lineNum"> 115 </span> : * @param s The string to read. Must not be modified while the iteration
+<span class="lineNum"> 116 </span> : * is in progress.
+<span class="lineNum"> 117 </span> : */
+<span class="lineNum"> 118 </span><span class="lineCov"> 5208 : Utf8Iterator(const std::string &amp;s) { assign(s.data(), s.size()); }</span>
+<span class="lineNum"> 119 </span> :
+<span class="lineNum"> 120 </span> : /** Create an iterator which is at the end of its iteration.
+<span class="lineNum"> 121 </span> : *
+<span class="lineNum"> 122 </span> : * This can be compared to another iterator to check if the other iterator
+<span class="lineNum"> 123 </span> : * has reached its end.
+<span class="lineNum"> 124 </span> : */
+<span class="lineNum"> 125 </span> : Utf8Iterator() : p(NULL), end(0), seqlen(0) { }
+<span class="lineNum"> 126 </span> :
+<span class="lineNum"> 127 </span> : /** Get the current unicode character value pointed to by the iterator.
+<span class="lineNum"> 128 </span> : *
+<span class="lineNum"> 129 </span> : * Returns unsigned(-1) if the iterator has reached the end of its buffer.
+<span class="lineNum"> 130 </span> : */
+<span class="lineNum"> 131 </span> : unsigned operator*() const;
+<span class="lineNum"> 132 </span> :
+<span class="lineNum"> 133 </span> : /** Move forward to the next unicode character.
+<span class="lineNum"> 134 </span> : *
+<span class="lineNum"> 135 </span> : * @return An iterator pointing to the position before the move.
+<span class="lineNum"> 136 </span> : */
+<span class="lineNum"> 137 </span> : Utf8Iterator operator++(int) {
+<span class="lineNum"> 138 </span> : // If we've not calculated seqlen yet, do so.
+<span class="lineNum"> 139 </span> : if (seqlen == 0) calculate_sequence_length();
+<span class="lineNum"> 140 </span> : const unsigned char *old_p = p;
+<span class="lineNum"> 141 </span> : unsigned old_seqlen = seqlen;
+<span class="lineNum"> 142 </span> : p += seqlen;
+<span class="lineNum"> 143 </span> : if (p == end) p = NULL;
+<span class="lineNum"> 144 </span> : seqlen = 0;
+<span class="lineNum"> 145 </span> : return Utf8Iterator(old_p, end, old_seqlen);
+<span class="lineNum"> 146 </span> : }
+<span class="lineNum"> 147 </span> :
+<span class="lineNum"> 148 </span> : /** Move forward to the next unicode character.
+<span class="lineNum"> 149 </span> : *
+<span class="lineNum"> 150 </span> : * @return A reference to this object.
+<span class="lineNum"> 151 </span> : */
+<span class="lineNum"> 152 </span> : Utf8Iterator &amp; operator++() {
+<span class="lineNum"> 153 </span> : if (seqlen == 0) calculate_sequence_length();
+<span class="lineNum"> 154 </span> : p += seqlen;
+<span class="lineNum"> 155 </span> : if (p == end) p = NULL;
+<span class="lineNum"> 156 </span> : seqlen = 0;
+<span class="lineNum"> 157 </span> : return *this;
+<span class="lineNum"> 158 </span> : }
+<span class="lineNum"> 159 </span> :
+<span class="lineNum"> 160 </span> : /** Test two Utf8Iterators for equality.
+<span class="lineNum"> 161 </span> : *
+<span class="lineNum"> 162 </span> : * @return true iff the iterators point to the same position.
+<span class="lineNum"> 163 </span> : */
+<span class="lineNum"> 164 </span> : bool operator==(const Utf8Iterator &amp;other) const { return p == other.p; }
+<span class="lineNum"> 165 </span> :
+<span class="lineNum"> 166 </span> : /** Test two Utf8Iterators for inequality.
+<span class="lineNum"> 167 </span> : *
+<span class="lineNum"> 168 </span> : * @return true iff the iterators do not point to the same position.
+<span class="lineNum"> 169 </span> : */
+<span class="lineNum"> 170 </span> : bool operator!=(const Utf8Iterator &amp;other) const { return p != other.p; }
+<span class="lineNum"> 171 </span> :
+<span class="lineNum"> 172 </span> : /// We implement the semantics of an STL input_iterator.
+<span class="lineNum"> 173 </span> : //@{
+<span class="lineNum"> 174 </span> : typedef std::input_iterator_tag iterator_category;
+<span class="lineNum"> 175 </span> : typedef unsigned value_type;
+<span class="lineNum"> 176 </span> : typedef size_t difference_type;
+<span class="lineNum"> 177 </span> : typedef const unsigned * pointer;
+<span class="lineNum"> 178 </span> : typedef const unsigned &amp; reference;
+<span class="lineNum"> 179 </span> : //@}
+<span class="lineNum"> 180 </span> : };
+<span class="lineNum"> 181 </span> :
+<span class="lineNum"> 182 </span> : namespace Unicode {
+<span class="lineNum"> 183 </span> :
+<span class="lineNum"> 184 </span> : /** Each unicode character is in one of these categories. */
+<span class="lineNum"> 185 </span> : typedef enum {
+<span class="lineNum"> 186 </span> : UNASSIGNED,
+<span class="lineNum"> 187 </span> : UPPERCASE_LETTER,
+<span class="lineNum"> 188 </span> : LOWERCASE_LETTER,
+<span class="lineNum"> 189 </span> : TITLECASE_LETTER,
+<span class="lineNum"> 190 </span> : MODIFIER_LETTER,
+<span class="lineNum"> 191 </span> : OTHER_LETTER,
+<span class="lineNum"> 192 </span> : NON_SPACING_MARK,
+<span class="lineNum"> 193 </span> : ENCLOSING_MARK,
+<span class="lineNum"> 194 </span> : COMBINING_SPACING_MARK,
+<span class="lineNum"> 195 </span> : DECIMAL_DIGIT_NUMBER,
+<span class="lineNum"> 196 </span> : LETTER_NUMBER,
+<span class="lineNum"> 197 </span> : OTHER_NUMBER,
+<span class="lineNum"> 198 </span> : SPACE_SEPARATOR,
+<span class="lineNum"> 199 </span> : LINE_SEPARATOR,
+<span class="lineNum"> 200 </span> : PARAGRAPH_SEPARATOR,
+<span class="lineNum"> 201 </span> : CONTROL,
+<span class="lineNum"> 202 </span> : FORMAT,
+<span class="lineNum"> 203 </span> : PRIVATE_USE,
+<span class="lineNum"> 204 </span> : SURROGATE,
+<span class="lineNum"> 205 </span> : CONNECTOR_PUNCTUATION,
+<span class="lineNum"> 206 </span> : DASH_PUNCTUATION,
+<span class="lineNum"> 207 </span> : OPEN_PUNCTUATION,
+<span class="lineNum"> 208 </span> : CLOSE_PUNCTUATION,
+<span class="lineNum"> 209 </span> : INITIAL_QUOTE_PUNCTUATION,
+<span class="lineNum"> 210 </span> : FINAL_QUOTE_PUNCTUATION,
+<span class="lineNum"> 211 </span> : OTHER_PUNCTUATION,
+<span class="lineNum"> 212 </span> : MATH_SYMBOL,
+<span class="lineNum"> 213 </span> : CURRENCY_SYMBOL,
+<span class="lineNum"> 214 </span> : MODIFIER_SYMBOL,
+<span class="lineNum"> 215 </span> : OTHER_SYMBOL
+<span class="lineNum"> 216 </span> : } category;
+<span class="lineNum"> 217 </span> :
+<span class="lineNum"> 218 </span> : namespace Internal {
+<span class="lineNum"> 219 </span> : /** @internal Extract the information about a character from the Unicode
+<span class="lineNum"> 220 </span> : * character tables.
+<span class="lineNum"> 221 </span> : *
+<span class="lineNum"> 222 </span> : * ch must be a valid Unicode character value (i.e. &lt; 0x110000)
+<span class="lineNum"> 223 </span> : */
+<span class="lineNum"> 224 </span> : XAPIAN_VISIBILITY_DEFAULT
+<span class="lineNum"> 225 </span> : int get_character_info(unsigned ch);
+<span class="lineNum"> 226 </span> :
+<span class="lineNum"> 227 </span> : /** @internal Extract how to convert the case of a unicode character from
+<span class="lineNum"> 228 </span> : * its info.
+<span class="lineNum"> 229 </span> : */
+<span class="lineNum"> 230 </span> : inline int get_case_type(int info) { return ((info &amp; 0xe0) &gt;&gt; 5); }
+<span class="lineNum"> 231 </span> :
+<span class="lineNum"> 232 </span> : /// @internal Extract the category of a unicode character from its info.
+<span class="lineNum"> 233 </span> : inline category get_category(int info) { return static_cast&lt;category&gt;(info &amp; 0x1f); }
+<span class="lineNum"> 234 </span> :
+<span class="lineNum"> 235 </span> : /** @internal Extract the delta to use for case conversion of a character
+<span class="lineNum"> 236 </span> : * from its info.
+<span class="lineNum"> 237 </span> : */
+<span class="lineNum"> 238 </span> : inline int get_delta(int info) {
+<span class="lineNum"> 239 </span> : /* It's implementation defined if sign extension happens on right shift
+<span class="lineNum"> 240 </span> : * of a signed int, hence the conditional (hopefully the compiler will
+<span class="lineNum"> 241 </span> : * spot this and optimise it to a sign-extending shift on architectures
+<span class="lineNum"> 242 </span> : * with a suitable instruction).
+<span class="lineNum"> 243 </span> : */
+<span class="lineNum"> 244 </span> : return (info &gt;= 0) ? (info &gt;&gt; 15) : (~(~info &gt;&gt; 15));
+<span class="lineNum"> 245 </span> : }
+<span class="lineNum"> 246 </span> : }
+<span class="lineNum"> 247 </span> :
+<span class="lineNum"> 248 </span> : /** Convert a single non-ASCII unicode character to UTF-8.
+<span class="lineNum"> 249 </span> : *
+<span class="lineNum"> 250 </span> : * This is intended mainly as a helper method for to_utf8().
+<span class="lineNum"> 251 </span> : *
+<span class="lineNum"> 252 </span> : * The character @a ch (which must be &gt; 128) is written to the buffer @a buf
+<span class="lineNum"> 253 </span> : * and the length of the resultant UTF-8 character is returned.
+<span class="lineNum"> 254 </span> : *
+<span class="lineNum"> 255 </span> : * NB buf must have space for (at least) 4 bytes.
+<span class="lineNum"> 256 </span> : */
+<span class="lineNum"> 257 </span> : XAPIAN_VISIBILITY_DEFAULT
+<span class="lineNum"> 258 </span> : unsigned nonascii_to_utf8(unsigned ch, char * buf);
+<span class="lineNum"> 259 </span> :
+<span class="lineNum"> 260 </span> : /** Convert a single unicode character to UTF-8.
+<span class="lineNum"> 261 </span> : *
+<span class="lineNum"> 262 </span> : * The character @a ch is written to the buffer @a buf and the length of the
+<span class="lineNum"> 263 </span> : * resultant UTF-8 character is returned.
+<span class="lineNum"> 264 </span> : *
+<span class="lineNum"> 265 </span> : * NB buf must have space for (at least) 4 bytes.
+<span class="lineNum"> 266 </span> : */
+<span class="lineNum"> 267 </span> : inline unsigned to_utf8(unsigned ch, char *buf) {
+<span class="lineNum"> 268 </span> : if (ch &lt; 128) {
+<span class="lineNum"> 269 </span> : *buf = static_cast&lt;unsigned char&gt;(ch);
+<span class="lineNum"> 270 </span> : return 1;
+<span class="lineNum"> 271 </span> : }
+<span class="lineNum"> 272 </span> : return Xapian::Unicode::nonascii_to_utf8(ch, buf);
+<span class="lineNum"> 273 </span> : }
+<span class="lineNum"> 274 </span> :
+<span class="lineNum"> 275 </span> : /** Append the UTF-8 representation of a single unicode character to a
+<span class="lineNum"> 276 </span> : * std::string.
+<span class="lineNum"> 277 </span> : */
+<span class="lineNum"> 278 </span> : inline void append_utf8(std::string &amp;s, unsigned ch) {
+<span class="lineNum"> 279 </span> : char buf[4];
+<span class="lineNum"> 280 </span> : s.append(buf, to_utf8(ch, buf));
+<span class="lineNum"> 281 </span> : }
+<span class="lineNum"> 282 </span> :
+<span class="lineNum"> 283 </span> : /// Return the category which a given unicode character falls into.
+<span class="lineNum"> 284 </span> : inline category get_category(unsigned ch) {
+<span class="lineNum"> 285 </span> : // Categorise non-Unicode values as UNASSIGNED.
+<span class="lineNum"> 286 </span> : if (ch &gt;= 0x110000) return Xapian::Unicode::UNASSIGNED;
+<span class="lineNum"> 287 </span> : return Internal::get_category(Internal::get_character_info(ch));
+<span class="lineNum"> 288 </span> : }
+<span class="lineNum"> 289 </span> :
+<span class="lineNum"> 290 </span> : /// Test is a given unicode character is a letter or number.
+<span class="lineNum"> 291 </span> : inline bool is_wordchar(unsigned ch) {
+<span class="lineNum"> 292 </span> : const unsigned int WORDCHAR_MASK =
+<span class="lineNum"> 293 </span> : (1 &lt;&lt; Xapian::Unicode::UPPERCASE_LETTER) |
+<span class="lineNum"> 294 </span> : (1 &lt;&lt; Xapian::Unicode::LOWERCASE_LETTER) |
+<span class="lineNum"> 295 </span> : (1 &lt;&lt; Xapian::Unicode::TITLECASE_LETTER) |
+<span class="lineNum"> 296 </span> : (1 &lt;&lt; Xapian::Unicode::MODIFIER_LETTER) |
+<span class="lineNum"> 297 </span> : (1 &lt;&lt; Xapian::Unicode::OTHER_LETTER) |
+<span class="lineNum"> 298 </span> : (1 &lt;&lt; Xapian::Unicode::DECIMAL_DIGIT_NUMBER) |
+<span class="lineNum"> 299 </span> : (1 &lt;&lt; Xapian::Unicode::LETTER_NUMBER) |
+<span class="lineNum"> 300 </span> : (1 &lt;&lt; Xapian::Unicode::OTHER_NUMBER) |
+<span class="lineNum"> 301 </span> : (1 &lt;&lt; Xapian::Unicode::CONNECTOR_PUNCTUATION);
+<span class="lineNum"> 302 </span> : return ((WORDCHAR_MASK &gt;&gt; get_category(ch)) &amp; 1);
+<span class="lineNum"> 303 </span> : }
+<span class="lineNum"> 304 </span> :
+<span class="lineNum"> 305 </span> : /// Test is a given unicode character is a whitespace character.
+<span class="lineNum"> 306 </span> : inline bool is_whitespace(unsigned ch) {
+<span class="lineNum"> 307 </span> : const unsigned int WHITESPACE_MASK =
+<span class="lineNum"> 308 </span> : (1 &lt;&lt; Xapian::Unicode::CONTROL) | // For TAB, CR, LF, FF.
+<span class="lineNum"> 309 </span> : (1 &lt;&lt; Xapian::Unicode::SPACE_SEPARATOR) |
+<span class="lineNum"> 310 </span> : (1 &lt;&lt; Xapian::Unicode::LINE_SEPARATOR) |
+<span class="lineNum"> 311 </span> : (1 &lt;&lt; Xapian::Unicode::PARAGRAPH_SEPARATOR);
+<span class="lineNum"> 312 </span> : return ((WHITESPACE_MASK &gt;&gt; get_category(ch)) &amp; 1);
+<span class="lineNum"> 313 </span> : }
+<span class="lineNum"> 314 </span> :
+<span class="lineNum"> 315 </span> : /// Test is a given unicode character is a currency symbol.
+<span class="lineNum"> 316 </span> : inline bool is_currency(unsigned ch) {
+<span class="lineNum"> 317 </span> : return (get_category(ch) == Xapian::Unicode::CURRENCY_SYMBOL);
+<span class="lineNum"> 318 </span> : }
+<span class="lineNum"> 319 </span> :
+<span class="lineNum"> 320 </span> : /// Convert a unicode character to lowercase.
+<span class="lineNum"> 321 </span> : inline unsigned tolower(unsigned ch) {
+<span class="lineNum"> 322 </span> : int info;
+<span class="lineNum"> 323 </span> : // Leave non-Unicode values unchanged.
+<span class="lineNum"> 324 </span> : if (ch &gt;= 0x110000 || !(Internal::get_case_type((info = Xapian::Unicode::Internal::get_character_info(ch))) &amp; 2))
+<span class="lineNum"> 325 </span> : return ch;
+<span class="lineNum"> 326 </span> : return ch + Internal::get_delta(info);
+<span class="lineNum"> 327 </span> : }
+<span class="lineNum"> 328 </span> :
+<span class="lineNum"> 329 </span> : /// Convert a unicode character to uppercase.
+<span class="lineNum"> 330 </span> : inline unsigned toupper(unsigned ch) {
+<span class="lineNum"> 331 </span> : int info;
+<span class="lineNum"> 332 </span> : // Leave non-Unicode values unchanged.
+<span class="lineNum"> 333 </span> : if (ch &gt;= 0x110000 || !(Internal::get_case_type((info = Xapian::Unicode::Internal::get_character_info(ch))) &amp; 4))
+<span class="lineNum"> 334 </span> : return ch;
+<span class="lineNum"> 335 </span> : return ch - Internal::get_delta(info);
+<span class="lineNum"> 336 </span> : }
+<span class="lineNum"> 337 </span> :
+<span class="lineNum"> 338 </span> : /// Convert a UTF-8 std::string to lowercase.
+<span class="lineNum"> 339 </span> : inline std::string
+<span class="lineNum"> 340 </span> : tolower(const std::string &amp;term)
+<span class="lineNum"> 341 </span> : {
+<span class="lineNum"> 342 </span> : std::string result;
+<span class="lineNum"> 343 </span> : result.reserve(term.size());
+<span class="lineNum"> 344 </span> : for (Utf8Iterator i(term); i != Utf8Iterator(); ++i) {
+<span class="lineNum"> 345 </span> : append_utf8(result, tolower(*i));
+<span class="lineNum"> 346 </span> : }
+<span class="lineNum"> 347 </span> : return result;
+<span class="lineNum"> 348 </span> : }
+<span class="lineNum"> 349 </span> :
+<span class="lineNum"> 350 </span> : /// Convert a UTF-8 std::string to uppercase.
+<span class="lineNum"> 351 </span> : inline std::string
+<span class="lineNum"> 352 </span> : toupper(const std::string &amp;term)
+<span class="lineNum"> 353 </span> : {
+<span class="lineNum"> 354 </span> : std::string result;
+<span class="lineNum"> 355 </span> : result.reserve(term.size());
+<span class="lineNum"> 356 </span> : for (Utf8Iterator i(term); i != Utf8Iterator(); ++i) {
+<span class="lineNum"> 357 </span> : append_utf8(result, toupper(*i));
+<span class="lineNum"> 358 </span> : }
+<span class="lineNum"> 359 </span> : return result;
+<span class="lineNum"> 360 </span> : }
+<span class="lineNum"> 361 </span> :
+<span class="lineNum"> 362 </span> : }
+<span class="lineNum"> 363 </span> :
+<span class="lineNum"> 364 </span> : }
+<span class="lineNum"> 365 </span> :
+<span class="lineNum"> 366 </span> : #endif // XAPIAN_INCLUDED_UNICODE_H
+</pre>
+ </td>
+ </tr>
+ </table>
+ <br>
+
+ <table width="100%" border=0 cellspacing=0 cellpadding=0>
+ <tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
+ <tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
+ </table>
+ <br>
+
+</body>
+</html>
diff --git a/source-tree-root b/source-tree-root
new file mode 100644
index 0000000..dcab735
--- /dev/null
+++ b/source-tree-root
@@ -0,0 +1 @@
+please do not remove this file, otb uses it to find root of the source tree
diff --git a/test.sh b/test.sh
new file mode 100644
index 0000000..bd7fc6c
--- /dev/null
+++ b/test.sh
@@ -0,0 +1,5 @@
+set -e
+mkdir _test
+(cd _test ; cmake .. -DINTERNAL_WIBBLE=ON)
+(cd _test ; make )
+(cd _test ; make check )
diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt
new file mode 100644
index 0000000..7177401
--- /dev/null
+++ b/tools/CMakeLists.txt
@@ -0,0 +1,22 @@
+include_directories( ${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR}
+ ${TAGCOLL_INCLUDE_DIRS} ${WIBBLE_INCLUDE_DIRS} )
+link_libraries( ept )
+
+add_executable( ept-search ept-search.cpp )
+add_executable( ept-cat ept-cat.cpp )
+add_executable( pkglist pkglist.cpp )
+add_executable( manpage manpage.cc )
+add_executable( ept-cache
+ ept-cache.cc Environment.cc filters.cc info.cc )
+
+set( bindir ${CMAKE_CURRENT_BINARY_DIR} )
+set( srcdir ${CMAKE_CURRENT_SOURCE_DIR} )
+
+add_custom_command(
+ TARGET manpage
+ POST_BUILD
+ DEPENDS manpage
+ COMMAND LD_LIBRARY_PATH=${ept_BINARY_DIR} ${bindir}/manpage ept-cache ${srcdir}/ept-cache-man-hooks > ${bindir}/ept-cache.1 )
+
+install( TARGETS ept-cache RUNTIME DESTINATION bin )
+install( FILES ${bindir}/ept-cache.1 DESTINATION share/man/man1 )
diff --git a/tools/Environment.cc b/tools/Environment.cc
new file mode 100644
index 0000000..442f2f5
--- /dev/null
+++ b/tools/Environment.cc
@@ -0,0 +1,120 @@
+/*
+ * Common environment for many program parts
+ *
+ * Copyright (C) 2003 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include "Environment.h"
+
+#include <ept/apt/apt.h>
+#include <ept/debtags/debtags.h>
+#include <ept/popcon/popcon.h>
+#include <ept/popcon/local.h>
+#include <ept/textsearch/textsearch.h>
+
+#include <stdio.h>
+#include <stdarg.h>
+#include <unistd.h> // isatty
+
+using namespace std;
+
+static Environment* instance = 0;
+
+Environment& Environment::get() throw ()
+{
+ if (instance == 0)
+ instance = new Environment;
+
+ return *instance;
+}
+
+// Initialize the environment with default values
+Environment::Environment() throw ()
+ : m_apt(0), m_debtags(0), m_popcon(0), m_popconlocal(0), m_textsearch(0), _verbose(false), _debug(false) {}
+
+void Environment::init(bool editable)
+{
+ m_apt = new ept::apt::Apt;
+ m_debtags = new ept::debtags::Debtags(editable);
+ m_popcon = new ept::popcon::Popcon;
+ m_popconlocal = new ept::popcon::Local;
+ m_textsearch = new ept::textsearch::TextSearch;
+}
+
+void fatal_error(const char* fmt, ...) throw() ATTR_PRINTF(1, 2)
+{
+ fprintf(stderr, "debtags: ");
+ va_list ap;
+ va_start(ap, fmt);
+ vfprintf(stderr, fmt, ap);
+ va_end(ap);
+ fprintf(stderr, "\n");
+ exit(1);
+}
+
+void error(const char* fmt, ...) throw() ATTR_PRINTF(1, 2)
+{
+ va_list ap;
+ va_start(ap, fmt);
+ vfprintf(stderr, fmt, ap);
+ va_end(ap);
+}
+
+void warning(const char* fmt, ...) throw() ATTR_PRINTF(1, 2)
+{
+ va_list ap;
+ va_start(ap, fmt);
+ vfprintf(stderr, fmt, ap);
+ va_end(ap);
+}
+
+void verbose(const char* fmt, ...) throw() ATTR_PRINTF(1, 2)
+{
+ if (Environment::get().verbose())
+ {
+ va_list ap;
+ va_start(ap, fmt);
+ vfprintf(stderr, fmt, ap);
+ va_end(ap);
+ }
+}
+
+void debug(const char* fmt, ...) throw() ATTR_PRINTF(1, 2)
+{
+ if (Environment::get().debug())
+ {
+ va_list ap;
+ va_start(ap, fmt);
+ vfprintf(stderr, fmt, ap);
+ va_end(ap);
+ }
+}
+
+void feedback(const char* fmt, ...) throw() ATTR_PRINTF(1, 2)
+{
+ if (isatty(1))
+ {
+ va_list ap;
+ va_start(ap, fmt);
+ vfprintf(stdout, fmt, ap);
+ va_end(ap);
+ }
+}
+
+
+
+// vim:set ts=4 sw=4:
diff --git a/tools/Environment.h b/tools/Environment.h
new file mode 100644
index 0000000..d161f3d
--- /dev/null
+++ b/tools/Environment.h
@@ -0,0 +1,129 @@
+#ifndef EPTCACHE_ENVIRONMENT_H
+#define EPTCACHE_ENVIRONMENT_H
+
+/*
+ * Common environment for many program parts
+ *
+ * Copyright (C) 2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/debtags/debtags.h>
+#include <string>
+
+namespace ept {
+namespace apt {
+class Apt;
+}
+namespace popcon {
+class Popcon;
+class Local;
+}
+namespace textsearch {
+class TextSearch;
+}
+}
+
+class Environment
+{
+protected:
+ /// Apt data provider
+ ept::apt::Apt* m_apt;
+
+ /// Debtags data provider
+ ept::debtags::Debtags* m_debtags;
+
+ /// Popcon data provider
+ ept::popcon::Popcon* m_popcon;
+
+ /// Popcon local vote data provider
+ ept::popcon::Local* m_popconlocal;
+
+ /// TextSearch data provider
+ ept::textsearch::TextSearch* m_textsearch;
+
+ // True when operations should be verbose
+ bool _verbose;
+
+ // True when operations should be very verbose
+ bool _debug;
+
+ Environment() throw ();
+
+public:
+ static Environment& get() throw ();
+
+ /**
+ * Initialise the data providers.
+ *
+ * This method must be called before they can be accessed.
+ */
+ void init(bool editable = false);
+
+ /// Access the apt data provider
+ ept::apt::Apt& apt() { return *m_apt; }
+
+ /// Access the debtags data provider
+ ept::debtags::Debtags& debtags() { return *m_debtags; }
+
+ /// Access the tag vocabulary
+ ept::debtags::Vocabulary& voc() { return m_debtags->vocabulary(); }
+
+ /// Access the popcon data
+ ept::popcon::Popcon& popcon() { return *m_popcon; }
+
+ /// Access the popcon data
+ ept::popcon::Local& popconLocal() { return *m_popconlocal; }
+
+ /// Access the textsearch data
+ ept::textsearch::TextSearch& textsearch() { return *m_textsearch; }
+
+ // Accessor methods
+
+ bool verbose() const throw () { return _verbose; }
+ bool verbose(bool verbose) throw () { return _verbose = verbose; }
+
+ bool debug() const throw () { return _debug; }
+ bool debug(bool debug) throw ()
+ {
+ // Debug implies verbose
+ if (debug)
+ _verbose = true;
+ return _debug = debug;
+ }
+};
+
+// Commodity output functions
+
+#ifndef ATTR_PRINTF
+ #ifdef GCC
+ #define ATTR_PRINTF(string, first) __attribute__((format (printf, string, first)))
+ #else
+ #define ATTR_PRINTF(string, first)
+ #endif
+#endif
+
+void fatal_error(const char* fmt, ...) throw() ATTR_PRINTF(1, 2);
+void error(const char* fmt, ...) throw() ATTR_PRINTF(1, 2);
+void warning(const char* fmt, ...) throw() ATTR_PRINTF(1, 2);
+void verbose(const char* fmt, ...) throw() ATTR_PRINTF(1, 2);
+void debug(const char* fmt, ...) throw() ATTR_PRINTF(1, 2);
+void feedback(const char* fmt, ...) throw() ATTR_PRINTF(1, 2);
+
+static inline Environment& env() { return Environment::get(); }
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/tools/EptCacheOptions.h b/tools/EptCacheOptions.h
new file mode 100644
index 0000000..f666e12
--- /dev/null
+++ b/tools/EptCacheOptions.h
@@ -0,0 +1,293 @@
+#ifndef EPTCACHE_OPTIONS_H
+#define EPTCACHE_OPTIONS_H
+
+/*
+ * Commandline parser for tagcoll
+ *
+ * Copyright (C) 2003,2004,2005,2006 Enrico Zini
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/config.h>
+#include <wibble/commandline/parser.h>
+
+namespace wibble {
+namespace commandline {
+
+struct EptCacheOptions : public StandardParserWithMandatoryCommand
+{
+public:
+ BoolOption* out_quiet;
+ BoolOption* out_verbose;
+
+ BoolOption* out_debug;
+ BoolOption* out_names;
+ BoolOption* out_short;
+ BoolOption* out_full;
+ BoolOption* out_tagcoll;
+ IntOption* out_limit;
+ IntOption* out_cutoff;
+ StringOption* out_sort;
+
+ StringOption* filter_tagexpr;
+ StringOption* filter_type;
+
+#if 0
+ BoolOption* out_facets;
+ BoolOption* match_invert;
+
+ BoolOption* misc_local;
+ BoolOption* misc_reindex;
+ IntOption* misc_distance;
+ StringOption* misc_vocfile;
+
+ BoolOption* smse_reltags;
+ BoolOption* smse_disctags;
+
+#endif
+ Engine* show;
+ Engine* search;
+ Engine* dumpavail;
+ Engine* reindex;
+ Engine* info;
+ Engine* related;
+#if 0
+ Engine* update;
+ Engine* selfcheck;
+ Engine* check;
+ Engine* tagcat;
+ Engine* tagshow;
+ Engine* tagsearch;
+ Engine* cat;
+ Engine* grep;
+ Engine* install;
+ Engine* diff;
+ Engine* maintainers;
+ Engine* tag;
+ Engine* submit;
+ Engine* todo;
+ Engine* score;
+ Engine* stats;
+ Engine* todoreport;
+ Engine* smartsearch;
+ Engine* vocfilter;
+#endif
+
+ EptCacheOptions()
+ : StandardParserWithMandatoryCommand("ept-cache", VERSION, 1, "enrico@enricozini.org")
+ {
+ usage = "<command> [options and arguments]";
+ description = "High-level tool to access package information";
+
+ // Output options
+ out_verbose = add<BoolOption>("verbose", 'v', "verbose", "",
+ "enable verbose output");
+ out_debug = add<BoolOption>("debug", 0, "debug", "",
+ "enable debugging output (including verbose output)");
+
+ // Create the package output group
+ OptionGroup* pkgOutputOpts = createGroup("Output options");
+ out_names = pkgOutputOpts->add<BoolOption>("names", 0, "names", "",
+ "output only the names of the packages");
+ out_quiet = pkgOutputOpts->add<BoolOption>("quiet", 'q', "quiet", "",
+ "do not write anything to standard output");
+ out_short = pkgOutputOpts->add<BoolOption>("short", 0, "short", "",
+ "output the names of the packages, plus a short description");
+ out_full = pkgOutputOpts->add<BoolOption>("full", 0, "full", "",
+ "output the full record of package data");
+ out_tagcoll = pkgOutputOpts->add<BoolOption>("tagcoll", 0, "tagcoll", "",
+ "tagcoll-style output");
+ out_limit = pkgOutputOpts->add<IntOption>("limit", 0, "limit", "count",
+ "maximum number of packages to show");
+ out_cutoff = pkgOutputOpts->add<IntOption>("cutoff", 0, "cutoff", "percent",
+ "do not show results that are this percent worse than the top result");
+ out_sort = pkgOutputOpts->add<StringOption>("sort", 's', "sort", "method",
+ "sort order (use 'list' for a list of supported options)");
+
+ OptionGroup* filterOpts = createGroup("Filter options");
+ filter_tagexpr = filterOpts->add<StringOption>("ftags", 0, "ftags", "tagexpr",
+ "only print packages matching this tag expression");
+ filter_type = filterOpts->add<StringOption>("type", 't', "type", "name",
+ "only print packages of a given type (use 'list' for a list of supported types)");
+
+#if 0
+ // Create the collection output group
+ OptionGroup* collOutputOpts = createGroup("Options controlling transformations of tag data on output");
+ out_facets = collOutputOpts->add<BoolOption>("facets", 0, "facets", "",
+ "output only the names of the facets (mainly used for computing statistics)");
+
+ // Create the matching options group
+ OptionGroup* matchOpts = createGroup("Options controlling matching of packages");
+ match_invert = matchOpts->add<BoolOption>("invert", 'i', "invert", "",
+ "invert the match, selecting non-matching items");
+
+ selfcheck = addEngine("selfcheck", "",
+ "perform a series of internal self checks using the current tag data");
+
+ check = addEngine("check", "<file>",
+ "check that all the tags in the given tagged collection are present "
+ "in the tag vocabulary. Checks the main database if no file is "
+ "specified");
+
+ tagcat = addEngine("tagcat", "", "output the tag vocabulary");
+
+ tagshow = addEngine("tagshow", "",
+ "show the vocabulary informations about a tag");
+
+ tagsearch = addEngine("tagsearch", "<string [string [string ...]]>",
+ "show a summary of all tags whose data contains the given strings");
+
+ related = addEngine("related", "<pkg1[,pkg2[,pkg3...]]>",
+ "show packages related to the given one(s)",
+ "Output a list of the packages that are related to the given package or list of packages. "
+ "If more than one package are to be specified, separate them with commas.\n"
+ "The --distance option can be used to control how closely related the output "
+ "packages should be from the package(s) specified.");
+ related->examples = "debtags related mutt,mozilla-browser";
+ misc_distance = related->add<IntOption>("distance", 'd', "distance",
+ "set the maximum distance to use for the \"related\" command (defaults to 0)");
+
+ cat = addEngine("cat", "", "output the full package tag database");
+ cat->add(matchOpts);
+ cat->add(collOutputOpts);
+#endif
+
+ show = addEngine("show", "<pkg>",
+ "show informations about a package, like apt-cache show does, but "
+ "adds new fields with all available extra metadata");
+ show->add(pkgOutputOpts);
+
+ search = addEngine("search", "[keywords]",
+ "output the names and descriptions of the packages that match"
+ " the given tag expression");
+ search->add(pkgOutputOpts);
+ search->add(filterOpts);
+
+ dumpavail = addEngine("dumpavail", "[keywords]",
+ "output the full package database, with all extra metadata");
+ dumpavail->add(pkgOutputOpts);
+ dumpavail->add(filterOpts);
+
+ reindex = addEngine("reindex", "",
+ "updates the various indexes managed by libept (requires root).\n"
+ "It needs to be run as root");
+ reindex->add(out_quiet);
+
+ info = addEngine("info", "",
+ "show information about the data providers.\n");
+
+ related = addEngine("related", "[pkgnames]",
+ "show packages similar to the given ones",
+ "Show packages similar to the given ones. Package similarity is "
+ " computed by how many common elements there are in their"
+ " descriptions and their tags");
+ related->add(pkgOutputOpts);
+ related->add(filterOpts);
+
+#if 0
+ update = addEngine("update", "",
+ "updates the package tag database (requires root)",
+ "Collect package tag data from the sources listed in "
+ "/etc/debtags/sources.list, then regenerate the debtags "
+ "tag database and main index.\n"
+ "It needs to be run as root");
+ misc_local = update->add<BoolOption>("local", 0, "local",
+ "do not download files when performing an update");
+ misc_reindex = update->add<BoolOption>("reindex", 0, "reindex",
+ "do not download any file, just do reindexing if needed");
+#endif
+
+#if 0
+ grep = addEngine("grep", "<tag expression>",
+ "output the lines of the full package tag database that match"
+ " the given tag expression");
+ grep->add(matchOpts);
+ grep->add(collOutputOpts);
+
+ install = addEngine("install", "<tag expression>",
+ "apt-get install the packages that match the given tag expression",
+ "Invokes apt-get install with the names of the packages matched "
+ "by the given tag expression. If you want to see what packages "
+ "would be installed you can use debtags search, as "
+ "debtags install just calls apt-get install on all "
+ "the results of an equivalent debtags search. Please note "
+ "that debtags install is just a prototype feature useful "
+ "for experimenting in some environments like Custom Debian "
+ "Distributions. For this reason it is suggested that you "
+ "use debtags just as a way to find packages, and "
+ "proper package managers as the way to install them");
+ install->add(matchOpts);
+
+ diff = addEngine("diff", "[filename]",
+ "create a tag patch between the current tag database and the tag"
+ "collection [filename]. Standard input is used if filename is not specified");
+ diff->aliases.push_back("mkpatch");
+
+ maintainers = addEngine("maintainers", "",
+ "create a tagged collection of maintainers and the tags of the"
+ "packages they maintain");
+ maintainers->add(collOutputOpts);
+
+ tag = addEngine("tag", "{add|rm|ls} <package> [tags...]",
+ "view and edit the tags for a package",
+ "General manipulation of tags, useful for automation in scripts.\n"
+ "It can be used in three ways:\n"
+ "tag add <package> <tags...> will add the tags to the given package\n"
+ "tag rm <package> <tags...> will remove the tags from the given package\n"
+ "tag ls <package> will output the names of the tags of the given package");
+
+ submit = addEngine("submit", "[patch]",
+ "mail the given patch file to the central tag repository."
+ "If [patch] is omitted, mail the local tag modifications.");
+
+ todo = addEngine("todo", "",
+ "print a list of the installed packages that are not yet tagged");
+ todo->add(pkgOutputOpts);
+
+ score = addEngine("score", "",
+ "score uninstalled packages according to how often their tags "
+ "appear in the packages that are installed already");
+
+ stats = addEngine("stats", "",
+ "print statistics about Debtags");
+
+ todoreport = addEngine("todoreport", "",
+ "print a report of packages needing work");
+
+ smartsearch = addEngine("smartsearch", "<word [word1 [+tag [-tag1 ...]]]>",
+ "Perform a keyword search integrated with related packages.\n"
+ "A + prefix indicates a wanted tag. A - prefix indicates "
+ "an unwanted tag. Other words indicate keywords to search.\n"
+ "Remember to use '--' before unwanted tags to avoid to have "
+ "them interpreted as commandline switches.\n");
+ smse_reltags = smartsearch->add<BoolOption>("relevant", 0, "relevant",
+ "only print the tag names sorted by increasing relevance");
+ smse_disctags = smartsearch->add<BoolOption>("discriminant", 0, "discriminant",
+ "only print the tag names sorted by increasing discriminance");
+
+ vocfilter = addEngine("vocfilter", "tagfile",
+ "filter out the tags that are not found in the given vocabulary file");
+ misc_vocfile = vocfilter->add<StringOption>("vocabulary", 0, "vocabulary",
+ "vocabulary file to use instead of the current debtags vocabulary");
+#endif
+ }
+};
+
+}
+}
+
+// vim:set ts=4 sw=4:
+#endif
diff --git a/tools/ept-cache-man-hooks b/tools/ept-cache-man-hooks
new file mode 100644
index 0000000..3563668
--- /dev/null
+++ b/tools/ept-cache-man-hooks
@@ -0,0 +1,49 @@
+DESCRIPTION end
+|\fBept-cache\fP is a high-level tool to access package information.
+|.P
+|It can currently search and display data from four sources: the APT database,
+|the Debtags tag information, Popcon package scores and a fast Xapian-based full
+|text index on package descriptions.
+|.P
+|If the Xapian data source is enabled, output results are by default sorted by
+|relevance order, with the best results first. If you are seeing strange
+|results in the output, rerun the search with the \-\-full switch and look at
+|the Search\-Score headers.
+
+OPTIONS end
+|.SH EXAMPLES
+|.P
+|.nf
+|# Output all the available information about apt
+|ept-cache show apt
+|
+|# Keyword search
+|ept-cache search image editor
+|
+|# Keyword search with simple tag filter
+|ept-cache search -t gui image editor
+|
+|# More results
+|ept-cache search -t gui --limit=300 image editor
+|
+|# Output full package records for grep-dctrl.
+|# The records will contain improved Tag: headers, Popcon information and
+|# any other information that is available through libept.
+|ept-cache dumpavail -t gui image editor
+|
+|# Show packages similar to mutt
+|ept-cache related mutt
+|
+|# Show packages somewhat inbetween mutt and iceweasel
+|ept-cache related mutt iceweasel
+|
+|# Show what data sources are available
+|ept-cache info
+|
+|# Build or update the indexes (needs root)
+|ept-cache reindex
+|.fi
+
+AUTHOR before
+|.SH SEE ALSO
+|\fBdebtags\fP (1), \fBapt-cache\fP (1)
diff --git a/tools/ept-cache.cc b/tools/ept-cache.cc
new file mode 100644
index 0000000..2b28eec
--- /dev/null
+++ b/tools/ept-cache.cc
@@ -0,0 +1,1020 @@
+/*
+ * ept-cache - Commandline interface to the ept library
+ *
+ * Copyright (C) 2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include "Environment.h"
+#include "EptCacheOptions.h"
+#include "info.h"
+#include "filters.h"
+#include "utils.h"
+
+#include <ept/apt/apt.h>
+#include <ept/apt/packagerecord.h>
+#include <ept/popcon/popcon.h>
+#include <ept/popcon/local.h>
+#include <ept/debtags/expression.h>
+#include <ept/textsearch/textsearch.h>
+#include <ept/textsearch/extraindexers.h>
+
+#include <wibble/regexp.h>
+
+#include <algorithm>
+#include <iostream>
+#include <sstream>
+
+#include <unistd.h>
+
+/*
+ * * For packages
+ *
+ * Filters:
+ * + keyword search
+ * + tag expression
+ * - min/max popularity
+ * - installed status
+ *
+ * Sort orders
+ * + unsorted
+ * + alphabetical (?)
+ * + by popularity
+ * + by representativeness (only when installed)
+ * - by xapian score
+ *
+ * Show
+ * + Names only
+ * + Names and short descriptions
+ * + Full fields (dumpavail)
+ * + Nothing (return value à la grep)
+ *
+ *
+ * * For tags
+ *
+ * Filters
+ *
+ * - keyword search
+ * - relevance search
+ *
+ * Sort orders
+ *
+ * - alphabetic order
+ * - relevance order
+ * - xapian order (automatically given by the data source)
+ *
+ * Show
+ * - Names only
+ * - Names and short descriptions
+ * - Full fields (dumpavail)
+ * - Nothing (return value à la grep)
+ */
+
+using namespace std;
+using namespace tagcoll;
+using namespace ept;
+using namespace ept::debtags;
+using namespace ept::apt;
+using namespace ept::textsearch;
+
+static const int DEFAULT_QUALITY_CUTOFF = 50;
+
+// Database of expression macros
+struct ExpressionMacros : public map<string, string>
+{
+ ExpressionMacros() {
+ insert(make_pair("gui", "role::program && (interface::x11 || interface::3d)"));
+ insert(make_pair("cmdline", "role::program && interface::commandline"));
+ insert(make_pair("game", "role::program && game::*"));
+ insert(make_pair("devel", "devel::* && !role::shared-lib"));
+ insert(make_pair("clean", "!role::shared-lib && !role::app-data"));
+ }
+} expressionMacros;
+
+// Sorting infrastructure
+template<typename SORTER>
+struct Negator
+{
+ const SORTER& s;
+
+ Negator(const SORTER& s) : s(s) {}
+
+ bool operator()(const Info* a, const Info* b) const
+ {
+ return s(b, a);
+ }
+};
+template<typename SORTER>
+Negator<SORTER> negator(const SORTER& s)
+{
+ return Negator<SORTER>(s);
+}
+bool popularitySort(const Info* a, const Info* b)
+{
+ return a->popcon * a->xapian_score < b->popcon * b->xapian_score;
+}
+bool tfidfSort(const Info* a, const Info* b)
+{
+ return a->tfidf < b->tfidf;
+}
+bool nameSort(const Info* a, const Info* b)
+{
+ return a->name < b->name;
+}
+bool downloadSizeSort(const Info* a, const Info* b)
+{
+ return a->record->packageSize() < b->record->packageSize();
+}
+bool installedSizeSort(const Info* a, const Info* b)
+{
+ return a->record->installedSize() < b->record->installedSize();
+}
+
+/// Consumer for package filters
+struct Consumer
+{
+ size_t count;
+ int limit;
+
+ Consumer() : count(0), limit(-1) {}
+ virtual ~Consumer() {}
+
+ // Set the maximum number of items to consume from now on
+ void setLimit(int limit) { this->limit = limit; }
+
+ // Set the maximum number of items to consume from now on to unlimited
+ void resetLimit() { limit = -1; }
+
+ // Consume one Info item; returns true if it can consume more, false if
+ // production should stop for this consumer
+ virtual bool operator()(Info& i)
+ {
+ ++count;
+ if (limit == -1)
+ return true;
+ else if (limit > 0)
+ {
+ --limit;
+ return true;
+ } else
+ return false;
+ }
+
+ // Signal that no more items will be produced
+ virtual void done() {}
+};
+
+struct Sorter : public Consumer
+{
+ vector<Info*> data;
+ bool reverse;
+ char sortType;
+ Consumer* out;
+
+ Sorter(const std::string& stype, Consumer* out)
+ : reverse(false), sortType(0), out(out)
+ {
+ // Parse the sort type
+ for (string::const_iterator i = stype.begin();
+ i != stype.end(); ++i)
+ switch (*i)
+ {
+ case '-': reverse = true; break;
+ default: if (!sortType) sortType = *i; break;
+ }
+ // Early warning to avoid complaining after generation was done
+ if (sortType != 'd' && sortType != 'i' && sortType != 'n' && sortType != 'p' && sortType != 't' && sortType != 'x')
+ throw wibble::exception::Consistency("parsing sort type", "invalid sort type (use 'list' for a list)");
+ }
+ virtual ~Sorter()
+ {
+ if (out) delete out;
+ for (vector<Info*>::iterator i = data.begin();
+ i != data.end(); ++i)
+ delete *i;
+ }
+
+ /**
+ * Disconnect the chained consumer so that it will not be deallocated when
+ * the Sorter object is deleted.
+ *
+ * @returns The chained consumer
+ */
+ Consumer* disconnectConsumer()
+ {
+ Consumer* res;
+ this->out = 0;
+ return res;
+ }
+
+ virtual bool operator()(Info& i)
+ {
+ if (!Consumer::operator()(i))
+ return false;
+ data.push_back(new Info(i));
+ return true;
+ }
+
+ virtual void done()
+ {
+ bool generateReversed = false;
+
+ // Perform sorting
+ switch (sortType)
+ {
+ case 'd':
+ // Download size
+ for (vector<Info*>::iterator i = data.begin();
+ i != data.end(); ++i)
+ (*i)->wantRecord();
+ if (reverse)
+ std::sort(data.begin(), data.end(), negator(downloadSizeSort));
+ else
+ std::sort(data.begin(), data.end(), downloadSizeSort);
+ break;
+ case 'i':
+ // Installed size
+ for (vector<Info*>::iterator i = data.begin();
+ i != data.end(); ++i)
+ (*i)->wantRecord();
+ if (reverse)
+ std::sort(data.begin(), data.end(), negator(installedSizeSort));
+ else
+ std::sort(data.begin(), data.end(), installedSizeSort);
+ break;
+ case 'n':
+ // Alphabetical
+ if (reverse)
+ std::sort(data.begin(), data.end(), negator(nameSort));
+ else
+ std::sort(data.begin(), data.end(), nameSort);
+ break;
+ case 'p':
+ // Popularity
+ for (vector<Info*>::iterator i = data.begin();
+ i != data.end(); ++i)
+ (*i)->wantPopcon();
+ if (reverse)
+ std::sort(data.begin(), data.end(), negator(popularitySort));
+ else
+ std::sort(data.begin(), data.end(), popularitySort);
+ break;
+ case 't':
+ // TFIDF
+ for (vector<Info*>::iterator i = data.begin();
+ i != data.end(); ++i)
+ (*i)->wantPopconLocal();
+ if (reverse)
+ //std::sort(data.begin(), data.end(), negator(tfidfSort));
+ std::sort(data.begin(), data.end(), negator(tfidfSort));
+ else
+ std::sort(data.begin(), data.end(), tfidfSort);
+ break;
+ case 'x':
+ // Xapian score
+
+ // We need to flip the other way round here, because xapian
+ // produces results in reverse score order
+ generateReversed = !reverse;
+ break;
+ default:
+ throw wibble::exception::Consistency("sorting", "invalid sort type (use 'list' for a list)");
+ }
+
+ if (generateReversed)
+ {
+ for (vector<Info*>::reverse_iterator i = data.rbegin();
+ i != data.rend(); ++i)
+ if (!(*out)(**i))
+ break;
+ }
+ else
+ {
+ for (vector<Info*>::iterator i = data.begin();
+ i != data.end(); ++i)
+ if (!(*out)(**i))
+ break;
+ }
+ }
+};
+
+struct NullPrinter : public Consumer
+{
+ virtual ~NullPrinter() {}
+};
+
+struct NamePrinter : public Consumer
+{
+ ostream& out;
+ NamePrinter(ostream& out) : out(out) {}
+
+ virtual ~NamePrinter() {}
+ virtual bool operator()(Info& i)
+ {
+ if (!Consumer::operator()(i))
+ return false;
+ out << i.name << endl;
+ return true;
+ }
+};
+
+struct ShortDescPrinter : public Consumer
+{
+ ostream& out;
+ ShortDescPrinter(ostream& out) : out(out) {}
+ virtual ~ShortDescPrinter() {}
+ virtual bool operator()(Info& i)
+ {
+ if (!Consumer::operator()(i))
+ return false;
+ i.wantRecord();
+ out << i.name << " - " <<
+ i.record->shortDescription("(short description not available)") << endl;
+ return true;
+ }
+};
+
+struct TagcollPrinter : public Consumer
+{
+ ostream& out;
+ TagcollPrinter(ostream& out) : out(out) {}
+ virtual ~TagcollPrinter() {}
+ virtual bool operator()(Info& i)
+ {
+ if (!Consumer::operator()(i))
+ return false;
+ i.wantTags();
+ out << i.name << ": " << i.tags << endl;
+ return true;
+ }
+};
+
+struct FullRecordPrinter : public Consumer
+{
+ bool hasDebtags;
+ bool hasPopcon;
+ bool hasPopconLocal;
+ ostream& out;
+ FullRecordPrinter(ostream& out) : out(out)
+ {
+ hasDebtags = env().debtags().hasData();
+ hasPopcon = env().popcon().hasData();
+ hasPopconLocal = env().popconLocal().hasData();
+ }
+ virtual ~FullRecordPrinter() {}
+ virtual bool operator()(Info& info)
+ {
+ if (!Consumer::operator()(info))
+ return false;
+ info.wantRecord();
+ info.wantTags();
+ PackageRecord& record = *info.record;
+ bool tagsPrinted = false;
+ for (size_t i = 0; i < record.size(); ++i)
+ {
+ if (record.name(i) == "Tag")
+ {
+ tagsPrinted = true;
+ if (!info.tags.empty())
+ out << "Tag: " << info.tags << std::endl;
+ } else {
+ out << record.field(i);
+ }
+ }
+ if (!tagsPrinted)
+ if (!info.tags.empty())
+ out << "Tag: " << info.tags << std::endl;
+ if (hasPopcon)
+ {
+ info.wantPopcon();
+ out << "Popcon: " << info.popcon << endl;
+ }
+ if (hasPopconLocal)
+ {
+ info.wantPopconLocal();
+ out << "TFIDF: " << info.tfidf << endl;
+ }
+ if (info.has_xapian)
+ {
+ out << "Search-Score: " << info.xapian_score << endl;
+ }
+ out << std::endl;
+ return true;
+ }
+};
+
+/// Send a tag stream to an Info consumer
+class OutputInfo : public wibble::mixin::OutputIterator<OutputInfo>
+{
+ const filter::Base& filter;
+ Consumer& out;
+ // When true, the consumer is ignoring the input
+ bool done;
+
+public:
+ OutputInfo(const filter::Base& filter, Consumer& out)
+ : filter(filter), out(out), done(false) {}
+
+ template<typename ITEMS, typename TAGS>
+ OutputInfo& operator=(const std::pair<ITEMS, TAGS>& data)
+ {
+ if (done) return *this;
+ for (typename ITEMS::const_iterator i = data.first.begin();
+ i != data.first.end(); ++i)
+ {
+ if (!env().apt().isValid(*i)) continue;
+ Info info(*i);
+ info.has_tags = true;
+ info.tags = data.second;
+ if (filter(info))
+ if (!out(info))
+ {
+ done = true;
+ break;
+ }
+ }
+ return *this;
+ }
+};
+
+/**
+ * Generate an Info stream and send it to a consumer.
+ *
+ * The sorting order will depend on what is the data provider that is chosen to
+ * initiate the stream, and is thus undefined.
+ */
+struct Generator
+{
+ filter::And filters;
+
+ // Generate all the packages, without records
+ void generateNames(Consumer& out)
+ {
+ debug("Generate iterating names\n");
+ for (Apt::iterator i = env().apt().begin();
+ i != env().apt().end(); ++i)
+ {
+ Info info(*i);
+ if (filters(info))
+ if (!out(info))
+ break;
+ }
+ }
+
+ // Generate all the packages, with records
+ void generateRecords(Consumer& out)
+ {
+ debug("Generate iterating records\n");
+ PackageRecord rec;
+ for (Apt::record_iterator i = env().apt().recordBegin();
+ i != env().apt().recordEnd(); ++i)
+ {
+ rec.scan(*i);
+ Info info(rec.package());
+ info.record = &rec;
+ if (filters(info))
+ if (!out(info))
+ break;
+ }
+ }
+
+ // Generate after a keyword search
+ void keywordXapianSearch(const vector<string>& keywords, Consumer& out, int qualityCutoff = DEFAULT_QUALITY_CUTOFF)
+ {
+ debug("Generate with xapian\n");
+ Xapian::Enquire enquire(env().textsearch().db());
+
+ // Set up the base query
+ Xapian::Query query = env().textsearch().makeORQuery(keywords.begin(), keywords.end());
+ enquire.set_query(query);
+ debug("Xapian query: %s\n", query.get_description().c_str());
+
+ // Get a set of tags to expand the query
+ vector<string> expand = env().textsearch().expand(enquire);
+
+ // Build the expanded query
+ Xapian::Query expansion(Xapian::Query::OP_OR, expand.begin(), expand.end());
+ enquire.set_query(Xapian::Query(Xapian::Query::OP_OR, query, expansion));
+ debug("Expanded Xapian query: %s\n", enquire.get_query().get_description().c_str());
+
+ //cerr << "Q: " << enquire.get_query().get_description() << endl;
+ fromXapianEnquire(enquire, out, qualityCutoff);
+ }
+
+ void fromXapianEnquire(Xapian::Enquire& enquire, Consumer& out, int qualityCutoff = DEFAULT_QUALITY_CUTOFF, const Xapian::MatchDecider* md = 0)
+ {
+ // Retrieve the first result, to compute the cutoff score
+ Xapian::MSet first = enquire.get_mset(0, 1, 0, 0, md);
+ Xapian::MSetIterator ifirst = first.begin();
+ if (ifirst == first.end())
+ // If there are no results, quit now
+ return;
+ // Set a percentage cutoff based on the quality of the first results
+ debug(" Reference value for quality cutoff: %d%%\n", ifirst.get_percent());
+ Xapian::percent cutoff = ifirst.get_percent() * qualityCutoff / 100;
+ debug(" Quality cutoff at: %d%%\n", cutoff);
+ enquire.set_cutoff(cutoff);
+
+ bool done = false;
+ for (size_t pos = 0; !done; pos += 20)
+ {
+ // Limit to 1000 matches
+ Xapian::MSet matches = enquire.get_mset(pos, 20, 0, 0, md);
+ if (matches.size() < 20)
+ done = true;
+ for (Xapian::MSetIterator i = matches.begin(); i != matches.end(); ++i)
+ {
+ // Filter out results that apt doesn't know
+ if (!env().apt().isValid(i.get_document().get_data()))
+ {
+ debug(" Not in apt database: %s\n", i.get_document().get_data().c_str());
+ continue;
+ }
+ // Create the info element
+ Info info(i.get_document().get_data());
+ info.has_xapian = true;
+ info.xapian_score = i.get_percent();
+
+ debug(" Producing %s (%d%%)\n", info.name.c_str(), info.xapian_score);
+
+ // Pass it on to the consumer
+ if (filters(info))
+ if (!out(info))
+ {
+ done = true;
+ break;
+ }
+ }
+ }
+ }
+
+ void keywordAptSearch(const vector<string>& keywords, Consumer& out)
+ {
+ debug("Generate iterating records plus a keyword search\n");
+ filters.acquire_front(new filter::Description(keywords));
+ generateRecords(out);
+ }
+
+ void debtagsSearch(const set<Tag>& wantedTags, Consumer& out)
+ {
+ debug("Generate by querying debtags\n");
+ env().debtags().outputHavingTags(wantedTags, OutputInfo(filters, out));
+ }
+};
+
+
+/**
+ * Instantiate the consumer defined by the output options.
+ *
+ * If no output option has been specified, it returns the given default.
+ * Otherwise it creates a new default consumer and deletes the default one.
+ */
+Consumer* createPrinter(const wibble::commandline::EptCacheOptions& opts, Consumer* def)
+{
+ Consumer* res = 0;
+ if (opts.out_names->boolValue())
+ res = new NamePrinter(cout);
+ else if (opts.out_short->boolValue())
+ res = new ShortDescPrinter(cout);
+ else if (opts.out_full->boolValue())
+ res = new FullRecordPrinter(cout);
+ else if (opts.out_quiet->boolValue())
+ res = new NullPrinter();
+ else if (opts.out_tagcoll->boolValue())
+ res = new TagcollPrinter(cout);
+ else
+ res = def;
+ if (res != def)
+ delete def;
+ return res;
+}
+
+bool usesXapian(wibble::commandline::EptCacheOptions& opts)
+{
+ return opts.hasNext() && env().textsearch().hasData();
+}
+
+void generate(wibble::commandline::EptCacheOptions& opts, Consumer& output,
+ int defaultXapianLimit = -1, int defaultXapianQualityCutoff = DEFAULT_QUALITY_CUTOFF)
+{
+ Generator gen;
+
+ // Append filters
+ if (opts.filter_tagexpr->isSet())
+ gen.filters.acquire(new filter::TagExpression(opts.filter_tagexpr->stringValue()));
+
+ if (opts.filter_type->isSet())
+ {
+ ExpressionMacros::const_iterator i = expressionMacros.find(opts.filter_type->stringValue());
+ if (i == expressionMacros.end())
+ throw wibble::exception::Consistency("parsing filter type", "invalid filter type (use 'list' for a list)");
+ gen.filters.acquire(new filter::TagExpression(i->second));
+ }
+
+ // Configure the output consumer with sorters and limits
+ Consumer* cons = &output;
+
+ // If we sort, we introduce an intermediate step
+ if (opts.out_sort->isSet())
+ cons = new Sorter(opts.out_sort->stringValue(), cons);
+
+ // Set the output limit where it's needed
+ bool xapian = usesXapian(opts);
+ if (xapian)
+ {
+ if (opts.out_sort->isSet())
+ {
+ // If we use Xapian and we have a sorter, we need a cutoff
+ // at the quality score: since the sorter will scramble the
+ // xapian relevance scoring, we only need to feed good
+ // results to it
+
+ // Keep the default Xapian quality cutoff set by the user, then
+
+ // Set the match limit on the printer side
+ if (opts.out_limit->isSet())
+ output.setLimit(opts.out_limit->intValue());
+ } else {
+ // If we use Xapian and don't have a sorter, we can keep
+ // generating less relevant results as the xapian sorting
+ // order will help the user to make sense of the results
+ defaultXapianQualityCutoff = -1;
+
+ // Set the match limit at the beginning of the output chain
+ if (opts.out_limit->isSet())
+ cons->setLimit(opts.out_limit->intValue());
+ else if (defaultXapianLimit != -1)
+ // Xapian shows the best matches first, so we can greatly
+ // reduce the limit
+ cons->setLimit(defaultXapianLimit);
+ }
+ }
+ else
+ {
+ // If we don't use Xapian, the packages arrive in undefined
+ // order, so we need to feed all of them to the sorter
+ // because we don't know when the top scored packages will
+ // be generated, or to the output
+
+ // Set the match limit on the printer side
+ if (opts.out_limit->isSet())
+ output.setLimit(opts.out_limit->intValue());
+ }
+
+ if (opts.out_cutoff->isSet())
+ defaultXapianQualityCutoff = opts.out_cutoff->intValue();
+
+ if (opts.hasNext())
+ {
+ // We have keywords
+ vector<string> keywords;
+ while (opts.hasNext())
+ keywords.push_back(toLower(opts.next()));
+ if (env().textsearch().hasData())
+ gen.keywordXapianSearch(keywords, *cons, defaultXapianQualityCutoff);
+ else
+ gen.keywordAptSearch(keywords, *cons);
+ } else {
+ // No keyword search
+ if (opts.out_names->boolValue())
+ gen.generateNames(*cons);
+ else
+ gen.generateRecords(*cons);
+ }
+
+ // Signal the end of input to the consumers
+ cons->done();
+}
+
+struct BlacklistDecider : public Xapian::MatchDecider
+{
+ std::set<std::string> blacklist;
+ BlacklistDecider() {}
+ BlacklistDecider(const std::set<std::string>& blacklist) : blacklist(blacklist) {}
+
+ virtual bool operator()(const Xapian::Document& doc) const
+ {
+ return blacklist.find(doc.get_data()) == blacklist.end();
+ }
+};
+
+void generateRelated(wibble::commandline::EptCacheOptions& opts, Consumer& output,
+ int defaultXapianLimit = -1, int defaultXapianQualityCutoff = DEFAULT_QUALITY_CUTOFF)
+{
+ Generator gen;
+
+ // Append filters
+ if (opts.filter_tagexpr->isSet())
+ gen.filters.acquire(new filter::TagExpression(opts.filter_tagexpr->stringValue()));
+
+ if (opts.filter_type->isSet())
+ {
+ ExpressionMacros::const_iterator i = expressionMacros.find(opts.filter_type->stringValue());
+ if (i == expressionMacros.end())
+ throw wibble::exception::Consistency("parsing filter type", "invalid filter type (use 'list' for a list)");
+ gen.filters.acquire(new filter::TagExpression(i->second));
+ }
+
+ // Configure the output consumer with sorters and limits
+ Consumer* cons = &output;
+
+ // If we sort, we introduce an intermediate step
+ if (opts.out_sort->isSet())
+ cons = new Sorter(opts.out_sort->stringValue(), cons);
+
+ // Set the output limit where it's needed
+ if (opts.out_sort->isSet())
+ {
+ // If we use Xapian and we have a sorter, we need a cutoff
+ // at the quality score: since the sorter will scramble the
+ // xapian relevance scoring, we only need to feed good
+ // results to it
+
+ // Keep the default Xapian quality cutoff set by the user, then
+
+ // Set the match limit on the printer side
+ if (opts.out_limit->isSet())
+ output.setLimit(opts.out_limit->intValue());
+ } else {
+ // If we use Xapian and don't have a sorter, we can keep
+ // generating less relevant results as the xapian sorting
+ // order will help the user to make sense of the results
+ defaultXapianQualityCutoff = -1;
+
+ // Set the match limit at the beginning of the output chain
+ if (opts.out_limit->isSet())
+ cons->setLimit(opts.out_limit->intValue());
+ else if (defaultXapianLimit != -1)
+ // Xapian shows the best matches first, so we can greatly
+ // reduce the limit
+ cons->setLimit(defaultXapianLimit);
+ }
+
+ if (opts.out_cutoff->isSet())
+ defaultXapianQualityCutoff = opts.out_cutoff->intValue();
+
+ TextSearch& textsearch = env().textsearch();
+ Xapian::Enquire enq(textsearch.db());
+ string name = opts.next();
+ Xapian::Query query = textsearch.makeRelatedQuery(name);
+ BlacklistDecider blacklister;
+ debug("Excluding '%s' from the results\n", name.c_str());
+ blacklister.blacklist.insert(name);
+ // We can even easily compute packages related to a list of packages
+ while (opts.hasNext())
+ {
+ name = opts.next();
+ debug("Excluding '%s' from the results\n", name.c_str());
+ blacklister.blacklist.insert(name);
+ if (!env().apt().isValid(name))
+ throw wibble::exception::Consistency("reading package names", "package "+name+" does not exist");
+ query = Xapian::Query(Xapian::Query::OP_AND, query, textsearch.makeRelatedQuery(name));
+ }
+ //enq.register_match_decider("blacklist", &blacklister);
+ //gen.filters.acquire(new filter::Blacklist(seen));
+ enq.set_query(query);
+
+ // Generate from the Xapian enquire
+ //cerr << "Q: " << enq.get_query().get_description() << endl;
+ gen.fromXapianEnquire(enq, *cons, defaultXapianQualityCutoff, &blacklister);
+
+ // Signal the end of input to the consumers
+ cons->done();
+}
+
+bool printOutOptionsHelpIfNeeded(wibble::commandline::EptCacheOptions& opts)
+{
+ if (opts.filter_type->isSet() && opts.filter_type->stringValue() == "list")
+ {
+ for (ExpressionMacros::const_iterator i = expressionMacros.begin();
+ i != expressionMacros.end(); ++i)
+ cout << i->first << ": " << i->second << endl;
+ return true;
+ }
+
+ if (opts.out_sort->isSet() && opts.out_sort->stringValue() == "list")
+ {
+ cout << "Available sort options:" << endl
+ << endl
+ << "download size - Sort by download size" << endl
+ << "installed size - Sort by installed size" << endl
+ << "name - Sort alphabetically by package name" << endl
+ << "popularity - Sort by popcon popularity" << endl
+ << "tfidf - Sort by how much a package makes a system unique" << endl
+ << "xapian - Sort by xapian relevance score" << endl
+ << endl
+ << "It is sufficient to provide a nonambiguous prefix of the sort type." << endl
+ << "Add a '-' to the begining or end to reverse the sort order." << endl
+ << "Example:" << endl
+ << " ept-cache search -s p- image editor" << endl;
+ return true;
+ }
+ return false;
+}
+
+int success_if_had_output(Consumer* output)
+{
+ int count = output->count;
+ delete output;
+ return count > 0 ? 0 : 1;
+}
+
+int main(int argc, const char* argv[])
+{
+ wibble::commandline::EptCacheOptions opts;
+ bool warn_non_root_on_error = false;
+
+ try {
+ // Install the handler for unexpected exceptions
+ wibble::exception::InstallUnexpected installUnexpected;
+
+ if (opts.parse(argc, argv))
+ return 0;
+
+ if (opts.out_verbose->boolValue())
+ ::Environment::get().verbose(true);
+
+ if (opts.out_debug->boolValue())
+ ::Environment::get().debug(true);
+
+ // show <pkg>
+ // Similar to apt-cache show <pkg>, but add extra metadata to the output."
+ if (opts.foundCommand() == opts.show)
+ {
+ env().init();
+ Consumer* output = createPrinter(opts, new FullRecordPrinter(cout));
+ while (opts.hasNext())
+ {
+ string name = opts.next();
+
+ if (env().apt().isValid(name))
+ {
+ Info i(name);
+ (*output)(i);
+ } else {
+ verbose("Package %s not found", name.c_str());
+ }
+ }
+ return success_if_had_output(output);
+ }
+ else if (opts.foundCommand() == opts.search)
+ {
+ if (printOutOptionsHelpIfNeeded(opts))
+ return 1;
+ env().init();
+ Consumer* output = createPrinter(opts, new ShortDescPrinter(cout));
+
+ // Generate the results
+ generate(opts, *output, 50, DEFAULT_QUALITY_CUTOFF);
+
+ return success_if_had_output(output);
+ }
+ // dumpavail
+ // Output the full package database, with all the extra info available
+ else if (opts.foundCommand() == opts.dumpavail)
+ {
+ if (printOutOptionsHelpIfNeeded(opts))
+ return 1;
+ env().init();
+ Consumer* output = createPrinter(opts, new FullRecordPrinter(cout));
+
+ // Generate the results
+ generate(opts, *output, -1, -1);
+
+ return success_if_had_output(output);
+ }
+ // related
+ // List packages related to the given one
+ else if (opts.foundCommand() == opts.related)
+ {
+ if (printOutOptionsHelpIfNeeded(opts))
+ return 1;
+ env().init();
+ Consumer* output = createPrinter(opts, new ShortDescPrinter(cout));
+
+ // Generate the results
+ generateRelated(opts, *output, 15, DEFAULT_QUALITY_CUTOFF);
+
+ return success_if_had_output(output);
+ }
+ // reindex
+ // Rebuilds indexes (requires root)
+ else if (opts.foundCommand() == opts.reindex)
+ {
+ warn_non_root_on_error = true;
+
+ // Access the indexes to trigger a rebuild
+ env().init();
+
+ textsearch::AptTagsExtraIndexer atei;
+ textsearch::DebtagsExtraIndexer dei(env().debtags());
+
+ int exitcode;
+ if (opts.out_quiet->boolValue())
+ exitcode = system("update-apt-xapian-index --quiet");
+ else
+ exitcode = system("update-apt-xapian-index");
+ if (exitcode != 0)
+ {
+ stringstream str;
+ str << "got an exit code of " << exitcode;
+ throw wibble::exception::Consistency("running update-apt-xapian-index", str.str());
+ }
+
+#if 0
+ vector<const TextSearch::ExtraIndexer*> extraIndexers;
+
+ if (env().debtags().hasData())
+ extraIndexers.push_back(&dei);
+ else
+ extraIndexers.push_back(&atei);
+
+ // The TextSearch needs explicit reindexing
+ env().textsearch().rebuildIfNeeded(env().apt(), extraIndexers);
+#endif
+
+ // TODO: if verbose, print the various data files used
+
+ //mode_t prev_umask = umask(022);
+ //umask(prev_umask);
+ }
+ // info
+ // Show information about the data providers
+ else if (opts.foundCommand() == opts.info)
+ {
+ env().init();
+ if (env().debtags().hasData())
+ cout << "Debtags: enabled." << endl;
+ else
+ cout << "Debtags: disabled. To enable it, run 'debtags update' as root." << endl;
+
+ if (env().popcon().hasData())
+ cout << "Popcon: enabled." << endl;
+ else
+ cout << "Popcon: disabled. To enable it, download http://popcon.debian.org/all-popcon-results.txt.gz" << endl
+ << " in /var/lib/popcon/ and run 'ept-cache reindex' as root" << endl;
+
+ if (env().popconLocal().hasData())
+ cout << "Popcon local scan: enabled." << endl;
+ else
+ cout << "Popcon local scan: disabled. To enable it, install the popularity-contest package and" << endl
+ << " enable it to run." << endl;
+
+ if (env().textsearch().hasData())
+ if (env().textsearch().needsRebuild(env().apt()))
+ cout << "Xapian: enabled but not up to date. To update it, run 'ept-cache reindex' as root." << endl;
+ else
+ cout << "Xapian: enabled and up to date." << endl;
+ else
+ cout << "Xapian: disabled. To enable it, run 'ept-cache reindex' as root" << endl;
+
+ // TODO: if verbose, print the various data files used
+ }
+ else
+ throw wibble::exception::BadOption(string("unhandled command ") +
+ (opts.foundCommand() ? opts.foundCommand()->name() : "(null)"));
+
+ return 0;
+ } catch (wibble::exception::BadOption& e) {
+ cerr << e.desc() << endl;
+ opts.outputHelp(cerr);
+ return 1;
+ } catch (std::exception& e) {
+ cerr << e.what() << endl;
+ if (warn_non_root_on_error && getuid() != 0)
+ cerr << "You may need to be root to perform this operation." << endl;
+ return 1;
+ } catch (Xapian::DatabaseVersionError& e) {
+ cerr << "Xapian " << e.get_type() << ": " << e.get_msg();
+ if (!e.get_context().empty())
+ cerr << ". Context: " << e.get_context();
+ cerr << endl;
+ cerr << endl;
+ cerr << "Please recreate the database by removing /var/lib/apt-xapian and running ept-cache reindex as root." << endl;
+ } catch (Xapian::Error& e) {
+ cerr << "Xapian " << e.get_type() << ": " << e.get_msg();
+ if (!e.get_context().empty())
+ cerr << ". Context: " << e.get_context();
+ cerr << endl;
+ if (warn_non_root_on_error && getuid() != 0)
+ cerr << "You may need to be root to perform this operation." << endl;
+ return 1;
+ }
+}
+
+#include <ept/debtags/debtags.tcc>
+
+// vim:set ts=4 sw=4:
diff --git a/tools/ept-cat.cpp b/tools/ept-cat.cpp
new file mode 100644
index 0000000..d5af2f6
--- /dev/null
+++ b/tools/ept-cat.cpp
@@ -0,0 +1,16 @@
+#include <ept/apt/apt.h>
+#include <ept/apt/apt.h>
+
+int summary = 0;
+
+int main( int argc, char **argv ) {
+ using namespace ept::apt;
+ using namespace std;
+
+ Apt db;
+
+ for (Apt::record_iterator i = db.recordBegin(); i != db.recordEnd(); ++i)
+ cout << *i << endl;
+
+ return 0;
+}
diff --git a/tools/ept-search.cpp b/tools/ept-search.cpp
new file mode 100644
index 0000000..2fd7396
--- /dev/null
+++ b/tools/ept-search.cpp
@@ -0,0 +1,43 @@
+#include <ept/apt/apt.h>
+#include <ept/textsearch/textsearch.h>
+
+using namespace ept;
+
+struct Main {
+ apt::Apt apt;
+ textsearch::TextSearch ts;
+
+ std::vector< std::string > args;
+
+ Main( int argc, char **argv )
+ {
+ for ( int i = 1; i < argc; ++i )
+ args.push_back( argv[i] );
+ }
+
+ int run() {
+ using namespace std;
+ Xapian::Enquire enq( ts.db() );
+ enq.set_query( ts.makeORQuery( args.begin(), args.end() ) );
+
+ // Limit to 20 matches
+ Xapian::MSet matches = enq.get_mset(0, 20);
+ for (Xapian::MSetIterator i = matches.begin(); i != matches.end(); ++i)
+ {
+ // Filter out results that apt doesn't know
+ if (!apt.isValid(i.get_document().get_data()))
+ {
+ cerr << " Not in apt database: " << i.get_document().get_data().c_str() << endl;
+ continue;
+ }
+
+ cout << apt.rawRecord(i.get_document().get_data()) << endl;
+ }
+
+ return 0;
+ }
+};
+
+int main( int argc, char **argv ) {
+ return Main( argc, argv ).run();
+}
diff --git a/tools/filters.cc b/tools/filters.cc
new file mode 100644
index 0000000..f4f21de
--- /dev/null
+++ b/tools/filters.cc
@@ -0,0 +1,112 @@
+/*
+ * ept-cache - Commandline interface to the ept library
+ *
+ * Copyright (C) 2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include "filters.h"
+#include "info.h"
+#include "utils.h"
+
+#include <ept/apt/packagerecord.h>
+
+#include <wibble/regexp.h>
+
+using namespace std;
+
+namespace filter {
+
+And::~And()
+{
+ for (iterator i = begin(); i != end(); ++i)
+ delete *i;
+}
+void And::acquire_front(Base* filter)
+{
+ insert(begin(), filter);
+}
+void And::acquire(Base* filter)
+{
+ push_back(filter);
+}
+bool And::operator()(Info& info) const
+{
+ if (empty())
+ return true;
+ for (const_iterator i = begin(); i != end(); ++i)
+ if (!(**i)(info))
+ return false;
+ return true;
+}
+
+Or::~Or()
+{
+ for (iterator i = begin(); i != end(); ++i)
+ delete *i;
+}
+void Or::acquire_front(Base* filter)
+{
+ insert(begin(), filter);
+}
+void Or::acquire(Base* filter)
+{
+ push_back(filter);
+}
+bool Or::operator()(Info& info) const
+{
+ if (empty())
+ return true;
+ for (const_iterator i = begin(); i != end(); ++i)
+ if ((**i)(info))
+ return true;
+ return false;
+}
+
+Description::Description(const std::string& str)
+{
+ wibble::Tokenizer tok(str, "[^[:blank:]]+", REG_EXTENDED);
+ for (wibble::Tokenizer::const_iterator i = tok.begin();
+ i != tok.end(); ++i)
+ keywords.push_back(toLower(*i));
+}
+
+bool Description::operator()(Info& info) const
+{
+ info.wantRecord();
+ string name = toLower(info.name);
+ string desc = toLower(info.record->description());
+ for (std::vector<std::string>::const_iterator i = keywords.begin();
+ i != keywords.end(); ++i)
+ if (name.find(*i) == string::npos && desc.find(*i) == string::npos)
+ return false;
+ return true;
+}
+
+bool TagExpression::operator()(Info& info) const
+{
+ info.wantTags();
+ return expr(info.tags);
+}
+
+bool Blacklist::operator()(Info& info) const
+{
+ return blacklist.find(info.name) == blacklist.end();
+}
+
+}
+
+// vim:set ts=4 sw=4:
diff --git a/tools/filters.h b/tools/filters.h
new file mode 100644
index 0000000..fa8c2b0
--- /dev/null
+++ b/tools/filters.h
@@ -0,0 +1,125 @@
+/*
+ * ept-cache - Commandline interface to the ept library
+ *
+ * Copyright (C) 2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#ifndef EPTCACHE_FILTERS_H
+#define EPTCACHE_FILTERS_H
+
+#include <vector>
+#include <string>
+
+#include <ept/debtags/expression.h>
+
+/*
+ * * For packages
+ *
+ * Filters:
+ * - keyword search
+ * - tag expression
+ * - min/max popularity
+ * - installed status
+ *
+ */
+
+class Info;
+
+namespace filter {
+
+/// Interface for package filters
+struct Base
+{
+ virtual ~Base() {}
+ virtual bool operator()(Info& i) const = 0;
+};
+
+/// ANDs a list of filters, with short-circuit semantics
+struct And : public std::vector<Base*>, public Base
+{
+ virtual ~And();
+ // Add a filter at the beginning of the list
+ void acquire_front(Base* filter);
+ // Add a filter at the end of the list
+ void acquire(Base* filter);
+ // Match the info if all filters match
+ virtual bool operator()(Info& info) const;
+};
+
+/// ORs a list of filters, with short-circuit semantics
+struct Or : public std::vector<Base*>, public Base
+{
+ virtual ~Or();
+ // Add a filter at the beginning of the list
+ void acquire_front(Base* filter);
+ // Add a filter at the end of the list
+ void acquire(Base* filter);
+ // Match the info if one of the filters match
+ virtual bool operator()(Info& info) const;
+};
+
+/// Negates a filter
+struct Not : public Base
+{
+ Base* filter;
+ Not(Base* filter) : filter(filter) {}
+ virtual ~Not() { if (filter) delete filter; }
+ virtual bool operator()(Info& info) const
+ {
+ return ! (*filter)(info);
+ }
+};
+
+/// Text search on package name and description
+struct Description : public Base
+{
+ std::vector<std::string> keywords;
+
+ // Split up the string in keywords and lowercase them
+ Description(const std::string& str);
+
+ // Assume split up, lowercased keywords
+ Description(const std::vector<std::string>& keywords) : keywords(keywords) {}
+
+ virtual bool operator()(Info& info) const;
+};
+
+// Debtags expression filter
+struct TagExpression : public Base
+{
+ tagcoll::Expression expr;
+
+ TagExpression(const std::string& expr) : expr(expr) {}
+ TagExpression(const tagcoll::Expression& expr) : expr(expr) {}
+
+ virtual bool operator()(Info& info) const;
+};
+
+// Blacklist filter
+struct Blacklist : public Base
+{
+ std::set<std::string> blacklist;
+
+ Blacklist(const std::set<std::string>& blacklist) : blacklist(blacklist) {}
+
+ virtual bool operator()(Info& info) const;
+};
+
+}
+
+#endif
+// vim:set ts=4 sw=4:
diff --git a/tools/info.cc b/tools/info.cc
new file mode 100644
index 0000000..cd9966d
--- /dev/null
+++ b/tools/info.cc
@@ -0,0 +1,125 @@
+/*
+ * ept-cache - Commandline interface to the ept library
+ *
+ * Copyright (C) 2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include "info.h"
+
+#include "Environment.h"
+
+#include <ept/apt/apt.h>
+#include <ept/apt/packagerecord.h>
+#include <ept/popcon/popcon.h>
+#include <ept/popcon/local.h>
+
+using namespace std;
+using namespace ept;
+using namespace ept::debtags;
+using namespace ept::apt;
+
+Info::Info(const std::string& name)
+ : name(name), has_xapian(false), xapian_score(100), deallocate_record(false), record(0), has_tags(false), has_popcon(false), has_local(false) {}
+
+Info::~Info()
+{
+ if (deallocate_record && record)
+ delete record;
+}
+
+Info::Info(const Info& i)
+ : name(i.name), has_xapian(i.has_xapian), xapian_score(i.xapian_score),
+ has_tags(i.has_tags), tags(i.tags), has_popcon(i.has_popcon),
+ popcon(i.popcon), has_local(i.has_local), tfidf(i.tfidf)
+{
+ if (i.record)
+ {
+ deallocate_record = true;
+ record = new PackageRecord(*i.record);
+ } else {
+ deallocate_record = false;
+ record = 0;
+ }
+}
+
+Info::Info& Info::operator=(const Info& i)
+{
+ name = i.name;
+ has_xapian = i.has_xapian;
+ xapian_score = i.xapian_score;
+ has_tags = i.has_tags;
+ tags = i.tags;
+ has_popcon = i.has_popcon;
+ popcon = i.popcon;
+ has_local = i.has_local;
+ tfidf = i.tfidf;
+
+ if (i.record)
+ {
+ PackageRecord* newrec = new PackageRecord(*i.record);
+ if (record && deallocate_record)
+ delete record;
+ deallocate_record = true;
+ record = newrec;
+ } else {
+ if (record && deallocate_record)
+ delete record;
+ deallocate_record = false;
+ record = 0;
+ }
+ return *this;
+}
+
+void Info::wantRecord()
+{
+ if (record) return;
+ record = new PackageRecord(env().apt().rawRecord(name));
+ deallocate_record = true;
+}
+
+void Info::wantTags()
+{
+ if (has_tags) return;
+ tags = env().debtags().getTagsOfItem(name);
+ if (tags.empty() && !env().debtags().hasData())
+ {
+ wantRecord();
+ set<string> stags = record->tag();
+ for (set<string>::const_iterator i = stags.begin();
+ i != stags.end(); ++i)
+ tags.insert(env().voc().tagByName(*i));
+ }
+ has_tags = true;
+}
+
+void Info::wantPopcon()
+{
+ if (has_popcon) return;
+ popcon = env().popcon().score(name);
+ has_popcon = true;
+}
+
+void Info::wantPopconLocal()
+{
+ if (has_local) return;
+ tfidf = env().popconLocal().tfidf(env().popcon(), name);
+ has_local = true;
+}
+
+#include <ept/debtags/debtags.tcc>
+
+// vim:set ts=4 sw=4:
diff --git a/tools/info.h b/tools/info.h
new file mode 100644
index 0000000..2cbe249
--- /dev/null
+++ b/tools/info.h
@@ -0,0 +1,81 @@
+/*
+ * ept-cache - Commandline interface to the ept library
+ *
+ * Copyright (C) 2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#ifndef EPTCACHE_INFO_H
+#define EPTCACHE_INFO_H
+
+#include <ept/debtags/tag.h>
+
+#include <string>
+#include <set>
+
+namespace ept {
+namespace apt {
+class PackageRecord;
+}
+}
+
+/**
+ * Information about a package.
+ *
+ * This allows to have a stream of:
+ * \l names
+ * \l package records
+ * \l tags
+ * \l popcon scores
+ * \l xapian scores
+ *
+ * All optional and only retrieved on demand
+ */
+struct Info
+{
+ std::string name;
+
+ // This is only available if the info stream is generated by a Xapian
+ // search. Therefore there is no wantXapian() method.
+ bool has_xapian;
+ int xapian_score;
+
+ bool deallocate_record;
+ ept::apt::PackageRecord* record;
+
+ bool has_tags;
+ std::set<ept::debtags::Tag> tags;
+
+ bool has_popcon;
+ float popcon;
+
+ bool has_local;
+ float tfidf;
+
+ Info(const std::string& name);
+ Info(const Info& i);
+ ~Info();
+
+ Info& operator=(const Info& i);
+
+ void wantRecord();
+ void wantTags();
+ void wantPopcon();
+ void wantPopconLocal();
+};
+
+#endif
+// vim:set ts=4 sw=4:
diff --git a/tools/manpage.cc b/tools/manpage.cc
new file mode 100644
index 0000000..e4909ce
--- /dev/null
+++ b/tools/manpage.cc
@@ -0,0 +1,62 @@
+/*
+ * tagged collection - Experimental programs to test and study tagged collections
+ *
+ * Copyright (C) 2003,2004,2005,2006 Enrico Zini
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <ept/config.h>
+#include <wibble/commandline/doc.h>
+#include "EptCacheOptions.h"
+#include <iostream>
+
+using namespace std;
+
+int main(int argc, const char* argv[])
+{
+ try {
+ if (argc == 1)
+ throw wibble::exception::BadOption("no arguments provided");
+
+ string cmd(argv[1]);
+ string hooks(argc > 2 ? argv[2] : "");
+
+ if (cmd == "ept-cache")
+ {
+ wibble::commandline::EptCacheOptions opts;
+ wibble::commandline::Manpage help("ept-cache", VERSION, 1, "enrico@enricozini.org");
+ if (!hooks.empty())
+ help.readHooks(hooks);
+ help.output(cout, opts);
+ }
+ else
+ throw wibble::exception::BadOption("unknown command " + cmd);
+
+ return 0;
+ } catch (wibble::exception::BadOption& e) {
+ cerr << e.desc() << endl << endl;
+ cerr << "Usage: manpage <command>" << endl << endl;
+ cerr << "Supported commands are: ept-cache" << endl;
+ return 1;
+ } catch (std::exception& e) {
+ cerr << e.what() << endl;
+ return 1;
+ }
+}
+
+#include <ept/debtags/debtags.tcc>
+
+// vim:set ts=4 sw=4:
diff --git a/tools/pkglist.cpp b/tools/pkglist.cpp
new file mode 100644
index 0000000..da1b668
--- /dev/null
+++ b/tools/pkglist.cpp
@@ -0,0 +1,16 @@
+#include <iostream>
+
+using namespace std;
+
+#include <ept/apt/apt.h>
+
+
+int main(int argc, char* argv[])
+{
+ typedef ept::apt::Apt Apt;
+ Apt apt;
+ for (Apt::Iterator it = apt.begin(); it != apt.end(); ++it)
+ {
+ cout << (*it) << endl;
+ }
+}
diff --git a/tools/utils.h b/tools/utils.h
new file mode 100644
index 0000000..3e4b283
--- /dev/null
+++ b/tools/utils.h
@@ -0,0 +1,72 @@
+/*
+ * ept-cache - Commandline interface to the ept library
+ *
+ * Copyright (C) 2007 Enrico Zini <enrico@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#ifndef EPTCACHE_UTILS_H
+#define EPTCACHE_UTILS_H
+
+#include <string>
+#include <ostream>
+
+#include <wibble/singleton.h>
+#include <wibble/empty.h>
+
+namespace std {
+
+// Facilities for outputting a tag set
+template<typename TAG, typename _Traits>
+basic_ostream<char, _Traits>& operator<<(basic_ostream<char, _Traits>& out, const std::set<TAG>& tags)
+{
+ for (typename std::set<TAG>::const_iterator i = tags.begin();
+ i != tags.end(); i++)
+ if (i == tags.begin())
+ out << i->fullname();
+ else
+ out << ", " << i->fullname();
+ return out;
+}
+
+// Facilities for outputting a wibble::Singleton
+template<typename TAG, typename _Traits>
+basic_ostream<char, _Traits>& operator<<(basic_ostream<char, _Traits>& out, const wibble::Singleton<TAG>& tags)
+{
+ out << *tags.begin();
+ return out;
+}
+
+// Facilities for outputting a wibble::Empty
+template<typename TAG, typename _Traits>
+basic_ostream<char, _Traits>& operator<<(basic_ostream<char, _Traits>& out, const wibble::Empty<TAG>&)
+{
+ return out;
+}
+
+}
+
+// Convert a string to lower case
+static inline std::string toLower(const std::string& s)
+{
+ std::string res;
+ for (std::string::const_iterator i = s.begin(); i != s.end(); ++i)
+ res += tolower(*i);
+ return res;
+}
+
+#endif
+// vim:set ts=4 sw=4: